-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTweenMax.min.js
More file actions
757 lines (757 loc) · 151 KB
/
Copy pathTweenMax.min.js
File metadata and controls
757 lines (757 loc) · 151 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
/*!
* VERSION: 1.19.0
* DATE: 2016-07-14
* UPDATES AND DOCS AT: http://greensock.com
*
* Includes all of the following: TweenLite, TweenMax, TimelineLite, TimelineMax, EasePack, CSSPlugin, RoundPropsPlugin, BezierPlugin, AttrPlugin, DirectionalRotationPlugin
*
* @license Copyright (c) 2008-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("TweenMax", ["core.Animation", "core.SimpleTimeline", "TweenLite"], function(a, b, c) { var d = function(a) { var b, c = [],
d = a.length; for (b = 0; b !== d; c.push(a[b++])); return c },
e = function(a, b, c) { var d, e, f = a.cycle; for (d in f) e = f[d], a[d] = "function" == typeof e ? e(c, b[c]) : e[c % e.length];
delete a.cycle },
f = function(a, b, d) { c.call(this, a, b, d), this._cycle = 0, this._yoyo = this.vars.yoyo === !0, this._repeat = this.vars.repeat || 0, this._repeatDelay = this.vars.repeatDelay || 0, this._dirty = !0, this.render = f.prototype.render },
g = 1e-10,
h = c._internals,
i = h.isSelector,
j = h.isArray,
k = f.prototype = c.to({}, .1, {}),
l = [];
f.version = "1.19.0", k.constructor = f, k.kill()._gc = !1, f.killTweensOf = f.killDelayedCallsTo = c.killTweensOf, f.getTweensOf = c.getTweensOf, f.lagSmoothing = c.lagSmoothing, f.ticker = c.ticker, f.render = c.render, k.invalidate = function() { return this._yoyo = this.vars.yoyo === !0, this._repeat = this.vars.repeat || 0, this._repeatDelay = this.vars.repeatDelay || 0, this._uncache(!0), c.prototype.invalidate.call(this) }, k.updateTo = function(a, b) { var d, e = this.ratio,
f = this.vars.immediateRender || a.immediateRender;
b && this._startTime < this._timeline._time && (this._startTime = this._timeline._time, this._uncache(!1), this._gc ? this._enabled(!0, !1) : this._timeline.insert(this, this._startTime - this._delay)); for (d in a) this.vars[d] = a[d]; if (this._initted || f)
if (b) this._initted = !1, f && this.render(0, !0, !0);
else if (this._gc && this._enabled(!0, !1), this._notifyPluginsOfEnabled && this._firstPT && c._onPluginEvent("_onDisable", this), this._time / this._duration > .998) { var g = this._totalTime;
this.render(0, !0, !1), this._initted = !1, this.render(g, !0, !1) } else if (this._initted = !1, this._init(), this._time > 0 || f)
for (var h, i = 1 / (1 - e), j = this._firstPT; j;) h = j.s + j.c, j.c *= i, j.s = h - j.c, j = j._next; return this }, k.render = function(a, b, c) { this._initted || 0 === this._duration && this.vars.repeat && this.invalidate(); var d, e, f, i, j, k, l, m, n = this._dirty ? this.totalDuration() : this._totalDuration,
o = this._time,
p = this._totalTime,
q = this._cycle,
r = this._duration,
s = this._rawPrevTime; if (a >= n - 1e-7 ? (this._totalTime = n, this._cycle = this._repeat, this._yoyo && 0 !== (1 & this._cycle) ? (this._time = 0, this.ratio = this._ease._calcEnd ? this._ease.getRatio(0) : 0) : (this._time = r, this.ratio = this._ease._calcEnd ? this._ease.getRatio(1) : 1), this._reversed || (d = !0, e = "onComplete", c = c || this._timeline.autoRemoveChildren), 0 === r && (this._initted || !this.vars.lazy || c) && (this._startTime === this._timeline._duration && (a = 0), (0 > s || 0 >= a && a >= -1e-7 || s === g && "isPause" !== this.data) && s !== a && (c = !0, s > g && (e = "onReverseComplete")), this._rawPrevTime = m = !b || a || s === a ? a : g)) : 1e-7 > a ? (this._totalTime = this._time = this._cycle = 0, this.ratio = this._ease._calcEnd ? this._ease.getRatio(0) : 0, (0 !== p || 0 === r && s > 0) && (e = "onReverseComplete", d = this._reversed), 0 > a && (this._active = !1, 0 === r && (this._initted || !this.vars.lazy || c) && (s >= 0 && (c = !0), this._rawPrevTime = m = !b || a || s === a ? a : g)), this._initted || (c = !0)) : (this._totalTime = this._time = a, 0 !== this._repeat && (i = r + this._repeatDelay, this._cycle = this._totalTime / i >> 0, 0 !== this._cycle && this._cycle === this._totalTime / i && a >= p && this._cycle--, this._time = this._totalTime - this._cycle * i, this._yoyo && 0 !== (1 & this._cycle) && (this._time = r - this._time), this._time > r ? this._time = r : this._time < 0 && (this._time = 0)), this._easeType ? (j = this._time / r, k = this._easeType, l = this._easePower, (1 === k || 3 === k && j >= .5) && (j = 1 - j), 3 === k && (j *= 2), 1 === l ? j *= j : 2 === l ? j *= j * j : 3 === l ? j *= j * j * j : 4 === l && (j *= j * j * j * j), 1 === k ? this.ratio = 1 - j : 2 === k ? this.ratio = j : this._time / r < .5 ? this.ratio = j / 2 : this.ratio = 1 - j / 2) : this.ratio = this._ease.getRatio(this._time / r)), o === this._time && !c && q === this._cycle) return void(p !== this._totalTime && this._onUpdate && (b || this._callback("onUpdate"))); 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 = o, this._totalTime = p, this._rawPrevTime = s, this._cycle = q, h.lazyTweens.push(this), void(this._lazy = [a, b]);
this._time && !d ? this.ratio = this._ease.getRatio(this._time / r) : 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 !== o && a >= 0 && (this._active = !0), 0 === p && (2 === this._initted && a > 0 && this._init(), this._startAt && (a >= 0 ? this._startAt.render(a, b, c) : e || (e = "_dummyGS")), this.vars.onStart && (0 !== this._totalTime || 0 === r) && (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 && this._startTime && this._startAt.render(a, b, c), b || (this._totalTime !== p || e) && this._callback("onUpdate")), this._cycle !== q && (b || this._gc || this.vars.onRepeat && this._callback("onRepeat")), e && (!this._gc || c) && (0 > a && this._startAt && !this._onUpdate && this._startTime && 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 === r && this._rawPrevTime === g && m !== g && (this._rawPrevTime = 0)) }, f.to = function(a, b, c) { return new f(a, b, c) }, f.from = function(a, b, c) { return c.runBackwards = !0, c.immediateRender = 0 != c.immediateRender, new f(a, b, c) }, f.fromTo = function(a, b, c, d) { return d.startAt = c, d.immediateRender = 0 != d.immediateRender && 0 != c.immediateRender, new f(a, b, d) }, f.staggerTo = f.allTo = function(a, b, g, h, k, m, n) { h = h || 0; var o, p, q, r, s = 0,
t = [],
u = function() { g.onComplete && g.onComplete.apply(g.onCompleteScope || this, arguments), k.apply(n || g.callbackScope || this, m || l) },
v = g.cycle,
w = g.startAt && g.startAt.cycle; for (j(a) || ("string" == typeof a && (a = c.selector(a) || a), i(a) && (a = d(a))), a = a || [], 0 > h && (a = d(a), a.reverse(), h *= -1), o = a.length - 1, q = 0; o >= q; q++) { p = {}; for (r in g) p[r] = g[r]; if (v && (e(p, a, q), null != p.duration && (b = p.duration, delete p.duration)), w) { w = p.startAt = {}; for (r in g.startAt) w[r] = g.startAt[r];
e(p.startAt, a, q) } p.delay = s + (p.delay || 0), q === o && k && (p.onComplete = u), t[q] = new f(a[q], b, p), s += h } return t }, f.staggerFrom = f.allFrom = function(a, b, c, d, e, g, h) { return c.runBackwards = !0, c.immediateRender = 0 != c.immediateRender, f.staggerTo(a, b, c, d, e, g, h) }, f.staggerFromTo = f.allFromTo = function(a, b, c, d, e, g, h, i) { return d.startAt = c, d.immediateRender = 0 != d.immediateRender && 0 != c.immediateRender, f.staggerTo(a, b, d, e, g, h, i) }, f.delayedCall = function(a, b, c, d, e) { return new f(b, 0, { delay: a, onComplete: b, onCompleteParams: c, callbackScope: d, onReverseComplete: b, onReverseCompleteParams: c, immediateRender: !1, useFrames: e, overwrite: 0 }) }, f.set = function(a, b) { return new f(a, 0, b) }, f.isTweening = function(a) { return c.getTweensOf(a, !0).length > 0 }; var m = function(a, b) { for (var d = [], e = 0, f = a._first; f;) f instanceof c ? d[e++] = f : (b && (d[e++] = f), d = d.concat(m(f, b)), e = d.length), f = f._next; return d },
n = f.getAllTweens = function(b) { return m(a._rootTimeline, b).concat(m(a._rootFramesTimeline, b)) };
f.killAll = function(a, c, d, e) { null == c && (c = !0), null == d && (d = !0); var f, g, h, i = n(0 != e),
j = i.length,
k = c && d && e; for (h = 0; j > h; h++) g = i[h], (k || g instanceof b || (f = g.target === g.vars.onComplete) && d || c && !f) && (a ? g.totalTime(g._reversed ? 0 : g.totalDuration()) : g._enabled(!1, !1)) }, f.killChildTweensOf = function(a, b) { if (null != a) { var e, g, k, l, m, n = h.tweenLookup; if ("string" == typeof a && (a = c.selector(a) || a), i(a) && (a = d(a)), j(a))
for (l = a.length; --l > -1;) f.killChildTweensOf(a[l], b);
else { e = []; for (k in n)
for (g = n[k].target.parentNode; g;) g === a && (e = e.concat(n[k].tweens)), g = g.parentNode; for (m = e.length, l = 0; m > l; l++) b && e[l].totalTime(e[l].totalDuration()), e[l]._enabled(!1, !1) } } }; var o = function(a, c, d, e) { c = c !== !1, d = d !== !1, e = e !== !1; for (var f, g, h = n(e), i = c && d && e, j = h.length; --j > -1;) g = h[j], (i || g instanceof b || (f = g.target === g.vars.onComplete) && d || c && !f) && g.paused(a) }; return f.pauseAll = function(a, b, c) { o(!0, a, b, c) }, f.resumeAll = function(a, b, c) { o(!1, a, b, c) }, f.globalTimeScale = function(b) { var d = a._rootTimeline,
e = c.ticker.time; return arguments.length ? (b = b || g, d._startTime = e - (e - d._startTime) * d._timeScale / b, d = a._rootFramesTimeline, e = c.ticker.frame, d._startTime = e - (e - d._startTime) * d._timeScale / b, d._timeScale = a._rootTimeline._timeScale = b, b) : d._timeScale }, k.progress = function(a, b) { return arguments.length ? this.totalTime(this.duration() * (this._yoyo && 0 !== (1 & this._cycle) ? 1 - a : a) + this._cycle * (this._duration + this._repeatDelay), b) : this._time / this.duration() }, k.totalProgress = function(a, b) { return arguments.length ? this.totalTime(this.totalDuration() * a, b) : this._totalTime / this.totalDuration() }, k.time = function(a, b) { return arguments.length ? (this._dirty && this.totalDuration(), a > this._duration && (a = this._duration), this._yoyo && 0 !== (1 & this._cycle) ? a = this._duration - a + this._cycle * (this._duration + this._repeatDelay) : 0 !== this._repeat && (a += this._cycle * (this._duration + this._repeatDelay)), this.totalTime(a, b)) : this._time }, k.duration = function(b) { return arguments.length ? a.prototype.duration.call(this, b) : this._duration }, k.totalDuration = function(a) { return arguments.length ? -1 === this._repeat ? this : this.duration((a - this._repeat * this._repeatDelay) / (this._repeat + 1)) : (this._dirty && (this._totalDuration = -1 === this._repeat ? 999999999999 : this._duration * (this._repeat + 1) + this._repeatDelay * this._repeat, this._dirty = !1), this._totalDuration) }, k.repeat = function(a) { return arguments.length ? (this._repeat = a, this._uncache(!0)) : this._repeat }, k.repeatDelay = function(a) { return arguments.length ? (this._repeatDelay = a, this._uncache(!0)) : this._repeatDelay }, k.yoyo = function(a) { return arguments.length ? (this._yoyo = a, this) : this._yoyo }, f }, !0), _gsScope._gsDefine("TimelineLite", ["core.Animation", "core.SimpleTimeline", "TweenLite"], function(a, b, c) { var d = function(a) { b.call(this, a), this._labels = {}, this.autoRemoveChildren = this.vars.autoRemoveChildren === !0, this.smoothChildTiming = this.vars.smoothChildTiming === !0, this._sortChildren = !0, this._onUpdate = this.vars.onUpdate; var c, d, e = this.vars; for (d in e) c = e[d], i(c) && -1 !== c.join("").indexOf("{self}") && (e[d] = this._swapSelfInParams(c));
i(e.tweens) && this.add(e.tweens, 0, e.align, e.stagger) },
e = 1e-10,
f = c._internals,
g = d._internals = {},
h = f.isSelector,
i = f.isArray,
j = f.lazyTweens,
k = f.lazyRender,
l = _gsScope._gsDefine.globals,
m = function(a) { var b, c = {}; for (b in a) c[b] = a[b]; return c },
n = function(a, b, c) { var d, e, f = a.cycle; for (d in f) e = f[d], a[d] = "function" == typeof e ? e.call(b[c], c) : e[c % e.length];
delete a.cycle },
o = g.pauseCallback = function() {},
p = function(a) { var b, c = [],
d = a.length; for (b = 0; b !== d; c.push(a[b++])); return c },
q = d.prototype = new b; return d.version = "1.19.0", q.constructor = d, q.kill()._gc = q._forcingPlayhead = q._hasPause = !1, q.to = function(a, b, d, e) { var f = d.repeat && l.TweenMax || c; return b ? this.add(new f(a, b, d), e) : this.set(a, d, e) }, q.from = function(a, b, d, e) { return this.add((d.repeat && l.TweenMax || c).from(a, b, d), e) }, q.fromTo = function(a, b, d, e, f) { var g = e.repeat && l.TweenMax || c; return b ? this.add(g.fromTo(a, b, d, e), f) : this.set(a, e, f) }, q.staggerTo = function(a, b, e, f, g, i, j, k) { var l, o, q = new d({ onComplete: i, onCompleteParams: j, callbackScope: k, smoothChildTiming: this.smoothChildTiming }),
r = e.cycle; for ("string" == typeof a && (a = c.selector(a) || a), a = a || [], h(a) && (a = p(a)), f = f || 0, 0 > f && (a = p(a), a.reverse(), f *= -1), o = 0; o < a.length; o++) l = m(e), l.startAt && (l.startAt = m(l.startAt), l.startAt.cycle && n(l.startAt, a, o)), r && (n(l, a, o), null != l.duration && (b = l.duration, delete l.duration)), q.to(a[o], b, l, o * f); return this.add(q, g) }, q.staggerFrom = function(a, b, c, d, e, f, g, h) { return c.immediateRender = 0 != c.immediateRender, c.runBackwards = !0, this.staggerTo(a, b, c, d, e, f, g, h) }, q.staggerFromTo = function(a, b, c, d, e, f, g, h, i) { return d.startAt = c, d.immediateRender = 0 != d.immediateRender && 0 != c.immediateRender, this.staggerTo(a, b, d, e, f, g, h, i) }, q.call = function(a, b, d, e) { return this.add(c.delayedCall(0, a, b, d), e) }, q.set = function(a, b, d) { return d = this._parseTimeOrLabel(d, 0, !0), null == b.immediateRender && (b.immediateRender = d === this._time && !this._paused), this.add(new c(a, 0, b), d) }, d.exportRoot = function(a, b) { a = a || {}, null == a.smoothChildTiming && (a.smoothChildTiming = !0); var e, f, g = new d(a),
h = g._timeline; for (null == b && (b = !0), h._remove(g, !0), g._startTime = 0, g._rawPrevTime = g._time = g._totalTime = h._time, e = h._first; e;) f = e._next, b && e instanceof c && e.target === e.vars.onComplete || g.add(e, e._startTime - e._delay), e = f; return h.add(g, 0), g }, q.add = function(e, f, g, h) { var j, k, l, m, n, o; if ("number" != typeof f && (f = this._parseTimeOrLabel(f, 0, !0, e)), !(e instanceof a)) { if (e instanceof Array || e && e.push && i(e)) { for (g = g || "normal", h = h || 0, j = f, k = e.length, l = 0; k > l; l++) i(m = e[l]) && (m = new d({ tweens: m })), this.add(m, j), "string" != typeof m && "function" != typeof m && ("sequence" === g ? j = m._startTime + m.totalDuration() / m._timeScale : "start" === g && (m._startTime -= m.delay())), j += h; return this._uncache(!0) } if ("string" == typeof e) return this.addLabel(e, f); if ("function" != typeof e) throw "Cannot add " + e + " into the timeline; it is not a tween, timeline, function, or string.";
e = c.delayedCall(0, e) } if (b.prototype.add.call(this, e, f), (this._gc || this._time === this._duration) && !this._paused && this._duration < this.duration())
for (n = this, o = n.rawTime() > e._startTime; n._timeline;) o && n._timeline.smoothChildTiming ? n.totalTime(n._totalTime, !0) : n._gc && n._enabled(!0, !1), n = n._timeline; return this }, q.remove = function(b) { if (b instanceof a) { this._remove(b, !1); var c = b._timeline = b.vars.useFrames ? a._rootFramesTimeline : a._rootTimeline; return b._startTime = (b._paused ? b._pauseTime : c._time) - (b._reversed ? b.totalDuration() - b._totalTime : b._totalTime) / b._timeScale, this } if (b instanceof Array || b && b.push && i(b)) { for (var d = b.length; --d > -1;) this.remove(b[d]); return this } return "string" == typeof b ? this.removeLabel(b) : this.kill(null, b) }, q._remove = function(a, c) { b.prototype._remove.call(this, a, c); var d = this._last; return d ? this._time > d._startTime + d._totalDuration / d._timeScale && (this._time = this.duration(), this._totalTime = this._totalDuration) : this._time = this._totalTime = this._duration = this._totalDuration = 0, this }, q.append = function(a, b) { return this.add(a, this._parseTimeOrLabel(null, b, !0, a)) }, q.insert = q.insertMultiple = function(a, b, c, d) { return this.add(a, b || 0, c, d) }, q.appendMultiple = function(a, b, c, d) { return this.add(a, this._parseTimeOrLabel(null, b, !0, a), c, d) }, q.addLabel = function(a, b) { return this._labels[a] = this._parseTimeOrLabel(b), this }, q.addPause = function(a, b, d, e) { var f = c.delayedCall(0, o, d, e || this); return f.vars.onComplete = f.vars.onReverseComplete = b, f.data = "isPause", this._hasPause = !0, this.add(f, a) }, q.removeLabel = function(a) { return delete this._labels[a], this }, q.getLabelTime = function(a) { return null != this._labels[a] ? this._labels[a] : -1 }, q._parseTimeOrLabel = function(b, c, d, e) { var f; if (e instanceof a && e.timeline === this) this.remove(e);
else if (e && (e instanceof Array || e.push && i(e)))
for (f = e.length; --f > -1;) e[f] instanceof a && e[f].timeline === this && this.remove(e[f]); if ("string" == typeof c) return this._parseTimeOrLabel(c, d && "number" == typeof b && null == this._labels[c] ? b - this.duration() : 0, d); if (c = c || 0, "string" != typeof b || !isNaN(b) && null == this._labels[b]) null == b && (b = this.duration());
else { if (f = b.indexOf("="), -1 === f) return null == this._labels[b] ? d ? this._labels[b] = this.duration() + c : c : this._labels[b] + c;
c = parseInt(b.charAt(f - 1) + "1", 10) * Number(b.substr(f + 1)), b = f > 1 ? this._parseTimeOrLabel(b.substr(0, f - 1), 0, d) : this.duration() } return Number(b) + c }, q.seek = function(a, b) { return this.totalTime("number" == typeof a ? a : this._parseTimeOrLabel(a), b !== !1) }, q.stop = function() { return this.paused(!0) }, q.gotoAndPlay = function(a, b) { return this.play(a, b) }, q.gotoAndStop = function(a, b) { return this.pause(a, b) }, q.render = function(a, b, c) { this._gc && this._enabled(!0, !1); var d, f, g, h, i, l, m, n = this._dirty ? this.totalDuration() : this._totalDuration,
o = this._time,
p = this._startTime,
q = this._timeScale,
r = this._paused; if (a >= n - 1e-7) this._totalTime = this._time = n, this._reversed || this._hasPausedChild() || (f = !0, h = "onComplete", i = !!this._timeline.autoRemoveChildren, 0 === this._duration && (0 >= a && a >= -1e-7 || this._rawPrevTime < 0 || this._rawPrevTime === e) && this._rawPrevTime !== a && this._first && (i = !0, this._rawPrevTime > e && (h = "onReverseComplete"))), this._rawPrevTime = this._duration || !b || a || this._rawPrevTime === a ? a : e, a = n + 1e-4;
else if (1e-7 > a)
if (this._totalTime = this._time = 0, (0 !== o || 0 === this._duration && this._rawPrevTime !== e && (this._rawPrevTime > 0 || 0 > a && this._rawPrevTime >= 0)) && (h = "onReverseComplete", f = this._reversed), 0 > a) this._active = !1, this._timeline.autoRemoveChildren && this._reversed ? (i = f = !0, h = "onReverseComplete") : this._rawPrevTime >= 0 && this._first && (i = !0), this._rawPrevTime = a;
else { if (this._rawPrevTime = this._duration || !b || a || this._rawPrevTime === a ? a : e, 0 === a && f)
for (d = this._first; d && 0 === d._startTime;) d._duration || (f = !1), d = d._next;
a = 0, this._initted || (i = !0) } else { if (this._hasPause && !this._forcingPlayhead && !b) { if (a >= o)
for (d = this._first; d && d._startTime <= a && !l;) d._duration || "isPause" !== d.data || d.ratio || 0 === d._startTime && 0 === this._rawPrevTime || (l = d), d = d._next;
else
for (d = this._last; d && d._startTime >= a && !l;) d._duration || "isPause" === d.data && d._rawPrevTime > 0 && (l = d), d = d._prev;
l && (this._time = a = l._startTime, this._totalTime = a + this._cycle * (this._totalDuration + this._repeatDelay)) } this._totalTime = this._time = this._rawPrevTime = a } if (this._time !== o && this._first || c || i || l) { if (this._initted || (this._initted = !0), this._active || !this._paused && this._time !== o && a > 0 && (this._active = !0), 0 === o && this.vars.onStart && (0 === this._time && this._duration || b || this._callback("onStart")), m = this._time, m >= o)
for (d = this._first; d && (g = d._next, m === this._time && (!this._paused || r));)(d._active || d._startTime <= m && !d._paused && !d._gc) && (l === d && this.pause(), d._reversed ? d.render((d._dirty ? d.totalDuration() : d._totalDuration) - (a - d._startTime) * d._timeScale, b, c) : d.render((a - d._startTime) * d._timeScale, b, c)), d = g;
else
for (d = this._last; d && (g = d._prev, m === this._time && (!this._paused || r));) { if (d._active || d._startTime <= o && !d._paused && !d._gc) { if (l === d) { for (l = d._prev; l && l.endTime() > this._time;) l.render(l._reversed ? l.totalDuration() - (a - l._startTime) * l._timeScale : (a - l._startTime) * l._timeScale, b, c), l = l._prev;
l = null, this.pause() } d._reversed ? d.render((d._dirty ? d.totalDuration() : d._totalDuration) - (a - d._startTime) * d._timeScale, b, c) : d.render((a - d._startTime) * d._timeScale, b, c) } d = g } this._onUpdate && (b || (j.length && k(), this._callback("onUpdate"))), h && (this._gc || (p === this._startTime || q !== this._timeScale) && (0 === this._time || n >= this.totalDuration()) && (f && (j.length && k(), this._timeline.autoRemoveChildren && this._enabled(!1, !1), this._active = !1), !b && this.vars[h] && this._callback(h))) } }, q._hasPausedChild = function() { for (var a = this._first; a;) { if (a._paused || a instanceof d && a._hasPausedChild()) return !0;
a = a._next } return !1 }, q.getChildren = function(a, b, d, e) { e = e || -9999999999; for (var f = [], g = this._first, h = 0; g;) g._startTime < e || (g instanceof c ? b !== !1 && (f[h++] = g) : (d !== !1 && (f[h++] = g), a !== !1 && (f = f.concat(g.getChildren(!0, b, d)), h = f.length))), g = g._next; return f }, q.getTweensOf = function(a, b) { var d, e, f = this._gc,
g = [],
h = 0; for (f && this._enabled(!0, !0), d = c.getTweensOf(a), e = d.length; --e > -1;)(d[e].timeline === this || b && this._contains(d[e])) && (g[h++] = d[e]); return f && this._enabled(!1, !0), g }, q.recent = function() { return this._recent }, q._contains = function(a) { for (var b = a.timeline; b;) { if (b === this) return !0;
b = b.timeline } return !1 }, q.shiftChildren = function(a, b, c) { c = c || 0; for (var d, e = this._first, f = this._labels; e;) e._startTime >= c && (e._startTime += a), e = e._next; if (b)
for (d in f) f[d] >= c && (f[d] += a); return this._uncache(!0) }, q._kill = function(a, b) { if (!a && !b) return this._enabled(!1, !1); for (var c = b ? this.getTweensOf(b) : this.getChildren(!0, !0, !1), d = c.length, e = !1; --d > -1;) c[d]._kill(a, b) && (e = !0); return e }, q.clear = function(a) { var b = this.getChildren(!1, !0, !0),
c = b.length; for (this._time = this._totalTime = 0; --c > -1;) b[c]._enabled(!1, !1); return a !== !1 && (this._labels = {}), this._uncache(!0) }, q.invalidate = function() { for (var b = this._first; b;) b.invalidate(), b = b._next; return a.prototype.invalidate.call(this) }, q._enabled = function(a, c) { if (a === this._gc)
for (var d = this._first; d;) d._enabled(a, !0), d = d._next; return b.prototype._enabled.call(this, a, c) }, q.totalTime = function(b, c, d) { this._forcingPlayhead = !0; var e = a.prototype.totalTime.apply(this, arguments); return this._forcingPlayhead = !1, e }, q.duration = function(a) { return arguments.length ? (0 !== this.duration() && 0 !== a && this.timeScale(this._duration / a), this) : (this._dirty && this.totalDuration(), this._duration) }, q.totalDuration = function(a) { if (!arguments.length) { if (this._dirty) { for (var b, c, d = 0, e = this._last, f = 999999999999; e;) b = e._prev, e._dirty && e.totalDuration(), e._startTime > f && this._sortChildren && !e._paused ? this.add(e, e._startTime - e._delay) : f = e._startTime, e._startTime < 0 && !e._paused && (d -= e._startTime, this._timeline.smoothChildTiming && (this._startTime += e._startTime / this._timeScale), this.shiftChildren(-e._startTime, !1, -9999999999), f = 0), c = e._startTime + e._totalDuration / e._timeScale, c > d && (d = c), e = b;
this._duration = this._totalDuration = d, this._dirty = !1 } return this._totalDuration } return a && this.totalDuration() ? this.timeScale(this._totalDuration / a) : this }, q.paused = function(b) { if (!b)
for (var c = this._first, d = this._time; c;) c._startTime === d && "isPause" === c.data && (c._rawPrevTime = 0), c = c._next; return a.prototype.paused.apply(this, arguments) }, q.usesFrames = function() { for (var b = this._timeline; b._timeline;) b = b._timeline; return b === a._rootFramesTimeline }, q.rawTime = function() { return this._paused ? this._totalTime : (this._timeline.rawTime() - this._startTime) * this._timeScale }, d }, !0), _gsScope._gsDefine("TimelineMax", ["TimelineLite", "TweenLite", "easing.Ease"], function(a, b, c) { var d = function(b) { a.call(this, b), this._repeat = this.vars.repeat || 0, this._repeatDelay = this.vars.repeatDelay || 0, this._cycle = 0, this._yoyo = this.vars.yoyo === !0, this._dirty = !0 },
e = 1e-10,
f = b._internals,
g = f.lazyTweens,
h = f.lazyRender,
i = _gsScope._gsDefine.globals,
j = new c(null, null, 1, 0),
k = d.prototype = new a; return k.constructor = d, k.kill()._gc = !1, d.version = "1.19.0", k.invalidate = function() { return this._yoyo = this.vars.yoyo === !0, this._repeat = this.vars.repeat || 0, this._repeatDelay = this.vars.repeatDelay || 0, this._uncache(!0), a.prototype.invalidate.call(this) }, k.addCallback = function(a, c, d, e) { return this.add(b.delayedCall(0, a, d, e), c) }, k.removeCallback = function(a, b) { if (a)
if (null == b) this._kill(null, a);
else
for (var c = this.getTweensOf(a, !1), d = c.length, e = this._parseTimeOrLabel(b); --d > -1;) c[d]._startTime === e && c[d]._enabled(!1, !1); return this }, k.removePause = function(b) { return this.removeCallback(a._internals.pauseCallback, b) }, k.tweenTo = function(a, c) { c = c || {}; var d, e, f, g = { ease: j, useFrames: this.usesFrames(), immediateRender: !1 },
h = c.repeat && i.TweenMax || b; for (e in c) g[e] = c[e]; return g.time = this._parseTimeOrLabel(a), d = Math.abs(Number(g.time) - this._time) / this._timeScale || .001, f = new h(this, d, g), g.onStart = function() { f.target.paused(!0), f.vars.time !== f.target.time() && d === f.duration() && f.duration(Math.abs(f.vars.time - f.target.time()) / f.target._timeScale), c.onStart && f._callback("onStart") }, f }, k.tweenFromTo = function(a, b, c) { c = c || {}, a = this._parseTimeOrLabel(a), c.startAt = { onComplete: this.seek, onCompleteParams: [a], callbackScope: this }, c.immediateRender = c.immediateRender !== !1; var d = this.tweenTo(b, c); return d.duration(Math.abs(d.vars.time - a) / this._timeScale || .001) }, k.render = function(a, b, c) { this._gc && this._enabled(!0, !1); var d, f, i, j, k, l, m, n, o = this._dirty ? this.totalDuration() : this._totalDuration,
p = this._duration,
q = this._time,
r = this._totalTime,
s = this._startTime,
t = this._timeScale,
u = this._rawPrevTime,
v = this._paused,
w = this._cycle; if (a >= o - 1e-7) this._locked || (this._totalTime = o, this._cycle = this._repeat), this._reversed || this._hasPausedChild() || (f = !0, j = "onComplete", k = !!this._timeline.autoRemoveChildren, 0 === this._duration && (0 >= a && a >= -1e-7 || 0 > u || u === e) && u !== a && this._first && (k = !0, u > e && (j = "onReverseComplete"))), this._rawPrevTime = this._duration || !b || a || this._rawPrevTime === a ? a : e, this._yoyo && 0 !== (1 & this._cycle) ? this._time = a = 0 : (this._time = p, a = p + 1e-4);
else if (1e-7 > a)
if (this._locked || (this._totalTime = this._cycle = 0), this._time = 0, (0 !== q || 0 === p && u !== e && (u > 0 || 0 > a && u >= 0) && !this._locked) && (j = "onReverseComplete", f = this._reversed), 0 > a) this._active = !1, this._timeline.autoRemoveChildren && this._reversed ? (k = f = !0, j = "onReverseComplete") : u >= 0 && this._first && (k = !0), this._rawPrevTime = a;
else { if (this._rawPrevTime = p || !b || a || this._rawPrevTime === a ? a : e, 0 === a && f)
for (d = this._first; d && 0 === d._startTime;) d._duration || (f = !1), d = d._next;
a = 0, this._initted || (k = !0) } else if (0 === p && 0 > u && (k = !0), this._time = this._rawPrevTime = a, this._locked || (this._totalTime = a, 0 !== this._repeat && (l = p + this._repeatDelay, this._cycle = this._totalTime / l >> 0, 0 !== this._cycle && this._cycle === this._totalTime / l && a >= r && this._cycle--, this._time = this._totalTime - this._cycle * l, this._yoyo && 0 !== (1 & this._cycle) && (this._time = p - this._time), this._time > p ? (this._time = p, a = p + 1e-4) : this._time < 0 ? this._time = a = 0 : a = this._time)), this._hasPause && !this._forcingPlayhead && !b) { if (a = this._time, a >= q)
for (d = this._first; d && d._startTime <= a && !m;) d._duration || "isPause" !== d.data || d.ratio || 0 === d._startTime && 0 === this._rawPrevTime || (m = d), d = d._next;
else
for (d = this._last; d && d._startTime >= a && !m;) d._duration || "isPause" === d.data && d._rawPrevTime > 0 && (m = d), d = d._prev;
m && (this._time = a = m._startTime, this._totalTime = a + this._cycle * (this._totalDuration + this._repeatDelay)) } if (this._cycle !== w && !this._locked) { var x = this._yoyo && 0 !== (1 & w),
y = x === (this._yoyo && 0 !== (1 & this._cycle)),
z = this._totalTime,
A = this._cycle,
B = this._rawPrevTime,
C = this._time; if (this._totalTime = w * p, this._cycle < w ? x = !x : this._totalTime += p, this._time = q, this._rawPrevTime = 0 === p ? u - 1e-4 : u, this._cycle = w, this._locked = !0, q = x ? 0 : p, this.render(q, b, 0 === p), b || this._gc || this.vars.onRepeat && this._callback("onRepeat"), q !== this._time) return; if (y && (q = x ? p + 1e-4 : -1e-4, this.render(q, !0, !1)), this._locked = !1, this._paused && !v) return;
this._time = C, this._totalTime = z, this._cycle = A, this._rawPrevTime = B } if (!(this._time !== q && this._first || c || k || m)) return void(r !== this._totalTime && this._onUpdate && (b || this._callback("onUpdate"))); if (this._initted || (this._initted = !0), this._active || !this._paused && this._totalTime !== r && a > 0 && (this._active = !0), 0 === r && this.vars.onStart && (0 === this._totalTime && this._totalDuration || b || this._callback("onStart")), n = this._time, n >= q)
for (d = this._first; d && (i = d._next, n === this._time && (!this._paused || v));)(d._active || d._startTime <= this._time && !d._paused && !d._gc) && (m === d && this.pause(), d._reversed ? d.render((d._dirty ? d.totalDuration() : d._totalDuration) - (a - d._startTime) * d._timeScale, b, c) : d.render((a - d._startTime) * d._timeScale, b, c)), d = i;
else
for (d = this._last; d && (i = d._prev, n === this._time && (!this._paused || v));) { if (d._active || d._startTime <= q && !d._paused && !d._gc) { if (m === d) { for (m = d._prev; m && m.endTime() > this._time;) m.render(m._reversed ? m.totalDuration() - (a - m._startTime) * m._timeScale : (a - m._startTime) * m._timeScale, b, c), m = m._prev;
m = null, this.pause() } d._reversed ? d.render((d._dirty ? d.totalDuration() : d._totalDuration) - (a - d._startTime) * d._timeScale, b, c) : d.render((a - d._startTime) * d._timeScale, b, c) } d = i } this._onUpdate && (b || (g.length && h(), this._callback("onUpdate"))), j && (this._locked || this._gc || (s === this._startTime || t !== this._timeScale) && (0 === this._time || o >= this.totalDuration()) && (f && (g.length && h(), this._timeline.autoRemoveChildren && this._enabled(!1, !1), this._active = !1), !b && this.vars[j] && this._callback(j))) }, k.getActive = function(a, b, c) { null == a && (a = !0), null == b && (b = !0), null == c && (c = !1); var d, e, f = [],
g = this.getChildren(a, b, c),
h = 0,
i = g.length; for (d = 0; i > d; d++) e = g[d], e.isActive() && (f[h++] = e); return f }, k.getLabelAfter = function(a) { a || 0 !== a && (a = this._time); var b, c = this.getLabelsArray(),
d = c.length; for (b = 0; d > b; b++)
if (c[b].time > a) return c[b].name; return null }, k.getLabelBefore = function(a) { null == a && (a = this._time); for (var b = this.getLabelsArray(), c = b.length; --c > -1;)
if (b[c].time < a) return b[c].name; return null }, k.getLabelsArray = function() { var a, b = [],
c = 0; for (a in this._labels) b[c++] = { time: this._labels[a], name: a }; return b.sort(function(a, b) { return a.time - b.time }), b }, k.progress = function(a, b) { return arguments.length ? this.totalTime(this.duration() * (this._yoyo && 0 !== (1 & this._cycle) ? 1 - a : a) + this._cycle * (this._duration + this._repeatDelay), b) : this._time / this.duration() }, k.totalProgress = function(a, b) { return arguments.length ? this.totalTime(this.totalDuration() * a, b) : this._totalTime / this.totalDuration() }, k.totalDuration = function(b) { return arguments.length ? -1 !== this._repeat && b ? this.timeScale(this.totalDuration() / b) : this : (this._dirty && (a.prototype.totalDuration.call(this), this._totalDuration = -1 === this._repeat ? 999999999999 : this._duration * (this._repeat + 1) + this._repeatDelay * this._repeat), this._totalDuration) }, k.time = function(a, b) { return arguments.length ? (this._dirty && this.totalDuration(), a > this._duration && (a = this._duration), this._yoyo && 0 !== (1 & this._cycle) ? a = this._duration - a + this._cycle * (this._duration + this._repeatDelay) : 0 !== this._repeat && (a += this._cycle * (this._duration + this._repeatDelay)), this.totalTime(a, b)) : this._time }, k.repeat = function(a) { return arguments.length ? (this._repeat = a, this._uncache(!0)) : this._repeat }, k.repeatDelay = function(a) { return arguments.length ? (this._repeatDelay = a, this._uncache(!0)) : this._repeatDelay }, k.yoyo = function(a) { return arguments.length ? (this._yoyo = a, this) : this._yoyo }, k.currentLabel = function(a) { return arguments.length ? this.seek(a, !0) : this.getLabelBefore(this._time + 1e-8) }, d }, !0),
function() {
var a = 180 / Math.PI,
b = [],
c = [],
d = [],
e = {},
f = _gsScope._gsDefine.globals,
g = function(a, b, c, d) { c === d && (c = d - (d - b) / 1e6), a === b && (b = a + (c - a) / 1e6), this.a = a, this.b = b, this.c = c, this.d = d, this.da = d - a, this.ca = c - a, this.ba = b - a },
h = ",x,y,z,left,top,right,bottom,marginTop,marginLeft,marginRight,marginBottom,paddingLeft,paddingTop,paddingRight,paddingBottom,backgroundPosition,backgroundPosition_y,",
i = function(a, b, c, d) { var e = { a: a },
f = {},
g = {},
h = { c: d },
i = (a + b) / 2,
j = (b + c) / 2,
k = (c + d) / 2,
l = (i + j) / 2,
m = (j + k) / 2,
n = (m - l) / 8; return e.b = i + (a - i) / 4, f.b = l + n, e.c = f.a = (e.b + f.b) / 2, f.c = g.a = (l + m) / 2, g.b = m - n, h.b = k + (d - k) / 4, g.c = h.a = (g.b + h.b) / 2, [e, f, g, h] },
j = function(a, e, f, g, h) { var j, k, l, m, n, o, p, q, r, s, t, u, v, w = a.length - 1,
x = 0,
y = a[0].a; for (j = 0; w > j; j++) n = a[x], k = n.a, l = n.d, m = a[x + 1].d, h ? (t = b[j], u = c[j], v = (u + t) * e * .25 / (g ? .5 : d[j] || .5), o = l - (l - k) * (g ? .5 * e : 0 !== t ? v / t : 0), p = l + (m - l) * (g ? .5 * e : 0 !== u ? v / u : 0), q = l - (o + ((p - o) * (3 * t / (t + u) + .5) / 4 || 0))) : (o = l - (l - k) * e * .5, p = l + (m - l) * e * .5, q = l - (o + p) / 2), o += q, p += q, n.c = r = o, 0 !== j ? n.b = y : n.b = y = n.a + .6 * (n.c - n.a), n.da = l - k, n.ca = r - k, n.ba = y - k, f ? (s = i(k, y, r, l), a.splice(x, 1, s[0], s[1], s[2], s[3]), x += 4) : x++, y = p;
n = a[x], n.b = y, n.c = y + .4 * (n.d - y), n.da = n.d - n.a, n.ca = n.c - n.a, n.ba = y - n.a, f && (s = i(n.a, y, n.c, n.d), a.splice(x, 1, s[0], s[1], s[2], s[3])) },
k = function(a, d, e, f) { var h, i, j, k, l, m, n = []; if (f)
for (a = [f].concat(a), i = a.length; --i > -1;) "string" == typeof(m = a[i][d]) && "=" === m.charAt(1) && (a[i][d] = f[d] + Number(m.charAt(0) + m.substr(2))); if (h = a.length - 2, 0 > h) return n[0] = new g(a[0][d], 0, 0, a[-1 > h ? 0 : 1][d]), n; for (i = 0; h > i; i++) j = a[i][d], k = a[i + 1][d], n[i] = new g(j, 0, 0, k), e && (l = a[i + 2][d], b[i] = (b[i] || 0) + (k - j) * (k - j), c[i] = (c[i] || 0) + (l - k) * (l - k)); return n[i] = new g(a[i][d], 0, 0, a[i + 1][d]), n },
l = function(a, f, g, i, l, m) { var n, o, p, q, r, s, t, u, v = {},
w = [],
x = m || a[0];
l = "string" == typeof l ? "," + l + "," : h, null == f && (f = 1); for (o in a[0]) w.push(o); if (a.length > 1) { for (u = a[a.length - 1], t = !0, n = w.length; --n > -1;)
if (o = w[n], Math.abs(x[o] - u[o]) > .05) { t = !1; break } t && (a = a.concat(), m && a.unshift(m), a.push(a[1]), m = a[a.length - 3]) } for (b.length = c.length = d.length = 0, n = w.length; --n > -1;) o = w[n], e[o] = -1 !== l.indexOf("," + o + ","), v[o] = k(a, o, e[o], m); for (n = b.length; --n > -1;) b[n] = Math.sqrt(b[n]), c[n] = Math.sqrt(c[n]); if (!i) { for (n = w.length; --n > -1;)
if (e[o])
for (p = v[w[n]], s = p.length - 1, q = 0; s > q; q++) r = p[q + 1].da / c[q] + p[q].da / b[q] || 0, d[q] = (d[q] || 0) + r * r; for (n = d.length; --n > -1;) d[n] = Math.sqrt(d[n]) } for (n = w.length, q = g ? 4 : 1; --n > -1;) o = w[n], p = v[o], j(p, f, g, i, e[o]), t && (p.splice(0, q), p.splice(p.length - q, q)); return v },
m = function(a, b, c) { b = b || "soft"; var d, e, f, h, i, j, k, l, m, n, o, p = {},
q = "cubic" === b ? 3 : 2,
r = "soft" === b,
s = []; if (r && c && (a = [c].concat(a)), null == a || a.length < q + 1) throw "invalid Bezier data"; for (m in a[0]) s.push(m); for (j = s.length; --j > -1;) { for (m = s[j], p[m] = i = [], n = 0, l = a.length, k = 0; l > k; k++) d = null == c ? a[k][m] : "string" == typeof(o = a[k][m]) && "=" === o.charAt(1) ? c[m] + Number(o.charAt(0) + o.substr(2)) : Number(o), r && k > 1 && l - 1 > k && (i[n++] = (d + i[n - 2]) / 2), i[n++] = d; for (l = n - q + 1, n = 0, k = 0; l > k; k += q) d = i[k], e = i[k + 1], f = i[k + 2], h = 2 === q ? 0 : i[k + 3], i[n++] = o = 3 === q ? new g(d, e, f, h) : new g(d, (2 * e + d) / 3, (2 * e + f) / 3, f);
i.length = n } return p },
n = function(a, b, c) { for (var d, e, f, g, h, i, j, k, l, m, n, o = 1 / c, p = a.length; --p > -1;)
for (m = a[p], f = m.a, g = m.d - f, h = m.c - f, i = m.b - f, d = e = 0, k = 1; c >= k; k++) j = o * k, l = 1 - j, d = e - (e = (j * j * g + 3 * l * (j * h + l * i)) * j), n = p * c + k - 1, b[n] = (b[n] || 0) + d * d },
o = function(a, b) {
b = b >> 0 || 6;
var c, d, e, f, g = [],
h = [],
i = 0,
j = 0,
k = b - 1,
l = [],
m = [];
for (c in a) n(a[c], g, b);
for (e = g.length, d = 0; e > d; d++) i += Math.sqrt(g[d]), f = d % b, m[f] = i, f === k && (j += i, f = d / b >> 0, l[f] = m, h[f] = j, i = 0, m = []);
return {
length: j,
lengths: h,
segments: l
}
},
p = _gsScope._gsDefine.plugin({ propName: "bezier", priority: -1, version: "1.3.7", API: 2, global: !0, init: function(a, b, c) { this._target = a, b instanceof Array && (b = { values: b }), this._func = {}, this._mod = {}, this._props = [], this._timeRes = null == b.timeResolution ? 6 : parseInt(b.timeResolution, 10); var d, e, f, g, h, i = b.values || [],
j = {},
k = i[0],
n = b.autoRotate || c.vars.orientToBezier;
this._autoRotate = n ? n instanceof Array ? n : [
["x", "y", "rotation", n === !0 ? 0 : Number(n) || 0]
] : null; for (d in k) this._props.push(d); for (f = this._props.length; --f > -1;) d = this._props[f], this._overwriteProps.push(d), e = this._func[d] = "function" == typeof a[d], j[d] = e ? a[d.indexOf("set") || "function" != typeof a["get" + d.substr(3)] ? d : "get" + d.substr(3)]() : parseFloat(a[d]), h || j[d] !== i[0][d] && (h = j); if (this._beziers = "cubic" !== b.type && "quadratic" !== b.type && "soft" !== b.type ? l(i, isNaN(b.curviness) ? 1 : b.curviness, !1, "thruBasic" === b.type, b.correlate, h) : m(i, b.type, j), this._segCount = this._beziers[d].length, this._timeRes) { var p = o(this._beziers, this._timeRes);
this._length = p.length, this._lengths = p.lengths, this._segments = p.segments, this._l1 = this._li = this._s1 = this._si = 0, this._l2 = this._lengths[0], this._curSeg = this._segments[0], this._s2 = this._curSeg[0], this._prec = 1 / this._curSeg.length } if (n = this._autoRotate)
for (this._initialRotations = [], n[0] instanceof Array || (this._autoRotate = n = [n]), f = n.length; --f > -1;) { for (g = 0; 3 > g; g++) d = n[f][g], this._func[d] = "function" == typeof a[d] ? a[d.indexOf("set") || "function" != typeof a["get" + d.substr(3)] ? d : "get" + d.substr(3)] : !1;
d = n[f][2], this._initialRotations[f] = (this._func[d] ? this._func[d].call(this._target) : this._target[d]) || 0, this._overwriteProps.push(d) }
return this._startRatio = c.vars.runBackwards ? 1 : 0, !0 }, set: function(b) { var c, d, e, f, g, h, i, j, k, l, m = this._segCount,
n = this._func,
o = this._target,
p = b !== this._startRatio; if (this._timeRes) { if (k = this._lengths, l = this._curSeg, b *= this._length, e = this._li, b > this._l2 && m - 1 > e) { for (j = m - 1; j > e && (this._l2 = k[++e]) <= b;);
this._l1 = k[e - 1], this._li = e, this._curSeg = l = this._segments[e], this._s2 = l[this._s1 = this._si = 0] } else if (b < this._l1 && e > 0) { for (; e > 0 && (this._l1 = k[--e]) >= b;);
0 === e && b < this._l1 ? this._l1 = 0 : e++, this._l2 = k[e], this._li = e, this._curSeg = l = this._segments[e], this._s1 = l[(this._si = l.length - 1) - 1] || 0, this._s2 = l[this._si] } if (c = e, b -= this._l1, e = this._si, b > this._s2 && e < l.length - 1) { for (j = l.length - 1; j > e && (this._s2 = l[++e]) <= b;);
this._s1 = l[e - 1], this._si = e } else if (b < this._s1 && e > 0) { for (; e > 0 && (this._s1 = l[--e]) >= b;);
0 === e && b < this._s1 ? this._s1 = 0 : e++, this._s2 = l[e], this._si = e } h = (e + (b - this._s1) / (this._s2 - this._s1)) * this._prec || 0 } else c = 0 > b ? 0 : b >= 1 ? m - 1 : m * b >> 0, h = (b - c * (1 / m)) * m; for (d = 1 - h, e = this._props.length; --e > -1;) f = this._props[e], g = this._beziers[f][c], i = (h * h * g.da + 3 * d * (h * g.ca + d * g.ba)) * h + g.a, this._mod[f] && (i = this._mod[f](i, o)), n[f] ? o[f](i) : o[f] = i; if (this._autoRotate) { var q, r, s, t, u, v, w, x = this._autoRotate; for (e = x.length; --e > -1;) f = x[e][2], v = x[e][3] || 0, w = x[e][4] === !0 ? 1 : a, g = this._beziers[x[e][0]], q = this._beziers[x[e][1]], g && q && (g = g[c], q = q[c], r = g.a + (g.b - g.a) * h, t = g.b + (g.c - g.b) * h, r += (t - r) * h, t += (g.c + (g.d - g.c) * h - t) * h, s = q.a + (q.b - q.a) * h, u = q.b + (q.c - q.b) * h, s += (u - s) * h, u += (q.c + (q.d - q.c) * h - u) * h, i = p ? Math.atan2(u - s, t - r) * w + v : this._initialRotations[e], this._mod[f] && (i = this._mod[f](i, o)), n[f] ? o[f](i) : o[f] = i) } } }),
q = p.prototype;
p.bezierThrough = l, p.cubicToQuadratic = i, p._autoCSS = !0, p.quadraticToCubic = function(a, b, c) { return new g(a, (2 * b + a) / 3, (2 * b + c) / 3, c) }, p._cssRegister = function() { var a = f.CSSPlugin; if (a) { var b = a._internals,
c = b._parseToProxy,
d = b._setPluginRatio,
e = b.CSSPropTween;
b._registerComplexSpecialProp("bezier", { parser: function(a, b, f, g, h, i) { b instanceof Array && (b = { values: b }), i = new p; var j, k, l, m = b.values,
n = m.length - 1,
o = [],
q = {}; if (0 > n) return h; for (j = 0; n >= j; j++) l = c(a, m[j], g, h, i, n !== j), o[j] = l.end; for (k in b) q[k] = b[k]; return q.values = o, h = new e(a, "bezier", 0, 0, l.pt, 2), h.data = l, h.plugin = i, h.setRatio = d, 0 === q.autoRotate && (q.autoRotate = !0), !q.autoRotate || q.autoRotate instanceof Array || (j = q.autoRotate === !0 ? 0 : Number(q.autoRotate), q.autoRotate = null != l.end.left ? [
["left", "top", "rotation", j, !1]
] : null != l.end.x ? [
["x", "y", "rotation", j, !1]
] : !1), q.autoRotate && (g._transform || g._enableTransforms(!1), l.autoRotate = g._target._gsTransform, l.proxy.rotation = l.autoRotate.rotation || 0, g._overwriteProps.push("rotation")), i._onInitTween(l.proxy, q, g._tween), h } }) } }, q._mod = function(a) { for (var b, c = this._overwriteProps, d = c.length; --d > -1;) b = a[c[d]], b && "function" == typeof b && (this._mod[c[d]] = b) }, q._kill = function(a) { var b, c, d = this._props; for (b in this._beziers)
if (b in a)
for (delete this._beziers[b], delete this._func[b], c = d.length; --c > -1;) d[c] === b && d.splice(c, 1); if (d = this._autoRotate)
for (c = d.length; --c > -1;) a[d[c][2]] && d.splice(c, 1); return this._super._kill.call(this, a) }
}(), _gsScope._gsDefine("plugins.CSSPlugin", ["plugins.TweenPlugin", "TweenLite"], function(a, b) {
var c, d, e, f, g = function() { a.call(this, "css"), this._overwriteProps.length = 0, this.setRatio = g.prototype.setRatio },
h = _gsScope._gsDefine.globals,
i = {},
j = g.prototype = new a("css");
j.constructor = g, g.version = "1.19.0", g.API = 2, g.defaultTransformPerspective = 0, g.defaultSkewType = "compensated", g.defaultSmoothOrigin = !0, j = "px", g.suffixMap = { top: j, right: j, bottom: j, left: j, width: j, height: j, fontSize: j, padding: j, margin: j, perspective: j, lineHeight: "" };
var k, l, m, n, o, p, q, r, s = /(?:\-|\.|\b)(\d|\.|e\-)+/g,
t = /(?:\d|\-\d|\.\d|\-\.\d|\+=\d|\-=\d|\+=.\d|\-=\.\d)+/g,
u = /(?:\+=|\-=|\-|\b)[\d\-\.]+[a-zA-Z0-9]*(?:%|\b)/gi,
v = /(?![+-]?\d*\.?\d+|[+-]|e[+-]\d+)[^0-9]/g,
w = /(?:\d|\-|\+|=|#|\.)*/g,
x = /opacity *= *([^)]*)/i,
y = /opacity:([^;]*)/i,
z = /alpha\(opacity *=.+?\)/i,
A = /^(rgb|hsl)/,
B = /([A-Z])/g,
C = /-([a-z])/gi,
D = /(^(?:url\(\"|url\())|(?:(\"\))$|\)$)/gi,
E = function(a, b) { return b.toUpperCase() },
F = /(?:Left|Right|Width)/i,
G = /(M11|M12|M21|M22)=[\d\-\.e]+/gi,
H = /progid\:DXImageTransform\.Microsoft\.Matrix\(.+?\)/i,
I = /,(?=[^\)]*(?:\(|$))/gi,
J = /[\s,\(]/i,
K = Math.PI / 180,
L = 180 / Math.PI,
M = {},
N = document,
O = function(a) { return N.createElementNS ? N.createElementNS("http://www.w3.org/1999/xhtml", a) : N.createElement(a) },
P = O("div"),
Q = O("img"),
R = g._internals = { _specialProps: i },
S = navigator.userAgent,
T = function() { var a = S.indexOf("Android"),
b = O("a"); return m = -1 !== S.indexOf("Safari") && -1 === S.indexOf("Chrome") && (-1 === a || Number(S.substr(a + 8, 1)) > 3), o = m && Number(S.substr(S.indexOf("Version/") + 8, 1)) < 6, n = -1 !== S.indexOf("Firefox"), (/MSIE ([0-9]{1,}[\.0-9]{0,})/.exec(S) || /Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/.exec(S)) && (p = parseFloat(RegExp.$1)), b ? (b.style.cssText = "top:1px;opacity:.55;", /^0.55/.test(b.style.opacity)) : !1 }(),
U = function(a) { return x.test("string" == typeof a ? a : (a.currentStyle ? a.currentStyle.filter : a.style.filter) || "") ? parseFloat(RegExp.$1) / 100 : 1 },
V = function(a) { window.console && console.log(a) },
W = "",
X = "",
Y = function(a, b) { b = b || P; 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 ? (X = 3 === d ? "ms" : c[d], W = "-" + X.toLowerCase() + "-", X + a) : null },
Z = N.defaultView ? N.defaultView.getComputedStyle : function() {},
$ = g.getStyle = function(a, b, c, d, e) { var f; return T || "opacity" !== b ? (!d && a.style[b] ? f = a.style[b] : (c = c || Z(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) : U(a) },
_ = R.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 = P.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 || N.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(P), h = parseFloat(P[k ? "offsetWidth" : "offsetHeight"]), l.removeChild(P), k && "%" === e && g.cacheWidths !== !1 && (i = l._gsCache = l._gsCache || {}, i.time = j, i.width = h / d * 100), 0 !== h || f || (h = _(a, c, d, e, !0)) } return o && (h /= 100), n ? -h : h },
aa = R.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] - (_(a, b, parseFloat(e), e.replace(w, "")) || 0) },
ba = function(a, b) { var c, d, e, f = {}; if (b = b || Z(a, null))
if (c = b.length)
for (; --c > -1;) e = b[c], (-1 === e.indexOf("-transform") || Ca === e) && (f[e.replace(C, E)] = b.getPropertyValue(e));
else
for (c in b)(-1 === c.indexOf("Transform") || Ba === 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 T || (f.opacity = U(a)), d = Pa(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, Ea && (f.z = d.z, f.rotationX = d.rotationX, f.rotationY = d.rotationY, f.scaleZ = d.scaleZ), f.filters && delete f.filters, f },
ca = 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 : aa(a, g), void 0 !== j[g] && (h = new ra(j, g, j[g], h))); if (d)
for (g in d) "className" !== g && (i[g] = d[g]); return { difs: i, firstMPT: h } },
da = { width: ["Left", "Right"], height: ["Top", "Bottom"] },
ea = ["marginLeft", "marginRight", "marginTop", "marginBottom"],
fa = function(a, b, c) { if ("svg" === (a.nodeName + "").toLowerCase()) return (c || Z(a))[b] || 0; if (a.getBBox && Ma(a)) return a.getBBox()[b] || 0; var d = parseFloat("width" === b ? a.offsetWidth : a.offsetHeight),
e = da[b],
f = e.length; for (c = c || Z(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 },
ga = 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(ga(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 },
ha = 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 },
ia = 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 },
ja = 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 },
ka = { 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] },
la = 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 },
ma = 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)), ka[a]) c = ka[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] = la(g + 1 / 3, d, e), c[1] = la(g, d, e), c[2] = la(g - 1 / 3, d, e);
else c = a.match(s) || ka.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 = ka.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 },
na = function(a, b) { var c, d, e, f = a.match(oa) || [],
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 = ma(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) },
oa = "(?:\\b(?:(?:rgb|rgba|hsl|hsla)\\(.+?\\))|\\B#(?:[0-9a-f]{3}){1,2}\\b";
for (j in ka) oa += "|" + j + "\\b";
oa = new RegExp(oa + ")", "gi"), g.colorStringFilter = function(a) { var b, c = a[0] + a[1];
oa.test(c) && (b = -1 !== c.indexOf("hsl(") || -1 !== c.indexOf("hsla("), a[0] = na(a[0], b), a[1] = na(a[1], b)), oa.lastIndex = 0 }, b.defaultStringFilter || (b.defaultStringFilter = g.colorStringFilter);
var pa = function(a, b, c, d) { if (null == a) return function(a) { return a }; var e, f = b ? (a.match(oa) || [""])[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(oa) || [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 } },
qa = 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) } },
ra = (R._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) }),
sa = (R._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 ra(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 ra(d, i, h, j, d.rxp[i]));
d = d._next } return { proxy: m, end: n, firstMPT: j, pt: k } }, R.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 sa || 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) }),
ta = function(a, b, c, d, e, f) { var g = new sa(a, b, c, d - c, e, -1, f); return g.b = c, g.e = g.xs0 = d, g },
ua = 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 sa(a, b, 0, 0, h, l ? 2 : 1, null, !1, i, c, d), d += "", e && oa.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, oa.lastIndex = 0, m = 0; F > m; m++)
if (p = D[m], u = E[m], x = parseFloat(p), x || 0 === x) h.appendXtra("", x, ha(u, x), u.replace(t, ""), G && -1 !== u.indexOf("px"), !0);
else if (e && oa.test(p)) B = u.indexOf(")") + 1, B = ")" + (B ? u.substr(B) : ""), C = -1 !== u.indexOf("hsl") && T, p = ma(p, C), u = ma(u, C), y = p.length + u.length > 6, y && !T && 0 === u[3] ? (h["xs" + h.l] += h.l ? " transparent" : "transparent", h.e = h.e.split(E[m]).join("transparent")) : (T || (y = !1), C ? h.appendXtra(y ? "hsla(" : "hsl(", p[0], ha(u[0], p[0]), ",", !1, !0).appendXtra("", p[1], ha(u[1], p[1]), "%,", !1).appendXtra("", p[2], ha(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))), oa.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), ha(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 },
va = 9;
for (j = sa.prototype, j.l = j.pr = 0; --va > 0;) j["xn" + va] = 0, j["xs" + va] = "";
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 sa(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 wa = function(a, b) { b = b || {}, this.p = b.prefix ? Y(a) || a : a, i[a] = i[this.p] = this, this.format = b.formatter || pa(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 },
xa = R._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 wa(f[d], b) },
ya = R._registerPluginProp = function(a) { if (!i[a]) { var b = a.charAt(0).toUpperCase() + a.substr(1) + "Plugin";
xa(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)) : (V("Error: " + b + " js file not loaded."), f) } }) } };
j = wa.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 ua(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) { xa(a, { parser: function(a, d, e, f, g, h, i) { var j = new sa(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 = m || n;
var za, Aa = "scaleX,scaleY,scaleZ,x,y,z,skewX,skewY,rotation,rotationX,rotationY,perspective,xPercent,yPercent".split(","),
Ba = Y("transform"),
Ca = W + "transform",
Da = Y("transformOrigin"),
Ea = null !== Y("perspective"),
Fa = R.Transform = function() { this.perspective = parseFloat(g.defaultTransformPerspective) || 0, this.force3D = g.defaultForce3D !== !1 && Ea ? g.defaultForce3D || "auto" : !1 },
Ga = window.SVGElement,
Ha = function(a, b, c) { var d, e = N.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 },
Ia = N.documentElement,
Ja = function() { var a, b, c, d = p || /Android/i.test(S) && !window.chrome; return N.createElementNS && !d && (a = Ha("svg", Ia), b = Ha("rect", a, { width: 100, height: 50, x: 100 }), c = b.getBoundingClientRect().width, b.style[Da] = "50% 50%", b.style[Ba] = "scaleX(0.5)", d = c === b.getBoundingClientRect().width && !(n && Ea), Ia.removeChild(a)), d }(),
Ka = 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 = Oa(a, !0);
v && (t = v.xOrigin, u = v.yOrigin), (!d || (h = d.split(" ")).length < 2) && (n = a.getBBox(), b = ga(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 !== Na && (m = w[0], n = w[1], o = w[2], p = w[3], q = w[4], r = w[5], s = m * p - n * o, 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(" ")) },
La = function(a) { try { return a.getBBox() } catch (a) {} },
Ma = function(a) { return !!(Ga && a.getBBox && a.getCTM && La(a) && (!a.parentNode || a.parentNode.getBBox && a.parentNode.getCTM)) },
Na = [1, 0, 0, 1, 0, 0],
Oa = function(a, b) { var c, d, e, f, g, h, i = a._gsTransform || new Fa,
j = 1e5,
k = a.style; if (Ba ? d = $(a, Ca, 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 && Ba && ((h = "none" === Z(a).display) || !a.parentNode) && (h && (f = k.display, k.display = "block"), a.parentNode || (g = 1, Ia.appendChild(a)), d = $(a, Ca, null, !0), c = !d || "none" === d || "matrix(1, 0, 0, 1, 0, 0)" === d, f ? k.display = f : h && Ta(k, "display"), g && Ia.removeChild(a)), (i.svg || a.getBBox && Ma(a)) && (c && -1 !== (k[Ba] + "").indexOf("matrix") && (d = k[Ba], 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 Na; for (e = (d || "").match(s) || [], va = e.length; --va > -1;) f = Number(e[va]), e[va] = (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 },
Pa = R.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 Fa : new Fa,
n = m.scaleX < 0,
o = 2e-5,
p = 1e5,
q = Ea ? parseFloat($(a, Da, c, !1, "0 0 0").split(" ")[2]) || m.zOrigin || 0 : 0,
r = parseFloat(g.defaultTransformPerspective) || 0; if (m.svg = !(!a.getBBox || !Ma(a)), m.svg && (Ka(a, $(a, Da, c, !1, "50% 50%") + "", m, a.getAttribute("data-svg-origin")), za = g.useSVGTransformAttr || Ja), f = Oa(a), f !== Na) { 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 (!Ea || 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, Ea && (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 && (za && a.style[Ba] ? b.delayedCall(.001, function() { Ta(a.style, Ba) }) : !za && a.getAttribute("transform") && b.delayedCall(.001, function() { a.removeAttribute("transform") }))), m },
Qa = 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), va = 0; 4 > va; va++) z = ea[va], y = m[z], c = -1 !== y.indexOf("px") ? parseFloat(y) : _(this.t, z, parseFloat(y), y.replace(w, "")) || 0, A = c !== d[z] ? 2 > va ? -d.ieOffsetX : -d.ieOffsetY : 2 > va ? n - d.ieOffsetX : o - d.ieOffsetY, l[z] = (d[z] = Math.round(c - A * (0 === va || 2 === va ? 1 : B))) + "px" } } },
Ra = R.set3DTransformRatio = R.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; if (((1 === a || 0 === a) && "auto" === N && (this.tween._totalTime === this.tween._totalDuration || !this.tween._totalTime) || !N) && !J && !M && !D && !C && 1 === G || za && L || !Ea) return void(B || z.skewX || L ? (B *= K, x = z.skewX * K, y = 1e5, b = Math.cos(B) * E, e = Math.sin(B) * E, c = Math.sin(B - x) * -F, f = Math.cos(B - x) * F, x && "simple" === z.skewType && (s = Math.tan(x - z.skewY * K), s = Math.sqrt(1 + s * s), c *= s, f *= s, z.skewY && (s = Math.tan(z.skewY * K), s = Math.sqrt(1 + s * s), b *= s, e *= s)), L && (H += z.xOrigin - (z.xOrigin * b + z.yOrigin * c) + z.xOffset, I += z.yOrigin - (z.xOrigin * e + z.yOrigin * f) + z.yOffset, za && (z.xPercent || z.yPercent) && (p = this.t.getBBox(), H += .01 * z.xPercent * p.width, I += .01 * z.yPercent * p.height), p = 1e-6, p > H && H > -p && (H = 0), p > I && I > -p && (I = 0)), u = (b * y | 0) / y + "," + (e * y | 0) / y + "," + (c * y | 0) / y + "," + (f * y | 0) / y + "," + H + "," + I + ")", L && za ? this.t.setAttribute("transform", "matrix(" + u) : A[Ba] = (z.xPercent || z.yPercent ? "translate(" + z.xPercent + "%," + z.yPercent + "%) matrix(" : "matrix(") + u) : A[Ba] = (z.xPercent || z.yPercent ? "translate(" + z.xPercent + "%," + z.yPercent + "%) matrix(" : "matrix(") + E + ",0,0," + F + "," + H + "," + I + ")"); if (n && (p = 1e-4, p > E && E > -p && (E = G = 2e-5), p > F && F > -p && (F = G = 2e-5), !M || z.z || z.rotationX || z.rotationY || (M = 0)), B || z.skewX) B *= K, q = b = Math.cos(B), r = e = Math.sin(B), z.skewX && (B -= z.skewX * K, q = Math.cos(B), r = Math.sin(B), "simple" === z.skewType && (s = Math.tan((z.skewX - z.skewY) * K), s = Math.sqrt(1 + s * s), q *= s, r *= s, z.skewY && (s = Math.tan(z.skewY * K), s = Math.sqrt(1 + s * s), b *= s, e *= s))), c = -r, f = q;
else { if (!(D || C || 1 !== G || M || L)) return void(A[Ba] = (z.xPercent || z.yPercent ? "translate(" + z.xPercent + "%," + z.yPercent + "%) translate3d(" : "translate3d(") + H + "px," + I + "px," + J + "px)" + (1 !== E || 1 !== F ? " scale(" + E + "," + F + ")" : ""));
b = f = 1, c = e = 0 } j = 1, d = g = h = i = k = l = 0, m = M ? -1 / M : 0, o = z.zOrigin, p = 1e-6, v = ",", w = "0", B = D * K, B && (q = Math.cos(B), r = Math.sin(B), h = -r, k = m * -r, d = b * r, g = e * r, j = q, m *= q, b *= q, e *= q), B = C * K, B && (q = Math.cos(B), r = Math.sin(B), s = c * q + d * r, t = f * q + g * r, i = j * r, l = m * r, d = c * -r + d * q, g = f * -r + g * q, j *= q, m *= q, c = s, f = t), 1 !== G && (d *= G, g *= G, j *= G, m *= G), 1 !== F && (c *= F, f *= F, i *= F, l *= F), 1 !== E && (b *= E, e *= E, h *= E, k *= E), (o || L) && (o && (H += d * -o, I += g * -o, J += j * -o + o), L && (H += z.xOrigin - (z.xOrigin * b + z.yOrigin * c) + z.xOffset, I += z.yOrigin - (z.xOrigin * e + z.yOrigin * f) + z.yOffset), p > H && H > -p && (H = w), p > I && I > -p && (I = w), p > J && J > -p && (J = 0)), u = z.xPercent || z.yPercent ? "translate(" + z.xPercent + "%," + z.yPercent + "%) matrix3d(" : "matrix3d(", u += (p > b && b > -p ? w : b) + v + (p > e && e > -p ? w : e) + v + (p > h && h > -p ? w : h), u += v + (p > k && k > -p ? w : k) + v + (p > c && c > -p ? w : c) + v + (p > f && f > -p ? w : f), C || D || 1 !== G ? (u += v + (p > i && i > -p ? w : i) + v + (p > l && l > -p ? w : l) + v + (p > d && d > -p ? w : d), u += v + (p > g && g > -p ? w : g) + v + (p > j && j > -p ? w : j) + v + (p > m && m > -p ? w : m) + v) : u += ",0,0,0,0,1,0,", u += H + v + I + v + J + v + (M ? 1 + -J / M : 1) + ")", A[Ba] = u };
j = Fa.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, xa("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;
"function" == typeof i[c] && (j = i[c], i[c] = b);
var k, l, m, n, o, p, s, t, u, v = a._gsTransform,
w = a.style,
x = 1e-6,
y = Aa.length,
z = i,
A = {},
B = "transformOrigin",
C = Pa(a, e, !0, z.parseTransform),
D = z.transform && ("function" == typeof z.transform ? z.transform(r, q) : z.transform);
if (d._transform = C, D && "string" == typeof D && Ba) l = P.style, l[Ba] = D, l.display = "block", l.position = "absolute", N.body.appendChild(P), k = Pa(P, null, !1), C.svg && (p = C.xOrigin, s = C.yOrigin, k.x -= C.xOffset, k.y -= C.yOffset, (z.transformOrigin || z.svgOrigin) && (D = {}, Ka(a, ga(z.transformOrigin), D, z.svgOrigin, z.smoothOrigin, !0), p = D.xOrigin, s = D.yOrigin, k.x -= D.xOffset - C.xOffset, k.y -= D.yOffset - C.yOffset), (p || s) && (t = Oa(P, !0), k.x -= p - (p * t[0] + s * t[2]), k.y -= s - (p * t[1] + s * t[3]))), N.body.removeChild(P), k.perspective || (k.perspective = C.perspective), null != z.xPercent && (k.xPercent = ia(z.xPercent, C.xPercent)), null != z.yPercent && (k.yPercent = ia(z.yPercent, C.yPercent));
else if ("object" == typeof z) { if (k = { scaleX: ia(null != z.scaleX ? z.scaleX : z.scale, C.scaleX), scaleY: ia(null != z.scaleY ? z.scaleY : z.scale, C.scaleY), scaleZ: ia(z.scaleZ, C.scaleZ), x: ia(z.x, C.x), y: ia(z.y, C.y), z: ia(z.z, C.z), xPercent: ia(z.xPercent, C.xPercent), yPercent: ia(z.yPercent, C.yPercent), perspective: ia(z.transformPerspective, C.perspective) }, o = z.directionalRotation, null != o)
if ("object" == typeof o)
for (l in o) z[l] = o[l];
else z.rotation = o; "string" == typeof z.x && -1 !== z.x.indexOf("%") && (k.x = 0, k.xPercent = ia(z.x, C.xPercent)), "string" == typeof z.y && -1 !== z.y.indexOf("%") && (k.y = 0, k.yPercent = ia(z.y, C.yPercent)), k.rotation = ja("rotation" in z ? z.rotation : "shortRotation" in z ? z.shortRotation + "_short" : "rotationZ" in z ? z.rotationZ : C.rotation - C.skewY, C.rotation - C.skewY, "rotation", A), Ea && (k.rotationX = ja("rotationX" in z ? z.rotationX : "shortRotationX" in z ? z.shortRotationX + "_short" : C.rotationX || 0, C.rotationX, "rotationX", A), k.rotationY = ja("rotationY" in z ? z.rotationY : "shortRotationY" in z ? z.shortRotationY + "_short" : C.rotationY || 0, C.rotationY, "rotationY", A)), k.skewX = ja(z.skewX, C.skewX - C.skewY), (k.skewY = ja(z.skewY, C.skewY)) && (k.skewX += k.skewY, k.rotation += k.skewY) }
for (Ea && null != z.force3D && (C.force3D = z.force3D, n = !0), C.skewType = z.skewType || C.skewType || g.defaultSkewType, m = C.force3D || C.z || C.rotationX || C.rotationY || k.z || k.rotationX || k.rotationY || k.perspective, m || null == z.scale || (k.scaleZ = 1); --y > -1;) u = Aa[y], D = k[u] - C[u], (D > x || -x > D || null != z[u] || null != M[u]) && (n = !0,
f = new sa(C, u, C[u], D, f), u in A && (f.e = A[u]), f.xs0 = 0, f.plugin = h, d._overwriteProps.push(f.n));
return D = z.transformOrigin, C.svg && (D || z.svgOrigin) && (p = C.xOffset, s = C.yOffset, Ka(a, ga(D), k, z.svgOrigin, z.smoothOrigin), f = ta(C, "xOrigin", (v ? C : k).xOrigin, k.xOrigin, f, B), f = ta(C, "yOrigin", (v ? C : k).yOrigin, k.yOrigin, f, B), (p !== C.xOffset || s !== C.yOffset) && (f = ta(C, "xOffset", v ? p : C.xOffset, C.xOffset, f, B), f = ta(C, "yOffset", v ? s : C.yOffset, C.yOffset, f, B)), D = za ? null : "0px 0px"), (D || Ea && m && C.zOrigin) && (Ba ? (n = !0, u = Da, D = (D || $(a, u, e, !1, "50% 50%")) + "", f = new sa(w, u, 0, 0, f, -1, B), f.b = w[u], f.plugin = h, Ea ? (l = C.zOrigin, D = D.split(" "), C.zOrigin = (D.length > 2 && (0 === l || "0px" !== D[2]) ? parseFloat(D[2]) : l) || 0, f.xs0 = f.e = D[0] + " " + (D[1] || "50%") + " 0px", f = new sa(C, "zOrigin", 0, 0, f, -1, f.n), f.b = l, f.xs0 = f.e = C.zOrigin) : f.xs0 = f.e = D) : ga(D + "", C)), n && (d._transformType = C.svg && za || !m && 3 !== this._transformType ? 2 : 3), j && (i[c] = j), f
},
prefix: !0
}), xa("boxShadow", { defaultValue: "0px 0px 0px 0px #999", prefix: !0, color: !0, multi: !0, keyword: "inset" }), xa("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] = Y(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 = _(a, "borderLeft", o, t), w = _(a, "borderTop", o, t), "%" === s ? (m = v / q * 100 + "%", l = w / r * 100 + "%") : "em" === s ? (x = _(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 = ua(z, y[j], m + " " + l, n + " " + k, !1, "0px", g); return g }, prefix: !0, formatter: pa("0px 0px 0px 0px", !1, !0) }), xa("borderBottomLeftRadius,borderBottomRightRadius,borderTopLeftRadius,borderTopRightRadius", { defaultValue: "0px", parser: function(a, b, c, d, f, g) { return ua(a.style, c, this.format($(a, c, e, !1, "0px 0px")), this.format(b), !1, "0px", f) }, prefix: !0, formatter: pa("0px 0px", !1, !0) }), xa("backgroundPosition", { defaultValue: "0 0", parser: function(a, b, c, d, f, g) { var h, i, j, k, l, m, n = "background-position",
o = e || Z(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(" "), Q.setAttribute("src", m), j = 2; --j > -1;) q = h[j], k = -1 !== q.indexOf("%"), k !== (-1 !== i[j].indexOf("%")) && (l = 0 === j ? a.offsetWidth - Q.width : a.offsetHeight - Q.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: ga }), xa("backgroundSize", { defaultValue: "0 0", formatter: function(a) { return a += "", ga(-1 === a.indexOf(" ") ? a + " " + a : a) } }), xa("perspective", { defaultValue: "0px", prefix: !0 }), xa("perspectiveOrigin", { defaultValue: "50% 50%", prefix: !0 }), xa("transformStyle", { prefix: !0 }), xa("backfaceVisibility", { prefix: !0 }), xa("userSelect", { prefix: !0 }), xa("margin", { parser: qa("marginTop,marginRight,marginBottom,marginLeft") }), xa("padding", { parser: qa("paddingTop,paddingRight,paddingBottom,paddingLeft") }), xa("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) } }), xa("textShadow", { defaultValue: "0px 0px 0px #999", color: !0, multi: !0 }), xa("autoRound,strictUnits", { parser: function(a, b, c, d, e) { return e } }), xa("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) / _(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(oa) || ["#000"])[0] } }), xa("borderWidth", { parser: qa("borderTopWidth,borderRightWidth,borderBottomWidth,borderLeftWidth") }), xa("float,cssFloat,styleFloat", { parser: function(a, b, c, d, e, f) { var g = a.style,
h = "cssFloat" in g ? "cssFloat" : "styleFloat"; return new sa(g, h, 0, 0, e, -1, c, !1, 0, g[h], b) } });
var Sa = 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)) };
xa("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), T ? f = new sa(i, "opacity", h, b - h, f) : (f = new sa(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 = Sa), j && (f = new sa(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 Ta = 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)) },
Ua = 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 : Ta(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) };
xa("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 sa(a, d, 0, 0, g, 2), g.setRatio = Ua, g.pr = -11, c = !0, g.b = o, k = ba(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 = ca(a, k, ba(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 Va = 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 ? Da : i[c].p), Ta(g, c);
e && (Ta(g, Ba), f = this.t._gsTransform, f && (f.svg && (this.t.removeAttribute("data-svg-origin"), this.t.removeAttribute("transform")), delete this.t._gsTransform)) } };
for (xa("clearProps", { parser: function(a, b, d, e, f) { return f = new sa(a, d, 0, 0, f, 2), f.setRatio = Va, f.e = b, f.pr = -10, f.data = e._tween, c = !0, f } }), j = "bezier,throwProps,physicsProps,physics2D".split(","), va = j.length; va--;) ya(j[va]);
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 = Z(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 = ba(a, e), A.cssText = t + ";" + b, n = ca(a, n, ba(a)).difs, !T && 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, Ba ? 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 sa(a, "transform", 0, 0, null, 2), this._linkCSSP(x, null, s), x.setRatio = Ba ? Ra : Qa, x.data = this._transform || Pa(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 = ma(n), n = (n.length > 3 ? "rgba(" : "rgb(") + n.join(",") + ")"), c = ua(u, g, m, n, !0, "transparent", c, 0, f)) : s && J.test(n) ? c = ua(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 = fa(a, g, e), o = "px") : "left" === g || "top" === g ? (j = aa(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 = _(a, g, j, o), "%" === p ? (j /= _(a, g, 100, "%") / 100, b.strictUnits !== !0 && (m = j + "%")) : "em" === p || "rem" === p || "vw" === p || "vh" === p ? j /= _(a, g, 1, p) : "px" !== p && (l = _(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 sa(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) : V("invalid " + g + " tween value: " + b[g]) : (c = new sa(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 || Pa(this._target, e, !0), this._transformType = this._transform.svg && za || !a && 3 !== this._transformType ? 2 : 3 };
var Wa = 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 sa(a, b, 0, 0, this._firstPT, 2);
d.e = c, d.setRatio = Wa, 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 Xa = function(a, b, c) { var d, e, f, g; if (a.slice)
for (e = a.length; --e > -1;) Xa(a[e], b, c);
else
for (d = a.childNodes, e = d.length; --e > -1;) f = d[e], g = f.type, f.style && (b.push(ba(f)), c && c.push(f)), 1 !== g && 9 !== g && 11 !== g || !f.childNodes.length || Xa(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, Xa(a, k, m), i.render(c, !0, !0), Xa(a, l), i.render(0, !0, !0), i._enabled(!0), e = m.length; --e > -1;)
if (f = ca(m[e], k[e], l[e]), f.firstMPT) { f = f.difs; for (g in d) n[g] && (f[g] = d[g]);
h = {}; for (g in f) h[g] = k[e][g];
j.push(b.fromTo(m[e], c, h, f)) } return j }, a.activate([g]), g
}, !0),
function() { var a = _gsScope._gsDefine.plugin({ propName: "roundProps", version: "1.6.0", priority: -1, API: 2, init: function(a, b, c) { return this._tween = c, !0 } }),
b = function(a) { for (; a;) a.f || a.blob || (a.m = Math.round), a = a._next },
c = a.prototype;
c._onInitAllProps = function() { for (var a, c, d, e = this._tween, f = e.vars.roundProps.join ? e.vars.roundProps : e.vars.roundProps.split(","), g = f.length, h = {}, i = e._propLookup.roundProps; --g > -1;) h[f[g]] = Math.round; for (g = f.length; --g > -1;)
for (a = f[g], c = e._firstPT; c;) d = c._next, c.pg ? c.t._mod(h) : c.n === a && (2 === c.f && c.t ? b(c.t._firstPT) : (this._add(c.t, a, c.s, c.c), d && (d._prev = c._prev), c._prev ? c._prev._next = d : e._firstPT === c && (e._firstPT = d), c._next = c._prev = null, e._propLookup[a] = i)), c = d; return !1 }, c._add = function(a, b, c, d) { this._addTween(a, b, c, c + d, b, Math.round), this._overwriteProps.push(b) } }(),
function() { _gsScope._gsDefine.plugin({ propName: "attr", API: 2, version: "0.6.0", init: function(a, b, c, d) { var e, f; if ("function" != typeof a.setAttribute) return !1; for (e in b) f = b[e], "function" == typeof f && (f = f(d, a)), this._addTween(a, "setAttribute", a.getAttribute(e) + "", f + "", e, !1, e), this._overwriteProps.push(e); return !0 } }) }(), _gsScope._gsDefine.plugin({ propName: "directionalRotation", version: "0.3.0", API: 2, init: function(a, b, c, d) { "object" != typeof b && (b = { rotation: b }), this.finals = {}; var e, f, g, h, i, j, k = b.useRadians === !0 ? 2 * Math.PI : 360,
l = 1e-6; for (e in b) "useRadians" !== e && (h = b[e], "function" == typeof h && (h = h(d, a)), j = (h + "").split("_"), f = j[0], g = parseFloat("function" != typeof a[e] ? a[e] : a[e.indexOf("set") || "function" != typeof a["get" + e.substr(3)] ? e : "get" + e.substr(3)]()), h = this.finals[e] = "string" == typeof f && "=" === f.charAt(1) ? g + parseInt(f.charAt(0) + "1", 10) * Number(f.substr(2)) : Number(f) || 0, i = h - g, j.length && (f = j.join("_"), -1 !== f.indexOf("short") && (i %= k, i !== i % (k / 2) && (i = 0 > i ? i + k : i - k)), -1 !== f.indexOf("_cw") && 0 > i ? i = (i + 9999999999 * k) % k - (i / k | 0) * k : -1 !== f.indexOf("ccw") && i > 0 && (i = (i - 9999999999 * k) % k - (i / k | 0) * k)), (i > l || -l > i) && (this._addTween(a, e, g, g + i, e), this._overwriteProps.push(e))); return !0 }, set: function(a) { var b; if (1 !== a) this._super.setRatio.call(this, a);
else
for (b = this._firstPT; b;) b.f ? b.t[b.p](this.finals[b.p]) : b.t[b.p] = this.finals[b.p], b = b._next } })._autoCSS = !0, _gsScope._gsDefine("easing.Back", ["easing.Ease"], function(a) { var b, c, d, e = _gsScope.GreenSockGlobals || _gsScope,
f = e.com.greensock,
g = 2 * Math.PI,
h = Math.PI / 2,
i = f._class,
j = function(b, c) { var d = i("easing." + b, function() {}, !0),
e = d.prototype = new a; return e.constructor = d, e.getRatio = c, d },
k = a.register || function() {},
l = function(a, b, c, d, e) { var f = i("easing." + a, { easeOut: new b, easeIn: new c, easeInOut: new d }, !0); return k(f, a), f },
m = function(a, b, c) { this.t = a, this.v = b, c && (this.next = c, c.prev = this, this.c = c.v - b, this.gap = c.t - a) },
n = function(b, c) { var d = i("easing." + b, function(a) { this._p1 = a || 0 === a ? a : 1.70158, this._p2 = 1.525 * this._p1 }, !0),
e = d.prototype = new a; return e.constructor = d, e.getRatio = c, e.config = function(a) { return new d(a) }, d },
o = l("Back", n("BackOut", function(a) { return (a -= 1) * a * ((this._p1 + 1) * a + this._p1) + 1 }), n("BackIn", function(a) { return a * a * ((this._p1 + 1) * a - this._p1) }), n("BackInOut", function(a) { return (a *= 2) < 1 ? .5 * a * a * ((this._p2 + 1) * a - this._p2) : .5 * ((a -= 2) * a * ((this._p2 + 1) * a + this._p2) + 2) })),
p = i("easing.SlowMo", function(a, b, c) { b = b || 0 === b ? b : .7, null == a ? a = .7 : a > 1 && (a = 1), this._p = 1 !== a ? b : 0, this._p1 = (1 - a) / 2, this._p2 = a, this._p3 = this._p1 + this._p2, this._calcEnd = c === !0 }, !0),
q = p.prototype = new a; return q.constructor = p, q.getRatio = function(a) { var b = a + (.5 - a) * this._p; return a < this._p1 ? this._calcEnd ? 1 - (a = 1 - a / this._p1) * a : b - (a = 1 - a / this._p1) * a * a * a * b : a > this._p3 ? this._calcEnd ? 1 - (a = (a - this._p3) / this._p1) * a : b + (a - b) * (a = (a - this._p3) / this._p1) * a * a * a : this._calcEnd ? 1 : b }, p.ease = new p(.7, .7), q.config = p.config = function(a, b, c) { return new p(a, b, c) }, b = i("easing.SteppedEase", function(a) { 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(a, b) {
"use strict";
var c = {},
d = a.GreenSockGlobals = a.GreenSockGlobals || a;
if (!d.TweenLite) {
var e, f, g, h, i, j = function(a) { var b, c = a.split("."),
e = d; for (b = 0; b < c.length; b++) e[c[b]] = e = e[c[b]] || {}; return e },
k = j("com.greensock"),
l = 1e-10,
m = function(a) { var b, c = [],
d = a.length; for (b = 0; b !== d; c.push(a[b++])); return c },
n = function() {},
o = 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) } }(),
p = {},
q = function(e, f, g, h) { this.sc = p[e] ? p[e].sc : [], p[e] = this, this.gsClass = null, this.func = g; var i = [];
this.check = function(k) { for (var l, m, n, o, r, s = f.length, t = s; --s > -1;)(l = p[f[s]] || new q(f[s], [])).gsClass ? (i[s] = l.gsClass, t--) : k && l.sc.push(this); if (0 === t && g) { if (m = ("com.greensock." + e).split("."), n = m.pop(), o = j(m.join("."))[n] = this.gsClass = g.apply(g, i), h)
if (d[n] = c[n] = o, r = "undefined" != typeof module && module.exports, !r && "function" == typeof define && define.amd) define((a.GreenSockAMDPath ? a.GreenSockAMDPath + "/" : "") + e.split(".").pop(), [], function() { return o });
else if (r)
if (e === 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) },
r = a._gsDefine = function(a, b, c, d) { return new q(a, b, c, d) },
s = k._class = function(a, b, c) { return b = b || function() {}, r(a, [], function() { return b }, c), b };
r.globals = d;
var t = [0, 0, 1, 1],
u = s("easing.Ease", function(a, b, c, d) { this._func = a, this._type = c || 0, this._power = d || 0, this._params = b ? t.concat(b) : t }, !0),
v = u.map = {},
w = u.register = function(a, b, c, d) { for (var e, f, g, h, i = b.split(","), j = i.length, l = (c || "easeIn,easeOut,easeInOut").split(","); --j > -1;)
for (f = i[j], e = d ? s("easing." + f, null, !0) : k.easing[f] || {}, g = l.length; --g > -1;) h = l[g], v[f + "." + h] = v[h + f] = e[h] = a.getRatio ? a : a[h] || new a };
for (g = u.prototype, g._calcEnd = !1, g.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 }, e = ["Linear", "Quad", "Cubic", "Quart", "Quint,Strong"], f = e.length; --f > -1;) g = e[f] + ",Power" + f, w(new u(null, null, 1, f), g, "easeOut", !0), w(new u(null, null, 2, f), g, "easeIn" + (0 === f ? ",easeNone" : "")), w(new u(null, null, 3, f), g, "easeInOut");
v.linear = k.easing.Linear.easeIn, v.swing = k.easing.Quad.easeInOut;
var x = s("events.EventDispatcher", function(a) { this._listeners = {}, this._eventTarget = a || this });
g = x.prototype, g.addEventListener = function(a, b, c, d, e) { e = e || 0; var f, g, j = this._listeners[a],
k = 0; for (this !== h || i || h.wake(), null == j && (this._listeners[a] = j = []), g = j.length; --g > -1;) f = j[g], f.c === b && f.s === c ? j.splice(g, 1) : 0 === k && f.pr < e && (k = g + 1);
j.splice(k, 0, { c: b, s: c, up: d, pr: e }) }, g.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) }, g.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 y = a.requestAnimationFrame,
z = a.cancelAnimationFrame,
A = Date.now || function() { return (new Date).getTime() },
B = A();
for (e = ["ms", "moz", "webkit", "o"], f = e.length; --f > -1 && !y;) y = a[e[f] + "RequestAnimationFrame"], z = a[e[f] + "CancelAnimationFrame"] || a[e[f] + "CancelRequestAnimationFrame"];
s("Ticker", function(a, b) { var c, d, e, f, g, j = this,
k = A(),
m = b !== !1 && y ? "auto" : !1,
o = 500,
p = 33,
q = "tick",
r = function(a) { var b, h, i = A() - B;
i > o && (k += i - p), B += i, j.time = (B - k) / 1e3, b = j.time - g, (!c || b > 0 || a === !0) && (j.frame++, g += b + (b >= f ? .004 : f - b), h = !0), a !== !0 && (e = d(r)), h && j.dispatchEvent(q) };
x.call(j), j.time = j.frame = 0, j.tick = function() { r(!0) }, j.lagSmoothing = function(a, b) { o = a || 1 / l, p = Math.min(b, o, 0) }, j.sleep = function() { null != e && (m && z ? z(e) : clearTimeout(e), d = n, e = null, j === h && (i = !1)) }, j.wake = function(a) { null !== e ? j.sleep() : a ? k += -B + (B = A()) : j.frame > 10 && (B = A() - o + 5), d = 0 === c ? n : m && y ? y : function(a) { return setTimeout(a, 1e3 * (g - j.time) + 1 | 0) }, j === h && (i = !0), r(2) }, j.fps = function(a) { return arguments.length ? (c = a, f = 1 / (c || 60), g = this.time + f, void j.wake()) : c }, j.useRAF = function(a) { return arguments.length ? (j.sleep(), m = a, void j.fps(c)) : m }, j.fps(a), setTimeout(function() { "auto" === m && j.frame < 5 && "hidden" !== document.visibilityState && j.useRAF(!1) }, 1500) }), g = k.Ticker.prototype = new k.events.EventDispatcher, g.constructor = k.Ticker;
var C = s("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, V) { i || h.wake(); var c = this.vars.useFrames ? U : V;
c.add(this, c._time), this.vars.paused && this.paused(!0) } });
h = C.ticker = new k.Ticker, g = C.prototype, g._dirty = g._gc = g._initted = g._paused = !1, g._totalTime = g._time = 0, g._rawPrevTime = -1, g._next = g._last = g._onUpdate = g._timeline = g.timeline = null, g._paused = !1;
var D = function() { i && A() - B > 2e3 && h.wake(), setTimeout(D, 2e3) };
D(), g.play = function(a, b) { return null != a && this.seek(a, b), this.reversed(!1).paused(!1) }, g.pause = function(a, b) { return null != a && this.seek(a, b), this.paused(!0) }, g.resume = function(a, b) { return null != a && this.seek(a, b), this.paused(!1) }, g.seek = function(a, b) { return this.totalTime(Number(a), b !== !1) }, g.restart = function(a, b) { return this.reversed(!1).paused(!1).totalTime(a ? -this._delay : 0, b !== !1, !0) }, g.reverse = function(a, b) { return null != a && this.seek(a || this.totalDuration(), b), this.reversed(!0).paused(!1) }, g.render = function(a, b, c) {}, g.invalidate = function() { return this._time = this._totalTime = 0, this._initted = this._gc = !1, this._rawPrevTime = -1, (this._gc || !this.timeline) && this._enabled(!0), this }, g.isActive = function() { var a, b = this._timeline,
c = this._startTime; return !b || !this._gc && !this._paused && b.isActive() && (a = b.rawTime()) >= c && a < c + this.totalDuration() / this._timeScale }, g._enabled = function(a, b) { return i || h.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 }, g._kill = function(a, b) { return this._enabled(!1, !1) }, g.kill = function(a, b) { return this._kill(a, b), this }, g._uncache = function(a) { for (var b = a ? this : this.timeline; b;) b._dirty = !0, b = b.timeline; return this }, g._swapSelfInParams = function(a) { for (var b = a.length, c = a.concat(); --b > -1;) "{self}" === a[b] && (c[b] = this); return c }, g._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) } }, g.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"] = o(c) && -1 !== c.join("").indexOf("{self}") ? this._swapSelfInParams(c) : c, e[a + "Scope"] = d), "onUpdate" === a && (this._onUpdate = b) } return this }, g.delay = function(a) { return arguments.length ? (this._timeline.smoothChildTiming && this.startTime(this._startTime + a - this._delay), this._delay = a, this) : this._delay }, g.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) }, g.totalDuration = function(a) { return this._dirty = !1, arguments.length ? this.duration(a) : this._totalDuration }, g.time = function(a, b) { return arguments.length ? (this._dirty && this.totalDuration(), this.totalTime(a > this._duration ? this._duration : a, b)) : this._time }, g.totalTime = function(a, b, c) { if (i || h.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) && (I.length && X(), this.render(a, b, !1), I.length && X()) } return this }, g.progress = g.totalProgress = function(a, b) { var c = this.duration(); return arguments.length ? this.totalTime(c * a, b) : c ? this._time / c : this.ratio }, g.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 }, g.endTime = function(a) { return this._startTime + (0 != a ? this.totalDuration() : this.duration()) / this._timeScale }, g.timeScale = function(a) { if (!arguments.length) return this._timeScale; if (a = a || l, 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) }, g.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 }, g.paused = function(a) { if (!arguments.length) return this._paused; var b, c, d = this._timeline; return a != this._paused && d && (i || a || h.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 E = s("core.SimpleTimeline", function(a) { C.call(this, 0, a), this.autoRemoveChildren = this.smoothChildTiming = !0 });
g = E.prototype = new C, g.constructor = E, g.kill()._gc = !1, g._first = g._last = g._recent = null, g._sortChildren = !1, g.add = g.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 }, g._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 }, g.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 }, g.rawTime = function() { return i || h.wake(), this._totalTime };
var F = s("TweenLite", function(b, c, d) { if (C.call(this, c, d), this.render = F.prototype.render, null == b) throw "Cannot tween a null target.";
this.target = b = "string" != typeof b ? b : F.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 ? T[F.defaultOverwrite] : "number" == typeof i ? i >> 0 : T[i], (h || b instanceof Array || b.push && o(b)) && "number" != typeof b[0])
for (this._targets = g = m(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(m(f))) : (this._siblings[e] = Y(f, this, !1), 1 === i && this._siblings[e].length > 1 && $(f, this, null, 1, this._siblings[e])) : (f = g[e--] = F.selector(f), "string" == typeof f && g.splice(e + 1, 1)) : g.splice(e--, 1);
else this._propLookup = {}, this._siblings = Y(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 = -l, this.render(Math.min(0, -this._delay))) }, !0),
G = function(b) {
return b && b.length && b !== a && b[0] && (b[0] === a || b[0].nodeType && b[0].style && !b.nodeType);
},
H = function(a, b) { var c, d = {}; for (c in a) S[c] || c in b && "transform" !== c && "x" !== c && "y" !== c && "width" !== c && "height" !== c && "className" !== c && "border" !== c || !(!P[c] || P[c] && P[c]._autoCSS) || (d[c] = a[c], delete a[c]);
a.css = d };
g = F.prototype = new C, g.constructor = F, g.kill()._gc = !1, g.ratio = 0, g._firstPT = g._targets = g._overwrittenProps = g._startAt = null, g._notifyPluginsOfEnabled = g._lazy = !1, F.version = "1.19.0", F.defaultEase = g._ease = new u(null, null, 1, 1), F.defaultOverwrite = "auto", F.ticker = h, F.autoSleep = 120, F.lagSmoothing = function(a, b) { h.lagSmoothing(a, b) }, F.selector = a.$ || a.jQuery || function(b) { var c = a.$ || a.jQuery; return c ? (F.selector = c, c(b)) : "undefined" == typeof document ? b : document.querySelectorAll ? document.querySelectorAll(b) : document.getElementById("#" === b.charAt(0) ? b.substr(1) : b) };
var I = [],
J = {},
K = /(?:(-|-=|\+=)?\d*\.?\d*(?:e[\-+]?\d+)?)[0-9]/gi,
L = function(a) { for (var b, c = this._firstPT, d = 1e-6; c;) b = c.blob ? a ? this.join("") : this.start : c.c * a + c.s, c.m ? b = c.m(b, this._target || c.t) : d > b && b > -d && (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 },
M = function(a, b, c, d) { var e, f, g, h, i, j, k, l = [a, b],
m = 0,
n = "",
o = 0; for (l.start = a, c && (c(l), a = l[0], b = l[1]), l.length = 0, e = a.match(K) || [], f = b.match(K) || [], 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 = L, l },
N = function(a, b, c, d, e, f, g, h, i) { "function" == typeof d && (d = d(i || 0, a)); var j, k, l = "get" === c ? a[b] : c,
m = typeof a[b],
n = "string" == typeof d && "=" === d.charAt(1),
o = { t: a, p: b, s: l, f: "function" === m, 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) - l || 0 }; return "number" !== m && ("function" === m && "get" === c && (k = b.indexOf("set") || "function" != typeof a["get" + b.substr(3)] ? b : "get" + b.substr(3), o.s = l = g ? a[k](g) : a[k]()), "string" == typeof l && (g || isNaN(l)) ? (o.fp = g, j = M(l, d, h || F.defaultStringFilter, o), o = { t: j, p: "setRatio", s: 0, c: 1, f: 2, pg: 0, n: e || b, pr: 0, m: 0 }) : n || (o.s = parseFloat(l), o.c = parseFloat(d) - o.s || 0)), o.c ? ((o._next = this._firstPT) && (o._next._prev = o), this._firstPT = o, o) : void 0 },
O = F._internals = { isArray: o, isSelector: G, lazyTweens: I, blobDif: M },
P = F._plugins = {},
Q = O.tweenLookup = {},
R = 0,
S = O.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 },
T = { none: 0, all: 1, auto: 2, concurrent: 3, allOnStart: 4, preexisting: 5, "true": 1, "false": 0 },
U = C._rootFramesTimeline = new E,
V = C._rootTimeline = new E,
W = 30,
X = O.lazyRender = function() { var a, b = I.length; for (J = {}; --b > -1;) a = I[b], a && a._lazy !== !1 && (a.render(a._lazy[0], a._lazy[1], !0), a._lazy = !1);
I.length = 0 };
V._startTime = h.time, U._startTime = h.frame, V._active = U._active = !0, setTimeout(X, 1), C._updateRoot = F.render = function() { var a, b, c; if (I.length && X(), V.render((h.time - V._startTime) * V._timeScale, !1, !1), U.render((h.frame - U._startTime) * U._timeScale, !1, !1), I.length && X(), h.frame >= W) { W = h.frame + (parseInt(F.autoSleep, 10) || 120); for (c in Q) { for (b = Q[c].tweens, a = b.length; --a > -1;) b[a]._gc && b.splice(a, 1);
0 === b.length && delete Q[c] } if (c = V._first, (!c || c._paused) && F.autoSleep && !U._first && 1 === h._listeners.tick.length) { for (; c && c._paused;) c = c._next;
c || h.sleep() } } }, h.addEventListener("tick", C._updateRoot);
var Y = function(a, b, c) { var d, e, f = a._gsTweenID; if (Q[f || (a._gsTweenID = f = "t" + R++)] || (Q[f] = { target: a, tweens: [] }), b && (d = Q[f].tweens, d[e = d.length] = b, c))
for (; --e > -1;) d[e] === b && d.splice(e, 1); return Q[f].tweens },
Z = function(a, b, c, d) { var e, f, g = a.vars.onOverwrite; return g && (e = g(a, b, c, d)), g = F.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 + l,
m = [],
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 || _(b, 0, o), 0 === _(h, j, o) && (m[n++] = h)) : h._startTime <= k && h._startTime + h.totalDuration() / h._timeScale > k && ((o || !h._initted) && k - h._startTime <= 2e-10 || (m[n++] = h))); for (f = n; --f > -1;)
if (h = m[f], 2 === d && h._kill(c, a, b) && (g = !0), 2 !== d || !h._firstPT && h._initted) { if (2 !== d && !Z(h, b)) continue;
h._enabled(!1, !1) && (g = !0) } return g },
_ = 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 * l > f - b ? l : (f += a.totalDuration() / a._timeScale / e) > b + l ? 0 : f - b - l };
g._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 = F.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) S[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 = F.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 u ? k : "function" == typeof k ? new u(k, g.easeParams) : v[k] || F.defaultEase : F.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 && F._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 }, g._initProps = function(b, c, d, e, f) { var g, h, i, j, k, l; if (null == b) return !1;
J[b._gsTweenID] && X(), this.vars.css || b.style && b !== a && b.nodeType && P.css && this.vars.autoCSS !== !1 && H(this.vars, b); for (g in this.vars)
if (l = this.vars[g], S[g]) l && (l instanceof Array || l.push && o(l)) && -1 !== l.join("").indexOf("{self}") && (this.vars[g] = l = this._swapSelfInParams(l, this));
else if (P[g] && (j = new P[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] = N.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) && (J[b._gsTweenID] = !0), i) }, g.render = function(a, b, c) { var d, e, f, g, h = this._time,
i = this._duration,
j = this._rawPrevTime; if (a >= i - 1e-7) 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 === l && "isPause" !== this.data) && j !== a && (c = !0, j > l && (e = "onReverseComplete")), this._rawPrevTime = g = !b || a || j === a ? a : l);
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 !== l || "isPause" !== this.data) && (c = !0), this._rawPrevTime = g = !b || a || j === a ? a : l)), this._initted || (c = !0);
else if (this._totalTime = this._time = a, this._easeType) { var k = a / i,
m = this._easeType,
n = this._easePower;
(1 === m || 3 === m && k >= .5) && (k = 1 - k), 3 === m && (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 === m ? this.ratio = 1 - k : 2 === m ? 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, I.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 === l && g !== l && (this._rawPrevTime = 0)) } }, g._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 : F.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 ((o(b) || G(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 && (F.onOverwrite || this.vars.onOverwrite)) { for (f in j) h[f] && (l || (l = []), l.push(f)); if ((l || !a) && !Z(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 }, g.invalidate = function() { return this._notifyPluginsOfEnabled && F._onPluginEvent("_onDisable", this), this._firstPT = this._overwrittenProps = this._startAt = this._onUpdate = null, this._notifyPluginsOfEnabled = this._active = this._lazy = !1, this._propLookup = this._targets ? {} : [], C.prototype.invalidate.call(this), this.vars.immediateRender && (this._time = -l, this.render(Math.min(0, -this._delay))), this }, g._enabled = function(a, b) { if (i || h.wake(), a && this._gc) { var c, d = this._targets; if (d)
for (c = d.length; --c > -1;) this._siblings[c] = Y(d[c], this, !0);
else this._siblings = Y(this.target, this, !0) } return C.prototype._enabled.call(this, a, b), this._notifyPluginsOfEnabled && this._firstPT ? F._onPluginEvent(a ? "_onEnable" : "_onDisable", this) : !1 }, F.to = function(a, b, c) { return new F(a, b, c) }, F.from = function(a, b, c) { return c.runBackwards = !0, c.immediateRender = 0 != c.immediateRender, new F(a, b, c) }, F.fromTo = function(a, b, c, d) { return d.startAt = c, d.immediateRender = 0 != d.immediateRender && 0 != c.immediateRender, new F(a, b, d) }, F.delayedCall = function(a, b, c, d, e) { return new F(b, 0, { delay: a, onComplete: b, onCompleteParams: c, callbackScope: d, onReverseComplete: b, onReverseCompleteParams: c, immediateRender: !1, lazy: !1, useFrames: e, overwrite: 0 }) }, F.set = function(a, b) { return new F(a, 0, b) }, F.getTweensOf = function(a, b) { if (null == a) return [];
a = "string" != typeof a ? a : F.selector(a) || a; var c, d, e, f; if ((o(a) || G(a)) && "number" != typeof a[0]) { for (c = a.length, d = []; --c > -1;) d = d.concat(F.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 = Y(a).concat(), c = d.length; --c > -1;)(d[c]._gc || b && !d[c].isActive()) && d.splice(c, 1); return d }, F.killTweensOf = F.killDelayedCallsTo = function(a, b, c) { "object" == typeof b && (c = b, b = !1); for (var d = F.getTweensOf(a, b), e = d.length; --e > -1;) d[e]._kill(c, a) };
var aa = s("plugins.TweenPlugin", function(a, b) { this._overwriteProps = (a || "").split(","), this._propName = this._overwriteProps[0], this._priority = b || 0, this._super = aa.prototype }, !0);
if (g = aa.prototype, aa.version = "1.19.0", aa.API = 2, g._firstPT = null, g._addTween = N, g.setRatio = L, g._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 }, g._mod = g._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 }, F._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 }, aa.activate = function(a) { for (var b = a.length; --b > -1;) a[b].API === aa.API && (P[(new a[b])._propName] = a[b]); return !0 }, r.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 = s("plugins." + c.charAt(0).toUpperCase() + c.substr(1) + "Plugin", function() { aa.call(this, c, d), this._overwriteProps = e || [] }, a.global === !0),
h = g.prototype = new aa(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, aa.activate([g]), g }, e = a._gsQueue) { for (f = 0; f < e.length; f++) e[f](); for (g in p) p[g].func || a.console.log("GSAP encountered missing dependency: " + g) } i = !1
}
}("undefined" != typeof module && module.exports && "undefined" != typeof global ? global : this || window, "TweenMax");