").addclass(b.options.dotsclass), c = 0; c <= b.getdotcount(); c += 1) d.append(a("").append(b.options.custompaging.call(this, b, c)));
b.$dots = d.appendto(b.options.appenddots),
b.$dots.find("li").first().addclass("slick-active").attr("aria-hidden", "false")
}
},
b.prototype.buildout = function() {
var b = this;
b.$slides = b.$slider.children(b.options.slide + ":not(.slick-cloned)").addclass("slick-slide"),
b.slidecount = b.$slides.length,
b.$slides.each(function(b, c) {
a(c).attr("data-slick-index", b).data("originalstyling", a(c).attr("style") || "")
}),
b.$slider.addclass("slick-slider"),
b.$slidetrack = 0 === b.slidecount ? a('').appendto(b.$slider) : b.$slides.wrapall('').parent(),
b.$list = b.$slidetrack.wrap('').parent(),
b.$slidetrack.css("opacity", 0),
(b.options.centermode === !0 || b.options.swipetoslide === !0) && (b.options.slidestoscroll = 1),
a("img[data-lazy]", b.$slider).not("[src]").addclass("slick-loading"),
b.setupinfinite(),
b.buildarrows(),
b.builddots(),
b.updatedots(),
b.setslideclasses("number" == typeof b.currentslide ? b.currentslide: 0),
b.options.draggable === !0 && b.$list.addclass("draggable")
},
b.prototype.buildrows = function() {
var b, c, d, e, f, g, h, a = this;
if (e = document.createdocumentfragment(), g = a.$slider.children(), a.options.rows > 1) {
for (h = a.options.slidesperrow * a.options.rows, f = math.ceil(g.length / h), b = 0; f > b; b++) {
var i = document.createelement("div");
for (c = 0; c < a.options.rows; c++) {
var j = document.createelement("div");
for (d = 0; d < a.options.slidesperrow; d++) {
var k = b * h + (c * a.options.slidesperrow + d);
g.get(k) && j.appendchild(g.get(k))
}
i.appendchild(j)
}
e.appendchild(i)
}
a.$slider.empty().append(e),
a.$slider.children().children().children().css({
width: 100 / a.options.slidesperrow + "%",
display: "inline-block"
})
}
},
b.prototype.checkresponsive = function(b, c) {
var e, f, g, d = this,
h = !1,
i = d.$slider.width(),
j = window.innerwidth || a(window).width();
if ("window" === d.respondto ? g = j: "slider" === d.respondto ? g = i: "min" === d.respondto && (g = math.min(j, i)), d.options.responsive && d.options.responsive.length && null !== d.options.responsive) {
f = null;
for (e in d.breakpoints) d.breakpoints.hasownproperty(e) && (d.originalsettings.mobilefirst === !1 ? g < d.breakpoints[e] && (f = d.breakpoints[e]) : g > d.breakpoints[e] && (f = d.breakpoints[e]));
null !== f ? null !== d.activebreakpoint ? (f !== d.activebreakpoint || c) && (d.activebreakpoint = f, "unslick" === d.breakpointsettings[f] ? d.unslick(f) : (d.options = a.extend({},
d.originalsettings, d.breakpointsettings[f]), b === !0 && (d.currentslide = d.options.initialslide), d.refresh(b)), h = f) : (d.activebreakpoint = f, "unslick" === d.breakpointsettings[f] ? d.unslick(f) : (d.options = a.extend({},
d.originalsettings, d.breakpointsettings[f]), b === !0 && (d.currentslide = d.options.initialslide), d.refresh(b)), h = f) : null !== d.activebreakpoint && (d.activebreakpoint = null, d.options = d.originalsettings, b === !0 && (d.currentslide = d.options.initialslide), d.refresh(b), h = f),
b || h === !1 || d.$slider.trigger("breakpoint", [d, h])
}
},
b.prototype.changeslide = function(b, c) {
var f, g, h, d = this,
e = a(b.currenttarget);
switch (e.is("a") && b.preventdefault(), e.is("li") || (e = e.closest("li")), h = d.slidecount % d.options.slidestoscroll !== 0, f = h ? 0 : (d.slidecount - d.currentslide) % d.options.slidestoscroll, b.data.message) {
case "previous":
g = 0 === f ? d.options.slidestoscroll: d.options.slidestoshow - f,
d.slidecount > d.options.slidestoshow && d.slidehandler(d.currentslide - g, !1, c);
break;
case "next":
g = 0 === f ? d.options.slidestoscroll: f,
d.slidecount > d.options.slidestoshow && d.slidehandler(d.currentslide + g, !1, c);
break;
case "index":
var i = 0 === b.data.index ? 0 : b.data.index || e.index() * d.options.slidestoscroll;
d.slidehandler(d.checknavigable(i), !1, c),
e.children().trigger("focus");
break;
default:
return
}
},
b.prototype.checknavigable = function(a) {
var c, d, b = this;
if (c = b.getnavigableindexes(), d = 0, a > c[c.length - 1]) a = c[c.length - 1];
else for (var e in c) {
if (a < c[e]) {
a = d;
break
}
d = c[e]
}
return a
},
b.prototype.cleanupevents = function() {
var b = this;
b.options.dots && null !== b.$dots && a("li", b.$dots).off("click.slick", b.changeslide).off("mouseenter.slick", a.proxy(b.interrupt, b, !0)).off("mouseleave.slick", a.proxy(b.interrupt, b, !1)),
b.$slider.off("focus.slick blur.slick"),
b.options.arrows === !0 && b.slidecount > b.options.slidestoshow && (b.$prevarrow && b.$prevarrow.off("click.slick", b.changeslide), b.$nextarrow && b.$nextarrow.off("click.slick", b.changeslide)),
b.$list.off("touchstart.slick mousedown.slick", b.swipehandler),
b.$list.off("touchmove.slick mousemove.slick", b.swipehandler),
b.$list.off("touchend.slick mouseup.slick", b.swipehandler),
b.$list.off("touchcancel.slick mouseleave.slick", b.swipehandler),
b.$list.off("click.slick", b.clickhandler),
a(document).off(b.visibilitychange, b.visibility),
b.cleanupslideevents(),
b.options.accessibility === !0 && b.$list.off("keydown.slick", b.keyhandler),
b.options.focusonselect === !0 && a(b.$slidetrack).children().off("click.slick", b.selecthandler),
a(window).off("orientationchange.slick.slick-" + b.instanceuid, b.orientationchange),
a(window).off("resize.slick.slick-" + b.instanceuid, b.resize),
a("[draggable!=true]", b.$slidetrack).off("dragstart", b.preventdefault),
a(window).off("load.slick.slick-" + b.instanceuid, b.setposition),
a(document).off("ready.slick.slick-" + b.instanceuid, b.setposition)
},
b.prototype.cleanupslideevents = function() {
var b = this;
b.$list.off("mouseenter.slick", a.proxy(b.interrupt, b, !0)),
b.$list.off("mouseleave.slick", a.proxy(b.interrupt, b, !1))
},
b.prototype.cleanuprows = function() {
var b, a = this;
a.options.rows > 1 && (b = a.$slides.children().children(), b.removeattr("style"), a.$slider.empty().append(b))
},
b.prototype.clickhandler = function(a) {
var b = this;
b.shouldclick === !1 && (a.stopimmediatepropagation(), a.stoppropagation(), a.preventdefault())
},
b.prototype.destroy = function(b) {
var c = this;
c.autoplayclear(),
c.touchobject = {},
c.cleanupevents(),
a(".slick-cloned", c.$slider).detach(),
c.$dots && c.$dots.remove(),
c.$prevarrow && c.$prevarrow.length && (c.$prevarrow.removeclass("slick-disabled slick-arrow slick-hidden").removeattr("aria-hidden aria-disabled tabindex").css("display", ""), c.htmlexpr.test(c.options.prevarrow) && c.$prevarrow.remove()),
c.$nextarrow && c.$nextarrow.length && (c.$nextarrow.removeclass("slick-disabled slick-arrow slick-hidden").removeattr("aria-hidden aria-disabled tabindex").css("display", ""), c.htmlexpr.test(c.options.nextarrow) && c.$nextarrow.remove()),
c.$slides && (c.$slides.removeclass("slick-slide slick-active slick-center slick-visible slick-current").removeattr("aria-hidden").removeattr("data-slick-index").each(function() {
a(this).attr("style", a(this).data("originalstyling"))
}), c.$slidetrack.children(this.options.slide).detach(), c.$slidetrack.detach(), c.$list.detach(), c.$slider.append(c.$slides)),
c.cleanuprows(),
c.$slider.removeclass("slick-slider"),
c.$slider.removeclass("slick-initialized"),
c.$slider.removeclass("slick-dotted"),
c.unslicked = !0,
b || c.$slider.trigger("destroy", [c])
},
b.prototype.disabletransition = function(a) {
var b = this,
c = {};
c[b.transitiontype] = "",
b.options.fade === !1 ? b.$slidetrack.css(c) : b.$slides.eq(a).css(c)
},
b.prototype.fadeslide = function(a, b) {
var c = this;
c.csstransitions === !1 ? (c.$slides.eq(a).css({
zindex: c.options.zindex
}), c.$slides.eq(a).animate({
opacity: 1
},
c.options.speed, c.options.easing, b)) : (c.applytransition(a), c.$slides.eq(a).css({
opacity: 1,
zindex: c.options.zindex
}), b && settimeout(function() {
c.disabletransition(a),
b.call()
},
c.options.speed))
},
b.prototype.fadeslideout = function(a) {
var b = this;
b.csstransitions === !1 ? b.$slides.eq(a).animate({
opacity: 0,
zindex: b.options.zindex - 2
},
b.options.speed, b.options.easing) : (b.applytransition(a), b.$slides.eq(a).css({
opacity: 0,
zindex: b.options.zindex - 2
}))
},
b.prototype.filterslides = b.prototype.slickfilter = function(a) {
var b = this;
null !== a && (b.$slidescache = b.$slides, b.unload(), b.$slidetrack.children(this.options.slide).detach(), b.$slidescache.filter(a).appendto(b.$slidetrack), b.reinit())
},
b.prototype.focushandler = function() {
var b = this;
b.$slider.off("focus.slick blur.slick").on("focus.slick blur.slick", "*:not(.slick-arrow)",
function(c) {
c.stopimmediatepropagation();
var d = a(this);
settimeout(function() {
b.options.pauseonfocus && (b.focussed = d.is(":focus"), b.autoplay())
},
0)
})
},
b.prototype.getcurrent = b.prototype.slickcurrentslide = function() {
var a = this;
return a.currentslide
},
b.prototype.getdotcount = function() {
var a = this,
b = 0,
c = 0,
d = 0;
if (a.options.infinite === !0) for (; b < a.slidecount;)++d,
b = c + a.options.slidestoscroll,
c += a.options.slidestoscroll <= a.options.slidestoshow ? a.options.slidestoscroll: a.options.slidestoshow;
else if (a.options.centermode === !0) d = a.slidecount;
else if (a.options.asnavfor) for (; b < a.slidecount;)++d,
b = c + a.options.slidestoscroll,
c += a.options.slidestoscroll <= a.options.slidestoshow ? a.options.slidestoscroll: a.options.slidestoshow;
else d = 1 + math.ceil((a.slidecount - a.options.slidestoshow) / a.options.slidestoscroll);
return d - 1
},
b.prototype.getleft = function(a) {
var c, d, f, b = this,
e = 0;
return b.slideoffset = 0,
d = b.$slides.first().outerheight(!0),
b.options.infinite === !0 ? (b.slidecount > b.options.slidestoshow && (b.slideoffset = b.slidewidth * b.options.slidestoshow * -1, e = d * b.options.slidestoshow * -1), b.slidecount % b.options.slidestoscroll !== 0 && a + b.options.slidestoscroll > b.slidecount && b.slidecount > b.options.slidestoshow && (a > b.slidecount ? (b.slideoffset = (b.options.slidestoshow - (a - b.slidecount)) * b.slidewidth * -1, e = (b.options.slidestoshow - (a - b.slidecount)) * d * -1) : (b.slideoffset = b.slidecount % b.options.slidestoscroll * b.slidewidth * -1, e = b.slidecount % b.options.slidestoscroll * d * -1))) : a + b.options.slidestoshow > b.slidecount && (b.slideoffset = (a + b.options.slidestoshow - b.slidecount) * b.slidewidth, e = (a + b.options.slidestoshow - b.slidecount) * d),
b.slidecount <= b.options.slidestoshow && (b.slideoffset = 0, e = 0),
b.options.centermode === !0 && b.options.infinite === !0 ? b.slideoffset += b.slidewidth * math.floor(b.options.slidestoshow / 2) - b.slidewidth: b.options.centermode === !0 && (b.slideoffset = 0, b.slideoffset += b.slidewidth * math.floor(b.options.slidestoshow / 2)),
c = b.options.vertical === !1 ? a * b.slidewidth * -1 + b.slideoffset: a * d * -1 + e,
b.options.variablewidth === !0 && (f = b.slidecount <= b.options.slidestoshow || b.options.infinite === !1 ? b.$slidetrack.children(".slick-slide").eq(a) : b.$slidetrack.children(".slick-slide").eq(a + b.options.slidestoshow), c = b.options.rtl === !0 ? f[0] ? -1 * (b.$slidetrack.width() - f[0].offsetleft - f.width()) : 0 : f[0] ? -1 * f[0].offsetleft: 0, b.options.centermode === !0 && (f = b.slidecount <= b.options.slidestoshow || b.options.infinite === !1 ? b.$slidetrack.children(".slick-slide").eq(a) : b.$slidetrack.children(".slick-slide").eq(a + b.options.slidestoshow + 1), c = b.options.rtl === !0 ? f[0] ? -1 * (b.$slidetrack.width() - f[0].offsetleft - f.width()) : 0 : f[0] ? -1 * f[0].offsetleft: 0, c += (b.$list.width() - f.outerwidth()) / 2)),
c
},
b.prototype.getoption = b.prototype.slickgetoption = function(a) {
var b = this;
return b.options[a]
},
b.prototype.getnavigableindexes = function() {
var e, a = this,
b = 0,
c = 0,
d = [];
for (a.options.infinite === !1 ? e = a.slidecount: (b = -1 * a.options.slidestoscroll, c = -1 * a.options.slidestoscroll, e = 2 * a.slidecount); e > b;) d.push(b),
b = c + a.options.slidestoscroll,
c += a.options.slidestoscroll <= a.options.slidestoshow ? a.options.slidestoscroll: a.options.slidestoshow;
return d
},
b.prototype.getslick = function() {
return this
},
b.prototype.getslidecount = function() {
var c, d, e, b = this;
return e = b.options.centermode === !0 ? b.slidewidth * math.floor(b.options.slidestoshow / 2) : 0,
b.options.swipetoslide === !0 ? (b.$slidetrack.find(".slick-slide").each(function(c, f) {
return f.offsetleft - e + a(f).outerwidth() / 2 > -1 * b.swipeleft ? (d = f, !1) : void 0
}), c = math.abs(a(d).attr("data-slick-index") - b.currentslide) || 1) : b.options.slidestoscroll
},
b.prototype.goto = b.prototype.slickgoto = function(a, b) {
var c = this;
c.changeslide({
data: {
message: "index",
index: parseint(a)
}
},
b)
},
b.prototype.init = function(b) {
var c = this;
a(c.$slider).hasclass("slick-initialized") || (a(c.$slider).addclass("slick-initialized"), c.buildrows(), c.buildout(), c.setprops(), c.startload(), c.loadslider(), c.initializeevents(), c.updatearrows(), c.updatedots(), c.checkresponsive(!0), c.focushandler()),
b && c.$slider.trigger("init", [c]),
c.options.accessibility === !0 && c.initada(),
c.options.autoplay && (c.paused = !1, c.autoplay())
},
b.prototype.initada = function() {
var b = this;
b.$slides.add(b.$slidetrack.find(".slick-cloned")).attr({
"aria-hidden": "true",
tabindex: "-1"
}).find("a, input, button, select").attr({
tabindex: "-1"
}),
b.$slidetrack.attr("role", "listbox"),
b.$slides.not(b.$slidetrack.find(".slick-cloned")).each(function(c) {
a(this).attr({
role: "option",
"aria-describedby": "slick-slide" + b.instanceuid + c
})
}),
null !== b.$dots && b.$dots.attr("role", "tablist").find("li").each(function(c) {
a(this).attr({
role: "presentation",
"aria-selected": "false",
"aria-controls": "navigation" + b.instanceuid + c,
id: "slick-slide" + b.instanceuid + c
})
}).first().attr("aria-selected", "true").end().find("button").attr("role", "button").end().closest("div").attr("role", "toolbar"),
b.activateada()
},
b.prototype.initarrowevents = function() {
var a = this;
a.options.arrows === !0 && a.slidecount > a.options.slidestoshow && (a.$prevarrow.off("click.slick").on("click.slick", {
message: "previous"
},
a.changeslide), a.$nextarrow.off("click.slick").on("click.slick", {
message: "next"
},
a.changeslide))
},
b.prototype.initdotevents = function() {
var b = this;
b.options.dots === !0 && b.slidecount > b.options.slidestoshow && a("li", b.$dots).on("click.slick", {
message: "index"
},
b.changeslide),
b.options.dots === !0 && b.options.pauseondotshover === !0 && a("li", b.$dots).on("mouseenter.slick", a.proxy(b.interrupt, b, !0)).on("mouseleave.slick", a.proxy(b.interrupt, b, !1))
},
b.prototype.initslideevents = function() {
var b = this;
b.options.pauseonhover && (b.$list.on("mouseenter.slick", a.proxy(b.interrupt, b, !0)), b.$list.on("mouseleave.slick", a.proxy(b.interrupt, b, !1)))
},
b.prototype.initializeevents = function() {
var b = this;
b.initarrowevents(),
b.initdotevents(),
b.initslideevents(),
b.$list.on("touchstart.slick mousedown.slick", {
action: "start"
},
b.swipehandler),
b.$list.on("touchmove.slick mousemove.slick", {
action: "move"
},
b.swipehandler),
b.$list.on("touchend.slick mouseup.slick", {
action: "end"
},
b.swipehandler),
b.$list.on("touchcancel.slick mouseleave.slick", {
action: "end"
},
b.swipehandler),
b.$list.on("click.slick", b.clickhandler),
a(document).on(b.visibilitychange, a.proxy(b.visibility, b)),
b.options.accessibility === !0 && b.$list.on("keydown.slick", b.keyhandler),
b.options.focusonselect === !0 && a(b.$slidetrack).children().on("click.slick", b.selecthandler),
a(window).on("orientationchange.slick.slick-" + b.instanceuid, a.proxy(b.orientationchange, b)),
a(window).on("resize.slick.slick-" + b.instanceuid, a.proxy(b.resize, b)),
a("[draggable!=true]", b.$slidetrack).on("dragstart", b.preventdefault),
a(window).on("load.slick.slick-" + b.instanceuid, b.setposition),
a(document).on("ready.slick.slick-" + b.instanceuid, b.setposition)
},
b.prototype.initui = function() {
var a = this;
a.options.arrows === !0 && a.slidecount > a.options.slidestoshow && (a.$prevarrow.show(), a.$nextarrow.show()),
a.options.dots === !0 && a.slidecount > a.options.slidestoshow && a.$dots.show()
},
b.prototype.keyhandler = function(a) {
var b = this;
a.target.tagname.match("textarea|input|select") || (37 === a.keycode && b.options.accessibility === !0 ? b.changeslide({
data: {
message: b.options.rtl === !0 ? "next": "previous"
}
}) : 39 === a.keycode && b.options.accessibility === !0 && b.changeslide({
data: {
message: b.options.rtl === !0 ? "previous": "next"
}
}))
},
b.prototype.lazyload = function() {
function g(c) {
a("img[data-lazy]", c).each(function() {
var c = a(this),
d = a(this).attr("data-lazy"),
e = document.createelement("img");
e.onload = function() {
c.animate({
opacity: 0
},
100,
function() {
c.attr("src", d).animate({
opacity: 1
},
200,
function() {
c.removeattr("data-lazy").removeclass("slick-loading")
}),
b.$slider.trigger("lazyloaded", [b, c, d])
})
},
e.onerror = function() {
c.removeattr("data-lazy").removeclass("slick-loading").addclass("slick-lazyload-error"),
b.$slider.trigger("lazyloaderror", [b, c, d])
},
e.src = d
})
}
var c, d, e, f, b = this;
b.options.centermode === !0 ? b.options.infinite === !0 ? (e = b.currentslide + (b.options.slidestoshow / 2 + 1), f = e + b.options.slidestoshow + 2) : (e = math.max(0, b.currentslide - (b.options.slidestoshow / 2 + 1)), f = 2 + (b.options.slidestoshow / 2 + 1) + b.currentslide) : (e = b.options.infinite ? b.options.slidestoshow + b.currentslide: b.currentslide, f = math.ceil(e + b.options.slidestoshow), b.options.fade === !0 && (e > 0 && e--, f <= b.slidecount && f++)),
c = b.$slider.find(".slick-slide").slice(e, f),
g(c),
b.slidecount <= b.options.slidestoshow ? (d = b.$slider.find(".slick-slide"), g(d)) : b.currentslide >= b.slidecount - b.options.slidestoshow ? (d = b.$slider.find(".slick-cloned").slice(0, b.options.slidestoshow), g(d)) : 0 === b.currentslide && (d = b.$slider.find(".slick-cloned").slice( - 1 * b.options.slidestoshow), g(d))
},
b.prototype.loadslider = function() {
var a = this;
a.setposition(),
a.$slidetrack.css({
opacity: 1
}),
a.$slider.removeclass("slick-loading"),
a.initui(),
"progressive" === a.options.lazyload && a.progressivelazyload()
},
b.prototype.next = b.prototype.slicknext = function() {
var a = this;
a.changeslide({
data: {
message: "next"
}
})
},
b.prototype.orientationchange = function() {
var a = this;
a.checkresponsive(),
a.setposition()
},
b.prototype.pause = b.prototype.slickpause = function() {
var a = this;
a.autoplayclear(),
a.paused = !0
},
b.prototype.play = b.prototype.slickplay = function() {
var a = this;
a.autoplay(),
a.options.autoplay = !0,
a.paused = !1,
a.focussed = !1,
a.interrupted = !1
},
b.prototype.postslide = function(a) {
var b = this;
b.unslicked || (b.$slider.trigger("afterchange", [b, a]), b.animating = !1, b.setposition(), b.swipeleft = null, b.options.autoplay && b.autoplay(), b.options.accessibility === !0 && b.initada())
},
b.prototype.prev = b.prototype.slickprev = function() {
var a = this;
a.changeslide({
data: {
message: "previous"
}
})
},
b.prototype.preventdefault = function(a) {
a.preventdefault()
},
b.prototype.progressivelazyload = function(b) {
b = b || 1;
var e, f, g, c = this,
d = a("img[data-lazy]", c.$slider);
d.length ? (e = d.first(), f = e.attr("data-lazy"), g = document.createelement("img"), g.onload = function() {
e.attr("src", f).removeattr("data-lazy").removeclass("slick-loading"),
c.options.adaptiveheight === !0 && c.setposition(),
c.$slider.trigger("lazyloaded", [c, e, f]),
c.progressivelazyload()
},
g.onerror = function() {
3 > b ? settimeout(function() {
c.progressivelazyload(b + 1)
},
500) : (e.removeattr("data-lazy").removeclass("slick-loading").addclass("slick-lazyload-error"), c.$slider.trigger("lazyloaderror", [c, e, f]), c.progressivelazyload())
},
g.src = f) : c.$slider.trigger("allimagesloaded", [c])
},
b.prototype.refresh = function(b) {
var d, e, c = this;
e = c.slidecount - c.options.slidestoshow,
!c.options.infinite && c.currentslide > e && (c.currentslide = e),
c.slidecount <= c.options.slidestoshow && (c.currentslide = 0),
d = c.currentslide,
c.destroy(!0),
a.extend(c, c.initials, {
currentslide: d
}),
c.init(),
b || c.changeslide({
data: {
message: "index",
index: d
}
},
!1)
},
b.prototype.registerbreakpoints = function() {
var c, d, e, b = this,
f = b.options.responsive || null;
if ("array" === a.type(f) && f.length) {
b.respondto = b.options.respondto || "window";
for (c in f) if (e = b.breakpoints.length - 1, d = f[c].breakpoint, f.hasownproperty(c)) {
for (; e >= 0;) b.breakpoints[e] && b.breakpoints[e] === d && b.breakpoints.splice(e, 1),
e--;
b.breakpoints.push(d),
b.breakpointsettings[d] = f[c].settings
}
b.breakpoints.sort(function(a, c) {
return b.options.mobilefirst ? a - c: c - a
})
}
},
b.prototype.reinit = function() {
var b = this;
b.$slides = b.$slidetrack.children(b.options.slide).addclass("slick-slide"),
b.slidecount = b.$slides.length,
b.currentslide >= b.slidecount && 0 !== b.currentslide && (b.currentslide = b.currentslide - b.options.slidestoscroll),
b.slidecount <= b.options.slidestoshow && (b.currentslide = 0),
b.registerbreakpoints(),
b.setprops(),
b.setupinfinite(),
b.buildarrows(),
b.updatearrows(),
b.initarrowevents(),
b.builddots(),
b.updatedots(),
b.initdotevents(),
b.cleanupslideevents(),
b.initslideevents(),
b.checkresponsive(!1, !0),
b.options.focusonselect === !0 && a(b.$slidetrack).children().on("click.slick", b.selecthandler),
b.setslideclasses("number" == typeof b.currentslide ? b.currentslide: 0),
b.setposition(),
b.focushandler(),
b.paused = !b.options.autoplay,
b.autoplay(),
b.$slider.trigger("reinit", [b])
},
b.prototype.resize = function() {
var b = this;
a(window).width() !== b.windowwidth && (cleartimeout(b.windowdelay), b.windowdelay = window.settimeout(function() {
b.windowwidth = a(window).width(),
b.checkresponsive(),
b.unslicked || b.setposition()
},
50))
},
b.prototype.removeslide = b.prototype.slickremove = function(a, b, c) {
var d = this;
return "boolean" == typeof a ? (b = a, a = b === !0 ? 0 : d.slidecount - 1) : a = b === !0 ? --a: a,
d.slidecount < 1 || 0 > a || a > d.slidecount - 1 ? !1 : (d.unload(), c === !0 ? d.$slidetrack.children().remove() : d.$slidetrack.children(this.options.slide).eq(a).remove(), d.$slides = d.$slidetrack.children(this.options.slide), d.$slidetrack.children(this.options.slide).detach(), d.$slidetrack.append(d.$slides), d.$slidescache = d.$slides, void d.reinit())
},
b.prototype.setcss = function(a) {
var d, e, b = this,
c = {};
b.options.rtl === !0 && (a = -a),
d = "left" == b.positionprop ? math.ceil(a) + "px": "0px",
e = "top" == b.positionprop ? math.ceil(a) + "px": "0px",
c[b.positionprop] = a,
b.transformsenabled === !1 ? b.$slidetrack.css(c) : (c = {},
b.csstransitions === !1 ? (c[b.animtype] = "translate(" + d + ", " + e + ")", b.$slidetrack.css(c)) : (c[b.animtype] = "translate3d(" + d + ", " + e + ", 0px)", b.$slidetrack.css(c)))
},
b.prototype.setdimensions = function() {
var a = this;
a.options.vertical === !1 ? a.options.centermode === !0 && a.$list.css({
padding: "0px " + a.options.centerpadding
}) : (a.$list.height(a.$slides.first().outerheight(!0) * a.options.slidestoshow), a.options.centermode === !0 && a.$list.css({
padding: a.options.centerpadding + " 0px"
})),
a.listwidth = a.$list.width(),
a.listheight = a.$list.height(),
a.options.vertical === !1 && a.options.variablewidth === !1 ? (a.slidewidth = math.ceil(a.listwidth / a.options.slidestoshow), a.$slidetrack.width(math.ceil(a.slidewidth * a.$slidetrack.children(".slick-slide").length))) : a.options.variablewidth === !0 ? a.$slidetrack.width(5e3 * a.slidecount) : (a.slidewidth = math.ceil(a.listwidth), a.$slidetrack.height(math.ceil(a.$slides.first().outerheight(!0) * a.$slidetrack.children(".slick-slide").length)));
var b = a.$slides.first().outerwidth(!0) - a.$slides.first().width();
a.options.variablewidth === !1 && a.$slidetrack.children(".slick-slide").width(a.slidewidth - b)
},
b.prototype.setfade = function() {
var c, b = this;
b.$slides.each(function(d, e) {
c = b.slidewidth * d * -1,
b.options.rtl === !0 ? a(e).css({
position: "relative",
right: c,
top: 0,
zindex: b.options.zindex - 2,
opacity: 0
}) : a(e).css({
position: "relative",
left: c,
top: 0,
zindex: b.options.zindex - 2,
opacity: 0
})
}),
b.$slides.eq(b.currentslide).css({
zindex: b.options.zindex - 1,
opacity: 1
})
},
b.prototype.setheight = function() {
var a = this;
if (1 === a.options.slidestoshow && a.options.adaptiveheight === !0 && a.options.vertical === !1) {
var b = a.$slides.eq(a.currentslide).outerheight(!0);
a.$list.css("height", b)
}
},
b.prototype.setoption = b.prototype.slicksetoption = function() {
var c, d, e, f, h, b = this,
g = !1;
if ("object" === a.type(arguments[0]) ? (e = arguments[0], g = arguments[1], h = "multiple") : "string" === a.type(arguments[0]) && (e = arguments[0], f = arguments[1], g = arguments[2], "responsive" === arguments[0] && "array" === a.type(arguments[1]) ? h = "responsive": "undefined" != typeof arguments[1] && (h = "single")), "single" === h) b.options[e] = f;
else if ("multiple" === h) a.each(e,
function(a, c) {
b.options[a] = c
});
else if ("responsive" === h) for (d in f) if ("array" !== a.type(b.options.responsive)) b.options.responsive = [f[d]];
else {
for (c = b.options.responsive.length - 1; c >= 0;) b.options.responsive[c].breakpoint === f[d].breakpoint && b.options.responsive.splice(c, 1),
c--;
b.options.responsive.push(f[d])
}
g && (b.unload(), b.reinit())
},
b.prototype.setposition = function() {
var a = this;
a.setdimensions(),
a.setheight(),
a.options.fade === !1 ? a.setcss(a.getleft(a.currentslide)) : a.setfade(),
a.$slider.trigger("setposition", [a])
},
b.prototype.setprops = function() {
var a = this,
b = document.body.style;
a.positionprop = a.options.vertical === !0 ? "top": "left",
"top" === a.positionprop ? a.$slider.addclass("slick-vertical") : a.$slider.removeclass("slick-vertical"),
(void 0 !== b.webkittransition || void 0 !== b.moztransition || void 0 !== b.mstransition) && a.options.usecss === !0 && (a.csstransitions = !0),
a.options.fade && ("number" == typeof a.options.zindex ? a.options.zindex < 3 && (a.options.zindex = 3) : a.options.zindex = a.defaults.zindex),
void 0 !== b.otransform && (a.animtype = "otransform", a.transformtype = "-o-transform", a.transitiontype = "otransition", void 0 === b.perspectiveproperty && void 0 === b.webkitperspective && (a.animtype = !1)),
void 0 !== b.moztransform && (a.animtype = "moztransform", a.transformtype = "-moz-transform", a.transitiontype = "moztransition", void 0 === b.perspectiveproperty && void 0 === b.mozperspective && (a.animtype = !1)),
void 0 !== b.webkittransform && (a.animtype = "webkittransform", a.transformtype = "-webkit-transform", a.transitiontype = "webkittransition", void 0 === b.perspectiveproperty && void 0 === b.webkitperspective && (a.animtype = !1)),
void 0 !== b.mstransform && (a.animtype = "mstransform", a.transformtype = "-ms-transform", a.transitiontype = "mstransition", void 0 === b.mstransform && (a.animtype = !1)),
void 0 !== b.transform && a.animtype !== !1 && (a.animtype = "transform", a.transformtype = "transform", a.transitiontype = "transition"),
a.transformsenabled = a.options.usetransform && null !== a.animtype && a.animtype !== !1
},
b.prototype.setslideclasses = function(a) {
var c, d, e, f, b = this;
d = b.$slider.find(".slick-slide").removeclass("slick-active slick-center slick-current").attr("aria-hidden", "true"),
b.$slides.eq(a).addclass("slick-current"),
b.options.centermode === !0 ? (c = math.floor(b.options.slidestoshow / 2), b.options.infinite === !0 && (a >= c && a <= b.slidecount - 1 - c ? b.$slides.slice(a - c, a + c + 1).addclass("slick-active").attr("aria-hidden", "false") : (e = b.options.slidestoshow + a, d.slice(e - c + 1, e + c + 2).addclass("slick-active").attr("aria-hidden", "false")), 0 === a ? d.eq(d.length - 1 - b.options.slidestoshow).addclass("slick-center") : a === b.slidecount - 1 && d.eq(b.options.slidestoshow).addclass("slick-center")), b.$slides.eq(a).addclass("slick-center")) : a >= 0 && a <= b.slidecount - b.options.slidestoshow ? b.$slides.slice(a, a + b.options.slidestoshow).addclass("slick-active").attr("aria-hidden", "false") : d.length <= b.options.slidestoshow ? d.addclass("slick-active").attr("aria-hidden", "false") : (f = b.slidecount % b.options.slidestoshow, e = b.options.infinite === !0 ? b.options.slidestoshow + a: a, b.options.slidestoshow == b.options.slidestoscroll && b.slidecount - a < b.options.slidestoshow ? d.slice(e - (b.options.slidestoshow - f), e + f).addclass("slick-active").attr("aria-hidden", "false") : d.slice(e, e + b.options.slidestoshow).addclass("slick-active").attr("aria-hidden", "false")),
"ondemand" === b.options.lazyload && b.lazyload()
},
b.prototype.setupinfinite = function() {
var c, d, e, b = this;
if (b.options.fade === !0 && (b.options.centermode = !1), b.options.infinite === !0 && b.options.fade === !1 && (d = null, b.slidecount > b.options.slidestoshow)) {
for (e = b.options.centermode === !0 ? b.options.slidestoshow + 1 : b.options.slidestoshow, c = b.slidecount; c > b.slidecount - e; c -= 1) d = c - 1,
a(b.$slides[d]).clone(!0).attr("id", "").attr("data-slick-index", d - b.slidecount).prependto(b.$slidetrack).addclass("slick-cloned");
for (c = 0; e > c; c += 1) d = c,
a(b.$slides[d]).clone(!0).attr("id", "").attr("data-slick-index", d + b.slidecount).appendto(b.$slidetrack).addclass("slick-cloned");
b.$slidetrack.find(".slick-cloned").find("[id]").each(function() {
a(this).attr("id", "")
})
}
},
b.prototype.interrupt = function(a) {
var b = this;
a || b.autoplay(),
b.interrupted = a
},
b.prototype.selecthandler = function(b) {
var c = this,
d = a(b.target).is(".slick-slide") ? a(b.target) : a(b.target).parents(".slick-slide"),
e = parseint(d.attr("data-slick-index"));
return e || (e = 0),
c.slidecount <= c.options.slidestoshow ? (c.setslideclasses(e), void c.asnavfor(e)) : void c.slidehandler(e)
},
b.prototype.slidehandler = function(a, b, c) {
var d, e, f, g, j, h = null,
i = this;
return b = b || !1,
i.animating === !0 && i.options.waitforanimate === !0 || i.options.fade === !0 && i.currentslide === a || i.slidecount <= i.options.slidestoshow ? void 0 : (b === !1 && i.asnavfor(a), d = a, h = i.getleft(d), g = i.getleft(i.currentslide), i.currentleft = null === i.swipeleft ? g: i.swipeleft, i.options.infinite === !1 && i.options.centermode === !1 && (0 > a || a > i.getdotcount() * i.options.slidestoscroll) ? void(i.options.fade === !1 && (d = i.currentslide, c !== !0 ? i.animateslide(g,
function() {
i.postslide(d)
}) : i.postslide(d))) : i.options.infinite === !1 && i.options.centermode === !0 && (0 > a || a > i.slidecount - i.options.slidestoscroll) ? void(i.options.fade === !1 && (d = i.currentslide, c !== !0 ? i.animateslide(g,
function() {
i.postslide(d)
}) : i.postslide(d))) : (i.options.autoplay && clearinterval(i.autoplaytimer), e = 0 > d ? i.slidecount % i.options.slidestoscroll !== 0 ? i.slidecount - i.slidecount % i.options.slidestoscroll: i.slidecount + d: d >= i.slidecount ? i.slidecount % i.options.slidestoscroll !== 0 ? 0 : d - i.slidecount: d, i.animating = !0, i.$slider.trigger("beforechange", [i, i.currentslide, e]), f = i.currentslide, i.currentslide = e, i.setslideclasses(i.currentslide), i.options.asnavfor && (j = i.getnavtarget(), j = j.slick("getslick"), j.slidecount <= j.options.slidestoshow && j.setslideclasses(i.currentslide)), i.updatedots(), i.updatearrows(), i.options.fade === !0 ? (c !== !0 ? (i.fadeslideout(f), i.fadeslide(e,
function() {
i.postslide(e)
})) : i.postslide(e), void i.animateheight()) : void(c !== !0 ? i.animateslide(h,
function() {
i.postslide(e)
}) : i.postslide(e))))
},
b.prototype.startload = function() {
var a = this;
a.options.arrows === !0 && a.slidecount > a.options.slidestoshow && (a.$prevarrow.hide(), a.$nextarrow.hide()),
a.options.dots === !0 && a.slidecount > a.options.slidestoshow && a.$dots.hide(),
a.$slider.addclass("slick-loading")
},
b.prototype.swipedirection = function() {
var a, b, c, d, e = this;
return a = e.touchobject.startx - e.touchobject.curx,
b = e.touchobject.starty - e.touchobject.cury,
c = math.atan2(b, a),
d = math.round(180 * c / math.pi),
0 > d && (d = 360 - math.abs(d)),
45 >= d && d >= 0 ? e.options.rtl === !1 ? "left": "right": 360 >= d && d >= 315 ? e.options.rtl === !1 ? "left": "right": d >= 135 && 225 >= d ? e.options.rtl === !1 ? "right": "left": e.options.verticalswiping === !0 ? d >= 35 && 135 >= d ? "down": "up": "vertical"
},
b.prototype.swipeend = function(a) {
var c, d, b = this;
if (b.dragging = !1, b.interrupted = !1, b.shouldclick = b.touchobject.swipelength > 10 ? !1 : !0, void 0 === b.touchobject.curx) return ! 1;
if (b.touchobject.edgehit === !0 && b.$slider.trigger("edge", [b, b.swipedirection()]), b.touchobject.swipelength >= b.touchobject.minswipe) {
switch (d = b.swipedirection()) {
case "left":
case "down":
c = b.options.swipetoslide ? b.checknavigable(b.currentslide + b.getslidecount()) : b.currentslide + b.getslidecount(),
b.currentdirection = 0;
break;
case "right":
case "up":
c = b.options.swipetoslide ? b.checknavigable(b.currentslide - b.getslidecount()) : b.currentslide - b.getslidecount(),
b.currentdirection = 1
}
"vertical" != d && (b.slidehandler(c), b.touchobject = {},
b.$slider.trigger("swipe", [b, d]))
} else b.touchobject.startx !== b.touchobject.curx && (b.slidehandler(b.currentslide), b.touchobject = {})
},
b.prototype.swipehandler = function(a) {
var b = this;
if (! (b.options.swipe === !1 || "ontouchend" in document && b.options.swipe === !1 || b.options.draggable === !1 && -1 !== a.type.indexof("mouse"))) switch (b.touchobject.fingercount = a.originalevent && void 0 !== a.originalevent.touches ? a.originalevent.touches.length: 1, b.touchobject.minswipe = b.listwidth / b.options.touchthreshold, b.options.verticalswiping === !0 && (b.touchobject.minswipe = b.listheight / b.options.touchthreshold), a.data.action) {
case "start":
b.swipestart(a);
break;
case "move":
b.swipemove(a);
break;
case "end":
b.swipeend(a)
}
},
b.prototype.swipemove = function(a) {
var d, e, f, g, h, b = this;
return h = void 0 !== a.originalevent ? a.originalevent.touches: null,
!b.dragging || h && 1 !== h.length ? !1 : (d = b.getleft(b.currentslide), b.touchobject.curx = void 0 !== h ? h[0].pagex: a.clientx, b.touchobject.cury = void 0 !== h ? h[0].pagey: a.clienty, b.touchobject.swipelength = math.round(math.sqrt(math.pow(b.touchobject.curx - b.touchobject.startx, 2))), b.options.verticalswiping === !0 && (b.touchobject.swipelength = math.round(math.sqrt(math.pow(b.touchobject.cury - b.touchobject.starty, 2)))), e = b.swipedirection(), "vertical" !== e ? (void 0 !== a.originalevent && b.touchobject.swipelength > 4 && a.preventdefault(), g = (b.options.rtl === !1 ? 1 : -1) * (b.touchobject.curx > b.touchobject.startx ? 1 : -1), b.options.verticalswiping === !0 && (g = b.touchobject.cury > b.touchobject.starty ? 1 : -1), f = b.touchobject.swipelength, b.touchobject.edgehit = !1, b.options.infinite === !1 && (0 === b.currentslide && "right" === e || b.currentslide >= b.getdotcount() && "left" === e) && (f = b.touchobject.swipelength * b.options.edgefriction, b.touchobject.edgehit = !0), b.options.vertical === !1 ? b.swipeleft = d + f * g: b.swipeleft = d + f * (b.$list.height() / b.listwidth) * g, b.options.verticalswiping === !0 && (b.swipeleft = d + f * g), b.options.fade === !0 || b.options.touchmove === !1 ? !1 : b.animating === !0 ? (b.swipeleft = null, !1) : void b.setcss(b.swipeleft)) : void 0)
},
b.prototype.swipestart = function(a) {
var c, b = this;
return b.interrupted = !0,
1 !== b.touchobject.fingercount || b.slidecount <= b.options.slidestoshow ? (b.touchobject = {},
!1) : (void 0 !== a.originalevent && void 0 !== a.originalevent.touches && (c = a.originalevent.touches[0]), b.touchobject.startx = b.touchobject.curx = void 0 !== c ? c.pagex: a.clientx, b.touchobject.starty = b.touchobject.cury = void 0 !== c ? c.pagey: a.clienty, void(b.dragging = !0))
},
b.prototype.unfilterslides = b.prototype.slickunfilter = function() {
var a = this;
null !== a.$slidescache && (a.unload(), a.$slidetrack.children(this.options.slide).detach(), a.$slidescache.appendto(a.$slidetrack), a.reinit())
},
b.prototype.unload = function() {
var b = this;
a(".slick-cloned", b.$slider).remove(),
b.$dots && b.$dots.remove(),
b.$prevarrow && b.htmlexpr.test(b.options.prevarrow) && b.$prevarrow.remove(),
b.$nextarrow && b.htmlexpr.test(b.options.nextarrow) && b.$nextarrow.remove(),
b.$slides.removeclass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden", "true").css("width", "")
},
b.prototype.unslick = function(a) {
var b = this;
b.$slider.trigger("unslick", [b, a]),
b.destroy()
},
b.prototype.updatearrows = function() {
var b, a = this;
b = math.floor(a.options.slidestoshow / 2),
a.options.arrows === !0 && a.slidecount > a.options.slidestoshow && !a.options.infinite && (a.$prevarrow.removeclass("slick-disabled").attr("aria-disabled", "false"), a.$nextarrow.removeclass("slick-disabled").attr("aria-disabled", "false"), 0 === a.currentslide ? (a.$prevarrow.addclass("slick-disabled").attr("aria-disabled", "true"), a.$nextarrow.removeclass("slick-disabled").attr("aria-disabled", "false")) : a.currentslide >= a.slidecount - a.options.slidestoshow && a.options.centermode === !1 ? (a.$nextarrow.addclass("slick-disabled").attr("aria-disabled", "true"), a.$prevarrow.removeclass("slick-disabled").attr("aria-disabled", "false")) : a.currentslide >= a.slidecount - 1 && a.options.centermode === !0 && (a.$nextarrow.addclass("slick-disabled").attr("aria-disabled", "true"), a.$prevarrow.removeclass("slick-disabled").attr("aria-disabled", "false")))
},
b.prototype.updatedots = function() {
var a = this;
null !== a.$dots && (a.$dots.find("li").removeclass("slick-active").attr("aria-hidden", "true"), a.$dots.find("li").eq(math.floor(a.currentslide / a.options.slidestoscroll)).addclass("slick-active").attr("aria-hidden", "false"))
},
b.prototype.visibility = function() {
var a = this;
a.options.autoplay && (document[a.hidden] ? a.interrupted = !0 : a.interrupted = !1)
},
a.fn.slick = function() {
var f, g, a = this,
c = arguments[0],
d = array.prototype.slice.call(arguments, 1),
e = a.length;
for (f = 0; e > f; f++) if ("object" == typeof c || "undefined" == typeof c ? a[f].slick = new b(a[f], c) : g = a[f].slick[c].apply(a[f].slick, d), "undefined" != typeof g) return g;
return a
}
});
/*!
* version: 1.20.2
* date: 2017-06-30
* updates and docs at: http://greensock.com
*
* includes all of the following: tweenlite, tweenmax, timelinelite, timelinemax, easepack, cssplugin, roundpropsplugin, bezierplugin, attrplugin, directionalrotationplugin
*
* @license copyright (c) 2008-2017, greensock. all rights reserved.
* this work is subject to the terms at http://greensock.com/standard-license or for
* club greensock members, the software agreement that was issued with your membership.
*
* @author: jack doyle, jack@greensock.com
**/
var _gsscope = "undefined" != typeof module && module.exports && "undefined" != typeof global ? global: this || window; (_gsscope._gsqueue || (_gsscope._gsqueue = [])).push(function() {
"use strict";
_gsscope._gsdefine("tweenmax", ["core.animation", "core.simpletimeline", "tweenlite"],
function(a, b, c) {
var d = function(a) {
var b, c = [],
d = a.length;
for (b = 0; b !== d; c.push(a[b++]));
return c
},
e = function(a, b, c) {
var d, e, f = a.cycle;
for (d in f) e = f[d],
a[d] = "function" == typeof e ? e(c, b[c]) : e[c % e.length];
delete a.cycle
},
f = function(a, b, d) {
c.call(this, a, b, d),
this._cycle = 0,
this._yoyo = this.vars.yoyo === !0 || !!this.vars.yoyoease,
this._repeat = this.vars.repeat || 0,
this._repeatdelay = this.vars.repeatdelay || 0,
this._dirty = !0,
this.render = f.prototype.render
},
g = 1e-10,
h = c._internals,
i = h.isselector,
j = h.isarray,
k = f.prototype = c.to({},
.1, {}),
l = [];
f.version = "1.20.2",
k.constructor = f,
k.kill()._gc = !1,
f.killtweensof = f.killdelayedcallsto = c.killtweensof,
f.gettweensof = c.gettweensof,
f.lagsmoothing = c.lagsmoothing,
f.ticker = c.ticker,
f.render = c.render,
k.invalidate = function() {
return this._yoyo = this.vars.yoyo === !0 || !!this.vars.yoyoease,
this._repeat = this.vars.repeat || 0,
this._repeatdelay = this.vars.repeatdelay || 0,
this._yoyoease = null,
this._uncache(!0),
c.prototype.invalidate.call(this)
},
k.updateto = function(a, b) {
var d, e = this.ratio,
f = this.vars.immediaterender || a.immediaterender;
b && this._starttime < this._timeline._time && (this._starttime = this._timeline._time, this._uncache(!1), this._gc ? this._enabled(!0, !1) : this._timeline.insert(this, this._starttime - this._delay));
for (d in a) this.vars[d] = a[d];
if (this._initted || f) if (b) this._initted = !1,
f && this.render(0, !0, !0);
else if (this._gc && this._enabled(!0, !1), this._notifypluginsofenabled && this._firstpt && c._onpluginevent("_ondisable", this), this._time / this._duration > .998) {
var g = this._totaltime;
this.render(0, !0, !1),
this._initted = !1,
this.render(g, !0, !1)
} else if (this._initted = !1, this._init(), this._time > 0 || f) for (var h, i = 1 / (1 - e), j = this._firstpt; j;) h = j.s + j.c,
j.c *= i,
j.s = h - j.c,
j = j._next;
return this
},
k.render = function(a, b, d) {
this._initted || 0 === this._duration && this.vars.repeat && this.invalidate();
var e, f, i, j, k, l, m, n, o, p = this._dirty ? this.totalduration() : this._totalduration,
q = this._time,
r = this._totaltime,
s = this._cycle,
t = this._duration,
u = this._rawprevtime;
if (a >= p - 1e-7 && a >= 0 ? (this._totaltime = p, this._cycle = this._repeat, this._yoyo && 0 !== (1 & this._cycle) ? (this._time = 0, this.ratio = this._ease._calcend ? this._ease.getratio(0) : 0) : (this._time = t, this.ratio = this._ease._calcend ? this._ease.getratio(1) : 1), this._reversed || (e = !0, f = "oncomplete", d = d || this._timeline.autoremovechildren), 0 === t && (this._initted || !this.vars.lazy || d) && (this._starttime === this._timeline._duration && (a = 0), (0 > u || 0 >= a && a >= -1e-7 || u === g && "ispause" !== this.data) && u !== a && (d = !0, u > g && (f = "onreversecomplete")), this._rawprevtime = n = !b || a || u === a ? a: g)) : 1e-7 > a ? (this._totaltime = this._time = this._cycle = 0, this.ratio = this._ease._calcend ? this._ease.getratio(0) : 0, (0 !== r || 0 === t && u > 0) && (f = "onreversecomplete", e = this._reversed), 0 > a && (this._active = !1, 0 === t && (this._initted || !this.vars.lazy || d) && (u >= 0 && (d = !0), this._rawprevtime = n = !b || a || u === a ? a: g)), this._initted || (d = !0)) : (this._totaltime = this._time = a, 0 !== this._repeat && (j = t + this._repeatdelay, this._cycle = this._totaltime / j >> 0, 0 !== this._cycle && this._cycle === this._totaltime / j && a >= r && this._cycle--, this._time = this._totaltime - this._cycle * j, this._yoyo && 0 !== (1 & this._cycle) && (this._time = t - this._time, o = this._yoyoease || this.vars.yoyoease, o && (this._yoyoease || (o !== !0 || this._initted ? this._yoyoease = o = o === !0 ? this._ease: o instanceof ease ? o: ease.map[o] : (o = this.vars.ease, this._yoyoease = o = o ? o instanceof ease ? o: "function" == typeof o ? new ease(o, this.vars.easeparams) : ease.map[o] || c.defaultease: c.defaultease)), this.ratio = o ? 1 - o.getratio((t - this._time) / t) : 0)), this._time > t ? this._time = t: this._time < 0 && (this._time = 0)), this._easetype && !o ? (k = this._time / t, l = this._easetype, m = this._easepower, (1 === l || 3 === l && k >= .5) && (k = 1 - k), 3 === l && (k *= 2), 1 === m ? k *= k: 2 === m ? k *= k * k: 3 === m ? k *= k * k * k: 4 === m && (k *= k * k * k * k), 1 === l ? this.ratio = 1 - k: 2 === l ? this.ratio = k: this._time / t < .5 ? this.ratio = k / 2 : this.ratio = 1 - k / 2) : o || (this.ratio = this._ease.getratio(this._time / t))), q === this._time && !d && s === this._cycle) return void(r !== this._totaltime && this._onupdate && (b || this._callback("onupdate")));
if (!this._initted) {
if (this._init(), !this._initted || this._gc) return;
if (!d && this._firstpt && (this.vars.lazy !== !1 && this._duration || this.vars.lazy && !this._duration)) return this._time = q,
this._totaltime = r,
this._rawprevtime = u,
this._cycle = s,
h.lazytweens.push(this),
void(this._lazy = [a, b]); ! this._time || e || o ? e && this._ease._calcend && !o && (this.ratio = this._ease.getratio(0 === this._time ? 0 : 1)) : this.ratio = this._ease.getratio(this._time / t)
}
for (this._lazy !== !1 && (this._lazy = !1), this._active || !this._paused && this._time !== q && a >= 0 && (this._active = !0), 0 === r && (2 === this._initted && a > 0 && this._init(), this._startat && (a >= 0 ? this._startat.render(a, b, d) : f || (f = "_dummygs")), this.vars.onstart && (0 !== this._totaltime || 0 === t) && (b || this._callback("onstart"))), i = this._firstpt; i;) i.f ? i.t[i.p](i.c * this.ratio + i.s) : i.t[i.p] = i.c * this.ratio + i.s,
i = i._next;
this._onupdate && (0 > a && this._startat && this._starttime && this._startat.render(a, b, d), b || (this._totaltime !== r || f) && this._callback("onupdate")),
this._cycle !== s && (b || this._gc || this.vars.onrepeat && this._callback("onrepeat")),
f && (!this._gc || d) && (0 > a && this._startat && !this._onupdate && this._starttime && this._startat.render(a, b, d), e && (this._timeline.autoremovechildren && this._enabled(!1, !1), this._active = !1), !b && this.vars[f] && this._callback(f), 0 === t && this._rawprevtime === g && n !== g && (this._rawprevtime = 0))
},
f.to = function(a, b, c) {
return new f(a, b, c)
},
f.from = function(a, b, c) {
return c.runbackwards = !0,
c.immediaterender = 0 != c.immediaterender,
new f(a, b, c)
},
f.fromto = function(a, b, c, d) {
return d.startat = c,
d.immediaterender = 0 != d.immediaterender && 0 != c.immediaterender,
new f(a, b, d)
},
f.staggerto = f.allto = function(a, b, g, h, k, m, n) {
h = h || 0;
var o, p, q, r, s = 0,
t = [],
u = function() {
g.oncomplete && g.oncomplete.apply(g.oncompletescope || this, arguments),
k.apply(n || g.callbackscope || this, m || l)
},
v = g.cycle,
w = g.startat && g.startat.cycle;
for (j(a) || ("string" == typeof a && (a = c.selector(a) || a), i(a) && (a = d(a))), a = a || [], 0 > h && (a = d(a), a.reverse(), h *= -1), o = a.length - 1, q = 0; o >= q; q++) {
p = {};
for (r in g) p[r] = g[r];
if (v && (e(p, a, q), null != p.duration && (b = p.duration, delete p.duration)), w) {
w = p.startat = {};
for (r in g.startat) w[r] = g.startat[r];
e(p.startat, a, q)
}
p.delay = s + (p.delay || 0),
q === o && k && (p.oncomplete = u),
t[q] = new f(a[q], b, p),
s += h
}
return t
},
f.staggerfrom = f.allfrom = function(a, b, c, d, e, g, h) {
return c.runbackwards = !0,
c.immediaterender = 0 != c.immediaterender,
f.staggerto(a, b, c, d, e, g, h)
},
f.staggerfromto = f.allfromto = function(a, b, c, d, e, g, h, i) {
return d.startat = c,
d.immediaterender = 0 != d.immediaterender && 0 != c.immediaterender,
f.staggerto(a, b, d, e, g, h, i)
},
f.delayedcall = function(a, b, c, d, e) {
return new f(b, 0, {
delay: a,
oncomplete: b,
oncompleteparams: c,
callbackscope: d,
onreversecomplete: b,
onreversecompleteparams: c,
immediaterender: !1,
useframes: e,
overwrite: 0
})
},
f.set = function(a, b) {
return new f(a, 0, b)
},
f.istweening = function(a) {
return c.gettweensof(a, !0).length > 0
};
var m = function(a, b) {
for (var d = [], e = 0, f = a._first; f;) f instanceof c ? d[e++] = f: (b && (d[e++] = f), d = d.concat(m(f, b)), e = d.length),
f = f._next;
return d
},
n = f.getalltweens = function(b) {
return m(a._roottimeline, b).concat(m(a._rootframestimeline, b))
};
f.killall = function(a, c, d, e) {
null == c && (c = !0),
null == d && (d = !0);
var f, g, h, i = n(0 != e),
j = i.length,
k = c && d && e;
for (h = 0; j > h; h++) g = i[h],
(k || g instanceof b || (f = g.target === g.vars.oncomplete) && d || c && !f) && (a ? g.totaltime(g._reversed ? 0 : g.totalduration()) : g._enabled(!1, !1))
},
f.killchildtweensof = function(a, b) {
if (null != a) {
var e, g, k, l, m, n = h.tweenlookup;
if ("string" == typeof a && (a = c.selector(a) || a), i(a) && (a = d(a)), j(a)) for (l = a.length; --l > -1;) f.killchildtweensof(a[l], b);
else {
e = [];
for (k in n) for (g = n[k].target.parentnode; g;) g === a && (e = e.concat(n[k].tweens)),
g = g.parentnode;
for (m = e.length, l = 0; m > l; l++) b && e[l].totaltime(e[l].totalduration()),
e[l]._enabled(!1, !1)
}
}
};
var o = function(a, c, d, e) {
c = c !== !1,
d = d !== !1,
e = e !== !1;
for (var f, g, h = n(e), i = c && d && e, j = h.length; --j > -1;) g = h[j],
(i || g instanceof b || (f = g.target === g.vars.oncomplete) && d || c && !f) && g.paused(a)
};
return f.pauseall = function(a, b, c) {
o(!0, a, b, c)
},
f.resumeall = function(a, b, c) {
o(!1, a, b, c)
},
f.globaltimescale = function(b) {
var d = a._roottimeline,
e = c.ticker.time;
return arguments.length ? (b = b || g, d._starttime = e - (e - d._starttime) * d._timescale / b, d = a._rootframestimeline, e = c.ticker.frame, d._starttime = e - (e - d._starttime) * d._timescale / b, d._timescale = a._roottimeline._timescale = b, b) : d._timescale
},
k.progress = function(a, b) {
return arguments.length ? this.totaltime(this.duration() * (this._yoyo && 0 !== (1 & this._cycle) ? 1 - a: a) + this._cycle * (this._duration + this._repeatdelay), b) : this._time / this.duration()
},
k.totalprogress = function(a, b) {
return arguments.length ? this.totaltime(this.totalduration() * a, b) : this._totaltime / this.totalduration()
},
k.time = function(a, b) {
return arguments.length ? (this._dirty && this.totalduration(), a > this._duration && (a = this._duration), this._yoyo && 0 !== (1 & this._cycle) ? a = this._duration - a + this._cycle * (this._duration + this._repeatdelay) : 0 !== this._repeat && (a += this._cycle * (this._duration + this._repeatdelay)), this.totaltime(a, b)) : this._time
},
k.duration = function(b) {
return arguments.length ? a.prototype.duration.call(this, b) : this._duration
},
k.totalduration = function(a) {
return arguments.length ? -1 === this._repeat ? this: this.duration((a - this._repeat * this._repeatdelay) / (this._repeat + 1)) : (this._dirty && (this._totalduration = -1 === this._repeat ? 999999999999 : this._duration * (this._repeat + 1) + this._repeatdelay * this._repeat, this._dirty = !1), this._totalduration)
},
k.repeat = function(a) {
return arguments.length ? (this._repeat = a, this._uncache(!0)) : this._repeat
},
k.repeatdelay = function(a) {
return arguments.length ? (this._repeatdelay = a, this._uncache(!0)) : this._repeatdelay
},
k.yoyo = function(a) {
return arguments.length ? (this._yoyo = a, this) : this._yoyo
},
f
},
!0),
_gsscope._gsdefine("timelinelite", ["core.animation", "core.simpletimeline", "tweenlite"],
function(a, b, c) {
var d = function(a) {
b.call(this, a),
this._labels = {},
this.autoremovechildren = this.vars.autoremovechildren === !0,
this.smoothchildtiming = this.vars.smoothchildtiming === !0,
this._sortchildren = !0,
this._onupdate = this.vars.onupdate;
var c, d, e = this.vars;
for (d in e) c = e[d],
i(c) && -1 !== c.join("").indexof("{self}") && (e[d] = this._swapselfinparams(c));
i(e.tweens) && this.add(e.tweens, 0, e.align, e.stagger)
},
e = 1e-10,
f = c._internals,
g = d._internals = {},
h = f.isselector,
i = f.isarray,
j = f.lazytweens,
k = f.lazyrender,
l = _gsscope._gsdefine.globals,
m = function(a) {
var b, c = {};
for (b in a) c[b] = a[b];
return c
},
n = function(a, b, c) {
var d, e, f = a.cycle;
for (d in f) e = f[d],
a[d] = "function" == typeof e ? e(c, b[c]) : e[c % e.length];
delete a.cycle
},
o = g.pausecallback = function() {},
p = function(a) {
var b, c = [],
d = a.length;
for (b = 0; b !== d; c.push(a[b++]));
return c
},
q = d.prototype = new b;
return d.version = "1.20.2",
q.constructor = d,
q.kill()._gc = q._forcingplayhead = q._haspause = !1,
q.to = function(a, b, d, e) {
var f = d.repeat && l.tweenmax || c;
return b ? this.add(new f(a, b, d), e) : this.set(a, d, e)
},
q.from = function(a, b, d, e) {
return this.add((d.repeat && l.tweenmax || c).from(a, b, d), e)
},
q.fromto = function(a, b, d, e, f) {
var g = e.repeat && l.tweenmax || c;
return b ? this.add(g.fromto(a, b, d, e), f) : this.set(a, e, f)
},
q.staggerto = function(a, b, e, f, g, i, j, k) {
var l, o, q = new d({
oncomplete: i,
oncompleteparams: j,
callbackscope: k,
smoothchildtiming: this.smoothchildtiming
}),
r = e.cycle;
for ("string" == typeof a && (a = c.selector(a) || a), a = a || [], h(a) && (a = p(a)), f = f || 0, 0 > f && (a = p(a), a.reverse(), f *= -1), o = 0; o < a.length; o++) l = m(e),
l.startat && (l.startat = m(l.startat), l.startat.cycle && n(l.startat, a, o)),
r && (n(l, a, o), null != l.duration && (b = l.duration, delete l.duration)),
q.to(a[o], b, l, o * f);
return this.add(q, g)
},
q.staggerfrom = function(a, b, c, d, e, f, g, h) {
return c.immediaterender = 0 != c.immediaterender,
c.runbackwards = !0,
this.staggerto(a, b, c, d, e, f, g, h)
},
q.staggerfromto = function(a, b, c, d, e, f, g, h, i) {
return d.startat = c,
d.immediaterender = 0 != d.immediaterender && 0 != c.immediaterender,
this.staggerto(a, b, d, e, f, g, h, i)
},
q.call = function(a, b, d, e) {
return this.add(c.delayedcall(0, a, b, d), e)
},
q.set = function(a, b, d) {
return d = this._parsetimeorlabel(d, 0, !0),
null == b.immediaterender && (b.immediaterender = d === this._time && !this._paused),
this.add(new c(a, 0, b), d)
},
d.exportroot = function(a, b) {
a = a || {},
null == a.smoothchildtiming && (a.smoothchildtiming = !0);
var e, f, g = new d(a),
h = g._timeline;
for (null == b && (b = !0), h._remove(g, !0), g._starttime = 0, g._rawprevtime = g._time = g._totaltime = h._time, e = h._first; e;) f = e._next,
b && e instanceof c && e.target === e.vars.oncomplete || g.add(e, e._starttime - e._delay),
e = f;
return h.add(g, 0),
g
},
q.add = function(e, f, g, h) {
var j, k, l, m, n, o;
if ("number" != typeof f && (f = this._parsetimeorlabel(f, 0, !0, e)), !(e instanceof a)) {
if (e instanceof array || e && e.push && i(e)) {
for (g = g || "normal", h = h || 0, j = f, k = e.length, l = 0; k > l; l++) i(m = e[l]) && (m = new d({
tweens: m
})),
this.add(m, j),
"string" != typeof m && "function" != typeof m && ("sequence" === g ? j = m._starttime + m.totalduration() / m._timescale: "start" === g && (m._starttime -= m.delay())),
j += h;
return this._uncache(!0)
}
if ("string" == typeof e) return this.addlabel(e, f);
if ("function" != typeof e) throw "cannot add " + e + " into the timeline; it is not a tween, timeline, function, or string.";
e = c.delayedcall(0, e)
}
if (b.prototype.add.call(this, e, f), e._time && e.render((this.rawtime() - e._starttime) * e._timescale, !1, !1), (this._gc || this._time === this._duration) && !this._paused && this._duration < this.duration()) for (n = this, o = n.rawtime() > e._starttime; n._timeline;) o && n._timeline.smoothchildtiming ? n.totaltime(n._totaltime, !0) : n._gc && n._enabled(!0, !1),
n = n._timeline;
return this
},
q.remove = function(b) {
if (b instanceof a) {
this._remove(b, !1);
var c = b._timeline = b.vars.useframes ? a._rootframestimeline: a._roottimeline;
return b._starttime = (b._paused ? b._pausetime: c._time) - (b._reversed ? b.totalduration() - b._totaltime: b._totaltime) / b._timescale,
this
}
if (b instanceof array || b && b.push && i(b)) {
for (var d = b.length; --d > -1;) this.remove(b[d]);
return this
}
return "string" == typeof b ? this.removelabel(b) : this.kill(null, b)
},
q._remove = function(a, c) {
b.prototype._remove.call(this, a, c);
var d = this._last;
return d ? this._time > this.duration() && (this._time = this._duration, this._totaltime = this._totalduration) : this._time = this._totaltime = this._duration = this._totalduration = 0,
this
},
q.append = function(a, b) {
return this.add(a, this._parsetimeorlabel(null, b, !0, a))
},
q.insert = q.insertmultiple = function(a, b, c, d) {
return this.add(a, b || 0, c, d)
},
q.appendmultiple = function(a, b, c, d) {
return this.add(a, this._parsetimeorlabel(null, b, !0, a), c, d)
},
q.addlabel = function(a, b) {
return this._labels[a] = this._parsetimeorlabel(b),
this
},
q.addpause = function(a, b, d, e) {
var f = c.delayedcall(0, o, d, e || this);
return f.vars.oncomplete = f.vars.onreversecomplete = b,
f.data = "ispause",
this._haspause = !0,
this.add(f, a)
},
q.removelabel = function(a) {
return delete this._labels[a],
this
},
q.getlabeltime = function(a) {
return null != this._labels[a] ? this._labels[a] : -1
},
q._parsetimeorlabel = function(b, c, d, e) {
var f, g;
if (e instanceof a && e.timeline === this) this.remove(e);
else if (e && (e instanceof array || e.push && i(e))) for (g = e.length; --g > -1;) e[g] instanceof a && e[g].timeline === this && this.remove(e[g]);
if (f = this.duration() > 99999999999 ? this.recent().endtime(!1) : this._duration, "string" == typeof c) return this._parsetimeorlabel(c, d && "number" == typeof b && null == this._labels[c] ? b - f: 0, d);
if (c = c || 0, "string" != typeof b || !isnan(b) && null == this._labels[b]) null == b && (b = f);
else {
if (g = b.indexof("="), -1 === g) return null == this._labels[b] ? d ? this._labels[b] = f + c: c: this._labels[b] + c;
c = parseint(b.charat(g - 1) + "1", 10) * number(b.substr(g + 1)),
b = g > 1 ? this._parsetimeorlabel(b.substr(0, g - 1), 0, d) : f
}
return number(b) + c
},
q.seek = function(a, b) {
return this.totaltime("number" == typeof a ? a: this._parsetimeorlabel(a), b !== !1)
},
q.stop = function() {
return this.paused(!0)
},
q.gotoandplay = function(a, b) {
return this.play(a, b)
},
q.gotoandstop = function(a, b) {
return this.pause(a, b)
},
q.render = function(a, b, c) {
this._gc && this._enabled(!0, !1);
var d, f, g, h, i, l, m, n = this._dirty ? this.totalduration() : this._totalduration,
o = this._time,
p = this._starttime,
q = this._timescale,
r = this._paused;
if (a >= n - 1e-7 && a >= 0) this._totaltime = this._time = n,
this._reversed || this._haspausedchild() || (f = !0, h = "oncomplete", i = !!this._timeline.autoremovechildren, 0 === this._duration && (0 >= a && a >= -1e-7 || this._rawprevtime < 0 || this._rawprevtime === e) && this._rawprevtime !== a && this._first && (i = !0, this._rawprevtime > e && (h = "onreversecomplete"))),
this._rawprevtime = this._duration || !b || a || this._rawprevtime === a ? a: e,
a = n + 1e-4;
else if (1e-7 > a) if (this._totaltime = this._time = 0, (0 !== o || 0 === this._duration && this._rawprevtime !== e && (this._rawprevtime > 0 || 0 > a && this._rawprevtime >= 0)) && (h = "onreversecomplete", f = this._reversed), 0 > a) this._active = !1,
this._timeline.autoremovechildren && this._reversed ? (i = f = !0, h = "onreversecomplete") : this._rawprevtime >= 0 && this._first && (i = !0),
this._rawprevtime = a;
else {
if (this._rawprevtime = this._duration || !b || a || this._rawprevtime === a ? a: e, 0 === a && f) for (d = this._first; d && 0 === d._starttime;) d._duration || (f = !1),
d = d._next;
a = 0,
this._initted || (i = !0)
} else {
if (this._haspause && !this._forcingplayhead && !b) {
if (a >= o) for (d = this._first; d && d._starttime <= a && !l;) d._duration || "ispause" !== d.data || d.ratio || 0 === d._starttime && 0 === this._rawprevtime || (l = d),
d = d._next;
else for (d = this._last; d && d._starttime >= a && !l;) d._duration || "ispause" === d.data && d._rawprevtime > 0 && (l = d),
d = d._prev;
l && (this._time = a = l._starttime, this._totaltime = a + this._cycle * (this._totalduration + this._repeatdelay))
}
this._totaltime = this._time = this._rawprevtime = a
}
if (this._time !== o && this._first || c || i || l) {
if (this._initted || (this._initted = !0), this._active || !this._paused && this._time !== o && a > 0 && (this._active = !0), 0 === o && this.vars.onstart && (0 === this._time && this._duration || b || this._callback("onstart")), m = this._time, m >= o) for (d = this._first; d && (g = d._next, m === this._time && (!this._paused || r));)(d._active || d._starttime <= m && !d._paused && !d._gc) && (l === d && this.pause(), d._reversed ? d.render((d._dirty ? d.totalduration() : d._totalduration) - (a - d._starttime) * d._timescale, b, c) : d.render((a - d._starttime) * d._timescale, b, c)),
d = g;
else for (d = this._last; d && (g = d._prev, m === this._time && (!this._paused || r));) {
if (d._active || d._starttime <= o && !d._paused && !d._gc) {
if (l === d) {
for (l = d._prev; l && l.endtime() > this._time;) l.render(l._reversed ? l.totalduration() - (a - l._starttime) * l._timescale: (a - l._starttime) * l._timescale, b, c),
l = l._prev;
l = null,
this.pause()
}
d._reversed ? d.render((d._dirty ? d.totalduration() : d._totalduration) - (a - d._starttime) * d._timescale, b, c) : d.render((a - d._starttime) * d._timescale, b, c)
}
d = g
}
this._onupdate && (b || (j.length && k(), this._callback("onupdate"))),
h && (this._gc || (p === this._starttime || q !== this._timescale) && (0 === this._time || n >= this.totalduration()) && (f && (j.length && k(), this._timeline.autoremovechildren && this._enabled(!1, !1), this._active = !1), !b && this.vars[h] && this._callback(h)))
}
},
q._haspausedchild = function() {
for (var a = this._first; a;) {
if (a._paused || a instanceof d && a._haspausedchild()) return ! 0;
a = a._next
}
return ! 1
},
q.getchildren = function(a, b, d, e) {
e = e || -9999999999;
for (var f = [], g = this._first, h = 0; g;) g._starttime < e || (g instanceof c ? b !== !1 && (f[h++] = g) : (d !== !1 && (f[h++] = g), a !== !1 && (f = f.concat(g.getchildren(!0, b, d)), h = f.length))),
g = g._next;
return f
},
q.gettweensof = function(a, b) {
var d, e, f = this._gc,
g = [],
h = 0;
for (f && this._enabled(!0, !0), d = c.gettweensof(a), e = d.length; --e > -1;)(d[e].timeline === this || b && this._contains(d[e])) && (g[h++] = d[e]);
return f && this._enabled(!1, !0),
g
},
q.recent = function() {
return this._recent
},
q._contains = function(a) {
for (var b = a.timeline; b;) {
if (b === this) return ! 0;
b = b.timeline
}
return ! 1
},
q.shiftchildren = function(a, b, c) {
c = c || 0;
for (var d, e = this._first,
f = this._labels; e;) e._starttime >= c && (e._starttime += a),
e = e._next;
if (b) for (d in f) f[d] >= c && (f[d] += a);
return this._uncache(!0)
},
q._kill = function(a, b) {
if (!a && !b) return this._enabled(!1, !1);
for (var c = b ? this.gettweensof(b) : this.getchildren(!0, !0, !1), d = c.length, e = !1; --d > -1;) c[d]._kill(a, b) && (e = !0);
return e
},
q.clear = function(a) {
var b = this.getchildren(!1, !0, !0),
c = b.length;
for (this._time = this._totaltime = 0; --c > -1;) b[c]._enabled(!1, !1);
return a !== !1 && (this._labels = {}),
this._uncache(!0)
},
q.invalidate = function() {
for (var b = this._first; b;) b.invalidate(),
b = b._next;
return a.prototype.invalidate.call(this)
},
q._enabled = function(a, c) {
if (a === this._gc) for (var d = this._first; d;) d._enabled(a, !0),
d = d._next;
return b.prototype._enabled.call(this, a, c)
},
q.totaltime = function(b, c, d) {
this._forcingplayhead = !0;
var e = a.prototype.totaltime.apply(this, arguments);
return this._forcingplayhead = !1,
e
},
q.duration = function(a) {
return arguments.length ? (0 !== this.duration() && 0 !== a && this.timescale(this._duration / a), this) : (this._dirty && this.totalduration(), this._duration)
},
q.totalduration = function(a) {
if (!arguments.length) {
if (this._dirty) {
for (var b, c, d = 0,
e = this._last,
f = 999999999999; e;) b = e._prev,
e._dirty && e.totalduration(),
e._starttime > f && this._sortchildren && !e._paused ? this.add(e, e._starttime - e._delay) : f = e._starttime,
e._starttime < 0 && !e._paused && (d -= e._starttime, this._timeline.smoothchildtiming && (this._starttime += e._starttime / this._timescale), this.shiftchildren( - e._starttime, !1, -9999999999), f = 0),
c = e._starttime + e._totalduration / e._timescale,
c > d && (d = c),
e = b;
this._duration = this._totalduration = d,
this._dirty = !1
}
return this._totalduration
}
return a && this.totalduration() ? this.timescale(this._totalduration / a) : this
},
q.paused = function(b) {
if (!b) for (var c = this._first,
d = this._time; c;) c._starttime === d && "ispause" === c.data && (c._rawprevtime = 0),
c = c._next;
return a.prototype.paused.apply(this, arguments)
},
q.usesframes = function() {
for (var b = this._timeline; b._timeline;) b = b._timeline;
return b === a._rootframestimeline
},
q.rawtime = function(a) {
return a && (this._paused || this._repeat && this.time() > 0 && this.totalprogress() < 1) ? this._totaltime % (this._duration + this._repeatdelay) : this._paused ? this._totaltime: (this._timeline.rawtime(a) - this._starttime) * this._timescale
},
d
},
!0),
_gsscope._gsdefine("timelinemax", ["timelinelite", "tweenlite", "easing.ease"],
function(a, b, c) {
var d = function(b) {
a.call(this, b),
this._repeat = this.vars.repeat || 0,
this._repeatdelay = this.vars.repeatdelay || 0,
this._cycle = 0,
this._yoyo = this.vars.yoyo === !0,
this._dirty = !0
},
e = 1e-10,
f = b._internals,
g = f.lazytweens,
h = f.lazyrender,
i = _gsscope._gsdefine.globals,
j = new c(null, null, 1, 0),
k = d.prototype = new a;
return k.constructor = d,
k.kill()._gc = !1,
d.version = "1.20.2",
k.invalidate = function() {
return this._yoyo = this.vars.yoyo === !0,
this._repeat = this.vars.repeat || 0,
this._repeatdelay = this.vars.repeatdelay || 0,
this._uncache(!0),
a.prototype.invalidate.call(this)
},
k.addcallback = function(a, c, d, e) {
return this.add(b.delayedcall(0, a, d, e), c)
},
k.removecallback = function(a, b) {
if (a) if (null == b) this._kill(null, a);
else for (var c = this.gettweensof(a, !1), d = c.length, e = this._parsetimeorlabel(b); --d > -1;) c[d]._starttime === e && c[d]._enabled(!1, !1);
return this
},
k.removepause = function(b) {
return this.removecallback(a._internals.pausecallback, b)
},
k.tweento = function(a, c) {
c = c || {};
var d, e, f, g = {
ease: j,
useframes: this.usesframes(),
immediaterender: !1
},
h = c.repeat && i.tweenmax || b;
for (e in c) g[e] = c[e];
return g.time = this._parsetimeorlabel(a),
d = math.abs(number(g.time) - this._time) / this._timescale || .001,
f = new h(this, d, g),
g.onstart = function() {
f.target.paused(!0),
f.vars.time !== f.target.time() && d === f.duration() && f.duration(math.abs(f.vars.time - f.target.time()) / f.target._timescale),
c.onstart && c.onstart.apply(c.onstartscope || c.callbackscope || f, c.onstartparams || [])
},
f
},
k.tweenfromto = function(a, b, c) {
c = c || {},
a = this._parsetimeorlabel(a),
c.startat = {
oncomplete: this.seek,
oncompleteparams: [a],
callbackscope: this
},
c.immediaterender = c.immediaterender !== !1;
var d = this.tweento(b, c);
return d.duration(math.abs(d.vars.time - a) / this._timescale || .001)
},
k.render = function(a, b, c) {
this._gc && this._enabled(!0, !1);
var d, f, i, j, k, l, m, n, o = this._dirty ? this.totalduration() : this._totalduration,
p = this._duration,
q = this._time,
r = this._totaltime,
s = this._starttime,
t = this._timescale,
u = this._rawprevtime,
v = this._paused,
w = this._cycle;
if (a >= o - 1e-7 && a >= 0) this._locked || (this._totaltime = o, this._cycle = this._repeat),
this._reversed || this._haspausedchild() || (f = !0, j = "oncomplete", k = !!this._timeline.autoremovechildren, 0 === this._duration && (0 >= a && a >= -1e-7 || 0 > u || u === e) && u !== a && this._first && (k = !0, u > e && (j = "onreversecomplete"))),
this._rawprevtime = this._duration || !b || a || this._rawprevtime === a ? a: e,
this._yoyo && 0 !== (1 & this._cycle) ? this._time = a = 0 : (this._time = p, a = p + 1e-4);
else if (1e-7 > a) if (this._locked || (this._totaltime = this._cycle = 0), this._time = 0, (0 !== q || 0 === p && u !== e && (u > 0 || 0 > a && u >= 0) && !this._locked) && (j = "onreversecomplete", f = this._reversed), 0 > a) this._active = !1,
this._timeline.autoremovechildren && this._reversed ? (k = f = !0, j = "onreversecomplete") : u >= 0 && this._first && (k = !0),
this._rawprevtime = a;
else {
if (this._rawprevtime = p || !b || a || this._rawprevtime === a ? a: e, 0 === a && f) for (d = this._first; d && 0 === d._starttime;) d._duration || (f = !1),
d = d._next;
a = 0,
this._initted || (k = !0)
} else if (0 === p && 0 > u && (k = !0), this._time = this._rawprevtime = a, this._locked || (this._totaltime = a, 0 !== this._repeat && (l = p + this._repeatdelay, this._cycle = this._totaltime / l >> 0, 0 !== this._cycle && this._cycle === this._totaltime / l && a >= r && this._cycle--, this._time = this._totaltime - this._cycle * l, this._yoyo && 0 !== (1 & this._cycle) && (this._time = p - this._time), this._time > p ? (this._time = p, a = p + 1e-4) : this._time < 0 ? this._time = a = 0 : a = this._time)), this._haspause && !this._forcingplayhead && !b) {
if (a = this._time, a >= q || this._repeat && w !== this._cycle) for (d = this._first; d && d._starttime <= a && !m;) d._duration || "ispause" !== d.data || d.ratio || 0 === d._starttime && 0 === this._rawprevtime || (m = d),
d = d._next;
else for (d = this._last; d && d._starttime >= a && !m;) d._duration || "ispause" === d.data && d._rawprevtime > 0 && (m = d),
d = d._prev;
m && m._starttime < p && (this._time = a = m._starttime, this._totaltime = a + this._cycle * (this._totalduration + this._repeatdelay))
}
if (this._cycle !== w && !this._locked) {
var x = this._yoyo && 0 !== (1 & w),
y = x === (this._yoyo && 0 !== (1 & this._cycle)),
z = this._totaltime,
a = this._cycle,
b = this._rawprevtime,
c = this._time;
if (this._totaltime = w * p, this._cycle < w ? x = !x: this._totaltime += p, this._time = q, this._rawprevtime = 0 === p ? u - 1e-4: u, this._cycle = w, this._locked = !0, q = x ? 0 : p, this.render(q, b, 0 === p), b || this._gc || this.vars.onrepeat && (this._cycle = a, this._locked = !1, this._callback("onrepeat")), q !== this._time) return;
if (y && (this._cycle = w, this._locked = !0, q = x ? p + 1e-4: -1e-4, this.render(q, !0, !1)), this._locked = !1, this._paused && !v) return;
this._time = c,
this._totaltime = z,
this._cycle = a,
this._rawprevtime = b
}
if (! (this._time !== q && this._first || c || k || m)) return void(r !== this._totaltime && this._onupdate && (b || this._callback("onupdate")));
if (this._initted || (this._initted = !0), this._active || !this._paused && this._totaltime !== r && a > 0 && (this._active = !0), 0 === r && this.vars.onstart && (0 === this._totaltime && this._totalduration || b || this._callback("onstart")), n = this._time, n >= q) for (d = this._first; d && (i = d._next, n === this._time && (!this._paused || v));)(d._active || d._starttime <= this._time && !d._paused && !d._gc) && (m === d && this.pause(), d._reversed ? d.render((d._dirty ? d.totalduration() : d._totalduration) - (a - d._starttime) * d._timescale, b, c) : d.render((a - d._starttime) * d._timescale, b, c)),
d = i;
else for (d = this._last; d && (i = d._prev, n === this._time && (!this._paused || v));) {
if (d._active || d._starttime <= q && !d._paused && !d._gc) {
if (m === d) {
for (m = d._prev; m && m.endtime() > this._time;) m.render(m._reversed ? m.totalduration() - (a - m._starttime) * m._timescale: (a - m._starttime) * m._timescale, b, c),
m = m._prev;
m = null,
this.pause()
}
d._reversed ? d.render((d._dirty ? d.totalduration() : d._totalduration) - (a - d._starttime) * d._timescale, b, c) : d.render((a - d._starttime) * d._timescale, b, c)
}
d = i
}
this._onupdate && (b || (g.length && h(), this._callback("onupdate"))),
j && (this._locked || this._gc || (s === this._starttime || t !== this._timescale) && (0 === this._time || o >= this.totalduration()) && (f && (g.length && h(), this._timeline.autoremovechildren && this._enabled(!1, !1), this._active = !1), !b && this.vars[j] && this._callback(j)))
},
k.getactive = function(a, b, c) {
null == a && (a = !0),
null == b && (b = !0),
null == c && (c = !1);
var d, e, f = [],
g = this.getchildren(a, b, c),
h = 0,
i = g.length;
for (d = 0; i > d; d++) e = g[d],
e.isactive() && (f[h++] = e);
return f
},
k.getlabelafter = function(a) {
a || 0 !== a && (a = this._time);
var b, c = this.getlabelsarray(),
d = c.length;
for (b = 0; d > b; b++) if (c[b].time > a) return c[b].name;
return null
},
k.getlabelbefore = function(a) {
null == a && (a = this._time);
for (var b = this.getlabelsarray(), c = b.length; --c > -1;) if (b[c].time < a) return b[c].name;
return null
},
k.getlabelsarray = function() {
var a, b = [],
c = 0;
for (a in this._labels) b[c++] = {
time: this._labels[a],
name: a
};
return b.sort(function(a, b) {
return a.time - b.time
}),
b
},
k.invalidate = function() {
return this._locked = !1,
a.prototype.invalidate.call(this)
},
k.progress = function(a, b) {
return arguments.length ? this.totaltime(this.duration() * (this._yoyo && 0 !== (1 & this._cycle) ? 1 - a: a) + this._cycle * (this._duration + this._repeatdelay), b) : this._time / this.duration() || 0
},
k.totalprogress = function(a, b) {
return arguments.length ? this.totaltime(this.totalduration() * a, b) : this._totaltime / this.totalduration() || 0
},
k.totalduration = function(b) {
return arguments.length ? -1 !== this._repeat && b ? this.timescale(this.totalduration() / b) : this: (this._dirty && (a.prototype.totalduration.call(this), this._totalduration = -1 === this._repeat ? 999999999999 : this._duration * (this._repeat + 1) + this._repeatdelay * this._repeat), this._totalduration)
},
k.time = function(a, b) {
return arguments.length ? (this._dirty && this.totalduration(), a > this._duration && (a = this._duration), this._yoyo && 0 !== (1 & this._cycle) ? a = this._duration - a + this._cycle * (this._duration + this._repeatdelay) : 0 !== this._repeat && (a += this._cycle * (this._duration + this._repeatdelay)), this.totaltime(a, b)) : this._time
},
k.repeat = function(a) {
return arguments.length ? (this._repeat = a, this._uncache(!0)) : this._repeat
},
k.repeatdelay = function(a) {
return arguments.length ? (this._repeatdelay = a, this._uncache(!0)) : this._repeatdelay
},
k.yoyo = function(a) {
return arguments.length ? (this._yoyo = a, this) : this._yoyo
},
k.currentlabel = function(a) {
return arguments.length ? this.seek(a, !0) : this.getlabelbefore(this._time + 1e-8)
},
d
},
!0),
function() {
var a = 180 / math.pi,
b = [],
c = [],
d = [],
e = {},
f = _gsscope._gsdefine.globals,
g = function(a, b, c, d) {
c === d && (c = d - (d - b) / 1e6),
a === b && (b = a + (c - a) / 1e6),
this.a = a,
this.b = b,
this.c = c,
this.d = d,
this.da = d - a,
this.ca = c - a,
this.ba = b - a
},
h = ",x,y,z,left,top,right,bottom,margintop,marginleft,marginright,marginbottom,paddingleft,paddingtop,paddingright,paddingbottom,backgroundposition,backgroundposition_y,",
i = function(a, b, c, d) {
var e = {
a: a
},
f = {},
g = {},
h = {
c: d
},
i = (a + b) / 2,
j = (b + c) / 2,
k = (c + d) / 2,
l = (i + j) / 2,
m = (j + k) / 2,
n = (m - l) / 8;
return e.b = i + (a - i) / 4,
f.b = l + n,
e.c = f.a = (e.b + f.b) / 2,
f.c = g.a = (l + m) / 2,
g.b = m - n,
h.b = k + (d - k) / 4,
g.c = h.a = (g.b + h.b) / 2,
[e, f, g, h]
},
j = function(a, e, f, g, h) {
var j, k, l, m, n, o, p, q, r, s, t, u, v, w = a.length - 1,
x = 0,
y = a[0].a;
for (j = 0; w > j; j++) n = a[x],
k = n.a,
l = n.d,
m = a[x + 1].d,
h ? (t = b[j], u = c[j], v = (u + t) * e * .25 / (g ? .5 : d[j] || .5), o = l - (l - k) * (g ? .5 * e: 0 !== t ? v / t: 0), p = l + (m - l) * (g ? .5 * e: 0 !== u ? v / u: 0), q = l - (o + ((p - o) * (3 * t / (t + u) + .5) / 4 || 0))) : (o = l - (l - k) * e * .5, p = l + (m - l) * e * .5, q = l - (o + p) / 2),
o += q,
p += q,
n.c = r = o,
0 !== j ? n.b = y: n.b = y = n.a + .6 * (n.c - n.a),
n.da = l - k,
n.ca = r - k,
n.ba = y - k,
f ? (s = i(k, y, r, l), a.splice(x, 1, s[0], s[1], s[2], s[3]), x += 4) : x++,
y = p;
n = a[x],
n.b = y,
n.c = y + .4 * (n.d - y),
n.da = n.d - n.a,
n.ca = n.c - n.a,
n.ba = y - n.a,
f && (s = i(n.a, y, n.c, n.d), a.splice(x, 1, s[0], s[1], s[2], s[3]))
},
k = function(a, d, e, f) {
var h, i, j, k, l, m, n = [];
if (f) for (a = [f].concat(a), i = a.length; --i > -1;)"string" == typeof(m = a[i][d]) && "=" === m.charat(1) && (a[i][d] = f[d] + number(m.charat(0) + m.substr(2)));
if (h = a.length - 2, 0 > h) return n[0] = new g(a[0][d], 0, 0, a[0][d]),
n;
for (i = 0; h > i; i++) j = a[i][d],
k = a[i + 1][d],
n[i] = new g(j, 0, 0, k),
e && (l = a[i + 2][d], b[i] = (b[i] || 0) + (k - j) * (k - j), c[i] = (c[i] || 0) + (l - k) * (l - k));
return n[i] = new g(a[i][d], 0, 0, a[i + 1][d]),
n
},
l = function(a, f, g, i, l, m) {
var n, o, p, q, r, s, t, u, v = {},
w = [],
x = m || a[0];
l = "string" == typeof l ? "," + l + ",": h,
null == f && (f = 1);
for (o in a[0]) w.push(o);
if (a.length > 1) {
for (u = a[a.length - 1], t = !0, n = w.length; --n > -1;) if (o = w[n], math.abs(x[o] - u[o]) > .05) {
t = !1;
break
}
t && (a = a.concat(), m && a.unshift(m), a.push(a[1]), m = a[a.length - 3])
}
for (b.length = c.length = d.length = 0, n = w.length; --n > -1;) o = w[n],
e[o] = -1 !== l.indexof("," + o + ","),
v[o] = k(a, o, e[o], m);
for (n = b.length; --n > -1;) b[n] = math.sqrt(b[n]),
c[n] = math.sqrt(c[n]);
if (!i) {
for (n = w.length; --n > -1;) if (e[o]) for (p = v[w[n]], s = p.length - 1, q = 0; s > q; q++) r = p[q + 1].da / c[q] + p[q].da / b[q] || 0,
d[q] = (d[q] || 0) + r * r;
for (n = d.length; --n > -1;) d[n] = math.sqrt(d[n])
}
for (n = w.length, q = g ? 4 : 1; --n > -1;) o = w[n],
p = v[o],
j(p, f, g, i, e[o]),
t && (p.splice(0, q), p.splice(p.length - q, q));
return v
},
m = function(a, b, c) {
b = b || "soft";
var d, e, f, h, i, j, k, l, m, n, o, p = {},
q = "cubic" === b ? 3 : 2,
r = "soft" === b,
s = [];
if (r && c && (a = [c].concat(a)), null == a || a.length < q + 1) throw "invalid bezier data";
for (m in a[0]) s.push(m);
for (j = s.length; --j > -1;) {
for (m = s[j], p[m] = i = [], n = 0, l = a.length, k = 0; l > k; k++) d = null == c ? a[k][m] : "string" == typeof(o = a[k][m]) && "=" === o.charat(1) ? c[m] + number(o.charat(0) + o.substr(2)) : number(o),
r && k > 1 && l - 1 > k && (i[n++] = (d + i[n - 2]) / 2),
i[n++] = d;
for (l = n - q + 1, n = 0, k = 0; l > k; k += q) d = i[k],
e = i[k + 1],
f = i[k + 2],
h = 2 === q ? 0 : i[k + 3],
i[n++] = o = 3 === q ? new g(d, e, f, h) : new g(d, (2 * e + d) / 3, (2 * e + f) / 3, f);
i.length = n
}
return p
},
n = function(a, b, c) {
for (var d, e, f, g, h, i, j, k, l, m, n, o = 1 / c,
p = a.length; --p > -1;) for (m = a[p], f = m.a, g = m.d - f, h = m.c - f, i = m.b - f, d = e = 0, k = 1; c >= k; k++) j = o * k,
l = 1 - j,
d = e - (e = (j * j * g + 3 * l * (j * h + l * i)) * j),
n = p * c + k - 1,
b[n] = (b[n] || 0) + d * d
},
o = function(a, b) {
b = b >> 0 || 6;
var c, d, e, f, g = [],
h = [],
i = 0,
j = 0,
k = b - 1,
l = [],
m = [];
for (c in a) n(a[c], g, b);
for (e = g.length, d = 0; e > d; d++) i += math.sqrt(g[d]),
f = d % b,
m[f] = i,
f === k && (j += i, f = d / b >> 0, l[f] = m, h[f] = j, i = 0, m = []);
return {
length: j,
lengths: h,
segments: l
}
},
p = _gsscope._gsdefine.plugin({
propname: "bezier",
priority: -1,
version: "1.3.8",
api: 2,
global: !0,
init: function(a, b, c) {
this._target = a,
b instanceof array && (b = {
values: b
}),
this._func = {},
this._mod = {},
this._props = [],
this._timeres = null == b.timeresolution ? 6 : parseint(b.timeresolution, 10);
var d, e, f, g, h, i = b.values || [],
j = {},
k = i[0],
n = b.autorotate || c.vars.orienttobezier;
this._autorotate = n ? n instanceof array ? n: [["x", "y", "rotation", n === !0 ? 0 : number(n) || 0]] : null;
for (d in k) this._props.push(d);
for (f = this._props.length; --f > -1;) d = this._props[f],
this._overwriteprops.push(d),
e = this._func[d] = "function" == typeof a[d],
j[d] = e ? a[d.indexof("set") || "function" != typeof a["get" + d.substr(3)] ? d: "get" + d.substr(3)]() : parsefloat(a[d]),
h || j[d] !== i[0][d] && (h = j);
if (this._beziers = "cubic" !== b.type && "quadratic" !== b.type && "soft" !== b.type ? l(i, isnan(b.curviness) ? 1 : b.curviness, !1, "thrubasic" === b.type, b.correlate, h) : m(i, b.type, j), this._segcount = this._beziers[d].length, this._timeres) {
var p = o(this._beziers, this._timeres);
this._length = p.length,
this._lengths = p.lengths,
this._segments = p.segments,
this._l1 = this._li = this._s1 = this._si = 0,
this._l2 = this._lengths[0],
this._curseg = this._segments[0],
this._s2 = this._curseg[0],
this._prec = 1 / this._curseg.length
}
if (n = this._autorotate) for (this._initialrotations = [], n[0] instanceof array || (this._autorotate = n = [n]), f = n.length; --f > -1;) {
for (g = 0; 3 > g; g++) d = n[f][g],
this._func[d] = "function" == typeof a[d] ? a[d.indexof("set") || "function" != typeof a["get" + d.substr(3)] ? d: "get" + d.substr(3)] : !1;
d = n[f][2],
this._initialrotations[f] = (this._func[d] ? this._func[d].call(this._target) : this._target[d]) || 0,
this._overwriteprops.push(d)
}
return this._startratio = c.vars.runbackwards ? 1 : 0,
!0
},
set: function(b) {
var c, d, e, f, g, h, i, j, k, l, m = this._segcount,
n = this._func,
o = this._target,
p = b !== this._startratio;
if (this._timeres) {
if (k = this._lengths, l = this._curseg, b *= this._length, e = this._li, b > this._l2 && m - 1 > e) {
for (j = m - 1; j > e && (this._l2 = k[++e]) <= b;);
this._l1 = k[e - 1],
this._li = e,
this._curseg = l = this._segments[e],
this._s2 = l[this._s1 = this._si = 0]
} else if (b < this._l1 && e > 0) {
for (; e > 0 && (this._l1 = k[--e]) >= b;);
0 === e && b < this._l1 ? this._l1 = 0 : e++,
this._l2 = k[e],
this._li = e,
this._curseg = l = this._segments[e],
this._s1 = l[(this._si = l.length - 1) - 1] || 0,
this._s2 = l[this._si]
}
if (c = e, b -= this._l1, e = this._si, b > this._s2 && e < l.length - 1) {
for (j = l.length - 1; j > e && (this._s2 = l[++e]) <= b;);
this._s1 = l[e - 1],
this._si = e
} else if (b < this._s1 && e > 0) {
for (; e > 0 && (this._s1 = l[--e]) >= b;);
0 === e && b < this._s1 ? this._s1 = 0 : e++,
this._s2 = l[e],
this._si = e
}
h = (e + (b - this._s1) / (this._s2 - this._s1)) * this._prec || 0
} else c = 0 > b ? 0 : b >= 1 ? m - 1 : m * b >> 0,
h = (b - c * (1 / m)) * m;
for (d = 1 - h, e = this._props.length; --e > -1;) f = this._props[e],
g = this._beziers[f][c],
i = (h * h * g.da + 3 * d * (h * g.ca + d * g.ba)) * h + g.a,
this._mod[f] && (i = this._mod[f](i, o)),
n[f] ? o[f](i) : o[f] = i;
if (this._autorotate) {
var q, r, s, t, u, v, w, x = this._autorotate;
for (e = x.length; --e > -1;) f = x[e][2],
v = x[e][3] || 0,
w = x[e][4] === !0 ? 1 : a,
g = this._beziers[x[e][0]],
q = this._beziers[x[e][1]],
g && q && (g = g[c], q = q[c], r = g.a + (g.b - g.a) * h, t = g.b + (g.c - g.b) * h, r += (t - r) * h, t += (g.c + (g.d - g.c) * h - t) * h, s = q.a + (q.b - q.a) * h, u = q.b + (q.c - q.b) * h, s += (u - s) * h, u += (q.c + (q.d - q.c) * h - u) * h, i = p ? math.atan2(u - s, t - r) * w + v: this._initialrotations[e], this._mod[f] && (i = this._mod[f](i, o)), n[f] ? o[f](i) : o[f] = i)
}
}
}),
q = p.prototype;
p.bezierthrough = l,
p.cubictoquadratic = i,
p._autocss = !0,
p.quadratictocubic = function(a, b, c) {
return new g(a, (2 * b + a) / 3, (2 * b + c) / 3, c)
},
p._cssregister = function() {
var a = f.cssplugin;
if (a) {
var b = a._internals,
c = b._parsetoproxy,
d = b._setpluginratio,
e = b.cssproptween;
b._registercomplexspecialprop("bezier", {
parser: function(a, b, f, g, h, i) {
b instanceof array && (b = {
values: b
}),
i = new p;
var j, k, l, m = b.values,
n = m.length - 1,
o = [],
q = {};
if (0 > n) return h;
for (j = 0; n >= j; j++) l = c(a, m[j], g, h, i, n !== j),
o[j] = l.end;
for (k in b) q[k] = b[k];
return q.values = o,
h = new e(a, "bezier", 0, 0, l.pt, 2),
h.data = l,
h.plugin = i,
h.setratio = d,
0 === q.autorotate && (q.autorotate = !0),
!q.autorotate || q.autorotate instanceof array || (j = q.autorotate === !0 ? 0 : number(q.autorotate), q.autorotate = null != l.end.left ? [["left", "top", "rotation", j, !1]] : null != l.end.x ? [["x", "y", "rotation", j, !1]] : !1),
q.autorotate && (g._transform || g._enabletransforms(!1), l.autorotate = g._target._gstransform, l.proxy.rotation = l.autorotate.rotation || 0, g._overwriteprops.push("rotation")),
i._oninittween(l.proxy, q, g._tween),
h
}
})
}
},
q._mod = function(a) {
for (var b, c = this._overwriteprops,
d = c.length; --d > -1;) b = a[c[d]],
b && "function" == typeof b && (this._mod[c[d]] = b)
},
q._kill = function(a) {
var b, c, d = this._props;
for (b in this._beziers) if (b in a) for (delete this._beziers[b], delete this._func[b], c = d.length; --c > -1;) d[c] === b && d.splice(c, 1);
if (d = this._autorotate) for (c = d.length; --c > -1;) a[d[c][2]] && d.splice(c, 1);
return this._super._kill.call(this, a)
}
} (),
_gsscope._gsdefine("plugins.cssplugin", ["plugins.tweenplugin", "tweenlite"],
function(a, b) {
var c, d, e, f, g = function() {
a.call(this, "css"),
this._overwriteprops.length = 0,
this.setratio = g.prototype.setratio
},
h = _gsscope._gsdefine.globals,
i = {},
j = g.prototype = new a("css");
j.constructor = g,
g.version = "1.20.0",
g.api = 2,
g.defaulttransformperspective = 0,
g.defaultskewtype = "compensated",
g.defaultsmoothorigin = !0,
j = "px",
g.suffixmap = {
top: j,
right: j,
bottom: j,
left: j,
width: j,
height: j,
fontsize: j,
padding: j,
margin: j,
perspective: j,
lineheight: ""
};
var k, l, m, n, o, p, q, r, s = /(?:\-|\.|\b)(\d|\.|e\-)+/g,
t = /(?:\d|\-\d|\.\d|\-\.\d|\+=\d|\-=\d|\+=.\d|\-=\.\d)+/g,
u = /(?:\+=|\-=|\-|\b)[\d\-\.]+[a-za-z0-9]*(?:%|\b)/gi,
v = /(?![+-]?\d*\.?\d+|[+-]|e[+-]\d+)[^0-9]/g,
w = /(?:\d|\-|\+|=|#|\.)*/g,
x = /opacity *= *([^)]*)/i,
y = /opacity:([^;]*)/i,
z = /alpha\(opacity *=.+?\)/i,
a = /^(rgb|hsl)/,
b = /([a-z])/g,
c = /-([a-z])/gi,
d = /(^(?:url\(\"|url\())|(?:(\"\))$|\)$)/gi,
e = function(a, b) {
return b.touppercase()
},
f = /(?:left|right|width)/i,
g = /(m11|m12|m21|m22)=[\d\-\.e]+/gi,
h = /progid\:dximagetransform\.microsoft\.matrix\(.+?\)/i,
i = /,(?=[^\)]*(?:\(|$))/gi,
j = /[\s,\(]/i,
k = math.pi / 180,
l = 180 / math.pi,
m = {},
n = {
style: {}
},
o = _gsscope.document || {
createelement: function() {
return n
}
},
p = function(a, b) {
return o.createelementns ? o.createelementns(b || "http://www.w3.org/1999/xhtml", a) : o.createelement(a)
},
q = p("div"),
r = p("img"),
s = g._internals = {
_specialprops: i
},
t = (_gsscope.navigator || {}).useragent || "",
u = function() {
var a = t.indexof("android"),
b = p("a");
return m = -1 !== t.indexof("safari") && -1 === t.indexof("chrome") && ( - 1 === a || parsefloat(t.substr(a + 8, 2)) > 3),
o = m && parsefloat(t.substr(t.indexof("version/") + 8, 2)) < 6,
n = -1 !== t.indexof("firefox"),
(/msie ([0-9]{1,}[\.0-9]{0,})/.exec(t) || /trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/.exec(t)) && (p = parsefloat(regexp.$1)),
b ? (b.style.csstext = "top:1px;opacity:.55;", /^0.55/.test(b.style.opacity)) : !1
} (),
v = function(a) {
return x.test("string" == typeof a ? a: (a.currentstyle ? a.currentstyle.filter: a.style.filter) || "") ? parsefloat(regexp.$1) / 100 : 1
},
w = function(a) {
_gsscope.console && console.log(a)
},
x = "",
y = "",
z = function(a, b) {
b = b || q;
var c, d, e = b.style;
if (void 0 !== e[a]) return a;
for (a = a.charat(0).touppercase() + a.substr(1), c = ["o", "moz", "ms", "ms", "webkit"], d = 5; --d > -1 && void 0 === e[c[d] + a];);
return d >= 0 ? (y = 3 === d ? "ms": c[d], x = "-" + y.tolowercase() + "-", y + a) : null
},
$ = o.defaultview ? o.defaultview.getcomputedstyle: function() {},
_ = g.getstyle = function(a, b, c, d, e) {
var f;
return u || "opacity" !== b ? (!d && a.style[b] ? f = a.style[b] : (c = c || $(a)) ? f = c[b] || c.getpropertyvalue(b) || c.getpropertyvalue(b.replace(b, "-$1").tolowercase()) : a.currentstyle && (f = a.currentstyle[b]), null == e || f && "none" !== f && "auto" !== f && "auto auto" !== f ? f: e) : v(a)
},
aa = s.converttopixels = function(a, c, d, e, f) {
if ("px" === e || !e && "lineheight" !== c) return d;
if ("auto" === e || !d) return 0;
var h, i, j, k = f.test(c),
l = a,
m = q.style,
n = 0 > d,
o = 1 === d;
if (n && (d = -d), o && (d *= 100), "lineheight" !== c || e) if ("%" === e && -1 !== c.indexof("border")) h = d / 100 * (k ? a.clientwidth: a.clientheight);
else {
if (m.csstext = "border:0 solid red;position:" + _(a, "position") + ";line-height:0;", "%" !== e && l.appendchild && "v" !== e.charat(0) && "rem" !== e) m[k ? "borderleftwidth": "bordertopwidth"] = d + e;
else {
if (l = a.parentnode || o.body, -1 !== _(l, "display").indexof("flex") && (m.position = "absolute"), i = l._gscache, j = b.ticker.frame, i && k && i.time === j) return i.width * d / 100;
m[k ? "width": "height"] = d + e
}
l.appendchild(q),
h = parsefloat(q[k ? "offsetwidth": "offsetheight"]),
l.removechild(q),
k && "%" === e && g.cachewidths !== !1 && (i = l._gscache = l._gscache || {},
i.time = j, i.width = h / d * 100),
0 !== h || f || (h = aa(a, c, d, e, !0))
} else i = $(a).lineheight,
a.style.lineheight = d,
h = parsefloat($(a).lineheight),
a.style.lineheight = i;
return o && (h /= 100),
n ? -h: h
},
ba = s.calculateoffset = function(a, b, c) {
if ("absolute" !== _(a, "position", c)) return 0;
var d = "left" === b ? "left": "top",
e = _(a, "margin" + d, c);
return a["offset" + d] - (aa(a, b, parsefloat(e), e.replace(w, "")) || 0)
},
ca = function(a, b) {
var c, d, e, f = {};
if (b = b || $(a, null)) if (c = b.length) for (; --c > -1;) e = b[c],
( - 1 === e.indexof("-transform") || da === e) && (f[e.replace(c, e)] = b.getpropertyvalue(e));
else for (c in b)( - 1 === c.indexof("transform") || ca === c) && (f[c] = b[c]);
else if (b = a.currentstyle || a.style) for (c in b)"string" == typeof c && void 0 === f[c] && (f[c.replace(c, e)] = b[c]);
return u || (f.opacity = v(a)),
d = ra(a, b, !1),
f.rotation = d.rotation,
f.skewx = d.skewx,
f.scalex = d.scalex,
f.scaley = d.scaley,
f.x = d.x,
f.y = d.y,
fa && (f.z = d.z, f.rotationx = d.rotationx, f.rotationy = d.rotationy, f.scalez = d.scalez),
f.filters && delete f.filters,
f
},
da = function(a, b, c, d, e) {
var f, g, h, i = {},
j = a.style;
for (g in c)"csstext" !== g && "length" !== g && isnan(g) && (b[g] !== (f = c[g]) || e && e[g]) && -1 === g.indexof("origin") && ("number" == typeof f || "string" == typeof f) && (i[g] = "auto" !== f || "left" !== g && "top" !== g ? "" !== f && "auto" !== f && "none" !== f || "string" != typeof b[g] || "" === b[g].replace(v, "") ? f: 0 : ba(a, g), void 0 !== j[g] && (h = new sa(j, g, j[g], h)));
if (d) for (g in d)"classname" !== g && (i[g] = d[g]);
return {
difs: i,
firstmpt: h
}
},
ea = {
width: ["left", "right"],
height: ["top", "bottom"]
},
fa = ["marginleft", "marginright", "margintop", "marginbottom"],
ga = function(a, b, c) {
if ("svg" === (a.nodename + "").tolowercase()) return (c || $(a))[b] || 0;
if (a.getctm && oa(a)) return a.getbbox()[b] || 0;
var d = parsefloat("width" === b ? a.offsetwidth: a.offsetheight),
e = ea[b],
f = e.length;
for (c = c || $(a, null); --f > -1;) d -= parsefloat(_(a, "padding" + e[f], c, !0)) || 0,
d -= parsefloat(_(a, "border" + e[f] + "width", c, !0)) || 0;
return d
},
ha = function(a, b) {
if ("contain" === a || "auto" === a || "auto auto" === a) return a + " "; (null == a || "" === a) && (a = "0 0");
var c, d = a.split(" "),
e = -1 !== a.indexof("left") ? "0%": -1 !== a.indexof("right") ? "100%": d[0],
f = -1 !== a.indexof("top") ? "0%": -1 !== a.indexof("bottom") ? "100%": d[1];
if (d.length > 3 && !b) {
for (d = a.split(", ").join(",").split(","), a = [], c = 0; c < d.length; c++) a.push(ha(d[c]));
return a.join(",")
}
return null == f ? f = "center" === e ? "50%": "0": "center" === f && (f = "50%"),
("center" === e || isnan(parsefloat(e)) && -1 === (e + "").indexof("=")) && (e = "50%"),
a = e + " " + f + (d.length > 2 ? " " + d[2] : ""),
b && (b.oxp = -1 !== e.indexof("%"), b.oyp = -1 !== f.indexof("%"), b.oxr = "=" === e.charat(1), b.oyr = "=" === f.charat(1), b.ox = parsefloat(e.replace(v, "")), b.oy = parsefloat(f.replace(v, "")), b.v = a),
b || a
},
ia = function(a, b) {
return "function" == typeof a && (a = a(r, q)),
"string" == typeof a && "=" === a.charat(1) ? parseint(a.charat(0) + "1", 10) * parsefloat(a.substr(2)) : parsefloat(a) - parsefloat(b) || 0
},
ja = function(a, b) {
return "function" == typeof a && (a = a(r, q)),
null == a ? b: "string" == typeof a && "=" === a.charat(1) ? parseint(a.charat(0) + "1", 10) * parsefloat(a.substr(2)) + b: parsefloat(a) || 0
},
ka = function(a, b, c, d) {
var e, f, g, h, i, j = 1e-6;
return "function" == typeof a && (a = a(r, q)),
null == a ? h = b: "number" == typeof a ? h = a: (e = 360, f = a.split("_"), i = "=" === a.charat(1), g = (i ? parseint(a.charat(0) + "1", 10) * parsefloat(f[0].substr(2)) : parsefloat(f[0])) * ( - 1 === a.indexof("rad") ? 1 : l) - (i ? 0 : b), f.length && (d && (d[c] = b + g), -1 !== a.indexof("short") && (g %= e, g !== g % (e / 2) && (g = 0 > g ? g + e: g - e)), -1 !== a.indexof("_cw") && 0 > g ? g = (g + 9999999999 * e) % e - (g / e | 0) * e: -1 !== a.indexof("ccw") && g > 0 && (g = (g - 9999999999 * e) % e - (g / e | 0) * e)), h = b + g),
j > h && h > -j && (h = 0),
h
},
la = {
aqua: [0, 255, 255],
lime: [0, 255, 0],
silver: [192, 192, 192],
black: [0, 0, 0],
maroon: [128, 0, 0],
teal: [0, 128, 128],
blue: [0, 0, 255],
navy: [0, 0, 128],
white: [255, 255, 255],
fuchsia: [255, 0, 255],
olive: [128, 128, 0],
yellow: [255, 255, 0],
orange: [255, 165, 0],
gray: [128, 128, 128],
purple: [128, 0, 128],
green: [0, 128, 0],
red: [255, 0, 0],
pink: [255, 192, 203],
cyan: [0, 255, 255],
transparent: [255, 255, 255, 0]
},
ma = function(a, b, c) {
return a = 0 > a ? a + 1 : a > 1 ? a - 1 : a,
255 * (1 > 6 * a ? b + (c - b) * a * 6 : .5 > a ? c: 2 > 3 * a ? b + (c - b) * (2 / 3 - a) * 6 : b) + .5 | 0
},
na = g.parsecolor = function(a, b) {
var c, d, e, f, g, h, i, j, k, l, m;
if (a) if ("number" == typeof a) c = [a >> 16, a >> 8 & 255, 255 & a];
else {
if ("," === a.charat(a.length - 1) && (a = a.substr(0, a.length - 1)), la[a]) c = la[a];
else if ("#" === a.charat(0)) 4 === a.length && (d = a.charat(1), e = a.charat(2), f = a.charat(3), a = "#" + d + d + e + e + f + f),
a = parseint(a.substr(1), 16),
c = [a >> 16, a >> 8 & 255, 255 & a];
else if ("hsl" === a.substr(0, 3)) if (c = m = a.match(s), b) {
if ( - 1 !== a.indexof("=")) return a.match(t)
} else g = number(c[0]) % 360 / 360,
h = number(c[1]) / 100,
i = number(c[2]) / 100,
e = .5 >= i ? i * (h + 1) : i + h - i * h,
d = 2 * i - e,
c.length > 3 && (c[3] = number(a[3])),
c[0] = ma(g + 1 / 3, d, e),
c[1] = ma(g, d, e),
c[2] = ma(g - 1 / 3, d, e);
else c = a.match(s) || la.transparent;
c[0] = number(c[0]),
c[1] = number(c[1]),
c[2] = number(c[2]),
c.length > 3 && (c[3] = number(c[3]))
} else c = la.black;
return b && !m && (d = c[0] / 255, e = c[1] / 255, f = c[2] / 255, j = math.max(d, e, f), k = math.min(d, e, f), i = (j + k) / 2, j === k ? g = h = 0 : (l = j - k, h = i > .5 ? l / (2 - j - k) : l / (j + k), g = j === d ? (e - f) / l + (f > e ? 6 : 0) : j === e ? (f - d) / l + 2 : (d - e) / l + 4, g *= 60), c[0] = g + .5 | 0, c[1] = 100 * h + .5 | 0, c[2] = 100 * i + .5 | 0),
c
},
oa = function(a, b) {
var c, d, e, f = a.match(pa) || [],
g = 0,
h = "";
if (!f.length) return a;
for (c = 0; c < f.length; c++) d = f[c],
e = a.substr(g, a.indexof(d, g) - g),
g += e.length + d.length,
d = na(d, b),
3 === d.length && d.push(1),
h += e + (b ? "hsla(" + d[0] + "," + d[1] + "%," + d[2] + "%," + d[3] : "rgba(" + d.join(",")) + ")";
return h + a.substr(g)
},
pa = "(?:\\b(?:(?:rgb|rgba|hsl|hsla)\\(.+?\\))|\\b#(?:[0-9a-f]{3}){1,2}\\b";
for (j in la) pa += "|" + j + "\\b";
pa = new regexp(pa + ")", "gi"),
g.colorstringfilter = function(a) {
var b, c = a[0] + " " + a[1];
pa.test(c) && (b = -1 !== c.indexof("hsl(") || -1 !== c.indexof("hsla("), a[0] = oa(a[0], b), a[1] = oa(a[1], b)),
pa.lastindex = 0
},
b.defaultstringfilter || (b.defaultstringfilter = g.colorstringfilter);
var qa = function(a, b, c, d) {
if (null == a) return function(a) {
return a
};
var e, f = b ? (a.match(pa) || [""])[0] : "",
g = a.split(f).join("").match(u) || [],
h = a.substr(0, a.indexof(g[0])),
i = ")" === a.charat(a.length - 1) ? ")": "",
j = -1 !== a.indexof(" ") ? " ": ",",
k = g.length,
l = k > 0 ? g[0].replace(s, "") : "";
return k ? e = b ?
function(a) {
var b, m, n, o;
if ("number" == typeof a) a += l;
else if (d && i.test(a)) {
for (o = a.replace(i, "|").split("|"), n = 0; n < o.length; n++) o[n] = e(o[n]);
return o.join(",")
}
if (b = (a.match(pa) || [f])[0], m = a.split(b).join("").match(u) || [], n = m.length, k > n--) for (; ++n < k;) m[n] = c ? m[(n - 1) / 2 | 0] : g[n];
return h + m.join(j) + j + b + i + ( - 1 !== a.indexof("inset") ? " inset": "")
}: function(a) {
var b, f, m;
if ("number" == typeof a) a += l;
else if (d && i.test(a)) {
for (f = a.replace(i, "|").split("|"), m = 0; m < f.length; m++) f[m] = e(f[m]);
return f.join(",")
}
if (b = a.match(u) || [], m = b.length, k > m--) for (; ++m < k;) b[m] = c ? b[(m - 1) / 2 | 0] : g[m];
return h + b.join(j) + i
}: function(a) {
return a
}
},
ra = function(a) {
return a = a.split(","),
function(b, c, d, e, f, g, h) {
var i, j = (c + "").split(" ");
for (h = {},
i = 0; 4 > i; i++) h[a[i]] = j[i] = j[i] || j[(i - 1) / 2 >> 0];
return e.parse(b, h, f, g)
}
},
sa = (s._setpluginratio = function(a) {
this.plugin.setratio(a);
for (var b, c, d, e, f, g = this.data,
h = g.proxy,
i = g.firstmpt,
j = 1e-6; i;) b = h[i.v],
i.r ? b = math.round(b) : j > b && b > -j && (b = 0),
i.t[i.p] = b,
i = i._next;
if (g.autorotate && (g.autorotate.rotation = g.mod ? g.mod(h.rotation, this.t) : h.rotation), 1 === a || 0 === a) for (i = g.firstmpt, f = 1 === a ? "e": "b"; i;) {
if (c = i.t, c.type) {
if (1 === c.type) {
for (e = c.xs0 + c.s + c.xs1, d = 1; d < c.l; d++) e += c["xn" + d] + c["xs" + (d + 1)];
c[f] = e
}
} else c[f] = c.s + c.xs0;
i = i._next
}
},
function(a, b, c, d, e) {
this.t = a,
this.p = b,
this.v = c,
this.r = e,
d && (d._prev = this, this._next = d)
}),
ta = (s._parsetoproxy = function(a, b, c, d, e, f) {
var g, h, i, j, k, l = d,
m = {},
n = {},
o = c._transform,
p = m;
for (c._transform = null, m = b, d = k = c.parse(a, b, d, e), m = p, f && (c._transform = o, l && (l._prev = null, l._prev && (l._prev._next = null))); d && d !== l;) {
if (d.type <= 1 && (h = d.p, n[h] = d.s + d.c, m[h] = d.s, f || (j = new sa(d, "s", h, j, d.r), d.c = 0), 1 === d.type)) for (g = d.l; --g > 0;) i = "xn" + g,
h = d.p + "_" + i,
n[h] = d.data[i],
m[h] = d[i],
f || (j = new sa(d, i, h, j, d.rxp[i]));
d = d._next
}
return {
proxy: m,
end: n,
firstmpt: j,
pt: k
}
},
s.cssproptween = function(a, b, d, e, g, h, i, j, k, l, m) {
this.t = a,
this.p = b,
this.s = d,
this.c = e,
this.n = i || b,
a instanceof ta || f.push(this.n),
this.r = j,
this.type = h || 0,
k && (this.pr = k, c = !0),
this.b = void 0 === l ? d: l,
this.e = void 0 === m ? d + e: m,
g && (this._next = g, g._prev = this)
}),
ua = function(a, b, c, d, e, f) {
var g = new ta(a, b, c, d - c, e, -1, f);
return g.b = c,
g.e = g.xs0 = d,
g
},
va = g.parsecomplex = function(a, b, c, d, e, f, h, i, j, l) {
c = c || f || "",
"function" == typeof d && (d = d(r, q)),
h = new ta(a, b, 0, 0, h, l ? 2 : 1, null, !1, i, c, d),
d += "",
e && pa.test(d + c) && (d = [c, d], g.colorstringfilter(d), c = d[0], d = d[1]);
var m, n, o, p, u, v, w, x, y, z, a, b, c, d = c.split(", ").join(",").split(" "),
e = d.split(", ").join(",").split(" "),
f = d.length,
g = k !== !1;
for (( - 1 !== d.indexof(",") || -1 !== c.indexof(",")) && (d = d.join(" ").replace(i, ", ").split(" "), e = e.join(" ").replace(i, ", ").split(" "), f = d.length), f !== e.length && (d = (f || "").split(" "), f = d.length), h.plugin = j, h.setratio = l, pa.lastindex = 0, m = 0; f > m; m++) if (p = d[m], u = e[m], x = parsefloat(p), x || 0 === x) h.appendxtra("", x, ia(u, x), u.replace(t, ""), g && -1 !== u.indexof("px"), !0);
else if (e && pa.test(p)) b = u.indexof(")") + 1,
b = ")" + (b ? u.substr(b) : ""),
c = -1 !== u.indexof("hsl") && u,
z = u,
p = na(p, c),
u = na(u, c),
y = p.length + u.length > 6,
y && !u && 0 === u[3] ? (h["xs" + h.l] += h.l ? " transparent": "transparent", h.e = h.e.split(e[m]).join("transparent")) : (u || (y = !1), c ? h.appendxtra(z.substr(0, z.indexof("hsl")) + (y ? "hsla(": "hsl("), p[0], ia(u[0], p[0]), ",", !1, !0).appendxtra("", p[1], ia(u[1], p[1]), "%,", !1).appendxtra("", p[2], ia(u[2], p[2]), y ? "%,": "%" + b, !1) : h.appendxtra(z.substr(0, z.indexof("rgb")) + (y ? "rgba(": "rgb("), p[0], u[0] - p[0], ",", !0, !0).appendxtra("", p[1], u[1] - p[1], ",", !0).appendxtra("", p[2], u[2] - p[2], y ? ",": b, !0), y && (p = p.length < 4 ? 1 : p[3], h.appendxtra("", p, (u.length < 4 ? 1 : u[3]) - p, b, !1))),
pa.lastindex = 0;
else if (v = p.match(s)) {
if (w = u.match(t), !w || w.length !== v.length) return h;
for (o = 0, n = 0; n < v.length; n++) a = v[n],
z = p.indexof(a, o),
h.appendxtra(p.substr(o, z - o), number(a), ia(w[n], a), "", g && "px" === p.substr(z + a.length, 2), 0 === n),
o = z + a.length;
h["xs" + h.l] += p.substr(o)
} else h["xs" + h.l] += h.l || h["xs" + h.l] ? " " + u: u;
if ( - 1 !== d.indexof("=") && h.data) {
for (b = h.xs0 + h.data.s, m = 1; m < h.l; m++) b += h["xs" + m] + h.data["xn" + m];
h.e = b + h["xs" + m]
}
return h.l || (h.type = -1, h.xs0 = h.e),
h.xfirst || h
},
wa = 9;
for (j = ta.prototype, j.l = j.pr = 0; --wa > 0;) j["xn" + wa] = 0,
j["xs" + wa] = "";
j.xs0 = "",
j._next = j._prev = j.xfirst = j.data = j.plugin = j.setratio = j.rxp = null,
j.appendxtra = function(a, b, c, d, e, f) {
var g = this,
h = g.l;
return g["xs" + h] += f && (h || g["xs" + h]) ? " " + a: a || "",
c || 0 === h || g.plugin ? (g.l++, g.type = g.setratio ? 2 : 1, g["xs" + g.l] = d || "", h > 0 ? (g.data["xn" + h] = b + c, g.rxp["xn" + h] = e, g["xn" + h] = b, g.plugin || (g.xfirst = new ta(g, "xn" + h, b, c, g.xfirst || g, 0, g.n, e, g.pr), g.xfirst.xs0 = 0), g) : (g.data = {
s: b + c
},
g.rxp = {},
g.s = b, g.c = c, g.r = e, g)) : (g["xs" + h] += b + (d || ""), g)
};
var xa = function(a, b) {
b = b || {},
this.p = b.prefix ? z(a) || a: a,
i[a] = i[this.p] = this,
this.format = b.formatter || qa(b.defaultvalue, b.color, b.collapsible, b.multi),
b.parser && (this.parse = b.parser),
this.clrs = b.color,
this.multi = b.multi,
this.keyword = b.keyword,
this.dflt = b.defaultvalue,
this.pr = b.priority || 0
},
ya = s._registercomplexspecialprop = function(a, b, c) {
"object" != typeof b && (b = {
parser: c
});
var d, e, f = a.split(","),
g = b.defaultvalue;
for (c = c || [g], d = 0; d < f.length; d++) b.prefix = 0 === d && b.prefix,
b.defaultvalue = c[d] || g,
e = new xa(f[d], b)
},
za = s._registerpluginprop = function(a) {
if (!i[a]) {
var b = a.charat(0).touppercase() + a.substr(1) + "plugin";
ya(a, {
parser: function(a, c, d, e, f, g, j) {
var k = h.com.greensock.plugins[b];
return k ? (k._cssregister(), i[d].parse(a, c, d, e, f, g, j)) : (w("error: " + b + " js file not loaded."), f)
}
})
}
};
j = xa.prototype,
j.parsecomplex = function(a, b, c, d, e, f) {
var g, h, i, j, k, l, m = this.keyword;
if (this.multi && (i.test(c) || i.test(b) ? (h = b.replace(i, "|").split("|"), i = c.replace(i, "|").split("|")) : m && (h = [b], i = [c])), i) {
for (j = i.length > h.length ? i.length: h.length, g = 0; j > g; g++) b = h[g] = h[g] || this.dflt,
c = i[g] = i[g] || this.dflt,
m && (k = b.indexof(m), l = c.indexof(m), k !== l && ( - 1 === l ? h[g] = h[g].split(m).join("") : -1 === k && (h[g] += " " + m)));
b = h.join(", "),
c = i.join(", ")
}
return va(a, this.p, b, c, this.clrs, this.dflt, d, this.pr, e, f)
},
j.parse = function(a, b, c, d, f, g, h) {
return this.parsecomplex(a.style, this.format(_(a, this.p, e, !1, this.dflt)), this.format(b), f, g)
},
g.registerspecialprop = function(a, b, c) {
ya(a, {
parser: function(a, d, e, f, g, h, i) {
var j = new ta(a, e, 0, 0, g, 2, e, !1, c);
return j.plugin = h,
j.setratio = b(a, d, f._tween, e),
j
},
priority: c
})
},
g.usesvgtransformattr = !0;
var aa, ba = "scalex,scaley,scalez,x,y,z,skewx,skewy,rotation,rotationx,rotationy,perspective,xpercent,ypercent".split(","),
ca = z("transform"),
da = x + "transform",
ea = z("transformorigin"),
fa = null !== z("perspective"),
ga = s.transform = function() {
this.perspective = parsefloat(g.defaulttransformperspective) || 0,
this.force3d = g.defaultforce3d !== !1 && fa ? g.defaultforce3d || "auto": !1
},
ha = _gsscope.svgelement,
ia = function(a, b, c) {
var d, e = o.createelementns("http://www.w3.org/2000/svg", a),
f = /([a-z])([a-z])/g;
for (d in c) e.setattributens(null, d.replace(f, "$1-$2").tolowercase(), c[d]);
return b.appendchild(e),
e
},
ja = o.documentelement || {},
ka = function() {
var a, b, c, d = p || /android/i.test(t) && !_gsscope.chrome;
return o.createelementns && !d && (a = ia("svg", ja), b = ia("rect", a, {
width: 100,
height: 50,
x: 100
}), c = b.getboundingclientrect().width, b.style[ea] = "50% 50%", b.style[ca] = "scalex(0.5)", d = c === b.getboundingclientrect().width && !(n && fa), ja.removechild(a)),
d
} (),
la = function(a, b, c, d, e, f) {
var h, i, j, k, l, m, n, o, p, q, r, s, t, u, v = a._gstransform,
w = qa(a, !0);
v && (t = v.xorigin, u = v.yorigin),
(!d || (h = d.split(" ")).length < 2) && (n = a.getbbox(), 0 === n.x && 0 === n.y && n.width + n.height === 0 && (n = {
x: parsefloat(a.hasattribute("x") ? a.getattribute("x") : a.hasattribute("cx") ? a.getattribute("cx") : 0) || 0,
y: parsefloat(a.hasattribute("y") ? a.getattribute("y") : a.hasattribute("cy") ? a.getattribute("cy") : 0) || 0,
width: 0,
height: 0
}), b = ha(b).split(" "), h = [( - 1 !== b[0].indexof("%") ? parsefloat(b[0]) / 100 * n.width: parsefloat(b[0])) + n.x, ( - 1 !== b[1].indexof("%") ? parsefloat(b[1]) / 100 * n.height: parsefloat(b[1])) + n.y]),
c.xorigin = k = parsefloat(h[0]),
c.yorigin = l = parsefloat(h[1]),
d && w !== pa && (m = w[0], n = w[1], o = w[2], p = w[3], q = w[4], r = w[5], s = m * p - n * o, s && (i = k * (p / s) + l * ( - o / s) + (o * r - p * q) / s, j = k * ( - n / s) + l * (m / s) - (m * r - n * q) / s, k = c.xorigin = h[0] = i, l = c.yorigin = h[1] = j)),
v && (f && (c.xoffset = v.xoffset, c.yoffset = v.yoffset, v = c), e || e !== !1 && g.defaultsmoothorigin !== !1 ? (i = k - t, j = l - u, v.xoffset += i * w[0] + j * w[2] - i, v.yoffset += i * w[1] + j * w[3] - j) : v.xoffset = v.yoffset = 0),
f || a.setattribute("data-svg-origin", h.join(" "))
},
ma = function(a) {
var b, c = p("svg", this.ownersvgelement.getattribute("xmlns") || "http://www.w3.org/2000/svg"),
d = this.parentnode,
e = this.nextsibling,
f = this.style.csstext;
if (ja.appendchild(c), c.appendchild(this), this.style.display = "block", a) try {
b = this.getbbox(),
this._originalgetbbox = this.getbbox,
this.getbbox = ma
} catch(g) {} else this._originalgetbbox && (b = this._originalgetbbox());
return e ? d.insertbefore(this, e) : d.appendchild(this),
ja.removechild(c),
this.style.csstext = f,
b
},
na = function(a) {
try {
return a.getbbox()
} catch(b) {
return ma.call(a, !0)
}
},
oa = function(a) {
return ! (! (ha && a.getctm && na(a)) || a.parentnode && !a.ownersvgelement)
},
pa = [1, 0, 0, 1, 0, 0],
qa = function(a, b) {
var c, d, e, f, g, h, i = a._gstransform || new ga,
j = 1e5,
k = a.style;
if (ca ? d = _(a, da, null, !0) : a.currentstyle && (d = a.currentstyle.filter.match(g), d = d && 4 === d.length ? [d[0].substr(4), number(d[2].substr(4)), number(d[1].substr(4)), d[3].substr(4), i.x || 0, i.y || 0].join(",") : ""), c = !d || "none" === d || "matrix(1, 0, 0, 1, 0, 0)" === d, !ca || !(h = "none" === $(a).display) && a.parentnode || (h && (f = k.display, k.display = "block"), a.parentnode || (g = 1, ja.appendchild(a)), d = _(a, da, null, !0), c = !d || "none" === d || "matrix(1, 0, 0, 1, 0, 0)" === d, f ? k.display = f: h && va(k, "display"), g && ja.removechild(a)), (i.svg || a.getctm && oa(a)) && (c && -1 !== (k[ca] + "").indexof("matrix") && (d = k[ca], c = 0), e = a.getattribute("transform"), c && e && ( - 1 !== e.indexof("matrix") ? (d = e, c = 0) : -1 !== e.indexof("translate") && (d = "matrix(1,0,0,1," + e.match(/(?:\-|\b)[\d\-\.e]+\b/gi).join(",") + ")", c = 0))), c) return pa;
for (e = (d || "").match(s) || [], wa = e.length; --wa > -1;) f = number(e[wa]),
e[wa] = (g = f - (f |= 0)) ? (g * j + (0 > g ? -.5 : .5) | 0) / j + f: f;
return b && e.length > 6 ? [e[0], e[1], e[4], e[5], e[12], e[13]] : e
},
ra = s.gettransform = function(a, c, d, e) {
if (a._gstransform && d && !e) return a._gstransform;
var f, h, i, j, k, l, m = d ? a._gstransform || new ga: new ga,
n = m.scalex < 0,
o = 2e-5,
p = 1e5,
q = fa ? parsefloat(_(a, ea, c, !1, "0 0 0").split(" ")[2]) || m.zorigin || 0 : 0,
r = parsefloat(g.defaulttransformperspective) || 0;
if (m.svg = !(!a.getctm || !oa(a)), m.svg && (la(a, _(a, ea, c, !1, "50% 50%") + "", m, a.getattribute("data-svg-origin")), aa = g.usesvgtransformattr || ka), f = qa(a), f !== pa) {
if (16 === f.length) {
var s, t, u, v, w, x = f[0],
y = f[1],
z = f[2],
a = f[3],
b = f[4],
c = f[5],
d = f[6],
e = f[7],
f = f[8],
g = f[9],
h = f[10],
i = f[12],
j = f[13],
k = f[14],
m = f[11],
n = math.atan2(d, h);
m.zorigin && (k = -m.zorigin, i = f * k - f[12], j = g * k - f[13], k = h * k + m.zorigin - f[14]),
m.rotationx = n * l,
n && (v = math.cos( - n), w = math.sin( - n), s = b * v + f * w, t = c * v + g * w, u = d * v + h * w, f = b * -w + f * v, g = c * -w + g * v, h = d * -w + h * v, m = e * -w + m * v, b = s, c = t, d = u),
n = math.atan2( - z, h),
m.rotationy = n * l,
n && (v = math.cos( - n), w = math.sin( - n), s = x * v - f * w, t = y * v - g * w, u = z * v - h * w, g = y * w + g * v, h = z * w + h * v, m = a * w + m * v, x = s, y = t, z = u),
n = math.atan2(y, x),
m.rotation = n * l,
n && (v = math.cos(n), w = math.sin(n), s = x * v + y * w, t = b * v + c * w, u = f * v + g * w, y = y * v - x * w, c = c * v - b * w, g = g * v - f * w, x = s, b = t, f = u),
m.rotationx && math.abs(m.rotationx) + math.abs(m.rotation) > 359.9 && (m.rotationx = m.rotation = 0, m.rotationy = 180 - m.rotationy),
n = math.atan2(b, c),
m.scalex = (math.sqrt(x * x + y * y + z * z) * p + .5 | 0) / p,
m.scaley = (math.sqrt(c * c + d * d) * p + .5 | 0) / p,
m.scalez = (math.sqrt(f * f + g * g + h * h) * p + .5 | 0) / p,
x /= m.scalex,
b /= m.scaley,
y /= m.scalex,
c /= m.scaley,
math.abs(n) > o ? (m.skewx = n * l, b = 0, "simple" !== m.skewtype && (m.scaley *= 1 / math.cos(n))) : m.skewx = 0,
m.perspective = m ? 1 / (0 > m ? -m: m) : 0,
m.x = i,
m.y = j,
m.z = k,
m.svg && (m.x -= m.xorigin - (m.xorigin * x - m.yorigin * b), m.y -= m.yorigin - (m.yorigin * y - m.xorigin * c))
} else if (!fa || e || !f.length || m.x !== f[4] || m.y !== f[5] || !m.rotationx && !m.rotationy) {
var o = f.length >= 6,
p = o ? f[0] : 1,
q = f[1] || 0,
r = f[2] || 0,
s = o ? f[3] : 1;
m.x = f[4] || 0,
m.y = f[5] || 0,
i = math.sqrt(p * p + q * q),
j = math.sqrt(s * s + r * r),
k = p || q ? math.atan2(q, p) * l: m.rotation || 0,
l = r || s ? math.atan2(r, s) * l + k: m.skewx || 0,
m.scalex = i,
m.scaley = j,
m.rotation = k,
m.skewx = l,
fa && (m.rotationx = m.rotationy = m.z = 0, m.perspective = r, m.scalez = 1),
m.svg && (m.x -= m.xorigin - (m.xorigin * p + m.yorigin * r), m.y -= m.yorigin - (m.xorigin * q + m.yorigin * s))
}
math.abs(m.skewx) > 90 && math.abs(m.skewx) < 270 && (n ? (m.scalex *= -1, m.skewx += m.rotation <= 0 ? 180 : -180, m.rotation += m.rotation <= 0 ? 180 : -180) : (m.scaley *= -1, m.skewx += m.skewx <= 0 ? 180 : -180)),
m.zorigin = q;
for (h in m) m[h] < o && m[h] > -o && (m[h] = 0)
}
return d && (a._gstransform = m, m.svg && (aa && a.style[ca] ? b.delayedcall(.001,
function() {
va(a.style, ca)
}) : !aa && a.getattribute("transform") && b.delayedcall(.001,
function() {
a.removeattribute("transform")
}))),
m
},
sa = function(a) {
var b, c, d = this.data,
e = -d.rotation * k,
f = e + d.skewx * k,
g = 1e5,
h = (math.cos(e) * d.scalex * g | 0) / g,
i = (math.sin(e) * d.scalex * g | 0) / g,
j = (math.sin(f) * -d.scaley * g | 0) / g,
k = (math.cos(f) * d.scaley * g | 0) / g,
l = this.t.style,
m = this.t.currentstyle;
if (m) {
c = i,
i = -j,
j = -c,
b = m.filter,
l.filter = "";
var n, o, q = this.t.offsetwidth,
r = this.t.offsetheight,
s = "absolute" !== m.position,
t = "progid:dximagetransform.microsoft.matrix(m11=" + h + ", m12=" + i + ", m21=" + j + ", m22=" + k,
u = d.x + q * d.xpercent / 100,
v = d.y + r * d.ypercent / 100;
if (null != d.ox && (n = (d.oxp ? q * d.ox * .01 : d.ox) - q / 2, o = (d.oyp ? r * d.oy * .01 : d.oy) - r / 2, u += n - (n * h + o * i), v += o - (n * j + o * k)), s ? (n = q / 2, o = r / 2, t += ", dx=" + (n - (n * h + o * i) + u) + ", dy=" + (o - (n * j + o * k) + v) + ")") : t += ", sizingmethod='auto expand')", -1 !== b.indexof("dximagetransform.microsoft.matrix(") ? l.filter = b.replace(h, t) : l.filter = t + " " + b, (0 === a || 1 === a) && 1 === h && 0 === i && 0 === j && 1 === k && (s && -1 === t.indexof("dx=0, dy=0") || x.test(b) && 100 !== parsefloat(regexp.$1) || -1 === b.indexof(b.indexof("alpha")) && l.removeattribute("filter")), !s) {
var y, z, a, b = 8 > p ? 1 : -1;
for (n = d.ieoffsetx || 0, o = d.ieoffsety || 0, d.ieoffsetx = math.round((q - ((0 > h ? -h: h) * q + (0 > i ? -i: i) * r)) / 2 + u), d.ieoffsety = math.round((r - ((0 > k ? -k: k) * r + (0 > j ? -j: j) * q)) / 2 + v), wa = 0; 4 > wa; wa++) z = fa[wa],
y = m[z],
c = -1 !== y.indexof("px") ? parsefloat(y) : aa(this.t, z, parsefloat(y), y.replace(w, "")) || 0,
a = c !== d[z] ? 2 > wa ? -d.ieoffsetx: -d.ieoffsety: 2 > wa ? n - d.ieoffsetx: o - d.ieoffsety,
l[z] = (d[z] = math.round(c - a * (0 === wa || 2 === wa ? 1 : b))) + "px"
}
}
},
ta = s.set3dtransformratio = s.settransformratio = function(a) {
var b, c, d, e, f, g, h, i, j, k, l, m, o, p, q, r, s, t, u, v, w, x, y, z = this.data,
a = this.t.style,
b = z.rotation,
c = z.rotationx,
d = z.rotationy,
e = z.scalex,
f = z.scaley,
g = z.scalez,
h = z.x,
i = z.y,
j = z.z,
l = z.svg,
m = z.perspective,
n = z.force3d,
o = z.skewy,
p = z.skewx;
if (o && (p += o, b += o), ((1 === a || 0 === a) && "auto" === n && (this.tween._totaltime === this.tween._totalduration || !this.tween._totaltime) || !n) && !j && !m && !d && !c && 1 === g || aa && l || !fa) return void(b || p || l ? (b *= k, x = p * k, y = 1e5, c = math.cos(b) * e, f = math.sin(b) * e, d = math.sin(b - x) * -f, g = math.cos(b - x) * f, x && "simple" === z.skewtype && (b = math.tan(x - o * k), b = math.sqrt(1 + b * b), d *= b, g *= b, o && (b = math.tan(o * k), b = math.sqrt(1 + b * b), c *= b, f *= b)), l && (h += z.xorigin - (z.xorigin * c + z.yorigin * d) + z.xoffset, i += z.yorigin - (z.xorigin * f + z.yorigin * g) + z.yoffset, aa && (z.xpercent || z.ypercent) && (q = this.t.getbbox(), h += .01 * z.xpercent * q.width, i += .01 * z.ypercent * q.height), q = 1e-6, q > h && h > -q && (h = 0), q > i && i > -q && (i = 0)), u = (c * y | 0) / y + "," + (f * y | 0) / y + "," + (d * y | 0) / y + "," + (g * y | 0) / y + "," + h + "," + i + ")", l && aa ? this.t.setattribute("transform", "matrix(" + u) : a[ca] = (z.xpercent || z.ypercent ? "translate(" + z.xpercent + "%," + z.ypercent + "%) matrix(": "matrix(") + u) : a[ca] = (z.xpercent || z.ypercent ? "translate(" + z.xpercent + "%," + z.ypercent + "%) matrix(": "matrix(") + e + ",0,0," + f + "," + h + "," + i + ")");
if (n && (q = 1e-4, q > e && e > -q && (e = g = 2e-5), q > f && f > -q && (f = g = 2e-5), !m || z.z || z.rotationx || z.rotationy || (m = 0)), b || p) b *= k,
r = c = math.cos(b),
s = f = math.sin(b),
p && (b -= p * k, r = math.cos(b), s = math.sin(b), "simple" === z.skewtype && (b = math.tan((p - o) * k), b = math.sqrt(1 + b * b), r *= b, s *= b, z.skewy && (b = math.tan(o * k), b = math.sqrt(1 + b * b), c *= b, f *= b))),
d = -s,
g = r;
else {
if (! (d || c || 1 !== g || m || l)) return void(a[ca] = (z.xpercent || z.ypercent ? "translate(" + z.xpercent + "%," + z.ypercent + "%) translate3d(": "translate3d(") + h + "px," + i + "px," + j + "px)" + (1 !== e || 1 !== f ? " scale(" + e + "," + f + ")": ""));
c = g = 1,
d = f = 0
}
k = 1,
e = h = i = j = l = m = 0,
o = m ? -1 / m: 0,
p = z.zorigin,
q = 1e-6,
v = ",",
w = "0",
b = d * k,
b && (r = math.cos(b), s = math.sin(b), i = -s, l = o * -s, e = c * s, h = f * s, k = r, o *= r, c *= r, f *= r),
b = c * k,
b && (r = math.cos(b), s = math.sin(b), b = d * r + e * s, t = g * r + h * s, j = k * s, m = o * s, e = d * -s + e * r, h = g * -s + h * r, k *= r, o *= r, d = b, g = t),
1 !== g && (e *= g, h *= g, k *= g, o *= g),
1 !== f && (d *= f, g *= f, j *= f, m *= f),
1 !== e && (c *= e, f *= e, i *= e, l *= e),
(p || l) && (p && (h += e * -p, i += h * -p, j += k * -p + p), l && (h += z.xorigin - (z.xorigin * c + z.yorigin * d) + z.xoffset, i += z.yorigin - (z.xorigin * f + z.yorigin * g) + z.yoffset), q > h && h > -q && (h = w), q > i && i > -q && (i = w), q > j && j > -q && (j = 0)),
u = z.xpercent || z.ypercent ? "translate(" + z.xpercent + "%," + z.ypercent + "%) matrix3d(": "matrix3d(",
u += (q > c && c > -q ? w: c) + v + (q > f && f > -q ? w: f) + v + (q > i && i > -q ? w: i),
u += v + (q > l && l > -q ? w: l) + v + (q > d && d > -q ? w: d) + v + (q > g && g > -q ? w: g),
c || d || 1 !== g ? (u += v + (q > j && j > -q ? w: j) + v + (q > m && m > -q ? w: m) + v + (q > e && e > -q ? w: e), u += v + (q > h && h > -q ? w: h) + v + (q > k && k > -q ? w: k) + v + (q > o && o > -q ? w: o) + v) : u += ",0,0,0,0,1,0,",
u += h + v + i + v + j + v + (m ? 1 + -j / m: 1) + ")",
a[ca] = u
};
j = ga.prototype,
j.x = j.y = j.z = j.skewx = j.skewy = j.rotation = j.rotationx = j.rotationy = j.zorigin = j.xpercent = j.ypercent = j.xoffset = j.yoffset = 0,
j.scalex = j.scaley = j.scalez = 1,
ya("transform,scale,scalex,scaley,scalez,x,y,z,rotation,rotationx,rotationy,rotationz,skewx,skewy,shortrotation,shortrotationx,shortrotationy,shortrotationz,transformorigin,svgorigin,transformperspective,directionalrotation,parsetransform,force3d,skewtype,xpercent,ypercent,smoothorigin", {
parser: function(a, b, c, d, f, h, i) {
if (d._lastparsedtransform === i) return f;
d._lastparsedtransform = i;
var j, k = i.scale && "function" == typeof i.scale ? i.scale: 0;
"function" == typeof i[c] && (j = i[c], i[c] = b),
k && (i.scale = k(r, a));
var l, m, n, o, p, s, t, u, v, w = a._gstransform,
x = a.style,
y = 1e-6,
z = ba.length,
a = i,
b = {},
c = "transformorigin",
d = ra(a, e, !0, a.parsetransform),
e = a.transform && ("function" == typeof a.transform ? a.transform(r, q) : a.transform);
if (d.skewtype = a.skewtype || d.skewtype || g.defaultskewtype, d._transform = d, e && "string" == typeof e && ca) m = q.style,
m[ca] = e,
m.display = "block",
m.position = "absolute",
o.body.appendchild(q),
l = ra(q, null, !1),
"simple" === d.skewtype && (l.scaley *= math.cos(l.skewx * k)),
d.svg && (s = d.xorigin, t = d.yorigin, l.x -= d.xoffset, l.y -= d.yoffset, (a.transformorigin || a.svgorigin) && (e = {},
la(a, ha(a.transformorigin), e, a.svgorigin, a.smoothorigin, !0), s = e.xorigin, t = e.yorigin, l.x -= e.xoffset - d.xoffset, l.y -= e.yoffset - d.yoffset), (s || t) && (u = qa(q, !0), l.x -= s - (s * u[0] + t * u[2]), l.y -= t - (s * u[1] + t * u[3]))),
o.body.removechild(q),
l.perspective || (l.perspective = d.perspective),
null != a.xpercent && (l.xpercent = ja(a.xpercent, d.xpercent)),
null != a.ypercent && (l.ypercent = ja(a.ypercent, d.ypercent));
else if ("object" == typeof a) {
if (l = {
scalex: ja(null != a.scalex ? a.scalex: a.scale, d.scalex),
scaley: ja(null != a.scaley ? a.scaley: a.scale, d.scaley),
scalez: ja(a.scalez, d.scalez),
x: ja(a.x, d.x),
y: ja(a.y, d.y),
z: ja(a.z, d.z),
xpercent: ja(a.xpercent, d.xpercent),
ypercent: ja(a.ypercent, d.ypercent),
perspective: ja(a.transformperspective, d.perspective)
},
p = a.directionalrotation, null != p) if ("object" == typeof p) for (m in p) a[m] = p[m];
else a.rotation = p;
"string" == typeof a.x && -1 !== a.x.indexof("%") && (l.x = 0, l.xpercent = ja(a.x, d.xpercent)),
"string" == typeof a.y && -1 !== a.y.indexof("%") && (l.y = 0, l.ypercent = ja(a.y, d.ypercent)),
l.rotation = ka("rotation" in a ? a.rotation: "shortrotation" in a ? a.shortrotation + "_short": "rotationz" in a ? a.rotationz: d.rotation, d.rotation, "rotation", b),
fa && (l.rotationx = ka("rotationx" in a ? a.rotationx: "shortrotationx" in a ? a.shortrotationx + "_short": d.rotationx || 0, d.rotationx, "rotationx", b), l.rotationy = ka("rotationy" in a ? a.rotationy: "shortrotationy" in a ? a.shortrotationy + "_short": d.rotationy || 0, d.rotationy, "rotationy", b)),
l.skewx = ka(a.skewx, d.skewx),
l.skewy = ka(a.skewy, d.skewy)
}
for (fa && null != a.force3d && (d.force3d = a.force3d, o = !0), n = d.force3d || d.z || d.rotationx || d.rotationy || l.z || l.rotationx || l.rotationy || l.perspective, n || null == a.scale || (l.scalez = 1); --z > -1;) v = ba[z],
e = l[v] - d[v],
(e > y || -y > e || null != a[v] || null != m[v]) && (o = !0, f = new ta(d, v, d[v], e, f), v in b && (f.e = b[v]), f.xs0 = 0, f.plugin = h, d._overwriteprops.push(f.n));
return e = a.transformorigin,
d.svg && (e || a.svgorigin) && (s = d.xoffset, t = d.yoffset, la(a, ha(e), l, a.svgorigin, a.smoothorigin), f = ua(d, "xorigin", (w ? d: l).xorigin, l.xorigin, f, c), f = ua(d, "yorigin", (w ? d: l).yorigin, l.yorigin, f, c), (s !== d.xoffset || t !== d.yoffset) && (f = ua(d, "xoffset", w ? s: d.xoffset, d.xoffset, f, c), f = ua(d, "yoffset", w ? t: d.yoffset, d.yoffset, f, c)), e = "0px 0px"),
(e || fa && n && d.zorigin) && (ca ? (o = !0, v = ea, e = (e || _(a, v, e, !1, "50% 50%")) + "", f = new ta(x, v, 0, 0, f, -1, c), f.b = x[v], f.plugin = h, fa ? (m = d.zorigin, e = e.split(" "), d.zorigin = (e.length > 2 && (0 === m || "0px" !== e[2]) ? parsefloat(e[2]) : m) || 0, f.xs0 = f.e = e[0] + " " + (e[1] || "50%") + " 0px", f = new ta(d, "zorigin", 0, 0, f, -1, f.n), f.b = m, f.xs0 = f.e = d.zorigin) : f.xs0 = f.e = e) : ha(e + "", d)),
o && (d._transformtype = d.svg && aa || !n && 3 !== this._transformtype ? 2 : 3),
j && (i[c] = j),
k && (i.scale = k),
f
},
prefix: !0
}),
ya("boxshadow", {
defaultvalue: "0px 0px 0px 0px #999",
prefix: !0,
color: !0,
multi: !0,
keyword: "inset"
}),
ya("borderradius", {
defaultvalue: "0px",
parser: function(a, b, c, f, g, h) {
b = this.format(b);
var i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y = ["bordertopleftradius", "bordertoprightradius", "borderbottomrightradius", "borderbottomleftradius"],
z = a.style;
for (q = parsefloat(a.offsetwidth), r = parsefloat(a.offsetheight), i = b.split(" "), j = 0; j < y.length; j++) this.p.indexof("border") && (y[j] = z(y[j])),
m = l = _(a, y[j], e, !1, "0px"),
-1 !== m.indexof(" ") && (l = m.split(" "), m = l[0], l = l[1]),
n = k = i[j],
o = parsefloat(m),
t = m.substr((o + "").length),
u = "=" === n.charat(1),
u ? (p = parseint(n.charat(0) + "1", 10), n = n.substr(2), p *= parsefloat(n), s = n.substr((p + "").length - (0 > p ? 1 : 0)) || "") : (p = parsefloat(n), s = n.substr((p + "").length)),
"" === s && (s = d[c] || t),
s !== t && (v = aa(a, "borderleft", o, t), w = aa(a, "bordertop", o, t), "%" === s ? (m = v / q * 100 + "%", l = w / r * 100 + "%") : "em" === s ? (x = aa(a, "borderleft", 1, "em"), m = v / x + "em", l = w / x + "em") : (m = v + "px", l = w + "px"), u && (n = parsefloat(m) + p + s, k = parsefloat(l) + p + s)),
g = va(z, y[j], m + " " + l, n + " " + k, !1, "0px", g);
return g
},
prefix: !0,
formatter: qa("0px 0px 0px 0px", !1, !0)
}),
ya("borderbottomleftradius,borderbottomrightradius,bordertopleftradius,bordertoprightradius", {
defaultvalue: "0px",
parser: function(a, b, c, d, f, g) {
return va(a.style, c, this.format(_(a, c, e, !1, "0px 0px")), this.format(b), !1, "0px", f)
},
prefix: !0,
formatter: qa("0px 0px", !1, !0)
}),
ya("backgroundposition", {
defaultvalue: "0 0",
parser: function(a, b, c, d, f, g) {
var h, i, j, k, l, m, n = "background-position",
o = e || $(a, null),
q = this.format((o ? p ? o.getpropertyvalue(n + "-x") + " " + o.getpropertyvalue(n + "-y") : o.getpropertyvalue(n) : a.currentstyle.backgroundpositionx + " " + a.currentstyle.backgroundpositiony) || "0 0"),
r = this.format(b);
if ( - 1 !== q.indexof("%") != ( - 1 !== r.indexof("%")) && r.split(",").length < 2 && (m = _(a, "backgroundimage").replace(d, ""), m && "none" !== m)) {
for (h = q.split(" "), i = r.split(" "), r.setattribute("src", m), j = 2; --j > -1;) q = h[j],
k = -1 !== q.indexof("%"),
k !== ( - 1 !== i[j].indexof("%")) && (l = 0 === j ? a.offsetwidth - r.width: a.offsetheight - r.height, h[j] = k ? parsefloat(q) / 100 * l + "px": parsefloat(q) / l * 100 + "%");
q = h.join(" ")
}
return this.parsecomplex(a.style, q, r, f, g)
},
formatter: ha
}),
ya("backgroundsize", {
defaultvalue: "0 0",
formatter: function(a) {
return a += "",
ha( - 1 === a.indexof(" ") ? a + " " + a: a)
}
}),
ya("perspective", {
defaultvalue: "0px",
prefix: !0
}),
ya("perspectiveorigin", {
defaultvalue: "50% 50%",
prefix: !0
}),
ya("transformstyle", {
prefix: !0
}),
ya("backfacevisibility", {
prefix: !0
}),
ya("userselect", {
prefix: !0
}),
ya("margin", {
parser: ra("margintop,marginright,marginbottom,marginleft")
}),
ya("padding", {
parser: ra("paddingtop,paddingright,paddingbottom,paddingleft")
}),
ya("clip", {
defaultvalue: "rect(0px,0px,0px,0px)",
parser: function(a, b, c, d, f, g) {
var h, i, j;
return 9 > p ? (i = a.currentstyle, j = 8 > p ? " ": ",", h = "rect(" + i.cliptop + j + i.clipright + j + i.clipbottom + j + i.clipleft + ")", b = this.format(b).split(",").join(j)) : (h = this.format(_(a, this.p, e, !1, this.dflt)), b = this.format(b)),
this.parsecomplex(a.style, h, b, f, g)
}
}),
ya("textshadow", {
defaultvalue: "0px 0px 0px #999",
color: !0,
multi: !0
}),
ya("autoround,strictunits", {
parser: function(a, b, c, d, e) {
return e
}
}),
ya("border", {
defaultvalue: "0px solid #000",
parser: function(a, b, c, d, f, g) {
var h = _(a, "bordertopwidth", e, !1, "0px"),
i = this.format(b).split(" "),
j = i[0].replace(w, "");
return "px" !== j && (h = parsefloat(h) / aa(a, "bordertopwidth", 1, j) + j),
this.parsecomplex(a.style, this.format(h + " " + _(a, "bordertopstyle", e, !1, "solid") + " " + _(a, "bordertopcolor", e, !1, "#000")), i.join(" "), f, g)
},
color: !0,
formatter: function(a) {
var b = a.split(" ");
return b[0] + " " + (b[1] || "solid") + " " + (a.match(pa) || ["#000"])[0]
}
}),
ya("borderwidth", {
parser: ra("bordertopwidth,borderrightwidth,borderbottomwidth,borderleftwidth")
}),
ya("float,cssfloat,stylefloat", {
parser: function(a, b, c, d, e, f) {
var g = a.style,
h = "cssfloat" in g ? "cssfloat": "stylefloat";
return new ta(g, h, 0, 0, e, -1, c, !1, 0, g[h], b)
}
});
var ua = function(a) {
var b, c = this.t,
d = c.filter || _(this.data, "filter") || "",
e = this.s + this.c * a | 0;
100 === e && ( - 1 === d.indexof("atrix(") && -1 === d.indexof("radient(") && -1 === d.indexof("oader(") ? (c.removeattribute("filter"), b = !_(this.data, "filter")) : (c.filter = d.replace(z, ""), b = !0)),
b || (this.xn1 && (c.filter = d = d || "alpha(opacity=" + e + ")"), -1 === d.indexof("pacity") ? 0 === e && this.xn1 || (c.filter = d + " alpha(opacity=" + e + ")") : c.filter = d.replace(x, "opacity=" + e))
};
ya("opacity,alpha,autoalpha", {
defaultvalue: "1",
parser: function(a, b, c, d, f, g) {
var h = parsefloat(_(a, "opacity", e, !1, "1")),
i = a.style,
j = "autoalpha" === c;
return "string" == typeof b && "=" === b.charat(1) && (b = ("-" === b.charat(0) ? -1 : 1) * parsefloat(b.substr(2)) + h),
j && 1 === h && "hidden" === _(a, "visibility", e) && 0 !== b && (h = 0),
u ? f = new ta(i, "opacity", h, b - h, f) : (f = new ta(i, "opacity", 100 * h, 100 * (b - h), f), f.xn1 = j ? 1 : 0, i.zoom = 1, f.type = 2, f.b = "alpha(opacity=" + f.s + ")", f.e = "alpha(opacity=" + (f.s + f.c) + ")", f.data = a, f.plugin = g, f.setratio = ua),
j && (f = new ta(i, "visibility", 0, 0, f, -1, null, !1, 0, 0 !== h ? "inherit": "hidden", 0 === b ? "hidden": "inherit"), f.xs0 = "inherit", d._overwriteprops.push(f.n), d._overwriteprops.push(c)),
f
}
});
var va = function(a, b) {
b && (a.removeproperty ? (("ms" === b.substr(0, 2) || "webkit" === b.substr(0, 6)) && (b = "-" + b), a.removeproperty(b.replace(b, "-$1").tolowercase())) : a.removeattribute(b))
},
wa = function(a) {
if (this.t._gsclasspt = this, 1 === a || 0 === a) {
this.t.setattribute("class", 0 === a ? this.b: this.e);
for (var b = this.data,
c = this.t.style; b;) b.v ? c[b.p] = b.v: va(c, b.p),
b = b._next;
1 === a && this.t._gsclasspt === this && (this.t._gsclasspt = null)
} else this.t.getattribute("class") !== this.e && this.t.setattribute("class", this.e)
};
ya("classname", {
parser: function(a, b, d, f, g, h, i) {
var j, k, l, m, n, o = a.getattribute("class") || "",
p = a.style.csstext;
if (g = f._classnamept = new ta(a, d, 0, 0, g, 2), g.setratio = wa, g.pr = -11, c = !0, g.b = o, k = ca(a, e), l = a._gsclasspt) {
for (m = {},
n = l.data; n;) m[n.p] = 1,
n = n._next;
l.setratio(1)
}
return a._gsclasspt = g,
g.e = "=" !== b.charat(1) ? b: o.replace(new regexp("(?:\\s|^)" + b.substr(2) + "(?![\\w-])"), "") + ("+" === b.charat(0) ? " " + b.substr(2) : ""),
a.setattribute("class", g.e),
j = da(a, k, ca(a), i, m),
a.setattribute("class", o),
g.data = j.firstmpt,
a.style.csstext = p,
g = g.xfirst = f.parse(a, j.difs, g, h)
}
});
var xa = function(a) {
if ((1 === a || 0 === a) && this.data._totaltime === this.data._totalduration && "isfromstart" !== this.data.data) {
var b, c, d, e, f, g = this.t.style,
h = i.transform.parse;
if ("all" === this.e) g.csstext = "",
e = !0;
else for (b = this.e.split(" ").join("").split(","), d = b.length; --d > -1;) c = b[d],
i[c] && (i[c].parse === h ? e = !0 : c = "transformorigin" === c ? ea: i[c].p),
va(g, c);
e && (va(g, ca), f = this.t._gstransform, f && (f.svg && (this.t.removeattribute("data-svg-origin"), this.t.removeattribute("transform")), delete this.t._gstransform))
}
};
for (ya("clearprops", {
parser: function(a, b, d, e, f) {
return f = new ta(a, d, 0, 0, f, 2),
f.setratio = xa,
f.e = b,
f.pr = -10,
f.data = e._tween,
c = !0,
f
}
}), j = "bezier,throwprops,physicsprops,physics2d".split(","), wa = j.length; wa--;) za(j[wa]);
j = g.prototype,
j._firstpt = j._lastparsedtransform = j._transform = null,
j._oninittween = function(a, b, h, j) {
if (!a.nodetype) return ! 1;
this._target = q = a,
this._tween = h,
this._vars = b,
r = j,
k = b.autoround,
c = !1,
d = b.suffixmap || g.suffixmap,
e = $(a, ""),
f = this._overwriteprops;
var n, p, s, t, u, v, w, x, z, a = a.style;
if (l && "" === a.zindex && (n = _(a, "zindex", e), ("auto" === n || "" === n) && this._addlazyset(a, "zindex", 0)), "string" == typeof b && (t = a.csstext, n = ca(a, e), a.csstext = t + ";" + b, n = da(a, n, ca(a)).difs, !u && y.test(b) && (n.opacity = parsefloat(regexp.$1)), b = n, a.csstext = t), b.classname ? this._firstpt = p = i.classname.parse(a, b.classname, "classname", this, null, null, b) : this._firstpt = p = this.parse(a, b, null), this._transformtype) {
for (z = 3 === this._transformtype, ca ? m && (l = !0, "" === a.zindex && (w = _(a, "zindex", e), ("auto" === w || "" === w) && this._addlazyset(a, "zindex", 0)), o && this._addlazyset(a, "webkitbackfacevisibility", this._vars.webkitbackfacevisibility || (z ? "visible": "hidden"))) : a.zoom = 1, s = p; s && s._next;) s = s._next;
x = new ta(a, "transform", 0, 0, null, 2),
this._linkcssp(x, null, s),
x.setratio = ca ? ta: sa,
x.data = this._transform || ra(a, e, !0),
x.tween = h,
x.pr = -1,
f.pop()
}
if (c) {
for (; p;) {
for (v = p._next, s = t; s && s.pr > p.pr;) s = s._next; (p._prev = s ? s._prev: u) ? p._prev._next = p: t = p,
(p._next = s) ? s._prev = p: u = p,
p = v
}
this._firstpt = t
}
return ! 0
},
j.parse = function(a, b, c, f) {
var g, h, j, l, m, n, o, p, s, t, u = a.style;
for (g in b) {
if (n = b[g], "function" == typeof n && (n = n(r, q)), h = i[g]) c = h.parse(a, n, g, this, c, f, b);
else {
if ("--" === g.substr(0, 2)) {
this._tween._proplookup[g] = this._addtween.call(this._tween, a.style, "setproperty", $(a).getpropertyvalue(g) + "", n + "", g, !1, g);
continue
}
m = _(a, g, e) + "",
s = "string" == typeof n,
"color" === g || "fill" === g || "stroke" === g || -1 !== g.indexof("color") || s && a.test(n) ? (s || (n = na(n), n = (n.length > 3 ? "rgba(": "rgb(") + n.join(",") + ")"), c = va(u, g, m, n, !0, "transparent", c, 0, f)) : s && j.test(n) ? c = va(u, g, m, n, !0, null, c, 0, f) : (j = parsefloat(m), o = j || 0 === j ? m.substr((j + "").length) : "", ("" === m || "auto" === m) && ("width" === g || "height" === g ? (j = ga(a, g, e), o = "px") : "left" === g || "top" === g ? (j = ba(a, g, e), o = "px") : (j = "opacity" !== g ? 0 : 1, o = "")), t = s && "=" === n.charat(1), t ? (l = parseint(n.charat(0) + "1", 10), n = n.substr(2), l *= parsefloat(n), p = n.replace(w, "")) : (l = parsefloat(n), p = s ? n.replace(w, "") : ""), "" === p && (p = g in d ? d[g] : o), n = l || 0 === l ? (t ? l + j: l) + p: b[g], o !== p && ("" !== p || "lineheight" === g) && (l || 0 === l) && j && (j = aa(a, g, j, o), "%" === p ? (j /= aa(a, g, 100, "%") / 100, b.strictunits !== !0 && (m = j + "%")) : "em" === p || "rem" === p || "vw" === p || "vh" === p ? j /= aa(a, g, 1, p) : "px" !== p && (l = aa(a, g, l, p), p = "px"), t && (l || 0 === l) && (n = l + j + p)), t && (l += j), !j && 0 !== j || !l && 0 !== l ? void 0 !== u[g] && (n || n + "" != "nan" && null != n) ? (c = new ta(u, g, l || j || 0, 0, c, -1, g, !1, 0, m, n), c.xs0 = "none" !== n || "display" !== g && -1 === g.indexof("style") ? n: m) : w("invalid " + g + " tween value: " + b[g]) : (c = new ta(u, g, j, l - j, c, 0, g, k !== !1 && ("px" === p || "zindex" === g), 0, m, n), c.xs0 = p))
}
f && c && !c.plugin && (c.plugin = f)
}
return c
},
j.setratio = function(a) {
var b, c, d, e = this._firstpt,
f = 1e-6;
if (1 !== a || this._tween._time !== this._tween._duration && 0 !== this._tween._time) if (a || this._tween._time !== this._tween._duration && 0 !== this._tween._time || this._tween._rawprevtime === -1e-6) for (; e;) {
if (b = e.c * a + e.s, e.r ? b = math.round(b) : f > b && b > -f && (b = 0), e.type) if (1 === e.type) if (d = e.l, 2 === d) e.t[e.p] = e.xs0 + b + e.xs1 + e.xn1 + e.xs2;
else if (3 === d) e.t[e.p] = e.xs0 + b + e.xs1 + e.xn1 + e.xs2 + e.xn2 + e.xs3;
else if (4 === d) e.t[e.p] = e.xs0 + b + e.xs1 + e.xn1 + e.xs2 + e.xn2 + e.xs3 + e.xn3 + e.xs4;
else if (5 === d) e.t[e.p] = e.xs0 + b + e.xs1 + e.xn1 + e.xs2 + e.xn2 + e.xs3 + e.xn3 + e.xs4 + e.xn4 + e.xs5;
else {
for (c = e.xs0 + b + e.xs1, d = 1; d < e.l; d++) c += e["xn" + d] + e["xs" + (d + 1)];
e.t[e.p] = c
} else - 1 === e.type ? e.t[e.p] = e.xs0: e.setratio && e.setratio(a);
else e.t[e.p] = b + e.xs0;
e = e._next
} else for (; e;) 2 !== e.type ? e.t[e.p] = e.b: e.setratio(a),
e = e._next;
else for (; e;) {
if (2 !== e.type) if (e.r && -1 !== e.type) if (b = math.round(e.s + e.c), e.type) {
if (1 === e.type) {
for (d = e.l, c = e.xs0 + b + e.xs1, d = 1; d < e.l; d++) c += e["xn" + d] + e["xs" + (d + 1)];
e.t[e.p] = c
}
} else e.t[e.p] = b + e.xs0;
else e.t[e.p] = e.e;
else e.setratio(a);
e = e._next
}
},
j._enabletransforms = function(a) {
this._transform = this._transform || ra(this._target, e, !0),
this._transformtype = this._transform.svg && aa || !a && 3 !== this._transformtype ? 2 : 3
};
var ya = function(a) {
this.t[this.p] = this.e,
this.data._linkcssp(this, this._next, null, !0)
};
j._addlazyset = function(a, b, c) {
var d = this._firstpt = new ta(a, b, 0, 0, this._firstpt, 2);
d.e = c,
d.setratio = ya,
d.data = this
},
j._linkcssp = function(a, b, c, d) {
return a && (b && (b._prev = a), a._next && (a._next._prev = a._prev), a._prev ? a._prev._next = a._next: this._firstpt === a && (this._firstpt = a._next, d = !0), c ? c._next = a: d || null !== this._firstpt || (this._firstpt = a), a._next = b, a._prev = c),
a
},
j._mod = function(a) {
for (var b = this._firstpt; b;)"function" == typeof a[b.p] && a[b.p] === math.round && (b.r = 1),
b = b._next
},
j._kill = function(b) {
var c, d, e, f = b;
if (b.autoalpha || b.alpha) {
f = {};
for (d in b) f[d] = b[d];
f.opacity = 1,
f.autoalpha && (f.visibility = 1)
}
for (b.classname && (c = this._classnamept) && (e = c.xfirst, e && e._prev ? this._linkcssp(e._prev, c._next, e._prev._prev) : e === this._firstpt && (this._firstpt = c._next), c._next && this._linkcssp(c._next, c._next._next, e._prev), this._classnamept = null), c = this._firstpt; c;) c.plugin && c.plugin !== d && c.plugin._kill && (c.plugin._kill(b), d = c.plugin),
c = c._next;
return a.prototype._kill.call(this, f)
};
var za = function(a, b, c) {
var d, e, f, g;
if (a.slice) for (e = a.length; --e > -1;) za(a[e], b, c);
else for (d = a.childnodes, e = d.length; --e > -1;) f = d[e],
g = f.type,
f.style && (b.push(ca(f)), c && c.push(f)),
1 !== g && 9 !== g && 11 !== g || !f.childnodes.length || za(f, b, c)
};
return g.cascadeto = function(a, c, d) {
var e, f, g, h, i = b.to(a, c, d),
j = [i],
k = [],
l = [],
m = [],
n = b._internals.reservedprops;
for (a = i._targets || i.target, za(a, k, m), i.render(c, !0, !0), za(a, l), i.render(0, !0, !0), i._enabled(!0), e = m.length; --e > -1;) if (f = da(m[e], k[e], l[e]), f.firstmpt) {
f = f.difs;
for (g in d) n[g] && (f[g] = d[g]);
h = {};
for (g in f) h[g] = k[e][g];
j.push(b.fromto(m[e], c, h, f))
}
return j
},
a.activate([g]),
g
},
!0),
function() {
var a = _gsscope._gsdefine.plugin({
propname: "roundprops",
version: "1.6.0",
priority: -1,
api: 2,
init: function(a, b, c) {
return this._tween = c,
!0
}
}),
b = function(a) {
for (; a;) a.f || a.blob || (a.m = math.round),
a = a._next
},
c = a.prototype;
c._oninitallprops = function() {
for (var a, c, d, e = this._tween,
f = e.vars.roundprops.join ? e.vars.roundprops: e.vars.roundprops.split(","), g = f.length, h = {},
i = e._proplookup.roundprops; --g > -1;) h[f[g]] = math.round;
for (g = f.length; --g > -1;) for (a = f[g], c = e._firstpt; c;) d = c._next,
c.pg ? c.t._mod(h) : c.n === a && (2 === c.f && c.t ? b(c.t._firstpt) : (this._add(c.t, a, c.s, c.c), d && (d._prev = c._prev), c._prev ? c._prev._next = d: e._firstpt === c && (e._firstpt = d), c._next = c._prev = null, e._proplookup[a] = i)),
c = d;
return ! 1
},
c._add = function(a, b, c, d) {
this._addtween(a, b, c, c + d, b, math.round),
this._overwriteprops.push(b)
}
} (),
function() {
_gsscope._gsdefine.plugin({
propname: "attr",
api: 2,
version: "0.6.1",
init: function(a, b, c, d) {
var e, f;
if ("function" != typeof a.setattribute) return ! 1;
for (e in b) f = b[e],
"function" == typeof f && (f = f(d, a)),
this._addtween(a, "setattribute", a.getattribute(e) + "", f + "", e, !1, e),
this._overwriteprops.push(e);
return ! 0
}
})
} (),
_gsscope._gsdefine.plugin({
propname: "directionalrotation",
version: "0.3.1",
api: 2,
init: function(a, b, c, d) {
"object" != typeof b && (b = {
rotation: b
}),
this.finals = {};
var e, f, g, h, i, j, k = b.useradians === !0 ? 2 * math.pi: 360,
l = 1e-6;
for (e in b)"useradians" !== e && (h = b[e], "function" == typeof h && (h = h(d, a)), j = (h + "").split("_"), f = j[0], g = parsefloat("function" != typeof a[e] ? a[e] : a[e.indexof("set") || "function" != typeof a["get" + e.substr(3)] ? e: "get" + e.substr(3)]()), h = this.finals[e] = "string" == typeof f && "=" === f.charat(1) ? g + parseint(f.charat(0) + "1", 10) * number(f.substr(2)) : number(f) || 0, i = h - g, j.length && (f = j.join("_"), -1 !== f.indexof("short") && (i %= k, i !== i % (k / 2) && (i = 0 > i ? i + k: i - k)), -1 !== f.indexof("_cw") && 0 > i ? i = (i + 9999999999 * k) % k - (i / k | 0) * k: -1 !== f.indexof("ccw") && i > 0 && (i = (i - 9999999999 * k) % k - (i / k | 0) * k)), (i > l || -l > i) && (this._addtween(a, e, g, g + i, e), this._overwriteprops.push(e)));
return ! 0
},
set: function(a) {
var b;
if (1 !== a) this._super.setratio.call(this, a);
else for (b = this._firstpt; b;) b.f ? b.t[b.p](this.finals[b.p]) : b.t[b.p] = this.finals[b.p],
b = b._next
}
})._autocss = !0,
_gsscope._gsdefine("easing.back", ["easing.ease"],
function(a) {
var b, c, d, e = _gsscope.greensockglobals || _gsscope,
f = e.com.greensock,
g = 2 * math.pi,
h = math.pi / 2,
i = f._class,
j = function(b, c) {
var d = i("easing." + b,
function() {},
!0),
e = d.prototype = new a;
return e.constructor = d,
e.getratio = c,
d
},
k = a.register ||
function() {},
l = function(a, b, c, d, e) {
var f = i("easing." + a, {
easeout: new b,
easein: new c,
easeinout: new d
},
!0);
return k(f, a),
f
},
m = function(a, b, c) {
this.t = a,
this.v = b,
c && (this.next = c, c.prev = this, this.c = c.v - b, this.gap = c.t - a)
},
n = function(b, c) {
var d = i("easing." + b,
function(a) {
this._p1 = a || 0 === a ? a: 1.70158,
this._p2 = 1.525 * this._p1
},
!0),
e = d.prototype = new a;
return e.constructor = d,
e.getratio = c,
e.config = function(a) {
return new d(a)
},
d
},
o = l("back", n("backout",
function(a) {
return (a -= 1) * a * ((this._p1 + 1) * a + this._p1) + 1
}), n("backin",
function(a) {
return a * a * ((this._p1 + 1) * a - this._p1)
}), n("backinout",
function(a) {
return (a *= 2) < 1 ? .5 * a * a * ((this._p2 + 1) * a - this._p2) : .5 * ((a -= 2) * a * ((this._p2 + 1) * a + this._p2) + 2)
})),
p = i("easing.slowmo",
function(a, b, c) {
b = b || 0 === b ? b: .7,
null == a ? a = .7 : a > 1 && (a = 1),
this._p = 1 !== a ? b: 0,
this._p1 = (1 - a) / 2,
this._p2 = a,
this._p3 = this._p1 + this._p2,
this._calcend = c === !0
},
!0),
q = p.prototype = new a;
return q.constructor = p,
q.getratio = function(a) {
var b = a + (.5 - a) * this._p;
return a < this._p1 ? this._calcend ? 1 - (a = 1 - a / this._p1) * a: b - (a = 1 - a / this._p1) * a * a * a * b: a > this._p3 ? this._calcend ? 1 - (a = (a - this._p3) / this._p1) * a: b + (a - b) * (a = (a - this._p3) / this._p1) * a * a * a: this._calcend ? 1 : b
},
p.ease = new p(.7, .7),
q.config = p.config = function(a, b, c) {
return new p(a, b, c)
},
b = i("easing.steppedease",
function(a, b) {
a = a || 1,
this._p1 = 1 / a,
this._p2 = a + (b ? 0 : 1),
this._p3 = b ? 1 : 0
},
!0),
q = b.prototype = new a,
q.constructor = b,
q.getratio = function(a) {
return 0 > a ? a = 0 : a >= 1 && (a = .999999999),
((this._p2 * a | 0) + this._p3) * this._p1
},
q.config = b.config = function(a, c) {
return new b(a, c)
},
c = i("easing.roughease",
function(b) {
b = b || {};
for (var c, d, e, f, g, h, i = b.taper || "none",
j = [], k = 0, l = 0 | (b.points || 20), n = l, o = b.randomize !== !1, p = b.clamp === !0, q = b.template instanceof a ? b.template: null, r = "number" == typeof b.strength ? .4 * b.strength: .4; --n > -1;) c = o ? math.random() : 1 / l * n,
d = q ? q.getratio(c) : c,
"none" === i ? e = r: "out" === i ? (f = 1 - c, e = f * f * r) : "in" === i ? e = c * c * r: .5 > c ? (f = 2 * c, e = f * f * .5 * r) : (f = 2 * (1 - c), e = f * f * .5 * r),
o ? d += math.random() * e - .5 * e: n % 2 ? d += .5 * e: d -= .5 * e,
p && (d > 1 ? d = 1 : 0 > d && (d = 0)),
j[k++] = {
x: c,
y: d
};
for (j.sort(function(a, b) {
return a.x - b.x
}), h = new m(1, 1, null), n = l; --n > -1;) g = j[n],
h = new m(g.x, g.y, h);
this._prev = new m(0, 0, 0 !== h.t ? h: h.next)
},
!0),
q = c.prototype = new a,
q.constructor = c,
q.getratio = function(a) {
var b = this._prev;
if (a > b.t) {
for (; b.next && a >= b.t;) b = b.next;
b = b.prev
} else for (; b.prev && a <= b.t;) b = b.prev;
return this._prev = b,
b.v + (a - b.t) / b.gap * b.c
},
q.config = function(a) {
return new c(a)
},
c.ease = new c,
l("bounce", j("bounceout",
function(a) {
return 1 / 2.75 > a ? 7.5625 * a * a: 2 / 2.75 > a ? 7.5625 * (a -= 1.5 / 2.75) * a + .75 : 2.5 / 2.75 > a ? 7.5625 * (a -= 2.25 / 2.75) * a + .9375 : 7.5625 * (a -= 2.625 / 2.75) * a + .984375
}), j("bouncein",
function(a) {
return (a = 1 - a) < 1 / 2.75 ? 1 - 7.5625 * a * a: 2 / 2.75 > a ? 1 - (7.5625 * (a -= 1.5 / 2.75) * a + .75) : 2.5 / 2.75 > a ? 1 - (7.5625 * (a -= 2.25 / 2.75) * a + .9375) : 1 - (7.5625 * (a -= 2.625 / 2.75) * a + .984375)
}), j("bounceinout",
function(a) {
var b = .5 > a;
return a = b ? 1 - 2 * a: 2 * a - 1,
a = 1 / 2.75 > a ? 7.5625 * a * a: 2 / 2.75 > a ? 7.5625 * (a -= 1.5 / 2.75) * a + .75 : 2.5 / 2.75 > a ? 7.5625 * (a -= 2.25 / 2.75) * a + .9375 : 7.5625 * (a -= 2.625 / 2.75) * a + .984375,
b ? .5 * (1 - a) : .5 * a + .5
})),
l("circ", j("circout",
function(a) {
return math.sqrt(1 - (a -= 1) * a)
}), j("circin",
function(a) {
return - (math.sqrt(1 - a * a) - 1)
}), j("circinout",
function(a) {
return (a *= 2) < 1 ? -.5 * (math.sqrt(1 - a * a) - 1) : .5 * (math.sqrt(1 - (a -= 2) * a) + 1)
})),
d = function(b, c, d) {
var e = i("easing." + b,
function(a, b) {
this._p1 = a >= 1 ? a: 1,
this._p2 = (b || d) / (1 > a ? a: 1),
this._p3 = this._p2 / g * (math.asin(1 / this._p1) || 0),
this._p2 = g / this._p2
},
!0),
f = e.prototype = new a;
return f.constructor = e,
f.getratio = c,
f.config = function(a, b) {
return new e(a, b)
},
e
},
l("elastic", d("elasticout",
function(a) {
return this._p1 * math.pow(2, -10 * a) * math.sin((a - this._p3) * this._p2) + 1
},
.3), d("elasticin",
function(a) {
return - (this._p1 * math.pow(2, 10 * (a -= 1)) * math.sin((a - this._p3) * this._p2))
},
.3), d("elasticinout",
function(a) {
return (a *= 2) < 1 ? -.5 * (this._p1 * math.pow(2, 10 * (a -= 1)) * math.sin((a - this._p3) * this._p2)) : this._p1 * math.pow(2, -10 * (a -= 1)) * math.sin((a - this._p3) * this._p2) * .5 + 1
},
.45)),
l("expo", j("expoout",
function(a) {
return 1 - math.pow(2, -10 * a)
}), j("expoin",
function(a) {
return math.pow(2, 10 * (a - 1)) - .001
}), j("expoinout",
function(a) {
return (a *= 2) < 1 ? .5 * math.pow(2, 10 * (a - 1)) : .5 * (2 - math.pow(2, -10 * (a - 1)))
})),
l("sine", j("sineout",
function(a) {
return math.sin(a * h)
}), j("sinein",
function(a) {
return - math.cos(a * h) + 1
}), j("sineinout",
function(a) {
return - .5 * (math.cos(math.pi * a) - 1)
})),
i("easing.easelookup", {
find: function(b) {
return a.map[b]
}
},
!0),
k(e.slowmo, "slowmo", "ease,"),
k(c, "roughease", "ease,"),
k(b, "steppedease", "ease,"),
o
},
!0)
}),
_gsscope._gsdefine && _gsscope._gsqueue.pop()(),
function(a, b) {
"use strict";
var c = {},
d = a.document,
e = a.greensockglobals = a.greensockglobals || a;
if (!e.tweenlite) {
var f, g, h, i, j, k = function(a) {
var b, c = a.split("."),
d = e;
for (b = 0; b < c.length; b++) d[c[b]] = d = d[c[b]] || {};
return d
},
l = k("com.greensock"),
m = 1e-10,
n = function(a) {
var b, c = [],
d = a.length;
for (b = 0; b !== d; c.push(a[b++]));
return c
},
o = function() {},
p = function() {
var a = object.prototype.tostring,
b = a.call([]);
return function(c) {
return null != c && (c instanceof array || "object" == typeof c && !!c.push && a.call(c) === b)
}
} (),
q = {},
r = function(d, f, g, h) {
this.sc = q[d] ? q[d].sc: [],
q[d] = this,
this.gsclass = null,
this.func = g;
var i = [];
this.check = function(j) {
for (var l, m, n, o, p = f.length,
s = p; --p > -1;)(l = q[f[p]] || new r(f[p], [])).gsclass ? (i[p] = l.gsclass, s--) : j && l.sc.push(this);
if (0 === s && g) {
if (m = ("com.greensock." + d).split("."), n = m.pop(), o = k(m.join("."))[n] = this.gsclass = g.apply(g, i), h) if (e[n] = c[n] = o, "undefined" != typeof module && module.exports) if (d === b) {
module.exports = c[b] = o;
for (p in c) o[p] = c[p]
} else c[b] && (c[b][n] = o);
else "function" == typeof define && define.amd && define((a.greensockamdpath ? a.greensockamdpath + "/": "") + d.split(".").pop(), [],
function() {
return o
});
for (p = 0; p < this.sc.length; p++) this.sc[p].check()
}
},
this.check(!0)
},
s = a._gsdefine = function(a, b, c, d) {
return new r(a, b, c, d)
},
t = l._class = function(a, b, c) {
return b = b ||
function() {},
s(a, [],
function() {
return b
},
c),
b
};
s.globals = e;
var u = [0, 0, 1, 1],
v = t("easing.ease",
function(a, b, c, d) {
this._func = a,
this._type = c || 0,
this._power = d || 0,
this._params = b ? u.concat(b) : u
},
!0),
w = v.map = {},
x = v.register = function(a, b, c, d) {
for (var e, f, g, h, i = b.split(","), j = i.length, k = (c || "easein,easeout,easeinout").split(","); --j > -1;) for (f = i[j], e = d ? t("easing." + f, null, !0) : l.easing[f] || {},
g = k.length; --g > -1;) h = k[g],
w[f + "." + h] = w[h + f] = e[h] = a.getratio ? a: a[h] || new a
};
for (h = v.prototype, h._calcend = !1, h.getratio = function(a) {
if (this._func) return this._params[0] = a,
this._func.apply(null, this._params);
var b = this._type,
c = this._power,
d = 1 === b ? 1 - a: 2 === b ? a: .5 > a ? 2 * a: 2 * (1 - a);
return 1 === c ? d *= d: 2 === c ? d *= d * d: 3 === c ? d *= d * d * d: 4 === c && (d *= d * d * d * d),
1 === b ? 1 - d: 2 === b ? d: .5 > a ? d / 2 : 1 - d / 2
},
f = ["linear", "quad", "cubic", "quart", "quint,strong"], g = f.length; --g > -1;) h = f[g] + ",power" + g,
x(new v(null, null, 1, g), h, "easeout", !0),
x(new v(null, null, 2, g), h, "easein" + (0 === g ? ",easenone": "")),
x(new v(null, null, 3, g), h, "easeinout");
w.linear = l.easing.linear.easein,
w.swing = l.easing.quad.easeinout;
var y = t("events.eventdispatcher",
function(a) {
this._listeners = {},
this._eventtarget = a || this
});
h = y.prototype,
h.addeventlistener = function(a, b, c, d, e) {
e = e || 0;
var f, g, h = this._listeners[a],
k = 0;
for (this !== i || j || i.wake(), null == h && (this._listeners[a] = h = []), g = h.length; --g > -1;) f = h[g],
f.c === b && f.s === c ? h.splice(g, 1) : 0 === k && f.pr < e && (k = g + 1);
h.splice(k, 0, {
c: b,
s: c,
up: d,
pr: e
})
},
h.removeeventlistener = function(a, b) {
var c, d = this._listeners[a];
if (d) for (c = d.length; --c > -1;) if (d[c].c === b) return void d.splice(c, 1)
},
h.dispatchevent = function(a) {
var b, c, d, e = this._listeners[a];
if (e) for (b = e.length, b > 1 && (e = e.slice(0)), c = this._eventtarget; --b > -1;) d = e[b],
d && (d.up ? d.c.call(d.s || c, {
type: a,
target: c
}) : d.c.call(d.s || c))
};
var z = a.requestanimationframe,
a = a.cancelanimationframe,
b = date.now ||
function() {
return (new date).gettime()
},
c = b();
for (f = ["ms", "moz", "webkit", "o"], g = f.length; --g > -1 && !z;) z = a[f[g] + "requestanimationframe"],
a = a[f[g] + "cancelanimationframe"] || a[f[g] + "cancelrequestanimationframe"];
t("ticker",
function(a, b) {
var c, e, f, g, h, k = this,
l = b(),
n = b !== !1 && z ? "auto": !1,
p = 500,
q = 33,
r = "tick",
s = function(a) {
var b, d, i = b() - c;
i > p && (l += i - q),
c += i,
k.time = (c - l) / 1e3,
b = k.time - h,
(!c || b > 0 || a === !0) && (k.frame++, h += b + (b >= g ? .004 : g - b), d = !0),
a !== !0 && (f = e(s)),
d && k.dispatchevent(r)
};
y.call(k),
k.time = k.frame = 0,
k.tick = function() {
s(!0)
},
k.lagsmoothing = function(a, b) {
p = a || 1 / m,
q = math.min(b, p, 0)
},
k.sleep = function() {
null != f && (n && a ? a(f) : cleartimeout(f), e = o, f = null, k === i && (j = !1))
},
k.wake = function(a) {
null !== f ? k.sleep() : a ? l += -c + (c = b()) : k.frame > 10 && (c = b() - p + 5),
e = 0 === c ? o: n && z ? z: function(a) {
return settimeout(a, 1e3 * (h - k.time) + 1 | 0)
},
k === i && (j = !0),
s(2)
},
k.fps = function(a) {
return arguments.length ? (c = a, g = 1 / (c || 60), h = this.time + g, void k.wake()) : c
},
k.useraf = function(a) {
return arguments.length ? (k.sleep(), n = a, void k.fps(c)) : n
},
k.fps(a),
settimeout(function() {
"auto" === n && k.frame < 5 && "hidden" !== d.visibilitystate && k.useraf(!1)
},
1500)
}),
h = l.ticker.prototype = new l.events.eventdispatcher,
h.constructor = l.ticker;
var d = t("core.animation",
function(a, b) {
if (this.vars = b = b || {},
this._duration = this._totalduration = a || 0, this._delay = number(b.delay) || 0, this._timescale = 1, this._active = b.immediaterender === !0, this.data = b.data, this._reversed = b.reversed === !0, x) {
j || i.wake();
var c = this.vars.useframes ? w: x;
c.add(this, c._time),
this.vars.paused && this.paused(!0)
}
});
i = d.ticker = new l.ticker,
h = d.prototype,
h._dirty = h._gc = h._initted = h._paused = !1,
h._totaltime = h._time = 0,
h._rawprevtime = -1,
h._next = h._last = h._onupdate = h._timeline = h.timeline = null,
h._paused = !1;
var e = function() {
j && b() - c > 2e3 && "hidden" !== d.visibilitystate && i.wake();
var a = settimeout(e, 2e3);
a.unref && a.unref()
};
e(),
h.play = function(a, b) {
return null != a && this.seek(a, b),
this.reversed(!1).paused(!1)
},
h.pause = function(a, b) {
return null != a && this.seek(a, b),
this.paused(!0)
},
h.resume = function(a, b) {
return null != a && this.seek(a, b),
this.paused(!1)
},
h.seek = function(a, b) {
return this.totaltime(number(a), b !== !1)
},
h.restart = function(a, b) {
return this.reversed(!1).paused(!1).totaltime(a ? -this._delay: 0, b !== !1, !0)
},
h.reverse = function(a, b) {
return null != a && this.seek(a || this.totalduration(), b),
this.reversed(!0).paused(!1)
},
h.render = function(a, b, c) {},
h.invalidate = function() {
return this._time = this._totaltime = 0,
this._initted = this._gc = !1,
this._rawprevtime = -1,
(this._gc || !this.timeline) && this._enabled(!0),
this
},
h.isactive = function() {
var a, b = this._timeline,
c = this._starttime;
return ! b || !this._gc && !this._paused && b.isactive() && (a = b.rawtime(!0)) >= c && a < c + this.totalduration() / this._timescale - 1e-7
},
h._enabled = function(a, b) {
return j || i.wake(),
this._gc = !a,
this._active = this.isactive(),
b !== !0 && (a && !this.timeline ? this._timeline.add(this, this._starttime - this._delay) : !a && this.timeline && this._timeline._remove(this, !0)),
!1
},
h._kill = function(a, b) {
return this._enabled(!1, !1)
},
h.kill = function(a, b) {
return this._kill(a, b),
this
},
h._uncache = function(a) {
for (var b = a ? this: this.timeline; b;) b._dirty = !0,
b = b.timeline;
return this
},
h._swapselfinparams = function(a) {
for (var b = a.length,
c = a.concat(); --b > -1;)"{self}" === a[b] && (c[b] = this);
return c
},
h._callback = function(a) {
var b = this.vars,
c = b[a],
d = b[a + "params"],
e = b[a + "scope"] || b.callbackscope || this,
f = d ? d.length: 0;
switch (f) {
case 0:
c.call(e);
break;
case 1:
c.call(e, d[0]);
break;
case 2:
c.call(e, d[0], d[1]);
break;
default:
c.apply(e, d)
}
},
h.eventcallback = function(a, b, c, d) {
if ("on" === (a || "").substr(0, 2)) {
var e = this.vars;
if (1 === arguments.length) return e[a];
null == b ? delete e[a] : (e[a] = b, e[a + "params"] = p(c) && -1 !== c.join("").indexof("{self}") ? this._swapselfinparams(c) : c, e[a + "scope"] = d),
"onupdate" === a && (this._onupdate = b)
}
return this
},
h.delay = function(a) {
return arguments.length ? (this._timeline.smoothchildtiming && this.starttime(this._starttime + a - this._delay), this._delay = a, this) : this._delay
},
h.duration = function(a) {
return arguments.length ? (this._duration = this._totalduration = a, this._uncache(!0), this._timeline.smoothchildtiming && this._time > 0 && this._time < this._duration && 0 !== a && this.totaltime(this._totaltime * (a / this._duration), !0), this) : (this._dirty = !1, this._duration)
},
h.totalduration = function(a) {
return this._dirty = !1,
arguments.length ? this.duration(a) : this._totalduration
},
h.time = function(a, b) {
return arguments.length ? (this._dirty && this.totalduration(), this.totaltime(a > this._duration ? this._duration: a, b)) : this._time
},
h.totaltime = function(a, b, c) {
if (j || i.wake(), !arguments.length) return this._totaltime;
if (this._timeline) {
if (0 > a && !c && (a += this.totalduration()), this._timeline.smoothchildtiming) {
this._dirty && this.totalduration();
var d = this._totalduration,
e = this._timeline;
if (a > d && !c && (a = d), this._starttime = (this._paused ? this._pausetime: e._time) - (this._reversed ? d - a: a) / this._timescale, e._dirty || this._uncache(!1), e._timeline) for (; e._timeline;) e._timeline._time !== (e._starttime + e._totaltime) / e._timescale && e.totaltime(e._totaltime, !0),
e = e._timeline
}
this._gc && this._enabled(!0, !1),
(this._totaltime !== a || 0 === this._duration) && (j.length && z(), this.render(a, b, !1), j.length && z())
}
return this
},
h.progress = h.totalprogress = function(a, b) {
var c = this.duration();
return arguments.length ? this.totaltime(c * a, b) : c ? this._time / c: this.ratio
},
h.starttime = function(a) {
return arguments.length ? (a !== this._starttime && (this._starttime = a, this.timeline && this.timeline._sortchildren && this.timeline.add(this, a - this._delay)), this) : this._starttime
},
h.endtime = function(a) {
return this._starttime + (0 != a ? this.totalduration() : this.duration()) / this._timescale
},
h.timescale = function(a) {
if (!arguments.length) return this._timescale;
if (a = a || m, this._timeline && this._timeline.smoothchildtiming) {
var b = this._pausetime,
c = b || 0 === b ? b: this._timeline.totaltime();
this._starttime = c - (c - this._starttime) * this._timescale / a
}
return this._timescale = a,
this._uncache(!1)
},
h.reversed = function(a) {
return arguments.length ? (a != this._reversed && (this._reversed = a, this.totaltime(this._timeline && !this._timeline.smoothchildtiming ? this.totalduration() - this._totaltime: this._totaltime, !0)), this) : this._reversed
},
h.paused = function(a) {
if (!arguments.length) return this._paused;
var b, c, d = this._timeline;
return a != this._paused && d && (j || a || i.wake(), b = d.rawtime(), c = b - this._pausetime, !a && d.smoothchildtiming && (this._starttime += c, this._uncache(!1)), this._pausetime = a ? b: null, this._paused = a, this._active = this.isactive(), !a && 0 !== c && this._initted && this.duration() && (b = d.smoothchildtiming ? this._totaltime: (b - this._starttime) / this._timescale, this.render(b, b === this._totaltime, !0))),
this._gc && !a && this._enabled(!0, !1),
this
};
var f = t("core.simpletimeline",
function(a) {
d.call(this, 0, a),
this.autoremovechildren = this.smoothchildtiming = !0
});
h = f.prototype = new d,
h.constructor = f,
h.kill()._gc = !1,
h._first = h._last = h._recent = null,
h._sortchildren = !1,
h.add = h.insert = function(a, b, c, d) {
var e, f;
if (a._starttime = number(b || 0) + a._delay, a._paused && this !== a._timeline && (a._pausetime = a._starttime + (this.rawtime() - a._starttime) / a._timescale), a.timeline && a.timeline._remove(a, !0), a.timeline = a._timeline = this, a._gc && a._enabled(!0, !0), e = this._last, this._sortchildren) for (f = a._starttime; e && e._starttime > f;) e = e._prev;
return e ? (a._next = e._next, e._next = a) : (a._next = this._first, this._first = a),
a._next ? a._next._prev = a: this._last = a,
a._prev = e,
this._recent = a,
this._timeline && this._uncache(!0),
this
},
h._remove = function(a, b) {
return a.timeline === this && (b || a._enabled(!1, !0), a._prev ? a._prev._next = a._next: this._first === a && (this._first = a._next), a._next ? a._next._prev = a._prev: this._last === a && (this._last = a._prev), a._next = a._prev = a.timeline = null, a === this._recent && (this._recent = this._last), this._timeline && this._uncache(!0)),
this
},
h.render = function(a, b, c) {
var d, e = this._first;
for (this._totaltime = this._time = this._rawprevtime = a; e;) d = e._next,
(e._active || a >= e._starttime && !e._paused && !e._gc) && (e._reversed ? e.render((e._dirty ? e.totalduration() : e._totalduration) - (a - e._starttime) * e._timescale, b, c) : e.render((a - e._starttime) * e._timescale, b, c)),
e = d
},
h.rawtime = function() {
return j || i.wake(),
this._totaltime
};
var g = t("tweenlite",
function(b, c, d) {
if (d.call(this, c, d), this.render = g.prototype.render, null == b) throw "cannot tween a null target.";
this.target = b = "string" != typeof b ? b: g.selector(b) || b;
var e, f, g, h = b.jquery || b.length && b !== a && b[0] && (b[0] === a || b[0].nodetype && b[0].style && !b.nodetype),
i = this.vars.overwrite;
if (this._overwrite = i = null == i ? v[g.defaultoverwrite] : "number" == typeof i ? i >> 0 : v[i], (h || b instanceof array || b.push && p(b)) && "number" != typeof b[0]) for (this._targets = g = n(b), this._proplookup = [], this._siblings = [], e = 0; e < g.length; e++) f = g[e],
f ? "string" != typeof f ? f.length && f !== a && f[0] && (f[0] === a || f[0].nodetype && f[0].style && !f.nodetype) ? (g.splice(e--, 1), this._targets = g = g.concat(n(f))) : (this._siblings[e] = $(f, this, !1), 1 === i && this._siblings[e].length > 1 && aa(f, this, null, 1, this._siblings[e])) : (f = g[e--] = g.selector(f), "string" == typeof f && g.splice(e + 1, 1)) : g.splice(e--, 1);
else this._proplookup = {},
this._siblings = $(b, this, !1),
1 === i && this._siblings.length > 1 && aa(b, this, null, 1, this._siblings); (this.vars.immediaterender || 0 === c && 0 === this._delay && this.vars.immediaterender !== !1) && (this._time = -m, this.render(math.min(0, -this._delay)))
},
!0),
h = function(b) {
return b && b.length && b !== a && b[0] && (b[0] === a || b[0].nodetype && b[0].style && !b.nodetype)
},
i = function(a, b) {
var c, d = {};
for (c in a) u[c] || c in b && "transform" !== c && "x" !== c && "y" !== c && "width" !== c && "height" !== c && "classname" !== c && "border" !== c || !(!r[c] || r[c] && r[c]._autocss) || (d[c] = a[c], delete a[c]);
a.css = d
};
h = g.prototype = new d,
h.constructor = g,
h.kill()._gc = !1,
h.ratio = 0,
h._firstpt = h._targets = h._overwrittenprops = h._startat = null,
h._notifypluginsofenabled = h._lazy = !1,
g.version = "1.20.2",
g.defaultease = h._ease = new v(null, null, 1, 1),
g.defaultoverwrite = "auto",
g.ticker = i,
g.autosleep = 120,
g.lagsmoothing = function(a, b) {
i.lagsmoothing(a, b)
},
g.selector = a.$ || a.jquery ||
function(b) {
var c = a.$ || a.jquery;
return c ? (g.selector = c, c(b)) : "undefined" == typeof d ? b: d.queryselectorall ? d.queryselectorall(b) : d.getelementbyid("#" === b.charat(0) ? b.substr(1) : b)
};
var j = [],
k = {},
l = /(?:(-|-=|\+=)?\d*\.?\d*(?:e[\-+]?\d+)?)[0-9]/gi,
m = /[\+-]=-?[\.\d]/,
n = function(a) {
for (var b, c = this._firstpt,
d = 1e-6; c;) b = c.blob ? 1 === a && this.end ? this.end: a ? this.join("") : this.start: c.c * a + c.s,
c.m ? b = c.m(b, this._target || c.t) : d > b && b > -d && !c.blob && (b = 0),
c.f ? c.fp ? c.t[c.p](c.fp, b) : c.t[c.p](b) : c.t[c.p] = b,
c = c._next
},
o = function(a, b, c, d) {
var e, f, g, h, i, j, k, l = [],
m = 0,
n = "",
o = 0;
for (l.start = a, l.end = b, a = l[0] = a + "", b = l[1] = b + "", c && (c(l), a = l[0], b = l[1]), l.length = 0, e = a.match(l) || [], f = b.match(l) || [], d && (d._next = null, d.blob = 1, l._firstpt = l._applypt = d), i = f.length, h = 0; i > h; h++) k = f[h],
j = b.substr(m, b.indexof(k, m) - m),
n += j || !h ? j: ",",
m += j.length,
o ? o = (o + 1) % 5 : "rgba(" === j.substr( - 5) && (o = 1),
k === e[h] || e.length <= h ? n += k: (n && (l.push(n), n = ""), g = parsefloat(e[h]), l.push(g), l._firstpt = {
_next: l._firstpt,
t: l,
p: l.length - 1,
s: g,
c: ("=" === k.charat(1) ? parseint(k.charat(0) + "1", 10) * parsefloat(k.substr(2)) : parsefloat(k) - g) || 0,
f: 0,
m: o && 4 > o ? math.round: 0
}),
m += k.length;
return n += b.substr(m),
n && l.push(n),
l.setratio = n,
m.test(b) && (l.end = 0),
l
},
p = function(a, b, c, d, e, f, g, h, i) {
"function" == typeof d && (d = d(i || 0, a));
var j, k = typeof a[b],
l = "function" !== k ? "": b.indexof("set") || "function" != typeof a["get" + b.substr(3)] ? b: "get" + b.substr(3),
m = "get" !== c ? c: l ? g ? a[l](g) : a[l]() : a[b],
n = "string" == typeof d && "=" === d.charat(1),
o = {
t: a,
p: b,
s: m,
f: "function" === k,
pg: 0,
n: e || b,
m: f ? "function" == typeof f ? f: math.round: 0,
pr: 0,
c: n ? parseint(d.charat(0) + "1", 10) * parsefloat(d.substr(2)) : parsefloat(d) - m || 0
};
return ("number" != typeof m || "number" != typeof d && !n) && (g || isnan(m) || !n && isnan(d) || "boolean" == typeof m || "boolean" == typeof d ? (o.fp = g, j = o(m, n ? parsefloat(o.s) + o.c: d, h || g.defaultstringfilter, o), o = {
t: j,
p: "setratio",
s: 0,
c: 1,
f: 2,
pg: 0,
n: e || b,
pr: 0,
m: 0
}) : (o.s = parsefloat(m), n || (o.c = parsefloat(d) - o.s || 0))),
o.c ? ((o._next = this._firstpt) && (o._next._prev = o), this._firstpt = o, o) : void 0
},
q = g._internals = {
isarray: p,
isselector: h,
lazytweens: j,
blobdif: o
},
r = g._plugins = {},
s = q.tweenlookup = {},
t = 0,
u = q.reservedprops = {
ease: 1,
delay: 1,
overwrite: 1,
oncomplete: 1,
oncompleteparams: 1,
oncompletescope: 1,
useframes: 1,
runbackwards: 1,
startat: 1,
onupdate: 1,
onupdateparams: 1,
onupdatescope: 1,
onstart: 1,
onstartparams: 1,
onstartscope: 1,
onreversecomplete: 1,
onreversecompleteparams: 1,
onreversecompletescope: 1,
onrepeat: 1,
onrepeatparams: 1,
onrepeatscope: 1,
easeparams: 1,
yoyo: 1,
immediaterender: 1,
repeat: 1,
repeatdelay: 1,
data: 1,
paused: 1,
reversed: 1,
autocss: 1,
lazy: 1,
onoverwrite: 1,
callbackscope: 1,
stringfilter: 1,
id: 1,
yoyoease: 1
},
v = {
none: 0,
all: 1,
auto: 2,
concurrent: 3,
allonstart: 4,
preexisting: 5,
"true": 1,
"false": 0
},
w = d._rootframestimeline = new f,
x = d._roottimeline = new f,
y = 30,
z = q.lazyrender = function() {
var a, b = j.length;
for (k = {}; --b > -1;) a = j[b],
a && a._lazy !== !1 && (a.render(a._lazy[0], a._lazy[1], !0), a._lazy = !1);
j.length = 0
};
x._starttime = i.time,
w._starttime = i.frame,
x._active = w._active = !0,
settimeout(z, 1),
d._updateroot = g.render = function() {
var a, b, c;
if (j.length && z(), x.render((i.time - x._starttime) * x._timescale, !1, !1), w.render((i.frame - w._starttime) * w._timescale, !1, !1), j.length && z(), i.frame >= y) {
y = i.frame + (parseint(g.autosleep, 10) || 120);
for (c in s) {
for (b = s[c].tweens, a = b.length; --a > -1;) b[a]._gc && b.splice(a, 1);
0 === b.length && delete s[c]
}
if (c = x._first, (!c || c._paused) && g.autosleep && !w._first && 1 === i._listeners.tick.length) {
for (; c && c._paused;) c = c._next;
c || i.sleep()
}
}
},
i.addeventlistener("tick", d._updateroot);
var $ = function(a, b, c) {
var d, e, f = a._gstweenid;
if (s[f || (a._gstweenid = f = "t" + t++)] || (s[f] = {
target: a,
tweens: []
}), b && (d = s[f].tweens, d[e = d.length] = b, c)) for (; --e > -1;) d[e] === b && d.splice(e, 1);
return s[f].tweens
},
_ = function(a, b, c, d) {
var e, f, g = a.vars.onoverwrite;
return g && (e = g(a, b, c, d)),
g = g.onoverwrite,
g && (f = g(a, b, c, d)),
e !== !1 && f !== !1
},
aa = function(a, b, c, d, e) {
var f, g, h, i;
if (1 === d || d >= 4) {
for (i = e.length, f = 0; i > f; f++) if ((h = e[f]) !== b) h._gc || h._kill(null, a, b) && (g = !0);
else if (5 === d) break;
return g
}
var j, k = b._starttime + m,
l = [],
n = 0,
o = 0 === b._duration;
for (f = e.length; --f > -1;)(h = e[f]) === b || h._gc || h._paused || (h._timeline !== b._timeline ? (j = j || ba(b, 0, o), 0 === ba(h, j, o) && (l[n++] = h)) : h._starttime <= k && h._starttime + h.totalduration() / h._timescale > k && ((o || !h._initted) && k - h._starttime <= 2e-10 || (l[n++] = h)));
for (f = n; --f > -1;) if (h = l[f], 2 === d && h._kill(c, a, b) && (g = !0), 2 !== d || !h._firstpt && h._initted) {
if (2 !== d && !_(h, b)) continue;
h._enabled(!1, !1) && (g = !0)
}
return g
},
ba = function(a, b, c) {
for (var d = a._timeline,
e = d._timescale,
f = a._starttime; d._timeline;) {
if (f += d._starttime, e *= d._timescale, d._paused) return - 100;
d = d._timeline
}
return f /= e,
f > b ? f - b: c && f === b || !a._initted && 2 * m > f - b ? m: (f += a.totalduration() / a._timescale / e) > b + m ? 0 : f - b - m
};
h._init = function() {
var a, b, c, d, e, f, g = this.vars,
h = this._overwrittenprops,
i = this._duration,
j = !!g.immediaterender,
k = g.ease;
if (g.startat) {
this._startat && (this._startat.render( - 1, !0), this._startat.kill()),
e = {};
for (d in g.startat) e[d] = g.startat[d];
if (e.overwrite = !1, e.immediaterender = !0, e.lazy = j && g.lazy !== !1, e.startat = e.delay = null, e.onupdate = g.onupdate, e.onupdatescope = g.onupdatescope || g.callbackscope || this, this._startat = g.to(this.target, 0, e), j) if (this._time > 0) this._startat = null;
else if (0 !== i) return
} else if (g.runbackwards && 0 !== i) if (this._startat) this._startat.render( - 1, !0),
this._startat.kill(),
this._startat = null;
else {
0 !== this._time && (j = !1),
c = {};
for (d in g) u[d] && "autocss" !== d || (c[d] = g[d]);
if (c.overwrite = 0, c.data = "isfromstart", c.lazy = j && g.lazy !== !1, c.immediaterender = j, this._startat = g.to(this.target, 0, c), j) {
if (0 === this._time) return
} else this._startat._init(),
this._startat._enabled(!1),
this.vars.immediaterender && (this._startat = null)
}
if (this._ease = k = k ? k instanceof v ? k: "function" == typeof k ? new v(k, g.easeparams) : w[k] || g.defaultease: g.defaultease, g.easeparams instanceof array && k.config && (this._ease = k.config.apply(k, g.easeparams)), this._easetype = this._ease._type, this._easepower = this._ease._power, this._firstpt = null, this._targets) for (f = this._targets.length, a = 0; f > a; a++) this._initprops(this._targets[a], this._proplookup[a] = {},
this._siblings[a], h ? h[a] : null, a) && (b = !0);
else b = this._initprops(this.target, this._proplookup, this._siblings, h, 0);
if (b && g._onpluginevent("_oninitallprops", this), h && (this._firstpt || "function" != typeof this.target && this._enabled(!1, !1)), g.runbackwards) for (c = this._firstpt; c;) c.s += c.c,
c.c = -c.c,
c = c._next;
this._onupdate = g.onupdate,
this._initted = !0
},
h._initprops = function(b, c, d, e, f) {
var g, h, i, j, k, l;
if (null == b) return ! 1;
k[b._gstweenid] && z(),
this.vars.css || b.style && b !== a && b.nodetype && r.css && this.vars.autocss !== !1 && i(this.vars, b);
for (g in this.vars) if (l = this.vars[g], u[g]) l && (l instanceof array || l.push && p(l)) && -1 !== l.join("").indexof("{self}") && (this.vars[g] = l = this._swapselfinparams(l, this));
else if (r[g] && (j = new r[g])._oninittween(b, this.vars[g], this, f)) {
for (this._firstpt = k = {
_next: this._firstpt,
t: j,
p: "setratio",
s: 0,
c: 1,
f: 1,
n: g,
pg: 1,
pr: j._priority,
m: 0
},
h = j._overwriteprops.length; --h > -1;) c[j._overwriteprops[h]] = this._firstpt; (j._priority || j._oninitallprops) && (i = !0),
(j._ondisable || j._onenable) && (this._notifypluginsofenabled = !0),
k._next && (k._next._prev = k)
} else c[g] = p.call(this, b, g, "get", l, g, 0, null, this.vars.stringfilter, f);
return e && this._kill(e, b) ? this._initprops(b, c, d, e, f) : this._overwrite > 1 && this._firstpt && d.length > 1 && aa(b, this, c, this._overwrite, d) ? (this._kill(c, b), this._initprops(b, c, d, e, f)) : (this._firstpt && (this.vars.lazy !== !1 && this._duration || this.vars.lazy && !this._duration) && (k[b._gstweenid] = !0), i)
},
h.render = function(a, b, c) {
var d, e, f, g, h = this._time,
i = this._duration,
j = this._rawprevtime;
if (a >= i - 1e-7 && a >= 0) this._totaltime = this._time = i,
this.ratio = this._ease._calcend ? this._ease.getratio(1) : 1,
this._reversed || (d = !0, e = "oncomplete", c = c || this._timeline.autoremovechildren),
0 === i && (this._initted || !this.vars.lazy || c) && (this._starttime === this._timeline._duration && (a = 0), (0 > j || 0 >= a && a >= -1e-7 || j === m && "ispause" !== this.data) && j !== a && (c = !0, j > m && (e = "onreversecomplete")), this._rawprevtime = g = !b || a || j === a ? a: m);
else if (1e-7 > a) this._totaltime = this._time = 0,
this.ratio = this._ease._calcend ? this._ease.getratio(0) : 0,
(0 !== h || 0 === i && j > 0) && (e = "onreversecomplete", d = this._reversed),
0 > a && (this._active = !1, 0 === i && (this._initted || !this.vars.lazy || c) && (j >= 0 && (j !== m || "ispause" !== this.data) && (c = !0), this._rawprevtime = g = !b || a || j === a ? a: m)),
(!this._initted || this._startat && this._startat.progress()) && (c = !0);
else if (this._totaltime = this._time = a, this._easetype) {
var k = a / i,
l = this._easetype,
n = this._easepower; (1 === l || 3 === l && k >= .5) && (k = 1 - k),
3 === l && (k *= 2),
1 === n ? k *= k: 2 === n ? k *= k * k: 3 === n ? k *= k * k * k: 4 === n && (k *= k * k * k * k),
1 === l ? this.ratio = 1 - k: 2 === l ? this.ratio = k: .5 > a / i ? this.ratio = k / 2 : this.ratio = 1 - k / 2
} else this.ratio = this._ease.getratio(a / i);
if (this._time !== h || c) {
if (!this._initted) {
if (this._init(), !this._initted || this._gc) return;
if (!c && this._firstpt && (this.vars.lazy !== !1 && this._duration || this.vars.lazy && !this._duration)) return this._time = this._totaltime = h,
this._rawprevtime = j,
j.push(this),
void(this._lazy = [a, b]);
this._time && !d ? this.ratio = this._ease.getratio(this._time / i) : d && this._ease._calcend && (this.ratio = this._ease.getratio(0 === this._time ? 0 : 1))
}
for (this._lazy !== !1 && (this._lazy = !1), this._active || !this._paused && this._time !== h && a >= 0 && (this._active = !0), 0 === h && (this._startat && (a >= 0 ? this._startat.render(a, b, c) : e || (e = "_dummygs")), this.vars.onstart && (0 !== this._time || 0 === i) && (b || this._callback("onstart"))), f = this._firstpt; f;) f.f ? f.t[f.p](f.c * this.ratio + f.s) : f.t[f.p] = f.c * this.ratio + f.s,
f = f._next;
this._onupdate && (0 > a && this._startat && a !== -1e-4 && this._startat.render(a, b, c), b || (this._time !== h || d || c) && this._callback("onupdate")),
e && (!this._gc || c) && (0 > a && this._startat && !this._onupdate && a !== -1e-4 && this._startat.render(a, b, c), d && (this._timeline.autoremovechildren && this._enabled(!1, !1), this._active = !1), !b && this.vars[e] && this._callback(e), 0 === i && this._rawprevtime === m && g !== m && (this._rawprevtime = 0))
}
},
h._kill = function(a, b, c) {
if ("all" === a && (a = null), null == a && (null == b || b === this.target)) return this._lazy = !1,
this._enabled(!1, !1);
b = "string" != typeof b ? b || this._targets || this.target: g.selector(b) || b;
var d, e, f, g, h, i, j, k, l, m = c && this._time && c._starttime === this._starttime && this._timeline === c._timeline;
if ((p(b) || h(b)) && "number" != typeof b[0]) for (d = b.length; --d > -1;) this._kill(a, b[d], c) && (i = !0);
else {
if (this._targets) {
for (d = this._targets.length; --d > -1;) if (b === this._targets[d]) {
h = this._proplookup[d] || {},
this._overwrittenprops = this._overwrittenprops || [],
e = this._overwrittenprops[d] = a ? this._overwrittenprops[d] || {}: "all";
break
}
} else {
if (b !== this.target) return ! 1;
h = this._proplookup,
e = this._overwrittenprops = a ? this._overwrittenprops || {}: "all"
}
if (h) {
if (j = a || h, k = a !== e && "all" !== e && a !== h && ("object" != typeof a || !a._tempkill), c && (g.onoverwrite || this.vars.onoverwrite)) {
for (f in j) h[f] && (l || (l = []), l.push(f));
if ((l || !a) && !_(this, c, b, l)) return ! 1
}
for (f in j)(g = h[f]) && (m && (g.f ? g.t[g.p](g.s) : g.t[g.p] = g.s, i = !0), g.pg && g.t._kill(j) && (i = !0), g.pg && 0 !== g.t._overwriteprops.length || (g._prev ? g._prev._next = g._next: g === this._firstpt && (this._firstpt = g._next), g._next && (g._next._prev = g._prev), g._next = g._prev = null), delete h[f]),
k && (e[f] = 1); ! this._firstpt && this._initted && this._enabled(!1, !1)
}
}
return i
},
h.invalidate = function() {
return this._notifypluginsofenabled && g._onpluginevent("_ondisable", this),
this._firstpt = this._overwrittenprops = this._startat = this._onupdate = null,
this._notifypluginsofenabled = this._active = this._lazy = !1,
this._proplookup = this._targets ? {}: [],
d.prototype.invalidate.call(this),
this.vars.immediaterender && (this._time = -m, this.render(math.min(0, -this._delay))),
this
},
h._enabled = function(a, b) {
if (j || i.wake(), a && this._gc) {
var c, d = this._targets;
if (d) for (c = d.length; --c > -1;) this._siblings[c] = $(d[c], this, !0);
else this._siblings = $(this.target, this, !0)
}
return d.prototype._enabled.call(this, a, b),
this._notifypluginsofenabled && this._firstpt ? g._onpluginevent(a ? "_onenable": "_ondisable", this) : !1
},
g.to = function(a, b, c) {
return new g(a, b, c)
},
g.from = function(a, b, c) {
return c.runbackwards = !0,
c.immediaterender = 0 != c.immediaterender,
new g(a, b, c)
},
g.fromto = function(a, b, c, d) {
return d.startat = c,
d.immediaterender = 0 != d.immediaterender && 0 != c.immediaterender,
new g(a, b, d)
},
g.delayedcall = function(a, b, c, d, e) {
return new g(b, 0, {
delay: a,
oncomplete: b,
oncompleteparams: c,
callbackscope: d,
onreversecomplete: b,
onreversecompleteparams: c,
immediaterender: !1,
lazy: !1,
useframes: e,
overwrite: 0
})
},
g.set = function(a, b) {
return new g(a, 0, b)
},
g.gettweensof = function(a, b) {
if (null == a) return [];
a = "string" != typeof a ? a: g.selector(a) || a;
var c, d, e, f;
if ((p(a) || h(a)) && "number" != typeof a[0]) {
for (c = a.length, d = []; --c > -1;) d = d.concat(g.gettweensof(a[c], b));
for (c = d.length; --c > -1;) for (f = d[c], e = c; --e > -1;) f === d[e] && d.splice(c, 1)
} else if (a._gstweenid) for (d = $(a).concat(), c = d.length; --c > -1;)(d[c]._gc || b && !d[c].isactive()) && d.splice(c, 1);
return d || []
},
g.killtweensof = g.killdelayedcallsto = function(a, b, c) {
"object" == typeof b && (c = b, b = !1);
for (var d = g.gettweensof(a, b), e = d.length; --e > -1;) d[e]._kill(c, a)
};
var ca = t("plugins.tweenplugin",
function(a, b) {
this._overwriteprops = (a || "").split(","),
this._propname = this._overwriteprops[0],
this._priority = b || 0,
this._super = ca.prototype
},
!0);
if (h = ca.prototype, ca.version = "1.19.0", ca.api = 2, h._firstpt = null, h._addtween = p, h.setratio = n, h._kill = function(a) {
var b, c = this._overwriteprops,
d = this._firstpt;
if (null != a[this._propname]) this._overwriteprops = [];
else for (b = c.length; --b > -1;) null != a[c[b]] && c.splice(b, 1);
for (; d;) null != a[d.n] && (d._next && (d._next._prev = d._prev), d._prev ? (d._prev._next = d._next, d._prev = null) : this._firstpt === d && (this._firstpt = d._next)),
d = d._next;
return ! 1
},
h._mod = h._roundprops = function(a) {
for (var b, c = this._firstpt; c;) b = a[this._propname] || null != c.n && a[c.n.split(this._propname + "_").join("")],
b && "function" == typeof b && (2 === c.f ? c.t._applypt.m = b: c.m = b),
c = c._next
},
g._onpluginevent = function(a, b) {
var c, d, e, f, g, h = b._firstpt;
if ("_oninitallprops" === a) {
for (; h;) {
for (g = h._next, d = e; d && d.pr > h.pr;) d = d._next; (h._prev = d ? d._prev: f) ? h._prev._next = h: e = h,
(h._next = d) ? d._prev = h: f = h,
h = g
}
h = b._firstpt = e
}
for (; h;) h.pg && "function" == typeof h.t[a] && h.t[a]() && (c = !0),
h = h._next;
return c
},
ca.activate = function(a) {
for (var b = a.length; --b > -1;) a[b].api === ca.api && (r[(new a[b])._propname] = a[b]);
return ! 0
},
s.plugin = function(a) {
if (! (a && a.propname && a.init && a.api)) throw "illegal plugin definition.";
var b, c = a.propname,
d = a.priority || 0,
e = a.overwriteprops,
f = {
init: "_oninittween",
set: "setratio",
kill: "_kill",
round: "_mod",
mod: "_mod",
initall: "_oninitallprops"
},
g = t("plugins." + c.charat(0).touppercase() + c.substr(1) + "plugin",
function() {
ca.call(this, c, d),
this._overwriteprops = e || []
},
a.global === !0),
h = g.prototype = new ca(c);
h.constructor = g,
g.api = a.api;
for (b in f)"function" == typeof a[b] && (h[f[b]] = a[b]);
return g.version = a.version,
ca.activate([g]),
g
},
f = a._gsqueue) {
for (g = 0; g < f.length; g++) f[g]();
for (h in q) q[h].func || a.console.log("gsap encountered missing dependency: " + h)
}
j = !1
}
} ("undefined" != typeof module && module.exports && "undefined" != typeof global ? global: this || window, "tweenmax");
/*! scrollmagic v2.0.5 | (c) 2015 jan paepke (@janpaepke) | license & info: http://scrollmagic.io */
!
function(e, t) {
"function" == typeof define && define.amd ? define(t) : "object" == typeof exports ? module.exports = t() : e.scrollmagic = t()
} (this,
function() {
"use strict";
var e = function() {};
e.version = "2.0.5",
window.addeventlistener("mousewheel",
function() {});
var t = "data-scrollmagic-pin-spacer";
e.controller = function(r) {
var o, s, a = "scrollmagic.controller",
l = "forward",
c = "reverse",
u = "paused",
f = n.defaults,
d = this,
h = i.extend({},
f, r),
g = [],
p = !1,
v = 0,
m = u,
w = !0,
y = 0,
s = !0,
b = function() {
for (var e in h) f.hasownproperty(e) || delete h[e];
if (h.container = i.get.elements(h.container)[0], !h.container) throw a + " init failed.";
w = h.container === window || h.container === document.body || !document.body.contains(h.container),
w && (h.container = window),
y = z(),
h.container.addeventlistener("resize", t),
h.container.addeventlistener("scroll", t),
h.refreshinterval = parseint(h.refreshinterval) || f.refreshinterval,
e()
},
e = function() {
h.refreshinterval > 0 && (s = window.settimeout(a, h.refreshinterval))
},
x = function() {
return h.vertical ? i.get.scrolltop(h.container) : i.get.scrollleft(h.container)
},
z = function() {
return h.vertical ? i.get.height(h.container) : i.get.width(h.container)
},
c = this._setscrollpos = function(e) {
h.vertical ? w ? window.scrollto(i.get.scrollleft(), e) : h.container.scrolltop = e: w ? window.scrollto(e, i.get.scrolltop()) : h.container.scrollleft = e
},
f = function() {
if (s && p) {
var e = i.type.array(p) ? p: g.slice(0);
p = !1;
var t = v;
v = d.scrollpos();
var n = v - t;
0 !== n && (m = n > 0 ? l: c),
m === c && e.reverse(),
e.foreach(function(e) {
e.update(!0)
})
}
},
l = function() {
o = i.raf(f)
},
t = function(e) {
"resize" == e.type && (y = z(), m = u),
p !== !0 && (p = !0, l())
},
a = function() {
if (!w && y != z()) {
var e;
try {
e = new event("resize", {
bubbles: !1,
cancelable: !1
})
} catch(t) {
e = document.createevent("event"),
e.initevent("resize", !1, !1)
}
h.container.dispatchevent(e)
}
g.foreach(function(e) {
e.refresh()
}),
e()
};
this._options = h;
var o = function(e) {
if (e.length <= 1) return e;
var t = e.slice(0);
return t.sort(function(e, t) {
return e.scrolloffset() > t.scrolloffset() ? 1 : -1
}),
t
};
return this.addscene = function(t) {
if (i.type.array(t)) t.foreach(function(e) {
d.addscene(e)
});
else if (t instanceof e.scene) if (t.controller() !== d) t.addto(d);
else if (g.indexof(t) < 0) {
g.push(t),
g = o(g),
t.on("shift.controller_sort",
function() {
g = o(g)
});
for (var n in h.globalsceneoptions) t[n] && t[n].call(t, h.globalsceneoptions[n])
}
return d
},
this.removescene = function(e) {
if (i.type.array(e)) e.foreach(function(e) {
d.removescene(e)
});
else {
var t = g.indexof(e);
t > -1 && (e.off("shift.controller_sort"), g.splice(t, 1), e.remove())
}
return d
},
this.updatescene = function(t, n) {
return i.type.array(t) ? t.foreach(function(e) {
d.updatescene(e, n)
}) : n ? t.update(!0) : p !== !0 && t instanceof e.scene && (p = p || [], -1 == p.indexof(t) && p.push(t), p = o(p), l()),
d
},
this.update = function(e) {
return t({
type: "resize"
}),
e && f(),
d
},
this.scrollto = function(n, r) {
if (i.type.number(n)) c.call(h.container, n, r);
else if (n instanceof e.scene) n.controller() === d && d.scrollto(n.scrolloffset(), r);
else if (i.type.function(n)) c = n;
else {
var o = i.get.elements(n)[0];
if (o) {
for (; o.parentnode.hasattribute(t);) o = o.parentnode;
var s = h.vertical ? "top": "left",
a = i.get.offset(h.container),
l = i.get.offset(o);
w || (a[s] -= d.scrollpos()),
d.scrollto(l[s] - a[s], r)
}
}
return d
},
this.scrollpos = function(e) {
return arguments.length ? (i.type.function(e) && (x = e), d) : x.call(d)
},
this.info = function(e) {
var t = {
size: y,
vertical: h.vertical,
scrollpos: v,
scrolldirection: m,
container: h.container,
isdocument: w
};
return arguments.length ? void 0 !== t[e] ? t[e] : void 0 : t
},
this.loglevel = function() {
return d
},
this.enabled = function(e) {
return arguments.length ? (s != e && (s = !!e, d.updatescene(g, !0)), d) : s
},
this.destroy = function(e) {
window.cleartimeout(s);
for (var t = g.length; t--;) g[t].destroy(e);
return h.container.removeeventlistener("resize", t),
h.container.removeeventlistener("scroll", t),
i.caf(o),
null
},
b(),
d
};
var n = {
defaults: {
container: window,
vertical: !0,
globalsceneoptions: {},
loglevel: 2,
refreshinterval: 100
}
};
e.controller.addoption = function(e, t) {
n.defaults[e] = t
},
e.controller.extend = function(t) {
var n = this;
e.controller = function() {
return n.apply(this, arguments),
this.$super = i.extend({},
this),
t.apply(this, arguments) || this
},
i.extend(e.controller, n),
e.controller.prototype = n.prototype,
e.controller.prototype.constructor = e.controller
},
e.scene = function(n) {
var o, s, a = "before",
l = "during",
c = "after",
u = r.defaults,
f = this,
d = i.extend({},
u, n),
h = a,
g = 0,
p = {
start: 0,
end: 0
},
v = 0,
m = !0,
w = function() {
for (var e in d) u.hasownproperty(e) || delete d[e];
for (var t in u) l(t);
c()
},
y = {};
this.on = function(e, t) {
return i.type.function(t) && (e = e.trim().split(" "), e.foreach(function(e) {
var n = e.split("."),
r = n[0],
i = n[1];
"*" != r && (y[r] || (y[r] = []), y[r].push({
namespace: i || "",
callback: t
}))
})),
f
},
this.off = function(e, t) {
return e ? (e = e.trim().split(" "), e.foreach(function(e) {
var n = e.split("."),
r = n[0],
i = n[1] || "",
o = "*" === r ? object.keys(y) : [r];
o.foreach(function(e) {
for (var n = y[e] || [], r = n.length; r--;) {
var o = n[r]; ! o || i !== o.namespace && "*" !== i || t && t != o.callback || n.splice(r, 1)
}
n.length || delete y[e]
})
}), f) : f
},
this.trigger = function(t, n) {
if (t) {
var r = t.trim().split("."),
i = r[0],
o = r[1],
s = y[i];
s && s.foreach(function(t) {
o && o !== t.namespace || t.callback.call(f, new e.event(i, t.namespace, f, n))
})
}
return f
},
f.on("change.internal",
function(e) {
"loglevel" !== e.what && "tweenchanges" !== e.what && ("triggerelement" === e.what ? e() : "reverse" === e.what && f.update())
}).on("shift.internal",
function() {
s(),
f.update()
}),
this.addto = function(t) {
return t instanceof e.controller && s != t && (s && s.removescene(f), s = t, c(), b(!0), e(!0), s(), s.info("container").addeventlistener("resize", x), t.addscene(f), f.trigger("add", {
controller: s
}), f.update()),
f
},
this.enabled = function(e) {
return arguments.length ? (m != e && (m = !!e, f.update(!0)), f) : m
},
this.remove = function() {
if (s) {
s.info("container").removeeventlistener("resize", x);
var e = s;
s = void 0,
e.removescene(f),
f.trigger("remove")
}
return f
},
this.destroy = function(e) {
return f.trigger("destroy", {
reset: e
}),
f.remove(),
f.off("*.*"),
null
},
this.update = function(e) {
if (s) if (e) if (s.enabled() && m) {
var t, n = s.info("scrollpos");
t = d.duration > 0 ? (n - p.start) / (p.end - p.start) : n >= p.start ? 1 : 0,
f.trigger("update", {
startpos: p.start,
endpos: p.end,
scrollpos: n
}),
f.progress(t)
} else t && h === l && o(!0);
else s.updatescene(f, !1);
return f
},
this.refresh = function() {
return b(),
e(),
f
},
this.progress = function(e) {
if (arguments.length) {
var t = !1,
n = h,
r = s ? s.info("scrolldirection") : "paused",
i = d.reverse || e >= g;
if (0 === d.duration ? (t = g != e, g = 1 > e && i ? 0 : 1, h = 0 === g ? a: l) : 0 > e && h !== a && i ? (g = 0, h = a, t = !0) : e >= 0 && 1 > e && i ? (g = e, h = l, t = !0) : e >= 1 && h !== c ? (g = 1, h = c, t = !0) : h !== l || i || o(), t) {
var o = {
progress: g,
state: h,
scrolldirection: r
},
u = h != n,
p = function(e) {
f.trigger(e, o)
};
u && n !== l && (p("enter"), p(n === a ? "start": "end")),
p("progress"),
u && h !== l && (p(h === a ? "start": "end"), p("leave"))
}
return f
}
return g
};
var s = function() {
p = {
start: v + d.offset
},
s && d.triggerelement && (p.start -= s.info("size") * d.triggerhook),
p.end = p.start + d.duration
},
b = function(e) {
if (o) {
var t = "duration";
f(t, o.call(f)) && !e && (f.trigger("change", {
what: t,
newval: d[t]
}), f.trigger("shift", {
reason: t
}))
}
},
e = function(e) {
var n = 0,
r = d.triggerelement;
if (s && r) {
for (var o = s.info(), a = i.get.offset(o.container), l = o.vertical ? "top": "left"; r.parentnode.hasattribute(t);) r = r.parentnode;
var c = i.get.offset(r);
o.isdocument || (a[l] -= s.scrollpos()),
n = c[l] - a[l]
}
var u = n != v;
v = n,
u && !e && f.trigger("shift", {
reason: "triggerelementposition"
})
},
x = function() {
d.triggerhook > 0 && f.trigger("shift", {
reason: "containerresize"
})
},
z = i.extend(r.validate, {
duration: function(e) {
if (i.type.string(e) && e.match(/^(\.|\d)*\d+%$/)) {
var t = parsefloat(e) / 100;
e = function() {
return s ? s.info("size") * t: 0
}
}
if (i.type.function(e)) {
o = e;
try {
e = parsefloat(o())
} catch(n) {
e = -1
}
}
if (e = parsefloat(e), !i.type.number(e) || 0 > e) throw o ? (o = void 0, 0) : 0;
return e
}
}),
c = function(e) {
e = arguments.length ? [e] : object.keys(z),
e.foreach(function(e) {
var t;
if (z[e]) try {
t = z[e](d[e])
} catch(n) {
t = u[e]
} finally {
d[e] = t
}
})
},
f = function(e, t) {
var n = !1,
r = d[e];
return d[e] != t && (d[e] = t, c(e), n = r != d[e]),
n
},
l = function(e) {
f[e] || (f[e] = function(t) {
return arguments.length ? ("duration" === e && (o = void 0), f(e, t) && (f.trigger("change", {
what: e,
newval: d[e]
}), r.shifts.indexof(e) > -1 && f.trigger("shift", {
reason: e
})), f) : d[e]
})
};
this.controller = function() {
return s
},
this.state = function() {
return h
},
this.scrolloffset = function() {
return p.start
},
this.triggerposition = function() {
var e = d.offset;
return s && (e += d.triggerelement ? v: s.info("size") * f.triggerhook()),
e
};
var t, a;
f.on("shift.internal",
function(e) {
var t = "duration" === e.reason; (h === c && t || h === l && 0 === d.duration) && o(),
t && _()
}).on("progress.internal",
function() {
o()
}).on("add.internal",
function() {
_()
}).on("destroy.internal",
function(e) {
f.removepin(e.reset)
});
var o = function(e) {
if (t && s) {
var t = s.info(),
n = a.spacer.firstchild;
if (e || h !== l) {
var r = {
position: a.inflow ? "relative": "absolute",
top: 0,
left: 0
},
o = i.css(n, "position") != r.position;
a.pushfollowers ? d.duration > 0 && (h === c && 0 === parsefloat(i.css(a.spacer, "padding-top")) ? o = !0 : h === a && 0 === parsefloat(i.css(a.spacer, "padding-bottom")) && (o = !0)) : r[t.vertical ? "top": "left"] = d.duration * g,
i.css(n, r),
o && _()
} else {
"fixed" != i.css(n, "position") && (i.css(n, {
position: "fixed"
}), _());
var u = i.get.offset(a.spacer, !0),
f = d.reverse || 0 === d.duration ? t.scrollpos - p.start: math.round(g * d.duration * 10) / 10;
u[t.vertical ? "top": "left"] += f,
i.css(a.spacer.firstchild, {
top: u.top,
left: u.left
})
}
}
},
_ = function() {
if (t && s && a.inflow) {
var e = h === l,
t = s.info("vertical"),
n = a.spacer.firstchild,
r = i.ismargincollapsetype(i.css(a.spacer, "display")),
o = {};
a.relsize.width || a.relsize.autofullwidth ? e ? i.css(t, {
width: i.get.width(a.spacer)
}) : i.css(t, {
width: "100%"
}) : (o["min-width"] = i.get.width(t ? t: n, !0, !0), o.width = e ? o["min-width"] : "auto"),
a.relsize.height ? e ? i.css(t, {
height: i.get.height(a.spacer) - (a.pushfollowers ? d.duration: 0)
}) : i.css(t, {
height: "100%"
}) : (o["min-height"] = i.get.height(t ? n: t, !0, !r), o.height = e ? o["min-height"] : "auto"),
a.pushfollowers && (o["padding" + (t ? "top": "left")] = d.duration * g, o["padding" + (t ? "bottom": "right")] = d.duration * (1 - g)),
i.css(a.spacer, o)
}
},
n = function() {
s && t && h === l && !s.info("isdocument") && o()
},
p = function() {
s && t && h === l && ((a.relsize.width || a.relsize.autofullwidth) && i.get.width(window) != i.get.width(a.spacer.parentnode) || a.relsize.height && i.get.height(window) != i.get.height(a.spacer.parentnode)) && _()
},
d = function(e) {
s && t && h === l && !s.info("isdocument") && (e.preventdefault(), s._setscrollpos(s.info("scrollpos") - ((e.wheeldelta || e[s.info("vertical") ? "wheeldeltay": "wheeldeltax"]) / 3 || 30 * -e.detail)))
};
this.setpin = function(e, n) {
var r = {
pushfollowers: !0,
spacerclass: "scrollmagic-pin-spacer"
};
if (n = i.extend({},
r, n), e = i.get.elements(e)[0], !e) return f;
if ("fixed" === i.css(e, "position")) return f;
if (t) {
if (t === e) return f;
f.removepin()
}
t = e;
var o = t.parentnode.style.display,
s = ["top", "left", "bottom", "right", "margin", "marginleft", "marginright", "margintop", "marginbottom"];
t.parentnode.style.display = "none";
var a = "absolute" != i.css(t, "position"),
l = i.css(t, s.concat(["display"])),
c = i.css(t, ["width", "height"]);
t.parentnode.style.display = o,
!a && n.pushfollowers && (n.pushfollowers = !1);
var u = t.parentnode.insertbefore(document.createelement("div"), t),
d = i.extend(l, {
position: a ? "relative": "absolute",
boxsizing: "content-box",
mozboxsizing: "content-box",
webkitboxsizing: "content-box"
});
if (a || i.extend(d, i.css(t, ["width", "height"])), i.css(u, d), u.setattribute(t, ""), i.addclass(u, n.spacerclass), a = {
spacer: u,
relsize: {
width: "%" === c.width.slice( - 1),
height: "%" === c.height.slice( - 1),
autofullwidth: "auto" === c.width && a && i.ismargincollapsetype(l.display)
},
pushfollowers: n.pushfollowers,
inflow: a
},
!t.___origstyle) {
t.___origstyle = {};
var h = t.style,
g = s.concat(["width", "height", "position", "boxsizing", "mozboxsizing", "webkitboxsizing"]);
g.foreach(function(e) {
t.___origstyle[e] = h[e] || ""
})
}
return a.relsize.width && i.css(u, {
width: c.width
}),
a.relsize.height && i.css(u, {
height: c.height
}),
u.appendchild(t),
i.css(t, {
position: a ? "relative": "absolute",
margin: "auto",
top: "auto",
left: "auto",
bottom: "auto",
right: "auto"
}),
(a.relsize.width || a.relsize.autofullwidth) && i.css(t, {
boxsizing: "border-box",
mozboxsizing: "border-box",
webkitboxsizing: "border-box"
}),
window.addeventlistener("scroll", n),
window.addeventlistener("resize", n),
window.addeventlistener("resize", p),
t.addeventlistener("mousewheel", d),
t.addeventlistener("dommousescroll", d),
o(),
f
},
this.removepin = function(e) {
if (t) {
if (h === l && o(!0), e || !s) {
var n = a.spacer.firstchild;
if (n.hasattribute(t)) {
var r = a.spacer.style,
o = ["margin", "marginleft", "marginright", "margintop", "marginbottom"];
margins = {},
o.foreach(function(e) {
margins[e] = r[e] || ""
}),
i.css(n, margins)
}
a.spacer.parentnode.insertbefore(n, a.spacer),
a.spacer.parentnode.removechild(a.spacer),
t.parentnode.hasattribute(t) || (i.css(t, t.___origstyle), delete t.___origstyle)
}
window.removeeventlistener("scroll", n),
window.removeeventlistener("resize", n),
window.removeeventlistener("resize", p),
t.removeeventlistener("mousewheel", d),
t.removeeventlistener("dommousescroll", d),
t = void 0
}
return f
};
var r, k = [];
return f.on("destroy.internal",
function(e) {
f.removeclasstoggle(e.reset)
}),
this.setclasstoggle = function(e, t) {
var n = i.get.elements(e);
return 0 !== n.length && i.type.string(t) ? (k.length > 0 && f.removeclasstoggle(), r = t, k = n, f.on("enter.internal_class leave.internal_class",
function(e) {
var t = "enter" === e.type ? i.addclass: i.removeclass;
k.foreach(function(e) {
t(e, r)
})
}), f) : f
},
this.removeclasstoggle = function(e) {
return e && k.foreach(function(e) {
i.removeclass(e, r)
}),
f.off("start.internal_class end.internal_class"),
r = void 0,
k = [],
f
},
w(),
f
};
var r = {
defaults: {
duration: 0,
offset: 0,
triggerelement: void 0,
triggerhook: .5,
reverse: !0,
loglevel: 2
},
validate: {
offset: function(e) {
if (e = parsefloat(e), !i.type.number(e)) throw 0;
return e
},
triggerelement: function(e) {
if (e = e || void 0) {
var t = i.get.elements(e)[0];
if (!t) throw 0;
e = t
}
return e
},
triggerhook: function(e) {
var t = {
oncenter: .5,
onenter: 1,
onleave: 0
};
if (i.type.number(e)) e = math.max(0, math.min(parsefloat(e), 1));
else {
if (! (e in t)) throw 0;
e = t[e]
}
return e
},
reverse: function(e) {
return !! e
}
},
shifts: ["duration", "offset", "triggerhook"]
};
e.scene.addoption = function(e, t, n, i) {
e in r.defaults || (r.defaults[e] = t, r.validate[e] = n, i && r.shifts.push(e))
},
e.scene.extend = function(t) {
var n = this;
e.scene = function() {
return n.apply(this, arguments),
this.$super = i.extend({},
this),
t.apply(this, arguments) || this
},
i.extend(e.scene, n),
e.scene.prototype = n.prototype,
e.scene.prototype.constructor = e.scene
},
e.event = function(e, t, n, r) {
r = r || {};
for (var i in r) this[i] = r[i];
return this.type = e,
this.target = this.currenttarget = n,
this.namespace = t || "",
this.timestamp = this.timestamp = date.now(),
this
};
var i = e._util = function(e) {
var t, n = {},
r = function(e) {
return parsefloat(e) || 0
},
i = function(t) {
return t.currentstyle ? t.currentstyle: e.getcomputedstyle(t)
},
o = function(t, n, o, s) {
if (n = n === document ? e: n, n === e) s = !1;
else if (!f.domelement(n)) return 0;
t = t.charat(0).touppercase() + t.substr(1).tolowercase();
var a = (o ? n["offset" + t] || n["outer" + t] : n["client" + t] || n["inner" + t]) || 0;
if (o && s) {
var l = i(n);
a += "height" === t ? r(l.margintop) + r(l.marginbottom) : r(l.marginleft) + r(l.marginright)
}
return a
},
s = function(e) {
return e.replace(/^[^a-z]+([a-z])/g, "$1").replace(/-([a-z])/g,
function(e) {
return e[1].touppercase()
})
};
n.extend = function(e) {
for (e = e || {},
t = 1; t < arguments.length; t++) if (arguments[t]) for (var n in arguments[t]) arguments[t].hasownproperty(n) && (e[n] = arguments[t][n]);
return e
},
n.ismargincollapsetype = function(e) {
return ["block", "flex", "list-item", "table", "-webkit-box"].indexof(e) > -1
};
var a = 0,
l = ["ms", "moz", "webkit", "o"],
c = e.requestanimationframe,
u = e.cancelanimationframe;
for (t = 0; ! c && t < l.length; ++t) c = e[l[t] + "requestanimationframe"],
u = e[l[t] + "cancelanimationframe"] || e[l[t] + "cancelrequestanimationframe"];
c || (c = function(t) {
var n = (new date).gettime(),
r = math.max(0, 16 - (n - a)),
i = e.settimeout(function() {
t(n + r)
},
r);
return a = n + r,
i
}),
u || (u = function(t) {
e.cleartimeout(t)
}),
n.raf = c.bind(e),
n.caf = u.bind(e);
var f = n.type = function(e) {
return object.prototype.tostring.call(e).replace(/^\[object (.+)\]$/, "$1").tolowercase()
};
f.string = function(e) {
return "string" === f(e)
},
f.function = function(e) {
return "function" === f(e)
},
f.array = function(e) {
return array.isarray(e)
},
f.number = function(e) {
return ! f.array(e) && e - parsefloat(e) + 1 >= 0
},
f.domelement = function(e) {
return "object" == typeof htmlelement ? e instanceof htmlelement: e && "object" == typeof e && null !== e && 1 === e.nodetype && "string" == typeof e.nodename
};
var d = n.get = {};
return d.elements = function(t) {
var n = [];
if (f.string(t)) try {
t = document.queryselectorall(t)
} catch(r) {
return n
}
if ("nodelist" === f(t) || f.array(t)) for (var i = 0,
o = n.length = t.length; o > i; i++) {
var s = t[i];
n[i] = f.domelement(s) ? s: d.elements(s)
} else(f.domelement(t) || t === document || t === e) && (n = [t]);
return n
},
d.scrolltop = function(t) {
return t && "number" == typeof t.scrolltop ? t.scrolltop: e.pageyoffset || 0
},
d.scrollleft = function(t) {
return t && "number" == typeof t.scrollleft ? t.scrollleft: e.pagexoffset || 0
},
d.width = function(e, t, n) {
return o("width", e, t, n)
},
d.height = function(e, t, n) {
return o("height", e, t, n)
},
d.offset = function(e, t) {
var n = {
top: 0,
left: 0
};
if (e && e.getboundingclientrect) {
var r = e.getboundingclientrect();
n.top = r.top,
n.left = r.left,
t || (n.top += d.scrolltop(), n.left += d.scrollleft())
}
return n
},
n.addclass = function(e, t) {
t && (e.classlist ? e.classlist.add(t) : e.classname += " " + t)
},
n.removeclass = function(e, t) {
t && (e.classlist ? e.classlist.remove(t) : e.classname = e.classname.replace(regexp("(^|\\b)" + t.split(" ").join("|") + "(\\b|$)", "gi"), " "))
},
n.css = function(e, t) {
if (f.string(t)) return i(e)[s(t)];
if (f.array(t)) {
var n = {},
r = i(e);
return t.foreach(function(e) {
n[e] = r[s(e)]
}),
n
}
for (var o in t) {
var a = t[o];
a == parsefloat(a) && (a += "px"),
e.style[s(o)] = a
}
},
n
} (window || {});
return e
});
/*! scrollmagic v2.0.5 | (c) 2015 jan paepke (@janpaepke) | license & info: http://scrollmagic.io */
!
function(e, n) {
"function" == typeof define && define.amd ? define(["scrollmagic", "tweenmax", "timelinemax"], n) : "object" == typeof exports ? (require("gsap"), n(require("scrollmagic"), tweenmax, timelinemax)) : n(e.scrollmagic || e.jquery && e.jquery.scrollmagic, e.tweenmax || e.tweenlite, e.timelinemax || e.timelinelite)
} (this,
function(e, n, r) {
"use strict";
e.scene.addoption("tweenchanges", !1,
function(e) {
return !! e
}),
e.scene.extend(function() {
var e, t = this;
t.on("progress.plugin_gsap",
function() {
i()
}),
t.on("destroy.plugin_gsap",
function(e) {
t.removetween(e.reset)
});
var i = function() {
if (e) {
var n = t.progress(),
r = t.state();
e.repeat && -1 === e.repeat() ? "during" === r && e.paused() ? e.play() : "during" === r || e.paused() || e.pause() : n != e.progress() && (0 === t.duration() ? n > 0 ? e.play() : e.reverse() : t.tweenchanges() && e.tweento ? e.tweento(n * e.duration()) : e.progress(n).pause())
}
};
t.settween = function(o, a, s) {
var u;
arguments.length > 1 && (arguments.length < 3 && (s = a, a = 1), o = n.to(o, a, s));
try {
u = r ? new r({
smoothchildtiming: !0
}).add(o) : o,
u.pause()
} catch(p) {
return t
}
return e && t.removetween(),
e = u,
o.repeat && -1 === o.repeat() && (e.repeat( - 1), e.yoyo(o.yoyo())),
i(),
t
},
t.removetween = function(n) {
return e && (n && e.progress(0).pause(), e.kill(), e = void 0),
t
}
})
});
/*! scrollmagic v2.0.5 | (c) 2015 jan paepke (@janpaepke) | license & info: http://scrollmagic.io */
!
function(e, r) {
"function" == typeof define && define.amd ? define(["scrollmagic"], r) : r("object" == typeof exports ? require("scrollmagic") : e.scrollmagic || e.jquery && e.jquery.scrollmagic)
} (this,
function(e) {
"use strict";
var r = "0.85em",
t = "9999",
i = 15,
o = e._util,
n = 0;
e.scene.extend(function() {
var e, r = this;
r.addindicators = function(t) {
if (!e) {
var i = {
name: "",
indent: 0,
parent: void 0,
colorstart: "green",
colorend: "red",
colortrigger: "blue"
};
t = o.extend({},
i, t),
n++,
e = new s(r, t),
r.on("add.plugin_addindicators", e.add),
r.on("remove.plugin_addindicators", e.remove),
r.on("destroy.plugin_addindicators", r.removeindicators),
r.controller() && e.add()
}
return r
},
r.removeindicators = function() {
return e && (e.remove(), this.off("*.plugin_addindicators"), e = void 0),
r
}
}),
e.controller.addoption("addindicators", !1),
e.controller.extend(function() {
var r = this,
t = r.info(),
n = t.container,
s = t.isdocument,
d = t.vertical,
a = {
groups: []
};
this._indicators = a;
var g = function() {
a.updateboundspositions()
},
p = function() {
a.updatetriggergrouppositions()
};
return n.addeventlistener("resize", p),
s || (window.addeventlistener("resize", p), window.addeventlistener("scroll", p)),
n.addeventlistener("resize", g),
n.addeventlistener("scroll", g),
this._indicators.updateboundspositions = function(e) {
for (var r, t, s, g = e ? [o.extend({},
e.triggergroup, {
members: [e]
})] : a.groups, p = g.length, u = {},
c = d ? "left": "top", l = d ? "width": "height", f = d ? o.get.scrollleft(n) + o.get.width(n) - i: o.get.scrolltop(n) + o.get.height(n) - i; p--;) for (s = g[p], r = s.members.length, t = o.get[l](s.element.firstchild); r--;) u[c] = f - t,
o.css(s.members[r].bounds, u)
},
this._indicators.updatetriggergrouppositions = function(e) {
for (var t, g, p, u, c, l = e ? [e] : a.groups, f = l.length, m = s ? document.body: n, h = s ? {
top: 0,
left: 0
}: o.get.offset(m, !0), v = d ? o.get.width(n) - i: o.get.height(n) - i, b = d ? "width": "height", g = d ? "y": "x"; f--;) t = l[f],
g = t.element,
p = t.triggerhook * r.info("size"),
u = o.get[b](g.firstchild.firstchild),
c = p > u ? "translate" + g + "(-100%)": "",
o.css(g, {
top: h.top + (d ? p: v - t.members[0].options.indent),
left: h.left + (d ? v - t.members[0].options.indent: p)
}),
o.css(g.firstchild.firstchild, {
"-ms-transform": c,
"-webkit-transform": c,
transform: c
})
},
this._indicators.updatetriggergrouplabel = function(e) {
var r = "trigger" + (e.members.length > 1 ? "": " " + e.members[0].options.name),
t = e.element.firstchild.firstchild,
i = t.textcontent !== r;
i && (t.textcontent = r, d && a.updateboundspositions())
},
this.addscene = function(t) {
this._options.addindicators && t instanceof e.scene && t.controller() === r && t.addindicators(),
this.$super.addscene.apply(this, arguments)
},
this.destroy = function() {
n.removeeventlistener("resize", p),
s || (window.removeeventlistener("resize", p), window.removeeventlistener("scroll", p)),
n.removeeventlistener("resize", g),
n.removeeventlistener("scroll", g),
this.$super.destroy.apply(this, arguments)
},
r
});
var s = function(e, r) {
var t, i, s = this,
a = d.bounds(),
g = d.start(r.colorstart),
p = d.end(r.colorend),
u = r.parent && o.get.elements(r.parent)[0];
r.name = r.name || n,
g.firstchild.textcontent += " " + r.name,
p.textcontent += " " + r.name,
a.appendchild(g),
a.appendchild(p),
s.options = r,
s.bounds = a,
s.triggergroup = void 0,
this.add = function() {
i = e.controller(),
t = i.info("vertical");
var r = i.info("isdocument");
u || (u = r ? document.body: i.info("container")),
r || "static" !== o.css(u, "position") || o.css(u, {
position: "relative"
}),
e.on("change.plugin_addindicators", l),
e.on("shift.plugin_addindicators", c),
g(),
h(),
settimeout(function() {
i._indicators.updateboundspositions(s)
},
0)
},
this.remove = function() {
if (s.triggergroup) {
if (e.off("change.plugin_addindicators", l), e.off("shift.plugin_addindicators", c), s.triggergroup.members.length > 1) {
var r = s.triggergroup;
r.members.splice(r.members.indexof(s), 1),
i._indicators.updatetriggergrouplabel(r),
i._indicators.updatetriggergrouppositions(r),
s.triggergroup = void 0
} else b();
m()
}
};
var c = function() {
h()
},
l = function(e) {
"triggerhook" === e.what && g()
},
f = function() {
var e = i.info("vertical");
o.css(g.firstchild, {
"border-bottom-width": e ? 1 : 0,
"border-right-width": e ? 0 : 1,
bottom: e ? -1 : r.indent,
right: e ? r.indent: -1,
padding: e ? "0 8px": "2px 4px"
}),
o.css(p, {
"border-top-width": e ? 1 : 0,
"border-left-width": e ? 0 : 1,
top: e ? "100%": "",
right: e ? r.indent: "",
bottom: e ? "": r.indent,
left: e ? "": "100%",
padding: e ? "0 8px": "2px 4px"
}),
u.appendchild(a)
},
m = function() {
a.parentnode.removechild(a)
},
h = function() {
a.parentnode !== u && f();
var r = {};
r[t ? "top": "left"] = e.triggerposition(),
r[t ? "height": "width"] = e.duration(),
o.css(a, r),
o.css(p, {
display: e.duration() > 0 ? "": "none"
})
},
v = function() {
var n = d.trigger(r.colortrigger),
a = {};
a[t ? "right": "bottom"] = 0,
a[t ? "border-top-width": "border-left-width"] = 1,
o.css(n.firstchild, a),
o.css(n.firstchild.firstchild, {
padding: t ? "0 8px 3px 8px": "3px 4px"
}),
document.body.appendchild(n);
var g = {
triggerhook: e.triggerhook(),
element: n,
members: [s]
};
i._indicators.groups.push(g),
s.triggergroup = g,
i._indicators.updatetriggergrouplabel(g),
i._indicators.updatetriggergrouppositions(g)
},
b = function() {
i._indicators.groups.splice(i._indicators.groups.indexof(s.triggergroup), 1),
s.triggergroup.element.parentnode.removechild(s.triggergroup.element),
s.triggergroup = void 0
},
g = function() {
var r = e.triggerhook(),
t = 1e-4;
if (! (s.triggergroup && math.abs(s.triggergroup.triggerhook - r) < t)) {
for (var o, n = i._indicators.groups,
d = n.length; d--;) if (o = n[d], math.abs(o.triggerhook - r) < t) return s.triggergroup && (1 === s.triggergroup.members.length ? b() : (s.triggergroup.members.splice(s.triggergroup.members.indexof(s), 1), i._indicators.updatetriggergrouplabel(s.triggergroup), i._indicators.updatetriggergrouppositions(s.triggergroup))),
o.members.push(s),
s.triggergroup = o,
void i._indicators.updatetriggergrouplabel(o);
if (s.triggergroup) {
if (1 === s.triggergroup.members.length) return s.triggergroup.triggerhook = r,
void i._indicators.updatetriggergrouppositions(s.triggergroup);
s.triggergroup.members.splice(s.triggergroup.members.indexof(s), 1),
i._indicators.updatetriggergrouplabel(s.triggergroup),
i._indicators.updatetriggergrouppositions(s.triggergroup),
s.triggergroup = void 0
}
v()
}
}
},
d = {
start: function(e) {
var r = document.createelement("div");
r.textcontent = "start",
o.css(r, {
position: "absolute",
overflow: "visible",
"border-width": 0,
"border-style": "solid",
color: e,
"border-color": e
});
var t = document.createelement("div");
return o.css(t, {
position: "absolute",
overflow: "visible",
width: 0,
height: 0
}),
t.appendchild(r),
t
},
end: function(e) {
var r = document.createelement("div");
return r.textcontent = "end",
o.css(r, {
position: "absolute",
overflow: "visible",
"border-width": 0,
"border-style": "solid",
color: e,
"border-color": e
}),
r
},
bounds: function() {
var e = document.createelement("div");
return o.css(e, {
position: "absolute",
overflow: "visible",
"white-space": "nowrap",
"pointer-events": "none",
"font-size": r
}),
e.style.zindex = t,
e
},
trigger: function(e) {
var i = document.createelement("div");
i.textcontent = "trigger",
o.css(i, {
position: "relative"
});
var n = document.createelement("div");
o.css(n, {
position: "absolute",
overflow: "visible",
"border-width": 0,
"border-style": "solid",
color: e,
"border-color": e
}),
n.appendchild(i);
var s = document.createelement("div");
return o.css(s, {
position: "fixed",
overflow: "visible",
"white-space": "nowrap",
"pointer-events": "none",
"font-size": r
}),
s.style.zindex = t,
s.appendchild(n),
s
}
}
});
/**
* swiper 3.4.2
* most modern mobile touch slider and framework with hardware accelerated transitions
*
* http://www.idangero.us/swiper/
* 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.params.paginationelement + ">";
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
; (function($, window, document, undefined) {
// our plugin constructor
var onepagenav = function(elem, options) {
this.elem = elem;
this.$elem = $(elem);
this.options = options;
this.metadata = this.$elem.data('plugin-options');
this.$win = $(window);
this.sections = {};
this.didscroll = false;
this.$doc = $(document);
this.docheight = this.$doc.height();
};
// the plugin prototype
onepagenav.prototype = {
defaults: {
navitems: 'a',
currentclass: 'active',
changehash: false,
easing: 'swing',
filter: '',
scrollspeed: 750,
scrollthreshold: 0.5,
begin: false,
end: false,
scrollchange: false
},
init: function() {
// introduce defaults that can be extended either
// globally or using an object literal.
this.config = $.extend({},
this.defaults, this.options, this.metadata);
this.$nav = this.$elem.find(this.config.navitems);
//filter any links out of the nav
if (this.config.filter !== '') {
this.$nav = this.$nav.filter(this.config.filter);
}
//handle clicks on the nav
this.$nav.on('click.onepagenav', $.proxy(this.handleclick, this));
//get the section positions
this.getpositions();
//handle scroll changes
this.bindinterval();
//update the positions on resize too
this.$win.on('resize.onepagenav', $.proxy(this.getpositions, this));
return this;
},
adjustnav: function(self, $parent) {
self.$elem.find('.' + self.config.currentclass).removeclass(self.config.currentclass);
$parent.addclass(self.config.currentclass);
},
bindinterval: function() {
var self = this;
var docheight;
self.$win.on('scroll.onepagenav',
function() {
self.didscroll = true;
});
self.t = setinterval(function() {
docheight = self.$doc.height();
//if it was scrolled
if (self.didscroll) {
self.didscroll = false;
self.scrollchange();
}
//if the document height changes
if (docheight !== self.docheight) {
self.docheight = docheight;
self.getpositions();
}
},
250);
},
gethash: function($link) {
return $link.attr('href').split('#')[1];
},
getpositions: function() {
var self = this;
var linkhref;
var toppos;
var $target;
self.$nav.each(function() {
linkhref = self.gethash($(this));
$target = $('#' + linkhref);
if ($target.length) {
toppos = $target.offset().top;
self.sections[linkhref] = math.round(toppos);
}
});
},
getsection: function(windowpos) {
var returnvalue = null;
var windowheight = math.round(this.$win.height() * this.config.scrollthreshold);
for (var section in this.sections) {
if ((this.sections[section] - windowheight) < windowpos) {
returnvalue = section;
}
}
return returnvalue;
},
handleclick: function(e) {
var self = this;
var $link = $(e.currenttarget);
var $parent = $link.parent();
var newloc = '#' + self.gethash($link);
if (!$parent.hasclass(self.config.currentclass)) {
//start callback
if (self.config.begin) {
self.config.begin();
}
//change the highlighted nav item
self.adjustnav(self, $parent);
//removing the auto-adjust on scroll
self.unbindinterval();
//scroll to the correct position
self.scrollto(newloc,
function() {
//do we need to change the hash?
if (self.config.changehash) {
window.location.hash = newloc;
}
//add the auto-adjust on scroll back in
self.bindinterval();
//end callback
if (self.config.end) {
self.config.end();
}
});
}
e.preventdefault();
},
scrollchange: function() {
var windowtop = this.$win.scrolltop();
var position = this.getsection(windowtop);
var $parent;
//if the position is set
if (position !== null) {
$parent = this.$elem.find('a[href$="#' + position + '"]').parent();
//if it's not already the current section
if (!$parent.hasclass(this.config.currentclass)) {
//change the highlighted nav item
this.adjustnav(this, $parent);
//if there is a scrollchange callback
if (this.config.scrollchange) {
this.config.scrollchange($parent);
}
}
}
},
scrollto: function(target, callback) {
var offset = $(target).offset().top;
var header = $(".header").outerheight();
$('html, body').animate({
scrolltop: offset - header
},
this.config.scrollspeed, this.config.easing, callback);
},
unbindinterval: function() {
clearinterval(this.t);
this.$win.unbind('scroll.onepagenav');
}
};
onepagenav.defaults = onepagenav.prototype.defaults;
$.fn.onepagenav = function(options) {
return this.each(function() {
new onepagenav(this, options).init();
});
};
})(jquery, window, document);
/*!
* version: beta 0.2.4
* date: 2014-07-17
* updates and docs at: http://www.greensock.com
*
* @license copyright (c) 2008-2014, greensock. all rights reserved.
* splittext is a club greensock membership benefit; you must have a valid membership to use
* this code without violating the terms of use. visit http://www.greensock.com/club/ to sign up or get more details.
* this work is subject to the software agreement that was issued with your membership.
*
* @author: jack doyle, jack@greensock.com
*/
var _gsscope = "undefined" != typeof module && module.exports && "undefined" != typeof global ? global: this || window; (function(t) {
"use strict";
var e = t.greensockglobals || t,
i = function(t) {
var i, s = t.split("."),
r = e;
for (i = 0; s.length > i; i++) r[s[i]] = r = r[s[i]] || {};
return r
},
s = i("com.greensock.utils"),
r = function(t) {
var e = t.nodetype,
i = "";
if (1 === e || 9 === e || 11 === e) {
if ("string" == typeof t.textcontent) return t.textcontent;
for (t = t.firstchild; t; t = t.nextsibling) i += r(t)
} else if (3 === e || 4 === e) return t.nodevalue;
return i
},
n = document,
a = n.defaultview ? n.defaultview.getcomputedstyle: function() {},
o = /([a-z])/g,
h = function(t, e, i, s) {
var r;
return (i = i || a(t, null)) ? (t = i.getpropertyvalue(e.replace(o, "-$1").tolowercase()), r = t || i.length ? t: i[e]) : t.currentstyle && (i = t.currentstyle, r = i[e]),
s ? r: parseint(r, 10) || 0
},
l = function(t) {
return t.length && t[0] && (t[0].nodetype && t[0].style && !t.nodetype || t[0].length && t[0][0]) ? !0 : !1
},
_ = function(t) {
var e, i, s, r = [],
n = t.length;
for (e = 0; n > e; e++) if (i = t[e], l(i)) for (s = i.length, s = 0; i.length > s; s++) r.push(i[s]);
else r.push(i);
return r
},
u = ")eefec303079ad17405c",
c = /(?: | | )/gi,
p = n.all && !n.addeventlistener,
f = "
": ">")
}
},
d = s.splittext = e.splittext = function(t, e) {
if ("string" == typeof t && (t = d.selector(t)), !t) throw "cannot split a null element.";
this.elements = l(t) ? _(t) : [t],
this.chars = [],
this.words = [],
this.lines = [],
this._originals = [],
this.vars = e || {},
this.split(e)
},
g = function(t, e, i, s, o) {
c.test(t.innerhtml) && (t.innerhtml = t.innerhtml.replace(c, u));
var l, _, p, f, d, g, v, y, t, w, b, x, p, s = r(t),
c = e.type || e.split || "chars,words,lines",
k = -1 !== c.indexof("lines") ? [] : null,
r = -1 !== c.indexof("words"),
a = -1 !== c.indexof("chars"),
d = "absolute" === e.position || e.absolute === !0,
o = d ? " ": " ",
m = -999,
l = a(t),
z = h(t, "paddingleft", l),
i = h(t, "borderbottomwidth", l) + h(t, "bordertopwidth", l),
e = h(t, "borderleftwidth", l) + h(t, "borderrightwidth", l),
n = h(t, "paddingtop", l) + h(t, "paddingbottom", l),
f = h(t, "paddingleft", l) + h(t, "paddingright", l),
x = h(t, "textalign", l, !0),
u = t.clientheight,
b = t.clientwidth,
j = s.length,
y = "
",
q = m(e.wordsclass),
g = m(e.charsclass),
v = -1 !== (e.linesclass || "").indexof("++"),
q = e.linesclass;
for (v && (q = q.split("++").join("")), p = q(), f = 0; j > f; f++) g = s.charat(f),
")" === g && s.substr(f, 20) === u ? (p += y + " ", f !== j - 1 && (p += " " + q()), f += 19) : " " === g && " " !== s.charat(f - 1) && f !== j - 1 ? (p += y, f !== j - 1 && (p += o + q())) : p += a && " " !== g ? g() + g + "": g;
for (t.innerhtml = p + y, d = t.getelementsbytagname("*"), j = d.length, v = [], f = 0; j > f; f++) v[f] = d[f];
if (k || d) for (f = 0; j > f; f++) y = v[f],
_ = y.parentnode === t,
(_ || d || a && !r) && (t = y.offsettop, k && _ && t !== m && "br" !== y.nodename && (l = [], k.push(l), m = t), d && (y._x = y.offsetleft, y._y = t, y._w = y.offsetwidth, y._h = y.offsetheight), k && (r !== _ && a || (l.push(y), y._x -= z), _ && f && (v[f - 1]._wordend = !0)));
for (f = 0; j > f; f++) y = v[f],
_ = y.parentnode === t,
"br" !== y.nodename ? (d && (b = y.style, r || _ || (y._x += y.parentnode._x, y._y += y.parentnode._y), b.left = y._x + "px", b.top = y._y + "px", b.position = "absolute", b.display = "block", b.width = y._w + 1 + "px", b.height = y._h + "px"), r ? _ ? s.push(y) : a && i.push(y) : _ ? (t.removechild(y), v.splice(f--, 1), j--) : !_ && a && (t = !k && !d && y.nextsibling, t.appendchild(y), t || t.appendchild(n.createtextnode(" ")), i.push(y))) : k || d ? (t.removechild(y), v.splice(f--, 1), j--) : r || t.appendchild(y);
if (k) {
for (d && (w = n.createelement("div"), t.appendchild(w), x = w.offsetwidth + "px", t = w.offsetparent === t ? 0 : t.offsetleft, t.removechild(w)), b = t.style.csstext, t.style.csstext = "display:none;"; t.firstchild;) t.removechild(t.firstchild);
for (p = !d || !r && !a, f = 0; k.length > f; f++) {
for (l = k[f], w = n.createelement("div"), w.style.csstext = "display:block;text-align:" + x + ";position:" + (d ? "absolute;": "relative;"), q && (w.classname = q + (v ? f + 1 : "")), o.push(w), j = l.length, d = 0; j > d; d++)"br" !== l[d].nodename && (y = l[d], w.appendchild(y), p && (y._wordend || r) && w.appendchild(n.createtextnode(" ")), d && (0 === d && (w.style.top = y._y + "px", w.style.left = z + t + "px"), y.style.top = "0px", t && (y.style.left = y._x - t + "px")));
r || a || (w.innerhtml = r(w).split(string.fromcharcode(160)).join(" ")),
d && (w.style.width = x, w.style.height = y._h + "px"),
t.appendchild(w)
}
t.style.csstext = b
}
d && (u > t.clientheight && (t.style.height = u - n + "px", u > t.clientheight && (t.style.height = u + i + "px")), b > t.clientwidth && (t.style.width = b - f + "px", b > t.clientwidth && (t.style.width = b + e + "px")))
},
v = d.prototype;
v.split = function(t) {
this.issplit && this.revert(),
this.vars = t || this.vars,
this._originals.length = this.chars.length = this.words.length = this.lines.length = 0;
for (var e = 0; this.elements.length > e; e++) this._originals[e] = this.elements[e].innerhtml,
g(this.elements[e], this.vars, this.chars, this.words, this.lines);
return this.issplit = !0,
this
},
v.revert = function() {
if (!this._originals) throw "revert() call wasn't scoped properly.";
for (var t = this._originals.length; --t > -1;) this.elements[t].innerhtml = this._originals[t];
return this.chars = [],
this.words = [],
this.lines = [],
this.issplit = !1,
this
},
d.selector = t.$ || t.jquery ||
function(e) {
return t.$ ? (d.selector = t.$, t.$(e)) : n ? n.getelementbyid("#" === e.charat(0) ? e.substr(1) : e) : e
},
d.version = "0.2.4"
})(_gsscope),
function(t) {
"use strict";
var e = function() {
return (_gsscope.greensockglobals || _gsscope)[t]
};
"function" == typeof define && define.amd ? define(["tweenlite"], e) : "undefined" != typeof module && module.exports && (module.exports = e())
} ("splittext");
/*! lazy load 1.9.3 - mit license - copyright 2010-2013 mika tuupola */
!
function(a, b, c, d) {
var e = a(b);
a.fn.lazyload = function(f) {
function g() {
var b = 0;
i.each(function() {
var c = a(this);
if (!j.skip_invisible || c.is(":visible")) if (a.abovethetop(this, j) || a.leftofbegin(this, j));
else if (a.belowthefold(this, j) || a.rightoffold(this, j)) {
if (++b > j.failure_limit) return ! 1
} else c.trigger("appear"),
b = 0
})
}
var h, i = this,
j = {
threshold: 0,
failure_limit: 0,
event: "scroll",
effect: "show",
container: b,
data_attribute: "original",
skip_invisible: !0,
appear: null,
load: null,
placeholder: "data:image/png;base64,ivborw0kggoaaaansuheugaaaaeaaaabcayaaaaffcsjaaaaaxnsr0iars4c6qaaaarnqu1baacxjwv8yquaaaajcehzcwaadsqaaa7eazurdhsaaaansurbvbhxyzh8+pb/aaffa0nnpuclaaaaaelftksuqmcc"
};
return f && (d !== f.failurelimit && (f.failure_limit = f.failurelimit, delete f.failurelimit), d !== f.effectspeed && (f.effect_speed = f.effectspeed, delete f.effectspeed), a.extend(j, f)),
h = j.container === d || j.container === b ? e: a(j.container),
0 === j.event.indexof("scroll") && h.bind(j.event,
function() {
return g()
}),
this.each(function() {
var b = this,
c = a(b);
b.loaded = !1,
(c.attr("src") === d || c.attr("src") === !1) && c.is("img") && c.attr("src", j.placeholder),
c.one("appear",
function() {
if (!this.loaded) {
if (j.appear) {
var d = i.length;
j.appear.call(b, d, j)
}
a("").bind("load",
function() {
var d = c.attr("data-" + j.data_attribute);
c.hide(),
c.is("img") ? c.attr("src", d) : c.css("background-image", "url('" + d + "')"),
c[j.effect](j.effect_speed),
b.loaded = !0;
var e = a.grep(i,
function(a) {
return ! a.loaded
});
if (i = a(e), j.load) {
var f = i.length;
j.load.call(b, f, j)
}
}).attr("src", c.attr("data-" + j.data_attribute))
}
}),
0 !== j.event.indexof("scroll") && c.bind(j.event,
function() {
b.loaded || c.trigger("appear")
})
}),
e.bind("resize",
function() {
g()
}),
/(?:iphone|ipod|ipad).*os 5/gi.test(navigator.appversion) && e.bind("pageshow",
function(b) {
b.originalevent && b.originalevent.persisted && i.each(function() {
a(this).trigger("appear")
})
}),
a(c).ready(function() {
g()
}),
this
},
a.belowthefold = function(c, f) {
var g;
return g = f.container === d || f.container === b ? (b.innerheight ? b.innerheight: e.height()) + e.scrolltop() : a(f.container).offset().top + a(f.container).height(),
g <= a(c).offset().top - f.threshold
},
a.rightoffold = function(c, f) {
var g;
return g = f.container === d || f.container === b ? e.width() + e.scrollleft() : a(f.container).offset().left + a(f.container).width(),
g <= a(c).offset().left - f.threshold
},
a.abovethetop = function(c, f) {
var g;
return g = f.container === d || f.container === b ? e.scrolltop() : a(f.container).offset().top,
g >= a(c).offset().top + f.threshold + a(c).height()
},
a.leftofbegin = function(c, f) {
var g;
return g = f.container === d || f.container === b ? e.scrollleft() : a(f.container).offset().left,
g >= a(c).offset().left + f.threshold + a(c).width()
},
a.inviewport = function(b, c) {
return ! (a.rightoffold(b, c) || a.leftofbegin(b, c) || a.belowthefold(b, c) || a.abovethetop(b, c))
},
a.extend(a.expr[":"], {
"below-the-fold": function(b) {
return a.belowthefold(b, {
threshold: 0
})
},
"above-the-top": function(b) {
return ! a.belowthefold(b, {
threshold: 0
})
},
"right-of-screen": function(b) {
return a.rightoffold(b, {
threshold: 0
})
},
"left-of-screen": function(b) {
return ! a.rightoffold(b, {
threshold: 0
})
},
"in-viewport": function(b) {
return a.inviewport(b, {
threshold: 0
})
},
"above-the-fold": function(b) {
return ! a.belowthefold(b, {
threshold: 0
})
},
"right-of-fold": function(b) {
return a.rightoffold(b, {
threshold: 0
})
},
"left-of-fold": function(b) {
return ! a.rightoffold(b, {
threshold: 0
})
}
})
} (jquery, window, document);
!
function(t) {
"use strict";
t.fn.countup = function(e) {
var a = t.extend({
time: 2e3,
delay: 10
},
e);
return this.each(function() {
var e = t(this),
n = a,
u = function() {
e.data("counterupto") || e.data("counterupto", e.text());
var t = parseint(e.data("counter-time")) > 0 ? parseint(e.data("counter-time")) : n.time,
a = parseint(e.data("counter-delay")) > 0 ? parseint(e.data("counter-delay")) : n.delay,
u = t / a,
r = e.data("counterupto"),
o = [r],
c = /[0-9]+,[0-9]+/.test(r);
r = r.replace(/,/g, "");
for (var d = (/^[0-9]+$/.test(r), /^[0-9]+\.[0-9]+$/.test(r)), s = d ? (r.split(".")[1] || []).length: 0, i = u; i >= 1; i--) {
var p = parseint(math.round(r / u * i));
if (d && (p = parsefloat(r / u * i).tofixed(s)), c) for (;
/(\d+)(\d{3})/.test(p.tostring());) p = p.tostring().replace(/(\d+)(\d{3})/, "$1,$2");
o.unshift(p)
}
e.data("counterup-nums", o),
e.text("0");
var f = function() {
e.text(e.data("counterup-nums").shift()),
e.data("counterup-nums").length ? settimeout(e.data("counterup-func"), a) : (delete e.data("counterup-nums"), e.data("counterup-nums", null), e.data("counterup-func", null))
};
e.data("counterup-func", f),
settimeout(e.data("counterup-func"), a)
};
e.waypoint(u, {
offset: "100%",
triggeronce: !0
})
})
}
} (jquery);
(function(e) {
"use strict";
e.fn.counterup = function(t) {
var n = e.extend({
time: 400,
delay: 10
},
t);
return this.each(function() {
var t = e(this),
r = n,
i = function() {
var e = [],
n = r.time / r.delay,
i = t.text(),
s = /[0-9]+,[0-9]+/.test(i);
i = i.replace(/,/g, "");
var o = /^[0-9]+$/.test(i),
u = /^[0-9]+\.[0-9]+$/.test(i),
a = u ? (i.split(".")[1] || []).length: 0;
for (var f = n; f >= 1; f--) {
var l = parseint(i / n * f);
u && (l = parsefloat(i / n * f).tofixed(a));
if (s) while (/(\d+)(\d{3})/.test(l.tostring())) l = l.tostring().replace(/(\d+)(\d{3})/, "$1,$2");
e.unshift(l)
}
t.data("counterup-nums", e);
t.text("0");
var c = function() {
t.text(t.data("counterup-nums").shift());
if (t.data("counterup-nums").length) settimeout(t.data("counterup-func"), r.delay);
else {
delete t.data("counterup-nums");
t.data("counterup-nums", null);
t.data("counterup-func", null)
}
};
t.data("counterup-func", c);
settimeout(t.data("counterup-func"), r.delay)
};
t.waypoint(i, {
offset: "100%",
triggeronce: !0
})
})
}
})(jquery);
(function() {
var t = [].indexof ||
function(t) {
for (var e = 0,
n = this.length; e < n; e++) {
if (e in this && this[e] === t) return e
}
return - 1
},
e = [].slice; (function(t, e) {
if (typeof define === "function" && define.amd) {
return define("waypoints", ["jquery"],
function(n) {
return e(n, t)
})
} else {
return e(t.jquery, t)
}
})(this,
function(n, r) {
var i, o, l, s, f, u, a, c, h, d, p, y, v, w, g, m;
i = n(r);
c = t.call(r, "ontouchstart") >= 0;
s = {
horizontal: {},
vertical: {}
};
f = 1;
a = {};
u = "waypoints-context-id";
p = "resize.waypoints";
y = "scroll.waypoints";
v = 1;
w = "waypoints-waypoint-ids";
g = "waypoint";
m = "waypoints";
o = function() {
function t(t) {
var e = this;
this.$element = t;
this.element = t[0];
this.didresize = false;
this.didscroll = false;
this.id = "context" + f++;
this.oldscroll = {
x: t.scrollleft(),
y: t.scrolltop()
};
this.waypoints = {
horizontal: {},
vertical: {}
};
t.data(u, this.id);
a[this.id] = this;
t.bind(y,
function() {
var t;
if (! (e.didscroll || c)) {
e.didscroll = true;
t = function() {
e.doscroll();
return e.didscroll = false
};
return r.settimeout(t, n[m].settings.scrollthrottle)
}
});
t.bind(p,
function() {
var t;
if (!e.didresize) {
e.didresize = true;
t = function() {
n[m]("refresh");
return e.didresize = false
};
return r.settimeout(t, n[m].settings.resizethrottle)
}
})
}
t.prototype.doscroll = function() {
var t, e = this;
t = {
horizontal: {
newscroll: this.$element.scrollleft(),
oldscroll: this.oldscroll.x,
forward: "right",
backward: "left"
},
vertical: {
newscroll: this.$element.scrolltop(),
oldscroll: this.oldscroll.y,
forward: "down",
backward: "up"
}
};
if (c && (!t.vertical.oldscroll || !t.vertical.newscroll)) {
n[m]("refresh")
}
n.each(t,
function(t, r) {
var i, o, l;
l = [];
o = r.newscroll > r.oldscroll;
i = o ? r.forward: r.backward;
n.each(e.waypoints[t],
function(t, e) {
var n, i;
if (r.oldscroll < (n = e.offset) && n <= r.newscroll) {
return l.push(e)
} else if (r.newscroll < (i = e.offset) && i <= r.oldscroll) {
return l.push(e)
}
});
l.sort(function(t, e) {
return t.offset - e.offset
});
if (!o) {
l.reverse()
}
return n.each(l,
function(t, e) {
if (e.options.continuous || t === l.length - 1) {
return e.trigger([i])
}
})
});
return this.oldscroll = {
x: t.horizontal.newscroll,
y: t.vertical.newscroll
}
};
t.prototype.refresh = function() {
var t, e, r, i = this;
r = n.iswindow(this.element);
e = this.$element.offset();
this.doscroll();
t = {
horizontal: {
contextoffset: r ? 0 : e.left,
contextscroll: r ? 0 : this.oldscroll.x,
contextdimension: this.$element.width(),
oldscroll: this.oldscroll.x,
forward: "right",
backward: "left",
offsetprop: "left"
},
vertical: {
contextoffset: r ? 0 : e.top,
contextscroll: r ? 0 : this.oldscroll.y,
contextdimension: r ? n[m]("viewportheight") : this.$element.height(),
oldscroll: this.oldscroll.y,
forward: "down",
backward: "up",
offsetprop: "top"
}
};
return n.each(t,
function(t, e) {
return n.each(i.waypoints[t],
function(t, r) {
var i, o, l, s, f;
i = r.options.offset;
l = r.offset;
o = n.iswindow(r.element) ? 0 : r.$element.offset()[e.offsetprop];
if (n.isfunction(i)) {
i = i.apply(r.element)
} else if (typeof i === "string") {
i = parsefloat(i);
if (r.options.offset.indexof("%") > -1) {
i = math.ceil(e.contextdimension * i / 100)
}
}
r.offset = o - e.contextoffset + e.contextscroll - i;
if (r.options.onlyonscroll && l != null || !r.enabled) {
return
}
if (l !== null && l < (s = e.oldscroll) && s <= r.offset) {
return r.trigger([e.backward])
} else if (l !== null && l > (f = e.oldscroll) && f >= r.offset) {
return r.trigger([e.forward])
} else if (l === null && e.oldscroll >= r.offset) {
return r.trigger([e.forward])
}
})
})
};
t.prototype.checkempty = function() {
if (n.isemptyobject(this.waypoints.horizontal) && n.isemptyobject(this.waypoints.vertical)) {
this.$element.unbind([p, y].join(" "));
return delete a[this.id]
}
};
return t
} ();
l = function() {
function t(t, e, r) {
var i, o;
r = n.extend({},
n.fn[g].defaults, r);
if (r.offset === "bottom-in-view") {
r.offset = function() {
var t;
t = n[m]("viewportheight");
if (!n.iswindow(e.element)) {
t = e.$element.height()
}
return t - n(this).outerheight()
}
}
this.$element = t;
this.element = t[0];
this.axis = r.horizontal ? "horizontal": "vertical";
this.callback = r.handler;
this.context = e;
this.enabled = r.enabled;
this.id = "waypoints" + v++;
this.offset = null;
this.options = r;
e.waypoints[this.axis][this.id] = this;
s[this.axis][this.id] = this;
i = (o = t.data(w)) != null ? o: [];
i.push(this.id);
t.data(w, i)
}
t.prototype.trigger = function(t) {
if (!this.enabled) {
return
}
if (this.callback != null) {
this.callback.apply(this.element, t)
}
if (this.options.triggeronce) {
return this.destroy()
}
};
t.prototype.disable = function() {
return this.enabled = false
};
t.prototype.enable = function() {
this.context.refresh();
return this.enabled = true
};
t.prototype.destroy = function() {
delete s[this.axis][this.id];
delete this.context.waypoints[this.axis][this.id];
return this.context.checkempty()
};
t.getwaypointsbyelement = function(t) {
var e, r;
r = n(t).data(w);
if (!r) {
return []
}
e = n.extend({},
s.horizontal, s.vertical);
return n.map(r,
function(t) {
return e[t]
})
};
return t
} ();
d = {
init: function(t, e) {
var r;
if (e == null) {
e = {}
}
if ((r = e.handler) == null) {
e.handler = t
}
this.each(function() {
var t, r, i, s;
t = n(this);
i = (s = e.context) != null ? s: n.fn[g].defaults.context;
if (!n.iswindow(i)) {
i = t.closest(i)
}
i = n(i);
r = a[i.data(u)];
if (!r) {
r = new o(i)
}
return new l(t, r, e)
});
n[m]("refresh");
return this
},
disable: function() {
return d._invoke(this, "disable")
},
enable: function() {
return d._invoke(this, "enable")
},
destroy: function() {
return d._invoke(this, "destroy")
},
prev: function(t, e) {
return d._traverse.call(this, t, e,
function(t, e, n) {
if (e > 0) {
return t.push(n[e - 1])
}
})
},
next: function(t, e) {
return d._traverse.call(this, t, e,
function(t, e, n) {
if (e < n.length - 1) {
return t.push(n[e + 1])
}
})
},
_traverse: function(t, e, i) {
var o, l;
if (t == null) {
t = "vertical"
}
if (e == null) {
e = r
}
l = h.aggregate(e);
o = [];
this.each(function() {
var e;
e = n.inarray(this, l[t]);
return i(o, e, l[t])
});
return this.pushstack(o)
},
_invoke: function(t, e) {
t.each(function() {
var t;
t = l.getwaypointsbyelement(this);
return n.each(t,
function(t, n) {
n[e]();
return true
})
});
return this
}
};
n.fn[g] = function() {
var t, r;
r = arguments[0],
t = 2 <= arguments.length ? e.call(arguments, 1) : [];
if (d[r]) {
return d[r].apply(this, t)
} else if (n.isfunction(r)) {
return d.init.apply(this, arguments)
} else if (n.isplainobject(r)) {
return d.init.apply(this, [null, r])
} else if (!r) {
return n.error("jquery waypoints needs a callback function or handler option.")
} else {
return n.error("the " + r + " method does not exist in jquery waypoints.")
}
};
n.fn[g].defaults = {
context: r,
continuous: true,
enabled: true,
horizontal: false,
offset: 0,
triggeronce: false
};
h = {
refresh: function() {
return n.each(a,
function(t, e) {
return e.refresh()
})
},
viewportheight: function() {
var t;
return (t = r.innerheight) != null ? t: i.height()
},
aggregate: function(t) {
var e, r, i;
e = s;
if (t) {
e = (i = a[n(t).data(u)]) != null ? i.waypoints: void 0
}
if (!e) {
return []
}
r = {
horizontal: [],
vertical: []
};
n.each(r,
function(t, i) {
n.each(e[t],
function(t, e) {
return i.push(e)
});
i.sort(function(t, e) {
return t.offset - e.offset
});
r[t] = n.map(i,
function(t) {
return t.element
});
return r[t] = n.unique(r[t])
});
return r
},
above: function(t) {
if (t == null) {
t = r
}
return h._filter(t, "vertical",
function(t, e) {
return e.offset <= t.oldscroll.y
})
},
below: function(t) {
if (t == null) {
t = r
}
return h._filter(t, "vertical",
function(t, e) {
return e.offset > t.oldscroll.y
})
},
left: function(t) {
if (t == null) {
t = r
}
return h._filter(t, "horizontal",
function(t, e) {
return e.offset <= t.oldscroll.x
})
},
right: function(t) {
if (t == null) {
t = r
}
return h._filter(t, "horizontal",
function(t, e) {
return e.offset > t.oldscroll.x
})
},
enable: function() {
return h._invoke("enable")
},
disable: function() {
return h._invoke("disable")
},
destroy: function() {
return h._invoke("destroy")
},
extendfn: function(t, e) {
return d[t] = e
},
_invoke: function(t) {
var e;
e = n.extend({},
s.vertical, s.horizontal);
return n.each(e,
function(e, n) {
n[t]();
return true
})
},
_filter: function(t, e, r) {
var i, o;
i = a[n(t).data(u)];
if (!i) {
return []
}
o = [];
n.each(i.waypoints[e],
function(t, e) {
if (r(i, e)) {
return o.push(e)
}
});
o.sort(function(t, e) {
return t.offset - e.offset
});
return n.map(o,
function(t) {
return t.element
})
}
};
n[m] = function() {
var t, n;
n = arguments[0],
t = 2 <= arguments.length ? e.call(arguments, 1) : [];
if (h[n]) {
return h[n].apply(null, t)
} else {
return h.aggregate.call(null, n)
}
};
n[m].settings = {
resizethrottle: 100,
scrollthrottle: 30
};
return i.load(function() {
return n[m]("refresh")
})
})
}).call(this);