// 4.9.5 (2019-07-02) !(function (H) { "use strict"; var o = function () {}, j = function (n, r) { return function () { for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; return n(r.apply(null, e)); }; }, q = function (e) { return function () { return e; }; }, $ = function (e) { return e; }; function d(r) { for (var o = [], e = 1; e < arguments.length; e++) o[e - 1] = arguments[e]; return function () { for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; var n = o.concat(e); return r.apply(null, n); }; } var e, t, n, r, i, a, u, s, c, l, f, m, g, p, h, v, b, y = function (n) { return function () { for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; return !n.apply(null, e); }; }, C = q(!1), x = q(!0), w = C, N = x, E = function () { return S; }, S = ((r = { fold: function (e, t) { return e(); }, is: w, isSome: w, isNone: N, getOr: (n = function (e) { return e; }), getOrThunk: (t = function (e) { return e(); }), getOrDie: function (e) { throw new Error(e || "error: getOrDie called on none."); }, getOrNull: function () { return null; }, getOrUndefined: function () { return undefined; }, or: n, orThunk: t, map: E, ap: E, each: function () {}, bind: E, flatten: E, exists: w, forall: N, filter: E, equals: (e = function (e) { return e.isNone(); }), equals_: e, toArray: function () { return []; }, toString: q("none()"), }), Object.freeze && Object.freeze(r), r), k = function (n) { var e = function () { return n; }, t = function () { return o; }, r = function (e) { return e(n); }, o = { fold: function (e, t) { return t(n); }, is: function (e) { return n === e; }, isSome: N, isNone: w, getOr: e, getOrThunk: e, getOrDie: e, getOrNull: e, getOrUndefined: e, or: t, orThunk: t, map: function (e) { return k(e(n)); }, ap: function (e) { return e.fold(E, function (e) { return k(e(n)); }); }, each: function (e) { e(n); }, bind: r, flatten: e, exists: r, forall: r, filter: function (e) { return e(n) ? o : S; }, equals: function (e) { return e.is(n); }, equals_: function (e, t) { return e.fold(w, function (e) { return t(n, e); }); }, toArray: function () { return [n]; }, toString: function () { return "some(" + n + ")"; }, }; return o; }, A = { some: k, none: E, from: function (e) { return null === e || e === undefined ? S : k(e); }, }, T = function (t) { return function (e) { return ( (function (e) { if (null === e) return "null"; var t = typeof e; return "object" === t && (Array.prototype.isPrototypeOf(e) || (e.constructor && "Array" === e.constructor.name)) ? "array" : "object" === t && (String.prototype.isPrototypeOf(e) || (e.constructor && "String" === e.constructor.name)) ? "string" : t; })(e) === t ); }; }, R = T("string"), _ = T("object"), D = T("array"), B = T("null"), O = T("boolean"), P = T("function"), I = T("number"), L = Array.prototype.slice, M = (i = Array.prototype.indexOf) === undefined ? function (e, t) { return J(e, t); } : function (e, t) { return i.call(e, t); }, F = function (e, t) { return -1 < M(e, t); }, z = function (e, t) { return G(e, t).isSome(); }, W = function (e, t) { for (var n = e.length, r = new Array(n), o = 0; o < n; o++) { var i = e[o]; r[o] = t(i, o, e); } return r; }, U = function (e, t) { for (var n = 0, r = e.length; n < r; n++) t(e[n], n, e); }, K = function (e, t) { for (var n = [], r = [], o = 0, i = e.length; o < i; o++) { var a = e[o]; (t(a, o, e) ? n : r).push(a); } return { pass: n, fail: r }; }, V = function (e, t) { for (var n = [], r = 0, o = e.length; r < o; r++) { var i = e[r]; t(i, r, e) && n.push(i); } return n; }, X = function (e, t, n) { return ( U(e, function (e) { n = t(n, e); }), n ); }, Y = function (e, t) { for (var n = 0, r = e.length; n < r; n++) { var o = e[n]; if (t(o, n, e)) return A.some(o); } return A.none(); }, G = function (e, t) { for (var n = 0, r = e.length; n < r; n++) if (t(e[n], n, e)) return A.some(n); return A.none(); }, J = function (e, t) { for (var n = 0, r = e.length; n < r; ++n) if (e[n] === t) return n; return -1; }, Q = Array.prototype.push, Z = function (e, t) { return (function (e) { for (var t = [], n = 0, r = e.length; n < r; ++n) { if (!Array.prototype.isPrototypeOf(e[n])) throw new Error( "Arr.flatten item " + n + " was not an array, input: " + e ); Q.apply(t, e[n]); } return t; })(W(e, t)); }, ee = function (e, t) { for (var n = 0, r = e.length; n < r; ++n) if (!0 !== t(e[n], n, e)) return !1; return !0; }, te = function (e, t) { return V(e, function (e) { return !F(t, e); }); }, ne = function (e) { return 0 === e.length ? A.none() : A.some(e[0]); }, re = function (e) { return 0 === e.length ? A.none() : A.some(e[e.length - 1]); }, oe = P(Array.from) ? Array.from : function (e) { return L.call(e); }, ie = "undefined" != typeof H.window ? H.window : Function("return this;")(), ae = function (e, t) { return (function (e, t) { for ( var n = t !== undefined && null !== t ? t : ie, r = 0; r < e.length && n !== undefined && null !== n; ++r ) n = n[e[r]]; return n; })(e.split("."), t); }, ue = { getOrDie: function (e, t) { var n = ae(e, t); if (n === undefined || null === n) throw e + " not available on this browser"; return n; }, }, se = function () { return ue.getOrDie("URL"); }, ce = { createObjectURL: function (e) { return se().createObjectURL(e); }, revokeObjectURL: function (e) { se().revokeObjectURL(e); }, }, le = H.navigator, fe = le.userAgent, de = function (e) { return "matchMedia" in H.window && H.matchMedia(e).matches; }; (g = /Android/.test(fe)), (u = (u = !(a = /WebKit/.test(fe)) && /MSIE/gi.test(fe) && /Explorer/gi.test(le.appName)) && /MSIE (\w+)\./.exec(fe)[1]), (s = -1 !== fe.indexOf("Trident/") && (-1 !== fe.indexOf("rv:") || -1 !== le.appName.indexOf("Netscape")) && 11), (c = -1 !== fe.indexOf("Edge/") && !u && !s && 12), (u = u || s || c), (l = !a && !s && /Gecko/.test(fe)), (f = -1 !== fe.indexOf("Mac")), (m = /(iPad|iPhone)/.test(fe)), (p = "FormData" in H.window && "FileReader" in H.window && "URL" in H.window && !!ce.createObjectURL), (h = de("only screen and (max-device-width: 480px)") && (g || m)), (v = de("only screen and (min-width: 800px)") && (g || m)), (b = -1 !== fe.indexOf("Windows Phone")), c && (a = !1); var me, ge = { opera: !1, webkit: a, ie: u, gecko: l, mac: f, iOS: m, android: g, contentEditable: !m || p || 534 <= parseInt(fe.match(/AppleWebKit\/(\d*)/)[1], 10), transparentSrc: "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7", caretAfter: 8 !== u, range: H.window.getSelection && "Range" in H.window, documentMode: u && !c ? H.document.documentMode || 7 : 10, fileApi: p, ceFalse: !1 === u || 8 < u, cacheSuffix: null, container: null, overrideViewPort: null, experimentalShadowDom: !1, canHaveCSP: !1 === u || 11 < u, desktop: !h && !v, windowsPhone: b, }, pe = window.Promise ? window.Promise : (function () { function r(e, t) { return function () { e.apply(t, arguments); }; } var e = Array.isArray || function (e) { return "[object Array]" === Object.prototype.toString.call(e); }, i = function (e) { if ("object" != typeof this) throw new TypeError("Promises must be constructed via new"); if ("function" != typeof e) throw new TypeError("not a function"); (this._state = null), (this._value = null), (this._deferreds = []), l(e, r(o, this), r(u, this)); }, t = i.immediateFn || ("function" == typeof setImmediate && setImmediate) || function (e) { setTimeout(e, 1); }; function a(r) { var o = this; null !== this._state ? t(function () { var e = o._state ? r.onFulfilled : r.onRejected; if (null !== e) { var t; try { t = e(o._value); } catch (n) { return void r.reject(n); } r.resolve(t); } else (o._state ? r.resolve : r.reject)(o._value); }) : this._deferreds.push(r); } function o(e) { try { if (e === this) throw new TypeError( "A promise cannot be resolved with itself." ); if (e && ("object" == typeof e || "function" == typeof e)) { var t = e.then; if ("function" == typeof t) return void l(r(t, e), r(o, this), r(u, this)); } (this._state = !0), (this._value = e), s.call(this); } catch (n) { u.call(this, n); } } function u(e) { (this._state = !1), (this._value = e), s.call(this); } function s() { for (var e = 0, t = this._deferreds.length; e < t; e++) a.call(this, this._deferreds[e]); this._deferreds = null; } function c(e, t, n, r) { (this.onFulfilled = "function" == typeof e ? e : null), (this.onRejected = "function" == typeof t ? t : null), (this.resolve = n), (this.reject = r); } function l(e, t, n) { var r = !1; try { e( function (e) { r || ((r = !0), t(e)); }, function (e) { r || ((r = !0), n(e)); } ); } catch (o) { if (r) return; (r = !0), n(o); } } return ( (i.prototype["catch"] = function (e) { return this.then(null, e); }), (i.prototype.then = function (n, r) { var o = this; return new i(function (e, t) { a.call(o, new c(n, r, e, t)); }); }), (i.all = function () { var s = Array.prototype.slice.call( 1 === arguments.length && e(arguments[0]) ? arguments[0] : arguments ); return new i(function (o, i) { if (0 === s.length) return o([]); var a = s.length; function u(t, e) { try { if (e && ("object" == typeof e || "function" == typeof e)) { var n = e.then; if ("function" == typeof n) return void n.call( e, function (e) { u(t, e); }, i ); } (s[t] = e), 0 == --a && o(s); } catch (r) { i(r); } } for (var e = 0; e < s.length; e++) u(e, s[e]); }); }), (i.resolve = function (t) { return t && "object" == typeof t && t.constructor === i ? t : new i(function (e) { e(t); }); }), (i.reject = function (n) { return new i(function (e, t) { t(n); }); }), (i.race = function (o) { return new i(function (e, t) { for (var n = 0, r = o.length; n < r; n++) o[n].then(e, t); }); }), i ); })(), he = function (e, t) { return "number" != typeof t && (t = 0), setTimeout(e, t); }, ve = function (e, t) { return "number" != typeof t && (t = 1), setInterval(e, t); }, be = function (t, n) { var r, e; return ( ((e = function () { var e = arguments; clearTimeout(r), (r = he(function () { t.apply(this, e); }, n)); }).stop = function () { clearTimeout(r); }), e ); }, ye = { requestAnimationFrame: function (e, t) { me ? me.then(e) : (me = new pe(function (e) { t || (t = H.document.body), (function (e, t) { var n, r = H.window.requestAnimationFrame, o = ["ms", "moz", "webkit"]; for (n = 0; n < o.length && !r; n++) r = H.window[o[n] + "RequestAnimationFrame"]; r || (r = function (e) { H.window.setTimeout(e, 0); }), r(e, t); })(e, t); }).then(e)); }, setTimeout: he, setInterval: ve, setEditorTimeout: function (e, t, n) { return he(function () { e.removed || t(); }, n); }, setEditorInterval: function (e, t, n) { var r; return (r = ve(function () { e.removed ? clearInterval(r) : t(); }, n)); }, debounce: be, throttle: be, clearInterval: function (e) { return clearInterval(e); }, clearTimeout: function (e) { return clearTimeout(e); }, }, Ce = /^(?:mouse|contextmenu)|click/, xe = { keyLocation: 1, layerX: 1, layerY: 1, returnValue: 1, webkitMovementX: 1, webkitMovementY: 1, keyIdentifier: 1, }, we = function () { return !1; }, Ne = function () { return !0; }, Ee = function (e, t, n, r) { e.addEventListener ? e.addEventListener(t, n, r || !1) : e.attachEvent && e.attachEvent("on" + t, n); }, Se = function (e, t, n, r) { e.removeEventListener ? e.removeEventListener(t, n, r || !1) : e.detachEvent && e.detachEvent("on" + t, n); }, ke = function (e, t) { var n, r, o = t || {}; for (n in e) xe[n] || (o[n] = e[n]); if ( (o.target || (o.target = o.srcElement || H.document), ge.experimentalShadowDom && (o.target = (function (e, t) { if (e.composedPath) { var n = e.composedPath(); if (n && 0 < n.length) return n[0]; } return t; })(e, o.target)), e && Ce.test(e.type) && e.pageX === undefined && e.clientX !== undefined) ) { var i = o.target.ownerDocument || H.document, a = i.documentElement, u = i.body; (o.pageX = e.clientX + ((a && a.scrollLeft) || (u && u.scrollLeft) || 0) - ((a && a.clientLeft) || (u && u.clientLeft) || 0)), (o.pageY = e.clientY + ((a && a.scrollTop) || (u && u.scrollTop) || 0) - ((a && a.clientTop) || (u && u.clientTop) || 0)); } return ( (o.preventDefault = function () { (o.isDefaultPrevented = Ne), e && (e.preventDefault ? e.preventDefault() : (e.returnValue = !1)); }), (o.stopPropagation = function () { (o.isPropagationStopped = Ne), e && (e.stopPropagation ? e.stopPropagation() : (e.cancelBubble = !0)); }), !(o.stopImmediatePropagation = function () { (o.isImmediatePropagationStopped = Ne), o.stopPropagation(); }) == ((r = o).isDefaultPrevented === Ne || r.isDefaultPrevented === we) && ((o.isDefaultPrevented = we), (o.isPropagationStopped = we), (o.isImmediatePropagationStopped = we)), "undefined" == typeof o.metaKey && (o.metaKey = !1), o ); }, Te = function (e, t, n) { var r = e.document, o = { type: "ready" }; if (n.domLoaded) t(o); else { var i = function () { return ( "complete" === r.readyState || ("interactive" === r.readyState && r.body) ); }, a = function () { n.domLoaded || ((n.domLoaded = !0), t(o)); }, u = function () { i() && (Se(r, "readystatechange", u), a()); }, s = function () { try { r.documentElement.doScroll("left"); } catch (e) { return void ye.setTimeout(s); } a(); }; !r.addEventListener || (ge.ie && ge.ie < 11) ? (Ee(r, "readystatechange", u), r.documentElement.doScroll && e.self === e.top && s()) : i() ? a() : Ee(e, "DOMContentLoaded", a), Ee(e, "load", a); } }, Ae = function () { var m, g, p, h, v, b = this, y = {}; (g = "mce-data-" + (+new Date()).toString(32)), (h = "onmouseenter" in H.document.documentElement), (p = "onfocusin" in H.document.documentElement), (v = { mouseenter: "mouseover", mouseleave: "mouseout" }), (m = 1), (b.domLoaded = !1), (b.events = y); var C = function (e, t) { var n, r, o, i, a = y[t]; if ((n = a && a[e.type])) for (r = 0, o = n.length; r < o; r++) if ( ((i = n[r]) && !1 === i.func.call(i.scope, e) && e.preventDefault(), e.isImmediatePropagationStopped()) ) return; }; (b.bind = function (e, t, n, r) { var o, i, a, u, s, c, l, f = H.window, d = function (e) { C(ke(e || f.event), o); }; if (e && 3 !== e.nodeType && 8 !== e.nodeType) { for ( e[g] ? (o = e[g]) : ((o = m++), (e[g] = o), (y[o] = {})), r = r || e, a = (t = t.split(" ")).length; a--; ) (c = d), (s = l = !1), "DOMContentLoaded" === (u = t[a]) && (u = "ready"), b.domLoaded && "ready" === u && "complete" === e.readyState ? n.call(r, ke({ type: u })) : (h || ((s = v[u]) && (c = function (e) { var t, n; if ( ((t = e.currentTarget), (n = e.relatedTarget) && t.contains) ) n = t.contains(n); else for (; n && n !== t; ) n = n.parentNode; n || (((e = ke(e || f.event)).type = "mouseout" === e.type ? "mouseleave" : "mouseenter"), (e.target = t), C(e, o)); })), p || ("focusin" !== u && "focusout" !== u) || ((l = !0), (s = "focusin" === u ? "focus" : "blur"), (c = function (e) { ((e = ke(e || f.event)).type = "focus" === e.type ? "focusin" : "focusout"), C(e, o); })), (i = y[o][u]) ? "ready" === u && b.domLoaded ? n({ type: u }) : i.push({ func: n, scope: r }) : ((y[o][u] = i = [{ func: n, scope: r }]), (i.fakeName = s), (i.capture = l), (i.nativeHandler = c), "ready" === u ? Te(e, c, b) : Ee(e, s || u, c, l))); return (e = i = 0), n; } }), (b.unbind = function (e, t, n) { var r, o, i, a, u, s; if (!e || 3 === e.nodeType || 8 === e.nodeType) return b; if ((r = e[g])) { if (((s = y[r]), t)) { for (i = (t = t.split(" ")).length; i--; ) if ((o = s[(u = t[i])])) { if (n) for (a = o.length; a--; ) if (o[a].func === n) { var c = o.nativeHandler, l = o.fakeName, f = o.capture; ((o = o .slice(0, a) .concat(o.slice(a + 1))).nativeHandler = c), (o.fakeName = l), (o.capture = f), (s[u] = o); } (n && 0 !== o.length) || (delete s[u], Se(e, o.fakeName || u, o.nativeHandler, o.capture)); } } else { for (u in s) (o = s[u]), Se(e, o.fakeName || u, o.nativeHandler, o.capture); s = {}; } for (u in s) return b; delete y[r]; try { delete e[g]; } catch (d) { e[g] = null; } } return b; }), (b.fire = function (e, t, n) { var r; if (!e || 3 === e.nodeType || 8 === e.nodeType) return b; for ( (n = ke(null, n)).type = t, n.target = e; (r = e[g]) && C(n, r), (e = e.parentNode || e.ownerDocument || e.defaultView || e.parentWindow) && !n.isPropagationStopped(); ); return b; }), (b.clean = function (e) { var t, n, r = b.unbind; if (!e || 3 === e.nodeType || 8 === e.nodeType) return b; if ( (e[g] && r(e), e.getElementsByTagName || (e = e.document), e && e.getElementsByTagName) ) for (r(e), t = (n = e.getElementsByTagName("*")).length; t--; ) (e = n[t])[g] && r(e); return b; }), (b.destroy = function () { y = {}; }), (b.cancel = function (e) { return e && (e.preventDefault(), e.stopImmediatePropagation()), !1; }); }; (Ae.Event = new Ae()), Ae.Event.bind(H.window, "ready", function () {}); var Re, _e, De, Be, Oe, Pe, Ie, Le, Me, Fe, ze, Ue, Ve, He, je, qe, $e, We, Ke = "sizzle" + -new Date(), Xe = H.window.document, Ye = 0, Ge = 0, Je = Rt(), Qe = Rt(), Ze = Rt(), et = function (e, t) { return e === t && (ze = !0), 0; }, tt = typeof undefined, nt = {}.hasOwnProperty, rt = [], ot = rt.pop, it = rt.push, at = rt.push, ut = rt.slice, st = rt.indexOf || function (e) { for (var t = 0, n = this.length; t < n; t++) if (this[t] === e) return t; return -1; }, ct = "[\\x20\\t\\r\\n\\f]", lt = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", ft = "\\[" + ct + "*(" + lt + ")(?:" + ct + "*([*^$|!~]?=)" + ct + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + lt + "))|)" + ct + "*\\]", dt = ":(" + lt + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + ft + ")*)|.*)\\)|)", mt = new RegExp("^" + ct + "+|((?:^|[^\\\\])(?:\\\\.)*)" + ct + "+$", "g"), gt = new RegExp("^" + ct + "*," + ct + "*"), pt = new RegExp("^" + ct + "*([>+~]|" + ct + ")" + ct + "*"), ht = new RegExp("=" + ct + "*([^\\]'\"]*?)" + ct + "*\\]", "g"), vt = new RegExp(dt), bt = new RegExp("^" + lt + "$"), yt = { ID: new RegExp("^#(" + lt + ")"), CLASS: new RegExp("^\\.(" + lt + ")"), TAG: new RegExp("^(" + lt + "|[*])"), ATTR: new RegExp("^" + ft), PSEUDO: new RegExp("^" + dt), CHILD: new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + ct + "*(even|odd|(([+-]|)(\\d*)n|)" + ct + "*(?:([+-]|)" + ct + "*(\\d+)|))" + ct + "*\\)|)", "i" ), bool: new RegExp( "^(?:checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped)$", "i" ), needsContext: new RegExp( "^" + ct + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + ct + "*((?:-\\d)?\\d*)" + ct + "*\\)|)(?=[^-]|$)", "i" ), }, Ct = /^(?:input|select|textarea|button)$/i, xt = /^h\d$/i, wt = /^[^{]+\{\s*\[native \w/, Nt = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, Et = /[+~]/, St = /'|\\/g, kt = new RegExp("\\\\([\\da-f]{1,6}" + ct + "?|(" + ct + ")|.)", "ig"), Tt = function (e, t, n) { var r = "0x" + t - 65536; return r != r || n ? t : r < 0 ? String.fromCharCode(r + 65536) : String.fromCharCode((r >> 10) | 55296, (1023 & r) | 56320); }; try { at.apply((rt = ut.call(Xe.childNodes)), Xe.childNodes), rt[Xe.childNodes.length].nodeType; } catch (ZN) { at = { apply: rt.length ? function (e, t) { it.apply(e, ut.call(t)); } : function (e, t) { for (var n = e.length, r = 0; (e[n++] = t[r++]); ); e.length = n - 1; }, }; } var At = function (e, t, n, r) { var o, i, a, u, s, c, l, f, d, m; if ( ((t ? t.ownerDocument || t : Xe) !== Ve && Ue(t), (n = n || []), !e || "string" != typeof e) ) return n; if (1 !== (u = (t = t || Ve).nodeType) && 9 !== u) return []; if (je && !r) { if ((o = Nt.exec(e))) if ((a = o[1])) { if (9 === u) { if (!(i = t.getElementById(a)) || !i.parentNode) return n; if (i.id === a) return n.push(i), n; } else if ( t.ownerDocument && (i = t.ownerDocument.getElementById(a)) && We(t, i) && i.id === a ) return n.push(i), n; } else { if (o[2]) return at.apply(n, t.getElementsByTagName(e)), n; if ((a = o[3]) && _e.getElementsByClassName) return at.apply(n, t.getElementsByClassName(a)), n; } if (_e.qsa && (!qe || !qe.test(e))) { if ( ((f = l = Ke), (d = t), (m = 9 === u && e), 1 === u && "object" !== t.nodeName.toLowerCase()) ) { for ( c = Pe(e), (l = t.getAttribute("id")) ? (f = l.replace(St, "\\$&")) : t.setAttribute("id", f), f = "[id='" + f + "'] ", s = c.length; s--; ) c[s] = f + Mt(c[s]); (d = (Et.test(e) && It(t.parentNode)) || t), (m = c.join(",")); } if (m) try { return at.apply(n, d.querySelectorAll(m)), n; } catch (g) { } finally { l || t.removeAttribute("id"); } } } return Le(e.replace(mt, "$1"), t, n, r); }; function Rt() { var r = []; return function e(t, n) { return ( r.push(t + " ") > De.cacheLength && delete e[r.shift()], (e[t + " "] = n) ); }; } function _t(e) { return (e[Ke] = !0), e; } function Dt(e, t) { var n = t && e, r = n && 1 === e.nodeType && 1 === t.nodeType && (~t.sourceIndex || 1 << 31) - (~e.sourceIndex || 1 << 31); if (r) return r; if (n) for (; (n = n.nextSibling); ) if (n === t) return -1; return e ? 1 : -1; } function Bt(t) { return function (e) { return "input" === e.nodeName.toLowerCase() && e.type === t; }; } function Ot(n) { return function (e) { var t = e.nodeName.toLowerCase(); return ("input" === t || "button" === t) && e.type === n; }; } function Pt(a) { return _t(function (i) { return ( (i = +i), _t(function (e, t) { for (var n, r = a([], e.length, i), o = r.length; o--; ) e[(n = r[o])] && (e[n] = !(t[n] = e[n])); }) ); }); } function It(e) { return e && typeof e.getElementsByTagName !== tt && e; } for (Re in ((_e = At.support = {}), (Oe = At.isXML = function (e) { var t = e && (e.ownerDocument || e).documentElement; return !!t && "HTML" !== t.nodeName; }), (Ue = At.setDocument = function (e) { var t, s = e ? e.ownerDocument || e : Xe, n = s.defaultView; return s !== Ve && 9 === s.nodeType && s.documentElement ? ((He = (Ve = s).documentElement), (je = !Oe(s)), n && n !== (function (e) { try { return e.top; } catch (t) {} return null; })(n) && (n.addEventListener ? n.addEventListener( "unload", function () { Ue(); }, !1 ) : n.attachEvent && n.attachEvent("onunload", function () { Ue(); })), (_e.attributes = !0), (_e.getElementsByTagName = !0), (_e.getElementsByClassName = wt.test(s.getElementsByClassName)), (_e.getById = !0), (De.find.ID = function (e, t) { if (typeof t.getElementById !== tt && je) { var n = t.getElementById(e); return n && n.parentNode ? [n] : []; } }), (De.filter.ID = function (e) { var t = e.replace(kt, Tt); return function (e) { return e.getAttribute("id") === t; }; }), (De.find.TAG = _e.getElementsByTagName ? function (e, t) { if (typeof t.getElementsByTagName !== tt) return t.getElementsByTagName(e); } : function (e, t) { var n, r = [], o = 0, i = t.getElementsByTagName(e); if ("*" === e) { for (; (n = i[o++]); ) 1 === n.nodeType && r.push(n); return r; } return i; }), (De.find.CLASS = _e.getElementsByClassName && function (e, t) { if (je) return t.getElementsByClassName(e); }), ($e = []), (qe = []), (_e.disconnectedMatch = !0), (qe = qe.length && new RegExp(qe.join("|"))), ($e = $e.length && new RegExp($e.join("|"))), (t = wt.test(He.compareDocumentPosition)), (We = t || wt.test(He.contains) ? function (e, t) { var n = 9 === e.nodeType ? e.documentElement : e, r = t && t.parentNode; return ( e === r || !( !r || 1 !== r.nodeType || !(n.contains ? n.contains(r) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(r)) ) ); } : function (e, t) { if (t) for (; (t = t.parentNode); ) if (t === e) return !0; return !1; }), (et = t ? function (e, t) { if (e === t) return (ze = !0), 0; var n = !e.compareDocumentPosition - !t.compareDocumentPosition; return ( n || (1 & (n = (e.ownerDocument || e) === (t.ownerDocument || t) ? e.compareDocumentPosition(t) : 1) || (!_e.sortDetached && t.compareDocumentPosition(e) === n) ? e === s || (e.ownerDocument === Xe && We(Xe, e)) ? -1 : t === s || (t.ownerDocument === Xe && We(Xe, t)) ? 1 : Fe ? st.call(Fe, e) - st.call(Fe, t) : 0 : 4 & n ? -1 : 1) ); } : function (e, t) { if (e === t) return (ze = !0), 0; var n, r = 0, o = e.parentNode, i = t.parentNode, a = [e], u = [t]; if (!o || !i) return e === s ? -1 : t === s ? 1 : o ? -1 : i ? 1 : Fe ? st.call(Fe, e) - st.call(Fe, t) : 0; if (o === i) return Dt(e, t); for (n = e; (n = n.parentNode); ) a.unshift(n); for (n = t; (n = n.parentNode); ) u.unshift(n); for (; a[r] === u[r]; ) r++; return r ? Dt(a[r], u[r]) : a[r] === Xe ? -1 : u[r] === Xe ? 1 : 0; }), s) : Ve; }), (At.matches = function (e, t) { return At(e, null, null, t); }), (At.matchesSelector = function (e, t) { if ( ((e.ownerDocument || e) !== Ve && Ue(e), (t = t.replace(ht, "='$1']")), _e.matchesSelector && je && (!$e || !$e.test(t)) && (!qe || !qe.test(t))) ) try { var n = (void 0).call(e, t); if ( n || _e.disconnectedMatch || (e.document && 11 !== e.document.nodeType) ) return n; } catch (ZN) {} return 0 < At(t, Ve, null, [e]).length; }), (At.contains = function (e, t) { return (e.ownerDocument || e) !== Ve && Ue(e), We(e, t); }), (At.attr = function (e, t) { (e.ownerDocument || e) !== Ve && Ue(e); var n = De.attrHandle[t.toLowerCase()], r = n && nt.call(De.attrHandle, t.toLowerCase()) ? n(e, t, !je) : undefined; return r !== undefined ? r : _e.attributes || !je ? e.getAttribute(t) : (r = e.getAttributeNode(t)) && r.specified ? r.value : null; }), (At.error = function (e) { throw new Error("Syntax error, unrecognized expression: " + e); }), (At.uniqueSort = function (e) { var t, n = [], r = 0, o = 0; if ( ((ze = !_e.detectDuplicates), (Fe = !_e.sortStable && e.slice(0)), e.sort(et), ze) ) { for (; (t = e[o++]); ) t === e[o] && (r = n.push(o)); for (; r--; ) e.splice(n[r], 1); } return (Fe = null), e; }), (Be = At.getText = function (e) { var t, n = "", r = 0, o = e.nodeType; if (o) { if (1 === o || 9 === o || 11 === o) { if ("string" == typeof e.textContent) return e.textContent; for (e = e.firstChild; e; e = e.nextSibling) n += Be(e); } else if (3 === o || 4 === o) return e.nodeValue; } else for (; (t = e[r++]); ) n += Be(t); return n; }), ((De = At.selectors = { cacheLength: 50, createPseudo: _t, match: yt, attrHandle: {}, find: {}, relative: { ">": { dir: "parentNode", first: !0 }, " ": { dir: "parentNode" }, "+": { dir: "previousSibling", first: !0 }, "~": { dir: "previousSibling" }, }, preFilter: { ATTR: function (e) { return ( (e[1] = e[1].replace(kt, Tt)), (e[3] = (e[3] || e[4] || e[5] || "").replace(kt, Tt)), "~=" === e[2] && (e[3] = " " + e[3] + " "), e.slice(0, 4) ); }, CHILD: function (e) { return ( (e[1] = e[1].toLowerCase()), "nth" === e[1].slice(0, 3) ? (e[3] || At.error(e[0]), (e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * ("even" === e[3] || "odd" === e[3]))), (e[5] = +(e[7] + e[8] || "odd" === e[3]))) : e[3] && At.error(e[0]), e ); }, PSEUDO: function (e) { var t, n = !e[6] && e[2]; return yt.CHILD.test(e[0]) ? null : (e[3] ? (e[2] = e[4] || e[5] || "") : n && vt.test(n) && (t = Pe(n, !0)) && (t = n.indexOf(")", n.length - t) - n.length) && ((e[0] = e[0].slice(0, t)), (e[2] = n.slice(0, t))), e.slice(0, 3)); }, }, filter: { TAG: function (e) { var t = e.replace(kt, Tt).toLowerCase(); return "*" === e ? function () { return !0; } : function (e) { return e.nodeName && e.nodeName.toLowerCase() === t; }; }, CLASS: function (e) { var t = Je[e + " "]; return ( t || ((t = new RegExp("(^|" + ct + ")" + e + "(" + ct + "|$)")) && Je(e, function (e) { return t.test( ("string" == typeof e.className && e.className) || (typeof e.getAttribute !== tt && e.getAttribute("class")) || "" ); })) ); }, ATTR: function (n, r, o) { return function (e) { var t = At.attr(e, n); return null == t ? "!=" === r : !r || ((t += ""), "=" === r ? t === o : "!=" === r ? t !== o : "^=" === r ? o && 0 === t.indexOf(o) : "*=" === r ? o && -1 < t.indexOf(o) : "$=" === r ? o && t.slice(-o.length) === o : "~=" === r ? -1 < (" " + t + " ").indexOf(o) : "|=" === r && (t === o || t.slice(0, o.length + 1) === o + "-")); }; }, CHILD: function (m, e, t, g, p) { var h = "nth" !== m.slice(0, 3), v = "last" !== m.slice(-4), b = "of-type" === e; return 1 === g && 0 === p ? function (e) { return !!e.parentNode; } : function (e, t, n) { var r, o, i, a, u, s, c = h !== v ? "nextSibling" : "previousSibling", l = e.parentNode, f = b && e.nodeName.toLowerCase(), d = !n && !b; if (l) { if (h) { for (; c; ) { for (i = e; (i = i[c]); ) if ( b ? i.nodeName.toLowerCase() === f : 1 === i.nodeType ) return !1; s = c = "only" === m && !s && "nextSibling"; } return !0; } if (((s = [v ? l.firstChild : l.lastChild]), v && d)) { for ( u = (r = (o = l[Ke] || (l[Ke] = {}))[m] || [])[0] === Ye && r[1], a = r[0] === Ye && r[2], i = u && l.childNodes[u]; (i = (++u && i && i[c]) || (a = u = 0) || s.pop()); ) if (1 === i.nodeType && ++a && i === e) { o[m] = [Ye, u, a]; break; } } else if ( d && (r = (e[Ke] || (e[Ke] = {}))[m]) && r[0] === Ye ) a = r[1]; else for ( ; (i = (++u && i && i[c]) || (a = u = 0) || s.pop()) && ((b ? i.nodeName.toLowerCase() !== f : 1 !== i.nodeType) || !++a || (d && ((i[Ke] || (i[Ke] = {}))[m] = [Ye, a]), i !== e)); ); return (a -= p) === g || (a % g == 0 && 0 <= a / g); } }; }, PSEUDO: function (e, i) { var t, a = De.pseudos[e] || De.setFilters[e.toLowerCase()] || At.error("unsupported pseudo: " + e); return a[Ke] ? a(i) : 1 < a.length ? ((t = [e, e, "", i]), De.setFilters.hasOwnProperty(e.toLowerCase()) ? _t(function (e, t) { for (var n, r = a(e, i), o = r.length; o--; ) e[(n = st.call(e, r[o]))] = !(t[n] = r[o]); }) : function (e) { return a(e, 0, t); }) : a; }, }, pseudos: { not: _t(function (e) { var r = [], o = [], u = Ie(e.replace(mt, "$1")); return u[Ke] ? _t(function (e, t, n, r) { for (var o, i = u(e, null, r, []), a = e.length; a--; ) (o = i[a]) && (e[a] = !(t[a] = o)); }) : function (e, t, n) { return (r[0] = e), u(r, null, n, o), !o.pop(); }; }), has: _t(function (t) { return function (e) { return 0 < At(t, e).length; }; }), contains: _t(function (t) { return ( (t = t.replace(kt, Tt)), function (e) { return -1 < (e.textContent || e.innerText || Be(e)).indexOf(t); } ); }), lang: _t(function (n) { return ( bt.test(n || "") || At.error("unsupported lang: " + n), (n = n.replace(kt, Tt).toLowerCase()), function (e) { var t; do { if ( (t = je ? e.lang : e.getAttribute("xml:lang") || e.getAttribute("lang")) ) return ( (t = t.toLowerCase()) === n || 0 === t.indexOf(n + "-") ); } while ((e = e.parentNode) && 1 === e.nodeType); return !1; } ); }), target: function (e) { var t = H.window.location && H.window.location.hash; return t && t.slice(1) === e.id; }, root: function (e) { return e === He; }, focus: function (e) { return ( e === Ve.activeElement && (!Ve.hasFocus || Ve.hasFocus()) && !!(e.type || e.href || ~e.tabIndex) ); }, enabled: function (e) { return !1 === e.disabled; }, disabled: function (e) { return !0 === e.disabled; }, checked: function (e) { var t = e.nodeName.toLowerCase(); return ( ("input" === t && !!e.checked) || ("option" === t && !!e.selected) ); }, selected: function (e) { return e.parentNode && e.parentNode.selectedIndex, !0 === e.selected; }, empty: function (e) { for (e = e.firstChild; e; e = e.nextSibling) if (e.nodeType < 6) return !1; return !0; }, parent: function (e) { return !De.pseudos.empty(e); }, header: function (e) { return xt.test(e.nodeName); }, input: function (e) { return Ct.test(e.nodeName); }, button: function (e) { var t = e.nodeName.toLowerCase(); return ("input" === t && "button" === e.type) || "button" === t; }, text: function (e) { var t; return ( "input" === e.nodeName.toLowerCase() && "text" === e.type && (null == (t = e.getAttribute("type")) || "text" === t.toLowerCase()) ); }, first: Pt(function () { return [0]; }), last: Pt(function (e, t) { return [t - 1]; }), eq: Pt(function (e, t, n) { return [n < 0 ? n + t : n]; }), even: Pt(function (e, t) { for (var n = 0; n < t; n += 2) e.push(n); return e; }), odd: Pt(function (e, t) { for (var n = 1; n < t; n += 2) e.push(n); return e; }), lt: Pt(function (e, t, n) { for (var r = n < 0 ? n + t : n; 0 <= --r; ) e.push(r); return e; }), gt: Pt(function (e, t, n) { for (var r = n < 0 ? n + t : n; ++r < t; ) e.push(r); return e; }), }, }).pseudos.nth = De.pseudos.eq), { radio: !0, checkbox: !0, file: !0, password: !0, image: !0 })) De.pseudos[Re] = Bt(Re); for (Re in { submit: !0, reset: !0 }) De.pseudos[Re] = Ot(Re); function Lt() {} function Mt(e) { for (var t = 0, n = e.length, r = ""; t < n; t++) r += e[t].value; return r; } function Ft(a, e, t) { var u = e.dir, s = t && "parentNode" === u, c = Ge++; return e.first ? function (e, t, n) { for (; (e = e[u]); ) if (1 === e.nodeType || s) return a(e, t, n); } : function (e, t, n) { var r, o, i = [Ye, c]; if (n) { for (; (e = e[u]); ) if ((1 === e.nodeType || s) && a(e, t, n)) return !0; } else for (; (e = e[u]); ) if (1 === e.nodeType || s) { if ( (r = (o = e[Ke] || (e[Ke] = {}))[u]) && r[0] === Ye && r[1] === c ) return (i[2] = r[2]); if (((o[u] = i)[2] = a(e, t, n))) return !0; } }; } function zt(o) { return 1 < o.length ? function (e, t, n) { for (var r = o.length; r--; ) if (!o[r](e, t, n)) return !1; return !0; } : o[0]; } function Ut(e, t, n, r, o) { for (var i, a = [], u = 0, s = e.length, c = null != t; u < s; u++) (i = e[u]) && ((n && !n(i, r, o)) || (a.push(i), c && t.push(u))); return a; } function Vt(m, g, p, h, v, e) { return ( h && !h[Ke] && (h = Vt(h)), v && !v[Ke] && (v = Vt(v, e)), _t(function (e, t, n, r) { var o, i, a, u = [], s = [], c = t.length, l = e || (function (e, t, n) { for (var r = 0, o = t.length; r < o; r++) At(e, t[r], n); return n; })(g || "*", n.nodeType ? [n] : n, []), f = !m || (!e && g) ? l : Ut(l, u, m, n, r), d = p ? (v || (e ? m : c || h) ? [] : t) : f; if ((p && p(f, d, n, r), h)) for (o = Ut(d, s), h(o, [], n, r), i = o.length; i--; ) (a = o[i]) && (d[s[i]] = !(f[s[i]] = a)); if (e) { if (v || m) { if (v) { for (o = [], i = d.length; i--; ) (a = d[i]) && o.push((f[i] = a)); v(null, (d = []), o, r); } for (i = d.length; i--; ) (a = d[i]) && -1 < (o = v ? st.call(e, a) : u[i]) && (e[o] = !(t[o] = a)); } } else (d = Ut(d === t ? d.splice(c, d.length) : d)), v ? v(null, t, d, r) : at.apply(t, d); }) ); } function Ht(e) { for ( var r, t, n, o = e.length, i = De.relative[e[0].type], a = i || De.relative[" "], u = i ? 1 : 0, s = Ft( function (e) { return e === r; }, a, !0 ), c = Ft( function (e) { return -1 < st.call(r, e); }, a, !0 ), l = [ function (e, t, n) { return ( (!i && (n || t !== Me)) || ((r = t).nodeType ? s(e, t, n) : c(e, t, n)) ); }, ]; u < o; u++ ) if ((t = De.relative[e[u].type])) l = [Ft(zt(l), t)]; else { if ((t = De.filter[e[u].type].apply(null, e[u].matches))[Ke]) { for (n = ++u; n < o && !De.relative[e[n].type]; n++); return Vt( 1 < u && zt(l), 1 < u && Mt( e .slice(0, u - 1) .concat({ value: " " === e[u - 2].type ? "*" : "" }) ).replace(mt, "$1"), t, u < n && Ht(e.slice(u, n)), n < o && Ht((e = e.slice(n))), n < o && Mt(e) ); } l.push(t); } return zt(l); } (Lt.prototype = De.filters = De.pseudos), (De.setFilters = new Lt()), (Pe = At.tokenize = function (e, t) { var n, r, o, i, a, u, s, c = Qe[e + " "]; if (c) return t ? 0 : c.slice(0); for (a = e, u = [], s = De.preFilter; a; ) { for (i in ((n && !(r = gt.exec(a))) || (r && (a = a.slice(r[0].length) || a), u.push((o = []))), (n = !1), (r = pt.exec(a)) && ((n = r.shift()), o.push({ value: n, type: r[0].replace(mt, " ") }), (a = a.slice(n.length))), De.filter)) !(r = yt[i].exec(a)) || (s[i] && !(r = s[i](r))) || ((n = r.shift()), o.push({ value: n, type: i, matches: r }), (a = a.slice(n.length))); if (!n) break; } return t ? a.length : a ? At.error(e) : Qe(e, u).slice(0); }), (Ie = At.compile = function (e, t) { var n, h, v, b, y, r, o = [], i = [], a = Ze[e + " "]; if (!a) { for (t || (t = Pe(e)), n = t.length; n--; ) (a = Ht(t[n]))[Ke] ? o.push(a) : i.push(a); (a = Ze( e, ((h = i), (b = 0 < (v = o).length), (y = 0 < h.length), (r = function (e, t, n, r, o) { var i, a, u, s = 0, c = "0", l = e && [], f = [], d = Me, m = e || (y && De.find.TAG("*", o)), g = (Ye += null == d ? 1 : Math.random() || 0.1), p = m.length; for ( o && (Me = t !== Ve && t); c !== p && null != (i = m[c]); c++ ) { if (y && i) { for (a = 0; (u = h[a++]); ) if (u(i, t, n)) { r.push(i); break; } o && (Ye = g); } b && ((i = !u && i) && s--, e && l.push(i)); } if (((s += c), b && c !== s)) { for (a = 0; (u = v[a++]); ) u(l, f, t, n); if (e) { if (0 < s) for (; c--; ) l[c] || f[c] || (f[c] = ot.call(r)); f = Ut(f); } at.apply(r, f), o && !e && 0 < f.length && 1 < s + v.length && At.uniqueSort(r); } return o && ((Ye = g), (Me = d)), l; }), b ? _t(r) : r) )).selector = e; } return a; }), (Le = At.select = function (e, t, n, r) { var o, i, a, u, s, c = "function" == typeof e && e, l = !r && Pe((e = c.selector || e)); if (((n = n || []), 1 === l.length)) { if ( 2 < (i = l[0] = l[0].slice(0)).length && "ID" === (a = i[0]).type && _e.getById && 9 === t.nodeType && je && De.relative[i[1].type] ) { if (!(t = (De.find.ID(a.matches[0].replace(kt, Tt), t) || [])[0])) return n; c && (t = t.parentNode), (e = e.slice(i.shift().value.length)); } for ( o = yt.needsContext.test(e) ? 0 : i.length; o-- && ((a = i[o]), !De.relative[(u = a.type)]); ) if ( (s = De.find[u]) && (r = s( a.matches[0].replace(kt, Tt), (Et.test(i[0].type) && It(t.parentNode)) || t )) ) { if ((i.splice(o, 1), !(e = r.length && Mt(i)))) return at.apply(n, r), n; break; } } return ( (c || Ie(e, l))(r, t, !je, n, (Et.test(e) && It(t.parentNode)) || t), n ); }), (_e.sortStable = Ke.split("").sort(et).join("") === Ke), (_e.detectDuplicates = !!ze), Ue(), (_e.sortDetached = !0); var jt = Array.isArray, qt = function (e, t, n) { var r, o; if (!e) return 0; if (((n = n || e), e.length !== undefined)) { for (r = 0, o = e.length; r < o; r++) if (!1 === t.call(n, e[r], r, e)) return 0; } else for (r in e) if (e.hasOwnProperty(r) && !1 === t.call(n, e[r], r, e)) return 0; return 1; }, $t = function (e, t, n) { var r, o; for (r = 0, o = e.length; r < o; r++) if (t.call(n, e[r], r, e)) return r; return -1; }, Wt = { isArray: jt, toArray: function (e) { var t, n, r = e; if (!jt(e)) for (r = [], t = 0, n = e.length; t < n; t++) r[t] = e[t]; return r; }, each: qt, map: function (n, r) { var o = []; return ( qt(n, function (e, t) { o.push(r(e, t, n)); }), o ); }, filter: function (n, r) { var o = []; return ( qt(n, function (e, t) { (r && !r(e, t, n)) || o.push(e); }), o ); }, indexOf: function (e, t) { var n, r; if (e) for (n = 0, r = e.length; n < r; n++) if (e[n] === t) return n; return -1; }, reduce: function (e, t, n, r) { var o = 0; for (arguments.length < 3 && (n = e[0]); o < e.length; o++) n = t.call(r, n, e[o], o); return n; }, findIndex: $t, find: function (e, t, n) { var r = $t(e, t, n); return -1 !== r ? e[r] : undefined; }, last: function (e) { return e[e.length - 1]; }, }, Kt = /^\s*|\s*$/g, Xt = function (e) { return null === e || e === undefined ? "" : ("" + e).replace(Kt, ""); }, Yt = function (e, t) { return t ? !("array" !== t || !Wt.isArray(e)) || typeof e === t : e !== undefined; }, Gt = function (e, n, r, o) { (o = o || this), e && (r && (e = e[r]), Wt.each(e, function (e, t) { if (!1 === n.call(o, e, t, r)) return !1; Gt(e, n, r, o); })); }, Jt = { trim: Xt, isArray: Wt.isArray, is: Yt, toArray: Wt.toArray, makeMap: function (e, t, n) { var r; for ( t = t || ",", "string" == typeof (e = e || []) && (e = e.split(t)), n = n || {}, r = e.length; r--; ) n[e[r]] = {}; return n; }, each: Wt.each, map: Wt.map, grep: Wt.filter, inArray: Wt.indexOf, hasOwn: function (e, t) { return Object.prototype.hasOwnProperty.call(e, t); }, extend: function (e, t) { for (var n, r, o, i = [], a = 2; a < arguments.length; a++) i[a - 2] = arguments[a]; var u, s = arguments; for (n = 1, r = s.length; n < r; n++) for (o in (t = s[n])) t.hasOwnProperty(o) && (u = t[o]) !== undefined && (e[o] = u); return e; }, create: function (e, t, n) { var r, o, i, a, u, s = this, c = 0; if ( ((e = /^((static) )?([\w.]+)(:([\w.]+))?/.exec(e)), (i = e[3].match(/(^|\.)(\w+)$/i)[2]), !(o = s.createNS(e[3].replace(/\.\w+$/, ""), n))[i]) ) { if ("static" === e[2]) return ( (o[i] = t), void (this.onCreate && this.onCreate(e[2], e[3], o[i])) ); t[i] || ((t[i] = function () {}), (c = 1)), (o[i] = t[i]), s.extend(o[i].prototype, t), e[5] && ((r = s.resolve(e[5]).prototype), (a = e[5].match(/\.(\w+)$/i)[1]), (u = o[i]), (o[i] = c ? function () { return r[a].apply(this, arguments); } : function () { return (this.parent = r[a]), u.apply(this, arguments); }), (o[i].prototype[i] = o[i]), s.each(r, function (e, t) { o[i].prototype[t] = r[t]; }), s.each(t, function (e, t) { r[t] ? (o[i].prototype[t] = function () { return (this.parent = r[t]), e.apply(this, arguments); }) : t !== i && (o[i].prototype[t] = e); })), s.each(t["static"], function (e, t) { o[i][t] = e; }); } }, walk: Gt, createNS: function (e, t) { var n, r; for (t = t || H.window, e = e.split("."), n = 0; n < e.length; n++) t[(r = e[n])] || (t[r] = {}), (t = t[r]); return t; }, resolve: function (e, t) { var n, r; for ( t = t || H.window, n = 0, r = (e = e.split(".")).length; n < r && (t = t[e[n]]); n++ ); return t; }, explode: function (e, t) { return !e || Yt(e, "array") ? e : Wt.map(e.split(t || ","), Xt); }, _addCacheSuffix: function (e) { var t = ge.cacheSuffix; return t && (e += (-1 === e.indexOf("?") ? "?" : "&") + t), e; }, }, Qt = H.document, Zt = Array.prototype.push, en = Array.prototype.slice, tn = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/, nn = Ae.Event, rn = Jt.makeMap("children,contents,next,prev"), on = function (e) { return void 0 !== e; }, an = function (e) { return "string" == typeof e; }, un = function (e, t) { var n, r, o; for ( o = (t = t || Qt).createElement("div"), n = t.createDocumentFragment(), o.innerHTML = e; (r = o.firstChild); ) n.appendChild(r); return n; }, sn = function (e, t, n, r) { var o; if (an(t)) t = un(t, wn(e[0])); else if (t.length && !t.nodeType) { if (((t = vn.makeArray(t)), r)) for (o = t.length - 1; 0 <= o; o--) sn(e, t[o], n, r); else for (o = 0; o < t.length; o++) sn(e, t[o], n, r); return e; } if (t.nodeType) for (o = e.length; o--; ) n.call(e[o], t); return e; }, cn = function (e, t) { return e && t && -1 !== (" " + e.className + " ").indexOf(" " + t + " "); }, ln = function (e, t, n) { var r, o; return ( (t = vn(t)[0]), e.each(function () { var e = this; (n && r === e.parentNode) || ((r = e.parentNode), (o = t.cloneNode(!1)), e.parentNode.insertBefore(o, e)), o.appendChild(e); }), e ); }, fn = Jt.makeMap( "fillOpacity fontWeight lineHeight opacity orphans widows zIndex zoom", " " ), dn = Jt.makeMap( "checked compact declare defer disabled ismap multiple nohref noshade nowrap readonly selected", " " ), mn = { for: "htmlFor", class: "className", readonly: "readOnly" }, gn = { float: "cssFloat" }, pn = {}, hn = {}, vn = function (e, t) { return new vn.fn.init(e, t); }, bn = /^\s*|\s*$/g, yn = function (e) { return null === e || e === undefined ? "" : ("" + e).replace(bn, ""); }, Cn = function (e, t) { var n, r, o, i; if (e) if ((n = e.length) === undefined) { for (r in e) if (e.hasOwnProperty(r) && ((i = e[r]), !1 === t.call(i, r, i))) break; } else for (o = 0; o < n && ((i = e[o]), !1 !== t.call(i, o, i)); o++); return e; }, xn = function (e, n) { var r = []; return ( Cn(e, function (e, t) { n(t, e) && r.push(t); }), r ); }, wn = function (e) { return e ? (9 === e.nodeType ? e : e.ownerDocument) : Qt; }; (vn.fn = vn.prototype = { constructor: vn, selector: "", context: null, length: 0, init: function (e, t) { var n, r, o = this; if (!e) return o; if (e.nodeType) return (o.context = o[0] = e), (o.length = 1), o; if (t && t.nodeType) o.context = t; else { if (t) return vn(e).attr(t); o.context = t = H.document; } if (an(e)) { if ( !(n = "<" === (o.selector = e).charAt(0) && ">" === e.charAt(e.length - 1) && 3 <= e.length ? [null, e, null] : tn.exec(e)) ) return vn(t).find(e); if (n[1]) for (r = un(e, wn(t)).firstChild; r; ) Zt.call(o, r), (r = r.nextSibling); else { if (!(r = wn(t).getElementById(n[2]))) return o; if (r.id !== n[2]) return o.find(e); (o.length = 1), (o[0] = r); } } else this.add(e, !1); return o; }, toArray: function () { return Jt.toArray(this); }, add: function (e, t) { var n, r, o = this; if (an(e)) return o.add(vn(e)); if (!1 !== t) for ( n = vn.unique(o.toArray().concat(vn.makeArray(e))), o.length = n.length, r = 0; r < n.length; r++ ) o[r] = n[r]; else Zt.apply(o, vn.makeArray(e)); return o; }, attr: function (t, n) { var e, r = this; if ("object" == typeof t) Cn(t, function (e, t) { r.attr(e, t); }); else { if (!on(n)) { if (r[0] && 1 === r[0].nodeType) { if ((e = pn[t]) && e.get) return e.get(r[0], t); if (dn[t]) return r.prop(t) ? t : undefined; null === (n = r[0].getAttribute(t, 2)) && (n = undefined); } return n; } this.each(function () { var e; if (1 === this.nodeType) { if ((e = pn[t]) && e.set) return void e.set(this, n); null === n ? this.removeAttribute(t, 2) : this.setAttribute(t, n, 2); } }); } return r; }, removeAttr: function (e) { return this.attr(e, null); }, prop: function (e, t) { var n = this; if ("object" == typeof (e = mn[e] || e)) Cn(e, function (e, t) { n.prop(e, t); }); else { if (!on(t)) return n[0] && n[0].nodeType && e in n[0] ? n[0][e] : t; this.each(function () { 1 === this.nodeType && (this[e] = t); }); } return n; }, css: function (n, r) { var e, o, i = this, t = function (e) { return e.replace(/-(\D)/g, function (e, t) { return t.toUpperCase(); }); }, a = function (e) { return e.replace(/[A-Z]/g, function (e) { return "-" + e; }); }; if ("object" == typeof n) Cn(n, function (e, t) { i.css(e, t); }); else if (on(r)) (n = t(n)), "number" != typeof r || fn[n] || (r = r.toString() + "px"), i.each(function () { var e = this.style; if ((o = hn[n]) && o.set) o.set(this, r); else { try { this.style[gn[n] || n] = r; } catch (t) {} (null !== r && "" !== r) || (e.removeProperty ? e.removeProperty(a(n)) : e.removeAttribute(n)); } }); else { if (((e = i[0]), (o = hn[n]) && o.get)) return o.get(e); if (!e.ownerDocument.defaultView) return e.currentStyle ? e.currentStyle[t(n)] : ""; try { return e.ownerDocument.defaultView .getComputedStyle(e, null) .getPropertyValue(a(n)); } catch (u) { return undefined; } } return i; }, remove: function () { for (var e, t = this.length; t--; ) (e = this[t]), nn.clean(e), e.parentNode && e.parentNode.removeChild(e); return this; }, empty: function () { for (var e, t = this.length; t--; ) for (e = this[t]; e.firstChild; ) e.removeChild(e.firstChild); return this; }, html: function (e) { var t, n = this; if (on(e)) { t = n.length; try { for (; t--; ) n[t].innerHTML = e; } catch (r) { vn(n[t]).empty().append(e); } return n; } return n[0] ? n[0].innerHTML : ""; }, text: function (e) { var t, n = this; if (on(e)) { for (t = n.length; t--; ) "innerText" in n[t] ? (n[t].innerText = e) : (n[0].textContent = e); return n; } return n[0] ? n[0].innerText || n[0].textContent : ""; }, append: function () { return sn(this, arguments, function (e) { (1 === this.nodeType || (this.host && 1 === this.host.nodeType)) && this.appendChild(e); }); }, prepend: function () { return sn( this, arguments, function (e) { (1 === this.nodeType || (this.host && 1 === this.host.nodeType)) && this.insertBefore(e, this.firstChild); }, !0 ); }, before: function () { return this[0] && this[0].parentNode ? sn(this, arguments, function (e) { this.parentNode.insertBefore(e, this); }) : this; }, after: function () { return this[0] && this[0].parentNode ? sn( this, arguments, function (e) { this.parentNode.insertBefore(e, this.nextSibling); }, !0 ) : this; }, appendTo: function (e) { return vn(e).append(this), this; }, prependTo: function (e) { return vn(e).prepend(this), this; }, replaceWith: function (e) { return this.before(e).remove(); }, wrap: function (e) { return ln(this, e); }, wrapAll: function (e) { return ln(this, e, !0); }, wrapInner: function (e) { return ( this.each(function () { vn(this).contents().wrapAll(e); }), this ); }, unwrap: function () { return this.parent().each(function () { vn(this).replaceWith(this.childNodes); }); }, clone: function () { var e = []; return ( this.each(function () { e.push(this.cloneNode(!0)); }), vn(e) ); }, addClass: function (e) { return this.toggleClass(e, !0); }, removeClass: function (e) { return this.toggleClass(e, !1); }, toggleClass: function (o, i) { var e = this; return ( "string" != typeof o || (-1 !== o.indexOf(" ") ? Cn(o.split(" "), function () { e.toggleClass(this, i); }) : e.each(function (e, t) { var n, r; (r = cn(t, o)) !== i && ((n = t.className), r ? (t.className = yn( (" " + n + " ").replace(" " + o + " ", " ") )) : (t.className += n ? " " + o : o)); })), e ); }, hasClass: function (e) { return cn(this[0], e); }, each: function (e) { return Cn(this, e); }, on: function (e, t) { return this.each(function () { nn.bind(this, e, t); }); }, off: function (e, t) { return this.each(function () { nn.unbind(this, e, t); }); }, trigger: function (e) { return this.each(function () { "object" == typeof e ? nn.fire(this, e.type, e) : nn.fire(this, e); }); }, show: function () { return this.css("display", ""); }, hide: function () { return this.css("display", "none"); }, slice: function () { return new vn(en.apply(this, arguments)); }, eq: function (e) { return -1 === e ? this.slice(e) : this.slice(e, +e + 1); }, first: function () { return this.eq(0); }, last: function () { return this.eq(-1); }, find: function (e) { var t, n, r = []; for (t = 0, n = this.length; t < n; t++) vn.find(e, this[t], r); return vn(r); }, filter: function (n) { return vn( "function" == typeof n ? xn(this.toArray(), function (e, t) { return n(t, e); }) : vn.filter(n, this.toArray()) ); }, closest: function (n) { var r = []; return ( n instanceof vn && (n = n[0]), this.each(function (e, t) { for (; t; ) { if ("string" == typeof n && vn(t).is(n)) { r.push(t); break; } if (t === n) { r.push(t); break; } t = t.parentNode; } }), vn(r) ); }, offset: function (e) { var t, n, r, o, i = 0, a = 0; return e ? this.css(e) : ((t = this[0]) && ((r = (n = t.ownerDocument).documentElement), t.getBoundingClientRect && ((i = (o = t.getBoundingClientRect()).left + (r.scrollLeft || n.body.scrollLeft) - r.clientLeft), (a = o.top + (r.scrollTop || n.body.scrollTop) - r.clientTop))), { left: i, top: a }); }, push: Zt, sort: [].sort, splice: [].splice, }), Jt.extend(vn, { extend: Jt.extend, makeArray: function (e) { return ((t = e) && t === t.window) || e.nodeType ? [e] : Jt.toArray(e); var t; }, inArray: function (e, t) { var n; if (t.indexOf) return t.indexOf(e); for (n = t.length; n--; ) if (t[n] === e) return n; return -1; }, isArray: Jt.isArray, each: Cn, trim: yn, grep: xn, find: At, expr: At.selectors, unique: At.uniqueSort, text: At.getText, contains: At.contains, filter: function (e, t, n) { var r = t.length; for (n && (e = ":not(" + e + ")"); r--; ) 1 !== t[r].nodeType && t.splice(r, 1); return (t = 1 === t.length ? vn.find.matchesSelector(t[0], e) ? [t[0]] : [] : vn.find.matches(e, t)); }, }); var Nn = function (e, t, n) { var r = [], o = e[t]; for ( "string" != typeof n && n instanceof vn && (n = n[0]); o && 9 !== o.nodeType; ) { if (n !== undefined) { if (o === n) break; if ("string" == typeof n && vn(o).is(n)) break; } 1 === o.nodeType && r.push(o), (o = o[t]); } return r; }, En = function (e, t, n, r) { var o = []; for (r instanceof vn && (r = r[0]); e; e = e[t]) if (!n || e.nodeType === n) { if (r !== undefined) { if (e === r) break; if ("string" == typeof r && vn(e).is(r)) break; } o.push(e); } return o; }, Sn = function (e, t, n) { for (e = e[t]; e; e = e[t]) if (e.nodeType === n) return e; return null; }; Cn( { parent: function (e) { var t = e.parentNode; return t && 11 !== t.nodeType ? t : null; }, parents: function (e) { return Nn(e, "parentNode"); }, next: function (e) { return Sn(e, "nextSibling", 1); }, prev: function (e) { return Sn(e, "previousSibling", 1); }, children: function (e) { return En(e.firstChild, "nextSibling", 1); }, contents: function (e) { return Jt.toArray( ("iframe" === e.nodeName ? e.contentDocument || e.contentWindow.document : e ).childNodes ); }, }, function (e, r) { vn.fn[e] = function (t) { var n = []; return ( this.each(function () { var e = r.call(n, this, t, n); e && (vn.isArray(e) ? n.push.apply(n, e) : n.push(e)); }), 1 < this.length && (rn[e] || (n = vn.unique(n)), 0 === e.indexOf("parents") && (n = n.reverse())), (n = vn(n)), t ? n.filter(t) : n ); }; } ), Cn( { parentsUntil: function (e, t) { return Nn(e, "parentNode", t); }, nextUntil: function (e, t) { return En(e, "nextSibling", 1, t).slice(1); }, prevUntil: function (e, t) { return En(e, "previousSibling", 1, t).slice(1); }, }, function (r, o) { vn.fn[r] = function (t, e) { var n = []; return ( this.each(function () { var e = o.call(n, this, t, n); e && (vn.isArray(e) ? n.push.apply(n, e) : n.push(e)); }), 1 < this.length && ((n = vn.unique(n)), (0 !== r.indexOf("parents") && "prevUntil" !== r) || (n = n.reverse())), (n = vn(n)), e ? n.filter(e) : n ); }; } ), (vn.fn.is = function (e) { return !!e && 0 < this.filter(e).length; }), (vn.fn.init.prototype = vn.fn), (vn.overrideDefaults = function (n) { var r, o = function (e, t) { return ( (r = r || n()), 0 === arguments.length && (e = r.element), t || (t = r.context), new o.fn.init(e, t) ); }; return vn.extend(o, this), o; }); var kn = function (n, r, e) { Cn(e, function (e, t) { (n[e] = n[e] || {}), (n[e][r] = t); }); }; ge.ie && ge.ie < 8 && (kn(pn, "get", { maxlength: function (e) { var t = e.maxLength; return 2147483647 === t ? undefined : t; }, size: function (e) { var t = e.size; return 20 === t ? undefined : t; }, class: function (e) { return e.className; }, style: function (e) { var t = e.style.cssText; return 0 === t.length ? undefined : t; }, }), kn(pn, "set", { class: function (e, t) { e.className = t; }, style: function (e, t) { e.style.cssText = t; }, })), ge.ie && ge.ie < 9 && ((gn["float"] = "styleFloat"), kn(hn, "set", { opacity: function (e, t) { var n = e.style; null === t || "" === t ? n.removeAttribute("filter") : ((n.zoom = 1), (n.filter = "alpha(opacity=" + 100 * t + ")")); }, })), (vn.attrHooks = pn), (vn.cssHooks = hn); var Tn, An, Rn, _n = function (e, t) { var n = (function (e, t) { for (var n = 0; n < e.length; n++) { var r = e[n]; if (r.test(t)) return r; } return undefined; })(e, t); if (!n) return { major: 0, minor: 0 }; var r = function (e) { return Number(t.replace(n, "$" + e)); }; return Bn(r(1), r(2)); }, Dn = function () { return Bn(0, 0); }, Bn = function (e, t) { return { major: e, minor: t }; }, On = { nu: Bn, detect: function (e, t) { var n = String(t).toLowerCase(); return 0 === e.length ? Dn() : _n(e, n); }, unknown: Dn, }, Pn = "Firefox", In = function (e, t) { return function () { return t === e; }; }, Ln = function (e) { var t = e.current; return { current: t, version: e.version, isEdge: In("Edge", t), isChrome: In("Chrome", t), isIE: In("IE", t), isOpera: In("Opera", t), isFirefox: In(Pn, t), isSafari: In("Safari", t), }; }, Mn = { unknown: function () { return Ln({ current: undefined, version: On.unknown() }); }, nu: Ln, edge: q("Edge"), chrome: q("Chrome"), ie: q("IE"), opera: q("Opera"), firefox: q(Pn), safari: q("Safari"), }, Fn = "Windows", zn = "Android", Un = "Solaris", Vn = "FreeBSD", Hn = function (e, t) { return function () { return t === e; }; }, jn = function (e) { var t = e.current; return { current: t, version: e.version, isWindows: Hn(Fn, t), isiOS: Hn("iOS", t), isAndroid: Hn(zn, t), isOSX: Hn("OSX", t), isLinux: Hn("Linux", t), isSolaris: Hn(Un, t), isFreeBSD: Hn(Vn, t), }; }, qn = { unknown: function () { return jn({ current: undefined, version: On.unknown() }); }, nu: jn, windows: q(Fn), ios: q("iOS"), android: q(zn), linux: q("Linux"), osx: q("OSX"), solaris: q(Un), freebsd: q(Vn), }, $n = function (e, t) { var n = String(t).toLowerCase(); return Y(e, function (e) { return e.search(n); }); }, Wn = function (e, n) { return $n(e, n).map(function (e) { var t = On.detect(e.versionRegexes, n); return { current: e.name, version: t }; }); }, Kn = function (e, n) { return $n(e, n).map(function (e) { var t = On.detect(e.versionRegexes, n); return { current: e.name, version: t }; }); }, Xn = function (e, t) { return -1 !== e.indexOf(t); }, Yn = function (e) { return e.replace(/^\s+|\s+$/g, ""); }, Gn = function (e) { return e.replace(/\s+$/g, ""); }, Jn = /.*?version\/\ ?([0-9]+)\.([0-9]+).*/, Qn = function (t) { return function (e) { return Xn(e, t); }; }, Zn = [ { name: "Edge", versionRegexes: [/.*?edge\/ ?([0-9]+)\.([0-9]+)$/], search: function (e) { return ( Xn(e, "edge/") && Xn(e, "chrome") && Xn(e, "safari") && Xn(e, "applewebkit") ); }, }, { name: "Chrome", versionRegexes: [/.*?chrome\/([0-9]+)\.([0-9]+).*/, Jn], search: function (e) { return Xn(e, "chrome") && !Xn(e, "chromeframe"); }, }, { name: "IE", versionRegexes: [ /.*?msie\ ?([0-9]+)\.([0-9]+).*/, /.*?rv:([0-9]+)\.([0-9]+).*/, ], search: function (e) { return Xn(e, "msie") || Xn(e, "trident"); }, }, { name: "Opera", versionRegexes: [Jn, /.*?opera\/([0-9]+)\.([0-9]+).*/], search: Qn("opera"), }, { name: "Firefox", versionRegexes: [/.*?firefox\/\ ?([0-9]+)\.([0-9]+).*/], search: Qn("firefox"), }, { name: "Safari", versionRegexes: [Jn, /.*?cpu os ([0-9]+)_([0-9]+).*/], search: function (e) { return (Xn(e, "safari") || Xn(e, "mobile/")) && Xn(e, "applewebkit"); }, }, ], er = [ { name: "Windows", search: Qn("win"), versionRegexes: [/.*?windows\ nt\ ?([0-9]+)\.([0-9]+).*/], }, { name: "iOS", search: function (e) { return Xn(e, "iphone") || Xn(e, "ipad"); }, versionRegexes: [ /.*?version\/\ ?([0-9]+)\.([0-9]+).*/, /.*cpu os ([0-9]+)_([0-9]+).*/, /.*cpu iphone os ([0-9]+)_([0-9]+).*/, ], }, { name: "Android", search: Qn("android"), versionRegexes: [/.*?android\ ?([0-9]+)\.([0-9]+).*/], }, { name: "OSX", search: Qn("os x"), versionRegexes: [/.*?os\ x\ ?([0-9]+)_([0-9]+).*/], }, { name: "Linux", search: Qn("linux"), versionRegexes: [] }, { name: "Solaris", search: Qn("sunos"), versionRegexes: [] }, { name: "FreeBSD", search: Qn("freebsd"), versionRegexes: [] }, ], tr = { browsers: q(Zn), oses: q(er) }, nr = function (e) { var t, n, r, o, i, a, u, s, c, l, f, d = tr.browsers(), m = tr.oses(), g = Wn(d, e).fold(Mn.unknown, Mn.nu), p = Kn(m, e).fold(qn.unknown, qn.nu); return { browser: g, os: p, deviceType: ((n = g), (r = e), (o = (t = p).isiOS() && !0 === /ipad/i.test(r)), (i = t.isiOS() && !o), (a = t.isAndroid() && 3 === t.version.major), (u = t.isAndroid() && 4 === t.version.major), (s = o || a || (u && !0 === /mobile/i.test(r))), (c = t.isiOS() || t.isAndroid()), (l = c && !s), (f = n.isSafari() && t.isiOS() && !1 === /safari/i.test(r)), { isiPad: q(o), isiPhone: q(i), isTablet: q(s), isPhone: q(l), isTouch: q(c), isAndroid: t.isAndroid, isiOS: t.isiOS, isWebView: q(f), }), }; }, rr = { detect: ((Tn = function () { var e = H.navigator.userAgent; return nr(e); }), (Rn = !1), function () { for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; return Rn || ((Rn = !0), (An = Tn.apply(null, e))), An; }), }, or = function (e) { if (null === e || e === undefined) throw new Error("Node cannot be null or undefined"); return { dom: q(e) }; }, ir = { fromHtml: function (e, t) { var n = (t || H.document).createElement("div"); if (((n.innerHTML = e), !n.hasChildNodes() || 1 < n.childNodes.length)) throw ( (H.console.error("HTML does not have a single root node", e), new Error("HTML must have a single root node")) ); return or(n.childNodes[0]); }, fromTag: function (e, t) { var n = (t || H.document).createElement(e); return or(n); }, fromText: function (e, t) { var n = (t || H.document).createTextNode(e); return or(n); }, fromDom: or, fromPoint: function (e, t, n) { var r = e.dom(); return A.from(r.elementFromPoint(t, n)).map(or); }, }, ar = (H.Node.ATTRIBUTE_NODE, H.Node.CDATA_SECTION_NODE, H.Node.COMMENT_NODE, H.Node.DOCUMENT_NODE), ur = (H.Node.DOCUMENT_TYPE_NODE, H.Node.DOCUMENT_FRAGMENT_NODE, H.Node.ELEMENT_NODE), sr = H.Node.TEXT_NODE, cr = (H.Node.PROCESSING_INSTRUCTION_NODE, H.Node.ENTITY_REFERENCE_NODE, H.Node.ENTITY_NODE, H.Node.NOTATION_NODE, function (e) { return e.dom().nodeName.toLowerCase(); }), lr = function (t) { return function (e) { return e.dom().nodeType === t; }; }, fr = lr(ur), dr = lr(sr), mr = Object.keys, gr = Object.hasOwnProperty, pr = function (e, t) { for (var n = mr(e), r = 0, o = n.length; r < o; r++) { var i = n[r]; t(e[i], i, e); } }, hr = function (r, o) { var i = {}; return ( pr(r, function (e, t) { var n = o(e, t, r); i[n.k] = n.v; }), i ); }, vr = function (e) { return e.style !== undefined && P(e.style.getPropertyValue); }, br = function (e, t, n) { if (!(R(n) || O(n) || I(n))) throw ( (H.console.error( "Invalid call to Attr.set. Key ", t, ":: Value ", n, ":: Element ", e ), new Error("Attribute value was not simple")) ); e.setAttribute(t, n + ""); }, yr = function (e, t, n) { br(e.dom(), t, n); }, Cr = function (e, t) { var n = e.dom(); pr(t, function (e, t) { br(n, t, e); }); }, xr = function (e, t) { var n = e.dom().getAttribute(t); return null === n ? undefined : n; }, wr = function (e, t) { e.dom().removeAttribute(t); }, Nr = function (e, t) { var n = e.dom(); pr(t, function (e, t) { !(function (e, t, n) { if (!R(n)) throw ( (H.console.error( "Invalid call to CSS.set. Property ", t, ":: Value ", n, ":: Element ", e ), new Error("CSS value must be a string: " + n)) ); vr(e) && e.style.setProperty(t, n); })(n, t, e); }); }, Er = function (e, t) { var n, r, o = e.dom(), i = H.window.getComputedStyle(o).getPropertyValue(t), a = "" !== i || ((r = dr((n = e)) ? n.dom().parentNode : n.dom()) !== undefined && null !== r && r.ownerDocument.body.contains(r)) ? i : Sr(o, t); return null === a ? undefined : a; }, Sr = function (e, t) { return vr(e) ? e.style.getPropertyValue(t) : ""; }, kr = function () { for (var t = [], e = 0; e < arguments.length; e++) t[e] = arguments[e]; return function () { for (var n = [], e = 0; e < arguments.length; e++) n[e] = arguments[e]; if (t.length !== n.length) throw new Error( 'Wrong number of arguments to struct. Expected "[' + t.length + ']", got ' + n.length + " arguments" ); var r = {}; return ( U(t, function (e, t) { r[e] = q(n[t]); }), r ); }; }, Tr = function (e, t) { for ( var n = [], r = function (e) { return n.push(e), t(e); }, o = t(e); (o = o.bind(r)).isSome(); ); return n; }, Ar = function () { return ue.getOrDie("Node"); }, Rr = function (e, t, n) { return 0 != (e.compareDocumentPosition(t) & n); }, _r = function (e, t) { return Rr(e, t, Ar().DOCUMENT_POSITION_CONTAINED_BY); }, Dr = ur, Br = ar, Or = function (e, t) { var n = e.dom(); if (n.nodeType !== Dr) return !1; if (n.matches !== undefined) return n.matches(t); if (n.msMatchesSelector !== undefined) return n.msMatchesSelector(t); if (n.webkitMatchesSelector !== undefined) return n.webkitMatchesSelector(t); if (n.mozMatchesSelector !== undefined) return n.mozMatchesSelector(t); throw new Error("Browser lacks native selectors"); }, Pr = function (e) { return ( (e.nodeType !== Dr && e.nodeType !== Br) || 0 === e.childElementCount ); }, Ir = function (e, t) { return e.dom() === t.dom(); }, Lr = rr.detect().browser.isIE() ? function (e, t) { return _r(e.dom(), t.dom()); } : function (e, t) { var n = e.dom(), r = t.dom(); return n !== r && n.contains(r); }, Mr = function (e) { return ir.fromDom(e.dom().ownerDocument); }, Fr = function (e) { var t = e.dom().ownerDocument.defaultView; return ir.fromDom(t); }, zr = function (e) { var t = e.dom(); return A.from(t.parentNode).map(ir.fromDom); }, Ur = function (e) { var t = e.dom(); return A.from(t.previousSibling).map(ir.fromDom); }, Vr = function (e) { var t = e.dom(); return A.from(t.nextSibling).map(ir.fromDom); }, Hr = function (e) { return (t = Tr(e, Ur)), (n = L.call(t, 0)).reverse(), n; var t, n; }, jr = function (e) { return Tr(e, Vr); }, qr = function (e) { var t = e.dom(); return W(t.childNodes, ir.fromDom); }, $r = function (e, t) { var n = e.dom().childNodes; return A.from(n[t]).map(ir.fromDom); }, Wr = function (e) { return $r(e, 0); }, Kr = function (e) { return $r(e, e.dom().childNodes.length - 1); }, Xr = (kr("element", "offset"), rr.detect().browser), Yr = function (e) { return Y(e, fr); }, Gr = { getPos: function (e, t, n) { var r, o, i, a = 0, u = 0, s = e.ownerDocument; if (((n = n || e), t)) { if ( n === e && t.getBoundingClientRect && "static" === Er(ir.fromDom(e), "position") ) return { x: (a = (o = t.getBoundingClientRect()).left + (s.documentElement.scrollLeft || e.scrollLeft) - s.documentElement.clientLeft), y: (u = o.top + (s.documentElement.scrollTop || e.scrollTop) - s.documentElement.clientTop), }; for (r = t; r && r !== n && r.nodeType; ) (a += r.offsetLeft || 0), (u += r.offsetTop || 0), (r = r.offsetParent); for (r = t.parentNode; r && r !== n && r.nodeType; ) (a -= r.scrollLeft || 0), (u -= r.scrollTop || 0), (r = r.parentNode); u += ((i = ir.fromDom(t)), Xr.isFirefox() && "table" === cr(i) ? Yr(qr(i)) .filter(function (e) { return "caption" === cr(e); }) .bind(function (o) { return Yr(jr(o)).map(function (e) { var t = e.dom().offsetTop, n = o.dom().offsetTop, r = o.dom().offsetHeight; return t <= n ? -r : 0; }); }) .getOr(0) : 0); } return { x: a, y: u }; }, }, Jr = function (e) { var n = A.none(), t = [], r = function (e) { o() ? a(e) : t.push(e); }, o = function () { return n.isSome(); }, i = function (e) { U(e, a); }, a = function (t) { n.each(function (e) { H.setTimeout(function () { t(e); }, 0); }); }; return ( e(function (e) { (n = A.some(e)), i(t), (t = []); }), { get: r, map: function (n) { return Jr(function (t) { r(function (e) { t(n(e)); }); }); }, isReady: o, } ); }, Qr = { nu: Jr, pure: function (t) { return Jr(function (e) { e(t); }); }, }, Zr = function (t) { var e = function (e) { var r; t( ((r = e), function () { for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; var n = this; H.setTimeout(function () { r.apply(n, e); }, 0); }) ); }, n = function () { return Qr.nu(e); }; return { map: function (r) { return Zr(function (n) { e(function (e) { var t = r(e); n(t); }); }); }, bind: function (n) { return Zr(function (t) { e(function (e) { n(e).get(t); }); }); }, anonBind: function (n) { return Zr(function (t) { e(function (e) { n.get(t); }); }); }, toLazy: n, toCached: function () { var t = null; return Zr(function (e) { null === t && (t = n()), t.get(e); }); }, get: e, }; }, eo = { nu: Zr, pure: function (t) { return Zr(function (e) { e(t); }); }, }, to = function (a, e) { return e(function (r) { var o = [], i = 0; 0 === a.length ? r([]) : U(a, function (e, t) { var n; e.get( ((n = t), function (e) { (o[n] = e), ++i >= a.length && r(o); }) ); }); }); }, no = function (e) { return to(e, eo.nu); }, ro = function (n) { return { is: function (e) { return n === e; }, isValue: x, isError: C, getOr: q(n), getOrThunk: q(n), getOrDie: q(n), or: function (e) { return ro(n); }, orThunk: function (e) { return ro(n); }, fold: function (e, t) { return t(n); }, map: function (e) { return ro(e(n)); }, mapError: function (e) { return ro(n); }, each: function (e) { e(n); }, bind: function (e) { return e(n); }, exists: function (e) { return e(n); }, forall: function (e) { return e(n); }, toOption: function () { return A.some(n); }, }; }, oo = function (n) { return { is: C, isValue: C, isError: x, getOr: $, getOrThunk: function (e) { return e(); }, getOrDie: function () { return ( (e = String(n)), (function () { throw new Error(e); })() ); var e; }, or: function (e) { return e; }, orThunk: function (e) { return e(); }, fold: function (e, t) { return e(n); }, map: function (e) { return oo(n); }, mapError: function (e) { return oo(e(n)); }, each: o, bind: function (e) { return oo(n); }, exists: C, forall: x, toOption: A.none, }; }, io = { value: ro, error: oo, fromOption: function (e, t) { return e.fold(function () { return oo(t); }, ro); }, }; function ao(e, u) { var t = e, n = function (e, t, n, r) { var o, i; if (e) { if (!r && e[t]) return e[t]; if (e !== u) { if ((o = e[n])) return o; for (i = e.parentNode; i && i !== u; i = i.parentNode) if ((o = i[n])) return o; } } }; (this.current = function () { return t; }), (this.next = function (e) { return (t = n(t, "firstChild", "nextSibling", e)); }), (this.prev = function (e) { return (t = n(t, "lastChild", "previousSibling", e)); }), (this.prev2 = function (e) { return (t = (function (e, t, n, r) { var o, i, a; if (e) { if (((o = e[n]), u && o === u)) return; if (o) { if (!r) for (a = o[t]; a; a = a[t]) if (!a[t]) return a; return o; } if ((i = e.parentNode) && i !== u) return i; } })(t, "lastChild", "previousSibling", e)); }); } var uo, so, co, lo = function (t) { var n; return function (e) { return (n = n || (function (e, t) { for (var n = {}, r = 0, o = e.length; r < o; r++) { var i = e[r]; n[String(i)] = t(i, r); } return n; })(t, q(!0))).hasOwnProperty(cr(e)); }; }, fo = lo(["h1", "h2", "h3", "h4", "h5", "h6"]), mo = lo([ "article", "aside", "details", "div", "dt", "figcaption", "footer", "form", "fieldset", "header", "hgroup", "html", "main", "nav", "section", "summary", "body", "p", "dl", "multicol", "dd", "figure", "address", "center", "blockquote", "h1", "h2", "h3", "h4", "h5", "h6", "listing", "xmp", "pre", "plaintext", "menu", "dir", "ul", "ol", "li", "hr", "table", "tbody", "thead", "tfoot", "th", "tr", "td", "caption", ]), go = function (e) { return fr(e) && !mo(e); }, po = function (e) { return fr(e) && "br" === cr(e); }, ho = lo([ "h1", "h2", "h3", "h4", "h5", "h6", "p", "div", "address", "pre", "form", "blockquote", "center", "dir", "fieldset", "header", "footer", "article", "section", "hgroup", "aside", "nav", "figure", ]), vo = lo(["ul", "ol", "dl"]), bo = lo(["li", "dd", "dt"]), yo = lo([ "area", "base", "basefont", "br", "col", "frame", "hr", "img", "input", "isindex", "link", "meta", "param", "embed", "source", "wbr", "track", ]), Co = lo(["thead", "tbody", "tfoot"]), xo = lo(["td", "th"]), wo = lo(["pre", "script", "textarea", "style"]), No = function (t) { return function (e) { return !!e && e.nodeType === t; }; }, Eo = No(1), So = function (e) { var r = e.toLowerCase().split(" "); return function (e) { var t, n; if (e && e.nodeType) for (n = e.nodeName.toLowerCase(), t = 0; t < r.length; t++) if (n === r[t]) return !0; return !1; }; }, ko = function (t) { return function (e) { if (Eo(e)) { if (e.contentEditable === t) return !0; if (e.getAttribute("data-mce-contenteditable") === t) return !0; } return !1; }; }, To = No(3), Ao = No(8), Ro = No(9), _o = No(11), Do = So("br"), Bo = ko("true"), Oo = ko("false"), Po = { isText: To, isElement: Eo, isComment: Ao, isDocument: Ro, isDocumentFragment: _o, isBr: Do, isContentEditableTrue: Bo, isContentEditableFalse: Oo, isRestrictedNode: function (e) { return !!e && !Object.getPrototypeOf(e); }, matchNodeNames: So, hasPropValue: function (t, n) { return function (e) { return Eo(e) && e[t] === n; }; }, hasAttribute: function (t, e) { return function (e) { return Eo(e) && e.hasAttribute(t); }; }, hasAttributeValue: function (t, n) { return function (e) { return Eo(e) && e.getAttribute(t) === n; }; }, matchStyleValues: function (r, e) { var o = e.toLowerCase().split(" "); return function (e) { var t; if (Eo(e)) for (t = 0; t < o.length; t++) { var n = e.ownerDocument.defaultView.getComputedStyle(e, null); if ((n ? n.getPropertyValue(r) : null) === o[t]) return !0; } return !1; }; }, isBogus: function (e) { return Eo(e) && e.hasAttribute("data-mce-bogus"); }, isBogusAll: function (e) { return Eo(e) && "all" === e.getAttribute("data-mce-bogus"); }, isTable: function (e) { return Eo(e) && "TABLE" === e.tagName; }, }, Io = function (e) { return ( e && "SPAN" === e.tagName && "bookmark" === e.getAttribute("data-mce-type") ); }, Lo = function (e, t) { var n, r = t.childNodes; if (!Po.isElement(t) || !Io(t)) { for (n = r.length - 1; 0 <= n; n--) Lo(e, r[n]); if (!1 === Po.isDocument(t)) { if (Po.isText(t) && 0 < t.nodeValue.length) { var o = Jt.trim(t.nodeValue).length; if (e.isBlock(t.parentNode) || 0 < o) return; if ( 0 === o && ((a = (i = t).previousSibling && "SPAN" === i.previousSibling.nodeName), (u = i.nextSibling && "SPAN" === i.nextSibling.nodeName), a && u) ) return; } else if ( Po.isElement(t) && (1 === (r = t.childNodes).length && Io(r[0]) && t.parentNode.insertBefore(r[0], t), r.length || yo(ir.fromDom(t))) ) return; e.remove(t); } var i, a, u; return t; } }, Mo = { trimNode: Lo }, Fo = Jt.makeMap, zo = /[&<>\"\u0060\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g, Uo = /[<>&\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g, Vo = /[<>&\"\']/g, Ho = /&#([a-z0-9]+);?|&([a-z0-9]+);/gi, jo = { 128: "\u20ac", 130: "\u201a", 131: "\u0192", 132: "\u201e", 133: "\u2026", 134: "\u2020", 135: "\u2021", 136: "\u02c6", 137: "\u2030", 138: "\u0160", 139: "\u2039", 140: "\u0152", 142: "\u017d", 145: "\u2018", 146: "\u2019", 147: "\u201c", 148: "\u201d", 149: "\u2022", 150: "\u2013", 151: "\u2014", 152: "\u02dc", 153: "\u2122", 154: "\u0161", 155: "\u203a", 156: "\u0153", 158: "\u017e", 159: "\u0178", }; (so = { '"': """, "'": "'", "<": "<", ">": ">", "&": "&", "`": "`", }), (co = { "<": "<", ">": ">", "&": "&", """: '"', "'": "'", }); var qo = function (e, t) { var n, r, o, i = {}; if (e) { for (e = e.split(","), t = t || 10, n = 0; n < e.length; n += 2) (r = String.fromCharCode(parseInt(e[n], t))), so[r] || ((o = "&" + e[n + 1] + ";"), (i[r] = o), (i[o] = r)); return i; } }; uo = qo( "50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro", 32 ); var $o = function (e, t) { return e.replace(t ? zo : Uo, function (e) { return so[e] || e; }); }, Wo = function (e, t) { return e.replace(t ? zo : Uo, function (e) { return 1 < e.length ? "&#" + (1024 * (e.charCodeAt(0) - 55296) + (e.charCodeAt(1) - 56320) + 65536) + ";" : so[e] || "&#" + e.charCodeAt(0) + ";"; }); }, Ko = function (e, t, n) { return ( (n = n || uo), e.replace(t ? zo : Uo, function (e) { return so[e] || n[e] || e; }) ); }, Xo = { encodeRaw: $o, encodeAllRaw: function (e) { return ("" + e).replace(Vo, function (e) { return so[e] || e; }); }, encodeNumeric: Wo, encodeNamed: Ko, getEncodeFunc: function (e, t) { var n = qo(t) || uo, r = Fo(e.replace(/\+/g, ",")); return r.named && r.numeric ? function (e, t) { return e.replace(t ? zo : Uo, function (e) { return so[e] !== undefined ? so[e] : n[e] !== undefined ? n[e] : 1 < e.length ? "&#" + (1024 * (e.charCodeAt(0) - 55296) + (e.charCodeAt(1) - 56320) + 65536) + ";" : "&#" + e.charCodeAt(0) + ";"; }); } : r.named ? t ? function (e, t) { return Ko(e, t, n); } : Ko : r.numeric ? Wo : $o; }, decode: function (e) { return e.replace(Ho, function (e, t) { return t ? 65535 < (t = "x" === t.charAt(0).toLowerCase() ? parseInt(t.substr(1), 16) : parseInt(t, 10)) ? ((t -= 65536), String.fromCharCode(55296 + (t >> 10), 56320 + (1023 & t))) : jo[t] || String.fromCharCode(t) : co[e] || uo[e] || ((n = e), ((r = ir.fromTag("div").dom()).innerHTML = n), r.textContent || r.innerText || n); var n, r; }); }, }, Yo = {}, Go = {}, Jo = Jt.makeMap, Qo = Jt.each, Zo = Jt.extend, ei = Jt.explode, ti = Jt.inArray, ni = function (e, t) { return (e = Jt.trim(e)) ? e.split(t || " ") : []; }, ri = function (e) { var u, t, n, r, o, i, s = {}, a = function (e, t, n) { var r, o, i, a = function (e, t) { var n, r, o = {}; for (n = 0, r = e.length; n < r; n++) o[e[n]] = t || {}; return o; }; for ( t = t || "", "string" == typeof (n = n || []) && (n = ni(n)), r = (e = ni(e)).length; r--; ) (i = { attributes: a((o = ni([u, t].join(" ")))), attributesOrder: o, children: a(n, Go), }), (s[e[r]] = i); }, c = function (e, t) { var n, r, o, i; for (n = (e = ni(e)).length, t = ni(t); n--; ) for (r = s[e[n]], o = 0, i = t.length; o < i; o++) (r.attributes[t[o]] = {}), r.attributesOrder.push(t[o]); }; return Yo[e] ? Yo[e] : ((u = "id accesskey class dir lang style tabindex title role"), (t = "address blockquote div dl fieldset form h1 h2 h3 h4 h5 h6 hr menu ol p pre table ul"), (n = "a abbr b bdo br button cite code del dfn em embed i iframe img input ins kbd label map noscript object q s samp script select small span strong sub sup textarea u var #text #comment"), "html4" !== e && ((u += " contenteditable contextmenu draggable dropzone hidden spellcheck translate"), (t += " article aside details dialog figure main header footer hgroup section nav"), (n += " audio canvas command datalist mark meter output picture progress time wbr video ruby bdi keygen")), "html5-strict" !== e && ((u += " xml:lang"), (n = [n, (i = "acronym applet basefont big font strike tt")].join( " " )), Qo(ni(i), function (e) { a(e, "", n); }), (t = [t, (o = "center dir isindex noframes")].join(" ")), (r = [t, n].join(" ")), Qo(ni(o), function (e) { a(e, "", r); })), (r = r || [t, n].join(" ")), a("html", "manifest", "head body"), a("head", "", "base command link meta noscript script style title"), a("title hr noscript br"), a("base", "href target"), a("link", "href rel media hreflang type sizes hreflang"), a("meta", "name http-equiv content charset"), a("style", "media type scoped"), a("script", "src async defer type charset"), a( "body", "onafterprint onbeforeprint onbeforeunload onblur onerror onfocus onhashchange onload onmessage onoffline ononline onpagehide onpageshow onpopstate onresize onscroll onstorage onunload", r ), a("address dt dd div caption", "", r), a( "h1 h2 h3 h4 h5 h6 pre p abbr code var samp kbd sub sup i b u bdo span legend em strong small s cite dfn", "", n ), a("blockquote", "cite", r), a("ol", "reversed start type", "li"), a("ul", "", "li"), a("li", "value", r), a("dl", "", "dt dd"), a("a", "href target rel media hreflang type", n), a("q", "cite", n), a("ins del", "cite datetime", r), a("img", "src sizes srcset alt usemap ismap width height"), a("iframe", "src name width height", r), a("embed", "src type width height"), a( "object", "data type typemustmatch name usemap form width height", [r, "param"].join(" ") ), a("param", "name value"), a("map", "name", [r, "area"].join(" ")), a("area", "alt coords shape href target rel media hreflang type"), a( "table", "border", "caption colgroup thead tfoot tbody tr" + ("html4" === e ? " col" : "") ), a("colgroup", "span", "col"), a("col", "span"), a("tbody thead tfoot", "", "tr"), a("tr", "", "td th"), a("td", "colspan rowspan headers", r), a("th", "colspan rowspan headers scope abbr", r), a( "form", "accept-charset action autocomplete enctype method name novalidate target", r ), a("fieldset", "disabled form name", [r, "legend"].join(" ")), a("label", "form for", n), a( "input", "accept alt autocomplete checked dirname disabled form formaction formenctype formmethod formnovalidate formtarget height list max maxlength min multiple name pattern readonly required size src step type value width" ), a( "button", "disabled form formaction formenctype formmethod formnovalidate formtarget name type value", "html4" === e ? r : n ), a( "select", "disabled form multiple name required size", "option optgroup" ), a("optgroup", "disabled label", "option"), a("option", "disabled label selected value"), a( "textarea", "cols dirname disabled form maxlength name readonly required rows wrap" ), a("menu", "type label", [r, "li"].join(" ")), a("noscript", "", r), "html4" !== e && (a("wbr"), a("ruby", "", [n, "rt rp"].join(" ")), a("figcaption", "", r), a("mark rt rp summary bdi", "", n), a("canvas", "width height", r), a( "video", "src crossorigin poster preload autoplay mediagroup loop muted controls width height buffered", [r, "track source"].join(" ") ), a( "audio", "src crossorigin preload autoplay mediagroup loop muted controls buffered volume", [r, "track source"].join(" ") ), a("picture", "", "img source"), a("source", "src srcset type media sizes"), a("track", "kind src srclang label default"), a("datalist", "", [n, "option"].join(" ")), a("article section nav aside main header footer", "", r), a("hgroup", "", "h1 h2 h3 h4 h5 h6"), a("figure", "", [r, "figcaption"].join(" ")), a("time", "datetime", n), a("dialog", "open", r), a("command", "type label icon disabled checked radiogroup command"), a("output", "for form name", n), a("progress", "value max", n), a("meter", "value min max low high optimum", n), a("details", "open", [r, "summary"].join(" ")), a("keygen", "autofocus challenge disabled form keytype name")), "html5-strict" !== e && (c("script", "language xml:space"), c("style", "xml:space"), c( "object", "declare classid code codebase codetype archive standby align border hspace vspace" ), c("embed", "align name hspace vspace"), c("param", "valuetype type"), c("a", "charset name rev shape coords"), c("br", "clear"), c( "applet", "codebase archive code object alt name width height align hspace vspace" ), c("img", "name longdesc align border hspace vspace"), c( "iframe", "longdesc frameborder marginwidth marginheight scrolling align" ), c("font basefont", "size color face"), c("input", "usemap align"), c("select", "onchange"), c("textarea"), c("h1 h2 h3 h4 h5 h6 div p legend caption", "align"), c("ul", "type compact"), c("li", "type"), c("ol dl menu dir", "compact"), c("pre", "width xml:space"), c("hr", "align noshade size width"), c("isindex", "prompt"), c( "table", "summary width frame rules cellspacing cellpadding align bgcolor" ), c("col", "width align char charoff valign"), c("colgroup", "width align char charoff valign"), c("thead", "align char charoff valign"), c("tr", "align char charoff valign bgcolor"), c( "th", "axis align char charoff valign nowrap bgcolor width height" ), c("form", "accept"), c( "td", "abbr axis scope align char charoff valign nowrap bgcolor width height" ), c("tfoot", "align char charoff valign"), c("tbody", "align char charoff valign"), c("area", "nohref"), c("body", "background bgcolor text link vlink alink")), "html4" !== e && (c("input button select textarea", "autofocus"), c("input textarea", "placeholder"), c("a", "download"), c("link script img", "crossorigin"), c("iframe", "sandbox seamless allowfullscreen")), Qo(ni("a form meter progress dfn"), function (e) { s[e] && delete s[e].children[e]; }), delete s.caption.children.table, delete s.script, (Yo[e] = s)); }, oi = function (e, n) { var r; return ( e && ((r = {}), "string" == typeof e && (e = { "*": e }), Qo(e, function (e, t) { r[t] = r[t.toUpperCase()] = "map" === n ? Jo(e, /[, ]/) : ei(e, /[, ]/); })), r ); }; function ii(i) { var e, t, n, r, o, a, u, s, c, l, f, d, m, N = {}, g = {}, E = [], p = {}, h = {}, v = function (e, t, n) { var r = i[e]; return ( r ? (r = Jo(r, /[, ]/, Jo(r.toUpperCase(), /[, ]/))) : (r = Yo[e]) || ((r = Jo(t, " ", Jo(t.toUpperCase(), " "))), (r = Zo(r, n)), (Yo[e] = r)), r ); }; (n = ri((i = i || {}).schema)), !1 === i.verify_html && (i.valid_elements = "*[*]"), (e = oi(i.valid_styles)), (t = oi(i.invalid_styles, "map")), (s = oi(i.valid_classes, "map")), (r = v( "whitespace_elements", "pre script noscript style textarea video audio iframe object code" )), (o = v( "self_closing_elements", "colgroup dd dt li option p td tfoot th thead tr" )), (a = v( "short_ended_elements", "area base basefont br col frame hr img input isindex link meta param embed source wbr track" )), (u = v( "boolean_attributes", "checked compact declare defer disabled ismap multiple nohref noresize noshade nowrap readonly selected autoplay loop controls" )), (l = v( "non_empty_elements", "td th iframe video audio object script pre code", a )), (f = v("move_caret_before_on_enter_elements", "table", l)), (d = v( "text_block_elements", "h1 h2 h3 h4 h5 h6 p div address pre form blockquote center dir fieldset header footer article section hgroup aside main nav figure" )), (c = v( "block_elements", "hr table tbody thead tfoot th tr td li ol ul caption dl dt dd noscript menu isindex option datalist select optgroup figcaption details summary", d )), (m = v( "text_inline_elements", "span strong b em i font strike u var cite dfn code mark q sup sub samp" )), Qo( ( i.special || "script noscript noframes noembed title style textarea xmp" ).split(" "), function (e) { h[e] = new RegExp("]*>", "gi"); } ); var S = function (e) { return new RegExp("^" + e.replace(/([?+*])/g, ".$1") + "$"); }, b = function (e) { var t, n, r, o, i, a, u, s, c, l, f, d, m, g, p, h, v, b, y, C = /^([#+\-])?([^\[!\/]+)(?:\/([^\[!]+))?(?:(!?)\[([^\]]+)\])?$/, x = /^([!\-])?(\w+[\\:]:\w+|[^=:<]+)?(?:([=:<])(.*))?$/, w = /[*?+]/; if (e) for ( e = ni(e, ","), N["@"] && ((h = N["@"].attributes), (v = N["@"].attributesOrder)), t = 0, n = e.length; t < n; t++ ) if ((i = C.exec(e[t]))) { if ( ((g = i[1]), (c = i[2]), (p = i[3]), (s = i[5]), (a = { attributes: (d = {}), attributesOrder: (m = []) }), "#" === g && (a.paddEmpty = !0), "-" === g && (a.removeEmpty = !0), "!" === i[4] && (a.removeEmptyAttrs = !0), h) ) { for (b in h) d[b] = h[b]; m.push.apply(m, v); } if (s) for (r = 0, o = (s = ni(s, "|")).length; r < o; r++) if ((i = x.exec(s[r]))) { if ( ((u = {}), (f = i[1]), (l = i[2].replace(/[\\:]:/g, ":")), (g = i[3]), (y = i[4]), "!" === f && ((a.attributesRequired = a.attributesRequired || []), a.attributesRequired.push(l), (u.required = !0)), "-" === f) ) { delete d[l], m.splice(ti(m, l), 1); continue; } g && ("=" === g && ((a.attributesDefault = a.attributesDefault || []), a.attributesDefault.push({ name: l, value: y }), (u.defaultValue = y)), ":" === g && ((a.attributesForced = a.attributesForced || []), a.attributesForced.push({ name: l, value: y }), (u.forcedValue = y)), "<" === g && (u.validValues = Jo(y, "?"))), w.test(l) ? ((a.attributePatterns = a.attributePatterns || []), (u.pattern = S(l)), a.attributePatterns.push(u)) : (d[l] || m.push(l), (d[l] = u)); } h || "@" !== c || ((h = d), (v = m)), p && ((a.outputName = c), (N[p] = a)), w.test(c) ? ((a.pattern = S(c)), E.push(a)) : (N[c] = a); } }, y = function (e) { (N = {}), (E = []), b(e), Qo(n, function (e, t) { g[t] = e.children; }); }, C = function (e) { var a = /^(~)?(.+)$/; e && ((Yo.text_block_elements = Yo.block_elements = null), Qo(ni(e, ","), function (e) { var t = a.exec(e), n = "~" === t[1], r = n ? "span" : "div", o = t[2]; if ( ((g[o] = g[r]), (p[o] = r), n || ((c[o.toUpperCase()] = {}), (c[o] = {})), !N[o]) ) { var i = N[r]; delete (i = Zo({}, i)).removeEmptyAttrs, delete i.removeEmpty, (N[o] = i); } Qo(g, function (e, t) { e[r] && ((g[t] = e = Zo({}, g[t])), (e[o] = e[r])); }); })); }, x = function (e) { var o = /^([+\-]?)(\w+)\[([^\]]+)\]$/; (Yo[i.schema] = null), e && Qo(ni(e, ","), function (e) { var t, n, r = o.exec(e); r && ((n = r[1]), (t = n ? g[r[2]] : (g[r[2]] = { "#comment": {} })), (t = g[r[2]]), Qo(ni(r[3], "|"), function (e) { "-" === n ? delete t[e] : (t[e] = {}); })); }); }, w = function (e) { var t, n = N[e]; if (n) return n; for (t = E.length; t--; ) if ((n = E[t]).pattern.test(e)) return n; }; return ( i.valid_elements ? y(i.valid_elements) : (Qo(n, function (e, t) { (N[t] = { attributes: e.attributes, attributesOrder: e.attributesOrder, }), (g[t] = e.children); }), "html5" !== i.schema && Qo(ni("strong/b em/i"), function (e) { (e = ni(e, "/")), (N[e[1]].outputName = e[0]); }), Qo( ni( "ol ul sub sup blockquote span font a table tbody tr strong em b i" ), function (e) { N[e] && (N[e].removeEmpty = !0); } ), Qo( ni("p h1 h2 h3 h4 h5 h6 th td pre div address caption li"), function (e) { N[e].paddEmpty = !0; } ), Qo(ni("span"), function (e) { N[e].removeEmptyAttrs = !0; })), C(i.custom_elements), x(i.valid_children), b(i.extended_valid_elements), x("+ol[ul|ol],+ul[ul|ol]"), Qo( { dd: "dl", dt: "dl", li: "ul ol", td: "tr", th: "tr", tr: "tbody thead tfoot", tbody: "table", thead: "table", tfoot: "table", legend: "fieldset", area: "map", param: "video audio object", }, function (e, t) { N[t] && (N[t].parentsRequired = ni(e)); } ), i.invalid_elements && Qo(ei(i.invalid_elements), function (e) { N[e] && delete N[e]; }), w("span") || b("span[!data-mce-type|*]"), { children: g, elements: N, getValidStyles: function () { return e; }, getValidClasses: function () { return s; }, getBlockElements: function () { return c; }, getInvalidStyles: function () { return t; }, getShortEndedElements: function () { return a; }, getTextBlockElements: function () { return d; }, getTextInlineElements: function () { return m; }, getBoolAttrs: function () { return u; }, getElementRule: w, getSelfClosingElements: function () { return o; }, getNonEmptyElements: function () { return l; }, getMoveCaretBeforeOnEnterElements: function () { return f; }, getWhiteSpaceElements: function () { return r; }, getSpecialElements: function () { return h; }, isValidChild: function (e, t) { var n = g[e.toLowerCase()]; return !(!n || !n[t.toLowerCase()]); }, isValid: function (e, t) { var n, r, o = w(e); if (o) { if (!t) return !0; if (o.attributes[t]) return !0; if ((n = o.attributePatterns)) for (r = n.length; r--; ) if (n[r].pattern.test(e)) return !0; } return !1; }, getCustomElements: function () { return p; }, addValidElements: b, setValidElements: y, addCustomElements: C, addValidChildren: x, } ); } var ai = function (e, t, n, r) { var o = function (e) { return 1 < (e = parseInt(e, 10).toString(16)).length ? e : "0" + e; }; return "#" + o(t) + o(n) + o(r); }; function ui(y, e) { var C, t, c, l, x = /rgb\s*\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*\)/gi, w = /(?:url(?:(?:\(\s*\"([^\"]+)\"\s*\))|(?:\(\s*\'([^\']+)\'\s*\))|(?:\(\s*([^)\s]+)\s*\))))|(?:\'([^\']+)\')|(?:\"([^\"]+)\")/gi, N = /\s*([^:]+):\s*([^;]+);?/g, E = /\s+$/, S = {}, k = "\ufeff"; for ( y = y || {}, e && ((c = e.getValidStyles()), (l = e.getInvalidStyles())), t = ("\\\" \\' \\; \\: ; : " + k).split(" "), C = 0; C < t.length; C++ ) (S[t[C]] = k + C), (S[k + C] = t[C]); return { toHex: function (e) { return e.replace(x, ai); }, parse: function (e) { var t, n, r, o, i, a, u, s, c = {}, l = y.url_converter, f = y.url_converter_scope || this, d = function (e, t, n) { var r, o, i, a; if ( (r = c[e + "-top" + t]) && (o = c[e + "-right" + t]) && (i = c[e + "-bottom" + t]) && (a = c[e + "-left" + t]) ) { var u = [r, o, i, a]; for (C = u.length - 1; C-- && u[C] === u[C + 1]; ); (-1 < C && n) || ((c[e + t] = -1 === C ? u[0] : u.join(" ")), delete c[e + "-top" + t], delete c[e + "-right" + t], delete c[e + "-bottom" + t], delete c[e + "-left" + t]); } }, m = function (e) { var t, n = c[e]; if (n) { for (t = (n = n.split(" ")).length; t--; ) if (n[t] !== n[0]) return !1; return (c[e] = n[0]), !0; } }, g = function (e) { return (o = !0), S[e]; }, p = function (e, t) { return ( o && (e = e.replace(/\uFEFF[0-9]/g, function (e) { return S[e]; })), t || (e = e.replace(/\\([\'\";:])/g, "$1")), e ); }, h = function (e) { return String.fromCharCode(parseInt(e.slice(1), 16)); }, v = function (e) { return e.replace(/\\[0-9a-f]+/gi, h); }, b = function (e, t, n, r, o, i) { if ((o = o || i)) return "'" + (o = p(o)).replace(/\'/g, "\\'") + "'"; if (((t = p(t || n || r)), !y.allow_script_urls)) { var a = t.replace(/[\s\r\n]+/g, ""); if (/(java|vb)script:/i.test(a)) return ""; if (!y.allow_svg_data_urls && /^data:image\/svg/i.test(a)) return ""; } return ( l && (t = l.call(f, t, "style")), "url('" + t.replace(/\'/g, "\\'") + "')" ); }; if (e) { for ( e = (e = e.replace(/[\u0000-\u001F]/g, "")) .replace(/\\[\"\';:\uFEFF]/g, g) .replace(/\"[^\"]+\"|\'[^\']+\'/g, function (e) { return e.replace(/[;:]/g, g); }); (t = N.exec(e)); ) if ( ((N.lastIndex = t.index + t[0].length), (n = t[1].replace(E, "").toLowerCase()), (r = t[2].replace(E, "")), n && r) ) { if ( ((n = v(n)), (r = v(r)), -1 !== n.indexOf(k) || -1 !== n.indexOf('"')) ) continue; if ( !y.allow_script_urls && ("behavior" === n || /expression\s*\(|\/\*|\*\//.test(r)) ) continue; "font-weight" === n && "700" === r ? (r = "bold") : ("color" !== n && "background-color" !== n) || (r = r.toLowerCase()), (r = (r = r.replace(x, ai)).replace(w, b)), (c[n] = o ? p(r, !0) : r); } d("border", "", !0), d("border", "-width"), d("border", "-color"), d("border", "-style"), d("padding", ""), d("margin", ""), (i = "border"), (u = "border-style"), (s = "border-color"), m((a = "border-width")) && m(u) && m(s) && ((c[i] = c[a] + " " + c[u] + " " + c[s]), delete c[a], delete c[u], delete c[s]), "medium none" === c.border && delete c.border, "none" === c["border-image"] && delete c["border-image"]; } return c; }, serialize: function (i, e) { var t, n, r, o, a, u = "", s = function (e) { var t, n, r, o; if ((t = c[e])) for (n = 0, r = t.length; n < r; n++) (e = t[n]), (o = i[e]) && (u += (0 < u.length ? " " : "") + e + ": " + o + ";"); }; if (e && c) s("*"), s(e); else for (t in i) !(n = i[t]) || (l && ((r = t), (o = e), (a = void 0), ((a = l["*"]) && a[r]) || ((a = l[o]) && a[r]))) || (u += (0 < u.length ? " " : "") + t + ": " + n + ";"); return u; }, }; } var si, ci = Jt.each, li = Jt.grep, fi = ge.ie, di = /^([a-z0-9],?)+$/i, mi = /^[ \t\r\n]*$/, gi = function (n, r, o) { var e = {}, i = r.keep_values, t = { set: function (e, t, n) { r.url_converter && (t = r.url_converter.call( r.url_converter_scope || o(), t, n, e[0] )), e.attr("data-mce-" + n, t).attr(n, t); }, get: function (e, t) { return e.attr("data-mce-" + t) || e.attr(t); }, }; return ( (e = { style: { set: function (e, t) { null === t || "object" != typeof t ? (i && e.attr("data-mce-style", t), e.attr("style", t)) : e.css(t); }, get: function (e) { var t = e.attr("data-mce-style") || e.attr("style"); return (t = n.serialize(n.parse(t), e[0].nodeName)); }, }, }), i && (e.href = e.src = t), e ); }, pi = function (e, t) { var n = t.attr("style"), r = e.serialize(e.parse(n), t[0].nodeName); r || (r = null), t.attr("data-mce-style", r); }, hi = function (e, t) { var n, r, o = 0; if (e) for (n = e.nodeType, e = e.previousSibling; e; e = e.previousSibling) (r = e.nodeType), (!t || 3 !== r || (r !== n && e.nodeValue.length)) && (o++, (n = r)); return o; }; function vi(a, u) { var s, c = this; void 0 === u && (u = {}); var r = {}, i = H.window, o = {}, t = 0, e = (function (m, g) { void 0 === g && (g = {}); var p, h = 0, v = {}; p = g.maxLoadTime || 5e3; var b = function (e) { m.getElementsByTagName("head")[0].appendChild(e); }, n = function (e, t, n) { var o, r, i, a, u = function () { for (var e = a.passed, t = e.length; t--; ) e[t](); (a.status = 2), (a.passed = []), (a.failed = []); }, s = function () { for (var e = a.failed, t = e.length; t--; ) e[t](); (a.status = 3), (a.passed = []), (a.failed = []); }, c = function (e, t) { e() || (new Date().getTime() - i < p ? ye.setTimeout(t) : s()); }, l = function () { c(function () { for (var e, t, n = m.styleSheets, r = n.length; r--; ) if ( (t = (e = n[r]).ownerNode ? e.ownerNode : e.owningElement) && t.id === o.id ) return u(), !0; }, l); }, f = function () { c(function () { try { var e = r.sheet.cssRules; return u(), !!e; } catch (t) {} }, f); }; if ( ((e = Jt._addCacheSuffix(e)), v[e] ? (a = v[e]) : ((a = { passed: [], failed: [] }), (v[e] = a)), t && a.passed.push(t), n && a.failed.push(n), 1 !== a.status) ) if (2 !== a.status) if (3 !== a.status) { if ( ((a.status = 1), ((o = m.createElement("link")).rel = "stylesheet"), (o.type = "text/css"), (o.id = "u" + h++), (o.async = !1), (o.defer = !1), (i = new Date().getTime()), g.contentCssCors && (o.crossOrigin = "anonymous"), "onload" in o && !( (d = H.navigator.userAgent.match(/WebKit\/(\d*)/)) && parseInt(d[1], 10) < 536 )) ) (o.onload = l), (o.onerror = s); else { if (0 < H.navigator.userAgent.indexOf("Firefox")) return ( ((r = m.createElement("style")).textContent = '@import "' + e + '"'), f(), void b(r) ); l(); } var d; b(o), (o.href = e); } else s(); else u(); }, t = function (t) { return eo.nu(function (e) { n(t, j(e, q(io.value(t))), j(e, q(io.error(t)))); }); }, o = function (e) { return e.fold($, $); }; return { load: n, loadAll: function (e, n, r) { no(W(e, t)).get(function (e) { var t = K(e, function (e) { return e.isValue(); }); 0 < t.fail.length ? r(t.fail.map(o)) : n(t.pass.map(o)); }); }, }; })(a, { contentCssCors: u.contentCssCors }), l = [], f = u.schema ? u.schema : ii({}), d = ui( { url_converter: u.url_converter, url_converter_scope: u.url_converter_scope, }, u.schema ), m = u.ownEvents ? new Ae(u.proxy) : Ae.Event, n = f.getBlockElements(), g = vn.overrideDefaults(function () { return { context: a, element: V.getRoot() }; }), p = function (e) { if (e && a && "string" == typeof e) { var t = a.getElementById(e); return t && t.id !== e ? a.getElementsByName(e)[1] : t; } return e; }, h = function (e) { return "string" == typeof e && (e = p(e)), g(e); }, v = function (e, t, n) { var r, o, i = h(e); return ( i.length && (o = (r = s[t]) && r.get ? r.get(i, t) : i.attr(t)), void 0 === o && (o = n || ""), o ); }, b = function (e) { var t = p(e); return t ? t.attributes : []; }, y = function (e, t, n) { var r, o; "" === n && (n = null); var i = h(e); (r = i.attr(t)), i.length && ((o = s[t]) && o.set ? o.set(i, n, t) : i.attr(t, n), r !== n && u.onSetAttrib && u.onSetAttrib({ attrElm: i, attrName: t, attrValue: n })); }, C = function () { return u.root_element || a.body; }, x = function (e, t) { return Gr.getPos(a.body, p(e), t); }, w = function (e, t, n) { var r = h(e); return n ? r.css(t) : ("float" === (t = t.replace(/-(\D)/g, function (e, t) { return t.toUpperCase(); })) && (t = ge.ie && ge.ie < 12 ? "styleFloat" : "cssFloat"), r[0] && r[0].style ? r[0].style[t] : undefined); }, N = function (e) { var t, n; return ( (e = p(e)), (t = w(e, "width")), (n = w(e, "height")), -1 === t.indexOf("px") && (t = 0), -1 === n.indexOf("px") && (n = 0), { w: parseInt(t, 10) || e.offsetWidth || e.clientWidth, h: parseInt(n, 10) || e.offsetHeight || e.clientHeight, } ); }, E = function (e, t) { var n; if (!e) return !1; if (!Array.isArray(e)) { if ("*" === t) return 1 === e.nodeType; if (di.test(t)) { var r = t.toLowerCase().split(/,/), o = e.nodeName.toLowerCase(); for (n = r.length - 1; 0 <= n; n--) if (r[n] === o) return !0; return !1; } if (e.nodeType && 1 !== e.nodeType) return !1; } var i = Array.isArray(e) ? e : [e]; return 0 < At(t, i[0].ownerDocument || i[0], null, i).length; }, S = function (e, t, n, r) { var o, i = [], a = p(e); for ( r = r === undefined, n = n || ("BODY" !== C().nodeName ? C().parentNode : null), Jt.is(t, "string") && (t = "*" === (o = t) ? function (e) { return 1 === e.nodeType; } : function (e) { return E(e, o); }); a && a !== n && a.nodeType && 9 !== a.nodeType; ) { if (!t || ("function" == typeof t && t(a))) { if (!r) return [a]; i.push(a); } a = a.parentNode; } return r ? i : null; }, k = function (e, t, n) { var r = t; if (e) for ( "string" == typeof t && (r = function (e) { return E(e, t); }), e = e[n]; e; e = e[n] ) if ("function" == typeof r && r(e)) return e; return null; }, T = function (e, n, r) { var o, t = "string" == typeof e ? p(e) : e; if (!t) return !1; if (Jt.isArray(t) && (t.length || 0 === t.length)) return ( (o = []), ci(t, function (e, t) { e && ("string" == typeof e && (e = p(e)), o.push(n.call(r, e, t))); }), o ); var i = r || c; return n.call(i, t); }, A = function (e, t) { h(e).each(function (e, n) { ci(t, function (e, t) { y(n, t, e); }); }); }, R = function (e, r) { var t = h(e); fi ? t.each(function (e, t) { if (!1 !== t.canHaveHTML) { for (; t.firstChild; ) t.removeChild(t.firstChild); try { (t.innerHTML = "
" + r), t.removeChild(t.firstChild); } catch (n) { vn("
") .html("
" + r) .contents() .slice(1) .appendTo(t); } return r; } }) : t.html(r); }, _ = function (e, n, r, o, i) { return T(e, function (e) { var t = "string" == typeof n ? a.createElement(n) : n; return ( A(t, r), o && ("string" != typeof o && o.nodeType ? t.appendChild(o) : "string" == typeof o && R(t, o)), i ? t : e.appendChild(t) ); }); }, D = function (e, t, n) { return _(a.createElement(e), e, t, n, !0); }, B = Xo.decode, O = Xo.encodeAllRaw, P = function (e, t) { var n = h(e); return ( t ? n .each(function () { for (var e; (e = this.firstChild); ) 3 === e.nodeType && 0 === e.data.length ? this.removeChild(e) : this.parentNode.insertBefore(e, this); }) .remove() : n.remove(), 1 < n.length ? n.toArray() : n[0] ); }, I = function (e, t, n) { h(e) .toggleClass(t, n) .each(function () { "" === this.className && vn(this).attr("class", null); }); }, L = function (t, e, n) { return T(e, function (e) { return ( Jt.is(e, "array") && (t = t.cloneNode(!0)), n && ci(li(e.childNodes), function (e) { t.appendChild(e); }), e.parentNode.replaceChild(t, e) ); }); }, M = function () { return a.createRange(); }, F = function (e, t, n, r) { if (Jt.isArray(e)) { for (var o = e.length; o--; ) e[o] = F(e[o], t, n, r); return e; } return ( !u.collect || (e !== a && e !== i) || l.push([e, t, n, r]), m.bind(e, t, n, r || V) ); }, z = function (e, t, n) { var r; if (Jt.isArray(e)) { for (r = e.length; r--; ) e[r] = z(e[r], t, n); return e; } if (l && (e === a || e === i)) for (r = l.length; r--; ) { var o = l[r]; e !== o[0] || (t && t !== o[1]) || (n && n !== o[2]) || m.unbind(o[0], o[1], o[2]); } return m.unbind(e, t, n); }, U = function (e) { if (e && Po.isElement(e)) { var t = e.getAttribute("data-mce-contenteditable"); return t && "inherit" !== t ? t : "inherit" !== e.contentEditable ? e.contentEditable : null; } return null; }, V = { doc: a, settings: u, win: i, files: o, stdMode: !0, boxModel: !0, styleSheetLoader: e, boundEvents: l, styles: d, schema: f, events: m, isBlock: function (e) { if ("string" == typeof e) return !!n[e]; if (e) { var t = e.nodeType; if (t) return !(1 !== t || !n[e.nodeName]); } return !1; }, $: g, $$: h, root: null, clone: function (t, e) { if (!fi || 1 !== t.nodeType || e) return t.cloneNode(e); if (!e) { var n = a.createElement(t.nodeName); return ( ci(b(t), function (e) { y(n, e.nodeName, v(t, e.nodeName)); }), n ); } return null; }, getRoot: C, getViewPort: function (e) { var t = e || i, n = t.document.documentElement; return { x: t.pageXOffset || n.scrollLeft, y: t.pageYOffset || n.scrollTop, w: t.innerWidth || n.clientWidth, h: t.innerHeight || n.clientHeight, }; }, getRect: function (e) { var t, n; return ( (e = p(e)), (t = x(e)), (n = N(e)), { x: t.x, y: t.y, w: n.w, h: n.h } ); }, getSize: N, getParent: function (e, t, n) { var r = S(e, t, n, !1); return r && 0 < r.length ? r[0] : null; }, getParents: S, get: p, getNext: function (e, t) { return k(e, t, "nextSibling"); }, getPrev: function (e, t) { return k(e, t, "previousSibling"); }, select: function (e, t) { return At(e, p(t) || u.root_element || a, []); }, is: E, add: _, create: D, createHTML: function (e, t, n) { var r, o = ""; for (r in ((o += "<" + e), t)) t.hasOwnProperty(r) && null !== t[r] && "undefined" != typeof t[r] && (o += " " + r + '="' + O(t[r]) + '"'); return void 0 !== n ? o + ">" + n + "" : o + " />"; }, createFragment: function (e) { var t, n = a.createElement("div"), r = a.createDocumentFragment(); for (e && (n.innerHTML = e); (t = n.firstChild); ) r.appendChild(t); return r; }, remove: P, setStyle: function (e, t, n) { var r = h(e).css(t, n); u.update_styles && pi(d, r); }, getStyle: w, setStyles: function (e, t) { var n = h(e).css(t); u.update_styles && pi(d, n); }, removeAllAttribs: function (e) { return T(e, function (e) { var t, n = e.attributes; for (t = n.length - 1; 0 <= t; t--) e.removeAttributeNode(n.item(t)); }); }, setAttrib: y, setAttribs: A, getAttrib: v, getPos: x, parseStyle: function (e) { return d.parse(e); }, serializeStyle: function (e, t) { return d.serialize(e, t); }, addStyle: function (e) { var t, n; if (V !== vi.DOM && a === H.document) { if (r[e]) return; r[e] = !0; } (n = a.getElementById("mceDefaultStyles")) || (((n = a.createElement("style")).id = "mceDefaultStyles"), (n.type = "text/css"), (t = a.getElementsByTagName("head")[0]).firstChild ? t.insertBefore(n, t.firstChild) : t.appendChild(n)), n.styleSheet ? (n.styleSheet.cssText += e) : n.appendChild(a.createTextNode(e)); }, loadCSS: function (e) { var n; V === vi.DOM || a !== H.document ? (e || (e = ""), (n = a.getElementsByTagName("head")[0]), ci(e.split(","), function (e) { var t; (e = Jt._addCacheSuffix(e)), o[e] || ((o[e] = !0), (t = D("link", { rel: "stylesheet", href: e })), n.appendChild(t)); })) : vi.DOM.loadCSS(e); }, addClass: function (e, t) { h(e).addClass(t); }, removeClass: function (e, t) { I(e, t, !1); }, hasClass: function (e, t) { return h(e).hasClass(t); }, toggleClass: I, show: function (e) { h(e).show(); }, hide: function (e) { h(e).hide(); }, isHidden: function (e) { return "none" === h(e).css("display"); }, uniqueId: function (e) { return (e || "mce_") + t++; }, setHTML: R, getOuterHTML: function (e) { var t = "string" == typeof e ? p(e) : e; return Po.isElement(t) ? t.outerHTML : vn("
").append(vn(t).clone()).html(); }, setOuterHTML: function (e, t) { h(e).each(function () { try { if ("outerHTML" in this) return void (this.outerHTML = t); } catch (e) {} P(vn(this).html(t), !0); }); }, decode: B, encode: O, insertAfter: function (e, t) { var r = p(t); return T(e, function (e) { var t, n; return ( (t = r.parentNode), (n = r.nextSibling) ? t.insertBefore(e, n) : t.appendChild(e), e ); }); }, replace: L, rename: function (t, e) { var n; return ( t.nodeName !== e.toUpperCase() && ((n = D(e)), ci(b(t), function (e) { y(n, e.nodeName, v(t, e.nodeName)); }), L(n, t, !0)), n || t ); }, findCommonAncestor: function (e, t) { for (var n, r = e; r; ) { for (n = t; n && r !== n; ) n = n.parentNode; if (r === n) break; r = r.parentNode; } return !r && e.ownerDocument ? e.ownerDocument.documentElement : r; }, toHex: function (e) { return d.toHex(Jt.trim(e)); }, run: T, getAttribs: b, isEmpty: function (e, t) { var n, r, o, i, a, u, s = 0; if ((e = e.firstChild)) { (a = new ao(e, e.parentNode)), (t = t || (f ? f.getNonEmptyElements() : null)), (i = f ? f.getWhiteSpaceElements() : {}); do { if (((o = e.nodeType), Po.isElement(e))) { var c = e.getAttribute("data-mce-bogus"); if (c) { e = a.next("all" === c); continue; } if (((u = e.nodeName.toLowerCase()), t && t[u])) { if ("br" === u) { s++, (e = a.next()); continue; } return !1; } for (n = (r = b(e)).length; n--; ) if ( "name" === (u = r[n].nodeName) || "data-mce-bookmark" === u ) return !1; } if (8 === o) return !1; if (3 === o && !mi.test(e.nodeValue)) return !1; if ( 3 === o && e.parentNode && i[e.parentNode.nodeName] && mi.test(e.nodeValue) ) return !1; e = a.next(); } while (e); } return s <= 1; }, createRng: M, nodeIndex: hi, split: function (e, t, n) { var r, o, i, a = M(); if (e && t) return ( a.setStart(e.parentNode, hi(e)), a.setEnd(t.parentNode, hi(t)), (r = a.extractContents()), (a = M()).setStart(t.parentNode, hi(t) + 1), a.setEnd(e.parentNode, hi(e) + 1), (o = a.extractContents()), (i = e.parentNode).insertBefore(Mo.trimNode(V, r), e), n ? i.insertBefore(n, e) : i.insertBefore(t, e), i.insertBefore(Mo.trimNode(V, o), e), P(e), n || t ); }, bind: F, unbind: z, fire: function (e, t, n) { return m.fire(e, t, n); }, getContentEditable: U, getContentEditableParent: function (e) { for ( var t = C(), n = null; e && e !== t && null === (n = U(e)); e = e.parentNode ); return n; }, destroy: function () { if (l) for (var e = l.length; e--; ) { var t = l[e]; m.unbind(t[0], t[1], t[2]); } At.setDocument && At.setDocument(); }, isChildOf: function (e, t) { for (; e; ) { if (t === e) return !0; e = e.parentNode; } return !1; }, dumpRng: function (e) { return ( "startContainer: " + e.startContainer.nodeName + ", startOffset: " + e.startOffset + ", endContainer: " + e.endContainer.nodeName + ", endOffset: " + e.endOffset ); }, }; return ( (s = gi(d, u, function () { return V; })), V ); } ((si = vi || (vi = {})).DOM = si(H.document)), (si.nodeIndex = hi); var bi = vi, yi = bi.DOM, Ci = Jt.each, xi = Jt.grep, wi = function (e) { return "function" == typeof e; }, Ni = function () { var l = {}, o = [], i = {}, a = [], f = 0; (this.isDone = function (e) { return 2 === l[e]; }), (this.markDone = function (e) { l[e] = 2; }), (this.add = this.load = function (e, t, n, r) { l[e] === undefined && (o.push(e), (l[e] = 0)), t && (i[e] || (i[e] = []), i[e].push({ success: t, failure: r, scope: n || this })); }), (this.remove = function (e) { delete l[e], delete i[e]; }), (this.loadQueue = function (e, t, n) { this.loadScripts(o, e, t, n); }), (this.loadScripts = function (n, e, t, r) { var u, s = [], c = function (t, e) { Ci(i[e], function (e) { wi(e[t]) && e[t].call(e.scope); }), (i[e] = undefined); }; a.push({ success: e, failure: r, scope: t || this }), (u = function () { var e = xi(n); if ( ((n.length = 0), Ci(e, function (e) { var t, n, r, o, i, a; 2 !== l[e] ? 3 !== l[e] ? 1 !== l[e] && ((l[e] = 1), f++, (t = e), (n = function () { (l[e] = 2), f--, c("success", e), u(); }), (r = function () { (l[e] = 3), f--, s.push(e), c("failure", e), u(); }), (i = (a = yi).uniqueId()), ((o = H.document.createElement("script")).id = i), (o.type = "text/javascript"), (o.src = Jt._addCacheSuffix(t)), (o.onload = function () { a.remove(i), o && (o.onreadystatechange = o.onload = o = null), n(); }), (o.onerror = function () { wi(r) ? r() : "undefined" != typeof console && console.log && console.log("Failed to load script: " + t); }), ( H.document.getElementsByTagName("head")[0] || H.document.body ).appendChild(o)) : c("failure", e) : c("success", e); }), !f) ) { var t = a.slice(0); (a.length = 0), Ci(t, function (e) { 0 === s.length ? wi(e.success) && e.success.call(e.scope) : wi(e.failure) && e.failure.call(e.scope, s); }); } })(); }); }; Ni.ScriptLoader = new Ni(); var Ei, Si = Jt.each; function ki() { var r = this, o = [], a = {}, u = {}, i = [], s = function (e) { var t; return u[e] && (t = u[e].dependencies), t || []; }, c = function (e, t) { return "object" == typeof t ? t : "string" == typeof e ? { prefix: "", resource: t, suffix: "" } : { prefix: e.prefix, resource: t, suffix: e.suffix }; }, l = function (e, n, t, r) { var o = s(e); Si(o, function (e) { var t = c(n, e); f(t.resource, t, undefined, undefined); }), t && (r ? t.call(r) : t.call(Ni)); }, f = function (e, t, n, r, o) { if (!a[e]) { var i = "string" == typeof t ? t : t.prefix + t.resource + t.suffix; 0 !== i.indexOf("/") && -1 === i.indexOf("://") && (i = ki.baseURL + "/" + i), (a[e] = i.substring(0, i.lastIndexOf("/"))), u[e] ? l(e, t, n, r) : Ni.ScriptLoader.add( i, function () { return l(e, t, n, r); }, r, o ); } }; return { items: o, urls: a, lookup: u, _listeners: i, get: function (e) { return u[e] ? u[e].instance : undefined; }, dependencies: s, requireLangPack: function (e, t) { var n = ki.language; if (n && !1 !== ki.languageLoad) { if (t) if (-1 !== (t = "," + t + ",").indexOf("," + n.substr(0, 2) + ",")) n = n.substr(0, 2); else if (-1 === t.indexOf("," + n + ",")) return; Ni.ScriptLoader.add(a[e] + "/langs/" + n + ".js"); } }, add: function (t, e, n) { o.push(e), (u[t] = { instance: e, dependencies: n }); var r = K(i, function (e) { return e.name === t; }); return ( (i = r.fail), Si(r.pass, function (e) { e.callback(); }), e ); }, remove: function (e) { delete a[e], delete u[e]; }, createUrl: c, addComponents: function (e, t) { var n = r.urls[e]; Si(t, function (e) { Ni.ScriptLoader.add(n + "/" + e); }); }, load: f, waitFor: function (e, t) { u.hasOwnProperty(e) ? t() : i.push({ name: e, callback: t }); }, }; } ((Ei = ki || (ki = {})).PluginManager = Ei()), (Ei.ThemeManager = Ei()); var Ti = function (t, n) { zr(t).each(function (e) { e.dom().insertBefore(n.dom(), t.dom()); }); }, Ai = function (e, t) { Vr(e).fold( function () { zr(e).each(function (e) { _i(e, t); }); }, function (e) { Ti(e, t); } ); }, Ri = function (t, n) { Wr(t).fold( function () { _i(t, n); }, function (e) { t.dom().insertBefore(n.dom(), e.dom()); } ); }, _i = function (e, t) { e.dom().appendChild(t.dom()); }, Di = function (t, e) { U(e, function (e) { _i(t, e); }); }, Bi = function (e) { (e.dom().textContent = ""), U(qr(e), function (e) { Oi(e); }); }, Oi = function (e) { var t = e.dom(); null !== t.parentNode && t.parentNode.removeChild(t); }, Pi = function (e) { var t, n = qr(e); 0 < n.length && ((t = e), U(n, function (e) { Ti(t, e); })), Oi(e); }, Ii = function (n, r) { var o = null; return { cancel: function () { null !== o && (H.clearTimeout(o), (o = null)); }, throttle: function () { for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; null === o && (o = H.setTimeout(function () { n.apply(null, e), (o = null); }, r)); }, }; }, Li = function (e) { var t = e, n = function () { return t; }; return { get: n, set: function (e) { t = e; }, clone: function () { return Li(n()); }, }; }, Mi = function (e, t) { var n = xr(e, t); return n === undefined || "" === n ? [] : n.split(" "); }, Fi = function (e) { return e.dom().classList !== undefined; }, zi = function (e, t) { return ( (o = t), (i = Mi((n = e), (r = "class")).concat([o])), yr(n, r, i.join(" ")), !0 ); var n, r, o, i; }, Ui = function (e, t) { return ( (o = t), 0 < (i = V(Mi((n = e), (r = "class")), function (e) { return e !== o; })).length ? yr(n, r, i.join(" ")) : wr(n, r), !1 ); var n, r, o, i; }, Vi = function (e, t) { Fi(e) ? e.dom().classList.add(t) : zi(e, t); }, Hi = function (e) { 0 === (Fi(e) ? e.dom().classList : Mi(e, "class")).length && wr(e, "class"); }, ji = function (e, t) { return Fi(e) && e.dom().classList.contains(t); }, qi = function (e, t) { var n = []; return ( U(qr(e), function (e) { t(e) && (n = n.concat([e])), (n = n.concat(qi(e, t))); }), n ); }, $i = function (e, t) { return ( (n = t), (o = (r = e) === undefined ? H.document : r.dom()), Pr(o) ? [] : W(o.querySelectorAll(n), ir.fromDom) ); var n, r, o; }; function Wi(e, t, n, r, o) { return e(n, r) ? A.some(n) : P(o) && o(n) ? A.none() : t(n, r, o); } var Ki, Xi = function (e, t, n) { for (var r = e.dom(), o = P(n) ? n : q(!1); r.parentNode; ) { r = r.parentNode; var i = ir.fromDom(r); if (t(i)) return A.some(i); if (o(i)) break; } return A.none(); }, Yi = function (e, t, n) { return Wi( function (e) { return t(e); }, Xi, e, t, n ); }, Gi = function (e, t, n) { return Xi( e, function (e) { return Or(e, t); }, n ); }, Ji = function (e, t) { return ( (n = t), (o = (r = e) === undefined ? H.document : r.dom()), Pr(o) ? A.none() : A.from(o.querySelector(n)).map(ir.fromDom) ); var n, r, o; }, Qi = function (e, t, n) { return Wi(Or, Gi, e, t, n); }, Zi = q("mce-annotation"), ea = q("data-mce-annotation"), ta = q("data-mce-annotation-uid"), na = function (r, e) { var t = r.selection.getRng(), n = ir.fromDom(t.startContainer), o = ir.fromDom(r.getBody()), i = e.fold( function () { return "." + Zi(); }, function (e) { return "[" + ea() + '="' + e + '"]'; } ), a = $r(n, t.startOffset).getOr(n), u = Qi(a, i, function (e) { return Ir(e, o); }), s = function (e, t) { return ( (n = t), (r = e.dom()) && r.hasAttribute && r.hasAttribute(n) ? A.some(xr(e, t)) : A.none() ); var n, r; }; return u.bind(function (e) { return s(e, "" + ta()).bind(function (n) { return s(e, "" + ea()).map(function (e) { var t = ra(r, n); return { uid: n, name: e, elements: t }; }); }); }); }, ra = function (e, t) { var n = ir.fromDom(e.getBody()); return $i(n, "[" + ta() + '="' + t + '"]'); }, oa = function (i, e) { var n, r, o, a = Li({}), c = function (e, t) { u(e, function (e) { return t(e), e; }); }, u = function (e, t) { var n = a.get(), r = t( n.hasOwnProperty(e) ? n[e] : { listeners: [], previous: Li(A.none()) } ); (n[e] = r), a.set(n); }, t = ((n = function () { var e, t, n, r = a.get(), o = ((e = mr(r)), (n = L.call(e, 0)).sort(t), n); U(o, function (e) { u(e, function (u) { var s = u.previous.get(); return ( na(i, A.some(e)).fold( function () { var t; s.isSome() && (c((t = e), function (e) { U(e.listeners, function (e) { return e(!1, t); }); }), u.previous.set(A.none())); }, function (e) { var t, n, r, o = e.uid, i = e.name, a = e.elements; s.is(o) || ((n = o), (r = a), c((t = i), function (e) { U(e.listeners, function (e) { return e(!0, t, { uid: n, nodes: W(r, function (e) { return e.dom(); }), }); }); }), u.previous.set(A.some(o))); } ), { previous: u.previous, listeners: u.listeners } ); }); }); }), (r = 30), (o = null), { cancel: function () { null !== o && (H.clearTimeout(o), (o = null)); }, throttle: function () { for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; null !== o && H.clearTimeout(o), (o = H.setTimeout(function () { n.apply(null, e), (o = null); }, r)); }, }); return ( i.on("remove", function () { t.cancel(); }), i.on("nodeChange", function () { t.throttle(); }), { addListener: function (e, t) { u(e, function (e) { return { previous: e.previous, listeners: e.listeners.concat([t]), }; }); }, } ); }, ia = function (e, n) { e.on("init", function () { e.serializer.addNodeFilter("span", function (e) { U(e, function (t) { var e; ((e = t), A.from(e.attributes.map[ea()]).bind(n.lookup)).each( function (e) { !1 === e.persistent && t.unwrap(); } ); }); }); }); }, aa = 0, ua = function (e, t) { return ir.fromDom(e.dom().cloneNode(t)); }, sa = function (e) { return ua(e, !1); }, ca = function (e) { return ua(e, !0); }, la = function (e, t) { var n, r, o = Mr(e).dom(), i = ir.fromDom(o.createDocumentFragment()), a = ((n = t), ((r = (o || H.document).createElement("div")).innerHTML = n), qr(ir.fromDom(r))); Di(i, a), Bi(e), _i(e, i); }, fa = "\ufeff", da = function (e) { return e === fa; }, ma = fa, ga = function (e) { return e.replace(new RegExp(fa, "g"), ""); }, pa = Po.isElement, ha = Po.isText, va = function (e) { return ( ha(e) && (e = e.parentNode), pa(e) && e.hasAttribute("data-mce-caret") ); }, ba = function (e) { return ha(e) && da(e.data); }, ya = function (e) { return va(e) || ba(e); }, Ca = function (e) { return e.firstChild !== e.lastChild || !Po.isBr(e.firstChild); }, xa = function (e) { var t = e.container(); return ( !(!e || !Po.isText(t)) && (t.data.charAt(e.offset()) === ma || (e.isAtStart() && ba(t.previousSibling))) ); }, wa = function (e) { var t = e.container(); return ( !(!e || !Po.isText(t)) && (t.data.charAt(e.offset() - 1) === ma || (e.isAtEnd() && ba(t.nextSibling))) ); }, Na = function (e, t, n) { var r, o, i; return ( (r = t.ownerDocument.createElement(e)).setAttribute( "data-mce-caret", n ? "before" : "after" ), r.setAttribute("data-mce-bogus", "all"), r.appendChild( ((i = H.document.createElement("br")).setAttribute( "data-mce-bogus", "1" ), i) ), (o = t.parentNode), n ? o.insertBefore(r, t) : t.nextSibling ? o.insertBefore(r, t.nextSibling) : o.appendChild(r), r ); }, Ea = function (e) { return ha(e) && e.data[0] === ma; }, Sa = function (e) { return ha(e) && e.data[e.data.length - 1] === ma; }, ka = function (e) { return e && e.hasAttribute("data-mce-caret") ? ((t = e.getElementsByTagName("br")), (n = t[t.length - 1]), Po.isBogus(n) && n.parentNode.removeChild(n), e.removeAttribute("data-mce-caret"), e.removeAttribute("data-mce-bogus"), e.removeAttribute("style"), e.removeAttribute("_moz_abspos"), e) : null; var t, n; }, Ta = Po.isContentEditableTrue, Aa = Po.isContentEditableFalse, Ra = Po.isBr, _a = Po.isText, Da = Po.matchNodeNames("script style textarea"), Ba = Po.matchNodeNames("img input textarea hr iframe video audio object"), Oa = Po.matchNodeNames("table"), Pa = ya, Ia = function (e) { return ( !Pa(e) && (_a(e) ? !Da(e.parentNode) : Ba(e) || Ra(e) || Oa(e) || La(e)) ); }, La = function (e) { return ( !1 === ((t = e), Po.isElement(t) && "true" === t.getAttribute("unselectable")) && Aa(e) ); var t; }, Ma = function (e, t) { return ( Ia(e) && (function (e, t) { for (e = e.parentNode; e && e !== t; e = e.parentNode) { if (La(e)) return !1; if (Ta(e)) return !0; } return !0; })(e, t) ); }, Fa = Math.round, za = function (e) { return e ? { left: Fa(e.left), top: Fa(e.top), bottom: Fa(e.bottom), right: Fa(e.right), width: Fa(e.width), height: Fa(e.height), } : { left: 0, top: 0, bottom: 0, right: 0, width: 0, height: 0 }; }, Ua = function (e, t) { return ( (e = za(e)), t || (e.left = e.left + e.width), (e.right = e.left), (e.width = 0), e ); }, Va = function (e, t, n) { return 0 <= e && e <= Math.min(t.height, n.height) / 2; }, Ha = function (e, t) { return ( e.bottom - e.height / 2 < t.top || (!(e.top > t.bottom) && Va(t.top - e.bottom, e, t)) ); }, ja = function (e, t) { return ( e.top > t.bottom || (!(e.bottom < t.top) && Va(t.bottom - e.top, e, t)) ); }, qa = function (e, t, n) { return t >= e.left && t <= e.right && n >= e.top && n <= e.bottom; }, $a = function (e) { var t = e.startContainer, n = e.startOffset; return t.hasChildNodes() && e.endOffset === n + 1 ? t.childNodes[n] : null; }, Wa = function (e, t) { return ( 1 === e.nodeType && e.hasChildNodes() && (t >= e.childNodes.length && (t = e.childNodes.length - 1), (e = e.childNodes[t])), e ); }, Ka = new RegExp( "[\u0300-\u036f\u0483-\u0487\u0488-\u0489\u0591-\u05bd\u05bf\u05c1-\u05c2\u05c4-\u05c5\u05c7\u0610-\u061a\u064b-\u065f\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7-\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u08e3-\u0902\u093a\u093c\u0941-\u0948\u094d\u0951-\u0957\u0962-\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2-\u09e3\u0a01-\u0a02\u0a3c\u0a41-\u0a42\u0a47-\u0a48\u0a4b-\u0a4d\u0a51\u0a70-\u0a71\u0a75\u0a81-\u0a82\u0abc\u0ac1-\u0ac5\u0ac7-\u0ac8\u0acd\u0ae2-\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62-\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c00\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55-\u0c56\u0c62-\u0c63\u0c81\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc-\u0ccd\u0cd5-\u0cd6\u0ce2-\u0ce3\u0d01\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62-\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb-\u0ebc\u0ec8-\u0ecd\u0f18-\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86-\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039-\u103a\u103d-\u103e\u1058-\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085-\u1086\u108d\u109d\u135d-\u135f\u1712-\u1714\u1732-\u1734\u1752-\u1753\u1772-\u1773\u17b4-\u17b5\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927-\u1928\u1932\u1939-\u193b\u1a17-\u1a18\u1a1b\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1ab0-\u1abd\u1abe\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80-\u1b81\u1ba2-\u1ba5\u1ba8-\u1ba9\u1bab-\u1bad\u1be6\u1be8-\u1be9\u1bed\u1bef-\u1bf1\u1c2c-\u1c33\u1c36-\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1cf4\u1cf8-\u1cf9\u1dc0-\u1df5\u1dfc-\u1dff\u200c-\u200d\u20d0-\u20dc\u20dd-\u20e0\u20e1\u20e2-\u20e4\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302d\u302e-\u302f\u3099-\u309a\ua66f\ua670-\ua672\ua674-\ua67d\ua69e-\ua69f\ua6f0-\ua6f1\ua802\ua806\ua80b\ua825-\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\ua9e5\uaa29-\uaa2e\uaa31-\uaa32\uaa35-\uaa36\uaa43\uaa4c\uaa7c\uaab0\uaab2-\uaab4\uaab7-\uaab8\uaabe-\uaabf\uaac1\uaaec-\uaaed\uaaf6\uabe5\uabe8\uabed\ufb1e\ufe00-\ufe0f\ufe20-\ufe2f\uff9e-\uff9f]" ), Xa = function (e) { return "string" == typeof e && 768 <= e.charCodeAt(0) && Ka.test(e); }, Ya = function (e, t) { for (var n = [], r = 0; r < e.length; r++) { var o = e[r]; if (!o.isSome()) return A.none(); n.push(o.getOrDie()); } return A.some(t.apply(null, n)); }, Ga = [].slice, Ja = function () { for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; var n = Ga.call(arguments); return function (e) { for (var t = 0; t < n.length; t++) if (!n[t](e)) return !1; return !0; }; }, Qa = function () { for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; var n = Ga.call(arguments); return function (e) { for (var t = 0; t < n.length; t++) if (n[t](e)) return !0; return !1; }; }, Za = Po.isElement, eu = Ia, tu = Po.matchStyleValues("display", "block table"), nu = Po.matchStyleValues("float", "left right"), ru = Ja(Za, eu, y(nu)), ou = y(Po.matchStyleValues("white-space", "pre pre-line pre-wrap")), iu = Po.isText, au = Po.isBr, uu = bi.nodeIndex, su = Wa, cu = function (e) { return "createRange" in e ? e.createRange() : bi.DOM.createRng(); }, lu = function (e) { return e && /[\r\n\t ]/.test(e); }, fu = function (e) { return !!e.setStart && !!e.setEnd; }, du = function (e) { var t, n = e.startContainer, r = e.startOffset; return !!( lu(e.toString()) && ou(n.parentNode) && Po.isText(n) && ((t = n.data), lu(t[r - 1]) || lu(t[r + 1])) ); }, mu = function (e) { return 0 === e.left && 0 === e.right && 0 === e.top && 0 === e.bottom; }, gu = function (e) { var t, n, r, o, i, a, u, s; return ( (t = 0 < (n = e.getClientRects()).length ? za(n[0]) : za(e.getBoundingClientRect())), !fu(e) && au(e) && mu(t) ? ((i = (r = e).ownerDocument), (a = cu(i)), (u = i.createTextNode("\xa0")), (s = r.parentNode).insertBefore(u, r), a.setStart(u, 0), a.setEnd(u, 1), (o = za(a.getBoundingClientRect())), s.removeChild(u), o) : mu(t) && fu(e) ? (function (e) { var t = e.startContainer, n = e.endContainer, r = e.startOffset, o = e.endOffset; if (t === n && Po.isText(n) && 0 === r && 1 === o) { var i = e.cloneRange(); return i.setEndAfter(n), gu(i); } return null; })(e) : t ); }, pu = function (e, t) { var n = Ua(e, t); return (n.width = 1), (n.right = n.left + 1), n; }, hu = function (e) { var t, n, r = [], o = function (e) { var t, n; 0 !== e.height && ((0 < r.length && ((t = e), (n = r[r.length - 1]), t.left === n.left && t.top === n.top && t.bottom === n.bottom && t.right === n.right)) || r.push(e)); }, i = function (e, t) { var n = cu(e.ownerDocument); if (t < e.data.length) { if (Xa(e.data[t])) return r; if ( Xa(e.data[t - 1]) && (n.setStart(e, t), n.setEnd(e, t + 1), !du(n)) ) return o(pu(gu(n), !1)), r; } 0 < t && (n.setStart(e, t - 1), n.setEnd(e, t), du(n) || o(pu(gu(n), !1))), t < e.data.length && (n.setStart(e, t), n.setEnd(e, t + 1), du(n) || o(pu(gu(n), !0))); }; if (iu(e.container())) return i(e.container(), e.offset()), r; if (Za(e.container())) if (e.isAtEnd()) (n = su(e.container(), e.offset())), iu(n) && i(n, n.data.length), ru(n) && !au(n) && o(pu(gu(n), !1)); else { if ( ((n = su(e.container(), e.offset())), iu(n) && i(n, 0), ru(n) && e.isAtEnd()) ) return o(pu(gu(n), !1)), r; (t = su(e.container(), e.offset() - 1)), ru(t) && !au(t) && (tu(t) || tu(n) || !ru(n)) && o(pu(gu(t), !1)), ru(n) && o(pu(gu(n), !0)); } return r; }; function vu(t, n, e) { var r = function () { return e || (e = hu(vu(t, n))), e; }; return { container: q(t), offset: q(n), toRange: function () { var e; return (e = cu(t.ownerDocument)).setStart(t, n), e.setEnd(t, n), e; }, getClientRects: r, isVisible: function () { return 0 < r().length; }, isAtStart: function () { return iu(t), 0 === n; }, isAtEnd: function () { return iu(t) ? n >= t.data.length : n >= t.childNodes.length; }, isEqual: function (e) { return e && t === e.container() && n === e.offset(); }, getNode: function (e) { return su(t, e ? n - 1 : n); }, }; } ((Ki = vu || (vu = {})).fromRangeStart = function (e) { return Ki(e.startContainer, e.startOffset); }), (Ki.fromRangeEnd = function (e) { return Ki(e.endContainer, e.endOffset); }), (Ki.after = function (e) { return Ki(e.parentNode, uu(e) + 1); }), (Ki.before = function (e) { return Ki(e.parentNode, uu(e)); }), (Ki.isAbove = function (e, t) { return Ya([ne(t.getClientRects()), re(e.getClientRects())], Ha).getOr(!1); }), (Ki.isBelow = function (e, t) { return Ya([re(t.getClientRects()), ne(e.getClientRects())], ja).getOr(!1); }), (Ki.isAtStart = function (e) { return !!e && e.isAtStart(); }), (Ki.isAtEnd = function (e) { return !!e && e.isAtEnd(); }), (Ki.isTextPosition = function (e) { return !!e && Po.isText(e.container()); }), (Ki.isElementPosition = function (e) { return !1 === Ki.isTextPosition(e); }); var bu, yu, Cu = vu, xu = Po.isText, wu = Po.isBogus, Nu = bi.nodeIndex, Eu = function (e) { var t = e.parentNode; return wu(t) ? Eu(t) : t; }, Su = function (e) { return e ? Wt.reduce( e.childNodes, function (e, t) { return ( wu(t) && "BR" !== t.nodeName ? (e = e.concat(Su(t))) : e.push(t), e ); }, [] ) : []; }, ku = function (t) { return function (e) { return t === e; }; }, Tu = function (e) { var t, r, n, o; return ( (xu(e) ? "text()" : e.nodeName.toLowerCase()) + "[" + ((r = Su(Eu((t = e)))), (n = Wt.findIndex(r, ku(t), t)), (r = r.slice(0, n + 1)), (o = Wt.reduce( r, function (e, t, n) { return xu(t) && xu(r[n - 1]) && e++, e; }, 0 )), (r = Wt.filter(r, Po.matchNodeNames(t.nodeName))), (n = Wt.findIndex(r, ku(t), t)) - o) + "]" ); }, Au = function (e, t) { var n, r, o, i, a, u = []; return ( (n = t.container()), (r = t.offset()), xu(n) ? (o = (function (e, t) { for (; (e = e.previousSibling) && xu(e); ) t += e.data.length; return t; })(n, r)) : (r >= (i = n.childNodes).length ? ((o = "after"), (r = i.length - 1)) : (o = "before"), (n = i[r])), u.push(Tu(n)), (a = (function (e, t, n) { var r = []; for (t = t.parentNode; !(t === e || (n && n(t))); t = t.parentNode) r.push(t); return r; })(e, n)), (a = Wt.filter(a, y(Po.isBogus))), (u = u.concat( Wt.map(a, function (e) { return Tu(e); }) )) .reverse() .join("/") + "," + o ); }, Ru = function (e, t) { var n, r, o; return t ? ((t = (n = t.split(","))[0].split("/")), (o = 1 < n.length ? n[1] : "before"), (r = Wt.reduce( t, function (e, t) { return (t = /([\w\-\(\)]+)\[([0-9]+)\]/.exec(t)) ? ("text()" === t[1] && (t[1] = "#text"), (n = e), (r = t[1]), (o = parseInt(t[2], 10)), (i = Su(n)), (i = Wt.filter(i, function (e, t) { return !xu(e) || !xu(i[t - 1]); })), (i = Wt.filter(i, Po.matchNodeNames(r)))[o]) : null; var n, r, o, i; }, e )) ? xu(r) ? (function (e, t) { for (var n, r = e, o = 0; xu(r); ) { if (((n = r.data.length), o <= t && t <= o + n)) { (e = r), (t -= o); break; } if (!xu(r.nextSibling)) { (e = r), (t = n); break; } (o += n), (r = r.nextSibling); } return ( xu(e) && t > e.data.length && (t = e.data.length), Cu(e, t) ); })(r, parseInt(o, 10)) : ((o = "after" === o ? Nu(r) + 1 : Nu(r)), Cu(r.parentNode, o)) : null) : null; }, _u = function (e, t) { Po.isText(t) && 0 === t.data.length && e.remove(t); }, Du = function (e, t, n) { var r, o, i, a, u, s, c; Po.isDocumentFragment(n) ? ((i = e), (a = t), (u = n), (s = A.from(u.firstChild)), (c = A.from(u.lastChild)), a.insertNode(u), s.each(function (e) { return _u(i, e.previousSibling); }), c.each(function (e) { return _u(i, e.nextSibling); })) : ((r = e), (o = n), t.insertNode(o), _u(r, o.previousSibling), _u(r, o.nextSibling)); }, Bu = Po.isContentEditableFalse, Ou = function (e, t, n, r, o) { var i, a = r[o ? "startContainer" : "endContainer"], u = r[o ? "startOffset" : "endOffset"], s = [], c = 0, l = e.getRoot(); for ( Po.isText(a) ? s.push( n ? (function (e, t, n) { var r, o; for ( o = e(t.data.slice(0, n)).length, r = t.previousSibling; r && Po.isText(r); r = r.previousSibling ) o += e(r.data).length; return o; })(t, a, u) : u ) : (u >= (i = a.childNodes).length && i.length && ((c = 1), (u = Math.max(0, i.length - 1))), s.push(e.nodeIndex(i[u], n) + c)); a && a !== l; a = a.parentNode ) s.push(e.nodeIndex(a, n)); return s; }, Pu = function (e, t, n) { var r = 0; return ( Jt.each(e.select(t), function (e) { if ("all" !== e.getAttribute("data-mce-bogus")) return e !== n && void r++; }), r ); }, Iu = function (e, t) { var n, r, o, i = t ? "start" : "end"; (n = e[i + "Container"]), (r = e[i + "Offset"]), Po.isElement(n) && "TR" === n.nodeName && (n = (o = n.childNodes)[Math.min(t ? r : r - 1, o.length - 1)]) && ((r = t ? 0 : n.childNodes.length), e["set" + (t ? "Start" : "End")](n, r)); }, Lu = function (e) { return Iu(e, !0), Iu(e, !1), e; }, Mu = function (e, t) { var n; if (Po.isElement(e) && ((e = Wa(e, t)), Bu(e))) return e; if (ya(e)) { if ( (Po.isText(e) && va(e) && (e = e.parentNode), (n = e.previousSibling), Bu(n)) ) return n; if (((n = e.nextSibling), Bu(n))) return n; } }, Fu = function (e, t, n) { var r = n.getNode(), o = r ? r.nodeName : null, i = n.getRng(); if (Bu(r) || "IMG" === o) return { name: o, index: Pu(n.dom, o, r) }; var a, u, s, c, l, f, d, m = Mu((a = i).startContainer, a.startOffset) || Mu(a.endContainer, a.endOffset); return m ? { name: (o = m.tagName), index: Pu(n.dom, o, m) } : ((u = e), (c = t), (l = i), (f = (s = n).dom), ((d = {}).start = Ou(f, u, c, l, !0)), s.isCollapsed() || (d.end = Ou(f, u, c, l, !1)), d); }, zu = function (e, t, n) { var r = { "data-mce-type": "bookmark", id: t, style: "overflow:hidden;line-height:0px", }; return n ? e.create("span", r, "") : e.create("span", r); }, Uu = function (e, t) { var n = e.dom, r = e.getRng(), o = n.uniqueId(), i = e.isCollapsed(), a = e.getNode(), u = a.nodeName; if ("IMG" === u) return { name: u, index: Pu(n, u, a) }; var s = Lu(r.cloneRange()); if (!i) { s.collapse(!1); var c = zu(n, o + "_end", t); Du(n, s, c); } (r = Lu(r)).collapse(!0); var l = zu(n, o + "_start", t); return Du(n, r, l), e.moveToBookmark({ id: o, keep: 1 }), { id: o }; }, Vu = { getBookmark: function (e, t, n) { return 2 === t ? Fu(ga, n, e) : 3 === t ? ((o = (r = e).getRng()), { start: Au(r.dom.getRoot(), Cu.fromRangeStart(o)), end: Au(r.dom.getRoot(), Cu.fromRangeEnd(o)), }) : t ? { rng: e.getRng() } : Uu(e, !1); var r, o; }, getUndoBookmark: d(Fu, $, !0), getPersistentBookmark: Uu, }, Hu = "_mce_caret", ju = function (e) { return Po.isElement(e) && e.id === Hu; }, qu = function (e, t) { for (; t && t !== e; ) { if (t.id === Hu) return t; t = t.parentNode; } return null; }, $u = Po.isElement, Wu = Po.isText, Ku = function (e) { var t = e.parentNode; t && t.removeChild(e); }, Xu = function (e, t) { 0 === t.length ? Ku(e) : (e.nodeValue = t); }, Yu = function (e) { var t = ga(e); return { count: e.length - t.length, text: t }; }, Gu = function (e, t) { return Zu(e), t; }, Ju = function (e, t) { var n, r, o, i = t.container(), a = ((n = oe(i.childNodes)), (r = e), (o = M(n, r)), -1 === o ? A.none() : A.some(o)) .map(function (e) { return e < t.offset() ? Cu(i, t.offset() - 1) : t; }) .getOr(t); return Zu(e), a; }, Qu = function (e, t) { return Wu(e) && t.container() === e ? ((r = t), (o = Yu((n = e).data.substr(0, r.offset()))), (i = Yu(n.data.substr(r.offset()))), 0 < (a = o.text + i.text).length ? (Xu(n, a), Cu(n, r.offset() - o.count)) : r) : Gu(e, t); var n, r, o, i, a; }, Zu = function (e) { if ( ($u(e) && ya(e) && (Ca(e) ? e.removeAttribute("data-mce-caret") : Ku(e)), Wu(e)) ) { var t = ga( (function (e) { try { return e.nodeValue; } catch (t) { return ""; } })(e) ); Xu(e, t); } }, es = { removeAndReposition: function (e, t) { return Cu.isTextPosition(t) ? Qu(e, t) : ((n = e), (r = t).container() === n.parentNode ? Ju(n, r) : Gu(n, r)); var n, r; }, remove: Zu, }, ts = rr.detect().browser, ns = Po.isContentEditableFalse, rs = function (e, t, n) { var r, o, i, a, u, s = Ua(t.getBoundingClientRect(), n); return ( "BODY" === e.tagName ? ((r = e.ownerDocument.documentElement), (o = e.scrollLeft || r.scrollLeft), (i = e.scrollTop || r.scrollTop)) : ((u = e.getBoundingClientRect()), (o = e.scrollLeft - u.left), (i = e.scrollTop - u.top)), (s.left += o), (s.right += o), (s.top += i), (s.bottom += i), (s.width = 1), 0 < (a = t.offsetWidth - t.clientWidth) && (n && (a *= -1), (s.left += a), (s.right += a)), s ); }, os = function (a, u, e) { var t, s, c = Li(A.none()), l = function () { !(function (e) { var t, n, r, o, i; for ( t = vn("*[contentEditable=false]", e), o = 0; o < t.length; o++ ) (r = (n = t[o]).previousSibling), Sa(r) && (1 === (i = r.data).length ? r.parentNode.removeChild(r) : r.deleteData(i.length - 1, 1)), (r = n.nextSibling), Ea(r) && (1 === (i = r.data).length ? r.parentNode.removeChild(r) : r.deleteData(0, 1)); })(a), s && (es.remove(s), (s = null)), c.get().each(function (e) { vn(e.caret).remove(), c.set(A.none()); }), clearInterval(t); }, f = function () { t = ye.setInterval(function () { e() ? vn("div.mce-visual-caret", a).toggleClass( "mce-visual-caret-hidden" ) : vn("div.mce-visual-caret", a).addClass( "mce-visual-caret-hidden" ); }, 500); }; return { show: function (t, e) { var n, r, o; if ((l(), (o = e), Po.isElement(o) && /^(TD|TH)$/i.test(o.tagName))) return null; if (!u(e)) return ( (s = (function (e, t) { var n, r, o; if ( ((r = e.ownerDocument.createTextNode(ma)), (o = e.parentNode), t) ) { if (((n = e.previousSibling), ha(n))) { if (ya(n)) return n; if (Sa(n)) return n.splitText(n.data.length - 1); } o.insertBefore(r, e); } else { if (((n = e.nextSibling), ha(n))) { if (ya(n)) return n; if (Ea(n)) return n.splitText(1), n; } e.nextSibling ? o.insertBefore(r, e.nextSibling) : o.appendChild(r); } return r; })(e, t)), (r = e.ownerDocument.createRange()), ns(s.nextSibling) ? (r.setStart(s, 0), r.setEnd(s, 0)) : (r.setStart(s, 1), r.setEnd(s, 1)), r ); (s = Na("p", e, t)), (n = rs(a, e, t)), vn(s).css("top", n.top); var i = vn( '
' ) .css(n) .appendTo(a)[0]; return ( c.set(A.some({ caret: i, element: e, before: t })), c.get().each(function (e) { t && vn(e.caret).addClass("mce-visual-caret-before"); }), f(), (r = e.ownerDocument.createRange()).setStart(s, 0), r.setEnd(s, 0), r ); }, hide: l, getCss: function () { return ".mce-visual-caret {position: absolute;background-color: black;background-color: currentcolor;}.mce-visual-caret-hidden {display: none;}*[data-mce-caret] {position: absolute;left: -1000px;right: auto;top: 0;margin: 0;padding: 0;}"; }, reposition: function () { c.get().each(function (e) { var t = rs(a, e.element, e.before); vn(e.caret).css(t); }); }, destroy: function () { return ye.clearInterval(t); }, }; }, is = function () { return ts.isIE() || ts.isEdge() || ts.isFirefox(); }, as = function (e) { return ns(e) || (Po.isTable(e) && is()); }, us = Po.isContentEditableFalse, ss = Po.matchStyleValues( "display", "block table table-cell table-caption list-item" ), cs = ya, ls = va, fs = Po.isElement, ds = Ia, ms = function (e) { return 0 < e; }, gs = function (e) { return e < 0; }, ps = function (e, t) { for (var n; (n = e(t)); ) if (!ls(n)) return n; return null; }, hs = function (e, t, n, r, o) { var i = new ao(e, r); if (gs(t)) { if ((us(e) || ls(e)) && n((e = ps(i.prev, !0)))) return e; for (; (e = ps(i.prev, o)); ) if (n(e)) return e; } if (ms(t)) { if ((us(e) || ls(e)) && n((e = ps(i.next, !0)))) return e; for (; (e = ps(i.next, o)); ) if (n(e)) return e; } return null; }, vs = function (e, t) { for (; e && e !== t; ) { if (ss(e)) return e; e = e.parentNode; } return null; }, bs = function (e, t, n) { return vs(e.container(), n) === vs(t.container(), n); }, ys = function (e, t) { var n, r; return t ? ((n = t.container()), (r = t.offset()), fs(n) ? n.childNodes[r + e] : null) : null; }, Cs = function (e, t) { var n = t.ownerDocument.createRange(); return ( e ? (n.setStartBefore(t), n.setEndBefore(t)) : (n.setStartAfter(t), n.setEndAfter(t)), n ); }, xs = function (e, t, n) { var r, o, i, a; for (o = e ? "previousSibling" : "nextSibling"; n && n !== t; ) { if (((r = n[o]), cs(r) && (r = r[o]), us(r))) { if (((a = n), vs(r, (i = t)) === vs(a, i))) return r; break; } if (ds(r)) break; n = n.parentNode; } return null; }, ws = d(Cs, !0), Ns = d(Cs, !1), Es = function (e, t, n) { var r, o, i, a, u = d(xs, !0, t), s = d(xs, !1, t); if (((o = n.startContainer), (i = n.startOffset), va(o))) { if ( (fs(o) || (o = o.parentNode), "before" === (a = o.getAttribute("data-mce-caret")) && ((r = o.nextSibling), as(r))) ) return ws(r); if ("after" === a && ((r = o.previousSibling), as(r))) return Ns(r); } if (!n.collapsed) return n; if (Po.isText(o)) { if (cs(o)) { if (1 === e) { if ((r = s(o))) return ws(r); if ((r = u(o))) return Ns(r); } if (-1 === e) { if ((r = u(o))) return Ns(r); if ((r = s(o))) return ws(r); } return n; } if (Sa(o) && i >= o.data.length - 1) return 1 === e && (r = s(o)) ? ws(r) : n; if (Ea(o) && i <= 1) return -1 === e && (r = u(o)) ? Ns(r) : n; if (i === o.data.length) return (r = s(o)) ? ws(r) : n; if (0 === i) return (r = u(o)) ? Ns(r) : n; } return n; }, Ss = function (e, t) { return A.from(ys(e ? 0 : -1, t)).filter(us); }, ks = function (e, t, n) { var r = Es(e, t, n); return -1 === e ? vu.fromRangeStart(r) : vu.fromRangeEnd(r); }, Ts = function (e) { return A.from(e.getNode()).map(ir.fromDom); }, As = function (e, t) { for (; (t = e(t)); ) if (t.isVisible()) return t; return t; }, Rs = function (e, t) { var n = bs(e, t); return !(n || !Po.isBr(e.getNode())) || n; }; ((yu = bu || (bu = {}))[(yu.Backwards = -1)] = "Backwards"), (yu[(yu.Forwards = 1)] = "Forwards"); var _s, Ds, Bs, Os, Ps, Is = Po.isContentEditableFalse, Ls = Po.isText, Ms = Po.isElement, Fs = Po.isBr, zs = Ia, Us = function (e) { return ( Ba(e) || (!!La((t = e)) && !0 !== X( oe(t.getElementsByTagName("*")), function (e, t) { return e || Ta(t); }, !1 )) ); var t; }, Vs = Ma, Hs = function (e, t) { return e.hasChildNodes() && t < e.childNodes.length ? e.childNodes[t] : null; }, js = function (e, t) { if (ms(e)) { if (zs(t.previousSibling) && !Ls(t.previousSibling)) return Cu.before(t); if (Ls(t)) return Cu(t, 0); } if (gs(e)) { if (zs(t.nextSibling) && !Ls(t.nextSibling)) return Cu.after(t); if (Ls(t)) return Cu(t, t.data.length); } return gs(e) ? (Fs(t) ? Cu.before(t) : Cu.after(t)) : Cu.before(t); }, qs = function (e, t, n) { var r, o, i, a, u; if (!Ms(n) || !t) return null; if (t.isEqual(Cu.after(n)) && n.lastChild) { if ( ((u = Cu.after(n.lastChild)), gs(e) && zs(n.lastChild) && Ms(n.lastChild)) ) return Fs(n.lastChild) ? Cu.before(n.lastChild) : u; } else u = t; var s, c, l, f = u.container(), d = u.offset(); if (Ls(f)) { if (gs(e) && 0 < d) return Cu(f, --d); if (ms(e) && d < f.length) return Cu(f, ++d); r = f; } else { if (gs(e) && 0 < d && ((o = Hs(f, d - 1)), zs(o))) return !Us(o) && (i = hs(o, e, Vs, o)) ? Ls(i) ? Cu(i, i.data.length) : Cu.after(i) : Ls(o) ? Cu(o, o.data.length) : Cu.before(o); if (ms(e) && d < f.childNodes.length && ((o = Hs(f, d)), zs(o))) return Fs(o) ? ((s = n), (l = (c = o).nextSibling) && zs(l) ? Ls(l) ? Cu(l, 0) : Cu.before(l) : qs(bu.Forwards, Cu.after(c), s)) : !Us(o) && (i = hs(o, e, Vs, o)) ? Ls(i) ? Cu(i, 0) : Cu.before(i) : Ls(o) ? Cu(o, 0) : Cu.after(o); r = o || u.getNode(); } return ((ms(e) && u.isAtEnd()) || (gs(e) && u.isAtStart())) && ((r = hs(r, e, q(!0), n, !0)), Vs(r, n)) ? js(e, r) : ((o = hs(r, e, Vs, n)), !(a = Wt.last( V( (function (e, t) { for (var n = []; e && e !== t; ) n.push(e), (e = e.parentNode); return n; })(f, n), Is ) )) || (o && a.contains(o)) ? o ? js(e, o) : null : (u = ms(e) ? Cu.after(a) : Cu.before(a))); }, $s = function (t) { return { next: function (e) { return qs(bu.Forwards, e, t); }, prev: function (e) { return qs(bu.Backwards, e, t); }, }; }, Ws = function (e) { return Cu.isTextPosition(e) ? 0 === e.offset() : Ia(e.getNode()); }, Ks = function (e) { if (Cu.isTextPosition(e)) { var t = e.container(); return e.offset() === t.data.length; } return Ia(e.getNode(!0)); }, Xs = function (e, t) { return ( !Cu.isTextPosition(e) && !Cu.isTextPosition(t) && e.getNode() === t.getNode(!0) ); }, Ys = function (e, t, n) { return e ? !Xs(t, n) && ((r = t), !(!Cu.isTextPosition(r) && Po.isBr(r.getNode()))) && Ks(t) && Ws(n) : !Xs(n, t) && Ws(t) && Ks(n); var r; }, Gs = function (e, t, n) { var r = $s(t); return A.from(e ? r.next(n) : r.prev(n)); }, Js = function (t, n, r) { return Gs(t, n, r).bind(function (e) { return bs(r, e, n) && Ys(t, r, e) ? Gs(t, n, e) : A.some(e); }); }, Qs = function (t, n, e, r) { return Js(t, n, e).bind(function (e) { return r(e) ? Qs(t, n, e, r) : A.some(e); }); }, Zs = function (e, t) { var n, r, o, i, a, u = e ? t.firstChild : t.lastChild; return Po.isText(u) ? A.some(Cu(u, e ? 0 : u.data.length)) : u ? Ia(u) ? A.some( e ? Cu.before(u) : ((a = u), Po.isBr(a) ? Cu.before(a) : Cu.after(a)) ) : ((r = t), (o = u), (i = (n = e) ? Cu.before(o) : Cu.after(o)), Gs(n, r, i)) : A.none(); }, ec = d(Gs, !0), tc = d(Gs, !1), nc = { fromPosition: Gs, nextPosition: ec, prevPosition: tc, navigate: Js, navigateIgnore: Qs, positionIn: Zs, firstPositionIn: d(Zs, !0), lastPositionIn: d(Zs, !1), }, rc = function (e, t) { return ( !e.isBlock(t) || t.innerHTML || ge.ie || (t.innerHTML = '
'), t ); }, oc = function (e, t) { return nc.lastPositionIn(e).fold( function () { return !1; }, function (e) { return ( t.setStart(e.container(), e.offset()), t.setEnd(e.container(), e.offset()), !0 ); } ); }, ic = function (e, t, n) { return !( !1 !== t.hasChildNodes() || !qu(e, t) || ((o = n), (i = (r = t).ownerDocument.createTextNode(ma)), r.appendChild(i), o.setStart(i, 0), o.setEnd(i, 0), 0) ); var r, o, i; }, ac = function (e, t, n, r) { var o, i, a, u, s = n[t ? "start" : "end"], c = e.getRoot(); if (s) { for (a = s[0], i = c, o = s.length - 1; 1 <= o; o--) { if (((u = i.childNodes), ic(c, i, r))) return !0; if (s[o] > u.length - 1) return !!ic(c, i, r) || oc(i, r); i = u[s[o]]; } 3 === i.nodeType && (a = Math.min(s[0], i.nodeValue.length)), 1 === i.nodeType && (a = Math.min(s[0], i.childNodes.length)), t ? r.setStart(i, a) : r.setEnd(i, a); } return !0; }, uc = function (e) { return Po.isText(e) && 0 < e.data.length; }, sc = function (e, t, n) { var r, o, i, a, u, s, c = e.get(n.id + "_" + t), l = n.keep; if (c) { if ( ((r = c.parentNode), "start" === t ? l ? c.hasChildNodes() ? ((r = c.firstChild), (o = 1)) : uc(c.nextSibling) ? ((r = c.nextSibling), (o = 0)) : uc(c.previousSibling) ? ((r = c.previousSibling), (o = c.previousSibling.data.length)) : ((r = c.parentNode), (o = e.nodeIndex(c) + 1)) : (o = e.nodeIndex(c)) : l ? c.hasChildNodes() ? ((r = c.firstChild), (o = 1)) : uc(c.previousSibling) ? ((r = c.previousSibling), (o = c.previousSibling.data.length)) : ((r = c.parentNode), (o = e.nodeIndex(c))) : (o = e.nodeIndex(c)), (u = r), (s = o), !l) ) { for ( a = c.previousSibling, i = c.nextSibling, Jt.each(Jt.grep(c.childNodes), function (e) { Po.isText(e) && (e.nodeValue = e.nodeValue.replace(/\uFEFF/g, "")); }); (c = e.get(n.id + "_" + t)); ) e.remove(c, !0); a && i && a.nodeType === i.nodeType && Po.isText(a) && !ge.opera && ((o = a.nodeValue.length), a.appendData(i.nodeValue), e.remove(i), (u = a), (s = o)); } return A.some(Cu(u, s)); } return A.none(); }, cc = function (e, t) { var n, r, o, i, a, u, s, c, l, f, d, m, g, p, h, v, b = e.dom; if (t) { if (((v = t), Jt.isArray(v.start))) return ( (p = t), (h = (g = b).createRng()), ac(g, !0, p, h) && ac(g, !1, p, h) ? A.some(h) : A.none() ); if ("string" == typeof t.start) return A.some( ((f = t), (d = (l = b).createRng()), (m = Ru(l.getRoot(), f.start)), d.setStart(m.container(), m.offset()), (m = Ru(l.getRoot(), f.end)), d.setEnd(m.container(), m.offset()), d) ); if (t.hasOwnProperty("id")) return ( (s = sc((o = b), "start", (i = t))), (c = sc(o, "end", i)), Ya([s, ((a = c), (u = s), a.isSome() ? a : u)], function (e, t) { var n = o.createRng(); return ( n.setStart(rc(o, e.container()), e.offset()), n.setEnd(rc(o, t.container()), t.offset()), n ); }) ); if (t.hasOwnProperty("name")) return ( (n = b), (r = t), A.from(n.select(r.name)[r.index]).map(function (e) { var t = n.createRng(); return t.selectNode(e), t; }) ); if (t.hasOwnProperty("rng")) return A.some(t.rng); } return A.none(); }, lc = function (e, t, n) { return Vu.getBookmark(e, t, n); }, fc = function (t, e) { cc(t, e).each(function (e) { t.setRng(e); }); }, dc = function (e) { return ( Po.isElement(e) && "SPAN" === e.tagName && "bookmark" === e.getAttribute("data-mce-type") ); }, mc = function (e) { return e && /^(IMG)$/.test(e.nodeName); }, gc = function (e) { return e && 3 === e.nodeType && /^([\t \r\n]+|)$/.test(e.nodeValue); }, pc = function (e, t, n) { return ( ("color" !== n && "backgroundColor" !== n) || (t = e.toHex(t)), "fontWeight" === n && 700 === t && (t = "bold"), "fontFamily" === n && (t = t.replace(/[\'\"]/g, "").replace(/,\s+/g, ",")), "" + t ); }, hc = { isInlineBlock: mc, moveStart: function (e, t, n) { var r, o, i, a = n.startOffset, u = n.startContainer; if ( (n.startContainer !== n.endContainer || !mc(n.startContainer.childNodes[n.startOffset])) && 1 === u.nodeType ) for ( a < (i = u.childNodes).length ? (r = new ao((u = i[a]), e.getParent(u, e.isBlock))) : (r = new ao( (u = i[i.length - 1]), e.getParent(u, e.isBlock) )).next(!0), o = r.current(); o; o = r.next() ) if (3 === o.nodeType && !gc(o)) return n.setStart(o, 0), void t.setRng(n); }, getNonWhiteSpaceSibling: function (e, t, n) { if (e) for ( t = t ? "nextSibling" : "previousSibling", e = n ? e : e[t]; e; e = e[t] ) if (1 === e.nodeType || !gc(e)) return e; }, isTextBlock: function (e, t) { return ( t.nodeType && (t = t.nodeName), !!e.schema.getTextBlockElements()[t.toLowerCase()] ); }, isValid: function (e, t, n) { return e.schema.isValidChild(t, n); }, isWhiteSpaceNode: gc, replaceVars: function (e, n) { return ( "string" != typeof e ? (e = e(n)) : n && (e = e.replace(/%(\w+)/g, function (e, t) { return n[t] || e; })), e ); }, isEq: function (e, t) { return ( (t = t || ""), (e = "" + ((e = e || "").nodeName || e)), (t = "" + (t.nodeName || t)), e.toLowerCase() === t.toLowerCase() ); }, normalizeStyleValue: pc, getStyle: function (e, t, n) { return pc(e, e.getStyle(t, n), n); }, getTextDecoration: function (t, e) { var n; return ( t.getParent(e, function (e) { return (n = t.getStyle(e, "text-decoration")) && "none" !== n; }), n ); }, getParents: function (e, t, n) { return e.getParents(t, n, e.getRoot()); }, }, vc = dc, bc = hc.getParents, yc = hc.isWhiteSpaceNode, Cc = hc.isTextBlock, xc = function (e, t) { for ( void 0 === t && (t = 3 === e.nodeType ? e.length : e.childNodes.length); e && e.hasChildNodes(); ) (e = e.childNodes[t]) && (t = 3 === e.nodeType ? e.length : e.childNodes.length); return { node: e, offset: t }; }, wc = function (e, t) { for (var n = t; n; ) { if (1 === n.nodeType && e.getContentEditable(n)) return "false" === e.getContentEditable(n) ? n : t; n = n.parentNode; } return t; }, Nc = function (e, t, n, r) { var o, i, a = n.nodeValue; return ( void 0 === r && (r = e ? a.length : 0), e ? ((o = a.lastIndexOf(" ", r)), -1 !== (o = (i = a.lastIndexOf("\xa0", r)) < o ? o : i) && !t && (o < r || !e) && o <= a.length && o++) : ((o = a.indexOf(" ", r)), (i = a.indexOf("\xa0", r)), (o = -1 !== o && (-1 === i || o < i) ? o : i)), o ); }, Ec = function (e, t, n, r, o, i) { var a, u, s, c; if (3 === n.nodeType) { if (-1 !== (s = Nc(o, i, n, r))) return { container: n, offset: s }; c = n; } for ( a = new ao(n, e.getParent(n, e.isBlock) || t); (u = a[o ? "prev" : "next"]()); ) if (3 !== u.nodeType || vc(u.parentNode)) { if (e.isBlock(u) || hc.isEq(u, "BR")) break; } else if (-1 !== (s = Nc(o, i, (c = u)))) return { container: u, offset: s }; if (c) return { container: c, offset: (r = o ? 0 : c.length) }; }, Sc = function (e, t, n, r, o) { var i, a, u, s; for ( 3 === r.nodeType && 0 === r.nodeValue.length && r[o] && (r = r[o]), i = bc(e, r), a = 0; a < i.length; a++ ) for (u = 0; u < t.length; u++) if ( !("collapsed" in (s = t[u]) && s.collapsed !== n.collapsed) && e.is(i[a], s.selector) ) return i[a]; return r; }, kc = function (t, e, n, r) { var o, i = t.dom, a = i.getRoot(); if ((e[0].wrapper || (o = i.getParent(n, e[0].block, a)), !o)) { var u = i.getParent(n, "LI,TD,TH"); o = i.getParent( 3 === n.nodeType ? n.parentNode : n, function (e) { return e !== a && Cc(t, e); }, u ); } if ((o && e[0].wrapper && (o = bc(i, o, "ul,ol").reverse()[0] || o), !o)) for ( o = n; o[r] && !i.isBlock(o[r]) && ((o = o[r]), !hc.isEq(o, "br")); ); return o || n; }, Tc = function (e, t, n, r, o, i, a) { var u, s, c, l, f, d; if ( ((u = s = a ? n : o), (l = a ? "previousSibling" : "nextSibling"), (f = e.getRoot()), 3 === u.nodeType && !yc(u) && (a ? 0 < r : i < u.nodeValue.length)) ) return u; for (;;) { if (!t[0].block_expand && e.isBlock(s)) return s; for (c = s[l]; c; c = c[l]) if ( !vc(c) && !yc(c) && ("BR" !== (d = c).nodeName || !d.getAttribute("data-mce-bogus") || d.nextSibling) ) return s; if (s === f || s.parentNode === f) { u = s; break; } s = s.parentNode; } return u; }, Ac = function (e, t, n, r) { var o, i = t.startContainer, a = t.startOffset, u = t.endContainer, s = t.endOffset, c = e.dom; return ( 1 === i.nodeType && i.hasChildNodes() && 3 === (i = Wa(i, a)).nodeType && (a = 0), 1 === u.nodeType && u.hasChildNodes() && 3 === (u = Wa(u, t.collapsed ? s : s - 1)).nodeType && (s = u.nodeValue.length), (i = wc(c, i)), (u = wc(c, u)), (vc(i.parentNode) || vc(i)) && ((i = vc(i) ? i : i.parentNode), 3 === (i = t.collapsed ? i.previousSibling || i : i.nextSibling || i) .nodeType && (a = t.collapsed ? i.length : 0)), (vc(u.parentNode) || vc(u)) && ((u = vc(u) ? u : u.parentNode), 3 === (u = t.collapsed ? u.nextSibling || u : u.previousSibling || u) .nodeType && (s = t.collapsed ? 0 : u.length)), t.collapsed && ((o = Ec(c, e.getBody(), i, a, !0, r)) && ((i = o.container), (a = o.offset)), (o = Ec(c, e.getBody(), u, s, !1, r)) && ((u = o.container), (s = o.offset))), n[0].inline && (u = r ? u : (function (e, t) { var n = xc(e, t); if (n.node) { for (; n.node && 0 === n.offset && n.node.previousSibling; ) n = xc(n.node.previousSibling); n.node && 0 < n.offset && 3 === n.node.nodeType && " " === n.node.nodeValue.charAt(n.offset - 1) && 1 < n.offset && (e = n.node).splitText(n.offset - 1); } return e; })(u, s)), (n[0].inline || n[0].block_expand) && ((n[0].inline && 3 === i.nodeType && 0 !== a) || (i = Tc(c, n, i, a, u, s, !0)), (n[0].inline && 3 === u.nodeType && s !== u.nodeValue.length) || (u = Tc(c, n, i, a, u, s, !1))), n[0].selector && !1 !== n[0].expand && !n[0].inline && ((i = Sc(c, n, t, i, "previousSibling")), (u = Sc(c, n, t, u, "nextSibling"))), (n[0].block || n[0].selector) && ((i = kc(e, n, i, "previousSibling")), (u = kc(e, n, u, "nextSibling")), n[0].block && (c.isBlock(i) || (i = Tc(c, n, i, a, u, s, !0)), c.isBlock(u) || (u = Tc(c, n, i, a, u, s, !1)))), 1 === i.nodeType && ((a = c.nodeIndex(i)), (i = i.parentNode)), 1 === u.nodeType && ((s = c.nodeIndex(u) + 1), (u = u.parentNode)), { startContainer: i, startOffset: a, endContainer: u, endOffset: s } ); }, Rc = Jt.each, _c = function (e, t, o) { var n, r, i, a, u, s, c, l = t.startContainer, f = t.startOffset, d = t.endContainer, m = t.endOffset; if ( 0 < (c = e.select("td[data-mce-selected],th[data-mce-selected]")).length ) Rc(c, function (e) { o([e]); }); else { var g, p, h, v = function (e) { var t; return ( 3 === (t = e[0]).nodeType && t === l && f >= t.nodeValue.length && e.splice(0, 1), (t = e[e.length - 1]), 0 === m && 0 < e.length && t === d && 3 === t.nodeType && e.splice(e.length - 1, 1), e ); }, b = function (e, t, n) { for (var r = []; e && e !== n; e = e[t]) r.push(e); return r; }, y = function (e, t) { do { if (e.parentNode === t) return e; e = e.parentNode; } while (e); }, C = function (e, t, n) { var r = n ? "nextSibling" : "previousSibling"; for (u = (a = e).parentNode; a && a !== t; a = u) (u = a.parentNode), (s = b(a === e ? a : a[r], r)).length && (n || s.reverse(), o(v(s))); }; if ( (1 === l.nodeType && l.hasChildNodes() && (l = l.childNodes[f]), 1 === d.nodeType && d.hasChildNodes() && ((p = m), (h = (g = d).childNodes), --p > h.length - 1 ? (p = h.length - 1) : p < 0 && (p = 0), (d = h[p] || g)), l === d) ) return o(v([l])); for (n = e.findCommonAncestor(l, d), a = l; a; a = a.parentNode) { if (a === d) return C(l, n, !0); if (a === n) break; } for (a = d; a; a = a.parentNode) { if (a === l) return C(d, n); if (a === n) break; } (r = y(l, n) || l), (i = y(d, n) || d), C(l, r, !0), (s = b( r === l ? r : r.nextSibling, "nextSibling", i === d ? i.nextSibling : i )).length && o(v(s)), C(d, i); } }, Dc = ((_s = dr), (Ds = "text"), (Bs = function (e) { return _s(e) ? A.from(e.dom().nodeValue) : A.none(); }), (Os = rr.detect().browser), { get: function (e) { if (!_s(e)) throw new Error( "Can only get " + Ds + " value of a " + Ds + " node" ); return Ps(e).getOr(""); }, getOption: (Ps = Os.isIE() && 10 === Os.version.major ? function (e) { try { return Bs(e); } catch (ZN) { return A.none(); } } : Bs), set: function (e, t) { if (!_s(e)) throw new Error( "Can only set raw " + Ds + " value of a " + Ds + " node" ); e.dom().nodeValue = t; }, }), Bc = function (e) { return Dc.get(e); }, Oc = function (r, o, i, a) { return zr(o).fold( function () { return "skipping"; }, function (e) { return "br" === a || (dr((n = o)) && "\ufeff" === Bc(n)) ? "valid" : fr((t = o)) && ji(t, Zi()) ? "existing" : ju(o) ? "caret" : hc.isValid(r, i, a) && hc.isValid(r, cr(e), i) ? "valid" : "invalid-child"; var t, n; } ); }, Pc = function (e, t, n, r) { var o, i, a = t.uid, u = void 0 === a ? ((o = "mce-annotation"), (i = new Date().getTime()), o + "_" + Math.floor(1e9 * Math.random()) + ++aa + String(i)) : a, s = (function (e, t) { var n = {}; for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && t.indexOf(r) < 0 && (n[r] = e[r]); if (null != e && "function" == typeof Object.getOwnPropertySymbols) { var o = 0; for (r = Object.getOwnPropertySymbols(e); o < r.length; o++) t.indexOf(r[o]) < 0 && Object.prototype.propertyIsEnumerable.call(e, r[o]) && (n[r[o]] = e[r[o]]); } return n; })(t, ["uid"]), c = ir.fromTag("span", e); Vi(c, Zi()), yr(c, "" + ta(), u), yr(c, "" + ea(), n); var l, f = r(u, s), d = f.attributes, m = void 0 === d ? {} : d, g = f.classes, p = void 0 === g ? [] : g; return ( Cr(c, m), (l = c), U(p, function (e) { Vi(l, e); }), c ); }, Ic = function (i, e, t, n, r) { var a = [], u = Pc(i.getDoc(), r, t, n), s = Li(A.none()), c = function () { s.set(A.none()); }, l = function (e) { U(e, o); }, o = function (e) { var t, n; switch (Oc(i, e, "span", cr(e))) { case "invalid-child": c(); var r = qr(e); l(r), c(); break; case "valid": var o = s.get().getOrThunk(function () { var e = sa(u); return a.push(e), s.set(A.some(e)), e; }); Ti((t = e), (n = o)), _i(n, t); } }; return ( _c(i.dom, e, function (e) { var t; c(), (t = W(e, ir.fromDom)), l(t); }), a ); }, Lc = function (s, c, l, f) { s.undoManager.transact(function () { var e, t, n, r, o = s.selection.getRng(); if ( (o.collapsed && ((r = Ac( (e = s), (t = o), [{ inline: !0 }], 3 === (n = t).startContainer.nodeType && n.startContainer.nodeValue.length >= n.startOffset && "\xa0" === n.startContainer.nodeValue[n.startOffset] )), t.setStart(r.startContainer, r.startOffset), t.setEnd(r.endContainer, r.endOffset), e.selection.setRng(t)), s.selection.getRng().collapsed) ) { var i = Pc(s.getDoc(), f, c, l.decorate); la(i, "\xa0"), s.selection.getRng().insertNode(i.dom()), s.selection.select(i.dom()); } else { var a = Vu.getPersistentBookmark(s.selection, !1), u = s.selection.getRng(); Ic(s, u, c, l.decorate, f), s.selection.moveToBookmark(a); } }); }; function Mc(s) { var n, r = ((n = {}), { register: function (e, t) { n[e] = { name: e, settings: t }; }, lookup: function (e) { return n.hasOwnProperty(e) ? A.from(n[e]).map(function (e) { return e.settings; }) : A.none(); }, }); ia(s, r); var o = oa(s); return { register: function (e, t) { r.register(e, t); }, annotate: function (t, n) { r.lookup(t).each(function (e) { Lc(s, t, e, n); }); }, annotationChanged: function (e, t) { o.addListener(e, t); }, remove: function (e) { na(s, A.some(e)).each(function (e) { var t = e.elements; U(t, Pi); }); }, getAll: function (e) { var t, n, r, o, i, a, u = ((t = s), (n = e), (r = ir.fromDom(t.getBody())), (o = $i(r, "[" + ea() + '="' + n + '"]')), (i = {}), U(o, function (e) { var t = xr(e, ta()), n = i.hasOwnProperty(t) ? i[t] : []; i[t] = n.concat([e]); }), i); return ( (a = function (e) { return W(e, function (e) { return e.dom(); }); }), hr(u, function (e, t, n) { return { k: t, v: a(e, t, n) }; }) ); }, }; } var Fc = function (e) { return Jt.grep(e.childNodes, function (e) { return "LI" === e.nodeName; }); }, zc = function (e) { return ( e && e.firstChild && e.firstChild === e.lastChild && ("\xa0" === (t = e.firstChild).data || Po.isBr(t)) ); var t; }, Uc = function (e) { return 0 < e.length && (!(t = e[e.length - 1]).firstChild || zc(t)) ? e.slice(0, -1) : e; var t; }, Vc = function (e, t) { var n = e.getParent(t, e.isBlock); return n && "LI" === n.nodeName ? n : null; }, Hc = function (e, t) { var n = Cu.after(e), r = $s(t).prev(n); return r ? r.toRange() : null; }, jc = function (t, e, n) { var r, o, i, a, u = t.parentNode; return ( Jt.each(e, function (e) { u.insertBefore(e, t); }), (r = t), (o = n), (i = Cu.before(r)), (a = $s(o).next(i)) ? a.toRange() : null ); }, qc = function (e, t) { var n, r, o, i, a, u, s = t.firstChild, c = t.lastChild; return ( s && "meta" === s.name && (s = s.next), c && "mce_marker" === c.attr("id") && (c = c.prev), (r = c), (u = (n = e).getNonEmptyElements()), r && (r.isEmpty(u) || ((o = r), n.getBlockElements()[o.name] && (a = o).firstChild && a.firstChild === a.lastChild && ("br" === (i = o.firstChild).name || "\xa0" === i.value))) && (c = c.prev), !(!s || s !== c || ("ul" !== s.name && "ol" !== s.name)) ); }, $c = function (e, o, i, t) { var n, r, a, u, s, c, l, f, d, m, g, p, h, v, b, y, C, x, w, N = ((n = o), (r = t), (c = e.serialize(r)), (l = n.createFragment(c)), (u = (a = l).firstChild), (s = a.lastChild), u && "META" === u.nodeName && u.parentNode.removeChild(u), s && "mce_marker" === s.id && s.parentNode.removeChild(s), a), E = Vc(o, i.startContainer), S = Uc(Fc(N.firstChild)), k = o.getRoot(), T = function (e) { var t = Cu.fromRangeStart(i), n = $s(o.getRoot()), r = 1 === e ? n.prev(t) : n.next(t); return !r || Vc(o, r.getNode()) !== E; }; return T(1) ? jc(E, S, k) : T(2) ? ((f = E), (d = S), (m = k), o.insertAfter(d.reverse(), f), Hc(d[0], m)) : ((p = S), (h = k), (v = g = E), (y = (b = i).cloneRange()), (C = b.cloneRange()), y.setStartBefore(v), C.setEndAfter(v), (x = [y.cloneContents(), C.cloneContents()]), (w = g.parentNode).insertBefore(x[0], g), Jt.each(p, function (e) { w.insertBefore(e, g); }), w.insertBefore(x[1], g), w.removeChild(g), Hc(p[p.length - 1], h)); }, Wc = function (e, t) { return !!Vc(e, t); }, Kc = Jt.each, Xc = function (o) { this.compare = function (e, t) { if (e.nodeName !== t.nodeName) return !1; var n = function (n) { var r = {}; return ( Kc(o.getAttribs(n), function (e) { var t = e.nodeName.toLowerCase(); 0 !== t.indexOf("_") && "style" !== t && 0 !== t.indexOf("data-") && (r[t] = o.getAttrib(n, t)); }), r ); }, r = function (e, t) { var n, r; for (r in e) if (e.hasOwnProperty(r)) { if (void 0 === (n = t[r])) return !1; if (e[r] !== n) return !1; delete t[r]; } for (r in t) if (t.hasOwnProperty(r)) return !1; return !0; }; return !( !r(n(e), n(t)) || !r( o.parseStyle(o.getAttrib(e, "style")), o.parseStyle(o.getAttrib(t, "style")) ) || dc(e) || dc(t) ); }; }, Yc = function (e) { var t = $i(e, "br"), n = V( (function (e) { for (var t = [], n = e.dom(); n; ) t.push(ir.fromDom(n)), (n = n.lastChild); return t; })(e).slice(-1), po ); t.length === n.length && U(n, Oi); }, Gc = function (e) { Bi(e), _i(e, ir.fromHtml('
')); }, Jc = function (n) { Kr(n).each(function (t) { Ur(t).each(function (e) { mo(n) && po(t) && mo(e) && Oi(t); }); }); }, Qc = Jt.makeMap; function Zc(e) { var u, s, c, l, f, d = []; return ( (u = (e = e || {}).indent), (s = Qc(e.indent_before || "")), (c = Qc(e.indent_after || "")), (l = Xo.getEncodeFunc(e.entity_encoding || "raw", e.entities)), (f = "html" === e.element_format), { start: function (e, t, n) { var r, o, i, a; if ( (u && s[e] && 0 < d.length && 0 < (a = d[d.length - 1]).length && "\n" !== a && d.push("\n"), d.push("<", e), t) ) for (r = 0, o = t.length; r < o; r++) (i = t[r]), d.push(" ", i.name, '="', l(i.value, !0), '"'); (d[d.length] = !n || f ? ">" : " />"), n && u && c[e] && 0 < d.length && 0 < (a = d[d.length - 1]).length && "\n" !== a && d.push("\n"); }, end: function (e) { var t; d.push(""), u && c[e] && 0 < d.length && 0 < (t = d[d.length - 1]).length && "\n" !== t && d.push("\n"); }, text: function (e, t) { 0 < e.length && (d[d.length] = t ? e : l(e)); }, cdata: function (e) { d.push(""); }, comment: function (e) { d.push("\x3c!--", e, "--\x3e"); }, pi: function (e, t) { t ? d.push("") : d.push(""), u && d.push("\n"); }, doctype: function (e) { d.push("", u ? "\n" : ""); }, reset: function () { d.length = 0; }, getContent: function () { return d.join("").replace(/\n$/, ""); }, } ); } function el(t, g) { void 0 === g && (g = ii()); var p = Zc(t); return ( ((t = t || {}).validate = !("validate" in t) || t.validate), { serialize: function (e) { var f, d; (d = t.validate), (f = { 3: function (e) { p.text(e.value, e.raw); }, 8: function (e) { p.comment(e.value); }, 7: function (e) { p.pi(e.name, e.value); }, 10: function (e) { p.doctype(e.value); }, 4: function (e) { p.cdata(e.value); }, 11: function (e) { if ((e = e.firstChild)) for (; m(e), (e = e.next); ); }, }), p.reset(); var m = function (e) { var t, n, r, o, i, a, u, s, c, l = f[e.type]; if (l) l(e); else { if ( ((t = e.name), (n = e.shortEnded), (r = e.attributes), d && r && 1 < r.length && (((a = []).map = {}), (c = g.getElementRule(e.name)))) ) { for (u = 0, s = c.attributesOrder.length; u < s; u++) (o = c.attributesOrder[u]) in r.map && ((i = r.map[o]), (a.map[o] = i), a.push({ name: o, value: i })); for (u = 0, s = r.length; u < s; u++) (o = r[u].name) in a.map || ((i = r.map[o]), (a.map[o] = i), a.push({ name: o, value: i })); r = a; } if ((p.start(e.name, r, n), !n)) { if ((e = e.firstChild)) for (; m(e), (e = e.next); ); p.end(t); } } }; return 1 !== e.type || t.inner ? f[11](e) : m(e), p.getContent(); }, } ); } var tl, nl = function (a) { var u = Cu.fromRangeStart(a), s = Cu.fromRangeEnd(a), c = a.commonAncestorContainer; return nc .fromPosition(!1, c, s) .map(function (e) { return !bs(u, s, c) && bs(u, e, c) ? ((t = u.container()), (n = u.offset()), (r = e.container()), (o = e.offset()), (i = H.document.createRange()).setStart(t, n), i.setEnd(r, o), i) : a; var t, n, r, o, i; }) .getOr(a); }, rl = function (e) { return e.collapsed ? e : nl(e); }, ol = Po.matchNodeNames("td th"), il = function (e, t) { var n, r, o = e.selection.getRng(), i = o.startContainer, a = o.startOffset; o.collapsed && ((n = i), (r = a), Po.isText(n) && "\xa0" === n.nodeValue[r - 1]) && Po.isText(i) && (i.insertData(a - 1, " "), i.deleteData(a, 1), o.setStart(i, a), o.setEnd(i, a), e.selection.setRng(o)), e.selection.setContent(t); }, al = function (e, t, n) { var r, o, i, a, u, s, c, l, f, d, m, g = e.selection, p = e.dom; if ( (/^ | $/.test(t) && (t = (function (e, t) { var n, r; (n = e.startContainer), (r = e.startOffset); var o = function (e) { return n[e] && 3 === n[e].nodeType; }; return ( 3 === n.nodeType && (0 < r ? (t = t.replace(/^ /, " ")) : o("previousSibling") || (t = t.replace(/^ /, " ")), r < n.length ? (t = t.replace(/ (
|)$/, " ")) : o("nextSibling") || (t = t.replace(/( | )(
|)$/, " "))), t ); })(g.getRng(), t)), (r = e.parser), (m = n.merge), (o = el({ validate: e.settings.validate }, e.schema)), (d = '​'), (s = { content: t, format: "html", selection: !0, paste: n.paste }), (s = e.fire("BeforeSetContent", s)).isDefaultPrevented()) ) e.fire("SetContent", { content: s.content, format: "html", selection: !0, paste: n.paste, }); else { -1 === (t = s.content).indexOf("{$caret}") && (t += "{$caret}"), (t = t.replace(/\{\$caret\}/, d)); var h, v, b, y, C, x, w = (l = g.getRng()).startContainer || (l.parentElement ? l.parentElement() : null), N = e.getBody(); w === N && g.isCollapsed() && p.isBlock(N.firstChild) && ((h = e), (v = N.firstChild) && !h.schema.getShortEndedElements()[v.nodeName]) && p.isEmpty(N.firstChild) && ((l = p.createRng()).setStart(N.firstChild, 0), l.setEnd(N.firstChild, 0), g.setRng(l)), g.isCollapsed() || (e.selection.setRng(rl(e.selection.getRng())), e.getDoc().execCommand("Delete", !1, null), (b = e.selection.getRng()), (y = t), (C = b.startContainer), (x = b.startOffset), 3 === C.nodeType && b.collapsed && ("\xa0" === C.data[x] ? (C.deleteData(x, 1), /[\u00a0| ]$/.test(y) || (y += " ")) : "\xa0" === C.data[x - 1] && (C.deleteData(x - 1, 1), /[\u00a0| ]$/.test(y) || (y = " " + y))), (t = y)); var E, S, k, T = { context: (i = g.getNode()).nodeName.toLowerCase(), data: n.data, insert: !0, }; if ( ((u = r.parse(t, T)), !0 === n.paste && qc(e.schema, u) && Wc(p, i)) ) return ( (l = $c(o, p, e.selection.getRng(), u)), e.selection.setRng(l), void e.fire("SetContent", s) ); if ( ((function (e) { for (var t = e; (t = t.walk()); ) 1 === t.type && t.attr("data-mce-fragment", "1"); })(u), "mce_marker" === (f = u.lastChild).attr("id")) ) for (f = (c = f).prev; f; f = f.walk(!0)) if (3 === f.type || !p.isBlock(f.name)) { e.schema.isValidChild(f.parent.name, "span") && f.parent.insert(c, f, "br" === f.name); break; } if ((e._selectionOverrides.showBlockCaretContainer(i), T.invalid)) { for ( il(e, d), i = g.getNode(), a = e.getBody(), 9 === i.nodeType ? (i = f = a) : (f = i); f !== a; ) f = (i = f).parentNode; (t = i === a ? a.innerHTML : p.getOuterHTML(i)), (t = o.serialize( r.parse( t.replace( //i, function () { return o.serialize(u); } ) ) )), i === a ? p.setHTML(a, t) : p.setOuterHTML(i, t); } else !(function (e, t, n) { if ("all" === n.getAttribute("data-mce-bogus")) n.parentNode.insertBefore(e.dom.createFragment(t), n); else { var r = n.firstChild, o = n.lastChild; !r || (r === o && "BR" === r.nodeName) ? e.dom.setHTML(n, t) : il(e, t); } })(e, (t = o.serialize(u)), i); !(function (e, t) { var n = e.schema.getTextInlineElements(), r = e.dom; if (t) { var o = e.getBody(), i = new Xc(r); Jt.each(r.select("*[data-mce-fragment]"), function (e) { for (var t = e.parentNode; t && t !== o; t = t.parentNode) n[e.nodeName.toLowerCase()] && i.compare(t, e) && r.remove(e, !0); }); } })(e, m), (function (n, e) { var t, r, o, i, a, u = n.dom, s = n.selection; if (e) { if ( (n.selection.scrollIntoView(e), (t = (function (e) { for (var t = n.getBody(); e && e !== t; e = e.parentNode) if ("false" === n.dom.getContentEditable(e)) return e; return null; })(e))) ) return u.remove(e), s.select(t); var c = u.createRng(); (i = e.previousSibling) && 3 === i.nodeType ? (c.setStart(i, i.nodeValue.length), ge.ie || ((a = e.nextSibling) && 3 === a.nodeType && (i.appendData(a.data), a.parentNode.removeChild(a)))) : (c.setStartBefore(e), c.setEndBefore(e)), (r = u.getParent(e, u.isBlock)), u.remove(e), r && u.isEmpty(r) && (n.$(r).empty(), c.setStart(r, 0), c.setEnd(r, 0), ol(r) || r.getAttribute("data-mce-fragment") || !(o = (function (e) { var t = Cu.fromRangeStart(e); if ((t = $s(n.getBody()).next(t))) return t.toRange(); })(c)) ? u.add(r, u.create("br", { "data-mce-bogus": "1" })) : ((c = o), u.remove(r))), s.setRng(c); } })(e, p.get("mce_marker")), (E = e.getBody()), Jt.each(E.getElementsByTagName("*"), function (e) { e.removeAttribute("data-mce-fragment"); }), (S = e.dom), (k = e.selection.getStart()), A.from(S.getParent(k, "td,th")).map(ir.fromDom).each(Jc), e.fire("SetContent", s), e.addVisual(); } }, ul = function (e, t) { var n, r, o = "string" != typeof (n = t) ? ((r = Jt.extend({ paste: n.paste, data: { paste: n.paste } }, n)), { content: n.content, details: r }) : { content: n, details: {} }; al(e, o.content, o.details); }, sl = /[\u0591-\u07FF\uFB1D-\uFDFF\uFE70-\uFEFC]/, cl = function (e, t, n) { var r = e.getParam(t, n); if (-1 !== r.indexOf("=")) { var o = e.getParam(t, "", "hash"); return o.hasOwnProperty(e.id) ? o[e.id] : n; } return r; }, ll = function (e) { return e.getParam("iframe_attrs", {}); }, fl = function (e) { return e.getParam("doctype", ""); }, dl = function (e) { return e.getParam("document_base_url", ""); }, ml = function (e) { return cl(e, "body_id", "tinymce"); }, gl = function (e) { return cl(e, "body_class", ""); }, pl = function (e) { return e.getParam("content_security_policy", ""); }, hl = function (e) { return e.getParam("br_in_pre", !0); }, vl = function (e) { if (e.getParam("force_p_newlines", !1)) return "p"; var t = e.getParam("forced_root_block", "p"); return !1 === t ? "" : t; }, bl = function (e) { return e.getParam("forced_root_block_attrs", {}); }, yl = function (e) { return e.getParam( "br_newline_selector", ".mce-toc h2,figcaption,caption" ); }, Cl = function (e) { return e.getParam("no_newline_selector", ""); }, xl = function (e) { return e.getParam("keep_styles", !0); }, wl = function (e) { return e.getParam("end_container_on_empty_block", !1); }, Nl = function (e) { return Jt.explode(e.getParam("font_size_style_values", "")); }, El = function (e) { return Jt.explode(e.getParam("font_size_classes", "")); }, Sl = function (e) { return e.getParam("images_dataimg_filter", q(!0), "function"); }, kl = function (e) { return e.getParam("automatic_uploads", !0, "boolean"); }, Tl = function (e) { return e.getParam("images_reuse_filename", !1, "boolean"); }, Al = function (e) { return e.getParam("images_replace_blob_uris", !0, "boolean"); }, Rl = function (e) { return e.getParam("images_upload_url", "", "string"); }, _l = function (e) { return e.getParam("images_upload_base_path", "", "string"); }, Dl = function (e) { return e.getParam("images_upload_credentials", !1, "boolean"); }, Bl = function (e) { return e.getParam("images_upload_handler", null, "function"); }, Ol = function (e) { return e.getParam("content_css_cors", !1, "boolean"); }, Pl = function (e) { return e.getParam( "inline_boundaries_selector", "a[href],code,.mce-annotation", "string" ); }, Il = function (e, t) { if (!t) return t; var n = t.container(), r = t.offset(); return e ? ba(n) ? Po.isText(n.nextSibling) ? Cu(n.nextSibling, 0) : Cu.after(n) : xa(t) ? Cu(n, r + 1) : t : ba(n) ? Po.isText(n.previousSibling) ? Cu(n.previousSibling, n.previousSibling.data.length) : Cu.before(n) : wa(t) ? Cu(n, r - 1) : t; }, Ll = { isInlineTarget: function (e, t) { return Or(ir.fromDom(t), Pl(e)); }, findRootInline: function (e, t, n) { var r, o, i, a = ((r = e), (o = t), (i = n), V(bi.DOM.getParents(i.container(), "*", o), r)); return A.from(a[a.length - 1]); }, isRtl: function (e) { return ( "rtl" === bi.DOM.getStyle(e, "direction", !0) || ((t = e.textContent), sl.test(t)) ); var t; }, isAtZwsp: function (e) { return xa(e) || wa(e); }, normalizePosition: Il, normalizeForwards: d(Il, !0), normalizeBackwards: d(Il, !1), hasSameParentBlock: function (e, t, n) { var r = vs(t, e), o = vs(n, e); return r && r === o; }, }, Ml = function (e, t) { return Lr(e, t) ? Yi( t, function (e) { return ho(e) || bo(e); }, ((n = e), function (e) { return Ir(n, ir.fromDom(e.dom().parentNode)); }) ) : A.none(); var n; }, Fl = function (e) { var t, n, r; e.dom.isEmpty(e.getBody()) && (e.setContent(""), (n = (t = e).getBody()), (r = n.firstChild && t.dom.isBlock(n.firstChild) ? n.firstChild : n), t.selection.setCursorLocation(r, 0)); }, zl = function (i, a, u) { return Ya([nc.firstPositionIn(u), nc.lastPositionIn(u)], function (e, t) { var n = Ll.normalizePosition(!0, e), r = Ll.normalizePosition(!1, t), o = Ll.normalizePosition(!1, a); return i ? nc .nextPosition(u, o) .map(function (e) { return e.isEqual(r) && a.isEqual(n); }) .getOr(!1) : nc .prevPosition(u, o) .map(function (e) { return e.isEqual(n) && a.isEqual(r); }) .getOr(!1); }).getOr(!0); }, Ul = function (e, t) { var n, r, o, i = ir.fromDom(e), a = ir.fromDom(t); return (n = a), (r = "pre,code"), (o = d(Ir, i)), Gi(n, r, o).isSome(); }, Vl = function (e, t) { return ( (Ia(t) && !1 === ((r = e), (o = t), Po.isText(o) && /^[ \t\r\n]*$/.test(o.data) && !1 === Ul(r, o))) || ((n = t), Po.isElement(n) && "A" === n.nodeName && n.hasAttribute("name")) || Hl(t) ); var n, r, o; }, Hl = Po.hasAttribute("data-mce-bookmark"), jl = Po.hasAttribute("data-mce-bogus"), ql = Po.hasAttributeValue("data-mce-bogus", "all"), $l = function (e) { return (function (e) { var t, n, r = 0; if (Vl(e, e)) return !1; if (!(n = e.firstChild)) return !0; t = new ao(n, e); do { if (ql(n)) n = t.next(!0); else if (jl(n)) n = t.next(); else if (Po.isBr(n)) r++, (n = t.next()); else { if (Vl(e, n)) return !1; n = t.next(); } } while (n); return r <= 1; })(e.dom()); }, Wl = kr("block", "position"), Kl = kr("from", "to"), Xl = function (e, t) { var n = ir.fromDom(e), r = ir.fromDom(t.container()); return Ml(n, r).map(function (e) { return Wl(e, t); }); }, Yl = function (o, i, e) { var t = Xl(o, Cu.fromRangeStart(e)), n = t.bind(function (e) { return nc.fromPosition(i, o, e.position()).bind(function (e) { return Xl(o, e).map(function (e) { return ( (t = o), (n = i), (r = e), Po.isBr(r.position().getNode()) && !1 === $l(r.block()) ? nc .positionIn(!1, r.block().dom()) .bind(function (e) { return e.isEqual(r.position()) ? nc.fromPosition(n, t, e).bind(function (e) { return Xl(t, e); }) : A.some(r); }) .getOr(r) : r ); var t, n, r; }); }); }); return Ya([t, n], Kl).filter(function (e) { return ( !1 === Ir((r = e).from().block(), r.to().block()) && zr((n = e).from().block()) .bind(function (t) { return zr(n.to().block()).filter(function (e) { return Ir(t, e); }); }) .isSome() && ((t = e), !1 === Po.isContentEditableFalse(t.from().block()) && !1 === Po.isContentEditableFalse(t.to().block())) ); var t, n, r; }); }, Gl = function (e, t, n) { return n.collapsed ? Yl(e, t, n) : A.none(); }, Jl = function (e, t, n) { return Lr(t, e) ? (function (e, t) { for ( var n = P(t) ? t : q(!1), r = e.dom(), o = []; null !== r.parentNode && r.parentNode !== undefined; ) { var i = r.parentNode, a = ir.fromDom(i); if ((o.push(a), !0 === n(a))) break; r = i; } return o; })(e, function (e) { return n(e) || Ir(e, t); }).slice(0, -1) : []; }, Ql = function (e, t) { return Jl(e, t, q(!1)); }, Zl = Ql, ef = function (e, t) { return [e].concat(Ql(e, t)); }, tf = function (e) { var t, n = ((t = qr(e)), G(t, mo).fold( function () { return t; }, function (e) { return t.slice(0, e); } )); return U(n, Oi), n; }, nf = function (e, t) { var n = ef(t, e); return Y(n.reverse(), $l).each(Oi); }, rf = function (e, t, n, r) { if ($l(n)) return Gc(n), nc.firstPositionIn(n.dom()); 0 === V(Hr(r), function (e) { return !$l(e); }).length && $l(t) && Ti(r, ir.fromTag("br")); var o = nc.prevPosition(n.dom(), Cu.before(r.dom())); return ( U(tf(t), function (e) { Ti(r, e); }), nf(e, t), o ); }, of = function (e, t, n) { if ($l(n)) return Oi(n), $l(t) && Gc(t), nc.firstPositionIn(t.dom()); var r = nc.lastPositionIn(n.dom()); return ( U(tf(t), function (e) { _i(n, e); }), nf(e, t), r ); }, af = function (e, t) { return Lr(t, e) ? ((n = ef(e, t)), A.from(n[n.length - 1])) : A.none(); var n; }, uf = function (e, t) { nc.positionIn(e, t.dom()) .map(function (e) { return e.getNode(); }) .map(ir.fromDom) .filter(po) .each(Oi); }, sf = function (e, t, n) { return ( uf(!0, t), uf(!1, n), af(t, n).fold(d(of, e, t, n), d(rf, e, t, n)) ); }, cf = function (e, t, n, r) { return t ? sf(e, r, n) : sf(e, n, r); }, lf = function (t, n) { var e, r = ir.fromDom(t.getBody()); return ( (e = Gl(r.dom(), n, t.selection.getRng()).bind(function (e) { return cf(r, n, e.from().block(), e.to().block()); })).each(function (e) { t.selection.setRng(e.toRange()); }), e.isSome() ); }, ff = function (e, t) { var n = ir.fromDom(t), r = d(Ir, e); return Xi(n, xo, r).isSome(); }, df = function (e, t) { var n, r, o = nc.prevPosition(e.dom(), Cu.fromRangeStart(t)).isNone(), i = nc.nextPosition(e.dom(), Cu.fromRangeEnd(t)).isNone(); return ( !(ff((n = e), (r = t).startContainer) || ff(n, r.endContainer)) && o && i ); }, mf = function (e) { var n, r, o, t, i = ir.fromDom(e.getBody()), a = e.selection.getRng(); return df(i, a) ? ((t = e).setContent(""), t.selection.setCursorLocation(), !0) : ((n = i), (r = e.selection), (o = r.getRng()), Ya( [ Ml(n, ir.fromDom(o.startContainer)), Ml(n, ir.fromDom(o.endContainer)), ], function (e, t) { return ( !1 === Ir(e, t) && (o.deleteContents(), cf(n, !0, e, t).each(function (e) { r.setRng(e.toRange()); }), !0) ); } ).getOr(!1)); }, gf = function (e, t) { return !e.selection.isCollapsed() && mf(e); }, pf = function (a) { if (!D(a)) throw new Error("cases must be an array"); if (0 === a.length) throw new Error("there must be at least one case"); var u = [], n = {}; return ( U(a, function (e, r) { var t = mr(e); if (1 !== t.length) throw new Error("one and only one name per case"); var o = t[0], i = e[o]; if (n[o] !== undefined) throw new Error("duplicate key detected:" + o); if ("cata" === o) throw new Error("cannot have a case named cata (sorry)"); if (!D(i)) throw new Error("case arguments must be an array"); u.push(o), (n[o] = function () { var e = arguments.length; if (e !== i.length) throw new Error( "Wrong number of arguments to case " + o + ". Expected " + i.length + " (" + i + "), got " + e ); for (var n = new Array(e), t = 0; t < n.length; t++) n[t] = arguments[t]; return { fold: function () { if (arguments.length !== a.length) throw new Error( "Wrong number of arguments to fold. Expected " + a.length + ", got " + arguments.length ); return arguments[r].apply(null, n); }, match: function (e) { var t = mr(e); if (u.length !== t.length) throw new Error( "Wrong number of arguments to match. Expected: " + u.join(",") + "\nActual: " + t.join(",") ); if ( !ee(u, function (e) { return F(t, e); }) ) throw new Error( "Not all branches were specified when using match. Specified: " + t.join(", ") + "\nRequired: " + u.join(", ") ); return e[o].apply(null, n); }, log: function (e) { H.console.log(e, { constructors: u, constructor: o, params: n, }); }, }; }); }), n ); }, hf = function (e) { return Ts(e).exists(po); }, vf = function (e, t, n) { var r = V(ef(ir.fromDom(n.container()), t), mo), o = ne(r).getOr(t); return nc.fromPosition(e, o.dom(), n).filter(hf); }, bf = function (e, t) { return Ts(t).exists(po) || vf(!0, e, t).isSome(); }, yf = function (e, t) { return ( ((n = t), A.from(n.getNode(!0)).map(ir.fromDom)).exists(po) || vf(!1, e, t).isSome() ); var n; }, Cf = d(vf, !1), xf = d(vf, !0), wf = ((tl = "\xa0"), function (e) { return tl === e; }), Nf = function (e) { return /^[\r\n\t ]$/.test(e); }, Ef = function (e) { return !Nf(e) && !wf(e); }, Sf = function (n, r, o) { return A.from(o.container()) .filter(Po.isText) .exists(function (e) { var t = n ? 0 : -1; return r(e.data.charAt(o.offset() + t)); }); }, kf = d(Sf, !0, Nf), Tf = d(Sf, !1, Nf), Af = function (e) { var t = e.container(); return Po.isText(t) && 0 === t.data.length; }, Rf = function (e, t) { var n = ys(e, t); return Po.isContentEditableFalse(n) && !Po.isBogusAll(n); }, _f = d(Rf, 0), Df = d(Rf, -1), Bf = function (e, t) { return Po.isTable(ys(e, t)); }, Of = d(Bf, 0), Pf = d(Bf, -1), If = pf([ { remove: ["element"] }, { moveToElement: ["element"] }, { moveToPosition: ["position"] }, ]), Lf = function (e, t, n, r) { var o = r.getNode(!1 === t); return Ml(ir.fromDom(e), ir.fromDom(n.getNode())) .map(function (e) { return $l(e) ? If.remove(e.dom()) : If.moveToElement(o); }) .orThunk(function () { return A.some(If.moveToElement(o)); }); }, Mf = function (u, s, c) { return nc.fromPosition(s, u, c).bind(function (e) { return ( (a = e.getNode()), xo(ir.fromDom(a)) || bo(ir.fromDom(a)) ? A.none() : ((t = u), (o = e), (i = function (e) { return go(ir.fromDom(e)) && !bs(r, o, t); }), Ss(!(n = s), (r = c)).fold(function () { return Ss(n, o).fold(q(!1), i); }, i) ? A.none() : s && Po.isContentEditableFalse(e.getNode()) ? Lf(u, s, c, e) : !1 === s && Po.isContentEditableFalse(e.getNode(!0)) ? Lf(u, s, c, e) : s && Df(c) ? A.some(If.moveToPosition(e)) : !1 === s && _f(c) ? A.some(If.moveToPosition(e)) : A.none()) ); var t, n, r, o, i, a; }); }, Ff = function (r, e, o) { return ( (i = e), (a = o.getNode(!1 === i)), (u = i ? "after" : "before"), Po.isElement(a) && a.getAttribute("data-mce-caret") === u ? ((t = e), (n = o.getNode(!1 === e)), t && Po.isContentEditableFalse(n.nextSibling) ? A.some(If.moveToElement(n.nextSibling)) : !1 === t && Po.isContentEditableFalse(n.previousSibling) ? A.some(If.moveToElement(n.previousSibling)) : A.none()).fold(function () { return Mf(r, e, o); }, A.some) : Mf(r, e, o).bind(function (e) { return ( (t = r), (n = o), e.fold( function (e) { return A.some(If.remove(e)); }, function (e) { return A.some(If.moveToElement(e)); }, function (e) { return bs(n, e, t) ? A.none() : A.some(If.moveToPosition(e)); } ) ); var t, n; }) ); var t, n, i, a, u; }, zf = function (e, t, n) { if (0 !== n) { var r, o, i, a = e.data.slice(t, t + n), u = t + n >= e.data.length, s = 0 === t; e.replaceData( t, n, ((o = s), (i = u), X( (r = a).split(""), function (e, t) { return -1 !== " \f\n\r\t\x0B".indexOf(t) || "\xa0" === t ? e.previousCharIsSpace || ("" === e.str && o) || (e.str.length === r.length - 1 && i) ? { previousCharIsSpace: !1, str: e.str + "\xa0" } : { previousCharIsSpace: !0, str: e.str + " " } : { previousCharIsSpace: !1, str: e.str + t }; }, { previousCharIsSpace: !1, str: "" } ).str) ); } }, Uf = function (e, t) { var n, r = e.data.slice(t), o = r.length - ((n = r), n.replace(/^\s+/g, "")).length; return zf(e, t, o); }, Vf = function (e, t) { return ( (r = e), (o = (n = t).container()), (i = n.offset()), !1 === Cu.isTextPosition(n) && o === r.parentNode && i > Cu.before(r).offset() ? Cu(t.container(), t.offset() - 1) : t ); var n, r, o, i; }, Hf = function (e) { return Ia(e.previousSibling) ? A.some( ((t = e.previousSibling), Po.isText(t) ? Cu(t, t.data.length) : Cu.after(t)) ) : e.previousSibling ? nc.lastPositionIn(e.previousSibling) : A.none(); var t; }, jf = function (e) { return Ia(e.nextSibling) ? A.some(((t = e.nextSibling), Po.isText(t) ? Cu(t, 0) : Cu.before(t))) : e.nextSibling ? nc.firstPositionIn(e.nextSibling) : A.none(); var t; }, qf = function (r, o) { return Hf(o) .orThunk(function () { return jf(o); }) .orThunk(function () { return ( (e = r), (t = o), (n = Cu.before( t.previousSibling ? t.previousSibling : t.parentNode )), nc.prevPosition(e, n).fold(function () { return nc.nextPosition(e, Cu.after(t)); }, A.some) ); var e, t, n; }); }, $f = function (n, r) { return jf(r) .orThunk(function () { return Hf(r); }) .orThunk(function () { return ( (e = n), (t = r), nc.nextPosition(e, Cu.after(t)).fold(function () { return nc.prevPosition(e, Cu.before(t)); }, A.some) ); var e, t; }); }, Wf = function (e, t, n) { return ((r = e), (o = t), (i = n), r ? $f(o, i) : qf(o, i)).map(d(Vf, n)); var r, o, i; }, Kf = function (t, n, e) { e.fold( function () { t.focus(); }, function (e) { t.selection.setRng(e.toRange(), n); } ); }, Xf = function (e, t) { return t && e.schema.getBlockElements().hasOwnProperty(cr(t)); }, Yf = function (e) { if ($l(e)) { var t = ir.fromHtml('
'); return Bi(e), _i(e, t), A.some(Cu.before(t.dom())); } return A.none(); }, Gf = function (e, t, l) { var n = Ur(e).filter(function (e) { return Po.isText(e.dom()); }), r = Vr(e).filter(function (e) { return Po.isText(e.dom()); }); return ( Oi(e), Ya([n, r, t], function (e, t, n) { var r, o, i, a, u = e.dom(), s = t.dom(), c = u.data.length; return ( (o = s), (i = l), (a = Gn((r = u).data).length), r.appendData(o.data), Oi(ir.fromDom(o)), i && Uf(r, a), n.container() === s ? Cu(u, c) : n ); }).orThunk(function () { return ( l && (n.each(function (e) { return ( (t = e.dom()), (n = e.dom().length), (r = t.data.slice(0, n)), (o = r.length - Gn(r).length), zf(t, n - o, o) ); var t, n, r, o; }), r.each(function (e) { return Uf(e.dom(), 0); })), t ); }) ); }, Jf = function (e, t) { return (n = e.schema.getTextInlineElements()), (r = cr(t)), gr.call(n, r); var n, r; }, Qf = function (t, n, e, r) { void 0 === r && (r = !0); var o, i = Wf(n, t.getBody(), e.dom()), a = Xi( e, d(Xf, t), ((o = t.getBody()), function (e) { return e.dom() === o; }) ), u = Gf(e, i, Jf(t, e)); t.dom.isEmpty(t.getBody()) ? (t.setContent(""), t.selection.setCursorLocation()) : a.bind(Yf).fold( function () { r && Kf(t, n, u); }, function (e) { r && Kf(t, n, A.some(e)); } ); }, Zf = function (a, u) { var e, t, n, r, o, i; return ((e = a.getBody()), (t = u), (n = a.selection.getRng()), (r = Es(t ? 1 : -1, e, n)), (o = Cu.fromRangeStart(r)), (i = ir.fromDom(e)), !1 === t && Df(o) ? A.some(If.remove(o.getNode(!0))) : t && _f(o) ? A.some(If.remove(o.getNode())) : !1 === t && _f(o) && yf(i, o) ? Cf(i, o).map(function (e) { return If.remove(e.getNode()); }) : t && Df(o) && bf(i, o) ? xf(i, o).map(function (e) { return If.remove(e.getNode()); }) : Ff(e, t, o)) .map(function (e) { return e.fold( ((o = a), (i = u), function (e) { return ( o._selectionOverrides.hideFakeCaret(), Qf(o, i, ir.fromDom(e)), !0 ); }), ((n = a), (r = u), function (e) { var t = r ? Cu.before(e) : Cu.after(e); return n.selection.setRng(t.toRange()), !0; }), ((t = a), function (e) { return t.selection.setRng(e.toRange()), !0; }) ); var t, n, r, o, i; }) .getOr(!1); }, ed = function (e, t) { var n, r = e.selection.getNode(); return ( !!Po.isContentEditableFalse(r) && ((n = ir.fromDom(e.getBody())), U($i(n, ".mce-offscreen-selection"), Oi), Qf(e, t, ir.fromDom(e.selection.getNode())), Fl(e), !0) ); }, td = function (e, t) { return e.selection.isCollapsed() ? Zf(e, t) : ed(e, t); }, nd = function (e) { var t, n = (function (e, t) { for (; t && t !== e; ) { if (Po.isContentEditableTrue(t) || Po.isContentEditableFalse(t)) return t; t = t.parentNode; } return null; })(e.getBody(), e.selection.getNode()); return ( Po.isContentEditableTrue(n) && e.dom.isBlock(n) && e.dom.isEmpty(n) && ((t = e.dom.create("br", { "data-mce-bogus": "1" })), e.dom.setHTML(n, ""), n.appendChild(t), e.selection.setRng(Cu.before(t).toRange())), !0 ); }, rd = Po.isText, od = function (e) { return rd(e) && e.data[0] === ma; }, id = function (e) { return rd(e) && e.data[e.data.length - 1] === ma; }, ad = function (e) { return e.ownerDocument.createTextNode(ma); }, ud = function (e, t) { return e ? (function (e) { if (rd(e.previousSibling)) return ( id(e.previousSibling) || e.previousSibling.appendData(ma), e.previousSibling ); if (rd(e)) return od(e) || e.insertData(0, ma), e; var t = ad(e); return e.parentNode.insertBefore(t, e), t; })(t) : (function (e) { if (rd(e.nextSibling)) return ( od(e.nextSibling) || e.nextSibling.insertData(0, ma), e.nextSibling ); if (rd(e)) return id(e) || e.appendData(ma), e; var t = ad(e); return ( e.nextSibling ? e.parentNode.insertBefore(t, e.nextSibling) : e.parentNode.appendChild(t), t ); })(t); }, sd = d(ud, !0), cd = d(ud, !1), ld = function (e, t) { return Po.isText(e.container()) ? ud(t, e.container()) : ud(t, e.getNode()); }, fd = function (e, t) { var n = t.get(); return n && e.container() === n && ba(n); }, dd = function (n, e) { return e.fold( function (e) { es.remove(n.get()); var t = sd(e); return n.set(t), A.some(Cu(t, t.length - 1)); }, function (e) { return nc.firstPositionIn(e).map(function (e) { if (fd(e, n)) return Cu(n.get(), 1); es.remove(n.get()); var t = ld(e, !0); return n.set(t), Cu(t, 1); }); }, function (e) { return nc.lastPositionIn(e).map(function (e) { if (fd(e, n)) return Cu(n.get(), n.get().length - 1); es.remove(n.get()); var t = ld(e, !1); return n.set(t), Cu(t, t.length - 1); }); }, function (e) { es.remove(n.get()); var t = cd(e); return n.set(t), A.some(Cu(t, 1)); } ); }, md = function (e, t) { for (var n = 0; n < e.length; n++) { var r = e[n].apply(null, t); if (r.isSome()) return r; } return A.none(); }, gd = pf([ { before: ["element"] }, { start: ["element"] }, { end: ["element"] }, { after: ["element"] }, ]), pd = function (e, t) { var n = vs(t, e); return n || e; }, hd = function (e, t, n) { var r = Ll.normalizeForwards(n), o = pd(t, r.container()); return Ll.findRootInline(e, o, r).fold(function () { return nc .nextPosition(o, r) .bind(d(Ll.findRootInline, e, o)) .map(function (e) { return gd.before(e); }); }, A.none); }, vd = function (e, t) { return null === qu(e, t); }, bd = function (e, t, n) { return Ll.findRootInline(e, t, n).filter(d(vd, t)); }, yd = function (e, t, n) { var r = Ll.normalizeBackwards(n); return bd(e, t, r).bind(function (e) { return nc.prevPosition(e, r).isNone() ? A.some(gd.start(e)) : A.none(); }); }, Cd = function (e, t, n) { var r = Ll.normalizeForwards(n); return bd(e, t, r).bind(function (e) { return nc.nextPosition(e, r).isNone() ? A.some(gd.end(e)) : A.none(); }); }, xd = function (e, t, n) { var r = Ll.normalizeBackwards(n), o = pd(t, r.container()); return Ll.findRootInline(e, o, r).fold(function () { return nc .prevPosition(o, r) .bind(d(Ll.findRootInline, e, o)) .map(function (e) { return gd.after(e); }); }, A.none); }, wd = function (e) { return !1 === Ll.isRtl(Ed(e)); }, Nd = function (e, t, n) { return md([hd, yd, Cd, xd], [e, t, n]).filter(wd); }, Ed = function (e) { return e.fold($, $, $, $); }, Sd = function (e) { return e.fold(q("before"), q("start"), q("end"), q("after")); }, kd = function (e) { return e.fold(gd.before, gd.before, gd.after, gd.after); }, Td = function (n, e, r, t, o, i) { return Ya( [Ll.findRootInline(e, r, t), Ll.findRootInline(e, r, o)], function (e, t) { return e !== t && Ll.hasSameParentBlock(r, e, t) ? gd.after(n ? e : t) : i; } ).getOr(i); }, Ad = function (e, r) { return e.fold(q(!0), function (e) { return (n = r), !(Sd((t = e)) === Sd(n) && Ed(t) === Ed(n)); var t, n; }); }, Rd = function (e, t) { return e ? t.fold(j(A.some, gd.start), A.none, j(A.some, gd.after), A.none) : t.fold(A.none, j(A.some, gd.before), A.none, j(A.some, gd.end)); }, _d = function (a, u, s, c) { var e = Ll.normalizePosition(a, c), l = Nd(u, s, e); return Nd(u, s, e) .bind(d(Rd, a)) .orThunk(function () { return ( (t = a), (n = u), (r = s), (o = l), (e = c), (i = Ll.normalizePosition(t, e)), nc .fromPosition(t, r, i) .map(d(Ll.normalizePosition, t)) .fold( function () { return o.map(kd); }, function (e) { return Nd(n, r, e).map(d(Td, t, n, r, i, e)).filter(d(Ad, o)); } ) .filter(wd) ); var t, n, r, o, e, i; }); }, Dd = Nd, Bd = _d, Od = (d(_d, !1), d(_d, !0), kd), Pd = function (e) { return e.fold(gd.start, gd.start, gd.end, gd.end); }, Id = function (e) { return P(e.selection.getSel().modify); }, Ld = function (e, t, n) { var r = e ? 1 : -1; return ( t.setRng(Cu(n.container(), n.offset() + r).toRange()), t.getSel().modify("move", e ? "forward" : "backward", "word"), !0 ); }, Md = function (e, t) { var n = t.selection.getRng(), r = e ? Cu.fromRangeEnd(n) : Cu.fromRangeStart(n); return ( !!Id(t) && (e && xa(r) ? Ld(!0, t.selection, r) : !(e || !wa(r)) && Ld(!1, t.selection, r)) ); }, Fd = function (e, t) { var n = e.dom.createRng(); n.setStart(t.container(), t.offset()), n.setEnd(t.container(), t.offset()), e.selection.setRng(n); }, zd = function (e) { return !1 !== e.settings.inline_boundaries; }, Ud = function (e, t) { e ? t.setAttribute("data-mce-selected", "inline-boundary") : t.removeAttribute("data-mce-selected"); }, Vd = function (t, e, n) { return dd(e, n).map(function (e) { return Fd(t, e), n; }); }, Hd = function (e, t, n) { return function () { return !!zd(t) && Md(e, t); }; }, jd = { move: function (a, u, s) { return function () { return ( !!zd(a) && ((t = a), (n = u), (e = s), (r = t.getBody()), (o = Cu.fromRangeStart(t.selection.getRng())), (i = d(Ll.isInlineTarget, t)), Bd(e, i, r, o).bind(function (e) { return Vd(t, n, e); })).isSome() ); var t, n, e, r, o, i; }; }, moveNextWord: d(Hd, !0), movePrevWord: d(Hd, !1), setupSelectedState: function (a) { var u = Li(null), s = d(Ll.isInlineTarget, a); return ( a.on("NodeChange", function (e) { var t, n, r, o, i; zd(a) && ((t = s), (n = a.dom), (r = e.parents), (o = V(n.select('*[data-mce-selected="inline-boundary"]'), t)), (i = V(r, t)), U(te(o, i), d(Ud, !1)), U(te(i, o), d(Ud, !0)), (function (e, t) { if ( e.selection.isCollapsed() && !0 !== e.composing && t.get() ) { var n = Cu.fromRangeStart(e.selection.getRng()); Cu.isTextPosition(n) && !1 === Ll.isAtZwsp(n) && (Fd(e, es.removeAndReposition(t.get(), n)), t.set(null)); } })(a, u), (function (n, r, o, e) { if (r.selection.isCollapsed()) { var t = V(e, n); U(t, function (e) { var t = Cu.fromRangeStart(r.selection.getRng()); Dd(n, r.getBody(), t).bind(function (e) { return Vd(r, o, e); }); }); } })(s, a, u, e.parents)); }), u ); }, setCaretPosition: Fd, }, qd = function (t, n) { return function (e) { return dd(n, e) .map(function (e) { return jd.setCaretPosition(t, e), !0; }) .getOr(!1); }; }, $d = function (r, o, i, a) { var u = r.getBody(), s = d(Ll.isInlineTarget, r); r.undoManager.ignore(function () { var e, t, n; r.selection.setRng( ((e = i), (t = a), (n = H.document.createRange()).setStart(e.container(), e.offset()), n.setEnd(t.container(), t.offset()), n) ), r.execCommand("Delete"), Dd(s, u, Cu.fromRangeStart(r.selection.getRng())) .map(Pd) .map(qd(r, o)); }), r.nodeChanged(); }, Wd = function (n, r, i, o) { var e, t, a = ((e = n.getBody()), (t = o.container()), vs(t, e) || e), u = d(Ll.isInlineTarget, n), s = Dd(u, a, o); return s .bind(function (e) { return i ? e.fold(q(A.some(Pd(e))), A.none, q(A.some(Od(e))), A.none) : e.fold(A.none, q(A.some(Od(e))), A.none, q(A.some(Pd(e)))); }) .map(qd(n, r)) .getOrThunk(function () { var t = nc.navigate(i, a, o), e = t.bind(function (e) { return Dd(u, a, e); }); return s.isSome() && e.isSome() ? Ll.findRootInline(u, a, o) .map(function (e) { return ( (o = e), !!Ya( [nc.firstPositionIn(o), nc.lastPositionIn(o)], function (e, t) { var n = Ll.normalizePosition(!0, e), r = Ll.normalizePosition(!1, t); return nc .nextPosition(o, n) .map(function (e) { return e.isEqual(r); }) .getOr(!0); } ).getOr(!0) && (Qf(n, i, ir.fromDom(e)), !0) ); var o; }) .getOr(!1) : e .bind(function (e) { return t.map(function (e) { return i ? $d(n, r, o, e) : $d(n, r, e, o), !0; }); }) .getOr(!1); }); }, Kd = function (e, t, n) { if (e.selection.isCollapsed() && !1 !== e.settings.inline_boundaries) { var r = Cu.fromRangeStart(e.selection.getRng()); return Wd(e, t, n, r); } return !1; }, Xd = kr("start", "end"), Yd = kr("rng", "table", "cells"), Gd = pf([{ removeTable: ["element"] }, { emptyCells: ["cells"] }]), Jd = function (e, t) { return Qi(ir.fromDom(e), "td,th", t); }, Qd = function (e, t) { return Gi(e, "table", t); }, Zd = function (e) { return !1 === Ir(e.start(), e.end()); }, em = function (e, n) { return Qd(e.start(), n).bind(function (t) { return Qd(e.end(), n).bind(function (e) { return Ir(t, e) ? A.some(t) : A.none(); }); }); }, tm = function (e) { return $i(e, "td,th"); }, nm = function (r, e) { var t = Jd(e.startContainer, r), n = Jd(e.endContainer, r); return e.collapsed ? A.none() : Ya([t, n], Xd).fold( function () { return t.fold( function () { return n.bind(function (t) { return Qd(t, r).bind(function (e) { return ne(tm(e)).map(function (e) { return Xd(e, t); }); }); }); }, function (t) { return Qd(t, r).bind(function (e) { return re(tm(e)).map(function (e) { return Xd(t, e); }); }); } ); }, function (e) { return rm(r, e) ? A.none() : ((n = r), Qd((t = e).start(), n).bind(function (e) { return re(tm(e)).map(function (e) { return Xd(t.start(), e); }); })); var t, n; } ); }, rm = function (e, t) { return em(t, e).isSome(); }, om = function (e, t) { var n, r, o, i, a = d(Ir, e); return ((n = t), (r = a), (o = Jd(n.startContainer, r)), (i = Jd(n.endContainer, r)), Ya([o, i], Xd) .filter(Zd) .filter(function (e) { return rm(r, e); }) .orThunk(function () { return nm(r, n); })).bind(function (e) { return em((t = e), a).map(function (e) { return Yd(t, e, tm(e)); }); var t; }); }, im = function (e, t) { return G(e, function (e) { return Ir(e, t); }); }, am = function (n) { return ((r = n), Ya( [im(r.cells(), r.rng().start()), im(r.cells(), r.rng().end())], function (e, t) { return r.cells().slice(e, t + 1); } )).map(function (e) { var t = n.cells(); return e.length === t.length ? Gd.removeTable(n.table()) : Gd.emptyCells(e); }); var r; }, um = function (e, t) { return om(e, t).bind(am); }, sm = function (e) { var t = []; if (e) for (var n = 0; n < e.rangeCount; n++) t.push(e.getRangeAt(n)); return t; }, cm = sm, lm = function (e) { return Z(e, function (e) { var t = $a(e); return t ? [ir.fromDom(t)] : []; }); }, fm = function (e) { return 1 < sm(e).length; }, dm = function (e) { return V(lm(e), xo); }, mm = function (e) { return $i(e, "td[data-mce-selected],th[data-mce-selected]"); }, gm = function (e, t) { var n = mm(t), r = dm(e); return 0 < n.length ? n : r; }, pm = gm, hm = function (e) { return gm(cm(e.selection.getSel()), ir.fromDom(e.getBody())); }, vm = function (e, t) { return U(t, Gc), e.selection.setCursorLocation(t[0].dom(), 0), !0; }, bm = function (e, t) { return Qf(e, !1, t), !0; }, ym = function (n, e, r, t) { return xm(e, t) .fold( function () { return ( (t = n), um(e, r).map(function (e) { return e.fold(d(bm, t), d(vm, t)); }) ); var t; }, function (e) { return wm(n, e); } ) .getOr(!1); }, Cm = function (e, t) { return Y(ef(t, e), xo); }, xm = function (e, t) { return Y(ef(t, e), function (e) { return "caption" === cr(e); }); }, wm = function (e, t) { return Gc(t), e.selection.setCursorLocation(t.dom(), 0), A.some(!0); }, Nm = function (u, s, c, l, f) { return nc .navigate(c, u.getBody(), f) .bind(function (e) { return ( (r = l), (o = c), (i = f), (a = e), nc .firstPositionIn(r.dom()) .bind(function (t) { return nc.lastPositionIn(r.dom()).map(function (e) { return o ? i.isEqual(t) && a.isEqual(e) : i.isEqual(e) && a.isEqual(t); }); }) .getOr(!0) ? wm(u, l) : ((t = l), (n = e), xm(s, ir.fromDom(n.getNode())).map(function (e) { return !1 === Ir(e, t); })) ); var t, n, r, o, i, a; }) .or(A.some(!0)); }, Em = function (a, u, s, e) { var c = Cu.fromRangeStart(a.selection.getRng()); return Cm(s, e).bind(function (e) { return $l(e) ? wm(a, e) : ((t = a), (n = s), (r = u), (o = e), (i = c), nc.navigate(r, t.getBody(), i).bind(function (e) { return Cm(n, ir.fromDom(e.getNode())).map(function (e) { return !1 === Ir(e, o); }); })); var t, n, r, o, i; }); }, Sm = function (a, u, e) { var s = ir.fromDom(a.getBody()); return xm(s, e) .fold( function () { return Em(a, u, s, e); }, function (e) { return ( (t = a), (n = u), (r = s), (o = e), (i = Cu.fromRangeStart(t.selection.getRng())), $l(o) ? wm(t, o) : Nm(t, r, n, o, i) ); var t, n, r, o, i; } ) .getOr(!1); }, km = function (e, t) { var n, r, o, i, a, u = ir.fromDom(e.selection.getStart(!0)), s = hm(e); return e.selection.isCollapsed() && 0 === s.length ? Sm(e, t, u) : ((n = e), (r = u), (o = ir.fromDom(n.getBody())), (i = n.selection.getRng()), 0 !== (a = hm(n)).length ? vm(n, a) : ym(n, o, i, r)); }, Tm = hc.isEq, Am = function (e, t, n) { var r = e.formatter.get(n); if (r) for (var o = 0; o < r.length; o++) if (!1 === r[o].inherit && e.dom.is(t, r[o].selector)) return !0; return !1; }, Rm = function (t, e, n, r) { var o = t.dom.getRoot(); return ( e !== o && ((e = t.dom.getParent(e, function (e) { return !!Am(t, e, n) || e.parentNode === o || !!Bm(t, e, n, r, !0); })), Bm(t, e, n, r)) ); }, _m = function (e, t, n) { return ( !!Tm(t, n.inline) || !!Tm(t, n.block) || (n.selector ? 1 === t.nodeType && e.is(t, n.selector) : void 0) ); }, Dm = function (e, t, n, r, o, i) { var a, u, s, c = n[r]; if (n.onmatch) return n.onmatch(t, n, r); if (c) if ("undefined" == typeof c.length) { for (a in c) if (c.hasOwnProperty(a)) { if ( ((u = "attributes" === r ? e.getAttrib(t, a) : hc.getStyle(e, t, a)), o && !u && !n.exact) ) return; if ( (!o || n.exact) && !Tm(u, hc.normalizeStyleValue(e, hc.replaceVars(c[a], i), a)) ) return; } } else for (s = 0; s < c.length; s++) if ( "attributes" === r ? e.getAttrib(t, c[s]) : hc.getStyle(e, t, c[s]) ) return n; return n; }, Bm = function (e, t, n, r, o) { var i, a, u, s, c = e.formatter.get(n), l = e.dom; if (c && t) for (a = 0; a < c.length; a++) if ( ((i = c[a]), _m(e.dom, t, i) && Dm(l, t, i, "attributes", o, r) && Dm(l, t, i, "styles", o, r)) ) { if ((s = i.classes)) for (u = 0; u < s.length; u++) if (!e.dom.hasClass(t, s[u])) return; return i; } }, Om = { matchNode: Bm, matchName: _m, match: function (e, t, n, r) { var o; return r ? Rm(e, r, t, n) : ((r = e.selection.getNode()), !!Rm(e, r, t, n) || !((o = e.selection.getStart()) === r || !Rm(e, o, t, n))); }, matchAll: function (r, o, i) { var e, a = [], u = {}; return ( (e = r.selection.getStart()), r.dom.getParent( e, function (e) { var t, n; for (t = 0; t < o.length; t++) (n = o[t]), !u[n] && Bm(r, e, n, i) && ((u[n] = !0), a.push(n)); }, r.dom.getRoot() ), a ); }, canApply: function (e, t) { var n, r, o, i, a, u = e.formatter.get(t), s = e.dom; if (u) for ( n = e.selection.getStart(), r = hc.getParents(s, n), i = u.length - 1; 0 <= i; i-- ) { if (!(a = u[i].selector) || u[i].defaultBlock) return !0; for (o = r.length - 1; 0 <= o; o--) if (s.is(r[o], a)) return !0; } return !1; }, matchesUnInheritedFormatSelector: Am, }, Pm = function (e, t) { return e.splitText(t); }, Im = function (e) { var t = e.startContainer, n = e.startOffset, r = e.endContainer, o = e.endOffset; return ( t === r && Po.isText(t) ? 0 < n && n < t.nodeValue.length && ((t = (r = Pm(t, n)).previousSibling), n < o ? ((t = r = Pm(r, (o -= n)).previousSibling), (o = r.nodeValue.length), (n = 0)) : (o = 0)) : (Po.isText(t) && 0 < n && n < t.nodeValue.length && ((t = Pm(t, n)), (n = 0)), Po.isText(r) && 0 < o && o < r.nodeValue.length && (o = (r = Pm(r, o).previousSibling).nodeValue.length)), { startContainer: t, startOffset: n, endContainer: r, endOffset: o } ); }, Lm = ma, Mm = "_mce_caret", Fm = function (e) { return ( 0 < (function (e) { for (var t = []; e; ) { if ( (3 === e.nodeType && e.nodeValue !== Lm) || 1 < e.childNodes.length ) return []; 1 === e.nodeType && t.push(e), (e = e.firstChild); } return t; })(e).length ); }, zm = function (e) { var t; if (e) for (e = (t = new ao(e, e)).current(); e; e = t.next()) if (3 === e.nodeType) return e; return null; }, Um = function (e) { var t = ir.fromTag("span"); return ( Cr(t, { id: Mm, "data-mce-bogus": "1", "data-mce-type": "format-caret", }), e && _i(t, ir.fromText(Lm)), t ); }, Vm = function (e, t, n) { void 0 === n && (n = !0); var r, o = e.dom, i = e.selection; if (Fm(t)) Qf(e, !1, ir.fromDom(t), n); else { var a = i.getRng(), u = o.getParent(t, o.isBlock), s = ((r = zm(t)) && r.nodeValue.charAt(0) === Lm && r.deleteData(0, 1), r); a.startContainer === s && 0 < a.startOffset && a.setStart(s, a.startOffset - 1), a.endContainer === s && 0 < a.endOffset && a.setEnd(s, a.endOffset - 1), o.remove(t, !0), u && o.isEmpty(u) && Gc(ir.fromDom(u)), i.setRng(a); } }, Hm = function (e, t, n) { void 0 === n && (n = !0); var r = e.dom, o = e.selection; if (t) Vm(e, t, n); else if (!(t = qu(e.getBody(), o.getStart()))) for (; (t = r.get(Mm)); ) Vm(e, t, !1); }, jm = function (e, t, n) { var r = e.dom, o = r.getParent(n, d(hc.isTextBlock, e)); o && r.isEmpty(o) ? n.parentNode.replaceChild(t, n) : (Yc(ir.fromDom(n)), r.isEmpty(n) ? n.parentNode.replaceChild(t, n) : r.insertAfter(t, n)); }, qm = function (e, t) { return e.appendChild(t), t; }, $m = function (e, t) { var n, r, o = ((n = function (e, t) { return qm(e, t.cloneNode(!1)); }), (r = t), (function (e, t) { for (var n = e.length - 1; 0 <= n; n--) t(e[n], n, e); })(e, function (e) { r = n(r, e); }), r); return qm(o, o.ownerDocument.createTextNode(Lm)); }, Wm = function (i) { i.on("mouseup keydown", function (e) { var t, n, r, o; (t = i), (n = e.keyCode), (r = t.selection), (o = t.getBody()), Hm(t, null, !1), (8 !== n && 46 !== n) || !r.isCollapsed() || r.getStart().innerHTML !== Lm || Hm(t, qu(o, r.getStart())), (37 !== n && 39 !== n) || Hm(t, qu(o, r.getStart())); }); }, Km = function (e, t) { return ( e.schema.getTextInlineElements().hasOwnProperty(cr(t)) && !ju(t.dom()) && !Po.isBogus(t.dom()) ); }, Xm = function (e) { return 1 === qr(e).length; }, Ym = function (e, t, n, r) { var o, i, a, u, s = d(Km, t), c = W(V(r, s), function (e) { return e.dom(); }); if (0 === c.length) Qf(t, e, n); else { var l = ((o = n.dom()), (i = c), (a = Um(!1)), (u = $m(i, a.dom())), Ti(ir.fromDom(o), a), Oi(ir.fromDom(o)), Cu(u, 0)); t.selection.setRng(l.toRange()); } }, Gm = function (r, o) { var t, e = ir.fromDom(r.getBody()), n = ir.fromDom(r.selection.getStart()), i = V( ((t = ef(n, e)), G(t, mo).fold(q(t), function (e) { return t.slice(0, e); })), Xm ); return re(i) .map(function (e) { var t, n = Cu.fromRangeStart(r.selection.getRng()); return !( !zl(o, n, e.dom()) || (ju((t = e).dom()) && Fm(t.dom())) || (Ym(o, r, e, i), 0) ); }) .getOr(!1); }, Jm = function (e, t) { return !!e.selection.isCollapsed() && Gm(e, t); }, Qm = Po.isContentEditableTrue, Zm = Po.isContentEditableFalse, eg = function (e, t, n, r, o) { return t._selectionOverrides.showCaret(e, n, r, o); }, tg = function (e, t) { var n, r; return e.fire("BeforeObjectSelected", { target: t }).isDefaultPrevented() ? null : ((r = (n = t).ownerDocument.createRange()).selectNode(n), r); }, ng = function (e, t, n) { var r = Es(1, e.getBody(), t), o = Cu.fromRangeStart(r), i = o.getNode(); if (Zm(i)) return eg(1, e, i, !o.isAtEnd(), !1); var a = o.getNode(!0); if (Zm(a)) return eg(1, e, a, !1, !1); var u = e.dom.getParent(o.getNode(), function (e) { return Zm(e) || Qm(e); }); return Zm(u) ? eg(1, e, u, !1, n) : null; }, rg = function (e, t, n) { if (!t || !t.collapsed) return t; var r = ng(e, t, n); return r || t; }, og = function (e, t, n, r, o, i) { var a, u, s = eg(r, e, i.getNode(!o), o, !0); if (t.collapsed) { var c = t.cloneRange(); o ? c.setEnd(s.startContainer, s.startOffset) : c.setStart(s.endContainer, s.endOffset), c.deleteContents(); } else t.deleteContents(); return ( e.selection.setRng(s), (a = e.dom), (u = n), Po.isText(u) && 0 === u.data.length && a.remove(u), !0 ); }, ig = function (e, t) { return (function (e, t) { var n = e.selection.getRng(); if (!Po.isText(n.commonAncestorContainer)) return !1; var r = t ? bu.Forwards : bu.Backwards, o = $s(e.getBody()), i = d(As, o.next), a = d(As, o.prev), u = t ? i : a, s = t ? _f : Df, c = ks(r, e.getBody(), n), l = Ll.normalizePosition(t, u(c)); if (!l) return !1; if (s(l)) return og(e, n, c.getNode(), r, t, l); var f = u(l); return !!(f && s(f) && Rs(l, f)) && og(e, n, c.getNode(), r, t, f); })(e, t); }, ag = function (e, t) { e.getDoc().execCommand(t, !1, null); }, ug = function (e) { td(e, !1) || ig(e, !1) || Kd(e, !1) || lf(e, !1) || km(e) || gf(e, !1) || Jm(e, !1) || (ag(e, "Delete"), Fl(e)); }, sg = function (e) { td(e, !0) || ig(e, !0) || Kd(e, !0) || lf(e, !0) || km(e) || gf(e, !0) || Jm(e, !0) || ag(e, "ForwardDelete"); }, cg = function (o, t, e) { var n = function (e) { return ( (t = o), (n = e.dom()), (r = Sr(n, t)), A.from(r).filter(function (e) { return 0 < e.length; }) ); var t, n, r; }; return Yi( ir.fromDom(e), function (e) { return n(e).isSome(); }, function (e) { return Ir(ir.fromDom(t), e); } ).bind(n); }, lg = function (o) { return function (r, e) { return A.from(e) .map(ir.fromDom) .filter(fr) .bind(function (e) { return cg(o, r, e.dom()).or( ((t = o), (n = e.dom()), A.from(bi.DOM.getStyle(n, t, !0))) ); var t, n; }) .getOr(""); }; }, fg = { getFontSize: lg("font-size"), getFontFamily: j(function (e) { return e.replace(/[\'\"\\]/g, "").replace(/,\s+/g, ","); }, lg("font-family")), toPt: function (e, t) { return /[0-9.]+px$/.test(e) ? ((n = (72 * parseInt(e, 10)) / 96), (r = t || 0), (o = Math.pow(10, r)), Math.round(n * o) / o + "pt") : e; var n, r, o; }, }, dg = function (e) { return nc.firstPositionIn(e.getBody()).map(function (e) { var t = e.container(); return Po.isText(t) ? t.parentNode : t; }); }, mg = function (o) { return A.from(o.selection.getRng()).bind(function (e) { var t, n, r = o.getBody(); return ( (n = r), (t = e).startContainer === n && 0 === t.startOffset ? A.none() : A.from(o.selection.getStart(!0)) ); }); }, gg = function (e, t) { if (/^[0-9\.]+$/.test(t)) { var n = parseInt(t, 10); if (1 <= n && n <= 7) { var r = Nl(e), o = El(e); return o ? o[n - 1] || t : r[n - 1] || t; } return t; } return t; }, pg = function (e, t) { return ( e && t && e.startContainer === t.startContainer && e.startOffset === t.startOffset && e.endContainer === t.endContainer && e.endOffset === t.endOffset ); }, hg = function (e, t, n) { return ( null !== (function (e, t, n) { for (; e && e !== t; ) { if (n(e)) return e; e = e.parentNode; } return null; })(e, t, n) ); }, vg = function (e, t, n) { return hg(e, t, function (e) { return e.nodeName === n; }); }, bg = function (e) { return e && "TABLE" === e.nodeName; }, yg = function (e, t, n) { for ( var r = new ao(t, e.getParent(t.parentNode, e.isBlock) || e.getRoot()); (t = r[n ? "prev" : "next"]()); ) if (Po.isBr(t)) return !0; }, Cg = function (e, t, n, r, o) { var i, a, u, s, c, l, f = e.getRoot(), d = e.schema.getNonEmptyElements(); if ( ((u = e.getParent(o.parentNode, e.isBlock) || f), r && Po.isBr(o) && t && e.isEmpty(u)) ) return A.some(vu(o.parentNode, e.nodeIndex(o))); for (i = new ao(o, u); (s = i[r ? "prev" : "next"]()); ) { if ( "false" === e.getContentEditableParent(s) || ((l = f), ya((c = s)) && !1 === hg(c, l, ju)) ) return A.none(); if (Po.isText(s) && 0 < s.nodeValue.length) return !1 === vg(s, f, "A") ? A.some(vu(s, r ? s.nodeValue.length : 0)) : A.none(); if (e.isBlock(s) || d[s.nodeName.toLowerCase()]) return A.none(); a = s; } return n && a ? A.some(vu(a, 0)) : A.none(); }, xg = function (e, t, n, r) { var o, i, a, u, s, c, l, f, d, m, g = e.getRoot(), p = !1; if ( ((o = r[(n ? "start" : "end") + "Container"]), (i = r[(n ? "start" : "end") + "Offset"]), (l = Po.isElement(o) && i === o.childNodes.length), (s = e.schema.getNonEmptyElements()), (c = n), ya(o)) ) return A.none(); if ( (Po.isElement(o) && i > o.childNodes.length - 1 && (c = !1), Po.isDocument(o) && ((o = g), (i = 0)), o === g) ) { if (c && (u = o.childNodes[0 < i ? i - 1 : 0])) { if (ya(u)) return A.none(); if (s[u.nodeName] || bg(u)) return A.none(); } if (o.hasChildNodes()) { if ( ((i = Math.min(!c && 0 < i ? i - 1 : i, o.childNodes.length - 1)), (o = o.childNodes[i]), (i = Po.isText(o) && l ? o.data.length : 0), !t && o === g.lastChild && bg(o)) ) return A.none(); if ( (function (e, t) { for (; t && t !== e; ) { if (Po.isContentEditableFalse(t)) return !0; t = t.parentNode; } return !1; })(g, o) || ya(o) ) return A.none(); if (o.hasChildNodes() && !1 === bg(o)) { a = new ao((u = o), g); do { if (Po.isContentEditableFalse(u) || ya(u)) { p = !1; break; } if (Po.isText(u) && 0 < u.nodeValue.length) { (i = c ? 0 : u.nodeValue.length), (o = u), (p = !0); break; } if ( s[u.nodeName.toLowerCase()] && (!(f = u) || !/^(TD|TH|CAPTION)$/.test(f.nodeName)) ) { (i = e.nodeIndex(u)), (o = u.parentNode), c || i++, (p = !0); break; } } while ((u = c ? a.next() : a.prev())); } } } return ( t && (Po.isText(o) && 0 === i && Cg(e, l, t, !0, o).each(function (e) { (o = e.container()), (i = e.offset()), (p = !0); }), Po.isElement(o) && ((u = o.childNodes[i]) || (u = o.childNodes[i - 1]), !u || !Po.isBr(u) || ((m = "A"), (d = u).previousSibling && d.previousSibling.nodeName === m) || yg(e, u, !1) || yg(e, u, !0) || Cg(e, l, t, !0, u).each(function (e) { (o = e.container()), (i = e.offset()), (p = !0); }))), c && !t && Po.isText(o) && i === o.nodeValue.length && Cg(e, l, t, !1, o).each(function (e) { (o = e.container()), (i = e.offset()), (p = !0); }), p ? A.some(vu(o, i)) : A.none() ); }, wg = function (e, t) { var n = t.collapsed, r = t.cloneRange(), o = vu.fromRangeStart(t); return ( xg(e, n, !0, r).each(function (e) { (n && vu.isAbove(o, e)) || r.setStart(e.container(), e.offset()); }), n || xg(e, n, !1, r).each(function (e) { r.setEnd(e.container(), e.offset()); }), n && r.collapse(!0), pg(t, r) ? A.none() : A.some(r) ); }, Ng = function (e, t, n) { var r = e.create("span", {}, " "); n.parentNode.insertBefore(r, n), t.scrollIntoView(r), e.remove(r); }, Eg = function (e, t, n, r) { var o = e.createRng(); r ? (o.setStartBefore(n), o.setEndBefore(n)) : (o.setStartAfter(n), o.setEndAfter(n)), t.setRng(o); }, Sg = function (e, t) { var n, r, o = e.selection, i = e.dom, a = o.getRng(); wg(i, a).each(function (e) { a.setStart(e.startContainer, e.startOffset), a.setEnd(e.endContainer, e.endOffset); }); var u = a.startOffset, s = a.startContainer; if (1 === s.nodeType && s.hasChildNodes()) { var c = u > s.childNodes.length - 1; (s = s.childNodes[Math.min(u, s.childNodes.length - 1)] || s), (u = c && 3 === s.nodeType ? s.nodeValue.length : 0); } var l = i.getParent(s, i.isBlock), f = l ? i.getParent(l.parentNode, i.isBlock) : null, d = f ? f.nodeName.toUpperCase() : "", m = t && t.ctrlKey; "LI" !== d || m || (l = f), s && 3 === s.nodeType && u >= s.nodeValue.length && ((function (e, t, n) { for ( var r, o = new ao(t, n), i = e.getNonEmptyElements(); (r = o.next()); ) if (i[r.nodeName.toLowerCase()] || 0 < r.length) return !0; })(e.schema, s, l) || ((n = i.create("br")), a.insertNode(n), a.setStartAfter(n), a.setEndAfter(n), (r = !0))), (n = i.create("br")), Du(i, a, n), Ng(i, o, n), Eg(i, o, n, r), e.undoManager.add(); }, kg = function (e, t) { var n = ir.fromTag("br"); Ti(ir.fromDom(t), n), e.undoManager.add(); }, Tg = function (e, t) { Ag(e.getBody(), t) || Ai(ir.fromDom(t), ir.fromTag("br")); var n = ir.fromTag("br"); Ai(ir.fromDom(t), n), Ng(e.dom, e.selection, n.dom()), Eg(e.dom, e.selection, n.dom(), !1), e.undoManager.add(); }, Ag = function (e, t) { return ( (n = Cu.after(t)), !!Po.isBr(n.getNode()) || nc .nextPosition(e, Cu.after(t)) .map(function (e) { return Po.isBr(e.getNode()); }) .getOr(!1) ); var n; }, Rg = function (e) { return e && "A" === e.nodeName && "href" in e; }, _g = function (e) { return e.fold(q(!1), Rg, Rg, q(!1)); }, Dg = function (e, t) { t.fold(o, d(kg, e), d(Tg, e), o); }, Bg = function (e, t) { var n, r, o, i = ((n = e), (r = d(Ll.isInlineTarget, n)), (o = Cu.fromRangeStart(n.selection.getRng())), Dd(r, n.getBody(), o).filter(_g)); i.isSome() ? i.each(d(Dg, e)) : Sg(e, t); }, Og = { create: kr("start", "soffset", "finish", "foffset") }, Pg = pf([ { before: ["element"] }, { on: ["element", "offset"] }, { after: ["element"] }, ]), Ig = (Pg.before, Pg.on, Pg.after, function (e) { return e.fold($, $, $); }), Lg = pf([ { domRange: ["rng"] }, { relative: ["startSitu", "finishSitu"] }, { exact: ["start", "soffset", "finish", "foffset"] }, ]), Mg = { domRange: Lg.domRange, relative: Lg.relative, exact: Lg.exact, exactFromRange: function (e) { return Lg.exact(e.start(), e.soffset(), e.finish(), e.foffset()); }, getWin: function (e) { var t = e.match({ domRange: function (e) { return ir.fromDom(e.startContainer); }, relative: function (e, t) { return Ig(e); }, exact: function (e, t, n, r) { return e; }, }); return Fr(t); }, range: Og.create, }, Fg = rr.detect().browser, zg = function (e, t) { var n = dr(t) ? Bc(t).length : qr(t).length + 1; return n < e ? n : e < 0 ? 0 : e; }, Ug = function (e) { return Mg.range( e.start(), zg(e.soffset(), e.start()), e.finish(), zg(e.foffset(), e.finish()) ); }, Vg = function (e, t) { return !Po.isRestrictedNode(t.dom()) && (Lr(e, t) || Ir(e, t)); }, Hg = function (t) { return function (e) { return Vg(t, e.start()) && Vg(t, e.finish()); }; }, jg = function (e) { return !0 === e.inline || Fg.isIE(); }, qg = function (e) { return Mg.range( ir.fromDom(e.startContainer), e.startOffset, ir.fromDom(e.endContainer), e.endOffset ); }, $g = function (e) { var t = e.getSelection(); return (t && 0 !== t.rangeCount ? A.from(t.getRangeAt(0)) : A.none()).map( qg ); }, Wg = function (e) { var t = Fr(e); return $g(t.dom()).filter(Hg(e)); }, Kg = function (e, t) { return A.from(t).filter(Hg(e)).map(Ug); }, Xg = function (e) { var t = H.document.createRange(); try { return ( t.setStart(e.start().dom(), e.soffset()), t.setEnd(e.finish().dom(), e.foffset()), A.some(t) ); } catch (n) { return A.none(); } }, Yg = function (e) { return (e.bookmark ? e.bookmark : A.none()) .bind(d(Kg, ir.fromDom(e.getBody()))) .bind(Xg); }, Gg = function (e) { var t = jg(e) ? Wg(ir.fromDom(e.getBody())) : A.none(); e.bookmark = t.isSome() ? t : e.bookmark; }, Jg = function (t) { Yg(t).each(function (e) { t.selection.setRng(e); }); }, Qg = Yg, Zg = function (e) { return vo(e) || bo(e); }, ep = function (e) { return V(W(e.selection.getSelectedBlocks(), ir.fromDom), function (e) { return !Zg(e) && !zr(e).map(Zg).getOr(!1); }); }, tp = function (e, t) { var n = e.settings, r = e.dom, o = e.selection, i = e.formatter, a = /[a-z%]+$/i.exec(n.indentation)[0], u = parseInt(n.indentation, 10), s = e.getParam("indent_use_margin", !1); e.queryCommandState("InsertUnorderedList") || e.queryCommandState("InsertOrderedList") || n.forced_root_block || r.getParent(o.getNode(), r.isBlock) || i.apply("div"), U(ep(e), function (e) { !(function (e, t, n, r, o, i) { if ("false" !== e.getContentEditable(i)) { var a = n ? "margin" : "padding"; if ( ((a = "TABLE" === i.nodeName ? "margin" : a), (a += "rtl" === e.getStyle(i, "direction", !0) ? "Right" : "Left"), "outdent" === t) ) { var u = Math.max(0, parseInt(i.style[a] || 0, 10) - r); e.setStyle(i, a, u ? u + o : ""); } else (u = parseInt(i.style[a] || 0, 10) + r + o), e.setStyle(i, a, u); } })(r, t, s, u, a, e.dom()); }); }, np = Jt.each, rp = Jt.extend, op = Jt.map, ip = Jt.inArray; function ap(s) { var o, i, a, t, c = { state: {}, exec: {}, value: {} }, n = s.settings; s.on("PreInit", function () { (o = s.dom), (i = s.selection), (n = s.settings), (a = s.formatter); }); var r = function (e) { var t; if (!s.quirks.isHidden() && !s.removed) { if (((e = e.toLowerCase()), (t = c.state[e]))) return t(e); try { return s.getDoc().queryCommandState(e); } catch (n) {} return !1; } }, e = function (e, n) { (n = n || "exec"), np(e, function (t, e) { np(e.toLowerCase().split(","), function (e) { c[n][e] = t; }); }); }, u = function (e, t, n) { (e = e.toLowerCase()), (c.value[e] = function () { return t.call(n || s); }); }; rp(this, { execCommand: function (t, n, r, e) { var o, i, a = !1; if (!s.removed) { if ( (/^(mceAddUndoLevel|mceEndUndoLevel|mceBeginUndoLevel|mceRepaint)$/.test( t ) || (e && e.skip_focus) ? Jg(s) : s.focus(), (e = s.fire("BeforeExecCommand", { command: t, ui: n, value: r, })).isDefaultPrevented()) ) return !1; if (((i = t.toLowerCase()), (o = c.exec[i]))) return ( o(i, n, r), s.fire("ExecCommand", { command: t, ui: n, value: r }), !0 ); if ( (np(s.plugins, function (e) { if (e.execCommand && e.execCommand(t, n, r)) return ( s.fire("ExecCommand", { command: t, ui: n, value: r }), !(a = !0) ); }), a) ) return a; if (s.theme && s.theme.execCommand && s.theme.execCommand(t, n, r)) return s.fire("ExecCommand", { command: t, ui: n, value: r }), !0; try { a = s.getDoc().execCommand(t, n, r); } catch (u) {} return ( !!a && (s.fire("ExecCommand", { command: t, ui: n, value: r }), !0) ); } }, queryCommandState: r, queryCommandValue: function (e) { var t; if (!s.quirks.isHidden() && !s.removed) { if (((e = e.toLowerCase()), (t = c.value[e]))) return t(e); try { return s.getDoc().queryCommandValue(e); } catch (n) {} } }, queryCommandSupported: function (e) { if (((e = e.toLowerCase()), c.exec[e])) return !0; try { return s.getDoc().queryCommandSupported(e); } catch (t) {} return !1; }, addCommands: e, addCommand: function (e, o, i) { (e = e.toLowerCase()), (c.exec[e] = function (e, t, n, r) { return o.call(i || s, t, n, r); }); }, addQueryStateHandler: function (e, t, n) { (e = e.toLowerCase()), (c.state[e] = function () { return t.call(n || s); }); }, addQueryValueHandler: u, hasCustomCommand: function (e) { return (e = e.toLowerCase()), !!c.exec[e]; }, }); var l = function (e, t, n) { return ( t === undefined && (t = !1), n === undefined && (n = null), s.getDoc().execCommand(e, t, n) ); }, f = function (e) { return a.match(e); }, d = function (e, t) { a.toggle(e, t ? { value: t } : undefined), s.nodeChanged(); }, m = function (e) { t = i.getBookmark(e); }, g = function () { i.moveToBookmark(t); }; e({ "mceResetDesignMode,mceBeginUndoLevel": function () {}, "mceEndUndoLevel,mceAddUndoLevel": function () { s.undoManager.add(); }, "Cut,Copy,Paste": function (e) { var t, n = s.getDoc(); try { l(e); } catch (o) { t = !0; } if ( ("paste" !== e || n.queryCommandEnabled(e) || (t = !0), t || !n.queryCommandSupported(e)) ) { var r = s.translate( "Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X/C/V keyboard shortcuts instead." ); ge.mac && (r = r.replace(/Ctrl\+/g, "\u2318+")), s.notificationManager.open({ text: r, type: "error" }); } }, unlink: function () { if (i.isCollapsed()) { var e = s.dom.getParent(s.selection.getStart(), "a"); e && s.dom.remove(e, !0); } else a.remove("link"); }, "JustifyLeft,JustifyCenter,JustifyRight,JustifyFull,JustifyNone": function (e) { var t = e.substring(7); "full" === t && (t = "justify"), np("left,center,right,justify".split(","), function (e) { t !== e && a.remove("align" + e); }), "none" !== t && d("align" + t); }, "InsertUnorderedList,InsertOrderedList": function (e) { var t, n; l(e), (t = o.getParent(i.getNode(), "ol,ul")) && ((n = t.parentNode), /^(H[1-6]|P|ADDRESS|PRE)$/.test(n.nodeName) && (m(), o.split(n, t), g())); }, "Bold,Italic,Underline,Strikethrough,Superscript,Subscript": function ( e ) { d(e); }, "ForeColor,HiliteColor": function (e, t, n) { d(e, n); }, FontName: function (e, t, n) { var r, o; (o = n), (r = s).formatter.toggle("fontname", { value: gg(r, o) }), r.nodeChanged(); }, FontSize: function (e, t, n) { var r, o; (o = n), (r = s).formatter.toggle("fontsize", { value: gg(r, o) }), r.nodeChanged(); }, RemoveFormat: function (e) { a.remove(e); }, mceBlockQuote: function () { d("blockquote"); }, FormatBlock: function (e, t, n) { return d(n || "p"); }, mceCleanup: function () { var e = i.getBookmark(); s.setContent(s.getContent()), i.moveToBookmark(e); }, mceRemoveNode: function (e, t, n) { var r = n || i.getNode(); r !== s.getBody() && (m(), s.dom.remove(r, !0), g()); }, mceSelectNodeDepth: function (e, t, n) { var r = 0; o.getParent( i.getNode(), function (e) { if (1 === e.nodeType && r++ === n) return i.select(e), !1; }, s.getBody() ); }, mceSelectNode: function (e, t, n) { i.select(n); }, mceInsertContent: function (e, t, n) { ul(s, n); }, mceInsertRawHTML: function (e, t, n) { i.setContent("tiny_mce_marker"); var r = s.getContent(); s.setContent( r.replace(/tiny_mce_marker/g, function () { return n; }) ); }, mceToggleFormat: function (e, t, n) { d(n); }, mceSetContent: function (e, t, n) { s.setContent(n); }, "Indent,Outdent": function (e) { tp(s, e); }, mceRepaint: function () {}, InsertHorizontalRule: function () { s.execCommand("mceInsertContent", !1, "
"); }, mceToggleVisualAid: function () { (s.hasVisual = !s.hasVisual), s.addVisual(); }, mceReplaceContent: function (e, t, n) { s.execCommand( "mceInsertContent", !1, n.replace(/\{\$selection\}/g, i.getContent({ format: "text" })) ); }, mceInsertLink: function (e, t, n) { var r; "string" == typeof n && (n = { href: n }), (r = o.getParent(i.getNode(), "a")), (n.href = n.href.replace(" ", "%20")), (r && n.href) || a.remove("link"), n.href && a.apply("link", n, r); }, selectAll: function () { var e = o.getParent(i.getStart(), Po.isContentEditableTrue); if (e) { var t = o.createRng(); t.selectNodeContents(e), i.setRng(t); } }, delete: function () { ug(s); }, forwardDelete: function () { sg(s); }, mceNewDocument: function () { s.setContent(""); }, InsertLineBreak: function (e, t, n) { return Bg(s, n), !0; }, }); var p = function (n) { return function () { var e = i.isCollapsed() ? [o.getParent(i.getNode(), o.isBlock)] : i.getSelectedBlocks(), t = op(e, function (e) { return !!a.matchNode(e, n); }); return -1 !== ip(t, !0); }; }; e( { JustifyLeft: p("alignleft"), JustifyCenter: p("aligncenter"), JustifyRight: p("alignright"), JustifyFull: p("alignjustify"), "Bold,Italic,Underline,Strikethrough,Superscript,Subscript": function ( e ) { return f(e); }, mceBlockQuote: function () { return f("blockquote"); }, Outdent: function () { var e; if (n.inline_styles) { if ( (e = o.getParent(i.getStart(), o.isBlock)) && 0 < parseInt(e.style.paddingLeft, 10) ) return !0; if ( (e = o.getParent(i.getEnd(), o.isBlock)) && 0 < parseInt(e.style.paddingLeft, 10) ) return !0; } return ( r("InsertUnorderedList") || r("InsertOrderedList") || (!n.inline_styles && !!o.getParent(i.getNode(), "BLOCKQUOTE")) ); }, "InsertUnorderedList,InsertOrderedList": function (e) { var t = o.getParent(i.getNode(), "ul,ol"); return ( t && (("insertunorderedlist" === e && "UL" === t.tagName) || ("insertorderedlist" === e && "OL" === t.tagName)) ); }, }, "state" ), e({ Undo: function () { s.undoManager.undo(); }, Redo: function () { s.undoManager.redo(); }, }), u( "FontName", function () { return mg((t = s)).fold( function () { return dg(t) .map(function (e) { return fg.getFontFamily(t.getBody(), e); }) .getOr(""); }, function (e) { return fg.getFontFamily(t.getBody(), e); } ); var t; }, this ), u( "FontSize", function () { return mg((t = s)).fold( function () { return dg(t) .map(function (e) { return fg.getFontSize(t.getBody(), e); }) .getOr(""); }, function (e) { return fg.getFontSize(t.getBody(), e); } ); var t; }, this ); } var up = Jt.makeMap( "focus blur focusin focusout click dblclick mousedown mouseup mousemove mouseover beforepaste paste cut copy selectionchange mouseout mouseenter mouseleave wheel keydown keypress keyup input contextmenu dragstart dragend dragover draggesture dragdrop drop drag submit compositionstart compositionend compositionupdate touchstart touchmove touchend", " " ), sp = function (a) { var u, s, c = this, l = {}, f = function () { return !1; }, d = function () { return !0; }; (u = (a = a || {}).scope || c), (s = a.toggleEvent || f); var r = function (e, t, n, r) { var o, i, a; if ((!1 === t && (t = f), t)) for ( t = { func: t }, r && Jt.extend(t, r), a = (i = e.toLowerCase().split(" ")).length; a--; ) (e = i[a]), (o = l[e]) || ((o = l[e] = []), s(e, !0)), n ? o.unshift(t) : o.push(t); return c; }, m = function (e, t) { var n, r, o, i, a; if (e) for (n = (i = e.toLowerCase().split(" ")).length; n--; ) { if (((e = i[n]), (r = l[e]), !e)) { for (o in l) s(o, !1), delete l[o]; return c; } if (r) { if (t) for (a = r.length; a--; ) r[a].func === t && ((r = r.slice(0, a).concat(r.slice(a + 1))), (l[e] = r)); else r.length = 0; r.length || (s(e, !1), delete l[e]); } } else { for (e in l) s(e, !1); l = {}; } return c; }; (c.fire = function (e, t) { var n, r, o, i; if ( ((e = e.toLowerCase()), ((t = t || {}).type = e), t.target || (t.target = u), t.preventDefault || ((t.preventDefault = function () { t.isDefaultPrevented = d; }), (t.stopPropagation = function () { t.isPropagationStopped = d; }), (t.stopImmediatePropagation = function () { t.isImmediatePropagationStopped = d; }), (t.isDefaultPrevented = f), (t.isPropagationStopped = f), (t.isImmediatePropagationStopped = f)), a.beforeFire && a.beforeFire(t), (n = l[e])) ) for (r = 0, o = n.length; r < o; r++) { if ( ((i = n[r]).once && m(e, i.func), t.isImmediatePropagationStopped()) ) return t.stopPropagation(), t; if (!1 === i.func.call(u, t)) return t.preventDefault(), t; } return t; }), (c.on = r), (c.off = m), (c.once = function (e, t, n) { return r(e, t, n, { once: !0 }); }), (c.has = function (e) { return (e = e.toLowerCase()), !(!l[e] || 0 === l[e].length); }); }; sp.isNative = function (e) { return !!up[e.toLowerCase()]; }; var cp, lp = function (n) { return ( n._eventDispatcher || (n._eventDispatcher = new sp({ scope: n, toggleEvent: function (e, t) { sp.isNative(e) && n.toggleNativeEvent && n.toggleNativeEvent(e, t); }, })), n._eventDispatcher ); }, fp = { fire: function (e, t, n) { if (this.removed && "remove" !== e && "detach" !== e) return t; if (((t = lp(this).fire(e, t, n)), !1 !== n && this.parent)) for (var r = this.parent(); r && !t.isPropagationStopped(); ) r.fire(e, t, !1), (r = r.parent()); return t; }, on: function (e, t, n) { return lp(this).on(e, t, n); }, off: function (e, t) { return lp(this).off(e, t); }, once: function (e, t) { return lp(this).once(e, t); }, hasEventListeners: function (e) { return lp(this).has(e); }, }, dp = function (e, t) { return e.fire("PreProcess", t); }, mp = function (e, t) { return e.fire("PostProcess", t); }, gp = function (e) { return e.fire("remove"); }, pp = function (e) { return e.fire("detach"); }, hp = function (e, t) { return e.fire("SwitchMode", { mode: t }); }, vp = function (e, t, n, r) { e.fire("ObjectResizeStart", { target: t, width: n, height: r }); }, bp = function (e, t, n, r) { e.fire("ObjectResized", { target: t, width: n, height: r }); }, yp = function (e, t, n) { try { e.getDoc().execCommand(t, !1, n); } catch (r) {} }, Cp = function (e, t, n) { var r, o; ji(e, t) && !1 === n ? ((o = t), Fi((r = e)) ? r.dom().classList.remove(o) : Ui(r, o), Hi(r)) : n && Vi(e, t); }, xp = function (e, t) { Cp(ir.fromDom(e.getBody()), "mce-content-readonly", t), t ? (e.selection.controlSelection.hideResizeRect(), (e.readonly = !0), (e.getBody().contentEditable = "false")) : ((e.readonly = !1), (e.getBody().contentEditable = "true"), yp(e, "StyleWithCSS", !1), yp(e, "enableInlineTableEditing", !1), yp(e, "enableObjectResizing", !1), e.focus(), e.nodeChanged()); }, wp = function (e) { return e.readonly ? "readonly" : "design"; }, Np = bi.DOM, Ep = function (e, t) { return "selectionchange" === t ? e.getDoc() : !e.inline && /^mouse|touch|click|contextmenu|drop|dragover|dragend/.test(t) ? e.getDoc().documentElement : e.settings.event_root ? (e.eventRoot || (e.eventRoot = Np.select(e.settings.event_root)[0]), e.eventRoot) : e.getBody(); }, Sp = function (e, t, n) { var r; (r = e).hidden || r.readonly ? !0 === e.readonly && n.preventDefault() : e.fire(t, n); }, kp = function (i, a) { var e, t; if ((i.delegates || (i.delegates = {}), !i.delegates[a] && !i.removed)) if (((e = Ep(i, a)), i.settings.event_root)) { if ( (cp || ((cp = {}), i.editorManager.on("removeEditor", function () { var e; if (!i.editorManager.activeEditor && cp) { for (e in cp) i.dom.unbind(Ep(i, e)); cp = null; } })), cp[a]) ) return; (t = function (e) { for ( var t = e.target, n = i.editorManager.get(), r = n.length; r--; ) { var o = n[r].getBody(); (o === t || Np.isChildOf(t, o)) && Sp(n[r], a, e); } }), (cp[a] = t), Np.bind(e, a, t); } else (t = function (e) { Sp(i, a, e); }), Np.bind(e, a, t), (i.delegates[a] = t); }, Tp = { bindPendingEventDelegates: function () { var t = this; Jt.each(t._pendingNativeEvents, function (e) { kp(t, e); }); }, toggleNativeEvent: function (e, t) { var n = this; "focus" !== e && "blur" !== e && (t ? n.initialized ? kp(n, e) : n._pendingNativeEvents ? n._pendingNativeEvents.push(e) : (n._pendingNativeEvents = [e]) : n.initialized && (n.dom.unbind(Ep(n, e), e, n.delegates[e]), delete n.delegates[e])); }, unbindAllNativeEvents: function () { var e, t = this, n = t.getBody(), r = t.dom; if (t.delegates) { for (e in t.delegates) t.dom.unbind(Ep(t, e), e, t.delegates[e]); delete t.delegates; } !t.inline && n && r && ((n.onload = null), r.unbind(t.getWin()), r.unbind(t.getDoc())), r && (r.unbind(n), r.unbind(t.getContainer())); }, }, Ap = (Tp = Jt.extend({}, fp, Tp)), Rp = kr("sections", "settings"), _p = rr.detect().deviceType.isTouch(), Dp = ["lists", "autolink", "autosave"], Bp = { theme: "mobile" }, Op = function (e) { var t = D(e) ? e.join(" ") : e, n = W(R(t) ? t.split(" ") : [], Yn); return V(n, function (e) { return 0 < e.length; }); }, Pp = function (n, e) { var r, o, i, t = ((r = function (e, t) { return F(n, t); }), (o = {}), (i = {}), pr(e, function (e, t) { (r(e, t) ? o : i)[t] = e; }), { t: o, f: i }); return Rp(t.t, t.f); }, Ip = function (e, t) { return e.sections().hasOwnProperty(t); }, Lp = function (e, t, n, r) { var o, i = Op(n.forced_plugins), a = Op(r.plugins), u = e && Ip(t, "mobile") ? V(a, d(F, Dp)) : a, s = ((o = u), [].concat(Op(i)).concat(Op(o))); return Jt.extend(r, { plugins: s.join(" ") }); }, Mp = function (e, t, n, r) { var o, i, a, u, s, c, l, f, d, m, g = Pp(["mobile"], r), p = Jt.extend( t, n, g.settings(), ((f = e), (m = (d = g).settings().inline), f && Ip(d, "mobile") && !m ? ((u = "mobile"), (s = Bp), (c = g.sections()), (l = c.hasOwnProperty(u) ? c[u] : {}), Jt.extend({}, s, l)) : {}), { validate: !0, content_editable: g.settings().inline, external_plugins: ((o = n), (i = g.settings()), (a = i.external_plugins ? i.external_plugins : {}), o && o.external_plugins ? Jt.extend({}, o.external_plugins, a) : a), } ); return Lp(e, g, n, p); }, Fp = function (e, t, n) { return A.from(t.settings[n]).filter(e); }, zp = function (e, t, n, r) { var o, i, a, u = t in e.settings ? e.settings[t] : n; return "hash" === r ? ((a = {}), "string" == typeof (i = u) ? U( 0 < i.indexOf("=") ? i.split(/[;,](?![^=;,]*(?:[;,]|$))/) : i.split(","), function (e) { var t = e.split("="); 1 < t.length ? (a[Jt.trim(t[0])] = Jt.trim(t[1])) : (a[Jt.trim(t[0])] = Jt.trim(t)); } ) : (a = i), a) : "string" === r ? Fp(R, e, t).getOr(n) : "number" === r ? Fp(I, e, t).getOr(n) : "boolean" === r ? Fp(O, e, t).getOr(n) : "object" === r ? Fp(_, e, t).getOr(n) : "array" === r ? Fp(D, e, t).getOr(n) : "string[]" === r ? Fp( ((o = R), function (e) { return D(e) && ee(e, o); }), e, t ).getOr(n) : "function" === r ? Fp(P, e, t).getOr(n) : u; }, Up = Jt.each, Vp = Jt.explode, Hp = { f1: 112, f2: 113, f3: 114, f4: 115, f5: 116, f6: 117, f7: 118, f8: 119, f9: 120, f10: 121, f11: 122, f12: 123, }, jp = Jt.makeMap("alt,ctrl,shift,meta,access"); function qp(i) { var a = {}, r = [], u = function (e) { var t, n, r = {}; for (n in (Up(Vp(e, "+"), function (e) { e in jp ? (r[e] = !0) : /^[0-9]{2,}$/.test(e) ? (r.keyCode = parseInt(e, 10)) : ((r.charCode = e.charCodeAt(0)), (r.keyCode = Hp[e] || e.toUpperCase().charCodeAt(0))); }), (t = [r.keyCode]), jp)) r[n] ? t.push(n) : (r[n] = !1); return ( (r.id = t.join(",")), r.access && ((r.alt = !0), ge.mac ? (r.ctrl = !0) : (r.shift = !0)), r.meta && (ge.mac ? (r.meta = !0) : ((r.ctrl = !0), (r.meta = !1))), r ); }, s = function (e, t, n, r) { var o; return ( ((o = Jt.map(Vp(e, ">"), u))[o.length - 1] = Jt.extend( o[o.length - 1], { func: n, scope: r || i } )), Jt.extend(o[0], { desc: i.translate(t), subpatterns: o.slice(1) }) ); }, o = function (e, t) { return ( !!t && t.ctrl === e.ctrlKey && t.meta === e.metaKey && t.alt === e.altKey && t.shift === e.shiftKey && !!( e.keyCode === t.keyCode || (e.charCode && e.charCode === t.charCode) ) && (e.preventDefault(), !0) ); }, c = function (e) { return e.func ? e.func.call(e.scope) : null; }; i.on("keyup keypress keydown", function (t) { var e, n; ((n = t).altKey || n.ctrlKey || n.metaKey || ("keydown" === (e = t).type && 112 <= e.keyCode && e.keyCode <= 123)) && !t.isDefaultPrevented() && (Up(a, function (e) { if (o(t, e)) return ( (r = e.subpatterns.slice(0)), "keydown" === t.type && c(e), !0 ); }), o(t, r[0]) && (1 === r.length && "keydown" === t.type && c(r[0]), r.shift())); }), (this.add = function (e, n, r, o) { var t; return ( "string" == typeof (t = r) ? (r = function () { i.execCommand(t, !1, null); }) : Jt.isArray(t) && (r = function () { i.execCommand(t[0], t[1], t[2]); }), Up(Vp(Jt.trim(e.toLowerCase())), function (e) { var t = s(e, n, r, o); a[t.id] = t; }), !0 ); }), (this.remove = function (e) { var t = s(e); return !!a[t.id] && (delete a[t.id], !0); }); } var $p = function (e) { var t = Mr(e).dom(); return e.dom() === t.activeElement; }, Wp = function (t) { return ((e = Mr(t)), (n = e !== undefined ? e.dom() : H.document), A.from(n.activeElement).map(ir.fromDom)).filter(function (e) { return t.dom().contains(e.dom()); }); var e, n; }, Kp = function (t, e) { return ((n = e), n.collapsed ? A.from(Wa(n.startContainer, n.startOffset)).map(ir.fromDom) : A.none()).bind(function (e) { return Co(e) ? A.some(e) : !1 === Lr(t, e) ? A.some(t) : A.none(); }); var n; }, Xp = function (t, e) { Kp(ir.fromDom(t.getBody()), e) .bind(function (e) { return nc.firstPositionIn(e.dom()); }) .fold( function () { t.selection.normalize(); }, function (e) { return t.selection.setRng(e.toRange()); } ); }, Yp = function (e) { if (e.setActive) try { e.setActive(); } catch (t) { e.focus(); } else e.focus(); }, Gp = function (e) { var t, n = e.getBody(); return n && ((t = ir.fromDom(n)), $p(t) || Wp(t).isSome()); }, Jp = function (e) { return e.inline ? Gp(e) : (t = e).iframeElement && $p(ir.fromDom(t.iframeElement)); var t; }, Qp = function (e) { return e.editorManager.setActive(e); }, Zp = function (e, t) { e.removed || (t ? Qp(e) : (function (t) { var e = t.selection, n = t.settings.content_editable, r = t.getBody(), o = e.getRng(); t.quirks.refreshContentEditable(); var i, a, u = ((i = t), (a = e.getNode()), i.dom.getParent(a, function (e) { return "true" === i.dom.getContentEditable(e); })); if (t.$.contains(r, u)) return Yp(u), Xp(t, o), Qp(t); t.bookmark !== undefined && !1 === Jp(t) && Qg(t).each(function (e) { t.selection.setRng(e), (o = e); }), n || (ge.opera || Yp(r), t.getWin().focus()), (ge.gecko || n) && (Yp(r), Xp(t, o)), Qp(t); })(e)); }, eh = Jp, th = function (e, t) { return t.dom()[e]; }, nh = function (e, t) { return parseInt(Er(t, e), 10); }, rh = d(th, "clientWidth"), oh = d(th, "clientHeight"), ih = d(nh, "margin-top"), ah = d(nh, "margin-left"), uh = function (e, t, n) { var r, o, i, a, u, s, c, l, f, d, m, g = ir.fromDom(e.getBody()), p = e.inline ? g : ((r = g), ir.fromDom(r.dom().ownerDocument.documentElement)), h = ((o = e.inline), (a = t), (u = n), (s = (i = p).dom().getBoundingClientRect()), { x: a - (o ? s.left + i.dom().clientLeft + ah(i) : 0), y: u - (o ? s.top + i.dom().clientTop + ih(i) : 0), }); return ( (l = h.x), (f = h.y), (d = rh((c = p))), (m = oh(c)), 0 <= l && 0 <= f && l <= d && f <= m ); }, sh = function (e) { var t, n = e.inline ? e.getBody() : e.getContentAreaContainer(); return ((t = n), A.from(t).map(ir.fromDom)) .map(function (e) { return Lr(Mr(e), e); }) .getOr(!1); }; function ch(n) { var t, o = [], i = function () { var e, t = n.theme; return t && t.getNotificationManagerImpl ? t.getNotificationManagerImpl() : { open: (e = function () { throw new Error( "Theme did not provide a NotificationManager implementation." ); }), close: e, reposition: e, getArgs: e, }; }, a = function () { 0 < o.length && i().reposition(o); }, u = function (t) { G(o, function (e) { return e === t; }).each(function (e) { o.splice(e, 1); }); }, r = function (r) { if (!n.removed && sh(n)) return Y(o, function (e) { return ( (t = i().getArgs(e)), (n = r), !( t.type !== n.type || t.text !== n.text || t.progressBar || t.timeout || n.progressBar || n.timeout ) ); var t, n; }).getOrThunk(function () { n.editorManager.setActive(n); var e, t = i().open(r, function () { u(t), a(); }); return (e = t), o.push(e), a(), t; }); }; return ( (t = n).on("SkinLoaded", function () { var e = t.settings.service_message; e && r({ text: e, type: "warning", timeout: 0, icon: "" }); }), t.on("ResizeEditor ResizeWindow", function () { ye.requestAnimationFrame(a); }), t.on("remove", function () { U(o.slice(), function (e) { i().close(e); }); }), { open: r, close: function () { A.from(o[0]).each(function (e) { i().close(e), u(e), a(); }); }, getNotifications: function () { return o; }, } ); } function lh(r) { var o = [], i = function () { var e, t = r.theme; return t && t.getWindowManagerImpl ? t.getWindowManagerImpl() : { open: (e = function () { throw new Error( "Theme did not provide a WindowManager implementation." ); }), alert: e, confirm: e, close: e, getParams: e, setParams: e, }; }, a = function (e, t) { return function () { return t ? t.apply(e, arguments) : undefined; }; }, u = function (e) { var t; o.push(e), (t = e), r.fire("OpenWindow", { win: t }); }, s = function (n) { G(o, function (e) { return e === n; }).each(function (e) { var t; o.splice(e, 1), (t = n), r.fire("CloseWindow", { win: t }), 0 === o.length && r.focus(); }); }, e = function () { return A.from(o[o.length - 1]); }; return ( r.on("remove", function () { U(o.slice(0), function (e) { i().close(e); }); }), { windows: o, open: function (e, t) { r.editorManager.setActive(r), Gg(r); var n = i().open(e, t, s); return u(n), n; }, alert: function (e, t, n) { var r = i().alert(e, a(n || this, t), s); u(r); }, confirm: function (e, t, n) { var r = i().confirm(e, a(n || this, t), s); u(r); }, close: function () { e().each(function (e) { i().close(e), s(e); }); }, getParams: function () { return e().map(i().getParams).getOr(null); }, setParams: function (t) { e().each(function (e) { i().setParams(e, t); }); }, getWindows: function () { return o; }, } ); } var fh = {}, dh = "en", mh = { setCode: function (e) { e && ((dh = e), (this.rtl = !!this.data[e] && "rtl" === this.data[e]._dir)); }, getCode: function () { return dh; }, rtl: !1, add: function (e, t) { var n = fh[e]; for (var r in (n || (fh[e] = n = {}), t)) n[r] = t[r]; this.setCode(e); }, translate: function (e) { var t = fh[dh] || {}, n = function (e) { return Jt.is(e, "function") ? Object.prototype.toString.call(e) : r(e) ? "" : "" + e; }, r = function (e) { return "" === e || null === e || Jt.is(e, "undefined"); }, o = function (e) { return (e = n(e)), Jt.hasOwn(t, e) ? n(t[e]) : e; }; if (r(e)) return ""; if (Jt.is(e, "object") && Jt.hasOwn(e, "raw")) return n(e.raw); if (Jt.is(e, "array")) { var i = e.slice(1); e = o(e[0]).replace(/\{([0-9]+)\}/g, function (e, t) { return Jt.hasOwn(i, t) ? n(i[t]) : e; }); } return o(e).replace(/{context:\w+}$/, ""); }, data: fh, }, gh = ki.PluginManager, ph = function (e, t) { var n = (function (e, t) { for (var n in gh.urls) if (gh.urls[n] + "/plugin" + t + ".js" === e) return n; return null; })(t, e.suffix); return n ? mh.translate(["Failed to load plugin: {0} from url {1}", n, t]) : mh.translate(["Failed to load plugin url: {0}", t]); }, hh = function (e, t) { e.notificationManager.open({ type: "error", text: t }); }, vh = function (e, t) { e._skinLoaded ? hh(e, t) : e.on("SkinLoaded", function () { hh(e, t); }); }, bh = function (e) { for (var t = [], n = 1; n < arguments.length; n++) t[n - 1] = arguments[n]; var r = H.window.console; r && (r.error ? r.error.apply(r, arguments) : r.log.apply(r, arguments)); }, yh = { pluginLoadError: function (e, t) { vh(e, ph(e, t)); }, pluginInitError: function (e, t, n) { var r = mh.translate(["Failed to initialize plugin: {0}", t]); bh(r, n), vh(e, r); }, uploadError: function (e, t) { vh(e, mh.translate(["Failed to upload image: {0}", t])); }, displayError: vh, initError: bh, }, Ch = ki.PluginManager, xh = ki.ThemeManager; function wh() { return new (ue.getOrDie("XMLHttpRequest"))(); } function Nh(u, s) { var r = {}, n = function (e, r, o, t) { var i, n; (i = wh()).open("POST", s.url), (i.withCredentials = s.credentials), (i.upload.onprogress = function (e) { t((e.loaded / e.total) * 100); }), (i.onerror = function () { o( "Image upload failed due to a XHR Transport error. Code: " + i.status ); }), (i.onload = function () { var e, t, n; i.status < 200 || 300 <= i.status ? o("HTTP Error: " + i.status) : (e = JSON.parse(i.responseText)) && "string" == typeof e.location ? r( ((t = s.basePath), (n = e.location), t ? t.replace(/\/$/, "") + "/" + n.replace(/^\//, "") : n) ) : o("Invalid JSON: " + i.responseText); }), (n = new H.FormData()).append("file", e.blob(), e.filename()), i.send(n); }, c = function (e, t) { return { url: t, blobInfo: e, status: !0 }; }, l = function (e, t) { return { url: "", blobInfo: e, status: !1, error: t }; }, f = function (e, t) { Jt.each(r[e], function (e) { e(t); }), delete r[e]; }, o = function (e, n) { return ( (e = Jt.grep(e, function (e) { return !u.isUploaded(e.blobUri()); })), pe.all( Jt.map(e, function (e) { return u.isPending(e.blobUri()) ? ((t = e.blobUri()), new pe(function (e) { (r[t] = r[t] || []), r[t].push(e); })) : ((o = e), (i = s.handler), (a = n), u.markPending(o.blobUri()), new pe(function (t) { var n; try { var r = function () { n && n.close(); }; i( o, function (e) { r(), u.markUploaded(o.blobUri(), e), f(o.blobUri(), c(o, e)), t(c(o, e)); }, function (e) { r(), u.removeFailed(o.blobUri()), f(o.blobUri(), l(o, e)), t(l(o, e)); }, function (e) { e < 0 || 100 < e || (n || (n = a()), n.progressBar.value(e)); } ); } catch (e) { t(l(o, e.message)); } })); var o, i, a, t; }) ) ); }; return ( !1 === P(s.handler) && (s.handler = n), { upload: function (e, t) { return s.url || s.handler !== n ? o(e, t) : new pe(function (e) { e([]); }); }, } ); } var Eh = function (e) { return ue.getOrDie("atob")(e); }, Sh = function (e) { var t, n, r = decodeURIComponent(e).split(","); return ( (n = /data:([^;]+)/.exec(r[0])) && (t = n[1]), { type: t, data: r[1] } ); }, kh = function (a) { return new pe(function (e) { var t, n, r, o, i = Sh(a); try { t = Eh(i.data); } catch (ZN) { return void e(new H.Blob([])); } for ( o = t.length, n = new (ue.getOrDie("Uint8Array"))(o), r = 0; r < n.length; r++ ) n[r] = t.charCodeAt(r); e(new H.Blob([n], { type: i.type })); }); }, Th = function (e) { return 0 === e.indexOf("blob:") ? ((i = e), new pe(function (e, t) { var n = function () { t( "Cannot convert " + i + " to Blob. Resource might not exist or is inaccessible." ); }; try { var r = wh(); r.open("GET", i, !0), (r.responseType = "blob"), (r.onload = function () { 200 === this.status ? e(this.response) : n(); }), (r.onerror = n), r.send(); } catch (o) { n(); } })) : 0 === e.indexOf("data:") ? kh(e) : null; var i; }, Ah = function (n) { return new pe(function (e) { var t = new (ue.getOrDie("FileReader"))(); (t.onloadend = function () { e(t.result); }), t.readAsDataURL(n); }); }, Rh = Sh, _h = 0, Dh = function (e) { return (e || "blobid") + _h++; }, Bh = function (n, r, o, t) { var i, a; 0 !== r.src.indexOf("blob:") ? ((i = Rh(r.src).data), (a = n.findFirst(function (e) { return e.base64() === i; })) ? o({ image: r, blobInfo: a }) : Th(r.src).then( function (e) { (a = n.create(Dh(), e, i)), n.add(a), o({ image: r, blobInfo: a }); }, function (e) { t(e); } )) : (a = n.getByUri(r.src)) ? o({ image: r, blobInfo: a }) : Th(r.src).then( function (t) { Ah(t).then(function (e) { (i = Rh(e).data), (a = n.create(Dh(), t, i)), n.add(a), o({ image: r, blobInfo: a }); }); }, function (e) { t(e); } ); }, Oh = function (e) { return e ? oe(e.getElementsByTagName("img")) : []; }, Ph = 0, Ih = { uuid: function (e) { return ( e + Ph++ + ((t = function () { return Math.round(4294967295 * Math.random()).toString(36); }), "s" + new Date().getTime().toString(36) + t() + t() + t()) ); var t; }, }; function Lh(u) { var n, o, t, e, i, r, a, s, c, l = ((n = []), (o = function (e) { var t, n, r; if (!e.blob || !e.base64) throw new Error( "blob and base64 representations of the image are required for BlobInfo to be created" ); return ( (t = e.id || Ih.uuid("blobid")), (n = e.name || t), { id: q(t), name: q(n), filename: q( n + "." + ((r = e.blob.type), { "image/jpeg": "jpg", "image/jpg": "jpg", "image/gif": "gif", "image/png": "png", }[r.toLowerCase()] || "dat") ), blob: q(e.blob), base64: q(e.base64), blobUri: q(e.blobUri || ce.createObjectURL(e.blob)), uri: q(e.uri), } ); }), { create: function (e, t, n, r) { if (R(e)) return o({ id: e, name: r, blob: t, base64: n }); if (_(e)) return o(e); throw new Error("Unknown input type"); }, add: function (e) { t(e.id()) || n.push(e); }, get: (t = function (t) { return e(function (e) { return e.id() === t; }); }), getByUri: function (t) { return e(function (e) { return e.blobUri() === t; }); }, findFirst: (e = function (e) { return V(n, e)[0]; }), removeByUri: function (t) { n = V(n, function (e) { return e.blobUri() !== t || (ce.revokeObjectURL(e.blobUri()), !1); }); }, destroy: function () { U(n, function (e) { ce.revokeObjectURL(e.blobUri()); }), (n = []); }, }), f = ((a = {}), (s = function (e, t) { return { status: e, resultUri: t }; }), { hasBlobUri: (c = function (e) { return e in a; }), getResultUri: function (e) { var t = a[e]; return t ? t.resultUri : null; }, isPending: function (e) { return !!c(e) && 1 === a[e].status; }, isUploaded: function (e) { return !!c(e) && 2 === a[e].status; }, markPending: function (e) { a[e] = s(1, null); }, markUploaded: function (e, t) { a[e] = s(2, t); }, removeFailed: function (e) { delete a[e]; }, destroy: function () { a = {}; }, }), d = [], m = function (t) { return function (e) { return u.selection ? t(e) : []; }; }, g = function (e, t, n) { for ( var r = 0; -1 !== (r = e.indexOf(t, r)) && ((e = e.substring(0, r) + n + e.substr(r + t.length)), (r += n.length - t.length + 1)), -1 !== r; ); return e; }, p = function (e, t, n) { return ( (e = g(e, 'src="' + t + '"', 'src="' + n + '"')), (e = g(e, 'data-mce-src="' + t + '"', 'data-mce-src="' + n + '"')) ); }, h = function (t, n) { U(u.undoManager.data, function (e) { "fragmented" === e.type ? (e.fragments = W(e.fragments, function (e) { return p(e, t, n); })) : (e.content = p(e.content, t, n)); }); }, v = function () { return u.notificationManager.open({ text: u.translate("Image uploading..."), type: "info", timeout: -1, progressBar: !0, }); }, b = function (e, t) { l.removeByUri(e.src), h(e.src, t), u .$(e) .attr({ src: Tl(u) ? t + "?" + new Date().getTime() : t, "data-mce-src": u.convertURL(t, "src"), }); }, y = function (n) { return ( i || (i = Nh(f, { url: Rl(u), basePath: _l(u), credentials: Dl(u), handler: Bl(u), })), w().then( m(function (r) { var e; return ( (e = W(r, function (e) { return e.blobInfo; })), i.upload(e, v).then( m(function (e) { var t = W(e, function (e, t) { var n = r[t].image; return ( e.status && Al(u) ? b(n, e.url) : e.error && yh.uploadError(u, e.error), { element: n, status: e.status } ); }); return n && n(t), t; }) ) ); }) ) ); }, C = function (e) { if (kl(u)) return y(e); }, x = function (t) { return ( !1 !== ee(d, function (e) { return e(t); }) && (0 !== t.getAttribute("src").indexOf("data:") || Sl(u)(t)) ); }, w = function () { var o, i, a; return ( r || ((o = f), (i = l), (a = {}), (r = { findAll: function (e, n) { var t; n || (n = q(!0)), (t = V(Oh(e), function (e) { var t = e.src; return ( !!ge.fileApi && !e.hasAttribute("data-mce-bogus") && !e.hasAttribute("data-mce-placeholder") && !(!t || t === ge.transparentSrc) && (0 === t.indexOf("blob:") ? !o.isUploaded(t) && n(e) : 0 === t.indexOf("data:") && n(e)) ); })); var r = W(t, function (n) { if (a[n.src]) return new pe(function (t) { a[n.src].then(function (e) { if ("string" == typeof e) return e; t({ image: n, blobInfo: e.blobInfo }); }); }); var e = new pe(function (e, t) { Bh(i, n, e, t); }) .then(function (e) { return delete a[e.image.src], e; }) ["catch"](function (e) { return delete a[n.src], e; }); return (a[n.src] = e); }); return pe.all(r); }, })), r.findAll(u.getBody(), x).then( m(function (e) { return ( (e = V(e, function (e) { return "string" != typeof e || (yh.displayError(u, e), !1); })), U(e, function (e) { h(e.image.src, e.blobInfo.blobUri()), (e.image.src = e.blobInfo.blobUri()), e.image.removeAttribute("data-mce-src"); }), e ); }) ) ); }, N = function (e) { return e.replace(/src="(blob:[^"]+)"/g, function (e, n) { var t = f.getResultUri(n); if (t) return 'src="' + t + '"'; var r = l.getByUri(n); return ( r || (r = X( u.editorManager.get(), function (e, t) { return ( e || (t.editorUpload && t.editorUpload.blobCache.getByUri(n)) ); }, null )), r ? 'src="data:' + r.blob().type + ";base64," + r.base64() + '"' : e ); }); }; return ( u.on("setContent", function () { kl(u) ? C() : w(); }), u.on("RawSaveContent", function (e) { e.content = N(e.content); }), u.on("getContent", function (e) { e.source_view || "raw" === e.format || (e.content = N(e.content)); }), u.on("PostRender", function () { u.parser.addNodeFilter("img", function (e) { U(e, function (e) { var t = e.attr("src"); if (!l.getByUri(t)) { var n = f.getResultUri(t); n && e.attr("src", n); } }); }); }), { blobCache: l, addFilter: function (e) { d.push(e); }, uploadImages: y, uploadImagesAuto: C, scanForImages: w, destroy: function () { l.destroy(), f.destroy(), (r = i = null); }, } ); } var Mh = function (e, t) { return e.hasOwnProperty(t.nodeName); }, Fh = function (e, t) { if (Po.isText(t)) { if (0 === t.nodeValue.length) return !0; if ( /^\s+$/.test(t.nodeValue) && (!t.nextSibling || Mh(e, t.nextSibling)) ) return !0; } return !1; }, zh = function (e) { var t, n, r, o, i, a, u, s, c, l, f, d = e.settings, m = e.dom, g = e.selection, p = e.schema, h = p.getBlockElements(), v = g.getStart(), b = e.getBody(); if ( ((f = d.forced_root_block), v && Po.isElement(v) && f && ((l = b.nodeName.toLowerCase()), p.isValidChild(l, f.toLowerCase()) && ((y = h), (C = b), (x = v), !z(Zl(ir.fromDom(x), ir.fromDom(C)), function (e) { return Mh(y, e.dom()); })))) ) { var y, C, x, w, N; for ( n = (t = g.getRng()).startContainer, r = t.startOffset, o = t.endContainer, i = t.endOffset, c = eh(e), v = b.firstChild; v; ) if ( ((w = h), (N = v), Po.isText(N) || (Po.isElement(N) && !Mh(w, N) && !dc(N))) ) { if (Fh(h, v)) { (v = (u = v).nextSibling), m.remove(u); continue; } a || ((a = m.create(f, e.settings.forced_root_block_attrs)), v.parentNode.insertBefore(a, v), (s = !0)), (v = (u = v).nextSibling), a.appendChild(u); } else (a = null), (v = v.nextSibling); s && c && (t.setStart(n, r), t.setEnd(o, i), g.setRng(t), e.nodeChanged()); } }, Uh = function (e) { e.settings.forced_root_block && e.on("NodeChange", d(zh, e)); }, Vh = function (t) { return Wr(t).fold(q([t]), function (e) { return [t].concat(Vh(e)); }); }, Hh = function (t) { return Kr(t).fold(q([t]), function (e) { return "br" === cr(e) ? Ur(e) .map(function (e) { return [t].concat(Hh(e)); }) .getOr([]) : [t].concat(Hh(e)); }); }, jh = function (o, e) { return Ya( [ ((i = e), (a = i.startContainer), (u = i.startOffset), Po.isText(a) ? 0 === u ? A.some(ir.fromDom(a)) : A.none() : A.from(a.childNodes[u]).map(ir.fromDom)), ((t = e), (n = t.endContainer), (r = t.endOffset), Po.isText(n) ? r === n.data.length ? A.some(ir.fromDom(n)) : A.none() : A.from(n.childNodes[r - 1]).map(ir.fromDom)), ], function (e, t) { var n = Y(Vh(o), d(Ir, e)), r = Y(Hh(o), d(Ir, t)); return n.isSome() && r.isSome(); } ).getOr(!1); var t, n, r, i, a, u; }, qh = function (e, t, n, r) { var o = n, i = new ao(n, o), a = e.schema.getNonEmptyElements(); do { if (3 === n.nodeType && 0 !== Jt.trim(n.nodeValue).length) return void (r ? t.setStart(n, 0) : t.setEnd(n, n.nodeValue.length)); if (a[n.nodeName] && !/^(TD|TH)$/.test(n.nodeName)) return void (r ? t.setStartBefore(n) : "BR" === n.nodeName ? t.setEndBefore(n) : t.setEndAfter(n)); if (ge.ie && ge.ie < 11 && e.isBlock(n) && e.isEmpty(n)) return void (r ? t.setStart(n, 0) : t.setEnd(n, 0)); } while ((n = r ? i.next() : i.prev())); "BODY" === o.nodeName && (r ? t.setStart(o, 0) : t.setEnd(o, o.childNodes.length)); }, $h = function (e) { var t = e.selection.getSel(); return t && 0 < t.rangeCount; }; function Wh(i) { var r, o = []; "onselectionchange" in i.getDoc() || i.on("NodeChange Click MouseUp KeyUp Focus", function (e) { var t, n; (n = { startContainer: (t = i.selection.getRng()).startContainer, startOffset: t.startOffset, endContainer: t.endContainer, endOffset: t.endOffset, }), ("nodechange" !== e.type && pg(n, r)) || i.fire("SelectionChange"), (r = n); }), i.on("contextmenu", function () { i.fire("SelectionChange"); }), i.on("SelectionChange", function () { var e = i.selection.getStart(!0); !e || (!ge.range && i.selection.isCollapsed()) || ($h(i) && !(function (e) { var t, n; if ( (n = i.$(e).parentsUntil(i.getBody()).add(e)).length === o.length ) { for (t = n.length; 0 <= t && n[t] === o[t]; t--); if (-1 === t) return (o = n), !0; } return (o = n), !1; })(e) && i.dom.isChildOf(e, i.getBody()) && i.nodeChanged({ selectionChange: !0 })); }), i.on("MouseUp", function (e) { !e.isDefaultPrevented() && $h(i) && ("IMG" === i.selection.getNode().nodeName ? ye.setEditorTimeout(i, function () { i.nodeChanged(); }) : i.nodeChanged()); }), (this.nodeChanged = function (e) { var t, n, r, o = i.selection; i.initialized && o && !i.settings.disable_nodechange && !i.readonly && ((r = i.getBody()), ((t = o.getStart(!0) || r).ownerDocument === i.getDoc() && i.dom.isChildOf(t, r)) || (t = r), (n = []), i.dom.getParent(t, function (e) { if (e === r) return !0; n.push(e); }), ((e = e || {}).element = t), (e.parents = n), i.fire("NodeChange", e)); }); } var Kh, Xh, Yh = function (e) { var t, n, r, o; return ( (o = e.getBoundingClientRect()), (n = (t = e.ownerDocument).documentElement), (r = t.defaultView), { top: o.top + r.pageYOffset - n.clientTop, left: o.left + r.pageXOffset - n.clientLeft, } ); }, Gh = function (e, t) { return ( (n = (u = e).inline ? Yh(u.getBody()) : { left: 0, top: 0 }), (a = (i = e).getBody()), (r = i.inline ? { left: a.scrollLeft, top: a.scrollTop } : { left: 0, top: 0 }), { pageX: (o = (function (e, t) { if (t.target.ownerDocument !== e.getDoc()) { var n = Yh(e.getContentAreaContainer()), r = ((i = (o = e).getBody()), (a = o.getDoc().documentElement), (u = { left: i.scrollLeft, top: i.scrollTop }), (s = { left: i.scrollLeft || a.scrollLeft, top: i.scrollTop || a.scrollTop, }), o.inline ? u : s); return { left: t.pageX - n.left + r.left, top: t.pageY - n.top + r.top, }; } var o, i, a, u, s; return { left: t.pageX, top: t.pageY }; })(e, t)).left - n.left + r.left, pageY: o.top - n.top + r.top, } ); var n, r, o, i, a, u; }, Jh = Po.isContentEditableFalse, Qh = Po.isContentEditableTrue, Zh = function (e) { e && e.parentNode && e.parentNode.removeChild(e); }, ev = function (u, s) { return function (e) { if (0 === e.button) { var t = Y(s.dom.getParents(e.target), Qa(Jh, Qh)).getOr(null); if (((i = s.getBody()), Jh((a = t)) && a !== i)) { var n = s.dom.getPos(t), r = s.getBody(), o = s.getDoc().documentElement; (u.element = t), (u.screenX = e.screenX), (u.screenY = e.screenY), (u.maxX = (s.inline ? r.scrollWidth : o.offsetWidth) - 2), (u.maxY = (s.inline ? r.scrollHeight : o.offsetHeight) - 2), (u.relX = e.pageX - n.x), (u.relY = e.pageY - n.y), (u.width = t.offsetWidth), (u.height = t.offsetHeight), (u.ghost = (function (e, t, n, r) { var o = t.cloneNode(!0); e.dom.setStyles(o, { width: n, height: r }), e.dom.setAttrib(o, "data-mce-selected", null); var i = e.dom.create("div", { class: "mce-drag-container", "data-mce-bogus": "all", unselectable: "on", contenteditable: "false", }); return ( e.dom.setStyles(i, { position: "absolute", opacity: 0.5, overflow: "hidden", border: 0, padding: 0, margin: 0, width: n, height: r, }), e.dom.setStyles(o, { margin: 0, boxSizing: "border-box" }), i.appendChild(o), i ); })(s, t, u.width, u.height)); } } var i, a; }; }, tv = function (l, f) { return function (e) { if ( l.dragging && ((s = (i = f).selection), (c = s.getSel().getRangeAt(0).startContainer), (a = 3 === c.nodeType ? c.parentNode : c), (u = l.element), a !== u && !i.dom.isChildOf(a, u) && !Jh(a)) ) { var t = ((r = l.element), (o = r.cloneNode(!0)).removeAttribute("data-mce-selected"), o), n = f.fire("drop", { targetClone: t, clientX: e.clientX, clientY: e.clientY, }); n.isDefaultPrevented() || ((t = n.targetClone), f.undoManager.transact(function () { Zh(l.element), f.insertContent(f.dom.getOuterHTML(t)), f._selectionOverrides.hideFakeCaret(); })); } var r, o, i, a, u, s, c; nv(l); }; }, nv = function (e) { (e.dragging = !1), (e.element = null), Zh(e.ghost); }, rv = function (e) { var t, n, r, o, i, a, p, h, v, u, s, c = {}; (t = bi.DOM), (a = H.document), (n = ev(c, e)), (p = c), (h = e), (v = ye.throttle(function (e, t) { h._selectionOverrides.hideFakeCaret(), h.selection.placeCaretAt(e, t); }, 0)), (r = function (e) { var t, n, r, o, i, a, u, s, c, l, f, d, m = Math.max( Math.abs(e.screenX - p.screenX), Math.abs(e.screenY - p.screenY) ); if (p.element && !p.dragging && 10 < m) { if (h.fire("dragstart", { target: p.element }).isDefaultPrevented()) return; (p.dragging = !0), h.focus(); } if (p.dragging) { var g = ((f = p), { pageX: (d = Gh(h, e)).pageX - f.relX, pageY: d.pageY + 5 }); (c = p.ghost), (l = h.getBody()), c.parentNode !== l && l.appendChild(c), (t = p.ghost), (n = g), (r = p.width), (o = p.height), (i = p.maxX), (a = p.maxY), (s = u = 0), (t.style.left = n.pageX + "px"), (t.style.top = n.pageY + "px"), n.pageX + r > i && (u = n.pageX + r - i), n.pageY + o > a && (s = n.pageY + o - a), (t.style.width = r - u + "px"), (t.style.height = o - s + "px"), v(e.clientX, e.clientY); } }), (o = tv(c, e)), (u = c), (i = function () { u.dragging && s.fire("dragend"), nv(u); }), (s = e).on("mousedown", n), e.on("mousemove", r), e.on("mouseup", o), t.bind(a, "mousemove", r), t.bind(a, "mouseup", i), e.on("remove", function () { t.unbind(a, "mousemove", r), t.unbind(a, "mouseup", i); }); }, ov = function (e) { var n; rv(e), (n = e).on("drop", function (e) { var t = "undefined" != typeof e.clientX ? n.getDoc().elementFromPoint(e.clientX, e.clientY) : null; (Jh(t) || Jh(n.dom.getContentEditableParent(t))) && e.preventDefault(); }); }, iv = function (e) { return X( e, function (e, t) { return e.concat( (function (t) { var e = function (e) { return W(e, function (e) { return ((e = za(e)).node = t), e; }); }; if (Po.isElement(t)) return e(t.getClientRects()); if (Po.isText(t)) { var n = t.ownerDocument.createRange(); return ( n.setStart(t, 0), n.setEnd(t, t.data.length), e(n.getClientRects()) ); } })(t) ); }, [] ); }; ((Xh = Kh || (Kh = {}))[(Xh.Up = -1)] = "Up"), (Xh[(Xh.Down = 1)] = "Down"); var av = function (o, i, a, e, u, t) { var n, s, c = 0, l = [], r = function (e) { var t, n, r; for ( r = iv([e]), -1 === o && (r = r.reverse()), t = 0; t < r.length; t++ ) if (((n = r[t]), !a(n, s))) { if ((0 < l.length && i(n, Wt.last(l)) && c++, (n.line = c), u(n))) return !0; l.push(n); } }; return ( (s = Wt.last(t.getClientRects())) && (r((n = t.getNode())), (function (e, t, n, r) { for (; (r = hs(r, e, Ma, t)); ) if (n(r)) return; })(o, e, r, n)), l ); }, uv = d(av, Kh.Up, Ha, ja), sv = d(av, Kh.Down, ja, Ha), cv = function (n) { return function (e) { return (t = n), e.line > t; var t; }; }, lv = function (n) { return function (e) { return (t = n), e.line === t; var t; }; }, fv = Po.isContentEditableFalse, dv = hs, mv = function (e, t) { return Math.abs(e.left - t); }, gv = function (e, t) { return Math.abs(e.right - t); }, pv = function (e, t) { return e >= t.left && e <= t.right; }, hv = function (e, o) { return Wt.reduce(e, function (e, t) { var n, r; return ( (n = Math.min(mv(e, o), gv(e, o))), (r = Math.min(mv(t, o), gv(t, o))), pv(o, t) ? t : pv(o, e) ? e : r === n && fv(t.node) ? t : r < n ? t : e ); }); }, vv = function (e, t, n, r) { for (; (r = dv(r, e, Ma, t)); ) if (n(r)) return; }, bv = function (e, t, n) { var r, o, i, a, u, s, c, l = iv(V(oe(e.getElementsByTagName("*")), as)), f = V(l, function (e) { return n >= e.top && n <= e.bottom; }); return (r = hv(f, t)) && (r = hv( ((a = e), (c = function (t, e) { var n; return ( (n = V(iv([e]), function (e) { return !t(e, u); })), (s = s.concat(n)), 0 === n.length ); }), (s = []).push((u = r)), vv(Kh.Up, a, d(c, Ha), u.node), vv(Kh.Down, a, d(c, ja), u.node), s), t )) && as(r.node) ? ((i = t), { node: (o = r).node, before: mv(o, i) < gv(o, i) }) : null; }, yv = function (t, n, e) { if (e.collapsed) return !1; if ( ge.ie && ge.ie <= 11 && e.startOffset === e.endOffset - 1 && e.startContainer === e.endContainer ) { var r = e.startContainer.childNodes[e.startOffset]; if (Po.isElement(r)) return z(r.getClientRects(), function (e) { return qa(e, t, n); }); } return z(e.getClientRects(), function (e) { return qa(e, t, n); }); }, Cv = function (t) { var e = Ii(function () { if (!t.removed && t.selection.getRng().collapsed) { var e = rg(t, t.selection.getRng(), !1); t.selection.setRng(e); } }, 0); t.on("focus", function () { e.throttle(); }), t.on("blur", function () { e.cancel(); }); }, xv = { BACKSPACE: 8, DELETE: 46, DOWN: 40, ENTER: 13, LEFT: 37, RIGHT: 39, SPACEBAR: 32, TAB: 9, UP: 38, END: 35, HOME: 36, modifierPressed: function (e) { return e.shiftKey || e.ctrlKey || e.altKey || this.metaKeyPressed(e); }, metaKeyPressed: function (e) { return ge.mac ? e.metaKey : e.ctrlKey && !e.altKey; }, }, wv = Po.isContentEditableTrue, Nv = Po.isContentEditableFalse, Ev = function (e, t) { for (var n = e.getBody(); t && t !== n; ) { if (wv(t) || Nv(t)) return t; t = t.parentNode; } return null; }, Sv = function (g) { var p, e, t, a = g.getBody(), o = os( g.getBody(), function (e) { return g.dom.isBlock(e); }, function () { return eh(g); } ), h = "sel-" + g.dom.uniqueId(), u = function (e) { e && g.selection.setRng(e); }, s = function () { return g.selection.getRng(); }, v = function (e, t, n, r) { return ( void 0 === r && (r = !0), g .fire("ShowCaret", { target: t, direction: e, before: n }) .isDefaultPrevented() ? null : (r && g.selection.scrollIntoView(t, -1 === e), o.show(n, t)) ); }, b = function (e, t) { return ( (t = Es(e, a, t)), -1 === e ? Cu.fromRangeStart(t) : Cu.fromRangeEnd(t) ); }, n = function (e) { return ya(e) || Ea(e) || Sa(e); }, y = function (e) { return n(e.startContainer) || n(e.endContainer); }, c = function (e, t) { var n, r, o, i, a, u, s, c, l, f, d = g.$, m = g.dom; if (!e) return null; if (e.collapsed) { if (!y(e)) if (!1 === t) { if (((c = b(-1, e)), as(c.getNode(!0)))) return v(-1, c.getNode(!0), !1, !1); if (as(c.getNode())) return v(-1, c.getNode(), !c.isAtEnd(), !1); } else { if (((c = b(1, e)), as(c.getNode()))) return v(1, c.getNode(), !c.isAtEnd(), !1); if (as(c.getNode(!0))) return v(1, c.getNode(!0), !1, !1); } return null; } return ( (i = e.startContainer), (a = e.startOffset), (u = e.endOffset), 3 === i.nodeType && 0 === a && Nv(i.parentNode) && ((i = i.parentNode), (a = m.nodeIndex(i)), (i = i.parentNode)), 1 !== i.nodeType ? null : (u === a + 1 && i === e.endContainer && (n = i.childNodes[a]), Nv(n) ? ((l = f = n.cloneNode(!0)), (s = g.fire("ObjectSelected", { target: n, targetClone: l, })).isDefaultPrevented() ? null : ((r = Ji(ir.fromDom(g.getBody()), "#" + h).fold( function () { return d([]); }, function (e) { return d([e.dom()]); } )), (l = s.targetClone), 0 === r.length && (r = d( '
' ).attr("id", h)).appendTo(g.getBody()), (e = g.dom.createRng()), l === f && ge.ie ? (r .empty() .append( '

\xa0

' ) .append(l), e.setStartAfter(r[0].firstChild.firstChild), e.setEndAfter(l)) : (r.empty().append("\xa0").append(l).append("\xa0"), e.setStart(r[0].firstChild, 1), e.setEnd(r[0].lastChild, 0)), r.css({ top: m.getPos(n, g.getBody()).y }), r[0].focus(), (o = g.selection.getSel()).removeAllRanges(), o.addRange(e), U( $i(ir.fromDom(g.getBody()), "*[data-mce-selected]"), function (e) { wr(e, "data-mce-selected"); } ), n.setAttribute("data-mce-selected", "1"), (p = n), C(), e)) : null) ); }, l = function () { p && (p.removeAttribute("data-mce-selected"), Ji(ir.fromDom(g.getBody()), "#" + h).each(Oi), (p = null)), Ji(ir.fromDom(g.getBody()), "#" + h).each(Oi), (p = null); }, C = function () { o.hide(); }; return ( ge.ceFalse && ((function () { g.on("mouseup", function (e) { var t = s(); t.collapsed && uh(g, e.clientX, e.clientY) && u(ng(g, t, !1)); }), g.on("click", function (e) { var t; (t = Ev(g, e.target)) && (Nv(t) && (e.preventDefault(), g.focus()), wv(t) && g.dom.isChildOf(t, g.selection.getNode()) && l()); }), g.on("blur NewBlock", function () { l(); }), g.on("ResizeWindow FullscreenStateChanged", function () { return o.reposition(); }); var n, r, i = function (e, t) { var n, r, o = g.dom.getParent(e, g.dom.isBlock), i = g.dom.getParent(t, g.dom.isBlock); return ( !(!o || !g.dom.isChildOf(o, i) || !1 !== Nv(Ev(g, o))) || (o && ((n = o), (r = i), !( g.dom.getParent(n, g.dom.isBlock) === g.dom.getParent(r, g.dom.isBlock) )) && (function (e) { var t = $s(e); if (!e.firstChild) return !1; var n = Cu.before(e.firstChild), r = t.next(n); return r && !_f(r) && !Df(r); })(o)) ); }; (r = !1), (n = g).on("touchstart", function () { r = !1; }), n.on("touchmove", function () { r = !0; }), n.on("touchend", function (e) { var t = Ev(n, e.target); Nv(t) && (r || (e.preventDefault(), c(tg(n, t)))); }), g.on("mousedown", function (e) { var t, n = e.target; if ( (n === a || "HTML" === n.nodeName || g.dom.isChildOf(n, a)) && !1 !== uh(g, e.clientX, e.clientY) ) if ((t = Ev(g, n))) Nv(t) ? (e.preventDefault(), c(tg(g, t))) : (l(), (wv(t) && e.shiftKey) || yv(e.clientX, e.clientY, g.selection.getRng()) || (C(), g.selection.placeCaretAt(e.clientX, e.clientY))); else if (!1 === as(n)) { l(), C(); var r = bv(a, e.clientX, e.clientY); if (r && !i(e.target, r.node)) { e.preventDefault(); var o = v(1, r.node, r.before, !1); g.getBody().focus(), u(o); } } }), g.on("keypress", function (e) { xv.modifierPressed(e) || (e.keyCode, Nv(g.selection.getNode()) && e.preventDefault()); }), g.on("getSelectionRange", function (e) { var t = e.range; if (p) { if (!p.parentNode) return void (p = null); (t = t.cloneRange()).selectNode(p), (e.range = t); } }), g.on("setSelectionRange", function (e) { var t; (t = c(e.range, e.forward)) && (e.range = t); }), g.on("AfterSetSelectionRange", function (e) { var t, n = e.range; y(n) || "mcepastebin" === n.startContainer.parentNode.id || C(), (t = n.startContainer.parentNode), g.dom.hasClass(t, "mce-offscreen-selection") || l(); }), g.on("copy", function (e) { var t, n = e.clipboardData; if (!e.isDefaultPrevented() && e.clipboardData && !ge.ie) { var r = (t = g.dom.get(h)) ? t.getElementsByTagName("*")[0] : t; r && (e.preventDefault(), n.clearData(), n.setData("text/html", r.outerHTML), n.setData("text/plain", r.outerText)); } }), ov(g), Cv(g); })(), (e = g.contentStyles), (t = ".mce-content-body"), e.push(o.getCss()), e.push( t + " .mce-offscreen-selection {position: absolute;left: -9999999999px;max-width: 1000000px;}" + t + " *[contentEditable=false] {cursor: default;}" + t + " *[contentEditable=true] {cursor: text;}" )), { showCaret: v, showBlockCaretContainer: function (e) { e.hasAttribute("data-mce-caret") && (ka(e), u(s()), g.selection.scrollIntoView(e[0])); }, hideFakeCaret: C, destroy: function () { o.destroy(), (p = null); }, } ); }, kv = function (e, t, n) { var r, o, i, a, u = 1; for ( a = e.getShortEndedElements(), (i = /<([!?\/])?([A-Za-z0-9\-_\:\.]+)((?:\s+[^"\'>]+(?:(?:"[^"]*")|(?:\'[^\']*\')|[^>]*))*|\/|\s+)>/g).lastIndex = r = n; (o = i.exec(t)); ) { if (((r = i.lastIndex), "/" === o[1])) u--; else if (!o[1]) { if (o[2] in a) continue; u++; } if (0 === u) break; } return r; }, Tv = function (e, t) { var n = e.exec(t); if (n) { var r = n[1], o = n[2]; return "string" == typeof r && "data-mce-bogus" === r.toLowerCase() ? o : null; } return null; }; function Av(z, U) { void 0 === U && (U = ii()); var e = function () {}; !1 !== (z = z || {}).fix_self_closing && (z.fix_self_closing = !0); var V = z.comment ? z.comment : e, H = z.cdata ? z.cdata : e, j = z.text ? z.text : e, q = z.start ? z.start : e, $ = z.end ? z.end : e, W = z.pi ? z.pi : e, K = z.doctype ? z.doctype : e; return { parse: function (e) { var t, n, r, d, o, i, a, m, u, s, g, c, p, l, f, h, v, b, y, C, x, w, N, E, S, k, T, A, R, _ = 0, D = [], B = 0, O = Xo.decode, P = Jt.makeMap( "src,href,data,background,formaction,poster,xlink:href" ), I = /((java|vb)script|mhtml):/i, L = function (e) { var t, n; for (t = D.length; t-- && D[t].name !== e; ); if (0 <= t) { for (n = D.length - 1; t <= n; n--) (e = D[n]).valid && $(e.name); D.length = t; } }, M = function (e, t, n, r, o) { var i, a, u, s, c; if ( ((n = (t = t.toLowerCase()) in g ? t : O(n || r || o || "")), p && !m && 0 == (0 === (u = t).indexOf("data-") || 0 === u.indexOf("aria-"))) ) { if (!(i = b[t]) && y) { for (a = y.length; a-- && !(i = y[a]).pattern.test(t); ); -1 === a && (i = null); } if (!i) return; if (i.validValues && !(n in i.validValues)) return; } if (P[t] && !z.allow_script_urls) { var l = n.replace(/[\s\u0000-\u001F]+/g, ""); try { l = decodeURIComponent(l); } catch (f) { l = unescape(l); } if (I.test(l)) return; if ( ((c = l), !(s = z).allow_html_data_urls && (/^data:image\//i.test(c) ? !1 === s.allow_svg_data_urls && /^data:image\/svg\+xml/i.test(c) : /^data:/i.test(c))) ) return; } (m && (t in P || 0 === t.indexOf("on"))) || ((d.map[t] = n), d.push({ name: t, value: n })); }; for ( S = new RegExp( "<(?:(?:!--([\\w\\W]*?)--\x3e)|(?:!\\[CDATA\\[([\\w\\W]*?)\\]\\]>)|(?:!DOCTYPE([\\w\\W]*?)>)|(?:\\?([^\\s\\/<>]+) ?([\\w\\W]*?)[?/]>)|(?:\\/([A-Za-z][A-Za-z0-9\\-_\\:\\.]*)>)|(?:([A-Za-z][A-Za-z0-9\\-_\\:\\.]*)((?:\\s+[^\"'>]+(?:(?:\"[^\"]*\")|(?:'[^']*')|[^>]*))*|\\/|\\s+)>))", "g" ), k = /([\w:\-]+)(?:\s*=\s*(?:(?:\"((?:[^\"])*)\")|(?:\'((?:[^\'])*)\')|([^>\s]+)))?/g, s = U.getShortEndedElements(), E = z.self_closing_elements || U.getSelfClosingElements(), g = U.getBoolAttrs(), p = z.validate, u = z.remove_internals, R = z.fix_self_closing, T = U.getSpecialElements(), N = e + ">"; (t = S.exec(N)); ) { if ((_ < t.index && j(O(e.substr(_, t.index - _))), (n = t[6]))) ":" === (n = n.toLowerCase()).charAt(0) && (n = n.substr(1)), L(n); else if ((n = t[7])) { if (t.index + t[0].length > e.length) { j(O(e.substr(t.index))), (_ = t.index + t[0].length); continue; } ":" === (n = n.toLowerCase()).charAt(0) && (n = n.substr(1)), (c = n in s), R && E[n] && 0 < D.length && D[D.length - 1].name === n && L(n); var F = Tv(k, t[8]); if (null !== F) { if ("all" === F) { (_ = kv(U, e, S.lastIndex)), (S.lastIndex = _); continue; } f = !1; } if (!p || (l = U.getElementRule(n))) { if ( ((f = !0), p && ((b = l.attributes), (y = l.attributePatterns)), (v = t[8]) ? ((m = -1 !== v.indexOf("data-mce-type")) && u && (f = !1), ((d = []).map = {}), v.replace(k, M)) : ((d = []).map = {}), p && !m) ) { if ( ((C = l.attributesRequired), (x = l.attributesDefault), (w = l.attributesForced), l.removeEmptyAttrs && !d.length && (f = !1), w) ) for (o = w.length; o--; ) (a = (h = w[o]).name), "{$uid}" === (A = h.value) && (A = "mce_" + B++), (d.map[a] = A), d.push({ name: a, value: A }); if (x) for (o = x.length; o--; ) (a = (h = x[o]).name) in d.map || ("{$uid}" === (A = h.value) && (A = "mce_" + B++), (d.map[a] = A), d.push({ name: a, value: A })); if (C) { for (o = C.length; o-- && !(C[o] in d.map); ); -1 === o && (f = !1); } if ((h = d.map["data-mce-bogus"])) { if ("all" === h) { (_ = kv(U, e, S.lastIndex)), (S.lastIndex = _); continue; } f = !1; } } f && q(n, d, c); } else f = !1; if ((r = T[n])) { (r.lastIndex = _ = t.index + t[0].length), (t = r.exec(e)) ? (f && (i = e.substr(_, t.index - _)), (_ = t.index + t[0].length)) : ((i = e.substr(_)), (_ = e.length)), f && (0 < i.length && j(i, !0), $(n)), (S.lastIndex = _); continue; } c || (v && v.indexOf("/") === v.length - 1 ? f && $(n) : D.push({ name: n, valid: f })); } else (n = t[1]) ? (">" === n.charAt(0) && (n = " " + n), z.allow_conditional_comments || "[if" !== n.substr(0, 3).toLowerCase() || (n = " " + n), V(n)) : (n = t[2]) ? H(n.replace(//g, "")) : (n = t[3]) ? K(n) : (n = t[4]) && W(n, t[5]); _ = t.index + t[0].length; } for (_ < e.length && j(O(e.substr(_))), o = D.length - 1; 0 <= o; o--) (n = D[o]).valid && $(n.name); }, }; } (Av || (Av = {})).findEndTag = kv; var Rv = Av, _v = function (e, t) { var n, r, o, i, a, u, s, c, l = t, f = /<(\w+) [^>]*data-mce-bogus="all"[^>]*>/g, d = e.schema; for ( u = e.getTempAttrs(), s = l, c = new RegExp(["\\s?(" + u.join("|") + ')="[^"]+"'].join("|"), "gi"), l = s.replace(c, ""), a = d.getShortEndedElements(); (i = f.exec(l)); ) (r = f.lastIndex), (o = i[0].length), (n = a[i[1]] ? r : Rv.findEndTag(d, l, r)), (l = l.substring(0, r - o) + l.substring(n)), (f.lastIndex = r - o); return ga(l); }, Dv = { trimExternal: _v, trimInternal: _v }, Bv = 0, Ov = 2, Pv = 1, Iv = function (g, p) { var e = g.length + p.length + 2, h = new Array(e), v = new Array(e), c = function (e, t, n, r, o) { var i = l(e, t, n, r); if ( null === i || (i.start === t && i.diag === t - r) || (i.end === e && i.diag === e - n) ) for (var a = e, u = n; a < t || u < r; ) a < t && u < r && g[a] === p[u] ? (o.push([0, g[a]]), ++a, ++u) : r - n < t - e ? (o.push([2, g[a]]), ++a) : (o.push([1, p[u]]), ++u); else { c(e, i.start, n, i.start - i.diag, o); for (var s = i.start; s < i.end; ++s) o.push([0, g[s]]); c(i.end, t, i.end - i.diag, r, o); } }, b = function (e, t, n, r) { for (var o = e; o - t < r && o < n && g[o] === p[o - t]; ) ++o; return { start: e, end: o, diag: t }; }, l = function (e, t, n, r) { var o = t - e, i = r - n; if (0 === o || 0 === i) return null; var a, u, s, c, l, f = o - i, d = i + o, m = (d % 2 == 0 ? d : d + 1) / 2; for (h[1 + m] = e, v[1 + m] = t + 1, a = 0; a <= m; ++a) { for (u = -a; u <= a; u += 2) { for ( s = u + m, u === -a || (u !== a && h[s - 1] < h[s + 1]) ? (h[s] = h[s + 1]) : (h[s] = h[s - 1] + 1), l = (c = h[s]) - e + n - u; c < t && l < r && g[c] === p[l]; ) (h[s] = ++c), ++l; if (f % 2 != 0 && f - a <= u && u <= f + a && v[s - f] <= h[s]) return b(v[s - f], u + e - n, t, r); } for (u = f - a; u <= f + a; u += 2) { for ( s = u + m - f, u === f - a || (u !== f + a && v[s + 1] <= v[s - 1]) ? (v[s] = v[s + 1] - 1) : (v[s] = v[s - 1]), l = (c = v[s] - 1) - e + n - u; e <= c && n <= l && g[c] === p[l]; ) (v[s] = c--), l--; if (f % 2 == 0 && -a <= u && u <= a && v[s] <= h[s + f]) return b(v[s], u + e - n, t, r); } } }, t = []; return c(0, g.length, 0, p.length, t), t; }, Lv = function (e) { return Po.isElement(e) ? e.outerHTML : Po.isText(e) ? Xo.encodeRaw(e.data, !1) : Po.isComment(e) ? "\x3c!--" + e.data + "--\x3e" : ""; }, Mv = function (e, t, n) { var r = (function (e) { var t, n, r; for ( r = H.document.createElement("div"), t = H.document.createDocumentFragment(), e && (r.innerHTML = e); (n = r.firstChild); ) t.appendChild(n); return t; })(t); if (e.hasChildNodes() && n < e.childNodes.length) { var o = e.childNodes[n]; o.parentNode.insertBefore(r, o); } else e.appendChild(r); }, Fv = function (e) { return V(W(oe(e.childNodes), Lv), function (e) { return 0 < e.length; }); }, zv = function (e, t) { var n, r, o, i = W(oe(t.childNodes), Lv); return ( (n = Iv(i, e)), (r = t), (o = 0), U(n, function (e) { e[0] === Bv ? o++ : e[0] === Pv ? (Mv(r, e[1], o), o++) : e[0] === Ov && (function (e, t) { if (e.hasChildNodes() && t < e.childNodes.length) { var n = e.childNodes[t]; n.parentNode.removeChild(n); } })(r, o); }), t ); }, Uv = Li(A.none()), Vv = function (e) { return { type: "fragmented", fragments: e, content: "", bookmark: null, beforeBookmark: null, }; }, Hv = function (e) { return { type: "complete", fragments: null, content: e, bookmark: null, beforeBookmark: null, }; }, jv = function (e) { return "fragmented" === e.type ? e.fragments.join("") : e.content; }, qv = function (e) { var t = ir.fromTag( "body", Uv.get().getOrThunk(function () { var e = H.document.implementation.createHTMLDocument("undo"); return Uv.set(A.some(e)), e; }) ); return la(t, jv(e)), U($i(t, "*[data-mce-bogus]"), Pi), t.dom().innerHTML; }, $v = function (n) { var e, t, r; return ( (e = Fv(n.getBody())), -1 !== (t = (r = Z(e, function (e) { var t = Dv.trimInternal(n.serializer, e); return 0 < t.length ? [t] : []; })).join("")).indexOf("") ? Vv(r) : Hv(t) ); }, Wv = function (e, t, n) { "fragmented" === t.type ? zv(t.fragments, e.getBody()) : e.setContent(t.content, { format: "raw" }), e.selection.moveToBookmark(n ? t.beforeBookmark : t.bookmark); }, Kv = function (e, t) { return ( !(!e || !t) && ((r = t), jv(e) === jv(r) || ((n = t), qv(e) === qv(n))) ); var n, r; }; function Xv(u) { var s, r, o = this, c = 0, l = [], t = 0, f = function () { return 0 === t; }, i = function (e) { f() && (o.typing = e); }, d = function (e) { u.setDirty(e); }, a = function (e) { i(!1), o.add({}, e); }, n = function () { o.typing && (i(!1), o.add()); }; return ( u.on("init", function () { o.add(); }), u.on("BeforeExecCommand", function (e) { var t = e.command; "Undo" !== t && "Redo" !== t && "mceRepaint" !== t && (n(), o.beforeChange()); }), u.on("ExecCommand", function (e) { var t = e.command; "Undo" !== t && "Redo" !== t && "mceRepaint" !== t && a(e); }), u.on("ObjectResizeStart Cut", function () { o.beforeChange(); }), u.on("SaveContent ObjectResized blur", a), u.on("DragEnd", a), u.on("KeyUp", function (e) { var t = e.keyCode; e.isDefaultPrevented() || (((33 <= t && t <= 36) || (37 <= t && t <= 40) || 45 === t || e.ctrlKey) && (a(), u.nodeChanged()), (46 !== t && 8 !== t) || u.nodeChanged(), r && o.typing && !1 === Kv($v(u), l[0]) && (!1 === u.isDirty() && (d(!0), u.fire("change", { level: l[0], lastLevel: null })), u.fire("TypingUndo"), (r = !1), u.nodeChanged())); }), u.on("KeyDown", function (e) { var t = e.keyCode; if (!e.isDefaultPrevented()) if ((33 <= t && t <= 36) || (37 <= t && t <= 40) || 45 === t) o.typing && a(e); else { var n = (e.ctrlKey && !e.altKey) || e.metaKey; !(t < 16 || 20 < t) || 224 === t || 91 === t || o.typing || n || (o.beforeChange(), i(!0), o.add({}, e), (r = !0)); } }), u.on("MouseDown", function (e) { o.typing && a(e); }), u.on("input", function (e) { var t; e.inputType && ("insertReplacementText" === e.inputType || ("insertText" === (t = e).inputType && null === t.data)) && a(e); }), u.addShortcut("meta+z", "", "Undo"), u.addShortcut("meta+y,meta+shift+z", "", "Redo"), u.on("AddUndo Undo Redo ClearUndos", function (e) { e.isDefaultPrevented() || u.nodeChanged(); }), (o = { data: l, typing: !1, beforeChange: function () { f() && (s = Vu.getUndoBookmark(u.selection)); }, add: function (e, t) { var n, r, o, i = u.settings; if ( ((o = $v(u)), (e = e || {}), (e = Jt.extend(e, o)), !1 === f() || u.removed) ) return null; if ( ((r = l[c]), u .fire("BeforeAddUndo", { level: e, lastLevel: r, originalEvent: t, }) .isDefaultPrevented()) ) return null; if (r && Kv(r, e)) return null; if ( (l[c] && (l[c].beforeBookmark = s), i.custom_undo_redo_levels && l.length > i.custom_undo_redo_levels) ) { for (n = 0; n < l.length - 1; n++) l[n] = l[n + 1]; l.length--, (c = l.length); } (e.bookmark = Vu.getUndoBookmark(u.selection)), c < l.length - 1 && (l.length = c + 1), l.push(e), (c = l.length - 1); var a = { level: e, lastLevel: r, originalEvent: t }; return u.fire("AddUndo", a), 0 < c && (d(!0), u.fire("change", a)), e; }, undo: function () { var e; return ( o.typing && (o.add(), (o.typing = !1), i(!1)), 0 < c && ((e = l[--c]), Wv(u, e, !0), d(!0), u.fire("undo", { level: e })), e ); }, redo: function () { var e; return ( c < l.length - 1 && ((e = l[++c]), Wv(u, e, !1), d(!0), u.fire("redo", { level: e })), e ); }, clear: function () { (l = []), (c = 0), (o.typing = !1), (o.data = l), u.fire("ClearUndos"); }, hasUndo: function () { return 0 < c || (o.typing && l[0] && !Kv($v(u), l[0])); }, hasRedo: function () { return c < l.length - 1 && !o.typing; }, transact: function (e) { return n(), o.beforeChange(), o.ignore(e), o.add(); }, ignore: function (e) { try { t++, e(); } finally { t--; } }, extra: function (e, t) { var n, r; o.transact(e) && ((r = l[c].bookmark), (n = l[c - 1]), Wv(u, n, !0), o.transact(t) && (l[c - 1].beforeBookmark = r)); }, }) ); } var Yv, Gv, Jv = {}, Qv = Wt.filter, Zv = Wt.each; (Gv = function (e) { var t, n, r = e.selection.getRng(); (t = Po.matchNodeNames("pre")), r.collapsed || ((n = e.selection.getSelectedBlocks()), Zv( Qv(Qv(n, t), function (e) { return ( t(e.previousSibling) && -1 !== Wt.indexOf(n, e.previousSibling) ); }), function (e) { var t, n; (t = e.previousSibling), vn((n = e)).remove(), vn(t).append("

").append(n.childNodes); } )); }), Jv[(Yv = "pre")] || (Jv[Yv] = []), Jv[Yv].push(Gv); var eb = function (e, t) { Zv(Jv[e], function (e) { e(t); }); }, tb = /^(src|href|style)$/, nb = Jt.each, rb = hc.isEq, ob = function (e, t, n) { return e.isChildOf(t, n) && t !== n && !e.isBlock(n); }, ib = function (e, t, n) { var r, o, i; return ( (r = t[n ? "startContainer" : "endContainer"]), (o = t[n ? "startOffset" : "endOffset"]), Po.isElement(r) && ((i = r.childNodes.length - 1), !n && o && o--, (r = r.childNodes[i < o ? i : o])), Po.isText(r) && n && o >= r.nodeValue.length && (r = new ao(r, e.getBody()).next() || r), Po.isText(r) && !n && 0 === o && (r = new ao(r, e.getBody()).prev() || r), r ); }, ab = function (e, t, n, r) { var o = e.create(n, r); return t.parentNode.insertBefore(o, t), o.appendChild(t), o; }, ub = function (e, t, n, r, o) { var i = ir.fromDom(t), a = ir.fromDom(e.create(r, o)), u = n ? jr(i) : Hr(i); return Di(a, u), n ? (Ti(i, a), Ri(a, i)) : (Ai(i, a), _i(a, i)), a.dom(); }, sb = function (e, t, n, r) { return ( !(t = hc.getNonWhiteSpaceSibling(t, n, r)) || "BR" === t.nodeName || e.isBlock(t) ); }, cb = function (e, n, r, o, i) { var t, a, u, s, c, l, f, d, m, g, p, h, v, b, y = e.dom; if ( ((c = y), !( rb((l = o), (f = n).inline) || rb(l, f.block) || (f.selector ? Po.isElement(l) && c.is(l, f.selector) : void 0) || ((s = o), n.links && "A" === s.tagName) )) ) return !1; if ("all" !== n.remove) for ( nb(n.styles, function (e, t) { (e = hc.normalizeStyleValue(y, hc.replaceVars(e, r), t)), "number" == typeof t && ((t = e), (i = 0)), (n.remove_similar || !i || rb(hc.getStyle(y, i, t), e)) && y.setStyle(o, t, ""), (u = 1); }), u && "" === y.getAttrib(o, "style") && (o.removeAttribute("style"), o.removeAttribute("data-mce-style")), nb(n.attributes, function (e, t) { var n; if ( ((e = hc.replaceVars(e, r)), "number" == typeof t && ((t = e), (i = 0)), !i || rb(y.getAttrib(i, t), e)) ) { if ( "class" === t && (e = y.getAttrib(o, t)) && ((n = ""), nb(e.split(/\s+/), function (e) { /mce\-\w+/.test(e) && (n += (n ? " " : "") + e); }), n) ) return void y.setAttrib(o, t, n); "class" === t && o.removeAttribute("className"), tb.test(t) && o.removeAttribute("data-mce-" + t), o.removeAttribute(t); } }), nb(n.classes, function (e) { (e = hc.replaceVars(e, r)), (i && !y.hasClass(i, e)) || y.removeClass(o, e); }), a = y.getAttribs(o), t = 0; t < a.length; t++ ) { var C = a[t].nodeName; if (0 !== C.indexOf("_") && 0 !== C.indexOf("data-")) return !1; } return "none" !== n.remove ? ((d = e), (g = n), (h = (m = o).parentNode), (v = d.dom), (b = d.settings.forced_root_block), g.block && (b ? h === v.getRoot() && ((g.list_block && rb(m, g.list_block)) || nb(Jt.grep(m.childNodes), function (e) { hc.isValid(d, b, e.nodeName.toLowerCase()) ? p ? p.appendChild(e) : ((p = ab(v, e, b)), v.setAttribs(p, d.settings.forced_root_block_attrs)) : (p = 0); })) : v.isBlock(m) && !v.isBlock(h) && (sb(v, m, !1) || sb(v, m.firstChild, !0, 1) || m.insertBefore(v.create("br"), m.firstChild), sb(v, m, !0) || sb(v, m.lastChild, !1, 1) || m.appendChild(v.create("br")))), (g.selector && g.inline && !rb(g.inline, m)) || v.remove(m, 1), !0) : void 0; }, lb = cb, fb = function (s, c, l, e, f) { var t, n, d = s.formatter.get(c), m = d[0], a = !0, u = s.dom, r = s.selection, i = function (e) { var n, t, r, o, i, a, u = ((n = s), (t = e), (r = c), (o = l), (i = f), nb(hc.getParents(n.dom, t.parentNode).reverse(), function (e) { var t; a || "_start" === e.id || "_end" === e.id || ((t = Om.matchNode(n, e, r, o, i)) && !1 !== t.split && (a = e)); }), a); return (function (e, t, n, r, o, i, a, u) { var s, c, l, f, d, m, g = e.dom; if (n) { for ( m = n.parentNode, s = r.parentNode; s && s !== m; s = s.parentNode ) { for (c = g.clone(s, !1), d = 0; d < t.length; d++) if (cb(e, t[d], u, c, c)) { c = 0; break; } c && (l && c.appendChild(l), f || (f = c), (l = c)); } !i || (a.mixed && g.isBlock(n)) || (r = g.split(n, r)), l && (o.parentNode.insertBefore(l, o), f.appendChild(o)); } return r; })(s, d, u, e, e, !0, m, l); }, g = function (e) { var t, n, r, o, i; if ( (Po.isElement(e) && u.getContentEditable(e) && ((o = a), (a = "true" === u.getContentEditable(e)), (i = !0)), (t = Jt.grep(e.childNodes)), a && !i) ) for (n = 0, r = d.length; n < r && !cb(s, d[n], l, e, e); n++); if (m.deep && t.length) { for (n = 0, r = t.length; n < r; n++) g(t[n]); i && (a = o); } }, p = function (e) { var t, n = u.get(e ? "_start" : "_end"), r = n[e ? "firstChild" : "lastChild"]; return ( dc((t = r)) && Po.isElement(t) && ("_start" === t.id || "_end" === t.id) && (r = r[e ? "firstChild" : "lastChild"]), Po.isText(r) && 0 === r.data.length && (r = e ? n.previousSibling || n.nextSibling : n.nextSibling || n.previousSibling), u.remove(n, !0), r ); }, o = function (e) { var t, n, r = e.commonAncestorContainer; if (((e = Ac(s, e, d, !0)), m.split)) { if (((e = Im(e)), (t = ib(s, e, !0)) !== (n = ib(s, e)))) { if ( (/^(TR|TH|TD)$/.test(t.nodeName) && t.firstChild && (t = "TR" === t.nodeName ? t.firstChild.firstChild || t : t.firstChild || t), r && /^T(HEAD|BODY|FOOT|R)$/.test(r.nodeName) && /^(TH|TD)$/.test(n.nodeName) && n.firstChild && (n = n.firstChild || n), ob(u, t, n)) ) { var o = A.from(t.firstChild).getOr(t); return ( i( ub(u, o, !0, "span", { id: "_start", "data-mce-type": "bookmark", }) ), void p(!0) ); } if (ob(u, n, t)) return ( (o = A.from(n.lastChild).getOr(n)), i( ub(u, o, !1, "span", { id: "_end", "data-mce-type": "bookmark", }) ), void p(!1) ); (t = ab(u, t, "span", { id: "_start", "data-mce-type": "bookmark", })), (n = ab(u, n, "span", { id: "_end", "data-mce-type": "bookmark", })), i(t), i(n), (t = p(!0)), (n = p()); } else t = n = i(t); (e.startContainer = t.parentNode ? t.parentNode : t), (e.startOffset = u.nodeIndex(t)), (e.endContainer = n.parentNode ? n.parentNode : n), (e.endOffset = u.nodeIndex(n) + 1); } _c(u, e, function (e) { nb(e, function (e) { g(e), Po.isElement(e) && "underline" === s.dom.getStyle(e, "text-decoration") && e.parentNode && "underline" === hc.getTextDecoration(u, e.parentNode) && cb( s, { deep: !1, exact: !0, inline: "span", styles: { textDecoration: "underline" }, }, null, e ); }); }); }; if (e) e.nodeType ? ((n = u.createRng()).setStartBefore(e), n.setEndAfter(e), o(n)) : o(e); else if ("false" !== u.getContentEditable(r.getNode())) r.isCollapsed() && m.inline && !u.select("td[data-mce-selected],th[data-mce-selected]").length ? (function (e, t, n, r) { var o, i, a, u, s, c, l, f = e.dom, d = e.selection, m = [], g = d.getRng(); for ( o = g.startContainer, i = g.startOffset, 3 === (s = o).nodeType && (i !== o.nodeValue.length && (u = !0), (s = s.parentNode)); s; ) { if (Om.matchNode(e, s, t, n, r)) { c = s; break; } s.nextSibling && (u = !0), m.push(s), (s = s.parentNode); } if (c) if (u) { (a = d.getBookmark()), g.collapse(!0); var p = Ac(e, g, e.formatter.get(t), !0); (p = Im(p)), e.formatter.remove(t, n, p), d.moveToBookmark(a); } else { l = qu(e.getBody(), c); var h = Um(!1).dom(), v = $m(m, h); jm(e, h, l || c), Vm(e, l, !1), d.setCursorLocation(v, 1), f.isEmpty(c) && f.remove(c); } })(s, c, l, f) : ((t = Vu.getPersistentBookmark(s.selection, !0)), o(r.getRng()), r.moveToBookmark(t), m.inline && Om.match(s, c, l, r.getStart()) && hc.moveStart(u, r, r.getRng()), s.nodeChanged()); else { e = r.getNode(); for ( var h = 0, v = d.length; h < v && (!d[h].ceFalseOverride || !cb(s, d[h], l, e, e)); h++ ); } }, db = Jt.each, mb = function (e) { return e && 1 === e.nodeType && !dc(e) && !ju(e) && !Po.isBogus(e); }, gb = function (e, t) { var n; for (n = e; n; n = n[t]) { if (3 === n.nodeType && 0 !== n.nodeValue.length) return e; if (1 === n.nodeType && !dc(n)) return n; } return e; }, pb = function (e, t, n) { var r, o, i = new Xc(e); if ( t && n && ((t = gb(t, "previousSibling")), (n = gb(n, "nextSibling")), i.compare(t, n)) ) { for (r = t.nextSibling; r && r !== n; ) (r = (o = r).nextSibling), t.appendChild(o); return ( e.remove(n), Jt.each(Jt.grep(n.childNodes), function (e) { t.appendChild(e); }), t ); } return n; }, hb = function (e, t, n) { db(e.childNodes, function (e) { mb(e) && (t(e) && n(e), e.hasChildNodes() && hb(e, t, n)); }); }, vb = function (n, e) { return d(function (e, t) { return !(!t || !hc.getStyle(n, t, e)); }, e); }, bb = function (r, e, t) { return d( function (e, t, n) { r.setStyle(n, e, t), "" === n.getAttribute("style") && n.removeAttribute("style"), yb(r, n); }, e, t ); }, yb = function (e, t) { "SPAN" === t.nodeName && 0 === e.getAttribs(t).length && e.remove(t, !0); }, Cb = function (e, t) { var n; 1 === t.nodeType && t.parentNode && 1 === t.parentNode.nodeType && ((n = hc.getTextDecoration(e, t.parentNode)), e.getStyle(t, "color") && n ? e.setStyle(t, "text-decoration", n) : e.getStyle(t, "text-decoration") === n && e.setStyle(t, "text-decoration", null)); }, xb = function (n, e, r, o) { db(e, function (t) { db(n.dom.select(t.inline, o), function (e) { mb(e) && lb(n, t, r, e, t.exact ? e : null); }), (function (r, e, t) { if (e.clear_child_styles) { var n = e.links ? "*:not(a)" : "*"; db(r.select(n, t), function (n) { mb(n) && db(e.styles, function (e, t) { r.setStyle(n, t, ""); }); }); } })(n.dom, t, o); }); }, wb = function (e, t, n, r) { (t.styles.color || t.styles.textDecoration) && (Jt.walk(r, d(Cb, e), "childNodes"), Cb(e, r)); }, Nb = function (e, t, n, r) { t.styles && t.styles.backgroundColor && hb( r, vb(e, "fontSize"), bb(e, "backgroundColor", hc.replaceVars(t.styles.backgroundColor, n)) ); }, Eb = function (e, t, n, r) { ("sub" !== t.inline && "sup" !== t.inline) || (hb(r, vb(e, "fontSize"), bb(e, "fontSize", "")), e.remove(e.select("sup" === t.inline ? "sub" : "sup", r), !0)); }, Sb = function (e, t, n, r) { r && !1 !== t.merge_siblings && ((r = pb(e, hc.getNonWhiteSpaceSibling(r), r)), (r = pb(e, r, hc.getNonWhiteSpaceSibling(r, !0)))); }, kb = function (t, n, r, o, i) { (Om.matchNode(t, i.parentNode, r, o) && lb(t, n, o, i)) || (n.merge_with_parents && t.dom.getParent(i.parentNode, function (e) { if (Om.matchNode(t, e, r, o)) return lb(t, n, o, i), !0; })); }, Tb = Jt.each, Ab = function (g, p, h, r) { var e, t, v = g.formatter.get(p), b = v[0], o = !r && g.selection.isCollapsed(), i = g.dom, n = g.selection, y = function (n, e) { if (((e = e || b), n)) { if ( (e.onformat && e.onformat(n, e, h, r), Tb(e.styles, function (e, t) { i.setStyle(n, t, hc.replaceVars(e, h)); }), e.styles) ) { var t = i.getAttrib(n, "style"); t && n.setAttribute("data-mce-style", t); } Tb(e.attributes, function (e, t) { i.setAttrib(n, t, hc.replaceVars(e, h)); }), Tb(e.classes, function (e) { (e = hc.replaceVars(e, h)), i.hasClass(n, e) || i.addClass(n, e); }); } }, C = function (e, t) { var n = !1; return ( !!b.selector && (Tb(e, function (e) { if (!("collapsed" in e && e.collapsed !== o)) return i.is(t, e.selector) && !ju(t) ? (y(t, e), !(n = !0)) : void 0; }), n) ); }, a = function (s, e, t, c) { var l, f, d = [], m = !0; (l = b.inline || b.block), (f = s.create(l)), y(f), _c(s, e, function (e) { var a, u = function (e) { var t, n, r, o; if ( ((o = m), (t = e.nodeName.toLowerCase()), (n = e.parentNode.nodeName.toLowerCase()), 1 === e.nodeType && s.getContentEditable(e) && ((o = m), (m = "true" === s.getContentEditable(e)), (r = !0)), hc.isEq(t, "br")) ) return (a = 0), void (b.block && s.remove(e)); if (b.wrapper && Om.matchNode(g, e, p, h)) a = 0; else { if ( m && !r && b.block && !b.wrapper && hc.isTextBlock(g, t) && hc.isValid(g, n, l) ) return ( (e = s.rename(e, l)), y(e), d.push(e), void (a = 0) ); if (b.selector) { var i = C(v, e); if (!b.inline || i) return void (a = 0); } !m || r || !hc.isValid(g, l, t) || !hc.isValid(g, n, l) || (!c && 3 === e.nodeType && 1 === e.nodeValue.length && 65279 === e.nodeValue.charCodeAt(0)) || ju(e) || (b.inline && s.isBlock(e)) ? ((a = 0), Tb(Jt.grep(e.childNodes), u), r && (m = o), (a = 0)) : (a || ((a = s.clone(f, !1)), e.parentNode.insertBefore(a, e), d.push(a)), a.appendChild(e)); } }; Tb(e, u); }), !0 === b.links && Tb(d, function (e) { var t = function (e) { "A" === e.nodeName && y(e, b), Tb(Jt.grep(e.childNodes), t); }; t(e); }), Tb(d, function (e) { var t, n, r, o, i, a = function (e) { var n = !1; return ( Tb(e.childNodes, function (e) { if ( (t = e) && 1 === t.nodeType && !dc(t) && !ju(t) && !Po.isBogus(t) ) return (n = e), !1; var t; }), n ); }; (n = 0), Tb(e.childNodes, function (e) { hc.isWhiteSpaceNode(e) || dc(e) || n++; }), (t = n), (!(1 < d.length) && s.isBlock(e)) || 0 !== t ? (b.inline || b.wrapper) && (b.exact || 1 !== t || ((o = a((r = e))) && !dc(o) && Om.matchName(s, o, b) && ((i = s.clone(o, !1)), y(i), s.replace(i, r, !0), s.remove(o, 1)), (e = i || r)), xb(g, v, h, e), kb(g, b, p, h, e), Nb(s, b, h, e), Eb(s, b, h, e), Sb(s, b, h, e)) : s.remove(e, 1); }); }; if ("false" !== i.getContentEditable(n.getNode())) { if (b) { if (r) r.nodeType ? C(v, r) || ((t = i.createRng()).setStartBefore(r), t.setEndAfter(r), a(i, Ac(g, t, v), 0, !0)) : a(i, r, 0, !0); else if ( o && b.inline && !i.select("td[data-mce-selected],th[data-mce-selected]").length ) !(function (e, t, n) { var r, o, i, a, u, s, c = e.selection; (a = (r = c.getRng(!0)).startOffset), (s = r.startContainer.nodeValue), (o = qu(e.getBody(), c.getStart())) && (i = zm(o)); var l, f, d = /[^\s\u00a0\u00ad\u200b\ufeff]/; s && 0 < a && a < s.length && d.test(s.charAt(a)) && d.test(s.charAt(a - 1)) ? ((u = c.getBookmark()), r.collapse(!0), (r = Ac(e, r, e.formatter.get(t))), (r = Im(r)), e.formatter.apply(t, n, r), c.moveToBookmark(u)) : ((o && i.nodeValue === Lm) || ((l = e.getDoc()), (f = Um(!0).dom()), (i = (o = l.importNode(f, !0)).firstChild), r.insertNode(o), (a = 1)), e.formatter.apply(t, n, o), c.setCursorLocation(i, a)); })(g, p, h); else { var u = g.selection.getNode(); g.settings.forced_root_block || !v[0].defaultBlock || i.getParent(u, i.isBlock) || Ab(g, v[0].defaultBlock), g.selection.setRng(rl(g.selection.getRng())), (e = Vu.getPersistentBookmark(g.selection, !0)), a(i, Ac(g, n.getRng(), v)), b.styles && wb(i, b, h, u), n.moveToBookmark(e), hc.moveStart(i, n, n.getRng()), g.nodeChanged(); } eb(p, g); } } else { r = n.getNode(); for (var s = 0, c = v.length; s < c; s++) if (v[s].ceFalseOverride && i.is(r, v[s].selector)) return void y(r, v[s]); } }, Rb = { applyFormat: Ab }, _b = Jt.each, Db = function (e, t, n, r, o) { var i, a, u, s, c, l, f, d; null === t.get() && ((a = e), (u = {}), (i = t).set({}), a.on("NodeChange", function (n) { var r = hc.getParents(a.dom, n.element), o = {}; (r = Jt.grep(r, function (e) { return 1 === e.nodeType && !e.getAttribute("data-mce-bogus"); })), _b(i.get(), function (e, n) { _b(r, function (t) { return a.formatter.matchNode(t, n, {}, e.similar) ? (u[n] || (_b(e, function (e) { e(!0, { node: t, format: n, parents: r }); }), (u[n] = e)), (o[n] = e), !1) : !Om.matchesUnInheritedFormatSelector(a, t, n) && void 0; }); }), _b(u, function (e, t) { o[t] || (delete u[t], _b(e, function (e) { e(!1, { node: n.element, format: t, parents: r }); })); }); })), (c = n), (l = r), (f = o), (d = (s = t).get()), _b(c.split(","), function (e) { d[e] || ((d[e] = []), (d[e].similar = f)), d[e].push(l); }), s.set(d); }, Bb = { get: function (r) { var t = { valigntop: [{ selector: "td,th", styles: { verticalAlign: "top" } }], valignmiddle: [ { selector: "td,th", styles: { verticalAlign: "middle" } }, ], valignbottom: [ { selector: "td,th", styles: { verticalAlign: "bottom" } }, ], alignleft: [ { selector: "figure.image", collapsed: !1, classes: "align-left", ceFalseOverride: !0, preview: "font-family font-size", }, { selector: "figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li", styles: { textAlign: "left" }, inherit: !1, preview: !1, defaultBlock: "div", }, { selector: "img,table", collapsed: !1, styles: { float: "left" }, preview: "font-family font-size", }, ], aligncenter: [ { selector: "figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li", styles: { textAlign: "center" }, inherit: !1, preview: "font-family font-size", defaultBlock: "div", }, { selector: "figure.image", collapsed: !1, classes: "align-center", ceFalseOverride: !0, preview: "font-family font-size", }, { selector: "img", collapsed: !1, styles: { display: "block", marginLeft: "auto", marginRight: "auto", }, preview: !1, }, { selector: "table", collapsed: !1, styles: { marginLeft: "auto", marginRight: "auto" }, preview: "font-family font-size", }, ], alignright: [ { selector: "figure.image", collapsed: !1, classes: "align-right", ceFalseOverride: !0, preview: "font-family font-size", }, { selector: "figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li", styles: { textAlign: "right" }, inherit: !1, preview: "font-family font-size", defaultBlock: "div", }, { selector: "img,table", collapsed: !1, styles: { float: "right" }, preview: "font-family font-size", }, ], alignjustify: [ { selector: "figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li", styles: { textAlign: "justify" }, inherit: !1, defaultBlock: "div", preview: "font-family font-size", }, ], bold: [ { inline: "strong", remove: "all" }, { inline: "span", styles: { fontWeight: "bold" } }, { inline: "b", remove: "all" }, ], italic: [ { inline: "em", remove: "all" }, { inline: "span", styles: { fontStyle: "italic" } }, { inline: "i", remove: "all" }, ], underline: [ { inline: "span", styles: { textDecoration: "underline" }, exact: !0, }, { inline: "u", remove: "all" }, ], strikethrough: [ { inline: "span", styles: { textDecoration: "line-through" }, exact: !0, }, { inline: "strike", remove: "all" }, ], forecolor: { inline: "span", styles: { color: "%value" }, links: !0, remove_similar: !0, clear_child_styles: !0, }, hilitecolor: { inline: "span", styles: { backgroundColor: "%value" }, links: !0, remove_similar: !0, clear_child_styles: !0, }, fontname: { inline: "span", toggle: !1, styles: { fontFamily: "%value" }, clear_child_styles: !0, }, fontsize: { inline: "span", toggle: !1, styles: { fontSize: "%value" }, clear_child_styles: !0, }, fontsize_class: { inline: "span", attributes: { class: "%value" } }, blockquote: { block: "blockquote", wrapper: 1, remove: "all" }, subscript: { inline: "sub" }, superscript: { inline: "sup" }, code: { inline: "code" }, link: { inline: "a", selector: "a", remove: "all", split: !0, deep: !0, onmatch: function () { return !0; }, onformat: function (n, e, t) { Jt.each(t, function (e, t) { r.setAttrib(n, t, e); }); }, }, removeformat: [ { selector: "b,strong,em,i,font,u,strike,sub,sup,dfn,code,samp,kbd,var,cite,mark,q,del,ins", remove: "all", split: !0, expand: !1, block_expand: !0, deep: !0, }, { selector: "span", attributes: ["style", "class"], remove: "empty", split: !0, expand: !1, deep: !0, }, { selector: "*", attributes: ["style", "class"], split: !1, expand: !1, deep: !0, }, ], }; return ( Jt.each( "p h1 h2 h3 h4 h5 h6 div address pre div dt dd samp".split(/\s/), function (e) { t[e] = { block: e, remove: "all" }; } ), t ); }, }, Ob = Jt.each, Pb = bi.DOM, Ib = function (e, t) { var n, o, r, m = (t && t.schema) || ii({}), g = function (e) { var t, n, r; return ( (o = "string" == typeof e ? { name: e, classes: [], attrs: {} } : e), (t = Pb.create(o.name)), (n = t), (r = o).classes.length && Pb.addClass(n, r.classes.join(" ")), Pb.setAttribs(n, r.attrs), t ); }, p = function (n, e, t) { var r, o, i, a, u, s, c, l, f = 0 < e.length && e[0], d = f && f.name; if ( ((u = d), (s = "string" != typeof (a = n) ? a.nodeName.toLowerCase() : a), (c = m.getElementRule(s)), (i = !(!(l = c && c.parentsRequired) || !l.length) && (u && -1 !== Jt.inArray(l, u) ? u : l[0]))) ) d === i ? ((o = e[0]), (e = e.slice(1))) : (o = i); else if (f) (o = e[0]), (e = e.slice(1)); else if (!t) return n; return ( o && (r = g(o)).appendChild(n), t && (r || (r = Pb.create("div")).appendChild(n), Jt.each(t, function (e) { var t = g(e); r.insertBefore(t, n); })), p(r, e, o && o.siblings) ); }; return e && e.length ? ((o = e[0]), (n = g(o)), (r = Pb.create("div")).appendChild(p(n, e.slice(1), o.siblings)), r) : ""; }, Lb = function (e) { var t, a = { classes: [], attrs: {} }; return ( "*" !== (e = a.selector = Jt.trim(e)) && (t = e.replace( /(?:([#\.]|::?)([\w\-]+)|(\[)([^\]]+)\]?)/g, function (e, t, n, r, o) { switch (t) { case "#": a.attrs.id = n; break; case ".": a.classes.push(n); break; case ":": -1 !== Jt.inArray( "checked disabled enabled read-only required".split(" "), n ) && (a.attrs[n] = n); } if ("[" === r) { var i = o.match(/([\w\-]+)(?:\=\"([^\"]+))?/); i && (a.attrs[i[1]] = i[2]); } return ""; } )), (a.name = t || "div"), a ); }, Mb = function (e) { return e && "string" == typeof e ? ((e = (e = e.split(/\s*,\s*/)[0]).replace( /\s*(~\+|~|\+|>)\s*/g, "$1" )), Jt.map(e.split(/(?:>|\s+(?![^\[\]]+\]))/), function (e) { var t = Jt.map(e.split(/(?:~\+|~|\+)/), Lb), n = t.pop(); return t.length && (n.siblings = t), n; }).reverse()) : []; }, Fb = function (n, e) { var t, r, o, i, a, u, s = ""; if (!1 === (u = n.settings.preview_styles)) return ""; "string" != typeof u && (u = "font-family font-size font-weight font-style text-decoration text-transform color background-color border border-radius outline text-shadow"); var c = function (e) { return e.replace(/%(\w+)/g, ""); }; if ("string" == typeof e) { if (!(e = n.formatter.get(e))) return; e = e[0]; } return "preview" in e && !1 === (u = e.preview) ? "" : ((t = e.block || e.inline || "span"), (i = Mb(e.selector)).length ? (i[0].name || (i[0].name = t), (t = e.selector), (r = Ib(i, n))) : (r = Ib([t], n)), (o = Pb.select(t, r)[0] || r.firstChild), Ob(e.styles, function (e, t) { (e = c(e)) && Pb.setStyle(o, t, e); }), Ob(e.attributes, function (e, t) { (e = c(e)) && Pb.setAttrib(o, t, e); }), Ob(e.classes, function (e) { (e = c(e)), Pb.hasClass(o, e) || Pb.addClass(o, e); }), n.fire("PreviewFormats"), Pb.setStyles(r, { position: "absolute", left: -65535 }), n.getBody().appendChild(r), (a = Pb.getStyle(n.getBody(), "fontSize", !0)), (a = /px$/.test(a) ? parseInt(a, 10) : 0), Ob(u.split(" "), function (e) { var t = Pb.getStyle(o, e, !0); if ( !( ("background-color" === e && /transparent|rgba\s*\([^)]+,\s*0\)/.test(t) && ((t = Pb.getStyle(n.getBody(), e, !0)), "#ffffff" === Pb.toHex(t).toLowerCase())) || ("color" === e && "#000000" === Pb.toHex(t).toLowerCase()) ) ) { if ("font-size" === e && /em|%$/.test(t)) { if (0 === a) return; t = (parseFloat(t) / (/%$/.test(t) ? 100 : 1)) * a + "px"; } "border" === e && t && (s += "padding:0 2px;"), (s += e + ":" + t + ";"); } }), n.fire("AfterPreviewFormats"), Pb.remove(r), s); }, zb = function (e, t, n, r, o) { var i = t.get(n); !Om.match(e, n, r, o) || ("toggle" in i[0] && !i[0].toggle) ? Rb.applyFormat(e, n, r, o) : fb(e, n, r, o); }, Ub = function (e) { e.addShortcut("meta+b", "", "Bold"), e.addShortcut("meta+i", "", "Italic"), e.addShortcut("meta+u", "", "Underline"); for (var t = 1; t <= 6; t++) e.addShortcut("access+" + t, "", ["FormatBlock", !1, "h" + t]); e.addShortcut("access+7", "", ["FormatBlock", !1, "p"]), e.addShortcut("access+8", "", ["FormatBlock", !1, "div"]), e.addShortcut("access+9", "", ["FormatBlock", !1, "address"]); }; function Vb(e) { var t, n, r, o = ((t = e), (n = {}), (r = function (e, t) { e && ("string" != typeof e ? Jt.each(e, function (e, t) { r(t, e); }) : ((t = t.length ? t : [t]), Jt.each(t, function (e) { "undefined" == typeof e.deep && (e.deep = !e.selector), "undefined" == typeof e.split && (e.split = !e.selector || e.inline), "undefined" == typeof e.remove && e.selector && !e.inline && (e.remove = "none"), e.selector && e.inline && ((e.mixed = !0), (e.block_expand = !0)), "string" == typeof e.classes && (e.classes = e.classes.split(/\s+/)); }), (n[e] = t))); })(Bb.get(t.dom)), r(t.settings.formats), { get: function (e) { return e ? n[e] : n; }, register: r, unregister: function (e) { return e && n[e] && delete n[e], n; }, }), i = Li(null); return ( Ub(e), Wm(e), { get: o.get, register: o.register, unregister: o.unregister, apply: d(Rb.applyFormat, e), remove: d(fb, e), toggle: d(zb, e, o), match: d(Om.match, e), matchAll: d(Om.matchAll, e), matchNode: d(Om.matchNode, e), canApply: d(Om.canApply, e), formatChanged: d(Db, e, i), getCssText: d(Fb, e), } ); } var Hb, jb = Object.prototype.hasOwnProperty, qb = ((Hb = function (e, t) { return t; }), function () { for (var e = new Array(arguments.length), t = 0; t < e.length; t++) e[t] = arguments[t]; if (0 === e.length) throw new Error("Can't merge zero objects"); for (var n = {}, r = 0; r < e.length; r++) { var o = e[r]; for (var i in o) jb.call(o, i) && (n[i] = Hb(n[i], o[i])); } return n; }), $b = { register: function (t, s, c) { t.addAttributeFilter("data-mce-tabindex", function (e, t) { for (var n, r = e.length; r--; ) (n = e[r]).attr("tabindex", n.attributes.map["data-mce-tabindex"]), n.attr(t, null); }), t.addAttributeFilter("src,href,style", function (e, t) { for ( var n, r, o = e.length, i = "data-mce-" + t, a = s.url_converter, u = s.url_converter_scope; o--; ) (r = (n = e[o]).attributes.map[i]) !== undefined ? (n.attr(t, 0 < r.length ? r : null), n.attr(i, null)) : ((r = n.attributes.map[t]), "style" === t ? (r = c.serializeStyle(c.parseStyle(r), n.name)) : a && (r = a.call(u, r, t, n.name)), n.attr(t, 0 < r.length ? r : null)); }), t.addAttributeFilter("class", function (e) { for (var t, n, r = e.length; r--; ) (n = (t = e[r]).attr("class")) && ((n = t .attr("class") .replace(/(?:^|\s)mce-item-\w+(?!\S)/g, "")), t.attr("class", 0 < n.length ? n : null)); }), t.addAttributeFilter("data-mce-type", function (e, t, n) { for (var r, o = e.length; o--; ) "bookmark" !== (r = e[o]).attributes.map["data-mce-type"] || n.cleanup || (A.from(r.firstChild).exists(function (e) { return !da(e.value); }) ? r.unwrap() : r.remove()); }), t.addNodeFilter("noscript", function (e) { for (var t, n = e.length; n--; ) (t = e[n].firstChild) && (t.value = Xo.decode(t.value)); }), t.addNodeFilter("script,style", function (e, t) { for ( var n, r, o, i = e.length, a = function (e) { return e .replace(/()/g, "\n") .replace(/^[\r\n]*|[\r\n]*$/g, "") .replace( /^\s*(()?|\s*\/\/\s*\]\]>(-->)?|\/\/\s*(-->)?|\]\]>|\/\*\s*-->\s*\*\/|\s*-->\s*)\s*$/g, "" ); }; i--; ) (r = (n = e[i]).firstChild ? n.firstChild.value : ""), "script" === t ? ((o = n.attr("type")) && n.attr( "type", "mce-no/type" === o ? null : o.replace(/^mce\-/, "") ), "xhtml" === s.element_format && 0 < r.length && (n.firstChild.value = "// ")) : "xhtml" === s.element_format && 0 < r.length && (n.firstChild.value = "\x3c!--\n" + a(r) + "\n--\x3e"); }), t.addNodeFilter("#comment", function (e) { for (var t, n = e.length; n--; ) 0 === (t = e[n]).value.indexOf("[CDATA[") ? ((t.name = "#cdata"), (t.type = 4), (t.value = t.value.replace(/^\[CDATA\[|\]\]$/g, ""))) : 0 === t.value.indexOf("mce:protected ") && ((t.name = "#text"), (t.type = 3), (t.raw = !0), (t.value = unescape(t.value).substr(14))); }), t.addNodeFilter("xml:namespace,input", function (e, t) { for (var n, r = e.length; r--; ) 7 === (n = e[r]).type ? n.remove() : 1 === n.type && ("input" !== t || "type" in n.attributes.map || n.attr("type", "text")); }), t.addAttributeFilter("data-mce-type", function (e) { U(e, function (e) { "format-caret" === e.attr("data-mce-type") && (e.isEmpty(t.schema.getNonEmptyElements()) ? e.remove() : e.unwrap()); }); }), t.addAttributeFilter( "data-mce-src,data-mce-href,data-mce-style,data-mce-selected,data-mce-expando,data-mce-type,data-mce-resize", function (e, t) { for (var n = e.length; n--; ) e[n].attr(t, null); } ); }, trimTrailingBr: function (e) { var t, n, r = function (e) { return e && "br" === e.name; }; r((t = e.lastChild)) && r((n = t.prev)) && (t.remove(), n.remove()); }, }, Wb = { process: function (e, t, n) { return ( (f = n), (l = e) && l.hasEventListeners("PreProcess") && !f.no_events ? ((o = t), (i = n), (c = (r = e).dom), (o = o.cloneNode(!0)), (a = H.document.implementation).createHTMLDocument && ((u = a.createHTMLDocument("")), Jt.each( "BODY" === o.nodeName ? o.childNodes : [o], function (e) { u.body.appendChild(u.importNode(e, !0)); } ), (o = "BODY" !== o.nodeName ? u.body.firstChild : u.body), (s = c.doc), (c.doc = u)), dp(r, qb(i, { node: o })), s && (c.doc = s), o) : t ); var r, o, i, a, u, s, c, l, f; }, }, Kb = function (e, a, u) { e.addNodeFilter("font", function (e) { U(e, function (e) { var t, n = a.parse(e.attr("style")), r = e.attr("color"), o = e.attr("face"), i = e.attr("size"); r && (n.color = r), o && (n["font-family"] = o), i && (n["font-size"] = u[parseInt(e.attr("size"), 10) - 1]), (e.name = "span"), e.attr("style", a.serialize(n)), (t = e), U(["color", "face", "size"], function (e) { t.attr(e, null); }); }); }); }, Xb = function (e, t) { var n, r = ui(); t.convert_fonts_to_spans && Kb(e, r, Jt.explode(t.font_size_legacy_values)), (n = r), e.addNodeFilter("strike", function (e) { U(e, function (e) { var t = n.parse(e.attr("style")); (t["text-decoration"] = "line-through"), (e.name = "span"), e.attr("style", n.serialize(t)); }); }); }, Yb = { register: function (e, t) { t.inline_styles && Xb(e, t); }, }, Gb = /^[ \t\r\n]*$/, Jb = { "#text": 3, "#comment": 8, "#cdata": 4, "#pi": 7, "#doctype": 10, "#document-fragment": 11, }, Qb = function (e, t, n) { var r, o, i = n ? "lastChild" : "firstChild", a = n ? "prev" : "next"; if (e[i]) return e[i]; if (e !== t) { if ((r = e[a])) return r; for (o = e.parent; o && o !== t; o = o.parent) if ((r = o[a])) return r; } }, Zb = (function () { function a(e, t) { (this.name = e), 1 === (this.type = t) && ((this.attributes = []), (this.attributes.map = {})); } return ( (a.create = function (e, t) { var n, r; if (((n = new a(e, Jb[e] || 1)), t)) for (r in t) n.attr(r, t[r]); return n; }), (a.prototype.replace = function (e) { return ( e.parent && e.remove(), this.insert(e, this), this.remove(), this ); }), (a.prototype.attr = function (e, t) { var n, r; if ("string" != typeof e) { for (r in e) this.attr(r, e[r]); return this; } if ((n = this.attributes)) { if (t !== undefined) { if (null === t) { if (e in n.map) for (delete n.map[e], r = n.length; r--; ) if (n[r].name === e) return (n = n.splice(r, 1)), this; return this; } if (e in n.map) { for (r = n.length; r--; ) if (n[r].name === e) { n[r].value = t; break; } } else n.push({ name: e, value: t }); return (n.map[e] = t), this; } return n.map[e]; } }), (a.prototype.clone = function () { var e, t, n, r, o, i = new a(this.name, this.type); if ((n = this.attributes)) { for ((o = []).map = {}, e = 0, t = n.length; e < t; e++) "id" !== (r = n[e]).name && ((o[o.length] = { name: r.name, value: r.value }), (o.map[r.name] = r.value)); i.attributes = o; } return (i.value = this.value), (i.shortEnded = this.shortEnded), i; }), (a.prototype.wrap = function (e) { return this.parent.insert(e, this), e.append(this), this; }), (a.prototype.unwrap = function () { var e, t; for (e = this.firstChild; e; ) (t = e.next), this.insert(e, this, !0), (e = t); this.remove(); }), (a.prototype.remove = function () { var e = this.parent, t = this.next, n = this.prev; return ( e && (e.firstChild === this ? (e.firstChild = t) && (t.prev = null) : (n.next = t), e.lastChild === this ? (e.lastChild = n) && (n.next = null) : (t.prev = n), (this.parent = this.next = this.prev = null)), this ); }), (a.prototype.append = function (e) { var t; return ( e.parent && e.remove(), (t = this.lastChild) ? (((t.next = e).prev = t), (this.lastChild = e)) : (this.lastChild = this.firstChild = e), (e.parent = this), e ); }), (a.prototype.insert = function (e, t, n) { var r; return ( e.parent && e.remove(), (r = t.parent || this), n ? (t === r.firstChild ? (r.firstChild = e) : (t.prev.next = e), (e.prev = t.prev), ((e.next = t).prev = e)) : (t === r.lastChild ? (r.lastChild = e) : (t.next.prev = e), (e.next = t.next), ((e.prev = t).next = e)), (e.parent = r), e ); }), (a.prototype.getAll = function (e) { var t, n = []; for (t = this.firstChild; t; t = Qb(t, this)) t.name === e && n.push(t); return n; }), (a.prototype.empty = function () { var e, t, n; if (this.firstChild) { for (e = [], n = this.firstChild; n; n = Qb(n, this)) e.push(n); for (t = e.length; t--; ) (n = e[t]).parent = n.firstChild = n.lastChild = n.next = n.prev = null; } return (this.firstChild = this.lastChild = null), this; }), (a.prototype.isEmpty = function (e, t, n) { var r, o, i = this.firstChild; if (((t = t || {}), i)) do { if (1 === i.type) { if (i.attributes.map["data-mce-bogus"]) continue; if (e[i.name]) return !1; for (r = i.attributes.length; r--; ) if ( "name" === (o = i.attributes[r].name) || 0 === o.indexOf("data-mce-bookmark") ) return !1; } if (8 === i.type) return !1; if (3 === i.type && !Gb.test(i.value)) return !1; if ( 3 === i.type && i.parent && t[i.parent.name] && Gb.test(i.value) ) return !1; if (n && n(i)) return !1; } while ((i = Qb(i, this))); return !0; }), (a.prototype.walk = function (e) { return Qb(this, null, e); }), a ); })(), ey = function (e, t, n, r) { (e.padd_empty_with_br || t.insert) && n[r.name] ? (r.empty().append(new Zb("br", 1)).shortEnded = !0) : (r.empty().append(new Zb("#text", 3)).value = "\xa0"); }, ty = function (e) { return ny(e, "#text") && "\xa0" === e.firstChild.value; }, ny = function (e, t) { return ( e && e.firstChild && e.firstChild === e.lastChild && e.firstChild.name === t ); }, ry = function (r, e, t, n) { return n.isEmpty(e, t, function (e) { return (t = e), (n = r.getElementRule(t.name)) && n.paddEmpty; var t, n; }); }, oy = function (e, t) { return e && (t[e.name] || "br" === e.name); }, iy = function (e, p) { var h = e.schema; p.remove_trailing_brs && e.addNodeFilter("br", function (e, t, n) { var r, o, i, a, u, s, c, l, f = e.length, d = Jt.extend({}, h.getBlockElements()), m = h.getNonEmptyElements(), g = h.getNonEmptyElements(); for (d.body = 1, r = 0; r < f; r++) if ( ((i = (o = e[r]).parent), d[o.parent.name] && o === i.lastChild) ) { for (u = o.prev; u; ) { if ( "span" !== (s = u.name) || "bookmark" !== u.attr("data-mce-type") ) { if ("br" !== s) break; if ("br" === s) { o = null; break; } } u = u.prev; } o && (o.remove(), ry(h, m, g, i) && (c = h.getElementRule(i.name)) && (c.removeEmpty ? i.remove() : c.paddEmpty && ey(p, n, d, i))); } else { for ( a = o; i && i.firstChild === a && i.lastChild === a && !d[(a = i).name]; ) i = i.parent; a === i && !0 !== p.padd_empty_with_br && (((l = new Zb("#text", 3)).value = "\xa0"), o.replace(l)); } }), e.addAttributeFilter("href", function (e) { var t, n, r, o = e.length; if (!p.allow_unsafe_link_target) for (; o--; ) "a" === (t = e[o]).name && "_blank" === t.attr("target") && t.attr( "rel", ((n = t.attr("rel")), (r = n ? Jt.trim(n) : ""), /\b(noopener)\b/g.test(r) ? r : r .split(" ") .filter(function (e) { return 0 < e.length; }) .concat(["noopener"]) .sort() .join(" ")) ); }), p.allow_html_in_named_anchor || e.addAttributeFilter("id,name", function (e) { for (var t, n, r, o, i = e.length; i--; ) if ("a" === (o = e[i]).name && o.firstChild && !o.attr("href")) for ( r = o.parent, t = o.lastChild; (n = t.prev), r.insert(t, o), (t = n); ); }), p.fix_list_elements && e.addNodeFilter("ul,ol", function (e) { for (var t, n, r = e.length; r--; ) if ("ul" === (n = (t = e[r]).parent).name || "ol" === n.name) if (t.prev && "li" === t.prev.name) t.prev.append(t); else { var o = new Zb("li", 1); o.attr("style", "list-style-type: none"), t.wrap(o); } }), p.validate && h.getValidClasses() && e.addAttributeFilter("class", function (e) { for ( var t, n, r, o, i, a, u, s = e.length, c = h.getValidClasses(); s--; ) { for ( n = (t = e[s]).attr("class").split(" "), i = "", r = 0; r < n.length; r++ ) (o = n[r]), (u = !1), (a = c["*"]) && a[o] && (u = !0), (a = c[t.name]), !u && a && a[o] && (u = !0), u && (i && (i += " "), (i += o)); i.length || (i = null), t.attr("class", i); } }); }, ay = Jt.makeMap, uy = Jt.each, sy = Jt.explode, cy = Jt.extend; function ly(k, T) { void 0 === T && (T = ii()); var A = {}, R = [], _ = {}, D = {}; ((k = k || {}).validate = !("validate" in k) || k.validate), (k.root_name = k.root_name || "body"); var B = function (e) { var t, n, r; (n = e.name) in A && ((r = _[n]) ? r.push(e) : (_[n] = [e])), (t = R.length); for (; t--; ) (n = R[t].name) in e.attributes.map && ((r = D[n]) ? r.push(e) : (D[n] = [e])); return e; }, e = { schema: T, addAttributeFilter: function (e, n) { uy(sy(e), function (e) { var t; for (t = 0; t < R.length; t++) if (R[t].name === e) return void R[t].callbacks.push(n); R.push({ name: e, callbacks: [n] }); }); }, getAttributeFilters: function () { return [].concat(R); }, addNodeFilter: function (e, n) { uy(sy(e), function (e) { var t = A[e]; t || (A[e] = t = []), t.push(n); }); }, getNodeFilters: function () { var e = []; for (var t in A) A.hasOwnProperty(t) && e.push({ name: t, callbacks: A[t] }); return e; }, filterNode: B, parse: function (e, a) { var t, n, r, o, i, u, s, c, l, f, d, m = []; (a = a || {}), (_ = {}), (D = {}), (l = cy( ay("script,style,head,html,body,title,meta,param"), T.getBlockElements() )); var g = T.getNonEmptyElements(), p = T.children, h = k.validate, v = "forced_root_block" in a ? a.forced_root_block : k.forced_root_block, b = T.getWhiteSpaceElements(), y = /^[ \t\r\n]+/, C = /[ \t\r\n]+$/, x = /[ \t\r\n]+/g, w = /^[ \t\r\n]+$/; f = b.hasOwnProperty(a.context) || b.hasOwnProperty(k.root_name); var N = function (e, t) { var n, r = new Zb(e, t); return e in A && ((n = _[e]) ? n.push(r) : (_[e] = [r])), r; }, E = function (e) { var t, n, r, o, i = T.getBlockElements(); for (t = e.prev; t && 3 === t.type; ) { if (0 < (r = t.value.replace(C, "")).length) return void (t.value = r); if ((n = t.next)) { if (3 === n.type && n.value.length) { t = t.prev; continue; } if (!i[n.name] && "script" !== n.name && "style" !== n.name) { t = t.prev; continue; } } (o = t.prev), t.remove(), (t = o); } }; t = Rv( { validate: h, allow_script_urls: k.allow_script_urls, allow_conditional_comments: k.allow_conditional_comments, self_closing_elements: (function (e) { var t, n = {}; for (t in e) "li" !== t && "p" !== t && (n[t] = e[t]); return n; })(T.getSelfClosingElements()), cdata: function (e) { d.append(N("#cdata", 4)).value = e; }, text: function (e, t) { var n; f || ((e = e.replace(x, " ")), oy(d.lastChild, l) && (e = e.replace(y, ""))), 0 !== e.length && (((n = N("#text", 3)).raw = !!t), (d.append(n).value = e)); }, comment: function (e) { d.append(N("#comment", 8)).value = e; }, pi: function (e, t) { (d.append(N(e, 7)).value = t), E(d); }, doctype: function (e) { (d.append(N("#doctype", 10)).value = e), E(d); }, start: function (e, t, n) { var r, o, i, a, u; if ((i = h ? T.getElementRule(e) : {})) { for ( (r = N(i.outputName || e, 1)).attributes = t, r.shortEnded = n, d.append(r), (u = p[d.name]) && p[r.name] && !u[r.name] && m.push(r), o = R.length; o--; ) (a = R[o].name) in t.map && ((s = D[a]) ? s.push(r) : (D[a] = [r])); l[e] && E(r), n || (d = r), !f && b[e] && (f = !0); } }, end: function (e) { var t, n, r, o, i; if ((n = h ? T.getElementRule(e) : {})) { if (l[e] && !f) { if ((t = d.firstChild) && 3 === t.type) if (0 < (r = t.value.replace(y, "")).length) (t.value = r), (t = t.next); else for (o = t.next, t.remove(), t = o; t && 3 === t.type; ) (r = t.value), (o = t.next), (0 === r.length || w.test(r)) && (t.remove(), (t = o)), (t = o); if ((t = d.lastChild) && 3 === t.type) if (0 < (r = t.value.replace(C, "")).length) (t.value = r), (t = t.prev); else for (o = t.prev, t.remove(), t = o; t && 3 === t.type; ) (r = t.value), (o = t.prev), (0 === r.length || w.test(r)) && (t.remove(), (t = o)), (t = o); } if ( (f && b[e] && (f = !1), n.removeEmpty && ry(T, g, b, d) && !d.attributes.map.name && !d.attr("id")) ) return ( (i = d.parent), l[d.name] ? d.empty().remove() : d.unwrap(), void (d = i) ); n.paddEmpty && (ty(d) || ry(T, g, b, d)) && ey(k, a, l, d), (d = d.parent); } }, }, T ); var S = (d = new Zb(a.context || k.root_name, 11)); if ( (t.parse(e), h && m.length && (a.context ? (a.invalid = !0) : (function (e) { var t, n, r, o, i, a, u, s, c, l, f, d, m, g, p, h; for ( d = ay("tr,td,th,tbody,thead,tfoot,table"), l = T.getNonEmptyElements(), f = T.getWhiteSpaceElements(), m = T.getTextBlockElements(), g = T.getSpecialElements(), t = 0; t < e.length; t++ ) if ((n = e[t]).parent && !n.fixed) if (m[n.name] && "li" === n.parent.name) { for (p = n.next; p && m[p.name]; ) (p.name = "li"), (p.fixed = !0), n.parent.insert(p, n.parent), (p = p.next); n.unwrap(n); } else { for ( o = [n], r = n.parent; r && !T.isValidChild(r.name, n.name) && !d[r.name]; r = r.parent ) o.push(r); if (r && 1 < o.length) { for ( o.reverse(), i = a = B(o[0].clone()), c = 0; c < o.length - 1; c++ ) { for ( T.isValidChild(a.name, o[c].name) ? ((u = B(o[c].clone())), a.append(u)) : (u = a), s = o[c].firstChild; s && s !== o[c + 1]; ) (h = s.next), u.append(s), (s = h); a = u; } ry(T, l, f, i) ? r.insert(n, o[0], !0) : (r.insert(i, o[0], !0), r.insert(n, i)), (r = o[0]), (ry(T, l, f, r) || ny(r, "br")) && r.empty().remove(); } else if (n.parent) { if ("li" === n.name) { if ( (p = n.prev) && ("ul" === p.name || "ul" === p.name) ) { p.append(n); continue; } if ( (p = n.next) && ("ul" === p.name || "ul" === p.name) ) { p.insert(n, p.firstChild, !0); continue; } n.wrap(B(new Zb("ul", 1))); continue; } T.isValidChild(n.parent.name, "div") && T.isValidChild("div", n.name) ? n.wrap(B(new Zb("div", 1))) : g[n.name] ? n.empty().remove() : n.unwrap(); } } })(m)), v && ("body" === S.name || a.isRootContent) && (function () { var e, t, n = S.firstChild, r = function (e) { e && ((n = e.firstChild) && 3 === n.type && (n.value = n.value.replace(y, "")), (n = e.lastChild) && 3 === n.type && (n.value = n.value.replace(C, ""))); }; if (T.isValidChild(S.name, v.toLowerCase())) { for (; n; ) (e = n.next), 3 === n.type || (1 === n.type && "p" !== n.name && !l[n.name] && !n.attr("data-mce-type")) ? (t || ((t = N(v, 1)).attr(k.forced_root_block_attrs), S.insert(t, n)), t.append(n)) : (r(t), (t = null)), (n = e); r(t); } })(), !a.invalid) ) { for (c in _) { for (s = A[c], i = (n = _[c]).length; i--; ) n[i].parent || n.splice(i, 1); for (r = 0, o = s.length; r < o; r++) s[r](n, c, a); } for (r = 0, o = R.length; r < o; r++) if ((s = R[r]).name in D) { for (i = (n = D[s.name]).length; i--; ) n[i].parent || n.splice(i, 1); for (i = 0, u = s.callbacks.length; i < u; i++) s.callbacks[i](n, s.name, a); } } return S; }, }; return iy(e, k), Yb.register(e, k), e; } var fy = function (e, t, n) { -1 === Jt.inArray(t, n) && (e.addAttributeFilter(n, function (e, t) { for (var n = e.length; n--; ) e[n].attr(t, null); }), t.push(n)); }, dy = function (e, t, n) { var r = ga(n.getInner ? t.innerHTML : e.getOuterHTML(t)); return n.selection || wo(ir.fromDom(t)) ? r : Jt.trim(r); }, my = function (e, t, n) { var r = n.selection ? qb({ forced_root_block: !1 }, n) : n, o = e.parse(t, r); return $b.trimTrailingBr(o), o; }, gy = function (e, t, n, r, o) { var i, a, u, s, c = ((i = r), el(t, n).serialize(i)); return ( (a = e), (s = c), !(u = o).no_events && a ? mp(a, qb(u, { content: s })).content : s ); }; function py(e, t) { var a, u, s, c, l, n, r = ((a = e), (n = ["data-mce-selected"]), (s = (u = t) && u.dom ? u.dom : bi.DOM), (c = u && u.schema ? u.schema : ii(a)), (a.entity_encoding = a.entity_encoding || "named"), (a.remove_trailing_brs = !("remove_trailing_brs" in a) || a.remove_trailing_brs), (l = ly(a, c)), $b.register(l, a, s), { schema: c, addNodeFilter: l.addNodeFilter, addAttributeFilter: l.addAttributeFilter, serialize: function (e, t) { var n = qb({ format: "html" }, t || {}), r = Wb.process(u, e, n), o = dy(s, r, n), i = my(l, o, n); return "tree" === n.format ? i : gy(u, a, c, i, n); }, addRules: function (e) { c.addValidElements(e); }, setRules: function (e) { c.setValidElements(e); }, addTempAttr: d(fy, l, n), getTempAttrs: function () { return n; }, }); return { schema: r.schema, addNodeFilter: r.addNodeFilter, addAttributeFilter: r.addAttributeFilter, serialize: r.serialize, addRules: r.addRules, setRules: r.setRules, addTempAttr: r.addTempAttr, getTempAttrs: r.getTempAttrs, }; } function hy(e) { return { getBookmark: d(lc, e), moveToBookmark: d(fc, e) }; } (hy || (hy = {})).isBookmarkNode = dc; var vy, by, yy = hy, Cy = Po.isContentEditableFalse, xy = Po.isContentEditableTrue, wy = function (r, a) { var u, s, c, l, f, d, m, g, p, h, v, b, i, y, C, x, w, N = a.dom, E = Jt.each, S = a.getDoc(), k = H.document, T = Math.abs, A = Math.round, R = a.getBody(); l = { nw: [0, 0, -1, -1], ne: [1, 0, 1, -1], se: [1, 1, 1, 1], sw: [0, 1, -1, 1], }; var e = ".mce-content-body"; a.contentStyles.push( e + " div.mce-resizehandle {position: absolute;border: 1px solid black;box-sizing: content-box;background: #FFF;width: 7px;height: 7px;z-index: 10000}" + e + " .mce-resizehandle:hover {background: #000}" + e + " img[data-mce-selected]," + e + " hr[data-mce-selected] {outline: 1px solid black;resize: none}" + e + " .mce-clonedresizable {position: absolute;" + (ge.gecko ? "" : "outline: 1px dashed black;") + "opacity: .5;filter: alpha(opacity=50);z-index: 10000}" + e + " .mce-resize-helper {background: #555;background: rgba(0,0,0,0.75);border-radius: 3px;border: 1px;color: white;display: none;font-family: sans-serif;font-size: 12px;white-space: nowrap;line-height: 14px;margin: 5px 10px;padding: 5px;position: absolute;z-index: 10001}" ); var _ = function (e) { return e && ("IMG" === e.nodeName || a.dom.is(e, "figure.image")); }, n = function (e) { var t, n, r = e.target; (t = e), (n = a.selection.getRng()), !_(t.target) || yv(t.clientX, t.clientY, n) || e.isDefaultPrevented() || a.selection.select(r); }, D = function (e) { return a.dom.is(e, "figure.image") ? e.querySelector("img") : e; }, B = function (e) { var t = a.settings.object_resizing; return ( !1 !== t && !ge.iOS && ("string" != typeof t && (t = "table,img,figure.image,div"), "false" !== e.getAttribute("data-mce-resize") && e !== a.getBody() && Or(ir.fromDom(e), t)) ); }, O = function (e) { var t, n, r, o; (t = e.screenX - d), (n = e.screenY - m), (y = t * f[2] + h), (C = n * f[3] + v), (y = y < 5 ? 5 : y), (C = C < 5 ? 5 : C), (_(u) && !1 !== a.settings.resize_img_proportional ? !xv.modifierPressed(e) : xv.modifierPressed(e) || (_(u) && f[2] * f[3] != 0)) && (T(t) > T(n) ? ((C = A(y * b)), (y = A(C / b))) : ((y = A(C / b)), (C = A(y * b)))), N.setStyles(D(s), { width: y, height: C }), (r = 0 < (r = f.startPos.x + t) ? r : 0), (o = 0 < (o = f.startPos.y + n) ? o : 0), N.setStyles(c, { left: r, top: o, display: "block" }), (c.innerHTML = y + " × " + C), f[2] < 0 && s.clientWidth <= y && N.setStyle(s, "left", g + (h - y)), f[3] < 0 && s.clientHeight <= C && N.setStyle(s, "top", p + (v - C)), (t = R.scrollWidth - x) + (n = R.scrollHeight - w) != 0 && N.setStyles(c, { left: r - t, top: o - n }), i || (vp(a, u, h, v), (i = !0)); }, P = function () { i = !1; var e = function (e, t) { t && (u.style[e] || !a.schema.isValid(u.nodeName.toLowerCase(), e) ? N.setStyle(D(u), e, t) : N.setAttrib(D(u), e, t)); }; e("width", y), e("height", C), N.unbind(S, "mousemove", O), N.unbind(S, "mouseup", P), k !== S && (N.unbind(k, "mousemove", O), N.unbind(k, "mouseup", P)), N.remove(s), N.remove(c), o(u), bp(a, u, y, C), N.setAttrib(u, "style", N.getAttrib(u, "style")), a.nodeChanged(); }, o = function (e) { var t, r, o, n, i; I(), F(), (t = N.getPos(e, R)), (g = t.x), (p = t.y), (i = e.getBoundingClientRect()), (r = i.width || i.right - i.left), (o = i.height || i.bottom - i.top), u !== e && ((u = e), (y = C = 0)), (n = a.fire("ObjectSelected", { target: e })), B(e) && !n.isDefaultPrevented() ? E(l, function (n, e) { var t; (t = N.get("mceResizeHandle" + e)) && N.remove(t), (t = N.add(R, "div", { id: "mceResizeHandle" + e, "data-mce-bogus": "all", class: "mce-resizehandle", unselectable: !0, style: "cursor:" + e + "-resize; margin:0; padding:0", })), 11 === ge.ie && (t.contentEditable = !1), N.bind(t, "mousedown", function (e) { var t; e.stopImmediatePropagation(), e.preventDefault(), (d = (t = e).screenX), (m = t.screenY), (h = D(u).clientWidth), (v = D(u).clientHeight), (b = v / h), ((f = n).startPos = { x: r * n[0] + g, y: o * n[1] + p, }), (x = R.scrollWidth), (w = R.scrollHeight), (s = u.cloneNode(!0)), N.addClass(s, "mce-clonedresizable"), N.setAttrib(s, "data-mce-bogus", "all"), (s.contentEditable = !1), (s.unSelectabe = !0), N.setStyles(s, { left: g, top: p, margin: 0 }), s.removeAttribute("data-mce-selected"), R.appendChild(s), N.bind(S, "mousemove", O), N.bind(S, "mouseup", P), k !== S && (N.bind(k, "mousemove", O), N.bind(k, "mouseup", P)), (c = N.add( R, "div", { class: "mce-resize-helper", "data-mce-bogus": "all", }, h + " × " + v )); }), (n.elm = t), N.setStyles(t, { left: r * n[0] + g - t.offsetWidth / 2, top: o * n[1] + p - t.offsetHeight / 2, }); }) : I(), u.setAttribute("data-mce-selected", "1"); }, I = function () { var e, t; for (e in (F(), u && u.removeAttribute("data-mce-selected"), l)) (t = N.get("mceResizeHandle" + e)) && (N.unbind(t), N.remove(t)); }, L = function (e) { var t, n = function (e, t) { if (e) do { if (e === t) return !0; } while ((e = e.parentNode)); }; i || a.removed || (E( N.select("img[data-mce-selected],hr[data-mce-selected]"), function (e) { e.removeAttribute("data-mce-selected"); } ), (t = "mousedown" === e.type ? e.target : r.getNode()), n((t = N.$(t).closest("table,img,figure.image,hr")[0]), R) && (z(), n(r.getStart(!0), t) && n(r.getEnd(!0), t)) ? o(t) : I()); }, M = function (e) { return Cy( (function (e, t) { for (; t && t !== e; ) { if (xy(t) || Cy(t)) return t; t = t.parentNode; } return null; })(a.getBody(), e) ); }, F = function () { for (var e in l) { var t = l[e]; t.elm && (N.unbind(t.elm), delete t.elm); } }, z = function () { try { a.getDoc().execCommand("enableObjectResizing", !1, !1); } catch (e) {} }; return ( a.on("init", function () { z(), ge.ie && 11 <= ge.ie && (a.on("mousedown click", function (e) { var t = e.target, n = t.nodeName; i || !/^(TABLE|IMG|HR)$/.test(n) || M(t) || (2 !== e.button && a.selection.select(t, "TABLE" === n), "mousedown" === e.type && a.nodeChanged()); }), a.dom.bind(R, "mscontrolselect", function (e) { var t = function (e) { ye.setEditorTimeout(a, function () { a.selection.select(e); }); }; if (M(e.target)) return e.preventDefault(), void t(e.target); /^(TABLE|IMG|HR)$/.test(e.target.nodeName) && (e.preventDefault(), "IMG" === e.target.tagName && t(e.target)); })); var t = ye.throttle(function (e) { a.composing || L(e); }); a.on( "nodechange ResizeEditor ResizeWindow drop FullscreenStateChanged", t ), a.on("keyup compositionend", function (e) { u && "TABLE" === u.nodeName && t(e); }), a.on("hide blur", I), a.on("contextmenu", n); }), a.on("remove", F), { isResizable: B, showResizeRect: o, hideResizeRect: I, updateResizeRect: L, destroy: function () { u = s = null; }, } ); }, Ny = function (e) { for (var t = 0, n = 0, r = e; r && r.nodeType; ) (t += r.offsetLeft || 0), (n += r.offsetTop || 0), (r = r.offsetParent); return { x: t, y: n }; }, Ey = function (e, t, n) { var r, o, i, a, u, s = e.dom, c = s.getRoot(), l = 0; if ( ((u = { elm: t, alignToTop: n }), e.fire("scrollIntoView", u), !u.isDefaultPrevented() && Po.isElement(t)) ) { if ((!1 === n && (l = t.offsetHeight), "BODY" !== c.nodeName)) { var f = e.selection.getScrollContainer(); if (f) return ( (r = Ny(t).y - Ny(f).y + l), (a = f.clientHeight), void ( (r < (i = f.scrollTop) || i + a < r + 25) && (f.scrollTop = r < i ? r : r - a + 25) ) ); } (o = s.getViewPort(e.getWin())), (r = s.getPos(t).y + l), (i = o.y), (a = o.h), (r < o.y || i + a < r + 25) && e.getWin().scrollTo(0, r < i ? r : r - a + 25); } }, Sy = function (d, e) { ne(vu.fromRangeStart(e).getClientRects()).each(function (e) { var t, n, r, o, i, a, u, s, c, l = (function (e) { if (e.inline) return e.getBody().getBoundingClientRect(); var t = e.getWin(); return { left: 0, right: t.innerWidth, top: 0, bottom: t.innerHeight, width: t.innerWidth, height: t.innerHeight, }; })(d), f = { x: ((i = t = l), (a = n = e), a.left > i.left && a.right < i.right ? 0 : a.left < i.left ? a.left - i.left : a.right - i.right), y: ((r = t), (o = n), o.top > r.top && o.bottom < r.bottom ? 0 : o.top < r.top ? o.top - r.top : o.bottom - r.bottom), }; (s = 0 !== f.x ? (0 < f.x ? f.x + 4 : f.x - 4) : 0), (c = 0 !== f.y ? (0 < f.y ? f.y + 4 : f.y - 4) : 0), (u = d).inline ? ((u.getBody().scrollLeft += s), (u.getBody().scrollTop += c)) : u.getWin().scrollBy(s, c); }); }, ky = function (e) { return Po.isContentEditableTrue(e) || Po.isContentEditableFalse(e); }, Ty = function (e, t, n) { var r, o, i, a, u, s = n; if (s.caretPositionFromPoint) (o = s.caretPositionFromPoint(e, t)) && ((r = n.createRange()).setStart(o.offsetNode, o.offset), r.collapse(!0)); else if (n.caretRangeFromPoint) r = n.caretRangeFromPoint(e, t); else if (s.body.createTextRange) { r = s.body.createTextRange(); try { r.moveToPoint(e, t), r.collapse(!0); } catch (c) { r = (function (e, n, t) { var r, o, i; if ( ((r = t.elementFromPoint(e, n)), (o = t.body.createTextRange()), (r && "HTML" !== r.tagName) || (r = t.body), o.moveToElementText(r), 0 < (i = (i = Jt.toArray(o.getClientRects())).sort(function (e, t) { return ( (e = Math.abs(Math.max(e.top - n, e.bottom - n))) - (t = Math.abs(Math.max(t.top - n, t.bottom - n))) ); })).length) ) { n = (i[0].bottom + i[0].top) / 2; try { return o.moveToPoint(e, n), o.collapse(!0), o; } catch (a) {} } return null; })(e, t, n); } return ( (i = r), (a = n.body), (u = i && i.parentElement ? i.parentElement() : null), Po.isContentEditableFalse( (function (e, t, n) { for (; e && e !== t; ) { if (n(e)) return e; e = e.parentNode; } return null; })(u, a, ky) ) ? null : i ); } return r; }, Ay = function (n, e) { return W(e, function (e) { var t = n.fire("GetSelectionRange", { range: e }); return t.range !== e ? t.range : e; }); }, Ry = function (e, t) { var n = (t || H.document).createDocumentFragment(); return ( U(e, function (e) { n.appendChild(e.dom()); }), ir.fromDom(n) ); }, _y = kr("element", "width", "rows"), Dy = kr("element", "cells"), By = kr("x", "y"), Oy = function (e, t) { var n = parseInt(xr(e, t), 10); return isNaN(n) ? 1 : n; }, Py = function (e) { return X( e, function (e, t) { return t.cells().length > e ? t.cells().length : e; }, 0 ); }, Iy = function (e, t) { for (var n = e.rows(), r = 0; r < n.length; r++) for (var o = n[r].cells(), i = 0; i < o.length; i++) if (Ir(o[i], t)) return A.some(By(i, r)); return A.none(); }, Ly = function (e, t, n, r, o) { for (var i = [], a = e.rows(), u = n; u <= o; u++) { var s = a[u].cells(), c = t < r ? s.slice(t, r + 1) : s.slice(r, t + 1); i.push(Dy(a[u].element(), c)); } return i; }, My = function (e) { var o = _y(sa(e), 0, []); return ( U($i(e, "tr"), function (n, r) { U($i(n, "td,th"), function (e, t) { !(function (e, t, n, r, o) { for ( var i = Oy(o, "rowspan"), a = Oy(o, "colspan"), u = e.rows(), s = n; s < n + i; s++ ) { u[s] || (u[s] = Dy(ca(r), [])); for (var c = t; c < t + a; c++) u[s].cells()[c] = s === n && c === t ? o : sa(o); } })( o, (function (e, t, n) { for ( ; (r = t), (o = n), (i = void 0), ((i = e.rows())[o] ? i[o].cells() : [])[r]; ) t++; var r, o, i; return t; })(o, t, r), r, n, e ); }); }), _y(o.element(), Py(o.rows()), o.rows()) ); }, Fy = function (e) { return ( (n = W((t = e).rows(), function (e) { var t = W(e.cells(), function (e) { var t = ca(e); return wr(t, "colspan"), wr(t, "rowspan"), t; }), n = sa(e.element()); return Di(n, t), n; })), (r = sa(t.element())), (o = ir.fromTag("tbody")), Di(o, n), _i(r, o), r ); var t, n, r, o; }, zy = function (l, e, t) { return Iy(l, e).bind(function (c) { return Iy(l, t).map(function (e) { return ( (t = l), (r = e), (o = (n = c).x()), (i = n.y()), (a = r.x()), (u = r.y()), (s = i < u ? Ly(t, o, i, a, u) : Ly(t, o, u, a, i)), _y(t.element(), Py(s), s) ); var t, n, r, o, i, a, u, s; }); }); }, Uy = function (n, t) { return Y(n, function (e) { return "li" === cr(e) && jh(e, t); }).fold(q([]), function (e) { return ((t = n), Y(t, function (e) { return "ul" === cr(e) || "ol" === cr(e); })) .map(function (e) { return [ir.fromTag("li"), ir.fromTag(cr(e))]; }) .getOr([]); var t; }); }, Vy = function (e, t) { var n, r = ir.fromDom(t.commonAncestorContainer), o = ef(r, e), i = V(o, function (e) { return go(e) || fo(e); }), a = Uy(o, t), u = i.concat( a.length ? a : bo((n = r)) ? zr(n) .filter(vo) .fold(q([]), function (e) { return [n, e]; }) : vo(n) ? [n] : [] ); return W(u, sa); }, Hy = function () { return Ry([]); }, jy = function (e, t) { return ( (n = ir.fromDom(t.cloneContents())), (r = Vy(e, t)), (o = X( r, function (e, t) { return _i(t, e), t; }, n )), 0 < r.length ? Ry([o]) : o ); var n, r, o; }, qy = function (e, o) { return ((t = e), (n = o[0]), Gi(n, "table", d(Ir, t))) .bind(function (e) { var t = o[0], n = o[o.length - 1], r = My(e); return zy(r, t, n).map(function (e) { return Ry([Fy(e)]); }); }) .getOrThunk(Hy); var t, n; }, $y = function (e, t) { var n, r, o = pm(t, e); return 0 < o.length ? qy(e, o) : ((n = e), 0 < (r = t).length && r[0].collapsed ? Hy() : jy(n, r[0])); }, Wy = function (e, t) { if ( (void 0 === t && (t = {}), (t.get = !0), (t.format = t.format || "html"), (t.selection = !0), (t = e.fire("BeforeGetContent", t)).isDefaultPrevented()) ) return e.fire("GetContent", t), t.content; if ("text" === t.format) return ( (c = e), A.from(c.selection.getRng()) .map(function (e) { var t = c.dom.add( c.getBody(), "div", { "data-mce-bogus": "all", style: "overflow: hidden; opacity: 0;", }, e.cloneContents() ), n = ga(t.innerText); return c.dom.remove(t), n; }) .getOr("") ); t.getInner = !0; var n, r, o, i, a, u, s, c, l = ((r = t), (i = (n = e).selection.getRng()), (a = n.dom.create("body")), (u = n.selection.getSel()), (s = Ay(n, cm(u))), (o = r.contextual ? $y(ir.fromDom(n.getBody()), s).dom() : i.cloneContents()) && a.appendChild(o), n.selection.serializer.serialize(a, r)); return "tree" === t.format ? l : ((t.content = e.selection.isCollapsed() ? "" : l), e.fire("GetContent", t), t.content); }, Ky = function (e, t, n) { var r, o, i, a = e.selection.getRng(), u = e.getDoc(); if ( (((n = n || { format: "html" }).set = !0), (n.selection = !0), (n.content = t), n.no_events || !(n = e.fire("BeforeSetContent", n)).isDefaultPrevented()) ) { if (((t = n.content), a.insertNode)) { (t += '_'), a.startContainer === u && a.endContainer === u ? (u.body.innerHTML = t) : (a.deleteContents(), 0 === u.body.childNodes.length ? (u.body.innerHTML = t) : a.createContextualFragment ? a.insertNode(a.createContextualFragment(t)) : ((o = u.createDocumentFragment()), (i = u.createElement("div")), o.appendChild(i), (i.outerHTML = t), a.insertNode(o))), (r = e.dom.get("__caret")), (a = u.createRange()).setStartBefore(r), a.setEndBefore(r), e.selection.setRng(a), e.dom.remove("__caret"); try { e.selection.setRng(a); } catch (s) {} } else a.item && (u.execCommand("Delete", !1, null), (a = e.getRng())), /^\s+/.test(t) ? (a.pasteHTML('_' + t), e.dom.remove("__mce_tmp")) : a.pasteHTML(t); n.no_events || e.fire("SetContent", n); } else e.fire("SetContent", n); }, Xy = function (e, t, n, r, o) { var i = n ? t.startContainer : t.endContainer, a = n ? t.startOffset : t.endOffset; return A.from(i) .map(ir.fromDom) .map(function (e) { return r && t.collapsed ? e : $r(e, o(e, a)).getOr(e); }) .bind(function (e) { return fr(e) ? A.some(e) : zr(e); }) .map(function (e) { return e.dom(); }) .getOr(e); }, Yy = function (e, t, n) { return Xy(e, t, !0, n, function (e, t) { return Math.min(e.dom().childNodes.length, t); }); }, Gy = function (e, t, n) { return Xy(e, t, !1, n, function (e, t) { return 0 < t ? t - 1 : t; }); }, Jy = function (e, t) { for (var n = e; e && Po.isText(e) && 0 === e.length; ) e = t ? e.nextSibling : e.previousSibling; return e || n; }, Qy = Jt.each, Zy = function (e) { return !!e.select; }, eC = function (e) { return ( !(!e || !e.ownerDocument) && Lr(ir.fromDom(e.ownerDocument), ir.fromDom(e)) ); }, tC = function (u, s, e, c) { var n, t, l, f, a, r = function (e, t) { return Ky(c, e, t); }, o = function (e) { var t = m(); t.collapse(!!e), i(t); }, d = function () { return s.getSelection ? s.getSelection() : s.document.selection; }, m = function () { var e, t, n, r, o = function (e, t, n) { try { return t.compareBoundaryPoints(e, n); } catch (r) { return -1; } }; if (!s) return null; if (null == (r = s.document)) return null; if (c.bookmark !== undefined && !1 === eh(c)) { var i = Qg(c); if (i.isSome()) return i .map(function (e) { return Ay(c, [e])[0]; }) .getOr(r.createRange()); } try { (e = d()) && !Po.isRestrictedNode(e.anchorNode) && (t = 0 < e.rangeCount ? e.getRangeAt(0) : e.createRange ? e.createRange() : r.createRange()); } catch (a) {} return ( (t = Ay(c, [t])[0]) || (t = r.createRange ? r.createRange() : r.body.createTextRange()), t.setStart && 9 === t.startContainer.nodeType && t.collapsed && ((n = u.getRoot()), t.setStart(n, 0), t.setEnd(n, 0)), l && f && (0 === o(t.START_TO_START, t, l) && 0 === o(t.END_TO_END, t, l) ? (t = f) : (f = l = null)), t ); }, i = function (e, t) { var n, r; if ( (o = e) && (Zy(o) || (eC(o.startContainer) && eC(o.endContainer))) ) { var o, i = Zy(e) ? e : null; if (i) { f = null; try { i.select(); } catch (a) {} } else { if ( ((n = d()), (e = c.fire("SetSelectionRange", { range: e, forward: t, }).range), n) ) { f = e; try { n.removeAllRanges(), n.addRange(e); } catch (a) {} !1 === t && n.extend && (n.collapse(e.endContainer, e.endOffset), n.extend(e.startContainer, e.startOffset)), (l = 0 < n.rangeCount ? n.getRangeAt(0) : null); } e.collapsed || e.startContainer !== e.endContainer || !n.setBaseAndExtent || ge.ie || (e.endOffset - e.startOffset < 2 && e.startContainer.hasChildNodes() && (r = e.startContainer.childNodes[e.startOffset]) && "IMG" === r.tagName && (n.setBaseAndExtent( e.startContainer, e.startOffset, e.endContainer, e.endOffset ), (n.anchorNode === e.startContainer && n.focusNode === e.endContainer) || n.setBaseAndExtent(r, 0, r, 1))), c.fire("AfterSetSelectionRange", { range: e, forward: t }); } } }, g = function () { var e, t, n = d(); return ( !(n && n.anchorNode && n.focusNode) || ((e = u.createRng()).setStart(n.anchorNode, n.anchorOffset), e.collapse(!0), (t = u.createRng()).setStart(n.focusNode, n.focusOffset), t.collapse(!0), e.compareBoundaryPoints(e.START_TO_START, t) <= 0) ); }, p = { bookmarkManager: null, controlSelection: null, dom: u, win: s, serializer: e, editor: c, collapse: o, setCursorLocation: function (e, t) { var n = u.createRng(); e ? (n.setStart(e, t), n.setEnd(e, t), i(n), o(!1)) : (qh(u, n, c.getBody(), !0), i(n)); }, getContent: function (e) { return Wy(c, e); }, setContent: r, getBookmark: function (e, t) { return n.getBookmark(e, t); }, moveToBookmark: function (e) { return n.moveToBookmark(e); }, select: function (e, t) { var r, n, o; return ( ((r = u), (n = e), (o = t), A.from(n).map(function (e) { var t = r.nodeIndex(e), n = r.createRng(); return ( n.setStart(e.parentNode, t), n.setEnd(e.parentNode, t + 1), o && (qh(r, n, e, !0), qh(r, n, e, !1)), n ); })).each(i), e ); }, isCollapsed: function () { var e = m(), t = d(); return ( !(!e || e.item) && (e.compareEndPoints ? 0 === e.compareEndPoints("StartToEnd", e) : !t || e.collapsed) ); }, isForward: g, setNode: function (e) { return r(u.getOuterHTML(e)), e; }, getNode: function () { return ( (e = c.getBody()), (t = m()) ? ((r = t.startContainer), (o = t.endContainer), (i = t.startOffset), (a = t.endOffset), (n = t.commonAncestorContainer), !t.collapsed && (r === o && a - i < 2 && r.hasChildNodes() && (n = r.childNodes[i]), 3 === r.nodeType && 3 === o.nodeType && ((r = r.length === i ? Jy(r.nextSibling, !0) : r.parentNode), (o = 0 === a ? Jy(o.previousSibling, !1) : o.parentNode), r && r === o)) ? r : n && 3 === n.nodeType ? n.parentNode : n) : e ); var e, t, n, r, o, i, a; }, getSel: d, setRng: i, getRng: m, getStart: function (e) { return Yy(c.getBody(), m(), e); }, getEnd: function (e) { return Gy(c.getBody(), m(), e); }, getSelectedBlocks: function (e, t) { return (function (e, t, n, r) { var o, i, a = []; if ( ((i = e.getRoot()), (n = e.getParent(n || Yy(i, t, t.collapsed), e.isBlock)), (r = e.getParent(r || Gy(i, t, t.collapsed), e.isBlock)), n && n !== i && a.push(n), n && r && n !== r) ) for (var u = new ao((o = n), i); (o = u.next()) && o !== r; ) e.isBlock(o) && a.push(o); return r && n !== r && r !== i && a.push(r), a; })(u, m(), e, t); }, normalize: function () { var e = m(), t = d(); if (!fm(t) && $h(c)) { var n = wg(u, e); return ( n.each(function (e) { i(e, g()); }), n.getOr(e) ); } return e; }, selectorChanged: function (e, t) { var i; return ( a || ((a = {}), (i = {}), c.on("NodeChange", function (e) { var n = e.element, r = u.getParents(n, null, u.getRoot()), o = {}; Qy(a, function (e, n) { Qy(r, function (t) { if (u.is(t, n)) return ( i[n] || (Qy(e, function (e) { e(!0, { node: t, selector: n, parents: r }); }), (i[n] = e)), (o[n] = e), !1 ); }); }), Qy(i, function (e, t) { o[t] || (delete i[t], Qy(e, function (e) { e(!1, { node: n, selector: t, parents: r }); })); }); })), a[e] || (a[e] = []), a[e].push(t), p ); }, getScrollContainer: function () { for (var e, t = u.getRoot(); t && "BODY" !== t.nodeName; ) { if (t.scrollHeight > t.clientHeight) { e = t; break; } t = t.parentNode; } return e; }, scrollIntoView: function (e, t) { return Ey(c, e, t); }, placeCaretAt: function (e, t) { return i(Ty(e, t, c.getDoc())); }, getBoundingClientRect: function () { var e = m(); return e.collapsed ? Cu.fromRangeStart(e).getClientRects()[0] : e.getBoundingClientRect(); }, destroy: function () { (s = l = f = null), t.destroy(); }, }; return ( (n = yy(p)), (t = wy(p, c)), (p.bookmarkManager = n), (p.controlSelection = t), p ); }; ((by = vy || (vy = {}))[(by.Br = 0)] = "Br"), (by[(by.Block = 1)] = "Block"), (by[(by.Wrap = 2)] = "Wrap"), (by[(by.Eol = 3)] = "Eol"); var nC = function (e, t) { return e === bu.Backwards ? t.reverse() : t; }, rC = function (e, t, n, r) { for ( var o, i, a, u, s, c, l = $s(n), f = r, d = []; f && ((s = l), (c = f), (o = t === bu.Forwards ? s.next(c) : s.prev(c))); ) { if (Po.isBr(o.getNode(!1))) return t === bu.Forwards ? { positions: nC(t, d).concat([o]), breakType: vy.Br, breakAt: A.some(o), } : { positions: nC(t, d), breakType: vy.Br, breakAt: A.some(o) }; if (o.isVisible()) { if (e(f, o)) { var m = ((i = t), (a = f), (u = o), Po.isBr(u.getNode(i === bu.Forwards)) ? vy.Br : !1 === bs(a, u) ? vy.Block : vy.Wrap); return { positions: nC(t, d), breakType: m, breakAt: A.some(o) }; } d.push(o), (f = o); } else f = o; } return { positions: nC(t, d), breakType: vy.Eol, breakAt: A.none() }; }, oC = function (n, r, o, e) { return r(o, e) .breakAt.map(function (e) { var t = r(o, e).positions; return n === bu.Backwards ? t.concat(e) : [e].concat(t); }) .getOr([]); }, iC = function (e, i) { return X( e, function (e, o) { return e.fold( function () { return A.some(o); }, function (r) { return Ya( [ne(r.getClientRects()), ne(o.getClientRects())], function (e, t) { var n = Math.abs(i - e.left); return Math.abs(i - t.left) <= n ? o : r; } ).or(e); } ); }, A.none() ); }, aC = function (t, e) { return ne(e.getClientRects()).bind(function (e) { return iC(t, e.left); }); }, uC = d(rC, vu.isAbove, -1), sC = d(rC, vu.isBelow, 1), cC = d(oC, -1, uC), lC = d(oC, 1, sC), fC = Po.isContentEditableFalse, dC = $a, mC = function (e, t, n, r) { var o = e === bu.Forwards, i = o ? _f : Df; if (!r.collapsed) { var a = dC(r); if (fC(a)) return eg(e, t, a, e === bu.Backwards, !0); } var u = va(r.startContainer), s = ks(e, t.getBody(), r); if (i(s)) return tg(t, s.getNode(!o)); var c = Ll.normalizePosition(o, n(s)); if (!c) return u ? r : null; if (i(c)) return eg(e, t, c.getNode(!o), o, !0); var l = n(c); return l && i(l) && Rs(c, l) ? eg(e, t, l.getNode(!o), o, !0) : u ? rg(t, c.toRange(), !0) : null; }, gC = function (e, t, n, r) { var o, i, a, u, s, c, l, f, d; if ( ((d = dC(r)), (o = ks(e, t.getBody(), r)), (i = n(t.getBody(), cv(1), o)), (a = V(i, lv(1))), (s = Wt.last(o.getClientRects())), (_f(o) || Of(o)) && (d = o.getNode()), (Df(o) || Pf(o)) && (d = o.getNode(!0)), !s) ) return null; if (((c = s.left), (u = hv(a, c)) && fC(u.node))) return ( (l = Math.abs(c - u.left)), (f = Math.abs(c - u.right)), eg(e, t, u.node, l < f, !0) ); if (d) { var m = (function (e, t, n, r) { var o, i, a, u, s, c, l = $s(t), f = [], d = 0, m = function (e) { return Wt.last(e.getClientRects()); }; 1 === e ? ((o = l.next), (i = ja), (a = Ha), (u = Cu.after(r))) : ((o = l.prev), (i = Ha), (a = ja), (u = Cu.before(r))), (c = m(u)); do { if (u.isVisible() && !a((s = m(u)), c)) { if ( (0 < f.length && i(s, Wt.last(f)) && d++, ((s = za(s)).position = u), (s.line = d), n(s)) ) return f; f.push(s); } } while ((u = o(u))); return f; })(e, t.getBody(), cv(1), d); if ((u = hv(V(m, lv(1)), c))) return rg(t, u.position.toRange(), !0); if ((u = Wt.last(V(m, lv(0))))) return rg(t, u.position.toRange(), !0); } }, pC = function (e, t, n) { var r, o, i, a, u = $s(e.getBody()), s = d(As, u.next), c = d(As, u.prev); if (n.collapsed && e.settings.forced_root_block) { if (!(r = e.dom.getParent(n.startContainer, "PRE"))) return; (1 === t ? s(Cu.fromRangeStart(n)) : c(Cu.fromRangeStart(n))) || ((a = (i = e).dom.create(vl(i))), (!ge.ie || 11 <= ge.ie) && (a.innerHTML = '
'), (o = a), 1 === t ? e.$(r).after(o) : e.$(r).before(o), e.selection.select(o, !0), e.selection.collapse()); } }, hC = function (l, f) { return function () { var e, t, n, r, o, i, a, u, s, c = ((t = f), (r = $s((e = l).getBody())), (o = d(As, r.next)), (i = d(As, r.prev)), (a = t ? bu.Forwards : bu.Backwards), (u = t ? o : i), (s = e.selection.getRng()), (n = mC(a, e, u, s)) ? n : (n = pC(e, a, s)) || null); return !!c && (l.selection.setRng(c), !0); }; }, vC = function (u, s) { return function () { var e, t, n, r, o, i, a = ((r = (t = s) ? 1 : -1), (o = t ? sv : uv), (i = (e = u).selection.getRng()), (n = gC(r, e, o, i)) ? n : (n = pC(e, r, i)) || null); return !!a && (u.selection.setRng(a), !0); }; }, bC = function (r, o) { return function () { var t, e = o ? Cu.fromRangeEnd(r.selection.getRng()) : Cu.fromRangeStart(r.selection.getRng()), n = o ? sC(r.getBody(), e) : uC(r.getBody(), e); return (o ? re(n.positions) : ne(n.positions)) .filter( ((t = o), function (e) { return t ? Df(e) : _f(e); }) ) .fold(q(!1), function (e) { return r.selection.setRng(e.toRange()), !0; }); }; }, yC = function (e, t, n, r, o) { var i, a, u, s, c = $i(ir.fromDom(n), "td,th,caption").map(function (e) { return e.dom(); }), l = V( ((i = e), Z(c, function (e) { var t, n, r = ((t = za(e.getBoundingClientRect())), (n = -1), { left: t.left - n, top: t.top - n, right: t.right + 2 * n, bottom: t.bottom + 2 * n, width: t.width + n, height: t.height + n, }); return [ { x: r.left, y: i(r), cell: e }, { x: r.right, y: i(r), cell: e }, ]; })), function (e) { return t(e, o); } ); return ((a = l), (u = r), (s = o), X( a, function (e, r) { return e.fold( function () { return A.some(r); }, function (e) { var t = Math.sqrt(Math.abs(e.x - u) + Math.abs(e.y - s)), n = Math.sqrt(Math.abs(r.x - u) + Math.abs(r.y - s)); return A.some(n < t ? r : e); } ); }, A.none() )).map(function (e) { return e.cell; }); }, CC = d( yC, function (e) { return e.bottom; }, function (e, t) { return e.y < t; } ), xC = d( yC, function (e) { return e.top; }, function (e, t) { return e.y > t; } ), wC = function (t, n) { return ne(n.getClientRects()) .bind(function (e) { return CC(t, e.left, e.top); }) .bind(function (e) { return aC( ((t = e), nc .lastPositionIn(t) .map(function (e) { return uC(t, e).positions.concat(e); }) .getOr([])), n ); var t; }); }, NC = function (t, n) { return re(n.getClientRects()) .bind(function (e) { return xC(t, e.left, e.top); }) .bind(function (e) { return aC( ((t = e), nc .firstPositionIn(t) .map(function (e) { return [e].concat(sC(t, e).positions); }) .getOr([])), n ); var t; }); }, EC = function (e, t) { e.selection.setRng(t), Sy(e, t); }, SC = function (e, t, n) { var r, o, i, a, u = e(t, n); return ((a = u).breakType === vy.Wrap && 0 === a.positions.length) || (!Po.isBr(n.getNode()) && (i = u).breakType === vy.Br && 1 === i.positions.length) ? ((r = e), (o = t), !u.breakAt .map(function (e) { return r(o, e).breakAt.isSome(); }) .getOr(!1)) : u.breakAt.isNone(); }, kC = d(SC, uC), TC = d(SC, sC), AC = function (e, t, n, r) { var o, i, a, u, s = e.selection.getRng(), c = t ? 1 : -1; if ( is() && ((o = t), (i = s), (a = n), (u = Cu.fromRangeStart(i)), nc .positionIn(!o, a) .map(function (e) { return e.isEqual(u); }) .getOr(!1)) ) { var l = eg(c, e, n, !t, !0); return EC(e, l), !0; } return !1; }, RC = function (e, t) { var n = t.getNode(e); return Po.isElement(n) && "TABLE" === n.nodeName ? A.some(n) : A.none(); }, _C = function (u, s, c) { var e = RC(!!s, c), t = !1 === s; e.fold( function () { return EC(u, c.toRange()); }, function (a) { return nc .positionIn(t, u.getBody()) .filter(function (e) { return e.isEqual(c); }) .fold( function () { return EC(u, c.toRange()); }, function (e) { return ( (n = s), (o = a), (t = c), void ((i = vl((r = u))) ? r.undoManager.transact(function () { var e = ir.fromTag(i); Cr(e, bl(r)), _i(e, ir.fromTag("br")), n ? Ai(ir.fromDom(o), e) : Ti(ir.fromDom(o), e); var t = r.dom.createRng(); t.setStart(e.dom(), 0), t.setEnd(e.dom(), 0), EC(r, t); }) : EC(r, t.toRange())) ); var n, r, o, t, i; } ); } ); }, DC = function (e, t, n, r) { var o, i, a, u, s, c, l = e.selection.getRng(), f = Cu.fromRangeStart(l), d = e.getBody(); if (!t && kC(r, f)) { var m = ((u = d), wC((s = n), (c = f)) .orThunk(function () { return ne(c.getClientRects()).bind(function (e) { return iC(cC(u, Cu.before(s)), e.left); }); }) .getOr(Cu.before(s))); return _C(e, t, m), !0; } return ( !(!t || !TC(r, f)) && ((o = d), (m = NC((i = n), (a = f)) .orThunk(function () { return ne(a.getClientRects()).bind(function (e) { return iC(lC(o, Cu.after(i)), e.left); }); }) .getOr(Cu.after(i))), _C(e, t, m), !0) ); }, BC = function (t, n) { return function () { return A.from(t.dom.getParent(t.selection.getNode(), "td,th")) .bind(function (e) { return A.from(t.dom.getParent(e, "table")).map(function (e) { return AC(t, n, e); }); }) .getOr(!1); }; }, OC = function (n, r) { return function () { return A.from(n.dom.getParent(n.selection.getNode(), "td,th")) .bind(function (t) { return A.from(n.dom.getParent(t, "table")).map(function (e) { return DC(n, r, e, t); }); }) .getOr(!1); }; }, PC = function (e) { return F(["figcaption"], cr(e)); }, IC = function (e) { var t = H.document.createRange(); return t.setStartBefore(e.dom()), t.setEndBefore(e.dom()), t; }, LC = function (e, t, n) { n ? _i(e, t) : Ri(e, t); }, MC = function (e, t, n, r) { return "" === t ? ((l = e), (f = r), (d = ir.fromTag("br")), LC(l, d, f), IC(d)) : ((o = e), (i = r), (a = t), (u = n), (s = ir.fromTag(a)), (c = ir.fromTag("br")), Cr(s, u), _i(s, c), LC(o, s, i), IC(c)); var o, i, a, u, s, c, l, f, d; }, FC = function (e, t, n) { return t ? ((o = e.dom()), sC(o, n).breakAt.isNone()) : ((r = e.dom()), uC(r, n).breakAt.isNone()); var r, o; }, zC = function (t, n) { var e, r, o, i = ir.fromDom(t.getBody()), a = Cu.fromRangeStart(t.selection.getRng()), u = vl(t), s = bl(t); return ((e = a), (r = i), (o = d(Ir, r)), Yi(ir.fromDom(e.container()), mo, o).filter(PC)).exists(function () { if (FC(i, n, a)) { var e = MC(i, u, s, n); return t.selection.setRng(e), !0; } return !1; }); }, UC = function (e, t) { return function () { return !!e.selection.isCollapsed() && zC(e, t); }; }, VC = function (e, r) { return Z( W(e, function (e) { return qb( { shiftKey: !1, altKey: !1, ctrlKey: !1, metaKey: !1, keyCode: 0, action: o, }, e ); }), function (e) { return ( (t = e), (n = r).keyCode === t.keyCode && n.shiftKey === t.shiftKey && n.altKey === t.altKey && n.ctrlKey === t.ctrlKey && n.metaKey === t.metaKey ? [e] : [] ); var t, n; } ); }, HC = function (e) { for (var t = [], n = 1; n < arguments.length; n++) t[n - 1] = arguments[n]; var r = Array.prototype.slice.call(arguments, 1); return function () { return e.apply(null, r); }; }, jC = function (e, t) { return Y(VC(e, t), function (e) { return e.action(); }); }, qC = function (i, a) { i.on("keydown", function (e) { var t, n, r, o; !1 === e.isDefaultPrevented() && ((t = i), (n = a), (r = e), (o = rr.detect().os), jC( [ { keyCode: xv.RIGHT, action: hC(t, !0) }, { keyCode: xv.LEFT, action: hC(t, !1) }, { keyCode: xv.UP, action: vC(t, !1) }, { keyCode: xv.DOWN, action: vC(t, !0) }, { keyCode: xv.RIGHT, action: BC(t, !0) }, { keyCode: xv.LEFT, action: BC(t, !1) }, { keyCode: xv.UP, action: OC(t, !1) }, { keyCode: xv.DOWN, action: OC(t, !0) }, { keyCode: xv.RIGHT, action: jd.move(t, n, !0) }, { keyCode: xv.LEFT, action: jd.move(t, n, !1) }, { keyCode: xv.RIGHT, ctrlKey: !o.isOSX(), altKey: o.isOSX(), action: jd.moveNextWord(t, n), }, { keyCode: xv.LEFT, ctrlKey: !o.isOSX(), altKey: o.isOSX(), action: jd.movePrevWord(t, n), }, { keyCode: xv.UP, action: UC(t, !1) }, { keyCode: xv.DOWN, action: UC(t, !0) }, ], r ).each(function (e) { r.preventDefault(); })); }); }, $C = function (o, i) { o.on("keydown", function (e) { var t, n, r; !1 === e.isDefaultPrevented() && ((t = o), (n = i), (r = e), jC( [ { keyCode: xv.BACKSPACE, action: HC(td, t, !1) }, { keyCode: xv.DELETE, action: HC(td, t, !0) }, { keyCode: xv.BACKSPACE, action: HC(ig, t, !1) }, { keyCode: xv.DELETE, action: HC(ig, t, !0) }, { keyCode: xv.BACKSPACE, action: HC(Kd, t, n, !1) }, { keyCode: xv.DELETE, action: HC(Kd, t, n, !0) }, { keyCode: xv.BACKSPACE, action: HC(km, t, !1) }, { keyCode: xv.DELETE, action: HC(km, t, !0) }, { keyCode: xv.BACKSPACE, action: HC(gf, t, !1) }, { keyCode: xv.DELETE, action: HC(gf, t, !0) }, { keyCode: xv.BACKSPACE, action: HC(lf, t, !1) }, { keyCode: xv.DELETE, action: HC(lf, t, !0) }, { keyCode: xv.BACKSPACE, action: HC(Jm, t, !1) }, { keyCode: xv.DELETE, action: HC(Jm, t, !0) }, ], r ).each(function (e) { r.preventDefault(); })); }), o.on("keyup", function (e) { var t, n; !1 === e.isDefaultPrevented() && ((t = o), (n = e), jC( [ { keyCode: xv.BACKSPACE, action: HC(nd, t) }, { keyCode: xv.DELETE, action: HC(nd, t) }, ], n )); }); }, WC = function (e) { return A.from(e.dom.getParent(e.selection.getStart(!0), e.dom.isBlock)); }, KC = function (e, t) { var n, r, o, i = t, a = e.dom, u = e.schema.getMoveCaretBeforeOnEnterElements(); if (t) { if (/^(LI|DT|DD)$/.test(t.nodeName)) { var s = (function (e) { for (; e; ) { if ( 1 === e.nodeType || (3 === e.nodeType && e.data && /[\r\n\s]/.test(e.data)) ) return e; e = e.nextSibling; } })(t.firstChild); s && /^(UL|OL|DL)$/.test(s.nodeName) && t.insertBefore(a.doc.createTextNode("\xa0"), t.firstChild); } if (((o = a.createRng()), t.normalize(), t.hasChildNodes())) { for (n = new ao(t, t); (r = n.current()); ) { if (Po.isText(r)) { o.setStart(r, 0), o.setEnd(r, 0); break; } if (u[r.nodeName.toLowerCase()]) { o.setStartBefore(r), o.setEndBefore(r); break; } (i = r), (r = n.next()); } r || (o.setStart(i, 0), o.setEnd(i, 0)); } else Po.isBr(t) ? t.nextSibling && a.isBlock(t.nextSibling) ? (o.setStartBefore(t), o.setEndBefore(t)) : (o.setStartAfter(t), o.setEndAfter(t)) : (o.setStart(t, 0), o.setEnd(t, 0)); e.selection.setRng(o), a.remove(void 0), e.selection.scrollIntoView(t); } }, XC = function (e, t) { var n, r, o = e.getRoot(); for (n = t; n !== o && "false" !== e.getContentEditable(n); ) "true" === e.getContentEditable(n) && (r = n), (n = n.parentNode); return n !== o ? r : o; }, YC = WC, GC = function (e) { return WC(e).fold(q(""), function (e) { return e.nodeName.toUpperCase(); }); }, JC = function (e) { return WC(e) .filter(function (e) { return bo(ir.fromDom(e)); }) .isSome(); }, QC = function (e, t) { return e && e.parentNode && e.parentNode.nodeName === t; }, ZC = function (e) { return e && /^(OL|UL|LI)$/.test(e.nodeName); }, ex = function (e) { var t = e.parentNode; return /^(LI|DT|DD)$/.test(t.nodeName) ? t : e; }, tx = function (e, t, n) { for (var r = e[n ? "firstChild" : "lastChild"]; r && !Po.isElement(r); ) r = r[n ? "nextSibling" : "previousSibling"]; return r === t; }, nx = function (e, t, n, r, o) { var i = e.dom, a = e.selection.getRng(); if (n !== e.getBody()) { var u; ZC((u = n)) && ZC(u.parentNode) && (o = "LI"); var s, c, l = o ? t(o) : i.create("BR"); if (tx(n, r, !0) && tx(n, r, !1)) QC(n, "LI") ? i.insertAfter(l, ex(n)) : i.replace(l, n); else if (tx(n, r, !0)) QC(n, "LI") ? (i.insertAfter(l, ex(n)), l.appendChild(i.doc.createTextNode(" ")), l.appendChild(n)) : n.parentNode.insertBefore(l, n); else if (tx(n, r, !1)) i.insertAfter(l, ex(n)); else { n = ex(n); var f = a.cloneRange(); f.setStartAfter(r), f.setEndAfter(n); var d = f.extractContents(); "LI" === o && ((c = "LI"), (s = d).firstChild && s.firstChild.nodeName === c) ? ((l = d.firstChild), i.insertAfter(d, n)) : (i.insertAfter(d, n), i.insertAfter(l, n)); } i.remove(r), KC(e, l); } }, rx = function (e) { e.innerHTML = '
'; }, ox = function (e, t) { return ( e.nodeName === t || (e.previousSibling && e.previousSibling.nodeName === t) ); }, ix = function (e, t) { return ( t && e.isBlock(t) && !/^(TD|TH|CAPTION|FORM)$/.test(t.nodeName) && !/^(fixed|absolute)/i.test(t.style.position) && "true" !== e.getContentEditable(t) ); }, ax = function (e, t, n) { return !1 === Po.isText(t) ? n : e ? 1 === n && t.data.charAt(n - 1) === ma ? 0 : n : n === t.data.length - 1 && t.data.charAt(n) === ma ? t.data.length : n; }, ux = function (e, t) { var n, r, o = e.getRoot(); for (n = t; n !== o && "false" !== e.getContentEditable(n); ) "true" === e.getContentEditable(n) && (r = n), (n = n.parentNode); return n !== o ? r : o; }, sx = function (e, t) { var n = vl(e); n && n.toLowerCase() === t.tagName.toLowerCase() && e.dom.setAttribs(t, bl(e)); }, cx = function (a, e) { var t, u, s, i, c, n, r, o, l, f, d, m, g, p, h, v, b, y, C, x = a.dom, w = a.schema, N = w.getNonEmptyElements(), E = a.selection.getRng(), S = function (e) { var t, n, r, o = s, i = w.getTextInlineElements(); if ( (e || "TABLE" === f || "HR" === f ? ((t = x.create(e || m)), sx(a, t)) : (t = c.cloneNode(!1)), (r = t), !1 === xl(a)) ) x.setAttrib(t, "style", null), x.setAttrib(t, "class", null); else do { if (i[o.nodeName]) { if (ju(o) || dc(o)) continue; (n = o.cloneNode(!1)), x.setAttrib(n, "id", ""), t.hasChildNodes() ? n.appendChild(t.firstChild) : (r = n), t.appendChild(n); } } while ((o = o.parentNode) && o !== u); return rx(r), t; }, k = function (e) { var t, n, r, o; if ( ((o = ax(e, s, i)), Po.isText(s) && (e ? 0 < o : o < s.nodeValue.length)) ) return !1; if (s.parentNode === c && g && !e) return !0; if (e && Po.isElement(s) && s === c.firstChild) return !0; if (ox(s, "TABLE") || ox(s, "HR")) return (g && !e) || (!g && e); for ( t = new ao(s, c), Po.isText(s) && (e && 0 === o ? t.prev() : e || o !== s.nodeValue.length || t.next()); (n = t.current()); ) { if (Po.isElement(n)) { if ( !n.getAttribute("data-mce-bogus") && ((r = n.nodeName.toLowerCase()), N[r] && "br" !== r) ) return !1; } else if (Po.isText(n) && !/^[ \t\r\n]*$/.test(n.nodeValue)) return !1; e ? t.prev() : t.next(); } return !0; }, T = function () { (r = /^(H[1-6]|PRE|FIGURE)$/.test(f) && "HGROUP" !== d ? S(m) : S()), wl(a) && ix(x, l) && x.isEmpty(c) ? (r = x.split(l, c)) : x.insertAfter(r, c), KC(a, r); }; wg(x, E).each(function (e) { E.setStart(e.startContainer, e.startOffset), E.setEnd(e.endContainer, e.endOffset); }), (s = E.startContainer), (i = E.startOffset), (m = vl(a)), (n = e.shiftKey), Po.isElement(s) && s.hasChildNodes() && ((g = i > s.childNodes.length - 1), (s = s.childNodes[Math.min(i, s.childNodes.length - 1)] || s), (i = g && Po.isText(s) ? s.nodeValue.length : 0)), (u = ux(x, s)) && (((m && !n) || (!m && n)) && (s = (function (e, t, n, r, o) { var i, a, u, s, c, l, f, d = t || "P", m = e.dom, g = ux(m, r); if (!(a = m.getParent(r, m.isBlock)) || !ix(m, a)) { if ( ((l = (a = a || g) === e.getBody() || ((f = a) && /^(TD|TH|CAPTION)$/.test(f.nodeName)) ? a.nodeName.toLowerCase() : a.parentNode.nodeName.toLowerCase()), !a.hasChildNodes()) ) return ( (i = m.create(d)), sx(e, i), a.appendChild(i), n.setStart(i, 0), n.setEnd(i, 0), i ); for (s = r; s.parentNode !== a; ) s = s.parentNode; for (; s && !m.isBlock(s); ) s = (u = s).previousSibling; if (u && e.schema.isValidChild(l, d.toLowerCase())) { for ( i = m.create(d), sx(e, i), u.parentNode.insertBefore(i, u), s = u; s && !m.isBlock(s); ) (c = s.nextSibling), i.appendChild(s), (s = c); n.setStart(r, o), n.setEnd(r, o); } } return r; })(a, m, E, s, i)), (c = x.getParent(s, x.isBlock)), (l = c ? x.getParent(c.parentNode, x.isBlock) : null), (f = c ? c.nodeName.toUpperCase() : ""), "LI" !== (d = l ? l.nodeName.toUpperCase() : "") || e.ctrlKey || ((l = (c = l).parentNode), (f = d)), /^(LI|DT|DD)$/.test(f) && x.isEmpty(c) ? nx(a, S, l, c, m) : (m && c === a.getBody()) || ((m = m || "P"), va(c) ? ((r = ka(c)), x.isEmpty(c) && rx(c), KC(a, r)) : k() ? T() : k(!0) ? ((r = c.parentNode.insertBefore(S(), c)), KC(a, ox(c, "HR") ? r : c)) : ((t = ((y = E), (C = y.cloneRange()), C.setStart( y.startContainer, ax(!0, y.startContainer, y.startOffset) ), C.setEnd(y.endContainer, ax(!1, y.endContainer, y.endOffset)), C).cloneRange()).setEndAfter(c), (o = t.extractContents()), (b = o), U(qi(ir.fromDom(b), dr), function (e) { var t = e.dom(); t.nodeValue = ga(t.nodeValue); }), (function (e) { for ( ; Po.isText(e) && (e.nodeValue = e.nodeValue.replace(/^[\r\n]+/, "")), (e = e.firstChild); ); })(o), (r = o.firstChild), x.insertAfter(o, c), (function (e, t, n) { var r, o = n, i = []; if (o) { for (; (o = o.firstChild); ) { if (e.isBlock(o)) return; Po.isElement(o) && !t[o.nodeName.toLowerCase()] && i.push(o); } for (r = i.length; r--; ) !(o = i[r]).hasChildNodes() || (o.firstChild === o.lastChild && "" === o.firstChild.nodeValue) ? e.remove(o) : ((a = e), (u = o) && "A" === u.nodeName && a.isEmpty(u) && e.remove(o)); var a, u; } })(x, N, r), (p = x), (h = c).normalize(), ((v = h.lastChild) && !/^(left|right)$/gi.test(p.getStyle(v, "float", !0))) || p.add(h, "br"), x.isEmpty(c) && rx(c), r.normalize(), x.isEmpty(r) ? (x.remove(r), T()) : KC(a, r)), x.setAttrib(r, "id", ""), a.fire("NewBlock", { newBlock: r }))); }, lx = function (e, t) { return YC(e) .filter(function (e) { return 0 < t.length && Or(ir.fromDom(e), t); }) .isSome(); }, fx = function (e) { return lx(e, yl(e)); }, dx = function (e) { return lx(e, Cl(e)); }, mx = pf([{ br: [] }, { block: [] }, { none: [] }]), gx = function (e, t) { return dx(e); }, px = function (n) { return function (e, t) { return ("" === vl(e)) === n; }; }, hx = function (n) { return function (e, t) { return JC(e) === n; }; }, vx = function (n, r) { return function (e, t) { return (GC(e) === n.toUpperCase()) === r; }; }, bx = function (e) { return vx("pre", e); }, yx = function (n) { return function (e, t) { return hl(e) === n; }; }, Cx = function (e, t) { return fx(e); }, xx = function (e, t) { return t; }, wx = function (e) { var t = vl(e), n = XC(e.dom, e.selection.getStart()); return n && e.schema.isValidChild(n.nodeName, t || "P"); }, Nx = function (e, t) { return function (n, r) { return X( e, function (e, t) { return e && t(n, r); }, !0 ) ? A.some(t) : A.none(); }; }, Ex = function (e, t) { return md( [ Nx([gx], mx.none()), Nx([vx("summary", !0)], mx.br()), Nx([bx(!0), yx(!1), xx], mx.br()), Nx([bx(!0), yx(!1)], mx.block()), Nx([bx(!0), yx(!0), xx], mx.block()), Nx([bx(!0), yx(!0)], mx.br()), Nx([hx(!0), xx], mx.br()), Nx([hx(!0)], mx.block()), Nx([px(!0), xx, wx], mx.block()), Nx([px(!0)], mx.br()), Nx([Cx], mx.br()), Nx([px(!1), xx], mx.br()), Nx([wx], mx.block()), ], [e, t.shiftKey] ).getOr(mx.none()); }, Sx = function (e, t) { Ex(e, t).fold( function () { Bg(e, t); }, function () { cx(e, t); }, o ); }, kx = function (o) { o.on("keydown", function (e) { var t, n, r; e.keyCode === xv.ENTER && ((t = o), (n = e).isDefaultPrevented() || (n.preventDefault(), (r = t.undoManager).typing && ((r.typing = !1), r.add()), t.undoManager.transact(function () { !1 === t.selection.isCollapsed() && t.execCommand("Delete"), Sx(t, n); }))); }); }, Tx = function (n, r) { var e = r.container(), t = r.offset(); return Po.isText(e) ? (e.insertData(t, n), A.some(vu(e, t + n.length))) : Ts(r).map(function (e) { var t = ir.fromText(n); return r.isAtEnd() ? Ai(e, t) : Ti(e, t), vu(t.dom(), n.length); }); }, Ax = d(Tx, "\xa0"), Rx = d(Tx, " "), _x = function (e, t, n) { return nc.navigateIgnore(e, t, n, Af); }, Dx = function (e, t) { return Y(ef(ir.fromDom(t.container()), e), mo); }, Bx = function (e, n, r) { return _x(e, n.dom(), r).forall(function (t) { return Dx(n, r).fold( function () { return !1 === bs(t, r, n.dom()); }, function (e) { return !1 === bs(t, r, n.dom()) && Lr(e, ir.fromDom(t.container())); } ); }); }, Ox = function (t, n, r) { return Dx(n, r).fold( function () { return _x(t, n.dom(), r).forall(function (e) { return !1 === bs(e, r, n.dom()); }); }, function (e) { return _x(t, e.dom(), r).isNone(); } ); }, Px = d(Ox, !1), Ix = d(Ox, !0), Lx = d(Bx, !1), Mx = d(Bx, !0), Fx = function (e) { return vu.isTextPosition(e) && !e.isAtStart() && !e.isAtEnd(); }, zx = function (e, t) { var n = V(ef(ir.fromDom(t.container()), e), mo); return ne(n).getOr(e); }, Ux = function (e, t) { return Fx(t) ? Tf(t) : Tf(t) || nc.prevPosition(zx(e, t).dom(), t).exists(Tf); }, Vx = function (e, t) { return Fx(t) ? kf(t) : kf(t) || nc.nextPosition(zx(e, t).dom(), t).exists(kf); }, Hx = function (e) { return Ts(e) .bind(function (e) { return Yi(e, fr); }) .exists(function (e) { return (t = Er(e, "white-space")), F(["pre", "pre-wrap"], t); var t; }); }, jx = function (e, t) { return ( (o = e), (i = t), nc.prevPosition(o.dom(), i).isNone() || ((n = e), (r = t), nc.nextPosition(n.dom(), r).isNone()) || Px(e, t) || Ix(e, t) || yf(e, t) || bf(e, t) ); var n, r, o, i; }, qx = function (e, t) { var n, r, o, i = ((r = (n = t).container()), (o = n.offset()), Po.isText(r) && o < r.data.length ? vu(r, o + 1) : n); return !Hx(i) && (Ix(e, i) || Mx(e, i) || bf(e, i) || Vx(e, i)); }, $x = function (e, t) { return ( (n = e), (!Hx((r = t)) && (Px(n, r) || Lx(n, r) || yf(n, r) || Ux(n, r))) || qx(e, t) ); var n, r; }, Wx = function (e, t) { return wf(e.charAt(t)); }, Kx = function (e) { var t = e.container(); return Po.isText(t) && Xn(t.data, "\xa0"); }, Xx = function (e) { var t = e.data, n = W(t.split(""), function (e, t, n) { return wf(e) && 0 < t && t < n.length - 1 && Ef(n[t - 1]) && Ef(n[t + 1]) ? " " : e; }).join(""); return n !== t && ((e.data = n), !0); }, Yx = function (l, e) { return A.some(e) .filter(Kx) .bind(function (e) { var t, n, r, o, i, a, u, s, c = e.container(); return ( (i = l), (u = (a = c).data), (s = vu(a, 0)), (Wx(u, 0) && !$x(i, s) && ((a.data = " " + u.slice(1)), 1)) || Xx(c) || ((t = l), (r = (n = c).data), (o = vu(n, r.length - 1)), Wx(r, r.length - 1) && !$x(t, o) && ((n.data = r.slice(0, -1) + " "), 1)) ? A.some(e) : A.none() ); }); }, Gx = function (t) { var e = ir.fromDom(t.getBody()); t.selection.isCollapsed() && Yx(e, vu.fromRangeStart(t.selection.getRng())).each(function (e) { t.selection.setRng(e.toRange()); }); }, Jx = function (r, o) { return function (e) { return ( (t = r), !Hx((n = e)) && (jx(t, n) || Ux(t, n) || Vx(t, n)) ? Ax(o) : Rx(o) ); var t, n; }; }, Qx = function (e) { var t, n, r = Cu.fromRangeStart(e.selection.getRng()), o = ir.fromDom(e.getBody()); if (e.selection.isCollapsed()) { var i = d(Ll.isInlineTarget, e), a = Cu.fromRangeStart(e.selection.getRng()); return Dd(i, e.getBody(), a) .bind( ((n = o), function (e) { return e.fold( function (e) { return nc.prevPosition(n.dom(), Cu.before(e)); }, function (e) { return nc.firstPositionIn(e); }, function (e) { return nc.lastPositionIn(e); }, function (e) { return nc.nextPosition(n.dom(), Cu.after(e)); } ); }) ) .bind(Jx(o, r)) .exists( ((t = e), function (e) { return t.selection.setRng(e.toRange()), t.nodeChanged(), !0; }) ); } return !1; }, Zx = function (r) { r.on("keydown", function (e) { var t, n; !1 === e.isDefaultPrevented() && ((t = r), (n = e), jC([{ keyCode: xv.SPACEBAR, action: HC(Qx, t) }], n).each(function ( e ) { n.preventDefault(); })); }); }, ew = function (e, t) { var n; t.hasAttribute("data-mce-caret") && (ka(t), (n = e).selection.setRng(n.selection.getRng()), e.selection.scrollIntoView(t)); }, tw = function (e, t) { var n, r = ((n = e), Ji(ir.fromDom(n.getBody()), "*[data-mce-caret]").fold( q(null), function (e) { return e.dom(); } )); if (r) return "compositionstart" === t.type ? (t.preventDefault(), t.stopPropagation(), void ew(e, r)) : void (Ca(r) && (ew(e, r), e.undoManager.add())); }, nw = function (e) { e.on("keyup compositionstart", d(tw, e)); }, rw = rr.detect().browser, ow = function (t) { var e, n; (e = t), (n = Ii(function () { e.composing || Gx(e); }, 0)), rw.isIE() && (e.on("keypress", function (e) { n.throttle(); }), e.on("remove", function (e) { n.cancel(); })), t.on("input", function (e) { !1 === e.isComposing && Gx(t); }); }, iw = function (r) { r.on("keydown", function (e) { var t, n; !1 === e.isDefaultPrevented() && ((t = r), (n = e), jC( [ { keyCode: xv.END, action: bC(t, !0) }, { keyCode: xv.HOME, action: bC(t, !1) }, ], n ).each(function (e) { n.preventDefault(); })); }); }, aw = function (e) { var t = jd.setupSelectedState(e); nw(e), qC(e, t), $C(e, t), kx(e), Zx(e), ow(e), iw(e); }; function uw(u) { var s, n, r, o = Jt.each, c = xv.BACKSPACE, l = xv.DELETE, f = u.dom, d = u.selection, e = u.settings, t = u.parser, i = ge.gecko, a = ge.ie, m = ge.webkit, g = "data:text/mce-internal,", p = a ? "Text" : "URL", h = function (e, t) { try { u.getDoc().execCommand(e, !1, t); } catch (n) {} }, v = function (e) { return e.isDefaultPrevented(); }, b = function () { u.shortcuts.add("meta+a", null, "SelectAll"); }, y = function () { u.on("keydown", function (e) { if ( !v(e) && e.keyCode === c && d.isCollapsed() && 0 === d.getRng().startOffset ) { var t = d.getNode().previousSibling; if (t && t.nodeName && "table" === t.nodeName.toLowerCase()) return e.preventDefault(), !1; } }); }, C = function () { u.inline || (u.contentStyles.push("body {min-height: 150px}"), u.on("click", function (e) { var t; if ("HTML" === e.target.nodeName) { if (11 < ge.ie) return void u.getBody().focus(); (t = u.selection.getRng()), u.getBody().focus(), u.selection.setRng(t), u.selection.normalize(), u.nodeChanged(); } })); }; return ( u.on("keydown", function (e) { var t, n, r, o, i; if ( !v(e) && e.keyCode === xv.BACKSPACE && ((n = (t = d.getRng()).startContainer), (r = t.startOffset), (o = f.getRoot()), (i = n), t.collapsed && 0 === r) ) { for ( ; i && i.parentNode && i.parentNode.firstChild === i && i.parentNode !== o; ) i = i.parentNode; "BLOCKQUOTE" === i.tagName && (u.formatter.toggle("blockquote", null, i), (t = f.createRng()).setStart(n, 0), t.setEnd(n, 0), d.setRng(t)); } }), (s = function (e) { var t = f.create("body"), n = e.cloneContents(); return t.appendChild(n), d.serializer.serialize(t, { format: "html" }); }), u.on("keydown", function (e) { var t, n, r, o, i, a = e.keyCode; if (!v(e) && (a === l || a === c)) { if ( ((t = u.selection.isCollapsed()), (n = u.getBody()), t && !f.isEmpty(n)) ) return; if ( !t && ((r = u.selection.getRng()), (o = s(r)), (i = f.createRng()).selectNode(u.getBody()), o !== s(i)) ) return; e.preventDefault(), u.setContent(""), n.firstChild && f.isBlock(n.firstChild) ? u.selection.setCursorLocation(n.firstChild, 0) : u.selection.setCursorLocation(n, 0), u.nodeChanged(); } }), ge.windowsPhone || u.on( "keyup focusin mouseup", function (e) { xv.modifierPressed(e) || d.normalize(); }, !0 ), m && (u.settings.content_editable || f.bind(u.getDoc(), "mousedown mouseup", function (e) { var t; if (e.target === u.getDoc().documentElement) if ( ((t = d.getRng()), u.getBody().focus(), "mousedown" === e.type) ) { if (ya(t.startContainer)) return; d.placeCaretAt(e.clientX, e.clientY); } else d.setRng(t); }), u.on("click", function (e) { var t = e.target; /^(IMG|HR)$/.test(t.nodeName) && "false" !== f.getContentEditableParent(t) && (e.preventDefault(), u.selection.select(t), u.nodeChanged()), "A" === t.nodeName && f.hasClass(t, "mce-item-anchor") && (e.preventDefault(), d.select(t)); }), e.forced_root_block && u.on("init", function () { h("DefaultParagraphSeparator", e.forced_root_block); }), u.on("init", function () { u.dom.bind(u.getBody(), "submit", function (e) { e.preventDefault(); }); }), y(), t.addNodeFilter("br", function (e) { for (var t = e.length; t--; ) "Apple-interchange-newline" === e[t].attr("class") && e[t].remove(); }), ge.iOS ? (u.inline || u.on("keydown", function () { H.document.activeElement === H.document.body && u.getWin().focus(); }), C(), u.on("click", function (e) { var t = e.target; do { if ("A" === t.tagName) return void e.preventDefault(); } while ((t = t.parentNode)); }), u.contentStyles.push( ".mce-content-body {-webkit-touch-callout: none}" )) : b()), 11 <= ge.ie && (C(), y()), ge.ie && (b(), h("AutoUrlDetect", !1), u.on("dragstart", function (e) { var t, n, r; (t = e).dataTransfer && (u.selection.isCollapsed() && "IMG" === t.target.tagName && d.select(t.target), 0 < (n = u.selection.getContent()).length && ((r = g + escape(u.id) + "," + escape(n)), t.dataTransfer.setData(p, r))); }), u.on("drop", function (e) { if (!v(e)) { var t = (i = e).dataTransfer && (a = i.dataTransfer.getData(p)) && 0 <= a.indexOf(g) ? ((a = a.substr(g.length).split(",")), { id: unescape(a[0]), html: unescape(a[1]) }) : null; if (t && t.id !== u.id) { e.preventDefault(); var n = Ty(e.x, e.y, u.getDoc()); d.setRng(n), (r = t.html), (o = !0), u.queryCommandSupported("mceInsertClipboardContent") ? u.execCommand("mceInsertClipboardContent", !1, { content: r, internal: o, }) : u.execCommand("mceInsertContent", !1, r); } } var r, o, i, a; })), i && (u.on("keydown", function (e) { if (!v(e) && e.keyCode === c) { if (!u.getBody().getElementsByTagName("hr").length) return; if (d.isCollapsed() && 0 === d.getRng().startOffset) { var t = d.getNode(), n = t.previousSibling; if ("HR" === t.nodeName) return f.remove(t), void e.preventDefault(); n && n.nodeName && "hr" === n.nodeName.toLowerCase() && (f.remove(n), e.preventDefault()); } } }), H.Range.prototype.getClientRects || u.on("mousedown", function (e) { if (!v(e) && "HTML" === e.target.nodeName) { var t = u.getBody(); t.blur(), ye.setEditorTimeout(u, function () { t.focus(); }); } }), (n = function () { var e = f.getAttribs(d.getStart().cloneNode(!1)); return function () { var t = d.getStart(); t !== u.getBody() && (f.setAttrib(t, "style", null), o(e, function (e) { t.setAttributeNode(e.cloneNode(!0)); })); }; }), (r = function () { return ( !d.isCollapsed() && f.getParent(d.getStart(), f.isBlock) !== f.getParent(d.getEnd(), f.isBlock) ); }), u.on("keypress", function (e) { var t; if (!v(e) && (8 === e.keyCode || 46 === e.keyCode) && r()) return ( (t = n()), u.getDoc().execCommand("delete", !1, null), t(), e.preventDefault(), !1 ); }), f.bind(u.getDoc(), "cut", function (e) { var t; !v(e) && r() && ((t = n()), ye.setEditorTimeout(u, function () { t(); })); }), e.readonly || u.on("BeforeExecCommand MouseDown", function () { h("StyleWithCSS", !1), h("enableInlineTableEditing", !1), e.object_resizing || h("enableObjectResizing", !1); }), u.on("SetContent ExecCommand", function (e) { ("setcontent" !== e.type && "mceInsertLink" !== e.command) || o(f.select("a"), function (e) { var t = e.parentNode, n = f.getRoot(); if (t.lastChild === e) { for (; t && !f.isBlock(t); ) { if (t.parentNode.lastChild !== t || t === n) return; t = t.parentNode; } f.add(t, "br", { "data-mce-bogus": 1 }); } }); }), u.contentStyles.push( "img:-moz-broken {-moz-force-broken-image-icon:1;min-width:24px;min-height:24px}" ), ge.mac && u.on("keydown", function (e) { !xv.metaKeyPressed(e) || e.shiftKey || (37 !== e.keyCode && 39 !== e.keyCode) || (e.preventDefault(), u.selection .getSel() .modify( "move", 37 === e.keyCode ? "backward" : "forward", "lineboundary" )); }), y()), { refreshContentEditable: function () {}, isHidden: function () { var e; return !i || u.removed ? 0 : !(e = u.selection.getSel()) || !e.rangeCount || 0 === e.rangeCount; }, } ); } var sw = function (e) { return Po.isElement(e) && ho(ir.fromDom(e)); }, cw = function (t) { t.on("click", function (e) { 3 <= e.detail && (function (e) { var t = e.selection.getRng(), n = vu.fromRangeStart(t), r = vu.fromRangeEnd(t); if (vu.isElementPosition(n)) { var o = n.container(); sw(o) && nc.firstPositionIn(o).each(function (e) { return t.setStart(e.container(), e.offset()); }); } vu.isElementPosition(r) && ((o = n.container()), sw(o) && nc.lastPositionIn(o).each(function (e) { return t.setEnd(e.container(), e.offset()); })), e.selection.setRng(rl(t)); })(t); }); }, lw = function (e) { var t, n; (t = e).on("click", function (e) { t.dom.getParent(e.target, "details") && e.preventDefault(); }), (n = e).parser.addNodeFilter("details", function (e) { U(e, function (e) { e.attr("data-mce-open", e.attr("open")), e.attr("open", "open"); }); }), n.serializer.addNodeFilter("details", function (e) { U(e, function (e) { var t = e.attr("data-mce-open"); e.attr("open", R(t) ? t : null), e.attr("data-mce-open", null); }); }); }, fw = bi.DOM, dw = function (e) { var t; e.bindPendingEventDelegates(), (e.initialized = !0), e.fire("init"), e.focus(!0), e.nodeChanged({ initial: !0 }), e.execCallback("init_instance_callback", e), (t = e).settings.auto_focus && ye.setEditorTimeout( t, function () { var e; (e = !0 === t.settings.auto_focus ? t : t.editorManager.get(t.settings.auto_focus)).destroyed || e.focus(); }, 100 ); }, mw = function (t, e) { var n, r, u, o, i, a, s, c, l, f = t.settings, d = t.getElement(), m = t.getDoc(); f.inline || (t.getElement().style.visibility = t.orgVisibility), e || f.content_editable || (m.open(), m.write(t.iframeHTML), m.close()), f.content_editable && (t.on("remove", function () { var e = this.getBody(); fw.removeClass(e, "mce-content-body"), fw.removeClass(e, "mce-edit-focus"), fw.setAttrib(e, "contentEditable", null); }), fw.addClass(d, "mce-content-body"), (t.contentDocument = m = f.content_document || H.document), (t.contentWindow = f.content_window || H.window), (t.bodyElement = d), (f.content_document = f.content_window = null), (f.root_name = d.nodeName.toLowerCase())), ((n = t.getBody()).disabled = !0), (t.readonly = f.readonly), t.readonly || (t.inline && "static" === fw.getStyle(n, "position", !0) && (n.style.position = "relative"), (n.contentEditable = t.getParam("content_editable_state", !0))), (n.disabled = !1), (t.editorUpload = Lh(t)), (t.schema = ii(f)), (t.dom = bi(m, { keep_values: !0, url_converter: t.convertURL, url_converter_scope: t, hex_colors: f.force_hex_style_colors, class_filter: f.class_filter, update_styles: !0, root_element: t.inline ? t.getBody() : null, collect: f.content_editable, schema: t.schema, contentCssCors: Ol(t), onSetAttrib: function (e) { t.fire("SetAttrib", e); }, })), (t.parser = ((o = ly((u = t).settings, u.schema)).addAttributeFilter( "src,href,style,tabindex", function (e, t) { for (var n, r, o, i = e.length, a = u.dom; i--; ) if ( ((r = (n = e[i]).attr(t)), (o = "data-mce-" + t), !n.attributes.map[o]) ) { if (0 === r.indexOf("data:") || 0 === r.indexOf("blob:")) continue; "style" === t ? ((r = a.serializeStyle(a.parseStyle(r), n.name)).length || (r = null), n.attr(o, r), n.attr(t, r)) : "tabindex" === t ? (n.attr(o, r), n.attr(t, null)) : n.attr(o, u.convertURL(r, t, n.name)); } } ), o.addNodeFilter("script", function (e) { for (var t, n, r = e.length; r--; ) 0 !== (n = (t = e[r]).attr("type") || "no/type").indexOf("mce-") && t.attr("type", "mce-" + n); }), o.addNodeFilter("#cdata", function (e) { for (var t, n = e.length; n--; ) ((t = e[n]).type = 8), (t.name = "#comment"), (t.value = "[CDATA[" + t.value + "]]"); }), o.addNodeFilter("p,h1,h2,h3,h4,h5,h6,div", function (e) { for (var t, n = e.length, r = u.schema.getNonEmptyElements(); n--; ) (t = e[n]).isEmpty(r) && 0 === t.getAll("br").length && (t.append(new Zb("br", 1)).shortEnded = !0); }), o)), (t.serializer = py(f, t)), (t.selection = tC(t.dom, t.getWin(), t.serializer, t)), (t.annotator = Mc(t)), (t.formatter = Vb(t)), (t.undoManager = Xv(t)), (t._nodeChangeDispatcher = new Wh(t)), (t._selectionOverrides = Sv(t)), lw(t), cw(t), aw(t), Uh(t), t.fire("PreInit"), f.browser_spellcheck || f.gecko_spellcheck || ((m.body.spellcheck = !1), fw.setAttrib(n, "spellcheck", "false")), (t.quirks = uw(t)), t.fire("PostRender"), f.directionality && (n.dir = f.directionality), f.nowrap && (n.style.whiteSpace = "nowrap"), f.protect && t.on("BeforeSetContent", function (t) { Jt.each(f.protect, function (e) { t.content = t.content.replace(e, function (e) { return "\x3c!--mce:protected " + escape(e) + "--\x3e"; }); }); }), t.on("SetContent", function () { t.addVisual(t.getBody()); }), t.load({ initial: !0, format: "html" }), (t.startContent = t.getContent({ format: "raw" })), t.on("compositionstart compositionend", function (e) { t.composing = "compositionstart" === e.type; }), 0 < t.contentStyles.length && ((r = ""), Jt.each(t.contentStyles, function (e) { r += e + "\r\n"; }), t.dom.addStyle(r)), ((i = t), i.inline ? fw.styleSheetLoader : i.dom.styleSheetLoader).loadAll( t.contentCSS, function (e) { dw(t); }, function (e) { dw(t); } ), f.content_style && ((a = t), (s = f.content_style), (c = ir.fromDom(a.getDoc().head)), (l = ir.fromTag("style")), yr(l, "type", "text/css"), _i(l, ir.fromText(s)), _i(c, l)); }, gw = bi.DOM, pw = function (e, t) { var n, r, o, i, a, u, s, c = e.editorManager.translate( "Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help" ), l = ((n = e.id), (r = c), (o = t.height), (i = ll(e)), (s = ir.fromTag("iframe")), Cr(s, i), Cr(s, { id: n + "_ifr", frameBorder: "0", allowTransparency: "true", title: r, }), Nr(s, { width: "100%", height: ((a = o), (u = "number" == typeof a ? a + "px" : a), u || ""), display: "block", }), s).dom(); l.onload = function () { (l.onload = null), e.fire("load"); }; var f, d, m, g, p = (function (e, t) { if ( H.document.domain !== H.window.location.hostname && ge.ie && ge.ie < 12 ) { var n = Ih.uuid("mce"); e[n] = function () { mw(e); }; var r = 'javascript:(function(){document.open();document.domain="' + H.document.domain + '";var ed = window.parent.tinymce.get("' + e.id + '");document.write(ed.iframeHTML);document.close();ed.' + n + "(true);})()"; return gw.setAttrib(t, "src", r), !0; } return !1; })(e, l); return ( (e.contentAreaContainer = t.iframeContainer), (e.iframeElement = l), (e.iframeHTML = ((g = fl((f = e)) + ""), dl(f) !== f.documentBaseUrl && (g += ''), (g += ''), (d = ml(f)), (m = gl(f)), pl(f) && (g += ''), (g += '
'))), gw.add(t.iframeContainer, l), p ); }, hw = function (e, t) { var n = pw(e, t); t.editorContainer && ((gw.get(t.editorContainer).style.display = e.orgDisplay), (e.hidden = gw.isHidden(t.editorContainer))), (e.getElement().style.display = "none"), gw.setAttrib(e.id, "aria-hidden", "true"), n || mw(e); }, vw = bi.DOM, bw = function (t, n, e) { var r = Ch.get(e), o = Ch.urls[e] || t.documentBaseUrl.replace(/\/$/, ""); if (((e = Jt.trim(e)), r && -1 === Jt.inArray(n, e))) { if ( (Jt.each(Ch.dependencies(e), function (e) { bw(t, n, e); }), t.plugins[e]) ) return; try { var i = new r(t, o, t.$); (t.plugins[e] = i).init && (i.init(t, o), n.push(e)); } catch (ZN) { yh.pluginInitError(t, e, ZN); } } }, yw = function (e) { return e.replace(/^\-/, ""); }, Cw = function (e) { return { editorContainer: e, iframeContainer: e }; }, xw = function (e) { var t, n, r = e.getElement(); return e.inline ? Cw(null) : ((t = r), (n = vw.create("div")), vw.insertAfter(n, t), Cw(n)); }, ww = function (e) { var t, n, r, o, i, a, u, s, c, l, f, d = e.settings, m = e.getElement(); return ( (e.orgDisplay = m.style.display), R(d.theme) ? ((l = (o = e).settings), (f = o.getElement()), (i = l.width || vw.getStyle(f, "width") || "100%"), (a = l.height || vw.getStyle(f, "height") || f.offsetHeight), (u = l.min_height || 100), (s = /^[0-9\.]+(|px)$/i).test("" + i) && (i = Math.max(parseInt(i, 10), 100)), s.test("" + a) && (a = Math.max(parseInt(a, 10), u)), (c = o.theme.renderUI({ targetNode: f, width: i, height: a, deltaWidth: l.delta_width, deltaHeight: l.delta_height, })), l.content_editable || ((a = (c.iframeHeight || a) + ("number" == typeof a ? c.deltaHeight || 0 : "")) < u && (a = u)), (c.height = a), c) : P(d.theme) ? ((r = (t = e).getElement()), (n = t.settings.theme(t, r)).editorContainer.nodeType && (n.editorContainer.id = n.editorContainer.id || t.id + "_parent"), n.iframeContainer && n.iframeContainer.nodeType && (n.iframeContainer.id = n.iframeContainer.id || t.id + "_iframecontainer"), (n.height = n.iframeHeight ? n.iframeHeight : r.offsetHeight), n) : xw(e) ); }, Nw = function (t) { var e, n, r, o, i, a, u = t.settings, s = t.getElement(); return ( (t.rtl = u.rtl_ui || t.editorManager.i18n.rtl), t.editorManager.i18n.setCode(u.language), (u.aria_label = u.aria_label || vw.getAttrib(s, "aria-label", t.getLang("aria.rich_text_area"))), t.fire("ScriptsLoaded"), (o = (n = t).settings.theme), R(o) ? ((n.settings.theme = yw(o)), (r = xh.get(o)), (n.theme = new r(n, xh.urls[o])), n.theme.init && n.theme.init( n, xh.urls[o] || n.documentBaseUrl.replace(/\/$/, ""), n.$ )) : (n.theme = {}), (i = t), (a = []), Jt.each(i.settings.plugins.split(/[ ,]/), function (e) { bw(i, a, yw(e)); }), (e = ww(t)), (t.editorContainer = e.editorContainer ? e.editorContainer : null), u.content_css && Jt.each(Jt.explode(u.content_css), function (e) { t.contentCSS.push(t.documentBaseURI.toAbsolute(e)); }), u.content_editable ? mw(t) : hw(t, e) ); }, Ew = bi.DOM, Sw = function (e) { return "-" === e.charAt(0); }, kw = function (i, a) { var u = Ni.ScriptLoader; !(function (e, t, n, r) { var o = t.settings, i = o.theme; if (R(i)) { if (!Sw(i) && !xh.urls.hasOwnProperty(i)) { var a = o.theme_url; a ? xh.load(i, t.documentBaseURI.toAbsolute(a)) : xh.load(i, "themes/" + i + "/theme" + n + ".js"); } e.loadQueue(function () { xh.waitFor(i, r); }); } else r(); })(u, i, a, function () { var e, t, n, r, o; (e = u), (n = (t = i).settings).language && "en" !== n.language && !n.language_url && (n.language_url = t.editorManager.baseURL + "/langs/" + n.language + ".js"), n.language_url && !t.editorManager.i18n.data[n.language] && e.add(n.language_url), (r = i.settings), (o = a), Jt.isArray(r.plugins) && (r.plugins = r.plugins.join(" ")), Jt.each(r.external_plugins, function (e, t) { Ch.load(t, e), (r.plugins += " " + t); }), Jt.each(r.plugins.split(/[ ,]/), function (e) { if ((e = Jt.trim(e)) && !Ch.urls[e]) if (Sw(e)) { e = e.substr(1, e.length); var t = Ch.dependencies(e); Jt.each(t, function (e) { var t = { prefix: "plugins/", resource: e, suffix: "/plugin" + o + ".js", }; (e = Ch.createUrl(t, e)), Ch.load(e.resource, e); }); } else Ch.load(e, { prefix: "plugins/", resource: e, suffix: "/plugin" + o + ".js", }); }), u.loadQueue( function () { i.removed || Nw(i); }, i, function (e) { yh.pluginLoadError(i, e[0]), i.removed || Nw(i); } ); }); }, Tw = function (t) { var e = t.settings, n = t.id, r = function () { Ew.unbind(H.window, "ready", r), t.render(); }; if (Ae.Event.domLoaded) { if (t.getElement() && ge.contentEditable) { e.inline ? (t.inline = !0) : ((t.orgVisibility = t.getElement().style.visibility), (t.getElement().style.visibility = "hidden")); var o = t.getElement().form || Ew.getParent(n, "form"); o && ((t.formElement = o), e.hidden_input && !/TEXTAREA|INPUT/i.test(t.getElement().nodeName) && (Ew.insertAfter( Ew.create("input", { type: "hidden", name: n }), n ), (t.hasHiddenInput = !0)), (t.formEventDelegate = function (e) { t.fire(e.type, e); }), Ew.bind(o, "submit reset", t.formEventDelegate), t.on("reset", function () { t.setContent(t.startContent, { format: "raw" }); }), !e.submit_patch || o.submit.nodeType || o.submit.length || o._mceOldSubmit || ((o._mceOldSubmit = o.submit), (o.submit = function () { return ( t.editorManager.triggerSave(), t.setDirty(!1), o._mceOldSubmit(o) ); }))), (t.windowManager = lh(t)), (t.notificationManager = ch(t)), "xml" === e.encoding && t.on("GetContent", function (e) { e.save && (e.content = Ew.encode(e.content)); }), e.add_form_submit_trigger && t.on("submit", function () { t.initialized && t.save(); }), e.add_unload_trigger && ((t._beforeUnload = function () { !t.initialized || t.destroyed || t.isHidden() || t.save({ format: "raw", no_events: !0, set_dirty: !1 }); }), t.editorManager.on("BeforeUnload", t._beforeUnload)), t.editorManager.add(t), kw(t, t.suffix); } } else Ew.bind(H.window, "ready", r); }, Aw = function (e, t, n) { var r = e.sidebars ? e.sidebars : []; r.push({ name: t, settings: n }), (e.sidebars = r); }, Rw = Jt.each, _w = Jt.trim, Dw = "source protocol authority userInfo user password host port relative path directory file query anchor".split( " " ), Bw = { ftp: 21, http: 80, https: 443, mailto: 25 }, Ow = function (r, e) { var t, n, o = this; if ( ((r = _w(r)), (t = (e = o.settings = e || {}).base_uri), /^([\w\-]+):([^\/]{2})/i.test(r) || /^\s*#/.test(r)) ) o.source = r; else { var i = 0 === r.indexOf("//"); 0 !== r.indexOf("/") || i || (r = ((t && t.protocol) || "http") + "://mce_host" + r), /^[\w\-]*:?\/\//.test(r) || ((n = e.base_uri ? e.base_uri.path : new Ow(H.document.location.href).directory), "" == e.base_uri.protocol ? (r = "//mce_host" + o.toAbsPath(n, r)) : ((r = /([^#?]*)([#?]?.*)/.exec(r)), (r = ((t && t.protocol) || "http") + "://mce_host" + o.toAbsPath(n, r[1]) + r[2]))), (r = r.replace(/@@/g, "(mce_at)")), (r = /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*):?([^:@\/]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec( r )), Rw(Dw, function (e, t) { var n = r[t]; n && (n = n.replace(/\(mce_at\)/g, "@@")), (o[e] = n); }), t && (o.protocol || (o.protocol = t.protocol), o.userInfo || (o.userInfo = t.userInfo), o.port || "mce_host" !== o.host || (o.port = t.port), (o.host && "mce_host" !== o.host) || (o.host = t.host), (o.source = "")), i && (o.protocol = ""); } }; (Ow.prototype = { setPath: function (e) { (e = /^(.*?)\/?(\w+)?$/.exec(e)), (this.path = e[0]), (this.directory = e[1]), (this.file = e[2]), (this.source = ""), this.getURI(); }, toRelative: function (e) { var t; if ("./" === e) return e; if ( ("mce_host" !== (e = new Ow(e, { base_uri: this })).host && this.host !== e.host && e.host) || this.port !== e.port || (this.protocol !== e.protocol && "" !== e.protocol) ) return e.getURI(); var n = this.getURI(), r = e.getURI(); return n === r || ("/" === n.charAt(n.length - 1) && n.substr(0, n.length - 1) === r) ? n : ((t = this.toRelPath(this.path, e.path)), e.query && (t += "?" + e.query), e.anchor && (t += "#" + e.anchor), t); }, toAbsolute: function (e, t) { return (e = new Ow(e, { base_uri: this })).getURI( t && this.isSameOrigin(e) ); }, isSameOrigin: function (e) { if (this.host == e.host && this.protocol == e.protocol) { if (this.port == e.port) return !0; var t = Bw[this.protocol]; if (t && (this.port || t) == (e.port || t)) return !0; } return !1; }, toRelPath: function (e, t) { var n, r, o, i = 0, a = ""; if ( ((e = (e = e.substring(0, e.lastIndexOf("/"))).split("/")), (n = t.split("/")), e.length >= n.length) ) for (r = 0, o = e.length; r < o; r++) if (r >= n.length || e[r] !== n[r]) { i = r + 1; break; } if (e.length < n.length) for (r = 0, o = n.length; r < o; r++) if (r >= e.length || e[r] !== n[r]) { i = r + 1; break; } if (1 === i) return t; for (r = 0, o = e.length - (i - 1); r < o; r++) a += "../"; for (r = i - 1, o = n.length; r < o; r++) a += r !== i - 1 ? "/" + n[r] : n[r]; return a; }, toAbsPath: function (e, t) { var n, r, o, i = 0, a = []; for ( r = /\/$/.test(t) ? "/" : "", e = e.split("/"), t = t.split("/"), Rw(e, function (e) { e && a.push(e); }), e = a, n = t.length - 1, a = []; 0 <= n; n-- ) 0 !== t[n].length && "." !== t[n] && (".." !== t[n] ? (0 < i ? i-- : a.push(t[n])) : i++); return ( 0 !== (o = (n = e.length - i) <= 0 ? a.reverse().join("/") : e.slice(0, n).join("/") + "/" + a.reverse().join("/")).indexOf( "/" ) && (o = "/" + o), r && o.lastIndexOf("/") !== o.length - 1 && (o += r), o ); }, getURI: function (e) { var t, n = this; return ( (n.source && !e) || ((t = ""), e || (n.protocol ? (t += n.protocol + "://") : (t += "//"), n.userInfo && (t += n.userInfo + "@"), n.host && (t += n.host), n.port && (t += ":" + n.port)), n.path && (t += n.path), n.query && (t += "?" + n.query), n.anchor && (t += "#" + n.anchor), (n.source = t)), n.source ); }, }), (Ow.parseDataUri = function (e) { var t, n; return ( (e = decodeURIComponent(e).split(",")), (n = /data:([^;]+)/.exec(e[0])) && (t = n[1]), { type: t, data: e[1] } ); }), (Ow.getDocumentBaseUrl = function (e) { var t; return ( (t = 0 !== e.protocol.indexOf("http") && "file:" !== e.protocol ? e.href : e.protocol + "//" + e.host + e.pathname), /^[^:]+:\/\/\/?[^\/]+\//.test(t) && ((t = t.replace(/[\?#].*$/, "").replace(/[\/\\][^\/]+$/, "")), /[\/\\]$/.test(t) || (t += "/")), t ); }); var Pw = function (e, t, n) { var r, o, i, a, u; if ( ((t.format = t.format ? t.format : "html"), (t.get = !0), (t.getInner = !0), t.no_events || e.fire("BeforeGetContent", t), "raw" === t.format) ) r = Jt.trim(Dv.trimExternal(e.serializer, n.innerHTML)); else if ("text" === t.format) r = ga(n.innerText || n.textContent); else { if ("tree" === t.format) return e.serializer.serialize(n, t); (i = (o = e).serializer.serialize(n, t)), (a = vl(o)), (u = new RegExp( "^(<" + a + "[^>]*>( | |\\s|\xa0|
|)<\\/" + a + ">[\r\n]*|
[\r\n]*)$" )), (r = i.replace(u, "")); } return ( "text" === t.format || wo(ir.fromDom(n)) ? (t.content = r) : (t.content = Jt.trim(r)), t.no_events || e.fire("GetContent", t), t.content ); }, Iw = function (e, t) { t(e), e.firstChild && Iw(e.firstChild, t), e.next && Iw(e.next, t); }, Lw = function (e, t, n) { var r = (function (e, n, t) { var r = {}, o = {}, i = []; for (var a in (t.firstChild && Iw(t.firstChild, function (t) { U(e, function (e) { e.name === t.name && (r[e.name] ? r[e.name].nodes.push(t) : (r[e.name] = { filter: e, nodes: [t] })); }), U(n, function (e) { "string" == typeof t.attr(e.name) && (o[e.name] ? o[e.name].nodes.push(t) : (o[e.name] = { filter: e, nodes: [t] })); }); }), r)) r.hasOwnProperty(a) && i.push(r[a]); for (var a in o) o.hasOwnProperty(a) && i.push(o[a]); return i; })(e, t, n); U(r, function (t) { U(t.filter.callbacks, function (e) { e(t.nodes, t.filter.name, {}); }); }); }, Mw = function (e) { return e instanceof Zb; }, Fw = function (e, t) { var r; e.dom.setHTML(e.getBody(), t), eh((r = e)) && nc.firstPositionIn(r.getBody()).each(function (e) { var t = e.getNode(), n = Po.isTable(t) ? nc.firstPositionIn(t).getOr(e) : e; r.selection.setRng(n.toRange()); }); }, zw = function (u, s, c) { return ( void 0 === c && (c = {}), (c.format = c.format ? c.format : "html"), (c.set = !0), (c.content = Mw(s) ? "" : s), Mw(s) || c.no_events || (u.fire("BeforeSetContent", c), (s = c.content)), A.from(u.getBody()).fold(q(s), function (e) { return Mw(s) ? (function (e, t, n, r) { Lw( e.parser.getNodeFilters(), e.parser.getAttributeFilters(), n ); var o = el({ validate: e.validate }, e.schema).serialize(n); return ( (r.content = wo(ir.fromDom(t)) ? o : Jt.trim(o)), Fw(e, r.content), r.no_events || e.fire("SetContent", r), n ); })(u, e, s, c) : ((t = u), (n = e), (o = c), 0 === (r = s).length || /^\s+$/.test(r) ? ((a = '
'), "TABLE" === n.nodeName ? (r = "" + a + "") : /^(UL|OL)$/.test(n.nodeName) && (r = "
  • " + a + "
  • "), (i = vl(t)) && t.schema.isValidChild( n.nodeName.toLowerCase(), i.toLowerCase() ) ? ((r = a), (r = t.dom.createHTML( i, t.settings.forced_root_block_attrs, r ))) : r || (r = '
    '), Fw(t, r), t.fire("SetContent", o)) : ("raw" !== o.format && (r = el({ validate: t.validate }, t.schema).serialize( t.parser.parse(r, { isRootContent: !0, insert: !0 }) )), (o.content = wo(ir.fromDom(n)) ? r : Jt.trim(r)), Fw(t, o.content), o.no_events || t.fire("SetContent", o)), o.content); var t, n, r, o, i, a; }) ); }, Uw = bi.DOM, Vw = function (e) { return A.from(e).each(function (e) { return e.destroy(); }); }, Hw = function (e) { if (!e.removed) { var t = e._selectionOverrides, n = e.editorUpload, r = e.getBody(), o = e.getElement(); r && e.save({ is_removing: !0 }), (e.removed = !0), e.unbindAllNativeEvents(), e.hasHiddenInput && o && Uw.remove(o.nextSibling), gp(e), e.editorManager.remove(e), !e.inline && r && ((i = e), Uw.setStyle(i.id, "display", i.orgDisplay)), pp(e), Uw.remove(e.getContainer()), Vw(t), Vw(n), e.destroy(); } var i; }, jw = function (e, t) { var n, r, o, i = e.selection, a = e.dom; e.destroyed || (t || e.removed ? (t || (e.editorManager.off("beforeunload", e._beforeUnload), e.theme && e.theme.destroy && e.theme.destroy(), Vw(i), Vw(a)), (r = (n = e).formElement) && (r._mceOldSubmit && ((r.submit = r._mceOldSubmit), (r._mceOldSubmit = null)), Uw.unbind(r, "submit reset", n.formEventDelegate)), ((o = e).contentAreaContainer = o.formElement = o.container = o.editorContainer = null), (o.bodyElement = o.contentDocument = o.contentWindow = null), (o.iframeElement = o.targetElm = null), o.selection && (o.selection = o.selection.win = o.selection.dom = o.selection.dom.doc = null), (e.destroyed = !0)) : e.remove()); }, qw = bi.DOM, $w = Jt.extend, Ww = Jt.each, Kw = Jt.resolve, Xw = ge.ie, Yw = function (e, t, n) { var r, o, i, a, u, s, c, l = this, f = (l.documentBaseUrl = n.documentBaseURL), d = n.baseURI; (r = l), (o = e), (i = f), (a = n.defaultSettings), (u = t), (c = { id: o, theme: "modern", delta_width: 0, delta_height: 0, popup_css: "", plugins: "", document_base_url: i, add_form_submit_trigger: !0, submit_patch: !0, add_unload_trigger: !0, convert_urls: !0, relative_urls: !0, remove_script_host: !0, object_resizing: !0, doctype: "", visual: !0, font_size_style_values: "xx-small,x-small,small,medium,large,x-large,xx-large", font_size_legacy_values: "xx-small,small,medium,large,x-large,xx-large,300%", forced_root_block: "p", hidden_input: !0, render_ui: !0, indentation: "40px", inline_styles: !0, convert_fonts_to_spans: !0, indent: "simple", indent_before: "p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,th,ul,ol,li,dl,dt,dd,area,table,thead,tfoot,tbody,tr,section,summary,article,hgroup,aside,figure,figcaption,option,optgroup,datalist", indent_after: "p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,th,ul,ol,li,dl,dt,dd,area,table,thead,tfoot,tbody,tr,section,summary,article,hgroup,aside,figure,figcaption,option,optgroup,datalist", entity_encoding: "named", url_converter: (s = r).convertURL, url_converter_scope: s, ie7_compat: !0, }), (t = Mp(_p, c, a, u)), (l.settings = t), (ki.language = t.language || "en"), (ki.languageLoad = t.language_load), (ki.baseURL = n.baseURL), (l.id = e), l.setDirty(!1), (l.plugins = {}), (l.documentBaseURI = new Ow(t.document_base_url, { base_uri: d })), (l.baseURI = d), (l.contentCSS = []), (l.contentStyles = []), (l.shortcuts = new qp(l)), (l.loadedCSS = {}), (l.editorCommands = new ap(l)), (l.suffix = n.suffix), (l.editorManager = n), (l.inline = t.inline), (l.buttons = {}), (l.menuItems = {}), t.cache_suffix && (ge.cacheSuffix = t.cache_suffix.replace(/^[\?\&]+/, "")), !1 === t.override_viewport && (ge.overrideViewPort = !1), n.fire("SetupEditor", { editor: l }), l.execCallback("setup", l), (l.$ = vn.overrideDefaults(function () { return { context: l.inline ? l.getBody() : l.getDoc(), element: l.getBody(), }; })); }; $w( (Yw.prototype = { render: function () { Tw(this); }, focus: function (e) { Zp(this, e); }, hasFocus: function () { return eh(this); }, execCallback: function (e) { for (var t = [], n = 1; n < arguments.length; n++) t[n - 1] = arguments[n]; var r, o = this.settings[e]; if (o) return ( this.callbackLookup && (r = this.callbackLookup[e]) && ((o = r.func), (r = r.scope)), "string" == typeof o && ((r = (r = o.replace(/\.\w+$/, "")) ? Kw(r) : 0), (o = Kw(o)), (this.callbackLookup = this.callbackLookup || {}), (this.callbackLookup[e] = { func: o, scope: r })), o.apply(r || this, Array.prototype.slice.call(arguments, 1)) ); }, translate: function (e) { if (e && Jt.is(e, "string")) { var n = this.settings.language || "en", r = this.editorManager.i18n; e = r.data[n + "." + e] || e.replace(/\{\#([^\}]+)\}/g, function (e, t) { return r.data[n + "." + t] || "{#" + t + "}"; }); } return this.editorManager.translate(e); }, getLang: function (e, t) { return ( this.editorManager.i18n.data[ (this.settings.language || "en") + "." + e ] || (t !== undefined ? t : "{#" + e + "}") ); }, getParam: function (e, t, n) { return zp(this, e, t, n); }, nodeChanged: function (e) { this._nodeChangeDispatcher.nodeChanged(e); }, addButton: function (e, t) { var n = this; t.cmd && (t.onclick = function () { n.execCommand(t.cmd); }), t.stateSelector && "undefined" == typeof t.active && (t.active = !1), t.text || t.icon || (t.icon = e), (t.tooltip = t.tooltip || t.title), (n.buttons[e] = t); }, addSidebar: function (e, t) { return Aw(this, e, t); }, addMenuItem: function (e, t) { var n = this; t.cmd && (t.onclick = function () { n.execCommand(t.cmd); }), (n.menuItems[e] = t); }, addContextToolbar: function (e, t) { var n, r = this; (r.contextToolbars = r.contextToolbars || []), "string" == typeof e && ((n = e), (e = function (e) { return r.dom.is(e, n); })), r.contextToolbars.push({ id: Ih.uuid("mcet"), predicate: e, items: t, }); }, addCommand: function (e, t, n) { this.editorCommands.addCommand(e, t, n); }, addQueryStateHandler: function (e, t, n) { this.editorCommands.addQueryStateHandler(e, t, n); }, addQueryValueHandler: function (e, t, n) { this.editorCommands.addQueryValueHandler(e, t, n); }, addShortcut: function (e, t, n, r) { this.shortcuts.add(e, t, n, r); }, execCommand: function (e, t, n, r) { return this.editorCommands.execCommand(e, t, n, r); }, queryCommandState: function (e) { return this.editorCommands.queryCommandState(e); }, queryCommandValue: function (e) { return this.editorCommands.queryCommandValue(e); }, queryCommandSupported: function (e) { return this.editorCommands.queryCommandSupported(e); }, show: function () { this.hidden && ((this.hidden = !1), this.inline ? (this.getBody().contentEditable = !0) : (qw.show(this.getContainer()), qw.hide(this.id)), this.load(), this.fire("show")); }, hide: function () { var e = this, t = e.getDoc(); e.hidden || (Xw && t && !e.inline && t.execCommand("SelectAll"), e.save(), e.inline ? ((e.getBody().contentEditable = !1), e === e.editorManager.focusedEditor && (e.editorManager.focusedEditor = null)) : (qw.hide(e.getContainer()), qw.setStyle(e.id, "display", e.orgDisplay)), (e.hidden = !0), e.fire("hide")); }, isHidden: function () { return !!this.hidden; }, setProgressState: function (e, t) { this.fire("ProgressState", { state: e, time: t }); }, load: function (e) { var t, n = this.getElement(); return this.removed ? "" : n ? (((e = e || {}).load = !0), (t = this.setContent( n.value !== undefined ? n.value : n.innerHTML, e )), (e.element = n), e.no_events || this.fire("LoadContent", e), (e.element = n = null), t) : void 0; }, save: function (e) { var t, n, r = this, o = r.getElement(); if (o && r.initialized && !r.removed) return ( ((e = e || {}).save = !0), (e.element = o), (e.content = r.getContent(e)), e.no_events || r.fire("SaveContent", e), "raw" === e.format && r.fire("RawSaveContent", e), (t = e.content), /TEXTAREA|INPUT/i.test(o.nodeName) ? (o.value = t) : ((!e.is_removing && r.inline) || (o.innerHTML = t), (n = qw.getParent(r.id, "form")) && Ww(n.elements, function (e) { if (e.name === r.id) return (e.value = t), !1; })), (e.element = o = null), !1 !== e.set_dirty && r.setDirty(!1), t ); }, setContent: function (e, t) { return zw(this, e, t); }, getContent: function (e) { return ( (t = this), void 0 === (n = e) && (n = {}), A.from(t.getBody()).fold( q("tree" === n.format ? new Zb("body", 11) : ""), function (e) { return Pw(t, n, e); } ) ); var t, n; }, insertContent: function (e, t) { t && (e = $w({ content: e }, t)), this.execCommand("mceInsertContent", !1, e); }, isDirty: function () { return !this.isNotDirty; }, setDirty: function (e) { var t = !this.isNotDirty; (this.isNotDirty = !e), e && e !== t && this.fire("dirty"); }, setMode: function (e) { var t, n; (n = e) !== wp((t = this)) && (t.initialized ? xp(t, "readonly" === n) : t.on("init", function () { xp(t, "readonly" === n); }), hp(t, n)); }, getContainer: function () { return ( this.container || (this.container = qw.get( this.editorContainer || this.id + "_parent" )), this.container ); }, getContentAreaContainer: function () { return this.contentAreaContainer; }, getElement: function () { return ( this.targetElm || (this.targetElm = qw.get(this.id)), this.targetElm ); }, getWin: function () { var e; return ( this.contentWindow || ((e = this.iframeElement) && (this.contentWindow = e.contentWindow)), this.contentWindow ); }, getDoc: function () { var e; return ( this.contentDocument || ((e = this.getWin()) && (this.contentDocument = e.document)), this.contentDocument ); }, getBody: function () { var e = this.getDoc(); return this.bodyElement || (e ? e.body : null); }, convertURL: function (e, t, n) { var r = this.settings; return r.urlconverter_callback ? this.execCallback("urlconverter_callback", e, n, !0, t) : !r.convert_urls || (n && "LINK" === n.nodeName) || 0 === e.indexOf("file:") || 0 === e.length ? e : r.relative_urls ? this.documentBaseURI.toRelative(e) : (e = this.documentBaseURI.toAbsolute(e, r.remove_script_host)); }, addVisual: function (e) { var n, r = this, o = r.settings, i = r.dom; (e = e || r.getBody()), r.hasVisual === undefined && (r.hasVisual = o.visual), Ww(i.select("table,a", e), function (e) { var t; switch (e.nodeName) { case "TABLE": return ( (n = o.visual_table_class || "mce-item-table"), void (((t = i.getAttrib(e, "border")) && "0" !== t) || !r.hasVisual ? i.removeClass(e, n) : i.addClass(e, n)) ); case "A": return void ( i.getAttrib(e, "href") || ((t = i.getAttrib(e, "name") || e.id), (n = o.visual_anchor_class || "mce-item-anchor"), t && r.hasVisual ? i.addClass(e, n) : i.removeClass(e, n)) ); } }), r.fire("VisualAid", { element: e, hasVisual: r.hasVisual }); }, remove: function () { Hw(this); }, destroy: function (e) { jw(this, e); }, uploadImages: function (e) { return this.editorUpload.uploadImages(e); }, _scanForImages: function () { return this.editorUpload.scanForImages(); }, }), Ap ); var Gw, Jw, Qw, Zw = { isEditorUIElement: function (e) { return -1 !== e.className.toString().indexOf("mce-"); }, }, eN = function (n, e) { var t, r; rr.detect().browser.isIE() ? (r = n).on("focusout", function () { Gg(r); }) : ((t = e), n.on("mouseup touchend", function (e) { t.throttle(); })), n.on("keyup nodechange", function (e) { var t; ("nodechange" === (t = e).type && t.selectionChange) || Gg(n); }); }, tN = function (e) { var t, n, r, o = Ii(function () { Gg(e); }, 0); e.inline && ((t = e), (n = o), (r = function () { n.throttle(); }), bi.DOM.bind(H.document, "mouseup", r), t.on("remove", function () { bi.DOM.unbind(H.document, "mouseup", r); })), e.on("init", function () { eN(e, o); }), e.on("remove", function () { o.cancel(); }); }, nN = bi.DOM, rN = function (e) { return Zw.isEditorUIElement(e); }, oN = function (t, e) { var n = t ? t.settings.custom_ui_selector : ""; return ( null !== nN.getParent(e, function (e) { return rN(e) || (!!n && t.dom.is(e, n)); }) ); }, iN = function (r, e) { var t = e.editor; tN(t), t.on("focusin", function () { var e = r.focusedEditor; e !== this && (e && e.fire("blur", { focusedEditor: this }), r.setActive(this), (r.focusedEditor = this).fire("focus", { blurredEditor: e }), this.focus(!0)); }), t.on("focusout", function () { var t = this; ye.setEditorTimeout(t, function () { var e = r.focusedEditor; oN( t, (function () { try { return H.document.activeElement; } catch (e) { return H.document.body; } })() ) || e !== t || (t.fire("blur", { focusedEditor: null }), (r.focusedEditor = null)); }); }), Gw || ((Gw = function (e) { var t, n = r.activeEditor; (t = e.target), n && t.ownerDocument === H.document && (t === H.document.body || oN(n, t) || r.focusedEditor !== n || (n.fire("blur", { focusedEditor: null }), (r.focusedEditor = null))); }), nN.bind(H.document, "focusin", Gw)); }, aN = function (e, t) { e.focusedEditor === t.editor && (e.focusedEditor = null), e.activeEditor || (nN.unbind(H.document, "focusin", Gw), (Gw = null)); }, uN = function (e) { e.on("AddEditor", d(iN, e)), e.on("RemoveEditor", d(aN, e)); }, sN = bi.DOM, cN = Jt.explode, lN = Jt.each, fN = Jt.extend, dN = 0, mN = !1, gN = [], pN = [], hN = function (t) { var n = t.type; lN(Qw.get(), function (e) { switch (n) { case "scroll": e.fire("ScrollWindow", t); break; case "resize": e.fire("ResizeWindow", t); } }); }, vN = function (e) { e !== mN && (e ? vn(window).on("resize scroll", hN) : vn(window).off("resize scroll", hN), (mN = e)); }, bN = function (t) { var e = pN; delete gN[t.id]; for (var n = 0; n < gN.length; n++) if (gN[n] === t) { gN.splice(n, 1); break; } return ( (pN = V(pN, function (e) { return t !== e; })), Qw.activeEditor === t && (Qw.activeEditor = 0 < pN.length ? pN[0] : null), Qw.focusedEditor === t && (Qw.focusedEditor = null), e.length !== pN.length ); }; fN( (Qw = { defaultSettings: {}, $: vn, majorVersion: "4", minorVersion: "9.5", releaseDate: "2019-07-02", editors: gN, i18n: mh, activeEditor: null, settings: {}, setup: function () { var e, t, n, r, o = ""; if ( ((t = Ow.getDocumentBaseUrl(H.document.location)), /^[^:]+:\/\/\/?[^\/]+\//.test(t) && ((t = t.replace(/[\?#].*$/, "").replace(/[\/\\][^\/]+$/, "")), /[\/\\]$/.test(t) || (t += "/")), (n = window.tinymce || window.tinyMCEPreInit)) ) (e = n.base || n.baseURL), (o = n.suffix); else { for ( var i = H.document.getElementsByTagName("script"), a = 0; a < i.length; a++ ) { var u = (r = i[a].src).substring(r.lastIndexOf("/")); if (/tinymce(\.full|\.jquery|)(\.min|\.dev|)\.js/.test(r)) { -1 !== u.indexOf(".min") && (o = ".min"), (e = r.substring(0, r.lastIndexOf("/"))); break; } } !e && H.document.currentScript && (-1 !== (r = H.document.currentScript.src).indexOf(".min") && (o = ".min"), (e = r.substring(0, r.lastIndexOf("/")))); } (this.baseURL = new Ow(t).toAbsolute(e)), (this.documentBaseURL = t), (this.baseURI = new Ow(this.baseURL)), (this.suffix = o), uN(this); }, overrideDefaults: function (e) { var t, n; (t = e.base_url) && ((this.baseURL = new Ow(this.documentBaseURL).toAbsolute( t.replace(/\/+$/, "") )), (this.baseURI = new Ow(this.baseURL))), (n = e.suffix), e.suffix && (this.suffix = n); var r = (this.defaultSettings = e).plugin_base_urls; for (var o in r) ki.PluginManager.urls[o] = r[o]; }, init: function (r) { var n, u, s = this; u = Jt.makeMap( "area base basefont br col frame hr img input isindex link meta param embed source wbr track colgroup option tbody tfoot thead tr script noscript style textarea video audio iframe object menu", " " ); var c = function (e) { var t = e.id; return ( t || ((t = (t = e.name) && !sN.get(t) ? e.name : sN.uniqueId()), e.setAttribute("id", t)), t ); }, l = function (e, t) { return t.constructor === RegExp ? t.test(e.className) : sN.hasClass(e, t); }, f = function (e) { n = e; }, e = function () { var o, i = 0, a = [], n = function (e, t, n) { var r = new Yw(e, t, s); a.push(r), r.on("init", function () { ++i === o.length && f(a); }), (r.targetElm = r.targetElm || n), r.render(); }; sN.unbind(window, "ready", e), (function (e) { var t = r[e]; t && t.apply(s, Array.prototype.slice.call(arguments, 2)); })("onpageload"), (o = vn.unique( (function (t) { var e, n = []; if (ge.ie && ge.ie < 11) return ( yh.initError( "TinyMCE does not support the browser you are using. For a list of supported browsers please see: https://www.tinymce.com/docs/get-started/system-requirements/" ), [] ); if (t.types) return ( lN(t.types, function (e) { n = n.concat(sN.select(e.selector)); }), n ); if (t.selector) return sN.select(t.selector); if (t.target) return [t.target]; switch (t.mode) { case "exact": 0 < (e = t.elements || "").length && lN(cN(e), function (t) { var e; (e = sN.get(t)) ? n.push(e) : lN(H.document.forms, function (e) { lN(e.elements, function (e) { e.name === t && ((t = "mce_editor_" + dN++), sN.setAttrib(e, "id", t), n.push(e)); }); }); }); break; case "textareas": case "specific_textareas": lN(sN.select("textarea"), function (e) { (t.editor_deselector && l(e, t.editor_deselector)) || (t.editor_selector && !l(e, t.editor_selector)) || n.push(e); }); } return n; })(r) )), r.types ? lN(r.types, function (t) { Jt.each(o, function (e) { return ( !sN.is(e, t.selector) || (n(c(e), fN({}, r, t), e), !1) ); }); }) : (Jt.each(o, function (e) { var t; (t = s.get(e.id)) && t.initialized && !(t.getContainer() || t.getBody()).parentNode && (bN(t), t.unbindAllNativeEvents(), t.destroy(!0), (t.removed = !0), (t = null)); }), 0 === (o = Jt.grep(o, function (e) { return !s.get(e.id); })).length ? f([]) : lN(o, function (e) { var t; (t = e), r.inline && t.tagName.toLowerCase() in u ? yh.initError( "Could not initialize inline editor on invalid inline target element", e ) : n(c(e), r, e); })); }; return ( (s.settings = r), sN.bind(window, "ready", e), new pe(function (t) { n ? t(n) : (f = function (e) { t(e); }); }) ); }, get: function (t) { return 0 === arguments.length ? pN.slice(0) : R(t) ? Y(pN, function (e) { return e.id === t; }).getOr(null) : I(t) && pN[t] ? pN[t] : null; }, add: function (e) { var t = this; return ( gN[e.id] === e || (null === t.get(e.id) && ("length" !== e.id && (gN[e.id] = e), gN.push(e), pN.push(e)), vN(!0), (t.activeEditor = e), t.fire("AddEditor", { editor: e }), Jw || ((Jw = function () { t.fire("BeforeUnload"); }), sN.bind(window, "beforeunload", Jw))), e ); }, createEditor: function (e, t) { return this.add(new Yw(e, t, this)); }, remove: function (e) { var t, n, r = this; if (e) { if (!R(e)) return ( (n = e), B(r.get(n.id)) ? null : (bN(n) && r.fire("RemoveEditor", { editor: n }), 0 === pN.length && sN.unbind(window, "beforeunload", Jw), n.remove(), vN(0 < pN.length), n) ); lN(sN.select(e), function (e) { (n = r.get(e.id)) && r.remove(n); }); } else for (t = pN.length - 1; 0 <= t; t--) r.remove(pN[t]); }, execCommand: function (e, t, n) { var r = this.get(n); switch (e) { case "mceAddEditor": return this.get(n) || new Yw(n, this.settings, this).render(), !0; case "mceRemoveEditor": return r && r.remove(), !0; case "mceToggleEditor": return ( r ? r.isHidden() ? r.show() : r.hide() : this.execCommand("mceAddEditor", 0, n), !0 ); } return !!this.activeEditor && this.activeEditor.execCommand(e, t, n); }, triggerSave: function () { lN(pN, function (e) { e.save(); }); }, addI18n: function (e, t) { mh.add(e, t); }, translate: function (e) { return mh.translate(e); }, setActive: function (e) { var t = this.activeEditor; this.activeEditor !== e && (t && t.fire("deactivate", { relatedTarget: e }), e.fire("activate", { relatedTarget: t })), (this.activeEditor = e); }, }), fp ), Qw.setup(); var yN, CN = Qw; function xN(n) { return { walk: function (e, t) { return _c(n, e, t); }, split: Im, normalize: function (t) { return wg(n, t).fold(q(!1), function (e) { return ( t.setStart(e.startContainer, e.startOffset), t.setEnd(e.endContainer, e.endOffset), !0 ); }); }, }; } ((yN = xN || (xN = {})).compareRanges = pg), (yN.getCaretRangeFromPoint = Ty), (yN.getSelectedNode = $a), (yN.getNode = Wa); var wN, NN, EN = xN, SN = Math.min, kN = Math.max, TN = Math.round, AN = function (e, t, n) { var r, o, i, a, u, s; return ( (r = t.x), (o = t.y), (i = e.w), (a = e.h), (u = t.w), (s = t.h), "b" === (n = (n || "").split(""))[0] && (o += s), "r" === n[1] && (r += u), "c" === n[0] && (o += TN(s / 2)), "c" === n[1] && (r += TN(u / 2)), "b" === n[3] && (o -= a), "r" === n[4] && (r -= i), "c" === n[3] && (o -= TN(a / 2)), "c" === n[4] && (r -= TN(i / 2)), RN(r, o, i, a) ); }, RN = function (e, t, n, r) { return { x: e, y: t, w: n, h: r }; }, _N = { inflate: function (e, t, n) { return RN(e.x - t, e.y - n, e.w + 2 * t, e.h + 2 * n); }, relativePosition: AN, findBestRelativePosition: function (e, t, n, r) { var o, i; for (i = 0; i < r.length; i++) if ( (o = AN(e, t, r[i])).x >= n.x && o.x + o.w <= n.w + n.x && o.y >= n.y && o.y + o.h <= n.h + n.y ) return r[i]; return null; }, intersect: function (e, t) { var n, r, o, i; return ( (n = kN(e.x, t.x)), (r = kN(e.y, t.y)), (o = SN(e.x + e.w, t.x + t.w)), (i = SN(e.y + e.h, t.y + t.h)), o - n < 0 || i - r < 0 ? null : RN(n, r, o - n, i - r) ); }, clamp: function (e, t, n) { var r, o, i, a, u, s, c, l, f, d; return ( (u = e.x), (s = e.y), (c = e.x + e.w), (l = e.y + e.h), (f = t.x + t.w), (d = t.y + t.h), (r = kN(0, t.x - u)), (o = kN(0, t.y - s)), (i = kN(0, c - f)), (a = kN(0, l - d)), (u += r), (s += o), n && ((c += r), (l += o), (u -= i), (s -= a)), RN(u, s, (c -= i) - u, (l -= a) - s) ); }, create: RN, fromClientRect: function (e) { return RN(e.left, e.top, e.width, e.height); }, }, DN = {}, BN = { add: function (e, t) { DN[e.toLowerCase()] = t; }, has: function (e) { return !!DN[e.toLowerCase()]; }, get: function (e) { var t = e.toLowerCase(), n = DN.hasOwnProperty(t) ? DN[t] : null; if (null === n) throw new Error("Could not find module for type: " + e); return n; }, create: function (e, t) { var n; if ( ("string" == typeof e ? ((t = t || {}).type = e) : (e = (t = e).type), (e = e.toLowerCase()), !(n = DN[e])) ) throw new Error("Could not find control by type: " + e); return ((n = new n(t)).type = e), n; }, }, ON = Jt.each, PN = Jt.extend, IN = function () {}; IN.extend = wN = function (n) { var e, t, r, o = this.prototype, i = function () { var e, t, n; if ( !NN && (this.init && this.init.apply(this, arguments), (t = this.Mixins)) ) for (e = t.length; e--; ) (n = t[e]).init && n.init.apply(this, arguments); }, a = function () { return this; }, u = function (n, r) { return function () { var e, t = this._super; return ( (this._super = o[n]), (e = r.apply(this, arguments)), (this._super = t), e ); }; }; for (t in ((NN = !0), (e = new this()), (NN = !1), n.Mixins && (ON(n.Mixins, function (e) { for (var t in e) "init" !== t && (n[t] = e[t]); }), o.Mixins && (n.Mixins = o.Mixins.concat(n.Mixins))), n.Methods && ON(n.Methods.split(","), function (e) { n[e] = a; }), n.Properties && ON(n.Properties.split(","), function (e) { var t = "_" + e; n[e] = function (e) { return e !== undefined ? ((this[t] = e), this) : this[t]; }; }), n.Statics && ON(n.Statics, function (e, t) { i[t] = e; }), n.Defaults && o.Defaults && (n.Defaults = PN({}, o.Defaults, n.Defaults)), n)) "function" == typeof (r = n[t]) && o[t] ? (e[t] = u(t, r)) : (e[t] = r); return (i.prototype = e), ((i.constructor = i).extend = wN), i; }; var LN = Math.min, MN = Math.max, FN = Math.round, zN = function (e, n) { var r, o, t, i; if (((n = n || '"'), null === e)) return "null"; if ("string" == (t = typeof e)) return ( (o = "\bb\tt\nn\ff\rr\"\"''\\\\"), n + e.replace(/([\u0080-\uFFFF\x00-\x1f\"\'\\])/g, function (e, t) { return '"' === n && "'" === e ? e : (r = o.indexOf(t)) + 1 ? "\\" + o.charAt(r + 1) : ((e = t.charCodeAt().toString(16)), "\\u" + "0000".substring(e.length) + e); }) + n ); if ("object" === t) { if ( e.hasOwnProperty && "[object Array]" === Object.prototype.toString.call(e) ) { for (r = 0, o = "["; r < e.length; r++) o += (0 < r ? "," : "") + zN(e[r], n); return o + "]"; } for (i in ((o = "{"), e)) e.hasOwnProperty(i) && (o += "function" != typeof e[i] ? (1 < o.length ? "," + n : n) + i + n + ":" + zN(e[i], n) : ""); return o + "}"; } return "" + e; }, UN = { serialize: zN, parse: function (e) { try { return JSON.parse(e); } catch (t) {} }, }, VN = { callbacks: {}, count: 0, send: function (t) { var n = this, r = bi.DOM, o = t.count !== undefined ? t.count : n.count, i = "tinymce_jsonp_" + o; (n.callbacks[o] = function (e) { r.remove(i), delete n.callbacks[o], t.callback(e); }), r.add(r.doc.body, "script", { id: i, src: t.url, type: "text/javascript", }), n.count++; }, }, HN = { send: function (e) { var t, n = 0, r = function () { !e.async || 4 === t.readyState || 1e4 < n++ ? (e.success && n < 1e4 && 200 === t.status ? e.success.call(e.success_scope, "" + t.responseText, t, e) : e.error && e.error.call( e.error_scope, 1e4 < n ? "TIMED_OUT" : "GENERAL", t, e ), (t = null)) : setTimeout(r, 10); }; if ( ((e.scope = e.scope || this), (e.success_scope = e.success_scope || e.scope), (e.error_scope = e.error_scope || e.scope), (e.async = !1 !== e.async), (e.data = e.data || ""), HN.fire("beforeInitialize", { settings: e }), (t = wh())) ) { if ( (t.overrideMimeType && t.overrideMimeType(e.content_type), t.open(e.type || (e.data ? "POST" : "GET"), e.url, e.async), e.crossDomain && (t.withCredentials = !0), e.content_type && t.setRequestHeader("Content-Type", e.content_type), e.requestheaders && Jt.each(e.requestheaders, function (e) { t.setRequestHeader(e.key, e.value); }), t.setRequestHeader("X-Requested-With", "XMLHttpRequest"), (t = HN.fire("beforeSend", { xhr: t, settings: e }).xhr).send( e.data ), !e.async) ) return r(); setTimeout(r, 10); } }, }; Jt.extend(HN, fp); var jN, qN, $N, WN, KN = Jt.extend, XN = function (e) { (this.settings = KN({}, e)), (this.count = 0); }; (XN.sendRPC = function (e) { return new XN().send(e); }), (XN.prototype = { send: function (n) { var r = n.error, o = n.success; ((n = KN(this.settings, n)).success = function (e, t) { void 0 === (e = UN.parse(e)) && (e = { error: "JSON Parse error." }), e.error ? r.call(n.error_scope || n.scope, e.error, t) : o.call(n.success_scope || n.scope, e.result); }), (n.error = function (e, t) { r && r.call(n.error_scope || n.scope, e, t); }), (n.data = UN.serialize({ id: n.id || "c" + this.count++, method: n.method, params: n.params, })), (n.content_type = "application/json"), HN.send(n); }, }); try { jN = H.window.localStorage; } catch (ZN) { (qN = {}), ($N = []), (WN = { getItem: function (e) { var t = qN[e]; return t || null; }, setItem: function (e, t) { $N.push(e), (qN[e] = String(t)); }, key: function (e) { return $N[e]; }, removeItem: function (t) { ($N = $N.filter(function (e) { return e === t; })), delete qN[t]; }, clear: function () { ($N = []), (qN = {}); }, length: 0, }), Object.defineProperty(WN, "length", { get: function () { return $N.length; }, configurable: !1, enumerable: !1, }), (jN = WN); } var YN, GN = CN, JN = { geom: { Rect: _N }, util: { Promise: pe, Delay: ye, Tools: Jt, VK: xv, URI: Ow, Class: IN, EventDispatcher: sp, Observable: fp, I18n: mh, XHR: HN, JSON: UN, JSONRequest: XN, JSONP: VN, LocalStorage: jN, Color: function (e) { var n = {}, u = 0, s = 0, c = 0, t = function (e) { var t; return ( "object" == typeof e ? "r" in e ? ((u = e.r), (s = e.g), (c = e.b)) : "v" in e && (function (e, t, n) { var r, o, i, a; if ( ((e = (parseInt(e, 10) || 0) % 360), (t = parseInt(t, 10) / 100), (n = parseInt(n, 10) / 100), (t = MN(0, LN(t, 1))), (n = MN(0, LN(n, 1))), 0 !== t) ) { switch ( ((r = e / 60), (i = (o = n * t) * (1 - Math.abs((r % 2) - 1))), (a = n - o), Math.floor(r)) ) { case 0: (u = o), (s = i), (c = 0); break; case 1: (u = i), (s = o), (c = 0); break; case 2: (u = 0), (s = o), (c = i); break; case 3: (u = 0), (s = i), (c = o); break; case 4: (u = i), (s = 0), (c = o); break; case 5: (u = o), (s = 0), (c = i); break; default: u = s = c = 0; } (u = FN(255 * (u + a))), (s = FN(255 * (s + a))), (c = FN(255 * (c + a))); } else u = s = c = FN(255 * n); })(e.h, e.s, e.v) : (t = /rgb\s*\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)[^\)]*\)/gi.exec( e )) ? ((u = parseInt(t[1], 10)), (s = parseInt(t[2], 10)), (c = parseInt(t[3], 10))) : (t = /#([0-F]{2})([0-F]{2})([0-F]{2})/gi.exec(e)) ? ((u = parseInt(t[1], 16)), (s = parseInt(t[2], 16)), (c = parseInt(t[3], 16))) : (t = /#([0-F])([0-F])([0-F])/gi.exec(e)) && ((u = parseInt(t[1] + t[1], 16)), (s = parseInt(t[2] + t[2], 16)), (c = parseInt(t[3] + t[3], 16))), (u = u < 0 ? 0 : 255 < u ? 255 : u), (s = s < 0 ? 0 : 255 < s ? 255 : s), (c = c < 0 ? 0 : 255 < c ? 255 : c), n ); }; return ( e && t(e), (n.toRgb = function () { return { r: u, g: s, b: c }; }), (n.toHsv = function () { return ( (e = u), (t = s), (n = c), (o = 0), (i = LN((e /= 255), LN((t /= 255), (n /= 255)))) === (a = MN(e, MN(t, n))) ? { h: 0, s: 0, v: 100 * (o = i) } : ((r = (a - i) / a), { h: FN( 60 * ((e === i ? 3 : n === i ? 1 : 5) - (e === i ? t - n : n === i ? e - t : n - e) / ((o = a) - i)) ), s: FN(100 * r), v: FN(100 * o), }) ); var e, t, n, r, o, i, a; }), (n.toHex = function () { var e = function (e) { return 1 < (e = parseInt(e, 10).toString(16)).length ? e : "0" + e; }; return "#" + e(u) + e(s) + e(c); }), (n.parse = t), n ); }, }, dom: { EventUtils: Ae, Sizzle: At, DomQuery: vn, TreeWalker: ao, DOMUtils: bi, ScriptLoader: Ni, RangeUtils: EN, Serializer: py, ControlSelection: wy, BookmarkManager: yy, Selection: tC, Event: Ae.Event, }, html: { Styles: ui, Entities: Xo, Node: Zb, Schema: ii, SaxParser: Rv, DomParser: ly, Writer: Zc, Serializer: el, }, ui: { Factory: BN }, Env: ge, AddOnManager: ki, Annotator: Mc, Formatter: Vb, UndoManager: Xv, EditorCommands: ap, WindowManager: lh, NotificationManager: ch, EditorObservable: Ap, Shortcuts: qp, Editor: Yw, FocusManager: Zw, EditorManager: CN, DOM: bi.DOM, ScriptLoader: Ni.ScriptLoader, PluginManager: ki.PluginManager, ThemeManager: ki.ThemeManager, trim: Jt.trim, isArray: Jt.isArray, is: Jt.is, toArray: Jt.toArray, makeMap: Jt.makeMap, each: Jt.each, map: Jt.map, grep: Jt.grep, inArray: Jt.inArray, extend: Jt.extend, create: Jt.create, walk: Jt.walk, createNS: Jt.createNS, resolve: Jt.resolve, explode: Jt.explode, _addCacheSuffix: Jt._addCacheSuffix, isOpera: ge.opera, isWebKit: ge.webkit, isIE: ge.ie, isGecko: ge.gecko, isMac: ge.mac, }, QN = (GN = Jt.extend(GN, JN)); (YN = QN), (window.tinymce = YN), (window.tinyMCE = YN), (function (e) { if ("object" == typeof module) try { module.exports = e; } catch (t) {} })(QN); })(window);