Overview

URL dash.sebastian-dernbach.de/
IP176.28.16.156
ASNAS20773 Host Europe GmbH
Location Germany
Report completed2017-10-21 22:25:35 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
Added / Verified Severity Host Comment
2017-10-21 2 dash.sebastian-dernbach.de/login.php Phishing
DNS-BH  No alerts detected
mnemonic secure dns  No alerts detected


Recent reports on same IP/ASN/Domain

Last 10 reports on IP: 176.28.16.156

Date UQ / IDS / BL URL IP
2017-11-21 00:50:04 +0100
0 - 1 - 0 sdc-support.de/ 176.28.16.156
2017-11-20 15:20:33 +0100
0 - 0 - 1 dash.sebastian-dernbach.de/ 176.28.16.156
2017-11-20 04:49:34 +0100
0 - 0 - 1 dash.sebastian-dernbach.de/ 176.28.16.156
2017-11-20 00:30:33 +0100
0 - 1 - 0 jira.sdc-support.de/ 176.28.16.156
2017-11-19 18:20:00 +0100
0 - 1 - 0 sdc-support.de/ 176.28.16.156
2017-11-19 16:25:23 +0100
0 - 1 - 0 jira.sdc-support.de/ 176.28.16.156
2017-11-19 09:50:46 +0100
0 - 1 - 0 jira.sdc-support.de/ 176.28.16.156
2017-11-19 09:42:50 +0100
0 - 0 - 1 dash.sebastian-dernbach.de/ 176.28.16.156
2017-11-19 01:25:18 +0100
0 - 1 - 0 jira.sdc-support.de/ 176.28.16.156
2017-11-18 22:25:26 +0100
0 - 1 - 0 jira.sdc-support.de/ 176.28.16.156

Last 10 reports on ASN: AS20773 Host Europe GmbH

Date UQ / IDS / BL URL IP
2017-11-21 00:55:24 +0100
0 - 0 - 1 grizzly-style.de/ 46.163.75.174
2017-11-21 00:50:04 +0100
0 - 1 - 0 sdc-support.de/ 176.28.16.156
2017-11-21 00:29:44 +0100
0 - 0 - 5 piwik.stover-rennen.de/ 83.169.22.205
2017-11-21 00:16:57 +0100
0 - 0 - 21 fitnesscoach-regensburg.de/ 87.230.94.55
2017-11-21 00:11:56 +0100
0 - 1 - 0 soundcloud-views.tk/ 5.35.254.30
2017-11-21 00:06:24 +0100
0 - 1 - 0 bad-woerishofen.tk/ 92.51.130.133
2017-11-20 23:46:45 +0100
0 - 0 - 1 sge-grundstuecke.de/ 85.119.155.163
2017-11-20 23:46:16 +0100
0 - 2 - 0 autodiva.top/ 176.28.19.86
2017-11-20 23:36:53 +0100
1 - 0 - 0 haus-anni-moosbach.de/ 91.250.117.125
2017-11-20 23:29:29 +0100
0 - 0 - 1 hottinger-systems.de/ 83.169.22.79

No other reports on domain: sebastian-dernbach.de



JavaScript

Executed Scripts (7)


Executed Evals (3)

