| Server IP : 144.76.79.100 / Your IP : 216.73.216.103 [ Web Server : Apache System : Linux ch05.wehostwebserver.com 5.14.0-611.5.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Nov 11 08:09:09 EST 2025 x86_64 User : razzlestore ( 1092) PHP Version : 8.2.29 Disable Function : NONE Domains : 343 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/public_html/distribution/Clients/js/revolution/ |
Upload File : |
/********************************************
- THEMEPUNCH TOOLS Ver. 1.0 -
Last Update of Tools 27.02.2015
*********************************************/
/*
* @fileOverview TouchSwipe - jQuery Plugin
* @version 1.6.9
*
* @author Matt Bryson http://www.github.com/mattbryson
* @see https://github.com/mattbryson/TouchSwipe-Jquery-Plugin
* @see http://labs.skinkers.com/touchSwipe/
* @see http://plugins.jquery.com/project/touchSwipe
*
* Copyright (c) 2010 Matt Bryson
* Dual licensed under the MIT or GPL Version 2 licenses.
*
*/
(function(a) {
if (typeof define === "function" && define.amd && define.amd.jQuery) {
define(["jquery"], a)
} else {
a(jQuery)
}
}(function(f) {
var y = "1.6.9",
p = "left",
o = "right",
e = "up",
x = "down",
c = "in",
A = "out",
m = "none",
s = "auto",
l = "swipe",
t = "pinch",
B = "tap",
j = "doubletap",
b = "longtap",
z = "hold",
E = "horizontal",
u = "vertical",
i = "all",
r = 10,
g = "start",
k = "move",
h = "end",
q = "cancel",
a = "ontouchstart" in window,
v = window.navigator.msPointerEnabled && !window.navigator.pointerEnabled,
d = window.navigator.pointerEnabled || window.navigator.msPointerEnabled,
C = "TouchSwipe";
var n = {
fingers: 1,
threshold: 75,
cancelThreshold: null,
pinchThreshold: 20,
maxTimeThreshold: null,
fingerReleaseThreshold: 250,
longTapThreshold: 500,
doubleTapThreshold: 200,
swipe: null,
swipeLeft: null,
swipeRight: null,
swipeUp: null,
swipeDown: null,
swipeStatus: null,
pinchIn: null,
pinchOut: null,
pinchStatus: null,
click: null,
tap: null,
doubleTap: null,
longTap: null,
hold: null,
triggerOnTouchEnd: true,
triggerOnTouchLeave: false,
allowPageScroll: "auto",
fallbackToMouseEvents: true,
excludedElements: "label, button, input, select, textarea, a, .noSwipe",
preventDefaultEvents: true
};
f.fn.swipetp = function(H) {
var G = f(this),
F = G.data(C);
if (F && typeof H === "string") {
if (F[H]) {
return F[H].apply(this, Array.prototype.slice.call(arguments, 1))
} else {
f.error("Method " + H + " does not exist on jQuery.swipetp")
}
} else {
if (!F && (typeof H === "object" || !H)) {
return w.apply(this, arguments)
}
}
return G
};
f.fn.swipetp.version = y;
f.fn.swipetp.defaults = n;
f.fn.swipetp.phases = {
PHASE_START: g,
PHASE_MOVE: k,
PHASE_END: h,
PHASE_CANCEL: q
};
f.fn.swipetp.directions = {
LEFT: p,
RIGHT: o,
UP: e,
DOWN: x,
IN: c,
OUT: A
};
f.fn.swipetp.pageScroll = {
NONE: m,
HORIZONTAL: E,
VERTICAL: u,
AUTO: s
};
f.fn.swipetp.fingers = {
ONE: 1,
TWO: 2,
THREE: 3,
ALL: i
};
function w(F) {
if (F && (F.allowPageScroll === undefined && (F.swipe !== undefined || F.swipeStatus !== undefined))) {
F.allowPageScroll = m
}
if (F.click !== undefined && F.tap === undefined) {
F.tap = F.click
}
if (!F) {
F = {}
}
F = f.extend({}, f.fn.swipetp.defaults, F);
return this.each(function() {
var H = f(this);
var G = H.data(C);
if (!G) {
G = new D(this, F);
H.data(C, G)
}
})
}
function D(a5, aw) {
var aA = (a || d || !aw.fallbackToMouseEvents),
K = aA ? (d ? (v ? "MSPointerDown" : "pointerdown") : "touchstart") : "mousedown",
az = aA ? (d ? (v ? "MSPointerMove" : "pointermove") : "touchmove") : "mousemove",
V = aA ? (d ? (v ? "MSPointerUp" : "pointerup") : "touchend") : "mouseup",
T = aA ? null : "mouseleave",
aE = (d ? (v ? "MSPointerCancel" : "pointercancel") : "touchcancel");
var ah = 0,
aQ = null,
ac = 0,
a2 = 0,
a0 = 0,
H = 1,
ar = 0,
aK = 0,
N = null;
var aS = f(a5);
var aa = "start";
var X = 0;
var aR = null;
var U = 0,
a3 = 0,
a6 = 0,
ae = 0,
O = 0;
var aX = null,
ag = null;
try {
aS.bind(K, aO);
aS.bind(aE, ba)
} catch (al) {
f.error("events not supported " + K + "," + aE + " on jQuery.swipetp")
}
this.enable = function() {
aS.bind(K, aO);
aS.bind(aE, ba);
return aS
};
this.disable = function() {
aL();
return aS
};
this.destroy = function() {
aL();
aS.data(C, null);
aS = null
};
this.option = function(bd, bc) {
if (aw[bd] !== undefined) {
if (bc === undefined) {
return aw[bd]
} else {
aw[bd] = bc
}
} else {
f.error("Option " + bd + " does not exist on jQuery.swipetp.options")
}
return null
};
function aO(be) {
if (aC()) {
return
}
if (f(be.target).closest(aw.excludedElements, aS).length > 0) {
return
}
var bf = be.originalEvent ? be.originalEvent : be;
var bd, bg = bf.touches,
bc = bg ? bg[0] : bf;
aa = g;
if (bg) {
X = bg.length
} else {
be.preventDefault()
}
ah = 0;
aQ = null;
aK = null;
ac = 0;
a2 = 0;
a0 = 0;
H = 1;
ar = 0;
aR = ak();
N = ab();
S();
if (!bg || (X === aw.fingers || aw.fingers === i) || aY()) {
aj(0, bc);
U = au();
if (X == 2) {
aj(1, bg[1]);
a2 = a0 = av(aR[0].start, aR[1].start)
}
if (aw.swipeStatus || aw.pinchStatus) {
bd = P(bf, aa)
}
} else {
bd = false
}
if (bd === false) {
aa = q;
P(bf, aa);
return bd
} else {
if (aw.hold) {
ag = setTimeout(f.proxy(function() {
aS.trigger("hold", [bf.target]);
if (aw.hold) {
bd = aw.hold.call(aS, bf, bf.target)
}
}, this), aw.longTapThreshold)
}
ap(true)
}
return null
}
function a4(bf) {
var bi = bf.originalEvent ? bf.originalEvent : bf;
if (aa === h || aa === q || an()) {
return
}
var be, bj = bi.touches,
bd = bj ? bj[0] : bi;
var bg = aI(bd);
a3 = au();
if (bj) {
X = bj.length
}
if (aw.hold) {
clearTimeout(ag)
}
aa = k;
if (X == 2) {
if (a2 == 0) {
aj(1, bj[1]);
a2 = a0 = av(aR[0].start, aR[1].start)
} else {
aI(bj[1]);
a0 = av(aR[0].end, aR[1].end);
aK = at(aR[0].end, aR[1].end)
}
H = a8(a2, a0);
ar = Math.abs(a2 - a0)
}
if ((X === aw.fingers || aw.fingers === i) || !bj || aY()) {
aQ = aM(bg.start, bg.end);
am(bf, aQ);
ah = aT(bg.start, bg.end);
ac = aN();
aJ(aQ, ah);
if (aw.swipeStatus || aw.pinchStatus) {
be = P(bi, aa)
}
if (!aw.triggerOnTouchEnd || aw.triggerOnTouchLeave) {
var bc = true;
if (aw.triggerOnTouchLeave) {
var bh = aZ(this);
bc = F(bg.end, bh)
}
if (!aw.triggerOnTouchEnd && bc) {
aa = aD(k)
} else {
if (aw.triggerOnTouchLeave && !bc) {
aa = aD(h)
}
}
if (aa == q || aa == h) {
P(bi, aa)
}
}
} else {
aa = q;
P(bi, aa)
}
if (be === false) {
aa = q;
P(bi, aa)
}
}
function M(bc) {
var bd = bc.originalEvent ? bc.originalEvent : bc,
be = bd.touches;
if (be) {
if (be.length) {
G();
return true
}
}
if (an()) {
X = ae
}
a3 = au();
ac = aN();
if (bb() || !ao()) {
aa = q;
P(bd, aa)
} else {
if (aw.triggerOnTouchEnd || (aw.triggerOnTouchEnd == false && aa === k)) {
bc.preventDefault();
aa = h;
P(bd, aa)
} else {
if (!aw.triggerOnTouchEnd && a7()) {
aa = h;
aG(bd, aa, B)
} else {
if (aa === k) {
aa = q;
P(bd, aa)
}
}
}
}
ap(false);
return null
}
function ba() {
X = 0;
a3 = 0;
U = 0;
a2 = 0;
a0 = 0;
H = 1;
S();
ap(false)
}
function L(bc) {
var bd = bc.originalEvent ? bc.originalEvent : bc;
if (aw.triggerOnTouchLeave) {
aa = aD(h);
P(bd, aa)
}
}
function aL() {
aS.unbind(K, aO);
aS.unbind(aE, ba);
aS.unbind(az, a4);
aS.unbind(V, M);
if (T) {
aS.unbind(T, L)
}
ap(false)
}
function aD(bg) {
var bf = bg;
var be = aB();
var bd = ao();
var bc = bb();
if (!be || bc) {
bf = q
} else {
if (bd && bg == k && (!aw.triggerOnTouchEnd || aw.triggerOnTouchLeave)) {
bf = h
} else {
if (!bd && bg == h && aw.triggerOnTouchLeave) {
bf = q
}
}
}
return bf
}
function P(be, bc) {
var bd, bf = be.touches;
if ((J() || W()) || (Q() || aY())) {
if (J() || W()) {
bd = aG(be, bc, l)
}
if ((Q() || aY()) && bd !== false) {
bd = aG(be, bc, t)
}
} else {
if (aH() && bd !== false) {
bd = aG(be, bc, j)
} else {
if (aq() && bd !== false) {
bd = aG(be, bc, b)
} else {
if (ai() && bd !== false) {
bd = aG(be, bc, B)
}
}
}
}
if (bc === q) {
ba(be)
}
if (bc === h) {
if (bf) {
if (!bf.length) {
ba(be)
}
} else {
ba(be)
}
}
return bd
}
function aG(bf, bc, be) {
var bd;
if (be == l) {
aS.trigger("swipeStatus", [bc, aQ || null, ah || 0, ac || 0, X, aR]);
if (aw.swipeStatus) {
bd = aw.swipeStatus.call(aS, bf, bc, aQ || null, ah || 0, ac || 0, X, aR);
if (bd === false) {
return false
}
}
if (bc == h && aW()) {
aS.trigger("swipe", [aQ, ah, ac, X, aR]);
if (aw.swipe) {
bd = aw.swipe.call(aS, bf, aQ, ah, ac, X, aR);
if (bd === false) {
return false
}
}
switch (aQ) {
case p:
aS.trigger("swipeLeft", [aQ, ah, ac, X, aR]);
if (aw.swipeLeft) {
bd = aw.swipeLeft.call(aS, bf, aQ, ah, ac, X, aR)
}
break;
case o:
aS.trigger("swipeRight", [aQ, ah, ac, X, aR]);
if (aw.swipeRight) {
bd = aw.swipeRight.call(aS, bf, aQ, ah, ac, X, aR)
}
break;
case e:
aS.trigger("swipeUp", [aQ, ah, ac, X, aR]);
if (aw.swipeUp) {
bd = aw.swipeUp.call(aS, bf, aQ, ah, ac, X, aR)
}
break;
case x:
aS.trigger("swipeDown", [aQ, ah, ac, X, aR]);
if (aw.swipeDown) {
bd = aw.swipeDown.call(aS, bf, aQ, ah, ac, X, aR)
}
break
}
}
}
if (be == t) {
aS.trigger("pinchStatus", [bc, aK || null, ar || 0, ac || 0, X, H, aR]);
if (aw.pinchStatus) {
bd = aw.pinchStatus.call(aS, bf, bc, aK || null, ar || 0, ac || 0, X, H, aR);
if (bd === false) {
return false
}
}
if (bc == h && a9()) {
switch (aK) {
case c:
aS.trigger("pinchIn", [aK || null, ar || 0, ac || 0, X, H, aR]);
if (aw.pinchIn) {
bd = aw.pinchIn.call(aS, bf, aK || null, ar || 0, ac || 0, X, H, aR)
}
break;
case A:
aS.trigger("pinchOut", [aK || null, ar || 0, ac || 0, X, H, aR]);
if (aw.pinchOut) {
bd = aw.pinchOut.call(aS, bf, aK || null, ar || 0, ac || 0, X, H, aR)
}
break
}
}
}
if (be == B) {
if (bc === q || bc === h) {
clearTimeout(aX);
clearTimeout(ag);
if (Z() && !I()) {
O = au();
aX = setTimeout(f.proxy(function() {
O = null;
aS.trigger("tap", [bf.target]);
if (aw.tap) {
bd = aw.tap.call(aS, bf, bf.target)
}
}, this), aw.doubleTapThreshold)
} else {
O = null;
aS.trigger("tap", [bf.target]);
if (aw.tap) {
bd = aw.tap.call(aS, bf, bf.target)
}
}
}
} else {
if (be == j) {
if (bc === q || bc === h) {
clearTimeout(aX);
O = null;
aS.trigger("doubletap", [bf.target]);
if (aw.doubleTap) {
bd = aw.doubleTap.call(aS, bf, bf.target)
}
}
} else {
if (be == b) {
if (bc === q || bc === h) {
clearTimeout(aX);
O = null;
aS.trigger("longtap", [bf.target]);
if (aw.longTap) {
bd = aw.longTap.call(aS, bf, bf.target)
}
}
}
}
}
return bd
}
function ao() {
var bc = true;
if (aw.threshold !== null) {
bc = ah >= aw.threshold
}
return bc
}
function bb() {
var bc = false;
if (aw.cancelThreshold !== null && aQ !== null) {
bc = (aU(aQ) - ah) >= aw.cancelThreshold
}
return bc
}
function af() {
if (aw.pinchThreshold !== null) {
return ar >= aw.pinchThreshold
}
return true
}
function aB() {
var bc;
if (aw.maxTimeThreshold) {
if (ac >= aw.maxTimeThreshold) {
bc = false
} else {
bc = true
}
} else {
bc = true
}
return bc
}
function am(bc, bd) {
if (aw.preventDefaultEvents === false) {
return
}
if (aw.allowPageScroll === m) {
bc.preventDefault()
} else {
var be = aw.allowPageScroll === s;
switch (bd) {
case p:
if ((aw.swipeLeft && be) || (!be && aw.allowPageScroll != E)) {
bc.preventDefault()
}
break;
case o:
if ((aw.swipeRight && be) || (!be && aw.allowPageScroll != E)) {
bc.preventDefault()
}
break;
case e:
if ((aw.swipeUp && be) || (!be && aw.allowPageScroll != u)) {
bc.preventDefault()
}
break;
case x:
if ((aw.swipeDown && be) || (!be && aw.allowPageScroll != u)) {
bc.preventDefault()
}
break
}
}
}
function a9() {
var bd = aP();
var bc = Y();
var be = af();
return bd && bc && be
}
function aY() {
return !!(aw.pinchStatus || aw.pinchIn || aw.pinchOut)
}
function Q() {
return !!(a9() && aY())
}
function aW() {
var bf = aB();
var bh = ao();
var be = aP();
var bc = Y();
var bd = bb();
var bg = !bd && bc && be && bh && bf;
return bg
}
function W() {
return !!(aw.swipe || aw.swipeStatus || aw.swipeLeft || aw.swipeRight || aw.swipeUp || aw.swipeDown)
}
function J() {
return !!(aW() && W())
}
function aP() {
return ((X === aw.fingers || aw.fingers === i) || !a)
}
function Y() {
return aR[0].end.x !== 0
}
function a7() {
return !!(aw.tap)
}
function Z() {
return !!(aw.doubleTap)
}
function aV() {
return !!(aw.longTap)
}
function R() {
if (O == null) {
return false
}
var bc = au();
return (Z() && ((bc - O) <= aw.doubleTapThreshold))
}
function I() {
return R()
}
function ay() {
return ((X === 1 || !a) && (isNaN(ah) || ah < aw.threshold))
}
function a1() {
return ((ac > aw.longTapThreshold) && (ah < r))
}
function ai() {
return !!(ay() && a7())
}
function aH() {
return !!(R() && Z())
}
function aq() {
return !!(a1() && aV())
}
function G() {
a6 = au();
ae = event.touches.length + 1
}
function S() {
a6 = 0;
ae = 0
}
function an() {
var bc = false;
if (a6) {
var bd = au() - a6;
if (bd <= aw.fingerReleaseThreshold) {
bc = true
}
}
return bc
}
function aC() {
return !!(aS.data(C + "_intouch") === true)
}
function ap(bc) {
if (bc === true) {
aS.bind(az, a4);
aS.bind(V, M);
if (T) {
aS.bind(T, L)
}
} else {
aS.unbind(az, a4, false);
aS.unbind(V, M, false);
if (T) {
aS.unbind(T, L, false)
}
}
aS.data(C + "_intouch", bc === true)
}
function aj(bd, bc) {
var be = bc.identifier !== undefined ? bc.identifier : 0;
aR[bd].identifier = be;
aR[bd].start.x = aR[bd].end.x = bc.pageX || bc.clientX;
aR[bd].start.y = aR[bd].end.y = bc.pageY || bc.clientY;
return aR[bd]
}
function aI(bc) {
var be = bc.identifier !== undefined ? bc.identifier : 0;
var bd = ad(be);
bd.end.x = bc.pageX || bc.clientX;
bd.end.y = bc.pageY || bc.clientY;
return bd
}
function ad(bd) {
for (var bc = 0; bc < aR.length; bc++) {
if (aR[bc].identifier == bd) {
return aR[bc]
}
}
}
function ak() {
var bc = [];
for (var bd = 0; bd <= 5; bd++) {
bc.push({
start: {
x: 0,
y: 0
},
end: {
x: 0,
y: 0
},
identifier: 0
})
}
return bc
}
function aJ(bc, bd) {
bd = Math.max(bd, aU(bc));
N[bc].distance = bd
}
function aU(bc) {
if (N[bc]) {
return N[bc].distance
}
return undefined
}
function ab() {
var bc = {};
bc[p] = ax(p);
bc[o] = ax(o);
bc[e] = ax(e);
bc[x] = ax(x);
return bc
}
function ax(bc) {
return {
direction: bc,
distance: 0
}
}
function aN() {
return a3 - U
}
function av(bf, be) {
var bd = Math.abs(bf.x - be.x);
var bc = Math.abs(bf.y - be.y);
return Math.round(Math.sqrt(bd * bd + bc * bc))
}
function a8(bc, bd) {
var be = (bd / bc) * 1;
return be.toFixed(2)
}
function at() {
if (H < 1) {
return A
} else {
return c
}
}
function aT(bd, bc) {
return Math.round(Math.sqrt(Math.pow(bc.x - bd.x, 2) + Math.pow(bc.y - bd.y, 2)))
}
function aF(bf, bd) {
var bc = bf.x - bd.x;
var bh = bd.y - bf.y;
var be = Math.atan2(bh, bc);
var bg = Math.round(be * 180 / Math.PI);
if (bg < 0) {
bg = 360 - Math.abs(bg)
}
return bg
}
function aM(bd, bc) {
var be = aF(bd, bc);
if ((be <= 45) && (be >= 0)) {
return p
} else {
if ((be <= 360) && (be >= 315)) {
return p
} else {
if ((be >= 135) && (be <= 225)) {
return o
} else {
if ((be > 45) && (be < 135)) {
return x
} else {
return e
}
}
}
}
}
function au() {
var bc = new Date();
return bc.getTime()
}
function aZ(bc) {
bc = f(bc);
var be = bc.offset();
var bd = {
left: be.left,
right: be.left + bc.outerWidth(),
top: be.top,
bottom: be.top + bc.outerHeight()
};
return bd
}
function F(bc, bd) {
return (bc.x > bd.left && bc.x < bd.right && bc.y > bd.top && bc.y < bd.bottom)
}
}
}));
if (typeof(console) === 'undefined') {
var console = {};
console.log = console.error = console.info = console.debug = console.warn = console.trace = console.dir = console.dirxml = console.group = console.groupEnd = console.time = console.timeEnd = console.assert = console.profile = console.groupCollapsed = function() {};
}
if (window.tplogs == true)
try {
console.groupCollapsed("ThemePunch GreenSocks Logs");
} catch (e) {}
var oldgs = window.GreenSockGlobals;
oldgs_queue = window._gsQueue;
var punchgs = window.GreenSockGlobals = {};
if (window.tplogs == true)
try {
console.info("Build GreenSock SandBox for ThemePunch Plugins");
console.info("GreenSock TweenLite Engine Initalised by ThemePunch Plugin");
} catch (e) {}
/* TWEEN LITE */
/*!
* VERSION: 1.19.1
* DATE: 2017-01-17
* UPDATES AND DOCS AT: http://greensock.com
*
* @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
*/
! 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, s = f.length, t = s; --s > -1;)(l = q[f[s]] || new r(f[s], [])).gsClass ? (i[s] = l.gsClass, t--) : j && l.sc.push(this);
if (0 === t && 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, p = "undefined" != typeof module && module.exports, !p && "function" == typeof define && define.amd) define((a.GreenSockAMDPath ? a.GreenSockAMDPath + "/" : "") + d.split(".").pop(), [], function() {
return o
});
else if (p)
if (d === b) {
module.exports = c[b] = o;
for (s in c) o[s] = c[s]
} else c[b] && (c[b][n] = o);
for (s = 0; s < this.sc.length; s++) this.sc[s].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, W) {
j || i.wake();
var c = this.vars.useFrames ? V : W;
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 && i.wake(), setTimeout(E, 2e3)
};
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
}, 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 && Y(), this.render(a, b, !1), J.length && Y())
}
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._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 ? U[G.defaultOverwrite] : "number" == typeof i ? i >> 0 : U[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] = Z(f, this, !1), 1 === i && this._siblings[e].length > 1 && _(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 = Z(b, this, !1), 1 === i && this._siblings.length > 1 && _(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) T[c] || c in b && "transform" !== c && "x" !== c && "y" !== c && "width" !== c && "height" !== c && "className" !== c && "border" !== c || !(!Q[c] || Q[c] && Q[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.19.1", 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 = function(a) {
for (var b, c = this._firstPT, d = 1e-6; c;) b = c.blob ? 1 === a ? 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
},
N = 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 = M, l
},
O = 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 = N(m, n ? 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
},
P = G._internals = {
isArray: p,
isSelector: H,
lazyTweens: J,
blobDif: N
},
Q = G._plugins = {},
R = P.tweenLookup = {},
S = 0,
T = P.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
},
U = {
none: 0,
all: 1,
auto: 2,
concurrent: 3,
allOnStart: 4,
preexisting: 5,
"true": 1,
"false": 0
},
V = D._rootFramesTimeline = new F,
W = D._rootTimeline = new F,
X = 30,
Y = P.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
};
W._startTime = i.time, V._startTime = i.frame, W._active = V._active = !0, setTimeout(Y, 1), D._updateRoot = G.render = function() {
var a, b, c;
if (J.length && Y(), W.render((i.time - W._startTime) * W._timeScale, !1, !1), V.render((i.frame - V._startTime) * V._timeScale, !1, !1), J.length && Y(), i.frame >= X) {
X = i.frame + (parseInt(G.autoSleep, 10) || 120);
for (c in R) {
for (b = R[c].tweens, a = b.length; --a > -1;) b[a]._gc && b.splice(a, 1);
0 === b.length && delete R[c]
}
if (c = W._first, (!c || c._paused) && G.autoSleep && !V._first && 1 === i._listeners.tick.length) {
for (; c && c._paused;) c = c._next;
c || i.sleep()
}
}
}, i.addEventListener("tick", D._updateRoot);
var Z = function(a, b, c) {
var d, e, f = a._gsTweenID;
if (R[f || (a._gsTweenID = f = "t" + S++)] || (R[f] = {
target: a,
tweens: []
}), b && (d = R[f].tweens, d[e = d.length] = b, c))
for (; --e > -1;) d[e] === b && d.splice(e, 1);
return R[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
},
_ = 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 || aa(b, 0, o), 0 === aa(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
},
aa = 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, 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) T[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] && Y(), this.vars.css || b.style && b !== a && b.nodeType && Q.css && this.vars.autoCSS !== !1 && I(this.vars, b);
for (g in this.vars)
if (l = this.vars[g], T[g]) l && (l instanceof Array || l.push && p(l)) && -1 !== l.join("").indexOf("{self}") && (this.vars[g] = l = this._swapSelfInParams(l, this));
else if (Q[g] && (j = new Q[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] = O.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 && _(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 || (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] = Z(d[c], this, !0);
else this._siblings = Z(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
for (d = Z(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 ba = t("plugins.TweenPlugin", function(a, b) {
this._overwriteProps = (a || "").split(","), this._propName = this._overwriteProps[0], this._priority = b || 0, this._super = ba.prototype
}, !0);
if (h = ba.prototype, ba.version = "1.19.0", ba.API = 2, h._firstPT = null, h._addTween = O, h.setRatio = M, 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
}, ba.activate = function(a) {
for (var b = a.length; --b > -1;) a[b].API === ba.API && (Q[(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() {
ba.call(this, c, d), this._overwriteProps = e || []
}, a.global === !0),
h = g.prototype = new ba(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, ba.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");
/* TIME LINE LITE */
/*!
* VERSION: 1.17.0
* DATE: 2015-05-27
* UPDATES AND DOCS AT: http://greensock.com
*
* @license Copyright (c) 2008-2015, 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("TimelineLite", ["core.Animation", "core.SimpleTimeline", "TweenLite"], function(t, e, i) {
var s = function(t) {
e.call(this, t), this._labels = {}, this.autoRemoveChildren = this.vars.autoRemoveChildren === !0, this.smoothChildTiming = this.vars.smoothChildTiming === !0, this._sortChildren = !0, this._onUpdate = this.vars.onUpdate;
var i, s, r = this.vars;
for (s in r) i = r[s], h(i) && -1 !== i.join("").indexOf("{self}") && (r[s] = this._swapSelfInParams(i));
h(r.tweens) && this.add(r.tweens, 0, r.align, r.stagger)
},
r = 1e-10,
n = i._internals,
a = s._internals = {},
o = n.isSelector,
h = n.isArray,
l = n.lazyTweens,
_ = n.lazyRender,
u = [],
f = _gsScope._gsDefine.globals,
c = function(t) {
var e, i = {};
for (e in t) i[e] = t[e];
return i
},
p = a.pauseCallback = function(t, e, i, s) {
var n, a = t._timeline,
o = a._totalTime,
h = t._startTime,
l = 0 > t._rawPrevTime || 0 === t._rawPrevTime && a._reversed,
_ = l ? 0 : r,
f = l ? r : 0;
if (e || !this._forcingPlayhead) {
for (a.pause(h), n = t._prev; n && n._startTime === h;) n._rawPrevTime = f, n = n._prev;
for (n = t._next; n && n._startTime === h;) n._rawPrevTime = _, n = n._next;
e && e.apply(s || a.vars.callbackScope || a, i || u), (this._forcingPlayhead || !a._paused) && a.seek(o)
}
},
m = function(t) {
var e, i = [],
s = t.length;
for (e = 0; e !== s; i.push(t[e++]));
return i
},
d = s.prototype = new e;
return s.version = "1.17.0", d.constructor = s, d.kill()._gc = d._forcingPlayhead = !1, d.to = function(t, e, s, r) {
var n = s.repeat && f.TweenMax || i;
return e ? this.add(new n(t, e, s), r) : this.set(t, s, r)
}, d.from = function(t, e, s, r) {
return this.add((s.repeat && f.TweenMax || i).from(t, e, s), r)
}, d.fromTo = function(t, e, s, r, n) {
var a = r.repeat && f.TweenMax || i;
return e ? this.add(a.fromTo(t, e, s, r), n) : this.set(t, r, n)
}, d.staggerTo = function(t, e, r, n, a, h, l, _) {
var u, f = new s({
onComplete: h,
onCompleteParams: l,
callbackScope: _,
smoothChildTiming: this.smoothChildTiming
});
for ("string" == typeof t && (t = i.selector(t) || t), t = t || [], o(t) && (t = m(t)), n = n || 0, 0 > n && (t = m(t), t.reverse(), n *= -1), u = 0; t.length > u; u++) r.startAt && (r.startAt = c(r.startAt)), f.to(t[u], e, c(r), u * n);
return this.add(f, a)
}, d.staggerFrom = function(t, e, i, s, r, n, a, o) {
return i.immediateRender = 0 != i.immediateRender, i.runBackwards = !0, this.staggerTo(t, e, i, s, r, n, a, o)
}, d.staggerFromTo = function(t, e, i, s, r, n, a, o, h) {
return s.startAt = i, s.immediateRender = 0 != s.immediateRender && 0 != i.immediateRender, this.staggerTo(t, e, s, r, n, a, o, h)
}, d.call = function(t, e, s, r) {
return this.add(i.delayedCall(0, t, e, s), r)
}, d.set = function(t, e, s) {
return s = this._parseTimeOrLabel(s, 0, !0), null == e.immediateRender && (e.immediateRender = s === this._time && !this._paused), this.add(new i(t, 0, e), s)
}, s.exportRoot = function(t, e) {
t = t || {}, null == t.smoothChildTiming && (t.smoothChildTiming = !0);
var r, n, a = new s(t),
o = a._timeline;
for (null == e && (e = !0), o._remove(a, !0), a._startTime = 0, a._rawPrevTime = a._time = a._totalTime = o._time, r = o._first; r;) n = r._next, e && r instanceof i && r.target === r.vars.onComplete || a.add(r, r._startTime - r._delay), r = n;
return o.add(a, 0), a
}, d.add = function(r, n, a, o) {
var l, _, u, f, c, p;
if ("number" != typeof n && (n = this._parseTimeOrLabel(n, 0, !0, r)), !(r instanceof t)) {
if (r instanceof Array || r && r.push && h(r)) {
for (a = a || "normal", o = o || 0, l = n, _ = r.length, u = 0; _ > u; u++) h(f = r[u]) && (f = new s({
tweens: f
})), this.add(f, l), "string" != typeof f && "function" != typeof f && ("sequence" === a ? l = f._startTime + f.totalDuration() / f._timeScale : "start" === a && (f._startTime -= f.delay())), l += o;
return this._uncache(!0)
}
if ("string" == typeof r) return this.addLabel(r, n);
if ("function" != typeof r) throw "Cannot add " + r + " into the timeline; it is not a tween, timeline, function, or string.";
r = i.delayedCall(0, r)
}
if (e.prototype.add.call(this, r, n), (this._gc || this._time === this._duration) && !this._paused && this._duration < this.duration())
for (c = this, p = c.rawTime() > r._startTime; c._timeline;) p && c._timeline.smoothChildTiming ? c.totalTime(c._totalTime, !0) : c._gc && c._enabled(!0, !1), c = c._timeline;
return this
}, d.remove = function(e) {
if (e instanceof t) return this._remove(e, !1);
if (e instanceof Array || e && e.push && h(e)) {
for (var i = e.length; --i > -1;) this.remove(e[i]);
return this
}
return "string" == typeof e ? this.removeLabel(e) : this.kill(null, e)
}, d._remove = function(t, i) {
e.prototype._remove.call(this, t, i);
var s = this._last;
return s ? this._time > s._startTime + s._totalDuration / s._timeScale && (this._time = this.duration(), this._totalTime = this._totalDuration) : this._time = this._totalTime = this._duration = this._totalDuration = 0, this
}, d.append = function(t, e) {
return this.add(t, this._parseTimeOrLabel(null, e, !0, t))
}, d.insert = d.insertMultiple = function(t, e, i, s) {
return this.add(t, e || 0, i, s)
}, d.appendMultiple = function(t, e, i, s) {
return this.add(t, this._parseTimeOrLabel(null, e, !0, t), i, s)
}, d.addLabel = function(t, e) {
return this._labels[t] = this._parseTimeOrLabel(e), this
}, d.addPause = function(t, e, s, r) {
var n = i.delayedCall(0, p, ["{self}", e, s, r], this);
return n.data = "isPause", this.add(n, t)
}, d.removeLabel = function(t) {
return delete this._labels[t], this
}, d.getLabelTime = function(t) {
return null != this._labels[t] ? this._labels[t] : -1
}, d._parseTimeOrLabel = function(e, i, s, r) {
var n;
if (r instanceof t && r.timeline === this) this.remove(r);
else if (r && (r instanceof Array || r.push && h(r)))
for (n = r.length; --n > -1;) r[n] instanceof t && r[n].timeline === this && this.remove(r[n]);
if ("string" == typeof i) return this._parseTimeOrLabel(i, s && "number" == typeof e && null == this._labels[i] ? e - this.duration() : 0, s);
if (i = i || 0, "string" != typeof e || !isNaN(e) && null == this._labels[e]) null == e && (e = this.duration());
else {
if (n = e.indexOf("="), -1 === n) return null == this._labels[e] ? s ? this._labels[e] = this.duration() + i : i : this._labels[e] + i;
i = parseInt(e.charAt(n - 1) + "1", 10) * Number(e.substr(n + 1)), e = n > 1 ? this._parseTimeOrLabel(e.substr(0, n - 1), 0, s) : this.duration()
}
return Number(e) + i
}, d.seek = function(t, e) {
return this.totalTime("number" == typeof t ? t : this._parseTimeOrLabel(t), e !== !1)
}, d.stop = function() {
return this.paused(!0)
}, d.gotoAndPlay = function(t, e) {
return this.play(t, e)
}, d.gotoAndStop = function(t, e) {
return this.pause(t, e)
}, d.render = function(t, e, i) {
this._gc && this._enabled(!0, !1);
var s, n, a, o, h, u = this._dirty ? this.totalDuration() : this._totalDuration,
f = this._time,
c = this._startTime,
p = this._timeScale,
m = this._paused;
if (t >= u) this._totalTime = this._time = u, this._reversed || this._hasPausedChild() || (n = !0, o = "onComplete", h = !!this._timeline.autoRemoveChildren, 0 === this._duration && (0 === t || 0 > this._rawPrevTime || this._rawPrevTime === r) && this._rawPrevTime !== t && this._first && (h = !0, this._rawPrevTime > r && (o = "onReverseComplete"))), this._rawPrevTime = this._duration || !e || t || this._rawPrevTime === t ? t : r, t = u + 1e-4;
else if (1e-7 > t)
if (this._totalTime = this._time = 0, (0 !== f || 0 === this._duration && this._rawPrevTime !== r && (this._rawPrevTime > 0 || 0 > t && this._rawPrevTime >= 0)) && (o = "onReverseComplete", n = this._reversed), 0 > t) this._active = !1, this._timeline.autoRemoveChildren && this._reversed ? (h = n = !0, o = "onReverseComplete") : this._rawPrevTime >= 0 && this._first && (h = !0), this._rawPrevTime = t;
else {
if (this._rawPrevTime = this._duration || !e || t || this._rawPrevTime === t ? t : r, 0 === t && n)
for (s = this._first; s && 0 === s._startTime;) s._duration || (n = !1), s = s._next;
t = 0, this._initted || (h = !0)
}
else this._totalTime = this._time = this._rawPrevTime = t;
if (this._time !== f && this._first || i || h) {
if (this._initted || (this._initted = !0), this._active || !this._paused && this._time !== f && t > 0 && (this._active = !0), 0 === f && this.vars.onStart && 0 !== this._time && (e || this._callback("onStart")), this._time >= f)
for (s = this._first; s && (a = s._next, !this._paused || m);)(s._active || s._startTime <= this._time && !s._paused && !s._gc) && (s._reversed ? s.render((s._dirty ? s.totalDuration() : s._totalDuration) - (t - s._startTime) * s._timeScale, e, i) : s.render((t - s._startTime) * s._timeScale, e, i)), s = a;
else
for (s = this._last; s && (a = s._prev, !this._paused || m);)(s._active || f >= s._startTime && !s._paused && !s._gc) && (s._reversed ? s.render((s._dirty ? s.totalDuration() : s._totalDuration) - (t - s._startTime) * s._timeScale, e, i) : s.render((t - s._startTime) * s._timeScale, e, i)), s = a;
this._onUpdate && (e || (l.length && _(), this._callback("onUpdate"))), o && (this._gc || (c === this._startTime || p !== this._timeScale) && (0 === this._time || u >= this.totalDuration()) && (n && (l.length && _(), this._timeline.autoRemoveChildren && this._enabled(!1, !1), this._active = !1), !e && this.vars[o] && this._callback(o)))
}
}, d._hasPausedChild = function() {
for (var t = this._first; t;) {
if (t._paused || t instanceof s && t._hasPausedChild()) return !0;
t = t._next
}
return !1
}, d.getChildren = function(t, e, s, r) {
r = r || -9999999999;
for (var n = [], a = this._first, o = 0; a;) r > a._startTime || (a instanceof i ? e !== !1 && (n[o++] = a) : (s !== !1 && (n[o++] = a), t !== !1 && (n = n.concat(a.getChildren(!0, e, s)), o = n.length))), a = a._next;
return n
}, d.getTweensOf = function(t, e) {
var s, r, n = this._gc,
a = [],
o = 0;
for (n && this._enabled(!0, !0), s = i.getTweensOf(t), r = s.length; --r > -1;)(s[r].timeline === this || e && this._contains(s[r])) && (a[o++] = s[r]);
return n && this._enabled(!1, !0), a
}, d.recent = function() {
return this._recent
}, d._contains = function(t) {
for (var e = t.timeline; e;) {
if (e === this) return !0;
e = e.timeline
}
return !1
}, d.shiftChildren = function(t, e, i) {
i = i || 0;
for (var s, r = this._first, n = this._labels; r;) r._startTime >= i && (r._startTime += t), r = r._next;
if (e)
for (s in n) n[s] >= i && (n[s] += t);
return this._uncache(!0)
}, d._kill = function(t, e) {
if (!t && !e) return this._enabled(!1, !1);
for (var i = e ? this.getTweensOf(e) : this.getChildren(!0, !0, !1), s = i.length, r = !1; --s > -1;) i[s]._kill(t, e) && (r = !0);
return r
}, d.clear = function(t) {
var e = this.getChildren(!1, !0, !0),
i = e.length;
for (this._time = this._totalTime = 0; --i > -1;) e[i]._enabled(!1, !1);
return t !== !1 && (this._labels = {}), this._uncache(!0)
}, d.invalidate = function() {
for (var e = this._first; e;) e.invalidate(), e = e._next;
return t.prototype.invalidate.call(this)
}, d._enabled = function(t, i) {
if (t === this._gc)
for (var s = this._first; s;) s._enabled(t, !0), s = s._next;
return e.prototype._enabled.call(this, t, i)
}, d.totalTime = function() {
this._forcingPlayhead = !0;
var e = t.prototype.totalTime.apply(this, arguments);
return this._forcingPlayhead = !1, e
}, d.duration = function(t) {
return arguments.length ? (0 !== this.duration() && 0 !== t && this.timeScale(this._duration / t), this) : (this._dirty && this.totalDuration(), this._duration)
}, d.totalDuration = function(t) {
if (!arguments.length) {
if (this._dirty) {
for (var e, i, s = 0, r = this._last, n = 999999999999; r;) e = r._prev, r._dirty && r.totalDuration(), r._startTime > n && this._sortChildren && !r._paused ? this.add(r, r._startTime - r._delay) : n = r._startTime, 0 > r._startTime && !r._paused && (s -= r._startTime, this._timeline.smoothChildTiming && (this._startTime += r._startTime / this._timeScale), this.shiftChildren(-r._startTime, !1, -9999999999), n = 0), i = r._startTime + r._totalDuration / r._timeScale, i > s && (s = i), r = e;
this._duration = this._totalDuration = s, this._dirty = !1
}
return this._totalDuration
}
return 0 !== this.totalDuration() && 0 !== t && this.timeScale(this._totalDuration / t), this
}, d.paused = function(e) {
if (!e)
for (var i = this._first, s = this._time; i;) i._startTime === s && "isPause" === i.data && (i._rawPrevTime = 0), i = i._next;
return t.prototype.paused.apply(this, arguments)
}, d.usesFrames = function() {
for (var e = this._timeline; e._timeline;) e = e._timeline;
return e === t._rootFramesTimeline
}, d.rawTime = function() {
return this._paused ? this._totalTime : (this._timeline.rawTime() - this._startTime) * this._timeScale
}, s
}, !0)
}), _gsScope._gsDefine && _gsScope._gsQueue.pop()(),
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 && (require("./TweenLite.js"), module.exports = e())
}("TimelineLite");
/* EASING PLUGIN*/
/*!
* VERSION: 1.15.5
* DATE: 2016-07-08
* UPDATES AND DOCS AT: http://greensock.com
*
* @license Copyright (c) 2008-2016, 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("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) {
a = a || 1, this._p1 = 1 / a, this._p2 = a + 1
}, !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._p1
}, q.config = b.config = function(a) {
return new b(a)
}, 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() {
"use strict";
var a = function() {
return _gsScope.GreenSockGlobals || _gsScope
};
"function" == typeof define && define.amd ? define(["TweenLite"], a) : "undefined" != typeof module && module.exports && (require("../TweenLite.js"), module.exports = a())
}();
/* CSS PLUGIN */
/*!
* VERSION: 1.19.1
* DATE: 2017-01-17
* UPDATES AND DOCS AT: http://greensock.com
*
* @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("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.19.1", 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) 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), "%" === 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, 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))
}
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 = f.length ? "" : 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, 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(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(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, c && 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), x = x * v + B * w, t = y * v + C * w, C = y * -w + C * v, D = z * -w + D * v, y = t), m.rotationX && Math.abs(m.rotationX) + Math.abs(m.rotation) > 359.9 && (m.rotationX = m.rotation = 0, m.rotationY = 180 - m.rotationY), m.scaleX = (Math.sqrt(x * x + y * y) * p + .5 | 0) / p, m.scaleY = (Math.sqrt(C * C + G * G) * p + .5 | 0) / p, m.scaleZ = (Math.sqrt(D * D + H * H) * p + .5 | 0) / p, m.rotationX || m.rotationY ? m.skewX = 0 : (m.skewX = B || C ? Math.atan2(B, C) * L + m.rotation : m.skewX || 0, 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.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, Math.abs(l) > 90 && Math.abs(l) < 270 && (n ? (i *= -1, l += 0 >= k ? 180 : -180, k += 0 >= k ? 180 : -180) : (j *= -1, l += 0 >= l ? 180 : -180)), 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))
}
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._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), 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), D.skewType = A.skewType || D.skewType || g.defaultSkewType, 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) n = b[g], "function" == typeof n && (n = n(r, q)), h = i[g], h ? c = h.parse(a, n, g, this, c, f, b) : (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 && (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)
}), _gsScope._gsDefine && _gsScope._gsQueue.pop()(),
function(a) {
"use strict";
var b = function() {
return (_gsScope.GreenSockGlobals || _gsScope)[a]
};
"function" == typeof define && define.amd ? define(["TweenLite"], b) : "undefined" != typeof module && module.exports && (require("../TweenLite.js"), module.exports = b())
}("CSSPlugin");
/* SPLIT TEXT UTIL */
/*!
* VERSION: 0.5.6
* DATE: 2017-01-17
* UPDATES AND DOCS AT: http://greensock.com
*
* @license Copyright (c) 2008-2017, 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://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(a) {
"use strict";
var b = a.GreenSockGlobals || a,
c = function(a) {
var c, d = a.split("."),
e = b;
for (c = 0; c < d.length; c++) e[d[c]] = e = e[d[c]] || {};
return e
},
d = c("com.greensock.utils"),
e = function(a) {
var b = a.nodeType,
c = "";
if (1 === b || 9 === b || 11 === b) {
if ("string" == typeof a.textContent) return a.textContent;
for (a = a.firstChild; a; a = a.nextSibling) c += e(a)
} else if (3 === b || 4 === b) return a.nodeValue;
return c
},
f = document,
g = f.defaultView ? f.defaultView.getComputedStyle : function() {},
h = /([A-Z])/g,
i = function(a, b, c, d) {
var e;
return (c = c || g(a, null)) ? (a = c.getPropertyValue(b.replace(h, "-$1").toLowerCase()), e = a || c.length ? a : c[b]) : a.currentStyle && (c = a.currentStyle, e = c[b]), d ? e : parseInt(e, 10) || 0
},
j = function(a) {
return a.length && a[0] && (a[0].nodeType && a[0].style && !a.nodeType || a[0].length && a[0][0]) ? !0 : !1
},
k = function(a) {
var b, c, d, e = [],
f = a.length;
for (b = 0; f > b; b++)
if (c = a[b], j(c))
for (d = c.length, d = 0; d < c.length; d++) e.push(c[d]);
else e.push(c);
return e
},
l = /(?:\r|\n|\t\t)/g,
m = /(?:\s\s+)/g,
n = 55296,
o = 56319,
p = 56320,
q = 127462,
r = 127487,
s = 127995,
t = 127999,
u = function(a) {
return (a.charCodeAt(0) - n << 10) + (a.charCodeAt(1) - p) + 65536
},
v = f.all && !f.addEventListener,
w = " style='position:relative;display:inline-block;" + (v ? "*display:inline;*zoom:1;'" : "'"),
x = function(a, b) {
a = a || "";
var c = -1 !== a.indexOf("++"),
d = 1;
return c && (a = a.split("++").join("")),
function() {
return "<" + b + w + (a ? " class='" + a + (c ? d++ : "") + "'>" : ">")
}
},
y = d.SplitText = b.SplitText = function(a, b) {
if ("string" == typeof a && (a = y.selector(a)), !a) throw "cannot split a null element.";
this.elements = j(a) ? k(a) : [a], this.chars = [], this.words = [], this.lines = [], this._originals = [], this.vars = b || {}, this.split(b)
},
z = function(a, b, c) {
var d = a.nodeType;
if (1 === d || 9 === d || 11 === d)
for (a = a.firstChild; a; a = a.nextSibling) z(a, b, c);
else(3 === d || 4 === d) && (a.nodeValue = a.nodeValue.split(b).join(c))
},
A = function(a, b) {
for (var c = b.length; --c > -1;) a.push(b[c])
},
B = function(a) {
var b, c = [],
d = a.length;
for (b = 0; b !== d; c.push(a[b++]));
return c
},
C = function(a, b, c) {
for (var d; a && a !== b;) {
if (d = a._next || a.nextSibling) return d.textContent.charAt(0) === c;
a = a.parentNode || a._parent
}
return !1
},
D = function(a) {
var b, c, d = B(a.childNodes),
e = d.length;
for (b = 0; e > b; b++) c = d[b], c._isSplit ? D(c) : (b && 3 === c.previousSibling.nodeType ? c.previousSibling.nodeValue += 3 === c.nodeType ? c.nodeValue : c.firstChild.nodeValue : 3 !== c.nodeType && a.insertBefore(c.firstChild, c), a.removeChild(c))
},
E = function(a, b, c, d, e, h, j) {
var k, l, m, n, o, p, q, r, s, t, u, v, w = g(a),
x = i(a, "paddingLeft", w),
y = -999,
B = i(a, "borderBottomWidth", w) + i(a, "borderTopWidth", w),
E = i(a, "borderLeftWidth", w) + i(a, "borderRightWidth", w),
F = i(a, "paddingTop", w) + i(a, "paddingBottom", w),
G = i(a, "paddingLeft", w) + i(a, "paddingRight", w),
H = .2 * i(a, "fontSize"),
I = i(a, "textAlign", w, !0),
J = [],
K = [],
L = [],
M = b.wordDelimiter || " ",
N = b.span ? "span" : "div",
O = b.type || b.split || "chars,words,lines",
P = e && -1 !== O.indexOf("lines") ? [] : null,
Q = -1 !== O.indexOf("words"),
R = -1 !== O.indexOf("chars"),
S = "absolute" === b.position || b.absolute === !0,
T = b.linesClass,
U = -1 !== (T || "").indexOf("++"),
V = [];
for (P && 1 === a.children.length && a.children[0]._isSplit && (a = a.children[0]), U && (T = T.split("++").join("")), l = a.getElementsByTagName("*"), m = l.length, o = [], k = 0; m > k; k++) o[k] = l[k];
if (P || S)
for (k = 0; m > k; k++) n = o[k], p = n.parentNode === a, (p || S || R && !Q) && (v = n.offsetTop, P && p && Math.abs(v - y) > H && "BR" !== n.nodeName && (q = [], P.push(q), y = v), S && (n._x = n.offsetLeft, n._y = v, n._w = n.offsetWidth, n._h = n.offsetHeight), P && ((n._isSplit && p || !R && p || Q && p || !Q && n.parentNode.parentNode === a && !n.parentNode._isSplit) && (q.push(n), n._x -= x, C(n, a, M) && (n._wordEnd = !0)), "BR" === n.nodeName && n.nextSibling && "BR" === n.nextSibling.nodeName && P.push([])));
for (k = 0; m > k; k++) n = o[k], p = n.parentNode === a, "BR" !== n.nodeName ? (S && (s = n.style, Q || p || (n._x += n.parentNode._x, n._y += n.parentNode._y), s.left = n._x + "px", s.top = n._y + "px", s.position = "absolute", s.display = "block", s.width = n._w + 1 + "px", s.height = n._h + "px"), !Q && R ? n._isSplit ? (n._next = n.nextSibling, n.parentNode.appendChild(n)) : n.parentNode._isSplit ? (n._parent = n.parentNode, !n.previousSibling && n.firstChild && (n.firstChild._isFirst = !0), n.nextSibling && " " === n.nextSibling.textContent && !n.nextSibling.nextSibling && V.push(n.nextSibling), n._next = n.nextSibling && n.nextSibling._isFirst ? null : n.nextSibling, n.parentNode.removeChild(n), o.splice(k--, 1), m--) : p || (v = !n.nextSibling && C(n.parentNode, a, M), n.parentNode._parent && n.parentNode._parent.appendChild(n), v && n.parentNode.appendChild(f.createTextNode(" ")), b.span && (n.style.display = "inline"), J.push(n)) : n.parentNode._isSplit && !n._isSplit && "" !== n.innerHTML ? K.push(n) : R && !n._isSplit && (b.span && (n.style.display = "inline"), J.push(n))) : P || S ? (n.parentNode && n.parentNode.removeChild(n), o.splice(k--, 1), m--) : Q || a.appendChild(n);
for (k = V.length; --k > -1;) V[k].parentNode.removeChild(V[k]);
if (P) {
for (S && (t = f.createElement(N), a.appendChild(t), u = t.offsetWidth + "px", v = t.offsetParent === a ? 0 : a.offsetLeft, a.removeChild(t)), s = a.style.cssText, a.style.cssText = "display:none;"; a.firstChild;) a.removeChild(a.firstChild);
for (r = " " === M && (!S || !Q && !R), k = 0; k < P.length; k++) {
for (q = P[k], t = f.createElement(N), t.style.cssText = "display:block;text-align:" + I + ";position:" + (S ? "absolute;" : "relative;"), T && (t.className = T + (U ? k + 1 : "")), L.push(t), m = q.length, l = 0; m > l; l++) "BR" !== q[l].nodeName && (n = q[l], t.appendChild(n), r && n._wordEnd && t.appendChild(f.createTextNode(" ")), S && (0 === l && (t.style.top = n._y + "px", t.style.left = x + v + "px"), n.style.top = "0px", v && (n.style.left = n._x - v + "px")));
0 === m ? t.innerHTML = " " : Q || R || (D(t), z(t, String.fromCharCode(160), " ")), S && (t.style.width = u, t.style.height = n._h + "px"), a.appendChild(t)
}
a.style.cssText = s
}
S && (j > a.clientHeight && (a.style.height = j - F + "px", a.clientHeight < j && (a.style.height = j + B + "px")), h > a.clientWidth && (a.style.width = h - G + "px", a.clientWidth < h && (a.style.width = h + E + "px"))), A(c, J), A(d, K), A(e, L)
},
F = function(a, b, c, d) {
var g, h, i, j, k, p, v, w, x, y = b.span ? "span" : "div",
A = b.type || b.split || "chars,words,lines",
B = (-1 !== A.indexOf("words"), -1 !== A.indexOf("chars")),
C = "absolute" === b.position || b.absolute === !0,
D = b.wordDelimiter || " ",
E = " " !== D ? "" : C ? "­ " : " ",
F = b.span ? "</span>" : "</div>",
G = !0,
H = f.createElement("div"),
I = a.parentNode;
for (I.insertBefore(H, a), H.textContent = a.nodeValue, I.removeChild(a), a = H, g = e(a), v = -1 !== g.indexOf("<"), b.reduceWhiteSpace !== !1 && (g = g.replace(m, " ").replace(l, "")), v && (g = g.split("<").join("{{LT}}")), k = g.length, h = (" " === g.charAt(0) ? E : "") + c(), i = 0; k > i; i++)
if (p = g.charAt(i), p === D && g.charAt(i - 1) !== D && i) {
for (h += G ? F : "", G = !1; g.charAt(i + 1) === D;) h += E, i++;
i === k - 1 ? h += E : ")" !== g.charAt(i + 1) && (h += E + c(), G = !0)
} else "{" === p && "{{LT}}" === g.substr(i, 6) ? (h += B ? d() + "{{LT}}</" + y + ">" : "{{LT}}", i += 5) : p.charCodeAt(0) >= n && p.charCodeAt(0) <= o || g.charCodeAt(i + 1) >= 65024 && g.charCodeAt(i + 1) <= 65039 ? (w = u(g.substr(i, 2)), x = u(g.substr(i + 2, 2)), j = w >= q && r >= w && x >= q && r >= x || x >= s && t >= x ? 4 : 2, h += B && " " !== p ? d() + g.substr(i, j) + "</" + y + ">" : g.substr(i, j), i += j - 1) : h += B && " " !== p ? d() + p + "</" + y + ">" : p;
a.outerHTML = h + (G ? F : ""), v && z(I, "{{LT}}", "<")
},
G = function(a, b, c, d) {
var e, f, g = B(a.childNodes),
h = g.length,
j = "absolute" === b.position || b.absolute === !0;
if (3 !== a.nodeType || h > 1) {
for (b.absolute = !1, e = 0; h > e; e++) f = g[e], (3 !== f.nodeType || /\S+/.test(f.nodeValue)) && (j && 3 !== f.nodeType && "inline" === i(f, "display", null, !0) && (f.style.display = "inline-block", f.style.position = "relative"), f._isSplit = !0, G(f, b, c, d));
return b.absolute = j, void(a._isSplit = !0)
}
F(a, b, c, d)
},
H = y.prototype;
H.split = function(a) {
this.isSplit && this.revert(), this.vars = a = a || this.vars, this._originals.length = this.chars.length = this.words.length = this.lines.length = 0;
for (var b, c, d, e = this.elements.length, f = a.span ? "span" : "div", g = ("absolute" === a.position || a.absolute === !0, x(a.wordsClass, f)), h = x(a.charsClass, f); --e > -1;) d = this.elements[e], this._originals[e] = d.innerHTML, b = d.clientHeight, c = d.clientWidth, G(d, a, g, h), E(d, a, this.chars, this.words, this.lines, c, b);
return this.chars.reverse(), this.words.reverse(), this.lines.reverse(), this.isSplit = !0, this
}, H.revert = function() {
if (!this._originals) throw "revert() call wasn't scoped properly.";
for (var a = this._originals.length; --a > -1;) this.elements[a].innerHTML = this._originals[a];
return this.chars = [], this.words = [], this.lines = [], this.isSplit = !1, this
}, y.selector = a.$ || a.jQuery || function(b) {
var c = a.$ || a.jQuery;
return c ? (y.selector = c, c(b)) : "undefined" == typeof document ? b : document.querySelectorAll ? document.querySelectorAll(b) : document.getElementById("#" === b.charAt(0) ? b.substr(1) : b)
}, y.version = "0.5.6"
}(_gsScope),
function(a) {
"use strict";
var b = function() {
return (_gsScope.GreenSockGlobals || _gsScope)[a]
};
"function" == typeof define && define.amd ? define([], b) : "undefined" != typeof module && module.exports && (module.exports = b())
}("SplitText");
try {
window.GreenSockGlobals = null;
window._gsQueue = null;
window._gsDefine = null;
delete(window.GreenSockGlobals);
delete(window._gsQueue);
delete(window._gsDefine);
} catch (e) {}
try {
window.GreenSockGlobals = oldgs;
window._gsQueue = oldgs_queue;
} catch (e) {}
if (window.tplogs == true)
try {
console.groupEnd();
} catch (e) {}
(function(e, t) {
e.waitForImages = {
hasImageProperties: ["backgroundImage", "listStyleImage", "borderImage", "borderCornerImage"]
};
e.expr[":"].uncached = function(t) {
var n = document.createElement("img");
n.src = t.src;
return e(t).is('img[src!=""]') && !n.complete
};
e.fn.waitForImages = function(t, n, r) {
if (e.isPlainObject(arguments[0])) {
n = t.each;
r = t.waitForAll;
t = t.finished
}
t = t || e.noop;
n = n || e.noop;
r = !!r;
if (!e.isFunction(t) || !e.isFunction(n)) {
throw new TypeError("An invalid callback was supplied.")
}
return this.each(function() {
var i = e(this),
s = [];
if (r) {
var o = e.waitForImages.hasImageProperties || [],
u = /url\((['"]?)(.*?)\1\)/g;
i.find("*").each(function() {
var t = e(this);
if (t.is("img:uncached")) {
s.push({
src: t.attr("src"),
element: t[0]
})
}
e.each(o, function(e, n) {
var r = t.css(n);
if (!r) {
return true
}
var i;
while (i = u.exec(r)) {
s.push({
src: i[2],
element: t[0]
})
}
})
})
} else {
i.find("img:uncached").each(function() {
s.push({
src: this.src,
element: this
})
})
}
var f = s.length,
l = 0;
if (f == 0) {
t.call(i[0])
}
e.each(s, function(r, s) {
var o = new Image;
e(o).bind("load error", function(e) {
l++;
n.call(s.element, l, f, e.type == "load");
if (l == f) {
t.call(i[0]);
return false
}
});
o.src = s.src
})
})
};
})(jQuery)