/*
 AngularJS v1.3.15
 (c) 2010-2014 Google, Inc. http://angularjs.org
 License: MIT
*/
(function (Q, W, t) {
    'use strict'; function R(b) { return function () { var a = arguments[0], c; c = "[" + (b ? b + ":" : "") + a + "] http://errors.angularjs.org/1.3.15/" + (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 Sa(b) {
        if (null == b || Ta(b)) return !1; var a = b.length; return b.nodeType ===
        qa && a ? !0 : C(b) || H(b) || 0 === a || "number" === typeof a && 0 < a && a - 1 in b
    } function r(b, a, c) { var d, e; if (b) if (G(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 (H(b) || Sa(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 !== r) b.forEach(a, c, b); else for (d in b) b.hasOwnProperty(d) && a.call(c, b[d], d, b); return b } function Ed(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 mc(b) { return function (a, c) { b(c, a) } } function Fd() { return ++ob } function nc(b, a) { a ? b.$$hashKey = a : delete b.$$hashKey } function w(b) { for (var a = b.$$hashKey, c = 1, d = arguments.length; c < d; c++) { var e = arguments[c]; if (e) for (var f = Object.keys(e), g = 0, h = f.length; g < h; g++) { var l = f[g]; b[l] = e[l] } } nc(b, a); return b } function aa(b) { return parseInt(b, 10) } function Ob(b, a) { return w(Object.create(b), a) } function E() { } function ra(b) { return b } function ea(b) { return function () { return b } } function x(b) {
        return "undefined" ===
        typeof b
    } function y(b) { return "undefined" !== typeof b } function J(b) { return null !== b && "object" === typeof b } function C(b) { return "string" === typeof b } function Y(b) { return "number" === typeof b } function ga(b) { return "[object Date]" === Ca.call(b) } function G(b) { return "function" === typeof b } function Ua(b) { return "[object RegExp]" === Ca.call(b) } function Ta(b) { return b && b.window === b } function Va(b) { return b && b.$evalAsync && b.$watch } function Wa(b) { return "boolean" === typeof b } function oc(b) {
        return !(!b || !(b.nodeName || b.prop &&
        b.attr && b.find))
    } function Gd(b) { var a = {}; b = b.split(","); var c; for (c = 0; c < b.length; c++) a[b[c]] = !0; return a } function va(b) { return z(b.nodeName || b[0] && b[0].nodeName) } function Xa(b, a) { var c = b.indexOf(a); 0 <= c && b.splice(c, 1); return a } function Da(b, a, c, d) {
        if (Ta(b) || Va(b)) throw Ja("cpws"); if (a) {
            if (b === a) throw Ja("cpi"); c = c || []; d = d || []; if (J(b)) { var e = c.indexOf(b); if (-1 !== e) return d[e]; c.push(b); d.push(a) } if (H(b)) for (var f = a.length = 0; f < b.length; f++) e = Da(b[f], null, c, d), J(b[f]) && (c.push(b[f]), d.push(e)), a.push(e);
            else { var g = a.$$hashKey; H(a) ? a.length = 0 : r(a, function (b, c) { delete a[c] }); for (f in b) b.hasOwnProperty(f) && (e = Da(b[f], null, c, d), J(b[f]) && (c.push(b[f]), d.push(e)), a[f] = e); nc(a, g) }
        } else if (a = b) H(b) ? a = Da(b, [], c, d) : ga(b) ? a = new Date(b.getTime()) : Ua(b) ? (a = new RegExp(b.source, b.toString().match(/[^\/]*$/)[0]), a.lastIndex = b.lastIndex) : J(b) && (e = Object.create(Object.getPrototypeOf(b)), a = Da(b, e, c, d)); return a
    } function sa(b, a) {
        if (H(b)) { a = a || []; for (var c = 0, d = b.length; c < d; c++) a[c] = b[c] } else if (J(b)) for (c in a = a || {},
        b) if ("$" !== c.charAt(0) || "$" !== c.charAt(1)) a[c] = b[c]; return a || b
    } function ha(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 (H(b)) { if (!H(a)) return !1; if ((c = b.length) == a.length) { for (d = 0; d < c; d++) if (!ha(b[d], a[d])) return !1; return !0 } } else {
            if (ga(b)) return ga(a) ? ha(b.getTime(), a.getTime()) : !1; if (Ua(b)) return Ua(a) ? b.toString() == a.toString() : !1; if (Va(b) || Va(a) || Ta(b) || Ta(a) || H(a) || ga(a) || Ua(a)) return !1; c = {}; for (d in b) if ("$" !==
            d.charAt(0) && !G(b[d])) { if (!ha(b[d], a[d])) return !1; c[d] = !0 } for (d in a) if (!c.hasOwnProperty(d) && "$" !== d.charAt(0) && a[d] !== t && !G(a[d])) return !1; return !0
        } return !1
    } function Ya(b, a, c) { return b.concat(Za.call(a, c)) } function pc(b, a) { var c = 2 < arguments.length ? Za.call(arguments, 2) : []; return !G(a) || a instanceof RegExp ? a : c.length ? function () { return arguments.length ? a.apply(b, Ya(c, arguments, 0)) : a.apply(b, c) } : function () { return arguments.length ? a.apply(b, arguments) : a.call(b) } } function Hd(b, a) {
        var c = a; "string" === typeof b &&
        "$" === b.charAt(0) && "$" === b.charAt(1) ? c = t : Ta(a) ? c = "$WINDOW" : a && W === a ? c = "$DOCUMENT" : Va(a) && (c = "$SCOPE"); return c
    } function $a(b, a) { if ("undefined" === typeof b) return t; Y(a) || (a = a ? 2 : null); return JSON.stringify(b, Hd, a) } function qc(b) { return C(b) ? JSON.parse(b) : b } function wa(b) { b = A(b).clone(); try { b.empty() } catch (a) { } var c = A("<div>").append(b).html(); try { return b[0].nodeType === pb ? z(c) : c.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/, function (a, b) { return "<" + z(b) }) } catch (d) { return z(c) } } function rc(b) { try { return decodeURIComponent(b) } catch (a) { } }
    function sc(b) { var a = {}, c, d; r((b || "").split("&"), function (b) { b && (c = b.replace(/\+/g, "%20").split("="), d = rc(c[0]), y(d) && (b = y(c[1]) ? rc(c[1]) : !0, tc.call(a, d) ? H(a[d]) ? a[d].push(b) : a[d] = [a[d], b] : a[d] = b)) }); return a } function Pb(b) { var a = []; r(b, function (b, d) { H(b) ? r(b, function (b) { a.push(Ea(d, !0) + (!0 === b ? "" : "=" + Ea(b, !0))) }) : a.push(Ea(d, !0) + (!0 === b ? "" : "=" + Ea(b, !0))) }); return a.length ? a.join("&") : "" } function qb(b) { return Ea(b, !0).replace(/%26/gi, "&").replace(/%3D/gi, "=").replace(/%2B/gi, "+") } function Ea(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 Id(b, a) { var c, d, e = rb.length; b = A(b); for (d = 0; d < e; ++d) if (c = rb[d] + a, C(c = b.attr(c))) return c; return null } function Jd(b, a) {
        var c, d, e = {}; r(rb, function (a) { a += "app"; !c && b.hasAttribute && b.hasAttribute(a) && (c = b, d = b.getAttribute(a)) }); r(rb, function (a) { a += "app"; var e; !c && (e = b.querySelector("[" + a.replace(":", "\\:") + "]")) && (c = e, d = e.getAttribute(a)) }); c && (e.strictDi = null !== Id(c, "strict-di"),
        a(c, d ? [d] : [], e))
    } function uc(b, a, c) {
        J(c) || (c = {}); c = w({ strictDi: !1 }, c); var d = function () {
            b = A(b); if (b.injector()) { var d = b[0] === W ? "document" : wa(b); throw Ja("btstrpd", d.replace(/</, "&lt;").replace(/>/, "&gt;")); } 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 = ab(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!/; Q && e.test(Q.name) && (c.debugInfoEnabled = !0, Q.name = Q.name.replace(e, "")); if (Q && !f.test(Q.name)) return d(); Q.name = Q.name.replace(f, ""); ca.resumeBootstrap = function (b) { r(b, function (b) { a.push(b) }); return d() }; G(ca.resumeDeferredBootstrap) && ca.resumeDeferredBootstrap()
    } function Kd() { Q.name = "NG_ENABLE_DEBUG_INFO!" + Q.name; Q.location.reload() } function Ld(b) { b = ca.element(b).injector(); if (!b) throw Ja("test"); return b.get("$$testability") }
    function vc(b, a) { a = a || "_"; return b.replace(Md, function (b, d) { return (d ? a : "") + b.toLowerCase() }) } function Nd() { var b; wc || ((ta = Q.jQuery) && ta.fn.on ? (A = ta, w(ta.fn, { scope: Ka.scope, isolateScope: Ka.isolateScope, controller: Ka.controller, injector: Ka.injector, inheritedData: Ka.inheritedData }), b = ta.cleanData, ta.cleanData = function (a) { var c; if (Qb) Qb = !1; else for (var d = 0, e; null != (e = a[d]) ; d++) (c = ta._data(e, "events")) && c.$destroy && ta(e).triggerHandler("$destroy"); b(a) }) : A = T, ca.element = A, wc = !0) } function Rb(b, a, c) {
        if (!b) throw Ja("areq",
        a || "?", c || "required"); return b
    } function sb(b, a, c) { c && H(b) && (b = b[b.length - 1]); Rb(G(b), a, "not a function, got " + (b && "object" === typeof b ? b.constructor.name || "Object" : typeof b)); return b } function La(b, a) { if ("hasOwnProperty" === b) throw Ja("badname", a); } function xc(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 && G(b) ? pc(e, b) : b } function tb(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 A(c) } function ia() { return Object.create(null) }
    function Od(b) {
        function a(a, b, c) { return a[b] || (a[b] = c()) } var c = R("$injector"), d = R("ng"); b = a(b, "angular", Object); b.$$minErr = b.$$minErr || R; 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(c, d, e, f) { f || (f = b); return function () { f[e || "push"]([c, d, arguments]); return u } } if (!g) throw c("nomod", f); var b = [], d = [], e = [], q = a("$injector", "invoke", "push", d), u = {
                        _invokeQueue: b, _configBlocks: d,
                        _runBlocks: e, requires: g, name: f, provider: a("$provide", "provider"), factory: a("$provide", "factory"), service: a("$provide", "service"), value: a("$provide", "value"), constant: a("$provide", "constant", "unshift"), animation: a("$animateProvider", "register"), filter: a("$filterProvider", "register"), controller: a("$controllerProvider", "register"), directive: a("$compileProvider", "directive"), config: q, run: function (a) { e.push(a); return this }
                    }; h && q(h); return u
                })
            }
        })
    } function Pd(b) {
        w(b, {
            bootstrap: uc, copy: Da, extend: w, equals: ha,
            element: A, forEach: r, injector: ab, noop: E, bind: pc, toJson: $a, fromJson: qc, identity: ra, isUndefined: x, isDefined: y, isString: C, isFunction: G, isObject: J, isNumber: Y, isElement: oc, isArray: H, version: Qd, isDate: ga, lowercase: z, uppercase: ub, callbacks: { counter: 0 }, getTestability: Ld, $$minErr: R, $$csp: bb, reloadWithDebugInfo: Kd
        }); cb = Od(Q); try { cb("ngLocale") } catch (a) { cb("ngLocale", []).provider("$locale", Rd) } cb("ng", ["ngLocale"], ["$provide", function (a) {
            a.provider({ $$sanitizeUri: Sd }); a.provider("$compile", yc).directive({
                a: Td,
                input: zc, textarea: zc, form: Ud, script: Vd, select: Wd, style: Xd, option: Yd, ngBind: Zd, ngBindHtml: $d, ngBindTemplate: ae, ngClass: be, ngClassEven: ce, ngClassOdd: de, ngCloak: ee, ngController: fe, ngForm: ge, ngHide: he, ngIf: ie, ngInclude: je, ngInit: ke, ngNonBindable: le, ngPluralize: me, ngRepeat: ne, ngShow: oe, ngStyle: pe, ngSwitch: qe, ngSwitchWhen: re, ngSwitchDefault: se, ngOptions: te, ngTransclude: ue, ngModel: ve, ngList: we, ngChange: xe, pattern: Ac, ngPattern: Ac, required: Bc, ngRequired: Bc, minlength: Cc, ngMinlength: Cc, maxlength: Dc, ngMaxlength: Dc,
                ngValue: ye, ngModelOptions: ze
            }).directive({ ngInclude: Ae }).directive(vb).directive(Ec); a.provider({ $anchorScroll: Be, $animate: Ce, $browser: De, $cacheFactory: Ee, $controller: Fe, $document: Ge, $exceptionHandler: He, $filter: Fc, $interpolate: Ie, $interval: Je, $http: Ke, $httpBackend: Le, $location: Me, $log: Ne, $parse: Oe, $rootScope: Pe, $q: Qe, $$q: Re, $sce: Se, $sceDelegate: Te, $sniffer: Ue, $templateCache: Ve, $templateRequest: We, $$testability: Xe, $timeout: Ye, $window: Ze, $$rAF: $e, $$asyncCallback: af, $$jqLite: bf })
        }])
    } function db(b) {
        return b.replace(cf,
        function (a, b, d, e) { return e ? d.toUpperCase() : d }).replace(df, "Moz$1")
    } function Gc(b) { b = b.nodeType; return b === qa || !b || 9 === b } function Hc(b, a) {
        var c, d, e = a.createDocumentFragment(), f = []; if (Sb.test(b)) { c = c || e.appendChild(a.createElement("div")); d = (ef.exec(b) || ["", ""])[1].toLowerCase(); d = ja[d] || ja._default; c.innerHTML = d[1] + b.replace(ff, "<$1></$2>") + d[2]; for (d = d[0]; d--;) c = c.lastChild; f = Ya(f, c.childNodes); c = e.firstChild; c.textContent = "" } else f.push(a.createTextNode(b)); e.textContent = ""; e.innerHTML = ""; r(f, function (a) { e.appendChild(a) });
        return e
    } function T(b) { if (b instanceof T) return b; var a; C(b) && (b = N(b), a = !0); if (!(this instanceof T)) { if (a && "<" != b.charAt(0)) throw Tb("nosel"); return new T(b) } if (a) { a = W; var c; b = (c = gf.exec(b)) ? [a.createElement(c[1])] : (c = Hc(b, a)) ? c.childNodes : [] } Ic(this, b) } function Ub(b) { return b.cloneNode(!0) } function wb(b, a) { a || xb(b); if (b.querySelectorAll) for (var c = b.querySelectorAll("*"), d = 0, e = c.length; d < e; d++) xb(c[d]) } function Jc(b, a, c, d) {
        if (y(d)) throw Tb("offargs"); var e = (d = yb(b)) && d.events, f = d && d.handle; if (f) if (a) r(a.split(" "),
        function (a) { if (y(c)) { var d = e[a]; Xa(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 xb(b, a) { var c = b.ng339, d = c && zb[c]; d && (a ? delete d.data[a] : (d.handle && (d.events.$destroy && d.handle({}, "$destroy"), Jc(b)), delete zb[c], b.ng339 = t)) } function yb(b, a) { var c = b.ng339, c = c && zb[c]; a && !c && (b.ng339 = c = ++hf, c = zb[c] = { events: {}, data: {}, handle: t }); return c } function Vb(b, a, c) {
        if (Gc(b)) {
            var d = y(c), e = !d && a && !J(a),
            f = !a; b = (b = yb(b, !e)) && b.data; if (d) b[a] = c; else { if (f) return b; if (e) return b && b[a]; w(b, a) }
        }
    } function Ab(b, a) { return b.getAttribute ? -1 < (" " + (b.getAttribute("class") || "") + " ").replace(/[\n\t]/g, " ").indexOf(" " + a + " ") : !1 } function Bb(b, a) { a && b.setAttribute && r(a.split(" "), function (a) { b.setAttribute("class", N((" " + (b.getAttribute("class") || "") + " ").replace(/[\n\t]/g, " ").replace(" " + N(a) + " ", " "))) }) } function Cb(b, a) {
        if (a && b.setAttribute) {
            var c = (" " + (b.getAttribute("class") || "") + " ").replace(/[\n\t]/g, " ");
            r(a.split(" "), function (a) { a = N(a); -1 === c.indexOf(" " + a + " ") && (c += a + " ") }); b.setAttribute("class", N(c))
        }
    } function Ic(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 Kc(b, a) { return Db(b, "$" + (a || "ngController") + "Controller") } function Db(b, a, c) {
        9 == b.nodeType && (b = b.documentElement); for (a = H(a) ? a : [a]; b;) {
            for (var d = 0, e = a.length; d < e; d++) if ((c = A.data(b, a[d])) !== t) return c; b = b.parentNode ||
            11 === b.nodeType && b.host
        }
    } function Lc(b) { for (wb(b, !0) ; b.firstChild;) b.removeChild(b.firstChild) } function Mc(b, a) { a || wb(b); var c = b.parentNode; c && c.removeChild(b) } function jf(b, a) { a = a || Q; if ("complete" === a.document.readyState) a.setTimeout(b); else A(a).on("load", b) } function Nc(b, a) { var c = Eb[a.toLowerCase()]; return c && Oc[va(b)] && c } function kf(b, a) { var c = b.nodeName; return ("INPUT" === c || "TEXTAREA" === c) && Pc[a] } function lf(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 (x(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 = sa(f)); for (var l = 0; l < g; l++) c.isImmediatePropagationStopped() || f[l].call(b, c) }
        }; c.elem = b; return c
    } function bf() {
        this.$get = function () {
            return w(T, {
                hasClass: function (b, a) {
                    b.attr && (b = b[0]);
                    return Ab(b, a)
                }, addClass: function (b, a) { b.attr && (b = b[0]); return Cb(b, a) }, removeClass: function (b, a) { b.attr && (b = b[0]); return Bb(b, a) }
            })
        }
    } function Ma(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 || Fd)() : c + ":" + b } function eb(b, a) { if (a) { var c = 0; this.nextUid = function () { return ++c } } r(b, this.put, this) } function mf(b) {
        return (b = b.toString().replace(Qc, "").match(Rc)) ? "function(" + (b[1] || "").replace(/[\s\r\n]+/,
        " ") + ")" : "fn"
    } function ab(b, a) {
        function c(a) { return function (b, c) { if (J(b)) r(b, mc(a)); else return a(b, c) } } function d(a, b) { La(a, "service"); if (G(b) || H(b)) b = q.instantiate(b); if (!b.$get) throw Fa("pget", a); return p[a + "Provider"] = b } function e(a, b) { return function () { var c = s.invoke(b, this); if (x(c)) throw Fa("undef", a); return c } } function f(a, b, c) { return d(a, { $get: !1 !== c ? e(a, b) : b }) } function g(a) {
            var b = [], c; r(a, function (a) {
                function d(a) {
                    var b, c; b = 0; for (c = a.length; b < c; b++) {
                        var e = a[b], f = q.get(e[0]); f[e[1]].apply(f,
                        e[2])
                    }
                } if (!n.get(a)) { n.put(a, !0); try { C(a) ? (c = cb(a), b = b.concat(g(c.requires)).concat(c._runBlocks), d(c._invokeQueue), d(c._configBlocks)) : G(a) ? b.push(q.invoke(a)) : H(a) ? b.push(q.invoke(a)) : sb(a, "module") } catch (e) { throw H(a) && (a = a[a.length - 1]), e.message && e.stack && -1 == e.stack.indexOf(e.message) && (e = e.message + "\n" + e.stack), Fa("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 Fa("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 k = [], h = ab.$$annotate(b, a, g), l, q, p; q = 0; for (l = h.length; q < l; q++) { p = h[q]; if ("string" !== typeof p) throw Fa("itkn", p); k.push(f && f.hasOwnProperty(p) ? f[p] : d(p, g)) } H(b) && (b = b[l]); return b.apply(c, k) } return {
                invoke: e, instantiate: function (a, b, c) { var d = Object.create((H(a) ? a[a.length - 1] : a).prototype || null); a = e(a, d, b, c); return J(a) || G(a) ? a : d }, get: d, annotate: ab.$$annotate, has: function (a) {
                    return p.hasOwnProperty(a +
                    "Provider") || b.hasOwnProperty(a)
                }
            }
        } a = !0 === a; var l = {}, k = [], n = new eb([], !0), p = { $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, ea(b), !1) }), constant: c(function (a, b) { La(a, "constant"); p[a] = b; u[a] = b }), decorator: function (a, b) { var c = q.get(a + "Provider"), d = c.$get; c.$get = function () { var a = s.invoke(d, c); return s.invoke(b, null, { $delegate: a }) } } } }, q = p.$injector = h(p, function (a, b) {
            ca.isString(b) && k.push(b);
            throw Fa("unpr", k.join(" <- "));
        }), u = {}, s = u.$injector = h(u, function (a, b) { var c = q.get(a + "Provider", b); return s.invoke(c.$get, c, t, a) }); r(g(b), function (a) { s.invoke(a || E) }); return s
    } function Be() {
        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" === va(a)) return b = a, !0 }); return b } function f(b) {
                if (b) {
                    b.scrollIntoView(); var c; c = g.yOffset; G(c) ? c = c() : oc(c) ? (c = c[0], c = "fixed" !==
                    a.getComputedStyle(c).position ? 0 : c.getBoundingClientRect().bottom) : Y(c) || (c = 0); c && (b = b.getBoundingClientRect().top, a.scrollBy(0, b - c))
                } else a.scrollTo(0, 0)
            } function g() { var a = c.hash(), 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 || jf(function () { d.$evalAsync(g) }) }); return g
        }]
    } function af() {
        this.$get = ["$$rAF", "$timeout", function (b, a) {
            return b.supported ? function (a) { return b(a) } :
            function (b) { return a(b, 0, !1) }
        }]
    } function nf(b, a, c, d) {
        function e(a) { try { a.apply(null, Za.call(arguments, 1)) } finally { if (m--, 0 === m) for (; F.length;) try { F.pop()() } catch (b) { c.error(b) } } } function f(a, b) { (function da() { r(Z, function (a) { a() }); L = b(da, a) })() } function g() { h(); l() } function h() { a: { try { B = u.state; break a } catch (a) { } B = void 0 } B = x(B) ? null : B; ha(B, O) && (B = O); O = B } function l() { if (D !== n.url() || I !== B) D = n.url(), I = B, r(X, function (a) { a(n.url(), B) }) } function k(a) { try { return decodeURIComponent(a) } catch (b) { return a } }
        var n = this, p = a[0], q = b.location, u = b.history, s = b.setTimeout, M = b.clearTimeout, v = {}; n.isMock = !1; var m = 0, F = []; n.$$completeOutstandingRequest = e; n.$$incOutstandingRequestCount = function () { m++ }; n.notifyWhenNoOutstandingRequests = function (a) { r(Z, function (a) { a() }); 0 === m ? a() : F.push(a) }; var Z = [], L; n.addPollFn = function (a) { x(L) && f(100, s); Z.push(a); return a }; var B, I, D = q.href, S = a.find("base"), P = null; h(); I = B; n.url = function (a, c, e) {
            x(e) && (e = null); q !== b.location && (q = b.location); u !== b.history && (u = b.history); if (a) {
                var f =
                I === e; if (D === a && (!d.history || f)) return n; var g = D && Ga(D) === Ga(a); D = a; I = e; !d.history || g && f ? (g || (P = a), c ? q.replace(a) : g ? (c = q, e = a.indexOf("#"), a = -1 === e ? "" : a.substr(e + 1), c.hash = a) : q.href = a) : (u[c ? "replaceState" : "pushState"](e, "", a), h(), I = B); return n
            } return P || q.href.replace(/%27/g, "'")
        }; n.state = function () { return B }; var X = [], ba = !1, O = null; n.onUrlChange = function (a) { if (!ba) { if (d.history) A(b).on("popstate", g); A(b).on("hashchange", g); ba = !0 } X.push(a); return a }; n.$$checkUrlChange = l; n.baseHref = function () {
            var a = S.attr("href");
            return a ? a.replace(/^(https?\:)?\/\/[^\/]*/, "") : ""
        }; var fa = {}, y = "", ka = n.baseHref(); n.cookies = function (a, b) {
            var d, e, f, g; if (a) b === t ? p.cookie = encodeURIComponent(a) + "=;path=" + ka + ";expires=Thu, 01 Jan 1970 00:00:00 GMT" : C(b) && (d = (p.cookie = encodeURIComponent(a) + "=" + encodeURIComponent(b) + ";path=" + ka).length + 1, 4096 < d && c.warn("Cookie '" + a + "' possibly not set or overflowed because it was too large (" + d + " > 4096 bytes)!")); else {
                if (p.cookie !== y) for (y = p.cookie, d = y.split("; "), fa = {}, f = 0; f < d.length; f++) e = d[f], g =
                e.indexOf("="), 0 < g && (a = k(e.substring(0, g)), fa[a] === t && (fa[a] = k(e.substring(g + 1)))); return fa
            }
        }; n.defer = function (a, b) { var c; m++; c = s(function () { delete v[c]; e(a) }, b || 0); v[c] = !0; return c }; n.defer.cancel = function (a) { return v[a] ? (delete v[a], M(a), e(E), !0) : !1 }
    } function De() { this.$get = ["$window", "$log", "$sniffer", "$document", function (b, a, c, d) { return new nf(b, d, a, c) }] } function Ee() {
        this.$get = function () {
            function b(b, d) {
                function e(a) { a != p && (q ? q == a && (q = a.n) : q = a, f(a.n, a.p), f(a, p), p = a, p.n = null) } function f(a, b) {
                    a !=
                    b && (a && (a.p = b), b && (b.n = a))
                } if (b in a) throw R("$cacheFactory")("iid", b); var g = 0, h = w({}, d, { id: b }), l = {}, k = d && d.capacity || Number.MAX_VALUE, n = {}, p = null, q = null; return a[b] = {
                    put: function (a, b) { if (k < Number.MAX_VALUE) { var c = n[a] || (n[a] = { key: a }); e(c) } if (!x(b)) return a in l || g++, l[a] = b, g > k && this.remove(q.key), b }, get: function (a) { if (k < Number.MAX_VALUE) { var b = n[a]; if (!b) return; e(b) } return l[a] }, remove: function (a) {
                        if (k < Number.MAX_VALUE) { var b = n[a]; if (!b) return; b == p && (p = b.p); b == q && (q = b.n); f(b.n, b.p); delete n[a] } delete l[a];
                        g--
                    }, removeAll: function () { l = {}; g = 0; n = {}; p = q = null }, destroy: function () { n = h = l = null; delete a[b] }, info: function () { return w({}, h, { size: g }) }
                }
            } var a = {}; b.info = function () { var b = {}; r(a, function (a, e) { b[e] = a.info() }); return b }; b.get = function (b) { return a[b] }; return b
        }
    } function Ve() { this.$get = ["$cacheFactory", function (b) { return b("templates") }] } function yc(b, a) {
        function c(a, b) {
            var c = /^\s*([@&]|=(\*?))(\??)\s*(\w*)\s*$/, d = {}; r(a, function (a, e) {
                var f = a.match(c); if (!f) throw la("iscp", b, e, a); d[e] = {
                    mode: f[1][0], collection: "*" ===
                    f[2], optional: "?" === f[3], attrName: f[4] || e
                }
            }); return d
        } var d = {}, e = /^\s*directive\:\s*([\w\-]+)\s+(.*)$/, f = /(([\w\-]+)(?:\:([^;]+))?;?)/, g = Gd("ngSrc,ngSrcset,src,srcset"), h = /^(?:(\^\^?)?(\?)?(\^\^?)?)?/, l = /^(on[a-z]+|formaction)$/; this.directive = function p(a, e) {
            La(a, "directive"); C(a) ? (Rb(e, "directiveFactory"), d.hasOwnProperty(a) || (d[a] = [], b.factory(a + "Directive", ["$injector", "$exceptionHandler", function (b, e) {
                var f = []; r(d[a], function (d, g) {
                    try {
                        var h = b.invoke(d); G(h) ? h = { compile: ea(h) } : !h.compile && h.link &&
                        (h.compile = ea(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"; J(h.scope) && (h.$$isolateBindings = c(h.scope, h.name)); f.push(h)
                    } catch (k) { e(k) }
                }); return f
            }])), d[a].push(e)) : r(a, mc(p)); return this
        }; this.aHrefSanitizationWhitelist = function (b) { return y(b) ? (a.aHrefSanitizationWhitelist(b), this) : a.aHrefSanitizationWhitelist() }; this.imgSrcSanitizationWhitelist = function (b) { return y(b) ? (a.imgSrcSanitizationWhitelist(b), this) : a.imgSrcSanitizationWhitelist() };
        var k = !0; this.debugInfoEnabled = function (a) { return y(a) ? (k = a, this) : k }; this.$get = ["$injector", "$interpolate", "$exceptionHandler", "$templateRequest", "$parse", "$controller", "$rootScope", "$document", "$sce", "$animate", "$$sanitizeUri", function (a, b, c, s, M, v, m, F, Z, L, B) {
            function I(a, b) { try { a.addClass(b) } catch (c) { } } function D(a, b, c, d, e) {
                a instanceof A || (a = A(a)); r(a, function (b, c) { b.nodeType == pb && b.nodeValue.match(/\S+/) && (a[c] = A(b).wrap("<span></span>").parent()[0]) }); var f = S(a, b, a, c, d, e); D.$$addScopeClass(a);
                var g = null; return function (b, c, d) { Rb(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" !== va(d) && d.toString().match(/SVG/) ? "svg" : "html" : "html"); d = "html" !== g ? A(Xb(g, A("<div>").append(a).html())) : c ? Ka.clone.call(a) : a; if (h) for (var k in h) d.data("$" + k + "Controller", h[k].instance); D.$$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, q, p, s, M; if (m) for (M = Array(c.length), q = 0; q < h.length; q += 3) f = h[q], M[f] = c[f]; else M = c; q = 0; for (p = h.length; q < p;) k = M[h[q++]], c = h[q++], f = h[q++], c ? (c.scope ? (l = a.$new(), D.$$addScopeInfo(A(k), l)) : l = a, s = c.transcludeOnThisElement ? P(a, c.transclude, e, c.elementTranscludeOnThisElement) : !c.templateOnThisElement && e ? e : !e && b ? P(a, b) : null, c(f, l, k, d, s)) : f && f(a, k.childNodes, t, e) } for (var h = [], k, l, q, p, m, s = 0; s < a.length; s++) {
                    k = new Yb; l = X(a[s], [], k, 0 === s ? d : t, e); (f = l.length ? fa(l, a[s], k, b, c, null, [], [], f) : null) &&
                    f.scope && D.$$addScopeClass(k.$$element); k = f && f.terminal || !(q = a[s].childNodes) || !q.length ? null : S(q, f ? (f.transcludeOnThisElement || !f.templateOnThisElement) && f.transclude : b); if (f || k) h.push(s, f, k), p = !0, m = m || f; f = null
                } return p ? g : null
            } function P(a, b, c, d) { 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 X(a, b, c, d, g) {
                var h = c.$attr, k; switch (a.nodeType) {
                    case qa: ka(b, xa(va(a)), "E", d, g); for (var l,
                    q, p, m = a.attributes, s = 0, M = m && m.length; s < M; s++) { var u = !1, L = !1; l = m[s]; k = l.name; q = N(l.value); l = xa(k); if (p = U.test(l)) k = k.replace(Sc, "").substr(8).replace(/_(.)/g, function (a, b) { return b.toUpperCase() }); var B = l.replace(/(Start|End)$/, ""); x(B) && l === B + "Start" && (u = k, L = k.substr(0, k.length - 5) + "end", k = k.substr(0, k.length - 6)); l = xa(k.toLowerCase()); h[l] = k; if (p || !c.hasOwnProperty(l)) c[l] = q, Nc(a, l) && (c[l] = !0); Oa(a, b, q, l, p); ka(b, l, "A", d, g, u, L) } a = a.className; J(a) && (a = a.animVal); if (C(a) && "" !== a) for (; k = f.exec(a) ;) l = xa(k[2]),
                    ka(b, l, "C", d, g) && (c[l] = N(k[3])), a = a.substr(k.index + k[0].length); break; case pb: za(b, a.nodeValue); break; case 8: try { if (k = e.exec(a.nodeValue)) l = xa(k[1]), ka(b, l, "M", d, g) && (c[l] = N(k[2])) } catch (v) { }
                } b.sort(da); return b
            } function ba(a, b, c) { var d = [], e = 0; if (b && a.hasAttribute && a.hasAttribute(b)) { do { if (!a) throw la("uterdir", b, c); a.nodeType == qa && (a.hasAttribute(b) && e++, a.hasAttribute(c) && e--); d.push(a); a = a.nextSibling } while (0 < e) } else d.push(a); return A(d) } function O(a, b, c) {
                return function (d, e, f, g, h) {
                    e = ba(e[0],
                    b, c); return a(d, e, f, g, h)
                }
            } function fa(a, d, e, f, g, k, l, p, m) {
                function s(a, b, c, d) { if (a) { c && (a = O(a, c, d)); a.require = K.require; a.directiveName = da; if (P === K || K.$$isolateScope) a = Y(a, { isolateScope: !0 }); l.push(a) } if (b) { c && (b = O(b, c, d)); b.require = K.require; b.directiveName = da; if (P === K || K.$$isolateScope) b = Y(b, { isolateScope: !0 }); p.push(b) } } function L(a, b, c, d) {
                    var e, f = "data", g = !1, k = c, l; if (C(b)) {
                        l = b.match(h); b = b.substring(l[0].length); l[3] && (l[1] ? l[3] = null : l[1] = l[3]); "^" === l[1] ? f = "inheritedData" : "^^" === l[1] && (f = "inheritedData",
                        k = c.parent()); "?" === l[2] && (g = !0); e = null; d && "data" === f && (e = d[b]) && (e = e.instance); e = e || k[f]("$" + b + "Controller"); if (!e && !g) throw la("ctreq", b, a); return e || null
                    } H(b) && (e = [], r(b, function (b) { e.push(L(a, b, c, d)) })); return e
                } function B(a, c, f, g, h) {
                    function k(a, b, c) { var d; Va(a) || (c = b, b = a, a = t); E && (d = F); c || (c = E ? X.parent() : X); return h(a, b, d, c, Wb) } var m, s, u, I, F, gb, X, O; d === f ? (O = e, X = e.$$element) : (X = A(f), O = new Yb(X, e)); P && (I = c.$new(!0)); h && (gb = k, gb.$$boundTransclude = h); S && (Z = {}, F = {}, r(S, function (a) {
                        var b = {
                            $scope: a ===
                            P || a.$$isolateScope ? I : c, $element: X, $attrs: O, $transclude: gb
                        }; u = a.controller; "@" == u && (u = O[a.name]); b = v(u, b, !0, a.controllerAs); F[a.name] = b; E || X.data("$" + a.name + "Controller", b.instance); Z[a.name] = b
                    })); if (P) {
                        D.$$addScopeInfo(X, I, !0, !(ma && (ma === P || ma === P.$$originalDirective))); D.$$addScopeClass(X, !0); g = Z && Z[P.name]; var ba = I; g && g.identifier && !0 === P.bindToController && (ba = g.instance); r(I.$$isolateBindings = P.$$isolateBindings, function (a, d) {
                            var e = a.attrName, f = a.optional, g, h, k, l; switch (a.mode) {
                                case "@": O.$observe(e,
                                function (a) { ba[d] = a }); O.$$observers[e].$$scope = c; O[e] && (ba[d] = b(O[e])(c)); break; case "=": if (f && !O[e]) break; h = M(O[e]); l = h.literal ? ha : function (a, b) { return a === b || a !== a && b !== b }; k = h.assign || function () { g = ba[d] = h(c); throw la("nonassign", O[e], P.name); }; g = ba[d] = h(c); f = function (a) { l(a, ba[d]) || (l(a, g) ? k(c, a = ba[d]) : ba[d] = a); return g = a }; f.$stateful = !0; f = a.collection ? c.$watchCollection(O[e], f) : c.$watch(M(O[e], f), null, h.literal); I.$on("$destroy", f); break; case "&": h = M(O[e]), ba[d] = function (a) { return h(c, a) }
                            }
                        })
                    } Z &&
                    (r(Z, function (a) { a() }), Z = null); g = 0; for (m = l.length; g < m; g++) s = l[g], $(s, s.isolateScope ? I : c, X, O, s.require && L(s.directiveName, s.require, X, F), gb); var Wb = c; P && (P.template || null === P.templateUrl) && (Wb = I); a && a(Wb, f.childNodes, t, h); for (g = p.length - 1; 0 <= g; g--) s = p[g], $(s, s.isolateScope ? I : c, X, O, s.require && L(s.directiveName, s.require, X, F), gb)
                } m = m || {}; for (var I = -Number.MAX_VALUE, F, S = m.controllerDirectives, Z, P = m.newIsolateScopeDirective, ma = m.templateDirective, fa = m.nonTlbTranscludeDirective, ka = !1, x = !1, E = m.hasElementTranscludeDirective,
                w = e.$$element = A(d), K, da, V, fb = f, za, z = 0, Q = a.length; z < Q; z++) {
                    K = a[z]; var Oa = K.$$start, U = K.$$end; Oa && (w = ba(d, Oa, U)); V = t; if (I > K.priority) break; if (V = K.scope) K.templateUrl || (J(V) ? (Na("new/isolated scope", P || F, K, w), P = K) : Na("new/isolated scope", P, K, w)), F = F || K; da = K.name; !K.templateUrl && K.controller && (V = K.controller, S = S || {}, Na("'" + da + "' controller", S[da], K, w), S[da] = K); if (V = K.transclude) ka = !0, K.$$tlb || (Na("transclusion", fa, K, w), fa = K), "element" == V ? (E = !0, I = K.priority, V = w, w = e.$$element = A(W.createComment(" " + da + ": " +
                    e[da] + " ")), d = w[0], T(g, Za.call(V, 0), d), fb = D(V, f, I, k && k.name, { nonTlbTranscludeDirective: fa })) : (V = A(Ub(d)).contents(), w.empty(), fb = D(V, f)); if (K.template) if (x = !0, Na("template", ma, K, w), ma = K, V = G(K.template) ? K.template(w, e) : K.template, V = Tc(V), K.replace) { k = K; V = Sb.test(V) ? Uc(Xb(K.templateNamespace, N(V))) : []; d = V[0]; if (1 != V.length || d.nodeType !== qa) throw la("tplrt", da, ""); T(g, w, d); Q = { $attr: {} }; V = X(d, [], Q); var aa = a.splice(z + 1, a.length - (z + 1)); P && y(V); a = a.concat(V).concat(aa); R(e, Q); Q = a.length } else w.html(V); if (K.templateUrl) x =
                    !0, Na("template", ma, K, w), ma = K, K.replace && (k = K), B = of(a.splice(z, a.length - z), w, e, g, ka && fb, l, p, { controllerDirectives: S, newIsolateScopeDirective: P, templateDirective: ma, nonTlbTranscludeDirective: fa }), Q = a.length; else if (K.compile) try { za = K.compile(w, e, fb), G(za) ? s(null, za, Oa, U) : za && s(za.pre, za.post, Oa, U) } catch (pf) { c(pf, wa(w)) } K.terminal && (B.terminal = !0, I = Math.max(I, K.priority))
                } B.scope = F && !0 === F.scope; B.transcludeOnThisElement = ka; B.elementTranscludeOnThisElement = E; B.templateOnThisElement = x; B.transclude = fb;
                m.hasElementTranscludeDirective = E; return B
            } function y(a) { for (var b = 0, c = a.length; b < c; b++) a[b] = Ob(a[b], { $$isolateScope: !0 }) } function ka(b, e, f, g, h, k, l) { if (e === h) return null; h = null; if (d.hasOwnProperty(e)) { var q; e = a.get(e + "Directive"); for (var m = 0, s = e.length; m < s; m++) try { q = e[m], (g === t || g > q.priority) && -1 != q.restrict.indexOf(f) && (k && (q = Ob(q, { $$start: k, $$end: l })), b.push(q), h = q) } catch (M) { c(M) } } return h } function x(b) {
                if (d.hasOwnProperty(b)) for (var c = a.get(b + "Directive"), e = 0, f = c.length; e < f; e++) if (b = c[e], b.multiElement) return !0;
                return !1
            } function R(a, b) { var c = b.$attr, d = a.$attr, e = a.$$element; r(a, function (d, e) { "$" != e.charAt(0) && (b[e] && b[e] !== d && (d += ("style" === e ? ";" : " ") + b[e]), a.$set(e, d, !0, c[e])) }); r(b, function (b, f) { "class" == f ? (I(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 of(a, b, c, d, e, f, g, h) {
                var k = [], l, q, p = b[0], m = a.shift(), M = Ob(m, {
                    templateUrl: null, transclude: null,
                    replace: null, $$originalDirective: m
                }), u = G(m.templateUrl) ? m.templateUrl(b, c) : m.templateUrl, L = m.templateNamespace; b.empty(); s(Z.getTrustedResourceUrl(u)).then(function (s) {
                    var B, v; s = Tc(s); if (m.replace) { s = Sb.test(s) ? Uc(Xb(L, N(s))) : []; B = s[0]; if (1 != s.length || B.nodeType !== qa) throw la("tplrt", m.name, u); s = { $attr: {} }; T(d, b, B); var D = X(B, [], s); J(m.scope) && y(D); a = D.concat(a); R(c, s) } else B = p, b.html(s); a.unshift(M); l = fa(a, B, c, e, b, m, f, g, h); r(d, function (a, c) { a == B && (d[c] = b[0]) }); for (q = S(b[0].childNodes, e) ; k.length;) {
                        s =
                        k.shift(); v = k.shift(); var F = k.shift(), O = k.shift(), D = b[0]; if (!s.$$destroyed) { if (v !== p) { var Z = v.className; h.hasElementTranscludeDirective && m.replace || (D = Ub(B)); T(F, A(v), D); I(A(D), Z) } v = l.transcludeOnThisElement ? P(s, l.transclude, O) : O; l(q, s, D, d, v) }
                    } k = null
                }); return function (a, b, c, d, e) { a = e; b.$$destroyed || (k ? k.push(b, c, d, a) : (l.transcludeOnThisElement && (a = P(b, l.transclude, e)), l(q, b, c, d, a))) }
            } function da(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 Na(a,
            b, c, d) { if (b) throw la("multidir", b.name, c.name, a, wa(d)); } function za(a, c) { var d = b(c, !0); d && a.push({ priority: 0, compile: function (a) { a = a.parent(); var b = !!a.length; b && D.$$addBindingClass(a); return function (a, c) { var e = c.parent(); b || D.$$addBindingClass(e); D.$$addBindingInfo(e, d.expressions); a.$watch(d, function (a) { c[0].nodeValue = a }) } } }) } function Xb(a, b) { a = z(a || "html"); switch (a) { case "svg": case "math": var c = W.createElement("div"); c.innerHTML = "<" + a + ">" + b + "</" + a + ">"; return c.childNodes[0].childNodes; default: return b } }
            function Q(a, b) { if ("srcdoc" == b) return Z.HTML; var c = va(a); if ("xlinkHref" == b || "form" == c && "action" == b || "img" != c && ("src" == b || "ngSrc" == b)) return Z.RESOURCE_URL } function Oa(a, c, d, e, f) {
                var h = Q(a, e); f = g[e] || f; var k = b(d, !0, h, f); if (k) {
                    if ("multiple" === e && "select" === va(a)) throw la("selmulti", wa(a)); c.push({
                        priority: 100, compile: function () {
                            return {
                                pre: function (a, c, g) {
                                    c = g.$$observers || (g.$$observers = {}); if (l.test(e)) throw la("nodomevents"); var m = g[e]; m !== d && (k = m && b(m, !0, h, f), d = m); k && (g[e] = k(a), (c[e] || (c[e] = [])).$$inter =
                                    !0, (g.$$observers && g.$$observers[e].$$scope || a).$watch(k, function (a, b) { "class" === e && a != b ? g.$updateClass(a, b) : g.$set(e, a) }))
                                }
                            }
                        }
                    })
                }
            } function T(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); A(c).data(A(d).data()); ta ? (Qb = !0, ta.cleanData([d])) : delete A.cache[d[A.expando]];
                d = 1; for (e = b.length; d < e; d++) f = b[d], A(f).remove(), a.appendChild(f), delete b[d]; b[0] = c; b.length = 1
            } function Y(a, b) { return w(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, wa(d)) } } var Yb = 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 }; Yb.prototype = {
                $normalize: xa, $addClass: function (a) { a && 0 < a.length && L.addClass(this.$$element, a) }, $removeClass: function (a) {
                    a && 0 < a.length &&
                    L.removeClass(this.$$element, a)
                }, $updateClass: function (a, b) { var c = Vc(a, b); c && c.length && L.addClass(this.$$element, c); (c = Vc(b, a)) && c.length && L.removeClass(this.$$element, c) }, $set: function (a, b, d, e) {
                    var f = this.$$element[0], g = Nc(f, a), h = kf(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 = vc(a, "-")); g = va(this.$$element); if ("a" === g && "href" === a || "img" === g && "src" === a) this[a] = b = B(b, "src" === a); else if ("img" === g && "srcset" === a) {
                        for (var g =
                        "", h = N(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 q = 2 * l, g = g + B(N(h[q]), !0), g = g + (" " + N(h[q + 1])); h = N(h[2 * l]).split(/\s/); g += B(N(h[0]), !0); 2 === h.length && (g += " " + N(h[1])); this[a] = b = g
                    } !1 !== d && (null === b || b === t ? this.$$element.removeAttr(e) : this.$$element.attr(e, b)); (a = this.$$observers) && r(a[f], function (a) { try { a(b) } catch (d) { c(d) } })
                }, $observe: function (a, b) {
                    var c = this, d = c.$$observers || (c.$$observers = ia()), e = d[a] || (d[a] = []); e.push(b);
                    m.$evalAsync(function () { !e.$$inter && c.hasOwnProperty(a) && b(c[a]) }); return function () { Xa(e, b) }
                }
            }; var V = b.startSymbol(), ma = b.endSymbol(), Tc = "{{" == V || "}}" == ma ? ra : function (a) { return a.replace(/\{\{/g, V).replace(/}}/g, ma) }, U = /^ngAttr[A-Z]/; D.$$addBindingInfo = k ? function (a, b) { var c = a.data("$binding") || []; H(b) ? c = c.concat(b) : c.push(b); a.data("$binding", c) } : E; D.$$addBindingClass = k ? function (a) { I(a, "ng-binding") } : E; D.$$addScopeInfo = k ? function (a, b, c, d) {
                a.data(c ? d ? "$isolateScopeNoTemplate" : "$isolateScope" : "$scope",
                b)
            } : E; D.$$addScopeClass = k ? function (a, b) { I(a, b ? "ng-isolate-scope" : "ng-scope") } : E; return D
        }]
    } function xa(b) { return db(b.replace(Sc, "")) } function Vc(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 Uc(b) { b = A(b); var a = b.length; if (1 >= a) return b; for (; a--;) 8 === b[a].nodeType && qf.call(b, a, 1); return b } function Fe() {
        var b = {}, a = !1, c = /^(\S+)(\s+as\s+(\w+))?$/; this.register = function (a, c) {
            La(a,
            "controller"); J(a) ? w(b, a) : b[a] = c
        }; this.allowGlobals = function () { a = !0 }; this.$get = ["$injector", "$window", function (d, e) {
            function f(a, b, c, d) { if (!a || !J(a.$scope)) throw R("$controller")("noscp", d, b); a.$scope[b] = c } return function (g, h, l, k) {
                var n, p, q; l = !0 === l; k && C(k) && (q = k); if (C(g)) { k = g.match(c); if (!k) throw rf("ctrlfmt", g); p = k[1]; q = q || k[3]; g = b.hasOwnProperty(p) ? b[p] : xc(h.$scope, p, !0) || (a ? xc(e, p, !0) : t); sb(g, p, !0) } if (l) return l = (H(g) ? g[g.length - 1] : g).prototype, n = Object.create(l || null), q && f(h, q, n, p || g.name), w(function () {
                    d.invoke(g,
                    n, h, p); return n
                }, { instance: n, identifier: q }); n = d.instantiate(g, h, p); q && f(h, q, n, p || g.name); return n
            }
        }]
    } function Ge() { this.$get = ["$window", function (b) { return A(b.document) }] } function He() { this.$get = ["$log", function (b) { return function (a, c) { b.error.apply(b, arguments) } }] } function Zb(b, a) { if (C(b)) { var c = b.replace(sf, "").trim(); if (c) { var d = a("Content-Type"); (d = d && 0 === d.indexOf(Wc)) || (d = (d = c.match(tf)) && uf[d[0]].test(c)); d && (b = qc(c)) } } return b } function Xc(b) {
        var a = ia(), c, d, e; if (!b) return a; r(b.split("\n"),
        function (b) { e = b.indexOf(":"); c = z(N(b.substr(0, e))); d = N(b.substr(e + 1)); c && (a[c] = a[c] ? a[c] + ", " + d : d) }); return a
    } function Yc(b) { var a = J(b) ? b : t; return function (c) { a || (a = Xc(b)); return c ? (c = a[z(c)], void 0 === c && (c = null), c) : a } } function Zc(b, a, c, d) { if (G(d)) return d(b, a, c); r(d, function (d) { b = d(b, a, c) }); return b } function Ke() {
        var b = this.defaults = {
            transformResponse: [Zb], transformRequest: [function (a) {
                return J(a) && "[object File]" !== Ca.call(a) && "[object Blob]" !== Ca.call(a) && "[object FormData]" !== Ca.call(a) ? $a(a) :
                a
            }], headers: { common: { Accept: "application/json, text/plain, */*" }, post: sa($b), put: sa($b), patch: sa($b) }, xsrfCookieName: "XSRF-TOKEN", xsrfHeaderName: "X-XSRF-TOKEN"
        }, a = !1; this.useApplyAsync = function (b) { return y(b) ? (a = !!b, this) : a }; var c = this.interceptors = []; this.$get = ["$httpBackend", "$browser", "$cacheFactory", "$rootScope", "$q", "$injector", function (d, e, f, g, h, l) {
            function k(a) {
                function c(a) {
                    var b = w({}, a); b.data = a.data ? Zc(a.data, a.headers, a.status, e.transformResponse) : a.data; a = a.status; return 200 <= a && 300 > a ?
                        b : h.reject(b)
                } function d(a) { var b, c = {}; r(a, function (a, d) { G(a) ? (b = a(), null != b && (c[d] = b)) : c[d] = a }); return c } if (!ca.isObject(a)) throw R("$http")("badreq", a); var e = w({ method: "get", transformRequest: b.transformRequest, transformResponse: b.transformResponse }, a); e.headers = function (a) { var c = b.headers, e = w({}, a.headers), f, g, c = w({}, c.common, c[z(a.method)]); a: for (f in c) { a = z(f); for (g in e) if (z(g) === a) continue a; e[f] = c[f] } return d(e) }(a); e.method = ub(e.method); var f = [function (a) {
                    var d = a.headers, e = Zc(a.data, Yc(d),
                    t, a.transformRequest); x(e) && r(d, function (a, b) { "content-type" === z(b) && delete d[b] }); x(a.withCredentials) && !x(b.withCredentials) && (a.withCredentials = b.withCredentials); return n(a, e).then(c, c)
                }, t], g = h.when(e); for (r(u, function (a) { (a.request || a.requestError) && f.unshift(a.request, a.requestError); (a.response || a.responseError) && f.push(a.response, a.responseError) }) ; f.length;) { a = f.shift(); var k = f.shift(), g = g.then(a, k) } g.success = function (a) { g.then(function (b) { a(b.data, b.status, b.headers, e) }); return g }; g.error =
                function (a) { g.then(null, function (b) { a(b.data, b.status, b.headers, e) }); return g }; return g
            } function n(c, f) {
                function l(b, c, d, e) { function f() { m(c, b, d, e) } I && (200 <= b && 300 > b ? I.put(P, [b, c, Xc(d), e]) : I.remove(P)); a ? g.$applyAsync(f) : (f(), g.$$phase || g.$apply()) } function m(a, b, d, e) { b = Math.max(b, 0); (200 <= b && 300 > b ? L.resolve : L.reject)({ data: a, status: b, headers: Yc(d), config: c, statusText: e }) } function n(a) { m(a.data, a.status, sa(a.headers()), a.statusText) } function u() {
                    var a = k.pendingRequests.indexOf(c); -1 !== a && k.pendingRequests.splice(a,
                    1)
                } var L = h.defer(), B = L.promise, I, D, S = c.headers, P = p(c.url, c.params); k.pendingRequests.push(c); B.then(u, u); !c.cache && !b.cache || !1 === c.cache || "GET" !== c.method && "JSONP" !== c.method || (I = J(c.cache) ? c.cache : J(b.cache) ? b.cache : q); I && (D = I.get(P), y(D) ? D && G(D.then) ? D.then(n, n) : H(D) ? m(D[1], D[0], sa(D[2]), D[3]) : m(D, 200, {}, "OK") : I.put(P, B)); x(D) && ((D = $c(c.url) ? e.cookies()[c.xsrfCookieName || b.xsrfCookieName] : t) && (S[c.xsrfHeaderName || b.xsrfHeaderName] = D), d(c.method, P, f, l, S, c.timeout, c.withCredentials, c.responseType));
                return B
            } function p(a, b) { if (!b) return a; var c = []; Ed(b, function (a, b) { null === a || x(a) || (H(a) || (a = [a]), r(a, function (a) { J(a) && (a = ga(a) ? a.toISOString() : $a(a)); c.push(Ea(b) + "=" + Ea(a)) })) }); 0 < c.length && (a += (-1 == a.indexOf("?") ? "?" : "&") + c.join("&")); return a } var q = f("$http"), u = []; r(c, function (a) { u.unshift(C(a) ? l.get(a) : l.invoke(a)) }); k.pendingRequests = []; (function (a) { r(arguments, function (a) { k[a] = function (b, c) { return k(w(c || {}, { method: a, url: b })) } }) })("get", "delete", "head", "jsonp"); (function (a) {
                r(arguments, function (a) {
                    k[a] =
                    function (b, c, d) { return k(w(d || {}, { method: a, url: b, data: c })) }
                })
            })("post", "put", "patch"); k.defaults = b; return k
        }]
    } function vf() { return new Q.XMLHttpRequest } function Le() { this.$get = ["$browser", "$window", "$document", function (b, a, c) { return wf(b, vf, b.defer, a.angular.callbacks, c[0]) }] } function wf(b, a, c, d, e) {
        function f(a, b, c) {
            var f = e.createElement("script"), n = null; f.type = "text/javascript"; f.src = a; f.async = !0; n = function (a) {
                f.removeEventListener("load", n, !1); f.removeEventListener("error", n, !1); e.body.removeChild(f);
                f = null; var g = -1, u = "unknown"; a && ("load" !== a.type || d[b].called || (a = { type: "error" }), u = a.type, g = "error" === a.type ? 404 : 200); c && c(g, u)
            }; f.addEventListener("load", n, !1); f.addEventListener("error", n, !1); e.body.appendChild(f); return n
        } return function (e, h, l, k, n, p, q, u) {
            function s() { m && m(); F && F.abort() } function M(a, d, e, f, g) { L !== t && c.cancel(L); m = F = null; a(d, e, f, g); b.$$completeOutstandingRequest(E) } b.$$incOutstandingRequestCount(); h = h || b.url(); if ("jsonp" == z(e)) {
                var v = "_" + (d.counter++).toString(36); d[v] = function (a) {
                    d[v].data =
                    a; d[v].called = !0
                }; var m = f(h.replace("JSON_CALLBACK", "angular.callbacks." + v), v, function (a, b) { M(k, a, d[v].data, "", b); d[v] = E })
            } else {
                var F = a(); F.open(e, h, !0); r(n, function (a, b) { y(a) && F.setRequestHeader(b, a) }); F.onload = function () { var a = F.statusText || "", b = "response" in F ? F.response : F.responseText, c = 1223 === F.status ? 204 : F.status; 0 === c && (c = b ? 200 : "file" == Aa(h).protocol ? 404 : 0); M(k, c, b, F.getAllResponseHeaders(), a) }; e = function () { M(k, -1, null, null, "") }; F.onerror = e; F.onabort = e; q && (F.withCredentials = !0); if (u) try {
                    F.responseType =
                    u
                } catch (Z) { if ("json" !== u) throw Z; } F.send(l || null)
            } if (0 < p) var L = c(s, p); else p && G(p.then) && p.then(s)
        }
    } function Ie() {
        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(f, g, u, s) {
                function M(c) { return c.replace(k, b).replace(n, a) } function v(a) {
                    try {
                        var b = a; a = u ? e.getTrusted(u, b) : e.valueOf(b); var c; if (s && !y(a)) c = a; else if (null == a) c = "";
                        else { switch (typeof a) { case "string": break; case "number": a = "" + a; break; default: a = $a(a) } c = a } return c
                    } catch (g) { c = ac("interr", f, g.toString()), d(c) }
                } s = !!s; for (var m, F, r = 0, L = [], B = [], I = f.length, D = [], S = []; r < I;) if (-1 != (m = f.indexOf(b, r)) && -1 != (F = f.indexOf(a, m + h))) r !== m && D.push(M(f.substring(r, m))), r = f.substring(m + h, F), L.push(r), B.push(c(r, v)), r = F + l, S.push(D.length), D.push(""); else { r !== I && D.push(M(f.substring(r))); break } if (u && 1 < D.length) throw ac("noconcat", f); if (!g || L.length) {
                    var P = function (a) {
                        for (var b = 0, c =
                        L.length; b < c; b++) { if (s && x(a[b])) return; D[S[b]] = a[b] } return D.join("")
                    }; return w(function (a) { var b = 0, c = L.length, e = Array(c); try { for (; b < c; b++) e[b] = B[b](a); return P(e) } catch (g) { a = ac("interr", f, g.toString()), d(a) } }, { exp: f, expressions: L, $$watchDelegate: function (a, b, c) { var d; return a.$watchGroup(B, function (c, e) { var f = P(c); G(b) && b.call(this, f, c !== e ? d : f, a); d = f }, c) } })
                }
            } var h = b.length, l = a.length, k = new RegExp(b.replace(/./g, f), "g"), n = new RegExp(a.replace(/./g, f), "g"); g.startSymbol = function () { return b }; g.endSymbol =
            function () { return a }; return g
        }]
    } function Je() {
        this.$get = ["$rootScope", "$window", "$q", "$$q", function (b, a, c, d) {
            function e(e, h, l, k) { var n = a.setInterval, p = a.clearInterval, q = 0, u = y(k) && !k, s = (u ? d : c).defer(), M = s.promise; l = y(l) ? l : 0; M.then(null, null, e); M.$$intervalId = n(function () { s.notify(q++); 0 < l && q >= l && (s.resolve(q), p(M.$$intervalId), delete f[M.$$intervalId]); u || b.$apply() }, h); f[M.$$intervalId] = s; return M } 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 Rd() {
        this.$get = function () {
            return {
                id: "en-us", NUMBER_FORMATS: { DECIMAL_SEP: ".", GROUP_SEP: ",", PATTERNS: [{ minInt: 1, minFrac: 0, maxFrac: 3, posPre: "", posSuf: "", negPre: "-", negSuf: "", gSize: 3, lgSize: 3 }, { minInt: 1, minFrac: 2, maxFrac: 2, posPre: "\u00a4", posSuf: "", negPre: "(\u00a4", negSuf: ")", gSize: 3, lgSize: 3 }], CURRENCY_SYM: "$" }, DATETIME_FORMATS: {
                    MONTH: "January February March April May June July August September October November December".split(" "), SHORTMONTH: "Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),
                    DAY: "Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "), SHORTDAY: "Sun Mon Tue Wed Thu Fri Sat".split(" "), AMPMS: ["AM", "PM"], medium: "MMM d, y h:mm:ss a", "short": "M/d/yy h:mm a", fullDate: "EEEE, MMMM d, y", longDate: "MMMM d, y", mediumDate: "MMM d, y", shortDate: "M/d/yy", mediumTime: "h:mm:ss a", shortTime: "h:mm a", ERANAMES: ["Before Christ", "Anno Domini"], ERAS: ["BC", "AD"]
                }, pluralCat: function (b) { return 1 === b ? "one" : "other" }
            }
        }
    } function bc(b) {
        b = b.split("/"); for (var a = b.length; a--;) b[a] = qb(b[a]);
        return b.join("/")
    } function ad(b, a) { var c = Aa(b); a.$$protocol = c.protocol; a.$$host = c.hostname; a.$$port = aa(c.port) || xf[c.protocol] || null } function bd(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 = sc(d.search); a.$$hash = decodeURIComponent(d.hash); a.$$path && "/" != a.$$path.charAt(0) && (a.$$path = "/" + a.$$path) } function ya(b, a) { if (0 === a.indexOf(b)) return a.substr(b.length) } function Ga(b) {
        var a = b.indexOf("#");
        return -1 == a ? b : b.substr(0, a)
    } function Fb(b) { return b.replace(/(#.+)|#$/, "$1") } function cc(b) { return b.substr(0, Ga(b).lastIndexOf("/") + 1) } function dc(b, a) {
        this.$$html5 = !0; a = a || ""; var c = cc(b); ad(b, this); this.$$parse = function (a) { var b = ya(c, a); if (!C(b)) throw Gb("ipthprfx", a, c); bd(b, this); this.$$path || (this.$$path = "/"); this.$$compose() }; this.$$compose = function () { var a = Pb(this.$$search), b = this.$$hash ? "#" + qb(this.$$hash) : ""; this.$$url = bc(this.$$path) + (a ? "?" + a : "") + b; this.$$absUrl = c + this.$$url.substr(1) }; this.$$parseLinkUrl =
        function (d, e) { if (e && "#" === e[0]) return this.hash(e.slice(1)), !0; var f, g; (f = ya(b, d)) !== t ? (g = f, g = (f = ya(a, f)) !== t ? c + (ya("/", f) || f) : b + g) : (f = ya(c, d)) !== t ? g = c + f : c == d + "/" && (g = c); g && this.$$parse(g); return !!g }
    } function ec(b, a) {
        var c = cc(b); ad(b, this); this.$$parse = function (d) { d = ya(b, d) || ya(c, d); var e; "#" === d.charAt(0) ? (e = ya(a, d), x(e) && (e = d)) : e = this.$$html5 ? d : ""; bd(e, this); d = this.$$path; var f = /^\/[A-Z]:(\/.*)/; 0 === e.indexOf(b) && (e = e.replace(b, "")); f.exec(e) || (d = (e = f.exec(d)) ? e[1] : d); this.$$path = d; this.$$compose() };
        this.$$compose = function () { var c = Pb(this.$$search), e = this.$$hash ? "#" + qb(this.$$hash) : ""; this.$$url = bc(this.$$path) + (c ? "?" + c : "") + e; this.$$absUrl = b + (this.$$url ? a + this.$$url : "") }; this.$$parseLinkUrl = function (a, c) { return Ga(b) == Ga(a) ? (this.$$parse(a), !0) : !1 }
    } function cd(b, a) {
        this.$$html5 = !0; ec.apply(this, arguments); var c = cc(b); this.$$parseLinkUrl = function (d, e) { if (e && "#" === e[0]) return this.hash(e.slice(1)), !0; var f, g; b == Ga(d) ? f = d : (g = ya(c, d)) ? f = b + a + g : c === d + "/" && (f = c); f && this.$$parse(f); return !!f }; this.$$compose =
        function () { var c = Pb(this.$$search), e = this.$$hash ? "#" + qb(this.$$hash) : ""; this.$$url = bc(this.$$path) + (c ? "?" + c : "") + e; this.$$absUrl = b + a + this.$$url }
    } function Hb(b) { return function () { return this[b] } } function dd(b, a) { return function (c) { if (x(c)) return this[b]; this[b] = a(c); this.$$compose(); return this } } function Me() {
        var b = "", a = { enabled: !1, requireBase: !0, rewriteLinks: !0 }; this.hashPrefix = function (a) { return y(a) ? (b = a, this) : b }; this.html5Mode = function (b) {
            return Wa(b) ? (a.enabled = b, this) : J(b) ? (Wa(b.enabled) && (a.enabled =
            b.enabled), Wa(b.requireBase) && (a.requireBase = b.requireBase), Wa(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, n; n = d.baseHref(); var p = d.url(), q; if (a.enabled) {
                if (!n && a.requireBase) throw Gb("nobase");
                q = p.substring(0, p.indexOf("/", p.indexOf("//") + 2)) + (n || "/"); n = e.history ? dc : cd
            } else q = Ga(p), n = ec; k = new n(q, "#" + b); k.$$parseLinkUrl(p, p); k.$$state = d.state(); var u = /^\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 = A(b.target) ; "a" !== va(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"); J(h) && "[object SVGAnimatedString]" === h.toString() && (h = Aa(h.animVal).href);
                    u.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))
                }
            }); Fb(k.absUrl()) != Fb(p) && d.url(k.absUrl(), !0); var s = !0; d.onUrlChange(function (a, b) { 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)) : (s = !1, l(d, e))) }); c.$$phase || c.$digest() });
            c.$watch(function () { var a = Fb(d.url()), b = Fb(k.absUrl()), f = d.state(), g = k.$$replace, q = a !== b || k.$$html5 && e.history && f !== k.$$state; if (s || q) s = !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) : (q && h(b, g, f === k.$$state ? null : k.$$state), l(a, f))) }); k.$$replace = !1 }); return k
        }]
    } function Ne() {
        var b = !0, a = this; this.debugEnabled = function (a) { return y(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 || E; a = !1; try { a = !!e.apply } catch (l) { } return a ? function () { var a = []; r(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 ua(b, a) { if ("__defineGetter__" === b || "__defineSetter__" === b || "__lookupGetter__" === b || "__lookupSetter__" === b || "__proto__" === b) throw na("isecfld", a); return b } function oa(b, a) { if (b) { if (b.constructor === b) throw na("isecfn", a); if (b.window === b) throw na("isecwindow", a); if (b.children && (b.nodeName || b.prop && b.attr && b.find)) throw na("isecdom", a); if (b === Object) throw na("isecobj", a); } return b } function fc(b) { return b.constant } function hb(b, a, c, d, e) {
        oa(b, e); oa(a, e); c = c.split("."); for (var f,
        g = 0; 1 < c.length; g++) { f = ua(c.shift(), e); var h = 0 === g && a && a[f] || b[f]; h || (h = {}, b[f] = h); b = oa(h, e) } f = ua(c.shift(), e); oa(b[f], e); return b[f] = d
    } function Pa(b) { return "constructor" == b } function ed(b, a, c, d, e, f, g) {
        ua(b, f); ua(a, f); ua(c, f); ua(d, f); ua(e, f); var h = function (a) { return oa(a, f) }, l = g || Pa(b) ? h : ra, k = g || Pa(a) ? h : ra, n = g || Pa(c) ? h : ra, p = g || Pa(d) ? h : ra, q = g || Pa(e) ? h : ra; return function (f, g) {
            var h = g && g.hasOwnProperty(b) ? g : f; if (null == h) return h; h = l(h[b]); if (!a) return h; if (null == h) return t; h = k(h[a]); if (!c) return h; if (null ==
            h) return t; h = n(h[c]); if (!d) return h; if (null == h) return t; h = p(h[d]); return e ? null == h ? t : h = q(h[e]) : h
        }
    } function yf(b, a) { return function (c, d) { return b(c, d, oa, a) } } function zf(b, a, c) {
        var d = a.expensiveChecks, e = d ? Af : Bf, f = e[b]; if (f) return f; var g = b.split("."), h = g.length; if (a.csp) f = 6 > h ? ed(g[0], g[1], g[2], g[3], g[4], c, d) : function (a, b) { var e = 0, f; do f = ed(g[e++], g[e++], g[e++], g[e++], g[e++], c, d)(a, b), b = t, a = f; while (e < h); return f }; else {
            var l = ""; d && (l += "s = eso(s, fe);\nl = eso(l, fe);\n"); var k = d; r(g, function (a, b) {
                ua(a,
                c); var e = (b ? "s" : '((l&&l.hasOwnProperty("' + a + '"))?l:s)') + "." + a; if (d || Pa(a)) e = "eso(" + e + ", fe)", k = !0; l += "if(s == null) return undefined;\ns=" + e + ";\n"
            }); l += "return s;"; a = new Function("s", "l", "eso", "fe", l); a.toString = ea(l); k && (a = yf(a, c)); f = a
        } f.sharedGetter = !0; f.assign = function (a, c, d) { return hb(a, d, b, c, b) }; return e[b] = f
    } function gc(b) { return G(b.valueOf) ? b.valueOf() : Cf.call(b) } function Oe() {
        var b = ia(), a = ia(); this.$get = ["$filter", "$sniffer", function (c, d) {
            function e(a) {
                var b = a; a.sharedGetter && (b = function (b,
                c) { return a(b, c) }, b.literal = a.literal, b.constant = a.constant, b.assign = a.assign); return b
            } function f(a, b) { for (var c = 0, d = a.length; c < d; c++) { var e = a[c]; e.constant || (e.inputs ? f(e.inputs, b) : -1 === b.indexOf(e) && b.push(e)) } return b } function g(a, b) { return null == a || null == b ? a === b : "object" === typeof a && (a = gc(a), "object" === typeof a) ? !1 : a === b || a !== a && b !== b } function h(a, b, c, d) {
                var e = d.$$inputs || (d.$$inputs = f(d.inputs, [])), h; if (1 === e.length) {
                    var k = g, e = e[0]; return a.$watch(function (a) {
                        var b = e(a); g(b, k) || (h = d(a), k = b &&
                        gc(b)); return h
                    }, b, c)
                } for (var l = [], q = 0, p = e.length; q < p; q++) l[q] = g; return a.$watch(function (a) { for (var b = !1, c = 0, f = e.length; c < f; c++) { var k = e[c](a); if (b || (b = !g(k, l[c]))) l[c] = k && gc(k) } b && (h = d(a)); return h }, b, c)
            } function l(a, b, c, d) { var e, f; return e = a.$watch(function (a) { return d(a) }, function (a, c, d) { f = a; G(b) && b.apply(this, arguments); y(a) && d.$$postDigest(function () { y(f) && e() }) }, c) } function k(a, b, c, d) {
                function e(a) { var b = !0; r(a, function (a) { y(a) || (b = !1) }); return b } var f, g; return f = a.$watch(function (a) { return d(a) },
                function (a, c, d) { g = a; G(b) && b.call(this, a, c, d); e(a) && d.$$postDigest(function () { e(g) && f() }) }, c)
            } function n(a, b, c, d) { var e; return e = a.$watch(function (a) { return d(a) }, function (a, c, d) { G(b) && b.apply(this, arguments); e() }, c) } function p(a, b) {
                if (!b) return a; var c = a.$$watchDelegate, c = c !== k && c !== l ? function (c, d) { var e = a(c, d); return b(e, c, d) } : function (c, d) { var e = a(c, d), f = b(e, c, d); return y(e) ? f : e }; a.$$watchDelegate && a.$$watchDelegate !== h ? c.$$watchDelegate = a.$$watchDelegate : b.$stateful || (c.$$watchDelegate = h, c.inputs =
                [a]); return c
            } var q = { csp: d.csp, expensiveChecks: !1 }, u = { csp: d.csp, expensiveChecks: !0 }; return function (d, f, g) { var m, r, t; switch (typeof d) { case "string": t = d = d.trim(); var L = g ? a : b; m = L[t]; m || (":" === d.charAt(0) && ":" === d.charAt(1) && (r = !0, d = d.substring(2)), g = g ? u : q, m = new hc(g), m = (new ib(m, c, g)).parse(d), m.constant ? m.$$watchDelegate = n : r ? (m = e(m), m.$$watchDelegate = m.literal ? k : l) : m.inputs && (m.$$watchDelegate = h), L[t] = m); return p(m, f); case "function": return p(d, f); default: return p(E, f) } }
        }]
    } function Qe() {
        this.$get =
        ["$rootScope", "$exceptionHandler", function (b, a) { return fd(function (a) { b.$evalAsync(a) }, a) }]
    } function Re() { this.$get = ["$browser", "$exceptionHandler", function (b, a) { return fd(function (a) { b.defer(a) }, a) }] } function fd(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 = t; for (var f = 0, g = e.length; f < g; ++f) { d = e[f][0]; b = e[f][c.status]; try { G(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 = R("$q", TypeError); d.prototype = {
            then: function (a, b, c) {
                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) }
        }; 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 (J(b) || G(b)) d = b && b.then; G(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(G(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 { G(c) && (d = c()) } catch (e) { return l(e, !1) } return d && G(d.then) ? d.then(function () { return l(a, b) }, function (a) { return l(a, !1) }) : l(a, b) }, n = function (a, b, c, d) { var e = new g; e.resolve(a); return e.promise.then(b, c, d) }, p = function u(a) { if (!G(a)) throw h("norslvr", a); if (!(this instanceof u)) return new u(a); var b = new g; a(function (a) { b.resolve(a) }, function (a) { b.reject(a) }); return b.promise }; p.defer = function () { return new g }; p.reject = function (a) {
            var b = new g;
            b.reject(a); return b.promise
        }; p.when = n; p.all = function (a) { var b = new g, c = 0, d = H(a) ? [] : {}; r(a, function (a, e) { c++; n(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 p
    } function $e() {
        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 Pe() {
        function b(a) { function b() { this.$$watchers = this.$$nextSibling = this.$$childHead = this.$$childTail = null; this.$$listeners = {}; this.$$listenerCount = {}; this.$$watchersCount = 0; this.$id = ++ob; this.$$ChildScope = null } b.prototype = a; return b } var a = 10, c = R("$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 n() { this.$id = ++ob; 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.$$isolateBindings = null } function p(a) { if (v.$$phase) throw c("inprog", v.$$phase); v.$$phase = a } function q(a, b, c) {
                do a.$$listenerCount[c] -= b, 0 === a.$$listenerCount[c] && delete a.$$listenerCount[c];
                while (a = a.$parent)
            } function u() { } function s() { for (; t.length;) try { t.shift()() } catch (a) { g(a) } e = null } function M() { null === e && (e = l.defer(function () { v.$apply(s) })) } n.prototype = {
                constructor: n, $new: function (a, c) { var d; c = c || this; a ? (d = new n, 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) { var e = h(a); if (e.$$watchDelegate) return e.$$watchDelegate(this, b, c, e); var f = this.$$watchers, g = { fn: b, last: u, get: e, exp: a, eq: !!c }; d = null; G(b) || (g.fn = E); f || (f = this.$$watchers = []); f.unshift(g); return function () { Xa(f, g); 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) }); r(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 (!x(e)) {
                            if (J(e)) if (Sa(e)) for (f !== p && (f = p, u = f.length = 0, l++), a = e.length, u !== a && (l++, f.length = u = 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 !== n && (f = n = {}, u = 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)) : (u++, f[b] = g, l++)); if (u > a) for (b in l++, f) e.hasOwnProperty(b) || (u--, 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, q = h(a, c), p = [], n = {}, m = !0, u = 0; return this.$watch(q, function () { m ? (m = !1, b(e, e, d)) : b(e, g, d); if (k) if (J(e)) if (Sa(e)) { g = Array(e.length); for (var a = 0; a < e.length; a++) g[a] = e[a] } else for (a in g = {}, e) tc.call(e, a) && (g[a] = e[a]); else g = e })
                }, $digest: function () {
                    var b, f, h, k, q, n, r = a, t, O = [], M, y; p("$digest"); l.$$checkUrlChange();
                    this === v && null !== e && (l.defer.cancel(e), s()); d = null; do {
                        n = !1; for (t = this; m.length;) { try { y = m.shift(), y.scope.$eval(y.expression, y.locals) } catch (w) { g(w) } d = null }a: do {
                            if (k = t.$$watchers) for (q = k.length; q--;) try {
                                if (b = k[q]) if ((f = b.get(t)) !== (h = b.last) && !(b.eq ? ha(f, h) : "number" === typeof f && "number" === typeof h && isNaN(f) && isNaN(h))) n = !0, d = b, b.last = b.eq ? Da(f, null) : f, b.fn(f, h === u ? f : h, t), 5 > r && (M = 4 - r, O[M] || (O[M] = []), O[M].push({ msg: G(b.exp) ? "fn: " + (b.exp.name || b.exp.toString()) : b.exp, newVal: f, oldVal: h })); else if (b ===
                                d) { n = !1; break a }
                            } catch (A) { g(A) } if (!(k = t.$$childHead || t !== this && t.$$nextSibling)) for (; t !== this && !(k = t.$$nextSibling) ;) t = t.$parent
                        } while (t = k); if ((n || m.length) && !r--) throw v.$$phase = null, c("infdig", a, O);
                    } while (n || m.length); for (v.$$phase = null; F.length;) try { F.shift()() } catch (x) { g(x) }
                }, $destroy: function () {
                    if (!this.$$destroyed) {
                        var a = this.$parent; this.$broadcast("$destroy"); this.$$destroyed = !0; if (this !== v) {
                            for (var b in this.$$listenerCount) q(this, this.$$listenerCount[b], b); a.$$childHead == this && (a.$$childHead =
                            this.$$nextSibling); 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 = E; this.$on = this.$watch = this.$watchGroup = function () { return E }; 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) { v.$$phase || m.length || l.defer(function () { m.length && v.$digest() }); m.push({ scope: this, expression: a, locals: b }) }, $$postDigest: function (a) { F.push(a) }, $apply: function (a) { try { return p("$apply"), this.$eval(a) } catch (b) { g(b) } finally { v.$$phase = null; try { v.$digest() } catch (c) { throw g(c), c; } } }, $applyAsync: function (a) { function b() { c.$eval(a) } var c = this; a && t.push(b); M() }, $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, q(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 = Ya([h], arguments, 1), l, q; do {
                        d = e.$$listeners[a] || c; h.currentScope = e; l = 0; for (q = d.length; l < q; l++) if (d[l]) try { d[l].apply(null, k) } catch (p) { g(p) } else d.splice(l, 1), l--, q--; 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 = Ya([e], arguments, 1), h, l; c = d;) {
                        e.currentScope = c; d = c.$$listeners[a] || []; h = 0; for (l = d.length; h < l; h++) if (d[h]) try { d[h].apply(null, f) } catch (k) { g(k) } else d.splice(h, 1), h--, l--; 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 v = new n, m = v.$$asyncQueue = [], F = v.$$postDigestQueue = [], t = v.$$applyAsyncQueue = []; return v
        }]
    } function Sd() {
        var b = /^\s*(https?|ftp|mailto|tel|file):/, a = /^\s*((https?|ftp|file|blob):|data:image\/)/; this.aHrefSanitizationWhitelist = function (a) { return y(a) ? (b = a, this) : b }; this.imgSrcSanitizationWhitelist = function (b) { return y(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 Df(b) { if ("self" === b) return b; if (C(b)) { if (-1 < b.indexOf("***")) throw Ba("iwcard", b); b = gd(b).replace("\\*\\*", ".*").replace("\\*", "[^:/.?&;]*"); return new RegExp("^" + b + "$") } if (Ua(b)) return new RegExp("^" + b.source + "$"); throw Ba("imatcher"); } function hd(b) { var a = []; y(b) && r(b, function (b) { a.push(Df(b)) }); return a } function Te() {
        this.SCE_CONTEXTS = pa; var b = ["self"], a = []; this.resourceUrlWhitelist = function (a) { arguments.length && (b = hd(a)); return b }; this.resourceUrlBlacklist = function (b) {
            arguments.length &&
            (a = hd(b)); return a
        }; this.$get = ["$injector", function (c) {
            function d(a, b) { return "self" === a ? $c(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 Ba("unsafe"); }; c.has("$sanitize") && (f = c.get("$sanitize")); var g = e(), h = {}; h[pa.HTML] = e(g); h[pa.CSS] = e(g); h[pa.URL] =
            e(g); h[pa.JS] = e(g); h[pa.RESOURCE_URL] = e(h[pa.URL]); return {
                trustAs: function (a, b) { var c = h.hasOwnProperty(a) ? h[a] : null; if (!c) throw Ba("icontext", a, b); if (null === b || b === t || "" === b) return b; if ("string" !== typeof b) throw Ba("itype", a); return new c(b) }, getTrusted: function (c, e) {
                    if (null === e || e === t || "" === e) return e; var g = h.hasOwnProperty(c) ? h[c] : null; if (g && e instanceof g) return e.$$unwrapTrustedValue(); if (c === pa.RESOURCE_URL) {
                        var g = Aa(e.toString()), p, q, u = !1; p = 0; for (q = b.length; p < q; p++) if (d(b[p], g)) { u = !0; break } if (u) for (p =
                        0, q = a.length; p < q; p++) if (d(a[p], g)) { u = !1; break } if (u) return e; throw Ba("insecurl", e.toString());
                    } if (c === pa.HTML) return f(e); throw Ba("unsafe");
                }, valueOf: function (a) { return a instanceof g ? a.$$unwrapTrustedValue() : a }
            }
        }]
    } function Se() {
        var b = !0; this.enabled = function (a) { arguments.length && (b = !!a); return b }; this.$get = ["$parse", "$sceDelegate", function (a, c) {
            if (b && 8 > Qa) throw Ba("iequirks"); var d = sa(pa); 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 = ra); 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; r(pa, function (a, b) { var c = z(b); d[db("parse_as_" + c)] = function (b) { return e(a, b) }; d[db("get_trusted_" + c)] = function (b) { return f(a, b) }; d[db("trust_as_" + c)] = function (b) { return g(a, b) } }); return d
        }]
    } function Ue() {
        this.$get = ["$window", "$document", function (b, a) {
            var c = {}, d = aa((/android (\d+)/.exec(z((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, n = !1; if (l) { for (var p in l) if (k = h.exec(p)) { 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); n = !!("animation" in l || g + "Animation" in l); !d || k && n || (k = C(f.body.style.webkitTransition), n = C(f.body.style.webkitAnimation)) } return {
                history: !(!b.history || !b.history.pushState || 4 > d || e), hasEvent: function (a) {
                    if ("input" ===
                    a && 11 >= Qa) return !1; if (x(c[a])) { var b = f.createElement("div"); c[a] = "on" + a in b } return c[a]
                }, csp: bb(), vendorPrefix: g, transitions: k, animations: n, android: d
            }
        }]
    } function We() {
        this.$get = ["$templateCache", "$http", "$q", function (b, a, c) {
            function d(e, f) {
                d.totalPendingRequests++; var g = a.defaults && a.defaults.transformResponse; H(g) ? g = g.filter(function (a) { return a !== Zb }) : g === Zb && (g = null); return a.get(e, { cache: b, transformResponse: g })["finally"](function () { d.totalPendingRequests-- }).then(function (a) { return a.data },
                function (a) { if (!f) throw la("tpload", e); return c.reject(a) })
            } d.totalPendingRequests = 0; return d
        }]
    } function Xe() {
        this.$get = ["$rootScope", "$browser", "$location", function (b, a, c) {
            return {
                findBindings: function (a, b, c) { a = a.getElementsByClassName("ng-binding"); var g = []; r(a, function (a) { var d = ca.element(a).data("$binding"); d && r(d, function (d) { c ? (new RegExp("(^|\\s)" + gd(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 Ye() {
        this.$get = ["$rootScope", "$browser", "$q", "$$q", "$exceptionHandler", function (b, a, c, d, e) {
            function f(f, l, k) {
                var n = y(k) && !k, p = (n ? d : c).defer(), q = p.promise; l = a.defer(function () {
                    try { p.resolve(f()) } catch (a) { p.reject(a), e(a) } finally { delete g[q.$$timeoutId] } n ||
                    b.$apply()
                }, l); q.$$timeoutId = l; g[l] = p; return q
            } 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) {
        Qa && ($.setAttribute("href", b), b = $.href); $.setAttribute("href", b); return {
            href: $.href, protocol: $.protocol ? $.protocol.replace(/:$/, "") : "", host: $.host, search: $.search ? $.search.replace(/^\?/, "") : "", hash: $.hash ? $.hash.replace(/^#/, "") : "", hostname: $.hostname, port: $.port, pathname: "/" ===
            $.pathname.charAt(0) ? $.pathname : "/" + $.pathname
        }
    } function $c(b) { b = C(b) ? Aa(b) : b; return b.protocol === id.protocol && b.host === id.host } function Ze() { this.$get = ea(Q) } function Fc(b) {
        function a(c, d) { if (J(c)) { var e = {}; r(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", jd); a("date", kd); a("filter", Ef); a("json", Ff); a("limitTo", Gf); a("lowercase", Hf); a("number", ld); a("orderBy", md); a("uppercase",
        If)
    } function Ef() { return function (b, a, c) { if (!H(b)) return b; var d; switch (typeof a) { case "function": break; case "boolean": case "number": case "string": d = !0; case "object": a = Jf(a, c, d); break; default: return b } return b.filter(a) } } function Jf(b, a, c) { var d = J(b) && "$" in b; !0 === a ? a = ha : G(a) || (a = function (a, b) { if (J(a) || J(b)) return !1; a = z("" + a); b = z("" + b); return -1 !== a.indexOf(b) }); return function (e) { return d && !J(e) ? Ha(e, b.$, a, !1) : Ha(e, b, a, c) } } function Ha(b, a, c, d, e) {
        var f = null !== b ? typeof b : "null", g = null !== a ? typeof a :
        "null"; if ("string" === g && "!" === a.charAt(0)) return !Ha(b, a.substring(1), c, d); if (H(b)) return b.some(function (b) { return Ha(b, a, c, d) }); switch (f) { case "object": var h; if (d) { for (h in b) if ("$" !== h.charAt(0) && Ha(b[h], a, c, !0)) return !0; return e ? !1 : Ha(b, a, c, !1) } if ("object" === g) { for (h in a) if (e = a[h], !G(e) && !x(e) && (f = "$" === h, !Ha(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 jd(b) {
        var a = b.NUMBER_FORMATS; return function (b, d, e) {
            x(d) && (d = a.CURRENCY_SYM); x(e) &&
            (e = a.PATTERNS[1].maxFrac); return null == b ? b : nd(b, a.PATTERNS[1], a.GROUP_SEP, a.DECIMAL_SEP, e).replace(/\u00A4/g, d)
        }
    } function ld(b) { var a = b.NUMBER_FORMATS; return function (b, d) { return null == b ? b : nd(b, a.PATTERNS[0], a.GROUP_SEP, a.DECIMAL_SEP, d) } } function nd(b, a, c, d, e) {
        if (!isFinite(b) || J(b)) return ""; var f = 0 > b; b = Math.abs(b); var g = b + "", h = "", l = [], k = !1; if (-1 !== g.indexOf("e")) { var n = g.match(/([\d\.]+)e(-?)(\d+)/); n && "-" == n[2] && n[3] > e + 1 ? b = 0 : (h = g, k = !0) } if (k) 0 < e && 1 > b && (h = b.toFixed(e), b = parseFloat(h)); else {
            g = (g.split(od)[1] ||
            "").length; x(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(od), k = g[0], g = g[1] || "", p = 0, q = a.lgSize, u = a.gSize; if (k.length >= q + u) for (p = k.length - q, n = 0; n < p; n++) 0 === (p - n) % u && 0 !== n && (h += c), h += k.charAt(n); for (n = p; n < k.length; n++) 0 === (k.length - n) % q && 0 !== n && (h += c), h += k.charAt(n); for (; g.length < e;) g += "0"; e && "0" !== e && (h += d + g.substr(0, e))
        } 0 === b && (f = !1); l.push(f ? a.negPre : a.posPre, h, f ? a.negSuf : a.posSuf); return l.join("")
    } function Ib(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 U(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 Ib(e, a, d) } } function Jb(b, a) { return function (c, d) { var e = c["get" + b](), f = ub(a ? "SHORT" + b : b); return d[f][e] } } function pd(b) { var a = (new Date(b, 0, 1)).getDay(); return new Date(b, 0, (4 >= a ? 5 : 12) - a) } function qd(b) {
        return function (a) {
            var c = pd(a.getFullYear()); a = +new Date(a.getFullYear(), a.getMonth(), a.getDate() +
            (4 - a.getDay())) - +c; a = 1 + Math.round(a / 6048E5); return Ib(a, b)
        }
    } function ic(b, a) { return 0 >= b.getFullYear() ? a.ERAS[0] : a.ERAS[1] } function kd(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 = aa(b[9] + b[10]), g = aa(b[9] + b[11])); h.call(a, aa(b[1]), aa(b[2]) - 1, aa(b[3])); f = aa(b[4] || 0) - f; g = aa(b[5] || 0) - g; h = aa(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; C(c) && (c = Kf.test(c) ? aa(c) : a(c)); Y(c) && (c = new Date(c)); if (!ga(c)) return c; for (; e;) (k = Lf.exec(e)) ? (h = Ya(h, k, 1), e = h.pop()) : (h.push(e), e = null); f && "UTC" === f && (c = new Date(c.getTime()), c.setMinutes(c.getMinutes() + c.getTimezoneOffset())); r(h, function (a) { l = Mf[a]; g += l ? l(c, b.DATETIME_FORMATS) : a.replace(/(^'|'$)/g, "").replace(/''/g, "'") }); return g }
    } function Ff() { return function (b, a) { x(a) && (a = 2); return $a(b, a) } } function Gf() {
        return function (b,
        a) { Y(b) && (b = b.toString()); return H(b) || C(b) ? (a = Infinity === Math.abs(Number(a)) ? Number(a) : aa(a)) ? 0 < a ? b.slice(0, a) : b.slice(a) : C(b) ? "" : [] : b }
    } function md(b) {
        return function (a, c, d) {
            function e(a, b) { return b ? function (b, c) { return a(c, b) } : a } function f(a) { switch (typeof a) { case "number": case "boolean": case "string": return !0; default: return !1 } } function g(a) { return null === a ? "null" : "function" === typeof a.valueOf && (a = a.valueOf(), f(a)) || "function" === typeof a.toString && (a = a.toString(), f(a)) ? a : "" } function h(a, b) {
                var c =
                typeof a, d = typeof b; c === d && "object" === c && (a = g(a), b = g(b)); return c === d ? ("string" === c && (a = a.toLowerCase(), b = b.toLowerCase()), a === b ? 0 : a < b ? -1 : 1) : c < d ? -1 : 1
            } if (!Sa(a)) return a; c = H(c) ? c : [c]; 0 === c.length && (c = ["+"]); c = c.map(function (a) { var c = !1, d = a || ra; if (C(a)) { if ("+" == a.charAt(0) || "-" == a.charAt(0)) c = "-" == a.charAt(0), a = a.substring(1); if ("" === a) return e(h, c); d = b(a); if (d.constant) { var f = d(); return e(function (a, b) { return h(a[f], b[f]) }, c) } } return e(function (a, b) { return h(d(a), d(b)) }, c) }); return Za.call(a).sort(e(function (a,
            b) { for (var d = 0; d < c.length; d++) { var e = c[d](a, b); if (0 !== e) return e } return 0 }, d))
        }
    } function Ia(b) { G(b) && (b = { link: b }); b.restrict = b.restrict || "AC"; return ea(b) } function rd(b, a, c, d, e) {
        var f = this, g = [], h = f.$$parentForm = b.parent().controller("form") || Kb; f.$error = {}; f.$$success = {}; f.$pending = t; 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 () { r(g, function (a) { a.$rollbackViewValue() }) }; f.$commitViewValue = function () {
            r(g,
            function (a) { a.$commitViewValue() })
        }; f.$addControl = function (a) { La(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]; r(f.$pending, function (b, c) { f.$setValidity(c, null, a) }); r(f.$error, function (b, c) { f.$setValidity(c, null, a) }); r(f.$$success, function (b, c) { f.$setValidity(c, null, a) }); Xa(g, a) }; sd({
            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 && (Xa(d, c), 0 === d.length && delete a[b]) }, parentForm: h, $animate: d
        }); f.$setDirty = function () { d.removeClass(b, Ra); d.addClass(b, Lb); f.$dirty = !0; f.$pristine = !1; h.$setDirty() }; f.$setPristine = function () { d.setClass(b, Ra, Lb + " ng-submitted"); f.$dirty = !1; f.$pristine = !0; f.$submitted = !1; r(g, function (a) { a.$setPristine() }) }; f.$setUntouched = function () { r(g, function (a) { a.$setUntouched() }) }; f.$setSubmitted = function () {
            d.addClass(b, "ng-submitted");
            f.$submitted = !0; h.$setSubmitted()
        }
    } function jc(b) { b.$formatters.push(function (a) { return b.$isEmpty(a) ? a : a.toString() }) } function jb(b, a, c, d, e, f) {
        var g = z(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 = N(e)); (d.$viewValue !== e || "" === e && d.$$hasNativeValidators) && d.$setViewValue(e, b) } }; if (e.hasEvent("input")) a.on("input",
        l); else { var k, n = 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 || n(a, this, this.value) }); if (e.hasEvent("paste")) a.on("paste cut", n) } a.on("change", l); d.$render = function () { a.val(d.$isEmpty(d.$viewValue) ? "" : d.$viewValue) }
    } function Mb(b, a) {
        return function (c, d) {
            var e, f; if (ga(c)) return c; if (C(c)) {
                '"' == c.charAt(0) && '"' == c.charAt(c.length - 1) && (c = c.substring(1, c.length - 1)); if (Nf.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 }, r(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 kb(b, a, c, d) {
        return function (e, f, g, h, l, k, n) {
            function p(a) { return a && !(a.getTime && a.getTime() !== a.getTime()) } function q(a) { return y(a) ? ga(a) ? a : c(a) : t } td(e, f, g, h);
            jb(e, f, g, h, l, k); var u = h && h.$options && h.$options.timezone, s; h.$$parserName = b; h.$parsers.push(function (b) { return h.$isEmpty(b) ? null : a.test(b) ? (b = c(b, s), "UTC" === u && b.setMinutes(b.getMinutes() - b.getTimezoneOffset()), b) : t }); h.$formatters.push(function (a) { if (a && !ga(a)) throw Nb("datefmt", a); if (p(a)) { if ((s = a) && "UTC" === u) { var b = 6E4 * s.getTimezoneOffset(); s = new Date(s.getTime() + b) } return n("date")(a, d, u) } s = null; return "" }); if (y(g.min) || g.ngMin) {
                var r; h.$validators.min = function (a) { return !p(a) || x(r) || c(a) >= r };
                g.$observe("min", function (a) { r = q(a); h.$validate() })
            } if (y(g.max) || g.ngMax) { var v; h.$validators.max = function (a) { return !p(a) || x(v) || c(a) <= v }; g.$observe("max", function (a) { v = q(a); h.$validate() }) }
        }
    } function td(b, a, c, d) { (d.$$hasNativeValidators = J(a[0].validity)) && d.$parsers.push(function (b) { var c = a.prop("validity") || {}; return c.badInput && !c.typeMismatch ? t : b }) } function ud(b, a, c, d, e) { if (y(d)) { b = b(d); if (!b.constant) throw R("ngModel")("constexpr", c, d); return b(a) } return e } function kc(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], n = 0; n < b.length; n++) if (e == b[n]) continue a; c.push(e) } return c } function e(a) { if (!H(a)) { if (C(a)) return a.split(" "); if (J(a)) { var b = []; r(a, function (a, c) { a && (b = b.concat(c.split(" "))) }); return b } } return a } return {
                restrict: "AC", link: function (f, g, h) {
                    function l(a, b) { var c = g.data("$classCounts") || {}, d = []; r(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 (!n) { var u = l(k, 1); h.$addClass(u) } else if (!ha(b, n)) { var s = e(n), u = d(k, s), k = d(s, k), u = l(u, 1), k = l(k, -1); u && u.length && c.addClass(g, u); k && k.length && c.removeClass(g, k) } } n = sa(b)
                    } var n; 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 sd(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 ? "-" + vc(b, "-") : ""; a(lb + b, !0 === c); a(vd + b, !1 === c) } var d = b.ctrl, e = b.$element, f = {}, g = b.set, h = b.unset, l = b.parentForm, k = b.$animate; f[vd] = !(f[lb] = e.hasClass(lb)); d.$setValidity = function (b, e, f) {
            e === t ? (d.$pending || (d.$pending = {}), g(d.$pending, b, f)) : (d.$pending && h(d.$pending, b, f), wd(d.$pending) && (d.$pending = t)); Wa(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(xd,
            !0), d.$valid = d.$invalid = t, c("", null)) : (a(xd, !1), d.$valid = wd(d.$error), d.$invalid = !d.$valid, c("", d.$valid)); e = d.$pending && d.$pending[b] ? t : d.$error[b] ? !1 : d.$$success[b] ? !0 : null; c(b, e); l.$setValidity(b, e, d)
        }
    } function wd(b) { if (b) for (var a in b) return !1; return !0 } var Of = /^\/(.+)\/([a-z]*)$/, z = function (b) { return C(b) ? b.toLowerCase() : b }, tc = Object.prototype.hasOwnProperty, ub = function (b) { return C(b) ? b.toUpperCase() : b }, Qa, A, ta, Za = [].slice, qf = [].splice, Pf = [].push, Ca = Object.prototype.toString, Ja = R("ng"), ca = Q.angular ||
    (Q.angular = {}), cb, ob = 0; Qa = W.documentMode; E.$inject = []; ra.$inject = []; var H = Array.isArray, N = function (b) { return C(b) ? b.trim() : b }, gd = function (b) { return b.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g, "\\$1").replace(/\x08/g, "\\x08") }, bb = function () { if (y(bb.isActive_)) return bb.isActive_; var b = !(!W.querySelector("[ng-csp]") && !W.querySelector("[data-ng-csp]")); if (!b) try { new Function("") } catch (a) { b = !0 } return bb.isActive_ = b }, rb = ["ng-", "data-ng-", "ng:", "x-ng-"], Md = /[A-Z]/g, wc = !1, Qb, qa = 1, pb = 3, Qd = {
        full: "1.3.15", major: 1,
        minor: 3, dot: 15, codeName: "locality-filtration"
    }; T.expando = "ng339"; var zb = T.cache = {}, hf = 1; T._data = function (b) { return this.cache[b[this.expando]] || {} }; var cf = /([\:\-\_]+(.))/g, df = /^moz([A-Z])/, Qf = { mouseleave: "mouseout", mouseenter: "mouseover" }, Tb = R("jqLite"), gf = /^<(\w+)\s*\/?>(?:<\/\1>|)$/, Sb = /<|&#?\w+;/, ef = /<([\w:]+)/, ff = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, ja = {
        option: [1, '<select multiple="multiple">', "</select>"], thead: [1, "<table>", "</table>"], col: [2, "<table><colgroup>",
        "</colgroup></table>"], tr: [2, "<table><tbody>", "</tbody></table>"], td: [3, "<table><tbody><tr>", "</tr></tbody></table>"], _default: [0, "", ""]
    }; ja.optgroup = ja.option; ja.tbody = ja.tfoot = ja.colgroup = ja.caption = ja.thead; ja.th = ja.td; var Ka = T.prototype = {
        ready: function (b) { function a() { c || (c = !0, b()) } var c = !1; "complete" === W.readyState ? setTimeout(a) : (this.on("DOMContentLoaded", a), T(Q).on("load", a)) }, toString: function () { var b = []; r(this, function (a) { b.push("" + a) }); return "[" + b.join(", ") + "]" }, eq: function (b) {
            return 0 <=
            b ? A(this[b]) : A(this[this.length + b])
        }, length: 0, push: Pf, sort: [].sort, splice: [].splice
    }, Eb = {}; r("multiple selected checked disabled readOnly required open".split(" "), function (b) { Eb[z(b)] = b }); var Oc = {}; r("input select option textarea button form details".split(" "), function (b) { Oc[b] = !0 }); var Pc = { ngMinlength: "minlength", ngMaxlength: "maxlength", ngMin: "min", ngMax: "max", ngPattern: "pattern" }; r({ data: Vb, removeData: xb }, function (b, a) { T[a] = b }); r({
        data: Vb, inheritedData: Db, scope: function (b) {
            return A.data(b, "$scope") ||
            Db(b.parentNode || b, ["$isolateScope", "$scope"])
        }, isolateScope: function (b) { return A.data(b, "$isolateScope") || A.data(b, "$isolateScopeNoTemplate") }, controller: Kc, injector: function (b) { return Db(b, "$injector") }, removeAttr: function (b, a) { b.removeAttribute(a) }, hasClass: Ab, css: function (b, a, c) { a = db(a); if (y(c)) b.style[a] = c; else return b.style[a] }, attr: function (b, a, c) {
            var d = z(a); if (Eb[d]) if (y(c)) c ? (b[a] = !0, b.setAttribute(a, d)) : (b[a] = !1, b.removeAttribute(d)); else return b[a] || (b.attributes.getNamedItem(a) || E).specified ?
                    d : t; else if (y(c)) b.setAttribute(a, c); else if (b.getAttribute) return b = b.getAttribute(a, 2), null === b ? t : b
        }, prop: function (b, a, c) { if (y(c)) b[a] = c; else return b[a] }, text: function () { function b(a, b) { if (x(b)) { var d = a.nodeType; return d === qa || d === pb ? a.textContent : "" } a.textContent = b } b.$dv = ""; return b }(), val: function (b, a) { if (x(a)) { if (b.multiple && "select" === va(b)) { var c = []; r(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 (x(a)) return b.innerHTML;
            wb(b, !0); b.innerHTML = a
        }, empty: Lc
    }, function (b, a) { T.prototype[a] = function (a, d) { var e, f, g = this.length; if (b !== Lc && (2 == b.length && b !== Ab && b !== Kc ? a : d) === t) { if (J(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 === t ? 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 } }); r({
        removeData: xb, on: function a(c, d, e, f) {
            if (y(f)) throw Tb("onargs"); if (Gc(c)) {
                var g = yb(c, !0); f = g.events; var h = g.handle; h || (h =
                g.handle = lf(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, Qf[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: Jc, one: function (a, c, d) { a = A(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; wb(a); r(new T(c), function (c) {
                d ? e.insertBefore(c, d.nextSibling) : e.replaceChild(c,
                a); d = c
            })
        }, children: function (a) { var c = []; r(a.childNodes, function (a) { a.nodeType === qa && c.push(a) }); return c }, contents: function (a) { return a.contentDocument || a.childNodes || [] }, append: function (a, c) { var d = a.nodeType; if (d === qa || 11 === d) { c = new T(c); for (var d = 0, e = c.length; d < e; d++) a.appendChild(c[d]) } }, prepend: function (a, c) { if (a.nodeType === qa) { var d = a.firstChild; r(new T(c), function (c) { a.insertBefore(c, d) }) } }, wrap: function (a, c) { c = A(c).eq(0).clone()[0]; var d = a.parentNode; d && d.replaceChild(c, a); c.appendChild(a) },
        remove: Mc, detach: function (a) { Mc(a, !0) }, after: function (a, c) { var d = a, e = a.parentNode; c = new T(c); for (var f = 0, g = c.length; f < g; f++) { var h = c[f]; e.insertBefore(h, d.nextSibling); d = h } }, addClass: Cb, removeClass: Bb, toggleClass: function (a, c, d) { c && r(c.split(" "), function (c) { var f = d; x(f) && (f = !Ab(a, c)); (f ? Cb : Bb)(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 = yb(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: E, type: g, target: a }, c.type && (e = w(e, c)), c = sa(h), f = d ? [e].concat(d) : [e], r(c, function (c) {
                e.isImmediatePropagationStopped() || c.apply(a,
                f)
            })
        }
    }, function (a, c) { T.prototype[c] = function (c, e, f) { for (var g, h = 0, l = this.length; h < l; h++) x(g) ? (g = a(this[h], c, e, f), y(g) && (g = A(g))) : Ic(g, a(this[h], c, e, f)); return y(g) ? g : this }; T.prototype.bind = T.prototype.on; T.prototype.unbind = T.prototype.off }); eb.prototype = { put: function (a, c) { this[Ma(a, this.nextUid)] = c }, get: function (a) { return this[Ma(a, this.nextUid)] }, remove: function (a) { var c = this[a = Ma(a, this.nextUid)]; delete this[a]; return c } }; var Rc = /^function\s*[^\(]*\(\s*([^\)]*)\)/m, Rf = /,/, Sf = /^\s*(_?)(\S+?)\1\s*$/,
    Qc = /((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg, Fa = R("$injector"); ab.$$annotate = function (a, c, d) { var e; if ("function" === typeof a) { if (!(e = a.$inject)) { e = []; if (a.length) { if (c) throw C(d) && d || (d = a.name || mf(a)), Fa("strictdi", d); c = a.toString().replace(Qc, ""); c = c.match(Rc); r(c[1].split(Rf), function (a) { a.replace(Sf, function (a, c, d) { e.push(d) }) }) } a.$inject = e } } else H(a) ? (c = a.length - 1, sb(a[c], "fn"), e = a.slice(0, c)) : sb(a, "fn", !0); return e }; var Tf = R("$animate"), Ce = ["$provide", function (a) {
        this.$$selectors = {}; this.register = function (c,
        d) { var e = c + "-animation"; if (c && "." != c.charAt(0)) throw Tf("notcsel", c); this.$$selectors[c.substr(1)] = e; a.factory(e, d) }; this.classNameFilter = function (a) { 1 === arguments.length && (this.$$classNameFilter = a instanceof RegExp ? a : null); return this.$$classNameFilter }; this.$get = ["$$q", "$$asyncCallback", "$rootScope", function (a, d, e) {
            function f(d) { var f, g = a.defer(); g.promise.$$cancelFn = function () { f && f() }; e.$$postDigest(function () { f = d(function () { g.resolve() }) }); return g.promise } function g(a, c) {
                var d = [], e = [], f = ia();
                r((a.attr("class") || "").split(/\s+/), function (a) { f[a] = !0 }); r(c, function (a, c) { var g = f[c]; !1 === a && g ? e.push(c) : !0 !== a || g || d.push(c) }); return 0 < d.length + e.length && [d.length ? d : null, e.length ? e : null]
            } function h(a, c, d) { for (var e = 0, f = c.length; e < f; ++e) a[c[e]] = d } function l() { n || (n = a.defer(), d(function () { n.resolve(); n = null })); return n.promise } function k(a, c) { if (ca.isObject(c)) { var d = w(c.from || {}, c.to || {}); a.css(d) } } var n; return {
                animate: function (a, c, d) { k(a, { from: c, to: d }); return l() }, enter: function (a, c, d, e) {
                    k(a,
                    e); d ? d.after(a) : c.prepend(a); return l()
                }, leave: function (a, c) { k(a, c); a.remove(); return l() }, move: function (a, c, d, e) { return this.enter(a, c, d, e) }, addClass: function (a, c, d) { return this.setClass(a, c, [], d) }, $$addClassImmediately: function (a, c, d) { a = A(a); c = C(c) ? c : H(c) ? c.join(" ") : ""; r(a, function (a) { Cb(a, c) }); k(a, d); return l() }, removeClass: function (a, c, d) { return this.setClass(a, [], c, d) }, $$removeClassImmediately: function (a, c, d) { a = A(a); c = C(c) ? c : H(c) ? c.join(" ") : ""; r(a, function (a) { Bb(a, c) }); k(a, d); return l() }, setClass: function (a,
                c, d, e) { var k = this, l = !1; a = A(a); var m = a.data("$$animateClasses"); m ? e && m.options && (m.options = ca.extend(m.options || {}, e)) : (m = { classes: {}, options: e }, l = !0); e = m.classes; c = H(c) ? c : c.split(" "); d = H(d) ? d : d.split(" "); h(e, c, !0); h(e, d, !1); l && (m.promise = f(function (c) { var d = a.data("$$animateClasses"); a.removeData("$$animateClasses"); if (d) { var e = g(a, d.classes); e && k.$$setClassImmediately(a, e[0], e[1], d.options) } c() }), a.data("$$animateClasses", m)); return m.promise }, $$setClassImmediately: function (a, c, d, e) {
                    c && this.$$addClassImmediately(a,
                    c); d && this.$$removeClassImmediately(a, d); k(a, e); return l()
                }, enabled: E, cancel: E
            }
        }]
    }], la = R("$compile"); yc.$inject = ["$provide", "$$sanitizeUriProvider"]; var Sc = /^((?:x|data)[\:\-_])/i, rf = R("$controller"), Wc = "application/json", $b = { "Content-Type": Wc + ";charset=utf-8" }, tf = /^\[|^\{(?!\{)/, uf = { "[": /]$/, "{": /}$/ }, sf = /^\)\]\}',?\n/, ac = R("$interpolate"), Uf = /^([^\?#]*)(\?([^#]*))?(#(.*))?$/, xf = { http: 80, https: 443, ftp: 21 }, Gb = R("$location"), Vf = {
        $$html5: !1, $$replace: !1, absUrl: Hb("$$absUrl"), url: function (a) {
            if (x(a)) return this.$$url;
            var c = Uf.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: Hb("$$protocol"), host: Hb("$$host"), port: Hb("$$port"), path: dd("$$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 (C(a) || Y(a)) a = a.toString(), this.$$search = sc(a); else if (J(a)) a = Da(a, {}), r(a, function (c, e) { null == c && delete a[e] }), this.$$search =
                a; else throw Gb("isrcharg"); break; default: x(c) || null === c ? delete this.$$search[a] : this.$$search[a] = c
            } this.$$compose(); return this
        }, hash: dd("$$hash", function (a) { return null !== a ? a.toString() : "" }), replace: function () { this.$$replace = !0; return this }
    }; r([cd, ec, dc], function (a) { a.prototype = Object.create(Vf); a.prototype.state = function (c) { if (!arguments.length) return this.$$state; if (a !== dc || !this.$$html5) throw Gb("nostate"); this.$$state = x(c) ? null : c; return this } }); var na = R("$parse"), Wf = Function.prototype.call,
    Xf = Function.prototype.apply, Yf = Function.prototype.bind, mb = ia(); r({ "null": function () { return null }, "true": function () { return !0 }, "false": function () { return !1 }, undefined: function () { } }, function (a, c) { a.constant = a.literal = a.sharedGetter = !0; mb[c] = a }); mb["this"] = function (a) { return a }; mb["this"].sharedGetter = !0; var nb = w(ia(), {
        "+": function (a, c, d, e) { d = d(a, c); e = e(a, c); return y(d) ? y(e) ? d + e : d : y(e) ? e : t }, "-": function (a, c, d, e) { d = d(a, c); e = e(a, c); return (y(d) ? d : 0) - (y(e) ? e : 0) }, "*": function (a, c, d, e) { return d(a, c) * e(a, c) },
        "/": function (a, c, d, e) { return d(a, c) / e(a, c) }, "%": function (a, c, d, e) { return d(a, c) % e(a, c) }, "===": function (a, c, d, e) { return d(a, c) === e(a, c) }, "!==": function (a, c, d, e) { return d(a, c) !== e(a, c) }, "==": function (a, c, d, e) { return d(a, c) == e(a, c) }, "!=": function (a, c, d, e) { return d(a, c) != e(a, c) }, "<": function (a, c, d, e) { return d(a, c) < e(a, c) }, ">": function (a, c, d, e) { return d(a, c) > e(a, c) }, "<=": function (a, c, d, e) { return d(a, c) <= e(a, c) }, ">=": function (a, c, d, e) { return d(a, c) >= e(a, c) }, "&&": function (a, c, d, e) { return d(a, c) && e(a, c) },
        "||": function (a, c, d, e) { return d(a, c) || e(a, c) }, "!": function (a, c, d) { return !d(a, c) }, "=": !0, "|": !0
    }), Zf = { n: "\n", f: "\f", r: "\r", t: "\t", v: "\v", "'": "'", '"': '"' }, hc = function (a) { this.options = a }; hc.prototype = {
        constructor: hc, 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 = nb[c], f = nb[d]; nb[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 = y(c) ? "s " + c + "-" + this.index + " [" + this.text.substring(c, d) + "]" : " " + d; throw na("lexerr", a, c, this.text); }, readNumber: function () {
            for (var a = "", c = this.index; this.index <
            this.text.length;) { var d = z(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 += Zf[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 ib = function (a, c, d) { this.lexer = a; this.$filter = c; this.options = d }; ib.ZERO = w(function () { return 0 }, { sharedGetter: !0, constant: !0 }); ib.prototype = {
        constructor: ib, parse: function (a) {
            this.text = a; this.tokens = this.lexer.lex(a); a = this.statements(); 0 !== this.tokens.length && this.throwError("is an unexpected token", this.tokens[0]);
            a.literal = !!a.literal; a.constant = !!a.constant; return a
        }, primary: function () {
            var a; this.expect("(") ? (a = this.filterChain(), this.consume(")")) : this.expect("[") ? a = this.arrayDeclaration() : this.expect("{") ? a = this.object() : this.peek().identifier && this.peek().text in mb ? a = mb[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, d; c = this.expect("(", "[", ".") ;) "(" === c.text ? (a = this.functionCall(a,
            d), d = null) : "[" === c.text ? (d = a, a = this.objectIndex(a)) : "." === c.text ? (d = a, a = this.fieldAccess(a)) : this.throwError("IMPOSSIBLE"); return a
        }, throwError: function (a, c) { throw na("syntax", c.text, a, c.index + 1, this.text, this.text.substring(c.index)); }, peekToken: function () { if (0 === this.tokens.length) throw na("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 }, consume: function (a) { if (0 === this.tokens.length) throw na("ueoe", this.text); var c = this.expect(a); c || this.throwError("is unexpected, expecting [" + a + "]", this.peek()); return c }, unaryFn: function (a, c) { var d = nb[a]; return w(function (a, f) { return d(a, f, c) }, { constant: c.constant, inputs: [c] }) }, binaryFn: function (a, c, d, e) {
            var f = nb[c]; return w(function (c, e) { return f(c, e, a, d) }, {
                constant: a.constant &&
                d.constant, inputs: !e && [a, d]
            })
        }, identifier: function () { for (var a = this.consume().text; this.peek(".") && this.peekAhead(1).identifier && !this.peekAhead(2, "(") ;) a += this.consume().text + this.consume().text; return zf(a, this.options, this.text) }, constant: function () { var a = this.consume().value; return w(function () { return a }, { constant: !0, literal: !0 }) }, statements: function () {
            for (var a = []; ;) if (0 < this.tokens.length && !this.peek("}", ")", ";", "]") && a.push(this.filterChain()), !this.expect(";")) return 1 === a.length ? a[0] : function (c,
            d) { for (var e, f = 0, g = a.length; f < g; f++) e = a[f](c, d); return e }
        }, filterChain: function () { for (var a = this.expression() ; this.expect("|") ;) a = this.filter(a); return a }, filter: function (a) { var c = this.$filter(this.consume().text), d, e; if (this.peek(":")) for (d = [], e = []; this.expect(":") ;) d.push(this.expression()); var f = [a].concat(d || []); return w(function (f, h) { var l = a(f, h); if (e) { e[0] = l; for (l = d.length; l--;) e[l + 1] = d[l](f, h); return c.apply(t, e) } return c(l) }, { constant: !c.$stateful && f.every(fc), inputs: !c.$stateful && f }) }, expression: function () { return this.assignment() },
        assignment: function () { var a = this.ternary(), c, d; return (d = this.expect("=")) ? (a.assign || this.throwError("implies assignment but [" + this.text.substring(0, d.index) + "] can not be assigned to", d), c = this.ternary(), w(function (d, f) { return a.assign(d, c(d, f), f) }, { inputs: [a, c] })) : a }, ternary: function () { var a = this.logicalOR(), c; if (this.expect("?") && (c = this.assignment(), this.consume(":"))) { var d = this.assignment(); return w(function (e, f) { return a(e, f) ? c(e, f) : d(e, f) }, { constant: a.constant && c.constant && d.constant }) } return a },
        logicalOR: function () { for (var a = this.logicalAND(), c; c = this.expect("||") ;) a = this.binaryFn(a, c.text, this.logicalAND(), !0); return a }, logicalAND: function () { for (var a = this.equality(), c; c = this.expect("&&") ;) a = this.binaryFn(a, c.text, this.equality(), !0); return a }, equality: function () { for (var a = this.relational(), c; c = this.expect("==", "!=", "===", "!==") ;) a = this.binaryFn(a, c.text, this.relational()); return a }, relational: function () {
            for (var a = this.additive(), c; c = this.expect("<", ">", "<=", ">=") ;) a = this.binaryFn(a, c.text,
            this.additive()); return a
        }, additive: function () { for (var a = this.multiplicative(), c; c = this.expect("+", "-") ;) a = this.binaryFn(a, c.text, this.multiplicative()); return a }, multiplicative: function () { for (var a = this.unary(), c; c = this.expect("*", "/", "%") ;) a = this.binaryFn(a, c.text, this.unary()); return a }, unary: function () { var a; return this.expect("+") ? this.primary() : (a = this.expect("-")) ? this.binaryFn(ib.ZERO, a.text, this.unary()) : (a = this.expect("!")) ? this.unaryFn(a.text, this.unary()) : this.primary() }, fieldAccess: function (a) {
            var c =
            this.identifier(); return w(function (d, e, f) { d = f || a(d, e); return null == d ? t : c(d) }, { assign: function (d, e, f) { var g = a(d, f); g || a.assign(d, g = {}, f); return c.assign(g, e) } })
        }, objectIndex: function (a) { var c = this.text, d = this.expression(); this.consume("]"); return w(function (e, f) { var g = a(e, f), h = d(e, f); ua(h, c); return g ? oa(g[h], c) : t }, { assign: function (e, f, g) { var h = ua(d(e, g), c), l = oa(a(e, g), c); l || a.assign(e, l = {}, g); return l[h] = f } }) }, functionCall: function (a, c) {
            var d = []; if (")" !== this.peekToken().text) {
                do d.push(this.expression());
                while (this.expect(","))
            } this.consume(")"); var e = this.text, f = d.length ? [] : null; return function (g, h) { var l = c ? c(g, h) : y(c) ? t : g, k = a(g, h, l) || E; if (f) for (var n = d.length; n--;) f[n] = oa(d[n](g, h), e); oa(l, e); if (k) { if (k.constructor === k) throw na("isecfn", e); if (k === Wf || k === Xf || k === Yf) throw na("isecff", e); } l = k.apply ? k.apply(l, f) : k(f[0], f[1], f[2], f[3], f[4]); f && (f.length = 0); return oa(l, e) }
        }, arrayDeclaration: function () {
            var a = []; if ("]" !== this.peekToken().text) {
                do { if (this.peek("]")) break; a.push(this.expression()) } while (this.expect(","))
            } this.consume("]"); return w(function (c, d) { for (var e = [], f = 0, g = a.length; f < g; f++) e.push(a[f](c, d)); return e }, { literal: !0, constant: a.every(fc), inputs: a })
        }, object: function () {
            var a = [], c = []; if ("}" !== this.peekToken().text) { do { if (this.peek("}")) break; var d = this.consume(); d.constant ? a.push(d.value) : d.identifier ? a.push(d.text) : this.throwError("invalid key", d); this.consume(":"); c.push(this.expression()) } while (this.expect(",")) } this.consume("}"); return w(function (d, f) {
                for (var g = {}, h = 0, l = c.length; h < l; h++) g[a[h]] =
                c[h](d, f); return g
            }, { literal: !0, constant: c.every(fc), inputs: c })
        }
    }; var Bf = ia(), Af = ia(), Cf = Object.prototype.valueOf, Ba = R("$sce"), pa = { HTML: "html", CSS: "css", URL: "url", RESOURCE_URL: "resourceUrl", JS: "js" }, la = R("$compile"), $ = W.createElement("a"), id = Aa(Q.location.href); Fc.$inject = ["$provide"]; jd.$inject = ["$locale"]; ld.$inject = ["$locale"]; var od = ".", Mf = {
        yyyy: U("FullYear", 4), yy: U("FullYear", 2, 0, !0), y: U("FullYear", 1), MMMM: Jb("Month"), MMM: Jb("Month", !0), MM: U("Month", 2, 1), M: U("Month", 1, 1), dd: U("Date", 2), d: U("Date",
        1), HH: U("Hours", 2), H: U("Hours", 1), hh: U("Hours", 2, -12), h: U("Hours", 1, -12), mm: U("Minutes", 2), m: U("Minutes", 1), ss: U("Seconds", 2), s: U("Seconds", 1), sss: U("Milliseconds", 3), EEEE: Jb("Day"), EEE: Jb("Day", !0), a: function (a, c) { return 12 > a.getHours() ? c.AMPMS[0] : c.AMPMS[1] }, Z: function (a) { a = -1 * a.getTimezoneOffset(); return a = (0 <= a ? "+" : "") + (Ib(Math[0 < a ? "floor" : "ceil"](a / 60), 2) + Ib(Math.abs(a % 60), 2)) }, ww: qd(2), w: qd(1), G: ic, GG: ic, GGG: ic, GGGG: function (a, c) { return 0 >= a.getFullYear() ? c.ERANAMES[0] : c.ERANAMES[1] }
    }, Lf = /((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/,
    Kf = /^\-?\d+$/; kd.$inject = ["$locale"]; var Hf = ea(z), If = ea(ub); md.$inject = ["$parse"]; var Td = ea({ restrict: "E", compile: function (a, c) { if (!c.href && !c.xlinkHref && !c.name) return function (a, c) { if ("a" === c[0].nodeName.toLowerCase()) { var f = "[object SVGAnimatedString]" === Ca.call(c.prop("href")) ? "xlink:href" : "href"; c.on("click", function (a) { c.attr(f) || a.preventDefault() }) } } } }), vb = {}; r(Eb, function (a, c) {
        if ("multiple" != a) {
            var d = xa("ng-" + c); vb[d] = function () {
                return {
                    restrict: "A", priority: 100, link: function (a, f, g) {
                        a.$watch(g[d],
                        function (a) { g.$set(c, !!a) })
                    }
                }
            }
        }
    }); r(Pc, function (a, c) { vb[c] = function () { return { priority: 100, link: function (a, e, f) { if ("ngPattern" === c && "/" == f.ngPattern.charAt(0) && (e = f.ngPattern.match(Of))) { f.$set("ngPattern", new RegExp(e[1], e[2])); return } a.$watch(f[c], function (a) { f.$set(c, a) }) } } } }); r(["src", "srcset", "href"], function (a) {
        var c = xa("ng-" + a); vb[c] = function () {
            return {
                priority: 99, link: function (d, e, f) {
                    var g = a, h = a; "href" === a && "[object SVGAnimatedString]" === Ca.call(e.prop("href")) && (h = "xlinkHref", f.$attr[h] = "xlink:href",
                    g = null); f.$observe(c, function (c) { c ? (f.$set(h, c), Qa && g && e.prop(g, f[h])) : "href" === a && f.$set(h, null) })
                }
            }
        }
    }); var Kb = { $addControl: E, $$renameControl: function (a, c) { a.$name = c }, $removeControl: E, $setValidity: E, $setDirty: E, $setPristine: E, $setSubmitted: E }; rd.$inject = ["$element", "$attrs", "$scope", "$animate", "$interpolate"]; var yd = function (a) {
        return ["$timeout", function (c) {
            return {
                name: "form", restrict: a ? "EAC" : "E", controller: rd, compile: function (d, e) {
                    d.addClass(Ra).addClass(lb); var f = e.name ? "name" : a && e.ngForm ? "ngForm" :
                    !1; return {
                        pre: function (a, d, e, k) {
                            if (!("action" in e)) { var n = function (c) { a.$apply(function () { k.$commitViewValue(); k.$setSubmitted() }); c.preventDefault() }; d[0].addEventListener("submit", n, !1); d.on("$destroy", function () { c(function () { d[0].removeEventListener("submit", n, !1) }, 0, !1) }) } var p = k.$$parentForm; f && (hb(a, null, k.$name, k, k.$name), e.$observe(f, function (c) { k.$name !== c && (hb(a, null, k.$name, t, k.$name), p.$$renameControl(k, c), hb(a, null, k.$name, k, k.$name)) })); d.on("$destroy", function () {
                                p.$removeControl(k);
                                f && hb(a, null, e[f], t, k.$name); w(k, Kb)
                            })
                        }
                    }
                }
            }
        }]
    }, Ud = yd(), ge = yd(!0), Nf = /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/, $f = /^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/, ag = /^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i, bg = /^\s*(\-|\+)?(\d+|(\d*(\.\d*)))\s*$/, zd = /^(\d{4})-(\d{2})-(\d{2})$/, Ad = /^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/, lc = /^(\d{4})-W(\d\d)$/, Bd = /^(\d{4})-(\d\d)$/,
    Cd = /^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/, Dd = {
        text: function (a, c, d, e, f, g) { jb(a, c, d, e, f, g); jc(e) }, date: kb("date", zd, Mb(zd, ["yyyy", "MM", "dd"]), "yyyy-MM-dd"), "datetime-local": kb("datetimelocal", Ad, Mb(Ad, "yyyy MM dd HH mm ss sss".split(" ")), "yyyy-MM-ddTHH:mm:ss.sss"), time: kb("time", Cd, Mb(Cd, ["HH", "mm", "ss", "sss"]), "HH:mm:ss.sss"), week: kb("week", lc, function (a, c) {
            if (ga(a)) return a; if (C(a)) {
                lc.lastIndex = 0; var d = lc.exec(a); if (d) {
                    var e = +d[1], f = +d[2], g = d = 0, h = 0, l = 0, k = pd(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: kb("month", Bd, Mb(Bd, ["yyyy", "MM"]), "yyyy-MM"), number: function (a, c, d, e, f, g) {
            td(a, c, d, e); jb(a, c, d, e, f, g); e.$$parserName = "number"; e.$parsers.push(function (a) { return e.$isEmpty(a) ? null : bg.test(a) ? parseFloat(a) : t }); e.$formatters.push(function (a) { if (!e.$isEmpty(a)) { if (!Y(a)) throw Nb("numfmt", a); a = a.toString() } return a }); if (y(d.min) || d.ngMin) {
                var h; e.$validators.min = function (a) {
                    return e.$isEmpty(a) ||
                    x(h) || a >= h
                }; d.$observe("min", function (a) { y(a) && !Y(a) && (a = parseFloat(a, 10)); h = Y(a) && !isNaN(a) ? a : t; e.$validate() })
            } if (y(d.max) || d.ngMax) { var l; e.$validators.max = function (a) { return e.$isEmpty(a) || x(l) || a <= l }; d.$observe("max", function (a) { y(a) && !Y(a) && (a = parseFloat(a, 10)); l = Y(a) && !isNaN(a) ? a : t; e.$validate() }) }
        }, url: function (a, c, d, e, f, g) { jb(a, c, d, e, f, g); jc(e); e.$$parserName = "url"; e.$validators.url = function (a, c) { var d = a || c; return e.$isEmpty(d) || $f.test(d) } }, email: function (a, c, d, e, f, g) {
            jb(a, c, d, e, f, g); jc(e);
            e.$$parserName = "email"; e.$validators.email = function (a, c) { var d = a || c; return e.$isEmpty(d) || ag.test(d) }
        }, radio: function (a, c, d, e) { x(d.name) && c.attr("name", ++ob); 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 = ud(l, a, "ngTrueValue", d.ngTrueValue, !0), n = ud(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 ha(a, k) }); e.$parsers.push(function (a) { return a ? k : n })
        }, hidden: E, button: E, submit: E, reset: E, file: E
    }, zc = ["$browser", "$sniffer", "$filter", "$parse", function (a, c, d, e) { return { restrict: "E", require: ["?ngModel"], link: { pre: function (f, g, h, l) { l[0] && (Dd[z(h.type)] || Dd.text)(f, g, h, l[0], c, a, d, e) } } } }], cg = /^(true|false|\d+)$/, ye = function () {
        return {
            restrict: "A", priority: 100, compile: function (a,
            c) { return cg.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) }) } }
        }
    }, Zd = ["$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 === t ? "" : a }) } } } }], ae = ["$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 === t ? "" : a })
                }
            }
        }
    }], $d = ["$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)) || "") }) } } } }], xe = ea({ restrict: "A", require: "ngModel", link: function (a, c, d, e) { e.$viewChangeListeners.push(function () { a.$eval(d.ngChange) }) } }),
    be = kc("", !0), de = kc("Odd", 0), ce = kc("Even", 1), ee = Ia({ compile: function (a, c) { c.$set("ngCloak", t); a.removeClass("ng-cloak") } }), fe = [function () { return { restrict: "A", scope: !0, controller: "@", priority: 500 } }], Ec = {}, dg = { blur: !0, focus: !0 }; r("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "), function (a) {
        var c = xa("ng-" + a); Ec[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 }) }; dg[a] && e.$$phase ? c.$evalAsync(f) : c.$apply(f) }) }
                }
            }
        }]
    }); var ie = ["$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 =
                    tb(h.clone), a.leave(k).then(function () { k = null }), h = null))
                })
            }
        }
    }], je = ["$templateRequest", "$anchorScroll", "$animate", "$sce", function (a, c, d, e) {
        return {
            restrict: "ECA", priority: 400, terminal: !0, transclude: "element", controller: ca.noop, compile: function (f, g) {
                var h = g.ngInclude || g.src, l = g.onload || "", k = g.autoscroll; return function (f, g, q, r, s) {
                    var t = 0, v, m, F, w = function () { m && (m.remove(), m = null); v && (v.$destroy(), v = null); F && (d.leave(F).then(function () { m = null }), m = F, F = null) }; f.$watch(e.parseAsResourceUrl(h), function (e) {
                        var h =
                        function () { !y(k) || k && !f.$eval(k) || c() }, m = ++t; e ? (a(e, !0).then(function (a) { if (m === t) { var c = f.$new(); r.template = a; a = s(c, function (a) { w(); d.enter(a, null, g).then(h) }); v = c; F = a; v.$emit("$includeContentLoaded", e); f.$eval(l) } }, function () { m === t && (w(), f.$emit("$includeContentError", e)) }), f.$emit("$includeContentRequested", e)) : (w(), r.template = null)
                    })
                }
            }
        }
    }], Ae = ["$compile", function (a) {
        return {
            restrict: "ECA", priority: -400, require: "ngInclude", link: function (c, d, e, f) {
                /SVG/.test(d[0].toString()) ? (d.empty(), a(Hc(f.template,
                W).childNodes)(c, function (a) { d.append(a) }, { futureParentElement: d })) : (d.html(f.template), a(d.contents())(c))
            }
        }
    }], ke = Ia({ priority: 450, compile: function () { return { pre: function (a, c, d) { a.$eval(d.ngInit) } } } }), we = 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 ? N(f) : f; e.$parsers.push(function (a) { if (!x(a)) { var c = []; a && r(a.split(h), function (a) { a && c.push(g ? N(a) : a) }); return c } }); e.$formatters.push(function (a) {
                    return H(a) ?
                    a.join(f) : t
                }); e.$isEmpty = function (a) { return !a || !a.length }
            }
        }
    }, lb = "ng-valid", vd = "ng-invalid", Ra = "ng-pristine", Lb = "ng-dirty", xd = "ng-pending", Nb = new R("ngModel"), eg = ["$scope", "$exceptionHandler", "$attrs", "$element", "$parse", "$animate", "$timeout", "$rootScope", "$q", "$interpolate", function (a, c, d, e, f, g, h, l, k, n) {
        this.$modelValue = this.$viewValue = Number.NaN; this.$$rawModelValue = t; 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 = t; this.$name = n(d.name || "", !1)(a); var p = f(d.ngModel), q = p.assign, u = p, s = q, M = null, v, m = this; this.$$setOptions = function (a) {
            if ((m.$options = a) && a.getterSetter) { var c = f(d.ngModel + "()"), g = f(d.ngModel + "($$$p)"); u = function (a) { var d = p(a); G(d) && (d = c(a)); return d }; s = function (a, c) { G(p(a)) ? g(a, { $$$p: m.$modelValue }) : q(a, m.$modelValue) } } else if (!p.assign) throw Nb("nonassign", d.ngModel, wa(e));
        }; this.$render = E; this.$isEmpty = function (a) { return x(a) || "" === a || null === a || a !== a }; var F = e.inheritedData("$formController") || Kb, w = 0; sd({ ctrl: this, $element: e, set: function (a, c) { a[c] = !0 }, unset: function (a, c) { delete a[c] }, parentForm: F, $animate: g }); this.$setPristine = function () { m.$dirty = !1; m.$pristine = !0; g.removeClass(e, Lb); g.addClass(e, Ra) }; this.$setDirty = function () { m.$dirty = !0; m.$pristine = !1; g.removeClass(e, Ra); g.addClass(e, Lb); F.$setDirty() }; this.$setUntouched = function () {
            m.$touched = !1; m.$untouched = !0; g.setClass(e,
            "ng-untouched", "ng-touched")
        }; this.$setTouched = function () { m.$touched = !0; m.$untouched = !1; g.setClass(e, "ng-touched", "ng-untouched") }; this.$rollbackViewValue = function () { h.cancel(M); m.$viewValue = m.$$lastCommittedViewValue; m.$render() }; this.$validate = function () { if (!Y(m.$modelValue) || !isNaN(m.$modelValue)) { var a = m.$$rawModelValue, c = m.$valid, d = m.$modelValue, e = m.$options && m.$options.allowInvalid; m.$$runValidators(a, m.$$lastCommittedViewValue, function (f) { e || c === f || (m.$modelValue = f ? a : t, m.$modelValue !== d && m.$$writeModelToScope()) }) } };
        this.$$runValidators = function (a, c, d) {
            function e() { var d = !0; r(m.$validators, function (e, f) { var h = e(a, c); d = d && h; g(f, h) }); return d ? !0 : (r(m.$asyncValidators, function (a, c) { g(c, null) }), !1) } function f() { var d = [], e = !0; r(m.$asyncValidators, function (f, h) { var k = f(a, c); if (!k || !G(k.then)) throw Nb("$asyncValidators", k); g(h, t); d.push(k.then(function () { g(h, !0) }, function (a) { e = !1; g(h, !1) })) }); d.length ? k.all(d).then(function () { h(e) }, E) : h(!0) } function g(a, c) { l === w && m.$setValidity(a, c) } function h(a) { l === w && d(a) } w++; var l =
            w; (function () { var a = m.$$parserName || "parse"; if (v === t) g(a, null); else return v || (r(m.$validators, function (a, c) { g(c, null) }), r(m.$asyncValidators, function (a, c) { g(c, null) })), g(a, v), v; return !0 })() ? e() ? f() : h(!1) : h(!1)
        }; this.$commitViewValue = function () { var a = m.$viewValue; h.cancel(M); if (m.$$lastCommittedViewValue !== a || "" === a && m.$$hasNativeValidators) m.$$lastCommittedViewValue = a, m.$pristine && this.$setDirty(), this.$$parseAndValidate() }; this.$$parseAndValidate = function () {
            var c = m.$$lastCommittedViewValue; if (v =
            x(c) ? t : !0) for (var d = 0; d < m.$parsers.length; d++) if (c = m.$parsers[d](c), x(c)) { v = !1; break } Y(m.$modelValue) && isNaN(m.$modelValue) && (m.$modelValue = u(a)); var e = m.$modelValue, f = m.$options && m.$options.allowInvalid; m.$$rawModelValue = c; f && (m.$modelValue = c, m.$modelValue !== e && m.$$writeModelToScope()); m.$$runValidators(c, m.$$lastCommittedViewValue, function (a) { f || (m.$modelValue = a ? c : t, m.$modelValue !== e && m.$$writeModelToScope()) })
        }; this.$$writeModelToScope = function () { s(a, m.$modelValue); r(m.$viewChangeListeners, function (a) { try { a() } catch (d) { c(d) } }) };
        this.$setViewValue = function (a, c) { m.$viewValue = a; m.$options && !m.$options.updateOnDefault || m.$$debounceViewValueCommit(c) }; this.$$debounceViewValueCommit = function (c) { var d = 0, e = m.$options; e && y(e.debounce) && (e = e.debounce, Y(e) ? d = e : Y(e[c]) ? d = e[c] : Y(e["default"]) && (d = e["default"])); h.cancel(M); d ? M = h(function () { m.$commitViewValue() }, d) : l.$$phase ? m.$commitViewValue() : a.$apply(function () { m.$commitViewValue() }) }; a.$watch(function () {
            var c = u(a); if (c !== m.$modelValue) {
                m.$modelValue = m.$$rawModelValue = c; v = t; for (var d =
                m.$formatters, e = d.length, f = c; e--;) f = d[e](f); m.$viewValue !== f && (m.$viewValue = m.$$lastCommittedViewValue = f, m.$render(), m.$$runValidators(c, f, E))
            } return c
        })
    }], ve = ["$rootScope", function (a) {
        return {
            restrict: "A", require: ["ngModel", "^?form", "^?ngModelOptions"], controller: eg, priority: 1, compile: function (c) {
                c.addClass(Ra).addClass("ng-untouched").addClass(lb); return {
                    pre: function (a, c, f, g) {
                        var h = g[0], l = g[1] || Kb; 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)) }) }
                }
            }
        }
    }], fg = /(\s+|^)default(\s+|$)/, ze = function () {
        return {
            restrict: "A", controller: ["$scope", "$attrs", function (a, c) {
                var d = this; this.$options = a.$eval(c.ngModelOptions); this.$options.updateOn !== t ? (this.$options.updateOnDefault =
                !1, this.$options.updateOn = N(this.$options.updateOn.replace(fg, function () { d.$options.updateOnDefault = !0; return " " }))) : this.$options.updateOnDefault = !0
            }]
        }
    }, le = Ia({ terminal: !0, priority: 1E3 }), me = ["$locale", "$interpolate", function (a, c) {
        var d = /{}/g, e = /^when(Minus)?(.+)$/; return {
            restrict: "EA", link: function (f, g, h) {
                function l(a) { g.text(a || "") } var k = h.count, n = h.$attr.when && g.attr(h.$attr.when), p = h.offset || 0, q = f.$eval(n) || {}, u = {}, n = c.startSymbol(), s = c.endSymbol(), t = n + k + "-" + p + s, v = ca.noop, m; r(h, function (a, c) {
                    var d =
                    e.exec(c); d && (d = (d[1] ? "-" : "") + z(d[2]), q[d] = g.attr(h.$attr[c]))
                }); r(q, function (a, e) { u[e] = c(a.replace(d, t)) }); f.$watch(k, function (c) { c = parseFloat(c); var d = isNaN(c); d || c in q || (c = a.pluralCat(c - p)); c === m || d && isNaN(m) || (v(), v = f.$watch(u[c], l), m = c) })
            }
        }
    }], ne = ["$parse", "$animate", function (a, c) {
        var d = R("ngRepeat"), e = function (a, c, d, e, k, n, p) { a[d] = e; k && (a[k] = n); a.$index = c; a.$first = 0 === c; a.$last = c === p - 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 n = k[1], p = k[2], q = k[3], u = k[4], k = n.match(/^(?:(\s*[\$\w]+)|\(\s*([\$\w]+)\s*,\s*([\$\w]+)\s*\))$/); if (!k) throw d("iidexp", n); var s = k[3] || k[1], y = k[2]; if (q && (!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(q) || /^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(q))) throw d("badident",
                q); var v, m, w, x, E = { $id: Ma }; u ? v = a(u) : (w = function (a, c) { return Ma(c) }, x = function (a) { return a }); return function (a, f, g, k, n) {
                    v && (m = function (c, d, e) { y && (E[y] = c); E[s] = d; E.$index = e; return v(a, E) }); var u = ia(); a.$watchCollection(p, function (g) {
                        var k, p, v = f[0], D, E = ia(), G, H, L, S, J, C, z; q && (a[q] = g); if (Sa(g)) J = g, p = m || w; else { p = m || x; J = []; for (z in g) g.hasOwnProperty(z) && "$" != z.charAt(0) && J.push(z); J.sort() } G = J.length; z = Array(G); for (k = 0; k < G; k++) if (H = g === J ? k : J[k], L = g[H], S = p(H, L, k), u[S]) C = u[S], delete u[S], E[S] = C, z[k] = C; else {
                            if (E[S]) throw r(z,
                            function (a) { a && a.scope && (u[a.id] = a) }), d("dupes", h, S, L); z[k] = { id: S, scope: t, clone: t }; E[S] = !0
                        } for (D in u) { C = u[D]; S = tb(C.clone); c.leave(S); if (S[0].parentNode) for (k = 0, p = S.length; k < p; k++) S[k].$$NG_REMOVED = !0; C.scope.$destroy() } for (k = 0; k < G; k++) if (H = g === J ? k : J[k], L = g[H], C = z[k], C.scope) { D = v; do D = D.nextSibling; while (D && D.$$NG_REMOVED); C.clone[0] != D && c.move(tb(C.clone), null, A(v)); v = C.clone[C.clone.length - 1]; e(C.scope, k, s, L, y, H, G) } else n(function (a, d) {
                            C.scope = d; var f = l.cloneNode(!1); a[a.length++] = f; c.enter(a,
                            null, A(v)); v = f; C.clone = a; E[C.id] = C; e(C.scope, k, s, L, y, H, G)
                        }); u = E
                    })
                }
            }
        }
    }], oe = ["$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" }) }) } } }], he = ["$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" }) }) } } }], pe = Ia(function (a, c, d) {
        a.$watchCollection(d.ngStyle,
        function (a, d) { d && a !== d && r(d, function (a, d) { c.css(d, "") }); a && c.css(a) })
    }), qe = ["$animate", function (a) {
        return {
            restrict: "EA", require: "ngSwitch", controller: ["$scope", function () { this.cases = {} }], link: function (c, d, e, f) {
                var g = [], h = [], l = [], k = [], n = 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 s = tb(h[d].clone); k[d].$destroy(); (l[d] = a.leave(s)).then(n(l, d)) } h.length = 0; k.length = 0; (g =
                    f.cases["!" + c] || f.cases["?"]) && r(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) }) })
                })
            }
        }
    }], re = Ia({ 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 }) } }), se = Ia({
        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 }) }
    }), ue = Ia({ restrict: "EAC", link: function (a, c, d, e, f) { if (!f) throw R("ngTransclude")("orphan", wa(c)); f(function (a) { c.empty(); c.append(a) }) } }), Vd = ["$templateCache", function (a) { return { restrict: "E", terminal: !0, compile: function (c, d) { "text/ng-template" == d.type && a.put(d.id, c[0].text) } } }], gg = R("ngOptions"), te = ea({ restrict: "A", terminal: !0 }), Wd = ["$compile", "$parse", function (a, c) {
        var d = /^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\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]+?))?$/,
        e = { $setViewValue: E }; return {
            restrict: "E", require: ["select", "?ngModel"], controller: ["$element", "$scope", "$attrs", function (a, c, d) {
                var l = this, k = {}, n = e, p; l.databound = d.ngModel; l.init = function (a, c, d) { n = a; p = d }; l.addOption = function (c, d) { La(c, '"option value"'); k[c] = !0; n.$viewValue == c && (a.val(c), p.parent() && p.remove()); d && d[0].hasAttribute("selected") && (d[0].selected = !0) }; l.removeOption = function (a) { this.hasOption(a) && (delete k[a], n.$viewValue === a && this.renderUnknownOption(a)) }; l.renderUnknownOption = function (c) {
                    c =
                    "? " + Ma(c) + " ?"; p.val(c); a.prepend(p); a.val(c); p.prop("selected", !0)
                }; l.hasOption = function (a) { return k.hasOwnProperty(a) }; c.$on("$destroy", function () { l.renderUnknownOption = E })
            }], link: function (e, g, h, l) {
                function k(a, c, d, e) { d.$render = function () { var a = d.$viewValue; e.hasOption(a) ? (C.parent() && C.remove(), c.val(a), "" === a && v.prop("selected", !0)) : x(a) && v ? c.val("") : e.renderUnknownOption(a) }; c.on("change", function () { a.$apply(function () { C.parent() && C.remove(); d.$setViewValue(c.val()) }) }) } function n(a, c, d) {
                    var e;
                    d.$render = function () { var a = new eb(d.$viewValue); r(c.find("option"), function (c) { c.selected = y(a.get(c.value)) }) }; a.$watch(function () { ha(e, d.$viewValue) || (e = sa(d.$viewValue), d.$render()) }); c.on("change", function () { a.$apply(function () { var a = []; r(c.find("option"), function (c) { c.selected && a.push(c.value) }); d.$setViewValue(a) }) })
                } function p(e, f, g) {
                    function h(a, c, d) { T[x] = d; G && (T[G] = c); return a(e, T) } function k(a) {
                        var c; if (u) if (I && H(a)) { c = new eb([]); for (var d = 0; d < a.length; d++) c.put(h(I, null, a[d]), !0) } else c =
                        new eb(a); else I && (a = h(I, null, a)); return function (d, e) { var f; f = I ? I : B ? B : z; return u ? y(c.remove(h(f, d, e))) : a === h(f, d, e) }
                    } function l() { m || (e.$$postDigest(p), m = !0) } function n(a, c, d) { a[c] = a[c] || 0; a[c] += d ? 1 : -1 } function p() {
                        m = !1; var a = { "": [] }, c = [""], d, l, s, t, v; s = g.$viewValue; t = L(e) || []; var B = G ? Object.keys(t).sort() : t, x, A, H, z, O = {}; v = k(s); var N = !1, U, W; Q = {}; for (z = 0; H = B.length, z < H; z++) {
                            x = z; if (G && (x = B[z], "$" === x.charAt(0))) continue; A = t[x]; d = h(J, x, A) || ""; (l = a[d]) || (l = a[d] = [], c.push(d)); d = v(x, A); N = N || d; A = h(C, x, A);
                            A = y(A) ? A : ""; W = I ? I(e, T) : G ? B[z] : z; I && (Q[W] = x); l.push({ id: W, label: A, selected: d })
                        } u || (w || null === s ? a[""].unshift({ id: "", label: "", selected: !N }) : N || a[""].unshift({ id: "?", label: "", selected: !0 })); x = 0; for (B = c.length; x < B; x++) {
                            d = c[x]; l = a[d]; R.length <= x ? (s = { element: E.clone().attr("label", d), label: l.label }, t = [s], R.push(t), f.append(s.element)) : (t = R[x], s = t[0], s.label != d && s.element.attr("label", s.label = d)); N = null; z = 0; for (H = l.length; z < H; z++) d = l[z], (v = t[z + 1]) ? (N = v.element, v.label !== d.label && (n(O, v.label, !1), n(O, d.label,
                            !0), N.text(v.label = d.label), N.prop("label", v.label)), v.id !== d.id && N.val(v.id = d.id), N[0].selected !== d.selected && (N.prop("selected", v.selected = d.selected), Qa && N.prop("selected", v.selected))) : ("" === d.id && w ? U = w : (U = F.clone()).val(d.id).prop("selected", d.selected).attr("selected", d.selected).prop("label", d.label).text(d.label), t.push(v = { element: U, label: d.label, id: d.id, selected: d.selected }), n(O, d.label, !0), N ? N.after(U) : s.element.append(U), N = U); for (z++; t.length > z;) d = t.pop(), n(O, d.label, !1), d.element.remove()
                        } for (; R.length >
                        x;) { l = R.pop(); for (z = 1; z < l.length; ++z) n(O, l[z].label, !1); l[0].element.remove() } r(O, function (a, c) { 0 < a ? q.addOption(c) : 0 > a && q.removeOption(c) })
                    } var v; if (!(v = s.match(d))) throw gg("iexp", s, wa(f)); var C = c(v[2] || v[1]), x = v[4] || v[6], A = / as /.test(v[0]) && v[1], B = A ? c(A) : null, G = v[5], J = c(v[3] || ""), z = c(v[2] ? v[1] : x), L = c(v[7]), I = v[8] ? c(v[8]) : null, Q = {}, R = [[{ element: f, label: "" }]], T = {}; w && (a(w)(e), w.removeClass("ng-scope"), w.remove()); f.empty(); f.on("change", function () {
                        e.$apply(function () {
                            var a = L(e) || [], c; if (u) c = [], r(f.val(),
                            function (d) { d = I ? Q[d] : d; c.push("?" === d ? t : "" === d ? null : h(B ? B : z, d, a[d])) }); else { var d = I ? Q[f.val()] : f.val(); c = "?" === d ? t : "" === d ? null : h(B ? B : z, d, a[d]) } g.$setViewValue(c); p()
                        })
                    }); g.$render = p; e.$watchCollection(L, l); e.$watchCollection(function () { var a = L(e), c; if (a && H(a)) { c = Array(a.length); for (var d = 0, f = a.length; d < f; d++) c[d] = h(C, d, a[d]) } else if (a) for (d in c = {}, a) a.hasOwnProperty(d) && (c[d] = h(C, d, a[d])); return c }, l); u && e.$watchCollection(function () { return g.$modelValue }, l)
                } if (l[1]) {
                    var q = l[0]; l = l[1]; var u = h.multiple,
                    s = h.ngOptions, w = !1, v, m = !1, F = A(W.createElement("option")), E = A(W.createElement("optgroup")), C = F.clone(); h = 0; for (var B = g.children(), G = B.length; h < G; h++) if ("" === B[h].value) { v = w = B.eq(h); break } q.init(l, w, C); u && (l.$isEmpty = function (a) { return !a || 0 === a.length }); s ? p(e, g, l) : u ? n(e, g, l) : k(e, g, l, q)
                }
            }
        }
    }], Yd = ["$interpolate", function (a) {
        var c = { addOption: E, removeOption: E }; return {
            restrict: "E", priority: 100, compile: function (d, e) {
                if (x(e.value)) { var f = a(d.text(), !0); f || e.$set("value", d.text()) } return function (a, d, e) {
                    var k =
                    d.parent(), n = k.data("$selectController") || k.parent().data("$selectController"); n && n.databound || (n = c); f ? a.$watch(f, function (a, c) { e.$set("value", a); c !== a && n.removeOption(c); n.addOption(a, d) }) : n.addOption(e.value, d); d.on("$destroy", function () { n.removeOption(e.value) })
                }
            }
        }
    }], Xd = ea({ restrict: "E", terminal: !1 }), Bc = 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() })) } } },
    Ac = 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) { C(a) && 0 < a.length && (a = new RegExp("^" + a + "$")); if (a && !a.test) throw R("ngPattern")("noregexp", g, a, wa(c)); f = a || t; e.$validate() }); e.$validators.pattern = function (a) { return e.$isEmpty(a) || x(f) || f.test(a) } } } } }, Dc = function () {
        return {
            restrict: "A", require: "?ngModel", link: function (a, c, d, e) {
                if (e) {
                    var f = -1; d.$observe("maxlength", function (a) { a = aa(a); f = isNaN(a) ? -1 : a; e.$validate() });
                    e.$validators.maxlength = function (a, c) { return 0 > f || e.$isEmpty(c) || c.length <= f }
                }
            }
        }
    }, Cc = function () { return { restrict: "A", require: "?ngModel", link: function (a, c, d, e) { if (e) { var f = 0; d.$observe("minlength", function (a) { f = aa(a) || 0; e.$validate() }); e.$validators.minlength = function (a, c) { return e.$isEmpty(c) || c.length >= f } } } } }; Q.angular.bootstrap ? console.log("WARNING: Tried to load angular more than once.") : (Nd(), Pd(ca), A(W).ready(function () { Jd(W, uc) }))
})(window, document); !window.angular.$$csp() && window.angular.element(document).find("head").prepend('<style type="text/css">@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-hide-animate){display:none !important;}ng\\:form{display:block;}</style>');
//# sourceMappingURL=angular.min.js.map
;
/*
 AngularJS v1.3.15
 (c) 2010-2014 Google, Inc. http://angularjs.org
 License: MIT
*/
(function(N,f,W){'use strict';f.module("ngAnimate",["ng"]).directive("ngAnimateChildren",function(){return function(X,C,g){g=g.ngAnimateChildren;f.isString(g)&&0===g.length?C.data("$$ngAnimateChildren",!0):X.$watch(g,function(f){C.data("$$ngAnimateChildren",!!f)})}}).factory("$$animateReflow",["$$rAF","$document",function(f,C){return function(g){return f(function(){g()})}}]).config(["$provide","$animateProvider",function(X,C){function g(f){for(var n=0;n<f.length;n++){var g=f[n];if(1==g.nodeType)return g}}
function ba(f,n){return g(f)==g(n)}var t=f.noop,n=f.forEach,da=C.$$selectors,aa=f.isArray,ea=f.isString,ga=f.isObject,r={running:!0},u;X.decorator("$animate",["$delegate","$$q","$injector","$sniffer","$rootElement","$$asyncCallback","$rootScope","$document","$templateRequest","$$jqLite",function(O,N,M,Y,y,H,P,W,Z,Q){function R(a,c){var b=a.data("$$ngAnimateState")||{};c&&(b.running=!0,b.structural=!0,a.data("$$ngAnimateState",b));return b.disabled||b.running&&b.structural}function D(a){var c,b=N.defer();
b.promise.$$cancelFn=function(){c&&c()};P.$$postDigest(function(){c=a(function(){b.resolve()})});return b.promise}function I(a){if(ga(a))return a.tempClasses&&ea(a.tempClasses)&&(a.tempClasses=a.tempClasses.split(/\s+/)),a}function S(a,c,b){b=b||{};var d={};n(b,function(e,a){n(a.split(" "),function(a){d[a]=e})});var h=Object.create(null);n((a.attr("class")||"").split(/\s+/),function(e){h[e]=!0});var f=[],l=[];n(c&&c.classes||[],function(e,a){var b=h[a],c=d[a]||{};!1===e?(b||"addClass"==c.event)&&
l.push(a):!0===e&&(b&&"removeClass"!=c.event||f.push(a))});return 0<f.length+l.length&&[f.join(" "),l.join(" ")]}function T(a){if(a){var c=[],b={};a=a.substr(1).split(".");(Y.transitions||Y.animations)&&c.push(M.get(da[""]));for(var d=0;d<a.length;d++){var f=a[d],k=da[f];k&&!b[f]&&(c.push(M.get(k)),b[f]=!0)}return c}}function U(a,c,b,d){function h(e,a){var b=e[a],c=e["before"+a.charAt(0).toUpperCase()+a.substr(1)];if(b||c)return"leave"==a&&(c=b,b=null),u.push({event:a,fn:b}),J.push({event:a,fn:c}),
!0}function k(c,l,w){var E=[];n(c,function(a){a.fn&&E.push(a)});var m=0;n(E,function(c,f){var p=function(){a:{if(l){(l[f]||t)();if(++m<E.length)break a;l=null}w()}};switch(c.event){case "setClass":l.push(c.fn(a,e,A,p,d));break;case "animate":l.push(c.fn(a,b,d.from,d.to,p));break;case "addClass":l.push(c.fn(a,e||b,p,d));break;case "removeClass":l.push(c.fn(a,A||b,p,d));break;default:l.push(c.fn(a,p,d))}});l&&0===l.length&&w()}var l=a[0];if(l){d&&(d.to=d.to||{},d.from=d.from||{});var e,A;aa(b)&&(e=
b[0],A=b[1],e?A?b=e+" "+A:(b=e,c="addClass"):(b=A,c="removeClass"));var w="setClass"==c,E=w||"addClass"==c||"removeClass"==c||"animate"==c,p=a.attr("class")+" "+b;if(x(p)){var ca=t,m=[],J=[],g=t,s=[],u=[],p=(" "+p).replace(/\s+/g,".");n(T(p),function(a){!h(a,c)&&w&&(h(a,"addClass"),h(a,"removeClass"))});return{node:l,event:c,className:b,isClassBased:E,isSetClassOperation:w,applyStyles:function(){d&&a.css(f.extend(d.from||{},d.to||{}))},before:function(a){ca=a;k(J,m,function(){ca=t;a()})},after:function(a){g=
a;k(u,s,function(){g=t;a()})},cancel:function(){m&&(n(m,function(a){(a||t)(!0)}),ca(!0));s&&(n(s,function(a){(a||t)(!0)}),g(!0))}}}}}function G(a,c,b,d,h,k,l,e){function A(e){var l="$animate:"+e;J&&J[l]&&0<J[l].length&&H(function(){b.triggerHandler(l,{event:a,className:c})})}function w(){A("before")}function E(){A("after")}function p(){p.hasBeenRun||(p.hasBeenRun=!0,k())}function g(){if(!g.hasBeenRun){m&&m.applyStyles();g.hasBeenRun=!0;l&&l.tempClasses&&n(l.tempClasses,function(a){u.removeClass(b,
a)});var w=b.data("$$ngAnimateState");w&&(m&&m.isClassBased?B(b,c):(H(function(){var e=b.data("$$ngAnimateState")||{};fa==e.index&&B(b,c,a)}),b.data("$$ngAnimateState",w)));A("close");e()}}var m=U(b,a,c,l);if(!m)return p(),w(),E(),g(),t;a=m.event;c=m.className;var J=f.element._data(m.node),J=J&&J.events;d||(d=h?h.parent():b.parent());if(z(b,d))return p(),w(),E(),g(),t;d=b.data("$$ngAnimateState")||{};var L=d.active||{},s=d.totalActive||0,q=d.last;h=!1;if(0<s){s=[];if(m.isClassBased)"setClass"==q.event?
(s.push(q),B(b,c)):L[c]&&(v=L[c],v.event==a?h=!0:(s.push(v),B(b,c)));else if("leave"==a&&L["ng-leave"])h=!0;else{for(var v in L)s.push(L[v]);d={};B(b,!0)}0<s.length&&n(s,function(a){a.cancel()})}!m.isClassBased||m.isSetClassOperation||"animate"==a||h||(h="addClass"==a==b.hasClass(c));if(h)return p(),w(),E(),A("close"),e(),t;L=d.active||{};s=d.totalActive||0;if("leave"==a)b.one("$destroy",function(a){a=f.element(this);var e=a.data("$$ngAnimateState");e&&(e=e.active["ng-leave"])&&(e.cancel(),B(a,"ng-leave"))});
u.addClass(b,"ng-animate");l&&l.tempClasses&&n(l.tempClasses,function(a){u.addClass(b,a)});var fa=K++;s++;L[c]=m;b.data("$$ngAnimateState",{last:m,active:L,index:fa,totalActive:s});w();m.before(function(e){var l=b.data("$$ngAnimateState");e=e||!l||!l.active[c]||m.isClassBased&&l.active[c].event!=a;p();!0===e?g():(E(),m.after(g))});return m.cancel}function q(a){if(a=g(a))a=f.isFunction(a.getElementsByClassName)?a.getElementsByClassName("ng-animate"):a.querySelectorAll(".ng-animate"),n(a,function(a){a=
f.element(a);(a=a.data("$$ngAnimateState"))&&a.active&&n(a.active,function(a){a.cancel()})})}function B(a,c){if(ba(a,y))r.disabled||(r.running=!1,r.structural=!1);else if(c){var b=a.data("$$ngAnimateState")||{},d=!0===c;!d&&b.active&&b.active[c]&&(b.totalActive--,delete b.active[c]);if(d||!b.totalActive)u.removeClass(a,"ng-animate"),a.removeData("$$ngAnimateState")}}function z(a,c){if(r.disabled)return!0;if(ba(a,y))return r.running;var b,d,g;do{if(0===c.length)break;var k=ba(c,y),l=k?r:c.data("$$ngAnimateState")||
{};if(l.disabled)return!0;k&&(g=!0);!1!==b&&(k=c.data("$$ngAnimateChildren"),f.isDefined(k)&&(b=k));d=d||l.running||l.last&&!l.last.isClassBased}while(c=c.parent());return!g||!b&&d}u=Q;y.data("$$ngAnimateState",r);var $=P.$watch(function(){return Z.totalPendingRequests},function(a,c){0===a&&($(),P.$$postDigest(function(){P.$$postDigest(function(){r.running=!1})}))}),K=0,V=C.classNameFilter(),x=V?function(a){return V.test(a)}:function(){return!0};return{animate:function(a,c,b,d,h){d=d||"ng-inline-animate";
h=I(h)||{};h.from=b?c:null;h.to=b?b:c;return D(function(b){return G("animate",d,f.element(g(a)),null,null,t,h,b)})},enter:function(a,c,b,d){d=I(d);a=f.element(a);c=c&&f.element(c);b=b&&f.element(b);R(a,!0);O.enter(a,c,b);return D(function(h){return G("enter","ng-enter",f.element(g(a)),c,b,t,d,h)})},leave:function(a,c){c=I(c);a=f.element(a);q(a);R(a,!0);return D(function(b){return G("leave","ng-leave",f.element(g(a)),null,null,function(){O.leave(a)},c,b)})},move:function(a,c,b,d){d=I(d);a=f.element(a);
c=c&&f.element(c);b=b&&f.element(b);q(a);R(a,!0);O.move(a,c,b);return D(function(h){return G("move","ng-move",f.element(g(a)),c,b,t,d,h)})},addClass:function(a,c,b){return this.setClass(a,c,[],b)},removeClass:function(a,c,b){return this.setClass(a,[],c,b)},setClass:function(a,c,b,d){d=I(d);a=f.element(a);a=f.element(g(a));if(R(a))return O.$$setClassImmediately(a,c,b,d);var h,k=a.data("$$animateClasses"),l=!!k;k||(k={classes:{}});h=k.classes;c=aa(c)?c:c.split(" ");n(c,function(a){a&&a.length&&(h[a]=
!0)});b=aa(b)?b:b.split(" ");n(b,function(a){a&&a.length&&(h[a]=!1)});if(l)return d&&k.options&&(k.options=f.extend(k.options||{},d)),k.promise;a.data("$$animateClasses",k={classes:h,options:d});return k.promise=D(function(e){var l=a.parent(),b=g(a),c=b.parentNode;if(!c||c.$$NG_REMOVED||b.$$NG_REMOVED)e();else{b=a.data("$$animateClasses");a.removeData("$$animateClasses");var c=a.data("$$ngAnimateState")||{},d=S(a,b,c.active);return d?G("setClass",d,a,l,null,function(){d[0]&&O.$$addClassImmediately(a,
d[0]);d[1]&&O.$$removeClassImmediately(a,d[1])},b.options,e):e()}})},cancel:function(a){a.$$cancelFn()},enabled:function(a,c){switch(arguments.length){case 2:if(a)B(c);else{var b=c.data("$$ngAnimateState")||{};b.disabled=!0;c.data("$$ngAnimateState",b)}break;case 1:r.disabled=!a;break;default:a=!r.disabled}return!!a}}}]);C.register("",["$window","$sniffer","$timeout","$$animateReflow",function(r,C,M,Y){function y(){b||(b=Y(function(){c=[];b=null;x={}}))}function H(a,e){b&&b();c.push(e);b=Y(function(){n(c,
function(a){a()});c=[];b=null;x={}})}function P(a,e){var b=g(a);a=f.element(b);k.push(a);b=Date.now()+e;b<=h||(M.cancel(d),h=b,d=M(function(){X(k);k=[]},e,!1))}function X(a){n(a,function(a){(a=a.data("$$ngAnimateCSS3Data"))&&n(a.closeAnimationFns,function(a){a()})})}function Z(a,e){var b=e?x[e]:null;if(!b){var c=0,d=0,f=0,g=0;n(a,function(a){if(1==a.nodeType){a=r.getComputedStyle(a)||{};c=Math.max(Q(a[z+"Duration"]),c);d=Math.max(Q(a[z+"Delay"]),d);g=Math.max(Q(a[K+"Delay"]),g);var e=Q(a[K+"Duration"]);
0<e&&(e*=parseInt(a[K+"IterationCount"],10)||1);f=Math.max(e,f)}});b={total:0,transitionDelay:d,transitionDuration:c,animationDelay:g,animationDuration:f};e&&(x[e]=b)}return b}function Q(a){var e=0;a=ea(a)?a.split(/\s*,\s*/):[];n(a,function(a){e=Math.max(parseFloat(a)||0,e)});return e}function R(b,e,c,d){b=0<=["ng-enter","ng-leave","ng-move"].indexOf(c);var f,p=e.parent(),h=p.data("$$ngAnimateKey");h||(p.data("$$ngAnimateKey",++a),h=a);f=h+"-"+g(e).getAttribute("class");var p=f+" "+c,h=x[p]?++x[p].total:
0,m={};if(0<h){var n=c+"-stagger",m=f+" "+n;(f=!x[m])&&u.addClass(e,n);m=Z(e,m);f&&u.removeClass(e,n)}u.addClass(e,c);var n=e.data("$$ngAnimateCSS3Data")||{},k=Z(e,p);f=k.transitionDuration;k=k.animationDuration;if(b&&0===f&&0===k)return u.removeClass(e,c),!1;c=d||b&&0<f;b=0<k&&0<m.animationDelay&&0===m.animationDuration;e.data("$$ngAnimateCSS3Data",{stagger:m,cacheKey:p,running:n.running||0,itemIndex:h,blockTransition:c,closeAnimationFns:n.closeAnimationFns||[]});p=g(e);c&&(I(p,!0),d&&e.css(d));
b&&(p.style[K+"PlayState"]="paused");return!0}function D(a,e,b,c,d){function f(){e.off(D,h);u.removeClass(e,k);u.removeClass(e,t);z&&M.cancel(z);G(e,b);var a=g(e),c;for(c in s)a.style.removeProperty(s[c])}function h(a){a.stopPropagation();var b=a.originalEvent||a;a=b.$manualTimeStamp||b.timeStamp||Date.now();b=parseFloat(b.elapsedTime.toFixed(3));Math.max(a-H,0)>=C&&b>=x&&c()}var m=g(e);a=e.data("$$ngAnimateCSS3Data");if(-1!=m.getAttribute("class").indexOf(b)&&a){var k="",t="";n(b.split(" "),function(a,
b){var e=(0<b?" ":"")+a;k+=e+"-active";t+=e+"-pending"});var s=[],q=a.itemIndex,v=a.stagger,r=0;if(0<q){r=0;0<v.transitionDelay&&0===v.transitionDuration&&(r=v.transitionDelay*q);var y=0;0<v.animationDelay&&0===v.animationDuration&&(y=v.animationDelay*q,s.push(B+"animation-play-state"));r=Math.round(100*Math.max(r,y))/100}r||(u.addClass(e,k),a.blockTransition&&I(m,!1));var F=Z(e,a.cacheKey+" "+k),x=Math.max(F.transitionDuration,F.animationDuration);if(0===x)u.removeClass(e,k),G(e,b),c();else{!r&&
d&&0<Object.keys(d).length&&(F.transitionDuration||(e.css("transition",F.animationDuration+"s linear all"),s.push("transition")),e.css(d));var q=Math.max(F.transitionDelay,F.animationDelay),C=1E3*q;0<s.length&&(v=m.getAttribute("style")||"",";"!==v.charAt(v.length-1)&&(v+=";"),m.setAttribute("style",v+" "));var H=Date.now(),D=V+" "+$,q=1E3*(r+1.5*(q+x)),z;0<r&&(u.addClass(e,t),z=M(function(){z=null;0<F.transitionDuration&&I(m,!1);0<F.animationDuration&&(m.style[K+"PlayState"]="");u.addClass(e,k);
u.removeClass(e,t);d&&(0===F.transitionDuration&&e.css("transition",F.animationDuration+"s linear all"),e.css(d),s.push("transition"))},1E3*r,!1));e.on(D,h);a.closeAnimationFns.push(function(){f();c()});a.running++;P(e,q);return f}}else c()}function I(a,b){a.style[z+"Property"]=b?"none":""}function S(a,b,c,d){if(R(a,b,c,d))return function(a){a&&G(b,c)}}function T(a,b,c,d,f){if(b.data("$$ngAnimateCSS3Data"))return D(a,b,c,d,f);G(b,c);d()}function U(a,b,c,d,f){var g=S(a,b,c,f.from);if(g){var h=g;H(b,
function(){h=T(a,b,c,d,f.to)});return function(a){(h||t)(a)}}y();d()}function G(a,b){u.removeClass(a,b);var c=a.data("$$ngAnimateCSS3Data");c&&(c.running&&c.running--,c.running&&0!==c.running||a.removeData("$$ngAnimateCSS3Data"))}function q(a,b){var c="";a=aa(a)?a:a.split(/\s+/);n(a,function(a,d){a&&0<a.length&&(c+=(0<d?" ":"")+a+b)});return c}var B="",z,$,K,V;N.ontransitionend===W&&N.onwebkittransitionend!==W?(B="-webkit-",z="WebkitTransition",$="webkitTransitionEnd transitionend"):(z="transition",
$="transitionend");N.onanimationend===W&&N.onwebkitanimationend!==W?(B="-webkit-",K="WebkitAnimation",V="webkitAnimationEnd animationend"):(K="animation",V="animationend");var x={},a=0,c=[],b,d=null,h=0,k=[];return{animate:function(a,b,c,d,f,g){g=g||{};g.from=c;g.to=d;return U("animate",a,b,f,g)},enter:function(a,b,c){c=c||{};return U("enter",a,"ng-enter",b,c)},leave:function(a,b,c){c=c||{};return U("leave",a,"ng-leave",b,c)},move:function(a,b,c){c=c||{};return U("move",a,"ng-move",b,c)},beforeSetClass:function(a,
b,c,d,f){f=f||{};b=q(c,"-remove")+" "+q(b,"-add");if(f=S("setClass",a,b,f.from))return H(a,d),f;y();d()},beforeAddClass:function(a,b,c,d){d=d||{};if(b=S("addClass",a,q(b,"-add"),d.from))return H(a,c),b;y();c()},beforeRemoveClass:function(a,b,c,d){d=d||{};if(b=S("removeClass",a,q(b,"-remove"),d.from))return H(a,c),b;y();c()},setClass:function(a,b,c,d,f){f=f||{};c=q(c,"-remove");b=q(b,"-add");return T("setClass",a,c+" "+b,d,f.to)},addClass:function(a,b,c,d){d=d||{};return T("addClass",a,q(b,"-add"),
c,d.to)},removeClass:function(a,b,c,d){d=d||{};return T("removeClass",a,q(b,"-remove"),c,d.to)}}}])}])})(window,window.angular);
//# sourceMappingURL=angular-animate.min.js.map
;
(function(){"use strict";var n=angular.version.major===1&&angular.version.minor===0;angular.module("ui-rangeSlider",[]).directive("rangeSlider",["$document","$filter","$log",function(t,i,r){var u=".rangeSlider",f={disabled:!1,orientation:"horizontal",step:0,decimalPlaces:0,showValues:!0,preventEqualMinMax:!1,attachHandleValues:!1},e=window.navigator.pointerEnabled?{start:"pointerdown",move:"pointermove",end:"pointerup",over:"pointerdown",out:"mouseout"}:window.navigator.msPointerEnabled?{start:"MSPointerDown",move:"MSPointerMove",end:"MSPointerUp",over:"MSPointerDown",out:"mouseout"}:{start:"mousedown touchstart",move:"mousemove touchmove",end:"mouseup touchend",over:"mouseover touchstart",out:"mouseout"},v=e.start+u,c=e.move+u,l=e.end+u,y=e.over+u,p=e.out+u,a=function(n){try{return[n.clientX||n.originalEvent.clientX||n.originalEvent.touches[0].clientX,n.clientY||n.originalEvent.clientY||n.originalEvent.touches[0].clientY]}catch(t){return["x","y"]}},h=function(n){return n<0?0:n>100?100:n},o=function(n){return!isNaN(parseFloat(n))&&isFinite(n)},s={disabled:"=?",min:"=",max:"=",modelMin:"=?",modelMax:"=?",onHandleDown:"&",onHandleUp:"&",orientation:"@",step:"@",decimalPlaces:"@",filter:"@",filterOptions:"@",showValues:"@",pinHandle:"@",preventEqualMinMax:"@",attachHandleValues:"@"};return n&&(s.disabled="=",s.modelMin="=",s.modelMax="="),{restrict:"A",replace:!0,template:'<div class="ngrs-range-slider"><div class="ngrs-runner"><div class="ngrs-handle ngrs-handle-min"><i><\/i><\/div><div class="ngrs-handle ngrs-handle-max"><i><\/i><\/div><div class="ngrs-join"><\/div><\/div><div class="ngrs-value-runner"><div class="ngrs-value ngrs-value-min" ng-show="showValues"><div>{{filteredModelMin}}<\/div><\/div><div class="ngrs-value ngrs-value-max" ng-show="showValues"><div>{{filteredModelMax}}<\/div><\/div><\/div><\/div>',scope:s,link:function(n,e,s){function ct(n){n==="min"?(angular.element(w[0]).css("display","none"),angular.element(w[1]).css("display","block")):n==="max"?(angular.element(w[0]).css("display","block"),angular.element(w[1]).css("display","none")):(angular.element(w[0]).css("display","block"),angular.element(w[1]).css("display","block"))}function lt(n){n?k.addClass("ngrs-disabled"):k.removeClass("ngrs-disabled")}function ot(){n.min>n.max&&ut("min must be less than or equal to max");angular.isDefined(n.min)&&angular.isDefined(n.max)&&(o(n.min)||ut("min must be a number"),o(n.max)||ut("max must be a number"),d=n.max-n.min,ht=[n.min,n.max],rt())}function rt(){var t,r,s,c;if(n.modelMin>n.modelMax&&(ft("modelMin must be less than or equal to modelMax"),n.modelMin=n.modelMax),(angular.isDefined(n.modelMin)||n.pinHandle==="min")&&(angular.isDefined(n.modelMax)||n.pinHandle==="max")){if(o(n.modelMin)||(n.pinHandle!=="min"&&ft("modelMin must be a number"),n.modelMin=n.min),o(n.modelMax)||(n.pinHandle!=="max"&&ft("modelMax must be a number"),n.modelMax=n.max),t=h((n.modelMin-n.min)/d*100),r=h((n.modelMax-n.min)/d*100),n.attachHandleValues&&(s=t,c=r),n.modelMin=Math.max(n.min,n.modelMin),n.modelMax=Math.min(n.max,n.modelMax),n.filter&&n.filterOptions)n.filteredModelMin=i(n.filter)(n.modelMin,n.filterOptions),n.filteredModelMax=i(n.filter)(n.modelMax,n.filterOptions);else if(n.filter){var a=n.filter.split(":"),l=n.filter.split(":")[0],u=a.slice().slice(1),f,e;u=u.map(function(n){return o(n)?+n:n[0]=='"'&&n[n.length-1]=='"'||n[0]=="'"&&n[n.length-1]=="'"?n.slice(1,-1):void 0});f=u.slice();e=u.slice();f.unshift(n.modelMin);e.unshift(n.modelMax);n.filteredModelMin=i(l).apply(null,f);n.filteredModelMax=i(l).apply(null,e)}else n.filteredModelMin=n.modelMin,n.filteredModelMax=n.modelMax;n.min===n.max&&n.modelMin==n.modelMax?(angular.element(w[0]).css(b,"0%"),angular.element(w[1]).css(b,"100%"),n.attachHandleValues&&(angular.element(g[0]).css(b,"0%"),angular.element(g[1]).css(b,"100%")),angular.element(et).css(b,"0%").css(nt,"0%")):(angular.element(w[0]).css(b,t+"%"),angular.element(w[1]).css(b,r+"%"),n.attachHandleValues&&(angular.element(g[0]).css(b,s+"%"),angular.element(g[1]).css(b,c+"%"),angular.element(g[1]).css(nt,"auto")),angular.element(et).css(b,t+"%").css(nt,100-r+"%"),t>95&&angular.element(w[0]).css("z-index",3))}}function st(i){var r=w[i];r.bind(v+"X",function(f){var s=(i===0?"ngrs-handle-min":"ngrs-handle-max")+"-down",y=(i===0?n.modelMin:n.modelMax)-n.min,p=y/d*100,e=a(f),o=e,v=!1;angular.isFunction(n.onHandleDown)&&n.onHandleDown();angular.element("body").bind("selectstart"+u,function(){return!1});n.disabled||(it=!0,r.addClass("ngrs-down"),k.addClass("ngrs-focus "+s),angular.element("body").addClass("ngrs-touching"),t.bind(c,function(t){t.preventDefault();var s=a(t),l,u,c=n.step/d*100,f=((i===0?n.modelMax:n.modelMin)-n.min)/d*100;s[0]!=="x"&&(s[0]-=e[0],s[1]-=e[1],l=[o[0]!==s[0],o[1]!==s[1]],u=p+s[tt]*100/(tt?k.height():k.width()),u=h(u),n.preventEqualMinMax&&(c===0&&(c=100/d),i===0?f=f-c:i===1&&(f=f+c)),i===0?u=u>f?f:u:i===1&&(u=u<f?f:u),n.step>0&&u<100&&u>0&&(u=Math.round(u/c)*c),u>95&&i===0?r.css("z-index",3):r.css("z-index",""),l[tt]&&u!=v&&(i===0?n.modelMin=parseFloat(parseFloat(u*d/100+n.min).toFixed(n.decimalPlaces)):i===1&&(n.modelMax=parseFloat(parseFloat(u*d/100+n.min).toFixed(n.decimalPlaces))),n.$apply(),v=u),o=s)}).bind(l,function(){angular.isFunction(n.onHandleUp)&&n.onHandleUp();t.off(c);t.off(l);angular.element("body").removeClass("ngrs-touching");it=!1;r.removeClass("ngrs-down");r.removeClass("ngrs-over");k.removeClass("ngrs-focus "+s)}))}).on(y,function(){r.addClass("ngrs-over")}).on(p,function(){it||r.removeClass("ngrs-over")})}function ut(t){n.disabled=!0;throw new Error("RangeSlider: "+t);}function ft(n){r.warn(n)}var k=angular.element(e),w=[e.find(".ngrs-handle-min"),e.find(".ngrs-handle-max")],g=[e.find(".ngrs-value-min"),e.find(".ngrs-value-max")],et=e.find(".ngrs-join"),b="left",nt="right",tt=0,ht=[0,0],d=0,it=!1;n.filteredModelMin=n.modelMin;n.filteredModelMax=n.modelMax;s.$observe("disabled",function(t){angular.isDefined(t)||(n.disabled=f.disabled);n.$watch("disabled",lt)});s.$observe("orientation",function(t){var i,u,r,e;for(angular.isDefined(t)||(n.orientation=f.orientation),i=n.orientation.split(" "),r=0,e=i.length;r<e;r++)i[r]="ngrs-"+i[r];u=i.join(" ");k.addClass(u);(n.orientation==="vertical"||n.orientation==="vertical left"||n.orientation==="vertical right")&&(b="top",nt="bottom",tt=1)});s.$observe("step",function(t){angular.isDefined(t)||(n.step=f.step)});s.$observe("decimalPlaces",function(t){angular.isDefined(t)||(n.decimalPlaces=f.decimalPlaces)});s.$observe("showValues",function(t){n.showValues=angular.isDefined(t)?t==="false"?!1:!0:f.showValues});s.$observe("pinHandle",function(t){n.pinHandle=angular.isDefined(t)?t==="min"||t==="max"?t:null:null;n.$watch("pinHandle",ct)});s.$observe("preventEqualMinMax",function(t){n.preventEqualMinMax=angular.isDefined(t)?t==="false"?!1:!0:f.preventEqualMinMax});s.$observe("attachHandleValues",function(t){angular.isDefined(t)?t==="true"||t===""?(n.attachHandleValues=!0,e.find(".ngrs-value-runner").addClass("ngrs-attached-handles")):n.attachHandleValues=!1:n.attachHandleValues=f.attachHandleValues});n.$watch("min",ot);n.$watch("max",ot);n.$watch("modelMin",rt);n.$watch("modelMax",rt);n.$on("$destroy",function(){k.off(u);angular.element("body").off(u);t.off(u);for(var n=0,i=w.length;n<i;n++)w[n].off(u),w[n].off(u+"X")});k.bind("selectstart"+u,function(){return!1}).bind("click",function(n){n.stopPropagation()});st(0);st(1)}}}]);window.requestAnimFrame=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||function(n){window.setTimeout(n,1e3/60)}}()})();
/*
 * angular-ui-bootstrap
 * http://angular-ui.github.io/bootstrap/

 * Version: 0.12.1 - 2015-02-20
 * License: MIT
 */
angular.module("ui.bootstrap",["ui.bootstrap.tpls","ui.bootstrap.transition","ui.bootstrap.collapse","ui.bootstrap.accordion","ui.bootstrap.alert","ui.bootstrap.bindHtml","ui.bootstrap.buttons","ui.bootstrap.carousel","ui.bootstrap.dateparser","ui.bootstrap.position","ui.bootstrap.datepicker","ui.bootstrap.dropdown","ui.bootstrap.modal","ui.bootstrap.pagination","ui.bootstrap.tooltip","ui.bootstrap.popover","ui.bootstrap.progressbar","ui.bootstrap.rating","ui.bootstrap.tabs","ui.bootstrap.timepicker","ui.bootstrap.typeahead"]),angular.module("ui.bootstrap.tpls",["template/accordion/accordion-group.html","template/accordion/accordion.html","template/alert/alert.html","template/carousel/carousel.html","template/carousel/slide.html","template/datepicker/datepicker.html","template/datepicker/day.html","template/datepicker/month.html","template/datepicker/popup.html","template/datepicker/year.html","template/modal/backdrop.html","template/modal/window.html","template/pagination/pager.html","template/pagination/pagination.html","template/tooltip/tooltip-html-unsafe-popup.html","template/tooltip/tooltip-popup.html","template/popover/popover.html","template/progressbar/bar.html","template/progressbar/progress.html","template/progressbar/progressbar.html","template/rating/rating.html","template/tabs/tab.html","template/tabs/tabset.html","template/timepicker/timepicker.html","template/typeahead/typeahead-match.html","template/typeahead/typeahead-popup.html"]),angular.module("ui.bootstrap.transition",[]).factory("$transition",["$q","$timeout","$rootScope",function(a,b,c){function d(a){for(var b in a)if(void 0!==f.style[b])return a[b]}var e=function(d,f,g){g=g||{};var h=a.defer(),i=e[g.animation?"animationEndEventName":"transitionEndEventName"],j=function(){c.$apply(function(){d.unbind(i,j),h.resolve(d)})};return i&&d.bind(i,j),b(function(){angular.isString(f)?d.addClass(f):angular.isFunction(f)?f(d):angular.isObject(f)&&d.css(f),i||h.resolve(d)}),h.promise.cancel=function(){i&&d.unbind(i,j),h.reject("Transition cancelled")},h.promise},f=document.createElement("trans"),g={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",transition:"transitionend"},h={WebkitTransition:"webkitAnimationEnd",MozTransition:"animationend",OTransition:"oAnimationEnd",transition:"animationend"};return e.transitionEndEventName=d(g),e.animationEndEventName=d(h),e}]),angular.module("ui.bootstrap.collapse",["ui.bootstrap.transition"]).directive("collapse",["$transition",function(a){return{link:function(b,c,d){function e(b){function d(){j===e&&(j=void 0)}var e=a(c,b);return j&&j.cancel(),j=e,e.then(d,d),e}function f(){k?(k=!1,g()):(c.removeClass("collapse").addClass("collapsing"),e({height:c[0].scrollHeight+"px"}).then(g))}function g(){c.removeClass("collapsing"),c.addClass("collapse in"),c.css({height:"auto"})}function h(){if(k)k=!1,i(),c.css({height:0});else{c.css({height:c[0].scrollHeight+"px"});{c[0].offsetWidth}c.removeClass("collapse in").addClass("collapsing"),e({height:0}).then(i)}}function i(){c.removeClass("collapsing"),c.addClass("collapse")}var j,k=!0;b.$watch(d.collapse,function(a){a?h():f()})}}}]),angular.module("ui.bootstrap.accordion",["ui.bootstrap.collapse"]).constant("accordionConfig",{closeOthers:!0}).controller("AccordionController",["$scope","$attrs","accordionConfig",function(a,b,c){this.groups=[],this.closeOthers=function(d){var e=angular.isDefined(b.closeOthers)?a.$eval(b.closeOthers):c.closeOthers;e&&angular.forEach(this.groups,function(a){a!==d&&(a.isOpen=!1)})},this.addGroup=function(a){var b=this;this.groups.push(a),a.$on("$destroy",function(){b.removeGroup(a)})},this.removeGroup=function(a){var b=this.groups.indexOf(a);-1!==b&&this.groups.splice(b,1)}}]).directive("accordion",function(){return{restrict:"EA",controller:"AccordionController",transclude:!0,replace:!1,templateUrl:"template/accordion/accordion.html"}}).directive("accordionGroup",function(){return{require:"^accordion",restrict:"EA",transclude:!0,replace:!0,templateUrl:"template/accordion/accordion-group.html",scope:{heading:"@",isOpen:"=?",isDisabled:"=?"},controller:function(){this.setHeading=function(a){this.heading=a}},link:function(a,b,c,d){d.addGroup(a),a.$watch("isOpen",function(b){b&&d.closeOthers(a)}),a.toggleOpen=function(){a.isDisabled||(a.isOpen=!a.isOpen)}}}}).directive("accordionHeading",function(){return{restrict:"EA",transclude:!0,template:"",replace:!0,require:"^accordionGroup",link:function(a,b,c,d,e){d.setHeading(e(a,function(){}))}}}).directive("accordionTransclude",function(){return{require:"^accordionGroup",link:function(a,b,c,d){a.$watch(function(){return d[c.accordionTransclude]},function(a){a&&(b.html(""),b.append(a))})}}}),angular.module("ui.bootstrap.alert",[]).controller("AlertController",["$scope","$attrs",function(a,b){a.closeable="close"in b,this.close=a.close}]).directive("alert",function(){return{restrict:"EA",controller:"AlertController",templateUrl:"template/alert/alert.html",transclude:!0,replace:!0,scope:{type:"@",close:"&"}}}).directive("dismissOnTimeout",["$timeout",function(a){return{require:"alert",link:function(b,c,d,e){a(function(){e.close()},parseInt(d.dismissOnTimeout,10))}}}]),angular.module("ui.bootstrap.bindHtml",[]).directive("bindHtmlUnsafe",function(){return function(a,b,c){b.addClass("ng-binding").data("$binding",c.bindHtmlUnsafe),a.$watch(c.bindHtmlUnsafe,function(a){b.html(a||"")})}}),angular.module("ui.bootstrap.buttons",[]).constant("buttonConfig",{activeClass:"active",toggleEvent:"click"}).controller("ButtonsController",["buttonConfig",function(a){this.activeClass=a.activeClass||"active",this.toggleEvent=a.toggleEvent||"click"}]).directive("btnRadio",function(){return{require:["btnRadio","ngModel"],controller:"ButtonsController",link:function(a,b,c,d){var e=d[0],f=d[1];f.$render=function(){b.toggleClass(e.activeClass,angular.equals(f.$modelValue,a.$eval(c.btnRadio)))},b.bind(e.toggleEvent,function(){var d=b.hasClass(e.activeClass);(!d||angular.isDefined(c.uncheckable))&&a.$apply(function(){f.$setViewValue(d?null:a.$eval(c.btnRadio)),f.$render()})})}}}).directive("btnCheckbox",function(){return{require:["btnCheckbox","ngModel"],controller:"ButtonsController",link:function(a,b,c,d){function e(){return g(c.btnCheckboxTrue,!0)}function f(){return g(c.btnCheckboxFalse,!1)}function g(b,c){var d=a.$eval(b);return angular.isDefined(d)?d:c}var h=d[0],i=d[1];i.$render=function(){b.toggleClass(h.activeClass,angular.equals(i.$modelValue,e()))},b.bind(h.toggleEvent,function(){a.$apply(function(){i.$setViewValue(b.hasClass(h.activeClass)?f():e()),i.$render()})})}}}),angular.module("ui.bootstrap.carousel",["ui.bootstrap.transition"]).controller("CarouselController",["$scope","$timeout","$interval","$transition",function(a,b,c,d){function e(){f();var b=+a.interval;!isNaN(b)&&b>0&&(h=c(g,b))}function f(){h&&(c.cancel(h),h=null)}function g(){var b=+a.interval;i&&!isNaN(b)&&b>0?a.next():a.pause()}var h,i,j=this,k=j.slides=a.slides=[],l=-1;j.currentSlide=null;var m=!1;j.select=a.select=function(c,f){function g(){if(!m){if(j.currentSlide&&angular.isString(f)&&!a.noTransition&&c.$element){c.$element.addClass(f);{c.$element[0].offsetWidth}angular.forEach(k,function(a){angular.extend(a,{direction:"",entering:!1,leaving:!1,active:!1})}),angular.extend(c,{direction:f,active:!0,entering:!0}),angular.extend(j.currentSlide||{},{direction:f,leaving:!0}),a.$currentTransition=d(c.$element,{}),function(b,c){a.$currentTransition.then(function(){h(b,c)},function(){h(b,c)})}(c,j.currentSlide)}else h(c,j.currentSlide);j.currentSlide=c,l=i,e()}}function h(b,c){angular.extend(b,{direction:"",active:!0,leaving:!1,entering:!1}),angular.extend(c||{},{direction:"",active:!1,leaving:!1,entering:!1}),a.$currentTransition=null}var i=k.indexOf(c);void 0===f&&(f=i>l?"next":"prev"),c&&c!==j.currentSlide&&(a.$currentTransition?(a.$currentTransition.cancel(),b(g)):g())},a.$on("$destroy",function(){m=!0}),j.indexOfSlide=function(a){return k.indexOf(a)},a.next=function(){var b=(l+1)%k.length;return a.$currentTransition?void 0:j.select(k[b],"next")},a.prev=function(){var b=0>l-1?k.length-1:l-1;return a.$currentTransition?void 0:j.select(k[b],"prev")},a.isActive=function(a){return j.currentSlide===a},a.$watch("interval",e),a.$on("$destroy",f),a.play=function(){i||(i=!0,e())},a.pause=function(){a.noPause||(i=!1,f())},j.addSlide=function(b,c){b.$element=c,k.push(b),1===k.length||b.active?(j.select(k[k.length-1]),1==k.length&&a.play()):b.active=!1},j.removeSlide=function(a){var b=k.indexOf(a);k.splice(b,1),k.length>0&&a.active?j.select(b>=k.length?k[b-1]:k[b]):l>b&&l--}}]).directive("carousel",[function(){return{restrict:"EA",transclude:!0,replace:!0,controller:"CarouselController",require:"carousel",templateUrl:"template/carousel/carousel.html",scope:{interval:"=",noTransition:"=",noPause:"="}}}]).directive("slide",function(){return{require:"^carousel",restrict:"EA",transclude:!0,replace:!0,templateUrl:"template/carousel/slide.html",scope:{active:"=?"},link:function(a,b,c,d){d.addSlide(a,b),a.$on("$destroy",function(){d.removeSlide(a)}),a.$watch("active",function(b){b&&d.select(a)})}}}),angular.module("ui.bootstrap.dateparser",[]).service("dateParser",["$locale","orderByFilter",function(a,b){function c(a){var c=[],d=a.split("");return angular.forEach(e,function(b,e){var f=a.indexOf(e);if(f>-1){a=a.split(""),d[f]="("+b.regex+")",a[f]="$";for(var g=f+1,h=f+e.length;h>g;g++)d[g]="",a[g]="$";a=a.join(""),c.push({index:f,apply:b.apply})}}),{regex:new RegExp("^"+d.join("")+"$"),map:b(c,"index")}}function d(a,b,c){return 1===b&&c>28?29===c&&(a%4===0&&a%100!==0||a%400===0):3===b||5===b||8===b||10===b?31>c:!0}this.parsers={};var e={yyyy:{regex:"\\d{4}",apply:function(a){this.year=+a}},yy:{regex:"\\d{2}",apply:function(a){this.year=+a+2e3}},y:{regex:"\\d{1,4}",apply:function(a){this.year=+a}},MMMM:{regex:a.DATETIME_FORMATS.MONTH.join("|"),apply:function(b){this.month=a.DATETIME_FORMATS.MONTH.indexOf(b)}},MMM:{regex:a.DATETIME_FORMATS.SHORTMONTH.join("|"),apply:function(b){this.month=a.DATETIME_FORMATS.SHORTMONTH.indexOf(b)}},MM:{regex:"0[1-9]|1[0-2]",apply:function(a){this.month=a-1}},M:{regex:"[1-9]|1[0-2]",apply:function(a){this.month=a-1}},dd:{regex:"[0-2][0-9]{1}|3[0-1]{1}",apply:function(a){this.date=+a}},d:{regex:"[1-2]?[0-9]{1}|3[0-1]{1}",apply:function(a){this.date=+a}},EEEE:{regex:a.DATETIME_FORMATS.DAY.join("|")},EEE:{regex:a.DATETIME_FORMATS.SHORTDAY.join("|")}};this.parse=function(b,e){if(!angular.isString(b)||!e)return b;e=a.DATETIME_FORMATS[e]||e,this.parsers[e]||(this.parsers[e]=c(e));var f=this.parsers[e],g=f.regex,h=f.map,i=b.match(g);if(i&&i.length){for(var j,k={year:1900,month:0,date:1,hours:0},l=1,m=i.length;m>l;l++){var n=h[l-1];n.apply&&n.apply.call(k,i[l])}return d(k.year,k.month,k.date)&&(j=new Date(k.year,k.month,k.date,k.hours)),j}}}]),angular.module("ui.bootstrap.position",[]).factory("$position",["$document","$window",function(a,b){function c(a,c){return a.currentStyle?a.currentStyle[c]:b.getComputedStyle?b.getComputedStyle(a)[c]:a.style[c]}function d(a){return"static"===(c(a,"position")||"static")}var e=function(b){for(var c=a[0],e=b.offsetParent||c;e&&e!==c&&d(e);)e=e.offsetParent;return e||c};return{position:function(b){var c=this.offset(b),d={top:0,left:0},f=e(b[0]);f!=a[0]&&(d=this.offset(angular.element(f)),d.top+=f.clientTop-f.scrollTop,d.left+=f.clientLeft-f.scrollLeft);var g=b[0].getBoundingClientRect();return{width:g.width||b.prop("offsetWidth"),height:g.height||b.prop("offsetHeight"),top:c.top-d.top,left:c.left-d.left}},offset:function(c){var d=c[0].getBoundingClientRect();return{width:d.width||c.prop("offsetWidth"),height:d.height||c.prop("offsetHeight"),top:d.top+(b.pageYOffset||a[0].documentElement.scrollTop),left:d.left+(b.pageXOffset||a[0].documentElement.scrollLeft)}},positionElements:function(a,b,c,d){var e,f,g,h,i=c.split("-"),j=i[0],k=i[1]||"center";e=d?this.offset(a):this.position(a),f=b.prop("offsetWidth"),g=b.prop("offsetHeight");var l={center:function(){return e.left+e.width/2-f/2},left:function(){return e.left},right:function(){return e.left+e.width}},m={center:function(){return e.top+e.height/2-g/2},top:function(){return e.top},bottom:function(){return e.top+e.height}};switch(j){case"right":h={top:m[k](),left:l[j]()};break;case"left":h={top:m[k](),left:e.left-f};break;case"bottom":h={top:m[j](),left:l[k]()};break;default:h={top:e.top-g,left:l[k]()}}return h}}}]),angular.module("ui.bootstrap.datepicker",["ui.bootstrap.dateparser","ui.bootstrap.position"]).constant("datepickerConfig",{formatDay:"dd",formatMonth:"MMMM",formatYear:"yyyy",formatDayHeader:"EEE",formatDayTitle:"MMMM yyyy",formatMonthTitle:"yyyy",datepickerMode:"day",minMode:"day",maxMode:"year",showWeeks:!0,startingDay:0,yearRange:20,minDate:null,maxDate:null}).controller("DatepickerController",["$scope","$attrs","$parse","$interpolate","$timeout","$log","dateFilter","datepickerConfig",function(a,b,c,d,e,f,g,h){var i=this,j={$setViewValue:angular.noop};this.modes=["day","month","year"],angular.forEach(["formatDay","formatMonth","formatYear","formatDayHeader","formatDayTitle","formatMonthTitle","minMode","maxMode","showWeeks","startingDay","yearRange"],function(c,e){i[c]=angular.isDefined(b[c])?8>e?d(b[c])(a.$parent):a.$parent.$eval(b[c]):h[c]}),angular.forEach(["minDate","maxDate"],function(d){b[d]?a.$parent.$watch(c(b[d]),function(a){i[d]=a?new Date(a):null,i.refreshView()}):i[d]=h[d]?new Date(h[d]):null}),a.datepickerMode=a.datepickerMode||h.datepickerMode,a.uniqueId="datepicker-"+a.$id+"-"+Math.floor(1e4*Math.random()),this.activeDate=angular.isDefined(b.initDate)?a.$parent.$eval(b.initDate):new Date,a.isActive=function(b){return 0===i.compare(b.date,i.activeDate)?(a.activeDateId=b.uid,!0):!1},this.init=function(a){j=a,j.$render=function(){i.render()}},this.render=function(){if(j.$modelValue){var a=new Date(j.$modelValue),b=!isNaN(a);b?this.activeDate=a:f.error('Datepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.'),j.$setValidity("date",b)}this.refreshView()},this.refreshView=function(){if(this.element){this._refreshView();var a=j.$modelValue?new Date(j.$modelValue):null;j.$setValidity("date-disabled",!a||this.element&&!this.isDisabled(a))}},this.createDateObject=function(a,b){var c=j.$modelValue?new Date(j.$modelValue):null;return{date:a,label:g(a,b),selected:c&&0===this.compare(a,c),disabled:this.isDisabled(a),current:0===this.compare(a,new Date)}},this.isDisabled=function(c){return this.minDate&&this.compare(c,this.minDate)<0||this.maxDate&&this.compare(c,this.maxDate)>0||b.dateDisabled&&a.dateDisabled({date:c,mode:a.datepickerMode})},this.split=function(a,b){for(var c=[];a.length>0;)c.push(a.splice(0,b));return c},a.select=function(b){if(a.datepickerMode===i.minMode){var c=j.$modelValue?new Date(j.$modelValue):new Date(0,0,0,0,0,0,0);c.setFullYear(b.getFullYear(),b.getMonth(),b.getDate()),j.$setViewValue(c),j.$render()}else i.activeDate=b,a.datepickerMode=i.modes[i.modes.indexOf(a.datepickerMode)-1]},a.move=function(a){var b=i.activeDate.getFullYear()+a*(i.step.years||0),c=i.activeDate.getMonth()+a*(i.step.months||0);i.activeDate.setFullYear(b,c,1),i.refreshView()},a.toggleMode=function(b){b=b||1,a.datepickerMode===i.maxMode&&1===b||a.datepickerMode===i.minMode&&-1===b||(a.datepickerMode=i.modes[i.modes.indexOf(a.datepickerMode)+b])},a.keys={13:"enter",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down"};var k=function(){e(function(){i.element[0].focus()},0,!1)};a.$on("datepicker.focus",k),a.keydown=function(b){var c=a.keys[b.which];if(c&&!b.shiftKey&&!b.altKey)if(b.preventDefault(),b.stopPropagation(),"enter"===c||"space"===c){if(i.isDisabled(i.activeDate))return;a.select(i.activeDate),k()}else!b.ctrlKey||"up"!==c&&"down"!==c?(i.handleKeyDown(c,b),i.refreshView()):(a.toggleMode("up"===c?1:-1),k())}}]).directive("datepicker",function(){return{restrict:"EA",replace:!0,templateUrl:"template/datepicker/datepicker.html",scope:{datepickerMode:"=?",dateDisabled:"&"},require:["datepicker","?^ngModel"],controller:"DatepickerController",link:function(a,b,c,d){var e=d[0],f=d[1];f&&e.init(f)}}}).directive("daypicker",["dateFilter",function(a){return{restrict:"EA",replace:!0,templateUrl:"template/datepicker/day.html",require:"^datepicker",link:function(b,c,d,e){function f(a,b){return 1!==b||a%4!==0||a%100===0&&a%400!==0?i[b]:29}function g(a,b){var c=new Array(b),d=new Date(a),e=0;for(d.setHours(12);b>e;)c[e++]=new Date(d),d.setDate(d.getDate()+1);return c}function h(a){var b=new Date(a);b.setDate(b.getDate()+4-(b.getDay()||7));var c=b.getTime();return b.setMonth(0),b.setDate(1),Math.floor(Math.round((c-b)/864e5)/7)+1}b.showWeeks=e.showWeeks,e.step={months:1},e.element=c;var i=[31,28,31,30,31,30,31,31,30,31,30,31];e._refreshView=function(){var c=e.activeDate.getFullYear(),d=e.activeDate.getMonth(),f=new Date(c,d,1),i=e.startingDay-f.getDay(),j=i>0?7-i:-i,k=new Date(f);j>0&&k.setDate(-j+1);for(var l=g(k,42),m=0;42>m;m++)l[m]=angular.extend(e.createDateObject(l[m],e.formatDay),{secondary:l[m].getMonth()!==d,uid:b.uniqueId+"-"+m});b.labels=new Array(7);for(var n=0;7>n;n++)b.labels[n]={abbr:a(l[n].date,e.formatDayHeader),full:a(l[n].date,"EEEE")};if(b.title=a(e.activeDate,e.formatDayTitle),b.rows=e.split(l,7),b.showWeeks){b.weekNumbers=[];for(var o=h(b.rows[0][0].date),p=b.rows.length;b.weekNumbers.push(o++)<p;);}},e.compare=function(a,b){return new Date(a.getFullYear(),a.getMonth(),a.getDate())-new Date(b.getFullYear(),b.getMonth(),b.getDate())},e.handleKeyDown=function(a){var b=e.activeDate.getDate();if("left"===a)b-=1;else if("up"===a)b-=7;else if("right"===a)b+=1;else if("down"===a)b+=7;else if("pageup"===a||"pagedown"===a){var c=e.activeDate.getMonth()+("pageup"===a?-1:1);e.activeDate.setMonth(c,1),b=Math.min(f(e.activeDate.getFullYear(),e.activeDate.getMonth()),b)}else"home"===a?b=1:"end"===a&&(b=f(e.activeDate.getFullYear(),e.activeDate.getMonth()));e.activeDate.setDate(b)},e.refreshView()}}}]).directive("monthpicker",["dateFilter",function(a){return{restrict:"EA",replace:!0,templateUrl:"template/datepicker/month.html",require:"^datepicker",link:function(b,c,d,e){e.step={years:1},e.element=c,e._refreshView=function(){for(var c=new Array(12),d=e.activeDate.getFullYear(),f=0;12>f;f++)c[f]=angular.extend(e.createDateObject(new Date(d,f,1),e.formatMonth),{uid:b.uniqueId+"-"+f});b.title=a(e.activeDate,e.formatMonthTitle),b.rows=e.split(c,3)},e.compare=function(a,b){return new Date(a.getFullYear(),a.getMonth())-new Date(b.getFullYear(),b.getMonth())},e.handleKeyDown=function(a){var b=e.activeDate.getMonth();if("left"===a)b-=1;else if("up"===a)b-=3;else if("right"===a)b+=1;else if("down"===a)b+=3;else if("pageup"===a||"pagedown"===a){var c=e.activeDate.getFullYear()+("pageup"===a?-1:1);e.activeDate.setFullYear(c)}else"home"===a?b=0:"end"===a&&(b=11);e.activeDate.setMonth(b)},e.refreshView()}}}]).directive("yearpicker",["dateFilter",function(){return{restrict:"EA",replace:!0,templateUrl:"template/datepicker/year.html",require:"^datepicker",link:function(a,b,c,d){function e(a){return parseInt((a-1)/f,10)*f+1}var f=d.yearRange;d.step={years:f},d.element=b,d._refreshView=function(){for(var b=new Array(f),c=0,g=e(d.activeDate.getFullYear());f>c;c++)b[c]=angular.extend(d.createDateObject(new Date(g+c,0,1),d.formatYear),{uid:a.uniqueId+"-"+c});a.title=[b[0].label,b[f-1].label].join(" - "),a.rows=d.split(b,5)},d.compare=function(a,b){return a.getFullYear()-b.getFullYear()},d.handleKeyDown=function(a){var b=d.activeDate.getFullYear();"left"===a?b-=1:"up"===a?b-=5:"right"===a?b+=1:"down"===a?b+=5:"pageup"===a||"pagedown"===a?b+=("pageup"===a?-1:1)*d.step.years:"home"===a?b=e(d.activeDate.getFullYear()):"end"===a&&(b=e(d.activeDate.getFullYear())+f-1),d.activeDate.setFullYear(b)},d.refreshView()}}}]).constant("datepickerPopupConfig",{datepickerPopup:"yyyy-MM-dd",currentText:"Today",clearText:"Clear",closeText:"Done",closeOnDateSelection:!0,appendToBody:!1,showButtonBar:!0}).directive("datepickerPopup",["$compile","$parse","$document","$position","dateFilter","dateParser","datepickerPopupConfig",function(a,b,c,d,e,f,g){return{restrict:"EA",require:"ngModel",scope:{isOpen:"=?",currentText:"@",clearText:"@",closeText:"@",dateDisabled:"&"},link:function(h,i,j,k){function l(a){return a.replace(/([A-Z])/g,function(a){return"-"+a.toLowerCase()})}function m(a){if(a){if(angular.isDate(a)&&!isNaN(a))return k.$setValidity("date",!0),a;if(angular.isString(a)){var b=f.parse(a,n)||new Date(a);return isNaN(b)?void k.$setValidity("date",!1):(k.$setValidity("date",!0),b)}return void k.$setValidity("date",!1)}return k.$setValidity("date",!0),null}var n,o=angular.isDefined(j.closeOnDateSelection)?h.$parent.$eval(j.closeOnDateSelection):g.closeOnDateSelection,p=angular.isDefined(j.datepickerAppendToBody)?h.$parent.$eval(j.datepickerAppendToBody):g.appendToBody;h.showButtonBar=angular.isDefined(j.showButtonBar)?h.$parent.$eval(j.showButtonBar):g.showButtonBar,h.getText=function(a){return h[a+"Text"]||g[a+"Text"]},j.$observe("datepickerPopup",function(a){n=a||g.datepickerPopup,k.$render()});var q=angular.element("<div datepicker-popup-wrap><div datepicker></div></div>");q.attr({"ng-model":"date","ng-change":"dateSelection()"});var r=angular.element(q.children()[0]);j.datepickerOptions&&angular.forEach(h.$parent.$eval(j.datepickerOptions),function(a,b){r.attr(l(b),a)}),h.watchData={},angular.forEach(["minDate","maxDate","datepickerMode"],function(a){if(j[a]){var c=b(j[a]);if(h.$parent.$watch(c,function(b){h.watchData[a]=b}),r.attr(l(a),"watchData."+a),"datepickerMode"===a){var d=c.assign;h.$watch("watchData."+a,function(a,b){a!==b&&d(h.$parent,a)})}}}),j.dateDisabled&&r.attr("date-disabled","dateDisabled({ date: date, mode: mode })"),k.$parsers.unshift(m),h.dateSelection=function(a){angular.isDefined(a)&&(h.date=a),k.$setViewValue(h.date),k.$render(),o&&(h.isOpen=!1,i[0].focus())},i.bind("input change keyup",function(){h.$apply(function(){h.date=k.$modelValue})}),k.$render=function(){var a=k.$viewValue?e(k.$viewValue,n):"";i.val(a),h.date=m(k.$modelValue)};var s=function(a){h.isOpen&&a.target!==i[0]&&h.$apply(function(){h.isOpen=!1})},t=function(a){h.keydown(a)};i.bind("keydown",t),h.keydown=function(a){27===a.which?(a.preventDefault(),a.stopPropagation(),h.close()):40!==a.which||h.isOpen||(h.isOpen=!0)},h.$watch("isOpen",function(a){a?(h.$broadcast("datepicker.focus"),h.position=p?d.offset(i):d.position(i),h.position.top=h.position.top+i.prop("offsetHeight"),c.bind("click",s)):c.unbind("click",s)}),h.select=function(a){if("today"===a){var b=new Date;angular.isDate(k.$modelValue)?(a=new Date(k.$modelValue),a.setFullYear(b.getFullYear(),b.getMonth(),b.getDate())):a=new Date(b.setHours(0,0,0,0))}h.dateSelection(a)},h.close=function(){h.isOpen=!1,i[0].focus()};var u=a(q)(h);q.remove(),p?c.find("body").append(u):i.after(u),h.$on("$destroy",function(){u.remove(),i.unbind("keydown",t),c.unbind("click",s)})}}}]).directive("datepickerPopupWrap",function(){return{restrict:"EA",replace:!0,transclude:!0,templateUrl:"template/datepicker/popup.html",link:function(a,b){b.bind("click",function(a){a.preventDefault(),a.stopPropagation()})}}}),angular.module("ui.bootstrap.dropdown",[]).constant("dropdownConfig",{openClass:"open"}).service("dropdownService",["$document",function(a){var b=null;this.open=function(e){b||(a.bind("click",c),a.bind("keydown",d)),b&&b!==e&&(b.isOpen=!1),b=e},this.close=function(e){b===e&&(b=null,a.unbind("click",c),a.unbind("keydown",d))};var c=function(a){if(b){var c=b.getToggleElement();a&&c&&c[0].contains(a.target)||b.$apply(function(){b.isOpen=!1})}},d=function(a){27===a.which&&(b.focusToggleElement(),c())}}]).controller("DropdownController",["$scope","$attrs","$parse","dropdownConfig","dropdownService","$animate",function(a,b,c,d,e,f){var g,h=this,i=a.$new(),j=d.openClass,k=angular.noop,l=b.onToggle?c(b.onToggle):angular.noop;this.init=function(d){h.$element=d,b.isOpen&&(g=c(b.isOpen),k=g.assign,a.$watch(g,function(a){i.isOpen=!!a}))},this.toggle=function(a){return i.isOpen=arguments.length?!!a:!i.isOpen},this.isOpen=function(){return i.isOpen},i.getToggleElement=function(){return h.toggleElement},i.focusToggleElement=function(){h.toggleElement&&h.toggleElement[0].focus()},i.$watch("isOpen",function(b,c){f[b?"addClass":"removeClass"](h.$element,j),b?(i.focusToggleElement(),e.open(i)):e.close(i),k(a,b),angular.isDefined(b)&&b!==c&&l(a,{open:!!b})}),a.$on("$locationChangeSuccess",function(){i.isOpen=!1}),a.$on("$destroy",function(){i.$destroy()})}]).directive("dropdown",function(){return{controller:"DropdownController",link:function(a,b,c,d){d.init(b)}}}).directive("dropdownToggle",function(){return{require:"?^dropdown",link:function(a,b,c,d){if(d){d.toggleElement=b;var e=function(e){e.preventDefault(),b.hasClass("disabled")||c.disabled||a.$apply(function(){d.toggle()})};b.bind("click",e),b.attr({"aria-haspopup":!0,"aria-expanded":!1}),a.$watch(d.isOpen,function(a){b.attr("aria-expanded",!!a)}),a.$on("$destroy",function(){b.unbind("click",e)})}}}}),angular.module("ui.bootstrap.modal",["ui.bootstrap.transition"]).factory("$$stackedMap",function(){return{createNew:function(){var a=[];return{add:function(b,c){a.push({key:b,value:c})},get:function(b){for(var c=0;c<a.length;c++)if(b==a[c].key)return a[c]},keys:function(){for(var b=[],c=0;c<a.length;c++)b.push(a[c].key);return b},top:function(){return a[a.length-1]},remove:function(b){for(var c=-1,d=0;d<a.length;d++)if(b==a[d].key){c=d;break}return a.splice(c,1)[0]},removeTop:function(){return a.splice(a.length-1,1)[0]},length:function(){return a.length}}}}}).directive("modalBackdrop",["$timeout",function(a){return{restrict:"EA",replace:!0,templateUrl:"template/modal/backdrop.html",link:function(b,c,d){b.backdropClass=d.backdropClass||"",b.animate=!1,a(function(){b.animate=!0})}}}]).directive("modalWindow",["$modalStack","$timeout",function(a,b){return{restrict:"EA",scope:{index:"@",animate:"="},replace:!0,transclude:!0,templateUrl:function(a,b){return b.templateUrl||"template/modal/window.html"},link:function(c,d,e){d.addClass(e.windowClass||""),c.size=e.size,b(function(){c.animate=!0,d[0].querySelectorAll("[autofocus]").length||d[0].focus()}),c.close=function(b){var c=a.getTop();c&&c.value.backdrop&&"static"!=c.value.backdrop&&b.target===b.currentTarget&&(b.preventDefault(),b.stopPropagation(),a.dismiss(c.key,"backdrop click"))}}}}]).directive("modalTransclude",function(){return{link:function(a,b,c,d,e){e(a.$parent,function(a){b.empty(),b.append(a)})}}}).factory("$modalStack",["$transition","$timeout","$document","$compile","$rootScope","$$stackedMap",function(a,b,c,d,e,f){function g(){for(var a=-1,b=n.keys(),c=0;c<b.length;c++)n.get(b[c]).value.backdrop&&(a=c);return a}function h(a){var b=c.find("body").eq(0),d=n.get(a).value;n.remove(a),j(d.modalDomEl,d.modalScope,300,function(){d.modalScope.$destroy(),b.toggleClass(m,n.length()>0),i()})}function i(){if(k&&-1==g()){var a=l;j(k,l,150,function(){a.$destroy(),a=null}),k=void 0,l=void 0}}function j(c,d,e,f){function g(){g.done||(g.done=!0,c.remove(),f&&f())}d.animate=!1;var h=a.transitionEndEventName;if(h){var i=b(g,e);c.bind(h,function(){b.cancel(i),g(),d.$apply()})}else b(g)}var k,l,m="modal-open",n=f.createNew(),o={};return e.$watch(g,function(a){l&&(l.index=a)}),c.bind("keydown",function(a){var b;27===a.which&&(b=n.top(),b&&b.value.keyboard&&(a.preventDefault(),e.$apply(function(){o.dismiss(b.key,"escape key press")})))}),o.open=function(a,b){n.add(a,{deferred:b.deferred,modalScope:b.scope,backdrop:b.backdrop,keyboard:b.keyboard});var f=c.find("body").eq(0),h=g();if(h>=0&&!k){l=e.$new(!0),l.index=h;var i=angular.element("<div modal-backdrop></div>");i.attr("backdrop-class",b.backdropClass),k=d(i)(l),f.append(k)}var j=angular.element("<div modal-window></div>");j.attr({"template-url":b.windowTemplateUrl,"window-class":b.windowClass,size:b.size,index:n.length()-1,animate:"animate"}).html(b.content);var o=d(j)(b.scope);n.top().value.modalDomEl=o,f.append(o),f.addClass(m)},o.close=function(a,b){var c=n.get(a);c&&(c.value.deferred.resolve(b),h(a))},o.dismiss=function(a,b){var c=n.get(a);c&&(c.value.deferred.reject(b),h(a))},o.dismissAll=function(a){for(var b=this.getTop();b;)this.dismiss(b.key,a),b=this.getTop()},o.getTop=function(){return n.top()},o}]).provider("$modal",function(){var a={options:{backdrop:!0,keyboard:!0},$get:["$injector","$rootScope","$q","$http","$templateCache","$controller","$modalStack",function(b,c,d,e,f,g,h){function i(a){return a.template?d.when(a.template):e.get(angular.isFunction(a.templateUrl)?a.templateUrl():a.templateUrl,{cache:f}).then(function(a){return a.data})}function j(a){var c=[];return angular.forEach(a,function(a){(angular.isFunction(a)||angular.isArray(a))&&c.push(d.when(b.invoke(a)))}),c}var k={};return k.open=function(b){var e=d.defer(),f=d.defer(),k={result:e.promise,opened:f.promise,close:function(a){h.close(k,a)},dismiss:function(a){h.dismiss(k,a)}};if(b=angular.extend({},a.options,b),b.resolve=b.resolve||{},!b.template&&!b.templateUrl)throw new Error("One of template or templateUrl options is required.");var l=d.all([i(b)].concat(j(b.resolve)));return l.then(function(a){var d=(b.scope||c).$new();d.$close=k.close,d.$dismiss=k.dismiss;var f,i={},j=1;b.controller&&(i.$scope=d,i.$modalInstance=k,angular.forEach(b.resolve,function(b,c){i[c]=a[j++]}),f=g(b.controller,i),b.controllerAs&&(d[b.controllerAs]=f)),h.open(k,{scope:d,deferred:e,content:a[0],backdrop:b.backdrop,keyboard:b.keyboard,backdropClass:b.backdropClass,windowClass:b.windowClass,windowTemplateUrl:b.windowTemplateUrl,size:b.size})},function(a){e.reject(a)}),l.then(function(){f.resolve(!0)},function(){f.reject(!1)}),k},k}]};return a}),angular.module("ui.bootstrap.pagination",[]).controller("PaginationController",["$scope","$attrs","$parse",function(a,b,c){var d=this,e={$setViewValue:angular.noop},f=b.numPages?c(b.numPages).assign:angular.noop;this.init=function(f,g){e=f,this.config=g,e.$render=function(){d.render()},b.itemsPerPage?a.$parent.$watch(c(b.itemsPerPage),function(b){d.itemsPerPage=parseInt(b,10),a.totalPages=d.calculateTotalPages()}):this.itemsPerPage=g.itemsPerPage},this.calculateTotalPages=function(){var b=this.itemsPerPage<1?1:Math.ceil(a.totalItems/this.itemsPerPage);return Math.max(b||0,1)},this.render=function(){a.page=parseInt(e.$viewValue,10)||1},a.selectPage=function(b){a.page!==b&&b>0&&b<=a.totalPages&&(e.$setViewValue(b),e.$render())},a.getText=function(b){return a[b+"Text"]||d.config[b+"Text"]},a.noPrevious=function(){return 1===a.page},a.noNext=function(){return a.page===a.totalPages},a.$watch("totalItems",function(){a.totalPages=d.calculateTotalPages()}),a.$watch("totalPages",function(b){f(a.$parent,b),a.page>b?a.selectPage(b):e.$render()})}]).constant("paginationConfig",{itemsPerPage:10,boundaryLinks:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",rotate:!0}).directive("pagination",["$parse","paginationConfig",function(a,b){return{restrict:"EA",scope:{totalItems:"=",firstText:"@",previousText:"@",nextText:"@",lastText:"@"},require:["pagination","?ngModel"],controller:"PaginationController",templateUrl:"template/pagination/pagination.html",replace:!0,link:function(c,d,e,f){function g(a,b,c){return{number:a,text:b,active:c}}function h(a,b){var c=[],d=1,e=b,f=angular.isDefined(k)&&b>k;f&&(l?(d=Math.max(a-Math.floor(k/2),1),e=d+k-1,e>b&&(e=b,d=e-k+1)):(d=(Math.ceil(a/k)-1)*k+1,e=Math.min(d+k-1,b)));for(var h=d;e>=h;h++){var i=g(h,h,h===a);c.push(i)}if(f&&!l){if(d>1){var j=g(d-1,"...",!1);c.unshift(j)}if(b>e){var m=g(e+1,"...",!1);c.push(m)}}return c}var i=f[0],j=f[1];if(j){var k=angular.isDefined(e.maxSize)?c.$parent.$eval(e.maxSize):b.maxSize,l=angular.isDefined(e.rotate)?c.$parent.$eval(e.rotate):b.rotate;c.boundaryLinks=angular.isDefined(e.boundaryLinks)?c.$parent.$eval(e.boundaryLinks):b.boundaryLinks,c.directionLinks=angular.isDefined(e.directionLinks)?c.$parent.$eval(e.directionLinks):b.directionLinks,i.init(j,b),e.maxSize&&c.$parent.$watch(a(e.maxSize),function(a){k=parseInt(a,10),i.render()
});var m=i.render;i.render=function(){m(),c.page>0&&c.page<=c.totalPages&&(c.pages=h(c.page,c.totalPages))}}}}}]).constant("pagerConfig",{itemsPerPage:10,previousText:"« Previous",nextText:"Next »",align:!0}).directive("pager",["pagerConfig",function(a){return{restrict:"EA",scope:{totalItems:"=",previousText:"@",nextText:"@"},require:["pager","?ngModel"],controller:"PaginationController",templateUrl:"template/pagination/pager.html",replace:!0,link:function(b,c,d,e){var f=e[0],g=e[1];g&&(b.align=angular.isDefined(d.align)?b.$parent.$eval(d.align):a.align,f.init(g,a))}}}]),angular.module("ui.bootstrap.tooltip",["ui.bootstrap.position","ui.bootstrap.bindHtml"]).provider("$tooltip",function(){function a(a){var b=/[A-Z]/g,c="-";return a.replace(b,function(a,b){return(b?c:"")+a.toLowerCase()})}var b={placement:"top",animation:!0,popupDelay:0},c={mouseenter:"mouseleave",click:"click",focus:"blur"},d={};this.options=function(a){angular.extend(d,a)},this.setTriggers=function(a){angular.extend(c,a)},this.$get=["$window","$compile","$timeout","$document","$position","$interpolate",function(e,f,g,h,i,j){return function(e,k,l){function m(a){var b=a||n.trigger||l,d=c[b]||b;return{show:b,hide:d}}var n=angular.extend({},b,d),o=a(e),p=j.startSymbol(),q=j.endSymbol(),r="<div "+o+'-popup title="'+p+"title"+q+'" content="'+p+"content"+q+'" placement="'+p+"placement"+q+'" animation="animation" is-open="isOpen"></div>';return{restrict:"EA",compile:function(){var a=f(r);return function(b,c,d){function f(){D.isOpen?l():j()}function j(){(!C||b.$eval(d[k+"Enable"]))&&(s(),D.popupDelay?z||(z=g(o,D.popupDelay,!1),z.then(function(a){a()})):o()())}function l(){b.$apply(function(){p()})}function o(){return z=null,y&&(g.cancel(y),y=null),D.content?(q(),w.css({top:0,left:0,display:"block"}),D.$digest(),E(),D.isOpen=!0,D.$digest(),E):angular.noop}function p(){D.isOpen=!1,g.cancel(z),z=null,D.animation?y||(y=g(r,500)):r()}function q(){w&&r(),x=D.$new(),w=a(x,function(a){A?h.find("body").append(a):c.after(a)})}function r(){y=null,w&&(w.remove(),w=null),x&&(x.$destroy(),x=null)}function s(){t(),u()}function t(){var a=d[k+"Placement"];D.placement=angular.isDefined(a)?a:n.placement}function u(){var a=d[k+"PopupDelay"],b=parseInt(a,10);D.popupDelay=isNaN(b)?n.popupDelay:b}function v(){var a=d[k+"Trigger"];F(),B=m(a),B.show===B.hide?c.bind(B.show,f):(c.bind(B.show,j),c.bind(B.hide,l))}var w,x,y,z,A=angular.isDefined(n.appendToBody)?n.appendToBody:!1,B=m(void 0),C=angular.isDefined(d[k+"Enable"]),D=b.$new(!0),E=function(){var a=i.positionElements(c,w,D.placement,A);a.top+="px",a.left+="px",w.css(a)};D.isOpen=!1,d.$observe(e,function(a){D.content=a,!a&&D.isOpen&&p()}),d.$observe(k+"Title",function(a){D.title=a});var F=function(){c.unbind(B.show,j),c.unbind(B.hide,l)};v();var G=b.$eval(d[k+"Animation"]);D.animation=angular.isDefined(G)?!!G:n.animation;var H=b.$eval(d[k+"AppendToBody"]);A=angular.isDefined(H)?H:A,A&&b.$on("$locationChangeSuccess",function(){D.isOpen&&p()}),b.$on("$destroy",function(){g.cancel(y),g.cancel(z),F(),r(),D=null})}}}}}]}).directive("tooltipPopup",function(){return{restrict:"EA",replace:!0,scope:{content:"@",placement:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-popup.html"}}).directive("tooltip",["$tooltip",function(a){return a("tooltip","tooltip","mouseenter")}]).directive("tooltipHtmlUnsafePopup",function(){return{restrict:"EA",replace:!0,scope:{content:"@",placement:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-html-unsafe-popup.html"}}).directive("tooltipHtmlUnsafe",["$tooltip",function(a){return a("tooltipHtmlUnsafe","tooltip","mouseenter")}]),angular.module("ui.bootstrap.popover",["ui.bootstrap.tooltip"]).directive("popoverPopup",function(){return{restrict:"EA",replace:!0,scope:{title:"@",content:"@",placement:"@",animation:"&",isOpen:"&"},templateUrl:"template/popover/popover.html"}}).directive("popover",["$tooltip",function(a){return a("popover","popover","click")}]),angular.module("ui.bootstrap.progressbar",[]).constant("progressConfig",{animate:!0,max:100}).controller("ProgressController",["$scope","$attrs","progressConfig",function(a,b,c){var d=this,e=angular.isDefined(b.animate)?a.$parent.$eval(b.animate):c.animate;this.bars=[],a.max=angular.isDefined(b.max)?a.$parent.$eval(b.max):c.max,this.addBar=function(b,c){e||c.css({transition:"none"}),this.bars.push(b),b.$watch("value",function(c){b.percent=+(100*c/a.max).toFixed(2)}),b.$on("$destroy",function(){c=null,d.removeBar(b)})},this.removeBar=function(a){this.bars.splice(this.bars.indexOf(a),1)}}]).directive("progress",function(){return{restrict:"EA",replace:!0,transclude:!0,controller:"ProgressController",require:"progress",scope:{},templateUrl:"template/progressbar/progress.html"}}).directive("bar",function(){return{restrict:"EA",replace:!0,transclude:!0,require:"^progress",scope:{value:"=",type:"@"},templateUrl:"template/progressbar/bar.html",link:function(a,b,c,d){d.addBar(a,b)}}}).directive("progressbar",function(){return{restrict:"EA",replace:!0,transclude:!0,controller:"ProgressController",scope:{value:"=",type:"@"},templateUrl:"template/progressbar/progressbar.html",link:function(a,b,c,d){d.addBar(a,angular.element(b.children()[0]))}}}),angular.module("ui.bootstrap.rating",[]).constant("ratingConfig",{max:5,stateOn:null,stateOff:null}).controller("RatingController",["$scope","$attrs","ratingConfig",function(a,b,c){var d={$setViewValue:angular.noop};this.init=function(e){d=e,d.$render=this.render,this.stateOn=angular.isDefined(b.stateOn)?a.$parent.$eval(b.stateOn):c.stateOn,this.stateOff=angular.isDefined(b.stateOff)?a.$parent.$eval(b.stateOff):c.stateOff;var f=angular.isDefined(b.ratingStates)?a.$parent.$eval(b.ratingStates):new Array(angular.isDefined(b.max)?a.$parent.$eval(b.max):c.max);a.range=this.buildTemplateObjects(f)},this.buildTemplateObjects=function(a){for(var b=0,c=a.length;c>b;b++)a[b]=angular.extend({index:b},{stateOn:this.stateOn,stateOff:this.stateOff},a[b]);return a},a.rate=function(b){!a.readonly&&b>=0&&b<=a.range.length&&(d.$setViewValue(b),d.$render())},a.enter=function(b){a.readonly||(a.value=b),a.onHover({value:b})},a.reset=function(){a.value=d.$viewValue,a.onLeave()},a.onKeydown=function(b){/(37|38|39|40)/.test(b.which)&&(b.preventDefault(),b.stopPropagation(),a.rate(a.value+(38===b.which||39===b.which?1:-1)))},this.render=function(){a.value=d.$viewValue}}]).directive("rating",function(){return{restrict:"EA",require:["rating","ngModel"],scope:{readonly:"=?",onHover:"&",onLeave:"&"},controller:"RatingController",templateUrl:"template/rating/rating.html",replace:!0,link:function(a,b,c,d){var e=d[0],f=d[1];f&&e.init(f)}}}),angular.module("ui.bootstrap.tabs",[]).controller("TabsetController",["$scope",function(a){var b=this,c=b.tabs=a.tabs=[];b.select=function(a){angular.forEach(c,function(b){b.active&&b!==a&&(b.active=!1,b.onDeselect())}),a.active=!0,a.onSelect()},b.addTab=function(a){c.push(a),1===c.length?a.active=!0:a.active&&b.select(a)},b.removeTab=function(a){var e=c.indexOf(a);if(a.active&&c.length>1&&!d){var f=e==c.length-1?e-1:e+1;b.select(c[f])}c.splice(e,1)};var d;a.$on("$destroy",function(){d=!0})}]).directive("tabset",function(){return{restrict:"EA",transclude:!0,replace:!0,scope:{type:"@"},controller:"TabsetController",templateUrl:"template/tabs/tabset.html",link:function(a,b,c){a.vertical=angular.isDefined(c.vertical)?a.$parent.$eval(c.vertical):!1,a.justified=angular.isDefined(c.justified)?a.$parent.$eval(c.justified):!1}}}).directive("tab",["$parse",function(a){return{require:"^tabset",restrict:"EA",replace:!0,templateUrl:"template/tabs/tab.html",transclude:!0,scope:{active:"=?",heading:"@",onSelect:"&select",onDeselect:"&deselect"},controller:function(){},compile:function(b,c,d){return function(b,c,e,f){b.$watch("active",function(a){a&&f.select(b)}),b.disabled=!1,e.disabled&&b.$parent.$watch(a(e.disabled),function(a){b.disabled=!!a}),b.select=function(){b.disabled||(b.active=!0)},f.addTab(b),b.$on("$destroy",function(){f.removeTab(b)}),b.$transcludeFn=d}}}}]).directive("tabHeadingTransclude",[function(){return{restrict:"A",require:"^tab",link:function(a,b){a.$watch("headingElement",function(a){a&&(b.html(""),b.append(a))})}}}]).directive("tabContentTransclude",function(){function a(a){return a.tagName&&(a.hasAttribute("tab-heading")||a.hasAttribute("data-tab-heading")||"tab-heading"===a.tagName.toLowerCase()||"data-tab-heading"===a.tagName.toLowerCase())}return{restrict:"A",require:"^tabset",link:function(b,c,d){var e=b.$eval(d.tabContentTransclude);e.$transcludeFn(e.$parent,function(b){angular.forEach(b,function(b){a(b)?e.headingElement=b:c.append(b)})})}}}),angular.module("ui.bootstrap.timepicker",[]).constant("timepickerConfig",{hourStep:1,minuteStep:1,showMeridian:!0,meridians:null,readonlyInput:!1,mousewheel:!0}).controller("TimepickerController",["$scope","$attrs","$parse","$log","$locale","timepickerConfig",function(a,b,c,d,e,f){function g(){var b=parseInt(a.hours,10),c=a.showMeridian?b>0&&13>b:b>=0&&24>b;return c?(a.showMeridian&&(12===b&&(b=0),a.meridian===p[1]&&(b+=12)),b):void 0}function h(){var b=parseInt(a.minutes,10);return b>=0&&60>b?b:void 0}function i(a){return angular.isDefined(a)&&a.toString().length<2?"0"+a:a}function j(a){k(),o.$setViewValue(new Date(n)),l(a)}function k(){o.$setValidity("time",!0),a.invalidHours=!1,a.invalidMinutes=!1}function l(b){var c=n.getHours(),d=n.getMinutes();a.showMeridian&&(c=0===c||12===c?12:c%12),a.hours="h"===b?c:i(c),a.minutes="m"===b?d:i(d),a.meridian=n.getHours()<12?p[0]:p[1]}function m(a){var b=new Date(n.getTime()+6e4*a);n.setHours(b.getHours(),b.getMinutes()),j()}var n=new Date,o={$setViewValue:angular.noop},p=angular.isDefined(b.meridians)?a.$parent.$eval(b.meridians):f.meridians||e.DATETIME_FORMATS.AMPMS;this.init=function(c,d){o=c,o.$render=this.render;var e=d.eq(0),g=d.eq(1),h=angular.isDefined(b.mousewheel)?a.$parent.$eval(b.mousewheel):f.mousewheel;h&&this.setupMousewheelEvents(e,g),a.readonlyInput=angular.isDefined(b.readonlyInput)?a.$parent.$eval(b.readonlyInput):f.readonlyInput,this.setupInputEvents(e,g)};var q=f.hourStep;b.hourStep&&a.$parent.$watch(c(b.hourStep),function(a){q=parseInt(a,10)});var r=f.minuteStep;b.minuteStep&&a.$parent.$watch(c(b.minuteStep),function(a){r=parseInt(a,10)}),a.showMeridian=f.showMeridian,b.showMeridian&&a.$parent.$watch(c(b.showMeridian),function(b){if(a.showMeridian=!!b,o.$error.time){var c=g(),d=h();angular.isDefined(c)&&angular.isDefined(d)&&(n.setHours(c),j())}else l()}),this.setupMousewheelEvents=function(b,c){var d=function(a){a.originalEvent&&(a=a.originalEvent);var b=a.wheelDelta?a.wheelDelta:-a.deltaY;return a.detail||b>0};b.bind("mousewheel wheel",function(b){a.$apply(d(b)?a.incrementHours():a.decrementHours()),b.preventDefault()}),c.bind("mousewheel wheel",function(b){a.$apply(d(b)?a.incrementMinutes():a.decrementMinutes()),b.preventDefault()})},this.setupInputEvents=function(b,c){if(a.readonlyInput)return a.updateHours=angular.noop,void(a.updateMinutes=angular.noop);var d=function(b,c){o.$setViewValue(null),o.$setValidity("time",!1),angular.isDefined(b)&&(a.invalidHours=b),angular.isDefined(c)&&(a.invalidMinutes=c)};a.updateHours=function(){var a=g();angular.isDefined(a)?(n.setHours(a),j("h")):d(!0)},b.bind("blur",function(){!a.invalidHours&&a.hours<10&&a.$apply(function(){a.hours=i(a.hours)})}),a.updateMinutes=function(){var a=h();angular.isDefined(a)?(n.setMinutes(a),j("m")):d(void 0,!0)},c.bind("blur",function(){!a.invalidMinutes&&a.minutes<10&&a.$apply(function(){a.minutes=i(a.minutes)})})},this.render=function(){var a=o.$modelValue?new Date(o.$modelValue):null;isNaN(a)?(o.$setValidity("time",!1),d.error('Timepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.')):(a&&(n=a),k(),l())},a.incrementHours=function(){m(60*q)},a.decrementHours=function(){m(60*-q)},a.incrementMinutes=function(){m(r)},a.decrementMinutes=function(){m(-r)},a.toggleMeridian=function(){m(720*(n.getHours()<12?1:-1))}}]).directive("timepicker",function(){return{restrict:"EA",require:["timepicker","?^ngModel"],controller:"TimepickerController",replace:!0,scope:{},templateUrl:"template/timepicker/timepicker.html",link:function(a,b,c,d){var e=d[0],f=d[1];f&&e.init(f,b.find("input"))}}}),angular.module("ui.bootstrap.typeahead",["ui.bootstrap.position","ui.bootstrap.bindHtml"]).factory("typeaheadParser",["$parse",function(a){var b=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w\d]*))\s+in\s+([\s\S]+?)$/;return{parse:function(c){var d=c.match(b);if(!d)throw new Error('Expected typeahead specification in form of "_modelValue_ (as _label_)? for _item_ in _collection_" but got "'+c+'".');return{itemName:d[3],source:a(d[4]),viewMapper:a(d[2]||d[1]),modelMapper:a(d[1])}}}}]).directive("typeahead",["$compile","$parse","$q","$timeout","$document","$position","typeaheadParser",function(a,b,c,d,e,f,g){var h=[9,13,27,38,40];return{require:"ngModel",link:function(i,j,k,l){var m,n=i.$eval(k.typeaheadMinLength)||1,o=i.$eval(k.typeaheadWaitMs)||0,p=i.$eval(k.typeaheadEditable)!==!1,q=b(k.typeaheadLoading).assign||angular.noop,r=b(k.typeaheadOnSelect),s=k.typeaheadInputFormatter?b(k.typeaheadInputFormatter):void 0,t=k.typeaheadAppendToBody?i.$eval(k.typeaheadAppendToBody):!1,u=i.$eval(k.typeaheadFocusFirst)!==!1,v=b(k.ngModel).assign,w=g.parse(k.typeahead),x=i.$new();i.$on("$destroy",function(){x.$destroy()});var y="typeahead-"+x.$id+"-"+Math.floor(1e4*Math.random());j.attr({"aria-autocomplete":"list","aria-expanded":!1,"aria-owns":y});var z=angular.element("<div typeahead-popup></div>");z.attr({id:y,matches:"matches",active:"activeIdx",select:"select(activeIdx)",query:"query",position:"position"}),angular.isDefined(k.typeaheadTemplateUrl)&&z.attr("template-url",k.typeaheadTemplateUrl);var A=function(){x.matches=[],x.activeIdx=-1,j.attr("aria-expanded",!1)},B=function(a){return y+"-option-"+a};x.$watch("activeIdx",function(a){0>a?j.removeAttr("aria-activedescendant"):j.attr("aria-activedescendant",B(a))});var C=function(a){var b={$viewValue:a};q(i,!0),c.when(w.source(i,b)).then(function(c){var d=a===l.$viewValue;if(d&&m)if(c.length>0){x.activeIdx=u?0:-1,x.matches.length=0;for(var e=0;e<c.length;e++)b[w.itemName]=c[e],x.matches.push({id:B(e),label:w.viewMapper(x,b),model:c[e]});x.query=a,x.position=t?f.offset(j):f.position(j),x.position.top=x.position.top+j.prop("offsetHeight"),j.attr("aria-expanded",!0)}else A();d&&q(i,!1)},function(){A(),q(i,!1)})};A(),x.query=void 0;var D,E=function(a){D=d(function(){C(a)},o)},F=function(){D&&d.cancel(D)};l.$parsers.unshift(function(a){return m=!0,a&&a.length>=n?o>0?(F(),E(a)):C(a):(q(i,!1),F(),A()),p?a:a?void l.$setValidity("editable",!1):(l.$setValidity("editable",!0),a)}),l.$formatters.push(function(a){var b,c,d={};return s?(d.$model=a,s(i,d)):(d[w.itemName]=a,b=w.viewMapper(i,d),d[w.itemName]=void 0,c=w.viewMapper(i,d),b!==c?b:a)}),x.select=function(a){var b,c,e={};e[w.itemName]=c=x.matches[a].model,b=w.modelMapper(i,e),v(i,b),l.$setValidity("editable",!0),r(i,{$item:c,$model:b,$label:w.viewMapper(i,e)}),A(),d(function(){j[0].focus()},0,!1)},j.bind("keydown",function(a){0!==x.matches.length&&-1!==h.indexOf(a.which)&&(-1!=x.activeIdx||13!==a.which&&9!==a.which)&&(a.preventDefault(),40===a.which?(x.activeIdx=(x.activeIdx+1)%x.matches.length,x.$digest()):38===a.which?(x.activeIdx=(x.activeIdx>0?x.activeIdx:x.matches.length)-1,x.$digest()):13===a.which||9===a.which?x.$apply(function(){x.select(x.activeIdx)}):27===a.which&&(a.stopPropagation(),A(),x.$digest()))}),j.bind("blur",function(){m=!1});var G=function(a){j[0]!==a.target&&(A(),x.$digest())};e.bind("click",G),i.$on("$destroy",function(){e.unbind("click",G),t&&H.remove()});var H=a(z)(x);t?e.find("body").append(H):j.after(H)}}}]).directive("typeaheadPopup",function(){return{restrict:"EA",scope:{matches:"=",query:"=",active:"=",position:"=",select:"&"},replace:!0,templateUrl:"template/typeahead/typeahead-popup.html",link:function(a,b,c){a.templateUrl=c.templateUrl,a.isOpen=function(){return a.matches.length>0},a.isActive=function(b){return a.active==b},a.selectActive=function(b){a.active=b},a.selectMatch=function(b){a.select({activeIdx:b})}}}}).directive("typeaheadMatch",["$http","$templateCache","$compile","$parse",function(a,b,c,d){return{restrict:"EA",scope:{index:"=",match:"=",query:"="},link:function(e,f,g){var h=d(g.templateUrl)(e.$parent)||"template/typeahead/typeahead-match.html";a.get(h,{cache:b}).success(function(a){f.replaceWith(c(a.trim())(e))})}}}]).filter("typeaheadHighlight",function(){function a(a){return a.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}return function(b,c){return c?(""+b).replace(new RegExp(a(c),"gi"),"<strong>$&</strong>"):b}}),angular.module("template/accordion/accordion-group.html",[]).run(["$templateCache",function(a){a.put("template/accordion/accordion-group.html",'<div class="panel panel-default">\n  <div class="panel-heading">\n    <h4 class="panel-title">\n      <a href class="accordion-toggle" ng-click="toggleOpen()" accordion-transclude="heading"><span ng-class="{\'text-muted\': isDisabled}">{{heading}}</span></a>\n    </h4>\n  </div>\n  <div class="panel-collapse" collapse="!isOpen">\n	  <div class="panel-body" ng-transclude></div>\n  </div>\n</div>\n')}]),angular.module("template/accordion/accordion.html",[]).run(["$templateCache",function(a){a.put("template/accordion/accordion.html",'<div class="panel-group" ng-transclude></div>')}]),angular.module("template/alert/alert.html",[]).run(["$templateCache",function(a){a.put("template/alert/alert.html",'<div class="alert" ng-class="[\'alert-\' + (type || \'warning\'), closeable ? \'alert-dismissable\' : null]" role="alert">\n    <button ng-show="closeable" type="button" class="close" ng-click="close()">\n        <span aria-hidden="true">&times;</span>\n        <span class="sr-only">Close</span>\n    </button>\n    <div ng-transclude></div>\n</div>\n')}]),angular.module("template/carousel/carousel.html",[]).run(["$templateCache",function(a){a.put("template/carousel/carousel.html",'<div ng-mouseenter="pause()" ng-mouseleave="play()" class="carousel" ng-swipe-right="prev()" ng-swipe-left="next()">\n    <ol class="carousel-indicators" ng-show="slides.length > 1">\n        <li ng-repeat="slide in slides track by $index" ng-class="{active: isActive(slide)}" ng-click="select(slide)"></li>\n    </ol>\n    <div class="carousel-inner" ng-transclude></div>\n    <a class="left carousel-control" ng-click="prev()" ng-show="slides.length > 1"><span class="glyphicon glyphicon-chevron-left"></span></a>\n    <a class="right carousel-control" ng-click="next()" ng-show="slides.length > 1"><span class="glyphicon glyphicon-chevron-right"></span></a>\n</div>\n')}]),angular.module("template/carousel/slide.html",[]).run(["$templateCache",function(a){a.put("template/carousel/slide.html","<div ng-class=\"{\n    'active': leaving || (active && !entering),\n    'prev': (next || active) && direction=='prev',\n    'next': (next || active) && direction=='next',\n    'right': direction=='prev',\n    'left': direction=='next'\n  }\" class=\"item text-center\" ng-transclude></div>\n")}]),angular.module("template/datepicker/datepicker.html",[]).run(["$templateCache",function(a){a.put("template/datepicker/datepicker.html",'<div ng-switch="datepickerMode" role="application" ng-keydown="keydown($event)">\n  <daypicker ng-switch-when="day" tabindex="0"></daypicker>\n  <monthpicker ng-switch-when="month" tabindex="0"></monthpicker>\n  <yearpicker ng-switch-when="year" tabindex="0"></yearpicker>\n</div>')}]),angular.module("template/datepicker/day.html",[]).run(["$templateCache",function(a){a.put("template/datepicker/day.html",'<table role="grid" aria-labelledby="{{uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n  <thead>\n    <tr>\n      <th><button type="button" class="btn btn-default btn-sm pull-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"></i></button></th>\n      <th colspan="{{5 + showWeeks}}"><button id="{{uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm" ng-click="toggleMode()" tabindex="-1" style="width:100%;"><strong>{{title}}</strong></button></th>\n      <th><button type="button" class="btn btn-default btn-sm pull-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"></i></button></th>\n    </tr>\n    <tr>\n      <th ng-show="showWeeks" class="text-center"></th>\n      <th ng-repeat="label in labels track by $index" class="text-center"><small aria-label="{{label.full}}">{{label.abbr}}</small></th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr ng-repeat="row in rows track by $index">\n      <td ng-show="showWeeks" class="text-center h6"><em>{{ weekNumbers[$index] }}</em></td>\n      <td ng-repeat="dt in row track by dt.date" class="text-center" role="gridcell" id="{{dt.uid}}" aria-disabled="{{!!dt.disabled}}">\n        <button type="button" style="width:100%;" class="btn btn-default btn-sm" ng-class="{\'btn-info\': dt.selected, active: isActive(dt)}" ng-click="select(dt.date)" ng-disabled="dt.disabled" tabindex="-1"><span ng-class="{\'text-muted\': dt.secondary, \'text-info\': dt.current}">{{dt.label}}</span></button>\n      </td>\n    </tr>\n  </tbody>\n</table>\n')}]),angular.module("template/datepicker/month.html",[]).run(["$templateCache",function(a){a.put("template/datepicker/month.html",'<table role="grid" aria-labelledby="{{uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n  <thead>\n    <tr>\n      <th><button type="button" class="btn btn-default btn-sm pull-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"></i></button></th>\n      <th><button id="{{uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm" ng-click="toggleMode()" tabindex="-1" style="width:100%;"><strong>{{title}}</strong></button></th>\n      <th><button type="button" class="btn btn-default btn-sm pull-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"></i></button></th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr ng-repeat="row in rows track by $index">\n      <td ng-repeat="dt in row track by dt.date" class="text-center" role="gridcell" id="{{dt.uid}}" aria-disabled="{{!!dt.disabled}}">\n        <button type="button" style="width:100%;" class="btn btn-default" ng-class="{\'btn-info\': dt.selected, active: isActive(dt)}" ng-click="select(dt.date)" ng-disabled="dt.disabled" tabindex="-1"><span ng-class="{\'text-info\': dt.current}">{{dt.label}}</span></button>\n      </td>\n    </tr>\n  </tbody>\n</table>\n')}]),angular.module("template/datepicker/popup.html",[]).run(["$templateCache",function(a){a.put("template/datepicker/popup.html",'<ul class="dropdown-menu" ng-style="{display: (isOpen && \'block\') || \'none\', top: position.top+\'px\', left: position.left+\'px\'}" ng-keydown="keydown($event)">\n	<li ng-transclude></li>\n	<li ng-if="showButtonBar" style="padding:10px 9px 2px">\n		<span class="btn-group pull-left">\n			<button type="button" class="btn btn-sm btn-info" ng-click="select(\'today\')">{{ getText(\'current\') }}</button>\n			<button type="button" class="btn btn-sm btn-danger" ng-click="select(null)">{{ getText(\'clear\') }}</button>\n		</span>\n		<button type="button" class="btn btn-sm btn-success pull-right" ng-click="close()">{{ getText(\'close\') }}</button>\n	</li>\n</ul>\n')}]),angular.module("template/datepicker/year.html",[]).run(["$templateCache",function(a){a.put("template/datepicker/year.html",'<table role="grid" aria-labelledby="{{uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n  <thead>\n    <tr>\n      <th><button type="button" class="btn btn-default btn-sm pull-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"></i></button></th>\n      <th colspan="3"><button id="{{uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm" ng-click="toggleMode()" tabindex="-1" style="width:100%;"><strong>{{title}}</strong></button></th>\n      <th><button type="button" class="btn btn-default btn-sm pull-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"></i></button></th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr ng-repeat="row in rows track by $index">\n      <td ng-repeat="dt in row track by dt.date" class="text-center" role="gridcell" id="{{dt.uid}}" aria-disabled="{{!!dt.disabled}}">\n        <button type="button" style="width:100%;" class="btn btn-default" ng-class="{\'btn-info\': dt.selected, active: isActive(dt)}" ng-click="select(dt.date)" ng-disabled="dt.disabled" tabindex="-1"><span ng-class="{\'text-info\': dt.current}">{{dt.label}}</span></button>\n      </td>\n    </tr>\n  </tbody>\n</table>\n')}]),angular.module("template/modal/backdrop.html",[]).run(["$templateCache",function(a){a.put("template/modal/backdrop.html",'<div class="modal-backdrop fade {{ backdropClass }}"\n     ng-class="{in: animate}"\n     ng-style="{\'z-index\': 1040 + (index && 1 || 0) + index*10}"\n></div>\n')}]),angular.module("template/modal/window.html",[]).run(["$templateCache",function(a){a.put("template/modal/window.html",'<div tabindex="-1" role="dialog" class="modal fade" ng-class="{in: animate}" ng-style="{\'z-index\': 1050 + index*10, display: \'block\'}" ng-click="close($event)">\n    <div class="modal-dialog" ng-class="{\'modal-sm\': size == \'sm\', \'modal-lg\': size == \'lg\'}"><div class="modal-content" modal-transclude></div></div>\n</div>')}]),angular.module("template/pagination/pager.html",[]).run(["$templateCache",function(a){a.put("template/pagination/pager.html",'<ul class="pager">\n  <li ng-class="{disabled: noPrevious(), previous: align}"><a href ng-click="selectPage(page - 1)">{{getText(\'previous\')}}</a></li>\n  <li ng-class="{disabled: noNext(), next: align}"><a href ng-click="selectPage(page + 1)">{{getText(\'next\')}}</a></li>\n</ul>')}]),angular.module("template/pagination/pagination.html",[]).run(["$templateCache",function(a){a.put("template/pagination/pagination.html",'<ul class="pagination">\n  <li ng-if="boundaryLinks" ng-class="{disabled: noPrevious()}"><a href ng-click="selectPage(1)">{{getText(\'first\')}}</a></li>\n  <li ng-if="directionLinks" ng-class="{disabled: noPrevious()}"><a href ng-click="selectPage(page - 1)">{{getText(\'previous\')}}</a></li>\n  <li ng-repeat="page in pages track by $index" ng-class="{active: page.active}"><a href ng-click="selectPage(page.number)">{{page.text}}</a></li>\n  <li ng-if="directionLinks" ng-class="{disabled: noNext()}"><a href ng-click="selectPage(page + 1)">{{getText(\'next\')}}</a></li>\n  <li ng-if="boundaryLinks" ng-class="{disabled: noNext()}"><a href ng-click="selectPage(totalPages)">{{getText(\'last\')}}</a></li>\n</ul>')}]),angular.module("template/tooltip/tooltip-html-unsafe-popup.html",[]).run(["$templateCache",function(a){a.put("template/tooltip/tooltip-html-unsafe-popup.html",'<div class="tooltip {{placement}}" ng-class="{ in: isOpen(), fade: animation() }">\n  <div class="tooltip-arrow"></div>\n  <div class="tooltip-inner" bind-html-unsafe="content"></div>\n</div>\n')}]),angular.module("template/tooltip/tooltip-popup.html",[]).run(["$templateCache",function(a){a.put("template/tooltip/tooltip-popup.html",'<div class="tooltip {{placement}}" ng-class="{ in: isOpen(), fade: animation() }">\n  <div class="tooltip-arrow"></div>\n  <div class="tooltip-inner" ng-bind="content"></div>\n</div>\n')}]),angular.module("template/popover/popover.html",[]).run(["$templateCache",function(a){a.put("template/popover/popover.html",'<div class="popover {{placement}}" ng-class="{ in: isOpen(), fade: animation() }">\n  <div class="arrow"></div>\n\n  <div class="popover-inner">\n      <h3 class="popover-title" ng-bind="title" ng-show="title"></h3>\n      <div class="popover-content" ng-bind="content"></div>\n  </div>\n</div>\n')}]),angular.module("template/progressbar/bar.html",[]).run(["$templateCache",function(a){a.put("template/progressbar/bar.html",'<div class="progress-bar" ng-class="type && \'progress-bar-\' + type" role="progressbar" aria-valuenow="{{value}}" aria-valuemin="0" aria-valuemax="{{max}}" ng-style="{width: percent + \'%\'}" aria-valuetext="{{percent | number:0}}%" ng-transclude></div>')}]),angular.module("template/progressbar/progress.html",[]).run(["$templateCache",function(a){a.put("template/progressbar/progress.html",'<div class="progress" ng-transclude></div>')}]),angular.module("template/progressbar/progressbar.html",[]).run(["$templateCache",function(a){a.put("template/progressbar/progressbar.html",'<div class="progress">\n  <div class="progress-bar" ng-class="type && \'progress-bar-\' + type" role="progressbar" aria-valuenow="{{value}}" aria-valuemin="0" aria-valuemax="{{max}}" ng-style="{width: percent + \'%\'}" aria-valuetext="{{percent | number:0}}%" ng-transclude></div>\n</div>')}]),angular.module("template/rating/rating.html",[]).run(["$templateCache",function(a){a.put("template/rating/rating.html",'<span ng-mouseleave="reset()" ng-keydown="onKeydown($event)" tabindex="0" role="slider" aria-valuemin="0" aria-valuemax="{{range.length}}" aria-valuenow="{{value}}">\n    <i ng-repeat="r in range track by $index" ng-mouseenter="enter($index + 1)" ng-click="rate($index + 1)" class="glyphicon" ng-class="$index < value && (r.stateOn || \'glyphicon-star\') || (r.stateOff || \'glyphicon-star-empty\')">\n        <span class="sr-only">({{ $index < value ? \'*\' : \' \' }})</span>\n    </i>\n</span>')}]),angular.module("template/tabs/tab.html",[]).run(["$templateCache",function(a){a.put("template/tabs/tab.html",'<li ng-class="{active: active, disabled: disabled}">\n  <a href ng-click="select()" tab-heading-transclude>{{heading}}</a>\n</li>\n')}]),angular.module("template/tabs/tabset.html",[]).run(["$templateCache",function(a){a.put("template/tabs/tabset.html",'<div>\n  <ul class="nav nav-{{type || \'tabs\'}}" ng-class="{\'nav-stacked\': vertical, \'nav-justified\': justified}" ng-transclude></ul>\n  <div class="tab-content">\n    <div class="tab-pane" \n         ng-repeat="tab in tabs" \n         ng-class="{active: tab.active}"\n         tab-content-transclude="tab">\n    </div>\n  </div>\n</div>\n')}]),angular.module("template/timepicker/timepicker.html",[]).run(["$templateCache",function(a){a.put("template/timepicker/timepicker.html",'<table>\n	<tbody>\n		<tr class="text-center">\n			<td><a ng-click="incrementHours()" class="btn btn-link"><span class="glyphicon glyphicon-chevron-up"></span></a></td>\n			<td>&nbsp;</td>\n			<td><a ng-click="incrementMinutes()" class="btn btn-link"><span class="glyphicon glyphicon-chevron-up"></span></a></td>\n			<td ng-show="showMeridian"></td>\n		</tr>\n		<tr>\n			<td style="width:50px;" class="form-group" ng-class="{\'has-error\': invalidHours}">\n				<input type="text" ng-model="hours" ng-change="updateHours()" class="form-control text-center" ng-mousewheel="incrementHours()" ng-readonly="readonlyInput" maxlength="2">\n			</td>\n			<td>:</td>\n			<td style="width:50px;" class="form-group" ng-class="{\'has-error\': invalidMinutes}">\n				<input type="text" ng-model="minutes" ng-change="updateMinutes()" class="form-control text-center" ng-readonly="readonlyInput" maxlength="2">\n			</td>\n			<td ng-show="showMeridian"><button type="button" class="btn btn-default text-center" ng-click="toggleMeridian()">{{meridian}}</button></td>\n		</tr>\n		<tr class="text-center">\n			<td><a ng-click="decrementHours()" class="btn btn-link"><span class="glyphicon glyphicon-chevron-down"></span></a></td>\n			<td>&nbsp;</td>\n			<td><a ng-click="decrementMinutes()" class="btn btn-link"><span class="glyphicon glyphicon-chevron-down"></span></a></td>\n			<td ng-show="showMeridian"></td>\n		</tr>\n	</tbody>\n</table>\n')}]),angular.module("template/typeahead/typeahead-match.html",[]).run(["$templateCache",function(a){a.put("template/typeahead/typeahead-match.html",'<a tabindex="-1" bind-html-unsafe="match.label | typeaheadHighlight:query"></a>')
}]),angular.module("template/typeahead/typeahead-popup.html",[]).run(["$templateCache",function(a){a.put("template/typeahead/typeahead-popup.html",'<ul class="dropdown-menu" ng-show="isOpen()" ng-style="{top: position.top+\'px\', left: position.left+\'px\'}" style="display: block;" role="listbox" aria-hidden="{{!isOpen()}}">\n    <li ng-repeat="match in matches track by $index" ng-class="{active: isActive($index) }" ng-mouseenter="selectActive($index)" ng-click="selectMatch($index)" role="option" id="{{match.id}}">\n        <div typeahead-match index="$index" match="match" query="query" template-url="templateUrl"></div>\n    </li>\n</ul>\n')}]);;
(function(n,t){typeof module!="undefined"&&module.exports?(typeof angular=="undefined"?t(require("angular")):t(angular),module.exports="ngDialog"):typeof define=="function"&&define.amd?define(["angular"],t):t(n.angular)})(this,function(n){"use strict";var e=n.module("ngDialog",[]),t=n.element,r=n.isDefined,u=(document.body||document.documentElement).style,l=r(u.animation)||r(u.WebkitAnimation)||r(u.MozAnimation)||r(u.MsAnimation)||r(u.OAnimation),h="animationend webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend",a="a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]",v="ngdialog-disabled-animation",o={html:!1,body:!1},f={},i=[],s=!1,c=!1;return e.provider("ngDialog",function(){var u=this.defaults={className:"ngdialog-theme-default",disableAnimation:!1,plain:!1,showClose:!0,closeByDocument:!0,closeByEscape:!0,closeByNavigation:!1,appendTo:!1,preCloseCallback:!1,overlay:!0,cache:!0,trapFocus:!0,preserveFocus:!0,ariaAuto:!0,ariaRole:null,ariaLabelledById:null,ariaLabelledBySelector:null,ariaDescribedById:null,ariaDescribedBySelector:null};this.setForceHtmlReload=function(n){o.html=n||!1};this.setForceBodyReload=function(n){o.body=n||!1};this.setDefaults=function(t){n.extend(u,t)};this.setOpenOnePerName=function(n){c=n||!1};var p=0,r=0,e,y={};this.$get=["$document","$templateCache","$compile","$q","$http","$rootScope","$timeout","$window","$controller","$injector",function(w,b,k,d,g,nt,tt,it,rt,ut){var et=[],ft={onDocumentKeydown:function(n){n.keyCode===27&&ot.close("$escape")},activate:function(n){var t=n.data("$ngDialogOptions");if(t.trapFocus){n.on("keydown",ft.onTrapFocusKeydown);et.body.on("keydown",ft.onTrapFocusKeydown)}},deactivate:function(n){n.off("keydown",ft.onTrapFocusKeydown);et.body.off("keydown",ft.onTrapFocusKeydown)},deactivateAll:function(t){n.forEach(t,function(t){var i=n.element(t);ft.deactivate(i)})},setBodyPadding:function(n){var t=parseInt(et.body.css("padding-right")||0,10);et.body.css("padding-right",t+n+"px");et.body.data("ng-dialog-original-padding",t);nt.$broadcast("ngDialog.setPadding",n)},resetBodyPadding:function(){var n=et.body.data("ng-dialog-original-padding");n?et.body.css("padding-right",n+"px"):et.body.css("padding-right","");nt.$broadcast("ngDialog.setPadding",0)},performCloseDialog:function(n,t){var v=n.data("$ngDialogOptions"),u=n.attr("id"),o=f[u],c,a;o&&(typeof it.Hammer!="undefined"?(c=o.hammerTime,c.off("tap",e),c.destroy&&c.destroy(),delete o.hammerTime):n.unbind("click"),r===1&&et.body.unbind("keydown",ft.onDocumentKeydown),n.hasClass("ngdialog-closing")||(r-=1),a=n.data("$ngDialogPreviousFocus"),a&&a.focus&&a.focus(),nt.$broadcast("ngDialog.closing",n,t),r=r<0?0:r,l&&!v.disableAnimation?(o.$destroy(),n.unbind(h).bind(h,function(){ft.closeDialogElement(n,t)}).addClass("ngdialog-closing")):(o.$destroy(),ft.closeDialogElement(n,t)),y[u]&&(y[u].resolve({id:u,value:t,$dialog:n,remainingDialogs:r}),delete y[u]),f[u]&&delete f[u],i.splice(i.indexOf(u),1),i.length||(et.body.unbind("keydown",ft.onDocumentKeydown),s=!1))},closeDialogElement:function(n,t){n.remove();r===0&&(et.html.removeClass("ngdialog-open"),et.body.removeClass("ngdialog-open"),ft.resetBodyPadding());nt.$broadcast("ngDialog.closed",n,t)},closeDialog:function(t,i){var u=t.data("$ngDialogPreCloseCallback"),r;u&&n.isFunction(u)?(r=u.call(t,i),n.isObject(r)?r.closePromise?r.closePromise.then(function(){ft.performCloseDialog(t,i)}):r.then(function(){ft.performCloseDialog(t,i)},function(){return}):r!==!1&&ft.performCloseDialog(t,i)):ft.performCloseDialog(t,i)},onTrapFocusKeydown:function(t){var r=n.element(t.currentTarget),i,u,f;if(r.hasClass("ngdialog"))i=r;else if(i=ft.getActiveDialog(),i===null)return;u=t.keyCode===9;f=t.shiftKey===!0;u&&ft.handleTab(i,t,f)},handleTab:function(n,t,i){var r=ft.getFocusableElements(n);if(r.length===0){document.activeElement&&document.activeElement.blur();return}var o=document.activeElement,u=Array.prototype.indexOf.call(r,o),e=u===-1,s=u===0,h=u===r.length-1,f=!1;i?(e||s)&&(r[r.length-1].focus(),f=!0):(e||h)&&(r[0].focus(),f=!0);f&&(t.preventDefault(),t.stopPropagation())},autoFocus:function(n){var e=n[0],i=e.querySelector("*[autofocus]"),r,u,f;if(i===null||(i.focus(),document.activeElement!==i)){if(r=ft.getFocusableElements(n),r.length>0){r[0].focus();return}u=ft.filterVisibleElements(e.querySelectorAll("h1,h2,h3,h4,h5,h6,p,span"));u.length>0&&(f=u[0],t(f).attr("tabindex","-1").css("outline","0"),f.focus())}},getFocusableElements:function(n){var t=n[0],i=t.querySelectorAll(a),r=ft.filterTabbableElements(i);return ft.filterVisibleElements(r)},filterTabbableElements:function(n){for(var r,u=[],i=0;i<n.length;i++)r=n[i],t(r).attr("tabindex")!=="-1"&&u.push(r);return u},filterVisibleElements:function(n){for(var t,r=[],i=0;i<n.length;i++)t=n[i],(t.offsetWidth>0||t.offsetHeight>0)&&r.push(t);return r},getActiveDialog:function(){var n=document.querySelectorAll(".ngdialog");return n.length===0?null:t(n[n.length-1])},applyAriaAttributes:function(n,t){if(t.ariaAuto){if(!t.ariaRole){var i=ft.getFocusableElements(n).length>0?"dialog":"alertdialog";t.ariaRole=i}t.ariaLabelledBySelector||(t.ariaLabelledBySelector="h1,h2,h3,h4,h5,h6");t.ariaDescribedBySelector||(t.ariaDescribedBySelector="article,section,p")}t.ariaRole&&n.attr("role",t.ariaRole);ft.applyAriaAttribute(n,"aria-labelledby",t.ariaLabelledById,t.ariaLabelledBySelector);ft.applyAriaAttribute(n,"aria-describedby",t.ariaDescribedById,t.ariaDescribedBySelector)},applyAriaAttribute:function(n,i,r,u){var o,e,f;return r&&n.attr(i,r),u?(o=n.attr("id"),e=n[0].querySelector(u),!e)?void 0:(f=o+"-"+i,t(e).attr("id",f),n.attr(i,f),f):void 0},detectUIRouter:function(){try{return n.module("ui.router"),!0}catch(t){return!1}},getRouterLocationEventName:function(){return ft.detectUIRouter()?"$stateChangeSuccess":"$locationChangeSuccess"}},ot={__PRIVATE__:ft,open:function(o){function at(n,t){return nt.$broadcast("ngDialog.templateLoading",n),g.get(n,t||{}).then(function(t){return nt.$broadcast("ngDialog.templateLoaded",n),t.data||""})}function vt(t){return t?n.isString(t)&&h.plain?t:typeof h.cache=="boolean"&&!h.cache?at(t,{cache:!1}):at(t,{cache:b}):"Empty template"}var w=null,h,ct,lt,a,l,ht,st;if(o=o||{},!c||!o.name||(w=o.name+" dialog",!this.isOpen(w)))return h=n.copy(u),ct=++p,w=w||"ngdialog"+ct,i.push(w),n.extend(h,o),y[w]=lt=d.defer(),f[w]=a=n.isObject(h.scope)?h.scope.$new():nt.$new(),st=n.extend({},h.resolve),n.forEach(st,function(t,i){st[i]=n.isString(t)?ut.get(t):ut.invoke(t,null,null,i)}),d.all({template:vt(h.template||h.templateUrl),locals:d.all(st)}).then(function(i){var f=i.template,g=i.locals,y,o,u,p,c,b,d;if(h.showClose&&(f+='<div class="ngdialog-close"><\/div>'),y=h.overlay?"":" ngdialog-no-overlay",l=t('<div id="'+w+'" class="ngdialog'+y+'"><\/div>'),l.html(h.overlay?'<div class="ngdialog-overlay"><\/div><div class="ngdialog-content" role="document">'+f+"<\/div>":'<div class="ngdialog-content" role="document">'+f+"<\/div>"),l.data("$ngDialogOptions",h),a.ngDialogId=w,h.data&&n.isString(h.data)?(o=h.data.replace(/^\s*/,"")[0],a.ngDialogData=o==="{"||o==="["?n.fromJson(h.data):h.data,a.ngDialogData.ngDialogId=w):h.data&&n.isObject(h.data)&&(a.ngDialogData=h.data,a.ngDialogData.ngDialogId=w),h.className&&l.addClass(h.className),h.disableAnimation&&l.addClass(v),ht=h.appendTo&&n.isString(h.appendTo)?n.element(document.querySelector(h.appendTo)):et.body,ft.applyAriaAttributes(l,h),h.preCloseCallback&&(n.isFunction(h.preCloseCallback)?u=h.preCloseCallback:n.isString(h.preCloseCallback)&&a&&(n.isFunction(a[h.preCloseCallback])?u=a[h.preCloseCallback]:a.$parent&&n.isFunction(a.$parent[h.preCloseCallback])?u=a.$parent[h.preCloseCallback]:nt&&n.isFunction(nt[h.preCloseCallback])&&(u=nt[h.preCloseCallback])),u&&l.data("$ngDialogPreCloseCallback",u)),a.closeThisDialog=function(n){ft.closeDialog(l,n)},h.controller&&(n.isString(h.controller)||n.isArray(h.controller)||n.isFunction(h.controller))&&(h.controllerAs&&n.isString(h.controllerAs)&&(p=h.controllerAs),c=rt(h.controller,n.extend(g,{$scope:a,$element:l}),!0,p),h.bindToController&&n.extend(c.instance,{ngDialogId:a.ngDialogId,ngDialogData:a.ngDialogData,closeThisDialog:a.closeThisDialog}),l.data("$ngDialogControllerController",c())),tt(function(){var i=document.querySelectorAll(".ngdialog"),t,n;ft.deactivateAll(i);k(l)(a);t=it.innerWidth-et.body.prop("clientWidth");et.html.addClass("ngdialog-open");et.body.addClass("ngdialog-open");n=t-(it.innerWidth-et.body.prop("clientWidth"));n>0&&ft.setBodyPadding(n);ht.append(l);ft.activate(l);h.trapFocus&&ft.autoFocus(l);h.name?nt.$broadcast("ngDialog.opened",{dialog:l,name:h.name}):nt.$broadcast("ngDialog.opened",l)}),s||(et.body.bind("keydown",ft.onDocumentKeydown),s=!0),h.closeByNavigation&&(b=ft.getRouterLocationEventName(),nt.$on(b,function(){ft.closeDialog(l)})),h.preserveFocus&&l.data("$ngDialogPreviousFocus",document.activeElement),e=function(n){var r=h.closeByDocument?t(n.target).hasClass("ngdialog-overlay"):!1,i=t(n.target).hasClass("ngdialog-close");(r||i)&&ot.close(l.attr("id"),i?"$closeButton":"$document")},typeof it.Hammer!="undefined"){d=a.hammerTime=it.Hammer(l[0]);d.on("tap",e)}else l.bind("click",e);return r+=1,ot}),{id:w,closePromise:lt.promise,close:function(n){ft.closeDialog(l,n)}}},openConfirm:function(i){var f=d.defer(),r=n.copy(u),e;return i=i||{},n.extend(r,i),r.scope=n.isObject(r.scope)?r.scope.$new():nt.$new(),r.scope.confirm=function(n){f.resolve(n);var i=t(document.getElementById(e.id));ft.performCloseDialog(i,n)},e=ot.open(r),e?(e.closePromise.then(function(n){return n?f.reject(n.value):f.reject()}),f.promise):void 0},isOpen:function(n){var i=t(document.getElementById(n));return i.length>0},close:function(n,r){var u=t(document.getElementById(n)),f;return u.length?ft.closeDialog(u,r):n==="$escape"?(f=i[i.length-1],u=t(document.getElementById(f)),u.data("$ngDialogOptions").closeByEscape&&ft.closeDialog(u,"$escape")):ot.closeAll(r),ot},closeAll:function(n){for(var u,r=document.querySelectorAll(".ngdialog"),i=r.length-1;i>=0;i--)u=r[i],ft.closeDialog(t(u),n)},getOpenDialogs:function(){return i},getDefaults:function(){return u}};return n.forEach(["html","body"],function(n){if(et[n]=w.find(n),o[n]){var t=ft.getRouterLocationEventName();nt.$on(t,function(){et[n]=w.find(n)})}}),ot}]}),e.directive("ngDialog",["ngDialog",function(t){return{restrict:"A",scope:{ngDialogScope:"="},link:function(i,r,u){r.on("click",function(r){var e,f;r.preventDefault();e=n.isDefined(i.ngDialogScope)?i.ngDialogScope:"noScope";n.isDefined(u.ngDialogClosePrevious)&&t.close(u.ngDialogClosePrevious);f=t.getDefaults();t.open({template:u.ngDialog,className:u.ngDialogClass||f.className,controller:u.ngDialogController,controllerAs:u.ngDialogControllerAs,bindToController:u.ngDialogBindToController,scope:e,data:u.ngDialogData,showClose:u.ngDialogShowClose==="false"?!1:u.ngDialogShowClose==="true"?!0:f.showClose,closeByDocument:u.ngDialogCloseByDocument==="false"?!1:u.ngDialogCloseByDocument==="true"?!0:f.closeByDocument,closeByEscape:u.ngDialogCloseByEscape==="false"?!1:u.ngDialogCloseByEscape==="true"?!0:f.closeByEscape,overlay:u.ngDialogOverlay==="false"?!1:u.ngDialogOverlay==="true"?!0:f.overlay,preCloseCallback:u.ngDialogPreCloseCallback||f.preCloseCallback})})}}}]),e});

Enumerable=function(){var m="Single:sequence contains more than one element.",e=true,b=null,a=false,c=function(a){this.GetEnumerator=a};c.Choice=function(){var a=arguments[0]instanceof Array?arguments[0]:arguments;return new c(function(){return new f(g.Blank,function(){return this.Yield(a[Math.floor(Math.random()*a.length)])},g.Blank)})};c.Cycle=function(){var a=arguments[0]instanceof Array?arguments[0]:arguments;return new c(function(){var b=0;return new f(g.Blank,function(){if(b>=a.length)b=0;return this.Yield(a[b++])},g.Blank)})};c.Empty=function(){return new c(function(){return new f(g.Blank,function(){return a},g.Blank)})};c.From=function(j){if(j==b)return c.Empty();if(j instanceof c)return j;if(typeof j==i.Number||typeof j==i.Boolean)return c.Repeat(j,1);if(typeof j==i.String)return new c(function(){var b=0;return new f(g.Blank,function(){return b<j.length?this.Yield(j.charAt(b++)):a},g.Blank)});if(typeof j!=i.Function){if(typeof j.length==i.Number)return new h(j);if(!(j instanceof Object)&&d.IsIEnumerable(j))return new c(function(){var c=e,b;return new f(function(){b=new Enumerator(j)},function(){if(c)c=a;else b.moveNext();return b.atEnd()?a:this.Yield(b.item())},g.Blank)})}return new c(function(){var b=[],c=0;return new f(function(){for(var a in j)!(j[a]instanceof Function)&&b.push({Key:a,Value:j[a]})},function(){return c<b.length?this.Yield(b[c++]):a},g.Blank)})},c.Return=function(a){return c.Repeat(a,1)};c.Matches=function(h,e,d){if(d==b)d="";if(e instanceof RegExp){d+=e.ignoreCase?"i":"";d+=e.multiline?"m":"";e=e.source}if(d.indexOf("g")===-1)d+="g";return new c(function(){var b;return new f(function(){b=new RegExp(e,d)},function(){var c=b.exec(h);return c?this.Yield(c):a},g.Blank)})};c.Range=function(e,d,a){if(a==b)a=1;return c.ToInfinity(e,a).Take(d)};c.RangeDown=function(e,d,a){if(a==b)a=1;return c.ToNegativeInfinity(e,a).Take(d)};c.RangeTo=function(d,e,a){if(a==b)a=1;return d<e?c.ToInfinity(d,a).TakeWhile(function(a){return a<=e}):c.ToNegativeInfinity(d,a).TakeWhile(function(a){return a>=e})};c.Repeat=function(d,a){return a!=b?c.Repeat(d).Take(a):new c(function(){return new f(g.Blank,function(){return this.Yield(d)},g.Blank)})};c.RepeatWithFinalize=function(a,e){a=d.CreateLambda(a);e=d.CreateLambda(e);return new c(function(){var c;return new f(function(){c=a()},function(){return this.Yield(c)},function(){if(c!=b){e(c);c=b}})})};c.Generate=function(a,e){if(e!=b)return c.Generate(a).Take(e);a=d.CreateLambda(a);return new c(function(){return new f(g.Blank,function(){return this.Yield(a())},g.Blank)})};c.ToInfinity=function(d,a){if(d==b)d=0;if(a==b)a=1;return new c(function(){var b;return new f(function(){b=d-a},function(){return this.Yield(b+=a)},g.Blank)})};c.ToNegativeInfinity=function(d,a){if(d==b)d=0;if(a==b)a=1;return new c(function(){var b;return new f(function(){b=d+a},function(){return this.Yield(b-=a)},g.Blank)})};c.Unfold=function(h,b){b=d.CreateLambda(b);return new c(function(){var d=e,c;return new f(g.Blank,function(){if(d){d=a;c=h;return this.Yield(c)}c=b(c);return this.Yield(c)},g.Blank)})};c.prototype={CascadeBreadthFirst:function(g,b){var h=this;g=d.CreateLambda(g);b=d.CreateLambda(b);return new c(function(){var i,k=0,j=[];return new f(function(){i=h.GetEnumerator()},function(){while(e){if(i.MoveNext()){j.push(i.Current());return this.Yield(b(i.Current(),k))}var f=c.From(j).SelectMany(function(a){return g(a)});if(!f.Any())return a;else{k++;j=[];d.Dispose(i);i=f.GetEnumerator()}}},function(){d.Dispose(i)})})},CascadeDepthFirst:function(g,b){var h=this;g=d.CreateLambda(g);b=d.CreateLambda(b);return new c(function(){var j=[],i;return new f(function(){i=h.GetEnumerator()},function(){while(e){if(i.MoveNext()){var f=b(i.Current(),j.length);j.push(i);i=c.From(g(i.Current())).GetEnumerator();return this.Yield(f)}if(j.length<=0)return a;d.Dispose(i);i=j.pop()}},function(){try{d.Dispose(i)}finally{c.From(j).ForEach(function(a){a.Dispose()})}})})},Flatten:function(){var h=this;return new c(function(){var j,i=b;return new f(function(){j=h.GetEnumerator()},function(){while(e){if(i!=b)if(i.MoveNext())return this.Yield(i.Current());else i=b;if(j.MoveNext())if(j.Current()instanceof Array){d.Dispose(i);i=c.From(j.Current()).SelectMany(g.Identity).Flatten().GetEnumerator();continue}else return this.Yield(j.Current());return a}},function(){try{d.Dispose(j)}finally{d.Dispose(i)}})})},Pairwise:function(b){var e=this;b=d.CreateLambda(b);return new c(function(){var c;return new f(function(){c=e.GetEnumerator();c.MoveNext()},function(){var d=c.Current();return c.MoveNext()?this.Yield(b(d,c.Current())):a},function(){d.Dispose(c)})})},Scan:function(i,g,j){if(j!=b)return this.Scan(i,g).Select(j);var h;if(g==b){g=d.CreateLambda(i);h=a}else{g=d.CreateLambda(g);h=e}var k=this;return new c(function(){var b,c,j=e;return new f(function(){b=k.GetEnumerator()},function(){if(j){j=a;if(!h){if(b.MoveNext())return this.Yield(c=b.Current())}else return this.Yield(c=i)}return b.MoveNext()?this.Yield(c=g(c,b.Current())):a},function(){d.Dispose(b)})})},Select:function(b){var e=this;b=d.CreateLambda(b);return new c(function(){var c,g=0;return new f(function(){c=e.GetEnumerator()},function(){return c.MoveNext()?this.Yield(b(c.Current(),g++)):a},function(){d.Dispose(c)})})},SelectMany:function(g,e){var h=this;g=d.CreateLambda(g);if(e==b)e=function(b,a){return a};e=d.CreateLambda(e);return new c(function(){var j,i=undefined,k=0;return new f(function(){j=h.GetEnumerator()},function(){if(i===undefined)if(!j.MoveNext())return a;do{if(i==b){var f=g(j.Current(),k++);i=c.From(f).GetEnumerator()}if(i.MoveNext())return this.Yield(e(j.Current(),i.Current()));d.Dispose(i);i=b}while(j.MoveNext());return a},function(){try{d.Dispose(j)}finally{d.Dispose(i)}})})},Where:function(b){b=d.CreateLambda(b);var e=this;return new c(function(){var c,g=0;return new f(function(){c=e.GetEnumerator()},function(){while(c.MoveNext())if(b(c.Current(),g++))return this.Yield(c.Current());return a},function(){d.Dispose(c)})})},OfType:function(c){var a;switch(c){case Number:a=i.Number;break;case String:a=i.String;break;case Boolean:a=i.Boolean;break;case Function:a=i.Function;break;default:a=b}return a===b?this.Where(function(a){return a instanceof c}):this.Where(function(b){return typeof b===a})},Zip:function(e,b){b=d.CreateLambda(b);var g=this;return new c(function(){var i,h,j=0;return new f(function(){i=g.GetEnumerator();h=c.From(e).GetEnumerator()},function(){return i.MoveNext()&&h.MoveNext()?this.Yield(b(i.Current(),h.Current(),j++)):a},function(){try{d.Dispose(i)}finally{d.Dispose(h)}})})},Join:function(m,i,h,k,j){i=d.CreateLambda(i);h=d.CreateLambda(h);k=d.CreateLambda(k);j=d.CreateLambda(j);var l=this;return new c(function(){var n,q,o=b,p=0;return new f(function(){n=l.GetEnumerator();q=c.From(m).ToLookup(h,g.Identity,j)},function(){while(e){if(o!=b){var c=o[p++];if(c!==undefined)return this.Yield(k(n.Current(),c));c=b;p=0}if(n.MoveNext()){var d=i(n.Current());o=q.Get(d).ToArray()}else return a}},function(){d.Dispose(n)})})},GroupJoin:function(l,h,e,j,i){h=d.CreateLambda(h);e=d.CreateLambda(e);j=d.CreateLambda(j);i=d.CreateLambda(i);var k=this;return new c(function(){var m=k.GetEnumerator(),n=b;return new f(function(){m=k.GetEnumerator();n=c.From(l).ToLookup(e,g.Identity,i)},function(){if(m.MoveNext()){var b=n.Get(h(m.Current()));return this.Yield(j(m.Current(),b))}return a},function(){d.Dispose(m)})})},All:function(b){b=d.CreateLambda(b);var c=e;this.ForEach(function(d){if(!b(d)){c=a;return a}});return c},Any:function(c){c=d.CreateLambda(c);var b=this.GetEnumerator();try{if(arguments.length==0)return b.MoveNext();while(b.MoveNext())if(c(b.Current()))return e;return a}finally{d.Dispose(b)}},Concat:function(e){var g=this;return new c(function(){var i,h;return new f(function(){i=g.GetEnumerator()},function(){if(h==b){if(i.MoveNext())return this.Yield(i.Current());h=c.From(e).GetEnumerator()}return h.MoveNext()?this.Yield(h.Current()):a},function(){try{d.Dispose(i)}finally{d.Dispose(h)}})})},Insert:function(h,b){var g=this;return new c(function(){var j,i,l=0,k=a;return new f(function(){j=g.GetEnumerator();i=c.From(b).GetEnumerator()},function(){if(l==h&&i.MoveNext()){k=e;return this.Yield(i.Current())}if(j.MoveNext()){l++;return this.Yield(j.Current())}return!k&&i.MoveNext()?this.Yield(i.Current()):a},function(){try{d.Dispose(j)}finally{d.Dispose(i)}})})},Alternate:function(a){a=c.Return(a);return this.SelectMany(function(b){return c.Return(b).Concat(a)}).TakeExceptLast()},Contains:function(f,b){b=d.CreateLambda(b);var c=this.GetEnumerator();try{while(c.MoveNext())if(b(c.Current())===f)return e;return a}finally{d.Dispose(c)}},DefaultIfEmpty:function(b){var g=this;return new c(function(){var c,h=e;return new f(function(){c=g.GetEnumerator()},function(){if(c.MoveNext()){h=a;return this.Yield(c.Current())}else if(h){h=a;return this.Yield(b)}return a},function(){d.Dispose(c)})})},Distinct:function(a){return this.Except(c.Empty(),a)},Except:function(e,b){b=d.CreateLambda(b);var g=this;return new c(function(){var h,i;return new f(function(){h=g.GetEnumerator();i=new n(b);c.From(e).ForEach(function(a){i.Add(a)})},function(){while(h.MoveNext()){var b=h.Current();if(!i.Contains(b)){i.Add(b);return this.Yield(b)}}return a},function(){d.Dispose(h)})})},Intersect:function(e,b){b=d.CreateLambda(b);var g=this;return new c(function(){var h,i,j;return new f(function(){h=g.GetEnumerator();i=new n(b);c.From(e).ForEach(function(a){i.Add(a)});j=new n(b)},function(){while(h.MoveNext()){var b=h.Current();if(!j.Contains(b)&&i.Contains(b)){j.Add(b);return this.Yield(b)}}return a},function(){d.Dispose(h)})})},SequenceEqual:function(h,f){f=d.CreateLambda(f);var g=this.GetEnumerator();try{var b=c.From(h).GetEnumerator();try{while(g.MoveNext())if(!b.MoveNext()||f(g.Current())!==f(b.Current()))return a;return b.MoveNext()?a:e}finally{d.Dispose(b)}}finally{d.Dispose(g)}},Union:function(e,b){b=d.CreateLambda(b);var g=this;return new c(function(){var j,h,i;return new f(function(){j=g.GetEnumerator();i=new n(b)},function(){var b;if(h===undefined){while(j.MoveNext()){b=j.Current();if(!i.Contains(b)){i.Add(b);return this.Yield(b)}}h=c.From(e).GetEnumerator()}while(h.MoveNext()){b=h.Current();if(!i.Contains(b)){i.Add(b);return this.Yield(b)}}return a},function(){try{d.Dispose(j)}finally{d.Dispose(h)}})})},OrderBy:function(b){return new j(this,b,a)},OrderByDescending:function(a){return new j(this,a,e)},Reverse:function(){var b=this;return new c(function(){var c,d;return new f(function(){c=b.ToArray();d=c.length},function(){return d>0?this.Yield(c[--d]):a},g.Blank)})},Shuffle:function(){var b=this;return new c(function(){var c;return new f(function(){c=b.ToArray()},function(){if(c.length>0){var b=Math.floor(Math.random()*c.length);return this.Yield(c.splice(b,1)[0])}return a},g.Blank)})},GroupBy:function(i,h,e,g){var j=this;i=d.CreateLambda(i);h=d.CreateLambda(h);if(e!=b)e=d.CreateLambda(e);g=d.CreateLambda(g);return new c(function(){var c;return new f(function(){c=j.ToLookup(i,h,g).ToEnumerable().GetEnumerator()},function(){while(c.MoveNext())return e==b?this.Yield(c.Current()):this.Yield(e(c.Current().Key(),c.Current()));return a},function(){d.Dispose(c)})})},PartitionBy:function(j,i,g,h){var l=this;j=d.CreateLambda(j);i=d.CreateLambda(i);h=d.CreateLambda(h);var k;if(g==b){k=a;g=function(b,a){return new o(b,a)}}else{k=e;g=d.CreateLambda(g)}return new c(function(){var b,n,o,m=[];return new f(function(){b=l.GetEnumerator();if(b.MoveNext()){n=j(b.Current());o=h(n);m.push(i(b.Current()))}},function(){var d;while((d=b.MoveNext())==e)if(o===h(j(b.Current())))m.push(i(b.Current()));else break;if(m.length>0){var f=k?g(n,c.From(m)):g(n,m);if(d){n=j(b.Current());o=h(n);m=[i(b.Current())]}else m=[];return this.Yield(f)}return a},function(){d.Dispose(b)})})},BufferWithCount:function(e){var b=this;return new c(function(){var c;return new f(function(){c=b.GetEnumerator()},function(){var b=[],d=0;while(c.MoveNext()){b.push(c.Current());if(++d>=e)return this.Yield(b)}return b.length>0?this.Yield(b):a},function(){d.Dispose(c)})})},Aggregate:function(c,b,a){return this.Scan(c,b,a).Last()},Average:function(a){a=d.CreateLambda(a);var c=0,b=0;this.ForEach(function(d){c+=a(d);++b});return c/b},Count:function(a){a=a==b?g.True:d.CreateLambda(a);var c=0;this.ForEach(function(d,b){if(a(d,b))++c});return c},Max:function(a){if(a==b)a=g.Identity;return this.Select(a).Aggregate(function(a,b){return a>b?a:b})},Min:function(a){if(a==b)a=g.Identity;return this.Select(a).Aggregate(function(a,b){return a<b?a:b})},MaxBy:function(a){a=d.CreateLambda(a);return this.Aggregate(function(b,c){return a(b)>a(c)?b:c})},MinBy:function(a){a=d.CreateLambda(a);return this.Aggregate(function(b,c){return a(b)<a(c)?b:c})},Sum:function(a){if(a==b)a=g.Identity;return this.Select(a).Aggregate(0,function(a,b){return a+b})},ElementAt:function(d){var c,b=a;this.ForEach(function(g,f){if(f==d){c=g;b=e;return a}});if(!b)throw new Error("index is less than 0 or greater than or equal to the number of elements in source.");return c},ElementAtOrDefault:function(f,d){var c,b=a;this.ForEach(function(g,d){if(d==f){c=g;b=e;return a}});return!b?d:c},First:function(c){if(c!=b)return this.Where(c).First();var f,d=a;this.ForEach(function(b){f=b;d=e;return a});if(!d)throw new Error("First:No element satisfies the condition.");return f},FirstOrDefault:function(c,d){if(d!=b)return this.Where(d).FirstOrDefault(c);var g,f=a;this.ForEach(function(b){g=b;f=e;return a});return!f?c:g},Last:function(c){if(c!=b)return this.Where(c).Last();var f,d=a;this.ForEach(function(a){d=e;f=a});if(!d)throw new Error("Last:No element satisfies the condition.");return f},LastOrDefault:function(c,d){if(d!=b)return this.Where(d).LastOrDefault(c);var g,f=a;this.ForEach(function(a){f=e;g=a});return!f?c:g},Single:function(d){if(d!=b)return this.Where(d).Single();var f,c=a;this.ForEach(function(a){if(!c){c=e;f=a}else throw new Error(m);});if(!c)throw new Error("Single:No element satisfies the condition.");return f},SingleOrDefault:function(d,f){if(f!=b)return this.Where(f).SingleOrDefault(d);var g,c=a;this.ForEach(function(a){if(!c){c=e;g=a}else throw new Error(m);});return!c?d:g},Skip:function(e){var b=this;return new c(function(){var c,g=0;return new f(function(){c=b.GetEnumerator();while(g++<e&&c.MoveNext());},function(){return c.MoveNext()?this.Yield(c.Current()):a},function(){d.Dispose(c)})})},SkipWhile:function(b){b=d.CreateLambda(b);var g=this;return new c(function(){var c,i=0,h=a;return new f(function(){c=g.GetEnumerator()},function(){while(!h)if(c.MoveNext()){if(!b(c.Current(),i++)){h=e;return this.Yield(c.Current())}continue}else return a;return c.MoveNext()?this.Yield(c.Current()):a},function(){d.Dispose(c)})})},Take:function(e){var b=this;return new c(function(){var c,g=0;return new f(function(){c=b.GetEnumerator()},function(){return g++<e&&c.MoveNext()?this.Yield(c.Current()):a},function(){d.Dispose(c)})})},TakeWhile:function(b){b=d.CreateLambda(b);var e=this;return new c(function(){var c,g=0;return new f(function(){c=e.GetEnumerator()},function(){return c.MoveNext()&&b(c.Current(),g++)?this.Yield(c.Current()):a},function(){d.Dispose(c)})})},TakeExceptLast:function(e){if(e==b)e=1;var g=this;return new c(function(){if(e<=0)return g.GetEnumerator();var b,c=[];return new f(function(){b=g.GetEnumerator()},function(){while(b.MoveNext()){if(c.length==e){c.push(b.Current());return this.Yield(c.shift())}c.push(b.Current())}return a},function(){d.Dispose(b)})})},TakeFromLast:function(e){if(e<=0||e==b)return c.Empty();var g=this;return new c(function(){var j,h,i=[];return new f(function(){j=g.GetEnumerator()},function(){while(j.MoveNext()){i.length==e&&i.shift();i.push(j.Current())}if(h==b)h=c.From(i).GetEnumerator();return h.MoveNext()?this.Yield(h.Current()):a},function(){d.Dispose(h)})})},IndexOf:function(c){var a=b;this.ForEach(function(d,b){if(d===c){a=b;return e}});return a!==b?a:-1},LastIndexOf:function(b){var a=-1;this.ForEach(function(d,c){if(d===b)a=c});return a},ToArray:function(){var a=[];this.ForEach(function(b){a.push(b)});return a},ToLookup:function(c,b,a){c=d.CreateLambda(c);b=d.CreateLambda(b);a=d.CreateLambda(a);var e=new n(a);this.ForEach(function(g){var f=c(g),a=b(g),d=e.Get(f);if(d!==undefined)d.push(a);else e.Add(f,[a])});return new q(e)},ToObject:function(b,a){b=d.CreateLambda(b);a=d.CreateLambda(a);var c={};this.ForEach(function(d){c[b(d)]=a(d)});return c},ToDictionary:function(c,b,a){c=d.CreateLambda(c);b=d.CreateLambda(b);a=d.CreateLambda(a);var e=new n(a);this.ForEach(function(a){e.Add(c(a),b(a))});return e},ToJSON:function(a,b){return JSON.stringify(this.ToArray(),a,b)},ToString:function(a,c){if(a==b)a="";if(c==b)c=g.Identity;return this.Select(c).ToArray().join(a)},Do:function(b){var e=this;b=d.CreateLambda(b);return new c(function(){var c,g=0;return new f(function(){c=e.GetEnumerator()},function(){if(c.MoveNext()){b(c.Current(),g++);return this.Yield(c.Current())}return a},function(){d.Dispose(c)})})},ForEach:function(c){c=d.CreateLambda(c);var e=0,b=this.GetEnumerator();try{while(b.MoveNext())if(c(b.Current(),e++)===a)break}finally{d.Dispose(b)}},Write:function(c,f){if(c==b)c="";f=d.CreateLambda(f);var g=e;this.ForEach(function(b){if(g)g=a;else document.write(c);document.write(f(b))})},WriteLine:function(a){a=d.CreateLambda(a);this.ForEach(function(b){document.write(a(b));document.write("<br />")})},Force:function(){var a=this.GetEnumerator();try{while(a.MoveNext());}finally{d.Dispose(a)}},Let:function(b){b=d.CreateLambda(b);var e=this;return new c(function(){var g;return new f(function(){g=c.From(b(e)).GetEnumerator()},function(){return g.MoveNext()?this.Yield(g.Current()):a},function(){d.Dispose(g)})})},Share:function(){var e=this,d;return new c(function(){return new f(function(){if(d==b)d=e.GetEnumerator()},function(){return d.MoveNext()?this.Yield(d.Current()):a},g.Blank)})},MemoizeAll:function(){var h=this,e,d;return new c(function(){var c=-1;return new f(function(){if(d==b){d=h.GetEnumerator();e=[]}},function(){c++;return e.length<=c?d.MoveNext()?this.Yield(e[c]=d.Current()):a:this.Yield(e[c])},g.Blank)})},Catch:function(b){b=d.CreateLambda(b);var e=this;return new c(function(){var c;return new f(function(){c=e.GetEnumerator()},function(){try{return c.MoveNext()?this.Yield(c.Current()):a}catch(d){b(d);return a}},function(){d.Dispose(c)})})},Finally:function(b){b=d.CreateLambda(b);var e=this;return new c(function(){var c;return new f(function(){c=e.GetEnumerator()},function(){return c.MoveNext()?this.Yield(c.Current()):a},function(){try{d.Dispose(c)}finally{b()}})})},Trace:function(c,a){if(c==b)c="Trace";a=d.CreateLambda(a);return this.Do(function(b){console.log(c,":",a(b))})}};var g={Identity:function(a){return a},True:function(){return e},Blank:function(){}},i={Boolean:typeof e,Number:typeof 0,String:typeof"",Object:typeof{},Undefined:typeof undefined,Function:typeof function(){}},d={CreateLambda:function(a){if(a==b)return g.Identity;if(typeof a==i.String)if(a=="")return g.Identity;else if(a.indexOf("=>")==-1)return new Function("$,$$,$$$,$$$$","return "+a);else{var c=a.match(/^[(\s]*([^()]*?)[)\s]*=>(.*)/);return new Function(c[1],"return "+c[2])}return a},IsIEnumerable:function(b){if(typeof Enumerator!=i.Undefined)try{new Enumerator(b);return e}catch(c){}return a},Compare:function(a,b){return a===b?0:a>b?1:-1},Dispose:function(a){a!=b&&a.Dispose()}},k={Before:0,Running:1,After:2},f=function(d,f,g){var c=new p,b=k.Before;this.Current=c.Current;this.MoveNext=function(){try{switch(b){case k.Before:b=k.Running;d();case k.Running:if(f.apply(c))return e;else{this.Dispose();return a}case k.After:return a}}catch(g){this.Dispose();throw g;}};this.Dispose=function(){if(b!=k.Running)return;try{g()}finally{b=k.After}}},p=function(){var a=b;this.Current=function(){return a};this.Yield=function(b){a=b;return e}},j=function(f,b,c,e){var a=this;a.source=f;a.keySelector=d.CreateLambda(b);a.descending=c;a.parent=e};j.prototype=new c;j.prototype.CreateOrderedEnumerable=function(a,b){return new j(this.source,a,b,this)};j.prototype.ThenBy=function(b){return this.CreateOrderedEnumerable(b,a)};j.prototype.ThenByDescending=function(a){return this.CreateOrderedEnumerable(a,e)};j.prototype.GetEnumerator=function(){var h=this,d,c,e=0;return new f(function(){d=[];c=[];h.source.ForEach(function(b,a){d.push(b);c.push(a)});var a=l.Create(h,b);a.GenerateKeys(d);c.sort(function(b,c){return a.Compare(b,c)})},function(){return e<c.length?this.Yield(d[c[e++]]):a},g.Blank)};var l=function(c,d,e){var a=this;a.keySelector=c;a.descending=d;a.child=e;a.keys=b};l.Create=function(a,d){var c=new l(a.keySelector,a.descending,d);return a.parent!=b?l.Create(a.parent,c):c};l.prototype.GenerateKeys=function(d){var a=this;for(var f=d.length,g=a.keySelector,e=new Array(f),c=0;c<f;c++)e[c]=g(d[c]);a.keys=e;a.child!=b&&a.child.GenerateKeys(d)};l.prototype.Compare=function(e,f){var a=this,c=d.Compare(a.keys[e],a.keys[f]);if(c==0){if(a.child!=b)return a.child.Compare(e,f);c=d.Compare(e,f)}return a.descending?-c:c};var h=function(a){this.source=a};h.prototype=new c;h.prototype.Any=function(a){return a==b?this.source.length>0:c.prototype.Any.apply(this,arguments)};h.prototype.Count=function(a){return a==b?this.source.length:c.prototype.Count.apply(this,arguments)};h.prototype.ElementAt=function(a){return 0<=a&&a<this.source.length?this.source[a]:c.prototype.ElementAt.apply(this,arguments)};h.prototype.ElementAtOrDefault=function(a,b){return 0<=a&&a<this.source.length?this.source[a]:b};h.prototype.First=function(a){return a==b&&this.source.length>0?this.source[0]:c.prototype.First.apply(this,arguments)};h.prototype.FirstOrDefault=function(a,d){return d!=b?c.prototype.FirstOrDefault.apply(this,arguments):this.source.length>0?this.source[0]:a};h.prototype.Last=function(d){var a=this;return d==b&&a.source.length>0?a.source[a.source.length-1]:c.prototype.Last.apply(a,arguments)};h.prototype.LastOrDefault=function(d,e){var a=this;return e!=b?c.prototype.LastOrDefault.apply(a,arguments):a.source.length>0?a.source[a.source.length-1]:d};h.prototype.Skip=function(d){var b=this.source;return new c(function(){var c;return new f(function(){c=d<0?0:d},function(){return c<b.length?this.Yield(b[c++]):a},g.Blank)})};h.prototype.TakeExceptLast=function(a){if(a==b)a=1;return this.Take(this.source.length-a)};h.prototype.TakeFromLast=function(a){return this.Skip(this.source.length-a)};h.prototype.Reverse=function(){var b=this.source;return new c(function(){var c;return new f(function(){c=b.length},function(){return c>0?this.Yield(b[--c]):a},g.Blank)})};h.prototype.SequenceEqual=function(d,e){return(d instanceof h||d instanceof Array)&&e==b&&c.From(d).Count()!=this.Count()?a:c.prototype.SequenceEqual.apply(this,arguments)};h.prototype.ToString=function(a,d){if(d!=b||!(this.source instanceof Array))return c.prototype.ToString.apply(this,arguments);if(a==b)a="";return this.source.join(a)};h.prototype.GetEnumerator=function(){var b=this.source,c=0;return new f(g.Blank,function(){return c<b.length?this.Yield(b[c++]):a},g.Blank)};var n=function(){var h=function(a,b){return Object.prototype.hasOwnProperty.call(a,b)},d=function(a){return a===b?"null":a===undefined?"undefined":typeof a.toString===i.Function?a.toString():Object.prototype.toString.call(a)},l=function(d,c){var a=this;a.Key=d;a.Value=c;a.Prev=b;a.Next=b},j=function(){this.First=b;this.Last=b};j.prototype={AddLast:function(c){var a=this;if(a.Last!=b){a.Last.Next=c;c.Prev=a.Last;a.Last=c}else a.First=a.Last=c},Replace:function(c,a){if(c.Prev!=b){c.Prev.Next=a;a.Prev=c.Prev}else this.First=a;if(c.Next!=b){c.Next.Prev=a;a.Next=c.Next}else this.Last=a},Remove:function(a){if(a.Prev!=b)a.Prev.Next=a.Next;else this.First=a.Next;if(a.Next!=b)a.Next.Prev=a.Prev;else this.Last=a.Prev}};var k=function(c){var a=this;a.count=0;a.entryList=new j;a.buckets={};a.compareSelector=c==b?g.Identity:c};k.prototype={Add:function(i,j){var a=this,g=a.compareSelector(i),f=d(g),c=new l(i,j);if(h(a.buckets,f)){for(var b=a.buckets[f],e=0;e<b.length;e++)if(a.compareSelector(b[e].Key)===g){a.entryList.Replace(b[e],c);b[e]=c;return}b.push(c)}else a.buckets[f]=[c];a.count++;a.entryList.AddLast(c)},Get:function(i){var a=this,c=a.compareSelector(i),g=d(c);if(!h(a.buckets,g))return undefined;for(var e=a.buckets[g],b=0;b<e.length;b++){var f=e[b];if(a.compareSelector(f.Key)===c)return f.Value}return undefined},Set:function(k,m){var b=this,g=b.compareSelector(k),j=d(g);if(h(b.buckets,j))for(var f=b.buckets[j],c=0;c<f.length;c++)if(b.compareSelector(f[c].Key)===g){var i=new l(k,m);b.entryList.Replace(f[c],i);f[c]=i;return e}return a},Contains:function(j){var b=this,f=b.compareSelector(j),i=d(f);if(!h(b.buckets,i))return a;for(var g=b.buckets[i],c=0;c<g.length;c++)if(b.compareSelector(g[c].Key)===f)return e;return a},Clear:function(){this.count=0;this.buckets={};this.entryList=new j},Remove:function(g){var a=this,f=a.compareSelector(g),e=d(f);if(!h(a.buckets,e))return;for(var b=a.buckets[e],c=0;c<b.length;c++)if(a.compareSelector(b[c].Key)===f){a.entryList.Remove(b[c]);b.splice(c,1);if(b.length==0)delete a.buckets[e];a.count--;return}},Count:function(){return this.count},ToEnumerable:function(){var d=this;return new c(function(){var c;return new f(function(){c=d.entryList.First},function(){if(c!=b){var d={Key:c.Key,Value:c.Value};c=c.Next;return this.Yield(d)}return a},g.Blank)})}};return k}(),q=function(a){var b=this;b.Count=function(){return a.Count()};b.Get=function(b){return c.From(a.Get(b))};b.Contains=function(b){return a.Contains(b)};b.ToEnumerable=function(){return a.ToEnumerable().Select(function(a){return new o(a.Key,a.Value)})}},o=function(b,a){this.Key=function(){return b};h.call(this,a)};o.prototype=new h;return c}();
var app=angular.module("rehlatApp",["ui.bootstrap","ui-rangeSlider","ngSanitize","rzModule"]);
function leapYear(n){return n%4==0&&n%100!=0||n%400==0}app.factory("storageLogin",["$window",function(n){return{storeUserNameLogin:function(t){try{if(n.Storage)return localStorage&&localStorage.setItem("StoreUserName",angular.toJson(t)),!0;return!1}catch(i){console.error(i,i.message)}return!1},recallUserNameLogin:function(){try{if(n.Storage){var t=localStorage.getItem("StoreUserName");return t?angular.fromJson(t):t}return!1}catch(i){console.error(i,i.message)}return!1},storeUserNameBeforeLogin:function(t){try{if(n.Storage)return localStorage&&localStorage.setItem("StoreUserNameBefore",angular.toJson(t)),!0;return!1}catch(i){console.error(i,i.message)}return!1},recallUserNameBeforeLogin:function(){try{if(n.Storage){var t=localStorage.getItem("StoreUserNameBefore");return t?angular.fromJson(t):t}return!1}catch(i){console.error(i,i.message)}return!1}}}]);app.controller("LayoutHeaderController",["$scope","$timeout","$filter","$http","storageLogin",function(n,t,i,r,u){n.signUp_new=function(){showChromeCredentialsManagmentPopup("desktop");LoginClick("home")};n.signUpRegister=function(){$("#signUp_new").modal("show");RegisterClick("home")};n.IsMobile=window.innerWidth<767;n.mybooking_new=function(n){$("#mybooking_new").modal("show");$("#bookingId").removeAttr("placeholder");$("#bookingId").attr("placeholder","Booking ID");$("#bookingId").removeAttr("data-errormessage");$("#bookingId").attr("data-errormessage","Booking ID is Required");$("[name=Supplier]").val("Flight");$("#Message").text("Booking ID");$("#hotelChk").removeClass("active");$("#flightChk").addClass("active");$("[name=EmailOrPhone]").val("");$("[name=ReferenceNumber]").val("");$("[name=ReferenceNumber]").get(0).setCustomValidity("Booking ID is Required.");$(".bookingLinks a.active").removeClass("active");$("#hotelChk").removeClass("active");$("#flightChk").addClass("active");n.preventDefault()};n.mybooking_newHotel=function(n){$("#mybooking_new").modal("show");$("#bookingId").removeAttr("placeholder");$("#bookingId").attr("placeholder","Hotel/Rehlat Reference Number");$("#bookingId").removeAttr("data-errormessage");$("#bookingId").attr("data-errormessage","Hotel/Rehlat Reference Number is Required");$("[name=Supplier]").val("Hotel");$("#Message").text("Booking ID");$("#flightChk").removeClass("active");$("#hotelChk").addClass("active");$("[name=EmailOrPhone]").val("");$("[name=ReferenceNumber]").val("");$("[name=ReferenceNumber]").get(0).setCustomValidity("Hotel/Rehlat Reference Number is Required.");$("#flightChk").removeClass("active");$("#hotelChk").addClass("active");n.preventDefault()};n.userNameCooke=angular.fromJson(userNameCooke);n.userNameCooke===undefined||n.userNameCooke===""||n.userNameCooke===null?(n.StoreUserName=u.recallUserNameLogin(),n.StoreUserName!==""&&n.StoreUserName!==undefined&&n.StoreUserName!==null&&(n.UserNameBefore=u.recallUserNameBeforeLogin(),n.UserNameBefore!==""&&n.UserNameBefore!==undefined&&n.UserNameBefore!==null&&n.UserNameBefore.isLogoutUser!==!0&&n.UserNameBefore.isLogoutUser===!1&&n.UserNameBefore.email===n.StoreUserName.Email&&n.UserNameBefore.redirectCount===0&&n.UserNameBefore.redirectCount!==1&&(n.UserNameBefore.redirectCount=1,u.storeUserNameBeforeLogin(n.UserNameBefore),$("#EmailAddress").val(n.UserNameBefore.email),$("#Password1").val(n.UserNameBefore.password),PageLanguage=="en"?$("#form-login").submit():$("#login-form").submit()))):(n.UserNameBefore=u.recallUserNameBeforeLogin(),n.UserNameBefore!=null&&n.UserNameBefore!=undefined&&(n.UserNameBefore.redirectCount=0,u.storeUserNameBeforeLogin(n.UserNameBefore),u.storeUserNameLogin(n.userNameCooke)));n.StorePassword=function(n){n.isLogoutUser=!1;(n.password==null||n.password=="")&&(n.isLogoutUser=!0);u.storeUserNameBeforeLogin(n)};$(".Setlogout").click(function(){n.UserNameBefore=u.recallUserNameBeforeLogin();n.UserNameBefore!==""&&n.UserNameBefore!==undefined&&n.UserNameBefore!==null&&(n.UserNameBefore.isLogoutUser=!0,u.storeUserNameBeforeLogin(n.UserNameBefore))})}]);app.directive("rehlatValidationError",function(){return{require:"ngModel",link:function(n,t,i,r){n.$watch(i.rehlatValidationError,function(n){t[0].setCustomValidity(n);r.$setValidity("rehlatValidationError",n?!1:!0)})}}});app.filter("highlight",function(n){return function(t,i){var r=new RegExp("("+i+")","gi");return i&&(t=t.replace(r,'<span class="highlighted">$1<\/span>')),n.trustAsHtml(t)}});app.directive("outsideClick",["$document","$parse",function(n){return{link:function(t,i,r){var f=r.outsideClick,u=function(n){for(var r=n.target;r&&r!==i[0];){if(r.nodeName=="MD-AUTOCOMPLETE-PARENT-SCOPE"){t.getdivType=!0;return}r=r.parentNode}r||t.$apply(f)};n.on("click",u);i.on("$destroy",function(){n.off("click",u)})}}}]);app.filter("range",function(){return function(n,t,i){t=parseInt(t);i=parseInt(i);for(var r=t;r<i;r++)n.push(r);return n}});app.filter("slice",function(){return function(n,t,i){return n.slice(t,i)}});app.filter("arMonth",function(){return function(n,t){return n=Enumerable.From([{ar:"ديسمبر",en:"December"},{ar:"نوفمبر",en:"November"},{ar:"أكتوبر",en:"October"},{ar:"سبتمبر",en:"September"},{ar:"أغسطس",en:"August"},{ar:"يوليو",en:"July"},{ar:"يونيو",en:"June"},{ar:"مايو",en:"May"},{ar:"ابريل",en:"April"},{ar:"مارس",en:"March"},{ar:"فبراير",en:"February"},{ar:"يناير",en:"January"}]).Where(function(n){return n.en===t}).ToArray(),n[0].ar}});app.controller("NavBarController",["$scope","$rootScope","$window",function(n,t,i){t.is_mobile=i.innerWidth<767;n.IsMobile=i.innerWidth<767;angular.element(i).bind("resize",function(){n.$apply()});n.$watch(function(){return i.innerWidth},function(i){t.is_mobile=i<767;n.IsMobile=i<767})}]);app.controller("LayoutIndexController",["$scope","$http","$rootScope","$window","$sce",function(n,t,i,r){n.footerTab=1;n.SelectTabFooter=function(t){n.footerTab=t};n.isSelectedFooter=function(t){return n.footerTab===t};i.is_mobile=r.innerWidth<767;n.IsMobile=r.innerWidth<767;angular.element(r).bind("resize",function(){n.$apply()});n.$watch(function(){return r.innerWidth},function(t){i.is_mobile=t<767;n.IsMobile=t<767})}]);app.controller("LoginController",["$scope","$http","$rootScope","$modal","$window","storageLogin",function(n){n.signUp_new=function(){$("#signUp_new").modal("show")};n.mybooking_new=function(){$("#mybooking_new").modal("show")};n.mybooking_new_ar=function(){$("#mybooking_new_ar").modal("show");$("#bookingId").removeAttr("placeholder");$("#bookingId").attr("placeholder","رقم الحجز المرجعي");$("#bookingId").removeAttr("data-errormessage");$("#bookingId").attr("data-errormessage","مطلوب رقم مراجعة رحلات");$("#hdnSupplier").val("Flight");$("#Message").text("رقم مراجعة رحلات");$("#hotelChk").removeClass("active");$("#flightChk").addClass("active");$("[name=EmailOrPhone]").val("");$("[name=ReferenceNumber]").val("")};n.mybooking_newHotel_ar=function(){$("#mybooking_new_ar").modal("show");$("#bookingId").removeAttr("placeholder");$("#bookingId").attr("placeholder","رقم الحجز المرجعي");$("#bookingId").removeAttr("data-errormessage");$("#bookingId").attr("data-errormessage","  رقم مراجعة رحلات.كوم مطلوب");$("#hdnSupplier").val("Hotel");$("#Message").text("رقم المراجعة");$("#flightChk").removeClass("active");$("#hotelChk").addClass("active");$("[name=EmailOrPhone]").val("");$("[name=ReferenceNumber]").val("")}}]);app.controller("LoginControllerMobile",["$scope","$http","$rootScope","$modal","$window","storageLogin","storage",function(n,t,i,r,u,f,e){var o;n.signUp_new=function(){$("#signUp_new").modal("show")};n.mybooking_new=function(){$("#mybooking_new").modal("show")};n.mybooking_new_ar=function(){$("#mybooking_new_ar").modal("show");$("#bookingId").removeAttr("placeholder");$("#bookingId").attr("placeholder","رقم الحجز المرجعي");$("#bookingId").removeAttr("data-errormessage");$("#bookingId").attr("data-errormessage","مطلوب رقم مراجعة رحلات");$("#hdnSupplier").val("Flight");$("#Message").text("رقم مراجعة رحلات");$("#hotelChk").removeClass("active");$("#flightChk").addClass("active");$("[name=EmailOrPhone]").val("");$("[name=ReferenceNumber]").val("")};n.mybooking_newHotel_ar=function(){$("#mybooking_new_ar").modal("show");$("#bookingId").removeAttr("placeholder");$("#bookingId").attr("placeholder","رقم الحجز المرجعي");$("#bookingId").removeAttr("data-errormessage");$("#bookingId").attr("data-errormessage","رقم مراجعة رحلات.كوم مطلوب");$("#hdnSupplier").val("Hotel");$("#Message").text("رقم المراجعة");$("#flightChk").removeClass("active");$("#hotelChk").addClass("active");$("[name=EmailOrPhone]").val("");$("[name=ReferenceNumber]").val("")};n.recentTabMeb=e.recallTab();n.recentTabMeb===null&&(n.recentTabMeb=0);n.GotoHome=function(){e.recentTab(0)};n.userNameCooke=angular.fromJson(userNameCooke);n.userNameCooke===undefined||n.userNameCooke===""||n.userNameCooke===null?(n.StoreUserName=f.recallUserNameLogin(),n.StoreUserName!==""&&n.StoreUserName!==undefined&&n.StoreUserName!==null&&(n.UserNameBefore=f.recallUserNameBeforeLogin(),n.UserNameBefore!==""&&n.UserNameBefore!==undefined&&n.UserNameBefore!==null&&n.UserNameBefore.isLogoutUser!==!0&&n.UserNameBefore.isLogoutUser===!1&&n.UserNameBefore.email===n.StoreUserName.Email&&n.UserNameBefore.isActive!==1&&n.UserNameBefore.isActive==undefined&&n.UserNameBefore.redirectCount===0&&n.UserNameBefore.redirectCount!==1&&(n.UserNameBefore.redirectCount=1,f.storeUserNameBeforeLogin(n.UserNameBefore),PageLanguage=="en"?($("#mobileEmail").val(n.UserNameBefore.email),$("#mobpassword").val(n.UserNameBefore.password),o={email:n.UserNameBefore.email,password:n.UserNameBefore.password},$.ajax({url:"/MyAccount/LoginValidation",type:"POST",data:o,success:function(t){if(t.toLowerCase()=="true"){var i={ExternalUserType:"password",Email:n.UserNameBefore.email,DisplayName:"",Password:n.UserNameBefore.password};localStorage.setItem("crednlMangUserDetail",JSON.stringify(i));$("#mobsignIN").submit()}else return t.toLowerCase()=="false"?($("#lblErrorMsg1").text("Please enter correct email and password"),!1):($("#lblErrorMsg1").text(t),!1)}}),n.UserNameBefore.isActive=1,f.storeUserNameBeforeLogin(n.UserNameBefore)):($("#EmailAddressmob").val(n.UserNameBefore.email),$("#passwordmob").val(n.UserNameBefore.password),o={email:n.UserNameBefore.email,password:n.UserNameBefore.password},$.ajax({url:"/MyAccount/LoginValidation",type:"POST",data:o,success:function(t){if(t.toLowerCase()=="true"){var i={ExternalUserType:"password",Email:n.UserNameBefore.email,DisplayName:"",Password:n.UserNameBefore.password};localStorage.setItem("crednlMangUserDetail",JSON.stringify(i));$("#signInmob").submit()}}}),n.UserNameBefore.isActive=1,f.storeUserNameBeforeLogin(n.UserNameBefore))))):(n.UserNameBefore=f.recallUserNameBeforeLogin(),n.UserNameBefore!=null&&n.UserNameBefore!=undefined&&(n.UserNameBefore.redirectCount=0,f.storeUserNameBeforeLogin(n.UserNameBefore),f.storeUserNameLogin(n.userNameCooke)));n.StorePassword=function(n){n.isLogoutUser=!1;f.storeUserNameBeforeLogin(n)};$(".Setlogout").click(function(){n.UserNameBefore=f.recallUserNameBeforeLogin();n.UserNameBefore!==""&&n.UserNameBefore!==undefined&&n.UserNameBefore!==null&&(n.UserNameBefore.isLogoutUser=!0,f.storeUserNameBeforeLogin(n.UserNameBefore))})}]);app.filter("range",function(){return function(n,t){t=parseInt(t);for(var i=0;i<t;i++)n.push(i);return n}});app.filter("isNullOrempty",function(){return function(n){var t=!0;return(n==""||n==undefined||n==null)&&(t=!1),t}});app.filter("startsWithLetter",function(){return function(n,t){var i,f,r,u;if($("#divNoResultFound").hide(),!t)return n;for(i=[],f=new RegExp(t,"i"),r=0;r<n.length;r++)u=n[r],f.test(u.name.substring(0,t.length))&&i.push(u);return i.length===0?($("#divNoResultFound").show(),$("#loadMoreForHotel").hide(),$("#viewingDiv").hide()):($("#loadMoreForHotel").show(),$("#viewingDiv").show()),i}});app.filter("takeFifteenCharecterWithDots",function(){return function(n){return n!=undefined&&n.length>15?n.substr(0,15)+"...":n}});app.filter("removeSpaceWithHyphen",function(){return function(n){var t=n.replace(new RegExp(" ","g"),"-");return t.toLowerCase()}});app.directive("wjValidationError",function(){return{require:"ngModel",link:function(n,t,i,r){n.$watch(i.wjValidationError,function(n){t[0].setCustomValidity(n);r.$setValidity("wjValidationError",n?!1:!0)})}}});app.filter("setDecimal",function(){return function(n,t){var f,e;if(isNaN(n))return n;var i=parseInt(n),r=t,u=i.length;if(i.toString().indexOf(".")<0){if(u<=r)while(r>=u)i="0"+i,u=i.toString().length;f=u-r;i=i.toString().substr(0,f)+"."+i.toString().substr(f)}else for(e=i.toString().substring(i.toString().indexOf(".")+1);e.toString().length<r;)i=i+"0",e=i.toString().substring(i.toString().indexOf(".")+1);return i}});app.filter("setDecimalPos",function(){return function(n,t){return isNaN(n)?n:parseFloat(n).toFixed(t)}});app.filter("ConvertFloat",function(){return function(n){return parseFloat(n,10)}});app.filter("setTimeFormat",function(){return function(n){var t="";if(n!=undefined){var i=n.toString(),r=i.substr(0,2),u=i.substr(2,2);t=r+":"+u}return t}});app.directive("slideToggle",function(){return{restrict:"A",scope:{isOpen:"=slideToggle"},link:function(n,t,i){var r=parseInt(i.slideToggleDuration,10)||200;i.startShown=="false"&&t.hide();n.$watch("isOpen",function(n,i){n!==i&&t.stop().slideToggle(r)})}}});app.filter("setTimeFormatArb",function(){return function(n){var u="",i;if(IsArabicPage=="true"){if(i=" ص ",n!=undefined){var r=n.toString(),t=r.substr(0,2),f=r.substr(2,2);parseInt(t)==0?t="12":parseInt(t)==12?i=" م ":parseInt(t)>12&&(t=parseInt(t)-12,i=" م ");u=englishToArabicString(f)+" : "+englishToArabicNumber(t)+" "+i}}else if(n!=undefined){var r=n.toString(),t=r.substr(0,2),f=r.substr(2,2);u=t+":"+f}return u}});app.filter("filterFormatArbMonths",function(){return function(n){var t="";if(n!==""){if(n!=undefined){if(IsArabicPage=="true")return n.toString().replace(/Jan/g,"يناير").replace(/Feb/g,"فبراير").replace(/Mar/g,"مارس").replace(/Apr/g,"أبريل").replace(/May/g,"مايو").replace(/Jun/g,"يونيو").replace(/Jul/g,"يوليو").replace(/Aug/g,"أغسطس").replace(/Sep/g,"سبتمبر").replace(/Oct/g,"أكتوبر").replace(/Nov/g,"نوفمبر").replace(/Dec/g,"ديسمبر");t=n}}else t="";return t}});app.filter("filterFormatArbDays",function(){return function(n){var t="";if(n!==""){if(n!=undefined){if(IsArabicPage=="true")return n.toString().replace(/Sunday/g,"الأحد").replace(/Monday/g,"الإثنين").replace(/Tuesday/g,"الثلاثاء").replace(/Wednesday/g,"الأربعاء").replace(/Thursday/g,"الخميس").replace(/Friday/g,"الجمعة").replace(/Saturday/g,"السبت").replace(/Saturday/g,"السبت");t=n}}else t="";return t}});app.filter("filterFormatArbSortDays",function(){return function(n){var t="";if(n!==""){if(n!=undefined){if(IsArabicPage=="true")return n.toString().replace(/Sun/g,"الأحد").replace(/Mon/g,"الإثنين").replace(/Tue/g,"الثلاثاء").replace(/Wed/g,"الأربعاء").replace(/Thu/g,"الخميس").replace(/Fri/g,"الجمعة").replace(/Sat/g,"السبت").replace(/Saturday/g,"السبت");t=n}}else t="";return t}});app.filter("filterHotelSector",function(){return function(n){var t="";if(n!=undefined){if(IsArabicPage=="true")return n.toString().replace(/Hotels/g,"الفنادق").replace(/Airports/g,"المطارات").replace(/Cities/g,"المدن").replace(/Localities/g,"المواقع").replace(/Countries/g,"الدول");t=n}return t}});app.filter("GetFullDate",function(){return function(n){return n!==""?moment(n).date()+" "+moment(n).format("MMM")+", "+moment(n).format("ddd"):""}});app.filter("GetFullDateAr",function(){return function(n){var t="";if(n!=="")var i=englishToArabicNumber(moment(n).date()),r=GetShortArabicMonthName(moment(n).format("MMM")),u=GetShortArabicDays(moment(n).format("dddd")),t=i+" "+r+", "+u;else t="";return t}});app.filter("filterFormatArb",function(){return function(n){var t="";return n!==""?n!=undefined&&(t=IsArabicPage=="true"?englishToArabicNumber(n):n):t="",t}});app.filter("filterFormatArbAlw",function(){return function(n){var t="";return n!=undefined&&(t=englishToArabicNumber_Alw(n)),t}});app.filter("filterFormatStringArb",function(){return function(n){var t="";return n!=undefined&&(t=IsArabicPage=="true"?englishToArabicString(n):n),t}});app.filter("filterCurrencyStringArb",function(){return function(n){var t="";return n!=undefined?(t=n,t=IsArabicPage=="true"?n=="KWD"?"د ك":n=="AED"?"د.إ":n=="SAR"?"ر.س":n=="EGP"?"ج.م":n=="BHD"?"د.ب":n=="QAR"?"ر.ق":n=="OMR"?"ر.ع":n=="EUR"?"يورو":n=="USD"?"د.أ":n=="AUD"?"أ.د":n=="GBP"?"ج.ب":n=="INR"?"ر.هـ":n=="JOD"?"د.ا":n=="MAD"?"د.م":n=="TRY"?"ل.ت":n=="TND"?"د.ت":n=="DZD"?"د.ج":"د ك":n):t="د ك",t}});app.filter("filterCurrencyArb",function(){return function(n){var t="";return n!=undefined&&(t=n,IsArabicPage=="true"?n=="KWD"?t="د ك":n=="AED"?t="د.إ":n=="SAR"?t="ر.س":n=="EGP"?t="ج.م":n=="BHD"?t="د.ب":n=="QAR"?t="ر.ق":n=="OMR"&&(t="ر.ع"):t=n),t}});app.filter("filterFormatDateArb_DDD_DD_MMM",function(){return function(n){var t="";return n!=undefined&&(t=IsArabicPage=="true"?englishToArabicDate_DDD_DD_MMM(n):n),t}});app.filter("filterFormatDateArb_DD_MMM_YYYY",function(){return function(n){var t="";return n!=undefined&&(t=IsArabicPage=="true"?englishToArabicDate_DD_MMM_YYYY(n):n),t}});app.filter("filterBaggage",function(){return function(n){var t="";return n!=undefined&&(IsArabicPage=="true"?(n=n.indexOf("1")>-1?n.replace("Kgs","كجمات").replace("KG","كجم").replace("kg","كجم").replace("Kg","كجم").replace("PC","قطعة").replace("pc","قطعة").replace("Pc","قطعة"):n.replace("kgs","كجمات").replace("KG","كجم").replace("kg","كجم").replace("Kg","كجم").replace("PC","قطعات").replace("pc","قطعات").replace("Pc","قطعات"),t=englishToArabicString(n)):t=n),t}});app.filter("testingFilter",function(){return function(n){return n}});app.filter("filterFormatDateArb_DD_MMM",function(){return function(n){var t="";return n!=undefined&&(t=IsArabicPage=="true"?englishToArabicDate_DD_MMM(n):n),t}});app.filter("englishToArabicDate_DDD_DD_MMM",function(){return function(n){var t="";return n!=undefined&&(t=IsArabicPage=="true"?englishToArabicDate_DDD_DD_MMM(n):n),t}});app.filter("unique",function(){return function(n,t){var i=[],r=[];return angular.forEach(n,function(n){var u=n[t];r.indexOf(u)===-1&&(r.push(u),i.push(n))}),i}});app.filter("time",function(){var t={ss:angular.identity,mm:function(n){return n*60},hh:function(n){return n*3600}},n=function(n,t){for(var r=t-(""+n).length,i="";r-->0;)i+="0";return i+n};return function(i,r,u){var f=t[r||"ss"](i),e=Math.floor(f/3600),o=Math.floor(f%3600/60),s=f%60;return u=u||"hh:mm:ss",e=n(e,2),o=n(o,2),s=n(s,2),u.replace(/hh/,e).replace(/mm/,o).replace(/ss/,s)}});app.filter("artime",function(){var t={ss:angular.identity,mm:function(n){return n*60},hh:function(n){return n*3600}},n=function(n,t){for(var r=t-(""+n).length,i="";r-->0;)i+="0";return i+n};return function(i,r,u,f){var e=t[r||"ss"](i),o=Math.floor(e/3600),s=Math.floor(e%3600/60),h=e%60;u=u||"hh:mm:ss";f=!0;o=n(o,2);s=n(s,2);h=n(h,2);var c=parseInt(o),l=parseInt(s),a=u.replace(/hh/,englishToArabicNumber(c)).replace(/mm/,englishToArabicNumber(l)).replace(/ss/,"");return a.replace("h"," س").replace("m"," د")}});app.filter("artimeArboff",function(){var t={ss:angular.identity,mm:function(n){return n*60},hh:function(n){return n*3600}},n=function(n,t){for(var r=t-(""+n).length,i="";r-->0;)i+="0";return i+n};return function(i,r,u,f){var e=t[r||"ss"](i),o=Math.floor(e/3600),s=Math.floor(e%3600/60),h=e%60;u=u||"hh:mm:ss";f=!0;o=n(o,2);s=n(s,2);h=n(h,2);var c=parseInt(o),l=parseInt(s);return u.replace(/hh/,englishToArabicNumber(c)).replace(/mm/,englishToArabicNumber(l)).replace(/ss/,"")}});app.filter("artimeArb",function(){var t={ss:angular.identity,mm:function(n){return n*60},hh:function(n){return n*3600}},n=function(n,t){for(var r=t-(""+n).length,i="";r-->0;)i+="0";return i+n};return function(i,r,u,f){var e=t[r||"ss"](i),o=Math.floor(e/3600),s=Math.floor(e%3600/60),h=e%60,c,l;return u=u||"hh:mm:ss",f=!0,o=n(o,2),s=n(s,2),h=n(h,2),c=u.replace(/hh/,englishToArabicNumber(o)).replace(/mm/,englishToArabicNumber(s)).replace(/ss/,h),l=c.replace("h"," س").replace("m"," د"),l}});app.filter("capitalize",function(){return function(n){return!n?"":n.charAt(0).toUpperCase()+n.substr(1).toLowerCase()}});app.filter("lowerhypen",function(){return function(n){return n=n.replace('"',""),n.charAt(0)==="-"&&(n=n.substr(1)),!n?"":n.trim().toLowerCase().replace(" ","-").replace(/_/g,"-").replace("&","-").replace("@","-").replace("#","").replace(",","").replace("(","").replace(")","").replace(".","").replace("'","").replace("/","").replace('"',"").replace("?","").replace("=","").replace("%","").replace("~","").replace("!","").replace("#","").replace("$","").replace("*","").replace("+","").replace("`","").replace("'","").replace("{","").replace("}","").replace(";","").replace(":","").replace("<","").replace(">","").replace("|","").replace("[","").replace("]","").replace(/ /g,"-").replace(/-&-/g,"-").replace("c. - ","-").replace("-----","-").replace("----","-").replace("---","-").replace("--","-").replace(".","").replace('-"-',"-").replace(/-\s*$/,"").replace(/[-]+/g,"-")}});app.filter("split",function(){return function(n,t,i){return n.split(t)[i]}});app.filter("capitalize",function(){return function(n){return n.split(" ").map(function(n){return n=n.trim(),n.charAt(0).toUpperCase()+n.substr(1).toLowerCase()}).join(" ")}});app.filter("lowercase",function(){return function(n){return!n?"":n.trim().toLowerCase()}});app.filter("checkHotelImageExists",function(){return function(n){return n==""||n==null||n==undefined?"https://images.rehlat.com/Content/images/comingsoon_hotel_profile.jpg":n}});app.filter("checkHotelNameLength",function(){return function(n){return n=n.trim(),n.length>=20?n.substring(0,18)+"...":n}});app.filter("checkHotelNameLengthAr",function(){return function(n){return n=n.trim(),n.length>=15?n.substring(0,12)+"...":n}});app.filter("setImageurl",function(){return function(n){var t="";return n!=undefined&&(t=n.indexOf("/small/")!=-1?n.replace("/small/","/bigger/"):n.indexOf("/giata/")?n.replace("/giata/","/giata/bigger"):n),t}});var monthNames=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],monthNamesAr=["يناير","فبراير","مارس\t","أبريل / إبريل","مايو","يونيو / يونية","يوليو / يولية","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"];app.filter("alterCanPolicyText",function(){return function(n,t){for(var r,u="",i=0;i<n.length;i++){r=new Date(n[i].CancellationDateFrom.split(" ")[0]);u=u+"Cancel at free of cost upto <br/>"+r.getFullYear()+"-"+monthNames[r.getMonth()]+"-"+r.getDate()+" "+n[i].CancellationDateFrom.split(" ")[1]+", <br/>post that you will be charged "+t+" "+n[i].CancellationAmount+".<br/>";break}return u}});app.filter("alterCanPolicyTextAr",function(){return function(n,t){for(var r,u="",i=0;i<n.length;i++){r=new Date(n[i].CancellationDateFrom.split(" ")[0]);u='<div dir="rtl"><span class="positionFirst"> قم بإلغاء مجانا لغاية  <br/>'+englishToArabicDate_DD_MMM_YYYY_Alw(r.getDate()+" "+monthNames[r.getMonth()]+" "+r.getFullYear()+" "+n[i].CancellationDateFrom.split(" ")[1])+' <\/span>&nbsp;<span class="positionFirst"> بعد ذالك سيتم محاسبتك '+englishToArabic_Alw(n[i].CancellationAmount)+" "+t+"  <\/span>&nbsp; <\/div>";break}return u}});app.filter("hotelBannnerCond",function(){return function(n,t){return n/3-1==t}});app.filter("removeStarInImgName",function(){return function(n){return n.replace("*","")}});app.filter("getArabicText",function(){return function(n){return englishToArabic(n)}});app.filter("filterAmneties",function(){return function(n,t,i,r,u,f,e){var o="";return t&&(o="Shattaf |"),n&&(o=o+" Wifi |"),i&&(o=o+" Swimming Pool |"),r&&(o=o+" Fitness |"),u&&(o=o+" Airport Pick-up |"),f&&(o=o+" Restaurant |"),e&&(o=o+" BabySitting |"),o.substring(0,o.length-1)}});app.filter("filterAmnetiesAr",function(){return function(n,t,i,r,u,f,e){var o="";return t&&(o="شطاف |"),n&&(o=o+" واي فاي |"),i&&(o=o+"  حمامات السباحة|"),r&&(o=o+" نادي رياضي |"),u&&(o=o+" سيارات النقل من المطار |"),f&&(o=o+" مطعم |"),e&&(o=o+" رعاية الأطفال |"),o.substring(0,o.length-1)}});app.directive("uppercase",function(){return{require:"ngModel",link:function(n,t,i,r){var u=function(n){n==undefined&&(n="");var t=n.toUpperCase();return t!==n&&(r.$setViewValue(t),r.$render()),t};r.$parsers.push(u);u(n[i.ngModel])}}});app.directive("rawinput",function(){return{require:"ngModel",priority:100,link:function(n,t,i,r){r.$parsers=[];r.$formatters=[]}}});app.directive("toggle",function(){return{restrict:"A",link:function(n,t,i){i.toggle=="tooltip"&&$(t).tooltip();i.toggle=="popover"&&$(t).popover()}}});app.directive("wrapOwlcarousel",function(){return{restrict:"E",link:function(n,t){var i=n.$eval($(t).attr("data-options"));setTimeout(function(){$(t).owlCarousel(i)},1e3)}}});app.directive("wrapOwlCityCarousel",function(){return{restrict:"E",link:function(n,t){var i=n.$eval($(t).attr("data-options"));$(t).hide();setTimeout(function(){$(t).show();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i)},2e3)},2e3)},2e3)},2e3)},2e3)},2e3)},2e3)},2e3)}}});app.directive("wrapOwlCityCarouselAr",function(){return{restrict:"E",link:function(n,t){var i=n.$eval($(t).attr("data-options"));$(t).hide();setTimeout(function(){$(t).show();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i);setTimeout(function(){$(t).data("owlCarousel").destroy();$(t).owlCarousel(i)},2e3)},2e3)},2e3)},2e3)},2e3)},2e3)},2e3)},2e3)},2e3)}}});app.directive("noSpecialChar",function(){return{require:"ngModel",restrict:"A",link:function(n,t,i,r){var u=function(n){return/^[a-zA-Z0-9]*$/.test(n)?(r.$setValidity("alphanumeric",!0),n):(r.$setValidity("alphanumeric",!1),"")};r.$parsers.unshift(u);r.$formatters.unshift(u)}}});app.directive("onlyDigits",function(){return{require:"ngModel",restrict:"A",link:function(n,t,i,r){function u(n){if(n){var t=n.replace(/[^0-9]/g,"");return t!==n&&(r.$setViewValue(t),r.$render()),parseInt(t,10)}return undefined}r.$parsers.push(u)}}});app.directive("checkImage",function(n){return{restrict:"A",link:function(t,i,r){r.$observe("ngSrc",function(t){n.get(t).success(function(){}).error(function(){i.remove()})})}}});app.controller("NavBarController",["$scope","$rootScope","$window",function(n,t,i){t.is_mobile=i.innerWidth<767;n.IsMobile=i.innerWidth<767;angular.element(i).bind("resize",function(){n.$apply()});n.$watch(function(){return i.innerWidth},function(i){t.is_mobile=i<767;n.IsMobile=i<767})}]);String.prototype.includes||(String.prototype.includes=function(n,t){"use strict";return typeof t!="number"&&(t=0),t+n.length>this.length?!1:this.indexOf(n,t)!==-1});String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")});app.directive("scrollTrigger",["$window",function(n){return{link:function(t,i,r){var u=parseInt(r.threshold)||0,f=jQuery(i[0]),e=jQuery(document);angular.element(document).bind("scroll",function(){e.scrollTop()+n.innerHeight+u>f.offset().top&&t.$apply(r.scrollTrigger)})}}}]);
$(window).resize(function(){$(window).width()>768&&$(".collapse, #mainContainer").removeClass("in")});$("document").ready(function(){$(".myAccPanelHD_HotelProfile a").on("click",function(){$(".ToggleArrow").toggleClass("ToggleArrow-Rotate")})});
function Charcount(n,t){var i=new RegExp(t,"gi");return n.match(i)!=null?n.match(i).length:0}function checkMobAppLogin(){userType=="MobApp"&&isUserLoggedIn=="False"&&($("#EmailAddress").val(userEmail),$("#Source").val("MobApp"),$("#form-login").submit())}function is_Consonent(n){for(var i,r,u=100/n.length,t=0;t<n.length;t++)if(n[t].toLowerCase()!="a"&&n[t].toLowerCase()!="e"&&n[t].toLowerCase()!="i"&&n[t].toLowerCase()!="o"&&n[t].toLowerCase()!="u"&&(i=Charcount(n,n[t]),r=i*u,r>=50))return!0}function is_Seqential(n){for(var u,f,r={a:1,s:2,d:3,f:4,g:5,h:6,j:7,k:8,l:9,z:1,x:2,c:3,v:4,b:5,n:6,m:7,q:0,w:1,e:2,r:3,t:4,y:5,u:6,i:7,o:8,p:9},i="",t=0;t<n.length;t++)i=t===0?r[""+n[t]+""]:i+""+r[""+n[t]+""];return u="0123456789",f="9876543210",u.indexOf(String(i))>=0||f.indexOf(String(i))>=0}function checkName(n){var i=n,t=i.value;t=t.replace(/[^a-z0-9\s]/gi,"");i.value=t}function checkcopy(){event.preventDefault();var n=window.location.pathname.toLowerCase(),t=n.slice(0,3);return t=="/ar"?alert("كليك يمين غير مسموحة هنا"):alert("Right Click is not allowed here"),!1}function checkLastName3Char(){if($("#LastName_1").length){var n=$("#LastName_1").val();if(n.length<3)return typeof language=="undefined"||language=="en"?$("#lblLastNameErrorText").text("Last Name should  Minimum 3 Characters"):$("#lblLastNameErrorText").text("(ثلاث أحرف على الأقل)"),null;PageLanguageActual=="ar"?$("#lblLastNameErrorText").text(""):$("#lblLastNameErrorText").text("")}}function checkFirstNameLastName(){var n=$("#FirstName_1").val(),t=$("#LastName_1").val();n=n.replace(/[^a-z0-9\s]/gi,"");t=t.replace(/[^a-z0-9\s]/gi,"");$("#FirstName_1").val(n);$("#LastName_1").val(t);var i=n.length,r=t.length,u=i+r;u>48&&($("#lblMessage").text("First Name and Last Name should not exceed 48 characters"),setTimeout(function(){$("#lblMessage").hide("slow")},4e3),$("#FirstName_1").val(""),$("#LastName_1").val(""))}function isNumberKey(n){var t=n.which?n.which:n.keyCode;return t!=46&&t>31&&(t<48||t>57)?!1:!0}function ValidateAlphabetWithSpace(n){var t=n.which?n.which:n.keyCode;return(t<65||t>90)&&(t<97||t>123)&&t!=32?!1:!0}function validateAlphabetOnly(n){n.keyCode>=65&&n.keyCode<=90||n.keyCode>=97&&n.keyCode<=122||(n.returnValue=!1)}function paymentGatewayValidation(){if($("[name=PaymentMethod]:checked").val()==undefined)return!1}function validateEmail(n){return/^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/.test(n)}function emailValiDate(n){return/^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/.test(n)?!0:!1}function isNumberKey(n){var t=n.which?n.which:event.keyCode;return t>31&&(t<48||t>57)?!1:!0}function checkValidEmail(n){var t=$("#"+n).val();validateEmail(t)?$("#"+n).css("border-color","#CCC"):($("#"+n).focus(),$("#"+n).css("border-color","red"));t==""&&$("#"+n).css("border-color","#CCC")}function validateRequiredFields(n){if($(n).prop("type")=="select-one"){if($(n).val()==""){requiredField=!1;$("#popup_message").text($(n).attr("data-hi"));$("#popup_container").show(function(){$(n).remove("slow")});var t="[data-hi='"+$(n).attr("data-hi")+"']";return $(n).focus(),$(t).parent().css("border-color","red"),$(t).parent().bind("click",function(){$("#popup_container").hide();$(t).parent().css("border-color","#CCC")}),!1}}else{if($(n).val()=="")return requiredField=!1,$("#popup_message").text($(n).attr("data-hi")),$("#popup_container").show(function(){$(n).remove("slow")}),$(n).focus(),$(n).css("border-color","red"),$(n).bind("keyup blur",function(){$("#popup_container").hide();$(n).css("border-color","#CCC")}),!1;if($(n).prop("type")=="email"&&!validateEmail($(n).val()))return requiredField=!1,$("#popup_message").text("Please Enter valid Email"),$("#popup_container").show(function(){$(n).remove("slow")}),$(n).focus(),$(n).css("border-color","red"),$(n).bind("keyup blur",function(){$("#popup_container").hide();$(n).css("border-color","#CCC")}),!1}}function englishToArabicNumber(n){return IsArabicPage!="true"||checkMeta=="TRIVAGO"?n:n!=null||n!=""?isNaN(n)?n:englishToArabic(parseFloat(n)):""}function englishToArabicNumber_Alw(n){return checkMeta=="TRIVAGO"?n:n!=null||n!=""?isNaN(n)?n:englishToArabic_Alw(parseFloat(n)):""}function englishToArabicString(n){return IsArabicPage!="true"||checkMeta=="TRIVAGO"?n:n!=null||n!=""?englishToArabic(n):""}function englishToArabicDate_DDD_DD_MMM(n){if(IsArabicPage!="true"||checkMeta=="TRIVAGO")return n;if(n!=null||n!=""){var t=n.split(" ");return GetShowDays(t[0])+" "+englishToArabicNumber(t[1])+" "+GetShortMonthName(t[2])}return""}function englishToArabicDate_DD_MMM(n){if(IsArabicPage!="true"||checkMeta=="TRIVAGO")return n;if(n!=null||n!=""){var t=n.split(" ");return englishToArabicNumber(t[0])+" "+GetShortMonthName(t[1])}return""}function englishToArabicDate_DD_MMM_YYYY(n){if(IsArabicPage!="true"||checkMeta=="TRIVAGO")return n;if(n!=null||n!=""){var t=n.split(" ");return englishToArabicNumber(t[0])+" "+GetShortMonthName(t[1])+" "+englishToArabicNumber(t[2])}return""}function englishToArabicDate_DD_MMM_YYYY_Alw(n){if(checkMeta=="TRIVAGO")return n;if(n!=null||n!=""){var t=n.split(" "),i=t[3].split(":");return englishToArabicNumber_Alw(t[2])+"-"+GetShortMonthName_Alw(t[1])+"-"+englishToArabicNumber_Alw(t[0])+" "+englishToArabicNumber_Alw(i[2])+":"+englishToArabicNumber_Alw(i[1])+":"+englishToArabicNumber_Alw(i[0])}}function englishToArabic(n){return IsArabicPage!="true"||checkMeta=="TRIVAGO"?n:n!=undefined?n.toString().replace(/0/g,"٠").replace(/1/g,"١").replace(/2/g,"٢").replace(/3/g,"٣").replace(/4/g,"٤").replace(/5/g,"٥").replace(/6/g,"٦").replace(/7/g,"٧").replace(/8/g,"٨").replace(/9/g,"٩"):""}function englishToArabic_Alw(n){return checkMeta=="TRIVAGO"?n:n.toString().replace(/0/g,"٠").replace(/1/g,"١").replace(/2/g,"٢").replace(/3/g,"٣").replace(/4/g,"٤").replace(/5/g,"٥").replace(/6/g,"٦").replace(/7/g,"٧").replace(/8/g,"٨").replace(/9/g,"٩")}function GetShortArabicDays(n){return n.toString().replace(/Sunday/g,"الأحد").replace(/Monday/g,"الإثنين").replace(/Tuesday/g,"الثلاثاء").replace(/Wednesday/g,"الأربعاء").replace(/Thursday/g,"الخميس").replace(/Friday/g,"الجمعة").replace(/Saturday/g,"السبت").replace(/Saturday/g,"السبت")}function GetShortArabicMonthName(n){return n.toString().replace(/Jan/g,"يناير").replace(/Feb/g,"فبراير").replace(/Mar/g,"مارس").replace(/Apr/g,"أبريل").replace(/May/g,"مايو").replace(/Jun/g,"يونيو").replace(/Jul/g,"يوليو").replace(/Aug/g,"أغسطس").replace(/Sep/g,"سبتمبر").replace(/Oct/g,"أكتوبر").replace(/Nov/g,"نوفمبر").replace(/Dec/g,"ديسمبر")}function GetShortMonthName(n){return IsArabicPage!="true"||checkMeta=="TRIVAGO"?n:n.toString().replace(/Jan/g,"يناير").replace(/Feb/g,"فبراير").replace(/Mar/g,"مارس").replace(/Apr/g,"أبريل").replace(/May/g,"مايو").replace(/Jun/g,"يونيو").replace(/Jul/g,"يوليو").replace(/Aug/g,"أغسطس").replace(/Sep/g,"سبتمبر").replace(/Oct/g,"أكتوبر").replace(/Nov/g,"نوفمبر").replace(/Dec/g,"ديسمبر")}function GetShortMonthFullName(n){return IsArabicPage!="true"||checkMeta=="TRIVAGO"?n:(n=month_names_short[n-1],n.toString().replace(/Jan/g,"يناير").replace(/Feb/g,"فبراير").replace(/Mar/g,"مارس").replace(/Apr/g,"أبريل").replace(/May/g,"مايو").replace(/Jun/g,"يونيو").replace(/Jul/g,"يوليو").replace(/Aug/g,"أغسطس").replace(/Sep/g,"سبتمبر").replace(/Oct/g,"أكتوبر").replace(/Nov/g,"نوفمبر").replace(/Dec/g,"ديسمبر"))}function GetShortMonthName_Alw(n){return n.toString().replace(/Jan/g,"يناير").replace(/Feb/g,"فبراير").replace(/Mar/g,"مارس").replace(/Apr/g,"أبريل").replace(/May/g,"مايو").replace(/Jun/g,"يونيو").replace(/Jul/g,"يوليو").replace(/Aug/g,"أغسطس").replace(/Sep/g,"سبتمبر").replace(/Oct/g,"أكتوبر").replace(/Nov/g,"نوفمبر").replace(/Dec/g,"ديسمبر")}function GetShowDays(n){return IsArabicPage!="true"||checkMeta=="TRIVAGO"?n:n.toString().replace(/Sun/g,"الأحد").replace(/Mon/g,"الإثنين").replace(/Tue/g,"الثلاثاء").replace(/Wed/g,"الأربعاء").replace(/Thu/g,"الخميس").replace(/Fri/g,"الجمعة").replace(/Sat/g,"السبت").replace(/Sat/g,"السبت")}function replaceSpecialChar(n){return n.replace(/([~!@#$%^&*()_+=`{}\[\]\|\\:;'<>,.\/? ])+/g,"").replace(/^(-)+|(-)+$/g,"")}function GetArabicStringDomainCurrency(n){return n.toString().replace(/KWD/g,"د ك").replace(/AED/g,"د.إ").replace(/SAR/g,"ر.س").replace(/EGP/g,"ج.م")}function GetArabicTiming(n){return n.toString().replace(/Early Morning/g,"الصباح الباكر").replace(/Morning/g,"صباحًا").replace(/Afternoon/g,"بعد الظهر").replace(/Evening/g,"مساءً")}function ValidatePassword(n,t){if(t=="DSKTP"&&$(".strengthPS").hide(),n.value!=""&&n.value!=null&&n.value!=undefined){if(n.value.length>=6)return $(".passwordValidationMsg").hide(),!0;$(".passwordValidationMsg").show();$(".passwordStrength").text(" ");var r=window.location.pathname.toLowerCase(),i=r.slice(0,3);return i=="/en"?$(".passwordValidationMsg").text("Minimum Password length required is 6 characters"):i=="/ar"?$(".passwordValidationMsg").text("يجب أن تحتوي طول كلمة السر بحد أدنى هو 6 أحرف"):StartPageinWebConfg=="en"?$(".passwordValidationMsg").text("Minimum Password length required is 6 characters"):$(".passwordValidationMsg").text("يجب أن تحتوي طول كلمة السر بحد أدنى هو 6 أحرف"),$(n).val(""),!1}}function checkStrength(n,t){var f,i,r,u;if($(".passwordValidationMsg").text(""),f=window.location.pathname.toLowerCase(),i=f.slice(0,3),i!="/en"&&i!="/ar"&&(i=StartPageinWebConfg=="en"?"/en":"/ar"),r=n.value,r!=""){if(u=0,/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)?$(".passwordValidationMsg").hide():$(".strengthPS").show(),$("."+t+"ShowPwd").show(),r.length<6){i=="/en"?($(".pwdStrength").text("Too Short"),$(".passwordStrength").text("Password Strength : Too Short")):($(".pwdStrength").text("قصيرة جداً"),$(".passwordStrength").text("قوة كلمة السر:قصيرة جداً"));$(".passwordStrength").css("color","#ff0000");$(".pwdStrengthGraph").removeClass("wsvprogressORG");$(".pwdStrengthGraph").removeClass("wsvprogressBLU");$(".pwdStrengthGraph").removeClass("wsvprogressGre");$(".pwdStrengthGraph").addClass("wsvprogressRED");return}if(r.match(/([a-z].*)/)&&(u+=1),r.match(/([A-Z].*)/)&&(u+=1),r.match(/([0-9])/)&&(u+=1),r.match(/([!,%,&,@,#,$,^,*,?,_,~])/)&&(u+=1),r.match(/(.*[!,%,&,@,#,$,^,*,?,_,~].*[!,%,&,@,#,$,^,*,?,_,~])/)&&(u+=1),u<2){i=="/en"?($(".pwdStrength").text("Weak"),$(".passwordStrength").text("Password Strength : Weak")):($(".pwdStrength").text("ضعيفة"),$(".passwordStrength").text("قوة كلمة السر:ضعيفة"));$(".passwordStrength").css("color","#f0ad4e");$(".pwdStrengthGraph").addClass("wsvprogressORG");$(".pwdStrengthGraph").removeClass("wsvprogressBLU");$(".pwdStrengthGraph").removeClass("wsvprogressGre");$(".pwdStrengthGraph").removeClass("wsvprogressRED");return}if(u==2){$(".pwdStrengthGraph").removeClass("wsvprogressORG");$(".pwdStrengthGraph").addClass("wsvprogressBLU");$(".pwdStrengthGraph").removeClass("wsvprogressGre");$(".pwdStrengthGraph").removeClass("wsvprogressRED");i=="/en"?($(".pwdStrength").text("Medium"),$(".passwordStrength").text("Password Strength : Medium")):($(".pwdStrength").text("متوسطة "),$(".passwordStrength").text("قوة كلمة السر:متوسطة"));$(".passwordStrength").css("color","#0725ff");return}$(".pwdStrengthGraph").removeClass("wsvprogressORG");$(".pwdStrengthGraph").removeClass("wsvprogressBLU");$(".pwdStrengthGraph").addClass("wsvprogressGre");$(".pwdStrengthGraph").removeClass("wsvprogressRED");i=="/en"?($(".passwordStrength").text("Password Strength : Strong"),$(".pwdStrength").text("Strong")):($(".pwdStrength").text("قوية "),$(".passwordStrength").text("قوة كلمة السر:قوية"));$(".passwordStrength").css("color","#5cb85c");return}}function getUTCDateTime(n){var f=new Date,s=f.getTime(),h=f.getTimezoneOffset()*6e4,c=s+h,t=n,e,i,o;t=t.replace("+","").replace("-","").replace(":","");e=t.substr(0,2);i=t.substr(2,2);i=i/60*100;var l=e+"."+i,a=c+36e5*l,v=new Date(a),r=v,u=r.getDate();return u.toString().length==1&&(u="0"+u),o=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"][r.getDay()]+" "+u+" "+month_names_short[r.getMonth()],{UTCDateTime:r,UTCDate:o}}function getTimeDiffHours(n,t){var i=n.substring(0,2),r=n.substring(2),o=i-t.getHours(),s=r-t.getMinutes(),u=new Date(t.getFullYear(),t.getMonth(),t.getDate(),i,r,0),f=t,e=(u.getTime()-f.getTime())/1e3;return e/3600}function rga(n,t,i,r){typeof dataLayer!="undefined"&&dataLayer.push({event:"eventTracking",category:i,action:r,label:""})}function dLTicket(n,t,i,r,u,f,e){if(typeof dataLayer!="undefined")try{dataLayer.push({Mrup:n,Dist:t,Mrup_per:parseFloat(parseFloat(parseFloat(n)/parseFloat(i)*100).toFixed(2)),Dist_per:parseFloat(parseFloat(parseFloat(t)/parseFloat(i)*100).toFixed(2)),Crcy:r,PGName:u,PGFee:f,PGfeePercent:parseFloat(parseFloat(parseFloat(f)/parseFloat(e)*100).toFixed(2))})}catch(o){}}function webEngageLogin(n){typeof vWebengage!="undefined"&&vWebengage=="true"&&typeof webengage!="undefined"&&webengage.user.login(n)}function webEngageLogout(){try{localStorage.removeItem("StoreUserNameBefore")}catch(n){}typeof vWebengage!="undefined"&&vWebengage=="true"&&typeof webengage!="undefined"&&webengage.user.logout()}function webEngagePriceUp(){typeof vWebengage!="undefined"&&vWebengage=="true"&&typeof webengage!="undefined"&&webengage.track("PriceUp",{PriceUp:"@eventmodel",TripType:SearchForm.TripType,FROM_CITY_CODE:SearchForm.Segments[0].From,TO_CITY_CODE:SearchForm.Segments[0].To,FROM_CITY_NAME:FromCityname,TO_CITY_NAME:ToCityName,CLASS:SearchForm.Class,AirlineName:FlightDetails[0].AirlineName,START_DATE:new Date(jrnyStartDate),RETURN_DATE:jrnyReturnDate!==""?new Date(jrnyReturnDate):"NULL",TOT_PAX:TotalPax,Adult:adultcount,Children:childcount,Infant:InfantCount,USERCURRENCY:userCurrency,Refundable:FareType=="Refundable"?"true":"false",SearchDate:new Date,Price:$scope.TotalCost})}function webEngagePriceDown(){typeof vWebengage!="undefined"&&vWebengage=="true"&&typeof webengage!="undefined"&&webengage.track("PriceDown",{PriceDown:"@eventmodel",TripType:SearchForm.TripType,FROM_CITY_CODE:SearchForm.Segments[0].From,TO_CITY_CODE:SearchForm.Segments[0].To,FROM_CITY_NAME:FromCityname,TO_CITY_NAME:ToCityName,CLASS:SearchForm.Class,AirlineName:FlightDetails[0].AirlineName,START_DATE:new Date(jrnyStartDate),RETURN_DATE:jrnyReturnDate!==""?new Date(jrnyReturnDate):"NULL",TOT_PAX:TotalPax,Adult:adultcount,Children:childcount,Infant:InfantCount,USERCURRENCY:userCurrency,Refundable:FareType=="Refundable"?"true":"false",SearchDate:new Date,Price:$scope.TotalCost})}function ValidatePromoCode(){}function uaePGEvent(n){if(n!=undefined&&n!=null&&n!=""){var t=getBankName(n);t!=""&&rgaWithLabel("PaymentGateway","UAEPG",t)}}function getBankName(n){var t="";switch(n){case"0024":t="Dubai Islamic Bank";break;case"0026":t="EmiratesNBD";break;case"0044":t="Standard Chartered Bank";break;case"0023":t="Commercial Bank of Dubai";break;case"0020":t="HSBC";break;case"0021":t="Citi Bank";break;case"0035":t="National Bank of Abu Dhabi-FAB";break;case"0009":t="Arab Bank";break;case"0045":t="Union National Bank";break;case"0003":t="Abu Dhabi commercial Bank";break;default:t=""}return t}function rgaWithLabel(n,t,i){typeof dataLayer!="undefined"&&dataLayer.push({event:"eventTracking",category:n,action:t,label:i})}function PGCurrencyConversion(n){return typeof n!="undefined"&&n!=undefined?n=="KWD"?"د.ك":n=="SAR"?"ر.س":n=="AED"?"د.إ":n=="EUR"?"يورو":n=="USD"?"د.أ":n=="AUD"?"أ.د":n=="QAR"?"ر.ق":n=="GBP"?"ج.ب":n=="INR"?"ر.هـ":n=="EGP"?"ج.م":n=="BHD"?"د.ب":n=="OMR"?"ر.ع":n=="JOD"?"د.ا":n=="MAD"?"د.م":n=="TRY"?"ل.ت":n:""}function saveApiAutomation(){}/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)?$(".NoSpeCharFirstName,.NoSpeCharLastName,.NoSpeCharMiddleName").bind("keyup blur",function(){$(this).val($(this).val().replace(/[^A-Za-z_\s]/g,""))}):$(".NoSpeCharFirstName,.NoSpeCharLastName,.NoSpeCharMiddleName").keypress(function(n){var t=new RegExp("^[a-zA-Z ]+$"),i=String.fromCharCode(n.charCode?n.charCode:n.which);return t.test(i)?!0:n.keyCode===9||n.keyCode==8||/firefox/i.test(navigator.userAgent)&&n.keyCode==46?!0:(n.preventDefault(),!1)});$(document).on("keypress",".Arbictxtrestrict",function(n){var t;return(t=window.event?window.event.keyCode:n.which,t>128)?!1:n.ctrlKey&&(n.keyCode==88||n.keyCode==67||n.keyCode==86)?!1:!0});/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)?$(".NoSpeCharFirstName1,.NoSpeCharLastName1,.NoSpeCharMiddleName1").bind("keyup blur",function(){var n=new RegExp("^[a-zA-Z ]+$"),t=String.fromCharCode(e.charCode?e.charCode:e.which);return n.test(t)?!0:(e.preventDefault(),!1)}):$(".NoSpeCharFirstName1,.NoSpeCharLastName1,.NoSpeCharMiddleName1").keypress(function(n){var t=new RegExp("^[a-zA-Z ]+$"),i=String.fromCharCode(n.charCode?n.charCode:n.which);return t.test(i)?!0:(n.preventDefault(),!1)});$(".PassportValidation").bind("keyup blur",function(n){n.which!=37&&n.which!=39&&$(this).val($(this).val().replace(/[^A-Za-z0-9]/g,""))});$(".FrequentFlyerValidaation").bind("keyup blur",function(n){n.which!=37&&n.which!=39&&n.which!=32&&n.which!=189&&$(this).val($(this).val().replace(/[^A-Za-z0-9 \-]/g,""))});$(".NoUnderscore").bind("keyup blur",function(){$(this).val($(this).val().replace("_",""))});$(".ReplaceSpaceWithhyphen").bind("keyup blur",function(){$(this).val($(this).val().replace(" ","-"))});$(".allownumericwithdecimal").on("keypress keyup blur",function(n){$(this).val($(this).val().replace(/[^0-9\.]/g,""));(n.which!=46||$(this).val().indexOf(".")!=-1)&&(n.which<48||n.which>57)&&n.preventDefault()});$(".restrictZeroAtFirstPlace").on("keypress keyup blur",function(n){$(this).val().length==0&&n.which==48&&n.preventDefault()});/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)?$(".NoCharPhoneNumber").bind("keyup blur",function(){this.value=this.value.replace(/[^0-9]/g,"")}):$(".NoCharPhoneNumber").keypress(function(n){if(n.which!=8&&n.which!=0&&(n.which<48||n.which>57))return!1});/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)?$(".disableArrows").bind("keyup blur",function(n){if(n.keyCode===37||n.keyCode===38||n.keyCode===39||n.keyCode===40)return!1}):$(".disableArrows").keypress(function(n){if(n.keyCode===37||n.keyCode===38||n.keyCode===39||n.keyCode===40)return!1});/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)?$(".alphaNumeric").bind("keyup blur",function(){var n=new RegExp("^[a-zA-Z0-9]+$"),t=String.fromCharCode(e.charCode?e.charCode:e.which);return n.test(t)?!0:(e.preventDefault(),!1)}):$(".alphaNumeric").keypress(function(n){var t=new RegExp("^[a-zA-Z0-9]+$"),i=String.fromCharCode(n.charCode?n.charCode:n.which);return t.test(i)?!0:(n.preventDefault(),!1)});$(".spamNames").focusout(function(n){var t=$(this).val(),f=restrictedLetters.split(","),e=new RegExp(/(\b(?:([A-Za-z0-9])(?!\2{2}))+\b)/),i,r,u;if(t=t.trim(),t.length==0&&(i=$(this)[0].id,i.indexOf("FirstName")>=0||i.indexOf("LastName")>=0))return $("#"+i).val(t),$(this).css("border-color","red"),n.preventDefault(),$("#btnSubmit").attr("disabled","disabled"),!1;if(t.length==2){if(Boolean(t.match(e)))return $(this).css("border-color","red"),n.preventDefault(),$("#btnSubmit").attr("disabled","disabled"),!1;$(this).css("border","1px solid #cad3df")}else{if(/([A-Za-z0-9])\1\1/.test(t.toLowerCase())||f.indexOf(t.toLowerCase())>=0)return $(this).css("border-color","red"),n.preventDefault(),!1;$(this).css("border","1px solid #cad3df");i=$(this)[0].id;i.indexOf("FirstName")>=0?i=i.replace("FirstName",""):i.indexOf("LastName")>=0&&(i=i.replace("LastName",""));$("#"+i).html("")}if(t.toLowerCase().includes("first")||t.toLowerCase().includes("middle")||t.toLowerCase()=="last"||t.toLowerCase().includes(" last")||t.toLowerCase().includes("  last")||t.toLowerCase().includes("last ")||t.toLowerCase().includes("last  "))return $(this).css("border-color","red"),$("#btnSubmit").attr("disabled","disabled"),n.preventDefault(),!1;if($(this).css("border","1px solid #cad3df"),t.length>4)if(t.match(/[aeiouyAEIOUY]/)){if(is_Seqential(t.toLowerCase()))return $(this).css("border-color","red"),$("#btnSubmit").attr("disabled","disabled"),n.preventDefault(),!1;$(this).css("border","1px solid #cad3df");$("#btnSubmit").removeAttr("disabled")}else return $(this).css("border-color","red"),n.preventDefault(),$("#btnSubmit").attr("disabled","disabled"),!1;if(t.length>3){if((r=Charcount(t,"s")+Charcount(t,"d")+Charcount(t,"f")+Charcount(t,"g")+Charcount(t,"h")+Charcount(t,"j")+Charcount(t,"k")+Charcount(t,"l"),u=Charcount(t,"z")+Charcount(t,"x")+Charcount(t,"c")+Charcount(t,"v")+Charcount(t,"b")+Charcount(t,"n")+Charcount(t,"m"),t.length==r||t.length==u)||is_Seqential(t.toLowerCase()))return $(this).css("border-color","red"),$("#btnSubmit").attr("disabled","disabled"),n.preventDefault(),!1;$(this).css("border","1px solid #cad3df");$("#btnSubmit").removeAttr("disabled")}if(t.length>=3&&is_Seqential(t.substring(0,3).toLowerCase())||t.length>=6&&is_Consonent(t))return $(this).css("border-color","red"),$("#btnSubmit").attr("disabled","disabled"),n.preventDefault(),!1;$(this).css("border","1px solid #cad3df");$("#btnSubmit").removeAttr("disabled")});/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)||($(".disablePaste").bind("paste",function(n){n.preventDefault();var t=window.location.pathname.toLowerCase(),i=t.slice(0,3);return i=="/ar"?($("#popup_message").text(" اللصق غير مسموح هنا !!!"),$("#popup_container").show()):alert("Paste is not allowed !!!"),$(currentfield).focus(),$(currentfield).css("border-color","red"),$(currentfield).bind("keyup blur",function(){$(currentfield).css("border-color","#ccc")}),!1}),$(".disableRightClick").bind("contextmenu",function(n){n.preventDefault();var t=window.location.pathname.toLowerCase(),i=t.slice(0,3);return i=="/ar"?alert("كليك يمين غير مسموحة هنا"):alert("Right Click is not allowed here"),$(currentfield).focus(),$(currentfield).css("border-color","red"),$(currentfield).bind("keyup blur",function(){$(currentfield).css("border-color","#ccc")}),!1}));$("input[name=CardNumber]").bind("cut copy paste",function(n){return n.preventDefault(),!1});$("input[name=card_number]").bind("cut copy paste",function(n){return n.preventDefault(),!1});$(".cutCopyPaste").bind("cut copy paste",function(n){return n.preventDefault(),$(currentfield).focus(),$(currentfield).css("border-color","red"),$(currentfield).bind("keyup blur",function(){$("#popup_container").hide();$(currentfield).css("border-color","#ccc")}),!1});$(".noSpaceFirstPosition").on("keypress",function(n){n.which!==32||this.value.length||n.preventDefault()});$(".noSpacePosition").on("keypress",function(n){n.which===32&&n.preventDefault()});$(".Amount").bind("keyup blur",function(){$(this).val($(this).val().replace(/[^.0-9]/g,""))});$(".dontAllowInput").keypress(function(n){n.preventDefault()});/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)||($(".noPasteOnPg").bind("paste",function(n){return n.preventDefault(),!1}),$(".disableRightClickOnPg").bind("contextmenu",function(n){return n.preventDefault(),!1}));$(document).on("ready",function(){var n=window.location.pathname.toLowerCase(),t=n.slice(0,3);t!="/ar"||$("#Flyingfrom1").catcomplete({position:{my:"left top+12",at:"left bottom"}})});$(document).ajaxStart(function(){$("body").css("cursor","wait")}).ajaxStop(function(){$("body").css("cursor","default")});var digits=["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],month_names_short=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];new function(n){n.fn.getCursorPosition=function(){var i=0,t=n(this).get(0),r,u;try{document.selection?(t.focus(),r=document.selection.createRange(),u=document.selection.createRange().text.length,r.moveStart("character",-t.value.length),i=r.text.length-u):(t.selectionStart||t.selectionStart=="0")&&(i=t.selectionStart)}catch(f){}return i}}(jQuery);
function ga_rehlat(n,t){try{if(isGaModel=="true"&&n.Domain!=null){n.DeviceCategory=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini|firefox/i.test(navigator.userAgent)?$(window).width()>=768?"Tablet":"Mobile":"Desktop";n.CreatedOn=new Date;t!=null&&t!=""&&(n.Action=t);var i=gaRehlatUrl;userJourneyCall(n,i)}}catch(r){}}function userJourneyCall(n,t){t="/ujt/userJourneyCall";$.ajax({async:!0,url:t,type:"POST",dataType:"json",data:n,success:function(){},error:function(){}})};
(function(n,t){"use strict";function g(){this.$get=["$$sanitizeUri",function(n){return function(t){var i=[];return at(t,k(i,function(t,i){return!/^unsafe/.test(n(t,i))})),i.join("")}}]}function nt(n){var i=[],r=k(i,t.noop);return r.chars(n),i.join("")}function i(n){for(var i={},r=n.split(","),t=0;t<r.length;t++)i[r[t]]=!0;return i}function at(n,i){function g(n,f,e,o){if(f=t.lowercase(f),a[f])while(r.last()&&v[r.last()])w("",r.last());l[f]&&r.last()==f&&w("",f);o=s[f]||!!o;o||r.push(f);var h={};e.replace(tt,function(n,t,i,r,f){var e=i||r||f||"";h[t]=u(e)});i.start&&i.start(f,h,o)}function w(n,u){var f=0,e;if(u=t.lowercase(u),u)for(f=r.length-1;f>=0;f--)if(r[f]==u)break;if(f>=0){for(e=r.length-1;e>=f;e--)i.end&&i.end(r[e]);r.length=f}}typeof n!="string"&&(n=n===null||typeof n=="undefined"?"":""+n);var c,p,h,r=[],k=n,b;for(r.last=function(){return r[r.length-1]};n;){if(b="",p=!0,r.last()&&y[r.last()]?(n=n.replace(new RegExp("(.*)<\\s*\\/\\s*"+r.last()+"[^>]*>","i"),function(n,t){return t=t.replace(ut,"$1").replace(ft,"$1"),i.chars&&i.chars(u(t)),""}),w("",r.last())):(n.indexOf("<!--")===0?(c=n.indexOf("--",4),c>=0&&n.lastIndexOf("-->",c)===c&&(i.comment&&i.comment(n.substring(4,c)),n=n.substring(c+3),p=!1)):o.test(n)?(h=n.match(o),h&&(n=n.replace(h[0],""),p=!1)):rt.test(n)?(h=n.match(e),h&&(n=n.substring(h[0].length),h[0].replace(e,w),p=!1)):it.test(n)&&(h=n.match(f),h?(h[4]&&(n=n.substring(h[0].length),h[0].replace(f,g)),p=!1):(b+="<",n=n.substring(1))),p&&(c=n.indexOf("<"),b+=c<0?n:n.substring(0,c),n=c<0?"":n.substring(c),i.chars&&i.chars(u(b)))),n==k)throw d("badparse","The sanitizer was unable to parse the following block of html: {0}",n);k=n}w()}function u(n){if(!n)return"";var i=vt.exec(n),u=i[1],f=i[3],t=i[2];return t&&(r.innerHTML=t.replace(/</g,"&lt;"),t="textContent"in r?r.textContent:r.innerText),u+t+f}function b(n){return n.replace(/&/g,"&amp;").replace(et,function(n){var t=n.charCodeAt(0),i=n.charCodeAt(1);return"&#"+((t-55296)*1024+(i-56320)+65536)+";"}).replace(ot,function(n){return"&#"+n.charCodeAt(0)+";"}).replace(/</g,"&lt;").replace(/>/g,"&gt;")}function k(n,i){var u=!1,r=t.bind(n,n.push);return{start:function(n,f,e){n=t.lowercase(n);!u&&y[n]&&(u=n);u||p[n]!==!0||(r("<"),r(n),t.forEach(f,function(u,f){var e=t.lowercase(f),o=n==="img"&&e==="src"||e==="background";lt[e]===!0&&(w[e]!==!0||i(u,o))&&(r(" "),r(f),r('="'),r(b(u)),r('"'))}),r(e?"/>":">"))},end:function(n){n=t.lowercase(n);u||p[n]!==!0||(r("<\/"),r(n),r(">"));n==u&&(u=!1)},chars:function(n){u||r(b(n))}}}var d=t.$$minErr("$sanitize"),f=/^<((?:[a-zA-Z])[\w:-]*)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*(>?)/,e=/^<\/\s*([\w:-]+)[^>]*>/,tt=/([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,it=/^</,rt=/^<\//,ut=/<!--(.*?)-->/g,o=/<!DOCTYPE([^>]*?)>/i,ft=/<!\[CDATA\[(.*?)]]>/g,et=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,ot=/([^\#-~| |!])/g,s=i("area,br,col,hr,img,wbr"),h=i("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),c=i("rp,rt"),l=t.extend({},c,h),a=t.extend({},h,i("address,article,aside,blockquote,caption,center,del,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,map,menu,nav,ol,pre,script,section,table,ul")),v=t.extend({},c,i("a,abbr,acronym,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,q,ruby,rp,rt,s,samp,small,span,strike,strong,sub,sup,time,tt,u,var")),st=i("animate,animateColor,animateMotion,animateTransform,circle,defs,desc,ellipse,font-face,font-face-name,font-face-src,g,glyph,hkern,image,linearGradient,line,marker,metadata,missing-glyph,mpath,path,polygon,polyline,radialGradient,rect,set,stop,svg,switch,text,title,tspan,use"),y=i("script,style"),p=t.extend({},s,a,v,l,st),w=i("background,cite,href,longdesc,src,usemap,xlink:href"),ht=i("abbr,align,alt,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,coords,dir,face,headers,height,hreflang,hspace,ismap,lang,language,nohref,nowrap,rel,rev,rows,rowspan,rules,scope,scrolling,shape,size,span,start,summary,target,title,type,valign,value,vspace,width"),ct=i("accent-height,accumulate,additive,alphabetic,arabic-form,ascent,attributeName,attributeType,baseProfile,bbox,begin,by,calcMode,cap-height,class,color,color-rendering,content,cx,cy,d,dx,dy,descent,display,dur,end,fill,fill-rule,font-family,font-size,font-stretch,font-style,font-variant,font-weight,from,fx,fy,g1,g2,glyph-name,gradientUnits,hanging,height,horiz-adv-x,horiz-origin-x,ideographic,k,keyPoints,keySplines,keyTimes,lang,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mathematical,max,min,offset,opacity,orient,origin,overline-position,overline-thickness,panose-1,path,pathLength,points,preserveAspectRatio,r,refX,refY,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,rotate,rx,ry,slope,stemh,stemv,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,systemLanguage,target,text-anchor,to,transform,type,u1,u2,underline-position,underline-thickness,unicode,unicode-range,units-per-em,values,version,viewBox,visibility,width,widths,x,x-height,x1,x2,xlink:actuate,xlink:arcrole,xlink:role,xlink:show,xlink:title,xlink:type,xml:base,xml:lang,xml:space,xmlns,xmlns:xlink,y,y1,y2,zoomAndPan"),lt=t.extend({},w,ct,ht),r=document.createElement("pre"),vt=/^(\s*)([\s\S]*?)(\s*)$/;t.module("ngSanitize",[]).provider("$sanitize",g);t.module("ngSanitize").filter("linky",["$sanitize",function(n){var i=/((ftp|https?):\/\/|(www\.)|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s.;,(){}<>"”’]/,r=/^mailto:/;return function(u,f){function l(n){n&&o.push(nt(n))}function a(n,i){o.push("<a ");t.isDefined(f)&&o.push('target="',f,'" ');o.push('href="',n.replace(/"/g,"&quot;"),'">');l(i);o.push("<\/a>")}if(!u)return u;for(var e,s=u,o=[],h,c;e=s.match(i);)h=e[0],e[2]||e[4]||(h=(e[3]?"http://":"mailto:")+h),c=e.index,l(s.substr(0,c)),a(h,e[0].replace(r,"")),s=s.substring(c+e[0].length);return l(s),n(o.join(""))}}])})(window,window.angular);
function SelectTabFooter(n){$(".FooterTabClass").removeClass("active");$("#"+n).addClass("active");$("."+n).addClass("active")}function saveUserSubacriptions(n){var t="",i="",r=$("#dealsName").val();if(n=="news"?(t=$("#newsEmail").val(),i="Newsletter"):n=="deals"?(t=$("#dealsEmail").val(),i="Deals"):n=="subscription"?r==""?($("#popup_message").text("Please enter Name to Subscribe."),$("#popup_container").show(),$("#"+n+"Name").focus()):ValidateSpamNames(r)?(t=$("#dealsEmail").val(),i="Deals"):($("#popup_message").text("Please enter Valid Name to Subscribe."),$("#popup_container").show(),$("#"+n+"Name").focus()):n=="welcome popup"&&(t=$("#welcomeemail").val(),i="Welcome"),$("#loadingimg").show(),typeof gaModel!="undefined"&&(n=="deals"?gaModel.Action="Subscription Box":n=="news"&&(gaModel.Action="NewsLetter Box"),ga_rehlat(gaModel,"")),t!="")if(validateEmail(t)){if($.post(SubscriptionPath,{email:t,type:n,name:r},function(n){n==!1?($("#loadingimg").hide(),i!="Welcome"?($("#emailSubscribe").modal("hide"),$("#popup_message").text("You are already subscribed to our exclusive Deals."),$("#popup_container").show()):($("#emailSubscribe").modal("hide"),$("#popup_message").text("You are already subscribed to our exclusive Deals."),$("#popup_container").show())):(CouponAmount!==""&&CouponAmount!=null?($.cookie("emailSubscribe","close",{secure:!0}),$("#loadingimg").hide(),$("#emailSubscribe").modal("hide"),$("#emailSubscribeSuccess").modal("show")):($("#popup_message").text("Thank you for subscribing with Rehlat."),$("#popup_container").show()),$("#dealsEmail").val(""))}),IsABTesting&&n=="subscription"){const n=firebase.analytics();n.logEvent("Subscribe",{Language:language.toUpperCase(),Domain:domain,Currency:currentCurrency,User_Type:Usertype})}}else $("#loadingimg").hide(),$("#popup_message").text("Please enter valid email."),$("#popup_container").show(),$("#"+n+"Email").focus();else ValidateSpamNames(r)&&($("#loadingimg").hide(),$("#popup_message").text("Please enter the Email for Subscribe."),$("#popup_container").show(),$("#"+n+"Email").focus())}function ValidateSpamNames(n){var t=new RegExp(/(\b(?:([A-Za-z0-9])(?!\2{2}))+\b)/);return n.length==2?Boolean(n.match(t))?!1:!0:/([A-Za-z0-9])\1\1/.test(n.toLowerCase())||n.toLowerCase().indexOf("test")>=0||n.toLowerCase().indexOf("asdf")>=0||n.toLowerCase().indexOf("qwert")>=0||n.toLowerCase().indexOf("gfgf")>=0||n.toLowerCase().indexOf("gfg")>=0||n.toLowerCase().indexOf("fgf")>=0||n.toLowerCase().indexOf("ghg")>=0||n.toLowerCase().indexOf("hgh")>=0||n.toLowerCase().indexOf("ghh")>=0||n.toLowerCase().indexOf("ghj")>=0?!1:n.match("^[a-zA-Z]{3,16}$")?!0:!1}function show_mybooking_new(){$("#myDpMnMyProfile").show()}function hide_mybooking_new(){$("#myDpMnMyProfile").hide()}function show_DomainNameFlag_new(){$("#DomainNameFlag").show()}function Hide_DomainNameFlag_new(){$("#DomainNameFlag").hide()}function ShowMyProfile(n,t){/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)&&localStorage.setItem("PreviousPageUrl",window.location.href);var i=$(location).attr("href");i.indexOf("/en/MyProfile/show")!=-1?(sessionStorage.removeItem("IndexShoWMyProfile"),sessionStorage.clear(),sessionStorage.setItem("IndexShoWMyProfile",n),GetcheckMyProfile()):i.indexOf("/ar/MyProfile/show")!=-1?(sessionStorage.removeItem("IndexShoWMyProfile"),sessionStorage.clear(),sessionStorage.setItem("IndexShoWMyProfile",n),GetcheckMyProfile()):(window.location.href=t+"/MyProfile/show",sessionStorage.removeItem("IndexShoWMyProfile"),sessionStorage.clear(),sessionStorage.setItem("IndexShoWMyProfile",n),GetcheckMyProfile())}function ShowMyProfileB2B(n,t){/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)&&localStorage.setItem("PreviousPageUrl",window.location.href);var i=$(location).attr("href");i.indexOf("/en/myprofile/b2b")!=-1?(sessionStorage.removeItem("IndexShoWMyProfile"),sessionStorage.clear(),sessionStorage.setItem("IndexShoWMyProfile",n),GetcheckMyProfile()):i.indexOf("/ar/MyProfile/b2b")!=-1?(sessionStorage.removeItem("IndexShoWMyProfile"),sessionStorage.clear(),sessionStorage.setItem("IndexShoWMyProfile",n),GetcheckMyProfile()):(window.location.href=t+"/MyProfile/b2b",sessionStorage.removeItem("IndexShoWMyProfile"),sessionStorage.clear(),sessionStorage.setItem("IndexShoWMyProfile",n),GetcheckMyProfile())}function CheckValidationCodeForOneTwoMultiCity(n){var t;return PageLanguageActual=="ar"?((n=="Flyingfrom11"||n=="FlyingFromMobile")&&(localStorage.setItem("Flyingfrom11Mobile_Arb",""),localStorage.setItem("FlyingFromMobile_Arb",""),localStorage.setItem("from_city_headFromMobile_Arb",""),$("#FlyingFromMobile").val(" "),$("#from_city_headFrom").text(" "),$("#pickCity").text(" "),$("#pickCity").text("إختر مدينة"),localStorage.setItem("FlyingFromCityNameText0Mobile_Arb","")),(n=="Flyingto11"||n=="FlyingToMobile")&&(localStorage.setItem("Flyingto11Mobile_Arb",""),localStorage.setItem("FlyingToMobile_Arb",""),localStorage.setItem("from_city_headToMobile_Arb",""),$("#FlyingToMobile").val(" "),$("#from_city_headTo").text(" "),$("#pickCityA").text(" "),$("#pickCityA").text("إختر مدينة"),localStorage.setItem("FlyingToCityNameText0Mobile_Arb","")),n=="Flyingfrom1"&&(localStorage.setItem("flyingFrom_Arb",""),localStorage.setItem("flyingFromAirPortCode_Arb","")),n=="Flyingto1"&&(localStorage.setItem("flyingTo_Arb",""),localStorage.setItem("flyingToAirPortCode_Arb","")),n=="MultiFlyingfrom1"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[0]!=undefined&&(t.Segments[0].FlyingFromCityName="",t.Segments[0].From="")),n=="MultiFlyingfrom2"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[1]!=undefined&&(t.Segments[1].FlyingFromCityName="",t.Segments[1].From="")),n=="MultiFlyingfrom3"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[2]!=undefined&&(t.Segments[2].FlyingFromCityName="",t.Segments[2].From="")),n=="MultiFlyingfrom4"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[3]!=undefined&&(t.Segments[3].FlyingFromCityName="",t.Segments[3].From="")),n=="MultiFlyingfrom5"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[4]!=undefined&&(t.Segments[4].FlyingFromCityName="",t.Segments[4].From="")),n=="MultiFlyingto1"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[0]!=undefined&&(t.Segments[0].FlyingToCityName="",t.Segments[0].To="")),n=="MultiFlyingto2"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[1]!=undefined&&(t.Segments[1].FlyingToCityName="",t.Segments[1].To="")),n=="MultiFlyingto3"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[2]!=undefined&&(t.Segments[2].FlyingToCityName="",t.Segments[2].To="")),n=="MultiFlyingto4"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[3]!=undefined&&(t.Segments[3].FlyingToCityName="",t.Segments[3].To="")),n=="MultiFlyingto5"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[4]!=undefined&&(t.Segments[4].FlyingToCityName="",t.Segments[4].To="")),$("#"+n).val(""),$("#"+n).focus(),!1):((n=="Flyingfrom11"||n=="FlyingFromMobile")&&(localStorage.setItem("Flyingfrom11Mobile",""),localStorage.setItem("FlyingFromMobile",""),localStorage.setItem("from_city_headFromMobile",""),$("#FlyingFromMobile").val(" "),$("#from_city_headFrom").text(" "),$("#pickCity").text(" "),$("#pickCity").text("Pick a City"),localStorage.setItem("FlyingFromCityNameText0Mobile","")),(n=="Flyingto11"||n=="FlyingToMobile")&&(localStorage.setItem("Flyingto11Mobile",""),localStorage.setItem("FlyingToMobile",""),localStorage.setItem("from_city_headToMobile",""),$("#FlyingToMobile").val(" "),$("#from_city_headTo").text(" "),$("#pickCityA").text(" "),$("#pickCityA").text("Pick a City"),localStorage.setItem("FlyingToCityNameText0Mobile","")),n=="Flyingfrom1"&&(localStorage.setItem("flyingFrom",""),localStorage.setItem("flyingFromAirPortCode","")),n=="Flyingto1"&&(localStorage.setItem("flyingTo",""),localStorage.setItem("flyingToAirPortCode","")),n=="MultiFlyingfrom1"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[0]!=undefined&&(t.Segments[0].FlyingFromCityName="",t.Segments[0].From="")),n=="MultiFlyingfrom2"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[1]!=undefined&&(t.Segments[1].FlyingFromCityName="",t.Segments[1].From="")),n=="MultiFlyingfrom3"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[2]!=undefined&&(t.Segments[2].FlyingFromCityName="",t.Segments[2].From="")),n=="MultiFlyingfrom4"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[3]!=undefined&&(t.Segments[3].FlyingFromCityName="",t.Segments[3].From="")),n=="MultiFlyingfrom5"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[4]!=undefined&&(t.Segments[4].FlyingFromCityName="",t.Segments[4].From="")),n=="MultiFlyingto1"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[0]!=undefined&&(t.Segments[0].FlyingToCityName="",t.Segments[0].To="")),n=="MultiFlyingto2"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[1]!=undefined&&(t.Segments[1].FlyingToCityName="",t.Segments[1].To="")),n=="MultiFlyingto3"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[2]!=undefined&&(t.Segments[2].FlyingToCityName="",t.Segments[2].To="")),n=="MultiFlyingto4"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[3]!=undefined&&(t.Segments[3].FlyingToCityName="",t.Segments[3].To="")),n=="MultiFlyingto5"&&$.cookie("MultiCity")!=undefined&&(t=JSON.parse($.cookie("MultiCity")),t.Segments[4]!=undefined&&(t.Segments[4].FlyingToCityName="",t.Segments[4].To="")),$("#"+n).val(""),$("#"+n).focus(),!1)}function validateSugnUpFrom(n){$("#"+n).submit()}function checkHomePassword(){}function checkHomePasswordMobile(n,t,i){if($("#"+t).val()!==""){if($("#"+n).val()!==$("#"+t).val()){$("#"+n).val("");$("#"+t).val("");var r=window.location.href;return PageLanguageActual=="ar"?($("#"+i).text("كلمة السر وتاكيد كلمة السر غير متطابقة"),!1):($("#"+i).text("Password and confirm password does not match"),!1)}return $("#"+i).html(""),!0}}function ValidateEmailAddress(){var n=$("#txtEmailAddress").val();$.ajax({url:"/MyAccount/CheckEmailAddress",type:"GET",dataType:"json",data:{term:n},success:function(n){if(n===!1){var t=window.location.href;return PageLanguageActual=="ar"?($("#txtEmailAddress").val(""),$("#spanEmailValidationMessage").text("البريد الإلكتروني موجود مسبقا، يرجى إدخال عنوان آخر").addClass("color","red"),!1):($("#txtEmailAddress").val(""),$("#spanEmailValidationMessage").html("Email Address Already Exists, Please Try another").addClass("color","red"),!1)}$("#spanEmailValidationMessage").html("")}})}function ShowFilter(){IndexFilter==0&&(PageLanguageActual=="ar"?$(".rz-pointer-min").css("left","95%"):$(".rz-pointer-max").css("left","95%"));IndexFilter++}function checkHomeEmailAddressB2B(){var n=$(".homeEmailB2B").val();$.ajax({url:"/MyAccount/CheckEmailAddress",type:"GET",dataType:"json",data:{term:n},success:function(n){if(n===!1){var t=window.location.href;return PageLanguageActual=="ar"?($(".homeEmailB2B").val(""),$(".confirmEmailB2B").text("البريد الإلكتروني موجود مسبقا، يرجى إدخال عنوان آخر").addClass("color","red"),!1):($(".homeEmailB2B").val(""),$(".confirmEmailB2B").html("Email Address Already Exists, Please Try another").addClass("color","red"),!1)}$(".confirmEmailB2B").html("")}})}function checkHomeEmailAddress(){var n=$(".homeEmail4").val();if(n==""||n==null||n==undefined)return!1;$.ajax({url:"/MyAccount/CheckEmailAddress",type:"GET",dataType:"json",data:{term:n},success:function(n){if(n===!1){$("#confirmEmail").show();var t=window.location.href;return PageLanguageActual=="ar"?($(".homeEmail4").val(""),$(".confirmEmail").text("البريد الإلكتروني موجود مسبقا، يرجى إدخال عنوان آخر").addClass("color","red"),!1):($(".homeEmail4").val(""),$(".confirmEmail").html("Email Address Already Exists, Please Try another").addClass("color","red"),!1)}$(".confirmEmail").html("")}})}function checkHomeEmailAddressIos(){var n=$("#mobhomeEmail1").val();$.ajax({url:"/MyAccount/CheckEmailAddress",type:"GET",dataType:"json",data:{term:n},success:function(n){if(n===!1){var t=window.location.href;return PageLanguageActual=="ar"?($("#mobhomeEmail1").val(""),$("#confirmEmailios").text("البريد الإلكتروني موجود مسبقا، يرجى إدخال عنوان آخر").addClass("color","red"),!1):($("#mobhomeEmail1").val(""),$("#confirmEmailios").html("Email Address Already Exists, Please Try another").addClass("color","red"),!1)}$(".confirmEmail").html("")}})}function checkHomeEmailAddressMobile(){var n=$(".homeEmailMobile").val();$.ajax({url:"/MyAccount/CheckEmailAddress",type:"GET",dataType:"json",data:{term:n},success:function(n){if(n===!1){var t=window.location.href;return PageLanguageActual=="ar"?($(".homeEmailMobile").val(""),$(".confirmEmailMobile").text("البريد الإلكتروني موجود مسبقا، يرجى إدخال عنوان آخر").addClass("color","red"),!1):($(".homeEmailMobile").val(""),$(".confirmEmailMobile").html("Email Address Already Exists, Please Try another").addClass("color","red"),!1)}$(".confirmEmail").html("")}})}function checkHomeEmailAddressGeneric(n,t){var i=$("#"+n).val();$.ajax({url:"/MyAccount/CheckEmailAddress",type:"GET",dataType:"json",data:{term:i},success:function(i){if(i===!1){var r=window.location.href;PageLanguageActual=="ar"?($("#"+n).val(""),$("#"+t).html("البريد الإلكتروني موجود مسبقا، يرجى إدخال عنوان آخر").addClass("color","red")):($("#"+n).val(""),$("#"+t).html("Email Address Already Exists, Please Try another").addClass("color","red"))}else $("#"+t).html("")}})}function CheckEmailAffiliate(n){var t=!0;return $.ajax({url:"/Home/CheckEmailAffiliate",type:"GET",async:!1,data:{email:n},success:function(n){t=n}}),t}function shiftToArabic(){var n=window.location.href,t=get_hostname(n),i=t+"/ar";window.location=i}function get_hostname(n){var t=n.match(/^http:\/\/[^/]+/);return t?t[0]:null}function WalletIconClicked(){/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)?($("#mblWalletIconClickedLogin").val("MblLoginMykaram"),$("#myModal_user").modal("show"),localStorage.setItem("PreviousPageUrl",window.location.href)):($("#txtWalletIconClicked").val("True"),$("#signUp_new").modal("show"))}function WalletIconClickedMob(){/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)?($("#mblWalletIconClickedLogin").val("MblLoginMykaram"),$("#loginModal").modal("show"),localStorage.setItem("PreviousPageUrl",window.location.href)):($("#txtWalletIconClicked").val("True"),$("#signUp_new").modal("show"))}function GoToMyProfile(n){sessionStorage.setItem("IndexShoWMyProfile",2);/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)?(window.open(n,"_self"),localStorage.setItem("PreviousPageUrl",window.location.href)):window.open(n,"_blank")}var passwordstatus,promocodestatus,IndexFilter;$(function(){PageLanguageActual=="ar"?SelectTabFooter("FlightsTab"):SelectTabFooter("AirlinesTab");$("#loginMobile").click(function(){var n=$("#mobileEmail").val().trim(),t=$("#mobpassword").val().trim();if(n!=""&&t!="")data={email:n,password:t},$.ajax({url:"/MyAccount/LoginValidation",type:"POST",data:data,success:function(i){var u,r;if(i.toLowerCase()=="true")u={ExternalUserType:"password",Email:n,DisplayName:"",Password:t},localStorage.setItem("crednlMangUserDetail",JSON.stringify(u)),r=angular.element(document.getElementById("rehlatIdApp")).scope(),r.$apply(function(){r.StorePassword(data)}),$("#mobsignIN").submit();else return i.toLowerCase()=="false"?($("#lblErrorMsg1").text("Please enter correct email and password"),!1):($("#lblErrorMsg1").text(i),!1)}});else return n==""?($("#mobileEmail").focus(),$("#lblErrorMsg1").text("Please enter email..."),!1):($("#mobpassword").focus(),$("#lblErrorMsg1").text("Please enter password..."),!1)});$("#loginMobileAr").click(function(){var n=$("#EmailAddressmob").val().trim(),t=$("#passwordmob").val().trim();if(n!=""&&t!="")data={email:n,password:t},$.ajax({url:"/MyAccount/LoginValidation",type:"POST",data:data,success:function(i){var u,r;if(i.toLowerCase()=="true")u={ExternalUserType:"password",Email:n,DisplayName:"",Password:t},localStorage.setItem("crednlMangUserDetail",JSON.stringify(u)),r=angular.element(document.getElementById("rehlatIdApp")).scope(),r.$apply(function(){r.StorePassword(data)}),$("#signInmob").submit();else return $("#lblErrorMsg1").text("يرجي إدخال البريد الإلكتروني و كلمة السر بشكل صالح"),!1}});else return n==""?($("#EmailAddressmob").focus(),$("#lblErrorMsg1").text("Please enter email..."),!1):($("#passwordmob").focus(),$("#lblErrorMsg1").text("Please enter password..."),!1)});$(".checkValidCode").change(function(){var r=$(this).val(),n=r.match(/\((.*)\)/),i,t;if(n!=null||n!=undefined){if(n[1].length==3)return!0;if(i=n[0].match(/\((.*)\)/),PageLanguageActual!="ar"){if(i[1].indexOf("FYROM")!==-1)return!0}else if(i[1].indexOf("جمهورية مقدونيا اليوغوسلافية السابقة")!==-1)return!0;$(this).val("");t=$(this).attr("id");CheckValidationCodeForOneTwoMultiCity(t)}else $(this).val(""),t=$(this).attr("id"),CheckValidationCodeForOneTwoMultiCity(t)});$("#signUp").click(function(){var t=$("#homePassword2").val().trim(),u,f,r,e;if($("#FirstName_1").length&&$("#FirstName_1").val()!=""&&$("#LastName_1").length&&(u=$("#LastName_1").val(),u.length<3))return $("#lblLastNameErrorText").text("Last Name should  Minimum 3 Characters"),null;var n=$("#homeEmail").val(),i=$("#ReferralCode").val(),o=validateEmail(n);o==!0||i!=""?$.ajax({url:"/MyProfile/CheckReferrerPromoCodeAndRegisteringEmail",type:"GET",dataType:"json",data:{UserEmail:n,PromoCode:i},success:function(r){var u="",s,e,f,o;if(r.IsEmailExits===!0&&validateEmail(n)==!0)return u="Fail",$("#confirmEmail").html("البريد الإلكتروني موجود مسبقا، يرجى إدخال عنوان آخر"),!1;if(r.IsReferrerPromoCode===!1&&i!="")return $("#ReferralCode").val(""),s=window.location.href,u="Fail",PageLanguageActual=="ar"?($("#ReferralCodeText").text("رمز الكوبون غير صالح، يرجى محاولة رمز آخر").addClass("color","red"),!1):($("#ReferralCodeText").html("Promo Code is not valid. Please try another").addClass("color","red"),!1);if($("#ReferralCodeText").html(""),u="Success",e={email:n,password:t,Url:""},f=angular.element(document.getElementById("rehlatIdApp")).scope(),f.$apply(function(){f.StorePassword(e)}),o={ExternalUserType:"password",Email:n,DisplayName:"",Password:t},localStorage.setItem("crednlMangUserDetail",JSON.stringify(o)),$("#btnSignUpValidate").click(),IsABTesting){const n=firebase.analytics();n.logEvent("Signup",{Language:"EN",Domain:"@DomainName",Currency:"@currentCurrency",User_Type:"@usertype",SignUpResponse:u,SignUpMedium:"Email"})}}}):(f={email:n,password:t,Url:""},r=angular.element(document.getElementById("rehlatIdApp")).scope(),r.$apply(function(){r.StorePassword(f)}),e={ExternalUserType:"password",Email:n,DisplayName:"",Password:t},localStorage.setItem("crednlMangUserDetail",JSON.stringify(e)),$("#btnSignUpValidate").click())});$("#signUp2").click(function(){var i=$("#homePassword").val().trim(),r=$("#homeConfirmPassword").val().trim();if(i!=r)return PageLanguageActual=="ar"?($("#confirmSpan").text("كلمة السر وتاكيد كلمة السر غير متطابقة"),!1):($("#confirmSpan").text("Password and confirm password does not match"),!1);var n=$("#homeEmail").val(),t=$("#ReferralCode").val(),u=validateEmail(n);u==!0||t!=""?$.ajax({url:"/MyProfile/CheckReferrerPromoCodeAndRegisteringEmail",type:"GET",dataType:"json",data:{UserEmail:n,PromoCode:t},success:function(i){if(i.IsEmailExits===!0&&validateEmail(n)==!0)return $("#confirmEmail").html("Email Address Already Exists, Please Try another"),!1;if(i.IsReferrerPromoCode===!1&&t!=""){$("#ReferralCode").val("");var r=window.location.href;return PageLanguageActual=="ar"?($("#ReferralCodeText").text("رمز الكوبون غير صالح، يرجى محاولة رمز آخر").addClass("color","red"),!1):($("#ReferralCodeText").html("Promo Code is not valid. Please try another").addClass("color","red"),!1)}$("#ReferralCodeText").html("");$("#btnSignUpValidate").click()}}):$("#btnSignUpValidate").click()});$("#signUpIos").click(function(){var e;if(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)){var r=$("#mobFirstName1").val().trim(),u=$("#mobLastName1").val().trim(),n=$("#mobhomeEmail1").val().trim(),f=$("#mobhomePasswordMobile").val().trim();if(r==null||r==""||r=="undefined")return $("#mobFirstName1").focus(),!1;if(u==null||u==""||u=="undefined")return $("#mobLastName1").focus(),!1;if(n==null||n==""||n=="undefined")return $("#mobhomeEmail1").focus(),!1;if(n!=null)if(validateEmail(n))$("#confirmEmailios").text("");else return $("#mobhomeEmail1").focus(),$("#confirmEmailios").text("Please enter valid email."),!1;if(f==null||f==""||f=="undefined")return $("#mobhomePasswordMobile").focus(),!1}var t=$("#homeEmail").val(),i=$("#ReferralCodeM").val(),o=validateEmail(t);if(o==!0||i!="")$.ajax({url:"/MyProfile/CheckReferrerPromoCodeAndRegisteringEmail",type:"GET",dataType:"json",data:{UserEmail:t,PromoCode:i},success:function(n){if(n.IsEmailExits===!0&&validateEmail(t)==!0)return $("#confirmEmailios").html("Email Address Already Exists, Please Try another"),!1;if(n.IsReferrerPromoCode===!1&&i!="")return $("#ReferralCodeM").val(""),$("#ReferralCodeTextM").html("Promo Code is not valid. Please try another").addClass("color","red"),!1;$("#ReferralCodeTextM").html("");var r=angular.element(document.getElementById("rehlatIdApp")).scope();r.$apply(function(){r.StorePassword(n)});validateSugnUpFrom("registerfrom-mobile")}});else if(passwordstatus)e=angular.element(document.getElementById("rehlatIdApp")).scope(),e.$apply(function(){e.StorePassword({UserEmail:t,PromoCode:i})}),$("#registerfrom-mobile").submit();else return!1});$("#signUPmob").click(function(){var e;if(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)){var r=$("#FirstName1mob").val().trim(),u=$("#LastName1mob").val().trim(),n=$("#mobhomeEmail1").val().trim(),f=$("#homePasswordmob").val().trim();if(r==null||r==""||r=="undefined")return $("#FirstName1mob").focus(),!1;if(u==null||u==""||u=="undefined")return $("#LastName1mob").focus(),!1;if(n==null||n==""||n=="undefined")return $("#mobhomeEmail1").focus(),!1;if(n!=null)if(validateEmail(n))$("#confirmEmailios").text("");else return $("#mobhomeEmail1").focus(),$("#confirmEmailios").text("مطلوب البريد الإلكتروني."),!1;if(f==null||f==""||f=="undefined")return $("#homePasswordmob").focus(),!1}var t=$("#homeEmail").val(),i=$("#ReferralCodeAR").val(),o=validateEmail(t);o==!0||i!=""?$.ajax({url:"/MyProfile/CheckReferrerPromoCodeAndRegisteringEmail",type:"GET",dataType:"json",data:{UserEmail:t,PromoCode:i},success:function(n){if(n.IsEmailExits===!0&&validateEmail(t)==!0)return $("#confirmEmail").html("البريد الإلكتروني موجود مسبقا، يرجى إدخال عنوان آخر"),!1;if(n.IsReferrerPromoCode===!1&&i!="")return $("#ReferralCodeAR").val(""),$("#ReferralCodeTextAR").text("رمز الكوبون غير صالح، يرجى محاولة رمز آخر").addClass("color","red"),!1;$("#ReferralCodeTextAR").html("");var r=angular.element(document.getElementById("rehlatIdApp")).scope();r.$apply(function(){r.StorePassword(n)});validateSugnUpFrom("registerfrom-mobile")}}):(e=angular.element(document.getElementById("rehlatIdApp")).scope(),e.$apply(function(){e.StorePassword({UserEmail:t,PromoCode:i})}),$("#registerfrom-mobile").submit())});$("#btnSignUpEng").click(function(){var n=$("#txtPassword").val().trim(),t=$("#txtConfrimPassword").val().trim(),i,r;if(n!=null&&t!=null){if(n!=t)return PageLanguageActual=="ar"?($("#spanPasswordMessage").text("كلمة السر وتاكيد كلمة السر غير متطابقة"),$("#txtConfrimPassword").val(""),!1):($("#spanPasswordMessage").text("Password and confirm password does not match"),$("#txtConfrimPassword").val(""),!1);$("#spanPasswordMessage").text("")}i=$("#homeEmail").val();r=$("#hdntxtReferalCode").val();$.ajax({url:"/MyProfile/CheckReferrerPromoCode",type:"GET",dataType:"json",data:{UserEmail:i,PromoCode:r},success:function(n){if(n.IsReferrerPromoCode===!1)return PageLanguageActual=="ar"?($("#spanReferalCodeErrorMessage").text("رمز الكوبون غير صالح، يرجى محاولة رمز آخر").addClass("color","red"),!1):($("#spanReferalCodeErrorMessage").html("Promo Code is not valid. Please try another").addClass("color","red"),!1);$("#spanReferalCodeErrorMessage").html("");$("#hdnbtnSignUpEng").click()}})})});passwordstatus=!0;promocodestatus=!0;$("#myTabContent3").click(function(n){n.stopPropagation()});$("#myDisplayForBooking").on("hide.bs.dropdown",function(n){$(this).hasClass("dontClose")&&n.preventDefault();$(this).removeClass("dontClose")});IndexFilter=0;$(document).ready(function(){function i(n,t){return t.replace(new RegExp(n+"=\\w+"),"").replace("?&","?").replace("&&","&")}function n(n){for(var i,r=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),t=0;t<r.length;t++)if(i=r[t].split("="),i[0]==n)return i[1]}function t(n,t,i){var r=new RegExp("([?&])"+t+"=.*?(&|$)","i"),u=n.indexOf("?")!==-1?"&":"?";return n.match(r)?n.replace(r,"$1"+t+"="+i+"$2"):n+u+t+"="+i}$("#myTab1").on("click","a",function(){$(this).closest(".dropdown").addClass("dontClose")});$("#myTab").on("click","a",function(){$(this).closest(".dropdown").addClass("dontClose")});$(".tab-content").on("click","a",function(){$(this).closest(".dropdown").addClass("dontClose")});$("#myDisplay1").on("hide.bs.dropdown",function(n){$(this).hasClass("dontClose")&&n.preventDefault();$(this).removeClass("dontClose")});$("#myDisplay").on("hide.bs.dropdown",function(n){$(this).hasClass("dontClose")&&n.preventDefault();$(this).removeClass("dontClose")});$("#FirstName1,#LastName1").keydown(function(n){if(n.shiftKey||n.ctrlKey||n.altKey)n.preventDefault();else{var t=n.keyCode;t==8||t==46||t>=35&&t<=40||t>=65&&t<=90||n.preventDefault()}});$(".rltCurrency").click(function(){var r=window.location.href,e=$(this).attr("data-currency"),c=$("#CurrencySymbol").html(e),o={Currency:e},h="cheap-hotels",f,u,s;if(domain=="EG"&&(h="hotels"),typeof gaModel!="undefined"&&ga_rehlat(gaModel,"Currency Changed - "+e),/cheap-hotels/i.test(r)){f="";try{wegoLandingCur!=undefined&&wegoLandingCur.length>0&&(f=wegoLandingCur)}catch(l){}u=n("search");s=n(f);u!=undefined&&u.length>0?(r=window.location.href,o={search:u,Currency:e},$.post("/Hotels/MetaCurrencyChange",o,function(n){var i=t(r,"search",n.Success);s!=undefined&&s.length>0&&(i=t(i,f,e));r=i;window.location.href=r})):(/Currency/i.test(r)&&(r=i("Currency",r)),$.post("/Home/CurrencyChange",o,function(){window.location.href=r}))}else if(/hotels/i.test(r)){f="";try{wegoLandingCur!=undefined&&u.length>0&&(f=wegoLandingCur)}catch(l){}u=n("search");s=n(f);u!=undefined&&u.length>0?(r=window.location.href,o={search:u,Currency:e},$.post("/Hotels/MetaCurrencyChange",o,function(n){var i=t(r,"search",n.Success);s!=undefined&&s.length>0&&(i=t(i,f,e));r=i;window.location.href=r})):(/Currency/i.test(r)&&(r=i("Currency",r)),$.post("/Home/CurrencyChange",o,function(){window.location.href=r}))}else $.post("/Home/CurrencyChange",o,function(){window.location.reload(!0)})});$("#myFooterItemsToggle2").show();$("#myFooterItemsToggle1, #myFooterItemsToggle3 , #myFooterItemsToggle4 , #myFooterItemsToggle5").hide();$("#myfooterItemsClick0").click(function(){return $("#myFooterItemsToggle0").slideToggle("slow"),$("#dynamicFooter").toggleClass("newsAlert00"),!1});$("#myfooterItemsClick0SP").click(function(){return $("#myFooterItemsToggle0SP").slideToggle("slow"),$("#dynamicFooter").toggleClass("newsAlert00"),!1});$("#myfooterItemsClick1").click(function(){return $("#myFooterItemsToggle2, #myFooterItemsToggle3 , #myFooterItemsToggle4 , #myFooterItemsToggle5").slideUp(500),$("#myFooterItemsToggle1").slideDown(500),!1});$("#myfooterItemsClick2").click(function(){return $("#myFooterItemsToggle1, #myFooterItemsToggle3 , #myFooterItemsToggle4 , #myFooterItemsToggle5").slideUp(500),$("#myFooterItemsToggle2").slideDown(500),!1});$("#myfooterItemsClick3").click(function(){return $("#myFooterItemsToggle1, #myFooterItemsToggle2 , #myFooterItemsToggle4 , #myFooterItemsToggle5").slideUp(500),$("#myFooterItemsToggle3").slideDown(500),!1});$("#myfooterItemsClick4").click(function(){return $("#myFooterItemsToggle1, #myFooterItemsToggle2 , #myFooterItemsToggle3 , #myFooterItemsToggle5").slideUp(500),$("#myFooterItemsToggle4").slideDown(500),!1});$("#myfooterItemsClick5").click(function(){return $("#myFooterItemsToggle1, #myFooterItemsToggle2 , #myFooterItemsToggle3 , #myFooterItemsToggle4").slideUp(500),$("#myFooterItemsToggle5").slideDown(500),!1});$("#myfooterItemsClick1 , #myfooterItemsClick2, #myfooterItemsClick3, #myfooterItemsClick4, #myfooterItemsClick5").click(function(n){n.preventDefault();$(this).addClass("active");$(this).parent().siblings().find("a").removeClass("active")})});$(document).click(function(n){var t=$(n.target),i=$(".navbar-collapse").hasClass("collapse in");i!==!0||t.hasClass("icon-bar")||$("button.navbar-toggle").click()});