#1 JavaScript::Eval (size: 23217, repeated: 1) - SHA256: 0a0416e386e436583f5f49242104677e6b16b1aa693d86f32d76845e26081f96

                                        ! function(t, e) {
    "function" == typeof define && define.amd ? define(e) : "object" == typeof exports ? module.exports = e(require, exports, module) : t.Tether = e()
}(this, function(t, e, o) {
    "use strict";

    function i(t, e) {
        if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
    }

    function n(t) {
        var e = getComputedStyle(t),
            o = e.position;
        if ("fixed" === o) return t;
        for (var i = t; i = i.parentNode;) {
            var n = void 0;
            try {
                n = getComputedStyle(i)
            } catch (r) {}
            if ("undefined" == typeof n || null === n) return i;
            var s = n,
                a = s.overflow,
                f = s.overflowX,
                h = s.overflowY;
            if (/(auto|scroll)/.test(a + h + f) && ("absolute" !== o || ["relative", "absolute", "fixed"].indexOf(n.position) >= 0)) return i
        }
        return document.body
    }

    function r(t) {
        var e = void 0;
        t === document ? (e = document, t = document.documentElement) : e = t.ownerDocument;
        var o = e.documentElement,
            i = {},
            n = t.getBoundingClientRect();
        for (var r in n) i[r] = n[r];
        var s = x(e);
        return i.top -= s.top, i.left -= s.left, "undefined" == typeof i.width && (i.width = document.body.scrollWidth - i.left - i.right), "undefined" == typeof i.height && (i.height = document.body.scrollHeight - i.top - i.bottom), i.top = i.top - o.clientTop, i.left = i.left - o.clientLeft, i.right = e.body.clientWidth - i.width - i.left, i.bottom = e.body.clientHeight - i.height - i.top, i
    }

    function s(t) {
        return t.offsetParent || document.documentElement
    }

    function a() {
        var t = document.createElement("div");
        t.style.width = "100%", t.style.height = "200px";
        var e = document.createElement("div");
        f(e.style, {
            position: "absolute",
            top: 0,
            left: 0,
            pointerEvents: "none",
            visibility: "hidden",
            width: "200px",
            height: "150px",
            overflow: "hidden"
        }), e.appendChild(t), document.body.appendChild(e);
        var o = t.offsetWidth;
        e.style.overflow = "scroll";
        var i = t.offsetWidth;
        o === i && (i = e.clientWidth), document.body.removeChild(e);
        var n = o - i;
        return {
            width: n,
            height: n
        }
    }

    function f() {
        var t = arguments.length <= 0 || void 0 === arguments[0] ? {} : arguments[0],
            e = [];
        return Array.prototype.push.apply(e, arguments), e.slice(1).forEach(function(e) {
            if (e)
                for (var o in e)({}).hasOwnProperty.call(e, o) && (t[o] = e[o])
        }), t
    }

    function h(t, e) {
        if ("undefined" != typeof t.classList) e.split(" ").forEach(function(e) {
            e.trim() && t.classList.remove(e)
        });
        else {
            var o = new RegExp("(^| )" + e.split(" ").join("|") + "( |$)", "gi"),
                i = u(t).replace(o, " ");
            p(t, i)
        }
    }

    function l(t, e) {
        if ("undefined" != typeof t.classList) e.split(" ").forEach(function(e) {
            e.trim() && t.classList.add(e)
        });
        else {
            h(t, e);
            var o = u(t) + (" " + e);
            p(t, o)
        }
    }

    function d(t, e) {
        if ("undefined" != typeof t.classList) return t.classList.contains(e);
        var o = u(t);
        return new RegExp("(^| )" + e + "( |$)", "gi").test(o)
    }

    function u(t) {
        return t.className instanceof SVGAnimatedString ? t.className.baseVal : t.className
    }

    function p(t, e) {
        t.setAttribute("class", e)
    }

    function c(t, e, o) {
        o.forEach(function(o) {
            -1 === e.indexOf(o) && d(t, o) && h(t, o)
        }), e.forEach(function(e) {
            d(t, e) || l(t, e)
        })
    }

    function i(t, e) {
        if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
    }

    function g(t, e) {
        var o = arguments.length <= 2 || void 0 === arguments[2] ? 1 : arguments[2];
        return t + o >= e && e >= t - o
    }

    function m() {
        return "undefined" != typeof performance && "undefined" != typeof performance.now ? performance.now() : +new Date
    }

    function v() {
        for (var t = {
                top: 0,
                left: 0
            }, e = arguments.length, o = Array(e), i = 0; e > i; i++) o[i] = arguments[i];
        return o.forEach(function(e) {
            var o = e.top,
                i = e.left;
            "string" == typeof o && (o = parseFloat(o, 10)), "string" == typeof i && (i = parseFloat(i, 10)), t.top += o, t.left += i
        }), t
    }

    function y(t, e) {
        return "string" == typeof t.left && -1 !== t.left.indexOf("%") && (t.left = parseFloat(t.left, 10) / 100 * e.width), "string" == typeof t.top && -1 !== t.top.indexOf("%") && (t.top = parseFloat(t.top, 10) / 100 * e.height), t
    }

    function b(t, e) {
        return "scrollParent" === e ? e = t.scrollParent : "window" === e && (e = [pageXOffset, pageYOffset, innerWidth + pageXOffset, innerHeight + pageYOffset]), e === document && (e = e.documentElement), "undefined" != typeof e.nodeType && ! function() {
            var t = r(e),
                o = t,
                i = getComputedStyle(e);
            e = [o.left, o.top, t.width + o.left, t.height + o.top], U.forEach(function(t, o) {
                t = t[0].toUpperCase() + t.substr(1), "Top" === t || "Left" === t ? e[o] += parseFloat(i["border" + t + "Width"]) : e[o] -= parseFloat(i["border" + t + "Width"])
            })
        }(), e
    }
    var w = function() {
            function t(t, e) {
                for (var o = 0; o < e.length; o++) {
                    var i = e[o];
                    i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(t, i.key, i)
                }
            }
            return function(e, o, i) {
                return o && t(e.prototype, o), i && t(e, i), e
            }
        }(),
        C = void 0;
    "undefined" == typeof C && (C = {
        modules: []
    });
    var O = function() {
            var t = 0;
            return function() {
                return ++t
            }
        }(),
        E = {},
        x = function(t) {
            var e = t._tetherZeroElement;
            "undefined" == typeof e && (e = t.createElement("div"), e.setAttribute("data-tether-id", O()), f(e.style, {
                top: 0,
                left: 0,
                position: "absolute"
            }), t.body.appendChild(e), t._tetherZeroElement = e);
            var o = e.getAttribute("data-tether-id");
            if ("undefined" == typeof E[o]) {
                E[o] = {};
                var i = e.getBoundingClientRect();
                for (var n in i) E[o][n] = i[n];
                T(function() {
                    delete E[o]
                })
            }
            return E[o]
        },
        A = [],
        T = function(t) {
            A.push(t)
        },
        S = function() {
            for (var t = void 0; t = A.pop();) t()
        },
        W = function() {
            function t() {
                i(this, t)
            }
            return w(t, [{
                key: "on",
                value: function(t, e, o) {
                    var i = arguments.length <= 3 || void 0 === arguments[3] ? !1 : arguments[3];
                    "undefined" == typeof this.bindings && (this.bindings = {}), "undefined" == typeof this.bindings[t] && (this.bindings[t] = []), this.bindings[t].push({
                        handler: e,
                        ctx: o,
                        once: i
                    })
                }
            }, {
                key: "once",
                value: function(t, e, o) {
                    this.on(t, e, o, !0)
                }
            }, {
                key: "off",
                value: function(t, e) {
                    if ("undefined" == typeof this.bindings || "undefined" == typeof this.bindings[t])
                        if ("undefined" == typeof e) delete this.bindings[t];
                        else
                            for (var o = 0; o < this.bindings[t].length;) this.bindings[t][o].handler === e ? this.bindings[t].splice(o, 1) : ++o
                }
            }, {
                key: "trigger",
                value: function(t) {
                    if ("undefined" != typeof this.bindings && this.bindings[t]) {
                        for (var e = 0, o = arguments.length, i = Array(o > 1 ? o - 1 : 0), n = 1; o > n; n++) i[n - 1] = arguments[n];
                        for (; e < this.bindings[t].length;) {
                            var r = this.bindings[t][e],
                                s = r.handler,
                                a = r.ctx,
                                f = r.once,
                                h = a;
                            "undefined" == typeof h && (h = this), s.apply(h, i), f ? this.bindings[t].splice(e, 1) : ++e
                        }
                    }
                }
            }]), t
        }();
    C.Utils = {
        getScrollParent: n,
        getBounds: r,
        getOffsetParent: s,
        extend: f,
        addClass: l,
        removeClass: h,
        hasClass: d,
        updateClasses: c,
        defer: T,
        flush: S,
        uniqueId: O,
        Evented: W,
        getScrollBarSize: a
    };
    var M = function() {
            function t(t, e) {
                var o = [],
                    i = !0,
                    n = !1,
                    r = void 0;
                try {
                    for (var s, a = t[Symbol.iterator](); !(i = (s = a.next()).done) && (o.push(s.value), !e || o.length !== e); i = !0);
                } catch (f) {
                    n = !0, r = f
                } finally {
                    try {
                        !i && a["return"] && a["return"]()
                    } finally {
                        if (n) throw r
                    }
                }
                return o
            }
            return function(e, o) {
                if (Array.isArray(e)) return e;
                if (Symbol.iterator in Object(e)) return t(e, o);
                throw new TypeError("Invalid attempt to destructure non-iterable instance")
            }
        }(),
        w = function() {
            function t(t, e) {
                for (var o = 0; o < e.length; o++) {
                    var i = e[o];
                    i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(t, i.key, i)
                }
            }
            return function(e, o, i) {
                return o && t(e.prototype, o), i && t(e, i), e
            }
        }();
    if ("undefined" == typeof C) throw new Error("You must include the utils.js file before tether.js");
    var P = C.Utils,
        n = P.getScrollParent,
        r = P.getBounds,
        s = P.getOffsetParent,
        f = P.extend,
        l = P.addClass,
        h = P.removeClass,
        c = P.updateClasses,
        T = P.defer,
        S = P.flush,
        a = P.getScrollBarSize,
        k = function() {
            if ("undefined" == typeof document) return "";
            for (var t = document.createElement("div"), e = ["transform", "webkitTransform", "OTransform", "MozTransform", "msTransform"], o = 0; o < e.length; ++o) {
                var i = e[o];
                if (void 0 !== t.style[i]) return i
            }
        }(),
        B = [],
        _ = function() {
            B.forEach(function(t) {
                t.position(!1)
            }), S()
        };
    ! function() {
        var t = null,
            e = null,
            o = null,
            i = function n() {
                return "undefined" != typeof e && e > 16 ? (e = Math.min(e - 16, 250), void(o = setTimeout(n, 250))) : void("undefined" != typeof t && m() - t < 10 || ("undefined" != typeof o && (clearTimeout(o), o = null), t = m(), _(), e = m() - t))
            };
        "undefined" != typeof window && ["resize", "scroll", "touchmove"].forEach(function(t) {
            window.addEventListener(t, i)
        })
    }();
    var z = {
            center: "center",
            left: "right",
            right: "left"
        },
        F = {
            middle: "middle",
            top: "bottom",
            bottom: "top"
        },
        L = {
            top: 0,
            left: 0,
            middle: "50%",
            center: "50%",
            bottom: "100%",
            right: "100%"
        },
        Y = function(t, e) {
            var o = t.left,
                i = t.top;
            return "auto" === o && (o = z[e.left]), "auto" === i && (i = F[e.top]), {
                left: o,
                top: i
            }
        },
        H = function(t) {
            var e = t.left,
                o = t.top;
            return "undefined" != typeof L[t.left] && (e = L[t.left]), "undefined" != typeof L[t.top] && (o = L[t.top]), {
                left: e,
                top: o
            }
        },
        X = function(t) {
            var e = t.split(" "),
                o = M(e, 2),
                i = o[0],
                n = o[1];
            return {
                top: i,
                left: n
            }
        },
        j = X,
        N = function() {
            function t(e) {
                var o = this;
                i(this, t), this.position = this.position.bind(this), B.push(this), this.history = [], this.setOptions(e, !1), C.modules.forEach(function(t) {
                    "undefined" != typeof t.initialize && t.initialize.call(o)
                }), this.position()
            }
            return w(t, [{
                key: "getClass",
                value: function() {
                    var t = arguments.length <= 0 || void 0 === arguments[0] ? "" : arguments[0],
                        e = this.options.classes;
                    return "undefined" != typeof e && e[t] ? this.options.classes[t] : this.options.classPrefix ? this.options.classPrefix + "-" + t : t
                }
            }, {
                key: "setOptions",
                value: function(t) {
                    var e = this,
                        o = arguments.length <= 1 || void 0 === arguments[1] ? !0 : arguments[1],
                        i = {
                            offset: "0 0",
                            targetOffset: "0 0",
                            targetAttachment: "auto auto",
                            classPrefix: "tether"
                        };
                    this.options = f(i, t);
                    var r = this.options,
                        s = r.element,
                        a = r.target,
                        h = r.targetModifier;
                    if (this.element = s, this.target = a, this.targetModifier = h, "viewport" === this.target ? (this.target = document.body, this.targetModifier = "visible") : "scroll-handle" === this.target && (this.target = document.body, this.targetModifier = "scroll-handle"), ["element", "target"].forEach(function(t) {
                            if ("undefined" == typeof e[t]) throw new Error("Tether Error: Both element and target must be defined");
                            "undefined" != typeof e[t].jquery ? e[t] = e[t][0] : "string" == typeof e[t] && (e[t] = document.querySelector(e[t]))
                        }), l(this.element, this.getClass("element")), this.options.addTargetClasses !== !1 && l(this.target, this.getClass("target")), !this.options.attachment) throw new Error("Tether Error: You must provide an attachment");
                    this.targetAttachment = j(this.options.targetAttachment), this.attachment = j(this.options.attachment), this.offset = X(this.options.offset), this.targetOffset = X(this.options.targetOffset), "undefined" != typeof this.scrollParent && this.disable(), "scroll-handle" === this.targetModifier ? this.scrollParent = this.target : this.scrollParent = n(this.target), this.options.enabled !== !1 && this.enable(o)
                }
            }, {
                key: "getTargetBounds",
                value: function() {
                    if ("undefined" == typeof this.targetModifier) return r(this.target);
                    if ("visible" === this.targetModifier) {
                        if (this.target === document.body) return {
                            top: pageYOffset,
                            left: pageXOffset,
                            height: innerHeight,
                            width: innerWidth
                        };
                        var t = r(this.target),
                            e = {
                                height: t.height,
                                width: t.width,
                                top: t.top,
                                left: t.left
                            };
                        return e.height = Math.min(e.height, t.height - (pageYOffset - t.top)), e.height = Math.min(e.height, t.height - (t.top + t.height - (pageYOffset + innerHeight))), e.height = Math.min(innerHeight, e.height), e.height -= 2, e.width = Math.min(e.width, t.width - (pageXOffset - t.left)), e.width = Math.min(e.width, t.width - (t.left + t.width - (pageXOffset + innerWidth))), e.width = Math.min(innerWidth, e.width), e.width -= 2, e.top < pageYOffset && (e.top = pageYOffset), e.left < pageXOffset && (e.left = pageXOffset), e
                    }
                    if ("scroll-handle" === this.targetModifier) {
                        var t = void 0,
                            o = this.target;
                        o === document.body ? (o = document.documentElement, t = {
                            left: pageXOffset,
                            top: pageYOffset,
                            height: innerHeight,
                            width: innerWidth
                        }) : t = r(o);
                        var i = getComputedStyle(o),
                            n = o.scrollWidth > o.clientWidth || [i.overflow, i.overflowX].indexOf("scroll") >= 0 || this.target !== document.body,
                            s = 0;
                        n && (s = 15);
                        var a = t.height - parseFloat(i.borderTopWidth) - parseFloat(i.borderBottomWidth) - s,
                            e = {
                                width: 15,
                                height: .975 * a * (a / o.scrollHeight),
                                left: t.left + t.width - parseFloat(i.borderLeftWidth) - 15
                            },
                            f = 0;
                        408 > a && this.target === document.body && (f = -11e-5 * Math.pow(a, 2) - .00727 * a + 22.58), this.target !== document.body && (e.height = Math.max(e.height, 24));
                        var h = this.target.scrollTop / (o.scrollHeight - a);
                        return e.top = h * (a - e.height - f) + t.top + parseFloat(i.borderTopWidth), this.target === document.body && (e.height = Math.max(e.height, 24)), e
                    }
                }
            }, {
                key: "clearCache",
                value: function() {
                    this._cache = {}
                }
            }, {
                key: "cache",
                value: function(t, e) {
                    return "undefined" == typeof this._cache && (this._cache = {}), "undefined" == typeof this._cache[t] && (this._cache[t] = e.call(this)), this._cache[t]
                }
            }, {
                key: "enable",
                value: function() {
                    var t = arguments.length <= 0 || void 0 === arguments[0] ? !0 : arguments[0];
                    this.options.addTargetClasses !== !1 && l(this.target, this.getClass("enabled")), l(this.element, this.getClass("enabled")), this.enabled = !0, this.scrollParent !== document && this.scrollParent.addEventListener("scroll", this.position), t && this.position()
                }
            }, {
                key: "disable",
                value: function() {
                    h(this.target, this.getClass("enabled")), h(this.element, this.getClass("enabled")), this.enabled = !1, "undefined" != typeof this.scrollParent && this.scrollParent.removeEventListener("scroll", this.position)
                }
            }, {
                key: "destroy",
                value: function() {
                    var t = this;
                    this.disable(), B.forEach(function(e, o) {
                        return e === t ? void B.splice(o, 1) : void 0
                    })
                }
            }, {
                key: "updateAttachClasses",
                value: function(t, e) {
                    var o = this;
                    t = t || this.attachment, e = e || this.targetAttachment;
                    var i = ["left", "top", "bottom", "right", "middle", "center"];
                    "undefined" != typeof this._addAttachClasses && this._addAttachClasses.length && this._addAttachClasses.splice(0, this._addAttachClasses.length), "undefined" == typeof this._addAttachClasses && (this._addAttachClasses = []);
                    var n = this._addAttachClasses;
                    t.top && n.push(this.getClass("element-attached") + "-" + t.top), t.left && n.push(this.getClass("element-attached") + "-" + t.left), e.top && n.push(this.getClass("target-attached") + "-" + e.top), e.left && n.push(this.getClass("target-attached") + "-" + e.left);
                    var r = [];
                    i.forEach(function(t) {
                        r.push(o.getClass("element-attached") + "-" + t), r.push(o.getClass("target-attached") + "-" + t)
                    }), T(function() {
                        "undefined" != typeof o._addAttachClasses && (c(o.element, o._addAttachClasses, r), o.options.addTargetClasses !== !1 && c(o.target, o._addAttachClasses, r), delete o._addAttachClasses)
                    })
                }
            }, {
                key: "position",
                value: function() {
                    var t = this,
                        e = arguments.length <= 0 || void 0 === arguments[0] ? !0 : arguments[0];
                    if (this.enabled) {
                        this.clearCache();
                        var o = Y(this.targetAttachment, this.attachment);
                        this.updateAttachClasses(this.attachment, o);
                        var i = this.cache("element-bounds", function() {
                                return r(t.element)
                            }),
                            n = i.width,
                            f = i.height;
                        if (0 === n && 0 === f && "undefined" != typeof this.lastSize) {
                            var h = this.lastSize;
                            n = h.width, f = h.height
                        } else this.lastSize = {
                            width: n,
                            height: f
                        };
                        var l = this.cache("target-bounds", function() {
                                return t.getTargetBounds()
                            }),
                            d = l,
                            u = y(H(this.attachment), {
                                width: n,
                                height: f
                            }),
                            p = y(H(o), d),
                            c = y(this.offset, {
                                width: n,
                                height: f
                            }),
                            g = y(this.targetOffset, d);
                        u = v(u, c), p = v(p, g);
                        for (var m = l.left + p.left - u.left, b = l.top + p.top - u.top, w = 0; w < C.modules.length; ++w) {
                            var O = C.modules[w],
                                E = O.position.call(this, {
                                    left: m,
                                    top: b,
                                    targetAttachment: o,
                                    targetPos: l,
                                    elementPos: i,
                                    offset: u,
                                    targetOffset: p,
                                    manualOffset: c,
                                    manualTargetOffset: g,
                                    scrollbarSize: A,
                                    attachment: this.attachment
                                });
                            if (E === !1) return !1;
                            "undefined" != typeof E && "object" == typeof E && (b = E.top, m = E.left)
                        }
                        var x = {
                                page: {
                                    top: b,
                                    left: m
                                },
                                viewport: {
                                    top: b - pageYOffset,
                                    bottom: pageYOffset - b - f + innerHeight,
                                    left: m - pageXOffset,
                                    right: pageXOffset - m - n + innerWidth
                                }
                            },
                            A = void 0;
                        return document.body.scrollWidth > window.innerWidth && (A = this.cache("scrollbar-size", a), x.viewport.bottom -= A.height), document.body.scrollHeight > window.innerHeight && (A = this.cache("scrollbar-size", a), x.viewport.right -= A.width), (-1 === ["", "static"].indexOf(document.body.style.position) || -1 === ["", "static"].indexOf(document.body.parentElement.style.position)) && (x.page.bottom = document.body.scrollHeight - b - f, x.page.right = document.body.scrollWidth - m - n), "undefined" != typeof this.options.optimizations && this.options.optimizations.moveElement !== !1 && "undefined" == typeof this.targetModifier && ! function() {
                            var e = t.cache("target-offsetparent", function() {
                                    return s(t.target)
                                }),
                                o = t.cache("target-offsetparent-bounds", function() {
                                    return r(e)
                                }),
                                i = getComputedStyle(e),
                                n = o,
                                a = {};
                            if (["Top", "Left", "Bottom", "Right"].forEach(function(t) {
                                    a[t.toLowerCase()] = parseFloat(i["border" + t + "Width"])
                                }), o.right = document.body.scrollWidth - o.left - n.width + a.right, o.bottom = document.body.scrollHeight - o.top - n.height + a.bottom, x.page.top >= o.top + a.top && x.page.bottom >= o.bottom && x.page.left >= o.left + a.left && x.page.right >= o.right) {
                                var f = e.scrollTop,
                                    h = e.scrollLeft;
                                x.offset = {
                                    top: x.page.top - o.top + f - a.top,
                                    left: x.page.left - o.left + h - a.left
                                }
                            }
                        }(), this.move(x), this.history.unshift(x), this.history.length > 3 && this.history.pop(), e && S(), !0
                    }
                }
            }, {
                key: "move",
                value: function(t) {
                    var e = this;
                    if ("undefined" != typeof this.element.parentNode) {
                        var o = {};
                        for (var i in t) {
                            o[i] = {};
                            for (var n in t[i]) {
                                for (var r = !1, a = 0; a < this.history.length; ++a) {
                                    var h = this.history[a];
                                    if ("undefined" != typeof h[i] && !g(h[i][n], t[i][n])) {
                                        r = !0;
                                        break
                                    }
                                }
                                r || (o[i][n] = !0)
                            }
                        }
                        var l = {
                                top: "",
                                left: "",
                                right: "",
                                bottom: ""
                            },
                            d = function(t, o) {
                                var i = "undefined" != typeof e.options.optimizations,
                                    n = i ? e.options.optimizations.gpu : null;
                                if (n !== !1) {
                                    var r = void 0,
                                        s = void 0;
                                    t.top ? (l.top = 0, r = o.top) : (l.bottom = 0, r = -o.bottom), t.left ? (l.left = 0, s = o.left) : (l.right = 0, s = -o.right), l[k] = "translateX(" + Math.round(s) + "px) translateY(" + Math.round(r) + "px)", "msTransform" !== k && (l[k] += " translateZ(0)")
                                } else t.top ? l.top = o.top + "px" : l.bottom = o.bottom + "px", t.left ? l.left = o.left + "px" : l.right = o.right + "px"
                            },
                            u = !1;
                        if ((o.page.top || o.page.bottom) && (o.page.left || o.page.right) ? (l.position = "absolute", d(o.page, t.page)) : (o.viewport.top || o.viewport.bottom) && (o.viewport.left || o.viewport.right) ? (l.position = "fixed", d(o.viewport, t.viewport)) : "undefined" != typeof o.offset && o.offset.top && o.offset.left ? ! function() {
                                l.position = "absolute";
                                var i = e.cache("target-offsetparent", function() {
                                    return s(e.target)
                                });
                                s(e.element) !== i && T(function() {
                                    e.element.parentNode.removeChild(e.element), i.appendChild(e.element)
                                }), d(o.offset, t.offset), u = !0
                            }() : (l.position = "absolute", d({
                                top: !0,
                                left: !0
                            }, t.page)), !u) {
                            for (var p = !0, c = this.element.parentNode; c && "BODY" !== c.tagName;) {
                                if ("static" !== getComputedStyle(c).position) {
                                    p = !1;
                                    break
                                }
                                c = c.parentNode
                            }
                            p || (this.element.parentNode.removeChild(this.element), document.body.appendChild(this.element))
                        }
                        var m = {},
                            v = !1;
                        for (var n in l) {
                            var y = l[n],
                                b = this.element.style[n];
                            "" !== b && "" !== y && ["top", "left", "bottom", "right"].indexOf(n) >= 0 && (b = parseFloat(b), y = parseFloat(y)), b !== y && (v = !0, m[n] = y)
                        }
                        v && T(function() {
                            f(e.element.style, m)
                        })
                    }
                }
            }]), t
        }();
    N.modules = [], C.position = _;
    var R = f(N, C),
        M = function() {
            function t(t, e) {
                var o = [],
                    i = !0,
                    n = !1,
                    r = void 0;
                try {
                    for (var s, a = t[Symbol.iterator](); !(i = (s = a.next()).done) && (o.push(s.value), !e || o.length !== e); i = !0);
                } catch (f) {
                    n = !0, r = f
                } finally {
                    try {
                        !i && a["return"] && a["return"]()
                    } finally {
                        if (n) throw r
                    }
                }
                return o
            }
            return function(e, o) {
                if (Array.isArray(e)) return e;
                if (Symbol.iterator in Object(e)) return t(e, o);
                throw new TypeError("Invalid attempt to destructure non-iterable instance")
            }
        }(),
        P = C.Utils,
        r = P.getBounds,
        f = P.extend,
        c = P.updateClasses,
        T = P.defer,
        U = ["left", "top", "right", "bottom"];
    C.modules.push({
        position: function(t) {
            var e = this,
                o = t.top,
                i = t.left,
                n = t.targetAttachment;
            if (!this.options.constraints) return !0;
            var s = this.cache("element-bounds", function() {
                    return r(e.element)
                }),
                a = s.height,
                h = s.width;
            if (0 === h && 0 === a && "undefined" != typeof this.lastSize) {
                var l = this.lastSize;
                h = l.width, a = l.height
            }
            var d = this.cache("target-bounds", function() {
                    return e.getTargetBounds()
                }),
                u = d.height,
                p = d.width,
                g = [this.getClass("pinned"), this.getClass("out-of-bounds")];
            this.options.constraints.forEach(function(t) {
                var e = t.outOfBoundsClass,
                    o = t.pinnedClass;
                e && g.push(e), o && g.push(o)
            }), g.forEach(function(t) {
                ["left", "top", "right", "bottom"].forEach(function(e) {
                    g.push(t + "-" + e)
                })
            });
            var m = [],
                v = f({}, n),
                y = f({}, this.attachment);
            return this.options.constraints.forEach(function(t) {
                var r = t.to,
                    s = t.attachment,
                    f = t.pin;
                "undefined" == typeof s && (s = "");
                var l = void 0,
                    d = void 0;
                if (s.indexOf(" ") >= 0) {
                    var c = s.split(" "),
                        g = M(c, 2);
                    d = g[0], l = g[1]
                } else l = d = s;
                var w = b(e, r);
                ("target" === d || "both" === d) && (o < w[1] && "top" === v.top && (o += u, v.top = "bottom"), o + a > w[3] && "bottom" === v.top && (o -= u, v.top = "top")), "together" === d && (o < w[1] && "top" === v.top && ("bottom" === y.top ? (o += u, v.top = "bottom", o += a, y.top = "top") : "top" === y.top && (o += u, v.top = "bottom", o -= a, y.top = "bottom")), o + a > w[3] && "bottom" === v.top && ("top" === y.top ? (o -= u, v.top = "top", o -= a, y.top = "bottom") : "bottom" === y.top && (o -= u, v.top = "top", o += a, y.top = "top")), "middle" === v.top && (o + a > w[3] && "top" === y.top ? (o -= a, y.top = "bottom") : o < w[1] && "bottom" === y.top && (o += a, y.top = "top"))), ("target" === l || "both" === l) && (i < w[0] && "left" === v.left && (i += p, v.left = "right"), i + h > w[2] && "right" === v.left && (i -= p, v.left = "left")), "together" === l && (i < w[0] && "left" === v.left ? "right" === y.left ? (i += p, v.left = "right", i += h, y.left = "left") : "left" === y.left && (i += p, v.left = "right", i -= h, y.left = "right") : i + h > w[2] && "right" === v.left ? "left" === y.left ? (i -= p, v.left = "left", i -= h, y.left = "right") : "right" === y.left && (i -= p, v.left = "left", i += h, y.left = "left") : "center" === v.left && (i + h > w[2] && "left" === y.left ? (i -= h, y.left = "right") : i < w[0] && "right" === y.left && (i += h, y.left = "left"))), ("element" === d || "both" === d) && (o < w[1] && "bottom" === y.top && (o += a, y.top = "top"), o + a > w[3] && "top" === y.top && (o -= a, y.top = "bottom")), ("element" === l || "both" === l) && (i < w[0] && "right" === y.left && (i += h, y.left = "left"), i + h > w[2] && "left" === y.left && (i -= h, y.left = "right")), "string" == typeof f ? f = f.split(",").map(function(t) {
                    return t.trim()
                }) : f === !0 && (f = ["top", "left", "right", "bottom"]), f = f || [];
                var C = [],
                    O = [];
                o < w[1] && (f.indexOf("top") >= 0 ? (o = w[1], C.push("top")) : O.push("top")), o + a > w[3] && (f.indexOf("bottom") >= 0 ? (o = w[3] - a, C.push("bottom")) : O.push("bottom")), i < w[0] && (f.indexOf("left") >= 0 ? (i = w[0], C.push("left")) : O.push("left")), i + h > w[2] && (f.indexOf("right") >= 0 ? (i = w[2] - h, C.push("right")) : O.push("right")), C.length && ! function() {
                    var t = void 0;
                    t = "undefined" != typeof e.options.pinnedClass ? e.options.pinnedClass : e.getClass("pinned"), m.push(t), C.forEach(function(e) {
                        m.push(t + "-" + e)
                    })
                }(), O.length && ! function() {
                    var t = void 0;
                    t = "undefined" != typeof e.options.outOfBoundsClass ? e.options.outOfBoundsClass : e.getClass("out-of-bounds"), m.push(t), O.forEach(function(e) {
                        m.push(t + "-" + e)
                    })
                }(), (C.indexOf("left") >= 0 || C.indexOf("right") >= 0) && (y.left = v.left = !1), (C.indexOf("top") >= 0 || C.indexOf("bottom") >= 0) && (y.top = v.top = !1), (v.top !== n.top || v.left !== n.left || y.top !== e.attachment.top || y.left !== e.attachment.left) && e.updateAttachClasses(y, v)
            }), T(function() {
                e.options.addTargetClasses !== !1 && c(e.target, m, g), c(e.element, m, g)
            }), {
                top: o,
                left: i
            }
        }
    });
    var P = C.Utils,
        r = P.getBounds,
        c = P.updateClasses,
        T = P.defer;
    C.modules.push({
        position: function(t) {
            var e = this,
                o = t.top,
                i = t.left,
                n = this.cache("element-bounds", function() {
                    return r(e.element)
                }),
                s = n.height,
                a = n.width,
                f = this.getTargetBounds(),
                h = o + s,
                l = i + a,
                d = [];
            o <= f.bottom && h >= f.top && ["left", "right"].forEach(function(t) {
                var e = f[t];
                (e === i || e === l) && d.push(t)
            }), i <= f.right && l >= f.left && ["top", "bottom"].forEach(function(t) {
                var e = f[t];
                (e === o || e === h) && d.push(t)
            });
            var u = [],
                p = [],
                g = ["left", "top", "right", "bottom"];
            return u.push(this.getClass("abutted")), g.forEach(function(t) {
                u.push(e.getClass("abutted") + "-" + t)
            }), d.length && p.push(this.getClass("abutted")), d.forEach(function(t) {
                p.push(e.getClass("abutted") + "-" + t)
            }), T(function() {
                e.options.addTargetClasses !== !1 && c(e.target, p, u), c(e.element, p, u)
            }), !0
        }
    });
    var M = function() {
        function t(t, e) {
            var o = [],
                i = !0,
                n = !1,
                r = void 0;
            try {
                for (var s, a = t[Symbol.iterator](); !(i = (s = a.next()).done) && (o.push(s.value), !e || o.length !== e); i = !0);
            } catch (f) {
                n = !0, r = f
            } finally {
                try {
                    !i && a["return"] && a["return"]()
                } finally {
                    if (n) throw r
                }
            }
            return o
        }
        return function(e, o) {
            if (Array.isArray(e)) return e;
            if (Symbol.iterator in Object(e)) return t(e, o);
            throw new TypeError("Invalid attempt to destructure non-iterable instance")
        }
    }();
    return C.modules.push({
        position: function(t) {
            var e = t.top,
                o = t.left;
            if (this.options.shift) {
                var i = this.options.shift;
                "function" == typeof this.options.shift && (i = this.options.shift.call(this, {
                    top: e,
                    left: o
                }));
                var n = void 0,
                    r = void 0;
                if ("string" == typeof i) {
                    i = i.split(" "), i[1] = i[1] || i[0];
                    var s = i,
                        a = M(s, 2);
                    n = a[0], r = a[1], n = parseFloat(n, 10), r = parseFloat(r, 10)
                } else n = i.top, r = i.left;
                return e += n, o += r, {
                    top: e,
                    left: o
                }
            }
        }
    }), R
});
                                    

