Linux vmi284606.contaboserver.net 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
Apache/2.4.57 (Ubuntu)
: 167.86.127.34 | : 216.73.217.51
Cant Read [ /etc/named.conf ]
7.2.24-0ubuntu0.18.04.17
root
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
var /
www /
html /
insepet /
scripts /
[ HOME SHELL ]
Name
Size
Permission
Action
.pkexec
[ DIR ]
drwxr-xr-x
GCONV_PATH=.
[ DIR ]
drwxr-xr-x
.htaccess
197
B
-r--r--r--
.mad-root
0
B
-rw-r--r--
armado
1.28
KB
-rwxrwxrwx
armado.js
1.29
KB
-rwxrwxrwx
cuadro-perfil.js
235
B
-rwxrwxrwx
footer-index.js
9.72
KB
-rwxrwxrwx
footer.js
11.93
KB
-rwxrwxrwx
header-index.js
19.98
KB
-rwxrwxrwx
header.js
20.08
KB
-rwxrwxrwx
master.js
210.79
KB
-rwxrwxrwx
master.min.js
132.36
KB
-rwxrwxrwx
polyfills.js
14.62
KB
-rwxrwxrwx
polyfills.min.js
9.84
KB
-rwxrwxrwx
popup.js
288
B
-rwxrwxrwx
pwnkit
10.99
KB
-rwxr-xr-x
vendor.js
144.83
KB
-rwxrwxrwx
vendor.min.js
87.55
KB
-rwxrwxrwx
wp-blog-header.php
2.74
KB
-r--r--r--
wp-cron.php
2.74
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : master.js
function closeAllSelect(t) { var e, i, n, s = []; for (e = document.getElementsByClassName("custom-select__items"), i = document.getElementsByClassName("custom-select__selected"), n = 0; n < i.length; n++) t == i[n] ? s.push(n) : i[n].classList.remove("custom-select__arrow-active"); for (n = 0; n < e.length; n++) s.indexOf(n) && e[n].classList.add("custom-select--hide") } function loadMediaSrc(t) { if (t) { var e = t.getAttribute("data-src-xs"), i = t.getAttribute("data-src-sm"), n = t.getAttribute("data-src-md"), s = t.getAttribute("data-src"), r = s; if (matchMedia) { var o = window.matchMedia("(max-width: 767px)"), a = window.matchMedia("(min-width: 768px) and (max-width: 991px)"), l = window.matchMedia("(min-width: 992px) and (max-width: 1200px)"); o.matches && null !== e ? r = e : a.matches && null !== i ? r = i : l.matches && null !== n && (r = n) } if (r && t.classList.contains("lazyload--background") && !t.classList.contains("lazyload--loaded") && (t.style.backgroundImage = "url(" + r + ")", t.classList.add("lazyload--loaded")), r && t.classList.contains("lazyload--image") && (t.setAttribute("src", r), t.addEventListener("load", function(e) { t.classList.add("lazyload--loaded"), t.parentNode.parentNode.parentNode.parentNode.classList.contains("module-contacts__grid") && be.isotopeContactWrapper.init() })), r && t.classList.contains("lazyload--video") && !t.classList.contains("lazyload--loaded")) { var c = new Date, h = t.querySelector("source"); h.src = r + "?time=" + c.getTime(), t.load(), t.play(), t.classList.add("lazyload--loaded") } if (t.parentNode.classList.contains("lazyload-wrap") && !t.classList.contains("lazyload--loaded")) { t.getAttribute("data-width"), t.getAttribute("data-height"), parseInt(elemHeight / elemWidth * 100); t.parentNode.style.paddingBottom = elemAspect + "%" } } } function llResizeThrottler() { llResizeTimeout || (llResizeTimeout = setTimeout(function() { llResizeTimeout = null, heyday.lazy.init() }, 66)) } var x, i, j, selElmnt, a, b, c; for (x = document.getElementsByClassName("custom-select"), i = 0; i < x.length; i++) { for (selElmnt = x[i].getElementsByTagName("select")[0], a = document.createElement("DIV"), a.setAttribute("class", "custom-select__selected"), a.innerHTML = selElmnt.options[selElmnt.selectedIndex].innerHTML, x[i].appendChild(a), b = document.createElement("DIV"), b.setAttribute("class", "custom-select__items custom-select--hide"), j = 1; j < selElmnt.length; j++) c = document.createElement("DIV"), c.innerHTML = selElmnt.options[j].innerHTML, c.addEventListener("click", function(t) { var e, i, n, s, r; for (s = this.parentNode.parentNode.getElementsByTagName("select")[0], r = this.parentNode.previousSibling, i = 0; i < s.length; i++) if (s.options[i].innerHTML == this.innerHTML) { for (s.selectedIndex = i, r.innerHTML = this.innerHTML, e = this.parentNode.getElementsByClassName("custom-select__same-as-selected"), n = 0; n < e.length; n++) e[n].removeAttribute("class"); this.setAttribute("class", "custom-select__same-as-selected"); break } r.click() }), b.appendChild(c); x[i].appendChild(b), a.addEventListener("click", function(t) { t.stopPropagation(), closeAllSelect(this), this.nextSibling.classList.toggle("custom-select--hide"), this.classList.toggle("custom-select__arrow-active") }) } document.addEventListener("click", closeAllSelect), function(t, e, i, n) { "use strict"; function s(t, e, i) { return setTimeout(c(t, i), e) } function r(t, e, i) { return !!Array.isArray(t) && (o(t, i[e], i), !0) } function o(t, e, i) { var s; if (t) if (t.forEach) t.forEach(e, i); else if (t.length !== n) for (s = 0; s < t.length;) e.call(i, t[s], s, t), s++; else for (s in t) t.hasOwnProperty(s) && e.call(i, t[s], s, t) } function a(e, i, n) { var s = "DEPRECATED METHOD: " + i + "\n" + n + " AT \n"; return function() { var i = new Error("get-stack-trace"), n = i && i.stack ? i.stack.replace(/^[^\(]+?[\n$]/gm, "").replace(/^\s+at\s+/gm, "").replace(/^Object.<anonymous>\s*\(/gm, "{anonymous}()@") : "Unknown Stack Trace", r = t.console && (t.console.warn || t.console.log); return r && r.call(t.console, s, n), e.apply(this, arguments) } } function l(t, e, i) { var n, s = e.prototype; n = t.prototype = Object.create(s), n.constructor = t, n._super = s, i && ut(n, i) } function c(t, e) { return function() { return t.apply(e, arguments) } } function h(t, e) { return typeof t == ft ? t.apply(e ? e[0] || n : n, e) : t } function u(t, e) { return t === n ? e : t } function p(t, e, i) { o(m(e), function(e) { t.addEventListener(e, i, !1) }) } function d(t, e, i) { o(m(e), function(e) { t.removeEventListener(e, i, !1) }) } function f(t, e) { for (; t;) { if (t == e) return !0; t = t.parentNode } return !1 } function g(t, e) { return t.indexOf(e) > -1 } function m(t) { return t.trim().split(/\s+/g) } function v(t, e, i) { if (t.indexOf && !i) return t.indexOf(e); for (var n = 0; n < t.length;) { if (i && t[n][i] == e || !i && t[n] === e) return n; n++ } return -1 } function y(t) { return Array.prototype.slice.call(t, 0) } function _(t, e, i) { for (var n = [], s = [], r = 0; r < t.length;) { var o = e ? t[r][e] : t[r]; v(s, o) < 0 && n.push(t[r]), s[r] = o, r++ } return i && (n = e ? n.sort(function(t, i) { return t[e] > i[e] }) : n.sort()), n } function w(t, e) { for (var i, s, r = e[0].toUpperCase() + e.slice(1), o = 0; o < pt.length;) { if (i = pt[o], s = i ? i + r : e, s in t) return s; o++ } return n } function b() { return wt++ } function T(e) { var i = e.ownerDocument || e; return i.defaultView || i.parentWindow || t } function x(t, e) { var i = this; this.manager = t, this.callback = e, this.element = t.element, this.target = t.options.inputTarget, this.domHandler = function(e) { h(t.options.enable, [t]) && i.handler(e) }, this.init() } function S(t) { var e, i = t.options.inputClass; return new(e = i ? i : xt ? O : St ? H : Tt ? B : Y)(t, C) } function C(t, e, i) { var n = i.pointers.length, s = i.changedPointers.length, r = e & Mt && n - s === 0, o = e & (kt | Wt) && n - s === 0; i.isFirst = !!r, i.isFinal = !!o, r && (t.session = {}), i.eventType = e, E(t, i), t.emit("hammer.input", i), t.recognize(i), t.session.prevInput = i } function E(t, e) { var i = t.session, n = e.pointers, s = n.length; i.firstInput || (i.firstInput = P(e)), s > 1 && !i.firstMultiple ? i.firstMultiple = P(e) : 1 === s && (i.firstMultiple = !1); var r = i.firstInput, o = i.firstMultiple, a = o ? o.center : r.center, l = e.center = M(n); e.timeStamp = vt(), e.deltaTime = e.timeStamp - r.timeStamp, e.angle = z(a, l), e.distance = W(a, l), A(i, e), e.offsetDirection = k(e.deltaX, e.deltaY); var c = $(e.deltaTime, e.deltaX, e.deltaY); e.overallVelocityX = c.x, e.overallVelocityY = c.y, e.overallVelocity = mt(c.x) > mt(c.y) ? c.x : c.y, e.scale = o ? R(o.pointers, n) : 1, e.rotation = o ? D(o.pointers, n) : 0, e.maxPointers = i.prevInput ? e.pointers.length > i.prevInput.maxPointers ? e.pointers.length : i.prevInput.maxPointers : e.pointers.length, L(i, e); var h = t.element; f(e.srcEvent.target, h) && (h = e.srcEvent.target), e.target = h } function A(t, e) { var i = e.center, n = t.offsetDelta || {}, s = t.prevDelta || {}, r = t.prevInput || {}; e.eventType !== Mt && r.eventType !== kt || (s = t.prevDelta = { x: r.deltaX || 0, y: r.deltaY || 0 }, n = t.offsetDelta = { x: i.x, y: i.y }), e.deltaX = s.x + (i.x - n.x), e.deltaY = s.y + (i.y - n.y) } function L(t, e) { var i, s, r, o, a = t.lastInterval || e, l = e.timeStamp - a.timeStamp; if (e.eventType != Wt && (l > Pt || a.velocity === n)) { var c = e.deltaX - a.deltaX, h = e.deltaY - a.deltaY, u = $(l, c, h); s = u.x, r = u.y, i = mt(u.x) > mt(u.y) ? u.x : u.y, o = k(c, h), t.lastInterval = e } else i = a.velocity, s = a.velocityX, r = a.velocityY, o = a.direction; e.velocity = i, e.velocityX = s, e.velocityY = r, e.direction = o } function P(t) { for (var e = [], i = 0; i < t.pointers.length;) e[i] = { clientX: gt(t.pointers[i].clientX), clientY: gt(t.pointers[i].clientY) }, i++; return { timeStamp: vt(), pointers: e, center: M(e), deltaX: t.deltaX, deltaY: t.deltaY } } function M(t) { var e = t.length; if (1 === e) return { x: gt(t[0].clientX), y: gt(t[0].clientY) }; for (var i = 0, n = 0, s = 0; s < e;) i += t[s].clientX, n += t[s].clientY, s++; return { x: gt(i / e), y: gt(n / e) } } function $(t, e, i) { return { x: e / t || 0, y: i / t || 0 } } function k(t, e) { return t === e ? zt : mt(t) >= mt(e) ? t < 0 ? Dt : Rt : e < 0 ? Yt : Ot } function W(t, e, i) { i || (i = Xt); var n = e[i[0]] - t[i[0]], s = e[i[1]] - t[i[1]]; return Math.sqrt(n * n + s * s) } function z(t, e, i) { i || (i = Xt); var n = e[i[0]] - t[i[0]], s = e[i[1]] - t[i[1]]; return 180 * Math.atan2(s, n) / Math.PI } function D(t, e) { return z(e[1], e[0], Bt) + z(t[1], t[0], Bt) } function R(t, e) { return W(e[0], e[1], Bt) / W(t[0], t[1], Bt) } function Y() { this.evEl = jt, this.evWin = Ft, this.pressed = !1, x.apply(this, arguments) } function O() { this.evEl = Qt, this.evWin = Zt, x.apply(this, arguments), this.store = this.manager.session.pointerEvents = [] } function q() { this.evTarget = Gt, this.evWin = Jt, this.started = !1, x.apply(this, arguments) } function I(t, e) { var i = y(t.touches), n = y(t.changedTouches); return e & (kt | Wt) && (i = _(i.concat(n), "identifier", !0)), [i, n] } function H() { this.evTarget = ee, this.targetIds = {}, x.apply(this, arguments) } function X(t, e) { var i = y(t.touches), n = this.targetIds; if (e & (Mt | $t) && 1 === i.length) return n[i[0].identifier] = !0, [i, i]; var s, r, o = y(t.changedTouches), a = [], l = this.target; if (r = i.filter(function(t) { return f(t.target, l) }), e === Mt) for (s = 0; s < r.length;) n[r[s].identifier] = !0, s++; for (s = 0; s < o.length;) n[o[s].identifier] && a.push(o[s]), e & (kt | Wt) && delete n[o[s].identifier], s++; return a.length ? [_(r.concat(a), "identifier", !0), a] : void 0 } function B() { x.apply(this, arguments); var t = c(this.handler, this); this.touch = new H(this.manager, t), this.mouse = new Y(this.manager, t), this.primaryTouch = null, this.lastTouches = [] } function N(t, e) { t & Mt ? (this.primaryTouch = e.changedPointers[0].identifier, j.call(this, e)) : t & (kt | Wt) && j.call(this, e) } function j(t) { var e = t.changedPointers[0]; if (e.identifier === this.primaryTouch) { var i = { x: e.clientX, y: e.clientY }; this.lastTouches.push(i); var n = this.lastTouches, s = function() { var t = n.indexOf(i); t > -1 && n.splice(t, 1) }; setTimeout(s, ie) } } function F(t) { for (var e = t.srcEvent.clientX, i = t.srcEvent.clientY, n = 0; n < this.lastTouches.length; n++) { var s = this.lastTouches[n], r = Math.abs(e - s.x), o = Math.abs(i - s.y); if (r <= ne && o <= ne) return !0 } return !1 } function U(t, e) { this.manager = t, this.set(e) } function V(t) { if (g(t, ce)) return ce; var e = g(t, he), i = g(t, ue); return e && i ? ce : e || i ? e ? he : ue : g(t, le) ? le : ae } function Q() { if (!re) return !1; var e = {}, i = t.CSS && t.CSS.supports; return ["auto", "manipulation", "pan-y", "pan-x", "pan-x pan-y", "none"].forEach(function(n) { e[n] = !i || t.CSS.supports("touch-action", n) }), e } function Z(t) { this.options = ut({}, this.defaults, t || {}), this.id = b(), this.manager = null, this.options.enable = u(this.options.enable, !0), this.state = de, this.simultaneous = {}, this.requireFail = [] } function K(t) { return t & ye ? "cancel" : t & me ? "end" : t & ge ? "move" : t & fe ? "start" : "" } function G(t) { return t == Ot ? "down" : t == Yt ? "up" : t == Dt ? "left" : t == Rt ? "right" : "" } function J(t, e) { var i = e.manager; return i ? i.get(t) : t } function tt() { Z.apply(this, arguments) } function et() { tt.apply(this, arguments), this.pX = null, this.pY = null } function it() { tt.apply(this, arguments) } function nt() { Z.apply(this, arguments), this._timer = null, this._input = null } function st() { tt.apply(this, arguments) } function rt() { tt.apply(this, arguments) } function ot() { Z.apply(this, arguments), this.pTime = !1, this.pCenter = !1, this._timer = null, this._input = null, this.count = 0 } function at(t, e) { return e = e || {}, e.recognizers = u(e.recognizers, at.defaults.preset), new lt(t, e) } function lt(t, e) { this.options = ut({}, at.defaults, e || {}), this.options.inputTarget = this.options.inputTarget || t, this.handlers = {}, this.session = {}, this.recognizers = [], this.oldCssProps = {}, this.element = t, this.input = S(this), this.touchAction = new U(this, this.options.touchAction), ct(this, !0), o(this.options.recognizers, function(t) { var e = this.add(new t[0](t[1])); t[2] && e.recognizeWith(t[2]), t[3] && e.requireFailure(t[3]) }, this) } function ct(t, e) { var i = t.element; if (i.style) { var n; o(t.options.cssProps, function(s, r) { n = w(i.style, r), e ? (t.oldCssProps[n] = i.style[n], i.style[n] = s) : i.style[n] = t.oldCssProps[n] || "" }), e || (t.oldCssProps = {}) } } function ht(t, i) { var n = e.createEvent("Event"); n.initEvent(t, !0, !0), n.gesture = i, i.target.dispatchEvent(n) } var ut, pt = ["", "webkit", "Moz", "MS", "ms", "o"], dt = e.createElement("div"), ft = "function", gt = Math.round, mt = Math.abs, vt = Date.now; ut = "function" != typeof Object.assign ? function(t) { if (t === n || null === t) throw new TypeError("Cannot convert undefined or null to object"); for (var e = Object(t), i = 1; i < arguments.length; i++) { var s = arguments[i]; if (s !== n && null !== s) for (var r in s) s.hasOwnProperty(r) && (e[r] = s[r]) } return e } : Object.assign; var yt = a(function(t, e, i) { for (var s = Object.keys(e), r = 0; r < s.length;)(!i || i && t[s[r]] === n) && (t[s[r]] = e[s[r]]), r++; return t }, "extend", "Use `assign`."), _t = a(function(t, e) { return yt(t, e, !0) }, "merge", "Use `assign`."), wt = 1, bt = /mobile|tablet|ip(ad|hone|od)|android/i, Tt = "ontouchstart" in t, xt = w(t, "PointerEvent") !== n, St = Tt && bt.test(navigator.userAgent), Ct = "touch", Et = "pen", At = "mouse", Lt = "kinect", Pt = 25, Mt = 1, $t = 2, kt = 4, Wt = 8, zt = 1, Dt = 2, Rt = 4, Yt = 8, Ot = 16, qt = Dt | Rt, It = Yt | Ot, Ht = qt | It, Xt = ["x", "y"], Bt = ["clientX", "clientY"]; x.prototype = { handler: function() {}, init: function() { this.evEl && p(this.element, this.evEl, this.domHandler), this.evTarget && p(this.target, this.evTarget, this.domHandler), this.evWin && p(T(this.element), this.evWin, this.domHandler) }, destroy: function() { this.evEl && d(this.element, this.evEl, this.domHandler), this.evTarget && d(this.target, this.evTarget, this.domHandler), this.evWin && d(T(this.element), this.evWin, this.domHandler) } }; var Nt = { mousedown: Mt, mousemove: $t, mouseup: kt }, jt = "mousedown", Ft = "mousemove mouseup"; l(Y, x, { handler: function(t) { var e = Nt[t.type]; e & Mt && 0 === t.button && (this.pressed = !0), e & $t && 1 !== t.which && (e = kt), this.pressed && (e & kt && (this.pressed = !1), this.callback(this.manager, e, { pointers: [t], changedPointers: [t], pointerType: At, srcEvent: t })) } }); var Ut = { pointerdown: Mt, pointermove: $t, pointerup: kt, pointercancel: Wt, pointerout: Wt }, Vt = { 2: Ct, 3: Et, 4: At, 5: Lt }, Qt = "pointerdown", Zt = "pointermove pointerup pointercancel"; t.MSPointerEvent && !t.PointerEvent && (Qt = "MSPointerDown", Zt = "MSPointerMove MSPointerUp MSPointerCancel"), l(O, x, { handler: function(t) { var e = this.store, i = !1, n = t.type.toLowerCase().replace("ms", ""), s = Ut[n], r = Vt[t.pointerType] || t.pointerType, o = r == Ct, a = v(e, t.pointerId, "pointerId"); s & Mt && (0 === t.button || o) ? a < 0 && (e.push(t), a = e.length - 1) : s & (kt | Wt) && (i = !0), a < 0 || (e[a] = t, this.callback(this.manager, s, { pointers: e, changedPointers: [t], pointerType: r, srcEvent: t }), i && e.splice(a, 1)) } }); var Kt = { touchstart: Mt, touchmove: $t, touchend: kt, touchcancel: Wt }, Gt = "touchstart", Jt = "touchstart touchmove touchend touchcancel"; l(q, x, { handler: function(t) { var e = Kt[t.type]; if (e === Mt && (this.started = !0), this.started) { var i = I.call(this, t, e); e & (kt | Wt) && i[0].length - i[1].length === 0 && (this.started = !1), this.callback(this.manager, e, { pointers: i[0], changedPointers: i[1], pointerType: Ct, srcEvent: t }) } } }); var te = { touchstart: Mt, touchmove: $t, touchend: kt, touchcancel: Wt }, ee = "touchstart touchmove touchend touchcancel"; l(H, x, { handler: function(t) { var e = te[t.type], i = X.call(this, t, e); i && this.callback(this.manager, e, { pointers: i[0], changedPointers: i[1], pointerType: Ct, srcEvent: t }) } }); var ie = 2500, ne = 25; l(B, x, { handler: function(t, e, i) { var n = i.pointerType == Ct, s = i.pointerType == At; if (!(s && i.sourceCapabilities && i.sourceCapabilities.firesTouchEvents)) { if (n) N.call(this, e, i); else if (s && F.call(this, i)) return; this.callback(t, e, i) } }, destroy: function() { this.touch.destroy(), this.mouse.destroy() } }); var se = w(dt.style, "touchAction"), re = se !== n, oe = "compute", ae = "auto", le = "manipulation", ce = "none", he = "pan-x", ue = "pan-y", pe = Q(); U.prototype = { set: function(t) { t == oe && (t = this.compute()), re && this.manager.element.style && pe[t] && (this.manager.element.style[se] = t), this.actions = t.toLowerCase().trim() }, update: function() { this.set(this.manager.options.touchAction) }, compute: function() { var t = []; return o(this.manager.recognizers, function(e) { h(e.options.enable, [e]) && (t = t.concat(e.getTouchAction())) }), V(t.join(" ")) }, preventDefaults: function(t) { var e = t.srcEvent, i = t.offsetDirection; if (this.manager.session.prevented) return void e.preventDefault(); var n = this.actions, s = g(n, ce) && !pe[ce], r = g(n, ue) && !pe[ue], o = g(n, he) && !pe[he]; if (s) { var a = 1 === t.pointers.length, l = t.distance < 2, c = t.deltaTime < 250; if (a && l && c) return } return o && r ? void 0 : s || r && i & qt || o && i & It ? this.preventSrc(e) : void 0 }, preventSrc: function(t) { this.manager.session.prevented = !0, t.preventDefault() } }; var de = 1, fe = 2, ge = 4, me = 8, ve = me, ye = 16, _e = 32; Z.prototype = { defaults: {}, set: function(t) { return ut(this.options, t), this.manager && this.manager.touchAction.update(), this }, recognizeWith: function(t) { if (r(t, "recognizeWith", this)) return this; var e = this.simultaneous; return t = J(t, this), e[t.id] || (e[t.id] = t, t.recognizeWith(this)), this }, dropRecognizeWith: function(t) { return r(t, "dropRecognizeWith", this) ? this : (t = J(t, this), delete this.simultaneous[t.id], this) }, requireFailure: function(t) { if (r(t, "requireFailure", this)) return this; var e = this.requireFail; return t = J(t, this), v(e, t) === -1 && (e.push(t), t.requireFailure(this)), this }, dropRequireFailure: function(t) { if (r(t, "dropRequireFailure", this)) return this; t = J(t, this); var e = v(this.requireFail, t); return e > -1 && this.requireFail.splice(e, 1), this }, hasRequireFailures: function() { return this.requireFail.length > 0 }, canRecognizeWith: function(t) { return !!this.simultaneous[t.id] }, emit: function(t) { function e(e) { i.manager.emit(e, t) } var i = this, n = this.state; n < me && e(i.options.event + K(n)), e(i.options.event), t.additionalEvent && e(t.additionalEvent), n >= me && e(i.options.event + K(n)) }, tryEmit: function(t) { return this.canEmit() ? this.emit(t) : void(this.state = _e) }, canEmit: function() { for (var t = 0; t < this.requireFail.length;) { if (!(this.requireFail[t].state & (_e | de))) return !1; t++ } return !0 }, recognize: function(t) { var e = ut({}, t); return h(this.options.enable, [this, e]) ? (this.state & (ve | ye | _e) && (this.state = de), this.state = this.process(e), void(this.state & (fe | ge | me | ye) && this.tryEmit(e))) : (this.reset(), void(this.state = _e)) }, process: function(t) {}, getTouchAction: function() {}, reset: function() {} }, l(tt, Z, { defaults: { pointers: 1 }, attrTest: function(t) { var e = this.options.pointers; return 0 === e || t.pointers.length === e }, process: function(t) { var e = this.state, i = t.eventType, n = e & (fe | ge), s = this.attrTest(t); return n && (i & Wt || !s) ? e | ye : n || s ? i & kt ? e | me : e & fe ? e | ge : fe : _e } }), l(et, tt, { defaults: { event: "pan", threshold: 10, pointers: 1, direction: Ht }, getTouchAction: function() { var t = this.options.direction, e = []; return t & qt && e.push(ue), t & It && e.push(he), e }, directionTest: function(t) { var e = this.options, i = !0, n = t.distance, s = t.direction, r = t.deltaX, o = t.deltaY; return s & e.direction || (e.direction & qt ? (s = 0 === r ? zt : r < 0 ? Dt : Rt, i = r != this.pX, n = Math.abs(t.deltaX)) : (s = 0 === o ? zt : o < 0 ? Yt : Ot, i = o != this.pY, n = Math.abs(t.deltaY))), t.direction = s, i && n > e.threshold && s & e.direction }, attrTest: function(t) { return tt.prototype.attrTest.call(this, t) && (this.state & fe || !(this.state & fe) && this.directionTest(t)) }, emit: function(t) { this.pX = t.deltaX, this.pY = t.deltaY; var e = G(t.direction); e && (t.additionalEvent = this.options.event + e), this._super.emit.call(this, t) } }), l(it, tt, { defaults: { event: "pinch", threshold: 0, pointers: 2 }, getTouchAction: function() { return [ce] }, attrTest: function(t) { return this._super.attrTest.call(this, t) && (Math.abs(t.scale - 1) > this.options.threshold || this.state & fe) }, emit: function(t) { if (1 !== t.scale) { var e = t.scale < 1 ? "in" : "out"; t.additionalEvent = this.options.event + e } this._super.emit.call(this, t) } }), l(nt, Z, { defaults: { event: "press", pointers: 1, time: 251, threshold: 9 }, getTouchAction: function() { return [ae] }, process: function(t) { var e = this.options, i = t.pointers.length === e.pointers, n = t.distance < e.threshold, r = t.deltaTime > e.time; if (this._input = t, !n || !i || t.eventType & (kt | Wt) && !r) this.reset(); else if (t.eventType & Mt) this.reset(), this._timer = s(function() { this.state = ve, this.tryEmit() }, e.time, this); else if (t.eventType & kt) return ve; return _e }, reset: function() { clearTimeout(this._timer) }, emit: function(t) { this.state === ve && (t && t.eventType & kt ? this.manager.emit(this.options.event + "up", t) : (this._input.timeStamp = vt(), this.manager.emit(this.options.event, this._input))) } }), l(st, tt, { defaults: { event: "rotate", threshold: 0, pointers: 2 }, getTouchAction: function() { return [ce] }, attrTest: function(t) { return this._super.attrTest.call(this, t) && (Math.abs(t.rotation) > this.options.threshold || this.state & fe) } }), l(rt, tt, { defaults: { event: "swipe", threshold: 10, velocity: .3, direction: qt | It, pointers: 1 }, getTouchAction: function() { return et.prototype.getTouchAction.call(this) }, attrTest: function(t) { var e, i = this.options.direction; return i & (qt | It) ? e = t.overallVelocity : i & qt ? e = t.overallVelocityX : i & It && (e = t.overallVelocityY), this._super.attrTest.call(this, t) && i & t.offsetDirection && t.distance > this.options.threshold && t.maxPointers == this.options.pointers && mt(e) > this.options.velocity && t.eventType & kt }, emit: function(t) { var e = G(t.offsetDirection); e && this.manager.emit(this.options.event + e, t), this.manager.emit(this.options.event, t) } }), l(ot, Z, { defaults: { event: "tap", pointers: 1, taps: 1, interval: 300, time: 250, threshold: 9, posThreshold: 10 }, getTouchAction: function() { return [le] }, process: function(t) { var e = this.options, i = t.pointers.length === e.pointers, n = t.distance < e.threshold, r = t.deltaTime < e.time; if (this.reset(), t.eventType & Mt && 0 === this.count) return this.failTimeout(); if (n && r && i) { if (t.eventType != kt) return this.failTimeout(); var o = !this.pTime || t.timeStamp - this.pTime < e.interval, a = !this.pCenter || W(this.pCenter, t.center) < e.posThreshold; this.pTime = t.timeStamp, this.pCenter = t.center, a && o ? this.count += 1 : this.count = 1, this._input = t; var l = this.count % e.taps; if (0 === l) return this.hasRequireFailures() ? (this._timer = s(function() { this.state = ve, this.tryEmit() }, e.interval, this), fe) : ve } return _e }, failTimeout: function() { return this._timer = s(function() { this.state = _e }, this.options.interval, this), _e }, reset: function() { clearTimeout(this._timer) }, emit: function() { this.state == ve && (this._input.tapCount = this.count, this.manager.emit(this.options.event, this._input)) } }), at.VERSION = "2.0.8", at.defaults = { domEvents: !1, touchAction: oe, enable: !0, inputTarget: null, inputClass: null, preset: [ [st, { enable: !1 }], [it, { enable: !1 }, ["rotate"] ], [rt, { direction: qt }], [et, { direction: qt }, ["swipe"] ], [ot], [ot, { event: "doubletap", taps: 2 }, ["tap"] ], [nt] ], cssProps: { userSelect: "none", touchSelect: "none", touchCallout: "none", contentZooming: "none", userDrag: "none", tapHighlightColor: "rgba(0,0,0,0)" } }; var we = 1, be = 2; lt.prototype = { set: function(t) { return ut(this.options, t), t.touchAction && this.touchAction.update(), t.inputTarget && (this.input.destroy(), this.input.target = t.inputTarget, this.input.init()), this }, stop: function(t) { this.session.stopped = t ? be : we }, recognize: function(t) { var e = this.session; if (!e.stopped) { this.touchAction.preventDefaults(t); var i, n = this.recognizers, s = e.curRecognizer; (!s || s && s.state & ve) && (s = e.curRecognizer = null); for (var r = 0; r < n.length;) i = n[r], e.stopped === be || s && i != s && !i.canRecognizeWith(s) ? i.reset() : i.recognize(t), !s && i.state & (fe | ge | me) && (s = e.curRecognizer = i), r++ } }, get: function(t) { if (t instanceof Z) return t; for (var e = this.recognizers, i = 0; i < e.length; i++) if (e[i].options.event == t) return e[i]; return null }, add: function(t) { if (r(t, "add", this)) return this; var e = this.get(t.options.event); return e && this.remove(e), this.recognizers.push(t), t.manager = this, this.touchAction.update(), t }, remove: function(t) { if (r(t, "remove", this)) return this; if (t = this.get(t)) { var e = this.recognizers, i = v(e, t); i !== -1 && (e.splice(i, 1), this.touchAction.update()) } return this }, on: function(t, e) { if (t !== n && e !== n) { var i = this.handlers; return o(m(t), function(t) { i[t] = i[t] || [], i[t].push(e) }), this } }, off: function(t, e) { if (t !== n) { var i = this.handlers; return o(m(t), function(t) { e ? i[t] && i[t].splice(v(i[t], e), 1) : delete i[t] }), this } }, emit: function(t, e) { this.options.domEvents && ht(t, e); var i = this.handlers[t] && this.handlers[t].slice(); if (i && i.length) { e.type = t, e.preventDefault = function() { e.srcEvent.preventDefault() }; for (var n = 0; n < i.length;) i[n](e), n++ } }, destroy: function() { this.element && ct(this, !1), this.handlers = {}, this.session = {}, this.input.destroy(), this.element = null } }, ut(at, { INPUT_START: Mt, INPUT_MOVE: $t, INPUT_END: kt, INPUT_CANCEL: Wt, STATE_POSSIBLE: de, STATE_BEGAN: fe, STATE_CHANGED: ge, STATE_ENDED: me, STATE_RECOGNIZED: ve, STATE_CANCELLED: ye, STATE_FAILED: _e, DIRECTION_NONE: zt, DIRECTION_LEFT: Dt, DIRECTION_RIGHT: Rt, DIRECTION_UP: Yt, DIRECTION_DOWN: Ot, DIRECTION_HORIZONTAL: qt, DIRECTION_VERTICAL: It, DIRECTION_ALL: Ht, Manager: lt, Input: x, TouchAction: U, TouchInput: H, MouseInput: Y, PointerEventInput: O, TouchMouseInput: B, SingleTouchInput: q, Recognizer: Z, AttrRecognizer: tt, Tap: ot, Pan: et, Swipe: rt, Pinch: it, Rotate: st, Press: nt, on: p, off: d, each: o, merge: _t, extend: yt, assign: ut, inherit: l, bindFn: c, prefixed: w }); var Te = "undefined" != typeof t ? t : "undefined" != typeof self ? self : {}; Te.Hammer = at, "function" == typeof define && define.amd ? define(function() { return at }) : "undefined" != typeof module && module.exports ? module.exports = at : t[i] = at }(window, document, "Hammer"), svg4everybody(); var heyday = heyday || {}; heyday.timing = new function() { this.debounce = function(t, e) { var i = null; return function() { var n = this, s = arguments; clearTimeout(i), i = setTimeout(function() { t.apply(n, s) }, e) } } }; var isTouch = { Android: function() { return navigator.userAgent.match(/Android/i) }, BlackBerry: function() { return navigator.userAgent.match(/BlackBerry/i) }, iOS: function() { return navigator.userAgent.match(/iPhone|iPad|iPod/i) }, Opera: function() { return navigator.userAgent.match(/Opera Mini/i) }, Windows: function() { return navigator.userAgent.match(/IEMobile/i) }, any: function() { return isTouch.Android() || isTouch.BlackBerry() || isTouch.iOS() || isTouch.Opera() || isTouch.Windows() } }; ! function(t) { t.fn.visible = function(e) { var i = t(this), n = t(window), s = n.scrollTop(), r = s + n.height(), o = i.offset().top, a = o + i.height(), l = e === !0 ? a : o, c = e === !0 ? o : a; return c <= r && l >= s } }(jQuery), function(t, e, i, n) { function s(e, i) { this.settings = null, this.options = t.extend({}, s.Defaults, i), this.$element = t(e), this._handlers = {}, this._plugins = {}, this._supress = {}, this._current = null, this._speed = null, this._coordinates = [], this._breakpoint = null, this._width = null, this._items = [], this._clones = [], this._mergers = [], this._widths = [], this._invalidated = {}, this._pipe = [], this._drag = { time: null, target: null, pointer: null, stage: { start: null, current: null }, direction: null }, this._states = { current: {}, tags: { initializing: ["busy"], animating: ["busy"], dragging: ["interacting"] } }, t.each(["onResize", "onThrottledResize"], t.proxy(function(e, i) { this._handlers[i] = t.proxy(this[i], this) }, this)), t.each(s.Plugins, t.proxy(function(t, e) { this._plugins[t.charAt(0).toLowerCase() + t.slice(1)] = new e(this) }, this)), t.each(s.Workers, t.proxy(function(e, i) { this._pipe.push({ filter: i.filter, run: t.proxy(i.run, this) }) }, this)), this.setup(), this.initialize() } s.Defaults = { items: 3, loop: !1, center: !1, rewind: !1, checkVisibility: !0, mouseDrag: !0, touchDrag: !0, pullDrag: !0, freeDrag: !1, margin: 0, stagePadding: 0, merge: !1, mergeFit: !0, autoWidth: !1, startPosition: 0, rtl: !1, smartSpeed: 250, fluidSpeed: !1, dragEndSpeed: !1, responsive: {}, responsiveRefreshRate: 200, responsiveBaseElement: e, fallbackEasing: "swing", slideTransition: "", info: !1, nestedItemSelector: !1, itemElement: "div", stageElement: "div", refreshClass: "owl-refresh", loadedClass: "owl-loaded", loadingClass: "owl-loading", rtlClass: "owl-rtl", responsiveClass: "owl-responsive", dragClass: "owl-drag", itemClass: "owl-item", stageClass: "owl-stage", stageOuterClass: "owl-stage-outer", grabClass: "owl-grab" }, s.Width = { Default: "default", Inner: "inner", Outer: "outer" }, s.Type = { Event: "event", State: "state" }, s.Plugins = {}, s.Workers = [{ filter: ["width", "settings"], run: function() { this._width = this.$element.width() } }, { filter: ["width", "items", "settings"], run: function(t) { t.current = this._items && this._items[this.relative(this._current)] } }, { filter: ["items", "settings"], run: function() { this.$stage.children(".cloned").remove() } }, { filter: ["width", "items", "settings"], run: function(t) { var e = this.settings.margin || "", i = !this.settings.autoWidth, n = this.settings.rtl, s = { width: "auto", "margin-left": n ? e : "", "margin-right": n ? "" : e }; !i && this.$stage.children().css(s), t.css = s } }, { filter: ["width", "items", "settings"], run: function(t) { var e = (this.width() / this.settings.items).toFixed(3) - this.settings.margin, i = null, n = this._items.length, s = !this.settings.autoWidth, r = []; for (t.items = { merge: !1, width: e }; n--;) i = this._mergers[n], i = this.settings.mergeFit && Math.min(i, this.settings.items) || i, t.items.merge = i > 1 || t.items.merge, r[n] = s ? e * i : this._items[n].width(); this._widths = r } }, { filter: ["items", "settings"], run: function() { var e = [], i = this._items, n = this.settings, s = Math.max(2 * n.items, 4), r = 2 * Math.ceil(i.length / 2), o = n.loop && i.length ? n.rewind ? s : Math.max(s, r) : 0, a = "", l = ""; for (o /= 2; o > 0;) e.push(this.normalize(e.length / 2, !0)), a += i[e[e.length - 1]][0].outerHTML, e.push(this.normalize(i.length - 1 - (e.length - 1) / 2, !0)), l = i[e[e.length - 1]][0].outerHTML + l, o -= 1; this._clones = e, t(a).addClass("cloned").appendTo(this.$stage), t(l).addClass("cloned").prependTo(this.$stage) } }, { filter: ["width", "items", "settings"], run: function() { for (var t = this.settings.rtl ? 1 : -1, e = this._clones.length + this._items.length, i = -1, n = 0, s = 0, r = []; ++i < e;) n = r[i - 1] || 0, s = this._widths[this.relative(i)] + this.settings.margin, r.push(n + s * t); this._coordinates = r } }, { filter: ["width", "items", "settings"], run: function() { var t = this.settings.stagePadding, e = this._coordinates, i = { width: Math.ceil(Math.abs(e[e.length - 1])) + 2 * t, "padding-left": t || "", "padding-right": t || "" }; this.$stage.css(i) } }, { filter: ["width", "items", "settings"], run: function(t) { var e = this._coordinates.length, i = !this.settings.autoWidth, n = this.$stage.children(); if (i && t.items.merge) for (; e--;) t.css.width = this._widths[this.relative(e)], n.eq(e).css(t.css); else i && (t.css.width = t.items.width, n.css(t.css)) } }, { filter: ["items"], run: function() { this._coordinates.length < 1 && this.$stage.removeAttr("style") } }, { filter: ["width", "items", "settings"], run: function(t) { t.current = t.current ? this.$stage.children().index(t.current) : 0, t.current = Math.max(this.minimum(), Math.min(this.maximum(), t.current)), this.reset(t.current) } }, { filter: ["position"], run: function() { this.animate(this.coordinates(this._current)) } }, { filter: ["width", "position", "items", "settings"], run: function() { var t, e, i, n, s = this.settings.rtl ? 1 : -1, r = 2 * this.settings.stagePadding, o = this.coordinates(this.current()) + r, a = o + this.width() * s, l = []; for (i = 0, n = this._coordinates.length; i < n; i++) t = this._coordinates[i - 1] || 0, e = Math.abs(this._coordinates[i]) + r * s, (this.op(t, "<=", o) && this.op(t, ">", a) || this.op(e, "<", o) && this.op(e, ">", a)) && l.push(i); this.$stage.children(".active").removeClass("active"), this.$stage.children(":eq(" + l.join("), :eq(") + ")").addClass("active"), this.$stage.children(".center").removeClass("center"), this.settings.center && this.$stage.children().eq(this.current()).addClass("center") } }], s.prototype.initializeStage = function() { this.$stage = this.$element.find("." + this.settings.stageClass), this.$stage.length || (this.$element.addClass(this.options.loadingClass), this.$stage = t("<" + this.settings.stageElement + ">", { "class": this.settings.stageClass }).wrap(t("<div/>", { "class": this.settings.stageOuterClass })), this.$element.append(this.$stage.parent())) }, s.prototype.initializeItems = function() { var e = this.$element.find(".owl-item"); return e.length ? (this._items = e.get().map(function(e) { return t(e) }), this._mergers = this._items.map(function() { return 1 }), void this.refresh()) : (this.replace(this.$element.children().not(this.$stage.parent())), this.isVisible() ? this.refresh() : this.invalidate("width"), void this.$element.removeClass(this.options.loadingClass).addClass(this.options.loadedClass)) }, s.prototype.initialize = function() { if (this.enter("initializing"), this.trigger("initialize"), this.$element.toggleClass(this.settings.rtlClass, this.settings.rtl), this.settings.autoWidth && !this.is("pre-loading")) { var t, e, i; t = this.$element.find("img"), e = this.settings.nestedItemSelector ? "." + this.settings.nestedItemSelector : n, i = this.$element.children(e).width(), t.length && i <= 0 && this.preloadAutoWidthImages(t) } this.initializeStage(), this.initializeItems(), this.registerEventHandlers(), this.leave("initializing"), this.trigger("initialized") }, s.prototype.isVisible = function() { return !this.settings.checkVisibility || this.$element.is(":visible") }, s.prototype.setup = function() { var e = this.viewport(), i = this.options.responsive, n = -1, s = null; i ? (t.each(i, function(t) { t <= e && t > n && (n = Number(t)) }), s = t.extend({}, this.options, i[n]), "function" == typeof s.stagePadding && (s.stagePadding = s.stagePadding()), delete s.responsive, s.responsiveClass && this.$element.attr("class", this.$element.attr("class").replace(new RegExp("(" + this.options.responsiveClass + "-)\\S+\\s", "g"), "$1" + n))) : s = t.extend({}, this.options), this.trigger("change", { property: { name: "settings", value: s } }), this._breakpoint = n, this.settings = s, this.invalidate("settings"), this.trigger("changed", { property: { name: "settings", value: this.settings } }) }, s.prototype.optionsLogic = function() { this.settings.autoWidth && (this.settings.stagePadding = !1, this.settings.merge = !1) }, s.prototype.prepare = function(e) { var i = this.trigger("prepare", { content: e }); return i.data || (i.data = t("<" + this.settings.itemElement + "/>").addClass(this.options.itemClass).append(e)), this.trigger("prepared", { content: i.data }), i.data }, s.prototype.update = function() { for (var e = 0, i = this._pipe.length, n = t.proxy(function(t) { return this[t] }, this._invalidated), s = {}; e < i;)(this._invalidated.all || t.grep(this._pipe[e].filter, n).length > 0) && this._pipe[e].run(s), e++; this._invalidated = {}, !this.is("valid") && this.enter("valid") }, s.prototype.width = function(t) { switch (t = t || s.Width.Default) { case s.Width.Inner: case s.Width.Outer: return this._width; default: return this._width - 2 * this.settings.stagePadding + this.settings.margin } }, s.prototype.refresh = function() { this.enter("refreshing"), this.trigger("refresh"), this.setup(), this.optionsLogic(), this.$element.addClass(this.options.refreshClass), this.update(), this.$element.removeClass(this.options.refreshClass), this.leave("refreshing"), this.trigger("refreshed") }, s.prototype.onThrottledResize = function() { e.clearTimeout(this.resizeTimer), this.resizeTimer = e.setTimeout(this._handlers.onResize, this.settings.responsiveRefreshRate) }, s.prototype.onResize = function() { return !!this._items.length && (this._width !== this.$element.width() && (!!this.isVisible() && (this.enter("resizing"), this.trigger("resize").isDefaultPrevented() ? (this.leave("resizing"), !1) : (this.invalidate("width"), this.refresh(), this.leave("resizing"), void this.trigger("resized"))))) }, s.prototype.registerEventHandlers = function() { t.support.transition && this.$stage.on(t.support.transition.end + ".owl.core", t.proxy(this.onTransitionEnd, this)), this.settings.responsive !== !1 && this.on(e, "resize", this._handlers.onThrottledResize), this.settings.mouseDrag && (this.$element.addClass(this.options.dragClass), this.$stage.on("mousedown.owl.core", t.proxy(this.onDragStart, this)), this.$stage.on("dragstart.owl.core selectstart.owl.core", function() { return !1 })), this.settings.touchDrag && (this.$stage.on("touchstart.owl.core", t.proxy(this.onDragStart, this)), this.$stage.on("touchcancel.owl.core", t.proxy(this.onDragEnd, this))) }, s.prototype.onDragStart = function(e) { var n = null; 3 !== e.which && (t.support.transform ? (n = this.$stage.css("transform").replace(/.*\(|\)| /g, "").split(","), n = { x: n[16 === n.length ? 12 : 4], y: n[16 === n.length ? 13 : 5] }) : (n = this.$stage.position(), n = { x: this.settings.rtl ? n.left + this.$stage.width() - this.width() + this.settings.margin : n.left, y: n.top }), this.is("animating") && (t.support.transform ? this.animate(n.x) : this.$stage.stop(), this.invalidate("position")), this.$element.toggleClass(this.options.grabClass, "mousedown" === e.type), this.speed(0), this._drag.time = (new Date).getTime(), this._drag.target = t(e.target), this._drag.stage.start = n, this._drag.stage.current = n, this._drag.pointer = this.pointer(e), t(i).on("mouseup.owl.core touchend.owl.core", t.proxy(this.onDragEnd, this)), t(i).one("mousemove.owl.core touchmove.owl.core", t.proxy(function(e) { var n = this.difference(this._drag.pointer, this.pointer(e)); t(i).on("mousemove.owl.core touchmove.owl.core", t.proxy(this.onDragMove, this)), Math.abs(n.x) < Math.abs(n.y) && this.is("valid") || (e.preventDefault(), this.enter("dragging"), this.trigger("drag")) }, this))) }, s.prototype.onDragMove = function(t) { var e = null, i = null, n = null, s = this.difference(this._drag.pointer, this.pointer(t)), r = this.difference(this._drag.stage.start, s); this.is("dragging") && (t.preventDefault(), this.settings.loop ? (e = this.coordinates(this.minimum()), i = this.coordinates(this.maximum() + 1) - e, r.x = ((r.x - e) % i + i) % i + e) : (e = this.settings.rtl ? this.coordinates(this.maximum()) : this.coordinates(this.minimum()), i = this.settings.rtl ? this.coordinates(this.minimum()) : this.coordinates(this.maximum()), n = this.settings.pullDrag ? -1 * s.x / 5 : 0, r.x = Math.max(Math.min(r.x, e + n), i + n)), this._drag.stage.current = r, this.animate(r.x)) }, s.prototype.onDragEnd = function(e) { var n = this.difference(this._drag.pointer, this.pointer(e)), s = this._drag.stage.current, r = n.x > 0 ^ this.settings.rtl ? "left" : "right"; t(i).off(".owl.core"), this.$element.removeClass(this.options.grabClass), (0 !== n.x && this.is("dragging") || !this.is("valid")) && (this.speed(this.settings.dragEndSpeed || this.settings.smartSpeed), this.current(this.closest(s.x, 0 !== n.x ? r : this._drag.direction)), this.invalidate("position"), this.update(), this._drag.direction = r, (Math.abs(n.x) > 3 || (new Date).getTime() - this._drag.time > 300) && this._drag.target.one("click.owl.core", function() { return !1 })), this.is("dragging") && (this.leave("dragging"), this.trigger("dragged")) }, s.prototype.closest = function(e, i) { var s = -1, r = 30, o = this.width(), a = this.coordinates(); return this.settings.freeDrag || t.each(a, t.proxy(function(t, l) { return "left" === i && e > l - r && e < l + r ? s = t : "right" === i && e > l - o - r && e < l - o + r ? s = t + 1 : this.op(e, "<", l) && this.op(e, ">", a[t + 1] !== n ? a[t + 1] : l - o) && (s = "left" === i ? t + 1 : t), s === -1 }, this)), this.settings.loop || (this.op(e, ">", a[this.minimum()]) ? s = e = this.minimum() : this.op(e, "<", a[this.maximum()]) && (s = e = this.maximum())), s }, s.prototype.animate = function(e) { var i = this.speed() > 0; this.is("animating") && this.onTransitionEnd(), i && (this.enter("animating"), this.trigger("translate")), t.support.transform3d && t.support.transition ? this.$stage.css({ transform: "translate3d(" + e + "px,0px,0px)", transition: this.speed() / 1e3 + "s" + (this.settings.slideTransition ? " " + this.settings.slideTransition : "") }) : i ? this.$stage.animate({ left: e + "px" }, this.speed(), this.settings.fallbackEasing, t.proxy(this.onTransitionEnd, this)) : this.$stage.css({ left: e + "px" }) }, s.prototype.is = function(t) { return this._states.current[t] && this._states.current[t] > 0 }, s.prototype.current = function(t) { if (t === n) return this._current; if (0 === this._items.length) return n; if (t = this.normalize(t), this._current !== t) { var e = this.trigger("change", { property: { name: "position", value: t } }); e.data !== n && (t = this.normalize(e.data)), this._current = t, this.invalidate("position"), this.trigger("changed", { property: { name: "position", value: this._current } }) } return this._current }, s.prototype.invalidate = function(e) { return "string" === t.type(e) && (this._invalidated[e] = !0, this.is("valid") && this.leave("valid")), t.map(this._invalidated, function(t, e) { return e }) }, s.prototype.reset = function(t) { t = this.normalize(t), t !== n && (this._speed = 0, this._current = t, this.suppress(["translate", "translated"]), this.animate(this.coordinates(t)), this.release(["translate", "translated"])) }, s.prototype.normalize = function(t, e) { var i = this._items.length, s = e ? 0 : this._clones.length; return !this.isNumeric(t) || i < 1 ? t = n : (t < 0 || t >= i + s) && (t = ((t - s / 2) % i + i) % i + s / 2), t }, s.prototype.relative = function(t) { return t -= this._clones.length / 2, this.normalize(t, !0) }, s.prototype.maximum = function(t) { var e, i, n, s = this.settings, r = this._coordinates.length; if (s.loop) r = this._clones.length / 2 + this._items.length - 1; else if (s.autoWidth || s.merge) { if (e = this._items.length) for (i = this._items[--e].width(), n = this.$element.width(); e-- && (i += this._items[e].width() + this.settings.margin, !(i > n));); r = e + 1 } else r = s.center ? this._items.length - 1 : this._items.length - s.items; return t && (r -= this._clones.length / 2), Math.max(r, 0) }, s.prototype.minimum = function(t) { return t ? 0 : this._clones.length / 2 }, s.prototype.items = function(t) { return t === n ? this._items.slice() : (t = this.normalize(t, !0), this._items[t]) }, s.prototype.mergers = function(t) { return t === n ? this._mergers.slice() : (t = this.normalize(t, !0), this._mergers[t]) }, s.prototype.clones = function(e) { var i = this._clones.length / 2, s = i + this._items.length, r = function(t) { return t % 2 === 0 ? s + t / 2 : i - (t + 1) / 2 }; return e === n ? t.map(this._clones, function(t, e) { return r(e) }) : t.map(this._clones, function(t, i) { return t === e ? r(i) : null }) }, s.prototype.speed = function(t) { return t !== n && (this._speed = t), this._speed }, s.prototype.coordinates = function(e) { var i, s = 1, r = e - 1; return e === n ? t.map(this._coordinates, t.proxy(function(t, e) { return this.coordinates(e) }, this)) : (this.settings.center ? (this.settings.rtl && (s = -1, r = e + 1), i = this._coordinates[e], i += (this.width() - i + (this._coordinates[r] || 0)) / 2 * s) : i = this._coordinates[r] || 0, i = Math.ceil(i)) }, s.prototype.duration = function(t, e, i) { return 0 === i ? 0 : Math.min(Math.max(Math.abs(e - t), 1), 6) * Math.abs(i || this.settings.smartSpeed) }, s.prototype.to = function(t, e) { var i = this.current(), n = null, s = t - this.relative(i), r = (s > 0) - (s < 0), o = this._items.length, a = this.minimum(), l = this.maximum(); this.settings.loop ? (!this.settings.rewind && Math.abs(s) > o / 2 && (s += r * -1 * o), t = i + s, n = ((t - a) % o + o) % o + a, n !== t && n - s <= l && n - s > 0 && (i = n - s, t = n, this.reset(i))) : this.settings.rewind ? (l += 1, t = (t % l + l) % l) : t = Math.max(a, Math.min(l, t)), this.speed(this.duration(i, t, e)), this.current(t), this.isVisible() && this.update() }, s.prototype.next = function(t) { t = t || !1, this.to(this.relative(this.current()) + 1, t) }, s.prototype.prev = function(t) { t = t || !1, this.to(this.relative(this.current()) - 1, t) }, s.prototype.onTransitionEnd = function(t) { return (t === n || (t.stopPropagation(), (t.target || t.srcElement || t.originalTarget) === this.$stage.get(0))) && (this.leave("animating"), void this.trigger("translated")) }, s.prototype.viewport = function() { var n; return this.options.responsiveBaseElement !== e ? n = t(this.options.responsiveBaseElement).width() : e.innerWidth ? n = e.innerWidth : i.documentElement && i.documentElement.clientWidth ? n = i.documentElement.clientWidth : console.warn("Can not detect viewport width."), n }, s.prototype.replace = function(e) { this.$stage.empty(), this._items = [], e && (e = e instanceof jQuery ? e : t(e)), this.settings.nestedItemSelector && (e = e.find("." + this.settings.nestedItemSelector)), e.filter(function() { return 1 === this.nodeType }).each(t.proxy(function(t, e) { e = this.prepare(e), this.$stage.append(e), this._items.push(e), this._mergers.push(1 * e.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1) }, this)), this.reset(this.isNumeric(this.settings.startPosition) ? this.settings.startPosition : 0), this.invalidate("items") }, s.prototype.add = function(e, i) { var s = this.relative(this._current); i = i === n ? this._items.length : this.normalize(i, !0), e = e instanceof jQuery ? e : t(e), this.trigger("add", { content: e, position: i }), e = this.prepare(e), 0 === this._items.length || i === this._items.length ? (0 === this._items.length && this.$stage.append(e), 0 !== this._items.length && this._items[i - 1].after(e), this._items.push(e), this._mergers.push(1 * e.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1)) : (this._items[i].before(e), this._items.splice(i, 0, e), this._mergers.splice(i, 0, 1 * e.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1)), this._items[s] && this.reset(this._items[s].index()), this.invalidate("items"), this.trigger("added", { content: e, position: i }) }, s.prototype.remove = function(t) { t = this.normalize(t, !0), t !== n && (this.trigger("remove", { content: this._items[t], position: t }), this._items[t].remove(), this._items.splice(t, 1), this._mergers.splice(t, 1), this.invalidate("items"), this.trigger("removed", { content: null, position: t })) }, s.prototype.preloadAutoWidthImages = function(e) { e.each(t.proxy(function(e, i) { this.enter("pre-loading"), i = t(i), t(new Image).one("load", t.proxy(function(t) { i.attr("src", t.target.src), i.css("opacity", 1), this.leave("pre-loading"), !this.is("pre-loading") && !this.is("initializing") && this.refresh() }, this)).attr("src", i.attr("src") || i.attr("data-src") || i.attr("data-src-retina")) }, this)) }, s.prototype.destroy = function() { this.$element.off(".owl.core"), this.$stage.off(".owl.core"), t(i).off(".owl.core"), this.settings.responsive !== !1 && (e.clearTimeout(this.resizeTimer), this.off(e, "resize", this._handlers.onThrottledResize)); for (var n in this._plugins) this._plugins[n].destroy(); this.$stage.children(".cloned").remove(), this.$stage.unwrap(), this.$stage.children().contents().unwrap(), this.$stage.children().unwrap(), this.$stage.remove(), this.$element.removeClass(this.options.refreshClass).removeClass(this.options.loadingClass).removeClass(this.options.loadedClass).removeClass(this.options.rtlClass).removeClass(this.options.dragClass).removeClass(this.options.grabClass).attr("class", this.$element.attr("class").replace(new RegExp(this.options.responsiveClass + "-\\S+\\s", "g"), "")).removeData("owl.carousel") }, s.prototype.op = function(t, e, i) { var n = this.settings.rtl; switch (e) { case "<": return n ? t > i : t < i; case ">": return n ? t < i : t > i; case ">=": return n ? t <= i : t >= i; case "<=": return n ? t >= i : t <= i } }, s.prototype.on = function(t, e, i, n) { t.addEventListener ? t.addEventListener(e, i, n) : t.attachEvent && t.attachEvent("on" + e, i) }, s.prototype.off = function(t, e, i, n) { t.removeEventListener ? t.removeEventListener(e, i, n) : t.detachEvent && t.detachEvent("on" + e, i) }, s.prototype.trigger = function(e, i, n, r, o) { var a = { item: { count: this._items.length, index: this.current() } }, l = t.camelCase(t.grep(["on", e, n], function(t) { return t }).join("-").toLowerCase()), c = t.Event([e, "owl", n || "carousel"].join(".").toLowerCase(), t.extend({ relatedTarget: this }, a, i)); return this._supress[e] || (t.each(this._plugins, function(t, e) { e.onTrigger && e.onTrigger(c) }), this.register({ type: s.Type.Event, name: e }), this.$element.trigger(c), this.settings && "function" == typeof this.settings[l] && this.settings[l].call(this, c)), c }, s.prototype.enter = function(e) { t.each([e].concat(this._states.tags[e] || []), t.proxy(function(t, e) { this._states.current[e] === n && (this._states.current[e] = 0), this._states.current[e]++ }, this)) }, s.prototype.leave = function(e) { t.each([e].concat(this._states.tags[e] || []), t.proxy(function(t, e) { this._states.current[e]-- }, this)) }, s.prototype.register = function(e) { if (e.type === s.Type.Event) { if (t.event.special[e.name] || (t.event.special[e.name] = {}), !t.event.special[e.name].owl) { var i = t.event.special[e.name]._default; t.event.special[e.name]._default = function(t) { return !i || !i.apply || t.namespace && t.namespace.indexOf("owl") !== -1 ? t.namespace && t.namespace.indexOf("owl") > -1 : i.apply(this, arguments) }, t.event.special[e.name].owl = !0 } } else e.type === s.Type.State && (this._states.tags[e.name] ? this._states.tags[e.name] = this._states.tags[e.name].concat(e.tags) : this._states.tags[e.name] = e.tags, this._states.tags[e.name] = t.grep(this._states.tags[e.name], t.proxy(function(i, n) { return t.inArray(i, this._states.tags[e.name]) === n }, this))) }, s.prototype.suppress = function(e) { t.each(e, t.proxy(function(t, e) { this._supress[e] = !0 }, this)) }, s.prototype.release = function(e) { t.each(e, t.proxy(function(t, e) { delete this._supress[e] }, this)) }, s.prototype.pointer = function(t) { var i = { x: null, y: null }; return t = t.originalEvent || t || e.event, t = t.touches && t.touches.length ? t.touches[0] : t.changedTouches && t.changedTouches.length ? t.changedTouches[0] : t, t.pageX ? (i.x = t.pageX, i.y = t.pageY) : (i.x = t.clientX, i.y = t.clientY), i }, s.prototype.isNumeric = function(t) { return !isNaN(parseFloat(t)) }, s.prototype.difference = function(t, e) { return { x: t.x - e.x, y: t.y - e.y } }, t.fn.owlCarousel = function(e) { var i = Array.prototype.slice.call(arguments, 1); return this.each(function() { var n = t(this), r = n.data("owl.carousel"); r || (r = new s(this, "object" == typeof e && e), n.data("owl.carousel", r), t.each(["next", "prev", "to", "destroy", "refresh", "replace", "add", "remove"], function(e, i) { r.register({ type: s.Type.Event, name: i }), r.$element.on(i + ".owl.carousel.core", t.proxy(function(t) { t.namespace && t.relatedTarget !== this && (this.suppress([i]), r[i].apply(this, [].slice.call(arguments, 1)), this.release([i])) }, r)) })), "string" == typeof e && "_" !== e.charAt(0) && r[e].apply(r, i) }) }, t.fn.owlCarousel.Constructor = s }(window.Zepto || window.jQuery, window, document), function(t, e, i, n) { var s = function(e) { this._core = e, this._interval = null, this._visible = null, this._handlers = { "initialized.owl.carousel": t.proxy(function(t) { t.namespace && this._core.settings.autoRefresh && this.watch() }, this) }, this._core.options = t.extend({}, s.Defaults, this._core.options), this._core.$element.on(this._handlers) }; s.Defaults = { autoRefresh: !0, autoRefreshInterval: 500 }, s.prototype.watch = function() { this._interval || (this._visible = this._core.isVisible(), this._interval = e.setInterval(t.proxy(this.refresh, this), this._core.settings.autoRefreshInterval)) }, s.prototype.refresh = function() { this._core.isVisible() !== this._visible && (this._visible = !this._visible, this._core.$element.toggleClass("owl-hidden", !this._visible), this._visible && this._core.invalidate("width") && this._core.refresh()) }, s.prototype.destroy = function() { var t, i; e.clearInterval(this._interval); for (t in this._handlers) this._core.$element.off(t, this._handlers[t]); for (i in Object.getOwnPropertyNames(this)) "function" != typeof this[i] && (this[i] = null) }, t.fn.owlCarousel.Constructor.Plugins.AutoRefresh = s }(window.Zepto || window.jQuery, window, document), function(t, e, i, n) { var s = function(e) { this._core = e, this._loaded = [], this._handlers = { "initialized.owl.carousel change.owl.carousel resized.owl.carousel": t.proxy(function(e) { if (e.namespace && this._core.settings && this._core.settings.lazyLoad && (e.property && "position" == e.property.name || "initialized" == e.type)) { var i = this._core.settings, s = i.center && Math.ceil(i.items / 2) || i.items, r = i.center && s * -1 || 0, o = (e.property && e.property.value !== n ? e.property.value : this._core.current()) + r, a = this._core.clones().length, l = t.proxy(function(t, e) { this.load(e) }, this); for (i.lazyLoadEager > 0 && (s += i.lazyLoadEager, i.loop && (o -= i.lazyLoadEager, s++)); r++ < s;) this.load(a / 2 + this._core.relative(o)), a && t.each(this._core.clones(this._core.relative(o)), l), o++ } }, this) }, this._core.options = t.extend({}, s.Defaults, this._core.options), this._core.$element.on(this._handlers) }; s.Defaults = { lazyLoad: !1, lazyLoadEager: 0 }, s.prototype.load = function(i) { var n = this._core.$stage.children().eq(i), s = n && n.find(".owl-lazy"); !s || t.inArray(n.get(0), this._loaded) > -1 || (s.each(t.proxy(function(i, n) { var s, r = t(n), o = e.devicePixelRatio > 1 && r.attr("data-src-retina") || r.attr("data-src") || r.attr("data-srcset"); this._core.trigger("load", { element: r, url: o }, "lazy"), r.is("img") ? r.one("load.owl.lazy", t.proxy(function() { r.css("opacity", 1), this._core.trigger("loaded", { element: r, url: o }, "lazy") }, this)).attr("src", o) : r.is("source") ? r.one("load.owl.lazy", t.proxy(function() { this._core.trigger("loaded", { element: r, url: o }, "lazy") }, this)).attr("srcset", o) : (s = new Image, s.onload = t.proxy(function() { r.css({ "background-image": 'url("' + o + '")', opacity: "1" }), this._core.trigger("loaded", { element: r, url: o }, "lazy") }, this), s.src = o) }, this)), this._loaded.push(n.get(0))) }, s.prototype.destroy = function() { var t, e; for (t in this.handlers) this._core.$element.off(t, this.handlers[t]); for (e in Object.getOwnPropertyNames(this)) "function" != typeof this[e] && (this[e] = null) }, t.fn.owlCarousel.Constructor.Plugins.Lazy = s }(window.Zepto || window.jQuery, window, document), function(t, e, i, n) { var s = function(i) { this._core = i, this._previousHeight = null, this._handlers = { "initialized.owl.carousel refreshed.owl.carousel": t.proxy(function(t) { t.namespace && this._core.settings.autoHeight && this.update() }, this), "changed.owl.carousel": t.proxy(function(t) { t.namespace && this._core.settings.autoHeight && "position" === t.property.name && this.update() }, this), "loaded.owl.lazy": t.proxy(function(t) { t.namespace && this._core.settings.autoHeight && t.element.closest("." + this._core.settings.itemClass).index() === this._core.current() && this.update() }, this) }, this._core.options = t.extend({}, s.Defaults, this._core.options), this._core.$element.on(this._handlers), this._intervalId = null; var n = this; t(e).on("load", function() { n._core.settings.autoHeight && n.update() }), t(e).resize(function() { n._core.settings.autoHeight && (null != n._intervalId && clearTimeout(n._intervalId), n._intervalId = setTimeout(function() { n.update() }, 250)) }) }; s.Defaults = { autoHeight: !1, autoHeightClass: "owl-height" }, s.prototype.update = function() { var e = this._core._current, i = e + this._core.settings.items, n = this._core.settings.lazyLoad, s = this._core.$stage.children().toArray().slice(e, i), r = [], o = 0; t.each(s, function(e, i) { r.push(t(i).height()) }), o = Math.max.apply(null, r), o <= 1 && n && this._previousHeight && (o = this._previousHeight), this._previousHeight = o, this._core.$stage.parent().height(o).addClass(this._core.settings.autoHeightClass) }, s.prototype.destroy = function() { var t, e; for (t in this._handlers) this._core.$element.off(t, this._handlers[t]); for (e in Object.getOwnPropertyNames(this)) "function" != typeof this[e] && (this[e] = null) }, t.fn.owlCarousel.Constructor.Plugins.AutoHeight = s }(window.Zepto || window.jQuery, window, document), function(t, e, i, n) { var s = function(e) { this._core = e, this._videos = {}, this._playing = null, this._handlers = { "initialized.owl.carousel": t.proxy(function(t) { t.namespace && this._core.register({ type: "state", name: "playing", tags: ["interacting"] }) }, this), "resize.owl.carousel": t.proxy(function(t) { t.namespace && this._core.settings.video && this.isInFullScreen() && t.preventDefault() }, this), "refreshed.owl.carousel": t.proxy(function(t) { t.namespace && this._core.is("resizing") && this._core.$stage.find(".cloned .owl-video-frame").remove() }, this), "changed.owl.carousel": t.proxy(function(t) { t.namespace && "position" === t.property.name && this._playing && this.stop() }, this), "prepared.owl.carousel": t.proxy(function(e) { if (e.namespace) { var i = t(e.content).find(".owl-video"); i.length && (i.css("display", "none"), this.fetch(i, t(e.content))) } }, this) }, this._core.options = t.extend({}, s.Defaults, this._core.options), this._core.$element.on(this._handlers), this._core.$element.on("click.owl.video", ".owl-video-play-icon", t.proxy(function(t) { this.play(t) }, this)) }; s.Defaults = { video: !1, videoHeight: !1, videoWidth: !1 }, s.prototype.fetch = function(t, e) { var i = function() { return t.attr("data-vimeo-id") ? "vimeo" : t.attr("data-vzaar-id") ? "vzaar" : "youtube" }(), n = t.attr("data-vimeo-id") || t.attr("data-youtube-id") || t.attr("data-vzaar-id"), s = t.attr("data-width") || this._core.settings.videoWidth, r = t.attr("data-height") || this._core.settings.videoHeight, o = t.attr("href"); if (!o) throw new Error("Missing video URL."); if (n = o.match(/(http:|https:|)\/\/(player.|www.|app.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com|be\-nocookie\.com)|vzaar\.com)\/(video\/|videos\/|embed\/|channels\/.+\/|groups\/.+\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/), n[3].indexOf("youtu") > -1) i = "youtube"; else if (n[3].indexOf("vimeo") > -1) i = "vimeo"; else { if (!(n[3].indexOf("vzaar") > -1)) throw new Error("Video URL not supported."); i = "vzaar" } n = n[6], this._videos[o] = { type: i, id: n, width: s, height: r }, e.attr("data-video", o), this.thumbnail(t, this._videos[o]) }, s.prototype.thumbnail = function(e, i) { var n, s, r, o = i.width && i.height ? "width:" + i.width + "px;height:" + i.height + "px;" : "", a = e.find("img"), l = "src", c = "", h = this._core.settings, u = function(i) { s = '<div class="owl-video-play-icon"></div>', n = h.lazyLoad ? t("<div/>", { "class": "owl-video-tn " + c, srcType: i }) : t("<div/>", { "class": "owl-video-tn", style: "opacity:1;background-image:url(" + i + ")" }), e.after(n), e.after(s) }; return e.wrap(t("<div/>", { "class": "owl-video-wrapper", style: o })), this._core.settings.lazyLoad && (l = "data-src", c = "owl-lazy"), a.length ? (u(a.attr(l)), a.remove(), !1) : void("youtube" === i.type ? (r = "//img.youtube.com/vi/" + i.id + "/hqdefault.jpg", u(r)) : "vimeo" === i.type ? t.ajax({ type: "GET", url: "//vimeo.com/api/v2/video/" + i.id + ".json", jsonp: "callback", dataType: "jsonp", success: function(t) { r = t[0].thumbnail_large, u(r) } }) : "vzaar" === i.type && t.ajax({ type: "GET", url: "//vzaar.com/api/videos/" + i.id + ".json", jsonp: "callback", dataType: "jsonp", success: function(t) { r = t.framegrab_url, u(r) } })) }, s.prototype.stop = function() { this._core.trigger("stop", null, "video"), this._playing.find(".owl-video-frame").remove(), this._playing.removeClass("owl-video-playing"), this._playing = null, this._core.leave("playing"), this._core.trigger("stopped", null, "video") }, s.prototype.play = function(e) { var i, n, s = t(e.target), r = s.closest("." + this._core.settings.itemClass), o = this._videos[r.attr("data-video")], a = o.width || "100%", l = o.height || this._core.$stage.height(); this._playing || (this._core.enter("playing"), this._core.trigger("play", null, "video"), r = this._core.items(this._core.relative(r.index())), this._core.reset(r.index()), i = t('<iframe frameborder="0" allowfullscreen mozallowfullscreen webkitAllowFullScreen ></iframe>'), i.attr("height", l), i.attr("width", a), "youtube" === o.type ? i.attr("src", "//www.youtube.com/embed/" + o.id + "?autoplay=1&rel=0&v=" + o.id) : "vimeo" === o.type ? i.attr("src", "//player.vimeo.com/video/" + o.id + "?autoplay=1") : "vzaar" === o.type && i.attr("src", "//view.vzaar.com/" + o.id + "/player?autoplay=true"), n = t(i).wrap('<div class="owl-video-frame" />').insertAfter(r.find(".owl-video")), this._playing = r.addClass("owl-video-playing")) }, s.prototype.isInFullScreen = function() { var e = i.fullscreenElement || i.mozFullScreenElement || i.webkitFullscreenElement; return e && t(e).parent().hasClass("owl-video-frame") }, s.prototype.destroy = function() { var t, e; this._core.$element.off("click.owl.video"); for (t in this._handlers) this._core.$element.off(t, this._handlers[t]); for (e in Object.getOwnPropertyNames(this)) "function" != typeof this[e] && (this[e] = null) }, t.fn.owlCarousel.Constructor.Plugins.Video = s }(window.Zepto || window.jQuery, window, document), function(t, e, i, n) { var s = function(e) { this.core = e, this.core.options = t.extend({}, s.Defaults, this.core.options), this.swapping = !0, this.previous = n, this.next = n, this.handlers = { "change.owl.carousel": t.proxy(function(t) { t.namespace && "position" == t.property.name && (this.previous = this.core.current(), this.next = t.property.value) }, this), "drag.owl.carousel dragged.owl.carousel translated.owl.carousel": t.proxy(function(t) { t.namespace && (this.swapping = "translated" == t.type) }, this), "translate.owl.carousel": t.proxy(function(t) { t.namespace && this.swapping && (this.core.options.animateOut || this.core.options.animateIn) && this.swap() }, this) }, this.core.$element.on(this.handlers) }; s.Defaults = { animateOut: !1, animateIn: !1 }, s.prototype.swap = function() { if (1 === this.core.settings.items && t.support.animation && t.support.transition) { this.core.speed(0); var e, i = t.proxy(this.clear, this), n = this.core.$stage.children().eq(this.previous), s = this.core.$stage.children().eq(this.next), r = this.core.settings.animateIn, o = this.core.settings.animateOut; this.core.current() !== this.previous && (o && (e = this.core.coordinates(this.previous) - this.core.coordinates(this.next), n.one(t.support.animation.end, i).css({ left: e + "px" }).addClass("animated owl-animated-out").addClass(o)), r && s.one(t.support.animation.end, i).addClass("animated owl-animated-in").addClass(r)) } }, s.prototype.clear = function(e) { t(e.target).css({ left: "" }).removeClass("animated owl-animated-out owl-animated-in").removeClass(this.core.settings.animateIn).removeClass(this.core.settings.animateOut), this.core.onTransitionEnd() }, s.prototype.destroy = function() { var t, e; for (t in this.handlers) this.core.$element.off(t, this.handlers[t]); for (e in Object.getOwnPropertyNames(this)) "function" != typeof this[e] && (this[e] = null) }, t.fn.owlCarousel.Constructor.Plugins.Animate = s }(window.Zepto || window.jQuery, window, document), function(t, e, i, n) { var s = function(e) { this._core = e, this._call = null, this._time = 0, this._timeout = 0, this._paused = !0, this._handlers = { "changed.owl.carousel": t.proxy(function(t) { t.namespace && "settings" === t.property.name ? this._core.settings.autoplay ? this.play() : this.stop() : t.namespace && "position" === t.property.name && this._paused && (this._time = 0) }, this), "initialized.owl.carousel": t.proxy(function(t) { t.namespace && this._core.settings.autoplay && this.play() }, this), "play.owl.autoplay": t.proxy(function(t, e, i) { t.namespace && this.play(e, i) }, this), "stop.owl.autoplay": t.proxy(function(t) { t.namespace && this.stop() }, this), "mouseover.owl.autoplay": t.proxy(function() { this._core.settings.autoplayHoverPause && this._core.is("rotating") && this.pause() }, this), "mouseleave.owl.autoplay": t.proxy(function() { this._core.settings.autoplayHoverPause && this._core.is("rotating") && this.play() }, this), "touchstart.owl.core": t.proxy(function() { this._core.settings.autoplayHoverPause && this._core.is("rotating") && this.pause() }, this), "touchend.owl.core": t.proxy(function() { this._core.settings.autoplayHoverPause && this.play() }, this) }, this._core.$element.on(this._handlers), this._core.options = t.extend({}, s.Defaults, this._core.options) }; s.Defaults = { autoplay: !1, autoplayTimeout: 5e3, autoplayHoverPause: !1, autoplaySpeed: !1 }, s.prototype._next = function(n) { this._call = e.setTimeout(t.proxy(this._next, this, n), this._timeout * (Math.round(this.read() / this._timeout) + 1) - this.read()), this._core.is("interacting") || i.hidden || this._core.next(n || this._core.settings.autoplaySpeed) }, s.prototype.read = function() { return (new Date).getTime() - this._time }, s.prototype.play = function(i, n) { var s; this._core.is("rotating") || this._core.enter("rotating"), i = i || this._core.settings.autoplayTimeout, s = Math.min(this._time % (this._timeout || i), i), this._paused ? (this._time = this.read(), this._paused = !1) : e.clearTimeout(this._call), this._time += this.read() % i - s, this._timeout = i, this._call = e.setTimeout(t.proxy(this._next, this, n), i - s) }, s.prototype.stop = function() { this._core.is("rotating") && (this._time = 0, this._paused = !0, e.clearTimeout(this._call), this._core.leave("rotating")) }, s.prototype.pause = function() { this._core.is("rotating") && !this._paused && (this._time = this.read(), this._paused = !0, e.clearTimeout(this._call)) }, s.prototype.destroy = function() { var t, e; this.stop(); for (t in this._handlers) this._core.$element.off(t, this._handlers[t]); for (e in Object.getOwnPropertyNames(this)) "function" != typeof this[e] && (this[e] = null) }, t.fn.owlCarousel.Constructor.Plugins.autoplay = s }(window.Zepto || window.jQuery, window, document), function(t, e, i, n) { "use strict"; var s = function(e) { this._core = e, this._initialized = !1, this._pages = [], this._controls = {}, this._templates = [], this.$element = this._core.$element, this._overrides = { next: this._core.next, prev: this._core.prev, to: this._core.to }, this._handlers = { "prepared.owl.carousel": t.proxy(function(e) { e.namespace && this._core.settings.dotsData && this._templates.push('<div class="' + this._core.settings.dotClass + '">' + t(e.content).find("[data-dot]").addBack("[data-dot]").attr("data-dot") + "</div>") }, this), "added.owl.carousel": t.proxy(function(t) { t.namespace && this._core.settings.dotsData && this._templates.splice(t.position, 0, this._templates.pop()) }, this), "remove.owl.carousel": t.proxy(function(t) { t.namespace && this._core.settings.dotsData && this._templates.splice(t.position, 1) }, this), "changed.owl.carousel": t.proxy(function(t) { t.namespace && "position" == t.property.name && this.draw() }, this), "initialized.owl.carousel": t.proxy(function(t) { t.namespace && !this._initialized && (this._core.trigger("initialize", null, "navigation"), this.initialize(), this.update(), this.draw(), this._initialized = !0, this._core.trigger("initialized", null, "navigation")) }, this), "refreshed.owl.carousel": t.proxy(function(t) { t.namespace && this._initialized && (this._core.trigger("refresh", null, "navigation"), this.update(), this.draw(), this._core.trigger("refreshed", null, "navigation")) }, this) }, this._core.options = t.extend({}, s.Defaults, this._core.options), this.$element.on(this._handlers) }; s.Defaults = { nav: !1, navText: ['<span aria-label="Previous">‹</span>', '<span aria-label="Next">›</span>'], navSpeed: !1, navElement: 'button type="button" role="presentation"', navContainer: !1, navContainerClass: "owl-nav", navClass: ["owl-prev", "owl-next"], slideBy: 1, dotClass: "owl-dot", dotsClass: "owl-dots", dots: !0, dotsEach: !1, dotsData: !1, dotsSpeed: !1, dotsContainer: !1 }, s.prototype.initialize = function() { var e, i = this._core.settings; this._controls.$relative = (i.navContainer ? t(i.navContainer) : t("<div>").addClass(i.navContainerClass).appendTo(this.$element)).addClass("disabled"), this._controls.$previous = t("<" + i.navElement + ">").addClass(i.navClass[0]).html(i.navText[0]).prependTo(this._controls.$relative).on("click", t.proxy(function(t) { this.prev(i.navSpeed) }, this)), this._controls.$next = t("<" + i.navElement + ">").addClass(i.navClass[1]).html(i.navText[1]).appendTo(this._controls.$relative).on("click", t.proxy(function(t) { this.next(i.navSpeed) }, this)), i.dotsData || (this._templates = [t('<button role="button">').addClass(i.dotClass).append(t("<span>")).prop("outerHTML")]), this._controls.$absolute = (i.dotsContainer ? t(i.dotsContainer) : t("<div>").addClass(i.dotsClass).appendTo(this.$element)).addClass("disabled"), this._controls.$absolute.on("click", "button", t.proxy(function(e) { var n = t(e.target).parent().is(this._controls.$absolute) ? t(e.target).index() : t(e.target).parent().index(); e.preventDefault(), this.to(n, i.dotsSpeed) }, this)); for (e in this._overrides) this._core[e] = t.proxy(this[e], this) }, s.prototype.destroy = function() { var t, e, i, n, s; s = this._core.settings; for (t in this._handlers) this.$element.off(t, this._handlers[t]); for (e in this._controls) "$relative" === e && s.navContainer ? this._controls[e].html("") : this._controls[e].remove(); for (n in this.overides) this._core[n] = this._overrides[n]; for (i in Object.getOwnPropertyNames(this)) "function" != typeof this[i] && (this[i] = null) }, s.prototype.update = function() { var t, e, i, n = this._core.clones().length / 2, s = n + this._core.items().length, r = this._core.maximum(!0), o = this._core.settings, a = o.center || o.autoWidth || o.dotsData ? 1 : o.dotsEach || o.items; if ("page" !== o.slideBy && (o.slideBy = Math.min(o.slideBy, o.items)), o.dots || "page" == o.slideBy) for (this._pages = [], t = n, e = 0, i = 0; t < s; t++) { if (e >= a || 0 === e) { if (this._pages.push({ start: Math.min(r, t - n), end: t - n + a - 1 }), Math.min(r, t - n) === r) break; e = 0, ++i } e += this._core.mergers(this._core.relative(t)) } }, s.prototype.draw = function() { var e, i = this._core.settings, n = this._core.items().length <= i.items, s = this._core.relative(this._core.current()), r = i.loop || i.rewind; this._controls.$relative.toggleClass("disabled", !i.nav || n), i.nav && (this._controls.$previous.toggleClass("disabled", !r && s <= this._core.minimum(!0)), this._controls.$next.toggleClass("disabled", !r && s >= this._core.maximum(!0))), this._controls.$absolute.toggleClass("disabled", !i.dots || n), i.dots && (e = this._pages.length - this._controls.$absolute.children().length, i.dotsData && 0 !== e ? this._controls.$absolute.html(this._templates.join("")) : e > 0 ? this._controls.$absolute.append(new Array(e + 1).join(this._templates[0])) : e < 0 && this._controls.$absolute.children().slice(e).remove(), this._controls.$absolute.find(".active").removeClass("active"), this._controls.$absolute.children().eq(t.inArray(this.current(), this._pages)).addClass("active")) }, s.prototype.onTrigger = function(e) { var i = this._core.settings; e.page = { index: t.inArray(this.current(), this._pages), count: this._pages.length, size: i && (i.center || i.autoWidth || i.dotsData ? 1 : i.dotsEach || i.items) } }, s.prototype.current = function() { var e = this._core.relative(this._core.current()); return t.grep(this._pages, t.proxy(function(t, i) { return t.start <= e && t.end >= e }, this)).pop() }, s.prototype.getPosition = function(e) { var i, n, s = this._core.settings; return "page" == s.slideBy ? (i = t.inArray(this.current(), this._pages), n = this._pages.length, e ? ++i : --i, i = this._pages[(i % n + n) % n].start) : (i = this._core.relative(this._core.current()), n = this._core.items().length, e ? i += s.slideBy : i -= s.slideBy), i }, s.prototype.next = function(e) { t.proxy(this._overrides.to, this._core)(this.getPosition(!0), e) }, s.prototype.prev = function(e) { t.proxy(this._overrides.to, this._core)(this.getPosition(!1), e) }, s.prototype.to = function(e, i, n) { var s; !n && this._pages.length ? (s = this._pages.length, t.proxy(this._overrides.to, this._core)(this._pages[(e % s + s) % s].start, i)) : t.proxy(this._overrides.to, this._core)(e, i) }, t.fn.owlCarousel.Constructor.Plugins.Navigation = s }(window.Zepto || window.jQuery, window, document), function(t, e, i, n) { "use strict"; var s = function(i) { this._core = i, this._hashes = {}, this.$element = this._core.$element, this._handlers = { "initialized.owl.carousel": t.proxy(function(i) { i.namespace && "URLHash" === this._core.settings.startPosition && t(e).trigger("hashchange.owl.navigation") }, this), "prepared.owl.carousel": t.proxy(function(e) { if (e.namespace) { var i = t(e.content).find("[data-hash]").addBack("[data-hash]").attr("data-hash"); if (!i) return; this._hashes[i] = e.content } }, this), "changed.owl.carousel": t.proxy(function(i) { if (i.namespace && "position" === i.property.name) { var n = this._core.items(this._core.relative(this._core.current())), s = t.map(this._hashes, function(t, e) { return t === n ? e : null }).join(); if (!s || e.location.hash.slice(1) === s) return; e.location.hash = s } }, this) }, this._core.options = t.extend({}, s.Defaults, this._core.options), this.$element.on(this._handlers), t(e).on("hashchange.owl.navigation", t.proxy(function(t) { var i = e.location.hash.substring(1), s = this._core.$stage.children(), r = this._hashes[i] && s.index(this._hashes[i]); r !== n && r !== this._core.current() && this._core.to(this._core.relative(r), !1, !0) }, this)) }; s.Defaults = { URLhashListener: !1 }, s.prototype.destroy = function() { var i, n; t(e).off("hashchange.owl.navigation"); for (i in this._handlers) this._core.$element.off(i, this._handlers[i]); for (n in Object.getOwnPropertyNames(this)) "function" != typeof this[n] && (this[n] = null) }, t.fn.owlCarousel.Constructor.Plugins.Hash = s }(window.Zepto || window.jQuery, window, document), function(t, e, i, n) { function s(e, i) { var s = !1, r = e.charAt(0).toUpperCase() + e.slice(1); return t.each((e + " " + a.join(r + " ") + r).split(" "), function(t, e) { if (o[e] !== n) return s = !i || e, !1 }), s } function r(t) { return s(t, !0) } var o = t("<support>").get(0).style, a = "Webkit Moz O ms".split(" "), l = { transition: { end: { WebkitTransition: "webkitTransitionEnd", MozTransition: "transitionend", OTransition: "oTransitionEnd", transition: "transitionend" } }, animation: { end: { WebkitAnimation: "webkitAnimationEnd", MozAnimation: "animationend", OAnimation: "oAnimationEnd", animation: "animationend" } } }, c = { csstransforms: function() { return !!s("transform") }, csstransforms3d: function() { return !!s("perspective") }, csstransitions: function() { return !!s("transition") }, cssanimations: function() { return !!s("animation") } }; c.csstransitions() && (t.support.transition = new String(r("transition")), t.support.transition.end = l.transition.end[t.support.transition]), c.cssanimations() && (t.support.animation = new String(r("animation")), t.support.animation.end = l.animation.end[t.support.animation]), c.csstransforms() && (t.support.transform = new String(r("transform")), t.support.transform3d = c.csstransforms3d()) }(window.Zepto || window.jQuery, window, document), function(t, e) { "object" == typeof exports && "undefined" != typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define(e) : t.PerfectScrollbar = e() }(this, function() { "use strict"; function t(t) { return getComputedStyle(t) } function e(t, e) { for (var i in e) { var n = e[i]; "number" == typeof n && (n += "px"), t.style[i] = n } return t } function i(t) { var e = document.createElement("div"); return e.className = t, e } function n(t, e) { if (!v) throw new Error("No element matching method supported"); return v.call(t, e) } function s(t) { t.remove ? t.remove() : t.parentNode && t.parentNode.removeChild(t) } function r(t, e) { return Array.prototype.filter.call(t.children, function(t) { return n(t, e) }) } function o(t, e) { var i = t.element.classList, n = y.state.scrolling(e); i.contains(n) ? clearTimeout(_[e]) : i.add(n) } function a(t, e) { _[e] = setTimeout(function() { return t.isAlive && t.element.classList.remove(y.state.scrolling(e)) }, t.settings.scrollingThreshold) } function l(t, e) { o(t, e), a(t, e) } function c(t) { if ("function" == typeof window.CustomEvent) return new CustomEvent(t); var e = document.createEvent("CustomEvent"); return e.initCustomEvent(t, !1, !1, void 0), e } function h(t, e, i, n, s) { var r = i[0], o = i[1], a = i[2], h = i[3], u = i[4], p = i[5]; void 0 === n && (n = !0), void 0 === s && (s = !1); var d = t.element; t.reach[h] = null, d[a] < 1 && (t.reach[h] = "start"), d[a] > t[r] - t[o] - 1 && (t.reach[h] = "end"), e && (d.dispatchEvent(c("ps-scroll-" + h)), e < 0 ? d.dispatchEvent(c("ps-scroll-" + u)) : e > 0 && d.dispatchEvent(c("ps-scroll-" + p)), n && l(t, h)), t.reach[h] && (e || s) && d.dispatchEvent(c("ps-" + h + "-reach-" + t.reach[h])) } function u(t) { return parseInt(t, 10) || 0 } function p(t) { return n(t, "input,[contenteditable]") || n(t, "select,[contenteditable]") || n(t, "textarea,[contenteditable]") || n(t, "button,[contenteditable]") } function d(e) { var i = t(e); return u(i.width) + u(i.paddingLeft) + u(i.paddingRight) + u(i.borderLeftWidth) + u(i.borderRightWidth) } function f(t, e) { return t.settings.minScrollbarLength && (e = Math.max(e, t.settings.minScrollbarLength)), t.settings.maxScrollbarLength && (e = Math.min(e, t.settings.maxScrollbarLength)), e } function g(t, i) { var n = { width: i.railXWidth }, s = Math.floor(t.scrollTop); i.isRtl ? n.left = i.negativeScrollAdjustment + t.scrollLeft + i.containerWidth - i.contentWidth : n.left = t.scrollLeft, i.isScrollbarXUsingBottom ? n.bottom = i.scrollbarXBottom - s : n.top = i.scrollbarXTop + s, e(i.scrollbarXRail, n); var r = { top: s, height: i.railYHeight }; i.isScrollbarYUsingRight ? i.isRtl ? r.right = i.contentWidth - (i.negativeScrollAdjustment + t.scrollLeft) - i.scrollbarYRight - i.scrollbarYOuterWidth : r.right = i.scrollbarYRight - t.scrollLeft : i.isRtl ? r.left = i.negativeScrollAdjustment + t.scrollLeft + 2 * i.containerWidth - i.contentWidth - i.scrollbarYLeft - i.scrollbarYOuterWidth : r.left = i.scrollbarYLeft + t.scrollLeft, e(i.scrollbarYRail, r), e(i.scrollbarX, { left: i.scrollbarXLeft, width: i.scrollbarXWidth - i.railBorderXWidth }), e(i.scrollbarY, { top: i.scrollbarYTop, height: i.scrollbarYHeight - i.railBorderYWidth }) } function m(t, e) { function i(e) { g[p] = m + _ * (e[l] - v), o(t, d), C(t), e.stopPropagation(), e.preventDefault() } function n() { a(t, d), t[f].classList.remove(y.state.clicking), t.event.unbind(t.ownerDocument, "mousemove", i) } var s = e[0], r = e[1], l = e[2], c = e[3], h = e[4], u = e[5], p = e[6], d = e[7], f = e[8], g = t.element, m = null, v = null, _ = null; t.event.bind(t[h], "mousedown", function(e) { m = g[p], v = e[l], _ = (t[r] - t[s]) / (t[c] - t[u]), t.event.bind(t.ownerDocument, "mousemove", i), t.event.once(t.ownerDocument, "mouseup", n), t[f].classList.add(y.state.clicking), e.stopPropagation(), e.preventDefault() }) } var v = "undefined" != typeof Element && (Element.prototype.matches || Element.prototype.webkitMatchesSelector || Element.prototype.mozMatchesSelector || Element.prototype.msMatchesSelector), y = { main: "ps", element: { thumb: function(t) { return "ps__thumb-" + t }, rail: function(t) { return "ps__rail-" + t }, consuming: "ps__child--consume" }, state: { focus: "ps--focus", clicking: "ps--clicking", active: function(t) { return "ps--active-" + t }, scrolling: function(t) { return "ps--scrolling-" + t } } }, _ = { x: null, y: null }, w = function(t) { this.element = t, this.handlers = {} }, b = { isEmpty: { configurable: !0 } }; w.prototype.bind = function(t, e) { "undefined" == typeof this.handlers[t] && (this.handlers[t] = []), this.handlers[t].push(e), this.element.addEventListener(t, e, !1) }, w.prototype.unbind = function(t, e) { var i = this; this.handlers[t] = this.handlers[t].filter(function(n) { return !(!e || n === e) || (i.element.removeEventListener(t, n, !1), !1) }) }, w.prototype.unbindAll = function() { var t = this; for (var e in t.handlers) t.unbind(e) }, b.isEmpty.get = function() { var t = this; return Object.keys(this.handlers).every(function(e) { return 0 === t.handlers[e].length }) }, Object.defineProperties(w.prototype, b); var T = function() { this.eventElements = [] }; T.prototype.eventElement = function(t) { var e = this.eventElements.filter(function(e) { return e.element === t })[0]; return e || (e = new w(t), this.eventElements.push(e)), e }, T.prototype.bind = function(t, e, i) { this.eventElement(t).bind(e, i) }, T.prototype.unbind = function(t, e, i) { var n = this.eventElement(t); n.unbind(e, i), n.isEmpty && this.eventElements.splice(this.eventElements.indexOf(n), 1) }, T.prototype.unbindAll = function() { this.eventElements.forEach(function(t) { return t.unbindAll() }), this.eventElements = [] }, T.prototype.once = function(t, e, i) { var n = this.eventElement(t), s = function(t) { n.unbind(e, s), i(t) }; n.bind(e, s) }; var x = function(t, e, i, n, s) { void 0 === n && (n = !0), void 0 === s && (s = !1); var r; if ("top" === e) r = ["contentHeight", "containerHeight", "scrollTop", "y", "up", "down"]; else { if ("left" !== e) throw new Error("A proper axis should be provided"); r = ["contentWidth", "containerWidth", "scrollLeft", "x", "left", "right"] } h(t, i, r, n, s) }, S = { isWebKit: "undefined" != typeof document && "WebkitAppearance" in document.documentElement.style, supportsTouch: "undefined" != typeof window && ("ontouchstart" in window || window.DocumentTouch && document instanceof window.DocumentTouch), supportsIePointer: "undefined" != typeof navigator && navigator.msMaxTouchPoints, isChrome: "undefined" != typeof navigator && /Chrome/i.test(navigator && navigator.userAgent) }, C = function(t) { var e = t.element, i = Math.floor(e.scrollTop); t.containerWidth = e.clientWidth, t.containerHeight = e.clientHeight, t.contentWidth = e.scrollWidth, t.contentHeight = e.scrollHeight, e.contains(t.scrollbarXRail) || (r(e, y.element.rail("x")).forEach(function(t) { return s(t) }), e.appendChild(t.scrollbarXRail)), e.contains(t.scrollbarYRail) || (r(e, y.element.rail("y")).forEach(function(t) { return s(t) }), e.appendChild(t.scrollbarYRail)), !t.settings.suppressScrollX && t.containerWidth + t.settings.scrollXMarginOffset < t.contentWidth ? (t.scrollbarXActive = !0, t.railXWidth = t.containerWidth - t.railXMarginWidth, t.railXRatio = t.containerWidth / t.railXWidth, t.scrollbarXWidth = f(t, u(t.railXWidth * t.containerWidth / t.contentWidth)), t.scrollbarXLeft = u((t.negativeScrollAdjustment + e.scrollLeft) * (t.railXWidth - t.scrollbarXWidth) / (t.contentWidth - t.containerWidth))) : t.scrollbarXActive = !1, !t.settings.suppressScrollY && t.containerHeight + t.settings.scrollYMarginOffset < t.contentHeight ? (t.scrollbarYActive = !0, t.railYHeight = t.containerHeight - t.railYMarginHeight, t.railYRatio = t.containerHeight / t.railYHeight, t.scrollbarYHeight = f(t, u(t.railYHeight * t.containerHeight / t.contentHeight)), t.scrollbarYTop = u(i * (t.railYHeight - t.scrollbarYHeight) / (t.contentHeight - t.containerHeight))) : t.scrollbarYActive = !1, t.scrollbarXLeft >= t.railXWidth - t.scrollbarXWidth && (t.scrollbarXLeft = t.railXWidth - t.scrollbarXWidth), t.scrollbarYTop >= t.railYHeight - t.scrollbarYHeight && (t.scrollbarYTop = t.railYHeight - t.scrollbarYHeight), g(e, t), t.scrollbarXActive ? e.classList.add(y.state.active("x")) : (e.classList.remove(y.state.active("x")), t.scrollbarXWidth = 0, t.scrollbarXLeft = 0, e.scrollLeft = 0), t.scrollbarYActive ? e.classList.add(y.state.active("y")) : (e.classList.remove(y.state.active("y")), t.scrollbarYHeight = 0, t.scrollbarYTop = 0, e.scrollTop = 0) }, E = function(t) { t.event.bind(t.scrollbarY, "mousedown", function(t) { return t.stopPropagation() }), t.event.bind(t.scrollbarYRail, "mousedown", function(e) { var i = e.pageY - window.pageYOffset - t.scrollbarYRail.getBoundingClientRect().top, n = i > t.scrollbarYTop ? 1 : -1; t.element.scrollTop += n * t.containerHeight, C(t), e.stopPropagation() }), t.event.bind(t.scrollbarX, "mousedown", function(t) { return t.stopPropagation() }), t.event.bind(t.scrollbarXRail, "mousedown", function(e) { var i = e.pageX - window.pageXOffset - t.scrollbarXRail.getBoundingClientRect().left, n = i > t.scrollbarXLeft ? 1 : -1; t.element.scrollLeft += n * t.containerWidth, C(t), e.stopPropagation() }) }, A = function(t) { m(t, ["containerWidth", "contentWidth", "pageX", "railXWidth", "scrollbarX", "scrollbarXWidth", "scrollLeft", "x", "scrollbarXRail"]), m(t, ["containerHeight", "contentHeight", "pageY", "railYHeight", "scrollbarY", "scrollbarYHeight", "scrollTop", "y", "scrollbarYRail"]) }, L = function(t) { function e(e, n) { var s = Math.floor(i.scrollTop); if (0 === e) { if (!t.scrollbarYActive) return !1; if (0 === s && n > 0 || s >= t.contentHeight - t.containerHeight && n < 0) return !t.settings.wheelPropagation } var r = i.scrollLeft; if (0 === n) { if (!t.scrollbarXActive) return !1; if (0 === r && e < 0 || r >= t.contentWidth - t.containerWidth && e > 0) return !t.settings.wheelPropagation } return !0 } var i = t.element, s = function() { return n(i, ":hover") }, r = function() { return n(t.scrollbarX, ":focus") || n(t.scrollbarY, ":focus") }; t.event.bind(t.ownerDocument, "keydown", function(n) { if (!(n.isDefaultPrevented && n.isDefaultPrevented() || n.defaultPrevented) && (s() || r())) { var o = document.activeElement ? document.activeElement : t.ownerDocument.activeElement; if (o) { if ("IFRAME" === o.tagName) o = o.contentDocument.activeElement; else for (; o.shadowRoot;) o = o.shadowRoot.activeElement; if (p(o)) return } var a = 0, l = 0; switch (n.which) { case 37: a = n.metaKey ? -t.contentWidth : n.altKey ? -t.containerWidth : -30; break; case 38: l = n.metaKey ? t.contentHeight : n.altKey ? t.containerHeight : 30; break; case 39: a = n.metaKey ? t.contentWidth : n.altKey ? t.containerWidth : 30; break; case 40: l = n.metaKey ? -t.contentHeight : n.altKey ? -t.containerHeight : -30; break; case 32: l = n.shiftKey ? t.containerHeight : -t.containerHeight; break; case 33: l = t.containerHeight; break; case 34: l = -t.containerHeight; break; case 36: l = t.contentHeight; break; case 35: l = -t.contentHeight; break; default: return } t.settings.suppressScrollX && 0 !== a || t.settings.suppressScrollY && 0 !== l || (i.scrollTop -= l, i.scrollLeft += a, C(t), e(a, l) && n.preventDefault()) } }) }, P = function(e) { function i(t, i) { var n, s = Math.floor(o.scrollTop), r = 0 === o.scrollTop, a = s + o.offsetHeight === o.scrollHeight, l = 0 === o.scrollLeft, c = o.scrollLeft + o.offsetWidth === o.scrollWidth; return n = Math.abs(i) > Math.abs(t) ? r || a : l || c, !n || !e.settings.wheelPropagation } function n(t) { var e = t.deltaX, i = -1 * t.deltaY; return "undefined" != typeof e && "undefined" != typeof i || (e = -1 * t.wheelDeltaX / 6, i = t.wheelDeltaY / 6), t.deltaMode && 1 === t.deltaMode && (e *= 10, i *= 10), e !== e && i !== i && (e = 0, i = t.wheelDelta), t.shiftKey ? [-i, -e] : [e, i] } function s(e, i, n) { if (!S.isWebKit && o.querySelector("select:focus")) return !0; if (!o.contains(e)) return !1; for (var s = e; s && s !== o;) { if (s.classList.contains(y.element.consuming)) return !0; var r = t(s), a = [r.overflow, r.overflowX, r.overflowY].join(""); if (a.match(/(scroll|auto)/)) { var l = s.scrollHeight - s.clientHeight; if (l > 0 && !(0 === s.scrollTop && n > 0 || s.scrollTop === l && n < 0)) return !0; var c = s.scrollWidth - s.clientWidth; if (c > 0 && !(0 === s.scrollLeft && i < 0 || s.scrollLeft === c && i > 0)) return !0 } s = s.parentNode } return !1 } function r(t) { var r = n(t), a = r[0], l = r[1]; if (!s(t.target, a, l)) { var c = !1; e.settings.useBothWheelAxes ? e.scrollbarYActive && !e.scrollbarXActive ? (l ? o.scrollTop -= l * e.settings.wheelSpeed : o.scrollTop += a * e.settings.wheelSpeed, c = !0) : e.scrollbarXActive && !e.scrollbarYActive && (a ? o.scrollLeft += a * e.settings.wheelSpeed : o.scrollLeft -= l * e.settings.wheelSpeed, c = !0) : (o.scrollTop -= l * e.settings.wheelSpeed, o.scrollLeft += a * e.settings.wheelSpeed), C(e), c = c || i(a, l), c && !t.ctrlKey && (t.stopPropagation(), t.preventDefault()) } } var o = e.element; "undefined" != typeof window.onwheel ? e.event.bind(o, "wheel", r) : "undefined" != typeof window.onmousewheel && e.event.bind(o, "mousewheel", r) }, M = function(e) { function i(t, i) { var n = Math.floor(h.scrollTop), s = h.scrollLeft, r = Math.abs(t), o = Math.abs(i); if (o > r) { if (i < 0 && n === e.contentHeight - e.containerHeight || i > 0 && 0 === n) return 0 === window.scrollY && i > 0 && S.isChrome } else if (r > o && (t < 0 && s === e.contentWidth - e.containerWidth || t > 0 && 0 === s)) return !0; return !0 } function n(t, i) { h.scrollTop -= i, h.scrollLeft -= t, C(e) } function s(t) { return t.targetTouches ? t.targetTouches[0] : t } function r(t) { return (!t.pointerType || "pen" !== t.pointerType || 0 !== t.buttons) && (!(!t.targetTouches || 1 !== t.targetTouches.length) || !(!t.pointerType || "mouse" === t.pointerType || t.pointerType === t.MSPOINTER_TYPE_MOUSE)) } function o(t) { if (r(t)) { var e = s(t); u.pageX = e.pageX, u.pageY = e.pageY, p = (new Date).getTime(), null !== f && clearInterval(f) } } function a(e, i, n) { if (!h.contains(e)) return !1; for (var s = e; s && s !== h;) { if (s.classList.contains(y.element.consuming)) return !0; var r = t(s), o = [r.overflow, r.overflowX, r.overflowY].join(""); if (o.match(/(scroll|auto)/)) { var a = s.scrollHeight - s.clientHeight; if (a > 0 && !(0 === s.scrollTop && n > 0 || s.scrollTop === a && n < 0)) return !0; var l = s.scrollLeft - s.clientWidth; if (l > 0 && !(0 === s.scrollLeft && i < 0 || s.scrollLeft === l && i > 0)) return !0 } s = s.parentNode } return !1 } function l(t) { if (r(t)) { var e = s(t), o = { pageX: e.pageX, pageY: e.pageY }, l = o.pageX - u.pageX, c = o.pageY - u.pageY; if (a(t.target, l, c)) return; n(l, c), u = o; var h = (new Date).getTime(), f = h - p; f > 0 && (d.x = l / f, d.y = c / f, p = h), i(l, c) && t.preventDefault() } } function c() { e.settings.swipeEasing && (clearInterval(f), f = setInterval(function() { return e.isInitialized ? void clearInterval(f) : d.x || d.y ? Math.abs(d.x) < .01 && Math.abs(d.y) < .01 ? void clearInterval(f) : (n(30 * d.x, 30 * d.y), d.x *= .8, void(d.y *= .8)) : void clearInterval(f) }, 10)) } if (S.supportsTouch || S.supportsIePointer) { var h = e.element, u = {}, p = 0, d = {}, f = null; S.supportsTouch ? (e.event.bind(h, "touchstart", o), e.event.bind(h, "touchmove", l), e.event.bind(h, "touchend", c)) : S.supportsIePointer && (window.PointerEvent ? (e.event.bind(h, "pointerdown", o), e.event.bind(h, "pointermove", l), e.event.bind(h, "pointerup", c)) : window.MSPointerEvent && (e.event.bind(h, "MSPointerDown", o), e.event.bind(h, "MSPointerMove", l), e.event.bind(h, "MSPointerUp", c))) } }, $ = function() { return { handlers: ["click-rail", "drag-thumb", "keyboard", "wheel", "touch"], maxScrollbarLength: null, minScrollbarLength: null, scrollingThreshold: 1e3, scrollXMarginOffset: 0, scrollYMarginOffset: 0, suppressScrollX: !1, suppressScrollY: !1, swipeEasing: !0, useBothWheelAxes: !1, wheelPropagation: !0, wheelSpeed: 1 } }, k = { "click-rail": E, "drag-thumb": A, keyboard: L, wheel: P, touch: M }, W = function(n, s) { var r = this; if (void 0 === s && (s = {}), "string" == typeof n && (n = document.querySelector(n)), !n || !n.nodeName) throw new Error("no element is specified to initialize PerfectScrollbar"); this.element = n, n.classList.add(y.main), this.settings = $(); for (var o in s) r.settings[o] = s[o]; this.containerWidth = null, this.containerHeight = null, this.contentWidth = null, this.contentHeight = null; var a = function() { return n.classList.add(y.state.focus) }, l = function() { return n.classList.remove(y.state.focus) }; this.isRtl = "rtl" === t(n).direction, this.isNegativeScroll = function() { var t = n.scrollLeft, e = null; return n.scrollLeft = -1, e = n.scrollLeft < 0, n.scrollLeft = t, e }(), this.negativeScrollAdjustment = this.isNegativeScroll ? n.scrollWidth - n.clientWidth : 0, this.event = new T, this.ownerDocument = n.ownerDocument || document, this.scrollbarXRail = i(y.element.rail("x")), n.appendChild(this.scrollbarXRail), this.scrollbarX = i(y.element.thumb("x")), this.scrollbarXRail.appendChild(this.scrollbarX), this.scrollbarX.setAttribute("tabindex", 0), this.event.bind(this.scrollbarX, "focus", a), this.event.bind(this.scrollbarX, "blur", l), this.scrollbarXActive = null, this.scrollbarXWidth = null, this.scrollbarXLeft = null; var c = t(this.scrollbarXRail); this.scrollbarXBottom = parseInt(c.bottom, 10), isNaN(this.scrollbarXBottom) ? (this.isScrollbarXUsingBottom = !1, this.scrollbarXTop = u(c.top)) : this.isScrollbarXUsingBottom = !0, this.railBorderXWidth = u(c.borderLeftWidth) + u(c.borderRightWidth), e(this.scrollbarXRail, { display: "block" }), this.railXMarginWidth = u(c.marginLeft) + u(c.marginRight), e(this.scrollbarXRail, { display: "" }), this.railXWidth = null, this.railXRatio = null, this.scrollbarYRail = i(y.element.rail("y")), n.appendChild(this.scrollbarYRail), this.scrollbarY = i(y.element.thumb("y")), this.scrollbarYRail.appendChild(this.scrollbarY), this.scrollbarY.setAttribute("tabindex", 0), this.event.bind(this.scrollbarY, "focus", a), this.event.bind(this.scrollbarY, "blur", l), this.scrollbarYActive = null, this.scrollbarYHeight = null, this.scrollbarYTop = null; var h = t(this.scrollbarYRail); this.scrollbarYRight = parseInt(h.right, 10), isNaN(this.scrollbarYRight) ? (this.isScrollbarYUsingRight = !1, this.scrollbarYLeft = u(h.left)) : this.isScrollbarYUsingRight = !0, this.scrollbarYOuterWidth = this.isRtl ? d(this.scrollbarY) : null, this.railBorderYWidth = u(h.borderTopWidth) + u(h.borderBottomWidth), e(this.scrollbarYRail, { display: "block" }), this.railYMarginHeight = u(h.marginTop) + u(h.marginBottom), e(this.scrollbarYRail, { display: "" }), this.railYHeight = null, this.railYRatio = null, this.reach = { x: n.scrollLeft <= 0 ? "start" : n.scrollLeft >= this.contentWidth - this.containerWidth ? "end" : null, y: n.scrollTop <= 0 ? "start" : n.scrollTop >= this.contentHeight - this.containerHeight ? "end" : null }, this.isAlive = !0, this.settings.handlers.forEach(function(t) { return k[t](r) }), this.lastScrollTop = Math.floor(n.scrollTop), this.lastScrollLeft = n.scrollLeft, this.event.bind(this.element, "scroll", function(t) { return r.onScroll(t) }), C(this) }; return W.prototype.update = function() { this.isAlive && (this.negativeScrollAdjustment = this.isNegativeScroll ? this.element.scrollWidth - this.element.clientWidth : 0, e(this.scrollbarXRail, { display: "block" }), e(this.scrollbarYRail, { display: "block" }), this.railXMarginWidth = u(t(this.scrollbarXRail).marginLeft) + u(t(this.scrollbarXRail).marginRight), this.railYMarginHeight = u(t(this.scrollbarYRail).marginTop) + u(t(this.scrollbarYRail).marginBottom), e(this.scrollbarXRail, { display: "none" }), e(this.scrollbarYRail, { display: "none" }), C(this), x(this, "top", 0, !1, !0), x(this, "left", 0, !1, !0), e(this.scrollbarXRail, { display: "" }), e(this.scrollbarYRail, { display: "" })) }, W.prototype.onScroll = function(t) { this.isAlive && (C(this), x(this, "top", this.element.scrollTop - this.lastScrollTop), x(this, "left", this.element.scrollLeft - this.lastScrollLeft), this.lastScrollTop = Math.floor(this.element.scrollTop), this.lastScrollLeft = this.element.scrollLeft) }, W.prototype.destroy = function() { this.isAlive && (this.event.unbindAll(), s(this.scrollbarX), s(this.scrollbarY), s(this.scrollbarXRail), s(this.scrollbarYRail), this.removePsClasses(), this.element = null, this.scrollbarX = null, this.scrollbarY = null, this.scrollbarXRail = null, this.scrollbarYRail = null, this.isAlive = !1) }, W.prototype.removePsClasses = function() { this.element.className = this.element.className.split(" ").filter(function(t) { return !t.match(/^ps([-_].+|)$/) }).join(" ") }, W }), function(t) { if ("object" == typeof exports && "undefined" != typeof module) module.exports = t(); else if ("function" == typeof define && define.amd) define([], t); else { var e; e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : this, e.ProgressBar = t() } }(function() { var t; return function e(t, i, n) { function s(o, a) { if (!i[o]) { if (!t[o]) { var l = "function" == typeof require && require; if (!a && l) return l(o, !0); if (r) return r(o, !0); var c = new Error("Cannot find module '" + o + "'"); throw c.code = "MODULE_NOT_FOUND", c } var h = i[o] = { exports: {} }; t[o][0].call(h.exports, function(e) { var i = t[o][1][e]; return s(i ? i : e) }, h, h.exports, e, t, i, n) } return i[o].exports } for (var r = "function" == typeof require && require, o = 0; o < n.length; o++) s(n[o]); return s }({ 1: [function(e, i, n) { (function() { var e = this || Function("return this")(), s = function() { "use strict"; function s() {} function r(t, e) { var i; for (i in t) Object.hasOwnProperty.call(t, i) && e(i) } function o(t, e) { return r(e, function(i) { t[i] = e[i] }), t } function a(t, e) { r(e, function(i) { "undefined" == typeof t[i] && (t[i] = e[i]) }) } function l(t, e, i, n, s, r, o) { var a, l, h, u = t < r ? 0 : (t - r) / s; for (a in e) e.hasOwnProperty(a) && (l = o[a], h = "function" == typeof l ? l : f[l], e[a] = c(i[a], n[a], h, u)); return e } function c(t, e, i, n) { return t + (e - t) * i(n) } function h(t, e) { var i = d.prototype.filter, n = t._filterArgs; r(i, function(s) { "undefined" != typeof i[s][e] && i[s][e].apply(t, n) }) } function u(t, e, i, n, s, r, o, a, c, u, p) { b = e + i + n, T = Math.min(p || w(), b), x = T >= b, S = n - (b - T), t.isPlaying() && (x ? (c(o, t._attachment, S), t.stop(!0)) : (t._scheduleId = u(t._timeoutHandler, y), h(t, "beforeTween"), T < e + i ? l(1, s, r, o, 1, 1, a) : l(T, s, r, o, n, e + i, a), h(t, "afterTween"), c(s, t._attachment, S))) } function p(t, e) { var i = {}, n = typeof e; return "string" === n || "function" === n ? r(t, function(t) { i[t] = e }) : r(t, function(t) { i[t] || (i[t] = e[t] || m) }), i } function d(t, e) { this._currentState = t || {}, this._configured = !1, this._scheduleFunction = g, "undefined" != typeof e && this.setConfig(e) } var f, g, m = "linear", v = 500, y = 1e3 / 60, _ = Date.now ? Date.now : function() { return +new Date }, w = "undefined" != typeof SHIFTY_DEBUG_NOW ? SHIFTY_DEBUG_NOW : _; g = "undefined" != typeof window ? window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || window.mozCancelRequestAnimationFrame && window.mozRequestAnimationFrame || setTimeout : setTimeout; var b, T, x, S; return d.prototype.tween = function(t) { return this._isTweening ? this : (void 0 === t && this._configured || this.setConfig(t), this._timestamp = w(), this._start(this.get(), this._attachment), this.resume()) }, d.prototype.setConfig = function(t) { t = t || {}, this._configured = !0, this._attachment = t.attachment, this._pausedAtTime = null, this._scheduleId = null, this._delay = t.delay || 0, this._start = t.start || s, this._step = t.step || s, this._finish = t.finish || s, this._duration = t.duration || v, this._currentState = o({}, t.from || this.get()), this._originalState = this.get(), this._targetState = o({}, t.to || this.get()); var e = this; this._timeoutHandler = function() { u(e, e._timestamp, e._delay, e._duration, e._currentState, e._originalState, e._targetState, e._easing, e._step, e._scheduleFunction) }; var i = this._currentState, n = this._targetState; return a(n, i), this._easing = p(i, t.easing || m), this._filterArgs = [i, this._originalState, n, this._easing], h(this, "tweenCreated"), this }, d.prototype.get = function() { return o({}, this._currentState) }, d.prototype.set = function(t) { this._currentState = t }, d.prototype.pause = function() { return this._pausedAtTime = w(), this._isPaused = !0, this }, d.prototype.resume = function() { return this._isPaused && (this._timestamp += w() - this._pausedAtTime), this._isPaused = !1, this._isTweening = !0, this._timeoutHandler(), this }, d.prototype.seek = function(t) { t = Math.max(t, 0); var e = w(); return this._timestamp + t === 0 ? this : (this._timestamp = e - t, this.isPlaying() || (this._isTweening = !0, this._isPaused = !1, u(this, this._timestamp, this._delay, this._duration, this._currentState, this._originalState, this._targetState, this._easing, this._step, this._scheduleFunction, e), this.pause()), this) }, d.prototype.stop = function(t) { return this._isTweening = !1, this._isPaused = !1, this._timeoutHandler = s, (e.cancelAnimationFrame || e.webkitCancelAnimationFrame || e.oCancelAnimationFrame || e.msCancelAnimationFrame || e.mozCancelRequestAnimationFrame || e.clearTimeout)(this._scheduleId), t && (h(this, "beforeTween"), l(1, this._currentState, this._originalState, this._targetState, 1, 0, this._easing), h(this, "afterTween"), h(this, "afterTweenEnd"), this._finish.call(this, this._currentState, this._attachment)), this }, d.prototype.isPlaying = function() { return this._isTweening && !this._isPaused }, d.prototype.setScheduleFunction = function(t) { this._scheduleFunction = t }, d.prototype.dispose = function() { var t; for (t in this) this.hasOwnProperty(t) && delete this[t] }, d.prototype.filter = {}, d.prototype.formula = { linear: function(t) { return t } }, f = d.prototype.formula, o(d, { now: w, each: r, tweenProps: l, tweenProp: c, applyFilter: h, shallowCopy: o, defaults: a, composeEasingObject: p }), "function" == typeof SHIFTY_DEBUG_NOW && (e.timeoutHandler = u), "object" == typeof n ? i.exports = d : "function" == typeof t && t.amd ? t(function() { return d }) : "undefined" == typeof e.Tweenable && (e.Tweenable = d), d }(); ! function() { s.shallowCopy(s.prototype.formula, { easeInQuad: function(t) { return Math.pow(t, 2) }, easeOutQuad: function(t) { return -(Math.pow(t - 1, 2) - 1) }, easeInOutQuad: function(t) { return (t /= .5) < 1 ? .5 * Math.pow(t, 2) : -.5 * ((t -= 2) * t - 2) }, easeInCubic: function(t) { return Math.pow(t, 3) }, easeOutCubic: function(t) { return Math.pow(t - 1, 3) + 1 }, easeInOutCubic: function(t) { return (t /= .5) < 1 ? .5 * Math.pow(t, 3) : .5 * (Math.pow(t - 2, 3) + 2) }, easeInQuart: function(t) { return Math.pow(t, 4) }, easeOutQuart: function(t) { return -(Math.pow(t - 1, 4) - 1) }, easeInOutQuart: function(t) { return (t /= .5) < 1 ? .5 * Math.pow(t, 4) : -.5 * ((t -= 2) * Math.pow(t, 3) - 2) }, easeInQuint: function(t) { return Math.pow(t, 5) }, easeOutQuint: function(t) { return Math.pow(t - 1, 5) + 1 }, easeInOutQuint: function(t) { return (t /= .5) < 1 ? .5 * Math.pow(t, 5) : .5 * (Math.pow(t - 2, 5) + 2) }, easeInSine: function(t) { return -Math.cos(t * (Math.PI / 2)) + 1 }, easeOutSine: function(t) { return Math.sin(t * (Math.PI / 2)) }, easeInOutSine: function(t) { return -.5 * (Math.cos(Math.PI * t) - 1) }, easeInExpo: function(t) { return 0 === t ? 0 : Math.pow(2, 10 * (t - 1)) }, easeOutExpo: function(t) { return 1 === t ? 1 : -Math.pow(2, -10 * t) + 1 }, easeInOutExpo: function(t) { return 0 === t ? 0 : 1 === t ? 1 : (t /= .5) < 1 ? .5 * Math.pow(2, 10 * (t - 1)) : .5 * (-Math.pow(2, -10 * --t) + 2) }, easeInCirc: function(t) { return -(Math.sqrt(1 - t * t) - 1) }, easeOutCirc: function(t) { return Math.sqrt(1 - Math.pow(t - 1, 2)) }, easeInOutCirc: function(t) { return (t /= .5) < 1 ? -.5 * (Math.sqrt(1 - t * t) - 1) : .5 * (Math.sqrt(1 - (t -= 2) * t) + 1) }, easeOutBounce: function(t) { return t < 1 / 2.75 ? 7.5625 * t * t : t < 2 / 2.75 ? 7.5625 * (t -= 1.5 / 2.75) * t + .75 : t < 2.5 / 2.75 ? 7.5625 * (t -= 2.25 / 2.75) * t + .9375 : 7.5625 * (t -= 2.625 / 2.75) * t + .984375 }, easeInBack: function(t) { var e = 1.70158; return t * t * ((e + 1) * t - e) }, easeOutBack: function(t) { var e = 1.70158; return (t -= 1) * t * ((e + 1) * t + e) + 1 }, easeInOutBack: function(t) { var e = 1.70158; return (t /= .5) < 1 ? .5 * (t * t * (((e *= 1.525) + 1) * t - e)) : .5 * ((t -= 2) * t * (((e *= 1.525) + 1) * t + e) + 2) }, elastic: function(t) { return -1 * Math.pow(4, -8 * t) * Math.sin((6 * t - 1) * (2 * Math.PI) / 2) + 1 }, swingFromTo: function(t) { var e = 1.70158; return (t /= .5) < 1 ? .5 * (t * t * (((e *= 1.525) + 1) * t - e)) : .5 * ((t -= 2) * t * (((e *= 1.525) + 1) * t + e) + 2) }, swingFrom: function(t) { var e = 1.70158; return t * t * ((e + 1) * t - e) }, swingTo: function(t) { var e = 1.70158; return (t -= 1) * t * ((e + 1) * t + e) + 1 }, bounce: function(t) { return t < 1 / 2.75 ? 7.5625 * t * t : t < 2 / 2.75 ? 7.5625 * (t -= 1.5 / 2.75) * t + .75 : t < 2.5 / 2.75 ? 7.5625 * (t -= 2.25 / 2.75) * t + .9375 : 7.5625 * (t -= 2.625 / 2.75) * t + .984375 }, bouncePast: function(t) { return t < 1 / 2.75 ? 7.5625 * t * t : t < 2 / 2.75 ? 2 - (7.5625 * (t -= 1.5 / 2.75) * t + .75) : t < 2.5 / 2.75 ? 2 - (7.5625 * (t -= 2.25 / 2.75) * t + .9375) : 2 - (7.5625 * (t -= 2.625 / 2.75) * t + .984375) }, easeFromTo: function(t) { return (t /= .5) < 1 ? .5 * Math.pow(t, 4) : -.5 * ((t -= 2) * Math.pow(t, 3) - 2) }, easeFrom: function(t) { return Math.pow(t, 4) }, easeTo: function(t) { return Math.pow(t, .25) } }) }(), function() { function t(t, e, i, n, s, r) { function o(t) { return ((d * t + f) * t + g) * t } function a(t) { return ((m * t + v) * t + y) * t } function l(t) { return (3 * d * t + 2 * f) * t + g } function c(t) { return 1 / (200 * t) } function h(t, e) { return a(p(t, e)) } function u(t) { return t >= 0 ? t : 0 - t } function p(t, e) { var i, n, s, r, a, c; for (s = t, c = 0; c < 8; c++) { if (r = o(s) - t, u(r) < e) return s; if (a = l(s), u(a) < 1e-6) break; s -= r / a } if (i = 0, n = 1, s = t, s < i) return i; if (s > n) return n; for (; i < n;) { if (r = o(s), u(r - t) < e) return s; t > r ? i = s : n = s, s = .5 * (n - i) + i } return s } var d = 0, f = 0, g = 0, m = 0, v = 0, y = 0; return g = 3 * e, f = 3 * (n - e) - g, d = 1 - g - f, y = 3 * i, v = 3 * (s - i) - y, m = 1 - y - v, h(t, c(r)) } function e(e, i, n, s) { return function(r) { return t(r, e, i, n, s, 1) } } s.setBezierFunction = function(t, i, n, r, o) { var a = e(i, n, r, o); return a.displayName = t, a.x1 = i, a.y1 = n, a.x2 = r, a.y2 = o, s.prototype.formula[t] = a }, s.unsetBezierFunction = function(t) { delete s.prototype.formula[t] } }(), function() { function t(t, e, i, n, r, o) { return s.tweenProps(n, e, t, i, 1, o, r) } var e = new s; e._filterArgs = [], s.interpolate = function(i, n, r, o, a) { var l = s.shallowCopy({}, i), c = a || 0, h = s.composeEasingObject(i, o || "linear"); e.set({}); var u = e._filterArgs; u.length = 0, u[0] = l, u[1] = i, u[2] = n, u[3] = h, s.applyFilter(e, "tweenCreated"), s.applyFilter(e, "beforeTween"); var p = t(i, l, n, r, h, c); return s.applyFilter(e, "afterTween"), p } }(), function(t) { function e(t, e) { var i, n = [], s = t.length; for (i = 0; i < s; i++) n.push("_" + e + "_" + i); return n } function i(t) { var e = t.match(b); return e ? (1 === e.length || t.charAt(0).match(w)) && e.unshift("") : e = ["", ""], e.join(E) } function n(e) { t.each(e, function(t) { var i = e[t]; "string" == typeof i && i.match(C) && (e[t] = s(i)) }) } function s(t) { return l(C, t, r) } function r(t) { var e = o(t); return "rgb(" + e[0] + "," + e[1] + "," + e[2] + ")" } function o(t) { return t = t.replace(/#/, ""), 3 === t.length && (t = t.split(""), t = t[0] + t[0] + t[1] + t[1] + t[2] + t[2]), A[0] = a(t.substr(0, 2)), A[1] = a(t.substr(2, 2)), A[2] = a(t.substr(4, 2)), A } function a(t) { return parseInt(t, 16) } function l(t, e, i) { var n = e.match(t), s = e.replace(t, E); if (n) for (var r, o = n.length, a = 0; a < o; a++) r = n.shift(), s = s.replace(E, i(r)); return s } function c(t) { return l(x, t, h) } function h(t) { for (var e = t.match(T), i = e.length, n = t.match(S)[0], s = 0; s < i; s++) n += parseInt(e[s], 10) + ","; return n = n.slice(0, -1) + ")" } function u(n) { var s = {}; return t.each(n, function(t) { var r = n[t]; if ("string" == typeof r) { var o = v(r); s[t] = { formatString: i(r), chunkNames: e(o, t) } } }), s } function p(e, i) { t.each(i, function(t) { for (var n = e[t], s = v(n), r = s.length, o = 0; o < r; o++) e[i[t].chunkNames[o]] = +s[o]; delete e[t] }) } function d(e, i) { t.each(i, function(t) { var n = e[t], s = f(e, i[t].chunkNames), r = g(s, i[t].chunkNames); n = m(i[t].formatString, r), e[t] = c(n) }) } function f(t, e) { for (var i, n = {}, s = e.length, r = 0; r < s; r++) i = e[r], n[i] = t[i], delete t[i]; return n } function g(t, e) { L.length = 0; for (var i = e.length, n = 0; n < i; n++) L.push(t[e[n]]); return L } function m(t, e) { for (var i = t, n = e.length, s = 0; s < n; s++) i = i.replace(E, +e[s].toFixed(4)); return i } function v(t) { return t.match(T) } function y(e, i) { t.each(i, function(t) { var n, s = i[t], r = s.chunkNames, o = r.length, a = e[t]; if ("string" == typeof a) { var l = a.split(" "), c = l[l.length - 1]; for (n = 0; n < o; n++) e[r[n]] = l[n] || c } else for (n = 0; n < o; n++) e[r[n]] = a; delete e[t] }) } function _(e, i) { t.each(i, function(t) { var n = i[t], s = n.chunkNames, r = s.length, o = e[s[0]], a = typeof o; if ("string" === a) { for (var l = "", c = 0; c < r; c++) l += " " + e[s[c]], delete e[s[c]]; e[t] = l.substr(1) } else e[t] = o }) } var w = /(\d|\-|\.)/, b = /([^\-0-9\.]+)/g, T = /[0-9.\-]+/g, x = new RegExp("rgb\\(" + T.source + /,\s*/.source + T.source + /,\s*/.source + T.source + "\\)", "g"), S = /^.*\(/, C = /#([0-9]|[a-f]){3,6}/gi, E = "VAL", A = [], L = []; t.prototype.filter.token = { tweenCreated: function(t, e, i, s) { n(t), n(e), n(i), this._tokenData = u(t) }, beforeTween: function(t, e, i, n) { y(n, this._tokenData), p(t, this._tokenData), p(e, this._tokenData), p(i, this._tokenData) }, afterTween: function(t, e, i, n) { d(t, this._tokenData), d(e, this._tokenData), d(i, this._tokenData), _(n, this._tokenData) } } }(s) }).call(null) }, {}], 2: [function(t, e, i) { var n = t("./shape"), s = t("./utils"), r = function(t, e) { this._pathTemplate = "M 50,50 m 0,-{radius} a {radius},{radius} 0 1 1 0,{2radius} a {radius},{radius} 0 1 1 0,-{2radius}", this.containerAspectRatio = 1, n.apply(this, arguments) }; r.prototype = new n, r.prototype.constructor = r, r.prototype._pathString = function(t) { var e = t.strokeWidth; t.trailWidth && t.trailWidth > t.strokeWidth && (e = t.trailWidth); var i = 50 - e / 2; return s.render(this._pathTemplate, { radius: i, "2radius": 2 * i }) }, r.prototype._trailString = function(t) { return this._pathString(t) }, e.exports = r }, { "./shape": 7, "./utils": 9 }], 3: [function(t, e, i) { var n = t("./shape"), s = t("./utils"), r = function(t, e) { this._pathTemplate = "M 0,{center} L 100,{center}", n.apply(this, arguments) }; r.prototype = new n, r.prototype.constructor = r, r.prototype._initializeSvg = function(t, e) { t.setAttribute("viewBox", "0 0 100 " + e.strokeWidth), t.setAttribute("preserveAspectRatio", "none") }, r.prototype._pathString = function(t) { return s.render(this._pathTemplate, { center: t.strokeWidth / 2 }) }, r.prototype._trailString = function(t) { return this._pathString(t) }, e.exports = r }, { "./shape": 7, "./utils": 9 }], 4: [function(t, e, i) { e.exports = { Line: t("./line"), Circle: t("./circle"), SemiCircle: t("./semicircle"), Square: t("./square"), Path: t("./path"), Shape: t("./shape"), utils: t("./utils") } }, { "./circle": 2, "./line": 3, "./path": 5, "./semicircle": 6, "./shape": 7, "./square": 8, "./utils": 9 }], 5: [function(t, e, i) { var n = t("shifty"), s = t("./utils"), r = { easeIn: "easeInCubic", easeOut: "easeOutCubic", easeInOut: "easeInOutCubic" }, o = function a(t, e) { if (!(this instanceof a)) throw new Error("Constructor was called without new keyword"); e = s.extend({ duration: 800, easing: "linear", from: {}, to: {}, step: function() {} }, e); var i; i = s.isString(t) ? document.querySelector(t) : t, this.path = i, this._opts = e, this._tweenable = null; var n = this.path.getTotalLength(); this.path.style.strokeDasharray = n + " " + n, this.set(0) }; o.prototype.value = function() { var t = this._getComputedDashOffset(), e = this.path.getTotalLength(), i = 1 - t / e; return parseFloat(i.toFixed(6), 10) }, o.prototype.set = function(t) { this.stop(), this.path.style.strokeDashoffset = this._progressToOffset(t); var e = this._opts.step; if (s.isFunction(e)) { var i = this._easing(this._opts.easing), n = this._calculateTo(t, i), r = this._opts.shape || this; e(n, r, this._opts.attachment) } }, o.prototype.stop = function() { this._stopTween(), this.path.style.strokeDashoffset = this._getComputedDashOffset() }, o.prototype.animate = function(t, e, i) { e = e || {}, s.isFunction(e) && (i = e, e = {}); var r = s.extend({}, e), o = s.extend({}, this._opts); e = s.extend(o, e); var a = this._easing(e.easing), l = this._resolveFromAndTo(t, a, r); this.stop(), this.path.getBoundingClientRect(); var c = this._getComputedDashOffset(), h = this._progressToOffset(t), u = this; this._tweenable = new n, this._tweenable.tween({ from: s.extend({ offset: c }, l.from), to: s.extend({ offset: h }, l.to), duration: e.duration, easing: a, step: function(t) { u.path.style.strokeDashoffset = t.offset; var i = e.shape || u; e.step(t, i, e.attachment) }, finish: function(t) { s.isFunction(i) && i() } }) }, o.prototype._getComputedDashOffset = function() { var t = window.getComputedStyle(this.path, null); return parseFloat(t.getPropertyValue("stroke-dashoffset"), 10) }, o.prototype._progressToOffset = function(t) { var e = this.path.getTotalLength(); return e - t * e }, o.prototype._resolveFromAndTo = function(t, e, i) { return i.from && i.to ? { from: i.from, to: i.to } : { from: this._calculateFrom(e), to: this._calculateTo(t, e) } }, o.prototype._calculateFrom = function(t) { return n.interpolate(this._opts.from, this._opts.to, this.value(), t) }, o.prototype._calculateTo = function(t, e) { return n.interpolate(this._opts.from, this._opts.to, t, e) }, o.prototype._stopTween = function() { null !== this._tweenable && (this._tweenable.stop(), this._tweenable = null) }, o.prototype._easing = function(t) { return r.hasOwnProperty(t) ? r[t] : t }, e.exports = o }, { "./utils": 9, shifty: 1 }], 6: [function(t, e, i) { var n = t("./shape"), s = t("./circle"), r = t("./utils"), o = function(t, e) { this._pathTemplate = "M 50,50 m -{radius},0 a {radius},{radius} 0 1 1 {2radius},0", this.containerAspectRatio = 2, n.apply(this, arguments) }; o.prototype = new n, o.prototype.constructor = o, o.prototype._initializeSvg = function(t, e) { t.setAttribute("viewBox", "0 0 100 50") }, o.prototype._initializeTextContainer = function(t, e, i) { t.text.style && (i.style.top = "auto", i.style.bottom = "0", t.text.alignToBottom ? r.setStyle(i, "transform", "translate(-50%, 0)") : r.setStyle(i, "transform", "translate(-50%, 50%)")) }, o.prototype._pathString = s.prototype._pathString, o.prototype._trailString = s.prototype._trailString, e.exports = o }, { "./circle": 2, "./shape": 7, "./utils": 9 }], 7: [function(t, e, i) { var n = t("./path"), s = t("./utils"), r = "Object is destroyed", o = function a(t, e) { if (!(this instanceof a)) throw new Error("Constructor was called without new keyword"); if (0 !== arguments.length) { this._opts = s.extend({ color: "#555", strokeWidth: 1, trailColor: null, trailWidth: null, fill: null, text: { style: { color: null, position: "absolute", left: "50%", top: "50%", padding: 0, margin: 0, transform: { prefix: !0, value: "translate(-50%, -50%)" } }, autoStyleContainer: !0, alignToBottom: !0, value: null, className: "progressbar-text" }, svgStyle: { display: "block", width: "100%" }, warnings: !1 }, e, !0), s.isObject(e) && void 0 !== e.svgStyle && (this._opts.svgStyle = e.svgStyle), s.isObject(e) && s.isObject(e.text) && void 0 !== e.text.style && (this._opts.text.style = e.text.style); var i, r = this._createSvgView(this._opts); if (i = s.isString(t) ? document.querySelector(t) : t, !i) throw new Error("Container does not exist: " + t); this._container = i, this._container.appendChild(r.svg), this._opts.warnings && this._warnContainerAspectRatio(this._container), this._opts.svgStyle && s.setStyles(r.svg, this._opts.svgStyle), this.svg = r.svg, this.path = r.path, this.trail = r.trail, this.text = null; var o = s.extend({ attachment: void 0, shape: this }, this._opts); this._progressPath = new n(r.path, o), s.isObject(this._opts.text) && null !== this._opts.text.value && this.setText(this._opts.text.value) } }; o.prototype.animate = function(t, e, i) { if (null === this._progressPath) throw new Error(r); this._progressPath.animate(t, e, i) }, o.prototype.stop = function() { if (null === this._progressPath) throw new Error(r); void 0 !== this._progressPath && this._progressPath.stop() }, o.prototype.destroy = function() { if (null === this._progressPath) throw new Error(r); this.stop(), this.svg.parentNode.removeChild(this.svg), this.svg = null, this.path = null, this.trail = null, this._progressPath = null, null !== this.text && (this.text.parentNode.removeChild(this.text), this.text = null) }, o.prototype.set = function(t) { if (null === this._progressPath) throw new Error(r); this._progressPath.set(t) }, o.prototype.value = function() { if (null === this._progressPath) throw new Error(r); return void 0 === this._progressPath ? 0 : this._progressPath.value() }, o.prototype.setText = function(t) { if (null === this._progressPath) throw new Error(r); null === this.text && (this.text = this._createTextContainer(this._opts, this._container), this._container.appendChild(this.text)), s.isObject(t) ? (s.removeChildren(this.text), this.text.appendChild(t)) : this.text.innerHTML = t }, o.prototype._createSvgView = function(t) { var e = document.createElementNS("http://www.w3.org/2000/svg", "svg"); this._initializeSvg(e, t); var i = null; (t.trailColor || t.trailWidth) && (i = this._createTrail(t), e.appendChild(i)); var n = this._createPath(t); return e.appendChild(n), { svg: e, path: n, trail: i } }, o.prototype._initializeSvg = function(t, e) { t.setAttribute("viewBox", "0 0 100 100") }, o.prototype._createPath = function(t) { var e = this._pathString(t); return this._createPathElement(e, t) }, o.prototype._createTrail = function(t) { var e = this._trailString(t), i = s.extend({}, t); return i.trailColor || (i.trailColor = "#eee"), i.trailWidth || (i.trailWidth = i.strokeWidth), i.color = i.trailColor, i.strokeWidth = i.trailWidth, i.fill = null, this._createPathElement(e, i) }, o.prototype._createPathElement = function(t, e) { var i = document.createElementNS("http://www.w3.org/2000/svg", "path"); return i.setAttribute("d", t), i.setAttribute("stroke", e.color), i.setAttribute("stroke-width", e.strokeWidth), e.fill ? i.setAttribute("fill", e.fill) : i.setAttribute("fill-opacity", "0"), i }, o.prototype._createTextContainer = function(t, e) { var i = document.createElement("div"); i.className = t.text.className; var n = t.text.style; return n && (t.text.autoStyleContainer && (e.style.position = "relative"), s.setStyles(i, n), n.color || (i.style.color = t.color)), this._initializeTextContainer(t, e, i), i }, o.prototype._initializeTextContainer = function(t, e, i) {}, o.prototype._pathString = function(t) { throw new Error("Override this function for each progress bar") }, o.prototype._trailString = function(t) { throw new Error("Override this function for each progress bar") }, o.prototype._warnContainerAspectRatio = function(t) { if (this.containerAspectRatio) { var e = window.getComputedStyle(t, null), i = parseFloat(e.getPropertyValue("width"), 10), n = parseFloat(e.getPropertyValue("height"), 10); s.floatEquals(this.containerAspectRatio, i / n) || (console.warn("Incorrect aspect ratio of container", "#" + t.id, "detected:", e.getPropertyValue("width") + "(width)", "/", e.getPropertyValue("height") + "(height)", "=", i / n), console.warn("Aspect ratio of should be", this.containerAspectRatio)) } }, e.exports = o }, { "./path": 5, "./utils": 9 }], 8: [function(t, e, i) { var n = t("./shape"), s = t("./utils"), r = function(t, e) { this._pathTemplate = "M 0,{halfOfStrokeWidth} L {width},{halfOfStrokeWidth} L {width},{width} L {halfOfStrokeWidth},{width} L {halfOfStrokeWidth},{strokeWidth}", this._trailTemplate = "M {startMargin},{halfOfStrokeWidth} L {width},{halfOfStrokeWidth} L {width},{width} L {halfOfStrokeWidth},{width} L {halfOfStrokeWidth},{halfOfStrokeWidth}", n.apply(this, arguments) }; r.prototype = new n, r.prototype.constructor = r, r.prototype._pathString = function(t) { var e = 100 - t.strokeWidth / 2; return s.render(this._pathTemplate, { width: e, strokeWidth: t.strokeWidth, halfOfStrokeWidth: t.strokeWidth / 2 }) }, r.prototype._trailString = function(t) { var e = 100 - t.strokeWidth / 2; return s.render(this._trailTemplate, { width: e, strokeWidth: t.strokeWidth, halfOfStrokeWidth: t.strokeWidth / 2, startMargin: t.strokeWidth / 2 - t.trailWidth / 2 }) }, e.exports = r }, { "./shape": 7, "./utils": 9 }], 9: [function(t, e, i) { function n(t, e, i) { t = t || {}, e = e || {}, i = i || !1; for (var s in e) if (e.hasOwnProperty(s)) { var r = t[s], o = e[s]; i && u(r) && u(o) ? t[s] = n(r, o, i) : t[s] = o } return t } function s(t, e) { var i = t; for (var n in e) if (e.hasOwnProperty(n)) { var s = e[n], r = "\\{" + n + "\\}", o = new RegExp(r, "g"); i = i.replace(o, s) } return i } function r(t, e, i) { for (var n = t.style, s = 0; s < g.length; ++s) { var r = g[s]; n[r + a(e)] = i } n[e] = i } function o(t, e) { p(e, function(e, i) { null !== e && void 0 !== e && (u(e) && e.prefix === !0 ? r(t, i, e.value) : t.style[i] = e) }) } function a(t) { return t.charAt(0).toUpperCase() + t.slice(1) } function l(t) { return "string" == typeof t || t instanceof String } function c(t) { return "function" == typeof t } function h(t) { return "[object Array]" === Object.prototype.toString.call(t) } function u(t) { if (h(t)) return !1; var e = typeof t; return "object" === e && !!t } function p(t, e) { for (var i in t) if (t.hasOwnProperty(i)) { var n = t[i]; e(n, i) } } function d(t, e) { return Math.abs(t - e) < m } function f(t) { for (; t.firstChild;) t.removeChild(t.firstChild) } var g = "Webkit Moz O ms".split(" "), m = .001; e.exports = { extend: n, render: s, setStyle: r, setStyles: o, capitalize: a, isString: l, isFunction: c, isObject: u, forEachObject: p, floatEquals: d, removeChildren: f } }, {}] }, {}, [4])(4) }); var be = be || {}; be.counter = new function() { function t() { $(".counter--animated").length && $(".counter--animated").each(function() { var t = $(this); t.visible(!0) && !t.hasClass("counter--loaded") && (t.addClass("counter--loaded"), $(this).find(".counter__value").each(function() { $(this).prop("Counter", 0).animate({ Counter: $(this).text() }, { duration: 1500, easing: "swing", step: function(t) { $(this).text(Math.ceil(t)) }, complete: function() { $(this).parent().find(".counter__text").addClass("counter__text--loaded"), $(this).parent().find(".counter__description").addClass("counter__description--loaded") } }) })) }) } this.init = function() { t() } }; var be = be || {}; be.gridSection = new function() { function t(t) { return Array.prototype.slice.call(t) } this.vCenter = function() { const e = t(document.querySelectorAll(".module-text.vertical-align")); e.forEach(function(t) { const e = t.closest(".row"); null !== e && e.classList.add("grid-section__flex-row--vertical") }) }, this.init = function() { be.gridSection.vCenter() } }; var be = be || {}; be.header = new function() { function t(t) { return Array.prototype.slice.call(t) } this.init = function() { const e = document.querySelector(".header"); if (null !== e) { const i = document.querySelector("body"), n = e.querySelector(".nav-burger"), s = document.getElementById("nav-main--search-trigger"), r = document.querySelector(".main-nav__search-input"), o = t(e.querySelectorAll(".main-nav__list-item--parent")), a = (e.querySelector(".main-nav__list"), document.querySelector(".search-result--overlay")), l = a.querySelector(".search-result__toggle-btn"); n.addEventListener("click", function() { i.classList.toggle("body--overlay-opened"), s.checked === !0 && (s.checked = !1), null !== a && a.classList.remove("active"), o.forEach(function(t) { t.classList.remove("main-nav__list-item--parent-active") }) }), l.addEventListener("click", function(t) { a.classList.remove("active"), r.value = "" }), e.addEventListener("click", function() { a.classList.remove("active") }) } } }; var be = be || {}; be.infoWheel = new function() { function t(t) { return Array.prototype.slice.call(t) } this.actions = function() { function e() { r = a, o = "info-wheel--choice-" + r, s.classList.remove(o) } function i() { a > 1 ? (e(), a--, clickThis(document.querySelector("#info-wheel__svg").querySelectorAll(".segment")[a - 1]), s.classList.add("info-wheel--choice-" + a)) : 1 == a && (e(), a = 6, clickThis(document.querySelector("#info-wheel__svg").querySelectorAll(".segment")[5]), s.classList.add("info-wheel--choice-" + a)) } function n() { if (a < m) { e(), a++; s.querySelector(".circle-segment-" + a); clickThis(document.querySelector("#info-wheel__svg").querySelectorAll(".segment")[a - 1]), s.classList.add("info-wheel--choice-" + a) } else if (a == m) { e(), a = 1; s.querySelector(".circle-segment-1"); clickThis(document.querySelector("#info-wheel__svg").querySelectorAll(".segment")[0]), s.classList.add("info-wheel--choice-" + a) } } var s = document.querySelector(".info-wheel"); if (null !== s) { var r, o, a = 1, l = s.querySelector(".circle-segment-1"), c = (l.getAttribute("transform"), s.querySelector(".circle-segment-2")), h = (c.getAttribute("transform"), s.querySelector(".circle-segment-3")), u = (h.getAttribute("transform"), s.querySelector(".circle-segment-4")), p = (u.getAttribute("transform"), s.querySelector(".circle-segment-5")), d = (p.getAttribute("transform"), s.querySelector(".circle-segment-6")), f = (d.getAttribute("transform"), s.querySelector(".circle-highlight"), s.querySelector(".info-wheel__prev-btn")), g = s.querySelector(".info-wheel__next-btn"), m = (t(s.querySelectorAll(".info-wheel__in-circle")), 6); l.addEventListener("click", function(t) { e(), a = 1, s.classList.add("info-wheel--choice-" + a) }), c.addEventListener("click", function(t) { e(), a = 2, s.classList.add("info-wheel--choice-" + a) }), h.addEventListener("click", function(t) { e(), a = 3, s.classList.add("info-wheel--choice-" + a) }), u.addEventListener("click", function(t) { e(), a = 4, s.classList.add("info-wheel--choice-" + a) }), p.addEventListener("click", function(t) { e(), a = 5, s.classList.add("info-wheel--choice-" + a) }), d.addEventListener("click", function(t) { e(), a = 6, s.classList.add("info-wheel--choice-" + a) }), f.addEventListener("click", function(t) { i() }), g.addEventListener("click", function(t) { n() }); var v = new Hammer(s); v && (v.on("swipeleft", function(t) { n() }), v.on("swiperight", function(t) { i() })) } }, this.init = function() { be.infoWheel.actions() } }; var be = be || {}; be.isotopeContactWrapper = new function() { function t(t) { t.addEventListener("click", function(e) { if (matchesSelector(e.target, "button")) { var n = document.querySelector(".module-contacts-nav"), s = document.querySelector(".module-contacts-nav__headline"), r = s.getAttribute("data-text"), o = e.target, a = o.getAttribute("data-category"), l = o.getAttribute("data-bg"), c = n.getAttribute("data-bg"); if (e.target.classList.contains("active")) e.target.classList.remove("active"), i.arrange({ filter: "*" }), n.style.backgroundImage = "url('" + c + "')", s.classList.remove("loaded"), s.textContent = r, setTimeout(function() { s.classList.add("loaded") }, 300); else { var h = t.querySelector(".active"); h && h.classList.remove("active"), e.target.classList.add("active"), n.style.backgroundImage = "url('" + l + "')", s.classList.remove("loaded"), s.textContent = a, setTimeout(function() { s.classList.add("loaded") }, 300) } } }) } var e = document.querySelector(".module-contacts__grid"); if (null !== e) { var i = new Isotope(e, { itemSelector: ".grid-item", percentPosition: !0, masonry: { columnWidth: ".grid-sizer" } }), n = document.querySelector(".filters-button-group"); n.addEventListener("click", function(t) { if (matchesSelector(t.target, "button")) { var e = t.target.getAttribute("data-filter"); e = o[e] || e, i.arrange({ filter: e }) } }); for (var s = ["Executive management team", "Capital & Strategy", "Legal & Compliance", "Group Support", "Communications & Human Capital", "Product & Sales", "Sustainable business & public affairs", "Markets & investors", "Project Development & Project Finance", "Technology & Solutions", "Power Production & Asset Management"], r = function(t, e) { var i = t.classList.contains(s[e].split(" ")[0].toLowerCase()); return i }, o = { executivegroup: function(t) { return r(t, 0) }, capitalgroup: function(t) { return r(t, 1) }, legalgroup: function(t) { return r(t, 2) }, groupgroup: function(t) { return r(t, 3) }, communicationsgroup: function(t) { return r(t, 4) }, productgroup: function(t) { return r(t, 5) }, sustainablegroup: function(t) { return r(t, 6) }, marketsgroup: function(t) { return r(t, 7) }, projectgroup: function(t) { return r(t, 8) }, technologygroup: function(t) { return r(t, 9) }, powergroup: function(t) { return r(t, 10) } }, a = document.querySelectorAll(".filters-button-group"), l = 0, c = a.length; l < c; l++) { var h = a[l]; t(h) } } this.init = function() { try { null !== i && i.arrange({ filter: "*" }) } catch (t) {} } }; var be = be || {}; be.map = new function() { const t = document.querySelector(".module-map-contact"), e = document.getElementById("map"), i = window.matchMedia("(min-width: 768px)"); this.styles = function() { var t = [{ elementType: "geometry", stylers: [{ color: "#f5f5f5" }] }, { elementType: "labels", stylers: [{ visibility: "off" }] }, { elementType: "labels.icon", stylers: [{ visibility: "off" }] }, { elementType: "labels.text.fill", stylers: [{ color: "#616161" }] }, { elementType: "labels.text.stroke", stylers: [{ color: "#f5f5f5" }] }, { featureType: "administrative", elementType: "geometry", stylers: [{ visibility: "off" }] }, { featureType: "administrative.land_parcel", stylers: [{ visibility: "off" }] }, { featureType: "administrative.land_parcel", elementType: "labels.text.fill", stylers: [{ color: "#bdbdbd" }] }, { featureType: "administrative.neighborhood", stylers: [{ visibility: "off" }] }, { featureType: "poi", stylers: [{ visibility: "off" }] }, { featureType: "poi", elementType: "geometry", stylers: [{ color: "#eeeeee" }] }, { featureType: "poi", elementType: "labels.text.fill", stylers: [{ color: "#757575" }] }, { featureType: "poi.park", elementType: "geometry", stylers: [{ color: "#e5e5e5" }] }, { featureType: "poi.park", elementType: "labels.text.fill", stylers: [{ color: "#9e9e9e" }] }, { featureType: "road", stylers: [{ visibility: "off" }] }, { featureType: "road", elementType: "geometry", stylers: [{ color: "#ffffff" }] }, { featureType: "road", elementType: "labels.icon", stylers: [{ visibility: "off" }] }, { featureType: "road.arterial", elementType: "labels.text.fill", stylers: [{ color: "#757575" }] }, { featureType: "road.highway", elementType: "geometry", stylers: [{ color: "#dadada" }] }, { featureType: "road.highway", elementType: "labels.text.fill", stylers: [{ color: "#616161" }] }, { featureType: "road.local", elementType: "labels.text.fill", stylers: [{ color: "#9e9e9e" }] }, { featureType: "transit", stylers: [{ visibility: "off" }] }, { featureType: "transit.line", elementType: "geometry", stylers: [{ color: "#e5e5e5" }] }, { featureType: "transit.station", elementType: "geometry", stylers: [{ color: "#eeeeee" }] }, { featureType: "water", elementType: "geometry", stylers: [{ color: "#c9c9c9" }] }, { featureType: "water", elementType: "labels.text.fill", stylers: [{ color: "#9e9e9e" }] }], e = { mapTypeControlOptions: { mapTypeIds: ["Styled"] }, center: new google.maps.LatLng(54.82223132023322, 18.343404740690858), zoom: 4, disableDefaultUI: !0, mapTypeId: "Styled" }, i = document.getElementById("map"), n = new google.maps.Map(i, e), s = new google.maps.StyledMapType(t, { name: "Styled" }); n.mapTypes.set("Styled", s); var r = "https://www.betterenergy.com/dist/images/pin.png", o = new google.maps.Marker({ position: { lat: 55.675357, lng: 12.5657067 }, map: n, title: "Copenhagen, Denmark", icon: r }), a = new google.maps.Marker({ position: { lat: 54.9183649, lng: 9.8186083 }, map: n, title: "Soenderborg, Denmark", icon: r }); o.setMap(n), a.setMap(n) }, this.fixMapHeight = function() { if (null !== t) { const n = t.offsetHeight; null !== e && i.matches && (e.style.height = n + "px") } }, this.init = function() { null !== t && (be.map.styles(), be.map.fixMapHeight()) } }; var be = be || {}; be.mouseAnimate = new function() { this.onePagerBackground = function() { function t() { s += (i - s) * o, r += (n - r) * o, translate = "translate(" + s + "px, " + r + "px) scale(1.1)", $(".one-pager__section--visible .banner-2-col__figure--background").css({ "-webit-transform": translate, "-moz-transform": translate, transform: translate }), window.requestAnimationFrame(t) } var e = document.querySelector(".one-pager"); if (null !== e) { var i = 0, n = 0, s = 0, r = 0, o = 1 / 30; $(".one-pager").on("mousemove", function(t) { var e = Math.max(-100, Math.min(100, $(window).width() / 2 - t.clientX)), s = Math.max(-100, Math.min(100, $(window).height() / 2 - t.clientY)); i = 20 * e / 100, n = 10 * s / 100 }), t() } }, this.onePagerForeground = function() { function t() { s += (i - s) * o, r += (n - r) * o, translate = "translate(" + s + "px, " + r + "px) scale(1.1)", $(".one-pager__section--visible .banner-2-col__figure--foreground").css({ "-webit-transform": translate, "-moz-transform": translate, transform: translate }), window.requestAnimationFrame(t) } var e = document.querySelector(".one-pager"); if (null !== e) { var i = 0, n = 0, s = 0, r = 0, o = 1 / 15; $(".one-pager").on("mousemove", function(t) { var e = Math.max(-100, Math.min(100, $(window).width() / 2 - t.clientX)), s = Math.max(-100, Math.min(100, $(window).height() / 2 - t.clientY)); i = 20 * e / 100, n = 10 * s / 100 }), t() } }, this.init = function() { be.mouseAnimate.onePagerBackground(), be.mouseAnimate.onePagerForeground() } }; var be = be || {}; be.navigation = new function() { function t(t) { return Array.prototype.slice.call(t) } this.positionDot = function() { var e = t(document.querySelectorAll(".navigation-simple")); e.forEach(function(e) { var i = e, n = i.getBoundingClientRect().top, s = (t(i.querySelectorAll(".navigation__anchor")), i.querySelector(".navigation__active-dot")), r = i.querySelector(".navigation__anchor--active > .navigation__anchor-circle"); if (null !== r) { var o = Math.round(r.getBoundingClientRect().top - n) + "px"; s.style.transform = "translateY(" + o + ")" } else s.style.transform = "translateY(-15px)", s.style.transform = "scale(0)" }) }, this.dot = function() { var e = t(document.querySelectorAll(".navigation-simple")); e.forEach(function(e) { var i = e, n = (i.getBoundingClientRect().top, t(i.querySelectorAll(".navigation__anchor"))), s = i.querySelector(".navigation__active-dot"); i.querySelector(".navigation__anchor--active > .navigation__anchor-circle"); be.navigation.positionDot(), n.forEach(function(t) { t.addEventListener("mouseenter", function() { var e = t.querySelector(".navigation__anchor-circle"), n = e.getBoundingClientRect().top, r = (s.getBoundingClientRect().top, Math.round(n - i.getBoundingClientRect().top) + "px"); s.style.transform = "translateY(" + r + ")" }) }), i.addEventListener("mouseleave", function() { be.navigation.positionDot() }) }) }, this.toggleChildren = function() { var e = document.querySelector(".navigation"), i = t(document.querySelectorAll(".navigation__li--parent > .navigation__anchor")); null !== e && i.forEach(function(e) { "#" === e.getAttribute("href") && e.addEventListener("click", function(i) { i.preventDefault(), e.parentNode.classList.toggle("active"); var n = t(this.parentElement.parentElement.children).filter(function(t) { return t !== e.parentNode }); n.forEach(function(t) { t.classList.remove("active") }) }) }) }, this.init = function() { be.navigation.dot(), be.navigation.toggleChildren() } }; var be = be || {}; be.navSearch = new function() { this.init = function() { function t(t) { $newsResults = $(".module-news__ul--search-result"), $pagesResults = $(".module-pages__ul--search-result"), $pagesResults.html(""), 0 === t.pages.length && $pagesResults.append("<li>No results</li>"), e(t, $newsResults, "orange"), i(t, $pagesResults) } function e(t, e, i) { if (e.length) { e.html(""), 0 === t.news.length && e.append("<li>No results</li>"); for (var n in t.news) { var s = t.news[n]; e.append('<li class="module-news__li"><div class="module-news__item"><div class="row"><div class="col-ms-4 col-sm-3"><a class="module-news__item-image" href="' + s.url + '"><img class="content" src="' + s.image + '" /></a></div><div class="col-ms-8 col-sm-9"><div class="module-news__item-text"><div class="text-area"><span class="module-news__item-text-date color--' + i + '">' + s.publishedDate + '</span><h3 class="headline">' + s.headline + '</h3><a href="' + s.url + '" class="btn btn--' + i + '"><span class="btn__text">Read more</span></a></div></div></div></div></div ></li >') } } } function i(t, e) { for (var i in t.pages) { for (var n = t.pages[i], s = "", i = n.path.length - 1; i >= 0; i--) { var r = n.path[i]; s += 0 === i ? r : "<strong>" + r + "</strong> - " } e.append('<li class="search-result__li"><a href="' + n.url + '" class="search-result__anchor">' + s + "</a></li>") } } $(".main-nav__search").submit(function(e) { e.preventDefault(); var i = $(this).find("[type=search]").val(); return $.ajax({ method: "POST", url: "/umbraco/api/Search/PagesAndNews?q=" + i }).done(t), $(".search-result--overlay").addClass("active"), !1 }), $(".search-news-form").length && $(".search-news-form").submit(function(t) { t.preventDefault(); var i = $(this).find("[type=search]").val(); return $.ajax({ method: "POST", url: "/umbraco/api/Search/PagesAndNews?q=" + i }).done(function(t) { e(t, $(".module-news .module-news__ul"), "blue") }), $(".module-news .headline").text("Results for '" + i + "'"), !1 }) } }; var be = be || {}; be.onePager = new function() { function t(t) { return Array.prototype.slice.call(t) } const e = document.querySelector(".one-pager"); this.sectionisAnimating = !1, this.activeDotPosition = function(e) { var i = document.querySelector(".one-pager"); if (null !== i) { var n = i.querySelector(".navigation-one-pager"), s = n.getBoundingClientRect().top, r = t(n.querySelectorAll(".navigation__anchor")), o = n.querySelector(".navigation__active-dot"), a = n.querySelector(".navigation__anchor--active > .navigation__anchor-circle"); if (null !== a && null == e) { var l = a.getBoundingClientRect().top, c = Math.round(l - s) + "px"; o.style.transform = "translateY(" + c + ")" } else if (null != e) { var h = e.querySelector(".navigation__anchor-circle").getBoundingClientRect().top, c = Math.round(h - s) + "px"; o.style.transform = "translateY(" + c + ")" } r.forEach(function(t) { t.addEventListener("mouseenter", function() { var e = t.querySelector(".navigation__anchor-circle").getBoundingClientRect().top, i = Math.round(e - s) + "px"; o.style.transform = "translateY(" + i + ")" }) }), n.addEventListener("mouseleave", function() { be.onePager.activeDotPosition() }) } }, this.animateCounter = function(t) { if (1 == t) { const i = e.querySelector(".counter"); if (null !== i) { const n = e.querySelectorAll(".counter__value"); i.classList.add("counter--loaded"), n.forEach(function(t) { $(t).prop("Counter", 0).animate({ Counter: $(t).text() }, { duration: 1500, easing: "swing", step: function(e) { $(t).text(Math.ceil(e)) }, complete: function() { $(t).parent().find(".counter__text").addClass("counter__text--loaded"), $(t).parent().find(".counter__description").addClass("counter__description--loaded") } }) }) } } }, this.activateSection = function(e) { var i = document.querySelector(".one-pager"), n = t(i.querySelectorAll(".one-pager__section")), s = t(i.querySelectorAll(".one-pager__navigation .navigation__anchor")); i.querySelector(".btn-scroll--next-story"); n.forEach(function(t) { var i = t.getAttribute("data-index"); i == e ? (be.onePager.sectionisAnimating = !0, t.style.zIndex = "1", t.classList.add("one-pager__section--visible"), setTimeout(function() { be.onePager.sectionisAnimating = !1 }, 1e3), be.onePager.animateCounter(e)) : t.classList.contains("one-pager__section--visible") && (t.style.zIndex = "0", setTimeout(function() { t.classList.remove("one-pager__section--visible") }, 1e3)) }), s.forEach(function(t) { var i = t.getAttribute("data-index"); i == e ? (t.classList.add("navigation__anchor--active"), be.onePager.activeDotPosition(t)) : t.classList.remove("navigation__anchor--active") }) }, this.navigationControl = function() { function e(t) { var t = window.event || t, e = Math.max(-1, Math.min(1, t.wheelDelta || -t.detail)); if (e == -1) if (o < n.length - 1) { if (be.onePager.sectionisAnimating) return !1; o++, be.onePager.activateSection(o) } else { if (be.onePager.sectionisAnimating) return !1; o = 0, be.onePager.activateSection(o) } else if (1 == e) if (o > 0) { if (be.onePager.sectionisAnimating) return !1; o--, be.onePager.activateSection(o) } else { if (be.onePager.sectionisAnimating) return !1; o = 6, be.onePager.activateSection(o) } return !1 } var i = document.querySelector(".one-pager"); if (null !== i) { var n = t(i.querySelectorAll(".one-pager__section")), s = (i.querySelector(".one-pager__section:first-child"), i.querySelector(".one-pager__nav-ul li:first-child > a"), i.querySelector(".btn-scroll--next-story")), r = (i.querySelector(".navigation__ul"), t(i.querySelectorAll(".navigation__anchor"))), o = 0; be.onePager.activateSection(o), r.forEach(function(e) { e.addEventListener("click", function(i) { if (i.preventDefault(), be.onePager.sectionisAnimating) return !1; var n = this, s = e.getAttribute("data-index"), r = e.getAttribute("href"), a = r.split("#")[1], l = document.getElementById(a); t(l.parentElement.children).filter(function(t) { return t !== l }), t(n.parentElement.parentElement.children).filter(function(t) { return t !== n.parentNode }); o = s, be.onePager.activateSection(o) }) }), s.addEventListener("click", function(t) { t.preventDefault(), o < n.length - 1 ? (o++, be.onePager.activateSection(o)) : (o = 0, be.onePager.activateSection(o)) }), i.addEventListener && (i.addEventListener("mousewheel", e, !1), i.addEventListener("DOMMouseScroll", e, !1)) } }, this.init = function() { be.onePager.navigationControl() } }; var be = be || {}; be.owlCarousel = new function() { this.init = function() { $(".owl-carousel").length && ($(".owl-carousel").owlCarousel({ loop: !0, margin: 0, responsiveClass: !0, responsive: { 0: { items: 1, nav: !0 } } }), $(".owl-carousel .lazyload--background").each(function() { loadMediaSrc($(this)[0]) })), $(".owl-carousel--4").length && $(".owl-carousel--4").owlCarousel({ loop: !0, margin: 0, responsiveClass: !0, responsive: { 0: { items: 1, nav: !1, dots: !0 }, 480: { items: 2, nav: !1, dots: !0 }, 768: { items: 3, nav: !1, dots: !0 }, 1024: { items: 4, nav: !1, dots: !0 }, 1280: { items: 4, nav: !0, dots: !1 } } }) } }; var be = be || {}; be.perScrollbar = new function() { this.init = function() { new PerfectScrollbar(".module-news__ul--search-result", { wheelSpeed: 2, wheelPropagation: !0, minScrollbarLength: 20 }) } }; var be = be || {}; be.popUpBox = new function() { this.init = function() { var t = document.querySelector(".pop-up-box"); if (null !== t) { var e = t.querySelector(".pop-up-box__toggle-btn"), i = t.querySelector(".pop-up-box__close-btn"); Cookies.get("popUpBoxVisibilityClosed") || t.classList.add("pop-up-box--visible"), i.addEventListener("click", function(e) { e.preventDefault(), t.classList.remove("pop-up-box--visible"), Cookies.set("popUpBoxVisibilityClosed", "popUpBoxVisibility--closed", { expires: 1 }) }), e.addEventListener("click", function(e) { e.preventDefault(), t.classList.toggle("pop-up-box--closed") }) } } }; var be = be || {}; be.progressBar = new function() { function t(t) { return Array.prototype.slice.call(t) } this.bars = [], this.makeBars = function() { for (var t in be.progressBar.bars) { var e = be.progressBar.bars[t].el, i = e.getBoundingClientRect(), n = be.progressBar.bars[t].value; !be.progressBar.bars[t].loaded && i.top >= 0 && i.left >= 0 && i.bottom <= (window.innerHeight || document.documentElement.clientHeight) && i.right <= (window.innerWidth || document.documentElement.clientWidth) && (be.progressBar.bars[t].bar.animate(n), be.progressBar.bars[t].loaded = !0) } }, this.init = function() { var e = t(document.querySelectorAll(".progress-bar")); null !== e && e.forEach(function(t) { var e = .01 * t.getAttribute("data-value"), i = (t.getBoundingClientRect(), new ProgressBar.Line(t, { strokeWidth: .25, easing: "easeInOut", duration: 1500, color: "#d1681a", trailColor: "#363636", trailWidth: .25, svgStyle: { width: "100%", height: "100%" }, text: { style: { color: "#363636", position: "absolute", right: "0", top: "-20px", fontSize: "13px", fontWeight: "bold", padding: 0, margin: 0, transform: null }, autoStyleContainer: !1 }, from: { color: "#fcc73a" }, to: { color: "#d1681a" }, step: function(t, e) { e.setText(Math.round(100 * e.value()) + " %") } })), n = { bar: i, el: t, value: e, loaded: !1 }; be.progressBar.bars.push(n), be.progressBar.makeBars() }) } }; var be = be || {}; be.scrollAnimate = new function() { this.btnScroll = function() { function t() { var t = $(this).scrollTop(), i = null; n.each(function(e, n) { $(n).offset().top < t + s && (i = $(n)) }), null != i && e != i.data("pos") && (e = i.data("pos")) } var e = 0, i = "section", n = $(i), s = 30, r = n.length - 1; n.each(function(t, e) { $(e).attr("debog", t).data("pos", t) }), $(window).bind("scroll", t), $(".btn-scroll").click(function(t) { if ($(this).hasClass("btn-scroll--next") && e + 1 <= r && (e++, $("html, body").stop().animate({ scrollTop: n.eq(e).offset().top }, 400)), $(this).hasClass("btn-scroll--prev") && e - 1 >= 0) return e--, $("html, body").stop().animate({ scrollTop: n.eq(e).offset().top }, 400), !1 }) }, this.btn = function() { function t(t, e, i) { var n = 0; return function() { var s = Date.now(); s - n > e ? (n = s, t.apply(window, Array.prototype.slice.call(arguments))) : i && i.apply(window, Array.prototype.slice.call(arguments)) } } var e = 0, i = "section", n = $(i), s = n.length - 1; n.each(function(t, e) { $(e).attr("debog", t).data("pos", t) }), $(".btn-scroll").click(function(t) { if ($(this).hasClass("btn-scroll--next") && e + 1 <= s && (e++, $("html, body").stop().animate({ scrollTop: n.eq(e).offset().top }, 400)), $(this).hasClass("btn-scroll--prev") && e - 1 >= 0) return e--, $("html, body").stop().animate({ scrollTop: n.eq(e).offset().top }, 400), !1 }); window.scrollY; window.onwheel = t(function(t) { window.scrollY >= 0 && window.scrollY < .99 * window.innerHeight && t.deltaY > 0 && document.querySelector("main").children.length > 0 && (t.preventDefault(), $("html, body").stop().animate({ scrollTop: document.querySelector("main").children[1].offsetTop }, 400)), window.scrollY >= .9 * window.innerHeight && window.scrollY <= 1.99 * window.innerHeight && t.deltaY < 0 && document.querySelector("main").children.length > 0 && (t.preventDefault(), $("html, body").stop().animate({ scrollTop: 0 }, 400)), window.scrollY >= 1.01 * window.innerHeight && window.scrollY < 2 * window.innerHeight && t.deltaY < 0 && document.querySelector("main").children.length > 0 && (t.preventDefault(), $("html, body").stop().animate({ scrollTop: document.querySelector("main").children[1].offsetTop }, 400)), window.scrollY >= .9 * window.innerHeight && window.scrollY <= 1.99 * window.innerHeight && t.deltaY > 0 && document.querySelector("main").children.length > 1 && (t.preventDefault(), $("html, body").stop().animate({ scrollTop: document.querySelector("main").children[2].offsetTop }, 400)) }, 200, function(t) { window.scrollY >= 0 && window.scrollY < .5 * window.innerHeight && t.deltaY > 0 && t.preventDefault() }) }, this["synchronized"] = function() { var t = (document.body.scrollTop || document.documentElement.scrollTop, document.documentElement.scrollHeight - document.documentElement.clientHeight, document.querySelector(".module-footer-banners__row")), e = t.getBoundingClientRect(), i = e.height, n = t.querySelector(".module-footer-banners__item-left"), s = t.querySelector(".module-footer-banners__item-right"); isElementInViewport(t) ? (console.log("---IN viewport---"), console.log("footerBannersRowRect", e), console.log("footerBannersRowRectHeight", i), n.style.transform = "translate(0,0)", s.style.transform = "translate(0,0)") : (console.log("---OUT of viewport---"), n.style.transform = "translate(0,-60px)", s.style.transform = "translate(0,60px)") }, this.init = function() { be.scrollAnimate.btnScroll() } }; var heyday = heyday || {}; heyday.animate = new function() { function t(t) { $(t).length && $(t).each(function() { var t = $(this); t.visible(!0) && !t.hasClass("loaded") && t.addClass("loaded") }) } this.setAnimation = function() { t(".fade-in"), t(".fade-in-left"), t(".fade-in-right"), t(".fade-in-up"), t(".fade-in-down"), t(".dash"), t(".big-dash"), t(".module-footer-banners"), t(".module-image") } }; var heyday = heyday || {}; heyday.lazy = new function() { this.start = function() { var t = document.querySelectorAll(".lazyload"); for (var e in t) "object" == typeof t[e] && loadMediaSrc(t[e]) }, this.load = function(t) { var e = document.querySelector(".lazyload"); if (e) { var i = (document.querySelectorAll(".lazyload"), { rootMargin: "500px", threshold: 0 }), n = new IntersectionObserver(function(t) { for (var e in t) t[e].intersectionRatio > 0 && (loadMediaSrc(t[e].target), n.unobserve(t[e].target)) }, i), s = document.querySelectorAll(".lazyload"); for (var r in s) "object" == typeof s[r] && n.observe(s[r]) } }, this.init = function() { heyday.lazy.load() } }; var llResizeTimeout; ! function() { window.addEventListener("resize", llResizeThrottler, !1) }(); var forEach = function(t, e, i) { for (var n = 0; n < t.length; n++) e.call(i, n, t[n]) }, heyday = heyday || {}, be = be || {}; $(function() { document.body.classList.contains("body--frontpage") && heyday.lazy.start(), be.header.init(), be.onePager.init(), be.mouseAnimate.init(), be.scrollAnimate.init(), be.counter.init(), be.owlCarousel.init(), be.popUpBox.init(), be.navSearch.init(), be.perScrollbar.init(), be.gridSection.init() }), $(window).load(function() { heyday.lazy.init(), heyday.animate.setAnimation(), be.counter.init(), be.progressBar.init(), be.navigation.init(), be.map.init(), be.infoWheel.init(), be.isotopeContactWrapper.init() }), $(window).resize(heyday.timing.debounce(function() { heyday.lazy.init(), heyday.animate.setAnimation(), be.counter.init(), be.map.init(), be.navigation.init() }, 50)), $(window).scroll(heyday.timing.debounce(function() { heyday.animate.setAnimation(), be.counter.init(), be.progressBar.makeBars(), be.onePager.activeDotPosition(), be.isotopeContactWrapper.init() }, 50));
Close