function printStackTrace(e) { e = e || { guess: !0 }; var t = e.e || null, n = !!e.guess, i = new printStackTrace.implementation(), r = i.run(t); return n ? i.guessAnonymousFunctions(r) : r; } function diff_match_patch() { this.Diff_Timeout = 1, this.Diff_EditCost = 4, this.Match_Threshold = .5, this.Match_Distance = 1e3, this.Patch_DeleteThreshold = .5, this.Patch_Margin = 4, this.Match_MaxBits = 32; } !function(e, t) { function n(e) { var t = e.length, n = ot.type(e); return ot.isWindow(e) ? !1 : 1 === e.nodeType && t ? !0 : "array" === n || "function" !== n && (0 === t || "number" == typeof t && t > 0 && t - 1 in e); } function i(e) { var t = ft[e] = {}; return ot.each(e.match(st) || [], function(e, n) { t[n] = !0; }), t; } function r() { Object.defineProperty(this.cache = {}, 0, { get: function() { return {}; } }), this.expando = ot.expando + Math.random(); } function o(e, n, i) { var r; if (i === t && 1 === e.nodeType) if (r = "data-" + n.replace(bt, "-$1").toLowerCase(), i = e.getAttribute(r), "string" == typeof i) { try { i = "true" === i ? !0 : "false" === i ? !1 : "null" === i ? null : +i + "" === i ? +i : vt.test(i) ? JSON.parse(i) : i; } catch (o) {} mt.set(e, n, i); } else i = t; return i; } function a() { return !0; } function s() { return !1; } function l() { try { return z.activeElement; } catch (e) {} } function c(e, t) { for (;(e = e[t]) && 1 !== e.nodeType; ) ; return e; } function u(e, t, n) { if (ot.isFunction(t)) return ot.grep(e, function(e, i) { return !!t.call(e, i, e) !== n; }); if (t.nodeType) return ot.grep(e, function(e) { return e === t !== n; }); if ("string" == typeof t) { if (It.test(t)) return ot.filter(t, e, n); t = ot.filter(t, e); } return ot.grep(e, function(e) { return tt.call(t, e) >= 0 !== n; }); } function d(e, t) { return ot.nodeName(e, "table") && ot.nodeName(1 === t.nodeType ? t : t.firstChild, "tr") ? e.getElementsByTagName("tbody")[0] || e.appendChild(e.ownerDocument.createElement("tbody")) : e; } function p(e) { return e.type = (null !== e.getAttribute("type")) + "/" + e.type, e; } function h(e) { var t = jt.exec(e.type); return t ? e.type = t[1] : e.removeAttribute("type"), e; } function f(e, t) { for (var n = e.length, i = 0; n > i; i++) gt.set(e[i], "globalEval", !t || gt.get(t[i], "globalEval")); } function m(e, t) { var n, i, r, o, a, s, l, c; if (1 === t.nodeType) { if (gt.hasData(e) && (o = gt.access(e), a = gt.set(t, o), c = o.events)) { delete a.handle, a.events = {}; for (r in c) for (n = 0, i = c[r].length; i > n; n++) ot.event.add(t, r, c[r][n]); } mt.hasData(e) && (s = mt.access(e), l = ot.extend({}, s), mt.set(t, l)); } } function g(e, n) { var i = e.getElementsByTagName ? e.getElementsByTagName(n || "*") : e.querySelectorAll ? e.querySelectorAll(n || "*") : []; return n === t || n && ot.nodeName(e, n) ? ot.merge([ e ], i) : i; } function v(e, t) { var n = t.nodeName.toLowerCase(); "input" === n && Ft.test(e.type) ? t.checked = e.checked : ("input" === n || "textarea" === n) && (t.defaultValue = e.defaultValue); } function b(e, t) { if (t in e) return t; for (var n = t.charAt(0).toUpperCase() + t.slice(1), i = t, r = Zt.length; r--; ) if (t = Zt[r] + n, t in e) return t; return i; } function y(e, t) { return e = t || e, "none" === ot.css(e, "display") || !ot.contains(e.ownerDocument, e); } function x(t) { return e.getComputedStyle(t, null); } function w(e, t) { for (var n, i, r, o = [], a = 0, s = e.length; s > a; a++) i = e[a], i.style && (o[a] = gt.get(i, "olddisplay"), n = i.style.display, t ? (o[a] || "none" !== n || (i.style.display = ""), "" === i.style.display && y(i) && (o[a] = gt.access(i, "olddisplay", k(i.nodeName)))) : o[a] || (r = y(i), (n && "none" !== n || !r) && gt.set(i, "olddisplay", r ? n : ot.css(i, "display")))); for (a = 0; s > a; a++) i = e[a], i.style && (t && "none" !== i.style.display && "" !== i.style.display || (i.style.display = t ? o[a] || "" : "none")); return e; } function S(e, t, n) { var i = Vt.exec(t); return i ? Math.max(0, i[1] - (n || 0)) + (i[2] || "px") : t; } function C(e, t, n, i, r) { for (var o = n === (i ? "border" : "content") ? 4 : "width" === t ? 1 : 0, a = 0; 4 > o; o += 2) "margin" === n && (a += ot.css(e, n + Jt[o], !0, r)), i ? ("content" === n && (a -= ot.css(e, "padding" + Jt[o], !0, r)), "margin" !== n && (a -= ot.css(e, "border" + Jt[o] + "Width", !0, r))) : (a += ot.css(e, "padding" + Jt[o], !0, r), "padding" !== n && (a += ot.css(e, "border" + Jt[o] + "Width", !0, r))); return a; } function _(e, t, n) { var i = !0, r = "width" === t ? e.offsetWidth : e.offsetHeight, o = x(e), a = ot.support.boxSizing && "border-box" === ot.css(e, "boxSizing", !1, o); if (0 >= r || null == r) { if (r = Gt(e, t, o), (0 > r || null == r) && (r = e.style[t]), Wt.test(r)) return r; i = a && (ot.support.boxSizingReliable || r === e.style[t]), r = parseFloat(r) || 0; } return r + C(e, t, n || (a ? "border" : "content"), i, o) + "px"; } function k(e) { var t = z, n = Qt[e]; return n || (n = T(e, t), "none" !== n && n || (Ht = (Ht || ot("