#2 JavaScript::Eval (size: 12489, repeated: 1) - SHA256: 605742bbd504d73c8fdb79760b5d37415b5594c84533e21cbf89db820c77252e

                                        (function() {
    var a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X = [].slice,
        Y = {}.hasOwnProperty,
        Z = function(a, b) {
            function c() {
                this.constructor = a
            }
            for (var d in b) Y.call(b, d) && (a[d] = b[d]);
            return c.prototype = b.prototype, a.prototype = new c, a.__super__ = b.prototype, a
        },
        $ = [].indexOf || function(a) {
            for (var b = 0, c = this.length; c > b; b++)
                if (b in this && this[b] === a) return b;
            return -1
        };
    for (u = {
            catchupTime: 100,
            initialRate: .03,
            minTime: 250,
            ghostTime: 100,
            maxProgressPerFrame: 20,
            easeFactor: 1.25,
            startOnPageLoad: !0,
            restartOnPushState: !0,
            restartOnRequestAfter: 500,
            target: "body",
            elements: {
                checkInterval: 100,
                selectors: ["body"]
            },
            eventLag: {
                minSamples: 10,
                sampleCount: 3,
                lagThreshold: 3
            },
            ajax: {
                trackMethods: ["GET"],
                trackWebSockets: !0,
                ignoreURLs: []
            }
        }, C = function() {
            var a;
            return null != (a = "undefined" != typeof performance && null !== performance && "function" == typeof performance.now ? performance.now() : void 0) ? a : +new Date
        }, E = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame, t = window.cancelAnimationFrame || window.mozCancelAnimationFrame, null == E && (E = function(a) {
            return setTimeout(a, 50)
        }, t = function(a) {
            return clearTimeout(a)
        }), G = function(a) {
            var b, c;
            return b = C(), (c = function() {
                var d;
                return d = C() - b, d >= 33 ? (b = C(), a(d, function() {
                    return E(c)
                })) : setTimeout(c, 33 - d)
            })()
        }, F = function() {
            var a, b, c;
            return c = arguments[0], b = arguments[1], a = 3 <= arguments.length ? X.call(arguments, 2) : [], "function" == typeof c[b] ? c[b].apply(c, a) : c[b]
        }, v = function() {
            var a, b, c, d, e, f, g;
            for (b = arguments[0], d = 2 <= arguments.length ? X.call(arguments, 1) : [], f = 0, g = d.length; g > f; f++)
                if (c = d[f])
                    for (a in c) Y.call(c, a) && (e = c[a], null != b[a] && "object" == typeof b[a] && null != e && "object" == typeof e ? v(b[a], e) : b[a] = e);
            return b
        }, q = function(a) {
            var b, c, d, e, f;
            for (c = b = 0, e = 0, f = a.length; f > e; e++) d = a[e], c += Math.abs(d), b++;
            return c / b
        }, x = function(a, b) {
            var c, d, e;
            if (null == a && (a = "options"), null == b && (b = !0), e = document.querySelector("[data-pace-" + a + "]")) {
                if (c = e.getAttribute("data-pace-" + a), !b) return c;
                try {
                    return JSON.parse(c)
                } catch (f) {
                    return d = f, "undefined" != typeof console && null !== console ? console.error("Error parsing inline pace options", d) : void 0
                }
            }
        }, g = function() {
            function a() {}
            return a.prototype.on = function(a, b, c, d) {
                var e;
                return null == d && (d = !1), null == this.bindings && (this.bindings = {}), null == (e = this.bindings)[a] && (e[a] = []), this.bindings[a].push({
                    handler: b,
                    ctx: c,
                    once: d
                })
            }, a.prototype.once = function(a, b, c) {
                return this.on(a, b, c, !0)
            }, a.prototype.off = function(a, b) {
                var c, d, e;
                if (null != (null != (d = this.bindings) ? d[a] : void 0)) {
                    if (null == b) return delete this.bindings[a];
                    for (c = 0, e = []; c < this.bindings[a].length;) e.push(this.bindings[a][c].handler === b ? this.bindings[a].splice(c, 1) : c++);
                    return e
                }
            }, a.prototype.trigger = function() {
                var a, b, c, d, e, f, g, h, i;
                if (c = arguments[0], a = 2 <= arguments.length ? X.call(arguments, 1) : [], null != (g = this.bindings) ? g[c] : void 0) {
                    for (e = 0, i = []; e < this.bindings[c].length;) h = this.bindings[c][e], d = h.handler, b = h.ctx, f = h.once, d.apply(null != b ? b : this, a), i.push(f ? this.bindings[c].splice(e, 1) : e++);
                    return i
                }
            }, a
        }(), j = window.Pace || {}, window.Pace = j, v(j, g.prototype), D = j.options = v({}, u, window.paceOptions, x()), U = ["ajax", "document", "eventLag", "elements"], Q = 0, S = U.length; S > Q; Q++) K = U[Q], D[K] === !0 && (D[K] = u[K]);
    i = function(a) {
        function b() {
            return V = b.__super__.constructor.apply(this, arguments)
        }
        return Z(b, a), b
    }(Error), b = function() {
        function a() {
            this.progress = 0
        }
        return a.prototype.getElement = function() {
            var a;
            if (null == this.el) {
                if (a = document.querySelector(D.target), !a) throw new i;
                this.el = document.createElement("div"), this.el.className = "pace pace-active", document.body.className = document.body.className.replace(/pace-done/g, ""), document.body.className += " pace-running", this.el.innerHTML = '<div class="pace-progress">\n  <div class="pace-progress-inner"></div>\n</div>\n<div class="pace-activity"></div>', null != a.firstChild ? a.insertBefore(this.el, a.firstChild) : a.appendChild(this.el)
            }
            return this.el
        }, a.prototype.finish = function() {
            var a;
            return a = this.getElement(), a.className = a.className.replace("pace-active", ""), a.className += " pace-inactive", document.body.className = document.body.className.replace("pace-running", ""), document.body.className += " pace-done"
        }, a.prototype.update = function(a) {
            return this.progress = a, this.render()
        }, a.prototype.destroy = function() {
            try {
                this.getElement().parentNode.removeChild(this.getElement())
            } catch (a) {
                i = a
            }
            return this.el = void 0
        }, a.prototype.render = function() {
            var a, b, c, d, e, f, g;
            if (null == document.querySelector(D.target)) return !1;
            for (a = this.getElement(), d = "translate3d(" + this.progress + "%, 0, 0)", g = ["webkitTransform", "msTransform", "transform"], e = 0, f = g.length; f > e; e++) b = g[e], a.children[0].style[b] = d;
            return (!this.lastRenderedProgress || this.lastRenderedProgress | 0 !== this.progress | 0) && (a.children[0].setAttribute("data-progress-text", "" + (0 | this.progress) + "%"), this.progress >= 100 ? c = "99" : (c = this.progress < 10 ? "0" : "", c += 0 | this.progress), a.children[0].setAttribute("data-progress", "" + c)), this.lastRenderedProgress = this.progress
        }, a.prototype.done = function() {
            return this.progress >= 100
        }, a
    }(), h = function() {
        function a() {
            this.bindings = {}
        }
        return a.prototype.trigger = function(a, b) {
            var c, d, e, f, g;
            if (null != this.bindings[a]) {
                for (f = this.bindings[a], g = [], d = 0, e = f.length; e > d; d++) c = f[d], g.push(c.call(this, b));
                return g
            }
        }, a.prototype.on = function(a, b) {
            var c;
            return null == (c = this.bindings)[a] && (c[a] = []), this.bindings[a].push(b)
        }, a
    }(), P = window.XMLHttpRequest, O = window.XDomainRequest, N = window.WebSocket, w = function(a, b) {
        var c, d, e;
        e = [];
        for (d in b.prototype) try {
            e.push(null == a[d] && "function" != typeof b[d] ? "function" == typeof Object.defineProperty ? Object.defineProperty(a, d, {get: function() {
                    return b.prototype[d]
                },
                configurable: !0,
                enumerable: !0
            }) : a[d] = b.prototype[d] : void 0)
        } catch (f) {
            c = f
        }
        return e
    }, A = [], j.ignore = function() {
        var a, b, c;
        return b = arguments[0], a = 2 <= arguments.length ? X.call(arguments, 1) : [], A.unshift("ignore"), c = b.apply(null, a), A.shift(), c
    }, j.track = function() {
        var a, b, c;
        return b = arguments[0], a = 2 <= arguments.length ? X.call(arguments, 1) : [], A.unshift("track"), c = b.apply(null, a), A.shift(), c
    }, J = function(a) {
        var b;
        if (null == a && (a = "GET"), "track" === A[0]) return "force";
        if (!A.length && D.ajax) {
            if ("socket" === a && D.ajax.trackWebSockets) return !0;
            if (b = a.toUpperCase(), $.call(D.ajax.trackMethods, b) >= 0) return !0
        }
        return !1
    }, k = function(a) {
        function b() {
            var a, c = this;
            b.__super__.constructor.apply(this, arguments), a = function(a) {
                var b;
                return b = a.open, a.open = function(d, e) {
                    return J(d) && c.trigger("request", {
                        type: d,
                        url: e,
                        request: a
                    }), b.apply(a, arguments)
                }
            }, window.XMLHttpRequest = function(b) {
                var c;
                return c = new P(b), a(c), c
            };
            try {
                w(window.XMLHttpRequest, P)
            } catch (d) {}
            if (null != O) {
                window.XDomainRequest = function() {
                    var b;
                    return b = new O, a(b), b
                };
                try {
                    w(window.XDomainRequest, O)
                } catch (d) {}
            }
            if (null != N && D.ajax.trackWebSockets) {
                window.WebSocket = function(a, b) {
                    var d;
                    return d = null != b ? new N(a, b) : new N(a), J("socket") && c.trigger("request", {
                        type: "socket",
                        url: a,
                        protocols: b,
                        request: d
                    }), d
                };
                try {
                    w(window.WebSocket, N)
                } catch (d) {}
            }
        }
        return Z(b, a), b
    }(h), R = null, y = function() {
        return null == R && (R = new k), R
    }, I = function(a) {
        var b, c, d, e;
        for (e = D.ajax.ignoreURLs, c = 0, d = e.length; d > c; c++)
            if (b = e[c], "string" == typeof b) {
                if (-1 !== a.indexOf(b)) return !0
            } else if (b.test(a)) return !0;
        return !1
    }, y().on("request", function(b) {
        var c, d, e, f, g;
        return f = b.type, e = b.request, g = b.url, I(g) ? void 0 : j.running || D.restartOnRequestAfter === !1 && "force" !== J(f) ? void 0 : (d = arguments, c = D.restartOnRequestAfter || 0, "boolean" == typeof c && (c = 0), setTimeout(function() {
            var b, c, g, h, i, k;
            if (b = "socket" === f ? e.readyState < 2 : 0 < (h = e.readyState) && 4 > h) {
                for (j.restart(), i = j.sources, k = [], c = 0, g = i.length; g > c; c++) {
                    if (K = i[c], K instanceof a) {
                        K.watch.apply(K, d);
                        break
                    }
                    k.push(void 0)
                }
                return k
            }
        }, c))
    }), a = function() {
        function a() {
            var a = this;
            this.elements = [], y().on("request", function() {
                return a.watch.apply(a, arguments)
            })
        }
        return a.prototype.watch = function(a) {
            var b, c, d, e;
            return d = a.type, b = a.request, e = a.url, I(e) ? void 0 : (c = "socket" === d ? new n(b) : new o(b), this.elements.push(c))
        }, a
    }(), o = function() {
        function a(a) {
            var b, c, d, e, f, g, h = this;
            if (this.progress = 0, null != window.ProgressEvent)
                for (c = null, a.addEventListener("progress", function(a) {
                        return h.progress = a.lengthComputable ? 100 * a.loaded / a.total : h.progress + (100 - h.progress) / 2
                    }, !1), g = ["load", "abort", "timeout", "error"], d = 0, e = g.length; e > d; d++) b = g[d], a.addEventListener(b, function() {
                    return h.progress = 100
                }, !1);
            else f = a.onreadystatechange, a.onreadystatechange = function() {
                var b;
                return 0 === (b = a.readyState) || 4 === b ? h.progress = 100 : 3 === a.readyState && (h.progress = 50), "function" == typeof f ? f.apply(null, arguments) : void 0
            }
        }
        return a
    }(), n = function() {
        function a(a) {
            var b, c, d, e, f = this;
            for (this.progress = 0, e = ["error", "open"], c = 0, d = e.length; d > c; c++) b = e[c], a.addEventListener(b, function() {
                return f.progress = 100
            }, !1)
        }
        return a
    }(), d = function() {
        function a(a) {
            var b, c, d, f;
            for (null == a && (a = {}), this.elements = [], null == a.selectors && (a.selectors = []), f = a.selectors, c = 0, d = f.length; d > c; c++) b = f[c], this.elements.push(new e(b))
        }
        return a
    }(), e = function() {
        function a(a) {
            this.selector = a, this.progress = 0, this.check()
        }
        return a.prototype.check = function() {
            var a = this;
            return document.querySelector(this.selector) ? this.done() : setTimeout(function() {
                return a.check()
            }, D.elements.checkInterval)
        }, a.prototype.done = function() {
            return this.progress = 100
        }, a
    }(), c = function() {
        function a() {
            var a, b, c = this;
            this.progress = null != (b = this.states[document.readyState]) ? b : 100, a = document.onreadystatechange, document.onreadystatechange = function() {
                return null != c.states[document.readyState] && (c.progress = c.states[document.readyState]), "function" == typeof a ? a.apply(null, arguments) : void 0
            }
        }
        return a.prototype.states = {
            loading: 0,
            interactive: 50,
            complete: 100
        }, a
    }(), f = function() {
        function a() {
            var a, b, c, d, e, f = this;
            this.progress = 0, a = 0, e = [], d = 0, c = C(), b = setInterval(function() {
                var g;
                return g = C() - c - 50, c = C(), e.push(g), e.length > D.eventLag.sampleCount && e.shift(), a = q(e), ++d >= D.eventLag.minSamples && a < D.eventLag.lagThreshold ? (f.progress = 100, clearInterval(b)) : f.progress = 100 * (3 / (a + 3))
            }, 50)
        }
        return a
    }(), m = function() {
        function a(a) {
            this.source = a, this.last = this.sinceLastUpdate = 0, this.rate = D.initialRate, this.catchup = 0, this.progress = this.lastProgress = 0, null != this.source && (this.progress = F(this.source, "progress"))
        }
        return a.prototype.tick = function(a, b) {
            var c;
            return null == b && (b = F(this.source, "progress")), b >= 100 && (this.done = !0), b === this.last ? this.sinceLastUpdate += a : (this.sinceLastUpdate && (this.rate = (b - this.last) / this.sinceLastUpdate), this.catchup = (b - this.progress) / D.catchupTime, this.sinceLastUpdate = 0, this.last = b), b > this.progress && (this.progress += this.catchup * a), c = 1 - Math.pow(this.progress / 100, D.easeFactor), this.progress += c * this.rate * a, this.progress = Math.min(this.lastProgress + D.maxProgressPerFrame, this.progress), this.progress = Math.max(0, this.progress), this.progress = Math.min(100, this.progress), this.lastProgress = this.progress, this.progress
        }, a
    }(), L = null, H = null, r = null, M = null, p = null, s = null, j.running = !1, z = function() {
        return D.restartOnPushState ? j.restart() : void 0
    }, null != window.history.pushState && (T = window.history.pushState, window.history.pushState = function() {
        return z(), T.apply(window.history, arguments)
    }), null != window.history.replaceState && (W = window.history.replaceState, window.history.replaceState = function() {
        return z(), W.apply(window.history, arguments)
    }), l = {
        ajax: a,
        elements: d,
        document: c,
        eventLag: f
    }, (B = function() {
        var a, c, d, e, f, g, h, i;
        for (j.sources = L = [], g = ["ajax", "elements", "document", "eventLag"], c = 0, e = g.length; e > c; c++) a = g[c], D[a] !== !1 && L.push(new l[a](D[a]));
        for (i = null != (h = D.extraSources) ? h : [], d = 0, f = i.length; f > d; d++) K = i[d], L.push(new K(D));
        return j.bar = r = new b, H = [], M = new m
    })(), j.stop = function() {
        return j.trigger("stop"), j.running = !1, r.destroy(), s = !0, null != p && ("function" == typeof t && t(p), p = null), B()
    }, j.restart = function() {
        return j.trigger("restart"), j.stop(), j.start()
    }, j.go = function() {
        var a;
        return j.running = !0, r.render(), a = C(), s = !1, p = G(function(b, c) {
            var d, e, f, g, h, i, k, l, n, o, p, q, t, u, v, w;
            for (l = 100 - r.progress, e = p = 0, f = !0, i = q = 0, u = L.length; u > q; i = ++q)
                for (K = L[i], o = null != H[i] ? H[i] : H[i] = [], h = null != (w = K.elements) ? w : [K], k = t = 0, v = h.length; v > t; k = ++t) g = h[k], n = null != o[k] ? o[k] : o[k] = new m(g), f &= n.done, n.done || (e++, p += n.tick(b));
            return d = p / e, r.update(M.tick(b, d)), r.done() || f || s ? (r.update(100), j.trigger("done"), setTimeout(function() {
                return r.finish(), j.running = !1, j.trigger("hide")
            }, Math.max(D.ghostTime, Math.max(D.minTime - (C() - a), 0)))) : c()
        })
    }, j.start = function(a) {
        v(D, a), j.running = !0;
        try {
            r.render()
        } catch (b) {
            i = b
        }
        return document.querySelector(".pace") ? (j.trigger("start"), j.go()) : setTimeout(j.start, 50)
    }, "function" == typeof define && define.amd ? define(["pace"], function() {
        return j
    }) : "object" == typeof exports ? module.exports = j : D.startOnPageLoad && j.start()
}).call(this);
                                    

