/*! * version: 1.20.4 * date: 2018-02-15 * updates and docs at: http://greensock.com * * @license copyright (c) 2008-2018, 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 */ ! 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) { return arguments.length ? (p = a || 1 / m, void(q = math.min(b, p, 0))) : 1 / m > p }, 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.lagsmoothing()) && 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; var b, c; for (a = a || m, this._timeline && this._timeline.smoothchildtiming && (b = this._pausetime, c = b || 0 === b ? b : this._timeline.totaltime(), this._starttime = c - (c - this._starttime) * this._timescale / a), this._timescale = a, c = this.timeline; c && c.timeline;) c._dirty = !0, c.totalduration(), c = c.timeline; return this }, 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.4", 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 && null != 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 = null), 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 + (o.s + "").replace(/[0-9\-\.]/g, "") : 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.data = "isstart", e.overwrite = !1, e.immediaterender = !0, e.lazy = j && g.lazy !== !1, e.startat = e.delay = null, e.onupdate = g.onupdate, e.onupdateparams = g.onupdateparams, 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, !0, 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, !0, 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, !0, 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, "tweenlite");