/* AngularJS v1.4.5 (c) 2010-2015 Google, Inc. http://angularjs.org License: MIT */ (function (N, W, u) { 'use strict'; function G(b) { return function () { var a = arguments[0], c; c = "[" + (b ? b + ":" : "") + a + "] http://errors.angularjs.org/1.4.5/" + (b ? b + "/" : "") + a; for (a = 1; a < arguments.length; a++) { c = c + (1 == a ? "?" : "&") + "p" + (a - 1) + "="; var d = encodeURIComponent, e; e = arguments[a]; e = "function" == typeof e ? e.toString().replace(/ \{[\s\S]*$/, "") : "undefined" == typeof e ? "undefined" : "string" != typeof e ? JSON.stringify(e) : e; c += d(e) } return Error(c) } } function Da(b) { if (null == b || Ya(b)) return !1; var a = "length" in Object(b) && b.length; return b.nodeType === pa && a ? !0 : H(b) || K(b) || 0 === a || "number" === typeof a && 0 < a && a - 1 in b } function n(b, a, c) { var d, e; if (b) if (B(b)) for (d in b) "prototype" == d || "length" == d || "name" == d || b.hasOwnProperty && !b.hasOwnProperty(d) || a.call(c, b[d], d, b); else if (K(b) || Da(b)) { var f = "object" !== typeof b; d = 0; for (e = b.length; d < e; d++) (f || d in b) && a.call(c, b[d], d, b) } else if (b.forEach && b.forEach !== n) b.forEach(a, c, b); else if (lc(b)) for (d in b) a.call(c, b[d], d, b); else if ("function" === typeof b.hasOwnProperty) for (d in b) b.hasOwnProperty(d) && a.call(c, b[d], d, b); else for (d in b) Na.call(b, d) && a.call(c, b[d], d, b); return b } function mc(b, a, c) { for (var d = Object.keys(b).sort(), e = 0; e < d.length; e++) a.call(c, b[d[e]], d[e]); return d } function nc(b) { return function (a, c) { b(c, a) } } function Ud() { return ++mb } function oc(b, a) { a ? b.$$hashKey = a : delete b.$$hashKey } function Mb(b, a, c) { for (var d = b.$$hashKey, e = 0, f = a.length; e < f; ++e) { var g = a[e]; if (D(g) || B(g)) for (var h = Object.keys(g), l = 0, k = h.length; l < k; l++) { var m = h[l], q = g[m]; c && D(q) ? ca(q) ? b[m] = new Date(q.valueOf()) : Oa(q) ? b[m] = new RegExp(q) : (D(b[m]) || (b[m] = K(q) ? [] : {}), Mb(b[m], [q], !0)) : b[m] = q } } oc(b, d); return b } function Q(b) { return Mb(b, xa.call(arguments, 1), !1) } function Vd(b) { return Mb(b, xa.call(arguments, 1), !0) } function Y(b) { return parseInt(b, 10) } function Nb(b, a) { return Q(Object.create(b), a) } function v() { } function Za(b) { return b } function qa(b) { return function () { return b } } function pc(b) { return B(b.toString) && b.toString !== Object.prototype.toString } function y(b) { return "undefined" === typeof b } function x(b) { return "undefined" !== typeof b } function D(b) { return null !== b && "object" === typeof b } function lc(b) { return null !== b && "object" === typeof b && !qc(b) } function H(b) { return "string" === typeof b } function X(b) { return "number" === typeof b } function ca(b) { return "[object Date]" === sa.call(b) } function B(b) { return "function" === typeof b } function Oa(b) { return "[object RegExp]" === sa.call(b) } function Ya(b) { return b && b.window === b } function $a(b) { return b && b.$evalAsync && b.$watch } function ab(b) { return "boolean" === typeof b } function rc(b) { return !(!b || !(b.nodeName || b.prop && b.attr && b.find)) } function Wd(b) { var a = {}; b = b.split(","); var c; for (c = 0; c < b.length; c++) a[b[c]] = !0; return a } function ta(b) { return I(b.nodeName || b[0] && b[0].nodeName) } function bb(b, a) { var c = b.indexOf(a); 0 <= c && b.splice(c, 1); return c } function fa(b, a, c, d) { if (Ya(b) || $a(b)) throw Ea("cpws"); if (sc.test(sa.call(a))) throw Ea("cpta"); if (a) { if (b === a) throw Ea("cpi"); c = c || []; d = d || []; D(b) && (c.push(b), d.push(a)); var e; if (K(b)) for (e = a.length = 0; e < b.length; e++) a.push(fa(b[e], null, c, d)); else { var f = a.$$hashKey; K(a) ? a.length = 0 : n(a, function (b, c) { delete a[c] }); if (lc(b)) for (e in b) a[e] = fa(b[e], null, c, d); else if (b && "function" === typeof b.hasOwnProperty) for (e in b) b.hasOwnProperty(e) && (a[e] = fa(b[e], null, c, d)); else for (e in b) Na.call(b, e) && (a[e] = fa(b[e], null, c, d)); oc(a, f) } } else if (a = b, D(b)) { if (c && -1 !== (f = c.indexOf(b))) return d[f]; if (K(b)) return fa(b, [], c, d); if (sc.test(sa.call(b))) a = new b.constructor(b); else if (ca(b)) a = new Date(b.getTime()); else if (Oa(b)) a = new RegExp(b.source, b.toString().match(/[^\/]*$/)[0]), a.lastIndex = b.lastIndex; else return e = Object.create(qc(b)), fa(b, e, c, d); d && (c.push(b), d.push(a)) } return a } function ia(b, a) { if (K(b)) { a = a || []; for (var c = 0, d = b.length; c < d; c++) a[c] = b[c] } else if (D(b)) for (c in a = a || {}, b) if ("$" !== c.charAt(0) || "$" !== c.charAt(1)) a[c] = b[c]; return a || b } function ka(b, a) { if (b === a) return !0; if (null === b || null === a) return !1; if (b !== b && a !== a) return !0; var c = typeof b, d; if (c == typeof a && "object" == c) if (K(b)) { if (!K(a)) return !1; if ((c = b.length) == a.length) { for (d = 0; d < c; d++) if (!ka(b[d], a[d])) return !1; return !0 } } else { if (ca(b)) return ca(a) ? ka(b.getTime(), a.getTime()) : !1; if (Oa(b)) return Oa(a) ? b.toString() == a.toString() : !1; if ($a(b) || $a(a) || Ya(b) || Ya(a) || K(a) || ca(a) || Oa(a)) return !1; c = ga(); for (d in b) if ("$" !== d.charAt(0) && !B(b[d])) { if (!ka(b[d], a[d])) return !1; c[d] = !0 } for (d in a) if (!(d in c || "$" === d.charAt(0) || a[d] === u || B(a[d]))) return !1; return !0 } return !1 } function cb(b, a, c) { return b.concat(xa.call(a, c)) } function tc(b, a) { var c = 2 < arguments.length ? xa.call(arguments, 2) : []; return !B(a) || a instanceof RegExp ? a : c.length ? function () { return arguments.length ? a.apply(b, cb(c, arguments, 0)) : a.apply(b, c) } : function () { return arguments.length ? a.apply(b, arguments) : a.call(b) } } function Xd(b, a) { var c = a; "string" === typeof b && "$" === b.charAt(0) && "$" === b.charAt(1) ? c = u : Ya(a) ? c = "$WINDOW" : a && W === a ? c = "$DOCUMENT" : $a(a) && (c = "$SCOPE"); return c } function db(b, a) { if ("undefined" === typeof b) return u; X(a) || (a = a ? 2 : null); return JSON.stringify(b, Xd, a) } function uc(b) { return H(b) ? JSON.parse(b) : b } function vc(b, a) { var c = Date.parse("Jan 01, 1970 00:00:00 " + b) / 6E4; return isNaN(c) ? a : c } function Ob(b, a, c) { c = c ? -1 : 1; var d = vc(a, b.getTimezoneOffset()); a = b; b = c * (d - b.getTimezoneOffset()); a = new Date(a.getTime()); a.setMinutes(a.getMinutes() + b); return a } function ua(b) { b = z(b).clone(); try { b.empty() } catch (a) { } var c = z("
").append(b).html(); try { return b[0].nodeType === Pa ? I(c) : c.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/, function (a, b) { return "<" + I(b) }) } catch (d) { return I(c) } } function wc(b) { try { return decodeURIComponent(b) } catch (a) { } } function xc(b) { var a = {}; n((b || "").split("&"), function (b) { var d, e, f; b && (e = b = b.replace(/\+/g, "%20"), d = b.indexOf("="), -1 !== d && (e = b.substring(0, d), f = b.substring(d + 1)), e = wc(e), x(e) && (f = x(f) ? wc(f) : !0, Na.call(a, e) ? K(a[e]) ? a[e].push(f) : a[e] = [a[e], f] : a[e] = f)) }); return a } function Pb(b) { var a = []; n(b, function (b, d) { K(b) ? n(b, function (b) { a.push(ma(d, !0) + (!0 === b ? "" : "=" + ma(b, !0))) }) : a.push(ma(d, !0) + (!0 === b ? "" : "=" + ma(b, !0))) }); return a.length ? a.join("&") : "" } function nb(b) { return ma(b, !0).replace(/%26/gi, "&").replace(/%3D/gi, "=").replace(/%2B/gi, "+") } function ma(b, a) { return encodeURIComponent(b).replace(/%40/gi, "@").replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%3B/gi, ";").replace(/%20/g, a ? "%20" : "+") } function Yd(b, a) { var c, d, e = Qa.length; for (d = 0; d < e; ++d) if (c = Qa[d] + a, H(c = b.getAttribute(c))) return c; return null } function Zd(b, a) { var c, d, e = {}; n(Qa, function (a) { a += "app"; !c && b.hasAttribute && b.hasAttribute(a) && (c = b, d = b.getAttribute(a)) }); n(Qa, function (a) { a += "app"; var e; !c && (e = b.querySelector("[" + a.replace(":", "\\:") + "]")) && (c = e, d = e.getAttribute(a)) }); c && (e.strictDi = null !== Yd(c, "strict-di"), a(c, d ? [d] : [], e)) } function yc(b, a, c) { D(c) || (c = {}); c = Q({strictDi: !1}, c); var d = function () { b = z(b); if (b.injector()) { var d = b[0] === W ? "document" : ua(b); throw Ea("btstrpd", d.replace(//, ">")); } a = a || []; a.unshift(["$provide", function (a) { a.value("$rootElement", b) }]); c.debugInfoEnabled && a.push(["$compileProvider", function (a) { a.debugInfoEnabled(!0) }]); a.unshift("ng"); d = eb(a, c.strictDi); d.invoke(["$rootScope", "$rootElement", "$compile", "$injector", function (a, b, c, d) { a.$apply(function () { b.data("$injector", d); c(b)(a) }) }]); return d }, e = /^NG_ENABLE_DEBUG_INFO!/, f = /^NG_DEFER_BOOTSTRAP!/; N && e.test(N.name) && (c.debugInfoEnabled = !0, N.name = N.name.replace(e, "")); if (N && !f.test(N.name)) return d(); N.name = N.name.replace(f, ""); aa.resumeBootstrap = function (b) { n(b, function (b) { a.push(b) }); return d() }; B(aa.resumeDeferredBootstrap) && aa.resumeDeferredBootstrap() } function $d() { N.name = "NG_ENABLE_DEBUG_INFO!" + N.name; N.location.reload() } function ae(b) { b = aa.element(b).injector(); if (!b) throw Ea("test"); return b.get("$$testability") } function zc(b, a) { a = a || "_"; return b.replace(be, function (b, d) { return (d ? a : "") + b.toLowerCase() }) } function ce() { var b; if (!Ac) { var a = ob(); la = N.jQuery; x(a) && (la = null === a ? u : N[a]); la && la.fn.on ? (z = la, Q(la.fn, { scope: Ra.scope, isolateScope: Ra.isolateScope, controller: Ra.controller, injector: Ra.injector, inheritedData: Ra.inheritedData }), b = la.cleanData, la.cleanData = function (a) { var d; if (Qb) Qb = !1; else for (var e = 0, f; null != (f = a[e]); e++) (d = la._data(f, "events")) && d.$destroy && la(f).triggerHandler("$destroy"); b(a) }) : z = R; aa.element = z; Ac = !0 } } function pb(b, a, c) { if (!b) throw Ea("areq", a || "?", c || "required"); return b } function Sa(b, a, c) { c && K(b) && (b = b[b.length - 1]); pb(B(b), a, "not a function, got " + (b && "object" === typeof b ? b.constructor.name || "Object" : typeof b)); return b } function Ta(b, a) { if ("hasOwnProperty" === b) throw Ea("badname", a); } function Bc(b, a, c) { if (!a) return b; a = a.split("."); for (var d, e = b, f = a.length, g = 0; g < f; g++) d = a[g], b && (b = (e = b)[d]); return !c && B(b) ? tc(e, b) : b } function qb(b) { var a = b[0]; b = b[b.length - 1]; var c = [a]; do { a = a.nextSibling; if (!a) break; c.push(a) } while (a !== b); return z(c) } function ga() { return Object.create(null) } function de(b) { function a(a, b, c) { return a[b] || (a[b] = c()) } var c = G("$injector"), d = G("ng"); b = a(b, "angular", Object); b.$$minErr = b.$$minErr || G; return a(b, "module", function () { var b = {}; return function (f, g, h) { if ("hasOwnProperty" === f) throw d("badname", "module"); g && b.hasOwnProperty(f) && (b[f] = null); return a(b, f, function () { function a(b, c, e, f) { f || (f = d); return function () { f[e || "push"]([b, c, arguments]); return E } } function b(a, c) { return function (b, e) { e && B(e) && (e.$$moduleName = f); d.push([a, c, arguments]); return E } } if (!g) throw c("nomod", f); var d = [], e = [], s = [], t = a("$injector", "invoke", "push", e), E = { _invokeQueue: d, _configBlocks: e, _runBlocks: s, requires: g, name: f, provider: b("$provide", "provider"), factory: b("$provide", "factory"), service: b("$provide", "service"), value: a("$provide", "value"), constant: a("$provide", "constant", "unshift"), decorator: b("$provide", "decorator"), animation: b("$animateProvider", "register"), filter: b("$filterProvider", "register"), controller: b("$controllerProvider", "register"), directive: b("$compileProvider", "directive"), config: t, run: function (a) { s.push(a); return this } }; h && t(h); return E }) } }) } function ee(b) { Q(b, { bootstrap: yc, copy: fa, extend: Q, merge: Vd, equals: ka, element: z, forEach: n, injector: eb, noop: v, bind: tc, toJson: db, fromJson: uc, identity: Za, isUndefined: y, isDefined: x, isString: H, isFunction: B, isObject: D, isNumber: X, isElement: rc, isArray: K, version: fe, isDate: ca, lowercase: I, uppercase: rb, callbacks: {counter: 0}, getTestability: ae, $$minErr: G, $$csp: Fa, reloadWithDebugInfo: $d }); Rb = de(N); Rb("ng", ["ngLocale"], ["$provide", function (a) { a.provider({$$sanitizeUri: ge}); a.provider("$compile", Cc).directive({ a: he, input: Dc, textarea: Dc, form: ie, script: je, select: ke, style: le, option: me, ngBind: ne, ngBindHtml: oe, ngBindTemplate: pe, ngClass: qe, ngClassEven: re, ngClassOdd: se, ngCloak: te, ngController: ue, ngForm: ve, ngHide: we, ngIf: xe, ngInclude: ye, ngInit: ze, ngNonBindable: Ae, ngPluralize: Be, ngRepeat: Ce, ngShow: De, ngStyle: Ee, ngSwitch: Fe, ngSwitchWhen: Ge, ngSwitchDefault: He, ngOptions: Ie, ngTransclude: Je, ngModel: Ke, ngList: Le, ngChange: Me, pattern: Ec, ngPattern: Ec, required: Fc, ngRequired: Fc, minlength: Gc, ngMinlength: Gc, maxlength: Hc, ngMaxlength: Hc, ngValue: Ne, ngModelOptions: Oe }).directive({ngInclude: Pe}).directive(sb).directive(Ic); a.provider({ $anchorScroll: Qe, $animate: Re, $animateCss: Se, $$animateQueue: Te, $$AnimateRunner: Ue, $browser: Ve, $cacheFactory: We, $controller: Xe, $document: Ye, $exceptionHandler: Ze, $filter: Jc, $$forceReflow: $e, $interpolate: af, $interval: bf, $http: cf, $httpParamSerializer: df, $httpParamSerializerJQLike: ef, $httpBackend: ff, $location: gf, $log: hf, $parse: jf, $rootScope: kf, $q: lf, $$q: mf, $sce: nf, $sceDelegate: of, $sniffer: pf, $templateCache: qf, $templateRequest: rf, $$testability: sf, $timeout: tf, $window: uf, $$rAF: vf, $$jqLite: wf, $$HashMap: xf, $$cookieReader: yf }) }]) } function fb(b) { return b.replace(zf, function (a, b, d, e) { return e ? d.toUpperCase() : d }).replace(Af, "Moz$1") } function Kc(b) { b = b.nodeType; return b === pa || !b || 9 === b } function Lc(b, a) { var c, d, e = a.createDocumentFragment(), f = []; if (Sb.test(b)) { c = c || e.appendChild(a.createElement("div")); d = (Bf.exec(b) || ["", ""])[1].toLowerCase(); d = na[d] || na._default; c.innerHTML = d[1] + b.replace(Cf, "<$1>") + d[2]; for (d = d[0]; d--;) c = c.lastChild; f = cb(f, c.childNodes); c = e.firstChild; c.textContent = "" } else f.push(a.createTextNode(b)); e.textContent = ""; e.innerHTML = ""; n(f, function (a) { e.appendChild(a) }); return e } function R(b) { if (b instanceof R) return b; var a; H(b) && (b = T(b), a = !0); if (!(this instanceof R)) { if (a && "<" != b.charAt(0)) throw Tb("nosel"); return new R(b) } if (a) { a = W; var c; b = (c = Df.exec(b)) ? [a.createElement(c[1])] : (c = Lc(b, a)) ? c.childNodes : [] } Mc(this, b) } function Ub(b) { return b.cloneNode(!0) } function tb(b, a) { a || ub(b); if (b.querySelectorAll) for (var c = b.querySelectorAll("*"), d = 0, e = c.length; d < e; d++) ub(c[d]) } function Nc(b, a, c, d) { if (x(d)) throw Tb("offargs"); var e = (d = vb(b)) && d.events, f = d && d.handle; if (f) if (a) n(a.split(" "), function (a) { if (x(c)) { var d = e[a]; bb(d || [], c); if (d && 0 < d.length) return } b.removeEventListener(a, f, !1); delete e[a] }); else for (a in e) "$destroy" !== a && b.removeEventListener(a, f, !1), delete e[a] } function ub(b, a) { var c = b.ng339, d = c && gb[c]; d && (a ? delete d.data[a] : (d.handle && (d.events.$destroy && d.handle({}, "$destroy"), Nc(b)), delete gb[c], b.ng339 = u)) } function vb(b, a) { var c = b.ng339, c = c && gb[c]; a && !c && (b.ng339 = c = ++Ef, c = gb[c] = {events: {}, data: {}, handle: u}); return c } function Vb(b, a, c) { if (Kc(b)) { var d = x(c), e = !d && a && !D(a), f = !a; b = (b = vb(b, !e)) && b.data; if (d) b[a] = c; else { if (f) return b; if (e) return b && b[a]; Q(b, a) } } } function wb(b, a) { return b.getAttribute ? -1 < (" " + (b.getAttribute("class") || "") + " ").replace(/[\n\t]/g, " ").indexOf(" " + a + " ") : !1 } function xb(b, a) { a && b.setAttribute && n(a.split(" "), function (a) { b.setAttribute("class", T((" " + (b.getAttribute("class") || "") + " ").replace(/[\n\t]/g, " ").replace(" " + T(a) + " ", " "))) }) } function yb(b, a) { if (a && b.setAttribute) { var c = (" " + (b.getAttribute("class") || "") + " ").replace(/[\n\t]/g, " "); n(a.split(" "), function (a) { a = T(a); -1 === c.indexOf(" " + a + " ") && (c += a + " ") }); b.setAttribute("class", T(c)) } } function Mc(b, a) { if (a) if (a.nodeType) b[b.length++] = a; else { var c = a.length; if ("number" === typeof c && a.window !== a) { if (c) for (var d = 0; d < c; d++) b[b.length++] = a[d] } else b[b.length++] = a } } function Oc(b, a) { return zb(b, "$" + (a || "ngController") + "Controller") } function zb(b, a, c) { 9 == b.nodeType && (b = b.documentElement); for (a = K(a) ? a : [a]; b;) { for (var d = 0, e = a.length; d < e; d++) if ((c = z.data(b, a[d])) !== u) return c; b = b.parentNode || 11 === b.nodeType && b.host } } function Pc(b) { for (tb(b, !0); b.firstChild;) b.removeChild(b.firstChild) } function Wb(b, a) { a || tb(b); var c = b.parentNode; c && c.removeChild(b) } function Ff(b, a) { a = a || N; if ("complete" === a.document.readyState) a.setTimeout(b); else z(a).on("load", b) } function Qc(b, a) { var c = Ab[a.toLowerCase()]; return c && Rc[ta(b)] && c } function Gf(b, a) { var c = b.nodeName; return ("INPUT" === c || "TEXTAREA" === c) && Sc[a] } function Hf(b, a) { var c = function (c, e) { c.isDefaultPrevented = function () { return c.defaultPrevented }; var f = a[e || c.type], g = f ? f.length : 0; if (g) { if (y(c.immediatePropagationStopped)) { var h = c.stopImmediatePropagation; c.stopImmediatePropagation = function () { c.immediatePropagationStopped = !0; c.stopPropagation && c.stopPropagation(); h && h.call(c) } } c.isImmediatePropagationStopped = function () { return !0 === c.immediatePropagationStopped }; 1 < g && (f = ia(f)); for (var l = 0; l < g; l++) c.isImmediatePropagationStopped() || f[l].call(b, c) } }; c.elem = b; return c } function wf() { this.$get = function () { return Q(R, { hasClass: function (b, a) { b.attr && (b = b[0]); return wb(b, a) }, addClass: function (b, a) { b.attr && (b = b[0]); return yb(b, a) }, removeClass: function (b, a) { b.attr && (b = b[0]); return xb(b, a) } }) } } function Ga(b, a) { var c = b && b.$$hashKey; if (c) return "function" === typeof c && (c = b.$$hashKey()), c; c = typeof b; return c = "function" == c || "object" == c && null !== b ? b.$$hashKey = c + ":" + (a || Ud)() : c + ":" + b } function Ua(b, a) { if (a) { var c = 0; this.nextUid = function () { return ++c } } n(b, this.put, this) } function If(b) { return (b = b.toString().replace(Tc, "").match(Uc)) ? "function(" + (b[1] || "").replace(/[\s\r\n]+/, " ") + ")" : "fn" } function eb(b, a) { function c(a) { return function (b, c) { if (D(b)) n(b, nc(a)); else return a(b, c) } } function d(a, b) { Ta(a, "service"); if (B(b) || K(b)) b = s.instantiate(b); if (!b.$get) throw Ha("pget", a); return q[a + "Provider"] = b } function e(a, b) { return function () { var c = E.invoke(b, this); if (y(c)) throw Ha("undef", a); return c } } function f(a, b, c) { return d(a, {$get: !1 !== c ? e(a, b) : b}) } function g(a) { pb(y(a) || K(a), "modulesToLoad", "not an array"); var b = [], c; n(a, function (a) { function d(a) { var b, c; b = 0; for (c = a.length; b < c; b++) { var e = a[b], f = s.get(e[0]); f[e[1]].apply(f, e[2]) } } if (!m.get(a)) { m.put(a, !0); try { H(a) ? (c = Rb(a), b = b.concat(g(c.requires)).concat(c._runBlocks), d(c._invokeQueue), d(c._configBlocks)) : B(a) ? b.push(s.invoke(a)) : K(a) ? b.push(s.invoke(a)) : Sa(a, "module") } catch (e) { throw K(a) && (a = a[a.length - 1]), e.message && e.stack && -1 == e.stack.indexOf(e.message) && (e = e.message + "\n" + e.stack), Ha("modulerr", a, e.stack || e.message || e); } } }); return b } function h(b, c) { function d(a, e) { if (b.hasOwnProperty(a)) { if (b[a] === l) throw Ha("cdep", a + " <- " + k.join(" <- ")); return b[a] } try { return k.unshift(a), b[a] = l, b[a] = c(a, e) } catch (f) { throw b[a] === l && delete b[a], f; } finally { k.shift() } } function e(b, c, f, g) { "string" === typeof f && (g = f, f = null); var h = [], k = eb.$$annotate(b, a, g), l, s, m; s = 0; for (l = k.length; s < l; s++) { m = k[s]; if ("string" !== typeof m) throw Ha("itkn", m); h.push(f && f.hasOwnProperty(m) ? f[m] : d(m, g)) } K(b) && (b = b[l]); return b.apply(c, h) } return { invoke: e, instantiate: function (a, b, c) { var d = Object.create((K(a) ? a[a.length - 1] : a).prototype || null); a = e(a, d, b, c); return D(a) || B(a) ? a : d }, get: d, annotate: eb.$$annotate, has: function (a) { return q.hasOwnProperty(a + "Provider") || b.hasOwnProperty(a) } } } a = !0 === a; var l = {}, k = [], m = new Ua([], !0), q = { $provide: { provider: c(d), factory: c(f), service: c(function (a, b) { return f(a, ["$injector", function (a) { return a.instantiate(b) }]) }), value: c(function (a, b) { return f(a, qa(b), !1) }), constant: c(function (a, b) { Ta(a, "constant"); q[a] = b; t[a] = b }), decorator: function (a, b) { var c = s.get(a + "Provider"), d = c.$get; c.$get = function () { var a = E.invoke(d, c); return E.invoke(b, null, {$delegate: a}) } } } }, s = q.$injector = h(q, function (a, b) { aa.isString(b) && k.push(b); throw Ha("unpr", k.join(" <- ")); }), t = {}, E = t.$injector = h(t, function (a, b) { var c = s.get(a + "Provider", b); return E.invoke(c.$get, c, u, a) }); n(g(b), function (a) { a && E.invoke(a) }); return E } function Qe() { var b = !0; this.disableAutoScrolling = function () { b = !1 }; this.$get = ["$window", "$location", "$rootScope", function (a, c, d) { function e(a) { var b = null; Array.prototype.some.call(a, function (a) { if ("a" === ta(a)) return b = a, !0 }); return b } function f(b) { if (b) { b.scrollIntoView(); var c; c = g.yOffset; B(c) ? c = c() : rc(c) ? (c = c[0], c = "fixed" !== a.getComputedStyle(c).position ? 0 : c.getBoundingClientRect().bottom) : X(c) || (c = 0); c && (b = b.getBoundingClientRect().top, a.scrollBy(0, b - c)) } else a.scrollTo(0, 0) } function g(a) { a = H(a) ? a : c.hash(); var b; a ? (b = h.getElementById(a)) ? f(b) : (b = e(h.getElementsByName(a))) ? f(b) : "top" === a && f(null) : f(null) } var h = a.document; b && d.$watch(function () { return c.hash() }, function (a, b) { a === b && "" === a || Ff(function () { d.$evalAsync(g) }) }); return g }] } function hb(b, a) { if (!b && !a) return ""; if (!b) return a; if (!a) return b; K(b) && (b = b.join(" ")); K(a) && (a = a.join(" ")); return b + " " + a } function Jf(b) { H(b) && (b = b.split(" ")); var a = ga(); n(b, function (b) { b.length && (a[b] = !0) }); return a } function Ia(b) { return D(b) ? b : {} } function Kf(b, a, c, d) { function e(a) { try { a.apply(null, xa.call(arguments, 1)) } finally { if (E--, 0 === E) for (; L.length;) try { L.pop()() } catch (b) { c.error(b) } } } function f() { g(); h() } function g() { a:{ try { w = m.state; break a } catch (a) { } w = void 0 } w = y(w) ? null : w; ka(w, F) && (w = F); F = w } function h() { if (A !== l.url() || p !== w) A = l.url(), p = w, n(O, function (a) { a(l.url(), w) }) } var l = this, k = b.location, m = b.history, q = b.setTimeout, s = b.clearTimeout, t = {}; l.isMock = !1; var E = 0, L = []; l.$$completeOutstandingRequest = e; l.$$incOutstandingRequestCount = function () { E++ }; l.notifyWhenNoOutstandingRequests = function (a) { 0 === E ? a() : L.push(a) }; var w, p, A = k.href, r = a.find("base"), M = null; g(); p = w; l.url = function (a, c, e) { y(e) && (e = null); k !== b.location && (k = b.location); m !== b.history && (m = b.history); if (a) { var f = p === e; if (A === a && (!d.history || f)) return l; var h = A && Ja(A) === Ja(a); A = a; p = e; if (!d.history || h && f) { if (!h || M) M = a; c ? k.replace(a) : h ? (c = k, e = a.indexOf("#"), a = -1 === e ? "" : a.substr(e), c.hash = a) : k.href = a } else m[c ? "replaceState" : "pushState"](e, "", a), g(), p = w; return l } return M || k.href.replace(/%27/g, "'") }; l.state = function () { return w }; var O = [], J = !1, F = null; l.onUrlChange = function (a) { if (!J) { if (d.history) z(b).on("popstate", f); z(b).on("hashchange", f); J = !0 } O.push(a); return a }; l.$$applicationDestroyed = function () { z(b).off("hashchange popstate", f) }; l.$$checkUrlChange = h; l.baseHref = function () { var a = r.attr("href"); return a ? a.replace(/^(https?\:)?\/\/[^\/]*/, "") : "" }; l.defer = function (a, b) { var c; E++; c = q(function () { delete t[c]; e(a) }, b || 0); t[c] = !0; return c }; l.defer.cancel = function (a) { return t[a] ? (delete t[a], s(a), e(v), !0) : !1 } } function Ve() { this.$get = ["$window", "$log", "$sniffer", "$document", function (b, a, c, d) { return new Kf(b, d, a, c) }] } function We() { this.$get = function () { function b(b, d) { function e(a) { a != q && (s ? s == a && (s = a.n) : s = a, f(a.n, a.p), f(a, q), q = a, q.n = null) } function f(a, b) { a != b && (a && (a.p = b), b && (b.n = a)) } if (b in a) throw G("$cacheFactory")("iid", b); var g = 0, h = Q({}, d, {id: b}), l = {}, k = d && d.capacity || Number.MAX_VALUE, m = {}, q = null, s = null; return a[b] = { put: function (a, b) { if (!y(b)) { if (k < Number.MAX_VALUE) { var c = m[a] || (m[a] = {key: a}); e(c) } a in l || g++; l[a] = b; g > k && this.remove(s.key); return b } }, get: function (a) { if (k < Number.MAX_VALUE) { var b = m[a]; if (!b) return; e(b) } return l[a] }, remove: function (a) { if (k < Number.MAX_VALUE) { var b = m[a]; if (!b) return; b == q && (q = b.p); b == s && (s = b.n); f(b.n, b.p); delete m[a] } delete l[a]; g-- }, removeAll: function () { l = {}; g = 0; m = {}; q = s = null }, destroy: function () { m = h = l = null; delete a[b] }, info: function () { return Q({}, h, {size: g}) } } } var a = {}; b.info = function () { var b = {}; n(a, function (a, e) { b[e] = a.info() }); return b }; b.get = function (b) { return a[b] }; return b } } function qf() { this.$get = ["$cacheFactory", function (b) { return b("templates") }] } function Cc(b, a) { function c(a, b, c) { var d = /^\s*([@&]|=(\*?))(\??)\s*(\w*)\s*$/, e = {}; n(a, function (a, f) { var g = a.match(d); if (!g) throw ea("iscp", b, f, a, c ? "controller bindings definition" : "isolate scope definition"); e[f] = {mode: g[1][0], collection: "*" === g[2], optional: "?" === g[3], attrName: g[4] || f} }); return e } function d(a) { var b = a.charAt(0); if (!b || b !== I(b)) throw ea("baddir", a); if (a !== a.trim()) throw ea("baddir", a); } var e = {}, f = /^\s*directive\:\s*([\w\-]+)\s+(.*)$/, g = /(([\w\-]+)(?:\:([^;]+))?;?)/, h = Wd("ngSrc,ngSrcset,src,srcset"), l = /^(?:(\^\^?)?(\?)?(\^\^?)?)?/, k = /^(on[a-z]+|formaction)$/; this.directive = function s(a, f) { Ta(a, "directive"); H(a) ? (d(a), pb(f, "directiveFactory"), e.hasOwnProperty(a) || (e[a] = [], b.factory(a + "Directive", ["$injector", "$exceptionHandler", function (b, d) { var f = []; n(e[a], function (e, g) { try { var h = b.invoke(e); B(h) ? h = {compile: qa(h)} : !h.compile && h.link && (h.compile = qa(h.link)); h.priority = h.priority || 0; h.index = g; h.name = h.name || a; h.require = h.require || h.controller && h.name; h.restrict = h.restrict || "EA"; var l = h, k = h, s = h.name, m = {isolateScope: null, bindToController: null}; D(k.scope) && (!0 === k.bindToController ? (m.bindToController = c(k.scope, s, !0), m.isolateScope = {}) : m.isolateScope = c(k.scope, s, !1)); D(k.bindToController) && (m.bindToController = c(k.bindToController, s, !0)); if (D(m.bindToController)) { var S = k.controller, E = k.controllerAs; if (!S) throw ea("noctrl", s); var ha; a:if (E && H(E)) ha = E; else { if (H(S)) { var n = Vc.exec(S); if (n) { ha = n[3]; break a } } ha = void 0 } if (!ha) throw ea("noident", s); } var r = l.$$bindings = m; D(r.isolateScope) && (h.$$isolateBindings = r.isolateScope); h.$$moduleName = e.$$moduleName; f.push(h) } catch (u) { d(u) } }); return f }])), e[a].push(f)) : n(a, nc(s)); return this }; this.aHrefSanitizationWhitelist = function (b) { return x(b) ? (a.aHrefSanitizationWhitelist(b), this) : a.aHrefSanitizationWhitelist() }; this.imgSrcSanitizationWhitelist = function (b) { return x(b) ? (a.imgSrcSanitizationWhitelist(b), this) : a.imgSrcSanitizationWhitelist() }; var m = !0; this.debugInfoEnabled = function (a) { return x(a) ? (m = a, this) : m }; this.$get = ["$injector", "$interpolate", "$exceptionHandler", "$templateRequest", "$parse", "$controller", "$rootScope", "$document", "$sce", "$animate", "$$sanitizeUri", function (a, b, c, d, w, p, A, r, M, O, J) { function F(a, b) { try { a.addClass(b) } catch (c) { } } function V(a, b, c, d, e) { a instanceof z || (a = z(a)); n(a, function (b, c) { b.nodeType == Pa && b.nodeValue.match(/\S+/) && (a[c] = z(b).wrap("").parent()[0]) }); var f = S(a, b, a, c, d, e); V.$$addScopeClass(a); var g = null; return function (b, c, d) { pb(b, "scope"); d = d || {}; var e = d.parentBoundTranscludeFn, h = d.transcludeControllers; d = d.futureParentElement; e && e.$$boundTransclude && (e = e.$$boundTransclude); g || (g = (d = d && d[0]) ? "foreignobject" !== ta(d) && d.toString().match(/SVG/) ? "svg" : "html" : "html"); d = "html" !== g ? z(Xb(g, z("
").append(a).html())) : c ? Ra.clone.call(a) : a; if (h) for (var k in h) d.data("$" + k + "Controller", h[k].instance); V.$$addScopeInfo(d, b); c && c(d, b); f && f(b, d, d, e); return d } } function S(a, b, c, d, e, f) { function g(a, c, d, e) { var f, k, l, m, s, t, O; if (p) for (O = Array(c.length), m = 0; m < h.length; m += 3) f = h[m], O[f] = c[f]; else O = c; m = 0; for (s = h.length; m < s;) if (k = O[h[m++]], c = h[m++], f = h[m++], c) { if (c.scope) { if (l = a.$new(), V.$$addScopeInfo(z(k), l), t = c.$$destroyBindings) c.$$destroyBindings = null, l.$on("$destroyed", t) } else l = a; t = c.transcludeOnThisElement ? P(a, c.transclude, e) : !c.templateOnThisElement && e ? e : !e && b ? P(a, b) : null; c(f, l, k, d, t, c) } else f && f(a, k.childNodes, u, e) } for (var h = [], k, l, m, s, p, t = 0; t < a.length; t++) { k = new aa; l = ha(a[t], [], k, 0 === t ? d : u, e); (f = l.length ? C(l, a[t], k, b, c, null, [], [], f) : null) && f.scope && V.$$addScopeClass(k.$$element); k = f && f.terminal || !(m = a[t].childNodes) || !m.length ? null : S(m, f ? (f.transcludeOnThisElement || !f.templateOnThisElement) && f.transclude : b); if (f || k) h.push(t, f, k), s = !0, p = p || f; f = null } return s ? g : null } function P(a, b, c) { return function (d, e, f, g, h) { d || (d = a.$new(!1, h), d.$$transcluded = !0); return b(d, e, {parentBoundTranscludeFn: c, transcludeControllers: f, futureParentElement: g}) } } function ha(a, b, c, d, e) { var h = c.$attr, k; switch (a.nodeType) { case pa: x(b, va(ta(a)), "E", d, e); for (var l, m, s, p = a.attributes, t = 0, O = p && p.length; t < O; t++) { var L = !1, J = !1; l = p[t]; k = l.name; m = T(l.value); l = va(k); if (s = ia.test(l)) k = k.replace(Xc, "").substr(8).replace(/_(.)/g, function (a, b) { return b.toUpperCase() }); var S = l.replace(/(Start|End)$/, ""); G(S) && l === S + "Start" && (L = k, J = k.substr(0, k.length - 5) + "end", k = k.substr(0, k.length - 6)); l = va(k.toLowerCase()); h[l] = k; if (s || !c.hasOwnProperty(l)) c[l] = m, Qc(a, l) && (c[l] = !0); X(a, b, m, l, s); x(b, l, "A", d, e, L, J) } a = a.className; D(a) && (a = a.animVal); if (H(a) && "" !== a) for (; k = g.exec(a);) l = va(k[2]), x(b, l, "C", d, e) && (c[l] = T(k[3])), a = a.substr(k.index + k[0].length); break; case Pa: if (11 === Va) for (; a.parentNode && a.nextSibling && a.nextSibling.nodeType === Pa;) a.nodeValue += a.nextSibling.nodeValue, a.parentNode.removeChild(a.nextSibling); wa(b, a.nodeValue); break; case 8: try { if (k = f.exec(a.nodeValue)) l = va(k[1]), x(b, l, "M", d, e) && (c[l] = T(k[2])) } catch (E) { } } b.sort(za); return b } function ya(a, b, c) { var d = [], e = 0; if (b && a.hasAttribute && a.hasAttribute(b)) { do { if (!a) throw ea("uterdir", b, c); a.nodeType == pa && (a.hasAttribute(b) && e++, a.hasAttribute(c) && e--); d.push(a); a = a.nextSibling } while (0 < e) } else d.push(a); return z(d) } function Wc(a, b, c) { return function (d, e, f, g, h) { e = ya(e[0], b, c); return a(d, e, f, g, h) } } function C(a, b, d, e, f, g, h, k, m) { function s(a, b, c, d) { if (a) { c && (a = Wc(a, c, d)); a.require = C.require; a.directiveName = x; if (P === C || C.$$isolateScope) a = Z(a, {isolateScope: !0}); h.push(a) } if (b) { c && (b = Wc(b, c, d)); b.require = C.require; b.directiveName = x; if (P === C || C.$$isolateScope) b = Z(b, {isolateScope: !0}); k.push(b) } } function t(a, b, c, d) { var e; if (H(b)) { var f = b.match(l); b = b.substring(f[0].length); var g = f[1] || f[3], f = "?" === f[2]; "^^" === g ? c = c.parent() : e = (e = d && d[b]) && e.instance; e || (d = "$" + b + "Controller", e = g ? c.inheritedData(d) : c.data(d)); if (!e && !f) throw ea("ctreq", b, a); } else if (K(b)) for (e = [], g = 0, f = b.length; g < f; g++) e[g] = t(a, b[g], c, d); return e || null } function O(a, b, c, d, e, f) { var g = ga(), h; for (h in d) { var k = d[h], l = {$scope: k === P || k.$$isolateScope ? e : f, $element: a, $attrs: b, $transclude: c}, m = k.controller; "@" == m && (m = b[k.name]); l = p(m, l, !0, k.controllerAs); g[k.name] = l; r || a.data("$" + k.name + "Controller", l.instance) } return g } function L(a, c, e, f, g, l) { function m(a, b, c) { var d; $a(a) || (c = b, b = a, a = u); r && (d = A); c || (c = r ? ja.parent() : ja); return g(a, b, d, c, ya) } var s, p, J, E, A, ha, ja; b === e ? (f = d, ja = d.$$element) : (ja = z(e), f = new aa(ja, d)); P && (E = c.$new(!0)); g && (ha = m, ha.$$boundTransclude = g); w && (A = O(ja, f, ha, w, E, c)); P && (V.$$addScopeInfo(ja, E, !0, !(F && (F === P || F === P.$$originalDirective))), V.$$addScopeClass(ja, !0), E.$$isolateBindings = P.$$isolateBindings, Y(c, f, E, E.$$isolateBindings, P, E)); if (A) { var n = P || S, M; n && A[n.name] && (p = n.$$bindings.bindToController, (J = A[n.name]) && J.identifier && p && (M = J, l.$$destroyBindings = Y(c, f, J.instance, p, n))); for (s in A) { J = A[s]; var C = J(); C !== J.instance && (J.instance = C, ja.data("$" + s + "Controller", C), J === M && (l.$$destroyBindings(), l.$$destroyBindings = Y(c, f, C, p, n))) } } s = 0; for (l = h.length; s < l; s++) p = h[s], $(p, p.isolateScope ? E : c, ja, f, p.require && t(p.directiveName, p.require, ja, A), ha); var ya = c; P && (P.template || null === P.templateUrl) && (ya = E); a && a(ya, e.childNodes, u, g); for (s = k.length - 1; 0 <= s; s--) p = k[s], $(p, p.isolateScope ? E : c, ja, f, p.require && t(p.directiveName, p.require, ja, A), ha) } m = m || {}; for (var J = -Number.MAX_VALUE, S = m.newScopeDirective, w = m.controllerDirectives, P = m.newIsolateScopeDirective, F = m.templateDirective, A = m.nonTlbTranscludeDirective, n = !1, M = !1, r = m.hasElementTranscludeDirective, ba = d.$$element = z(b), C, x, v, y = e, za, wa = 0, G = a.length; wa < G; wa++) { C = a[wa]; var Bb = C.$$start, I = C.$$end; Bb && (ba = ya(b, Bb, I)); v = u; if (J > C.priority) break; if (v = C.scope) C.templateUrl || (D(v) ? (N("new/isolated scope", P || S, C, ba), P = C) : N("new/isolated scope", P, C, ba)), S = S || C; x = C.name; !C.templateUrl && C.controller && (v = C.controller, w = w || ga(), N("'" + x + "' controller", w[x], C, ba), w[x] = C); if (v = C.transclude) n = !0, C.$$tlb || (N("transclusion", A, C, ba), A = C), "element" == v ? (r = !0, J = C.priority, v = ba, ba = d.$$element = z(W.createComment(" " + x + ": " + d[x] + " ")), b = ba[0], U(f, xa.call(v, 0), b), y = V(v, e, J, g && g.name, {nonTlbTranscludeDirective: A})) : (v = z(Ub(b)).contents(), ba.empty(), y = V(v, e)); if (C.template) if (M = !0, N("template", F, C, ba), F = C, v = B(C.template) ? C.template(ba, d) : C.template, v = fa(v), C.replace) { g = C; v = Sb.test(v) ? Yc(Xb(C.templateNamespace, T(v))) : []; b = v[0]; if (1 != v.length || b.nodeType !== pa) throw ea("tplrt", x, ""); U(f, ba, b); G = {$attr: {}}; v = ha(b, [], G); var Q = a.splice(wa + 1, a.length - (wa + 1)); P && Zc(v); a = a.concat(v).concat(Q); $c(d, G); G = a.length } else ba.html(v); if (C.templateUrl) M = !0, N("template", F, C, ba), F = C, C.replace && (g = C), L = Lf(a.splice(wa, a.length - wa), ba, d, f, n && y, h, k, { controllerDirectives: w, newScopeDirective: S !== C && S, newIsolateScopeDirective: P, templateDirective: F, nonTlbTranscludeDirective: A }), G = a.length; else if (C.compile) try { za = C.compile(ba, d, y), B(za) ? s(null, za, Bb, I) : za && s(za.pre, za.post, Bb, I) } catch (R) { c(R, ua(ba)) } C.terminal && (L.terminal = !0, J = Math.max(J, C.priority)) } L.scope = S && !0 === S.scope; L.transcludeOnThisElement = n; L.templateOnThisElement = M; L.transclude = y; m.hasElementTranscludeDirective = r; return L } function Zc(a) { for (var b = 0, c = a.length; b < c; b++) a[b] = Nb(a[b], {$$isolateScope: !0}) } function x(b, d, f, g, h, k, l) { if (d === h) return null; h = null; if (e.hasOwnProperty(d)) { var m; d = a.get(d + "Directive"); for (var p = 0, t = d.length; p < t; p++) try { m = d[p], (g === u || g > m.priority) && -1 != m.restrict.indexOf(f) && (k && (m = Nb(m, { $$start: k, $$end: l })), b.push(m), h = m) } catch (J) { c(J) } } return h } function G(b) { if (e.hasOwnProperty(b)) for (var c = a.get(b + "Directive"), d = 0, f = c.length; d < f; d++) if (b = c[d], b.multiElement) return !0; return !1 } function $c(a, b) { var c = b.$attr, d = a.$attr, e = a.$$element; n(a, function (d, e) { "$" != e.charAt(0) && (b[e] && b[e] !== d && (d += ("style" === e ? ";" : " ") + b[e]), a.$set(e, d, !0, c[e])) }); n(b, function (b, f) { "class" == f ? (F(e, b), a["class"] = (a["class"] ? a["class"] + " " : "") + b) : "style" == f ? (e.attr("style", e.attr("style") + ";" + b), a.style = (a.style ? a.style + ";" : "") + b) : "$" == f.charAt(0) || a.hasOwnProperty(f) || (a[f] = b, d[f] = c[f]) }) } function Lf(a, b, c, e, f, g, h, k) { var l = [], m, s, p = b[0], t = a.shift(), J = Nb(t, {templateUrl: null, transclude: null, replace: null, $$originalDirective: t}), O = B(t.templateUrl) ? t.templateUrl(b, c) : t.templateUrl, E = t.templateNamespace; b.empty(); d(O).then(function (d) { var L, w; d = fa(d); if (t.replace) { d = Sb.test(d) ? Yc(Xb(E, T(d))) : []; L = d[0]; if (1 != d.length || L.nodeType !== pa) throw ea("tplrt", t.name, O); d = {$attr: {}}; U(e, b, L); var A = ha(L, [], d); D(t.scope) && Zc(A); a = A.concat(a); $c(c, d) } else L = p, b.html(d); a.unshift(J); m = C(a, L, c, f, b, t, g, h, k); n(e, function (a, c) { a == L && (e[c] = b[0]) }); for (s = S(b[0].childNodes, f); l.length;) { d = l.shift(); w = l.shift(); var M = l.shift(), V = l.shift(), A = b[0]; if (!d.$$destroyed) { if (w !== p) { var ya = w.className; k.hasElementTranscludeDirective && t.replace || (A = Ub(L)); U(M, z(w), A); F(z(A), ya) } w = m.transcludeOnThisElement ? P(d, m.transclude, V) : V; m(s, d, A, e, w, m) } } l = null }); return function (a, b, c, d, e) { a = e; b.$$destroyed || (l ? l.push(b, c, d, a) : (m.transcludeOnThisElement && (a = P(b, m.transclude, e)), m(s, b, c, d, a, m))) } } function za(a, b) { var c = b.priority - a.priority; return 0 !== c ? c : a.name !== b.name ? a.name < b.name ? -1 : 1 : a.index - b.index } function N(a, b, c, d) { function e(a) { return a ? " (module: " + a + ")" : "" } if (b) throw ea("multidir", b.name, e(b.$$moduleName), c.name, e(c.$$moduleName), a, ua(d)); } function wa(a, c) { var d = b(c, !0); d && a.push({ priority: 0, compile: function (a) { a = a.parent(); var b = !!a.length; b && V.$$addBindingClass(a); return function (a, c) { var e = c.parent(); b || V.$$addBindingClass(e); V.$$addBindingInfo(e, d.expressions); a.$watch(d, function (a) { c[0].nodeValue = a }) } } }) } function Xb(a, b) { a = I(a || "html"); switch (a) { case "svg": case "math": var c = W.createElement("div"); c.innerHTML = "<" + a + ">" + b + ""; return c.childNodes[0].childNodes; default: return b } } function R(a, b) { if ("srcdoc" == b) return M.HTML; var c = ta(a); if ("xlinkHref" == b || "form" == c && "action" == b || "img" != c && ("src" == b || "ngSrc" == b)) return M.RESOURCE_URL } function X(a, c, d, e, f) { var g = R(a, e); f = h[e] || f; var l = b(d, !0, g, f); if (l) { if ("multiple" === e && "select" === ta(a)) throw ea("selmulti", ua(a)); c.push({ priority: 100, compile: function () { return { pre: function (a, c, h) { c = h.$$observers || (h.$$observers = {}); if (k.test(e)) throw ea("nodomevents"); var m = h[e]; m !== d && (l = m && b(m, !0, g, f), d = m); l && (h[e] = l(a), (c[e] || (c[e] = [])).$$inter = !0, (h.$$observers && h.$$observers[e].$$scope || a).$watch(l, function (a, b) { "class" === e && a != b ? h.$updateClass(a, b) : h.$set(e, a) })) } } } }) } } function U(a, b, c) { var d = b[0], e = b.length, f = d.parentNode, g, h; if (a) for (g = 0, h = a.length; g < h; g++) if (a[g] == d) { a[g++] = c; h = g + e - 1; for (var k = a.length; g < k; g++, h++) h < k ? a[g] = a[h] : delete a[g]; a.length -= e - 1; a.context === d && (a.context = c); break } f && f.replaceChild(c, d); a = W.createDocumentFragment(); a.appendChild(d); z.hasData(d) && (z(c).data(z(d).data()), la ? (Qb = !0, la.cleanData([d])) : delete z.cache[d[z.expando]]); d = 1; for (e = b.length; d < e; d++) f = b[d], z(f).remove(), a.appendChild(f), delete b[d]; b[0] = c; b.length = 1 } function Z(a, b) { return Q(function () { return a.apply(null, arguments) }, a, b) } function $(a, b, d, e, f, g) { try { a(b, d, e, f, g) } catch (h) { c(h, ua(d)) } } function Y(a, c, d, e, f, g) { var h; n(e, function (e, g) { var k = e.attrName, l = e.optional, m, s, p, L; switch (e.mode) { case "@": l || Na.call(c, k) || (d[g] = c[k] = void 0); c.$observe(k, function (a) { H(a) && (d[g] = a) }); c.$$observers[k].$$scope = a; H(c[k]) && (d[g] = b(c[k])(a)); break; case "=": if (!Na.call(c, k)) { if (l) break; c[k] = void 0 } if (l && !c[k]) break; s = w(c[k]); L = s.literal ? ka : function (a, b) { return a === b || a !== a && b !== b }; p = s.assign || function () { m = d[g] = s(a); throw ea("nonassign", c[k], f.name); }; m = d[g] = s(a); l = function (b) { L(b, d[g]) || (L(b, m) ? p(a, b = d[g]) : d[g] = b); return m = b }; l.$stateful = !0; l = e.collection ? a.$watchCollection(c[k], l) : a.$watch(w(c[k], l), null, s.literal); h = h || []; h.push(l); break; case "&": s = c.hasOwnProperty(k) ? w(c[k]) : v; if (s === v && l) break; d[g] = function (b) { return s(a, b) } } }); e = h ? function () { for (var a = 0, b = h.length; a < b; ++a) h[a]() } : v; return g && e !== v ? (g.$on("$destroy", e), v) : e } var aa = function (a, b) { if (b) { var c = Object.keys(b), d, e, f; d = 0; for (e = c.length; d < e; d++) f = c[d], this[f] = b[f] } else this.$attr = {}; this.$$element = a }; aa.prototype = { $normalize: va, $addClass: function (a) { a && 0 < a.length && O.addClass(this.$$element, a) }, $removeClass: function (a) { a && 0 < a.length && O.removeClass(this.$$element, a) }, $updateClass: function (a, b) { var c = ad(a, b); c && c.length && O.addClass(this.$$element, c); (c = ad(b, a)) && c.length && O.removeClass(this.$$element, c) }, $set: function (a, b, d, e) { var f = this.$$element[0], g = Qc(f, a), h = Gf(f, a), f = a; g ? (this.$$element.prop(a, b), e = g) : h && (this[h] = b, f = h); this[a] = b; e ? this.$attr[a] = e : (e = this.$attr[a]) || (this.$attr[a] = e = zc(a, "-")); g = ta(this.$$element); if ("a" === g && "href" === a || "img" === g && "src" === a) this[a] = b = J(b, "src" === a); else if ("img" === g && "srcset" === a) { for (var g = "", h = T(b), k = /(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/, k = /\s/.test(h) ? k : /(,)/, h = h.split(k), k = Math.floor(h.length / 2), l = 0; l < k; l++) var m = 2 * l, g = g + J(T(h[m]), !0), g = g + (" " + T(h[m + 1])); h = T(h[2 * l]).split(/\s/); g += J(T(h[0]), !0); 2 === h.length && (g += " " + T(h[1])); this[a] = b = g } !1 !== d && (null === b || b === u ? this.$$element.removeAttr(e) : this.$$element.attr(e, b)); (a = this.$$observers) && n(a[f], function (a) { try { a(b) } catch (d) { c(d) } }) }, $observe: function (a, b) { var c = this, d = c.$$observers || (c.$$observers = ga()), e = d[a] || (d[a] = []); e.push(b); A.$evalAsync(function () { e.$$inter || !c.hasOwnProperty(a) || y(c[a]) || b(c[a]) }); return function () { bb(e, b) } } }; var ca = b.startSymbol(), da = b.endSymbol(), fa = "{{" == ca || "}}" == da ? Za : function (a) { return a.replace(/\{\{/g, ca).replace(/}}/g, da) }, ia = /^ngAttr[A-Z]/; V.$$addBindingInfo = m ? function (a, b) { var c = a.data("$binding") || []; K(b) ? c = c.concat(b) : c.push(b); a.data("$binding", c) } : v; V.$$addBindingClass = m ? function (a) { F(a, "ng-binding") } : v; V.$$addScopeInfo = m ? function (a, b, c, d) { a.data(c ? d ? "$isolateScopeNoTemplate" : "$isolateScope" : "$scope", b) } : v; V.$$addScopeClass = m ? function (a, b) { F(a, b ? "ng-isolate-scope" : "ng-scope") } : v; return V }] } function va(b) { return fb(b.replace(Xc, "")) } function ad(b, a) { var c = "", d = b.split(/\s+/), e = a.split(/\s+/), f = 0; a:for (; f < d.length; f++) { for (var g = d[f], h = 0; h < e.length; h++) if (g == e[h]) continue a; c += (0 < c.length ? " " : "") + g } return c } function Yc(b) { b = z(b); var a = b.length; if (1 >= a) return b; for (; a--;) 8 === b[a].nodeType && Mf.call(b, a, 1); return b } function Xe() { var b = {}, a = !1; this.register = function (a, d) { Ta(a, "controller"); D(a) ? Q(b, a) : b[a] = d }; this.allowGlobals = function () { a = !0 }; this.$get = ["$injector", "$window", function (c, d) { function e(a, b, c, d) { if (!a || !D(a.$scope)) throw G("$controller")("noscp", d, b); a.$scope[b] = c } return function (f, g, h, l) { var k, m, q; h = !0 === h; l && H(l) && (q = l); if (H(f)) { l = f.match(Vc); if (!l) throw Nf("ctrlfmt", f); m = l[1]; q = q || l[3]; f = b.hasOwnProperty(m) ? b[m] : Bc(g.$scope, m, !0) || (a ? Bc(d, m, !0) : u); Sa(f, m, !0) } if (h) return h = (K(f) ? f[f.length - 1] : f).prototype, k = Object.create(h || null), q && e(g, q, k, m || f.name), Q(function () { var a = c.invoke(f, k, g, m); a !== k && (D(a) || B(a)) && (k = a, q && e(g, q, k, m || f.name)); return k }, {instance: k, identifier: q}); k = c.instantiate(f, g, m); q && e(g, q, k, m || f.name); return k } }] } function Ye() { this.$get = ["$window", function (b) { return z(b.document) }] } function Ze() { this.$get = ["$log", function (b) { return function (a, c) { b.error.apply(b, arguments) } }] } function Yb(b) { return D(b) ? ca(b) ? b.toISOString() : db(b) : b } function df() { this.$get = function () { return function (b) { if (!b) return ""; var a = []; mc(b, function (b, d) { null === b || y(b) || (K(b) ? n(b, function (b, c) { a.push(ma(d) + "=" + ma(Yb(b))) }) : a.push(ma(d) + "=" + ma(Yb(b)))) }); return a.join("&") } } } function ef() { this.$get = function () { return function (b) { function a(b, e, f) { null === b || y(b) || (K(b) ? n(b, function (b, c) { a(b, e + "[" + (D(b) ? c : "") + "]") }) : D(b) && !ca(b) ? mc(b, function (b, c) { a(b, e + (f ? "" : "[") + c + (f ? "" : "]")) }) : c.push(ma(e) + "=" + ma(Yb(b)))) } if (!b) return ""; var c = []; a(b, "", !0); return c.join("&") } } } function Zb(b, a) { if (H(b)) { var c = b.replace(Of, "").trim(); if (c) { var d = a("Content-Type"); (d = d && 0 === d.indexOf(bd)) || (d = (d = c.match(Pf)) && Qf[d[0]].test(c)); d && (b = uc(c)) } } return b } function cd(b) { var a = ga(), c; H(b) ? n(b.split("\n"), function (b) { c = b.indexOf(":"); var e = I(T(b.substr(0, c))); b = T(b.substr(c + 1)); e && (a[e] = a[e] ? a[e] + ", " + b : b) }) : D(b) && n(b, function (b, c) { var f = I(c), g = T(b); f && (a[f] = a[f] ? a[f] + ", " + g : g) }); return a } function dd(b) { var a; return function (c) { a || (a = cd(b)); return c ? (c = a[I(c)], void 0 === c && (c = null), c) : a } } function ed(b, a, c, d) { if (B(d)) return d(b, a, c); n(d, function (d) { b = d(b, a, c) }); return b } function cf() { var b = this.defaults = { transformResponse: [Zb], transformRequest: [function (a) { return D(a) && "[object File]" !== sa.call(a) && "[object Blob]" !== sa.call(a) && "[object FormData]" !== sa.call(a) ? db(a) : a }], headers: {common: {Accept: "application/json, text/plain, */*"}, post: ia($b), put: ia($b), patch: ia($b)}, xsrfCookieName: "XSRF-TOKEN", xsrfHeaderName: "X-XSRF-TOKEN", paramSerializer: "$httpParamSerializer" }, a = !1; this.useApplyAsync = function (b) { return x(b) ? (a = !!b, this) : a }; var c = !0; this.useLegacyPromiseExtensions = function (a) { return x(a) ? (c = !!a, this) : c }; var d = this.interceptors = []; this.$get = ["$httpBackend", "$$cookieReader", "$cacheFactory", "$rootScope", "$q", "$injector", function (e, f, g, h, l, k) { function m(a) { function d(a) { var b = Q({}, a); b.data = a.data ? ed(a.data, a.headers, a.status, f.transformResponse) : a.data; a = a.status; return 200 <= a && 300 > a ? b : l.reject(b) } function e(a, b) { var c, d = {}; n(a, function (a, e) { B(a) ? (c = a(b), null != c && (d[e] = c)) : d[e] = a }); return d } if (!aa.isObject(a)) throw G("$http")("badreq", a); var f = Q({ method: "get", transformRequest: b.transformRequest, transformResponse: b.transformResponse, paramSerializer: b.paramSerializer }, a); f.headers = function (a) { var c = b.headers, d = Q({}, a.headers), f, g, h, c = Q({}, c.common, c[I(a.method)]); a:for (f in c) { g = I(f); for (h in d) if (I(h) === g) continue a; d[f] = c[f] } return e(d, ia(a)) }(a); f.method = rb(f.method); f.paramSerializer = H(f.paramSerializer) ? k.get(f.paramSerializer) : f.paramSerializer; var g = [function (a) { var c = a.headers, e = ed(a.data, dd(c), u, a.transformRequest); y(e) && n(c, function (a, b) { "content-type" === I(b) && delete c[b] }); y(a.withCredentials) && !y(b.withCredentials) && (a.withCredentials = b.withCredentials); return q(a, e).then(d, d) }, u], h = l.when(f); for (n(E, function (a) { (a.request || a.requestError) && g.unshift(a.request, a.requestError); (a.response || a.responseError) && g.push(a.response, a.responseError) }); g.length;) { a = g.shift(); var m = g.shift(), h = h.then(a, m) } c ? (h.success = function (a) { Sa(a, "fn"); h.then(function (b) { a(b.data, b.status, b.headers, f) }); return h }, h.error = function (a) { Sa(a, "fn"); h.then(null, function (b) { a(b.data, b.status, b.headers, f) }); return h }) : (h.success = fd("success"), h.error = fd("error")); return h } function q(c, d) { function g(b, c, d, e) { function f() { k(c, b, d, e) } F && (200 <= b && 300 > b ? F.put(P, [b, c, cd(d), e]) : F.remove(P)); a ? h.$applyAsync(f) : (f(), h.$$phase || h.$apply()) } function k(a, b, d, e) { b = Math.max(b, 0); (200 <= b && 300 > b ? O.resolve : O.reject)({ data: a, status: b, headers: dd(d), config: c, statusText: e }) } function q(a) { k(a.data, a.status, ia(a.headers()), a.statusText) } function E() { var a = m.pendingRequests.indexOf(c); -1 !== a && m.pendingRequests.splice(a, 1) } var O = l.defer(), J = O.promise, F, n, S = c.headers, P = s(c.url, c.paramSerializer(c.params)); m.pendingRequests.push(c); J.then(E, E); !c.cache && !b.cache || !1 === c.cache || "GET" !== c.method && "JSONP" !== c.method || (F = D(c.cache) ? c.cache : D(b.cache) ? b.cache : t); F && (n = F.get(P), x(n) ? n && B(n.then) ? n.then(q, q) : K(n) ? k(n[1], n[0], ia(n[2]), n[3]) : k(n, 200, {}, "OK") : F.put(P, J)); y(n) && ((n = gd(c.url) ? f()[c.xsrfCookieName || b.xsrfCookieName] : u) && (S[c.xsrfHeaderName || b.xsrfHeaderName] = n), e(c.method, P, d, g, S, c.timeout, c.withCredentials, c.responseType)); return J } function s(a, b) { 0 < b.length && (a += (-1 == a.indexOf("?") ? "?" : "&") + b); return a } var t = g("$http"); b.paramSerializer = H(b.paramSerializer) ? k.get(b.paramSerializer) : b.paramSerializer; var E = []; n(d, function (a) { E.unshift(H(a) ? k.get(a) : k.invoke(a)) }); m.pendingRequests = []; (function (a) { n(arguments, function (a) { m[a] = function (b, c) { return m(Q({}, c || {}, {method: a, url: b})) } }) })("get", "delete", "head", "jsonp"); (function (a) { n(arguments, function (a) { m[a] = function (b, c, d) { return m(Q({}, d || {}, {method: a, url: b, data: c})) } }) })("post", "put", "patch"); m.defaults = b; return m }] } function Rf() { return new N.XMLHttpRequest } function ff() { this.$get = ["$browser", "$window", "$document", function (b, a, c) { return Sf(b, Rf, b.defer, a.angular.callbacks, c[0]) }] } function Sf(b, a, c, d, e) { function f(a, b, c) { var f = e.createElement("script"), m = null; f.type = "text/javascript"; f.src = a; f.async = !0; m = function (a) { f.removeEventListener("load", m, !1); f.removeEventListener("error", m, !1); e.body.removeChild(f); f = null; var g = -1, t = "unknown"; a && ("load" !== a.type || d[b].called || (a = {type: "error"}), t = a.type, g = "error" === a.type ? 404 : 200); c && c(g, t) }; f.addEventListener("load", m, !1); f.addEventListener("error", m, !1); e.body.appendChild(f); return m } return function (e, h, l, k, m, q, s, t) { function E() { p && p(); A && A.abort() } function L(a, d, e, f, g) { M !== u && c.cancel(M); p = A = null; a(d, e, f, g); b.$$completeOutstandingRequest(v) } b.$$incOutstandingRequestCount(); h = h || b.url(); if ("jsonp" == I(e)) { var w = "_" + (d.counter++).toString(36); d[w] = function (a) { d[w].data = a; d[w].called = !0 }; var p = f(h.replace("JSON_CALLBACK", "angular.callbacks." + w), w, function (a, b) { L(k, a, d[w].data, "", b); d[w] = v }) } else { var A = a(); A.open(e, h, !0); n(m, function (a, b) { x(a) && A.setRequestHeader(b, a) }); A.onload = function () { var a = A.statusText || "", b = "response" in A ? A.response : A.responseText, c = 1223 === A.status ? 204 : A.status; 0 === c && (c = b ? 200 : "file" == Aa(h).protocol ? 404 : 0); L(k, c, b, A.getAllResponseHeaders(), a) }; e = function () { L(k, -1, null, null, "") }; A.onerror = e; A.onabort = e; s && (A.withCredentials = !0); if (t) try { A.responseType = t } catch (r) { if ("json" !== t) throw r; } A.send(l) } if (0 < q) var M = c(E, q); else q && B(q.then) && q.then(E) } } function af() { var b = "{{", a = "}}"; this.startSymbol = function (a) { return a ? (b = a, this) : b }; this.endSymbol = function (b) { return b ? (a = b, this) : a }; this.$get = ["$parse", "$exceptionHandler", "$sce", function (c, d, e) { function f(a) { return "\\\\\\" + a } function g(c) { return c.replace(m, b).replace(q, a) } function h(f, h, m, q) { function w(a) { try { var b = a; a = m ? e.getTrusted(m, b) : e.valueOf(b); var c; if (q && !x(a)) c = a; else if (null == a) c = ""; else { switch (typeof a) { case "string": break; case "number": a = "" + a; break; default: a = db(a) } c = a } return c } catch (g) { d(Ka.interr(f, g)) } } q = !!q; for (var p, n, r = 0, M = [], O = [], J = f.length, F = [], V = []; r < J;) if (-1 != (p = f.indexOf(b, r)) && -1 != (n = f.indexOf(a, p + l))) r !== p && F.push(g(f.substring(r, p))), r = f.substring(p + l, n), M.push(r), O.push(c(r, w)), r = n + k, V.push(F.length), F.push(""); else { r !== J && F.push(g(f.substring(r))); break } m && 1 < F.length && Ka.throwNoconcat(f); if (!h || M.length) { var S = function (a) { for (var b = 0, c = M.length; b < c; b++) { if (q && y(a[b])) return; F[V[b]] = a[b] } return F.join("") }; return Q(function (a) { var b = 0, c = M.length, e = Array(c); try { for (; b < c; b++) e[b] = O[b](a); return S(e) } catch (g) { d(Ka.interr(f, g)) } }, { exp: f, expressions: M, $$watchDelegate: function (a, b) { var c; return a.$watchGroup(O, function (d, e) { var f = S(d); B(b) && b.call(this, f, d !== e ? c : f, a); c = f }) } }) } } var l = b.length, k = a.length, m = new RegExp(b.replace(/./g, f), "g"), q = new RegExp(a.replace(/./g, f), "g"); h.startSymbol = function () { return b }; h.endSymbol = function () { return a }; return h }] } function bf() { this.$get = ["$rootScope", "$window", "$q", "$$q", function (b, a, c, d) { function e(e, h, l, k) { var m = 4 < arguments.length, q = m ? xa.call(arguments, 4) : [], s = a.setInterval, t = a.clearInterval, E = 0, L = x(k) && !k, w = (L ? d : c).defer(), p = w.promise; l = x(l) ? l : 0; p.then(null, null, m ? function () { e.apply(null, q) } : e); p.$$intervalId = s(function () { w.notify(E++); 0 < l && E >= l && (w.resolve(E), t(p.$$intervalId), delete f[p.$$intervalId]); L || b.$apply() }, h); f[p.$$intervalId] = w; return p } var f = {}; e.cancel = function (b) { return b && b.$$intervalId in f ? (f[b.$$intervalId].reject("canceled"), a.clearInterval(b.$$intervalId), delete f[b.$$intervalId], !0) : !1 }; return e }] } function ac(b) { b = b.split("/"); for (var a = b.length; a--;) b[a] = nb(b[a]); return b.join("/") } function hd(b, a) { var c = Aa(b); a.$$protocol = c.protocol; a.$$host = c.hostname; a.$$port = Y(c.port) || Tf[c.protocol] || null } function id(b, a) { var c = "/" !== b.charAt(0); c && (b = "/" + b); var d = Aa(b); a.$$path = decodeURIComponent(c && "/" === d.pathname.charAt(0) ? d.pathname.substring(1) : d.pathname); a.$$search = xc(d.search); a.$$hash = decodeURIComponent(d.hash); a.$$path && "/" != a.$$path.charAt(0) && (a.$$path = "/" + a.$$path) } function ra(b, a) { if (0 === a.indexOf(b)) return a.substr(b.length) } function Ja(b) { var a = b.indexOf("#"); return -1 == a ? b : b.substr(0, a) } function Cb(b) { return b.replace(/(#.+)|#$/, "$1") } function bc(b, a, c) { this.$$html5 = !0; c = c || ""; hd(b, this); this.$$parse = function (b) { var c = ra(a, b); if (!H(c)) throw Db("ipthprfx", b, a); id(c, this); this.$$path || (this.$$path = "/"); this.$$compose() }; this.$$compose = function () { var b = Pb(this.$$search), c = this.$$hash ? "#" + nb(this.$$hash) : ""; this.$$url = ac(this.$$path) + (b ? "?" + b : "") + c; this.$$absUrl = a + this.$$url.substr(1) }; this.$$parseLinkUrl = function (d, e) { if (e && "#" === e[0]) return this.hash(e.slice(1)), !0; var f, g; (f = ra(b, d)) !== u ? (g = f, g = (f = ra(c, f)) !== u ? a + (ra("/", f) || f) : b + g) : (f = ra(a, d)) !== u ? g = a + f : a == d + "/" && (g = a); g && this.$$parse(g); return !!g } } function cc(b, a, c) { hd(b, this); this.$$parse = function (d) { var e = ra(b, d) || ra(a, d), f; y(e) || "#" !== e.charAt(0) ? this.$$html5 ? f = e : (f = "", y(e) && (b = d, this.replace())) : (f = ra(c, e), y(f) && (f = e)); id(f, this); d = this.$$path; var e = b, g = /^\/[A-Z]:(\/.*)/; 0 === f.indexOf(e) && (f = f.replace(e, "")); g.exec(f) || (d = (f = g.exec(d)) ? f[1] : d); this.$$path = d; this.$$compose() }; this.$$compose = function () { var a = Pb(this.$$search), e = this.$$hash ? "#" + nb(this.$$hash) : ""; this.$$url = ac(this.$$path) + (a ? "?" + a : "") + e; this.$$absUrl = b + (this.$$url ? c + this.$$url : "") }; this.$$parseLinkUrl = function (a, c) { return Ja(b) == Ja(a) ? (this.$$parse(a), !0) : !1 } } function jd(b, a, c) { this.$$html5 = !0; cc.apply(this, arguments); this.$$parseLinkUrl = function (d, e) { if (e && "#" === e[0]) return this.hash(e.slice(1)), !0; var f, g; b == Ja(d) ? f = d : (g = ra(a, d)) ? f = b + c + g : a === d + "/" && (f = a); f && this.$$parse(f); return !!f }; this.$$compose = function () { var a = Pb(this.$$search), e = this.$$hash ? "#" + nb(this.$$hash) : ""; this.$$url = ac(this.$$path) + (a ? "?" + a : "") + e; this.$$absUrl = b + c + this.$$url } } function Eb(b) { return function () { return this[b] } } function kd(b, a) { return function (c) { if (y(c)) return this[b]; this[b] = a(c); this.$$compose(); return this } } function gf() { var b = "", a = { enabled: !1, requireBase: !0, rewriteLinks: !0 }; this.hashPrefix = function (a) { return x(a) ? (b = a, this) : b }; this.html5Mode = function (b) { return ab(b) ? (a.enabled = b, this) : D(b) ? (ab(b.enabled) && (a.enabled = b.enabled), ab(b.requireBase) && (a.requireBase = b.requireBase), ab(b.rewriteLinks) && (a.rewriteLinks = b.rewriteLinks), this) : a }; this.$get = ["$rootScope", "$browser", "$sniffer", "$rootElement", "$window", function (c, d, e, f, g) { function h(a, b, c) { var e = k.url(), f = k.$$state; try { d.url(a, b, c), k.$$state = d.state() } catch (g) { throw k.url(e), k.$$state = f, g; } } function l(a, b) { c.$broadcast("$locationChangeSuccess", k.absUrl(), a, k.$$state, b) } var k, m; m = d.baseHref(); var q = d.url(), s; if (a.enabled) { if (!m && a.requireBase) throw Db("nobase"); s = q.substring(0, q.indexOf("/", q.indexOf("//") + 2)) + (m || "/"); m = e.history ? bc : jd } else s = Ja(q), m = cc; var t = s.substr(0, Ja(s).lastIndexOf("/") + 1); k = new m(s, t, "#" + b); k.$$parseLinkUrl(q, q); k.$$state = d.state(); var E = /^\s*(javascript|mailto):/i; f.on("click", function (b) { if (a.rewriteLinks && !b.ctrlKey && !b.metaKey && !b.shiftKey && 2 != b.which && 2 != b.button) { for (var e = z(b.target); "a" !== ta(e[0]);) if (e[0] === f[0] || !(e = e.parent())[0]) return; var h = e.prop("href"), l = e.attr("href") || e.attr("xlink:href"); D(h) && "[object SVGAnimatedString]" === h.toString() && (h = Aa(h.animVal).href); E.test(h) || !h || e.attr("target") || b.isDefaultPrevented() || !k.$$parseLinkUrl(h, l) || (b.preventDefault(), k.absUrl() != d.url() && (c.$apply(), g.angular["ff-684208-preventDefault"] = !0)) } }); Cb(k.absUrl()) != Cb(q) && d.url(k.absUrl(), !0); var L = !0; d.onUrlChange(function (a, b) { y(ra(t, a)) ? g.location.href = a : (c.$evalAsync(function () { var d = k.absUrl(), e = k.$$state, f; k.$$parse(a); k.$$state = b; f = c.$broadcast("$locationChangeStart", a, d, b, e).defaultPrevented; k.absUrl() === a && (f ? (k.$$parse(d), k.$$state = e, h(d, !1, e)) : (L = !1, l(d, e))) }), c.$$phase || c.$digest()) }); c.$watch(function () { var a = Cb(d.url()), b = Cb(k.absUrl()), f = d.state(), g = k.$$replace, m = a !== b || k.$$html5 && e.history && f !== k.$$state; if (L || m) L = !1, c.$evalAsync(function () { var b = k.absUrl(), d = c.$broadcast("$locationChangeStart", b, a, k.$$state, f).defaultPrevented; k.absUrl() === b && (d ? (k.$$parse(a), k.$$state = f) : (m && h(b, g, f === k.$$state ? null : k.$$state), l(a, f))) }); k.$$replace = !1 }); return k }] } function hf() { var b = !0, a = this; this.debugEnabled = function (a) { return x(a) ? (b = a, this) : b }; this.$get = ["$window", function (c) { function d(a) { a instanceof Error && (a.stack ? a = a.message && -1 === a.stack.indexOf(a.message) ? "Error: " + a.message + "\n" + a.stack : a.stack : a.sourceURL && (a = a.message + "\n" + a.sourceURL + ":" + a.line)); return a } function e(a) { var b = c.console || {}, e = b[a] || b.log || v; a = !1; try { a = !!e.apply } catch (l) { } return a ? function () { var a = []; n(arguments, function (b) { a.push(d(b)) }); return e.apply(b, a) } : function (a, b) { e(a, null == b ? "" : b) } } return { log: e("log"), info: e("info"), warn: e("warn"), error: e("error"), debug: function () { var c = e("debug"); return function () { b && c.apply(a, arguments) } }() } }] } function Wa(b, a) { if ("__defineGetter__" === b || "__defineSetter__" === b || "__lookupGetter__" === b || "__lookupSetter__" === b || "__proto__" === b) throw da("isecfld", a); return b } function Ba(b, a) { if (b) { if (b.constructor === b) throw da("isecfn", a); if (b.window === b) throw da("isecwindow", a); if (b.children && (b.nodeName || b.prop && b.attr && b.find)) throw da("isecdom", a); if (b === Object) throw da("isecobj", a); } return b } function ld(b, a) { if (b) { if (b.constructor === b) throw da("isecfn", a); if (b === Uf || b === Vf || b === Wf) throw da("isecff", a); } } function Xf(b, a) { return "undefined" !== typeof b ? b : a } function md(b, a) { return "undefined" === typeof b ? a : "undefined" === typeof a ? b : b + a } function U(b, a) { var c, d; switch (b.type) { case r.Program: c = !0; n(b.body, function (b) { U(b.expression, a); c = c && b.expression.constant }); b.constant = c; break; case r.Literal: b.constant = !0; b.toWatch = []; break; case r.UnaryExpression: U(b.argument, a); b.constant = b.argument.constant; b.toWatch = b.argument.toWatch; break; case r.BinaryExpression: U(b.left, a); U(b.right, a); b.constant = b.left.constant && b.right.constant; b.toWatch = b.left.toWatch.concat(b.right.toWatch); break; case r.LogicalExpression: U(b.left, a); U(b.right, a); b.constant = b.left.constant && b.right.constant; b.toWatch = b.constant ? [] : [b]; break; case r.ConditionalExpression: U(b.test, a); U(b.alternate, a); U(b.consequent, a); b.constant = b.test.constant && b.alternate.constant && b.consequent.constant; b.toWatch = b.constant ? [] : [b]; break; case r.Identifier: b.constant = !1; b.toWatch = [b]; break; case r.MemberExpression: U(b.object, a); b.computed && U(b.property, a); b.constant = b.object.constant && (!b.computed || b.property.constant); b.toWatch = [b]; break; case r.CallExpression: c = b.filter ? !a(b.callee.name).$stateful : !1; d = []; n(b.arguments, function (b) { U(b, a); c = c && b.constant; b.constant || d.push.apply(d, b.toWatch) }); b.constant = c; b.toWatch = b.filter && !a(b.callee.name).$stateful ? d : [b]; break; case r.AssignmentExpression: U(b.left, a); U(b.right, a); b.constant = b.left.constant && b.right.constant; b.toWatch = [b]; break; case r.ArrayExpression: c = !0; d = []; n(b.elements, function (b) { U(b, a); c = c && b.constant; b.constant || d.push.apply(d, b.toWatch) }); b.constant = c; b.toWatch = d; break; case r.ObjectExpression: c = !0; d = []; n(b.properties, function (b) { U(b.value, a); c = c && b.value.constant; b.value.constant || d.push.apply(d, b.value.toWatch) }); b.constant = c; b.toWatch = d; break; case r.ThisExpression: b.constant = !1, b.toWatch = [] } } function nd(b) { if (1 == b.length) { b = b[0].expression; var a = b.toWatch; return 1 !== a.length ? a : a[0] !== b ? a : u } } function od(b) { return b.type === r.Identifier || b.type === r.MemberExpression } function pd(b) { if (1 === b.body.length && od(b.body[0].expression)) return { type: r.AssignmentExpression, left: b.body[0].expression, right: {type: r.NGValueParameter}, operator: "=" } } function qd(b) { return 0 === b.body.length || 1 === b.body.length && (b.body[0].expression.type === r.Literal || b.body[0].expression.type === r.ArrayExpression || b.body[0].expression.type === r.ObjectExpression) } function rd(b, a) { this.astBuilder = b; this.$filter = a } function sd(b, a) { this.astBuilder = b; this.$filter = a } function Fb(b) { return "constructor" == b } function dc(b) { return B(b.valueOf) ? b.valueOf() : Yf.call(b) } function jf() { var b = ga(), a = ga(); this.$get = ["$filter", function (c) { function d(a, b) { return null == a || null == b ? a === b : "object" === typeof a && (a = dc(a), "object" === typeof a) ? !1 : a === b || a !== a && b !== b } function e(a, b, c, e, f) { var g = e.inputs, h; if (1 === g.length) { var k = d, g = g[0]; return a.$watch(function (a) { var b = g(a); d(b, k) || (h = e(a, u, u, [b]), k = b && dc(b)); return h }, b, c, f) } for (var l = [], m = [], q = 0, n = g.length; q < n; q++) l[q] = d, m[q] = null; return a.$watch(function (a) { for (var b = !1, c = 0, f = g.length; c < f; c++) { var k = g[c](a); if (b || (b = !d(k, l[c]))) m[c] = k, l[c] = k && dc(k) } b && (h = e(a, u, u, m)); return h }, b, c, f) } function f(a, b, c, d) { var e, f; return e = a.$watch(function (a) { return d(a) }, function (a, c, d) { f = a; B(b) && b.apply(this, arguments); x(a) && d.$$postDigest(function () { x(f) && e() }) }, c) } function g(a, b, c, d) { function e(a) { var b = !0; n(a, function (a) { x(a) || (b = !1) }); return b } var f, g; return f = a.$watch(function (a) { return d(a) }, function (a, c, d) { g = a; B(b) && b.call(this, a, c, d); e(a) && d.$$postDigest(function () { e(g) && f() }) }, c) } function h(a, b, c, d) { var e; return e = a.$watch(function (a) { return d(a) }, function (a, c, d) { B(b) && b.apply(this, arguments); e() }, c) } function l(a, b) { if (!b) return a; var c = a.$$watchDelegate, c = c !== g && c !== f ? function (c, d, e, f) { e = a(c, d, e, f); return b(e, c, d) } : function (c, d, e, f) { e = a(c, d, e, f); c = b(e, c, d); return x(e) ? c : e }; a.$$watchDelegate && a.$$watchDelegate !== e ? c.$$watchDelegate = a.$$watchDelegate : b.$stateful || (c.$$watchDelegate = e, c.inputs = a.inputs ? a.inputs : [a]); return c } var k = Fa().noUnsafeEval, m = {csp: k, expensiveChecks: !1}, q = {csp: k, expensiveChecks: !0}; return function (d, k, E) { var n, w, p; switch (typeof d) { case "string": p = d = d.trim(); var r = E ? a : b; n = r[p]; n || (":" === d.charAt(0) && ":" === d.charAt(1) && (w = !0, d = d.substring(2)), E = E ? q : m, n = new ec(E), n = (new fc(n, c, E)).parse(d), n.constant ? n.$$watchDelegate = h : w ? n.$$watchDelegate = n.literal ? g : f : n.inputs && (n.$$watchDelegate = e), r[p] = n); return l(n, k); case "function": return l(d, k); default: return v } } }] } function lf() { this.$get = ["$rootScope", "$exceptionHandler", function (b, a) { return td(function (a) { b.$evalAsync(a) }, a) }] } function mf() { this.$get = ["$browser", "$exceptionHandler", function (b, a) { return td(function (a) { b.defer(a) }, a) }] } function td(b, a) { function c(a, b, c) { function d(b) { return function (c) { e || (e = !0, b.call(a, c)) } } var e = !1; return [d(b), d(c)] } function d() { this.$$state = {status: 0} } function e(a, b) { return function (c) { b.call(a, c) } } function f(c) { !c.processScheduled && c.pending && (c.processScheduled = !0, b(function () { var b, d, e; e = c.pending; c.processScheduled = !1; c.pending = u; for (var f = 0, g = e.length; f < g; ++f) { d = e[f][0]; b = e[f][c.status]; try { B(b) ? d.resolve(b(c.value)) : 1 === c.status ? d.resolve(c.value) : d.reject(c.value) } catch (h) { d.reject(h), a(h) } } })) } function g() { this.promise = new d; this.resolve = e(this, this.resolve); this.reject = e(this, this.reject); this.notify = e(this, this.notify) } var h = G("$q", TypeError); Q(d.prototype, { then: function (a, b, c) { if (y(a) && y(b) && y(c)) return this; var d = new g; this.$$state.pending = this.$$state.pending || []; this.$$state.pending.push([d, a, b, c]); 0 < this.$$state.status && f(this.$$state); return d.promise }, "catch": function (a) { return this.then(null, a) }, "finally": function (a, b) { return this.then(function (b) { return k(b, !0, a) }, function (b) { return k(b, !1, a) }, b) } }); Q(g.prototype, { resolve: function (a) { this.promise.$$state.status || (a === this.promise ? this.$$reject(h("qcycle", a)) : this.$$resolve(a)) }, $$resolve: function (b) { var d, e; e = c(this, this.$$resolve, this.$$reject); try { if (D(b) || B(b)) d = b && b.then; B(d) ? (this.promise.$$state.status = -1, d.call(b, e[0], e[1], this.notify)) : (this.promise.$$state.value = b, this.promise.$$state.status = 1, f(this.promise.$$state)) } catch (g) { e[1](g), a(g) } }, reject: function (a) { this.promise.$$state.status || this.$$reject(a) }, $$reject: function (a) { this.promise.$$state.value = a; this.promise.$$state.status = 2; f(this.promise.$$state) }, notify: function (c) { var d = this.promise.$$state.pending; 0 >= this.promise.$$state.status && d && d.length && b(function () { for (var b, e, f = 0, g = d.length; f < g; f++) { e = d[f][0]; b = d[f][3]; try { e.notify(B(b) ? b(c) : c) } catch (h) { a(h) } } }) } }); var l = function (a, b) { var c = new g; b ? c.resolve(a) : c.reject(a); return c.promise }, k = function (a, b, c) { var d = null; try { B(c) && (d = c()) } catch (e) { return l(e, !1) } return d && B(d.then) ? d.then(function () { return l(a, b) }, function (a) { return l(a, !1) }) : l(a, b) }, m = function (a, b, c, d) { var e = new g; e.resolve(a); return e.promise.then(b, c, d) }, q = function t(a) { if (!B(a)) throw h("norslvr", a); if (!(this instanceof t)) return new t(a); var b = new g; a(function (a) { b.resolve(a) }, function (a) { b.reject(a) }); return b.promise }; q.defer = function () { return new g }; q.reject = function (a) { var b = new g; b.reject(a); return b.promise }; q.when = m; q.resolve = m; q.all = function (a) { var b = new g, c = 0, d = K(a) ? [] : {}; n(a, function (a, e) { c++; m(a).then(function (a) { d.hasOwnProperty(e) || (d[e] = a, --c || b.resolve(d)) }, function (a) { d.hasOwnProperty(e) || b.reject(a) }) }); 0 === c && b.resolve(d); return b.promise }; return q } function vf() { this.$get = ["$window", "$timeout", function (b, a) { var c = b.requestAnimationFrame || b.webkitRequestAnimationFrame, d = b.cancelAnimationFrame || b.webkitCancelAnimationFrame || b.webkitCancelRequestAnimationFrame, e = !!c, f = e ? function (a) { var b = c(a); return function () { d(b) } } : function (b) { var c = a(b, 16.66, !1); return function () { a.cancel(c) } }; f.supported = e; return f }] } function kf() { function b(a) { function b() { this.$$watchers = this.$$nextSibling = this.$$childHead = this.$$childTail = null; this.$$listeners = {}; this.$$listenerCount = {}; this.$$watchersCount = 0; this.$id = ++mb; this.$$ChildScope = null } b.prototype = a; return b } var a = 10, c = G("$rootScope"), d = null, e = null; this.digestTtl = function (b) { arguments.length && (a = b); return a }; this.$get = ["$injector", "$exceptionHandler", "$parse", "$browser", function (f, g, h, l) { function k(a) { a.currentScope.$$destroyed = !0 } function m() { this.$id = ++mb; this.$$phase = this.$parent = this.$$watchers = this.$$nextSibling = this.$$prevSibling = this.$$childHead = this.$$childTail = null; this.$root = this; this.$$destroyed = !1; this.$$listeners = {}; this.$$listenerCount = {}; this.$$watchersCount = 0; this.$$isolateBindings = null } function q(a) { if (p.$$phase) throw c("inprog", p.$$phase); p.$$phase = a } function s(a, b) { do a.$$watchersCount += b; while (a = a.$parent) } function t(a, b, c) { do a.$$listenerCount[c] -= b, 0 === a.$$listenerCount[c] && delete a.$$listenerCount[c]; while (a = a.$parent) } function r() { } function L() { for (; M.length;) try { M.shift()() } catch (a) { g(a) } e = null } function w() { null === e && (e = l.defer(function () { p.$apply(L) })) } m.prototype = { constructor: m, $new: function (a, c) { var d; c = c || this; a ? (d = new m, d.$root = this.$root) : (this.$$ChildScope || (this.$$ChildScope = b(this)), d = new this.$$ChildScope); d.$parent = c; d.$$prevSibling = c.$$childTail; c.$$childHead ? (c.$$childTail.$$nextSibling = d, c.$$childTail = d) : c.$$childHead = c.$$childTail = d; (a || c != this) && d.$on("$destroy", k); return d }, $watch: function (a, b, c, e) { var f = h(a); if (f.$$watchDelegate) return f.$$watchDelegate(this, b, c, f, a); var g = this, k = g.$$watchers, l = {fn: b, last: r, get: f, exp: e || a, eq: !!c}; d = null; B(b) || (l.fn = v); k || (k = g.$$watchers = []); k.unshift(l); s(this, 1); return function () { 0 <= bb(k, l) && s(g, -1); d = null } }, $watchGroup: function (a, b) { function c() { h = !1; k ? (k = !1, b(e, e, g)) : b(e, d, g) } var d = Array(a.length), e = Array(a.length), f = [], g = this, h = !1, k = !0; if (!a.length) { var l = !0; g.$evalAsync(function () { l && b(e, e, g) }); return function () { l = !1 } } if (1 === a.length) return this.$watch(a[0], function (a, c, f) { e[0] = a; d[0] = c; b(e, a === c ? e : d, f) }); n(a, function (a, b) { var k = g.$watch(a, function (a, f) { e[b] = a; d[b] = f; h || (h = !0, g.$evalAsync(c)) }); f.push(k) }); return function () { for (; f.length;) f.shift()() } }, $watchCollection: function (a, b) { function c(a) { e = a; var b, d, g, h; if (!y(e)) { if (D(e)) if (Da(e)) for (f !== q && (f = q, t = f.length = 0, l++), a = e.length, t !== a && (l++, f.length = t = a), b = 0; b < a; b++) h = f[b], g = e[b], d = h !== h && g !== g, d || h === g || (l++, f[b] = g); else { f !== s && (f = s = {}, t = 0, l++); a = 0; for (b in e) e.hasOwnProperty(b) && (a++, g = e[b], h = f[b], b in f ? (d = h !== h && g !== g, d || h === g || (l++, f[b] = g)) : (t++, f[b] = g, l++)); if (t > a) for (b in l++, f) e.hasOwnProperty(b) || (t--, delete f[b]) } else f !== e && (f = e, l++); return l } } c.$stateful = !0; var d = this, e, f, g, k = 1 < b.length, l = 0, m = h(a, c), q = [], s = {}, p = !0, t = 0; return this.$watch(m, function () { p ? (p = !1, b(e, e, d)) : b(e, g, d); if (k) if (D(e)) if (Da(e)) { g = Array(e.length); for (var a = 0; a < e.length; a++) g[a] = e[a] } else for (a in g = {}, e) Na.call(e, a) && (g[a] = e[a]); else g = e }) }, $digest: function () { var b, f, h, k, m, s, t = a, n, w = [], C, M; q("$digest"); l.$$checkUrlChange(); this === p && null !== e && (l.defer.cancel(e), L()); d = null; do { s = !1; for (n = this; u.length;) { try { M = u.shift(), M.scope.$eval(M.expression, M.locals) } catch (v) { g(v) } d = null } a:do { if (k = n.$$watchers) for (m = k.length; m--;) try { if (b = k[m]) if ((f = b.get(n)) !== (h = b.last) && !(b.eq ? ka(f, h) : "number" === typeof f && "number" === typeof h && isNaN(f) && isNaN(h))) s = !0, d = b, b.last = b.eq ? fa(f, null) : f, b.fn(f, h === r ? f : h, n), 5 > t && (C = 4 - t, w[C] || (w[C] = []), w[C].push({ msg: B(b.exp) ? "fn: " + (b.exp.name || b.exp.toString()) : b.exp, newVal: f, oldVal: h })); else if (b === d) { s = !1; break a } } catch (y) { g(y) } if (!(k = n.$$watchersCount && n.$$childHead || n !== this && n.$$nextSibling)) for (; n !== this && !(k = n.$$nextSibling);) n = n.$parent } while (n = k); if ((s || u.length) && !t--) throw p.$$phase = null, c("infdig", a, w); } while (s || u.length); for (p.$$phase = null; x.length;) try { x.shift()() } catch (z) { g(z) } }, $destroy: function () { if (!this.$$destroyed) { var a = this.$parent; this.$broadcast("$destroy"); this.$$destroyed = !0; this === p && l.$$applicationDestroyed(); s(this, -this.$$watchersCount); for (var b in this.$$listenerCount) t(this, this.$$listenerCount[b], b); a && a.$$childHead == this && (a.$$childHead = this.$$nextSibling); a && a.$$childTail == this && (a.$$childTail = this.$$prevSibling); this.$$prevSibling && (this.$$prevSibling.$$nextSibling = this.$$nextSibling); this.$$nextSibling && (this.$$nextSibling.$$prevSibling = this.$$prevSibling); this.$destroy = this.$digest = this.$apply = this.$evalAsync = this.$applyAsync = v; this.$on = this.$watch = this.$watchGroup = function () { return v }; this.$$listeners = {}; this.$parent = this.$$nextSibling = this.$$prevSibling = this.$$childHead = this.$$childTail = this.$root = this.$$watchers = null } }, $eval: function (a, b) { return h(a)(this, b) }, $evalAsync: function (a, b) { p.$$phase || u.length || l.defer(function () { u.length && p.$digest() }); u.push({scope: this, expression: a, locals: b}) }, $$postDigest: function (a) { x.push(a) }, $apply: function (a) { try { q("$apply"); try { return this.$eval(a) } finally { p.$$phase = null } } catch (b) { g(b) } finally { try { p.$digest() } catch (c) { throw g(c), c; } } }, $applyAsync: function (a) { function b() { c.$eval(a) } var c = this; a && M.push(b); w() }, $on: function (a, b) { var c = this.$$listeners[a]; c || (this.$$listeners[a] = c = []); c.push(b); var d = this; do d.$$listenerCount[a] || (d.$$listenerCount[a] = 0), d.$$listenerCount[a]++; while (d = d.$parent); var e = this; return function () { var d = c.indexOf(b); -1 !== d && (c[d] = null, t(e, 1, a)) } }, $emit: function (a, b) { var c = [], d, e = this, f = !1, h = { name: a, targetScope: e, stopPropagation: function () { f = !0 }, preventDefault: function () { h.defaultPrevented = !0 }, defaultPrevented: !1 }, k = cb([h], arguments, 1), l, m; do { d = e.$$listeners[a] || c; h.currentScope = e; l = 0; for (m = d.length; l < m; l++) if (d[l]) try { d[l].apply(null, k) } catch (q) { g(q) } else d.splice(l, 1), l--, m--; if (f) return h.currentScope = null, h; e = e.$parent } while (e); h.currentScope = null; return h }, $broadcast: function (a, b) { var c = this, d = this, e = { name: a, targetScope: this, preventDefault: function () { e.defaultPrevented = !0 }, defaultPrevented: !1 }; if (!this.$$listenerCount[a]) return e; for (var f = cb([e], arguments, 1), h, k; c = d;) { e.currentScope = c; d = c.$$listeners[a] || []; h = 0; for (k = d.length; h < k; h++) if (d[h]) try { d[h].apply(null, f) } catch (l) { g(l) } else d.splice(h, 1), h--, k--; if (!(d = c.$$listenerCount[a] && c.$$childHead || c !== this && c.$$nextSibling)) for (; c !== this && !(d = c.$$nextSibling);) c = c.$parent } e.currentScope = null; return e } }; var p = new m, u = p.$$asyncQueue = [], x = p.$$postDigestQueue = [], M = p.$$applyAsyncQueue = []; return p }] } function ge() { var b = /^\s*(https?|ftp|mailto|tel|file):/, a = /^\s*((https?|ftp|file|blob):|data:image\/)/; this.aHrefSanitizationWhitelist = function (a) { return x(a) ? (b = a, this) : b }; this.imgSrcSanitizationWhitelist = function (b) { return x(b) ? (a = b, this) : a }; this.$get = function () { return function (c, d) { var e = d ? a : b, f; f = Aa(c).href; return "" === f || f.match(e) ? c : "unsafe:" + f } } } function Zf(b) { if ("self" === b) return b; if (H(b)) { if (-1 < b.indexOf("***")) throw Ca("iwcard", b); b = ud(b).replace("\\*\\*", ".*").replace("\\*", "[^:/.?&;]*"); return new RegExp("^" + b + "$") } if (Oa(b)) return new RegExp("^" + b.source + "$"); throw Ca("imatcher"); } function vd(b) { var a = []; x(b) && n(b, function (b) { a.push(Zf(b)) }); return a } function of() { this.SCE_CONTEXTS = oa; var b = ["self"], a = []; this.resourceUrlWhitelist = function (a) { arguments.length && (b = vd(a)); return b }; this.resourceUrlBlacklist = function (b) { arguments.length && (a = vd(b)); return a }; this.$get = ["$injector", function (c) { function d(a, b) { return "self" === a ? gd(b) : !!a.exec(b.href) } function e(a) { var b = function (a) { this.$$unwrapTrustedValue = function () { return a } }; a && (b.prototype = new a); b.prototype.valueOf = function () { return this.$$unwrapTrustedValue() }; b.prototype.toString = function () { return this.$$unwrapTrustedValue().toString() }; return b } var f = function (a) { throw Ca("unsafe"); }; c.has("$sanitize") && (f = c.get("$sanitize")); var g = e(), h = {}; h[oa.HTML] = e(g); h[oa.CSS] = e(g); h[oa.URL] = e(g); h[oa.JS] = e(g); h[oa.RESOURCE_URL] = e(h[oa.URL]); return { trustAs: function (a, b) { var c = h.hasOwnProperty(a) ? h[a] : null; if (!c) throw Ca("icontext", a, b); if (null === b || b === u || "" === b) return b; if ("string" !== typeof b) throw Ca("itype", a); return new c(b) }, getTrusted: function (c, e) { if (null === e || e === u || "" === e) return e; var g = h.hasOwnProperty(c) ? h[c] : null; if (g && e instanceof g) return e.$$unwrapTrustedValue(); if (c === oa.RESOURCE_URL) { var g = Aa(e.toString()), q, s, t = !1; q = 0; for (s = b.length; q < s; q++) if (d(b[q], g)) { t = !0; break } if (t) for (q = 0, s = a.length; q < s; q++) if (d(a[q], g)) { t = !1; break } if (t) return e; throw Ca("insecurl", e.toString()); } if (c === oa.HTML) return f(e); throw Ca("unsafe"); }, valueOf: function (a) { return a instanceof g ? a.$$unwrapTrustedValue() : a } } }] } function nf() { var b = !0; this.enabled = function (a) { arguments.length && (b = !!a); return b }; this.$get = ["$parse", "$sceDelegate", function (a, c) { if (b && 8 > Va) throw Ca("iequirks"); var d = ia(oa); d.isEnabled = function () { return b }; d.trustAs = c.trustAs; d.getTrusted = c.getTrusted; d.valueOf = c.valueOf; b || (d.trustAs = d.getTrusted = function (a, b) { return b }, d.valueOf = Za); d.parseAs = function (b, c) { var e = a(c); return e.literal && e.constant ? e : a(c, function (a) { return d.getTrusted(b, a) }) }; var e = d.parseAs, f = d.getTrusted, g = d.trustAs; n(oa, function (a, b) { var c = I(b); d[fb("parse_as_" + c)] = function (b) { return e(a, b) }; d[fb("get_trusted_" + c)] = function (b) { return f(a, b) }; d[fb("trust_as_" + c)] = function (b) { return g(a, b) } }); return d }] } function pf() { this.$get = ["$window", "$document", function (b, a) { var c = {}, d = Y((/android (\d+)/.exec(I((b.navigator || {}).userAgent)) || [])[1]), e = /Boxee/i.test((b.navigator || {}).userAgent), f = a[0] || {}, g, h = /^(Moz|webkit|ms)(?=[A-Z])/, l = f.body && f.body.style, k = !1, m = !1; if (l) { for (var q in l) if (k = h.exec(q)) { g = k[0]; g = g.substr(0, 1).toUpperCase() + g.substr(1); break } g || (g = "WebkitOpacity" in l && "webkit"); k = !!("transition" in l || g + "Transition" in l); m = !!("animation" in l || g + "Animation" in l); !d || k && m || (k = H(l.webkitTransition), m = H(l.webkitAnimation)) } return { history: !(!b.history || !b.history.pushState || 4 > d || e), hasEvent: function (a) { if ("input" === a && 11 >= Va) return !1; if (y(c[a])) { var b = f.createElement("div"); c[a] = "on" + a in b } return c[a] }, csp: Fa(), vendorPrefix: g, transitions: k, animations: m, android: d } }] } function rf() { this.$get = ["$templateCache", "$http", "$q", "$sce", function (b, a, c, d) { function e(f, g) { e.totalPendingRequests++; H(f) && b.get(f) || (f = d.getTrustedResourceUrl(f)); var h = a.defaults && a.defaults.transformResponse; K(h) ? h = h.filter(function (a) { return a !== Zb }) : h === Zb && (h = null); return a.get(f, {cache: b, transformResponse: h})["finally"](function () { e.totalPendingRequests-- }).then(function (a) { b.put(f, a.data); return a.data }, function (a) { if (!g) throw ea("tpload", f, a.status, a.statusText); return c.reject(a) }) } e.totalPendingRequests = 0; return e }] } function sf() { this.$get = ["$rootScope", "$browser", "$location", function (b, a, c) { return { findBindings: function (a, b, c) { a = a.getElementsByClassName("ng-binding"); var g = []; n(a, function (a) { var d = aa.element(a).data("$binding"); d && n(d, function (d) { c ? (new RegExp("(^|\\s)" + ud(b) + "(\\s|\\||$)")).test(d) && g.push(a) : -1 != d.indexOf(b) && g.push(a) }) }); return g }, findModels: function (a, b, c) { for (var g = ["ng-", "data-ng-", "ng\\:"], h = 0; h < g.length; ++h) { var l = a.querySelectorAll("[" + g[h] + "model" + (c ? "=" : "*=") + '"' + b + '"]'); if (l.length) return l } }, getLocation: function () { return c.url() }, setLocation: function (a) { a !== c.url() && (c.url(a), b.$digest()) }, whenStable: function (b) { a.notifyWhenNoOutstandingRequests(b) } } }] } function tf() { this.$get = ["$rootScope", "$browser", "$q", "$$q", "$exceptionHandler", function (b, a, c, d, e) { function f(f, l, k) { B(f) || (k = l, l = f, f = v); var m = xa.call(arguments, 3), q = x(k) && !k, s = (q ? d : c).defer(), t = s.promise, n; n = a.defer(function () { try { s.resolve(f.apply(null, m)) } catch (a) { s.reject(a), e(a) } finally { delete g[t.$$timeoutId] } q || b.$apply() }, l); t.$$timeoutId = n; g[n] = s; return t } var g = {}; f.cancel = function (b) { return b && b.$$timeoutId in g ? (g[b.$$timeoutId].reject("canceled"), delete g[b.$$timeoutId], a.defer.cancel(b.$$timeoutId)) : !1 }; return f }] } function Aa(b) { Va && (Z.setAttribute("href", b), b = Z.href); Z.setAttribute("href", b); return { href: Z.href, protocol: Z.protocol ? Z.protocol.replace(/:$/, "") : "", host: Z.host, search: Z.search ? Z.search.replace(/^\?/, "") : "", hash: Z.hash ? Z.hash.replace(/^#/, "") : "", hostname: Z.hostname, port: Z.port, pathname: "/" === Z.pathname.charAt(0) ? Z.pathname : "/" + Z.pathname } } function gd(b) { b = H(b) ? Aa(b) : b; return b.protocol === wd.protocol && b.host === wd.host } function uf() { this.$get = qa(N) } function xd(b) { function a(a) { try { return decodeURIComponent(a) } catch (b) { return a } } var c = b[0] || {}, d = {}, e = ""; return function () { var b, g, h, l, k; b = c.cookie || ""; if (b !== e) for (e = b, b = e.split("; "), d = {}, h = 0; h < b.length; h++) g = b[h], l = g.indexOf("="), 0 < l && (k = a(g.substring(0, l)), d[k] === u && (d[k] = a(g.substring(l + 1)))); return d } } function yf() { this.$get = xd } function Jc(b) { function a(c, d) { if (D(c)) { var e = {}; n(c, function (b, c) { e[c] = a(c, b) }); return e } return b.factory(c + "Filter", d) } this.register = a; this.$get = ["$injector", function (a) { return function (b) { return a.get(b + "Filter") } }]; a("currency", yd); a("date", zd); a("filter", $f); a("json", ag); a("limitTo", bg); a("lowercase", cg); a("number", Ad); a("orderBy", Bd); a("uppercase", dg) } function $f() { return function (b, a, c) { if (!Da(b)) { if (null == b) return b; throw G("filter")("notarray", b); } var d; switch (gc(a)) { case "function": break; case "boolean": case "null": case "number": case "string": d = !0; case "object": a = eg(a, c, d); break; default: return b } return Array.prototype.filter.call(b, a) } } function eg(b, a, c) { var d = D(b) && "$" in b; !0 === a ? a = ka : B(a) || (a = function (a, b) { if (y(a)) return !1; if (null === a || null === b) return a === b; if (D(b) || D(a) && !pc(a)) return !1; a = I("" + a); b = I("" + b); return -1 !== a.indexOf(b) }); return function (e) { return d && !D(e) ? La(e, b.$, a, !1) : La(e, b, a, c) } } function La(b, a, c, d, e) { var f = gc(b), g = gc(a); if ("string" === g && "!" === a.charAt(0)) return !La(b, a.substring(1), c, d); if (K(b)) return b.some(function (b) { return La(b, a, c, d) }); switch (f) { case "object": var h; if (d) { for (h in b) if ("$" !== h.charAt(0) && La(b[h], a, c, !0)) return !0; return e ? !1 : La(b, a, c, !1) } if ("object" === g) { for (h in a) if (e = a[h], !B(e) && !y(e) && (f = "$" === h, !La(f ? b : b[h], e, c, f, f))) return !1; return !0 } return c(b, a); case "function": return !1; default: return c(b, a) } } function gc(b) { return null === b ? "null" : typeof b } function yd(b) { var a = b.NUMBER_FORMATS; return function (b, d, e) { y(d) && (d = a.CURRENCY_SYM); y(e) && (e = a.PATTERNS[1].maxFrac); return null == b ? b : Cd(b, a.PATTERNS[1], a.GROUP_SEP, a.DECIMAL_SEP, e).replace(/\u00A4/g, d) } } function Ad(b) { var a = b.NUMBER_FORMATS; return function (b, d) { return null == b ? b : Cd(b, a.PATTERNS[0], a.GROUP_SEP, a.DECIMAL_SEP, d) } } function Cd(b, a, c, d, e) { if (D(b)) return ""; var f = 0 > b; b = Math.abs(b); var g = Infinity === b; if (!g && !isFinite(b)) return ""; var h = b + "", l = "", k = !1, m = []; g && (l = "\u221e"); if (!g && -1 !== h.indexOf("e")) { var q = h.match(/([\d\.]+)e(-?)(\d+)/); q && "-" == q[2] && q[3] > e + 1 ? b = 0 : (l = h, k = !0) } if (g || k) 0 < e && 1 > b && (l = b.toFixed(e), b = parseFloat(l)); else { g = (h.split(Dd)[1] || "").length; y(e) && (e = Math.min(Math.max(a.minFrac, g), a.maxFrac)); b = +(Math.round(+(b.toString() + "e" + e)).toString() + "e" + -e); var g = ("" + b).split(Dd), h = g[0], g = g[1] || "", q = 0, s = a.lgSize, t = a.gSize; if (h.length >= s + t) for (q = h.length - s, k = 0; k < q; k++) 0 === (q - k) % t && 0 !== k && (l += c), l += h.charAt(k); for (k = q; k < h.length; k++) 0 === (h.length - k) % s && 0 !== k && (l += c), l += h.charAt(k); for (; g.length < e;) g += "0"; e && "0" !== e && (l += d + g.substr(0, e)) } 0 === b && (f = !1); m.push(f ? a.negPre : a.posPre, l, f ? a.negSuf : a.posSuf); return m.join("") } function Gb(b, a, c) { var d = ""; 0 > b && (d = "-", b = -b); for (b = "" + b; b.length < a;) b = "0" + b; c && (b = b.substr(b.length - a)); return d + b } function $(b, a, c, d) { c = c || 0; return function (e) { e = e["get" + b](); if (0 < c || e > -c) e += c; 0 === e && -12 == c && (e = 12); return Gb(e, a, d) } } function Hb(b, a) { return function (c, d) { var e = c["get" + b](), f = rb(a ? "SHORT" + b : b); return d[f][e] } } function Ed(b) { var a = (new Date(b, 0, 1)).getDay(); return new Date(b, 0, (4 >= a ? 5 : 12) - a) } function Fd(b) { return function (a) { var c = Ed(a.getFullYear()); a = +new Date(a.getFullYear(), a.getMonth(), a.getDate() + (4 - a.getDay())) - +c; a = 1 + Math.round(a / 6048E5); return Gb(a, b) } } function hc(b, a) { return 0 >= b.getFullYear() ? a.ERAS[0] : a.ERAS[1] } function zd(b) { function a(a) { var b; if (b = a.match(c)) { a = new Date(0); var f = 0, g = 0, h = b[8] ? a.setUTCFullYear : a.setFullYear, l = b[8] ? a.setUTCHours : a.setHours; b[9] && (f = Y(b[9] + b[10]), g = Y(b[9] + b[11])); h.call(a, Y(b[1]), Y(b[2]) - 1, Y(b[3])); f = Y(b[4] || 0) - f; g = Y(b[5] || 0) - g; h = Y(b[6] || 0); b = Math.round(1E3 * parseFloat("0." + (b[7] || 0))); l.call(a, f, g, h, b) } return a } var c = /^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/; return function (c, e, f) { var g = "", h = [], l, k; e = e || "mediumDate"; e = b.DATETIME_FORMATS[e] || e; H(c) && (c = fg.test(c) ? Y(c) : a(c)); X(c) && (c = new Date(c)); if (!ca(c) || !isFinite(c.getTime())) return c; for (; e;) (k = gg.exec(e)) ? (h = cb(h, k, 1), e = h.pop()) : (h.push(e), e = null); var m = c.getTimezoneOffset(); f && (m = vc(f, c.getTimezoneOffset()), c = Ob(c, f, !0)); n(h, function (a) { l = hg[a]; g += l ? l(c, b.DATETIME_FORMATS, m) : a.replace(/(^'|'$)/g, "").replace(/''/g, "'") }); return g } } function ag() { return function (b, a) { y(a) && (a = 2); return db(b, a) } } function bg() { return function (b, a, c) { a = Infinity === Math.abs(Number(a)) ? Number(a) : Y(a); if (isNaN(a)) return b; X(b) && (b = b.toString()); if (!K(b) && !H(b)) return b; c = !c || isNaN(c) ? 0 : Y(c); c = 0 > c && c >= -b.length ? b.length + c : c; return 0 <= a ? b.slice(c, c + a) : 0 === c ? b.slice(a, b.length) : b.slice(Math.max(0, c + a), c) } } function Bd(b) { function a(a, c) { c = c ? -1 : 1; return a.map(function (a) { var d = 1, h = Za; if (B(a)) h = a; else if (H(a)) { if ("+" == a.charAt(0) || "-" == a.charAt(0)) d = "-" == a.charAt(0) ? -1 : 1, a = a.substring(1); if ("" !== a && (h = b(a), h.constant)) var l = h(), h = function (a) { return a[l] } } return { get: h, descending: d * c } }) } function c(a) { switch (typeof a) { case "number": case "boolean": case "string": return !0; default: return !1 } } return function (b, e, f) { if (!Da(b)) return b; K(e) || (e = [e]); 0 === e.length && (e = ["+"]); var g = a(e, f); g.push({ get: function () { return {} }, descending: f ? -1 : 1 }); b = Array.prototype.map.call(b, function (a, b) { return { value: a, predicateValues: g.map(function (d) { var e = d.get(a); d = typeof e; if (null === e) d = "string", e = "null"; else if ("string" === d) e = e.toLowerCase(); else if ("object" === d) a:{ if ("function" === typeof e.valueOf && (e = e.valueOf(), c(e))) break a; if (pc(e) && (e = e.toString(), c(e))) break a; e = b } return {value: e, type: d} }) } }); b.sort(function (a, b) { for (var c = 0, d = 0, e = g.length; d < e; ++d) { var c = a.predicateValues[d], f = b.predicateValues[d], t = 0; c.type === f.type ? c.value !== f.value && (t = c.value < f.value ? -1 : 1) : t = c.type < f.type ? -1 : 1; if (c = t * g[d].descending) break } return c }); return b = b.map(function (a) { return a.value }) } } function Ma(b) { B(b) && (b = {link: b}); b.restrict = b.restrict || "AC"; return qa(b) } function Gd(b, a, c, d, e) { var f = this, g = [], h = f.$$parentForm = b.parent().controller("form") || Ib; f.$error = {}; f.$$success = {}; f.$pending = u; f.$name = e(a.name || a.ngForm || "")(c); f.$dirty = !1; f.$pristine = !0; f.$valid = !0; f.$invalid = !1; f.$submitted = !1; h.$addControl(f); f.$rollbackViewValue = function () { n(g, function (a) { a.$rollbackViewValue() }) }; f.$commitViewValue = function () { n(g, function (a) { a.$commitViewValue() }) }; f.$addControl = function (a) { Ta(a.$name, "input"); g.push(a); a.$name && (f[a.$name] = a) }; f.$$renameControl = function (a, b) { var c = a.$name; f[c] === a && delete f[c]; f[b] = a; a.$name = b }; f.$removeControl = function (a) { a.$name && f[a.$name] === a && delete f[a.$name]; n(f.$pending, function (b, c) { f.$setValidity(c, null, a) }); n(f.$error, function (b, c) { f.$setValidity(c, null, a) }); n(f.$$success, function (b, c) { f.$setValidity(c, null, a) }); bb(g, a) }; Hd({ ctrl: this, $element: b, set: function (a, b, c) { var d = a[b]; d ? -1 === d.indexOf(c) && d.push(c) : a[b] = [c] }, unset: function (a, b, c) { var d = a[b]; d && (bb(d, c), 0 === d.length && delete a[b]) }, parentForm: h, $animate: d }); f.$setDirty = function () { d.removeClass(b, Xa); d.addClass(b, Jb); f.$dirty = !0; f.$pristine = !1; h.$setDirty() }; f.$setPristine = function () { d.setClass(b, Xa, Jb + " ng-submitted"); f.$dirty = !1; f.$pristine = !0; f.$submitted = !1; n(g, function (a) { a.$setPristine() }) }; f.$setUntouched = function () { n(g, function (a) { a.$setUntouched() }) }; f.$setSubmitted = function () { d.addClass(b, "ng-submitted"); f.$submitted = !0; h.$setSubmitted() } } function ic(b) { b.$formatters.push(function (a) { return b.$isEmpty(a) ? a : a.toString() }) } function ib(b, a, c, d, e, f) { var g = I(a[0].type); if (!e.android) { var h = !1; a.on("compositionstart", function (a) { h = !0 }); a.on("compositionend", function () { h = !1; l() }) } var l = function (b) { k && (f.defer.cancel(k), k = null); if (!h) { var e = a.val(); b = b && b.type; "password" === g || c.ngTrim && "false" === c.ngTrim || (e = T(e)); (d.$viewValue !== e || "" === e && d.$$hasNativeValidators) && d.$setViewValue(e, b) } }; if (e.hasEvent("input")) a.on("input", l); else { var k, m = function (a, b, c) { k || (k = f.defer(function () { k = null; b && b.value === c || l(a) })) }; a.on("keydown", function (a) { var b = a.keyCode; 91 === b || 15 < b && 19 > b || 37 <= b && 40 >= b || m(a, this, this.value) }); if (e.hasEvent("paste")) a.on("paste cut", m) } a.on("change", l); d.$render = function () { var b = d.$isEmpty(d.$viewValue) ? "" : d.$viewValue; a.val() !== b && a.val(b) } } function Kb(b, a) { return function (c, d) { var e, f; if (ca(c)) return c; if (H(c)) { '"' == c.charAt(0) && '"' == c.charAt(c.length - 1) && (c = c.substring(1, c.length - 1)); if (ig.test(c)) return new Date(c); b.lastIndex = 0; if (e = b.exec(c)) return e.shift(), f = d ? { yyyy: d.getFullYear(), MM: d.getMonth() + 1, dd: d.getDate(), HH: d.getHours(), mm: d.getMinutes(), ss: d.getSeconds(), sss: d.getMilliseconds() / 1E3 } : { yyyy: 1970, MM: 1, dd: 1, HH: 0, mm: 0, ss: 0, sss: 0 }, n(e, function (b, c) { c < a.length && (f[a[c]] = +b) }), new Date(f.yyyy, f.MM - 1, f.dd, f.HH, f.mm, f.ss || 0, 1E3 * f.sss || 0) } return NaN } } function jb(b, a, c, d) { return function (e, f, g, h, l, k, m) { function q(a) { return a && !(a.getTime && a.getTime() !== a.getTime()) } function s(a) { return x(a) ? ca(a) ? a : c(a) : u } Id(e, f, g, h); ib(e, f, g, h, l, k); var t = h && h.$options && h.$options.timezone, n; h.$$parserName = b; h.$parsers.push(function (b) { return h.$isEmpty(b) ? null : a.test(b) ? (b = c(b, n), t && (b = Ob(b, t)), b) : u }); h.$formatters.push(function (a) { if (a && !ca(a)) throw kb("datefmt", a); if (q(a)) return (n = a) && t && (n = Ob(n, t, !0)), m("date")(a, d, t); n = null; return "" }); if (x(g.min) || g.ngMin) { var r; h.$validators.min = function (a) { return !q(a) || y(r) || c(a) >= r }; g.$observe("min", function (a) { r = s(a); h.$validate() }) } if (x(g.max) || g.ngMax) { var w; h.$validators.max = function (a) { return !q(a) || y(w) || c(a) <= w }; g.$observe("max", function (a) { w = s(a); h.$validate() }) } } } function Id(b, a, c, d) { (d.$$hasNativeValidators = D(a[0].validity)) && d.$parsers.push(function (b) { var c = a.prop("validity") || {}; return c.badInput && !c.typeMismatch ? u : b }) } function Jd(b, a, c, d, e) { if (x(d)) { b = b(d); if (!b.constant) throw kb("constexpr", c, d); return b(a) } return e } function jc(b, a) { b = "ngClass" + b; return ["$animate", function (c) { function d(a, b) { var c = [], d = 0; a:for (; d < a.length; d++) { for (var e = a[d], m = 0; m < b.length; m++) if (e == b[m]) continue a; c.push(e) } return c } function e(a) { var b = []; return K(a) ? (n(a, function (a) { b = b.concat(e(a)) }), b) : H(a) ? a.split(" ") : D(a) ? (n(a, function (a, c) { a && (b = b.concat(c.split(" "))) }), b) : a } return { restrict: "AC", link: function (f, g, h) { function l(a, b) { var c = g.data("$classCounts") || ga(), d = []; n(a, function (a) { if (0 < b || c[a]) c[a] = (c[a] || 0) + b, c[a] === +(0 < b) && d.push(a) }); g.data("$classCounts", c); return d.join(" ") } function k(b) { if (!0 === a || f.$index % 2 === a) { var k = e(b || []); if (!m) { var n = l(k, 1); h.$addClass(n) } else if (!ka(b, m)) { var r = e(m), n = d(k, r), k = d(r, k), n = l(n, 1), k = l(k, -1); n && n.length && c.addClass(g, n); k && k.length && c.removeClass(g, k) } } m = ia(b) } var m; f.$watch(h[b], k, !0); h.$observe("class", function (a) { k(f.$eval(h[b])) }); "ngClass" !== b && f.$watch("$index", function (c, d) { var g = c & 1; if (g !== (d & 1)) { var k = e(f.$eval(h[b])); g === a ? (g = l(k, 1), h.$addClass(g)) : (g = l(k, -1), h.$removeClass(g)) } }) } } }] } function Hd(b) { function a(a, b) { b && !f[a] ? (k.addClass(e, a), f[a] = !0) : !b && f[a] && (k.removeClass(e, a), f[a] = !1) } function c(b, c) { b = b ? "-" + zc(b, "-") : ""; a(lb + b, !0 === c); a(Kd + b, !1 === c) } var d = b.ctrl, e = b.$element, f = {}, g = b.set, h = b.unset, l = b.parentForm, k = b.$animate; f[Kd] = !(f[lb] = e.hasClass(lb)); d.$setValidity = function (b, e, f) { e === u ? (d.$pending || (d.$pending = {}), g(d.$pending, b, f)) : (d.$pending && h(d.$pending, b, f), Ld(d.$pending) && (d.$pending = u)); ab(e) ? e ? (h(d.$error, b, f), g(d.$$success, b, f)) : (g(d.$error, b, f), h(d.$$success, b, f)) : (h(d.$error, b, f), h(d.$$success, b, f)); d.$pending ? (a(Md, !0), d.$valid = d.$invalid = u, c("", null)) : (a(Md, !1), d.$valid = Ld(d.$error), d.$invalid = !d.$valid, c("", d.$valid)); e = d.$pending && d.$pending[b] ? u : d.$error[b] ? !1 : d.$$success[b] ? !0 : null; c(b, e); l.$setValidity(b, e, d) } } function Ld(b) { if (b) for (var a in b) if (b.hasOwnProperty(a)) return !1; return !0 } var jg = /^\/(.+)\/([a-z]*)$/, I = function (b) { return H(b) ? b.toLowerCase() : b }, Na = Object.prototype.hasOwnProperty, rb = function (b) { return H(b) ? b.toUpperCase() : b }, Va, z, la, xa = [].slice, Mf = [].splice, kg = [].push, sa = Object.prototype.toString, qc = Object.getPrototypeOf, Ea = G("ng"), aa = N.angular || (N.angular = {}), Rb, mb = 0; Va = W.documentMode; v.$inject = []; Za.$inject = []; var K = Array.isArray, sc = /^\[object (Uint8(Clamped)?)|(Uint16)|(Uint32)|(Int8)|(Int16)|(Int32)|(Float(32)|(64))Array\]$/, T = function (b) { return H(b) ? b.trim() : b }, ud = function (b) { return b.replace(/([-()\[\]{}+?*.$\^|,:#(?:<\/\1>|)$/, Sb = /<|&#?\w+;/, Bf = /<([\w:]+)/, Cf = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, na = { option: [1, '"], thead: [1, "", "
"], col: [2, "", "
"], tr: [2, "", "
"], td: [3, "", "
"], _default: [0, "", ""] }; na.optgroup = na.option; na.tbody = na.tfoot = na.colgroup = na.caption = na.thead; na.th = na.td; var Ra = R.prototype = { ready: function (b) { function a() { c || (c = !0, b()) } var c = !1; "complete" === W.readyState ? setTimeout(a) : (this.on("DOMContentLoaded", a), R(N).on("load", a)) }, toString: function () { var b = []; n(this, function (a) { b.push("" + a) }); return "[" + b.join(", ") + "]" }, eq: function (b) { return 0 <= b ? z(this[b]) : z(this[this.length + b]) }, length: 0, push: kg, sort: [].sort, splice: [].splice }, Ab = {}; n("multiple selected checked disabled readOnly required open".split(" "), function (b) { Ab[I(b)] = b }); var Rc = {}; n("input select option textarea button form details".split(" "), function (b) { Rc[b] = !0 }); var Sc = {ngMinlength: "minlength", ngMaxlength: "maxlength", ngMin: "min", ngMax: "max", ngPattern: "pattern"}; n({ data: Vb, removeData: ub, hasData: function (b) { for (var a in gb[b.ng339]) return !0; return !1 } }, function (b, a) { R[a] = b }); n({ data: Vb, inheritedData: zb, scope: function (b) { return z.data(b, "$scope") || zb(b.parentNode || b, ["$isolateScope", "$scope"]) }, isolateScope: function (b) { return z.data(b, "$isolateScope") || z.data(b, "$isolateScopeNoTemplate") }, controller: Oc, injector: function (b) { return zb(b, "$injector") }, removeAttr: function (b, a) { b.removeAttribute(a) }, hasClass: wb, css: function (b, a, c) { a = fb(a); if (x(c)) b.style[a] = c; else return b.style[a] }, attr: function (b, a, c) { var d = b.nodeType; if (d !== Pa && 2 !== d && 8 !== d) if (d = I(a), Ab[d]) if (x(c)) c ? (b[a] = !0, b.setAttribute(a, d)) : (b[a] = !1, b.removeAttribute(d)); else return b[a] || (b.attributes.getNamedItem(a) || v).specified ? d : u; else if (x(c)) b.setAttribute(a, c); else if (b.getAttribute) return b = b.getAttribute(a, 2), null === b ? u : b }, prop: function (b, a, c) { if (x(c)) b[a] = c; else return b[a] }, text: function () { function b(a, b) { if (y(b)) { var d = a.nodeType; return d === pa || d === Pa ? a.textContent : "" } a.textContent = b } b.$dv = ""; return b }(), val: function (b, a) { if (y(a)) { if (b.multiple && "select" === ta(b)) { var c = []; n(b.options, function (a) { a.selected && c.push(a.value || a.text) }); return 0 === c.length ? null : c } return b.value } b.value = a }, html: function (b, a) { if (y(a)) return b.innerHTML; tb(b, !0); b.innerHTML = a }, empty: Pc }, function (b, a) { R.prototype[a] = function (a, d) { var e, f, g = this.length; if (b !== Pc && (2 == b.length && b !== wb && b !== Oc ? a : d) === u) { if (D(a)) { for (e = 0; e < g; e++) if (b === Vb) b(this[e], a); else for (f in a) b(this[e], f, a[f]); return this } e = b.$dv; g = e === u ? Math.min(g, 1) : g; for (f = 0; f < g; f++) { var h = b(this[f], a, d); e = e ? e + h : h } return e } for (e = 0; e < g; e++) b(this[e], a, d); return this } }); n({ removeData: ub, on: function a(c, d, e, f) { if (x(f)) throw Tb("onargs"); if (Kc(c)) { var g = vb(c, !0); f = g.events; var h = g.handle; h || (h = g.handle = Hf(c, f)); for (var g = 0 <= d.indexOf(" ") ? d.split(" ") : [d], l = g.length; l--;) { d = g[l]; var k = f[d]; k || (f[d] = [], "mouseenter" === d || "mouseleave" === d ? a(c, lg[d], function (a) { var c = a.relatedTarget; c && (c === this || this.contains(c)) || h(a, d) }) : "$destroy" !== d && c.addEventListener(d, h, !1), k = f[d]); k.push(e) } } }, off: Nc, one: function (a, c, d) { a = z(a); a.on(c, function f() { a.off(c, d); a.off(c, f) }); a.on(c, d) }, replaceWith: function (a, c) { var d, e = a.parentNode; tb(a); n(new R(c), function (c) { d ? e.insertBefore(c, d.nextSibling) : e.replaceChild(c, a); d = c }) }, children: function (a) { var c = []; n(a.childNodes, function (a) { a.nodeType === pa && c.push(a) }); return c }, contents: function (a) { return a.contentDocument || a.childNodes || [] }, append: function (a, c) { var d = a.nodeType; if (d === pa || 11 === d) { c = new R(c); for (var d = 0, e = c.length; d < e; d++) a.appendChild(c[d]) } }, prepend: function (a, c) { if (a.nodeType === pa) { var d = a.firstChild; n(new R(c), function (c) { a.insertBefore(c, d) }) } }, wrap: function (a, c) { c = z(c).eq(0).clone()[0]; var d = a.parentNode; d && d.replaceChild(c, a); c.appendChild(a) }, remove: Wb, detach: function (a) { Wb(a, !0) }, after: function (a, c) { var d = a, e = a.parentNode; c = new R(c); for (var f = 0, g = c.length; f < g; f++) { var h = c[f]; e.insertBefore(h, d.nextSibling); d = h } }, addClass: yb, removeClass: xb, toggleClass: function (a, c, d) { c && n(c.split(" "), function (c) { var f = d; y(f) && (f = !wb(a, c)); (f ? yb : xb)(a, c) }) }, parent: function (a) { return (a = a.parentNode) && 11 !== a.nodeType ? a : null }, next: function (a) { return a.nextElementSibling }, find: function (a, c) { return a.getElementsByTagName ? a.getElementsByTagName(c) : [] }, clone: Ub, triggerHandler: function (a, c, d) { var e, f, g = c.type || c, h = vb(a); if (h = (h = h && h.events) && h[g]) e = { preventDefault: function () { this.defaultPrevented = !0 }, isDefaultPrevented: function () { return !0 === this.defaultPrevented }, stopImmediatePropagation: function () { this.immediatePropagationStopped = !0 }, isImmediatePropagationStopped: function () { return !0 === this.immediatePropagationStopped }, stopPropagation: v, type: g, target: a }, c.type && (e = Q(e, c)), c = ia(h), f = d ? [e].concat(d) : [e], n(c, function (c) { e.isImmediatePropagationStopped() || c.apply(a, f) }) } }, function (a, c) { R.prototype[c] = function (c, e, f) { for (var g, h = 0, l = this.length; h < l; h++) y(g) ? (g = a(this[h], c, e, f), x(g) && (g = z(g))) : Mc(g, a(this[h], c, e, f)); return x(g) ? g : this }; R.prototype.bind = R.prototype.on; R.prototype.unbind = R.prototype.off }); Ua.prototype = { put: function (a, c) { this[Ga(a, this.nextUid)] = c }, get: function (a) { return this[Ga(a, this.nextUid)] }, remove: function (a) { var c = this[a = Ga(a, this.nextUid)]; delete this[a]; return c } }; var xf = [function () { this.$get = [function () { return Ua }] }], Uc = /^[^\(]*\(\s*([^\)]*)\)/m, mg = /,/, ng = /^\s*(_?)(\S+?)\1\s*$/, Tc = /((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg, Ha = G("$injector"); eb.$$annotate = function (a, c, d) { var e; if ("function" === typeof a) { if (!(e = a.$inject)) { e = []; if (a.length) { if (c) throw H(d) && d || (d = a.name || If(a)), Ha("strictdi", d); c = a.toString().replace(Tc, ""); c = c.match(Uc); n(c[1].split(mg), function (a) { a.replace(ng, function (a, c, d) { e.push(d) }) }) } a.$inject = e } } else K(a) ? (c = a.length - 1, Sa(a[c], "fn"), e = a.slice(0, c)) : Sa(a, "fn", !0); return e }; var Nd = G("$animate"), Ue = function () { this.$get = ["$q", "$$rAF", function (a, c) { function d() { } d.all = v; d.chain = v; d.prototype = { end: v, cancel: v, resume: v, pause: v, complete: v, then: function (d, f) { return a(function (a) { c(function () { a() }) }).then(d, f) } }; return d }] }, Te = function () { var a = new Ua, c = []; this.$get = ["$$AnimateRunner", "$rootScope", function (d, e) { function f(d, f, l) { var k = a.get(d); k || (a.put(d, k = {}), c.push(d)); d = function (a, c) { var d = !1; a && (a = H(a) ? a.split(" ") : K(a) ? a : [], n(a, function (a) { a && (d = !0, k[a] = c) })); return d }; f = d(f, !0); l = d(l, !1); !f && !l || 1 < c.length || e.$$postDigest(function () { n(c, function (c) { var d = a.get(c); if (d) { var e = Jf(c.attr("class")), f = "", g = ""; n(d, function (a, c) { a !== !!e[c] && (a ? f += (f.length ? " " : "") + c : g += (g.length ? " " : "") + c) }); n(c, function (a) { f && yb(a, f); g && xb(a, g) }); a.remove(c) } }); c.length = 0 }) } return { enabled: v, on: v, off: v, pin: v, push: function (a, c, e, k) { k && k(); e = e || {}; e.from && a.css(e.from); e.to && a.css(e.to); (e.addClass || e.removeClass) && f(a, e.addClass, e.removeClass); return new d } } }] }, Re = ["$provide", function (a) { var c = this; this.$$registeredAnimations = Object.create(null); this.register = function (d, e) { if (d && "." !== d.charAt(0)) throw Nd("notcsel", d); var f = d + "-animation"; c.$$registeredAnimations[d.substr(1)] = f; a.factory(f, e) }; this.classNameFilter = function (a) { if (1 === arguments.length && (this.$$classNameFilter = a instanceof RegExp ? a : null) && /(\s+|\/)ng-animate(\s+|\/)/.test(this.$$classNameFilter.toString())) throw Nd("nongcls", "ng-animate"); return this.$$classNameFilter }; this.$get = ["$$animateQueue", function (a) { function c(a, d, e) { if (e) { var l; a:{ for (l = 0; l < e.length; l++) { var k = e[l]; if (1 === k.nodeType) { l = k; break a } } l = void 0 } !l || l.parentNode || l.previousElementSibling || (e = null) } e ? e.after(a) : d.prepend(a) } return { on: a.on, off: a.off, pin: a.pin, enabled: a.enabled, cancel: function (a) { a.end && a.end() }, enter: function (f, g, h, l) { g = g && z(g); h = h && z(h); g = g || h.parent(); c(f, g, h); return a.push(f, "enter", Ia(l)) }, move: function (f, g, h, l) { g = g && z(g); h = h && z(h); g = g || h.parent(); c(f, g, h); return a.push(f, "move", Ia(l)) }, leave: function (c, e) { return a.push(c, "leave", Ia(e), function () { c.remove() }) }, addClass: function (c, e, h) { h = Ia(h); h.addClass = hb(h.addclass, e); return a.push(c, "addClass", h) }, removeClass: function (c, e, h) { h = Ia(h); h.removeClass = hb(h.removeClass, e); return a.push(c, "removeClass", h) }, setClass: function (c, e, h, l) { l = Ia(l); l.addClass = hb(l.addClass, e); l.removeClass = hb(l.removeClass, h); return a.push(c, "setClass", l) }, animate: function (c, e, h, l, k) { k = Ia(k); k.from = k.from ? Q(k.from, e) : e; k.to = k.to ? Q(k.to, h) : h; k.tempClasses = hb(k.tempClasses, l || "ng-inline-animate"); return a.push(c, "animate", k) } } }] }], Se = function () { this.$get = ["$$rAF", "$q", function (a, c) { var d = function () { }; d.prototype = { done: function (a) { this.defer && this.defer[!0 === a ? "reject" : "resolve"]() }, end: function () { this.done() }, cancel: function () { this.done(!0) }, getPromise: function () { this.defer || (this.defer = c.defer()); return this.defer.promise }, then: function (a, c) { return this.getPromise().then(a, c) }, "catch": function (a) { return this.getPromise()["catch"](a) }, "finally": function (a) { return this.getPromise()["finally"](a) } }; return function (c, f) { function g() { a(function () { f.addClass && (c.addClass(f.addClass), f.addClass = null); f.removeClass && (c.removeClass(f.removeClass), f.removeClass = null); f.to && (c.css(f.to), f.to = null); h || l.done(); h = !0 }); return l } f.from && (c.css(f.from), f.from = null); var h, l = new d; return { start: g, end: g } } }] }, ea = G("$compile"); Cc.$inject = ["$provide", "$$sanitizeUriProvider"]; var Xc = /^((?:x|data)[\:\-_])/i, Nf = G("$controller"), Vc = /^(\S+)(\s+as\s+(\w+))?$/, $e = function () { this.$get = ["$document", function (a) { return function (c) { c ? !c.nodeType && c instanceof z && (c = c[0]) : c = a[0].body; return c.offsetWidth + 1 } }] }, bd = "application/json", $b = {"Content-Type": bd + ";charset=utf-8"}, Pf = /^\[|^\{(?!\{)/, Qf = {"[": /]$/, "{": /}$/}, Of = /^\)\]\}',?\n/, og = G("$http"), fd = function (a) { return function () { throw og("legacy", a); } }, Ka = aa.$interpolateMinErr = G("$interpolate"); Ka.throwNoconcat = function (a) { throw Ka("noconcat", a); }; Ka.interr = function (a, c) { return Ka("interr", a, c.toString()) }; var pg = /^([^\?#]*)(\?([^#]*))?(#(.*))?$/, Tf = {http: 80, https: 443, ftp: 21}, Db = G("$location"), qg = { $$html5: !1, $$replace: !1, absUrl: Eb("$$absUrl"), url: function (a) { if (y(a)) return this.$$url; var c = pg.exec(a); (c[1] || "" === a) && this.path(decodeURIComponent(c[1])); (c[2] || c[1] || "" === a) && this.search(c[3] || ""); this.hash(c[5] || ""); return this }, protocol: Eb("$$protocol"), host: Eb("$$host"), port: Eb("$$port"), path: kd("$$path", function (a) { a = null !== a ? a.toString() : ""; return "/" == a.charAt(0) ? a : "/" + a }), search: function (a, c) { switch (arguments.length) { case 0: return this.$$search; case 1: if (H(a) || X(a)) a = a.toString(), this.$$search = xc(a); else if (D(a)) a = fa(a, {}), n(a, function (c, e) { null == c && delete a[e] }), this.$$search = a; else throw Db("isrcharg"); break; default: y(c) || null === c ? delete this.$$search[a] : this.$$search[a] = c } this.$$compose(); return this }, hash: kd("$$hash", function (a) { return null !== a ? a.toString() : "" }), replace: function () { this.$$replace = !0; return this } }; n([jd, cc, bc], function (a) { a.prototype = Object.create(qg); a.prototype.state = function (c) { if (!arguments.length) return this.$$state; if (a !== bc || !this.$$html5) throw Db("nostate"); this.$$state = y(c) ? null : c; return this } }); var da = G("$parse"), Uf = Function.prototype.call, Vf = Function.prototype.apply, Wf = Function.prototype.bind, Lb = ga(); n("+ - * / % === !== == != < > <= >= && || ! = |".split(" "), function (a) { Lb[a] = !0 }); var rg = { n: "\n", f: "\f", r: "\r", t: "\t", v: "\v", "'": "'", '"': '"' }, ec = function (a) { this.options = a }; ec.prototype = { constructor: ec, lex: function (a) { this.text = a; this.index = 0; for (this.tokens = []; this.index < this.text.length;) if (a = this.text.charAt(this.index), '"' === a || "'" === a) this.readString(a); else if (this.isNumber(a) || "." === a && this.isNumber(this.peek())) this.readNumber(); else if (this.isIdent(a)) this.readIdent(); else if (this.is(a, "(){}[].,;:?")) this.tokens.push({ index: this.index, text: a }), this.index++; else if (this.isWhitespace(a)) this.index++; else { var c = a + this.peek(), d = c + this.peek(2), e = Lb[c], f = Lb[d]; Lb[a] || e || f ? (a = f ? d : e ? c : a, this.tokens.push({ index: this.index, text: a, operator: !0 }), this.index += a.length) : this.throwError("Unexpected next character ", this.index, this.index + 1) } return this.tokens }, is: function (a, c) { return -1 !== c.indexOf(a) }, peek: function (a) { a = a || 1; return this.index + a < this.text.length ? this.text.charAt(this.index + a) : !1 }, isNumber: function (a) { return "0" <= a && "9" >= a && "string" === typeof a }, isWhitespace: function (a) { return " " === a || "\r" === a || "\t" === a || "\n" === a || "\v" === a || "\u00a0" === a }, isIdent: function (a) { return "a" <= a && "z" >= a || "A" <= a && "Z" >= a || "_" === a || "$" === a }, isExpOperator: function (a) { return "-" === a || "+" === a || this.isNumber(a) }, throwError: function (a, c, d) { d = d || this.index; c = x(c) ? "s " + c + "-" + this.index + " [" + this.text.substring(c, d) + "]" : " " + d; throw da("lexerr", a, c, this.text); }, readNumber: function () { for (var a = "", c = this.index; this.index < this.text.length;) { var d = I(this.text.charAt(this.index)); if ("." == d || this.isNumber(d)) a += d; else { var e = this.peek(); if ("e" == d && this.isExpOperator(e)) a += d; else if (this.isExpOperator(d) && e && this.isNumber(e) && "e" == a.charAt(a.length - 1)) a += d; else if (!this.isExpOperator(d) || e && this.isNumber(e) || "e" != a.charAt(a.length - 1)) break; else this.throwError("Invalid exponent") } this.index++ } this.tokens.push({index: c, text: a, constant: !0, value: Number(a)}) }, readIdent: function () { for (var a = this.index; this.index < this.text.length;) { var c = this.text.charAt(this.index); if (!this.isIdent(c) && !this.isNumber(c)) break; this.index++ } this.tokens.push({ index: a, text: this.text.slice(a, this.index), identifier: !0 }) }, readString: function (a) { var c = this.index; this.index++; for (var d = "", e = a, f = !1; this.index < this.text.length;) { var g = this.text.charAt(this.index), e = e + g; if (f) "u" === g ? (f = this.text.substring(this.index + 1, this.index + 5), f.match(/[\da-f]{4}/i) || this.throwError("Invalid unicode escape [\\u" + f + "]"), this.index += 4, d += String.fromCharCode(parseInt(f, 16))) : d += rg[g] || g, f = !1; else if ("\\" === g) f = !0; else { if (g === a) { this.index++; this.tokens.push({ index: c, text: e, constant: !0, value: d }); return } d += g } this.index++ } this.throwError("Unterminated quote", c) } }; var r = function (a, c) { this.lexer = a; this.options = c }; r.Program = "Program"; r.ExpressionStatement = "ExpressionStatement"; r.AssignmentExpression = "AssignmentExpression"; r.ConditionalExpression = "ConditionalExpression"; r.LogicalExpression = "LogicalExpression"; r.BinaryExpression = "BinaryExpression"; r.UnaryExpression = "UnaryExpression"; r.CallExpression = "CallExpression"; r.MemberExpression = "MemberExpression"; r.Identifier = "Identifier"; r.Literal = "Literal"; r.ArrayExpression = "ArrayExpression"; r.Property = "Property"; r.ObjectExpression = "ObjectExpression"; r.ThisExpression = "ThisExpression"; r.NGValueParameter = "NGValueParameter"; r.prototype = { ast: function (a) { this.text = a; this.tokens = this.lexer.lex(a); a = this.program(); 0 !== this.tokens.length && this.throwError("is an unexpected token", this.tokens[0]); return a }, program: function () { for (var a = []; ;) if (0 < this.tokens.length && !this.peek("}", ")", ";", "]") && a.push(this.expressionStatement()), !this.expect(";")) return { type: r.Program, body: a } }, expressionStatement: function () { return {type: r.ExpressionStatement, expression: this.filterChain()} }, filterChain: function () { for (var a = this.expression(); this.expect("|");) a = this.filter(a); return a }, expression: function () { return this.assignment() }, assignment: function () { var a = this.ternary(); this.expect("=") && (a = {type: r.AssignmentExpression, left: a, right: this.assignment(), operator: "="}); return a }, ternary: function () { var a = this.logicalOR(), c, d; return this.expect("?") && (c = this.expression(), this.consume(":")) ? (d = this.expression(), {type: r.ConditionalExpression, test: a, alternate: c, consequent: d}) : a }, logicalOR: function () { for (var a = this.logicalAND(); this.expect("||");) a = { type: r.LogicalExpression, operator: "||", left: a, right: this.logicalAND() }; return a }, logicalAND: function () { for (var a = this.equality(); this.expect("&&");) a = { type: r.LogicalExpression, operator: "&&", left: a, right: this.equality() }; return a }, equality: function () { for (var a = this.relational(), c; c = this.expect("==", "!=", "===", "!==");) a = { type: r.BinaryExpression, operator: c.text, left: a, right: this.relational() }; return a }, relational: function () { for (var a = this.additive(), c; c = this.expect("<", ">", "<=", ">=");) a = { type: r.BinaryExpression, operator: c.text, left: a, right: this.additive() }; return a }, additive: function () { for (var a = this.multiplicative(), c; c = this.expect("+", "-");) a = { type: r.BinaryExpression, operator: c.text, left: a, right: this.multiplicative() }; return a }, multiplicative: function () { for (var a = this.unary(), c; c = this.expect("*", "/", "%");) a = { type: r.BinaryExpression, operator: c.text, left: a, right: this.unary() }; return a }, unary: function () { var a; return (a = this.expect("+", "-", "!")) ? { type: r.UnaryExpression, operator: a.text, prefix: !0, argument: this.unary() } : this.primary() }, primary: function () { var a; this.expect("(") ? (a = this.filterChain(), this.consume(")")) : this.expect("[") ? a = this.arrayDeclaration() : this.expect("{") ? a = this.object() : this.constants.hasOwnProperty(this.peek().text) ? a = fa(this.constants[this.consume().text]) : this.peek().identifier ? a = this.identifier() : this.peek().constant ? a = this.constant() : this.throwError("not a primary expression", this.peek()); for (var c; c = this.expect("(", "[", ".");) "(" === c.text ? (a = { type: r.CallExpression, callee: a, arguments: this.parseArguments() }, this.consume(")")) : "[" === c.text ? (a = { type: r.MemberExpression, object: a, property: this.expression(), computed: !0 }, this.consume("]")) : "." === c.text ? a = { type: r.MemberExpression, object: a, property: this.identifier(), computed: !1 } : this.throwError("IMPOSSIBLE"); return a }, filter: function (a) { a = [a]; for (var c = { type: r.CallExpression, callee: this.identifier(), arguments: a, filter: !0 }; this.expect(":");) a.push(this.expression()); return c }, parseArguments: function () { var a = []; if (")" !== this.peekToken().text) { do a.push(this.expression()); while (this.expect(",")) } return a }, identifier: function () { var a = this.consume(); a.identifier || this.throwError("is not a valid identifier", a); return {type: r.Identifier, name: a.text} }, constant: function () { return {type: r.Literal, value: this.consume().value} }, arrayDeclaration: function () { var a = []; if ("]" !== this.peekToken().text) { do { if (this.peek("]")) break; a.push(this.expression()) } while (this.expect(",")) } this.consume("]"); return {type: r.ArrayExpression, elements: a} }, object: function () { var a = [], c; if ("}" !== this.peekToken().text) { do { if (this.peek("}")) break; c = {type: r.Property, kind: "init"}; this.peek().constant ? c.key = this.constant() : this.peek().identifier ? c.key = this.identifier() : this.throwError("invalid key", this.peek()); this.consume(":"); c.value = this.expression(); a.push(c) } while (this.expect(",")) } this.consume("}"); return {type: r.ObjectExpression, properties: a} }, throwError: function (a, c) { throw da("syntax", c.text, a, c.index + 1, this.text, this.text.substring(c.index)); }, consume: function (a) { if (0 === this.tokens.length) throw da("ueoe", this.text); var c = this.expect(a); c || this.throwError("is unexpected, expecting [" + a + "]", this.peek()); return c }, peekToken: function () { if (0 === this.tokens.length) throw da("ueoe", this.text); return this.tokens[0] }, peek: function (a, c, d, e) { return this.peekAhead(0, a, c, d, e) }, peekAhead: function (a, c, d, e, f) { if (this.tokens.length > a) { a = this.tokens[a]; var g = a.text; if (g === c || g === d || g === e || g === f || !(c || d || e || f)) return a } return !1 }, expect: function (a, c, d, e) { return (a = this.peek(a, c, d, e)) ? (this.tokens.shift(), a) : !1 }, constants: { "true": {type: r.Literal, value: !0}, "false": {type: r.Literal, value: !1}, "null": {type: r.Literal, value: null}, undefined: {type: r.Literal, value: u}, "this": {type: r.ThisExpression} } }; rd.prototype = { compile: function (a, c) { var d = this, e = this.astBuilder.ast(a); this.state = { nextId: 0, filters: {}, expensiveChecks: c, fn: {vars: [], body: [], own: {}}, assign: { vars: [], body: [], own: {} }, inputs: [] }; U(e, d.$filter); var f = "", g; this.stage = "assign"; if (g = pd(e)) this.state.computing = "assign", f = this.nextId(), this.recurse(g, f), f = "fn.assign=" + this.generateFunction("assign", "s,v,l"); g = nd(e.body); d.stage = "inputs"; n(g, function (a, c) { var e = "fn" + c; d.state[e] = {vars: [], body: [], own: {}}; d.state.computing = e; var f = d.nextId(); d.recurse(a, f); d.return_(f); d.state.inputs.push(e); a.watchId = c }); this.state.computing = "fn"; this.stage = "main"; this.recurse(e); f = '"' + this.USE + " " + this.STRICT + '";\n' + this.filterPrefix() + "var fn=" + this.generateFunction("fn", "s,l,a,i") + f + this.watchFns() + "return fn;"; f = (new Function("$filter", "ensureSafeMemberName", "ensureSafeObject", "ensureSafeFunction", "ifDefined", "plus", "text", f))(this.$filter, Wa, Ba, ld, Xf, md, a); this.state = this.stage = u; f.literal = qd(e); f.constant = e.constant; return f }, USE: "use", STRICT: "strict", watchFns: function () { var a = [], c = this.state.inputs, d = this; n(c, function (c) { a.push("var " + c + "=" + d.generateFunction(c, "s")) }); c.length && a.push("fn.inputs=[" + c.join(",") + "];"); return a.join("") }, generateFunction: function (a, c) { return "function(" + c + "){" + this.varsPrefix(a) + this.body(a) + "};" }, filterPrefix: function () { var a = [], c = this; n(this.state.filters, function (d, e) { a.push(d + "=$filter(" + c.escape(e) + ")") }); return a.length ? "var " + a.join(",") + ";" : "" }, varsPrefix: function (a) { return this.state[a].vars.length ? "var " + this.state[a].vars.join(",") + ";" : "" }, body: function (a) { return this.state[a].body.join("") }, recurse: function (a, c, d, e, f, g) { var h, l, k = this, m, q; e = e || v; if (!g && x(a.watchId)) c = c || this.nextId(), this.if_("i", this.lazyAssign(c, this.computedMember("i", a.watchId)), this.lazyRecurse(a, c, d, e, f, !0)); else switch (a.type) { case r.Program: n(a.body, function (c, d) { k.recurse(c.expression, u, u, function (a) { l = a }); d !== a.body.length - 1 ? k.current().body.push(l, ";") : k.return_(l) }); break; case r.Literal: q = this.escape(a.value); this.assign(c, q); e(q); break; case r.UnaryExpression: this.recurse(a.argument, u, u, function (a) { l = a }); q = a.operator + "(" + this.ifDefined(l, 0) + ")"; this.assign(c, q); e(q); break; case r.BinaryExpression: this.recurse(a.left, u, u, function (a) { h = a }); this.recurse(a.right, u, u, function (a) { l = a }); q = "+" === a.operator ? this.plus(h, l) : "-" === a.operator ? this.ifDefined(h, 0) + a.operator + this.ifDefined(l, 0) : "(" + h + ")" + a.operator + "(" + l + ")"; this.assign(c, q); e(q); break; case r.LogicalExpression: c = c || this.nextId(); k.recurse(a.left, c); k.if_("&&" === a.operator ? c : k.not(c), k.lazyRecurse(a.right, c)); e(c); break; case r.ConditionalExpression: c = c || this.nextId(); k.recurse(a.test, c); k.if_(c, k.lazyRecurse(a.alternate, c), k.lazyRecurse(a.consequent, c)); e(c); break; case r.Identifier: c = c || this.nextId(); d && (d.context = "inputs" === k.stage ? "s" : this.assign(this.nextId(), this.getHasOwnProperty("l", a.name) + "?l:s"), d.computed = !1, d.name = a.name); Wa(a.name); k.if_("inputs" === k.stage || k.not(k.getHasOwnProperty("l", a.name)), function () { k.if_("inputs" === k.stage || "s", function () { f && 1 !== f && k.if_(k.not(k.nonComputedMember("s", a.name)), k.lazyAssign(k.nonComputedMember("s", a.name), "{}")); k.assign(c, k.nonComputedMember("s", a.name)) }) }, c && k.lazyAssign(c, k.nonComputedMember("l", a.name))); (k.state.expensiveChecks || Fb(a.name)) && k.addEnsureSafeObject(c); e(c); break; case r.MemberExpression: h = d && (d.context = this.nextId()) || this.nextId(); c = c || this.nextId(); k.recurse(a.object, h, u, function () { k.if_(k.notNull(h), function () { if (a.computed) l = k.nextId(), k.recurse(a.property, l), k.addEnsureSafeMemberName(l), f && 1 !== f && k.if_(k.not(k.computedMember(h, l)), k.lazyAssign(k.computedMember(h, l), "{}")), q = k.ensureSafeObject(k.computedMember(h, l)), k.assign(c, q), d && (d.computed = !0, d.name = l); else { Wa(a.property.name); f && 1 !== f && k.if_(k.not(k.nonComputedMember(h, a.property.name)), k.lazyAssign(k.nonComputedMember(h, a.property.name), "{}")); q = k.nonComputedMember(h, a.property.name); if (k.state.expensiveChecks || Fb(a.property.name)) q = k.ensureSafeObject(q); k.assign(c, q); d && (d.computed = !1, d.name = a.property.name) } }, function () { k.assign(c, "undefined") }); e(c) }, !!f); break; case r.CallExpression: c = c || this.nextId(); a.filter ? (l = k.filter(a.callee.name), m = [], n(a.arguments, function (a) { var c = k.nextId(); k.recurse(a, c); m.push(c) }), q = l + "(" + m.join(",") + ")", k.assign(c, q), e(c)) : (l = k.nextId(), h = {}, m = [], k.recurse(a.callee, l, h, function () { k.if_(k.notNull(l), function () { k.addEnsureSafeFunction(l); n(a.arguments, function (a) { k.recurse(a, k.nextId(), u, function (a) { m.push(k.ensureSafeObject(a)) }) }); h.name ? (k.state.expensiveChecks || k.addEnsureSafeObject(h.context), q = k.member(h.context, h.name, h.computed) + "(" + m.join(",") + ")") : q = l + "(" + m.join(",") + ")"; q = k.ensureSafeObject(q); k.assign(c, q) }, function () { k.assign(c, "undefined") }); e(c) })); break; case r.AssignmentExpression: l = this.nextId(); h = {}; if (!od(a.left)) throw da("lval"); this.recurse(a.left, u, h, function () { k.if_(k.notNull(h.context), function () { k.recurse(a.right, l); k.addEnsureSafeObject(k.member(h.context, h.name, h.computed)); q = k.member(h.context, h.name, h.computed) + a.operator + l; k.assign(c, q); e(c || q) }) }, 1); break; case r.ArrayExpression: m = []; n(a.elements, function (a) { k.recurse(a, k.nextId(), u, function (a) { m.push(a) }) }); q = "[" + m.join(",") + "]"; this.assign(c, q); e(q); break; case r.ObjectExpression: m = []; n(a.properties, function (a) { k.recurse(a.value, k.nextId(), u, function (c) { m.push(k.escape(a.key.type === r.Identifier ? a.key.name : "" + a.key.value) + ":" + c) }) }); q = "{" + m.join(",") + "}"; this.assign(c, q); e(q); break; case r.ThisExpression: this.assign(c, "s"); e("s"); break; case r.NGValueParameter: this.assign(c, "v"), e("v") } }, getHasOwnProperty: function (a, c) { var d = a + "." + c, e = this.current().own; e.hasOwnProperty(d) || (e[d] = this.nextId(!1, a + "&&(" + this.escape(c) + " in " + a + ")")); return e[d] }, assign: function (a, c) { if (a) return this.current().body.push(a, "=", c, ";"), a }, filter: function (a) { this.state.filters.hasOwnProperty(a) || (this.state.filters[a] = this.nextId(!0)); return this.state.filters[a] }, ifDefined: function (a, c) { return "ifDefined(" + a + "," + this.escape(c) + ")" }, plus: function (a, c) { return "plus(" + a + "," + c + ")" }, return_: function (a) { this.current().body.push("return ", a, ";") }, if_: function (a, c, d) { if (!0 === a) c(); else { var e = this.current().body; e.push("if(", a, "){"); c(); e.push("}"); d && (e.push("else{"), d(), e.push("}")) } }, not: function (a) { return "!(" + a + ")" }, notNull: function (a) { return a + "!=null" }, nonComputedMember: function (a, c) { return a + "." + c }, computedMember: function (a, c) { return a + "[" + c + "]" }, member: function (a, c, d) { return d ? this.computedMember(a, c) : this.nonComputedMember(a, c) }, addEnsureSafeObject: function (a) { this.current().body.push(this.ensureSafeObject(a), ";") }, addEnsureSafeMemberName: function (a) { this.current().body.push(this.ensureSafeMemberName(a), ";") }, addEnsureSafeFunction: function (a) { this.current().body.push(this.ensureSafeFunction(a), ";") }, ensureSafeObject: function (a) { return "ensureSafeObject(" + a + ",text)" }, ensureSafeMemberName: function (a) { return "ensureSafeMemberName(" + a + ",text)" }, ensureSafeFunction: function (a) { return "ensureSafeFunction(" + a + ",text)" }, lazyRecurse: function (a, c, d, e, f, g) { var h = this; return function () { h.recurse(a, c, d, e, f, g) } }, lazyAssign: function (a, c) { var d = this; return function () { d.assign(a, c) } }, stringEscapeRegex: /[^ a-zA-Z0-9]/g, stringEscapeFn: function (a) { return "\\u" + ("0000" + a.charCodeAt(0).toString(16)).slice(-4) }, escape: function (a) { if (H(a)) return "'" + a.replace(this.stringEscapeRegex, this.stringEscapeFn) + "'"; if (X(a)) return a.toString(); if (!0 === a) return "true"; if (!1 === a) return "false"; if (null === a) return "null"; if ("undefined" === typeof a) return "undefined"; throw da("esc"); }, nextId: function (a, c) { var d = "v" + this.state.nextId++; a || this.current().vars.push(d + (c ? "=" + c : "")); return d }, current: function () { return this.state[this.state.computing] } }; sd.prototype = { compile: function (a, c) { var d = this, e = this.astBuilder.ast(a); this.expression = a; this.expensiveChecks = c; U(e, d.$filter); var f, g; if (f = pd(e)) g = this.recurse(f); f = nd(e.body); var h; f && (h = [], n(f, function (a, c) { var e = d.recurse(a); a.input = e; h.push(e); a.watchId = c })); var l = []; n(e.body, function (a) { l.push(d.recurse(a.expression)) }); f = 0 === e.body.length ? function () { } : 1 === e.body.length ? l[0] : function (a, c) { var d; n(l, function (e) { d = e(a, c) }); return d }; g && (f.assign = function (a, c, d) { return g(a, d, c) }); h && (f.inputs = h); f.literal = qd(e); f.constant = e.constant; return f }, recurse: function (a, c, d) { var e, f, g = this, h; if (a.input) return this.inputs(a.input, a.watchId); switch (a.type) { case r.Literal: return this.value(a.value, c); case r.UnaryExpression: return f = this.recurse(a.argument), this["unary" + a.operator](f, c); case r.BinaryExpression: return e = this.recurse(a.left), f = this.recurse(a.right), this["binary" + a.operator](e, f, c); case r.LogicalExpression: return e = this.recurse(a.left), f = this.recurse(a.right), this["binary" + a.operator](e, f, c); case r.ConditionalExpression: return this["ternary?:"](this.recurse(a.test), this.recurse(a.alternate), this.recurse(a.consequent), c); case r.Identifier: return Wa(a.name, g.expression), g.identifier(a.name, g.expensiveChecks || Fb(a.name), c, d, g.expression); case r.MemberExpression: return e = this.recurse(a.object, !1, !!d), a.computed || (Wa(a.property.name, g.expression), f = a.property.name), a.computed && (f = this.recurse(a.property)), a.computed ? this.computedMember(e, f, c, d, g.expression) : this.nonComputedMember(e, f, g.expensiveChecks, c, d, g.expression); case r.CallExpression: return h = [], n(a.arguments, function (a) { h.push(g.recurse(a)) }), a.filter && (f = this.$filter(a.callee.name)), a.filter || (f = this.recurse(a.callee, !0)), a.filter ? function (a, d, e, g) { for (var n = [], t = 0; t < h.length; ++t) n.push(h[t](a, d, e, g)); a = f.apply(u, n, g); return c ? {context: u, name: u, value: a} : a } : function (a, d, e, q) { var n = f(a, d, e, q), t; if (null != n.value) { Ba(n.context, g.expression); ld(n.value, g.expression); t = []; for (var r = 0; r < h.length; ++r) t.push(Ba(h[r](a, d, e, q), g.expression)); t = Ba(n.value.apply(n.context, t), g.expression) } return c ? {value: t} : t }; case r.AssignmentExpression: return e = this.recurse(a.left, !0, 1), f = this.recurse(a.right), function (a, d, h, q) { var n = e(a, d, h, q); a = f(a, d, h, q); Ba(n.value, g.expression); n.context[n.name] = a; return c ? {value: a} : a }; case r.ArrayExpression: return h = [], n(a.elements, function (a) { h.push(g.recurse(a)) }), function (a, d, e, f) { for (var g = [], n = 0; n < h.length; ++n) g.push(h[n](a, d, e, f)); return c ? {value: g} : g }; case r.ObjectExpression: return h = [], n(a.properties, function (a) { h.push({ key: a.key.type === r.Identifier ? a.key.name : "" + a.key.value, value: g.recurse(a.value) }) }), function (a, d, e, f) { for (var g = {}, n = 0; n < h.length; ++n) g[h[n].key] = h[n].value(a, d, e, f); return c ? {value: g} : g }; case r.ThisExpression: return function (a) { return c ? {value: a} : a }; case r.NGValueParameter: return function (a, d, e, f) { return c ? {value: e} : e } } }, "unary+": function (a, c) { return function (d, e, f, g) { d = a(d, e, f, g); d = x(d) ? +d : 0; return c ? {value: d} : d } }, "unary-": function (a, c) { return function (d, e, f, g) { d = a(d, e, f, g); d = x(d) ? -d : 0; return c ? {value: d} : d } }, "unary!": function (a, c) { return function (d, e, f, g) { d = !a(d, e, f, g); return c ? {value: d} : d } }, "binary+": function (a, c, d) { return function (e, f, g, h) { var l = a(e, f, g, h); e = c(e, f, g, h); l = md(l, e); return d ? {value: l} : l } }, "binary-": function (a, c, d) { return function (e, f, g, h) { var l = a(e, f, g, h); e = c(e, f, g, h); l = (x(l) ? l : 0) - (x(e) ? e : 0); return d ? {value: l} : l } }, "binary*": function (a, c, d) { return function (e, f, g, h) { e = a(e, f, g, h) * c(e, f, g, h); return d ? {value: e} : e } }, "binary/": function (a, c, d) { return function (e, f, g, h) { e = a(e, f, g, h) / c(e, f, g, h); return d ? {value: e} : e } }, "binary%": function (a, c, d) { return function (e, f, g, h) { e = a(e, f, g, h) % c(e, f, g, h); return d ? {value: e} : e } }, "binary===": function (a, c, d) { return function (e, f, g, h) { e = a(e, f, g, h) === c(e, f, g, h); return d ? {value: e} : e } }, "binary!==": function (a, c, d) { return function (e, f, g, h) { e = a(e, f, g, h) !== c(e, f, g, h); return d ? {value: e} : e } }, "binary==": function (a, c, d) { return function (e, f, g, h) { e = a(e, f, g, h) == c(e, f, g, h); return d ? {value: e} : e } }, "binary!=": function (a, c, d) { return function (e, f, g, h) { e = a(e, f, g, h) != c(e, f, g, h); return d ? {value: e} : e } }, "binary<": function (a, c, d) { return function (e, f, g, h) { e = a(e, f, g, h) < c(e, f, g, h); return d ? {value: e} : e } }, "binary>": function (a, c, d) { return function (e, f, g, h) { e = a(e, f, g, h) > c(e, f, g, h); return d ? {value: e} : e } }, "binary<=": function (a, c, d) { return function (e, f, g, h) { e = a(e, f, g, h) <= c(e, f, g, h); return d ? {value: e} : e } }, "binary>=": function (a, c, d) { return function (e, f, g, h) { e = a(e, f, g, h) >= c(e, f, g, h); return d ? {value: e} : e } }, "binary&&": function (a, c, d) { return function (e, f, g, h) { e = a(e, f, g, h) && c(e, f, g, h); return d ? {value: e} : e } }, "binary||": function (a, c, d) { return function (e, f, g, h) { e = a(e, f, g, h) || c(e, f, g, h); return d ? {value: e} : e } }, "ternary?:": function (a, c, d, e) { return function (f, g, h, l) { f = a(f, g, h, l) ? c(f, g, h, l) : d(f, g, h, l); return e ? {value: f} : f } }, value: function (a, c) { return function () { return c ? {context: u, name: u, value: a} : a } }, identifier: function (a, c, d, e, f) { return function (g, h, l, k) { g = h && a in h ? h : g; e && 1 !== e && g && !g[a] && (g[a] = {}); h = g ? g[a] : u; c && Ba(h, f); return d ? {context: g, name: a, value: h} : h } }, computedMember: function (a, c, d, e, f) { return function (g, h, l, k) { var m = a(g, h, l, k), q, n; null != m && (q = c(g, h, l, k), Wa(q, f), e && 1 !== e && m && !m[q] && (m[q] = {}), n = m[q], Ba(n, f)); return d ? {context: m, name: q, value: n} : n } }, nonComputedMember: function (a, c, d, e, f, g) { return function (h, l, k, m) { h = a(h, l, k, m); f && 1 !== f && h && !h[c] && (h[c] = {}); l = null != h ? h[c] : u; (d || Fb(c)) && Ba(l, g); return e ? {context: h, name: c, value: l} : l } }, inputs: function (a, c) { return function (d, e, f, g) { return g ? g[c] : a(d, e, f) } } }; var fc = function (a, c, d) { this.lexer = a; this.$filter = c; this.options = d; this.ast = new r(this.lexer); this.astCompiler = d.csp ? new sd(this.ast, c) : new rd(this.ast, c) }; fc.prototype = { constructor: fc, parse: function (a) { return this.astCompiler.compile(a, this.options.expensiveChecks) } }; ga(); ga(); var Yf = Object.prototype.valueOf, Ca = G("$sce"), oa = { HTML: "html", CSS: "css", URL: "url", RESOURCE_URL: "resourceUrl", JS: "js" }, ea = G("$compile"), Z = W.createElement("a"), wd = Aa(N.location.href); xd.$inject = ["$document"]; Jc.$inject = ["$provide"]; yd.$inject = ["$locale"]; Ad.$inject = ["$locale"]; var Dd = ".", hg = { yyyy: $("FullYear", 4), yy: $("FullYear", 2, 0, !0), y: $("FullYear", 1), MMMM: Hb("Month"), MMM: Hb("Month", !0), MM: $("Month", 2, 1), M: $("Month", 1, 1), dd: $("Date", 2), d: $("Date", 1), HH: $("Hours", 2), H: $("Hours", 1), hh: $("Hours", 2, -12), h: $("Hours", 1, -12), mm: $("Minutes", 2), m: $("Minutes", 1), ss: $("Seconds", 2), s: $("Seconds", 1), sss: $("Milliseconds", 3), EEEE: Hb("Day"), EEE: Hb("Day", !0), a: function (a, c) { return 12 > a.getHours() ? c.AMPMS[0] : c.AMPMS[1] }, Z: function (a, c, d) { a = -1 * d; return a = (0 <= a ? "+" : "") + (Gb(Math[0 < a ? "floor" : "ceil"](a / 60), 2) + Gb(Math.abs(a % 60), 2)) }, ww: Fd(2), w: Fd(1), G: hc, GG: hc, GGG: hc, GGGG: function (a, c) { return 0 >= a.getFullYear() ? c.ERANAMES[0] : c.ERANAMES[1] } }, gg = /((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/, fg = /^\-?\d+$/; zd.$inject = ["$locale"]; var cg = qa(I), dg = qa(rb); Bd.$inject = ["$parse"]; var he = qa({ restrict: "E", compile: function (a, c) { if (!c.href && !c.xlinkHref) return function (a, c) { if ("a" === c[0].nodeName.toLowerCase()) { var f = "[object SVGAnimatedString]" === sa.call(c.prop("href")) ? "xlink:href" : "href"; c.on("click", function (a) { c.attr(f) || a.preventDefault() }) } } } }), sb = {}; n(Ab, function (a, c) { function d(a, d, f) { a.$watch(f[e], function (a) { f.$set(c, !!a) }) } if ("multiple" != a) { var e = va("ng-" + c), f = d; "checked" === a && (f = function (a, c, f) { f.ngModel !== f[e] && d(a, c, f) }); sb[e] = function () { return { restrict: "A", priority: 100, link: f } } } }); n(Sc, function (a, c) { sb[c] = function () { return { priority: 100, link: function (a, e, f) { if ("ngPattern" === c && "/" == f.ngPattern.charAt(0) && (e = f.ngPattern.match(jg))) { f.$set("ngPattern", new RegExp(e[1], e[2])); return } a.$watch(f[c], function (a) { f.$set(c, a) }) } } } }); n(["src", "srcset", "href"], function (a) { var c = va("ng-" + a); sb[c] = function () { return { priority: 99, link: function (d, e, f) { var g = a, h = a; "href" === a && "[object SVGAnimatedString]" === sa.call(e.prop("href")) && (h = "xlinkHref", f.$attr[h] = "xlink:href", g = null); f.$observe(c, function (c) { c ? (f.$set(h, c), Va && g && e.prop(g, f[h])) : "href" === a && f.$set(h, null) }) } } } }); var Ib = { $addControl: v, $$renameControl: function (a, c) { a.$name = c }, $removeControl: v, $setValidity: v, $setDirty: v, $setPristine: v, $setSubmitted: v }; Gd.$inject = ["$element", "$attrs", "$scope", "$animate", "$interpolate"]; var Od = function (a) { return ["$timeout", "$parse", function (c, d) { function e(a) { return "" === a ? d('this[""]').assign : d(a).assign || v } return { name: "form", restrict: a ? "EAC" : "E", controller: Gd, compile: function (d, g) { d.addClass(Xa).addClass(lb); var h = g.name ? "name" : a && g.ngForm ? "ngForm" : !1; return { pre: function (a, d, f, g) { if (!("action" in f)) { var n = function (c) { a.$apply(function () { g.$commitViewValue(); g.$setSubmitted() }); c.preventDefault() }; d[0].addEventListener("submit", n, !1); d.on("$destroy", function () { c(function () { d[0].removeEventListener("submit", n, !1) }, 0, !1) }) } var t = g.$$parentForm, r = h ? e(g.$name) : v; h && (r(a, g), f.$observe(h, function (c) { g.$name !== c && (r(a, u), t.$$renameControl(g, c), r = e(g.$name), r(a, g)) })); d.on("$destroy", function () { t.$removeControl(g); r(a, u); Q(g, Ib) }) } } } } }] }, ie = Od(), ve = Od(!0), ig = /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/, sg = /^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/, tg = /^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i, ug = /^\s*(\-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/, Pd = /^(\d{4})-(\d{2})-(\d{2})$/, Qd = /^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/, kc = /^(\d{4})-W(\d\d)$/, Rd = /^(\d{4})-(\d\d)$/, Sd = /^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/, Td = { text: function (a, c, d, e, f, g) { ib(a, c, d, e, f, g); ic(e) }, date: jb("date", Pd, Kb(Pd, ["yyyy", "MM", "dd"]), "yyyy-MM-dd"), "datetime-local": jb("datetimelocal", Qd, Kb(Qd, "yyyy MM dd HH mm ss sss".split(" ")), "yyyy-MM-ddTHH:mm:ss.sss"), time: jb("time", Sd, Kb(Sd, ["HH", "mm", "ss", "sss"]), "HH:mm:ss.sss"), week: jb("week", kc, function (a, c) { if (ca(a)) return a; if (H(a)) { kc.lastIndex = 0; var d = kc.exec(a); if (d) { var e = +d[1], f = +d[2], g = d = 0, h = 0, l = 0, k = Ed(e), f = 7 * (f - 1); c && (d = c.getHours(), g = c.getMinutes(), h = c.getSeconds(), l = c.getMilliseconds()); return new Date(e, 0, k.getDate() + f, d, g, h, l) } } return NaN }, "yyyy-Www"), month: jb("month", Rd, Kb(Rd, ["yyyy", "MM"]), "yyyy-MM"), number: function (a, c, d, e, f, g) { Id(a, c, d, e); ib(a, c, d, e, f, g); e.$$parserName = "number"; e.$parsers.push(function (a) { return e.$isEmpty(a) ? null : ug.test(a) ? parseFloat(a) : u }); e.$formatters.push(function (a) { if (!e.$isEmpty(a)) { if (!X(a)) throw kb("numfmt", a); a = a.toString() } return a }); if (x(d.min) || d.ngMin) { var h; e.$validators.min = function (a) { return e.$isEmpty(a) || y(h) || a >= h }; d.$observe("min", function (a) { x(a) && !X(a) && (a = parseFloat(a, 10)); h = X(a) && !isNaN(a) ? a : u; e.$validate() }) } if (x(d.max) || d.ngMax) { var l; e.$validators.max = function (a) { return e.$isEmpty(a) || y(l) || a <= l }; d.$observe("max", function (a) { x(a) && !X(a) && (a = parseFloat(a, 10)); l = X(a) && !isNaN(a) ? a : u; e.$validate() }) } }, url: function (a, c, d, e, f, g) { ib(a, c, d, e, f, g); ic(e); e.$$parserName = "url"; e.$validators.url = function (a, c) { var d = a || c; return e.$isEmpty(d) || sg.test(d) } }, email: function (a, c, d, e, f, g) { ib(a, c, d, e, f, g); ic(e); e.$$parserName = "email"; e.$validators.email = function (a, c) { var d = a || c; return e.$isEmpty(d) || tg.test(d) } }, radio: function (a, c, d, e) { y(d.name) && c.attr("name", ++mb); c.on("click", function (a) { c[0].checked && e.$setViewValue(d.value, a && a.type) }); e.$render = function () { c[0].checked = d.value == e.$viewValue }; d.$observe("value", e.$render) }, checkbox: function (a, c, d, e, f, g, h, l) { var k = Jd(l, a, "ngTrueValue", d.ngTrueValue, !0), m = Jd(l, a, "ngFalseValue", d.ngFalseValue, !1); c.on("click", function (a) { e.$setViewValue(c[0].checked, a && a.type) }); e.$render = function () { c[0].checked = e.$viewValue }; e.$isEmpty = function (a) { return !1 === a }; e.$formatters.push(function (a) { return ka(a, k) }); e.$parsers.push(function (a) { return a ? k : m }) }, hidden: v, button: v, submit: v, reset: v, file: v }, Dc = ["$browser", "$sniffer", "$filter", "$parse", function (a, c, d, e) { return { restrict: "E", require: ["?ngModel"], link: { pre: function (f, g, h, l) { l[0] && (Td[I(h.type)] || Td.text)(f, g, h, l[0], c, a, d, e) } } } }], vg = /^(true|false|\d+)$/, Ne = function () { return { restrict: "A", priority: 100, compile: function (a, c) { return vg.test(c.ngValue) ? function (a, c, f) { f.$set("value", a.$eval(f.ngValue)) } : function (a, c, f) { a.$watch(f.ngValue, function (a) { f.$set("value", a) }) } } } }, ne = ["$compile", function (a) { return { restrict: "AC", compile: function (c) { a.$$addBindingClass(c); return function (c, e, f) { a.$$addBindingInfo(e, f.ngBind); e = e[0]; c.$watch(f.ngBind, function (a) { e.textContent = a === u ? "" : a }) } } } }], pe = ["$interpolate", "$compile", function (a, c) { return { compile: function (d) { c.$$addBindingClass(d); return function (d, f, g) { d = a(f.attr(g.$attr.ngBindTemplate)); c.$$addBindingInfo(f, d.expressions); f = f[0]; g.$observe("ngBindTemplate", function (a) { f.textContent = a === u ? "" : a }) } } } }], oe = ["$sce", "$parse", "$compile", function (a, c, d) { return { restrict: "A", compile: function (e, f) { var g = c(f.ngBindHtml), h = c(f.ngBindHtml, function (a) { return (a || "").toString() }); d.$$addBindingClass(e); return function (c, e, f) { d.$$addBindingInfo(e, f.ngBindHtml); c.$watch(h, function () { e.html(a.getTrustedHtml(g(c)) || "") }) } } } }], Me = qa({ restrict: "A", require: "ngModel", link: function (a, c, d, e) { e.$viewChangeListeners.push(function () { a.$eval(d.ngChange) }) } }), qe = jc("", !0), se = jc("Odd", 0), re = jc("Even", 1), te = Ma({ compile: function (a, c) { c.$set("ngCloak", u); a.removeClass("ng-cloak") } }), ue = [function () { return {restrict: "A", scope: !0, controller: "@", priority: 500} }], Ic = {}, wg = {blur: !0, focus: !0}; n("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "), function (a) { var c = va("ng-" + a); Ic[c] = ["$parse", "$rootScope", function (d, e) { return { restrict: "A", compile: function (f, g) { var h = d(g[c], null, !0); return function (c, d) { d.on(a, function (d) { var f = function () { h(c, {$event: d}) }; wg[a] && e.$$phase ? c.$evalAsync(f) : c.$apply(f) }) } } } }] }); var xe = ["$animate", function (a) { return { multiElement: !0, transclude: "element", priority: 600, terminal: !0, restrict: "A", $$tlb: !0, link: function (c, d, e, f, g) { var h, l, k; c.$watch(e.ngIf, function (c) { c ? l || g(function (c, f) { l = f; c[c.length++] = W.createComment(" end ngIf: " + e.ngIf + " "); h = {clone: c}; a.enter(c, d.parent(), d) }) : (k && (k.remove(), k = null), l && (l.$destroy(), l = null), h && (k = qb(h.clone), a.leave(k).then(function () { k = null }), h = null)) }) } } }], ye = ["$templateRequest", "$anchorScroll", "$animate", function (a, c, d) { return { restrict: "ECA", priority: 400, terminal: !0, transclude: "element", controller: aa.noop, compile: function (e, f) { var g = f.ngInclude || f.src, h = f.onload || "", l = f.autoscroll; return function (e, f, n, s, r) { var u = 0, v, w, p, A = function () { w && (w.remove(), w = null); v && (v.$destroy(), v = null); p && (d.leave(p).then(function () { w = null }), w = p, p = null) }; e.$watch(g, function (g) { var n = function () { !x(l) || l && !e.$eval(l) || c() }, q = ++u; g ? (a(g, !0).then(function (a) { if (q === u) { var c = e.$new(); s.template = a; a = r(c, function (a) { A(); d.enter(a, null, f).then(n) }); v = c; p = a; v.$emit("$includeContentLoaded", g); e.$eval(h) } }, function () { q === u && (A(), e.$emit("$includeContentError", g)) }), e.$emit("$includeContentRequested", g)) : (A(), s.template = null) }) } } } }], Pe = ["$compile", function (a) { return { restrict: "ECA", priority: -400, require: "ngInclude", link: function (c, d, e, f) { /SVG/.test(d[0].toString()) ? (d.empty(), a(Lc(f.template, W).childNodes)(c, function (a) { d.append(a) }, {futureParentElement: d})) : (d.html(f.template), a(d.contents())(c)) } } }], ze = Ma({ priority: 450, compile: function () { return { pre: function (a, c, d) { a.$eval(d.ngInit) } } } }), Le = function () { return { restrict: "A", priority: 100, require: "ngModel", link: function (a, c, d, e) { var f = c.attr(d.$attr.ngList) || ", ", g = "false" !== d.ngTrim, h = g ? T(f) : f; e.$parsers.push(function (a) { if (!y(a)) { var c = []; a && n(a.split(h), function (a) { a && c.push(g ? T(a) : a) }); return c } }); e.$formatters.push(function (a) { return K(a) ? a.join(f) : u }); e.$isEmpty = function (a) { return !a || !a.length } } } }, lb = "ng-valid", Kd = "ng-invalid", Xa = "ng-pristine", Jb = "ng-dirty", Md = "ng-pending", kb = G("ngModel"), xg = ["$scope", "$exceptionHandler", "$attrs", "$element", "$parse", "$animate", "$timeout", "$rootScope", "$q", "$interpolate", function (a, c, d, e, f, g, h, l, k, m) { this.$modelValue = this.$viewValue = Number.NaN; this.$$rawModelValue = u; this.$validators = {}; this.$asyncValidators = {}; this.$parsers = []; this.$formatters = []; this.$viewChangeListeners = []; this.$untouched = !0; this.$touched = !1; this.$pristine = !0; this.$dirty = !1; this.$valid = !0; this.$invalid = !1; this.$error = {}; this.$$success = {}; this.$pending = u; this.$name = m(d.name || "", !1)(a); var q = f(d.ngModel), s = q.assign, r = q, E = s, L = null, w, p = this; this.$$setOptions = function (a) { if ((p.$options = a) && a.getterSetter) { var c = f(d.ngModel + "()"), g = f(d.ngModel + "($$$p)"); r = function (a) { var d = q(a); B(d) && (d = c(a)); return d }; E = function (a, c) { B(q(a)) ? g(a, {$$$p: p.$modelValue}) : s(a, p.$modelValue) } } else if (!q.assign) throw kb("nonassign", d.ngModel, ua(e)); }; this.$render = v; this.$isEmpty = function (a) { return y(a) || "" === a || null === a || a !== a }; var A = e.inheritedData("$formController") || Ib, z = 0; Hd({ ctrl: this, $element: e, set: function (a, c) { a[c] = !0 }, unset: function (a, c) { delete a[c] }, parentForm: A, $animate: g }); this.$setPristine = function () { p.$dirty = !1; p.$pristine = !0; g.removeClass(e, Jb); g.addClass(e, Xa) }; this.$setDirty = function () { p.$dirty = !0; p.$pristine = !1; g.removeClass(e, Xa); g.addClass(e, Jb); A.$setDirty() }; this.$setUntouched = function () { p.$touched = !1; p.$untouched = !0; g.setClass(e, "ng-untouched", "ng-touched") }; this.$setTouched = function () { p.$touched = !0; p.$untouched = !1; g.setClass(e, "ng-touched", "ng-untouched") }; this.$rollbackViewValue = function () { h.cancel(L); p.$viewValue = p.$$lastCommittedViewValue; p.$render() }; this.$validate = function () { if (!X(p.$modelValue) || !isNaN(p.$modelValue)) { var a = p.$$rawModelValue, c = p.$valid, d = p.$modelValue, e = p.$options && p.$options.allowInvalid; p.$$runValidators(a, p.$$lastCommittedViewValue, function (f) { e || c === f || (p.$modelValue = f ? a : u, p.$modelValue !== d && p.$$writeModelToScope()) }) } }; this.$$runValidators = function (a, c, d) { function e() { var d = !0; n(p.$validators, function (e, f) { var h = e(a, c); d = d && h; g(f, h) }); return d ? !0 : (n(p.$asyncValidators, function (a, c) { g(c, null) }), !1) } function f() { var d = [], e = !0; n(p.$asyncValidators, function (f, h) { var k = f(a, c); if (!k || !B(k.then)) throw kb("$asyncValidators", k); g(h, u); d.push(k.then(function () { g(h, !0) }, function (a) { e = !1; g(h, !1) })) }); d.length ? k.all(d).then(function () { h(e) }, v) : h(!0) } function g(a, c) { l === z && p.$setValidity(a, c) } function h(a) { l === z && d(a) } z++; var l = z; (function () { var a = p.$$parserName || "parse"; if (w === u) g(a, null); else return w || (n(p.$validators, function (a, c) { g(c, null) }), n(p.$asyncValidators, function (a, c) { g(c, null) })), g(a, w), w; return !0 })() ? e() ? f() : h(!1) : h(!1) }; this.$commitViewValue = function () { var a = p.$viewValue; h.cancel(L); if (p.$$lastCommittedViewValue !== a || "" === a && p.$$hasNativeValidators) p.$$lastCommittedViewValue = a, p.$pristine && this.$setDirty(), this.$$parseAndValidate() }; this.$$parseAndValidate = function () { var c = p.$$lastCommittedViewValue; if (w = y(c) ? u : !0) for (var d = 0; d < p.$parsers.length; d++) if (c = p.$parsers[d](c), y(c)) { w = !1; break } X(p.$modelValue) && isNaN(p.$modelValue) && (p.$modelValue = r(a)); var e = p.$modelValue, f = p.$options && p.$options.allowInvalid; p.$$rawModelValue = c; f && (p.$modelValue = c, p.$modelValue !== e && p.$$writeModelToScope()); p.$$runValidators(c, p.$$lastCommittedViewValue, function (a) { f || (p.$modelValue = a ? c : u, p.$modelValue !== e && p.$$writeModelToScope()) }) }; this.$$writeModelToScope = function () { E(a, p.$modelValue); n(p.$viewChangeListeners, function (a) { try { a() } catch (d) { c(d) } }) }; this.$setViewValue = function (a, c) { p.$viewValue = a; p.$options && !p.$options.updateOnDefault || p.$$debounceViewValueCommit(c) }; this.$$debounceViewValueCommit = function (c) { var d = 0, e = p.$options; e && x(e.debounce) && (e = e.debounce, X(e) ? d = e : X(e[c]) ? d = e[c] : X(e["default"]) && (d = e["default"])); h.cancel(L); d ? L = h(function () { p.$commitViewValue() }, d) : l.$$phase ? p.$commitViewValue() : a.$apply(function () { p.$commitViewValue() }) }; a.$watch(function () { var c = r(a); if (c !== p.$modelValue && (p.$modelValue === p.$modelValue || c === c)) { p.$modelValue = p.$$rawModelValue = c; w = u; for (var d = p.$formatters, e = d.length, f = c; e--;) f = d[e](f); p.$viewValue !== f && (p.$viewValue = p.$$lastCommittedViewValue = f, p.$render(), p.$$runValidators(c, f, v)) } return c }) }], Ke = ["$rootScope", function (a) { return { restrict: "A", require: ["ngModel", "^?form", "^?ngModelOptions"], controller: xg, priority: 1, compile: function (c) { c.addClass(Xa).addClass("ng-untouched").addClass(lb); return { pre: function (a, c, f, g) { var h = g[0], l = g[1] || Ib; h.$$setOptions(g[2] && g[2].$options); l.$addControl(h); f.$observe("name", function (a) { h.$name !== a && l.$$renameControl(h, a) }); a.$on("$destroy", function () { l.$removeControl(h) }) }, post: function (c, e, f, g) { var h = g[0]; if (h.$options && h.$options.updateOn) e.on(h.$options.updateOn, function (a) { h.$$debounceViewValueCommit(a && a.type) }); e.on("blur", function (e) { h.$touched || (a.$$phase ? c.$evalAsync(h.$setTouched) : c.$apply(h.$setTouched)) }) } } } } }], yg = /(\s+|^)default(\s+|$)/, Oe = function () { return { restrict: "A", controller: ["$scope", "$attrs", function (a, c) { var d = this; this.$options = fa(a.$eval(c.ngModelOptions)); this.$options.updateOn !== u ? (this.$options.updateOnDefault = !1, this.$options.updateOn = T(this.$options.updateOn.replace(yg, function () { d.$options.updateOnDefault = !0; return " " }))) : this.$options.updateOnDefault = !0 }] } }, Ae = Ma({terminal: !0, priority: 1E3}), zg = G("ngOptions"), Ag = /^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/, Ie = ["$compile", "$parse", function (a, c) { function d(a, d, e) { function f(a, c, d, e, g) { this.selectValue = a; this.viewValue = c; this.label = d; this.group = e; this.disabled = g } function m(a) { var c; if (!r && Da(a)) c = a; else { c = []; for (var d in a) a.hasOwnProperty(d) && "$" !== d.charAt(0) && c.push(d) } return c } var n = a.match(Ag); if (!n) throw zg("iexp", a, ua(d)); var s = n[5] || n[7], r = n[6]; a = / as /.test(n[0]) && n[1]; var u = n[9]; d = c(n[2] ? n[1] : s); var v = a && c(a) || d, w = u && c(u), p = u ? function (a, c) { return w(e, c) } : function (a) { return Ga(a) }, A = function (a, c) { return p(a, B(a, c)) }, x = c(n[2] || n[1]), z = c(n[3] || ""), y = c(n[4] || ""), J = c(n[8]), F = {}, B = r ? function (a, c) { F[r] = c; F[s] = a; return F } : function (a) { F[s] = a; return F }; return { trackBy: u, getTrackByValue: A, getWatchables: c(J, function (a) { var c = []; a = a || []; for (var d = m(a), f = d.length, g = 0; g < f; g++) { var h = a === d ? g : d[g], k = B(a[h], h), h = p(a[h], k); c.push(h); if (n[2] || n[1]) h = x(e, k), c.push(h); n[4] && (k = y(e, k), c.push(k)) } return c }), getOptions: function () { for (var a = [], c = {}, d = J(e) || [], g = m(d), h = g.length, n = 0; n < h; n++) { var q = d === g ? n : g[n], s = B(d[q], q), r = v(e, s), q = p(r, s), t = x(e, s), w = z(e, s), s = y(e, s), r = new f(q, r, t, w, s); a.push(r); c[q] = r } return { items: a, selectValueMap: c, getOptionFromViewValue: function (a) { return c[A(a)] }, getViewValueFromOption: function (a) { return u ? aa.copy(a.viewValue) : a.viewValue } } } } } var e = W.createElement("option"), f = W.createElement("optgroup"); return { restrict: "A", terminal: !0, require: ["select", "?ngModel"], link: function (c, h, l, k) { function m(a, c) { a.element = c; c.disabled = a.disabled; a.value !== c.value && (c.value = a.selectValue); a.label !== c.label && (c.label = a.label, c.textContent = a.label) } function q(a, c, d, e) { c && I(c.nodeName) === d ? d = c : (d = e.cloneNode(!1), c ? a.insertBefore(d, c) : a.appendChild(d)); return d } function s(a) { for (var c; a;) c = a.nextSibling, Wb(a), a = c } function r(a) { var c = p && p[0], d = J && J[0]; if (c || d) for (; a && (a === c || a === d);) a = a.nextSibling; return a } function u() { var a = F && w.readValue(); F = D.getOptions(); var c = {}, d = h[0].firstChild; O && h.prepend(p); d = r(d); F.items.forEach(function (a) { var g, k; a.group ? (g = c[a.group], g || (g = q(h[0], d, "optgroup", f), d = g.nextSibling, g.label = a.group, g = c[a.group] = { groupElement: g, currentOptionElement: g.firstChild }), k = q(g.groupElement, g.currentOptionElement, "option", e), m(a, k), g.currentOptionElement = k.nextSibling) : (k = q(h[0], d, "option", e), m(a, k), d = k.nextSibling) }); Object.keys(c).forEach(function (a) { s(c[a].currentOptionElement) }); s(d); v.$render(); if (!v.$isEmpty(a)) { var g = w.readValue(); (D.trackBy ? ka(a, g) : a === g) || (v.$setViewValue(g), v.$render()) } } var v = k[1]; if (v) { var w = k[0]; k = l.multiple; for (var p, x = 0, y = h.children(), B = y.length; x < B; x++) if ("" === y[x].value) { p = y.eq(x); break } var O = !!p, J = z(e.cloneNode(!1)); J.val("?"); var F, D = d(l.ngOptions, h, c); k ? (v.$isEmpty = function (a) { return !a || 0 === a.length }, w.writeValue = function (a) { F.items.forEach(function (a) { a.element.selected = !1 }); a && a.forEach(function (a) { (a = F.getOptionFromViewValue(a)) && !a.disabled && (a.element.selected = !0) }) }, w.readValue = function () { var a = h.val() || [], c = []; n(a, function (a) { (a = F.selectValueMap[a]) && !a.disabled && c.push(F.getViewValueFromOption(a)) }); return c }, D.trackBy && c.$watchCollection(function () { if (K(v.$viewValue)) return v.$viewValue.map(function (a) { return D.getTrackByValue(a) }) }, function () { v.$render() })) : (w.writeValue = function (a) { var c = F.getOptionFromViewValue(a); c && !c.disabled ? h[0].value !== c.selectValue && (J.remove(), O || p.remove(), h[0].value = c.selectValue, c.element.selected = !0, c.element.setAttribute("selected", "selected")) : null === a || O ? (J.remove(), O || h.prepend(p), h.val(""), p.prop("selected", !0), p.attr("selected", !0)) : (O || p.remove(), h.prepend(J), h.val("?"), J.prop("selected", !0), J.attr("selected", !0)) }, w.readValue = function () { var a = F.selectValueMap[h.val()]; return a && !a.disabled ? (O || p.remove(), J.remove(), F.getViewValueFromOption(a)) : null }, D.trackBy && c.$watch(function () { return D.getTrackByValue(v.$viewValue) }, function () { v.$render() })); O ? (p.remove(), a(p)(c), p.removeClass("ng-scope")) : p = z(e.cloneNode(!1)); u(); c.$watchCollection(D.getWatchables, u) } } } }], Be = ["$locale", "$interpolate", "$log", function (a, c, d) { var e = /{}/g, f = /^when(Minus)?(.+)$/; return { link: function (g, h, l) { function k(a) { h.text(a || "") } var m = l.count, q = l.$attr.when && h.attr(l.$attr.when), s = l.offset || 0, r = g.$eval(q) || {}, u = {}, x = c.startSymbol(), w = c.endSymbol(), p = x + m + "-" + s + w, A = aa.noop, z; n(l, function (a, c) { var d = f.exec(c); d && (d = (d[1] ? "-" : "") + I(d[2]), r[d] = h.attr(l.$attr[c])) }); n(r, function (a, d) { u[d] = c(a.replace(e, p)) }); g.$watch(m, function (c) { var e = parseFloat(c), f = isNaN(e); f || e in r || (e = a.pluralCat(e - s)); e === z || f && X(z) && isNaN(z) || (A(), f = u[e], y(f) ? (null != c && d.debug("ngPluralize: no rule defined for '" + e + "' in " + q), A = v, k()) : A = g.$watch(f, k), z = e) }) } } }], Ce = ["$parse", "$animate", function (a, c) { var d = G("ngRepeat"), e = function (a, c, d, e, k, m, n) { a[d] = e; k && (a[k] = m); a.$index = c; a.$first = 0 === c; a.$last = c === n - 1; a.$middle = !(a.$first || a.$last); a.$odd = !(a.$even = 0 === (c & 1)) }; return { restrict: "A", multiElement: !0, transclude: "element", priority: 1E3, terminal: !0, $$tlb: !0, compile: function (f, g) { var h = g.ngRepeat, l = W.createComment(" end ngRepeat: " + h + " "), k = h.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/); if (!k) throw d("iexp", h); var m = k[1], q = k[2], r = k[3], t = k[4], k = m.match(/^(?:(\s*[\$\w]+)|\(\s*([\$\w]+)\s*,\s*([\$\w]+)\s*\))$/); if (!k) throw d("iidexp", m); var v = k[3] || k[1], x = k[2]; if (r && (!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(r) || /^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(r))) throw d("badident", r); var w, p, A, y, B = {$id: Ga}; t ? w = a(t) : (A = function (a, c) { return Ga(c) }, y = function (a) { return a }); return function (a, f, g, k, m) { w && (p = function (c, d, e) { x && (B[x] = c); B[v] = d; B.$index = e; return w(a, B) }); var t = ga(); a.$watchCollection(q, function (g) { var k, q, w = f[0], B, D = ga(), F, H, K, G, M, I, N; r && (a[r] = g); if (Da(g)) M = g, q = p || A; else for (N in q = p || y, M = [], g) g.hasOwnProperty(N) && "$" !== N.charAt(0) && M.push(N); F = M.length; N = Array(F); for (k = 0; k < F; k++) if (H = g === M ? k : M[k], K = g[H], G = q(H, K, k), t[G]) I = t[G], delete t[G], D[G] = I, N[k] = I; else { if (D[G]) throw n(N, function (a) { a && a.scope && (t[a.id] = a) }), d("dupes", h, G, K); N[k] = {id: G, scope: u, clone: u}; D[G] = !0 } for (B in t) { I = t[B]; G = qb(I.clone); c.leave(G); if (G[0].parentNode) for (k = 0, q = G.length; k < q; k++) G[k].$$NG_REMOVED = !0; I.scope.$destroy() } for (k = 0; k < F; k++) if (H = g === M ? k : M[k], K = g[H], I = N[k], I.scope) { B = w; do B = B.nextSibling; while (B && B.$$NG_REMOVED); I.clone[0] != B && c.move(qb(I.clone), null, z(w)); w = I.clone[I.clone.length - 1]; e(I.scope, k, v, K, x, H, F) } else m(function (a, d) { I.scope = d; var f = l.cloneNode(!1); a[a.length++] = f; c.enter(a, null, z(w)); w = f; I.clone = a; D[I.id] = I; e(I.scope, k, v, K, x, H, F) }); t = D }) } } } }], De = ["$animate", function (a) { return { restrict: "A", multiElement: !0, link: function (c, d, e) { c.$watch(e.ngShow, function (c) { a[c ? "removeClass" : "addClass"](d, "ng-hide", {tempClasses: "ng-hide-animate"}) }) } } }], we = ["$animate", function (a) { return { restrict: "A", multiElement: !0, link: function (c, d, e) { c.$watch(e.ngHide, function (c) { a[c ? "addClass" : "removeClass"](d, "ng-hide", {tempClasses: "ng-hide-animate"}) }) } } }], Ee = Ma(function (a, c, d) { a.$watch(d.ngStyle, function (a, d) { d && a !== d && n(d, function (a, d) { c.css(d, "") }); a && c.css(a) }, !0) }), Fe = ["$animate", function (a) { return { require: "ngSwitch", controller: ["$scope", function () { this.cases = {} }], link: function (c, d, e, f) { var g = [], h = [], l = [], k = [], m = function (a, c) { return function () { a.splice(c, 1) } }; c.$watch(e.ngSwitch || e.on, function (c) { var d, e; d = 0; for (e = l.length; d < e; ++d) a.cancel(l[d]); d = l.length = 0; for (e = k.length; d < e; ++d) { var r = qb(h[d].clone); k[d].$destroy(); (l[d] = a.leave(r)).then(m(l, d)) } h.length = 0; k.length = 0; (g = f.cases["!" + c] || f.cases["?"]) && n(g, function (c) { c.transclude(function (d, e) { k.push(e); var f = c.element; d[d.length++] = W.createComment(" end ngSwitchWhen: "); h.push({clone: d}); a.enter(d, f.parent(), f) }) }) }) } } }], Ge = Ma({ transclude: "element", priority: 1200, require: "^ngSwitch", multiElement: !0, link: function (a, c, d, e, f) { e.cases["!" + d.ngSwitchWhen] = e.cases["!" + d.ngSwitchWhen] || []; e.cases["!" + d.ngSwitchWhen].push({transclude: f, element: c}) } }), He = Ma({ transclude: "element", priority: 1200, require: "^ngSwitch", multiElement: !0, link: function (a, c, d, e, f) { e.cases["?"] = e.cases["?"] || []; e.cases["?"].push({transclude: f, element: c}) } }), Je = Ma({ restrict: "EAC", link: function (a, c, d, e, f) { if (!f) throw G("ngTransclude")("orphan", ua(c)); f(function (a) { c.empty(); c.append(a) }) } }), je = ["$templateCache", function (a) { return { restrict: "E", terminal: !0, compile: function (c, d) { "text/ng-template" == d.type && a.put(d.id, c[0].text) } } }], Bg = {$setViewValue: v, $render: v}, Cg = ["$element", "$scope", "$attrs", function (a, c, d) { var e = this, f = new Ua; e.ngModelCtrl = Bg; e.unknownOption = z(W.createElement("option")); e.renderUnknownOption = function (c) { c = "? " + Ga(c) + " ?"; e.unknownOption.val(c); a.prepend(e.unknownOption); a.val(c) }; c.$on("$destroy", function () { e.renderUnknownOption = v }); e.removeUnknownOption = function () { e.unknownOption.parent() && e.unknownOption.remove() }; e.readValue = function () { e.removeUnknownOption(); return a.val() }; e.writeValue = function (c) { e.hasOption(c) ? (e.removeUnknownOption(), a.val(c), "" === c && e.emptyOption.prop("selected", !0)) : null == c && e.emptyOption ? (e.removeUnknownOption(), a.val("")) : e.renderUnknownOption(c) }; e.addOption = function (a, c) { Ta(a, '"option value"'); "" === a && (e.emptyOption = c); var d = f.get(a) || 0; f.put(a, d + 1) }; e.removeOption = function (a) { var c = f.get(a); c && (1 === c ? (f.remove(a), "" === a && (e.emptyOption = u)) : f.put(a, c - 1)) }; e.hasOption = function (a) { return !!f.get(a) } }], ke = function () { return { restrict: "E", require: ["select", "?ngModel"], controller: Cg, link: function (a, c, d, e) { var f = e[1]; if (f) { var g = e[0]; g.ngModelCtrl = f; f.$render = function () { g.writeValue(f.$viewValue) }; c.on("change", function () { a.$apply(function () { f.$setViewValue(g.readValue()) }) }); if (d.multiple) { g.readValue = function () { var a = []; n(c.find("option"), function (c) { c.selected && a.push(c.value) }); return a }; g.writeValue = function (a) { var d = new Ua(a); n(c.find("option"), function (a) { a.selected = x(d.get(a.value)) }) }; var h, l = NaN; a.$watch(function () { l !== f.$viewValue || ka(h, f.$viewValue) || (h = ia(f.$viewValue), f.$render()); l = f.$viewValue }); f.$isEmpty = function (a) { return !a || 0 === a.length } } } } } }, me = ["$interpolate", function (a) { function c(a) { a[0].hasAttribute("selected") && (a[0].selected = !0) } return { restrict: "E", priority: 100, compile: function (d, e) { if (y(e.value)) { var f = a(d.text(), !0); f || e.$set("value", d.text()) } return function (a, d, e) { var k = d.parent(), m = k.data("$selectController") || k.parent().data("$selectController"); m && m.ngModelCtrl && (f ? a.$watch(f, function (a, f) { e.$set("value", a); f !== a && m.removeOption(f); m.addOption(a, d); m.ngModelCtrl.$render(); c(d) }) : (m.addOption(e.value, d), m.ngModelCtrl.$render(), c(d)), d.on("$destroy", function () { m.removeOption(e.value); m.ngModelCtrl.$render() })) } } } }], le = qa({restrict: "E", terminal: !1}), Fc = function () { return { restrict: "A", require: "?ngModel", link: function (a, c, d, e) { e && (d.required = !0, e.$validators.required = function (a, c) { return !d.required || !e.$isEmpty(c) }, d.$observe("required", function () { e.$validate() })) } } }, Ec = function () { return { restrict: "A", require: "?ngModel", link: function (a, c, d, e) { if (e) { var f, g = d.ngPattern || d.pattern; d.$observe("pattern", function (a) { H(a) && 0 < a.length && (a = new RegExp("^" + a + "$")); if (a && !a.test) throw G("ngPattern")("noregexp", g, a, ua(c)); f = a || u; e.$validate() }); e.$validators.pattern = function (a, c) { return e.$isEmpty(c) || y(f) || f.test(c) } } } } }, Hc = function () { return { restrict: "A", require: "?ngModel", link: function (a, c, d, e) { if (e) { var f = -1; d.$observe("maxlength", function (a) { a = Y(a); f = isNaN(a) ? -1 : a; e.$validate() }); e.$validators.maxlength = function (a, c) { return 0 > f || e.$isEmpty(c) || c.length <= f } } } } }, Gc = function () { return { restrict: "A", require: "?ngModel", link: function (a, c, d, e) { if (e) { var f = 0; d.$observe("minlength", function (a) { f = Y(a) || 0; e.$validate() }); e.$validators.minlength = function (a, c) { return e.$isEmpty(c) || c.length >= f } } } } }; N.angular.bootstrap ? console.log("WARNING: Tried to load angular more than once.") : (ce(), ee(aa), aa.module("ngLocale", [], ["$provide", function (a) { function c(a) { a += ""; var c = a.indexOf("."); return -1 == c ? 0 : a.length - c - 1 } a.value("$locale", { DATETIME_FORMATS: { AMPMS: ["AM", "PM"], DAY: "Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "), ERANAMES: ["Before Christ", "Anno Domini"], ERAS: ["BC", "AD"], FIRSTDAYOFWEEK: 6, MONTH: "January February March April May June July August September October November December".split(" "), SHORTDAY: "Sun Mon Tue Wed Thu Fri Sat".split(" "), SHORTMONTH: "Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "), WEEKENDRANGE: [5, 6], fullDate: "EEEE, MMMM d, y", longDate: "MMMM d, y", medium: "MMM d, y h:mm:ss a", mediumDate: "MMM d, y", mediumTime: "h:mm:ss a", "short": "M/d/yy h:mm a", shortDate: "M/d/yy", shortTime: "h:mm a" }, NUMBER_FORMATS: { CURRENCY_SYM: "$", DECIMAL_SEP: ".", GROUP_SEP: ",", PATTERNS: [{ gSize: 3, lgSize: 3, maxFrac: 3, minFrac: 0, minInt: 1, negPre: "-", negSuf: "", posPre: "", posSuf: "" }, { gSize: 3, lgSize: 3, maxFrac: 2, minFrac: 2, minInt: 1, negPre: "-\u00a4", negSuf: "", posPre: "\u00a4", posSuf: "" }] }, id: "en-us", pluralCat: function (a, e) { var f = a | 0, g = e; u === g && (g = Math.min(c(a), 3)); Math.pow(10, g); return 1 == f && 0 == g ? "one" : "other" } }) }]), z(W).ready(function () { Zd(W, yc) })) })(window, document); !window.angular.$$csp().noInlineStyle && window.angular.element(document.head).prepend(''); //# sourceMappingURL=angular.min.js.map