#3 JavaScript::Eval (size: 44648, repeated: 1) - SHA256: f2759a0ef0dc7817c5a052d9df307197718e260328c3ba1e4087235d4b27da96

                                        if ("undefined" == typeof jQuery) throw new Error("Bootstrap's JavaScript requires jQuery"); + function(a) {
    var b = a.fn.jquery.split(" ")[0].split(".");
    if (b[0] < 2 && b[1] < 9 || 1 == b[0] && 9 == b[1] && b[2] < 1 || b[0] >= 3) throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v3.0.0")
}(jQuery), + function(a) {
    "use strict";

    function b(a, b) {
        if ("function" != typeof b && null !== b) throw new TypeError("Super expression must either be null or a function, not " + typeof b);
        a.prototype = Object.create(b && b.prototype, {
            constructor: {
                value: a,
                enumerable: !1,
                writable: !0,
                configurable: !0
            }
        }), b && (Object.setPrototypeOf ? Object.setPrototypeOf(a, b) : a.__proto__ = b)
    }

    function c(a, b) {
        if (!(a instanceof b)) throw new TypeError("Cannot call a class as a function")
    }
    var d = function(a, b, c) {
            for (var d = !0; d;) {
                var e = a,
                    f = b,
                    g = c;
                d = !1, null === e && (e = Function.prototype);
                var h = Object.getOwnPropertyDescriptor(e, f);
                if (void 0 !== h) {
                    if ("value" in h) return h.value;
                    var i = h.get;
                    if (void 0 === i) return;
                    return i.call(g)
                }
                var j = Object.getPrototypeOf(e);
                if (null === j) return;
                a = j, b = f, c = g, d = !0, h = j = void 0
            }
        },
        e = function() {
            function a(a, b) {
                for (var c = 0; c < b.length; c++) {
                    var d = b[c];
                    d.enumerable = d.enumerable || !1, d.configurable = !0, "value" in d && (d.writable = !0), Object.defineProperty(a, d.key, d)
                }
            }
            return function(b, c, d) {
                return c && a(b.prototype, c), d && a(b, d), b
            }
        }(),
        f = function(a) {
            function b(a) {
                return {}.toString.call(a).match(/\s([a-zA-Z]+)/)[1].toLowerCase()
            }

            function c(a) {
                return (a[0] || a).nodeType
            }

            function d() {
                return {
                    bindType: h.end,
                    delegateType: h.end,
                    handle: function(b) {
                        return a(b.target).is(this) ? b.handleObj.handler.apply(this, arguments) : void 0
                    }
                }
            }

            function e() {
                if (window.QUnit) return !1;
                var a = document.createElement("bootstrap");
                for (var b in i)
                    if (void 0 !== a.style[b]) return {
                        end: i[b]
                    };
                return !1
            }

            function f(b) {
                var c = this,
                    d = !1;
                return a(this).one(j.TRANSITION_END, function() {
                    d = !0
                }), setTimeout(function() {
                    d || j.triggerTransitionEnd(c)
                }, b), this
            }

            function g() {
                h = e(), a.fn.emulateTransitionEnd = f, j.supportsTransitionEnd() && (a.event.special[j.TRANSITION_END] = d())
            }
            var h = !1,
                i = {
                    WebkitTransition: "webkitTransitionEnd",
                    MozTransition: "transitionend",
                    OTransition: "oTransitionEnd otransitionend",
                    transition: "transitionend"
                },
                j = {
                    TRANSITION_END: "bsTransitionEnd",
                    getUID: function(a) {
                        do a += ~~(1e6 * Math.random()); while (document.getElementById(a));
                        return a
                    },
                    getSelectorFromElement: function(a) {
                        var b = a.getAttribute("data-target");
                        return b || (b = a.getAttribute("href") || "", b = /^#[a-z]/i.test(b) ? b : null), b
                    },
                    reflow: function(a) {
                        new Function("bs", "return bs")(a.offsetHeight)
                    },
                    triggerTransitionEnd: function(b) {
                        a(b).trigger(h.end)
                    },
                    supportsTransitionEnd: function() {
                        return Boolean(h)
                    },
                    typeCheckConfig: function(a, d, e) {
                        for (var f in e)
                            if (e.hasOwnProperty(f)) {
                                var g = e[f],
                                    h = d[f],
                                    i = void 0;
                                if (i = h && c(h) ? "element" : b(h), !new RegExp(g).test(i)) throw new Error(a.toUpperCase() + ": " + ('Option "' + f + '" provided type "' + i + '" ') + ('but expected type "' + g + '".'))
                            }
                    }
                };
            return g(), j
        }(jQuery),
        g = (function(a) {
            var b = "alert",
                d = "4.0.0-alpha",
                g = "bs.alert",
                h = "." + g,
                i = ".data-api",
                j = a.fn[b],
                k = 150,
                l = {
                    DISMISS: '[data-dismiss="alert"]'
                },
                m = {
                    CLOSE: "close" + h,
                    CLOSED: "closed" + h,
                    CLICK_DATA_API: "click" + h + i
                },
                n = {
                    ALERT: "alert",
                    FADE: "fade",
                    IN: "in"
                },
                o = function() {
                    function b(a) {
                        c(this, b), this._element = a
                    }
                    return e(b, [{
                        key: "close",
                        value: function(a) {
                            a = a || this._element;
                            var b = this._getRootElement(a),
                                c = this._triggerCloseEvent(b);
                            c.isDefaultPrevented() || this._removeElement(b)
                        }
                    }, {
                        key: "dispose",
                        value: function() {
                            a.removeData(this._element, g), this._element = null
                        }
                    }, {
                        key: "_getRootElement",
                        value: function(b) {
                            var c = f.getSelectorFromElement(b),
                                d = !1;
                            return c && (d = a(c)[0]), d || (d = a(b).closest("." + n.ALERT)[0]), d
                        }
                    }, {
                        key: "_triggerCloseEvent",
                        value: function(b) {
                            var c = a.Event(m.CLOSE);
                            return a(b).trigger(c), c
                        }
                    }, {
                        key: "_removeElement",
                        value: function(b) {
                            return a(b).removeClass(n.IN), f.supportsTransitionEnd() && a(b).hasClass(n.FADE) ? void a(b).one(f.TRANSITION_END, a.proxy(this._destroyElement, this, b)).emulateTransitionEnd(k) : void this._destroyElement(b)
                        }
                    }, {
                        key: "_destroyElement",
                        value: function(b) {
                            a(b).detach().trigger(m.CLOSED).remove()
                        }
                    }], [{
                        key: "_jQueryInterface",
                        value: function(c) {
                            return this.each(function() {
                                var d = a(this),
                                    e = d.data(g);
                                e || (e = new b(this), d.data(g, e)), "close" === c && e[c](this)
                            })
                        }
                    }, {
                        key: "_handleDismiss",
                        value: function(a) {
                            return function(b) {
                                b && b.preventDefault(), a.close(this)
                            }
                        }
                    }, {
                        key: "VERSION",
                        get: function() {
                            return d
                        }
                    }]), b
                }();
            return a(document).on(m.CLICK_DATA_API, l.DISMISS, o._handleDismiss(new o)), a.fn[b] = o._jQueryInterface, a.fn[b].Constructor = o, a.fn[b].noConflict = function() {
                return a.fn[b] = j, o._jQueryInterface
            }, o
        }(jQuery), function(a) {
            var b = "button",
                d = "4.0.0-alpha",
                f = "bs.button",
                g = "." + f,
                h = ".data-api",
                i = a.fn[b],
                j = {
                    ACTIVE: "active",
                    BUTTON: "btn",
                    FOCUS: "focus"
                },
                k = {
                    DATA_TOGGLE_CARROT: '[data-toggle^="button"]',
                    DATA_TOGGLE: '[data-toggle="buttons"]',
                    INPUT: "input",
                    ACTIVE: ".active",
                    BUTTON: ".btn"
                },
                l = {
                    CLICK_DATA_API: "click" + g + h,
                    FOCUS_BLUR_DATA_API: "focus" + g + h + " " + ("blur" + g + h)
                },
                m = function() {
                    function b(a) {
                        c(this, b), this._element = a
                    }
                    return e(b, [{
                        key: "toggle",
                        value: function() {
                            var b = !0,
                                c = a(this._element).closest(k.DATA_TOGGLE)[0];
                            if (c) {
                                var d = a(this._element).find(k.INPUT)[0];
                                if (d) {
                                    if ("radio" === d.type)
                                        if (d.checked && a(this._element).hasClass(j.ACTIVE)) b = !1;
                                        else {
                                            var e = a(c).find(k.ACTIVE)[0];
                                            e && a(e).removeClass(j.ACTIVE)
                                        }
                                    b && (d.checked = !a(this._element).hasClass(j.ACTIVE), a(this._element).trigger("change"))
                                }
                            } else this._element.setAttribute("aria-pressed", !a(this._element).hasClass(j.ACTIVE));
                            b && a(this._element).toggleClass(j.ACTIVE)
                        }
                    }, {
                        key: "dispose",
                        value: function() {
                            a.removeData(this._element, f), this._element = null
                        }
                    }], [{
                        key: "_jQueryInterface",
                        value: function(c) {
                            return this.each(function() {
                                var d = a(this).data(f);
                                d || (d = new b(this), a(this).data(f, d)), "toggle" === c && d[c]()
                            })
                        }
                    }, {
                        key: "VERSION",
                        get: function() {
                            return d
                        }
                    }]), b
                }();
            return a(document).on(l.CLICK_DATA_API, k.DATA_TOGGLE_CARROT, function(b) {
                b.preventDefault();
                var c = b.target;
                a(c).hasClass(j.BUTTON) || (c = a(c).closest(k.BUTTON)), m._jQueryInterface.call(a(c), "toggle")
            }).on(l.FOCUS_BLUR_DATA_API, k.DATA_TOGGLE_CARROT, function(b) {
                var c = a(b.target).closest(k.BUTTON)[0];
                a(c).toggleClass(j.FOCUS, /^focus(in)?$/.test(b.type))
            }), a.fn[b] = m._jQueryInterface, a.fn[b].Constructor = m, a.fn[b].noConflict = function() {
                return a.fn[b] = i, m._jQueryInterface
            }, m
        }(jQuery), function(a) {
            var b = "carousel",
                d = "4.0.0-alpha",
                g = "bs.carousel",
                h = "." + g,
                i = ".data-api",
                j = a.fn[b],
                k = 600,
                l = {
                    interval: 5e3,
                    keyboard: !0,
                    slide: !1,
                    pause: "hover",
                    wrap: !0
                },
                m = {
                    interval: "(number|boolean)",
                    keyboard: "boolean",
                    slide: "(boolean|string)",
                    pause: "(string|boolean)",
                    wrap: "boolean"
                },
                n = {
                    NEXT: "next",
                    PREVIOUS: "prev"
                },
                o = {
                    SLIDE: "slide" + h,
                    SLID: "slid" + h,
                    KEYDOWN: "keydown" + h,
                    MOUSEENTER: "mouseenter" + h,
                    MOUSELEAVE: "mouseleave" + h,
                    LOAD_DATA_API: "load" + h + i,
                    CLICK_DATA_API: "click" + h + i
                },
                p = {
                    CAROUSEL: "carousel",
                    ACTIVE: "active",
                    SLIDE: "slide",
                    RIGHT: "right",
                    LEFT: "left",
                    ITEM: "carousel-item"
                },
                q = {
                    ACTIVE: ".active",
                    ACTIVE_ITEM: ".active.carousel-item",
                    ITEM: ".carousel-item",
                    NEXT_PREV: ".next, .prev",
                    INDICATORS: ".carousel-indicators",
                    DATA_SLIDE: "[data-slide], [data-slide-to]",
                    DATA_RIDE: '[data-ride="carousel"]'
                },
                r = function() {
                    function i(b, d) {
                        c(this, i), this._items = null, this._interval = null, this._activeElement = null, this._isPaused = !1, this._isSliding = !1, this._config = this._getConfig(d), this._element = a(b)[0], this._indicatorsElement = a(this._element).find(q.INDICATORS)[0], this._addEventListeners()
                    }
                    return e(i, [{
                        key: "next",
                        value: function() {
                            this._isSliding || this._slide(n.NEXT)
                        }
                    }, {
                        key: "nextWhenVisible",
                        value: function() {
                            document.hidden || this.next()
                        }
                    }, {
                        key: "prev",
                        value: function() {
                            this._isSliding || this._slide(n.PREVIOUS)
                        }
                    }, {
                        key: "pause",
                        value: function(b) {
                            b || (this._isPaused = !0), a(this._element).find(q.NEXT_PREV)[0] && f.supportsTransitionEnd() && (f.triggerTransitionEnd(this._element), this.cycle(!0)), clearInterval(this._interval), this._interval = null
                        }
                    }, {
                        key: "cycle",
                        value: function(b) {
                            b || (this._isPaused = !1), this._interval && (clearInterval(this._interval), this._interval = null), this._config.interval && !this._isPaused && (this._interval = setInterval(a.proxy(document.visibilityState ? this.nextWhenVisible : this.next, this), this._config.interval))
                        }
                    }, {
                        key: "to",
                        value: function(b) {
                            var c = this;
                            this._activeElement = a(this._element).find(q.ACTIVE_ITEM)[0];
                            var d = this._getItemIndex(this._activeElement);
                            if (!(b > this._items.length - 1 || 0 > b)) {
                                if (this._isSliding) return void a(this._element).one(o.SLID, function() {
                                    return c.to(b)
                                });
                                if (d === b) return this.pause(), void this.cycle();
                                var e = b > d ? n.NEXT : n.PREVIOUS;
                                this._slide(e, this._items[b])
                            }
                        }
                    }, {
                        key: "dispose",
                        value: function() {
                            a(this._element).off(h), a.removeData(this._element, g), this._items = null, this._config = null, this._element = null, this._interval = null, this._isPaused = null, this._isSliding = null, this._activeElement = null, this._indicatorsElement = null
                        }
                    }, {
                        key: "_getConfig",
                        value: function(c) {
                            return c = a.extend({}, l, c), f.typeCheckConfig(b, c, m), c
                        }
                    }, {
                        key: "_addEventListeners",
                        value: function() {
                            this._config.keyboard && a(this._element).on(o.KEYDOWN, a.proxy(this._keydown, this)), "hover" !== this._config.pause || "ontouchstart" in document.documentElement || a(this._element).on(o.MOUSEENTER, a.proxy(this.pause, this)).on(o.MOUSELEAVE, a.proxy(this.cycle, this))
                        }
                    }, {
                        key: "_keydown",
                        value: function(a) {
                            if (a.preventDefault(), !/input|textarea/i.test(a.target.tagName)) switch (a.which) {
                                case 37:
                                    this.prev();
                                    break;
                                case 39:
                                    this.next();
                                    break;
                                default:
                                    return
                            }
                        }
                    }, {
                        key: "_getItemIndex",
                        value: function(b) {
                            return this._items = a.makeArray(a(b).parent().find(q.ITEM)), this._items.indexOf(b)
                        }
                    }, {
                        key: "_getItemByDirection",
                        value: function(a, b) {
                            var c = a === n.NEXT,
                                d = a === n.PREVIOUS,
                                e = this._getItemIndex(b),
                                f = this._items.length - 1,
                                g = d && 0 === e || c && e === f;
                            if (g && !this._config.wrap) return b;
                            var h = a === n.PREVIOUS ? -1 : 1,
                                i = (e + h) % this._items.length;
                            return -1 === i ? this._items[this._items.length - 1] : this._items[i]
                        }
                    }, {
                        key: "_triggerSlideEvent",
                        value: function(b, c) {
                            var d = a.Event(o.SLIDE, {
                                relatedTarget: b,
                                direction: c
                            });
                            return a(this._element).trigger(d), d
                        }
                    }, {
                        key: "_setActiveIndicatorElement",
                        value: function(b) {
                            if (this._indicatorsElement) {
                                a(this._indicatorsElement).find(q.ACTIVE).removeClass(p.ACTIVE);
                                var c = this._indicatorsElement.children[this._getItemIndex(b)];
                                c && a(c).addClass(p.ACTIVE)
                            }
                        }
                    }, {
                        key: "_slide",
                        value: function(b, c) {
                            var d = this,
                                e = a(this._element).find(q.ACTIVE_ITEM)[0],
                                g = c || e && this._getItemByDirection(b, e),
                                h = Boolean(this._interval),
                                i = b === n.NEXT ? p.LEFT : p.RIGHT;
                            if (g && a(g).hasClass(p.ACTIVE)) return void(this._isSliding = !1);
                            var j = this._triggerSlideEvent(g, i);
                            if (!j.isDefaultPrevented() && e && g) {
                                this._isSliding = !0, h && this.pause(), this._setActiveIndicatorElement(g);
                                var l = a.Event(o.SLID, {
                                    relatedTarget: g,
                                    direction: i
                                });
                                f.supportsTransitionEnd() && a(this._element).hasClass(p.SLIDE) ? (a(g).addClass(b), f.reflow(g), a(e).addClass(i), a(g).addClass(i), a(e).one(f.TRANSITION_END, function() {
                                    a(g).removeClass(i).removeClass(b), a(g).addClass(p.ACTIVE), a(e).removeClass(p.ACTIVE).removeClass(b).removeClass(i), d._isSliding = !1, setTimeout(function() {
                                        return a(d._element).trigger(l)
                                    }, 0)
                                }).emulateTransitionEnd(k)) : (a(e).removeClass(p.ACTIVE), a(g).addClass(p.ACTIVE), this._isSliding = !1, a(this._element).trigger(l)), h && this.cycle()
                            }
                        }
                    }], [{
                        key: "_jQueryInterface",
                        value: function(b) {
                            return this.each(function() {
                                var c = a(this).data(g),
                                    d = a.extend({}, l, a(this).data());
                                "object" == typeof b && a.extend(d, b);
                                var e = "string" == typeof b ? b : d.slide;
                                if (c || (c = new i(this, d), a(this).data(g, c)), "number" == typeof b) c.to(b);
                                else if ("string" == typeof e) {
                                    if (void 0 === c[e]) throw new Error('No method named "' + e + '"');
                                    c[e]()
                                } else d.interval && (c.pause(), c.cycle())
                            })
                        }
                    }, {
                        key: "_dataApiClickHandler",
                        value: function(b) {
                            var c = f.getSelectorFromElement(this);
                            if (c) {
                                var d = a(c)[0];
                                if (d && a(d).hasClass(p.CAROUSEL)) {
                                    var e = a.extend({}, a(d).data(), a(this).data()),
                                        h = this.getAttribute("data-slide-to");
                                    h && (e.interval = !1), i._jQueryInterface.call(a(d), e), h && a(d).data(g).to(h), b.preventDefault()
                                }
                            }
                        }
                    }, {
                        key: "VERSION",
                        get: function() {
                            return d
                        }
                    }, {
                        key: "Default",
                        get: function() {
                            return l
                        }
                    }]), i
                }();
            return a(document).on(o.CLICK_DATA_API, q.DATA_SLIDE, r._dataApiClickHandler), a(window).on(o.LOAD_DATA_API, function() {
                a(q.DATA_RIDE).each(function() {
                    var b = a(this);
                    r._jQueryInterface.call(b, b.data())
                })
            }), a.fn[b] = r._jQueryInterface, a.fn[b].Constructor = r, a.fn[b].noConflict = function() {
                return a.fn[b] = j, r._jQueryInterface
            }, r
        }(jQuery), function(a) {
            var b = "collapse",
                d = "4.0.0-alpha",
                g = "bs.collapse",
                h = "." + g,
                i = ".data-api",
                j = a.fn[b],
                k = 600,
                l = {
                    toggle: !0,
                    parent: ""
                },
                m = {
                    toggle: "boolean",
                    parent: "string"
                },
                n = {
                    SHOW: "show" + h,
                    SHOWN: "shown" + h,
                    HIDE: "hide" + h,
                    HIDDEN: "hidden" + h,
                    CLICK_DATA_API: "click" + h + i
                },
                o = {
                    IN: "in",
                    COLLAPSE: "collapse",
                    COLLAPSING: "collapsing",
                    COLLAPSED: "collapsed"
                },
                p = {
                    WIDTH: "width",
                    HEIGHT: "height"
                },
                q = {
                    ACTIVES: ".panel > .in, .panel > .collapsing",
                    DATA_TOGGLE: '[data-toggle="collapse"]'
                },
                r = function() {
                    function h(b, d) {
                        c(this, h), this._isTransitioning = !1, this._element = b, this._config = this._getConfig(d), this._triggerArray = a.makeArray(a('[data-toggle="collapse"][href="#' + b.id + '"],' + ('[data-toggle="collapse"][data-target="#' + b.id + '"]'))), this._parent = this._config.parent ? this._getParent() : null, this._config.parent || this._addAriaAndCollapsedClass(this._element, this._triggerArray), this._config.toggle && this.toggle()
                    }
                    return e(h, [{
                        key: "toggle",
                        value: function() {
                            a(this._element).hasClass(o.IN) ? this.hide() : this.show()
                        }
                    }, {
                        key: "show",
                        value: function() {
                            var b = this;
                            if (!this._isTransitioning && !a(this._element).hasClass(o.IN)) {
                                var c = void 0,
                                    d = void 0;
                                if (this._parent && (c = a.makeArray(a(q.ACTIVES)), c.length || (c = null)), !(c && (d = a(c).data(g), d && d._isTransitioning))) {
                                    var e = a.Event(n.SHOW);
                                    if (a(this._element).trigger(e), !e.isDefaultPrevented()) {
                                        c && (h._jQueryInterface.call(a(c), "hide"), d || a(c).data(g, null));
                                        var i = this._getDimension();
                                        a(this._element).removeClass(o.COLLAPSE).addClass(o.COLLAPSING), this._element.style[i] = 0, this._element.setAttribute("aria-expanded", !0), this._triggerArray.length && a(this._triggerArray).removeClass(o.COLLAPSED).attr("aria-expanded", !0), this.setTransitioning(!0);
                                        var j = function() {
                                            a(b._element).removeClass(o.COLLAPSING).addClass(o.COLLAPSE).addClass(o.IN), b._element.style[i] = "", b.setTransitioning(!1), a(b._element).trigger(n.SHOWN)
                                        };
                                        if (!f.supportsTransitionEnd()) return void j();
                                        var l = i[0].toUpperCase() + i.slice(1),
                                            m = "scroll" + l;
                                        a(this._element).one(f.TRANSITION_END, j).emulateTransitionEnd(k), this._element.style[i] = this._element[m] + "px"
                                    }
                                }
                            }
                        }
                    }, {
                        key: "hide",
                        value: function() {
                            var b = this;
                            if (!this._isTransitioning && a(this._element).hasClass(o.IN)) {
                                var c = a.Event(n.HIDE);
                                if (a(this._element).trigger(c), !c.isDefaultPrevented()) {
                                    var d = this._getDimension(),
                                        e = d === p.WIDTH ? "offsetWidth" : "offsetHeight";
                                    this._element.style[d] = this._element[e] + "px", f.reflow(this._element), a(this._element).addClass(o.COLLAPSING).removeClass(o.COLLAPSE).removeClass(o.IN), this._element.setAttribute("aria-expanded", !1), this._triggerArray.length && a(this._triggerArray).addClass(o.COLLAPSED).attr("aria-expanded", !1), this.setTransitioning(!0);
                                    var g = function() {
                                        b.setTransitioning(!1), a(b._element).removeClass(o.COLLAPSING).addClass(o.COLLAPSE).trigger(n.HIDDEN)
                                    };
                                    return this._element.style[d] = 0, f.supportsTransitionEnd() ? void a(this._element).one(f.TRANSITION_END, g).emulateTransitionEnd(k) : void g()
                                }
                            }
                        }
                    }, {
                        key: "setTransitioning",
                        value: function(a) {
                            this._isTransitioning = a
                        }
                    }, {
                        key: "dispose",
                        value: function() {
                            a.removeData(this._element, g), this._config = null, this._parent = null, this._element = null, this._triggerArray = null, this._isTransitioning = null
                        }
                    }, {
                        key: "_getConfig",
                        value: function(c) {
                            return c = a.extend({}, l, c), c.toggle = Boolean(c.toggle), f.typeCheckConfig(b, c, m), c
                        }
                    }, {
                        key: "_getDimension",
                        value: function() {
                            var b = a(this._element).hasClass(p.WIDTH);
                            return b ? p.WIDTH : p.HEIGHT
                        }
                    }, {
                        key: "_getParent",
                        value: function() {
                            var b = this,
                                c = a(this._config.parent)[0],
                                d = '[data-toggle="collapse"][data-parent="' + this._config.parent + '"]';
                            return a(c).find(d).each(function(a, c) {
                                b._addAriaAndCollapsedClass(h._getTargetFromElement(c), [c])
                            }), c
                        }
                    }, {
                        key: "_addAriaAndCollapsedClass",
                        value: function(b, c) {
                            if (b) {
                                var d = a(b).hasClass(o.IN);
                                b.setAttribute("aria-expanded", d), c.length && a(c).toggleClass(o.COLLAPSED, !d).attr("aria-expanded", d)
                            }
                        }
                    }], [{
                        key: "_getTargetFromElement",
                        value: function(b) {
                            var c = f.getSelectorFromElement(b);
                            return c ? a(c)[0] : null
                        }
                    }, {
                        key: "_jQueryInterface",
                        value: function(b) {
                            return this.each(function() {
                                var c = a(this),
                                    d = c.data(g),
                                    e = a.extend({}, l, c.data(), "object" == typeof b && b);
                                if (!d && e.toggle && /show|hide/.test(b) && (e.toggle = !1), d || (d = new h(this, e), c.data(g, d)), "string" == typeof b) {
                                    if (void 0 === d[b]) throw new Error('No method named "' + b + '"');
                                    d[b]()
                                }
                            })
                        }
                    }, {
                        key: "VERSION",
                        get: function() {
                            return d
                        }
                    }, {
                        key: "Default",
                        get: function() {
                            return l
                        }
                    }]), h
                }();
            return a(document).on(n.CLICK_DATA_API, q.DATA_TOGGLE, function(b) {
                b.preventDefault();
                var c = r._getTargetFromElement(this),
                    d = a(c).data(g),
                    e = d ? "toggle" : a(this).data();
                r._jQueryInterface.call(a(c), e)
            }), a.fn[b] = r._jQueryInterface, a.fn[b].Constructor = r, a.fn[b].noConflict = function() {
                return a.fn[b] = j, r._jQueryInterface
            }, r
        }(jQuery), function(a) {
            var b = "dropdown",
                d = "4.0.0-alpha",
                g = "bs.dropdown",
                h = "." + g,
                i = ".data-api",
                j = a.fn[b],
                k = {
                    HIDE: "hide" + h,
                    HIDDEN: "hidden" + h,
                    SHOW: "show" + h,
                    SHOWN: "shown" + h,
                    CLICK: "click" + h,
                    CLICK_DATA_API: "click" + h + i,
                    KEYDOWN_DATA_API: "keydown" + h + i
                },
                l = {
                    BACKDROP: "dropdown-backdrop",
                    DISABLED: "disabled",
                    OPEN: "open"
                },
                m = {
                    BACKDROP: ".dropdown-backdrop",
                    DATA_TOGGLE: '[data-toggle="dropdown"]',
                    FORM_CHILD: ".dropdown form",
                    ROLE_MENU: '[role="menu"]',
                    ROLE_LISTBOX: '[role="listbox"]',
                    NAVBAR_NAV: ".navbar-nav",
                    VISIBLE_ITEMS: '[role="menu"] li:not(.disabled) a, [role="listbox"] li:not(.disabled) a'
                },
                n = function() {
                    function b(a) {
                        c(this, b), this._element = a, this._addEventListeners()
                    }
                    return e(b, [{
                        key: "toggle",
                        value: function() {
                            if (this.disabled || a(this).hasClass(l.DISABLED)) return !1;
                            var c = b._getParentFromElement(this),
                                d = a(c).hasClass(l.OPEN);
                            if (b._clearMenus(), d) return !1;
                            if ("ontouchstart" in document.documentElement && !a(c).closest(m.NAVBAR_NAV).length) {
                                var e = document.createElement("div");
                                e.className = l.BACKDROP, a(e).insertBefore(this), a(e).on("click", b._clearMenus)
                            }
                            var f = {
                                    relatedTarget: this
                                },
                                g = a.Event(k.SHOW, f);
                            return a(c).trigger(g), g.isDefaultPrevented() ? !1 : (this.focus(), this.setAttribute("aria-expanded", "true"), a(c).toggleClass(l.OPEN), a(c).trigger(a.Event(k.SHOWN, f)), !1)
                        }
                    }, {
                        key: "dispose",
                        value: function() {
                            a.removeData(this._element, g), a(this._element).off(h), this._element = null
                        }
                    }, {
                        key: "_addEventListeners",
                        value: function() {
                            a(this._element).on(k.CLICK, this.toggle)
                        }
                    }], [{
                        key: "_jQueryInterface",
                        value: function(c) {
                            return this.each(function() {
                                var d = a(this).data(g);
                                if (d || a(this).data(g, d = new b(this)), "string" == typeof c) {
                                    if (void 0 === d[c]) throw new Error('No method named "' + c + '"');
                                    d[c].call(this)
                                }
                            })
                        }
                    }, {
                        key: "_clearMenus",
                        value: function(c) {
                            if (!c || 3 !== c.which) {
                                var d = a(m.BACKDROP)[0];
                                d && d.parentNode.removeChild(d);
                                for (var e = a.makeArray(a(m.DATA_TOGGLE)), f = 0; f < e.length; f++) {
                                    var g = b._getParentFromElement(e[f]),
                                        h = {
                                            relatedTarget: e[f]
                                        };
                                    if (a(g).hasClass(l.OPEN) && !(c && "click" === c.type && /input|textarea/i.test(c.target.tagName) && a.contains(g, c.target))) {
                                        var i = a.Event(k.HIDE, h);
                                        a(g).trigger(i), i.isDefaultPrevented() || (e[f].setAttribute("aria-expanded", "false"), a(g).removeClass(l.OPEN).trigger(a.Event(k.HIDDEN, h)))
                                    }
                                }
                            }
                        }
                    }, {
                        key: "_getParentFromElement",
                        value: function(b) {
                            var c = void 0,
                                d = f.getSelectorFromElement(b);
                            return d && (c = a(d)[0]), c || b.parentNode
                        }
                    }, {
                        key: "_dataApiKeydownHandler",
                        value: function(c) {
                            if (/(38|40|27|32)/.test(c.which) && !/input|textarea/i.test(c.target.tagName) && (c.preventDefault(), c.stopPropagation(), !this.disabled && !a(this).hasClass(l.DISABLED))) {
                                var d = b._getParentFromElement(this),
                                    e = a(d).hasClass(l.OPEN);
                                if (!e && 27 !== c.which || e && 27 === c.which) {
                                    if (27 === c.which) {
                                        var f = a(d).find(m.DATA_TOGGLE)[0];
                                        a(f).trigger("focus")
                                    }
                                    return void a(this).trigger("click")
                                }
                                var g = a.makeArray(a(m.VISIBLE_ITEMS));
                                if (g = g.filter(function(a) {
                                        return a.offsetWidth || a.offsetHeight
                                    }), g.length) {
                                    var h = g.indexOf(c.target);
                                    38 === c.which && h > 0 && h--, 40 === c.which && h < g.length - 1 && h++, ~h || (h = 0), g[h].focus()
                                }
                            }
                        }
                    }, {
                        key: "VERSION",
                        get: function() {
                            return d
                        }
                    }]), b
                }();
            return a(document).on(k.KEYDOWN_DATA_API, m.DATA_TOGGLE, n._dataApiKeydownHandler).on(k.KEYDOWN_DATA_API, m.ROLE_MENU, n._dataApiKeydownHandler).on(k.KEYDOWN_DATA_API, m.ROLE_LISTBOX, n._dataApiKeydownHandler).on(k.CLICK_DATA_API, n._clearMenus).on(k.CLICK_DATA_API, m.DATA_TOGGLE, n.prototype.toggle).on(k.CLICK_DATA_API, m.FORM_CHILD, function(a) {
                a.stopPropagation()
            }), a.fn[b] = n._jQueryInterface, a.fn[b].Constructor = n, a.fn[b].noConflict = function() {
                return a.fn[b] = j, n._jQueryInterface
            }, n
        }(jQuery), function(a) {
            var b = "modal",
                d = "4.0.0-alpha",
                g = "bs.modal",
                h = "." + g,
                i = ".data-api",
                j = a.fn[b],
                k = 300,
                l = 150,
                m = {
                    backdrop: !0,
                    keyboard: !0,
                    focus: !0,
                    show: !0
                },
                n = {
                    backdrop: "(boolean|string)",
                    keyboard: "boolean",
                    focus: "boolean",
                    show: "boolean"
                },
                o = {
                    HIDE: "hide" + h,
                    HIDDEN: "hidden" + h,
                    SHOW: "show" + h,
                    SHOWN: "shown" + h,
                    FOCUSIN: "focusin" + h,
                    RESIZE: "resize" + h,
                    CLICK_DISMISS: "click.dismiss" + h,
                    KEYDOWN_DISMISS: "keydown.dismiss" + h,
                    MOUSEUP_DISMISS: "mouseup.dismiss" + h,
                    MOUSEDOWN_DISMISS: "mousedown.dismiss" + h,
                    CLICK_DATA_API: "click" + h + i
                },
                p = {
                    SCROLLBAR_MEASURER: "modal-scrollbar-measure",
                    BACKDROP: "modal-backdrop",
                    OPEN: "modal-open",
                    FADE: "fade",
                    IN: "in"
                },
                q = {
                    DIALOG: ".modal-dialog",
                    DATA_TOGGLE: '[data-toggle="modal"]',
                    DATA_DISMISS: '[data-dismiss="modal"]',
                    FIXED_CONTENT: ".navbar-fixed-top, .navbar-fixed-bottom, .is-fixed"
                },
                r = function() {
                    function i(b, d) {
                        c(this, i), this._config = this._getConfig(d), this._element = b, this._dialog = a(b).find(q.DIALOG)[0], this._backdrop = null, this._isShown = !1, this._isBodyOverflowing = !1, this._ignoreBackdropClick = !1, this._originalBodyPadding = 0, this._scrollbarWidth = 0
                    }
                    return e(i, [{
                        key: "toggle",
                        value: function(a) {
                            return this._isShown ? this.hide() : this.show(a)
                        }
                    }, {
                        key: "show",
                        value: function(b) {
                            var c = this,
                                d = a.Event(o.SHOW, {
                                    relatedTarget: b
                                });
                            a(this._element).trigger(d), this._isShown || d.isDefaultPrevented() || (this._isShown = !0, this._checkScrollbar(), this._setScrollbar(), a(document.body).addClass(p.OPEN), this._setEscapeEvent(), this._setResizeEvent(), a(this._element).on(o.CLICK_DISMISS, q.DATA_DISMISS, a.proxy(this.hide, this)), a(this._dialog).on(o.MOUSEDOWN_DISMISS, function() {
                                a(c._element).one(o.MOUSEUP_DISMISS, function(b) {
                                    a(b.target).is(c._element) && (c._ignoreBackdropClick = !0)
                                })
                            }), this._showBackdrop(a.proxy(this._showElement, this, b)))
                        }
                    }, {
                        key: "hide",
                        value: function(b) {
                            b && b.preventDefault();
                            var c = a.Event(o.HIDE);
                            a(this._element).trigger(c), this._isShown && !c.isDefaultPrevented() && (this._isShown = !1, this._setEscapeEvent(), this._setResizeEvent(), a(document).off(o.FOCUSIN), a(this._element).removeClass(p.IN), a(this._element).off(o.CLICK_DISMISS), a(this._dialog).off(o.MOUSEDOWN_DISMISS), f.supportsTransitionEnd() && a(this._element).hasClass(p.FADE) ? a(this._element).one(f.TRANSITION_END, a.proxy(this._hideModal, this)).emulateTransitionEnd(k) : this._hideModal())
                        }
                    }, {
                        key: "dispose",
                        value: function() {
                            a.removeData(this._element, g), a(window).off(h), a(document).off(h), a(this._element).off(h), a(this._backdrop).off(h), this._config = null, this._element = null, this._dialog = null, this._backdrop = null, this._isShown = null, this._isBodyOverflowing = null, this._ignoreBackdropClick = null, this._originalBodyPadding = null, this._scrollbarWidth = null
                        }
                    }, {
                        key: "_getConfig",
                        value: function(c) {
                            return c = a.extend({}, m, c), f.typeCheckConfig(b, c, n), c
                        }
                    }, {
                        key: "_showElement",
                        value: function(b) {
                            var c = this,
                                d = f.supportsTransitionEnd() && a(this._element).hasClass(p.FADE);
                            this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE || document.body.appendChild(this._element), this._element.style.display = "block", this._element.scrollTop = 0, d && f.reflow(this._element), a(this._element).addClass(p.IN), this._config.focus && this._enforceFocus();
                            var e = a.Event(o.SHOWN, {
                                    relatedTarget: b
                                }),
                                g = function() {
                                    c._config.focus && c._element.focus(), a(c._element).trigger(e)
                                };
                            d ? a(this._dialog).one(f.TRANSITION_END, g).emulateTransitionEnd(k) : g()
                        }
                    }, {
                        key: "_enforceFocus",
                        value: function() {
                            var b = this;
                            a(document).off(o.FOCUSIN).on(o.FOCUSIN, function(c) {
                                b._element === c.target || a(b._element).has(c.target).length || b._element.focus()
                            })
                        }
                    }, {
                        key: "_setEscapeEvent",
                        value: function() {
                            var b = this;
                            this._isShown && this._config.keyboard ? a(this._element).on(o.KEYDOWN_DISMISS, function(a) {
                                27 === a.which && b.hide()
                            }) : this._isShown || a(this._element).off(o.KEYDOWN_DISMISS)
                        }
                    }, {
                        key: "_setResizeEvent",
                        value: function() {
                            this._isShown ? a(window).on(o.RESIZE, a.proxy(this._handleUpdate, this)) : a(window).off(o.RESIZE)
                        }
                    }, {
                        key: "_hideModal",
                        value: function() {
                            var b = this;
                            this._element.style.display = "none", this._showBackdrop(function() {
                                a(document.body).removeClass(p.OPEN), b._resetAdjustments(), b._resetScrollbar(), a(b._element).trigger(o.HIDDEN)
                            })
                        }
                    }, {
                        key: "_removeBackdrop",
                        value: function() {
                            this._backdrop && (a(this._backdrop).remove(), this._backdrop = null)
                        }
                    }, {
                        key: "_showBackdrop",
                        value: function(b) {
                            var c = this,
                                d = a(this._element).hasClass(p.FADE) ? p.FADE : "";
                            if (this._isShown && this._config.backdrop) {
                                var e = f.supportsTransitionEnd() && d;
                                if (this._backdrop = document.createElement("div"), this._backdrop.className = p.BACKDROP, d && a(this._backdrop).addClass(d), a(this._backdrop).appendTo(document.body), a(this._element).on(o.CLICK_DISMISS, function(a) {
                                        return c._ignoreBackdropClick ? void(c._ignoreBackdropClick = !1) : void(a.target === a.currentTarget && ("static" === c._config.backdrop ? c._element.focus() : c.hide()))
                                    }), e && f.reflow(this._backdrop), a(this._backdrop).addClass(p.IN), !b) return;
                                if (!e) return void b();
                                a(this._backdrop).one(f.TRANSITION_END, b).emulateTransitionEnd(l)
                            } else if (!this._isShown && this._backdrop) {
                                a(this._backdrop).removeClass(p.IN);
                                var g = function() {
                                    c._removeBackdrop(), b && b()
                                };
                                f.supportsTransitionEnd() && a(this._element).hasClass(p.FADE) ? a(this._backdrop).one(f.TRANSITION_END, g).emulateTransitionEnd(l) : g()
                            } else b && b()
                        }
                    }, {
                        key: "_handleUpdate",
                        value: function() {
                            this._adjustDialog()
                        }
                    }, {
                        key: "_adjustDialog",
                        value: function() {
                            var a = this._element.scrollHeight > document.documentElement.clientHeight;
                            !this._isBodyOverflowing && a && (this._element.style.paddingLeft = this._scrollbarWidth + "px"), this._isBodyOverflowing && !a && (this._element.style.paddingRight = this._scrollbarWidth + "px~")
                        }
                    }, {
                        key: "_resetAdjustments",
                        value: function() {
                            this._element.style.paddingLeft = "", this._element.style.paddingRight = ""
                        }
                    }, {
                        key: "_checkScrollbar",
                        value: function() {
                            var a = window.innerWidth;
                            if (!a) {
                                var b = document.documentElement.getBoundingClientRect();
                                a = b.right - Math.abs(b.left)
                            }
                            this._isBodyOverflowing = document.body.clientWidth < a, this._scrollbarWidth = this._getScrollbarWidth()
                        }
                    }, {
                        key: "_setScrollbar",
                        value: function() {
                            var b = parseInt(a(q.FIXED_CONTENT).css("padding-right") || 0, 10);
                            this._originalBodyPadding = document.body.style.paddingRight || "", this._isBodyOverflowing && (document.body.style.paddingRight = b + this._scrollbarWidth + "px")
                        }
                    }, {
                        key: "_resetScrollbar",
                        value: function() {
                            document.body.style.paddingRight = this._originalBodyPadding
                        }
                    }, {
                        key: "_getScrollbarWidth",
                        value: function() {
                            var a = document.createElement("div");
                            a.className = p.SCROLLBAR_MEASURER, document.body.appendChild(a);
                            var b = a.offsetWidth - a.clientWidth;
                            return document.body.removeChild(a), b
                        }
                    }], [{
                        key: "_jQueryInterface",
                        value: function(b, c) {
                            return this.each(function() {
                                var d = a(this).data(g),
                                    e = a.extend({}, i.Default, a(this).data(), "object" == typeof b && b);
                                if (d || (d = new i(this, e), a(this).data(g, d)), "string" == typeof b) {
                                    if (void 0 === d[b]) throw new Error('No method named "' + b + '"');
                                    d[b](c)
                                } else e.show && d.show(c)
                            })
                        }
                    }, {
                        key: "VERSION",
                        get: function() {
                            return d
                        }
                    }, {
                        key: "Default",
                        get: function() {
                            return m
                        }
                    }]), i
                }();
            return a(document).on(o.CLICK_DATA_API, q.DATA_TOGGLE, function(b) {
                var c = this,
                    d = void 0,
                    e = f.getSelectorFromElement(this);
                e && (d = a(e)[0]);
                var h = a(d).data(g) ? "toggle" : a.extend({}, a(d).data(), a(this).data());
                "A" === this.tagName && b.preventDefault();
                var i = a(d).one(o.SHOW, function(b) {
                    b.isDefaultPrevented() || i.one(o.HIDDEN, function() {
                        a(c).is(":visible") && c.focus()
                    })
                });
                r._jQueryInterface.call(a(d), h, this)
            }), a.fn[b] = r._jQueryInterface, a.fn[b].Constructor = r, a.fn[b].noConflict = function() {
                return a.fn[b] = j, r._jQueryInterface
            }, r
        }(jQuery), function(a) {
            var b = "scrollspy",
                d = "4.0.0-alpha",
                g = "bs.scrollspy",
                h = "." + g,
                i = ".data-api",
                j = a.fn[b],
                k = {
                    offset: 10,
                    method: "auto",
                    target: ""
                },
                l = {
                    offset: "number",
                    method: "string",
                    target: "(string|element)"
                },
                m = {
                    ACTIVATE: "activate" + h,
                    SCROLL: "scroll" + h,
                    LOAD_DATA_API: "load" + h + i
                },
                n = {
                    DROPDOWN_ITEM: "dropdown-item",
                    DROPDOWN_MENU: "dropdown-menu",
                    NAV_LINK: "nav-link",
                    NAV: "nav",
                    ACTIVE: "active"
                },
                o = {
                    DATA_SPY: '[data-spy="scroll"]',
                    ACTIVE: ".active",
                    LIST_ITEM: ".list-item",
                    LI: "li",
                    LI_DROPDOWN: "li.dropdown",
                    NAV_LINKS: ".nav-link",
                    DROPDOWN: ".dropdown",
                    DROPDOWN_ITEMS: ".dropdown-item",
                    DROPDOWN_TOGGLE: ".dropdown-toggle"
                },
                p = {
                    OFFSET: "offset",
                    POSITION: "position"
                },
                q = function() {
                    function i(b, d) {
                        c(this, i), this._element = b, this._scrollElement = "BODY" === b.tagName ? window : b, this._config = this._getConfig(d), this._selector = this._config.target + " " + o.NAV_LINKS + "," + (this._config.target + " " + o.DROPDOWN_ITEMS), this._offsets = [], this._targets = [], this._activeTarget = null, this._scrollHeight = 0, a(this._scrollElement).on(m.SCROLL, a.proxy(this._process, this)), this.refresh(), this._process()
                    }
                    return e(i, [{
                        key: "refresh",
                        value: function() {
                            var b = this,
                                c = this._scrollElement !== this._scrollElement.window ? p.POSITION : p.OFFSET,
                                d = "auto" === this._config.method ? c : this._config.method,
                                e = d === p.POSITION ? this._getScrollTop() : 0;
                            this._offsets = [], this._targets = [], this._scrollHeight = this._getScrollHeight();
                            var g = a.makeArray(a(this._selector));
                            g.map(function(b) {
                                var c = void 0,
                                    g = f.getSelectorFromElement(b);
                                return g && (c = a(g)[0]), c && (c.offsetWidth || c.offsetHeight) ? [a(c)[d]().top + e, g] : void 0
                            }).filter(function(a) {
                                return a
                            }).sort(function(a, b) {
                                return a[0] - b[0]
                            }).forEach(function(a) {
                                b._offsets.push(a[0]), b._targets.push(a[1])
                            })
                        }
                    }, {
                        key: "dispose",
                        value: function() {
                            a.removeData(this._element, g), a(this._scrollElement).off(h), this._element = null, this._scrollElement = null, this._config = null, this._selector = null, this._offsets = null, this._targets = null, this._activeTarget = null, this._scrollHeight = null
                        }
                    }, {
                        key: "_getConfig",
                        value: function(c) {
                            if (c = a.extend({}, k, c), "string" != typeof c.target) {
                                var d = a(c.target).attr("id");
                                d || (d = f.getUID(b), a(c.target).attr("id", d)), c.target = "#" + d
                            }
                            return f.typeCheckConfig(b, c, l), c
                        }
                    }, {
                        key: "_getScrollTop",
                        value: function() {
                            return this._scrollElement === window ? this._scrollElement.scrollY : this._scrollElement.scrollTop
                        }
                    }, {
                        key: "_getScrollHeight",
                        value: function() {
                            return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight)
                        }
                    }, {
                        key: "_process",
                        value: function() {
                            var a = this._getScrollTop() + this._config.offset,
                                b = this._getScrollHeight(),
                                c = this._config.offset + b - this._scrollElement.offsetHeight;
                            if (this._scrollHeight !== b && this.refresh(), a >= c) {
                                var d = this._targets[this._targets.length - 1];
                                this._activeTarget !== d && this._activate(d)
                            }
                            if (this._activeTarget && a < this._offsets[0]) return this._activeTarget = null, void this._clear();
                            for (var e = this._offsets.length; e--;) {
                                var f = this._activeTarget !== this._targets[e] && a >= this._offsets[e] && (void 0 === this._offsets[e + 1] || a < this._offsets[e + 1]);
                                f && this._activate(this._targets[e])
                            }
                        }
                    }, {
                        key: "_activate",
                        value: function(b) {
                            this._activeTarget = b, this._clear();
                            var c = this._selector.split(",");
                            c = c.map(function(a) {
                                return a + '[data-target="' + b + '"],' + (a + '[href="' + b + '"]')
                            });
                            var d = a(c.join(","));
                            d.hasClass(n.DROPDOWN_ITEM) ? (d.closest(o.DROPDOWN).find(o.DROPDOWN_TOGGLE).addClass(n.ACTIVE), d.addClass(n.ACTIVE)) : d.parents(o.LI).find(o.NAV_LINKS).addClass(n.ACTIVE), a(this._scrollElement).trigger(m.ACTIVATE, {
                                relatedTarget: b
                            })
                        }
                    }, {
                        key: "_clear",
                        value: function() {
                            a(this._selector).filter(o.ACTIVE).removeClass(n.ACTIVE)
                        }
                    }], [{
                        key: "_jQueryInterface",
                        value: function(b) {
                            return this.each(function() {
                                var c = a(this).data(g),
                                    d = "object" == typeof b && b || null;
                                if (c || (c = new i(this, d), a(this).data(g, c)), "string" == typeof b) {
                                    if (void 0 === c[b]) throw new Error('No method named "' + b + '"');
                                    c[b]()
                                }
                            })
                        }
                    }, {
                        key: "VERSION",
                        get: function() {
                            return d
                        }
                    }, {
                        key: "Default",
                        get: function() {
                            return k
                        }
                    }]), i
                }();
            return a(window).on(m.LOAD_DATA_API, function() {
                for (var b = a.makeArray(a(o.DATA_SPY)), c = b.length; c--;) {
                    var d = a(b[c]);
                    q._jQueryInterface.call(d, d.data())
                }
            }), a.fn[b] = q._jQueryInterface, a.fn[b].Constructor = q, a.fn[b].noConflict = function() {
                return a.fn[b] = j, q._jQueryInterface
            }, q
        }(jQuery), function(a) {
            var b = "tab",
                d = "4.0.0-alpha",
                g = "bs.tab",
                h = "." + g,
                i = ".data-api",
                j = a.fn[b],
                k = 150,
                l = {
                    HIDE: "hide" + h,
                    HIDDEN: "hidden" + h,
                    SHOW: "show" + h,
                    SHOWN: "shown" + h,
                    CLICK_DATA_API: "click" + h + i
                },
                m = {
                    DROPDOWN_MENU: "dropdown-menu",
                    ACTIVE: "active",
                    FADE: "fade",
                    IN: "in"
                },
                n = {
                    A: "a",
                    LI: "li",
                    DROPDOWN: ".dropdown",
                    UL: "ul:not(.dropdown-menu)",
                    FADE_CHILD: "> .nav-item .fade, > .fade",
                    ACTIVE: ".active",
                    ACTIVE_CHILD: "> .nav-item > .active, > .active",
                    DATA_TOGGLE: '[data-toggle="tab"], [data-toggle="pill"]',
                    DROPDOWN_TOGGLE: ".dropdown-toggle",
                    DROPDOWN_ACTIVE_CHILD: "> .dropdown-menu .active"
                },
                o = function() {
                    function b(a) {
                        c(this, b), this._element = a
                    }
                    return e(b, [{
                        key: "show",
                        value: function() {
                            var b = this;
                            if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE || !a(this._element).hasClass(m.ACTIVE)) {
                                var c = void 0,
                                    d = void 0,
                                    e = a(this._element).closest(n.UL)[0],
                                    g = f.getSelectorFromElement(this._element);
                                e && (d = a.makeArray(a(e).find(n.ACTIVE)), d = d[d.length - 1]);
                                var h = a.Event(l.HIDE, {
                                        relatedTarget: this._element
                                    }),
                                    i = a.Event(l.SHOW, {
                                        relatedTarget: d
                                    });
                                if (d && a(d).trigger(h), a(this._element).trigger(i), !i.isDefaultPrevented() && !h.isDefaultPrevented()) {
                                    g && (c = a(g)[0]), this._activate(this._element, e);
                                    var j = function() {
                                        var c = a.Event(l.HIDDEN, {
                                                relatedTarget: b._element
                                            }),
                                            e = a.Event(l.SHOWN, {
                                                relatedTarget: d
                                            });
                                        a(d).trigger(c), a(b._element).trigger(e)
                                    };
                                    c ? this._activate(c, c.parentNode, j) : j()
                                }
                            }
                        }
                    }, {
                        key: "dispose",
                        value: function() {
                            a.removeClass(this._element, g), this._element = null
                        }
                    }, {
                        key: "_activate",
                        value: function(b, c, d) {
                            var e = a(c).find(n.ACTIVE_CHILD)[0],
                                g = d && f.supportsTransitionEnd() && (e && a(e).hasClass(m.FADE) || Boolean(a(c).find(n.FADE_CHILD)[0])),
                                h = a.proxy(this._transitionComplete, this, b, e, g, d);
                            e && g ? a(e).one(f.TRANSITION_END, h).emulateTransitionEnd(k) : h(), e && a(e).removeClass(m.IN)
                        }
                    }, {
                        key: "_transitionComplete",
                        value: function(b, c, d, e) {
                            if (c) {
                                a(c).removeClass(m.ACTIVE);
                                var g = a(c).find(n.DROPDOWN_ACTIVE_CHILD)[0];
                                g && a(g).removeClass(m.ACTIVE), c.setAttribute("aria-expanded", !1)
                            }
                            if (a(b).addClass(m.ACTIVE), b.setAttribute("aria-expanded", !0), d ? (f.reflow(b), a(b).addClass(m.IN)) : a(b).removeClass(m.FADE), b.parentNode && a(b.parentNode).hasClass(m.DROPDOWN_MENU)) {
                                var h = a(b).closest(n.DROPDOWN)[0];
                                h && a(h).find(n.DROPDOWN_TOGGLE).addClass(m.ACTIVE), b.setAttribute("aria-expanded", !0)
                            }
                            e && e()
                        }
                    }], [{
                        key: "_jQueryInterface",
                        value: function(c) {
                            return this.each(function() {
                                var d = a(this),
                                    e = d.data(g);
                                if (e || (e = e = new b(this), d.data(g, e)), "string" == typeof c) {
                                    if (void 0 === e[c]) throw new Error('No method named "' + c + '"');
                                    e[c]()
                                }
                            })
                        }
                    }, {
                        key: "VERSION",
                        get: function() {
                            return d
                        }
                    }]), b
                }();
            return a(document).on(l.CLICK_DATA_API, n.DATA_TOGGLE, function(b) {
                b.preventDefault(), o._jQueryInterface.call(a(this), "show")
            }), a.fn[b] = o._jQueryInterface, a.fn[b].Constructor = o, a.fn[b].noConflict = function() {
                return a.fn[b] = j, o._jQueryInterface
            }, o
        }(jQuery), function(a) {
            if (void 0 === window.Tether) throw new Error("Bootstrap tooltips require Tether (http://github.hubspot.com/tether/)");
            var b = "tooltip",
                d = "4.0.0-alpha",
                g = "bs.tooltip",
                h = "." + g,
                i = a.fn[b],
                j = 150,
                k = "bs-tether",
                l = {
                    animation: !0,
                    template: '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',
                    trigger: "hover focus",
                    title: "",
                    delay: 0,
                    html: !1,
                    selector: !1,
                    placement: "top",
                    offset: "0 0",
                    constraints: []
                },
                m = {
                    animation: "boolean",
                    template: "string",
                    title: "(string|element|function)",
                    trigger: "string",
                    delay: "(number|object)",
                    html: "boolean",
                    selector: "(string|boolean)",
                    placement: "(string|function)",
                    offset: "string",
                    constraints: "array"
                },
                n = {
                    TOP: "bottom center",
                    RIGHT: "middle left",
                    BOTTOM: "top center",
                    LEFT: "middle right"
                },
                o = {
                    IN: "in",
                    OUT: "out"
                },
                p = {
                    HIDE: "hide" + h,
                    HIDDEN: "hidden" + h,
                    SHOW: "show" + h,
                    SHOWN: "shown" + h,
                    INSERTED: "inserted" + h,
                    CLICK: "click" + h,
                    FOCUSIN: "focusin" + h,
                    FOCUSOUT: "focusout" + h,
                    MOUSEENTER: "mouseenter" + h,
                    MOUSELEAVE: "mouseleave" + h
                },
                q = {
                    FADE: "fade",
                    IN: "in"
                },
                r = {
                    TOOLTIP: ".tooltip",
                    TOOLTIP_INNER: ".tooltip-inner"
                },
                s = {
                    element: !1,
                    enabled: !1
                },
                t = {
                    HOVER: "hover",
                    FOCUS: "focus",
                    CLICK: "click",
                    MANUAL: "manual"
                },
                u = function() {
                    function i(a, b) {
                        c(this, i), this._isEnabled = !0, this._timeout = 0, this._hoverState = "", this._activeTrigger = {}, this._tether = null, this.element = a, this.config = this._getConfig(b), this.tip = null, this._setListeners()
                    }
                    return e(i, [{
                        key: "enable",
                        value: function() {
                            this._isEnabled = !0
                        }
                    }, {
                        key: "disable",
                        value: function() {
                            this._isEnabled = !1
                        }
                    }, {
                        key: "toggleEnabled",
                        value: function() {
                            this._isEnabled = !this._isEnabled
                        }
                    }, {
                        key: "toggle",
                        value: function(b) {
                            if (b) {
                                var c = this.constructor.DATA_KEY,
                                    d = a(b.currentTarget).data(c);
                                d || (d = new this.constructor(b.currentTarget, this._getDelegateConfig()), a(b.currentTarget).data(c, d)), d._activeTrigger.click = !d._activeTrigger.click, d._isWithActiveTrigger() ? d._enter(null, d) : d._leave(null, d)
                            } else {
                                if (a(this.getTipElement()).hasClass(q.IN)) return void this._leave(null, this);
                                this._enter(null, this)
                            }
                        }
                    }, {
                        key: "dispose",
                        value: function() {
                            clearTimeout(this._timeout), this.cleanupTether(), a.removeData(this.element, this.constructor.DATA_KEY), a(this.element).off(this.constructor.EVENT_KEY), this.tip && a(this.tip).remove(), this._isEnabled = null, this._timeout = null, this._hoverState = null, this._activeTrigger = null, this._tether = null, this.element = null, this.config = null, this.tip = null
                        }
                    }, {
                        key: "show",
                        value: function() {
                            var b = this,
                                c = a.Event(this.constructor.Event.SHOW);
                            if (this.isWithContent() && this._isEnabled) {
                                a(this.element).trigger(c);
                                var d = a.contains(this.element.ownerDocument.documentElement, this.element);
                                if (c.isDefaultPrevented() || !d) return;
                                var e = this.getTipElement(),
                                    g = f.getUID(this.constructor.NAME);
                                e.setAttribute("id", g), this.element.setAttribute("aria-describedby", g), this.setContent(), this.config.animation && a(e).addClass(q.FADE);
                                var h = "function" == typeof this.config.placement ? this.config.placement.call(this, e, this.element) : this.config.placement,
                                    j = this._getAttachment(h);
                                a(e).data(this.constructor.DATA_KEY, this).appendTo(document.body), a(this.element).trigger(this.constructor.Event.INSERTED), this._tether = new Tether({
                                    attachment: j,
                                    element: e,
                                    target: this.element,
                                    classes: s,
                                    classPrefix: k,
                                    offset: this.config.offset,
                                    constraints: this.config.constraints,
                                    addTargetClasses: !1
                                }), f.reflow(e), this._tether.position(), a(e).addClass(q.IN);
                                var l = function() {
                                    var c = b._hoverState;
                                    b._hoverState = null, a(b.element).trigger(b.constructor.Event.SHOWN), c === o.OUT && b._leave(null, b)
                                };
                                if (f.supportsTransitionEnd() && a(this.tip).hasClass(q.FADE)) return void a(this.tip).one(f.TRANSITION_END, l).emulateTransitionEnd(i._TRANSITION_DURATION);
                                l()
                            }
                        }
                    }, {
                        key: "hide",
                        value: function(b) {
                            var c = this,
                                d = this.getTipElement(),
                                e = a.Event(this.constructor.Event.HIDE),
                                g = function() {
                                    c._hoverState !== o.IN && d.parentNode && d.parentNode.removeChild(d), c.element.removeAttribute("aria-describedby"), a(c.element).trigger(c.constructor.Event.HIDDEN), c.cleanupTether(), b && b()
                                };
                            a(this.element).trigger(e), e.isDefaultPrevented() || (a(d).removeClass(q.IN), f.supportsTransitionEnd() && a(this.tip).hasClass(q.FADE) ? a(d).one(f.TRANSITION_END, g).emulateTransitionEnd(j) : g(), this._hoverState = "")
                        }
                    }, {
                        key: "isWithContent",
                        value: function() {
                            return Boolean(this.getTitle())
                        }
                    }, {
                        key: "getTipElement",
                        value: function() {
                            return this.tip = this.tip || a(this.config.template)[0]
                        }
                    }, {
                        key: "setContent",
                        value: function() {
                            var b = a(this.getTipElement());
                            this.setElementContent(b.find(r.TOOLTIP_INNER), this.getTitle()), b.removeClass(q.FADE).removeClass(q.IN), this.cleanupTether()
                        }
                    }, {
                        key: "setElementContent",
                        value: function(b, c) {
                            var d = this.config.html;
                            "object" == typeof c && (c.nodeType || c.jquery) ? d ? a(c).parent().is(b) || b.empty().append(c) : b.text(a(c).text()) : b[d ? "html" : "text"](c)
                        }
                    }, {
                        key: "getTitle",
                        value: function() {
                            var a = this.element.getAttribute("data-original-title");
                            return a || (a = "function" == typeof this.config.title ? this.config.title.call(this.element) : this.config.title), a
                        }
                    }, {
                        key: "cleanupTether",
                        value: function() {
                            this._tether && this._tether.destroy()
                        }
                    }, {
                        key: "_getAttachment",
                        value: function(a) {
                            return n[a.toUpperCase()]
                        }
                    }, {
                        key: "_setListeners",
                        value: function() {
                            var b = this,
                                c = this.config.trigger.split(" ");
                            c.forEach(function(c) {
                                if ("click" === c) a(b.element).on(b.constructor.Event.CLICK, b.config.selector, a.proxy(b.toggle, b));
                                else if (c !== t.MANUAL) {
                                    var d = c === t.HOVER ? b.constructor.Event.MOUSEENTER : b.constructor.Event.FOCUSIN,
                                        e = c === t.HOVER ? b.constructor.Event.MOUSELEAVE : b.constructor.Event.FOCUSOUT;
                                    a(b.element).on(d, b.config.selector, a.proxy(b._enter, b)).on(e, b.config.selector, a.proxy(b._leave, b))
                                }
                            }), this.config.selector ? this.config = a.extend({}, this.config, {
                                trigger: "manual",
                                selector: ""
                            }) : this._fixTitle()
                        }
                    }, {
                        key: "_fixTitle",
                        value: function() {
                            var a = typeof this.element.getAttribute("data-original-title");
                            (this.element.getAttribute("title") || "string" !== a) && (this.element.setAttribute("data-original-title", this.element.getAttribute("title") || ""), this.element.setAttribute("title", ""))
                        }
                    }, {
                        key: "_enter",
                        value: function(b, c) {
                            var d = this.constructor.DATA_KEY;
                            return c = c || a(b.currentTarget).data(d), c || (c = new this.constructor(b.currentTarget, this._getDelegateConfig()), a(b.currentTarget).data(d, c)), b && (c._activeTrigger["focusin" === b.type ? t.FOCUS : t.HOVER] = !0), a(c.getTipElement()).hasClass(q.IN) || c._hoverState === o.IN ? void(c._hoverState = o.IN) : (clearTimeout(c._timeout), c._hoverState = o.IN, c.config.delay && c.config.delay.show ? void(c._timeout = setTimeout(function() {
                                c._hoverState === o.IN && c.show()
                            }, c.config.delay.show)) : void c.show())
                        }
                    }, {
                        key: "_leave",
                        value: function(b, c) {
                            var d = this.constructor.DATA_KEY;
                            return c = c || a(b.currentTarget).data(d), c || (c = new this.constructor(b.currentTarget, this._getDelegateConfig()), a(b.currentTarget).data(d, c)), b && (c._activeTrigger["focusout" === b.type ? t.FOCUS : t.HOVER] = !1), c._isWithActiveTrigger() ? void 0 : (clearTimeout(c._timeout), c._hoverState = o.OUT, c.config.delay && c.config.delay.hide ? void(c._timeout = setTimeout(function() {
                                c._hoverState === o.OUT && c.hide()
                            }, c.config.delay.hide)) : void c.hide())
                        }
                    }, {
                        key: "_isWithActiveTrigger",
                        value: function() {
                            for (var a in this._activeTrigger)
                                if (this._activeTrigger[a]) return !0;
                            return !1
                        }
                    }, {
                        key: "_getConfig",
                        value: function(c) {
                            return c = a.extend({}, this.constructor.Default, a(this.element).data(), c), c.delay && "number" == typeof c.delay && (c.delay = {
                                show: c.delay,
                                hide: c.delay
                            }), f.typeCheckConfig(b, c, this.constructor.DefaultType), c
                        }
                    }, {
                        key: "_getDelegateConfig",
                        value: function() {
                            var a = {};
                            if (this.config)
                                for (var b in this.config) this.constructor.Default[b] !== this.config[b] && (a[b] = this.config[b]);
                            return a
                        }
                    }], [{
                        key: "_jQueryInterface",
                        value: function(b) {
                            return this.each(function() {
                                var c = a(this).data(g),
                                    d = "object" == typeof b ? b : null;
                                if ((c || !/destroy|hide/.test(b)) && (c || (c = new i(this, d), a(this).data(g, c)), "string" == typeof b)) {
                                    if (void 0 === c[b]) throw new Error('No method named "' + b + '"');
                                    c[b]()
                                }
                            })
                        }
                    }, {
                        key: "VERSION",
                        get: function() {
                            return d
                        }
                    }, {
                        key: "Default",
                        get: function() {
                            return l
                        }
                    }, {
                        key: "NAME",
                        get: function() {
                            return b
                        }
                    }, {
                        key: "DATA_KEY",
                        get: function() {
                            return g
                        }
                    }, {
                        key: "Event",
                        get: function() {
                            return p
                        }
                    }, {
                        key: "EVENT_KEY",
                        get: function() {
                            return h
                        }
                    }, {
                        key: "DefaultType",
                        get: function() {
                            return m
                        }
                    }]), i
                }();
            return a.fn[b] = u._jQueryInterface, a.fn[b].Constructor = u, a.fn[b].noConflict = function() {
                return a.fn[b] = i, u._jQueryInterface
            }, u
        }(jQuery));
    (function(a) {
        var f = "popover",
            h = "4.0.0-alpha",
            i = "bs.popover",
            j = "." + i,
            k = a.fn[f],
            l = a.extend({}, g.Default, {
                placement: "right",
                trigger: "click",
                content: "",
                template: '<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'
            }),
            m = a.extend({}, g.DefaultType, {
                content: "(string|element|function)"
            }),
            n = {
                FADE: "fade",
                IN: "in"
            },
            o = {
                TITLE: ".popover-title",
                CONTENT: ".popover-content",
                ARROW: ".popover-arrow"
            },
            p = {
                HIDE: "hide" + j,
                HIDDEN: "hidden" + j,
                SHOW: "show" + j,
                SHOWN: "shown" + j,
                INSERTED: "inserted" + j,
                CLICK: "click" + j,
                FOCUSIN: "focusin" + j,
                FOCUSOUT: "focusout" + j,
                MOUSEENTER: "mouseenter" + j,
                MOUSELEAVE: "mouseleave" + j
            },
            q = function(g) {
                function k() {
                    c(this, k), d(Object.getPrototypeOf(k.prototype), "constructor", this).apply(this, arguments)
                }
                return b(k, g), e(k, [{
                    key: "isWithContent",
                    value: function() {
                        return this.getTitle() || this._getContent()
                    }
                }, {
                    key: "getTipElement",
                    value: function() {
                        return this.tip = this.tip || a(this.config.template)[0]
                    }
                }, {
                    key: "setContent",
                    value: function() {
                        var b = a(this.getTipElement());
                        this.setElementContent(b.find(o.TITLE), this.getTitle()), this.setElementContent(b.find(o.CONTENT), this._getContent()), b.removeClass(n.FADE).removeClass(n.IN), this.cleanupTether()
                    }
                }, {
                    key: "_getContent",
                    value: function() {
                        return this.element.getAttribute("data-content") || ("function" == typeof this.config.content ? this.config.content.call(this.element) : this.config.content)
                    }
                }], [{
                    key: "_jQueryInterface",
                    value: function(b) {
                        return this.each(function() {
                            var c = a(this).data(i),
                                d = "object" == typeof b ? b : null;
                            if ((c || !/destroy|hide/.test(b)) && (c || (c = new k(this, d), a(this).data(i, c)), "string" == typeof b)) {
                                if (void 0 === c[b]) throw new Error('No method named "' + b + '"');
                                c[b]()
                            }
                        })
                    }
                }, {
                    key: "VERSION",
                    get: function() {
                        return h
                    }
                }, {
                    key: "Default",
                    get: function() {
                        return l
                    }
                }, {
                    key: "NAME",
                    get: function() {
                        return f
                    }
                }, {
                    key: "DATA_KEY",
                    get: function() {
                        return i
                    }
                }, {
                    key: "Event",
                    get: function() {
                        return p
                    }
                }, {
                    key: "EVENT_KEY",
                    get: function() {
                        return j
                    }
                }, {
                    key: "DefaultType",
                    get: function() {
                        return m
                    }
                }]), k
            }(g);
        return a.fn[f] = q._jQueryInterface, a.fn[f].Constructor = q, a.fn[f].noConflict = function() {
            return a.fn[f] = k, q._jQueryInterface
        }, q
    })(jQuery)
}(jQuery);
                                    

