Overview

URL moviexk.org/watch-movie-keanu-2016-8275
IP104.27.64.98
ASNAS13335 CloudFlare, Inc.
Location United States
Report completed2017-07-17 14:15:27 CEST
StatusLoading report..
urlquery Alerts No alerts detected


Settings

UserAgentMozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Referer
Pool
Access Level


Intrusion Detection Systems

Suricata /w Emerging Threats Pro  No alerts detected


Blacklists

MDL  No alerts detected
OpenPhish  No alerts detected
PhishTank  No alerts detected
Fortinet's Web Filter  No alerts detected
DNS-BH  No alerts detected
mnemonic secure dns  No alerts detected


Recent reports on same IP/ASN/Domain

No other reports on IP: 104.27.64.98


Last 10 reports on ASN: AS13335 CloudFlare, Inc.

Date UQ / IDS / BL URL IP
2017-11-21 15:01:12 +0100
0 - 0 - 2 www.abeautyclub.com/vvp-confent/Execufives/@* 104.24.98.115
2017-11-21 15:00:27 +0100
0 - 0 - 0 https://www.fimfiction.net/blog/780508/free-n (...) 104.20.175.25
2017-11-21 14:57:05 +0100
0 - 0 - 0 https://pastebin.com/T3d8sRKw 104.20.208.21
2017-11-21 14:57:01 +0100
0 - 1 - 0 wetteronline.co/ 104.24.104.17
2017-11-21 14:56:57 +0100
0 - 0 - 1 www.kinder.pk/js/lib/jquery/.jkp.php 104.27.142.171
2017-11-21 14:54:38 +0100
0 - 0 - 11 ypardnepal.agriyouthnepal.com/ 104.28.23.96
2017-11-21 14:53:29 +0100
0 - 0 - 1 snip.ly/6ipcy 104.25.85.12
2017-11-21 14:52:29 +0100
0 - 0 - 0 https://fd.news/melanias-shocking-christmas-t (...) 104.18.56.242
2017-11-21 14:50:42 +0100
0 - 0 - 1 wang15568.honpu.com/ 162.159.225.166
2017-11-21 14:50:36 +0100
0 - 0 - 0 paste4btc.com/Tx0SJcaW 104.18.44.97

No other reports on domain: .



JavaScript

Executed Scripts (35)


Executed Evals (71)

#1 JavaScript::Eval (size: 765, repeated: 1) - SHA256: 9785c81df852d344521104846f61a90e572b943170f508cc0f42ec4d5a440486

                                        (function() {
    var D = new Date(),
        d = document,
        b = 'body',
        ce = 'createElement',
        ac = 'appendChild',
        st = 'style',
        ds = 'display',
        n = 'none',
        gi = 'getElementById';
    var i = d[ce]('iframe');
    i[st][ds] = n;
    d[gi]("M180348ScriptRootC60059")[ac](i);
    try {
        var iw = i.contentWindow.document;
        iw.open();
        iw.writeln("<ht" + "ml><bo" + "dy></bo" + "dy></ht" + "ml>");
        iw.close();
        var c = iw[b];
    } catch (e) {
        var iw = d;
        var c = d[gi]("M180348ScriptRootC60059");
    }
    var dv = iw[ce]('div');
    dv.id = "MG_ID";
    dv[st][ds] = n;
    dv.innerHTML = 60059;
    c[ac](dv);
    var s = iw[ce]('script');
    s.async = 'async';
    s.defer = 'defer';
    s.charset = 'utf-8';
    s.src = "//jsc.mgid.com/m/o/moviexk.org.60059.js?t=" + D.getYear() + D.getMonth() + D.getDate() + D.getHours();
    c[ac](s);
})();

//# sourceURL=inline-a9e5f67589.js
                                    

#2 JavaScript::Eval (size: 2075, repeated: 1) - SHA256: 260ca374a7f403fa92a4cd78039993c64547d5d188c4742a2f94e9636b954bd2

                                        window._wpemojiSettings = {
    "baseUrl": "https:\/\/s.w.org\/images\/core\/emoji\/2.2.1\/72x72\/",
    "ext": ".png",
    "svgUrl": "https:\/\/s.w.org\/images\/core\/emoji\/2.2.1\/svg\/",
    "svgExt": ".svg",
    "source": {
        "concatemoji": "http:\/\/moviexk.org\/wp-includes\/js\/wp-emoji-release.min.js?ver=4.7.5"
    }
};
! function(a, b, c) {
    function d(a) {
        var b, c, d, e, f = String.fromCharCode;
        if (!k || !k.fillText) return !1;
        switch (k.clearRect(0, 0, j.width, j.height), k.textBaseline = "top", k.font = "600 32px Arial", a) {
            case "flag":
                return k.fillText(f(55356, 56826, 55356, 56819), 0, 0), !(j.toDataURL().length < 3e3) && (k.clearRect(0, 0, j.width, j.height), k.fillText(f(55356, 57331, 65039, 8205, 55356, 57096), 0, 0), b = j.toDataURL(), k.clearRect(0, 0, j.width, j.height), k.fillText(f(55356, 57331, 55356, 57096), 0, 0), c = j.toDataURL(), b !== c);
            case "emoji4":
                return k.fillText(f(55357, 56425, 55356, 57341, 8205, 55357, 56507), 0, 0), d = j.toDataURL(), k.clearRect(0, 0, j.width, j.height), k.fillText(f(55357, 56425, 55356, 57341, 55357, 56507), 0, 0), e = j.toDataURL(), d !== e
        }
        return !1
    }

    function e(a) {
        var c = b.createElement("script");
        c.src = a, c.defer = c.type = "text/javascript", b.getElementsByTagName("head")[0].appendChild(c)
    }
    var f, g, h, i, j = b.createElement("canvas"),
        k = j.getContext && j.getContext("2d");
    for (i = Array("flag", "emoji4"), c.supports = {
            everything: !0,
            everythingExceptFlag: !0
        }, h = 0; h < i.length; h++) c.supports[i[h]] = d(i[h]), c.supports.everything = c.supports.everything && c.supports[i[h]], "flag" !== i[h] && (c.supports.everythingExceptFlag = c.supports.everythingExceptFlag && c.supports[i[h]]);
    c.supports.everythingExceptFlag = c.supports.everythingExceptFlag && !c.supports.flag, c.DOMReady = !1, c.readyCallback = function() {
        c.DOMReady = !0
    }, c.supports.everything || (g = function() {
        c.readyCallback()
    }, b.addEventListener ? (b.addEventListener("DOMContentLoaded", g, !1), a.addEventListener("load", g, !1)) : (a.attachEvent("onload", g), b.attachEvent("onreadystatechange", function() {
        "complete" === b.readyState && c.readyCallback()
    })), f = c.source || {}, f.concatemoji ? e(f.concatemoji) : f.wpemoji && f.twemoji && (e(f.twemoji), e(f.wpemoji)))
}(window, document, window._wpemojiSettings);

//# sourceURL=inline-fc184d9f9e.js
                                    

#3 JavaScript::Eval (size: 426, repeated: 1) - SHA256: 07dc4ef50a129554f7d7178686fe572b1138e7199e7a96044737329a0658a706

                                        (function(i, s, o, g, r, a, m) {
    i['GoogleAnalyticsObject'] = r;
    i[r] = i[r] || function() {
        (i[r].q = i[r].q || []).push(arguments)
    }, i[r].l = 1 * new Date();
    a = s.createElement(o),
        m = s.getElementsByTagName(o)[0];
    a.async = 1;
    a.src = g;
    m.parentNode.insertBefore(a, m)
})(window, document, 'script', 'https://www.google-analytics.com/analytics.js', 'ga');
ga('create', 'UA-61121956-1', 'auto');
ga('send', 'pageview');

//# sourceURL=inline-13ea30d8558.js
                                    

#4 JavaScript::Eval (size: 170, repeated: 1) - SHA256: 2e5c97c5e27f1dfdae539d67628e6e6a47a57446f0e60a34c39f24faf025e03f

                                        /* <![CDATA[ */
var viewsCacheL10n = {
    "admin_ajax_url": "http:\/\/moviexk.org\/wp-admin\/admin-ajax.php",
    "post_id": "8737"
};
/* ]]> */

//# sourceURL=inline-47ecebf21f.js
                                    

#5 JavaScript::Eval (size: 82, repeated: 1) - SHA256: aaed3fc6d336a776ef739bd63a50f294824144a33218096ec3e2598dfa39a599

                                        Moviexk.Watch.checkAndPlayEpisodeViewing();

//# sourceURL=inline-142751ae20a.js
                                    

#6 JavaScript::Eval (size: 65, repeated: 1) - SHA256: f77d76eecf604631509a4bc78e638f1ecac09f50659e2fb4e2c271df75c3ef6c

                                        Moviexk.Watch.init('8737');

//# sourceURL=inline-72c3d5e99d.js
                                    

#7 JavaScript::Eval (size: 252, repeated: 1) - SHA256: e3c20c380a96bdcfec91b88b2ade90ca754128d21a24c206adb66a6578c39753

                                        function setActive() {
    aObj = document.getElementById("servers").getElementsByTagName("a");
    for (i = 0; i < aObj.length; i++) 0 <= document.location.href.indexOf(aObj[i].href) && (aObj[i].className = "active")
}
window.onload = setActive;
//# sourceURL=inline-3bb9c7ab4e.js
                                    

#8 JavaScript::Eval (size: 196, repeated: 1) - SHA256: b4bf543533f9a6de54d7b5bae5afb7356a87ea8a43682a0fba00af6ec405a2bc

                                        var adParams = {
    p: '75146049',
    preventBubble: '',
    serverdomain: 'adsrvmedia',
    secure: true,
    numOfTimes: '2',
    duration: '1',
    period: 'hour',
    openNewTab: true
};

//# sourceURL=inline-81c4e74e62.js
                                    

#9 JavaScript::Eval (size: 1473, repeated: 1) - SHA256: 03c2e92ee8f9462fcb8e6be0638a237510fd961032555902127b8c973c4f4248

                                        ! function(a, b) {
    "use strict";

    function c() {
        if (!e) {
            e = !0;
            var a, c, d, f, g = -1 !== navigator.appVersion.indexOf("MSIE 10"),
                h = !!navigator.userAgent.match(/Trident.*rv:11\./),
                i = b.querySelectorAll("iframe.wp-embedded-content");
            for (c = 0; c < i.length; c++) {
                if (d = i[c], !d.getAttribute("data-secret")) f = Math.random().toString(36).substr(2, 10), d.src += "#?secret=" + f, d.setAttribute("data-secret", f);
                if (g || h) a = d.cloneNode(!0), a.removeAttribute("security"), d.parentNode.replaceChild(a, d)
            }
        }
    }
    var d = !1,
        e = !1;
    if (b.querySelector)
        if (a.addEventListener) d = !0;
    if (a.wp = a.wp || {}, !a.wp.receiveEmbedMessage)
        if (a.wp.receiveEmbedMessage = function(c) {
                var d = c.data;
                if (d.secret || d.message || d.value)
                    if (!/[^a-zA-Z0-9]/.test(d.secret)) {
                        var e, f, g, h, i, j = b.querySelectorAll('iframe[data-secret="' + d.secret + '"]'),
                            k = b.querySelectorAll('blockquote[data-secret="' + d.secret + '"]');
                        for (e = 0; e < k.length; e++) k[e].style.display = "none";
                        for (e = 0; e < j.length; e++)
                            if (f = j[e], c.source === f.contentWindow) {
                                if (f.removeAttribute("style"), "height" === d.message) {
                                    if (g = parseInt(d.value, 10), g > 1e3) g = 1e3;
                                    else if (~~g < 200) g = 200;
                                    f.height = g
                                }
                                if ("link" === d.message)
                                    if (h = b.createElement("a"), i = b.createElement("a"), h.href = f.getAttribute("src"), i.href = d.value, i.host === h.host)
                                        if (b.activeElement === f) a.top.location.href = d.value
                            } else;
                    }
            }, d) a.addEventListener("message", a.wp.receiveEmbedMessage, !1), b.addEventListener("DOMContentLoaded", c, !1), a.addEventListener("load", c, !1)
}(window, document);
//# sourceURL=http://moviexk.org/wp-includes/js/wp-embed.min.js?ver=4.7.5
                                    

#10 JavaScript::Eval (size: 5768, repeated: 1) - SHA256: 11ea7a245edd8f9948a192154048512c0fb894499e93b513e13f78ec7be929e9

                                        ! function(e) {
    "use strict";

    function t(e, t) {
        t = t || {};
        for (var n in t) t.hasOwnProperty(n) && (e[n] = t[n]);
        return e
    }

    function n(e, t) {
        var n = [];
        t = t || {};
        for (var o in e) e.hasOwnProperty(o) && !t[o] && n.push(o + "=" + encodeURIComponent(e[o]));
        return n.length ? "?" + n.join("&") : ""
    }

    function o(e) {
        var t, n = e.str,
            o = e.defaults,
            i = {};
        if (n.replace(/([^?=&]+)(=([^&]*))?/g, function(e, t, n, o) {
                i[t] = decodeURIComponent(o.replace(/\+/g, " "))
            }), o)
            for (t in o) o.hasOwnProperty(t) && !i.hasOwnProperty(t) && (i[t] = o[t]);
        return i
    }

    function i(e, i) {
        var a;
        a = o({
            str: "ap=1303"
        });
        for (var r in a) a.hasOwnProperty(r) && !e.hasOwnProperty(r) && (e[r] = a[r]);
        if (!e || !e.p) return null;
        e.ap = e.popOnCloseClickEvt ? "1303" : e.ap || "1303", e.ct = "html", e.size = e.size || "", "" === e.size && delete e.size;
        try {
            window.location.ancestorOrigins && window.location.ancestorOrigins.length ? e.u = encodeURI(window.location.ancestorOrigins[window.location.ancestorOrigins.length - 1]) : e.u = encodeURI(window.top.location.href)
        } catch (s) {
            e.u = encodeURI(window.top !== self ? document.referrer : window.location.href)
        }
        e.r = encodeURI(document.referrer), e.u = e.u || e.r, e.iss = e.secure ? 1 : 0;
        try {
            e.f = ("undefined" == typeof navigator.plugins || 0 === navigator.plugins.length ? !!new window.ActiveXObject("ShockwaveFlash.ShockwaveFlash") : navigator.plugins["Shockwave Flash"]) ? 1 : 0
        } catch (s) {
            e.f = 1
        }
        return "http" + (e.secure ? "s" : "") + "://" + e.serverdomain + ".adk2x.com/imp" + n(e, t(i || {}, {
            networkalias: 1,
            serverdomain: 1,
            secure: 1,
            width: 1,
            height: 1
        }))
    }

    function a() {
        var e = navigator.userAgent || navigator.vendor || window.opera;
        return /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(e) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(e.substr(0, 4))
    }

    function r(e) {
        try {
            var t, n = document.cookie.split(e + "="),
                o = {};
            if (2 === n.length) return t = decodeURI(n.pop().split(";").shift()).split("|")[0].split(","), o.numOfTimes = t[0].split(":")[1], o.exdate = t[1].split(":")[1] + "," + t[2].split("}")[0], o
        } catch (i) {}
    }

    function s(e, t, n, o, i) {
        var a = "",
            r = "";
        if (null !== i) a = "; expires=" + i, r = i;
        else {
            var s = new Date,
                c = 0;
            switch (o.toLowerCase()) {
                case "minute":
                    c = 6e4 * n;
                    break;
                case "hour":
                    c = 36e5 * n;
                    break;
                case "day":
                    c = 864e5 * n
            }
            s.setTime(s.getTime() + c), a = "; expires=" + s.toUTCString(), r = s.toGMTString()
        }
        t++;
        var d = '{"numOfTimes":' + t + ', "exdate":' + r + "}";
        document.cookie = e + "=" + d + a + "; path=/"
    }

    function c(e) {
        v && +v.numOfTimes >= l || u || (e.stopPropagation && e.stopPropagation(), e.preventDefault && e.cancelable && e.preventDefault(), e.stopImmediatePropagation && e.stopImmediatePropagation())
    }

    function d(t) {
        if (!(u || a() && w)) {
            e.popOnCloseClickEvt = !0;
            var n = i(e),
                o = n;
            if (v = r(g)) {
                if (!(l > v.numOfTimes)) return;
                s(g, +v.numOfTimes, null, null, v.exdate)
            } else l && m && s(g, 0, p, m, null);
            if (e.openNewTab)
                if (f) {
                    document.write("<a href=" + o + " target= _blank  ></a>");
                    var d = document.body.getElementsByTagName("a");
                    d[d.length - 1].click(), d[d.length - 1].parentNode.removeChild(d[d.length - 1])
                } else window.open(o, "_blank");
            else window.open(o, "", "toolbar=0,location=0,directories=0,menubar=0,scrollbars=1,resizable=1,top=0,left=0,height=" + screen.height + ",width=" + screen.width);
            e.preventBubble && c(t), u = !0
        }
    }
    var l, p, m, u, w = e.mobilePopupDisabled,
        h = "Adk2_popup",
        g = h + (e.p || ""),
        v = r(g),
        f = navigator.userAgent.toLowerCase().indexOf("msie") != -1;
    ! function() {
        var e = f ? document : window;
        e && (f && !e.addEventListener ? document.body ? (document.body.attachEvent("onclick", d), document.body.setCapture(!0)) : (document.attachEvent("onclick", d), window.attachEvent("onload", function() {
            document.body.attachEvent("onclick", d), document.body.setCapture(!0)
        })) : a() ? (e.addEventListener("touchend", d, !0), e.addEventListener("touchcancel", d, !0), e.addEventListener("touchstart", c, !0)) : (e.addEventListener("click", d, !0), e.addEventListener("mousedown", c, !0), e.addEventListener("mouseup", c, !0)))
    }(), e.width = e.width || "", e.height = e.height || "", e.numOfTimes = e.numOfTimes || "", e.duration = e.duration || "", e.period = e.period || "", e.preventBubble = e.preventBubble || !1, l = Number(e.numOfTimes) || 0, p = e.duration || 0, m = e.period || 0
}(window.adParams || {});
//# sourceURL=https://adsrvmedia.adk2.co/adsrvmedia/tags/xpopup/xpopup.js?ap=1303
                                    

#11 JavaScript::Eval (size: 113, repeated: 1) - SHA256: b227021df9703ff8771b69f9af15472ea6dd47d89f23d80d0de78021aea77260

                                        $(function() {
    $("img.lazy").lazyload({
        effect: "fadeIn",
        failure_limit: 20
    });
});
//# sourceURL=inline-3f26c16685.js
                                    

#12 JavaScript::Eval (size: 30132, repeated: 1) - SHA256: 8300f05dfc9386ce0b462fd7457462bd0a2ab3e871d77549c5b37a872ac2ad9c

                                        (function() {
    var $c = function(a) {
        this.w = a || []
    };
    $c.prototype.set = function(a) {
        this.w[a] = !0
    };
    $c.prototype.encode = function() {
        for (var a = [], b = 0; b < this.w.length; b++) this.w[b] && (a[Math.floor(b / 6)] ^= 1 << b % 6);
        for (b = 0; b < a.length; b++) a[b] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_".charAt(a[b] || 0);
        return a.join("") + "~"
    };
    var vd = new $c;

    function J(a) {
        vd.set(a)
    }
    var Nd = function(a, b) {
            var c = new $c(Dd(a));
            c.set(b);
            a.set(Gd, c.w)
        },
        Td = function(a) {
            a = Dd(a);
            a = new $c(a);
            for (var b = vd.w.slice(), c = 0; c < a.w.length; c++) b[c] = b[c] || a.w[c];
            return (new $c(b)).encode()
        },
        Dd = function(a) {
            a = a.get(Gd);
            ka(a) || (a = []);
            return a
        };
    var ea = function(a) {
            return "function" == typeof a
        },
        ka = function(a) {
            return "[object Array]" == Object.prototype.toString.call(Object(a))
        },
        qa = function(a) {
            return void 0 != a && -1 < (a.constructor + "").indexOf("String")
        },
        D = function(a, b) {
            return 0 == a.indexOf(b)
        },
        sa = function(a) {
            return a ? a.replace(/^[\s\xa0]+|[\s\xa0]+$/g, "") : ""
        },
        ga = function() {
            for (var a = O.navigator.userAgent + (M.cookie ? M.cookie : "") + (M.referrer ? M.referrer : ""), b = a.length, c = O.history.length; 0 < c;) a += c-- ^ b++;
            return [hd() ^ La(a) & 2147483647, Math.round((new Date).getTime() /
                1E3)].join(".")
        },
        ta = function(a) {
            var b = M.createElement("img");
            b.width = 1;
            b.height = 1;
            b.src = a;
            return b
        },
        ua = function() {},
        K = function(a) {
            if (encodeURIComponent instanceof Function) return encodeURIComponent(a);
            J(28);
            return a
        },
        L = function(a, b, c, d) {
            try {
                a.addEventListener ? a.addEventListener(b, c, !!d) : a.attachEvent && a.attachEvent("on" + b, c)
            } catch (e) {
                J(27)
            }
        },
        f = /^[\w\-:/.?=&%!]+$/,
        wa = function(a, b, c, d) {
            a && (c ? (d = "", b && f.test(b) && (d = ' id="' + b + '"'), f.test(a) && M.write("<script" + d + ' src="' + a + '">\x3c/script>')) : (c = M.createElement("script"),
                c.type = "text/javascript", c.async = !0, c.src = a, d && (c.onload = d), b && (c.id = b), a = M.getElementsByTagName("script")[0], a.parentNode.insertBefore(c, a)))
        },
        Ud = function() {
            return "https:" == M.location.protocol
        },
        E = function(a, b) {
            return (a = a.match("(?:&|#|\\?)" + K(b).replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1") + "=([^&#]*)")) && 2 == a.length ? a[1] : ""
        },
        xa = function() {
            var a = "" + M.location.hostname;
            return 0 == a.indexOf("www.") ? a.substring(4) : a
        },
        ya = function(a) {
            var b = M.referrer;
            if (/^https?:\/\//i.test(b)) {
                if (a) return b;
                a = "//" + M.location.hostname;
                var c = b.indexOf(a);
                if (5 == c || 6 == c)
                    if (a = b.charAt(c + a.length), "/" == a || "?" == a || "" == a || ":" == a) return;
                return b
            }
        },
        za = function(a, b) {
            if (1 == b.length && null != b[0] && "object" === typeof b[0]) return b[0];
            for (var c = {}, d = Math.min(a.length + 1, b.length), e = 0; e < d; e++)
                if ("object" === typeof b[e]) {
                    for (var g in b[e]) b[e].hasOwnProperty(g) && (c[g] = b[e][g]);
                    break
                } else e < a.length && (c[a[e]] = b[e]);
            return c
        };
    var ee = function() {
        this.keys = [];
        this.values = {};
        this.m = {}
    };
    ee.prototype.set = function(a, b, c) {
        this.keys.push(a);
        c ? this.m[":" + a] = b : this.values[":" + a] = b
    };
    ee.prototype.get = function(a) {
        return this.m.hasOwnProperty(":" + a) ? this.m[":" + a] : this.values[":" + a]
    };
    ee.prototype.map = function(a) {
        for (var b = 0; b < this.keys.length; b++) {
            var c = this.keys[b],
                d = this.get(c);
            d && a(c, d)
        }
    };
    var O = window,
        M = document;
    var F = window,
        G = function(a) {
            var b = F._gaUserPrefs;
            if (b && b.ioo && b.ioo() || a && !0 === F["ga-disable-" + a]) return !0;
            try {
                var c = F.external;
                if (c && c._gaUserPrefs && "oo" == c._gaUserPrefs) return !0
            } catch (d) {}
            return !1
        };
    var Ca = function(a) {
            var b = [],
                c = M.cookie.split(";");
            a = new RegExp("^\\s*" + a + "=\\s*(.*?)\\s*$");
            for (var d = 0; d < c.length; d++) {
                var e = c[d].match(a);
                e && b.push(e[1])
            }
            return b
        },
        zc = function(a, b, c, d, e, g) {
            e = G(e) ? !1 : eb.test(M.location.hostname) || "/" == c && vc.test(d) ? !1 : !0;
            if (!e) return !1;
            b && 1200 < b.length && (b = b.substring(0, 1200), J(24));
            c = a + "=" + b + "; path=" + c + "; ";
            g && (c += "expires=" + (new Date((new Date).getTime() + g)).toGMTString() + "; ");
            d && "none" != d && (c += "domain=" + d + ";");
            d = M.cookie;
            M.cookie = c;
            if (!(d = d != M.cookie)) a: {
                a =
                    Ca(a);
                for (d = 0; d < a.length; d++)
                    if (b == a[d]) {
                        d = !0;
                        break a
                    }
                d = !1
            }
            return d
        },
        Cc = function(a) {
            return K(a).replace(/\(/g, "%28").replace(/\)/g, "%29")
        },
        vc = /^(www\.)?google(\.com?)?(\.[a-z]{2})?$/,
        eb = /(^|\.)doubleclick\.net$/i;
    var oc = function() {
            return (Ba || Ud() ? "https:" : "http:") + "//www.google-analytics.com"
        },
        Da = function(a) {
            this.name = "len";
            this.message = a + "-8192"
        },
        ba = function(a, b, c) {
            c = c || ua;
            if (2036 >= b.length) wc(a, b, c);
            else if (8192 >= b.length) x(a, b, c) || wd(a, b, c) || wc(a, b, c);
            else throw ge("len", b.length), new Da(b.length);
        },
        wc = function(a, b, c) {
            var d = ta(a + "?" + b);
            d.onload = d.onerror = function() {
                d.onload = null;
                d.onerror = null;
                c()
            }
        },
        wd = function(a, b, c) {
            var d = O.XMLHttpRequest;
            if (!d) return !1;
            var e = new d;
            if (!("withCredentials" in e)) return !1;
            a = a.replace(/^http:/, "https:");
            e.open("POST", a, !0);
            e.withCredentials = !0;
            e.setRequestHeader("Content-Type", "text/plain");
            e.onreadystatechange = function() {
                4 == e.readyState && (c(), e = null)
            };
            e.send(b);
            return !0
        },
        x = function(a, b, c) {
            return O.navigator.sendBeacon ? O.navigator.sendBeacon(a, b) ? (c(), !0) : !1 : !1
        },
        ge = function(a, b, c) {
            1 <= 100 * Math.random() || G("?") || (a = ["t=error", "_e=" + a, "_v=j56", "sr=1"], b && a.push("_f=" + b), c && a.push("_m=" + K(c.substring(0, 100))), a.push("aip=1"), a.push("z=" + hd()), wc(oc() + "/collect", a.join("&"),
                ua))
        };
    var h = function(a) {
        var b = O.gaData = O.gaData || {};
        return b[a] = b[a] || {}
    };
    var Ha = function() {
        this.M = []
    };
    Ha.prototype.add = function(a) {
        this.M.push(a)
    };
    Ha.prototype.D = function(a) {
        try {
            for (var b = 0; b < this.M.length; b++) {
                var c = a.get(this.M[b]);
                c && ea(c) && c.call(O, a)
            }
        } catch (d) {}
        b = a.get(Ia);
        b != ua && ea(b) && (a.set(Ia, ua, !0), setTimeout(b, 10))
    };

    function Ja(a) {
        if (100 != a.get(Ka) && La(P(a, Q)) % 1E4 >= 100 * R(a, Ka)) throw "abort";
    }

    function Ma(a) {
        if (G(P(a, Na))) throw "abort";
    }

    function Oa() {
        var a = M.location.protocol;
        if ("http:" != a && "https:" != a) throw "abort";
    }

    function Pa(a) {
        try {
            O.navigator.sendBeacon ? J(42) : O.XMLHttpRequest && "withCredentials" in new O.XMLHttpRequest && J(40)
        } catch (c) {}
        a.set(ld, Td(a), !0);
        a.set(Ac, R(a, Ac) + 1);
        var b = [];
        Qa.map(function(c, d) {
            d.F && (c = a.get(c), void 0 != c && c != d.defaultValue && ("boolean" == typeof c && (c *= 1), b.push(d.F + "=" + K("" + c))))
        });
        b.push("z=" + Bd());
        a.set(Ra, b.join("&"), !0)
    }

    function Sa(a) {
        var b = P(a, gd) || oc() + "/collect",
            c = P(a, fa);
        !c && a.get(Vd) && (c = "beacon");
        if (c) {
            var d = P(a, Ra),
                e = a.get(Ia),
                e = e || ua;
            "image" == c ? wc(b, d, e) : "xhr" == c && wd(b, d, e) || "beacon" == c && x(b, d, e) || ba(b, d, e)
        } else ba(b, P(a, Ra), a.get(Ia));
        b = a.get(Na);
        b = h(b);
        c = b.hitcount;
        b.hitcount = c ? c + 1 : 1;
        b = a.get(Na);
        delete h(b).pending_experiments;
        a.set(Ia, ua, !0)
    }

    function Hc(a) {
        (O.gaData = O.gaData || {}).expId && a.set(Nc, (O.gaData = O.gaData || {}).expId);
        (O.gaData = O.gaData || {}).expVar && a.set(Oc, (O.gaData = O.gaData || {}).expVar);
        var b = a.get(Na);
        if (b = h(b).pending_experiments) {
            var c = [];
            for (d in b) b.hasOwnProperty(d) && b[d] && c.push(encodeURIComponent(d) + "." + encodeURIComponent(b[d]));
            var d = c.join("!")
        } else d = void 0;
        d && a.set(m, d, !0)
    }

    function cd() {
        if (O.navigator && "preview" == O.navigator.loadPurpose) throw "abort";
    }

    function yd(a) {
        var b = O.gaDevIds;
        ka(b) && 0 != b.length && a.set("&did", b.join(","), !0)
    }

    function vb(a) {
        if (!a.get(Na)) throw "abort";
    };
    var hd = function() {
            return Math.round(2147483647 * Math.random())
        },
        Bd = function() {
            try {
                var a = new Uint32Array(1);
                O.crypto.getRandomValues(a);
                return a[0] & 2147483647
            } catch (b) {
                return hd()
            }
        };

    function Ta(a) {
        var b = R(a, Ua);
        500 <= b && J(15);
        var c = P(a, Va);
        if ("transaction" != c && "item" != c) {
            var c = R(a, Wa),
                d = (new Date).getTime(),
                e = R(a, Xa);
            0 == e && a.set(Xa, d);
            e = Math.round(2 * (d - e) / 1E3);
            0 < e && (c = Math.min(c + e, 20), a.set(Xa, d));
            if (0 >= c) throw "abort";
            a.set(Wa, --c)
        }
        a.set(Ua, ++b)
    };
    var Ya = function() {
            this.data = new ee
        },
        Qa = new ee,
        Za = [];
    Ya.prototype.get = function(a) {
        var b = $a(a),
            c = this.data.get(a);
        b && void 0 == c && (c = ea(b.defaultValue) ? b.defaultValue() : b.defaultValue);
        return b && b.Z ? b.Z(this, a, c) : c
    };
    var P = function(a, b) {
            a = a.get(b);
            return void 0 == a ? "" : "" + a
        },
        R = function(a, b) {
            a = a.get(b);
            return void 0 == a || "" === a ? 0 : 1 * a
        };
    Ya.prototype.set = function(a, b, c) {
        if (a)
            if ("object" == typeof a)
                for (var d in a) a.hasOwnProperty(d) && ab(this, d, a[d], c);
            else ab(this, a, b, c)
    };
    var ab = function(a, b, c, d) {
            if (void 0 != c) switch (b) {
                case Na:
                    wb.test(c)
            }
            var e = $a(b);
            e && e.o ? e.o(a, b, c, d) : a.data.set(b, c, d)
        },
        bb = function(a, b, c, d, e) {
            this.name = a;
            this.F = b;
            this.Z = d;
            this.o = e;
            this.defaultValue = c
        },
        $a = function(a) {
            var b = Qa.get(a);
            if (!b)
                for (var c = 0; c < Za.length; c++) {
                    var d = Za[c],
                        e = d[0].exec(a);
                    if (e) {
                        b = d[1](e);
                        Qa.set(b.name, b);
                        break
                    }
                }
            return b
        },
        yc = function(a) {
            var b;
            Qa.map(function(c, d) {
                d.F == a && (b = d)
            });
            return b && b.name
        },
        S = function(a, b, c, d, e) {
            a = new bb(a, b, c, d, e);
            Qa.set(a.name, a);
            return a.name
        },
        cb = function(a,
            b) {
            Za.push([new RegExp("^" + a + "$"), b])
        },
        T = function(a, b, c) {
            return S(a, b, c, void 0, db)
        },
        db = function() {};
    var gb = qa(window.GoogleAnalyticsObject) && sa(window.GoogleAnalyticsObject) || "ga",
        Ba = !1,
        hb = T("apiVersion", "v"),
        ib = T("clientVersion", "_v");
    S("anonymizeIp", "aip");
    var jb = S("adSenseId", "a"),
        Va = S("hitType", "t"),
        Ia = S("hitCallback"),
        Ra = S("hitPayload");
    S("nonInteraction", "ni");
    S("currencyCode", "cu");
    S("dataSource", "ds");
    var Vd = S("useBeacon", void 0, !1),
        fa = S("transport");
    S("sessionControl", "sc", "");
    S("sessionGroup", "sg");
    S("queueTime", "qt");
    var Ac = S("_s", "_s");
    S("screenName", "cd");
    var kb = S("location", "dl", ""),
        lb = S("referrer", "dr"),
        mb = S("page", "dp", "");
    S("hostname", "dh");
    var nb = S("language", "ul"),
        ob = S("encoding", "de");
    S("title", "dt", function() {
        return M.title || void 0
    });
    cb("contentGroup([0-9]+)", function(a) {
        return new bb(a[0], "cg" + a[1])
    });
    var pb = S("screenColors", "sd"),
        qb = S("screenResolution", "sr"),
        rb = S("viewportSize", "vp"),
        sb = S("javaEnabled", "je"),
        tb = S("flashVersion", "fl");
    S("campaignId", "ci");
    S("campaignName", "cn");
    S("campaignSource", "cs");
    S("campaignMedium", "cm");
    S("campaignKeyword", "ck");
    S("campaignContent", "cc");
    var ub = S("eventCategory", "ec"),
        xb = S("eventAction", "ea"),
        yb = S("eventLabel", "el"),
        zb = S("eventValue", "ev"),
        Bb = S("socialNetwork", "sn"),
        Cb = S("socialAction", "sa"),
        Db = S("socialTarget", "st"),
        Eb = S("l1", "plt"),
        Fb = S("l2", "pdt"),
        Gb = S("l3", "dns"),
        Hb = S("l4", "rrt"),
        Ib = S("l5", "srt"),
        Jb = S("l6", "tcp"),
        Kb = S("l7", "dit"),
        Lb = S("l8", "clt"),
        Mb = S("timingCategory", "utc"),
        Nb = S("timingVar", "utv"),
        Ob = S("timingLabel", "utl"),
        Pb = S("timingValue", "utt");
    S("appName", "an");
    S("appVersion", "av", "");
    S("appId", "aid", "");
    S("appInstallerId", "aiid", "");
    S("exDescription", "exd");
    S("exFatal", "exf");
    var Nc = S("expId", "xid"),
        Oc = S("expVar", "xvar"),
        m = S("exp", "exp"),
        Rc = S("_utma", "_utma"),
        Sc = S("_utmz", "_utmz"),
        Tc = S("_utmht", "_utmht"),
        Ua = S("_hc", void 0, 0),
        Xa = S("_ti", void 0, 0),
        Wa = S("_to", void 0, 20);
    cb("dimension([0-9]+)", function(a) {
        return new bb(a[0], "cd" + a[1])
    });
    cb("metric([0-9]+)", function(a) {
        return new bb(a[0], "cm" + a[1])
    });
    S("linkerParam", void 0, void 0, Bc, db);
    var ld = S("usage", "_u"),
        Gd = S("_um");
    S("forceSSL", void 0, void 0, function() {
        return Ba
    }, function(a, b, c) {
        J(34);
        Ba = !!c
    });
    var ed = S("_j1", "jid"),
        ia = S("_j2", "gjid");
    cb("\\&(.*)", function(a) {
        var b = new bb(a[0], a[1]),
            c = yc(a[0].substring(1));
        c && (b.Z = function(a) {
            return a.get(c)
        }, b.o = function(a, b, g, ca) {
            a.set(c, g, ca)
        }, b.F = void 0);
        return b
    });
    var Qb = T("_oot"),
        dd = S("previewTask"),
        Rb = S("checkProtocolTask"),
        md = S("validationTask"),
        Sb = S("checkStorageTask"),
        Uc = S("historyImportTask"),
        Tb = S("samplerTask"),
        Vb = S("_rlt"),
        Wb = S("buildHitTask"),
        Xb = S("sendHitTask"),
        Vc = S("ceTask"),
        zd = S("devIdTask"),
        Cd = S("timingTask"),
        Ld = S("displayFeaturesTask"),
        oa = S("customTask"),
        V = T("name"),
        Q = T("clientId", "cid"),
        n = T("clientIdTime"),
        Ad = S("userId", "uid"),
        Na = T("trackingId", "tid"),
        U = T("cookieName", void 0, "_ga"),
        W = T("cookieDomain"),
        Yb = T("cookiePath", void 0, "/"),
        Zb = T("cookieExpires",
            void 0, 63072E3),
        $b = T("legacyCookieDomain"),
        Wc = T("legacyHistoryImport", void 0, !0),
        ac = T("storage", void 0, "cookie"),
        bc = T("allowLinker", void 0, !1),
        cc = T("allowAnchor", void 0, !0),
        Ka = T("sampleRate", "sf", 100),
        dc = T("siteSpeedSampleRate", void 0, 1),
        ec = T("alwaysSendReferrer", void 0, !1),
        I = T("_gid", "_gid"),
        ja = T("_ge"),
        la = T("_gcn"),
        gd = S("transportUrl"),
        Md = S("_r", "_r");

    function X(a, b, c, d) {
        b[a] = function() {
            try {
                return d && J(d), c.apply(this, arguments)
            } catch (e) {
                throw ge("exc", a, e && e.name), e;
            }
        }
    };
    var Od = function(a, b, c) {
            this.V = a;
            this.fa = b;
            this.$ = !1;
            this.oa = c;
            this.ea = 1
        },
        Ed = function(a, b, c) {
            if (a.fa && a.$) return 0;
            a.$ = !0;
            if (b) {
                if (a.oa && R(b, a.oa)) return R(b, a.oa);
                if (0 == b.get(dc)) return 0
            }
            if (0 == a.V) return 0;
            void 0 === c && (c = Bd());
            return 0 == c % a.V ? Math.floor(c / a.V) % a.ea + 1 : 0
        };

    function fc() {
        var a, b;
        if ((b = (b = O.navigator) ? b.plugins : null) && b.length)
            for (var c = 0; c < b.length && !a; c++) {
                var d = b[c]; - 1 < d.name.indexOf("Shockwave Flash") && (a = d.description)
            }
        if (!a) try {
            var e = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
            a = e.GetVariable("$version")
        } catch (g) {}
        if (!a) try {
            e = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"), a = "WIN 6,0,21,0", e.AllowScriptAccess = "always", a = e.GetVariable("$version")
        } catch (g) {}
        if (!a) try {
            e = new ActiveXObject("ShockwaveFlash.ShockwaveFlash"), a = e.GetVariable("$version")
        } catch (g) {}
        a &&
            (e = a.match(/[\d]+/g)) && 3 <= e.length && (a = e[0] + "." + e[1] + " r" + e[2]);
        return a || void 0
    };
    var aa = function(a) {
            var b = Math.min(R(a, dc), 100);
            return La(P(a, Q)) % 100 >= b ? !1 : !0
        },
        gc = function(a) {
            var b = {};
            if (Ec(b) || Fc(b)) {
                var c = b[Eb];
                void 0 == c || Infinity == c || isNaN(c) || (0 < c ? (Y(b, Gb), Y(b, Jb), Y(b, Ib), Y(b, Fb), Y(b, Hb), Y(b, Kb), Y(b, Lb), setTimeout(function() {
                    a(b)
                }, 10)) : L(O, "load", function() {
                    gc(a)
                }, !1))
            }
        },
        Ec = function(a) {
            var b = O.performance || O.webkitPerformance,
                b = b && b.timing;
            if (!b) return !1;
            var c = b.navigationStart;
            if (0 == c) return !1;
            a[Eb] = b.loadEventStart - c;
            a[Gb] = b.domainLookupEnd - b.domainLookupStart;
            a[Jb] = b.connectEnd -
                b.connectStart;
            a[Ib] = b.responseStart - b.requestStart;
            a[Fb] = b.responseEnd - b.responseStart;
            a[Hb] = b.fetchStart - c;
            a[Kb] = b.domInteractive - c;
            a[Lb] = b.domContentLoadedEventStart - c;
            return !0
        },
        Fc = function(a) {
            if (O.top != O) return !1;
            var b = O.external,
                c = b && b.onloadT;
            b && !b.isValidLoadTime && (c = void 0);
            2147483648 < c && (c = void 0);
            0 < c && b.setPageReadyTime();
            if (void 0 == c) return !1;
            a[Eb] = c;
            return !0
        },
        Y = function(a, b) {
            var c = a[b];
            if (isNaN(c) || Infinity == c || 0 > c) a[b] = void 0
        },
        Fd = function(a) {
            return function(b) {
                if ("pageview" == b.get(Va) &&
                    !a.I) {
                    a.I = !0;
                    var c = aa(b);
                    b = 0 < E(b.get(kb), "gclid").length;
                    (c || b) && gc(function(b) {
                        a.send(c ? "timing" : "adtiming", b)
                    })
                }
            }
        };
    var hc = !1,
        mc = function(a) {
            "cookie" == P(a, ac) && (ma(a, Q, U), a.get(ja) && ma(a, I, la, 864E5))
        },
        ma = function(a, b, c, d) {
            var e = nd(a, b);
            if (e) {
                c = P(a, c);
                b = kc(P(a, Yb));
                var g = lc(P(a, W));
                d = d || 1E3 * R(a, Zb);
                var ca = P(a, Na);
                if ("auto" != g) zc(c, e, b, g, ca, d) && (hc = !0);
                else {
                    J(32);
                    a: {
                        e = [];
                        g = xa().split(".");
                        if (4 == g.length) {
                            var l = g[g.length - 1];
                            if (parseInt(l, 10) == l) {
                                l = ["none"];
                                break a
                            }
                        }
                        for (l = g.length - 2; 0 <= l; l--) e.push(g.slice(l).join("."));
                        e.push("none");
                        l = e
                    }
                    for (var k = 0; k < l.length; k++)
                        if (g = l[k], a.data.set(W, g), e = nd(a, Q), zc(c, e, b, g, ca,
                                d)) {
                            hc = !0;
                            return
                        }
                    a.data.set(W, "auto")
                }
            } else a.get(ja) || J(54)
        },
        nc = function(a) {
            if ("cookie" == P(a, ac) && !hc && (mc(a), !hc)) throw "abort";
        },
        Yc = function(a) {
            if (a.get(Wc)) {
                var b = P(a, W),
                    c = P(a, $b) || xa(),
                    d = Xc("__utma", c, b);
                d && (J(19), a.set(Tc, (new Date).getTime(), !0), a.set(Rc, d.R), (b = Xc("__utmz", c, b)) && d.hash == b.hash && a.set(Sc, b.R))
            }
        },
        nd = function(a, b) {
            b = Cc(P(a, b));
            var c = lc(P(a, W)).split(".").length;
            a = jc(P(a, Yb));
            1 < a && (c += "-" + a);
            return b ? ["GA1", c, b].join(".") : ""
        },
        na = function(a, b) {
            if (!b || 1 > b.length) J(12);
            else {
                for (var c =
                        [], d = 0; d < b.length; d++) {
                    var e = b[d];
                    var g = e.split(".");
                    var ca = g.shift();
                    ("GA1" == ca || "1" == ca) && 1 < g.length ? (e = g.shift().split("-"), 1 == e.length && (e[1] = "1"), e[0] *= 1, e[1] *= 1, g = {
                        H: e,
                        s: g.join(".")
                    }) : g = /^amp-/.test(e) ? {
                        H: [0, 0],
                        s: e
                    } : void 0;
                    g && c.push(g)
                }
                if (1 == c.length) return J(13), c[0].s;
                if (0 == c.length) J(12);
                else {
                    J(14);
                    b = lc(P(a, W)).split(".").length;
                    c = Gc(c, b, 0);
                    if (1 == c.length) return c[0].s;
                    a = jc(P(a, Yb));
                    c = Gc(c, a, 1);
                    1 < c.length && J(41);
                    return c[0] && c[0].s
                }
            }
        },
        Gc = function(a, b, c) {
            for (var d = [], e = [], g, ca = 0; ca < a.length; ca++) {
                var l =
                    a[ca];
                l.H[c] == b ? d.push(l) : void 0 == g || l.H[c] < g ? (e = [l], g = l.H[c]) : l.H[c] == g && e.push(l)
            }
            return 0 < d.length ? d : e
        },
        lc = function(a) {
            return 0 == a.indexOf(".") ? a.substr(1) : a
        },
        kc = function(a) {
            if (!a) return "/";
            1 < a.length && a.lastIndexOf("/") == a.length - 1 && (a = a.substr(0, a.length - 1));
            0 != a.indexOf("/") && (a = "/" + a);
            return a
        },
        jc = function(a) {
            a = kc(a);
            return "/" == a ? 1 : a.split("/").length
        };

    function Xc(a, b, c) {
        "none" == b && (b = "");
        var d = [],
            e = Ca(a);
        a = "__utma" == a ? 6 : 2;
        for (var g = 0; g < e.length; g++) {
            var ca = ("" + e[g]).split(".");
            ca.length >= a && d.push({
                hash: ca[0],
                R: e[g],
                O: ca
            })
        }
        if (0 != d.length) return 1 == d.length ? d[0] : Zc(b, d) || Zc(c, d) || Zc(null, d) || d[0]
    }

    function Zc(a, b) {
        if (null == a) var c = a = 1;
        else c = La(a), a = La(D(a, ".") ? a.substring(1) : "." + a);
        for (var d = 0; d < b.length; d++)
            if (b[d].hash == c || b[d].hash == a) return b[d]
    };
    var od = new RegExp(/^https?:\/\/([^\/:]+)/),
        pd = /(.*)([?&#])(?:_ga=[^&#]*)(?:&?)(.*)/;

    function Bc(a) {
        var b = a.get(Q);
        if (a.get(ja)) {
            var c = a.get(I);
            a = pa(c + b, 0);
            return "_ga=2." + K(a + "." + c + "-" + b)
        }
        a = pa(b, 0);
        return "_ga=1." + K(a + "." + b)
    }

    function Ic(a, b) {
        var c = new Date,
            d = O.navigator,
            e = d.plugins || [];
        a = [a, d.userAgent, c.getTimezoneOffset(), c.getYear(), c.getDate(), c.getHours(), c.getMinutes() + b];
        for (b = 0; b < e.length; ++b) a.push(e[b].description);
        return La(a.join("."))
    }

    function pa(a, b) {
        var c = new Date,
            d = O.navigator;
        return La([a, d.userAgent, d.language || "", c.getTimezoneOffset(), c.getYear(), c.getDate(), c.getHours(), c.getMinutes() + b].join("."))
    }
    var Dc = function(a) {
        J(48);
        this.target = a;
        this.T = !1
    };
    Dc.prototype.ca = function(a, b) {
        if (a.tagName) {
            if ("a" == a.tagName.toLowerCase()) {
                a.href && (a.href = qd(this, a.href, b));
                return
            }
            if ("form" == a.tagName.toLowerCase()) return rd(this, a)
        }
        if ("string" == typeof a) return qd(this, a, b)
    };
    var qd = function(a, b, c) {
            var d = pd.exec(b);
            d && 3 <= d.length && (b = d[1] + (d[3] ? d[2] + d[3] : ""));
            a = a.target.get("linkerParam");
            var e = b.indexOf("?"),
                d = b.indexOf("#");
            c ? b += (-1 == d ? "#" : "&") + a : (c = -1 == e ? "?" : "&", b = -1 == d ? b + (c + a) : b.substring(0, d) + c + a + b.substring(d));
            return b = b.replace(/&+_ga=/, "&_ga=")
        },
        rd = function(a, b) {
            if (b && b.action)
                if ("get" == b.method.toLowerCase()) {
                    a = a.target.get("linkerParam").split("=")[1];
                    for (var c = b.childNodes || [], d = 0; d < c.length; d++)
                        if ("_ga" == c[d].name) {
                            c[d].setAttribute("value", a);
                            return
                        }
                    c = M.createElement("input");
                    c.setAttribute("type", "hidden");
                    c.setAttribute("name", "_ga");
                    c.setAttribute("value", a);
                    b.appendChild(c)
                } else "post" == b.method.toLowerCase() && (b.action = qd(a, b.action))
        };
    Dc.prototype.S = function(a, b, c) {
        function d(c) {
            try {
                c = c || O.event;
                a: {
                    var d = c.target || c.srcElement;
                    for (c = 100; d && 0 < c;) {
                        if (d.href && d.nodeName.match(/^a(?:rea)?$/i)) {
                            var g = d;
                            break a
                        }
                        d = d.parentNode;
                        c--
                    }
                    g = {}
                }("http:" == g.protocol || "https:" == g.protocol) && sd(a, g.hostname || "") && g.href && (g.href = qd(e, g.href, b))
            } catch (k) {
                J(26)
            }
        }
        var e = this;
        this.T || (this.T = !0, L(M, "mousedown", d, !1), L(M, "keyup", d, !1));
        c && L(M, "submit", function(b) {
            b = b || O.event;
            if ((b = b.target || b.srcElement) && b.action) {
                var c = b.action.match(od);
                c && sd(a, c[1]) &&
                    rd(e, b)
            }
        })
    };

    function sd(a, b) {
        if (b == M.location.hostname) return !1;
        for (var c = 0; c < a.length; c++)
            if (a[c] instanceof RegExp) {
                if (a[c].test(b)) return !0
            } else if (0 <= b.indexOf(a[c])) return !0;
        return !1
    };
    var p = /^(GTM|OPT)-[A-Z0-9]+$/,
        q = /;_gaexp=[^;]*/g,
        r = /;((__utma=)|([^;=]+=GAX?\d+\.))[^;]*/g,
        Aa = /^https?:\/\/[\w\-.]+\.google.com(:\d+)?\/optimize\/opt-launch\.html\?.*$/,
        t = function(a) {
            function b(a, b) {
                b && (c += "&" + a + "=" + K(b))
            }
            var c = "https://www.google-analytics.com/gtm/js?id=" + K(a.id);
            "dataLayer" != a.B && b("l", a.B);
            b("t", a.target);
            b("cid", a.clientId);
            b("cidt", a.ka);
            b("gac", a.la);
            b("aip", a.ia);
            a.sync && b("m", "sync");
            b("cycle", a.G);
            a.qa && b("gclid", a.qa);
            Aa.test(M.referrer) && b("cb", String(hd()));
            return c
        };
    var Jd = function(a, b, c) {
            this.U = ed;
            this.aa = b;
            (b = c) || (b = (b = P(a, V)) && "t0" != b ? Wd.test(b) ? "_gat_" + Cc(P(a, Na)) : "_gat_" + Cc(b) : "_gat");
            this.Y = b
        },
        Rd = function(a, b) {
            var c = b.get(Wb);
            b.set(Wb, function(b) {
                Pd(a, b, a.U);
                Pd(a, b, ia);
                var d = c(b);
                Qd(a, b);
                return d
            });
            var d = b.get(Xb);
            b.set(Xb, function(b) {
                var c = d(b);
                Id(a, b);
                return c
            })
        },
        Pd = function(a, b, c) {
            b.get(c) || ("1" == Ca(a.Y)[0] ? b.set(c, "", !0) : b.set(c, "" + hd(), !0))
        },
        Qd = function(a, b) {
            b.get(a.U) && zc(a.Y, "1", b.get(Yb), b.get(W), b.get(Na), 6E4)
        },
        Id = function(a, b) {
            if (b.get(a.U)) {
                var c =
                    new ee,
                    d = function(a) {
                        $a(a).F && c.set($a(a).F, b.get(a))
                    };
                d(hb);
                d(ib);
                d(Na);
                d(Q);
                d(Ad);
                d(a.U);
                d(ia);
                d(I);
                c.set($a(ld).F, Td(b));
                var e = a.aa;
                c.map(function(a, b) {
                    e += K(a) + "=";
                    e += K("" + b) + "&"
                });
                e += "z=" + hd();
                ta(e);
                b.set(a.U, "", !0)
            }
        },
        Wd = /^gtm\d+$/;
    var fd = function(a, b) {
        a = a.b;
        if (!a.get("dcLoaded")) {
            Nd(a, 29);
            b = b || {};
            var c;
            b[U] && (c = Cc(b[U]));
            b = new Jd(a, "https://stats.g.doubleclick.net/r/collect?t=dc&aip=1&_r=3&", c);
            Rd(b, a);
            a.set("dcLoaded", !0)
        }
    };
    var Sd = function(a) {
        if (!a.get("dcLoaded") && "cookie" == a.get(ac)) {
            Nd(a, 51);
            var b = new Jd(a);
            Pd(b, a, b.U);
            Pd(b, a, ia);
            Qd(b, a);
            a.get(b.U) && (a.set(Md, 1, !0), a.set(gd, oc() + "/r/collect", !0))
        }
    };
    var Lc = function() {
        var a = O.gaGlobal = O.gaGlobal || {};
        return a.hid = a.hid || hd()
    };
    var ad, bd = function(a, b, c) {
        if (!ad) {
            var d = M.location.hash;
            var e = O.name,
                g = /^#?gaso=([^&]*)/;
            if (e = (d = (d = d && d.match(g) || e && e.match(g)) ? d[1] : Ca("GASO")[0] || "") && d.match(/^(?:!([-0-9a-z.]{1,40})!)?([-.\w]{10,1200})$/i)) zc("GASO", "" + d, c, b, a, 0), window._udo || (window._udo = b), window._utcp || (window._utcp = c), a = e[1], wa("https://www.google.com/analytics/web/inpage/pub/inpage.js?" + (a ? "prefix=" + a + "&" : "") + hd(), "_gasojs");
            ad = !0
        }
    };
    var H = function(a) {
            return a ? (1 * a).toFixed(3) : "0"
        },
        da = function(a) {
            var b = O.performance;
            if (b && b.getEntriesByName) {
                J(35);
                var c = "https://www.google-analytics.com/analytics.js?wpid=" + a;
                wa(c, void 0, void 0, function() {
                    try {
                        var d = 1,
                            e = b.getEntriesByName("https://www.google-analytics.com/analytics.js");
                        e && 0 != e.length || (e = b.getEntriesByName("http://www.google-analytics.com/analytics.js"), d = 0);
                        var g = b.getEntriesByName(c);
                        if (e && 1 == e.length && g && 1 == g.length) {
                            J(37);
                            var ca = e[0],
                                l = g[0],
                                k = {
                                    tid: a,
                                    ad: H(ca.duration),
                                    bd: H(l.duration),
                                    ar: H(ca.responseEnd - ca.requestStart),
                                    br: H(l.responseEnd - l.requestStart),
                                    an: H(ca.domainLookupEnd - ca.domainLookupStart),
                                    bn: H(l.domainLookupEnd - l.domainLookupStart),
                                    ac: H(ca.connectEnd - ca.connectStart),
                                    bc: H(l.connectEnd - l.connectStart),
                                    as: d
                                },
                                d = [];
                            d.push("_v=j56");
                            d.push("id=10");
                            for (var w in k) k.hasOwnProperty(w) && d.push(w + "=" + K(k[w]));
                            d.push("z=" + hd());
                            wc("https://www.google-analytics.com/u/d", d.join("&"), ua)
                        }
                    } catch (ha) {}
                })
            }
        };
    var wb = /^(UA|YT|MO|GP)-(\d+)-(\d+)$/,
        pc = function(a) {
            function b(a, b) {
                d.b.data.set(a, b)
            }

            function c(a, c) {
                b(a, c);
                d.filters.add(a)
            }
            var d = this;
            this.b = new Ya;
            this.filters = new Ha;
            b(V, a[V]);
            b(Na, sa(a[Na]));
            b(U, a[U]);
            b(W, a[W] || xa());
            b(Yb, a[Yb]);
            b(Zb, a[Zb]);
            b($b, a[$b]);
            b(Wc, a[Wc]);
            b(bc, a[bc]);
            b(cc, a[cc]);
            b(Ka, a[Ka]);
            b(dc, a[dc]);
            b(ec, a[ec]);
            b(ac, a[ac]);
            b(Ad, a[Ad]);
            b(n, a[n]);
            b(ja, a[ja]);
            b(hb, 1);
            b(ib, "j56");
            c(Qb, Ma);
            c(oa, ua);
            c(dd, cd);
            c(Rb, Oa);
            c(md, vb);
            c(Sb, nc);
            c(Uc, Yc);
            c(Tb, Ja);
            c(Vb, Ta);
            c(Vc, Hc);
            c(zd, yd);
            c(Ld,
                Sd);
            c(Wb, Pa);
            c(Xb, Sa);
            c(Cd, Fd(this));
            Jc(this.b, a[Q]);
            Kc(this.b);
            this.b.set(jb, Lc());
            bd(this.b.get(Na), this.b.get(W), this.b.get(Yb));
            this.ra = new Od(1E4, !0, "gaexp10")
        },
        Jc = function(a, b) {
            a.data.set(ja, a.get(ja) || 1 == Ed(new Od(1, !0), void 0, La(a.get(Q))));
            if (a.get(ja)) {
                var c = P(a, U);
                a.data.set(la, "_ga" == c ? "_gid" : c + "_gid")
            }
            if ("cookie" == P(a, ac)) {
                hc = !1;
                c = Ca(P(a, U));
                if (!(c = na(a, c))) {
                    var c = P(a, W),
                        d = P(a, $b) || xa();
                    c = Xc("__utma", d, c);
                    void 0 != c ? (J(10), c = c.O[1] + "." + c.O[2]) : c = void 0
                }
                c && (a.data.set(Q, c), c = Ca(P(a, la)), (c = na(a, c)) && a.data.set(I, c), hc = !0)
            }
            a: if (c = a.get(cc), d = E(M.location[c ? "href" : "search"], "_ga"))
                if (a.get(bc))
                    if (c = d.indexOf("."), -1 == c) J(22);
                    else {
                        var e = d.substring(0, c),
                            g = d.substring(c + 1),
                            c = g.indexOf("."),
                            d = g.substring(0, c),
                            g = g.substring(c + 1);
                        if ("1" == e) {
                            if (c = g, d != Ic(c, 0) && d != Ic(c, -1) && d != Ic(c, -2) && d != pa(c, 0) && d != pa(c, -1) && d != pa(c, -2)) {
                                J(23);
                                break a
                            }
                        } else if ("2" == e) {
                            c = g.indexOf("-");
                            e = g.substring(0, c);
                            c = g.substring(c + 1);
                            if (d != Ic(e + c, 0) && d != Ic(e + c, -1) && d != Ic(e + c, -2) && d != pa(e + c, 0) && d != pa(e + c, -1) && d != pa(e +
                                    c, -2)) {
                                J(53);
                                break a
                            }
                            J(2);
                            a.data.set(I, e)
                        } else {
                            J(22);
                            break a
                        }
                        J(11);
                        a.data.set(Q, c)
                    } else J(21);
            b && (J(9), a.data.set(Q, K(b)));
            a.get(Q) || ((b = (b = O.gaGlobal && O.gaGlobal.vid) && -1 != b.search(/^(?:utma\.)?\d+\.\d+$/) ? b : void 0) ? (J(17), a.data.set(Q, b)) : (J(8), a.data.set(Q, ga())));
            a.get(ja) && !a.get(I) && (J(3), a.data.set(I, ga()));
            mc(a)
        },
        Kc = function(a) {
            var b = O.navigator,
                c = O.screen,
                d = M.location;
            a.set(lb, ya(a.get(ec)));
            if (d) {
                var e = d.pathname || "";
                "/" != e.charAt(0) && (J(31), e = "/" + e);
                a.set(kb, d.protocol + "//" + d.hostname +
                    e + d.search)
            }
            c && a.set(qb, c.width + "x" + c.height);
            c && a.set(pb, c.colorDepth + "-bit");
            var c = M.documentElement,
                g = (e = M.body) && e.clientWidth && e.clientHeight,
                ca = [];
            c && c.clientWidth && c.clientHeight && ("CSS1Compat" === M.compatMode || !g) ? ca = [c.clientWidth, c.clientHeight] : g && (ca = [e.clientWidth, e.clientHeight]);
            c = 0 >= ca[0] || 0 >= ca[1] ? "" : ca.join("x");
            a.set(rb, c);
            a.set(tb, fc());
            a.set(ob, M.characterSet || M.charset);
            a.set(sb, b && "function" === typeof b.javaEnabled && b.javaEnabled() || !1);
            a.set(nb, (b && (b.language || b.browserLanguage) ||
                "").toLowerCase());
            if (d && a.get(cc) && (b = M.location.hash)) {
                b = b.split(/[?&#]+/);
                d = [];
                for (c = 0; c < b.length; ++c)(D(b[c], "utm_id") || D(b[c], "utm_campaign") || D(b[c], "utm_source") || D(b[c], "utm_medium") || D(b[c], "utm_term") || D(b[c], "utm_content") || D(b[c], "gclid") || D(b[c], "dclid") || D(b[c], "gclsrc")) && d.push(b[c]);
                0 < d.length && (b = "#" + d.join("&"), a.set(kb, a.get(kb) + b))
            }
        };
    pc.prototype.get = function(a) {
        return this.b.get(a)
    };
    pc.prototype.set = function(a, b) {
        this.b.set(a, b)
    };
    var qc = {
        pageview: [mb],
        event: [ub, xb, yb, zb],
        social: [Bb, Cb, Db],
        timing: [Mb, Nb, Pb, Ob]
    };
    pc.prototype.send = function(a) {
        if (!(1 > arguments.length)) {
            if ("string" === typeof arguments[0]) {
                var b = arguments[0];
                var c = [].slice.call(arguments, 1)
            } else b = arguments[0] && arguments[0][Va], c = arguments;
            b && (c = za(qc[b] || [], c), c[Va] = b, this.b.set(c, void 0, !0), this.filters.D(this.b), this.b.data.m = {}, Ed(this.ra, this.b) && da(this.b.get(Na)))
        }
    };
    pc.prototype.ma = function(a, b) {
        var c = this;
        u(a, c, b) || (v(a, function() {
            u(a, c, b)
        }), y(String(c.get(V)), a, void 0, b, !0))
    };
    var rc = function(a) {
            if ("prerender" == M.visibilityState) return !1;
            a();
            return !0
        },
        z = function(a) {
            if (!rc(a)) {
                J(16);
                var b = !1,
                    c = function() {
                        if (!b && rc(a)) {
                            b = !0;
                            var d = c,
                                e = M;
                            e.removeEventListener ? e.removeEventListener("visibilitychange", d, !1) : e.detachEvent && e.detachEvent("onvisibilitychange", d)
                        }
                    };
                L(M, "visibilitychange", c)
            }
        };
    var td = /^(?:(\w+)\.)?(?:(\w+):)?(\w+)$/,
        sc = function(a) {
            if (ea(a[0])) this.u = a[0];
            else {
                var b = td.exec(a[0]);
                null != b && 4 == b.length && (this.c = b[1] || "t0", this.K = b[2] || "", this.C = b[3], this.a = [].slice.call(a, 1), this.K || (this.A = "create" == this.C, this.i = "require" == this.C, this.g = "provide" == this.C, this.ba = "remove" == this.C), this.i && (3 <= this.a.length ? (this.X = this.a[1], this.W = this.a[2]) : this.a[1] && (qa(this.a[1]) ? this.X = this.a[1] : this.W = this.a[1])));
                b = a[1];
                a = a[2];
                if (!this.C) throw "abort";
                if (this.i && (!qa(b) || "" == b)) throw "abort";
                if (this.g && (!qa(b) || "" == b || !ea(a))) throw "abort";
                if (ud(this.c) || ud(this.K)) throw "abort";
                if (this.g && "t0" != this.c) throw "abort";
            }
        };

    function ud(a) {
        return 0 <= a.indexOf(".") || 0 <= a.indexOf(":")
    };
    var Yd, Zd, $d, A;
    Yd = new ee;
    $d = new ee;
    A = new ee;
    Zd = {
        ec: 45,
        ecommerce: 46,
        linkid: 47
    };
    var u = function(a, b, c) {
            b == N || b.get(V);
            var d = Yd.get(a);
            if (!ea(d)) return !1;
            b.plugins_ = b.plugins_ || new ee;
            if (b.plugins_.get(a)) return !0;
            b.plugins_.set(a, new d(b, c || {}));
            return !0
        },
        y = function(a, b, c, d, e) {
            if (!ea(Yd.get(b)) && !$d.get(b)) {
                Zd.hasOwnProperty(b) && J(Zd[b]);
                if (p.test(b)) {
                    J(52);
                    a = N.j(a);
                    if (!a) return !0;
                    c = d || {};
                    d = {
                        id: b,
                        B: c.dataLayer || "dataLayer",
                        ia: !!a.get("anonymizeIp"),
                        sync: e,
                        G: !1
                    };
                    a.get("&gtm") == b && (d.G = !0);
                    var g = String(a.get("name"));
                    "t0" != g && (d.target = g);
                    G(String(a.get("trackingId"))) || (d.clientId =
                        String(a.get(Q)), d.ka = Number(a.get(n)), c = c.palindrome ? r : q, c = (c = M.cookie.replace(/^|(; +)/g, ";").match(c)) ? c.sort().join("").substring(1) : void 0, d.la = c, d.qa = E(a.b.get(kb) || "", "gclid"));
                    a = d.B;
                    c = (new Date).getTime();
                    O[a] = O[a] || [];
                    c = {
                        "gtm.start": c
                    };
                    e || (c.event = "gtm.js");
                    O[a].push(c);
                    c = t(d)
                }!c && Zd.hasOwnProperty(b) ? (J(39), c = b + ".js") : J(43);
                c && (c && 0 <= c.indexOf("/") || (c = (Ba || Ud() ? "https:" : "http:") + "//www.google-analytics.com/plugins/ua/" + c), d = ae(c), a = d.protocol, c = M.location.protocol, ("https:" == a || a == c || ("http:" !=
                    a ? 0 : "http:" == c)) && B(d) && (wa(d.url, void 0, e), $d.set(b, !0)))
            }
        },
        v = function(a, b) {
            var c = A.get(a) || [];
            c.push(b);
            A.set(a, c)
        },
        C = function(a, b) {
            Yd.set(a, b);
            b = A.get(a) || [];
            for (var c = 0; c < b.length; c++) b[c]();
            A.set(a, [])
        },
        B = function(a) {
            var b = ae(M.location.href);
            if (D(a.url, "https://www.google-analytics.com/gtm/js?id=")) return !0;
            if (a.query || 0 <= a.url.indexOf("?") || 0 <= a.path.indexOf("://")) return !1;
            if (a.host == b.host && a.port == b.port) return !0;
            b = "http:" == a.protocol ? 80 : 443;
            return "www.google-analytics.com" == a.host && (a.port ||
                b) == b && D(a.path, "/plugins/") ? !0 : !1
        },
        ae = function(a) {
            function b(a) {
                var b = (a.hostname || "").split(":")[0].toLowerCase(),
                    c = (a.protocol || "").toLowerCase(),
                    c = 1 * a.port || ("http:" == c ? 80 : "https:" == c ? 443 : "");
                a = a.pathname || "";
                D(a, "/") || (a = "/" + a);
                return [b, "" + c, a]
            }
            var c = M.createElement("a");
            c.href = M.location.href;
            var d = (c.protocol || "").toLowerCase(),
                e = b(c),
                g = c.search || "",
                ca = d + "//" + e[0] + (e[1] ? ":" + e[1] : "");
            D(a, "//") ? a = d + a : D(a, "/") ? a = ca + a : !a || D(a, "?") ? a = ca + e[2] + (a || g) : 0 > a.split("/")[0].indexOf(":") && (a = ca + e[2].substring(0,
                e[2].lastIndexOf("/")) + "/" + a);
            c.href = a;
            d = b(c);
            return {
                protocol: (c.protocol || "").toLowerCase(),
                host: d[0],
                port: d[1],
                path: d[2],
                query: c.search || "",
                url: a || ""
            }
        };
    var Z = {
        ga: function() {
            Z.f = []
        }
    };
    Z.ga();
    Z.D = function(a) {
        var b = Z.J.apply(Z, arguments),
            b = Z.f.concat(b);
        for (Z.f = []; 0 < b.length && !Z.v(b[0]) && !(b.shift(), 0 < Z.f.length););
        Z.f = Z.f.concat(b)
    };
    Z.J = function(a) {
        for (var b, c = [], d = 0; d < arguments.length; d++) try {
            b = new sc(arguments[d]), b.g ? C(b.a[0], b.a[1]) : (b.i && (b.ha = y(b.c, b.a[0], b.X, b.W)), c.push(b))
        } catch (e) {}
        return c
    };
    Z.v = function(a) {
        try {
            if (a.u) a.u.call(O, N.j("t0"));
            else {
                var b = a.c == gb ? N : N.j(a.c);
                if (a.A) "t0" != a.c || N.create.apply(N, a.a);
                else if (a.ba) N.remove(a.c);
                else if (b)
                    if (a.i) {
                        if (a.ha && (a.ha = y(a.c, a.a[0], a.X, a.W)), !u(a.a[0], b, a.W)) return !0
                    } else if (a.K) {
                    var c = a.C,
                        d = a.a,
                        e = b.plugins_.get(a.K);
                    e[c].apply(e, d)
                } else b[a.C].apply(b, a.a)
            }
        } catch (g) {}
    };
    var N = function(a) {
        J(1);
        Z.D.apply(Z, [arguments])
    };
    N.h = {};
    N.P = [];
    N.L = 0;
    N.answer = 42;
    var uc = [Na, W, V];
    N.create = function(a) {
        var b = za(uc, [].slice.call(arguments));
        b[V] || (b[V] = "t0");
        var c = "" + b[V];
        if (N.h[c]) return N.h[c];
        b = new pc(b);
        N.h[c] = b;
        N.P.push(b);
        return b
    };
    N.remove = function(a) {
        for (var b = 0; b < N.P.length; b++)
            if (N.P[b].get(V) == a) {
                N.P.splice(b, 1);
                N.h[a] = null;
                break
            }
    };
    N.j = function(a) {
        return N.h[a]
    };
    N.getAll = function() {
        return N.P.slice(0)
    };
    N.N = function() {
        "ga" != gb && J(49);
        var a = O[gb];
        if (!a || 42 != a.answer) {
            N.L = a && a.l;
            N.loaded = !0;
            var b = O[gb] = N;
            X("create", b, b.create);
            X("remove", b, b.remove);
            X("getByName", b, b.j, 5);
            X("getAll", b, b.getAll, 6);
            b = pc.prototype;
            X("get", b, b.get, 7);
            X("set", b, b.set, 4);
            X("send", b, b.send);
            X("requireSync", b, b.ma);
            b = Ya.prototype;
            X("get", b, b.get);
            X("set", b, b.set);
            if (!Ud() && !Ba) {
                a: {
                    for (var b = M.getElementsByTagName("script"), c = 0; c < b.length && 100 > c; c++) {
                        var d = b[c].src;
                        if (d && 0 == d.indexOf("https://www.google-analytics.com/analytics")) {
                            J(33);
                            b = !0;
                            break a
                        }
                    }
                    b = !1
                }
                b && (Ba = !0)
            }
            Ud() || Ba || !Ed(new Od(1E4)) || (J(36), Ba = !0);
            (O.gaplugins = O.gaplugins || {}).Linker = Dc;
            b = Dc.prototype;
            C("linker", Dc);
            X("decorate", b, b.ca, 20);
            X("autoLink", b, b.S, 25);
            C("displayfeatures", fd);
            C("adfeatures", fd);
            a = a && a.q;
            ka(a) ? Z.D.apply(N, a) : J(50)
        }
    };
    N.da = function() {
        for (var a = N.getAll(), b = 0; b < a.length; b++) a[b].get(V)
    };
    var ra = N.N,
        va = O[gb];
    va && va.r ? ra() : z(ra);
    z(function() {
        Z.D(["provide", "render", ua])
    });

    function La(a) {
        var b = 1,
            c;
        if (a)
            for (b = 0, c = a.length - 1; 0 <= c; c--) {
                var d = a.charCodeAt(c);
                b = (b << 6 & 268435455) + d + (d << 14);
                d = b & 266338304;
                b = 0 != d ? b ^ d >> 21 : b
            }
        return b
    };
})(window);

//# sourceURL=https://www.google-analytics.com/analytics.js
                                    

#13 JavaScript::Eval (size: 353, repeated: 1) - SHA256: 1e154d91a01d75c928e4b77a652f0a19b9d7fb76e38c0b51e33635123095c99d

                                        (function(d, s, id) {
    var js, fjs = d.getElementsByTagName(s)[0];
    if (d.getElementById(id)) return;
    js = d.createElement(s);
    js.id = id;
    js.src = "//connect.facebook.net/en_GB/sdk.js#xfbml=1&version=v2.7&appId=356813211132419";
    fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//# sourceURL=inline-77af260f76.js
                                    

#14 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 9b95dacff2bc1665a1d6ccd5d5278f2865960aa87f8cab19e17343b2d2ad4a5e

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293652753
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#15 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 33f7e0edfe4c2abe26416a0804cbb3bc77ceaef8a119882a1be3c623faab2742

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293655936
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#16 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 90887c7f168032cee69c6669b9a642013263fc168d9ae04c24ee89a4f2a1f1b1

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293659181
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#17 JavaScript::Eval (size: 118, repeated: 1) - SHA256: df41aa1c19a23c2a1094f1e07c4087f844749ee75a5530f6c7ac5e089433b0fa

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293660171
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#18 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 325fd0e77bf3fe7ccebbe6670c026a59351c7d11b4fae0385b1a71270a8c00f6

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293661090
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#19 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 09fd7a0a11795658cbbfa5f63f4aed212f75a2cb38b8428915bfc4045f1c5671

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293662030
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#20 JavaScript::Eval (size: 118, repeated: 1) - SHA256: c71caf16229f27fc0f82dc6cb866d9e00e143a6ea316ea19873fec5f21571f44

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293662665
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#21 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 463c0564d6b468de49e47b5cce5a69224c207fc1ccf37eda8db7dd68ad60a2bb

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293663493
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#22 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 851ecf44483d74a5366363f0161e3ef88051f2820879be8842a41227dd8b220f

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293664329
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#23 JavaScript::Eval (size: 118, repeated: 1) - SHA256: de69396c9bff9d69cb65915eda037ffc10371a3a75ba836a305aca5835dd72c7

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293665122
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#24 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 476a7c79c44db5b35f5e670fb49bcc3b528a572fb51466328e06648b51676b96

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293665993
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#25 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 976f2c27980ed0204f297f5e471bb1105995f3609ed96aac4c76267b03ffa871

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293667462
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#26 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 2c40c8dd60b3506cf56d9fd84d3cb00897b5d3bd5f6a3ea0874c8a71ad37792b

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293668443
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#27 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 17bbe13bd6df693ce88ce9cf44de03ee2c765405ef2d5260b01ec83759f7cdff

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293670231
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#28 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 02bba6f0ed5c186bd0268d3a1b1a9763ab540a5aaa3b9a09990e56cb02248b55

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293672197
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#29 JavaScript::Eval (size: 118, repeated: 1) - SHA256: ff1b0b6b3f40521a829a7092d62dbed7e26efdd6ba9de79b4bb8335a1e6bffca

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293673741
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#30 JavaScript::Eval (size: 118, repeated: 1) - SHA256: f8da263f3d76bf05d98fe0750ad13a604a6c9a5416cabe57e44148e88aa0cb15

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293675450
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#31 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 0e794a03f5425394e44a53f77791ac8d22b38db2f89622848f6c0d1d719e5439

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293676860
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#32 JavaScript::Eval (size: 118, repeated: 1) - SHA256: d239dc474a1bc9d068a99980fad28053ae3652c64be16c0b0c42e65aeb144174

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293678400
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#33 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 1bdb0b9744ba81931b9bb8e7151946ff1d6cea68b243f0418889143595d4ab13

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293681435
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#34 JavaScript::Eval (size: 118, repeated: 1) - SHA256: e26ebd5c8057b5b4a06f52fe498584d7f982681eb3984b906cfc29763c1b5430

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293683157
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#35 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 6a20fb8d25a2a5d5fa71ca00768c28c44b42c9eeb8d026209e14d67d690373c3

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293685844
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#36 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 3ac1898f7504b21e6a485b1457308a9446cea81bfb0264a85499bfa2dd99f78d

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293687966
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#37 JavaScript::Eval (size: 118, repeated: 1) - SHA256: a30fdb6379ea1c91d6a130b45cd1faf6b5f9fd6d754b51205ba03bbdbd96aacf

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293691106
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#38 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 2a36c3c9704219349ce371083fafc9c3ecd788a5e04c9b5bbc8c8bbb1860d5a1

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293693613
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#39 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 5a600f62b10ef5377d9c55fdae8fe834ac156e9f7f439037b5ca207b68d5ae23

                                        ({
    "C60059": {
        "page": 1,
        "time": 1500293697102
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#40 JavaScript::Eval (size: 97, repeated: 1) - SHA256: d712df1ec5f2b0f77661c7a71ddce14ae6fb5e124a645162ebd845a75137fb4c

                                        ({
    "C60059": {
        "page": 1
    },
    "0": {
        "svspr": "",
        "svsds": 1,
        "TejndEEDj": "MTUwMDI5MzY1MjcyNzYwMDU5NDc2MQ=="
    }
})
                                    

#41 JavaScript::Eval (size: 50, repeated: 1) - SHA256: e484c282652fb15a7c9d0d776baaa8e68dd568b25177ead4dab93a97fa0903b5

                                        ({
    "C60059": {
        "page": 1
    },
    "0": {
        "svspr": "",
        "svsds": 1
    }
})
                                    

#42 JavaScript::Eval (size: 40, repeated: 1) - SHA256: dcf2457c1ab41b32396ab7a80fff4edd5edc0462c710c9a09dc802ce6c9a6c8b

                                        ({
    "C60059": {
        "page": 1
    },
    "0": {
        "svspr": ""
    }
})
                                    

#43 JavaScript::Eval (size: 30, repeated: 1) - SHA256: a85007fc42dbaaac6bdb1a13260201f91dde26957cb1da7a71427ea4e7a0fa2d

                                        ({
    "C60059": {
        "page": 1
    },
    "0": {}
})
                                    

#44 JavaScript::Eval (size: 8628, repeated: 1) - SHA256: bf0080dc017759570045f0fb1810a909f3c46e09aeb09d19677364a65e4fa45b

                                        /*
 * Lazy Load - jQuery plugin for lazy loading images
 *
 * Copyright (c) 2007-2013 Mika Tuupola
 *
 * Licensed under the MIT license:
 *   http://www.opensource.org/licenses/mit-license.php
 *
 * Project home:
 *   http://www.appelsiini.net/projects/lazyload
 *
 * Version:  1.8.4
 *
 */
(function($, window, document, undefined) {
    var $window = $(window);

    $.fn.lazyload = function(options) {
        var elements = this;
        var $container;
        var settings = {
            threshold: 0,
            failure_limit: 0,
            event: "scroll",
            effect: "show",
            container: window,
            data_attribute: "original",
            skip_invisible: true,
            appear: null,
            load: null
        };

        function update() {
            var counter = 0;

            elements.each(function() {
                var $this = $(this);
                if (settings.skip_invisible && !$this.is(":visible")) {
                    return;
                }
                if ($.abovethetop(this, settings) ||
                    $.leftofbegin(this, settings)) {
                    /* Nothing. */
                } else if (!$.belowthefold(this, settings) &&
                    !$.rightoffold(this, settings)) {
                    $this.trigger("appear");
                    /* if we found an image we'll load, reset the counter */
                    counter = 0;
                } else {
                    if (++counter > settings.failure_limit) {
                        return false;
                    }
                }
            });

        }

        if (options) {
            /* Maintain BC for a couple of versions. */
            if (undefined !== options.failurelimit) {
                options.failure_limit = options.failurelimit;
                delete options.failurelimit;
            }
            if (undefined !== options.effectspeed) {
                options.effect_speed = options.effectspeed;
                delete options.effectspeed;
            }

            $.extend(settings, options);
        }

        /* Cache container as jQuery as object. */
        $container = (settings.container === undefined ||
            settings.container === window) ? $window : $(settings.container);

        /* Fire one scroll event per scroll. Not one scroll event per image. */
        if (0 === settings.event.indexOf("scroll")) {
            $container.bind(settings.event, function(event) {
                return update();
            });
        }

        this.each(function() {
            var self = this;
            var $self = $(self);

            self.loaded = false;

            /* When appear is triggered load original image. */
            $self.one("appear", function() {
                if (!this.loaded) {
                    if (settings.appear) {
                        var elements_left = elements.length;
                        settings.appear.call(self, elements_left, settings);
                    }
                    $("<img />")
                        .bind("load", function() {
                            $self
                                .hide()
                                .attr("src", $self.data(settings.data_attribute))[settings.effect](settings.effect_speed);
                            self.loaded = true;

                            /* Remove image from array so it is not looped next time. */
                            var temp = $.grep(elements, function(element) {
                                return !element.loaded;
                            });
                            elements = $(temp);

                            if (settings.load) {
                                var elements_left = elements.length;
                                settings.load.call(self, elements_left, settings);
                            }
                        })
                        .attr("src", $self.data(settings.data_attribute));
                }
            });

            /* When wanted event is triggered load original image */
            /* by triggering appear.                              */
            if (0 !== settings.event.indexOf("scroll")) {
                $self.bind(settings.event, function(event) {
                    if (!self.loaded) {
                        $self.trigger("appear");
                    }
                });
            }
        });

        /* Check if something appears when window is resized. */
        $window.bind("resize", function(event) {
            update();
        });

        /* With IOS5 force loading images when navigating with back button. */
        /* Non optimal workaround. */
        if ((/iphone|ipod|ipad.*os 5/gi).test(navigator.appVersion)) {
            $window.bind("pageshow", function(event) {
                if (event.originalEvent.persisted) {
                    elements.each(function() {
                        $(this).trigger("appear");
                    });
                }
            });
        }

        /* Force initial check if images should appear. */
        $(window).load(function() {
            update();
        });

        return this;
    };

    /* Convenience methods in jQuery namespace.           */
    /* Use as  $.belowthefold(element, {threshold : 100, container : window}) */

    $.belowthefold = function(element, settings) {
        var fold;

        if (settings.container === undefined || settings.container === window) {
            fold = $window.height() + $window.scrollTop();
        } else {
            fold = $(settings.container).offset().top + $(settings.container).height();
        }

        return fold <= $(element).offset().top - settings.threshold;
    };

    $.rightoffold = function(element, settings) {
        var fold;

        if (settings.container === undefined || settings.container === window) {
            fold = $window.width() + $window.scrollLeft();
        } else {
            fold = $(settings.container).offset().left + $(settings.container).width();
        }

        return fold <= $(element).offset().left - settings.threshold;
    };

    $.abovethetop = function(element, settings) {
        var fold;

        if (settings.container === undefined || settings.container === window) {
            fold = $window.scrollTop();
        } else {
            fold = $(settings.container).offset().top;
        }

        return fold >= $(element).offset().top + settings.threshold + $(element).height();
    };

    $.leftofbegin = function(element, settings) {
        var fold;

        if (settings.container === undefined || settings.container === window) {
            fold = $window.scrollLeft();
        } else {
            fold = $(settings.container).offset().left;
        }

        return fold >= $(element).offset().left + settings.threshold + $(element).width();
    };

    $.inviewport = function(element, settings) {
        return !$.rightoffold(element, settings) && !$.leftofbegin(element, settings) &&
            !$.belowthefold(element, settings) && !$.abovethetop(element, settings);
    };

    /* Custom selectors for your convenience.   */
    /* Use as $("img:below-the-fold").something() or */
    /* $("img").filter(":below-the-fold").something() which is faster */

    $.extend($.expr[':'], {
        "below-the-fold": function(a) {
            return $.belowthefold(a, {
                threshold: 0
            });
        },
        "above-the-top": function(a) {
            return !$.belowthefold(a, {
                threshold: 0
            });
        },
        "right-of-screen": function(a) {
            return $.rightoffold(a, {
                threshold: 0
            });
        },
        "left-of-screen": function(a) {
            return !$.rightoffold(a, {
                threshold: 0
            });
        },
        "in-viewport": function(a) {
            return $.inviewport(a, {
                threshold: 0
            });
        },
        /* Maintain BC for couple of versions. */
        "above-the-fold": function(a) {
            return !$.belowthefold(a, {
                threshold: 0
            });
        },
        "right-of-fold": function(a) {
            return $.rightoffold(a, {
                threshold: 0
            });
        },
        "left-of-fold": function(a) {
            return !$.rightoffold(a, {
                threshold: 0
            });
        }
    });

})(jQuery, window, document);

//# sourceURL=http://moviexk.org/wp-content/themes/moviexk/js/jquery.lazyload.js
                                    

#45 JavaScript::Eval (size: 527, repeated: 1) - SHA256: a6be3138f37765ded436d6088cbdccbe55cf12b2ed8df232303f283292fd56fc

                                        /* <![CDATA[ */ ! function(t, e, r, n, c, a, p) {
    try {
        t = document.currentScript || function() {
            for (t = document.getElementsByTagName('script'), e = t.length; e--;)
                if (t[e].getAttribute('data-cfhash')) return t[e]
        }();
        if (t && (c = t.previousSibling)) {
            p = t.parentNode;
            if (a = c.getAttribute('data-cfemail')) {
                for (e = '', r = '0x' + a.substr(0, 2) | 0, n = 2; a.length - n; n += 2) e += '%' + ('0' + ('0x' + a.substr(n, 2) ^ r).toString(16)).slice(-2);
                p.replaceChild(document.createTextNode(decodeURIComponent(e)), c)
            }
            p.removeChild(t)
        }
    } catch (u) {}
}() /* ]]> */
//# sourceURL=inline-24b0abe36d.js
                                    

#46 JavaScript::Eval (size: 141491, repeated: 1) - SHA256: 24ca39d934bb3231896d8fd1eac644fda674afac028a7ce890dcba831e1641c4

                                        /* JS */
gapi.loaded_0(function(_) {
    var window = this;
    var aa, vf, Na, Pa, ib, Fb, jb, Mb, bc, ia, la;
    for (_.k, _.b = function(a) {
            return function() {
                return aa[a].apply(this, arguments)
            }
        }, _.d = function(a, c) {
            return aa[a] = c
        }, _._DumpException = function(a) {
            throw a;
        }, aa = [], vf = "function" == typeof Object.defineProperties ? Object.defineProperty : function(a, c, f) {
            a != Array.prototype && a != Object.prototype && (a[c] = f.value)
        }, Na = "undefined" != typeof window && window === this ? this : "undefined" != typeof window.global && null != window.global ? window.global : this, Pa = function() {
            Pa = function() {};
            Na.Symbol || (Na.Symbol = ib)
        }, ib = function() {
            var a = 0;
            return function(c) {
                return "jscomp_symbol_" + (c || "") + a++
            }
        }(), _.sb = function() {
            Pa();
            var a = Na.Symbol.iterator;
            a || (a = Na.Symbol.iterator = Na.Symbol("iterator"));
            "function" != typeof Array.prototype[a] && vf(Array.prototype, a, {
                configurable: !0,
                writable: !0,
                value: function() {
                    return _.qb(this)
                }
            });
            _.sb = function() {}
        }, _.qb = function(a) {
            var c = 0;
            return Fb(function() {
                return c < a.length ? {
                    done: !1,
                    value: a[c++]
                } : {
                    done: !0
                }
            })
        }, Fb = function(a) {
            _.sb();
            a = {
                next: a
            };
            a[Na.Symbol.iterator] = function() {
                return this
            };
            return a
        }, jb = Na, Mb = ["String",
            "prototype", "startsWith"
        ], bc = 0; bc < Mb.length - 1; bc++) {
        var wc = Mb[bc];
        wc in jb || (jb[wc] = {});
        jb = jb[wc]
    }
    var Lc = Mb[Mb.length - 1],
        fe = jb[Lc],
        Te = fe ? fe : function(a, c) {
            if (null == this) throw new TypeError("The 'this' value for String.prototype.startsWith must not be null or undefined");
            if (a instanceof RegExp) throw new TypeError("First argument to String.prototype.startsWith must not be a regular expression");
            var f = this + "";
            a += "";
            var g = f.length,
                h = a.length;
            c = Math.max(0, Math.min(c | 0, f.length));
            for (var l = 0; l < h && c < g;)
                if (f[c++] != a[l++]) return !1;
            return l >= h
        };
    Te != fe && null != Te && vf(jb, Lc, {
        configurable: !0,
        writable: !0,
        value: Te
    });
    _.na = _.na || {};
    _.D = this;
    _.kf = function(a) {
        return void 0 !== a
    };
    _.fa = function(a) {
        return "string" == typeof a
    };
    _.da = function(a) {
        var c = typeof a;
        if ("object" == c)
            if (a) {
                if (a instanceof Array) return "array";
                if (a instanceof Object) return c;
                var f = Object.prototype.toString.call(a);
                if ("[object Window]" == f) return "object";
                if ("[object Array]" == f || "number" == typeof a.length && "undefined" != typeof a.splice && "undefined" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable("splice")) return "array";
                if ("[object Function]" == f || "undefined" != typeof a.call && "undefined" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable("call")) return "function"
            } else return "null";
        else if ("function" == c && "undefined" == typeof a.call) return "object";
        return c
    };
    _.ea = function(a) {
        return "array" == _.da(a)
    };
    _.re = function(a) {
        var c = _.da(a);
        return "array" == c || "object" == c && "number" == typeof a.length
    };
    _.oa = "closure_uid_" + (1E9 * Math.random() >>> 0);
    ia = function(a, c, f) {
        return a.call.apply(a.bind, arguments)
    };
    la = function(a, c, f) {
        if (!a) throw Error();
        if (2 < arguments.length) {
            var g = Array.prototype.slice.call(arguments, 2);
            return function() {
                var f = Array.prototype.slice.call(arguments);
                Array.prototype.unshift.apply(f, g);
                return a.apply(c, f)
            }
        }
        return function() {
            return a.apply(c, arguments)
        }
    };
    _.H = function(a, c, f) {
        _.H = Function.prototype.bind && -1 != Function.prototype.bind.toString().indexOf("native code") ? ia : la;
        return _.H.apply(null, arguments)
    };
    _.pa = Date.now || function() {
        return +new Date
    };
    _.J = function(a, c) {
        function f() {}
        f.prototype = c.prototype;
        a.T = c.prototype;
        a.prototype = new f;
        a.prototype.constructor = a;
        a.yc = function(a, f, l) {
            for (var g = Array(arguments.length - 2), h = 2; h < arguments.length; h++) g[h - 2] = arguments[h];
            return c.prototype[f].apply(a, g)
        }
    };
    _.L = window.osapi = window.osapi || {};
    window.___jsl = window.___jsl || {};
    (window.___jsl.cd = window.___jsl.cd || []).push({
        gwidget: {
            parsetags: "explicit"
        },
        appsapi: {
            plus_one_service: "/plus/v1"
        },
        csi: {
            rate: .01
        },
        poshare: {
            hangoutContactPickerServer: "https://plus.google.com"
        },
        gappsutil: {
            required_scopes: ["https://www.googleapis.com/auth/plus.me", "https://www.googleapis.com/auth/plus.people.recommended"],
            display_on_page_ready: !1
        },
        appsutil: {
            required_scopes: ["https://www.googleapis.com/auth/plus.me", "https://www.googleapis.com/auth/plus.people.recommended"],
            display_on_page_ready: !1
        },
        "oauth-flow": {
            authUrl: "https://accounts.google.com/o/oauth2/auth",
            proxyUrl: "https://accounts.google.com/o/oauth2/postmessageRelay",
            redirectUri: "postmessage",
            loggingUrl: "https://accounts.google.com/o/oauth2/client_log"
        },
        iframes: {
            sharebox: {
                params: {
                    json: "&"
                },
                url: ":socialhost:/:session_prefix:_/sharebox/dialog"
            },
            plus: {
                url: ":socialhost:/:session_prefix:_/widget/render/badge?usegapi=1"
            },
            ":socialhost:": "https://apis.google.com",
            ":im_socialhost:": "https://plus.googleapis.com",
            domains_suggest: {
                url: "https://domains.google.com/suggest/flow"
            },
            card: {
                params: {
                    s: "#",
                    userid: "&"
                },
                url: ":socialhost:/:session_prefix:_/hovercard/internalcard"
            },
            ":signuphost:": "https://plus.google.com",
            ":gplus_url:": "https://plus.google.com",
            plusone: {
                url: ":socialhost:/:session_prefix:_/+1/fastbutton?usegapi=1"
            },
            plus_share: {
                url: ":socialhost:/:session_prefix:_/+1/sharebutton?plusShare=true&usegapi=1"
            },
            plus_circle: {
                url: ":socialhost:/:session_prefix:_/widget/plus/circle?usegapi=1"
            },
            plus_followers: {
                url: ":socialhost:/_/im/_/widget/render/plus/followers?usegapi=1"
            },
            configurator: {
                url: ":socialhost:/:session_prefix:_/plusbuttonconfigurator?usegapi=1"
            },
            appcirclepicker: {
                url: ":socialhost:/:session_prefix:_/widget/render/appcirclepicker"
            },
            page: {
                url: ":socialhost:/:session_prefix:_/widget/render/page?usegapi=1"
            },
            person: {
                url: ":socialhost:/:session_prefix:_/widget/render/person?usegapi=1"
            },
            community: {
                url: ":ctx_socialhost:/:session_prefix::im_prefix:_/widget/render/community?usegapi=1"
            },
            follow: {
                url: ":socialhost:/:session_prefix:_/widget/render/follow?usegapi=1"
            },
            commentcount: {
                url: ":socialhost:/:session_prefix:_/widget/render/commentcount?usegapi=1"
            },
            comments: {
                url: ":socialhost:/:session_prefix:_/widget/render/comments?usegapi=1"
            },
            blogger: {
                url: ":socialhost:/:session_prefix:_/widget/render/blogger?usegapi=1"
            },
            youtube: {
                url: ":socialhost:/:session_prefix:_/widget/render/youtube?usegapi=1"
            },
            reportabuse: {
                url: ":socialhost:/:session_prefix:_/widget/render/reportabuse?usegapi=1"
            },
            additnow: {
                url: ":socialhost:/additnow/additnow.html"
            },
            udc_webconsentflow: {
                url: "https://myaccount.google.com/webconsent?usegapi=1"
            },
            appfinder: {
                url: "https://gsuite.google.com/:session_prefix:marketplace/appfinder?usegapi=1"
            },
            ":source:": "1p"
        },
        poclient: {
            update_session: "google.updateSessionCallback"
        },
        "googleapis.config": {
            methods: {
                "pos.plusones.list": !0,
                "pos.plusones.get": !0,
                "pos.plusones.insert": !0,
                "pos.plusones.delete": !0,
                "pos.plusones.getSignupState": !0
            },
            requestCache: {
                enabled: !0
            },
            versions: {
                pos: "v1"
            },
            rpc: "/rpc",
            root: "https://content.googleapis.com",
            "root-1p": "https://clients6.google.com",
            sessionCache: {
                enabled: !0
            },
            transport: {
                isProxyShared: !0
            },
            xd3: "/static/proxy.html",
            developerKey: "AIzaSyCKSbrvQasunBoV16zDH9R33D88CeLr9gQ",
            auth: {
                useInterimAuth: !1
            }
        },
        report: {
            apis: ["iframes\\..*", "gadgets\\..*", "gapi\\.appcirclepicker\\..*", "gapi\\.client\\..*"],
            rate: 1E-4
        }
    });

    window.___jsl = window.___jsl || {};
    (window.___jsl.cd = window.___jsl.cd || []).push({
        gwidget: {
            parsetags: "onload"
        },
        iframes: {
            ":source:": "3p"
        },
        "oauth-flow": {
            loggingUrl: null
        }
    });
    /*
     gapi.loader.OBJECT_CREATE_TEST_OVERRIDE &&*/
    _.Mu = function(a, c) {
        a = a.split(".");
        var f = _.D;
        a[0] in f || !f.execScript || f.execScript("var " + a[0]);
        for (var g; a.length && (g = a.shift());) !a.length && _.kf(c) ? f[g] = c : f = f[g] && f[g] !== Object.prototype[g] ? f[g] : f[g] = {}
    };
    _.ta = window;
    _.ua = window.document;
    _.Ha = _.ta.location;
    _.Ia = /\[native code\]/;
    _.Ka = function(a, c, f) {
        return a[c] = a[c] || f
    };
    _.r = function() {
        var a;
        if ((a = Object.create) && _.Ia.test(a)) a = a(null);
        else {
            a = {};
            for (var c in a) a[c] = void 0
        }
        return a
    };
    _.Qa = function(a, c) {
        return Object.prototype.hasOwnProperty.call(a, c)
    };
    _.Sl = function(a, c) {
        a = a || {};
        for (var f in a) _.Qa(a, f) && (c[f] = a[f])
    };
    _.Ua = _.Ka(_.ta, "gapi", {});
    _.e = function(a, c, f) {
        var g = new RegExp("([#].*&|[#])" + c + "=([^&#]*)", "g");
        c = new RegExp("([?#].*&|[?#])" + c + "=([^&#]*)", "g");
        if (a = a && (g.exec(a) || c.exec(a))) try {
            f = (0, window.decodeURIComponent)(a[2])
        } catch (h) {}
        return f
    };
    _.Xa = new RegExp(/^/.source + /([a-zA-Z][-+.a-zA-Z0-9]*:)?/.source + /(\/\/[^\/?#]*)?/.source + /([^?#]*)?/.source + /(\?([^#]*))?/.source + /(#((#|[^#])*))?/.source + /$/.source);
    _.Za = new RegExp(/(%([^0-9a-fA-F%]|[0-9a-fA-F]([^0-9a-fA-F%])?)?)*/.source + /%($|[^0-9a-fA-F]|[0-9a-fA-F]($|[^0-9a-fA-F]))/.source, "g");
    _.lc = new RegExp(/\/?\??#?/.source + "(" + /[\/?#]/i.source + "|" + /[\uD800-\uDBFF]/i.source + "|" + /%[c-f][0-9a-f](%[89ab][0-9a-f]){0,2}(%[89ab]?)?/i.source + "|" + /%[0-9a-f]?/i.source + ")$", "i");
    _.La = function(a, c, f) {
        _.ra(a, c, f, "add", "at")
    };
    _.ra = function(a, c, f, g, h) {
        if (a[g + "EventListener"]) a[g + "EventListener"](c, f, !1);
        else if (a[h + "tachEvent"]) a[h + "tachEvent"]("on" + c, f)
    };
    _.bb = _.Ka(_.ta, "___jsl", _.r());
    _.Ka(_.bb, "I", 0);
    _.Ka(_.bb, "hel", 10);
    var ya, za, Aa, Ba, Da, Ea, Hg;
    ya = function(a) {
        var c = window.___jsl = window.___jsl || {};
        c[a] = c[a] || [];
        return c[a]
    };
    za = function(a) {
        var c = window.___jsl = window.___jsl || {};
        c.cfg = !a && c.cfg || {};
        return c.cfg
    };
    Aa = function(a) {
        return "object" === typeof a && /\[native code\]/.test(a.push)
    };
    Ba = function(a, c, f) {
        if (c && "object" === typeof c)
            for (var g in c) !Object.prototype.hasOwnProperty.call(c, g) || f && "___goc" === g && "undefined" === typeof c[g] || (a[g] && c[g] && "object" === typeof a[g] && "object" === typeof c[g] && !Aa(a[g]) && !Aa(c[g]) ? Ba(a[g], c[g]) : c[g] && "object" === typeof c[g] ? (a[g] = Aa(c[g]) ? [] : {}, Ba(a[g], c[g])) : a[g] = c[g])
    };
    Da = function(a) {
        if (a && !/^\s+$/.test(a)) {
            for (; 0 == a.charCodeAt(a.length - 1);) a = a.substring(0, a.length - 1);
            try {
                var c = window.JSON.parse(a)
            } catch (f) {}
            if ("object" === typeof c) return c;
            try {
                c = (new Function("return (" + a + "\n)"))()
            } catch (f) {}
            if ("object" === typeof c) return c;
            try {
                c = (new Function("return ({" + a + "\n})"))()
            } catch (f) {}
            return "object" === typeof c ? c : {}
        }
    };
    Ea = function(a, c) {
        var f = {
            ___goc: void 0
        };
        a.length && a[a.length - 1] && Object.hasOwnProperty.call(a[a.length - 1], "___goc") && "undefined" === typeof a[a.length - 1].___goc && (f = a.pop());
        Ba(f, c);
        a.push(f)
    };
    Hg = function(a) {
        za(!0);
        var c = window.___gcfg,
            f = ya("cu"),
            g = window.___gu;
        c && c !== g && (Ea(f, c), window.___gu = c);
        c = ya("cu");
        var h = window.document.scripts || window.document.getElementsByTagName("script") || [];
        g = [];
        var l = [];
        l.push.apply(l, ya("us"));
        for (var n = 0; n < h.length; ++n)
            for (var q = h[n], t = 0; t < l.length; ++t) q.src && 0 == q.src.indexOf(l[t]) && g.push(q);
        0 == g.length && 0 < h.length && h[h.length - 1].src && g.push(h[h.length - 1]);
        for (h = 0; h < g.length; ++h) g[h].getAttribute("gapi_processed") || (g[h].setAttribute("gapi_processed", !0), (l = g[h]) ? (n = l.nodeType, l = 3 == n || 4 == n ? l.nodeValue : l.textContent || l.innerText || l.innerHTML || "") : l = void 0, (l = Da(l)) && c.push(l));
        a && Ea(f, a);
        g = ya("cd");
        a = 0;
        for (c = g.length; a < c; ++a) Ba(za(), g[a], !0);
        g = ya("ci");
        a = 0;
        for (c = g.length; a < c; ++a) Ba(za(), g[a], !0);
        a = 0;
        for (c = f.length; a < c; ++a) Ba(za(), f[a], !0)
    };
    _.P = function(a, c) {
        var f = za();
        if (!a) return f;
        a = a.split("/");
        for (var g = 0, h = a.length; f && "object" === typeof f && g < h; ++g) f = f[a[g]];
        return g === a.length && void 0 !== f ? f : c
    };
    _.Fa = function(a, c) {
        var f;
        if ("string" === typeof a) {
            var g = f = {};
            a = a.split("/");
            for (var h = 0, l = a.length; h < l - 1; ++h) {
                var n = {};
                g = g[a[h]] = n
            }
            g[a[h]] = c
        } else f = a;
        Hg(f)
    };
    var Ga = function() {
        var a = window.__GOOGLEAPIS;
        a && (a.googleapis && !a["googleapis.config"] && (a["googleapis.config"] = a.googleapis), _.Ka(_.bb, "ci", []).push(a), window.__GOOGLEAPIS = void 0)
    };
    Ga && Ga();
    Hg();
    _.Mu("gapi.config.get", _.P);
    _.Mu("gapi.config.update", _.Fa);
    _.Mu("gapi.plusone.render", _.pG);
    _.Mu("gapi.plusone.go", _.qG);
    var ye = function(a) {
            return 10 > a ? "0" + a : a
        },
        Ed = {
            "\b": "\\b",
            "\t": "\\t",
            "\n": "\\n",
            "\f": "\\f",
            "\r": "\\r",
            '"': '\\"',
            "\\": "\\\\"
        },
        Nd = function(a) {
            var c;
            var f = /[\"\\\x00-\x1f\x7f-\x9f]/g;
            if (void 0 !== a) {
                switch (typeof a) {
                    case "string":
                        return f.test(a) ? '"' + a.replace(f, function(a) {
                            var c = Ed[a];
                            if (c) return c;
                            c = a.charCodeAt();
                            return "\\u00" + Math.floor(c / 16).toString(16) + (c % 16).toString(16)
                        }) + '"' : '"' + a + '"';
                    case "number":
                        return (0, window.isFinite)(a) ? String(a) : "null";
                    case "boolean":
                    case "null":
                        return String(a);
                    case "object":
                        if (!a) return "null";
                        f = [];
                        if ("number" === typeof a.length && !a.propertyIsEnumerable("length")) {
                            var g = a.length;
                            for (c = 0; c < g; c += 1) f.push(Nd(a[c]) || "null");
                            return "[" + f.join(",") + "]"
                        }
                        for (c in a) !/___$/.test(c) && _.Qa(a, c) && "string" === typeof c && (g = Nd(a[c])) && f.push(Nd(c) + ":" + g);
                        return "{" + f.join(",") + "}"
                }
                return ""
            }
        },
        me = function(a) {
            if (!a) return !1;
            if (/^[\],:{}\s]*$/.test(a.replace(/\\["\\\/b-u]/g, "@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "]").replace(/(?:^|:|,)(?:\s*\[)+/g, ""))) try {
                return eval("(" +
                    a + ")")
            } catch (c) {}
            return !1
        },
        Qe = !1,
        af;
    try {
        Qe = !!window.JSON && '["a"]' === window.JSON.stringify(["a"]) && "a" === window.JSON.parse('["a"]')[0]
    } catch (a) {}
    af = function(a) {
        try {
            return window.JSON.parse(a)
        } catch (c) {
            return !1
        }
    };
    _.mf = Qe ? window.JSON.stringify : Nd;
    _.of = Qe ? af : me;
    af || (Date.prototype.toJSON = function() {
        return [this.getUTCFullYear(), "-", ye(this.getUTCMonth() + 1), "-", ye(this.getUTCDate()), "T", ye(this.getUTCHours()), ":", ye(this.getUTCMinutes()), ":", ye(this.getUTCSeconds()), "Z"].join("")
    });

    _.Mu("gadgets.json.stringify", _.mf);
    _.Mu("gadgets.json.parse", _.of);
    _.e(_.ta.location.href, "rpctoken") && _.La(_.ua, "unload", function() {});
    _.Rb = window.gapi && window.gapi.util || {};
    _.Vo = function(a) {
        if (!a) return "";
        a = a.split("#")[0].split("?")[0];
        a = a.toLowerCase();
        0 == a.indexOf("//") && (a = window.location.protocol + a);
        /^[\w\-]*:\/\//.test(a) || (a = window.location.href);
        var c = a.substring(a.indexOf("://") + 3),
            f = c.indexOf("/"); - 1 != f && (c = c.substring(0, f));
        a = a.substring(0, a.indexOf("://"));
        if ("http" !== a && "https" !== a && "chrome-extension" !== a && "file" !== a && "android-app" !== a && "chrome-search" !== a) throw Error("Pa");
        f = "";
        var g = c.indexOf(":");
        if (-1 != g) {
            var h = c.substring(g + 1);
            c = c.substring(0, g);
            if ("http" === a && "80" !== h || "https" === a && "443" !== h) f = ":" + h
        }
        return a + "://" + c + f
    };

    _.Rb.Pq = function(a) {
        return _.Vo(a)
    };
    _.Kd = window.console;
    _.kd = function(a) {
        _.Kd && _.Kd.log && _.Kd.log(a)
    };
    _.ke = function() {};
    _.R = _.R || {};
    _.R = _.R || {};
    (function() {
        var a = null;
        _.R.Qc = function(c) {
            var f = "undefined" === typeof c;
            if (null !== a && f) return a;
            var g = {};
            c = c || window.location.href;
            var h = c.indexOf("?"),
                l = c.indexOf("#");
            c = (-1 === l ? c.substr(h + 1) : [c.substr(h + 1, l - h - 1), "&", c.substr(l + 1)].join("")).split("&");
            h = window.decodeURIComponent ? window.decodeURIComponent : window.unescape;
            l = 0;
            for (var n = c.length; l < n; ++l) {
                var q = c[l].indexOf("=");
                if (-1 !== q) {
                    var t = c[l].substring(0, q);
                    q = c[l].substring(q + 1);
                    q = q.replace(/\+/g, " ");
                    try {
                        g[t] = h(q)
                    } catch (v) {}
                }
            }
            f && (a = g);
            return g
        };
        _.R.Qc()
    })();
    _.Mu("gadgets.util.getUrlParameters", _.R.Qc);
    var jz = function(a) {
            this.h3 = a;
            this.uu = _.ta;
            this.Vba = this.gea;
            this.Aea = /MSIE\s*[0-8](\D|$)/.test(window.navigator.userAgent);
            if (this.h3.RE) {
                this.uu = this.h3.kq(this.uu, this.h3.RE);
                a = this.uu.document;
                var c = a.createElement("script");
                c.setAttribute("type", "text/javascript");
                c.text = "window.doPostMsg=function(w,s,o) {window.setTimeout(function(){w.postMessage(s,o);},0);};";
                a.body.appendChild(c);
                this.Vba = this.uu.doPostMsg
            }
            this.E9 = {};
            this.T9 = {};
            a = (0, _.H)(this.p7, this);
            _.La(this.uu, "message", a);
            _.Ka(_.bb, "RPMQ", []).push(a);
            this.uu != this.uu.parent && CC(this, this.uu.parent, "{h:'" + (0, window.escape)(this.uu.name) + "'}", "*")
        },
        qn = function(a) {
            var c = null;
            0 === a.indexOf("{h:'") && a.indexOf("'}") === a.length - 2 && (c = (0, window.unescape)(a.substring(4, a.length - 2)));
            return c
        },
        kz = function(a) {
            if (!/^\s*{/.test(a)) return !1;
            a = (0, _.of)(a);
            return null !== a && "object" === typeof a && !!a.g
        };
    jz.prototype.p7 = function(a) {
        var c = String(a.data);
        (0, _.ke)("gapi.rpc.receive(" + Qz + "): " + (!c || 512 >= c.length ? c : c.substr(0, 512) + "... (" + c.length + " bytes)"));
        var f = 0 !== c.indexOf("!_");
        f || (c = c.substring(2));
        var g = kz(c);
        if (!f && !g) {
            if (!g && (f = qn(c))) {
                if (this.E9[f]) this.E9[f]();
                else this.T9[f] = 1;
                return
            }
            var h = a.origin,
                l = this.h3.zp;
            this.Aea ? _.ta.setTimeout(function() {
                l(c, h)
            }, 0) : l(c, h)
        }
    };
    jz.prototype.sf = function(a, c) {
        ".." === a || this.T9[a] ? (c(), delete this.T9[a]) : this.E9[a] = c
    };
    var CC = function(a, c, f, g) {
        var h = kz(f) ? "" : "!_";
        (0, _.ke)("gapi.rpc.send(" + Qz + "): " + (!f || 512 >= f.length ? f : f.substr(0, 512) + "... (" + f.length + " bytes)"));
        a.Vba(c, h + f, g)
    };
    jz.prototype.gea = function(a, c, f) {
        a.postMessage(c, f)
    };
    jz.prototype.send = function(a, c, f) {
        (a = this.h3.kq(this.uu, a)) && !a.closed && CC(this, a, c, f)
    };
    var Rz, Hz, pz, uz, Nz, Sz, Pz, Oz, Dl, Qz, Cz, Ez, mz, Gz, nz, oz, qz, rz, yz, xz, zz, Bz, Dz, Fz, tz, vz, Iz, Jz, Kz, Lz;
    Rz = 0;
    Hz = [];
    pz = {};
    uz = {};
    Nz = _.R.Qc;
    Sz = Nz();
    Pz = Sz.rpctoken;
    Oz = Sz.parent || _.ua.referrer;
    Dl = Sz.rly;
    Qz = Dl || (_.ta !== _.ta.top || _.ta.opener) && _.ta.name || "..";
    Cz = null;
    Ez = {};
    mz = function() {};
    Gz = {
        send: mz,
        sf: mz
    };
    nz = function(a, c) {
        "/" == c.charAt(0) && (c = c.substring(1), a = _.ta.top);
        for (c = c.split("/"); c.length;) {
            var f = c.shift();
            "{" == f.charAt(0) && "}" == f.charAt(f.length - 1) && (f = f.substring(1, f.length - 1));
            if (".." === f) a = a == a.parent ? a.opener : a.parent;
            else if (".." !== f && a.frames[f]) {
                if (a = a.frames[f], !("postMessage" in a)) throw "Not a window";
            } else return null
        }
        return a
    };
    oz = function(a) {
        return (a = pz[a]) && a.ve
    };
    qz = function(a) {
        if (a.f in {}) return !1;
        var c = a.t,
            f = pz[a.r];
        a = a.origin;
        return f && (f.ve === c || !f.ve && !c) && (a === f.origin || "*" === f.origin)
    };
    rz = function(a) {
        var c = a.id.split("/"),
            f = c[c.length - 1],
            g = a.origin;
        return function(a) {
            var c = a.origin;
            return a.f == f && (g == c || "*" == g)
        }
    };
    _.sz = function(a, c, f) {
        a = tz(a);
        uz[a.name] = {
            Ip: c,
            lf: a.lf,
            Us: f || qz
        };
        vz()
    };
    _.wz = function(a) {
        delete uz[tz(a).name]
    };
    yz = {};
    xz = function(a, c) {
        (a = yz["_" + a]) && a[1](this) && a[0].call(this, c)
    };
    zz = function(a) {
        var c = a.c;
        if (!c) return mz;
        var f = a.r,
            g = a.g ? "legacy__" : "";
        return function() {
            var a = [].slice.call(arguments, 0);
            a.unshift(f, g + "__cb", null, c);
            _.Az.apply(null, a)
        }
    };
    Bz = function(a) {
        Cz = a
    };
    Dz = function(a) {
        Ez[a] || (Ez[a] = _.ta.setTimeout(function() {
            Ez[a] = !1;
            Fz(a)
        }, 0))
    };
    Fz = function(a) {
        var c = pz[a];
        if (c && c.ready) {
            var f = c.kj;
            for (c.kj = []; f.length;) Gz.send(a, (0, _.mf)(f.shift()), c.origin)
        }
    };
    tz = function(a) {
        return 0 === a.indexOf("legacy__") ? {
            name: a.substring(8),
            lf: !0
        } : {
            name: a,
            lf: !1
        }
    };
    vz = function() {
        for (var a = _.P("rpc/residenceSec") || 60, c = (new Date).getTime() / 1E3, f = 0, g; g = Hz[f]; ++f) {
            var h = g.qf;
            if (!h || 0 < a && c - g.timestamp > a) Hz.splice(f, 1), --f;
            else {
                var l = h.s,
                    n = uz[l] || uz["*"];
                if (n)
                    if (Hz.splice(f, 1), --f, h.origin = g.origin, g = zz(h), h.callback = g, n.Us(h)) {
                        if ("__cb" !== l && !!n.lf != !!h.g) break;
                        h = n.Ip.apply(h, h.a);
                        void 0 !== h && g(h)
                    } else(0, _.ke)("gapi.rpc.rejected(" + Qz + "): " + l)
            }
        }
    };
    Iz = function(a, c, f) {
        Hz.push({
            qf: a,
            origin: c,
            timestamp: (new Date).getTime() / 1E3
        });
        f || vz()
    };
    Jz = function(a, c) {
        a = (0, _.of)(a);
        Iz(a, c, !1)
    };
    Kz = function(a) {
        for (; a.length;) Iz(a.shift(), this.origin, !0);
        vz()
    };
    Lz = function(a) {
        var c = !1;
        a = a.split("|");
        var f = a[0];
        0 <= f.indexOf("/") && (c = !0);
        return {
            id: f,
            origin: a[1] || "*",
            Ki: c
        }
    };
    _.Mz = function(a, c, f, g) {
        var h = Lz(a);
        g && (_.ta.frames[h.id] = _.ta.frames[h.id] || g);
        a = h.id;
        if (!pz.hasOwnProperty(a)) {
            f = f || null;
            g = h.origin;
            if (".." === a) g = _.Rb.Pq(Oz), f = f || Pz;
            else if (!h.Ki) {
                var l = _.ua.getElementById(a);
                l && (l = l.src, g = _.Rb.Pq(l), f = f || Nz(l).rpctoken)
            }
            "*" === h.origin && g || (g = h.origin);
            pz[a] = {
                ve: f,
                kj: [],
                origin: g,
                hs: c,
                xm: function() {
                    var c = a;
                    pz[c].ready = 1;
                    Fz(c)
                }
            };
            Gz.sf(a, pz[a].xm)
        }
        return pz[a].xm
    };
    _.Az = function(a, c, f, g) {
        a = a || "..";
        _.Mz(a);
        a = a.split("|", 1)[0];
        var h = c,
            l = [].slice.call(arguments, 3),
            n = f,
            q = Qz,
            t = Pz,
            v = pz[a],
            w = q,
            A = Lz(a);
        if (v && ".." !== a) {
            if (A.Ki) {
                if (!(t = pz[a].hs)) {
                    t = Cz ? Cz.substring(1).split("/") : [Qz];
                    w = t.length - 1;
                    for (var F = _.ta.parent; F !== _.ta.top;) {
                        var z = F.parent;
                        if (!w--) {
                            for (var I = null, E = z.frames.length, K = 0; K < E; ++K) z.frames[K] == F && (I = K);
                            t.unshift("{" + I + "}")
                        }
                        F = z
                    }
                    t = "/" + t.join("/")
                }
                w = t
            } else w = q = "..";
            t = v.ve
        }
        n && A ? (v = qz, A.Ki && (v = rz(A)), yz["_" + ++Rz] = [n, v], n = Rz) : n = null;
        l = {
            s: h,
            f: q,
            r: w,
            t: t,
            c: n,
            a: l
        };
        h = tz(h);
        l.s = h.name;
        l.g = h.lf;
        pz[a].kj.push(l);
        Dz(a)
    };
    if ("function" === typeof _.ta.postMessage || "object" === typeof _.ta.postMessage) Gz = new jz({
        RE: Dl ? "../" + Dl : null,
        zp: Jz,
        kq: nz,
        GP: Qz,
        $f: oz,
        $P: Bz
    }), _.sz("__cb", xz, function() {
        return !0
    }), _.sz("_processBatch", Kz, function() {
        return !0
    }), _.Mz("..");

    _.V = {};
    _.Sb = {};
    window.iframer = _.Sb;
    _.Vg = function(a) {
        var c = typeof a;
        return "object" == c && null != a || "function" == c
    };
    _.qe = function(a) {
        return "number" == typeof a
    };
    _.Ge = String.prototype.trim ? function(a) {
        return a.trim()
    } : function(a) {
        return a.replace(/^[\s\xa0]+|[\s\xa0]+$/g, "")
    };
    _.Gf = String.prototype.repeat ? function(a, c) {
        return a.repeat(c)
    } : function(a, c) {
        return Array(c + 1).join(a)
    };
    _.ne = 2147483648 * Math.random() | 0;
    var pe;
    _.jd = function(a, c) {
        return 0 == a.lastIndexOf(c, 0)
    };
    pe = 0;
    _.oe = function(a) {
        return a[_.oa] || (a[_.oa] = ++pe)
    };
    _.Cg = function(a) {
        return String(a).replace(/\-([a-z])/g, function(a, f) {
            return f.toUpperCase()
        })
    };
    _.im = function(a) {
        return /^[\s\xa0]*$/.test(a)
    };
    _.vd = function(a) {
        return "function" == _.da(a)
    };
    _.we = Array.prototype.indexOf ? function(a, c, f) {
        return Array.prototype.indexOf.call(a, c, f)
    } : function(a, c, f) {
        f = null == f ? 0 : 0 > f ? Math.max(0, a.length + f) : f;
        if (_.fa(a)) return _.fa(c) && 1 == c.length ? a.indexOf(c, f) : -1;
        for (; f < a.length; f++)
            if (f in a && a[f] === c) return f;
        return -1
    };
    _.Wf = Array.prototype.lastIndexOf ? function(a, c, f) {
        return Array.prototype.lastIndexOf.call(a, c, null == f ? a.length - 1 : f)
    } : function(a, c, f) {
        f = null == f ? a.length - 1 : f;
        0 > f && (f = Math.max(0, a.length + f));
        if (_.fa(a)) return _.fa(c) && 1 == c.length ? a.lastIndexOf(c, f) : -1;
        for (; 0 <= f; f--)
            if (f in a && a[f] === c) return f;
        return -1
    };
    _.Be = Array.prototype.forEach ? function(a, c, f) {
        Array.prototype.forEach.call(a, c, f)
    } : function(a, c, f) {
        for (var g = a.length, h = _.fa(a) ? a.split("") : a, l = 0; l < g; l++) l in h && c.call(f, h[l], l, a)
    };
    _.Ce = Array.prototype.filter ? function(a, c, f) {
        return Array.prototype.filter.call(a, c, f)
    } : function(a, c, f) {
        for (var g = a.length, h = [], l = 0, n = _.fa(a) ? a.split("") : a, q = 0; q < g; q++)
            if (q in n) {
                var t = n[q];
                c.call(f, t, q, a) && (h[l++] = t)
            }
        return h
    };
    _.De = Array.prototype.map ? function(a, c, f) {
        return Array.prototype.map.call(a, c, f)
    } : function(a, c, f) {
        for (var g = a.length, h = Array(g), l = _.fa(a) ? a.split("") : a, n = 0; n < g; n++) n in l && (h[n] = c.call(f, l[n], n, a));
        return h
    };
    _.Ee = Array.prototype.some ? function(a, c, f) {
        return Array.prototype.some.call(a, c, f)
    } : function(a, c, f) {
        for (var g = a.length, h = _.fa(a) ? a.split("") : a, l = 0; l < g; l++)
            if (l in h && c.call(f, h[l], l, a)) return !0;
        return !1
    };
    _.Fe = Array.prototype.every ? function(a, c, f) {
        return Array.prototype.every.call(a, c, f)
    } : function(a, c, f) {
        for (var g = a.length, h = _.fa(a) ? a.split("") : a, l = 0; l < g; l++)
            if (l in h && !c.call(f, h[l], l, a)) return !1;
        return !0
    };
    _.ve = function(a, c) {
        return 0 <= (0, _.we)(a, c)
    };
    _.xe = function(a, c) {
        c = (0, _.we)(a, c);
        var f;
        (f = 0 <= c) && _.wd(a, c);
        return f
    };
    _.wd = function(a, c) {
        return 1 == Array.prototype.splice.call(a, c, 1).length
    };
    _.Gl = function(a, c) {
        for (var f = 1; f < arguments.length; f++) {
            var g = arguments[f];
            if (_.re(g)) {
                var h = a.length || 0,
                    l = g.length || 0;
                a.length = h + l;
                for (var n = 0; n < l; n++) a[h + n] = g[n]
            } else a.push(g)
        }
    };

    _.ma = function(a, c) {
        var f = Array.prototype.slice.call(arguments, 1);
        return function() {
            var c = f.slice();
            c.push.apply(c, arguments);
            return a.apply(this, c)
        }
    };
    _.ue = function(a, c) {
        a: {
            for (var f = a.length, g = _.fa(a) ? a.split("") : a, h = 0; h < f; h++)
                if (h in g && c.call(void 0, g[h], h, a)) {
                    c = h;
                    break a
                }
            c = -1
        }
        return 0 > c ? null : _.fa(a) ? a.charAt(c) : a[c]
    };
    _.gh = function() {};
    a: {
        var Ci = _.D.navigator;
        if (Ci) {
            var Ui = Ci.userAgent;
            if (Ui) {
                _.We = Ui;
                break a
            }
        }
        _.We = ""
    }
    _.pf = function(a) {
        return -1 != _.We.indexOf(a)
    };
    _.Li = function(a) {
        var c = [],
            f = 0,
            g;
        for (g in a) c[f++] = a[g];
        return c
    };
    _.Ki = function(a) {
        var c = [],
            f = 0,
            g;
        for (g in a) c[f++] = g;
        return c
    };
    _.hi = function(a, c) {
        for (var f in a)
            if (a[f] == c) return !0;
        return !1
    };
    _.yY = function(a, c) {
        for (var f in a)
            if (!(f in c) || a[f] !== c[f]) return !1;
        for (f in c)
            if (!(f in a)) return !1;
        return !0
    };
    _.B = function() {
        return _.pf("Trident") || _.pf("MSIE")
    };
    _.Up = function(a) {
        a.Tl = void 0;
        a.ma = function() {
            return a.Tl ? a.Tl : a.Tl = new a
        }
    };
    _.ih = [];
    _.kh = [];
    _.jh = !1;
    _.hh = function(a) {
        _.ih[_.ih.length] = a;
        if (_.jh)
            for (var c = 0; c < _.kh.length; c++) a((0, _.H)(_.kh[c].wrap, _.kh[c]))
    };
    _.g3 = function(a) {
        return function() {
            return a
        }
    }(!0);
    var hD;
    _.jr = function(a, c) {
        var f = a.length - c.length;
        return 0 <= f && a.indexOf(c, f) == f
    };
    _.se = function(a) {
        if (Error.captureStackTrace) Error.captureStackTrace(this, _.se);
        else {
            var c = Error().stack;
            c && (this.stack = c)
        }
        a && (this.message = String(a))
    };
    _.J(_.se, Error);
    _.se.prototype.name = "CustomError";
    _.vC = function(a) {
        return a
    };
    _.rf = function(a) {
        var c = {},
            f;
        for (f in a) c[f] = a[f];
        return c
    };
    hD = function(a, c, f) {
        this.pga = f;
        this.cea = a;
        this.Cha = c;
        this.M4 = 0;
        this.p4 = null
    };
    hD.prototype.get = function() {
        if (0 < this.M4) {
            this.M4--;
            var a = this.p4;
            this.p4 = a.next;
            a.next = null
        } else a = this.cea();
        return a
    };
    hD.prototype.put = function(a) {
        this.Cha(a);
        this.M4 < this.pga && (this.M4++, a.next = this.p4, this.p4 = a)
    };
    var tp, $o, ep, Yo;
    tp = function(a) {
        _.D.setTimeout(function() {
            throw a;
        }, 0)
    };
    _.qk = function(a) {
        a = Yo(a);
        !_.vd(_.D.setImmediate) || _.D.Window && _.D.Window.prototype && !_.pf("Edge") && _.D.Window.prototype.setImmediate == _.D.setImmediate ? ($o || ($o = ep()), $o(a)) : _.D.setImmediate(a)
    };
    ep = function() {
        var a = _.D.MessageChannel;
        "undefined" === typeof a && "undefined" !== typeof window && window.postMessage && window.addEventListener && !_.pf("Presto") && (a = function() {
            var a = window.document.createElement("IFRAME");
            a.style.display = "none";
            a.src = "";
            window.document.documentElement.appendChild(a);
            var c = a.contentWindow;
            a = c.document;
            a.open();
            a.write("");
            a.close();
            var f = "callImmediate" + Math.random(),
                g = "file:" == c.location.protocol ? "*" : c.location.protocol + "//" + c.location.host;
            a = (0, _.H)(function(a) {
                if (("*" ==
                        g || a.origin == g) && a.data == f) this.port1.onmessage()
            }, this);
            c.addEventListener("message", a, !1);
            this.port1 = {};
            this.port2 = {
                postMessage: function() {
                    c.postMessage(f, g)
                }
            }
        });
        if ("undefined" !== typeof a && !_.B()) {
            var c = new a,
                f = {},
                g = f;
            c.port1.onmessage = function() {
                if (_.kf(f.next)) {
                    f = f.next;
                    var a = f.cb;
                    f.cb = null;
                    a()
                }
            };
            return function(a) {
                g.next = {
                    cb: a
                };
                g = g.next;
                c.port2.postMessage(0)
            }
        }
        return "undefined" !== typeof window.document && "onreadystatechange" in window.document.createElement("SCRIPT") ? function(a) {
            var c = window.document.createElement("SCRIPT");
            c.onreadystatechange = function() {
                c.onreadystatechange = null;
                c.parentNode.removeChild(c);
                c = null;
                a();
                a = null
            };
            window.document.documentElement.appendChild(c)
        } : function(a) {
            _.D.setTimeout(a, 0)
        }
    };
    Yo = _.vC;
    _.hh(function(a) {
        Yo = a
    });
    var LD = function() {
            this.N5 = this.Y0 = null
        },
        xE = new hD(function() {
            return new uE
        }, function(a) {
            a.reset()
        }, 100);
    LD.prototype.add = function(a, c) {
        var f = xE.get();
        f.set(a, c);
        this.N5 ? this.N5.next = f : this.Y0 = f;
        this.N5 = f
    };
    LD.prototype.remove = function() {
        var a = null;
        this.Y0 && (a = this.Y0, this.Y0 = this.Y0.next, this.Y0 || (this.N5 = null), a.next = null);
        return a
    };
    var uE = function() {
        this.next = this.scope = this.Ip = null
    };
    uE.prototype.set = function(a, c) {
        this.Ip = a;
        this.scope = c;
        this.next = null
    };
    uE.prototype.reset = function() {
        this.next = this.scope = this.Ip = null
    };
    var um, Pm, up, Lp, Ap;
    _.Qp = function(a, c) {
        um || Pm();
        up || (um(), up = !0);
        Lp.add(a, c)
    };
    Pm = function() {
        if (-1 != String(_.D.Promise).indexOf("[native code]")) {
            var a = _.D.Promise.resolve(void 0);
            um = function() {
                a.then(Ap)
            }
        } else um = function() {
            _.qk(Ap)
        }
    };
    up = !1;
    Lp = new LD;
    Ap = function() {
        for (var a; a = Lp.remove();) {
            try {
                a.Ip.call(a.scope)
            } catch (c) {
                tp(c)
            }
            xE.put(a)
        }
        up = !1
    };
    _.Rp = function(a) {
        a.prototype.then = a.prototype.then;
        a.prototype.$goog_Thenable = !0
    };
    _.Wp = function(a) {
        if (!a) return !1;
        try {
            return !!a.$goog_Thenable
        } catch (c) {
            return !1
        }
    };
    var Xq, Bs, Mq, uq;
    _.C = function(a, c) {
        this.ub = 0;
        this.rW = void 0;
        this.B_ = this.iY = this.Vb = null;
        this.j4 = this.Q6 = !1;
        if (a != _.gh) try {
            var f = this;
            a.call(c, function(a) {
                hq(f, 2, a)
            }, function(a) {
                hq(f, 3, a)
            })
        } catch (g) {
            hq(this, 3, g)
        }
    };
    Xq = function() {
        this.next = this.context = this.o0 = this.r2 = this.xZ = null;
        this.b1 = !1
    };
    Xq.prototype.reset = function() {
        this.context = this.o0 = this.r2 = this.xZ = null;
        this.b1 = !1
    };
    Bs = new hD(function() {
        return new Xq
    }, function(a) {
        a.reset()
    }, 100);
    _.Dt = function(a, c, f) {
        var g = Bs.get();
        g.r2 = a;
        g.o0 = c;
        g.context = f;
        return g
    };
    _.Nu = function(a) {
        if (a instanceof _.C) return a;
        var c = new _.C(_.gh);
        hq(c, 2, a);
        return c
    };
    _.$H = function(a) {
        return new _.C(function(c, f) {
            f(a)
        })
    };
    _.dq = function(a, c, f) {
        Vp(a, c, f, null) || _.Qp(_.ma(c, a))
    };
    _.Su = function() {
        var a, c, f = new _.C(function(f, h) {
            a = f;
            c = h
        });
        return new Bp(f, a, c)
    };
    _.C.prototype.then = function(a, c, f) {
        return uq(this, _.vd(a) ? a : null, _.vd(c) ? c : null, f)
    };
    _.Rp(_.C);
    _.C.prototype.cancel = function(a) {
        0 == this.ub && _.Qp(function() {
            var c = new tq(a);
            Mq(this, c)
        }, this)
    };
    Mq = function(a, c) {
        if (0 == a.ub)
            if (a.Vb) {
                var f = a.Vb;
                if (f.iY) {
                    for (var g = 0, h = null, l = null, n = f.iY; n && (n.b1 || (g++, n.xZ == a && (h = n), !(h && 1 < g))); n = n.next) h || (l = n);
                    h && (0 == f.ub && 1 == g ? Mq(f, c) : (l ? (g = l, g.next == f.B_ && (f.B_ = g), g.next = g.next.next) : ju(f), Wq(f, h, 3, c)))
                }
                a.Vb = null
            } else hq(a, 3, c)
    };
    _.lr = function(a, c) {
        a.iY || 2 != a.ub && 3 != a.ub || er(a);
        a.B_ ? a.B_.next = c : a.iY = c;
        a.B_ = c
    };
    uq = function(a, c, f, g) {
        var h = _.Dt(null, null, null);
        h.xZ = new _.C(function(a, n) {
            h.r2 = c ? function(f) {
                try {
                    var h = c.call(g, f);
                    a(h)
                } catch (v) {
                    n(v)
                }
            } : a;
            h.o0 = f ? function(c) {
                try {
                    var h = f.call(g, c);
                    !_.kf(h) && c instanceof tq ? n(c) : a(h)
                } catch (v) {
                    n(v)
                }
            } : n
        });
        h.xZ.Vb = a;
        _.lr(a, h);
        return h.xZ
    };
    _.C.prototype.ria = function(a) {
        this.ub = 0;
        hq(this, 2, a)
    };
    _.C.prototype.sia = function(a) {
        this.ub = 0;
        hq(this, 3, a)
    };
    var hq = function(a, c, f) {
            0 == a.ub && (a === f && (c = 3, f = new TypeError("Promise cannot resolve to itself")), a.ub = 1, Vp(f, a.ria, a.sia, a) || (a.rW = f, a.ub = c, a.Vb = null, er(a), 3 != c || f instanceof tq || wq(a, f)))
        },
        Vp = function(a, c, f, g) {
            if (a instanceof _.C) return _.lr(a, _.Dt(c || _.gh, f || null, g)), !0;
            if (_.Wp(a)) return a.then(c, f, g), !0;
            if (_.Vg(a)) try {
                var h = a.then;
                if (_.vd(h)) return bq(a, h, c, f, g), !0
            } catch (l) {
                return f.call(g, l), !0
            }
            return !1
        },
        bq = function(a, c, f, g, h) {
            var l = !1,
                n = function(a) {
                    l || (l = !0, f.call(h, a))
                },
                q = function(a) {
                    l || (l = !0, g.call(h, a))
                };
            try {
                c.call(a, n, q)
            } catch (t) {
                q(t)
            }
        },
        er = function(a) {
            a.Q6 || (a.Q6 = !0, _.Qp(a.uea, a))
        },
        ju = function(a) {
            var c = null;
            a.iY && (c = a.iY, a.iY = c.next, c.next = null);
            a.iY || (a.B_ = null);
            return c
        };
    _.C.prototype.uea = function() {
        for (var a; a = ju(this);) Wq(this, a, this.ub, this.rW);
        this.Q6 = !1
    };
    var Wq = function(a, c, f, g) {
            if (3 == f && c.o0 && !c.b1)
                for (; a && a.j4; a = a.Vb) a.j4 = !1;
            if (c.xZ) c.xZ.Vb = null, xs(c, f, g);
            else try {
                c.b1 ? c.r2.call(c.context) : xs(c, f, g)
            } catch (h) {
                nr.call(null, h)
            }
            Bs.put(c)
        },
        xs = function(a, c, f) {
            2 == c ? a.r2.call(a.context, f) : a.o0 && a.o0.call(a.context, f)
        },
        wq = function(a, c) {
            a.j4 = !0;
            _.Qp(function() {
                a.j4 && nr.call(null, c)
            })
        },
        nr = tp,
        tq = function(a) {
            _.se.call(this, a)
        };
    _.J(tq, _.se);
    tq.prototype.name = "cancel";
    var Bp = function(a, c, f) {
        this.promise = a;
        this.resolve = c;
        this.reject = f
    };

    _.Fu = function(a) {
        return new _.C(a)
    };
    _.Ob = _.Ob || {};
    _.Ob.Xk = function() {
        var a = 0,
            c = 0;
        window.self.innerHeight ? (a = window.self.innerWidth, c = window.self.innerHeight) : window.document.documentElement && window.document.documentElement.clientHeight ? (a = window.document.documentElement.clientWidth, c = window.document.documentElement.clientHeight) : window.document.body && (a = window.document.body.clientWidth, c = window.document.body.clientHeight);
        return {
            width: a,
            height: c
        }
    };

    _.Ob = _.Ob || {};
    (function() {
        function a(a, f) {
            window.getComputedStyle(a, "").getPropertyValue(f).match(/^([0-9]+)/);
            return (0, window.parseInt)(RegExp.$1, 10)
        }
        _.Ob.Cd = function() {
            var c = _.Ob.Xk().height,
                f = window.document.body,
                g = window.document.documentElement;
            if ("CSS1Compat" === window.document.compatMode && g.scrollHeight) return g.scrollHeight !== c ? g.scrollHeight : g.offsetHeight;
            if (0 <= window.navigator.userAgent.indexOf("AppleWebKit")) {
                c = 0;
                for (f = [window.document.body]; 0 < f.length;) {
                    var h = f.shift();
                    g = h.childNodes;
                    if ("undefined" !==
                        typeof h.style) {
                        var l = h.style.overflowY;
                        l || (l = (l = window.document.defaultView.getComputedStyle(h, null)) ? l.overflowY : null);
                        if ("visible" != l && "inherit" != l && (l = h.style.height, l || (l = (l = window.document.defaultView.getComputedStyle(h, null)) ? l.height : ""), 0 < l.length && "auto" != l)) continue
                    }
                    for (h = 0; h < g.length; h++) {
                        l = g[h];
                        if ("undefined" !== typeof l.offsetTop && "undefined" !== typeof l.offsetHeight) {
                            var n = l.offsetTop + l.offsetHeight + a(l, "margin-bottom");
                            c = Math.max(c, n)
                        }
                        f.push(l)
                    }
                }
                return c + a(window.document.body, "border-bottom") + a(window.document.body, "margin-bottom") + a(window.document.body, "padding-bottom")
            }
            if (f && g) return h = g.scrollHeight, l = g.offsetHeight, g.clientHeight !== l && (h = f.scrollHeight, l = f.offsetHeight), h > c ? h > l ? h : l : h < l ? h : l
        }
    })();

    var uh;
    uh = /^https?:\/\/(?:\w|[\-\.])+\.google\.(?:\w|[\-:\.])+(?:\/[^\?\#]*)?\/u\/(\d)\//;
    _.Dh = function(a) {
        var c = _.P("googleapis.config/sessionIndex");
        "string" === typeof c && 254 < c.length && (c = null);
        null == c && (c = window.__X_GOOG_AUTHUSER);
        "string" === typeof c && 254 < c.length && (c = null);
        if (null == c) {
            var f = window.google;
            f && (c = f.authuser)
        }
        "string" === typeof c && 254 < c.length && (c = null);
        null == c && (a = a || window.location.href, c = _.e(a, "authuser") || null, null == c && (c = (c = a.match(uh)) ? c[1] : null));
        if (null == c) return null;
        c = String(c);
        254 < c.length && (c = null);
        return c
    };

    var wb = function() {
        this.fY = -1
    };
    var xb = function() {
        this.fY = 64;
        this.Ej = [];
        this.i6 = [];
        this.uda = [];
        this.V4 = [];
        this.V4[0] = 128;
        for (var a = 1; a < this.fY; ++a) this.V4[a] = 0;
        this.G5 = this.b0 = 0;
        this.reset()
    };
    _.J(xb, wb);
    xb.prototype.reset = function() {
        this.Ej[0] = 1732584193;
        this.Ej[1] = 4023233417;
        this.Ej[2] = 2562383102;
        this.Ej[3] = 271733878;
        this.Ej[4] = 3285377520;
        this.G5 = this.b0 = 0
    };
    var Cm = function(a, c, f) {
        f || (f = 0);
        var g = a.uda;
        if (_.fa(c))
            for (var h = 0; 16 > h; h++) g[h] = c.charCodeAt(f) << 24 | c.charCodeAt(f + 1) << 16 | c.charCodeAt(f + 2) << 8 | c.charCodeAt(f + 3), f += 4;
        else
            for (h = 0; 16 > h; h++) g[h] = c[f] << 24 | c[f + 1] << 16 | c[f + 2] << 8 | c[f + 3], f += 4;
        for (h = 16; 80 > h; h++) {
            var l = g[h - 3] ^ g[h - 8] ^ g[h - 14] ^ g[h - 16];
            g[h] = (l << 1 | l >>> 31) & 4294967295
        }
        c = a.Ej[0];
        f = a.Ej[1];
        var n = a.Ej[2],
            q = a.Ej[3],
            t = a.Ej[4];
        for (h = 0; 80 > h; h++) {
            if (40 > h)
                if (20 > h) {
                    l = q ^ f & (n ^ q);
                    var v = 1518500249
                } else l = f ^ n ^ q, v = 1859775393;
            else 60 > h ? (l = f & n | q & (f | n), v = 2400959708) :
                (l = f ^ n ^ q, v = 3395469782);
            l = (c << 5 | c >>> 27) + l + t + v + g[h] & 4294967295;
            t = q;
            q = n;
            n = (f << 30 | f >>> 2) & 4294967295;
            f = c;
            c = l
        }
        a.Ej[0] = a.Ej[0] + c & 4294967295;
        a.Ej[1] = a.Ej[1] + f & 4294967295;
        a.Ej[2] = a.Ej[2] + n & 4294967295;
        a.Ej[3] = a.Ej[3] + q & 4294967295;
        a.Ej[4] = a.Ej[4] + t & 4294967295
    };
    xb.prototype.update = function(a, c) {
        if (null != a) {
            _.kf(c) || (c = a.length);
            for (var f = c - this.fY, g = 0, h = this.i6, l = this.b0; g < c;) {
                if (0 == l)
                    for (; g <= f;) Cm(this, a, g), g += this.fY;
                if (_.fa(a))
                    for (; g < c;) {
                        if (h[l] = a.charCodeAt(g), ++l, ++g, l == this.fY) {
                            Cm(this, h);
                            l = 0;
                            break
                        }
                    } else
                        for (; g < c;)
                            if (h[l] = a[g], ++l, ++g, l == this.fY) {
                                Cm(this, h);
                                l = 0;
                                break
                            }
            }
            this.b0 = l;
            this.G5 += c
        }
    };
    xb.prototype.digest = function() {
        var a = [],
            c = 8 * this.G5;
        56 > this.b0 ? this.update(this.V4, 56 - this.b0) : this.update(this.V4, this.fY - (this.b0 - 56));
        for (var f = this.fY - 1; 56 <= f; f--) this.i6[f] = c & 255, c /= 256;
        Cm(this, this.i6);
        for (f = c = 0; 5 > f; f++)
            for (var g = 24; 0 <= g; g -= 8) a[c] = this.Ej[f] >> g & 255, ++c;
        return a
    };
    _.pi = function() {
        this.zx = new xb
    };
    _.k = _.pi.prototype;
    _.k.reset = function() {
        this.zx.reset()
    };
    _.k.AF = function(a) {
        this.zx.update(a)
    };
    _.k.GC = function() {
        return this.zx.digest()
    };
    _.k.bB = function(a) {
        a = (0, window.unescape)((0, window.encodeURIComponent)(a));
        for (var c = [], f = 0, g = a.length; f < g; ++f) c.push(a.charCodeAt(f));
        this.AF(c)
    };
    _.k.Of = function() {
        for (var a = this.GC(), c = "", f = 0; f < a.length; f++) c += "0123456789ABCDEF".charAt(Math.floor(a[f] / 16)) + "0123456789ABCDEF".charAt(a[f] % 16);
        return c
    };

    var Ib, Jb, Cb, Db, Ab, Bb, Gb, zb, Eb;
    _.Rl = function() {
        if (Jb) {
            var a = new _.ta.Uint32Array(1);
            Ib.getRandomValues(a);
            a = Number("0." + a[0])
        } else a = Ab, a += (0, window.parseInt)(Gb.substr(0, 20), 16), Gb = Eb(Gb), a /= Bb + Math.pow(16, 20);
        return a
    };
    Ib = _.ta.crypto;
    Jb = !1;
    Cb = 0;
    Db = 0;
    Ab = 1;
    Bb = 0;
    Gb = "";
    zb = function(a) {
        a = a || _.ta.event;
        var c = a.screenX + a.clientX << 16;
        c += a.screenY + a.clientY;
        c *= (new Date).getTime() % 1E6;
        Ab = Ab * c % Bb;
        0 < Cb && ++Db == Cb && _.ra(_.ta, "mousemove", zb, "remove", "de")
    };
    Eb = function(a) {
        var c = new _.pi;
        c.bB(a);
        return c.Of()
    };
    Jb = !!Ib && "function" == typeof Ib.getRandomValues;
    Jb || (Bb = 1E6 * (window.screen.width * window.screen.width + window.screen.height), Gb = Eb(_.ua.cookie + "|" + _.ua.location + "|" + (new Date).getTime() + "|" + Math.random()), Cb = _.P("random/maxObserveMousemove") || 0, 0 != Cb && _.La(_.ta, "mousemove", zb));

    var Bh, mr, Nr, ws, Rh, Je, lf, Hf, Um, on, vn, wn, xn, kg, Cn, kc, mb, nb, ob, pb;
    _.cb = function(a) {
        return !!a && "object" === typeof a && _.Ia.test(a.push)
    };
    _.Sa = function(a, c) {
        if (!a) throw Error(c || "");
    };
    Bh = /^https?:\/\/(?:\w|[\-\.])+\.google\.(?:\w|[\-:\.])+(?:\/[^\?\#]*)?\/b\/(\d{10,21})\//;
    mr = /^(https?|ftp|file|chrome-extension):$/i;
    Nr = /%([a-f]|[0-9a-fA-F][a-f])/g;
    ws = /[\ud800-\udbff][\udc00-\udfff]|[^!-~]/g;
    Rh = function(a) {
        var c = _.P("googleapis.config/sessionDelegate");
        "string" === typeof c && 21 < c.length && (c = null);
        null == c && (c = (a = (a || window.location.href).match(Bh)) ? a[1] : null);
        if (null == c) return null;
        c = String(c);
        21 < c.length && (c = null);
        return c
    };
    _.Ie = /^https?:\/\/[^\/%\\?#\s]+\/[^\s]*$/i;
    Je = function(a, c) {
        var f = [];
        if (a)
            for (var g in a)
                if (_.Qa(a, g) && null != a[g]) {
                    var h = c ? c(a[g]) : a[g];
                    f.push((0, window.encodeURIComponent)(g) + "=" + (0, window.encodeURIComponent)(h))
                }
        return f
    };
    lf = function(a) {
        return a.yc + (0 < a.query.length ? "?" + a.query.join("&") : "") + (0 < a.Vf.length ? "#" + a.Vf.join("&") : "")
    };
    Hf = function(a) {
        a = String(a);
        a = a.replace(ws, function(a) {
            try {
                return (0, window.encodeURIComponent)(a)
            } catch (l) {
                return (0, window.encodeURIComponent)(a.replace(/^[^%]+$/g, "\ufffd"))
            }
        }).replace(_.Za, function(a) {
            return a.replace(/%/g, "%25")
        }).replace(Nr, function(a) {
            return a.toUpperCase()
        });
        a = a.match(_.Xa) || [];
        var c = _.r(),
            f = function(a) {
                return a.replace(/\\/g, "%5C").replace(/\^/g, "%5E").replace(/`/g, "%60").replace(/\{/g, "%7B").replace(/\|/g, "%7C").replace(/\}/g, "%7D")
            },
            g = !!(a[1] || "").match(mr);
        c.yc = f((a[1] ||
            "") + (a[2] || "") + (a[3] || (a[2] && g ? "/" : "")));
        g = function(a) {
            return f(a.replace(/\?/g, "%3F").replace(/\#/g, "%23"))
        };
        c.query = a[5] ? [g(a[5])] : [];
        c.Vf = a[7] ? [g(a[7])] : [];
        return c
    };
    Um = /'/g;
    on = /"/g;
    vn = />/g;
    wn = /</g;
    xn = /&/g;
    _.xd = function(a) {
        for (var c = 0; c < this.length; c++)
            if (this[c] === a) return c;
        return -1
    };
    _.Sc = function(a, c) {
        var f = _.Ka(_.bb, "watt", _.r());
        _.Ka(f, a, c)
    };
    kg = function(a) {
        for (; a.firstChild;) a.removeChild(a.firstChild)
    };
    _.vg = function(a, c) {
        var f = Hf(c);
        c = f.yc;
        f.query.length && (c += "?" + f.query.join(""));
        f.Vf.length && (c += "#" + f.Vf.join(""));
        var g = "";
        2E3 < c.length && (f = c, c = c.substr(0, 2E3), c = c.replace(_.lc, ""), g = f.substr(c.length));
        var h = a.createElement("div");
        a = a.createElement("a");
        f = Hf(c);
        c = f.yc;
        f.query.length && (c += "?" + f.query.join(""));
        f.Vf.length && (c += "#" + f.Vf.join(""));
        a.href = c;
        h.appendChild(a);
        h.innerHTML = h.innerHTML;
        c = String(h.firstChild.href);
        h.parentNode && h.parentNode.removeChild(h);
        f = Hf(c + g);
        c = f.yc;
        f.query.length &&
            (c += "?" + f.query.join(""));
        f.Vf.length && (c += "#" + f.Vf.join(""));
        return c
    };
    _.yg = function(a, c, f, g) {
        a = Hf(a);
        a.query.push.apply(a.query, Je(c, g));
        a.Vf.push.apply(a.Vf, Je(f, g));
        return lf(a)
    };
    Cn = function(a) {
        return String(a).replace(xn, "&amp;").replace(wn, "&lt;").replace(vn, "&gt;").replace(on, "&quot;").replace(Um, "&#39;")
    };
    mb = function() {
        var a = _.bb.onl;
        if (!a) {
            a = _.r();
            _.bb.onl = a;
            var c = _.r();
            a.e = function(a) {
                var f = c[a];
                f && (delete c[a], f())
            };
            a.a = function(a, g) {
                c[a] = g
            };
            a.r = function(a) {
                delete c[a]
            }
        }
        return a
    };
    nb = function(a, c) {
        c = c.onload;
        return "function" === typeof c ? (mb().a(a, c), c) : null
    };
    ob = function(a) {
        _.Sa(/^\w+$/.test(a), "Unsupported id - " + a);
        mb();
        return 'onload="window.___jsl.onl.e(&#34;' + a + '&#34;)"'
    };
    pb = function(a) {
        mb().r(a)
    };
    var rb, ub, hc;
    _.vb = {
        allowtransparency: "true",
        frameborder: "0",
        hspace: "0",
        marginheight: "0",
        marginwidth: "0",
        scrolling: "no",
        style: "",
        tabindex: "0",
        vspace: "0",
        width: "100%"
    };
    rb = {
        allowtransparency: !0,
        onload: !0
    };
    ub = 0;
    _.Dn = function(a, c) {
        var f = 0;
        do var g = c.id || ["I", ub++, "_", (new Date).getTime()].join(""); while (a.getElementById(g) && 5 > ++f);
        _.Sa(5 > f, "Error creating iframe id");
        return g
    };
    _.Ln = function(a, c) {
        return a ? c + "/" + a : ""
    };
    _.qa = function(a, c, f, g) {
        var h = {},
            l = {};
        a.documentMode && 9 > a.documentMode && (h.hostiemode = a.documentMode);
        _.Sl(g.queryParams || {}, h);
        _.Sl(g.fragmentParams || {}, l);
        var n = g.pfname;
        var q = _.r();
        q.id = f;
        q.parent = a.location.protocol + "//" + a.location.host;
        f = _.e(a.location.href, "parent");
        n = n || "";
        !n && f && (n = _.Ln(_.e(a.location.href, "id", ""), _.e(a.location.href, "pfname", "")));
        q.pfname = n;
        g.connectWithJsonParam && (n = {}, n.jcp = (0, _.mf)(q), q = n);
        n = _.e(c, "rpctoken") || h.rpctoken || l.rpctoken;
        n || (n = g.rpctoken || String(Math.round(1E8 *
            _.Rl())), q.rpctoken = n);
        g.rpctoken = n;
        _.Sl(q, g.connectWithQueryParams ? h : l);
        q = a.location.href;
        a = _.r();
        (n = _.e(q, "_bsh", _.bb.bsh)) && (a._bsh = n);
        (q = _.bb.dpo ? _.bb.h : _.e(q, "jsh", _.bb.h)) && (a.jsh = q);
        g.hintInFragment ? _.Sl(a, l) : _.Sl(a, h);
        return _.yg(c, h, l, g.paramsSerializer)
    };
    hc = function(a) {
        _.Sa(!a || _.Ie.test(a), "Illegal url for new iframe - " + a)
    };
    _.Pn = function(a, c, f, g, h) {
        hc(f.src);
        var l, n = nb(g, f),
            q = n ? ob(g) : "";
        try {
            window.document.all && (l = a.createElement('<iframe frameborder="' + Cn(String(f.frameborder)) + '" scrolling="' + Cn(String(f.scrolling)) + '" ' + q + ' name="' + Cn(String(f.name)) + '"/>'))
        } catch (v) {} finally {
            l || (l = a.createElement("iframe"), n && (l.onload = function() {
                l.onload = null;
                n.call(this)
            }, pb(g)))
        }
        l.setAttribute("ng-non-bindable", "");
        for (var t in f) a = f[t], "style" === t && "object" === typeof a ? _.Sl(a, l.style) : rb[t] || l.setAttribute(t, String(a));
        (t = h && h.beforeNode || null) || h && h.dontclear || kg(c);
        c.insertBefore(l, t);
        l = t ? t.previousSibling : c.lastChild;
        f.allowtransparency && (l.allowTransparency = !0);
        return l
    };
    var zd, jc;
    zd = /^:[\w]+$/;
    _.nc = /:([a-zA-Z_]+):/g;
    _.ql = function() {
        var a = _.Dh() || "0",
            c = Rh();
        var f = _.Dh(void 0) || a;
        var g = Rh(void 0),
            h = "";
        f && (h += "u/" + (0, window.encodeURIComponent)(String(f)) + "/");
        g && (h += "b/" + (0, window.encodeURIComponent)(String(g)) + "/");
        f = h || null;
        (h = (g = !1 === _.P("isLoggedIn")) ? "_/im/" : "") && (f = "");
        var l = _.P("iframes/:socialhost:"),
            n = _.P("iframes/:im_socialhost:");
        return kc = {
            socialhost: l,
            ctx_socialhost: g ? n : l,
            session_index: a,
            session_delegate: c,
            session_prefix: f,
            im_prefix: h
        }
    };
    jc = function(a, c) {
        return _.ql()[c] || ""
    };
    _.mc = function(a) {
        return _.vg(_.ua, a.replace(_.nc, jc))
    };
    _.Un = function(a) {
        var c = a;
        zd.test(a) && (c = _.P("iframes/" + c.substring(1) + "/url"), _.Sa(!!c, "Unknown iframe url config for - " + a));
        return _.mc(c)
    };
    _.tb = function(a, c, f) {
        var g = f || {};
        f = g.attributes || {};
        _.Sa(!(g.allowPost || g.forcePost) || !f.onload, "onload is not supported by post iframe (allowPost or forcePost)");
        a = _.Un(a);
        f = c.ownerDocument || _.ua;
        var h = _.Dn(f, g);
        a = _.qa(f, a, h, g);
        var l = _.r();
        _.Sl(_.vb, l);
        _.Sl(g.attributes, l);
        l.name = l.id = h;
        l.src = a;
        g.eurl = a;
        var n = g || {},
            q = !!n.allowPost;
        if (n.forcePost || q && 2E3 < a.length) {
            n = Hf(a);
            l.src = "";
            l["data-postorigin"] = a;
            a = _.Pn(f, c, l, h);
            if (-1 != window.navigator.userAgent.indexOf("WebKit")) {
                var t = a.contentWindow.document;
                t.open();
                l = t.createElement("div");
                q = {};
                var v = h + "_inner";
                q.name = v;
                q.src = "";
                q.style = "display:none";
                _.Pn(f, l, q, v, g)
            }
            l = (g = n.query[0]) ? g.split("&") : [];
            g = [];
            for (q = 0; q < l.length; q++) v = l[q].split("=", 2), g.push([(0, window.decodeURIComponent)(v[0]), (0, window.decodeURIComponent)(v[1])]);
            n.query = [];
            l = lf(n);
            _.Sa(_.Ie.test(l), "Invalid URL: " + l);
            n = f.createElement("form");
            n.action = l;
            n.method = "POST";
            n.target = h;
            n.style.display = "none";
            for (h = 0; h < g.length; h++) l = f.createElement("input"), l.type = "hidden", l.name = g[h][0], l.value = g[h][1], n.appendChild(l);
            c.appendChild(n);
            n.submit();
            n.parentNode.removeChild(n);
            t && t.close();
            c = a
        } else c = _.Pn(f, c, l, h, g);
        return c
    };

    var AB = function(a) {
        this.Ea = a
    };
    _.k = AB.prototype;
    _.k.value = function() {
        return this.Ea
    };
    _.k.Es = function(a) {
        this.Ea.width = a;
        return this
    };
    _.k.Ne = function() {
        return this.Ea.width
    };
    _.k.Rm = function(a) {
        this.Ea.height = a;
        return this
    };
    _.k.Cd = function() {
        return this.Ea.height
    };
    _.k.rl = function(a) {
        this.Ea.style = a;
        return this
    };
    _.k.IZ = function() {
        return this.Ea.style
    };
    var FN = function(a) {
        this.Ea = a
    };
    FN.prototype.N2 = function(a) {
        this.Ea.anchor = a;
        return this
    };
    FN.prototype.oA = function() {
        return this.Ea.anchor
    };
    FN.prototype.m9 = function(a) {
        this.Ea.anchorPosition = a;
        return this
    };
    _.jN = function(a) {
        a.Ea.closeClickDetection = !0
    };
    _.uW = function(a) {
        a.Ea.show = !0;
        return a
    };
    FN.prototype.Rm = function(a) {
        this.Ea.height = a;
        return this
    };
    FN.prototype.Cd = function() {
        return this.Ea.height
    };
    FN.prototype.Es = function(a) {
        this.Ea.width = a;
        return this
    };
    FN.prototype.Ne = function() {
        return this.Ea.width
    };
    _.BB = function(a) {
        this.Ea = a || {}
    };
    _.k = _.BB.prototype;
    _.k.value = function() {
        return this.Ea
    };
    _.k.setUrl = function(a) {
        this.Ea.url = a;
        return this
    };
    _.k.getUrl = function() {
        return this.Ea.url
    };
    _.k.rl = function(a) {
        this.Ea.style = a;
        return this
    };
    _.k.IZ = function() {
        return this.Ea.style
    };
    _.k.DD = function(a) {
        this.Ea.id = a;
        return this
    };
    _.k.Hh = function() {
        return this.Ea.id
    };
    _.k.oZ = _.b(14);
    _.CN = function(a, c) {
        a.Ea.queryParams = c;
        return a
    };
    _.Ko = function(a, c) {
        a.Ea.relayOpen = c;
        return a
    };
    _.BB.prototype.H0 = _.b(15);
    _.BB.prototype.getContext = function() {
        return this.Ea.context
    };
    _.BB.prototype.ua = function() {
        return this.Ea.openerIframe
    };
    _.Du = function(a) {
        return new FN(a.Ea)
    };
    _.BB.prototype.Wp = function() {
        this.Ea.attributes = this.Ea.attributes || {};
        return new AB(this.Ea.attributes)
    };
    _.KN = function(a) {
        a.Ea.connectWithQueryParams = !0;
        return a
    };

    var Ek, pl, Lu, Ku, Zz, Xz;
    _.Qm = function(a) {
        a.Ea.waitForOnload = !0;
        return a
    };
    Ek = function(a) {
        return (a = a.Ea.timeout) ? a : null
    };
    _.AN = function(a, c) {
        a.Ea.messageHandlersFilter = c;
        return a
    };
    _.BN = function(a, c) {
        a.Ea.messageHandlers = c;
        return a
    };
    _.Wb = function(a) {
        return a.Ea.rpctoken
    };
    pl = function(a, c) {
        a.Ea.onload = c
    };
    _.eb = function(a, c, f) {
        if (a) {
            _.Sa(_.cb(a), "arrayForEach was called with a non array value");
            for (var g = 0; g < a.length; g++) c.call(f, a[g], g)
        }
    };
    _.fb = function(a, c, f) {
        if (a)
            if (_.cb(a)) _.eb(a, c, f);
            else {
                _.Sa("object" === typeof a, "objectForEach was called with a non object value");
                f = f || a;
                for (var g in a) _.Qa(a, g) && void 0 !== a[g] && c.call(f, a[g], g)
            }
    };
    Lu = function(a) {
        this.resolve = this.reject = null;
        this.promise = _.Fu((0, _.H)(function(a, f) {
            this.resolve = a;
            this.reject = f
        }, this));
        a && (this.promise = Ku(this.promise, a))
    };
    Ku = function(a, c) {
        return a.then(function(a) {
            try {
                c(a)
            } catch (g) {}
            return a
        })
    };
    _.Pr = function(a) {
        return new _.C(function(c, f) {
            var g = a.length,
                h = [];
            if (g)
                for (var l = function(a, f) {
                        g--;
                        h[a] = f;
                        0 == g && c(h)
                    }, n = function(a) {
                        f(a)
                    }, q = 0, t; q < a.length; q++) t = a[q], _.dq(t, _.ma(l, q), n);
            else c(h)
        })
    };
    _.yp = function(a) {
        this.Ea = a || {}
    };
    _.J(_.yp, _.BB);
    _.oq = function(a, c) {
        a.Ea.frameName = c;
        return a
    };
    _.yp.prototype.Tp = function() {
        return this.Ea.frameName
    };
    _.Lr = function(a, c) {
        a.Ea.rpcAddr = c;
        return a
    };
    _.yp.prototype.Fl = function() {
        return this.Ea.rpcAddr
    };
    _.Mr = function(a, c) {
        a.Ea.retAddr = c;
        return a
    };
    _.Ss = function(a) {
        return a.Ea.retAddr
    };
    _.yp.prototype.Og = function(a) {
        this.Ea.origin = a;
        return this
    };
    _.yp.prototype.Pq = function() {
        return this.Ea.origin
    };
    _.yp.prototype.vj = function(a) {
        this.Ea.setRpcReady = a;
        return this
    };
    _.Yb = function(a) {
        return a.Ea.setRpcReady
    };
    _.yp.prototype.Pm = function(a) {
        this.Ea.context = a;
        return this
    };
    var ft = function(a, c) {
        a.Ea._rpcReadyFn = c
    };
    _.yp.prototype.rb = function() {
        return this.Ea.iframeEl
    };
    var co, Wz, Jp;
    co = /^[\w\.\-]*$/;
    _.Uz = function(a) {
        return a.Db === a.getContext().Db
    };
    _.Vz = function() {
        return !0
    };
    _.AD = function(a) {
        for (var c = _.r(), f = 0; f < a.length; f++) c[a[f]] = !0;
        return function(a) {
            return !!c[a.Db]
        }
    };
    Wz = function(a, c, f) {
        return function(g) {
            if (!c.Oj) {
                _.Sa(this.origin === c.Db, "Wrong origin " + this.origin + " != " + c.Db);
                var h = this.callback;
                g = Jp(a, g, c);
                !f && 0 < g.length && _.Pr(g).then(h)
            }
        }
    };
    Jp = function(a, c, f) {
        a = Xz[a];
        if (!a) return [];
        for (var g = [], h = 0; h < a.length; h++) g.push(_.Nu(a[h].call(f, c, f)));
        return g
    };
    _.Yz = function(a, c, f) {
        _.Sa("_default" != a, "Cannot update default api");
        Zz[a] = {
            map: c,
            filter: f
        }
    };
    _.$z = function(a, c, f) {
        _.Sa("_default" != a, "Cannot update default api");
        _.Ka(Zz, a, {
            map: {},
            filter: _.Uz
        }).map[c] = f
    };
    _.aA = function(a, c) {
        _.Ka(Zz, "_default", {
            map: {},
            filter: _.Vz
        }).map[a] = c;
        _.fb(_.Sm.Uv, function(f) {
            f.register(a, c, _.Vz)
        })
    };
    _.jo = function() {
        return _.Sm
    };
    _.bA = function(a) {
        a = a || {};
        this.Oj = !1;
        this.gW = _.r();
        this.Uv = _.r();
        this.uu = a._window || _.ta;
        this.Il = this.uu.location.href;
        this.Pba = (this.Qba = xu(this.Il, "parent")) ? xu(this.Il, "pfname") : "";
        this.El = this.Qba ? xu(this.Il, "id") : "";
        this.Jh = _.Ln(this.El, this.Pba);
        this.Db = _.Rb.Pq(this.Il);
        if (this.El) {
            var c = new _.yp;
            _.Lr(c, a._parentRpcAddr || "..");
            _.Mr(c, a._parentRetAddr || this.El);
            c.Og(_.Rb.Pq(this.Qba || this.Il));
            _.oq(c, this.Pba);
            this.Vb = this.OH(c.value())
        } else this.Vb = null
    };
    _.k = _.bA.prototype;
    _.k.Ma = _.b(1);
    _.k.U = function() {
        if (!this.Oj) {
            for (var a = 0; a < this.Uv.length; a++) this.Uv[a].U();
            this.Oj = !0
        }
    };
    _.k.Tp = function() {
        return this.Jh
    };
    _.k.Aa = function() {
        return this.uu
    };
    _.k.Wb = function() {
        return this.uu.document
    };
    _.k.sj = _.b(16);
    _.k.$h = function(a) {
        return this.gW[a]
    };
    _.k.OH = function(a) {
        _.Sa(!this.Oj, "Cannot attach iframe in disposed context");
        a = new _.yp(a);
        a.Fl() || _.Lr(a, a.Hh());
        _.Ss(a) || _.Mr(a, "..");
        a.Pq() || a.Og(_.Rb.Pq(a.getUrl()));
        a.Tp() || _.oq(a, _.Ln(a.Hh(), this.Jh));
        var c = a.Tp();
        if (this.Uv[c]) return this.Uv[c];
        var f = a.Fl(),
            g = f;
        a.Pq() && (g = f + "|" + a.Pq());
        var h = _.Ss(a),
            l = _.Wb(a);
        l || (l = (l = a.rb()) && (l.getAttribute("data-postorigin") || l.src) || a.getUrl(), l = _.e(l, "rpctoken"));
        ft(a, _.Mz(g, h, l, a.Ea._popupWindow));
        g = ((window.gadgets || {}).rpc || {}).setAuthToken;
        l && g && g(f,
            l);
        var n = new _.Rm(this, f, c, a),
            q = a.Ea.messageHandlersFilter;
        _.fb(a.Ea.messageHandlers, function(a, c) {
            n.register(c, a, q)
        });
        _.Yb(a) && n.vj();
        _.jA(n, "_g_rpcReady");
        return n
    };
    _.k.CA = function(a) {
        _.oq(a, null);
        var c = a.Hh();
        !c || co.test(c) && !this.Aa().document.getElementById(c) || (_.kd("Ignoring requested iframe ID - " + c), a.DD(null))
    };
    var xu = function(a, c) {
        var f = _.e(a, c);
        f || (f = (0, _.of)(_.e(a, "jcp", ""))[c]);
        return f || ""
    };
    _.bA.prototype.Nf = function(a) {
        _.Sa(!this.Oj, "Cannot open iframe in disposed context");
        var c = new _.yp(a);
        rt(this, c);
        var f = c.Tp();
        if (f && this.Uv[f]) return this.Uv[f];
        this.CA(c);
        f = c.getUrl();
        _.Sa(f, "No url for new iframe");
        var g = c.Ea.queryParams || {};
        g.usegapi = "1";
        _.CN(c, g);
        g = this.Eaa && this.Eaa(f, c);
        g || (g = c.Ea.where, _.Sa(!!g, "No location for new iframe"), f = _.tb(f, g, a), c.Ea.iframeEl = f, g = f.getAttribute("id"));
        _.Lr(c, g).DD(g);
        c.Og(_.Rb.Pq(c.Ea.eurl || ""));
        this.mba && this.mba(c, c.rb());
        f = this.OH(a);
        f.NA && f.NA(f,
            a);
        (a = c.Ea.onCreate) && a(f);
        c.Ea.disableRelayOpen || f.Ce("_open");
        return f
    };
    var cA = function(a, c, f) {
            var g = c.Ea.canvasUrl;
            if (!g) return f;
            _.Sa(!c.Ea.allowPost && !c.Ea.forcePost, "Post is not supported when using canvas url");
            var h = c.getUrl();
            _.Sa(h && _.Rb.Pq(h) === a.Db && _.Rb.Pq(g) === a.Db, "Wrong origin for canvas or hidden url " + g);
            c.setUrl(g);
            _.Qm(c);
            c.Ea.canvasUrl = null;
            return function(a) {
                var c = a.Aa(),
                    g = c.location.hash;
                g = _.Un(h) + (/#/.test(h) ? g.replace(/^#/, "&") : g);
                c.location.replace(g);
                f && f(a)
            }
        },
        dA = function(a, c, f) {
            var g = c.Ea.relayOpen;
            if (g) {
                var h = a.Vb;
                g instanceof _.Rm ? (h = g, _.Ko(c,
                    0)) : 0 < Number(g) && _.Ko(c, Number(g) - 1);
                if (h) {
                    _.Sa(!!h.DE, "Relaying iframe open is disabled");
                    if (g = c.IZ())
                        if (g = _.eA[g]) c.Pm(a), g(c.value()), c.Pm(null);
                    c.Ea.openerIframe = null;
                    f.resolve(h.DE(c));
                    return !0
                }
            }
            return !1
        },
        fA = function(a, c, f) {
            var g = c.IZ();
            if (g)
                if (_.Sa(!!_.gA, "Defer style is disabled, when requesting style " + g), _.hA[g]) rt(a, c);
                else return iA(g, function() {
                    _.Sa(!!_.hA[g], "Fail to load style - " + g);
                    f.resolve(a.open(c.value()))
                }), !0;
            return !1
        };
    _.bA.prototype.open = function(a, c) {
        _.Sa(!this.Oj, "Cannot open iframe in disposed context");
        var f = new _.yp(a);
        c = cA(this, f, c);
        var g = new Lu(c);
        (c = f.getUrl()) && f.setUrl(_.Un(c));
        if (dA(this, f, g) || fA(this, f, g) || dA(this, f, g)) return g.promise;
        if (null != Ek(f)) {
            var h = (0, window.setTimeout)(function() {
                    n.rb().src = "about:blank";
                    g.reject({
                        timeout: "Exceeded time limit of :" + Ek(f) + "milliseconds"
                    })
                }, Ek(f)),
                l = g.resolve;
            g.resolve = function(a) {
                (0, window.clearTimeout)(h);
                l(a)
            }
        }
        f.Ea.waitForOnload && pl(f.Wp(), function() {
            g.resolve(n)
        });
        var n = this.Nf(a);
        f.Ea.waitForOnload || g.resolve(n);
        return g.promise
    };
    _.bA.prototype.taa = _.b(17);
    _.Rm = function(a, c, f, g) {
        this.Oj = !1;
        this.Yf = a;
        this.Nc = c;
        this.Jh = f;
        this.zd = g;
        this.re = _.Ss(this.zd);
        this.Db = this.zd.Pq();
        this.iK = this.zd.rb();
        this.vF = this.zd.Ea.where;
        this.$o = [];
        this.Ce("_default");
        a = this.zd.Ea.apis || [];
        for (c = 0; c < a.length; c++) this.Ce(a[c]);
        this.Yf.Uv[f] = this
    };
    _.k = _.Rm.prototype;
    _.k.Ma = _.b(0);
    _.k.U = function() {
        if (!this.Oj) {
            for (var a = 0; a < this.$o.length; a++) this.unregister(this.$o[a]);
            delete _.Sm.Uv[this.Tp()];
            this.Oj = !0
        }
    };
    _.k.getContext = function() {
        return this.Yf
    };
    _.k.Fl = function() {
        return this.Nc
    };
    _.k.Tp = function() {
        return this.Jh
    };
    _.k.rb = function() {
        return this.iK
    };
    _.k.V = function() {
        return this.vF
    };
    _.k.qc = function(a) {
        this.vF = a
    };
    _.k.vj = function() {
        (0, this.zd.Ea._rpcReadyFn)()
    };
    _.k.Vm = function(a, c) {
        this.zd.value()[a] = c
    };
    _.k.Zf = function(a) {
        return this.zd.value()[a]
    };
    _.k.va = function() {
        return this.zd.value()
    };
    _.k.Hh = function() {
        return this.zd.Hh()
    };
    _.k.Pq = function() {
        return this.Db
    };
    _.k.register = function(a, c, f) {
        _.Sa(!this.Oj, "Cannot register handler on disposed iframe " + a);
        _.Sa((f || _.Uz)(this), "Rejecting untrusted message " + a);
        f = this.Jh + ":" + this.Yf.Jh + ":" + a;
        1 == _.Ka(Xz, f, []).push(c) && (this.$o.push(a), _.sz(f, Wz(f, this, "_g_wasClosed" === a)))
    };
    _.k.unregister = function(a, c) {
        var f = this.Jh + ":" + this.Yf.Jh + ":" + a,
            g = Xz[f];
        g && (c ? (c = _.xd.call(g, c), 0 <= c && g.splice(c, 1)) : g.splice(0, g.length), 0 == g.length && (c = _.xd.call(this.$o, a), 0 <= c && this.$o.splice(c, 1), _.wz(f)))
    };
    _.k.fq = function() {
        return this.$o
    };
    _.k.Ce = function(a) {
        this.Sy = this.Sy || [];
        if (!(0 <= _.xd.call(this.Sy, a))) {
            this.Sy.push(a);
            a = Zz[a] || {
                map: {}
            };
            for (var c in a.map) _.Qa(a.map, c) && this.register(c, a.map[c], a.filter)
        }
    };
    _.k.send = function(a, c, f, g) {
        _.Sa(!this.Oj, "Cannot send message to disposed iframe - " + a);
        _.Sa((g || _.Uz)(this), "Wrong target for message " + a);
        f = new Lu(f);
        _.Az(this.Nc, this.Yf.Jh + ":" + this.Jh + ":" + a, f.resolve, c);
        return f.promise
    };
    _.jA = function(a, c, f, g) {
        return a.send(c, f, g, _.Vz)
    };
    _.Rm.prototype.aL = function(a) {
        return a
    };
    _.Rm.prototype.ping = function(a, c) {
        return _.jA(this, "_g_ping", c, a)
    };
    Xz = _.r();
    Zz = _.r();
    _.Sm = new _.bA;
    _.aA("_g_rpcReady", _.Rm.prototype.vj);
    _.aA("_g_discover", _.Rm.prototype.fq);
    _.aA("_g_ping", _.Rm.prototype.aL);
    var iA, rt;
    _.hA = _.r();
    _.eA = _.r();
    _.gA = function(a) {
        return _.hA[a]
    };
    iA = function(a, c) {
        _.Ua.load("gapi.iframes.style." + a, c)
    };
    rt = function(a, c) {
        var f = c.IZ();
        if (f) {
            c.rl(null);
            var g = _.hA[f];
            _.Sa(g, "No such style: " + f);
            c.Pm(a);
            g(c.value());
            c.Pm(null)
        }
    };
    var nA, oA;
    nA = {
        height: !0,
        width: !0
    };
    oA = /^(?!-*(?:expression|(?:moz-)?binding))(?:[.#]?-?(?:[_a-z0-9-]+)(?:-[_a-z0-9-]+)*-?|-?(?:[0-9]+(?:\.[0-9]*)?|\.[0-9]+)(?:[a-z]{1,2}|%)?|!important|)$/i;
    _.no = function(a) {
        "number" === typeof a && (a = String(a) + "px");
        return a
    };
    _.Rm.prototype.Aa = function() {
        if (!_.Uz(this)) return null;
        var a = this.zd.Ea._popupWindow;
        if (a) return a;
        var c = this.Nc.split("/");
        a = this.getContext().Aa();
        for (var f = 0; f < c.length && a; f++) {
            var g = c[f];
            a = ".." === g ? a == a.parent ? a.opener : a.parent : a.frames[g]
        }
        return a
    };
    var lA = function(a, c) {
        var f = a.Vb,
            g = !0;
        c.filter && (g = c.filter.call(c.qg, c.params));
        return _.Nu(g).then(function(g) {
            return g && f ? (c.um && c.um.call(a, c.params), g = c.sender ? c.sender(c.params) : _.jA(f, c.message, c.params), c.pn ? g.then(function() {
                return !0
            }) : !0) : !1
        })
    };
    _.bA.prototype.s6 = function(a, c, f) {
        a = lA(this, {
            sender: function(a) {
                var c = _.Sm.Vb;
                _.fb(_.Sm.Uv, function(f) {
                    f !== c && _.jA(f, "_g_wasClosed", a)
                });
                return _.jA(c, "_g_closeMe", a)
            },
            message: "_g_closeMe",
            params: a,
            qg: f,
            filter: this.$h("onCloseSelfFilter")
        });
        c = new Lu(c);
        c.resolve(a);
        return c.promise
    };
    _.bA.prototype.Y8 = function(a, c, f) {
        a = a || {};
        c = new Lu(c);
        c.resolve(lA(this, {
            message: "_g_restyleMe",
            params: a,
            qg: f,
            filter: this.$h("onRestyleSelfFilter"),
            pn: !0,
            um: this.$ca
        }));
        return c.promise
    };
    _.bA.prototype.$ca = function(a) {
        "auto" === a.height && (a.height = _.Ob.Cd())
    };
    _.mA = function(a) {
        var c = {};
        if (a)
            for (var f in a) _.Qa(a, f) && _.Qa(nA, f) && oA.test(a[f]) && (c[f] = a[f]);
        return c
    };
    _.k = _.Rm.prototype;
    _.k.close = function(a, c) {
        return _.jA(this, "_g_close", a, c)
    };
    _.k.sD = function(a, c) {
        return _.jA(this, "_g_restyle", a, c)
    };
    _.k.ds = function(a, c) {
        return _.jA(this, "_g_restyleDone", a, c)
    };
    _.k.qp = function(a) {
        return this.getContext().s6(a, void 0, this)
    };
    _.k.tD = function(a) {
        if (a && "object" === typeof a) return this.getContext().Y8(a, void 0, this)
    };
    _.k.fs = function(a) {
        var c = this.zd.Ea.onRestyle;
        c && c.call(this, a, this);
        a = a && "object" === typeof a ? _.mA(a) : {};
        (c = this.rb()) && a && "object" === typeof a && (_.Qa(a, "height") && (a.height = _.no(a.height)), _.Qa(a, "width") && (a.width = _.no(a.width)), _.Sl(a, c.style))
    };
    _.k.rp = function(a) {
        var c = this.zd.Ea.onClose;
        c && c.call(this, a, this);
        this.BC && this.BC() || (c = this.rb()) && c.parentNode && c.parentNode.removeChild(c);
        if (c = this.zd.Ea.controller) {
            var f = {};
            f.frameName = this.Tp();
            _.jA(c, "_g_disposeControl", f)
        }
        Jp(this.Jh + ":" + this.Yf.Jh + ":_g_wasClosed", a, this)
    };
    _.bA.prototype.rca = _.b(18);
    _.bA.prototype.xca = _.b(19);
    _.Rm.prototype.QE = _.b(20);
    _.Rm.prototype.PE = function(a, c) {
        this.register("_g_wasClosed", a, c)
    };
    _.Rm.prototype.pM = function() {
        delete this.getContext().Uv[this.Tp()];
        this.getContext().Aa().setTimeout((0, _.H)(function() {
            this.U()
        }, this), 0)
    };
    _.aA("_g_close", _.Rm.prototype.qp);
    _.aA("_g_closeMe", _.Rm.prototype.rp);
    _.aA("_g_restyle", _.Rm.prototype.tD);
    _.aA("_g_restyleMe", _.Rm.prototype.fs);
    _.aA("_g_wasClosed", _.Rm.prototype.pM);

    var Tu;
    _.BB.prototype.H0 = _.d(15, function(a) {
        this.Ea.apis = a;
        return this
    });
    _.BB.prototype.oZ = _.d(14, function(a) {
        this.Ea.rpctoken = a;
        return this
    });
    _.Pu = function(a, c) {
        a.Ea.onClose = c
    };
    _.JB = function(a, c) {
        a.Ea.where = c;
        return a
    };
    Tu = function(a) {
        this.Ea = a || {}
    };
    Tu.prototype.value = function() {
        return this.Ea
    };
    var Kv = function(a) {
        var c = new Tu;
        c.Ea.role = a;
        return c
    };
    Tu.prototype.e4 = function() {
        return this.Ea.role
    };
    Tu.prototype.Mo = function(a) {
        this.Ea.handler = a;
        return this
    };
    Tu.prototype.Cr = function() {
        return this.Ea.handler
    };
    var Ii = function(a, c) {
        a.Ea.filter = c;
        return a
    };
    Tu.prototype.H0 = function(a) {
        this.Ea.apis = a;
        return this
    };
    var $v = function(a) {
            a.Ea.runOnce = !0;
            return a
        },
        kv = function(a) {
            this.Ea = a || {}
        };
    kv.prototype.value = function() {
        return this.Ea
    };
    kv.prototype.getIframe = function() {
        return this.Ea.iframe
    };
    var lv = function(a, c) {
            a.Ea.role = c;
            return a
        },
        mv = function(a, c) {
            a.Ea.data = c;
            return a
        };
    kv.prototype.vj = function(a) {
        this.Ea.setRpcReady = a;
        return this
    };
    kv.prototype.oZ = function(a) {
        this.Ea.rpctoken = a;
        return this
    };
    var tB = function(a) {
            a.Ea.selfConnect = !0;
            return a
        },
        fB = /^https?:\/\/[^\/%\\?#\s]+$/i,
        bB = {
            longdesc: !0,
            name: !0,
            src: !0,
            frameborder: !0,
            marginwidth: !0,
            marginheight: !0,
            scrolling: !0,
            align: !0,
            height: !0,
            width: !0,
            id: !0,
            "class": !0,
            title: !0,
            tabindex: !0,
            hspace: !0,
            vspace: !0,
            allowtransparency: !0
        },
        ZA = function(a, c, f) {
            var g = a.Nc,
                h = c.re;
            _.Mr(_.Lr(f, a.re + "/" + c.Nc), h + "/" + g);
            _.oq(f, c.Tp()).Og(c.Db)
        };
    _.bA.prototype.u6 = function(a, c) {
        a = new kv(a);
        var f = new kv(c),
            g = _.Yb(a);
        c = a.getIframe();
        var h = f.getIframe();
        if (h) {
            var l = _.Wb(a),
                n = new _.yp;
            ZA(c, h, n);
            mv(lv((new kv(n.value())).oZ(l), a.Ea.role), a.Ea.data).vj(g);
            var q = new _.yp;
            ZA(h, c, q);
            mv(lv((new kv(q.value())).oZ(l), f.Ea.role), f.Ea.data).vj(!0);
            _.jA(c, "_g_connect", n.value(), function() {
                g || _.jA(h, "_g_connect", q.value())
            });
            g && _.jA(h, "_g_connect", q.value())
        } else f = {}, mv(lv(tB(new kv(f)), a.Ea.role), a.Ea.data), _.jA(c, "_g_connect", f)
    };
    _.k = _.Rm.prototype;
    _.k.$H = function(a) {
        var c = new _.yp(a);
        a = new kv(c.value());
        if (a.Ea.selfConnect) var f = this;
        else(_.Sa(fB.test(c.Pq()), "Illegal origin for connected iframe - " + c.Pq()), f = this.Yf.Uv[c.Tp()], f) ? _.Yb(c) && (f.vj(), _.jA(f, "_g_rpcReady")) : (c = _.oq(_.Mr(_.Lr((new _.yp).oZ(_.Wb(c)), c.Fl()), _.Ss(c)).Og(c.Pq()), c.Tp()).vj(_.Yb(c)), f = this.Yf.OH(c.value()));
        c = this.Yf;
        var g = a.Ea.role;
        a = a.Ea.data;
        dB(c);
        g = g || "";
        _.Ka(c.v6, g, []).push({
            qg: f.Tp(),
            data: a
        });
        eB(f, a, c.m8[g])
    };
    _.k.NA = function(a, c) {
        (new _.yp(c)).Ea._relayedDepth || (c = {}, tB(lv(new kv(c), "_opener")), _.jA(a, "_g_connect", c))
    };
    _.k.DE = function(a) {
        var c = this,
            f = a.Ea.messageHandlers,
            g = a.Ea.messageHandlersFilter,
            h = a.Ea.onClose;
        _.Pu(_.AN(_.BN(a, null), null), null);
        _.Su();
        return _.jA(this, "_g_open", a.value()).then(function(l) {
            var n = new _.yp(l[0]),
                q = n.Tp();
            l = new _.yp;
            var t = c.re,
                v = _.Ss(n);
            _.Mr(_.Lr(l, c.Nc + "/" + n.Fl()), v + "/" + t);
            _.oq(l, q);
            l.Og(n.Pq());
            l.H0(n.Ea.apis);
            l.oZ(_.Wb(a));
            _.BN(l, f);
            _.AN(l, g);
            _.Pu(l, h);
            (n = c.Yf.Uv[q]) || (n = c.Yf.OH(l.value()));
            return n
        })
    };
    _.k.CA = function(a) {
        var c = a.getUrl();
        _.Sa(!c || _.Ie.test(c), "Illegal url for new iframe - " + c);
        var f = a.Wp().value();
        c = {};
        for (var g in f) _.Qa(f, g) && _.Qa(bB, g) && (c[g] = f[g]);
        _.Qa(f, "style") && (g = f.style, "object" === typeof g && (c.style = _.mA(g)));
        a.value().attributes = c
    };
    _.k.VK = function(a) {
        a = new _.yp(a);
        this.CA(a);
        var c = a.Ea._relayedDepth || 0;
        a.Ea._relayedDepth = c + 1;
        a.Ea.openerIframe = this;
        _.Su();
        var f = _.Wb(a);
        a.oZ(null);
        return this.Yf.open(a.value()).then((0, _.H)(function(a) {
            var g = (new _.yp(a.va())).Ea.apis,
                l = new _.yp;
            ZA(a, this, l);
            0 == c && lv(new kv(l.value()), "_opener");
            l.vj(!0);
            l.oZ(f);
            _.jA(a, "_g_connect", l.value());
            l = new _.yp;
            _.oq(_.Mr(_.Lr(l.H0(g), a.Fl()), a.re), a.Tp()).Og(a.Pq());
            return l.value()
        }, this))
    };
    var dB = function(a) {
        a.v6 || (a.v6 = _.r(), a.m8 = _.r())
    };
    _.bA.prototype.p3 = function(a, c, f, g) {
        dB(this);
        "object" === typeof a ? (c = new Tu(a), f = c.e4() || "") : (c = Ii(Kv(a).Mo(c).H0(f), g), f = a);
        g = this.v6[f] || [];
        a = !1;
        for (var h = 0; h < g.length && !a; h++) eB(this.Uv[g[h].qg], g[h].data, [c]), a = c.Ea.runOnce;
        f = _.Ka(this.m8, f, []);
        a || c.Ea.dontWait || f.push(c)
    };
    _.bA.prototype.dca = _.b(21);
    var eB = function(a, c, f) {
        f = f || [];
        for (var g = 0; g < f.length; g++) {
            var h = f[g];
            if (h && a) {
                var l = h.Ea.filter || _.Uz;
                if (a && l(a)) {
                    l = h.Ea.apis || [];
                    for (var n = 0; n < l.length; n++) a.Ce(l[n]);
                    h.Cr() && h.Cr()(a, c);
                    h.Ea.runOnce && (f.splice(g, 1), --g)
                }
            }
        }
    };
    _.bA.prototype.a1 = function(a, c, f) {
        this.p3($v(Ii(Kv("_opener").Mo(a).H0(c), f)).value())
    };
    _.Rm.prototype.pL = function(a) {
        this.getContext().a1(function(c) {
            c.send("_g_wasRestyled", a, void 0, _.Vz)
        }, null, _.Vz)
    };
    var gB = _.Sm.Vb;
    gB && gB.register("_g_restyleDone", _.Rm.prototype.pL, _.Vz);
    _.aA("_g_connect", _.Rm.prototype.$H);
    var hB = {};
    hB._g_open = _.Rm.prototype.VK;
    _.Yz("_open", hB, _.Vz);

    _.At = (window.gapi || {}).load;
    _.Tc = _.Ka(_.bb, "rw", _.r());
    var Uc = function(a, c) {
        (a = _.Tc[a]) && a.state < c && (a.state = c)
    };
    var Vc = function(a) {
        a = (a = _.Tc[a]) ? a.oid : void 0;
        if (a) {
            var c = _.ua.getElementById(a);
            c && c.parentNode.removeChild(c);
            delete _.Tc[a];
            Vc(a)
        }
    };
    _.bf = function(a) {
        a = a.container;
        "string" === typeof a && (a = window.document.getElementById(a));
        return a
    };
    _.gf = function(a) {
        var c = a.clientWidth;
        return "position:absolute;top:-10000px;width:" + (c ? c + "px" : a.style.width || "300px") + ";margin:0px;border-style:none;"
    };
    _.hf = function(a, c) {
        var f = {},
            g = a.va(),
            h = c && c.width,
            l = c && c.height,
            n = c && c.verticalAlign;
        n && (f.verticalAlign = n);
        h || (h = g.width || a.width);
        l || (l = g.height || a.height);
        g.width = f.width = h;
        g.height = f.height = l;
        g = a.rb();
        h = a.Hh();
        Uc(h, 2);
        a: {
            h = a.V();
            var q;
            f = f || {};
            if (_.bb.oa && (q = g.id)) {
                l = (l = _.Tc[q]) ? l.state : void 0;
                if (1 === l || 4 === l) break a;
                Vc(q)
            }(l = h.nextSibling) && l.getAttribute && l.getAttribute("data-gapistub") && (h.parentNode.removeChild(l), h.style.cssText = "");
            l = f.width;
            n = f.height;
            var t = h.style;
            t.textIndent = "0";
            t.margin =
                "0";
            t.padding = "0";
            t.background = "transparent";
            t.borderStyle = "none";
            t.cssFloat = "none";
            t.styleFloat = "none";
            t.lineHeight = "normal";
            t.fontSize = "1px";
            t.verticalAlign = "baseline";
            h = h.style;
            h.display = "inline-block";
            g = g.style;
            g.position = "static";
            g.left = "0";
            g.top = "0";
            g.visibility = "visible";
            l && (h.width = g.width = l + "px");
            n && (h.height = g.height = n + "px");
            f.verticalAlign && (h.verticalAlign = f.verticalAlign);
            q && Uc(q, 3)
        }(q = c ? c.title : null) && a.rb().setAttribute("title", q);
        (c = c ? c.ariaLabel : null) && a.rb().setAttribute("aria-label",
            c)
    };
    _.jf = function(a) {
        var c = a.V();
        c && c.removeChild(a.rb())
    };
    _.Ru = function(a) {
        a.where = _.bf(a);
        var c = a.messageHandlers = a.messageHandlers || {},
            f = function(a) {
                _.hf(this, a)
            };
        c._ready = f;
        c._renderstart = f;
        var g = a.onClose;
        a.onClose = function(a) {
            g && g.call(this, a);
            _.jf(this)
        };
        a.onCreate = function(a) {
            a = a.rb();
            a.style.cssText = _.gf(a)
        }
    };

    (function() {
        function a(a, c) {
            if (!(a < f) && g)
                if (2 === a && g.warn) g.warn(c);
                else if (3 === a && g.error) try {
                g.error(c)
            } catch (n) {} else g.log && g.log(c)
        }
        var c = function(c) {
            a(1, c)
        };
        _.Lb = function(c) {
            a(2, c)
        };
        _.sa = function(c) {
            a(3, c)
        };
        _.Fc = function() {};
        c.INFO = 1;
        c.WARNING = 2;
        c.NONE = 4;
        var f = 1,
            g = window.console ? window.console : window.opera ? window.opera.postError : void 0;
        return c
    })();

    _.R = _.R || {};
    (function() {
        var a = [];
        _.R.du = function(c) {
            a.push(c)
        };
        _.R.XX = function() {
            for (var c = 0, f = a.length; c < f; ++c) a[c]()
        }
    })();
    _.Pb = function() {
        var a = window.gadgets && window.gadgets.config && window.gadgets.config.get;
        a && _.Fa(a());
        return {
            register: function(a, f, g) {
                g && g(_.P())
            },
            get: function(a) {
                return _.P(a)
            },
            update: function(a, f) {
                if (f) throw "Config replacement is not supported";
                _.Fa(a)
            },
            kc: function() {}
        }
    }();
    _.Mu("gadgets.config.register", _.Pb.register);
    _.Mu("gadgets.config.get", _.Pb.get);
    _.Mu("gadgets.config.init", _.Pb.kc);
    _.Mu("gadgets.config.update", _.Pb.update);
    var Qb;
    _.Ma = function() {
        var a = _.ua.readyState;
        return "complete" === a || "interactive" === a && -1 == window.navigator.userAgent.indexOf("MSIE")
    };
    _.Wa = function(a) {
        if (_.Ma()) a();
        else {
            var c = !1,
                f = function() {
                    if (!c) return c = !0, a.apply(this, arguments)
                };
            _.ta.addEventListener ? (_.ta.addEventListener("load", f, !1), _.ta.addEventListener("DOMContentLoaded", f, !1)) : _.ta.attachEvent && (_.ta.attachEvent("onreadystatechange", function() {
                _.Ma() && f.apply(this, arguments)
            }), _.ta.attachEvent("onload", f))
        }
    };
    Qb = Qb || {};
    Qb.Km = null;
    Qb.bm = null;
    Qb.FM = null;
    Qb.frameElement = null;
    Qb = Qb || {};
    Qb.Lj || (Qb.Lj = function() {
        function a(a) {
            "undefined" != typeof window.addEventListener ? window.addEventListener("message", a, !1) : "undefined" != typeof window.attachEvent && window.attachEvent("onmessage", a);
            window.___jsl = window.___jsl || {};
            var c = window.___jsl;
            c.RPMQ = c.RPMQ || [];
            c.RPMQ.push(a)
        }

        function c(a) {
            var c = (0, _.of)(a.data);
            if (c && c.f) {
                (0, _.Fc)("gadgets.rpc.receive(" + window.name + "): " + a.data);
                var g = _.T.$d(c.f);
                h && ("undefined" !== typeof a.origin ? a.origin !== g : a.domain !== /^.+:\/\/([^:]+).*/.exec(g)[1]) ? _.sa("Invalid rpc message origin. " +
                    g + " vs " + (a.origin || "")) : f(c, a.origin)
            }
        }
        var f, g, h = !0;
        return {
            Kk: function() {
                return "wpm"
            },
            jga: function() {
                return !0
            },
            kc: function(l, n) {
                _.Pb.register("rpc", null, function(a) {
                    "true" === String((a && a.rpc || {}).disableForceSecure) && (h = !1)
                });
                f = l;
                g = n;
                a(c);
                g("..", !0);
                return !0
            },
            sf: function(a) {
                g(a, !0);
                return !0
            },
            call: function(a, c, f) {
                var g = _.T.$d(a),
                    h = _.T.dk(a);
                g ? window.setTimeout(function() {
                    var a = (0, _.mf)(f);
                    (0, _.Fc)("gadgets.rpc.send(" + window.name + "): " + a);
                    h.postMessage(a, g)
                }, 0) : ".." != a && _.sa("No relay set (used as window.postMessage targetOrigin), cannot send cross-domain message");
                return !0
            }
        }
    }());
    if (window.gadgets && window.gadgets.rpc) "undefined" != typeof _.T && _.T || (_.T = window.gadgets.rpc, _.T.config = _.T.config, _.T.register = _.T.register, _.T.unregister = _.T.unregister, _.T.Am = _.T.registerDefault, _.T.aB = _.T.unregisterDefault, _.T.Fk = _.T.forceParentVerifiable, _.T.call = _.T.call, _.T.Rk = _.T.getRelayUrl, _.T.Xg = _.T.setRelayUrl, _.T.Wg = _.T.setAuthToken, _.T.tf = _.T.setupReceiver, _.T.Wd = _.T.getAuthToken, _.T.mj = _.T.removeReceiver, _.T.Qk = _.T.getRelayChannel, _.T.ym = _.T.receive, _.T.zm = _.T.receiveSameDomain, _.T.Pq =
        _.T.getOrigin, _.T.$d = _.T.getTargetOrigin, _.T.dk = _.T._getTargetWin, _.T.Uo = _.T._parseSiblingId);
    else {
        _.T = function() {
            function a(a, c) {
                if (!Ta[a]) {
                    var f = fc;
                    c || (f = te);
                    Ta[a] = f;
                    c = Ya[a] || [];
                    for (var g = 0; g < c.length; ++g) {
                        var h = c[g];
                        h.t = ka[a];
                        f.call(a, h.f, h)
                    }
                    Ya[a] = []
                }
            }

            function c() {
                function a() {
                    Go = !0
                }
                Ho || ("undefined" != typeof window.addEventListener ? window.addEventListener("unload", a, !1) : "undefined" != typeof window.attachEvent && window.attachEvent("onunload", a), Ho = !0)
            }

            function f(a, f, g, h, l) {
                ka[f] && ka[f] === g || (_.sa("Invalid gadgets.rpc token. " +
                    ka[f] + " vs " + g), ok(f, 2));
                l.onunload = function() {
                    ja[f] && !Go && (ok(f, 1), _.T.mj(f))
                };
                c();
                h = (0, _.of)((0, window.decodeURIComponent)(h))
            }

            function g(c, f) {
                if (c && "string" === typeof c.s && "string" === typeof c.f && c.a instanceof Array)
                    if (ka[c.f] && ka[c.f] !== c.t && (_.sa("Invalid gadgets.rpc token. " + ka[c.f] + " vs " + c.t), ok(c.f, 2)), "__ack" === c.s) window.setTimeout(function() {
                        a(c.f, !0)
                    }, 0);
                    else {
                        c.c && (c.callback = function(a) {
                            _.T.call(c.f, (c.g ? "legacy__" : "") + "__cb", null, c.c, a)
                        });
                        if (f) {
                            var g = h(f);
                            c.origin = f;
                            var l = c.r;
                            try {
                                var n =
                                    h(l)
                            } catch ($B) {}
                            l && n == g || (l = f);
                            c.referer = l
                        }
                        f = (E[c.s] || E[""]).apply(c, c.a);
                        c.c && "undefined" !== typeof f && _.T.call(c.f, "__cb", null, c.c, f)
                    }
            }

            function h(a) {
                if (!a) return "";
                a = a.split("#")[0].split("?")[0];
                a = a.toLowerCase();
                0 == a.indexOf("//") && (a = window.location.protocol + a); - 1 == a.indexOf("://") && (a = window.location.protocol + "//" + a);
                var c = a.substring(a.indexOf("://") + 3),
                    f = c.indexOf("/"); - 1 != f && (c = c.substring(0, f));
                a = a.substring(0, a.indexOf("://"));
                if ("http" !== a && "https" !== a && "chrome-extension" !== a && "file" !==
                    a && "android-app" !== a && "chrome-search" !== a) throw Error("Pa");
                f = "";
                var g = c.indexOf(":");
                if (-1 != g) {
                    var h = c.substring(g + 1);
                    c = c.substring(0, g);
                    if ("http" === a && "80" !== h || "https" === a && "443" !== h) f = ":" + h
                }
                return a + "://" + c + f
            }

            function l(a) {
                if ("/" == a.charAt(0)) {
                    var c = a.indexOf("|");
                    return {
                        id: 0 < c ? a.substring(1, c) : a.substring(1),
                        origin: 0 < c ? a.substring(c + 1) : null
                    }
                }
                return null
            }

            function n(a) {
                if ("undefined" === typeof a || ".." === a) return window.parent;
                var c = l(a);
                if (c) return window.top.frames[c.id];
                a = String(a);
                return (c = window.frames[a]) ?
                    c : (c = window.document.getElementById(a)) && c.contentWindow ? c.contentWindow : null
            }

            function q(a, c) {
                if (!0 !== ja[a]) {
                    "undefined" === typeof ja[a] && (ja[a] = 0);
                    var f = n(a);
                    ".." !== a && null == f || !0 !== fc.sf(a, c) ? !0 !== ja[a] && 10 > ja[a] ++ ? window.setTimeout(function() {
                        q(a, c)
                    }, 500) : (Ta[a] = te, ja[a] = !0) : ja[a] = !0
                }
            }

            function t(a) {
                (a = K[a]) && "/" === a.substring(0, 1) && (a = "/" === a.substring(1, 2) ? window.document.location.protocol + a : window.document.location.protocol + "//" + window.document.location.host + a);
                return a
            }

            function v(a, c, f) {
                c && !/http(s)?:\/\/.+/.test(c) &&
                    (0 == c.indexOf("//") ? c = window.location.protocol + c : "/" == c.charAt(0) ? c = window.location.protocol + "//" + window.location.host + c : -1 == c.indexOf("://") && (c = window.location.protocol + "//" + c));
                K[a] = c;
                "undefined" !== typeof f && (U[a] = !!f)
            }

            function w(a, c) {
                c = c || "";
                ka[a] = String(c);
                q(a, c)
            }

            function A(a) {
                a = (a.passReferrer || "").split(":", 2);
                If = a[0] || "none";
                wh = a[1] || "origin"
            }

            function F(c) {
                "true" === String(c.useLegacyProtocol) && (fc = Qb.FM || te, fc.kc(g, a))
            }

            function z(a, c) {
                function f(f) {
                    f = f && f.rpc || {};
                    A(f);
                    var g = f.parentRelayUrl ||
                        "";
                    g = h(rw.parent || c) + g;
                    v("..", g, "true" === String(f.useLegacyProtocol));
                    F(f);
                    w("..", a)
                }!rw.parent && c ? f({}) : _.Pb.register("rpc", null, f)
            }

            function I(a, c, f) {
                if (".." === a) z(f || rw.rpctoken || rw.ifpctok || "", c);
                else a: {
                    var g = null;
                    if ("/" != a.charAt(0)) {
                        if (!_.R) break a;
                        g = window.document.getElementById(a);
                        if (!g) throw Error("h`" + a);
                    }
                    g = g && g.src;
                    c = c || _.T.Pq(g);
                    v(a, c);
                    c = _.R.Qc(g);
                    w(a, f || c.rpctoken)
                }
            }
            var E = {},
                K = {},
                U = {},
                ka = {},
                S = 0,
                Ca = {},
                ja = {},
                rw = {},
                Ta = {},
                Ya = {},
                If = null,
                wh = null,
                nk = window.top !== window.self,
                Yw = window.name,
                ok = function() {},
                pk = window.console,
                Io = pk && pk.log && function(a) {
                    pk.log(a)
                } || function() {},
                te = function() {
                    function a(a) {
                        return function() {
                            Io(a + ": call ignored")
                        }
                    }
                    return {
                        Kk: function() {
                            return "noop"
                        },
                        jga: function() {
                            return !0
                        },
                        kc: a("init"),
                        sf: a("setup"),
                        call: a("call")
                    }
                }();
            _.R && (rw = _.R.Qc());
            var Go = !1,
                Ho = !1,
                fc = function() {
                    if ("rmr" == rw.rpctx) return Qb.Km;
                    var a = "function" === typeof window.postMessage ? Qb.Lj : "object" === typeof window.postMessage ? Qb.Lj : window.ActiveXObject ? Qb.bm ? Qb.bm : Qb.FM : 0 < window.navigator.userAgent.indexOf("WebKit") ?
                        Qb.Km : "Gecko" === window.navigator.product ? Qb.frameElement : Qb.FM;
                    a || (a = te);
                    return a
                }();
            E[""] = function() {
                Io("Unknown RPC service: " + this.s)
            };
            E.__cb = function(a, c) {
                var f = Ca[a];
                f && (delete Ca[a], f.call(this, c))
            };
            return {
                config: function(a) {
                    "function" === typeof a.Mm && (ok = a.Mm)
                },
                register: function(a, c) {
                    if ("__cb" === a || "__ack" === a) throw Error("i");
                    if ("" === a) throw Error("j");
                    E[a] = c
                },
                unregister: function(a) {
                    if ("__cb" === a || "__ack" === a) throw Error("k");
                    if ("" === a) throw Error("l");
                    delete E[a]
                },
                Am: function(a) {
                    E[""] = a
                },
                aB: function() {
                    delete E[""]
                },
                Fk: function() {},
                call: function(a, c, f, g) {
                    a = a || "..";
                    var h = "..";
                    ".." === a ? h = Yw : "/" == a.charAt(0) && (h = _.T.Pq(window.location.href), h = "/" + Yw + (h ? "|" + h : ""));
                    ++S;
                    f && (Ca[S] = f);
                    var n = {
                        s: c,
                        f: h,
                        c: f ? S : 0,
                        a: Array.prototype.slice.call(arguments, 3),
                        t: ka[a],
                        l: !!U[a]
                    };
                    a: if ("bidir" === If || "c2p" === If && ".." === a || "p2c" === If && ".." !== a) {
                        var q = window.location.href;
                        var t = "?";
                        if ("query" === wh) t = "#";
                        else if ("hash" === wh) break a;
                        t = q.lastIndexOf(t);
                        t = -1 === t ? q.length : t;
                        q = q.substring(0, t)
                    } else q = null;
                    q && (n.r =
                        q);
                    if (".." === a || null != l(a) || window.document.getElementById(a))(q = Ta[a]) || null === l(a) || (q = fc), 0 === c.indexOf("legacy__") && (q = fc, n.s = c.substring(8), n.c = n.c ? n.c : S), n.g = !0, n.r = h, q ? (U[a] && (q = Qb.FM), !1 === q.call(a, h, n) && (Ta[a] = te, fc.call(a, h, n))) : Ya[a] ? Ya[a].push(n) : Ya[a] = [n]
                },
                Rk: t,
                Xg: v,
                Wg: w,
                tf: I,
                Wd: function(a) {
                    return ka[a]
                },
                mj: function(a) {
                    delete K[a];
                    delete U[a];
                    delete ka[a];
                    delete ja[a];
                    delete Ta[a]
                },
                Qk: function() {
                    return fc.Kk()
                },
                ym: function(a, c) {
                    4 < a.length ? fc.Vo(a, g) : f.apply(null, a.concat(c))
                },
                zm: function(a) {
                    a.a =
                        Array.prototype.slice.call(a.a);
                    window.setTimeout(function() {
                        g(a)
                    }, 0)
                },
                Pq: h,
                $d: function(a) {
                    var c = null,
                        f = t(a);
                    f ? c = f : (f = l(a)) ? c = f.origin : ".." == a ? c = rw.parent : (a = window.document.getElementById(a)) && "iframe" === a.tagName.toLowerCase() && (c = a.src);
                    return h(c)
                },
                kc: function() {
                    !1 === fc.kc(g, a) && (fc = te);
                    nk ? I("..") : _.Pb.register("rpc", null, function(a) {
                        a = a.rpc || {};
                        A(a);
                        F(a)
                    })
                },
                dk: n,
                Uo: l,
                Iia: "__ack",
                lh: Yw || "..",
                Pia: 0,
                Oia: 1,
                Nia: 2
            }
        }();
        _.T.kc()
    };
    _.T.config({
        Mm: function(a) {
            throw Error("m`" + a);
        }
    });
    _.Fc = _.ke;
    _.Mu("gadgets.rpc.config", _.T.config);
    _.Mu("gadgets.rpc.register", _.T.register);
    _.Mu("gadgets.rpc.unregister", _.T.unregister);
    _.Mu("gadgets.rpc.registerDefault", _.T.Am);
    _.Mu("gadgets.rpc.unregisterDefault", _.T.aB);
    _.Mu("gadgets.rpc.forceParentVerifiable", _.T.Fk);
    _.Mu("gadgets.rpc.call", _.T.call);
    _.Mu("gadgets.rpc.getRelayUrl", _.T.Rk);
    _.Mu("gadgets.rpc.setRelayUrl", _.T.Xg);
    _.Mu("gadgets.rpc.setAuthToken", _.T.Wg);
    _.Mu("gadgets.rpc.setupReceiver", _.T.tf);
    _.Mu("gadgets.rpc.getAuthToken", _.T.Wd);
    _.Mu("gadgets.rpc.removeReceiver", _.T.mj);
    _.Mu("gadgets.rpc.getRelayChannel", _.T.Qk);
    _.Mu("gadgets.rpc.receive", _.T.ym);
    _.Mu("gadgets.rpc.receiveSameDomain", _.T.zm);
    _.Mu("gadgets.rpc.getOrigin", _.T.Pq);
    _.Mu("gadgets.rpc.getTargetOrigin", _.T.$d);

    _.Uo = _.r();
    _.Uu = function(a) {
        var c = window;
        a = (a || c.location.href).match(/.*(\?|#|&)usegapi=([^&#]+)/) || [];
        return "1" === (0, window.decodeURIComponent)(a[a.length - 1] || "")
    };
    var dC, $g, Zu, $u, rh, kb, Ak, Fk, eq, Dk, Fm;
    _.Vu = {
        apppackagename: 1,
        callback: 1,
        clientid: 1,
        cookiepolicy: 1,
        openidrealm: -1,
        includegrantedscopes: -1,
        requestvisibleactions: 1,
        scope: 1
    };
    _.Wu = !1;
    _.Xu = function() {
        if (!_.Wu) {
            for (var a = window.document.getElementsByTagName("meta"), c = 0; c < a.length; ++c) {
                var f = a[c].name.toLowerCase();
                if (_.jd(f, "google-signin-")) {
                    f = f.substring(14);
                    var g = a[c].content;
                    _.Vu[f] && g && (_.Uo[f] = g)
                }
            }
            if (window.self !== window.top) {
                a = window.document.location.toString();
                for (var h in _.Vu) 0 < _.Vu[h] && (c = _.e(a, h, "")) && (_.Uo[h] = c)
            }
            _.Wu = !0
        }
        h = _.r();
        _.Sl(_.Uo, h);
        return h
    };
    dC = function(a) {
        return function(c, f) {
            return a ? _.ql()[f] || a[f] : _.ql()[f] || ""
        }
    };
    $g = {
        button: !0,
        div: !0,
        span: !0
    };
    Zu = function(a) {
        return _.Ka(_.bb, "watt", _.r())[a]
    };
    $u = function(a) {
        var c = _.Ka(_.bb, "sws", []);
        return 0 <= _.xd.call(c, a)
    };
    rh = function(a, c) {
        if (!_.Ma()) try {
            a()
        } catch (f) {}
        _.Wa(c)
    };
    kb = function(a) {
        if (_.Ia.test(Object.keys)) return Object.keys(a);
        var c = [],
            f;
        for (f in a) _.Qa(a, f) && c.push(f);
        return c
    };
    Ak = function() {};
    Fk = function(a) {
        var c = a.Ws,
            f = function(a) {
                f.T.constructor.call(this, a);
                var c = this.Ya.length;
                this.dJ = [];
                for (var g = 0; g < c; ++g) this.Ya[g].zK || (this.dJ[g] = new this.Ya[g](a))
            };
        _.J(f, c);
        for (var g = []; a;) {
            if (c = a.Ws) {
                c.Ya && _.Gl(g, c.Ya);
                var h = c.prototype,
                    l;
                for (l in h)
                    if (h.hasOwnProperty(l) && _.vd(h[l]) && h[l] !== c) {
                        var n = !!h[l].RH,
                            q = eq(l, h, g, n);
                        (n = Dk(l, h, q, n)) && (f.prototype[l] = n)
                    }
            }
            a = a.T && a.T.constructor
        }
        f.prototype.Ya = g;
        return f
    };
    eq = function(a, c, f, g) {
        for (var h = [], l = 0; l < f.length && (f[l].prototype[a] === c[a] || (h.push(l), !g)); ++l);
        return h
    };
    Dk = function(a, c, f, g) {
        return f.length ? g ? function(c) {
            var g = this.dJ[f[0]];
            return g ? g[a].apply(this.dJ[f[0]], arguments) : this.Ya[f[0]].prototype[a].apply(this, arguments)
        } : c[a].uH ? function() {
            a: {
                var c = Array.prototype.slice.call(arguments, 0);
                for (var g = 0; g < f.length; ++g) {
                    var n = this.dJ[f[g]];
                    if (n = n ? n[a].apply(n, c) : this.Ya[f[g]].prototype[a].apply(this, c)) {
                        c = n;
                        break a
                    }
                }
                c = !1
            }
            return c
        } : c[a].VF ? function() {
            a: {
                var c = Array.prototype.slice.call(arguments, 0);
                for (var g = 0; g < f.length; ++g) {
                    var n = this.dJ[f[g]];
                    n = n ? n[a].apply(n,
                        c) : this.Ya[f[g]].prototype[a].apply(this, c);
                    if (null != n) {
                        c = n;
                        break a
                    }
                }
                c = void 0
            }
            return c
        } : c[a].AE ? function(c) {
            for (var g = Array.prototype.slice.call(arguments, 0), h = 0; h < f.length; ++h) {
                var q = this.dJ[f[h]];
                q ? q[a].apply(q, g) : this.Ya[f[h]].prototype[a].apply(this, g)
            }
        } : function(c) {
            return this.t1(a, f, Array.prototype.slice.call(arguments, 0))
        } : g || c[a].uH || c[a].VF || c[a].AE ? null : Fm
    };
    Fm = function() {
        return []
    };
    Ak.prototype.t1 = function(a, c, f) {
        for (var g = [], h = 0; h < c.length; ++h) {
            var l = this.dJ[c[h]];
            g.push(l ? l[a].apply(l, f) : this.Ya[c[h]].prototype[a].apply(this, f))
        }
        return g
    };
    Ak.prototype.V6 = function(a) {
        if (this.dJ)
            for (var c = 0; c < this.dJ.length; ++c)
                if (this.dJ[c] instanceof a) return this.dJ[c];
        return null
    };
    var Nn = function(a) {
        return this.Vx.V6(a)
    };
    var sd, qd, Xc, Yc, md, od, rd;
    sd = ["left", "right"];
    qd = "inline bubble none only pp vertical-bubble".split(" ");
    Xc = function(a) {
        var c;
        a.match(/^https?%3A/i) && (c = (0, window.decodeURIComponent)(a));
        return _.vg(window.document, c ? c : a)
    };
    Yc = function(a) {
        a = a || "canonical";
        for (var c = window.document.getElementsByTagName("link"), f = 0, g = c.length; f < g; f++) {
            var h = c[f],
                l = h.getAttribute("rel");
            if (l && l.toLowerCase() == a && (h = h.getAttribute("href")) && (h = Xc(h)) && null != h.match(/^https?:\/\/[\w\-\_\.]+/i)) return h
        }
        return window.location.href
    };
    md = function() {
        return window.location.origin || window.location.protocol + "//" + window.location.host
    };
    _.Zc = function(a, c, f, g) {
        return (a = "string" == typeof a ? a : void 0) ? Xc(a) : Yc(g)
    };
    _.td = function(a) {
        a.source = [null, "source"];
        a.expandTo = [null, "expandTo"];
        a.align = [rd];
        a.annotation = [_.pd];
        a.origin = [md]
    };
    od = function(a, c) {
        if ("string" == typeof a) {
            a = a.toLowerCase();
            var f;
            for (f = 0; f < c.length; f++)
                if (c[f] == a) return a
        }
    };
    rd = function(a) {
        return od(a, sd)
    };
    _.pd = function(a) {
        return od(a, qd)
    };
    _.fd = function(a, c, f) {
        null == a && f && (a = f.db, null == a && (a = f.gwidget && f.gwidget.db));
        return a || void 0
    };
    _.gd = function(a, c, f) {
        null == a && f && (a = f.ecp, null == a && (a = f.gwidget && f.gwidget.ecp));
        return a || void 0
    };
    _.ld = function(a, c) {
        return _.Zc(a, 0, 0, c.action ? void 0 : "publisher")
    };
    var Wo, av, Md, Ld, id, Gd, bv, nd;
    Wo = {
        se: "0"
    };
    av = {
        post: !0
    };
    Md = {
        style: "position:absolute;top:-10000px;width:450px;margin:0px;border-style:none"
    };
    Ld = "onPlusOne _ready _close _open _resizeMe _renderstart oncircled drefresh erefresh".split(" ");
    id = _.Ka(_.bb, "WI", _.r());
    Gd = ["style", "data-gapiscan"];
    bv = function(a) {
        for (var c = _.r(), f = 0 != a.nodeName.toLowerCase().indexOf("g:"), g = 0, h = a.attributes.length; g < h; g++) {
            var l = a.attributes[g],
                n = l.name,
                q = l.value;
            0 <= _.xd.call(Gd, n) || f && 0 != n.indexOf("data-") || "null" === q || "specified" in l && !l.specified || (f && (n = n.substr(5)), c[n.toLowerCase()] = q)
        }
        a = a.style;
        (f = nd(a && a.height)) && (c.height = String(f));
        (a = nd(a && a.width)) && (c.width = String(a));
        return c
    };
    _.cv = function(a, c, f, g, h, l) {
        if (f.rd) var n = c;
        else n = window.document.createElement("div"), c.setAttribute("data-gapistub", !0), n.style.cssText = "position:absolute;width:450px;left:-10000px;", c.parentNode.insertBefore(n, c);
        l.siteElement = n;
        n.id || (n.id = _.di(a));
        c = _.r();
        c[">type"] = a;
        _.Sl(f, c);
        a = _.tb(g, n, h);
        l.iframeNode = a;
        l.id = a.getAttribute("id")
    };
    _.di = function(a) {
        _.Ka(id, a, 0);
        return "___" + a + "_" + id[a] ++
    };
    nd = function(a) {
        var c = void 0;
        "number" === typeof a ? c = a : "string" === typeof a && (c = (0, window.parseInt)(a, 10));
        return c
    };
    var Bd, Cd, Dd, Fd, dv = /(?:^|\s)g-((\S)*)(?:$|\s)/,
        ev = {
            plusone: !0,
            autocomplete: !0,
            profile: !0,
            signin: !0,
            signin2: !0
        };
    Bd = _.Ka(_.bb, "SW", _.r());
    Cd = _.Ka(_.bb, "SA", _.r());
    Dd = _.Ka(_.bb, "SM", _.r());
    Fd = _.Ka(_.bb, "FW", []);
    var hv = function(a, c) {
        var f;
        _.gv("ps0");
        a = ("string" === typeof a ? window.document.getElementById(a) : a) || _.ua;
        var g = _.ua.documentMode;
        if (a.querySelectorAll && (!g || 8 < g)) {
            g = c ? [c] : kb(Bd).concat(kb(Cd)).concat(kb(Dd));
            for (var h = [], l = 0; l < g.length; l++) {
                var n = g[l];
                h.push(".g-" + n, "g\\:" + n)
            }
            g = a.querySelectorAll(h.join(","))
        } else g = a.getElementsByTagName("*");
        a = _.r();
        for (h = 0; h < g.length; h++) {
            l = g[h];
            var q = l;
            n = c;
            var t = q.nodeName.toLowerCase(),
                v = void 0;
            q.getAttribute("data-gapiscan") ? n = null : (0 == t.indexOf("g:") ? v = t.substr(2) :
                (q = (q = String(q.className || q.getAttribute("class"))) && dv.exec(q)) && (v = q[1]), n = !v || !(Bd[v] || Cd[v] || Dd[v]) || n && v !== n ? null : v);
            n && (ev[n] || 0 == l.nodeName.toLowerCase().indexOf("g:") || 0 != kb(bv(l)).length) && (l.setAttribute("data-gapiscan", !0), _.Ka(a, n, []).push(l))
        }
        for (w in a) Fd.push(w);
        _.gv("ps1");
        if (c = Fd.join(":")) try {
            _.Ua.load(c, void 0)
        } catch (A) {
            _.kd(A);
            return
        }
        h = [];
        for (f in a) {
            g = a[f];
            var w = 0;
            for (c = g.length; w < c; w++) l = g[w], Hd(f, l, bv(l), h, c)
        }
    };
    var Id = function(a, c) {
            var f = Zu(a);
            c && f ? (f(c), (f = c.iframeNode) && f.setAttribute("data-gapiattached", !0)) : _.Ua.load(a, function() {
                var f = Zu(a),
                    h = c && c.iframeNode,
                    l = c && c.userParams;
                h && f ? (f(c), h.setAttribute("data-gapiattached", !0)) : (f = _.Ua[a].go, "signin2" == a ? f(h, l) : f(h && h.parentNode, l))
            })
        },
        Hd = function(a, c, f, g, h, l, n) {
            switch (Jd(c, a, l)) {
                case 0:
                    a = Dd[a] ? a + "_annotation" : a;
                    g = {};
                    g.iframeNode = c;
                    g.userParams = f;
                    Id(a, g);
                    break;
                case 1:
                    if (c.parentNode) {
                        for (var q in f) {
                            if (l = _.Qa(f, q)) l = f[q], l = !!l && "object" === typeof l && (!l.toString ||
                                l.toString === Object.prototype.toString || l.toString === Array.prototype.toString);
                            if (l) try {
                                f[q] = (0, _.mf)(f[q])
                            } catch (K) {
                                delete f[q]
                            }
                        }
                        q = !0;
                        f.dontclear && (q = !1);
                        delete f.dontclear;
                        var t;
                        l = {};
                        var v = t = a;
                        "plus" == a && f.action && (t = a + "_" + f.action, v = a + "/" + f.action);
                        (t = _.P("iframes/" + t + "/url")) || (t = ":im_socialhost:/:session_prefix::im_prefix:_/widget/render/" + v + "?usegapi=1");
                        for (w in Wo) l[w] = w + "/" + (f[w] || Wo[w]) + "/";
                        var w = _.vg(_.ua, t.replace(_.nc, dC(l)));
                        v = "iframes/" + a + "/params/";
                        l = {};
                        _.Sl(f, l);
                        (t = _.P("lang") || _.P("gwidget/lang")) &&
                        (l.hl = t);
                        av[a] || (l.origin = md());
                        l.exp = _.P(v + "exp");
                        if (v = _.P(v + "location"))
                            for (t = 0; t < v.length; t++) {
                                var A = v[t];
                                l[A] = _.ta.location[A]
                            }
                        switch (a) {
                            case "plus":
                            case "follow":
                                l.url = _.ld(l.href, f);
                                delete l.href;
                                break;
                            case "plusone":
                                v = (v = f.href) ? Xc(v) : Yc();
                                l.url = v;
                                l.db = _.fd(f.db, 0, _.P());
                                l.ecp = _.gd(f.ecp, 0, _.P());
                                delete l.href;
                                break;
                            case "signin":
                                l.url = Yc()
                        }
                        _.bb.ILI && (l.iloader = "1");
                        delete l["data-onload"];
                        delete l.rd;
                        for (var F in Wo) l[F] && delete l[F];
                        l.gsrc = _.P("iframes/:source:");
                        F = _.P("inline/css");
                        "undefined" !==
                        typeof F && 0 < h && F >= h && (l.ic = "1");
                        F = /^#|^fr-/;
                        h = {};
                        for (var z in l) _.Qa(l, z) && F.test(z) && (h[z.replace(F, "")] = l[z], delete l[z]);
                        z = "q" == _.P("iframes/" + a + "/params/si") ? l : h;
                        F = _.Xu();
                        for (var I in F) !_.Qa(F, I) || _.Qa(l, I) || _.Qa(h, I) || (z[I] = F[I]);
                        I = [].concat(Ld);
                        z = _.P("iframes/" + a + "/methods");
                        _.cb(z) && (I = I.concat(z));
                        for (E in f) _.Qa(f, E) && /^on/.test(E) && ("plus" != a || "onconnect" != E) && (I.push(E), delete l[E]);
                        delete l.callback;
                        h._methods = I.join(",");
                        var E = _.yg(w, l, h);
                        I = n || {};
                        I.allowPost = 1;
                        I.attributes = Md;
                        I.dontclear = !q;
                        n = {};
                        n.userParams = f;
                        n.url = E;
                        n.type = a;
                        _.cv(a, c, f, E, I, n);
                        c = n.id;
                        f = _.r();
                        f.id = c;
                        f.userParams = n.userParams;
                        f.url = n.url;
                        f.type = n.type;
                        f.state = 1;
                        _.Tc[c] = f;
                        c = n
                    } else c = null;
                    c && ((f = c.id) && g.push(f), Id(a, c))
            }
        },
        Jd = function(a, c, f) {
            if (a && 1 === a.nodeType && c) {
                if (f) return 1;
                if (Dd[c]) {
                    if ($g[a.nodeName.toLowerCase()]) return (a = a.innerHTML) && a.replace(/^[\s\xa0]+|[\s\xa0]+$/g, "") ? 0 : 1
                } else {
                    if (Cd[c]) return 0;
                    if (Bd[c]) return 1
                }
            }
            return null
        };
    _.Ka(_.Ua, "platform", {}).go = function(a, c) {
        hv(a, c)
    };
    var Rd = _.Ka(_.bb, "perf", _.r()),
        yd = _.Ka(Rd, "g", _.r()),
        Ud = _.Ka(Rd, "i", _.r()),
        Pd, Qd, Od, Ad, Td, Vd;
    _.Ka(Rd, "r", []);
    Pd = _.r();
    Qd = _.r();
    Od = function(a, c, f, g) {
        Pd[f] = Pd[f] || !!g;
        _.Ka(Qd, f, []);
        Qd[f].push([a, c])
    };
    Ad = function(a, c, f) {
        var g = Rd.r;
        "function" === typeof g ? g(a, c, f) : g.push([a, c, f])
    };
    _.gv = function(a, c) {
        yd[a] = c || (new Date).getTime();
        Ad(a)
    };
    _.Sd = function(a, c, f, g) {
        if ("_p" == c) throw Error("Ra");
        _.nf(a, c, f, g)
    };
    _.nf = function(a, c, f, g) {
        Td(c, f)[a] = g || (new Date).getTime();
        Ad(a, c, f)
    };
    Td = function(a, c) {
        a = _.Ka(Ud, a, _.r());
        return _.Ka(a, c, _.r())
    };
    Vd = function(a, c, f) {
        var g = null;
        c && f && (g = Td(c, f)[a]);
        return g || yd[a]
    };
    _.iv = function(a, c, f, g, h, l) {
        _.Sd("wrt0", a, c, f);
        _.Sd("wrt1", a, c, g);
        _.Sd("wrt2", a, c, h);
        _.Sd("wrt3", a, c, l)
    };
    (function() {
        function a(a) {
            this.t = {};
            this.tick = function(a, c, f) {
                this.t[a] = [void 0 != f ? f : (new Date).getTime(), c];
                if (void 0 == f) try {
                    window.console.timeStamp("CSI/" + a)
                } catch (w) {}
            };
            this.tick("start", null, a)
        }
        var c;
        if (window.performance) var f = (c = window.performance.timing) && c.responseStart;
        var g = 0 < f ? new a(f) : new a;
        window.__gapi_jstiming__ = {
            Timer: a,
            load: g
        };
        if (c) {
            var h = c.navigationStart;
            0 < h && f >= h && (window.__gapi_jstiming__.srt = f - h)
        }
        if (c) {
            var l = window.__gapi_jstiming__.load;
            0 < h && f >= h && (l.tick("_wtsrt", void 0, h),
                l.tick("wtsrt_", "_wtsrt", f), l.tick("tbsd_", "wtsrt_"))
        }
        try {
            c = null, window.chrome && window.chrome.csi && (c = Math.floor(window.chrome.csi().pageT), l && 0 < h && (l.tick("_tbnd", void 0, window.chrome.csi().startE), l.tick("tbnd_", "_tbnd", h))), null == c && window.gtbExternal && (c = window.gtbExternal.pageT()), null == c && window.external && (c = window.external.pageT, l && 0 < h && (l.tick("_tbnd", void 0, window.external.startE), l.tick("tbnd_", "_tbnd", h))), c && (window.__gapi_jstiming__.pt = c)
        } catch (n) {}
    })();
    var cu;
    if (window.__gapi_jstiming__) {
        window.__gapi_jstiming__.Pz = {};
        window.__gapi_jstiming__.Yr = 1;
        var he = function(a, c, f) {
            var g = a.t[c],
                h = a.t.start;
            if (g && (h || f)) return g = a.t[c][0], h = void 0 != f ? f : h[0], Math.round(g - h)
        };
        window.__gapi_jstiming__.getTick = he;
        window.__gapi_jstiming__.getLabels = function(a) {
            var c = [],
                f;
            for (f in a.t) c.push(f);
            return c
        };
        var ie = function(a, c, f) {
                var g, h = "";
                window.__gapi_jstiming__.srt && (h += "&srt=" + window.__gapi_jstiming__.srt);
                window.__gapi_jstiming__.pt && (h += "&tbsrt=" + window.__gapi_jstiming__.pt);
                try {
                    window.external &&
                        window.external.tran ? h += "&tran=" + window.external.tran : window.gtbExternal && window.gtbExternal.tran ? h += "&tran=" + window.gtbExternal.tran() : window.chrome && window.chrome.csi && (h += "&tran=" + window.chrome.csi().tran)
                } catch (A) {}
                if (g = window.chrome)
                    if (g = g.loadTimes) {
                        g().wasFetchedViaSpdy && (h += "&p=s");
                        if (g().wasNpnNegotiated) {
                            h += "&npn=1";
                            var l = g().npnNegotiatedProtocol;
                            l && (h += "&npnv=" + (window.encodeURIComponent || window.escape)(l))
                        }
                        g().wasAlternateProtocolAvailable && (h += "&apa=1")
                    }
                var n = a.t,
                    q = n.start;
                l = [];
                g = [];
                for (var t in n)
                    if ("start" != t && 0 != t.indexOf("_")) {
                        var v = n[t][1];
                        v ? n[v] && g.push(t + "." + he(a, t, n[v][0])) : q && l.push(t + "." + he(a, t))
                    }
                if (c)
                    for (var w in c) h += "&" + w + "=" + c[w];
                (c = f) || (c = "https:" == window.document.location.protocol ? "https://csi.gstatic.com/csi" : "http://csi.gstatic.com/csi");
                return [c, "?v=3", "&s=" + (window.__gapi_jstiming__.sn || "oz") + "&action=", a.name, g.length ? "&it=" + g.join(",") : "", h, "&rt=", l.join(",")].join("")
            },
            je = function(a, c, f) {
                a = ie(a, c, f);
                if (!a) return "";
                c = new window.Image;
                var g = window.__gapi_jstiming__.Yr++;
                window.__gapi_jstiming__.Pz[g] = c;
                c.onload = c.onerror = function() {
                    window.__gapi_jstiming__ && delete window.__gapi_jstiming__.Pz[g]
                };
                c.src = a;
                c = null;
                return a
            };
        cu = function(a, c, f) {
            if ("prerender" == window.document.webkitVisibilityState) return !1;
            je(a, c, f);
            return !0
        };
        window.__gapi_jstiming__.report = function(a, c, f) {
            if ("prerender" == window.document.webkitVisibilityState) {
                var g = !1,
                    h = function() {
                        g || (c ? c.prerender = "1" : c = {
                            prerender: "1"
                        }, cu(a, c, f) && (g = !0, window.document.removeEventListener("webkitvisibilitychange", h, !1)))
                    };
                window.document.addEventListener("webkitvisibilitychange", h, !1);
                return ""
            }
            return je(a, c, f)
        }
    };
    var ee = {
            g: "gapi_global",
            m: "gapi_module",
            w: "gwidget"
        },
        Wd = function(a, c) {
            this.type = a ? "_p" == a ? "m" : "w" : "g";
            this.name = a;
            this.P0 = c
        };
    Wd.prototype.key = function() {
        switch (this.type) {
            case "g":
                return this.type;
            case "m":
                return this.type + "." + this.P0;
            case "w":
                return this.type + "." + this.name + this.P0
        }
    };
    var ce = new Wd,
        Yd = window.navigator.userAgent.match(/iPhone|iPad|Android|PalmWebOS|Maemo|Bada/),
        $d = _.Ka(Rd, "_c", _.r()),
        ae = Math.random() < (_.P("csi/rate") || 0),
        Zd = function(a, c, f) {
            for (var g = new Wd(c, f), h = _.Ka($d, g.key(), _.r()), l = Qd[a] || [], n = 0; n < l.length; ++n) {
                var q = l[n],
                    t = q[0],
                    v = a,
                    w = c,
                    A = f;
                q = Vd(q[1], w, A);
                v = Vd(v, w, A);
                h[t] = q && v ? v - q : null
            }
            Pd[a] && ae && (be(ce), be(g))
        },
        de = function(a, c) {
            c = c || [];
            for (var f = [], g = 0; g < c.length; g++) f.push(a + c[g]);
            return f
        },
        be = function(a) {
            var c = _.ta.__gapi_jstiming__;
            c.sn = ee[a.type];
            var f =
                new c.Timer(0);
            a: {
                switch (a.type) {
                    case "g":
                        var g = "global";
                        break a;
                    case "m":
                        g = a.P0;
                        break a;
                    case "w":
                        g = a.name;
                        break a
                }
                g = void 0
            }
            f.name = g;
            g = !1;
            var h = a.key(),
                l = $d[h];
            f.tick("_start", null, 0);
            for (var n in l) f.tick(n, "_start", l[n]), g = !0;
            $d[h] = _.r();
            g && (n = [], n.push("l" + (_.P("isPlusUser") ? "1" : "0")), g = "m" + (Yd ? "1" : "0"), n.push(g), "m" == a.type ? n.push("p" + a.P0) : "w" == a.type && (h = "n" + a.P0, n.push(h), "0" == a.P0 && n.push(g + h)), n.push("u" + (_.P("isLoggedIn") ? "1" : "0")), a = de("", n), a = de("abc_", a).join(","), c.report(f, {
                e: a
            }))
        };
    Od("blt", "bs0", "bs1");
    Od("psi", "ps0", "ps1");
    Od("rpcqi", "rqe", "rqd");
    Od("bsprt", "bsrt0", "bsrt1");
    Od("bsrqt", "bsrt1", "bsrt2");
    Od("bsrst", "bsrt2", "bsrt3");
    Od("mli", "ml0", "ml1");
    Od("mei", "me0", "me1", !0);
    Od("wcdi", "wrs", "wcdi");
    Od("wci", "wrs", "wdc");
    Od("wdi", "wrs", "wrdi");
    Od("wdt", "bs0", "wrdt");
    Od("wri", "wrs", "wrri", !0);
    Od("wrt", "bs0", "wrrt");
    Od("wji", "wje0", "wje1", !0);
    Od("wjli", "wjl0", "wjl1");
    Od("whi", "wh0", "wh1", !0);
    Od("wai", "waaf0", "waaf1", !0);
    Od("wadi", "wrs", "waaf1", !0);
    Od("wadt", "bs0", "waaf1", !0);
    Od("wprt", "wrt0", "wrt1");
    Od("wrqt", "wrt1", "wrt2");
    Od("wrst", "wrt2", "wrt3", !0);
    Od("fbprt", "fsrt0", "fsrt1");
    Od("fbrqt", "fsrt1", "fsrt2");
    Od("fbrst", "fsrt2", "fsrt3", !0);
    Od("fdns", "fdns0", "fdns1");
    Od("fcon", "fcon0", "fcon1");
    Od("freq", "freq0", "freq1");
    Od("frsp", "frsp0", "frsp1");
    Od("fttfb", "fttfb0", "fttfb1");
    Od("ftot", "ftot0", "ftot1", !0);
    var yu = Rd.r;
    if ("function" !== typeof yu) {
        for (var Iu; Iu = yu.shift();) Zd.apply(null, Iu);
        Rd.r = Zd
    };
    var Rt = ["div"],
        jC = "onload",
        zx = !0,
        cB = !0,
        gg = function(a) {
            return a
        },
        gC = null,
        Kg = function(a) {
            var c = _.P(a);
            return "undefined" !== typeof c ? c : _.P("gwidget/" + a)
        },
        ov, pv, Uj, En, Ft, It, Mt, Jt, St, tw, Ds, BH, uv, vv, Cv, Tt, sw, Ev, Ut, eC, fC, hC, Fv;
    gC = _.P();
    _.P("gwidget");
    var qy = Kg("parsetags");
    jC = "explicit" === qy || "onload" === qy ? qy : jC;
    var QA = Kg("google_analytics");
    "undefined" !== typeof QA && (zx = !!QA);
    var SE = Kg("data_layer");
    "undefined" !== typeof SE && (cB = !!SE);
    ov = function() {
        var a = this && this.Hh();
        a && (_.bb.drw = a)
    };
    pv = function() {
        _.bb.drw = null
    };
    Uj = function(a) {
        return function(c) {
            var f = a;
            "number" === typeof c ? f = c : "string" === typeof c && (f = c.indexOf("px"), -1 != f && (c = c.substring(0, f)), f = (0, window.parseInt)(c, 10));
            return f
        }
    };
    En = function(a) {
        "string" === typeof a && (a = window[a]);
        return "function" === typeof a ? a : null
    };
    Ft = function() {
        return Kg("lang") || "en-US"
    };
    It = function(a) {
        if (!_.V.Cr("attach")) {
            var c = {},
                f = _.V.Cr("inline"),
                g;
            for (g in f) f.hasOwnProperty(g) && (c[g] = f[g]);
            c.open = function(a) {
                var c = a.va().renderData.id;
                c = window.document.getElementById(c);
                if (!c) throw Error("o");
                return f.attach(a, c)
            };
            _.V.Mo("attach", c)
        }
        a.style = "attach"
    };
    Mt = function() {
        var a = {};
        a.width = [Uj(450)];
        a.height = [Uj(24)];
        a.onready = [En];
        a.lang = [Ft, "hl"];
        a.iloader = [function() {
            return _.bb.ILI
        }, "iloader"];
        return a
    }();
    Jt = function(a) {
        var c = {};
        c.Fb = a[0];
        c.Kj = -1;
        c.ZX = "___" + c.Fb + "_";
        c.Xs = "g:" + c.Fb;
        c.Wt = "g-" + c.Fb;
        c.Dm = [];
        c.config = {};
        c.jd = [];
        c.Rh = {};
        c.Ie = {};
        var f = function(a) {
                for (var f in a)
                    if (_.Qa(a, f)) {
                        c.config[f] = [En];
                        c.jd.push(f);
                        var g = a[f],
                            h = null,
                            t = null,
                            v = null;
                        "function" === typeof g ? h = g : g && "object" === typeof g && (h = g.Er, t = g.Kg, v = g.Qh);
                        v && (c.jd.push(v), c.config[v] = [En], c.Rh[f] = v);
                        h && (c.config[f] = [h]);
                        t && (c.Ie[f] = t)
                    }
            },
            g = function(a) {
                for (var f = {}, g = 0; g < a.length; ++g) f[a[g].toLowerCase()] = 1;
                f[c.Xs] = 1;
                c.nr = f
            };
        a[1] && (c.parameters =
            a[1]);
        (function(a) {
            c.config = a;
            for (var f in Mt) Mt.hasOwnProperty(f) && !c.config.hasOwnProperty(f) && (c.config[f] = Mt[f])
        })(a[2] || {});
        a[3] && f(a[3]);
        a[4] && g(a[4]);
        a[5] && (c.qe = a[5]);
        c.nu = !0 === a[6];
        c.Or = a[7];
        c.lM = a[8];
        c.nr || g(Rt);
        c.bj = function(a) {
            c.Kj++;
            _.Sd("wrs", c.Fb, String(c.Kj));
            var f = [],
                g = a.element,
                h = a.config,
                t = ":" + c.Fb;
            ":plus" == t && a.Yi && a.Yi.action && (t += "_" + a.Yi.action);
            var v = St(c, h),
                w = {};
            _.Sl(_.Xu(), w);
            for (var A in a.Yi) null != a.Yi[A] && (w[A] = a.Yi[A]);
            A = {
                container: g.id,
                renderData: a.Xr,
                style: "inline",
                height: h.height,
                width: h.width
            };
            It(A);
            c.qe && (f[2] = A, f[3] = w, f[4] = v, c.qe("i", f));
            t = _.V.open(t, A, w, v);
            (0, _.qv)(c, t, h, g, a.xp);
            f[5] = t;
            c.qe && c.qe("e", f)
        };
        return c
    };
    St = function(a, c) {
        for (var f = {}, g = a.jd.length - 1; 0 <= g; --g) {
            var h = a.jd[g],
                l = c[a.Rh[h] || h] || c[h],
                n = c[h];
            n && l !== n && (l = function(a, c) {
                return function(f) {
                    c.apply(this, arguments);
                    a.apply(this, arguments)
                }
            }(l, n));
            l && (f[h] = l)
        }
        for (var q in a.Ie) a.Ie.hasOwnProperty(q) && (f[q] = tw(f[q] || function() {}, a.Ie[q]));
        f.drefresh = ov;
        f.erefresh = pv;
        return f
    };
    tw = function(a, c) {
        return function(f) {
            var g = c(f);
            if (g) {
                var h = f.href || null;
                if (zx) {
                    if (window._gat) try {
                        var l = window._gat._getTrackerByName("~0");
                        l && "UA-XXXXX-X" != l._getAccount() ? l._trackSocial("Google", g, h) : window._gaq && window._gaq.push(["_trackSocial", "Google", g, h])
                    } catch (q) {}
                    if (window.ga && window.ga.getAll) try {
                        var n = window.ga.getAll();
                        for (l = 0; l < n.length; l++) n[l].send("social", "Google", g, h)
                    } catch (q) {}
                }
                if (cB && window.dataLayer) try {
                    window.dataLayer.push({
                        event: "social",
                        socialNetwork: "Google",
                        socialAction: g,
                        socialTarget: h
                    })
                } catch (q) {}
            }
            a.call(this, f)
        }
    };
    _.qv = function(a, c, f, g, h) {
        Tt(c, f);
        Ut(c, g);
        sw(a, c, h);
        XF(a.Fb, a.Kj.toString(), c);
        (new Ds).Vx.Ep(a, c, f, g, h)
    };
    Ds = function() {
        if (!this.Vx) {
            for (var a = this.constructor; a && !a.Ws;) a = a.T && a.T.constructor;
            a.Ws.UD || (a.Ws.UD = Fk(a));
            this.Vx = new a.Ws.UD(this);
            this.V6 || (this.V6 = Nn)
        }
    };
    _.Gs = function() {};
    BH = Ds;
    _.Gs.T || _.J(_.Gs, Ak);
    BH.Ws = _.Gs;
    _.Gs.prototype.Ep = function(a) {
        a = a ? a : function() {};
        a.AE = !0;
        return a
    }();
    uv = function(a) {
        return _.Rm && a instanceof _.Rm
    };
    vv = function(a) {
        return uv(a) ? "_renderstart" : "renderstart"
    };
    Cv = function(a) {
        return uv(a) ? "_ready" : "ready"
    };
    _.Dv = function() {
        return !0
    };
    Tt = function(a, c) {
        if (c.onready) {
            var f = !1,
                g = function() {
                    f || (f = !0, c.onready.call(null))
                };
            a.register(Cv(a), g, _.Dv);
            a.register(vv(a), g, _.Dv)
        }
    };
    sw = function(a, c, f) {
        var g = a.Fb,
            h = String(a.Kj),
            l = !1,
            n = function() {
                l || (l = !0, f && _.Sd("wrdt", g, h), _.Sd("wrdi", g, h))
            };
        c.register(vv(c), n, _.Dv);
        var q = !1;
        a = function() {
            q || (q = !0, n(), f && _.Sd("wrrt", g, h), _.Sd("wrri", g, h))
        };
        c.register(Cv(c), a, _.Dv);
        uv(c) ? c.register("widget-interactive-" + c.id, a, _.Dv) : _.T.register("widget-interactive-" + c.id, a);
        _.T.register("widget-csi-tick-" + c.id, function(a, c, f) {
            "wdc" === a ? _.Sd("wdc", g, h, f) : "wje0" === a ? _.Sd("wje0", g, h, f) : "wje1" === a ? _.Sd("wje1", g, h, f) : "wh0" == a ? _.nf("wh0", g, h, f) : "wh1" ==
                a ? _.nf("wh1", g, h, f) : "wcdi" == a && _.nf("wcdi", g, h, f)
        })
    };
    Ev = function(a) {
        return "number" == typeof a ? a + "px" : "100%" == a ? a : null
    };
    Ut = function(a, c) {
        var f = function(f) {
            f = f || a;
            var g = Ev(f.width);
            g && c.style.width != g && (c.style.width = g);
            (f = Ev(f.height)) && c.style.height != f && (c.style.height = f)
        };
        uv(a) ? a.Vm("onRestyle", f) : (a.register("ready", f, _.Dv), a.register("renderstart", f, _.Dv), a.register("resize", f, _.Dv))
    };
    eC = function(a, c) {
        for (var f in Mt)
            if (Mt.hasOwnProperty(f)) {
                var g = Mt[f][1];
                g && !c.hasOwnProperty(g) && (c[g] = a[g])
            }
        return c
    };
    fC = function(a, c) {
        var f = {},
            g;
        for (g in a) a.hasOwnProperty(g) && (f[a[g][1] || g] = (a[g] && a[g][0] || gg)(c[g.toLowerCase()], c, gC));
        return f
    };
    hC = function(a) {
        if (a = a.Or)
            for (var c = 0; c < a.length; c++)(new window.Image).src = a[c]
    };
    Fv = function(a, c) {
        var f = c.userParams,
            g = c.siteElement;
        g || (g = (g = c.iframeNode) && g.parentNode);
        if (g && 1 === g.nodeType) {
            var h = fC(a.config, f);
            a.Dm.push({
                element: g,
                config: h,
                Yi: eC(h, fC(a.parameters, f)),
                Sg: 3,
                xp: !!f["data-onload"],
                Xr: c
            })
        }
        c = a.Dm;
        for (a = a.bj; 0 < c.length;) a(c.shift())
    };
    _.iC = function(a) {
        var c = Jt(a);
        hC(c);
        _.Sc(c.Fb, function(a) {
            Fv(c, a)
        });
        Bd[c.Fb] = !0;
        var f = {
            S: function(a, f, l) {
                var g = f || {};
                g.type = c.Fb;
                f = g.type;
                delete g.type;
                var h = ("string" === typeof a ? window.document.getElementById(a) : a) || void 0;
                if (h) {
                    a = {};
                    for (var t in g) _.Qa(g, t) && (a[t.toLowerCase()] = g[t]);
                    a.rd = 1;
                    (t = !!a.ri) && delete a.ri;
                    Hd(f, h, a, [], 0, t, l)
                } else _.kd("string" === "gapi." + f + ".render: missing element " + typeof a ? a : "")
            },
            go: function(a) {
                hv(a, c.Fb)
            },
            zja: function() {
                var a = _.Ka(_.bb, "WI", _.r()),
                    c;
                for (c in a) delete a[c]
            }
        };
        a = function() {
            "onload" === jC && f.go()
        };
        $u(c.Fb) || rh(a, a);
        _.Mu("gapi." + c.Fb + ".go", f.go);
        _.Mu("gapi." + c.Fb + ".render", f.S);
        return f
    };
    var Gv = Fv,
        Hv = function(a, c) {
            a.Kj++;
            _.Sd("wrs", a.Fb, String(a.Kj));
            var f = c.userParams,
                g = fC(a.config, f),
                h = [],
                l = c.iframeNode,
                n = c.siteElement,
                q = St(a, g),
                t = fC(a.parameters, f);
            _.Sl(_.Xu(), t);
            t = eC(g, t);
            f = !!f["data-onload"];
            var v = _.Sm,
                w = _.r();
            w.renderData = c;
            w.height = g.height;
            w.width = g.width;
            w.id = c.id;
            w.url = c.url;
            w.iframeEl = l;
            w.where = w.container = n;
            w.apis = ["_open"];
            w.messageHandlers = q;
            w.messageHandlersFilter = _.Vz;
            _.Ru(w);
            l = t;
            a.qe && (h[2] = w, h[3] = l, h[4] = q, a.qe("i", h));
            q = v.OH(w);
            q.id = c.id;
            q.NA(q, w);
            (0, _.qv)(a, q, g, n, f);
            h[5] = q;
            a.qe && a.qe("e", h)
        };
    Fv = function(a, c) {
        var f = c.url;
        a.lM || _.Uu(f) ? _.jo ? Hv(a, c) : (0, _.At)("gapi.iframes.impl", function() {
            Hv(a, c)
        }) : _.V.open ? Gv(a, c) : (0, _.At)("iframes", function() {
            Gv(a, c)
        })
    };
    var XF;
    _.Iv = function() {
        var a = window;
        return !!a.performance && !!a.performance.getEntries
    };
    _.Jv = function(a) {
        var c = a.indexOf("#"); - 1 != c && (a = a.substring(0, c));
        a = window.performance.getEntriesByName(a);
        if (1 > a.length) return null;
        a = a[0];
        return 0 == a.responseStart ? null : a
    };
    XF = function(a, c, f) {
        if (_.Iv()) {
            var g = function() {
                    var a = !1;
                    return function() {
                        if (a) return !0;
                        a = !0;
                        return !1
                    }
                }(),
                h = function() {
                    g() || window.setTimeout(function() {
                        var g = _.Jv(f.rb().src);
                        g && _.iv(a, c, Math.round(g.startTime), Math.round(g.requestStart), Math.round(g.responseStart), Math.round(g.responseEnd))
                    }, 1E3)
                };
            f.register(vv(f), h, _.Dv);
            f.register(Cv(f), h, _.Dv)
        }
    };
    _.Mu("gapi.widget.make", _.iC);
    _.Sm.p3("ytsubscribe", function(a, c) {
        var f = _.Sm.Vb;
        f && _.Sm.u6({
            role: "ytsubscribe",
            iframe: f,
            data: c
        }, {
            role: "ytrelay",
            iframe: a
        })
    }, void 0, _.Vz);
    var lk, tf;
    _.$e = function() {
        return _.pf("Opera")
    };
    lk = function(a, c) {
        return a < c ? -1 : a > c ? 1 : 0
    };
    tf = "constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");
    _.rk = function(a, c) {
        var f = 0;
        a = (0, _.Ge)(String(a)).split(".");
        c = (0, _.Ge)(String(c)).split(".");
        for (var g = Math.max(a.length, c.length), h = 0; 0 == f && h < g; h++) {
            var l = a[h] || "",
                n = c[h] || "";
            do {
                l = /(\d*)(\D*)(.*)/.exec(l) || ["", "", "", ""];
                n = /(\d*)(\D*)(.*)/.exec(n) || ["", "", "", ""];
                if (0 == l[0].length && 0 == n[0].length) break;
                f = lk(0 == l[1].length ? 0 : (0, window.parseInt)(l[1], 10), 0 == n[1].length ? 0 : (0, window.parseInt)(n[1], 10)) || lk(0 == l[2].length, 0 == n[2].length) || lk(l[2], n[2]);
                l = l[3];
                n = n[3]
            } while (0 == f)
        }
        return f
    };
    _.sf = function(a, c) {
        for (var f, g, h = 1; h < arguments.length; h++) {
            g = arguments[h];
            for (f in g) a[f] = g[f];
            for (var l = 0; l < tf.length; l++) f = tf[l], Object.prototype.hasOwnProperty.call(g, f) && (a[f] = g[f])
        }
    };
    _.qf = function(a, c, f) {
        for (var g in a) c.call(f, a[g], g, a)
    };
    _.mZ = function() {
        return _.pf("iPhone") && !_.pf("iPod") && !_.pf("iPad")
    };
    _.wk = function() {
        return _.mZ() || _.pf("iPad") || _.pf("iPod")
    };
    var lh = function(a) {
            lh[" "](a);
            return a
        },
        Oe;
    lh[" "] = _.gh;
    _.Eo = function(a, c) {
        try {
            return lh(a[c]), !0
        } catch (f) {}
        return !1
    };
    Oe = function(a, c) {
        var f = Zk;
        return Object.prototype.hasOwnProperty.call(f, a) ? f[a] : f[a] = c(a)
    };
    var Pe, vl, Zk, mk;
    _.cf = _.$e();
    _.W = _.B();
    _.yk = _.pf("Edge");
    _.Vi = _.yk || _.W;
    _.df = _.pf("Gecko") && !(-1 != _.We.toLowerCase().indexOf("webkit") && !_.pf("Edge")) && !(_.pf("Trident") || _.pf("MSIE")) && !_.pf("Edge");
    _.ef = -1 != _.We.toLowerCase().indexOf("webkit") && !_.pf("Edge");
    _.ff = _.ef && _.pf("Mobile");
    _.Gg = _.pf("Macintosh");
    _.Im = _.pf("Windows");
    _.Jg = _.pf("Linux") || _.pf("CrOS");
    _.kO = _.pf("Android");
    _.yO = _.mZ();
    _.WP = _.pf("iPad");
    _.XQ = _.pf("iPod");
    _.DU = _.wk();
    Pe = function() {
        var a = _.D.document;
        return a ? a.documentMode : void 0
    };
    a: {
        var Yi = "",
            Zi = function() {
                var a = _.We;
                if (_.df) return /rv\:([^\);]+)(\)|;)/.exec(a);
                if (_.yk) return /Edge\/([\d\.]+)/.exec(a);
                if (_.W) return /\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a);
                if (_.ef) return /WebKit\/(\S+)/.exec(a);
                if (_.cf) return /(?:Version)[ \/]?(\S+)/.exec(a)
            }();
        Zi && (Yi = Zi ? Zi[1] : "");
        if (_.W) {
            var aj = Pe();
            if (null != aj && aj > (0, window.parseFloat)(Yi)) {
                vl = String(aj);
                break a
            }
        }
        vl = Yi
    }
    _.Se = vl;
    Zk = {};
    _.sl = function(a) {
        return Oe(a, function() {
            return 0 <= _.rk(_.Se, a)
        })
    };
    _.gq = function(a) {
        return Number(_.Ue) >= a
    };
    var xl = _.D.document;
    mk = xl && _.W ? Pe() || ("CSS1Compat" == xl.compatMode ? (0, window.parseInt)(_.Se, 10) : 5) : void 0;
    _.Ue = mk;

    _.ze = function(a) {
        var c = a.length;
        if (0 < c) {
            for (var f = Array(c), g = 0; g < c; g++) f[g] = a[g];
            return f
        }
        return []
    };
    _.bj = function(a) {
        return Array.prototype.concat.apply([], arguments)
    };
    var Ke, Ze, Le, Me, Re, Xe, Ye;
    Ke = /[\x00&<>"']/;
    Ze = /\x00/g;
    Le = /'/g;
    Me = /"/g;
    Re = />/g;
    Xe = /</g;
    Ye = /&/g;
    _.He = function(a) {
        if (!Ke.test(a)) return a; - 1 != a.indexOf("&") && (a = a.replace(Ye, "&amp;")); - 1 != a.indexOf("<") && (a = a.replace(Xe, "&lt;")); - 1 != a.indexOf(">") && (a = a.replace(Re, "&gt;")); - 1 != a.indexOf('"') && (a = a.replace(Me, "&quot;")); - 1 != a.indexOf("'") && (a = a.replace(Le, "&#39;")); - 1 != a.indexOf("\x00") && (a = a.replace(Ze, "&#0;"));
        return a
    };
    var Us;
    _.ou = function() {
        this.C5 = "";
        this.sda = Us
    };
    _.ou.prototype.nK = !0;
    _.ou.prototype.cR = function() {
        return this.C5
    };
    _.ou.prototype.toString = function() {
        return "Const{" + this.C5 + "}"
    };
    _.ru = function(a) {
        return a instanceof _.ou && a.constructor === _.ou && a.sda === Us ? a.C5 : "type_error:Const"
    };
    Us = {};
    _.Kh = function(a) {
        var c = new _.ou;
        c.C5 = a;
        return c
    };
    _.Kh("");
    var WD;
    _.qE = function() {
        this.N8 = "";
        this.tda = WD
    };
    _.qE.prototype.nK = !0;
    _.qE.prototype.cR = function() {
        return this.N8
    };
    _.qE.prototype.mK = !0;
    _.qE.prototype.Im = function() {
        return 1
    };
    _.wx = function(a) {
        if (a instanceof _.qE && a.constructor === _.qE && a.tda === WD) return a.N8;
        _.da(a);
        return "type_error:TrustedResourceUrl"
    };
    WD = {};
    var vU, pu, hg;
    _.su = function() {
        this.d_ = "";
        this.rda = pu
    };
    _.su.prototype.nK = !0;
    _.su.prototype.cR = function() {
        return this.d_
    };
    _.su.prototype.mK = !0;
    _.su.prototype.Im = function() {
        return 1
    };
    _.Ls = function(a) {
        if (a instanceof _.su && a.constructor === _.su && a.rda === pu) return a.d_;
        _.da(a);
        return "type_error:SafeUrl"
    };
    vU = /^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;
    _.jw = function(a) {
        if (a instanceof _.su) return a;
        a = a.nK ? a.cR() : String(a);
        vU.test(a) || (a = "about:invalid#zClosurez");
        return hg(a)
    };
    _.Lm = function(a) {
        if (a instanceof _.su) return a;
        a = a.nK ? a.cR() : String(a);
        vU.test(a) || (a = "about:invalid#zClosurez");
        return hg(a)
    };
    pu = {};
    hg = function(a) {
        var c = new _.su;
        c.d_ = a;
        return c
    };
    hg("about:blank");
    var rm, qu, aG, To, zH;
    _.pm = function() {
        this.M8 = "";
        this.qda = nm
    };
    _.pm.prototype.nK = !0;
    var nm = {};
    _.pm.prototype.cR = function() {
        return this.M8
    };
    _.Bw = function(a) {
        if (a instanceof _.pm && a.constructor === _.pm && a.qda === nm) return a.M8;
        _.da(a);
        return "type_error:SafeStyle"
    };
    _.pm.prototype.XY = function(a) {
        this.M8 = a;
        return this
    };
    rm = (new _.pm).XY("");
    _.cp = function(a) {
        var c = "",
            f;
        for (f in a) {
            if (!/^[-_a-zA-Z0-9]+$/.test(f)) throw Error("e`" + f);
            var g = a[f];
            if (null != g) {
                if (g instanceof _.ou) g = _.ru(g);
                else {
                    g = String(g);
                    var h = g.replace(To, "$1").replace(aG, "url");
                    if (qu.test(h)) {
                        for (var l = h = !0, n = 0; n < g.length; n++) {
                            var q = g.charAt(n);
                            "'" == q && l ? h = !h : '"' == q && h && (l = !l)
                        }
                        g = h && l ? zH(g) : "zClosurez"
                    } else g = "zClosurez"
                }
                c += f + ":" + g + ";"
            }
        }
        return c ? (new _.pm).XY(c) : rm
    };
    qu = /^[-,."'%_!# a-zA-Z0-9]+$/;
    aG = /\b(url\([ \t\n]*)('[ -&(-\[\]-~]*'|"[ !#-\[\]-~]*"|[!#-&*-\[\]-~]*)([ \t\n]*\))/g;
    To = /\b(hsl|hsla|rgb|rgba|(rotate|scale|translate)(X|Y|Z|3d)?)\([-0-9a-z.%, ]+\)/g;
    zH = function(a) {
        return a.replace(aG, function(a, f, g, h) {
            var c = "";
            g = g.replace(/^(['"])(.*)\1$/, function(a, f, g) {
                c = f;
                return g
            });
            a = _.jw(g).cR();
            return f + c + a + c + h
        })
    };
    _.xm = function() {
        this.L8 = "";
        this.pda = _.Bl
    };
    _.xm.prototype.nK = !0;
    _.Bl = {};
    _.mq = function(a, c) {
        if (-1 != a.indexOf("<")) throw Error("tb`" + a);
        var f = a.replace(/('|")((?!\1)[^\r\n\f\\]|\\[\s\S])*\1/g, "");
        if (!/^[-_a-zA-Z0-9#.:* ,>+~[\]()=^$|]+$/.test(f)) throw Error("vb`" + a);
        a: {
            for (var g = {
                    "(": ")",
                    "[": "]"
                }, h = [], l = 0; l < f.length; l++) {
                var n = f[l];
                if (g[n]) h.push(g[n]);
                else if (_.hi(g, n) && h.pop() != n) {
                    f = !1;
                    break a
                }
            }
            f = 0 == h.length
        }
        if (!f) throw Error("wb`" + a);
        c instanceof _.pm || (c = _.cp(c));
        a = a + "{" + _.Bw(c) + "}";
        return _.jq(a)
    };
    _.xm.prototype.cR = function() {
        return this.L8
    };
    _.jq = function(a) {
        return (new _.xm).XY(a)
    };
    _.xm.prototype.XY = function(a) {
        this.L8 = a;
        return this
    };
    _.ns = _.jq("");
    var XM;
    _.NG = function() {
        this.d_ = "";
        this.oda = XM;
        this.Z$ = null
    };
    _.NG.prototype.mK = !0;
    _.NG.prototype.Im = function() {
        return this.Z$
    };
    _.NG.prototype.nK = !0;
    _.NG.prototype.cR = function() {
        return this.d_
    };
    _.OG = function(a) {
        if (a instanceof _.NG && a.constructor === _.NG && a.oda === XM) return a.d_;
        _.da(a);
        return "type_error:SafeHtml"
    };
    XM = {};
    _.uf = function(a, c) {
        return (new _.NG).XY(a, c)
    };
    _.NG.prototype.XY = function(a, c) {
        this.d_ = a;
        this.Z$ = c;
        return this
    };
    _.uf("<!DOCTYPE html>", 0);
    _.RG = _.uf("", 0);
    _.Pp = _.uf("<br>", 0);
    _.sk = function(a, c) {
        a.rel = "stylesheet";
        a.href = _.wx(c)
    };
    var Af, Nf, Xo, ag;
    _.l_ = function(a) {
        var c = new _.qE;
        c.N8 = a;
        return c
    };
    _.nq = function(a) {
        return _.l_(_.ru(a))
    };
    Nf = !_.W || _.gq(9);
    Xo = !_.df && !_.W || _.W && _.gq(9) || _.df && _.sl("1.9.1");
    ag = _.W && !_.sl("9");
    _.Zn = _.W || _.cf || _.ef;
    _.qm = _.W && !_.gq(9);
    var Ff, Of, dg, eg, bg, pg;
    _.xf = function(a) {
        return a ? new _.yf(_.zf(a)) : Af || (Af = new _.yf)
    };
    _.Bf = function(a, c) {
        var f = c || window.document;
        return f.querySelectorAll && f.querySelector ? f.querySelectorAll("." + a) : _.Cf(window.document, "*", a, c)
    };
    _.Df = function(a, c) {
        var f = c || window.document;
        if (f.getElementsByClassName) a = f.getElementsByClassName(a)[0];
        else {
            f = window.document;
            var g = c || f;
            a = g.querySelectorAll && g.querySelector && a ? g.querySelector("" + (a ? "." + a : "")) : _.Cf(f, "*", a, c)[0] || null
        }
        return a || null
    };
    _.Cf = function(a, c, f, g) {
        a = g || a;
        var h = c && "*" != c ? String(c).toUpperCase() : "";
        if (a.querySelectorAll && a.querySelector && (h || f)) return a.querySelectorAll(h + (f ? "." + f : ""));
        if (f && a.getElementsByClassName) {
            g = a.getElementsByClassName(f);
            if (h) {
                a = {};
                for (var l = c = 0, n; n = g[l]; l++) h == n.nodeName && (a[c++] = n);
                a.length = c;
                return a
            }
            return g
        }
        g = a.getElementsByTagName(h || "*");
        if (f) {
            a = {};
            for (l = c = 0; n = g[l]; l++) h = n.className, "function" == typeof h.split && _.ve(h.split(/\s+/), f) && (a[c++] = n);
            a.length = c;
            return a
        }
        return g
    };
    _.Ef = function(a, c) {
        _.qf(c, function(c, g) {
            c && c.nK && (c = c.cR());
            "style" == g ? a.style.cssText = c : "class" == g ? a.className = c : "for" == g ? a.htmlFor = c : Ff.hasOwnProperty(g) ? a.setAttribute(Ff[g], c) : _.jd(g, "aria-") || _.jd(g, "data-") ? a.setAttribute(g, c) : a[g] = c
        })
    };
    Ff = {
        cellpadding: "cellPadding",
        cellspacing: "cellSpacing",
        colspan: "colSpan",
        frameborder: "frameBorder",
        height: "height",
        maxlength: "maxLength",
        nonce: "nonce",
        role: "role",
        rowspan: "rowSpan",
        type: "type",
        usemap: "useMap",
        valign: "vAlign",
        width: "width"
    };
    _.Mf = function(a, c) {
        var f = String(c[0]),
            g = c[1];
        if (!Nf && g && (g.name || g.type)) {
            f = ["<", f];
            g.name && f.push(' name="', _.He(g.name), '"');
            if (g.type) {
                f.push(' type="', _.He(g.type), '"');
                var h = {};
                _.sf(h, g);
                delete h.type;
                g = h
            }
            f.push(">");
            f = f.join("")
        }
        f = a.createElement(f);
        g && (_.fa(g) ? f.className = g : _.ea(g) ? f.className = g.join(" ") : _.Ef(f, g));
        2 < c.length && Of(a, f, c, 2);
        return f
    };
    Of = function(a, c, f, g) {
        function h(f) {
            f && c.appendChild(_.fa(f) ? a.createTextNode(f) : f)
        }
        for (; g < f.length; g++) {
            var l = f[g];
            !_.re(l) || _.Vg(l) && 0 < l.nodeType ? h(l) : (0, _.Be)(pg(l) ? _.ze(l) : l, h)
        }
    };
    _.Br = function(a) {
        return window.document.createElement(String(a))
    };
    _.Qx = function(a) {
        if (1 != a.nodeType) return !1;
        switch (a.tagName) {
            case "APPLET":
            case "AREA":
            case "BASE":
            case "BR":
            case "COL":
            case "COMMAND":
            case "EMBED":
            case "FRAME":
            case "HR":
            case "IMG":
            case "INPUT":
            case "IFRAME":
            case "ISINDEX":
            case "KEYGEN":
            case "LINK":
            case "NOFRAMES":
            case "NOSCRIPT":
            case "META":
            case "OBJECT":
            case "PARAM":
            case "SCRIPT":
            case "SOURCE":
            case "STYLE":
            case "TRACK":
            case "WBR":
                return !1
        }
        return !0
    };
    _.xp = function(a, c) {
        Of(_.zf(a), a, arguments, 1)
    };
    _.Qf = function(a) {
        for (var c; c = a.firstChild;) a.removeChild(c)
    };
    _.Rf = function(a, c) {
        c.parentNode && c.parentNode.insertBefore(a, c)
    };
    _.Sf = function(a, c) {
        c.parentNode && c.parentNode.insertBefore(a, c.nextSibling)
    };
    _.Tf = function(a) {
        return a && a.parentNode ? a.parentNode.removeChild(a) : null
    };
    _.Uf = function(a) {
        var c, f = a.parentNode;
        if (f && 11 != f.nodeType) {
            if (a.removeNode) return a.removeNode(!1);
            for (; c = a.firstChild;) f.insertBefore(c, a);
            return _.Tf(a)
        }
    };
    _.SO = function(a) {
        return Xo && void 0 != a.children ? a.children : (0, _.Ce)(a.childNodes, function(a) {
            return 1 == a.nodeType
        })
    };
    _.Vf = function(a) {
        if (_.kf(a.firstElementChild)) a = a.firstElementChild;
        else
            for (a = a.firstChild; a && 1 != a.nodeType;) a = a.nextSibling;
        return a
    };
    _.iz = function(a) {
        return _.Vg(a) && 1 == a.nodeType
    };
    _.Yf = function(a, c) {
        if (!a || !c) return !1;
        if (a.contains && 1 == c.nodeType) return a == c || a.contains(c);
        if ("undefined" != typeof a.compareDocumentPosition) return a == c || !!(a.compareDocumentPosition(c) & 16);
        for (; c && a != c;) c = c.parentNode;
        return c == a
    };
    _.zf = function(a) {
        return 9 == a.nodeType ? a : a.ownerDocument || a.document
    };
    _.Zf = function(a, c) {
        if ("textContent" in a) a.textContent = c;
        else if (3 == a.nodeType) a.data = String(c);
        else if (a.firstChild && 3 == a.firstChild.nodeType) {
            for (; a.lastChild != a.firstChild;) a.removeChild(a.lastChild);
            a.firstChild.data = String(c)
        } else _.Qf(a), a.appendChild(_.zf(a).createTextNode(String(c)))
    };
    dg = {
        SCRIPT: 1,
        STYLE: 1,
        HEAD: 1,
        IFRAME: 1,
        OBJECT: 1
    };
    eg = {
        IMG: " ",
        BR: "\n"
    };
    _.$f = function(a) {
        if (ag && null !== a && "innerText" in a) a = a.innerText.replace(/(\r\n|\r|\n)/g, "\n");
        else {
            var c = [];
            bg(a, c, !0);
            a = c.join("")
        }
        a = a.replace(/ \xAD /g, " ").replace(/\xAD/g, "");
        a = a.replace(/\u200B/g, "");
        ag || (a = a.replace(/ +/g, " "));
        " " != a && (a = a.replace(/^\s*/, ""));
        return a
    };
    _.cg = function(a) {
        var c = [];
        bg(a, c, !1);
        return c.join("")
    };
    bg = function(a, c, f) {
        if (!(a.nodeName in dg))
            if (3 == a.nodeType) f ? c.push(String(a.nodeValue).replace(/(\r\n|\r|\n)/g, "")) : c.push(a.nodeValue);
            else if (a.nodeName in eg) c.push(eg[a.nodeName]);
        else
            for (a = a.firstChild; a;) bg(a, c, f), a = a.nextSibling
    };
    pg = function(a) {
        if (a && "number" == typeof a.length) {
            if (_.Vg(a)) return "function" == typeof a.item || "string" == typeof a.item;
            if (_.vd(a)) return "function" == typeof a.item
        }
        return !1
    };
    _.yf = function(a) {
        this.wc = a || _.D.document || window.document
    };
    _.k = _.yf.prototype;
    _.k.Ha = _.xf;
    _.k.v5 = _.b(5);
    _.k.Wb = function() {
        return this.wc
    };
    _.k.Kb = function(a) {
        return _.fa(a) ? this.wc.getElementById(a) : a
    };
    _.k.getElementsByTagName = function(a, c) {
        return (c || this.wc).getElementsByTagName(String(a))
    };
    _.k.O_ = _.b(7);
    _.k.SV = _.b(9);
    _.k.d4 = _.b(11);
    _.k.R = function(a, c, f) {
        return _.Mf(this.wc, arguments)
    };
    _.k.createElement = function(a) {
        return this.wc.createElement(String(a))
    };
    _.k.createTextNode = function(a) {
        return this.wc.createTextNode(String(a))
    };
    _.k.Aa = function() {
        var a = this.wc;
        return a.parentWindow || a.defaultView
    };
    _.k.appendChild = function(a, c) {
        a.appendChild(c)
    };
    _.k.append = _.xp;
    _.k.canHaveChildren = _.Qx;
    _.k.u0 = _.Qf;
    _.k.Sl = _.Rf;
    _.k.removeNode = _.Tf;
    _.k.Hp = _.Uf;
    _.k.NR = _.SO;
    _.k.Yd = _.Vf;
    _.k.isElement = _.iz;
    _.k.contains = _.Yf;
    _.k.kJ = _.b(12);

    _.xw = function(a, c) {
        c || (c = {});
        var f = window;
        var g = a instanceof _.su ? a : _.jw("undefined" != typeof a.href ? a.href : String(a));
        a = c.target || a.target;
        var h = [];
        for (l in c) switch (l) {
            case "width":
            case "height":
            case "top":
            case "left":
                h.push(l + "=" + c[l]);
                break;
            case "target":
            case "noreferrer":
                break;
            default:
                h.push(l + "=" + (c[l] ? 1 : 0))
        }
        var l = h.join(",");
        _.wk() && f.navigator && f.navigator.standalone && a && "_self" != a ? (l = f.document.createElement("A"), g = g instanceof _.su ? g : _.Lm(g), l.href = _.Ls(g), l.setAttribute("target", a), c.noreferrer &&
            l.setAttribute("rel", "noreferrer"), c = window.document.createEvent("MouseEvent"), c.initMouseEvent("click", !0, !0, f, 1), l.dispatchEvent(c), f = {}) : c.noreferrer ? (f = f.open("", a, l), c = _.Ls(g), f && (_.Vi && -1 != c.indexOf(";") && (c = "'" + c.replace(/'/g, "%27") + "'"), f.opener = null, _.Kh("b/12014412, meta tag with sanitized URL"), c = '<META HTTP-EQUIV="refresh" content="0; url=' + _.He(c) + '">', c = _.uf(c, null), f.document.write(_.OG(c)), f.document.close())) : f = f.open(_.Ls(g), a, l);
        return f
    };

    _.fv = function(a, c) {
        a.src = _.wx(c)
    };
    var sm, uu, mm, tm;
    _.Lf = function(a) {
        return "CSS1Compat" == a.compatMode
    };
    _.fg = function(a, c) {
        this.width = a;
        this.height = c
    };
    _.k = _.fg.prototype;
    _.k.clone = function() {
        return new _.fg(this.width, this.height)
    };
    _.k.Cda = function() {
        return this.width * this.height
    };
    _.k.aspectRatio = function() {
        return this.width / this.height
    };
    _.k.isEmpty = function() {
        return !this.Cda()
    };
    _.k.ceil = function() {
        this.width = Math.ceil(this.width);
        this.height = Math.ceil(this.height);
        return this
    };
    _.k.floor = function() {
        this.width = Math.floor(this.width);
        this.height = Math.floor(this.height);
        return this
    };
    _.k.round = function() {
        this.width = Math.round(this.width);
        this.height = Math.round(this.height);
        return this
    };
    _.k.scale = function(a, c) {
        c = _.qe(c) ? c : a;
        this.width *= a;
        this.height *= c;
        return this
    };
    _.Ne = function(a, c) {
        return a == c ? !0 : a && c ? a.x == c.x && a.y == c.y : !1
    };
    _.Kf = function(a) {
        return a.scrollingElement ? a.scrollingElement : !_.ef && _.Lf(a) ? a.documentElement : a.body || a.documentElement
    };
    _.Ct = function(a) {
        a = a.document;
        a = _.Lf(a) ? a.documentElement : a.body;
        return new _.fg(a.clientWidth, a.clientHeight)
    };
    _.X = function(a, c) {
        this.x = _.kf(a) ? a : 0;
        this.y = _.kf(c) ? c : 0
    };
    _.k = _.X.prototype;
    _.k.clone = function() {
        return new _.X(this.x, this.y)
    };
    _.k.equals = function(a) {
        return a instanceof _.X && _.Ne(this, a)
    };
    _.k.ceil = function() {
        this.x = Math.ceil(this.x);
        this.y = Math.ceil(this.y);
        return this
    };
    _.k.floor = function() {
        this.x = Math.floor(this.x);
        this.y = Math.floor(this.y);
        return this
    };
    _.k.round = function() {
        this.x = Math.round(this.x);
        this.y = Math.round(this.y);
        return this
    };
    _.k.translate = function(a, c) {
        a instanceof _.X ? (this.x += a.x, this.y += a.y) : (this.x += Number(a), _.qe(c) && (this.y += c));
        return this
    };
    _.k.scale = function(a, c) {
        c = _.qe(c) ? c : a;
        this.x *= a;
        this.y *= c;
        return this
    };
    _.eG = function(a) {
        if (a instanceof _.NG) return a;
        var c = null;
        a.mK && (c = a.Im());
        return _.uf(_.He(a.nK ? a.cR() : String(a)), c)
    };
    _.Hm = function(a, c, f, g) {
        return _.Cf(a.wc, c, f, g)
    };
    _.Jf = function(a) {
        var c = _.Kf(a);
        a = a.parentWindow || a.defaultView;
        return _.W && _.sl("10") && a.pageYOffset != c.scrollTop ? new _.X(c.scrollLeft, c.scrollTop) : new _.X(a.pageXOffset || c.scrollLeft, a.pageYOffset || c.scrollTop)
    };
    _.ig = function(a) {
        return _.Ct(a || window)
    };
    _.j_ = function(a, c) {
        a.innerHTML = _.OG(c)
    };
    _.tu = function(a) {
        var c = 0,
            f = "",
            g = function(a) {
                _.ea(a) ? (0, _.Be)(a, g) : (a = _.eG(a), f += _.OG(a), a = a.Im(), 0 == c ? c = a : 0 != a && c != a && (c = null))
            };
        (0, _.Be)(arguments, g);
        return _.uf(f, c)
    };
    sm = {
        action: !0,
        cite: !0,
        data: !0,
        formaction: !0,
        href: !0,
        manifest: !0,
        poster: !0,
        src: !0
    };
    uu = /^[a-zA-Z0-9-]+$/;
    mm = {
        area: !0,
        base: !0,
        br: !0,
        col: !0,
        command: !0,
        embed: !0,
        hr: !0,
        img: !0,
        input: !0,
        keygen: !0,
        link: !0,
        meta: !0,
        param: !0,
        source: !0,
        track: !0,
        wbr: !0
    };
    _.jg = function(a) {
        return a ? a.parentWindow || a.defaultView : window
    };
    tm = {
        APPLET: !0,
        BASE: !0,
        EMBED: !0,
        IFRAME: !0,
        LINK: !0,
        MATH: !0,
        META: !0,
        OBJECT: !0,
        SCRIPT: !0,
        STYLE: !0,
        SVG: !0,
        TEMPLATE: !0
    };
    _.wm = function(a) {
        if (a instanceof _.xm && a.constructor === _.xm && a.pda === _.Bl) return a.L8;
        _.da(a);
        return "type_error:SafeStyleSheet"
    };
    _.Gt = function(a) {
        return String(a).replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g, "\\$1").replace(/\x08/g, "\\x08")
    };
    _.bw = function(a) {
        var c;
        if (_.Zn && !(_.W && _.sl("9") && !_.sl("10") && _.D.SVGElement && a instanceof _.D.SVGElement) && (c = a.parentElement)) return c;
        c = a.parentNode;
        return _.iz(c) ? c : null
    };
    _.Ng = function(a, c, f) {
        return _.Mf(window.document, arguments)
    };
    _.cr = function(a) {
        return _.fa(a) ? window.document.getElementById(a) : a
    };
    _.Dr = function(a, c) {
        if (!uu.test("div")) throw Error("s`div");
        if ("DIV" in tm) throw Error("D`div");
        var f = null,
            g = "";
        if (a)
            for (n in a) {
                if (!uu.test(n)) throw Error("E`" + n);
                var h = a[n];
                if (null != h) {
                    var l = n;
                    if (h instanceof _.ou) h = _.ru(h);
                    else if ("style" == l.toLowerCase()) {
                        if (!_.Vg(h)) throw Error("M`" + typeof h + "`" + h);
                        h instanceof _.pm || (h = _.cp(h));
                        h = _.Bw(h)
                    } else {
                        if (/^on/i.test(l)) throw Error("F`" + l + "`" + h);
                        if (l.toLowerCase() in sm)
                            if (h instanceof _.qE) h = _.wx(h);
                            else if (h instanceof _.su) h = _.Ls(h);
                        else if (_.fa(h)) h =
                            _.jw(h).cR();
                        else throw Error("ea`" + l + "`div`" + h);
                    }
                    h.nK && (h = h.cR());
                    l = l + '="' + _.He(String(h)) + '"';
                    g += " " + l
                }
            }
        var n = "<div" + g;
        null != c ? _.ea(c) || (c = [c]) : c = [];
        !0 === mm.div ? n += ">" : (f = _.tu(c), n += ">" + _.OG(f) + "</div>", f = f.Im());
        (a = a && a.dir) && (f = /^(ltr|rtl|auto)$/i.test(a) ? 0 : null);
        return _.uf(n, f)
    };
    _.CM = function(a, c, f) {
        if (null !== a && c in a) throw Error("p`" + c);
        a[c] = f
    };
    _.Dg = function(a) {
        var c = _.fa(void 0) ? _.Gt(void 0) : "\\s";
        return a.replace(new RegExp("(^" + (c ? "|[" + c + "]+" : "") + ")([a-z])", "g"), function(a, c, h) {
            return c + h.toUpperCase()
        })
    };
    _.Pg = function(a, c, f, g) {
        this.top = a;
        this.right = c;
        this.bottom = f;
        this.left = g
    };
    _.k = _.Pg.prototype;
    _.k.Ne = function() {
        return this.right - this.left
    };
    _.k.Cd = function() {
        return this.bottom - this.top
    };
    _.k.clone = function() {
        return new _.Pg(this.top, this.right, this.bottom, this.left)
    };
    _.k.contains = function(a) {
        return this && a ? a instanceof _.Pg ? a.left >= this.left && a.right <= this.right && a.top >= this.top && a.bottom <= this.bottom : a.x >= this.left && a.x <= this.right && a.y >= this.top && a.y <= this.bottom : !1
    };
    _.k.expand = function(a, c, f, g) {
        _.Vg(a) ? (this.top -= a.top, this.right += a.right, this.bottom += a.bottom, this.left -= a.left) : (this.top -= a, this.right += Number(c), this.bottom += Number(f), this.left -= Number(g));
        return this
    };
    _.k.ceil = function() {
        this.top = Math.ceil(this.top);
        this.right = Math.ceil(this.right);
        this.bottom = Math.ceil(this.bottom);
        this.left = Math.ceil(this.left);
        return this
    };
    _.k.floor = function() {
        this.top = Math.floor(this.top);
        this.right = Math.floor(this.right);
        this.bottom = Math.floor(this.bottom);
        this.left = Math.floor(this.left);
        return this
    };
    _.k.round = function() {
        this.top = Math.round(this.top);
        this.right = Math.round(this.right);
        this.bottom = Math.round(this.bottom);
        this.left = Math.round(this.left);
        return this
    };
    _.k.translate = function(a, c) {
        a instanceof _.X ? (this.left += a.x, this.right += a.x, this.top += a.y, this.bottom += a.y) : (this.left += a, this.right += a, _.qe(c) && (this.top += c, this.bottom += c));
        return this
    };
    _.k.scale = function(a, c) {
        c = _.qe(c) ? c : a;
        this.left *= a;
        this.right *= a;
        this.top *= c;
        this.bottom *= c;
        return this
    };
    var bZ, qg, xg, Sg, Rg;
    _.Mg = function(a, c, f) {
        if (_.fa(c))(c = _.Fg(a, c)) && (a.style[c] = f);
        else
            for (var g in c) {
                f = a;
                var h = c[g],
                    l = _.Fg(f, g);
                l && (f.style[l] = h)
            }
    };
    bZ = {};
    _.Fg = function(a, c) {
        var f = bZ[c];
        if (!f) {
            var g = _.Cg(c);
            f = g;
            void 0 === a.style[g] && (g = (_.ef ? "Webkit" : _.df ? "Moz" : _.W ? "ms" : _.cf ? "O" : null) + _.Dg(g), void 0 !== a.style[g] && (f = g));
            bZ[c] = f
        }
        return f
    };
    _.lg = function(a, c) {
        var f = _.zf(a);
        return f.defaultView && f.defaultView.getComputedStyle && (a = f.defaultView.getComputedStyle(a, null)) ? a[c] || a.getPropertyValue(c) || "" : ""
    };
    _.mg = function(a, c) {
        return a.currentStyle ? a.currentStyle[c] : null
    };
    _.ng = function(a, c) {
        return _.lg(a, c) || _.mg(a, c) || a.style && a.style[c]
    };
    _.Zg = function(a, c, f) {
        if (c instanceof _.X) {
            var g = c.x;
            c = c.y
        } else g = c, c = f;
        a.style.left = xg(g, !1);
        a.style.top = xg(c, !1)
    };
    qg = function(a) {
        try {
            var c = a.getBoundingClientRect()
        } catch (f) {
            return {
                left: 0,
                top: 0,
                right: 0,
                bottom: 0
            }
        }
        _.W && a.ownerDocument.body && (a = a.ownerDocument, c.left -= a.documentElement.clientLeft + a.body.clientLeft, c.top -= a.documentElement.clientTop + a.body.clientTop);
        return c
    };
    _.sg = function(a) {
        var c = _.zf(a),
            f = new _.X(0, 0);
        var g = c ? _.zf(c) : window.document;
        g = !_.W || _.gq(9) || _.Lf(_.xf(g).wc) ? g.documentElement : g.body;
        if (a == g) return f;
        a = qg(a);
        c = _.Jf(_.xf(c).wc);
        f.x = a.left + c.x;
        f.y = a.top + c.y;
        return f
    };
    _.tg = function(a, c) {
        var f = new _.X(0, 0),
            g = _.jg(_.zf(a));
        if (!_.Eo(g, "parent")) return f;
        do {
            var h = g == c ? _.sg(a) : _.Kt(a);
            f.x += h.x;
            f.y += h.y
        } while (g && g != c && g != g.parent && (a = g.frameElement) && (g = g.parent));
        return f
    };
    _.Kt = function(a) {
        a = qg(a);
        return new _.X(a.left, a.top)
    };
    _.wg = function(a, c, f) {
        if (c instanceof _.fg) f = c.height, c = c.width;
        else if (void 0 == f) throw Error("r");
        a.style.width = xg(c, !0);
        _.Lt(a, f)
    };
    xg = function(a, c) {
        "number" == typeof a && (a = (c ? Math.round(a) : a) + "px");
        return a
    };
    _.Lt = function(a, c) {
        a.style.height = xg(c, !0)
    };
    _.Nt = function(a) {
        var c = _.zg;
        if ("none" != _.ng(a, "display")) return c(a);
        var f = a.style,
            g = f.display,
            h = f.visibility,
            l = f.position;
        f.visibility = "hidden";
        f.position = "absolute";
        f.display = "inline";
        a = c(a);
        f.display = g;
        f.position = l;
        f.visibility = h;
        return a
    };
    _.zg = function(a) {
        var c = a.offsetWidth,
            f = a.offsetHeight,
            g = _.ef && !c && !f;
        return _.kf(c) && !g || !a.getBoundingClientRect ? new _.fg(c, f) : (a = qg(a), new _.fg(a.right - a.left, a.bottom - a.top))
    };
    _.Ag = function(a, c) {
        a = a.style;
        "opacity" in a ? a.opacity = c : "MozOpacity" in a ? a.MozOpacity = c : "filter" in a && (a.filter = "" === c ? "" : "alpha(opacity=" + 100 * Number(c) + ")")
    };
    _.Rj = function(a, c) {
        a.style.display = c ? "" : "none"
    };
    _.Xg = function(a) {
        return _.tO(_.jq(a), void 0)
    };
    _.tO = function(a, c) {
        c = _.xf(c);
        var f = c.Wb();
        if (_.W && f.createStyleSheet) {
            var g = f.createStyleSheet();
            _.QF(g, a)
        } else f = _.Hm(c, "HEAD")[0], f || (g = _.Hm(c, "BODY")[0], f = c.R("HEAD"), g.parentNode.insertBefore(f, g)), g = c.R("STYLE"), _.QF(g, a), c.appendChild(f, g);
        return g
    };
    _.QF = function(a, c) {
        c = _.wm(c);
        _.W && _.kf(a.cssText) ? a.cssText = c : a.innerHTML = c
    };
    _.Eg = function(a) {
        return "rtl" == _.ng(a, "direction")
    };
    _.Bg = _.df ? "MozUserSelect" : _.ef || _.yk ? "WebkitUserSelect" : null;
    _.Qg = function(a, c) {
        if (/^\d+px?$/.test(c)) return (0, window.parseInt)(c, 10);
        var f = a.style.left,
            g = a.runtimeStyle.left;
        a.runtimeStyle.left = a.currentStyle.left;
        a.style.left = c;
        c = a.style.pixelLeft;
        a.style.left = f;
        a.runtimeStyle.left = g;
        return +c
    };
    Sg = {
        thin: 2,
        medium: 4,
        thick: 6
    };
    Rg = function(a, c) {
        if ("none" == _.mg(a, c + "Style")) return 0;
        c = _.mg(a, c + "Width");
        return c in Sg ? Sg[c] : _.Qg(a, c)
    };
    _.Ug = function(a) {
        if (_.W && !_.gq(9)) {
            var c = Rg(a, "borderLeft");
            var f = Rg(a, "borderRight");
            var g = Rg(a, "borderTop");
            a = Rg(a, "borderBottom");
            return new _.Pg(g, f, a, c)
        }
        c = _.lg(a, "borderLeftWidth");
        f = _.lg(a, "borderRightWidth");
        g = _.lg(a, "borderTopWidth");
        a = _.lg(a, "borderBottomWidth");
        return new _.Pg((0, window.parseFloat)(g), (0, window.parseFloat)(f), (0, window.parseFloat)(a), (0, window.parseFloat)(c))
    };

    _.nW = function() {
        var a = _.We;
        return !!a && 0 <= a.indexOf("CriOS")
    };
    _.oW = function() {
        var a = _.We;
        return !!a && 0 <= a.indexOf("iPhone") && 0 <= a.indexOf("Safari") && -1 == a.indexOf("CriOS")
    };
    _.NA = function(a, c) {
        var f = /^https:\/\/([^\/]+\.google\.com)\//.exec(a);
        f && -1 != ["plus.google.com", "plus.sandbox.google.com"].indexOf(f[1]) && (c = c || {}, c.noreferrer = !0, (a = _.xw(a, c)) && a.focus())
    };

    var DN, IN;
    (function() {
        var a = null,
            c = null,
            f = {
                0: "comments"
            };
        f[1] = {
            href: [_.Zc],
            view_type: [null],
            query: [null],
            width: [null],
            pinned_comment: [null],
            owner_id: [null],
            first_party_property: [null],
            legacy_comment_moderation_url: [null]
        };
        var g = function(a, f, g) {
            var h = _.sg(_.cr(c)).y;
            f && _.oW() && (h -= 60);
            var l = _.ig().height,
                n = _.Jf(window.document).y;
            a = h + a;
            if (a < n || a > n + l || g) g = a, f && (g -= l), _.Kf(window.document).scrollTop = g
        };
        f[3] = {
            onfirsttimeplusonepromo: !0,
            onallcommentsclicked: !0,
            onfirsttimecommenter: !0,
            onhidefirsttimecommenterpromo: !0,
            ontimestampclicked: !0,
            onshareboxopen: !0,
            onshownotification: !0,
            onthumbsup: !0,
            onupgradeaccount: !0,
            scroll: function() {
                return g
            },
            openwindow: function() {
                return _.nW() ? _.NA : void 0
            }
        };
        var h = function() {
                if (c) {
                    var a = window.document.getElementById(c);
                    a && a.parentNode && a.parentNode.parentNode && (a.style.width = a.parentNode.parentNode.offsetWidth + "px")
                }
            },
            l = function() {
                a && (a.U && a.U(), c = a = null, window.removeEventListener ? window.removeEventListener("resize", h) : window.detachEvent && window.detachEvent("onresize", h))
            };
        f[5] = function(f, g) {
            "e" == f &&
                (l(), a = g[5], c = a.Hh(), window.addEventListener ? window.addEventListener("resize", h) : window.attachEvent && window.attachEvent("onresize", h))
        };
        _.iC(f);
        DN = l;
        IN = function(c) {
            a.send("createComment", {
                content: c
            }, null, _.Vz)
        }
    })();
    _.Mu("gapi.comments.createComment", IN);
    _.Mu("gapi.comments.dispose", DN);

    var vs = _.Rb = _.Rb || {};
    window.___jsl = window.___jsl || {};
    vs.aX = {
        dja: function() {
            return window.___jsl.bsh
        },
        Ok: function() {
            return window.___jsl.h
        },
        NT: function(a) {
            window.___jsl.bsh = a
        },
        ys: function(a) {
            window.___jsl.h = a
        }
    };
    _.R = _.R || {};
    _.R.Dg = function(a, c, f) {
        for (var g = [], h = 2, l = arguments.length; h < l; ++h) g.push(arguments[h]);
        return function() {
            for (var f = g.slice(), h = 0, l = arguments.length; h < l; ++h) f.push(arguments[h]);
            return c.apply(a, f)
        }
    };
    _.R.nf = function(a) {
        var c, f, g = {};
        for (c = 0; f = a[c]; ++c) g[f] = f;
        return g
    };

    _.R = _.R || {};
    (function() {
        function a(a, c) {
            return String.fromCharCode(c)
        }
        var c = {
            0: !1,
            10: !0,
            13: !0,
            34: !0,
            39: !0,
            60: !0,
            62: !0,
            92: !0,
            8232: !0,
            8233: !0,
            65282: !0,
            65287: !0,
            65308: !0,
            65310: !0,
            65340: !0
        };
        _.R.escape = function(a, c) {
            if (a) {
                if ("string" === typeof a) return _.R.Qf(a);
                if ("Array" === typeof a) {
                    var f = 0;
                    for (c = a.length; f < c; ++f) a[f] = _.R.escape(a[f])
                } else if ("object" === typeof a && c) {
                    c = {};
                    for (f in a) a.hasOwnProperty(f) && (c[_.R.Qf(f)] = _.R.escape(a[f], !0));
                    return c
                }
            }
            return a
        };
        _.R.Qf = function(a) {
            if (!a) return a;
            for (var f = [], h, l, n = 0, q = a.length; n < q; ++n) h = a.charCodeAt(n), l = c[h], !0 === l ? f.push("&#", h, ";") : !1 !== l && f.push(a.charAt(n));
            return f.join("")
        };
        _.R.YX = function(c) {
            return c ? c.replace(/&#([0-9]+);/g, a) : c
        }
    })();

    _.R = _.R || {};
    _.R.Ee = function(a, c, f, g) {
        "undefined" != typeof a.addEventListener ? a.addEventListener(c, f, g) : "undefined" != typeof a.attachEvent ? a.attachEvent("on" + c, f) : _.Lb("cannot attachBrowserEvent: " + c)
    };
    _.R.Vr = function(a) {
        var c = window;
        c.removeEventListener ? c.removeEventListener("mousemove", a, !1) : c.detachEvent ? c.detachEvent("onmousemove", a) : _.Lb("cannot removeBrowserEvent: mousemove")
    };

    _.Tb = function() {
        function a() {
            h[0] = 1732584193;
            h[1] = 4023233417;
            h[2] = 2562383102;
            h[3] = 271733878;
            h[4] = 3285377520;
            w = v = 0
        }

        function c(a) {
            for (var c = n, f = 0; 64 > f; f += 4) c[f / 4] = a[f] << 24 | a[f + 1] << 16 | a[f + 2] << 8 | a[f + 3];
            for (f = 16; 80 > f; f++) a = c[f - 3] ^ c[f - 8] ^ c[f - 14] ^ c[f - 16], c[f] = (a << 1 | a >>> 31) & 4294967295;
            a = h[0];
            var g = h[1],
                l = h[2],
                q = h[3],
                t = h[4];
            for (f = 0; 80 > f; f++) {
                if (40 > f)
                    if (20 > f) {
                        var v = q ^ g & (l ^ q);
                        var w = 1518500249
                    } else v = g ^ l ^ q, w = 1859775393;
                else 60 > f ? (v = g & l | q & (g | l), w = 2400959708) : (v = g ^ l ^ q, w = 3395469782);
                v = ((a << 5 | a >>> 27) & 4294967295) +
                    v + t + w + c[f] & 4294967295;
                t = q;
                q = l;
                l = (g << 30 | g >>> 2) & 4294967295;
                g = a;
                a = v
            }
            h[0] = h[0] + a & 4294967295;
            h[1] = h[1] + g & 4294967295;
            h[2] = h[2] + l & 4294967295;
            h[3] = h[3] + q & 4294967295;
            h[4] = h[4] + t & 4294967295
        }

        function f(a, f) {
            if ("string" === typeof a) {
                a = (0, window.unescape)((0, window.encodeURIComponent)(a));
                for (var g = [], h = 0, n = a.length; h < n; ++h) g.push(a.charCodeAt(h));
                a = g
            }
            f || (f = a.length);
            g = 0;
            if (0 == v)
                for (; g + 64 < f;) c(a.slice(g, g + 64)), g += 64, w += 64;
            for (; g < f;)
                if (l[v++] = a[g++], w++, 64 == v)
                    for (v = 0, c(l); g + 64 < f;) c(a.slice(g, g + 64)), g += 64, w += 64
        }

        function g() {
            var a = [],
                g = 8 * w;
            56 > v ? f(q, 56 - v) : f(q, 64 - (v - 56));
            for (var n = 63; 56 <= n; n--) l[n] = g & 255, g >>>= 8;
            c(l);
            for (n = g = 0; 5 > n; n++)
                for (var t = 24; 0 <= t; t -= 8) a[g++] = h[n] >> t & 255;
            return a
        }
        for (var h = [], l = [], n = [], q = [128], t = 1; 64 > t; ++t) q[t] = 0;
        var v, w;
        a();
        return {
            reset: a,
            update: f,
            digest: g,
            Of: function() {
                for (var a = g(), c = "", f = 0; f < a.length; f++) c += "0123456789ABCDEF".charAt(Math.floor(a[f] / 16)) + "0123456789ABCDEF".charAt(a[f] % 16);
                return c
            }
        }
    };
    _.Vb = function() {
        function a(a) {
            var c = _.Tb();
            c.update(a);
            return c.Of()
        }
        var c = window.crypto;
        if (c && "function" == typeof c.getRandomValues) return function() {
            var a = new window.Uint32Array(1);
            c.getRandomValues(a);
            return Number("0." + a[0])
        };
        var f = _.P("random/maxObserveMousemove");
        null == f && (f = -1);
        var g = 0,
            h = Math.random(),
            l = 1,
            n = 1E6 * (window.screen.width * window.screen.width + window.screen.height),
            q = function(a) {
                a = a || window.event;
                var c = a.screenX + a.clientX << 16;
                c += a.screenY + a.clientY;
                c *= (new Date).getTime() % 1E6;
                l = l * c %
                    n;
                0 < f && ++g == f && _.R.Vr(q)
            };
        0 != f && _.R.Ee(window, "mousemove", q, !1);
        var t = a(window.document.cookie + "|" + window.document.location + "|" + (new Date).getTime() + "|" + h);
        return function() {
            var c = l;
            c += (0, window.parseInt)(t.substr(0, 20), 16);
            t = a(t);
            return c / (n + Math.pow(16, 20))
        }
    }();
    _.Mu("shindig.random", _.Vb);
    _.Ht = function(a, c) {
        for (var f in c) a[f] = c[f]
    };
    _.V.Kh = _.V.Kh || {};
    _.V.Kh.jp = function(a) {
        try {
            return !!a.document
        } catch (c) {}
        return !1
    };
    _.V.Kh.Uk = function(a) {
        var c = a.parent;
        return a != c && _.V.Kh.jp(c) ? _.V.Kh.Uk(c) : a
    };
    _.V.Kh.St = function(a) {
        var c = a.userAgent || "";
        a = a.product || "";
        return 0 != c.indexOf("Opera") && -1 == c.indexOf("WebKit") && "Gecko" == a && 0 < c.indexOf("rv:1.")
    };

    var gc, ic, bG, oc, qc, hG, uc, vc, eo, xc, yc, Mc, Nc, Oc, Qc, ec, Pc;
    gc = function() {
        _.V.Kl++;
        return ["I", _.V.Kl, "_", (new Date).getTime()].join("")
    };
    ic = function(a) {
        return a instanceof Array ? a.join(",") : a instanceof Object ? (0, _.mf)(a) : a
    };
    bG = function(a) {
        var c = _.P("googleapis.config/elog");
        if (c) try {
            c(a)
        } catch (f) {}
    };
    oc = function(a) {
        a && a.match(pc) && _.Fa("googleapis.config/gcv", a)
    };
    qc = function(a) {
        _.Rb.aX.ys(a)
    };
    hG = function(a) {
        _.Rb.aX.NT(a)
    };
    _.sc = function(a, c) {
        c = c || {};
        for (var f in a) a.hasOwnProperty(f) && (c[f] = a[f]);
        return c
    };
    _.tc = function(a, c, f, g, h) {
        var l = [],
            n;
        for (n in a)
            if (a.hasOwnProperty(n)) {
                var q = c,
                    t = f,
                    v = a[n],
                    w = g,
                    A = Zb(n);
                A[q] = A[q] || {};
                w = _.R.Dg(w, v);
                v._iframe_wrapped_rpc_ && (w._iframe_wrapped_rpc_ = !0);
                A[q][t] = w;
                l.push(n)
            }
        if (h)
            for (n in _.V.uW) _.V.uW.hasOwnProperty(n) && l.push(n);
        return l.join(",")
    };
    uc = function(a, c, f) {
        var g = {};
        if (a && a._methods) {
            a = a._methods.split(",");
            for (var h = 0; h < a.length; h++) {
                var l = a[h];
                g[l] = $b(l, c, f)
            }
        }
        return g
    };
    vc = function(a) {
        if (a && a.disableMultiLevelParentRelay) a = !1;
        else {
            var c;
            if (c = _.Sb && _.Sb._open && "inline" != a.style && !0 !== a.inline) a = a.container, c = !(a && ("string" == typeof a && window.document.getElementById(a) || window.document == (a.ownerDocument || a.document)));
            a = c
        }
        return a
    };
    eo = function(a, c) {
        var f = {};
        c = c.params || {};
        for (var g in a) "#" == g.charAt(0) && (f[g.substring(1)] = a[g]), 0 == g.indexOf("fr-") && (f[g.substring(3)] = a[g]), "#" == c[g] && (f[g] = a[g]);
        for (var h in f) delete a["fr-" + h], delete a["#" + h], delete a[h];
        return f
    };
    xc = function(a) {
        if (":" == a.charAt(0)) {
            var c = _.P("iframes/" + a.substring(1));
            a = {};
            _.Sl(c, a);
            (c = a.url) && (a.url = _.mc(c));
            a.params || (a.params = {});
            return a
        }
        return {
            url: _.mc(a)
        }
    };
    yc = function(a) {
        function c() {}
        c.prototype = zc.prototype;
        a.prototype = new c
    };
    Mc = function(a) {
        return _.V.yf[a]
    };
    Nc = function(a, c) {
        _.V.yf[a] = c
    };
    Oc = function(a) {
        a = a || {};
        "auto" === a.height && (a.height = _.Ob.Cd());
        var c = window && Pc && Pc.ma();
        c ? c.Gm(a.width || 0, a.height || 0) : _.Sb && _.Sb._resizeMe && _.Sb._resizeMe(a)
    };
    Qc = function(a) {
        oc(a)
    };
    ec = function(a) {
        var c = _.e(a.location.href, "urlindex");
        if (c = _.Ka(_.bb, "fUrl", [])[c]) {
            var f = a.location.hash;
            c += /#/.test(c) ? f.replace(/^#/, "&") : f;
            a.location.replace(c)
        }
    };
    _.ba = function() {
        return _.ta.location.origin || _.ta.location.protocol + "//" + _.ta.location.host
    };
    if (window.ToolbarApi) Pc = window.ToolbarApi, Pc.ma = window.ToolbarApi.getInstance, Pc.prototype = window.ToolbarApi.prototype, _.k = Pc.prototype, _.k.openWindow = Pc.prototype.openWindow, _.k.rk = Pc.prototype.closeWindow, _.k.Tm = Pc.prototype.setOnCloseHandler, _.k.jj = Pc.prototype.canClosePopup, _.k.Gm = Pc.prototype.resizeWindow;
    else {
        Pc = function() {};
        var Rc = null;
        Pc.ma = function() {
            !Rc && window.external && window.external.GTB_IsToolbar && (Rc = new Pc);
            return Rc
        };
        _.k = Pc.prototype;
        _.k.openWindow = function(a) {
            return window.external.GTB_OpenPopup &&
                window.external.GTB_OpenPopup(a)
        };
        _.k.rk = function(a) {
            window.external.GTB_ClosePopupWindow && window.external.GTB_ClosePopupWindow(a)
        };
        _.k.Tm = function(a, c) {
            window.external.GTB_SetOnCloseHandler && window.external.GTB_SetOnCloseHandler(a, c)
        };
        _.k.jj = function(a) {
            return window.external.GTB_CanClosePopup && window.external.GTB_CanClosePopup(a)
        };
        _.k.Gm = function(a, c) {
            return window.external.GTB_ResizeWindow && window.external.GTB_ResizeWindow(a, c)
        };
        window.ToolbarApi = Pc;
        window.ToolbarApi.getInstance = Pc.ma
    };
    var iH = function() {
            _.T.register("_noop_echo", function() {
                this.callback(_.V.UI(_.V.Uc[this.f]))
            })
        },
        ac = function() {
            window.setTimeout(function() {
                _.T.call("..", "_noop_echo", _.V.Lr)
            }, 0)
        },
        $b = function(a, c, f) {
            var g = function(g) {
                var h = Array.prototype.slice.call(arguments, 0),
                    n = h[h.length - 1];
                if ("function" === typeof n) {
                    var q = n;
                    h.pop()
                }
                h.unshift(c, a, q, f);
                _.T.call.apply(_.T, h)
            };
            g._iframe_wrapped_rpc_ = !0;
            return g
        },
        Zb = function(a) {
            _.V.Rg[a] || (_.V.Rg[a] = {}, _.T.register(a, function(c) {
                var f = this.f;
                if (!("string" != typeof c ||
                        c in {} || f in {})) {
                    var g = this.callback,
                        h = _.V.Rg[a][f],
                        l;
                    h && Object.hasOwnProperty.call(h, c) ? l = h[c] : Object.hasOwnProperty.call(_.V.uW, a) && (l = _.V.uW[a]);
                    if (l) return f = Array.prototype.slice.call(arguments, 1), l._iframe_wrapped_rpc_ && g && f.push(g), l.apply({}, f)
                }
                _.sa(['Unregistered call in window "', window.name, '" for method "', a, '", via proxyId "', c, '" from frame "', f, '".'].join(""));
                return null
            }));
            return _.V.Rg[a]
        };
    _.V.ip = function(a, c, f) {
        var g = Array.prototype.slice.call(arguments);
        _.V.Pk(function(a) {
            a.sameOrigin && (g.unshift("/" + a.claimedOpenerId + "|" + window.location.protocol + "//" + window.location.host), _.T.call.apply(_.T, g))
        })
    };
    _.V.Sr = function(a, c) {
        _.T.register(a, c)
    };
    var pc = /^[-_.0-9A-Za-z]+$/,
        Hc = {
            open: "open",
            onready: "ready",
            close: "close",
            onresize: "resize",
            onOpen: "open",
            onReady: "ready",
            onClose: "close",
            onResize: "resize",
            onRenderStart: "renderstart"
        },
        Jc = {
            onBeforeParentOpen: "beforeparentopen"
        },
        Cc = {
            onOpen: function(a) {
                var c = a.va();
                a.Pa(c.container || c.element);
                return a
            },
            onClose: function(a) {
                a.remove()
            }
        };
    _.V.Wp = function(a) {
        var c = _.r();
        _.Sl(_.vb, c);
        _.Sl(a, c);
        return c
    };
    var zc = function(a, c, f, g, h, l, n, q) {
        this.config = xc(a);
        this.openParams = this.DW = c || {};
        this.params = f || {};
        this.methods = g;
        this.qy = !1;
        Ac(this, c.style);
        this.Aq = {};
        Bc(this, function() {
            var a;
            (a = this.DW.style) && _.V.yf[a] ? a = _.V.yf[a] : a ? (_.Lb(['Missing handler for style "', a, '". Continuing with default handler.'].join("")), a = null) : a = Cc;
            if (a) {
                if ("function" === typeof a) var c = a(this);
                else {
                    var f = {};
                    for (c in a) {
                        var g = a[c];
                        f[c] = "function" === typeof g ? _.R.Dg(a, g, this) : g
                    }
                    c = f
                }
                for (var n in h) a = c[n], "function" === typeof a && Dc(this,
                    h[n], _.R.Dg(c, a))
            }
            l && Dc(this, "close", l)
        });
        this.ya = this.ac = n;
        this.dj = (q || []).slice();
        n && this.dj.unshift(n.Hh())
    };
    zc.prototype.va = function() {
        return this.DW
    };
    zc.prototype.tb = function() {
        return this.params
    };
    zc.prototype.LW = function() {
        return this.methods
    };
    zc.prototype.ua = function() {
        return this.ya
    };
    var Ac = function(a, c) {
            a.qy || ((c = c && !_.V.yf[c] && _.V.XR[c]) ? (a.kz = [], c(function() {
                a.qy = !0;
                for (var c = 0, g = a.kz.length; c < g; ++c) a.kz[c].call(a)
            })) : a.qy = !0)
        },
        Bc = function(a, c) {
            a.qy ? c.call(a) : a.kz.push(c)
        };
    zc.prototype.zh = function(a, c) {
        Bc(this, function() {
            Dc(this, a, c)
        })
    };
    var Dc = function(a, c, f) {
        a.Aq[c] = a.Aq[c] || [];
        a.Aq[c].push(f)
    };
    zc.prototype.Ub = function(a, c) {
        Bc(this, function() {
            var f = this.Aq[a];
            if (f)
                for (var g = 0, h = f.length; g < h; ++g)
                    if (f[g] === c) {
                        f.splice(g, 1);
                        break
                    }
        })
    };
    zc.prototype.Pb = function(a) {
        var c = this.Aq[a];
        if (c)
            for (var f = Array.prototype.slice.call(arguments, 1), g = 0, h = c.length; g < h; ++g) try {
                var l = c[g].apply({}, f)
            } catch (n) {
                _.sa(['Exception when calling callback "', a, '" with exception "', n.name, ": ", n.message, '".'].join("")), bG(n)
            }
        return l
    };
    var Ec = function(a) {
            return "number" == typeof a ? {
                value: a,
                od: a + "px"
            } : "100%" == a ? {
                value: 100,
                od: "100%",
                Ul: !0
            } : null
        },
        Gc = function(a, c, f, g, h, l, n) {
            zc.call(this, a, c, f, g, Hc, h, l, n);
            this.id = c.id || gc();
            this.J2 = c.rpctoken && String(c.rpctoken) || Math.round(1E9 * (0, _.Vb)());
            this.Qfa = eo(this.params, this.config);
            this.Cz = {};
            Bc(this, function() {
                this.Pb("open");
                _.sc(this.Cz, this)
            })
        };
    yc(Gc);
    _.k = Gc.prototype;
    _.k.Pa = function(a, c) {
        if (!this.config.url) return _.sa("Cannot open iframe, empty URL."), this;
        var f = this.id;
        _.V.Uc[f] = this;
        var g = _.sc(this.methods);
        g._ready = this.Jg;
        g._close = this.close;
        g._open = this.T4;
        g._resizeMe = this.w0;
        g._renderstart = this.PA;
        var h = this.Qfa;
        this.J2 && (h.rpctoken = this.J2);
        h._methods = _.tc(g, f, "", this, !0);
        this.T3 = a = "string" === typeof a ? window.document.getElementById(a) : a;
        g = {};
        g.id = f;
        if (c) {
            g.attributes = c;
            var l = c.style;
            if ("string" === typeof l) {
                if (l) {
                    var n = [];
                    l = l.split(";");
                    for (var q = 0, t = l.length; q <
                        t; ++q) {
                        var v = l[q];
                        if (0 != v.length || q + 1 != t) v = v.split(":"), 2 == v.length && v[0].match(/^[ a-zA-Z_-]+$/) && v[1].match(/^[ +.%0-9a-zA-Z_-]+$/) ? n.push(v.join(":")) : _.sa(['Iframe style "', l[q], '" not allowed.'].join(""))
                    }
                    n = n.join(";")
                } else n = "";
                c.style = n
            }
        }
        this.va().allowPost && (g.allowPost = !0);
        this.va().forcePost && (g.forcePost = !0);
        g.queryParams = this.params;
        g.fragmentParams = h;
        g.paramsSerializer = ic;
        this.jJ = _.tb(this.config.url, a, g);
        a = this.jJ.getAttribute("data-postorigin") || this.jJ.src;
        _.V.Uc[f] = this;
        _.T.Wg(this.id,
            this.J2);
        _.T.Xg(this.id, a);
        return this
    };
    _.k.fg = function(a, c) {
        this.Cz[a] = c
    };
    _.k.Hh = function() {
        return this.id
    };
    _.k.rb = function() {
        return this.jJ
    };
    _.k.V = function() {
        return this.T3
    };
    _.k.qc = function(a) {
        this.T3 = a
    };
    _.k.Jg = function(a) {
        var c = uc(a, this.id, "");
        this.ya && "function" == typeof this.methods._ready && (a._methods = _.tc(c, this.ya.Hh(), this.id, this, !1), this.methods._ready(a));
        _.sc(a, this);
        _.sc(c, this);
        this.Pb("ready", a)
    };
    _.k.PA = function(a) {
        this.Pb("renderstart", a)
    };
    _.k.close = function(a) {
        a = this.Pb("close", a);
        delete _.V.Uc[this.id];
        return a
    };
    _.k.remove = function() {
        var a = window.document.getElementById(this.id);
        a && a.parentNode && a.parentNode.removeChild(a)
    };
    _.k.T4 = function(a) {
        var c = uc(a.params, this.id, a.proxyId);
        delete a.params._methods;
        "_parent" == a.openParams.anchor && (a.openParams.anchor = this.T3);
        if (vc(a.openParams)) new Ic(a.url, a.openParams, a.params, c, c._onclose, this, a.openedByProxyChain);
        else {
            var f = new Gc(a.url, a.openParams, a.params, c, c._onclose, this, a.openedByProxyChain),
                g = this;
            Bc(f, function() {
                var a = {
                        childId: f.Hh()
                    },
                    l = f.Cz;
                l._toclose = f.close;
                a._methods = _.tc(l, g.id, f.id, f, !1);
                c._onopen(a)
            })
        }
    };
    _.k.w0 = function(a) {
        if (void 0 === this.Pb("resize", a) && this.jJ) {
            var c = Ec(a.width);
            null != c && (this.jJ.style.width = c.od);
            a = Ec(a.height);
            null != a && (this.jJ.style.height = a.od);
            this.jJ.parentElement && (null != c && c.Ul || null != a && a.Ul) && (this.jJ.parentElement.style.display = "block")
        }
    };
    var Ic = function(a, c, f, g, h, l, n) {
        zc.call(this, a, c, f, g, Jc, h, l, n);
        this.url = a;
        this.o_ = null;
        this.xA = gc();
        Bc(this, function() {
            this.Pb("beforeparentopen");
            var a = _.sc(this.methods);
            a._onopen = this.UK;
            a._ready = this.Jg;
            a._onclose = this.TK;
            this.params._methods = _.tc(a, "..", this.xA, this, !0);
            a = {};
            for (f in this.params) a[f] = ic(this.params[f]);
            var c = this.config.url;
            if (this.DW.hideUrlFromParent) {
                var f = window.name;
                var g = c;
                c = _.yg(this.config.url, this.params, {}, ic);
                var h = a;
                a = {};
                a._methods = h._methods;
                a["#opener"] = h["#opener"];
                a["#urlindex"] = h["#urlindex"];
                a["#opener"] && void 0 != h["#urlindex"] ? (a["#opener"] = f + "," + a["#opener"], f = g) : (g = _.Ka(_.bb, "fUrl", []), h = g.length, g[h] = c, _.bb.rUrl = ec, a["#opener"] = f, a["#urlindex"] = h, f = _.Rb.Pq(_.ta.location.href), c = _.P("iframes/relay_url_" + (0, window.encodeURIComponent)(f)) || "/_/gapi/sibling/1/frame.html", f += c);
                c = f
            }
            _.Sb._open({
                url: c,
                openParams: this.DW,
                params: a,
                proxyId: this.xA,
                openedByProxyChain: this.dj
            })
        })
    };
    yc(Ic);
    Ic.prototype.lfa = function() {
        return this.o_
    };
    Ic.prototype.UK = function(a) {
        this.o_ = a.childId;
        var c = uc(a, "..", this.o_);
        _.sc(c, this);
        this.close = c._toclose;
        _.V.Uc[this.o_] = this;
        this.ya && this.methods._onopen && (a._methods = _.tc(c, this.ya.Hh(), this.o_, this, !1), this.methods._onopen(a))
    };
    Ic.prototype.Jg = function(a) {
        var c = String(this.o_),
            f = uc(a, "..", c);
        _.sc(a, this);
        _.sc(f, this);
        this.Pb("ready", a);
        this.ya && this.methods._ready && (a._methods = _.tc(f, this.ya.Hh(), c, this, !1), this.methods._ready(a))
    };
    Ic.prototype.TK = function(a) {
        if (this.ya && this.methods._onclose) this.methods._onclose(a);
        else return a = this.Pb("close", a), delete _.V.Uc[this.o_], a
    };
    var Kc = function(a, c, f, g, h, l, n) {
        zc.call(this, a, c, f, g, Jc, l, n);
        this.id = c.id || gc();
        this.oia = h;
        g._close = this.close;
        this.onClosed = this.Cba;
        this.DF = 0;
        Bc(this, function() {
            this.Pb("beforeparentopen");
            var c = _.sc(this.methods);
            this.params._methods = _.tc(c, "..", this.xA, this, !0);
            c = {};
            c.queryParams = this.params;
            a = _.qa(_.ua, this.config.url, this.id, c);
            var f = h.openWindow(a);
            this.canAutoClose = function(a) {
                a(h.jj(f))
            };
            h.Tm(f, this);
            this.DF = f
        })
    };
    yc(Kc);
    Kc.prototype.close = function(a) {
        a = this.Pb("close", a);
        this.oia.rk(this.DF);
        return a
    };
    Kc.prototype.Cba = function() {
        this.Pb("close")
    };
    (function() {
        _.V.Uc = {};
        _.V.yf = {};
        _.V.XR = {};
        _.V.Kl = 0;
        _.V.Rg = {};
        _.V.uW = {};
        _.V.Ng = null;
        _.V.Mg = [];
        _.V.Lr = function(a) {
            var c = !1;
            try {
                if (null != a) {
                    var f = window.parent.frames[a.id];
                    c = f.iframer.id == a.id && f.iframes.openedId_(_.Sb.id)
                }
            } catch (l) {}
            try {
                _.V.Ng = {
                    origin: this.origin,
                    referer: this.referer,
                    claimedOpenerId: a && a.id,
                    claimedOpenerProxyChain: a && a.proxyChain || [],
                    sameOrigin: c
                };
                for (a = 0; a < _.V.Mg.length; ++a) _.V.Mg[a](_.V.Ng);
                _.V.Mg = []
            } catch (l) {
                bG(l)
            }
        };
        _.V.UI = function(a) {
            var c = a && a.ya,
                f = null;
            c && (f = {}, f.id = c.Hh(), f.proxyChain =
                a.dj);
            return f
        };
        iH();
        if (window.parent != window) {
            var a = _.R.Qc();
            a.gcv && oc(a.gcv);
            var c = a.jsh;
            c && qc(c);
            _.sc(uc(a, "..", ""), _.Sb);
            _.sc(a, _.Sb);
            ac()
        }
        _.V.Cr = Mc;
        _.V.Mo = Nc;
        _.V.xs = Qc;
        _.V.resize = Oc;
        _.V.Rp = function(a) {
            return _.V.XR[a]
        };
        _.V.qj = function(a, c) {
            _.V.XR[a] = c
        };
        _.V.rD = Oc;
        _.V.Ds = Qc;
        _.V.ng = {};
        _.V.ng.get = Mc;
        _.V.ng.set = Nc;
        _.V.Zo = function(a, c) {
            Zb(a);
            _.V.uW[a] = c || window[a]
        };
        _.V.Mt = function(a) {
            delete _.V.uW[a]
        };
        _.V.open = function(a, c, h, l, n, q) {
            3 == arguments.length ? l = {} : 4 == arguments.length && "function" === typeof l &&
                (n = l, l = {});
            var f = "bubble" === c.style && Pc ? Pc.ma() : null;
            return f ? new Kc(a, c, h, l, f, n, q) : vc(c) ? new Ic(a, c, h, l, n, q) : new Gc(a, c, h, l, n, q)
        };
        _.V.close = function(a, c) {
            _.Sb && _.Sb._close && _.Sb._close(a, c)
        };
        _.V.ready = function(a, c, h) {
            2 == arguments.length && "function" === typeof c && (h = c, c = {});
            var f = a || {};
            "height" in f || (f.height = _.Ob.Cd());
            f._methods = _.tc(c || {}, "..", "", _.Sb, !0);
            _.Sb && _.Sb._ready && _.Sb._ready(f, h)
        };
        _.V.Pk = function(a) {
            _.V.Ng ? a(_.V.Ng) : _.V.Mg.push(a)
        };
        _.V.Ir = function(a) {
            return !!_.V.Uc[a]
        };
        _.V.Vp = function() {
            return ["https://ssl.gstatic.com/gb/js/",
                _.P("googleapis.config/gcv")
            ].join("")
        };
        _.V.Qr = function(a) {
            var c = {
                mouseover: 1,
                mouseout: 1
            };
            if (_.Sb._event)
                for (var f = 0; f < a.length; f++) {
                    var l = a[f];
                    l in c && _.R.Ee(window.document, l, function(a) {
                        _.Sb._event({
                            event: a.type,
                            timestamp: (new Date).getTime()
                        })
                    }, !0)
                }
        };
        _.V.zs = qc;
        _.V.NT = hG;
        _.V.kr = bG;
        _.V.dE = _.Sb
    })();
    _.Mu("iframes.allow", _.V.Zo);
    _.Mu("iframes.callSiblingOpener", _.V.ip);
    _.Mu("iframes.registerForOpenedSibling", _.V.Sr);
    _.Mu("iframes.close", _.V.close);
    _.Mu("iframes.getGoogleConnectJsUri", _.V.Vp);
    _.Mu("iframes.getHandler", _.V.Cr);
    _.Mu("iframes.getDeferredHandler", _.V.Rp);
    _.Mu("iframes.getParentInfo", _.V.Pk);
    _.Mu("iframes.iframer", _.V.dE);
    _.Mu("iframes.open", _.V.open);
    _.Mu("iframes.openedId_", _.V.Ir);
    _.Mu("iframes.propagate", _.V.Qr);
    _.Mu("iframes.ready", _.V.ready);
    _.Mu("iframes.resize", _.V.resize);
    _.Mu("iframes.setGoogleConnectJsVersion", _.V.xs);
    _.Mu("iframes.setBootstrapHint", _.V.NT);
    _.Mu("iframes.setJsHint", _.V.zs);
    _.Mu("iframes.setHandler", _.V.Mo);
    _.Mu("iframes.setDeferredHandler", _.V.qj);
    _.Mu("IframeBase", zc);
    _.Mu("IframeBase.prototype.addCallback", zc.prototype.zh);
    _.Mu("IframeBase.prototype.getMethods", zc.prototype.LW);
    _.Mu("IframeBase.prototype.getOpenerIframe", zc.prototype.ua);
    _.Mu("IframeBase.prototype.getOpenParams", zc.prototype.va);
    _.Mu("IframeBase.prototype.getParams", zc.prototype.tb);
    _.Mu("IframeBase.prototype.removeCallback", zc.prototype.Ub);
    _.Mu("Iframe", Gc);
    _.Mu("Iframe.prototype.close", Gc.prototype.close);
    _.Mu("Iframe.prototype.exposeMethod", Gc.prototype.fg);
    _.Mu("Iframe.prototype.getId", Gc.prototype.Hh);
    _.Mu("Iframe.prototype.getIframeEl", Gc.prototype.rb);
    _.Mu("Iframe.prototype.getSiteEl", Gc.prototype.V);
    _.Mu("Iframe.prototype.openInto", Gc.prototype.Pa);
    _.Mu("Iframe.prototype.remove", Gc.prototype.remove);
    _.Mu("Iframe.prototype.setSiteEl", Gc.prototype.qc);
    _.Mu("Iframe.prototype.addCallback", Gc.prototype.zh);
    _.Mu("Iframe.prototype.getMethods", Gc.prototype.LW);
    _.Mu("Iframe.prototype.getOpenerIframe", Gc.prototype.ua);
    _.Mu("Iframe.prototype.getOpenParams", Gc.prototype.va);
    _.Mu("Iframe.prototype.getParams", Gc.prototype.tb);
    _.Mu("Iframe.prototype.removeCallback", Gc.prototype.Ub);
    _.Mu("IframeProxy", Ic);
    _.Mu("IframeProxy.prototype.getTargetIframeId", Ic.prototype.lfa);
    _.Mu("IframeProxy.prototype.addCallback", Ic.prototype.zh);
    _.Mu("IframeProxy.prototype.getMethods", Ic.prototype.LW);
    _.Mu("IframeProxy.prototype.getOpenerIframe", Ic.prototype.ua);
    _.Mu("IframeProxy.prototype.getOpenParams", Ic.prototype.va);
    _.Mu("IframeProxy.prototype.getParams", Ic.prototype.tb);
    _.Mu("IframeProxy.prototype.removeCallback", Ic.prototype.Ub);
    _.Mu("IframeWindow", Kc);
    _.Mu("IframeWindow.prototype.close", Kc.prototype.close);
    _.Mu("IframeWindow.prototype.onClosed", Kc.prototype.Cba);
    _.Mu("iframes.util.getTopMostAccessibleWindow", _.V.Kh.Uk);
    _.Mu("iframes.handlers.get", _.V.ng.get);
    _.Mu("iframes.handlers.set", _.V.ng.set);
    _.Mu("iframes.resizeMe", _.V.rD);
    _.Mu("iframes.setVersionOverride", _.V.Ds);
    zc.prototype.send = function(a, c, f) {
        _.V.Gr(this, a, c, f)
    };
    _.Sb.send = function(a, c, f) {
        _.V.Gr(_.Sb, a, c, f)
    };
    zc.prototype.register = function(a, c) {
        var f = this;
        f.zh(a, function(a) {
            c.call(f, a)
        })
    };
    _.V.Gr = function(a, c, f, g) {
        var h = [];
        void 0 !== f && h.push(f);
        g && h.push(function(a) {
            g.call(this, [a])
        });
        a[c] && a[c].apply(a, h)
    };
    _.V.Fa = function() {
        return !0
    };
    _.Mu("iframes.CROSS_ORIGIN_IFRAMES_FILTER", _.V.Fa);
    _.Mu("IframeBase.prototype.send", zc.prototype.send);
    _.Mu("IframeBase.prototype.register", zc.prototype.register);
    _.Mu("Iframe.prototype.send", Gc.prototype.send);
    _.Mu("Iframe.prototype.register", Gc.prototype.register);
    _.Mu("IframeProxy.prototype.send", Ic.prototype.send);
    _.Mu("IframeProxy.prototype.register", Ic.prototype.register);
    _.Mu("IframeWindow.prototype.send", Kc.prototype.send);
    _.Mu("IframeWindow.prototype.register", Kc.prototype.register);
    _.Mu("iframes.iframer.send", _.V.dE.send);

    var WW = _.V.Mo,
        kX = {
            open: function(a) {
                var c = _.bf(a.va());
                return a.Pa(c, {
                    style: _.gf(c)
                })
            },
            attach: function(a, c) {
                var f = _.bf(a.va()),
                    g = c.id,
                    h = c.getAttribute("data-postorigin") || c.src,
                    l = /#(?:.*&)?rpctoken=(\d+)/.exec(h);
                l = l && l[1];
                a.id = g;
                a.J2 = l;
                a.T3 = f;
                a.jJ = c;
                _.V.Uc[g] = a;
                c = _.sc(a.methods);
                c._ready = a.Jg;
                c._close = a.close;
                c._open = a.T4;
                c._resizeMe = a.w0;
                c._renderstart = a.PA;
                _.tc(c, g, "", a, !0);
                _.T.Wg(a.id, a.J2);
                _.T.Xg(a.id, h);
                f = _.V.Wp({
                    style: _.gf(f)
                });
                for (var n in f) Object.prototype.hasOwnProperty.call(f, n) && ("style" == n ? a.jJ.style.cssText = f[n] : a.jJ.setAttribute(n, f[n]))
            }
        };
    kX.onready = _.hf;
    kX.onRenderStart = _.hf;
    kX.close = _.jf;
    WW("inline", kX);

    _.V.qj("bubble", function(a) {
        (0, _.At)("iframes-styles-bubble", a)
    });
    _.V.qj("slide-menu", function(a) {
        (0, _.At)("iframes-styles-slide-menu", a)
    });
    var dd = {
            tall: {
                "true": {
                    width: 50,
                    height: 60
                },
                "false": {
                    width: 50,
                    height: 24
                }
            },
            small: {
                "false": {
                    width: 24,
                    height: 15
                },
                "true": {
                    width: 70,
                    height: 15
                }
            },
            medium: {
                "false": {
                    width: 32,
                    height: 20
                },
                "true": {
                    width: 90,
                    height: 20
                }
            },
            standard: {
                "false": {
                    width: 38,
                    height: 24
                },
                "true": {
                    width: 106,
                    height: 24
                }
            }
        },
        cd = function(a) {
            return "string" == typeof a && dd[a.toLowerCase()] ? a.toLowerCase() : "standard"
        },
        $c = function(a) {
            return "string" == typeof a ? "" != a && "0" != a && "false" != a.toLowerCase() : !!a
        },
        ed = function(a, c) {
            return "tall" == cd(c) ? "true" : null == a || $c(a) ?
                "true" : "false"
        },
        bd = function(a) {
            if ($c(a)) return "true"
        },
        ad = function(a) {
            var c = (0, window.parseInt)(a, 10);
            if (c == a) return String(c)
        },
        xv = {
            width: 180,
            height: 35
        },
        hd = {
            href: [_.Zc, "url"],
            width: [ad],
            size: [cd],
            resize: [bd],
            autosize: [bd],
            count: [function(a, c) {
                return ed(c.count, c.size)
            }],
            db: [_.fd],
            ecp: [_.gd],
            textcolor: [function(a) {
                if ("string" == typeof a && a.match(/^[0-9A-F]{6}$/i)) return a
            }],
            drm: [bd],
            recommendations: [],
            fu: [],
            ad: [bd],
            cr: [ad],
            ag: [ad],
            "fr-ai": [],
            "fr-sigh": []
        },
        wv = function(a, c, f) {
            a = _.pd(a);
            c = cd(c);
            if ("" !=
                a) {
                if ("inline" == a || "only" == a) return a = 450, f.width && (a = 120 < f.width ? f.width : 120), {
                    width: a,
                    height: dd[c]["false"].height
                };
                if ("bubble" != a) {
                    if ("none" == a) return dd[c]["false"];
                    if ("pp" == a) return xv
                }
            }
            return dd[c]["true"]
        },
        gO = function(a, c) {
            return dd[cd(a)][ed(c, a)]
        };
    (function() {
        var a = {
                0: "plusone"
            },
            c = _.P("iframes/plusone/preloadUrl");
        c && (a[7] = c);
        _.td(hd);
        a[1] = hd;
        a[2] = {
            width: [function(a, c) {
                return c.annotation ? wv(c.annotation, c.size, c).width : gO(c.size, c.count).width
            }],
            height: [function(a, c) {
                return c.annotation ? wv(c.annotation, c.size, c).height : gO(c.size, c.count).height
            }]
        };
        a[3] = {
            onPlusOne: {
                Kg: function(a) {
                    return "on" == a.state ? "+1" : null
                },
                Qh: "callback"
            },
            onstartinteraction: !0,
            onendinteraction: !0,
            onpopup: !0
        };
        a[4] = ["div", "button"];
        a = _.iC(a);
        _.qG = a.go;
        _.pG = a.S
    })();

});
// Google Inc.

//# sourceURL=https://apis.google.com/_/scs/apps-static/_/js/k=oz.gapi.en_US.Sud46g7fpok.O/m=comments,plusone/rt=j/sv=1/d=1/ed=1/am=AQ/rs=AGLTcCPFHl1IXu74XbQbHUsfyt4sb1K7BQ/cb=gapi.loaded_0
                                    

#47 JavaScript::Eval (size: 63250, repeated: 1) - SHA256: bf93633bda3468eaa4499b8b1970e65705b3d043ec5856c815346d108acd6f4b

                                        /* JS */
gapi.loaded_1(function(_) {
    var window = this;
    _.Hb = {};
    _.RF = function(a, c) {
        _.Hb[c || "token"] = a
    };
    _.Kb = function(a) {
        delete _.Hb[a || "token"]
    };
    var LC, MC;
    _.Vj = function(a, c) {
        this.ig = a;
        a = c || {};
        this.wga = Number(a.maxAge) || 0;
        this.Ix = a.domain;
        this.iW = a.path;
        this.Kha = !!a.secure
    };
    LC = /^[-+/_=.:|%&a-zA-Z0-9@]*$/;
    MC = /^[A-Z_][A-Z0-9_]{0,63}$/;
    _.Vj.prototype.read = function() {
        for (var a = this.ig + "=", c = window.document.cookie.split(/;\s*/), f = 0; f < c.length; ++f) {
            var g = c[f];
            if (0 == g.indexOf(a)) return g.substr(a.length)
        }
    };
    _.Vj.prototype.write = function(a, c) {
        if (!MC.test(this.ig)) throw "Invalid cookie name";
        if (!LC.test(a)) throw "Invalid cookie value";
        a = this.ig + "=" + a;
        this.Ix && (a += ";domain=" + this.Ix);
        this.iW && (a += ";path=" + this.iW);
        c = "number" === typeof c ? c : this.wga;
        if (0 <= c) {
            var f = new Date;
            f.setSeconds(f.getSeconds() + c);
            a += ";expires=" + f.toUTCString()
        }
        this.Kha && (a += ";secure");
        window.document.cookie = a;
        return !0
    };
    _.Vj.prototype.clear = function() {
        this.write("", 0)
    };
    _.Vj.iterate = function(a) {
        for (var c = window.document.cookie.split(/;\s*/), f = 0; f < c.length; ++f) {
            var g = c[f].split("="),
                h = g.shift();
            a(h, g.join("="))
        }
    };
    var Ok;
    _.dk = function(a) {
        this.SS = a
    };
    Ok = {};
    _.dk.prototype.read = function() {
        if (Ok.hasOwnProperty(this.SS)) return Ok[this.SS]
    };
    _.dk.prototype.write = function(a) {
        Ok[this.SS] = a;
        return !0
    };
    _.dk.prototype.clear = function() {
        delete Ok[this.SS]
    };
    _.dk.iterate = function(a) {
        for (var c in Ok) Ok.hasOwnProperty(c) && a(c, Ok[c])
    };
    var aw, us;
    aw = function() {
        this.Ab = null;
        this.key = function() {
            return null
        };
        this.getItem = function() {
            return this.Ab
        };
        this.setItem = function(a, c) {
            this.Ab = c;
            this.length = 1
        };
        this.removeItem = function() {
            this.clear()
        };
        this.clear = function() {
            this.Ab = null;
            this.length = 0
        };
        this.length = 0
    };
    us = function(a) {
        try {
            var c = a || window.sessionStorage;
            if (!c) return !1;
            c.setItem("gapi.sessionStorageTest", "gapi.sessionStorageTest" + c.length);
            c.removeItem("gapi.sessionStorageTest");
            return !0
        } catch (f) {
            return !1
        }
    };
    _.fk = function(a, c) {
        this.ig = a;
        this.L9 = us(c) ? c || window.sessionStorage : new aw
    };
    _.fk.prototype.read = function() {
        return this.L9.getItem(this.ig)
    };
    _.fk.prototype.write = function(a) {
        try {
            this.L9.setItem(this.ig, a)
        } catch (c) {
            return !1
        }
        return !0
    };
    _.fk.prototype.clear = function() {
        this.L9.removeItem(this.ig)
    };
    _.fk.iterate = function(a) {
        if (us())
            for (var c = 0, f = window.sessionStorage.length; c < f; ++c) {
                var g = window.sessionStorage.key(c);
                a(g, window.sessionStorage[g])
            }
    };
    for (var au = 0; 64 > au; ++au);
    _.rc = "https:" === window.location.protocol;
    _.dj = _.rc || "http:" === window.location.protocol ? _.Vj : _.dk;
    _.jj = function(a) {
        var c = a.substr(1),
            f = "",
            g = window.location.hostname;
        if ("" !== c) {
            f = (0, window.parseInt)(c, 10);
            if ((0, window.isNaN)(f)) return null;
            c = g.split(".");
            if (c.length < f - 1) return null;
            c.length == f - 1 && (g = "." + g)
        } else g = "";
        return {
            Gb: "S" == a.charAt(0),
            domain: g,
            Ke: f
        }
    };
    _.wj = function(a) {
        if (0 !== a.indexOf("GCSC")) return null;
        var c = {
            uf: !1
        };
        a = a.substr(4);
        if (!a) return c;
        var f = a.charAt(0);
        a = a.substr(1);
        var g = a.lastIndexOf("_");
        if (-1 == g) return c;
        var h = _.jj(a.substr(g + 1));
        if (null == h) return c;
        a = a.substring(0, g);
        if ("_" !== a.charAt(0)) return c;
        g = "E" === f && h.Gb;
        return !g && ("U" !== f || h.Gb) || g && !_.rc ? c : {
            uf: !0,
            Gb: g,
            ep: a.substr(1),
            domain: h.domain,
            Ke: h.Ke
        }
    };
    var ak;
    _.Bj = _.r();
    _.Oj = _.r();
    _.Pj = _.r();
    _.Tj = _.r();
    ak = "state code cookie_policy g_user_cookie_policy authuser prompt g-oauth-window status".split(" ");
    _.bk = function(a) {
        this.D8 = a;
        this.Z7 = null
    };
    _.bk.prototype.write = function(a) {
        var c = _.r(),
            f = _.r();
        for (g in a) _.Qa(a, g) && (f[g] = a[g], c[g] = a[g]);
        var g = 0;
        for (var h = ak.length; g < h; ++g) delete f[ak[g]];
        a = String(a.authuser || 0);
        g = _.r();
        g[a] = _.R.Qc("#" + _.ck(f));
        this.D8.write((0, _.mf)(g));
        this.Z7 = c
    };
    _.bk.prototype.read = function() {
        return this.Z7
    };
    _.bk.prototype.clear = function() {
        this.D8.clear();
        this.Z7 = _.r()
    };
    _.hk = function(a) {
        return a ? {
            domain: a.domain,
            path: "/",
            secure: a.Gb
        } : null
    };
    _.ck = function(a) {
        var c = "";
        if (!a) return c;
        for (var f in a)
            if ({}.hasOwnProperty.call(a, f)) {
                var g = a[f];
                if (null != g) {
                    var h = [(0, window.encodeURIComponent)(f), "="];
                    if (g instanceof Array) {
                        for (var l = [], n = 0; n < g.length; n++) l.push((0, window.encodeURIComponent)(g[n]));
                        h.push(l.join("+"))
                    } else h.push((0, window.encodeURIComponent)(g));
                    g = h.join("")
                } else g = "";
                g && (c && (c += "&"), c += g)
            }
        return c
    };
    _.fk.iterate(function(a) {
        var c = _.wj(a);
        c && c.uf && (_.Bj[a] = new _.bk(new _.fk(a)))
    });
    _.dj.iterate(function(a) {
        _.Bj[a] && (_.Oj[a] = new _.dj(a, _.hk(_.wj(a))))
    });

    _.Xj = window.googleapis && window.googleapis.server || {};
    _.Yj = function() {
        var a = /\s*;\s*/;
        return {get: function(c, f) {
                c += "=";
                for (var g = (window.document.cookie || "").split(a), h = 0, l; l = g[h]; ++h)
                    if (0 == l.indexOf(c)) return l.substr(c.length);
                return f
            }
        }
    }();
    var dp;
    _.bp = function(a) {
        this.wc = a || {
            cookie: ""
        }
    };
    _.k = _.bp.prototype;
    _.k.isEnabled = function() {
        return window.navigator.cookieEnabled
    };
    _.k.set = function(a, c, f, g, h, l) {
        if (/[;=\s]/.test(a)) throw Error("O`" + a);
        if (/[;\r\n]/.test(c)) throw Error("aa`" + c);
        _.kf(f) || (f = -1);
        h = h ? ";domain=" + h : "";
        g = g ? ";path=" + g : "";
        l = l ? ";secure" : "";
        f = 0 > f ? "" : 0 == f ? ";expires=" + (new Date(1970, 1, 1)).toUTCString() : ";expires=" + (new Date((0, _.pa)() + 1E3 * f)).toUTCString();
        this.wc.cookie = a + "=" + c + h + g + f + l
    };
    _.k.get = function(a, c) {
        for (var f = a + "=", g = (this.wc.cookie || "").split(";"), h = 0, l; h < g.length; h++) {
            l = (0, _.Ge)(g[h]);
            if (0 == l.lastIndexOf(f, 0)) return l.substr(f.length);
            if (l == a) return ""
        }
        return c
    };
    _.k.remove = function(a, c, f) {
        var g = this.YR(a);
        this.set(a, "", 0, c, f);
        return g
    };
    _.k.$b = function() {
        return dp(this).keys
    };
    _.k.Va = function() {
        return dp(this).values
    };
    _.k.isEmpty = function() {
        return !this.wc.cookie
    };
    _.k.Da = function() {
        return this.wc.cookie ? (this.wc.cookie || "").split(";").length : 0
    };
    _.k.YR = function(a) {
        return _.kf(this.get(a))
    };
    _.k.zn = function(a) {
        for (var c = dp(this).values, f = 0; f < c.length; f++)
            if (c[f] == a) return !0;
        return !1
    };
    _.k.clear = function() {
        for (var a = dp(this).keys, c = a.length - 1; 0 <= c; c--) this.remove(a[c])
    };
    dp = function(a) {
        a = (a.wc.cookie || "").split(";");
        for (var c = [], f = [], g, h, l = 0; l < a.length; l++) h = (0, _.Ge)(a[l]), g = h.indexOf("="), -1 == g ? (c.push(""), f.push(h)) : (c.push(h.substring(0, g)), f.push(h.substring(g + 1)));
        return {
            keys: c,
            values: f
        }
    };
    _.hp = new _.bp("undefined" == typeof window.document ? null : window.document);
    _.hp.Lia = 3950;

    var Wi, Ck, Ip;
    _.Hp = function() {
        function a() {
            h[0] = 1732584193;
            h[1] = 4023233417;
            h[2] = 2562383102;
            h[3] = 271733878;
            h[4] = 3285377520;
            w = v = 0
        }

        function c(a) {
            for (var c = n, f = 0; 64 > f; f += 4) c[f / 4] = a[f] << 24 | a[f + 1] << 16 | a[f + 2] << 8 | a[f + 3];
            for (f = 16; 80 > f; f++) a = c[f - 3] ^ c[f - 8] ^ c[f - 14] ^ c[f - 16], c[f] = (a << 1 | a >>> 31) & 4294967295;
            a = h[0];
            var g = h[1],
                l = h[2],
                q = h[3],
                t = h[4];
            for (f = 0; 80 > f; f++) {
                if (40 > f)
                    if (20 > f) {
                        var v = q ^ g & (l ^ q);
                        var w = 1518500249
                    } else v = g ^ l ^ q, w = 1859775393;
                else 60 > f ? (v = g & l | q & (g | l), w = 2400959708) : (v = g ^ l ^ q, w = 3395469782);
                v = ((a << 5 | a >>> 27) & 4294967295) +
                    v + t + w + c[f] & 4294967295;
                t = q;
                q = l;
                l = (g << 30 | g >>> 2) & 4294967295;
                g = a;
                a = v
            }
            h[0] = h[0] + a & 4294967295;
            h[1] = h[1] + g & 4294967295;
            h[2] = h[2] + l & 4294967295;
            h[3] = h[3] + q & 4294967295;
            h[4] = h[4] + t & 4294967295
        }

        function f(a, f) {
            if ("string" === typeof a) {
                a = (0, window.unescape)((0, window.encodeURIComponent)(a));
                for (var g = [], h = 0, n = a.length; h < n; ++h) g.push(a.charCodeAt(h));
                a = g
            }
            f || (f = a.length);
            g = 0;
            if (0 == v)
                for (; g + 64 < f;) c(a.slice(g, g + 64)), g += 64, w += 64;
            for (; g < f;)
                if (l[v++] = a[g++], w++, 64 == v)
                    for (v = 0, c(l); g + 64 < f;) c(a.slice(g, g + 64)), g += 64, w += 64
        }

        function g() {
            var a = [],
                g = 8 * w;
            56 > v ? f(q, 56 - v) : f(q, 64 - (v - 56));
            for (var n = 63; 56 <= n; n--) l[n] = g & 255, g >>>= 8;
            c(l);
            for (n = g = 0; 5 > n; n++)
                for (var t = 24; 0 <= t; t -= 8) a[g++] = h[n] >> t & 255;
            return a
        }
        for (var h = [], l = [], n = [], q = [128], t = 1; 64 > t; ++t) q[t] = 0;
        var v, w;
        a();
        return {
            reset: a,
            update: f,
            digest: g,
            Of: function() {
                for (var a = g(), c = "", f = 0; f < a.length; f++) c += "0123456789ABCDEF".charAt(Math.floor(a[f] / 16)) + "0123456789ABCDEF".charAt(a[f] % 16);
                return c
            }
        }
    };
    Wi = function(a) {
        var c = _.Hp();
        c.update(a);
        return c.Of().toLowerCase()
    };
    Ck = function(a, c, f) {
        var g = [],
            h = [];
        if (1 == (_.ea(f) ? 2 : 1)) return h = [c, a], (0, _.Be)(g, function(a) {
            h.push(a)
        }), Wi(h.join(" "));
        var l = [],
            n = [];
        (0, _.Be)(f, function(a) {
            n.push(a.key);
            l.push(a.value)
        });
        f = Math.floor((new Date).getTime() / 1E3);
        h = 0 == l.length ? [f, c, a] : [l.join(":"), f, c, a];
        (0, _.Be)(g, function(a) {
            h.push(a)
        });
        a = Wi(h.join(" "));
        a = [f, a];
        0 == n.length || a.push(n.join(""));
        return a.join("_")
    };
    Ip = function() {
        var a = _.D.__OVERRIDE_SID;
        null == a && (a = (new _.bp(window.document)).get("SID"));
        return !!a
    };
    _.lq = function(a) {
        var c = _.Vo(String(_.D.location.href));
        if (Ip()) {
            var f = 0 == c.indexOf("https:") || 0 == c.indexOf("chrome-extension:");
            c = f ? _.D.__SAPISID : _.D.__APISID;
            null == c && (c = (new _.bp(window.document)).get(f ? "SAPISID" : "APISID"));
            if (c) {
                f = f ? "SAPISIDHASH" : "APISIDHASH";
                var g = String(_.D.location.href);
                return g && c && f ? [f, Ck(_.Vo(g), c, a || null)].join(" ") : null
            }
        }
        return null
    };
    _.sE = function(a) {
        var c = {
            SAPISIDHASH: !0,
            APISIDHASH: !0
        };
        return a && (a.OriginToken || a.Authorization && c[String(a.Authorization).split(" ")[0]]) ? !0 : !1
    };
    _.Qj = {
        Nq: _.sE,
        er: Ip,
        bq: function() {
            var a = null;
            Ip() && (a = window.__PVT, null == a && (a = _.Yj.get("BEAT")));
            return a
        },
        Qe: _.lq
    };

    _.Pb.ft = function(a) {
        var c = [];
        if (1 < arguments.length)
            for (var f = 0, g; g = arguments[f]; ++f) c.push(g);
        else c = a;
        return function(a) {
            for (var f = 0; c[f]; ++f)
                if (a === c[f]) return !0;
            return !1
        }
    };
    _.Pb.Dt = function(a) {
        return function(c) {
            return a.test(c)
        }
    };
    _.Pb.Sn = function(a) {
        return "undefined" !== typeof a
    };
    _.Pb.yt = function(a) {
        return "string" === typeof a && 0 < a.length
    };
    _.Pb.DM = function(a) {
        return "boolean" === typeof a
    };
    _.Pb.rt = function(a) {
        return function(c) {
            for (var f in a)
                if (a.hasOwnProperty(f) && !(0, a[f])(c[f])) return !1;
            return !0
        }
    };

    _.R = _.R || {};
    (function() {
        function a(c) {
            var f = "";
            if (3 == c.nodeType || 4 == c.nodeType) f = c.nodeValue;
            else if (c.innerText) f = c.innerText;
            else if (c.innerHTML) f = c.innerHTML;
            else if (c.firstChild) {
                f = [];
                for (c = c.firstChild; c; c = c.nextSibling) f.push(a(c));
                f = f.join("")
            }
            return f
        }
        _.R.createElement = function(a) {
            if (!window.document.body || window.document.body.namespaceURI) try {
                var c = window.document.createElementNS("http://www.w3.org/1999/xhtml", a)
            } catch (g) {}
            return c || window.document.createElement(a)
        };
        _.R.Fh = function(a) {
            var c = _.R.createElement("iframe");
            try {
                var g = ["<", "iframe"],
                    h = a || {},
                    l;
                for (l in h) h.hasOwnProperty(l) && (g.push(" "), g.push(l), g.push('="'), g.push(_.R.Qf(h[l])), g.push('"'));
                g.push("></");
                g.push("iframe");
                g.push(">");
                var n = _.R.createElement(g.join(""));
                n && (!c || n.tagName == c.tagName && n.namespaceURI == c.namespaceURI) && (c = n)
            } catch (t) {}
            g = c;
            a = a || {};
            for (var q in a) a.hasOwnProperty(q) && (g[q] = a[q]);
            return c
        };
        _.R.Jk = function() {
            if (window.document.body) return window.document.body;
            try {
                var a = window.document.getElementsByTagNameNS("http://www.w3.org/1999/xhtml", "body");
                if (a && 1 == a.length) return a[0]
            } catch (f) {}
            return window.document.documentElement || window.document
        };
        _.R.Qt = function(c) {
            return a(c)
        }
    })();

    _.R = _.R || {};
    (function() {
        function a(a) {
            c = a["core.util"] || {}
        }
        var c = {},
            f = {};
        _.Pb && _.Pb.register("core.util", null, a);
        _.R.Nt = function(a) {
            return "undefined" === typeof c[a] ? null : c[a]
        };
        _.R.hasFeature = function(a) {
            return "undefined" !== typeof c[a]
        };
        _.R.Rt = function() {
            return f
        }
    })();

    var lo;
    _.fh = function(a, c) {
        a = a.split(".");
        c = c || _.D;
        for (var f; f = a.shift();)
            if (null != c[f]) c = c[f];
            else return null;
        return c
    };
    _.Og = function(a) {
        for (var c in a) return !1;
        return !0
    };
    lo = function(a, c) {
        for (var f in a)
            if (c.call(void 0, a[f], f, a)) return !0;
        return !1
    };
    _.dh = function() {
        this.Oj = this.Oj;
        this.XZ = this.XZ
    };
    _.dh.prototype.Oj = !1;
    _.dh.prototype.Ma = function() {
        return this.Oj
    };
    _.dh.prototype.U = function() {
        this.Oj || (this.Oj = !0, this.wj())
    };
    _.pD = function(a, c) {
        c = _.ma(_.eh, c);
        a.Oj ? _.kf(void 0) ? c.call(void 0) : c() : (a.XZ || (a.XZ = []), a.XZ.push(_.kf(void 0) ? (0, _.H)(c, void 0) : c))
    };
    _.dh.prototype.wj = function() {
        if (this.XZ)
            for (; this.XZ.length;) this.XZ.shift()()
    };
    _.eh = function(a) {
        a && "function" == typeof a.U && a.U()
    };
    _.mh = function(a, c) {
        this.type = a;
        this.currentTarget = this.target = c;
        this.defaultPrevented = this.Ad = !1;
        this.Tg = !0
    };
    _.mh.prototype.stopPropagation = function() {
        this.Ad = !0
    };
    _.mh.prototype.preventDefault = function() {
        this.defaultPrevented = !0;
        this.Tg = !1
    };
    var yh, Jh;
    _.Ih = !_.W || _.gq(9);
    yh = !_.W || _.gq(9);
    Jh = _.W && !_.sl("9");
    !_.ef || _.sl("528");
    _.df && _.sl("1.9b") || _.W && _.sl("8") || _.cf && _.sl("9.5") || _.ef && _.sl("528");
    _.df && !_.sl("8") || _.W && _.sl("9");
    var yn = function() {
        if (!_.D.addEventListener || !Object.defineProperty) return !1;
        var a = !1,
            c = Object.defineProperty({}, "passive", {get: function() {
                    a = !0
                }
            });
        _.D.addEventListener("test", _.gh, c);
        _.D.removeEventListener("test", _.gh, c);
        return a
    }();
    _.Ur = _.W ? "focusin" : "DOMFocusIn";
    _.as = _.W ? "focusout" : "DOMFocusOut";
    _.cs = _.ef ? "webkitTransitionEnd" : _.cf ? "otransitionend" : "transitionend";
    _.nh = function(a, c) {
        _.mh.call(this, a ? a.type : "");
        this.relatedTarget = this.currentTarget = this.target = null;
        this.button = this.screenY = this.screenX = this.clientY = this.clientX = this.offsetY = this.offsetX = 0;
        this.key = "";
        this.charCode = this.keyCode = 0;
        this.metaKey = this.shiftKey = this.altKey = this.ctrlKey = !1;
        this.state = null;
        this.TW = !1;
        this.fW = null;
        a && this.kc(a, c)
    };
    _.J(_.nh, _.mh);
    _.nh.prototype.kc = function(a, c) {
        var f = this.type = a.type,
            g = a.changedTouches ? a.changedTouches[0] : null;
        this.target = a.target || a.srcElement;
        this.currentTarget = c;
        (c = a.relatedTarget) ? _.df && (_.Eo(c, "nodeName") || (c = null)): "mouseover" == f ? c = a.fromElement : "mouseout" == f && (c = a.toElement);
        this.relatedTarget = c;
        null === g ? (this.offsetX = _.ef || void 0 !== a.offsetX ? a.offsetX : a.layerX, this.offsetY = _.ef || void 0 !== a.offsetY ? a.offsetY : a.layerY, this.clientX = void 0 !== a.clientX ? a.clientX : a.pageX, this.clientY = void 0 !== a.clientY ?
            a.clientY : a.pageY, this.screenX = a.screenX || 0, this.screenY = a.screenY || 0) : (this.clientX = void 0 !== g.clientX ? g.clientX : g.pageX, this.clientY = void 0 !== g.clientY ? g.clientY : g.pageY, this.screenX = g.screenX || 0, this.screenY = g.screenY || 0);
        this.button = a.button;
        this.keyCode = a.keyCode || 0;
        this.key = a.key || "";
        this.charCode = a.charCode || ("keypress" == f ? a.keyCode : 0);
        this.ctrlKey = a.ctrlKey;
        this.altKey = a.altKey;
        this.shiftKey = a.shiftKey;
        this.metaKey = a.metaKey;
        this.TW = _.Gg ? a.metaKey : a.ctrlKey;
        this.state = a.state;
        this.fW = a;
        a.defaultPrevented &&
            this.preventDefault()
    };
    _.nh.prototype.stopPropagation = function() {
        _.nh.T.stopPropagation.call(this);
        this.fW.stopPropagation ? this.fW.stopPropagation() : this.fW.cancelBubble = !0
    };
    _.nh.prototype.preventDefault = function() {
        _.nh.T.preventDefault.call(this);
        var a = this.fW;
        if (a.preventDefault) a.preventDefault();
        else if (a.returnValue = !1, Jh) try {
            if (a.ctrlKey || 112 <= a.keyCode && 123 >= a.keyCode) a.keyCode = -1
        } catch (c) {}
    };
    var Lh;
    _.cC = "closure_listenable_" + (1E6 * Math.random() | 0);
    _.wB = function(a) {
        return !(!a || !a[_.cC])
    };
    Lh = 0;
    var oh = function(a, c, f, g, h) {
            this.listener = a;
            this.f5 = null;
            this.src = c;
            this.type = f;
            this.capture = !!g;
            this.Tc = h;
            this.key = ++Lh;
            this.gR = this.If = !1
        },
        hs = function(a) {
            a.gR = !0;
            a.listener = null;
            a.f5 = null;
            a.src = null;
            a.Tc = null
        };
    var ts = function(a) {
        this.src = a;
        this.Wq = {};
        this.i3 = 0
    };
    ts.prototype.add = function(a, c, f, g, h) {
        var l = a.toString();
        a = this.Wq[l];
        a || (a = this.Wq[l] = [], this.i3++);
        var n = zs(a, c, g, h); - 1 < n ? (c = a[n], f || (c.If = !1)) : (c = new oh(c, this.src, l, !!g, h), c.If = f, a.push(c));
        return c
    };
    ts.prototype.remove = function(a, c, f, g) {
        a = a.toString();
        if (!(a in this.Wq)) return !1;
        var h = this.Wq[a];
        c = zs(h, c, f, g);
        return -1 < c ? (hs(h[c]), _.wd(h, c), 0 == h.length && (delete this.Wq[a], this.i3--), !0) : !1
    };
    var et = function(a, c) {
        var f = c.type;
        if (!(f in a.Wq)) return !1;
        var g = _.xe(a.Wq[f], c);
        g && (hs(c), 0 == a.Wq[f].length && (delete a.Wq[f], a.i3--));
        return g
    };
    ts.prototype.removeAll = function(a) {
        a = a && a.toString();
        var c = 0,
            f;
        for (f in this.Wq)
            if (!a || f == a) {
                for (var g = this.Wq[f], h = 0; h < g.length; h++) ++c, hs(g[h]);
                delete this.Wq[f];
                this.i3--
            }
        return c
    };
    ts.prototype.Q_ = function(a, c, f, g) {
        a = this.Wq[a.toString()];
        var h = -1;
        a && (h = zs(a, c, f, g));
        return -1 < h ? a[h] : null
    };
    ts.prototype.hasListener = function(a, c) {
        var f = _.kf(a),
            g = f ? a.toString() : "",
            h = _.kf(c);
        return lo(this.Wq, function(a) {
            for (var l = 0; l < a.length; ++l)
                if (!(f && a[l].type != g || h && a[l].capture != c)) return !0;
            return !1
        })
    };
    var zs = function(a, c, f, g) {
        for (var h = 0; h < a.length; ++h) {
            var l = a[h];
            if (!l.gR && l.listener == c && l.capture == !!f && l.Tc == g) return h
        }
        return -1
    };
    var lt, vh, st, qh, th, Gk, Fh, Gh, xh, lC;
    lt = "closure_lm_" + (1E6 * Math.random() | 0);
    vh = {};
    st = 0;
    _.ph = function(a, c, f, g, h) {
        if (g && g.once) return _.zh(a, c, f, g, h);
        if (_.ea(c)) {
            for (var l = 0; l < c.length; l++) _.ph(a, c[l], f, g, h);
            return null
        }
        f = _.tl(f);
        return _.wB(a) ? a.Ei(c, f, _.Vg(g) ? !!g.capture : !!g, h) : qh(a, c, f, !1, g, h)
    };
    qh = function(a, c, f, g, h, l) {
        if (!c) throw Error("u");
        var n = _.Vg(h) ? !!h.capture : !!h,
            q = _.zt(a);
        q || (a[lt] = q = new ts(a));
        f = q.add(c, f, g, n, l);
        if (f.f5) return f;
        g = th();
        f.f5 = g;
        g.src = a;
        g.listener = f;
        if (a.addEventListener) yn || (h = n), void 0 === h && (h = !1), a.addEventListener(c.toString(), g, h);
        else if (a.attachEvent) a.attachEvent(Gk(c.toString()), g);
        else throw Error("c");
        st++;
        return f
    };
    th = function() {
        var a = xh,
            c = yh ? function(f) {
                return a.call(c.src, c.listener, f)
            } : function(f) {
                f = a.call(c.src, c.listener, f);
                if (!f) return f
            };
        return c
    };
    _.zh = function(a, c, f, g, h) {
        if (_.ea(c)) {
            for (var l = 0; l < c.length; l++) _.zh(a, c[l], f, g, h);
            return null
        }
        f = _.tl(f);
        return _.wB(a) ? a.bZ(c, f, _.Vg(g) ? !!g.capture : !!g, h) : qh(a, c, f, !0, g, h)
    };
    _.Ah = function(a, c, f, g, h) {
        if (_.ea(c))
            for (var l = 0; l < c.length; l++) _.Ah(a, c[l], f, g, h);
        else g = _.Vg(g) ? !!g.capture : !!g, f = _.tl(f), _.wB(a) ? a.qa(c, f, g, h) : a && (a = _.zt(a)) && (c = a.Q_(c, f, g, h)) && _.Ch(c)
    };
    _.Ch = function(a) {
        if (_.qe(a) || !a || a.gR) return !1;
        var c = a.src;
        if (_.wB(c)) return c.PG(a);
        var f = a.type,
            g = a.f5;
        c.removeEventListener ? c.removeEventListener(f, g, a.capture) : c.detachEvent && c.detachEvent(Gk(f), g);
        st--;
        (f = _.zt(c)) ? (et(f, a), 0 == f.i3 && (f.src = null, c[lt] = null)) : hs(a);
        return !0
    };
    Gk = function(a) {
        return a in vh ? vh[a] : vh[a] = "on" + a
    };
    Fh = function(a, c, f, g) {
        var h = !0;
        if (a = _.zt(a))
            if (c = a.Wq[c.toString()])
                for (c = c.concat(), a = 0; a < c.length; a++) {
                    var l = c[a];
                    l && l.capture == f && !l.gR && (l = Gh(l, g), h = h && !1 !== l)
                }
            return h
    };
    Gh = function(a, c) {
        var f = a.listener,
            g = a.Tc || a.src;
        a.If && _.Ch(a);
        return f.call(g, c)
    };
    xh = function(a, c) {
        if (a.gR) return !0;
        if (!yh) {
            var f = c || _.fh("window.event");
            c = new _.nh(f, this);
            var g = !0;
            if (!(0 > f.keyCode || void 0 != f.returnValue)) {
                a: {
                    var h = !1;
                    if (0 == f.keyCode) try {
                        f.keyCode = -1;
                        break a
                    } catch (n) {
                        h = !0
                    }
                    if (h || void 0 == f.returnValue) f.returnValue = !0
                }
                f = [];
                for (h = c.currentTarget; h; h = h.parentNode) f.push(h);h = a.type;
                for (var l = f.length - 1; !c.Ad && 0 <= l; l--) c.currentTarget = f[l],
                a = Fh(f[l], h, !0, c),
                g = g && a;
                for (l = 0; !c.Ad && l < f.length; l++) c.currentTarget = f[l],
                a = Fh(f[l], h, !1, c),
                g = g && a
            }
            return g
        }
        return Gh(a, new _.nh(c, this))
    };
    _.zt = function(a) {
        a = a[lt];
        return a instanceof ts ? a : null
    };
    lC = "__closure_events_fn_" + (1E9 * Math.random() >>> 0);
    _.tl = function(a) {
        if (_.vd(a)) return a;
        a[lC] || (a[lC] = function(c) {
            return a.handleEvent(c)
        });
        return a[lC]
    };
    _.hh(function(a) {
        xh = a(xh)
    });
    _.Hh = function() {
        _.dh.call(this);
        this.zY = new ts(this);
        this.vda = this;
        this.z8 = null
    };
    _.J(_.Hh, _.dh);
    _.Hh.prototype[_.cC] = !0;
    _.k = _.Hh.prototype;
    _.k.KR = function() {
        return this.z8
    };
    _.k.tj = _.b(2);
    _.k.addEventListener = function(a, c, f, g) {
        _.ph(this, a, c, f, g)
    };
    _.k.removeEventListener = function(a, c, f, g) {
        _.Ah(this, a, c, f, g)
    };
    _.k.dispatchEvent = function(a) {
        var c, f = this.KR();
        if (f)
            for (c = []; f; f = f.KR()) c.push(f);
        f = this.vda;
        var g = a.type || a;
        if (_.fa(a)) a = new _.mh(a, f);
        else if (a instanceof _.mh) a.target = a.target || f;
        else {
            var h = a;
            a = new _.mh(g, f);
            _.sf(a, h)
        }
        h = !0;
        if (c)
            for (var l = c.length - 1; !a.Ad && 0 <= l; l--) {
                var n = a.currentTarget = c[l];
                h = n.ef(g, !0, a) && h
            }
        a.Ad || (n = a.currentTarget = f, h = n.ef(g, !0, a) && h, a.Ad || (h = n.ef(g, !1, a) && h));
        if (c)
            for (l = 0; !a.Ad && l < c.length; l++) n = a.currentTarget = c[l], h = n.ef(g, !1, a) && h;
        return h
    };
    _.k.wj = function() {
        _.Hh.T.wj.call(this);
        this.LI();
        this.z8 = null
    };
    _.k.Ei = function(a, c, f, g) {
        return this.zY.add(String(a), c, !1, f, g)
    };
    _.k.bZ = function(a, c, f, g) {
        return this.zY.add(String(a), c, !0, f, g)
    };
    _.k.qa = function(a, c, f, g) {
        return this.zY.remove(String(a), c, f, g)
    };
    _.k.PG = function(a) {
        return et(this.zY, a)
    };
    _.k.LI = function(a) {
        return this.zY ? this.zY.removeAll(a) : 0
    };
    _.k.ef = function(a, c, f) {
        a = this.zY.Wq[String(a)];
        if (!a) return !0;
        a = a.concat();
        for (var g = !0, h = 0; h < a.length; ++h) {
            var l = a[h];
            if (l && !l.gR && l.capture == c) {
                var n = l.listener,
                    q = l.Tc || l.src;
                l.If && this.PG(l);
                g = !1 !== n.call(q, f) && g
            }
        }
        return g && 0 != f.Tg
    };
    _.k.Q_ = function(a, c, f, g) {
        return this.zY.Q_(String(a), c, f, g)
    };
    _.k.hasListener = function(a, c) {
        return this.zY.hasListener(_.kf(a) ? String(a) : void 0, c)
    };

    var xk;
    xk = function(a) {
        return /^\s*$/.test(a) ? !1 : /^[\],:{}\s\u2028\u2029]*$/.test(a.replace(/\\["\\\/bfnrtu]/g, "@").replace(/(?:"[^"\\\n\r\u2028\u2029\x00-\x08\x0a-\x1f]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)[\s\u2028\u2029]*(?=:|,|]|}|$)/g, "]").replace(/(?:^|:|,)(?:[\s\u2028\u2029]*\[)+/g, ""))
    };
    _.Qn = function(a) {
        a = String(a);
        if (xk(a)) try {
            return eval("(" + a + ")")
        } catch (c) {}
        throw Error("G`" + a);
    };
    _.PC = function(a) {
        return (new _.zp(void 0)).kZ(a)
    };
    _.zp = function(a) {
        this.j5 = a
    };
    _.zp.prototype.kZ = function(a) {
        var c = [];
        Qk(this, a, c);
        return c.join("")
    };
    var Qk = function(a, c, f) {
            if (null == c) f.push("null");
            else {
                if ("object" == typeof c) {
                    if (_.ea(c)) {
                        var g = c;
                        c = g.length;
                        f.push("[");
                        for (var h = "", l = 0; l < c; l++) f.push(h), h = g[l], Qk(a, a.j5 ? a.j5.call(g, String(l), h) : h, f), h = ",";
                        f.push("]");
                        return
                    }
                    if (c instanceof String || c instanceof Number || c instanceof Boolean) c = c.valueOf();
                    else {
                        f.push("{");
                        l = "";
                        for (g in c) Object.prototype.hasOwnProperty.call(c, g) && (h = c[g], "function" != typeof h && (f.push(l), Cp(g, f), f.push(":"), Qk(a, a.j5 ? a.j5.call(c, g, h) : h, f), l = ","));
                        f.push("}");
                        return
                    }
                }
                switch (typeof c) {
                    case "string":
                        Cp(c,
                            f);
                        break;
                    case "number":
                        f.push((0, window.isFinite)(c) && !(0, window.isNaN)(c) ? String(c) : "null");
                        break;
                    case "boolean":
                        f.push(String(c));
                        break;
                    case "function":
                        f.push("null");
                        break;
                    default:
                        throw Error("H`" + typeof c);
                }
            }
        },
        Dp = {
            '"': '\\"',
            "\\": "\\\\",
            "/": "\\/",
            "\b": "\\b",
            "\f": "\\f",
            "\n": "\\n",
            "\r": "\\r",
            "\t": "\\t",
            "\x0B": "\\u000b"
        },
        Sn = /\uffff/.test("\uffff") ? /[\\\"\x00-\x1f\x7f-\uffff]/g : /[\\\"\x00-\x1f\x7f-\xff]/g,
        Cp = function(a, c) {
            c.push('"', a.replace(Sn, function(a) {
                var c = Dp[a];
                c || (c = "\\u" + (a.charCodeAt(0) | 65536).toString(16).substr(1), Dp[a] = c);
                return c
            }), '"')
        };

    _.Si = "StopIteration" in _.D ? _.D.StopIteration : {
        message: "StopIteration",
        stack: ""
    };
    _.Mi = function() {};
    _.Mi.prototype.next = function() {
        throw _.Si;
    };
    _.Mi.prototype.xc = function() {
        return this
    };
    _.Pi = function(a, c) {
        this.Ka = {};
        this.Ye = [];
        this.IE = this.Kf = 0;
        var f = arguments.length;
        if (1 < f) {
            if (f % 2) throw Error("q");
            for (var g = 0; g < f; g += 2) this.set(arguments[g], arguments[g + 1])
        } else a && this.addAll(a)
    };
    _.k = _.Pi.prototype;
    _.k.Da = function() {
        return this.Kf
    };
    _.k.Va = function() {
        Qi(this);
        for (var a = [], c = 0; c < this.Ye.length; c++) a.push(this.Ka[this.Ye[c]]);
        return a
    };
    _.k.$b = function() {
        Qi(this);
        return this.Ye.concat()
    };
    _.k.YR = function(a) {
        return _.Ri(this.Ka, a)
    };
    _.k.zn = _.b(13);
    _.k.equals = function(a, c) {
        if (this === a) return !0;
        if (this.Kf != a.Da()) return !1;
        c = c || kA;
        Qi(this);
        for (var f, g = 0; f = this.Ye[g]; g++)
            if (!c(this.get(f), a.get(f))) return !1;
        return !0
    };
    var kA = function(a, c) {
        return a === c
    };
    _.Pi.prototype.isEmpty = function() {
        return 0 == this.Kf
    };
    _.Pi.prototype.clear = function() {
        this.Ka = {};
        this.IE = this.Kf = this.Ye.length = 0
    };
    _.Pi.prototype.remove = function(a) {
        return _.Ri(this.Ka, a) ? (delete this.Ka[a], this.Kf--, this.IE++, this.Ye.length > 2 * this.Kf && Qi(this), !0) : !1
    };
    var Qi = function(a) {
        var c, f;
        if (a.Kf != a.Ye.length) {
            for (c = f = 0; f < a.Ye.length;) {
                var g = a.Ye[f];
                _.Ri(a.Ka, g) && (a.Ye[c++] = g);
                f++
            }
            a.Ye.length = c
        }
        if (a.Kf != a.Ye.length) {
            var h = {};
            for (c = f = 0; f < a.Ye.length;) g = a.Ye[f], _.Ri(h, g) || (a.Ye[c++] = g, h[g] = 1), f++;
            a.Ye.length = c
        }
    };
    _.k = _.Pi.prototype;
    _.k.get = function(a, c) {
        return _.Ri(this.Ka, a) ? this.Ka[a] : c
    };
    _.k.set = function(a, c) {
        _.Ri(this.Ka, a) || (this.Kf++, this.Ye.push(a), this.IE++);
        this.Ka[a] = c
    };
    _.k.addAll = function(a) {
        if (a instanceof _.Pi) {
            var c = a.$b();
            a = a.Va()
        } else c = _.Ki(a), a = _.Li(a);
        for (var f = 0; f < c.length; f++) this.set(c[f], a[f])
    };
    _.k.forEach = function(a, c) {
        for (var f = this.$b(), g = 0; g < f.length; g++) {
            var h = f[g],
                l = this.get(h);
            a.call(c, l, h, this)
        }
    };
    _.k.clone = function() {
        return new _.Pi(this)
    };
    _.k.xc = function(a) {
        Qi(this);
        var c = 0,
            f = this.IE,
            g = this,
            h = new _.Mi;
        h.next = function() {
            if (f != g.IE) throw Error("z");
            if (c >= g.Ye.length) throw _.Si;
            var h = g.Ye[c++];
            return a ? h : g.Ka[h]
        };
        return h
    };
    _.Ri = function(a, c) {
        return Object.prototype.hasOwnProperty.call(a, c)
    };

    _.OA = function(a, c) {
        _.Hh.call(this);
        this.RZ = a || 1;
        this.R0 = c || _.D;
        this.h6 = (0, _.H)(this.bM, this);
        this.R7 = (0, _.pa)()
    };
    _.J(_.OA, _.Hh);
    _.k = _.OA.prototype;
    _.k.enabled = !1;
    _.k.wd = null;
    _.k.setInterval = function(a) {
        this.RZ = a;
        this.wd && this.enabled ? (this.stop(), this.start()) : this.wd && this.stop()
    };
    _.k.bM = function() {
        if (this.enabled) {
            var a = (0, _.pa)() - this.R7;
            0 < a && a < .8 * this.RZ ? this.wd = this.R0.setTimeout(this.h6, this.RZ - a) : (this.wd && (this.R0.clearTimeout(this.wd), this.wd = null), this.dispatchEvent("tick"), this.enabled && (this.wd = this.R0.setTimeout(this.h6, this.RZ), this.R7 = (0, _.pa)()))
        }
    };
    _.k.start = function() {
        this.enabled = !0;
        this.wd || (this.wd = this.R0.setTimeout(this.h6, this.RZ), this.R7 = (0, _.pa)())
    };
    _.k.stop = function() {
        this.enabled = !1;
        this.wd && (this.R0.clearTimeout(this.wd), this.wd = null)
    };
    _.k.wj = function() {
        _.OA.T.wj.call(this);
        this.stop();
        delete this.R0
    };
    _.Rn = function(a, c, f) {
        if (_.vd(a)) f && (a = (0, _.H)(a, f));
        else if (a && "function" == typeof a.handleEvent) a = (0, _.H)(a.handleEvent, a);
        else throw Error("t");
        return 2147483647 < Number(c) ? -1 : _.D.setTimeout(a, c || 0)
    };
    _.Pt = function(a) {
        _.D.clearTimeout(a)
    };

    var Tn = function() {};
    Tn.prototype.x$ = null;
    Tn.prototype.getOptions = function() {
        var a;
        (a = this.x$) || (a = {}, _.Vn(this) && (a[0] = !0, a[1] = !0), a = this.x$ = a);
        return a
    };
    var Wn;
    Wn = function() {};
    _.J(Wn, Tn);
    _.Vn = function(a) {
        if (!a.Naa && "undefined" == typeof window.XMLHttpRequest && "undefined" != typeof window.ActiveXObject) {
            for (var c = ["MSXML2.XMLHTTP.6.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"], f = 0; f < c.length; f++) {
                var g = c[f];
                try {
                    return new window.ActiveXObject(g), a.Naa = g
                } catch (h) {}
            }
            throw Error("I");
        }
        return a.Naa
    };
    _.fo = new Wn;

    _.qA = function(a) {
        var c = 0,
            f;
        for (f in a) c++;
        return c
    };
    _.Ni = function(a) {
        if (a.Va && "function" == typeof a.Va) return a.Va();
        if (_.fa(a)) return a.split("");
        if (_.re(a)) {
            for (var c = [], f = a.length, g = 0; g < f; g++) c.push(a[g]);
            return c
        }
        return _.Li(a)
    };
    _.hz = function(a) {
        if (a.$b && "function" == typeof a.$b) return a.$b();
        if (!a.Va || "function" != typeof a.Va) {
            if (_.re(a) || _.fa(a)) {
                var c = [];
                a = a.length;
                for (var f = 0; f < a; f++) c.push(f);
                return c
            }
            return _.Ki(a)
        }
    };
    _.Oi = function(a, c, f) {
        if (a.forEach && "function" == typeof a.forEach) a.forEach(c, f);
        else if (_.re(a) || _.fa(a))(0, _.Be)(a, c, f);
        else
            for (var g = _.hz(a), h = _.Ni(a), l = h.length, n = 0; n < l; n++) c.call(f, h[n], g && g[n], a)
    };

    _.Eh = function(a) {
        return null == a ? "" : String(a)
    };
    _.fq = function(a) {
        return (0, window.encodeURIComponent)(String(a))
    };
    _.Xi = /^(?:([^:/?#.]+):)?(?:\/\/(?:([^/?#]*)@)?([^/#?]*?)(?::([0-9]+))?(?=[/#?]|$))?([^?#]+)?(?:\?([^#]*))?(?:#([\s\S]*))?$/;
    _.Am = function(a, c) {
        if (!c) return a;
        var f = a.indexOf("#");
        0 > f && (f = a.length);
        var g = a.indexOf("?");
        if (0 > g || g > f) {
            g = f;
            var h = ""
        } else h = a.substring(g + 1, f);
        a = [a.substr(0, g), h, a.substr(f)];
        f = a[1];
        a[1] = c ? f ? f + "&" + c : c : f;
        return a[0] + (a[1] ? "?" + a[1] : "") + a[2]
    };
    _.$i = function(a, c, f) {
        if (_.ea(c))
            for (var g = 0; g < c.length; g++) _.$i(a, String(c[g]), f);
        else null != c && f.push(a + ("" === c ? "" : "=" + _.fq(c)))
    };
    _.Bm = function(a) {
        var c = [],
            f;
        for (f in a) _.$i(f, a[f], c);
        return c.join("&")
    };
    _.Dm = function(a, c) {
        c = _.Bm(c);
        return _.Am(a, c)
    };

    var Gm, Ti;
    _.Xn = function(a) {
        return (a = _.Vn(a)) ? new window.ActiveXObject(a) : new window.XMLHttpRequest
    };
    Gm = function(a, c) {
        var f = [];
        for (c = c || 0; c < a.length; c += 2) _.$i(a[c], a[c + 1], f);
        return f.join("&")
    };
    Ti = function(a) {
        return Array.prototype.join.call(arguments, "")
    };
    _.Em = function(a) {
        switch (a) {
            case 200:
            case 201:
            case 202:
            case 204:
            case 206:
            case 304:
            case 1223:
                return !0;
            default:
                return !1
        }
    };
    _.ul = function(a, c) {
        _.jr(a, "/") && (a = a.substr(0, a.length - 1));
        _.jd(c, "/") && (c = c.substr(1));
        return Ti(a, "/", c)
    };
    _.po = function(a, c) {
        var f = 2 == arguments.length ? Gm(arguments[1], 0) : Gm(arguments, 1);
        return _.Am(a, f)
    };
    _.TO = function(a) {
        var c = _.da(a);
        if ("object" == c || "array" == c) {
            if (_.vd(a.clone)) return a.clone();
            c = "array" == c ? [] : {};
            for (var f in a) c[f] = _.TO(a[f]);
            return c
        }
        return a
    };
    var go, VA, ko;
    _.Yn = function(a) {
        _.Hh.call(this);
        this.headers = new _.Pi;
        this.P5 = a || null;
        this.ez = !1;
        this.O5 = this.nb = null;
        this.D4 = "";
        this.e0 = 0;
        this.OZ = this.B7 = this.u4 = this.N6 = !1;
        this.q_ = 0;
        this.p_ = null;
        this.gZ = "";
        this.X9 = this.eM = !1
    };
    _.J(_.Yn, _.Hh);
    go = /^https?$/i;
    VA = ["POST", "PUT"];
    ko = [];
    _.mo = function(a, c, f, g, h, l) {
        var n = new _.Yn;
        ko.push(n);
        c && n.Ei("complete", c);
        n.bZ("ready", n.Yda);
        l && n.C9(l);
        n.send(a, f, g, h)
    };
    _.Yn.prototype.Yda = function() {
        this.U();
        _.xe(ko, this)
    };
    _.Yn.prototype.C9 = function(a) {
        this.q_ = Math.max(0, a)
    };
    _.Yn.prototype.send = function(a, c, f, g) {
        if (this.nb) throw Error("J`" + this.D4 + "`" + a);
        c = c ? c.toUpperCase() : "GET";
        this.D4 = a;
        this.e0 = 0;
        this.N6 = !1;
        this.ez = !0;
        this.nb = this.P5 ? _.Xn(this.P5) : _.Xn(_.fo);
        this.O5 = this.P5 ? this.P5.getOptions() : _.fo.getOptions();
        this.nb.onreadystatechange = (0, _.H)(this.Fba, this);
        try {
            this.B7 = !0, this.nb.open(c, String(a), !0), this.B7 = !1
        } catch (l) {
            this.V3(5, l);
            return
        }
        a = f || "";
        var h = this.headers.clone();
        g && _.Oi(g, function(a, c) {
            h.set(c, a)
        });
        g = _.ue(h.$b(), SC);
        f = _.D.FormData && a instanceof _.D.FormData;
        !_.ve(VA, c) || g || f || h.set("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
        h.forEach(function(a, c) {
            this.nb.setRequestHeader(c, a)
        }, this);
        this.gZ && (this.nb.responseType = this.gZ);
        "withCredentials" in this.nb && this.nb.withCredentials !== this.eM && (this.nb.withCredentials = this.eM);
        try {
            $A(this), 0 < this.q_ && ((this.X9 = sh(this.nb)) ? (this.nb.timeout = this.q_, this.nb.ontimeout = (0, _.H)(this.Ss, this)) : this.p_ = _.Rn(this.Ss, this.q_, this)), this.u4 = !0, this.nb.send(a), this.u4 = !1
        } catch (l) {
            this.V3(5, l)
        }
    };
    var sh = function(a) {
            return _.W && _.sl(9) && _.qe(a.timeout) && _.kf(a.ontimeout)
        },
        SC = function(a) {
            return "content-type" == a.toLowerCase()
        };
    _.Yn.prototype.Ss = function() {
        "undefined" != typeof _.na && this.nb && (this.e0 = 8, this.dispatchEvent("timeout"), this.abort(8))
    };
    _.Yn.prototype.V3 = function(a) {
        this.ez = !1;
        this.nb && (this.OZ = !0, this.nb.abort(), this.OZ = !1);
        this.e0 = a;
        $n(this);
        ao(this)
    };
    var $n = function(a) {
        a.N6 || (a.N6 = !0, a.dispatchEvent("complete"), a.dispatchEvent("error"))
    };
    _.Yn.prototype.abort = function(a) {
        this.nb && this.ez && (this.ez = !1, this.OZ = !0, this.nb.abort(), this.OZ = !1, this.e0 = a || 7, this.dispatchEvent("complete"), this.dispatchEvent("abort"), ao(this))
    };
    _.Yn.prototype.wj = function() {
        this.nb && (this.ez && (this.ez = !1, this.OZ = !0, this.nb.abort(), this.OZ = !1), ao(this, !0));
        _.Yn.T.wj.call(this)
    };
    _.Yn.prototype.Fba = function() {
        this.Oj || (this.B7 || this.u4 || this.OZ ? bo(this) : this.r8())
    };
    _.Yn.prototype.r8 = function() {
        bo(this)
    };
    var bo = function(a) {
            if (a.ez && "undefined" != typeof _.na && (!a.O5[1] || 4 != _.iB(a) || 2 != a.getStatus()))
                if (a.u4 && 4 == _.iB(a)) _.Rn(a.Fba, 0, a);
                else if (a.dispatchEvent("readystatechange"), 4 == _.iB(a)) {
                a.ez = !1;
                try {
                    _.Eu(a) ? (a.dispatchEvent("complete"), a.dispatchEvent("success")) : (a.e0 = 6, a.getStatus(), $n(a))
                } finally {
                    ao(a)
                }
            }
        },
        ao = function(a, c) {
            if (a.nb) {
                $A(a);
                var f = a.nb,
                    g = a.O5[0] ? _.gh : null;
                a.nb = null;
                a.O5 = null;
                c || a.dispatchEvent("ready");
                try {
                    f.onreadystatechange = g
                } catch (h) {}
            }
        },
        $A = function(a) {
            a.nb && a.X9 && (a.nb.ontimeout =
                null);
            _.qe(a.p_) && (_.Pt(a.p_), a.p_ = null)
        };
    _.Yn.prototype.kh = function() {
        return !!this.nb
    };
    _.Eu = function(a) {
        var c = a.getStatus(),
            f;
        if (!(f = _.Em(c))) {
            if (c = 0 === c) a = String(a.D4).match(_.Xi)[1] || null, !a && _.D.self && _.D.self.location && (a = _.D.self.location.protocol, a = a.substr(0, a.length - 1)), c = !go.test(a ? a.toLowerCase() : "");
            f = c
        }
        return f
    };
    _.iB = function(a) {
        return a.nb ? a.nb.readyState : 0
    };
    _.Yn.prototype.getStatus = function() {
        try {
            return 2 < _.iB(this) ? this.nb.status : -1
        } catch (a) {
            return -1
        }
    };
    _.KI = function(a) {
        try {
            return a.nb ? a.nb.responseText : ""
        } catch (c) {
            return ""
        }
    };
    _.pA = function(a) {
        try {
            if (!a.nb) return null;
            if ("response" in a.nb) return a.nb.response;
            switch (a.gZ) {
                case "":
                case "text":
                    return a.nb.responseText;
                case "arraybuffer":
                    if ("mozResponseArrayBuffer" in a.nb) return a.nb.mozResponseArrayBuffer
            }
            return null
        } catch (c) {
            return null
        }
    };
    _.Yn.prototype.getResponseHeader = function(a) {
        if (this.nb && 4 == _.iB(this)) return a = this.nb.getResponseHeader(a), null === a ? void 0 : a
    };
    _.Yn.prototype.getAllResponseHeaders = function() {
        return this.nb && 4 == _.iB(this) ? this.nb.getAllResponseHeaders() : ""
    };
    _.hh(function(a) {
        _.Yn.prototype.r8 = a(_.Yn.prototype.r8)
    });

    var jB, LA, lj, oj, sj, uj, tj, mj, vj, pj;
    _.jZ = /#|$/;
    _.Nb = function(a, c, f) {
        for (var g = 0, h = c.length; 0 <= (g = a.indexOf(c, g)) && g < f;) {
            var l = a.charCodeAt(g - 1);
            if (38 == l || 63 == l)
                if (l = a.charCodeAt(g + h), !l || 61 == l || 38 == l || 35 == l) return g;
            g += h + 1
        }
        return -1
    };
    _.lZ = function(a, c) {
        var f = a.search(_.jZ),
            g = _.Nb(a, c, f);
        if (0 > g) return null;
        var h = a.indexOf("&", g);
        if (0 > h || h > f) h = f;
        g += c.length + 1;
        return (0, window.decodeURIComponent)(a.substr(g, h - g).replace(/\+/g, " "))
    };
    jB = function(a, c) {
        if (a) {
            a = a.split("&");
            for (var f = 0; f < a.length; f++) {
                var g = a[f].indexOf("="),
                    h = null;
                if (0 <= g) {
                    var l = a[f].substring(0, g);
                    h = a[f].substring(g + 1)
                } else l = a[f];
                c(l, h ? (0, window.decodeURIComponent)(h.replace(/\+/g, " ")) : "")
            }
        }
    };
    _.kD = function() {
        return Math.floor(2147483648 * Math.random()).toString(36) + Math.abs(Math.floor(2147483648 * Math.random()) ^ (0, _.pa)()).toString(36)
    };
    _.cj = function(a, c) {
        this.Ix = this.xC = this.KA = "";
        this.PT = null;
        this.X6 = this.iW = "";
        this.zD = this.I7 = !1;
        var f;
        a instanceof _.cj ? (this.zD = _.kf(c) ? c : a.zD, _.KA(this, a.KA), _.ZN(this, a.xC), _.fm(this, a.Ix), _.gj(this, a.PT), this.setPath(a.getPath()), _.hj(this, a.Xq.clone()), this.i_(a.b4())) : a && (f = String(a).match(_.Xi)) ? (this.zD = !!c, _.KA(this, f[1] || "", !0), _.ZN(this, f[2] || "", !0), _.fm(this, f[3] || "", !0), _.gj(this, f[4]), this.setPath(f[5] || "", !0), _.hj(this, f[6] || "", !0), this.i_(f[7] || "", !0)) : (this.zD = !!c, this.Xq = new _.ij(null,
            0, this.zD))
    };
    _.cj.prototype.toString = function() {
        var a = [],
            c = this.KA;
        c && a.push(lj(c, sj, !0), ":");
        var f = this.Ix;
        if (f || "file" == c) a.push("//"), (c = this.xC) && a.push(lj(c, sj, !0), "@"), a.push(_.fq(f).replace(/%25([0-9a-fA-F]{2})/g, "%$1")), f = this.PT, null != f && a.push(":", String(f));
        if (f = this.getPath()) this.Ix && "/" != f.charAt(0) && a.push("/"), a.push(lj(f, "/" == f.charAt(0) ? tj : uj, !0));
        (f = this.Xq.toString()) && a.push("?", f);
        (f = this.b4()) && a.push("#", lj(f, vj));
        return a.join("")
    };
    _.cj.prototype.resolve = function(a) {
        var c = this.clone(),
            f = !!a.KA;
        f ? _.KA(c, a.KA) : f = !!a.xC;
        f ? _.ZN(c, a.xC) : f = !!a.Ix;
        f ? _.fm(c, a.Ix) : f = null != a.PT;
        var g = a.getPath();
        if (f) _.gj(c, a.PT);
        else if (f = !!a.iW) {
            if ("/" != g.charAt(0))
                if (this.Ix && !this.iW) g = "/" + g;
                else {
                    var h = c.getPath().lastIndexOf("/"); - 1 != h && (g = c.getPath().substr(0, h + 1) + g)
                }
            h = g;
            if (".." == h || "." == h) g = "";
            else if (-1 != h.indexOf("./") || -1 != h.indexOf("/.")) {
                g = _.jd(h, "/");
                h = h.split("/");
                for (var l = [], n = 0; n < h.length;) {
                    var q = h[n++];
                    "." == q ? g && n == h.length && l.push("") :
                        ".." == q ? ((1 < l.length || 1 == l.length && "" != l[0]) && l.pop(), g && n == h.length && l.push("")) : (l.push(q), g = !0)
                }
                g = l.join("/")
            } else g = h
        }
        f ? c.setPath(g) : f = a.Fc();
        f ? _.hj(c, a.Xq.clone()) : f = !!a.X6;
        f && c.i_(a.b4());
        return c
    };
    _.cj.prototype.clone = function() {
        return new _.cj(this)
    };
    _.KA = function(a, c, f) {
        _.GU(a);
        a.KA = f ? LA(c, !0) : c;
        a.KA && (a.KA = a.KA.replace(/:$/, ""));
        return a
    };
    _.ZN = function(a, c, f) {
        _.GU(a);
        a.xC = f ? LA(c) : c;
        return a
    };
    _.fm = function(a, c, f) {
        _.GU(a);
        a.Ix = f ? LA(c, !0) : c;
        return a
    };
    _.gj = function(a, c) {
        _.GU(a);
        if (c) {
            c = Number(c);
            if ((0, window.isNaN)(c) || 0 > c) throw Error("B`" + c);
            a.PT = c
        } else a.PT = null;
        return a
    };
    _.cj.prototype.getPath = function() {
        return this.iW
    };
    _.cj.prototype.setPath = function(a, c) {
        _.GU(this);
        this.iW = c ? LA(a, !0) : a;
        return this
    };
    _.cj.prototype.Fc = function() {
        return "" !== this.Xq.toString()
    };
    _.hj = function(a, c, f) {
        _.GU(a);
        c instanceof _.ij ? (a.Xq = c, a.Xq.s9(a.zD)) : (f || (c = lj(c, mj)), a.Xq = new _.ij(c, 0, a.zD));
        return a
    };
    _.cj.prototype.uj = function(a, c) {
        return _.hj(this, a, c)
    };
    _.cj.prototype.Sj = function() {
        return this.Xq.toString()
    };
    _.nj = function(a, c, f) {
        _.GU(a);
        a.Xq.set(c, f);
        return a
    };
    _.cj.prototype.Mh = function(a) {
        return this.Xq.get(a)
    };
    _.cj.prototype.b4 = function() {
        return this.X6
    };
    _.cj.prototype.i_ = function(a, c) {
        _.GU(this);
        this.X6 = c ? LA(a) : a;
        return this
    };
    _.cj.prototype.removeParameter = function(a) {
        _.GU(this);
        this.Xq.remove(a);
        return this
    };
    _.GU = function(a) {
        if (a.I7) throw Error("C");
    };
    _.cj.prototype.s9 = function(a) {
        this.zD = a;
        this.Xq && this.Xq.s9(a);
        return this
    };
    _.Kp = function(a) {
        return a instanceof _.cj ? a.clone() : new _.cj(a, void 0)
    };
    LA = function(a, c) {
        return a ? c ? (0, window.decodeURI)(a.replace(/%25/g, "%2525")) : (0, window.decodeURIComponent)(a) : ""
    };
    lj = function(a, c, f) {
        return _.fa(a) ? (a = (0, window.encodeURI)(a).replace(c, oj), f && (a = a.replace(/%25([0-9a-fA-F]{2})/g, "%$1")), a) : null
    };
    oj = function(a) {
        a = a.charCodeAt(0);
        return "%" + (a >> 4 & 15).toString(16) + (a & 15).toString(16)
    };
    sj = /[#\/\?@]/g;
    uj = /[\#\?:]/g;
    tj = /[\#\?]/g;
    mj = /[\#\?@]/g;
    vj = /#/g;
    _.ij = function(a, c, f) {
        this.Kf = this.hj = null;
        this.mA = a || null;
        this.zD = !!f
    };
    pj = function(a) {
        a.hj || (a.hj = new _.Pi, a.Kf = 0, a.mA && jB(a.mA, function(c, f) {
            a.add((0, window.decodeURIComponent)(c.replace(/\+/g, " ")), f)
        }))
    };
    _.k = _.ij.prototype;
    _.k.Da = function() {
        pj(this);
        return this.Kf
    };
    _.k.add = function(a, c) {
        pj(this);
        this.mA = null;
        a = qj(this, a);
        var f = this.hj.get(a);
        f || this.hj.set(a, f = []);
        f.push(c);
        this.Kf += 1;
        return this
    };
    _.k.remove = function(a) {
        pj(this);
        a = qj(this, a);
        return this.hj.YR(a) ? (this.mA = null, this.Kf -= this.hj.get(a).length, this.hj.remove(a)) : !1
    };
    _.k.clear = function() {
        this.hj = this.mA = null;
        this.Kf = 0
    };
    _.k.isEmpty = function() {
        pj(this);
        return 0 == this.Kf
    };
    _.k.YR = function(a) {
        pj(this);
        a = qj(this, a);
        return this.hj.YR(a)
    };
    _.k.zn = function(a) {
        var c = this.Va();
        return _.ve(c, a)
    };
    _.k.forEach = function(a, c) {
        pj(this);
        this.hj.forEach(function(f, g) {
            (0, _.Be)(f, function(f) {
                a.call(c, f, g, this)
            }, this)
        }, this)
    };
    _.k.$b = function() {
        pj(this);
        for (var a = this.hj.Va(), c = this.hj.$b(), f = [], g = 0; g < c.length; g++)
            for (var h = a[g], l = 0; l < h.length; l++) f.push(c[g]);
        return f
    };
    _.k.Va = function(a) {
        pj(this);
        var c = [];
        if (_.fa(a)) this.YR(a) && (c = _.bj(c, this.hj.get(qj(this, a))));
        else {
            a = this.hj.Va();
            for (var f = 0; f < a.length; f++) c = _.bj(c, a[f])
        }
        return c
    };
    _.k.set = function(a, c) {
        pj(this);
        this.mA = null;
        a = qj(this, a);
        this.YR(a) && (this.Kf -= this.hj.get(a).length);
        this.hj.set(a, [c]);
        this.Kf += 1;
        return this
    };
    _.k.get = function(a, c) {
        a = a ? this.Va(a) : [];
        return 0 < a.length ? String(a[0]) : c
    };
    _.k.setValues = function(a, c) {
        this.remove(a);
        0 < c.length && (this.mA = null, this.hj.set(qj(this, a), _.ze(c)), this.Kf += c.length)
    };
    _.k.toString = function() {
        if (this.mA) return this.mA;
        if (!this.hj) return "";
        for (var a = [], c = this.hj.$b(), f = 0; f < c.length; f++) {
            var g = c[f],
                h = _.fq(g);
            g = this.Va(g);
            for (var l = 0; l < g.length; l++) {
                var n = h;
                "" !== g[l] && (n += "=" + _.fq(g[l]));
                a.push(n)
            }
        }
        return this.mA = a.join("&")
    };
    _.k.clone = function() {
        var a = new _.ij;
        a.mA = this.mA;
        this.hj && (a.hj = this.hj.clone(), a.Kf = this.Kf);
        return a
    };
    var qj = function(a, c) {
        c = String(c);
        a.zD && (c = c.toLowerCase());
        return c
    };
    _.ij.prototype.s9 = function(a) {
        a && !this.zD && (pj(this), this.mA = null, this.hj.forEach(function(a, f) {
            var c = f.toLowerCase();
            f != c && (this.remove(f), this.setValues(c, a))
        }, this));
        this.zD = a
    };
    _.ij.prototype.extend = function(a) {
        for (var c = 0; c < arguments.length; c++) _.Oi(arguments[c], function(a, c) {
            this.add(c, a)
        }, this)
    };

    _.DY = function() {
        return (_.pf("Chrome") || _.pf("CriOS")) && !_.pf("Edge")
    };
    _.GY = function() {
        return _.pf("Safari") && !(_.DY() || _.pf("Coast") || _.$e() || _.pf("Edge") || _.pf("Silk") || _.pf("Android"))
    };
    _.Qw = function() {
        return _.pf("Firefox")
    };
    _.RE = function(a) {
        for (var c = {}, f = 0, g = 0; g < a.length;) {
            var h = a[g++];
            var l = h;
            l = _.Vg(l) ? "o" + _.oe(l) : (typeof l).charAt(0) + l;
            Object.prototype.hasOwnProperty.call(c, l) || (c[l] = !0, a[f++] = h)
        }
        a.length = f
    };
    _.ux = _.Qw();
    _.mN = _.mZ() || _.pf("iPod");
    _.nN = _.pf("iPad");
    _.oN = _.pf("Android") && !(_.DY() || _.Qw() || _.$e() || _.pf("Silk"));
    _.tx = _.DY();
    _.vx = _.GY() && !_.wk();

    _.cc = function(a) {
        for (var c = [], f = 0, g = 0; g < a.length; g++) {
            var h = a.charCodeAt(g);
            255 < h && (c[f++] = h & 255, h >>= 8);
            c[f++] = h
        }
        return c
    };
    _.yx = function(a) {
        for (var c, f, g = [], h = 0, l = 0; h < a.length;) {
            var n = a[h++];
            if (128 > n) g[l++] = String.fromCharCode(n);
            else if (191 < n && 224 > n) f = a[h++], g[l++] = String.fromCharCode((n & 31) << 6 | f & 63);
            else if (239 < n && 365 > n) {
                f = a[h++];
                c = a[h++];
                var q = a[h++];
                c = ((n & 7) << 18 | (f & 63) << 12 | (c & 63) << 6 | q & 63) - 65536;
                g[l++] = String.fromCharCode(55296 + (c >> 10));
                g[l++] = String.fromCharCode(56320 + (c & 1023))
            } else f = a[h++], c = a[h++], g[l++] = String.fromCharCode((n & 15) << 12 | (f & 63) << 6 | c & 63)
        }
        return g.join("")
    };
    var tv, ch, Cx, rv, Bv, nw, vi;
    tv = null;
    ch = null;
    Cx = null;
    rv = _.df || _.ef && !_.vx || _.cf;
    _.sv = rv || "function" == typeof _.D.btoa;
    Bv = rv || !_.vx && !_.W && "function" == typeof _.D.atob;
    _.aB = function(a, c) {
        vi();
        c = c ? Cx : tv;
        for (var f = [], g = 0; g < a.length; g += 3) {
            var h = a[g],
                l = g + 1 < a.length,
                n = l ? a[g + 1] : 0,
                q = g + 2 < a.length,
                t = q ? a[g + 2] : 0,
                v = h >> 2;
            h = (h & 3) << 4 | n >> 4;
            n = (n & 15) << 2 | t >> 6;
            t &= 63;
            q || (t = 64, l || (n = 64));
            f.push(c[v], c[h], c[n], c[t])
        }
        return f.join("")
    };
    _.MA = function(a, c) {
        if (Bv && !c) return _.D.atob(a);
        var f = "";
        nw(a, function(a) {
            f += String.fromCharCode(a)
        });
        return f
    };
    _.Ks = function(a) {
        var c = [];
        nw(a, function(a) {
            c.push(a)
        });
        return c
    };
    nw = function(a, c) {
        function f(c) {
            for (; g < a.length;) {
                var f = a.charAt(g++),
                    h = ch[f];
                if (null != h) return h;
                if (!_.im(f)) throw Error("Sa`" + f);
            }
            return c
        }
        vi();
        for (var g = 0;;) {
            var h = f(-1),
                l = f(0),
                n = f(64),
                q = f(64);
            if (64 === q && -1 === h) break;
            c(h << 2 | l >> 4);
            64 != n && (c(l << 4 & 240 | n >> 2), 64 != q && c(n << 6 & 192 | q))
        }
    };
    vi = function() {
        if (!tv) {
            tv = {};
            ch = {};
            Cx = {};
            for (var a = 0; 65 > a; a++) tv[a] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(a), ch[tv[a]] = a, Cx[a] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.".charAt(a), 62 <= a && (ch["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.".charAt(a)] = a)
        }
    };

    _.rF = function(a) {
        this.U0 = a
    };
    _.rF.prototype.toString = function() {
        return this.U0
    };
    _.fp = function(a) {
        _.dh.call(this);
        this.SS = 1;
        this.Y4 = [];
        this.g5 = 0;
        this.$x = [];
        this.yU = {};
        this.Eda = !!a
    };
    _.J(_.fp, _.dh);
    _.k = _.fp.prototype;
    _.k.subscribe = function(a, c, f) {
        var g = this.yU[a];
        g || (g = this.yU[a] = []);
        var h = this.SS;
        this.$x[h] = a;
        this.$x[h + 1] = c;
        this.$x[h + 2] = f;
        this.SS = h + 3;
        g.push(h);
        return h
    };
    _.k.b3 = _.b(34);
    _.k.unsubscribe = function(a, c, f) {
        if (a = this.yU[a]) {
            var g = this.$x;
            if (a = _.ue(a, function(a) {
                    return g[a + 1] == c && g[a + 2] == f
                })) return this.zf(a)
        }
        return !1
    };
    _.k.zf = function(a) {
        var c = this.$x[a];
        if (c) {
            var f = this.yU[c];
            0 != this.g5 ? (this.Y4.push(a), this.$x[a + 1] = _.gh) : (f && _.xe(f, a), delete this.$x[a], delete this.$x[a + 1], delete this.$x[a + 2])
        }
        return !!c
    };
    _.k.q0 = function(a) {
        var c = this.yU[a];
        if (c) {
            for (var f = Array(arguments.length - 1), g = 1, h = arguments.length; g < h; g++) f[g - 1] = arguments[g];
            if (this.Eda)
                for (g = 0; g < c.length; g++) {
                    var l = c[g];
                    iN(this.$x[l + 1], this.$x[l + 2], f)
                } else {
                    this.g5++;
                    try {
                        for (g = 0, h = c.length; g < h; g++) l = c[g], this.$x[l + 1].apply(this.$x[l + 2], f)
                    } finally {
                        if (this.g5--, 0 < this.Y4.length && 0 == this.g5)
                            for (; l = this.Y4.pop();) this.zf(l)
                    }
                }
            return 0 != g
        }
        return !1
    };
    var iN = function(a, c, f) {
        _.Qp(function() {
            a.apply(c, f)
        })
    };
    _.fp.prototype.clear = function(a) {
        if (a) {
            var c = this.yU[a];
            c && ((0, _.Be)(c, this.zf, this), delete this.yU[a])
        } else this.$x.length = 0, this.yU = {}
    };
    _.fp.prototype.Da = function(a) {
        if (a) {
            var c = this.yU[a];
            return c ? c.length : 0
        }
        a = 0;
        for (c in this.yU) a += this.Da(c);
        return a
    };
    _.fp.prototype.wj = function() {
        _.fp.T.wj.call(this);
        this.clear();
        this.Y4.length = 0
    };
    _.lH = function(a) {
        _.dh.call(this);
        this.ho = new _.fp(a);
        _.pD(this, this.ho)
    };
    _.J(_.lH, _.dh);
    _.k = _.lH.prototype;
    _.k.subscribe = function(a, c, f) {
        return this.ho.subscribe(a.toString(), c, f)
    };
    _.k.b3 = _.b(33);
    _.k.unsubscribe = function(a, c, f) {
        return this.ho.unsubscribe(a.toString(), c, f)
    };
    _.k.zf = function(a) {
        return this.ho.zf(a)
    };
    _.k.q0 = function(a, c) {
        return this.ho.q0(a.toString(), c)
    };
    _.k.clear = function(a) {
        this.ho.clear(_.kf(a) ? a.toString() : void 0)
    };
    _.k.Da = function(a) {
        return this.ho.Da(_.kf(a) ? a.toString() : void 0)
    };

    _.Nk = function(a, c) {
        _.ea(c) || (c = [c]);
        c = (0, _.De)(c, function(a) {
            return _.fa(a) ? a : a.Rr + " " + a.duration + "s " + a.timing + " " + a.Le + "s"
        });
        _.Mg(a, "transition", c.join(","))
    };
    _.Pk = function(a) {
        var c = !1,
            f;
        return function() {
            c || (f = a(), c = !0);
            return f
        }
    }(function() {
        if (_.W) return _.sl("10.0");
        var a = _.Br("DIV"),
            c = _.ef ? "-webkit" : _.df ? "-moz" : _.W ? "-ms" : _.cf ? "-o" : null,
            f = {
                transition: "opacity 1s linear"
            };
        c && (f[c + "-transition"] = "opacity 1s linear");
        _.j_(a, _.Dr({
            style: f
        }));
        a = a.firstChild;
        c = a.style[_.Cg("transition")];
        return "" != ("undefined" !== typeof c ? c : a.style[_.Fg(a, "transition")] || "")
    });

    _.Au = function() {
        _.wu = "oauth2relay" + String(2147483647 * (0, _.Vb)() | 0);
        _.Qt.proxy = _.wu
    };
    _.Bu = new _.lH;
    _.mH = new _.rF("oauth");
    _.Qt = {};
    _.Au();
    var pX = _.P("oauth-flow/client_id");
    _.Qt.client_id = pX;
    var CX = _.Qt,
        FX;
    var $X = String(_.P("oauth-flow/redirectUri"));
    if ($X) FX = $X.replace(/[#][\s\S]*/, "");
    else {
        var dY = _.Rb.Pq(window.location.href);
        FX = [_.P("oauth-flow/callbackUrl"), "?x_origin=", (0, window.encodeURIComponent)(dY)].join("")
    }
    CX.redirect_uri = FX;
    _.Qt.origin = _.Rb.Pq(window.location.href);
    _.Qt.response_type = "token";
    _.Qt.gsiwebsdk = "1";

    var Gi, fj, ek, Wj, gk, Sv, Rv, Tv, ZM, Fn, ik, jk, Vv, Wv, Xv, Yv, Zv, hw, kk, lw, mw, PZ, yE, Ei, Es, ow, pw, vw, ww, yw, Fs, Iw, Jw, Kw, Mw, Nw, vE, Rw, MD, Pw, Q_, ND, u0, Jm, Ow, Sw, Ve, rE, Xb, Tw, Uw, Vw, Ww, mG, tG, ex, fx, ix, gx, jx, kx, lx, ox;
    Gi = [".APPS.GOOGLEUSERCONTENT.COM", "@DEVELOPER.GSERVICEACCOUNT.COM"];
    fj = function(a) {
        a = a.toUpperCase();
        for (var c = 0, f = Gi.length; c < f; ++c) {
            var g = a.split(Gi[c]);
            2 == g.length && "" === g[1] && (a = g[0])
        }
        a = a.replace(/-/g, "_").toUpperCase();
        40 < a.length && (c = new _.pi, c.bB(a), a = c.Of().toUpperCase());
        return a
    };
    ek = function(a) {
        if (!a) return null;
        "single_host_origin" !== a && (a = _.T.Pq(a));
        var c = window.location.hostname,
            f = c,
            g = _.rc;
        if ("single_host_origin" !== a) {
            f = a.split("://");
            if (2 == f.length) g = "https" === f.shift();
            else return _.kd("WARNING invalid cookie_policy: " + a), null;
            f = f[0]
        }
        if (-1 !== f.indexOf(":")) f = c = "";
        else {
            a = "." + f;
            if (c.lastIndexOf(a) !== c.length - a.length) return _.kd("Invalid cookie_policy domain: " + f), null;
            f = a;
            c = f.split(".").length - 1
        }
        return {
            domain: f,
            Gb: g,
            Ke: c
        }
    };
    Wj = null;
    gk = function(a) {
        if (!a) return null;
        var c = a.client_id;
        if (!c) return null;
        c = fj(c);
        a = ek(a.cookie_policy);
        return a ? !_.rc && a.Gb ? (_.kd("WARNING: https cookie_policy set for http domain"), null) : ["GCSC", a.Gb ? "E" : "U", "_", c, "_", a.Gb ? "S" : "H", a.Ke].join("") : null
    };
    Sv = function(a) {
        var c = Rv;
        _.Nk(c, [{
            Rr: "-webkit-transform",
            duration: 1,
            timing: "ease",
            Le: 0
        }]);
        _.Nk(c, [{
            Rr: "transform",
            duration: 1,
            timing: "ease",
            Le: 0
        }]);
        _.Rn(function() {
            c.style.webkitTransform = "translate3d(0px," + a + "px,0px)";
            c.style.transform = "translate3d(0px," + a + "px,0px)"
        }, 0)
    };
    ZM = function(a) {
        var c = ek(a);
        if (!c) return new _.dk("G_USERSTATE_");
        a = ["G_USERSTATE_", _.rc && c.Gb ? "S" : "H", c.Ke].join("");
        var f = _.Tj[a];
        f || (f = {
            Fr: 63072E3
        }, _.Sl(_.hk(c), f), f = new _.Vj(a, f), _.Tj[a] = f, c = f.read(), "undefined" !== typeof c && null !== c && (window.document.cookie = a + "=; expires=Thu, 01 Jan 1970 00:00:01 GMT; path=/", f.write(c)));
        return f
    };
    Fn = function() {
        return Math.floor((new Date).getTime() / 1E3)
    };
    ik = function(a) {
        var c = _.Bj[a];
        c || (c = new _.bk(new _.dk(a)), _.Bj[a] = c);
        return {
            Kc: c,
            key: a
        }
    };
    jk = function(a, c) {
        var f = c ? _.Oj : _.Bj,
            g = c ? _.dj : _.fk,
            h = a && gk(a),
            l = !!h;
        a && !a.g_user_cookie_policy && (g = _.dk, h = "token");
        if (!h)
            if (!c && Wj) h = Wj;
            else return null;
        a = f[h];
        if (!a) {
            a = _.wj(h);
            if (!("token" === h || a && a.uf)) return null;
            a = new g(h, _.hk(a));
            c || (a = new _.bk(a))
        }
        f[h] = a;
        return {
            Kc: a,
            key: h,
            Fj: l
        }
    };
    Vv = function(a) {
        a = a && a.id_token;
        if (!a || !a.split(".")[1]) return null;
        a = (a.split(".")[1] + "...").replace(/^((....)+).?.?.?$/, "$1");
        return _.Qn(_.MA(a, !0))
    };
    Wv = function() {
        Rv.parentNode.removeChild(Rv)
    };
    Xv = function() {
        var a = Tv + 88;
        Sv(a);
        Tv = a
    };
    Yv = function() {
        var a = Tv - 88;
        Sv(a);
        Tv = a
    };
    Zv = function(a) {
        var c = ZM(a).read();
        a = _.r();
        if (c) {
            c = c.split(":");
            for (var f; f = c.shift();) f = f.split("="), a[f[0]] = f[1]
        }
        return a
    };
    hw = function(a) {
        if (!a) return [];
        a = a.split("=");
        return a[1] ? a[1].split("|") : []
    };
    kk = function(a, c, f) {
        a = a && "token" !== a ? ik(a) : jk();
        if (!a) return null;
        if (f) {
            f = a.Kc;
            _.r();
            var g = f.D8.read();
            f = null;
            try {
                f = (0, _.of)(g)
            } catch (h) {}
            0 == f && (f = null);
            g = _.Dh() || "0";
            g = String(g);
            f = f && f[g]
        } else f = a.Kc.read();
        f && f.expires_at && Fn() > f.expires_at && (a.Kc.clear(), f = null);
        f && f.error && !c && (f = null);
        return f
    };
    lw = function(a) {
        return (a = Vv(a)) ? a.sub : null
    };
    mw = function(a) {
        var c = a ? Xv : Yv,
            f = a ? Yv : Xv;
        a = a ? "-" : "";
        Tv = (0, window.parseInt)(a + 88, 10);
        Rv.style.webkitTransform = "translate3d(0px," + a + 88 + "px,0px)";
        Rv.style.transform = "translate3d(0px," + a + 88 + "px,0px)";
        Rv.style.display = "";
        Rv.style.visibility = "visible";
        c();
        _.Rn(f, 4E3);
        _.Rn(Wv, 5E3)
    };
    PZ = function() {
        var a, c = null;
        _.dj.iterate(function(f, g) {
            0 === f.indexOf("G_AUTHUSER_") && (f = _.jj(f.substring(11)), !a || f.Gb && !a.Gb || f.Gb == a.Gb && f.Ke > a.Ke) && (a = f, c = g)
        });
        return {
            fU: a,
            $t: c
        }
    };
    yE = function(a) {
        a = a.split(":");
        return {
            clientId: a[0].split("=")[1],
            EL: hw(a[1]),
            DP: hw(a[2]),
            fP: hw(a[3])
        }
    };
    Ei = function(a) {
        var c = String(a("immediate") || "");
        a = String(a("prompt") || "");
        return "true" === c || "none" === a
    };
    Es = function(a) {
        a = ek(a);
        if (!a || a.Gb && !_.rc) return null;
        var c = ["G_AUTHUSER_", _.rc && a.Gb ? "S" : "H", a.Ke].join(""),
            f = _.Pj[c];
        f || (f = new _.dj(c, _.hk(a)), _.Pj[c] = f);
        return f
    };
    _.YF = function(a, c) {
        return kk(a, c)
    };
    ow = function(a) {
        var c = lw(a);
        c ? (a = Zv(a.cookie_policy), c = "0" == a[c] || "X" == a[c]) : c = !1;
        return c
    };
    pw = function(a) {
        var c = _.P("oauth-flow/toast/position");
        "top" !== c && (c = "bottom");
        var f = window.document.createElement("div");
        Rv = f;
        f.style.cssText = "position:fixed;left:0px;z-index:1000;width:100%;";
        _.Mg(f, "visibility", "hidden");
        _.Mg(f, c, "-40px");
        _.Mg(f, "height", "128px");
        var g = f;
        if ("desktop" == _.P("deviceType")) {
            g = window.document.createElement("div");
            g.style.cssText = "float:left;position:relative;left:50%;";
            f.appendChild(g);
            var h = window.document.createElement("div");
            h.style.cssText = "float:left;position:relative;left:-50%";
            g.appendChild(h);
            g = h
        }
        h = "top" == c ? "-" : "";
        Tv = (0, window.parseInt)(h + 88, 10);
        Rv.style.webkitTransform = "translate3d(0px," + h + 88 + "px,0px)";
        Rv.style.transform = "translate3d(0px," + h + 88 + "px,0px)";
        h = window;
        try {
            for (; h.parent != h && h.parent.document;) h = h.parent
        } catch (l) {}
        h = h.document.body;
        try {
            h.insertBefore(f, h.firstChild)
        } catch (l) {}
        _.Sm.Nf({
            url: ":socialhost:/:session_prefix:_/widget/oauthflow/toast",
            queryParams: {
                clientId: a.client_id,
                idToken: a.id_token
            },
            where: g,
            onRestyle: function() {
                "top" === c ? mw(!0) : mw(!1)
            }
        })
    };
    vw = !1;
    yw = function(a) {
        var c = PZ(),
            f = c.fU;
        c = c.$t;
        var g = a && fj(a);
        if (null !== c) {
            var h;
            _.dj.iterate(function(a, c) {
                (a = _.wj(a)) && a.uf && (g && a.ep != g || a.Gb == f.Gb && a.Ke == f.Ke && (h = c))
            });
            if (h) {
                var l = yE(h);
                a = l && l.EL[Number(c)];
                l = l && l.clientId;
                if (a) return {
                    $t: c,
                    ZP: a,
                    clientId: l
                }
            }
        }
        return null
    };
    Fs = function(a) {
        a = Es(a.g_user_cookie_policy);
        _.Fa("googleapis.config/sessionIndex", null);
        a.clear()
    };
    Iw = function(a) {
        return Ei(function(c) {
            return a[c]
        })
    };
    Jw = function(a, c) {
        var f = null;
        a && c && (f = c.client_id = c.client_id || a.client_id, c.scope = c.scope || a.scope, c.g_user_cookie_policy = a.cookie_policy, c.cookie_policy = c.cookie_policy || a.cookie_policy, c.response_type = c.response_type || a.response_type);
        if (c) {
            c.issued_at || (c.issued_at = String(Fn()));
            var g = (0, window.parseInt)(c.expires_in, 10) || 86400;
            c.error && (g = _.P("oauth-flow/errorMaxAge") || 86400);
            c.expires_in = String(g);
            c.expires_at || (c.expires_at = String(Fn() + g));
            a && Iw(a) || (c["g-oauth-window"] = (ww || {}).popup);
            c._aa ||
                c.error || null != yw(f) || !Iw(a) || (c._aa = "1");
            a = c.status = {};
            a.google_logged_in = !!c.session_state;
            f = a.signed_in = !!c.access_token;
            a.method = f ? c["g-oauth-window"] ? "PROMPT" : "AUTO" : null
        }
        return c
    };
    Kw = {};
    _.Lw = function(a, c) {
        "string" != typeof a && (c = a, a = "token");
        if (c) {
            var f = jk(c, !0);
            if (f) {
                var g;
                if ((g = c) && g.session_state) {
                    var h = [],
                        l = [],
                        n = [],
                        q = (0, window.parseInt)(g.authuser, 10) || 0;
                    h[q] = g.session_state;
                    l[q] = g.issued_at;
                    n[q] = g.expires_at;
                    g = ["C=" + g.client_id, "S=" + h.join("|"), "I=" + l.join("|"), "X=" + n.join("|")].join(":")
                } else g = null;
                g && f.Kc.write(g);
                "token" == a && (f = Es(c.g_user_cookie_policy)) && (c.error ? Fs(c) : c.session_state && f.write(c.authuser || "0"))
            }
        }
        if (f = "token" !== a ? ik(a) : jk(c))
            if (c) {
                if (f.Kc.write(c), !Wj ||
                    f.Fj && "token" !== Wj) Wj = f.key
            } else f.Kc.clear(), Wj = null;
        a = "token" == a ? void 0 : a;
        !c || c.error ? _.Kb(a) : _.RF(c, a);
        _.YF()
    };
    Mw = function(a, c) {
        var f = c && c.key || "token",
            g = a = Jw(c && c.params, a);
        !ow(g) && g && 0 <= (" " + (g.scope || "") + " ").indexOf(" https://www.googleapis.com/auth/plus.login ") && _.P("isLoggedIn") && "1" === (g && g._aa) && (g._aa = "0", vw || (vw = !0, pw(g)));
        _.Lw(f, a);
        a = _.YF(f);
        if (c) {
            f = c.popup;
            g = c.after_redirect;
            if (f && "keep_open" != g) try {
                f.close()
            } catch (h) {}
            c.callback && (c.callback(a), c.callback = null)
        }
    };
    Nw = {};
    vE = function() {
        return !!_.P("oauth-flow/usegapi")
    };
    Rw = function(a) {
        var c = _.wu;
        return function() {
            if (this.f == c && this.t == _.T.Wd(this.f) && this.origin == _.T.$d(this.f)) return a.apply(this, arguments)
        }
    };
    MD = null;
    Pw = [];
    Q_ = function(a, c) {
        vE() ? MD.unregister(a) : _.T.unregister(a + ":" + c)
    };
    ND = function(a, c, f) {
        vE() ? MD.register(a, f, _.Vz) : _.T.register(a + ":" + c, Rw(f))
    };
    u0 = function(a) {
        var c = _.R.Qc;
        if (null != c(a).jsh) return a;
        if (c = String(c().jsh || _.bb.h || "")) {
            var f = (a + "#").indexOf("#");
            a = a.substr(0, f) + (-1 !== a.substr(0, f).indexOf("?") ? "&" : "?") + "jsh=" + (0, window.encodeURIComponent)(c) + a.substr(f)
        }
        return a
    };
    Jm = function(a) {
        "function" === typeof a.setAttribute ? a.setAttribute("aria-hidden", "true") : a["aria-hidden"] = "true"
    };
    Ow = {};
    Sw = 0;
    Ve = function(a) {
        return _.P("enableMultilogin") && a("cookie_policy") && !Ei(a) ? !0 : !1
    };
    rE = function(a) {
        a && Pw.push(a);
        a = _.wu;
        var c = window.document.getElementById(a),
            f = (new Date).getTime();
        if (c) {
            if (Sw && 6E4 > f - Sw) return;
            var g = _.T.Wd(a);
            g && (Q_("oauth2relayReady", g), Q_("oauth2callback", g));
            c.parentNode.removeChild(c);
            if (/Firefox/.test(window.navigator.userAgent)) try {
                window.frames[a] = void 0
            } catch (l) {}
            _.Au();
            a = _.wu
        }
        Sw = f;
        var h = String(2147483647 * (0, _.Vb)() | 0);
        c = _.P("oauth-flow/proxyUrl") || _.P("oauth-flow/relayUrl");
        vE() ? MD = _.Sm.Nf({
            where: _.R.Jk(),
            url: c,
            id: a,
            attributes: {
                style: {
                    width: "1px",
                    height: "1px",
                    position: "absolute",
                    top: "-100px",
                    display: "none"
                },
                "aria-hidden": "true"
            },
            dontclear: !0
        }) : (c = [c, "?parent=", (0, window.encodeURIComponent)(_.Rb.Pq(window.location.href)), "#rpctoken=", h, "&forcesecure=1"].join(""), f = _.R.Jk(), g = _.R.Fh({
            name: a,
            id: a
        }), g.src = u0(c), g.style.width = "1px", g.style.height = "1px", g.style.position = "absolute", g.style.top = "-100px", g.tabIndex = -1, Jm(g), f.appendChild(g), _.T.tf(a));
        ND("oauth2relayReady", h, function() {
            Q_("oauth2relayReady", h);
            var a = Pw;
            if (null !== a) {
                Pw = null;
                for (var c = 0, f = a.length; c <
                    f; ++c) a[c]()
            }
        });
        ND("oauth2callback", h, function(a) {
            var c = _.R.Qc;
            a = c(a);
            c = a.state;
            var f = c.replace(/\|.*$/, "");
            f = {}.hasOwnProperty.call(Kw, f) ? Kw[f] : null;
            a.state = f;
            null != a.state && (f = Nw[c], delete Nw[c], Mw(a, f))
        })
    };
    Xb = function(a) {
        a = String(a);
        if (null != (_.e(a, "authuser") || null) || null != (_.e(a, "hd") || null)) return a;
        var c = _.Dh(void 0),
            f;
        null == c ? Ve(function(c) {
            return _.e(a, c) || null
        }) || (f = (0, window.encodeURIComponent)("authuser") + "=0") : f = c.match(/^([-a-z0-9]+[.])+[-a-z0-9]+$/) ? [(0, window.encodeURIComponent)("authuser") + "=", (0, window.encodeURIComponent)(String(c)), "&" + (0, window.encodeURIComponent)("hd") + "=", (0, window.encodeURIComponent)(c)].join("") : ["authuser=", (0, window.encodeURIComponent)(c)].join("");
        c = a.split("#");
        var g = c[0].indexOf("?");
        if (0 > g) c[0] = [c[0], "?", f].join("");
        else {
            var h = [c[0]];
            g < c[0].length - 1 && h.push("&");
            h.push(f);
            c[0] = h.join("")
        }
        return c.join("#")
    };
    Tw = function(a) {
        var c = {
            error: "user_signed_out"
        };
        c.client_id = a.client_id;
        c.g_user_cookie_policy = a.g_user_cookie_policy;
        c.scope = a.scope;
        c.response_type = a.response_type;
        c.session_state = a.session_state;
        return Jw(null, c)
    };
    Uw = function(a, c) {
        a = a || {};
        for (var f in _.Qt) _.kf(a[f]) || (a[f] = _.Qt[f]);
        f = _.P("googleapis/overrideClientId");
        null != f && (a.client_id = f);
        if (!a.redirect_uri || "postmessage" === a.redirect_uri) {
            f = a;
            var g = a.state || "";
            g = String(g);
            if ({}.hasOwnProperty.call(Ow, g)) var h = Ow[g];
            else {
                for (var l = 2147483647 * (0, _.Vb)() | 0;;) {
                    h = String(l);
                    if (!{}.hasOwnProperty.call(Kw, h)) break;
                    l += (0, _.Vb)()
                }
                Kw[h] = g;
                Ow[g] = h
            }
            f.state = h + "|" + (0, _.Vb)();
            Nw[a.state] = c
        }
        c = a.authorize_uri || _.P("oauth-flow/authUrl");
        delete a.authorize_uri;
        c += 0 < c.indexOf("?") ?
            "&" : "?";
        c += _.ck(a);
        c = Xb(c);
        a = _.P("iframes/signin/iframeType");
        "blue" == a ? c += "&e=3100070" : "red" == a ? c += "&e=3100071" : "default" == a && (c += "&e=3100077");
        return c
    };
    Vw = function(a) {
        var c = _.Xu(),
            f = c && c.scope;
        c = a && a.scope;
        c = "string" === typeof c ? c.split(" ") : c || [];
        if (f) {
            f = f.split(" ");
            for (var g = 0; g < f.length; ++g) {
                var h = f[g]; - 1 == _.xd.call(c, h) && c.push(h)
            }
            0 < c.length && (a.scope = c.join(" "))
        }
        return a
    };
    Ww = function(a) {
        if (!_.kf(a.include_granted_scopes)) {
            var c = _.P("include_granted_scopes"),
                f = _.Xu().include_granted_scopes;
            _.kf(c) ? a.include_granted_scopes = !!c : _.kf(f) && (a.include_granted_scopes = "1" == f || "true" == f)
        }
        return a
    };
    _.Xw = function(a) {
        null === Pw ? a && a() : rE(a)
    };
    mG = function(a, c) {
        this.Pka = a;
        this.Qka = c;
        this.Nka = 0;
        this.Oka = (0, _.pa)()
    };
    mG.prototype.execute = function(a) {
        var c = (0, _.pa)();
        c > this.Oka + 1E3 * this.Pka && (this.Nka = 0, this.Oka = c);
        this.Nka < this.Qka && a();
        this.Nka++
    };
    var Zw = function(a, c, f, g) {
            var h = Zv(f),
                l = h[a];
            h[a] = c ? "0" : "1";
            var n = [];
            _.fb(h, function(a, c) {
                n.push(c + "=" + a)
            });
            c = n.join(":");
            f = ZM(f);
            c ? f.write(c) : f.clear();
            h[a] !== l && g && g()
        },
        $w = function(a, c) {
            a = a.split(" ");
            c = c.split(" ");
            for (var f = _.r(), g = 0, h = c.length; g < h; ++g) c[g] && (f[c[g]] = 1);
            g = 0;
            for (h = a.length; g < h; ++g)
                if (a[g] && !f[a[g]]) return !1;
            return !0
        },
        ax = function(a) {
            if (!a) return null;
            var c, f, g = fj(a);
            _.fk.iterate(function(a) {
                var h = _.wj(a);
                h && h.uf && h.ep === g && (!c || h.Gb && !c.Gb || h.Gb == c.Gb && h.Ke > c.Ke) && (c = h, f = a)
            });
            return f
        },
        bx = function(a) {
            if (vE()) {
                var c = _.Sm.Nf({
                    where: _.R.Jk(),
                    url: a.uri,
                    attributes: {
                        style: {
                            width: "1px",
                            height: "1px",
                            position: "absolute",
                            top: "-100px"
                        },
                        "aria-hidden": "true"
                    },
                    dontclear: !0
                });
                window.setTimeout(function() {
                    c.close()
                }, 3E5)
            } else {
                var f = _.R.Jk(),
                    g = _.R.Fh();
                g.src = u0(a.uri);
                g.style.width = "1px";
                g.style.height = "1px";
                g.style.position = "absolute";
                g.style.top = "-100px";
                Jm(g);
                window.setTimeout(function() {
                    g.parentNode && g.parentNode.removeChild(g)
                }, 3E5);
                f.appendChild(g)
            }
        },
        cx = function(a, c) {
            var f = a,
                g = c || function() {};
            if (ww) {
                c = ww.popup;
                var h = ww.after_redirect;
                if (c && "keep_open" != h && !Iw(a)) try {
                    c.close()
                } catch (l) {}
            }
            a = ww = {};
            "key" in f && (a.key = f.key, delete f.key);
            f = Ww(f);
            a.params = Vw(f);
            a.callback = function(a) {
                Iw(f) || !a || a.error || Zw(lw(a), !1, a.cookie_policy);
                ow(a) && Iw(f) && (a = Tw(a));
                g(Jw(f, a))
            };
            a.uri = Uw(f, a);
            return a
        },
        dx = function(a, c) {
            var f = _.r();
            f.client_id = a.client_id;
            f.session_state = a.session_state;
            _.Xw(function() {
                vE() ? MD.send("check_session_state", f, function(a) {
                    c.call(null, a[0])
                }, _.Vz) : _.T.call(_.wu, "check_session_state",
                    Rw(function(a) {
                        c.call(null, a)
                    }), f.session_state, f.client_id)
            })
        },
        oG = void 0,
        sG = function(a, c) {
            this.xk = _.Kp(a);
            this.Rka = new mG(60, c || 60)
        };
    sG.prototype.log = function(a) {
        var c = this;
        this.Rka.execute(function() {
            tG(c, a)
        })
    };
    tG = function(a, c) {
        _.Qp(function() {
            var a = this.xk.clone();
            if (c)
                for (var g in c) _.nj(a, g, c[g]);
            _.mo(a.toString(), function(a) {
                !_.Eu(a.currentTarget) && _.D.console && _.D.console.log && _.D.console.log("You can safely ignore the HTTP error responses above.")
            }, "HEAD")
        }, a)
    };
    ex = function(a) {
        a = _.R.Qc("#" + _.ck(a));
        if (!Iw(a)) return null;
        var c = a.key || ax(a.client_id);
        return (c = kk(c, !0, !0)) && c.client_id === a.client_id && $w(a.scope, c.scope) && $w(a.response_type, c.response_type) ? c : null
    };
    fx = function(a, c) {
        var f = _.R.Qc();
        a.hl = f.lang || f.hl || _.P("lang");
        var g = cx(a, c);
        a.after_redirect && (g.after_redirect = a.after_redirect);
        if (null != a.scope && null != a.client_id) {
            var h = function() {
                    _.Xw(function() {
                        if (g.popup) g.popup.focus();
                        else if (Iw(a)) bx(g);
                        else {
                            var c = Math.min(_.P("oauth-flow/authWindowWidth", 599), window.screen.width - 20),
                                f = Math.min(_.P("oauth-flow/authWindowHeight", 600), window.screen.height - 30),
                                h = (window.screen.width - c) / 2,
                                l = (window.screen.height - f) / 2;
                            ww.popup = window.open(u0(g.uri), "_blank", ["toolbar=no", "location=" + (window.opera ? "no" : "yes"), "directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no", "width=" + c, "height=" + f, "top=" + l, "left=" + h].join())
                        }
                    })
                },
                l = ex(a);
            !_.P("oauth-flow/disableOpt") && l ? (c = _.r(), c.client_id = l.client_id, c.session_state = l.session_state, dx(c, function(a) {
                a ? Mw(l, ww) : h()
            })) : h()
        } else Mw(null, ww), _.kd("Unable to perform authorization: scope and/or client_id parameters missing.")
    };
    ix = function(a) {
        a || (a = _.YF(void 0, !0));
        a && "object" === typeof a || (a = {
            error: "invalid_request",
            error_description: "no callback data"
        });
        var c = a.error_description;
        c && window.console && (window.console.error(a.error), window.console.error(c));
        a.error || (_.bb.drw = null);
        _.Lw(a);
        if (c = a.authuser) _.P("googleapis.config/sessionIndex"), _.Fa("googleapis.config/sessionIndex", c);
        _.Bu.q0(_.mH, a);
        return a
    };
    gx = function(a, c) {
        var f = a || {},
            g = c || function() {};
        _.P("oauth-flow/disableOpt") || _.P("isLoggedIn") || !Iw(f) ? fx(f, g) : (a = _.r(), a.client_id = f.client_id, a.session_state = null, dx(a, function(a) {
            a ? (a = _.r(), a.error = "immediate_failed_user_logged_out", g(Jw(f, a))) : (_.Fa("isLoggedIn", !0), fx(f, g))
        }))
    };
    _.MG = function(a, c, f, g) {
        var h;
        if ("undefined" === typeof oG)
            if ((h = _.P("oauth-flow/loggingUrl")) && "string" === typeof h) {
                var l = _.P("oauth-flow/loggingRateLimit", 60);
                oG = new sG(h, (0, window.parseInt)(l, 10))
            } else oG = null;
        h = oG;
        if (h) try {
            h.log({
                client_id: a,
                type: c,
                gsiwebsdk: f,
                details: g || ""
            })
        } catch (n) {
            _.D.console && _.D.console.log && _.D.console.log("Error while sending error log request: " + n.message)
        }
    };
    jx = function(a, c) {
        var f = lw(a);
        f && (Fs(a), Zw(f, !0, c, function() {
            ix && ix(Tw(a))
        }))
    };
    _.hx = function(a, c) {
        var f = new _.C(function(c, f) {
            var g = function(g) {
                null == g || g.error ? (_.MG(a && a.client_id, "oauth_error", "1", g && g.error), f(g)) : c(g)
            };
            try {
                gx(a, g)
            } catch (n) {
                _.MG(a && a.client_id, "unknown_error", "1", n.message), f(n)
            }
        });
        c && f.then(c, function(a) {
            c(ix(a))
        });
        return f
    };
    _.nH = function(a) {
        _.Kd && (_.Kd.error ? _.Kd.error(a) : _.Kd.log && _.Kd.log(a))
    };
    kx = _.Qj.Qe;
    lx = null;
    _.px = function(a, c) {
        if ("force" !== a.approvalprompt) {
            a = _.nx(a);
            a.prompt = "none";
            delete a.redirect_uri;
            delete a.approval_prompt;
            delete a.immediate;
            if (c = !c) lx ? (a.client_id !== lx.client_id && window.console && window.console.log && window.console.log("Ignoring mismatched page-level auth param client_id=" + a.client_id), c = !0) : (lx = a, c = !1);
            c || ox(a)
        }
    };
    _.nx = function(a) {
        var c = a.redirecturi || "postmessage",
            f = (0, _.Ge)((a.scope || "").replace(/[\s\xa0]+/g, " "));
        c = {
            client_id: a.clientid,
            redirect_uri: c,
            response_type: "code token id_token gsession",
            scope: f
        };
        a.approvalprompt && (c.approval_prompt = a.approvalprompt);
        a.state && (c.state = a.state);
        a.openidrealm && (c["openid.realm"] = a.openidrealm);
        f = "offline" == a.accesstype ? !0 : (f = a.redirecturi) && "postmessage" != f;
        f && (c.access_type = "offline");
        a.requestvisibleactions && (c.request_visible_actions = (0, _.Ge)(a.requestvisibleactions.replace(/[\s\xa0]+/g,
            " ")));
        a.after_redirect && (c.after_redirect = a.after_redirect);
        a.cookiepolicy && "none" !== a.cookiepolicy && (c.cookie_policy = a.cookiepolicy);
        "undefined" != typeof a.includegrantedscopes && (c.include_granted_scopes = a.includegrantedscopes);
        a.e && (c.e = a.e);
        (a = a.authuser || _.P("googleapis.config/sessionIndex")) && (c.authuser = a);
        (a = _.P("useoriginassocialhost")) && (c.use_origin_as_socialhost = a);
        return c
    };
    ox = function(a) {
        _.nf("waaf0", "signin", "0");
        _.hx(a, function(a) {
            _.nf("waaf1", "signin", "0");
            ix(a)
        })
    };
    _.qx = function(a) {
        a = _.nx(a);
        _.Fa("oauth-flow/authWindowWidth", 445);
        _.Fa("oauth-flow/authWindowHeight", 615);
        ox(a)
    };
    _.rx = function(a) {
        _.Bu.unsubscribe(_.mH, a);
        _.Bu.subscribe(_.mH, a)
    };
    var Kx, fw;
    _.Ax = function(a) {
        return a.cookiepolicy ? !0 : (_.sx("cookiepolicy is a required field.  See https://developers.google.com/+/web/signin/#button_attr_cookiepolicy for more information."), !1)
    };
    _.sx = function(a) {
        window.console && (window.console.error ? window.console.error(a) : window.console.log && window.console.log(a))
    };
    _.Jx = function(a, c) {
        var f = _.Xu();
        _.Sl(a, f);
        f = Vw(f);
        if (_.Ax(f)) {
            var g = _.Gx(f);
            _.Hx(f);
            c ? _.La(c, "click", function() {
                _.Ix(f, g)
            }) : _.Ix(f, g)
        }
    };
    _.Gx = function(a) {
        var c = new Kx;
        _.rx(function(f) {
            if (c.Y7 && f && (f.access_token && _.Fa("isPlusUser", !0), f["g-oauth-window"]))
                if (c.Y7 = !1, f.access_token && "consent" == f.prompt) {
                    var g = f["g-oauth-window"];
                    f = f.id_token;
                    var h = a.apppackagename;
                    if (h && g) {
                        var l = !0;
                        try {
                            l = g.closed
                        } catch (n) {}
                        l || (f = _.P("iframes/:socialhost:") + "/_/history/otaappinstall?clientId=" + (0, window.encodeURIComponent)(a.clientid) + "&appId=" + (0, window.encodeURIComponent)(h) + "&idToken=" + (0, window.encodeURIComponent)(f), f = Xb(f), g.location.href = f)
                    }
                } else if (g =
                f["g-oauth-window"], a.apppackagename && g) try {
                g.close()
            } catch (n) {}
        });
        return c
    };
    Kx = function() {
        this.Y7 = !1
    };
    _.Hx = function(a) {
        a = _.Vx(a);
        _.uy(a.callback);
        _.Xw(function() {
            _.px(a)
        })
    };
    _.Vx = function(a) {
        fw(a);
        a.apppackagename && (a.after_redirect = "keep_open");
        a.redirecturi && delete a.redirecturi;
        Ve(function(c) {
            return a[c]
        }) || (a.authuser = 0);
        a.apppackagename && (a.apppackagename = a.apppackagename.replace(/^[\s\xa0]+|[\s\xa0]+$/g, ""));
        return a
    };
    fw = function(a) {
        /^\s*$/.test(a.scope || "") && (a.scope = "https://www.googleapis.com/auth/plus.login")
    };
    _.uy = function(a) {
        if ("string" === typeof a)
            if (window[a]) a = window[a];
            else {
                _.sx('Callback function named "' + a + '" not found');
                return
            }
        a && _.rx(a)
    };
    _.Ix = function(a, c) {
        c.Y7 = !0;
        a = _.Vx(a);
        _.qx(a)
    };
    _.Mu("gapi.auth.authorize", _.hx);
    _.Mu("gapi.auth.checkSessionState", dx);
    _.Mu("gapi.auth.getAuthHeaderValueForFirstParty", kx);
    _.Mu("gapi.auth.getToken", _.YF);
    _.Mu("gapi.auth.getVersionInfo", function(a, c) {
        _.Xw(function() {
            var f = _.lq() || "",
                g = null,
                h = null;
            f && (h = f.split(" "), 2 == h.length && (g = h[1]));
            g ? vE() ? MD.send("get_versioninfo", {
                xapisidHash: g,
                sessionIndex: c
            }, function(c) {
                a(c[0])
            }, _.Vz) : _.T.call(_.wu, "get_versioninfo", Rw(function(c) {
                a(c)
            }), g, c) : a()
        })
    });
    _.Mu("gapi.auth.init", _.Xw);
    _.Mu("gapi.auth.setToken", _.Lw);
    _.Mu("gapi.auth.signIn", function(a) {
        _.Jx(a)
    });
    _.Mu("gapi.auth.signOut", function() {
        var a = _.YF();
        a && jx(a, a.cookie_policy)
    });
    _.Mu("gapi.auth.unsafeUnpackIdToken", Vv);
    _.Mu("gapi.auth._pimf", _.px);
    _.Mu("gapi.auth._oart", pw);
    _.Mu("gapi.auth._guss", function(a) {
        return ZM(a).read()
    });
    var fz = _.Xu();
    fz.clientid && fz.scope && fz.callback && !_.P("disableRealtimeCallback") ? _.Hx(fz) : _.Xw();
});
// Google Inc.

//# sourceURL=https://apis.google.com/_/scs/apps-static/_/js/k=oz.gapi.en_US.Sud46g7fpok.O/m=auth/exm=comments,plusone/rt=j/sv=1/d=1/ed=1/am=AQ/rs=AGLTcCPFHl1IXu74XbQbHUsfyt4sb1K7BQ/cb=gapi.loaded_1
                                    

#48 JavaScript::Eval (size: 70170, repeated: 1) - SHA256: a5c571926bec0ff37c77e42b50f6e988b892bcc9e64c95b6709cf4d58c2419d8

                                        /*! Video.js v4.11.1 Copyright 2014 Brightcove, Inc. https://github.com/videojs/video.js/blob/master/LICENSE */
(function() {
    var b = void 0,
        f = !0,
        k = null,
        l = !1;

    function m() {
        return function() {}
    }

    function n(a) {
        return function() {
            return this[a]
        }
    }

    function r(a) {
        return function() {
            return a
        }
    }
    var s;
    document.createElement("video");
    document.createElement("audio");
    document.createElement("track");

    function t(a, c, d) {
        if ("string" === typeof a) {
            0 === a.indexOf("#") && (a = a.slice(1));
            if (t.Fa[a]) return t.Fa[a];
            a = t.w(a)
        }
        if (!a || !a.nodeName) throw new TypeError("The element or ID supplied is not valid. (videojs)");
        return a.player || new t.Player(a, c, d)
    }
    var videojs = window.videojs = t;
    t.Yb = "4.11";
    t.ed = "https:" == document.location.protocol ? "https://" : "http://";
    t.options = {
        techOrder: ["html5", "flash"],
        html5: {},
        flash: {},
        width: 300,
        height: 150,
        defaultVolume: 0,
        playbackRates: [],
        inactivityTimeout: 2E3,
        children: {
            mediaLoader: {},
            posterImage: {},
            textTrackDisplay: {},
            loadingSpinner: {},
            bigPlayButton: {},
            controlBar: {},
            errorDisplay: {}
        },
        language: document.getElementsByTagName("html")[0].getAttribute("lang") || navigator.languages && navigator.languages[0] || navigator.Me || navigator.language || "en",
        languages: {},
        notSupportedMessage: "No compatible source was found for this video."
    };
    "GENERATED_CDN_VSN" !== t.Yb && (videojs.options.flash.swf = t.ed + "vjs.zencdn.net/" + t.Yb + "/video-js.swf");
    t.sd = function(a, c) {
        t.options.languages[a] = t.options.languages[a] !== b ? t.Z.Ea(t.options.languages[a], c) : c;
        return t.options.languages
    };
    t.Fa = {};
    "function" === typeof define && define.amd ? define([], function() {
        return videojs
    }) : "object" === typeof exports && "object" === typeof module && (module.exports = videojs);
    t.ta = t.CoreObject = m();
    t.ta.extend = function(a) {
        var c, d;
        a = a || {};
        c = a.init || a.i || this.prototype.init || this.prototype.i || m();
        d = function() {
            c.apply(this, arguments)
        };
        d.prototype = t.h.create(this.prototype);
        d.prototype.constructor = d;
        d.extend = t.ta.extend;
        d.create = t.ta.create;
        for (var e in a) a.hasOwnProperty(e) && (d.prototype[e] = a[e]);
        return d
    };
    t.ta.create = function() {
        var a = t.h.create(this.prototype);
        this.apply(a, arguments);
        return a
    };
    t.c = function(a, c, d) {
        if (t.h.isArray(c)) return u(t.c, a, c, d);
        var e = t.getData(a);
        e.C || (e.C = {});
        e.C[c] || (e.C[c] = []);
        d.p || (d.p = t.p++);
        e.C[c].push(d);
        e.W || (e.disabled = l, e.W = function(c) {
            if (!e.disabled) {
                c = t.zc(c);
                var d = e.C[c.type];
                if (d)
                    for (var d = d.slice(0), j = 0, p = d.length; j < p && !c.Gc(); j++) d[j].call(a, c)
            }
        });
        1 == e.C[c].length && (a.addEventListener ? a.addEventListener(c, e.W, l) : a.attachEvent && a.attachEvent("on" + c, e.W))
    };
    t.k = function(a, c, d) {
        if (t.Bc(a)) {
            var e = t.getData(a);
            if (e.C) {
                if (t.h.isArray(c)) return u(t.k, a, c, d);
                if (c) {
                    var g = e.C[c];
                    if (g) {
                        if (d) {
                            if (d.p)
                                for (e = 0; e < g.length; e++) g[e].p === d.p && g.splice(e--, 1)
                        } else e.C[c] = [];
                        t.pc(a, c)
                    }
                } else
                    for (g in e.C) c = g, e.C[c] = [], t.pc(a, c)
            }
        }
    };
    t.pc = function(a, c) {
        var d = t.getData(a);
        0 === d.C[c].length && (delete d.C[c], a.removeEventListener ? a.removeEventListener(c, d.W, l) : a.detachEvent && a.detachEvent("on" + c, d.W));
        t.Kb(d.C) && (delete d.C, delete d.W, delete d.disabled);
        t.Kb(d) && t.Pc(a)
    };
    t.zc = function(a) {
        function c() {
            return f
        }

        function d() {
            return l
        }
        if (!a || !a.Lb) {
            var e = a || window.event;
            a = {};
            for (var g in e) "layerX" !== g && ("layerY" !== g && "keyLocation" !== g) && ("returnValue" == g && e.preventDefault || (a[g] = e[g]));
            a.target || (a.target = a.srcElement || document);
            a.relatedTarget = a.fromElement === a.target ? a.toElement : a.fromElement;
            a.preventDefault = function() {
                e.preventDefault && e.preventDefault();
                a.returnValue = l;
                a.Nd = c;
                a.defaultPrevented = f
            };
            a.Nd = d;
            a.defaultPrevented = l;
            a.stopPropagation = function() {
                e.stopPropagation &&
                    e.stopPropagation();
                a.cancelBubble = f;
                a.Lb = c
            };
            a.Lb = d;
            a.stopImmediatePropagation = function() {
                e.stopImmediatePropagation && e.stopImmediatePropagation();
                a.Gc = c;
                a.stopPropagation()
            };
            a.Gc = d;
            if (a.clientX != k) {
                g = document.documentElement;
                var h = document.body;
                a.pageX = a.clientX + (g && g.scrollLeft || h && h.scrollLeft || 0) - (g && g.clientLeft || h && h.clientLeft || 0);
                a.pageY = a.clientY + (g && g.scrollTop || h && h.scrollTop || 0) - (g && g.clientTop || h && h.clientTop || 0)
            }
            a.which = a.charCode || a.keyCode;
            a.button != k && (a.button = a.button & 1 ? 0 : a.button &
                4 ? 1 : a.button & 2 ? 2 : 0)
        }
        return a
    };
    t.l = function(a, c) {
        var d = t.Bc(a) ? t.getData(a) : {},
            e = a.parentNode || a.ownerDocument;
        "string" === typeof c && (c = {
            type: c,
            target: a
        });
        c = t.zc(c);
        d.W && d.W.call(a, c);
        if (e && !c.Lb() && c.bubbles !== l) t.l(e, c);
        else if (!e && !c.defaultPrevented && (d = t.getData(c.target), c.target[c.type])) {
            d.disabled = f;
            if ("function" === typeof c.target[c.type]) c.target[c.type]();
            d.disabled = l
        }
        return !c.defaultPrevented
    };
    t.Q = function(a, c, d) {
        function e() {
            t.k(a, c, e);
            d.apply(this, arguments)
        }
        if (t.h.isArray(c)) return u(t.Q, a, c, d);
        e.p = d.p = d.p || t.p++;
        t.c(a, c, e)
    };

    function u(a, c, d, e) {
        t.mc.forEach(d, function(d) {
            a(c, d, e)
        })
    }
    var v = Object.prototype.hasOwnProperty;
    t.e = function(a, c) {
        var d;
        c = c || {};
        d = document.createElement(a || "div");
        t.h.X(c, function(a, c) {
            -1 !== a.indexOf("aria-") || "role" == a ? d.setAttribute(a, c) : d[a] = c
        });
        return d
    };
    t.ba = function(a) {
        return a.charAt(0).toUpperCase() + a.slice(1)
    };
    t.h = {};
    t.h.create = Object.create || function(a) {
        function c() {}
        c.prototype = a;
        return new c
    };
    t.h.X = function(a, c, d) {
        for (var e in a) v.call(a, e) && c.call(d || this, e, a[e])
    };
    t.h.z = function(a, c) {
        if (!c) return a;
        for (var d in c) v.call(c, d) && (a[d] = c[d]);
        return a
    };
    t.h.Ad = function(a, c) {
        var d, e, g;
        a = t.h.copy(a);
        for (d in c) v.call(c, d) && (e = a[d], g = c[d], a[d] = t.h.Xa(e) && t.h.Xa(g) ? t.h.Ad(e, g) : c[d]);
        return a
    };
    t.h.copy = function(a) {
        return t.h.z({}, a)
    };
    t.h.Xa = function(a) {
        return !!a && "object" === typeof a && "[object Object]" === a.toString() && a.constructor === Object
    };
    t.h.isArray = Array.isArray || function(a) {
        return "[object Array]" === Object.prototype.toString.call(a)
    };
    t.Pd = function(a) {
        return a !== a
    };
    t.bind = function(a, c, d) {
        function e() {
            return c.apply(a, arguments)
        }
        c.p || (c.p = t.p++);
        e.p = d ? d + "_" + c.p : c.p;
        return e
    };
    t.xa = {};
    t.p = 1;
    t.expando = "vdata" + (new Date).getTime();
    t.getData = function(a) {
        var c = a[t.expando];
        c || (c = a[t.expando] = t.p++, t.xa[c] = {});
        return t.xa[c]
    };
    t.Bc = function(a) {
        a = a[t.expando];
        return !(!a || t.Kb(t.xa[a]))
    };
    t.Pc = function(a) {
        var c = a[t.expando];
        if (c) {
            delete t.xa[c];
            try {
                delete a[t.expando]
            } catch (d) {
                a.removeAttribute ? a.removeAttribute(t.expando) : a[t.expando] = k
            }
        }
    };
    t.Kb = function(a) {
        for (var c in a)
            if (a[c] !== k) return l;
        return f
    };
    t.Wa = function(a, c) {
        return -1 !== (" " + a.className + " ").indexOf(" " + c + " ")
    };
    t.n = function(a, c) {
        t.Wa(a, c) || (a.className = "" === a.className ? c : a.className + " " + c)
    };
    t.r = function(a, c) {
        var d, e;
        if (t.Wa(a, c)) {
            d = a.className.split(" ");
            for (e = d.length - 1; 0 <= e; e--) d[e] === c && d.splice(e, 1);
            a.className = d.join(" ")
        }
    };
    t.A = t.e("video");
    t.N = navigator.userAgent;
    t.md = /iPhone/i.test(t.N);
    t.ld = /iPad/i.test(t.N);
    t.nd = /iPod/i.test(t.N);
    t.kd = t.md || t.ld || t.nd;
    var aa = t,
        x;
    var y = t.N.match(/OS (\d+)_/i);
    x = y && y[1] ? y[1] : b;
    aa.Ae = x;
    t.hd = /Android/i.test(t.N);
    var ba = t,
        z;
    var A = t.N.match(/Android (\d+)(?:\.(\d+))?(?:\.(\d+))*/i),
        B, C;
    A ? (B = A[1] && parseFloat(A[1]), C = A[2] && parseFloat(A[2]), z = B && C ? parseFloat(A[1] + "." + A[2]) : B ? B : k) : z = k;
    ba.Xb = z;
    t.od = t.hd && /webkit/i.test(t.N) && 2.3 > t.Xb;
    t.jd = /Firefox/i.test(t.N);
    t.Be = /Chrome/i.test(t.N);
    t.ic = !!("ontouchstart" in window || window.gd && document instanceof window.gd);
    t.fd = "backgroundSize" in t.A.style;
    t.Sc = function(a, c) {
        t.h.X(c, function(c, e) {
            e === k || "undefined" === typeof e || e === l ? a.removeAttribute(c) : a.setAttribute(c, e === f ? "" : e)
        })
    };
    t.Ca = function(a) {
        var c, d, e, g;
        c = {};
        if (a && a.attributes && 0 < a.attributes.length) {
            d = a.attributes;
            for (var h = d.length - 1; 0 <= h; h--) {
                e = d[h].name;
                g = d[h].value;
                if ("boolean" === typeof a[e] || -1 !== ",autoplay,controls,loop,muted,default,".indexOf("," + e + ",")) g = g !== k ? f : l;
                c[e] = g
            }
        }
        return c
    };
    t.He = function(a, c) {
        var d = "";
        document.defaultView && document.defaultView.getComputedStyle ? d = document.defaultView.getComputedStyle(a, "").getPropertyValue(c) : a.currentStyle && (d = a["client" + c.substr(0, 1).toUpperCase() + c.substr(1)] + "px");
        return d
    };
    t.Jb = function(a, c) {
        c.firstChild ? c.insertBefore(a, c.firstChild) : c.appendChild(a)
    };
    t.Ra = {};
    t.w = function(a) {
        0 === a.indexOf("#") && (a = a.slice(1));
        return document.getElementById(a)
    };
    t.Ba = function(a, c) {
        c = c || a;
        var d = Math.floor(a % 60),
            e = Math.floor(a / 60 % 60),
            g = Math.floor(a / 3600),
            h = Math.floor(c / 60 % 60),
            j = Math.floor(c / 3600);
        if (isNaN(a) || Infinity === a) g = e = d = "-";
        g = 0 < g || 0 < j ? g + ":" : "";
        return g + (((g || 10 <= h) && 10 > e ? "0" + e : e) + ":") + (10 > d ? "0" + d : d)
    };
    t.ud = function() {
        document.body.focus();
        document.onselectstart = r(l)
    };
    t.ve = function() {
        document.onselectstart = r(f)
    };
    t.trim = function(a) {
        return (a + "").replace(/^\s+|\s+$/g, "")
    };
    t.round = function(a, c) {
        c || (c = 0);
        return Math.round(a * Math.pow(10, c)) / Math.pow(10, c)
    };
    t.zb = function(a, c) {
        return {
            length: 1,
            start: function() {
                return a
            },
            end: function() {
                return c
            }
        }
    };
    t.je = function(a) {
        try {
            var c = window.localStorage || l;
            c && (c.volume = a)
        } catch (d) {
            22 == d.code || 1014 == d.code ? t.log("LocalStorage Full (VideoJS)", d) : 18 == d.code ? t.log("LocalStorage not allowed (VideoJS)", d) : t.log("LocalStorage Error (VideoJS)", d)
        }
    };
    t.Jd = function(a) {
        a.match(/^https?:\/\//) || (a = t.e("div", {
            innerHTML: '<a href="' + a + '">x</a>'
        }).firstChild.href);
        return a
    };
    t.fe = function(a) {
        var c, d, e, g;
        g = "protocol hostname port pathname search hash host".split(" ");
        d = t.e("a", {
            href: a
        });
        if (e = "" === d.host && "file:" !== d.protocol) c = t.e("div"), c.innerHTML = '<a href="' + a + '"></a>', d = c.firstChild, c.setAttribute("style", "display:none; position:absolute;"), document.body.appendChild(c);
        a = {};
        for (var h = 0; h < g.length; h++) a[g[h]] = d[g[h]];
        e && document.body.removeChild(c);
        return a
    };

    function D(a, c) {
        var d, e;
        d = Array.prototype.slice.call(c);
        e = m();
        e = window.console || {
            log: e,
            warn: e,
            error: e
        };
        a ? d.unshift(a.toUpperCase() + ":") : a = "log";
        t.log.history.push(d);
        d.unshift("VIDEOJS:");
        if (e[a].apply) e[a].apply(e, d);
        else e[a](d.join(" "))
    }
    t.log = function() {
        D(k, arguments)
    };
    t.log.history = [];
    t.log.error = function() {
        D("error", arguments)
    };
    t.log.warn = function() {
        D("warn", arguments)
    };
    t.Hd = function(a) {
        var c, d;
        a.getBoundingClientRect && a.parentNode && (c = a.getBoundingClientRect());
        if (!c) return {
            left: 0,
            top: 0
        };
        a = document.documentElement;
        d = document.body;
        return {
            left: t.round(c.left + (window.pageXOffset || d.scrollLeft) - (a.clientLeft || d.clientLeft || 0)),
            top: t.round(c.top + (window.pageYOffset || d.scrollTop) - (a.clientTop || d.clientTop || 0))
        }
    };
    t.mc = {};
    t.mc.forEach = function(a, c, d) {
        if (t.h.isArray(a) && c instanceof Function)
            for (var e = 0, g = a.length; e < g; ++e) c.call(d || t, a[e], e, a);
        return a
    };
    t.ye = function(a, c) {
        var d, e, g, h, j, p, q;
        "string" === typeof a && (a = {
            uri: a
        });
        videojs.Z.Ea({
            method: "GET",
            timeout: 45E3
        }, a);
        c = c || m();
        p = function() {
            window.clearTimeout(j);
            c(k, e, e.response || e.responseText)
        };
        q = function(a) {
            window.clearTimeout(j);
            if (!a || "string" === typeof a) a = Error(a);
            c(a, e)
        };
        d = window.XMLHttpRequest;
        "undefined" === typeof d && (d = function() {
            try {
                return new window.ActiveXObject("Msxml2.XMLHTTP.6.0")
            } catch (a) {}
            try {
                return new window.ActiveXObject("Msxml2.XMLHTTP.3.0")
            } catch (c) {}
            try {
                return new window.ActiveXObject("Msxml2.XMLHTTP")
            } catch (d) {}
            throw Error("This browser does not support XMLHttpRequest.");
        });
        e = new d;
        e.uri = a.uri;
        d = t.fe(a.uri);
        g = window.location;
        d.protocol + d.host !== g.protocol + g.host && window.XDomainRequest && !("withCredentials" in e) ? (e = new window.XDomainRequest, e.onload = p, e.onerror = q, e.onprogress = m(), e.ontimeout = m()) : (h = "file:" == d.protocol || "file:" == g.protocol, e.onreadystatechange = function() {
            if (4 === e.readyState) {
                if (e.te) return q("timeout");
                200 === e.status || h && 0 === e.status ? p() : q()
            }
        }, a.timeout && (j = window.setTimeout(function() {
            4 !== e.readyState && (e.te = f, e.abort())
        }, a.timeout)));
        try {
            e.open(a.method ||
                "GET", a.uri, f)
        } catch (w) {
            q(w);
            return
        }
        a.withCredentials && (e.withCredentials = f);
        a.responseType && (e.responseType = a.responseType);
        try {
            e.send()
        } catch (ja) {
            q(ja)
        }
    };
    t.Z = {};
    t.Z.Ea = function(a, c) {
        var d, e, g;
        a = t.h.copy(a);
        for (d in c) c.hasOwnProperty(d) && (e = a[d], g = c[d], a[d] = t.h.Xa(e) && t.h.Xa(g) ? t.Z.Ea(e, g) : c[d]);
        return a
    };
    t.a = t.ta.extend({
        i: function(a, c, d) {
            this.d = a;
            this.m = t.h.copy(this.m);
            c = this.options(c);
            this.K = c.id || c.el && c.el.id;
            this.K || (this.K = (a.id && a.id() || "no_player") + "_component_" + t.p++);
            this.Vd = c.name || k;
            this.b = c.el || this.e();
            this.O = [];
            this.Ta = {};
            this.Ua = {};
            this.Dc();
            this.H(d);
            if (c.Qc !== l) {
                var e, g;
                this.j().reportUserActivity && (e = t.bind(this.j(), this.j().reportUserActivity), this.c("touchstart", function() {
                    e();
                    this.clearInterval(g);
                    g = this.setInterval(e, 250)
                }), a = function() {
                    e();
                    this.clearInterval(g)
                }, this.c("touchmove",
                    e), this.c("touchend", a), this.c("touchcancel", a))
            }
        }
    });
    s = t.a.prototype;
    s.dispose = function() {
        this.l({
            type: "dispose",
            bubbles: l
        });
        if (this.O)
            for (var a = this.O.length - 1; 0 <= a; a--) this.O[a].dispose && this.O[a].dispose();
        this.Ua = this.Ta = this.O = k;
        this.k();
        this.b.parentNode && this.b.parentNode.removeChild(this.b);
        t.Pc(this.b);
        this.b = k
    };
    s.d = f;
    s.j = n("d");
    s.options = function(a) {
        return a === b ? this.m : this.m = t.Z.Ea(this.m, a)
    };
    s.e = function(a, c) {
        return t.e(a, c)
    };
    s.t = function(a) {
        var c = this.d.language(),
            d = this.d.languages();
        return d && d[c] && d[c][a] ? d[c][a] : a
    };
    s.w = n("b");
    s.la = function() {
        return this.v || this.b
    };
    s.id = n("K");
    s.name = n("Vd");
    s.children = n("O");
    s.Kd = function(a) {
        return this.Ta[a]
    };
    s.ma = function(a) {
        return this.Ua[a]
    };
    s.U = function(a, c) {
        var d, e;
        "string" === typeof a ? (e = a, c = c || {}, d = c.componentClass || t.ba(e), c.name = e, d = new window.videojs[d](this.d || this, c)) : d = a;
        this.O.push(d);
        "function" === typeof d.id && (this.Ta[d.id()] = d);
        (e = e || d.name && d.name()) && (this.Ua[e] = d);
        "function" === typeof d.el && d.el() && this.la().appendChild(d.el());
        return d
    };
    s.removeChild = function(a) {
        "string" === typeof a && (a = this.ma(a));
        if (a && this.O) {
            for (var c = l, d = this.O.length - 1; 0 <= d; d--)
                if (this.O[d] === a) {
                    c = f;
                    this.O.splice(d, 1);
                    break
                }
            c && (this.Ta[a.id] = k, this.Ua[a.name] = k, (c = a.w()) && c.parentNode === this.la() && this.la().removeChild(a.w()))
        }
    };
    s.Dc = function() {
        var a, c, d, e, g, h;
        a = this;
        c = a.options();
        if (d = c.children)
            if (h = function(d, e) {
                    c[d] !== b && (e = c[d]);
                    e !== l && (a[d] = a.U(d, e))
                }, t.h.isArray(d))
                for (var j = 0; j < d.length; j++) e = d[j], "string" == typeof e ? (g = e, e = {}) : g = e.name, h(g, e);
            else t.h.X(d, h)
    };
    s.S = r("");
    s.c = function(a, c, d) {
        var e, g, h;
        "string" === typeof a || t.h.isArray(a) ? t.c(this.b, a, t.bind(this, c)) : (e = t.bind(this, d), h = this, g = function() {
            h.k(a, c, e)
        }, g.p = e.p, this.c("dispose", g), d = function() {
            h.k("dispose", g)
        }, d.p = e.p, a.nodeName ? (t.c(a, c, e), t.c(a, "dispose", d)) : "function" === typeof a.c && (a.c(c, e), a.c("dispose", d)));
        return this
    };
    s.k = function(a, c, d) {
        !a || "string" === typeof a || t.h.isArray(a) ? t.k(this.b, a, c) : (d = t.bind(this, d), this.k("dispose", d), a.nodeName ? (t.k(a, c, d), t.k(a, "dispose", d)) : (a.k(c, d), a.k("dispose", d)));
        return this
    };
    s.Q = function(a, c, d) {
        var e, g, h;
        "string" === typeof a || t.h.isArray(a) ? t.Q(this.b, a, t.bind(this, c)) : (e = t.bind(this, d), g = this, h = function() {
            g.k(a, c, h);
            e.apply(this, arguments)
        }, h.p = e.p, this.c(a, c, h));
        return this
    };
    s.l = function(a) {
        t.l(this.b, a);
        return this
    };
    s.H = function(a) {
        a && (this.na ? a.call(this) : (this.cb === b && (this.cb = []), this.cb.push(a)));
        return this
    };
    s.Ja = function() {
        this.na = f;
        var a = this.cb;
        if (a && 0 < a.length) {
            for (var c = 0, d = a.length; c < d; c++) a[c].call(this);
            this.cb = [];
            this.l("ready")
        }
    };
    s.Wa = function(a) {
        return t.Wa(this.b, a)
    };
    s.n = function(a) {
        t.n(this.b, a);
        return this
    };
    s.r = function(a) {
        t.r(this.b, a);
        return this
    };
    s.show = function() {
        this.b.style.display = "block";
        return this
    };
    s.Y = function() {
        this.b.style.display = "none";
        return this
    };

    function E(a) {
        a.r("vjs-lock-showing")
    }
    s.disable = function() {
        this.Y();
        this.show = m()
    };
    s.width = function(a, c) {
        return F(this, "width", a, c)
    };
    s.height = function(a, c) {
        return F(this, "height", a, c)
    };
    s.Dd = function(a, c) {
        return this.width(a, f).height(c)
    };

    function F(a, c, d, e) {
        if (d !== b) {
            if (d === k || t.Pd(d)) d = 0;
            a.b.style[c] = -1 !== ("" + d).indexOf("%") || -1 !== ("" + d).indexOf("px") ? d : "auto" === d ? "" : d + "px";
            e || a.l("resize");
            return a
        }
        if (!a.b) return 0;
        d = a.b.style[c];
        e = d.indexOf("px");
        return -1 !== e ? parseInt(d.slice(0, e), 10) : parseInt(a.b["offset" + t.ba(c)], 10)
    }

    function G(a) {
        var c, d, e, g, h, j, p, q;
        c = 0;
        d = k;
        a.c("touchstart", function(a) {
            1 === a.touches.length && (d = a.touches[0], c = (new Date).getTime(), g = f)
        });
        a.c("touchmove", function(a) {
            1 < a.touches.length ? g = l : d && (j = a.touches[0].pageX - d.pageX, p = a.touches[0].pageY - d.pageY, q = Math.sqrt(j * j + p * p), 22 < q && (g = l))
        });
        h = function() {
            g = l
        };
        a.c("touchleave", h);
        a.c("touchcancel", h);
        a.c("touchend", function(a) {
            d = k;
            g === f && (e = (new Date).getTime() - c, 250 > e && (a.preventDefault(), this.l("tap")))
        })
    }
    s.setTimeout = function(a, c) {
        function d() {
            this.clearTimeout(e)
        }
        a = t.bind(this, a);
        var e = setTimeout(a, c);
        d.p = "vjs-timeout-" + e;
        this.c("dispose", d);
        return e
    };
    s.clearTimeout = function(a) {
        function c() {}
        clearTimeout(a);
        c.p = "vjs-timeout-" + a;
        this.k("dispose", c);
        return a
    };
    s.setInterval = function(a, c) {
        function d() {
            this.clearInterval(e)
        }
        a = t.bind(this, a);
        var e = setInterval(a, c);
        d.p = "vjs-interval-" + e;
        this.c("dispose", d);
        return e
    };
    s.clearInterval = function(a) {
        function c() {}
        clearInterval(a);
        c.p = "vjs-interval-" + a;
        this.k("dispose", c);
        return a
    };
    t.u = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c);
            G(this);
            this.c("tap", this.s);
            this.c("click", this.s);
            this.c("focus", this.ab);
            this.c("blur", this.$a)
        }
    });
    s = t.u.prototype;
    s.e = function(a, c) {
        var d;
        c = t.h.z({
            className: this.S(),
            role: "button",
            "aria-live": "polite",
            tabIndex: 0
        }, c);
        d = t.a.prototype.e.call(this, a, c);
        c.innerHTML || (this.v = t.e("div", {
            className: "vjs-control-content"
        }), this.xb = t.e("span", {
            className: "vjs-control-text",
            innerHTML: this.t(this.wa) || "Need Text"
        }), this.v.appendChild(this.xb), d.appendChild(this.v));
        return d
    };
    s.S = function() {
        return "vjs-control " + t.a.prototype.S.call(this)
    };
    s.s = m();
    s.ab = function() {
        t.c(document, "keydown", t.bind(this, this.ea))
    };
    s.ea = function(a) {
        if (32 == a.which || 13 == a.which) a.preventDefault(), this.s()
    };
    s.$a = function() {
        t.k(document, "keydown", t.bind(this, this.ea))
    };
    t.R = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c);
            this.td = this.ma(this.m.barName);
            this.handle = this.ma(this.m.handleName);
            this.c("mousedown", this.bb);
            this.c("touchstart", this.bb);
            this.c("focus", this.ab);
            this.c("blur", this.$a);
            this.c("click", this.s);
            this.c(a, "controlsvisible", this.update);
            this.c(a, this.Lc, this.update)
        }
    });
    s = t.R.prototype;
    s.e = function(a, c) {
        c = c || {};
        c.className += " vjs-slider";
        c = t.h.z({
            role: "slider",
            "aria-valuenow": 0,
            "aria-valuemin": 0,
            "aria-valuemax": 100,
            tabIndex: 0
        }, c);
        return t.a.prototype.e.call(this, a, c)
    };
    s.bb = function(a) {
        a.preventDefault();
        t.ud();
        this.n("vjs-sliding");
        this.c(document, "mousemove", this.fa);
        this.c(document, "mouseup", this.pa);
        this.c(document, "touchmove", this.fa);
        this.c(document, "touchend", this.pa);
        this.fa(a)
    };
    s.fa = m();
    s.pa = function() {
        t.ve();
        this.r("vjs-sliding");
        this.k(document, "mousemove", this.fa);
        this.k(document, "mouseup", this.pa);
        this.k(document, "touchmove", this.fa);
        this.k(document, "touchend", this.pa);
        this.update()
    };
    s.update = function() {
        if (this.b) {
            var a, c = this.Hb(),
                d = this.handle,
                e = this.td;
            isNaN(c) && (c = 0);
            a = c;
            if (d) {
                a = this.b.offsetWidth;
                var g = d.w().offsetWidth;
                a = g ? g / a : 0;
                c *= 1 - a;
                a = c + a / 2;
                d.w().style.left = t.round(100 * c, 2) + "%"
            }
            e && (e.w().style.width = t.round(100 * a, 2) + "%")
        }
    };

    function H(a, c) {
        var d, e, g, h;
        d = a.b;
        e = t.Hd(d);
        h = g = d.offsetWidth;
        d = a.handle;
        if (a.options().vertical) return h = e.top, e = c.changedTouches ? c.changedTouches[0].pageY : c.pageY, d && (d = d.w().offsetHeight, h += d / 2, g -= d), Math.max(0, Math.min(1, (h - e + g) / g));
        g = e.left;
        e = c.changedTouches ? c.changedTouches[0].pageX : c.pageX;
        d && (d = d.w().offsetWidth, g += d / 2, h -= d);
        return Math.max(0, Math.min(1, (e - g) / h))
    }
    s.ab = function() {
        this.c(document, "keydown", this.ea)
    };
    s.ea = function(a) {
        if (37 == a.which || 40 == a.which) a.preventDefault(), this.Xc();
        else if (38 == a.which || 39 == a.which) a.preventDefault(), this.Yc()
    };
    s.$a = function() {
        this.k(document, "keydown", this.ea)
    };
    s.s = function(a) {
        a.stopImmediatePropagation();
        a.preventDefault()
    };
    t.$ = t.a.extend();
    t.$.prototype.defaultValue = 0;
    t.$.prototype.e = function(a, c) {
        c = c || {};
        c.className += " vjs-slider-handle";
        c = t.h.z({
            innerHTML: '<span class="vjs-control-text">' + this.defaultValue + "</span>"
        }, c);
        return t.a.prototype.e.call(this, "div", c)
    };
    t.ja = t.a.extend();

    function ca(a, c) {
        a.U(c);
        c.c("click", t.bind(a, function() {
            E(this)
        }))
    }
    t.ja.prototype.e = function() {
        var a = this.options().rc || "ul";
        this.v = t.e(a, {
            className: "vjs-menu-content"
        });
        a = t.a.prototype.e.call(this, "div", {
            append: this.v,
            className: "vjs-menu"
        });
        a.appendChild(this.v);
        t.c(a, "click", function(a) {
            a.preventDefault();
            a.stopImmediatePropagation()
        });
        return a
    };
    t.J = t.u.extend({
        i: function(a, c) {
            t.u.call(this, a, c);
            this.selected(c.selected)
        }
    });
    t.J.prototype.e = function(a, c) {
        return t.u.prototype.e.call(this, "li", t.h.z({
            className: "vjs-menu-item",
            innerHTML: this.t(this.m.label)
        }, c))
    };
    t.J.prototype.s = function() {
        this.selected(f)
    };
    t.J.prototype.selected = function(a) {
        a ? (this.n("vjs-selected"), this.b.setAttribute("aria-selected", f)) : (this.r("vjs-selected"), this.b.setAttribute("aria-selected", l))
    };
    t.M = t.u.extend({
        i: function(a, c) {
            t.u.call(this, a, c);
            this.Da = this.za();
            this.U(this.Da);
            this.P && 0 === this.P.length && this.Y();
            this.c("keydown", this.ea);
            this.b.setAttribute("aria-haspopup", f);
            this.b.setAttribute("role", "button")
        }
    });
    s = t.M.prototype;
    s.va = l;
    s.za = function() {
        var a = new t.ja(this.d);
        this.options().title && a.la().appendChild(t.e("li", {
            className: "vjs-menu-title",
            innerHTML: t.ba(this.options().title),
            re: -1
        }));
        if (this.P = this.createItems())
            for (var c = 0; c < this.P.length; c++) ca(a, this.P[c]);
        return a
    };
    s.ya = m();
    s.S = function() {
        return this.className + " vjs-menu-button " + t.u.prototype.S.call(this)
    };
    s.ab = m();
    s.$a = m();
    s.s = function() {
        this.Q("mouseout", t.bind(this, function() {
            E(this.Da);
            this.b.blur()
        }));
        this.va ? I(this) : J(this)
    };
    s.ea = function(a) {
        a.preventDefault();
        32 == a.which || 13 == a.which ? this.va ? I(this) : J(this) : 27 == a.which && this.va && I(this)
    };

    function J(a) {
        a.va = f;
        a.Da.n("vjs-lock-showing");
        a.b.setAttribute("aria-pressed", f);
        a.P && 0 < a.P.length && a.P[0].w().focus()
    }

    function I(a) {
        a.va = l;
        E(a.Da);
        a.b.setAttribute("aria-pressed", l)
    }
    t.D = function(a) {
        "number" === typeof a ? this.code = a : "string" === typeof a ? this.message = a : "object" === typeof a && t.h.z(this, a);
        this.message || (this.message = t.D.Bd[this.code] || "")
    };
    t.D.prototype.code = 0;
    t.D.prototype.message = "";
    t.D.prototype.status = k;
    t.D.Va = "MEDIA_ERR_CUSTOM MEDIA_ERR_ABORTED MEDIA_ERR_NETWORK MEDIA_ERR_DECODE MEDIA_ERR_SRC_NOT_SUPPORTED MEDIA_ERR_ENCRYPTED".split(" ");
    t.D.Bd = {
        1: "You aborted the video playback",
        2: "A network error caused the video download to fail part-way.",
        3: "The video playback was aborted due to a corruption problem or because the video used features your browser did not support.",
        4: "The video could not be loaded, either because the server or network failed or because the format is not supported.",
        5: "The video is encrypted and we do not have the keys to decrypt it."
    };
    for (var K = 0; K < t.D.Va.length; K++) t.D[t.D.Va[K]] = K, t.D.prototype[t.D.Va[K]] = K;
    var L, M, N, O;
    L = ["requestFullscreen exitFullscreen fullscreenElement fullscreenEnabled fullscreenchange fullscreenerror".split(" "), "webkitRequestFullscreen webkitExitFullscreen webkitFullscreenElement webkitFullscreenEnabled webkitfullscreenchange webkitfullscreenerror".split(" "), "webkitRequestFullScreen webkitCancelFullScreen webkitCurrentFullScreenElement webkitCancelFullScreen webkitfullscreenchange webkitfullscreenerror".split(" "), "mozRequestFullScreen mozCancelFullScreen mozFullScreenElement mozFullScreenEnabled mozfullscreenchange mozfullscreenerror".split(" "), "msRequestFullscreen msExitFullscreen msFullscreenElement msFullscreenEnabled MSFullscreenChange MSFullscreenError".split(" ")];
    M = L[0];
    for (O = 0; O < L.length; O++)
        if (L[O][1] in document) {
            N = L[O];
            break
        }
    if (N) {
        t.Ra.Gb = {};
        for (O = 0; O < N.length; O++) t.Ra.Gb[M[O]] = N[O]
    }
    t.Player = t.a.extend({
        i: function(a, c, d) {
            this.I = a;
            a.id = a.id || "vjs_video_" + t.p++;
            this.se = a && t.Ca(a);
            c = t.h.z(da(a), c);
            this.Ya = c.language || t.options.language;
            this.Td = c.languages || t.options.languages;
            this.F = {};
            this.Mc = c.poster || "";
            this.yb = !!c.controls;
            a.controls = l;
            c.Qc = l;
            P(this, "audio" === this.I.nodeName.toLowerCase());
            t.a.call(this, this, c, d);
            this.controls() ? this.n("vjs-controls-enabled") : this.n("vjs-controls-disabled");
            P(this) && this.n("vjs-audio");
            t.Fa[this.K] = this;
            c.plugins && t.h.X(c.plugins, function(a,
                c) {
                this[a](c)
            }, this);
            var e, g, h, j, p;
            e = t.bind(this, this.reportUserActivity);
            this.c("mousedown", function() {
                e();
                this.clearInterval(g);
                g = this.setInterval(e, 250)
            });
            this.c("mousemove", function(a) {
                if (a.screenX != j || a.screenY != p) j = a.screenX, p = a.screenY, e()
            });
            this.c("mouseup", function() {
                e();
                this.clearInterval(g)
            });
            this.c("keydown", e);
            this.c("keyup", e);
            this.setInterval(function() {
                if (this.sa) {
                    this.sa = l;
                    this.userActive(f);
                    this.clearTimeout(h);
                    var a = this.options().inactivityTimeout;
                    0 < a && (h = this.setTimeout(function() {
                        this.sa ||
                            this.userActive(l)
                    }, a))
                }
            }, 250)
        }
    });
    s = t.Player.prototype;
    s.language = function(a) {
        if (a === b) return this.Ya;
        this.Ya = a;
        return this
    };
    s.languages = n("Td");
    s.m = t.options;
    s.dispose = function() {
        this.l("dispose");
        this.k("dispose");
        t.Fa[this.K] = k;
        this.I && this.I.player && (this.I.player = k);
        this.b && this.b.player && (this.b.player = k);
        this.o && this.o.dispose();
        t.a.prototype.dispose.call(this)
    };

    function da(a) {
        var c, d, e = {
            sources: [],
            tracks: []
        };
        c = t.Ca(a);
        d = c["data-setup"];
        d !== k && t.h.z(c, t.JSON.parse(d || "{}"));
        t.h.z(e, c);
        if (a.hasChildNodes()) {
            var g, h;
            a = a.childNodes;
            g = 0;
            for (h = a.length; g < h; g++) c = a[g], d = c.nodeName.toLowerCase(), "source" === d ? e.sources.push(t.Ca(c)) : "track" === d && e.tracks.push(t.Ca(c))
        }
        return e
    }
    s.e = function() {
        var a = this.b = t.a.prototype.e.call(this, "div"),
            c = this.I,
            d;
        c.removeAttribute("width");
        c.removeAttribute("height");
        if (c.hasChildNodes()) {
            var e, g, h, j, p;
            e = c.childNodes;
            g = e.length;
            for (p = []; g--;) h = e[g], j = h.nodeName.toLowerCase(), "track" === j && p.push(h);
            for (e = 0; e < p.length; e++) c.removeChild(p[e])
        }
        d = t.Ca(c);
        t.h.X(d, function(c) {
            "class" == c ? a.className = d[c] : a.setAttribute(c, d[c])
        });
        c.id += "_html5_api";
        c.className = "vjs-tech";
        c.player = a.player = this;
        this.n("vjs-paused");
        this.width(this.m.width, f);
        this.height(this.m.height,
            f);
        c.Md = c.networkState;
        c.parentNode && c.parentNode.insertBefore(a, c);
        t.Jb(c, a);
        this.b = a;
        this.c("loadstart", this.Zd);
        this.c("waiting", this.ee);
        this.c(["canplay", "canplaythrough", "playing", "ended"], this.de);
        this.c("seeking", this.be);
        this.c("seeked", this.ae);
        this.c("ended", this.Wd);
        this.c("play", this.Pb);
        this.c("firstplay", this.Xd);
        this.c("pause", this.Ob);
        this.c("progress", this.$d);
        this.c("durationchange", this.Jc);
        this.c("fullscreenchange", this.Yd);
        return a
    };

    function Q(a, c, d) {
        a.o && (a.na = l, a.o.dispose(), a.o = l);
        "Html5" !== c && a.I && (t.g.Bb(a.I), a.I = k);
        a.gb = c;
        a.na = l;
        var e = t.h.z({
            source: d,
            parentEl: a.b
        }, a.m[c.toLowerCase()]);
        d && (a.uc = d.type, d.src == a.F.src && 0 < a.F.currentTime && (e.startTime = a.F.currentTime), a.F.src = d.src);
        a.o = new window.videojs[c](a, e);
        a.o.H(function() {
            this.d.Ja()
        })
    }
    s.Zd = function() {
        this.error(k);
        this.paused() ? (R(this, l), this.Q("play", function() {
            R(this, f)
        })) : this.l("firstplay")
    };
    s.Cc = l;

    function R(a, c) {
        c !== b && a.Cc !== c && ((a.Cc = c) ? (a.n("vjs-has-started"), a.l("firstplay")) : a.r("vjs-has-started"))
    }
    s.Pb = function() {
        this.r("vjs-paused");
        this.n("vjs-playing")
    };
    s.ee = function() {
        this.n("vjs-waiting")
    };
    s.de = function() {
        this.r("vjs-waiting")
    };
    s.be = function() {
        this.n("vjs-seeking")
    };
    s.ae = function() {
        this.r("vjs-seeking")
    };
    s.Xd = function() {
        this.m.starttime && this.currentTime(this.m.starttime);
        this.n("vjs-has-started")
    };
    s.Ob = function() {
        this.r("vjs-playing");
        this.n("vjs-paused")
    };
    s.$d = function() {
        1 == this.bufferedPercent() && this.l("loadedalldata")
    };
    s.Wd = function() {
        this.m.loop ? (this.currentTime(0), this.play()) : this.paused() || this.pause()
    };
    s.Jc = function() {
        var a = S(this, "duration");
        a && (0 > a && (a = Infinity), this.duration(a), Infinity === a ? this.n("vjs-live") : this.r("vjs-live"))
    };
    s.Yd = function() {
        this.isFullscreen() ? this.n("vjs-fullscreen") : this.r("vjs-fullscreen")
    };

    function T(a, c, d) {
        if (a.o && !a.o.na) a.o.H(function() {
            this[c](d)
        });
        else try {
            a.o[c](d)
        } catch (e) {
            throw t.log(e), e;
        }
    }

    function S(a, c) {
        if (a.o && a.o.na) try {
            return a.o[c]()
        } catch (d) {
            throw a.o[c] === b ? t.log("Video.js: " + c + " method not defined for " + a.gb + " playback technology.", d) : "TypeError" == d.name ? (t.log("Video.js: " + c + " unavailable on " + a.gb + " playback technology element.", d), a.o.na = l) : t.log(d), d;
        }
    }
    s.play = function() {
        T(this, "play");
        return this
    };
    s.pause = function() {
        T(this, "pause");
        return this
    };
    s.paused = function() {
        return S(this, "paused") === l ? l : f
    };
    s.currentTime = function(a) {
        return a !== b ? (T(this, "setCurrentTime", a), this) : this.F.currentTime = S(this, "currentTime") || 0
    };
    s.duration = function(a) {
        if (a !== b) return this.F.duration = parseFloat(a), this;
        this.F.duration === b && this.Jc();
        return this.F.duration || 0
    };
    s.remainingTime = function() {
        return this.duration() - this.currentTime()
    };
    s.buffered = function() {
        var a = S(this, "buffered");
        if (!a || !a.length) a = t.zb(0, 0);
        return a
    };
    s.bufferedPercent = function() {
        var a = this.duration(),
            c = this.buffered(),
            d = 0,
            e, g;
        if (!a) return 0;
        for (var h = 0; h < c.length; h++) e = c.start(h), g = c.end(h), g > a && (g = a), d += g - e;
        return d / a
    };
    s.volume = function(a) {
        if (a !== b) return a = Math.max(0, Math.min(1, parseFloat(a))), this.F.volume = a, T(this, "setVolume", a), t.je(a), this;
        a = parseFloat(S(this, "volume"));
        return isNaN(a) ? 1 : a
    };
    s.muted = function(a) {
        return a !== b ? (T(this, "setMuted", a), this) : S(this, "muted") || l
    };
    s.Ha = function() {
        return S(this, "supportsFullScreen") || l
    };
    s.Fc = l;
    s.isFullscreen = function(a) {
        return a !== b ? (this.Fc = !!a, this) : this.Fc
    };
    s.isFullScreen = function(a) {
        t.log.warn('player.isFullScreen() has been deprecated, use player.isFullscreen() with a lowercase "s")');
        return this.isFullscreen(a)
    };
    s.requestFullscreen = function() {
        var a = t.Ra.Gb;
        this.isFullscreen(f);
        a ? (t.c(document, a.fullscreenchange, t.bind(this, function(c) {
            this.isFullscreen(document[a.fullscreenElement]);
            this.isFullscreen() === l && t.k(document, a.fullscreenchange, arguments.callee);
            this.l("fullscreenchange")
        })), this.b[a.requestFullscreen]()) : this.o.Ha() ? T(this, "enterFullScreen") : (this.yc(), this.l("fullscreenchange"));
        return this
    };
    s.requestFullScreen = function() {
        t.log.warn('player.requestFullScreen() has been deprecated, use player.requestFullscreen() with a lowercase "s")');
        return this.requestFullscreen()
    };
    s.exitFullscreen = function() {
        var a = t.Ra.Gb;
        this.isFullscreen(l);
        if (a) document[a.exitFullscreen]();
        else this.o.Ha() ? T(this, "exitFullScreen") : (this.Db(), this.l("fullscreenchange"));
        return this
    };
    s.cancelFullScreen = function() {
        t.log.warn("player.cancelFullScreen() has been deprecated, use player.exitFullscreen()");
        return this.exitFullscreen()
    };
    s.yc = function() {
        this.Od = f;
        this.Ed = document.documentElement.style.overflow;
        t.c(document, "keydown", t.bind(this, this.Ac));
        document.documentElement.style.overflow = "hidden";
        t.n(document.body, "vjs-full-window");
        this.l("enterFullWindow")
    };
    s.Ac = function(a) {
        27 === a.keyCode && (this.isFullscreen() === f ? this.exitFullscreen() : this.Db())
    };
    s.Db = function() {
        this.Od = l;
        t.k(document, "keydown", this.Ac);
        document.documentElement.style.overflow = this.Ed;
        t.r(document.body, "vjs-full-window");
        this.l("exitFullWindow")
    };
    s.selectSource = function(a) {
        for (var c = 0, d = this.m.techOrder; c < d.length; c++) {
            var e = t.ba(d[c]),
                g = window.videojs[e];
            if (g) {
                if (g.isSupported())
                    for (var h = 0, j = a; h < j.length; h++) {
                        var p = j[h];
                        if (g.canPlaySource(p)) return {
                            source: p,
                            o: e
                        }
                    }
            } else t.log.error('The "' + e + '" tech is undefined. Skipped browser support check for that tech.')
        }
        return l
    };
    s.src = function(a) {
        if (a === b) return S(this, "src");
        t.h.isArray(a) ? U(this, a) : "string" === typeof a ? this.src({
            src: a
        }) : a instanceof Object && (a.type && !window.videojs[this.gb].canPlaySource(a) ? U(this, [a]) : (this.F.src = a.src, this.uc = a.type || "", this.H(function() {
            this.o.setSource ? T(this, "setSource", a) : T(this, "src", a.src);
            "auto" == this.m.preload && this.load();
            this.m.autoplay && this.play()
        })));
        return this
    };

    function U(a, c) {
        var d = a.selectSource(c);
        d ? d.o === a.gb ? a.src(d.source) : Q(a, d.o, d.source) : (a.setTimeout(function() {
            this.error({
                code: 4,
                message: this.t(this.options().notSupportedMessage)
            })
        }, 0), a.Ja())
    }
    s.load = function() {
        T(this, "load");
        return this
    };
    s.currentSrc = function() {
        return S(this, "currentSrc") || this.F.src || ""
    };
    s.zd = function() {
        return this.uc || ""
    };
    s.Ga = function(a) {
        return a !== b ? (T(this, "setPreload", a), this.m.preload = a, this) : S(this, "preload")
    };
    s.autoplay = function(a) {
        return a !== b ? (T(this, "setAutoplay", a), this.m.autoplay = a, this) : S(this, "autoplay")
    };
    s.loop = function(a) {
        return a !== b ? (T(this, "setLoop", a), this.m.loop = a, this) : S(this, "loop")
    };
    s.poster = function(a) {
        if (a === b) return this.Mc;
        a || (a = "");
        this.Mc = a;
        T(this, "setPoster", a);
        this.l("posterchange");
        return this
    };
    s.controls = function(a) {
        return a !== b ? (a = !!a, this.yb !== a && ((this.yb = a) ? (this.r("vjs-controls-disabled"), this.n("vjs-controls-enabled"), this.l("controlsenabled")) : (this.r("vjs-controls-enabled"), this.n("vjs-controls-disabled"), this.l("controlsdisabled"))), this) : this.yb
    };
    t.Player.prototype.Wb;
    s = t.Player.prototype;
    s.usingNativeControls = function(a) {
        return a !== b ? (a = !!a, this.Wb !== a && ((this.Wb = a) ? (this.n("vjs-using-native-controls"), this.l("usingnativecontrols")) : (this.r("vjs-using-native-controls"), this.l("usingcustomcontrols"))), this) : this.Wb
    };
    s.da = k;
    s.error = function(a) {
        if (a === b) return this.da;
        if (a === k) return this.da = a, this.r("vjs-error"), this;
        this.da = a instanceof t.D ? a : new t.D(a);
        this.l("error");
        this.n("vjs-error");
        t.log.error("(CODE:" + this.da.code + " " + t.D.Va[this.da.code] + ")", this.da.message, this.da);
        return this
    };
    s.ended = function() {
        return S(this, "ended")
    };
    s.seeking = function() {
        return S(this, "seeking")
    };
    s.sa = f;
    s.reportUserActivity = function() {
        this.sa = f
    };
    s.Vb = f;
    s.userActive = function(a) {
        return a !== b ? (a = !!a, a !== this.Vb && ((this.Vb = a) ? (this.sa = f, this.r("vjs-user-inactive"), this.n("vjs-user-active"), this.l("useractive")) : (this.sa = l, this.o && this.o.Q("mousemove", function(a) {
            a.stopPropagation();
            a.preventDefault()
        }), this.r("vjs-user-active"), this.n("vjs-user-inactive"), this.l("userinactive"))), this) : this.Vb
    };
    s.playbackRate = function(a) {
        return a !== b ? (T(this, "setPlaybackRate", a), this) : this.o && this.o.featuresPlaybackRate ? S(this, "playbackRate") : 1
    };
    s.Ec = l;

    function P(a, c) {
        return c !== b ? (a.Ec = !!c, a) : a.Ec
    }
    t.Ma = t.a.extend();
    t.Ma.prototype.m = {
        Ie: "play",
        children: {
            playToggle: {},
            currentTimeDisplay: {},
            timeDivider: {},
            durationDisplay: {},
            remainingTimeDisplay: {},
            liveDisplay: {},
            progressControl: {},
            fullscreenToggle: {},
            volumeControl: {},
            muteToggle: {},
            playbackRateMenuButton: {}
        }
    };
    t.Ma.prototype.e = function() {
        return t.e("div", {
            className: "vjs-control-bar"
        })
    };
    t.ac = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c)
        }
    });
    t.ac.prototype.e = function() {
        var a = t.a.prototype.e.call(this, "div", {
            className: "vjs-live-controls vjs-control"
        });
        this.v = t.e("div", {
            className: "vjs-live-display",
            innerHTML: '<span class="vjs-control-text">' + this.t("Stream Type") + "</span>" + this.t("LIVE"),
            "aria-live": "off"
        });
        a.appendChild(this.v);
        return a
    };
    t.dc = t.u.extend({
        i: function(a, c) {
            t.u.call(this, a, c);
            this.c(a, "play", this.Pb);
            this.c(a, "pause", this.Ob)
        }
    });
    s = t.dc.prototype;
    s.wa = "Play";
    s.S = function() {
        return "vjs-play-control " + t.u.prototype.S.call(this)
    };
    s.s = function() {
        this.d.paused() ? this.d.play() : this.d.pause()
    };
    s.Pb = function() {
        this.r("vjs-paused");
        this.n("vjs-playing");
        this.b.children[0].children[0].innerHTML = this.t("Pause")
    };
    s.Ob = function() {
        this.r("vjs-playing");
        this.n("vjs-paused");
        this.b.children[0].children[0].innerHTML = this.t("Play")
    };
    t.jb = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c);
            this.c(a, "timeupdate", this.ia)
        }
    });
    t.jb.prototype.e = function() {
        var a = t.a.prototype.e.call(this, "div", {
            className: "vjs-current-time vjs-time-controls vjs-control"
        });
        this.v = t.e("div", {
            className: "vjs-current-time-display",
            innerHTML: '<span class="vjs-control-text">Current Time </span>0:00',
            "aria-live": "off"
        });
        a.appendChild(this.v);
        return a
    };
    t.jb.prototype.ia = function() {
        var a = this.d.eb ? this.d.F.currentTime : this.d.currentTime();
        this.v.innerHTML = '<span class="vjs-control-text">' + this.t("Current Time") + "</span> " + t.Ba(a, this.d.duration())
    };
    t.kb = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c);
            this.c(a, "timeupdate", this.ia)
        }
    });
    t.kb.prototype.e = function() {
        var a = t.a.prototype.e.call(this, "div", {
            className: "vjs-duration vjs-time-controls vjs-control"
        });
        this.v = t.e("div", {
            className: "vjs-duration-display",
            innerHTML: '<span class="vjs-control-text">' + this.t("Duration Time") + "</span> 0:00",
            "aria-live": "off"
        });
        a.appendChild(this.v);
        return a
    };
    t.kb.prototype.ia = function() {
        var a = this.d.duration();
        a && (this.v.innerHTML = '<span class="vjs-control-text">' + this.t("Duration Time") + "</span> " + t.Ba(a))
    };
    t.kc = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c)
        }
    });
    t.kc.prototype.e = function() {
        return t.a.prototype.e.call(this, "div", {
            className: "vjs-time-divider",
            innerHTML: "<div><span>/</span></div>"
        })
    };
    t.rb = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c);
            this.c(a, "timeupdate", this.ia)
        }
    });
    t.rb.prototype.e = function() {
        var a = t.a.prototype.e.call(this, "div", {
            className: "vjs-remaining-time vjs-time-controls vjs-control"
        });
        this.v = t.e("div", {
            className: "vjs-remaining-time-display",
            innerHTML: '<span class="vjs-control-text">' + this.t("Remaining Time") + "</span> -0:00",
            "aria-live": "off"
        });
        a.appendChild(this.v);
        return a
    };
    t.rb.prototype.ia = function() {
        this.d.duration() && (this.v.innerHTML = '<span class="vjs-control-text">' + this.t("Remaining Time") + "</span> -" + t.Ba(this.d.remainingTime()))
    };
    t.Na = t.u.extend({
        i: function(a, c) {
            t.u.call(this, a, c)
        }
    });
    t.Na.prototype.wa = "Fullscreen";
    t.Na.prototype.S = function() {
        return "vjs-fullscreen-control " + t.u.prototype.S.call(this)
    };
    t.Na.prototype.s = function() {
        this.d.isFullscreen() ? (this.d.exitFullscreen(), this.xb.innerHTML = this.t("Fullscreen")) : (this.d.requestFullscreen(), this.xb.innerHTML = this.t("Non-Fullscreen"))
    };
    t.qb = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c)
        }
    });
    t.qb.prototype.m = {
        children: {
            seekBar: {}
        }
    };
    t.qb.prototype.e = function() {
        return t.a.prototype.e.call(this, "div", {
            className: "vjs-progress-control vjs-control"
        })
    };
    t.gc = t.R.extend({
        i: function(a, c) {
            t.R.call(this, a, c);
            this.c(a, "timeupdate", this.ra);
            a.H(t.bind(this, this.ra))
        }
    });
    s = t.gc.prototype;
    s.m = {
        children: {
            loadProgressBar: {},
            playProgressBar: {},
            seekHandle: {}
        },
        barName: "playProgressBar",
        handleName: "seekHandle"
    };
    s.Lc = "timeupdate";
    s.e = function() {
        return t.R.prototype.e.call(this, "div", {
            className: "vjs-progress-holder",
            "aria-label": "video progress bar"
        })
    };
    s.ra = function() {
        var a = this.d.eb ? this.d.F.currentTime : this.d.currentTime();
        this.b.setAttribute("aria-valuenow", t.round(100 * this.Hb(), 2));
        this.b.setAttribute("aria-valuetext", t.Ba(a, this.d.duration()))
    };
    s.Hb = function() {
        return this.d.currentTime() / this.d.duration()
    };
    s.bb = function(a) {
        t.R.prototype.bb.call(this, a);
        this.d.eb = f;
        this.xe = !this.d.paused();
        this.d.pause()
    };
    s.fa = function(a) {
        a = H(this, a) * this.d.duration();
        a == this.d.duration() && (a -= 0.1);
        this.d.currentTime(a)
    };
    s.pa = function(a) {
        t.R.prototype.pa.call(this, a);
        this.d.eb = l;
        this.xe && this.d.play()
    };
    s.Yc = function() {
        this.d.currentTime(this.d.currentTime() + 5)
    };
    s.Xc = function() {
        this.d.currentTime(this.d.currentTime() - 5)
    };
    t.nb = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c);
            this.c(a, "progress", this.update)
        }
    });
    t.nb.prototype.e = function() {
        return t.a.prototype.e.call(this, "div", {
            className: "vjs-load-progress",
            innerHTML: '<span class="vjs-control-text"><span>' + this.t("Loaded") + "</span>: 0%</span>"
        })
    };
    t.nb.prototype.update = function() {
        var a, c, d, e, g = this.d.buffered();
        a = this.d.duration();
        var h, j = this.d;
        h = j.buffered();
        j = j.duration();
        h = h.end(h.length - 1);
        h > j && (h = j);
        j = this.b.children;
        this.b.style.width = 100 * (h / a || 0) + "%";
        for (a = 0; a < g.length; a++) c = g.start(a), d = g.end(a), (e = j[a]) || (e = this.b.appendChild(t.e())), e.style.left = 100 * (c / h || 0) + "%", e.style.width = 100 * ((d - c) / h || 0) + "%";
        for (a = j.length; a > g.length; a--) this.b.removeChild(j[a - 1])
    };
    t.cc = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c)
        }
    });
    t.cc.prototype.e = function() {
        return t.a.prototype.e.call(this, "div", {
            className: "vjs-play-progress",
            innerHTML: '<span class="vjs-control-text"><span>' + this.t("Progress") + "</span>: 0%</span>"
        })
    };
    t.Oa = t.$.extend({
        i: function(a, c) {
            t.$.call(this, a, c);
            this.c(a, "timeupdate", this.ia)
        }
    });
    t.Oa.prototype.defaultValue = "00:00";
    t.Oa.prototype.e = function() {
        return t.$.prototype.e.call(this, "div", {
            className: "vjs-seek-handle",
            "aria-live": "off"
        })
    };
    t.Oa.prototype.ia = function() {
        var a = this.d.eb ? this.d.F.currentTime : this.d.currentTime();
        this.b.innerHTML = '<span class="vjs-control-text">' + t.Ba(a, this.d.duration()) + "</span>"
    };
    t.tb = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c);
            a.o && a.o.featuresVolumeControl === l && this.n("vjs-hidden");
            this.c(a, "loadstart", function() {
                a.o.featuresVolumeControl === l ? this.n("vjs-hidden") : this.r("vjs-hidden")
            })
        }
    });
    t.tb.prototype.m = {
        children: {
            volumeBar: {}
        }
    };
    t.tb.prototype.e = function() {
        return t.a.prototype.e.call(this, "div", {
            className: "vjs-volume-control vjs-control"
        })
    };
    t.sb = t.R.extend({
        i: function(a, c) {
            t.R.call(this, a, c);
            this.c(a, "volumechange", this.ra);
            a.H(t.bind(this, this.ra))
        }
    });
    s = t.sb.prototype;
    s.ra = function() {
        this.b.setAttribute("aria-valuenow", t.round(100 * this.d.volume(), 2));
        this.b.setAttribute("aria-valuetext", t.round(100 * this.d.volume(), 2) + "%")
    };
    s.m = {
        children: {
            volumeLevel: {},
            volumeHandle: {}
        },
        barName: "volumeLevel",
        handleName: "volumeHandle"
    };
    s.Lc = "volumechange";
    s.e = function() {
        return t.R.prototype.e.call(this, "div", {
            className: "vjs-volume-bar",
            "aria-label": "volume level"
        })
    };
    s.fa = function(a) {
        this.d.muted() && this.d.muted(l);
        this.d.volume(H(this, a))
    };
    s.Hb = function() {
        return this.d.muted() ? 0 : this.d.volume()
    };
    s.Yc = function() {
        this.d.volume(this.d.volume() + 0.1)
    };
    s.Xc = function() {
        this.d.volume(this.d.volume() - 0.1)
    };
    t.lc = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c)
        }
    });
    t.lc.prototype.e = function() {
        return t.a.prototype.e.call(this, "div", {
            className: "vjs-volume-level",
            innerHTML: '<span class="vjs-control-text"></span>'
        })
    };
    t.ub = t.$.extend();
    t.ub.prototype.defaultValue = "00:00";
    t.ub.prototype.e = function() {
        return t.$.prototype.e.call(this, "div", {
            className: "vjs-volume-handle"
        })
    };
    t.ka = t.u.extend({
        i: function(a, c) {
            t.u.call(this, a, c);
            this.c(a, "volumechange", this.update);
            a.o && a.o.featuresVolumeControl === l && this.n("vjs-hidden");
            this.c(a, "loadstart", function() {
                a.o.featuresVolumeControl === l ? this.n("vjs-hidden") : this.r("vjs-hidden")
            })
        }
    });
    t.ka.prototype.e = function() {
        return t.u.prototype.e.call(this, "div", {
            className: "vjs-mute-control vjs-control",
            innerHTML: '<div><span class="vjs-control-text">' + this.t("Mute") + "</span></div>"
        })
    };
    t.ka.prototype.s = function() {
        this.d.muted(this.d.muted() ? l : f)
    };
    t.ka.prototype.update = function() {
        var a = this.d.volume(),
            c = 3;
        0 === a || this.d.muted() ? c = 0 : 0.33 > a ? c = 1 : 0.67 > a && (c = 2);
        this.d.muted() ? this.b.children[0].children[0].innerHTML != this.t("Unmute") && (this.b.children[0].children[0].innerHTML = this.t("Unmute")) : this.b.children[0].children[0].innerHTML != this.t("Mute") && (this.b.children[0].children[0].innerHTML = this.t("Mute"));
        for (a = 0; 4 > a; a++) t.r(this.b, "vjs-vol-" + a);
        t.n(this.b, "vjs-vol-" + c)
    };
    t.ua = t.M.extend({
        i: function(a, c) {
            t.M.call(this, a, c);
            this.c(a, "volumechange", this.update);
            a.o && a.o.featuresVolumeControl === l && this.n("vjs-hidden");
            this.c(a, "loadstart", function() {
                a.o.featuresVolumeControl === l ? this.n("vjs-hidden") : this.r("vjs-hidden")
            });
            this.n("vjs-menu-button")
        }
    });
    t.ua.prototype.za = function() {
        var a = new t.ja(this.d, {
                rc: "div"
            }),
            c = new t.sb(this.d, this.m.volumeBar);
        c.c("focus", function() {
            a.n("vjs-lock-showing")
        });
        c.c("blur", function() {
            E(a)
        });
        a.U(c);
        return a
    };
    t.ua.prototype.s = function() {
        t.ka.prototype.s.call(this);
        t.M.prototype.s.call(this)
    };
    t.ua.prototype.e = function() {
        return t.u.prototype.e.call(this, "div", {
            className: "vjs-volume-menu-button vjs-menu-button vjs-control",
            innerHTML: '<div><span class="vjs-control-text">' + this.t("Mute") + "</span></div>"
        })
    };
    t.ua.prototype.update = t.ka.prototype.update;
    t.ec = t.M.extend({
        i: function(a, c) {
            t.M.call(this, a, c);
            this.bd();
            this.ad();
            this.c(a, "loadstart", this.bd);
            this.c(a, "ratechange", this.ad)
        }
    });
    s = t.ec.prototype;
    s.e = function() {
        var a = t.a.prototype.e.call(this, "div", {
            className: "vjs-playback-rate vjs-menu-button vjs-control",
            innerHTML: '<div class="vjs-control-content"><span class="vjs-control-text">' + this.t("Playback Rate") + "</span></div>"
        });
        this.Hc = t.e("div", {
            className: "vjs-playback-rate-value",
            innerHTML: 1
        });
        a.appendChild(this.Hc);
        return a
    };
    s.za = function() {
        var a = new t.ja(this.j()),
            c = this.j().options().playbackRates;
        if (c)
            for (var d = c.length - 1; 0 <= d; d--) a.U(new t.pb(this.j(), {
                rate: c[d] + "x"
            }));
        return a
    };
    s.ra = function() {
        this.w().setAttribute("aria-valuenow", this.j().playbackRate())
    };
    s.s = function() {
        for (var a = this.j().playbackRate(), c = this.j().options().playbackRates, d = c[0], e = 0; e < c.length; e++)
            if (c[e] > a) {
                d = c[e];
                break
            }
        this.j().playbackRate(d)
    };

    function ea(a) {
        return a.j().o && a.j().o.featuresPlaybackRate && a.j().options().playbackRates && 0 < a.j().options().playbackRates.length
    }
    s.bd = function() {
        ea(this) ? this.r("vjs-hidden") : this.n("vjs-hidden")
    };
    s.ad = function() {
        ea(this) && (this.Hc.innerHTML = this.j().playbackRate() + "x")
    };
    t.pb = t.J.extend({
        rc: "button",
        i: function(a, c) {
            var d = this.label = c.rate,
                e = this.Oc = parseFloat(d, 10);
            c.label = d;
            c.selected = 1 === e;
            t.J.call(this, a, c);
            this.c(a, "ratechange", this.update)
        }
    });
    t.pb.prototype.s = function() {
        t.J.prototype.s.call(this);
        this.j().playbackRate(this.Oc)
    };
    t.pb.prototype.update = function() {
        this.selected(this.j().playbackRate() == this.Oc)
    };
    t.fc = t.u.extend({
        i: function(a, c) {
            t.u.call(this, a, c);
            this.update();
            a.c("posterchange", t.bind(this, this.update))
        }
    });
    s = t.fc.prototype;
    s.dispose = function() {
        this.j().k("posterchange", this.update);
        t.u.prototype.dispose.call(this)
    };
    s.e = function() {
        var a = t.e("div", {
            className: "vjs-poster",
            tabIndex: -1
        });
        t.fd || (this.Eb = t.e("img"), a.appendChild(this.Eb));
        return a
    };
    s.update = function() {
        var a = this.j().poster();
        this.ga(a);
        a ? this.b.style.display = "" : this.Y()
    };
    s.ga = function(a) {
        var c;
        this.Eb ? this.Eb.src = a : (c = "", a && (c = 'url("' + a + '")'), this.b.style.backgroundImage = c)
    };
    s.s = function() {
        this.d.play()
    };
    t.bc = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c)
        }
    });
    t.bc.prototype.e = function() {
        return t.a.prototype.e.call(this, "div", {
            className: "vjs-loading-spinner"
        })
    };
    t.hb = t.u.extend();
    t.hb.prototype.e = function() {
        return t.u.prototype.e.call(this, "div", {
            className: "vjs-big-play-button",
            innerHTML: '<span aria-hidden="true"></span>',
            "aria-label": "play video"
        })
    };
    t.hb.prototype.s = function() {
        this.d.play()
    };
    t.lb = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c);
            this.update();
            this.c(a, "error", this.update)
        }
    });
    t.lb.prototype.e = function() {
        var a = t.a.prototype.e.call(this, "div", {
            className: "vjs-error-display"
        });
        this.v = t.e("div");
        a.appendChild(this.v);
        return a
    };
    t.lb.prototype.update = function() {
        this.j().error() && (this.v.innerHTML = this.t(this.j().error().message))
    };
    t.q = t.a.extend({
        i: function(a, c, d) {
            c = c || {};
            c.Qc = l;
            t.a.call(this, a, c, d);
            this.featuresProgressEvents || (this.Ic = f, this.Nc = this.setInterval(function() {
                var a = this.j().bufferedPercent();
                this.vd != a && this.j().l("progress");
                this.vd = a;
                1 === a && this.clearInterval(this.Nc)
            }, 500));
            this.featuresTimeupdateEvents || (a = this.d, this.Nb = f, this.c(a, "play", this.$c), this.c(a, "pause", this.fb), this.Q("timeupdate", function() {
                this.featuresTimeupdateEvents = f;
                fa(this)
            }));
            var e;
            e = this.j();
            a = function() {
                if (e.controls() && !e.usingNativeControls()) {
                    var a;
                    this.c("mousedown", this.s);
                    this.c("touchstart", function() {
                        a = this.d.userActive()
                    });
                    this.c("touchmove", function() {
                        a && this.j().reportUserActivity()
                    });
                    this.c("touchend", function(a) {
                        a.preventDefault()
                    });
                    G(this);
                    this.c("tap", this.ce)
                }
            };
            this.H(a);
            this.c(e, "controlsenabled", a);
            this.c(e, "controlsdisabled", this.he);
            this.H(function() {
                this.networkState && 0 < this.networkState() && this.j().l("loadstart")
            })
        }
    });
    s = t.q.prototype;
    s.he = function() {
        this.k("tap");
        this.k("touchstart");
        this.k("touchmove");
        this.k("touchleave");
        this.k("touchcancel");
        this.k("touchend");
        this.k("click");
        this.k("mousedown")
    };
    s.s = function(a) {
        0 === a.button && this.j().controls() && (this.j().paused() ? this.j().play() : this.j().pause())
    };
    s.ce = function() {
        this.j().userActive(!this.j().userActive())
    };

    function fa(a) {
        a.Nb = l;
        a.fb();
        a.k("play", a.$c);
        a.k("pause", a.fb)
    }
    s.$c = function() {
        this.tc && this.fb();
        this.tc = this.setInterval(function() {
            this.j().l("timeupdate")
        }, 250)
    };
    s.fb = function() {
        this.clearInterval(this.tc);
        this.j().l("timeupdate")
    };
    s.dispose = function() {
        this.Ic && (this.Ic = l, this.clearInterval(this.Nc));
        this.Nb && fa(this);
        t.a.prototype.dispose.call(this)
    };
    s.Tb = function() {
        this.Nb && this.j().l("timeupdate")
    };
    s.Tc = m();
    t.q.prototype.featuresVolumeControl = f;
    t.q.prototype.featuresFullscreenResize = l;
    t.q.prototype.featuresPlaybackRate = l;
    t.q.prototype.featuresProgressEvents = l;
    t.q.prototype.featuresTimeupdateEvents = l;
    t.q.dd = function(a) {
        a.Rb = function(c) {
            var d, e = a.Vc;
            e || (e = a.Vc = []);
            d === b && (d = e.length);
            e.splice(d, 0, c)
        };
        a.Rc = function(c) {
            for (var d = a.Vc || [], e, g = 0; g < d.length; g++)
                if (e = d[g].Sa(c)) return d[g];
            return k
        };
        a.oc = function(c) {
            var d = a.Rc(c);
            return d ? d.Sa(c) : ""
        };
        a.prototype.Uc = function(c) {
            var d = a.Rc(c);
            this.Cb();
            this.k("dispose", this.Cb);
            this.sc = c;
            this.Ub = d.Ib(c, this);
            this.c("dispose", this.Cb)
        };
        a.prototype.Cb = function() {
            this.Ub && this.Ub.dispose && this.Ub.dispose()
        }
    };
    t.g = t.q.extend({
        i: function(a, c, d) {
            t.q.call(this, a, c, d);
            for (d = t.g.mb.length - 1; 0 <= d; d--) this.c(t.g.mb[d], this.Fd);
            (c = c.source) && (this.b.currentSrc !== c.src || a.I && 3 === a.I.Md) && this.Uc(c);
            if (t.ic && a.options().nativeControlsForTouch === f) {
                var e, g, h, j;
                e = this;
                g = this.j();
                c = g.controls();
                e.b.controls = !!c;
                h = function() {
                    e.b.controls = f
                };
                j = function() {
                    e.b.controls = l
                };
                g.c("controlsenabled", h);
                g.c("controlsdisabled", j);
                c = function() {
                    g.k("controlsenabled", h);
                    g.k("controlsdisabled", j)
                };
                e.c("dispose", c);
                g.c("usingcustomcontrols",
                    c);
                g.usingNativeControls(f)
            }
            a.H(function() {
                this.I && (this.m.autoplay && this.paused()) && (delete this.I.poster, this.play())
            });
            this.Ja()
        }
    });
    s = t.g.prototype;
    s.dispose = function() {
        t.g.Bb(this.b);
        t.q.prototype.dispose.call(this)
    };
    s.e = function() {
        var a = this.d,
            c = a.I,
            d;
        if (!c || this.movingMediaElementInDOM === l) c ? (d = c.cloneNode(l), t.g.Bb(c), c = d, a.I = k) : (c = t.e("video"), t.Sc(c, t.h.z(a.se || {}, {
            id: a.id() + "_html5_api",
            "class": "vjs-tech"
        }))), c.player = a, t.Jb(c, a.w());
        d = ["autoplay", "preload", "loop", "muted"];
        for (var e = d.length - 1; 0 <= e; e--) {
            var g = d[e],
                h = {};
            "undefined" !== typeof a.m[g] && (h[g] = a.m[g]);
            t.Sc(c, h)
        }
        return c
    };
    s.Fd = function(a) {
        "error" == a.type && this.error() ? this.j().error(this.error().code) : (a.bubbles = l, this.j().l(a))
    };
    s.play = function() {
        this.b.play()
    };
    s.pause = function() {
        this.b.pause()
    };
    s.paused = function() {
        return this.b.paused
    };
    s.currentTime = function() {
        return this.b.currentTime
    };
    s.Tb = function(a) {
        try {
            this.b.currentTime = a
        } catch (c) {
            t.log(c, "Video is not ready. (Video.js)")
        }
    };
    s.duration = function() {
        return this.b.duration || 0
    };
    s.buffered = function() {
        return this.b.buffered
    };
    s.volume = function() {
        return this.b.volume
    };
    s.oe = function(a) {
        this.b.volume = a
    };
    s.muted = function() {
        return this.b.muted
    };
    s.le = function(a) {
        this.b.muted = a
    };
    s.width = function() {
        return this.b.offsetWidth
    };
    s.height = function() {
        return this.b.offsetHeight
    };
    s.Ha = function() {
        return "function" == typeof this.b.webkitEnterFullScreen && (/Android/.test(t.N) || !/Chrome|Mac OS X 10.5/.test(t.N)) ? f : l
    };
    s.xc = function() {
        var a = this.b;
        "webkitDisplayingFullscreen" in a && this.Q("webkitbeginfullscreen", function() {
            this.d.isFullscreen(f);
            this.Q("webkitendfullscreen", function() {
                this.d.isFullscreen(l);
                this.d.l("fullscreenchange")
            });
            this.d.l("fullscreenchange")
        });
        a.paused && a.networkState <= a.ze ? (this.b.play(), this.setTimeout(function() {
            a.pause();
            a.webkitEnterFullScreen()
        }, 0)) : a.webkitEnterFullScreen()
    };
    s.Gd = function() {
        this.b.webkitExitFullScreen()
    };
    s.src = function(a) {
        if (a === b) return this.b.src;
        this.ga(a)
    };
    s.ga = function(a) {
        this.b.src = a
    };
    s.load = function() {
        this.b.load()
    };
    s.currentSrc = function() {
        return this.b.currentSrc
    };
    s.poster = function() {
        return this.b.poster
    };
    s.Tc = function(a) {
        this.b.poster = a
    };
    s.Ga = function() {
        return this.b.Ga
    };
    s.ne = function(a) {
        this.b.Ga = a
    };
    s.autoplay = function() {
        return this.b.autoplay
    };
    s.ie = function(a) {
        this.b.autoplay = a
    };
    s.controls = function() {
        return this.b.controls
    };
    s.loop = function() {
        return this.b.loop
    };
    s.ke = function(a) {
        this.b.loop = a
    };
    s.error = function() {
        return this.b.error
    };
    s.seeking = function() {
        return this.b.seeking
    };
    s.ended = function() {
        return this.b.ended
    };
    s.playbackRate = function() {
        return this.b.playbackRate
    };
    s.me = function(a) {
        this.b.playbackRate = a
    };
    s.networkState = function() {
        return this.b.networkState
    };
    t.g.isSupported = function() {
        try {
            t.A.volume = 0.5
        } catch (a) {
            return l
        }
        return !!t.A.canPlayType
    };
    t.q.dd(t.g);
    t.g.V = {};
    t.g.V.Sa = function(a) {
        function c(a) {
            try {
                return !!t.A.canPlayType(a)
            } catch (c) {
                return ""
            }
        }
        if (a.type) return c(a.type);
        a = a.src.match(/\.([^\/\?]+)(\?[^\/]+)?$/i)[1];
        return c("video/" + a)
    };
    t.g.V.Ib = function(a, c) {
        c.ga(a.src)
    };
    t.g.V.dispose = m();
    t.g.Rb(t.g.V);
    t.g.xd = function() {
        var a = t.A.volume;
        t.A.volume = a / 2 + 0.1;
        return a !== t.A.volume
    };
    t.g.wd = function() {
        var a = t.A.playbackRate;
        t.A.playbackRate = a / 2 + 0.1;
        return a !== t.A.playbackRate
    };
    t.g.prototype.featuresVolumeControl = t.g.xd();
    t.g.prototype.featuresPlaybackRate = t.g.wd();
    t.g.prototype.movingMediaElementInDOM = !t.kd;
    t.g.prototype.featuresFullscreenResize = f;
    t.g.prototype.featuresProgressEvents = f;
    var V, ga = /^application\/(?:x-|vnd\.apple\.)mpegurl/i,
        ha = /^video\/mp4/i;
    t.g.Kc = function() {
        4 <= t.Xb && (V || (V = t.A.constructor.prototype.canPlayType), t.A.constructor.prototype.canPlayType = function(a) {
            return a && ga.test(a) ? "maybe" : V.call(this, a)
        });
        t.od && (V || (V = t.A.constructor.prototype.canPlayType), t.A.constructor.prototype.canPlayType = function(a) {
            return a && ha.test(a) ? "maybe" : V.call(this, a)
        })
    };
    t.g.we = function() {
        var a = t.A.constructor.prototype.canPlayType;
        t.A.constructor.prototype.canPlayType = V;
        V = k;
        return a
    };
    t.g.Kc();
    t.g.mb = "loadstart suspend abort error emptied stalled loadedmetadata loadeddata canplay canplaythrough playing waiting seeking seeked ended durationchange timeupdate progress play pause ratechange volumechange".split(" ");
    t.g.Bb = function(a) {
        if (a) {
            a.player = k;
            for (a.parentNode && a.parentNode.removeChild(a); a.hasChildNodes();) a.removeChild(a.firstChild);
            a.removeAttribute("src");
            if ("function" === typeof a.load) try {
                a.load()
            } catch (c) {}
        }
    };
    t.f = t.q.extend({
        i: function(a, c, d) {
            t.q.call(this, a, c, d);
            var e = c.source;
            d = c.parentEl;
            var g = this.b = t.e("div", {
                    id: a.id() + "_temp_flash"
                }),
                h = a.id() + "_flash_api",
                j = a.m,
                j = t.h.z({
                    readyFunction: "videojs.Flash.onReady",
                    eventProxyFunction: "videojs.Flash.onEvent",
                    errorEventProxyFunction: "videojs.Flash.onError",
                    autoplay: j.autoplay,
                    preload: j.Ga,
                    loop: j.loop,
                    muted: j.muted
                }, c.flashVars),
                p = t.h.z({
                    wmode: "opaque",
                    bgcolor: "#000000"
                }, c.params),
                h = t.h.z({
                    id: h,
                    name: h,
                    "class": "vjs-tech"
                }, c.attributes);
            e && this.H(function() {
                this.Uc(e)
            });
            t.Jb(g, d);
            c.startTime && this.H(function() {
                this.load();
                this.play();
                this.currentTime(c.startTime)
            });
            t.jd && this.H(function() {
                this.c("mousemove", function() {
                    this.j().l({
                        type: "mousemove",
                        bubbles: l
                    })
                })
            });
            a.c("stageclick", a.reportUserActivity);
            this.b = t.f.wc(c.swf, g, j, p, h)
        }
    });
    s = t.f.prototype;
    s.dispose = function() {
        t.q.prototype.dispose.call(this)
    };
    s.play = function() {
        this.b.vjs_play()
    };
    s.pause = function() {
        this.b.vjs_pause()
    };
    s.src = function(a) {
        return a === b ? this.currentSrc() : this.ga(a)
    };
    s.ga = function(a) {
        a = t.Jd(a);
        this.b.vjs_src(a);
        if (this.d.autoplay()) {
            var c = this;
            this.setTimeout(function() {
                c.play()
            }, 0)
        }
    };
    t.f.prototype.setCurrentTime = function(a) {
        this.Ud = a;
        this.b.vjs_setProperty("currentTime", a);
        t.q.prototype.Tb.call(this)
    };
    t.f.prototype.currentTime = function() {
        return this.seeking() ? this.Ud || 0 : this.b.vjs_getProperty("currentTime")
    };
    t.f.prototype.currentSrc = function() {
        return this.sc ? this.sc.src : this.b.vjs_getProperty("currentSrc")
    };
    t.f.prototype.load = function() {
        this.b.vjs_load()
    };
    t.f.prototype.poster = function() {
        this.b.vjs_getProperty("poster")
    };
    t.f.prototype.setPoster = m();
    t.f.prototype.buffered = function() {
        return t.zb(0, this.b.vjs_getProperty("buffered"))
    };
    t.f.prototype.Ha = r(l);
    t.f.prototype.xc = r(l);

    function ia() {
        var a = W[X],
            c = a.charAt(0).toUpperCase() + a.slice(1);
        ka["set" + c] = function(c) {
            return this.b.vjs_setProperty(a, c)
        }
    }

    function la(a) {
        ka[a] = function() {
            return this.b.vjs_getProperty(a)
        }
    }
    var ka = t.f.prototype,
        W = "rtmpConnection rtmpStream preload defaultPlaybackRate playbackRate autoplay loop mediaGroup controller controls volume muted defaultMuted".split(" "),
        ma = "error networkState readyState seeking initialTime duration startOffsetTime paused played seekable ended videoTracks audioTracks videoWidth videoHeight textTracks".split(" "),
        X;
    for (X = 0; X < W.length; X++) la(W[X]), ia();
    for (X = 0; X < ma.length; X++) la(ma[X]);
    t.f.isSupported = function() {
        return 10 <= t.f.version()[0]
    };
    t.q.dd(t.f);
    t.f.V = {};
    t.f.V.Sa = function(a) {
        return !a.type ? "" : a.type.replace(/;.*/, "").toLowerCase() in t.f.Id ? "maybe" : ""
    };
    t.f.V.Ib = function(a, c) {
        c.ga(a.src)
    };
    t.f.V.dispose = m();
    t.f.Rb(t.f.V);
    t.f.Id = {
        "video/flv": "FLV",
        "video/x-flv": "FLV",
        "video/mp4": "MP4",
        "video/m4v": "MP4"
    };
    t.f.onReady = function(a) {
        var c;
        if (c = (a = t.w(a)) && a.parentNode && a.parentNode.player) a.player = c, t.f.checkReady(c.o)
    };
    t.f.checkReady = function(a) {
        a.w() && (a.w().vjs_getProperty ? a.Ja() : this.setTimeout(function() {
            t.f.checkReady(a)
        }, 50))
    };
    t.f.onEvent = function(a, c) {
        t.w(a).player.l(c)
    };
    t.f.onError = function(a, c) {
        var d = t.w(a).player,
            e = "FLASH: " + c;
        "srcnotfound" == c ? d.error({
            code: 4,
            message: e
        }) : d.error(e)
    };
    t.f.version = function() {
        var a = "0,0,0";
        try {
            a = (new window.ActiveXObject("ShockwaveFlash.ShockwaveFlash")).GetVariable("$version").replace(/\D+/g, ",").match(/^,?(.+),?$/)[1]
        } catch (c) {
            try {
                navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin && (a = (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]).description.replace(/\D+/g, ",").match(/^,?(.+),?$/)[1])
            } catch (d) {}
        }
        return a.split(",")
    };
    t.f.wc = function(a, c, d, e, g) {
        a = t.f.Ld(a, d, e, g);
        a = t.e("div", {
            innerHTML: a
        }).childNodes[0];
        d = c.parentNode;
        c.parentNode.replaceChild(a, c);
        var h = d.childNodes[0];
        setTimeout(function() {
            h.style.display = "block"
        }, 1E3);
        return a
    };
    t.f.Ld = function(a, c, d, e) {
        var g = "",
            h = "",
            j = "";
        c && t.h.X(c, function(a, c) {
            g += a + "=" + c + "&amp;"
        });
        d = t.h.z({
            movie: a,
            flashvars: g,
            allowScriptAccess: "always",
            allowNetworking: "all"
        }, d);
        t.h.X(d, function(a, c) {
            h += '<param name="' + a + '" value="' + c + '" />'
        });
        e = t.h.z({
            data: a,
            width: "100%",
            height: "100%"
        }, e);
        t.h.X(e, function(a, c) {
            j += a + '="' + c + '" '
        });
        return '<object type="application/x-shockwave-flash" ' + j + ">" + h + "</object>"
    };
    t.f.qe = {
        "rtmp/mp4": "MP4",
        "rtmp/flv": "FLV"
    };
    t.f.Le = function(a, c) {
        return a + "&" + c
    };
    t.f.pe = function(a) {
        var c = {
            qc: "",
            Zc: ""
        };
        if (!a) return c;
        var d = a.indexOf("&"),
            e; - 1 !== d ? e = d + 1 : (d = e = a.lastIndexOf("/") + 1, 0 === d && (d = e = a.length));
        c.qc = a.substring(0, d);
        c.Zc = a.substring(e, a.length);
        return c
    };
    t.f.Rd = function(a) {
        return a in t.f.qe
    };
    t.f.qd = /^rtmp[set]?:\/\//i;
    t.f.Qd = function(a) {
        return t.f.qd.test(a)
    };
    t.f.Sb = {};
    t.f.Sb.Sa = function(a) {
        return t.f.Rd(a.type) || t.f.Qd(a.src) ? "maybe" : ""
    };
    t.f.Sb.Ib = function(a, c) {
        var d = t.f.pe(a.src);
        c.Je(d.qc);
        c.Ke(d.Zc)
    };
    t.f.Rb(t.f.Sb);
    t.pd = t.a.extend({
        i: function(a, c, d) {
            t.a.call(this, a, c, d);
            if (!a.m.sources || 0 === a.m.sources.length) {
                c = 0;
                for (d = a.m.techOrder; c < d.length; c++) {
                    var e = t.ba(d[c]),
                        g = window.videojs[e];
                    if (g && g.isSupported()) {
                        Q(a, e);
                        break
                    }
                }
            } else a.src(a.m.sources)
        }
    });
    t.Player.prototype.textTracks = function() {
        return this.Ia = this.Ia || []
    };

    function na(a, c, d, e, g) {
        var h = a.Ia = a.Ia || [];
        g = g || {};
        g.kind = c;
        g.label = d;
        g.language = e;
        c = t.ba(c || "subtitles");
        var j = new window.videojs[c + "Track"](a, g);
        h.push(j);
        j.Ab() && a.H(function() {
            this.setTimeout(function() {
                Y(j.j(), j.id())
            }, 0)
        })
    }

    function Y(a, c, d) {
        for (var e = a.Ia, g = 0, h = e.length, j, p; g < h; g++) j = e[g], j.id() === c ? (j.show(), p = j) : d && (j.L() == d && 0 < j.mode()) && j.disable();
        (c = p ? p.L() : d ? d : l) && a.l(c + "trackchange")
    }
    t.B = t.a.extend({
        i: function(a, c) {
            t.a.call(this, a, c);
            this.K = c.id || "vjs_" + c.kind + "_" + c.language + "_" + t.p++;
            this.Wc = c.src;
            this.Cd = c["default"] || c.dflt;
            this.ue = c.title;
            this.Ya = c.srclang;
            this.Sd = c.label;
            this.ca = [];
            this.vb = [];
            this.oa = this.qa = 0;
            a.c("dispose", t.bind(this, this.vc, this.K))
        }
    });
    s = t.B.prototype;
    s.L = n("G");
    s.src = n("Wc");
    s.Ab = n("Cd");
    s.title = n("ue");
    s.language = n("Ya");
    s.label = n("Sd");
    s.yd = n("ca");
    s.rd = n("vb");
    s.readyState = n("qa");
    s.mode = n("oa");
    s.e = function() {
        return t.a.prototype.e.call(this, "div", {
            className: "vjs-" + this.G + " vjs-text-track"
        })
    };
    s.show = function() {
        oa(this);
        this.oa = 2;
        t.a.prototype.show.call(this)
    };
    s.Y = function() {
        oa(this);
        this.oa = 1;
        t.a.prototype.Y.call(this)
    };
    s.disable = function() {
        2 == this.oa && this.Y();
        this.vc();
        this.oa = 0
    };

    function oa(a) {
        0 === a.qa && a.load();
        0 === a.oa && (a.d.c("timeupdate", t.bind(a, a.update, a.K)), a.d.c("ended", t.bind(a, a.reset, a.K)), ("captions" === a.G || "subtitles" === a.G) && a.d.ma("textTrackDisplay").U(a))
    }
    s.vc = function() {
        this.d.k("timeupdate", t.bind(this, this.update, this.K));
        this.d.k("ended", t.bind(this, this.reset, this.K));
        this.reset();
        this.d.ma("textTrackDisplay").removeChild(this)
    };
    s.load = function() {
        0 === this.qa && (this.qa = 1, t.ye(this.Wc, t.bind(this, function(a, c, d) {
            if (a) this.error = a, this.qa = 3, this.l("error");
            else {
                var e, g;
                a = d.split("\n");
                c = "";
                d = 1;
                for (var h = a.length; d < h; d++)
                    if (c = t.trim(a[d])) {
                        -1 == c.indexOf("--\x3e") ? (e = c, c = t.trim(a[++d])) : e = this.ca.length;
                        e = {
                            id: e,
                            index: this.ca.length
                        };
                        g = c.split(/[\t ]+/);
                        e.startTime = pa(g[0]);
                        e.Aa = pa(g[2]);
                        for (g = []; a[++d] && (c = t.trim(a[d]));) g.push(c);
                        e.text = g.join("<br/>");
                        this.ca.push(e)
                    }
                this.qa = 2;
                this.l("loaded")
            }
        })))
    };

    function pa(a) {
        var c = a.split(":");
        a = 0;
        var d, e, g;
        3 == c.length ? (d = c[0], e = c[1], c = c[2]) : (d = 0, e = c[0], c = c[1]);
        c = c.split(/\s+/);
        c = c.splice(0, 1)[0];
        c = c.split(/\.|,/);
        g = parseFloat(c[1]);
        c = c[0];
        a += 3600 * parseFloat(d);
        a += 60 * parseFloat(e);
        a += parseFloat(c);
        g && (a += g / 1E3);
        return a
    }
    s.update = function() {
        if (0 < this.ca.length) {
            var a = this.d.options().trackTimeOffset || 0,
                a = this.d.currentTime() + a;
            if (this.Qb === b || a < this.Qb || this.Za <= a) {
                var c = this.ca,
                    d = this.d.duration(),
                    e = 0,
                    g = l,
                    h = [],
                    j, p, q, w;
                a >= this.Za || this.Za === b ? w = this.Fb !== b ? this.Fb : 0 : (g = f, w = this.Mb !== b ? this.Mb : c.length - 1);
                for (;;) {
                    q = c[w];
                    if (q.Aa <= a) e = Math.max(e, q.Aa), q.Qa && (q.Qa = l);
                    else if (a < q.startTime) {
                        if (d = Math.min(d, q.startTime), q.Qa && (q.Qa = l), !g) break
                    } else g ? (h.splice(0, 0, q), p === b && (p = w), j = w) : (h.push(q), j === b && (j = w), p = w), d = Math.min(d,
                        q.Aa), e = Math.max(e, q.startTime), q.Qa = f;
                    if (g)
                        if (0 === w) break;
                        else w--;
                    else if (w === c.length - 1) break;
                    else w++
                }
                this.vb = h;
                this.Za = d;
                this.Qb = e;
                this.Fb = j;
                this.Mb = p;
                j = this.vb;
                p = "";
                a = 0;
                for (c = j.length; a < c; a++) p += '<span class="vjs-tt-cue">' + j[a].text + "</span>";
                this.b.innerHTML = p;
                this.l("cuechange")
            }
        }
    };
    s.reset = function() {
        this.Za = 0;
        this.Qb = this.d.duration();
        this.Mb = this.Fb = 0
    };
    t.Zb = t.B.extend();
    t.Zb.prototype.G = "captions";
    t.hc = t.B.extend();
    t.hc.prototype.G = "subtitles";
    t.$b = t.B.extend();
    t.$b.prototype.G = "chapters";
    t.jc = t.a.extend({
        i: function(a, c, d) {
            t.a.call(this, a, c, d);
            if (a.m.tracks && 0 < a.m.tracks.length) {
                c = this.d;
                a = a.m.tracks;
                for (var e = 0; e < a.length; e++) d = a[e], na(c, d.kind, d.label, d.language, d)
            }
        }
    });
    t.jc.prototype.e = function() {
        return t.a.prototype.e.call(this, "div", {
            className: "vjs-text-track-display"
        })
    };
    t.aa = t.J.extend({
        i: function(a, c) {
            var d = this.ha = c.track;
            c.label = d.label();
            c.selected = d.Ab();
            t.J.call(this, a, c);
            this.c(a, d.L() + "trackchange", this.update)
        }
    });
    t.aa.prototype.s = function() {
        t.J.prototype.s.call(this);
        Y(this.d, this.ha.K, this.ha.L())
    };
    t.aa.prototype.update = function() {
        this.selected(2 == this.ha.mode())
    };
    t.ob = t.aa.extend({
        i: function(a, c) {
            c.track = {
                L: function() {
                    return c.kind
                },
                j: a,
                label: function() {
                    return c.kind + " off"
                },
                Ab: r(l),
                mode: r(l)
            };
            t.aa.call(this, a, c);
            this.selected(f)
        }
    });
    t.ob.prototype.s = function() {
        t.aa.prototype.s.call(this);
        Y(this.d, this.ha.K, this.ha.L())
    };
    t.ob.prototype.update = function() {
        for (var a = this.d.textTracks(), c = 0, d = a.length, e, g = f; c < d; c++) e = a[c], e.L() == this.ha.L() && 2 == e.mode() && (g = l);
        this.selected(g)
    };
    t.T = t.M.extend({
        i: function(a, c) {
            t.M.call(this, a, c);
            1 >= this.P.length && this.Y()
        }
    });
    t.T.prototype.ya = function() {
        var a = [],
            c;
        a.push(new t.ob(this.d, {
            kind: this.G
        }));
        for (var d = 0; d < this.d.textTracks().length; d++) c = this.d.textTracks()[d], c.L() === this.G && a.push(new t.aa(this.d, {
            track: c
        }));
        return a
    };
    t.Ka = t.T.extend({
        i: function(a, c, d) {
            t.T.call(this, a, c, d);
            this.b.setAttribute("aria-label", "Captions Menu")
        }
    });
    t.Ka.prototype.G = "captions";
    t.Ka.prototype.wa = "Captions";
    t.Ka.prototype.className = "vjs-captions-button";
    t.Pa = t.T.extend({
        i: function(a, c, d) {
            t.T.call(this, a, c, d);
            this.b.setAttribute("aria-label", "Subtitles Menu")
        }
    });
    t.Pa.prototype.G = "subtitles";
    t.Pa.prototype.wa = "Subtitles";
    t.Pa.prototype.className = "vjs-subtitles-button";
    t.La = t.T.extend({
        i: function(a, c, d) {
            t.T.call(this, a, c, d);
            this.b.setAttribute("aria-label", "Chapters Menu")
        }
    });
    s = t.La.prototype;
    s.G = "chapters";
    s.wa = "Chapters";
    s.className = "vjs-chapters-button";
    s.ya = function() {
        for (var a = [], c, d = 0; d < this.d.textTracks().length; d++) c = this.d.textTracks()[d], c.L() === this.G && a.push(new t.aa(this.d, {
            track: c
        }));
        return a
    };
    s.za = function() {
        for (var a = this.d.textTracks(), c = 0, d = a.length, e, g, h = this.P = []; c < d; c++)
            if (e = a[c], e.L() == this.G)
                if (0 === e.readyState()) e.load(), e.c("loaded", t.bind(this, this.za));
                else {
                    g = e;
                    break
                }
        a = this.Da;
        a === b && (a = new t.ja(this.d), a.la().appendChild(t.e("li", {
            className: "vjs-menu-title",
            innerHTML: t.ba(this.G),
            re: -1
        })));
        if (g) {
            e = g.ca;
            for (var j, c = 0, d = e.length; c < d; c++) j = e[c], j = new t.ib(this.d, {
                track: g,
                cue: j
            }), h.push(j), a.U(j);
            this.U(a)
        }
        0 < this.P.length && this.show();
        return a
    };
    t.ib = t.J.extend({
        i: function(a, c) {
            var d = this.ha = c.track,
                e = this.cue = c.cue,
                g = a.currentTime();
            c.label = e.text;
            c.selected = e.startTime <= g && g < e.Aa;
            t.J.call(this, a, c);
            d.c("cuechange", t.bind(this, this.update))
        }
    });
    t.ib.prototype.s = function() {
        t.J.prototype.s.call(this);
        this.d.currentTime(this.cue.startTime);
        this.update(this.cue.startTime)
    };
    t.ib.prototype.update = function() {
        var a = this.cue,
            c = this.d.currentTime();
        this.selected(a.startTime <= c && c < a.Aa)
    };
    t.h.z(t.Ma.prototype.m.children, {
        subtitlesButton: {},
        captionsButton: {},
        chaptersButton: {}
    });
    if ("undefined" !== typeof window.JSON && "function" === typeof window.JSON.parse) t.JSON = window.JSON;
    else {
        t.JSON = {};
        var Z = /[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;
        t.JSON.parse = function(a, c) {
            function d(a, e) {
                var j, p, q = a[e];
                if (q && "object" === typeof q)
                    for (j in q) Object.prototype.hasOwnProperty.call(q, j) && (p = d(q, j), p !== b ? q[j] = p : delete q[j]);
                return c.call(a, e, q)
            }
            var e;
            a = String(a);
            Z.lastIndex = 0;
            Z.test(a) && (a = a.replace(Z, function(a) {
                return "\\u" + ("0000" +
                    a.charCodeAt(0).toString(16)).slice(-4)
            }));
            if (/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, "@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "]").replace(/(?:^|:|,)(?:\s*\[)+/g, ""))) return e = eval("(" + a + ")"), "function" === typeof c ? d({
                "": e
            }, "") : e;
            throw new SyntaxError("JSON.parse(): invalid or malformed JSON data");
        }
    }
    t.nc = function() {
        var a, c, d, e;
        a = document.getElementsByTagName("video");
        c = document.getElementsByTagName("audio");
        var g = [];
        if (a && 0 < a.length) {
            d = 0;
            for (e = a.length; d < e; d++) g.push(a[d])
        }
        if (c && 0 < c.length) {
            d = 0;
            for (e = c.length; d < e; d++) g.push(c[d])
        }
        if (g && 0 < g.length) {
            d = 0;
            for (e = g.length; d < e; d++)
                if ((c = g[d]) && c.getAttribute) c.player === b && (a = c.getAttribute("data-setup"), a !== k && videojs(c));
                else {
                    t.wb();
                    break
                }
        } else t.cd || t.wb()
    };
    t.wb = function() {
        setTimeout(t.nc, 1)
    };
    "complete" === document.readyState ? t.cd = f : t.Q(window, "load", function() {
        t.cd = f
    });
    t.wb();
    t.ge = function(a, c) {
        t.Player.prototype[a] = c
    };
    var qa = this;

    function $(a, c) {
        var d = a.split("."),
            e = qa;
        !(d[0] in e) && e.execScript && e.execScript("var " + d[0]);
        for (var g; d.length && (g = d.shift());) !d.length && c !== b ? e[g] = c : e = e[g] ? e[g] : e[g] = {}
    };
    $("videojs", t);
    $("_V_", t);
    $("videojs.options", t.options);
    $("videojs.players", t.Fa);
    $("videojs.TOUCH_ENABLED", t.ic);
    $("videojs.cache", t.xa);
    $("videojs.Component", t.a);
    t.a.prototype.player = t.a.prototype.j;
    t.a.prototype.options = t.a.prototype.options;
    t.a.prototype.init = t.a.prototype.i;
    t.a.prototype.dispose = t.a.prototype.dispose;
    t.a.prototype.createEl = t.a.prototype.e;
    t.a.prototype.contentEl = t.a.prototype.la;
    t.a.prototype.el = t.a.prototype.w;
    t.a.prototype.addChild = t.a.prototype.U;
    t.a.prototype.getChild = t.a.prototype.ma;
    t.a.prototype.getChildById = t.a.prototype.Kd;
    t.a.prototype.children = t.a.prototype.children;
    t.a.prototype.initChildren = t.a.prototype.Dc;
    t.a.prototype.removeChild = t.a.prototype.removeChild;
    t.a.prototype.on = t.a.prototype.c;
    t.a.prototype.off = t.a.prototype.k;
    t.a.prototype.one = t.a.prototype.Q;
    t.a.prototype.trigger = t.a.prototype.l;
    t.a.prototype.triggerReady = t.a.prototype.Ja;
    t.a.prototype.show = t.a.prototype.show;
    t.a.prototype.hide = t.a.prototype.Y;
    t.a.prototype.width = t.a.prototype.width;
    t.a.prototype.height = t.a.prototype.height;
    t.a.prototype.dimensions = t.a.prototype.Dd;
    t.a.prototype.ready = t.a.prototype.H;
    t.a.prototype.addClass = t.a.prototype.n;
    t.a.prototype.removeClass = t.a.prototype.r;
    t.a.prototype.buildCSSClass = t.a.prototype.S;
    t.a.prototype.localize = t.a.prototype.t;
    t.a.prototype.setInterval = t.a.prototype.setInterval;
    t.a.prototype.setTimeout = t.a.prototype.setTimeout;
    t.Player.prototype.ended = t.Player.prototype.ended;
    t.Player.prototype.enterFullWindow = t.Player.prototype.yc;
    t.Player.prototype.exitFullWindow = t.Player.prototype.Db;
    t.Player.prototype.preload = t.Player.prototype.Ga;
    t.Player.prototype.remainingTime = t.Player.prototype.remainingTime;
    t.Player.prototype.supportsFullScreen = t.Player.prototype.Ha;
    t.Player.prototype.currentType = t.Player.prototype.zd;
    t.Player.prototype.requestFullScreen = t.Player.prototype.requestFullScreen;
    t.Player.prototype.requestFullscreen = t.Player.prototype.requestFullscreen;
    t.Player.prototype.cancelFullScreen = t.Player.prototype.cancelFullScreen;
    t.Player.prototype.exitFullscreen = t.Player.prototype.exitFullscreen;
    t.Player.prototype.isFullScreen = t.Player.prototype.isFullScreen;
    t.Player.prototype.isFullscreen = t.Player.prototype.isFullscreen;
    $("videojs.MediaLoader", t.pd);
    $("videojs.TextTrackDisplay", t.jc);
    $("videojs.ControlBar", t.Ma);
    $("videojs.Button", t.u);
    $("videojs.PlayToggle", t.dc);
    $("videojs.FullscreenToggle", t.Na);
    $("videojs.BigPlayButton", t.hb);
    $("videojs.LoadingSpinner", t.bc);
    $("videojs.CurrentTimeDisplay", t.jb);
    $("videojs.DurationDisplay", t.kb);
    $("videojs.TimeDivider", t.kc);
    $("videojs.RemainingTimeDisplay", t.rb);
    $("videojs.LiveDisplay", t.ac);
    $("videojs.ErrorDisplay", t.lb);
    $("videojs.Slider", t.R);
    $("videojs.ProgressControl", t.qb);
    $("videojs.SeekBar", t.gc);
    $("videojs.LoadProgressBar", t.nb);
    $("videojs.PlayProgressBar", t.cc);
    $("videojs.SeekHandle", t.Oa);
    $("videojs.VolumeControl", t.tb);
    $("videojs.VolumeBar", t.sb);
    $("videojs.VolumeLevel", t.lc);
    $("videojs.VolumeMenuButton", t.ua);
    $("videojs.VolumeHandle", t.ub);
    $("videojs.MuteToggle", t.ka);
    $("videojs.PosterImage", t.fc);
    $("videojs.Menu", t.ja);
    $("videojs.MenuItem", t.J);
    $("videojs.MenuButton", t.M);
    $("videojs.PlaybackRateMenuButton", t.ec);
    t.M.prototype.createItems = t.M.prototype.ya;
    t.T.prototype.createItems = t.T.prototype.ya;
    t.La.prototype.createItems = t.La.prototype.ya;
    $("videojs.SubtitlesButton", t.Pa);
    $("videojs.CaptionsButton", t.Ka);
    $("videojs.ChaptersButton", t.La);
    $("videojs.MediaTechController", t.q);
    t.q.prototype.featuresVolumeControl = t.q.prototype.Ge;
    t.q.prototype.featuresFullscreenResize = t.q.prototype.Ce;
    t.q.prototype.featuresPlaybackRate = t.q.prototype.De;
    t.q.prototype.featuresProgressEvents = t.q.prototype.Ee;
    t.q.prototype.featuresTimeupdateEvents = t.q.prototype.Fe;
    t.q.prototype.setPoster = t.q.prototype.Tc;
    $("videojs.Html5", t.g);
    t.g.Events = t.g.mb;
    t.g.isSupported = t.g.isSupported;
    t.g.canPlaySource = t.g.oc;
    t.g.patchCanPlayType = t.g.Kc;
    t.g.unpatchCanPlayType = t.g.we;
    t.g.prototype.setCurrentTime = t.g.prototype.Tb;
    t.g.prototype.setVolume = t.g.prototype.oe;
    t.g.prototype.setMuted = t.g.prototype.le;
    t.g.prototype.setPreload = t.g.prototype.ne;
    t.g.prototype.setAutoplay = t.g.prototype.ie;
    t.g.prototype.setLoop = t.g.prototype.ke;
    t.g.prototype.enterFullScreen = t.g.prototype.xc;
    t.g.prototype.exitFullScreen = t.g.prototype.Gd;
    t.g.prototype.playbackRate = t.g.prototype.playbackRate;
    t.g.prototype.setPlaybackRate = t.g.prototype.me;
    $("videojs.Flash", t.f);
    t.f.isSupported = t.f.isSupported;
    t.f.canPlaySource = t.f.oc;
    t.f.onReady = t.f.onReady;
    t.f.embed = t.f.wc;
    t.f.version = t.f.version;
    $("videojs.TextTrack", t.B);
    t.B.prototype.label = t.B.prototype.label;
    t.B.prototype.kind = t.B.prototype.L;
    t.B.prototype.mode = t.B.prototype.mode;
    t.B.prototype.cues = t.B.prototype.yd;
    t.B.prototype.activeCues = t.B.prototype.rd;
    $("videojs.CaptionsTrack", t.Zb);
    $("videojs.SubtitlesTrack", t.hc);
    $("videojs.ChaptersTrack", t.$b);
    $("videojs.autoSetup", t.nc);
    $("videojs.plugin", t.ge);
    $("videojs.createTimeRange", t.zb);
    $("videojs.util", t.Z);
    t.Z.mergeOptions = t.Z.Ea;
    t.addLanguage = t.sd;
})();

//# sourceURL=http://moviexk.org/play/video.js
                                    

#49 JavaScript::Eval (size: 23275, repeated: 1) - SHA256: 968cfecbd8ac22b0da366bb6f5082de48ff61b4e1492ccd79dfffa1770968d01

                                        /*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
(function(r, G, f, v) {
    var J = f("html"),
        n = f(r),
        p = f(G),
        b = f.fancybox = function() {
            b.open.apply(this, arguments)
        },
        I = navigator.userAgent.match(/msie/i),
        B = null,
        s = G.createTouch !== v,
        t = function(a) {
            return a && a.hasOwnProperty && a instanceof f
        },
        q = function(a) {
            return a && "string" === f.type(a)
        },
        E = function(a) {
            return q(a) && 0 < a.indexOf("%")
        },
        l = function(a, d) {
            var e = parseInt(a, 10) || 0;
            d && E(a) && (e *= b.getViewport()[d] / 100);
            return Math.ceil(e)
        },
        w = function(a, b) {
            return l(a, b) + "px"
        };
    f.extend(b, {
        version: "2.1.5",
        defaults: {
            padding: 15,
            margin: 20,
            width: 800,
            height: 600,
            minWidth: 100,
            minHeight: 100,
            maxWidth: 9999,
            maxHeight: 9999,
            pixelRatio: 1,
            autoSize: !0,
            autoHeight: !1,
            autoWidth: !1,
            autoResize: !0,
            autoCenter: !s,
            fitToView: !0,
            aspectRatio: !1,
            topRatio: 0.5,
            leftRatio: 0.5,
            scrolling: "auto",
            wrapCSS: "",
            arrows: !0,
            closeBtn: !0,
            closeClick: !1,
            nextClick: !1,
            mouseWheel: !0,
            autoPlay: !1,
            playSpeed: 3E3,
            preload: 3,
            modal: !1,
            loop: !0,
            ajax: {
                dataType: "html",
                headers: {
                    "X-fancyBox": !0
                }
            },
            iframe: {
                scrolling: "auto",
                preload: !0
            },
            swf: {
                wmode: "transparent",
                allowfullscreen: "true",
                allowscriptaccess: "always"
            },
            keys: {
                next: {
                    13: "left",
                    34: "up",
                    39: "left",
                    40: "up"
                },
                prev: {
                    8: "right",
                    33: "down",
                    37: "right",
                    38: "down"
                },
                close: [27],
                play: [32],
                toggle: [70]
            },
            direction: {
                next: "left",
                prev: "right"
            },
            scrollOutside: !0,
            index: 0,
            type: null,
            href: null,
            content: null,
            title: null,
            tpl: {
                wrap: '<div class="fancybox-wrap" tabIndex="-1"><div class="fancybox-skin"><div class="fancybox-outer"><div class="fancybox-inner"></div></div></div></div>',
                image: '<img class="fancybox-image" src="{href}" alt="" />',
                iframe: '<iframe id="fancybox-frame{rnd}" name="fancybox-frame{rnd}" class="fancybox-iframe" frameborder="0" vspace="0" hspace="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen' +
                    (I ? ' allowtransparency="true"' : "") + "></iframe>",
                error: '<p class="fancybox-error">The requested content cannot be loaded.<br/>Please try again later.</p>',
                closeBtn: '<a title="Close" class="fancybox-item fancybox-close" href="javascript:;"></a>',
                next: '<a title="Next" class="fancybox-nav fancybox-next" href="javascript:;"><span></span></a>',
                prev: '<a title="Previous" class="fancybox-nav fancybox-prev" href="javascript:;"><span></span></a>'
            },
            openEffect: "fade",
            openSpeed: 250,
            openEasing: "swing",
            openOpacity: !0,
            openMethod: "zoomIn",
            closeEffect: "fade",
            closeSpeed: 250,
            closeEasing: "swing",
            closeOpacity: !0,
            closeMethod: "zoomOut",
            nextEffect: "elastic",
            nextSpeed: 250,
            nextEasing: "swing",
            nextMethod: "changeIn",
            prevEffect: "elastic",
            prevSpeed: 250,
            prevEasing: "swing",
            prevMethod: "changeOut",
            helpers: {
                overlay: !0,
                title: !0
            },
            onCancel: f.noop,
            beforeLoad: f.noop,
            afterLoad: f.noop,
            beforeShow: f.noop,
            afterShow: f.noop,
            beforeChange: f.noop,
            beforeClose: f.noop,
            afterClose: f.noop
        },
        group: {},
        opts: {},
        previous: null,
        coming: null,
        current: null,
        isActive: !1,
        isOpen: !1,
        isOpened: !1,
        wrap: null,
        skin: null,
        outer: null,
        inner: null,
        player: {
            timer: null,
            isActive: !1
        },
        ajaxLoad: null,
        imgPreload: null,
        transitions: {},
        helpers: {},
        open: function(a, d) {
            if (a && (f.isPlainObject(d) || (d = {}), !1 !== b.close(!0))) return f.isArray(a) || (a = t(a) ? f(a).get() : [a]), f.each(a, function(e, c) {
                var k = {},
                    g, h, j, m, l;
                "object" === f.type(c) && (c.nodeType && (c = f(c)), t(c) ? (k = {
                    href: c.data("fancybox-href") || c.attr("href"),
                    title: c.data("fancybox-title") || c.attr("title"),
                    isDom: !0,
                    element: c
                }, f.metadata && f.extend(!0, k,
                    c.metadata())) : k = c);
                g = d.href || k.href || (q(c) ? c : null);
                h = d.title !== v ? d.title : k.title || "";
                m = (j = d.content || k.content) ? "html" : d.type || k.type;
                !m && k.isDom && (m = c.data("fancybox-type"), m || (m = (m = c.prop("class").match(/fancybox\.(\w+)/)) ? m[1] : null));
                q(g) && (m || (b.isImage(g) ? m = "image" : b.isSWF(g) ? m = "swf" : "#" === g.charAt(0) ? m = "inline" : q(c) && (m = "html", j = c)), "ajax" === m && (l = g.split(/\s+/, 2), g = l.shift(), l = l.shift()));
                j || ("inline" === m ? g ? j = f(q(g) ? g.replace(/.*(?=#[^\s]+$)/, "") : g) : k.isDom && (j = c) : "html" === m ? j = g : !m && (!g &&
                    k.isDom) && (m = "inline", j = c));
                f.extend(k, {
                    href: g,
                    type: m,
                    content: j,
                    title: h,
                    selector: l
                });
                a[e] = k
            }), b.opts = f.extend(!0, {}, b.defaults, d), d.keys !== v && (b.opts.keys = d.keys ? f.extend({}, b.defaults.keys, d.keys) : !1), b.group = a, b._start(b.opts.index)
        },
        cancel: function() {
            var a = b.coming;
            a && !1 !== b.trigger("onCancel") && (b.hideLoading(), b.ajaxLoad && b.ajaxLoad.abort(), b.ajaxLoad = null, b.imgPreload && (b.imgPreload.onload = b.imgPreload.onerror = null), a.wrap && a.wrap.stop(!0, !0).trigger("onReset").remove(), b.coming = null, b.current ||
                b._afterZoomOut(a))
        },
        close: function(a) {
            b.cancel();
            !1 !== b.trigger("beforeClose") && (b.unbindEvents(), b.isActive && (!b.isOpen || !0 === a ? (f(".fancybox-wrap").stop(!0).trigger("onReset").remove(), b._afterZoomOut()) : (b.isOpen = b.isOpened = !1, b.isClosing = !0, f(".fancybox-item, .fancybox-nav").remove(), b.wrap.stop(!0, !0).removeClass("fancybox-opened"), b.transitions[b.current.closeMethod]())))
        },
        play: function(a) {
            var d = function() {
                    clearTimeout(b.player.timer)
                },
                e = function() {
                    d();
                    b.current && b.player.isActive && (b.player.timer =
                        setTimeout(b.next, b.current.playSpeed))
                },
                c = function() {
                    d();
                    p.unbind(".player");
                    b.player.isActive = !1;
                    b.trigger("onPlayEnd")
                };
            if (!0 === a || !b.player.isActive && !1 !== a) {
                if (b.current && (b.current.loop || b.current.index < b.group.length - 1)) b.player.isActive = !0, p.bind({
                    "onCancel.player beforeClose.player": c,
                    "onUpdate.player": e,
                    "beforeLoad.player": d
                }), e(), b.trigger("onPlayStart")
            } else c()
        },
        next: function(a) {
            var d = b.current;
            d && (q(a) || (a = d.direction.next), b.jumpto(d.index + 1, a, "next"))
        },
        prev: function(a) {
            var d = b.current;
            d && (q(a) || (a = d.direction.prev), b.jumpto(d.index - 1, a, "prev"))
        },
        jumpto: function(a, d, e) {
            var c = b.current;
            c && (a = l(a), b.direction = d || c.direction[a >= c.index ? "next" : "prev"], b.router = e || "jumpto", c.loop && (0 > a && (a = c.group.length + a % c.group.length), a %= c.group.length), c.group[a] !== v && (b.cancel(), b._start(a)))
        },
        reposition: function(a, d) {
            var e = b.current,
                c = e ? e.wrap : null,
                k;
            c && (k = b._getPosition(d), a && "scroll" === a.type ? (delete k.position, c.stop(!0, !0).animate(k, 200)) : (c.css(k), e.pos = f.extend({}, e.dim, k)))
        },
        update: function(a) {
            var d =
                a && a.type,
                e = !d || "orientationchange" === d;
            e && (clearTimeout(B), B = null);
            b.isOpen && !B && (B = setTimeout(function() {
                var c = b.current;
                c && !b.isClosing && (b.wrap.removeClass("fancybox-tmp"), (e || "load" === d || "resize" === d && c.autoResize) && b._setDimension(), "scroll" === d && c.canShrink || b.reposition(a), b.trigger("onUpdate"), B = null)
            }, e && !s ? 0 : 300))
        },
        toggle: function(a) {
            b.isOpen && (b.current.fitToView = "boolean" === f.type(a) ? a : !b.current.fitToView, s && (b.wrap.removeAttr("style").addClass("fancybox-tmp"), b.trigger("onUpdate")),
                b.update())
        },
        hideLoading: function() {
            p.unbind(".loading");
            f("#fancybox-loading").remove()
        },
        showLoading: function() {
            var a, d;
            b.hideLoading();
            a = f('<div id="fancybox-loading"><div></div></div>').click(b.cancel).appendTo("body");
            p.bind("keydown.loading", function(a) {
                if (27 === (a.which || a.keyCode)) a.preventDefault(), b.cancel()
            });
            b.defaults.fixed || (d = b.getViewport(), a.css({
                position: "absolute",
                top: 0.5 * d.h + d.y,
                left: 0.5 * d.w + d.x
            }))
        },
        getViewport: function() {
            var a = b.current && b.current.locked || !1,
                d = {
                    x: n.scrollLeft(),
                    y: n.scrollTop()
                };
            a ? (d.w = a[0].clientWidth, d.h = a[0].clientHeight) : (d.w = s && r.innerWidth ? r.innerWidth : n.width(), d.h = s && r.innerHeight ? r.innerHeight : n.height());
            return d
        },
        unbindEvents: function() {
            b.wrap && t(b.wrap) && b.wrap.unbind(".fb");
            p.unbind(".fb");
            n.unbind(".fb")
        },
        bindEvents: function() {
            var a = b.current,
                d;
            a && (n.bind("orientationchange.fb" + (s ? "" : " resize.fb") + (a.autoCenter && !a.locked ? " scroll.fb" : ""), b.update), (d = a.keys) && p.bind("keydown.fb", function(e) {
                var c = e.which || e.keyCode,
                    k = e.target || e.srcElement;
                if (27 === c && b.coming) return !1;
                !e.ctrlKey && (!e.altKey && !e.shiftKey && !e.metaKey && (!k || !k.type && !f(k).is("[contenteditable]"))) && f.each(d, function(d, k) {
                    if (1 < a.group.length && k[c] !== v) return b[d](k[c]), e.preventDefault(), !1;
                    if (-1 < f.inArray(c, k)) return b[d](), e.preventDefault(), !1
                })
            }), f.fn.mousewheel && a.mouseWheel && b.wrap.bind("mousewheel.fb", function(d, c, k, g) {
                for (var h = f(d.target || null), j = !1; h.length && !j && !h.is(".fancybox-skin") && !h.is(".fancybox-wrap");) j = h[0] && !(h[0].style.overflow && "hidden" === h[0].style.overflow) &&
                    (h[0].clientWidth && h[0].scrollWidth > h[0].clientWidth || h[0].clientHeight && h[0].scrollHeight > h[0].clientHeight), h = f(h).parent();
                if (0 !== c && !j && 1 < b.group.length && !a.canShrink) {
                    if (0 < g || 0 < k) b.prev(0 < g ? "down" : "left");
                    else if (0 > g || 0 > k) b.next(0 > g ? "up" : "right");
                    d.preventDefault()
                }
            }))
        },
        trigger: function(a, d) {
            var e, c = d || b.coming || b.current;
            if (c) {
                f.isFunction(c[a]) && (e = c[a].apply(c, Array.prototype.slice.call(arguments, 1)));
                if (!1 === e) return !1;
                c.helpers && f.each(c.helpers, function(d, e) {
                    if (e && b.helpers[d] && f.isFunction(b.helpers[d][a])) b.helpers[d][a](f.extend(!0, {}, b.helpers[d].defaults, e), c)
                });
                p.trigger(a)
            }
        },
        isImage: function(a) {
            return q(a) && a.match(/(^data:image\/.*,)|(\.(jp(e|g|eg)|gif|png|bmp|webp|svg)((\?|#).*)?$)/i)
        },
        isSWF: function(a) {
            return q(a) && a.match(/\.(swf)((\?|#).*)?$/i)
        },
        _start: function(a) {
            var d = {},
                e, c;
            a = l(a);
            e = b.group[a] || null;
            if (!e) return !1;
            d = f.extend(!0, {}, b.opts, e);
            e = d.margin;
            c = d.padding;
            "number" === f.type(e) && (d.margin = [e, e, e, e]);
            "number" === f.type(c) && (d.padding = [c, c, c, c]);
            d.modal && f.extend(!0, d, {
                closeBtn: !1,
                closeClick: !1,
                nextClick: !1,
                arrows: !1,
                mouseWheel: !1,
                keys: null,
                helpers: {
                    overlay: {
                        closeClick: !1
                    }
                }
            });
            d.autoSize && (d.autoWidth = d.autoHeight = !0);
            "auto" === d.width && (d.autoWidth = !0);
            "auto" === d.height && (d.autoHeight = !0);
            d.group = b.group;
            d.index = a;
            b.coming = d;
            if (!1 === b.trigger("beforeLoad")) b.coming = null;
            else {
                c = d.type;
                e = d.href;
                if (!c) return b.coming = null, b.current && b.router && "jumpto" !== b.router ? (b.current.index = a, b[b.router](b.direction)) : !1;
                b.isActive = !0;
                if ("image" === c || "swf" === c) d.autoHeight = d.autoWidth = !1, d.scrolling = "visible";
                "image" === c && (d.aspectRatio = !0);
                "iframe" === c && s && (d.scrolling = "scroll");
                d.wrap = f(d.tpl.wrap).addClass("fancybox-" + (s ? "mobile" : "desktop") + " fancybox-type-" + c + " fancybox-tmp " + d.wrapCSS).appendTo(d.parent || "body");
                f.extend(d, {
                    skin: f(".fancybox-skin", d.wrap),
                    outer: f(".fancybox-outer", d.wrap),
                    inner: f(".fancybox-inner", d.wrap)
                });
                f.each(["Top", "Right", "Bottom", "Left"], function(a, b) {
                    d.skin.css("padding" + b, w(d.padding[a]))
                });
                b.trigger("onReady");
                if ("inline" === c || "html" === c) {
                    if (!d.content || !d.content.length) return b._error("content")
                } else if (!e) return b._error("href");
                "image" === c ? b._loadImage() : "ajax" === c ? b._loadAjax() : "iframe" === c ? b._loadIframe() : b._afterLoad()
            }
        },
        _error: function(a) {
            f.extend(b.coming, {
                type: "html",
                autoWidth: !0,
                autoHeight: !0,
                minWidth: 0,
                minHeight: 0,
                scrolling: "no",
                hasError: a,
                content: b.coming.tpl.error
            });
            b._afterLoad()
        },
        _loadImage: function() {
            var a = b.imgPreload = new Image;
            a.onload = function() {
                this.onload = this.onerror = null;
                b.coming.width = this.width / b.opts.pixelRatio;
                b.coming.height = this.height / b.opts.pixelRatio;
                b._afterLoad()
            };
            a.onerror = function() {
                this.onload =
                    this.onerror = null;
                b._error("image")
            };
            a.src = b.coming.href;
            !0 !== a.complete && b.showLoading()
        },
        _loadAjax: function() {
            var a = b.coming;
            b.showLoading();
            b.ajaxLoad = f.ajax(f.extend({}, a.ajax, {
                url: a.href,
                error: function(a, e) {
                    b.coming && "abort" !== e ? b._error("ajax", a) : b.hideLoading()
                },
                success: function(d, e) {
                    "success" === e && (a.content = d, b._afterLoad())
                }
            }))
        },
        _loadIframe: function() {
            var a = b.coming,
                d = f(a.tpl.iframe.replace(/\{rnd\}/g, (new Date).getTime())).attr("scrolling", s ? "auto" : a.iframe.scrolling).attr("src", a.href);
            f(a.wrap).bind("onReset", function() {
                try {
                    f(this).find("iframe").hide().attr("src", "//about:blank").end().empty()
                } catch (a) {}
            });
            a.iframe.preload && (b.showLoading(), d.one("load", function() {
                f(this).data("ready", 1);
                s || f(this).bind("load.fb", b.update);
                f(this).parents(".fancybox-wrap").width("100%").removeClass("fancybox-tmp").show();
                b._afterLoad()
            }));
            a.content = d.appendTo(a.inner);
            a.iframe.preload || b._afterLoad()
        },
        _preloadImages: function() {
            var a = b.group,
                d = b.current,
                e = a.length,
                c = d.preload ? Math.min(d.preload,
                    e - 1) : 0,
                f, g;
            for (g = 1; g <= c; g += 1) f = a[(d.index + g) % e], "image" === f.type && f.href && ((new Image).src = f.href)
        },
        _afterLoad: function() {
            var a = b.coming,
                d = b.current,
                e, c, k, g, h;
            b.hideLoading();
            if (a && !1 !== b.isActive)
                if (!1 === b.trigger("afterLoad", a, d)) a.wrap.stop(!0).trigger("onReset").remove(), b.coming = null;
                else {
                    d && (b.trigger("beforeChange", d), d.wrap.stop(!0).removeClass("fancybox-opened").find(".fancybox-item, .fancybox-nav").remove());
                    b.unbindEvents();
                    e = a.content;
                    c = a.type;
                    k = a.scrolling;
                    f.extend(b, {
                        wrap: a.wrap,
                        skin: a.skin,
                        outer: a.outer,
                        inner: a.inner,
                        current: a,
                        previous: d
                    });
                    g = a.href;
                    switch (c) {
                        case "inline":
                        case "ajax":
                        case "html":
                            a.selector ? e = f("<div>").html(e).find(a.selector) : t(e) && (e.data("fancybox-placeholder") || e.data("fancybox-placeholder", f('<div class="fancybox-placeholder"></div>').insertAfter(e).hide()), e = e.show().detach(), a.wrap.bind("onReset", function() {
                                f(this).find(e).length && e.hide().replaceAll(e.data("fancybox-placeholder")).data("fancybox-placeholder", !1)
                            }));
                            break;
                        case "image":
                            e = a.tpl.image.replace("{href}",
                                g);
                            break;
                        case "swf":
                            e = '<object id="fancybox-swf" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="100%" height="100%"><param name="movie" value="' + g + '"></param>', h = "", f.each(a.swf, function(a, b) {
                                e += '<param name="' + a + '" value="' + b + '"></param>';
                                h += " " + a + '="' + b + '"'
                            }), e += '<embed src="' + g + '" type="application/x-shockwave-flash" width="100%" height="100%"' + h + "></embed></object>"
                    }(!t(e) || !e.parent().is(a.inner)) && a.inner.append(e);
                    b.trigger("beforeShow");
                    a.inner.css("overflow", "yes" === k ? "scroll" :
                        "no" === k ? "hidden" : k);
                    b._setDimension();
                    b.reposition();
                    b.isOpen = !1;
                    b.coming = null;
                    b.bindEvents();
                    if (b.isOpened) {
                        if (d.prevMethod) b.transitions[d.prevMethod]()
                    } else f(".fancybox-wrap").not(a.wrap).stop(!0).trigger("onReset").remove();
                    b.transitions[b.isOpened ? a.nextMethod : a.openMethod]();
                    b._preloadImages()
                }
        },
        _setDimension: function() {
            var a = b.getViewport(),
                d = 0,
                e = !1,
                c = !1,
                e = b.wrap,
                k = b.skin,
                g = b.inner,
                h = b.current,
                c = h.width,
                j = h.height,
                m = h.minWidth,
                u = h.minHeight,
                n = h.maxWidth,
                p = h.maxHeight,
                s = h.scrolling,
                q = h.scrollOutside ?
                h.scrollbarWidth : 0,
                x = h.margin,
                y = l(x[1] + x[3]),
                r = l(x[0] + x[2]),
                v, z, t, C, A, F, B, D, H;
            e.add(k).add(g).width("auto").height("auto").removeClass("fancybox-tmp");
            x = l(k.outerWidth(!0) - k.width());
            v = l(k.outerHeight(!0) - k.height());
            z = y + x;
            t = r + v;
            C = E(c) ? (a.w - z) * l(c) / 100 : c;
            A = E(j) ? (a.h - t) * l(j) / 100 : j;
            if ("iframe" === h.type) {
                if (H = h.content, h.autoHeight && 1 === H.data("ready")) try {
                    H[0].contentWindow.document.location && (g.width(C).height(9999), F = H.contents().find("body"), q && F.css("overflow-x", "hidden"), A = F.outerHeight(!0))
                } catch (G) {}
            } else if (h.autoWidth ||
                h.autoHeight) g.addClass("fancybox-tmp"), h.autoWidth || g.width(C), h.autoHeight || g.height(A), h.autoWidth && (C = g.width()), h.autoHeight && (A = g.height()), g.removeClass("fancybox-tmp");
            c = l(C);
            j = l(A);
            D = C / A;
            m = l(E(m) ? l(m, "w") - z : m);
            n = l(E(n) ? l(n, "w") - z : n);
            u = l(E(u) ? l(u, "h") - t : u);
            p = l(E(p) ? l(p, "h") - t : p);
            F = n;
            B = p;
            h.fitToView && (n = Math.min(a.w - z, n), p = Math.min(a.h - t, p));
            z = a.w - y;
            r = a.h - r;
            h.aspectRatio ? (c > n && (c = n, j = l(c / D)), j > p && (j = p, c = l(j * D)), c < m && (c = m, j = l(c / D)), j < u && (j = u, c = l(j * D))) : (c = Math.max(m, Math.min(c, n)), h.autoHeight &&
                "iframe" !== h.type && (g.width(c), j = g.height()), j = Math.max(u, Math.min(j, p)));
            if (h.fitToView)
                if (g.width(c).height(j), e.width(c + x), a = e.width(), y = e.height(), h.aspectRatio)
                    for (;
                        (a > z || y > r) && (c > m && j > u) && !(19 < d++);) j = Math.max(u, Math.min(p, j - 10)), c = l(j * D), c < m && (c = m, j = l(c / D)), c > n && (c = n, j = l(c / D)), g.width(c).height(j), e.width(c + x), a = e.width(), y = e.height();
                else c = Math.max(m, Math.min(c, c - (a - z))), j = Math.max(u, Math.min(j, j - (y - r)));
            q && ("auto" === s && j < A && c + x + q < z) && (c += q);
            g.width(c).height(j);
            e.width(c + x);
            a = e.width();
            y = e.height();
            e = (a > z || y > r) && c > m && j > u;
            c = h.aspectRatio ? c < F && j < B && c < C && j < A : (c < F || j < B) && (c < C || j < A);
            f.extend(h, {
                dim: {
                    width: w(a),
                    height: w(y)
                },
                origWidth: C,
                origHeight: A,
                canShrink: e,
                canExpand: c,
                wPadding: x,
                hPadding: v,
                wrapSpace: y - k.outerHeight(!0),
                skinSpace: k.height() - j
            });
            !H && (h.autoHeight && j > u && j < p && !c) && g.height("auto")
        },
        _getPosition: function(a) {
            var d = b.current,
                e = b.getViewport(),
                c = d.margin,
                f = b.wrap.width() + c[1] + c[3],
                g = b.wrap.height() + c[0] + c[2],
                c = {
                    position: "absolute",
                    top: c[0],
                    left: c[3]
                };
            d.autoCenter && d.fixed &&
                !a && g <= e.h && f <= e.w ? c.position = "fixed" : d.locked || (c.top += e.y, c.left += e.x);
            c.top = w(Math.max(c.top, c.top + (e.h - g) * d.topRatio));
            c.left = w(Math.max(c.left, c.left + (e.w - f) * d.leftRatio));
            return c
        },
        _afterZoomIn: function() {
            var a = b.current;
            a && (b.isOpen = b.isOpened = !0, b.wrap.css("overflow", "visible").addClass("fancybox-opened"), b.update(), (a.closeClick || a.nextClick && 1 < b.group.length) && b.inner.css("cursor", "pointer").bind("click.fb", function(d) {
                !f(d.target).is("a") && !f(d.target).parent().is("a") && (d.preventDefault(),
                    b[a.closeClick ? "close" : "next"]())
            }), a.closeBtn && f(a.tpl.closeBtn).appendTo(b.skin).bind("click.fb", function(a) {
                a.preventDefault();
                b.close()
            }), a.arrows && 1 < b.group.length && ((a.loop || 0 < a.index) && f(a.tpl.prev).appendTo(b.outer).bind("click.fb", b.prev), (a.loop || a.index < b.group.length - 1) && f(a.tpl.next).appendTo(b.outer).bind("click.fb", b.next)), b.trigger("afterShow"), !a.loop && a.index === a.group.length - 1 ? b.play(!1) : b.opts.autoPlay && !b.player.isActive && (b.opts.autoPlay = !1, b.play()))
        },
        _afterZoomOut: function(a) {
            a =
                a || b.current;
            f(".fancybox-wrap").trigger("onReset").remove();
            f.extend(b, {
                group: {},
                opts: {},
                router: !1,
                current: null,
                isActive: !1,
                isOpened: !1,
                isOpen: !1,
                isClosing: !1,
                wrap: null,
                skin: null,
                outer: null,
                inner: null
            });
            b.trigger("afterClose", a)
        }
    });
    b.transitions = {
        getOrigPosition: function() {
            var a = b.current,
                d = a.element,
                e = a.orig,
                c = {},
                f = 50,
                g = 50,
                h = a.hPadding,
                j = a.wPadding,
                m = b.getViewport();
            !e && (a.isDom && d.is(":visible")) && (e = d.find("img:first"), e.length || (e = d));
            t(e) ? (c = e.offset(), e.is("img") && (f = e.outerWidth(), g = e.outerHeight())) :
                (c.top = m.y + (m.h - g) * a.topRatio, c.left = m.x + (m.w - f) * a.leftRatio);
            if ("fixed" === b.wrap.css("position") || a.locked) c.top -= m.y, c.left -= m.x;
            return c = {
                top: w(c.top - h * a.topRatio),
                left: w(c.left - j * a.leftRatio),
                width: w(f + j),
                height: w(g + h)
            }
        },
        step: function(a, d) {
            var e, c, f = d.prop;
            c = b.current;
            var g = c.wrapSpace,
                h = c.skinSpace;
            if ("width" === f || "height" === f) e = d.end === d.start ? 1 : (a - d.start) / (d.end - d.start), b.isClosing && (e = 1 - e), c = "width" === f ? c.wPadding : c.hPadding, c = a - c, b.skin[f](l("width" === f ? c : c - g * e)), b.inner[f](l("width" ===
                f ? c : c - g * e - h * e))
        },
        zoomIn: function() {
            var a = b.current,
                d = a.pos,
                e = a.openEffect,
                c = "elastic" === e,
                k = f.extend({
                    opacity: 1
                }, d);
            delete k.position;
            c ? (d = this.getOrigPosition(), a.openOpacity && (d.opacity = 0.1)) : "fade" === e && (d.opacity = 0.1);
            b.wrap.css(d).animate(k, {
                duration: "none" === e ? 0 : a.openSpeed,
                easing: a.openEasing,
                step: c ? this.step : null,
                complete: b._afterZoomIn
            })
        },
        zoomOut: function() {
            var a = b.current,
                d = a.closeEffect,
                e = "elastic" === d,
                c = {
                    opacity: 0.1
                };
            e && (c = this.getOrigPosition(), a.closeOpacity && (c.opacity = 0.1));
            b.wrap.animate(c, {
                duration: "none" === d ? 0 : a.closeSpeed,
                easing: a.closeEasing,
                step: e ? this.step : null,
                complete: b._afterZoomOut
            })
        },
        changeIn: function() {
            var a = b.current,
                d = a.nextEffect,
                e = a.pos,
                c = {
                    opacity: 1
                },
                f = b.direction,
                g;
            e.opacity = 0.1;
            "elastic" === d && (g = "down" === f || "up" === f ? "top" : "left", "down" === f || "right" === f ? (e[g] = w(l(e[g]) - 200), c[g] = "+=200px") : (e[g] = w(l(e[g]) + 200), c[g] = "-=200px"));
            "none" === d ? b._afterZoomIn() : b.wrap.css(e).animate(c, {
                duration: a.nextSpeed,
                easing: a.nextEasing,
                complete: b._afterZoomIn
            })
        },
        changeOut: function() {
            var a =
                b.previous,
                d = a.prevEffect,
                e = {
                    opacity: 0.1
                },
                c = b.direction;
            "elastic" === d && (e["down" === c || "up" === c ? "top" : "left"] = ("up" === c || "left" === c ? "-" : "+") + "=200px");
            a.wrap.animate(e, {
                duration: "none" === d ? 0 : a.prevSpeed,
                easing: a.prevEasing,
                complete: function() {
                    f(this).trigger("onReset").remove()
                }
            })
        }
    };
    b.helpers.overlay = {
        defaults: {
            closeClick: !0,
            speedOut: 200,
            showEarly: !0,
            css: {},
            locked: !s,
            fixed: !0
        },
        overlay: null,
        fixed: !1,
        el: f("html"),
        create: function(a) {
            a = f.extend({}, this.defaults, a);
            this.overlay && this.close();
            this.overlay =
                f('<div class="fancybox-overlay"></div>').appendTo(b.coming ? b.coming.parent : a.parent);
            this.fixed = !1;
            a.fixed && b.defaults.fixed && (this.overlay.addClass("fancybox-overlay-fixed"), this.fixed = !0)
        },
        open: function(a) {
            var d = this;
            a = f.extend({}, this.defaults, a);
            this.overlay ? this.overlay.unbind(".overlay").width("auto").height("auto") : this.create(a);
            this.fixed || (n.bind("resize.overlay", f.proxy(this.update, this)), this.update());
            a.closeClick && this.overlay.bind("click.overlay", function(a) {
                if (f(a.target).hasClass("fancybox-overlay")) return b.isActive ?
                    b.close() : d.close(), !1
            });
            this.overlay.css(a.css).show()
        },
        close: function() {
            var a, b;
            n.unbind("resize.overlay");
            this.el.hasClass("fancybox-lock") && (f(".fancybox-margin").removeClass("fancybox-margin"), a = n.scrollTop(), b = n.scrollLeft(), this.el.removeClass("fancybox-lock"), n.scrollTop(a).scrollLeft(b));
            f(".fancybox-overlay").remove().hide();
            f.extend(this, {
                overlay: null,
                fixed: !1
            })
        },
        update: function() {
            var a = "100%",
                b;
            this.overlay.width(a).height("100%");
            I ? (b = Math.max(G.documentElement.offsetWidth, G.body.offsetWidth),
                p.width() > b && (a = p.width())) : p.width() > n.width() && (a = p.width());
            this.overlay.width(a).height(p.height())
        },
        onReady: function(a, b) {
            var e = this.overlay;
            f(".fancybox-overlay").stop(!0, !0);
            e || this.create(a);
            a.locked && (this.fixed && b.fixed) && (e || (this.margin = p.height() > n.height() ? f("html").css("margin-right").replace("px", "") : !1), b.locked = this.overlay.append(b.wrap), b.fixed = !1);
            !0 === a.showEarly && this.beforeShow.apply(this, arguments)
        },
        beforeShow: function(a, b) {
            var e, c;
            b.locked && (!1 !== this.margin && (f("*").filter(function() {
                return "fixed" ===
                    f(this).css("position") && !f(this).hasClass("fancybox-overlay") && !f(this).hasClass("fancybox-wrap")
            }).addClass("fancybox-margin"), this.el.addClass("fancybox-margin")), e = n.scrollTop(), c = n.scrollLeft(), this.el.addClass("fancybox-lock"), n.scrollTop(e).scrollLeft(c));
            this.open(a)
        },
        onUpdate: function() {
            this.fixed || this.update()
        },
        afterClose: function(a) {
            this.overlay && !b.coming && this.overlay.fadeOut(a.speedOut, f.proxy(this.close, this))
        }
    };
    b.helpers.title = {
        defaults: {
            type: "float",
            position: "bottom"
        },
        beforeShow: function(a) {
            var d =
                b.current,
                e = d.title,
                c = a.type;
            f.isFunction(e) && (e = e.call(d.element, d));
            if (q(e) && "" !== f.trim(e)) {
                d = f('<div class="fancybox-title fancybox-title-' + c + '-wrap">' + e + "</div>");
                switch (c) {
                    case "inside":
                        c = b.skin;
                        break;
                    case "outside":
                        c = b.wrap;
                        break;
                    case "over":
                        c = b.inner;
                        break;
                    default:
                        c = b.skin, d.appendTo("body"), I && d.width(d.width()), d.wrapInner('<span class="child"></span>'), b.current.margin[2] += Math.abs(l(d.css("margin-bottom")))
                }
                d["top" === a.position ? "prependTo" : "appendTo"](c)
            }
        }
    };
    f.fn.fancybox = function(a) {
        var d,
            e = f(this),
            c = this.selector || "",
            k = function(g) {
                var h = f(this).blur(),
                    j = d,
                    k, l;
                !g.ctrlKey && (!g.altKey && !g.shiftKey && !g.metaKey) && !h.is(".fancybox-wrap") && (k = a.groupAttr || "data-fancybox-group", l = h.attr(k), l || (k = "rel", l = h.get(0)[k]), l && ("" !== l && "nofollow" !== l) && (h = c.length ? f(c) : e, h = h.filter("[" + k + '="' + l + '"]'), j = h.index(this)), a.index = j, !1 !== b.open(h, a) && g.preventDefault())
            };
        a = a || {};
        d = a.index || 0;
        !c || !1 === a.live ? e.unbind("click.fb-start").bind("click.fb-start", k) : p.undelegate(c, "click.fb-start").delegate(c +
            ":not('.fancybox-item, .fancybox-nav')", "click.fb-start", k);
        this.filter("[data-fancybox-start=1]").trigger("click");
        return this
    };
    p.ready(function() {
        var a, d;
        f.scrollbarWidth === v && (f.scrollbarWidth = function() {
            var a = f('<div style="width:50px;height:50px;overflow:auto"><div/></div>').appendTo("body"),
                b = a.children(),
                b = b.innerWidth() - b.height(99).innerWidth();
            a.remove();
            return b
        });
        if (f.support.fixedPosition === v) {
            a = f.support;
            d = f('<div style="position:fixed;top:20px;"></div>').appendTo("body");
            var e = 20 ===
                d[0].offsetTop || 15 === d[0].offsetTop;
            d.remove();
            a.fixedPosition = e
        }
        f.extend(b.defaults, {
            scrollbarWidth: f.scrollbarWidth(),
            fixed: f.support.fixedPosition,
            parent: f("body")
        });
        a = f(r).width();
        J.addClass("fancybox-lock-test");
        d = f(r).width();
        J.removeClass("fancybox-lock-test");
        f("<style type='text/css'>.fancybox-margin{margin-right:" + (d - a) + "px;}</style>").appendTo("head")
    })
})(window, document, jQuery);
//# sourceURL=http://moviexk.org/wp-content/themes/moviexk/js/fancybox/jquery.fancybox.min.js
                                    

#50 JavaScript::Eval (size: 10144, repeated: 1) - SHA256: b1343a3b2e540e5b1d4b5347534dfcb9d5793f749527373f2b6915f72e5465ca

                                        /*! jQuery Migrate v1.4.1 | (c) jQuery Foundation and other contributors | jquery.org/license */
"undefined" == typeof jQuery.migrateMute && (jQuery.migrateMute = !0),
    function(a, b, c) {
        function d(c) {
            var d = b.console;
            f[c] || (f[c] = !0, a.migrateWarnings.push(c), d && d.warn && !a.migrateMute && (d.warn("JQMIGRATE: " + c), a.migrateTrace && d.trace && d.trace()))
        }

        function e(b, c, e, f) {
            if (Object.defineProperty) try {
                return void Object.defineProperty(b, c, {
                    configurable: !0,
                    enumerable: !0,
                    get: function() {
                        return d(f), e
                    },
                    set: function(a) {
                        d(f), e = a
                    }
                })
            } catch (g) {}
            a._definePropertyBroken = !0, b[c] = e
        }
        a.migrateVersion = "1.4.1";
        var f = {};
        a.migrateWarnings = [], b.console && b.console.log && b.console.log("JQMIGRATE: Migrate is installed" + (a.migrateMute ? "" : " with logging active") + ", version " + a.migrateVersion), a.migrateTrace === c && (a.migrateTrace = !0), a.migrateReset = function() {
            f = {}, a.migrateWarnings.length = 0
        }, "BackCompat" === document.compatMode && d("jQuery is not compatible with Quirks Mode");
        var g = a("<input/>", {
                size: 1
            }).attr("size") && a.attrFn,
            h = a.attr,
            i = a.attrHooks.value && a.attrHooks.value.get || function() {
                return null
            },
            j = a.attrHooks.value && a.attrHooks.value.set || function() {
                return c
            },
            k = /^(?:input|button)$/i,
            l = /^[238]$/,
            m = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,
            n = /^(?:checked|selected)$/i;
        e(a, "attrFn", g || {}, "jQuery.attrFn is deprecated"), a.attr = function(b, e, f, i) {
            var j = e.toLowerCase(),
                o = b && b.nodeType;
            return i && (h.length < 4 && d("jQuery.fn.attr( props, pass ) is deprecated"), b && !l.test(o) && (g ? e in g : a.isFunction(a.fn[e]))) ? a(b)[e](f) : ("type" === e && f !== c && k.test(b.nodeName) && b.parentNode && d("Can't change the 'type' of an input or button in IE 6/7/8"), !a.attrHooks[j] && m.test(j) && (a.attrHooks[j] = {get: function(b, d) {
                    var e, f = a.prop(b, d);
                    return f === !0 || "boolean" != typeof f && (e = b.getAttributeNode(d)) && e.nodeValue !== !1 ? d.toLowerCase() : c
                },
                set: function(b, c, d) {
                    var e;
                    return c === !1 ? a.removeAttr(b, d) : (e = a.propFix[d] || d, e in b && (b[e] = !0), b.setAttribute(d, d.toLowerCase())), d
                }
            }, n.test(j) && d("jQuery.fn.attr('" + j + "') might use property instead of attribute")), h.call(a, b, e, f))
        }, a.attrHooks.value = {get: function(a, b) {
                var c = (a.nodeName || "").toLowerCase();
                return "button" === c ? i.apply(this, arguments) : ("input" !== c && "option" !== c && d("jQuery.fn.attr('value') no longer gets properties"), b in a ? a.value : null)
            },
            set: function(a, b) {
                var c = (a.nodeName || "").toLowerCase();
                return "button" === c ? j.apply(this, arguments) : ("input" !== c && "option" !== c && d("jQuery.fn.attr('value', val) no longer sets properties"), void(a.value = b))
            }
        };
        var o, p, q = a.fn.init,
            r = a.find,
            s = a.parseJSON,
            t = /^\s*</,
            u = /\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/,
            v = /\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/g,
            w = /^([^<]*)(<[\w\W]+>)([^>]*)$/;
        a.fn.init = function(b, e, f) {
            var g, h;
            return b && "string" == typeof b && !a.isPlainObject(e) && (g = w.exec(a.trim(b))) && g[0] && (t.test(b) || d("$(html) HTML strings must start with '<' character"), g[3] && d("$(html) HTML text after last tag is ignored"), "#" === g[0].charAt(0) && (d("HTML string cannot start with a '#' character"), a.error("JQMIGRATE: Invalid selector string (XSS)")), e && e.context && e.context.nodeType && (e = e.context), a.parseHTML) ? q.call(this, a.parseHTML(g[2], e && e.ownerDocument || e || document, !0), e, f) : (h = q.apply(this, arguments), b && b.selector !== c ? (h.selector = b.selector, h.context = b.context) : (h.selector = "string" == typeof b ? b : "", b && (h.context = b.nodeType ? b : e || document)), h)
        }, a.fn.init.prototype = a.fn, a.find = function(a) {
            var b = Array.prototype.slice.call(arguments);
            if ("string" == typeof a && u.test(a)) try {
                document.querySelector(a)
            } catch (c) {
                a = a.replace(v, function(a, b, c, d) {
                    return "[" + b + c + '"' + d + '"]'
                });
                try {
                    document.querySelector(a), d("Attribute selector with '#' must be quoted: " + b[0]), b[0] = a
                } catch (e) {
                    d("Attribute selector with '#' was not fixed: " + b[0])
                }
            }
            return r.apply(this, b)
        };
        var x;
        for (x in r) Object.prototype.hasOwnProperty.call(r, x) && (a.find[x] = r[x]);
        a.parseJSON = function(a) {
            return a ? s.apply(this, arguments) : (d("jQuery.parseJSON requires a valid JSON string"), null)
        }, a.uaMatch = function(a) {
            a = a.toLowerCase();
            var b = /(chrome)[ \/]([\w.]+)/.exec(a) || /(webkit)[ \/]([\w.]+)/.exec(a) || /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a) || /(msie) ([\w.]+)/.exec(a) || a.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a) || [];
            return {
                browser: b[1] || "",
                version: b[2] || "0"
            }
        }, a.browser || (o = a.uaMatch(navigator.userAgent), p = {}, o.browser && (p[o.browser] = !0, p.version = o.version), p.chrome ? p.webkit = !0 : p.webkit && (p.safari = !0), a.browser = p), e(a, "browser", a.browser, "jQuery.browser is deprecated"), a.boxModel = a.support.boxModel = "CSS1Compat" === document.compatMode, e(a, "boxModel", a.boxModel, "jQuery.boxModel is deprecated"), e(a.support, "boxModel", a.support.boxModel, "jQuery.support.boxModel is deprecated"), a.sub = function() {
            function b(a, c) {
                return new b.fn.init(a, c)
            }
            a.extend(!0, b, this), b.superclass = this, b.fn = b.prototype = this(), b.fn.constructor = b, b.sub = this.sub, b.fn.init = function(d, e) {
                var f = a.fn.init.call(this, d, e, c);
                return f instanceof b ? f : b(f)
            }, b.fn.init.prototype = b.fn;
            var c = b(document);
            return d("jQuery.sub() is deprecated"), b
        }, a.fn.size = function() {
            return d("jQuery.fn.size() is deprecated; use the .length property"), this.length
        };
        var y = !1;
        a.swap && a.each(["height", "width", "reliableMarginRight"], function(b, c) {
            var d = a.cssHooks[c] && a.cssHooks[c].get;
            d && (a.cssHooks[c].get = function() {
                var a;
                return y = !0, a = d.apply(this, arguments), y = !1, a
            })
        }), a.swap = function(a, b, c, e) {
            var f, g, h = {};
            y || d("jQuery.swap() is undocumented and deprecated");
            for (g in b) h[g] = a.style[g], a.style[g] = b[g];
            f = c.apply(a, e || []);
            for (g in b) a.style[g] = h[g];
            return f
        }, a.ajaxSetup({
            converters: {
                "text json": a.parseJSON
            }
        });
        var z = a.fn.data;
        a.fn.data = function(b) {
            var e, f, g = this[0];
            return !g || "events" !== b || 1 !== arguments.length || (e = a.data(g, b), f = a._data(g, b), e !== c && e !== f || f === c) ? z.apply(this, arguments) : (d("Use of jQuery.fn.data('events') is deprecated"), f)
        };
        var A = /\/(java|ecma)script/i;
        a.clean || (a.clean = function(b, c, e, f) {
            c = c || document, c = !c.nodeType && c[0] || c, c = c.ownerDocument || c, d("jQuery.clean() is deprecated");
            var g, h, i, j, k = [];
            if (a.merge(k, a.buildFragment(b, c).childNodes), e)
                for (i = function(a) {
                        return !a.type || A.test(a.type) ? f ? f.push(a.parentNode ? a.parentNode.removeChild(a) : a) : e.appendChild(a) : void 0
                    }, g = 0; null != (h = k[g]); g++) a.nodeName(h, "script") && i(h) || (e.appendChild(h), "undefined" != typeof h.getElementsByTagName && (j = a.grep(a.merge([], h.getElementsByTagName("script")), i), k.splice.apply(k, [g + 1, 0].concat(j)), g += j.length));
            return k
        });
        var B = a.event.add,
            C = a.event.remove,
            D = a.event.trigger,
            E = a.fn.toggle,
            F = a.fn.live,
            G = a.fn.die,
            H = a.fn.load,
            I = "ajaxStart|ajaxStop|ajaxSend|ajaxComplete|ajaxError|ajaxSuccess",
            J = new RegExp("\\b(?:" + I + ")\\b"),
            K = /(?:^|\s)hover(\.\S+|)\b/,
            L = function(b) {
                return "string" != typeof b || a.event.special.hover ? b : (K.test(b) && d("'hover' pseudo-event is deprecated, use 'mouseenter mouseleave'"), b && b.replace(K, "mouseenter$1 mouseleave$1"))
            };
        a.event.props && "attrChange" !== a.event.props[0] && a.event.props.unshift("attrChange", "attrName", "relatedNode", "srcElement"), a.event.dispatch && e(a.event, "handle", a.event.dispatch, "jQuery.event.handle is undocumented and deprecated"), a.event.add = function(a, b, c, e, f) {
            a !== document && J.test(b) && d("AJAX events should be attached to document: " + b), B.call(this, a, L(b || ""), c, e, f)
        }, a.event.remove = function(a, b, c, d, e) {
            C.call(this, a, L(b) || "", c, d, e)
        }, a.each(["load", "unload", "error"], function(b, c) {
            a.fn[c] = function() {
                var a = Array.prototype.slice.call(arguments, 0);
                return "load" === c && "string" == typeof a[0] ? H.apply(this, a) : (d("jQuery.fn." + c + "() is deprecated"), a.splice(0, 0, c), arguments.length ? this.bind.apply(this, a) : (this.triggerHandler.apply(this, a), this))
            }
        }), a.fn.toggle = function(b, c) {
            if (!a.isFunction(b) || !a.isFunction(c)) return E.apply(this, arguments);
            d("jQuery.fn.toggle(handler, handler...) is deprecated");
            var e = arguments,
                f = b.guid || a.guid++,
                g = 0,
                h = function(c) {
                    var d = (a._data(this, "lastToggle" + b.guid) || 0) % g;
                    return a._data(this, "lastToggle" + b.guid, d + 1), c.preventDefault(), e[d].apply(this, arguments) || !1
                };
            for (h.guid = f; g < e.length;) e[g++].guid = f;
            return this.click(h)
        }, a.fn.live = function(b, c, e) {
            return d("jQuery.fn.live() is deprecated"), F ? F.apply(this, arguments) : (a(this.context).on(b, this.selector, c, e), this)
        }, a.fn.die = function(b, c) {
            return d("jQuery.fn.die() is deprecated"), G ? G.apply(this, arguments) : (a(this.context).off(b, this.selector || "**", c), this)
        }, a.event.trigger = function(a, b, c, e) {
            return c || J.test(a) || d("Global events are undocumented and deprecated"), D.call(this, a, b, c || document, e)
        }, a.each(I.split("|"), function(b, c) {
            a.event.special[c] = {
                setup: function() {
                    var b = this;
                    return b !== document && (a.event.add(document, c + "." + a.guid, function() {
                        a.event.trigger(c, Array.prototype.slice.call(arguments, 1), b, !0)
                    }), a._data(this, c, a.guid++)), !1
                },
                teardown: function() {
                    return this !== document && a.event.remove(document, c + "." + a._data(this, c)), !1
                }
            }
        }), a.event.special.ready = {
            setup: function() {
                this === document && d("'ready' event is deprecated")
            }
        };
        var M = a.fn.andSelf || a.fn.addBack,
            N = a.fn.find;
        if (a.fn.andSelf = function() {
                return d("jQuery.fn.andSelf() replaced by jQuery.fn.addBack()"), M.apply(this, arguments)
            }, a.fn.find = function(a) {
                var b = N.apply(this, arguments);
                return b.context = this.context, b.selector = this.selector ? this.selector + " " + a : a, b
            }, a.Callbacks) {
            var O = a.Deferred,
                P = [
                    ["resolve", "done", a.Callbacks("once memory"), a.Callbacks("once memory"), "resolved"],
                    ["reject", "fail", a.Callbacks("once memory"), a.Callbacks("once memory"), "rejected"],
                    ["notify", "progress", a.Callbacks("memory"), a.Callbacks("memory")]
                ];
            a.Deferred = function(b) {
                var c = O(),
                    e = c.promise();
                return c.pipe = e.pipe = function() {
                    var b = arguments;
                    return d("deferred.pipe() is deprecated"), a.Deferred(function(d) {
                        a.each(P, function(f, g) {
                            var h = a.isFunction(b[f]) && b[f];
                            c[g[1]](function() {
                                var b = h && h.apply(this, arguments);
                                b && a.isFunction(b.promise) ? b.promise().done(d.resolve).fail(d.reject).progress(d.notify) : d[g[0] + "With"](this === e ? d.promise() : this, h ? [b] : arguments)
                            })
                        }), b = null
                    }).promise()
                }, c.isResolved = function() {
                    return d("deferred.isResolved is deprecated"), "resolved" === c.state()
                }, c.isRejected = function() {
                    return d("deferred.isRejected is deprecated"), "rejected" === c.state()
                }, b && b.call(c, c), c
            }
        }
    }(jQuery, window);
//# sourceURL=http://moviexk.org/wp-includes/js/jquery/jquery-migrate.min.js?ver=1.4.1
                                    

#51 JavaScript::Eval (size: 97261, repeated: 1) - SHA256: 0e2b8075e3befbeffe2645d773fd9a778118c869cd579b53f1d61fbe00814982

                                        /*! jQuery v1.12.4 | (c) jQuery Foundation | jquery.org/license */ ! function(a, b) {
    "object" == typeof module && "object" == typeof module.exports ? module.exports = a.document ? b(a, !0) : function(a) {
        if (!a.document) throw new Error("jQuery requires a window with a document");
        return b(a)
    } : b(a)
}("undefined" != typeof window ? window : this, function(a, b) {
    var c = [],
        d = a.document,
        e = c.slice,
        f = c.concat,
        g = c.push,
        h = c.indexOf,
        i = {},
        j = i.toString,
        k = i.hasOwnProperty,
        l = {},
        m = "1.12.4",
        n = function(a, b) {
            return new n.fn.init(a, b)
        },
        o = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
        p = /^-ms-/,
        q = /-([\da-z])/gi,
        r = function(a, b) {
            return b.toUpperCase()
        };
    n.fn = n.prototype = {
        jquery: m,
        constructor: n,
        selector: "",
        length: 0,
        toArray: function() {
            return e.call(this)
        },
        get: function(a) {
            return null != a ? 0 > a ? this[a + this.length] : this[a] : e.call(this)
        },
        pushStack: function(a) {
            var b = n.merge(this.constructor(), a);
            return b.prevObject = this, b.context = this.context, b
        },
        each: function(a) {
            return n.each(this, a)
        },
        map: function(a) {
            return this.pushStack(n.map(this, function(b, c) {
                return a.call(b, c, b)
            }))
        },
        slice: function() {
            return this.pushStack(e.apply(this, arguments))
        },
        first: function() {
            return this.eq(0)
        },
        last: function() {
            return this.eq(-1)
        },
        eq: function(a) {
            var b = this.length,
                c = +a + (0 > a ? b : 0);
            return this.pushStack(c >= 0 && b > c ? [this[c]] : [])
        },
        end: function() {
            return this.prevObject || this.constructor()
        },
        push: g,
        sort: c.sort,
        splice: c.splice
    }, n.extend = n.fn.extend = function() {
        var a, b, c, d, e, f, g = arguments[0] || {},
            h = 1,
            i = arguments.length,
            j = !1;
        for ("boolean" == typeof g && (j = g, g = arguments[h] || {}, h++), "object" == typeof g || n.isFunction(g) || (g = {}), h === i && (g = this, h--); i > h; h++)
            if (null != (e = arguments[h]))
                for (d in e) a = g[d], c = e[d], g !== c && (j && c && (n.isPlainObject(c) || (b = n.isArray(c))) ? (b ? (b = !1, f = a && n.isArray(a) ? a : []) : f = a && n.isPlainObject(a) ? a : {}, g[d] = n.extend(j, f, c)) : void 0 !== c && (g[d] = c));
        return g
    }, n.extend({
        expando: "jQuery" + (m + Math.random()).replace(/\D/g, ""),
        isReady: !0,
        error: function(a) {
            throw new Error(a)
        },
        noop: function() {},
        isFunction: function(a) {
            return "function" === n.type(a)
        },
        isArray: Array.isArray || function(a) {
            return "array" === n.type(a)
        },
        isWindow: function(a) {
            return null != a && a == a.window
        },
        isNumeric: function(a) {
            var b = a && a.toString();
            return !n.isArray(a) && b - parseFloat(b) + 1 >= 0
        },
        isEmptyObject: function(a) {
            var b;
            for (b in a) return !1;
            return !0
        },
        isPlainObject: function(a) {
            var b;
            if (!a || "object" !== n.type(a) || a.nodeType || n.isWindow(a)) return !1;
            try {
                if (a.constructor && !k.call(a, "constructor") && !k.call(a.constructor.prototype, "isPrototypeOf")) return !1
            } catch (c) {
                return !1
            }
            if (!l.ownFirst)
                for (b in a) return k.call(a, b);
            for (b in a);
            return void 0 === b || k.call(a, b)
        },
        type: function(a) {
            return null == a ? a + "" : "object" == typeof a || "function" == typeof a ? i[j.call(a)] || "object" : typeof a
        },
        globalEval: function(b) {
            b && n.trim(b) && (a.execScript || function(b) {
                a.eval.call(a, b)
            })(b)
        },
        camelCase: function(a) {
            return a.replace(p, "ms-").replace(q, r)
        },
        nodeName: function(a, b) {
            return a.nodeName && a.nodeName.toLowerCase() === b.toLowerCase()
        },
        each: function(a, b) {
            var c, d = 0;
            if (s(a)) {
                for (c = a.length; c > d; d++)
                    if (b.call(a[d], d, a[d]) === !1) break
            } else
                for (d in a)
                    if (b.call(a[d], d, a[d]) === !1) break; return a
        },
        trim: function(a) {
            return null == a ? "" : (a + "").replace(o, "")
        },
        makeArray: function(a, b) {
            var c = b || [];
            return null != a && (s(Object(a)) ? n.merge(c, "string" == typeof a ? [a] : a) : g.call(c, a)), c
        },
        inArray: function(a, b, c) {
            var d;
            if (b) {
                if (h) return h.call(b, a, c);
                for (d = b.length, c = c ? 0 > c ? Math.max(0, d + c) : c : 0; d > c; c++)
                    if (c in b && b[c] === a) return c
            }
            return -1
        },
        merge: function(a, b) {
            var c = +b.length,
                d = 0,
                e = a.length;
            while (c > d) a[e++] = b[d++];
            if (c !== c)
                while (void 0 !== b[d]) a[e++] = b[d++];
            return a.length = e, a
        },
        grep: function(a, b, c) {
            for (var d, e = [], f = 0, g = a.length, h = !c; g > f; f++) d = !b(a[f], f), d !== h && e.push(a[f]);
            return e
        },
        map: function(a, b, c) {
            var d, e, g = 0,
                h = [];
            if (s(a))
                for (d = a.length; d > g; g++) e = b(a[g], g, c), null != e && h.push(e);
            else
                for (g in a) e = b(a[g], g, c), null != e && h.push(e);
            return f.apply([], h)
        },
        guid: 1,
        proxy: function(a, b) {
            var c, d, f;
            return "string" == typeof b && (f = a[b], b = a, a = f), n.isFunction(a) ? (c = e.call(arguments, 2), d = function() {
                return a.apply(b || this, c.concat(e.call(arguments)))
            }, d.guid = a.guid = a.guid || n.guid++, d) : void 0
        },
        now: function() {
            return +new Date
        },
        support: l
    }), "function" == typeof Symbol && (n.fn[Symbol.iterator] = c[Symbol.iterator]), n.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function(a, b) {
        i["[object " + b + "]"] = b.toLowerCase()
    });

    function s(a) {
        var b = !!a && "length" in a && a.length,
            c = n.type(a);
        return "function" === c || n.isWindow(a) ? !1 : "array" === c || 0 === b || "number" == typeof b && b > 0 && b - 1 in a
    }
    var t = function(a) {
        var b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u = "sizzle" + 1 * new Date,
            v = a.document,
            w = 0,
            x = 0,
            y = ga(),
            z = ga(),
            A = ga(),
            B = function(a, b) {
                return a === b && (l = !0), 0
            },
            C = 1 << 31,
            D = {}.hasOwnProperty,
            E = [],
            F = E.pop,
            G = E.push,
            H = E.push,
            I = E.slice,
            J = function(a, b) {
                for (var c = 0, d = a.length; d > c; c++)
                    if (a[c] === b) return c;
                return -1
            },
            K = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
            L = "[\\x20\\t\\r\\n\\f]",
            M = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",
            N = "\\[" + L + "*(" + M + ")(?:" + L + "*([*^$|!~]?=)" + L + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + M + "))|)" + L + "*\\]",
            O = ":(" + M + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + N + ")*)|.*)\\)|)",
            P = new RegExp(L + "+", "g"),
            Q = new RegExp("^" + L + "+|((?:^|[^\\\\])(?:\\\\.)*)" + L + "+$", "g"),
            R = new RegExp("^" + L + "*," + L + "*"),
            S = new RegExp("^" + L + "*([>+~]|" + L + ")" + L + "*"),
            T = new RegExp("=" + L + "*([^\\]'\"]*?)" + L + "*\\]", "g"),
            U = new RegExp(O),
            V = new RegExp("^" + M + "$"),
            W = {
                ID: new RegExp("^#(" + M + ")"),
                CLASS: new RegExp("^\\.(" + M + ")"),
                TAG: new RegExp("^(" + M + "|[*])"),
                ATTR: new RegExp("^" + N),
                PSEUDO: new RegExp("^" + O),
                CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + L + "*(even|odd|(([+-]|)(\\d*)n|)" + L + "*(?:([+-]|)" + L + "*(\\d+)|))" + L + "*\\)|)", "i"),
                bool: new RegExp("^(?:" + K + ")$", "i"),
                needsContext: new RegExp("^" + L + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + L + "*((?:-\\d)?\\d*)" + L + "*\\)|)(?=[^-]|$)", "i")
            },
            X = /^(?:input|select|textarea|button)$/i,
            Y = /^h\d$/i,
            Z = /^[^{]+\{\s*\[native \w/,
            $ = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
            _ = /[+~]/,
            aa = /'|\\/g,
            ba = new RegExp("\\\\([\\da-f]{1,6}" + L + "?|(" + L + ")|.)", "ig"),
            ca = function(a, b, c) {
                var d = "0x" + b - 65536;
                return d !== d || c ? b : 0 > d ? String.fromCharCode(d + 65536) : String.fromCharCode(d >> 10 | 55296, 1023 & d | 56320)
            },
            da = function() {
                m()
            };
        try {
            H.apply(E = I.call(v.childNodes), v.childNodes), E[v.childNodes.length].nodeType
        } catch (ea) {
            H = {
                apply: E.length ? function(a, b) {
                    G.apply(a, I.call(b))
                } : function(a, b) {
                    var c = a.length,
                        d = 0;
                    while (a[c++] = b[d++]);
                    a.length = c - 1
                }
            }
        }

        function fa(a, b, d, e) {
            var f, h, j, k, l, o, r, s, w = b && b.ownerDocument,
                x = b ? b.nodeType : 9;
            if (d = d || [], "string" != typeof a || !a || 1 !== x && 9 !== x && 11 !== x) return d;
            if (!e && ((b ? b.ownerDocument || b : v) !== n && m(b), b = b || n, p)) {
                if (11 !== x && (o = $.exec(a)))
                    if (f = o[1]) {
                        if (9 === x) {
                            if (!(j = b.getElementById(f))) return d;
                            if (j.id === f) return d.push(j), d
                        } else if (w && (j = w.getElementById(f)) && t(b, j) && j.id === f) return d.push(j), d
                    } else {
                        if (o[2]) return H.apply(d, b.getElementsByTagName(a)), d;
                        if ((f = o[3]) && c.getElementsByClassName && b.getElementsByClassName) return H.apply(d, b.getElementsByClassName(f)), d
                    }
                if (c.qsa && !A[a + " "] && (!q || !q.test(a))) {
                    if (1 !== x) w = b, s = a;
                    else if ("object" !== b.nodeName.toLowerCase()) {
                        (k = b.getAttribute("id")) ? k = k.replace(aa, "\\$&"): b.setAttribute("id", k = u), r = g(a), h = r.length, l = V.test(k) ? "#" + k : "[id='" + k + "']";
                        while (h--) r[h] = l + " " + qa(r[h]);
                        s = r.join(","), w = _.test(a) && oa(b.parentNode) || b
                    }
                    if (s) try {
                        return H.apply(d, w.querySelectorAll(s)), d
                    } catch (y) {} finally {
                        k === u && b.removeAttribute("id")
                    }
                }
            }
            return i(a.replace(Q, "$1"), b, d, e)
        }

        function ga() {
            var a = [];

            function b(c, e) {
                return a.push(c + " ") > d.cacheLength && delete b[a.shift()], b[c + " "] = e
            }
            return b
        }

        function ha(a) {
            return a[u] = !0, a
        }

        function ia(a) {
            var b = n.createElement("div");
            try {
                return !!a(b)
            } catch (c) {
                return !1
            } finally {
                b.parentNode && b.parentNode.removeChild(b), b = null
            }
        }

        function ja(a, b) {
            var c = a.split("|"),
                e = c.length;
            while (e--) d.attrHandle[c[e]] = b
        }

        function ka(a, b) {
            var c = b && a,
                d = c && 1 === a.nodeType && 1 === b.nodeType && (~b.sourceIndex || C) - (~a.sourceIndex || C);
            if (d) return d;
            if (c)
                while (c = c.nextSibling)
                    if (c === b) return -1;
            return a ? 1 : -1
        }

        function la(a) {
            return function(b) {
                var c = b.nodeName.toLowerCase();
                return "input" === c && b.type === a
            }
        }

        function ma(a) {
            return function(b) {
                var c = b.nodeName.toLowerCase();
                return ("input" === c || "button" === c) && b.type === a
            }
        }

        function na(a) {
            return ha(function(b) {
                return b = +b, ha(function(c, d) {
                    var e, f = a([], c.length, b),
                        g = f.length;
                    while (g--) c[e = f[g]] && (c[e] = !(d[e] = c[e]))
                })
            })
        }

        function oa(a) {
            return a && "undefined" != typeof a.getElementsByTagName && a
        }
        c = fa.support = {}, f = fa.isXML = function(a) {
            var b = a && (a.ownerDocument || a).documentElement;
            return b ? "HTML" !== b.nodeName : !1
        }, m = fa.setDocument = function(a) {
            var b, e, g = a ? a.ownerDocument || a : v;
            return g !== n && 9 === g.nodeType && g.documentElement ? (n = g, o = n.documentElement, p = !f(n), (e = n.defaultView) && e.top !== e && (e.addEventListener ? e.addEventListener("unload", da, !1) : e.attachEvent && e.attachEvent("onunload", da)), c.attributes = ia(function(a) {
                return a.className = "i", !a.getAttribute("className")
            }), c.getElementsByTagName = ia(function(a) {
                return a.appendChild(n.createComment("")), !a.getElementsByTagName("*").length
            }), c.getElementsByClassName = Z.test(n.getElementsByClassName), c.getById = ia(function(a) {
                return o.appendChild(a).id = u, !n.getElementsByName || !n.getElementsByName(u).length
            }), c.getById ? (d.find.ID = function(a, b) {
                if ("undefined" != typeof b.getElementById && p) {
                    var c = b.getElementById(a);
                    return c ? [c] : []
                }
            }, d.filter.ID = function(a) {
                var b = a.replace(ba, ca);
                return function(a) {
                    return a.getAttribute("id") === b
                }
            }) : (delete d.find.ID, d.filter.ID = function(a) {
                var b = a.replace(ba, ca);
                return function(a) {
                    var c = "undefined" != typeof a.getAttributeNode && a.getAttributeNode("id");
                    return c && c.value === b
                }
            }), d.find.TAG = c.getElementsByTagName ? function(a, b) {
                return "undefined" != typeof b.getElementsByTagName ? b.getElementsByTagName(a) : c.qsa ? b.querySelectorAll(a) : void 0
            } : function(a, b) {
                var c, d = [],
                    e = 0,
                    f = b.getElementsByTagName(a);
                if ("*" === a) {
                    while (c = f[e++]) 1 === c.nodeType && d.push(c);
                    return d
                }
                return f
            }, d.find.CLASS = c.getElementsByClassName && function(a, b) {
                return "undefined" != typeof b.getElementsByClassName && p ? b.getElementsByClassName(a) : void 0
            }, r = [], q = [], (c.qsa = Z.test(n.querySelectorAll)) && (ia(function(a) {
                o.appendChild(a).innerHTML = "<a id='" + u + "'></a><select id='" + u + "-\r\\' msallowcapture=''><option selected=''></option></select>", a.querySelectorAll("[msallowcapture^='']").length && q.push("[*^$]=" + L + "*(?:''|\"\")"), a.querySelectorAll("[selected]").length || q.push("\\[" + L + "*(?:value|" + K + ")"), a.querySelectorAll("[id~=" + u + "-]").length || q.push("~="), a.querySelectorAll(":checked").length || q.push(":checked"), a.querySelectorAll("a#" + u + "+*").length || q.push(".#.+[+~]")
            }), ia(function(a) {
                var b = n.createElement("input");
                b.setAttribute("type", "hidden"), a.appendChild(b).setAttribute("name", "D"), a.querySelectorAll("[name=d]").length && q.push("name" + L + "*[*^$|!~]?="), a.querySelectorAll(":enabled").length || q.push(":enabled", ":disabled"), a.querySelectorAll("*,:x"), q.push(",.*:")
            })), (c.matchesSelector = Z.test(s = o.matches || o.webkitMatchesSelector || o.mozMatchesSelector || o.oMatchesSelector || o.msMatchesSelector)) && ia(function(a) {
                c.disconnectedMatch = s.call(a, "div"), s.call(a, "[s!='']:x"), r.push("!=", O)
            }), q = q.length && new RegExp(q.join("|")), r = r.length && new RegExp(r.join("|")), b = Z.test(o.compareDocumentPosition), t = b || Z.test(o.contains) ? function(a, b) {
                var c = 9 === a.nodeType ? a.documentElement : a,
                    d = b && b.parentNode;
                return a === d || !(!d || 1 !== d.nodeType || !(c.contains ? c.contains(d) : a.compareDocumentPosition && 16 & a.compareDocumentPosition(d)))
            } : function(a, b) {
                if (b)
                    while (b = b.parentNode)
                        if (b === a) return !0;
                return !1
            }, B = b ? function(a, b) {
                if (a === b) return l = !0, 0;
                var d = !a.compareDocumentPosition - !b.compareDocumentPosition;
                return d ? d : (d = (a.ownerDocument || a) === (b.ownerDocument || b) ? a.compareDocumentPosition(b) : 1, 1 & d || !c.sortDetached && b.compareDocumentPosition(a) === d ? a === n || a.ownerDocument === v && t(v, a) ? -1 : b === n || b.ownerDocument === v && t(v, b) ? 1 : k ? J(k, a) - J(k, b) : 0 : 4 & d ? -1 : 1)
            } : function(a, b) {
                if (a === b) return l = !0, 0;
                var c, d = 0,
                    e = a.parentNode,
                    f = b.parentNode,
                    g = [a],
                    h = [b];
                if (!e || !f) return a === n ? -1 : b === n ? 1 : e ? -1 : f ? 1 : k ? J(k, a) - J(k, b) : 0;
                if (e === f) return ka(a, b);
                c = a;
                while (c = c.parentNode) g.unshift(c);
                c = b;
                while (c = c.parentNode) h.unshift(c);
                while (g[d] === h[d]) d++;
                return d ? ka(g[d], h[d]) : g[d] === v ? -1 : h[d] === v ? 1 : 0
            }, n) : n
        }, fa.matches = function(a, b) {
            return fa(a, null, null, b)
        }, fa.matchesSelector = function(a, b) {
            if ((a.ownerDocument || a) !== n && m(a), b = b.replace(T, "='$1']"), c.matchesSelector && p && !A[b + " "] && (!r || !r.test(b)) && (!q || !q.test(b))) try {
                var d = s.call(a, b);
                if (d || c.disconnectedMatch || a.document && 11 !== a.document.nodeType) return d
            } catch (e) {}
            return fa(b, n, null, [a]).length > 0
        }, fa.contains = function(a, b) {
            return (a.ownerDocument || a) !== n && m(a), t(a, b)
        }, fa.attr = function(a, b) {
            (a.ownerDocument || a) !== n && m(a);
            var e = d.attrHandle[b.toLowerCase()],
                f = e && D.call(d.attrHandle, b.toLowerCase()) ? e(a, b, !p) : void 0;
            return void 0 !== f ? f : c.attributes || !p ? a.getAttribute(b) : (f = a.getAttributeNode(b)) && f.specified ? f.value : null
        }, fa.error = function(a) {
            throw new Error("Syntax error, unrecognized expression: " + a)
        }, fa.uniqueSort = function(a) {
            var b, d = [],
                e = 0,
                f = 0;
            if (l = !c.detectDuplicates, k = !c.sortStable && a.slice(0), a.sort(B), l) {
                while (b = a[f++]) b === a[f] && (e = d.push(f));
                while (e--) a.splice(d[e], 1)
            }
            return k = null, a
        }, e = fa.getText = function(a) {
            var b, c = "",
                d = 0,
                f = a.nodeType;
            if (f) {
                if (1 === f || 9 === f || 11 === f) {
                    if ("string" == typeof a.textContent) return a.textContent;
                    for (a = a.firstChild; a; a = a.nextSibling) c += e(a)
                } else if (3 === f || 4 === f) return a.nodeValue
            } else
                while (b = a[d++]) c += e(b);
            return c
        }, d = fa.selectors = {
            cacheLength: 50,
            createPseudo: ha,
            match: W,
            attrHandle: {},
            find: {},
            relative: {
                ">": {
                    dir: "parentNode",
                    first: !0
                },
                " ": {
                    dir: "parentNode"
                },
                "+": {
                    dir: "previousSibling",
                    first: !0
                },
                "~": {
                    dir: "previousSibling"
                }
            },
            preFilter: {
                ATTR: function(a) {
                    return a[1] = a[1].replace(ba, ca), a[3] = (a[3] || a[4] || a[5] || "").replace(ba, ca), "~=" === a[2] && (a[3] = " " + a[3] + " "), a.slice(0, 4)
                },
                CHILD: function(a) {
                    return a[1] = a[1].toLowerCase(), "nth" === a[1].slice(0, 3) ? (a[3] || fa.error(a[0]), a[4] = +(a[4] ? a[5] + (a[6] || 1) : 2 * ("even" === a[3] || "odd" === a[3])), a[5] = +(a[7] + a[8] || "odd" === a[3])) : a[3] && fa.error(a[0]), a
                },
                PSEUDO: function(a) {
                    var b, c = !a[6] && a[2];
                    return W.CHILD.test(a[0]) ? null : (a[3] ? a[2] = a[4] || a[5] || "" : c && U.test(c) && (b = g(c, !0)) && (b = c.indexOf(")", c.length - b) - c.length) && (a[0] = a[0].slice(0, b), a[2] = c.slice(0, b)), a.slice(0, 3))
                }
            },
            filter: {
                TAG: function(a) {
                    var b = a.replace(ba, ca).toLowerCase();
                    return "*" === a ? function() {
                        return !0
                    } : function(a) {
                        return a.nodeName && a.nodeName.toLowerCase() === b
                    }
                },
                CLASS: function(a) {
                    var b = y[a + " "];
                    return b || (b = new RegExp("(^|" + L + ")" + a + "(" + L + "|$)")) && y(a, function(a) {
                        return b.test("string" == typeof a.className && a.className || "undefined" != typeof a.getAttribute && a.getAttribute("class") || "")
                    })
                },
                ATTR: function(a, b, c) {
                    return function(d) {
                        var e = fa.attr(d, a);
                        return null == e ? "!=" === b : b ? (e += "", "=" === b ? e === c : "!=" === b ? e !== c : "^=" === b ? c && 0 === e.indexOf(c) : "*=" === b ? c && e.indexOf(c) > -1 : "$=" === b ? c && e.slice(-c.length) === c : "~=" === b ? (" " + e.replace(P, " ") + " ").indexOf(c) > -1 : "|=" === b ? e === c || e.slice(0, c.length + 1) === c + "-" : !1) : !0
                    }
                },
                CHILD: function(a, b, c, d, e) {
                    var f = "nth" !== a.slice(0, 3),
                        g = "last" !== a.slice(-4),
                        h = "of-type" === b;
                    return 1 === d && 0 === e ? function(a) {
                        return !!a.parentNode
                    } : function(b, c, i) {
                        var j, k, l, m, n, o, p = f !== g ? "nextSibling" : "previousSibling",
                            q = b.parentNode,
                            r = h && b.nodeName.toLowerCase(),
                            s = !i && !h,
                            t = !1;
                        if (q) {
                            if (f) {
                                while (p) {
                                    m = b;
                                    while (m = m[p])
                                        if (h ? m.nodeName.toLowerCase() === r : 1 === m.nodeType) return !1;
                                    o = p = "only" === a && !o && "nextSibling"
                                }
                                return !0
                            }
                            if (o = [g ? q.firstChild : q.lastChild], g && s) {
                                m = q, l = m[u] || (m[u] = {}), k = l[m.uniqueID] || (l[m.uniqueID] = {}), j = k[a] || [], n = j[0] === w && j[1], t = n && j[2], m = n && q.childNodes[n];
                                while (m = ++n && m && m[p] || (t = n = 0) || o.pop())
                                    if (1 === m.nodeType && ++t && m === b) {
                                        k[a] = [w, n, t];
                                        break
                                    }
                            } else if (s && (m = b, l = m[u] || (m[u] = {}), k = l[m.uniqueID] || (l[m.uniqueID] = {}), j = k[a] || [], n = j[0] === w && j[1], t = n), t === !1)
                                while (m = ++n && m && m[p] || (t = n = 0) || o.pop())
                                    if ((h ? m.nodeName.toLowerCase() === r : 1 === m.nodeType) && ++t && (s && (l = m[u] || (m[u] = {}), k = l[m.uniqueID] || (l[m.uniqueID] = {}), k[a] = [w, t]), m === b)) break;
                            return t -= e, t === d || t % d === 0 && t / d >= 0
                        }
                    }
                },
                PSEUDO: function(a, b) {
                    var c, e = d.pseudos[a] || d.setFilters[a.toLowerCase()] || fa.error("unsupported pseudo: " + a);
                    return e[u] ? e(b) : e.length > 1 ? (c = [a, a, "", b], d.setFilters.hasOwnProperty(a.toLowerCase()) ? ha(function(a, c) {
                        var d, f = e(a, b),
                            g = f.length;
                        while (g--) d = J(a, f[g]), a[d] = !(c[d] = f[g])
                    }) : function(a) {
                        return e(a, 0, c)
                    }) : e
                }
            },
            pseudos: {
                not: ha(function(a) {
                    var b = [],
                        c = [],
                        d = h(a.replace(Q, "$1"));
                    return d[u] ? ha(function(a, b, c, e) {
                        var f, g = d(a, null, e, []),
                            h = a.length;
                        while (h--)(f = g[h]) && (a[h] = !(b[h] = f))
                    }) : function(a, e, f) {
                        return b[0] = a, d(b, null, f, c), b[0] = null, !c.pop()
                    }
                }),
                has: ha(function(a) {
                    return function(b) {
                        return fa(a, b).length > 0
                    }
                }),
                contains: ha(function(a) {
                    return a = a.replace(ba, ca),
                        function(b) {
                            return (b.textContent || b.innerText || e(b)).indexOf(a) > -1
                        }
                }),
                lang: ha(function(a) {
                    return V.test(a || "") || fa.error("unsupported lang: " + a), a = a.replace(ba, ca).toLowerCase(),
                        function(b) {
                            var c;
                            do
                                if (c = p ? b.lang : b.getAttribute("xml:lang") || b.getAttribute("lang")) return c = c.toLowerCase(), c === a || 0 === c.indexOf(a + "-");
                            while ((b = b.parentNode) && 1 === b.nodeType);
                            return !1
                        }
                }),
                target: function(b) {
                    var c = a.location && a.location.hash;
                    return c && c.slice(1) === b.id
                },
                root: function(a) {
                    return a === o
                },
                focus: function(a) {
                    return a === n.activeElement && (!n.hasFocus || n.hasFocus()) && !!(a.type || a.href || ~a.tabIndex)
                },
                enabled: function(a) {
                    return a.disabled === !1
                },
                disabled: function(a) {
                    return a.disabled === !0
                },
                checked: function(a) {
                    var b = a.nodeName.toLowerCase();
                    return "input" === b && !!a.checked || "option" === b && !!a.selected
                },
                selected: function(a) {
                    return a.parentNode && a.parentNode.selectedIndex, a.selected === !0
                },
                empty: function(a) {
                    for (a = a.firstChild; a; a = a.nextSibling)
                        if (a.nodeType < 6) return !1;
                    return !0
                },
                parent: function(a) {
                    return !d.pseudos.empty(a)
                },
                header: function(a) {
                    return Y.test(a.nodeName)
                },
                input: function(a) {
                    return X.test(a.nodeName)
                },
                button: function(a) {
                    var b = a.nodeName.toLowerCase();
                    return "input" === b && "button" === a.type || "button" === b
                },
                text: function(a) {
                    var b;
                    return "input" === a.nodeName.toLowerCase() && "text" === a.type && (null == (b = a.getAttribute("type")) || "text" === b.toLowerCase())
                },
                first: na(function() {
                    return [0]
                }),
                last: na(function(a, b) {
                    return [b - 1]
                }),
                eq: na(function(a, b, c) {
                    return [0 > c ? c + b : c]
                }),
                even: na(function(a, b) {
                    for (var c = 0; b > c; c += 2) a.push(c);
                    return a
                }),
                odd: na(function(a, b) {
                    for (var c = 1; b > c; c += 2) a.push(c);
                    return a
                }),
                lt: na(function(a, b, c) {
                    for (var d = 0 > c ? c + b : c; --d >= 0;) a.push(d);
                    return a
                }),
                gt: na(function(a, b, c) {
                    for (var d = 0 > c ? c + b : c; ++d < b;) a.push(d);
                    return a
                })
            }
        }, d.pseudos.nth = d.pseudos.eq;
        for (b in {
                radio: !0,
                checkbox: !0,
                file: !0,
                password: !0,
                image: !0
            }) d.pseudos[b] = la(b);
        for (b in {
                submit: !0,
                reset: !0
            }) d.pseudos[b] = ma(b);

        function pa() {}
        pa.prototype = d.filters = d.pseudos, d.setFilters = new pa, g = fa.tokenize = function(a, b) {
            var c, e, f, g, h, i, j, k = z[a + " "];
            if (k) return b ? 0 : k.slice(0);
            h = a, i = [], j = d.preFilter;
            while (h) {
                c && !(e = R.exec(h)) || (e && (h = h.slice(e[0].length) || h), i.push(f = [])), c = !1, (e = S.exec(h)) && (c = e.shift(), f.push({
                    value: c,
                    type: e[0].replace(Q, " ")
                }), h = h.slice(c.length));
                for (g in d.filter) !(e = W[g].exec(h)) || j[g] && !(e = j[g](e)) || (c = e.shift(), f.push({
                    value: c,
                    type: g,
                    matches: e
                }), h = h.slice(c.length));
                if (!c) break
            }
            return b ? h.length : h ? fa.error(a) : z(a, i).slice(0)
        };

        function qa(a) {
            for (var b = 0, c = a.length, d = ""; c > b; b++) d += a[b].value;
            return d
        }

        function ra(a, b, c) {
            var d = b.dir,
                e = c && "parentNode" === d,
                f = x++;
            return b.first ? function(b, c, f) {
                while (b = b[d])
                    if (1 === b.nodeType || e) return a(b, c, f)
            } : function(b, c, g) {
                var h, i, j, k = [w, f];
                if (g) {
                    while (b = b[d])
                        if ((1 === b.nodeType || e) && a(b, c, g)) return !0
                } else
                    while (b = b[d])
                        if (1 === b.nodeType || e) {
                            if (j = b[u] || (b[u] = {}), i = j[b.uniqueID] || (j[b.uniqueID] = {}), (h = i[d]) && h[0] === w && h[1] === f) return k[2] = h[2];
                            if (i[d] = k, k[2] = a(b, c, g)) return !0
                        }
            }
        }

        function sa(a) {
            return a.length > 1 ? function(b, c, d) {
                var e = a.length;
                while (e--)
                    if (!a[e](b, c, d)) return !1;
                return !0
            } : a[0]
        }

        function ta(a, b, c) {
            for (var d = 0, e = b.length; e > d; d++) fa(a, b[d], c);
            return c
        }

        function ua(a, b, c, d, e) {
            for (var f, g = [], h = 0, i = a.length, j = null != b; i > h; h++)(f = a[h]) && (c && !c(f, d, e) || (g.push(f), j && b.push(h)));
            return g
        }

        function va(a, b, c, d, e, f) {
            return d && !d[u] && (d = va(d)), e && !e[u] && (e = va(e, f)), ha(function(f, g, h, i) {
                var j, k, l, m = [],
                    n = [],
                    o = g.length,
                    p = f || ta(b || "*", h.nodeType ? [h] : h, []),
                    q = !a || !f && b ? p : ua(p, m, a, h, i),
                    r = c ? e || (f ? a : o || d) ? [] : g : q;
                if (c && c(q, r, h, i), d) {
                    j = ua(r, n), d(j, [], h, i), k = j.length;
                    while (k--)(l = j[k]) && (r[n[k]] = !(q[n[k]] = l))
                }
                if (f) {
                    if (e || a) {
                        if (e) {
                            j = [], k = r.length;
                            while (k--)(l = r[k]) && j.push(q[k] = l);
                            e(null, r = [], j, i)
                        }
                        k = r.length;
                        while (k--)(l = r[k]) && (j = e ? J(f, l) : m[k]) > -1 && (f[j] = !(g[j] = l))
                    }
                } else r = ua(r === g ? r.splice(o, r.length) : r), e ? e(null, g, r, i) : H.apply(g, r)
            })
        }

        function wa(a) {
            for (var b, c, e, f = a.length, g = d.relative[a[0].type], h = g || d.relative[" "], i = g ? 1 : 0, k = ra(function(a) {
                    return a === b
                }, h, !0), l = ra(function(a) {
                    return J(b, a) > -1
                }, h, !0), m = [function(a, c, d) {
                    var e = !g && (d || c !== j) || ((b = c).nodeType ? k(a, c, d) : l(a, c, d));
                    return b = null, e
                }]; f > i; i++)
                if (c = d.relative[a[i].type]) m = [ra(sa(m), c)];
                else {
                    if (c = d.filter[a[i].type].apply(null, a[i].matches), c[u]) {
                        for (e = ++i; f > e; e++)
                            if (d.relative[a[e].type]) break;
                        return va(i > 1 && sa(m), i > 1 && qa(a.slice(0, i - 1).concat({
                            value: " " === a[i - 2].type ? "*" : ""
                        })).replace(Q, "$1"), c, e > i && wa(a.slice(i, e)), f > e && wa(a = a.slice(e)), f > e && qa(a))
                    }
                    m.push(c)
                }
            return sa(m)
        }

        function xa(a, b) {
            var c = b.length > 0,
                e = a.length > 0,
                f = function(f, g, h, i, k) {
                    var l, o, q, r = 0,
                        s = "0",
                        t = f && [],
                        u = [],
                        v = j,
                        x = f || e && d.find.TAG("*", k),
                        y = w += null == v ? 1 : Math.random() || .1,
                        z = x.length;
                    for (k && (j = g === n || g || k); s !== z && null != (l = x[s]); s++) {
                        if (e && l) {
                            o = 0, g || l.ownerDocument === n || (m(l), h = !p);
                            while (q = a[o++])
                                if (q(l, g || n, h)) {
                                    i.push(l);
                                    break
                                }
                            k && (w = y)
                        }
                        c && ((l = !q && l) && r--, f && t.push(l))
                    }
                    if (r += s, c && s !== r) {
                        o = 0;
                        while (q = b[o++]) q(t, u, g, h);
                        if (f) {
                            if (r > 0)
                                while (s--) t[s] || u[s] || (u[s] = F.call(i));
                            u = ua(u)
                        }
                        H.apply(i, u), k && !f && u.length > 0 && r + b.length > 1 && fa.uniqueSort(i)
                    }
                    return k && (w = y, j = v), t
                };
            return c ? ha(f) : f
        }
        return h = fa.compile = function(a, b) {
            var c, d = [],
                e = [],
                f = A[a + " "];
            if (!f) {
                b || (b = g(a)), c = b.length;
                while (c--) f = wa(b[c]), f[u] ? d.push(f) : e.push(f);
                f = A(a, xa(e, d)), f.selector = a
            }
            return f
        }, i = fa.select = function(a, b, e, f) {
            var i, j, k, l, m, n = "function" == typeof a && a,
                o = !f && g(a = n.selector || a);
            if (e = e || [], 1 === o.length) {
                if (j = o[0] = o[0].slice(0), j.length > 2 && "ID" === (k = j[0]).type && c.getById && 9 === b.nodeType && p && d.relative[j[1].type]) {
                    if (b = (d.find.ID(k.matches[0].replace(ba, ca), b) || [])[0], !b) return e;
                    n && (b = b.parentNode), a = a.slice(j.shift().value.length)
                }
                i = W.needsContext.test(a) ? 0 : j.length;
                while (i--) {
                    if (k = j[i], d.relative[l = k.type]) break;
                    if ((m = d.find[l]) && (f = m(k.matches[0].replace(ba, ca), _.test(j[0].type) && oa(b.parentNode) || b))) {
                        if (j.splice(i, 1), a = f.length && qa(j), !a) return H.apply(e, f), e;
                        break
                    }
                }
            }
            return (n || h(a, o))(f, b, !p, e, !b || _.test(a) && oa(b.parentNode) || b), e
        }, c.sortStable = u.split("").sort(B).join("") === u, c.detectDuplicates = !!l, m(), c.sortDetached = ia(function(a) {
            return 1 & a.compareDocumentPosition(n.createElement("div"))
        }), ia(function(a) {
            return a.innerHTML = "<a href='#'></a>", "#" === a.firstChild.getAttribute("href")
        }) || ja("type|href|height|width", function(a, b, c) {
            return c ? void 0 : a.getAttribute(b, "type" === b.toLowerCase() ? 1 : 2)
        }), c.attributes && ia(function(a) {
            return a.innerHTML = "<input/>", a.firstChild.setAttribute("value", ""), "" === a.firstChild.getAttribute("value")
        }) || ja("value", function(a, b, c) {
            return c || "input" !== a.nodeName.toLowerCase() ? void 0 : a.defaultValue
        }), ia(function(a) {
            return null == a.getAttribute("disabled")
        }) || ja(K, function(a, b, c) {
            var d;
            return c ? void 0 : a[b] === !0 ? b.toLowerCase() : (d = a.getAttributeNode(b)) && d.specified ? d.value : null
        }), fa
    }(a);
    n.find = t, n.expr = t.selectors, n.expr[":"] = n.expr.pseudos, n.uniqueSort = n.unique = t.uniqueSort, n.text = t.getText, n.isXMLDoc = t.isXML, n.contains = t.contains;
    var u = function(a, b, c) {
            var d = [],
                e = void 0 !== c;
            while ((a = a[b]) && 9 !== a.nodeType)
                if (1 === a.nodeType) {
                    if (e && n(a).is(c)) break;
                    d.push(a)
                }
            return d
        },
        v = function(a, b) {
            for (var c = []; a; a = a.nextSibling) 1 === a.nodeType && a !== b && c.push(a);
            return c
        },
        w = n.expr.match.needsContext,
        x = /^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,
        y = /^.[^:#\[\.,]*$/;

    function z(a, b, c) {
        if (n.isFunction(b)) return n.grep(a, function(a, d) {
            return !!b.call(a, d, a) !== c
        });
        if (b.nodeType) return n.grep(a, function(a) {
            return a === b !== c
        });
        if ("string" == typeof b) {
            if (y.test(b)) return n.filter(b, a, c);
            b = n.filter(b, a)
        }
        return n.grep(a, function(a) {
            return n.inArray(a, b) > -1 !== c
        })
    }
    n.filter = function(a, b, c) {
        var d = b[0];
        return c && (a = ":not(" + a + ")"), 1 === b.length && 1 === d.nodeType ? n.find.matchesSelector(d, a) ? [d] : [] : n.find.matches(a, n.grep(b, function(a) {
            return 1 === a.nodeType
        }))
    }, n.fn.extend({
        find: function(a) {
            var b, c = [],
                d = this,
                e = d.length;
            if ("string" != typeof a) return this.pushStack(n(a).filter(function() {
                for (b = 0; e > b; b++)
                    if (n.contains(d[b], this)) return !0
            }));
            for (b = 0; e > b; b++) n.find(a, d[b], c);
            return c = this.pushStack(e > 1 ? n.unique(c) : c), c.selector = this.selector ? this.selector + " " + a : a, c
        },
        filter: function(a) {
            return this.pushStack(z(this, a || [], !1))
        },
        not: function(a) {
            return this.pushStack(z(this, a || [], !0))
        },
        is: function(a) {
            return !!z(this, "string" == typeof a && w.test(a) ? n(a) : a || [], !1).length
        }
    });
    var A, B = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,
        C = n.fn.init = function(a, b, c) {
            var e, f;
            if (!a) return this;
            if (c = c || A, "string" == typeof a) {
                if (e = "<" === a.charAt(0) && ">" === a.charAt(a.length - 1) && a.length >= 3 ? [null, a, null] : B.exec(a), !e || !e[1] && b) return !b || b.jquery ? (b || c).find(a) : this.constructor(b).find(a);
                if (e[1]) {
                    if (b = b instanceof n ? b[0] : b, n.merge(this, n.parseHTML(e[1], b && b.nodeType ? b.ownerDocument || b : d, !0)), x.test(e[1]) && n.isPlainObject(b))
                        for (e in b) n.isFunction(this[e]) ? this[e](b[e]) : this.attr(e, b[e]);
                    return this
                }
                if (f = d.getElementById(e[2]), f && f.parentNode) {
                    if (f.id !== e[2]) return A.find(a);
                    this.length = 1, this[0] = f
                }
                return this.context = d, this.selector = a, this
            }
            return a.nodeType ? (this.context = this[0] = a, this.length = 1, this) : n.isFunction(a) ? "undefined" != typeof c.ready ? c.ready(a) : a(n) : (void 0 !== a.selector && (this.selector = a.selector, this.context = a.context), n.makeArray(a, this))
        };
    C.prototype = n.fn, A = n(d);
    var D = /^(?:parents|prev(?:Until|All))/,
        E = {
            children: !0,
            contents: !0,
            next: !0,
            prev: !0
        };
    n.fn.extend({
        has: function(a) {
            var b, c = n(a, this),
                d = c.length;
            return this.filter(function() {
                for (b = 0; d > b; b++)
                    if (n.contains(this, c[b])) return !0
            })
        },
        closest: function(a, b) {
            for (var c, d = 0, e = this.length, f = [], g = w.test(a) || "string" != typeof a ? n(a, b || this.context) : 0; e > d; d++)
                for (c = this[d]; c && c !== b; c = c.parentNode)
                    if (c.nodeType < 11 && (g ? g.index(c) > -1 : 1 === c.nodeType && n.find.matchesSelector(c, a))) {
                        f.push(c);
                        break
                    }
            return this.pushStack(f.length > 1 ? n.uniqueSort(f) : f)
        },
        index: function(a) {
            return a ? "string" == typeof a ? n.inArray(this[0], n(a)) : n.inArray(a.jquery ? a[0] : a, this) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1
        },
        add: function(a, b) {
            return this.pushStack(n.uniqueSort(n.merge(this.get(), n(a, b))))
        },
        addBack: function(a) {
            return this.add(null == a ? this.prevObject : this.prevObject.filter(a))
        }
    });

    function F(a, b) {
        do a = a[b]; while (a && 1 !== a.nodeType);
        return a
    }
    n.each({
        parent: function(a) {
            var b = a.parentNode;
            return b && 11 !== b.nodeType ? b : null
        },
        parents: function(a) {
            return u(a, "parentNode")
        },
        parentsUntil: function(a, b, c) {
            return u(a, "parentNode", c)
        },
        next: function(a) {
            return F(a, "nextSibling")
        },
        prev: function(a) {
            return F(a, "previousSibling")
        },
        nextAll: function(a) {
            return u(a, "nextSibling")
        },
        prevAll: function(a) {
            return u(a, "previousSibling")
        },
        nextUntil: function(a, b, c) {
            return u(a, "nextSibling", c)
        },
        prevUntil: function(a, b, c) {
            return u(a, "previousSibling", c)
        },
        siblings: function(a) {
            return v((a.parentNode || {}).firstChild, a)
        },
        children: function(a) {
            return v(a.firstChild)
        },
        contents: function(a) {
            return n.nodeName(a, "iframe") ? a.contentDocument || a.contentWindow.document : n.merge([], a.childNodes)
        }
    }, function(a, b) {
        n.fn[a] = function(c, d) {
            var e = n.map(this, b, c);
            return "Until" !== a.slice(-5) && (d = c), d && "string" == typeof d && (e = n.filter(d, e)), this.length > 1 && (E[a] || (e = n.uniqueSort(e)), D.test(a) && (e = e.reverse())), this.pushStack(e)
        }
    });
    var G = /\S+/g;

    function H(a) {
        var b = {};
        return n.each(a.match(G) || [], function(a, c) {
            b[c] = !0
        }), b
    }
    n.Callbacks = function(a) {
        a = "string" == typeof a ? H(a) : n.extend({}, a);
        var b, c, d, e, f = [],
            g = [],
            h = -1,
            i = function() {
                for (e = a.once, d = b = !0; g.length; h = -1) {
                    c = g.shift();
                    while (++h < f.length) f[h].apply(c[0], c[1]) === !1 && a.stopOnFalse && (h = f.length, c = !1)
                }
                a.memory || (c = !1), b = !1, e && (f = c ? [] : "")
            },
            j = {
                add: function() {
                    return f && (c && !b && (h = f.length - 1, g.push(c)), function d(b) {
                        n.each(b, function(b, c) {
                            n.isFunction(c) ? a.unique && j.has(c) || f.push(c) : c && c.length && "string" !== n.type(c) && d(c)
                        })
                    }(arguments), c && !b && i()), this
                },
                remove: function() {
                    return n.each(arguments, function(a, b) {
                        var c;
                        while ((c = n.inArray(b, f, c)) > -1) f.splice(c, 1), h >= c && h--
                    }), this
                },
                has: function(a) {
                    return a ? n.inArray(a, f) > -1 : f.length > 0
                },
                empty: function() {
                    return f && (f = []), this
                },
                disable: function() {
                    return e = g = [], f = c = "", this
                },
                disabled: function() {
                    return !f
                },
                lock: function() {
                    return e = !0, c || j.disable(), this
                },
                locked: function() {
                    return !!e
                },
                fireWith: function(a, c) {
                    return e || (c = c || [], c = [a, c.slice ? c.slice() : c], g.push(c), b || i()), this
                },
                fire: function() {
                    return j.fireWith(this, arguments), this
                },
                fired: function() {
                    return !!d
                }
            };
        return j
    }, n.extend({
        Deferred: function(a) {
            var b = [
                    ["resolve", "done", n.Callbacks("once memory"), "resolved"],
                    ["reject", "fail", n.Callbacks("once memory"), "rejected"],
                    ["notify", "progress", n.Callbacks("memory")]
                ],
                c = "pending",
                d = {
                    state: function() {
                        return c
                    },
                    always: function() {
                        return e.done(arguments).fail(arguments), this
                    },
                    then: function() {
                        var a = arguments;
                        return n.Deferred(function(c) {
                            n.each(b, function(b, f) {
                                var g = n.isFunction(a[b]) && a[b];
                                e[f[1]](function() {
                                    var a = g && g.apply(this, arguments);
                                    a && n.isFunction(a.promise) ? a.promise().progress(c.notify).done(c.resolve).fail(c.reject) : c[f[0] + "With"](this === d ? c.promise() : this, g ? [a] : arguments)
                                })
                            }), a = null
                        }).promise()
                    },
                    promise: function(a) {
                        return null != a ? n.extend(a, d) : d
                    }
                },
                e = {};
            return d.pipe = d.then, n.each(b, function(a, f) {
                var g = f[2],
                    h = f[3];
                d[f[1]] = g.add, h && g.add(function() {
                    c = h
                }, b[1 ^ a][2].disable, b[2][2].lock), e[f[0]] = function() {
                    return e[f[0] + "With"](this === e ? d : this, arguments), this
                }, e[f[0] + "With"] = g.fireWith
            }), d.promise(e), a && a.call(e, e), e
        },
        when: function(a) {
            var b = 0,
                c = e.call(arguments),
                d = c.length,
                f = 1 !== d || a && n.isFunction(a.promise) ? d : 0,
                g = 1 === f ? a : n.Deferred(),
                h = function(a, b, c) {
                    return function(d) {
                        b[a] = this, c[a] = arguments.length > 1 ? e.call(arguments) : d, c === i ? g.notifyWith(b, c) : --f || g.resolveWith(b, c)
                    }
                },
                i, j, k;
            if (d > 1)
                for (i = new Array(d), j = new Array(d), k = new Array(d); d > b; b++) c[b] && n.isFunction(c[b].promise) ? c[b].promise().progress(h(b, j, i)).done(h(b, k, c)).fail(g.reject) : --f;
            return f || g.resolveWith(k, c), g.promise()
        }
    });
    var I;
    n.fn.ready = function(a) {
        return n.ready.promise().done(a), this
    }, n.extend({
        isReady: !1,
        readyWait: 1,
        holdReady: function(a) {
            a ? n.readyWait++ : n.ready(!0)
        },
        ready: function(a) {
            (a === !0 ? --n.readyWait : n.isReady) || (n.isReady = !0, a !== !0 && --n.readyWait > 0 || (I.resolveWith(d, [n]), n.fn.triggerHandler && (n(d).triggerHandler("ready"), n(d).off("ready"))))
        }
    });

    function J() {
        d.addEventListener ? (d.removeEventListener("DOMContentLoaded", K), a.removeEventListener("load", K)) : (d.detachEvent("onreadystatechange", K), a.detachEvent("onload", K))
    }

    function K() {
        (d.addEventListener || "load" === a.event.type || "complete" === d.readyState) && (J(), n.ready())
    }
    n.ready.promise = function(b) {
        if (!I)
            if (I = n.Deferred(), "complete" === d.readyState || "loading" !== d.readyState && !d.documentElement.doScroll) a.setTimeout(n.ready);
            else if (d.addEventListener) d.addEventListener("DOMContentLoaded", K), a.addEventListener("load", K);
        else {
            d.attachEvent("onreadystatechange", K), a.attachEvent("onload", K);
            var c = !1;
            try {
                c = null == a.frameElement && d.documentElement
            } catch (e) {}
            c && c.doScroll && ! function f() {
                if (!n.isReady) {
                    try {
                        c.doScroll("left")
                    } catch (b) {
                        return a.setTimeout(f, 50)
                    }
                    J(), n.ready()
                }
            }()
        }
        return I.promise(b)
    }, n.ready.promise();
    var L;
    for (L in n(l)) break;
    l.ownFirst = "0" === L, l.inlineBlockNeedsLayout = !1, n(function() {
            var a, b, c, e;
            c = d.getElementsByTagName("body")[0], c && c.style && (b = d.createElement("div"), e = d.createElement("div"), e.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px", c.appendChild(e).appendChild(b), "undefined" != typeof b.style.zoom && (b.style.cssText = "display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1", l.inlineBlockNeedsLayout = a = 3 === b.offsetWidth, a && (c.style.zoom = 1)), c.removeChild(e))
        }),
        function() {
            var a = d.createElement("div");
            l.deleteExpando = !0;
            try {
                delete a.test
            } catch (b) {
                l.deleteExpando = !1
            }
            a = null
        }();
    var M = function(a) {
            var b = n.noData[(a.nodeName + " ").toLowerCase()],
                c = +a.nodeType || 1;
            return 1 !== c && 9 !== c ? !1 : !b || b !== !0 && a.getAttribute("classid") === b
        },
        N = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
        O = /([A-Z])/g;

    function P(a, b, c) {
        if (void 0 === c && 1 === a.nodeType) {
            var d = "data-" + b.replace(O, "-$1").toLowerCase();
            if (c = a.getAttribute(d), "string" == typeof c) {
                try {
                    c = "true" === c ? !0 : "false" === c ? !1 : "null" === c ? null : +c + "" === c ? +c : N.test(c) ? n.parseJSON(c) : c
                } catch (e) {}
                n.data(a, b, c)
            } else c = void 0;
        }
        return c
    }

    function Q(a) {
        var b;
        for (b in a)
            if (("data" !== b || !n.isEmptyObject(a[b])) && "toJSON" !== b) return !1;
        return !0
    }

    function R(a, b, d, e) {
        if (M(a)) {
            var f, g, h = n.expando,
                i = a.nodeType,
                j = i ? n.cache : a,
                k = i ? a[h] : a[h] && h;
            if (k && j[k] && (e || j[k].data) || void 0 !== d || "string" != typeof b) return k || (k = i ? a[h] = c.pop() || n.guid++ : h), j[k] || (j[k] = i ? {} : {
                toJSON: n.noop
            }), "object" != typeof b && "function" != typeof b || (e ? j[k] = n.extend(j[k], b) : j[k].data = n.extend(j[k].data, b)), g = j[k], e || (g.data || (g.data = {}), g = g.data), void 0 !== d && (g[n.camelCase(b)] = d), "string" == typeof b ? (f = g[b], null == f && (f = g[n.camelCase(b)])) : f = g, f
        }
    }

    function S(a, b, c) {
        if (M(a)) {
            var d, e, f = a.nodeType,
                g = f ? n.cache : a,
                h = f ? a[n.expando] : n.expando;
            if (g[h]) {
                if (b && (d = c ? g[h] : g[h].data)) {
                    n.isArray(b) ? b = b.concat(n.map(b, n.camelCase)) : b in d ? b = [b] : (b = n.camelCase(b), b = b in d ? [b] : b.split(" ")), e = b.length;
                    while (e--) delete d[b[e]];
                    if (c ? !Q(d) : !n.isEmptyObject(d)) return
                }(c || (delete g[h].data, Q(g[h]))) && (f ? n.cleanData([a], !0) : l.deleteExpando || g != g.window ? delete g[h] : g[h] = void 0)
            }
        }
    }
    n.extend({
            cache: {},
            noData: {
                "applet ": !0,
                "embed ": !0,
                "object ": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
            },
            hasData: function(a) {
                return a = a.nodeType ? n.cache[a[n.expando]] : a[n.expando], !!a && !Q(a)
            },
            data: function(a, b, c) {
                return R(a, b, c)
            },
            removeData: function(a, b) {
                return S(a, b)
            },
            _data: function(a, b, c) {
                return R(a, b, c, !0)
            },
            _removeData: function(a, b) {
                return S(a, b, !0)
            }
        }), n.fn.extend({
            data: function(a, b) {
                var c, d, e, f = this[0],
                    g = f && f.attributes;
                if (void 0 === a) {
                    if (this.length && (e = n.data(f), 1 === f.nodeType && !n._data(f, "parsedAttrs"))) {
                        c = g.length;
                        while (c--) g[c] && (d = g[c].name, 0 === d.indexOf("data-") && (d = n.camelCase(d.slice(5)), P(f, d, e[d])));
                        n._data(f, "parsedAttrs", !0)
                    }
                    return e
                }
                return "object" == typeof a ? this.each(function() {
                    n.data(this, a)
                }) : arguments.length > 1 ? this.each(function() {
                    n.data(this, a, b)
                }) : f ? P(f, a, n.data(f, a)) : void 0
            },
            removeData: function(a) {
                return this.each(function() {
                    n.removeData(this, a)
                })
            }
        }), n.extend({
            queue: function(a, b, c) {
                var d;
                return a ? (b = (b || "fx") + "queue", d = n._data(a, b), c && (!d || n.isArray(c) ? d = n._data(a, b, n.makeArray(c)) : d.push(c)), d || []) : void 0
            },
            dequeue: function(a, b) {
                b = b || "fx";
                var c = n.queue(a, b),
                    d = c.length,
                    e = c.shift(),
                    f = n._queueHooks(a, b),
                    g = function() {
                        n.dequeue(a, b)
                    };
                "inprogress" === e && (e = c.shift(), d--), e && ("fx" === b && c.unshift("inprogress"), delete f.stop, e.call(a, g, f)), !d && f && f.empty.fire()
            },
            _queueHooks: function(a, b) {
                var c = b + "queueHooks";
                return n._data(a, c) || n._data(a, c, {
                    empty: n.Callbacks("once memory").add(function() {
                        n._removeData(a, b + "queue"), n._removeData(a, c)
                    })
                })
            }
        }), n.fn.extend({
            queue: function(a, b) {
                var c = 2;
                return "string" != typeof a && (b = a, a = "fx", c--), arguments.length < c ? n.queue(this[0], a) : void 0 === b ? this : this.each(function() {
                    var c = n.queue(this, a, b);
                    n._queueHooks(this, a), "fx" === a && "inprogress" !== c[0] && n.dequeue(this, a)
                })
            },
            dequeue: function(a) {
                return this.each(function() {
                    n.dequeue(this, a)
                })
            },
            clearQueue: function(a) {
                return this.queue(a || "fx", [])
            },
            promise: function(a, b) {
                var c, d = 1,
                    e = n.Deferred(),
                    f = this,
                    g = this.length,
                    h = function() {
                        --d || e.resolveWith(f, [f])
                    };
                "string" != typeof a && (b = a, a = void 0), a = a || "fx";
                while (g--) c = n._data(f[g], a + "queueHooks"), c && c.empty && (d++, c.empty.add(h));
                return h(), e.promise(b)
            }
        }),
        function() {
            var a;
            l.shrinkWrapBlocks = function() {
                if (null != a) return a;
                a = !1;
                var b, c, e;
                return c = d.getElementsByTagName("body")[0], c && c.style ? (b = d.createElement("div"), e = d.createElement("div"), e.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px", c.appendChild(e).appendChild(b), "undefined" != typeof b.style.zoom && (b.style.cssText = "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:1px;width:1px;zoom:1", b.appendChild(d.createElement("div")).style.width = "5px", a = 3 !== b.offsetWidth), c.removeChild(e), a) : void 0
            }
        }();
    var T = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,
        U = new RegExp("^(?:([+-])=|)(" + T + ")([a-z%]*)$", "i"),
        V = ["Top", "Right", "Bottom", "Left"],
        W = function(a, b) {
            return a = b || a, "none" === n.css(a, "display") || !n.contains(a.ownerDocument, a)
        };

    function X(a, b, c, d) {
        var e, f = 1,
            g = 20,
            h = d ? function() {
                return d.cur()
            } : function() {
                return n.css(a, b, "")
            },
            i = h(),
            j = c && c[3] || (n.cssNumber[b] ? "" : "px"),
            k = (n.cssNumber[b] || "px" !== j && +i) && U.exec(n.css(a, b));
        if (k && k[3] !== j) {
            j = j || k[3], c = c || [], k = +i || 1;
            do f = f || ".5", k /= f, n.style(a, b, k + j); while (f !== (f = h() / i) && 1 !== f && --g)
        }
        return c && (k = +k || +i || 0, e = c[1] ? k + (c[1] + 1) * c[2] : +c[2], d && (d.unit = j, d.start = k, d.end = e)), e
    }
    var Y = function(a, b, c, d, e, f, g) {
            var h = 0,
                i = a.length,
                j = null == c;
            if ("object" === n.type(c)) {
                e = !0;
                for (h in c) Y(a, b, h, c[h], !0, f, g)
            } else if (void 0 !== d && (e = !0, n.isFunction(d) || (g = !0), j && (g ? (b.call(a, d), b = null) : (j = b, b = function(a, b, c) {
                    return j.call(n(a), c)
                })), b))
                for (; i > h; h++) b(a[h], c, g ? d : d.call(a[h], h, b(a[h], c)));
            return e ? a : j ? b.call(a) : i ? b(a[0], c) : f
        },
        Z = /^(?:checkbox|radio)$/i,
        $ = /<([\w:-]+)/,
        _ = /^$|\/(?:java|ecma)script/i,
        aa = /^\s+/,
        ba = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|dialog|figcaption|figure|footer|header|hgroup|main|mark|meter|nav|output|picture|progress|section|summary|template|time|video";

    function ca(a) {
        var b = ba.split("|"),
            c = a.createDocumentFragment();
        if (c.createElement)
            while (b.length) c.createElement(b.pop());
        return c
    }! function() {
        var a = d.createElement("div"),
            b = d.createDocumentFragment(),
            c = d.createElement("input");
        a.innerHTML = "  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", l.leadingWhitespace = 3 === a.firstChild.nodeType, l.tbody = !a.getElementsByTagName("tbody").length, l.htmlSerialize = !!a.getElementsByTagName("link").length, l.html5Clone = "<:nav></:nav>" !== d.createElement("nav").cloneNode(!0).outerHTML, c.type = "checkbox", c.checked = !0, b.appendChild(c), l.appendChecked = c.checked, a.innerHTML = "<textarea>x</textarea>", l.noCloneChecked = !!a.cloneNode(!0).lastChild.defaultValue, b.appendChild(a), c = d.createElement("input"), c.setAttribute("type", "radio"), c.setAttribute("checked", "checked"), c.setAttribute("name", "t"), a.appendChild(c), l.checkClone = a.cloneNode(!0).cloneNode(!0).lastChild.checked, l.noCloneEvent = !!a.addEventListener, a[n.expando] = 1, l.attributes = !a.getAttribute(n.expando)
    }();
    var da = {
        option: [1, "<select multiple='multiple'>", "</select>"],
        legend: [1, "<fieldset>", "</fieldset>"],
        area: [1, "<map>", "</map>"],
        param: [1, "<object>", "</object>"],
        thead: [1, "<table>", "</table>"],
        tr: [2, "<table><tbody>", "</tbody></table>"],
        col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"],
        td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
        _default: l.htmlSerialize ? [0, "", ""] : [1, "X<div>", "</div>"]
    };
    da.optgroup = da.option, da.tbody = da.tfoot = da.colgroup = da.caption = da.thead, da.th = da.td;

    function ea(a, b) {
        var c, d, e = 0,
            f = "undefined" != typeof a.getElementsByTagName ? a.getElementsByTagName(b || "*") : "undefined" != typeof a.querySelectorAll ? a.querySelectorAll(b || "*") : void 0;
        if (!f)
            for (f = [], c = a.childNodes || a; null != (d = c[e]); e++) !b || n.nodeName(d, b) ? f.push(d) : n.merge(f, ea(d, b));
        return void 0 === b || b && n.nodeName(a, b) ? n.merge([a], f) : f
    }

    function fa(a, b) {
        for (var c, d = 0; null != (c = a[d]); d++) n._data(c, "globalEval", !b || n._data(b[d], "globalEval"))
    }
    var ga = /<|&#?\w+;/,
        ha = /<tbody/i;

    function ia(a) {
        Z.test(a.type) && (a.defaultChecked = a.checked)
    }

    function ja(a, b, c, d, e) {
        for (var f, g, h, i, j, k, m, o = a.length, p = ca(b), q = [], r = 0; o > r; r++)
            if (g = a[r], g || 0 === g)
                if ("object" === n.type(g)) n.merge(q, g.nodeType ? [g] : g);
                else if (ga.test(g)) {
            i = i || p.appendChild(b.createElement("div")), j = ($.exec(g) || ["", ""])[1].toLowerCase(), m = da[j] || da._default, i.innerHTML = m[1] + n.htmlPrefilter(g) + m[2], f = m[0];
            while (f--) i = i.lastChild;
            if (!l.leadingWhitespace && aa.test(g) && q.push(b.createTextNode(aa.exec(g)[0])), !l.tbody) {
                g = "table" !== j || ha.test(g) ? "<table>" !== m[1] || ha.test(g) ? 0 : i : i.firstChild, f = g && g.childNodes.length;
                while (f--) n.nodeName(k = g.childNodes[f], "tbody") && !k.childNodes.length && g.removeChild(k)
            }
            n.merge(q, i.childNodes), i.textContent = "";
            while (i.firstChild) i.removeChild(i.firstChild);
            i = p.lastChild
        } else q.push(b.createTextNode(g));
        i && p.removeChild(i), l.appendChecked || n.grep(ea(q, "input"), ia), r = 0;
        while (g = q[r++])
            if (d && n.inArray(g, d) > -1) e && e.push(g);
            else if (h = n.contains(g.ownerDocument, g), i = ea(p.appendChild(g), "script"), h && fa(i), c) {
            f = 0;
            while (g = i[f++]) _.test(g.type || "") && c.push(g)
        }
        return i = null, p
    }! function() {
        var b, c, e = d.createElement("div");
        for (b in {
                submit: !0,
                change: !0,
                focusin: !0
            }) c = "on" + b, (l[b] = c in a) || (e.setAttribute(c, "t"), l[b] = e.attributes[c].expando === !1);
        e = null
    }();
    var ka = /^(?:input|select|textarea)$/i,
        la = /^key/,
        ma = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
        na = /^(?:focusinfocus|focusoutblur)$/,
        oa = /^([^.]*)(?:\.(.+)|)/;

    function pa() {
        return !0
    }

    function qa() {
        return !1
    }

    function ra() {
        try {
            return d.activeElement
        } catch (a) {}
    }

    function sa(a, b, c, d, e, f) {
        var g, h;
        if ("object" == typeof b) {
            "string" != typeof c && (d = d || c, c = void 0);
            for (h in b) sa(a, h, c, d, b[h], f);
            return a
        }
        if (null == d && null == e ? (e = c, d = c = void 0) : null == e && ("string" == typeof c ? (e = d, d = void 0) : (e = d, d = c, c = void 0)), e === !1) e = qa;
        else if (!e) return a;
        return 1 === f && (g = e, e = function(a) {
            return n().off(a), g.apply(this, arguments)
        }, e.guid = g.guid || (g.guid = n.guid++)), a.each(function() {
            n.event.add(this, b, e, d, c)
        })
    }
    n.event = {
        global: {},
        add: function(a, b, c, d, e) {
            var f, g, h, i, j, k, l, m, o, p, q, r = n._data(a);
            if (r) {
                c.handler && (i = c, c = i.handler, e = i.selector), c.guid || (c.guid = n.guid++), (g = r.events) || (g = r.events = {}), (k = r.handle) || (k = r.handle = function(a) {
                    return "undefined" == typeof n || a && n.event.triggered === a.type ? void 0 : n.event.dispatch.apply(k.elem, arguments)
                }, k.elem = a), b = (b || "").match(G) || [""], h = b.length;
                while (h--) f = oa.exec(b[h]) || [], o = q = f[1], p = (f[2] || "").split(".").sort(), o && (j = n.event.special[o] || {}, o = (e ? j.delegateType : j.bindType) || o, j = n.event.special[o] || {}, l = n.extend({
                    type: o,
                    origType: q,
                    data: d,
                    handler: c,
                    guid: c.guid,
                    selector: e,
                    needsContext: e && n.expr.match.needsContext.test(e),
                    namespace: p.join(".")
                }, i), (m = g[o]) || (m = g[o] = [], m.delegateCount = 0, j.setup && j.setup.call(a, d, p, k) !== !1 || (a.addEventListener ? a.addEventListener(o, k, !1) : a.attachEvent && a.attachEvent("on" + o, k))), j.add && (j.add.call(a, l), l.handler.guid || (l.handler.guid = c.guid)), e ? m.splice(m.delegateCount++, 0, l) : m.push(l), n.event.global[o] = !0);
                a = null
            }
        },
        remove: function(a, b, c, d, e) {
            var f, g, h, i, j, k, l, m, o, p, q, r = n.hasData(a) && n._data(a);
            if (r && (k = r.events)) {
                b = (b || "").match(G) || [""], j = b.length;
                while (j--)
                    if (h = oa.exec(b[j]) || [], o = q = h[1], p = (h[2] || "").split(".").sort(), o) {
                        l = n.event.special[o] || {}, o = (d ? l.delegateType : l.bindType) || o, m = k[o] || [], h = h[2] && new RegExp("(^|\\.)" + p.join("\\.(?:.*\\.|)") + "(\\.|$)"), i = f = m.length;
                        while (f--) g = m[f], !e && q !== g.origType || c && c.guid !== g.guid || h && !h.test(g.namespace) || d && d !== g.selector && ("**" !== d || !g.selector) || (m.splice(f, 1), g.selector && m.delegateCount--, l.remove && l.remove.call(a, g));
                        i && !m.length && (l.teardown && l.teardown.call(a, p, r.handle) !== !1 || n.removeEvent(a, o, r.handle), delete k[o])
                    } else
                        for (o in k) n.event.remove(a, o + b[j], c, d, !0);
                n.isEmptyObject(k) && (delete r.handle, n._removeData(a, "events"))
            }
        },
        trigger: function(b, c, e, f) {
            var g, h, i, j, l, m, o, p = [e || d],
                q = k.call(b, "type") ? b.type : b,
                r = k.call(b, "namespace") ? b.namespace.split(".") : [];
            if (i = m = e = e || d, 3 !== e.nodeType && 8 !== e.nodeType && !na.test(q + n.event.triggered) && (q.indexOf(".") > -1 && (r = q.split("."), q = r.shift(), r.sort()), h = q.indexOf(":") < 0 && "on" + q, b = b[n.expando] ? b : new n.Event(q, "object" == typeof b && b), b.isTrigger = f ? 2 : 3, b.namespace = r.join("."), b.rnamespace = b.namespace ? new RegExp("(^|\\.)" + r.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, b.result = void 0, b.target || (b.target = e), c = null == c ? [b] : n.makeArray(c, [b]), l = n.event.special[q] || {}, f || !l.trigger || l.trigger.apply(e, c) !== !1)) {
                if (!f && !l.noBubble && !n.isWindow(e)) {
                    for (j = l.delegateType || q, na.test(j + q) || (i = i.parentNode); i; i = i.parentNode) p.push(i), m = i;
                    m === (e.ownerDocument || d) && p.push(m.defaultView || m.parentWindow || a)
                }
                o = 0;
                while ((i = p[o++]) && !b.isPropagationStopped()) b.type = o > 1 ? j : l.bindType || q, g = (n._data(i, "events") || {})[b.type] && n._data(i, "handle"), g && g.apply(i, c), g = h && i[h], g && g.apply && M(i) && (b.result = g.apply(i, c), b.result === !1 && b.preventDefault());
                if (b.type = q, !f && !b.isDefaultPrevented() && (!l._default || l._default.apply(p.pop(), c) === !1) && M(e) && h && e[q] && !n.isWindow(e)) {
                    m = e[h], m && (e[h] = null), n.event.triggered = q;
                    try {
                        e[q]()
                    } catch (s) {}
                    n.event.triggered = void 0, m && (e[h] = m)
                }
                return b.result
            }
        },
        dispatch: function(a) {
            a = n.event.fix(a);
            var b, c, d, f, g, h = [],
                i = e.call(arguments),
                j = (n._data(this, "events") || {})[a.type] || [],
                k = n.event.special[a.type] || {};
            if (i[0] = a, a.delegateTarget = this, !k.preDispatch || k.preDispatch.call(this, a) !== !1) {
                h = n.event.handlers.call(this, a, j), b = 0;
                while ((f = h[b++]) && !a.isPropagationStopped()) {
                    a.currentTarget = f.elem, c = 0;
                    while ((g = f.handlers[c++]) && !a.isImmediatePropagationStopped()) a.rnamespace && !a.rnamespace.test(g.namespace) || (a.handleObj = g, a.data = g.data, d = ((n.event.special[g.origType] || {}).handle || g.handler).apply(f.elem, i), void 0 !== d && (a.result = d) === !1 && (a.preventDefault(), a.stopPropagation()))
                }
                return k.postDispatch && k.postDispatch.call(this, a), a.result
            }
        },
        handlers: function(a, b) {
            var c, d, e, f, g = [],
                h = b.delegateCount,
                i = a.target;
            if (h && i.nodeType && ("click" !== a.type || isNaN(a.button) || a.button < 1))
                for (; i != this; i = i.parentNode || this)
                    if (1 === i.nodeType && (i.disabled !== !0 || "click" !== a.type)) {
                        for (d = [], c = 0; h > c; c++) f = b[c], e = f.selector + " ", void 0 === d[e] && (d[e] = f.needsContext ? n(e, this).index(i) > -1 : n.find(e, this, null, [i]).length), d[e] && d.push(f);
                        d.length && g.push({
                            elem: i,
                            handlers: d
                        })
                    }
            return h < b.length && g.push({
                elem: this,
                handlers: b.slice(h)
            }), g
        },
        fix: function(a) {
            if (a[n.expando]) return a;
            var b, c, e, f = a.type,
                g = a,
                h = this.fixHooks[f];
            h || (this.fixHooks[f] = h = ma.test(f) ? this.mouseHooks : la.test(f) ? this.keyHooks : {}), e = h.props ? this.props.concat(h.props) : this.props, a = new n.Event(g), b = e.length;
            while (b--) c = e[b], a[c] = g[c];
            return a.target || (a.target = g.srcElement || d), 3 === a.target.nodeType && (a.target = a.target.parentNode), a.metaKey = !!a.metaKey, h.filter ? h.filter(a, g) : a
        },
        props: "altKey bubbles cancelable ctrlKey currentTarget detail eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
        fixHooks: {},
        keyHooks: {
            props: "char charCode key keyCode".split(" "),
            filter: function(a, b) {
                return null == a.which && (a.which = null != b.charCode ? b.charCode : b.keyCode), a
            }
        },
        mouseHooks: {
            props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
            filter: function(a, b) {
                var c, e, f, g = b.button,
                    h = b.fromElement;
                return null == a.pageX && null != b.clientX && (e = a.target.ownerDocument || d, f = e.documentElement, c = e.body, a.pageX = b.clientX + (f && f.scrollLeft || c && c.scrollLeft || 0) - (f && f.clientLeft || c && c.clientLeft || 0), a.pageY = b.clientY + (f && f.scrollTop || c && c.scrollTop || 0) - (f && f.clientTop || c && c.clientTop || 0)), !a.relatedTarget && h && (a.relatedTarget = h === a.target ? b.toElement : h), a.which || void 0 === g || (a.which = 1 & g ? 1 : 2 & g ? 3 : 4 & g ? 2 : 0), a
            }
        },
        special: {
            load: {
                noBubble: !0
            },
            focus: {
                trigger: function() {
                    if (this !== ra() && this.focus) try {
                        return this.focus(), !1
                    } catch (a) {}
                },
                delegateType: "focusin"
            },
            blur: {
                trigger: function() {
                    return this === ra() && this.blur ? (this.blur(), !1) : void 0
                },
                delegateType: "focusout"
            },
            click: {
                trigger: function() {
                    return n.nodeName(this, "input") && "checkbox" === this.type && this.click ? (this.click(), !1) : void 0
                },
                _default: function(a) {
                    return n.nodeName(a.target, "a")
                }
            },
            beforeunload: {
                postDispatch: function(a) {
                    void 0 !== a.result && a.originalEvent && (a.originalEvent.returnValue = a.result)
                }
            }
        },
        simulate: function(a, b, c) {
            var d = n.extend(new n.Event, c, {
                type: a,
                isSimulated: !0
            });
            n.event.trigger(d, null, b), d.isDefaultPrevented() && c.preventDefault()
        }
    }, n.removeEvent = d.removeEventListener ? function(a, b, c) {
        a.removeEventListener && a.removeEventListener(b, c)
    } : function(a, b, c) {
        var d = "on" + b;
        a.detachEvent && ("undefined" == typeof a[d] && (a[d] = null), a.detachEvent(d, c))
    }, n.Event = function(a, b) {
        return this instanceof n.Event ? (a && a.type ? (this.originalEvent = a, this.type = a.type, this.isDefaultPrevented = a.defaultPrevented || void 0 === a.defaultPrevented && a.returnValue === !1 ? pa : qa) : this.type = a, b && n.extend(this, b), this.timeStamp = a && a.timeStamp || n.now(), void(this[n.expando] = !0)) : new n.Event(a, b)
    }, n.Event.prototype = {
        constructor: n.Event,
        isDefaultPrevented: qa,
        isPropagationStopped: qa,
        isImmediatePropagationStopped: qa,
        preventDefault: function() {
            var a = this.originalEvent;
            this.isDefaultPrevented = pa, a && (a.preventDefault ? a.preventDefault() : a.returnValue = !1)
        },
        stopPropagation: function() {
            var a = this.originalEvent;
            this.isPropagationStopped = pa, a && !this.isSimulated && (a.stopPropagation && a.stopPropagation(), a.cancelBubble = !0)
        },
        stopImmediatePropagation: function() {
            var a = this.originalEvent;
            this.isImmediatePropagationStopped = pa, a && a.stopImmediatePropagation && a.stopImmediatePropagation(), this.stopPropagation()
        }
    }, n.each({
        mouseenter: "mouseover",
        mouseleave: "mouseout",
        pointerenter: "pointerover",
        pointerleave: "pointerout"
    }, function(a, b) {
        n.event.special[a] = {
            delegateType: b,
            bindType: b,
            handle: function(a) {
                var c, d = this,
                    e = a.relatedTarget,
                    f = a.handleObj;
                return e && (e === d || n.contains(d, e)) || (a.type = f.origType, c = f.handler.apply(this, arguments), a.type = b), c
            }
        }
    }), l.submit || (n.event.special.submit = {
        setup: function() {
            return n.nodeName(this, "form") ? !1 : void n.event.add(this, "click._submit keypress._submit", function(a) {
                var b = a.target,
                    c = n.nodeName(b, "input") || n.nodeName(b, "button") ? n.prop(b, "form") : void 0;
                c && !n._data(c, "submit") && (n.event.add(c, "submit._submit", function(a) {
                    a._submitBubble = !0
                }), n._data(c, "submit", !0))
            })
        },
        postDispatch: function(a) {
            a._submitBubble && (delete a._submitBubble, this.parentNode && !a.isTrigger && n.event.simulate("submit", this.parentNode, a))
        },
        teardown: function() {
            return n.nodeName(this, "form") ? !1 : void n.event.remove(this, "._submit")
        }
    }), l.change || (n.event.special.change = {
        setup: function() {
            return ka.test(this.nodeName) ? ("checkbox" !== this.type && "radio" !== this.type || (n.event.add(this, "propertychange._change", function(a) {
                "checked" === a.originalEvent.propertyName && (this._justChanged = !0)
            }), n.event.add(this, "click._change", function(a) {
                this._justChanged && !a.isTrigger && (this._justChanged = !1), n.event.simulate("change", this, a)
            })), !1) : void n.event.add(this, "beforeactivate._change", function(a) {
                var b = a.target;
                ka.test(b.nodeName) && !n._data(b, "change") && (n.event.add(b, "change._change", function(a) {
                    !this.parentNode || a.isSimulated || a.isTrigger || n.event.simulate("change", this.parentNode, a)
                }), n._data(b, "change", !0))
            })
        },
        handle: function(a) {
            var b = a.target;
            return this !== b || a.isSimulated || a.isTrigger || "radio" !== b.type && "checkbox" !== b.type ? a.handleObj.handler.apply(this, arguments) : void 0
        },
        teardown: function() {
            return n.event.remove(this, "._change"), !ka.test(this.nodeName)
        }
    }), l.focusin || n.each({
        focus: "focusin",
        blur: "focusout"
    }, function(a, b) {
        var c = function(a) {
            n.event.simulate(b, a.target, n.event.fix(a))
        };
        n.event.special[b] = {
            setup: function() {
                var d = this.ownerDocument || this,
                    e = n._data(d, b);
                e || d.addEventListener(a, c, !0), n._data(d, b, (e || 0) + 1)
            },
            teardown: function() {
                var d = this.ownerDocument || this,
                    e = n._data(d, b) - 1;
                e ? n._data(d, b, e) : (d.removeEventListener(a, c, !0), n._removeData(d, b))
            }
        }
    }), n.fn.extend({
        on: function(a, b, c, d) {
            return sa(this, a, b, c, d)
        },
        one: function(a, b, c, d) {
            return sa(this, a, b, c, d, 1)
        },
        off: function(a, b, c) {
            var d, e;
            if (a && a.preventDefault && a.handleObj) return d = a.handleObj, n(a.delegateTarget).off(d.namespace ? d.origType + "." + d.namespace : d.origType, d.selector, d.handler), this;
            if ("object" == typeof a) {
                for (e in a) this.off(e, b, a[e]);
                return this
            }
            return b !== !1 && "function" != typeof b || (c = b, b = void 0), c === !1 && (c = qa), this.each(function() {
                n.event.remove(this, a, c, b)
            })
        },
        trigger: function(a, b) {
            return this.each(function() {
                n.event.trigger(a, b, this)
            })
        },
        triggerHandler: function(a, b) {
            var c = this[0];
            return c ? n.event.trigger(a, b, c, !0) : void 0
        }
    });
    var ta = / jQuery\d+="(?:null|\d+)"/g,
        ua = new RegExp("<(?:" + ba + ")[\\s/>]", "i"),
        va = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,
        wa = /<script|<style|<link/i,
        xa = /checked\s*(?:[^=]|=\s*.checked.)/i,
        ya = /^true\/(.*)/,
        za = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,
        Aa = ca(d),
        Ba = Aa.appendChild(d.createElement("div"));

    function Ca(a, b) {
        return n.nodeName(a, "table") && n.nodeName(11 !== b.nodeType ? b : b.firstChild, "tr") ? a.getElementsByTagName("tbody")[0] || a.appendChild(a.ownerDocument.createElement("tbody")) : a
    }

    function Da(a) {
        return a.type = (null !== n.find.attr(a, "type")) + "/" + a.type, a
    }

    function Ea(a) {
        var b = ya.exec(a.type);
        return b ? a.type = b[1] : a.removeAttribute("type"), a
    }

    function Fa(a, b) {
        if (1 === b.nodeType && n.hasData(a)) {
            var c, d, e, f = n._data(a),
                g = n._data(b, f),
                h = f.events;
            if (h) {
                delete g.handle, g.events = {};
                for (c in h)
                    for (d = 0, e = h[c].length; e > d; d++) n.event.add(b, c, h[c][d])
            }
            g.data && (g.data = n.extend({}, g.data))
        }
    }

    function Ga(a, b) {
        var c, d, e;
        if (1 === b.nodeType) {
            if (c = b.nodeName.toLowerCase(), !l.noCloneEvent && b[n.expando]) {
                e = n._data(b);
                for (d in e.events) n.removeEvent(b, d, e.handle);
                b.removeAttribute(n.expando)
            }
            "script" === c && b.text !== a.text ? (Da(b).text = a.text, Ea(b)) : "object" === c ? (b.parentNode && (b.outerHTML = a.outerHTML), l.html5Clone && a.innerHTML && !n.trim(b.innerHTML) && (b.innerHTML = a.innerHTML)) : "input" === c && Z.test(a.type) ? (b.defaultChecked = b.checked = a.checked, b.value !== a.value && (b.value = a.value)) : "option" === c ? b.defaultSelected = b.selected = a.defaultSelected : "input" !== c && "textarea" !== c || (b.defaultValue = a.defaultValue)
        }
    }

    function Ha(a, b, c, d) {
        b = f.apply([], b);
        var e, g, h, i, j, k, m = 0,
            o = a.length,
            p = o - 1,
            q = b[0],
            r = n.isFunction(q);
        if (r || o > 1 && "string" == typeof q && !l.checkClone && xa.test(q)) return a.each(function(e) {
            var f = a.eq(e);
            r && (b[0] = q.call(this, e, f.html())), Ha(f, b, c, d)
        });
        if (o && (k = ja(b, a[0].ownerDocument, !1, a, d), e = k.firstChild, 1 === k.childNodes.length && (k = e), e || d)) {
            for (i = n.map(ea(k, "script"), Da), h = i.length; o > m; m++) g = k, m !== p && (g = n.clone(g, !0, !0), h && n.merge(i, ea(g, "script"))), c.call(a[m], g, m);
            if (h)
                for (j = i[i.length - 1].ownerDocument, n.map(i, Ea), m = 0; h > m; m++) g = i[m], _.test(g.type || "") && !n._data(g, "globalEval") && n.contains(j, g) && (g.src ? n._evalUrl && n._evalUrl(g.src) : n.globalEval((g.text || g.textContent || g.innerHTML || "").replace(za, "")));
            k = e = null
        }
        return a
    }

    function Ia(a, b, c) {
        for (var d, e = b ? n.filter(b, a) : a, f = 0; null != (d = e[f]); f++) c || 1 !== d.nodeType || n.cleanData(ea(d)), d.parentNode && (c && n.contains(d.ownerDocument, d) && fa(ea(d, "script")), d.parentNode.removeChild(d));
        return a
    }
    n.extend({
        htmlPrefilter: function(a) {
            return a.replace(va, "<$1></$2>")
        },
        clone: function(a, b, c) {
            var d, e, f, g, h, i = n.contains(a.ownerDocument, a);
            if (l.html5Clone || n.isXMLDoc(a) || !ua.test("<" + a.nodeName + ">") ? f = a.cloneNode(!0) : (Ba.innerHTML = a.outerHTML, Ba.removeChild(f = Ba.firstChild)), !(l.noCloneEvent && l.noCloneChecked || 1 !== a.nodeType && 11 !== a.nodeType || n.isXMLDoc(a)))
                for (d = ea(f), h = ea(a), g = 0; null != (e = h[g]); ++g) d[g] && Ga(e, d[g]);
            if (b)
                if (c)
                    for (h = h || ea(a), d = d || ea(f), g = 0; null != (e = h[g]); g++) Fa(e, d[g]);
                else Fa(a, f);
            return d = ea(f, "script"), d.length > 0 && fa(d, !i && ea(a, "script")), d = h = e = null, f
        },
        cleanData: function(a, b) {
            for (var d, e, f, g, h = 0, i = n.expando, j = n.cache, k = l.attributes, m = n.event.special; null != (d = a[h]); h++)
                if ((b || M(d)) && (f = d[i], g = f && j[f])) {
                    if (g.events)
                        for (e in g.events) m[e] ? n.event.remove(d, e) : n.removeEvent(d, e, g.handle);
                    j[f] && (delete j[f], k || "undefined" == typeof d.removeAttribute ? d[i] = void 0 : d.removeAttribute(i), c.push(f))
                }
        }
    }), n.fn.extend({
        domManip: Ha,
        detach: function(a) {
            return Ia(this, a, !0)
        },
        remove: function(a) {
            return Ia(this, a)
        },
        text: function(a) {
            return Y(this, function(a) {
                return void 0 === a ? n.text(this) : this.empty().append((this[0] && this[0].ownerDocument || d).createTextNode(a))
            }, null, a, arguments.length)
        },
        append: function() {
            return Ha(this, arguments, function(a) {
                if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
                    var b = Ca(this, a);
                    b.appendChild(a)
                }
            })
        },
        prepend: function() {
            return Ha(this, arguments, function(a) {
                if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
                    var b = Ca(this, a);
                    b.insertBefore(a, b.firstChild)
                }
            })
        },
        before: function() {
            return Ha(this, arguments, function(a) {
                this.parentNode && this.parentNode.insertBefore(a, this)
            })
        },
        after: function() {
            return Ha(this, arguments, function(a) {
                this.parentNode && this.parentNode.insertBefore(a, this.nextSibling)
            })
        },
        empty: function() {
            for (var a, b = 0; null != (a = this[b]); b++) {
                1 === a.nodeType && n.cleanData(ea(a, !1));
                while (a.firstChild) a.removeChild(a.firstChild);
                a.options && n.nodeName(a, "select") && (a.options.length = 0)
            }
            return this
        },
        clone: function(a, b) {
            return a = null == a ? !1 : a, b = null == b ? a : b, this.map(function() {
                return n.clone(this, a, b)
            })
        },
        html: function(a) {
            return Y(this, function(a) {
                var b = this[0] || {},
                    c = 0,
                    d = this.length;
                if (void 0 === a) return 1 === b.nodeType ? b.innerHTML.replace(ta, "") : void 0;
                if ("string" == typeof a && !wa.test(a) && (l.htmlSerialize || !ua.test(a)) && (l.leadingWhitespace || !aa.test(a)) && !da[($.exec(a) || ["", ""])[1].toLowerCase()]) {
                    a = n.htmlPrefilter(a);
                    try {
                        for (; d > c; c++) b = this[c] || {}, 1 === b.nodeType && (n.cleanData(ea(b, !1)), b.innerHTML = a);
                        b = 0
                    } catch (e) {}
                }
                b && this.empty().append(a)
            }, null, a, arguments.length)
        },
        replaceWith: function() {
            var a = [];
            return Ha(this, arguments, function(b) {
                var c = this.parentNode;
                n.inArray(this, a) < 0 && (n.cleanData(ea(this)), c && c.replaceChild(b, this))
            }, a)
        }
    }), n.each({
        appendTo: "append",
        prependTo: "prepend",
        insertBefore: "before",
        insertAfter: "after",
        replaceAll: "replaceWith"
    }, function(a, b) {
        n.fn[a] = function(a) {
            for (var c, d = 0, e = [], f = n(a), h = f.length - 1; h >= d; d++) c = d === h ? this : this.clone(!0), n(f[d])[b](c), g.apply(e, c.get());
            return this.pushStack(e)
        }
    });
    var Ja, Ka = {
        HTML: "block",
        BODY: "block"
    };

    function La(a, b) {
        var c = n(b.createElement(a)).appendTo(b.body),
            d = n.css(c[0], "display");
        return c.detach(), d
    }

    function Ma(a) {
        var b = d,
            c = Ka[a];
        return c || (c = La(a, b), "none" !== c && c || (Ja = (Ja || n("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement), b = (Ja[0].contentWindow || Ja[0].contentDocument).document, b.write(), b.close(), c = La(a, b), Ja.detach()), Ka[a] = c), c
    }
    var Na = /^margin/,
        Oa = new RegExp("^(" + T + ")(?!px)[a-z%]+$", "i"),
        Pa = function(a, b, c, d) {
            var e, f, g = {};
            for (f in b) g[f] = a.style[f], a.style[f] = b[f];
            e = c.apply(a, d || []);
            for (f in b) a.style[f] = g[f];
            return e
        },
        Qa = d.documentElement;
    ! function() {
        var b, c, e, f, g, h, i = d.createElement("div"),
            j = d.createElement("div");
        if (j.style) {
            j.style.cssText = "float:left;opacity:.5", l.opacity = "0.5" === j.style.opacity, l.cssFloat = !!j.style.cssFloat, j.style.backgroundClip = "content-box", j.cloneNode(!0).style.backgroundClip = "", l.clearCloneStyle = "content-box" === j.style.backgroundClip, i = d.createElement("div"), i.style.cssText = "border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute", j.innerHTML = "", i.appendChild(j), l.boxSizing = "" === j.style.boxSizing || "" === j.style.MozBoxSizing || "" === j.style.WebkitBoxSizing, n.extend(l, {
                reliableHiddenOffsets: function() {
                    return null == b && k(), f
                },
                boxSizingReliable: function() {
                    return null == b && k(), e
                },
                pixelMarginRight: function() {
                    return null == b && k(), c
                },
                pixelPosition: function() {
                    return null == b && k(), b
                },
                reliableMarginRight: function() {
                    return null == b && k(), g
                },
                reliableMarginLeft: function() {
                    return null == b && k(), h
                }
            });

            function k() {
                var k, l, m = d.documentElement;
                m.appendChild(i), j.style.cssText = "-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%", b = e = h = !1, c = g = !0, a.getComputedStyle && (l = a.getComputedStyle(j), b = "1%" !== (l || {}).top, h = "2px" === (l || {}).marginLeft, e = "4px" === (l || {
                    width: "4px"
                }).width, j.style.marginRight = "50%", c = "4px" === (l || {
                    marginRight: "4px"
                }).marginRight, k = j.appendChild(d.createElement("div")), k.style.cssText = j.style.cssText = "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0", k.style.marginRight = k.style.width = "0", j.style.width = "1px", g = !parseFloat((a.getComputedStyle(k) || {}).marginRight), j.removeChild(k)), j.style.display = "none", f = 0 === j.getClientRects().length, f && (j.style.display = "", j.innerHTML = "<table><tr><td></td><td>t</td></tr></table>", j.childNodes[0].style.borderCollapse = "separate", k = j.getElementsByTagName("td"), k[0].style.cssText = "margin:0;border:0;padding:0;display:none", f = 0 === k[0].offsetHeight, f && (k[0].style.display = "", k[1].style.display = "none", f = 0 === k[0].offsetHeight)), m.removeChild(i)
            }
        }
    }();
    var Ra, Sa, Ta = /^(top|right|bottom|left)$/;
    a.getComputedStyle ? (Ra = function(b) {
        var c = b.ownerDocument.defaultView;
        return c && c.opener || (c = a), c.getComputedStyle(b)
    }, Sa = function(a, b, c) {
        var d, e, f, g, h = a.style;
        return c = c || Ra(a), g = c ? c.getPropertyValue(b) || c[b] : void 0, "" !== g && void 0 !== g || n.contains(a.ownerDocument, a) || (g = n.style(a, b)), c && !l.pixelMarginRight() && Oa.test(g) && Na.test(b) && (d = h.width, e = h.minWidth, f = h.maxWidth, h.minWidth = h.maxWidth = h.width = g, g = c.width, h.width = d, h.minWidth = e, h.maxWidth = f), void 0 === g ? g : g + ""
    }) : Qa.currentStyle && (Ra = function(a) {
        return a.currentStyle
    }, Sa = function(a, b, c) {
        var d, e, f, g, h = a.style;
        return c = c || Ra(a), g = c ? c[b] : void 0, null == g && h && h[b] && (g = h[b]), Oa.test(g) && !Ta.test(b) && (d = h.left, e = a.runtimeStyle, f = e && e.left, f && (e.left = a.currentStyle.left), h.left = "fontSize" === b ? "1em" : g, g = h.pixelLeft + "px", h.left = d, f && (e.left = f)), void 0 === g ? g : g + "" || "auto"
    });

    function Ua(a, b) {
        return {get: function() {
                return a() ? void delete this.get : (this.get = b).apply(this, arguments)
            }
        }
    }
    var Va = /alpha\([^)]*\)/i,
        Wa = /opacity\s*=\s*([^)]*)/i,
        Xa = /^(none|table(?!-c[ea]).+)/,
        Ya = new RegExp("^(" + T + ")(.*)$", "i"),
        Za = {
            position: "absolute",
            visibility: "hidden",
            display: "block"
        },
        $a = {
            letterSpacing: "0",
            fontWeight: "400"
        },
        _a = ["Webkit", "O", "Moz", "ms"],
        ab = d.createElement("div").style;

    function bb(a) {
        if (a in ab) return a;
        var b = a.charAt(0).toUpperCase() + a.slice(1),
            c = _a.length;
        while (c--)
            if (a = _a[c] + b, a in ab) return a
    }

    function cb(a, b) {
        for (var c, d, e, f = [], g = 0, h = a.length; h > g; g++) d = a[g], d.style && (f[g] = n._data(d, "olddisplay"), c = d.style.display, b ? (f[g] || "none" !== c || (d.style.display = ""), "" === d.style.display && W(d) && (f[g] = n._data(d, "olddisplay", Ma(d.nodeName)))) : (e = W(d), (c && "none" !== c || !e) && n._data(d, "olddisplay", e ? c : n.css(d, "display"))));
        for (g = 0; h > g; g++) d = a[g], d.style && (b && "none" !== d.style.display && "" !== d.style.display || (d.style.display = b ? f[g] || "" : "none"));
        return a
    }

    function db(a, b, c) {
        var d = Ya.exec(b);
        return d ? Math.max(0, d[1] - (c || 0)) + (d[2] || "px") : b
    }

    function eb(a, b, c, d, e) {
        for (var f = c === (d ? "border" : "content") ? 4 : "width" === b ? 1 : 0, g = 0; 4 > f; f += 2) "margin" === c && (g += n.css(a, c + V[f], !0, e)), d ? ("content" === c && (g -= n.css(a, "padding" + V[f], !0, e)), "margin" !== c && (g -= n.css(a, "border" + V[f] + "Width", !0, e))) : (g += n.css(a, "padding" + V[f], !0, e), "padding" !== c && (g += n.css(a, "border" + V[f] + "Width", !0, e)));
        return g
    }

    function fb(a, b, c) {
        var d = !0,
            e = "width" === b ? a.offsetWidth : a.offsetHeight,
            f = Ra(a),
            g = l.boxSizing && "border-box" === n.css(a, "boxSizing", !1, f);
        if (0 >= e || null == e) {
            if (e = Sa(a, b, f), (0 > e || null == e) && (e = a.style[b]), Oa.test(e)) return e;
            d = g && (l.boxSizingReliable() || e === a.style[b]), e = parseFloat(e) || 0
        }
        return e + eb(a, b, c || (g ? "border" : "content"), d, f) + "px"
    }
    n.extend({
        cssHooks: {
            opacity: {get: function(a, b) {
                    if (b) {
                        var c = Sa(a, "opacity");
                        return "" === c ? "1" : c
                    }
                }
            }
        },
        cssNumber: {
            animationIterationCount: !0,
            columnCount: !0,
            fillOpacity: !0,
            flexGrow: !0,
            flexShrink: !0,
            fontWeight: !0,
            lineHeight: !0,
            opacity: !0,
            order: !0,
            orphans: !0,
            widows: !0,
            zIndex: !0,
            zoom: !0
        },
        cssProps: {
            "float": l.cssFloat ? "cssFloat" : "styleFloat"
        },
        style: function(a, b, c, d) {
            if (a && 3 !== a.nodeType && 8 !== a.nodeType && a.style) {
                var e, f, g, h = n.camelCase(b),
                    i = a.style;
                if (b = n.cssProps[h] || (n.cssProps[h] = bb(h) || h), g = n.cssHooks[b] || n.cssHooks[h], void 0 === c) return g && "get" in g && void 0 !== (e = g.get(a, !1, d)) ? e : i[b];
                if (f = typeof c, "string" === f && (e = U.exec(c)) && e[1] && (c = X(a, b, e), f = "number"), null != c && c === c && ("number" === f && (c += e && e[3] || (n.cssNumber[h] ? "" : "px")), l.clearCloneStyle || "" !== c || 0 !== b.indexOf("background") || (i[b] = "inherit"), !(g && "set" in g && void 0 === (c = g.set(a, c, d))))) try {
                    i[b] = c
                } catch (j) {}
            }
        },
        css: function(a, b, c, d) {
            var e, f, g, h = n.camelCase(b);
            return b = n.cssProps[h] || (n.cssProps[h] = bb(h) || h), g = n.cssHooks[b] || n.cssHooks[h], g && "get" in g && (f = g.get(a, !0, c)), void 0 === f && (f = Sa(a, b, d)), "normal" === f && b in $a && (f = $a[b]), "" === c || c ? (e = parseFloat(f), c === !0 || isFinite(e) ? e || 0 : f) : f
        }
    }), n.each(["height", "width"], function(a, b) {
        n.cssHooks[b] = {get: function(a, c, d) {
                return c ? Xa.test(n.css(a, "display")) && 0 === a.offsetWidth ? Pa(a, Za, function() {
                    return fb(a, b, d)
                }) : fb(a, b, d) : void 0
            },
            set: function(a, c, d) {
                var e = d && Ra(a);
                return db(a, c, d ? eb(a, b, d, l.boxSizing && "border-box" === n.css(a, "boxSizing", !1, e), e) : 0)
            }
        }
    }), l.opacity || (n.cssHooks.opacity = {get: function(a, b) {
            return Wa.test((b && a.currentStyle ? a.currentStyle.filter : a.style.filter) || "") ? .01 * parseFloat(RegExp.$1) + "" : b ? "1" : ""
        },
        set: function(a, b) {
            var c = a.style,
                d = a.currentStyle,
                e = n.isNumeric(b) ? "alpha(opacity=" + 100 * b + ")" : "",
                f = d && d.filter || c.filter || "";
            c.zoom = 1, (b >= 1 || "" === b) && "" === n.trim(f.replace(Va, "")) && c.removeAttribute && (c.removeAttribute("filter"), "" === b || d && !d.filter) || (c.filter = Va.test(f) ? f.replace(Va, e) : f + " " + e)
        }
    }), n.cssHooks.marginRight = Ua(l.reliableMarginRight, function(a, b) {
        return b ? Pa(a, {
            display: "inline-block"
        }, Sa, [a, "marginRight"]) : void 0
    }), n.cssHooks.marginLeft = Ua(l.reliableMarginLeft, function(a, b) {
        return b ? (parseFloat(Sa(a, "marginLeft")) || (n.contains(a.ownerDocument, a) ? a.getBoundingClientRect().left - Pa(a, {
            marginLeft: 0
        }, function() {
            return a.getBoundingClientRect().left
        }) : 0)) + "px" : void 0
    }), n.each({
        margin: "",
        padding: "",
        border: "Width"
    }, function(a, b) {
        n.cssHooks[a + b] = {
            expand: function(c) {
                for (var d = 0, e = {}, f = "string" == typeof c ? c.split(" ") : [c]; 4 > d; d++) e[a + V[d] + b] = f[d] || f[d - 2] || f[0];
                return e
            }
        }, Na.test(a) || (n.cssHooks[a + b].set = db)
    }), n.fn.extend({
        css: function(a, b) {
            return Y(this, function(a, b, c) {
                var d, e, f = {},
                    g = 0;
                if (n.isArray(b)) {
                    for (d = Ra(a), e = b.length; e > g; g++) f[b[g]] = n.css(a, b[g], !1, d);
                    return f
                }
                return void 0 !== c ? n.style(a, b, c) : n.css(a, b)
            }, a, b, arguments.length > 1)
        },
        show: function() {
            return cb(this, !0)
        },
        hide: function() {
            return cb(this)
        },
        toggle: function(a) {
            return "boolean" == typeof a ? a ? this.show() : this.hide() : this.each(function() {
                W(this) ? n(this).show() : n(this).hide()
            })
        }
    });

    function gb(a, b, c, d, e) {
        return new gb.prototype.init(a, b, c, d, e)
    }
    n.Tween = gb, gb.prototype = {
        constructor: gb,
        init: function(a, b, c, d, e, f) {
            this.elem = a, this.prop = c, this.easing = e || n.easing._default, this.options = b, this.start = this.now = this.cur(), this.end = d, this.unit = f || (n.cssNumber[c] ? "" : "px")
        },
        cur: function() {
            var a = gb.propHooks[this.prop];
            return a && a.get ? a.get(this) : gb.propHooks._default.get(this)
        },
        run: function(a) {
            var b, c = gb.propHooks[this.prop];
            return this.options.duration ? this.pos = b = n.easing[this.easing](a, this.options.duration * a, 0, 1, this.options.duration) : this.pos = b = a, this.now = (this.end - this.start) * b + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), c && c.set ? c.set(this) : gb.propHooks._default.set(this), this
        }
    }, gb.prototype.init.prototype = gb.prototype, gb.propHooks = {
        _default: {get: function(a) {
                var b;
                return 1 !== a.elem.nodeType || null != a.elem[a.prop] && null == a.elem.style[a.prop] ? a.elem[a.prop] : (b = n.css(a.elem, a.prop, ""), b && "auto" !== b ? b : 0)
            },
            set: function(a) {
                n.fx.step[a.prop] ? n.fx.step[a.prop](a) : 1 !== a.elem.nodeType || null == a.elem.style[n.cssProps[a.prop]] && !n.cssHooks[a.prop] ? a.elem[a.prop] = a.now : n.style(a.elem, a.prop, a.now + a.unit)
            }
        }
    }, gb.propHooks.scrollTop = gb.propHooks.scrollLeft = {set: function(a) {
            a.elem.nodeType && a.elem.parentNode && (a.elem[a.prop] = a.now)
        }
    }, n.easing = {
        linear: function(a) {
            return a
        },
        swing: function(a) {
            return .5 - Math.cos(a * Math.PI) / 2
        },
        _default: "swing"
    }, n.fx = gb.prototype.init, n.fx.step = {};
    var hb, ib, jb = /^(?:toggle|show|hide)$/,
        kb = /queueHooks$/;

    function lb() {
        return a.setTimeout(function() {
            hb = void 0
        }), hb = n.now()
    }

    function mb(a, b) {
        var c, d = {
                height: a
            },
            e = 0;
        for (b = b ? 1 : 0; 4 > e; e += 2 - b) c = V[e], d["margin" + c] = d["padding" + c] = a;
        return b && (d.opacity = d.width = a), d
    }

    function nb(a, b, c) {
        for (var d, e = (qb.tweeners[b] || []).concat(qb.tweeners["*"]), f = 0, g = e.length; g > f; f++)
            if (d = e[f].call(c, b, a)) return d
    }

    function ob(a, b, c) {
        var d, e, f, g, h, i, j, k, m = this,
            o = {},
            p = a.style,
            q = a.nodeType && W(a),
            r = n._data(a, "fxshow");
        c.queue || (h = n._queueHooks(a, "fx"), null == h.unqueued && (h.unqueued = 0, i = h.empty.fire, h.empty.fire = function() {
            h.unqueued || i()
        }), h.unqueued++, m.always(function() {
            m.always(function() {
                h.unqueued--, n.queue(a, "fx").length || h.empty.fire()
            })
        })), 1 === a.nodeType && ("height" in b || "width" in b) && (c.overflow = [p.overflow, p.overflowX, p.overflowY], j = n.css(a, "display"), k = "none" === j ? n._data(a, "olddisplay") || Ma(a.nodeName) : j, "inline" === k && "none" === n.css(a, "float") && (l.inlineBlockNeedsLayout && "inline" !== Ma(a.nodeName) ? p.zoom = 1 : p.display = "inline-block")), c.overflow && (p.overflow = "hidden", l.shrinkWrapBlocks() || m.always(function() {
            p.overflow = c.overflow[0], p.overflowX = c.overflow[1], p.overflowY = c.overflow[2]
        }));
        for (d in b)
            if (e = b[d], jb.exec(e)) {
                if (delete b[d], f = f || "toggle" === e, e === (q ? "hide" : "show")) {
                    if ("show" !== e || !r || void 0 === r[d]) continue;
                    q = !0
                }
                o[d] = r && r[d] || n.style(a, d)
            } else j = void 0;
        if (n.isEmptyObject(o)) "inline" === ("none" === j ? Ma(a.nodeName) : j) && (p.display = j);
        else {
            r ? "hidden" in r && (q = r.hidden) : r = n._data(a, "fxshow", {}), f && (r.hidden = !q), q ? n(a).show() : m.done(function() {
                n(a).hide()
            }), m.done(function() {
                var b;
                n._removeData(a, "fxshow");
                for (b in o) n.style(a, b, o[b])
            });
            for (d in o) g = nb(q ? r[d] : 0, d, m), d in r || (r[d] = g.start, q && (g.end = g.start, g.start = "width" === d || "height" === d ? 1 : 0))
        }
    }

    function pb(a, b) {
        var c, d, e, f, g;
        for (c in a)
            if (d = n.camelCase(c), e = b[d], f = a[c], n.isArray(f) && (e = f[1], f = a[c] = f[0]), c !== d && (a[d] = f, delete a[c]), g = n.cssHooks[d], g && "expand" in g) {
                f = g.expand(f), delete a[d];
                for (c in f) c in a || (a[c] = f[c], b[c] = e)
            } else b[d] = e
    }

    function qb(a, b, c) {
        var d, e, f = 0,
            g = qb.prefilters.length,
            h = n.Deferred().always(function() {
                delete i.elem
            }),
            i = function() {
                if (e) return !1;
                for (var b = hb || lb(), c = Math.max(0, j.startTime + j.duration - b), d = c / j.duration || 0, f = 1 - d, g = 0, i = j.tweens.length; i > g; g++) j.tweens[g].run(f);
                return h.notifyWith(a, [j, f, c]), 1 > f && i ? c : (h.resolveWith(a, [j]), !1)
            },
            j = h.promise({
                elem: a,
                props: n.extend({}, b),
                opts: n.extend(!0, {
                    specialEasing: {},
                    easing: n.easing._default
                }, c),
                originalProperties: b,
                originalOptions: c,
                startTime: hb || lb(),
                duration: c.duration,
                tweens: [],
                createTween: function(b, c) {
                    var d = n.Tween(a, j.opts, b, c, j.opts.specialEasing[b] || j.opts.easing);
                    return j.tweens.push(d), d
                },
                stop: function(b) {
                    var c = 0,
                        d = b ? j.tweens.length : 0;
                    if (e) return this;
                    for (e = !0; d > c; c++) j.tweens[c].run(1);
                    return b ? (h.notifyWith(a, [j, 1, 0]), h.resolveWith(a, [j, b])) : h.rejectWith(a, [j, b]), this
                }
            }),
            k = j.props;
        for (pb(k, j.opts.specialEasing); g > f; f++)
            if (d = qb.prefilters[f].call(j, a, k, j.opts)) return n.isFunction(d.stop) && (n._queueHooks(j.elem, j.opts.queue).stop = n.proxy(d.stop, d)), d;
        return n.map(k, nb, j), n.isFunction(j.opts.start) && j.opts.start.call(a, j), n.fx.timer(n.extend(i, {
            elem: a,
            anim: j,
            queue: j.opts.queue
        })), j.progress(j.opts.progress).done(j.opts.done, j.opts.complete).fail(j.opts.fail).always(j.opts.always)
    }
    n.Animation = n.extend(qb, {
            tweeners: {
                "*": [function(a, b) {
                    var c = this.createTween(a, b);
                    return X(c.elem, a, U.exec(b), c), c
                }]
            },
            tweener: function(a, b) {
                n.isFunction(a) ? (b = a, a = ["*"]) : a = a.match(G);
                for (var c, d = 0, e = a.length; e > d; d++) c = a[d], qb.tweeners[c] = qb.tweeners[c] || [], qb.tweeners[c].unshift(b)
            },
            prefilters: [ob],
            prefilter: function(a, b) {
                b ? qb.prefilters.unshift(a) : qb.prefilters.push(a)
            }
        }), n.speed = function(a, b, c) {
            var d = a && "object" == typeof a ? n.extend({}, a) : {
                complete: c || !c && b || n.isFunction(a) && a,
                duration: a,
                easing: c && b || b && !n.isFunction(b) && b
            };
            return d.duration = n.fx.off ? 0 : "number" == typeof d.duration ? d.duration : d.duration in n.fx.speeds ? n.fx.speeds[d.duration] : n.fx.speeds._default, null != d.queue && d.queue !== !0 || (d.queue = "fx"), d.old = d.complete, d.complete = function() {
                n.isFunction(d.old) && d.old.call(this), d.queue && n.dequeue(this, d.queue)
            }, d
        }, n.fn.extend({
            fadeTo: function(a, b, c, d) {
                return this.filter(W).css("opacity", 0).show().end().animate({
                    opacity: b
                }, a, c, d)
            },
            animate: function(a, b, c, d) {
                var e = n.isEmptyObject(a),
                    f = n.speed(b, c, d),
                    g = function() {
                        var b = qb(this, n.extend({}, a), f);
                        (e || n._data(this, "finish")) && b.stop(!0)
                    };
                return g.finish = g, e || f.queue === !1 ? this.each(g) : this.queue(f.queue, g)
            },
            stop: function(a, b, c) {
                var d = function(a) {
                    var b = a.stop;
                    delete a.stop, b(c)
                };
                return "string" != typeof a && (c = b, b = a, a = void 0), b && a !== !1 && this.queue(a || "fx", []), this.each(function() {
                    var b = !0,
                        e = null != a && a + "queueHooks",
                        f = n.timers,
                        g = n._data(this);
                    if (e) g[e] && g[e].stop && d(g[e]);
                    else
                        for (e in g) g[e] && g[e].stop && kb.test(e) && d(g[e]);
                    for (e = f.length; e--;) f[e].elem !== this || null != a && f[e].queue !== a || (f[e].anim.stop(c), b = !1, f.splice(e, 1));
                    !b && c || n.dequeue(this, a)
                })
            },
            finish: function(a) {
                return a !== !1 && (a = a || "fx"), this.each(function() {
                    var b, c = n._data(this),
                        d = c[a + "queue"],
                        e = c[a + "queueHooks"],
                        f = n.timers,
                        g = d ? d.length : 0;
                    for (c.finish = !0, n.queue(this, a, []), e && e.stop && e.stop.call(this, !0), b = f.length; b--;) f[b].elem === this && f[b].queue === a && (f[b].anim.stop(!0), f.splice(b, 1));
                    for (b = 0; g > b; b++) d[b] && d[b].finish && d[b].finish.call(this);
                    delete c.finish
                })
            }
        }), n.each(["toggle", "show", "hide"], function(a, b) {
            var c = n.fn[b];
            n.fn[b] = function(a, d, e) {
                return null == a || "boolean" == typeof a ? c.apply(this, arguments) : this.animate(mb(b, !0), a, d, e)
            }
        }), n.each({
            slideDown: mb("show"),
            slideUp: mb("hide"),
            slideToggle: mb("toggle"),
            fadeIn: {
                opacity: "show"
            },
            fadeOut: {
                opacity: "hide"
            },
            fadeToggle: {
                opacity: "toggle"
            }
        }, function(a, b) {
            n.fn[a] = function(a, c, d) {
                return this.animate(b, a, c, d)
            }
        }), n.timers = [], n.fx.tick = function() {
            var a, b = n.timers,
                c = 0;
            for (hb = n.now(); c < b.length; c++) a = b[c], a() || b[c] !== a || b.splice(c--, 1);
            b.length || n.fx.stop(), hb = void 0
        }, n.fx.timer = function(a) {
            n.timers.push(a), a() ? n.fx.start() : n.timers.pop()
        }, n.fx.interval = 13, n.fx.start = function() {
            ib || (ib = a.setInterval(n.fx.tick, n.fx.interval))
        }, n.fx.stop = function() {
            a.clearInterval(ib), ib = null
        }, n.fx.speeds = {
            slow: 600,
            fast: 200,
            _default: 400
        }, n.fn.delay = function(b, c) {
            return b = n.fx ? n.fx.speeds[b] || b : b, c = c || "fx", this.queue(c, function(c, d) {
                var e = a.setTimeout(c, b);
                d.stop = function() {
                    a.clearTimeout(e)
                }
            })
        },
        function() {
            var a, b = d.createElement("input"),
                c = d.createElement("div"),
                e = d.createElement("select"),
                f = e.appendChild(d.createElement("option"));
            c = d.createElement("div"), c.setAttribute("className", "t"), c.innerHTML = "  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", a = c.getElementsByTagName("a")[0], b.setAttribute("type", "checkbox"), c.appendChild(b), a = c.getElementsByTagName("a")[0], a.style.cssText = "top:1px", l.getSetAttribute = "t" !== c.className, l.style = /top/.test(a.getAttribute("style")), l.hrefNormalized = "/a" === a.getAttribute("href"), l.checkOn = !!b.value, l.optSelected = f.selected, l.enctype = !!d.createElement("form").enctype, e.disabled = !0, l.optDisabled = !f.disabled, b = d.createElement("input"), b.setAttribute("value", ""), l.input = "" === b.getAttribute("value"), b.value = "t", b.setAttribute("type", "radio"), l.radioValue = "t" === b.value
        }();
    var rb = /\r/g,
        sb = /[\x20\t\r\n\f]+/g;
    n.fn.extend({
        val: function(a) {
            var b, c, d, e = this[0]; {
                if (arguments.length) return d = n.isFunction(a), this.each(function(c) {
                    var e;
                    1 === this.nodeType && (e = d ? a.call(this, c, n(this).val()) : a, null == e ? e = "" : "number" == typeof e ? e += "" : n.isArray(e) && (e = n.map(e, function(a) {
                        return null == a ? "" : a + ""
                    })), b = n.valHooks[this.type] || n.valHooks[this.nodeName.toLowerCase()], b && "set" in b && void 0 !== b.set(this, e, "value") || (this.value = e))
                });
                if (e) return b = n.valHooks[e.type] || n.valHooks[e.nodeName.toLowerCase()], b && "get" in b && void 0 !== (c = b.get(e, "value")) ? c : (c = e.value, "string" == typeof c ? c.replace(rb, "") : null == c ? "" : c)
            }
        }
    }), n.extend({
        valHooks: {
            option: {get: function(a) {
                    var b = n.find.attr(a, "value");
                    return null != b ? b : n.trim(n.text(a)).replace(sb, " ")
                }
            },
            select: {get: function(a) {
                    for (var b, c, d = a.options, e = a.selectedIndex, f = "select-one" === a.type || 0 > e, g = f ? null : [], h = f ? e + 1 : d.length, i = 0 > e ? h : f ? e : 0; h > i; i++)
                        if (c = d[i], (c.selected || i === e) && (l.optDisabled ? !c.disabled : null === c.getAttribute("disabled")) && (!c.parentNode.disabled || !n.nodeName(c.parentNode, "optgroup"))) {
                            if (b = n(c).val(), f) return b;
                            g.push(b)
                        }
                    return g
                },
                set: function(a, b) {
                    var c, d, e = a.options,
                        f = n.makeArray(b),
                        g = e.length;
                    while (g--)
                        if (d = e[g], n.inArray(n.valHooks.option.get(d), f) > -1) try {
                            d.selected = c = !0
                        } catch (h) {
                            d.scrollHeight
                        } else d.selected = !1;
                    return c || (a.selectedIndex = -1), e
                }
            }
        }
    }), n.each(["radio", "checkbox"], function() {
        n.valHooks[this] = {set: function(a, b) {
                return n.isArray(b) ? a.checked = n.inArray(n(a).val(), b) > -1 : void 0
            }
        }, l.checkOn || (n.valHooks[this].get = function(a) {
            return null === a.getAttribute("value") ? "on" : a.value
        })
    });
    var tb, ub, vb = n.expr.attrHandle,
        wb = /^(?:checked|selected)$/i,
        xb = l.getSetAttribute,
        yb = l.input;
    n.fn.extend({
        attr: function(a, b) {
            return Y(this, n.attr, a, b, arguments.length > 1)
        },
        removeAttr: function(a) {
            return this.each(function() {
                n.removeAttr(this, a)
            })
        }
    }), n.extend({
        attr: function(a, b, c) {
            var d, e, f = a.nodeType;
            if (3 !== f && 8 !== f && 2 !== f) return "undefined" == typeof a.getAttribute ? n.prop(a, b, c) : (1 === f && n.isXMLDoc(a) || (b = b.toLowerCase(), e = n.attrHooks[b] || (n.expr.match.bool.test(b) ? ub : tb)), void 0 !== c ? null === c ? void n.removeAttr(a, b) : e && "set" in e && void 0 !== (d = e.set(a, c, b)) ? d : (a.setAttribute(b, c + ""), c) : e && "get" in e && null !== (d = e.get(a, b)) ? d : (d = n.find.attr(a, b), null == d ? void 0 : d))
        },
        attrHooks: {
            type: {set: function(a, b) {
                    if (!l.radioValue && "radio" === b && n.nodeName(a, "input")) {
                        var c = a.value;
                        return a.setAttribute("type", b), c && (a.value = c), b
                    }
                }
            }
        },
        removeAttr: function(a, b) {
            var c, d, e = 0,
                f = b && b.match(G);
            if (f && 1 === a.nodeType)
                while (c = f[e++]) d = n.propFix[c] || c, n.expr.match.bool.test(c) ? yb && xb || !wb.test(c) ? a[d] = !1 : a[n.camelCase("default-" + c)] = a[d] = !1 : n.attr(a, c, ""), a.removeAttribute(xb ? c : d)
        }
    }), ub = {set: function(a, b, c) {
            return b === !1 ? n.removeAttr(a, c) : yb && xb || !wb.test(c) ? a.setAttribute(!xb && n.propFix[c] || c, c) : a[n.camelCase("default-" + c)] = a[c] = !0, c
        }
    }, n.each(n.expr.match.bool.source.match(/\w+/g), function(a, b) {
        var c = vb[b] || n.find.attr;
        yb && xb || !wb.test(b) ? vb[b] = function(a, b, d) {
            var e, f;
            return d || (f = vb[b], vb[b] = e, e = null != c(a, b, d) ? b.toLowerCase() : null, vb[b] = f), e
        } : vb[b] = function(a, b, c) {
            return c ? void 0 : a[n.camelCase("default-" + b)] ? b.toLowerCase() : null
        }
    }), yb && xb || (n.attrHooks.value = {set: function(a, b, c) {
            return n.nodeName(a, "input") ? void(a.defaultValue = b) : tb && tb.set(a, b, c)
        }
    }), xb || (tb = {set: function(a, b, c) {
            var d = a.getAttributeNode(c);
            return d || a.setAttributeNode(d = a.ownerDocument.createAttribute(c)), d.value = b += "", "value" === c || b === a.getAttribute(c) ? b : void 0
        }
    }, vb.id = vb.name = vb.coords = function(a, b, c) {
        var d;
        return c ? void 0 : (d = a.getAttributeNode(b)) && "" !== d.value ? d.value : null
    }, n.valHooks.button = {get: function(a, b) {
            var c = a.getAttributeNode(b);
            return c && c.specified ? c.value : void 0
        },
        set: tb.set
    }, n.attrHooks.contenteditable = {set: function(a, b, c) {
            tb.set(a, "" === b ? !1 : b, c)
        }
    }, n.each(["width", "height"], function(a, b) {
        n.attrHooks[b] = {set: function(a, c) {
                return "" === c ? (a.setAttribute(b, "auto"), c) : void 0
            }
        }
    })), l.style || (n.attrHooks.style = {get: function(a) {
            return a.style.cssText || void 0
        },
        set: function(a, b) {
            return a.style.cssText = b + ""
        }
    });
    var zb = /^(?:input|select|textarea|button|object)$/i,
        Ab = /^(?:a|area)$/i;
    n.fn.extend({
        prop: function(a, b) {
            return Y(this, n.prop, a, b, arguments.length > 1)
        },
        removeProp: function(a) {
            return a = n.propFix[a] || a, this.each(function() {
                try {
                    this[a] = void 0, delete this[a]
                } catch (b) {}
            })
        }
    }), n.extend({
        prop: function(a, b, c) {
            var d, e, f = a.nodeType;
            if (3 !== f && 8 !== f && 2 !== f) return 1 === f && n.isXMLDoc(a) || (b = n.propFix[b] || b, e = n.propHooks[b]), void 0 !== c ? e && "set" in e && void 0 !== (d = e.set(a, c, b)) ? d : a[b] = c : e && "get" in e && null !== (d = e.get(a, b)) ? d : a[b]
        },
        propHooks: {
            tabIndex: {get: function(a) {
                    var b = n.find.attr(a, "tabindex");
                    return b ? parseInt(b, 10) : zb.test(a.nodeName) || Ab.test(a.nodeName) && a.href ? 0 : -1
                }
            }
        },
        propFix: {
            "for": "htmlFor",
            "class": "className"
        }
    }), l.hrefNormalized || n.each(["href", "src"], function(a, b) {
        n.propHooks[b] = {get: function(a) {
                return a.getAttribute(b, 4)
            }
        }
    }), l.optSelected || (n.propHooks.selected = {get: function(a) {
            var b = a.parentNode;
            return b && (b.selectedIndex, b.parentNode && b.parentNode.selectedIndex), null
        },
        set: function(a) {
            var b = a.parentNode;
            b && (b.selectedIndex, b.parentNode && b.parentNode.selectedIndex)
        }
    }), n.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function() {
        n.propFix[this.toLowerCase()] = this
    }), l.enctype || (n.propFix.enctype = "encoding");
    var Bb = /[\t\r\n\f]/g;

    function Cb(a) {
        return n.attr(a, "class") || ""
    }
    n.fn.extend({
        addClass: function(a) {
            var b, c, d, e, f, g, h, i = 0;
            if (n.isFunction(a)) return this.each(function(b) {
                n(this).addClass(a.call(this, b, Cb(this)))
            });
            if ("string" == typeof a && a) {
                b = a.match(G) || [];
                while (c = this[i++])
                    if (e = Cb(c), d = 1 === c.nodeType && (" " + e + " ").replace(Bb, " ")) {
                        g = 0;
                        while (f = b[g++]) d.indexOf(" " + f + " ") < 0 && (d += f + " ");
                        h = n.trim(d), e !== h && n.attr(c, "class", h)
                    }
            }
            return this
        },
        removeClass: function(a) {
            var b, c, d, e, f, g, h, i = 0;
            if (n.isFunction(a)) return this.each(function(b) {
                n(this).removeClass(a.call(this, b, Cb(this)))
            });
            if (!arguments.length) return this.attr("class", "");
            if ("string" == typeof a && a) {
                b = a.match(G) || [];
                while (c = this[i++])
                    if (e = Cb(c), d = 1 === c.nodeType && (" " + e + " ").replace(Bb, " ")) {
                        g = 0;
                        while (f = b[g++])
                            while (d.indexOf(" " + f + " ") > -1) d = d.replace(" " + f + " ", " ");
                        h = n.trim(d), e !== h && n.attr(c, "class", h)
                    }
            }
            return this
        },
        toggleClass: function(a, b) {
            var c = typeof a;
            return "boolean" == typeof b && "string" === c ? b ? this.addClass(a) : this.removeClass(a) : n.isFunction(a) ? this.each(function(c) {
                n(this).toggleClass(a.call(this, c, Cb(this), b), b)
            }) : this.each(function() {
                var b, d, e, f;
                if ("string" === c) {
                    d = 0, e = n(this), f = a.match(G) || [];
                    while (b = f[d++]) e.hasClass(b) ? e.removeClass(b) : e.addClass(b)
                } else void 0 !== a && "boolean" !== c || (b = Cb(this), b && n._data(this, "__className__", b), n.attr(this, "class", b || a === !1 ? "" : n._data(this, "__className__") || ""))
            })
        },
        hasClass: function(a) {
            var b, c, d = 0;
            b = " " + a + " ";
            while (c = this[d++])
                if (1 === c.nodeType && (" " + Cb(c) + " ").replace(Bb, " ").indexOf(b) > -1) return !0;
            return !1
        }
    }), n.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "), function(a, b) {
        n.fn[b] = function(a, c) {
            return arguments.length > 0 ? this.on(b, null, a, c) : this.trigger(b)
        }
    }), n.fn.extend({
        hover: function(a, b) {
            return this.mouseenter(a).mouseleave(b || a)
        }
    });
    var Db = a.location,
        Eb = n.now(),
        Fb = /\?/,
        Gb = /(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;
    n.parseJSON = function(b) {
        if (a.JSON && a.JSON.parse) return a.JSON.parse(b + "");
        var c, d = null,
            e = n.trim(b + "");
        return e && !n.trim(e.replace(Gb, function(a, b, e, f) {
            return c && b && (d = 0), 0 === d ? a : (c = e || b, d += !f - !e, "")
        })) ? Function("return " + e)() : n.error("Invalid JSON: " + b)
    }, n.parseXML = function(b) {
        var c, d;
        if (!b || "string" != typeof b) return null;
        try {
            a.DOMParser ? (d = new a.DOMParser, c = d.parseFromString(b, "text/xml")) : (c = new a.ActiveXObject("Microsoft.XMLDOM"), c.async = "false", c.loadXML(b))
        } catch (e) {
            c = void 0
        }
        return c && c.documentElement && !c.getElementsByTagName("parsererror").length || n.error("Invalid XML: " + b), c
    };
    var Hb = /#.*$/,
        Ib = /([?&])_=[^&]*/,
        Jb = /^(.*?):[ \t]*([^\r\n]*)\r?$/gm,
        Kb = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
        Lb = /^(?:GET|HEAD)$/,
        Mb = /^\/\//,
        Nb = /^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,
        Ob = {},
        Pb = {},
        Qb = "*/".concat("*"),
        Rb = Db.href,
        Sb = Nb.exec(Rb.toLowerCase()) || [];

    function Tb(a) {
        return function(b, c) {
            "string" != typeof b && (c = b, b = "*");
            var d, e = 0,
                f = b.toLowerCase().match(G) || [];
            if (n.isFunction(c))
                while (d = f[e++]) "+" === d.charAt(0) ? (d = d.slice(1) || "*", (a[d] = a[d] || []).unshift(c)) : (a[d] = a[d] || []).push(c)
        }
    }

    function Ub(a, b, c, d) {
        var e = {},
            f = a === Pb;

        function g(h) {
            var i;
            return e[h] = !0, n.each(a[h] || [], function(a, h) {
                var j = h(b, c, d);
                return "string" != typeof j || f || e[j] ? f ? !(i = j) : void 0 : (b.dataTypes.unshift(j), g(j), !1)
            }), i
        }
        return g(b.dataTypes[0]) || !e["*"] && g("*")
    }

    function Vb(a, b) {
        var c, d, e = n.ajaxSettings.flatOptions || {};
        for (d in b) void 0 !== b[d] && ((e[d] ? a : c || (c = {}))[d] = b[d]);
        return c && n.extend(!0, a, c), a
    }

    function Wb(a, b, c) {
        var d, e, f, g, h = a.contents,
            i = a.dataTypes;
        while ("*" === i[0]) i.shift(), void 0 === e && (e = a.mimeType || b.getResponseHeader("Content-Type"));
        if (e)
            for (g in h)
                if (h[g] && h[g].test(e)) {
                    i.unshift(g);
                    break
                }
        if (i[0] in c) f = i[0];
        else {
            for (g in c) {
                if (!i[0] || a.converters[g + " " + i[0]]) {
                    f = g;
                    break
                }
                d || (d = g)
            }
            f = f || d
        }
        return f ? (f !== i[0] && i.unshift(f), c[f]) : void 0
    }

    function Xb(a, b, c, d) {
        var e, f, g, h, i, j = {},
            k = a.dataTypes.slice();
        if (k[1])
            for (g in a.converters) j[g.toLowerCase()] = a.converters[g];
        f = k.shift();
        while (f)
            if (a.responseFields[f] && (c[a.responseFields[f]] = b), !i && d && a.dataFilter && (b = a.dataFilter(b, a.dataType)), i = f, f = k.shift())
                if ("*" === f) f = i;
                else if ("*" !== i && i !== f) {
            if (g = j[i + " " + f] || j["* " + f], !g)
                for (e in j)
                    if (h = e.split(" "), h[1] === f && (g = j[i + " " + h[0]] || j["* " + h[0]])) {
                        g === !0 ? g = j[e] : j[e] !== !0 && (f = h[0], k.unshift(h[1]));
                        break
                    }
            if (g !== !0)
                if (g && a["throws"]) b = g(b);
                else try {
                    b = g(b)
                } catch (l) {
                    return {
                        state: "parsererror",
                        error: g ? l : "No conversion from " + i + " to " + f
                    }
                }
        }
        return {
            state: "success",
            data: b
        }
    }
    n.extend({
        active: 0,
        lastModified: {},
        etag: {},
        ajaxSettings: {
            url: Rb,
            type: "GET",
            isLocal: Kb.test(Sb[1]),
            global: !0,
            processData: !0,
            async: !0,
            contentType: "application/x-www-form-urlencoded; charset=UTF-8",
            accepts: {
                "*": Qb,
                text: "text/plain",
                html: "text/html",
                xml: "application/xml, text/xml",
                json: "application/json, text/javascript"
            },
            contents: {
                xml: /\bxml\b/,
                html: /\bhtml/,
                json: /\bjson\b/
            },
            responseFields: {
                xml: "responseXML",
                text: "responseText",
                json: "responseJSON"
            },
            converters: {
                "* text": String,
                "text html": !0,
                "text json": n.parseJSON,
                "text xml": n.parseXML
            },
            flatOptions: {
                url: !0,
                context: !0
            }
        },
        ajaxSetup: function(a, b) {
            return b ? Vb(Vb(a, n.ajaxSettings), b) : Vb(n.ajaxSettings, a)
        },
        ajaxPrefilter: Tb(Ob),
        ajaxTransport: Tb(Pb),
        ajax: function(b, c) {
            "object" == typeof b && (c = b, b = void 0), c = c || {};
            var d, e, f, g, h, i, j, k, l = n.ajaxSetup({}, c),
                m = l.context || l,
                o = l.context && (m.nodeType || m.jquery) ? n(m) : n.event,
                p = n.Deferred(),
                q = n.Callbacks("once memory"),
                r = l.statusCode || {},
                s = {},
                t = {},
                u = 0,
                v = "canceled",
                w = {
                    readyState: 0,
                    getResponseHeader: function(a) {
                        var b;
                        if (2 === u) {
                            if (!k) {
                                k = {};
                                while (b = Jb.exec(g)) k[b[1].toLowerCase()] = b[2]
                            }
                            b = k[a.toLowerCase()]
                        }
                        return null == b ? null : b
                    },
                    getAllResponseHeaders: function() {
                        return 2 === u ? g : null
                    },
                    setRequestHeader: function(a, b) {
                        var c = a.toLowerCase();
                        return u || (a = t[c] = t[c] || a, s[a] = b), this
                    },
                    overrideMimeType: function(a) {
                        return u || (l.mimeType = a), this
                    },
                    statusCode: function(a) {
                        var b;
                        if (a)
                            if (2 > u)
                                for (b in a) r[b] = [r[b], a[b]];
                            else w.always(a[w.status]);
                        return this
                    },
                    abort: function(a) {
                        var b = a || v;
                        return j && j.abort(b), y(0, b), this
                    }
                };
            if (p.promise(w).complete = q.add, w.success = w.done, w.error = w.fail, l.url = ((b || l.url || Rb) + "").replace(Hb, "").replace(Mb, Sb[1] + "//"), l.type = c.method || c.type || l.method || l.type, l.dataTypes = n.trim(l.dataType || "*").toLowerCase().match(G) || [""], null == l.crossDomain && (d = Nb.exec(l.url.toLowerCase()), l.crossDomain = !(!d || d[1] === Sb[1] && d[2] === Sb[2] && (d[3] || ("http:" === d[1] ? "80" : "443")) === (Sb[3] || ("http:" === Sb[1] ? "80" : "443")))), l.data && l.processData && "string" != typeof l.data && (l.data = n.param(l.data, l.traditional)), Ub(Ob, l, c, w), 2 === u) return w;
            i = n.event && l.global, i && 0 === n.active++ && n.event.trigger("ajaxStart"), l.type = l.type.toUpperCase(), l.hasContent = !Lb.test(l.type), f = l.url, l.hasContent || (l.data && (f = l.url += (Fb.test(f) ? "&" : "?") + l.data, delete l.data), l.cache === !1 && (l.url = Ib.test(f) ? f.replace(Ib, "$1_=" + Eb++) : f + (Fb.test(f) ? "&" : "?") + "_=" + Eb++)), l.ifModified && (n.lastModified[f] && w.setRequestHeader("If-Modified-Since", n.lastModified[f]), n.etag[f] && w.setRequestHeader("If-None-Match", n.etag[f])), (l.data && l.hasContent && l.contentType !== !1 || c.contentType) && w.setRequestHeader("Content-Type", l.contentType), w.setRequestHeader("Accept", l.dataTypes[0] && l.accepts[l.dataTypes[0]] ? l.accepts[l.dataTypes[0]] + ("*" !== l.dataTypes[0] ? ", " + Qb + "; q=0.01" : "") : l.accepts["*"]);
            for (e in l.headers) w.setRequestHeader(e, l.headers[e]);
            if (l.beforeSend && (l.beforeSend.call(m, w, l) === !1 || 2 === u)) return w.abort();
            v = "abort";
            for (e in {
                    success: 1,
                    error: 1,
                    complete: 1
                }) w[e](l[e]);
            if (j = Ub(Pb, l, c, w)) {
                if (w.readyState = 1, i && o.trigger("ajaxSend", [w, l]), 2 === u) return w;
                l.async && l.timeout > 0 && (h = a.setTimeout(function() {
                    w.abort("timeout")
                }, l.timeout));
                try {
                    u = 1, j.send(s, y)
                } catch (x) {
                    if (!(2 > u)) throw x;
                    y(-1, x)
                }
            } else y(-1, "No Transport");

            function y(b, c, d, e) {
                var k, s, t, v, x, y = c;
                2 !== u && (u = 2, h && a.clearTimeout(h), j = void 0, g = e || "", w.readyState = b > 0 ? 4 : 0, k = b >= 200 && 300 > b || 304 === b, d && (v = Wb(l, w, d)), v = Xb(l, v, w, k), k ? (l.ifModified && (x = w.getResponseHeader("Last-Modified"), x && (n.lastModified[f] = x), x = w.getResponseHeader("etag"), x && (n.etag[f] = x)), 204 === b || "HEAD" === l.type ? y = "nocontent" : 304 === b ? y = "notmodified" : (y = v.state, s = v.data, t = v.error, k = !t)) : (t = y, !b && y || (y = "error", 0 > b && (b = 0))), w.status = b, w.statusText = (c || y) + "", k ? p.resolveWith(m, [s, y, w]) : p.rejectWith(m, [w, y, t]), w.statusCode(r), r = void 0, i && o.trigger(k ? "ajaxSuccess" : "ajaxError", [w, l, k ? s : t]), q.fireWith(m, [w, y]), i && (o.trigger("ajaxComplete", [w, l]), --n.active || n.event.trigger("ajaxStop")))
            }
            return w
        },
        getJSON: function(a, b, c) {
            return n.get(a, b, c, "json")
        },
        getScript: function(a, b) {
            return n.get(a, void 0, b, "script")
        }
    }), n.each(["get", "post"], function(a, b) {
        n[b] = function(a, c, d, e) {
            return n.isFunction(c) && (e = e || d, d = c, c = void 0), n.ajax(n.extend({
                url: a,
                type: b,
                dataType: e,
                data: c,
                success: d
            }, n.isPlainObject(a) && a))
        }
    }), n._evalUrl = function(a) {
        return n.ajax({
            url: a,
            type: "GET",
            dataType: "script",
            cache: !0,
            async: !1,
            global: !1,
            "throws": !0
        })
    }, n.fn.extend({
        wrapAll: function(a) {
            if (n.isFunction(a)) return this.each(function(b) {
                n(this).wrapAll(a.call(this, b))
            });
            if (this[0]) {
                var b = n(a, this[0].ownerDocument).eq(0).clone(!0);
                this[0].parentNode && b.insertBefore(this[0]), b.map(function() {
                    var a = this;
                    while (a.firstChild && 1 === a.firstChild.nodeType) a = a.firstChild;
                    return a
                }).append(this)
            }
            return this
        },
        wrapInner: function(a) {
            return n.isFunction(a) ? this.each(function(b) {
                n(this).wrapInner(a.call(this, b))
            }) : this.each(function() {
                var b = n(this),
                    c = b.contents();
                c.length ? c.wrapAll(a) : b.append(a)
            })
        },
        wrap: function(a) {
            var b = n.isFunction(a);
            return this.each(function(c) {
                n(this).wrapAll(b ? a.call(this, c) : a)
            })
        },
        unwrap: function() {
            return this.parent().each(function() {
                n.nodeName(this, "body") || n(this).replaceWith(this.childNodes)
            }).end()
        }
    });

    function Yb(a) {
        return a.style && a.style.display || n.css(a, "display")
    }

    function Zb(a) {
        if (!n.contains(a.ownerDocument || d, a)) return !0;
        while (a && 1 === a.nodeType) {
            if ("none" === Yb(a) || "hidden" === a.type) return !0;
            a = a.parentNode
        }
        return !1
    }
    n.expr.filters.hidden = function(a) {
        return l.reliableHiddenOffsets() ? a.offsetWidth <= 0 && a.offsetHeight <= 0 && !a.getClientRects().length : Zb(a)
    }, n.expr.filters.visible = function(a) {
        return !n.expr.filters.hidden(a)
    };
    var $b = /%20/g,
        _b = /\[\]$/,
        ac = /\r?\n/g,
        bc = /^(?:submit|button|image|reset|file)$/i,
        cc = /^(?:input|select|textarea|keygen)/i;

    function dc(a, b, c, d) {
        var e;
        if (n.isArray(b)) n.each(b, function(b, e) {
            c || _b.test(a) ? d(a, e) : dc(a + "[" + ("object" == typeof e && null != e ? b : "") + "]", e, c, d)
        });
        else if (c || "object" !== n.type(b)) d(a, b);
        else
            for (e in b) dc(a + "[" + e + "]", b[e], c, d)
    }
    n.param = function(a, b) {
        var c, d = [],
            e = function(a, b) {
                b = n.isFunction(b) ? b() : null == b ? "" : b, d[d.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b)
            };
        if (void 0 === b && (b = n.ajaxSettings && n.ajaxSettings.traditional), n.isArray(a) || a.jquery && !n.isPlainObject(a)) n.each(a, function() {
            e(this.name, this.value)
        });
        else
            for (c in a) dc(c, a[c], b, e);
        return d.join("&").replace($b, "+")
    }, n.fn.extend({
        serialize: function() {
            return n.param(this.serializeArray())
        },
        serializeArray: function() {
            return this.map(function() {
                var a = n.prop(this, "elements");
                return a ? n.makeArray(a) : this
            }).filter(function() {
                var a = this.type;
                return this.name && !n(this).is(":disabled") && cc.test(this.nodeName) && !bc.test(a) && (this.checked || !Z.test(a))
            }).map(function(a, b) {
                var c = n(this).val();
                return null == c ? null : n.isArray(c) ? n.map(c, function(a) {
                    return {
                        name: b.name,
                        value: a.replace(ac, "\r\n")
                    }
                }) : {
                    name: b.name,
                    value: c.replace(ac, "\r\n")
                }
            }).get()
        }
    }), n.ajaxSettings.xhr = void 0 !== a.ActiveXObject ? function() {
        return this.isLocal ? ic() : d.documentMode > 8 ? hc() : /^(get|post|head|put|delete|options)$/i.test(this.type) && hc() || ic()
    } : hc;
    var ec = 0,
        fc = {},
        gc = n.ajaxSettings.xhr();
    a.attachEvent && a.attachEvent("onunload", function() {
        for (var a in fc) fc[a](void 0, !0)
    }), l.cors = !!gc && "withCredentials" in gc, gc = l.ajax = !!gc, gc && n.ajaxTransport(function(b) {
        if (!b.crossDomain || l.cors) {
            var c;
            return {
                send: function(d, e) {
                    var f, g = b.xhr(),
                        h = ++ec;
                    if (g.open(b.type, b.url, b.async, b.username, b.password), b.xhrFields)
                        for (f in b.xhrFields) g[f] = b.xhrFields[f];
                    b.mimeType && g.overrideMimeType && g.overrideMimeType(b.mimeType), b.crossDomain || d["X-Requested-With"] || (d["X-Requested-With"] = "XMLHttpRequest");
                    for (f in d) void 0 !== d[f] && g.setRequestHeader(f, d[f] + "");
                    g.send(b.hasContent && b.data || null), c = function(a, d) {
                        var f, i, j;
                        if (c && (d || 4 === g.readyState))
                            if (delete fc[h], c = void 0, g.onreadystatechange = n.noop, d) 4 !== g.readyState && g.abort();
                            else {
                                j = {}, f = g.status, "string" == typeof g.responseText && (j.text = g.responseText);
                                try {
                                    i = g.statusText
                                } catch (k) {
                                    i = ""
                                }
                                f || !b.isLocal || b.crossDomain ? 1223 === f && (f = 204) : f = j.text ? 200 : 404
                            }
                        j && e(f, i, j, g.getAllResponseHeaders())
                    }, b.async ? 4 === g.readyState ? a.setTimeout(c) : g.onreadystatechange = fc[h] = c : c()
                },
                abort: function() {
                    c && c(void 0, !0)
                }
            }
        }
    });

    function hc() {
        try {
            return new a.XMLHttpRequest
        } catch (b) {}
    }

    function ic() {
        try {
            return new a.ActiveXObject("Microsoft.XMLHTTP")
        } catch (b) {}
    }
    n.ajaxSetup({
        accepts: {
            script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
        },
        contents: {
            script: /\b(?:java|ecma)script\b/
        },
        converters: {
            "text script": function(a) {
                return n.globalEval(a), a
            }
        }
    }), n.ajaxPrefilter("script", function(a) {
        void 0 === a.cache && (a.cache = !1), a.crossDomain && (a.type = "GET", a.global = !1)
    }), n.ajaxTransport("script", function(a) {
        if (a.crossDomain) {
            var b, c = d.head || n("head")[0] || d.documentElement;
            return {
                send: function(e, f) {
                    b = d.createElement("script"), b.async = !0, a.scriptCharset && (b.charset = a.scriptCharset), b.src = a.url, b.onload = b.onreadystatechange = function(a, c) {
                        (c || !b.readyState || /loaded|complete/.test(b.readyState)) && (b.onload = b.onreadystatechange = null, b.parentNode && b.parentNode.removeChild(b), b = null, c || f(200, "success"))
                    }, c.insertBefore(b, c.firstChild)
                },
                abort: function() {
                    b && b.onload(void 0, !0)
                }
            }
        }
    });
    var jc = [],
        kc = /(=)\?(?=&|$)|\?\?/;
    n.ajaxSetup({
        jsonp: "callback",
        jsonpCallback: function() {
            var a = jc.pop() || n.expando + "_" + Eb++;
            return this[a] = !0, a
        }
    }), n.ajaxPrefilter("json jsonp", function(b, c, d) {
        var e, f, g, h = b.jsonp !== !1 && (kc.test(b.url) ? "url" : "string" == typeof b.data && 0 === (b.contentType || "").indexOf("application/x-www-form-urlencoded") && kc.test(b.data) && "data");
        return h || "jsonp" === b.dataTypes[0] ? (e = b.jsonpCallback = n.isFunction(b.jsonpCallback) ? b.jsonpCallback() : b.jsonpCallback, h ? b[h] = b[h].replace(kc, "$1" + e) : b.jsonp !== !1 && (b.url += (Fb.test(b.url) ? "&" : "?") + b.jsonp + "=" + e), b.converters["script json"] = function() {
            return g || n.error(e + " was not called"), g[0]
        }, b.dataTypes[0] = "json", f = a[e], a[e] = function() {
            g = arguments
        }, d.always(function() {
            void 0 === f ? n(a).removeProp(e) : a[e] = f, b[e] && (b.jsonpCallback = c.jsonpCallback, jc.push(e)), g && n.isFunction(f) && f(g[0]), g = f = void 0
        }), "script") : void 0
    }), n.parseHTML = function(a, b, c) {
        if (!a || "string" != typeof a) return null;
        "boolean" == typeof b && (c = b, b = !1), b = b || d;
        var e = x.exec(a),
            f = !c && [];
        return e ? [b.createElement(e[1])] : (e = ja([a], b, f), f && f.length && n(f).remove(), n.merge([], e.childNodes))
    };
    var lc = n.fn.load;
    n.fn.load = function(a, b, c) {
        if ("string" != typeof a && lc) return lc.apply(this, arguments);
        var d, e, f, g = this,
            h = a.indexOf(" ");
        return h > -1 && (d = n.trim(a.slice(h, a.length)), a = a.slice(0, h)), n.isFunction(b) ? (c = b, b = void 0) : b && "object" == typeof b && (e = "POST"), g.length > 0 && n.ajax({
            url: a,
            type: e || "GET",
            dataType: "html",
            data: b
        }).done(function(a) {
            f = arguments, g.html(d ? n("<div>").append(n.parseHTML(a)).find(d) : a)
        }).always(c && function(a, b) {
            g.each(function() {
                c.apply(this, f || [a.responseText, b, a])
            })
        }), this
    }, n.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function(a, b) {
        n.fn[b] = function(a) {
            return this.on(b, a)
        }
    }), n.expr.filters.animated = function(a) {
        return n.grep(n.timers, function(b) {
            return a === b.elem
        }).length
    };

    function mc(a) {
        return n.isWindow(a) ? a : 9 === a.nodeType ? a.defaultView || a.parentWindow : !1
    }
    n.offset = {
        setOffset: function(a, b, c) {
            var d, e, f, g, h, i, j, k = n.css(a, "position"),
                l = n(a),
                m = {};
            "static" === k && (a.style.position = "relative"), h = l.offset(), f = n.css(a, "top"), i = n.css(a, "left"), j = ("absolute" === k || "fixed" === k) && n.inArray("auto", [f, i]) > -1, j ? (d = l.position(), g = d.top, e = d.left) : (g = parseFloat(f) || 0, e = parseFloat(i) || 0), n.isFunction(b) && (b = b.call(a, c, n.extend({}, h))), null != b.top && (m.top = b.top - h.top + g), null != b.left && (m.left = b.left - h.left + e), "using" in b ? b.using.call(a, m) : l.css(m)
        }
    }, n.fn.extend({
        offset: function(a) {
            if (arguments.length) return void 0 === a ? this : this.each(function(b) {
                n.offset.setOffset(this, a, b)
            });
            var b, c, d = {
                    top: 0,
                    left: 0
                },
                e = this[0],
                f = e && e.ownerDocument;
            if (f) return b = f.documentElement, n.contains(b, e) ? ("undefined" != typeof e.getBoundingClientRect && (d = e.getBoundingClientRect()), c = mc(f), {
                top: d.top + (c.pageYOffset || b.scrollTop) - (b.clientTop || 0),
                left: d.left + (c.pageXOffset || b.scrollLeft) - (b.clientLeft || 0)
            }) : d
        },
        position: function() {
            if (this[0]) {
                var a, b, c = {
                        top: 0,
                        left: 0
                    },
                    d = this[0];
                return "fixed" === n.css(d, "position") ? b = d.getBoundingClientRect() : (a = this.offsetParent(), b = this.offset(), n.nodeName(a[0], "html") || (c = a.offset()), c.top += n.css(a[0], "borderTopWidth", !0), c.left += n.css(a[0], "borderLeftWidth", !0)), {
                    top: b.top - c.top - n.css(d, "marginTop", !0),
                    left: b.left - c.left - n.css(d, "marginLeft", !0)
                }
            }
        },
        offsetParent: function() {
            return this.map(function() {
                var a = this.offsetParent;
                while (a && !n.nodeName(a, "html") && "static" === n.css(a, "position")) a = a.offsetParent;
                return a || Qa
            })
        }
    }), n.each({
        scrollLeft: "pageXOffset",
        scrollTop: "pageYOffset"
    }, function(a, b) {
        var c = /Y/.test(b);
        n.fn[a] = function(d) {
            return Y(this, function(a, d, e) {
                var f = mc(a);
                return void 0 === e ? f ? b in f ? f[b] : f.document.documentElement[d] : a[d] : void(f ? f.scrollTo(c ? n(f).scrollLeft() : e, c ? e : n(f).scrollTop()) : a[d] = e)
            }, a, d, arguments.length, null)
        }
    }), n.each(["top", "left"], function(a, b) {
        n.cssHooks[b] = Ua(l.pixelPosition, function(a, c) {
            return c ? (c = Sa(a, b), Oa.test(c) ? n(a).position()[b] + "px" : c) : void 0
        })
    }), n.each({
        Height: "height",
        Width: "width"
    }, function(a, b) {
        n.each({
            padding: "inner" + a,
            content: b,
            "": "outer" + a
        }, function(c, d) {
            n.fn[d] = function(d, e) {
                var f = arguments.length && (c || "boolean" != typeof d),
                    g = c || (d === !0 || e === !0 ? "margin" : "border");
                return Y(this, function(b, c, d) {
                    var e;
                    return n.isWindow(b) ? b.document.documentElement["client" + a] : 9 === b.nodeType ? (e = b.documentElement, Math.max(b.body["scroll" + a], e["scroll" + a], b.body["offset" + a], e["offset" + a], e["client" + a])) : void 0 === d ? n.css(b, c, g) : n.style(b, c, d, g)
                }, b, f ? d : void 0, f, null)
            }
        })
    }), n.fn.extend({
        bind: function(a, b, c) {
            return this.on(a, null, b, c)
        },
        unbind: function(a, b) {
            return this.off(a, null, b)
        },
        delegate: function(a, b, c, d) {
            return this.on(b, a, c, d)
        },
        undelegate: function(a, b, c) {
            return 1 === arguments.length ? this.off(a, "**") : this.off(b, a || "**", c)
        }
    }), n.fn.size = function() {
        return this.length
    }, n.fn.andSelf = n.fn.addBack, "function" == typeof define && define.amd && define("jquery", [], function() {
        return n
    });
    var nc = a.jQuery,
        oc = a.$;
    return n.noConflict = function(b) {
        return a.$ === n && (a.$ = oc), b && a.jQuery === n && (a.jQuery = nc), n
    }, b || (a.jQuery = a.$ = n), n
});
jQuery.noConflict();

//# sourceURL=http://moviexk.org/wp-includes/js/jquery/jquery.js?ver=1.12.4
                                    

#52 JavaScript::Eval (size: 102162, repeated: 1) - SHA256: 1422ec49c9d777ba8435cd3154df0379f20aea723b1a73b3ca0ff4dc1f36a626

                                        /*! jQuery v@1.8.1 jquery.com | jquery.org/license */
(function(a, b) {
    function G(a) {
        var b = F[a] = {};
        return p.each(a.split(s), function(a, c) {
            b[c] = !0
        }), b
    }

    function J(a, c, d) {
        if (d === b && a.nodeType === 1) {
            var e = "data-" + c.replace(I, "-$1").toLowerCase();
            d = a.getAttribute(e);
            if (typeof d == "string") {
                try {
                    d = d === "true" ? !0 : d === "false" ? !1 : d === "null" ? null : +d + "" === d ? +d : H.test(d) ? p.parseJSON(d) : d
                } catch (f) {}
                p.data(a, c, d)
            } else d = b
        }
        return d
    }

    function K(a) {
        var b;
        for (b in a) {
            if (b === "data" && p.isEmptyObject(a[b])) continue;
            if (b !== "toJSON") return !1
        }
        return !0
    }

    function ba() {
        return !1
    }

    function bb() {
        return !0
    }

    function bh(a) {
        return !a || !a.parentNode || a.parentNode.nodeType === 11
    }

    function bi(a, b) {
        do a = a[b]; while (a && a.nodeType !== 1);
        return a
    }

    function bj(a, b, c) {
        b = b || 0;
        if (p.isFunction(b)) return p.grep(a, function(a, d) {
            var e = !!b.call(a, d, a);
            return e === c
        });
        if (b.nodeType) return p.grep(a, function(a, d) {
            return a === b === c
        });
        if (typeof b == "string") {
            var d = p.grep(a, function(a) {
                return a.nodeType === 1
            });
            if (be.test(b)) return p.filter(b, d, !c);
            b = p.filter(b, d)
        }
        return p.grep(a, function(a, d) {
            return p.inArray(a, b) >= 0 === c
        })
    }

    function bk(a) {
        var b = bl.split("|"),
            c = a.createDocumentFragment();
        if (c.createElement)
            while (b.length) c.createElement(b.pop());
        return c
    }

    function bC(a, b) {
        return a.getElementsByTagName(b)[0] || a.appendChild(a.ownerDocument.createElement(b))
    }

    function bD(a, b) {
        if (b.nodeType !== 1 || !p.hasData(a)) return;
        var c, d, e, f = p._data(a),
            g = p._data(b, f),
            h = f.events;
        if (h) {
            delete g.handle, g.events = {};
            for (c in h)
                for (d = 0, e = h[c].length; d < e; d++) p.event.add(b, c, h[c][d])
        }
        g.data && (g.data = p.extend({}, g.data))
    }

    function bE(a, b) {
        var c;
        if (b.nodeType !== 1) return;
        b.clearAttributes && b.clearAttributes(), b.mergeAttributes && b.mergeAttributes(a), c = b.nodeName.toLowerCase(), c === "object" ? (b.parentNode && (b.outerHTML = a.outerHTML), p.support.html5Clone && a.innerHTML && !p.trim(b.innerHTML) && (b.innerHTML = a.innerHTML)) : c === "input" && bv.test(a.type) ? (b.defaultChecked = b.checked = a.checked, b.value !== a.value && (b.value = a.value)) : c === "option" ? b.selected = a.defaultSelected : c === "input" || c === "textarea" ? b.defaultValue = a.defaultValue : c === "script" && b.text !== a.text && (b.text = a.text), b.removeAttribute(p.expando)
    }

    function bF(a) {
        return typeof a.getElementsByTagName != "undefined" ? a.getElementsByTagName("*") : typeof a.querySelectorAll != "undefined" ? a.querySelectorAll("*") : []
    }

    function bG(a) {
        bv.test(a.type) && (a.defaultChecked = a.checked)
    }

    function bY(a, b) {
        if (b in a) return b;
        var c = b.charAt(0).toUpperCase() + b.slice(1),
            d = b,
            e = bW.length;
        while (e--) {
            b = bW[e] + c;
            if (b in a) return b
        }
        return d
    }

    function bZ(a, b) {
        return a = b || a, p.css(a, "display") === "none" || !p.contains(a.ownerDocument, a)
    }

    function b$(a, b) {
        var c, d, e = [],
            f = 0,
            g = a.length;
        for (; f < g; f++) {
            c = a[f];
            if (!c.style) continue;
            e[f] = p._data(c, "olddisplay"), b ? (!e[f] && c.style.display === "none" && (c.style.display = ""), c.style.display === "" && bZ(c) && (e[f] = p._data(c, "olddisplay", cc(c.nodeName)))) : (d = bH(c, "display"), !e[f] && d !== "none" && p._data(c, "olddisplay", d))
        }
        for (f = 0; f < g; f++) {
            c = a[f];
            if (!c.style) continue;
            if (!b || c.style.display === "none" || c.style.display === "") c.style.display = b ? e[f] || "" : "none"
        }
        return a
    }

    function b_(a, b, c) {
        var d = bP.exec(b);
        return d ? Math.max(0, d[1] - (c || 0)) + (d[2] || "px") : b
    }

    function ca(a, b, c, d) {
        var e = c === (d ? "border" : "content") ? 4 : b === "width" ? 1 : 0,
            f = 0;
        for (; e < 4; e += 2) c === "margin" && (f += p.css(a, c + bV[e], !0)), d ? (c === "content" && (f -= parseFloat(bH(a, "padding" + bV[e])) || 0), c !== "margin" && (f -= parseFloat(bH(a, "border" + bV[e] + "Width")) || 0)) : (f += parseFloat(bH(a, "padding" + bV[e])) || 0, c !== "padding" && (f += parseFloat(bH(a, "border" + bV[e] + "Width")) || 0));
        return f
    }

    function cb(a, b, c) {
        var d = b === "width" ? a.offsetWidth : a.offsetHeight,
            e = !0,
            f = p.support.boxSizing && p.css(a, "boxSizing") === "border-box";
        if (d <= 0 || d == null) {
            d = bH(a, b);
            if (d < 0 || d == null) d = a.style[b];
            if (bQ.test(d)) return d;
            e = f && (p.support.boxSizingReliable || d === a.style[b]), d = parseFloat(d) || 0
        }
        return d + ca(a, b, c || (f ? "border" : "content"), e) + "px"
    }

    function cc(a) {
        if (bS[a]) return bS[a];
        var b = p("<" + a + ">").appendTo(e.body),
            c = b.css("display");
        b.remove();
        if (c === "none" || c === "") {
            bI = e.body.appendChild(bI || p.extend(e.createElement("iframe"), {
                frameBorder: 0,
                width: 0,
                height: 0
            }));
            if (!bJ || !bI.createElement) bJ = (bI.contentWindow || bI.contentDocument).document, bJ.write("<!doctype html><html><body>"), bJ.close();
            b = bJ.body.appendChild(bJ.createElement(a)), c = bH(b, "display"), e.body.removeChild(bI)
        }
        return bS[a] = c, c
    }

    function ci(a, b, c, d) {
        var e;
        if (p.isArray(b)) p.each(b, function(b, e) {
            c || ce.test(a) ? d(a, e) : ci(a + "[" + (typeof e == "object" ? b : "") + "]", e, c, d)
        });
        else if (!c && p.type(b) === "object")
            for (e in b) ci(a + "[" + e + "]", b[e], c, d);
        else d(a, b)
    }

    function cz(a) {
        return function(b, c) {
            typeof b != "string" && (c = b, b = "*");
            var d, e, f, g = b.toLowerCase().split(s),
                h = 0,
                i = g.length;
            if (p.isFunction(c))
                for (; h < i; h++) d = g[h], f = /^\+/.test(d), f && (d = d.substr(1) || "*"), e = a[d] = a[d] || [], e[f ? "unshift" : "push"](c)
        }
    }

    function cA(a, c, d, e, f, g) {
        f = f || c.dataTypes[0], g = g || {}, g[f] = !0;
        var h, i = a[f],
            j = 0,
            k = i ? i.length : 0,
            l = a === cv;
        for (; j < k && (l || !h); j++) h = i[j](c, d, e), typeof h == "string" && (!l || g[h] ? h = b : (c.dataTypes.unshift(h), h = cA(a, c, d, e, h, g)));
        return (l || !h) && !g["*"] && (h = cA(a, c, d, e, "*", g)), h
    }

    function cB(a, c) {
        var d, e, f = p.ajaxSettings.flatOptions || {};
        for (d in c) c[d] !== b && ((f[d] ? a : e || (e = {}))[d] = c[d]);
        e && p.extend(!0, a, e)
    }

    function cC(a, c, d) {
        var e, f, g, h, i = a.contents,
            j = a.dataTypes,
            k = a.responseFields;
        for (f in k) f in d && (c[k[f]] = d[f]);
        while (j[0] === "*") j.shift(), e === b && (e = a.mimeType || c.getResponseHeader("content-type"));
        if (e)
            for (f in i)
                if (i[f] && i[f].test(e)) {
                    j.unshift(f);
                    break
                }
        if (j[0] in d) g = j[0];
        else {
            for (f in d) {
                if (!j[0] || a.converters[f + " " + j[0]]) {
                    g = f;
                    break
                }
                h || (h = f)
            }
            g = g || h
        }
        if (g) return g !== j[0] && j.unshift(g), d[g]
    }

    function cD(a, b) {
        var c, d, e, f, g = a.dataTypes.slice(),
            h = g[0],
            i = {},
            j = 0;
        a.dataFilter && (b = a.dataFilter(b, a.dataType));
        if (g[1])
            for (c in a.converters) i[c.toLowerCase()] = a.converters[c];
        for (; e = g[++j];)
            if (e !== "*") {
                if (h !== "*" && h !== e) {
                    c = i[h + " " + e] || i["* " + e];
                    if (!c)
                        for (d in i) {
                            f = d.split(" ");
                            if (f[1] === e) {
                                c = i[h + " " + f[0]] || i["* " + f[0]];
                                if (c) {
                                    c === !0 ? c = i[d] : i[d] !== !0 && (e = f[0], g.splice(j--, 0, e));
                                    break
                                }
                            }
                        }
                    if (c !== !0)
                        if (c && a["throws"]) b = c(b);
                        else try {
                            b = c(b)
                        } catch (k) {
                            return {
                                state: "parsererror",
                                error: c ? k : "No conversion from " + h + " to " + e
                            }
                        }
                }
                h = e
            }
        return {
            state: "success",
            data: b
        }
    }

    function cL() {
        try {
            return new a.XMLHttpRequest
        } catch (b) {}
    }

    function cM() {
        try {
            return new a.ActiveXObject("Microsoft.XMLHTTP")
        } catch (b) {}
    }

    function cU() {
        return setTimeout(function() {
            cN = b
        }, 0), cN = p.now()
    }

    function cV(a, b) {
        p.each(b, function(b, c) {
            var d = (cT[b] || []).concat(cT["*"]),
                e = 0,
                f = d.length;
            for (; e < f; e++)
                if (d[e].call(a, b, c)) return
        })
    }

    function cW(a, b, c) {
        var d, e = 0,
            f = 0,
            g = cS.length,
            h = p.Deferred().always(function() {
                delete i.elem
            }),
            i = function() {
                var b = cN || cU(),
                    c = Math.max(0, j.startTime + j.duration - b),
                    d = 1 - (c / j.duration || 0),
                    e = 0,
                    f = j.tweens.length;
                for (; e < f; e++) j.tweens[e].run(d);
                return h.notifyWith(a, [j, d, c]), d < 1 && f ? c : (h.resolveWith(a, [j]), !1)
            },
            j = h.promise({
                elem: a,
                props: p.extend({}, b),
                opts: p.extend(!0, {
                    specialEasing: {}
                }, c),
                originalProperties: b,
                originalOptions: c,
                startTime: cN || cU(),
                duration: c.duration,
                tweens: [],
                createTween: function(b, c, d) {
                    var e = p.Tween(a, j.opts, b, c, j.opts.specialEasing[b] || j.opts.easing);
                    return j.tweens.push(e), e
                },
                stop: function(b) {
                    var c = 0,
                        d = b ? j.tweens.length : 0;
                    for (; c < d; c++) j.tweens[c].run(1);
                    return b ? h.resolveWith(a, [j, b]) : h.rejectWith(a, [j, b]), this
                }
            }),
            k = j.props;
        cX(k, j.opts.specialEasing);
        for (; e < g; e++) {
            d = cS[e].call(j, a, k, j.opts);
            if (d) return d
        }
        return cV(j, k), p.isFunction(j.opts.start) && j.opts.start.call(a, j), p.fx.timer(p.extend(i, {
            anim: j,
            queue: j.opts.queue,
            elem: a
        })), j.progress(j.opts.progress).done(j.opts.done, j.opts.complete).fail(j.opts.fail).always(j.opts.always)
    }

    function cX(a, b) {
        var c, d, e, f, g;
        for (c in a) {
            d = p.camelCase(c), e = b[d], f = a[c], p.isArray(f) && (e = f[1], f = a[c] = f[0]), c !== d && (a[d] = f, delete a[c]), g = p.cssHooks[d];
            if (g && "expand" in g) {
                f = g.expand(f), delete a[d];
                for (c in f) c in a || (a[c] = f[c], b[c] = e)
            } else b[d] = e
        }
    }

    function cY(a, b, c) {
        var d, e, f, g, h, i, j, k, l = this,
            m = a.style,
            n = {},
            o = [],
            q = a.nodeType && bZ(a);
        c.queue || (j = p._queueHooks(a, "fx"), j.unqueued == null && (j.unqueued = 0, k = j.empty.fire, j.empty.fire = function() {
            j.unqueued || k()
        }), j.unqueued++, l.always(function() {
            l.always(function() {
                j.unqueued--, p.queue(a, "fx").length || j.empty.fire()
            })
        })), a.nodeType === 1 && ("height" in b || "width" in b) && (c.overflow = [m.overflow, m.overflowX, m.overflowY], p.css(a, "display") === "inline" && p.css(a, "float") === "none" && (!p.support.inlineBlockNeedsLayout || cc(a.nodeName) === "inline" ? m.display = "inline-block" : m.zoom = 1)), c.overflow && (m.overflow = "hidden", p.support.shrinkWrapBlocks || l.done(function() {
            m.overflow = c.overflow[0], m.overflowX = c.overflow[1], m.overflowY = c.overflow[2]
        }));
        for (d in b) {
            f = b[d];
            if (cP.exec(f)) {
                delete b[d];
                if (f === (q ? "hide" : "show")) continue;
                o.push(d)
            }
        }
        g = o.length;
        if (g) {
            h = p._data(a, "fxshow") || p._data(a, "fxshow", {}), q ? p(a).show() : l.done(function() {
                p(a).hide()
            }), l.done(function() {
                var b;
                p.removeData(a, "fxshow", !0);
                for (b in n) p.style(a, b, n[b])
            });
            for (d = 0; d < g; d++) e = o[d], i = l.createTween(e, q ? h[e] : 0), n[e] = h[e] || p.style(a, e), e in h || (h[e] = i.start, q && (i.end = i.start, i.start = e === "width" || e === "height" ? 1 : 0))
        }
    }

    function cZ(a, b, c, d, e) {
        return new cZ.prototype.init(a, b, c, d, e)
    }

    function c$(a, b) {
        var c, d = {
                height: a
            },
            e = 0;
        b = b ? 1 : 0;
        for (; e < 4; e += 2 - b) c = bV[e], d["margin" + c] = d["padding" + c] = a;
        return b && (d.opacity = d.width = a), d
    }

    function da(a) {
        return p.isWindow(a) ? a : a.nodeType === 9 ? a.defaultView || a.parentWindow : !1
    }
    var c, d, e = a.document,
        f = a.location,
        g = a.navigator,
        h = a.jQuery,
        i = a.$,
        j = Array.prototype.push,
        k = Array.prototype.slice,
        l = Array.prototype.indexOf,
        m = Object.prototype.toString,
        n = Object.prototype.hasOwnProperty,
        o = String.prototype.trim,
        p = function(a, b) {
            return new p.fn.init(a, b, c)
        },
        q = /[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,
        r = /\S/,
        s = /\s+/,
        t = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
        u = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,
        v = /^<(\w+)\s*\/?>(?:<\/\1>|)$/,
        w = /^[\],:{}\s]*$/,
        x = /(?:^|:|,)(?:\s*\[)+/g,
        y = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,
        z = /"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,
        A = /^-ms-/,
        B = /-([\da-z])/gi,
        C = function(a, b) {
            return (b + "").toUpperCase()
        },
        D = function() {
            e.addEventListener ? (e.removeEventListener("DOMContentLoaded", D, !1), p.ready()) : e.readyState === "complete" && (e.detachEvent("onreadystatechange", D), p.ready())
        },
        E = {};
    p.fn = p.prototype = {
        constructor: p,
        init: function(a, c, d) {
            var f, g, h, i;
            if (!a) return this;
            if (a.nodeType) return this.context = this[0] = a, this.length = 1, this;
            if (typeof a == "string") {
                a.charAt(0) === "<" && a.charAt(a.length - 1) === ">" && a.length >= 3 ? f = [null, a, null] : f = u.exec(a);
                if (f && (f[1] || !c)) {
                    if (f[1]) return c = c instanceof p ? c[0] : c, i = c && c.nodeType ? c.ownerDocument || c : e, a = p.parseHTML(f[1], i, !0), v.test(f[1]) && p.isPlainObject(c) && this.attr.call(a, c, !0), p.merge(this, a);
                    g = e.getElementById(f[2]);
                    if (g && g.parentNode) {
                        if (g.id !== f[2]) return d.find(a);
                        this.length = 1, this[0] = g
                    }
                    return this.context = e, this.selector = a, this
                }
                return !c || c.jquery ? (c || d).find(a) : this.constructor(c).find(a)
            }
            return p.isFunction(a) ? d.ready(a) : (a.selector !== b && (this.selector = a.selector, this.context = a.context), p.makeArray(a, this))
        },
        selector: "",
        jquery: "1.8.1",
        length: 0,
        size: function() {
            return this.length
        },
        toArray: function() {
            return k.call(this)
        },
        get: function(a) {
            return a == null ? this.toArray() : a < 0 ? this[this.length + a] : this[a]
        },
        pushStack: function(a, b, c) {
            var d = p.merge(this.constructor(), a);
            return d.prevObject = this, d.context = this.context, b === "find" ? d.selector = this.selector + (this.selector ? " " : "") + c : b && (d.selector = this.selector + "." + b + "(" + c + ")"), d
        },
        each: function(a, b) {
            return p.each(this, a, b)
        },
        ready: function(a) {
            return p.ready.promise().done(a), this
        },
        eq: function(a) {
            return a = +a, a === -1 ? this.slice(a) : this.slice(a, a + 1)
        },
        first: function() {
            return this.eq(0)
        },
        last: function() {
            return this.eq(-1)
        },
        slice: function() {
            return this.pushStack(k.apply(this, arguments), "slice", k.call(arguments).join(","))
        },
        map: function(a) {
            return this.pushStack(p.map(this, function(b, c) {
                return a.call(b, c, b)
            }))
        },
        end: function() {
            return this.prevObject || this.constructor(null)
        },
        push: j,
        sort: [].sort,
        splice: [].splice
    }, p.fn.init.prototype = p.fn, p.extend = p.fn.extend = function() {
        var a, c, d, e, f, g, h = arguments[0] || {},
            i = 1,
            j = arguments.length,
            k = !1;
        typeof h == "boolean" && (k = h, h = arguments[1] || {}, i = 2), typeof h != "object" && !p.isFunction(h) && (h = {}), j === i && (h = this, --i);
        for (; i < j; i++)
            if ((a = arguments[i]) != null)
                for (c in a) {
                    d = h[c], e = a[c];
                    if (h === e) continue;
                    k && e && (p.isPlainObject(e) || (f = p.isArray(e))) ? (f ? (f = !1, g = d && p.isArray(d) ? d : []) : g = d && p.isPlainObject(d) ? d : {}, h[c] = p.extend(k, g, e)) : e !== b && (h[c] = e)
                }
            return h
    }, p.extend({
        noConflict: function(b) {
            return a.$ === p && (a.$ = i), b && a.jQuery === p && (a.jQuery = h), p
        },
        isReady: !1,
        readyWait: 1,
        holdReady: function(a) {
            a ? p.readyWait++ : p.ready(!0)
        },
        ready: function(a) {
            if (a === !0 ? --p.readyWait : p.isReady) return;
            if (!e.body) return setTimeout(p.ready, 1);
            p.isReady = !0;
            if (a !== !0 && --p.readyWait > 0) return;
            d.resolveWith(e, [p]), p.fn.trigger && p(e).trigger("ready").off("ready")
        },
        isFunction: function(a) {
            return p.type(a) === "function"
        },
        isArray: Array.isArray || function(a) {
            return p.type(a) === "array"
        },
        isWindow: function(a) {
            return a != null && a == a.window
        },
        isNumeric: function(a) {
            return !isNaN(parseFloat(a)) && isFinite(a)
        },
        type: function(a) {
            return a == null ? String(a) : E[m.call(a)] || "object"
        },
        isPlainObject: function(a) {
            if (!a || p.type(a) !== "object" || a.nodeType || p.isWindow(a)) return !1;
            try {
                if (a.constructor && !n.call(a, "constructor") && !n.call(a.constructor.prototype, "isPrototypeOf")) return !1
            } catch (c) {
                return !1
            }
            var d;
            for (d in a);
            return d === b || n.call(a, d)
        },
        isEmptyObject: function(a) {
            var b;
            for (b in a) return !1;
            return !0
        },
        error: function(a) {
            throw new Error(a)
        },
        parseHTML: function(a, b, c) {
            var d;
            return !a || typeof a != "string" ? null : (typeof b == "boolean" && (c = b, b = 0), b = b || e, (d = v.exec(a)) ? [b.createElement(d[1])] : (d = p.buildFragment([a], b, c ? null : []), p.merge([], (d.cacheable ? p.clone(d.fragment) : d.fragment).childNodes)))
        },
        parseJSON: function(b) {
            if (!b || typeof b != "string") return null;
            b = p.trim(b);
            if (a.JSON && a.JSON.parse) return a.JSON.parse(b);
            if (w.test(b.replace(y, "@").replace(z, "]").replace(x, ""))) return (new Function("return " + b))();
            p.error("Invalid JSON: " + b)
        },
        parseXML: function(c) {
            var d, e;
            if (!c || typeof c != "string") return null;
            try {
                a.DOMParser ? (e = new DOMParser, d = e.parseFromString(c, "text/xml")) : (d = new ActiveXObject("Microsoft.XMLDOM"), d.async = "false", d.loadXML(c))
            } catch (f) {
                d = b
            }
            return (!d || !d.documentElement || d.getElementsByTagName("parsererror").length) && p.error("Invalid XML: " + c), d
        },
        noop: function() {},
        globalEval: function(b) {
            b && r.test(b) && (a.execScript || function(b) {
                a.eval.call(a, b)
            })(b)
        },
        camelCase: function(a) {
            return a.replace(A, "ms-").replace(B, C)
        },
        nodeName: function(a, b) {
            return a.nodeName && a.nodeName.toUpperCase() === b.toUpperCase()
        },
        each: function(a, c, d) {
            var e, f = 0,
                g = a.length,
                h = g === b || p.isFunction(a);
            if (d) {
                if (h) {
                    for (e in a)
                        if (c.apply(a[e], d) === !1) break
                } else
                    for (; f < g;)
                        if (c.apply(a[f++], d) === !1) break
            } else if (h) {
                for (e in a)
                    if (c.call(a[e], e, a[e]) === !1) break
            } else
                for (; f < g;)
                    if (c.call(a[f], f, a[f++]) === !1) break; return a
        },
        trim: o && !o.call("��") ? function(a) {
            return a == null ? "" : o.call(a)
        } : function(a) {
            return a == null ? "" : a.toString().replace(t, "")
        },
        makeArray: function(a, b) {
            var c, d = b || [];
            return a != null && (c = p.type(a), a.length == null || c === "string" || c === "function" || c === "regexp" || p.isWindow(a) ? j.call(d, a) : p.merge(d, a)), d
        },
        inArray: function(a, b, c) {
            var d;
            if (b) {
                if (l) return l.call(b, a, c);
                d = b.length, c = c ? c < 0 ? Math.max(0, d + c) : c : 0;
                for (; c < d; c++)
                    if (c in b && b[c] === a) return c
            }
            return -1
        },
        merge: function(a, c) {
            var d = c.length,
                e = a.length,
                f = 0;
            if (typeof d == "number")
                for (; f < d; f++) a[e++] = c[f];
            else
                while (c[f] !== b) a[e++] = c[f++];
            return a.length = e, a
        },
        grep: function(a, b, c) {
            var d, e = [],
                f = 0,
                g = a.length;
            c = !!c;
            for (; f < g; f++) d = !!b(a[f], f), c !== d && e.push(a[f]);
            return e
        },
        map: function(a, c, d) {
            var e, f, g = [],
                h = 0,
                i = a.length,
                j = a instanceof p || i !== b && typeof i == "number" && (i > 0 && a[0] && a[i - 1] || i === 0 || p.isArray(a));
            if (j)
                for (; h < i; h++) e = c(a[h], h, d), e != null && (g[g.length] = e);
            else
                for (f in a) e = c(a[f], f, d), e != null && (g[g.length] = e);
            return g.concat.apply([], g)
        },
        guid: 1,
        proxy: function(a, c) {
            var d, e, f;
            return typeof c == "string" && (d = a[c], c = a, a = d), p.isFunction(a) ? (e = k.call(arguments, 2), f = function() {
                return a.apply(c, e.concat(k.call(arguments)))
            }, f.guid = a.guid = a.guid || f.guid || p.guid++, f) : b
        },
        access: function(a, c, d, e, f, g, h) {
            var i, j = d == null,
                k = 0,
                l = a.length;
            if (d && typeof d == "object") {
                for (k in d) p.access(a, c, k, d[k], 1, g, e);
                f = 1
            } else if (e !== b) {
                i = h === b && p.isFunction(e), j && (i ? (i = c, c = function(a, b, c) {
                    return i.call(p(a), c)
                }) : (c.call(a, e), c = null));
                if (c)
                    for (; k < l; k++) c(a[k], d, i ? e.call(a[k], k, c(a[k], d)) : e, h);
                f = 1
            }
            return f ? a : j ? c.call(a) : l ? c(a[0], d) : g
        },
        now: function() {
            return (new Date).getTime()
        }
    }), p.ready.promise = function(b) {
        if (!d) {
            d = p.Deferred();
            if (e.readyState === "complete") setTimeout(p.ready, 1);
            else if (e.addEventListener) e.addEventListener("DOMContentLoaded", D, !1), a.addEventListener("load", p.ready, !1);
            else {
                e.attachEvent("onreadystatechange", D), a.attachEvent("onload", p.ready);
                var c = !1;
                try {
                    c = a.frameElement == null && e.documentElement
                } catch (f) {}
                c && c.doScroll && function g() {
                    if (!p.isReady) {
                        try {
                            c.doScroll("left")
                        } catch (a) {
                            return setTimeout(g, 50)
                        }
                        p.ready()
                    }
                }()
            }
        }
        return d.promise(b)
    }, p.each("Boolean Number String Function Array Date RegExp Object".split(" "), function(a, b) {
        E["[object " + b + "]"] = b.toLowerCase()
    }), c = p(e);
    var F = {};
    p.Callbacks = function(a) {
        a = typeof a == "string" ? F[a] || G(a) : p.extend({}, a);
        var c, d, e, f, g, h, i = [],
            j = !a.once && [],
            k = function(b) {
                c = a.memory && b, d = !0, h = f || 0, f = 0, g = i.length, e = !0;
                for (; i && h < g; h++)
                    if (i[h].apply(b[0], b[1]) === !1 && a.stopOnFalse) {
                        c = !1;
                        break
                    }
                e = !1, i && (j ? j.length && k(j.shift()) : c ? i = [] : l.disable())
            },
            l = {
                add: function() {
                    if (i) {
                        var b = i.length;
                        (function d(b) {
                            p.each(b, function(b, c) {
                                var e = p.type(c);
                                e === "function" && (!a.unique || !l.has(c)) ? i.push(c) : c && c.length && e !== "string" && d(c)
                            })
                        })(arguments), e ? g = i.length : c && (f = b, k(c))
                    }
                    return this
                },
                remove: function() {
                    return i && p.each(arguments, function(a, b) {
                        var c;
                        while ((c = p.inArray(b, i, c)) > -1) i.splice(c, 1), e && (c <= g && g--, c <= h && h--)
                    }), this
                },
                has: function(a) {
                    return p.inArray(a, i) > -1
                },
                empty: function() {
                    return i = [], this
                },
                disable: function() {
                    return i = j = c = b, this
                },
                disabled: function() {
                    return !i
                },
                lock: function() {
                    return j = b, c || l.disable(), this
                },
                locked: function() {
                    return !j
                },
                fireWith: function(a, b) {
                    return b = b || [], b = [a, b.slice ? b.slice() : b], i && (!d || j) && (e ? j.push(b) : k(b)), this
                },
                fire: function() {
                    return l.fireWith(this, arguments), this
                },
                fired: function() {
                    return !!d
                }
            };
        return l
    }, p.extend({
        Deferred: function(a) {
            var b = [
                    ["resolve", "done", p.Callbacks("once memory"), "resolved"],
                    ["reject", "fail", p.Callbacks("once memory"), "rejected"],
                    ["notify", "progress", p.Callbacks("memory")]
                ],
                c = "pending",
                d = {
                    state: function() {
                        return c
                    },
                    always: function() {
                        return e.done(arguments).fail(arguments), this
                    },
                    then: function() {
                        var a = arguments;
                        return p.Deferred(function(c) {
                            p.each(b, function(b, d) {
                                var f = d[0],
                                    g = a[b];
                                e[d[1]](p.isFunction(g) ? function() {
                                    var a = g.apply(this, arguments);
                                    a && p.isFunction(a.promise) ? a.promise().done(c.resolve).fail(c.reject).progress(c.notify) : c[f + "With"](this === e ? c : this, [a])
                                } : c[f])
                            }), a = null
                        }).promise()
                    },
                    promise: function(a) {
                        return typeof a == "object" ? p.extend(a, d) : d
                    }
                },
                e = {};
            return d.pipe = d.then, p.each(b, function(a, f) {
                var g = f[2],
                    h = f[3];
                d[f[1]] = g.add, h && g.add(function() {
                    c = h
                }, b[a ^ 1][2].disable, b[2][2].lock), e[f[0]] = g.fire, e[f[0] + "With"] = g.fireWith
            }), d.promise(e), a && a.call(e, e), e
        },
        when: function(a) {
            var b = 0,
                c = k.call(arguments),
                d = c.length,
                e = d !== 1 || a && p.isFunction(a.promise) ? d : 0,
                f = e === 1 ? a : p.Deferred(),
                g = function(a, b, c) {
                    return function(d) {
                        b[a] = this, c[a] = arguments.length > 1 ? k.call(arguments) : d, c === h ? f.notifyWith(b, c) : --e || f.resolveWith(b, c)
                    }
                },
                h, i, j;
            if (d > 1) {
                h = new Array(d), i = new Array(d), j = new Array(d);
                for (; b < d; b++) c[b] && p.isFunction(c[b].promise) ? c[b].promise().done(g(b, j, c)).fail(f.reject).progress(g(b, i, h)) : --e
            }
            return e || f.resolveWith(j, c), f.promise()
        }
    }), p.support = function() {
        var b, c, d, f, g, h, i, j, k, l, m, n = e.createElement("div");
        n.setAttribute("className", "t"), n.innerHTML = "  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", c = n.getElementsByTagName("*"), d = n.getElementsByTagName("a")[0], d.style.cssText = "top:1px;float:left;opacity:.5";
        if (!c || !c.length || !d) return {};
        f = e.createElement("select"), g = f.appendChild(e.createElement("option")), h = n.getElementsByTagName("input")[0], b = {
            leadingWhitespace: n.firstChild.nodeType === 3,
            tbody: !n.getElementsByTagName("tbody").length,
            htmlSerialize: !!n.getElementsByTagName("link").length,
            style: /top/.test(d.getAttribute("style")),
            hrefNormalized: d.getAttribute("href") === "/a",
            opacity: /^0.5/.test(d.style.opacity),
            cssFloat: !!d.style.cssFloat,
            checkOn: h.value === "on",
            optSelected: g.selected,
            getSetAttribute: n.className !== "t",
            enctype: !!e.createElement("form").enctype,
            html5Clone: e.createElement("nav").cloneNode(!0).outerHTML !== "<:nav></:nav>",
            boxModel: e.compatMode === "CSS1Compat",
            submitBubbles: !0,
            changeBubbles: !0,
            focusinBubbles: !1,
            deleteExpando: !0,
            noCloneEvent: !0,
            inlineBlockNeedsLayout: !1,
            shrinkWrapBlocks: !1,
            reliableMarginRight: !0,
            boxSizingReliable: !0,
            pixelPosition: !1
        }, h.checked = !0, b.noCloneChecked = h.cloneNode(!0).checked, f.disabled = !0, b.optDisabled = !g.disabled;
        try {
            delete n.test
        } catch (o) {
            b.deleteExpando = !1
        }!n.addEventListener && n.attachEvent && n.fireEvent && (n.attachEvent("onclick", m = function() {
            b.noCloneEvent = !1
        }), n.cloneNode(!0).fireEvent("onclick"), n.detachEvent("onclick", m)), h = e.createElement("input"), h.value = "t", h.setAttribute("type", "radio"), b.radioValue = h.value === "t", h.setAttribute("checked", "checked"), h.setAttribute("name", "t"), n.appendChild(h), i = e.createDocumentFragment(), i.appendChild(n.lastChild), b.checkClone = i.cloneNode(!0).cloneNode(!0).lastChild.checked, b.appendChecked = h.checked, i.removeChild(h), i.appendChild(n);
        if (n.attachEvent)
            for (k in {
                    submit: !0,
                    change: !0,
                    focusin: !0
                }) j = "on" + k, l = j in n, l || (n.setAttribute(j, "return;"), l = typeof n[j] == "function"), b[k + "Bubbles"] = l;
        return p(function() {
            var c, d, f, g, h = "padding:0;margin:0;border:0;display:block;overflow:hidden;",
                i = e.getElementsByTagName("body")[0];
            if (!i) return;
            c = e.createElement("div"), c.style.cssText = "visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px", i.insertBefore(c, i.firstChild), d = e.createElement("div"), c.appendChild(d), d.innerHTML = "<table><tr><td></td><td>t</td></tr></table>", f = d.getElementsByTagName("td"), f[0].style.cssText = "padding:0;margin:0;border:0;display:none", l = f[0].offsetHeight === 0, f[0].style.display = "", f[1].style.display = "none", b.reliableHiddenOffsets = l && f[0].offsetHeight === 0, d.innerHTML = "", d.style.cssText = "box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;", b.boxSizing = d.offsetWidth === 4, b.doesNotIncludeMarginInBodyOffset = i.offsetTop !== 1, a.getComputedStyle && (b.pixelPosition = (a.getComputedStyle(d, null) || {}).top !== "1%", b.boxSizingReliable = (a.getComputedStyle(d, null) || {
                width: "4px"
            }).width === "4px", g = e.createElement("div"), g.style.cssText = d.style.cssText = h, g.style.marginRight = g.style.width = "0", d.style.width = "1px", d.appendChild(g), b.reliableMarginRight = !parseFloat((a.getComputedStyle(g, null) || {}).marginRight)), typeof d.style.zoom != "undefined" && (d.innerHTML = "", d.style.cssText = h + "width:1px;padding:1px;display:inline;zoom:1", b.inlineBlockNeedsLayout = d.offsetWidth === 3, d.style.display = "block", d.style.overflow = "visible", d.innerHTML = "<div></div>", d.firstChild.style.width = "5px", b.shrinkWrapBlocks = d.offsetWidth !== 3, c.style.zoom = 1), i.removeChild(c), c = d = f = g = null
        }), i.removeChild(n), c = d = f = g = h = i = n = null, b
    }();
    var H = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/,
        I = /([A-Z])/g;
    p.extend({
        cache: {},
        deletedIds: [],
        uuid: 0,
        expando: "jQuery" + (p.fn.jquery + Math.random()).replace(/\D/g, ""),
        noData: {
            embed: !0,
            object: "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
            applet: !0
        },
        hasData: function(a) {
            return a = a.nodeType ? p.cache[a[p.expando]] : a[p.expando], !!a && !K(a)
        },
        data: function(a, c, d, e) {
            if (!p.acceptData(a)) return;
            var f, g, h = p.expando,
                i = typeof c == "string",
                j = a.nodeType,
                k = j ? p.cache : a,
                l = j ? a[h] : a[h] && h;
            if ((!l || !k[l] || !e && !k[l].data) && i && d === b) return;
            l || (j ? a[h] = l = p.deletedIds.pop() || ++p.uuid : l = h), k[l] || (k[l] = {}, j || (k[l].toJSON = p.noop));
            if (typeof c == "object" || typeof c == "function") e ? k[l] = p.extend(k[l], c) : k[l].data = p.extend(k[l].data, c);
            return f = k[l], e || (f.data || (f.data = {}), f = f.data), d !== b && (f[p.camelCase(c)] = d), i ? (g = f[c], g == null && (g = f[p.camelCase(c)])) : g = f, g
        },
        removeData: function(a, b, c) {
            if (!p.acceptData(a)) return;
            var d, e, f, g = a.nodeType,
                h = g ? p.cache : a,
                i = g ? a[p.expando] : p.expando;
            if (!h[i]) return;
            if (b) {
                d = c ? h[i] : h[i].data;
                if (d) {
                    p.isArray(b) || (b in d ? b = [b] : (b = p.camelCase(b), b in d ? b = [b] : b = b.split(" ")));
                    for (e = 0, f = b.length; e < f; e++) delete d[b[e]];
                    if (!(c ? K : p.isEmptyObject)(d)) return
                }
            }
            if (!c) {
                delete h[i].data;
                if (!K(h[i])) return
            }
            g ? p.cleanData([a], !0) : p.support.deleteExpando || h != h.window ? delete h[i] : h[i] = null
        },
        _data: function(a, b, c) {
            return p.data(a, b, c, !0)
        },
        acceptData: function(a) {
            var b = a.nodeName && p.noData[a.nodeName.toLowerCase()];
            return !b || b !== !0 && a.getAttribute("classid") === b
        }
    }), p.fn.extend({
        data: function(a, c) {
            var d, e, f, g, h, i = this[0],
                j = 0,
                k = null;
            if (a === b) {
                if (this.length) {
                    k = p.data(i);
                    if (i.nodeType === 1 && !p._data(i, "parsedAttrs")) {
                        f = i.attributes;
                        for (h = f.length; j < h; j++) g = f[j].name, g.indexOf("data-") === 0 && (g = p.camelCase(g.substring(5)), J(i, g, k[g]));
                        p._data(i, "parsedAttrs", !0)
                    }
                }
                return k
            }
            return typeof a == "object" ? this.each(function() {
                p.data(this, a)
            }) : (d = a.split(".", 2), d[1] = d[1] ? "." + d[1] : "", e = d[1] + "!", p.access(this, function(c) {
                if (c === b) return k = this.triggerHandler("getData" + e, [d[0]]), k === b && i && (k = p.data(i, a), k = J(i, a, k)), k === b && d[1] ? this.data(d[0]) : k;
                d[1] = c, this.each(function() {
                    var b = p(this);
                    b.triggerHandler("setData" + e, d), p.data(this, a, c), b.triggerHandler("changeData" + e, d)
                })
            }, null, c, arguments.length > 1, null, !1))
        },
        removeData: function(a) {
            return this.each(function() {
                p.removeData(this, a)
            })
        }
    }), p.extend({
        queue: function(a, b, c) {
            var d;
            if (a) return b = (b || "fx") + "queue", d = p._data(a, b), c && (!d || p.isArray(c) ? d = p._data(a, b, p.makeArray(c)) : d.push(c)), d || []
        },
        dequeue: function(a, b) {
            b = b || "fx";
            var c = p.queue(a, b),
                d = c.length,
                e = c.shift(),
                f = p._queueHooks(a, b),
                g = function() {
                    p.dequeue(a, b)
                };
            e === "inprogress" && (e = c.shift(), d--), e && (b === "fx" && c.unshift("inprogress"), delete f.stop, e.call(a, g, f)), !d && f && f.empty.fire()
        },
        _queueHooks: function(a, b) {
            var c = b + "queueHooks";
            return p._data(a, c) || p._data(a, c, {
                empty: p.Callbacks("once memory").add(function() {
                    p.removeData(a, b + "queue", !0), p.removeData(a, c, !0)
                })
            })
        }
    }), p.fn.extend({
        queue: function(a, c) {
            var d = 2;
            return typeof a != "string" && (c = a, a = "fx", d--), arguments.length < d ? p.queue(this[0], a) : c === b ? this : this.each(function() {
                var b = p.queue(this, a, c);
                p._queueHooks(this, a), a === "fx" && b[0] !== "inprogress" && p.dequeue(this, a)
            })
        },
        dequeue: function(a) {
            return this.each(function() {
                p.dequeue(this, a)
            })
        },
        delay: function(a, b) {
            return a = p.fx ? p.fx.speeds[a] || a : a, b = b || "fx", this.queue(b, function(b, c) {
                var d = setTimeout(b, a);
                c.stop = function() {
                    clearTimeout(d)
                }
            })
        },
        clearQueue: function(a) {
            return this.queue(a || "fx", [])
        },
        promise: function(a, c) {
            var d, e = 1,
                f = p.Deferred(),
                g = this,
                h = this.length,
                i = function() {
                    --e || f.resolveWith(g, [g])
                };
            typeof a != "string" && (c = a, a = b), a = a || "fx";
            while (h--) d = p._data(g[h], a + "queueHooks"), d && d.empty && (e++, d.empty.add(i));
            return i(), f.promise(c)
        }
    });
    var L, M, N, O = /[\t\r\n]/g,
        P = /\r/g,
        Q = /^(?:button|input)$/i,
        R = /^(?:button|input|object|select|textarea)$/i,
        S = /^a(?:rea|)$/i,
        T = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,
        U = p.support.getSetAttribute;
    p.fn.extend({
        attr: function(a, b) {
            return p.access(this, p.attr, a, b, arguments.length > 1)
        },
        removeAttr: function(a) {
            return this.each(function() {
                p.removeAttr(this, a)
            })
        },
        prop: function(a, b) {
            return p.access(this, p.prop, a, b, arguments.length > 1)
        },
        removeProp: function(a) {
            return a = p.propFix[a] || a, this.each(function() {
                try {
                    this[a] = b, delete this[a]
                } catch (c) {}
            })
        },
        addClass: function(a) {
            var b, c, d, e, f, g, h;
            if (p.isFunction(a)) return this.each(function(b) {
                p(this).addClass(a.call(this, b, this.className))
            });
            if (a && typeof a == "string") {
                b = a.split(s);
                for (c = 0, d = this.length; c < d; c++) {
                    e = this[c];
                    if (e.nodeType === 1)
                        if (!e.className && b.length === 1) e.className = a;
                        else {
                            f = " " + e.className + " ";
                            for (g = 0, h = b.length; g < h; g++) ~f.indexOf(" " + b[g] + " ") || (f += b[g] + " ");
                            e.className = p.trim(f)
                        }
                }
            }
            return this
        },
        removeClass: function(a) {
            var c, d, e, f, g, h, i;
            if (p.isFunction(a)) return this.each(function(b) {
                p(this).removeClass(a.call(this, b, this.className))
            });
            if (a && typeof a == "string" || a === b) {
                c = (a || "").split(s);
                for (h = 0, i = this.length; h < i; h++) {
                    e = this[h];
                    if (e.nodeType === 1 && e.className) {
                        d = (" " + e.className + " ").replace(O, " ");
                        for (f = 0, g = c.length; f < g; f++)
                            while (d.indexOf(" " + c[f] + " ") > -1) d = d.replace(" " + c[f] + " ", " ");
                        e.className = a ? p.trim(d) : ""
                    }
                }
            }
            return this
        },
        toggleClass: function(a, b) {
            var c = typeof a,
                d = typeof b == "boolean";
            return p.isFunction(a) ? this.each(function(c) {
                p(this).toggleClass(a.call(this, c, this.className, b), b)
            }) : this.each(function() {
                if (c === "string") {
                    var e, f = 0,
                        g = p(this),
                        h = b,
                        i = a.split(s);
                    while (e = i[f++]) h = d ? h : !g.hasClass(e), g[h ? "addClass" : "removeClass"](e)
                } else if (c === "undefined" || c === "boolean") this.className && p._data(this, "__className__", this.className), this.className = this.className || a === !1 ? "" : p._data(this, "__className__") || ""
            })
        },
        hasClass: function(a) {
            var b = " " + a + " ",
                c = 0,
                d = this.length;
            for (; c < d; c++)
                if (this[c].nodeType === 1 && (" " + this[c].className + " ").replace(O, " ").indexOf(b) > -1) return !0;
            return !1
        },
        val: function(a) {
            var c, d, e, f = this[0];
            if (!arguments.length) {
                if (f) return c = p.valHooks[f.type] || p.valHooks[f.nodeName.toLowerCase()], c && "get" in c && (d = c.get(f, "value")) !== b ? d : (d = f.value, typeof d == "string" ? d.replace(P, "") : d == null ? "" : d);
                return
            }
            return e = p.isFunction(a), this.each(function(d) {
                var f, g = p(this);
                if (this.nodeType !== 1) return;
                e ? f = a.call(this, d, g.val()) : f = a, f == null ? f = "" : typeof f == "number" ? f += "" : p.isArray(f) && (f = p.map(f, function(a) {
                    return a == null ? "" : a + ""
                })), c = p.valHooks[this.type] || p.valHooks[this.nodeName.toLowerCase()];
                if (!c || !("set" in c) || c.set(this, f, "value") === b) this.value = f
            })
        }
    }), p.extend({
        valHooks: {
            option: {get: function(a) {
                    var b = a.attributes.value;
                    return !b || b.specified ? a.value : a.text
                }
            },
            select: {get: function(a) {
                    var b, c, d, e, f = a.selectedIndex,
                        g = [],
                        h = a.options,
                        i = a.type === "select-one";
                    if (f < 0) return null;
                    c = i ? f : 0, d = i ? f + 1 : h.length;
                    for (; c < d; c++) {
                        e = h[c];
                        if (e.selected && (p.support.optDisabled ? !e.disabled : e.getAttribute("disabled") === null) && (!e.parentNode.disabled || !p.nodeName(e.parentNode, "optgroup"))) {
                            b = p(e).val();
                            if (i) return b;
                            g.push(b)
                        }
                    }
                    return i && !g.length && h.length ? p(h[f]).val() : g
                },
                set: function(a, b) {
                    var c = p.makeArray(b);
                    return p(a).find("option").each(function() {
                        this.selected = p.inArray(p(this).val(), c) >= 0
                    }), c.length || (a.selectedIndex = -1), c
                }
            }
        },
        attrFn: {},
        attr: function(a, c, d, e) {
            var f, g, h, i = a.nodeType;
            if (!a || i === 3 || i === 8 || i === 2) return;
            if (e && p.isFunction(p.fn[c])) return p(a)[c](d);
            if (typeof a.getAttribute == "undefined") return p.prop(a, c, d);
            h = i !== 1 || !p.isXMLDoc(a), h && (c = c.toLowerCase(), g = p.attrHooks[c] || (T.test(c) ? M : L));
            if (d !== b) {
                if (d === null) {
                    p.removeAttr(a, c);
                    return
                }
                return g && "set" in g && h && (f = g.set(a, d, c)) !== b ? f : (a.setAttribute(c, "" + d), d)
            }
            return g && "get" in g && h && (f = g.get(a, c)) !== null ? f : (f = a.getAttribute(c), f === null ? b : f)
        },
        removeAttr: function(a, b) {
            var c, d, e, f, g = 0;
            if (b && a.nodeType === 1) {
                d = b.split(s);
                for (; g < d.length; g++) e = d[g], e && (c = p.propFix[e] || e, f = T.test(e), f || p.attr(a, e, ""), a.removeAttribute(U ? e : c), f && c in a && (a[c] = !1))
            }
        },
        attrHooks: {
            type: {set: function(a, b) {
                    if (Q.test(a.nodeName) && a.parentNode) p.error("type property can't be changed");
                    else if (!p.support.radioValue && b === "radio" && p.nodeName(a, "input")) {
                        var c = a.value;
                        return a.setAttribute("type", b), c && (a.value = c), b
                    }
                }
            },
            value: {get: function(a, b) {
                    return L && p.nodeName(a, "button") ? L.get(a, b) : b in a ? a.value : null
                },
                set: function(a, b, c) {
                    if (L && p.nodeName(a, "button")) return L.set(a, b, c);
                    a.value = b
                }
            }
        },
        propFix: {
            tabindex: "tabIndex",
            readonly: "readOnly",
            "for": "htmlFor",
            "class": "className",
            maxlength: "maxLength",
            cellspacing: "cellSpacing",
            cellpadding: "cellPadding",
            rowspan: "rowSpan",
            colspan: "colSpan",
            usemap: "useMap",
            frameborder: "frameBorder",
            contenteditable: "contentEditable"
        },
        prop: function(a, c, d) {
            var e, f, g, h = a.nodeType;
            if (!a || h === 3 || h === 8 || h === 2) return;
            return g = h !== 1 || !p.isXMLDoc(a), g && (c = p.propFix[c] || c, f = p.propHooks[c]), d !== b ? f && "set" in f && (e = f.set(a, d, c)) !== b ? e : a[c] = d : f && "get" in f && (e = f.get(a, c)) !== null ? e : a[c]
        },
        propHooks: {
            tabIndex: {get: function(a) {
                    var c = a.getAttributeNode("tabindex");
                    return c && c.specified ? parseInt(c.value, 10) : R.test(a.nodeName) || S.test(a.nodeName) && a.href ? 0 : b
                }
            }
        }
    }), M = {get: function(a, c) {
            var d, e = p.prop(a, c);
            return e === !0 || typeof e != "boolean" && (d = a.getAttributeNode(c)) && d.nodeValue !== !1 ? c.toLowerCase() : b
        },
        set: function(a, b, c) {
            var d;
            return b === !1 ? p.removeAttr(a, c) : (d = p.propFix[c] || c, d in a && (a[d] = !0), a.setAttribute(c, c.toLowerCase())), c
        }
    }, U || (N = {
        name: !0,
        id: !0,
        coords: !0
    }, L = p.valHooks.button = {get: function(a, c) {
            var d;
            return d = a.getAttributeNode(c), d && (N[c] ? d.value !== "" : d.specified) ? d.value : b
        },
        set: function(a, b, c) {
            var d = a.getAttributeNode(c);
            return d || (d = e.createAttribute(c), a.setAttributeNode(d)), d.value = b + ""
        }
    }, p.each(["width", "height"], function(a, b) {
        p.attrHooks[b] = p.extend(p.attrHooks[b], {set: function(a, c) {
                if (c === "") return a.setAttribute(b, "auto"), c
            }
        })
    }), p.attrHooks.contenteditable = {get: L.get,
        set: function(a, b, c) {
            b === "" && (b = "false"), L.set(a, b, c)
        }
    }), p.support.hrefNormalized || p.each(["href", "src", "width", "height"], function(a, c) {
        p.attrHooks[c] = p.extend(p.attrHooks[c], {get: function(a) {
                var d = a.getAttribute(c, 2);
                return d === null ? b : d
            }
        })
    }), p.support.style || (p.attrHooks.style = {get: function(a) {
            return a.style.cssText.toLowerCase() || b
        },
        set: function(a, b) {
            return a.style.cssText = "" + b
        }
    }), p.support.optSelected || (p.propHooks.selected = p.extend(p.propHooks.selected, {get: function(a) {
            var b = a.parentNode;
            return b && (b.selectedIndex, b.parentNode && b.parentNode.selectedIndex), null
        }
    })), p.support.enctype || (p.propFix.enctype = "encoding"), p.support.checkOn || p.each(["radio", "checkbox"], function() {
        p.valHooks[this] = {get: function(a) {
                return a.getAttribute("value") === null ? "on" : a.value
            }
        }
    }), p.each(["radio", "checkbox"], function() {
        p.valHooks[this] = p.extend(p.valHooks[this], {set: function(a, b) {
                if (p.isArray(b)) return a.checked = p.inArray(p(a).val(), b) >= 0
            }
        })
    });
    var V = /^(?:textarea|input|select)$/i,
        W = /^([^\.]*|)(?:\.(.+)|)$/,
        X = /(?:^|\s)hover(\.\S+|)\b/,
        Y = /^key/,
        Z = /^(?:mouse|contextmenu)|click/,
        $ = /^(?:focusinfocus|focusoutblur)$/,
        _ = function(a) {
            return p.event.special.hover ? a : a.replace(X, "mouseenter$1 mouseleave$1")
        };
    p.event = {
            add: function(a, c, d, e, f) {
                var g, h, i, j, k, l, m, n, o, q, r;
                if (a.nodeType === 3 || a.nodeType === 8 || !c || !d || !(g = p._data(a))) return;
                d.handler && (o = d, d = o.handler, f = o.selector), d.guid || (d.guid = p.guid++), i = g.events, i || (g.events = i = {}), h = g.handle, h || (g.handle = h = function(a) {
                    return typeof p != "undefined" && (!a || p.event.triggered !== a.type) ? p.event.dispatch.apply(h.elem, arguments) : b
                }, h.elem = a), c = p.trim(_(c)).split(" ");
                for (j = 0; j < c.length; j++) {
                    k = W.exec(c[j]) || [], l = k[1], m = (k[2] || "").split(".").sort(), r = p.event.special[l] || {}, l = (f ? r.delegateType : r.bindType) || l, r = p.event.special[l] || {}, n = p.extend({
                        type: l,
                        origType: k[1],
                        data: e,
                        handler: d,
                        guid: d.guid,
                        selector: f,
                        namespace: m.join(".")
                    }, o), q = i[l];
                    if (!q) {
                        q = i[l] = [], q.delegateCount = 0;
                        if (!r.setup || r.setup.call(a, e, m, h) === !1) a.addEventListener ? a.addEventListener(l, h, !1) : a.attachEvent && a.attachEvent("on" + l, h)
                    }
                    r.add && (r.add.call(a, n), n.handler.guid || (n.handler.guid = d.guid)), f ? q.splice(q.delegateCount++, 0, n) : q.push(n), p.event.global[l] = !0
                }
                a = null
            },
            global: {},
            remove: function(a, b, c, d, e) {
                var f, g, h, i, j, k, l, m, n, o, q, r = p.hasData(a) && p._data(a);
                if (!r || !(m = r.events)) return;
                b = p.trim(_(b || "")).split(" ");
                for (f = 0; f < b.length; f++) {
                    g = W.exec(b[f]) || [], h = i = g[1], j = g[2];
                    if (!h) {
                        for (h in m) p.event.remove(a, h + b[f], c, d, !0);
                        continue
                    }
                    n = p.event.special[h] || {}, h = (d ? n.delegateType : n.bindType) || h, o = m[h] || [], k = o.length, j = j ? new RegExp("(^|\\.)" + j.split(".").sort().join("\\.(?:.*\\.|)") + "(\\.|$)") : null;
                    for (l = 0; l < o.length; l++) q = o[l], (e || i === q.origType) && (!c || c.guid === q.guid) && (!j || j.test(q.namespace)) && (!d || d === q.selector || d === "**" && q.selector) && (o.splice(l--, 1), q.selector && o.delegateCount--, n.remove && n.remove.call(a, q));
                    o.length === 0 && k !== o.length && ((!n.teardown || n.teardown.call(a, j, r.handle) === !1) && p.removeEvent(a, h, r.handle), delete m[h])
                }
                p.isEmptyObject(m) && (delete r.handle, p.removeData(a, "events", !0))
            },
            customEvent: {
                getData: !0,
                setData: !0,
                changeData: !0
            },
            trigger: function(c, d, f, g) {
                if (!f || f.nodeType !== 3 && f.nodeType !== 8) {
                    var h, i, j, k, l, m, n, o, q, r, s = c.type || c,
                        t = [];
                    if ($.test(s + p.event.triggered)) return;
                    s.indexOf("!") >= 0 && (s = s.slice(0, -1), i = !0), s.indexOf(".") >= 0 && (t = s.split("."), s = t.shift(), t.sort());
                    if ((!f || p.event.customEvent[s]) && !p.event.global[s]) return;
                    c = typeof c == "object" ? c[p.expando] ? c : new p.Event(s, c) : new p.Event(s), c.type = s, c.isTrigger = !0, c.exclusive = i, c.namespace = t.join("."), c.namespace_re = c.namespace ? new RegExp("(^|\\.)" + t.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, m = s.indexOf(":") < 0 ? "on" + s : "";
                    if (!f) {
                        h = p.cache;
                        for (j in h) h[j].events && h[j].events[s] && p.event.trigger(c, d, h[j].handle.elem, !0);
                        return
                    }
                    c.result = b, c.target || (c.target = f), d = d != null ? p.makeArray(d) : [], d.unshift(c), n = p.event.special[s] || {};
                    if (n.trigger && n.trigger.apply(f, d) === !1) return;
                    q = [
                        [f, n.bindType || s]
                    ];
                    if (!g && !n.noBubble && !p.isWindow(f)) {
                        r = n.delegateType || s, k = $.test(r + s) ? f : f.parentNode;
                        for (l = f; k; k = k.parentNode) q.push([k, r]), l = k;
                        l === (f.ownerDocument || e) && q.push([l.defaultView || l.parentWindow || a, r])
                    }
                    for (j = 0; j < q.length && !c.isPropagationStopped(); j++) k = q[j][0], c.type = q[j][1], o = (p._data(k, "events") || {})[c.type] && p._data(k, "handle"), o && o.apply(k, d), o = m && k[m], o && p.acceptData(k) && o.apply(k, d) === !1 && c.preventDefault();
                    return c.type = s, !g && !c.isDefaultPrevented() && (!n._default || n._default.apply(f.ownerDocument, d) === !1) && (s !== "click" || !p.nodeName(f, "a")) && p.acceptData(f) && m && f[s] && (s !== "focus" && s !== "blur" || c.target.offsetWidth !== 0) && !p.isWindow(f) && (l = f[m], l && (f[m] = null), p.event.triggered = s, f[s](), p.event.triggered = b, l && (f[m] = l)), c.result
                }
                return
            },
            dispatch: function(c) {
                c = p.event.fix(c || a.event);
                var d, e, f, g, h, i, j, k, l, m, n = (p._data(this, "events") || {})[c.type] || [],
                    o = n.delegateCount,
                    q = [].slice.call(arguments),
                    r = !c.exclusive && !c.namespace,
                    s = p.event.special[c.type] || {},
                    t = [];
                q[0] = c, c.delegateTarget = this;
                if (s.preDispatch && s.preDispatch.call(this, c) === !1) return;
                if (o && (!c.button || c.type !== "click"))
                    for (f = c.target; f != this; f = f.parentNode || this)
                        if (f.disabled !== !0 || c.type !== "click") {
                            h = {}, j = [];
                            for (d = 0; d < o; d++) k = n[d], l = k.selector, h[l] === b && (h[l] = p(l, this).index(f) >= 0), h[l] && j.push(k);
                            j.length && t.push({
                                elem: f,
                                matches: j
                            })
                        }
                n.length > o && t.push({
                    elem: this,
                    matches: n.slice(o)
                });
                for (d = 0; d < t.length && !c.isPropagationStopped(); d++) {
                    i = t[d], c.currentTarget = i.elem;
                    for (e = 0; e < i.matches.length && !c.isImmediatePropagationStopped(); e++) {
                        k = i.matches[e];
                        if (r || !c.namespace && !k.namespace || c.namespace_re && c.namespace_re.test(k.namespace)) c.data = k.data, c.handleObj = k, g = ((p.event.special[k.origType] || {}).handle || k.handler).apply(i.elem, q), g !== b && (c.result = g, g === !1 && (c.preventDefault(), c.stopPropagation()))
                    }
                }
                return s.postDispatch && s.postDispatch.call(this, c), c.result
            },
            props: "attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
            fixHooks: {},
            keyHooks: {
                props: "char charCode key keyCode".split(" "),
                filter: function(a, b) {
                    return a.which == null && (a.which = b.charCode != null ? b.charCode : b.keyCode), a
                }
            },
            mouseHooks: {
                props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
                filter: function(a, c) {
                    var d, f, g, h = c.button,
                        i = c.fromElement;
                    return a.pageX == null && c.clientX != null && (d = a.target.ownerDocument || e, f = d.documentElement, g = d.body, a.pageX = c.clientX + (f && f.scrollLeft || g && g.scrollLeft || 0) - (f && f.clientLeft || g && g.clientLeft || 0), a.pageY = c.clientY + (f && f.scrollTop || g && g.scrollTop || 0) - (f && f.clientTop || g && g.clientTop || 0)), !a.relatedTarget && i && (a.relatedTarget = i === a.target ? c.toElement : i), !a.which && h !== b && (a.which = h & 1 ? 1 : h & 2 ? 3 : h & 4 ? 2 : 0), a
                }
            },
            fix: function(a) {
                if (a[p.expando]) return a;
                var b, c, d = a,
                    f = p.event.fixHooks[a.type] || {},
                    g = f.props ? this.props.concat(f.props) : this.props;
                a = p.Event(d);
                for (b = g.length; b;) c = g[--b], a[c] = d[c];
                return a.target || (a.target = d.srcElement || e), a.target.nodeType === 3 && (a.target = a.target.parentNode), a.metaKey = !!a.metaKey, f.filter ? f.filter(a, d) : a
            },
            special: {
                load: {
                    noBubble: !0
                },
                focus: {
                    delegateType: "focusin"
                },
                blur: {
                    delegateType: "focusout"
                },
                beforeunload: {
                    setup: function(a, b, c) {
                        p.isWindow(this) && (this.onbeforeunload = c)
                    },
                    teardown: function(a, b) {
                        this.onbeforeunload === b && (this.onbeforeunload = null)
                    }
                }
            },
            simulate: function(a, b, c, d) {
                var e = p.extend(new p.Event, c, {
                    type: a,
                    isSimulated: !0,
                    originalEvent: {}
                });
                d ? p.event.trigger(e, null, b) : p.event.dispatch.call(b, e), e.isDefaultPrevented() && c.preventDefault()
            }
        }, p.event.handle = p.event.dispatch, p.removeEvent = e.removeEventListener ? function(a, b, c) {
            a.removeEventListener && a.removeEventListener(b, c, !1)
        } : function(a, b, c) {
            var d = "on" + b;
            a.detachEvent && (typeof a[d] == "undefined" && (a[d] = null), a.detachEvent(d, c))
        }, p.Event = function(a, b) {
            if (this instanceof p.Event) a && a.type ? (this.originalEvent = a, this.type = a.type, this.isDefaultPrevented = a.defaultPrevented || a.returnValue === !1 || a.getPreventDefault && a.getPreventDefault() ? bb : ba) : this.type = a, b && p.extend(this, b), this.timeStamp = a && a.timeStamp || p.now(), this[p.expando] = !0;
            else return new p.Event(a, b)
        }, p.Event.prototype = {
            preventDefault: function() {
                this.isDefaultPrevented = bb;
                var a = this.originalEvent;
                if (!a) return;
                a.preventDefault ? a.preventDefault() : a.returnValue = !1
            },
            stopPropagation: function() {
                this.isPropagationStopped = bb;
                var a = this.originalEvent;
                if (!a) return;
                a.stopPropagation && a.stopPropagation(), a.cancelBubble = !0
            },
            stopImmediatePropagation: function() {
                this.isImmediatePropagationStopped = bb, this.stopPropagation()
            },
            isDefaultPrevented: ba,
            isPropagationStopped: ba,
            isImmediatePropagationStopped: ba
        }, p.each({
            mouseenter: "mouseover",
            mouseleave: "mouseout"
        }, function(a, b) {
            p.event.special[a] = {
                delegateType: b,
                bindType: b,
                handle: function(a) {
                    var c, d = this,
                        e = a.relatedTarget,
                        f = a.handleObj,
                        g = f.selector;
                    if (!e || e !== d && !p.contains(d, e)) a.type = f.origType, c = f.handler.apply(this, arguments), a.type = b;
                    return c
                }
            }
        }), p.support.submitBubbles || (p.event.special.submit = {
            setup: function() {
                if (p.nodeName(this, "form")) return !1;
                p.event.add(this, "click._submit keypress._submit", function(a) {
                    var c = a.target,
                        d = p.nodeName(c, "input") || p.nodeName(c, "button") ? c.form : b;
                    d && !p._data(d, "_submit_attached") && (p.event.add(d, "submit._submit", function(a) {
                        a._submit_bubble = !0
                    }), p._data(d, "_submit_attached", !0))
                })
            },
            postDispatch: function(a) {
                a._submit_bubble && (delete a._submit_bubble, this.parentNode && !a.isTrigger && p.event.simulate("submit", this.parentNode, a, !0))
            },
            teardown: function() {
                if (p.nodeName(this, "form")) return !1;
                p.event.remove(this, "._submit")
            }
        }), p.support.changeBubbles || (p.event.special.change = {
            setup: function() {
                if (V.test(this.nodeName)) {
                    if (this.type === "checkbox" || this.type === "radio") p.event.add(this, "propertychange._change", function(a) {
                        a.originalEvent.propertyName === "checked" && (this._just_changed = !0)
                    }), p.event.add(this, "click._change", function(a) {
                        this._just_changed && !a.isTrigger && (this._just_changed = !1), p.event.simulate("change", this, a, !0)
                    });
                    return !1
                }
                p.event.add(this, "beforeactivate._change", function(a) {
                    var b = a.target;
                    V.test(b.nodeName) && !p._data(b, "_change_attached") && (p.event.add(b, "change._change", function(a) {
                        this.parentNode && !a.isSimulated && !a.isTrigger && p.event.simulate("change", this.parentNode, a, !0)
                    }), p._data(b, "_change_attached", !0))
                })
            },
            handle: function(a) {
                var b = a.target;
                if (this !== b || a.isSimulated || a.isTrigger || b.type !== "radio" && b.type !== "checkbox") return a.handleObj.handler.apply(this, arguments)
            },
            teardown: function() {
                return p.event.remove(this, "._change"), !V.test(this.nodeName)
            }
        }), p.support.focusinBubbles || p.each({
            focus: "focusin",
            blur: "focusout"
        }, function(a, b) {
            var c = 0,
                d = function(a) {
                    p.event.simulate(b, a.target, p.event.fix(a), !0)
                };
            p.event.special[b] = {
                setup: function() {
                    c++ === 0 && e.addEventListener(a, d, !0)
                },
                teardown: function() {
                    --c === 0 && e.removeEventListener(a, d, !0)
                }
            }
        }), p.fn.extend({
            on: function(a, c, d, e, f) {
                var g, h;
                if (typeof a == "object") {
                    typeof c != "string" && (d = d || c, c = b);
                    for (h in a) this.on(h, c, d, a[h], f);
                    return this
                }
                d == null && e == null ? (e = c, d = c = b) : e == null && (typeof c == "string" ? (e = d, d = b) : (e = d, d = c, c = b));
                if (e === !1) e = ba;
                else if (!e) return this;
                return f === 1 && (g = e, e = function(a) {
                    return p().off(a), g.apply(this, arguments)
                }, e.guid = g.guid || (g.guid = p.guid++)), this.each(function() {
                    p.event.add(this, a, e, d, c)
                })
            },
            one: function(a, b, c, d) {
                return this.on(a, b, c, d, 1)
            },
            off: function(a, c, d) {
                var e, f;
                if (a && a.preventDefault && a.handleObj) return e = a.handleObj, p(a.delegateTarget).off(e.namespace ? e.origType + "." + e.namespace : e.origType, e.selector, e.handler), this;
                if (typeof a == "object") {
                    for (f in a) this.off(f, c, a[f]);
                    return this
                }
                if (c === !1 || typeof c == "function") d = c, c = b;
                return d === !1 && (d = ba), this.each(function() {
                    p.event.remove(this, a, d, c)
                })
            },
            bind: function(a, b, c) {
                return this.on(a, null, b, c)
            },
            unbind: function(a, b) {
                return this.off(a, null, b)
            },
            live: function(a, b, c) {
                return p(this.context).on(a, this.selector, b, c), this
            },
            die: function(a, b) {
                return p(this.context).off(a, this.selector || "**", b), this
            },
            delegate: function(a, b, c, d) {
                return this.on(b, a, c, d)
            },
            undelegate: function(a, b, c) {
                return arguments.length == 1 ? this.off(a, "**") : this.off(b, a || "**", c)
            },
            trigger: function(a, b) {
                return this.each(function() {
                    p.event.trigger(a, b, this)
                })
            },
            triggerHandler: function(a, b) {
                if (this[0]) return p.event.trigger(a, b, this[0], !0)
            },
            toggle: function(a) {
                var b = arguments,
                    c = a.guid || p.guid++,
                    d = 0,
                    e = function(c) {
                        var e = (p._data(this, "lastToggle" + a.guid) || 0) % d;
                        return p._data(this, "lastToggle" + a.guid, e + 1), c.preventDefault(), b[e].apply(this, arguments) || !1
                    };
                e.guid = c;
                while (d < b.length) b[d++].guid = c;
                return this.click(e)
            },
            hover: function(a, b) {
                return this.mouseenter(a).mouseleave(b || a)
            }
        }), p.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "), function(a, b) {
            p.fn[b] = function(a, c) {
                return c == null && (c = a, a = null), arguments.length > 0 ? this.on(b, null, a, c) : this.trigger(b)
            }, Y.test(b) && (p.event.fixHooks[b] = p.event.keyHooks), Z.test(b) && (p.event.fixHooks[b] = p.event.mouseHooks)
        }),
        function(a, b) {
            function $(a, b, c, d) {
                c = c || [], b = b || q;
                var e, f, g, j, k = b.nodeType;
                if (k !== 1 && k !== 9) return [];
                if (!a || typeof a != "string") return c;
                g = h(b);
                if (!g && !d)
                    if (e = L.exec(a))
                        if (j = e[1]) {
                            if (k === 9) {
                                f = b.getElementById(j);
                                if (!f || !f.parentNode) return c;
                                if (f.id === j) return c.push(f), c
                            } else if (b.ownerDocument && (f = b.ownerDocument.getElementById(j)) && i(b, f) && f.id === j) return c.push(f), c
                        } else {
                            if (e[2]) return u.apply(c, t.call(b.getElementsByTagName(a), 0)), c;
                            if ((j = e[3]) && X && b.getElementsByClassName) return u.apply(c, t.call(b.getElementsByClassName(j), 0)), c
                        }
                return bk(a, b, c, d, g)
            }

            function _(a) {
                return function(b) {
                    var c = b.nodeName.toLowerCase();
                    return c === "input" && b.type === a
                }
            }

            function ba(a) {
                return function(b) {
                    var c = b.nodeName.toLowerCase();
                    return (c === "input" || c === "button") && b.type === a
                }
            }

            function bb(a, b, c) {
                if (a === b) return c;
                var d = a.nextSibling;
                while (d) {
                    if (d === b) return -1;
                    d = d.nextSibling
                }
                return 1
            }

            function bc(a, b, c, d) {
                var e, g, h, i, j, k, l, m, n, p, r = !c && b !== q,
                    s = (r ? "<s>" : "") + a.replace(H, "$1<s>"),
                    u = y[o][s];
                if (u) return d ? 0 : t.call(u, 0);
                j = a, k = [], m = 0, n = f.preFilter, p = f.filter;
                while (j) {
                    if (!e || (g = I.exec(j))) g && (j = j.slice(g[0].length), h.selector = l), k.push(h = []), l = "", r && (j = " " + j);
                    e = !1;
                    if (g = J.exec(j)) l += g[0], j = j.slice(g[0].length), e = h.push({
                        part: g.pop().replace(H, " "),
                        string: g[0],
                        captures: g
                    });
                    for (i in p)(g = S[i].exec(j)) && (!n[i] || (g = n[i](g, b, c))) && (l += g[0], j = j.slice(g[0].length), e = h.push({
                        part: i,
                        string: g.shift(),
                        captures: g
                    }));
                    if (!e) break
                }
                return l && (h.selector = l), d ? j.length : j ? $.error(a) : t.call(y(s, k), 0)
            }

            function bd(a, b, e, f) {
                var g = b.dir,
                    h = s++;
                return a || (a = function(a) {
                    return a === e
                }), b.first ? function(b) {
                    while (b = b[g])
                        if (b.nodeType === 1) return a(b) && b
                } : f ? function(b) {
                    while (b = b[g])
                        if (b.nodeType === 1 && a(b)) return b
                } : function(b) {
                    var e, f = h + "." + c,
                        i = f + "." + d;
                    while (b = b[g])
                        if (b.nodeType === 1) {
                            if ((e = b[o]) === i) return b.sizset;
                            if (typeof e == "string" && e.indexOf(f) === 0) {
                                if (b.sizset) return b
                            } else {
                                b[o] = i;
                                if (a(b)) return b.sizset = !0, b;
                                b.sizset = !1
                            }
                        }
                }
            }

            function be(a, b) {
                return a ? function(c) {
                    var d = b(c);
                    return d && a(d === !0 ? c : d)
                } : b
            }

            function bf(a, b, c) {
                var d, e, g = 0;
                for (; d = a[g]; g++) f.relative[d.part] ? e = bd(e, f.relative[d.part], b, c) : e = be(e, f.filter[d.part].apply(null, d.captures.concat(b, c)));
                return e
            }

            function bg(a) {
                return function(b) {
                    var c, d = 0;
                    for (; c = a[d]; d++)
                        if (c(b)) return !0;
                    return !1
                }
            }

            function bh(a, b, c, d) {
                var e = 0,
                    f = b.length;
                for (; e < f; e++) $(a, b[e], c, d)
            }

            function bi(a, b, c, d, e, g) {
                var h, i = f.setFilters[b.toLowerCase()];
                return i || $.error(b), (a || !(h = e)) && bh(a || "*", d, h = [], e), h.length > 0 ? i(h, c, g) : []
            }

            function bj(a, c, d, e) {
                var f, g, h, i, j, k, l, m, n, o, p, q, r, s = 0,
                    t = a.length,
                    v = S.POS,
                    w = new RegExp("^" + v.source + "(?!" + A + ")", "i"),
                    x = function() {
                        var a = 1,
                            c = arguments.length - 2;
                        for (; a < c; a++) arguments[a] === b && (n[a] = b)
                    };
                for (; s < t; s++) {
                    f = a[s], g = "", m = e;
                    for (h = 0, i = f.length; h < i; h++) {
                        j = f[h], k = j.string;
                        if (j.part === "PSEUDO") {
                            v.exec(""), l = 0;
                            while (n = v.exec(k)) {
                                o = !0, p = v.lastIndex = n.index + n[0].length;
                                if (p > l) {
                                    g += k.slice(l, n.index), l = p, q = [c], J.test(g) && (m && (q = m), m = e);
                                    if (r = O.test(g)) g = g.slice(0, -5).replace(J, "$&*"), l++;
                                    n.length > 1 && n[0].replace(w, x), m = bi(g, n[1], n[2], q, m, r)
                                }
                                g = ""
                            }
                        }
                        o || (g += k), o = !1
                    }
                    g ? J.test(g) ? bh(g, m || [c], d, e) : $(g, c, d, e ? e.concat(m) : m) : u.apply(d, m)
                }
                return t === 1 ? d : $.uniqueSort(d)
            }

            function bk(a, b, e, g, h) {
                a = a.replace(H, "$1");
                var i, k, l, m, n, o, p, q, r, s, v = bc(a, b, h),
                    w = b.nodeType;
                if (S.POS.test(a)) return bj(v, b, e, g);
                if (g) i = t.call(g, 0);
                else if (v.length === 1) {
                    if ((o = t.call(v[0], 0)).length > 2 && (p = o[0]).part === "ID" && w === 9 && !h && f.relative[o[1].part]) {
                        b = f.find.ID(p.captures[0].replace(R, ""), b, h)[0];
                        if (!b) return e;
                        a = a.slice(o.shift().string.length)
                    }
                    r = (v = N.exec(o[0].string)) && !v.index && b.parentNode || b, q = "";
                    for (n = o.length - 1; n >= 0; n--) {
                        p = o[n], s = p.part, q = p.string + q;
                        if (f.relative[s]) break;
                        if (f.order.test(s)) {
                            i = f.find[s](p.captures[0].replace(R, ""), r, h);
                            if (i == null) continue;
                            a = a.slice(0, a.length - q.length) + q.replace(S[s], ""), a || u.apply(e, t.call(i, 0));
                            break
                        }
                    }
                }
                if (a) {
                    k = j(a, b, h), c = k.dirruns++, i == null && (i = f.find.TAG("*", N.test(a) && b.parentNode || b));
                    for (n = 0; m = i[n]; n++) d = k.runs++, k(m) && e.push(m)
                }
                return e
            }
            var c, d, e, f, g, h, i, j, k, l, m = !0,
                n = "undefined",
                o = ("sizcache" + Math.random()).replace(".", ""),
                q = a.document,
                r = q.documentElement,
                s = 0,
                t = [].slice,
                u = [].push,
                v = function(a, b) {
                    return a[o] = b || !0, a
                },
                w = function() {
                    var a = {},
                        b = [];
                    return v(function(c, d) {
                        return b.push(c) > f.cacheLength && delete a[b.shift()], a[c] = d
                    }, a)
                },
                x = w(),
                y = w(),
                z = w(),
                A = "[\\x20\\t\\r\\n\\f]",
                B = "(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",
                C = B.replace("w", "w#"),
                D = "([*^$|!~]?=)",
                E = "\\[" + A + "*(" + B + ")" + A + "*(?:" + D + A + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + C + ")|)|)" + A + "*\\]",
                F = ":(" + B + ")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:" + E + ")|[^:]|\\\\.)*|.*))\\)|)",
                G = ":(nth|eq|gt|lt|first|last|even|odd)(?:\\(((?:-\\d)?\\d*)\\)|)(?=[^-]|$)",
                H = new RegExp("^" + A + "+|((?:^|[^\\\\])(?:\\\\.)*)" + A + "+$", "g"),
                I = new RegExp("^" + A + "*," + A + "*"),
                J = new RegExp("^" + A + "*([\\x20\\t\\r\\n\\f>+~])" + A + "*"),
                K = new RegExp(F),
                L = /^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,
                M = /^:not/,
                N = /[\x20\t\r\n\f]*[+~]/,
                O = /:not\($/,
                P = /h\d/i,
                Q = /input|select|textarea|button/i,
                R = /\\(?!\\)/g,
                S = {
                    ID: new RegExp("^#(" + B + ")"),
                    CLASS: new RegExp("^\\.(" + B + ")"),
                    NAME: new RegExp("^\\[name=['\"]?(" + B + ")['\"]?\\]"),
                    TAG: new RegExp("^(" + B.replace("w", "w*") + ")"),
                    ATTR: new RegExp("^" + E),
                    PSEUDO: new RegExp("^" + F),
                    CHILD: new RegExp("^:(only|nth|last|first)-child(?:\\(" + A + "*(even|odd|(([+-]|)(\\d*)n|)" + A + "*(?:([+-]|)" + A + "*(\\d+)|))" + A + "*\\)|)", "i"),
                    POS: new RegExp(G, "ig"),
                    needsContext: new RegExp("^" + A + "*[>+~]|" + G, "i")
                },
                T = function(a) {
                    var b = q.createElement("div");
                    try {
                        return a(b)
                    } catch (c) {
                        return !1
                    } finally {
                        b = null
                    }
                },
                U = T(function(a) {
                    return a.appendChild(q.createComment("")), !a.getElementsByTagName("*").length
                }),
                V = T(function(a) {
                    return a.innerHTML = "<a href='#'></a>", a.firstChild && typeof a.firstChild.getAttribute !== n && a.firstChild.getAttribute("href") === "#"
                }),
                W = T(function(a) {
                    a.innerHTML = "<select></select>";
                    var b = typeof a.lastChild.getAttribute("multiple");
                    return b !== "boolean" && b !== "string"
                }),
                X = T(function(a) {
                    return a.innerHTML = "<div class='hidden e'></div><div class='hidden'></div>", !a.getElementsByClassName || !a.getElementsByClassName("e").length ? !1 : (a.lastChild.className = "e", a.getElementsByClassName("e").length === 2)
                }),
                Y = T(function(a) {
                    a.id = o + 0, a.innerHTML = "<a name='" + o + "'></a><div name='" + o + "'></div>", r.insertBefore(a, r.firstChild);
                    var b = q.getElementsByName && q.getElementsByName(o).length === 2 + q.getElementsByName(o + 0).length;
                    return e = !q.getElementById(o), r.removeChild(a), b
                });
            try {
                t.call(r.childNodes, 0)[0].nodeType
            } catch (Z) {
                t = function(a) {
                    var b, c = [];
                    for (; b = this[a]; a++) c.push(b);
                    return c
                }
            }
            $.matches = function(a, b) {
                return $(a, null, null, b)
            }, $.matchesSelector = function(a, b) {
                return $(b, null, null, [a]).length > 0
            }, g = $.getText = function(a) {
                var b, c = "",
                    d = 0,
                    e = a.nodeType;
                if (e) {
                    if (e === 1 || e === 9 || e === 11) {
                        if (typeof a.textContent == "string") return a.textContent;
                        for (a = a.firstChild; a; a = a.nextSibling) c += g(a)
                    } else if (e === 3 || e === 4) return a.nodeValue
                } else
                    for (; b = a[d]; d++) c += g(b);
                return c
            }, h = $.isXML = function(a) {
                var b = a && (a.ownerDocument || a).documentElement;
                return b ? b.nodeName !== "HTML" : !1
            }, i = $.contains = r.contains ? function(a, b) {
                var c = a.nodeType === 9 ? a.documentElement : a,
                    d = b && b.parentNode;
                return a === d || !!(d && d.nodeType === 1 && c.contains && c.contains(d))
            } : r.compareDocumentPosition ? function(a, b) {
                return b && !!(a.compareDocumentPosition(b) & 16)
            } : function(a, b) {
                while (b = b.parentNode)
                    if (b === a) return !0;
                return !1
            }, $.attr = function(a, b) {
                var c, d = h(a);
                return d || (b = b.toLowerCase()), f.attrHandle[b] ? f.attrHandle[b](a) : W || d ? a.getAttribute(b) : (c = a.getAttributeNode(b), c ? typeof a[b] == "boolean" ? a[b] ? b : null : c.specified ? c.value : null : null)
            }, f = $.selectors = {
                cacheLength: 50,
                createPseudo: v,
                match: S,
                order: new RegExp("ID|TAG" + (Y ? "|NAME" : "") + (X ? "|CLASS" : "")),
                attrHandle: V ? {} : {
                    href: function(a) {
                        return a.getAttribute("href", 2)
                    },
                    type: function(a) {
                        return a.getAttribute("type")
                    }
                },
                find: {
                    ID: e ? function(a, b, c) {
                        if (typeof b.getElementById !== n && !c) {
                            var d = b.getElementById(a);
                            return d && d.parentNode ? [d] : []
                        }
                    } : function(a, c, d) {
                        if (typeof c.getElementById !== n && !d) {
                            var e = c.getElementById(a);
                            return e ? e.id === a || typeof e.getAttributeNode !== n && e.getAttributeNode("id").value === a ? [e] : b : []
                        }
                    },
                    TAG: U ? function(a, b) {
                        if (typeof b.getElementsByTagName !== n) return b.getElementsByTagName(a)
                    } : function(a, b) {
                        var c = b.getElementsByTagName(a);
                        if (a === "*") {
                            var d, e = [],
                                f = 0;
                            for (; d = c[f]; f++) d.nodeType === 1 && e.push(d);
                            return e
                        }
                        return c
                    },
                    NAME: function(a, b) {
                        if (typeof b.getElementsByName !== n) return b.getElementsByName(name)
                    },
                    CLASS: function(a, b, c) {
                        if (typeof b.getElementsByClassName !== n && !c) return b.getElementsByClassName(a)
                    }
                },
                relative: {
                    ">": {
                        dir: "parentNode",
                        first: !0
                    },
                    " ": {
                        dir: "parentNode"
                    },
                    "+": {
                        dir: "previousSibling",
                        first: !0
                    },
                    "~": {
                        dir: "previousSibling"
                    }
                },
                preFilter: {
                    ATTR: function(a) {
                        return a[1] = a[1].replace(R, ""), a[3] = (a[4] || a[5] || "").replace(R, ""), a[2] === "~=" && (a[3] = " " + a[3] + " "), a.slice(0, 4)
                    },
                    CHILD: function(a) {
                        return a[1] = a[1].toLowerCase(), a[1] === "nth" ? (a[2] || $.error(a[0]), a[3] = +(a[3] ? a[4] + (a[5] || 1) : 2 * (a[2] === "even" || a[2] === "odd")), a[4] = +(a[6] + a[7] || a[2] === "odd")) : a[2] && $.error(a[0]), a
                    },
                    PSEUDO: function(a, b, c) {
                        var d, e;
                        if (S.CHILD.test(a[0])) return null;
                        if (a[3]) a[2] = a[3];
                        else if (d = a[4]) K.test(d) && (e = bc(d, b, c, !0)) && (e = d.indexOf(")", d.length - e) - d.length) && (d = d.slice(0, e), a[0] = a[0].slice(0, e)), a[2] = d;
                        return a.slice(0, 3)
                    }
                },
                filter: {
                    ID: e ? function(a) {
                        return a = a.replace(R, ""),
                            function(b) {
                                return b.getAttribute("id") === a
                            }
                    } : function(a) {
                        return a = a.replace(R, ""),
                            function(b) {
                                var c = typeof b.getAttributeNode !== n && b.getAttributeNode("id");
                                return c && c.value === a
                            }
                    },
                    TAG: function(a) {
                        return a === "*" ? function() {
                            return !0
                        } : (a = a.replace(R, "").toLowerCase(), function(b) {
                            return b.nodeName && b.nodeName.toLowerCase() === a
                        })
                    },
                    CLASS: function(a) {
                        var b = x[o][a];
                        return b || (b = x(a, new RegExp("(^|" + A + ")" + a + "(" + A + "|$)"))),
                            function(a) {
                                return b.test(a.className || typeof a.getAttribute !== n && a.getAttribute("class") || "")
                            }
                    },
                    ATTR: function(a, b, c) {
                        return b ? function(d) {
                            var e = $.attr(d, a),
                                f = e + "";
                            if (e == null) return b === "!=";
                            switch (b) {
                                case "=":
                                    return f === c;
                                case "!=":
                                    return f !== c;
                                case "^=":
                                    return c && f.indexOf(c) === 0;
                                case "*=":
                                    return c && f.indexOf(c) > -1;
                                case "$=":
                                    return c && f.substr(f.length - c.length) === c;
                                case "~=":
                                    return (" " + f + " ").indexOf(c) > -1;
                                case "|=":
                                    return f === c || f.substr(0, c.length + 1) === c + "-"
                            }
                        } : function(b) {
                            return $.attr(b, a) != null
                        }
                    },
                    CHILD: function(a, b, c, d) {
                        if (a === "nth") {
                            var e = s++;
                            return function(a) {
                                var b, f, g = 0,
                                    h = a;
                                if (c === 1 && d === 0) return !0;
                                b = a.parentNode;
                                if (b && (b[o] !== e || !a.sizset)) {
                                    for (h = b.firstChild; h; h = h.nextSibling)
                                        if (h.nodeType === 1) {
                                            h.sizset = ++g;
                                            if (h === a) break
                                        }
                                    b[o] = e
                                }
                                return f = a.sizset - d, c === 0 ? f === 0 : f % c === 0 && f / c >= 0
                            }
                        }
                        return function(b) {
                            var c = b;
                            switch (a) {
                                case "only":
                                case "first":
                                    while (c = c.previousSibling)
                                        if (c.nodeType === 1) return !1;
                                    if (a === "first") return !0;
                                    c = b;
                                case "last":
                                    while (c = c.nextSibling)
                                        if (c.nodeType === 1) return !1;
                                    return !0
                            }
                        }
                    },
                    PSEUDO: function(a, b, c, d) {
                        var e, g = f.pseudos[a] || f.pseudos[a.toLowerCase()];
                        return g || $.error("unsupported pseudo: " + a), g[o] ? g(b, c, d) : g.length > 1 ? (e = [a, a, "", b], function(a) {
                            return g(a, 0, e)
                        }) : g
                    }
                },
                pseudos: {
                    not: v(function(a, b, c) {
                        var d = j(a.replace(H, "$1"), b, c);
                        return function(a) {
                            return !d(a)
                        }
                    }),
                    enabled: function(a) {
                        return a.disabled === !1
                    },
                    disabled: function(a) {
                        return a.disabled === !0
                    },
                    checked: function(a) {
                        var b = a.nodeName.toLowerCase();
                        return b === "input" && !!a.checked || b === "option" && !!a.selected
                    },
                    selected: function(a) {
                        return a.parentNode && a.parentNode.selectedIndex, a.selected === !0
                    },
                    parent: function(a) {
                        return !f.pseudos.empty(a)
                    },
                    empty: function(a) {
                        var b;
                        a = a.firstChild;
                        while (a) {
                            if (a.nodeName > "@" || (b = a.nodeType) === 3 || b === 4) return !1;
                            a = a.nextSibling
                        }
                        return !0
                    },
                    contains: v(function(a) {
                        return function(b) {
                            return (b.textContent || b.innerText || g(b)).indexOf(a) > -1
                        }
                    }),
                    has: v(function(a) {
                        return function(b) {
                            return $(a, b).length > 0
                        }
                    }),
                    header: function(a) {
                        return P.test(a.nodeName)
                    },
                    text: function(a) {
                        var b, c;
                        return a.nodeName.toLowerCase() === "input" && (b = a.type) === "text" && ((c = a.getAttribute("type")) == null || c.toLowerCase() === b)
                    },
                    radio: _("radio"),
                    checkbox: _("checkbox"),
                    file: _("file"),
                    password: _("password"),
                    image: _("image"),
                    submit: ba("submit"),
                    reset: ba("reset"),
                    button: function(a) {
                        var b = a.nodeName.toLowerCase();
                        return b === "input" && a.type === "button" || b === "button"
                    },
                    input: function(a) {
                        return Q.test(a.nodeName)
                    },
                    focus: function(a) {
                        var b = a.ownerDocument;
                        return a === b.activeElement && (!b.hasFocus || b.hasFocus()) && (!!a.type || !!a.href)
                    },
                    active: function(a) {
                        return a === a.ownerDocument.activeElement
                    }
                },
                setFilters: {
                    first: function(a, b, c) {
                        return c ? a.slice(1) : [a[0]]
                    },
                    last: function(a, b, c) {
                        var d = a.pop();
                        return c ? a : [d]
                    },
                    even: function(a, b, c) {
                        var d = [],
                            e = c ? 1 : 0,
                            f = a.length;
                        for (; e < f; e = e + 2) d.push(a[e]);
                        return d
                    },
                    odd: function(a, b, c) {
                        var d = [],
                            e = c ? 0 : 1,
                            f = a.length;
                        for (; e < f; e = e + 2) d.push(a[e]);
                        return d
                    },
                    lt: function(a, b, c) {
                        return c ? a.slice(+b) : a.slice(0, +b)
                    },
                    gt: function(a, b, c) {
                        return c ? a.slice(0, +b + 1) : a.slice(+b + 1)
                    },
                    eq: function(a, b, c) {
                        var d = a.splice(+b, 1);
                        return c ? a : d
                    }
                }
            }, k = r.compareDocumentPosition ? function(a, b) {
                return a === b ? (l = !0, 0) : (!a.compareDocumentPosition || !b.compareDocumentPosition ? a.compareDocumentPosition : a.compareDocumentPosition(b) & 4) ? -1 : 1
            } : function(a, b) {
                if (a === b) return l = !0, 0;
                if (a.sourceIndex && b.sourceIndex) return a.sourceIndex - b.sourceIndex;
                var c, d, e = [],
                    f = [],
                    g = a.parentNode,
                    h = b.parentNode,
                    i = g;
                if (g === h) return bb(a, b);
                if (!g) return -1;
                if (!h) return 1;
                while (i) e.unshift(i), i = i.parentNode;
                i = h;
                while (i) f.unshift(i), i = i.parentNode;
                c = e.length, d = f.length;
                for (var j = 0; j < c && j < d; j++)
                    if (e[j] !== f[j]) return bb(e[j], f[j]);
                return j === c ? bb(a, f[j], -1) : bb(e[j], b, 1)
            }, [0, 0].sort(k), m = !l, $.uniqueSort = function(a) {
                var b, c = 1;
                l = m, a.sort(k);
                if (l)
                    for (; b = a[c]; c++) b === a[c - 1] && a.splice(c--, 1);
                return a
            }, $.error = function(a) {
                throw new Error("Syntax error, unrecognized expression: " + a)
            }, j = $.compile = function(a, b, c) {
                var d, e, f, g = z[o][a];
                if (g && g.context === b) return g;
                d = bc(a, b, c);
                for (e = 0, f = d.length; e < f; e++) d[e] = bf(d[e], b, c);
                return g = z(a, bg(d)), g.context = b, g.runs = g.dirruns = 0, g
            }, q.querySelectorAll && function() {
                var a, b = bk,
                    c = /'|\\/g,
                    d = /\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,
                    e = [],
                    f = [":active"],
                    g = r.matchesSelector || r.mozMatchesSelector || r.webkitMatchesSelector || r.oMatchesSelector || r.msMatchesSelector;
                T(function(a) {
                    a.innerHTML = "<select><option selected=''></option></select>", a.querySelectorAll("[selected]").length || e.push("\\[" + A + "*(?:checked|disabled|ismap|multiple|readonly|selected|value)"), a.querySelectorAll(":checked").length || e.push(":checked")
                }), T(function(a) {
                    a.innerHTML = "<p test=''></p>", a.querySelectorAll("[test^='']").length && e.push("[*^$]=" + A + "*(?:\"\"|'')"), a.innerHTML = "<input type='hidden'/>", a.querySelectorAll(":enabled").length || e.push(":enabled", ":disabled")
                }), e = e.length && new RegExp(e.join("|")), bk = function(a, d, f, g, h) {
                    if (!g && !h && (!e || !e.test(a)))
                        if (d.nodeType === 9) try {
                            return u.apply(f, t.call(d.querySelectorAll(a), 0)), f
                        } catch (i) {} else if (d.nodeType === 1 && d.nodeName.toLowerCase() !== "object") {
                            var j, k, l, m = d.getAttribute("id"),
                                n = m || o,
                                p = N.test(a) && d.parentNode || d;
                            m ? n = n.replace(c, "\\$&") : d.setAttribute("id", n), j = bc(a, d, h), n = "[id='" + n + "']";
                            for (k = 0, l = j.length; k < l; k++) j[k] = n + j[k].selector;
                            try {
                                return u.apply(f, t.call(p.querySelectorAll(j.join(",")), 0)), f
                            } catch (i) {} finally {
                                m || d.removeAttribute("id")
                            }
                        }
                    return b(a, d, f, g, h)
                }, g && (T(function(b) {
                    a = g.call(b, "div");
                    try {
                        g.call(b, "[test!='']:sizzle"), f.push(S.PSEUDO.source, S.POS.source, "!=")
                    } catch (c) {}
                }), f = new RegExp(f.join("|")), $.matchesSelector = function(b, c) {
                    c = c.replace(d, "='$1']");
                    if (!h(b) && !f.test(c) && (!e || !e.test(c))) try {
                        var i = g.call(b, c);
                        if (i || a || b.document && b.document.nodeType !== 11) return i
                    } catch (j) {}
                    return $(c, null, null, [b]).length > 0
                })
            }(), f.setFilters.nth = f.setFilters.eq, f.filters = f.pseudos, $.attr = p.attr, p.find = $, p.expr = $.selectors, p.expr[":"] = p.expr.pseudos, p.unique = $.uniqueSort, p.text = $.getText, p.isXMLDoc = $.isXML, p.contains = $.contains
        }(a);
    var bc = /Until$/,
        bd = /^(?:parents|prev(?:Until|All))/,
        be = /^.[^:#\[\.,]*$/,
        bf = p.expr.match.needsContext,
        bg = {
            children: !0,
            contents: !0,
            next: !0,
            prev: !0
        };
    p.fn.extend({
        find: function(a) {
            var b, c, d, e, f, g, h = this;
            if (typeof a != "string") return p(a).filter(function() {
                for (b = 0, c = h.length; b < c; b++)
                    if (p.contains(h[b], this)) return !0
            });
            g = this.pushStack("", "find", a);
            for (b = 0, c = this.length; b < c; b++) {
                d = g.length, p.find(a, this[b], g);
                if (b > 0)
                    for (e = d; e < g.length; e++)
                        for (f = 0; f < d; f++)
                            if (g[f] === g[e]) {
                                g.splice(e--, 1);
                                break
                            }
            }
            return g
        },
        has: function(a) {
            var b, c = p(a, this),
                d = c.length;
            return this.filter(function() {
                for (b = 0; b < d; b++)
                    if (p.contains(this, c[b])) return !0
            })
        },
        not: function(a) {
            return this.pushStack(bj(this, a, !1), "not", a)
        },
        filter: function(a) {
            return this.pushStack(bj(this, a, !0), "filter", a)
        },
        is: function(a) {
            return !!a && (typeof a == "string" ? bf.test(a) ? p(a, this.context).index(this[0]) >= 0 : p.filter(a, this).length > 0 : this.filter(a).length > 0)
        },
        closest: function(a, b) {
            var c, d = 0,
                e = this.length,
                f = [],
                g = bf.test(a) || typeof a != "string" ? p(a, b || this.context) : 0;
            for (; d < e; d++) {
                c = this[d];
                while (c && c.ownerDocument && c !== b && c.nodeType !== 11) {
                    if (g ? g.index(c) > -1 : p.find.matchesSelector(c, a)) {
                        f.push(c);
                        break
                    }
                    c = c.parentNode
                }
            }
            return f = f.length > 1 ? p.unique(f) : f, this.pushStack(f, "closest", a)
        },
        index: function(a) {
            return a ? typeof a == "string" ? p.inArray(this[0], p(a)) : p.inArray(a.jquery ? a[0] : a, this) : this[0] && this[0].parentNode ? this.prevAll().length : -1
        },
        add: function(a, b) {
            var c = typeof a == "string" ? p(a, b) : p.makeArray(a && a.nodeType ? [a] : a),
                d = p.merge(this.get(), c);
            return this.pushStack(bh(c[0]) || bh(d[0]) ? d : p.unique(d))
        },
        addBack: function(a) {
            return this.add(a == null ? this.prevObject : this.prevObject.filter(a))
        }
    }), p.fn.andSelf = p.fn.addBack, p.each({
        parent: function(a) {
            var b = a.parentNode;
            return b && b.nodeType !== 11 ? b : null
        },
        parents: function(a) {
            return p.dir(a, "parentNode")
        },
        parentsUntil: function(a, b, c) {
            return p.dir(a, "parentNode", c)
        },
        next: function(a) {
            return bi(a, "nextSibling")
        },
        prev: function(a) {
            return bi(a, "previousSibling")
        },
        nextAll: function(a) {
            return p.dir(a, "nextSibling")
        },
        prevAll: function(a) {
            return p.dir(a, "previousSibling")
        },
        nextUntil: function(a, b, c) {
            return p.dir(a, "nextSibling", c)
        },
        prevUntil: function(a, b, c) {
            return p.dir(a, "previousSibling", c)
        },
        siblings: function(a) {
            return p.sibling((a.parentNode || {}).firstChild, a)
        },
        children: function(a) {
            return p.sibling(a.firstChild)
        },
        contents: function(a) {
            return p.nodeName(a, "iframe") ? a.contentDocument || a.contentWindow.document : p.merge([], a.childNodes)
        }
    }, function(a, b) {
        p.fn[a] = function(c, d) {
            var e = p.map(this, b, c);
            return bc.test(a) || (d = c), d && typeof d == "string" && (e = p.filter(d, e)), e = this.length > 1 && !bg[a] ? p.unique(e) : e, this.length > 1 && bd.test(a) && (e = e.reverse()), this.pushStack(e, a, k.call(arguments).join(","))
        }
    }), p.extend({
        filter: function(a, b, c) {
            return c && (a = ":not(" + a + ")"), b.length === 1 ? p.find.matchesSelector(b[0], a) ? [b[0]] : [] : p.find.matches(a, b)
        },
        dir: function(a, c, d) {
            var e = [],
                f = a[c];
            while (f && f.nodeType !== 9 && (d === b || f.nodeType !== 1 || !p(f).is(d))) f.nodeType === 1 && e.push(f), f = f[c];
            return e
        },
        sibling: function(a, b) {
            var c = [];
            for (; a; a = a.nextSibling) a.nodeType === 1 && a !== b && c.push(a);
            return c
        }
    });
    var bl = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",
        bm = / jQuery\d+="(?:null|\d+)"/g,
        bn = /^\s+/,
        bo = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,
        bp = /<([\w:]+)/,
        bq = /<tbody/i,
        br = /<|&#?\w+;/,
        bs = /<(?:script|style|link)/i,
        bt = /<(?:script|object|embed|option|style)/i,
        bu = new RegExp("<(?:" + bl + ")[\\s/>]", "i"),
        bv = /^(?:checkbox|radio)$/,
        bw = /checked\s*(?:[^=]|=\s*.checked.)/i,
        bx = /\/(java|ecma)script/i,
        by = /^\s*<!(?:\[CDATA\[|\-\-)|[\]\-]{2}>\s*$/g,
        bz = {
            option: [1, "<select multiple='multiple'>", "</select>"],
            legend: [1, "<fieldset>", "</fieldset>"],
            thead: [1, "<table>", "</table>"],
            tr: [2, "<table><tbody>", "</tbody></table>"],
            td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
            col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"],
            area: [1, "<map>", "</map>"],
            _default: [0, "", ""]
        },
        bA = bk(e),
        bB = bA.appendChild(e.createElement("div"));
    bz.optgroup = bz.option, bz.tbody = bz.tfoot = bz.colgroup = bz.caption = bz.thead, bz.th = bz.td, p.support.htmlSerialize || (bz._default = [1, "X<div>", "</div>"]), p.fn.extend({
            text: function(a) {
                return p.access(this, function(a) {
                    return a === b ? p.text(this) : this.empty().append((this[0] && this[0].ownerDocument || e).createTextNode(a))
                }, null, a, arguments.length)
            },
            wrapAll: function(a) {
                if (p.isFunction(a)) return this.each(function(b) {
                    p(this).wrapAll(a.call(this, b))
                });
                if (this[0]) {
                    var b = p(a, this[0].ownerDocument).eq(0).clone(!0);
                    this[0].parentNode && b.insertBefore(this[0]), b.map(function() {
                        var a = this;
                        while (a.firstChild && a.firstChild.nodeType === 1) a = a.firstChild;
                        return a
                    }).append(this)
                }
                return this
            },
            wrapInner: function(a) {
                return p.isFunction(a) ? this.each(function(b) {
                    p(this).wrapInner(a.call(this, b))
                }) : this.each(function() {
                    var b = p(this),
                        c = b.contents();
                    c.length ? c.wrapAll(a) : b.append(a)
                })
            },
            wrap: function(a) {
                var b = p.isFunction(a);
                return this.each(function(c) {
                    p(this).wrapAll(b ? a.call(this, c) : a)
                })
            },
            unwrap: function() {
                return this.parent().each(function() {
                    p.nodeName(this, "body") || p(this).replaceWith(this.childNodes)
                }).end()
            },
            append: function() {
                return this.domManip(arguments, !0, function(a) {
                    (this.nodeType === 1 || this.nodeType === 11) && this.appendChild(a)
                })
            },
            prepend: function() {
                return this.domManip(arguments, !0, function(a) {
                    (this.nodeType === 1 || this.nodeType === 11) && this.insertBefore(a, this.firstChild)
                })
            },
            before: function() {
                if (!bh(this[0])) return this.domManip(arguments, !1, function(a) {
                    this.parentNode.insertBefore(a, this)
                });
                if (arguments.length) {
                    var a = p.clean(arguments);
                    return this.pushStack(p.merge(a, this), "before", this.selector)
                }
            },
            after: function() {
                if (!bh(this[0])) return this.domManip(arguments, !1, function(a) {
                    this.parentNode.insertBefore(a, this.nextSibling)
                });
                if (arguments.length) {
                    var a = p.clean(arguments);
                    return this.pushStack(p.merge(this, a), "after", this.selector)
                }
            },
            remove: function(a, b) {
                var c, d = 0;
                for (;
                    (c = this[d]) != null; d++)
                    if (!a || p.filter(a, [c]).length) !b && c.nodeType === 1 && (p.cleanData(c.getElementsByTagName("*")), p.cleanData([c])), c.parentNode && c.parentNode.removeChild(c);
                return this
            },
            empty: function() {
                var a, b = 0;
                for (;
                    (a = this[b]) != null; b++) {
                    a.nodeType === 1 && p.cleanData(a.getElementsByTagName("*"));
                    while (a.firstChild) a.removeChild(a.firstChild)
                }
                return this
            },
            clone: function(a, b) {
                return a = a == null ? !1 : a, b = b == null ? a : b, this.map(function() {
                    return p.clone(this, a, b)
                })
            },
            html: function(a) {
                return p.access(this, function(a) {
                    var c = this[0] || {},
                        d = 0,
                        e = this.length;
                    if (a === b) return c.nodeType === 1 ? c.innerHTML.replace(bm, "") : b;
                    if (typeof a == "string" && !bs.test(a) && (p.support.htmlSerialize || !bu.test(a)) && (p.support.leadingWhitespace || !bn.test(a)) && !bz[(bp.exec(a) || ["", ""])[1].toLowerCase()]) {
                        a = a.replace(bo, "<$1></$2>");
                        try {
                            for (; d < e; d++) c = this[d] || {}, c.nodeType === 1 && (p.cleanData(c.getElementsByTagName("*")), c.innerHTML = a);
                            c = 0
                        } catch (f) {}
                    }
                    c && this.empty().append(a)
                }, null, a, arguments.length)
            },
            replaceWith: function(a) {
                return bh(this[0]) ? this.length ? this.pushStack(p(p.isFunction(a) ? a() : a), "replaceWith", a) : this : p.isFunction(a) ? this.each(function(b) {
                    var c = p(this),
                        d = c.html();
                    c.replaceWith(a.call(this, b, d))
                }) : (typeof a != "string" && (a = p(a).detach()), this.each(function() {
                    var b = this.nextSibling,
                        c = this.parentNode;
                    p(this).remove(), b ? p(b).before(a) : p(c).append(a)
                }))
            },
            detach: function(a) {
                return this.remove(a, !0)
            },
            domManip: function(a, c, d) {
                a = [].concat.apply([], a);
                var e, f, g, h, i = 0,
                    j = a[0],
                    k = [],
                    l = this.length;
                if (!p.support.checkClone && l > 1 && typeof j == "string" && bw.test(j)) return this.each(function() {
                    p(this).domManip(a, c, d)
                });
                if (p.isFunction(j)) return this.each(function(e) {
                    var f = p(this);
                    a[0] = j.call(this, e, c ? f.html() : b), f.domManip(a, c, d)
                });
                if (this[0]) {
                    e = p.buildFragment(a, this, k), g = e.fragment, f = g.firstChild, g.childNodes.length === 1 && (g = f);
                    if (f) {
                        c = c && p.nodeName(f, "tr");
                        for (h = e.cacheable || l - 1; i < l; i++) d.call(c && p.nodeName(this[i], "table") ? bC(this[i], "tbody") : this[i], i === h ? g : p.clone(g, !0, !0))
                    }
                    g = f = null, k.length && p.each(k, function(a, b) {
                        b.src ? p.ajax ? p.ajax({
                            url: b.src,
                            type: "GET",
                            dataType: "script",
                            async: !1,
                            global: !1,
                            "throws": !0
                        }) : p.error("no ajax") : p.globalEval((b.text || b.textContent || b.innerHTML || "").replace(by, "")), b.parentNode && b.parentNode.removeChild(b)
                    })
                }
                return this
            }
        }), p.buildFragment = function(a, c, d) {
            var f, g, h, i = a[0];
            return c = c || e, c = !c.nodeType && c[0] || c, c = c.ownerDocument || c, a.length === 1 && typeof i == "string" && i.length < 512 && c === e && i.charAt(0) === "<" && !bt.test(i) && (p.support.checkClone || !bw.test(i)) && (p.support.html5Clone || !bu.test(i)) && (g = !0, f = p.fragments[i], h = f !== b), f || (f = c.createDocumentFragment(), p.clean(a, c, f, d), g && (p.fragments[i] = h && f)), {
                fragment: f,
                cacheable: g
            }
        }, p.fragments = {}, p.each({
            appendTo: "append",
            prependTo: "prepend",
            insertBefore: "before",
            insertAfter: "after",
            replaceAll: "replaceWith"
        }, function(a, b) {
            p.fn[a] = function(c) {
                var d, e = 0,
                    f = [],
                    g = p(c),
                    h = g.length,
                    i = this.length === 1 && this[0].parentNode;
                if ((i == null || i && i.nodeType === 11 && i.childNodes.length === 1) && h === 1) return g[b](this[0]), this;
                for (; e < h; e++) d = (e > 0 ? this.clone(!0) : this).get(), p(g[e])[b](d), f = f.concat(d);
                return this.pushStack(f, a, g.selector)
            }
        }), p.extend({
            clone: function(a, b, c) {
                var d, e, f, g;
                p.support.html5Clone || p.isXMLDoc(a) || !bu.test("<" + a.nodeName + ">") ? g = a.cloneNode(!0) : (bB.innerHTML = a.outerHTML, bB.removeChild(g = bB.firstChild));
                if ((!p.support.noCloneEvent || !p.support.noCloneChecked) && (a.nodeType === 1 || a.nodeType === 11) && !p.isXMLDoc(a)) {
                    bE(a, g), d = bF(a), e = bF(g);
                    for (f = 0; d[f]; ++f) e[f] && bE(d[f], e[f])
                }
                if (b) {
                    bD(a, g);
                    if (c) {
                        d = bF(a), e = bF(g);
                        for (f = 0; d[f]; ++f) bD(d[f], e[f])
                    }
                }
                return d = e = null, g
            },
            clean: function(a, b, c, d) {
                var f, g, h, i, j, k, l, m, n, o, q, r, s = b === e && bA,
                    t = [];
                if (!b || typeof b.createDocumentFragment == "undefined") b = e;
                for (f = 0;
                    (h = a[f]) != null; f++) {
                    typeof h == "number" && (h += "");
                    if (!h) continue;
                    if (typeof h == "string")
                        if (!br.test(h)) h = b.createTextNode(h);
                        else {
                            s = s || bk(b), l = b.createElement("div"), s.appendChild(l), h = h.replace(bo, "<$1></$2>"), i = (bp.exec(h) || ["", ""])[1].toLowerCase(), j = bz[i] || bz._default, k = j[0], l.innerHTML = j[1] + h + j[2];
                            while (k--) l = l.lastChild;
                            if (!p.support.tbody) {
                                m = bq.test(h), n = i === "table" && !m ? l.firstChild && l.firstChild.childNodes : j[1] === "<table>" && !m ? l.childNodes : [];
                                for (g = n.length - 1; g >= 0; --g) p.nodeName(n[g], "tbody") && !n[g].childNodes.length && n[g].parentNode.removeChild(n[g])
                            }!p.support.leadingWhitespace && bn.test(h) && l.insertBefore(b.createTextNode(bn.exec(h)[0]), l.firstChild), h = l.childNodes, l.parentNode.removeChild(l)
                        }
                    h.nodeType ? t.push(h) : p.merge(t, h)
                }
                l && (h = l = s = null);
                if (!p.support.appendChecked)
                    for (f = 0;
                        (h = t[f]) != null; f++) p.nodeName(h, "input") ? bG(h) : typeof h.getElementsByTagName != "undefined" && p.grep(h.getElementsByTagName("input"), bG);
                if (c) {
                    q = function(a) {
                        if (!a.type || bx.test(a.type)) return d ? d.push(a.parentNode ? a.parentNode.removeChild(a) : a) : c.appendChild(a)
                    };
                    for (f = 0;
                        (h = t[f]) != null; f++)
                        if (!p.nodeName(h, "script") || !q(h)) c.appendChild(h), typeof h.getElementsByTagName != "undefined" && (r = p.grep(p.merge([], h.getElementsByTagName("script")), q), t.splice.apply(t, [f + 1, 0].concat(r)), f += r.length)
                }
                return t
            },
            cleanData: function(a, b) {
                var c, d, e, f, g = 0,
                    h = p.expando,
                    i = p.cache,
                    j = p.support.deleteExpando,
                    k = p.event.special;
                for (;
                    (e = a[g]) != null; g++)
                    if (b || p.acceptData(e)) {
                        d = e[h], c = d && i[d];
                        if (c) {
                            if (c.events)
                                for (f in c.events) k[f] ? p.event.remove(e, f) : p.removeEvent(e, f, c.handle);
                            i[d] && (delete i[d], j ? delete e[h] : e.removeAttribute ? e.removeAttribute(h) : e[h] = null, p.deletedIds.push(d))
                        }
                    }
            }
        }),
        function() {
            var a, b;
            p.uaMatch = function(a) {
                a = a.toLowerCase();
                var b = /(chrome)[ \/]([\w.]+)/.exec(a) || /(webkit)[ \/]([\w.]+)/.exec(a) || /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a) || /(msie) ([\w.]+)/.exec(a) || a.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a) || [];
                return {
                    browser: b[1] || "",
                    version: b[2] || "0"
                }
            }, a = p.uaMatch(g.userAgent), b = {}, a.browser && (b[a.browser] = !0, b.version = a.version), b.chrome ? b.webkit = !0 : b.webkit && (b.safari = !0), p.browser = b, p.sub = function() {
                function a(b, c) {
                    return new a.fn.init(b, c)
                }
                p.extend(!0, a, this), a.superclass = this, a.fn = a.prototype = this(), a.fn.constructor = a, a.sub = this.sub, a.fn.init = function c(c, d) {
                    return d && d instanceof p && !(d instanceof a) && (d = a(d)), p.fn.init.call(this, c, d, b)
                }, a.fn.init.prototype = a.fn;
                var b = a(e);
                return a
            }
        }();
    var bH, bI, bJ, bK = /alpha\([^)]*\)/i,
        bL = /opacity=([^)]*)/,
        bM = /^(top|right|bottom|left)$/,
        bN = /^(none|table(?!-c[ea]).+)/,
        bO = /^margin/,
        bP = new RegExp("^(" + q + ")(.*)$", "i"),
        bQ = new RegExp("^(" + q + ")(?!px)[a-z%]+$", "i"),
        bR = new RegExp("^([-+])=(" + q + ")", "i"),
        bS = {},
        bT = {
            position: "absolute",
            visibility: "hidden",
            display: "block"
        },
        bU = {
            letterSpacing: 0,
            fontWeight: 400
        },
        bV = ["Top", "Right", "Bottom", "Left"],
        bW = ["Webkit", "O", "Moz", "ms"],
        bX = p.fn.toggle;
    p.fn.extend({
        css: function(a, c) {
            return p.access(this, function(a, c, d) {
                return d !== b ? p.style(a, c, d) : p.css(a, c)
            }, a, c, arguments.length > 1)
        },
        show: function() {
            return b$(this, !0)
        },
        hide: function() {
            return b$(this)
        },
        toggle: function(a, b) {
            var c = typeof a == "boolean";
            return p.isFunction(a) && p.isFunction(b) ? bX.apply(this, arguments) : this.each(function() {
                (c ? a : bZ(this)) ? p(this).show(): p(this).hide()
            })
        }
    }), p.extend({
        cssHooks: {
            opacity: {get: function(a, b) {
                    if (b) {
                        var c = bH(a, "opacity");
                        return c === "" ? "1" : c
                    }
                }
            }
        },
        cssNumber: {
            fillOpacity: !0,
            fontWeight: !0,
            lineHeight: !0,
            opacity: !0,
            orphans: !0,
            widows: !0,
            zIndex: !0,
            zoom: !0
        },
        cssProps: {
            "float": p.support.cssFloat ? "cssFloat" : "styleFloat"
        },
        style: function(a, c, d, e) {
            if (!a || a.nodeType === 3 || a.nodeType === 8 || !a.style) return;
            var f, g, h, i = p.camelCase(c),
                j = a.style;
            c = p.cssProps[i] || (p.cssProps[i] = bY(j, i)), h = p.cssHooks[c] || p.cssHooks[i];
            if (d === b) return h && "get" in h && (f = h.get(a, !1, e)) !== b ? f : j[c];
            g = typeof d, g === "string" && (f = bR.exec(d)) && (d = (f[1] + 1) * f[2] + parseFloat(p.css(a, c)), g = "number");
            if (d == null || g === "number" && isNaN(d)) return;
            g === "number" && !p.cssNumber[i] && (d += "px");
            if (!h || !("set" in h) || (d = h.set(a, d, e)) !== b) try {
                j[c] = d
            } catch (k) {}
        },
        css: function(a, c, d, e) {
            var f, g, h, i = p.camelCase(c);
            return c = p.cssProps[i] || (p.cssProps[i] = bY(a.style, i)), h = p.cssHooks[c] || p.cssHooks[i], h && "get" in h && (f = h.get(a, !0, e)), f === b && (f = bH(a, c)), f === "normal" && c in bU && (f = bU[c]), d || e !== b ? (g = parseFloat(f), d || p.isNumeric(g) ? g || 0 : f) : f
        },
        swap: function(a, b, c) {
            var d, e, f = {};
            for (e in b) f[e] = a.style[e], a.style[e] = b[e];
            d = c.call(a);
            for (e in b) a.style[e] = f[e];
            return d
        }
    }), a.getComputedStyle ? bH = function(b, c) {
        var d, e, f, g, h = a.getComputedStyle(b, null),
            i = b.style;
        return h && (d = h[c], d === "" && !p.contains(b.ownerDocument, b) && (d = p.style(b, c)), bQ.test(d) && bO.test(c) && (e = i.width, f = i.minWidth, g = i.maxWidth, i.minWidth = i.maxWidth = i.width = d, d = h.width, i.width = e, i.minWidth = f, i.maxWidth = g)), d
    } : e.documentElement.currentStyle && (bH = function(a, b) {
        var c, d, e = a.currentStyle && a.currentStyle[b],
            f = a.style;
        return e == null && f && f[b] && (e = f[b]), bQ.test(e) && !bM.test(b) && (c = f.left, d = a.runtimeStyle && a.runtimeStyle.left, d && (a.runtimeStyle.left = a.currentStyle.left), f.left = b === "fontSize" ? "1em" : e, e = f.pixelLeft + "px", f.left = c, d && (a.runtimeStyle.left = d)), e === "" ? "auto" : e
    }), p.each(["height", "width"], function(a, b) {
        p.cssHooks[b] = {get: function(a, c, d) {
                if (c) return a.offsetWidth === 0 && bN.test(bH(a, "display")) ? p.swap(a, bT, function() {
                    return cb(a, b, d)
                }) : cb(a, b, d)
            },
            set: function(a, c, d) {
                return b_(a, c, d ? ca(a, b, d, p.support.boxSizing && p.css(a, "boxSizing") === "border-box") : 0)
            }
        }
    }), p.support.opacity || (p.cssHooks.opacity = {get: function(a, b) {
            return bL.test((b && a.currentStyle ? a.currentStyle.filter : a.style.filter) || "") ? .01 * parseFloat(RegExp.$1) + "" : b ? "1" : ""
        },
        set: function(a, b) {
            var c = a.style,
                d = a.currentStyle,
                e = p.isNumeric(b) ? "alpha(opacity=" + b * 100 + ")" : "",
                f = d && d.filter || c.filter || "";
            c.zoom = 1;
            if (b >= 1 && p.trim(f.replace(bK, "")) === "" && c.removeAttribute) {
                c.removeAttribute("filter");
                if (d && !d.filter) return
            }
            c.filter = bK.test(f) ? f.replace(bK, e) : f + " " + e
        }
    }), p(function() {
        p.support.reliableMarginRight || (p.cssHooks.marginRight = {get: function(a, b) {
                return p.swap(a, {
                    display: "inline-block"
                }, function() {
                    if (b) return bH(a, "marginRight")
                })
            }
        }), !p.support.pixelPosition && p.fn.position && p.each(["top", "left"], function(a, b) {
            p.cssHooks[b] = {get: function(a, c) {
                    if (c) {
                        var d = bH(a, b);
                        return bQ.test(d) ? p(a).position()[b] + "px" : d
                    }
                }
            }
        })
    }), p.expr && p.expr.filters && (p.expr.filters.hidden = function(a) {
        return a.offsetWidth === 0 && a.offsetHeight === 0 || !p.support.reliableHiddenOffsets && (a.style && a.style.display || bH(a, "display")) === "none"
    }, p.expr.filters.visible = function(a) {
        return !p.expr.filters.hidden(a)
    }), p.each({
        margin: "",
        padding: "",
        border: "Width"
    }, function(a, b) {
        p.cssHooks[a + b] = {
            expand: function(c) {
                var d, e = typeof c == "string" ? c.split(" ") : [c],
                    f = {};
                for (d = 0; d < 4; d++) f[a + bV[d] + b] = e[d] || e[d - 2] || e[0];
                return f
            }
        }, bO.test(a) || (p.cssHooks[a + b].set = b_)
    });
    var cd = /%20/g,
        ce = /\[\]$/,
        cf = /\r?\n/g,
        cg = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,
        ch = /^(?:select|textarea)/i;
    p.fn.extend({
        serialize: function() {
            return p.param(this.serializeArray())
        },
        serializeArray: function() {
            return this.map(function() {
                return this.elements ? p.makeArray(this.elements) : this
            }).filter(function() {
                return this.name && !this.disabled && (this.checked || ch.test(this.nodeName) || cg.test(this.type))
            }).map(function(a, b) {
                var c = p(this).val();
                return c == null ? null : p.isArray(c) ? p.map(c, function(a, c) {
                    return {
                        name: b.name,
                        value: a.replace(cf, "\r\n")
                    }
                }) : {
                    name: b.name,
                    value: c.replace(cf, "\r\n")
                }
            }).get()
        }
    }), p.param = function(a, c) {
        var d, e = [],
            f = function(a, b) {
                b = p.isFunction(b) ? b() : b == null ? "" : b, e[e.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b)
            };
        c === b && (c = p.ajaxSettings && p.ajaxSettings.traditional);
        if (p.isArray(a) || a.jquery && !p.isPlainObject(a)) p.each(a, function() {
            f(this.name, this.value)
        });
        else
            for (d in a) ci(d, a[d], c, f);
        return e.join("&").replace(cd, "+")
    };
    var cj, ck, cl = /#.*$/,
        cm = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg,
        cn = /^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,
        co = /^(?:GET|HEAD)$/,
        cp = /^\/\//,
        cq = /\?/,
        cr = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
        cs = /([?&])_=[^&]*/,
        ct = /^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,
        cu = p.fn.load,
        cv = {},
        cw = {},
        cx = ["*/"] + ["*"];
    try {
        cj = f.href
    } catch (cy) {
        cj = e.createElement("a"), cj.href = "", cj = cj.href
    }
    ck = ct.exec(cj.toLowerCase()) || [], p.fn.load = function(a, c, d) {
        if (typeof a != "string" && cu) return cu.apply(this, arguments);
        if (!this.length) return this;
        var e, f, g, h = this,
            i = a.indexOf(" ");
        return i >= 0 && (e = a.slice(i, a.length), a = a.slice(0, i)), p.isFunction(c) ? (d = c, c = b) : c && typeof c == "object" && (f = "POST"), p.ajax({
            url: a,
            type: f,
            dataType: "html",
            data: c,
            complete: function(a, b) {
                d && h.each(d, g || [a.responseText, b, a])
            }
        }).done(function(a) {
            g = arguments, h.html(e ? p("<div>").append(a.replace(cr, "")).find(e) : a)
        }), this
    }, p.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), function(a, b) {
        p.fn[b] = function(a) {
            return this.on(b, a)
        }
    }), p.each(["get", "post"], function(a, c) {
        p[c] = function(a, d, e, f) {
            return p.isFunction(d) && (f = f || e, e = d, d = b), p.ajax({
                type: c,
                url: a,
                data: d,
                success: e,
                dataType: f
            })
        }
    }), p.extend({
        getScript: function(a, c) {
            return p.get(a, b, c, "script")
        },
        getJSON: function(a, b, c) {
            return p.get(a, b, c, "json")
        },
        ajaxSetup: function(a, b) {
            return b ? cB(a, p.ajaxSettings) : (b = a, a = p.ajaxSettings), cB(a, b), a
        },
        ajaxSettings: {
            url: cj,
            isLocal: cn.test(ck[1]),
            global: !0,
            type: "GET",
            contentType: "application/x-www-form-urlencoded; charset=UTF-8",
            processData: !0,
            async: !0,
            accepts: {
                xml: "application/xml, text/xml",
                html: "text/html",
                text: "text/plain",
                json: "application/json, text/javascript",
                "*": cx
            },
            contents: {
                xml: /xml/,
                html: /html/,
                json: /json/
            },
            responseFields: {
                xml: "responseXML",
                text: "responseText"
            },
            converters: {
                "* text": a.String,
                "text html": !0,
                "text json": p.parseJSON,
                "text xml": p.parseXML
            },
            flatOptions: {
                context: !0,
                url: !0
            }
        },
        ajaxPrefilter: cz(cv),
        ajaxTransport: cz(cw),
        ajax: function(a, c) {
            function y(a, c, f, i) {
                var k, s, t, u, w, y = c;
                if (v === 2) return;
                v = 2, h && clearTimeout(h), g = b, e = i || "", x.readyState = a > 0 ? 4 : 0, f && (u = cC(l, x, f));
                if (a >= 200 && a < 300 || a === 304) l.ifModified && (w = x.getResponseHeader("Last-Modified"), w && (p.lastModified[d] = w), w = x.getResponseHeader("Etag"), w && (p.etag[d] = w)), a === 304 ? (y = "notmodified", k = !0) : (k = cD(l, u), y = k.state, s = k.data, t = k.error, k = !t);
                else {
                    t = y;
                    if (!y || a) y = "error", a < 0 && (a = 0)
                }
                x.status = a, x.statusText = "" + (c || y), k ? o.resolveWith(m, [s, y, x]) : o.rejectWith(m, [x, y, t]), x.statusCode(r), r = b, j && n.trigger("ajax" + (k ? "Success" : "Error"), [x, l, k ? s : t]), q.fireWith(m, [x, y]), j && (n.trigger("ajaxComplete", [x, l]), --p.active || p.event.trigger("ajaxStop"))
            }
            typeof a == "object" && (c = a, a = b), c = c || {};
            var d, e, f, g, h, i, j, k, l = p.ajaxSetup({}, c),
                m = l.context || l,
                n = m !== l && (m.nodeType || m instanceof p) ? p(m) : p.event,
                o = p.Deferred(),
                q = p.Callbacks("once memory"),
                r = l.statusCode || {},
                t = {},
                u = {},
                v = 0,
                w = "canceled",
                x = {
                    readyState: 0,
                    setRequestHeader: function(a, b) {
                        if (!v) {
                            var c = a.toLowerCase();
                            a = u[c] = u[c] || a, t[a] = b
                        }
                        return this
                    },
                    getAllResponseHeaders: function() {
                        return v === 2 ? e : null
                    },
                    getResponseHeader: function(a) {
                        var c;
                        if (v === 2) {
                            if (!f) {
                                f = {};
                                while (c = cm.exec(e)) f[c[1].toLowerCase()] = c[2]
                            }
                            c = f[a.toLowerCase()]
                        }
                        return c === b ? null : c
                    },
                    overrideMimeType: function(a) {
                        return v || (l.mimeType = a), this
                    },
                    abort: function(a) {
                        return a = a || w, g && g.abort(a), y(0, a), this
                    }
                };
            o.promise(x), x.success = x.done, x.error = x.fail, x.complete = q.add, x.statusCode = function(a) {
                if (a) {
                    var b;
                    if (v < 2)
                        for (b in a) r[b] = [r[b], a[b]];
                    else b = a[x.status], x.always(b)
                }
                return this
            }, l.url = ((a || l.url) + "").replace(cl, "").replace(cp, ck[1] + "//"), l.dataTypes = p.trim(l.dataType || "*").toLowerCase().split(s), l.crossDomain == null && (i = ct.exec(l.url.toLowerCase()), l.crossDomain = !(!i || i[1] == ck[1] && i[2] == ck[2] && (i[3] || (i[1] === "http:" ? 80 : 443)) == (ck[3] || (ck[1] === "http:" ? 80 : 443)))), l.data && l.processData && typeof l.data != "string" && (l.data = p.param(l.data, l.traditional)), cA(cv, l, c, x);
            if (v === 2) return x;
            j = l.global, l.type = l.type.toUpperCase(), l.hasContent = !co.test(l.type), j && p.active++ === 0 && p.event.trigger("ajaxStart");
            if (!l.hasContent) {
                l.data && (l.url += (cq.test(l.url) ? "&" : "?") + l.data, delete l.data), d = l.url;
                if (l.cache === !1) {
                    var z = p.now(),
                        A = l.url.replace(cs, "$1_=" + z);
                    l.url = A + (A === l.url ? (cq.test(l.url) ? "&" : "?") + "_=" + z : "")
                }
            }(l.data && l.hasContent && l.contentType !== !1 || c.contentType) && x.setRequestHeader("Content-Type", l.contentType), l.ifModified && (d = d || l.url, p.lastModified[d] && x.setRequestHeader("If-Modified-Since", p.lastModified[d]), p.etag[d] && x.setRequestHeader("If-None-Match", p.etag[d])), x.setRequestHeader("Accept", l.dataTypes[0] && l.accepts[l.dataTypes[0]] ? l.accepts[l.dataTypes[0]] + (l.dataTypes[0] !== "*" ? ", " + cx + "; q=0.01" : "") : l.accepts["*"]);
            for (k in l.headers) x.setRequestHeader(k, l.headers[k]);
            if (!l.beforeSend || l.beforeSend.call(m, x, l) !== !1 && v !== 2) {
                w = "abort";
                for (k in {
                        success: 1,
                        error: 1,
                        complete: 1
                    }) x[k](l[k]);
                g = cA(cw, l, c, x);
                if (!g) y(-1, "No Transport");
                else {
                    x.readyState = 1, j && n.trigger("ajaxSend", [x, l]), l.async && l.timeout > 0 && (h = setTimeout(function() {
                        x.abort("timeout")
                    }, l.timeout));
                    try {
                        v = 1, g.send(t, y)
                    } catch (B) {
                        if (v < 2) y(-1, B);
                        else throw B
                    }
                }
                return x
            }
            return x.abort()
        },
        active: 0,
        lastModified: {},
        etag: {}
    });
    var cE = [],
        cF = /\?/,
        cG = /(=)\?(?=&|$)|\?\?/,
        cH = p.now();
    p.ajaxSetup({
        jsonp: "callback",
        jsonpCallback: function() {
            var a = cE.pop() || p.expando + "_" + cH++;
            return this[a] = !0, a
        }
    }), p.ajaxPrefilter("json jsonp", function(c, d, e) {
        var f, g, h, i = c.data,
            j = c.url,
            k = c.jsonp !== !1,
            l = k && cG.test(j),
            m = k && !l && typeof i == "string" && !(c.contentType || "").indexOf("application/x-www-form-urlencoded") && cG.test(i);
        if (c.dataTypes[0] === "jsonp" || l || m) return f = c.jsonpCallback = p.isFunction(c.jsonpCallback) ? c.jsonpCallback() : c.jsonpCallback, g = a[f], l ? c.url = j.replace(cG, "$1" + f) : m ? c.data = i.replace(cG, "$1" + f) : k && (c.url += (cF.test(j) ? "&" : "?") + c.jsonp + "=" + f), c.converters["script json"] = function() {
            return h || p.error(f + " was not called"), h[0]
        }, c.dataTypes[0] = "json", a[f] = function() {
            h = arguments
        }, e.always(function() {
            a[f] = g, c[f] && (c.jsonpCallback = d.jsonpCallback, cE.push(f)), h && p.isFunction(g) && g(h[0]), h = g = b
        }), "script"
    }), p.ajaxSetup({
        accepts: {
            script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
        },
        contents: {
            script: /javascript|ecmascript/
        },
        converters: {
            "text script": function(a) {
                return p.globalEval(a), a
            }
        }
    }), p.ajaxPrefilter("script", function(a) {
        a.cache === b && (a.cache = !1), a.crossDomain && (a.type = "GET", a.global = !1)
    }), p.ajaxTransport("script", function(a) {
        if (a.crossDomain) {
            var c, d = e.head || e.getElementsByTagName("head")[0] || e.documentElement;
            return {
                send: function(f, g) {
                    c = e.createElement("script"), c.async = "async", a.scriptCharset && (c.charset = a.scriptCharset), c.src = a.url, c.onload = c.onreadystatechange = function(a, e) {
                        if (e || !c.readyState || /loaded|complete/.test(c.readyState)) c.onload = c.onreadystatechange = null, d && c.parentNode && d.removeChild(c), c = b, e || g(200, "success")
                    }, d.insertBefore(c, d.firstChild)
                },
                abort: function() {
                    c && c.onload(0, 1)
                }
            }
        }
    });
    var cI, cJ = a.ActiveXObject ? function() {
            for (var a in cI) cI[a](0, 1)
        } : !1,
        cK = 0;
    p.ajaxSettings.xhr = a.ActiveXObject ? function() {
            return !this.isLocal && cL() || cM()
        } : cL,
        function(a) {
            p.extend(p.support, {
                ajax: !!a,
                cors: !!a && "withCredentials" in a
            })
        }(p.ajaxSettings.xhr()), p.support.ajax && p.ajaxTransport(function(c) {
            if (!c.crossDomain || p.support.cors) {
                var d;
                return {
                    send: function(e, f) {
                        var g, h, i = c.xhr();
                        c.username ? i.open(c.type, c.url, c.async, c.username, c.password) : i.open(c.type, c.url, c.async);
                        if (c.xhrFields)
                            for (h in c.xhrFields) i[h] = c.xhrFields[h];
                        c.mimeType && i.overrideMimeType && i.overrideMimeType(c.mimeType), !c.crossDomain && !e["X-Requested-With"] && (e["X-Requested-With"] = "XMLHttpRequest");
                        try {
                            for (h in e) i.setRequestHeader(h, e[h])
                        } catch (j) {}
                        i.send(c.hasContent && c.data || null), d = function(a, e) {
                            var h, j, k, l, m;
                            try {
                                if (d && (e || i.readyState === 4)) {
                                    d = b, g && (i.onreadystatechange = p.noop, cJ && delete cI[g]);
                                    if (e) i.readyState !== 4 && i.abort();
                                    else {
                                        h = i.status, k = i.getAllResponseHeaders(), l = {}, m = i.responseXML, m && m.documentElement && (l.xml = m);
                                        try {
                                            l.text = i.responseText
                                        } catch (a) {}
                                        try {
                                            j = i.statusText
                                        } catch (n) {
                                            j = ""
                                        }!h && c.isLocal && !c.crossDomain ? h = l.text ? 200 : 404 : h === 1223 && (h = 204)
                                    }
                                }
                            } catch (o) {
                                e || f(-1, o)
                            }
                            l && f(h, j, l, k)
                        }, c.async ? i.readyState === 4 ? setTimeout(d, 0) : (g = ++cK, cJ && (cI || (cI = {}, p(a).unload(cJ)), cI[g] = d), i.onreadystatechange = d) : d()
                    },
                    abort: function() {
                        d && d(0, 1)
                    }
                }
            }
        });
    var cN, cO, cP = /^(?:toggle|show|hide)$/,
        cQ = new RegExp("^(?:([-+])=|)(" + q + ")([a-z%]*)$", "i"),
        cR = /queueHooks$/,
        cS = [cY],
        cT = {
            "*": [function(a, b) {
                var c, d, e, f = this.createTween(a, b),
                    g = cQ.exec(b),
                    h = f.cur(),
                    i = +h || 0,
                    j = 1;
                if (g) {
                    c = +g[2], d = g[3] || (p.cssNumber[a] ? "" : "px");
                    if (d !== "px" && i) {
                        i = p.css(f.elem, a, !0) || c || 1;
                        do e = j = j || ".5", i = i / j, p.style(f.elem, a, i + d), j = f.cur() / h; while (j !== 1 && j !== e)
                    }
                    f.unit = d, f.start = i, f.end = g[1] ? i + (g[1] + 1) * c : c
                }
                return f
            }]
        };
    p.Animation = p.extend(cW, {
        tweener: function(a, b) {
            p.isFunction(a) ? (b = a, a = ["*"]) : a = a.split(" ");
            var c, d = 0,
                e = a.length;
            for (; d < e; d++) c = a[d], cT[c] = cT[c] || [], cT[c].unshift(b)
        },
        prefilter: function(a, b) {
            b ? cS.unshift(a) : cS.push(a)
        }
    }), p.Tween = cZ, cZ.prototype = {
        constructor: cZ,
        init: function(a, b, c, d, e, f) {
            this.elem = a, this.prop = c, this.easing = e || "swing", this.options = b, this.start = this.now = this.cur