/** * swiper 3.4.2 * most modern mobile touch slider and framework with hardware accelerated transitions * * http://www.idangero.us/swiper/ * * copyright 2017, vladimir kharlampidi * the idangero.us * http://www.idangero.us/ * * licensed under mit * * released on: march 10, 2017 */ ! function() { "use strict"; var e, a = function(s, i) { function r(e) { return math.floor(e) } function n() { var e = t.params.autoplay, a = t.slides.eq(t.activeindex); a.attr("data-swiper-autoplay") && (e = a.attr("data-swiper-autoplay") || t.params.autoplay), t.autoplaytimeoutid = settimeout(function() { t.params.loop ? (t.fixloop(), t._slidenext(), t.emit("onautoplay", t)) : t.isend ? i.autoplaystoponlast ? t.stopautoplay() : (t._slideto(0), t.emit("onautoplay", t)) : (t._slidenext(), t.emit("onautoplay", t)) }, e) } function o(a, t) { var s = e(a.target); if (!s.is(t)) if ("string" == typeof t) s = s.parents(t); else if (t.nodetype) { var i; return s.parents().each(function(e, a) { a === t && (i = t) }), i ? t : void 0 } if (0 !== s.length) return s[0] } function l(e, a) { a = a || {}; var t = window.mutationobserver || window.webkitmutationobserver, s = new t(function(e) { e.foreach(function(e) { t.onresize(!0), t.emit("onobserverupdate", t, e) }) }); s.observe(e, { attributes: void 0 === a.attributes || a.attributes, childlist: void 0 === a.childlist || a.childlist, characterdata: void 0 === a.characterdata || a.characterdata }), t.observers.push(s) } function p(e) { e.originalevent && (e = e.originalevent); var a = e.keycode || e.charcode; if (!t.params.allowswipetonext && (t.ishorizontal() && 39 === a || !t.ishorizontal() && 40 === a)) return !1; if (!t.params.allowswipetoprev && (t.ishorizontal() && 37 === a || !t.ishorizontal() && 38 === a)) return !1; if (!(e.shiftkey || e.altkey || e.ctrlkey || e.metakey || document.activeelement && document.activeelement.nodename && ("input" === document.activeelement.nodename.tolowercase() || "textarea" === document.activeelement.nodename.tolowercase()))) { if (37 === a || 39 === a || 38 === a || 40 === a) { var t = !1; if (t.container.parents("." + t.params.slideclass).length > 0 && 0 === t.container.parents("." + t.params.slideactiveclass).length) return; var s = { left: window.pagexoffset, top: window.pageyoffset }, i = window.innerwidth, r = window.innerheight, n = t.container.offset(); t.rtl && (n.left = n.left - t.container[0].scrollleft); for (var o = [ [n.left, n.top], [n.left + t.width, n.top], [n.left, n.top + t.height], [n.left + t.width, n.top + t.height] ], l = 0; l < o.length; l++) { var p = o[l]; p[0] >= s.left && p[0] <= s.left + i && p[1] >= s.top && p[1] <= s.top + r && (t = !0) } if (!t) return } t.ishorizontal() ? (37 !== a && 39 !== a || (e.preventdefault ? e.preventdefault() : e.returnvalue = !1), (39 === a && !t.rtl || 37 === a && t.rtl) && t.slidenext(), (37 === a && !t.rtl || 39 === a && t.rtl) && t.slideprev()) : (38 !== a && 40 !== a || (e.preventdefault ? e.preventdefault() : e.returnvalue = !1), 40 === a && t.slidenext(), 38 === a && t.slideprev()), t.emit("onkeypress", t, a) } } function d(e) { var a = 0, t = 0, s = 0, i = 0; return "detail" in e && (t = e.detail), "wheeldelta" in e && (t = -e.wheeldelta / 120), "wheeldeltay" in e && (t = -e.wheeldeltay / 120), "wheeldeltax" in e && (a = -e.wheeldeltax / 120), "axis" in e && e.axis === e.horizontal_axis && (a = t, t = 0), s = 10 * a, i = 10 * t, "deltay" in e && (i = e.deltay), "deltax" in e && (s = e.deltax), (s || i) && e.deltamode && (1 === e.deltamode ? (s *= 40, i *= 40) : (s *= 800, i *= 800)), s && !a && (a = s < 1 ? -1 : 1), i && !t && (t = i < 1 ? -1 : 1), { spinx: a, spiny: t, pixelx: s, pixely: i } } function u(e) { e.originalevent && (e = e.originalevent); var a = 0, t = t.rtl ? -1 : 1, s = d(e); if (t.params.mousewheelforcetoaxis) if (t.ishorizontal()) { if (!(math.abs(s.pixelx) > math.abs(s.pixely))) return; a = s.pixelx * t } else { if (!(math.abs(s.pixely) > math.abs(s.pixelx))) return; a = s.pixely } else a = math.abs(s.pixelx) > math.abs(s.pixely) ? -s.pixelx * t : -s.pixely; if (0 !== a) { if (t.params.mousewheelinvert && (a = -a), t.params.freemode) { var i = t.getwrappertranslate() + a * t.params.mousewheelsensitivity, r = t.isbeginning, n = t.isend; if (i >= t.mintranslate() && (i = t.mintranslate()), i <= t.maxtranslate() && (i = t.maxtranslate()), t.setwrappertransition(0), t.setwrappertranslate(i), t.updateprogress(), t.updateactiveindex(), (!r && t.isbeginning || !n && t.isend) && t.updateclasses(), t.params.freemodesticky ? (cleartimeout(t.mousewheel.timeout), t.mousewheel.timeout = settimeout(function() { t.slidereset() }, 300)) : t.params.lazyloading && t.lazy && t.lazy.load(), t.emit("onscroll", t, e), t.params.autoplay && t.params.autoplaydisableoninteraction && t.stopautoplay(), 0 === i || i === t.maxtranslate()) return } else { if ((new window.date).gettime() - t.mousewheel.lastscrolltime > 60) if (a < 0) if (t.isend && !t.params.loop || t.animating) { if (t.params.mousewheelreleaseonedges) return !0 } else t.slidenext(), t.emit("onscroll", t, e); else if (t.isbeginning && !t.params.loop || t.animating) { if (t.params.mousewheelreleaseonedges) return !0 } else t.slideprev(), t.emit("onscroll", t, e); t.mousewheel.lastscrolltime = (new window.date).gettime() } return e.preventdefault ? e.preventdefault() : e.returnvalue = !1, !1 } } function c(a, t) { a = e(a); var s, i, r, n = t.rtl ? -1 : 1; s = a.attr("data-swiper-parallax") || "0", i = a.attr("data-swiper-parallax-x"), r = a.attr("data-swiper-parallax-y"), i || r ? (i = i || "0", r = r || "0") : t.ishorizontal() ? (i = s, r = "0") : (r = s, i = "0"), i = i.indexof("%") >= 0 ? parseint(i, 10) * t * n + "%" : i * t * n + "px", r = r.indexof("%") >= 0 ? parseint(r, 10) * t + "%" : r * t + "px", a.transform("translate3d(" + i + ", " + r + ",0px)") } function m(e) { return 0 !== e.indexof("on") && (e = e[0] !== e[0].touppercase() ? "on" + e[0].touppercase() + e.substring(1) : "on" + e), e } if (!(this instanceof a)) return new a(s, i); var h = { direction: "horizontal", toucheventstarget: "container", initialslide: 0, speed: 300, autoplay: !1, autoplaydisableoninteraction: !0, autoplaystoponlast: !1, iosedgeswipedetection: !1, iosedgeswipethreshold: 20, freemode: !1, freemodemomentum: !0, freemodemomentumratio: 1, freemodemomentumbounce: !0, freemodemomentumbounceratio: 1, freemodemomentumvelocityratio: 1, freemodesticky: !1, freemodeminimumvelocity: .02, autoheight: !1, setwrappersize: !1, virtualtranslate: !1, effect: "slide", coverflow: { rotate: 50, stretch: 0, depth: 100, modifier: 1, slideshadows: !0 }, flip: { slideshadows: !0, limitrotation: !0 }, cube: { slideshadows: !0, shadow: !0, shadowoffset: 20, shadowscale: .94 }, fade: { crossfade: !1 }, parallax: !1, zoom: !1, zoommax: 3, zoommin: 1, zoomtoggle: !0, scrollbar: null, scrollbarhide: !0, scrollbardraggable: !1, scrollbarsnaponrelease: !1, keyboardcontrol: !1, mousewheelcontrol: !1, mousewheelreleaseonedges: !1, mousewheelinvert: !1, mousewheelforcetoaxis: !1, mousewheelsensitivity: 1, mousewheeleventstarged: "container", hashnav: !1, hashnavwatchstate: !1, history: !1, replacestate: !1, breakpoints: void 0, spacebetween: 0, slidesperview: 1, slidespercolumn: 1, slidespercolumnfill: "column", slidespergroup: 1, centeredslides: !1, slidesoffsetbefore: 0, slidesoffsetafter: 0, roundlengths: !1, touchratio: 1, touchangle: 45, simulatetouch: !0, shortswipes: !0, longswipes: !0, longswipesratio: .5, longswipesms: 300, followfinger: !0, onlyexternal: !1, threshold: 0, touchmovestoppropagation: !0, touchreleaseonedges: !1, uniquenavelements: !0, pagination: null, paginationelement: "span", paginationclickable: !1, paginationhide: !1, paginationbulletrender: null, paginationprogressrender: null, paginationfractionrender: null, paginationcustomrender: null, paginationtype: "bullets", resistance: !0, resistanceratio: .85, nextbutton: null, prevbutton: null, watchslidesprogress: !1, watchslidesvisibility: !1, grabcursor: !1, preventclicks: !0, preventclickspropagation: !0, slidetoclickedslide: !1, lazyloading: !1, lazyloadinginprevnext: !1, lazyloadinginprevnextamount: 1, lazyloadingontransitionstart: !1, preloadimages: !0, updateonimagesready: !0, loop: !1, loopadditionalslides: 0, loopedslides: null, control: void 0, controlinverse: !1, controlby: "slide", normalizeslideindex: !0, allowswipetoprev: !0, allowswipetonext: !0, swipehandler: null, noswiping: !0, noswipingclass: "swiper-no-swiping", passivelisteners: !0, containermodifierclass: "swiper-container-", slideclass: "swiper-slide", slideactiveclass: "swiper-slide-active", slideduplicateactiveclass: "swiper-slide-duplicate-active", slidevisibleclass: "swiper-slide-visible", slideduplicateclass: "swiper-slide-duplicate", slidenextclass: "swiper-slide-next", slideduplicatenextclass: "swiper-slide-duplicate-next", slideprevclass: "swiper-slide-prev", slideduplicateprevclass: "swiper-slide-duplicate-prev", wrapperclass: "swiper-wrapper", bulletclass: "swiper-pagination-bullet", bulletactiveclass: "swiper-pagination-bullet-active", buttondisabledclass: "swiper-button-disabled", paginationcurrentclass: "swiper-pagination-current", paginationtotalclass: "swiper-pagination-total", paginationhiddenclass: "swiper-pagination-hidden", paginationprogressbarclass: "swiper-pagination-progressbar", paginationclickableclass: "swiper-pagination-clickable", paginationmodifierclass: "swiper-pagination-", lazyloadingclass: "swiper-lazy", lazystatusloadingclass: "swiper-lazy-loading", lazystatusloadedclass: "swiper-lazy-loaded", lazypreloaderclass: "swiper-lazy-preloader", notificationclass: "swiper-notification", preloaderclass: "preloader", zoomcontainerclass: "swiper-zoom-container", observer: !1, observeparents: !1, a11y: !1, prevslidemessage: "previous slide", nextslidemessage: "next slide", firstslidemessage: "this is the first slide", lastslidemessage: "this is the last slide", paginationbulletmessage: "go to slide {{index}}", runcallbacksoninit: !0 }, g = i && i.virtualtranslate; i = i || {}; var f = {}; for (var v in i) if ("object" != typeof i[v] || null === i[v] || (i[v].nodetype || i[v] === window || i[v] === document || void 0 !== t && i[v] instanceof t || "undefined" != typeof jquery && i[v] instanceof jquery)) f[v] = i[v]; else { f[v] = {}; for (var w in i[v]) f[v][w] = i[v][w] } for (var y in h) if (void 0 === i[y]) i[y] = h[y]; else if ("object" == typeof i[y]) for (var x in h[y]) void 0 === i[y][x] && (i[y][x] = h[y][x]); var t = this; if (t.params = i, t.originalparams = f, t.classnames = [], void 0 !== e && void 0 !== t && (e = t), (void 0 !== e || (e = void 0 === t ? window.dom7 || window.zepto || window.jquery : t)) && (t.$ = e, t.currentbreakpoint = void 0, t.getactivebreakpoint = function() { if (!t.params.breakpoints) return !1; var e, a = !1, t = []; for (e in t.params.breakpoints) t.params.breakpoints.hasownproperty(e) && t.push(e); t.sort(function(e, a) { return parseint(e, 10) > parseint(a, 10) }); for (var s = 0; s < t.length; s++)(e = t[s]) >= window.innerwidth && !a && (a = e); return a || "max" }, t.setbreakpoint = function() { var e = t.getactivebreakpoint(); if (e && t.currentbreakpoint !== e) { var a = e in t.params.breakpoints ? t.params.breakpoints[e] : t.originalparams, t = t.params.loop && a.slidesperview !== t.params.slidesperview; for (var s in a) t.params[s] = a[s]; t.currentbreakpoint = e, t && t.destroyloop && t.reloop(!0) } }, t.params.breakpoints && t.setbreakpoint(), t.container = e(s), 0 !== t.container.length)) { if (t.container.length > 1) { var b = []; return t.container.each(function() { b.push(new a(this, i)) }), b } t.container[0].swiper = t, t.container.data("swiper", t), t.classnames.push(t.params.containermodifierclass + t.params.direction), t.params.freemode && t.classnames.push(t.params.containermodifierclass + "free-mode"), t.support.flexbox || (t.classnames.push(t.params.containermodifierclass + "no-flexbox"), t.params.slidespercolumn = 1), t.params.autoheight && t.classnames.push(t.params.containermodifierclass + "autoheight"), (t.params.parallax || t.params.watchslidesvisibility) && (t.params.watchslidesprogress = !0), t.params.touchreleaseonedges && (t.params.resistanceratio = 0), ["cube", "coverflow", "flip"].indexof(t.params.effect) >= 0 && (t.support.transforms3d ? (t.params.watchslidesprogress = !0, t.classnames.push(t.params.containermodifierclass + "3d")) : t.params.effect = "slide"), "slide" !== t.params.effect && t.classnames.push(t.params.containermodifierclass + t.params.effect), "cube" === t.params.effect && (t.params.resistanceratio = 0, t.params.slidesperview = 1, t.params.slidespercolumn = 1, t.params.slidespergroup = 1, t.params.centeredslides = !1, t.params.spacebetween = 0, t.params.virtualtranslate = !0), "fade" !== t.params.effect && "flip" !== t.params.effect || (t.params.slidesperview = 1, t.params.slidespercolumn = 1, t.params.slidespergroup = 1, t.params.watchslidesprogress = !0, t.params.spacebetween = 0, void 0 === g && (t.params.virtualtranslate = !0)), t.params.grabcursor && t.support.touch && (t.params.grabcursor = !1), t.wrapper = t.container.children("." + t.params.wrapperclass), t.params.pagination && (t.paginationcontainer = e(t.params.pagination), t.params.uniquenavelements && "string" == typeof t.params.pagination && t.paginationcontainer.length > 1 && 1 === t.container.find(t.params.pagination).length && (t.paginationcontainer = t.container.find(t.params.pagination)), "bullets" === t.params.paginationtype && t.params.paginationclickable ? t.paginationcontainer.addclass(t.params.paginationmodifierclass + "clickable") : t.params.paginationclickable = !1, t.paginationcontainer.addclass(t.params.paginationmodifierclass + t.params.paginationtype)), (t.params.nextbutton || t.params.prevbutton) && (t.params.nextbutton && (t.nextbutton = e(t.params.nextbutton), t.params.uniquenavelements && "string" == typeof t.params.nextbutton && t.nextbutton.length > 1 && 1 === t.container.find(t.params.nextbutton).length && (t.nextbutton = t.container.find(t.params.nextbutton))), t.params.prevbutton && (t.prevbutton = e(t.params.prevbutton), t.params.uniquenavelements && "string" == typeof t.params.prevbutton && t.prevbutton.length > 1 && 1 === t.container.find(t.params.prevbutton).length && (t.prevbutton = t.container.find(t.params.prevbutton)))), t.ishorizontal = function() { return "horizontal" === t.params.direction }, t.rtl = t.ishorizontal() && ("rtl" === t.container[0].dir.tolowercase() || "rtl" === t.container.css("direction")), t.rtl && t.classnames.push(t.params.containermodifierclass + "rtl"), t.rtl && (t.wrongrtl = "-webkit-box" === t.wrapper.css("display")), t.params.slidespercolumn > 1 && t.classnames.push(t.params.containermodifierclass + "multirow"), t.device.android && t.classnames.push(t.params.containermodifierclass + "android"), t.container.addclass(t.classnames.join(" ")), t.translate = 0, t.progress = 0, t.velocity = 0, t.lockswipetonext = function() { t.params.allowswipetonext = !1, t.params.allowswipetoprev === !1 && t.params.grabcursor && t.unsetgrabcursor() }, t.lockswipetoprev = function() { t.params.allowswipetoprev = !1, t.params.allowswipetonext === !1 && t.params.grabcursor && t.unsetgrabcursor() }, t.lockswipes = function() { t.params.allowswipetonext = t.params.allowswipetoprev = !1, t.params.grabcursor && t.unsetgrabcursor() }, t.unlockswipetonext = function() { t.params.allowswipetonext = !0, t.params.allowswipetoprev === !0 && t.params.grabcursor && t.setgrabcursor() }, t.unlockswipetoprev = function() { t.params.allowswipetoprev = !0, t.params.allowswipetonext === !0 && t.params.grabcursor && t.setgrabcursor() }, t.unlockswipes = function() { t.params.allowswipetonext = t.params.allowswipetoprev = !0, t.params.grabcursor && t.setgrabcursor() }, t.setgrabcursor = function(e) { t.container[0].style.cursor = "move", t.container[0].style.cursor = e ? "-webkit-grabbing" : "-webkit-grab", t.container[0].style.cursor = e ? "-moz-grabbin" : "-moz-grab", t.container[0].style.cursor = e ? "grabbing" : "grab" }, t.unsetgrabcursor = function() { t.container[0].style.cursor = "" }, t.params.grabcursor && t.setgrabcursor(), t.imagestoload = [], t.imagesloaded = 0, t.loadimage = function(e, a, t, s, i, r) { function n() { r && r() } var o; e.complete && i ? n() : a ? (o = new window.image, o.onload = n, o.onerror = n, s && (o.sizes = s), t && (o.srcset = t), a && (o.src = a)) : n() }, t.preloadimages = function() { function e() { void 0 !== t && null !== t && t && (void 0 !== t.imagesloaded && t.imagesloaded++, t.imagesloaded === t.imagestoload.length && (t.params.updateonimagesready && t.update(), t.emit("onimagesready", t))) } t.imagestoload = t.container.find("img"); for (var a = 0; a < t.imagestoload.length; a++) t.loadimage(t.imagestoload[a], t.imagestoload[a].currentsrc || t.imagestoload[a].getattribute("src"), t.imagestoload[a].srcset || t.imagestoload[a].getattribute("srcset"), t.imagestoload[a].sizes || t.imagestoload[a].getattribute("sizes"), !0, e) }, t.autoplaytimeoutid = void 0, t.autoplaying = !1, t.autoplaypaused = !1, t.startautoplay = function() { return void 0 === t.autoplaytimeoutid && (!!t.params.autoplay && (!t.autoplaying && (t.autoplaying = !0, t.emit("onautoplaystart", t), void n()))) }, t.stopautoplay = function(e) { t.autoplaytimeoutid && (t.autoplaytimeoutid && cleartimeout(t.autoplaytimeoutid), t.autoplaying = !1, t.autoplaytimeoutid = void 0, t.emit("onautoplaystop", t)) }, t.pauseautoplay = function(e) { t.autoplaypaused || (t.autoplaytimeoutid && cleartimeout(t.autoplaytimeoutid), t.autoplaypaused = !0, 0 === e ? (t.autoplaypaused = !1, n()) : t.wrapper.transitionend(function() { t && (t.autoplaypaused = !1, t.autoplaying ? n() : t.stopautoplay()) })) }, t.mintranslate = function() { return -t.snapgrid[0] }, t.maxtranslate = function() { return -t.snapgrid[t.snapgrid.length - 1] }, t.updateautoheight = function() { var e, a = [], t = 0; if ("auto" !== t.params.slidesperview && t.params.slidesperview > 1) for (e = 0; e < math.ceil(t.params.slidesperview); e++) { var s = t.activeindex + e; if (s > t.slides.length) break; a.push(t.slides.eq(s)[0]) } else a.push(t.slides.eq(t.activeindex)[0]); for (e = 0; e < a.length; e++) if (void 0 !== a[e]) { var i = a[e].offsetheight; t = i > t ? i : t } t && t.wrapper.css("height", t + "px") }, t.updatecontainersize = function() { var e, a; e = void 0 !== t.params.width ? t.params.width : t.container[0].clientwidth, a = void 0 !== t.params.height ? t.params.height : t.container[0].clientheight, 0 === e && t.ishorizontal() || 0 === a && !t.ishorizontal() || (e = e - parseint(t.container.css("padding-left"), 10) - parseint(t.container.css("padding-right"), 10), a = a - parseint(t.container.css("padding-top"), 10) - parseint(t.container.css("padding-bottom"), 10), t.width = e, t.height = a, t.size = t.ishorizontal() ? t.width : t.height) }, t.updateslidessize = function() { t.slides = t.wrapper.children("." + t.params.slideclass), t.snapgrid = [], t.slidesgrid = [], t.slidessizesgrid = []; var e, a = t.params.spacebetween, t = -t.params.slidesoffsetbefore, s = 0, i = 0; if (void 0 !== t.size) { "string" == typeof a && a.indexof("%") >= 0 && (a = parsefloat(a.replace("%", "")) / 100 * t.size), t.virtualsize = -a, t.rtl ? t.slides.css({ marginleft: "", margintop: "" }) : t.slides.css({ marginright: "", marginbottom: "" }); var n; t.params.slidespercolumn > 1 && (n = math.floor(t.slides.length / t.params.slidespercolumn) === t.slides.length / t.params.slidespercolumn ? t.slides.length : math.ceil(t.slides.length / t.params.slidespercolumn) * t.params.slidespercolumn, "auto" !== t.params.slidesperview && "row" === t.params.slidespercolumnfill && (n = math.max(n, t.params.slidesperview * t.params.slidespercolumn))); var o, l = t.params.slidespercolumn, p = n / l, d = p - (t.params.slidespercolumn * p - t.slides.length); for (e = 0; e < t.slides.length; e++) { o = 0; var u = t.slides.eq(e); if (t.params.slidespercolumn > 1) { var c, m, h; "column" === t.params.slidespercolumnfill ? (m = math.floor(e / l), h = e - m * l, (m > d || m === d && h === l - 1) && ++h >= l && (h = 0, m++), c = m + h * n / l, u.css({ "-webkit-box-ordinal-group": c, "-moz-box-ordinal-group": c, "-ms-flex-order": c, "-webkit-order": c, order: c })) : (h = math.floor(e / p), m = e - h * p), u.css("margin-" + (t.ishorizontal() ? "top" : "left"), 0 !== h && t.params.spacebetween && t.params.spacebetween + "px").attr("data-swiper-column", m).attr("data-swiper-row", h) } "none" !== u.css("display") && ("auto" === t.params.slidesperview ? (o = t.ishorizontal() ? u.outerwidth(!0) : u.outerheight(!0), t.params.roundlengths && (o = r(o))) : (o = (t.size - (t.params.slidesperview - 1) * a) / t.params.slidesperview, t.params.roundlengths && (o = r(o)), t.ishorizontal() ? t.slides[e].style.width = o + "px" : t.slides[e].style.height = o + "px"), t.slides[e].swiperslidesize = o, t.slidessizesgrid.push(o), t.params.centeredslides ? (t = t + o / 2 + s / 2 + a, 0 === s && 0 !== e && (t = t - t.size / 2 - a), 0 === e && (t = t - t.size / 2 - a), math.abs(t) < .001 && (t = 0), i % t.params.slidespergroup == 0 && t.snapgrid.push(t), t.slidesgrid.push(t)) : (i % t.params.slidespergroup == 0 && t.snapgrid.push(t), t.slidesgrid.push(t), t = t + o + a), t.virtualsize += o + a, s = o, i++) } t.virtualsize = math.max(t.virtualsize, t.size) + t.params.slidesoffsetafter; var g; if (t.rtl && t.wrongrtl && ("slide" === t.params.effect || "coverflow" === t.params.effect) && t.wrapper.css({ width: t.virtualsize + t.params.spacebetween + "px" }), t.support.flexbox && !t.params.setwrappersize || (t.ishorizontal() ? t.wrapper.css({ width: t.virtualsize + t.params.spacebetween + "px" }) : t.wrapper.css({ height: t.virtualsize + t.params.spacebetween + "px" })), t.params.slidespercolumn > 1 && (t.virtualsize = (o + t.params.spacebetween) * n, t.virtualsize = math.ceil(t.virtualsize / t.params.slidespercolumn) - t.params.spacebetween, t.ishorizontal() ? t.wrapper.css({ width: t.virtualsize + t.params.spacebetween + "px" }) : t.wrapper.css({ height: t.virtualsize + t.params.spacebetween + "px" }), t.params.centeredslides)) { for (g = [], e = 0; e < t.snapgrid.length; e++) t.snapgrid[e] < t.virtualsize + t.snapgrid[0] && g.push(t.snapgrid[e]); t.snapgrid = g } if (!t.params.centeredslides) { for (g = [], e = 0; e < t.snapgrid.length; e++) t.snapgrid[e] <= t.virtualsize - t.size && g.push(t.snapgrid[e]); t.snapgrid = g, math.floor(t.virtualsize - t.size) - math.floor(t.snapgrid[t.snapgrid.length - 1]) > 1 && t.snapgrid.push(t.virtualsize - t.size) } 0 === t.snapgrid.length && (t.snapgrid = [0]), 0 !== t.params.spacebetween && (t.ishorizontal() ? t.rtl ? t.slides.css({ marginleft: a + "px" }) : t.slides.css({ marginright: a + "px" }) : t.slides.css({ marginbottom: a + "px" })), t.params.watchslidesprogress && t.updateslidesoffset() } }, t.updateslidesoffset = function() { for (var e = 0; e < t.slides.length; e++) t.slides[e].swiperslideoffset = t.ishorizontal() ? t.slides[e].offsetleft : t.slides[e].offsettop }, t.currentslidesperview = function() { var e, a, t = 1; if (t.params.centeredslides) { var s, i = t.slides[t.activeindex].swiperslidesize; for (e = t.activeindex + 1; e < t.slides.length; e++) t.slides[e] && !s && (i += t.slides[e].swiperslidesize, t++, i > t.size && (s = !0)); for (a = t.activeindex - 1; a >= 0; a--) t.slides[a] && !s && (i += t.slides[a].swiperslidesize, t++, i > t.size && (s = !0)) } else for (e = t.activeindex + 1; e < t.slides.length; e++) t.slidesgrid[e] - t.slidesgrid[t.activeindex] < t.size && t++; return t }, t.updateslidesprogress = function(e) { if (void 0 === e && (e = t.translate || 0), 0 !== t.slides.length) { void 0 === t.slides[0].swiperslideoffset && t.updateslidesoffset(); var a = -e; t.rtl && (a = e), t.slides.removeclass(t.params.slidevisibleclass); for (var t = 0; t < t.slides.length; t++) { var s = t.slides[t], i = (a + (t.params.centeredslides ? t.mintranslate() : 0) - s.swiperslideoffset) / (s.swiperslidesize + t.params.spacebetween); if (t.params.watchslidesvisibility) { var r = -(a - s.swiperslideoffset), n = r + t.slidessizesgrid[t]; (r >= 0 && r < t.size || n > 0 && n <= t.size || r <= 0 && n >= t.size) && t.slides.eq(t).addclass(t.params.slidevisibleclass) } s.progress = t.rtl ? -i : i } } }, t.updateprogress = function(e) { void 0 === e && (e = t.translate || 0); var a = t.maxtranslate() - t.mintranslate(), t = t.isbeginning, s = t.isend; 0 === a ? (t.progress = 0, t.isbeginning = t.isend = !0) : (t.progress = (e - t.mintranslate()) / a, t.isbeginning = t.progress <= 0, t.isend = t.progress >= 1), t.isbeginning && !t && t.emit("onreachbeginning", t), t.isend && !s && t.emit("onreachend", t), t.params.watchslidesprogress && t.updateslidesprogress(e), t.emit("onprogress", t, t.progress) }, t.updateactiveindex = function() { var e, a, t, s = t.rtl ? t.translate : -t.translate; for (a = 0; a < t.slidesgrid.length; a++) void 0 !== t.slidesgrid[a + 1] ? s >= t.slidesgrid[a] && s < t.slidesgrid[a + 1] - (t.slidesgrid[a + 1] - t.slidesgrid[a]) / 2 ? e = a : s >= t.slidesgrid[a] && s < t.slidesgrid[a + 1] && (e = a + 1) : s >= t.slidesgrid[a] && (e = a); t.params.normalizeslideindex && (e < 0 || void 0 === e) && (e = 0), t = math.floor(e / t.params.slidespergroup), t >= t.snapgrid.length && (t = t.snapgrid.length - 1), e !== t.activeindex && (t.snapindex = t, t.previousindex = t.activeindex, t.activeindex = e, t.updateclasses(), t.updaterealindex()) }, t.updaterealindex = function() { t.realindex = parseint(t.slides.eq(t.activeindex).attr("data-swiper-slide-index") || t.activeindex, 10) }, t.updateclasses = function() { t.slides.removeclass(t.params.slideactiveclass + " " + t.params.slidenextclass + " " + t.params.slideprevclass + " " + t.params.slideduplicateactiveclass + " " + t.params.slideduplicatenextclass + " " + t.params.slideduplicateprevclass); var a = t.slides.eq(t.activeindex); a.addclass(t.params.slideactiveclass), i.loop && (a.hasclass(t.params.slideduplicateclass) ? t.wrapper.children("." + t.params.slideclass + ":not(." + t.params.slideduplicateclass + ')[data-swiper-slide-index="' + t.realindex + '"]').addclass(t.params.slideduplicateactiveclass) : t.wrapper.children("." + t.params.slideclass + "." + t.params.slideduplicateclass + '[data-swiper-slide-index="' + t.realindex + '"]').addclass(t.params.slideduplicateactiveclass)); var t = a.next("." + t.params.slideclass).addclass(t.params.slidenextclass); t.params.loop && 0 === t.length && (t = t.slides.eq(0), t.addclass(t.params.slidenextclass)); var s = a.prev("." + t.params.slideclass).addclass(t.params.slideprevclass); if (t.params.loop && 0 === s.length && (s = t.slides.eq(-1), s.addclass(t.params.slideprevclass)), i.loop && (t.hasclass(t.params.slideduplicateclass) ? t.wrapper.children("." + t.params.slideclass + ":not(." + t.params.slideduplicateclass + ')[data-swiper-slide-index="' + t.attr("data-swiper-slide-index") + '"]').addclass(t.params.slideduplicatenextclass) : t.wrapper.children("." + t.params.slideclass + "." + t.params.slideduplicateclass + '[data-swiper-slide-index="' + t.attr("data-swiper-slide-index") + '"]').addclass(t.params.slideduplicatenextclass), s.hasclass(t.params.slideduplicateclass) ? t.wrapper.children("." + t.params.slideclass + ":not(." + t.params.slideduplicateclass + ')[data-swiper-slide-index="' + s.attr("data-swiper-slide-index") + '"]').addclass(t.params.slideduplicateprevclass) : t.wrapper.children("." + t.params.slideclass + "." + t.params.slideduplicateclass + '[data-swiper-slide-index="' + s.attr("data-swiper-slide-index") + '"]').addclass(t.params.slideduplicateprevclass)), t.paginationcontainer && t.paginationcontainer.length > 0) { var r, n = t.params.loop ? math.ceil((t.slides.length - 2 * t.loopedslides) / t.params.slidespergroup) : t.snapgrid.length; if (t.params.loop ? (r = math.ceil((t.activeindex - t.loopedslides) / t.params.slidespergroup), r > t.slides.length - 1 - 2 * t.loopedslides && (r -= t.slides.length - 2 * t.loopedslides), r > n - 1 && (r -= n), r < 0 && "bullets" !== t.params.paginationtype && (r = n + r)) : r = void 0 !== t.snapindex ? t.snapindex : t.activeindex || 0, "bullets" === t.params.paginationtype && t.bullets && t.bullets.length > 0 && (t.bullets.removeclass(t.params.bulletactiveclass), t.paginationcontainer.length > 1 ? t.bullets.each(function() { e(this).index() === r && e(this).addclass(t.params.bulletactiveclass) }) : t.bullets.eq(r).addclass(t.params.bulletactiveclass)), "fraction" === t.params.paginationtype && (t.paginationcontainer.find("." + t.params.paginationcurrentclass).text(r + 1), t.paginationcontainer.find("." + t.params.paginationtotalclass).text(n)), "progress" === t.params.paginationtype) { var o = (r + 1) / n, l = o, p = 1; t.ishorizontal() || (p = o, l = 1), t.paginationcontainer.find("." + t.params.paginationprogressbarclass).transform("translate3d(0,0,0) scalex(" + l + ") scaley(" + p + ")").transition(t.params.speed) } "custom" === t.params.paginationtype && t.params.paginationcustomrender && (t.paginationcontainer.html(t.params.paginationcustomrender(t, r + 1, n)), t.emit("onpaginationrendered", t, t.paginationcontainer[0])) } t.params.loop || (t.params.prevbutton && t.prevbutton && t.prevbutton.length > 0 && (t.isbeginning ? (t.prevbutton.addclass(t.params.buttondisabledclass), t.params.a11y && t.a11y && t.a11y.disable(t.prevbutton)) : (t.prevbutton.removeclass(t.params.buttondisabledclass), t.params.a11y && t.a11y && t.a11y.enable(t.prevbutton))), t.params.nextbutton && t.nextbutton && t.nextbutton.length > 0 && (t.isend ? (t.nextbutton.addclass(t.params.buttondisabledclass), t.params.a11y && t.a11y && t.a11y.disable(t.nextbutton)) : (t.nextbutton.removeclass(t.params.buttondisabledclass), t.params.a11y && t.a11y && t.a11y.enable(t.nextbutton)))) }, t.updatepagination = function() { if (t.params.pagination && t.paginationcontainer && t.paginationcontainer.length > 0) { var e = ""; if ("bullets" === t.params.paginationtype) { for (var a = t.params.loop ? math.ceil((t.slides.length - 2 * t.loopedslides) / t.params.slidespergroup) : t.snapgrid.length, t = 0; t < a; t++) e += t.params.paginationbulletrender ? t.params.paginationbulletrender(t, t, t.params.bulletclass) : "<" + t.params.paginationelement + ' class="' + t.params.bulletclass + '">"; t.paginationcontainer.html(e), t.bullets = t.paginationcontainer.find("." + t.params.bulletclass), t.params.paginationclickable && t.params.a11y && t.a11y && t.a11y.initpagination() } "fraction" === t.params.paginationtype && (e = t.params.paginationfractionrender ? t.params.paginationfractionrender(t, t.params.paginationcurrentclass, t.params.paginationtotalclass) : ' / ', t.paginationcontainer.html(e)), "progress" === t.params.paginationtype && (e = t.params.paginationprogressrender ? t.params.paginationprogressrender(t, t.params.paginationprogressbarclass) : '', t.paginationcontainer.html(e)), "custom" !== t.params.paginationtype && t.emit("onpaginationrendered", t, t.paginationcontainer[0]) } }, t.update = function(e) { function a() { t.rtl, t.translate; t = math.min(math.max(t.translate, t.maxtranslate()), t.mintranslate()), t.setwrappertranslate(t), t.updateactiveindex(), t.updateclasses() } if (t) { t.updatecontainersize(), t.updateslidessize(), t.updateprogress(), t.updatepagination(), t.updateclasses(), t.params.scrollbar && t.scrollbar && t.scrollbar.set(); var t; if (e) { t.controller && t.controller.spline && (t.controller.spline = void 0), t.params.freemode ? (a(), t.params.autoheight && t.updateautoheight()) : (("auto" === t.params.slidesperview || t.params.slidesperview > 1) && t.isend && !t.params.centeredslides ? t.slideto(t.slides.length - 1, 0, !1, !0) : t.slideto(t.activeindex, 0, !1, !0)) || a() } else t.params.autoheight && t.updateautoheight() } }, t.onresize = function(e) { t.params.onbeforeresize && t.params.onbeforeresize(t), t.params.breakpoints && t.setbreakpoint(); var a = t.params.allowswipetoprev, t = t.params.allowswipetonext; t.params.allowswipetoprev = t.params.allowswipetonext = !0, t.updatecontainersize(), t.updateslidessize(), ("auto" === t.params.slidesperview || t.params.freemode || e) && t.updatepagination(), t.params.scrollbar && t.scrollbar && t.scrollbar.set(), t.controller && t.controller.spline && (t.controller.spline = void 0); var s = !1; if (t.params.freemode) { var i = math.min(math.max(t.translate, t.maxtranslate()), t.mintranslate()); t.setwrappertranslate(i), t.updateactiveindex(), t.updateclasses(), t.params.autoheight && t.updateautoheight() } else t.updateclasses(), s = ("auto" === t.params.slidesperview || t.params.slidesperview > 1) && t.isend && !t.params.centeredslides ? t.slideto(t.slides.length - 1, 0, !1, !0) : t.slideto(t.activeindex, 0, !1, !0); t.params.lazyloading && !s && t.lazy && t.lazy.load(), t.params.allowswipetoprev = a, t.params.allowswipetonext = t, t.params.onafterresize && t.params.onafterresize(t) }, t.toucheventsdesktop = { start: "mousedown", move: "mousemove", end: "mouseup" }, window.navigator.pointerenabled ? t.toucheventsdesktop = { start: "pointerdown", move: "pointermove", end: "pointerup" } : window.navigator.mspointerenabled && (t.toucheventsdesktop = { start: "mspointerdown", move: "mspointermove", end: "mspointerup" }), t.touchevents = { start: t.support.touch || !t.params.simulatetouch ? "touchstart" : t.toucheventsdesktop.start, move: t.support.touch || !t.params.simulatetouch ? "touchmove" : t.toucheventsdesktop.move, end: t.support.touch || !t.params.simulatetouch ? "touchend" : t.toucheventsdesktop.end }, (window.navigator.pointerenabled || window.navigator.mspointerenabled) && ("container" === t.params.toucheventstarget ? t.container : t.wrapper).addclass("swiper-wp8-" + t.params.direction), t.initevents = function(e) { var a = e ? "off" : "on", t = e ? "removeeventlistener" : "addeventlistener", s = "container" === t.params.toucheventstarget ? t.container[0] : t.wrapper[0], r = t.support.touch ? s : document, n = !!t.params.nested; if (t.browser.ie) s[t](t.touchevents.start, t.ontouchstart, !1), r[t](t.touchevents.move, t.ontouchmove, n), r[t](t.touchevents.end, t.ontouchend, !1); else { if (t.support.touch) { var o = !("touchstart" !== t.touchevents.start || !t.support.passivelistener || !t.params.passivelisteners) && { passive: !0, capture: !1 }; s[t](t.touchevents.start, t.ontouchstart, o), s[t](t.touchevents.move, t.ontouchmove, n), s[t](t.touchevents.end, t.ontouchend, o) }(i.simulatetouch && !t.device.ios && !t.device.android || i.simulatetouch && !t.support.touch && t.device.ios) && (s[t]("mousedown", t.ontouchstart, !1), document[t]("mousemove", t.ontouchmove, n), document[t]("mouseup", t.ontouchend, !1)) } window[t]("resize", t.onresize), t.params.nextbutton && t.nextbutton && t.nextbutton.length > 0 && (t.nextbutton[a]("click", t.onclicknext), t.params.a11y && t.a11y && t.nextbutton[a]("keydown", t.a11y.onenterkey)), t.params.prevbutton && t.prevbutton && t.prevbutton.length > 0 && (t.prevbutton[a]("click", t.onclickprev), t.params.a11y && t.a11y && t.prevbutton[a]("keydown", t.a11y.onenterkey)), t.params.pagination && t.params.paginationclickable && (t.paginationcontainer[a]("click", "." + t.params.bulletclass, t.onclickindex), t.params.a11y && t.a11y && t.paginationcontainer[a]("keydown", "." + t.params.bulletclass, t.a11y.onenterkey)), (t.params.preventclicks || t.params.preventclickspropagation) && s[t]("click", t.preventclicks, !0) }, t.attachevents = function() { t.initevents() }, t.detachevents = function() { t.initevents(!0) }, t.allowclick = !0, t.preventclicks = function(e) { t.allowclick || (t.params.preventclicks && e.preventdefault(), t.params.preventclickspropagation && t.animating && (e.stoppropagation(), e.stopimmediatepropagation())) }, t.onclicknext = function(e) { e.preventdefault(), t.isend && !t.params.loop || t.slidenext() }, t.onclickprev = function(e) { e.preventdefault(), t.isbeginning && !t.params.loop || t.slideprev() }, t.onclickindex = function(a) { a.preventdefault(); var t = e(this).index() * t.params.slidespergroup; t.params.loop && (t += t.loopedslides), t.slideto(t) }, t.updateclickedslide = function(a) { var t = o(a, "." + t.params.slideclass), s = !1; if (t) for (var i = 0; i < t.slides.length; i++) t.slides[i] === t && (s = !0); if (!t || !s) return t.clickedslide = void 0, void(t.clickedindex = void 0); if (t.clickedslide = t, t.clickedindex = e(t).index(), t.params.slidetoclickedslide && void 0 !== t.clickedindex && t.clickedindex !== t.activeindex) { var r, n = t.clickedindex, l = "auto" === t.params.slidesperview ? t.currentslidesperview() : t.params.slidesperview; if (t.params.loop) { if (t.animating) return; r = parseint(e(t.clickedslide).attr("data-swiper-slide-index"), 10), t.params.centeredslides ? n < t.loopedslides - l / 2 || n > t.slides.length - t.loopedslides + l / 2 ? (t.fixloop(), n = t.wrapper.children("." + t.params.slideclass + '[data-swiper-slide-index="' + r + '"]:not(.' + t.params.slideduplicateclass + ")").eq(0).index(), settimeout(function() { t.slideto(n) }, 0)) : t.slideto(n) : n > t.slides.length - l ? (t.fixloop(), n = t.wrapper.children("." + t.params.slideclass + '[data-swiper-slide-index="' + r + '"]:not(.' + t.params.slideduplicateclass + ")").eq(0).index(), settimeout(function() { t.slideto(n) }, 0)) : t.slideto(n) } else t.slideto(n) } }; var s, c, z, m, e, p, i, k, l, d, b = "input, select, textarea, button, video", h = date.now(), g = []; t.animating = !1, t.touches = { startx: 0, starty: 0, currentx: 0, currenty: 0, diff: 0 }; var x, a; t.ontouchstart = function(a) { if (a.originalevent && (a = a.originalevent), (x = "touchstart" === a.type) || !("which" in a) || 3 !== a.which) { if (t.params.noswiping && o(a, "." + t.params.noswipingclass)) return void(t.allowclick = !0); if (!t.params.swipehandler || o(a, t.params.swipehandler)) { var t = t.touches.currentx = "touchstart" === a.type ? a.targettouches[0].pagex : a.pagex, s = t.touches.currenty = "touchstart" === a.type ? a.targettouches[0].pagey : a.pagey; if (!(t.device.ios && t.params.iosedgeswipedetection && t <= t.params.iosedgeswipethreshold)) { if (s = !0, c = !1, z = !0, e = void 0, a = void 0, t.touches.startx = t, t.touches.starty = s, m = date.now(), t.allowclick = !0, t.updatecontainersize(), t.swipedirection = void 0, t.params.threshold > 0 && (k = !1), "touchstart" !== a.type) { var i = !0; e(a.target).is(b) && (i = !1), document.activeelement && e(document.activeelement).is(b) && document.activeelement.blur(), i && a.preventdefault() } t.emit("ontouchstart", t, a) } } } }, t.ontouchmove = function(a) { if (a.originalevent && (a = a.originalevent), !x || "mousemove" !== a.type) { if (a.preventedbynestedswiper) return t.touches.startx = "touchmove" === a.type ? a.targettouches[0].pagex : a.pagex, void(t.touches.starty = "touchmove" === a.type ? a.targettouches[0].pagey : a.pagey); if (t.params.onlyexternal) return t.allowclick = !1, void(s && (t.touches.startx = t.touches.currentx = "touchmove" === a.type ? a.targettouches[0].pagex : a.pagex, t.touches.starty = t.touches.currenty = "touchmove" === a.type ? a.targettouches[0].pagey : a.pagey, m = date.now())); if (x && t.params.touchreleaseonedges && !t.params.loop) if (t.ishorizontal()) { if (t.touches.currentx < t.touches.startx && t.translate <= t.maxtranslate() || t.touches.currentx > t.touches.startx && t.translate >= t.mintranslate()) return } else if (t.touches.currenty < t.touches.starty && t.translate <= t.maxtranslate() || t.touches.currenty > t.touches.starty && t.translate >= t.mintranslate()) return; if (x && document.activeelement && a.target === document.activeelement && e(a.target).is(b)) return c = !0, void(t.allowclick = !1); if (z && t.emit("ontouchmove", t, a), !(a.targettouches && a.targettouches.length > 1)) { if (t.touches.currentx = "touchmove" === a.type ? a.targettouches[0].pagex : a.pagex, t.touches.currenty = "touchmove" === a.type ? a.targettouches[0].pagey : a.pagey, void 0 === e) { var t; t.ishorizontal() && t.touches.currenty === t.touches.starty || !t.ishorizontal() && t.touches.currentx === t.touches.startx ? e = !1 : (t = 180 * math.atan2(math.abs(t.touches.currenty - t.touches.starty), math.abs(t.touches.currentx - t.touches.startx)) / math.pi, e = t.ishorizontal() ? t > t.params.touchangle : 90 - t > t.params.touchangle) } if (e && t.emit("ontouchmoveopposite", t, a), void 0 === a && (t.touches.currentx === t.touches.startx && t.touches.currenty === t.touches.starty || (a = !0)), s) { if (e) return void(s = !1); if (a) { t.allowclick = !1, t.emit("onslidermove", t, a), a.preventdefault(), t.params.touchmovestoppropagation && !t.params.nested && a.stoppropagation(), c || (i.loop && t.fixloop(), i = t.getwrappertranslate(), t.setwrappertransition(0), t.animating && t.wrapper.trigger("webkittransitionend transitionend otransitionend mstransitionend mstransitionend"), t.params.autoplay && t.autoplaying && (t.params.autoplaydisableoninteraction ? t.stopautoplay() : t.pauseautoplay()), d = !1, !t.params.grabcursor || t.params.allowswipetonext !== !0 && t.params.allowswipetoprev !== !0 || t.setgrabcursor(!0)), c = !0; var s = t.touches.diff = t.ishorizontal() ? t.touches.currentx - t.touches.startx : t.touches.currenty - t.touches.starty; s *= t.params.touchratio, t.rtl && (s = -s), t.swipedirection = s > 0 ? "prev" : "next", p = s + i; var r = !0; if (s > 0 && p > t.mintranslate() ? (r = !1, t.params.resistance && (p = t.mintranslate() - 1 + math.pow(-t.mintranslate() + i + s, t.params.resistanceratio))) : s < 0 && p < t.maxtranslate() && (r = !1, t.params.resistance && (p = t.maxtranslate() + 1 - math.pow(t.maxtranslate() - i - s, t.params.resistanceratio))), r && (a.preventedbynestedswiper = !0), !t.params.allowswipetonext && "next" === t.swipedirection && p < i && (p = i), !t.params.allowswipetoprev && "prev" === t.swipedirection && p > i && (p = i), t.params.threshold > 0) { if (!(math.abs(s) > t.params.threshold || k)) return void(p = i); if (!k) return k = !0, t.touches.startx = t.touches.currentx, t.touches.starty = t.touches.currenty, p = i, void(t.touches.diff = t.ishorizontal() ? t.touches.currentx - t.touches.startx : t.touches.currenty - t.touches.starty) } t.params.followfinger && ((t.params.freemode || t.params.watchslidesprogress) && t.updateactiveindex(), t.params.freemode && (0 === g.length && g.push({ position: t.touches[t.ishorizontal() ? "startx" : "starty"], time: m }), g.push({ position: t.touches[t.ishorizontal() ? "currentx" : "currenty"], time: (new window.date).gettime() })), t.updateprogress(p), t.setwrappertranslate(p)) } } } } }, t.ontouchend = function(a) { if (a.originalevent && (a = a.originalevent), z && t.emit("ontouchend", t, a), z = !1, s) { t.params.grabcursor && c && s && (t.params.allowswipetonext === !0 || t.params.allowswipetoprev === !0) && t.setgrabcursor(!1); var t = date.now(), s = t - m; if (t.allowclick && (t.updateclickedslide(a), t.emit("ontap", t, a), s < 300 && t - h > 300 && (l && cleartimeout(l), l = settimeout(function() { t && (t.params.paginationhide && t.paginationcontainer.length > 0 && !e(a.target).hasclass(t.params.bulletclass) && t.paginationcontainer.toggleclass(t.params.paginationhiddenclass), t.emit("onclick", t, a)) }, 300)), s < 300 && t - h < 300 && (l && cleartimeout(l), t.emit("ondoubletap", t, a))), h = date.now(), settimeout(function() { t && (t.allowclick = !0) }, 0), !s || !c || !t.swipedirection || 0 === t.touches.diff || p === i) return void(s = c = !1); s = c = !1; var i; if (i = t.params.followfinger ? t.rtl ? t.translate : -t.translate : -p, t.params.freemode) { if (i < -t.mintranslate()) return void t.slideto(t.activeindex); if (i > -t.maxtranslate()) return void(t.slides.length < t.snapgrid.length ? t.slideto(t.snapgrid.length - 1) : t.slideto(t.slides.length - 1)); if (t.params.freemodemomentum) { if (g.length > 1) { var r = g.pop(), n = g.pop(), o = r.position - n.position, l = r.time - n.time; t.velocity = o / l, t.velocity = t.velocity / 2, math.abs(t.velocity) < t.params.freemodeminimumvelocity && (t.velocity = 0), (l > 150 || (new window.date).gettime() - r.time > 300) && (t.velocity = 0) } else t.velocity = 0; t.velocity = t.velocity * t.params.freemodemomentumvelocityratio, g.length = 0; var p = 1e3 * t.params.freemodemomentumratio, d = t.velocity * p, u = t.translate + d; t.rtl && (u = -u); var c, m = !1, h = 20 * math.abs(t.velocity) * t.params.freemodemomentumbounceratio; if (u < t.maxtranslate()) t.params.freemodemomentumbounce ? (u + t.maxtranslate() < -h && (u = t.maxtranslate() - h), c = t.maxtranslate(), m = !0, d = !0) : u = t.maxtranslate(); else if (u > t.mintranslate()) t.params.freemodemomentumbounce ? (u - t.mintranslate() > h && (u = t.mintranslate() + h), c = t.mintranslate(), m = !0, d = !0) : u = t.mintranslate(); else if (t.params.freemodesticky) { var g, f = 0; for (f = 0; f < t.snapgrid.length; f += 1) if (t.snapgrid[f] > -u) { g = f; break } u = math.abs(t.snapgrid[g] - u) < math.abs(t.snapgrid[g - 1] - u) || "next" === t.swipedirection ? t.snapgrid[g] : t.snapgrid[g - 1], t.rtl || (u = -u) } if (0 !== t.velocity) p = t.rtl ? math.abs((-u - t.translate) / t.velocity) : math.abs((u - t.translate) / t.velocity); else if (t.params.freemodesticky) return void t.slidereset(); t.params.freemodemomentumbounce && m ? (t.updateprogress(c), t.setwrappertransition(p), t.setwrappertranslate(u), t.ontransitionstart(), t.animating = !0, t.wrapper.transitionend(function() { t && d && (t.emit("onmomentumbounce", t), t.setwrappertransition(t.params.speed), t.setwrappertranslate(c), t.wrapper.transitionend(function() { t && t.ontransitionend() })) })) : t.velocity ? (t.updateprogress(u), t.setwrappertransition(p), t.setwrappertranslate(u), t.ontransitionstart(), t.animating || (t.animating = !0, t.wrapper.transitionend(function() { t && t.ontransitionend() }))) : t.updateprogress(u), t.updateactiveindex() } return void((!t.params.freemodemomentum || s >= t.params.longswipesms) && (t.updateprogress(), t.updateactiveindex())) } var v, w = 0, y = t.slidessizesgrid[0]; for (v = 0; v < t.slidesgrid.length; v += t.params.slidespergroup) void 0 !== t.slidesgrid[v + t.params.slidespergroup] ? i >= t.slidesgrid[v] && i < t.slidesgrid[v + t.params.slidespergroup] && (w = v, y = t.slidesgrid[v + t.params.slidespergroup] - t.slidesgrid[v]) : i >= t.slidesgrid[v] && (w = v, y = t.slidesgrid[t.slidesgrid.length - 1] - t.slidesgrid[t.slidesgrid.length - 2]); var x = (i - t.slidesgrid[w]) / y; if (s > t.params.longswipesms) { if (!t.params.longswipes) return void t.slideto(t.activeindex); "next" === t.swipedirection && (x >= t.params.longswipesratio ? t.slideto(w + t.params.slidespergroup) : t.slideto(w)), "prev" === t.swipedirection && (x > 1 - t.params.longswipesratio ? t.slideto(w + t.params.slidespergroup) : t.slideto(w)) } else { if (!t.params.shortswipes) return void t.slideto(t.activeindex); "next" === t.swipedirection && t.slideto(w + t.params.slidespergroup), "prev" === t.swipedirection && t.slideto(w) } } }, t._slideto = function(e, a) { return t.slideto(e, a, !0, !0) }, t.slideto = function(e, a, t, s) { void 0 === t && (t = !0), void 0 === e && (e = 0), e < 0 && (e = 0), t.snapindex = math.floor(e / t.params.slidespergroup), t.snapindex >= t.snapgrid.length && (t.snapindex = t.snapgrid.length - 1); var i = -t.snapgrid[t.snapindex]; if (t.params.autoplay && t.autoplaying && (s || !t.params.autoplaydisableoninteraction ? t.pauseautoplay(a) : t.stopautoplay()), t.updateprogress(i), t.params.normalizeslideindex) for (var r = 0; r < t.slidesgrid.length; r++) - math.floor(100 * i) >= math.floor(100 * t.slidesgrid[r]) && (e = r); return !(!t.params.allowswipetonext && i < t.translate && i < t.mintranslate()) && (!(!t.params.allowswipetoprev && i > t.translate && i > t.maxtranslate() && (t.activeindex || 0) !== e) && (void 0 === a && (a = t.params.speed), t.previousindex = t.activeindex || 0, t.activeindex = e, t.updaterealindex(), t.rtl && -i === t.translate || !t.rtl && i === t.translate ? (t.params.autoheight && t.updateautoheight(), t.updateclasses(), "slide" !== t.params.effect && t.setwrappertranslate(i), !1) : (t.updateclasses(), t.ontransitionstart(t), 0 === a || t.browser.lteie9 ? (t.setwrappertranslate(i), t.setwrappertransition(0), t.ontransitionend(t)) : (t.setwrappertranslate(i), t.setwrappertransition(a), t.animating || (t.animating = !0, t.wrapper.transitionend(function() { t && t.ontransitionend(t) }))), !0))) }, t.ontransitionstart = function(e) { void 0 === e && (e = !0), t.params.autoheight && t.updateautoheight(), t.lazy && t.lazy.ontransitionstart(), e && (t.emit("ontransitionstart", t), t.activeindex !== t.previousindex && (t.emit("onslidechangestart", t), t.activeindex > t.previousindex ? t.emit("onslidenextstart", t) : t.emit("onslideprevstart", t))) }, t.ontransitionend = function(e) { t.animating = !1, t.setwrappertransition(0), void 0 === e && (e = !0), t.lazy && t.lazy.ontransitionend(), e && (t.emit("ontransitionend", t), t.activeindex !== t.previousindex && (t.emit("onslidechangeend", t), t.activeindex > t.previousindex ? t.emit("onslidenextend", t) : t.emit("onslideprevend", t))), t.params.history && t.history && t.history.sethistory(t.params.history, t.activeindex), t.params.hashnav && t.hashnav && t.hashnav.sethash() }, t.slidenext = function(e, a, t) { if (t.params.loop) { if (t.animating) return !1; t.fixloop(); t.container[0].clientleft; return t.slideto(t.activeindex + t.params.slidespergroup, a, e, t) } return t.slideto(t.activeindex + t.params.slidespergroup, a, e, t) }, t._slidenext = function(e) { return t.slidenext(!0, e, !0) }, t.slideprev = function(e, a, t) { if (t.params.loop) { if (t.animating) return !1; t.fixloop(); t.container[0].clientleft; return t.slideto(t.activeindex - 1, a, e, t) } return t.slideto(t.activeindex - 1, a, e, t) }, t._slideprev = function(e) { return t.slideprev(!0, e, !0) }, t.slidereset = function(e, a, t) { return t.slideto(t.activeindex, a, e) }, t.disabletouchcontrol = function() { return t.params.onlyexternal = !0, !0 }, t.enabletouchcontrol = function() { return t.params.onlyexternal = !1, !0 }, t.setwrappertransition = function(e, a) { t.wrapper.transition(e), "slide" !== t.params.effect && t.effects[t.params.effect] && t.effects[t.params.effect].settransition(e), t.params.parallax && t.parallax && t.parallax.settransition(e), t.params.scrollbar && t.scrollbar && t.scrollbar.settransition(e), t.params.control && t.controller && t.controller.settransition(e, a), t.emit("onsettransition", t, e) }, t.setwrappertranslate = function(e, a, t) { var s = 0, i = 0; t.ishorizontal() ? s = t.rtl ? -e : e : i = e, t.params.roundlengths && (s = r(s), i = r(i)), t.params.virtualtranslate || (t.support.transforms3d ? t.wrapper.transform("translate3d(" + s + "px, " + i + "px, 0px)") : t.wrapper.transform("translate(" + s + "px, " + i + "px)")), t.translate = t.ishorizontal() ? s : i; var n, o = t.maxtranslate() - t.mintranslate(); n = 0 === o ? 0 : (e - t.mintranslate()) / o, n !== t.progress && t.updateprogress(e), a && t.updateactiveindex(), "slide" !== t.params.effect && t.effects[t.params.effect] && t.effects[t.params.effect].settranslate(t.translate), t.params.parallax && t.parallax && t.parallax.settranslate(t.translate), t.params.scrollbar && t.scrollbar && t.scrollbar.settranslate(t.translate), t.params.control && t.controller && t.controller.settranslate(t.translate, t), t.emit("onsettranslate", t, t.translate) }, t.gettranslate = function(e, a) { var t, s, i, r; return void 0 === a && (a = "x"), t.params.virtualtranslate ? t.rtl ? -t.translate : t.translate : (i = window.getcomputedstyle(e, null), window.webkitcssmatrix ? (s = i.transform || i.webkittransform, s.split(",").length > 6 && (s = s.split(", ").map(function(e) { return e.replace(",", ".") }).join(", ")), r = new window.webkitcssmatrix("none" === s ? "" : s)) : (r = i.moztransform || i.otransform || i.mstransform || i.mstransform || i.transform || i.getpropertyvalue("transform").replace("translate(", "matrix(1, 0, 0, 1,"), t = r.tostring().split(",")), "x" === a && (s = window.webkitcssmatrix ? r.m41 : 16 === t.length ? parsefloat(t[12]) : parsefloat(t[4])), "y" === a && (s = window.webkitcssmatrix ? r.m42 : 16 === t.length ? parsefloat(t[13]) : parsefloat(t[5])), t.rtl && s && (s = -s), s || 0) }, t.getwrappertranslate = function(e) { return void 0 === e && (e = t.ishorizontal() ? "x" : "y"), t.gettranslate(t.wrapper[0], e) }, t.observers = [], t.initobservers = function() { if (t.params.observeparents) for (var e = t.container.parents(), a = 0; a < e.length; a++) l(e[a]); l(t.container[0], { childlist: !1 }), l(t.wrapper[0], { attributes: !1 }) }, t.disconnectobservers = function() { for (var e = 0; e < t.observers.length; e++) t.observers[e].disconnect(); t.observers = [] }, t.createloop = function() { t.wrapper.children("." + t.params.slideclass + "." + t.params.slideduplicateclass).remove(); var a = t.wrapper.children("." + t.params.slideclass); "auto" !== t.params.slidesperview || t.params.loopedslides || (t.params.loopedslides = a.length), t.loopedslides = parseint(t.params.loopedslides || t.params.slidesperview, 10), t.loopedslides = t.loopedslides + t.params.loopadditionalslides, t.loopedslides > a.length && (t.loopedslides = a.length); var t, s = [], i = []; for (a.each(function(t, r) { var n = e(this); t < t.loopedslides && i.push(r), t < a.length && t >= a.length - t.loopedslides && s.push(r), n.attr("data-swiper-slide-index", t) }), t = 0; t < i.length; t++) t.wrapper.append(e(i[t].clonenode(!0)).addclass(t.params.slideduplicateclass)); for (t = s.length - 1; t >= 0; t--) t.wrapper.prepend(e(s[t].clonenode(!0)).addclass(t.params.slideduplicateclass)) }, t.destroyloop = function() { t.wrapper.children("." + t.params.slideclass + "." + t.params.slideduplicateclass).remove(), t.slides.removeattr("data-swiper-slide-index") }, t.reloop = function(e) { var a = t.activeindex - t.loopedslides; t.destroyloop(), t.createloop(), t.updateslidessize(), e && t.slideto(a + t.loopedslides, 0, !1) }, t.fixloop = function() { var e; t.activeindex < t.loopedslides ? (e = t.slides.length - 3 * t.loopedslides + t.activeindex, e += t.loopedslides, t.slideto(e, 0, !1, !0)) : ("auto" === t.params.slidesperview && t.activeindex >= 2 * t.loopedslides || t.activeindex > t.slides.length - 2 * t.params.slidesperview) && (e = -t.slides.length + t.activeindex + t.loopedslides, e += t.loopedslides, t.slideto(e, 0, !1, !0)) }, t.appendslide = function(e) { if (t.params.loop && t.destroyloop(), "object" == typeof e && e.length) for (var a = 0; a < e.length; a++) e[a] && t.wrapper.append(e[a]); else t.wrapper.append(e); t.params.loop && t.createloop(), t.params.observer && t.support.observer || t.update(!0) }, t.prependslide = function(e) { t.params.loop && t.destroyloop(); var a = t.activeindex + 1; if ("object" == typeof e && e.length) { for (var t = 0; t < e.length; t++) e[t] && t.wrapper.prepend(e[t]); a = t.activeindex + e.length } else t.wrapper.prepend(e); t.params.loop && t.createloop(), t.params.observer && t.support.observer || t.update(!0), t.slideto(a, 0, !1) }, t.removeslide = function(e) { t.params.loop && (t.destroyloop(), t.slides = t.wrapper.children("." + t.params.slideclass)); var a, t = t.activeindex; if ("object" == typeof e && e.length) { for (var s = 0; s < e.length; s++) a = e[s], t.slides[a] && t.slides.eq(a).remove(), a < t && t--; t = math.max(t, 0) } else a = e, t.slides[a] && t.slides.eq(a).remove(), a < t && t--, t = math.max(t, 0); t.params.loop && t.createloop(), t.params.observer && t.support.observer || t.update(!0), t.params.loop ? t.slideto(t + t.loopedslides, 0, !1) : t.slideto(t, 0, !1) }, t.removeallslides = function() { for (var e = [], a = 0; a < t.slides.length; a++) e.push(a); t.removeslide(e) }, t.effects = { fade: { settranslate: function() { for (var e = 0; e < t.slides.length; e++) { var a = t.slides.eq(e), t = a[0].swiperslideoffset, s = -t; t.params.virtualtranslate || (s -= t.translate); var i = 0; t.ishorizontal() || (i = s, s = 0); var r = t.params.fade.crossfade ? math.max(1 - math.abs(a[0].progress), 0) : 1 + math.min(math.max(a[0].progress, -1), 0); a.css({ opacity: r }).transform("translate3d(" + s + "px, " + i + "px, 0px)") } }, settransition: function(e) { if (t.slides.transition(e), t.params.virtualtranslate && 0 !== e) { var a = !1; t.slides.transitionend(function() { if (!a && t) { a = !0, t.animating = !1; for (var e = ["webkittransitionend", "transitionend", "otransitionend", "mstransitionend", "mstransitionend"], t = 0; t < e.length; t++) t.wrapper.trigger(e[t]) } }) } } }, flip: { settranslate: function() { for (var a = 0; a < t.slides.length; a++) { var t = t.slides.eq(a), s = t[0].progress; t.params.flip.limitrotation && (s = math.max(math.min(t[0].progress, 1), -1)); var i = t[0].swiperslideoffset, r = -180 * s, n = r, o = 0, l = -i, p = 0; if (t.ishorizontal() ? t.rtl && (n = -n) : (p = l, l = 0, o = -n, n = 0), t[0].style.zindex = -math.abs(math.round(s)) + t.slides.length, t.params.flip.slideshadows) { var d = t.ishorizontal() ? t.find(".swiper-slide-shadow-left") : t.find(".swiper-slide-shadow-top"), u = t.ishorizontal() ? t.find(".swiper-slide-shadow-right") : t.find(".swiper-slide-shadow-bottom"); 0 === d.length && (d = e('
'), t.append(d)), 0 === u.length && (u = e('
'), t.append(u)), d.length && (d[0].style.opacity = math.max(-s, 0)), u.length && (u[0].style.opacity = math.max(s, 0)) } t.transform("translate3d(" + l + "px, " + p + "px, 0px) rotatex(" + o + "deg) rotatey(" + n + "deg)") } }, settransition: function(a) { if (t.slides.transition(a).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(a), t.params.virtualtranslate && 0 !== a) { var t = !1; t.slides.eq(t.activeindex).transitionend(function() { if (!t && t && e(this).hasclass(t.params.slideactiveclass)) { t = !0, t.animating = !1; for (var a = ["webkittransitionend", "transitionend", "otransitionend", "mstransitionend", "mstransitionend"], s = 0; s < a.length; s++) t.wrapper.trigger(a[s]) } }) } } }, cube: { settranslate: function() { var a, t = 0; t.params.cube.shadow && (t.ishorizontal() ? (a = t.wrapper.find(".swiper-cube-shadow"), 0 === a.length && (a = e('
'), t.wrapper.append(a)), a.css({ height: t.width + "px" })) : (a = t.container.find(".swiper-cube-shadow"), 0 === a.length && (a = e('
'), t.container.append(a)))); for (var s = 0; s < t.slides.length; s++) { var i = t.slides.eq(s), r = 90 * s, n = math.floor(r / 360); t.rtl && (r = -r, n = math.floor(-r / 360)); var o = math.max(math.min(i[0].progress, 1), -1), l = 0, p = 0, d = 0; s % 4 == 0 ? (l = 4 * -n * t.size, d = 0) : (s - 1) % 4 == 0 ? (l = 0, d = 4 * -n * t.size) : (s - 2) % 4 == 0 ? (l = t.size + 4 * n * t.size, d = t.size) : (s - 3) % 4 == 0 && (l = -t.size, d = 3 * t.size + 4 * t.size * n), t.rtl && (l = -l), t.ishorizontal() || (p = l, l = 0); var u = "rotatex(" + (t.ishorizontal() ? 0 : -r) + "deg) rotatey(" + (t.ishorizontal() ? r : 0) + "deg) translate3d(" + l + "px, " + p + "px, " + d + "px)"; if (o <= 1 && o > -1 && (t = 90 * s + 90 * o, t.rtl && (t = 90 * -s - 90 * o)), i.transform(u), t.params.cube.slideshadows) { var c = t.ishorizontal() ? i.find(".swiper-slide-shadow-left") : i.find(".swiper-slide-shadow-top"), m = t.ishorizontal() ? i.find(".swiper-slide-shadow-right") : i.find(".swiper-slide-shadow-bottom"); 0 === c.length && (c = e('
'), i.append(c)), 0 === m.length && (m = e('
'), i.append(m)), c.length && (c[0].style.opacity = math.max(-o, 0)), m.length && (m[0].style.opacity = math.max(o, 0)) } } if (t.wrapper.css({ "-webkit-transform-origin": "50% 50% -" + t.size / 2 + "px", "-moz-transform-origin": "50% 50% -" + t.size / 2 + "px", "-ms-transform-origin": "50% 50% -" + t.size / 2 + "px", "transform-origin": "50% 50% -" + t.size / 2 + "px" }), t.params.cube.shadow) if (t.ishorizontal()) a.transform("translate3d(0px, " + (t.width / 2 + t.params.cube.shadowoffset) + "px, " + -t.width / 2 + "px) rotatex(90deg) rotatez(0deg) scale(" + t.params.cube.shadowscale + ")"); else { var h = math.abs(t) - 90 * math.floor(math.abs(t) / 90), g = 1.5 - (math.sin(2 * h * math.pi / 360) / 2 + math.cos(2 * h * math.pi / 360) / 2), f = t.params.cube.shadowscale, v = t.params.cube.shadowscale / g, w = t.params.cube.shadowoffset; a.transform("scale3d(" + f + ", 1, " + v + ") translate3d(0px, " + (t.height / 2 + w) + "px, " + -t.height / 2 / v + "px) rotatex(-90deg)") } var y = t.issafari || t.isuiwebview ? -t.size / 2 : 0; t.wrapper.transform("translate3d(0px,0," + y + "px) rotatex(" + (t.ishorizontal() ? 0 : t) + "deg) rotatey(" + (t.ishorizontal() ? -t : 0) + "deg)") }, settransition: function(e) { t.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e), t.params.cube.shadow && !t.ishorizontal() && t.container.find(".swiper-cube-shadow").transition(e) } }, coverflow: { settranslate: function() { for (var a = t.translate, t = t.ishorizontal() ? -a + t.width / 2 : -a + t.height / 2, s = t.ishorizontal() ? t.params.coverflow.rotate : -t.params.coverflow.rotate, i = t.params.coverflow.depth, r = 0, n = t.slides.length; r < n; r++) { var o = t.slides.eq(r), l = t.slidessizesgrid[r], p = o[0].swiperslideoffset, d = (t - p - l / 2) / l * t.params.coverflow.modifier, u = t.ishorizontal() ? s * d : 0, c = t.ishorizontal() ? 0 : s * d, m = -i * math.abs(d), h = t.ishorizontal() ? 0 : t.params.coverflow.stretch * d, g = t.ishorizontal() ? t.params.coverflow.stretch * d : 0; math.abs(g) < .001 && (g = 0), math.abs(h) < .001 && (h = 0), math.abs(m) < .001 && (m = 0), math.abs(u) < .001 && (u = 0), math.abs(c) < .001 && (c = 0); var f = "translate3d(" + g + "px," + h + "px," + m + "px) rotatex(" + c + "deg) rotatey(" + u + "deg)"; if (o.transform(f), o[0].style.zindex = 1 - math.abs(math.round(d)), t.params.coverflow.slideshadows) { var v = t.ishorizontal() ? o.find(".swiper-slide-shadow-left") : o.find(".swiper-slide-shadow-top"), w = t.ishorizontal() ? o.find(".swiper-slide-shadow-right") : o.find(".swiper-slide-shadow-bottom"); 0 === v.length && (v = e('
'), o.append(v)), 0 === w.length && (w = e('
'), o.append(w)), v.length && (v[0].style.opacity = d > 0 ? d : 0), w.length && (w[0].style.opacity = -d > 0 ? -d : 0) } } if (t.browser.ie) { t.wrapper[0].style.perspectiveorigin = t + "px 50%" } }, settransition: function(e) { t.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e) } } }, t.lazy = { initialimageloaded: !1, loadimageinslide: function(a, t) { if (void 0 !== a && (void 0 === t && (t = !0), 0 !== t.slides.length)) { var s = t.slides.eq(a), i = s.find("." + t.params.lazyloadingclass + ":not(." + t.params.lazystatusloadedclass + "):not(." + t.params.lazystatusloadingclass + ")"); !s.hasclass(t.params.lazyloadingclass) || s.hasclass(t.params.lazystatusloadedclass) || s.hasclass(t.params.lazystatusloadingclass) || (i = i.add(s[0])), 0 !== i.length && i.each(function() { var a = e(this); a.addclass(t.params.lazystatusloadingclass); var i = a.attr("data-background"), r = a.attr("data-src"), n = a.attr("data-srcset"), o = a.attr("data-sizes"); t.loadimage(a[0], r || i, n, o, !1, function() { if (void 0 !== t && null !== t && t) { if (i ? (a.css("background-image", 'url("' + i + '")'), a.removeattr("data-background")) : (n && (a.attr("srcset", n), a.removeattr("data-srcset")), o && (a.attr("sizes", o), a.removeattr("data-sizes")), r && (a.attr("src", r), a.removeattr("data-src"))), a.addclass(t.params.lazystatusloadedclass).removeclass(t.params.lazystatusloadingclass), s.find("." + t.params.lazypreloaderclass + ", ." + t.params.preloaderclass).remove(), t.params.loop && t) { var e = s.attr("data-swiper-slide-index"); if (s.hasclass(t.params.slideduplicateclass)) { var l = t.wrapper.children('[data-swiper-slide-index="' + e + '"]:not(.' + t.params.slideduplicateclass + ")"); t.lazy.loadimageinslide(l.index(), !1) } else { var p = t.wrapper.children("." + t.params.slideduplicateclass + '[data-swiper-slide-index="' + e + '"]'); t.lazy.loadimageinslide(p.index(), !1) } } t.emit("onlazyimageready", t, s[0], a[0]) } }), t.emit("onlazyimageload", t, s[0], a[0]) }) } }, load: function() { var a, t = t.params.slidesperview; if ("auto" === t && (t = 0), t.lazy.initialimageloaded || (t.lazy.initialimageloaded = !0), t.params.watchslidesvisibility) t.wrapper.children("." + t.params.slidevisibleclass).each(function() { t.lazy.loadimageinslide(e(this).index()) }); else if (t > 1) for (a = t.activeindex; a < t.activeindex + t; a++) t.slides[a] && t.lazy.loadimageinslide(a); else t.lazy.loadimageinslide(t.activeindex); if (t.params.lazyloadinginprevnext) if (t > 1 || t.params.lazyloadinginprevnextamount && t.params.lazyloadinginprevnextamount > 1) { var s = t.params.lazyloadinginprevnextamount, i = t, r = math.min(t.activeindex + i + math.max(s, i), t.slides.length), n = math.max(t.activeindex - math.max(i, s), 0); for (a = t.activeindex + t; a < r; a++) t.slides[a] && t.lazy.loadimageinslide(a); for (a = n; a < t.activeindex; a++) t.slides[a] && t.lazy.loadimageinslide(a) } else { var o = t.wrapper.children("." + t.params.slidenextclass); o.length > 0 && t.lazy.loadimageinslide(o.index()); var l = t.wrapper.children("." + t.params.slideprevclass); l.length > 0 && t.lazy.loadimageinslide(l.index()) } }, ontransitionstart: function() { t.params.lazyloading && (t.params.lazyloadingontransitionstart || !t.params.lazyloadingontransitionstart && !t.lazy.initialimageloaded) && t.lazy.load() }, ontransitionend: function() { t.params.lazyloading && !t.params.lazyloadingontransitionstart && t.lazy.load() } }, t.scrollbar = { istouched: !1, setdragposition: function(e) { var a = t.scrollbar, t = t.ishorizontal() ? "touchstart" === e.type || "touchmove" === e.type ? e.targettouches[0].pagex : e.pagex || e.clientx : "touchstart" === e.type || "touchmove" === e.type ? e.targettouches[0].pagey : e.pagey || e.clienty, s = t - a.track.offset()[t.ishorizontal() ? "left" : "top"] - a.dragsize / 2, i = -t.mintranslate() * a.movedivider, r = -t.maxtranslate() * a.movedivider; s < i ? s = i : s > r && (s = r), s = -s / a.movedivider, t.updateprogress(s), t.setwrappertranslate(s, !0) }, dragstart: function(e) { var a = t.scrollbar; a.istouched = !0, e.preventdefault(), e.stoppropagation(), a.setdragposition(e), cleartimeout(a.dragtimeout), a.track.transition(0), t.params.scrollbarhide && a.track.css("opacity", 1), t.wrapper.transition(100), a.drag.transition(100), t.emit("onscrollbardragstart", t) }, dragmove: function(e) { var a = t.scrollbar; a.istouched && (e.preventdefault ? e.preventdefault() : e.returnvalue = !1, a.setdragposition(e), t.wrapper.transition(0), a.track.transition(0), a.drag.transition(0), t.emit("onscrollbardragmove", t)) }, dragend: function(e) { var a = t.scrollbar; a.istouched && (a.istouched = !1, t.params.scrollbarhide && (cleartimeout(a.dragtimeout), a.dragtimeout = settimeout(function() { a.track.css("opacity", 0), a.track.transition(400) }, 1e3)), t.emit("onscrollbardragend", t), t.params.scrollbarsnaponrelease && t.slidereset()) }, draggableevents: function() { return t.params.simulatetouch !== !1 || t.support.touch ? t.touchevents : t.toucheventsdesktop }(), enabledraggable: function() { var a = t.scrollbar, t = t.support.touch ? a.track : document; e(a.track).on(a.draggableevents.start, a.dragstart), e(t).on(a.draggableevents.move, a.dragmove), e(t).on(a.draggableevents.end, a.dragend) }, disabledraggable: function() { var a = t.scrollbar, t = t.support.touch ? a.track : document; e(a.track).off(a.draggableevents.start, a.dragstart), e(t).off(a.draggableevents.move, a.dragmove), e(t).off(a.draggableevents.end, a.dragend) }, set: function() { if (t.params.scrollbar) { var a = t.scrollbar; a.track = e(t.params.scrollbar), t.params.uniquenavelements && "string" == typeof t.params.scrollbar && a.track.length > 1 && 1 === t.container.find(t.params.scrollbar).length && (a.track = t.container.find(t.params.scrollbar)), a.drag = a.track.find(".swiper-scrollbar-drag"), 0 === a.drag.length && (a.drag = e('
'), a.track.append(a.drag)), a.drag[0].style.width = "", a.drag[0].style.height = "", a.tracksize = t.ishorizontal() ? a.track[0].offsetwidth : a.track[0].offsetheight, a.divider = t.size / t.virtualsize, a.movedivider = a.divider * (a.tracksize / t.size), a.dragsize = a.tracksize * a.divider, t.ishorizontal() ? a.drag[0].style.width = a.dragsize + "px" : a.drag[0].style.height = a.dragsize + "px", a.divider >= 1 ? a.track[0].style.display = "none" : a.track[0].style.display = "", t.params.scrollbarhide && (a.track[0].style.opacity = 0) } }, settranslate: function() { if (t.params.scrollbar) { var e, a = t.scrollbar, t = (t.translate, a.dragsize); e = (a.tracksize - a.dragsize) * t.progress, t.rtl && t.ishorizontal() ? (e = -e, e > 0 ? (t = a.dragsize - e, e = 0) : -e + a.dragsize > a.tracksize && (t = a.tracksize + e)) : e < 0 ? (t = a.dragsize + e, e = 0) : e + a.dragsize > a.tracksize && (t = a.tracksize - e), t.ishorizontal() ? (t.support.transforms3d ? a.drag.transform("translate3d(" + e + "px, 0, 0)") : a.drag.transform("translatex(" + e + "px)"), a.drag[0].style.width = t + "px") : (t.support.transforms3d ? a.drag.transform("translate3d(0px, " + e + "px, 0)") : a.drag.transform("translatey(" + e + "px)"), a.drag[0].style.height = t + "px"), t.params.scrollbarhide && (cleartimeout(a.timeout), a.track[0].style.opacity = 1, a.timeout = settimeout(function() { a.track[0].style.opacity = 0, a.track.transition(400) }, 1e3)) } }, settransition: function(e) { t.params.scrollbar && t.scrollbar.drag.transition(e) } }, t.controller = { linearspline: function(e, a) { var t = function() { var e, a, t; return function(s, i) { for (a = -1, e = s.length; e - a > 1;) s[t = e + a >> 1] <= i ? a = t : e = t; return e } }(); this.x = e, this.y = a, this.lastindex = e.length - 1; var s, i; this.x.length; this.interpolate = function(e) { return e ? (i = t(this.x, e), s = i - 1, (e - this.x[s]) * (this.y[i] - this.y[s]) / (this.x[i] - this.x[s]) + this.y[s]) : 0 } }, getinterpolatefunction: function(e) { t.controller.spline || (t.controller.spline = t.params.loop ? new t.controller.linearspline(t.slidesgrid, e.slidesgrid) : new t.controller.linearspline(t.snapgrid, e.snapgrid)) }, settranslate: function(e, t) { function s(a) { e = a.rtl && "horizontal" === a.params.direction ? -t.translate : t.translate, "slide" === t.params.controlby && (t.controller.getinterpolatefunction(a), r = -t.controller.spline.interpolate(-e)), r && "container" !== t.params.controlby || (i = (a.maxtranslate() - a.mintranslate()) / (t.maxtranslate() - t.mintranslate()), r = (e - t.mintranslate()) * i + a.mintranslate()), t.params.controlinverse && (r = a.maxtranslate() - r), a.updateprogress(r), a.setwrappertranslate(r, !1, t), a.updateactiveindex() } var i, r, n = t.params.control; if (array.isarray(n)) for (var o = 0; o < n.length; o++) n[o] !== t && n[o] instanceof a && s(n[o]); else n instanceof a && t !== n && s(n) }, settransition: function(e, t) { function s(a) { a.setwrappertransition(e, t), 0 !== e && (a.ontransitionstart(), a.wrapper.transitionend(function() { r && (a.params.loop && "slide" === t.params.controlby && a.fixloop(), a.ontransitionend()) })) } var i, r = t.params.control; if (array.isarray(r)) for (i = 0; i < r.length; i++) r[i] !== t && r[i] instanceof a && s(r[i]); else r instanceof a && t !== r && s(r) } }, t.hashnav = { onhashcange: function(e, a) { var t = document.location.hash.replace("#", ""); t !== t.slides.eq(t.activeindex).attr("data-hash") && t.slideto(t.wrapper.children("." + t.params.slideclass + '[data-hash="' + t + '"]').index()) }, attachevents: function(a) { var t = a ? "off" : "on"; e(window)[t]("hashchange", t.hashnav.onhashcange) }, sethash: function() { if (t.hashnav.initialized && t.params.hashnav) if (t.params.replacestate && window.history && window.history.replacestate) window.history.replacestate(null, null, "#" + t.slides.eq(t.activeindex).attr("data-hash") || ""); else { var e = t.slides.eq(t.activeindex), a = e.attr("data-hash") || e.attr("data-history"); document.location.hash = a || "" } }, init: function() { if (t.params.hashnav && !t.params.history) { t.hashnav.initialized = !0; var e = document.location.hash.replace("#", ""); if (e) for (var a = 0, t = t.slides.length; a < t; a++) { var s = t.slides.eq(a), i = s.attr("data-hash") || s.attr("data-history"); if (i === e && !s.hasclass(t.params.slideduplicateclass)) { var r = s.index(); t.slideto(r, 0, t.params.runcallbacksoninit, !0) } } t.params.hashnavwatchstate && t.hashnav.attachevents() } }, destroy: function() { t.params.hashnavwatchstate && t.hashnav.attachevents(!0) } }, t.history = { init: function() { if (t.params.history) { if (!window.history || !window.history.pushstate) return t.params.history = !1, void(t.params.hashnav = !0); t.history.initialized = !0, this.paths = this.getpathvalues(), (this.paths.key || this.paths.value) && (this.scrolltoslide(0, this.paths.value, t.params.runcallbacksoninit), t.params.replacestate || window.addeventlistener("popstate", this.sethistorypopstate)) } }, sethistorypopstate: function() { t.history.paths = t.history.getpathvalues(), t.history.scrolltoslide(t.params.speed, t.history.paths.value, !1) }, getpathvalues: function() { var e = window.location.pathname.slice(1).split("/"), a = e.length; return { key: e[a - 2], value: e[a - 1] } }, sethistory: function(e, a) { if (t.history.initialized && t.params.history) { var t = t.slides.eq(a), s = this.slugify(t.attr("data-history")); window.location.pathname.includes(e) || (s = e + "/" + s), t.params.replacestate ? window.history.replacestate(null, null, s) : window.history.pushstate(null, null, s) } }, slugify: function(e) { return e.tostring().tolowercase().replace(/\s+/g, "-").replace(/[^\w\-]+/g, "").replace(/\-\-+/g, "-").replace(/^-+/, "").replace(/-+$/, "") }, scrolltoslide: function(e, a, t) { if (a) for (var s = 0, i = t.slides.length; s < i; s++) { var r = t.slides.eq(s), n = this.slugify(r.attr("data-history")); if (n === a && !r.hasclass(t.params.slideduplicateclass)) { var o = r.index(); t.slideto(o, e, t) } } else t.slideto(0, e, t) } }, t.disablekeyboardcontrol = function() { t.params.keyboardcontrol = !1, e(document).off("keydown", p) }, t.enablekeyboardcontrol = function() { t.params.keyboardcontrol = !0, e(document).on("keydown", p) }, t.mousewheel = { event: !1, lastscrolltime: (new window.date).gettime() }, t.params.mousewheelcontrol && (t.mousewheel.event = navigator.useragent.indexof("firefox") > -1 ? "dommousescroll" : function() { var e = "onwheel" in document; if (!e) { var a = document.createelement("div"); a.setattribute("onwheel", "return;"), e = "function" == typeof a.onwheel } return !e && document.implementation && document.implementation.hasfeature && document.implementation.hasfeature("", "") !== !0 && (e = document.implementation.hasfeature("events.wheel", "3.0")), e }() ? "wheel" : "mousewheel"), t.disablemousewheelcontrol = function() { if (!t.mousewheel.event) return !1; var a = t.container; return "container" !== t.params.mousewheeleventstarged && (a = e(t.params.mousewheeleventstarged)), a.off(t.mousewheel.event, u), t.params.mousewheelcontrol = !1, !0 }, t.enablemousewheelcontrol = function() { if (!t.mousewheel.event) return !1; var a = t.container; return "container" !== t.params.mousewheeleventstarged && (a = e(t.params.mousewheeleventstarged)), a.on(t.mousewheel.event, u), t.params.mousewheelcontrol = !0, !0 }, t.parallax = { settranslate: function() { t.container.children("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function() { c(this, t.progress) }), t.slides.each(function() { var a = e(this); a.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function() { c(this, math.min(math.max(a[0].progress, -1), 1)) }) }) }, settransition: function(a) { void 0 === a && (a = t.params.speed), t.container.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function() { var t = e(this), s = parseint(t.attr("data-swiper-parallax-duration"), 10) || a; 0 === a && (s = 0), t.transition(s) }) } }, t.zoom = { scale: 1, currentscale: 1, isscaling: !1, gesture: { slide: void 0, slidewidth: void 0, slideheight: void 0, image: void 0, imagewrap: void 0, zoommax: t.params.zoommax }, image: { istouched: void 0, ismoved: void 0, currentx: void 0, currenty: void 0, minx: void 0, miny: void 0, maxx: void 0, maxy: void 0, width: void 0, height: void 0, startx: void 0, starty: void 0, touchesstart: {}, touchescurrent: {} }, velocity: { x: void 0, y: void 0, prevpositionx: void 0, prevpositiony: void 0, prevtime: void 0 }, getdistancebetweentouches: function(e) { if (e.targettouches.length < 2) return 1; var a = e.targettouches[0].pagex, t = e.targettouches[0].pagey, s = e.targettouches[1].pagex, i = e.targettouches[1].pagey; return math.sqrt(math.pow(s - a, 2) + math.pow(i - t, 2)) }, ongesturestart: function(a) { var t = t.zoom; if (!t.support.gestures) { if ("touchstart" !== a.type || "touchstart" === a.type && a.targettouches.length < 2) return; t.gesture.scalestart = t.getdistancebetweentouches(a) } if (!(t.gesture.slide && t.gesture.slide.length || (t.gesture.slide = e(this), 0 === t.gesture.slide.length && (t.gesture.slide = t.slides.eq(t.activeindex)), t.gesture.image = t.gesture.slide.find("img, svg, canvas"), t.gesture.imagewrap = t.gesture.image.parent("." + t.params.zoomcontainerclass), t.gesture.zoommax = t.gesture.imagewrap.attr("data-swiper-zoom") || t.params.zoommax, 0 !== t.gesture.imagewrap.length))) return void(t.gesture.image = void 0); t.gesture.image.transition(0), t.isscaling = !0 }, ongesturechange: function(e) { var a = t.zoom; if (!t.support.gestures) { if ("touchmove" !== e.type || "touchmove" === e.type && e.targettouches.length < 2) return; a.gesture.scalemove = a.getdistancebetweentouches(e) } a.gesture.image && 0 !== a.gesture.image.length && (t.support.gestures ? a.scale = e.scale * a.currentscale : a.scale = a.gesture.scalemove / a.gesture.scalestart * a.currentscale, a.scale > a.gesture.zoommax && (a.scale = a.gesture.zoommax - 1 + math.pow(a.scale - a.gesture.zoommax + 1, .5)), a.scale < t.params.zoommin && (a.scale = t.params.zoommin + 1 - math.pow(t.params.zoommin - a.scale + 1, .5)), a.gesture.image.transform("translate3d(0,0,0) scale(" + a.scale + ")")) }, ongestureend: function(e) { var a = t.zoom; !t.support.gestures && ("touchend" !== e.type || "touchend" === e.type && e.changedtouches.length < 2) || a.gesture.image && 0 !== a.gesture.image.length && (a.scale = math.max(math.min(a.scale, a.gesture.zoommax), t.params.zoommin), a.gesture.image.transition(t.params.speed).transform("translate3d(0,0,0) scale(" + a.scale + ")"), a.currentscale = a.scale, a.isscaling = !1, 1 === a.scale && (a.gesture.slide = void 0)) }, ontouchstart: function(e, a) { var t = e.zoom; t.gesture.image && 0 !== t.gesture.image.length && (t.image.istouched || ("android" === e.device.os && a.preventdefault(), t.image.istouched = !0, t.image.touchesstart.x = "touchstart" === a.type ? a.targettouches[0].pagex : a.pagex, t.image.touchesstart.y = "touchstart" === a.type ? a.targettouches[0].pagey : a.pagey)) }, ontouchmove: function(e) { var a = t.zoom; if (a.gesture.image && 0 !== a.gesture.image.length && (t.allowclick = !1, a.image.istouched && a.gesture.slide)) { a.image.ismoved || (a.image.width = a.gesture.image[0].offsetwidth, a.image.height = a.gesture.image[0].offsetheight, a.image.startx = t.gettranslate(a.gesture.imagewrap[0], "x") || 0, a.image.starty = t.gettranslate(a.gesture.imagewrap[0], "y") || 0, a.gesture.slidewidth = a.gesture.slide[0].offsetwidth, a.gesture.slideheight = a.gesture.slide[0].offsetheight, a.gesture.imagewrap.transition(0), t.rtl && (a.image.startx = -a.image.startx), t.rtl && (a.image.starty = -a.image.starty)); var t = a.image.width * a.scale, s = a.image.height * a.scale; if (!(t < a.gesture.slidewidth && s < a.gesture.slideheight)) { if (a.image.minx = math.min(a.gesture.slidewidth / 2 - t / 2, 0), a.image.maxx = -a.image.minx, a.image.miny = math.min(a.gesture.slideheight / 2 - s / 2, 0), a.image.maxy = -a.image.miny, a.image.touchescurrent.x = "touchmove" === e.type ? e.targettouches[0].pagex : e.pagex, a.image.touchescurrent.y = "touchmove" === e.type ? e.targettouches[0].pagey : e.pagey, !a.image.ismoved && !a.isscaling) { if (t.ishorizontal() && math.floor(a.image.minx) === math.floor(a.image.startx) && a.image.touchescurrent.x < a.image.touchesstart.x || math.floor(a.image.maxx) === math.floor(a.image.startx) && a.image.touchescurrent.x > a.image.touchesstart.x) return void(a.image.istouched = !1); if (!t.ishorizontal() && math.floor(a.image.miny) === math.floor(a.image.starty) && a.image.touchescurrent.y < a.image.touchesstart.y || math.floor(a.image.maxy) === math.floor(a.image.starty) && a.image.touchescurrent.y > a.image.touchesstart.y) return void(a.image.istouched = !1) } e.preventdefault(), e.stoppropagation(), a.image.ismoved = !0, a.image.currentx = a.image.touchescurrent.x - a.image.touchesstart.x + a.image.startx, a.image.currenty = a.image.touchescurrent.y - a.image.touchesstart.y + a.image.starty, a.image.currentx < a.image.minx && (a.image.currentx = a.image.minx + 1 - math.pow(a.image.minx - a.image.currentx + 1, .8)), a.image.currentx > a.image.maxx && (a.image.currentx = a.image.maxx - 1 + math.pow(a.image.currentx - a.image.maxx + 1, .8)), a.image.currenty < a.image.miny && (a.image.currenty = a.image.miny + 1 - math.pow(a.image.miny - a.image.currenty + 1, .8)), a.image.currenty > a.image.maxy && (a.image.currenty = a.image.maxy - 1 + math.pow(a.image.currenty - a.image.maxy + 1, .8)), a.velocity.prevpositionx || (a.velocity.prevpositionx = a.image.touchescurrent.x), a.velocity.prevpositiony || (a.velocity.prevpositiony = a.image.touchescurrent.y), a.velocity.prevtime || (a.velocity.prevtime = date.now()), a.velocity.x = (a.image.touchescurrent.x - a.velocity.prevpositionx) / (date.now() - a.velocity.prevtime) / 2, a.velocity.y = (a.image.touchescurrent.y - a.velocity.prevpositiony) / (date.now() - a.velocity.prevtime) / 2, math.abs(a.image.touchescurrent.x - a.velocity.prevpositionx) < 2 && (a.velocity.x = 0), math.abs(a.image.touchescurrent.y - a.velocity.prevpositiony) < 2 && (a.velocity.y = 0), a.velocity.prevpositionx = a.image.touchescurrent.x, a.velocity.prevpositiony = a.image.touchescurrent.y, a.velocity.prevtime = date.now(), a.gesture.imagewrap.transform("translate3d(" + a.image.currentx + "px, " + a.image.currenty + "px,0)") } } }, ontouchend: function(e, a) { var t = e.zoom; if (t.gesture.image && 0 !== t.gesture.image.length) { if (!t.image.istouched || !t.image.ismoved) return t.image.istouched = !1, void(t.image.ismoved = !1); t.image.istouched = !1, t.image.ismoved = !1; var s = 300, i = 300, r = t.velocity.x * s, n = t.image.currentx + r, o = t.velocity.y * i, l = t.image.currenty + o; 0 !== t.velocity.x && (s = math.abs((n - t.image.currentx) / t.velocity.x)), 0 !== t.velocity.y && (i = math.abs((l - t.image.currenty) / t.velocity.y)); var p = math.max(s, i); t.image.currentx = n, t.image.currenty = l; var d = t.image.width * t.scale, u = t.image.height * t.scale; t.image.minx = math.min(t.gesture.slidewidth / 2 - d / 2, 0), t.image.maxx = -t.image.minx, t.image.miny = math.min(t.gesture.slideheight / 2 - u / 2, 0), t.image.maxy = -t.image.miny, t.image.currentx = math.max(math.min(t.image.currentx, t.image.maxx), t.image.minx), t.image.currenty = math.max(math.min(t.image.currenty, t.image.maxy), t.image.miny), t.gesture.imagewrap.transition(p).transform("translate3d(" + t.image.currentx + "px, " + t.image.currenty + "px,0)") } }, ontransitionend: function(e) { var a = e.zoom; a.gesture.slide && e.previousindex !== e.activeindex && (a.gesture.image.transform("translate3d(0,0,0) scale(1)"), a.gesture.imagewrap.transform("translate3d(0,0,0)"), a.gesture.slide = a.gesture.image = a.gesture.imagewrap = void 0, a.scale = a.currentscale = 1) }, togglezoom: function(a, t) { var s = a.zoom; if (s.gesture.slide || (s.gesture.slide = a.clickedslide ? e(a.clickedslide) : a.slides.eq(a.activeindex), s.gesture.image = s.gesture.slide.find("img, svg, canvas"), s.gesture.imagewrap = s.gesture.image.parent("." + a.params.zoomcontainerclass)), s.gesture.image && 0 !== s.gesture.image.length) { var i, r, n, o, l, p, d, u, c, m, h, g, f, v, w, y, x, t; void 0 === s.image.touchesstart.x && t ? (i = "touchend" === t.type ? t.changedtouches[0].pagex : t.pagex, r = "touchend" === t.type ? t.changedtouches[0].pagey : t.pagey) : (i = s.image.touchesstart.x, r = s.image.touchesstart.y), s.scale && 1 !== s.scale ? (s.scale = s.currentscale = 1, s.gesture.imagewrap.transition(300).transform("translate3d(0,0,0)"), s.gesture.image.transition(300).transform("translate3d(0,0,0) scale(1)"), s.gesture.slide = void 0) : (s.scale = s.currentscale = s.gesture.imagewrap.attr("data-swiper-zoom") || a.params.zoommax, t ? (x = s.gesture.slide[0].offsetwidth, t = s.gesture.slide[0].offsetheight, n = s.gesture.slide.offset().left, o = s.gesture.slide.offset().top, l = n + x / 2 - i, p = o + t / 2 - r, c = s.gesture.image[0].offsetwidth, m = s.gesture.image[0].offsetheight, h = c * s.scale, g = m * s.scale, f = math.min(x / 2 - h / 2, 0), v = math.min(t / 2 - g / 2, 0), w = -f, y = -v, d = l * s.scale, u = p * s.scale, d < f && (d = f), d > w && (d = w), u < v && (u = v), u > y && (u = y)) : (d = 0, u = 0), s.gesture.imagewrap.transition(300).transform("translate3d(" + d + "px, " + u + "px,0)"), s.gesture.image.transition(300).transform("translate3d(0,0,0) scale(" + s.scale + ")")) } }, attachevents: function(a) { var t = a ? "off" : "on"; if (t.params.zoom) { var s = (t.slides, !("touchstart" !== t.touchevents.start || !t.support.passivelistener || !t.params.passivelisteners) && { passive: !0, capture: !1 }); t.support.gestures ? (t.slides[t]("gesturestart", t.zoom.ongesturestart, s), t.slides[t]("gesturechange", t.zoom.ongesturechange, s), t.slides[t]("gestureend", t.zoom.ongestureend, s)) : "touchstart" === t.touchevents.start && (t.slides[t](t.touchevents.start, t.zoom.ongesturestart, s), t.slides[t](t.touchevents.move, t.zoom.ongesturechange, s), t.slides[t](t.touchevents.end, t.zoom.ongestureend, s)), t[t]("touchstart", t.zoom.ontouchstart), t.slides.each(function(a, s) { e(s).find("." + t.params.zoomcontainerclass).length > 0 && e(s)[t](t.touchevents.move, t.zoom.ontouchmove) }), t[t]("touchend", t.zoom.ontouchend), t[t]("transitionend", t.zoom.ontransitionend), t.params.zoomtoggle && t.on("doubletap", t.zoom.togglezoom) } }, init: function() { t.zoom.attachevents() }, destroy: function() { t.zoom.attachevents(!0) } }, t._plugins = []; for (var y in t.plugins) { var o = t.plugins[y](t, t.params[y]); o && t._plugins.push(o) } return t.callplugins = function(e) { for (var a = 0; a < t._plugins.length; a++) e in t._plugins[a] && t._plugins[a][e](arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]) }, t.emittereventlisteners = {}, t.emit = function(e) { t.params[e] && t.params[e](arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]); var a; if (t.emittereventlisteners[e]) for (a = 0; a < t.emittereventlisteners[e].length; a++) t.emittereventlisteners[e][a](arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]); t.callplugins && t.callplugins(e, arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]) }, t.on = function(e, a) { return e = m(e), t.emittereventlisteners[e] || (t.emittereventlisteners[e] = []), t.emittereventlisteners[e].push(a), t }, t.off = function(e, a) { var t; if (e = m(e), void 0 === a) return t.emittereventlisteners[e] = [], t; if (t.emittereventlisteners[e] && 0 !== t.emittereventlisteners[e].length) { for (t = 0; t < t.emittereventlisteners[e].length; t++) t.emittereventlisteners[e][t] === a && t.emittereventlisteners[e].splice(t, 1); return t } }, t.once = function(e, a) { e = m(e); var t = function() { a(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4]), t.off(e, t) }; return t.on(e, t), t }, t.a11y = { makefocusable: function(e) { return e.attr("tabindex", "0"), e }, addrole: function(e, a) { return e.attr("role", a), e }, addlabel: function(e, a) { return e.attr("aria-label", a), e }, disable: function(e) { return e.attr("aria-disabled", !0), e }, enable: function(e) { return e.attr("aria-disabled", !1), e }, onenterkey: function(a) { 13 === a.keycode && (e(a.target).is(t.params.nextbutton) ? (t.onclicknext(a), t.isend ? t.a11y.notify(t.params.lastslidemessage) : t.a11y.notify(t.params.nextslidemessage)) : e(a.target).is(t.params.prevbutton) && (t.onclickprev(a), t.isbeginning ? t.a11y.notify(t.params.firstslidemessage) : t.a11y.notify(t.params.prevslidemessage)), e(a.target).is("." + t.params.bulletclass) && e(a.target)[0].click()) }, liveregion: e(''), notify: function(e) { var a = t.a11y.liveregion; 0 !== a.length && (a.html(""), a.html(e)) }, init: function() { t.params.nextbutton && t.nextbutton && t.nextbutton.length > 0 && (t.a11y.makefocusable(t.nextbutton), t.a11y.addrole(t.nextbutton, "button"), t.a11y.addlabel(t.nextbutton, t.params.nextslidemessage)), t.params.prevbutton && t.prevbutton && t.prevbutton.length > 0 && (t.a11y.makefocusable(t.prevbutton), t.a11y.addrole(t.prevbutton, "button"), t.a11y.addlabel(t.prevbutton, t.params.prevslidemessage)), e(t.container).append(t.a11y.liveregion) }, initpagination: function() { t.params.pagination && t.params.paginationclickable && t.bullets && t.bullets.length && t.bullets.each(function() { var a = e(this); t.a11y.makefocusable(a), t.a11y.addrole(a, "button"), t.a11y.addlabel(a, t.params.paginationbulletmessage.replace(/{{index}}/, a.index() + 1)) }) }, destroy: function() { t.a11y.liveregion && t.a11y.liveregion.length > 0 && t.a11y.liveregion.remove() } }, t.init = function() { t.params.loop && t.createloop(), t.updatecontainersize(), t.updateslidessize(), t.updatepagination(), t.params.scrollbar && t.scrollbar && (t.scrollbar.set(), t.params.scrollbardraggable && t.scrollbar.enabledraggable()), "slide" !== t.params.effect && t.effects[t.params.effect] && (t.params.loop || t.updateprogress(), t.effects[t.params.effect].settranslate()), t.params.loop ? t.slideto(t.params.initialslide + t.loopedslides, 0, t.params.runcallbacksoninit) : (t.slideto(t.params.initialslide, 0, t.params.runcallbacksoninit), 0 === t.params.initialslide && (t.parallax && t.params.parallax && t.parallax.settranslate(), t.lazy && t.params.lazyloading && (t.lazy.load(), t.lazy.initialimageloaded = !0))), t.attachevents(), t.params.observer && t.support.observer && t.initobservers(), t.params.preloadimages && !t.params.lazyloading && t.preloadimages(), t.params.zoom && t.zoom && t.zoom.init(), t.params.autoplay && t.startautoplay(), t.params.keyboardcontrol && t.enablekeyboardcontrol && t.enablekeyboardcontrol(), t.params.mousewheelcontrol && t.enablemousewheelcontrol && t.enablemousewheelcontrol(), t.params.hashnavreplacestate && (t.params.replacestate = t.params.hashnavreplacestate), t.params.history && t.history && t.history.init(), t.params.hashnav && t.hashnav && t.hashnav.init(), t.params.a11y && t.a11y && t.a11y.init(), t.emit("oninit", t) }, t.cleanupstyles = function() { t.container.removeclass(t.classnames.join(" ")).removeattr("style"), t.wrapper.removeattr("style"), t.slides && t.slides.length && t.slides.removeclass([t.params.slidevisibleclass, t.params.slideactiveclass, t.params.slidenextclass, t.params.slideprevclass].join(" ")).removeattr("style").removeattr("data-swiper-column").removeattr("data-swiper-row"), t.paginationcontainer && t.paginationcontainer.length && t.paginationcontainer.removeclass(t.params.paginationhiddenclass), t.bullets && t.bullets.length && t.bullets.removeclass(t.params.bulletactiveclass), t.params.prevbutton && e(t.params.prevbutton).removeclass(t.params.buttondisabledclass), t.params.nextbutton && e(t.params.nextbutton).removeclass(t.params.buttondisabledclass), t.params.scrollbar && t.scrollbar && (t.scrollbar.track && t.scrollbar.track.length && t.scrollbar.track.removeattr("style"), t.scrollbar.drag && t.scrollbar.drag.length && t.scrollbar.drag.removeattr("style")) }, t.destroy = function(e, a) { t.detachevents(), t.stopautoplay(), t.params.scrollbar && t.scrollbar && t.params.scrollbardraggable && t.scrollbar.disabledraggable(), t.params.loop && t.destroyloop(), a && t.cleanupstyles(), t.disconnectobservers(), t.params.zoom && t.zoom && t.zoom.destroy(), t.params.keyboardcontrol && t.disablekeyboardcontrol && t.disablekeyboardcontrol(), t.params.mousewheelcontrol && t.disablemousewheelcontrol && t.disablemousewheelcontrol(), t.params.a11y && t.a11y && t.a11y.destroy(), t.params.history && !t.params.replacestate && window.removeeventlistener("popstate", t.history.sethistorypopstate), t.params.hashnav && t.hashnav && t.hashnav.destroy(), t.emit("ondestroy"), e !== !1 && (t = null) }, t.init(), t } }; a.prototype = { issafari: function() { var e = window.navigator.useragent.tolowercase(); return e.indexof("safari") >= 0 && e.indexof("chrome") < 0 && e.indexof("android") < 0 }(), isuiwebview: /(iphone|ipod|ipad).*applewebkit(?!.*safari)/i.test(window.navigator.useragent), isarray: function(e) { return "[object array]" === object.prototype.tostring.apply(e) }, browser: { ie: window.navigator.pointerenabled || window.navigator.mspointerenabled, ietouch: window.navigator.mspointerenabled && window.navigator.msmaxtouchpoints > 1 || window.navigator.pointerenabled && window.navigator.maxtouchpoints > 1, lteie9: function() { var e = document.createelement("div"); return e.innerhtml = "", 1 === e.getelementsbytagname("i").length }() }, device: function() { var e = window.navigator.useragent, a = e.match(/(android);?[\s\/]+([\d.]+)?/), t = e.match(/(ipad).*os\s([\d_]+)/), s = e.match(/(ipod)(.*os\s([\d_]+))?/), i = !t && e.match(/(iphone\sos|ios)\s([\d_]+)/); return { ios: t || i || s, android: a } }(), support: { touch: window.modernizr && modernizr.touch === !0 || function() { return !!("ontouchstart" in window || window.documenttouch && document instanceof documenttouch) }(), transforms3d: window.modernizr && modernizr.csstransforms3d === !0 || function() { var e = document.createelement("div").style; return "webkitperspective" in e || "mozperspective" in e || "operspective" in e || "msperspective" in e || "perspective" in e }(), flexbox: function() { for (var e = document.createelement("div").style, a = "alignitems webkitalignitems webkitboxalign msflexalign mozboxalign webkitflexdirection msflexdirection mozboxdirection mozboxorient webkitboxdirection webkitboxorient".split(" "), t = 0; t < a.length; t++) if (a[t] in e) return !0 }(), observer: function() { return "mutationobserver" in window || "webkitmutationobserver" in window }(), passivelistener: function() { var e = !1; try { var a = object.defineproperty({}, "passive", { get: function() { e = !0 } }); window.addeventlistener("testpassivelistener", null, a) } catch (e) {} return e }(), gestures: function() { return "ongesturestart" in window }() }, plugins: {} }; for (var t = (function() { var e = function(e) { var a = this, t = 0; for (t = 0; t < e.length; t++) a[t] = e[t]; return a.length = e.length, this }, a = function(a, t) { var s = [], i = 0; if (a && !t && a instanceof e) return a; if (a) if ("string" == typeof a) { var r, n, o = a.trim(); if (o.indexof("<") >= 0 && o.indexof(">") >= 0) { var l = "div"; for (0 === o.indexof(":~]/) ? (t || document).queryselectorall(a) : [document.getelementbyid(a.split("#")[1])], i = 0; i < r.length; i++) r[i] && s.push(r[i]) } else if (a.nodetype || a === window || a === document) s.push(a); else if (a.length > 0 && a[0].nodetype) for (i = 0; i < a.length; i++) s.push(a[i]); return new e(s) }; return e.prototype = { addclass: function(e) { if (void 0 === e) return this; for (var a = e.split(" "), t = 0; t < a.length; t++) for (var s = 0; s < this.length; s++) this[s].classlist.add(a[t]); return this }, removeclass: function(e) { for (var a = e.split(" "), t = 0; t < a.length; t++) for (var s = 0; s < this.length; s++) this[s].classlist.remove(a[t]); return this }, hasclass: function(e) { return !!this[0] && this[0].classlist.contains(e) }, toggleclass: function(e) { for (var a = e.split(" "), t = 0; t < a.length; t++) for (var s = 0; s < this.length; s++) this[s].classlist.toggle(a[t]); return this }, attr: function(e, a) { if (1 === arguments.length && "string" == typeof e) return this[0] ? this[0].getattribute(e) : void 0; for (var t = 0; t < this.length; t++) if (2 === arguments.length) this[t].setattribute(e, a); else for (var s in e) this[t][s] = e[s], this[t].setattribute(s, e[s]); return this }, removeattr: function(e) { for (var a = 0; a < this.length; a++) this[a].removeattribute(e); return this }, data: function(e, a) { if (void 0 !== a) { for (var t = 0; t < this.length; t++) { var s = this[t]; s.dom7elementdatastorage || (s.dom7elementdatastorage = {}), s.dom7elementdatastorage[e] = a } return this } if (this[0]) { var i = this[0].getattribute("data-" + e); return i ? i : this[0].dom7elementdatastorage && e in this[0].dom7elementdatastorage ? this[0].dom7elementdatastorage[e] : void 0 } }, transform: function(e) { for (var a = 0; a < this.length; a++) { var t = this[a].style; t.webkittransform = t.mstransform = t.mstransform = t.moztransform = t.otransform = t.transform = e } return this }, transition: function(e) { "string" != typeof e && (e += "ms"); for (var a = 0; a < this.length; a++) { var t = this[a].style; t.webkittransitionduration = t.mstransitionduration = t.mstransitionduration = t.moztransitionduration = t.otransitionduration = t.transitionduration = e } return this }, on: function(e, t, s, i) { function r(e) { var i = e.target; if (a(i).is(t)) s.call(i, e); else for (var r = a(i).parents(), n = 0; n < r.length; n++) a(r[n]).is(t) && s.call(r[n], e) } var n, o, l = e.split(" "); for (n = 0; n < this.length; n++) if ("function" == typeof t || t === !1) for ("function" == typeof t && (s = arguments[1], i = arguments[2] || !1), o = 0; o < l.length; o++) this[n].addeventlistener(l[o], s, i); else for (o = 0; o < l.length; o++) this[n].dom7livelisteners || (this[n].dom7livelisteners = []), this[n].dom7livelisteners.push({ listener: s, livelistener: r }), this[n].addeventlistener(l[o], r, i); return this }, off: function(e, a, t, s) { for (var i = e.split(" "), r = 0; r < i.length; r++) for (var n = 0; n < this.length; n++) if ("function" == typeof a || a === !1) "function" == typeof a && (t = arguments[1], s = arguments[2] || !1), this[n].removeeventlistener(i[r], t, s); else if (this[n].dom7livelisteners) for (var o = 0; o < this[n].dom7livelisteners.length; o++) this[n].dom7livelisteners[o].listener === t && this[n].removeeventlistener(i[r], this[n].dom7livelisteners[o].livelistener, s); return this }, once: function(e, a, t, s) { function i(n) { t(n), r.off(e, a, i, s) } var r = this; "function" == typeof a && (a = !1, t = arguments[1], s = arguments[2]), r.on(e, a, i, s) }, trigger: function(e, a) { for (var t = 0; t < this.length; t++) { var s; try { s = new window.customevent(e, { detail: a, bubbles: !0, cancelable: !0 }) } catch (t) { s = document.createevent("event"), s.initevent(e, !0, !0), s.detail = a } this[t].dispatchevent(s) } return this }, transitionend: function(e) { function a(r) { if (r.target === this) for (e.call(this, r), t = 0; t < s.length; t++) i.off(s[t], a) } var t, s = ["webkittransitionend", "transitionend", "otransitionend", "mstransitionend", "mstransitionend"], i = this; if (e) for (t = 0; t < s.length; t++) i.on(s[t], a); return this }, width: function() { return this[0] === window ? window.innerwidth : this.length > 0 ? parsefloat(this.css("width")) : null }, outerwidth: function(e) { return this.length > 0 ? e ? this[0].offsetwidth + parsefloat(this.css("margin-right")) + parsefloat(this.css("margin-left")) : this[0].offsetwidth : null }, height: function() { return this[0] === window ? window.innerheight : this.length > 0 ? parsefloat(this.css("height")) : null }, outerheight: function(e) { return this.length > 0 ? e ? this[0].offsetheight + parsefloat(this.css("margin-top")) + parsefloat(this.css("margin-bottom")) : this[0].offsetheight : null }, offset: function() { if (this.length > 0) { var e = this[0], a = e.getboundingclientrect(), t = document.body, s = e.clienttop || t.clienttop || 0, i = e.clientleft || t.clientleft || 0, r = window.pageyoffset || e.scrolltop, n = window.pagexoffset || e.scrollleft; return { top: a.top + r - s, left: a.left + n - i } } return null }, css: function(e, a) { var t; if (1 === arguments.length) { if ("string" != typeof e) { for (t = 0; t < this.length; t++) for (var s in e) this[t].style[s] = e[s]; return this } if (this[0]) return window.getcomputedstyle(this[0], null).getpropertyvalue(e) } if (2 === arguments.length && "string" == typeof e) { for (t = 0; t < this.length; t++) this[t].style[e] = a; return this } return this }, each: function(e) { for (var a = 0; a < this.length; a++) e.call(this[a], a, this[a]); return this }, html: function(e) { if (void 0 === e) return this[0] ? this[0].innerhtml : void 0; for (var a = 0; a < this.length; a++) this[a].innerhtml = e; return this }, text: function(e) { if (void 0 === e) return this[0] ? this[0].textcontent.trim() : null; for (var a = 0; a < this.length; a++) this[a].textcontent = e; return this }, is: function(t) { if (!this[0]) return !1; var s, i; if ("string" == typeof t) { var r = this[0]; if (r === document) return t === document; if (r === window) return t === window; if (r.matches) return r.matches(t); if (r.webkitmatchesselector) return r.webkitmatchesselector(t); if (r.mozmatchesselector) return r.mozmatchesselector(t); if (r.msmatchesselector) return r.msmatchesselector(t); for (s = a(t), i = 0; i < s.length; i++) if (s[i] === this[0]) return !0; return !1 } if (t === document) return this[0] === document; if (t === window) return this[0] === window; if (t.nodetype || t instanceof e) { for (s = t.nodetype ? [t] : t, i = 0; i < s.length; i++) if (s[i] === this[0]) return !0; return !1 } return !1 }, index: function() { if (this[0]) { for (var e = this[0], a = 0; null !== (e = e.previoussibling);) 1 === e.nodetype && a++; return a } }, eq: function(a) { if (void 0 === a) return this; var t, s = this.length; return a > s - 1 ? new e([]) : a < 0 ? (t = s + a, new e(t < 0 ? [] : [this[t]])) : new e([this[a]]) }, append: function(a) { var t, s; for (t = 0; t < this.length; t++) if ("string" == typeof a) { var i = document.createelement("div"); for (i.innerhtml = a; i.firstchild;) this[t].appendchild(i.firstchild) } else if (a instanceof e) for (s = 0; s < a.length; s++) this[t].appendchild(a[s]); else this[t].appendchild(a); return this }, prepend: function(a) { var t, s; for (t = 0; t < this.length; t++) if ("string" == typeof a) { var i = document.createelement("div"); for (i.innerhtml = a, s = i.childnodes.length - 1; s >= 0; s--) this[t].insertbefore(i.childnodes[s], this[t].childnodes[0]) } else if (a instanceof e) for (s = 0; s < a.length; s++) this[t].insertbefore(a[s], this[t].childnodes[0]); else this[t].insertbefore(a, this[t].childnodes[0]); return this }, insertbefore: function(e) { for (var t = a(e), s = 0; s < this.length; s++) if (1 === t.length) t[0].parentnode.insertbefore(this[s], t[0]); else if (t.length > 1) for (var i = 0; i < t.length; i++) t[i].parentnode.insertbefore(this[s].clonenode(!0), t[i]) }, insertafter: function(e) { for (var t = a(e), s = 0; s < this.length; s++) if (1 === t.length) t[0].parentnode.insertbefore(this[s], t[0].nextsibling); else if (t.length > 1) for (var i = 0; i < t.length; i++) t[i].parentnode.insertbefore(this[s].clonenode(!0), t[i].nextsibling) }, next: function(t) { return new e(this.length > 0 ? t ? this[0].nextelementsibling && a(this[0].nextelementsibling).is(t) ? [this[0].nextelementsibling] : [] : this[0].nextelementsibling ? [this[0].nextelementsibling] : [] : []) }, nextall: function(t) { var s = [], i = this[0]; if (!i) return new e([]); for (; i.nextelementsibling;) { var r = i.nextelementsibling; t ? a(r).is(t) && s.push(r) : s.push(r), i = r } return new e(s) }, prev: function(t) { return new e(this.length > 0 ? t ? this[0].previouselementsibling && a(this[0].previouselementsibling).is(t) ? [this[0].previouselementsibling] : [] : this[0].previouselementsibling ? [this[0].previouselementsibling] : [] : []) }, prevall: function(t) { var s = [], i = this[0]; if (!i) return new e([]); for (; i.previouselementsibling;) { var r = i.previouselementsibling; t ? a(r).is(t) && s.push(r) : s.push(r), i = r } return new e(s) }, parent: function(e) { for (var t = [], s = 0; s < this.length; s++) e ? a(this[s].parentnode).is(e) && t.push(this[s].parentnode) : t.push(this[s].parentnode); return a(a.unique(t)) }, parents: function(e) { for (var t = [], s = 0; s < this.length; s++) for (var i = this[s].parentnode; i;) e ? a(i).is(e) && t.push(i) : t.push(i), i = i.parentnode; return a(a.unique(t)) }, find: function(a) { for (var t = [], s = 0; s < this.length; s++) for (var i = this[s].queryselectorall(a), r = 0; r < i.length; r++) t.push(i[r]); return new e(t) }, children: function(t) { for (var s = [], i = 0; i < this.length; i++) for (var r = this[i].childnodes, n = 0; n < r.length; n++) t ? 1 === r[n].nodetype && a(r[n]).is(t) && s.push(r[n]) : 1 === r[n].nodetype && s.push(r[n]); return new e(a.unique(s)) }, remove: function() { for (var e = 0; e < this.length; e++) this[e].parentnode && this[e].parentnode.removechild(this[e]); return this }, add: function() { var e, t, s = this; for (e = 0; e < arguments.length; e++) { var i = a(arguments[e]); for (t = 0; t < i.length; t++) s[s.length] = i[t], s.length++ } return s } }, a.fn = e.prototype, a.unique = function(e) { for (var a = [], t = 0; t < e.length; t++) a.indexof(e[t]) === -1 && a.push(e[t]); return a }, a }()), s = ["jquery", "zepto", "dom7"], i = 0; i < s.length; i++) window[s[i]] && function(e) { e.fn.swiper = function(t) { var s; return e(this).each(function() { var e = new a(this, t); s || (s = e) }), s } }(window[s[i]]); var r; r = void 0 === t ? window.dom7 || window.zepto || window.jquery : t, r && ("transitionend" in r.fn || (r.fn.transitionend = function(e) { function a(r) { if (r.target === this) for (e.call(this, r), t = 0; t < s.length; t++) i.off(s[t], a) } var t, s = ["webkittransitionend", "transitionend", "otransitionend", "mstransitionend", "mstransitionend"], i = this; if (e) for (t = 0; t < s.length; t++) i.on(s[t], a); return this }), "transform" in r.fn || (r.fn.transform = function(e) { for (var a = 0; a < this.length; a++) { var t = this[a].style; t.webkittransform = t.mstransform = t.mstransform = t.moztransform = t.otransform = t.transform = e } return this }), "transition" in r.fn || (r.fn.transition = function(e) { "string" != typeof e && (e += "ms"); for (var a = 0; a < this.length; a++) { var t = this[a].style; t.webkittransitionduration = t.mstransitionduration = t.mstransitionduration = t.moztransitionduration = t.otransitionduration = t.transitionduration = e } return this }), "outerwidth" in r.fn || (r.fn.outerwidth = function(e) { return this.length > 0 ? e ? this[0].offsetwidth + parsefloat(this.css("margin-right")) + parsefloat(this.css("margin-left")) : this[0].offsetwidth : null })), window.swiper = a }(), "undefined" != typeof module ? module.exports = window.swiper : "function" == typeof define && define.amd && define([], function() { "use strict"; return window.swiper }); //# sourcemappingurl=maps/swiper.min.js.map