Executed Writes (0)



HTTP Transactions (12)


Request Response
                                        
                                            GET / HTTP/1.1 
Host: dash.sebastian-dernbach.de
                                        
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive

                                         
                                         176.28.16.156
HTTP/1.1 302 Moved Temporarily
Content-Type: text/html
                                        
Date: Sat, 21 Oct 2017 20:31:39 GMT
Server: Apache
X-Powered-By: PHP/5.5.9-1ubuntu4.22, PleskLin
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0, max-age=60, private, proxy-revalidate
Pragma: no-cache
Set-Cookie: PHPSESSID=3719ho664lvga38evbugq6dpc5; path=/
Location: /login.php
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked


--- Additional Info ---
Magic:  exported SGML document text
Size:   10041
Md5:    1098dd36b15180f4380246ca79fb5f64
Sha1:   a4d48bbe778caf0916684cedc0326f3ef0de815e
Sha256: f21c2503f7f5de97d6aa775e17a77b1581b54a2c8f9cb075ea292ab4dc93336b
                                        
                                            GET /login.php HTTP/1.1 
Host: dash.sebastian-dernbach.de
                                        
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Cookie: PHPSESSID=3719ho664lvga38evbugq6dpc5

                                         
                                         176.28.16.156
HTTP/1.1 200 OK
Content-Type: text/html
                                        
