403Webshell
Server IP : 103.118.17.23  /  Your IP : 216.73.216.169
Web Server : Microsoft-IIS/10.0
System : Windows NT RESELLERPLESK22 10.0 build 20348 (Windows Server 2016) AMD64
User : IWAM_plesk(default) ( 0)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  E:/Inetpub/vhosts/mesa.org.in/httpdocs/dream_js/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : E:/Inetpub/vhosts/mesa.org.in/httpdocs/dream_js/plugins.js
if (jQuery.easing.jswing = jQuery.easing.swing, jQuery.extend(jQuery.easing, { def: "easeOutQuad", swing: function (t, e, i, n, s) { return jQuery.easing[jQuery.easing.def](t, e, i, n, s) }, easeInQuad: function (t, e, i, n, s) { return n * (e /= s) * e + i }, easeOutQuad: function (t, e, i, n, s) { return -n * (e /= s) * (e - 2) + i }, easeInOutQuad: function (t, e, i, n, s) { return (e /= s / 2) < 1 ? n / 2 * e * e + i : -n / 2 * (--e * (e - 2) - 1) + i }, easeInCubic: function (t, e, i, n, s) { return n * (e /= s) * e * e + i }, easeOutCubic: function (t, e, i, n, s) { return n * ((e = e / s - 1) * e * e + 1) + i }, easeInOutCubic: function (t, e, i, n, s) { return (e /= s / 2) < 1 ? n / 2 * e * e * e + i : n / 2 * ((e -= 2) * e * e + 2) + i }, easeInQuart: function (t, e, i, n, s) { return n * (e /= s) * e * e * e + i }, easeOutQuart: function (t, e, i, n, s) { return -n * ((e = e / s - 1) * e * e * e - 1) + i }, easeInOutQuart: function (t, e, i, n, s) { return (e /= s / 2) < 1 ? n / 2 * e * e * e * e + i : -n / 2 * ((e -= 2) * e * e * e - 2) + i }, easeInQuint: function (t, e, i, n, s) { return n * (e /= s) * e * e * e * e + i }, easeOutQuint: function (t, e, i, n, s) { return n * ((e = e / s - 1) * e * e * e * e + 1) + i }, easeInOutQuint: function (t, e, i, n, s) { return (e /= s / 2) < 1 ? n / 2 * e * e * e * e * e + i : n / 2 * ((e -= 2) * e * e * e * e + 2) + i }, easeInSine: function (t, e, i, n, s) { return -n * Math.cos(e / s * (Math.PI / 2)) + n + i }, easeOutSine: function (t, e, i, n, s) { return n * Math.sin(e / s * (Math.PI / 2)) + i }, easeInOutSine: function (t, e, i, n, s) { return -n / 2 * (Math.cos(Math.PI * e / s) - 1) + i }, easeInExpo: function (t, e, i, n, s) { return 0 == e ? i : n * Math.pow(2, 10 * (e / s - 1)) + i }, easeOutExpo: function (t, e, i, n, s) { return e == s ? i + n : n * (1 - Math.pow(2, -10 * e / s)) + i }, easeInOutExpo: function (t, e, i, n, s) { return 0 == e ? i : e == s ? i + n : (e /= s / 2) < 1 ? n / 2 * Math.pow(2, 10 * (e - 1)) + i : n / 2 * (2 - Math.pow(2, -10 * --e)) + i }, easeInCirc: function (t, e, i, n, s) { return -n * (Math.sqrt(1 - (e /= s) * e) - 1) + i }, easeOutCirc: function (t, e, i, n, s) { return n * Math.sqrt(1 - (e = e / s - 1) * e) + i }, easeInOutCirc: function (t, e, i, n, s) { return (e /= s / 2) < 1 ? -n / 2 * (Math.sqrt(1 - e * e) - 1) + i : n / 2 * (Math.sqrt(1 - (e -= 2) * e) + 1) + i }, easeInElastic: function (t, e, i, n, s) { var o = 1.70158, r = 0, a = n; return 0 == e ? i : 1 == (e /= s) ? i + n : (r || (r = .3 * s), a < Math.abs(n) ? (a = n, o = r / 4) : o = r / (2 * Math.PI) * Math.asin(n / a), -a * Math.pow(2, 10 * (e -= 1)) * Math.sin(2 * (e * s - o) * Math.PI / r) + i) }, easeOutElastic: function (t, e, i, n, s) { var o = 1.70158, r = 0, a = n; return 0 == e ? i : 1 == (e /= s) ? i + n : (r || (r = .3 * s), a < Math.abs(n) ? (a = n, o = r / 4) : o = r / (2 * Math.PI) * Math.asin(n / a), a * Math.pow(2, -10 * e) * Math.sin(2 * (e * s - o) * Math.PI / r) + n + i) }, easeInOutElastic: function (t, e, i, n, s) { var o = 1.70158, r = 0, a = n; return 0 == e ? i : 2 == (e /= s / 2) ? i + n : (r || (r = .3 * s * 1.5), a < Math.abs(n) ? (a = n, o = r / 4) : o = r / (2 * Math.PI) * Math.asin(n / a), e < 1 ? -.5 * a * Math.pow(2, 10 * (e -= 1)) * Math.sin(2 * (e * s - o) * Math.PI / r) + i : a * Math.pow(2, -10 * (e -= 1)) * Math.sin(2 * (e * s - o) * Math.PI / r) * .5 + n + i) }, easeInBack: function (t, e, i, n, s, o) { return null == o && (o = 1.70158), n * (e /= s) * e * ((o + 1) * e - o) + i }, easeOutBack: function (t, e, i, n, s, o) { return null == o && (o = 1.70158), n * ((e = e / s - 1) * e * ((o + 1) * e + o) + 1) + i }, easeInOutBack: function (t, e, i, n, s, o) { return null == o && (o = 1.70158), (e /= s / 2) < 1 ? n / 2 * e * e * ((1 + (o *= 1.525)) * e - o) + i : n / 2 * ((e -= 2) * e * ((1 + (o *= 1.525)) * e + o) + 2) + i }, easeInBounce: function (t, e, i, n, s) { return n - jQuery.easing.easeOutBounce(t, s - e, 0, n, s) + i }, easeOutBounce: function (t, e, i, n, s) { return (e /= s) < 1 / 2.75 ? 7.5625 * n * e * e + i : e < 2 / 2.75 ? n * (7.5625 * (e -= 1.5 / 2.75) * e + .75) + i : e < 2.5 / 2.75 ? n * (7.5625 * (e -= 2.25 / 2.75) * e + .9375) + i : n * (7.5625 * (e -= 2.625 / 2.75) * e + .984375) + i }, easeInOutBounce: function (t, e, i, n, s) { return e < s / 2 ? .5 * jQuery.easing.easeInBounce(t, 2 * e, 0, n, s) + i : .5 * jQuery.easing.easeOutBounce(t, 2 * e - s, 0, n, s) + .5 * n + i } }), "undefined" == typeof jQuery) throw new Error("Bootstrap's JavaScript requires jQuery"); !function (t) { "use strict"; var e = jQuery.fn.jquery.split(" ")[0].split("."); if (e[0] < 2 && e[1] < 9 || 1 == e[0] && 9 == e[1] && e[2] < 1) throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher") }(), function (t) { "use strict"; t.fn.emulateTransitionEnd = function (e) { var i = !1, n = this; return t(this).one("bsTransitionEnd", function () { i = !0 }), setTimeout(function () { i || t(n).trigger(t.support.transition.end) }, e), this }, t(function () { t.support.transition = function () { var t = document.createElement("bootstrap"), e = { WebkitTransition: "webkitTransitionEnd", MozTransition: "transitionend", OTransition: "oTransitionEnd otransitionend", transition: "transitionend" }; for (var i in e) if (void 0 !== t.style[i]) return { end: e[i] }; return !1 }(), t.support.transition && (t.event.special.bsTransitionEnd = { bindType: t.support.transition.end, delegateType: t.support.transition.end, handle: function (e) { return t(e.target).is(this) ? e.handleObj.handler.apply(this, arguments) : void 0 } }) }) }(jQuery), function (t) { "use strict"; var e = '[data-dismiss="alert"]', i = function (i) { t(i).on("click", e, this.close) }; i.VERSION = "3.3.2", i.TRANSITION_DURATION = 150, i.prototype.close = function (e) { function n() { r.detach().trigger("closed.bs.alert").remove() } var s = t(this), o = s.attr("data-target"); o || (o = (o = s.attr("href")) && o.replace(/.*(?=#[^\s]*$)/, "")); var r = t(o); e && e.preventDefault(), r.length || (r = s.closest(".alert")), r.trigger(e = t.Event("close.bs.alert")), e.isDefaultPrevented() || (r.removeClass("in"), t.support.transition && r.hasClass("fade") ? r.one("bsTransitionEnd", n).emulateTransitionEnd(i.TRANSITION_DURATION) : n()) }; var n = t.fn.alert; t.fn.alert = function (e) { return this.each(function () { var n = t(this), s = n.data("bs.alert"); s || n.data("bs.alert", s = new i(this)), "string" == typeof e && s[e].call(n) }) }, t.fn.alert.Constructor = i, t.fn.alert.noConflict = function () { return t.fn.alert = n, this }, t(document).on("click.bs.alert.data-api", e, i.prototype.close) }(jQuery), function (t) { "use strict"; function e(e) { return this.each(function () { var n = t(this), s = n.data("bs.button"), o = "object" == typeof e && e; s || n.data("bs.button", s = new i(this, o)), "toggle" == e ? s.toggle() : e && s.setState(e) }) } var i = function (e, n) { this.$element = t(e), this.options = t.extend({}, i.DEFAULTS, n), this.isLoading = !1 }; i.VERSION = "3.3.2", i.DEFAULTS = { loadingText: "loading..." }, i.prototype.setState = function (e) { var i = "disabled", n = this.$element, s = n.is("input") ? "val" : "html", o = n.data(); e += "Text", null == o.resetText && n.data("resetText", n[s]()), setTimeout(t.proxy(function () { n[s](null == o[e] ? this.options[e] : o[e]), "loadingText" == e ? (this.isLoading = !0, n.addClass(i).attr(i, i)) : this.isLoading && (this.isLoading = !1, n.removeClass(i).removeAttr(i)) }, this), 0) }, i.prototype.toggle = function () { var t = !0, e = this.$element.closest('[data-toggle="buttons"]'); if (e.length) { var i = this.$element.find("input"); "radio" == i.prop("type") && (i.prop("checked") && this.$element.hasClass("active") ? t = !1 : e.find(".active").removeClass("active")), t && i.prop("checked", !this.$element.hasClass("active")).trigger("change") } else this.$element.attr("aria-pressed", !this.$element.hasClass("active")); t && this.$element.toggleClass("active") }; var n = t.fn.button; t.fn.button = e, t.fn.button.Constructor = i, t.fn.button.noConflict = function () { return t.fn.button = n, this }, t(document).on("click.bs.button.data-api", '[data-toggle^="button"]', function (i) { var n = t(i.target); n.hasClass("btn") || (n = n.closest(".btn")), e.call(n, "toggle"), i.preventDefault() }).on("focus.bs.button.data-api blur.bs.button.data-api", '[data-toggle^="button"]', function (e) { t(e.target).closest(".btn").toggleClass("focus", /^focus(in)?$/.test(e.type)) }) }(jQuery), function (t) { "use strict"; function e(e) { return this.each(function () { var n = t(this), s = n.data("bs.carousel"), o = t.extend({}, i.DEFAULTS, n.data(), "object" == typeof e && e), r = "string" == typeof e ? e : o.slide; s || n.data("bs.carousel", s = new i(this, o)), "number" == typeof e ? s.to(e) : r ? s[r]() : o.interval && s.pause().cycle() }) } var i = function (e, i) { this.$element = t(e), this.$indicators = this.$element.find(".carousel-indicators"), this.options = i, this.paused = this.sliding = this.interval = this.$active = this.$items = null, this.options.keyboard && this.$element.on("keydown.bs.carousel", t.proxy(this.keydown, this)), "hover" == this.options.pause && !("ontouchstart" in document.documentElement) && this.$element.on("mouseenter.bs.carousel", t.proxy(this.pause, this)).on("mouseleave.bs.carousel", t.proxy(this.cycle, this)) }; i.VERSION = "3.3.2", i.TRANSITION_DURATION = 600, i.DEFAULTS = { interval: 5e3, pause: "hover", wrap: !0, keyboard: !0 }, i.prototype.keydown = function (t) { if (!/input|textarea/i.test(t.target.tagName)) { switch (t.which) { case 37: this.prev(); break; case 39: this.next(); break; default: return } t.preventDefault() } }, i.prototype.cycle = function (e) { return e || (this.paused = !1), this.interval && clearInterval(this.interval), this.options.interval && !this.paused && (this.interval = setInterval(t.proxy(this.next, this), this.options.interval)), this }, i.prototype.getItemIndex = function (t) { return this.$items = t.parent().children(".item"), this.$items.index(t || this.$active) }, i.prototype.getItemForDirection = function (t, e) { var i = this.getItemIndex(e); if (("prev" == t && 0 === i || "next" == t && i == this.$items.length - 1) && !this.options.wrap) return e; var n = (i + ("prev" == t ? -1 : 1)) % this.$items.length; return this.$items.eq(n) }, i.prototype.to = function (t) { var e = this, i = this.getItemIndex(this.$active = this.$element.find(".item.active")); return t > this.$items.length - 1 || 0 > t ? void 0 : this.sliding ? this.$element.one("slid.bs.carousel", function () { e.to(t) }) : i == t ? this.pause().cycle() : this.slide(t > i ? "next" : "prev", this.$items.eq(t)) }, i.prototype.pause = function (e) { return e || (this.paused = !0), this.$element.find(".next, .prev").length && t.support.transition && (this.$element.trigger(t.support.transition.end), this.cycle(!0)), this.interval = clearInterval(this.interval), this }, i.prototype.next = function () { return this.sliding ? void 0 : this.slide("next") }, i.prototype.prev = function () { return this.sliding ? void 0 : this.slide("prev") }, i.prototype.slide = function (e, n) { var s = this.$element.find(".item.active"), o = n || this.getItemForDirection(e, s), r = this.interval, a = "next" == e ? "left" : "right", l = this; if (o.hasClass("active")) return this.sliding = !1; var c = o[0], u = t.Event("slide.bs.carousel", { relatedTarget: c, direction: a }); if (this.$element.trigger(u), !u.isDefaultPrevented()) { if (this.sliding = !0, r && this.pause(), this.$indicators.length) { this.$indicators.find(".active").removeClass("active"); var d = t(this.$indicators.children()[this.getItemIndex(o)]); d && d.addClass("active") } var h = t.Event("slid.bs.carousel", { relatedTarget: c, direction: a }); return t.support.transition && this.$element.hasClass("slide") ? (o.addClass(e), o[0].offsetWidth, s.addClass(a), o.addClass(a), s.one("bsTransitionEnd", function () { o.removeClass([e, a].join(" ")).addClass("active"), s.removeClass(["active", a].join(" ")), l.sliding = !1, setTimeout(function () { l.$element.trigger(h) }, 0) }).emulateTransitionEnd(i.TRANSITION_DURATION)) : (s.removeClass("active"), o.addClass("active"), this.sliding = !1, this.$element.trigger(h)), r && this.cycle(), this } }; var n = t.fn.carousel; t.fn.carousel = e, t.fn.carousel.Constructor = i, t.fn.carousel.noConflict = function () { return t.fn.carousel = n, this }; var s = function (i) { var n, s = t(this), o = t(s.attr("data-target") || (n = s.attr("href")) && n.replace(/.*(?=#[^\s]+$)/, "")); if (o.hasClass("carousel")) { var r = t.extend({}, o.data(), s.data()), a = s.attr("data-slide-to"); a && (r.interval = !1), e.call(o, r), a && o.data("bs.carousel").to(a), i.preventDefault() } }; t(document).on("click.bs.carousel.data-api", "[data-slide]", s).on("click.bs.carousel.data-api", "[data-slide-to]", s), t(window).on("load", function () { t('[data-ride="carousel"]').each(function () { var i = t(this); e.call(i, i.data()) }) }) }(jQuery), function (t) { "use strict"; function e(e) { var i, n = e.attr("data-target") || (i = e.attr("href")) && i.replace(/.*(?=#[^\s]+$)/, ""); return t(n) } function i(e) { return this.each(function () { var i = t(this), s = i.data("bs.collapse"), o = t.extend({}, n.DEFAULTS, i.data(), "object" == typeof e && e); !s && o.toggle && "show" == e && (o.toggle = !1), s || i.data("bs.collapse", s = new n(this, o)), "string" == typeof e && s[e]() }) } var n = function (e, i) { this.$element = t(e), this.options = t.extend({}, n.DEFAULTS, i), this.$trigger = t(this.options.trigger).filter('[href="#' + e.id + '"], [data-target="#' + e.id + '"]'), this.transitioning = null, this.options.parent ? this.$parent = this.getParent() : this.addAriaAndCollapsedClass(this.$element, this.$trigger), this.options.toggle && this.toggle() }; n.VERSION = "3.3.2", n.TRANSITION_DURATION = 350, n.DEFAULTS = { toggle: !0, trigger: '[data-toggle="collapse"]' }, n.prototype.dimension = function () { return this.$element.hasClass("width") ? "width" : "height" }, n.prototype.show = function () { if (!this.transitioning && !this.$element.hasClass("in")) { var e, s = this.$parent && this.$parent.children(".panel").children(".in, .collapsing"); if (!(s && s.length && (e = s.data("bs.collapse"), e && e.transitioning))) { var o = t.Event("show.bs.collapse"); if (this.$element.trigger(o), !o.isDefaultPrevented()) { s && s.length && (i.call(s, "hide"), e || s.data("bs.collapse", null)); var r = this.dimension(); this.$element.removeClass("collapse").addClass("collapsing")[r](0).attr("aria-expanded", !0), this.$trigger.removeClass("collapsed").attr("aria-expanded", !0), this.transitioning = 1; var a = function () { this.$element.removeClass("collapsing").addClass("collapse in")[r](""), this.transitioning = 0, this.$element.trigger("shown.bs.collapse") }; if (!t.support.transition) return a.call(this); var l = t.camelCase(["scroll", r].join("-")); this.$element.one("bsTransitionEnd", t.proxy(a, this)).emulateTransitionEnd(n.TRANSITION_DURATION)[r](this.$element[0][l]) } } } }, n.prototype.hide = function () { if (!this.transitioning && this.$element.hasClass("in")) { var e = t.Event("hide.bs.collapse"); if (this.$element.trigger(e), !e.isDefaultPrevented()) { var i = this.dimension(); this.$element[i](this.$element[i]())[0].offsetHeight, this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded", !1), this.$trigger.addClass("collapsed").attr("aria-expanded", !1), this.transitioning = 1; var s = function () { this.transitioning = 0, this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse") }; return t.support.transition ? void this.$element[i](0).one("bsTransitionEnd", t.proxy(s, this)).emulateTransitionEnd(n.TRANSITION_DURATION) : s.call(this) } } }, n.prototype.toggle = function () { this[this.$element.hasClass("in") ? "hide" : "show"]() }, n.prototype.getParent = function () { return t(this.options.parent).find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]').each(t.proxy(function (i, n) { var s = t(n); this.addAriaAndCollapsedClass(e(s), s) }, this)).end() }, n.prototype.addAriaAndCollapsedClass = function (t, e) { var i = t.hasClass("in"); t.attr("aria-expanded", i), e.toggleClass("collapsed", !i).attr("aria-expanded", i) }; var s = t.fn.collapse; t.fn.collapse = i, t.fn.collapse.Constructor = n, t.fn.collapse.noConflict = function () { return t.fn.collapse = s, this }, t(document).on("click.bs.collapse.data-api", '[data-toggle="collapse"]', function (n) { var s = t(this); s.attr("data-target") || n.preventDefault(); var o = e(s), r = o.data("bs.collapse") ? "toggle" : t.extend({}, s.data(), { trigger: this }); i.call(o, r) }) }(jQuery), function (t) { "use strict"; function e(e) { e && 3 === e.which || (t(n).remove(), t(s).each(function () { var n = t(this), s = i(n), o = { relatedTarget: this }; s.hasClass("open") && (s.trigger(e = t.Event("hide.bs.dropdown", o)), e.isDefaultPrevented() || (n.attr("aria-expanded", "false"), s.removeClass("open").trigger("hidden.bs.dropdown", o))) })) } function i(e) { var i = e.attr("data-target"); i || (i = (i = e.attr("href")) && /#[A-Za-z]/.test(i) && i.replace(/.*(?=#[^\s]*$)/, "")); var n = i && t(i); return n && n.length ? n : e.parent() } var n = ".dropdown-backdrop", s = '[data-toggle="dropdown"]', o = function (e) { t(e).on("click.bs.dropdown", this.toggle) }; o.VERSION = "3.3.2", o.prototype.toggle = function (n) { var s = t(this); if (!s.is(".disabled, :disabled")) { var o = i(s), r = o.hasClass("open"); if (e(), !r) { "ontouchstart" in document.documentElement && !o.closest(".navbar-nav").length && t('<div class="dropdown-backdrop"/>').insertAfter(t(this)).on("click", e); var a = { relatedTarget: this }; if (o.trigger(n = t.Event("show.bs.dropdown", a)), n.isDefaultPrevented()) return; s.trigger("focus").attr("aria-expanded", "true"), o.toggleClass("open").trigger("shown.bs.dropdown", a) } return !1 } }, o.prototype.keydown = function (e) { if (/(38|40|27|32)/.test(e.which) && !/input|textarea/i.test(e.target.tagName)) { var n = t(this); if (e.preventDefault(), e.stopPropagation(), !n.is(".disabled, :disabled")) { var o = i(n), r = o.hasClass("open"); if (!r && 27 != e.which || r && 27 == e.which) return 27 == e.which && o.find(s).trigger("focus"), n.trigger("click"); var a = " li:not(.divider):visible a", l = o.find('[role="menu"]' + a + ', [role="listbox"]' + a); if (l.length) { var c = l.index(e.target); 38 == e.which && c > 0 && c--, 40 == e.which && c < l.length - 1 && c++, ~c || (c = 0), l.eq(c).trigger("focus") } } } }; var r = t.fn.dropdown; t.fn.dropdown = function (e) { return this.each(function () { var i = t(this), n = i.data("bs.dropdown"); n || i.data("bs.dropdown", n = new o(this)), "string" == typeof e && n[e].call(i) }) }, t.fn.dropdown.Constructor = o, t.fn.dropdown.noConflict = function () { return t.fn.dropdown = r, this }, t(document).on("click.bs.dropdown.data-api", e).on("click.bs.dropdown.data-api", ".dropdown form", function (t) { t.stopPropagation() }).on("click.bs.dropdown.data-api", s, o.prototype.toggle).on("keydown.bs.dropdown.data-api", s, o.prototype.keydown).on("keydown.bs.dropdown.data-api", '[role="menu"]', o.prototype.keydown).on("keydown.bs.dropdown.data-api", '[role="listbox"]', o.prototype.keydown) }(jQuery), function (t) { "use strict"; function e(e, n) { return this.each(function () { var s = t(this), o = s.data("bs.modal"), r = t.extend({}, i.DEFAULTS, s.data(), "object" == typeof e && e); o || s.data("bs.modal", o = new i(this, r)), "string" == typeof e ? o[e](n) : r.show && o.show(n) }) } var i = function (e, i) { this.options = i, this.$body = t(document.body), this.$element = t(e), this.$backdrop = this.isShown = null, this.scrollbarWidth = 0, this.options.remote && this.$element.find(".modal-content").load(this.options.remote, t.proxy(function () { this.$element.trigger("loaded.bs.modal") }, this)) }; i.VERSION = "3.3.2", i.TRANSITION_DURATION = 300, i.BACKDROP_TRANSITION_DURATION = 150, i.DEFAULTS = { backdrop: !0, keyboard: !0, show: !0 }, i.prototype.toggle = function (t) { return this.isShown ? this.hide() : this.show(t) }, i.prototype.show = function (e) { var n = this, s = t.Event("show.bs.modal", { relatedTarget: e }); this.$element.trigger(s), this.isShown || s.isDefaultPrevented() || (this.isShown = !0, this.checkScrollbar(), this.setScrollbar(), this.$body.addClass("modal-open"), this.escape(), this.resize(), this.$element.on("click.dismiss.bs.modal", '[data-dismiss="modal"]', t.proxy(this.hide, this)), this.backdrop(function () { var s = t.support.transition && n.$element.hasClass("fade"); n.$element.parent().length || n.$element.appendTo(n.$body), n.$element.show().scrollTop(0), n.options.backdrop && n.adjustBackdrop(), n.adjustDialog(), s && n.$element[0].offsetWidth, n.$element.addClass("in").attr("aria-hidden", !1), n.enforceFocus(); var o = t.Event("shown.bs.modal", { relatedTarget: e }); s ? n.$element.find(".modal-dialog").one("bsTransitionEnd", function () { n.$element.trigger("focus").trigger(o) }).emulateTransitionEnd(i.TRANSITION_DURATION) : n.$element.trigger("focus").trigger(o) })) }, i.prototype.hide = function (e) { e && e.preventDefault(), e = t.Event("hide.bs.modal"), this.$element.trigger(e), this.isShown && !e.isDefaultPrevented() && (this.isShown = !1, this.escape(), this.resize(), t(document).off("focusin.bs.modal"), this.$element.removeClass("in").attr("aria-hidden", !0).off("click.dismiss.bs.modal"), t.support.transition && this.$element.hasClass("fade") ? this.$element.one("bsTransitionEnd", t.proxy(this.hideModal, this)).emulateTransitionEnd(i.TRANSITION_DURATION) : this.hideModal()) }, i.prototype.enforceFocus = function () { t(document).off("focusin.bs.modal").on("focusin.bs.modal", t.proxy(function (t) { this.$element[0] === t.target || this.$element.has(t.target).length || this.$element.trigger("focus") }, this)) }, i.prototype.escape = function () { this.isShown && this.options.keyboard ? this.$element.on("keydown.dismiss.bs.modal", t.proxy(function (t) { 27 == t.which && this.hide() }, this)) : this.isShown || this.$element.off("keydown.dismiss.bs.modal") }, i.prototype.resize = function () { this.isShown ? t(window).on("resize.bs.modal", t.proxy(this.handleUpdate, this)) : t(window).off("resize.bs.modal") }, i.prototype.hideModal = function () { var t = this; this.$element.hide(), this.backdrop(function () { t.$body.removeClass("modal-open"), t.resetAdjustments(), t.resetScrollbar(), t.$element.trigger("hidden.bs.modal") }) }, i.prototype.removeBackdrop = function () { this.$backdrop && this.$backdrop.remove(), this.$backdrop = null }, i.prototype.backdrop = function (e) { var n = this, s = this.$element.hasClass("fade") ? "fade" : ""; if (this.isShown && this.options.backdrop) { var o = t.support.transition && s; if (this.$backdrop = t('<div class="modal-backdrop ' + s + '" />').prependTo(this.$element).on("click.dismiss.bs.modal", t.proxy(function (t) { t.target === t.currentTarget && ("static" == this.options.backdrop ? this.$element[0].focus.call(this.$element[0]) : this.hide.call(this)) }, this)), o && this.$backdrop[0].offsetWidth, this.$backdrop.addClass("in"), !e) return; o ? this.$backdrop.one("bsTransitionEnd", e).emulateTransitionEnd(i.BACKDROP_TRANSITION_DURATION) : e() } else if (!this.isShown && this.$backdrop) { this.$backdrop.removeClass("in"); var r = function () { n.removeBackdrop(), e && e() }; t.support.transition && this.$element.hasClass("fade") ? this.$backdrop.one("bsTransitionEnd", r).emulateTransitionEnd(i.BACKDROP_TRANSITION_DURATION) : r() } else e && e() }, i.prototype.handleUpdate = function () { this.options.backdrop && this.adjustBackdrop(), this.adjustDialog() }, i.prototype.adjustBackdrop = function () { this.$backdrop.css("height", 0).css("height", this.$element[0].scrollHeight) }, i.prototype.adjustDialog = function () { var t = this.$element[0].scrollHeight > document.documentElement.clientHeight; this.$element.css({ paddingLeft: !this.bodyIsOverflowing && t ? this.scrollbarWidth : "", paddingRight: this.bodyIsOverflowing && !t ? this.scrollbarWidth : "" }) }, i.prototype.resetAdjustments = function () { this.$element.css({ paddingLeft: "", paddingRight: "" }) }, i.prototype.checkScrollbar = function () { this.bodyIsOverflowing = document.body.scrollHeight > document.documentElement.clientHeight, this.scrollbarWidth = this.measureScrollbar() }, i.prototype.setScrollbar = function () { var t = parseInt(this.$body.css("padding-right") || 0, 10); this.bodyIsOverflowing && this.$body.css("padding-right", t + this.scrollbarWidth) }, i.prototype.resetScrollbar = function () { this.$body.css("padding-right", "") }, i.prototype.measureScrollbar = function () { var t = document.createElement("div"); t.className = "modal-scrollbar-measure", this.$body.append(t); var e = t.offsetWidth - t.clientWidth; return this.$body[0].removeChild(t), e }; var n = t.fn.modal; t.fn.modal = e, t.fn.modal.Constructor = i, t.fn.modal.noConflict = function () { return t.fn.modal = n, this }, t(document).on("click.bs.modal.data-api", '[data-toggle="modal"]', function (i) { var n = t(this), s = n.attr("href"), o = t(n.attr("data-target") || s && s.replace(/.*(?=#[^\s]+$)/, "")), r = o.data("bs.modal") ? "toggle" : t.extend({ remote: !/#/.test(s) && s }, o.data(), n.data()); n.is("a") && i.preventDefault(), o.one("show.bs.modal", function (t) { t.isDefaultPrevented() || o.one("hidden.bs.modal", function () { n.is(":visible") && n.trigger("focus") }) }), e.call(o, r, this) }) }(jQuery), function (t) { "use strict"; var e = function (t, e) { this.type = this.options = this.enabled = this.timeout = this.hoverState = this.$element = null, this.init("tooltip", t, e) }; e.VERSION = "3.3.2", e.TRANSITION_DURATION = 150, e.DEFAULTS = { animation: !0, placement: "top", selector: !1, 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, container: !1, viewport: { selector: "body", padding: 0 } }, e.prototype.init = function (e, i, n) { this.enabled = !0, this.type = e, this.$element = t(i), this.options = this.getOptions(n), this.$viewport = this.options.viewport && t(this.options.viewport.selector || this.options.viewport); for (var s = this.options.trigger.split(" "), o = s.length; o--;) { var r = s[o]; if ("click" == r) this.$element.on("click." + this.type, this.options.selector, t.proxy(this.toggle, this)); else if ("manual" != r) { var a = "hover" == r ? "mouseenter" : "focusin", l = "hover" == r ? "mouseleave" : "focusout"; this.$element.on(a + "." + this.type, this.options.selector, t.proxy(this.enter, this)), this.$element.on(l + "." + this.type, this.options.selector, t.proxy(this.leave, this)) } } this.options.selector ? this._options = t.extend({}, this.options, { trigger: "manual", selector: "" }) : this.fixTitle() }, e.prototype.getDefaults = function () { return e.DEFAULTS }, e.prototype.getOptions = function (e) { return (e = t.extend({}, this.getDefaults(), this.$element.data(), e)).delay && "number" == typeof e.delay && (e.delay = { show: e.delay, hide: e.delay }), e }, e.prototype.getDelegateOptions = function () { var e = {}, i = this.getDefaults(); return this._options && t.each(this._options, function (t, n) { i[t] != n && (e[t] = n) }), e }, e.prototype.enter = function (e) { var i = e instanceof this.constructor ? e : t(e.currentTarget).data("bs." + this.type); return i && i.$tip && i.$tip.is(":visible") ? void (i.hoverState = "in") : (i || (i = new this.constructor(e.currentTarget, this.getDelegateOptions()), t(e.currentTarget).data("bs." + this.type, i)), clearTimeout(i.timeout), i.hoverState = "in", i.options.delay && i.options.delay.show ? void (i.timeout = setTimeout(function () { "in" == i.hoverState && i.show() }, i.options.delay.show)) : i.show()) }, e.prototype.leave = function (e) { var i = e instanceof this.constructor ? e : t(e.currentTarget).data("bs." + this.type); return i || (i = new this.constructor(e.currentTarget, this.getDelegateOptions()), t(e.currentTarget).data("bs." + this.type, i)), clearTimeout(i.timeout), i.hoverState = "out", i.options.delay && i.options.delay.hide ? void (i.timeout = setTimeout(function () { "out" == i.hoverState && i.hide() }, i.options.delay.hide)) : i.hide() }, e.prototype.show = function () { var i = t.Event("show.bs." + this.type); if (this.hasContent() && this.enabled) { this.$element.trigger(i); var n = t.contains(this.$element[0].ownerDocument.documentElement, this.$element[0]); if (i.isDefaultPrevented() || !n) return; var s = this, o = this.tip(), r = this.getUID(this.type); this.setContent(), o.attr("id", r), this.$element.attr("aria-describedby", r), this.options.animation && o.addClass("fade"); var a = "function" == typeof this.options.placement ? this.options.placement.call(this, o[0], this.$element[0]) : this.options.placement, l = /\s?auto?\s?/i, c = l.test(a); c && (a = a.replace(l, "") || "top"), o.detach().css({ top: 0, left: 0, display: "block" }).addClass(a).data("bs." + this.type, this), this.options.container ? o.appendTo(this.options.container) : o.insertAfter(this.$element); var u = this.getPosition(), d = o[0].offsetWidth, h = o[0].offsetHeight; if (c) { var p = a, f = this.options.container ? t(this.options.container) : this.$element.parent(), m = this.getPosition(f); a = "bottom" == a && u.bottom + h > m.bottom ? "top" : "top" == a && u.top - h < m.top ? "bottom" : "right" == a && u.right + d > m.width ? "left" : "left" == a && u.left - d < m.left ? "right" : a, o.removeClass(p).addClass(a) } var g = this.getCalculatedOffset(a, u, d, h); this.applyPlacement(g, a); var v = function () { var t = s.hoverState; s.$element.trigger("shown.bs." + s.type), s.hoverState = null, "out" == t && s.leave(s) }; t.support.transition && this.$tip.hasClass("fade") ? o.one("bsTransitionEnd", v).emulateTransitionEnd(e.TRANSITION_DURATION) : v() } }, e.prototype.applyPlacement = function (e, i) { var n = this.tip(), s = n[0].offsetWidth, o = n[0].offsetHeight, r = parseInt(n.css("margin-top"), 10), a = parseInt(n.css("margin-left"), 10); isNaN(r) && (r = 0), isNaN(a) && (a = 0), e.top = e.top + r, e.left = e.left + a, t.offset.setOffset(n[0], t.extend({ using: function (t) { n.css({ top: Math.round(t.top), left: Math.round(t.left) }) } }, e), 0), n.addClass("in"); var l = n[0].offsetWidth, c = n[0].offsetHeight; "top" == i && c != o && (e.top = e.top + o - c); var u = this.getViewportAdjustedDelta(i, e, l, c); u.left ? e.left += u.left : e.top += u.top; var d = /top|bottom/.test(i), h = d ? 2 * u.left - s + l : 2 * u.top - o + c, p = d ? "offsetWidth" : "offsetHeight"; n.offset(e), this.replaceArrow(h, n[0][p], d) }, e.prototype.replaceArrow = function (t, e, i) { this.arrow().css(i ? "left" : "top", 50 * (1 - t / e) + "%").css(i ? "top" : "left", "") }, e.prototype.setContent = function () { var t = this.tip(), e = this.getTitle(); t.find(".tooltip-inner")[this.options.html ? "html" : "text"](e), t.removeClass("fade in top bottom left right") }, e.prototype.hide = function (i) { function n() { "in" != s.hoverState && o.detach(), s.$element.removeAttr("aria-describedby").trigger("hidden.bs." + s.type), i && i() } var s = this, o = this.tip(), r = t.Event("hide.bs." + this.type); return this.$element.trigger(r), r.isDefaultPrevented() ? void 0 : (o.removeClass("in"), t.support.transition && this.$tip.hasClass("fade") ? o.one("bsTransitionEnd", n).emulateTransitionEnd(e.TRANSITION_DURATION) : n(), this.hoverState = null, this) }, e.prototype.fixTitle = function () { var t = this.$element; (t.attr("title") || "string" != typeof t.attr("data-original-title")) && t.attr("data-original-title", t.attr("title") || "").attr("title", "") }, e.prototype.hasContent = function () { return this.getTitle() }, e.prototype.getPosition = function (e) { var i = (e = e || this.$element)[0], n = "BODY" == i.tagName, s = i.getBoundingClientRect(); null == s.width && (s = t.extend({}, s, { width: s.right - s.left, height: s.bottom - s.top })); var o = n ? { top: 0, left: 0 } : e.offset(), r = { scroll: n ? document.documentElement.scrollTop || document.body.scrollTop : e.scrollTop() }, a = n ? { width: t(window).width(), height: t(window).height() } : null; return t.extend({}, s, r, a, o) }, e.prototype.getCalculatedOffset = function (t, e, i, n) { return "bottom" == t ? { top: e.top + e.height, left: e.left + e.width / 2 - i / 2 } : "top" == t ? { top: e.top - n, left: e.left + e.width / 2 - i / 2 } : "left" == t ? { top: e.top + e.height / 2 - n / 2, left: e.left - i } : { top: e.top + e.height / 2 - n / 2, left: e.left + e.width } }, e.prototype.getViewportAdjustedDelta = function (t, e, i, n) { var s = { top: 0, left: 0 }; if (!this.$viewport) return s; var o = this.options.viewport && this.options.viewport.padding || 0, r = this.getPosition(this.$viewport); if (/right|left/.test(t)) { var a = e.top - o - r.scroll, l = e.top + o - r.scroll + n; a < r.top ? s.top = r.top - a : l > r.top + r.height && (s.top = r.top + r.height - l) } else { var c = e.left - o, u = e.left + o + i; c < r.left ? s.left = r.left - c : u > r.width && (s.left = r.left + r.width - u) } return s }, e.prototype.getTitle = function () { var t = this.$element, e = this.options; return t.attr("data-original-title") || ("function" == typeof e.title ? e.title.call(t[0]) : e.title) }, e.prototype.getUID = function (t) { do { t += ~~(1e6 * Math.random()) } while (document.getElementById(t)); return t }, e.prototype.tip = function () { return this.$tip = this.$tip || t(this.options.template) }, e.prototype.arrow = function () { return this.$arrow = this.$arrow || this.tip().find(".tooltip-arrow") }, e.prototype.enable = function () { this.enabled = !0 }, e.prototype.disable = function () { this.enabled = !1 }, e.prototype.toggleEnabled = function () { this.enabled = !this.enabled }, e.prototype.toggle = function (e) { var i = this; e && ((i = t(e.currentTarget).data("bs." + this.type)) || (i = new this.constructor(e.currentTarget, this.getDelegateOptions()), t(e.currentTarget).data("bs." + this.type, i))), i.tip().hasClass("in") ? i.leave(i) : i.enter(i) }, e.prototype.destroy = function () { var t = this; clearTimeout(this.timeout), this.hide(function () { t.$element.off("." + t.type).removeData("bs." + t.type) }) }; var i = t.fn.tooltip; t.fn.tooltip = function (i) { return this.each(function () { var n = t(this), s = n.data("bs.tooltip"), o = "object" == typeof i && i; (s || "destroy" != i) && (s || n.data("bs.tooltip", s = new e(this, o)), "string" == typeof i && s[i]()) }) }, t.fn.tooltip.Constructor = e, t.fn.tooltip.noConflict = function () { return t.fn.tooltip = i, this } }(jQuery), function (t) { "use strict"; var e = function (t, e) { this.init("popover", t, e) }; if (!t.fn.tooltip) throw new Error("Popover requires tooltip.js"); e.VERSION = "3.3.2", e.DEFAULTS = t.extend({}, t.fn.tooltip.Constructor.DEFAULTS, { placement: "right", trigger: "click", content: "", template: '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>' }), (e.prototype = t.extend({}, t.fn.tooltip.Constructor.prototype)).constructor = e, e.prototype.getDefaults = function () { return e.DEFAULTS }, e.prototype.setContent = function () { var t = this.tip(), e = this.getTitle(), i = this.getContent(); t.find(".popover-title")[this.options.html ? "html" : "text"](e), t.find(".popover-content").children().detach().end()[this.options.html ? "string" == typeof i ? "html" : "append" : "text"](i), t.removeClass("fade top bottom left right in"), t.find(".popover-title").html() || t.find(".popover-title").hide() }, e.prototype.hasContent = function () { return this.getTitle() || this.getContent() }, e.prototype.getContent = function () { var t = this.$element, e = this.options; return t.attr("data-content") || ("function" == typeof e.content ? e.content.call(t[0]) : e.content) }, e.prototype.arrow = function () { return this.$arrow = this.$arrow || this.tip().find(".arrow") }, e.prototype.tip = function () { return this.$tip || (this.$tip = t(this.options.template)), this.$tip }; var i = t.fn.popover; t.fn.popover = function (i) { return this.each(function () { var n = t(this), s = n.data("bs.popover"), o = "object" == typeof i && i; (s || "destroy" != i) && (s || n.data("bs.popover", s = new e(this, o)), "string" == typeof i && s[i]()) }) }, t.fn.popover.Constructor = e, t.fn.popover.noConflict = function () { return t.fn.popover = i, this } }(jQuery), function (t) { "use strict"; function e(i, n) { var s = t.proxy(this.process, this); this.$body = t("body"), this.$scrollElement = t(t(i).is("body") ? window : i), this.options = t.extend({}, e.DEFAULTS, n), this.selector = (this.options.target || "") + " .nav li > a", this.offsets = [], this.targets = [], this.activeTarget = null, this.scrollHeight = 0, this.$scrollElement.on("scroll.bs.scrollspy", s), this.refresh(), this.process() } function i(i) { return this.each(function () { var n = t(this), s = n.data("bs.scrollspy"), o = "object" == typeof i && i; s || n.data("bs.scrollspy", s = new e(this, o)), "string" == typeof i && s[i]() }) } e.VERSION = "3.3.2", e.DEFAULTS = { offset: 10 }, e.prototype.getScrollHeight = function () { return this.$scrollElement[0].scrollHeight || Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight) }, e.prototype.refresh = function () { var e = "offset", i = 0; t.isWindow(this.$scrollElement[0]) || (e = "position", i = this.$scrollElement.scrollTop()), this.offsets = [], this.targets = [], this.scrollHeight = this.getScrollHeight(); var n = this; this.$body.find(this.selector).map(function () { var n = t(this), s = n.data("target") || n.attr("href"), o = /^#./.test(s) && t(s); return o && o.length && o.is(":visible") && [[o[e]().top + i, s]] || null }).sort(function (t, e) { return t[0] - e[0] }).each(function () { n.offsets.push(this[0]), n.targets.push(this[1]) }) }, e.prototype.process = function () { var t, e = this.$scrollElement.scrollTop() + this.options.offset, i = this.getScrollHeight(), n = this.options.offset + i - this.$scrollElement.height(), s = this.offsets, o = this.targets, r = this.activeTarget; if (this.scrollHeight != i && this.refresh(), e >= n) return r != (t = o[o.length - 1]) && this.activate(t); if (r && e < s[0]) return this.activeTarget = null, this.clear(); for (t = s.length; t--;) r != o[t] && e >= s[t] && (!s[t + 1] || e <= s[t + 1]) && this.activate(o[t]) }, e.prototype.activate = function (e) { this.activeTarget = e, this.clear(); var i = this.selector + '[data-target="' + e + '"],' + this.selector + '[href="' + e + '"]', n = t(i).parents("li").addClass("active"); n.parent(".dropdown-menu").length && (n = n.closest("li.dropdown").addClass("active")), n.trigger("activate.bs.scrollspy") }, e.prototype.clear = function () { t(this.selector).parentsUntil(this.options.target, ".active").removeClass("active") }; var n = t.fn.scrollspy; t.fn.scrollspy = i, t.fn.scrollspy.Constructor = e, t.fn.scrollspy.noConflict = function () { return t.fn.scrollspy = n, this }, t(window).on("load.bs.scrollspy.data-api", function () { t('[data-spy="scroll"]').each(function () { var e = t(this); i.call(e, e.data()) }) }) }(jQuery), function (t) { "use strict"; function e(e) { return this.each(function () { var n = t(this), s = n.data("bs.tab"); s || n.data("bs.tab", s = new i(this)), "string" == typeof e && s[e]() }) } var i = function (e) { this.element = t(e) }; i.VERSION = "3.3.2", i.TRANSITION_DURATION = 150, i.prototype.show = function () { var e = this.element, i = e.closest("ul:not(.dropdown-menu)"), n = e.data("target"); if (n || (n = (n = e.attr("href")) && n.replace(/.*(?=#[^\s]*$)/, "")), !e.parent("li").hasClass("active")) { var s = i.find(".active:last a"), o = t.Event("hide.bs.tab", { relatedTarget: e[0] }), r = t.Event("show.bs.tab", { relatedTarget: s[0] }); if (s.trigger(o), e.trigger(r), !r.isDefaultPrevented() && !o.isDefaultPrevented()) { var a = t(n); this.activate(e.closest("li"), i), this.activate(a, a.parent(), function () { s.trigger({ type: "hidden.bs.tab", relatedTarget: e[0] }), e.trigger({ type: "shown.bs.tab", relatedTarget: s[0] }) }) } } }, i.prototype.activate = function (e, n, s) { function o() { r.removeClass("active").find("> .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded", !1), e.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded", !0), a ? (e[0].offsetWidth, e.addClass("in")) : e.removeClass("fade"), e.parent(".dropdown-menu") && e.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded", !0), s && s() } var r = n.find("> .active"), a = s && t.support.transition && (r.length && r.hasClass("fade") || !!n.find("> .fade").length); r.length && a ? r.one("bsTransitionEnd", o).emulateTransitionEnd(i.TRANSITION_DURATION) : o(), r.removeClass("in") }; var n = t.fn.tab; t.fn.tab = e, t.fn.tab.Constructor = i, t.fn.tab.noConflict = function () { return t.fn.tab = n, this }; var s = function (i) { i.preventDefault(), e.call(t(this), "show") }; t(document).on("click.bs.tab.data-api", '[data-toggle="tab"]', s).on("click.bs.tab.data-api", '[data-toggle="pill"]', s) }(jQuery), function (t) { "use strict"; function e(e) { return this.each(function () { var n = t(this), s = n.data("bs.affix"), o = "object" == typeof e && e; s || n.data("bs.affix", s = new i(this, o)), "string" == typeof e && s[e]() }) } var i = function (e, n) { this.options = t.extend({}, i.DEFAULTS, n), this.$target = t(this.options.target).on("scroll.bs.affix.data-api", t.proxy(this.checkPosition, this)).on("click.bs.affix.data-api", t.proxy(this.checkPositionWithEventLoop, this)), this.$element = t(e), this.affixed = this.unpin = this.pinnedOffset = null, this.checkPosition() }; i.VERSION = "3.3.2", i.RESET = "affix affix-top affix-bottom", i.DEFAULTS = { offset: 0, target: window }, i.prototype.getState = function (t, e, i, n) { var s = this.$target.scrollTop(), o = this.$element.offset(), r = this.$target.height(); if (null != i && "top" == this.affixed) return i > s && "top"; if ("bottom" == this.affixed) return null != i ? !(s + this.unpin <= o.top) && "bottom" : !(t - n >= s + r) && "bottom"; var a = null == this.affixed, l = a ? s : o.top; return null != i && i >= s ? "top" : null != n && l + (a ? r : e) >= t - n && "bottom" }, i.prototype.getPinnedOffset = function () { if (this.pinnedOffset) return this.pinnedOffset; this.$element.removeClass(i.RESET).addClass("affix"); var t = this.$target.scrollTop(), e = this.$element.offset(); return this.pinnedOffset = e.top - t }, i.prototype.checkPositionWithEventLoop = function () { setTimeout(t.proxy(this.checkPosition, this), 1) }, i.prototype.checkPosition = function () { if (this.$element.is(":visible")) { var e = this.$element.height(), n = this.options.offset, s = n.top, o = n.bottom, r = t("body").height(); "object" != typeof n && (o = s = n), "function" == typeof s && (s = n.top(this.$element)), "function" == typeof o && (o = n.bottom(this.$element)); var a = this.getState(r, e, s, o); if (this.affixed != a) { null != this.unpin && this.$element.css("top", ""); var l = "affix" + (a ? "-" + a : ""), c = t.Event(l + ".bs.affix"); if (this.$element.trigger(c), c.isDefaultPrevented()) return; this.affixed = a, this.unpin = "bottom" == a ? this.getPinnedOffset() : null, this.$element.removeClass(i.RESET).addClass(l).trigger(l.replace("affix", "affixed") + ".bs.affix") } "bottom" == a && this.$element.offset({ top: r - e - o }) } }; var n = t.fn.affix; t.fn.affix = e, t.fn.affix.Constructor = i, t.fn.affix.noConflict = function () { return t.fn.affix = n, this }, t(window).on("load", function () { t('[data-spy="affix"]').each(function () { var i = t(this), n = i.data(); n.offset = n.offset || {}, null != n.offsetBottom && (n.offset.bottom = n.offsetBottom), null != n.offsetTop && (n.offset.top = n.offsetTop), e.call(i, n) }) }) }(jQuery), function (t) { t.fn.appear = function (e, i) { var n = t.extend({ one: !0 }, i); return this.each(function () { var i = t(this); if (i.appeared = !1, e) { var s = t(window), o = function () { if (i.is(":visible")) { var t = s.scrollLeft(), e = s.scrollTop(), o = i.offset(), r = o.left, a = o.top; a + i.height() >= e && a <= e + s.height() && r + i.width() >= t && r <= t + s.width() ? i.appeared || i.trigger("appear", n.data) : i.appeared = !1 } else i.appeared = !1 }, r = function () { if (i.appeared = !0, n.one) { s.unbind("scroll", o); var r = t.inArray(o, t.fn.appear.checks); r >= 0 && t.fn.appear.checks.splice(r, 1) } e.apply(this, arguments) }; n.one ? i.one("appear", n.data, r) : i.bind("appear", n.data, r), s.scroll(o), t.fn.appear.checks.push(o), o() } else i.trigger("appear", n.data) }) }, t.extend(t.fn.appear, { checks: [], timeout: null, checkAll: function () { var e = t.fn.appear.checks.length; if (e > 0) for (; e--;) t.fn.appear.checks[e]() }, run: function () { t.fn.appear.timeout && clearTimeout(t.fn.appear.timeout), t.fn.appear.timeout = setTimeout(t.fn.appear.checkAll, 20) } }), t.each(["append", "prepend", "after", "before", "attr", "removeAttr", "addClass", "removeClass", "toggleClass", "remove", "css", "show", "hide"], function (e, i) { var n = t.fn[i]; n && (t.fn[i] = function () { var e = n.apply(this, arguments); return t.fn.appear.run(), e }) }) }(jQuery), function (t) { "use strict"; t.fn.countTo = function (e) { return e = e || {}, t(this).each(function () { function i(t) { var e = n.formatter.call(r, t, n); a.text(e) } var n = t.extend({}, t.fn.countTo.defaults, { from: t(this).data("from"), to: t(this).data("to"), speed: t(this).data("speed"), refreshInterval: t(this).data("refresh-interval"), decimals: t(this).data("decimals") }, e), s = Math.ceil(n.speed / n.refreshInterval), o = (n.to - n.from) / s, r = this, a = t(this), l = 0, c = n.from, u = a.data("countTo") || {}; a.data("countTo", u), u.interval && clearInterval(u.interval), u.interval = setInterval(function () { l++, i(c += o), "function" == typeof n.onUpdate && n.onUpdate.call(r, c), l >= s && (a.removeData("countTo"), clearInterval(u.interval), c = n.to, "function" == typeof n.onComplete && n.onComplete.call(r, c)) }, n.refreshInterval), i(c) }) }, t.fn.countTo.defaults = { from: 0, to: 0, speed: 1e3, refreshInterval: 100, decimals: 0, formatter: function (t, e) { return t.toFixed(e.decimals) }, onUpdate: null, onComplete: null } }(jQuery), "function" != typeof Object.create && (Object.create = function (t) { function e() { } return e.prototype = t, new e }), function (t, e, i) { var n = { init: function (e, i) { this.$elem = t(i), this.options = t.extend({}, t.fn.owlCarousel.options, this.$elem.data(), e), this.userOptions = e, this.loadContent() }, loadContent: function () { var e, i = this; "function" == typeof i.options.beforeInit && i.options.beforeInit.apply(this, [i.$elem]), "string" == typeof i.options.jsonPath ? (e = i.options.jsonPath, t.getJSON(e, function (t) { var e, n = ""; if ("function" == typeof i.options.jsonSuccess) i.options.jsonSuccess.apply(this, [t]); else { for (e in t.owl) t.owl.hasOwnProperty(e) && (n += t.owl[e].item); i.$elem.html(n) } i.logIn() })) : i.logIn() }, logIn: function () { this.$elem.data("owl-originalStyles", this.$elem.attr("style")), this.$elem.data("owl-originalClasses", this.$elem.attr("class")), this.$elem.css({ opacity: 0 }), this.orignalItems = this.options.items, this.checkBrowser(), this.wrapperWidth = 0, this.checkVisible = null, this.setVars() }, setVars: function () { if (0 === this.$elem.children().length) return !1; this.baseClass(), this.eventTypes(), this.$userItems = this.$elem.children(), this.itemsAmount = this.$userItems.length, this.wrapItems(), this.$owlItems = this.$elem.find(".owl-item"), this.$owlWrapper = this.$elem.find(".owl-wrapper"), this.playDirection = "next", this.prevItem = 0, this.prevArr = [0], this.currentItem = 0, this.customEvents(), this.onStartup() }, onStartup: function () { this.updateItems(), this.calculateAll(), this.buildControls(), this.updateControls(), this.response(), this.moveEvents(), this.stopOnHover(), this.owlStatus(), !1 !== this.options.transitionStyle && this.transitionTypes(this.options.transitionStyle), !0 === this.options.autoPlay && (this.options.autoPlay = 5e3), this.play(), this.$elem.find(".owl-wrapper").css("display", "block"), this.$elem.is(":visible") ? this.$elem.css("opacity", 1) : this.watchVisibility(), this.onstartup = !1, this.eachMoveUpdate(), "function" == typeof this.options.afterInit && this.options.afterInit.apply(this, [this.$elem]) }, eachMoveUpdate: function () { !0 === this.options.lazyLoad && this.lazyLoad(), !0 === this.options.autoHeight && this.autoHeight(), this.onVisibleItems(), "function" == typeof this.options.afterAction && this.options.afterAction.apply(this, [this.$elem]) }, updateVars: function () { "function" == typeof this.options.beforeUpdate && this.options.beforeUpdate.apply(this, [this.$elem]), this.watchVisibility(), this.updateItems(), this.calculateAll(), this.updatePosition(), this.updateControls(), this.eachMoveUpdate(), "function" == typeof this.options.afterUpdate && this.options.afterUpdate.apply(this, [this.$elem]) }, reload: function () { var t = this; e.setTimeout(function () { t.updateVars() }, 0) }, watchVisibility: function () { var t = this; if (!1 !== t.$elem.is(":visible")) return !1; t.$elem.css({ opacity: 0 }), e.clearInterval(t.autoPlayInterval), e.clearInterval(t.checkVisible), t.checkVisible = e.setInterval(function () { t.$elem.is(":visible") && (t.reload(), t.$elem.animate({ opacity: 1 }, 200), e.clearInterval(t.checkVisible)) }, 500) }, wrapItems: function () { this.$userItems.wrapAll('<div class="owl-wrapper">').wrap('<div class="owl-item"></div>'), this.$elem.find(".owl-wrapper").wrap('<div class="owl-wrapper-outer">'), this.wrapperOuter = this.$elem.find(".owl-wrapper-outer"), this.$elem.css("display", "block") }, baseClass: function () { var t = this.$elem.hasClass(this.options.baseClass), e = this.$elem.hasClass(this.options.theme); t || this.$elem.addClass(this.options.baseClass), e || this.$elem.addClass(this.options.theme) }, updateItems: function () { var e, i; if (!1 === this.options.responsive) return !1; if (!0 === this.options.singleItem) return this.options.items = this.orignalItems = 1, this.options.itemsCustom = !1, this.options.itemsDesktop = !1, this.options.itemsDesktopSmall = !1, this.options.itemsTablet = !1, this.options.itemsTabletSmall = !1, this.options.itemsMobile = !1; if ((e = t(this.options.responsiveBaseWidth).width()) > (this.options.itemsDesktop[0] || this.orignalItems) && (this.options.items = this.orignalItems), !1 !== this.options.itemsCustom) for (this.options.itemsCustom.sort(function (t, e) { return t[0] - e[0] }), i = 0; i < this.options.itemsCustom.length; i += 1) this.options.itemsCustom[i][0] <= e && (this.options.items = this.options.itemsCustom[i][1]); else e <= this.options.itemsDesktop[0] && !1 !== this.options.itemsDesktop && (this.options.items = this.options.itemsDesktop[1]), e <= this.options.itemsDesktopSmall[0] && !1 !== this.options.itemsDesktopSmall && (this.options.items = this.options.itemsDesktopSmall[1]), e <= this.options.itemsTablet[0] && !1 !== this.options.itemsTablet && (this.options.items = this.options.itemsTablet[1]), e <= this.options.itemsTabletSmall[0] && !1 !== this.options.itemsTabletSmall && (this.options.items = this.options.itemsTabletSmall[1]), e <= this.options.itemsMobile[0] && !1 !== this.options.itemsMobile && (this.options.items = this.options.itemsMobile[1]); this.options.items > this.itemsAmount && !0 === this.options.itemsScaleUp && (this.options.items = this.itemsAmount) }, response: function () { var i, n, s = this; if (!0 !== s.options.responsive) return !1; n = t(e).width(), s.resizer = function () { t(e).width() !== n && (!1 !== s.options.autoPlay && e.clearInterval(s.autoPlayInterval), e.clearTimeout(i), i = e.setTimeout(function () { n = t(e).width(), s.updateVars() }, s.options.responsiveRefreshRate)) }, t(e).resize(s.resizer) }, updatePosition: function () { this.jumpTo(this.currentItem), !1 !== this.options.autoPlay && this.checkAp() }, appendItemsSizes: function () { var e = this, i = 0, n = e.itemsAmount - e.options.items; e.$owlItems.each(function (s) { var o = t(this); o.css({ width: e.itemWidth }).data("owl-item", Number(s)), 0 != s % e.options.items && s !== n || s > n || (i += 1), o.data("owl-roundPages", i) }) }, appendWrapperSizes: function () { this.$owlWrapper.css({ width: this.$owlItems.length * this.itemWidth * 2, left: 0 }), this.appendItemsSizes() }, calculateAll: function () { this.calculateWidth(), this.appendWrapperSizes(), this.loops(), this.max() }, calculateWidth: function () { this.itemWidth = Math.round(this.$elem.width() / this.options.items) }, max: function () { var t = -1 * (this.itemsAmount * this.itemWidth - this.options.items * this.itemWidth); return this.options.items > this.itemsAmount ? this.maximumPixels = t = this.maximumItem = 0 : (this.maximumItem = this.itemsAmount - this.options.items, this.maximumPixels = t), t }, min: function () { return 0 }, loops: function () { var e, i, n = 0, s = 0; for (this.positionsInArray = [0], this.pagesInArray = [], e = 0; e < this.itemsAmount; e += 1) s += this.itemWidth, this.positionsInArray.push(-s), !0 === this.options.scrollPerPage && (i = (i = t(this.$owlItems[e])).data("owl-roundPages")) !== n && (this.pagesInArray[n] = this.positionsInArray[e], n = i) }, buildControls: function () { !0 !== this.options.navigation && !0 !== this.options.pagination || (this.owlControls = t('<div class="owl-controls"/>').toggleClass("clickable", !this.browser.isTouch).appendTo(this.$elem)), !0 === this.options.pagination && this.buildPagination(), !0 === this.options.navigation && this.buildButtons() }, buildButtons: function () { var e = this, i = t('<div class="owl-buttons"/>'); e.owlControls.append(i), e.buttonPrev = t("<div/>", { class: "owl-prev", html: e.options.navigationText[0] || "" }), e.buttonNext = t("<div/>", { class: "owl-next", html: e.options.navigationText[1] || "" }), i.append(e.buttonPrev).append(e.buttonNext), i.on("touchstart.owlControls mousedown.owlControls", 'div[class^="owl"]', function (t) { t.preventDefault() }), i.on("touchend.owlControls mouseup.owlControls", 'div[class^="owl"]', function (i) { i.preventDefault(), t(this).hasClass("owl-next") ? e.next() : e.prev() }) }, buildPagination: function () { var e = this; e.paginationWrapper = t('<div class="owl-pagination"/>'), e.owlControls.append(e.paginationWrapper), e.paginationWrapper.on("touchend.owlControls mouseup.owlControls", ".owl-page", function (i) { i.preventDefault(), Number(t(this).data("owl-page")) !== e.currentItem && e.goTo(Number(t(this).data("owl-page")), !0) }) }, updatePagination: function () { var e, i, n, s, o, r; if (!1 === this.options.pagination) return !1; for (this.paginationWrapper.html(""), e = 0, i = this.itemsAmount - this.itemsAmount % this.options.items, s = 0; s < this.itemsAmount; s += 1) 0 == s % this.options.items && (e += 1, i === s && (n = this.itemsAmount - this.options.items), o = t("<div/>", { class: "owl-page" }), r = t("<span></span>", { text: !0 === this.options.paginationNumbers ? e : "", class: !0 === this.options.paginationNumbers ? "owl-numbers" : "" }), o.append(r), o.data("owl-page", i === s ? n : s), o.data("owl-roundPages", e), this.paginationWrapper.append(o)); this.checkPagination() }, checkPagination: function () { var e = this; if (!1 === e.options.pagination) return !1; e.paginationWrapper.find(".owl-page").each(function () { t(this).data("owl-roundPages") === t(e.$owlItems[e.currentItem]).data("owl-roundPages") && (e.paginationWrapper.find(".owl-page").removeClass("active"), t(this).addClass("active")) }) }, checkNavigation: function () { if (!1 === this.options.navigation) return !1; !1 === this.options.rewindNav && (0 === this.currentItem && 0 === this.maximumItem ? (this.buttonPrev.addClass("disabled"), this.buttonNext.addClass("disabled")) : 0 === this.currentItem && 0 !== this.maximumItem ? (this.buttonPrev.addClass("disabled"), this.buttonNext.removeClass("disabled")) : this.currentItem === this.maximumItem ? (this.buttonPrev.removeClass("disabled"), this.buttonNext.addClass("disabled")) : 0 !== this.currentItem && this.currentItem !== this.maximumItem && (this.buttonPrev.removeClass("disabled"), this.buttonNext.removeClass("disabled"))) }, updateControls: function () { this.updatePagination(), this.checkNavigation(), this.owlControls && (this.options.items >= this.itemsAmount ? this.owlControls.hide() : this.owlControls.show()) }, destroyControls: function () { this.owlControls && this.owlControls.remove() }, next: function (t) { if (this.isTransition) return !1; if (this.currentItem += !0 === this.options.scrollPerPage ? this.options.items : 1, this.currentItem > this.maximumItem + (!0 === this.options.scrollPerPage ? this.options.items - 1 : 0)) { if (!0 !== this.options.rewindNav) return this.currentItem = this.maximumItem, !1; this.currentItem = 0, t = "rewind" } this.goTo(this.currentItem, t) }, prev: function (t) { if (this.isTransition) return !1; if (this.currentItem = !0 === this.options.scrollPerPage && 0 < this.currentItem && this.currentItem < this.options.items ? 0 : this.currentItem - (!0 === this.options.scrollPerPage ? this.options.items : 1), 0 > this.currentItem) { if (!0 !== this.options.rewindNav) return this.currentItem = 0, !1; this.currentItem = this.maximumItem, t = "rewind" } this.goTo(this.currentItem, t) }, goTo: function (t, i, n) { var s = this; return !s.isTransition && ("function" == typeof s.options.beforeMove && s.options.beforeMove.apply(this, [s.$elem]), t >= s.maximumItem ? t = s.maximumItem : 0 >= t && (t = 0), s.currentItem = s.owl.currentItem = t, !1 !== s.options.transitionStyle && "drag" !== n && 1 === s.options.items && !0 === s.browser.support3d ? (s.swapSpeed(0), !0 === s.browser.support3d ? s.transition3d(s.positionsInArray[t]) : s.css2slide(s.positionsInArray[t], 1), s.afterGo(), s.singleItemTransition(), !1) : (t = s.positionsInArray[t], !0 === s.browser.support3d ? (s.isCss3Finish = !1, !0 === i ? (s.swapSpeed("paginationSpeed"), e.setTimeout(function () { s.isCss3Finish = !0 }, s.options.paginationSpeed)) : "rewind" === i ? (s.swapSpeed(s.options.rewindSpeed), e.setTimeout(function () { s.isCss3Finish = !0 }, s.options.rewindSpeed)) : (s.swapSpeed("slideSpeed"), e.setTimeout(function () { s.isCss3Finish = !0 }, s.options.slideSpeed)), s.transition3d(t)) : !0 === i ? s.css2slide(t, s.options.paginationSpeed) : "rewind" === i ? s.css2slide(t, s.options.rewindSpeed) : s.css2slide(t, s.options.slideSpeed), void s.afterGo())) }, jumpTo: function (t) { "function" == typeof this.options.beforeMove && this.options.beforeMove.apply(this, [this.$elem]), t >= this.maximumItem || -1 === t ? t = this.maximumItem : 0 >= t && (t = 0), this.swapSpeed(0), !0 === this.browser.support3d ? this.transition3d(this.positionsInArray[t]) : this.css2slide(this.positionsInArray[t], 1), this.currentItem = this.owl.currentItem = t, this.afterGo() }, afterGo: function () { this.prevArr.push(this.currentItem), this.prevItem = this.owl.prevItem = this.prevArr[this.prevArr.length - 2], this.prevArr.shift(0), this.prevItem !== this.currentItem && (this.checkPagination(), this.checkNavigation(), this.eachMoveUpdate(), !1 !== this.options.autoPlay && this.checkAp()), "function" == typeof this.options.afterMove && this.prevItem !== this.currentItem && this.options.afterMove.apply(this, [this.$elem]) }, stop: function () { this.apStatus = "stop", e.clearInterval(this.autoPlayInterval) }, checkAp: function () { "stop" !== this.apStatus && this.play() }, play: function () { var t = this; if (t.apStatus = "play", !1 === t.options.autoPlay) return !1; e.clearInterval(t.autoPlayInterval), t.autoPlayInterval = e.setInterval(function () { t.next(!0) }, t.options.autoPlay) }, swapSpeed: function (t) { "slideSpeed" === t ? this.$owlWrapper.css(this.addCssSpeed(this.options.slideSpeed)) : "paginationSpeed" === t ? this.$owlWrapper.css(this.addCssSpeed(this.options.paginationSpeed)) : "string" != typeof t && this.$owlWrapper.css(this.addCssSpeed(t)) }, addCssSpeed: function (t) { return { "-webkit-transition": "all " + t + "ms ease", "-moz-transition": "all " + t + "ms ease", "-o-transition": "all " + t + "ms ease", transition: "all " + t + "ms ease" } }, removeTransition: function () { return { "-webkit-transition": "", "-moz-transition": "", "-o-transition": "", transition: "" } }, doTranslate: function (t) { return { "-webkit-transform": "translate3d(" + t + "px, 0px, 0px)", "-moz-transform": "translate3d(" + t + "px, 0px, 0px)", "-o-transform": "translate3d(" + t + "px, 0px, 0px)", "-ms-transform": "translate3d(" + t + "px, 0px, 0px)", transform: "translate3d(" + t + "px, 0px,0px)" } }, transition3d: function (t) { this.$owlWrapper.css(this.doTranslate(t)) }, css2move: function (t) { this.$owlWrapper.css({ left: t }) }, css2slide: function (t, e) { var i = this; i.isCssFinish = !1, i.$owlWrapper.stop(!0, !0).animate({ left: t }, { duration: e || i.options.slideSpeed, complete: function () { i.isCssFinish = !0 } }) }, checkBrowser: function () { var t = i.createElement("div"); t.style.cssText = "  -moz-transform:translate3d(0px, 0px, 0px); -ms-transform:translate3d(0px, 0px, 0px); -o-transform:translate3d(0px, 0px, 0px); -webkit-transform:translate3d(0px, 0px, 0px); transform:translate3d(0px, 0px, 0px)", t = t.style.cssText.match(/translate3d\(0px, 0px, 0px\)/g), this.browser = { support3d: null !== t && 1 === t.length, isTouch: "ontouchstart" in e || e.navigator.msMaxTouchPoints } }, moveEvents: function () { !1 === this.options.mouseDrag && !1 === this.options.touchDrag || (this.gestures(), this.disabledEvents()) }, eventTypes: function () { var t = ["s", "e", "x"]; this.ev_types = {}, !0 === this.options.mouseDrag && !0 === this.options.touchDrag ? t = ["touchstart.owl mousedown.owl", "touchmove.owl mousemove.owl", "touchend.owl touchcancel.owl mouseup.owl"] : !1 === this.options.mouseDrag && !0 === this.options.touchDrag ? t = ["touchstart.owl", "touchmove.owl", "touchend.owl touchcancel.owl"] : !0 === this.options.mouseDrag && !1 === this.options.touchDrag && (t = ["mousedown.owl", "mousemove.owl", "mouseup.owl"]), this.ev_types.start = t[0], this.ev_types.move = t[1], this.ev_types.end = t[2] }, disabledEvents: function () { this.$elem.on("dragstart.owl", function (t) { t.preventDefault() }), this.$elem.on("mousedown.disableTextSelect", function (e) { return t(e.target).is("input, textarea, select, option") }) }, gestures: function () { function n(t) { if (void 0 !== t.touches) return { x: t.touches[0].pageX, y: t.touches[0].pageY }; if (void 0 === t.touches) { if (void 0 !== t.pageX) return { x: t.pageX, y: t.pageY }; if (void 0 === t.pageX) return { x: t.clientX, y: t.clientY } } } function s(e) { "on" === e ? (t(i).on(a.ev_types.move, o), t(i).on(a.ev_types.end, r)) : "off" === e && (t(i).off(a.ev_types.move), t(i).off(a.ev_types.end)) } function o(s) { s = s.originalEvent || s || e.event, a.newPosX = n(s).x - l.offsetX, a.newPosY = n(s).y - l.offsetY, a.newRelativeX = a.newPosX - l.relativePos, "function" == typeof a.options.startDragging && !0 !== l.dragging && 0 !== a.newRelativeX && (l.dragging = !0, a.options.startDragging.apply(a, [a.$elem])), (8 < a.newRelativeX || -8 > a.newRelativeX) && !0 === a.browser.isTouch && (void 0 !== s.preventDefault ? s.preventDefault() : s.returnValue = !1, l.sliding = !0), (10 < a.newPosY || -10 > a.newPosY) && !1 === l.sliding && t(i).off("touchmove.owl"), a.newPosX = Math.max(Math.min(a.newPosX, a.newRelativeX / 5), a.maximumPixels + a.newRelativeX / 5), !0 === a.browser.support3d ? a.transition3d(a.newPosX) : a.css2move(a.newPosX) } function r(i) { var n; (i = i.originalEvent || i || e.event).target = i.target || i.srcElement, l.dragging = !1, !0 !== a.browser.isTouch && a.$owlWrapper.removeClass("grabbing"), a.dragDirection = 0 > a.newRelativeX ? a.owl.dragDirection = "left" : a.owl.dragDirection = "right", 0 !== a.newRelativeX && (n = a.getNewPosition(), a.goTo(n, !1, "drag"), l.targetElement === i.target && !0 !== a.browser.isTouch && (t(i.target).on("click.disable", function (e) { e.stopImmediatePropagation(), e.stopPropagation(), e.preventDefault(), t(e.target).off("click.disable") }), n = (i = t._data(i.target, "events").click).pop(), i.splice(0, 0, n))), s("off") } var a = this, l = { offsetX: 0, offsetY: 0, baseElWidth: 0, relativePos: 0, position: null, minSwipe: null, maxSwipe: null, sliding: null, dargging: null, targetElement: null }; a.isCssFinish = !0, a.$elem.on(a.ev_types.start, ".owl-wrapper", function (i) { var o; if (3 === (i = i.originalEvent || i || e.event).which) return !1; if (!(a.itemsAmount <= a.options.items)) { if (!1 === a.isCssFinish && !a.options.dragBeforeAnimFinish || !1 === a.isCss3Finish && !a.options.dragBeforeAnimFinish) return !1; !1 !== a.options.autoPlay && e.clearInterval(a.autoPlayInterval), !0 === a.browser.isTouch || a.$owlWrapper.hasClass("grabbing") || a.$owlWrapper.addClass("grabbing"), a.newPosX = 0, a.newRelativeX = 0, t(this).css(a.removeTransition()), o = t(this).position(), l.relativePos = o.left, l.offsetX = n(i).x - o.left, l.offsetY = n(i).y - o.top, s("on"), l.sliding = !1, l.targetElement = i.target || i.srcElement } }) }, getNewPosition: function () { var t = this.closestItem(); return t > this.maximumItem ? t = this.currentItem = this.maximumItem : 0 <= this.newPosX && (this.currentItem = t = 0), t }, closestItem: function () { var e = this, i = !0 === e.options.scrollPerPage ? e.pagesInArray : e.positionsInArray, n = e.newPosX, s = null; return t.each(i, function (o, r) { n - e.itemWidth / 20 > i[o + 1] && n - e.itemWidth / 20 < r && "left" === e.moveDirection() ? (s = r, e.currentItem = !0 === e.options.scrollPerPage ? t.inArray(s, e.positionsInArray) : o) : n + e.itemWidth / 20 < r && n + e.itemWidth / 20 > (i[o + 1] || i[o] - e.itemWidth) && "right" === e.moveDirection() && (!0 === e.options.scrollPerPage ? (s = i[o + 1] || i[i.length - 1], e.currentItem = t.inArray(s, e.positionsInArray)) : (s = i[o + 1], e.currentItem = o + 1)) }), e.currentItem }, moveDirection: function () { var t; return 0 > this.newRelativeX ? (t = "right", this.playDirection = "next") : (t = "left", this.playDirection = "prev"), t }, customEvents: function () { var t = this; t.$elem.on("owl.next", function () { t.next() }), t.$elem.on("owl.prev", function () { t.prev() }), t.$elem.on("owl.play", function (e, i) { t.options.autoPlay = i, t.play(), t.hoverStatus = "play" }), t.$elem.on("owl.stop", function () { t.stop(), t.hoverStatus = "stop" }), t.$elem.on("owl.goTo", function (e, i) { t.goTo(i) }), t.$elem.on("owl.jumpTo", function (e, i) { t.jumpTo(i) }) }, stopOnHover: function () { var t = this; !0 === t.options.stopOnHover && !0 !== t.browser.isTouch && !1 !== t.options.autoPlay && (t.$elem.on("mouseover", function () { t.stop() }), t.$elem.on("mouseout", function () { "stop" !== t.hoverStatus && t.play() })) }, lazyLoad: function () { var e, i, n, s; if (!1 === this.options.lazyLoad) return !1; for (e = 0; e < this.itemsAmount; e += 1) "loaded" !== (i = t(this.$owlItems[e])).data("owl-loaded") && (n = i.data("owl-item"), "string" != typeof (s = i.find(".lazyOwl")).data("src") ? i.data("owl-loaded", "loaded") : (void 0 === i.data("owl-loaded") && (s.hide(), i.addClass("loading").data("owl-loaded", "checked")), (!0 !== this.options.lazyFollow || n >= this.currentItem) && n < this.currentItem + this.options.items && s.length && this.lazyPreload(i, s))) }, lazyPreload: function (t, i) { function n() { t.data("owl-loaded", "loaded").removeClass("loading"), i.removeAttr("data-src"), "fade" === o.options.lazyEffect ? i.fadeIn(400) : i.show(), "function" == typeof o.options.afterLazyLoad && o.options.afterLazyLoad.apply(this, [o.$elem]) } var s, o = this, r = 0; "DIV" === i.prop("tagName") ? (i.css("background-image", "url(" + i.data("src") + ")"), s = !0) : i[0].src = i.data("src"), function t() { r += 1, o.completeImg(i.get(0)) || !0 === s ? n() : 100 >= r ? e.setTimeout(t, 100) : n() }() }, autoHeight: function () { function i() { var i = t(s.$owlItems[s.currentItem]).height(); s.wrapperOuter.css("height", i + "px"), s.wrapperOuter.hasClass("autoHeight") || e.setTimeout(function () { s.wrapperOuter.addClass("autoHeight") }, 0) } var n, s = this, o = t(s.$owlItems[s.currentItem]).find("img"); void 0 !== o.get(0) ? (n = 0, function t() { n += 1, s.completeImg(o.get(0)) ? i() : 100 >= n ? e.setTimeout(t, 100) : s.wrapperOuter.css("height", "") }()) : i() }, completeImg: function (t) { return !(!t.complete || void 0 !== t.naturalWidth && 0 === t.naturalWidth) }, onVisibleItems: function () { var e; for (!0 === this.options.addClassActive && this.$owlItems.removeClass("active"), this.visibleItems = [], e = this.currentItem; e < this.currentItem + this.options.items; e += 1) this.visibleItems.push(e), !0 === this.options.addClassActive && t(this.$owlItems[e]).addClass("active"); this.owl.visibleItems = this.visibleItems }, transitionTypes: function (t) { this.outClass = "owl-" + t + "-out", this.inClass = "owl-" + t + "-in" }, singleItemTransition: function () { var t = this, e = t.outClass, i = t.inClass, n = t.$owlItems.eq(t.currentItem), s = t.$owlItems.eq(t.prevItem), o = Math.abs(t.positionsInArray[t.currentItem]) + t.positionsInArray[t.prevItem], r = Math.abs(t.positionsInArray[t.currentItem]) + t.itemWidth / 2; t.isTransition = !0, t.$owlWrapper.addClass("owl-origin").css({ "-webkit-transform-origin": r + "px", "-moz-perspective-origin": r + "px", "perspective-origin": r + "px" }), s.css({ position: "relative", left: o + "px" }).addClass(e).on("webkitAnimationEnd oAnimationEnd MSAnimationEnd animationend", function () { t.endPrev = !0, s.off("webkitAnimationEnd oAnimationEnd MSAnimationEnd animationend"), t.clearTransStyle(s, e) }), n.addClass(i).on("webkitAnimationEnd oAnimationEnd MSAnimationEnd animationend", function () { t.endCurrent = !0, n.off("webkitAnimationEnd oAnimationEnd MSAnimationEnd animationend"), t.clearTransStyle(n, i) }) }, clearTransStyle: function (t, e) { t.css({ position: "", left: "" }).removeClass(e), this.endPrev && this.endCurrent && (this.$owlWrapper.removeClass("owl-origin"), this.isTransition = this.endCurrent = this.endPrev = !1) }, owlStatus: function () { this.owl = { userOptions: this.userOptions, baseElement: this.$elem, userItems: this.$userItems, owlItems: this.$owlItems, currentItem: this.currentItem, prevItem: this.prevItem, visibleItems: this.visibleItems, isTouch: this.browser.isTouch, browser: this.browser, dragDirection: this.dragDirection } }, clearEvents: function () { this.$elem.off(".owl owl mousedown.disableTextSelect"), t(i).off(".owl owl"), t(e).off("resize", this.resizer) }, unWrap: function () { 0 !== this.$elem.children().length && (this.$owlWrapper.unwrap(), this.$userItems.unwrap().unwrap(), this.owlControls && this.owlControls.remove()), this.clearEvents(), this.$elem.attr("style", this.$elem.data("owl-originalStyles") || "").attr("class", this.$elem.data("owl-originalClasses")) }, destroy: function () { this.stop(), e.clearInterval(this.checkVisible), this.unWrap(), this.$elem.removeData() }, reinit: function (e) { e = t.extend({}, this.userOptions, e), this.unWrap(), this.init(e, this.$elem) }, addItem: function (t, e) { var i; return !!t && (0 === this.$elem.children().length ? (this.$elem.append(t), this.setVars(), !1) : (this.unWrap(), (i = void 0 === e || -1 === e ? -1 : e) >= this.$userItems.length || -1 === i ? this.$userItems.eq(-1).after(t) : this.$userItems.eq(i).before(t), void this.setVars())) }, removeItem: function (t) { if (0 === this.$elem.children().length) return !1; t = void 0 === t || -1 === t ? -1 : t, this.unWrap(), this.$userItems.eq(t).remove(), this.setVars() } }; t.fn.owlCarousel = function (e) { return this.each(function () { if (!0 === t(this).data("owl-init")) return !1; t(this).data("owl-init", !0); var i = Object.create(n); i.init(e, this), t.data(this, "owlCarousel", i) }) }, t.fn.owlCarousel.options = { items: 5, itemsCustom: !1, itemsDesktop: [1199, 4], itemsDesktopSmall: [979, 3], itemsTablet: [768, 2], itemsTabletSmall: !1, itemsMobile: [479, 1], singleItem: !1, itemsScaleUp: !1, slideSpeed: 200, paginationSpeed: 800, rewindSpeed: 1e3, autoPlay: !1, stopOnHover: !1, navigation: !1, navigationText: ["prev", "next"], rewindNav: !0, scrollPerPage: !1, pagination: !0, paginationNumbers: !1, responsive: !0, responsiveRefreshRate: 200, responsiveBaseWidth: e, baseClass: "owl-carousel", theme: "owl-theme", lazyLoad: !1, lazyFollow: !0, lazyEffect: "fade", autoHeight: !1, jsonPath: !1, jsonSuccess: !1, dragBeforeAnimFinish: !0, mouseDrag: !0, touchDrag: !0, addClassActive: !1, transitionStyle: !1, beforeUpdate: !1, afterUpdate: !1, beforeInit: !1, afterInit: !1, beforeMove: !1, afterMove: !1, afterAction: !1, startDragging: !1, afterLazyLoad: !1 } }(jQuery, window, document), function (t) { "function" == typeof define && define.amd ? define(["jquery"], t) : t("object" == typeof exports ? require("jquery") : window.jQuery || window.Zepto) }(function (t) { var e, i, n, s, o, r, a = "Close", l = "BeforeClose", c = "MarkupParse", u = "Open", d = "Change", h = "mfp", p = "." + h, f = "mfp-ready", m = "mfp-removing", g = "mfp-prevent-close", v = function () { }, y = !!window.jQuery, b = t(window), w = function (t, i) { e.ev.on(h + t + p, i) }, x = function (e, i, n, s) { var o = document.createElement("div"); return o.className = "mfp-" + e, n && (o.innerHTML = n), s ? i && i.appendChild(o) : (o = t(o), i && o.appendTo(i)), o }, C = function (i, n) { e.ev.triggerHandler(h + i, n), e.st.callbacks && (i = i.charAt(0).toLowerCase() + i.slice(1), e.st.callbacks[i] && e.st.callbacks[i].apply(e, t.isArray(n) ? n : [n])) }, I = function (i) { return i === r && e.currTemplate.closeBtn || (e.currTemplate.closeBtn = t(e.st.closeMarkup.replace("%title%", e.st.tClose)), r = i), e.currTemplate.closeBtn }, T = function () { t.magnificPopup.instance || ((e = new v).init(), t.magnificPopup.instance = e) }; v.prototype = { constructor: v, init: function () { var i = navigator.appVersion; e.isIE7 = -1 !== i.indexOf("MSIE 7."), e.isIE8 = -1 !== i.indexOf("MSIE 8."), e.isLowIE = e.isIE7 || e.isIE8, e.isAndroid = /android/gi.test(i), e.isIOS = /iphone|ipad|ipod/gi.test(i), e.supportsTransition = function () { var t = document.createElement("p").style, e = ["ms", "O", "Moz", "Webkit"]; if (void 0 !== t.transition) return !0; for (; e.length;) if (e.pop() + "Transition" in t) return !0; return !1 }(), e.probablyMobile = e.isAndroid || e.isIOS || /(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent), n = t(document), e.popupsCache = {} }, open: function (i) { var s; if (!1 === i.isObj) { e.items = i.items.toArray(), e.index = 0; var r, a = i.items; for (s = 0; s < a.length; s++) if ((r = a[s]).parsed && (r = r.el[0]), r === i.el[0]) { e.index = s; break } } else e.items = t.isArray(i.items) ? i.items : [i.items], e.index = i.index || 0; if (!e.isOpen) { e.types = [], o = "", e.ev = i.mainEl && i.mainEl.length ? i.mainEl.eq(0) : n, i.key ? (e.popupsCache[i.key] || (e.popupsCache[i.key] = {}), e.currTemplate = e.popupsCache[i.key]) : e.currTemplate = {}, e.st = t.extend(!0, {}, t.magnificPopup.defaults, i), e.fixedContentPos = "auto" === e.st.fixedContentPos ? !e.probablyMobile : e.st.fixedContentPos, e.st.modal && (e.st.closeOnContentClick = !1, e.st.closeOnBgClick = !1, e.st.showCloseBtn = !1, e.st.enableEscapeKey = !1), e.bgOverlay || (e.bgOverlay = x("bg").on("click" + p, function () { e.close() }), e.wrap = x("wrap").attr("tabindex", -1).on("click" + p, function (t) { e._checkIfClose(t.target) && e.close() }), e.container = x("container", e.wrap)), e.contentContainer = x("content"), e.st.preloader && (e.preloader = x("preloader", e.container, e.st.tLoading)); var l = t.magnificPopup.modules; for (s = 0; s < l.length; s++) { var d = l[s]; d = d.charAt(0).toUpperCase() + d.slice(1), e["init" + d].call(e) } C("BeforeOpen"), e.st.showCloseBtn && (e.st.closeBtnInside ? (w(c, function (t, e, i, n) { i.close_replaceWith = I(n.type) }), o += " mfp-close-btn-in") : e.wrap.append(I())), e.st.alignTop && (o += " mfp-align-top"), e.wrap.css(e.fixedContentPos ? { overflow: e.st.overflowY, overflowX: "hidden", overflowY: e.st.overflowY } : { top: b.scrollTop(), position: "absolute" }), (!1 === e.st.fixedBgPos || "auto" === e.st.fixedBgPos && !e.fixedContentPos) && e.bgOverlay.css({ height: n.height(), position: "absolute" }), e.st.enableEscapeKey && n.on("keyup" + p, function (t) { 27 === t.keyCode && e.close() }), b.on("resize" + p, function () { e.updateSize() }), e.st.closeOnContentClick || (o += " mfp-auto-cursor"), o && e.wrap.addClass(o); var h = e.wH = b.height(), m = {}; if (e.fixedContentPos && e._hasScrollBar(h)) { var g = e._getScrollbarSize(); g && (m.marginRight = g) } e.fixedContentPos && (e.isIE7 ? t("body, html").css("overflow", "hidden") : m.overflow = "hidden"); var v = e.st.mainClass; return e.isIE7 && (v += " mfp-ie7"), v && e._addClassToMFP(v), e.updateItemHTML(), C("BuildControls"), t("html").css(m), e.bgOverlay.add(e.wrap).prependTo(e.st.prependTo || t(document.body)), e._lastFocusedEl = document.activeElement, setTimeout(function () { e.content ? (e._addClassToMFP(f), e._setFocus()) : e.bgOverlay.addClass(f), n.on("focusin" + p, e._onFocusIn) }, 16), e.isOpen = !0, e.updateSize(h), C(u), i } e.updateItemHTML() }, close: function () { e.isOpen && (C(l), e.isOpen = !1, e.st.removalDelay && !e.isLowIE && e.supportsTransition ? (e._addClassToMFP(m), setTimeout(function () { e._close() }, e.st.removalDelay)) : e._close()) }, _close: function () { C(a); var i = m + " " + f + " "; if (e.bgOverlay.detach(), e.wrap.detach(), e.container.empty(), e.st.mainClass && (i += e.st.mainClass + " "), e._removeClassFromMFP(i), e.fixedContentPos) { var s = { marginRight: "" }; e.isIE7 ? t("body, html").css("overflow", "") : s.overflow = "", t("html").css(s) } n.off("keyup.mfp focusin" + p), e.ev.off(p), e.wrap.attr("class", "mfp-wrap").removeAttr("style"), e.bgOverlay.attr("class", "mfp-bg"), e.container.attr("class", "mfp-container"), !e.st.showCloseBtn || e.st.closeBtnInside && !0 !== e.currTemplate[e.currItem.type] || e.currTemplate.closeBtn && e.currTemplate.closeBtn.detach(), e._lastFocusedEl && t(e._lastFocusedEl).focus(), e.currItem = null, e.content = null, e.currTemplate = null, e.prevHeight = 0, C("AfterClose") }, updateSize: function (t) { if (e.isIOS) { var i = document.documentElement.clientWidth / window.innerWidth, n = window.innerHeight * i; e.wrap.css("height", n), e.wH = n } else e.wH = t || b.height(); e.fixedContentPos || e.wrap.css("height", e.wH), C("Resize") }, updateItemHTML: function () { var i = e.items[e.index]; e.contentContainer.detach(), e.content && e.content.detach(), i.parsed || (i = e.parseEl(e.index)); var n = i.type; if (C("BeforeChange", [e.currItem ? e.currItem.type : "", n]), e.currItem = i, !e.currTemplate[n]) { var o = !!e.st[n] && e.st[n].markup; C("FirstMarkupParse", o), e.currTemplate[n] = !o || t(o) } s && s !== i.type && e.container.removeClass("mfp-" + s + "-holder"); var r = e["get" + n.charAt(0).toUpperCase() + n.slice(1)](i, e.currTemplate[n]); e.appendContent(r, n), i.preloaded = !0, C(d, i), s = i.type, e.container.prepend(e.contentContainer), C("AfterChange") }, appendContent: function (t, i) { e.content = t, t ? e.st.showCloseBtn && e.st.closeBtnInside && !0 === e.currTemplate[i] ? e.content.find(".mfp-close").length || e.content.append(I()) : e.content = t : e.content = "", C("BeforeAppend"), e.container.addClass("mfp-" + i + "-holder"), e.contentContainer.append(e.content) }, parseEl: function (i) { var n, s = e.items[i]; if (s.tagName ? s = { el: t(s) } : (n = s.type, s = { data: s, src: s.src }), s.el) { for (var o = e.types, r = 0; r < o.length; r++) if (s.el.hasClass("mfp-" + o[r])) { n = o[r]; break } s.src = s.el.attr("data-mfp-src"), s.src || (s.src = s.el.attr("href")) } return s.type = n || e.st.type || "inline", s.index = i, s.parsed = !0, e.items[i] = s, C("ElementParse", s), e.items[i] }, addGroup: function (t, i) { var n = function (n) { n.mfpEl = this, e._openClick(n, t, i) }; i || (i = {}); var s = "click.magnificPopup"; i.mainEl = t, i.items ? (i.isObj = !0, t.off(s).on(s, n)) : (i.isObj = !1, i.delegate ? t.off(s).on(s, i.delegate, n) : (i.items = t, t.off(s).on(s, n))) }, _openClick: function (i, n, s) { if ((void 0 !== s.midClick ? s.midClick : t.magnificPopup.defaults.midClick) || 2 !== i.which && !i.ctrlKey && !i.metaKey) { var o = void 0 !== s.disableOn ? s.disableOn : t.magnificPopup.defaults.disableOn; if (o) if (t.isFunction(o)) { if (!o.call(e)) return !0 } else if (b.width() < o) return !0; i.type && (i.preventDefault(), e.isOpen && i.stopPropagation()), s.el = t(i.mfpEl), s.delegate && (s.items = n.find(s.delegate)), e.open(s) } }, updateStatus: function (t, n) { if (e.preloader) { i !== t && e.container.removeClass("mfp-s-" + i), n || "loading" !== t || (n = e.st.tLoading); var s = { status: t, text: n }; C("UpdateStatus", s), t = s.status, n = s.text, e.preloader.html(n), e.preloader.find("a").on("click", function (t) { t.stopImmediatePropagation() }), e.container.addClass("mfp-s-" + t), i = t } }, _checkIfClose: function (i) { if (!t(i).hasClass(g)) { var n = e.st.closeOnContentClick, s = e.st.closeOnBgClick; if (n && s) return !0; if (!e.content || t(i).hasClass("mfp-close") || e.preloader && i === e.preloader[0]) return !0; if (i === e.content[0] || t.contains(e.content[0], i)) { if (n) return !0 } else if (s && t.contains(document, i)) return !0; return !1 } }, _addClassToMFP: function (t) { e.bgOverlay.addClass(t), e.wrap.addClass(t) }, _removeClassFromMFP: function (t) { this.bgOverlay.removeClass(t), e.wrap.removeClass(t) }, _hasScrollBar: function (t) { return (e.isIE7 ? n.height() : document.body.scrollHeight) > (t || b.height()) }, _setFocus: function () { (e.st.focus ? e.content.find(e.st.focus).eq(0) : e.wrap).focus() }, _onFocusIn: function (i) { return i.target === e.wrap[0] || t.contains(e.wrap[0], i.target) ? void 0 : (e._setFocus(), !1) }, _parseMarkup: function (e, i, n) { var s; n.data && (i = t.extend(n.data, i)), C(c, [e, i, n]), t.each(i, function (t, i) { if (void 0 === i || !1 === i) return !0; if ((s = t.split("_")).length > 1) { var n = e.find(p + "-" + s[0]); if (n.length > 0) { var o = s[1]; "replaceWith" === o ? n[0] !== i[0] && n.replaceWith(i) : "img" === o ? n.is("img") ? n.attr("src", i) : n.replaceWith('<img src="' + i + '" class="' + n.attr("class") + '" />') : n.attr(s[1], i) } } else e.find(p + "-" + t).html(i) }) }, _getScrollbarSize: function () { if (void 0 === e.scrollbarSize) { var t = document.createElement("div"); t.style.cssText = "width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;", document.body.appendChild(t), e.scrollbarSize = t.offsetWidth - t.clientWidth, document.body.removeChild(t) } return e.scrollbarSize } }, t.magnificPopup = { instance: null, proto: v.prototype, modules: [], open: function (e, i) { return T(), (e = e ? t.extend(!0, {}, e) : {}).isObj = !0, e.index = i || 0, this.instance.open(e) }, close: function () { return t.magnificPopup.instance && t.magnificPopup.instance.close() }, registerModule: function (e, i) { i.options && (t.magnificPopup.defaults[e] = i.options), t.extend(this.proto, i.proto), this.modules.push(e) }, defaults: { disableOn: 0, key: null, midClick: !1, mainClass: "", preloader: !0, focus: "", closeOnContentClick: !1, closeOnBgClick: !0, closeBtnInside: !0, showCloseBtn: !0, enableEscapeKey: !0, modal: !1, alignTop: !1, removalDelay: 0, prependTo: null, fixedContentPos: "auto", fixedBgPos: "auto", overflowY: "auto", closeMarkup: '<button title="%title%" type="button" class="mfp-close">&times;</button>', tClose: "Close (Esc)", tLoading: "Loading..." } }, t.fn.magnificPopup = function (i) { T(); var n = t(this); if ("string" == typeof i) if ("open" === i) { var s, o = y ? n.data("magnificPopup") : n[0].magnificPopup, r = parseInt(arguments[1], 10) || 0; o.items ? s = o.items[r] : (s = n, o.delegate && (s = s.find(o.delegate)), s = s.eq(r)), e._openClick({ mfpEl: s }, n, o) } else e.isOpen && e[i].apply(e, Array.prototype.slice.call(arguments, 1)); else i = t.extend(!0, {}, i), y ? n.data("magnificPopup", i) : n[0].magnificPopup = i, e.addGroup(n, i); return n }; var S, k, E, $ = "inline", A = function () { E && (k.after(E.addClass(S)).detach(), E = null) }; t.magnificPopup.registerModule($, { options: { hiddenClass: "hide", markup: "", tNotFound: "Content not found" }, proto: { initInline: function () { e.types.push($), w(a + "." + $, function () { A() }) }, getInline: function (i, n) { if (A(), i.src) { var s = e.st.inline, o = t(i.src); if (o.length) { var r = o[0].parentNode; r && r.tagName && (k || (S = s.hiddenClass, k = x(S), S = "mfp-" + S), E = o.after(k).detach().removeClass(S)), e.updateStatus("ready") } else e.updateStatus("error", s.tNotFound), o = t("<div>"); return i.inlineElement = o, o } return e.updateStatus("ready"), e._parseMarkup(n, {}, i), n } } }); var F, P = "ajax", D = function () { F && t(document.body).removeClass(F) }, O = function () { D(), e.req && e.req.abort() }; t.magnificPopup.registerModule(P, { options: { settings: null, cursor: "mfp-ajax-cur", tError: '<a href="%url%">The content</a> could not be loaded.' }, proto: { initAjax: function () { e.types.push(P), F = e.st.ajax.cursor, w(a + "." + P, O), w("BeforeChange." + P, O) }, getAjax: function (i) { F && t(document.body).addClass(F), e.updateStatus("loading"); var n = t.extend({ url: i.src, success: function (n, s, o) { var r = { data: n, xhr: o }; C("ParseAjax", r), e.appendContent(t(r.data), P), i.finished = !0, D(), e._setFocus(), setTimeout(function () { e.wrap.addClass(f) }, 16), e.updateStatus("ready"), C("AjaxContentAdded") }, error: function () { D(), i.finished = i.loadError = !0, e.updateStatus("error", e.st.ajax.tError.replace("%url%", i.src)) } }, e.st.ajax.settings); return e.req = t.ajax(n), "" } } }); var M, j, N = function (i) { if (i.data && void 0 !== i.data.title) return i.data.title; var n = e.st.image.titleSrc; if (n) { if (t.isFunction(n)) return n.call(e, i); if (i.el) return i.el.attr(n) || "" } return "" }; t.magnificPopup.registerModule("image", { options: { markup: '<div class="mfp-figure"><div class="mfp-close"></div><figure><div class="mfp-img"></div><figcaption><div class="mfp-bottom-bar"><div class="mfp-title"></div><div class="mfp-counter"></div></div></figcaption></figure></div>', cursor: "mfp-zoom-out-cur", titleSrc: "title", verticalFit: !0, tError: '<a href="%url%">The image</a> could not be loaded.' }, proto: { initImage: function () { var i = e.st.image, n = ".image"; e.types.push("image"), w(u + n, function () { "image" === e.currItem.type && i.cursor && t(document.body).addClass(i.cursor) }), w(a + n, function () { i.cursor && t(document.body).removeClass(i.cursor), b.off("resize" + p) }), w("Resize" + n, e.resizeImage), e.isLowIE && w("AfterChange", e.resizeImage) }, resizeImage: function () { var t = e.currItem; if (t && t.img && e.st.image.verticalFit) { var i = 0; e.isLowIE && (i = parseInt(t.img.css("padding-top"), 10) + parseInt(t.img.css("padding-bottom"), 10)), t.img.css("max-height", e.wH - i) } }, _onImageHasSize: function (t) { t.img && (t.hasSize = !0, M && clearInterval(M), t.isCheckingImgSize = !1, C("ImageHasSize", t), t.imgHidden && (e.content && e.content.removeClass("mfp-loading"), t.imgHidden = !1)) }, findImageSize: function (t) { var i = 0, n = t.img[0], s = function (o) { M && clearInterval(M), M = setInterval(function () { return n.naturalWidth > 0 ? void e._onImageHasSize(t) : (i > 200 && clearInterval(M), void (3 == ++i ? s(10) : 40 === i ? s(50) : 100 === i && s(500))) }, o) }; s(1) }, getImage: function (i, n) { var s = 0, o = function () { i && (i.img[0].complete ? (i.img.off(".mfploader"), i === e.currItem && (e._onImageHasSize(i), e.updateStatus("ready")), i.hasSize = !0, i.loaded = !0, C("ImageLoadComplete")) : 200 > ++s ? setTimeout(o, 100) : r()) }, r = function () { i && (i.img.off(".mfploader"), i === e.currItem && (e._onImageHasSize(i), e.updateStatus("error", a.tError.replace("%url%", i.src))), i.hasSize = !0, i.loaded = !0, i.loadError = !0) }, a = e.st.image, l = n.find(".mfp-img"); if (l.length) { var c = document.createElement("img"); c.className = "mfp-img", i.el && i.el.find("img").length && (c.alt = i.el.find("img").attr("alt")), i.img = t(c).on("load.mfploader", o).on("error.mfploader", r), c.src = i.src, l.is("img") && (i.img = i.img.clone()), (c = i.img[0]).naturalWidth > 0 ? i.hasSize = !0 : c.width || (i.hasSize = !1) } return e._parseMarkup(n, { title: N(i), img_replaceWith: i.img }, i), e.resizeImage(), i.hasSize ? (M && clearInterval(M), i.loadError ? (n.addClass("mfp-loading"), e.updateStatus("error", a.tError.replace("%url%", i.src))) : (n.removeClass("mfp-loading"), e.updateStatus("ready")), n) : (e.updateStatus("loading"), i.loading = !0, i.hasSize || (i.imgHidden = !0, n.addClass("mfp-loading"), e.findImageSize(i)), n) } } }), t.magnificPopup.registerModule("zoom", { options: { enabled: !1, easing: "ease-in-out", duration: 300, opener: function (t) { return t.is("img") ? t : t.find("img") } }, proto: { initZoom: function () { var t, i = e.st.zoom, n = ".zoom"; if (i.enabled && e.supportsTransition) { var s, o, r = i.duration, c = function (t) { var e = t.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"), n = "all " + i.duration / 1e3 + "s " + i.easing, s = { position: "fixed", zIndex: 9999, left: 0, top: 0, "-webkit-backface-visibility": "hidden" }, o = "transition"; return s["-webkit-" + o] = s["-moz-" + o] = s["-o-" + o] = s[o] = n, e.css(s), e }, u = function () { e.content.css("visibility", "visible") }; w("BuildControls" + n, function () { if (e._allowZoom()) { if (clearTimeout(s), e.content.css("visibility", "hidden"), !(t = e._getItemToZoom())) return void u(); (o = c(t)).css(e._getOffset()), e.wrap.append(o), s = setTimeout(function () { o.css(e._getOffset(!0)), s = setTimeout(function () { u(), setTimeout(function () { o.remove(), t = o = null, C("ZoomAnimationEnded") }, 16) }, r) }, 16) } }), w(l + n, function () { if (e._allowZoom()) { if (clearTimeout(s), e.st.removalDelay = r, !t) { if (!(t = e._getItemToZoom())) return; o = c(t) } o.css(e._getOffset(!0)), e.wrap.append(o), e.content.css("visibility", "hidden"), setTimeout(function () { o.css(e._getOffset()) }, 16) } }), w(a + n, function () { e._allowZoom() && (u(), o && o.remove(), t = null) }) } }, _allowZoom: function () { return "image" === e.currItem.type }, _getItemToZoom: function () { return !!e.currItem.hasSize && e.currItem.img }, _getOffset: function (i) { var n, s = (n = i ? e.currItem.img : e.st.zoom.opener(e.currItem.el || e.currItem)).offset(), o = parseInt(n.css("padding-top"), 10), r = parseInt(n.css("padding-bottom"), 10); s.top -= t(window).scrollTop() - o; var a = { width: n.width(), height: (y ? n.innerHeight() : n[0].offsetHeight) - r - o }; return void 0 === j && (j = void 0 !== document.createElement("p").style.MozTransform), j ? a["-moz-transform"] = a.transform = "translate(" + s.left + "px," + s.top + "px)" : (a.left = s.left, a.top = s.top), a } } }); var _ = "iframe", L = function (t) { if (e.currTemplate[_]) { var i = e.currTemplate[_].find("iframe"); i.length && (t || (i[0].src = "//about:blank"), e.isIE8 && i.css("display", t ? "block" : "none")) } }; t.magnificPopup.registerModule(_, { options: { markup: '<div class="mfp-iframe-scaler"><div class="mfp-close"></div><iframe class="mfp-iframe" src="//about:blank" frameborder="0" allowfullscreen></iframe></div>', srcAction: "iframe_src", patterns: { youtube: { index: "youtube.com", id: "v=", src: "//www.youtube.com/embed/%id%?autoplay=1" }, vimeo: { index: "vimeo.com/", id: "/", src: "//player.vimeo.com/video/%id%?autoplay=1" }, gmaps: { index: "//maps.google.", src: "%id%&output=embed" } } }, proto: { initIframe: function () { e.types.push(_), w("BeforeChange", function (t, e, i) { e !== i && (e === _ ? L() : i === _ && L(!0)) }), w(a + "." + _, function () { L() }) }, getIframe: function (i, n) { var s = i.src, o = e.st.iframe; t.each(o.patterns, function () { return s.indexOf(this.index) > -1 ? (this.id && (s = "string" == typeof this.id ? s.substr(s.lastIndexOf(this.id) + this.id.length, s.length) : this.id.call(this, s)), s = this.src.replace("%id%", s), !1) : void 0 }); var r = {}; return o.srcAction && (r[o.srcAction] = s), e._parseMarkup(n, r, i), e.updateStatus("ready"), n } } }); var R = function (t) { var i = e.items.length; return t > i - 1 ? t - i : 0 > t ? i + t : t }, z = function (t, e, i) { return t.replace(/%curr%/gi, e + 1).replace(/%total%/gi, i) }; t.magnificPopup.registerModule("gallery", { options: { enabled: !1, arrowMarkup: '<button title="%title%" type="button" class="mfp-arrow mfp-arrow-%dir%"></button>', preload: [0, 2], navigateByImgClick: !0, arrows: !0, tPrev: "Previous (Left arrow key)", tNext: "Next (Right arrow key)", tCounter: "%curr% of %total%" }, proto: { initGallery: function () { var i = e.st.gallery, s = ".mfp-gallery", r = Boolean(t.fn.mfpFastClick); return e.direction = !0, !(!i || !i.enabled) && (o += " mfp-gallery", w(u + s, function () { i.navigateByImgClick && e.wrap.on("click" + s, ".mfp-img", function () { return e.items.length > 1 ? (e.next(), !1) : void 0 }), n.on("keydown" + s, function (t) { 37 === t.keyCode ? e.prev() : 39 === t.keyCode && e.next() }) }), w("UpdateStatus" + s, function (t, i) { i.text && (i.text = z(i.text, e.currItem.index, e.items.length)) }), w(c + s, function (t, n, s, o) { var r = e.items.length; s.counter = r > 1 ? z(i.tCounter, o.index, r) : "" }), w("BuildControls" + s, function () { if (e.items.length > 1 && i.arrows && !e.arrowLeft) { var n = i.arrowMarkup, s = e.arrowLeft = t(n.replace(/%title%/gi, i.tPrev).replace(/%dir%/gi, "left")).addClass(g), o = e.arrowRight = t(n.replace(/%title%/gi, i.tNext).replace(/%dir%/gi, "right")).addClass(g), a = r ? "mfpFastClick" : "click"; s[a](function () { e.prev() }), o[a](function () { e.next() }), e.isIE7 && (x("b", s[0], !1, !0), x("a", s[0], !1, !0), x("b", o[0], !1, !0), x("a", o[0], !1, !0)), e.container.append(s.add(o)) } }), w(d + s, function () { e._preloadTimeout && clearTimeout(e._preloadTimeout), e._preloadTimeout = setTimeout(function () { e.preloadNearbyImages(), e._preloadTimeout = null }, 16) }), void w(a + s, function () { n.off(s), e.wrap.off("click" + s), e.arrowLeft && r && e.arrowLeft.add(e.arrowRight).destroyMfpFastClick(), e.arrowRight = e.arrowLeft = null })) }, next: function () { e.direction = !0, e.index = R(e.index + 1), e.updateItemHTML() }, prev: function () { e.direction = !1, e.index = R(e.index - 1), e.updateItemHTML() }, goTo: function (t) { e.direction = t >= e.index, e.index = t, e.updateItemHTML() }, preloadNearbyImages: function () { var t, i = e.st.gallery.preload, n = Math.min(i[0], e.items.length), s = Math.min(i[1], e.items.length); for (t = 1; t <= (e.direction ? s : n) ; t++) e._preloadItem(e.index + t); for (t = 1; t <= (e.direction ? n : s) ; t++) e._preloadItem(e.index - t) }, _preloadItem: function (i) { if (i = R(i), !e.items[i].preloaded) { var n = e.items[i]; n.parsed || (n = e.parseEl(i)), C("LazyLoad", n), "image" === n.type && (n.img = t('<img class="mfp-img" />').on("load.mfploader", function () { n.hasSize = !0 }).on("error.mfploader", function () { n.hasSize = !0, n.loadError = !0, C("LazyLoadError", n) }).attr("src", n.src)), n.preloaded = !0 } } } }); var W = "retina"; t.magnificPopup.registerModule(W, { options: { replaceSrc: function (t) { return t.src.replace(/\.\w+$/, function (t) { return "@2x" + t }) }, ratio: 1 }, proto: { initRetina: function () { if (window.devicePixelRatio > 1) { var t = e.st.retina, i = t.ratio; (i = isNaN(i) ? i() : i) > 1 && (w("ImageHasSize." + W, function (t, e) { e.img.css({ "max-width": e.img[0].naturalWidth / i, width: "100%" }) }), w("ElementParse." + W, function (e, n) { n.src = t.replaceSrc(n, i) })) } } } }), function () { var e = "ontouchstart" in window, i = function () { b.off("touchmove" + n + " touchend" + n) }, n = ".mfpFastClick"; t.fn.mfpFastClick = function (s) { return t(this).each(function () { var o, r, a, l, c, u, d, h = t(this); e && h.on("touchstart" + n, function (t) { c = !1, d = 1, u = t.originalEvent ? t.originalEvent.touches[0] : t.touches[0], a = u.clientX, l = u.clientY, b.on("touchmove" + n, function (t) { u = t.originalEvent ? t.originalEvent.touches : t.touches, d = u.length, u = u[0], (Math.abs(u.clientX - a) > 10 || Math.abs(u.clientY - l) > 10) && (c = !0, i()) }).on("touchend" + n, function (t) { i(), c || d > 1 || (o = !0, t.preventDefault(), clearTimeout(r), r = setTimeout(function () { o = !1 }, 1e3), s()) }) }), h.on("click" + n, function () { o || s() }) }) }, t.fn.destroyMfpFastClick = function () { t(this).off("touchstart" + n + " click" + n), e && b.off("touchmove" + n + " touchend" + n) } }(), T() }), function () { function t() { } function e(t) { return o.retinaImageSuffix + t } function i(t, i) { if (this.path = t || "", null != i) this.at_2x_path = i, this.perform_check = !1; else { if (void 0 !== document.createElement) { var n = document.createElement("a"); n.href = this.path, n.pathname = n.pathname.replace(r, e), this.at_2x_path = n.href } else { var s = this.path.split("?"); s[0] = s[0].replace(r, e), this.at_2x_path = s.join("?") } this.perform_check = !0 } } function n(t) { this.el = t, this.path = new i(this.el.getAttribute("src"), this.el.getAttribute("data-at2x")); var e = this; this.path.check_2x_variant(function (t) { t && e.swap() }) } var s = "undefined" == typeof exports ? window : exports, o = { retinaImageSuffix: "@2x", check_mime_type: !0, force_original_dimensions: !0 }; s.Retina = t, t.configure = function (t) { for (var e in null === t && (t = {}), t) t.hasOwnProperty(e) && (o[e] = t[e]) }, t.init = function (t) { null === t && (t = s); var e = t.onload || function () { }; t.onload = function () { var t, i, s = document.getElementsByTagName("img"), o = []; for (t = 0; t < s.length; t += 1) (i = s[t]).getAttributeNode("data-no-retina") || o.push(new n(i)); e() } }, t.isRetina = function () { return s.devicePixelRatio > 1 || !(!s.matchMedia || !s.matchMedia("(-webkit-min-device-pixel-ratio: 1.5), (min--moz-device-pixel-ratio: 1.5), (-o-min-device-pixel-ratio: 3/2), (min-resolution: 1.5dppx)").matches) }; var r = /\.\w+$/; s.RetinaImagePath = i, i.confirmed_paths = [], i.prototype.is_external = function () { return !(!this.path.match(/^https?\:/i) || this.path.match("//" + document.domain)) }, i.prototype.check_2x_variant = function (t) { var e, n = this; return this.is_external() ? t(!1) : this.perform_check || void 0 === this.at_2x_path || null === this.at_2x_path ? this.at_2x_path in i.confirmed_paths ? t(!0) : ((e = new XMLHttpRequest).open("HEAD", this.at_2x_path), e.onreadystatechange = function () { if (4 !== e.readyState) return t(!1); if (e.status >= 200 && e.status <= 399) { if (o.check_mime_type) { var s = e.getResponseHeader("Content-Type"); if (null === s || !s.match(/^image/i)) return t(!1) } return i.confirmed_paths.push(n.at_2x_path), t(!0) } return t(!1) }, void e.send()) : t(!0) }, s.RetinaImage = n, n.prototype.swap = function (t) { void 0 === t && (t = this.path.at_2x_path); var e = this; !function i() { e.el.complete ? (o.force_original_dimensions && (e.el.setAttribute("width", e.el.offsetWidth), e.el.setAttribute("height", e.el.offsetHeight)), e.el.setAttribute("src", t)) : setTimeout(i, 5) }() }, t.isRetina() && t.init(s) }(), function (t) { var e = { topSpacing: 0, bottomSpacing: 0, className: "is-sticky", wrapperClassName: "sticky-wrapper", center: !1, getWidthFrom: "", responsiveWidth: !1 }, i = t(window), n = t(document), s = [], o = i.height(), r = function () { for (var e = i.scrollTop(), r = n.height(), a = r - o, l = e > a ? a - e : 0, c = 0; c < s.length; c++) { var u = s[c]; if (u.stickyWrapper.offset().top - u.topSpacing - l >= e) null !== u.currentTop && (u.stickyElement.css("width", "").css("position", "").css("top", ""), u.stickyElement.trigger("sticky-end", [u]).parent().removeClass(u.className), u.currentTop = null); else { var d = r - u.stickyElement.outerHeight() - u.topSpacing - u.bottomSpacing - e - l; 0 > d ? d += u.topSpacing : d = u.topSpacing, u.currentTop != d && (u.stickyElement.css("width", u.stickyElement.width()).css("position", "fixed").css("top", d), void 0 !== u.getWidthFrom && u.stickyElement.css("width", t(u.getWidthFrom).width()), u.stickyElement.trigger("sticky-start", [u]).parent().addClass(u.className), u.currentTop = d) } } }, a = function () { o = i.height(); for (var e = 0; e < s.length; e++) { var n = s[e]; void 0 !== n.getWidthFrom && !0 === n.responsiveWidth && n.stickyElement.css("width", t(n.getWidthFrom).width()) } }, l = { init: function (i) { var n = t.extend({}, e, i); return this.each(function () { var e = t(this), i = e.attr("id"), o = t("<div></div>").attr("id", i + "-sticky-wrapper").addClass(n.wrapperClassName); e.wrapAll(o), n.center && e.parent().css({ width: e.outerWidth(), marginLeft: "auto", marginRight: "auto" }), "right" == e.css("float") && e.css({ float: "none" }).parent().css({ float: "right" }); var r = e.parent(); r.css("height", e.outerHeight()), s.push({ topSpacing: n.topSpacing, bottomSpacing: n.bottomSpacing, stickyElement: e, currentTop: null, stickyWrapper: r, className: n.className, getWidthFrom: n.getWidthFrom, responsiveWidth: n.responsiveWidth }) }) }, update: r, unstick: function () { return this.each(function () { for (var e = t(this), i = -1, n = 0; n < s.length; n++) s[n].stickyElement.get(0) == e.get(0) && (i = n); -1 != i && (s.splice(i, 1), e.unwrap(), e.removeAttr("style")) }) } }; window.addEventListener ? (window.addEventListener("scroll", r, !1), window.addEventListener("resize", a, !1)) : window.attachEvent && (window.attachEvent("onscroll", r), window.attachEvent("onresize", a)), t.fn.sticky = function (e) { return l[e] ? l[e].apply(this, Array.prototype.slice.call(arguments, 1)) : "object" != typeof e && e ? void t.error("Method " + e + " does not exist on jQuery.sticky") : l.init.apply(this, arguments) }, t.fn.unstick = function (e) { return l[e] ? l[e].apply(this, Array.prototype.slice.call(arguments, 1)) : "object" != typeof e && e ? void t.error("Method " + e + " does not exist on jQuery.sticky") : l.unstick.apply(this, arguments) }, t(function () { setTimeout(r, 0) }) }(jQuery), function (t) { var e = t(window), i = e.height(); e.resize(function () { i = e.height() }), t.fn.parallax = function (n, s, o) { function r() { var o = e.scrollTop(); c.each(function () { var e = t(this), r = e.offset().top, u = a(e); o > r + u || r > o + i || c.css("backgroundPosition", n + " " + Math.round((l - o) * s) + "px") }) } var a, l, c = t(this); c.each(function () { l = c.offset().top }), a = o ? function (t) { return t.outerHeight(!0) } : function (t) { return t.height() }, (arguments.length < 1 || null === n) && (n = "50%"), (arguments.length < 2 || null === s) && (s = .1), (arguments.length < 3 || null === o) && (o = !0), e.bind("scroll", r).resize(r), r() } }(jQuery), function (t) { "use strict"; function e(t) { return new RegExp("(^|\\s+)" + t + "(\\s+|$)") } function i(t, e) { (n(t, e) ? o : s)(t, e) } var n, s, o; "classList" in document.documentElement ? (n = function (t, e) { return t.classList.contains(e) }, s = function (t, e) { t.classList.add(e) }, o = function (t, e) { t.classList.remove(e) }) : (n = function (t, i) { return e(i).test(t.className) }, s = function (t, e) { n(t, e) || (t.className = t.className + " " + e) }, o = function (t, i) { t.className = t.className.replace(e(i), " ") }); var r = { hasClass: n, addClass: s, removeClass: o, toggleClass: i, has: n, add: s, remove: o, toggle: i }; "function" == typeof define && define.amd ? define(r) : t.classie = r }(window), function (t) { "function" == typeof define && define.amd ? define(["jquery"], t) : t(jQuery) }(function (t) { t.extend(t.fn, { validate: function (e) { if (this.length) { var i = t.data(this[0], "validator"); return i || (this.attr("novalidate", "novalidate"), i = new t.validator(e, this[0]), t.data(this[0], "validator", i), i.settings.onsubmit && (this.validateDelegate(":submit", "click", function (e) { i.settings.submitHandler && (i.submitButton = e.target), t(e.target).hasClass("cancel") && (i.cancelSubmit = !0), void 0 !== t(e.target).attr("formnovalidate") && (i.cancelSubmit = !0) }), this.submit(function (e) { function n() { var n, s; return !i.settings.submitHandler || (i.submitButton && (n = t("<input type='hidden'/>").attr("name", i.submitButton.name).val(t(i.submitButton).val()).appendTo(i.currentForm)), s = i.settings.submitHandler.call(i, i.currentForm, e), i.submitButton && n.remove(), void 0 !== s && s) } return i.settings.debug && e.preventDefault(), i.cancelSubmit ? (i.cancelSubmit = !1, n()) : i.form() ? i.pendingRequest ? (i.formSubmitted = !0, !1) : n() : (i.focusInvalid(), !1) })), i) } e && e.debug && window.console && console.warn("Nothing selected, can't validate, returning nothing.") }, valid: function () { var e, i; return t(this[0]).is("form") ? e = this.validate().form() : (e = !0, i = t(this[0].form).validate(), this.each(function () { e = i.element(this) && e })), e }, removeAttrs: function (e) { var i = {}, n = this; return t.each(e.split(/\s/), function (t, e) { i[e] = n.attr(e), n.removeAttr(e) }), i }, rules: function (e, i) { var n, s, o, r, a, l, c = this[0]; if (e) switch (n = t.data(c.form, "validator").settings, s = n.rules, o = t.validator.staticRules(c), e) { case "add": t.extend(o, t.validator.normalizeRule(i)), delete o.messages, s[c.name] = o, i.messages && (n.messages[c.name] = t.extend(n.messages[c.name], i.messages)); break; case "remove": return i ? (l = {}, t.each(i.split(/\s/), function (e, i) { l[i] = o[i], delete o[i], "required" === i && t(c).removeAttr("aria-required") }), l) : (delete s[c.name], o) } return (r = t.validator.normalizeRules(t.extend({}, t.validator.classRules(c), t.validator.attributeRules(c), t.validator.dataRules(c), t.validator.staticRules(c)), c)).required && (a = r.required, delete r.required, r = t.extend({ required: a }, r), t(c).attr("aria-required", "true")), r.remote && (a = r.remote, delete r.remote, r = t.extend(r, { remote: a })), r } }), t.extend(t.expr[":"], { blank: function (e) { return !t.trim("" + t(e).val()) }, filled: function (e) { return !!t.trim("" + t(e).val()) }, unchecked: function (e) { return !t(e).prop("checked") } }), t.validator = function (e, i) { this.settings = t.extend(!0, {}, t.validator.defaults, e), this.currentForm = i, this.init() }, t.validator.format = function (e, i) { return 1 === arguments.length ? function () { var i = t.makeArray(arguments); return i.unshift(e), t.validator.format.apply(this, i) } : (arguments.length > 2 && i.constructor !== Array && (i = t.makeArray(arguments).slice(1)), i.constructor !== Array && (i = [i]), t.each(i, function (t, i) { e = e.replace(new RegExp("\\{" + t + "\\}", "g"), function () { return i }) }), e) }, t.extend(t.validator, { defaults: { messages: {}, groups: {}, rules: {}, errorClass: "error", validClass: "valid", errorElement: "label", focusCleanup: !1, focusInvalid: !0, errorContainer: t([]), errorLabelContainer: t([]), onsubmit: !0, ignore: ":hidden", ignoreTitle: !1, onfocusin: function (t) { this.lastActive = t, this.settings.focusCleanup && (this.settings.unhighlight && this.settings.unhighlight.call(this, t, this.settings.errorClass, this.settings.validClass), this.hideThese(this.errorsFor(t))) }, onfocusout: function (t) { this.checkable(t) || !(t.name in this.submitted) && this.optional(t) || this.element(t) }, onkeyup: function (t, e) { (9 !== e.which || "" !== this.elementValue(t)) && (t.name in this.submitted || t === this.lastElement) && this.element(t) }, onclick: function (t) { t.name in this.submitted ? this.element(t) : t.parentNode.name in this.submitted && this.element(t.parentNode) }, highlight: function (e, i, n) { "radio" === e.type ? this.findByName(e.name).addClass(i).removeClass(n) : t(e).addClass(i).removeClass(n) }, unhighlight: function (e, i, n) { "radio" === e.type ? this.findByName(e.name).removeClass(i).addClass(n) : t(e).removeClass(i).addClass(n) } }, setDefaults: function (e) { t.extend(t.validator.defaults, e) }, messages: { required: "This field is required.", remote: "Please fix this field.", email: "Please enter a valid email address.", url: "Please enter a valid URL.", date: "Please enter a valid date.", dateISO: "Please enter a valid date ( ISO ).", number: "Please enter a valid number.", digits: "Please enter only digits.", creditcard: "Please enter a valid credit card number.", equalTo: "Please enter the same value again.", maxlength: t.validator.format("Please enter no more than {0} characters."), minlength: t.validator.format("Please enter at least {0} characters."), rangelength: t.validator.format("Please enter a value between {0} and {1} characters long."), range: t.validator.format("Please enter a value between {0} and {1}."), max: t.validator.format("Please enter a value less than or equal to {0}."), min: t.validator.format("Please enter a value greater than or equal to {0}.") }, autoCreateRanges: !1, prototype: { init: function () { function e(e) { var i = t.data(this[0].form, "validator"), n = "on" + e.type.replace(/^validate/, ""), s = i.settings; s[n] && !this.is(s.ignore) && s[n].call(i, this[0], e) } this.labelContainer = t(this.settings.errorLabelContainer), this.errorContext = this.labelContainer.length && this.labelContainer || t(this.currentForm), this.containers = t(this.settings.errorContainer).add(this.settings.errorLabelContainer), this.submitted = {}, this.valueCache = {}, this.pendingRequest = 0, this.pending = {}, this.invalid = {}, this.reset(); var i, n = this.groups = {}; t.each(this.settings.groups, function (e, i) { "string" == typeof i && (i = i.split(/\s/)), t.each(i, function (t, i) { n[i] = e }) }), i = this.settings.rules, t.each(i, function (e, n) { i[e] = t.validator.normalizeRule(n) }), t(this.currentForm).validateDelegate(":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'] ,[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'], [type='radio'], [type='checkbox']", "focusin focusout keyup", e).validateDelegate("select, option, [type='radio'], [type='checkbox']", "click", e), this.settings.invalidHandler && t(this.currentForm).bind("invalid-form.validate", this.settings.invalidHandler), t(this.currentForm).find("[required], [data-rule-required], .required").attr("aria-required", "true") }, form: function () { return this.checkForm(), t.extend(this.submitted, this.errorMap), this.invalid = t.extend({}, this.errorMap), this.valid() || t(this.currentForm).triggerHandler("invalid-form", [this]), this.showErrors(), this.valid() }, checkForm: function () { this.prepareForm(); for (var t = 0, e = this.currentElements = this.elements() ; e[t]; t++) this.check(e[t]); return this.valid() }, element: function (e) { var i = this.clean(e), n = this.validationTargetFor(i), s = !0; return this.lastElement = n, void 0 === n ? delete this.invalid[i.name] : (this.prepareElement(n), this.currentElements = t(n), (s = !1 !== this.check(n)) ? delete this.invalid[n.name] : this.invalid[n.name] = !0), t(e).attr("aria-invalid", !s), this.numberOfInvalids() || (this.toHide = this.toHide.add(this.containers)), this.showErrors(), s }, showErrors: function (e) { if (e) { for (var i in t.extend(this.errorMap, e), this.errorList = [], e) this.errorList.push({ message: e[i], element: this.findByName(i)[0] }); this.successList = t.grep(this.successList, function (t) { return !(t.name in e) }) } this.settings.showErrors ? this.settings.showErrors.call(this, this.errorMap, this.errorList) : this.defaultShowErrors() }, resetForm: function () { t.fn.resetForm && t(this.currentForm).resetForm(), this.submitted = {}, this.lastElement = null, this.prepareForm(), this.hideErrors(), this.elements().removeClass(this.settings.errorClass).removeData("previousValue").removeAttr("aria-invalid") }, numberOfInvalids: function () { return this.objectLength(this.invalid) }, objectLength: function (t) { var e, i = 0; for (e in t) i++; return i }, hideErrors: function () { this.hideThese(this.toHide) }, hideThese: function (t) { t.not(this.containers).text(""), this.addWrapper(t).hide() }, valid: function () { return 0 === this.size() }, size: function () { return this.errorList.length }, focusInvalid: function () { if (this.settings.focusInvalid) try { t(this.findLastActive() || this.errorList.length && this.errorList[0].element || []).filter(":visible").focus().trigger("focusin") } catch (t) { } }, findLastActive: function () { var e = this.lastActive; return e && 1 === t.grep(this.errorList, function (t) { return t.element.name === e.name }).length && e }, elements: function () { var e = this, i = {}; return t(this.currentForm).find("input, select, textarea").not(":submit, :reset, :image, [disabled], [readonly]").not(this.settings.ignore).filter(function () { return !this.name && e.settings.debug && window.console && console.error("%o has no name assigned", this), !(this.name in i || !e.objectLength(t(this).rules()) || (i[this.name] = !0, 0)) }) }, clean: function (e) { return t(e)[0] }, errors: function () { var e = this.settings.errorClass.split(" ").join("."); return t(this.settings.errorElement + "." + e, this.errorContext) }, reset: function () { this.successList = [], this.errorList = [], this.errorMap = {}, this.toShow = t([]), this.toHide = t([]), this.currentElements = t([]) }, prepareForm: function () { this.reset(), this.toHide = this.errors().add(this.containers) }, prepareElement: function (t) { this.reset(), this.toHide = this.errorsFor(t) }, elementValue: function (e) { var i, n = t(e), s = e.type; return "radio" === s || "checkbox" === s ? t("input[name='" + e.name + "']:checked").val() : "number" === s && void 0 !== e.validity ? !e.validity.badInput && n.val() : "string" == typeof (i = n.val()) ? i.replace(/\r/g, "") : i }, check: function (e) { e = this.validationTargetFor(this.clean(e)); var i, n, s, o = t(e).rules(), r = t.map(o, function (t, e) { return e }).length, a = !1, l = this.elementValue(e); for (n in o) { s = { method: n, parameters: o[n] }; try { if ("dependency-mismatch" === (i = t.validator.methods[n].call(this, l, e, s.parameters)) && 1 === r) { a = !0; continue } if (a = !1, "pending" === i) return void (this.toHide = this.toHide.not(this.errorsFor(e))); if (!i) return this.formatAndAdd(e, s), !1 } catch (t) { throw this.settings.debug && window.console && console.log("Exception occurred when checking element " + e.id + ", check the '" + s.method + "' method.", t), t } } if (!a) return this.objectLength(o) && this.successList.push(e), !0 }, customDataMessage: function (e, i) { return t(e).data("msg" + i.charAt(0).toUpperCase() + i.substring(1).toLowerCase()) || t(e).data("msg") }, customMessage: function (t, e) { var i = this.settings.messages[t]; return i && (i.constructor === String ? i : i[e]) }, findDefined: function () { for (var t = 0; t < arguments.length; t++) if (void 0 !== arguments[t]) return arguments[t] }, defaultMessage: function (e, i) { return this.findDefined(this.customMessage(e.name, i), this.customDataMessage(e, i), !this.settings.ignoreTitle && e.title || void 0, t.validator.messages[i], "<strong>Warning: No message defined for " + e.name + "</strong>") }, formatAndAdd: function (e, i) { var n = this.defaultMessage(e, i.method), s = /\$?\{(\d+)\}/g; "function" == typeof n ? n = n.call(this, i.parameters, e) : s.test(n) && (n = t.validator.format(n.replace(s, "{$1}"), i.parameters)), this.errorList.push({ message: n, element: e, method: i.method }), this.errorMap[e.name] = n, this.submitted[e.name] = n }, addWrapper: function (t) { return this.settings.wrapper && (t = t.add(t.parent(this.settings.wrapper))), t }, defaultShowErrors: function () { var t, e, i; for (t = 0; this.errorList[t]; t++) i = this.errorList[t], this.settings.highlight && this.settings.highlight.call(this, i.element, this.settings.errorClass, this.settings.validClass), this.showLabel(i.element, i.message); if (this.errorList.length && (this.toShow = this.toShow.add(this.containers)), this.settings.success) for (t = 0; this.successList[t]; t++) this.showLabel(this.successList[t]); if (this.settings.unhighlight) for (t = 0, e = this.validElements() ; e[t]; t++) this.settings.unhighlight.call(this, e[t], this.settings.errorClass, this.settings.validClass); this.toHide = this.toHide.not(this.toShow), this.hideErrors(), this.addWrapper(this.toShow).show() }, validElements: function () { return this.currentElements.not(this.invalidElements()) }, invalidElements: function () { return t(this.errorList).map(function () { return this.element }) }, showLabel: function (e, i) { var n, s, o, r = this.errorsFor(e), a = this.idOrName(e), l = t(e).attr("aria-describedby"); r.length ? (r.removeClass(this.settings.validClass).addClass(this.settings.errorClass), r.html(i)) : (n = r = t("<" + this.settings.errorElement + ">").attr("id", a + "-error").addClass(this.settings.errorClass).html(i || ""), this.settings.wrapper && (n = r.hide().show().wrap("<" + this.settings.wrapper + "/>").parent()), this.labelContainer.length ? this.labelContainer.append(n) : this.settings.errorPlacement ? this.settings.errorPlacement(n, t(e)) : n.insertAfter(e), r.is("label") ? r.attr("for", a) : 0 === r.parents("label[for='" + a + "']").length && (o = r.attr("id").replace(/(:|\.|\[|\])/g, "\\$1"), l ? l.match(new RegExp("\\b" + o + "\\b")) || (l += " " + o) : l = o, t(e).attr("aria-describedby", l), (s = this.groups[e.name]) && t.each(this.groups, function (e, i) { i === s && t("[name='" + e + "']", this.currentForm).attr("aria-describedby", r.attr("id")) }))), !i && this.settings.success && (r.text(""), "string" == typeof this.settings.success ? r.addClass(this.settings.success) : this.settings.success(r, e)), this.toShow = this.toShow.add(r) }, errorsFor: function (e) { var i = this.idOrName(e), n = t(e).attr("aria-describedby"), s = "label[for='" + i + "'], label[for='" + i + "'] *"; return n && (s = s + ", #" + n.replace(/\s+/g, ", #")), this.errors().filter(s) }, idOrName: function (t) { return this.groups[t.name] || (this.checkable(t) ? t.name : t.id || t.name) }, validationTargetFor: function (e) { return this.checkable(e) && (e = this.findByName(e.name)), t(e).not(this.settings.ignore)[0] }, checkable: function (t) { return /radio|checkbox/i.test(t.type) }, findByName: function (e) { return t(this.currentForm).find("[name='" + e + "']") }, getLength: function (e, i) { switch (i.nodeName.toLowerCase()) { case "select": return t("option:selected", i).length; case "input": if (this.checkable(i)) return this.findByName(i.name).filter(":checked").length } return e.length }, depend: function (t, e) { return !this.dependTypes[typeof t] || this.dependTypes[typeof t](t, e) }, dependTypes: { boolean: function (t) { return t }, string: function (e, i) { return !!t(e, i.form).length }, function: function (t, e) { return t(e) } }, optional: function (e) { var i = this.elementValue(e); return !t.validator.methods.required.call(this, i, e) && "dependency-mismatch" }, startRequest: function (t) { this.pending[t.name] || (this.pendingRequest++, this.pending[t.name] = !0) }, stopRequest: function (e, i) { this.pendingRequest--, this.pendingRequest < 0 && (this.pendingRequest = 0), delete this.pending[e.name], i && 0 === this.pendingRequest && this.formSubmitted && this.form() ? (t(this.currentForm).submit(), this.formSubmitted = !1) : !i && 0 === this.pendingRequest && this.formSubmitted && (t(this.currentForm).triggerHandler("invalid-form", [this]), this.formSubmitted = !1) }, previousValue: function (e) { return t.data(e, "previousValue") || t.data(e, "previousValue", { old: null, valid: !0, message: this.defaultMessage(e, "remote") }) } }, classRuleSettings: { required: { required: !0 }, email: { email: !0 }, url: { url: !0 }, date: { date: !0 }, dateISO: { dateISO: !0 }, number: { number: !0 }, digits: { digits: !0 }, creditcard: { creditcard: !0 } }, addClassRules: function (e, i) { e.constructor === String ? this.classRuleSettings[e] = i : t.extend(this.classRuleSettings, e) }, classRules: function (e) { var i = {}, n = t(e).attr("class"); return n && t.each(n.split(" "), function () { this in t.validator.classRuleSettings && t.extend(i, t.validator.classRuleSettings[this]) }), i }, attributeRules: function (e) { var i, n, s = {}, o = t(e), r = e.getAttribute("type"); for (i in t.validator.methods) "required" === i ? ("" === (n = e.getAttribute(i)) && (n = !0), n = !!n) : n = o.attr(i), /min|max/.test(i) && (null === r || /number|range|text/.test(r)) && (n = Number(n)), n || 0 === n ? s[i] = n : r === i && "range" !== r && (s[i] = !0); return s.maxlength && /-1|2147483647|524288/.test(s.maxlength) && delete s.maxlength, s }, dataRules: function (e) { var i, n, s = {}, o = t(e); for (i in t.validator.methods) void 0 !== (n = o.data("rule" + i.charAt(0).toUpperCase() + i.substring(1).toLowerCase())) && (s[i] = n); return s }, staticRules: function (e) { var i = {}, n = t.data(e.form, "validator"); return n.settings.rules && (i = t.validator.normalizeRule(n.settings.rules[e.name]) || {}), i }, normalizeRules: function (e, i) { return t.each(e, function (n, s) { if (!1 !== s) { if (s.param || s.depends) { var o = !0; switch (typeof s.depends) { case "string": o = !!t(s.depends, i.form).length; break; case "function": o = s.depends.call(i, i) } o ? e[n] = void 0 === s.param || s.param : delete e[n] } } else delete e[n] }), t.each(e, function (n, s) { e[n] = t.isFunction(s) ? s(i) : s }), t.each(["minlength", "maxlength"], function () { e[this] && (e[this] = Number(e[this])) }), t.each(["rangelength", "range"], function () { var i; e[this] && (t.isArray(e[this]) ? e[this] = [Number(e[this][0]), Number(e[this][1])] : "string" == typeof e[this] && (i = e[this].replace(/[\[\]]/g, "").split(/[\s,]+/), e[this] = [Number(i[0]), Number(i[1])])) }), t.validator.autoCreateRanges && (null != e.min && null != e.max && (e.range = [e.min, e.max], delete e.min, delete e.max), null != e.minlength && null != e.maxlength && (e.rangelength = [e.minlength, e.maxlength], delete e.minlength, delete e.maxlength)), e }, normalizeRule: function (e) { if ("string" == typeof e) { var i = {}; t.each(e.split(/\s/), function () { i[this] = !0 }), e = i } return e }, addMethod: function (e, i, n) { t.validator.methods[e] = i, t.validator.messages[e] = void 0 !== n ? n : t.validator.messages[e], i.length < 3 && t.validator.addClassRules(e, t.validator.normalizeRule(e)) }, methods: { required: function (e, i, n) { if (!this.depend(n, i)) return "dependency-mismatch"; if ("select" === i.nodeName.toLowerCase()) { var s = t(i).val(); return s && s.length > 0 } return this.checkable(i) ? this.getLength(e, i) > 0 : t.trim(e).length > 0 }, email: function (t, e) { return this.optional(e) || /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(t) }, url: function (t, e) { return this.optional(e) || /^(https?|s?ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(t) }, date: function (t, e) { return this.optional(e) || !/Invalid|NaN/.test(new Date(t).toString()) }, dateISO: function (t, e) { return this.optional(e) || /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(t) }, number: function (t, e) { return this.optional(e) || /^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(t) }, digits: function (t, e) { return this.optional(e) || /^\d+$/.test(t) }, creditcard: function (t, e) { if (this.optional(e)) return "dependency-mismatch"; if (/[^0-9 \-]+/.test(t)) return !1; var i, n, s = 0, o = 0, r = !1; if ((t = t.replace(/\D/g, "")).length < 13 || t.length > 19) return !1; for (i = t.length - 1; i >= 0; i--) n = t.charAt(i), o = parseInt(n, 10), r && (o *= 2) > 9 && (o -= 9), s += o, r = !r; return s % 10 == 0 }, minlength: function (e, i, n) { var s = t.isArray(e) ? e.length : this.getLength(e, i); return this.optional(i) || s >= n }, maxlength: function (e, i, n) { var s = t.isArray(e) ? e.length : this.getLength(e, i); return this.optional(i) || n >= s }, rangelength: function (e, i, n) { var s = t.isArray(e) ? e.length : this.getLength(e, i); return this.optional(i) || s >= n[0] && s <= n[1] }, min: function (t, e, i) { return this.optional(e) || t >= i }, max: function (t, e, i) { return this.optional(e) || i >= t }, range: function (t, e, i) { return this.optional(e) || t >= i[0] && t <= i[1] }, equalTo: function (e, i, n) { var s = t(n); return this.settings.onfocusout && s.unbind(".validate-equalTo").bind("blur.validate-equalTo", function () { t(i).valid() }), e === s.val() }, remote: function (e, i, n) { if (this.optional(i)) return "dependency-mismatch"; var s, o, r = this.previousValue(i); return this.settings.messages[i.name] || (this.settings.messages[i.name] = {}), r.originalMessage = this.settings.messages[i.name].remote, this.settings.messages[i.name].remote = r.message, n = "string" == typeof n && { url: n } || n, r.old === e ? r.valid : (r.old = e, s = this, this.startRequest(i), (o = {})[i.name] = e, t.ajax(t.extend(!0, { url: n, mode: "abort", port: "validate" + i.name, dataType: "json", data: o, context: s.currentForm, success: function (n) { var o, a, l, c = !0 === n || "true" === n; s.settings.messages[i.name].remote = r.originalMessage, c ? (l = s.formSubmitted, s.prepareElement(i), s.formSubmitted = l, s.successList.push(i), delete s.invalid[i.name], s.showErrors()) : (o = {}, a = n || s.defaultMessage(i, "remote"), o[i.name] = r.message = t.isFunction(a) ? a(e) : a, s.invalid[i.name] = !0, s.showErrors(o)), r.valid = c, s.stopRequest(i, c) } }, n)), "pending") } } }), t.format = function () { throw "$.format has been deprecated. Please use $.validator.format instead." }; var e, i = {}; t.ajaxPrefilter ? t.ajaxPrefilter(function (t, e, n) { var s = t.port; "abort" === t.mode && (i[s] && i[s].abort(), i[s] = n) }) : (e = t.ajax, t.ajax = function (n) { var s = ("mode" in n ? n : t.ajaxSettings).mode, o = ("port" in n ? n : t.ajaxSettings).port; return "abort" === s ? (i[o] && i[o].abort(), i[o] = e.apply(this, arguments), i[o]) : e.apply(this, arguments) }), t.extend(t.fn, { validateDelegate: function (e, i, n) { return this.bind(i, function (i) { var s = t(i.target); return s.is(e) ? n.apply(s, arguments) : void 0 }) } }) }), function (t) { "use strict"; "function" == typeof define && define.amd ? define(["jquery"], t) : t("undefined" != typeof jQuery ? jQuery : window.Zepto) }(function (t) { "use strict"; function e(e) { var i = e.data; e.isDefaultPrevented() || (e.preventDefault(), t(e.target).ajaxSubmit(i)) } function i(e) { var i = e.target, n = t(i); if (!n.is("[type=submit],[type=image]")) { var s = n.closest("[type=submit]"); if (0 === s.length) return; i = s[0] } var o = this; if (o.clk = i, "image" == i.type) if (void 0 !== e.offsetX) o.clk_x = e.offsetX, o.clk_y = e.offsetY; else if ("function" == typeof t.fn.offset) { var r = n.offset(); o.clk_x = e.pageX - r.left, o.clk_y = e.pageY - r.top } else o.clk_x = e.pageX - i.offsetLeft, o.clk_y = e.pageY - i.offsetTop; setTimeout(function () { o.clk = o.clk_x = o.clk_y = null }, 100) } function n() { if (t.fn.ajaxSubmit.debug) { var e = "[jquery.form] " + Array.prototype.join.call(arguments, ""); window.console && window.console.log ? window.console.log(e) : window.opera && window.opera.postError && window.opera.postError(e) } } var s = {}; s.fileapi = void 0 !== t("<input type='file'/>").get(0).files, s.formdata = void 0 !== window.FormData; var o = !!t.fn.prop; t.fn.attr2 = function () { if (!o) return this.attr.apply(this, arguments); var t = this.prop.apply(this, arguments); return t && t.jquery || "string" == typeof t ? t : this.attr.apply(this, arguments) }, t.fn.ajaxSubmit = function (e) { function i(i) { function s(t) { var e = null; try { t.contentWindow && (e = t.contentWindow.document) } catch (t) { n("cannot get iframe.contentWindow document: " + t) } if (e) return e; try { e = t.contentDocument ? t.contentDocument : t.document } catch (i) { n("cannot get iframe.contentDocument: " + i), e = t.document } return e } function a() { var e = c.attr2("target"), i = c.attr2("action"), o = c.attr("enctype") || c.attr("encoding") || "multipart/form-data"; I.setAttribute("target", m), (!r || /post/i.test(r)) && I.setAttribute("method", "POST"), i != h.url && I.setAttribute("action", h.url), h.skipEncodingOverride || r && !/post/i.test(r) || c.attr({ encoding: "multipart/form-data", enctype: "multipart/form-data" }), h.timeout && (C = setTimeout(function () { x = !0, l(S) }, h.timeout)); var a = []; try { if (h.extraData) for (var u in h.extraData) h.extraData.hasOwnProperty(u) && a.push(t.isPlainObject(h.extraData[u]) && h.extraData[u].hasOwnProperty("name") && h.extraData[u].hasOwnProperty("value") ? t('<input type="hidden" name="' + h.extraData[u].name + '">').val(h.extraData[u].value).appendTo(I)[0] : t('<input type="hidden" name="' + u + '">').val(h.extraData[u]).appendTo(I)[0]); h.iframeTarget || g.appendTo("body"), v.attachEvent ? v.attachEvent("onload", l) : v.addEventListener("load", l, !1), setTimeout(function t() { try { var e = s(v).readyState; n("state = " + e), e && "uninitialized" == e.toLowerCase() && setTimeout(t, 50) } catch (t) { n("Server abort: ", t, " (", t.name, ")"), l(k), C && clearTimeout(C), C = void 0 } }, 15); try { I.submit() } catch (t) { document.createElement("form").submit.apply(I) } } finally { I.setAttribute("action", i), I.setAttribute("enctype", o), e ? I.setAttribute("target", e) : c.removeAttr("target"), t(a).remove() } } function l(e) { if (!y.aborted && !P) { if ((F = s(v)) || (n("cannot access response document"), e = k), e === S && y) return y.abort("timeout"), void T.reject(y, "timeout"); if (e == k && y) return y.abort("server abort"), void T.reject(y, "error", "server abort"); if (F && F.location.href != h.iframeSrc || x) { v.detachEvent ? v.detachEvent("onload", l) : v.removeEventListener("load", l, !1); var i, o = "success"; try { if (x) throw "timeout"; var r = "xml" == h.dataType || F.XMLDocument || t.isXMLDoc(F); if (n("isXml=" + r), !r && window.opera && (null === F.body || !F.body.innerHTML) && --D) return n("requeing onLoad callback, DOM not available"), void setTimeout(l, 250); var a = F.body ? F.body : F.documentElement; y.responseText = a ? a.innerHTML : null, y.responseXML = F.XMLDocument ? F.XMLDocument : F, r && (h.dataType = "xml"), y.getResponseHeader = function (t) { return { "content-type": h.dataType }[t.toLowerCase()] }, a && (y.status = Number(a.getAttribute("status")) || y.status, y.statusText = a.getAttribute("statusText") || y.statusText); var c = (h.dataType || "").toLowerCase(), u = /(json|script|text)/.test(c); if (u || h.textarea) { var d = F.getElementsByTagName("textarea")[0]; if (d) y.responseText = d.value, y.status = Number(d.getAttribute("status")) || y.status, y.statusText = d.getAttribute("statusText") || y.statusText; else if (u) { var p = F.getElementsByTagName("pre")[0], m = F.getElementsByTagName("body")[0]; p ? y.responseText = p.textContent ? p.textContent : p.innerText : m && (y.responseText = m.textContent ? m.textContent : m.innerText) } } else "xml" == c && !y.responseXML && y.responseText && (y.responseXML = O(y.responseText)); try { A = j(y, c, h) } catch (t) { o = "parsererror", y.error = i = t || o } } catch (t) { n("error caught: ", t), o = "error", y.error = i = t || o } y.aborted && (n("upload aborted"), o = null), y.status && (o = y.status >= 200 && y.status < 300 || 304 === y.status ? "success" : "error"), "success" === o ? (h.success && h.success.call(h.context, A, "success", y), T.resolve(y.responseText, "success", y), f && t.event.trigger("ajaxSuccess", [y, h])) : o && (void 0 === i && (i = y.statusText), h.error && h.error.call(h.context, y, o, i), T.reject(y, "error", i), f && t.event.trigger("ajaxError", [y, h, i])), f && t.event.trigger("ajaxComplete", [y, h]), f && !--t.active && t.event.trigger("ajaxStop"), h.complete && h.complete.call(h.context, y, o), P = !0, h.timeout && clearTimeout(C), setTimeout(function () { h.iframeTarget ? g.attr("src", h.iframeSrc) : g.remove(), y.responseXML = null }, 100) } } } var u, d, h, f, m, g, v, y, b, w, x, C, I = c[0], T = t.Deferred(); if (T.abort = function (t) { y.abort(t) }, i) for (d = 0; d < p.length; d++) u = t(p[d]), o ? u.prop("disabled", !1) : u.removeAttr("disabled"); if ((h = t.extend(!0, {}, t.ajaxSettings, e)).context = h.context || h, m = "jqFormIO" + (new Date).getTime(), h.iframeTarget ? (w = (g = t(h.iframeTarget)).attr2("name")) ? m = w : g.attr2("name", m) : (g = t('<iframe name="' + m + '" src="' + h.iframeSrc + '" />')).css({ position: "absolute", top: "-1000px", left: "-1000px" }), v = g[0], y = { aborted: 0, responseText: null, responseXML: null, status: 0, statusText: "n/a", getAllResponseHeaders: function () { }, getResponseHeader: function () { }, setRequestHeader: function () { }, abort: function (e) { var i = "timeout" === e ? "timeout" : "aborted"; n("aborting upload... " + i), this.aborted = 1; try { v.contentWindow.document.execCommand && v.contentWindow.document.execCommand("Stop") } catch (t) { } g.attr("src", h.iframeSrc), y.error = i, h.error && h.error.call(h.context, y, i, e), f && t.event.trigger("ajaxError", [y, h, i]), h.complete && h.complete.call(h.context, y, i) } }, (f = h.global) && 0 == t.active++ && t.event.trigger("ajaxStart"), f && t.event.trigger("ajaxSend", [y, h]), h.beforeSend && !1 === h.beforeSend.call(h.context, y, h)) return h.global && t.active--, T.reject(), T; if (y.aborted) return T.reject(), T; (b = I.clk) && (w = b.name) && !b.disabled && (h.extraData = h.extraData || {}, h.extraData[w] = b.value, "image" == b.type && (h.extraData[w + ".x"] = I.clk_x, h.extraData[w + ".y"] = I.clk_y)); var S = 1, k = 2, E = t("meta[name=csrf-token]").attr("content"), $ = t("meta[name=csrf-param]").attr("content"); $ && E && (h.extraData = h.extraData || {}, h.extraData[$] = E), h.forceSync ? a() : setTimeout(a, 10); var A, F, P, D = 50, O = t.parseXML || function (t, e) { return window.ActiveXObject ? ((e = new ActiveXObject("Microsoft.XMLDOM")).async = "false", e.loadXML(t)) : e = (new DOMParser).parseFromString(t, "text/xml"), e && e.documentElement && "parsererror" != e.documentElement.nodeName ? e : null }, M = t.parseJSON || function (t) { return window.eval("(" + t + ")") }, j = function (e, i, n) { var s = e.getResponseHeader("content-type") || "", o = "xml" === i || !i && s.indexOf("xml") >= 0, r = o ? e.responseXML : e.responseText; return o && "parsererror" === r.documentElement.nodeName && t.error && t.error("parsererror"), n && n.dataFilter && (r = n.dataFilter(r, i)), "string" == typeof r && ("json" === i || !i && s.indexOf("json") >= 0 ? r = M(r) : ("script" === i || !i && s.indexOf("javascript") >= 0) && t.globalEval(r)), r }; return T } if (!this.length) return n("ajaxSubmit: skipping submit process - no element selected"), this; var r, a, l, c = this; "function" == typeof e ? e = { success: e } : void 0 === e && (e = {}), r = e.type || this.attr2("method"), (l = (l = "string" == typeof (a = e.url || this.attr2("action")) ? t.trim(a) : "") || window.location.href || "") && (l = (l.match(/^([^#]+)/) || [])[1]), e = t.extend(!0, { url: l, success: t.ajaxSettings.success, type: r || t.ajaxSettings.type, iframeSrc: /^https/i.test(window.location.href || "") ? "javascript:false" : "about:blank" }, e); var u = {}; if (this.trigger("form-pre-serialize", [this, e, u]), u.veto) return n("ajaxSubmit: submit vetoed via form-pre-serialize trigger"), this; if (e.beforeSerialize && !1 === e.beforeSerialize(this, e)) return n("ajaxSubmit: submit aborted via beforeSerialize callback"), this; var d = e.traditional; void 0 === d && (d = t.ajaxSettings.traditional); var h, p = [], f = this.formToArray(e.semantic, p); if (e.data && (e.extraData = e.data, h = t.param(e.data, d)), e.beforeSubmit && !1 === e.beforeSubmit(f, this, e)) return n("ajaxSubmit: submit aborted via beforeSubmit callback"), this; if (this.trigger("form-submit-validate", [f, this, e, u]), u.veto) return n("ajaxSubmit: submit vetoed via form-submit-validate trigger"), this; var m = t.param(f, d); h && (m = m ? m + "&" + h : h), "GET" == e.type.toUpperCase() ? (e.url += (e.url.indexOf("?") >= 0 ? "&" : "?") + m, e.data = null) : e.data = m; var g = []; if (e.resetForm && g.push(function () { c.resetForm() }), e.clearForm && g.push(function () { c.clearForm(e.includeHidden) }), !e.dataType && e.target) { var v = e.success || function () { }; g.push(function (i) { var n = e.replaceTarget ? "replaceWith" : "html"; t(e.target)[n](i).each(v, arguments) }) } else e.success && g.push(e.success); if (e.success = function (t, i, n) { for (var s = e.context || this, o = 0, r = g.length; r > o; o++) g[o].apply(s, [t, i, n || c, c]) }, e.error) { var y = e.error; e.error = function (t, i, n) { var s = e.context || this; y.apply(s, [t, i, n, c]) } } if (e.complete) { var b = e.complete; e.complete = function (t, i) { var n = e.context || this; b.apply(n, [t, i, c]) } } var w = t("input[type=file]:enabled", this).filter(function () { return "" !== t(this).val() }).length > 0, x = "multipart/form-data", C = c.attr("enctype") == x || c.attr("encoding") == x, I = s.fileapi && s.formdata; n("fileAPI :" + I); var T, S = (w || C) && !I; !1 !== e.iframe && (e.iframe || S) ? e.closeKeepAlive ? t.get(e.closeKeepAlive, function () { T = i(f) }) : T = i(f) : T = (w || C) && I ? function (i) { for (var n = new FormData, s = 0; s < i.length; s++) n.append(i[s].name, i[s].value); if (e.extraData) { var o = function (i) { var n, s, o = t.param(i, e.traditional).split("&"), r = o.length, a = []; for (n = 0; r > n; n++) o[n] = o[n].replace(/\+/g, " "), s = o[n].split("="), a.push([decodeURIComponent(s[0]), decodeURIComponent(s[1])]); return a }(e.extraData); for (s = 0; s < o.length; s++) o[s] && n.append(o[s][0], o[s][1]) } e.data = null; var a = t.extend(!0, {}, t.ajaxSettings, e, { contentType: !1, processData: !1, cache: !1, type: r || "POST" }); e.uploadProgress && (a.xhr = function () { var i = t.ajaxSettings.xhr(); return i.upload && i.upload.addEventListener("progress", function (t) { var i = 0, n = t.loaded || t.position, s = t.total; t.lengthComputable && (i = Math.ceil(n / s * 100)), e.uploadProgress(t, n, s, i) }, !1), i }), a.data = null; var l = a.beforeSend; return a.beforeSend = function (t, i) { i.data = e.formData ? e.formData : n, l && l.call(this, t, i) }, t.ajax(a) }(f) : t.ajax(e), c.removeData("jqxhr").data("jqxhr", T); for (var k = 0; k < p.length; k++) p[k] = null; return this.trigger("form-submit-notify", [this, e]), this }, t.fn.ajaxForm = function (s) { if ((s = s || {}).delegation = s.delegation && t.isFunction(t.fn.on), !s.delegation && 0 === this.length) { var o = { s: this.selector, c: this.context }; return !t.isReady && o.s ? (n("DOM not ready, queuing ajaxForm"), t(function () { t(o.s, o.c).ajaxForm(s) }), this) : (n("terminating; zero elements found by selector" + (t.isReady ? "" : " (DOM not ready)")), this) } return s.delegation ? (t(document).off("submit.form-plugin", this.selector, e).off("click.form-plugin", this.selector, i).on("submit.form-plugin", this.selector, s, e).on("click.form-plugin", this.selector, s, i), this) : this.ajaxFormUnbind().bind("submit.form-plugin", s, e).bind("click.form-plugin", s, i) }, t.fn.ajaxFormUnbind = function () { return this.unbind("submit.form-plugin click.form-plugin") }, t.fn.formToArray = function (e, i) { var n = []; if (0 === this.length) return n; var o, r, a, l, c, u, d, h, p = this[0], f = this.attr("id"), m = e ? p.getElementsByTagName("*") : p.elements; if (m && !/MSIE [678]/.test(navigator.userAgent) && (m = t(m).get()), f && (o = t(':input[form="' + f + '"]').get()).length && (m = (m || []).concat(o)), !m || !m.length) return n; for (r = 0, d = m.length; d > r; r++) if ((l = (u = m[r]).name) && !u.disabled) if (e && p.clk && "image" == u.type) p.clk == u && (n.push({ name: l, value: t(u).val(), type: u.type }), n.push({ name: l + ".x", value: p.clk_x }, { name: l + ".y", value: p.clk_y })); else if ((c = t.fieldValue(u, !0)) && c.constructor == Array) for (i && i.push(u), a = 0, h = c.length; h > a; a++) n.push({ name: l, value: c[a] }); else if (s.fileapi && "file" == u.type) { i && i.push(u); var g = u.files; if (g.length) for (a = 0; a < g.length; a++) n.push({ name: l, value: g[a], type: u.type }); else n.push({ name: l, value: "", type: u.type }) } else null != c && (i && i.push(u), n.push({ name: l, value: c, type: u.type, required: u.required })); if (!e && p.clk) { var v = t(p.clk), y = v[0]; (l = y.name) && !y.disabled && "image" == y.type && (n.push({ name: l, value: v.val() }), n.push({ name: l + ".x", value: p.clk_x }, { name: l + ".y", value: p.clk_y })) } return n }, t.fn.formSerialize = function (e) { return t.param(this.formToArray(e)) }, t.fn.fieldSerialize = function (e) { var i = []; return this.each(function () { var n = this.name; if (n) { var s = t.fieldValue(this, e); if (s && s.constructor == Array) for (var o = 0, r = s.length; r > o; o++) i.push({ name: n, value: s[o] }); else null != s && i.push({ name: this.name, value: s }) } }), t.param(i) }, t.fn.fieldValue = function (e) { for (var i = [], n = 0, s = this.length; s > n; n++) { var o = this[n], r = t.fieldValue(o, e); null == r || r.constructor == Array && !r.length || (r.constructor == Array ? t.merge(i, r) : i.push(r)) } return i }, t.fieldValue = function (e, i) { var n = e.name, s = e.type, o = e.tagName.toLowerCase(); if (void 0 === i && (i = !0), i && (!n || e.disabled || "reset" == s || "button" == s || ("checkbox" == s || "radio" == s) && !e.checked || ("submit" == s || "image" == s) && e.form && e.form.clk != e || "select" == o && -1 == e.selectedIndex)) return null; if ("select" == o) { var r = e.selectedIndex; if (0 > r) return null; for (var a = [], l = e.options, c = "select-one" == s, u = c ? r + 1 : l.length, d = c ? r : 0; u > d; d++) { var h = l[d]; if (h.selected) { var p = h.value; if (p || (p = h.attributes && h.attributes.value && !h.attributes.value.specified ? h.text : h.value), c) return p; a.push(p) } } return a } return t(e).val() }, t.fn.clearForm = function (e) { return this.each(function () { t("input,select,textarea", this).clearFields(e) }) }, t.fn.clearFields = t.fn.clearInputs = function (e) { var i = /^(?:color|date|datetime|email|month|number|password|range|search|tel|text|time|url|week)$/i; return this.each(function () { var n = this.type, s = this.tagName.toLowerCase(); i.test(n) || "textarea" == s ? this.value = "" : "checkbox" == n || "radio" == n ? this.checked = !1 : "select" == s ? this.selectedIndex = -1 : "file" == n ? /MSIE/.test(navigator.userAgent) ? t(this).replaceWith(t(this).clone(!0)) : t(this).val("") : e && (!0 === e && /hidden/.test(n) || "string" == typeof e && t(this).is(e)) && (this.value = "") }) }, t.fn.resetForm = function () { return this.each(function () { ("function" == typeof this.reset || "object" == typeof this.reset && !this.reset.nodeType) && this.reset() }) }, t.fn.enable = function (t) { return void 0 === t && (t = !0), this.each(function () { this.disabled = !t }) }, t.fn.selected = function (e) { return void 0 === e && (e = !0), this.each(function () { var i = this.type; if ("checkbox" == i || "radio" == i) this.checked = e; else if ("option" == this.tagName.toLowerCase()) { var n = t(this).parent("select"); e && n[0] && "select-one" == n[0].type && n.find("option").selected(!1), this.selected = e } }) }, t.fn.ajaxSubmit.debug = !1 }), window.Modernizr = function (t, e, i) { function n(t) { m.cssText = t } function s(t, e) { return typeof t === e } function o(t, e) { return !!~("" + t).indexOf(e) } function r(t, e) { for (var n in t) { var s = t[n]; if (!o(s, "-") && m[s] !== i) return "pfx" != e || s } return !1 } function a(t, e, n) { for (var o in t) { var r = e[t[o]]; if (r !== i) return !1 === n ? t[o] : s(r, "function") ? r.bind(n || e) : r } return !1 } function l(t, e, i) { var n = t.charAt(0).toUpperCase() + t.slice(1), o = (t + " " + x.join(n + " ") + n).split(" "); return s(e, "string") || s(e, "undefined") ? r(o, e) : a(o = (t + " " + C.join(n + " ") + n).split(" "), e, i) } var c, u, d = {}, h = e.documentElement, p = "modernizr", f = e.createElement(p), m = f.style, g = e.createElement("input"), v = ":)", y = {}.toString, b = " -webkit- -moz- -o- -ms- ".split(" "), w = "Webkit Moz O ms", x = w.split(" "), C = w.toLowerCase().split(" "), I = "http://www.w3.org/2000/svg", T = {}, S = {}, k = {}, E = [], $ = E.slice, A = function (t, i, n, s) { var o, r, a, l, c = e.createElement("div"), u = e.body, d = u || e.createElement("body"); if (parseInt(n, 10)) for (; n--;) (a = e.createElement("div")).id = s ? s[n] : p + (n + 1), c.appendChild(a); return o = ["&#173;", '<style id="s', p, '">', t, "</style>"].join(""), c.id = p, (u ? c : d).innerHTML += o, d.appendChild(c), u || (d.style.background = "", d.style.overflow = "hidden", l = h.style.overflow, h.style.overflow = "hidden", h.appendChild(d)), r = i(c, t), u ? c.parentNode.removeChild(c) : (d.parentNode.removeChild(d), h.style.overflow = l), !!r }, F = function () { var t = { select: "input", change: "input", submit: "form", reset: "form", error: "img", load: "img", abort: "img" }; return function (n, o) { o = o || e.createElement(t[n] || "div"); var r = (n = "on" + n) in o; return r || (o.setAttribute || (o = e.createElement("div")), o.setAttribute && o.removeAttribute && (o.setAttribute(n, ""), r = s(o[n], "function"), s(o[n], "undefined") || (o[n] = i), o.removeAttribute(n))), o = null, r } }(), P = {}.hasOwnProperty; for (var D in u = s(P, "undefined") || s(P.call, "undefined") ? function (t, e) { return e in t && s(t.constructor.prototype[e], "undefined") } : function (t, e) { return P.call(t, e) }, Function.prototype.bind || (Function.prototype.bind = function (t) { var e = this; if ("function" != typeof e) throw new TypeError; var i = $.call(arguments, 1), n = function () { if (this instanceof n) { var s = function () { }; s.prototype = e.prototype; var o = new s, r = e.apply(o, i.concat($.call(arguments))); return Object(r) === r ? r : o } return e.apply(t, i.concat($.call(arguments))) }; return n }), T.flexbox = function () { return l("flexWrap") }, T.flexboxlegacy = function () { return l("boxDirection") }, T.canvas = function () { var t = e.createElement("canvas"); return !(!t.getContext || !t.getContext("2d")) }, T.canvastext = function () { return !(!d.canvas || !s(e.createElement("canvas").getContext("2d").fillText, "function")) }, T.webgl = function () { return !!t.WebGLRenderingContext }, T.touch = function () { var i; return "ontouchstart" in t || t.DocumentTouch && e instanceof DocumentTouch ? i = !0 : A(["@media (", b.join("touch-enabled),("), p, ")", "{#modernizr{top:9px;position:absolute}}"].join(""), function (t) { i = 9 === t.offsetTop }), i }, T.geolocation = function () { return "geolocation" in navigator }, T.postmessage = function () { return !!t.postMessage }, T.websqldatabase = function () { return !!t.openDatabase }, T.indexedDB = function () { return !!l("indexedDB", t) }, T.hashchange = function () { return F("hashchange", t) && (e.documentMode === i || e.documentMode > 7) }, T.history = function () { return !(!t.history || !history.pushState) }, T.draganddrop = function () { var t = e.createElement("div"); return "draggable" in t || "ondragstart" in t && "ondrop" in t }, T.websockets = function () { return "WebSocket" in t || "MozWebSocket" in t }, T.rgba = function () { return n("background-color:rgba(150,255,150,.5)"), o(m.backgroundColor, "rgba") }, T.hsla = function () { return n("background-color:hsla(120,40%,100%,.5)"), o(m.backgroundColor, "rgba") || o(m.backgroundColor, "hsla") }, T.multiplebgs = function () { return n("background:url(https://),url(https://),red url(https://)"), /(url\s*\(.*?){3}/.test(m.background) }, T.backgroundsize = function () { return l("backgroundSize") }, T.borderimage = function () { return l("borderImage") }, T.borderradius = function () { return l("borderRadius") }, T.boxshadow = function () { return l("boxShadow") }, T.textshadow = function () { return "" === e.createElement("div").style.textShadow }, T.opacity = function () { return "opacity:.55", n(b.join("opacity:.55;") + ""), /^0.55$/.test(m.opacity) }, T.cssanimations = function () { return l("animationName") }, T.csscolumns = function () { return l("columnCount") }, T.cssgradients = function () { var t = "background-image:"; return n((t + "-webkit- ".split(" ").join("gradient(linear,left top,right bottom,from(#9f9),to(white));" + t) + b.join("linear-gradient(left top,#9f9, white);" + t)).slice(0, -t.length)), o(m.backgroundImage, "gradient") }, T.cssreflections = function () { return l("boxReflect") }, T.csstransforms = function () { return !!l("transform") }, T.csstransforms3d = function () { var t = !!l("perspective"); return t && "webkitPerspective" in h.style && A("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}", function (e) { t = 9 === e.offsetLeft && 3 === e.offsetHeight }), t }, T.csstransitions = function () { return l("transition") }, T.fontface = function () { var t; return A('@font-face {font-family:"font";src:url("https://")}', function (i, n) { var s = e.getElementById("smodernizr"), o = s.sheet || s.styleSheet, r = o ? o.cssRules && o.cssRules[0] ? o.cssRules[0].cssText : o.cssText || "" : ""; t = /src/i.test(r) && 0 === r.indexOf(n.split(" ")[0]) }), t }, T.generatedcontent = function () { var t; return A(["#", p, "{font:0/0 a}#", p, ':after{content:"', v, '";visibility:hidden;font:3px/1 a}'].join(""), function (e) { t = e.offsetHeight >= 3 }), t }, T.video = function () { var t = e.createElement("video"), i = !1; try { (i = !!t.canPlayType) && ((i = new Boolean(i)).ogg = t.canPlayType('video/ogg; codecs="theora"').replace(/^no$/, ""), i.h264 = t.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/, ""), i.webm = t.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/, "")) } catch (t) { } return i }, T.audio = function () { var t = e.createElement("audio"), i = !1; try { (i = !!t.canPlayType) && ((i = new Boolean(i)).ogg = t.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/, ""), i.mp3 = t.canPlayType("audio/mpeg;").replace(/^no$/, ""), i.wav = t.canPlayType('audio/wav; codecs="1"').replace(/^no$/, ""), i.m4a = (t.canPlayType("audio/x-m4a;") || t.canPlayType("audio/aac;")).replace(/^no$/, "")) } catch (t) { } return i }, T.localstorage = function () { try { return localStorage.setItem(p, p), localStorage.removeItem(p), !0 } catch (t) { return !1 } }, T.sessionstorage = function () { try { return sessionStorage.setItem(p, p), sessionStorage.removeItem(p), !0 } catch (t) { return !1 } }, T.webworkers = function () { return !!t.Worker }, T.applicationcache = function () { return !!t.applicationCache }, T.svg = function () { return !!e.createElementNS && !!e.createElementNS(I, "svg").createSVGRect }, T.inlinesvg = function () { var t = e.createElement("div"); return t.innerHTML = "<svg/>", (t.firstChild && t.firstChild.namespaceURI) == I }, T.smil = function () { return !!e.createElementNS && /SVGAnimate/.test(y.call(e.createElementNS(I, "animate"))) }, T.svgclippaths = function () { return !!e.createElementNS && /SVGClipPath/.test(y.call(e.createElementNS(I, "clipPath"))) }, T) u(T, D) && (c = D.toLowerCase(), d[c] = T[D](), E.push((d[c] ? "" : "no-") + c)); return d.input || (d.input = function (i) { for (var n = 0, s = i.length; s > n; n++) k[i[n]] = !!(i[n] in g); return k.list && (k.list = !(!e.createElement("datalist") || !t.HTMLDataListElement)), k }("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")), d.inputtypes = function (t) { for (var n, s, o, r = 0, a = t.length; a > r; r++) g.setAttribute("type", s = t[r]), (n = "text" !== g.type) && (g.value = v, g.style.cssText = "position:absolute;visibility:hidden;", /^range$/.test(s) && g.style.WebkitAppearance !== i ? (h.appendChild(g), n = (o = e.defaultView).getComputedStyle && "textfield" !== o.getComputedStyle(g, null).WebkitAppearance && 0 !== g.offsetHeight, h.removeChild(g)) : /^(search|tel)$/.test(s) || (n = /^(url|email)$/.test(s) ? g.checkValidity && !1 === g.checkValidity() : g.value != v)), S[t[r]] = !!n; return S }("search tel url email datetime date month week time datetime-local number range color".split(" "))), d.addTest = function (t, e) { if ("object" == typeof t) for (var n in t) u(t, n) && d.addTest(n, t[n]); else { if (t = t.toLowerCase(), d[t] !== i) return d; e = "function" == typeof e ? e() : e, h.className += " " + (e ? "" : "no-") + t, d[t] = e } return d }, n(""), f = g = null, function (t, e) { t.html5 = m, r(e) }(this, e), d._version = "2.8.3", d._prefixes = b, d._domPrefixes = C, d._cssomPrefixes = x, d.mq = function (e) { var i, n = t.matchMedia || t.msMatchMedia; return n ? n(e) && n(e).matches || !1 : (A("@media " + e + " { #" + p + " { position: absolute; } }", function (e) { i = "absolute" == (t.getComputedStyle ? getComputedStyle(e, null) : e.currentStyle).position }), i) }, d.hasEvent = F, d.testProp = function (t) { return r([t]) }, d.testAllProps = l, d.testStyles = A, d.prefixed = function (t, e, i) { return e ? l(t, e, i) : l(t, "pfx") }, h.className = h.className.replace(/(^|\s)no-js(\s|$)/, "$1$2") + " js " + E.join(" "), d }(this, this.document);


var mybutton = document.getElementById("myBtn");

// When the user scrolls down 20px from the top of the document, show the button
window.onscroll = function () { scrollFunction() };

function scrollFunction() {
    if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
        mybutton.style.display = "block";
    } else {
        mybutton.style.display = "none";
    }
}

// When the user clicks on the button, scroll to the top of the document
function topFunction() {
    document.body.scrollTop = 0;
    document.documentElement.scrollTop = 0;
}


Youez - 2016 - github.com/yon3zu
LinuXploit