Date: Sat, 21 Oct 2017 20:31:39 GMT
Server: Apache
X-Powered-By: PHP/5.5.9-1ubuntu4.22, PleskLin
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0, max-age=0, no-cache, proxy-revalidate
Pragma: no-cache
Vary: Accept-Encoding
X-Mod-Pagespeed: 1.12.34.2-0
Content-Encoding: gzip
Content-Length: 1265
Keep-Alive: timeout=5, max=99
Connection: Keep-Alive


--- Additional Info ---
Magic:  gzip compressed data, from Unix
Size:   1265
Md5:    7ef58601f4bb24f960ccc95600694e3d
Sha1:   285a9483157cde852d01766e28a1efbcfe824e4f
Sha256: cd74c5225e89d08555276c957be8f68dcdd5449eb979f0cc168cc0958304f2f1

Alerts:
  Blacklists:
    - fortinet: Phishing
                                        
                                            GET /assets/js/libs/Chart.min.js.pagespeed.jm.VvHw3CUEc6.js HTTP/1.1 
Host: dash.sebastian-dernbach.de
                                        
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: */*
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://dash.sebastian-dernbach.de/login.php
Cookie: PHPSESSID=3719ho664lvga38evbugq6dpc5

                                         
                                         176.28.16.156
HTTP/1.1 200 OK
Content-Type: application/javascript
                                        
Date: Sat, 21 Oct 2017 20:31:39 GMT
Server: Apache
Accept-Ranges: bytes
X-Powered-By: PleskLin
Expires: Sun, 21 Oct 2018 16:31:43 GMT
Cache-Control: max-age=31536000
Etag: W/"0"
Last-Modified: Sat, 21 Oct 2017 16:31:43 GMT
X-Original-Content-Length: 52091
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 11489
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive


--- Additional Info ---
Magic:  gzip compressed data, from Unix, max compression
Size:   11489
Md5:    dbaa3a4f5dbb961e572af3ee93098695
Sha1:   4e0b6aa807becb5a3da4c99eb3513078189d78db
Sha256: 91b5e8312f4a7e7c65cc465c6eda78e93b63b5d5a4953e41ffc97fea6445ac98
                                        
                                            GET /assets/css/A.style.css.pagespeed.cf.Q2Gqx1i4kh.css HTTP/1.1 
Host: dash.sebastian-dernbach.de
                                        
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: text/css,*/*;q=0.1
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://dash.sebastian-dernbach.de/login.php
Cookie: PHPSESSID=3719ho664lvga38evbugq6dpc5

                                         
                                         176.28.16.156
HTTP/1.1 200 OK
Content-Type: text/css
                                        
Date: Sat, 21 Oct 2017 20:31:39 GMT
Server: Apache
Accept-Ranges: bytes
X-Powered-By: PleskLin
Expires: Sun, 21 Oct 2018 20:31:38 GMT
Cache-Control: max-age=31536000
Etag: W/"0"
Last-Modified: Sat, 21 Oct 2017 20:31:38 GMT
X-Original-Content-Length: 438141
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 52920
Keep-Alive: timeout=5, max=98
Connection: Keep-Alive


--- Additional Info ---
Magic:  gzip compressed data, from Unix, max compression
Size:   52920
Md5:    804401f8ecb1c6762bcba3b88614a9ad
Sha1:   38329b3ffdc6f77122790798b8cade50f504e2cb
Sha256: c390887beb361cdfdf77b3337fa1eb933eb33e03b0ea456498bb9fd5082da127
                                        
                                            GET /assets/js/libs/jquery.min.js.pagespeed.jm.JkJ2MTTxir.js HTTP/1.1 
Host: dash.sebastian-dernbach.de
                                        
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: */*
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://dash.sebastian-dernbach.de/login.php
Cookie: PHPSESSID=3719ho664lvga38evbugq6dpc5

                                         
                                         176.28.16.156
HTTP/1.1 200 OK
Content-Type: application/javascript
                                        
Date: Sat, 21 Oct 2017 20:31:39 GMT
Server: Apache
Accept-Ranges: bytes
X-Powered-By: PleskLin
Expires: Sun, 21 Oct 2018 16:31:42 GMT
Cache-Control: max-age=31536000
Etag: W/"0"
Last-Modified: Sat, 21 Oct 2017 16:31:42 GMT
X-Original-Content-Length: 85589
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 29828
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive


--- Additional Info ---
Magic:  gzip compressed data, from Unix, max compression
Size:   29828
Md5:    18c54f036702028ba914c6d930ac77e2
Sha1:   19b8f9f821aef1d7fc0dd05a56f142a7201dd163
Sha256: ce16f97db7c442bfcd0af01712a50aef013ed329c664f2efc193f3a452d94c59
                                        
                                            GET /assets/js/libs/tether.min.js+bootstrap.min.js+pace.min.js.pagespeed.jc.kxJXDfLadd.js HTTP/1.1 
Host: dash.sebastian-dernbach.de
                                        
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: */*
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://dash.sebastian-dernbach.de/login.php
Cookie: PHPSESSID=3719ho664lvga38evbugq6dpc5

                                         
                                         176.28.16.156
HTTP/1.1 200 OK
Content-Type: application/javascript
                                        
Date: Sat, 21 Oct 2017 20:31:39 GMT
Server: Apache
Accept-Ranges: bytes
X-Powered-By: PleskLin
Expires: Sun, 21 Oct 2018 16:31:43 GMT
Cache-Control: max-age=31536000
Etag: W/"0"
Last-Modified: Sat, 21 Oct 2017 16:31:43 GMT
X-Original-Content-Length: 80550
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 22100
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive


--- Additional Info ---
Magic:  gzip compressed data, from Unix, max compression
Size:   22100
Md5:    f4e7fe2c4f3f18eea7b8f4f1d15493cb
Sha1:   feedf9a154c0ef05d8b151e9317fc87857b4baea
Sha256: eb86de9c4b0ac9a3068c0d3071ff89857a49ee6cec7a5b7b8b73b8d08b42565c
                                        
                                            GET /assets/fonts/Simple-Line-Icons.ttf?v=2.2.2 HTTP/1.1 
Host: dash.sebastian-dernbach.de
                                        
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://dash.sebastian-dernbach.de/assets/css/A.style.css.pagespeed.cf.Q2Gqx1i4kh.css
Cookie: PHPSESSID=3719ho664lvga38evbugq6dpc5

                                         
                                         176.28.16.156
HTTP/1.1 200 OK
                                        
Date: Sat, 21 Oct 2017 20:31:40 GMT
Server: Apache
Last-Modified: Mon, 04 Apr 2016 14:33:49 GMT
Etag: "d078-52fa99df97288"
Accept-Ranges: bytes
Content-Length: 53368
Cache-Control: max-age=2419200, s-maxage=10
Expires: Sat, 18 Nov 2017 20:31:40 GMT
X-Powered-By: PleskLin
Keep-Alive: timeout=5, max=97
Connection: Keep-Alive


--- Additional Info ---
Magic:  TrueType font data\012 raw G3 data, byte-padded
Size:   53368
Md5:    b2892aa62b0fb2c21c8d7700e2ef6e56
Sha1:   acb3e2b0f5ba11b8e4e43b7f73223ec048054861
Sha256: 937e59152189ecedb8688efcd8b927fc40d43b5c5225a05a25f4cf537ad8ca7c
                                        
                                            GET /assets/js/app.js.pagespeed.jm.W-o-8PXDK7.js HTTP/1.1 
Host: dash.sebastian-dernbach.de
                                        
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: */*
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://dash.sebastian-dernbach.de/login.php
Cookie: PHPSESSID=3719ho664lvga38evbugq6dpc5

                                         
                                         176.28.16.156
HTTP/1.1 200 OK
Content-Type: application/javascript
                                        
Date: Sat, 21 Oct 2017 20:31:40 GMT
Server: Apache
Accept-Ranges: bytes
X-Powered-By: PleskLin
Expires: Sun, 21 Oct 2018 16:31:44 GMT
Cache-Control: max-age=31536000
Etag: W/"0"
Last-Modified: Sat, 21 Oct 2017 16:31:44 GMT
X-Original-Content-Length: 7752
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 1829
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive


--- Additional Info ---
Magic:  gzip compressed data, from Unix, max compression
Size:   1829
Md5:    c53591b00265f9bc942ab05fe1f8f899
Sha1:   84529b823880a46396ae5d5bd9cb812973988e82
Sha256: f4ce9987780d79c64a0cad77760ac8c45fc4484d6e66334f492832314b4f0169
                                        
                                            GET /assets/js/views/shared.js HTTP/1.1 
Host: dash.sebastian-dernbach.de
                                        
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: */*
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://dash.sebastian-dernbach.de/login.php
Cookie: PHPSESSID=3719ho664lvga38evbugq6dpc5

                                         
                                         176.28.16.156
HTTP/1.1 404 Not Found
Content-Type: text/html
                                        
Date: Sat, 21 Oct 2017 20:31:41 GMT
Server: Apache
Last-Modified: Tue, 20 Oct 2015 20:16:09 GMT
Etag: "3fd-5228eeebed5f9"
Accept-Ranges: bytes
Content-Length: 1021
X-Powered-By: PleskLin
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive


--- Additional Info ---
Magic:  HTML document text
Size:   1021
Md5:    fb8a2f2658a3a848a4b3c550c8616696
Sha1:   47ab097cd2cebeb2a3fedd9371abfb59506a2faf
Sha256: ea7ca51ce6cc6399b55abe2ecace56544719ba315c85d5f9719f5a9ae381f15e
                                        
                                            GET /assets/img/xselect.png.pagespeed.ic.HcFSlY4cbO.png HTTP/1.1 
Host: dash.sebastian-dernbach.de
                                        
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: image/png,image/*;q=0.8,*/*;q=0.5
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://dash.sebastian-dernbach.de/assets/css/A.style.css.pagespeed.cf.Q2Gqx1i4kh.css
Cookie: PHPSESSID=3719ho664lvga38evbugq6dpc5

                                         
                                         176.28.16.156
HTTP/1.1 200 OK
Content-Type: image/png
                                        
Date: Sat, 21 Oct 2017 20:31:39 GMT
Server: Apache
Link: <http://dash.sebastian-dernbach.de/assets/img/select.png>; rel="canonical"
Accept-Ranges: bytes
X-Powered-By: PleskLin
Expires: Sun, 21 Oct 2018 20:31:41 GMT
Etag: W/"0"
Last-Modified: Sat, 21 Oct 2017 20:31:41 GMT
Cache-Control: max-age=31536000, public
X-Original-Content-Length: 1275
Content-Length: 271
Keep-Alive: timeout=5, max=99
Connection: Keep-Alive


--- Additional Info ---
Magic:  PNG image, 48 x 38, 4-bit colormap, non-interlaced
Size:   271
Md5:    1dc152958e1c6ce038b7a3f936e436aa
Sha1:   17e458996b840775647740d6588477cb90bdef02
Sha256: 9ea6183ac5fc86771ec3b5be87b8a0a42c45c8bdd3ceddbcb3b34b82c996dc6d
                                        
                                            GET /favicon.ico HTTP/1.1 
Host: dash.sebastian-dernbach.de
                                        
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: image/png,image/*;q=0.8,*/*;q=0.5
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Cookie: PHPSESSID=3719ho664lvga38evbugq6dpc5

                                         
                                         176.28.16.156
HTTP/1.1 404 Not Found
Content-Type: text/html
                                        
Date: Sat, 21 Oct 2017 20:31:41 GMT
Server: Apache
Last-Modified: Tue, 20 Oct 2015 20:16:09 GMT
Etag: "3fd-5228eeebed5f9"
Accept-Ranges: bytes
Content-Length: 1021
X-Powered-By: PleskLin
Cache-Control: s-maxage=10
Keep-Alive: timeout=5, max=99
Connection: Keep-Alive


--- Additional Info ---
Magic:  HTML document text
Size:   1021
Md5:    fb8a2f2658a3a848a4b3c550c8616696
Sha1:   47ab097cd2cebeb2a3fedd9371abfb59506a2faf
Sha256: ea7ca51ce6cc6399b55abe2ecace56544719ba315c85d5f9719f5a9ae381f15e
                                        
                                            GET /favicon.ico HTTP/1.1 
Host: dash.sebastian-dernbach.de
                                        
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Cookie: PHPSESSID=3719ho664lvga38evbugq6dpc5
Range: bytes=0-
If-Range: "3fd-5228eeebed5f9"

                                         
                                         176.28.16.156
HTTP/1.1 404 Not Found
Content-Type: text/html
                                        
Date: Sat, 21 Oct 2017 20:31:44 GMT
Server: Apache
Last-Modified: Tue, 20 Oct 2015 20:16:09 GMT
Etag: "3fd-5228eeebed5f9"
Accept-Ranges: bytes
Content-Length: 1021
X-Powered-By: PleskLin
Keep-Alive: timeout=5, max=96
Connection: Keep-Alive


--- Additional Info ---
Magic:  HTML document text
Size:   1021
Md5:    fb8a2f2658a3a848a4b3c550c8616696
Sha1:   47ab097cd2cebeb2a3fedd9371abfb59506a2faf
Sha256: ea7ca51ce6cc6399b55abe2ecace56544719ba315c85d5f9719f5a9ae381f15e