PageSourceSearch

https://frankburger.co.kr/js/2022_common_gon.js?1790410175

js frankburger.co.kr collected 2026-09-26 08:09:40 UTC 331,850 bytes, 9,346 lines download raw bytes

1var win = $(window),
2  doc = $(document);
3
4/**************************************************************************************************
5 * THIRD PARTY LIBRARIES
6 **************************************************************************************************/
7/*!
8 * VERSION: 1.20.4
9 * DATE: 2018-02-15
10 * UPDATES AND DOCS AT: http://greensock.com
11 *
12 * Includes all of the following: TweenLite, TweenMax, TimelineLite, TimelineMax, EasePack, CSSPlugin, RoundPropsPlugin, BezierPlugin, AttrPlugin, DirectionalRotationPlugin
13 *
14 * @license Copyright (c) 2008-2018, GreenSock. All rights reserved.
15 * This work is subject to the terms at http://greensock.com/standard-license or for
16 * Club GreenSock members, the software agreement that was issued with your membership.
17 *
18 * @author: Jack Doyle, [email protected]
19 **/
20var _gsScope =
21  'undefined' != typeof module && module.exports && 'undefined' != typeof global
22    ? global
23    : this || window;
24((_gsScope._gsQueue || (_gsScope._gsQueue = [])).push(function () {
25  'use strict';
26  (_gsScope._gsDefine(
27    'TweenMax',
28    ['core.Animation', 'core.SimpleTimeline', 'TweenLite'],
29    function (a, b, c) {
30      var d = function (a) {
31          var b,
32            c = [],
33            d = a.length;
34          for (b = 0; b !== d; c.push(a[b++]));
35          return c;
36        },
37        e = function (a, b, c) {
38          var d,
39            e,
40            f = a.cycle;
41          for (d in f)
42            ((e = f[d]),
43              (a[d] = 'function' == typeof e ? e(c, b[c]) : e[c % e.length]));
44          delete a.cycle;
45        },
46        f = function (a, b, d) {
47          (c.call(this, a, b, d),
48            (this._cycle = 0),
49            (this._yoyo = this.vars.yoyo === !0 || !!this.vars.yoyoEase),
50            (this._repeat = this.vars.repeat || 0),
51            (this._repeatDelay = this.vars.repeatDelay || 0),
52            this._repeat && this._uncache(!0),
53            (this.render = f.prototype.render));
54        },
55        g = 1e-10,
56        h = c._internals,
57        i = h.isSelector,
58        j = h.isArray,
59        k = (f.prototype = c.to({}, 0.1, {})),
60        l = [];
61      ((f.version = '1.20.4'),
62        (k.constructor = f),
63        (k.kill()._gc = !1),
64        (f.killTweensOf = f.killDelayedCallsTo = c.killTweensOf),
65        (f.getTweensOf = c.getTweensOf),
66        (f.lagSmoothing = c.lagSmoothing),
67        (f.ticker = c.ticker),
68        (f.render = c.render),
69        (k.invalidate = function () {
70          return (
71            (this._yoyo = this.vars.yoyo === !0 || !!this.vars.yoyoEase),
72            (this._repeat = this.vars.repeat || 0),
73            (this._repeatDelay = this.vars.repeatDelay || 0),
74            (this._yoyoEase = null),
75            this._uncache(!0),
76            c.prototype.invalidate.call(this)
77          );
78        }),
79        (k.updateTo = function (a, b) {
80          var d,
81            e = this.ratio,
82            f = this.vars.immediateRender || a.immediateRender;
83          b &&
84            this._startTime < this._timeline._time &&
85            ((this._startTime = this._timeline._time),
86            this._uncache(!1),
87            this._gc
88              ? this._enabled(!0, !1)
89              : this._timeline.insert(this, this._startTime - this._delay));
90          for (d in a) this.vars[d] = a[d];
91          if (this._initted || f)
92            if (b) ((this._initted = !1), f && this.render(0, !0, !0));
93            else if (
94              (this._gc && this._enabled(!0, !1),
95              this._notifyPluginsOfEnabled &&
96                this._firstPT &&
97                c._onPluginEvent('_onDisable', this),
98              this._time / this._duration > 0.998)
99            ) {
100              var g = this._totalTime;
101              (this.render(0, !0, !1),
102                (this._initted = !1),
103                this.render(g, !0, !1));
104            } else if (
105              ((this._initted = !1), this._init(), this._time > 0 || f)
106            )
107              for (var h, i = 1 / (1 - e), j = this._firstPT; j; )
108                ((h = j.s + j.c), (j.c *= i), (j.s = h - j.c), (j = j._next));
109          return this;
110        }),
111        (k.render = function (a, b, d) {
112          this._initted ||
113            (0 === this._duration && this.vars.repeat && this.invalidate());
114          var e,
115            f,
116            i,
117            j,
118            k,
119            l,
120            m,
121            n,
122            o,
123            p = this._dirty ? this.totalDuration() : this._totalDuration,
124            q = this._time,
125            r = this._totalTime,
126            s = this._cycle,
127            t = this._duration,
128            u = this._rawPrevTime;
129          if (
130            (a >= p - 1e-7 && a >= 0
131              ? ((this._totalTime = p),
132                (this._cycle = this._repeat),
133                this._yoyo && 0 !== (1 & this._cycle)
134                  ? ((this._time = 0),
135                    (this.ratio = this._ease._calcEnd
136                      ? this._ease.getRatio(0)
137                      : 0))
138                  : ((this._time = t),
139                    (this.ratio = this._ease._calcEnd
140                      ? this._ease.getRatio(1)
141                      : 1)),
142                this._reversed ||
143                  ((e = !0),
144                  (f = 'onComplete'),
145                  (d = d || this._timeline.autoRemoveChildren)),
146                0 === t &&
147                  (this._initted || !this.vars.lazy || d) &&
148                  (this._startTime === this._timeline._duration && (a = 0),
149                  (0 > u ||
150                    (0 >= a && a >= -1e-7) ||
151                    (u === g && 'isPause' !== this.data)) &&
152                    u !== a &&
153                    ((d = !0), u > g && (f = 'onReverseComplete')),
154                  (this._rawPrevTime = n = !b || a || u === a ? a : g)))
155              : 1e-7 > a
156                ? ((this._totalTime = this._time = this._cycle = 0),
157                  (this.ratio = this._ease._calcEnd
158                    ? this._ease.getRatio(0)
159                    : 0),
160                  (0 !== r || (0 === t && u > 0)) &&
161                    ((f = 'onReverseComplete'), (e = this._reversed)),
162                  0 > a &&
163                    ((this._active = !1),
164                    0 === t &&
165                      (this._initted || !this.vars.lazy || d) &&
166                      (u >= 0 && (d = !0),
167                      (this._rawPrevTime = n = !b || a || u === a ? a : g))),
168                  this._initted || (d = !0))
169                : ((this._totalTime = this._time = a),
170                  0 !== this._repeat &&
171                    ((j = t + this._repeatDelay),
172                    (this._cycle = (this._totalTime / j) >> 0),
173                    0 !== this._cycle &&
174                      this._cycle === this._totalTime / j &&
175                      a >= r &&
176                      this._cycle--,
177                    (this._time = this._totalTime - this._cycle * j),
178                    this._yoyo &&
179                      0 !== (1 & this._cycle) &&
180                      ((this._time = t - this._time),
181                      (o = this._yoyoEase || this.vars.yoyoEase),
182                      o &&
183                        (this._yoyoEase ||
184                          (o !== !0 || this._initted
185                            ? (this._yoyoEase = o =
186                                o === !0
187                                  ? this._ease
188                                  : o instanceof Ease
189                                    ? o
190                                    : Ease.map[o])
191                            : ((o = this.vars.ease),
192                              (this._yoyoEase = o =
193                                o
194                                  ? o instanceof Ease
195                                    ? o
196                                    : 'function' == typeof o
197                                      ? new Ease(o, this.vars.easeParams)
198                                      : Ease.map[o] || c.defaultEase
199                                  : c.defaultEase))),
200                        (this.ratio = o
201                          ? 1 - o.getRatio((t - this._time) / t)
202                          : 0))),
203                    this._time > t
204                      ? (this._time = t)
205                      : this._time < 0 && (this._time = 0)),
206                  this._easeType && !o
207                    ? ((k = this._time / t),
208                      (l = this._easeType),
209                      (m = this._easePower),
210                      (1 === l || (3 === l && k >= 0.5)) && (k = 1 - k),
211                      3 === l && (k *= 2),
212                      1 === m
213                        ? (k *= k)
214                        : 2 === m
215                          ? (k *= k * k)
216                          : 3 === m
217                            ? (k *= k * k * k)
218                            : 4 === m && (k *= k * k * k * k),
219                      1 === l
220                        ? (this.ratio = 1 - k)
221                        : 2 === l
222                          ? (this.ratio = k)
223                          : this._time / t < 0.5
224                            ? (this.ratio = k / 2)
225                            : (this.ratio = 1 - k / 2))
226                    : o || (this.ratio = this._ease.getRatio(this._time / t))),
227            q === this._time && !d && s === this._cycle)
228          )
229            return void (
230              r !== this._totalTime &&
231              this._onUpdate &&
232              (b || this._callback('onUpdate'))
233            );
234          if (!this._initted) {
235            if ((this._init(), !this._initted || this._gc)) return;
236            if (
237              !d &&
238              this._firstPT &&
239              ((this.vars.lazy !== !1 && this._duration) ||
240                (this.vars.lazy && !this._duration))
241            )
242              return (
243                (this._time = q),
244                (this._totalTime = r),
245                (this._rawPrevTime = u),
246                (this._cycle = s),
247                h.lazyTweens.push(this),
248                void (this._lazy = [a, b])
249              );
250            !this._time || e || o
251              ? e &&
252                this._ease._calcEnd &&
253                !o &&
254                (this.ratio = this._ease.getRatio(0 === this._time ? 0 : 1))
255              : (this.ratio = this._ease.getRatio(this._time / t));
256          }
257          for (
258            this._lazy !== !1 && (this._lazy = !1),
259              this._active ||
260                (!this._paused &&
261                  this._time !== q &&
262                  a >= 0 &&
263                  (this._active = !0)),
264              0 === r &&
265                (2 === this._initted && a > 0 && this._init(),
266                this._startAt &&
267                  (a >= 0
268                    ? this._startAt.render(a, !0, d)
269                    : f || (f = '_dummyGS')),
270                this.vars.onStart &&
271                  (0 !== this._totalTime || 0 === t) &&
272                  (b || this._callback('onStart'))),
273              i = this._firstPT;
274            i;
275          )
276            (i.f
277              ? i.t[i.p](i.c * this.ratio + i.s)
278              : (i.t[i.p] = i.c * this.ratio + i.s),
279              (i = i._next));
280          (this._onUpdate &&
281            (0 > a &&
282              this._startAt &&
283              this._startTime &&
284              this._startAt.render(a, !0, d),
285            b || ((this._totalTime !== r || f) && this._callback('onUpdate'))),
286            this._cycle !== s &&
287              (b ||
288                this._gc ||
289                (this.vars.onRepeat && this._callback('onRepeat'))),
290            f &&
291              (!this._gc || d) &&
292              (0 > a &&
293                this._startAt &&
294                !this._onUpdate &&
295                this._startTime &&
296                this._startAt.render(a, !0, d),
297              e &&
298                (this._timeline.autoRemoveChildren && this._enabled(!1, !1),
299                (this._active = !1)),
300              !b && this.vars[f] && this._callback(f),
301              0 === t &&
302                this._rawPrevTime === g &&
303                n !== g &&
304                (this._rawPrevTime = 0)));
305        }),
306        (f.to = function (a, b, c) {
307          return new f(a, b, c);
308        }),
309        (f.from = function (a, b, c) {
310          return (
311            (c.runBackwards = !0),
312            (c.immediateRender = 0 != c.immediateRender),
313            new f(a, b, c)
314          );
315        }),
316        (f.fromTo = function (a, b, c, d) {
317          return (
318            (d.startAt = c),
319            (d.immediateRender =
320              0 != d.immediateRender && 0 != c.immediateRender),
321            new f(a, b, d)
322          );
323        }),
324        (f.staggerTo = f.allTo =
325          function (a, b, g, h, k, m, n) {
326            h = h || 0;
327            var o,
328              p,
329              q,
330              r,
331              s = 0,
332              t = [],
333              u = function () {
334                (g.onComplete &&
335                  g.onComplete.apply(g.onCompleteScope || this, arguments),
336                  k.apply(n || g.callbackScope || this, m || l));
337              },
338              v = g.cycle,
339              w = g.startAt && g.startAt.cycle;
340            for (
341              j(a) ||
342                ('string' == typeof a && (a = c.selector(a) || a),
343                i(a) && (a = d(a))),
344                a = a || [],
345                0 > h && ((a = d(a)), a.reverse(), (h *= -1)),
346                o = a.length - 1,
347                q = 0;
348              o >= q;
349              q++
350            ) {
351              p = {};
352              for (r in g) p[r] = g[r];
353              if (
354                (v &&
355                  (e(p, a, q),
356                  null != p.duration && ((b = p.duration), delete p.duration)),
357                w)
358              ) {
359                w = p.startAt = {};
360                for (r in g.startAt) w[r] = g.startAt[r];
361                e(p.startAt, a, q);
362              }
363              ((p.delay = s + (p.delay || 0)),
364                q === o && k && (p.onComplete = u),
365                (t[q] = new f(a[q], b, p)),
366                (s += h));
367            }
368            return t;
369          }),
370        (f.staggerFrom = f.allFrom =
371          function (a, b, c, d, e, g, h) {
372            return (
373              (c.runBackwards = !0),
374              (c.immediateRender = 0 != c.immediateRender),
375              f.staggerTo(a, b, c, d, e, g, h)
376            );
377          }),
378        (f.staggerFromTo = f.allFromTo =
379          function (a, b, c, d, e, g, h, i) {
380            return (
381              (d.startAt = c),
382              (d.immediateRender =
383                0 != d.immediateRender && 0 != c.immediateRender),
384              f.staggerTo(a, b, d, e, g, h, i)
385            );
386          }),
387        (f.delayedCall = function (a, b, c, d, e) {
388          return new f(b, 0, {
389            delay: a,
390            onComplete: b,
391            onCompleteParams: c,
392            callbackScope: d,
393            onReverseComplete: b,
394            onReverseCompleteParams: c,
395            immediateRender: !1,
396            useFrames: e,
397            overwrite: 0,
398          });
399        }),
400        (f.set = function (a, b) {
401          return new f(a, 0, b);
402        }),
403        (f.isTweening = function (a) {
404          return c.getTweensOf(a, !0).length > 0;
405        }));
406      var m = function (a, b) {
407          for (var d = [], e = 0, f = a._first; f; )
408            (f instanceof c
409              ? (d[e++] = f)
410              : (b && (d[e++] = f), (d = d.concat(m(f, b))), (e = d.length)),
411              (f = f._next));
412          return d;
413        },
414        n = (f.getAllTweens = function (b) {
415          return m(a._rootTimeline, b).concat(m(a._rootFramesTimeline, b));
416        });
417      ((f.killAll = function (a, c, d, e) {
418        (null == c && (c = !0), null == d && (d = !0));
419        var f,
420          g,
421          h,
422          i = n(0 != e),
423          j = i.length,
424          k = c && d && e;
425        for (h = 0; j > h; h++)
426          ((g = i[h]),
427            (k ||
428              g instanceof b ||
429              ((f = g.target === g.vars.onComplete) && d) ||
430              (c && !f)) &&
431              (a
432                ? g.totalTime(g._reversed ? 0 : g.totalDuration())
433                : g._enabled(!1, !1)));
434      }),
435        (f.killChildTweensOf = function (a, b) {
436          if (null != a) {
437            var e,
438              g,
439              k,
440              l,
441              m,
442              n = h.tweenLookup;
443            if (
444              ('string' == typeof a && (a = c.selector(a) || a),
445              i(a) && (a = d(a)),
446              j(a))
447            )
448              for (l = a.length; --l > -1; ) f.killChildTweensOf(a[l], b);
449            else {
450              e = [];
451              for (k in n)
452                for (g = n[k].target.parentNode; g; )
453                  (g === a && (e = e.concat(n[k].tweens)), (g = g.parentNode));
454              for (m = e.length, l = 0; m > l; l++)
455                (b && e[l].totalTime(e[l].totalDuration()),
456                  e[l]._enabled(!1, !1));
457            }
458          }
459        }));
460      var o = function (a, c, d, e) {
461        ((c = c !== !1), (d = d !== !1), (e = e !== !1));
462        for (var f, g, h = n(e), i = c && d && e, j = h.length; --j > -1; )
463          ((g = h[j]),
464            (i ||
465              g instanceof b ||
466              ((f = g.target === g.vars.onComplete) && d) ||
467              (c && !f)) &&
468              g.paused(a));
469      };
470      return (
471        (f.pauseAll = function (a, b, c) {
472          o(!0, a, b, c);
473        }),
474        (f.resumeAll = function (a, b, c) {
475          o(!1, a, b, c);
476        }),
477        (f.globalTimeScale = function (b) {
478          var d = a._rootTimeline,
479            e = c.ticker.time;
480          return arguments.length
481            ? ((b = b || g),
482              (d._startTime = e - ((e - d._startTime) * d._timeScale) / b),
483              (d = a._rootFramesTimeline),
484              (e = c.ticker.frame),
485              (d._startTime = e - ((e - d._startTime) * d._timeScale) / b),
486              (d._timeScale = a._rootTimeline._timeScale = b),
487              b)
488            : d._timeScale;
489        }),
490        (k.progress = function (a, b) {
491          return arguments.length
492            ? this.totalTime(
493                this.duration() *
494                  (this._yoyo && 0 !== (1 & this._cycle) ? 1 - a : a) +
495                  this._cycle * (this._duration + this._repeatDelay),
496                b,
497              )
498            : this._time / this.duration();
499        }),
500        (k.totalProgress = function (a, b) {
501          return arguments.length
502            ? this.totalTime(this.totalDuration() * a, b)
503            : this._totalTime / this.totalDuration();
504        }),
505        (k.time = function (a, b) {
506          return arguments.length
507            ? (this._dirty && this.totalDuration(),
508              a > this._duration && (a = this._duration),
509              this._yoyo && 0 !== (1 & this._cycle)
510                ? (a =
511                    this._duration -
512                    a +
513                    this._cycle * (this._duration + this._repeatDelay))
514                : 0 !== this._repeat &&
515                  (a += this._cycle * (this._duration + this._repeatDelay)),
516              this.totalTime(a, b))
517            : this._time;
518        }),
519        (k.duration = function (b) {
520          return arguments.length
521            ? a.prototype.duration.call(this, b)
522            : this._duration;
523        }),
524        (k.totalDuration = function (a) {
525          return arguments.length
526            ? -1 === this._repeat
527              ? this
528              : this.duration(
529                  (a - this._repeat * this._repeatDelay) / (this._repeat + 1),
530                )
531            : (this._dirty &&
532                ((this._totalDuration =
533                  -1 === this._repeat
534                    ? 999999999999
535                    : this._duration * (this._repeat + 1) +
536                      this._repeatDelay * this._repeat),
537                (this._dirty = !1)),
538              this._totalDuration);
539        }),
540        (k.repeat = function (a) {
541          return arguments.length
542            ? ((this._repeat = a), this._uncache(!0))
543            : this._repeat;
544        }),
545        (k.repeatDelay = function (a) {
546          return arguments.length
547            ? ((this._repeatDelay = a), this._uncache(!0))
548            : this._repeatDelay;
549        }),
550        (k.yoyo = function (a) {
551          return arguments.length ? ((this._yoyo = a), this) : this._yoyo;
552        }),
553        f
554      );
555    },
556    !0,
557  ),
558    _gsScope._gsDefine(
559      'TimelineLite',
560      ['core.Animation', 'core.SimpleTimeline', 'TweenLite'],
561      function (a, b, c) {
562        var d = function (a) {
563            (b.call(this, a),
564              (this._labels = {}),
565              (this.autoRemoveChildren = this.vars.autoRemoveChildren === !0),
566              (this.smoothChildTiming = this.vars.smoothChildTiming === !0),
567              (this._sortChildren = !0),
568              (this._onUpdate = this.vars.onUpdate));
569            var c,
570              d,
571              e = this.vars;
572            for (d in e)
573              ((c = e[d]),
574                i(c) &&
575                  -1 !== c.join('').indexOf('{self}') &&
576                  (e[d] = this._swapSelfInParams(c)));
577            i(e.tweens) && this.add(e.tweens, 0, e.align, e.stagger);
578          },
579          e = 1e-10,
580          f = c._internals,
581          g = (d._internals = {}),
582          h = f.isSelector,
583          i = f.isArray,
584          j = f.lazyTweens,
585          k = f.lazyRender,
586          l = _gsScope._gsDefine.globals,
587          m = function (a) {
588            var b,
589              c = {};
590            for (b in a) c[b] = a[b];
591            return c;
592          },
593          n = function (a, b, c) {
594            var d,
595              e,
596              f = a.cycle;
597            for (d in f)
598              ((e = f[d]),
599                (a[d] = 'function' == typeof e ? e(c, b[c]) : e[c % e.length]));
600            delete a.cycle;
601          },
602          o = (g.pauseCallback = function () {}),
603          p = function (a) {
604            var b,
605              c = [],
606              d = a.length;
607            for (b = 0; b !== d; c.push(a[b++]));
608            return c;
609          },
610          q = (d.prototype = new b());
611        return (
612          (d.version = '1.20.4'),
613          (q.constructor = d),
614          (q.kill()._gc = q._forcingPlayhead = q._hasPause = !1),
615          (q.to = function (a, b, d, e) {
616            var f = (d.repeat && l.TweenMax) || c;
617            return b ? this.add(new f(a, b, d), e) : this.set(a, d, e);
618          }),
619          (q.from = function (a, b, d, e) {
620            return this.add(((d.repeat && l.TweenMax) || c).from(a, b, d), e);
621          }),
622          (q.fromTo = function (a, b, d, e, f) {
623            var g = (e.repeat && l.TweenMax) || c;
624            return b ? this.add(g.fromTo(a, b, d, e), f) : this.set(a, e, f);
625          }),
626          (q.staggerTo = function (a, b, e, f, g, i, j, k) {
627            var l,
628              o,
629              q = new d({
630                onComplete: i,
631                onCompleteParams: j,
632                callbackScope: k,
633                smoothChildTiming: this.smoothChildTiming,
634              }),
635              r = e.cycle;
636            for (
637              'string' == typeof a && (a = c.selector(a) || a),
638                a = a || [],
639                h(a) && (a = p(a)),
640                f = f || 0,
641                0 > f && ((a = p(a)), a.reverse(), (f *= -1)),
642                o = 0;
643              o < a.length;
644              o++
645            )
646              ((l = m(e)),
647                l.startAt &&
648                  ((l.startAt = m(l.startAt)),
649                  l.startAt.cycle && n(l.startAt, a, o)),
650                r &&
651                  (n(l, a, o),
652                  null != l.duration && ((b = l.duration), delete l.duration)),
653                q.to(a[o], b, l, o * f));
654            return this.add(q, g);
655          }),
656          (q.staggerFrom = function (a, b, c, d, e, f, g, h) {
657            return (
658              (c.immediateRender = 0 != c.immediateRender),
659              (c.runBackwards = !0),
660              this.staggerTo(a, b, c, d, e, f, g, h)
661            );
662          }),
663          (q.staggerFromTo = function (a, b, c, d, e, f, g, h, i) {
664            return (
665              (d.startAt = c),
666              (d.immediateRender =
667                0 != d.immediateRender && 0 != c.immediateRender),
668              this.staggerTo(a, b, d, e, f, g, h, i)
669            );
670          }),
671          (q.call = function (a, b, d, e) {
672            return this.add(c.delayedCall(0, a, b, d), e);
673          }),
674          (q.set = function (a, b, d) {
675            return (
676              (d = this._parseTimeOrLabel(d, 0, !0)),
677              null == b.immediateRender &&
678                (b.immediateRender = d === this._time && !this._paused),
679              this.add(new c(a, 0, b), d)
680            );
681          }),
682          (d.exportRoot = function (a, b) {
683            ((a = a || {}),
684              null == a.smoothChildTiming && (a.smoothChildTiming = !0));
685            var e,
686              f,
687              g,
688              h,
689              i = new d(a),
690              j = i._timeline;
691            for (
692              null == b && (b = !0),
693                j._remove(i, !0),
694                i._startTime = 0,
695                i._rawPrevTime = i._time = i._totalTime = j._time,
696                g = j._first;
697              g;
698            )
699              ((h = g._next),
700                (b && g instanceof c && g.target === g.vars.onComplete) ||
701                  ((f = g._startTime - g._delay),
702                  0 > f && (e = 1),
703                  i.add(g, f)),
704                (g = h));
705            return (j.add(i, 0), e && i.totalDuration(), i);
706          }),
707          (q.add = function (e, f, g, h) {
708            var j, k, l, m, n, o;
709            if (
710              ('number' != typeof f &&
711                (f = this._parseTimeOrLabel(f, 0, !0, e)),
712              !(e instanceof a))
713            ) {
714              if (e instanceof Array || (e && e.push && i(e))) {
715                for (
716                  g = g || 'normal', h = h || 0, j = f, k = e.length, l = 0;
717                  k > l;
718                  l++
719                )
720                  (i((m = e[l])) && (m = new d({ tweens: m })),
721                    this.add(m, j),
722                    'string' != typeof m &&
723                      'function' != typeof m &&
724                      ('sequence' === g
725                        ? (j = m._startTime + m.totalDuration() / m._timeScale)
726                        : 'start' === g && (m._startTime -= m.delay())),
727                    (j += h));
728                return this._uncache(!0);
729              }
730              if ('string' == typeof e) return this.addLabel(e, f);
731              if ('function' != typeof e)
732                throw (
733                  'Cannot add ' +
734                  e +
735                  ' into the timeline; it is not a tween, timeline, function, or string.'
736                );
737              e = c.delayedCall(0, e);
738            }
739            if (
740              (b.prototype.add.call(this, e, f),
741              e._time &&
742                e.render(
743                  (this.rawTime() - e._startTime) * e._timeScale,
744                  !1,
745                  !1,
746                ),
747              (this._gc || this._time === this._duration) &&
748                !this._paused &&
749                this._duration < this.duration())
750            )
751              for (n = this, o = n.rawTime() > e._startTime; n._timeline; )
752                (o && n._timeline.smoothChildTiming
753                  ? n.totalTime(n._totalTime, !0)
754                  : n._gc && n._enabled(!0, !1),
755                  (n = n._timeline));
756            return this;
757          }),
758          (q.remove = function (b) {
759            if (b instanceof a) {
760              this._remove(b, !1);
761              var c = (b._timeline = b.vars.useFrames
762                ? a._rootFramesTimeline
763                : a._rootTimeline);
764              return (
765                (b._startTime =
766                  (b._paused ? b._pauseTime : c._time) -
767                  (b._reversed
768                    ? b.totalDuration() - b._totalTime
769                    : b._totalTime) /
770                    b._timeScale),
771                this
772              );
773            }
774            if (b instanceof Array || (b && b.push && i(b))) {
775              for (var d = b.length; --d > -1; ) this.remove(b[d]);
776              return this;
777            }
778            return 'string' == typeof b
779              ? this.removeLabel(b)
780              : this.kill(null, b);
781          }),
782          (q._remove = function (a, c) {
783            b.prototype._remove.call(this, a, c);
784            var d = this._last;
785            return (
786              d
787                ? this._time > this.duration() &&
788                  ((this._time = this._duration),
789                  (this._totalTime = this._totalDuration))
790                : (this._time =
791                    this._totalTime =
792                    this._duration =
793                    this._totalDuration =
794                      0),
795              this
796            );
797          }),
798          (q.append = function (a, b) {
799            return this.add(a, this._parseTimeOrLabel(null, b, !0, a));
800          }),
801          (q.insert = q.insertMultiple =
802            function (a, b, c, d) {
803              return this.add(a, b || 0, c, d);
804            }),
805          (q.appendMultiple = function (a, b, c, d) {
806            return this.add(a, this._parseTimeOrLabel(null, b, !0, a), c, d);
807          }),
808          (q.addLabel = function (a, b) {
809            return ((this._labels[a] = this._parseTimeOrLabel(b)), this);
810          }),
811          (q.addPause = function (a, b, d, e) {
812            var f = c.delayedCall(0, o, d, e || this);
813            return (
814              (f.vars.onComplete = f.vars.onReverseComplete = b),
815              (f.data = 'isPause'),
816              (this._hasPause = !0),
817              this.add(f, a)
818            );
819          }),
820          (q.removeLabel = function (a) {
821            return (delete this._labels[a], this);
822          }),
823          (q.getLabelTime = function (a) {
824            return null != this._labels[a] ? this._labels[a] : -1;
825          }),
826          (q._parseTimeOrLabel = function (b, c, d, e) {
827            var f, g;
828            if (e instanceof a && e.timeline === this) this.remove(e);
829            else if (e && (e instanceof Array || (e.push && i(e))))
830              for (g = e.length; --g > -1; )
831                e[g] instanceof a &&
832                  e[g].timeline === this &&
833                  this.remove(e[g]);
834            if (
835              ((f =
836                'number' != typeof b || c
837                  ? this.duration() > 99999999999
838                    ? this.recent().endTime(!1)
839                    : this._duration
840                  : 0),
841              'string' == typeof c)
842            )
843              return this._parseTimeOrLabel(
844                c,
845                d && 'number' == typeof b && null == this._labels[c]
846                  ? b - f
847                  : 0,
848                d,
849              );
850            if (
851              ((c = c || 0),
852              'string' != typeof b || (!isNaN(b) && null == this._labels[b]))
853            )
854              null == b && (b = f);
855            else {
856              if (((g = b.indexOf('=')), -1 === g))
857                return null == this._labels[b]
858                  ? d
859                    ? (this._labels[b] = f + c)
860                    : c
861                  : this._labels[b] + c;
862              ((c =
863                parseInt(b.charAt(g - 1) + '1', 10) * Number(b.substr(g + 1))),
864                (b =
865                  g > 1
866                    ? this._parseTimeOrLabel(b.substr(0, g - 1), 0, d)
867                    : f));
868            }
869            return Number(b) + c;
870          }),
871          (q.seek = function (a, b) {
872            return this.totalTime(
873              'number' == typeof a ? a : this._parseTimeOrLabel(a),
874              b !== !1,
875            );
876          }),
877          (q.stop = function () {
878            return this.paused(!0);
879          }),
880          (q.gotoAndPlay = function (a, b) {
881            return this.play(a, b);
882          }),
883          (q.gotoAndStop = function (a, b) {
884            return this.pause(a, b);
885          }),
886          (q.render = function (a, b, c) {
887            this._gc && this._enabled(!0, !1);
888            var d,
889              f,
890              g,
891              h,
892              i,
893              l,
894              m,
895              n = this._time,
896              o = this._dirty ? this.totalDuration() : this._totalDuration,
897              p = this._startTime,
898              q = this._timeScale,
899              r = this._paused;
900            if (
901              (n !== this._time && (a += this._time - n),
902              a >= o - 1e-7 && a >= 0)
903            )
904              ((this._totalTime = this._time = o),
905                this._reversed ||
906                  this._hasPausedChild() ||
907                  ((f = !0),
908                  (h = 'onComplete'),
909                  (i = !!this._timeline.autoRemoveChildren),
910                  0 === this._duration &&
911                    ((0 >= a && a >= -1e-7) ||
912                      this._rawPrevTime < 0 ||
913                      this._rawPrevTime === e) &&
914                    this._rawPrevTime !== a &&
915                    this._first &&
916                    ((i = !0),
917                    this._rawPrevTime > e && (h = 'onReverseComplete'))),
918                (this._rawPrevTime =
919                  this._duration || !b || a || this._rawPrevTime === a ? a : e),
920                (a = o + 1e-4));
921            else if (1e-7 > a)
922              if (
923                ((this._totalTime = this._time = 0),
924                (0 !== n ||
925                  (0 === this._duration &&
926                    this._rawPrevTime !== e &&
927                    (this._rawPrevTime > 0 ||
928                      (0 > a && this._rawPrevTime >= 0)))) &&
929                  ((h = 'onReverseComplete'), (f = this._reversed)),
930                0 > a)
931              )
932                ((this._active = !1),
933                  this._timeline.autoRemoveChildren && this._reversed
934                    ? ((i = f = !0), (h = 'onReverseComplete'))
935                    : this._rawPrevTime >= 0 && this._first && (i = !0),
936                  (this._rawPrevTime = a));
937              else {
938                if (
939                  ((this._rawPrevTime =
940                    this._duration || !b || a || this._rawPrevTime === a
941                      ? a
942                      : e),
943                  0 === a && f)
944                )
945                  for (d = this._first; d && 0 === d._startTime; )
946                    (d._duration || (f = !1), (d = d._next));
947                ((a = 0), this._initted || (i = !0));
948              }
949            else {
950              if (this._hasPause && !this._forcingPlayhead && !b) {
951                if (a >= n)
952                  for (d = this._first; d && d._startTime <= a && !l; )
953                    (d._duration ||
954                      'isPause' !== d.data ||
955                      d.ratio ||
956                      (0 === d._startTime && 0 === this._rawPrevTime) ||
957                      (l = d),
958                      (d = d._next));
959                else
960                  for (d = this._last; d && d._startTime >= a && !l; )
961                    (d._duration ||
962                      ('isPause' === d.data && d._rawPrevTime > 0 && (l = d)),
963                      (d = d._prev));
964                l &&
965                  ((this._time = a = l._startTime),
966                  (this._totalTime =
967                    a +
968                    this._cycle * (this._totalDuration + this._repeatDelay)));
969              }
970              this._totalTime = this._time = this._rawPrevTime = a;
971            }
972            if ((this._time !== n && this._first) || c || i || l) {
973              if (
974                (this._initted || (this._initted = !0),
975                this._active ||
976                  (!this._paused &&
977                    this._time !== n &&
978                    a > 0 &&
979                    (this._active = !0)),
980                0 === n &&
981                  this.vars.onStart &&
982                  ((0 === this._time && this._duration) ||
983                    b ||
984                    this._callback('onStart')),
985                (m = this._time),
986                m >= n)
987              )
988                for (
989                  d = this._first;
990                  d &&
991                  ((g = d._next), m === this._time && (!this._paused || r));
992                )
993                  ((d._active || (d._startTime <= m && !d._paused && !d._gc)) &&
994                    (l === d && this.pause(),
995                    d._reversed
996                      ? d.render(
997                          (d._dirty ? d.totalDuration() :
997 d._totalDuration) -
998                            (a - d._startTime) * d._timeScale,
999                          b,
1000                          c,
1001                        )
1002                      : d.render((a - d._startTime) * d._timeScale, b, c)),
1003                    (d = g));
1004              else
1005                for (
1006                  d = this._last;
1007                  d &&
1008                  ((g = d._prev), m === this._time && (!this._paused || r));
1009                ) {
1010                  if (
1011                    d._active ||
1012                    (d._startTime <= n && !d._paused && !d._gc)
1013                  ) {
1014                    if (l === d) {
1015                      for (l = d._prev; l && l.endTime() > this._time; )
1016                        (l.render(
1017                          l._reversed
1018                            ? l.totalDuration() -
1019                                (a - l._startTime) * l._timeScale
1020                            : (a - l._startTime) * l._timeScale,
1021                          b,
1022                          c,
1023                        ),
1024                          (l = l._prev));
1025                      ((l = null), this.pause());
1026                    }
1027                    d._reversed
1028                      ? d.render(
1029                          (d._dirty ? d.totalDuration() : d._totalDuration) -
1030                            (a - d._startTime) * d._timeScale,
1031                          b,
1032                          c,
1033                        )
1034                      : d.render((a - d._startTime) * d._timeScale, b, c);
1035                  }
1036                  d = g;
1037                }
1038              (this._onUpdate &&
1039                (b || (j.length && k(), this._callback('onUpdate'))),
1040                h &&
1041                  (this._gc ||
1042                    ((p === this._startTime || q !== this._timeScale) &&
1043                      (0 === this._time || o >= this.totalDuration()) &&
1044                      (f &&
1045                        (j.length && k(),
1046                        this._timeline.autoRemoveChildren &&
1047                          this._enabled(!1, !1),
1048                        (this._active = !1)),
1049                      !b && this.vars[h] && this._callback(h)))));
1050            }
1051          }),
1052          (q._hasPausedChild = function () {
1053            for (var a = this._first; a; ) {
1054              if (a._paused || (a instanceof d && a._hasPausedChild()))
1055                return !0;
1056              a = a._next;
1057            }
1058            return !1;
1059          }),
1060          (q.getChildren = function (a, b, d, e) {
1061            e = e || -9999999999;
1062            for (var f = [], g = this._first, h = 0; g; )
1063              (g._startTime < e ||
1064                (g instanceof c
1065                  ? b !== !1 && (f[h++] = g)
1066                  : (d !== !1 && (f[h++] = g),
1067                    a !== !1 &&
1068                      ((f = f.concat(g.getChildren(!0, b, d))),
1069                      (h = f.length)))),
1070                (g = g._next));
1071            return f;
1072          }),
1073          (q.getTweensOf = function (a, b) {
1074            var d,
1075              e,
1076              f = this._gc,
1077              g = [],
1078              h = 0;
1079            for (
1080              f && this._enabled(!0, !0), d = c.getTweensOf(a), e = d.length;
1081              --e > -1;
1082            )
1083              (d[e].timeline === this || (b && this._contains(d[e]))) &&
1084                (g[h++] = d[e]);
1085            return (f && this._enabled(!1, !0), g);
1086          }),
1087          (q.recent = function () {
1088            return this._recent;
1089          }),
1090          (q._contains = function (a) {
1091            for (var b = a.timeline; b; ) {
1092              if (b === this) return !0;
1093              b = b.timeline;
1094            }
1095            return !1;
1096          }),
1097          (q.shiftChildren = function (a, b, c) {
1098            c = c || 0;
1099            for (var d, e = this._first, f = this._labels; e; )
1100              (e._startTime >= c && (e._startTime += a), (e = e._next));
1101            if (b) for (d in f) f[d] >= c && (f[d] += a);
1102            return this._uncache(!0);
1103          }),
1104          (q._kill = function (a, b) {
1105            if (!a && !b) return this._enabled(!1, !1);
1106            for (
1107              var c = b ? this.getTweensOf(b) : this.getChildren(!0, !0, !1),
1108                d = c.length,
1109                e = !1;
1110              --d > -1;
1111            )
1112              c[d]._kill(a, b) && (e = !0);
1113            return e;
1114          }),
1115          (q.clear = function (a) {
1116            var b = this.getChildren(!1, !0, !0),
1117              c = b.length;
1118            for (this._time = this._totalTime = 0; --c > -1; )
1119              b[c]._enabled(!1, !1);
1120            return (a !== !1 && (this._labels = {}), this._uncache(!0));
1121          }),
1122          (q.invalidate = function () {
1123            for (var b = this._first; b;
1123 ) (b.invalidate(), (b = b._next));
1124            return a.prototype.invalidate.call(this);
1125          }),
1126          (q._enabled = function (a, c) {
1127            if (a === this._gc)
1128              for (var d = this._first; d; ) (d._enabled(a, !0), (d = d._next));
1129            return b.prototype._enabled.call(this, a, c);
1130          }),
1131          (q.totalTime = function (b, c, d) {
1132            this._forcingPlayhead = !0;
1133            var e = a.prototype.totalTime.apply(this, arguments);
1134            return ((this._forcingPlayhead = !1), e);
1135          }),
1136          (q.duration = function (a) {
1137            return arguments.length
1138              ? (0 !== this.duration() &&
1139                  0 !== a &&
1140                  this.timeScale(this._duration / a),
1141                this)
1142              : (this._dirty && this.totalDuration(), this._duration);
1143          }),
1144          (q.totalDuration = function (a) {
1145            if (!arguments.length) {
1146              if (this._dirty) {
1147                for (var b, c, d = 0, e = this._last, f = 999999999999; e; )
1148                  ((b = e._prev),
1149                    e._dirty && e.totalDuration(),
1150                    e._startTime > f &&
1151                    this._sortChildren &&
1152                    !e._paused &&
1153                    !this._calculatingDuration
1154                      ? ((this._calculatingDuration = 1),
1155                        this.add(e, e._startTime - e._delay),
1156                        (this._calculatingDuration = 0))
1157                      : (f = e._startTime),
1158                    e._startTime < 0 &&
1159                      !e._paused &&
1160                      ((d -= e._startTime),
1161                      this._timeline.smoothChildTiming &&
1162                        ((this._startTime += e._startTime / this._timeScale),
1163                        (this._time -= e._startTime),
1164                        (this._totalTime -= e._startTime),
1165                        (this._rawPrevTime -= e._startTime)),
1166                      this.shiftChildren(-e._startTime, !1, -9999999999),
1167                      (f = 0)),
1168                    (c = e._startTime + e._totalDuration / e._timeScale),
1169                    c > d && (d = c),
1170                    (e = b));
1171                ((this._duration = this._totalDuration = d),
1172                  (this._dirty = !1));
1173              }
1174              return this._totalDuration;
1175            }
1176            return a && this.totalDuration()
1177              ? this.timeScale(this._totalDuration / a)
1178              : this;
1179          }),
1180          (q.paused = function (b) {
1181            if (!b)
1182              for (var c = this._first, d = this._time; c; )
1183                (c._startTime === d &&
1184                  'isPause' === c.data &&
1185                  (c._rawPrevTime = 0),
1186                  (c = c._next));
1187            return a.prototype.paused.apply(this, arguments);
1188          }),
1189          (q.usesFrames = function () {
1190            for (var b = this._timeline; b._timeline; ) b = b._timeline;
1191            return b === a._rootFramesTimeline;
1192          }),
1193          (q.rawTime = function (a) {
1194            return a &&
1195              (this._paused ||
1196                (this._repeat && this.time() > 0 && this.totalProgress() < 1))
1197              ? this._totalTime % (this._duration + this._repeatDelay)
1198              : this._paused
1199                ? this._totalTime
1200                : (this._timeline.rawTime(a) - this._startTime) *
1201                  this._timeScale;
1202          }),
1203          d
1204        );
1205      },
1206      !0,
1207    ),
1208    _gsScope._gsDefine(
1209      'TimelineMax',
1210      ['TimelineLite', 'TweenLite', 'easing.Ease'],
1211      function (a, b, c) {
1212        var d = function (b) {
1213            (a.call(this, b),
1214              (this._repeat = this.vars.repeat || 0),
1215              (this._repeatDelay = this.vars.repeatDelay || 0),
1216              (this._cycle = 0),
1217              (this._yoyo = this.vars.yoyo === !0),
1218              (this._dirty = !0));
1219          },
1220          e = 1e-10,
1221          f = b._internals,
1222          g = f.lazyTweens,
1223          h = f.lazyRender,
1224          i = _gsScope._gsDefine.globals,
1225          j = new c(null, null, 1, 0),
1226          k = (d.prototype = new a());
1227        return (
1228          (k.constructor = d),
1229          (k.kill()._gc = !1),
1230          (d.version = '1.20.4'),
1231          (k.invalidate = function () {
1232            return (
1233              (this._yoyo = this.vars.yoyo === !0),
1234              (this._repeat = this.vars.repeat || 0),
1235              (this._repeatDelay = this.vars.repeatDelay || 0),
1236              this._uncache(!0),
1237              a.prototype.invalidate.call(this)
1238            );
1239          }),
1240          (k.addCallback = function (a, c, d, e) {
1241            return this.add(b.delayedCall(0, a, d, e), c);
1242          }),
1243          (k.removeCallback = function (a, b) {
1244            if (a)
1245              if (null == b) this._kill(null, a);
1246              else
1247                for (
1248                  var c = this.getTweensOf(a, !1),
1249                    d = c.length,
1250                    e = this._parseTimeOrLabel(b);
1251                  --d > -1;
1252                )
1253                  c[d]._startTime === e && c[d]._enabled(!1, !1);
1254            return this;
1255          }),
1256          (k.removePause = function (b) {
1257            return this.removeCallback(a._internals.pauseCallback, b);
1258          }),
1259          (k.tweenTo = function (a, c) {
1260            c = c || {};
1261            var d,
1262              e,
1263              f,
1264              g = {
1265                ease: j,
1266                useFrames: this.usesFrames(),
1267                immediateRender: !1,
1268                lazy: !1,
1269              },
1270              h = (c.repeat && i.TweenMax) || b;
1271            for (e in c) g[e] = c[e];
1272            return (
1273              (g.time = this._parseTimeOrLabel(a)),
1274              (d =
1275                Math.abs(Number(g.time) - this._time) / this._timeScale ||
1276                0.001),
1277              (f = new h(this, d, g)),
1278              (g.onStart = function () {
1279                (f.target.paused(!0),
1280                  f.vars.time === f.target.time() ||
1281                    d !== f.duration() ||
1282                    f.isFromTo ||
1283                    f
1284                      .duration(
1285                        Math.abs(f.vars.time - f.target.time()) /
1286                          f.target._timeScale,
1287                      )
1288                      .render(f.time(), !0, !0),
1289                  c.onStart &&
1290                    c.onStart.apply(
1291                      c.onStartScope || c.callbackScope || f,
1292                      c.onStartParams || [],
1293                    ));
1294              }),
1295              f
1296            );
1297          }),
1298          (k.tweenFromTo = function (a, b, c) {
1299            ((c = c || {}),
1300              (a = this._parseTimeOrLabel(a)),
1301              (c.startAt = {
1302                onComplete: this.seek,
1303                onCompleteParams: [a],
1304                callbackScope: this,
1305              }),
1306              (c.immediateRender = c.immediateRender !== !1));
1307            var d = this.tweenTo(b, c);
1308            return (
1309              (d.isFromTo = 1),
1310              d.duration(Math.abs(d.vars.time - a) / this._timeScale || 0.001)
1311            );
1312          }),
1313          (k.render = function (a, b, c) {
1314            this._gc && this._enabled(!0, !1);
1315            var d,
1316              f,
1317              i,
1318              j,
1319              k,
1320              l,
1321              m,
1322              n,
1323              o = this._time,
1324              p = this._dirty ? this.totalDuration() : this._totalDuration,
1325              q = this._duration,
1326              r = this._totalTime,
1327              s = this._startTime,
1328              t = this._timeScale,
1329              u = this._rawPrevTime,
1330              v = this._paused,
1331              w = this._cycle;
1332            if (
1333              (o !== this._time && (a += this._time - o),
1334              a >= p - 1e-7 && a >= 0)
1335            )
1336              (this._locked ||
1337                ((this._totalTime = p), (this._cycle = this._repeat)),
1338                this._reversed ||
1339                  this._hasPausedChild() ||
1340                  ((f = !0),
1341                  (j = 'onComplete'),
1342                  (k = !!this._timeline.autoRemoveChildren),
1343                  0 === this._duration &&
1344                    ((0 >= a && a >= -1e-7) || 0 > u || u === e) &&
1345                    u !== a &&
1346                    this._first &&
1347                    ((k = !0), u > e && (j = 'onReverseComplete'))),
1348                (this._rawPrevTime =
1349                  this._duration || !b || a || this._rawPrevTime === a ? a : e),
1350                this._yoyo && 0 !== (1 & this._cycle)
1351                  ? (this._time = a = 0)
1352                  : ((this._time = q), (a = q + 1e-4)));
1353            else if (1e-7 > a)
1354              if (
1355                (this._locked || (this._totalTime = this._cycle = 0),
1356                (this._time = 0),
1357                (0 !== o ||
1358                  (0 === q &&
1359                    u !== e &&
1360                    (u > 0 || (0 > a && u >= 0)) &&
1361                    !this._locked)) &&
1362                  ((j = 'onReverseComplete'), (f = this._reversed)),
1363                0 > a)
1364              )
1365                ((this._active = !1),
1366                  this._timeline.autoRemoveChildren && this._reversed
1367                    ? ((k = f = !0), (j = 'onReverseComplete'))
1368                    : u >= 0 && this._first && (k = !0),
1369                  (this._rawPrevTime = a));
1370              else {
1371                if (
1372                  ((this._rawPrevTime =
1373                    q || !b || a || this._rawPrevTime === a ? a : e),
1374                  0 === a && f)
1375                )
1376                  for (d = this._first; d && 0 === d._startTime; )
1377                    (d._duration || (f = !1), (d = d._next));
1378                ((a = 0), this._initted || (k = !0));
1379              }
1380            else if (
1381              (0 === q && 0 > u && (k = !0),
1382              (this._time = this._rawPrevTime = a),
1383              this._locked ||
1384                ((this._totalTime = a),
1385                0 !== this._repeat &&
1386                  ((l = q + this._repeatDelay),
1387                  (this._cycle = (this._totalTime / l) >> 0),
1388                  0 !== this._cycle &&
1389                    this._cycle === this._totalTime / l &&
1390                    a >= r &&
1391                    this._cycle--,
1392                  (this._time = this._totalTime - this._cycle * l),
1393                  this._yoyo &&
1394                    0 !== (1 & this._cycle) &&
1395                    (this._time = q - this._time),
1396                  this._time > q
1397                    ? ((this._time = q), (a = q + 1e-4))
1398                    : this._time < 0
1399                      ? (this._time = a = 0)
1400                      : (a = this._time))),
1401              this._hasPause && !this._forcingPlayhead && !b)
1402            ) {
1403              if (
1404                ((a = this._time),
1405                a >= o || (this._repeat && w !== this._cycle))
1406              )
1407                for (d = this._first; d && d._startTime <= a && !m; )
1408                  (d._duration ||
1409                    'isPause' !== d.data ||
1410                    d.ratio ||
1411                    (0 === d._startTime && 0 === this._rawPrevTime) ||
1412                    (m = d),
1413                    (d = d._next));
1414              else
1415                for (d = this._last; d && d._startTime >= a && !m; )
1416                  (d._duration ||
1417                    ('isPause' === d.data && d._rawPrevTime > 0 && (m = d)),
1418                    (d = d._prev));
1419              m &&
1420                m._startTime < q &&
1421                ((this._time = a = m._startTime),
1422                (this._totalTime =
1423                  a + this._cycle * (this._totalDuration + this._repeatDelay)));
1424            }
1425            if (this._cycle !== w && !this._locked) {
1426              var x = this._yoyo && 0 !== (1 & w),
1427                y = x === (this._yoyo && 0 !== (1 & this._cycle)),
1428                z = this._totalTime,
1429                A = this._cycle,
1430                B = this._rawPrevTime,
1431                C = this._time;
1432              if (
1433                ((this._totalTime = w * q),
1434                this._cycle < w ? (x = !x) : (this._totalTime += q),
1435                (this._time = o),
1436                (this._rawPrevTime = 0 === q ? u - 1e-4 : u),
1437                (this._cycle = w),
1438                (this._locked = !0),
1439                (o = x ? 0 : q),
1440                this.render(o, b, 0 === q),
1441                b ||
1442                  this._gc ||
1443                  (this.vars.onRepeat &&
1444                    ((this._cycle = A),
1445                    (this._locked = !1),
1446                    this._callback('onRepeat'))),
1447                o !== this._time)
1448              )
1449                return;
1450              if (
1451                (y &&
1452                  ((this._cycle = w),
1453                  (this._locked = !0),
1454                  (o = x ? q + 1e-4 : -1e-4),
1455                  this.render(o, !0, !1)),
1456                (this._locked = !1),
1457                this._paused && !v)
1458              )
1459                return;
1460              ((this._time = C),
1461                (this._totalTime = z),
1462                (this._cycle = A),
1463                (this._rawPrevTime = B));
1464            }
1465            if (!((this._time !== o && this._first) || c || k || m))
1466              return void (
1467                r !== this._totalTime &&
1468                this._onUpdate &&
1469                (b || this._callback('onUpdate'))
1470              );
1471            if (
1472              (this._initted || (this._initted = !0),
1473              this._active ||
1474                (!this._paused &&
1475                  this._totalTime !== r &&
1476                  a > 0 &&
1477                  (this._active = !0)),
1478              0 === r &&
1479                this.vars.onStart &&
1480                ((0 === this._totalTime && this._totalDuration) ||
1481                  b ||
1482                  this._callback('onStart')),
1483              (n = this._time),
1484              n >= o)
1485            )
1486              for (
1487                d = this._first;
1488                d && ((i = d._next), n === this._time && (!this._paused || v));
1489              )
1490                ((d._active ||
1491                  (d._startTime <= this._time && !d._paused && !d._gc)) &&
1492                  (m === d && this.pause(),
1493                  d._reversed
1494                    ? d.render(
1495                        (d._dirty ? d.totalDuration() : d._totalDuration) -
1496                          (a - d._startTime) * d._timeScale,
1497                        b,
1498                        c,
1499                      )
1500                    : d.render((a - d._startTime) * d._timeScale, b, c)),
1501                  (d = i));
1502            else
1503              for (
1504                d = this._last;
1505                d && ((i = d._prev), n === this._time && (!this._paused || v));
1506              ) {
1507                if (d._active || (d._startTime <= o && !d._paused && !d._gc)) {
1508                  if (m === d) {
1509                    for (m = d._prev; m && m.endTime() > this._time; )
1510                      (m.render(
1511                        m._reversed
1512                          ? m.totalDuration() -
1513                              (a - m._startTime) * m._timeScale
1514                          : (a - m._startTime) * m._timeScale,
1515                        b,
1516                        c,
1517                      ),
1518                        (m = m._prev));
1519                    ((m = null), this.pause());
1520                  }
1521                  d._reversed
1522                    ? d.render(
1523                        (d._dirty ? d.totalDuration() : d._totalDuration) -
1524                          (a - d._startTime) * d._timeScale,
1525                        b,
1526                        c,
1527                      )
1528                    : d.render((a - d._startTime) * d._timeScale, b, c);
1529                }
1530                d = i;
1531              }
1532            (this._onUpdate &&
1533              (b || (g.length && h(), this._callback('onUpdate'))),
1534              j &&
1535                (this._locked ||
1536                  this._gc ||
1537                  ((s === this._startTime || t !== this._timeScale) &&
1538                    (0 === this._time || p >= this.totalDuration()) &&
1539                    (f &&
1540                      (g.length && h(),
1541                      this._timeline.autoRemoveChildren &&
1542                        this._enabled(!1, !1),
1543                      (this._active = !1)),
1544                    !b && this.vars[j] && this._callback(j)))));
1545          }),
1546          (k.getActive = function (a, b, c) {
1547            (null == a && (a = !0),
1548              null == b && (b = !0),
1549              null == c && (c = !1));
1550            var d,
1551              e,
1552              f = [],
1553              g = this.getChildren(a, b, c),
1554              h = 0,
1555              i = g.length;
1556            for (d = 0; i > d; d++) ((e = g[d]), e.isActive() && (f[h++] = e));
1557            return f;
1558          }),
1559          (k.getLabelAfter = function (a) {
1560            a || (0 !== a && (a = this._time));
1561            var b,
1562              c = this.getLabelsArray(),
1563              d = c.length;
1564            for (b = 0; d > b; b++) if (c[b].time > a) return c[b].name;
1565            return null;
1566          }),
1567          (k.getLabelBefore = function (a) {
1568            null == a && (a = this._time);
1569            for (var b = this.getLabelsArray(), c = b.length; --c > -1; )
1570              if (b[c].time < a) return b[c].name;
1571            return null;
1572          }),
1573          (k.getLabelsArray = function () {
1574            var a,
1575              b = [],
1576              c = 0;
1577            for (a in this._labels) b[c++] = { time: this._labels[a], name: a };
1578            return (
1579              b.sort(function (a, b) {
1580                return a.time - b.time;
1581              }),
1582              b
1583            );
1584          }),
1585          (k.invalidate = function () {
1586            return ((this._locked = !1), a.prototype.invalidate.call(this));
1587          }),
1588          (k.progress = function (a, b) {
1589            return arguments.length
1590              ? this.totalTime(
1591                  this.duration() *
1592                    (this._yoyo && 0 !== (1 & this._cycle) ? 1 - a : a) +
1593                    this._cycle * (this._duration + this._repeatDelay),
1594                  b,
1595                )
1596              : this._time / this.duration() || 0;
1597          }),
1598          (k.totalProgress = function (a, b) {
1599            return arguments.length
1600              ? this.totalTime(this.totalDuration() * a, b)
1601              : this._totalTime / this.totalDuration() || 0;
1602          }),
1603          (k.totalDuration = function (b) {
1604            return arguments.length
1605              ? -1 !== this._repeat && b
1606                ? this.timeScale(this.totalDuration() / b)
1607                : this
1608              : (this._dirty &&
1609                  (a.prototype.totalDuration.call(this),
1610                  (this._totalDuration =
1611                    -1 === this._repeat
1612                      ? 999999999999
1613                      : this._duration * (this._repeat + 1) +
1614                        this._repeatDelay * this._repeat)),
1615                this._totalDuration);
1616          }),
1617          (k.time = function (a, b) {
1618            return arguments.length
1619              ? (this._dirty && this.totalDuration(),
1620                a > this._duration && (a = this._duration),
1621                this._yoyo && 0 !== (1 & this._cycle)
1622                  ? (a =
1623                      this._duration -
1624                      a +
1625                      this._cycle * (this._duration + this._repeatDelay))
1626                  : 0 !== this._repeat &&
1627                    (a += this._cycle * (this._duration + this._repeatDelay)),
1628                this.totalTime(a, b))
1629              : this._time;
1630          }),
1631          (k.repeat = function (a) {
1632            return arguments.length
1633              ? ((this._repeat = a), this._uncache(!0))
1634              : this._repeat;
1635          }),
1636          (k.repeatDelay = function (a) {
1637            return arguments.length
1638              ? ((this._repeatDelay = a), this._uncache(!0))
1639              : this._repeatDelay;
1640          }),
1641          (k.yoyo = function (a) {
1642            return arguments.length ? ((this._yoyo = a), this) : this._yoyo;
1643          }),
1644          (k.currentLabel = function (a) {
1645            return arguments.length
1646              ? this.seek(a, !0)
1647              : this.getLabelBefore(this._time + 1e-8);
1648          }),
1649          d
1650        );
1651      },
1652      !0,
1653    ),
1654    (function () {
1655      var a = 180 / Math.PI,
1656        b = [],
1657        c = [],
1658        d = [],
1659        e = {},
1660        f = _gsScope._gsDefine.globals,
1661        g = function (a, b, c, d) {
1662          (c === d && (c = d - (d - b) / 1e6),
1663            a === b && (b = a + (c - a) / 1e6),
1664            (this.a = a),
1665            (this.b = b),
1666            (this.c = c),
1667            (this.d = d),
1668            (this.da = d - a),
1669            (this.ca = c - a),
1670            (this.ba = b - a));
1671        },
1672        h =
1673          ',x,y,z,left,top,right,bottom,marginTop,marginLeft,marginRight,marginBottom,paddingLeft,paddingTop,paddingRight,paddingBottom,backgroundPosition,backgroundPosition_y,',
1674        i = function (a, b, c, d) {
1675          var e = { a: a },
1676            f = {},
1677            g = {},
1678            h = { c: d },
1679            i = (a + b) / 2,
1680            j = (b + c) / 2,
1681            k = (c + d) / 2,
1682            l = (i + j) / 2,
1683            m = (j + k) / 2,
1684            n = (m - l) / 8;
1685          return (
1686            (e.b = i + (a - i) / 4),
1687            (f.b = l + n),
1688            (e.c = f.a = (e.b + f.b) / 2),
1689            (f.c = g.a = (l + m) / 2),
1690            (g.b = m - n),
1691            (h.b = k + (d - k) / 4),
1692            (g.c = h.a = (g.b + h.b) / 2),
1693            [e, f, g, h]
1694          );
1695        },
1696        j = function (a, e, f, g, h) {
1697          var j,
1698            k,
1699            l,
1700            m,
1701            n,
1702            o,
1703            p,
1704            q,
1705            r,
1706            s,
1707            t,
1708            u,
1709            v,
1710            w = a.length - 1,
1711            x = 0,
1712            y = a[0].a;
1713          for (j = 0; w > j; j++)
1714            ((n = a[x]),
1715              (k = n.a),
1716              (l = n.d),
1717              (m = a[x + 1].d),
1718              h
1719                ? ((t = b[j]),
1720                  (u = c[j]),
1721                  (v = ((u + t) * e * 0.25) / (g ? 0.5 : d[j] || 0.5)),
1722                  (o = l - (l - k) * (g ? 0.5 * e : 0 !== t ? v / t : 0)),
1723                  (p = l + (m - l) * (g ? 0.5 * e : 0 !== u ? v / u : 0)),
1724                  (q =
1725                    l - (o + (((p - o) * ((3 * t) / (t + u) + 0.5)) / 4 || 0))))
1726                : ((o = l - (l - k) * e * 0.5),
1727                  (p = l + (m - l) * e * 0.5),
1728                  (q = l - (o + p) / 2)),
1729              (o += q),
1730              (p += q),
1731              (n.c = r = o),
1732              0 !== j ? (n.b = y) : (n.b = y = n.a + 0.6 * (n.c - n.a)),
1733              (n.da = l - k),
1734              (n.ca = r - k),
1735              (n.ba = y - k),
1736              f
1737                ? ((s = i(k, y, r, l)),
1738                  a.splice(x, 1, s[0], s[1], s[2], s[3]),
1739                  (x += 4))
1740                : x++,
1741              (y = p));
1742          ((n = a[x]),
1743            (n.b = y),
1744            (n.c = y + 0.4 * (n.d - y)),
1745            (n.da = n.d - n.a),
1746            (n.ca = n.c - n.a),
1747            (n.ba = y - n.a),
1748            f &&
1749              ((s = i(n.a, y, n.c, n.d)),
1750              a.splice(x, 1, s[0], s[1], s[2], s[3])));
1751        },
1752        k = function (a, d, e, f) {
1753          var h,
1754            i,
1755            j,
1756            k,
1757            l,
1758            m,
1759            n = [];
1760          if (f)
1761            for (a = [f].concat(a), i = a.length; --i > -1; )
1762              'string' == typeof (m = a[i][d]) &&
1763                '=' === m.charAt(1) &&
1764                (a[i][d] = f[d] + Number(m.charAt(0) + m.substr(2)));
1765          if (((h = a.length - 2), 0 > h))
1766            return ((n[0] = new g(a[0][d], 0, 0, a[0][d])), n);
1767          for (i = 0; h > i; i++)
1768            ((j = a[i][d]),
1769              (k = a[i + 1][d]),
1770              (n[i] = new g(j, 0, 0, k)),
1771              e &&
1772                ((l = a[i + 2][d]),
1773                (b[i] = (b[i] || 0) + (k - j) * (k - j)),
1774                (c[i] = (c[i] || 0) + (l - k) * (l - k))));
1775          return ((n[i] = new g(a[i][d], 0, 0, a[i + 1][d])), n);
1776        },
1777        l = function (a, f, g, i, l, m) {
1778          var n,
1779            o,
1780            p,
1781            q,
1782            r,
1783            s,
1784            t,
1785            u,
1786            v = {},
1787            w = [],
1788            x = m || a[0];
1789          ((l = 'string' == typeof l ? ',' + l + ',' : h),
1790            null == f && (f = 1));
1791          for (o in a[0]) w.push(o);
1792          if (a.length > 1) {
1793            for (u = a[a.length - 1], t = !0, n = w.length; --n > -1; )
1794              if (((o = w[n]), Math.abs(x[o] - u[o]) > 0.05)) {
1795                t = !1;
1796                break;
1797              }
1798            t &&
1799              ((a = a.concat()),
1800              m && a.unshift(m),
1801              a.push(a[1]),
1802              (m = a[a.length - 3]));
1803          }
1804          for (b.length = c.length = d.length = 0, n = w.length; --n > -1; )
1805            ((o = w[n]),
1806              (e[o] = -1 !== l.indexOf(',' + o + ',')),
1807              (v[o] = k(a, o, e[o], m)));
1808          for (n = b.length; --n > -1; )
1809            ((b[n] = Math.sqrt(b[n])), (c[n] = Math.sqrt(c[n])));
1810          if (!i) {
1811            for (n = w.length; --n > -1; )
1812              if (e[o])
1813                for (p = v[w[n]], s = p.length - 1, q = 0; s > q; q++)
1814                  ((r = p[q + 1].da / c[q] + p[q].da / b[q] || 0),
1815                    (d[q] = (d[q] || 0) + r * r));
1816            for (n = d.length; --n > -1; ) d[n] = Math.sqrt(d[n]);
1817          }
1818          for (n = w.length, q = g ? 4 : 1; --n > -1; )
1819            ((o = w[n]),
1820              (p = v[o]),
1821              j(p, f, g, i, e[o]),
1822              t && (p.splice(0, q), p.splice(p.length - q, q)));
1823          return v;
1824        },
1825        m = function (a, b, c) {
1826          b = b || 'soft';
1827          var d,
1828            e,
1829            f,
1830            h,
1831            i,
1832            j,
1833            k,
1834            l,
1835            m,
1836            n,
1837            o,
1838            p = {},
1839            q = 'cubic' === b ? 3 : 2,
1840            r = 'soft' === b,
1841            s = [];
1842          if ((r && c && (a = [c].concat(a)), null == a || a.length < q + 1))
1843            throw 'invalid Bezier data';
1844          for (m in a[0]) s.push(m);
1845          for (j = s.length; --j > -1; ) {
1846            for (
1847              m = s[j], p[m] = i = [], n = 0, l = a.length, k = 0;
1848              l > k;
1849              k++
1850            )
1851              ((d =
1852                null == c
1853                  ? a[k][m]
1854                  : 'string' == typeof (o = a[k][m]) && '=' === o.charAt(1)
1855                    ? c[m] + Number(o.charAt(0) + o.substr(2))
1856                    : Number(o)),
1857                r && k > 1 && l - 1 > k && (i[n++] = (d + i[n - 2]) / 2),
1858                (i[n++] = d));
1859            for (l = n - q + 1, n = 0, k = 0; l > k; k += q)
1860              ((d = i[k]),
1861                (e = i[k + 1]),
1862                (f = i[k + 2]),
1863                (h = 2 === q ? 0 : i[k + 3]),
1864                (i[n++] = o =
1865                  3 === q
1866                    ? new g(d, e, f, h)
1867                    : new g(d, (2 * e + d) / 3, (2 * e + f) / 3, f)));
1868            i.length = n;
1869          }
1870          return p;
1871        },
1872        n = function (a, b, c) {
1873          for (
1874            var d, e, f, g, h, i, j, k, l, m, n, o = 1 / c, p = a.length;
1875            --p > -1;
1876          )
1877            for (
1878              m = a[p],
1879                f = m.a,
1880                g = m.d - f,
1881                h = m.c - f,
1882                i = m.b - f,
1883                d = e = 0,
1884                k = 1;
1885              c >= k;
1886              k++
1887            )
1888              ((j = o * k),
1889                (l = 1 - j),
1890                (d = e - (e = (j * j * g + 3 * l * (j * h + l * i)) * j)),
1891                (n = p * c + k - 1),
1892                (b[n] = (b[n] || 0) + d * d));
1893        },
1894        o = function (a, b) {
1895          b = b >> 0 || 6;
1896          var c,
1897            d,
1898            e,
1899            f,
1900            g = [],
1901            h = [],
1902            i = 0,
1903            j = 0,
1904            k = b - 1,
1905            l = [],
1906            m = [];
1907          for (c in a) n(a[c], g, b);
1908          for (e = g.length, d = 0; e > d; d++)
1909            ((i += Math.sqrt(g[d])),
1910              (f = d % b),
1911              (m[f] = i),
1912              f === k &&
1913                ((j += i),
1914                (f = (d / b) >> 0),
1915                (l[f] = m),
1916                (h[f] = j),
1917                (i = 0),
1918                (m = [])));
1919          return { length: j, lengths: h, segments: l };
1920        },
1921        p = _gsScope._gsDefine.plugin({
1922          propName: 'bezier',
1923          priority: -1,
1924          version: '1.3.8',
1925          API: 2,
1926          global: !0,
1927          init: function (a, b, c) {
1928            ((this._target = a),
1929              b instanceof Array && (b = { values: b }),
1930              (this._func = {}),
1931              (this._mod = {}),
1932              (this._props = []),
1933              (this._timeRes =
1934                null == b.timeResolution ? 6 : parseInt(b.timeResolution, 10)));
1935            var d,
1936              e,
1937              f,
1938              g,
1939              h,
1940              i = b.values || [],
1941              j = {},
1942              k = i[0],
1943              n = b.autoRotate || c.vars.orientToBezier;
1944            this._autoRotate = n
1945              ? n instanceof Array
1946                ? n
1947                : [['x', 'y', 'rotation', n === !0 ? 0 : Number(n) || 0]]
1948              : null;
1949            for (d in k) this._props.push(d);
1950            for (f = this._props.length; --f > -1; )
1951              ((d = this._props[f]),
1952                this._overwriteProps.push(d),
1953                (e = this._func[d] = 'function' == typeof a[d]),
1954                (j[d] = e
1955                  ? a[
1956                      d.indexOf('set') ||
1957                      'function' != typeof a['get' + d.substr(3)]
1958                        ? d
1959                        : 'get' + d.substr(3)
1960                    ]()
1961                  : parseFloat(a[d])),
1962                h || (j[d] !== i[0][d] && (h = j)));
1963            if (
1964              ((this._beziers =
1965                'cubic' !== b.type &&
1966                'quadratic' !== b.type &&
1967                'soft' !== b.type
1968                  ? l(
1969                      i,
1970                      isNaN(b.curviness) ? 1 : b.curviness,
1971                      !1,
1972                      'thruBasic' === b.type,
1973                      b.correlate,
1974                      h,
1975                    )
1976                  : m(i, b.type, j)),
1977              (this._segCount = this._beziers[d].length),
1978              this._timeRes)
1979            ) {
1980              var p = o(this._beziers, this._timeRes);
1981              ((this._length = p.length),
1982                (this._lengths = p.lengths),
1983                (this._segments = p.segments),
1984                (this._l1 = this._li = this._s1 = this._si = 0),
1985                (this._l2 = this._lengths[0]),
1986                (this._curSeg = this._segments[0]),
1987                (this._s2 = this._curSeg[0]),
1988                (this._prec = 1 / this._curSeg.length));
1989            }
1990            if ((n = this._autoRotate))
1991              for (
1992                this._initialRotations = [],
1993                  n[0] instanceof Array || (this._autoRotate = n = [n]),
1994                  f = n.length;
1995                --f > -1;
1996              ) {
1997                for (g = 0; 3 > g; g++)
1998                  ((d = n[f][g]),
1999                    (this._func[d] =
2000                      'function' == typeof a[d]
2001                        ? a[
2002                            d.indexOf('set') ||
2003                            'function' != typeof a['get' + d.substr(3)]
2004                              ? d
2005                              : 'get' + d.substr(3)
2006                          ]
2007                        : !1));
2008                ((d = n[f][2]),
2009                  (this._initialRotations[f] =
2010                    (this._func[d]
2011                      ? this._func[d].call(this._target)
2012                      : this._target[d]) || 0),
2013                  this._overwriteProps.push(d));
2014              }
2015            return ((this._startRatio = c.vars.runBackwards ? 1 : 0), !0);
2016          },
2017          set: function (b) {
2018            var c,
2019              d,
2020              e,
2021              f,
2022              g,
2023              h,
2024              i,
2025              j,
2026              k,
2027              l,
2028              m = this._segCount,
2029              n = this._func,
2030              o = this._target,
2031              p = b !== this._startRatio;
2032            if (this._timeRes) {
2033              if (
2034                ((k = this._lengths),
2035                (l = this._curSeg),
2036                (b *= this._length),
2037                (e = this._li),
2038                b > this._l2 && m - 1 > e)
2039              ) {
2040                for (j = m - 1; j > e && (this._l2 = k[++e]) <= b; );
2041                ((this._l1 = k[e - 1]),
2042                  (this._li = e),
2043                  (this._curSeg = l = this._segments[e]),
2044                  (this._s2 = l[(this._s1 = this._si = 0)]));
2045              } else if (b < this._l1 && e > 0) {
2046                for (; e > 0 && (this._l1 = k[--e]) >= b; );
2047                (0 === e && b < this._l1 ? (this._l1 = 0) : e++,
2048                  (this._l2 = k[e]),
2049                  (this._li = e),
2050                  (this._curSeg = l = this._segments[e]),
2051                  (this._s1 = l[(this._si = l.length - 1) - 1] || 0),
2052                  (this._s2 = l[this._si]));
2053              }
2054              if (
2055                ((c = e),
2056                (b -= this._l1),
2057                (e = this._si),
2058                b > this._s2 && e < l.length - 1)
2059              ) {
2060                for (j = l.length - 1; j > e && (this._s2 = l[++e]) <= b; );
2061                ((this._s1 = l[e - 1]), (this._si = e));
2062              } else if (b < this._s1 && e > 0) {
2063                for (; e > 0 && (this._s1 = l[--e]) >= b; );
2064                (0 === e && b < this._s1 ? (this._s1 = 0) : e++,
2065                  (this._s2 = l[e]),
2066                  (this._si = e));
2067              }
2068              h =
2069                (e + (b - this._s1) / (this._s2 - this._s1)) * this._prec || 0;
2070            } else
2071              ((c = 0 > b ? 0 : b >= 1 ? m - 1 : (m * b) >> 0),
2072                (h = (b - c * (1 / m)) * m));
2073            for (d = 1 - h, e = this._props.length; --e > -1; )
2074              ((f = this._props[e]),
2075                (g = this._beziers[f][c]),
2076                (i = (h * h * g.da + 3 * d * (h * g.ca + d * g.ba)) * h + g.a),
2077                this._mod[f] && (i = this._mod[f](i, o)),
2078                n[f] ? o[f](i) : (o[f] = i));
2079            if (this._autoRotate) {
2080              var q,
2081                r,
2082                s,
2083                t,
2084                u,
2085                v,
2086                w,
2087                x = this._autoRotate;
2088              for (e = x.length; --e > -1; )
2089                ((f = x[e][2]),
2090                  (v = x[e][3] || 0),
2091                  (w = x[e][4] === !0 ? 1 : a),
2092                  (g = this._beziers[x[e][0]]),
2093                  (q = this._beziers[x[e][1]]),
2094                  g &&
2095                    q &&
2096                    ((g = g[c]),
2097                    (q = q[c]),
2098                    (r = g.a + (g.b - g.a) * h),
2099                    (t = g.b + (g.c - g.b) * h),
2100                    (r += (t - r) * h),
2101                    (t += (g.c + (g.d - g.c) * h - t) * h),
2102                    (s = q.a + (q.b - q.a) * h),
2103                    (u = q.b + (q.c - q.b) * h),
2104                    (s += (u - s) * h),
2105                    (u += (q.c + (q.d - q.c) * h - u) * h),
2106                    (i = p
2107                      ? Math.atan2(u - s, t - r) * w + v
2108                      : this._initialRotations[e]),
2109                    this._mod[f] && (i = this._mod[f](i, o)),
2110                    n[f] ? o[f](i) : (o[f] = i)));
2111            }
2112          },
2113        }),
2114        q = p.prototype;
2115      ((p.bezierThrough = l),
2116        (p.cubicToQuadratic = i),
2117        (p._autoCSS = !0),
2118        (p.quadraticToCubic = function (a, b, c) {
2119          return new g(a, (2 * b + a) / 3, (2 * b + c) / 3, c);
2120        }),
2121        (p._cssRegister = function () {
2122          var a = f.CSSPlugin;
2123          if (a) {
2124            var b = a._internals,
2125              c = b._parseToProxy,
2126              d = b._setPluginRatio,
2127              e = b.CSSPropTween;
2128            b._registerComplexSpecialProp('bezier', {
2129              parser: function (a, b, f, g, h, i) {
2130                (b instanceof Array && (b = { values: b }), (i = new p()));
2131                var j,
2132                  k,
2133                  l,
2134                  m = b.values,
2135                  n = m.length - 1,
2136                  o = [],
2137                  q = {};
2138                if (0 > n) return h;
2139                for (j = 0; n >= j; j++)
2140                  ((l = c(a, m[j], g, h, i, n !== j)), (o[j] = l.end));
2141                for (k in b) q[k] = b[k];
2142                return (
2143                  (q.values = o),
2144                  (h = new e(a, 'bezier', 0, 0, l.pt, 2)),
2145                  (h.data = l),
2146                  (h.plugin = i),
2147                  (h.setRatio = d),
2148                  0 === q.autoRotate && (q.autoRotate = !0),
2149                  !q.autoRotate ||
2150                    q.autoRotate instanceof Array ||
2151                    ((j = q.autoRotate === !0 ? 0 : Number(q.autoRotate)),
2152                    (q.autoRotate =
2153                      null != l.end.left
2154                        ? [['left', 'top', 'rotation', j, !1]]
2155                        : null != l.end.x
2156                          ? [['x', 'y', 'rotation', j, !1]]
2157                          : !1)),
2158                  q.autoRotate &&
2159                    (g._transform || g._enableTransforms(!1),
2160                    (l.autoRotate = g._target._gsTransform),
2161                    (l.proxy.rotation = l.autoRotate.rotation || 0),
2162                    g._overwriteProps.push('rotation')),
2163                  i._onInitTween(l.proxy, q, g._tween),
2164                  h
2165                );
2166              },
2167            });
2168          }
2169        }),
2170        (q._mod = function (a) {
2171          for (var b, c = this._overwriteProps, d = c.length; --d > -1; )
2172            ((b = a[c[d]]),
2173              b && 'function' == typeof b && (this._mod[c[d]] = b));
2174        }),
2175        (q._kill = function (a) {
2176          var b,
2177            c,
2178            d = this._props;
2179          for (b in this._beziers)
2180            if (b in a)
2181              for (
2182                delete this._beziers[b], delete this._func[b], c = d.length;
2183                --c > -1;
2184              )
2185                d[c] === b && d.splice(c, 1);
2186          if ((d = this._autoRotate))
2187            for (c = d.length; --c > -1; ) a[d[c][2]] && d.splice(c, 1);
2188          return this._super._kill.call(this, a);
2189        }));
2190    })(),
2191    _gsScope._gsDefine(
2192      'plugins.CSSPlugin',
2193      ['plugins.TweenPlugin', 'TweenLite'],
2194      function (a, b) {
2195        var c,
2196          d,
2197          e,
2198          f,
2199          g = function () {
2200            (a.call(this, 'css'),
2201              (this._overwriteProps.length = 0),
2202              (this.setRatio = g.prototype.setRatio));
2203          },
2204          h = _gsScope._gsDefine.globals,
2205          i = {},
2206          j = (g.prototype = new a('css'));
2207        ((j.constructor = g),
2208          (g.version = '1.20.4'),
2209          (g.API = 2),
2210          (g.defaultTransformPerspective = 0),
2211          (g.defaultSkewType = 'compensated'),
2212          (g.defaultSmoothOrigin = !0),
2213          (j = 'px'),
2214          (g.suffixMap = {
2215            top: j,
2216            right: j,
2217            bottom: j,
2218            left: j,
2219            width: j,
2220            height: j,
2221            fontSize: j,
2222            padding: j,
2223            margin: j,
2224            perspective: j,
2225            lineHeight: '',
2226          }));
2227        var k,
2228          l,
2229          m,
2230          n,
2231          o,
2232          p,
2233          q,
2234          r,
2235          s = /(?:\-|\.|\b)(\d|\.|e\-)+/g,
2236          t = /(?:\d|\-\d|\.\d|\-\.\d|\+=\d|\-=\d|\+=.\d|\-=\.\d)+/g,
2237          u = /(?:\+=|\-=|\-|\b)[\d\-\.]+[a-zA-Z0-9]*(?:%|\b)/gi,
2238          v = /(?![+-]?\d*\.?\d+|[+-]|e[+-]\d+)[^0-9]/g,
2239          w = /(?:\d|\-|\+|=|#|\.)*/g,
2240          x = /opacity *= *([^)]*)/i,
2241          y = /opacity:([^;]*)/i,
2242          z = /alpha\(opacity *=.+?\)/i,
2243          A = /^(rgb|hsl)/,
2244          B = /([A-Z])/g,
2245          C = /-([a-z])/gi,
2246          D = /(^(?:url\(\"|url\())|(?:(\"\))$|\)$)/gi,
2247          E = function (a, b) {
2248            return b.toUpperCase();
2249          },
2250          F = /(?:Left|Right|Width)/i,
2251          G = /(M11|M12|M21|M22)=[\d\-\.e]+/gi,
2252          H = /progid\:DXImageTransform\.Microsoft\.Matrix\(.+?\)/i,
2253          I = /,(?=[^\)]*(?:\(|$))/gi,
2254          J = /[\s,\(]/i,
2255          K = Math.PI / 180,
2256          L = 180 / Math.PI,
2257          M = {},
2258          N = { style: {} },
2259          O = _gsScope.document || {
2260            createElement: function () {
2261              return N;
2262            },
2263          },
2264          P = function (a, b) {
2265            return O.createElementNS
2266              ? O.createElementNS(b || 'http://www.w3.org/1999/xhtml', a)
2267              : O.createElement(a);
2268          },
2269          Q = P('div'),
2270          R = P('img'),
2271          S = (g._internals = { _specialProps: i }),
2272          T = (_gsScope.navigator || {}).userAgent || '',
2273          U = (function () {
2274            var a = T.indexOf('Android'),
2275              b = P('a');
2276            return (
2277              (m =
2278                -1 !== T.indexOf('Safari') &&
2279                -1 === T.indexOf('Chrome') &&
2280                (-1 === a || parseFloat(T.substr(a + 8, 2)) > 3)),
2281              (o = m && parseFloat(T.substr(T.indexOf('Version/') + 8, 2)) < 6),
2282              (n = -1 !== T.indexOf('Firefox')),
2283              (/MSIE ([0-9]{1,}[\.0-9]{0,})/.exec(T) ||
2284                /Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/.exec(T)) &&
2285                (p = parseFloat(RegExp.$1)),
2286              b
2287                ? ((b.style.cssText = 'top:1px;opacity:.55;'),
2288                  /^0.55/.test(b.style.opacity))
2289                : !1
2290            );
2291          })(),
2292          V = function (a) {
2293            return x.test(
2294              'string' == typeof a
2295                ? a
2296                : (a.currentStyle ? a.currentStyle.filter : a.style.filter) ||
2297                    '',
2298            )
2299              ? parseFloat(RegExp.$1) / 100
2300              : 1;
2301          },
2302          W = function (a) {
2303            _gsScope.console && console.log(a);
2304          },
2305          X = '',
2306          Y = '',
2307          Z = function (a, b) {
2308            b = b || Q;
2309            var c,
2310              d,
2311              e = b.style;
2312            if (void 0 !== e[a]) return a;
2313            for (
2314              a = a.charAt(0).toUpperCase() + a.substr(1),
2315                c = ['O', 'Moz', 'ms', 'Ms', 'Webkit'],
2316                d = 5;
2317              --d > -1 && void 0 === e[c[d] + a];
2318            );
2319            return d >= 0
2320              ? ((Y = 3 === d ? 'ms' : c[d]),
2321                (X = '-' + Y.toLowerCase() + '-'),
2322                Y + a)
2323              : null;
2324          },
2325          $ = O.defaultView ? O.defaultView.getComputedStyle : function () {},
2326          _ = (g.getStyle = function (a, b, c, d, e) {
2327            var f;
2328            return U || 'opacity' !== b
2329              ? (!d && a.style[b]
2330                  ? (f = a.style[b])
2331                  : (c = c || $(a))
2332                    ? (f =
2333                        c[b] ||
2334                        c.getPropertyValue(b) ||
2335                        c.getPropertyValue(b.replace(B, '-$1').toLowerCase()))
2336                    : a.currentStyle && (f = a.currentStyle[b]),
2337                null == e ||
2338                (f && 'none' !== f && 'auto' !== f && 'auto auto' !== f)
2339                  ? f
2340                  : e)
2341              : V(a);
2342          }),
2343          aa = (S.convertToPixels = function (a, c, d, e, f) {
2344            if ('px' === e || (!e && 'lineHeight' !== c)) return d;
2345            if ('auto' === e || !d) return 0;
2346            var h,
2347              i,
2348              j,
2349              k = F.test(c),
2350              l = a,
2351              m = Q.style,
2352              n = 0 > d,
2353              o = 1 === d;
2354            if ((n && (d = -d), o && (d *= 100), 'lineHeight' !== c || e))
2355              if ('%' === e && -1 !== c.indexOf('border'))
2356                h = (d / 100) * (k ? a.clientWidth : a.clientHeight);
2357              else {
2358                if (
2359                  ((m.cssText =
2360                    'border:0 solid red;position:' +
2361                    _(a, 'position') +
2362                    ';line-height:0;'),
2363                  '%' !== e &&
2364                    l.appendChild &&
2365                    'v' !== e.charAt(0) &&
2366                    'rem' !== e)
2367                )
2368                  m[k ? 'borderLeftWidth' : 'borderTopWidth'] = d + e;
2369                else {
2370                  if (
2371                    ((l = a.parentNode || O.body),
2372                    -1 !== _(l, 'display').indexOf('flex') &&
2373                      (m.position = 'absolute'),
2374                    (i = l._gsCache),
2375                    (j = b.ticker.frame),
2376                    i && k && i.time === j)
2377                  )
2378                    return (i.width * d) / 100;
2379                  m[k ? 'width' : 'height'] = d + e;
2380                }
2381                (l.appendChild(Q),
2382                  (h = parseFloat(Q[k ? 'offsetWidth' : 'offsetHeight'])),
2383                  l.removeChild(Q),
2384                  k &&
2385                    '%' === e &&
2386                    g.cacheWidths !== !1 &&
2387                    ((i = l._gsCache = l._gsCache || {}),
2388                    (i.time = j),
2389                    (i.width = (h / d) * 100)),
2390                  0 !== h || f || (h = aa(a, c, d, e, !0)));
2391              }
2392            else
2393              ((i = $(a).lineHeight),
2394                (a.style.lineHeight = d),
2395                (h = parseFloat($(a).lineHeight)),
2396                (a.style.lineHeight = i));
2397            return (o && (h /= 100), n ? -h : h);
2398          }),
2399          ba = (S.calculateOffset = function (a, b, c) {
2400            if ('absolute' !== _(a, 'position', c)) return 0;
2401            var d = 'left' === b ? 'Left' : 'Top',
2402              e = _(a, 'margin' + d, c);
2403            return (
2404              a['offset' + d] - (aa(a, b, parseFloat(e), e.replace(w, '')) || 0)
2405            );
2406          }),
2407          ca = function (a, b) {
2408            var c,
2409              d,
2410              e,
2411              f = {};
2412            if ((b = b || $(a, null)))
2413              if ((c = b.length))
2414                for (; --c > -1; )
2415                  ((e = b[c]),
2416                    (-1 === e.indexOf('-transform') || Da === e) &&
2417                      (f[e.replace(C, E)] = b.getPropertyValue(e)));
2418              else
2419                for (c in b)
2420                  (-1 === c.indexOf('Transform') || Ca === c) && (f[c] = b[c]);
2421            else if ((b = a.currentStyle || a.style))
2422              for (c in b)
2423                'string' == typeof c &&
2424                  void 0 === f[c] &&
2425                  (f[c.replace(C, E)] = b[c]);
2426            return (
2427              U || (f.opacity = V(a)),
2428              (d = Ra(a, b, !1)),
2429              (f.rotation = d.rotation),
2430              (f.skewX = d.skewX),
2431              (f.scaleX = d.scaleX),
2432              (f.scaleY = d.scaleY),
2433              (f.x = d.x),
2434              (f.y = d.y),
2435              Fa &&
2436                ((f.z = d.z),
2437                (f.rotationX = d.rotationX),
2438                (f.rotationY = d.rotationY),
2439                (f.scaleZ = d.scaleZ)),
2440              f.filters && delete f.filters,
2441              f
2442            );
2443          },
2444          da = function (a, b, c, d, e) {
2445            var f,
2446              g,
2447              h,
2448              i = {},
2449              j = a.style;
2450            for (g in c)
2451              'cssText' !== g &&
2452                'length' !== g &&
2453                isNaN(g) &&
2454                (b[g] !== (f = c[g]) || (e && e[g])) &&
2455                -1 === g.indexOf('Origin') &&
2456                ('number' == typeof f || 'string' == typeof f) &&
2457                ((i[g] =
2458                  'auto' !== f || ('left' !== g && 'top' !== g)
2459                    ? ('' !== f && 'auto' !== f && 'none' !== f) ||
2460                      'string' != typeof b[g] ||
2461                      '' === b[g].replace(v, '')
2462                      ? f
2463                      : 0
2464                    : ba(a, g)),
2465                void 0 !== j[g] && (h = new sa(j, g, j[g], h)));
2466            if (d) for (g in d) 'className' !== g && (i[g] = d[g]);
2467            return { difs: i, firstMPT: h };
2468          },
2469          ea = { width: ['Left', 'Right'], height: ['Top', 'Bottom'] },
2470          fa = ['marginLeft', 'marginRight', 'marginTop', 'marginBottom'],
2471          ga = function (a, b, c) {
2472            if ('svg' === (a.nodeName + '').toLowerCase())
2473              return (c || $(a))[b] || 0;
2474            if (a.getCTM && Oa(a)) return a.getBBox()[b] || 0;
2475            var d = parseFloat('width' === b ? a.offsetWidth : a.offsetHeight),
2476              e = ea[b],
2477              f = e.length;
2478            for (c = c || $(a, null); --f > -1; )
2479              ((d -= parseFloat(_(a, 'padding' + e[f], c, !0)) || 0),
2480                (d -= parseFloat(_(a, 'border' + e[f] + 'Width', c, !0)) || 0));
2481            return d;
2482          },
2483          ha = function (a, b) {
2484            if ('contain' === a || 'auto' === a || 'auto auto' === a)
2485              return a + ' ';
2486            (null == a || '' === a) && (a = '0 0');
2487            var c,
2488              d = a.split(' '),
2489              e =
2490                -1 !== a.indexOf('left')
2491                  ? '0%'
2492                  : -1 !== a.indexOf('right')
2493                    ? '100%'
2494                    : d[0],
2495              f =
2496                -1 !== a.indexOf('top')
2497                  ? '0%'
2498                  : -1 !== a.indexOf('bottom')
2499                    ? '100%'
2500                    : d[1];
2501            if (d.length > 3 && !b) {
2502              for (
2503                d = a.split(', ').join(',').split(','), a = [], c = 0;
2504                c < d.length;
2505                c++
2506              )
2507                a.push(ha(d[c]));
2508              return a.join(',');
2509            }
2510            return (
2511              null == f
2512                ? (f = 'center' === e ? '50%' : '0')
2513                : 'center' === f && (f = '50%'),
2514              ('center' === e ||
2515                (isNaN(parseFloat(e)) && -1 === (e + '').indexOf('='))) &&
2516                (e = '50%'),
2517              (a = e + ' ' + f + (d.length > 2 ? ' ' + d[2] : '')),
2518              b &&
2519                ((b.oxp = -1 !== e.indexOf('%')),
2520                (b.oyp = -1 !== f.indexOf('%')),
2521                (b.oxr = '=' === e.charAt(1)),
2522                (b.oyr = '=' === f.charAt(1)),
2523                (b.ox = parseFloat(e.replace(v, ''))),
2524                (b.oy = parseFloat(f.replace(v, ''))),
2525                (b.v = a)),
2526              b || a
2527            );
2528          },
2529          ia = function (a, b) {
2530            return (
2531              'function' == typeof a && (a = a(r, q)),
2532              'string' == typeof a && '=' === a.charAt(1)
2533                ? parseInt(a.charAt(0) + '1', 10) * parseFloat(a.substr(2))
2534                : parseFloat(a) - parseFloat(b) || 0
2535            );
2536          },
2537          ja = function (a, b) {
2538            return (
2539              'function' == typeof a && (a = a(r, q)),
2540              null == a
2541                ? b
2542                : 'string' == typeof a && '=' === a.charAt(1)
2543                  ? parseInt(a.charAt(0) + '1', 10) * parseFloat(a.substr(2)) +
2544                    b
2545                  : parseFloat(a) || 0
2546            );
2547          },
2548          ka = function (a, b, c, d) {
2549            var e,
2550              f,
2551              g,
2552              h,
2553              i,
2554              j = 1e-6;
2555            return (
2556              'function' == typeof a && (a = a(r, q)),
2557              null == a
2558                ? (h = b)
2559                : 'number' == typeof a
2560                  ? (h = a)
2561                  : ((e = 360),
2562                    (f = a.split('_')),
2563                    (i = '=' === a.charAt(1)),
2564                    (g =
2565                      (i
2566                        ? parseInt(a.charAt(0) + '1', 10) *
2567                          parseFloat(f[0].substr(2))
2568                        : parseFloat(f[0])) *
2569                        (-1 === a.indexOf('rad') ? 1 : L) -
2570                      (i ? 0 : b)),
2571                    f.length &&
2572                      (d && (d[c] = b + g),
2573                      -1 !== a.indexOf('short') &&
2574                        ((g %= e),
2575                        g !== g % (e / 2) && (g = 0 > g ? g + e : g - e)),
2576                      -1 !== a.indexOf('_cw') && 0 > g
2577                        ? (g = ((g + 9999999999 * e) % e) - ((g / e) | 0) * e)
2578                        : -1 !== a.indexOf('ccw') &&
2579                          g > 0 &&
2580                          (g = ((g - 9999999999 * e) % e) - ((g / e) | 0) * e)),
2581                    (h = b + g)),
2582              j > h && h > -j && (h = 0),
2583              h
2584            );
2585          },
2586          la = {
2587            aqua: [0, 255, 255],
2588            lime: [0, 255, 0],
2589            silver: [192, 192, 192],
2590            black: [0, 0, 0],
2591            maroon: [128, 0, 0],
2592            teal: [0, 128, 128],
2593            blue: [0, 0, 255],
2594            navy: [0, 0, 128],
2595            white: [255, 255, 255],
2596            fuchsia: [255, 0, 255],
2597            olive: [128, 128, 0],
2598            yellow: [255, 255, 0],
2599            orange: [255, 165, 0],
2600            gray: [128, 128, 128],
2601            purple: [128, 0, 128],
2602            green: [0, 128, 0],
2603            red: [255, 0, 0],
2604            pink: [255, 192, 203],
2605            cyan: [0, 255, 255],
2606            transparent: [255, 255, 255, 0],
2607          },
2608          ma = function (a, b, c) {
2609            return (
2610              (a = 0 > a ? a + 1 : a > 1 ? a - 1 : a),
2611              (255 *
2612                (1 > 6 * a
2613                  ? b + (c - b) * a * 6
2614                  : 0.5 > a
2615                    ? c
2616                    : 2 > 3 * a
2617                      ? b + (c - b) * (2 / 3 - a) * 6
2618                      : b) +
2619                0.5) |
2620                0
2621            );
2622          },
2623          na = (g.parseColor = function (a, b) {
2624            var c, d, e, f, g, h, i, j, k, l, m;
2625            if (a)
2626              if ('number' == typeof a) c = [a >> 16, (a >> 8) & 255, 255 & a];
2627              else {
2628                if (
2629                  (',' === a.charAt(a.length - 1) &&
2630                    (a = a.substr(0, a.length - 1)),
2631                  la[a])
2632                )
2633                  c = la[a];
2634                else if ('#' === a.charAt(0))
2635                  (4 === a.length &&
2636                    ((d = a.charAt(1)),
2637                    (e = a.charAt(2)),
2638                    (f = a.charAt(3)),
2639                    (a = '#' + d + d + e + e + f + f)),
2640                    (a = parseInt(a.substr(1), 16)),
2641                    (c = [a >> 16, (a >> 8) & 255, 255 & a]));
2642                else if ('hsl' === a.substr(0, 3))
2643                  if (((c = m = a.match(s)), b)) {
2644                    if (-1 !== a.indexOf('=')) return a.match(t);
2645                  } else
2646                    ((g = (Number(c[0]) % 360) / 360),
2647                      (h = Number(c[1]) / 100),
2648                      (i = Number(c[2]) / 100),
2649                      (e = 0.5 >= i ? i * (h + 1) : i + h - i * h),
2650                      (d = 2 * i - e),
2651                      c.length > 3 && (c[3] = Number(c[3])),
2652                      (c[0] = ma(g + 1 / 3, d, e)),
2653                      (c[1] = ma(g, d, e)),
2654                      (c[2] = ma(g - 1 / 3, d, e)));
2655                else c = a.match(s) || la.transparent;
2656                ((c[0] = Number(c[0])),
2657                  (c[1] = Number(c[1])),
2658                  (c[2] = Number(c[2])),
2659                  c.length > 3 && (c[3] = Number(c[3])));
2660              }
2661            else c = la.black;
2662            return (
2663              b &&
2664                !m &&
2665                ((d = c[0] / 255),
2666                (e = c[1] / 255),
2667                (f = c[2] / 255),
2668                (j = Math.max(d, e, f)),
2669                (k = Math.min(d, e, f)),
2670                (i = (j + k) / 2),
2671                j === k
2672                  ? (g = h = 0)
2673                  : ((l = j - k),
2674                    (h = i > 0.5 ? l / (2 - j - k) : l / (j + k)),
2675                    (g =
2676                      j === d
2677                        ? (e - f) / l + (f > e ? 6 : 0)
2678                        : j === e
2679                          ? (f - d) / l + 2
2680                          : (d - e) / l + 4),
2681                    (g *= 60)),
2682                (c[0] = (g + 0.5) | 0),
2683                (c[1] = (100 * h + 0.5) | 0),
2684                (c[2] = (100 * i + 0.5) | 0)),
2685              c
2686            );
2687          }),
2688          oa = function (a, b) {
2689            var c,
2690              d,
2691              e,
2692              f = a.match(pa) || [],
2693              g = 0,
2694              h = '';
2695            if (!f.length) return a;
2696            for (c = 0; c < f.length; c++)
2697              ((d = f[c]),
2698                (e = a.substr(g, a.indexOf(d, g) - g)),
2699                (g += e.length + d.length),
2700                (d = na(d, b)),
2701                3 === d.length && d.push(1),
2702                (h +=
2703                  e +
2704                  (b
2705                    ? 'hsla(' + d[0] + ',' + d[1] + '%,' + d[2] + '%,' + d[3]
2706                    : 'rgba(' + d.join(',')) +
2707                  ')'));
2708            return h + a.substr(g);
2709          },
2710          pa =
2711            '(?:\\b(?:(?:rgb|rgba|hsl|hsla)\\(.+?\\))|\\B#(?:[0-9a-f]{3}){1,2}\\b';
2712        for (j in la) pa += '|' + j + '\\b';
2713        ((pa = new RegExp(pa + ')', 'gi')),
2714          (g.colorStringFilter = function (a) {
2715            var b,
2716              c = a[0] + ' ' + a[1];
2717            (pa.test(c) &&
2718              ((b = -1 !== c.indexOf('hsl(') || -1 !== c.indexOf('hsla(')),
2719              (a[0] = oa(a[0], b)),
2720              (a[1] = oa(a[1], b))),
2721              (pa.lastIndex = 0));
2722          }),
2723          b.defaultStringFilter ||
2724            (b.defaultStringFilter = g.colorStringFilter));
2725        var qa = function (a, b, c, d) {
2726            if (null == a)
2727              return function (a) {
2728                return a;
2729              };
2730            var e,
2731              f = b ? (a.match(pa) || [''])[0] : '',
2732              g = a.split(f).join('').match(u) || [],
2733              h = a.substr(0, a.indexOf(g[0])),
2734              i = ')' === a.charAt(a.length - 1) ? ')' : '',
2735              j = -1 !== a.indexOf(' ') ? ' ' : ',',
2736              k = g.length,
2737              l = k > 0 ? g[0].replace(s, '') : '';
2738            return k
2739              ? (e = b
2740                  ? function (a) {
2741                      var b, m, n, o;
2742                      if ('number' == typeof a) a += l;
2743                      else if (d && I.test(a)) {
2744                        for (
2745                          o = a.replace(I, '|').split('|'), n = 0;
2746                          n < o.length;
2747                          n++
2748                        )
2749                          o[n] = e(o[n]);
2750                        return o.join(',');
2751                      }
2752                      if (
2753                        ((b = (a.match(pa) || [f])[0]),
2754                        (m = a.split(b).join('').match(u) || []),
2755                        (n = m.length),
2756                        k > n--)
2757                      )
2758                        for (; ++n < k; )
2759                          m[n] = c ? m[((n - 1) / 2) | 0] : g[n];
2760                      return (
2761                        h +
2762                        m.join(j) +
2763                        j +
2764                        b +
2765                        i +
2766                        (-1 !== a.indexOf('inset') ? ' inset' : '')
2767                      );
2768                    }
2769                  : function (a) {
2770                      var b, f, m;
2771                      if ('number' == typeof a) a += l;
2772                      else if (d && I.test(a)) {
2773                        for (
2774                          f = a.replace(I, '|').split('|'), m = 0;
2775                          m < f.length;
2776                          m++
2777                        )
2778                          f[m] = e(f[m]);
2779                        return f.join(',');
2780                      }
2781                      if (((b = a.match(u) || []), (m = b.length), k > m--))
2782                        for (; ++m < k; )
2783                          b[m] = c ? b[((m - 1) / 2) | 0] : g[m];
2784                      return h + b.join(j) + i;
2785                    })
2786              : function (a) {
2787                  return a;
2788                };
2789          },
2790          ra = function (a) {
2791            return (
2792              (a = a.split(',')),
2793              function (b, c, d, e, f, g, h) {
2794                var i,
2795                  j = (c + '').split(' ');
2796                for (h = {}, i = 0; 4 > i; i++)
2797                  h[a[i]] = j[i] = j[i] || j[((i - 1) / 2) >> 0];
2798                return e.parse(b, h, f, g);
2799              }
2800            );
2801          },
2802          sa =
2803            ((S._setPluginRatio = function (a) {
2804              this.plugin.setRatio(a);
2805              for (
2806                var b,
2807                  c,
2808                  d,
2809                  e,
2810                  f,
2811                  g = this.data,
2812                  h = g.proxy,
2813                  i = g.firstMPT,
2814                  j = 1e-6;
2815                i;
2816              )
2817                ((b = h[i.v]),
2818                  i.r ? (b = Math.round(b)) : j > b && b > -j && (b = 0),
2819                  (i.t[i.p] = b),
2820                  (i = i._next));
2821              if (
2822                (g.autoRotate &&
2823                  (g.autoRotate.rotation = g.mod
2824                    ? g.mod(h.rotation, this.t)
2825                    : h.rotation),
2826                1 === a || 0 === a)
2827              )
2828                for (i = g.firstMPT, f = 1 === a ? 'e' : 'b'; i; ) {
2829                  if (((c = i.t), c.type)) {
2830                    if (1 === c.type) {
2831                      for (e = c.xs0 + c.s + c.xs1, d = 1; d < c.l; d++)
2832                        e += c['xn' + d] + c['xs' + (d + 1)];
2833                      c[f] = e;
2834                    }
2835                  } else c[f] = c.s + c.xs0;
2836                  i = i._next;
2837                }
2838            }),
2839            function (a, b, c, d, e) {
2840              ((this.t = a),
2841                (this.p = b),
2842                (this.v = c),
2843                (this.r = e),
2844                d && ((d._prev = this), (this._next = d)));
2845            }),
2846          ta =
2847            ((S._parseToProxy = function (a, b, c, d, e, f) {
2848              var g,
2849                h,
2850                i,
2851                j,
2852                k,
2853                l = d,
2854                m = {},
2855                n = {},
2856                o = c._transform,
2857                p = M;
2858              for (
2859                c._transform = null,
2860                  M = b,
2861                  d = k = c.parse(a, b, d, e),
2862                  M = p,
2863                  f &&
2864                    ((c._transform = o),
2865                    l && ((l._prev = null), l._prev && (l._prev._next = null)));
2866                d && d !== l;
2867              ) {
2868                if (
2869                  d.type <= 1 &&
2870                  ((h = d.p),
2871                  (n[h] = d.s + d.c),
2872                  (m[h] = d.s),
2873                  f || ((j = new sa(d, 's', h, j, d.r)), (d.c = 0)),
2874                  1 === d.type)
2875                )
2876                  for (g = d.l; --g > 0; )
2877                    ((i = 'xn' + g),
2878                      (h = d.p + '_' + i),
2879                      (n[h] = d.data[i]),
2880                      (m[h] = d[i]),
2881                      f || (j = new sa(d, i, h, j, d.rxp[i])));
2882                d = d._next;
2883              }
2884              return { proxy: m, end: n, firstMPT: j, pt: k };
2885            }),
2886            (S.CSSPropTween = function (a, b, d, e, g, h, i, j, k, l, m) {
2887              ((this.t = a),
2888                (this.p = b),
2889                (this.s = d),
2890                (this.c = e),
2891                (this.n = i || b),
2892                a instanceof ta || f.push(this.n),
2893                (this.r = j),
2894                (this.type = h || 0),
2895                k && ((this.pr = k), (c = !0)),
2896                (this.b = void 0 === l ? d : l),
2897                (this.e = void 0 === m ? d + e : m),
2898                g && ((this._next = g), (g._prev = this)));
2899            })),
2900          ua = function (a, b, c, d, e, f) {
2901            var g = new ta(a, b, c, d - c, e, -1, f);
2902            return ((g.b = c), (g.e = g.xs0 = d), g);
2903          },
2904          va = (g.parseComplex = function (a, b, c, d, e, f, h, i, j, l) {
2905            ((c = c || f || ''),
2906              'function' == typeof d && (d = d(r, q)),
2907              (h = new ta(a, b, 0, 0, h, l ? 2 : 1, null, !1, i, c, d)),
2908              (d += ''),
2909              e &&
2910                pa.test(d + c) &&
2911                ((d = [c, d]), g.colorStringFilter(d), (c = d[0]), (d = d[1])));
2912            var m,
2913              n,
2914              o,
2915              p,
2916              u,
2917              v,
2918              w,
2919              x,
2920              y,
2921              z,
2922              A,
2923              B,
2924              C,
2925              D = c.split(', ').join(',').split(' '),
2926              E = d.split(', ').join(',').split(' '),
2927              F = D.length,
2928              G = k !== !1;
2929            for (
2930              (-1 !== d.indexOf(',') || -1 !== c.indexOf(',')) &&
2931                (-1 !== (d + c).indexOf('rgb') || -1 !== (d + c).indexOf('hsl')
2932                  ? ((D = D.join(' ').replace(I, ', ').split(' ')),
2933                    (E = E.join(' ').replace(I, ', ').split(' ')))
2934                  : ((D = D.join(' ').split(',').join(', ').split(' ')),
2935                    (E = E.join(' ').split(',').join(', ').split(' '))),
2936                (F = D.length)),
2937                F !== E.length && ((D = (f || '').split(' ')), (F = D.length)),
2938                h.plugin = j,
2939                h.setRatio = l,
2940                pa.lastIndex = 0,
2941                m = 0;
2942              F > m;
2943              m++
2944            )
2945              if (((p = D[m]), (u = E[m]), (x = parseFloat(p)), x || 0 === x))
2946                h.appendXtra(
2947                  '',
2948                  x,
2949                  ia(u, x),
2950                  u.replace(t, ''),
2951                  G && -1 !== u.indexOf('px'),
2952                  !0,
2953                );
2954              else if (e && pa.test(p))
2955                ((B = u.indexOf(')') + 1),
2956                  (B = ')' + (B ? u.substr(B) : '')),
2957                  (C = -1 !== u.indexOf('hsl') && U),
2958                  (z = u),
2959                  (p = na(p, C)),
2960                  (u = na(u, C)),
2961                  (y = p.length + u.length > 6),
2962                  y && !U && 0 === u[3]
2963                    ? ((h['xs' + h.l] += h.l ? ' transparent' : 'transparent'),
2964                      (h.e = h.e.split(E[m]).join('transparent')))
2965                    : (U || (y = !1),
2966                      C
2967                        ? h
2968                            .appendXtra(
2969                              z.substr(0, z.indexOf('hsl')) +
2970                                (y ? 'hsla(' : 'hsl('),
2971                              p[0],
2972                              ia(u[0], p[0]),
2973                              ',',
2974                              !1,
2975                              !0,
2976                            )
2977                            .appendXtra('', p[1], ia(u[1], p[1]), '%,', !1)
2978                            .appendXtra(
2979                              '',
2980                              p[2],
2981                              ia(u[2], p[2]),
2982                              y ? '%,' : '%' + B,
2983                              !1,
2984                            )
2985                        : h
2986                            .appendXtra(
2987                              z.substr(0, z.indexOf('rgb')) +
2988                                (y ? 'rgba(' : 'rgb('),
2989                              p[0],
2990                              u[0] - p[0],
2991                              ',',
2992                              !0,
2993                              !0,
2994                            )
2995                            .appendXtra('', p[1], u[1] - p[1], ',', !0)
2996                            .appendXtra('', p[2], u[2] - p[2], y ? ',' : B, !0),
2997                      y &&
2998                        ((p = p.length < 4 ? 1 : p[3]),
2999                        h.appendXtra(
3000                          '',
3001                          p,
3002                          (u.length < 4 ? 1 : u[3]) - p,
3003                          B,
3004                          !1,
3005                        ))),
3006                  (pa.lastIndex = 0));
3007              else if ((v = p.match(s))) {
3008                if (((w = u.match(t)), !w || w.length !== v.length)) return h;
3009                for (o = 0, n = 0; n < v.length; n++)
3010                  ((A = v[n]),
3011                    (z = p.indexOf(A, o)),
3012                    h.appendXtra(
3013                      p.substr(o, z - o),
3014                      Number(A),
3015                      ia(w[n], A),
3016                      '',
3017                      G && 'px' === p.substr(z + A.length, 2),
3018                      0 === n,
3019                    ),
3020                    (o = z + A.length));
3021                h['xs' + h.l] += p.substr(o);
3022              } else h['xs' + h.l] += h.l || h['xs' + h.l] ? ' ' + u : u;
3023            if (-1 !== d.indexOf('=') && h.data) {
3024              for (B = h.xs0 + h.data.s, m = 1; m < h.l; m++)
3025                B += h['xs' + m] + h.data['xn' + m];
3026              h.e = B + h['xs' + m];
3027            }
3028            return (h.l || ((h.type = -1), (h.xs0 = h.e)), h.xfirst || h);
3029          }),
3030          wa = 9;
3031        for (j = ta.prototype, j.l = j.pr = 0; --wa > 0; )
3032          ((j['xn' + wa] = 0), (j['xs' + wa] = ''));
3033        ((j.xs0 = ''),
3034          (j._next =
3035            j._prev =
3036            j.xfirst =
3037            j.data =
3038            j.plugin =
3039            j.setRatio =
3040            j.rxp =
3041              null),
3042          (j.appendXtra = function (a, b, c, d, e, f) {
3043            var g = this,
3044              h = g.l;
3045            return (
3046              (g['xs' + h] += f && (h || g['xs' + h]) ? ' ' + a : a || ''),
3047              c || 0 === h || g.plugin
3048                ? (g.l++,
3049                  (g.type = g.setRatio ? 2 : 1),
3050                  (g['xs' + g.l] = d || ''),
3051                  h > 0
3052                    ? ((g.data['xn' + h] = b + c),
3053                      (g.rxp['xn' + h] = e),
3054                      (g['xn' + h] = b),
3055                      g.plugin ||
3056                        ((g.xfirst = new ta(
3057                          g,
3058                          'xn' + h,
3059                          b,
3060                          c,
3061                          g.xfirst || g,
3062                          0,
3063                          g.n,
3064                          e,
3065                          g.pr,
3066                        )),
3067                        (g.xfirst.xs0 = 0)),
3068                      g)
3069                    : ((g.data = { s: b + c }),
3070                      (g.rxp = {}),
3071                      (g.s = b),
3072                      (g.c = c),
3073                      (g.r = e),
3074                      g))
3075                : ((g['xs' + h] += b + (d || '')), g)
3076            );
3077          }));
3078        var xa = function (a, b) {
3079            ((b = b || {}),
3080              (this.p = b.prefix ? Z(a) || a : a),
3081              (i[a] = i[this.p] = this),
3082              (this.format =
3083                b.formatter ||
3084                qa(b.defaultValue, b.color, b.collapsible, b.multi)),
3085              b.parser && (this.parse = b.parser),
3086              (this.clrs = b.color),
3087              (this.multi = b.multi),
3088              (this.keyword = b.keyword),
3089              (this.dflt = b.defaultValue),
3090              (this.pr = b.priority || 0));
3091          },
3092          ya = (S._registerComplexSpecialProp = function (a, b, c) {
3093            'object' != typeof b && (b = { parser: c });
3094            var d,
3095              e,
3096              f = a.split(','),
3097              g = b.defaultValue;
3098            for (c = c || [g], d = 0; d < f.length; d++)
3099              ((b.prefix = 0 === d && b.prefix),
3100                (b.defaultValue = c[d] || g),
3101                (e = new xa(f[d], b)));
3102          }),
3103          za = (S._registerPluginProp = function (a) {
3104            if (!i[a]) {
3105              var b = a.charAt(0).toUpperCase() + a.substr(1) + 'Plugin';
3106              ya(a, {
3107                parser: function (a, c, d, e, f, g, j) {
3108                  var k = h.com.greensock.plugins[b];
3109                  return k
3110                    ? (k._cssRegister(), i[d].parse(a, c, d, e, f, g, j))
3111                    : (W('Error: ' + b + ' js file not loaded.'), f);
3112                },
3113              });
3114            }
3115          });
3116        ((j = xa.prototype),
3117          (j.parseComplex = function (a, b, c, d, e, f) {
3118            var g,
3119              h,
3120              i,
3121              j,
3122              k,
3123              l,
3124              m = this.keyword;
3125            if (
3126              (this.multi &&
3127                (I.test(c) || I.test(b)
3128                  ? ((h = b.replace(I, '|').split('|')),
3129                    (i = c.replace(I, '|').split('|')))
3130                  : m && ((h = [b]), (i = [c]))),
3131              i)
3132            ) {
3133              for (
3134                j = i.length > h.length ? i.length : h.length, g = 0;
3135                j > g;
3136                g++
3137              )
3138                ((b = h[g] = h[g] || this.dflt),
3139                  (c = i[g] = i[g] || this.dflt),
3140                  m &&
3141                    ((k = b.indexOf(m)),
3142                    (l = c.indexOf(m)),
3143                    k !== l &&
3144                      (-1 === l
3145                        ? (h[g] = h[g].split(m).join(''))
3146                        : -1 === k && (h[g] += ' ' + m))));
3147              ((b = h.join(', ')), (c = i.join(', ')));
3148            }
3149            return va(a, this.p, b, c, this.clrs, this.dflt, d, this.pr, e, f);
3150          }),
3151          (j.parse = function (a, b, c, d, f, g, h) {
3152            return this.parseComplex(
3153              a.style,
3154              this.format(_(a, this.p, e, !1, this.dflt)),
3155              this.format(b),
3156              f,
3157              g,
3158            );
3159          }),
3160          (g.registerSpecialProp = function (a, b, c) {
3161            ya(a, {
3162              parser: function (a, d, e, f, g, h, i) {
3163                var j = new ta(a, e, 0, 0, g, 2, e, !1, c);
3164                return ((j.plugin = h), (j.setRatio = b(a, d, f._tween, e)), j);
3165              },
3166              priority: c,
3167            });
3168          }),
3169          (g.useSVGTransformAttr = !0));
3170        var Aa,
3171          Ba =
3172            'scaleX,scaleY,scaleZ,x,y,z,skewX,skewY,rotation,rotationX,rotationY,perspective,xPercent,yPercent'.split(
3173              ',',
3174            ),
3175          Ca = Z('transform'),
3176          Da = X + 'transform',
3177          Ea = Z('transformOrigin'),
3178          Fa = null !== Z('perspective'),
3179          Ga = (S.Transform = function () {
3180            ((this.perspective =
3181              parseFloat(g.defaultTransformPerspective) || 0),
3182              (this.force3D =
3183                g.defaultForce3D !== !1 && Fa
3184                  ? g.defaultForce3D || 'auto'
3185                  : !1));
3186          }),
3187          Ha = _gsScope.SVGElement,
3188          Ia = function (a, b, c) {
3189            var d,
3190              e = O.createElementNS('http://www.w3.org/2000/svg', a),
3191              f = /([a-z])([A-Z])/g;
3192            for (d in c)
3193              e.setAttributeNS(null, d.replace(f, '$1-$2').toLowerCase(), c[d]);
3194            return (b.appendChild(e), e);
3195          },
3196          Ja = O.documentElement || {},
3197          Ka = (function () {
3198            var a,
3199              b,
3200              c,
3201              d = p || (/Android/i.test(T) && !_gsScope.chrome);
3202            return (
3203              O.createElementNS &&
3204                !d &&
3205                ((a = Ia('svg', Ja)),
3206                (b = Ia('rect', a, { width: 100, height: 50, x: 100 })),
3207                (c = b.getBoundingClientRect().width),
3208                (b.style[Ea] = '50% 50%'),
3209                (b.style[Ca] = 'scaleX(0.5)'),
3210                (d = c === b.getBoundingClientRect().width && !(n && Fa)),
3211                Ja.removeChild(a)),
3212              d
3213            );
3214          })(),
3215          La = function (a, b, c, d, e, f) {
3216            var h,
3217              i,
3218              j,
3219              k,
3220              l,
3221              m,
3222              n,
3223              o,
3224              p,
3225              q,
3226              r,
3227              s,
3228              t,
3229              u,
3230              v = a._gsTransform,
3231              w = Qa(a, !0);
3232            (v && ((t = v.xOrigin), (u = v.yOrigin)),
3233              (!d || (h = d.split(' ')).length < 2) &&
3234                ((n = a.getBBox()),
3235                0 === n.x &&
3236                  0 === n.y &&
3237                  n.width + n.height === 0 &&
3238                  (n = {
3239                    x:
3240                      parseFloat(
3241                        a.hasAttribute('x')
3242                          ? a.getAttribute('x')
3243                          : a.hasAttribute('cx')
3244                            ? a.getAttribute('cx')
3245                            : 0,
3246                      ) || 0,
3247                    y:
3248                      parseFloat(
3249                        a.hasAttribute('y')
3250                          ? a.getAttribute('y')
3251                          : a.hasAttribute('cy')
3252                            ? a.getAttribute('cy')
3253                            : 0,
3254                      ) || 0,
3255                    width: 0,
3256                    height: 0,
3257                  }),
3258                (b = ha(b).split(' ')),
3259                (h = [
3260                  (-1 !== b[0].indexOf('%')
3261                    ? (parseFloat(b[0]) / 100) * n.width
3262                    : parseFloat(b[0])) + n.x,
3263                  (-1 !== b[1].indexOf('%')
3264                    ? (parseFloat(b[1]) / 100) * n.height
3265                    : parseFloat(b[1])) + n.y,
3266                ])),
3267              (c.xOrigin = k = parseFloat(h[0])),
3268              (c.yOrigin = l = parseFloat(h[1])),
3269              d &&
3270                w !== Pa &&
3271                ((m = w[0]),
3272                (n = w[1]),
3273                (o = w[2]),
3274                (p = w[3]),
3275                (q = w[4]),
3276                (r = w[5]),
3277                (s = m * p - n * o),
3278                s &&
3279                  ((i = k * (p / s) + l * (-o / s) + (o * r - p * q) / s),
3280                  (j = k * (-n / s) + l * (m / s) - (m * r - n * q) / s),
3281                  (k = c.xOrigin = h[0] = i),
3282                  (l = c.yOrigin = h[1] = j))),
3283              v &&
3284                (f &&
3285                  ((c.xOffset = v.xOffset), (c.yOffset = v.yOffset), (v = c)),
3286                e || (e !== !1 && g.defaultSmoothOrigin !== !1)
3287                  ? ((i = k - t),
3288                    (j = l - u),
3289                    (v.xOffset += i * w[0] + j * w[2] - i),
3290                    (v.yOffset += i * w[1] + j * w[3] - j))
3291                  : (v.xOffset = v.yOffset = 0)),
3292              f || a.setAttribute('data-svg-origin', h.join(' ')));
3293          },
3294          Ma = function (a) {
3295            var b,
3296              c = P(
3297                'svg',
3298                (this.ownerSVGElement &&
3299                  this.ownerSVGElement.getAttribute('xmlns')) ||
3300                  'http://www.w3.org/2000/svg',
3301              ),
3302              d = this.parentNode,
3303              e = this.nextSibling,
3304              f = this.style.cssText;
3305            if (
3306              (Ja.appendChild(c),
3307              c.appendChild(this),
3308              (this.style.display = 'block'),
3309              a)
3310            )
3311              try {
3312                ((b = this.getBBox()),
3313                  (this._originalGetBBox = this.getBBox),
3314                  (this.getBBox = Ma));
3315              } catch (g) {}
3316            else this._originalGetBBox && (b = this._originalGetBBox());
3317            return (
3318              e ? d.insertBefore(this, e) : d.appendChild(this),
3319              Ja.removeChild(c),
3320              (this.style.cssText = f),
3321              b
3322            );
3323          },
3324          Na = function (a) {
3325            try {
3326              return a.getBBox();
3327            } catch (b) {
3328              return Ma.call(a, !0);
3329            }
3330          },
3331          Oa = function (a) {
3332            return !(
3333              !Ha ||
3334              !a.getCTM ||
3335              (a.parentNode && !a.ownerSVGElement) ||
3336              !Na(a)
3337            );
3338          },
3339          Pa = [1, 0, 0, 1, 0, 0],
3340          Qa = function (a, b) {
3341            var c,
3342              d,
3343              e,
3344              f,
3345              g,
3346              h,
3347              i = a._gsTransform || new Ga(),
3348              j = 1e5,
3349              k = a.style;
3350            if (
3351              (Ca
3352                ? (d = _(a, Da, null, !0))
3353                : a.currentStyle &&
3354                  ((d = a.currentStyle.filter.match(G)),
3355                  (d =
3356                    d && 4 === d.length
3357                      ? [
3358                          d[0].substr(4),
3359                          Number(d[2].substr(4)),
3360                          Number(d[1].substr(4)),
3361                          d[3].substr(4),
3362                          i.x || 0,
3363                          i.y || 0,
3364                        ].join(',')
3365                      : '')),
3366              (c = !d || 'none' === d || 'matrix(1, 0, 0, 1, 0, 0)' === d),
3367              !Ca ||
3368                (!(h = !$(a) || 'none' === $(a).display) && a.parentNode) ||
3369                (h && ((f = k.display), (k.display = 'block')),
3370                a.parentNode || ((g = 1), Ja.appendChild(a)),
3371                (d = _(a, Da, null, !0)),
3372                (c = !d || 'none' === d || 'matrix(1, 0, 0, 1, 0, 0)' === d),
3373                f ? (k.display = f) : h && Va(k, 'display'),
3374                g && Ja.removeChild(a)),
3375              (i.svg || (a.getCTM && Oa(a))) &&
3376                (c &&
3377                  -1 !== (k[Ca] + '').indexOf('matrix') &&
3378                  ((d = k[Ca]), (c = 0)),
3379                (e = a.getAttribute('transform')),
3380                c &&
3381                  e &&
3382                  ((e = a.transform.baseVal.consolidate().matrix),
3383                  (d =
3384                    'matrix(' +
3385                    e.a +
3386                    ',' +
3387                    e.b +
3388                    ',' +
3389                    e.c +
3390                    ',' +
3391                    e.d +
3392                    ',' +
3393                    e.e +
3394                    ',' +
3395                    e.f +
3396                    ')'),
3397                  (c = 0))),
3398              c)
3399            )
3400              return Pa;
3401            for (e = (d || '').match(s) || [], wa = e.length; --wa > -1; )
3402              ((f = Number(e[wa])),
3403                (e[wa] = (g = f - (f |= 0))
3404                  ? ((g * j + (0 > g ? -0.5 : 0.5)) | 0) / j + f
3405                  : f));
3406            return b && e.length > 6
3407              ? [e[0], e[1], e[4], e[5], e[12], e[13]]
3408              : e;
3409          },
3410          Ra = (S.getTransform = function (a, c, d, e) {
3411            if (a._gsTransform && d && !e) return a._gsTransform;
3412            var f,
3413              h,
3414              i,
3415              j,
3416              k,
3417              l,
3418              m = d ? a._gsTransform || new Ga() : new Ga(),
3419              n = m.scaleX < 0,
3420              o = 2e-5,
3421              p = 1e5,
3422              q = Fa
3423                ? parseFloat(_(a, Ea, c, !1, '0 0 0').split(' ')[2]) ||
3424                  m.zOrigin ||
3425                  0
3426                : 0,
3427              r = parseFloat(g.defaultTransformPerspective) || 0;
3428            if (
3429              ((m.svg = !(!a.getCTM || !Oa(a))),
3430              m.svg &&
3431                (La(
3432                  a,
3433                  _(a, Ea, c, !1, '50% 50%') + '',
3434                  m,
3435                  a.getAttribute('data-svg-origin'),
3436                ),
3437                (Aa = g.useSVGTransformAttr || Ka)),
3438              (f = Qa(a)),
3439              f !== Pa)
3440            ) {
3441              if (16 === f.length) {
3442                var s,
3443                  t,
3444                  u,
3445                  v,
3446                  w,
3447                  x = f[0],
3448                  y = f[1],
3449                  z = f[2],
3450                  A = f[3],
3451                  B = f[4],
3452                  C = f[5],
3453                  D = f[6],
3454                  E = f[7],
3455                  F = f[8],
3456                  G = f[9],
3457                  H = f[10],
3458                  I = f[12],
3459                  J = f[13],
3460                  K = f[14],
3461                  M = f[11],
3462                  N = Math.atan2(D, H);
3463                (m.zOrigin &&
3464                  ((K = -m.zOrigin),
3465                  (I = F * K - f[12]),
3466                  (J = G * K - f[13]),
3467                  (K = H * K + m.zOrigin - f[14])),
3468                  (m.rotationX = N * L),
3469                  N &&
3470                    ((v = Math.cos(-N)),
3471                    (w = Math.sin(-N)),
3472                    (s = B * v + F * w),
3473                    (t = C * v + G * w),
3474                    (u = D * v + H * w),
3475                    (F = B * -w + F * v),
3476                    (G = C * -w + G * v),
3477                    (H = D * -w + H * v),
3478                    (M = E * -w + M * v),
3479                    (B = s),
3480                    (C = t),
3481                    (D = u)),
3482                  (N = Math.atan2(-z, H)),
3483                  (m.rotationY = N * L),
3484                  N &&
3485                    ((v = Math.cos(-N)),
3486                    (w = Math.sin(-N)),
3487                    (s = x * v - F * w),
3488                    (t = y * v - G * w),
3489                    (u = z * v - H * w),
3490                    (G = y * w + G * v),
3491                    (H = z * w + H * v),
3492                    (M = A * w + M * v),
3493                    (x = s),
3494                    (y = t),
3495                    (z = u)),
3496                  (N = Math.atan2(y, x)),
3497                  (m.rotation = N * L),
3498                  N &&
3499                    ((v = Math.cos(N)),
3500                    (w = Math.sin(N)),
3501                    (s = x * v + y * w),
3502                    (t = B * v + C * w),
3503                    (u = F * v + G * w),
3504                    (y = y * v - x * w),
3505                    (C = C * v - B * w),
3506                    (G = G * v - F * w),
3507                    (x = s),
3508                    (B = t),
3509                    (F = u)),
3510                  m.rotationX &&
3511                    Math.abs(m.rotationX) + Math.abs(m.rotation) > 359.9 &&
3512                    ((m.rotationX = m.rotation = 0),
3513                    (m.rotationY = 180 - m.rotationY)),
3514                  (N = Math.atan2(B, C)),
3515                  (m.scaleX =
3516                    ((Math.sqrt(x * x + y * y + z * z) * p + 0.5) | 0) / p),
3517                  (m.scaleY = ((Math.sqrt(C * C + D * D) * p + 0.5) | 0) / p),
3518                  (m.scaleZ =
3519                    ((Math.sqrt(F * F + G * G + H * H) * p + 0.5) | 0) / p),
3520                  (x /= m.scaleX),
3521                  (B /= m.scaleY),
3522                  (y /= m.scaleX),
3523                  (C /= m.scaleY),
3524                  Math.abs(N) > o
3525                    ? ((m.skewX = N * L),
3526                      (B = 0),
3527                      'simple' !== m.skewType && (m.scaleY *= 1 / Math.cos(N)))
3528                    : (m.skewX = 0),
3529                  (m.perspective = M ? 1 / (0 > M ? -M : M) : 0),
3530                  (m.x = I),
3531                  (m.y = J),
3532                  (m.z = K),
3533                  m.svg &&
3534                    ((m.x -= m.xOrigin - (m.xOrigin * x - m.yOrigin * B)),
3535                    (m.y -= m.yOrigin - (m.yOrigin * y - m.xOrigin * C))));
3536              } else if (
3537                !Fa ||
3538                e ||
3539                !f.length ||
3540                m.x !== f[4] ||
3541                m.y !== f[5] ||
3542                (!m.rotationX && !m.rotationY)
3543              ) {
3544                var O = f.length >= 6,
3545                  P = O ? f[0] : 1,
3546                  Q = f[1] || 0,
3547                  R = f[2] || 0,
3548                  S = O ? f[3] : 1;
3549                ((m.x = f[4] || 0),
3550                  (m.y = f[5] || 0),
3551                  (i = Math.sqrt(P * P + Q * Q)),
3552                  (j = Math.sqrt(S * S + R * R)),
3553                  (k = P || Q ? Math.atan2(Q, P) * L : m.rotation || 0),
3554                  (l = R || S ? Math.atan2(R, S) * L + k : m.skewX || 0),
3555                  (m.scaleX = i),
3556                  (m.scaleY = j),
3557                  (m.rotation = k),
3558                  (m.skewX = l),
3559                  Fa &&
3560                    ((m.rotationX = m.rotationY = m.z = 0),
3561                    (m.perspective = r),
3562                    (m.scaleZ = 1)),
3563                  m.svg &&
3564                    ((m.x -= m.xOrigin - (m.xOrigin * P + m.yOrigin * R)),
3565                    (m.y -= m.yOrigin - (m.xOrigin * Q + m.yOrigin * S))));
3566              }
3567              (Math.abs(m.skewX) > 90 &&
3568                Math.abs(m.skewX) < 270 &&
3569                (n
3570                  ? ((m.scaleX *= -1),
3571                    (m.skewX += m.rotation <= 0 ? 180 : -180),
3572                    (m.rotation += m.rotation <= 0 ? 180 : -180))
3573                  : ((m.scaleY *= -1), (m.skewX += m.skewX <= 0 ? 180 : -180))),
3574                (m.zOrigin = q));
3575              for (h in m) m[h] < o && m[h] > -o && (m[h] = 0);
3576            }
3577            return (
3578              d &&
3579                ((a._gsTransform = m),
3580                m.svg &&
3581                  (Aa && a.style[Ca]
3582                    ? b.delayedCall(0.001, function () {
3583                        Va(a.style, Ca);
3584                      })
3585                    : !Aa &&
3586                      a.getAttribute('transform') &&
3587                      b.delayedCall(0.001, function () {
3588                        a.removeAttribute('transform');
3589                      }))),
3590              m
3591            );
3592          }),
3593          Sa = function (a) {
3594            var b,
3595              c,
3596              d = this.data,
3597              e = -d.rotation * K,
3598              f = e + d.skewX * K,
3599              g = 1e5,
3600              h = ((Math.cos(e) * d.scaleX * g) | 0) / g,
3601              i = ((Math.sin(e) * d.scaleX * g) | 0) / g,
3602              j = ((Math.sin(f) * -d.scaleY * g) | 0) / g,
3603              k = ((Math.cos(f) * d.scaleY * g) | 0) / g,
3604              l = this.t.style,
3605              m = this.t.currentStyle;
3606            if (m) {
3607              ((c = i), (i = -j), (j = -c), (b = m.filter), (l.filter = ''));
3608              var n,
3609                o,
3610                q = this.t.offsetWidth,
3611                r = this.t.offsetHeight,
3612                s = 'absolute' !== m.position,
3613                t =
3614                  'progid:DXImageTransform.Microsoft.Matrix(M11=' +
3615                  h +
3616                  ', M12=' +
3617                  i +
3618                  ', M21=' +
3619                  j +
3620                  ', M22=' +
3621                  k,
3622                u = d.x + (q * d.xPercent) / 100,
3623                v = d.y + (r * d.yPercent) / 100;
3624              if (
3625                (null != d.ox &&
3626                  ((n = (d.oxp ? q * d.ox * 0.01 : d.ox) - q / 2),
3627                  (o = (d.oyp ? r * d.oy * 0.01 : d.oy) - r / 2),
3628                  (u += n - (n * h + o * i)),
3629                  (v += o - (n * j + o * k))),
3630                s
3631                  ? ((n = q / 2),
3632                    (o = r / 2),
3633                    (t +=
3634                      ', Dx=' +
3635                      (n - (n * h + o * i) + u) +
3636                      ', Dy=' +
3637                      (o - (n * j + o * k) + v) +
3638                      ')'))
3639                  : (t += ", sizingMethod='auto expand')"),
3640                -1 !== b.indexOf('DXImageTransform.Microsoft.Matrix(')
3641                  ? (l.filter = b.replace(H, t))
3642                  : (l.filter = t + ' ' + b),
3643                (0 === a || 1 === a) &&
3644                  1 === h &&
3645                  0 === i &&
3646                  0 === j &&
3647                  1 === k &&
3648                  ((s && -1 === t.indexOf('Dx=0, Dy=0')) ||
3649                    (x.test(b) && 100 !== parseFloat(RegExp.$1)) ||
3650                    (-1 === b.indexOf(b.indexOf('Alpha')) &&
3651                      l.removeAttribute('filter'))),
3652                !s)
3653              ) {
3654                var y,
3655                  z,
3656                  A,
3657                  B = 8 > p ? 1 : -1;
3658                for (
3659                  n = d.ieOffsetX || 0,
3660                    o = d.ieOffsetY || 0,
3661                    d.ieOffsetX = Math.round(
3662                      (q - ((0 > h ? -h : h) * q + (0 > i ? -i : i) * r)) / 2 +
3663                        u,
3664                    ),
3665                    d.ieOffsetY = Math.round(
3666                      (r - ((0 > k ? -k : k) * r + (0 > j ? -j : j) * q)) / 2 +
3667                        v,
3668                    ),
3669                    wa = 0;
3670                  4 > wa;
3671                  wa++
3672                )
3673                  ((z = fa[wa]),
3674                    (y = m[z]),
3675                    (c =
3676                      -1 !== y.indexOf('px')
3677                        ? parseFloat(y)
3678                        : aa(this.t, z, parseFloat(y), y.replace(w, '')) || 0),
3679                    (A =
3680                      c !== d[z]
3681                        ? 2 > wa
3682                          ? -d.ieOffsetX
3683                          : -d.ieOffsetY
3684                        : 2 > wa
3685                          ? n - d.ieOffsetX
3686                          : o - d.ieOffsetY),
3687                    (l[z] =
3688                      (d[z] = Math.round(
3689                        c - A * (0 === wa || 2 === wa ? 1 : B),
3690                      )) + 'px'));
3691              }
3692            }
3693          },
3694          Ta =
3695            (S.set3DTransformRatio =
3696            S.setTransformRatio =
3697              function (a) {
3698                var b,
3699                  c,
3700                  d,
3701                  e,
3702                  f,
3703                  g,
3704                  h,
3705                  i,
3706                  j,
3707                  k,
3708                  l,
3709                  m,
3710                  o,
3711                  p,
3712                  q,
3713                  r,
3714                  s,
3715                  t,
3716                  u,
3717                  v,
3718                  w,
3719                  x,
3720                  y,
3721                  z = this.data,
3722                  A = this.t.style,
3723                  B = z.rotation,
3724                  C = z.rotationX,
3725                  D = z.rotationY,
3726                  E = z.scaleX,
3727                  F = z.scaleY,
3728                  G = z.scaleZ,
3729                  H = z.x,
3730                  I = z.y,
3731                  J = z.z,
3732                  L = z.svg,
3733                  M = z.perspective,
3734                  N = z.force3D,
3735                  O = z.skewY,
3736                  P = z.skewX;
3737                if (
3738                  (O && ((P += O), (B += O)),
3739                  ((((1 === a || 0 === a) &&
3740                    'auto' === N &&
3741                    (this.tween._totalTime === this.tween._totalDuration ||
3742                      !this.tween._totalTime)) ||
3743                    !N) &&
3744                    !J &&
3745                    !M &&
3746                    !D &&
3747                    !C &&
3748                    1 === G) ||
3749                    (Aa && L) ||
3750                    !Fa)
3751                )
3752                  return void (B || P || L
3753                    ? ((B *= K),
3754                      (x = P * K),
3755                      (y = 1e5),
3756                      (c = Math.cos(B) * E),
3757                      (f = Math.sin(B) * E),
3758                      (d = Math.sin(B - x) * -F),
3759                      (g = Math.cos(B - x) * F),
3760                      x &&
3761                        'simple' === z.skewType &&
3762                        ((b = Math.tan(x - O * K)),
3763                        (b = Math.sqrt(1 + b * b)),
3764                        (d *= b),
3765                        (g *= b),
3766                        O &&
3767                          ((b = Math.tan(O * K)),
3768                          (b = Math.sqrt(1 + b * b)),
3769                          (c *= b),
3770                          (f *= b))),
3771                      L &&
3772                        ((H +=
3773                          z.xOrigin -
3774                          (z.xOrigin * c + z.yOrigin * d) +
3775                          z.xOffset),
3776                        (I +=
3777                          z.yOrigin -
3778                          (z.xOrigin * f + z.yOrigin * g) +
3779                          z.yOffset),
3780                        Aa &&
3781                          (z.xPercent || z.yPercent) &&
3782                          ((q = this.t.getBBox()),
3783                          (H += 0.01 * z.xPercent * q.width),
3784                          (I += 0.01 * z.yPercent * q.height)),
3785                        (q = 1e-6),
3786                        q > H && H > -q && (H = 0),
3787                        q > I && I > -q && (I = 0)),
3788                      (u =
3789                        ((c * y) | 0) / y +
3790                        ',' +
3791                        ((f * y) | 0) / y +
3792                        ',' +
3793                        ((d * y) | 0) / y +
3794                        ',' +
3795                        ((g * y) | 0) / y +
3796                        ',' +
3797                        H +
3798                        ',' +
3799                        I +
3800                        ')'),
3801                      L && Aa
3802                        ? this.t.setAttribute('transform', 'matrix(' + u)
3803                        : (A[Ca] =
3804                            (z.xPercent || z.yPercent
3805                              ? 'translate(' +
3806                                z.xPercent +
3807                                '%,' +
3808                                z.yPercent +
3809                                '%) matrix('
3810                              : 'matrix(') + u))
3811                    : (A[Ca] =
3812                        (z.xPercent || z.yPercent
3813                          ? 'translate(' +
3814                            z.xPercent +
3815                            '%,' +
3816                            z.yPercent +
3817                            '%) matrix('
3818                          : 'matrix(') +
3819                        E +
3820                        ',0,0,' +
3821                        F +
3822                        ',' +
3823                        H +
3824                        ',' +
3825                        I +
3826                        ')'));
3827                if (
3828                  (n &&
3829                    ((q = 1e-4),
3830                    q > E && E > -q && (E = G = 2e-5),
3831                    q > F && F > -q && (F = G = 2e-5),
3832                    !M || z.z || z.rotationX || z.rotationY || (M = 0)),
3833                  B || P)
3834                )
3835                  ((B *= K),
3836                    (r = c = Math.cos(B)),
3837                    (s = f = Math.sin(B)),
3838                    P &&
3839                      ((B -= P * K),
3840                      (r = Math.cos(B)),
3841                      (s = Math.sin(B)),
3842                      'simple' === z.skewType &&
3843                        ((b = Math.tan((P - O) * K)),
3844                        (b = Math.sqrt(1 + b * b)),
3845                        (r *= b),
3846                        (s *= b),
3847                        z.skewY &&
3848                          ((b = Math.tan(O * K)),
3849                          (b = Math.sqrt(1 + b * b)),
3850                          (c *= b),
3851                          (f *= b)))),
3852                    (d = -s),
3853                    (g = r));
3854                else {
3855                  if (!(D || C || 1 !== G || M || L))
3856                    return void (A[Ca] =
3857                      (z.xPercent || z.yPercent
3858                        ? 'translate(' +
3859                          z.xPercent +
3860                          '%,' +
3861                          z.yPercent +
3862                          '%) translate3d('
3863                        : 'translate3d(') +
3864                      H +
3865                      'px,' +
3866                      I +
3867                      'px,' +
3868                      J +
3869                      'px)' +
3870                      (1 !== E || 1 !== F
3871                        ? ' scale(' + E + ',' + F + ')'
3872                        : ''));
3873                  ((c = g = 1), (d = f = 0));
3874                }
3875                ((k = 1),
3876                  (e = h = i = j = l = m = 0),
3877                  (o = M ? -1 / M : 0),
3878                  (p = z.zOrigin),
3879                  (q = 1e-6),
3880                  (v = ','),
3881                  (w = '0'),
3882                  (B = D * K),
3883                  B &&
3884                    ((r = Math.cos(B)),
3885                    (s = Math.sin(B)),
3886                    (i = -s),
3887                    (l = o * -s),
3888                    (e = c * s),
3889                    (h = f * s),
3890                    (k = r),
3891                    (o *= r),
3892                    (c *= r),
3893                    (f *= r)),
3894                  (B = C * K),
3895                  B &&
3896                    ((r = Math.cos(B)),
3897                    (s = Math.sin(B)),
3898                    (b = d * r + e * s),
3899                    (t = g * r + h * s),
3900                    (j = k * s),
3901                    (m = o * s),
3902                    (e = d * -s + e * r),
3903                    (h = g * -s + h * r),
3904                    (k *= r),
3905                    (o *= r),
3906                    (d = b),
3907                    (g = t)),
3908                  1 !== G && ((e *= G), (h *= G), (k *= G), (o *= G)),
3909                  1 !== F && ((d *= F), (g *= F), (j *= F), (m *= F)),
3910                  1 !== E && ((c *= E), (f *= E), (i *= E), (l *= E)),
3911                  (p || L) &&
3912                    (p && ((H += e * -p), (I += h * -p), (J += k * -p + p)),
3913                    L &&
3914                      ((H +=
3915                        z.xOrigin -
3916                        (z.xOrigin * c + z.yOrigin * d) +
3917                        z.xOffset),
3918                      (I +=
3919                        z.yOrigin -
3920                        (z.xOrigin * f + z.yOrigin * g) +
3921                        z.yOffset)),
3922                    q > H && H > -q && (H = w),
3923                    q > I && I > -q && (I = w),
3924                    q > J && J > -q && (J = 0)),
3925                  (u =
3926                    z.xPercent || z.yPercent
3927                      ? 'translate(' +
3928                        z.xPercent +
3929                        '%,' +
3930                        z.yPercent +
3931                        '%) matrix3d('
3932                      : 'matrix3d('),
3933                  (u +=
3934                    (q > c && c > -q ? w : c) +
3935                    v +
3936                    (q > f && f > -q ? w : f) +
3937                    v +
3938                    (q > i && i > -q ? w : i)),
3939                  (u +=
3940                    v +
3941                    (q > l && l > -q ? w : l) +
3942                    v +
3943                    (q > d && d > -q ? w : d) +
3944                    v +
3945                    (q > g && g > -q ? w : g)),
3946                  C || D || 1 !== G
3947                    ? ((u +=
3948                        v +
3949                        (q > j && j > -q ? w : j) +
3950                        v +
3951                        (q > m && m > -q ? w : m) +
3952                        v +
3953                        (q > e && e > -q ? w : e)),
3954                      (u +=
3955                        v +
3956                        (q > h && h > -q ? w : h) +
3957                        v +
3958                        (q > k && k > -q ? w : k) +
3959                        v +
3960                        (q > o && o > -q ? w : o) +
3961                        v))
3962                    : (u += ',0,0,0,0,1,0,'),
3963                  (u += H + v + I + v + J + v + (M ? 1 + -J / M : 1) + ')'),
3964                  (A[Ca] = u));
3965              });
3966        ((j = Ga.prototype),
3967          (j.x =
3968            j.y =
3969            j.z =
3970            j.skewX =
3971            j.skewY =
3972            j.rotation =
3973            j.rotationX =
3974            j.rotationY =
3975            j.zOrigin =
3976            j.xPercent =
3977            j.yPercent =
3978            j.xOffset =
3979            j.yOffset =
3980              0),
3981          (j.scaleX = j.scaleY = j.scaleZ = 1),
3982          ya(
3983            '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',
3984            {
3985              parser: function (a, b, c, d, f, h, i) {
3986                if (d._lastParsedTransform === i) return f;
3987                d._lastParsedTransform = i;
3988                var j,
3989                  k = i.scale && 'function' == typeof i.scale ? i.scale : 0;
3990                ('function' == typeof i[c] && ((j = i[c]), (i[c] = b)),
3991                  k && (i.scale = k(r, a)));
3992                var l,
3993                  m,
3994                  n,
3995                  o,
3996                  p,
3997                  s,
3998                  t,
3999                  u,
4000                  v,
4001                  w = a._gsTransform,
4002                  x = a.style,
4003                  y = 1e-6,
4004                  z = Ba.length,
4005                  A = i,
4006                  B = {},
4007                  C = 'transformOrigin',
4008                  D = Ra(a, e, !0, A.parseTransform),
4009                  E =
4010                    A.transform &&
4011                    ('function' == typeof A.transform
4012                      ? A.transform(r, q)
4013                      : A.transform);
4014                if (
4015                  ((D.skewType = A.skewType || D.skewType || g.defaultSkewType),
4016                  (d._transform = D),
4017                  E && 'string' == typeof E && Ca)
4018                )
4019                  ((m = Q.style),
4020                    (m[Ca] = E),
4021                    (m.display = 'block'),
4022                    (m.position = 'absolute'),
4023                    O.body.appendChild(Q),
4024                    (l = Ra(Q, null, !1)),
4025                    'simple' === D.skewType &&
4026                      (l.scaleY *= Math.cos(l.skewX * K)),
4027                    D.svg &&
4028                      ((s = D.xOrigin),
4029                      (t = D.yOrigin),
4030                      (l.x -= D.xOffset),
4031                      (l.y -= D.yOffset),
4032                      (A.transformOrigin || A.svgOrigin) &&
4033                        ((E = {}),
4034                        La(
4035                          a,
4036                          ha(A.transformOrigin),
4037                          E,
4038                          A.svgOrigin,
4039                          A.smoothOrigin,
4040                          !0,
4041                        ),
4042                        (s = E.xOrigin),
4043                        (t = E.yOrigin),
4044                        (l.x -= E.xOffset - D.xOffset),
4045                        (l.y -= E.yOffset - D.yOffset)),
4046                      (s || t) &&
4047                        ((u = Qa(Q, !0)),
4048                        (l.x -= s - (s * u[0] + t * u[2])),
4049                        (l.y -= t - (s * u[1] + t * u[3])))),
4050                    O.body.removeChild(Q),
4051                    l.perspective || (l.perspective = D.perspective),
4052                    null != A.xPercent &&
4053                      (l.xPercent = ja(A.xPercent, D.xPercent)),
4054                    null != A.yPercent &&
4055                      (l.yPercent = ja(A.yPercent, D.yPercent)));
4056                else if ('object' == typeof A) {
4057                  if (
4058                    ((l = {
4059                      scaleX: ja(
4060                        null != A.scaleX ? A.scaleX : A.scale,
4061                        D.scaleX,
4062                      ),
4063                      scaleY: ja(
4064                        null != A.scaleY ? A.scaleY : A.scale,
4065                        D.scaleY,
4066                      ),
4067                      scaleZ: ja(A.scaleZ, D.scaleZ),
4068                      x: ja(A.x, D.x),
4069                      y: ja(A.y, D.y),
4070                      z: ja(A.z, D.z),
4071                      xPercent: ja(A.xPercent, D.xPercent),
4072                      yPercent: ja(A.yPercent, D.yPercent),
4073                      perspective: ja(A.transformPerspective, D.perspective),
4074                    }),
4075                    (p = A.directionalRotation),
4076                    null != p)
4077                  )
4078                    if ('object' == typeof p) for (m in p) A[m] = p[m];
4079                    else A.rotation = p;
4080                  ('string' == typeof A.x &&
4081                    -1 !== A.x.indexOf('%') &&
4082                    ((l.x = 0), (l.xPercent = ja(A.x, D.xPercent))),
4083                    'string' == typeof A.y &&
4084                      -1 !== A.y.indexOf('%') &&
4085                      ((l.y = 0), (l.yPercent = ja(A.y, D.yPercent))),
4086                    (l.rotation = ka(
4087                      'rotation' in A
4088                        ? A.rotation
4089                        : 'shortRotation' in A
4090                          ? A.shortRotation + '_short'
4091                          : 'rotationZ' in A
4092                            ? A.rotationZ
4093                            : D.rotation,
4094                      D.rotation,
4095                      'rotation',
4096                      B,
4097                    )),
4098                    Fa &&
4099                      ((l.rotationX = ka(
4100                        'rotationX' in A
4101                          ? A.rotationX
4102                          : 'shortRotationX' in A
4103                            ? A.shortRotationX + '_short'
4104                            : D.rotationX || 0,
4105                        D.rotationX,
4106                        'rotationX',
4107                        B,
4108                      )),
4109                      (l.rotationY = ka(
4110                        'rotationY' in A
4111                          ? A.rotationY
4112                          : 'shortRotationY' in A
4113                            ? A.shortRotationY + '_short'
4114                            : D.rotationY || 0,
4115                        D.rotationY,
4116                        'rotationY',
4117                        B,
4118                      ))),
4119                    (l.skewX = ka(A.skewX, D.skewX)),
4120                    (l.skewY = ka(A.skewY, D.skewY)));
4121                }
4122                for (
4123                  Fa &&
4124                    null != A.force3D &&
4125                    ((D.force3D = A.force3D), (o = !0)),
4126                    n =
4127                      D.force3D ||
4128                      D.z ||
4129                      D.rotationX ||
4130                      D.rotationY ||
4131                      l.z ||
4132                      l.rotationX ||
4133                      l.rotationY ||
4134                      l.perspective,
4135                    n || null == A.scale || (l.scaleZ = 1);
4136                  --z > -1;
4137                )
4138                  ((v = Ba[z]),
4139                    (E = l[v] - D[v]),
4140                    (E > y || -y > E || null != A[v] || null != M[v]) &&
4141                      ((o = !0),
4142                      (f = new ta(D, v, D[v], E, f)),
4143                      v in B && (f.e = B[v]),
4144                      (f.xs0 = 0),
4145                      (f.plugin = h),
4146                      d._overwriteProps.push(f.n)));
4147                return (
4148                  (E = A.transformOrigin),
4149                  D.svg &&
4150                    (E || A.svgOrigin) &&
4151                    ((s = D.xOffset),
4152                    (t = D.yOffset),
4153                    La(a, ha(E), l, A.svgOrigin, A.smoothOrigin),
4154                    (f = ua(
4155                      D,
4156                      'xOrigin',
4157                      (w ? D : l).xOrigin,
4158                      l.xOrigin,
4159                      f,
4160                      C,
4161                    )),
4162                    (f = ua(
4163                      D,
4164                      'yOrigin',
4165                      (w ? D : l).yOrigin,
4166                      l.yOrigin,
4167                      f,
4168                      C,
4169                    )),
4170                    (s !== D.xOffset || t !== D.yOffset) &&
4171                      ((f = ua(
4172                        D,
4173                        'xOffset',
4174                        w ? s : D.xOffset,
4175                        D.xOffset,
4176                        f,
4177                        C,
4178                      )),
4179                      (f = ua(
4180                        D,
4181                        'yOffset',
4182                        w ? t : D.yOffset,
4183                        D.yOffset,
4184                        f,
4185                        C,
4186                      ))),
4187                    (E = '0px 0px')),
4188                  (E || (Fa && n && D.zOrigin)) &&
4189                    (Ca
4190                      ? ((o = !0),
4191                        (v = Ea),
4192                        (E = (E || _(a, v, e, !1, '50% 50%')) + ''),
4193                        (f = new ta(x, v, 0, 0, f, -1, C)),
4194                        (f.b = x[v]),
4195                        (f.plugin = h),
4196                        Fa
4197                          ? ((m = D.zOrigin),
4198                            (E = E.split(' ')),
4199                            (D.zOrigin =
4200                              (E.length > 2 && (0 === m || '0px' !== E[2])
4201                                ? parseFloat(E[2])
4202                                : m) || 0),
4203                            (f.xs0 = f.e =
4204                              E[0] + ' ' + (E[1] || '50%') + ' 0px'),
4205                            (f = new ta(D, 'zOrigin', 0, 0, f, -1, f.n)),
4206                            (f.b = m),
4207                            (f.xs0 = f.e = D.zOrigin))
4208                          : (f.xs0 = f.e = E))
4209                      : ha(E + '', D)),
4210                  o &&
4211                    (d._transformType =
4212                      (D.svg && Aa) || (!n && 3 !== this._transformType)
4213                        ? 2
4214                        : 3),
4215                  j && (i[c] = j),
4216                  k && (i.scale = k),
4217                  f
4218                );
4219              },
4220              prefix: !0,
4221            },
4222          ),
4223          ya('boxShadow', {
4224            defaultValue: '0px 0px 0px 0px #999',
4225            prefix: !0,
4226            color: !0,
4227            multi: !0,
4228            keyword: 'inset',
4229          }),
4230          ya('borderRadius', {
4231            defaultValue: '0px',
4232            parser: function (a, b, c, f, g, h) {
4233              b = this.format(b);
4234              var i,
4235                j,
4236                k,
4237                l,
4238                m,
4239                n,
4240                o,
4241                p,
4242                q,
4243                r,
4244                s,
4245                t,
4246                u,
4247                v,
4248                w,
4249                x,
4250                y = [
4251                  'borderTopLeftRadius',
4252                  'borderTopRightRadius',
4253                  'borderBottomRightRadius',
4254                  'borderBottomLeftRadius',
4255                ],
4256                z = a.style;
4257              for (
4258                q = parseFloat(a.offsetWidth),
4259                  r = parseFloat(a.offsetHeight),
4260                  i = b.split(' '),
4261                  j = 0;
4262                j < y.length;
4263                j++
4264              )
4265                (this.p.indexOf('border') && (y[j] = Z(y[j])),
4266                  (m = l = _(a, y[j], e, !1, '0px')),
4267                  -1 !== m.indexOf(' ') &&
4268                    ((l = m.split(' ')), (m = l[0]), (l = l[1])),
4269                  (n = k = i[j]),
4270                  (o = parseFloat(m)),
4271                  (t = m.substr((o + '').length)),
4272                  (u = '=' === n.charAt(1)),
4273                  u
4274                    ? ((p = parseInt(n.charAt(0) + '1', 10)),
4275                      (n = n.substr(2)),
4276                      (p *= parseFloat(n)),
4277                      (s = n.substr((p + '').length - (0 > p ? 1 : 0)) || ''))
4278                    : ((p = parseFloat(n)), (s = n.substr((p + '').length))),
4279                  '' === s && (s = d[c] || t),
4280                  s !== t &&
4281                    ((v = aa(a, 'borderLeft', o, t)),
4282                    (w = aa(a, 'borderTop', o, t)),
4283                    '%' === s
4284                      ? ((m = (v / q) * 100 + '%'), (l = (w / r) * 100 + '%'))
4285                      : 'em' === s
4286                        ? ((x = aa(a, 'borderLeft', 1, 'em')),
4287                          (m = v / x + 'em'),
4288                          (l = w / x + 'em'))
4289                        : ((m = v + 'px'), (l = w + 'px')),
4290                    u &&
4291                      ((n = parseFloat(m) + p + s),
4292                      (k = parseFloat(l) + p + s))),
4293                  (g = va(z, y[j], m + ' ' + l, n + ' ' + k, !1, '0px', g)));
4294              return g;
4295            },
4296            prefix: !0,
4297            formatter: qa('0px 0px 0px 0px', !1, !0),
4298          }),
4299          ya(
4300            'borderBottomLeftRadius,borderBottomRightRadius,borderTopLeftRadius,borderTopRightRadius',
4301            {
4302              defaultValue: '0px',
4303              parser: function (a, b, c, d, f, g) {
4304                return va(
4305                  a.style,
4306                  c,
4307                  this.format(_(a, c, e, !1, '0px 0px')),
4308                  this.format(b),
4309                  !1,
4310                  '0px',
4311                  f,
4312                );
4313              },
4314              prefix: !0,
4315              formatter: qa('0px 0px', !1, !0),
4316            },
4317          ),
4318          ya('backgroundPosition', {
4319            defaultValue: '0 0',
4320            parser: function (a, b, c, d, f, g) {
4321              var h,
4322                i,
4323                j,
4324                k,
4325                l,
4326                m,
4327                n = 'background-position',
4328                o = e || $(a, null),
4329                q = this.format(
4330                  (o
4331                    ? p
4332                      ? o.getPropertyValue(n + '-x') +
4333                        ' ' +
4334                        o.getPropertyValue(n + '-y')
4335                      : o.getPropertyValue(n)
4336                    : a.currentStyle.backgroundPositionX +
4337                      ' ' +
4338                      a.currentStyle.backgroundPositionY) || '0 0',
4339                ),
4340                r = this.format(b);
4341              if (
4342                (-1 !== q.indexOf('%')) != (-1 !== r.indexOf('%')) &&
4343                r.split(',').length < 2 &&
4344                ((m = _(a, 'backgroundImage').replace(D, '')),
4345                m && 'none' !== m)
4346              ) {
4347                for (
4348                  h = q.split(' '),
4349                    i = r.split(' '),
4350                    R.setAttribute('src', m),
4351                    j = 2;
4352                  --j > -1;
4353                )
4354                  ((q = h[j]),
4355                    (k = -1 !== q.indexOf('%')),
4356                    k !== (-1 !== i[j].indexOf('%')) &&
4357                      ((l =
4358                        0 === j
4359                          ? a.offsetWidth - R.width
4360                          : a.offsetHeight - R.height),
4361                      (h[j] = k
4362                        ? (parseFloat(q) / 100) * l + 'px'
4363                        : (parseFloat(q) / l) * 100 + '%')));
4364                q = h.join(' ');
4365              }
4366              return this.parseComplex(a.style, q, r, f, g);
4367            },
4368            formatter: ha,
4369          }),
4370          ya('backgroundSize', {
4371            defaultValue: '0 0',
4372            formatter: function (a) {
4373              return ((a += ''), ha(-1 === a.indexOf(' ') ? a + ' ' + a : a));
4374            },
4375          }),
4376          ya('perspective', { defaultValue: '0px', prefix: !0 }),
4377          ya('perspectiveOrigin', { defaultValue: '50% 50%', prefix: !0 }),
4378          ya('transformStyle', { prefix: !0 }),
4379          ya('backfaceVisibility', { prefix: !0 }),
4380          ya('userSelect', { prefix: !0 }),
4381          ya('margin', {
4382            parser: ra('marginTop,marginRight,marginBottom,marginLeft'),
4383          }),
4384          ya('padding', {
4385            parser: ra('paddingTop,paddingRight,paddingBottom,paddingLeft'),
4386          }),
4387          ya('clip', {
4388            defaultValue: 'rect(0px,0px,0px,0px)',
4389            parser: function (a, b, c, d, f, g) {
4390              var h, i, j;
4391              return (
4392                9 > p
4393                  ? ((i = a.currentStyle),
4394                    (j = 8 > p ? ' ' : ','),
4395                    (h =
4396                      'rect(' +
4397                      i.clipTop +
4398                      j +
4399                      i.clipRight +
4400                      j +
4401                      i.clipBottom +
4402                      j +
4403                      i.clipLeft +
4404                      ')'),
4405                    (b = this.format(b).split(',').join(j)))
4406                  : ((h = this.format(_(a, this.p, e, !1, this.dflt))),
4407                    (b = this.format(b))),
4408                this.parseComplex(a.style, h, b, f, g)
4409              );
4410            },
4411          }),
4412          ya('textShadow', {
4413            defaultValue: '0px 0px 0px #999',
4414            color: !0,
4415            multi: !0,
4416          }),
4417          ya('autoRound,strictUnits', {
4418            parser: function (a, b, c, d, e) {
4419              return e;
4420            },
4421          }),
4422          ya('border', {
4423            defaultValue: '0px solid #000',
4424            parser: function (a, b, c, d, f, g) {
4425              var h = _(a, 'borderTopWidth', e, !1, '0px'),
4426                i = this.format(b).split(' '),
4427                j = i[0].replace(w, '');
4428              return (
4429                'px' !== j &&
4430                  (h = parseFloat(h) / aa(a, 'borderTopWidth', 1, j) + j),
4431                this.parseComplex(
4432                  a.style,
4433                  this.format(
4434                    h +
4435                      ' ' +
4436                      _(a, 'borderTopStyle', e, !1, 'solid') +
4437                      ' ' +
4438                      _(a, 'borderTopColor', e, !1, '#000'),
4439                  ),
4440                  i.join(' '),
4441                  f,
4442                  g,
4443                )
4444              );
4445            },
4446            color: !0,
4447            formatter: function (a) {
4448              var b = a.split(' ');
4449              return (
4450                b[0] +
4451                ' ' +
4452                (b[1] || 'solid') +
4453                ' ' +
4454                (a.match(pa) || ['#000'])[0]
4455              );
4456            },
4457          }),
4458          ya('borderWidth', {
4459            parser: ra(
4460              'borderTopWidth,borderRightWidth,borderBottomWidth,borderLeftWidth',
4461            ),
4462          }),
4463          ya('float,cssFloat,styleFloat', {
4464            parser: function (a, b, c, d, e, f) {
4465              var g = a.style,
4466                h = 'cssFloat' in g ? 'cssFloat' : 'styleFloat';
4467              return new ta(g, h, 0, 0, e, -1, c, !1, 0, g[h], b);
4468            },
4469          }));
4470        var Ua = function (a) {
4471          var b,
4472            c = this.t,
4473            d = c.filter || _(this.data, 'filter') || '',
4474            e = (this.s + this.c * a) | 0;
4475          (100 === e &&
4476            (-1 === d.indexOf('atrix(') &&
4477            -1 === d.indexOf('radient(') &&
4478            -1 === d.indexOf('oader(')
4479              ? (c.removeAttribute('filter'), (b = !_(this.data, 'filter')))
4480              : ((c.filter = d.replace(z, '')), (b = !0))),
4481            b ||
4482              (this.xn1 && (c.filter = d = d || 'alpha(opacity=' + e + ')'),
4483              -1 === d.indexOf('pacity')
4484                ? (0 === e && this.xn1) ||
4485                  (c.filter = d + ' alpha(opacity=' + e + ')')
4486                : (c.filter = d.replace(x, 'opacity=' + e))));
4487        };
4488        ya('opacity,alpha,autoAlpha', {
4489          defaultValue: '1',
4490          parser: function (a, b, c, d, f, g) {
4491            var h = parseFloat(_(a, 'opacity', e, !1, '1')),
4492              i = a.style,
4493              j = 'autoAlpha' === c;
4494            return (
4495              'string' == typeof b &&
4496                '=' === b.charAt(1) &&
4497                (b =
4498                  ('-' === b.charAt(0) ? -1 : 1) * parseFloat(b.substr(2)) + h),
4499              j &&
4500                1 === h &&
4501                'hidden' === _(a, 'visibility', e) &&
4502                0 !== b &&
4503                (h = 0),
4504              U
4505                ? (f = new ta(i, 'opacity', h, b - h, f))
4506                : ((f = new ta(i, 'opacity', 100 * h, 100 * (b - h), f)),
4507                  (f.xn1 = j ? 1 : 0),
4508                  (i.zoom = 1),
4509                  (f.type = 2),
4510                  (f.b = 'alpha(opacity=' + f.s + ')'),
4511                  (f.e = 'alpha(opacity=' + (f.s + f.c) + ')'),
4512                  (f.data = a),
4513                  (f.plugin = g),
4514                  (f.setRatio = Ua)),
4515              j &&
4516                ((f = new ta(
4517                  i,
4518                  'visibility',
4519                  0,
4520                  0,
4521                  f,
4522                  -1,
4523                  null,
4524                  !1,
4525                  0,
4526                  0 !== h ? 'inherit' : 'hidden',
4527                  0 === b ? 'hidden' : 'inherit',
4528                )),
4529                (f.xs0 = 'inherit'),
4530                d._overwriteProps.push(f.n),
4531                d._overwriteProps.push(c)),
4532              f
4533            );
4534          },
4535        });
4536        var Va = function (a, b) {
4537            b &&
4538              (a.removeProperty
4539                ? (('ms' === b.substr(0, 2) || 'webkit' === b.substr(0, 6)) &&
4540                    (b = '-' + b),
4541                  a.removeProperty(b.replace(B, '-$1').toLowerCase()))
4542                : a.removeAttribute(b));
4543          },
4544          Wa = function (a) {
4545            if (((this.t._gsClassPT = this), 1 === a || 0 === a)) {
4546              this.t.setAttribute('class', 0 === a ? this.b : this.e);
4547              for (var b = this.data, c = this.t.style; b; )
4548                (b.v ? (c[b.p] = b.v) : Va(c, b.p), (b = b._next));
4549              1 === a &&
4550                this.t._gsClassPT === this &&
4551                (this.t._gsClassPT = null);
4552            } else
4553              this.t.getAttribute('class') !== this.e &&
4554                this.t.setAttribute('class', this.e);
4555          };
4556        ya('className', {
4557          parser: function (a, b, d, f, g, h, i) {
4558            var j,
4559              k,
4560              l,
4561              m,
4562              n,
4563              o = a.getAttribute('class') || '',
4564              p = a.style.cssText;
4565            if (
4566              ((g = f._classNamePT = new ta(a, d, 0, 0, g, 2)),
4567              (g.setRatio = Wa),
4568              (g.pr = -11),
4569              (c = !0),
4570              (g.b = o),
4571              (k = ca(a, e)),
4572              (l = a._gsClassPT))
4573            ) {
4574              for (m = {}, n = l.data; n; ) ((m[n.p] = 1), (n = n._next));
4575              l.setRatio(1);
4576            }
4577            return (
4578              (a._gsClassPT = g),
4579              (g.e =
4580                '=' !== b.charAt(1)
4581                  ? b
4582                  : o.replace(
4583                      new RegExp('(?:\\s|^)' + b.substr(2) + '(?![\\w-])'),
4584                      '',
4585                    ) + ('+' === b.charAt(0) ? ' ' + b.substr(2) : '')),
4586              a.setAttribute('class', g.e),
4587              (j = da(a, k, ca(a), i, m)),
4588              a.setAttribute('class', o),
4589              (g.data = j.firstMPT),
4590              (a.style.cssText = p),
4591              (g = g.xfirst = f.parse(a, j.difs, g, h))
4592            );
4593          },
4594        });
4595        var Xa = function (a) {
4596          if (
4597            (1 === a || 0 === a) &&
4598            this.data._totalTime === this.data._totalDuration &&
4599            'isFromStart' !== this.data.data
4600          ) {
4601            var b,
4602              c,
4603              d,
4604              e,
4605              f,
4606              g = this.t.style,
4607              h = i.transform.parse;
4608            if ('all' === this.e) ((g.cssText = ''), (e = !0));
4609            else
4610              for (
4611                b = this.e.split(' ').join('').split(','), d = b.length;
4612                --d > -1;
4613              )
4614                ((c = b[d]),
4615                  i[c] &&
4616                    (i[c].parse === h
4617                      ? (e = !0)
4618                      : (c = 'transformOrigin' === c ? Ea : i[c].p)),
4619                  Va(g, c));
4620            e &&
4621              (Va(g, Ca),
4622              (f = this.t._gsTransform),
4623              f &&
4624                (f.svg &&
4625                  (this.t.removeAttribute('data-svg-origin'),
4626                  this.t.removeAttribute('transform')),
4627                delete this.t._gsTransform));
4628          }
4629        };
4630        for (
4631          ya('clearProps', {
4632            parser: function (a, b, d, e, f) {
4633              return (
4634                (f = new ta(a, d, 0, 0, f, 2)),
4635                (f.setRatio = Xa),
4636                (f.e = b),
4637                (f.pr = -10),
4638                (f.data = e._tween),
4639                (c = !0),
4640                f
4641              );
4642            },
4643          }),
4644            j = 'bezier,throwProps,physicsProps,physics2D'.split(','),
4645            wa = j.length;
4646          wa--;
4647        )
4648          za(j[wa]);
4649        ((j = g.prototype),
4650          (j._firstPT = j._lastParsedTransform = j._transform = null),
4651          (j._onInitTween = function (a, b, h, j) {
4652            if (!a.nodeType) return !1;
4653            ((this._target = q = a),
4654              (this._tween = h),
4655              (this._vars = b),
4656              (r = j),
4657              (k = b.autoRound),
4658              (c = !1),
4659              (d = b.suffixMap || g.suffixMap),
4660              (e = $(a, '')),
4661              (f = this._overwriteProps));
4662            var n,
4663              p,
4664              s,
4665              t,
4666              u,
4667              v,
4668              w,
4669              x,
4670              z,
4671              A = a.style;
4672            if (
4673              (l &&
4674                '' === A.zIndex &&
4675                ((n = _(a, 'zIndex', e)),
4676                ('auto' === n || '' === n) && this._addLazySet(A, 'zIndex', 0)),
4677              'string' == typeof b &&
4678                ((t = A.cssText),
4679                (n = ca(a, e)),
4680                (A.cssText = t + ';' + b),
4681                (n = da(a, n, ca(a)).difs),
4682                !U && y.test(b) && (n.opacity = parseFloat(RegExp.$1)),
4683                (b = n),
4684                (A.cssText = t)),
4685              b.className
4686                ? (this._firstPT = p =
4687                    i.className.parse(
4688                      a,
4689                      b.className,
4690                      'className',
4691                      this,
4692                      null,
4693                      null,
4694                      b,
4695                    ))
4696                : (this._firstPT = p = this.parse(a, b, null)),
4697              this._transformType)
4698            ) {
4699              for (
4700                z = 3 === this._transformType,
4701                  Ca
4702                    ? m &&
4703                      ((l = !0),
4704                      '' === A.zIndex &&
4705                        ((w = _(a, 'zIndex', e)),
4706                        ('auto' === w || '' === w) &&
4707                          this._addLazySet(A, 'zIndex', 0)),
4708                      o &&
4709                        this._addLazySet(
4710                          A,
4711                          'WebkitBackfaceVisibility',
4712                          this._vars.WebkitBackfaceVisibility ||
4713                            (z ? 'visible' : 'hidden'),
4714                        ))
4715                    : (A.zoom = 1),
4716                  s = p;
4717                s && s._next;
4718              )
4719                s = s._next;
4720              ((x = new ta(a, 'transform', 0, 0, null, 2)),
4721                this._linkCSSP(x, null, s),
4722                (x.setRatio = Ca ? Ta : Sa),
4723                (x.data = this._transform || Ra(a, e, !0)),
4724                (x.tween = h),
4725                (x.pr = -1),
4726                f.pop());
4727            }
4728            if (c) {
4729              for (; p; ) {
4730                for (v = p._next, s = t; s && s.pr > p.pr; ) s = s._next;
4731                ((p._prev = s ? s._prev : u) ? (p._prev._next = p) : (t = p),
4732                  (p._next = s) ? (s._prev = p) : (u = p),
4733                  (p = v));
4734              }
4735              this._firstPT = t;
4736            }
4737            return !0;
4738          }),
4739          (j.parse = function (a, b, c, f) {
4740            var g,
4741              h,
4742              j,
4743              l,
4744              m,
4745              n,
4746              o,
4747              p,
4748              s,
4749              t,
4750              u = a.style;
4751            for (g in b) {
4752              if (
4753                ((n = b[g]),
4754                'function' == typeof n && (n = n(r, q)),
4755                (h = i[g]))
4756              )
4757                c = h.parse(a, n, g, this, c, f, b);
4758              else {
4759                if ('--' === g.substr(0, 2)) {
4760                  this._tween._propLookup[g] = this._addTween.call(
4761                    this._tween,
4762                    a.style,
4763                    'setProperty',
4764                    $(a).getPropertyValue(g) + '',
4765                    n + '',
4766                    g,
4767                    !1,
4768                    g,
4769                  );
4770                  continue;
4771                }
4772                ((m = _(a, g, e) + ''),
4773                  (s = 'string' == typeof n),
4774                  'color' === g ||
4775                  'fill' === g ||
4776                  'stroke' === g ||
4777                  -1 !== g.indexOf('Color') ||
4778                  (s && A.test(n))
4779                    ? (s ||
4780                        ((n = na(n)),
4781                        (n =
4782                          (n.length > 3 ? 'rgba(' : 'rgb(') +
4783                          n.join(',') +
4784                          ')')),
4785                      (c = va(u, g, m, n, !0, 'transparent', c, 0, f)))
4786                    : s && J.test(n)
4787                      ? (c = va(u, g, m, n, !0, null, c, 0, f))
4788                      : ((j = parseFloat(m)),
4789                        (o = j || 0 === j ? m.substr((j + '').length) : ''),
4790                        ('' === m || 'auto' === m) &&
4791                          ('width' === g || 'height' === g
4792                            ? ((j = ga(a, g, e)), (o = 'px'))
4793                            : 'left' === g || 'top' === g
4794                              ? ((j = ba(a, g, e)), (o = 'px'))
4795                              : ((j = 'opacity' !== g ? 0 : 1), (o = ''))),
4796                        (t = s && '=' === n.charAt(1)),
4797                        t
4798                          ? ((l = parseInt(n.charAt(0) + '1', 10)),
4799                            (n = n.substr(2)),
4800                            (l *= parseFloat(n)),
4801                            (p = n.replace(w, '')))
4802                          : ((l = parseFloat(n)),
4803                            (p = s ? n.replace(w, '') : '')),
4804                        '' === p && (p = g in d ? d[g] : o),
4805                        (n = l || 0 === l ? (t ? l + j : l) + p : b[g]),
4806                        o !== p &&
4807                          ('' !== p || 'lineHeight' === g) &&
4808                          (l || 0 === l) &&
4809                          j &&
4810                          ((j = aa(a, g, j, o)),
4811                          '%' === p
4812                            ? ((j /= aa(a, g, 100, '%') / 100),
4813                              b.strictUnits !== !0 && (m = j + '%'))
4814                            : 'em' === p ||
4815                                'rem' === p ||
4816                                'vw' === p ||
4817                                'vh' === p
4818                              ? (j /= aa(a, g, 1, p))
4819                              : 'px' !== p &&
4820                                ((l = aa(a, g, l, p)), (p = 'px')),
4821                          t && (l || 0 === l) && (n = l + j + p)),
4822                        t && (l += j),
4823                        (!j && 0 !== j) || (!l && 0 !== l)
4824                          ? void 0 !== u[g] &&
4825                            (n || (n + '' != 'NaN' && null != n))
4826                            ? ((c = new ta(
4827                                u,
4828                                g,
4829                                l || j || 0,
4830                                0,
4831                                c,
4832                                -1,
4833                                g,
4834                                !1,
4835                                0,
4836                                m,
4837                                n,
4838                              )),
4839                              (c.xs0 =
4840                                'none' !== n ||
4841                                ('display' !== g && -1 === g.indexOf('Style'))
4842                                  ? n
4843                                  : m))
4844                            : W('invalid ' + g + ' tween value: ' + b[g])
4845                          : ((c = new ta(
4846                              u,
4847                              g,
4848                              j,
4849                              l - j,
4850                              c,
4851                              0,
4852                              g,
4853                              k !== !1 && ('px' === p || 'zIndex' === g),
4854                              0,
4855                              m,
4856                              n,
4857                            )),
4858                            (c.xs0 = p))));
4859              }
4860              f && c && !c.plugin && (c.plugin = f);
4861            }
4862            return c;
4863          }),
4864          (j.setRatio = function (a) {
4865            var b,
4866              c,
4867              d,
4868              e = this._firstPT,
4869              f = 1e-6;
4870            if (
4871              1 !== a ||
4872              (this._tween._time !== this._tween._duration &&
4873                0 !== this._tween._time)
4874            )
4875              if (
4876                a ||
4877                (this._tween._time !== this._tween._duration &&
4878                  0 !== this._tween._time) ||
4879                this._tween._rawPrevTime === -1e-6
4880              )
4881                for (; e; ) {
4882                  if (
4883                    ((b = e.c * a + e.s),
4884                    e.r ? (b = Math.round(b)) : f > b && b > -f && (b = 0),
4885                    e.type)
4886                  )
4887                    if (1 === e.type)
4888                      if (((d = e.l), 2 === d))
4889                        e.t[e.p] = e.xs0 + b + e.xs1 + e.xn1 + e.xs2;
4890                      else if (3 === d)
4891                        e.t[e.p] =
4892                          e.xs0 + b + e.xs1 + e.xn1 + e.xs2 + e.xn2 + e.xs3;
4893                      else if (4 === d)
4894                        e.t[e.p] =
4895                          e.xs0 +
4896                          b +
4897                          e.xs1 +
4898                          e.xn1 +
4899                          e.xs2 +
4900                          e.xn2 +
4901                          e.xs3 +
4902                          e.xn3 +
4903                          e.xs4;
4904                      else if (5 === d)
4905                        e.t[e.p] =
4906                          e.xs0 +
4907                          b +
4908                          e.xs1 +
4909                          e.xn1 +
4910                          e.xs2 +
4911                          e.xn2 +
4912                          e.xs3 +
4913                          e.xn3 +
4914                          e.xs4 +
4915                          e.xn4 +
4916                          e.xs5;
4917                      else {
4918                        for (c = e.xs0 + b + e.xs1, d = 1; d < e.l; d++)
4919                          c += e['xn' + d] + e['xs' + (d + 1)];
4920                        e.t[e.p] = c;
4921                      }
4922                    else
4923                      -1 === e.type
4924                        ? (e.t[e.p] = e.xs0)
4925                        : e.setRatio && e.setRatio(a);
4926                  else e.t[e.p] = b + e.xs0;
4927                  e = e._next;
4928                }
4929              else
4930                for (; e; )
4931                  (2 !== e.type ? (e.t[e.p] = e.b) : e.setRatio(a),
4932                    (e = e._next));
4933            else
4934              for (; e; ) {
4935                if (2 !== e.type)
4936                  if (e.r && -1 !== e.type)
4937                    if (((b = Math.round(e.s + e.c)), e.type)) {
4938                      if (1 === e.type) {
4939                        for (
4940                          d = e.l, c = e.xs0 + b + e.xs1, d = 1;
4941                          d < e.l;
4942                          d++
4943                        )
4944                          c += e['xn' + d] + e['xs' + (d + 1)];
4945                        e.t[e.p] = c;
4946                      }
4947                    } else e.t[e.p] = b + e.xs0;
4948                  else e.t[e.p] = e.e;
4949                else e.setRatio(a);
4950                e = e._next;
4951              }
4952          }),
4953          (j._enableTransforms = function (a) {
4954            ((this._transform = this._transform || Ra(this._target, e, !0)),
4955              (this._transformType =
4956                (this._transform.svg && Aa) || (!a && 3 !== this._transformType)
4957                  ? 2
4958                  : 3));
4959          }));
4960        var Ya = function (a) {
4961          ((this.t[this.p] = this.e),
4962            this.data._linkCSSP(this, this._next, null, !0));
4963        };
4964        ((j._addLazySet = function (a, b, c) {
4965          var d = (this._firstPT = new ta(a, b, 0, 0, this.
4965_firstPT, 2));
4966          ((d.e = c), (d.setRatio = Ya), (d.data = this));
4967        }),
4968          (j._linkCSSP = function (a, b, c, d) {
4969            return (
4970              a &&
4971                (b && (b._prev = a),
4972                a._next && (a._next._prev = a._prev),
4973                a._prev
4974                  ? (a._prev._next = a._next)
4975                  : this._firstPT === a &&
4976                    ((this._firstPT = a._next), (d = !0)),
4977                c
4978                  ? (c._next = a)
4979                  : d || null !== this._firstPT || (this._firstPT = a),
4980                (a._next = b),
4981                (a._prev = c)),
4982              a
4983            );
4984          }),
4985          (j._mod = function (a) {
4986            for (var b = this._firstPT; b; )
4987              ('function' == typeof a[b.p] &&
4988                a[b.p] === Math.round &&
4989                (b.r = 1),
4990                (b = b._next));
4991          }),
4992          (j._kill = function (b) {
4993            var c,
4994              d,
4995              e,
4996              f = b;
4997            if (b.autoAlpha || b.alpha) {
4998              f = {};
4999              for (d in b) f[d] = b[d];
5000              ((f.opacity = 1), f.autoAlpha && (f.visibility = 1));
5001            }
5002            for (
5003              b.className &&
5004                (c = this._classNamePT) &&
5005                ((e = c.xfirst),
5006                e && e._prev
5007                  ? this._linkCSSP(e._prev, c._next, e._prev._prev)
5008                  : e === this._firstPT && (this._firstPT = c._next),
5009                c._next && this._linkCSSP(c._next, c._next._next, e._prev),
5010                (this._classNamePT = null)),
5011                c = this._firstPT;
5012              c;
5013            )
5014              (c.plugin &&
5015                c.plugin !== d &&
5016                c.plugin._kill &&
5017                (c.plugin._kill(b), (d = c.plugin)),
5018                (c = c._next));
5019            return a.prototype._kill.call(this, f);
5020          }));
5021        var Za = function (a, b, c) {
5022          var d, e, f, g;
5023          if (a.slice) for (e = a.length; --e > -1; ) Za(a[e], b, c);
5024          else
5025            for (d = a.childNodes, e = d.length; --e > -1; )
5026              ((f = d[e]),
5027                (g = f.type),
5028                f.style && (b.push(ca(f)), c && c.push(f)),
5029                (1 !== g && 9 !== g && 11 !== g) ||
5030                  !f.childNodes.length ||
5031                  Za(f, b, c));
5032        };
5033        return (
5034          (g.cascadeTo = function (a, c, d) {
5035            var e,
5036              f,
5037              g,
5038              h,
5039              i = b.to(a, c, d),
5040              j = [i],
5041              k = [],
5042              l = [],
5043              m = [],
5044              n = b._internals.reservedProps;
5045            for (
5046              a = i._targets || i.target,
5047                Za(a, k, m),
5048                i.render(c, !0, !0),
5049                Za(a, l),
5050                i.render(0, !0, !0),
5051                i._enabled(!0),
5052                e = m.length;
5053              --e > -1;
5054            )
5055              if (((f = da(m[e], k[e], l[e])), f.firstMPT)) {
5056                f = f.difs;
5057                for (g in d) n[g] && (f[g] = d[g]);
5058                h = {};
5059                for (g in f) h[g] = k[e][g];
5060                j.push(b.fromTo(m[e], c, h, f));
5061              }
5062            return j;
5063          }),
5064          a.activate([g]),
5065          g
5066        );
5067      },
5068      !0,
5069    ),
5070    (function () {
5071      var a = _gsScope._gsDefine.plugin({
5072          propName: 'roundProps',
5073          version: '1.6.0',
5074          priority: -1,
5075          API: 2,
5076          init: function (a, b, c) {
5077            return ((this._tween = c), !0);
5078          },
5079        }),
5080        b = function (a) {
5081          for (; a; ) (a.f || a.blob || (a.m = Math.round), (a = a._next));
5082        },
5083        c = a.prototype;
5084      ((c._onInitAllProps = function () {
5085        for (
5086          var a,
5087            c,
5088            d,
5089            e = this._tween,
5090            f = e.vars.roundProps.join
5091              ? e.vars.roundProps
5092              : e.vars.roundProps.split(','),
5093            g = f.length,
5094            h = {},
5095            i = e._propLookup.roundProps;
5096          --g > -1;
5097        )
5098          h[f[g]] = Math.round;
5099        for (g = f.length; --g > -1; )
5100          for (a = f[g], c = e._firstPT; c; )
5101            ((d = c._next),
5102              c.pg
5103                ? c.t._mod(h)
5104                : c.n === a &&
5105                  (2 === c.f && c.t
5106                    ? b(c.t._firstPT)
5107                    : (this._add(c.t, a, c.s, c.c),
5108                      d && (d._prev = c._prev),
5109                      c._prev
5110                        ? (c._prev._next = d)
5111                        : e._firstPT === c && (e._firstPT = d),
5112                      (c._next = c._prev = null),
5113                      (e._propLookup[a] = i))),
5114              (c = d));
5115        return !1;
5116      }),
5117        (c._add = function (a, b, c, d) {
5118          (this._addTween(a, b, c, c + d, b, Math.round),
5119            this._overwriteProps.push(b));
5120        }));
5121    })(),
5122    (function () {
5123      _gsScope._gsDefine.plugin({
5124        propName: 'attr',
5125        API: 2,
5126        version: '0.6.1',
5127        init: function (a, b, c, d) {
5128          var e, f;
5129          if ('function' != typeof a.setAttribute) return !1;
5130          for (e in b)
5131            ((f = b[e]),
5132              'function' == typeof f && (f = f(d, a)),
5133              this._addTween(
5134                a,
5135                'setAttribute',
5136                a.getAttribute(e) + '',
5137                f + '',
5138                e,
5139                !1,
5140                e,
5141              ),
5142              this._overwriteProps.push(e));
5143          return !0;
5144        },
5145      });
5146    })(),
5147    (_gsScope._gsDefine.plugin({
5148      propName: 'directionalRotation',
5149      version: '0.3.1',
5150      API: 2,
5151      init: function (a, b, c, d) {
5152        ('object' != typeof b && (b = { rotation: b }), (this.finals = {}));
5153        var e,
5154          f,
5155          g,
5156          h,
5157          i,
5158          j,
5159          k = b.useRadians === !0 ? 2 * Math.PI : 360,
5160          l = 1e-6;
5161        for (e in b)
5162          'useRadians' !== e &&
5163            ((h = b[e]),
5164            'function' == typeof h && (h = h(d, a)),
5165            (j = (h + '').split('_')),
5166            (f = j[0]),
5167            (g = parseFloat(
5168              'function' != typeof a[e]
5169                ? a[e]
5170                : a[
5171                    e.indexOf('set') ||
5172                    'function' != typeof a['get' + e.substr(3)]
5173                      ? e
5174                      : 'get' + e.substr(3)
5175                  ](),
5176            )),
5177            (h = this.finals[e] =
5178              'string' == typeof f && '=' === f.charAt(1)
5179                ? g + parseInt(f.charAt(0) + '1', 10) * Number(f.substr(2))
5180                : Number(f) || 0),
5181            (i = h - g),
5182            j.length &&
5183              ((f = j.join('_')),
5184              -1 !== f.indexOf('short') &&
5185                ((i %= k), i !== i % (k / 2) && (i = 0 > i ? i + k : i - k)),
5186              -1 !== f.indexOf('_cw') && 0 > i
5187                ? (i = ((i + 9999999999 * k) % k) - ((i / k) | 0) * k)
5188                : -1 !== f.indexOf('ccw') &&
5189                  i > 0 &&
5190                  (i = ((i - 9999999999 * k) % k) - ((i / k) | 0) * k)),
5191            (i > l || -l > i) &&
5192              (this._addTween(a, e, g, g + i, e),
5193              this._overwriteProps.push(e)));
5194        return !0;
5195      },
5196      set: function (a) {
5197        var b;
5198        if (1 !== a) this._super.setRatio.call(this, a);
5199        else
5200          for (b = this._firstPT; b; )
5201            (b.f ? b.t[b.p](this.finals[b.p]) : (b.t[b.p] = this.finals[b.p]),
5202              (b = b._next));
5203      },
5204    })._autoCSS = !0),
5205    _gsScope._gsDefine(
5206      'easing.Back',
5207      ['easing.Ease'],
5208      function (a) {
5209        var b,
5210          c,
5211          d,
5212          e,
5213          f = _gsScope.GreenSockGlobals || _gsScope,
5214          g = f.com.greensock,
5215          h = 2 * Math.PI,
5216          i = Math.PI / 2,
5217          j = g._class,
5218          k = function (b, c) {
5219            var d = j('easing.' + b, function () {}, !0),
5220              e = (d.prototype = new a());
5221            return ((e.constructor = d), (e.getRatio = c), d);
5222          },
5223          l = a.register || function () {},
5224          m = function (a, b, c, d, e) {
5225            var f = j(
5226              'easing.' + a,
5227              { easeOut: new b(), easeIn: new c(), easeInOut: new d() },
5228              !0,
5229            );
5230            return (l(f, a), f);
5231          },
5232          n = function (a, b, c) {
5233            ((this.t = a),
5234              (this.v = b),
5235              c &&
5236                ((this.next = c),
5237                (c.prev = this),
5238                (this.c = c.v - b),
5239                (this.gap = c.t - a)));
5240          },
5241          o = function (b, c) {
5242            var d = j(
5243                'easing.' + b,
5244                function (a) {
5245                  ((this._p1 = a || 0 === a ? a : 1.70158),
5246                    (this._p2 = 1.525 * this._p1));
5247                },
5248                !0,
5249              ),
5250              e = (d.prototype = new a());
5251            return (
5252              (e.constructor = d),
5253              (e.getRatio = c),
5254              (e.config = function (a) {
5255                return new d(a);
5256              }),
5257              d
5258            );
5259          },
5260          p = m(
5261            'Back',
5262            o('BackOut', function (a) {
5263              return (a -= 1) * a * ((this._p1 + 1) * a + this._p1) + 1;
5264            }),
5265            o('BackIn', function (a) {
5266              return a * a * ((this._p1 + 1) * a - this._p1);
5267            }),
5268            o('BackInOut', function (a) {
5269              return (a *= 2) < 1
5270                ? 0.5 * a * a * ((this._p2 + 1) * a - this._p2)
5271                : 0.5 * ((a -= 2) * a * ((this._p2 + 1) * a + this._p2) + 2);
5272            }),
5273          ),
5274          q = j(
5275            'easing.SlowMo',
5276            function (a, b, c) {
5277              ((b = b || 0 === b ? b : 0.7),
5278                null == a ? (a = 0.7) : a > 1 && (a = 1),
5279                (this._p = 1 !== a ? b : 0),
5280                (this._p1 = (1 - a) / 2),
5281                (this._p2 = a),
5282                (this._p3 = this._p1 + this._p2),
5283                (this._calcEnd = c === !0));
5284            },
5285            !0,
5286          ),
5287          r = (q.prototype = new a());
5288        return (
5289          (r.constructor = q),
5290          (r.getRatio = function (a) {
5291            var b = a + (0.5 - a) * this._p;
5292            return a < this._p1
5293              ? this._calcEnd
5294                ? 1 - (a = 1 - a / this._p1) * a
5295                : b - (a = 1 - a / this._p1) * a * a * a * b
5296              : a > this._p3
5297                ? this._calcEnd
5298                  ? 1 === a
5299                    ? 0
5300                    : 1 - (a = (a - this._p3) / this._p1) * a
5301                  : b + (a - b) * (a = (a - this._p3) / this._p1) * a * a * a
5302                : this._calcEnd
5303                  ? 1
5304                  : b;
5305          }),
5306          (q.ease = new q(0.7, 0.7)),
5307          (r.config = q.config =
5308            function (a, b, c) {
5309              return new q(a, b, c);
5310            }),
5311          (b = j(
5312            'easing.SteppedEase',
5313            function (a, b) {
5314              ((a = a || 1),
5315                (this._p1 = 1 / a),
5316                (this._p2 = a + (b ? 0 : 1)),
5317                (this._p3 = b ? 1 : 0));
5318            },
5319            !0,
5320          )),
5321          (r = b.prototype = new a()),
5322          (r.constructor = b),
5323          (r.getRatio = function (a) {
5324            return (
5325              0 > a ? (a = 0) : a >= 1 && (a = 0.999999999),
5326              (((this._p2 * a) | 0) + this._p3) * this._p1
5327            );
5328          }),
5329          (r.config = b.config =
5330            function (a, c) {
5331              return new b(a, c);
5332            }),
5333          (c = j(
5334            'easing.ExpoScaleEase',
5335            function (a, b, c) {
5336              ((this._p1 = Math.log(b / a)),
5337                (this._p2 = b - a),
5338                (this._p3 = a),
5339                (this._ease = c));
5340            },
5341            !0,
5342          )),
5343          (r = c.prototype = new a()),
5344          (r.constructor = c),
5345          (r.getRatio = function (a) {
5346            return (
5347              this._ease && (a = this._ease.getRatio(a)),
5348              (this._p3 * Math.exp(this._p1 * a) - this._p3) / this._p2
5349            );
5350          }),
5351          (r.config = c.config =
5352            function (a, b, d) {
5353              return new c(a, b, d);
5354            }),
5355          (d = j(
5356            'easing.RoughEase',
5357            function (b) {
5358              b = b || {};
5359              for (
5360                var c,
5361                  d,
5362                  e,
5363                  f,
5364                  g,
5365                  h,
5366                  i = b.taper || 'none',
5367                  j = [],
5368                  k = 0,
5369                  l = 0 | (b.points || 20),
5370                  m = l,
5371                  o = b.randomize !== !1,
5372                  p = b.clamp === !0,
5373                  q = b.template instanceof a ? b.template : null,
5374                  r = 'number' == typeof b.strength ? 0.4 * b.strength : 0.4;
5375                --m > -1;
5376              )
5377                ((c = o ? Math.random() : (1 / l) * m),
5378                  (d = q ? q.getRatio(c) : c),
5379                  'none' === i
5380                    ? (e = r)
5381                    : 'out' === i
5382                      ? ((f = 1 - c), (e = f * f * r))
5383                      : 'in' === i
5384                        ? (e = c * c * r)
5385                        : 0.5 > c
5386                          ? ((f = 2 * c), (e = f * f * 0.5 * r))
5387                          : ((f = 2 * (1 - c)), (e = f * f * 0.5 * r)),
5388                  o
5389                    ? (d += Math.random() * e - 0.5 * e)
5390                    : m % 2
5391                      ? (d += 0.5 * e)
5392                      : (d -= 0.5 * e),
5393                  p && (d > 1 ? (d = 1) : 0 > d && (d = 0)),
5394                  (j[k++] = { x: c, y: d }));
5395              for (
5396                j.sort(function (a, b) {
5397                  return a.x - b.x;
5398                }),
5399                  h = new n(1, 1, null),
5400                  m = l;
5401                --m > -1;
5402              )
5403                ((g = j[m]), (h = new n(g.x, g.y, h)));
5404              this._prev = new n(0, 0, 0 !== h.t ? h : h.next);
5405            },
5406            !0,
5407          )),
5408          (r = d.prototype = new a()),
5409          (r.constructor = d),
5410          (r.getRatio = function (a) {
5411            var b = this._prev;
5412            if (a > b.t) {
5413              for (; b.next && a >= b.t; ) b = b.next;
5414              b = b.prev;
5415            } else for (; b.prev && a <= b.t; ) b = b.prev;
5416            return ((this._prev = b), b.v + ((a - b.t) / b.gap) * b.c);
5417          }),
5418          (r.config = function (a) {
5419            return new d(a);
5420          }),
5421          (d.ease = new d()),
5422          m(
5423            'Bounce',
5424            k('BounceOut', function (a) {
5425              return 1 / 2.75 > a
5426                ? 7.5625 * a * a
5427                : 2 / 2.75 > a
5428                  ? 7.5625 * (a -= 1.5 / 2.75) * a + 0.75
5429                  : 2.5 / 2.75 > a
5430                    ? 7.5625 * (a -= 2.25 / 2.75) * a + 0.9375
5431                    : 7.5625 * (a -= 2.625 / 2.75) * a + 0.984375;
5432            }),
5433            k('BounceIn', function (a) {
5434              return (a = 1 - a) < 1 / 2.75
5435                ? 1 - 7.5625 * a * a
5436                : 2 / 2.75 > a
5437                  ? 1 - (7.5625 * (a -= 1.5 / 2.75) * a + 0.75)
5438                  : 2.5 / 2.75 > a
5439                    ? 1 - (7.5625 * (a -= 2.25 / 2.75) * a + 0.9375)
5440                    : 1 - (7.5625 * (a -= 2.625 / 2.75) * a + 0.984375);
5441            }),
5442            k('BounceInOut', function (a) {
5443              var b = 0.5 > a;
5444              return (
5445                (a = b ? 1 - 2 * a : 2 * a - 1),
5446                (a =
5447                  1 / 2.75 > a
5448                    ? 7.5625 * a * a
5449                    : 2 / 2.75 > a
5450                      ? 7.5625 * (a -= 1.5 / 2.75) * a + 0.75
5451                      : 2.5 / 2.75 > a
5452                        ? 7.5625 * (a -= 2.25 / 2.75) * a + 0.9375
5453                        : 7.5625 * (a -= 2.625 / 2.75) * a + 0.984375),
5454                b ? 0.5 * (1 - a) : 0.5 * a + 0.5
5455              );
5456            }),
5457          ),
5458          m(
5459            'Circ',
5460            k('CircOut', function (a) {
5461              return Math.sqrt(1 - (a -= 1) * a);
5462            }),
5463            k('CircIn', function (a) {
5464              return -(Math.sqrt(1 - a * a) - 1);
5465            }),
5466            k('CircInOut', function (a) {
5467              return (a *= 2) < 1
5468                ? -0.5 * (Math.sqrt(1 - a * a) - 1)
5469                : 0.5 * (Math.sqrt(1 - (a -= 2) * a) + 1);
5470            }),
5471          ),
5472          (e = function (b, c, d) {
5473            var e = j(
5474                'easing.' + b,
5475                function (a, b) {
5476                  ((this._p1 = a >= 1 ? a : 1),
5477                    (this._p2 = (b || d) / (1 > a ? a : 1)),
5478                    (this._p3 =
5479                      (this._p2 / h) * (Math.asin(1 / this._p1) || 0)),
5480                    (this._p2 = h / this._p2));
5481                },
5482                !0,
5483              ),
5484              f = (e.prototype = new a());
5485            return (
5486              (f.constructor = e),
5487              (f.getRatio = c),
5488              (f.config = function (a, b) {
5489                return new e(a, b);
5490              }),
5491              e
5492            );
5493          }),
5494          m(
5495            'Elastic',
5496            e(
5497              'ElasticOut',
5498              function (a) {
5499                return (
5500                  this._p1 *
5501                    Math.pow(2, -10 * a) *
5502                    Math.sin((a - this._p3) * this._p2) +
5503                  1
5504                );
5505              },
5506              0.3,
5507            ),
5508            e(
5509              'ElasticIn',
5510              function (a) {
5511                return -(
5512                  this._p1 *
5513                  Math.pow(2, 10 * (a -= 1)) *
5514                  Math.sin((a - this._p3) * this._p2)
5515                );
5516              },
5517              0.3,
5518            ),
5519            e(
5520              'ElasticInOut',
5521              function (a) {
5522                return (a *= 2) < 1
5523                  ? -0.5 *
5524                      (this._p1 *
5525                        Math.pow(2, 10 * (a -= 1)) *
5526                        Math.sin((a - this._p3) * this._p2))
5527                  : this._p1 *
5528                      Math.pow(2, -10 * (a -= 1)) *
5529                      Math.sin((a - this._p3) * this._p2) *
5530                      0.5 +
5531                      1;
5532              },
5533              0.45,
5534            ),
5535          ),
5536          m(
5537            'Expo',
5538            k('ExpoOut', function (a) {
5539              return 1 - Math.pow(2, -10 * a);
5540            }),
5541            k('ExpoIn', function (a) {
5542              return Math.pow(2, 10 * (a - 1)) - 0.001;
5543            }),
5544            k('ExpoInOut', function (a) {
5545              return (a *= 2) < 1
5546                ? 0.5 * Math.pow(2, 10 * (a - 1))
5547                : 0.5 * (2 - Math.pow(2, -10 * (a - 1)));
5548            }),
5549          ),
5550          m(
5551            'Sine',
5552            k('SineOut', function (a) {
5553              return Math.sin(a * i);
5554            }),
5555            k('SineIn', function (a) {
5556              return -Math.cos(a * i) + 1;
5557            }),
5558            k('SineInOut', function (a) {
5559              return -0.5 * (Math.cos(Math.PI * a) - 1);
5560            }),
5561          ),
5562          j(
5563            'easing.EaseLookup',
5564            {
5565              find: function (b) {
5566                return a.map[b];
5567              },
5568            },
5569            !0,
5570          ),
5571          l(f.SlowMo, 'SlowMo', 'ease,'),
5572          l(d, 'RoughEase', 'ease,'),
5573          l(b, 'SteppedEase', 'ease,'),
5574          p
5575        );
5576      },
5577      !0,
5578    ));
5579}),
5580  _gsScope._gsDefine && _gsScope._gsQueue.pop()(),
5581  (function (a, b) {
5582    'use strict';
5583    var c = {},
5584      d = a.document,
5585      e = (a.GreenSockGlobals = a.GreenSockGlobals || a);
5586    if (!e.TweenLite) {
5587      var f,
5588        g,
5589        h,
5590        i,
5591        j,
5592        k = function (a) {
5593          var b,
5594            c = a.split('.'),
5595            d = e;
5596          for (b = 0; b < c.length; b++) d[c[b]] = d = d[c[b]] || {};
5597          return d;
5598        },
5599        l = k('com.greensock'),
5600        m = 1e-10,
5601        n = function (a) {
5602          var b,
5603            c = [],
5604            d = a.length;
5605          for (b = 0; b !== d; c.push(a[b++]));
5606          return c;
5607        },
5608        o = function () {},
5609        p = (function () {
5610          var a = Object.prototype.toString,
5611            b = a.call([]);
5612          return function (c) {
5613            return (
5614              null != c &&
5615              (c instanceof Array ||
5616                ('object' == typeof c && !!c.push && a.call(c) === b))
5617            );
5618          };
5619        })(),
5620        q = {},
5621        r = function (d, f, g, h) {
5622          ((this.sc = q[d] ? q[d].sc : []),
5623            (q[d] = this),
5624            (this.gsClass = null),
5625            (this.func = g));
5626          var i = [];
5627          ((this.check = function (j) {
5628            for (var l, m, n, o, p = f.length, s = p; --p > -1; )
5629              (l = q[f[p]] || new r(f[p], [])).gsClass
5630                ? ((i[p] = l.gsClass), s--)
5631                : j && l.sc.push(this);
5632            if (0 === s && g) {
5633              if (
5634                ((m = ('com.greensock.' + d).split('.')),
5635                (n = m.pop()),
5636                (o = k(m.join('.'))[n] = this.gsClass = g.apply(g, i)),
5637                h)
5638              )
5639                if (
5640                  ((e[n] = c[n] = o),
5641                  'undefined' != typeof module && module.exports)
5642                )
5643                  if (d === b) {
5644                    module.exports = c[b] = o;
5645                    for (p in c) o[p] = c[p];
5646                  } else c[b] && (c[b][n] = o);
5647                else
5648                  'function' == typeof define &&
5649                    define.amd &&
5650                    define(
5651                      (a.GreenSockAMDPath ? a.GreenSockAMDPath + '/' : '') +
5652                        d.split('.').pop(),
5653                      [],
5654                      function () {
5655                        return o;
5656                      },
5657                    );
5658              for (p = 0; p < this.sc.length; p++) this.sc[p].check();
5659            }
5660          }),
5661            this.check(!0));
5662        },
5663        s = (a._gsDefine = function (a, b, c, d) {
5664          return new r(a, b, c, d);
5665        }),
5666        t = (l._class = function (a, b, c) {
5667          return (
5668            (b = b || function () {}),
5669            s(
5670              a,
5671              [],
5672              function () {
5673                return b;
5674              },
5675              c,
5676            ),
5677            b
5678          );
5679        });
5680      s.globals = e;
5681      var u = [0, 0, 1, 1],
5682        v = t(
5683          'easing.Ease',
5684          function (a, b, c, d) {
5685            ((this._func = a),
5686              (this._type = c || 0),
5687              (this._power = d || 0),
5688              (this._params = b ? u.concat(b) : u));
5689          },
5690          !0,
5691        ),
5692        w = (v.map = {}),
5693        x = (v.register = function (a, b, c, d) {
5694          for (
5695            var e,
5696              f,
5697              g,
5698              h,
5699              i = b.split(','),
5700              j = i.length,
5701              k = (c || 'easeIn,easeOut,easeInOut').split(',');
5702            --j > -1;
5703          )
5704            for (
5705              f = i[j],
5706                e = d ? t('easing.' + f, null, !0) : l.easing[f] || {},
5707                g = k.length;
5708              --g > -1;
5709            )
5710              ((h = k[g]),
5711                (w[f + '.' + h] =
5712                  w[h + f] =
5713                  e[h] =
5714                    a.getRatio ? a : a[h] || new a()));
5715        });
5716      for (
5717        h = v.prototype,
5718          h._calcEnd = !1,
5719          h.getRatio = function (a) {
5720            if (this._func)
5721              return (
5722                (this._params[0] = a),
5723                this._func.apply(null, this._params)
5724              );
5725            var b = this._type,
5726              c = this._power,
5727              d = 1 === b ? 1 - a : 2 === b ? a : 0.5 > a ? 2 * a : 2 * (1 - a);
5728            return (
5729              1 === c
5730                ? (d *= d)
5731                : 2 === c
5732                  ? (d *= d * d)
5733                  : 3 === c
5734                    ? (d *= d * d * d)
5735                    : 4 === c && (d *= d * d * d * d),
5736              1 === b ? 1 - d : 2 === b ? d : 0.5 > a ? d / 2 : 1 - d / 2
5737            );
5738          },
5739          f = ['Linear', 'Quad', 'Cubic', 'Quart', 'Quint,Strong'],
5740          g = f.length;
5741        --g > -1;
5742      )
5743        ((h = f[g] + ',Power' + g),
5744          x(new v(null, null, 1, g), h, 'easeOut', !0),
5745          x(
5746            new v(null, null, 2, g),
5747            h,
5748            'easeIn' + (0 === g ? ',easeNone' : ''),
5749          ),
5750          x(new v(null, null, 3, g), h, 'easeInOut'));
5751      ((w.linear = l.easing.Linear.easeIn),
5752        (w.swing = l.easing.Quad.easeInOut));
5753      var y = t('events.EventDispatcher', function (a) {
5754        ((this._listeners = {}), (this._eventTarget = a || this));
5755      });
5756      ((h = y.prototype),
5757        (h.addEventListener = function (a, b, c, d, e) {
5758          e = e || 0;
5759          var f,
5760            g,
5761            h = this._listeners[a],
5762            k = 0;
5763          for (
5764            this !== i || j || i.wake(),
5765              null == h && (this._listeners[a] = h = []),
5766              g = h.length;
5767            --g > -1;
5768          )
5769            ((f = h[g]),
5770              f.c === b && f.s === c
5771                ? h.splice(g, 1)
5772                : 0 === k && f.pr < e && (k = g + 1));
5773          h.splice(k, 0, { c: b, s: c, up: d, pr: e });
5774        }),
5775        (h.removeEventListener = function (a, b) {
5776          var c,
5777            d = this._listeners[a];
5778          if (d)
5779            for (c = d.length; --c > -1; )
5780              if (d[c].c === b) return void d.splice(c, 1);
5781        }),
5782        (h.dispatchEvent = function (a) {
5783          var b,
5784            c,
5785            d,
5786            e = this._listeners[a];
5787          if (e)
5788            for (
5789              b = e.length, b > 1 && (e = e.slice(0)), c = this._eventTarget;
5790              --b > -1;
5791            )
5792              ((d = e[b]),
5793                d &&
5794                  (d.up
5795                    ? d.c.call(d.s || c, { type: a, target: c })
5796                    : d.c.call(d.s || c)));
5797        }));
5798      var z = a.requestAnimationFrame,
5799        A = a.cancelAnimationFrame,
5800        B =
5801          Date.now ||
5802          function () {
5803            return new Date().getTime();
5804          },
5805        C = B();
5806      for (f = ['ms', 'moz', 'webkit', 'o'], g = f.length; --g > -1 && !z; )
5807        ((z = a[f[g] + 'RequestAnimationFrame']),
5808          (A =
5809            a[f[g] + 'CancelAnimationFrame'] ||
5810            a[f[g] + 'CancelRequestAnimationFrame']));
5811      (t('Ticker', function (a, b) {
5812        var c,
5813          e,
5814          f,
5815          g,
5816          h,
5817          k = this,
5818          l = B(),
5819          n = b !== !1 && z ? 'auto' : !1,
5820          p = 500,
5821          q = 33,
5822          r = 'tick',
5823          s = function (a) {
5824            var b,
5825              d,
5826              i = B() - C;
5827            (i > p && (l += i - q),
5828              (C += i),
5829              (k.time = (C - l) / 1e3),
5830              (b = k.time - h),
5831              (!c || b > 0 || a === !0) &&
5832                (k.frame++, (h += b + (b >= g ? 0.004 : g - b)), (d = !0)),
5833              a !== !0 && (f = e(s)),
5834              d && k.dispatchEvent(r));
5835          };
5836        (y.call(k),
5837          (k.time = k.frame = 0),
5838          (k.tick = function () {
5839            s(!0);
5840          }),
5841          (k.lagSmoothing = function (a, b) {
5842            return arguments.length
5843              ? ((p = a || 1 / m), void (q = Math.min(b, p, 0)))
5844              : 1 / m > p;
5845          }),
5846          (k.sleep = function () {
5847            null != f &&
5848              (n && A ? A(f) : clearTimeout(f),
5849              (e = o),
5850              (f = null),
5851              k === i && (j = !1));
5852          }),
5853          (k.wake = function (a) {
5854            (null !== f
5855              ? k.sleep()
5856              : a
5857                ? (l += -C + (C = B()))
5858                : k.frame > 10 && (C = B() - p + 5),
5859              (e =
5860                0 === c
5861                  ? o
5862                  : n && z
5863                    ? z
5864                    : function (a) {
5865                        return setTimeout(a, (1e3 * (h - k.time) + 1) | 0);
5866                      }),
5867              k === i && (j = !0),
5868              s(2));
5869          }),
5870          (k.fps = function (a) {
5871            return arguments.length
5872              ? ((c = a),
5873                (g = 1 / (c || 60)),
5874                (h = this.time + g),
5875                void k.wake())
5876              : c;
5877          }),
5878          (k.useRAF = function (a) {
5879            return arguments.length ? (k.sleep(), (n = a), void k.fps(c)) : n;
5880          }),
5881          k.fps(a),
5882          setTimeout(function () {
5883            'auto' === n &&
5884              k.frame < 5 &&
5885              'hidden' !== (d || {}).visibilityState &&
5886              k.useRAF(!1);
5887          }, 1500));
5888      }),
5889        (h = l.Ticker.prototype = new l.events.EventDispatcher()),
5890        (h.constructor = l.Ticker));
5891      var D = t('core.Animation', function (a, b) {
5892        if (
5893          ((this.vars = b = b || {}),
5894          (this._duration = this._totalDuration = a || 0),
5895          (this._delay = Number(b.delay) || 0),
5896          (this._timeScale = 1),
5897          (this._active = b.immediateRender === !0),
5898          (this.data = b.data),
5899          (this._reversed = b.reversed === !0),
5900          X)
5901        ) {
5902          j || i.wake();
5903          var c = this.vars.useFrames ? W : X;
5904          (c.add(this, c._time), this.vars.paused && this.paused(!0));
5905        }
5906      });
5907      ((i = D.ticker = new l.Ticker()),
5908        (h = D.prototype),
5909        (h._dirty = h._gc = h._initted = h._paused = !1),
5910        (h._totalTime = h._time = 0),
5911        (h._rawPrevTime = -1),
5912        (h._next = h._last = h._onUpdate = h._timeline = h.timeline = null),
5913        (h._paused = !1));
5914      var E = function () {
5915        j &&
5916          B() - C > 2e3 &&
5917          ('hidden' !== (d || {}).visibilityState || !i.lagSmoothing()) &&
5918          i.wake();
5919        var a = setTimeout(E, 2e3);
5920        a.unref && a.unref();
5921      };
5922      (E(),
5923        (h.play = function (a, b) {
5924          return (null != a && this.seek(a, b), this.reversed(!1).paused(!1));
5925        }),
5926        (h.pause = function (a, b) {
5927          return (null != a && this.seek(a, b), this.paused(!0));
5928        }),
5929        (h.resume = function (a, b) {
5930          return (null != a && this.seek(a, b), this.paused(!1));
5931        }),
5932        (h.seek = function (a, b) {
5933          return this.totalTime(Number(a), b !== !1);
5934        }),
5935        (h.restart = function (a, b) {
5936          return this.reversed(!1)
5937            .paused(!1)
5938            .totalTime(a ? -this._delay : 0, b !== !1, !0);
5939        }),
5940        (h.reverse = function (a, b) {
5941          return (
5942            null != a && this.seek(a || this.totalDuration(), b),
5943            this.reversed(!0).paused(!1)
5944          );
5945        }),
5946        (h.render = function (a, b, c) {}),
5947        (h.invalidate = function () {
5948          return (
5949            (this._time = this._totalTime = 0),
5950            (this._initted = this._gc = !1),
5951            (this._rawPrevTime = -1),
5952            (this._gc || !this.timeline) && this._enabled(!0),
5953            this
5954          );
5955        }),
5956        (h.isActive = function () {
5957          var a,
5958            b = this._timeline,
5959            c = this._startTime;
5960          return (
5961            !b ||
5962            (!this._gc &&
5963              !this._paused &&
5964              b.isActive() &&
5965              (a = b.rawTime(!0)) >= c &&
5966              a < c + this.totalDuration() / this._timeScale - 1e-7)
5967          );
5968        }),
5969        (h._enabled = function (a, b) {
5970          return (
5971            j || i.wake(),
5972            (this._gc = !a),
5973            (this._active = this.isActive()),
5974            b !== !0 &&
5975              (a && !this.timeline
5976                ? this._timeline.add(this, this._startTime - this._delay)
5977                : !a && this.timeline && this._timeline._remove(this, !0)),
5978            !1
5979          );
5980        }),
5981        (h._kill = function (a, b) {
5982          return this._enabled(!1, !1);
5983        }),
5984        (h.kill = function (a, b) {
5985          return (this._kill(a, b), this);
5986        }),
5987        (h._uncache = function (a) {
5988          for (var b = a ? this : this.timeline; b; )
5989            ((b._dirty = !0), (b = b.timeline));
5990          return this;
5991        }),
5992        (h._swapSelfInParams = function (a) {
5993          for (var b = a.length, c = a.concat(); --b > -1; )
5994            '{self}' === a[b] && (c[b] = this);
5995          return c;
5996        }),
5997        (h._callback = function (a) {
5998          var b = this.vars,
5999            c = b[a],
6000            d = b[a + 'Params'],
6001            e = b[a + 'Scope'] || b.callbackScope || this,
6002            f = d ? d.length : 0;
6003          switch (f) {
6004            case 0:
6005              c.call(e);
6006              break;
6007            case 1:
6008              c.call(e, d[0]);
6009              break;
6010            case 2:
6011              c.call(e, d[0], d[1]);
6012              break;
6013            default:
6014              c.apply(e, d);
6015          }
6016        }),
6017        (h.eventCallback = function (a, b, c, d) {
6018          if ('on' === (a || '').substr(0, 2)) {
6019            var e = this.vars;
6020            if (1 === arguments.length) return e[a];
6021            (null == b
6022              ? delete e[a]
6023              : ((e[a] = b),
6024                (e[a + 'Params'] =
6025                  p(c) && -1 !== c.join('').indexOf('{self}')
6026                    ? this._swapSelfInParams(c)
6027                    : c),
6028                (e[a + 'Scope'] = d)),
6029              'onUpdate' === a && (this._onUpdate = b));
6030          }
6031          return this;
6032        }),
6033        (h.delay = function (a) {
6034          return arguments.length
6035            ? (this._timeline.smoothChildTiming &&
6036                this.startTime(this._startTime + a - this._delay),
6037              (this._delay = a),
6038              this)
6039            : this._delay;
6040        }),
6041        (h.duration = function (a) {
6042          return arguments.length
6043            ? ((this._duration = this._totalDuration = a),
6044              this._uncache(!0),
6045              this._timeline.smoothChildTiming &&
6046                this._time > 0 &&
6047                this._time < this._duration &&
6048                0 !== a &&
6049                this.totalTime(this._totalTime * (a / this._duration), !0),
6050              this)
6051            : ((this._dirty = !1), this._duration);
6052        }),
6053        (h.totalDuration = function (a) {
6054          return (
6055            (this._dirty = !1),
6056            arguments.length ? this.duration(a) : this._totalDuration
6057          );
6058        }),
6059        (h.time = function (a, b) {
6060          return arguments.length
6061            ? (this._dirty && this.totalDuration(),
6062              this.totalTime(a > this._duration ? this._duration : a, b))
6063            : this._time;
6064        }),
6065        (h.totalTime = function (a, b, c) {
6066          if ((j || i.wake(), !arguments.length)) return this._totalTime;
6067          if (this._timeline) {
6068            if (
6069              (0 > a && !c && (a += this.totalDuration()),
6070              this._timeline.smoothChildTiming)
6071            ) {
6072              this._dirty && this.totalDuration();
6073              var d = this._totalDuration,
6074                e = this._timeline;
6075              if (
6076                (a > d && !c && (a = d),
6077                (this._startTime =
6078                  (this._paused ? this._pauseTime : e._time) -
6079                  (this._reversed ? d - a : a) / this._timeScale),
6080                e._dirty || this._uncache(!1),
6081                e._timeline)
6082              )
6083                for (; e._timeline; )
6084                  (e._timeline._time !==
6085                    (e._startTime + e._totalTime) / e._timeScale &&
6086                    e.totalTime(e._totalTime, !0),
6087                    (e = e._timeline));
6088            }
6089            (this._gc && this._enabled(!0, !1),
6090              (this._totalTime !== a || 0 === this._duration) &&
6091                (J.length && Z(), this.render(a, b, !1), J.length && Z()));
6092          }
6093          return this;
6094        }),
6095        (h.progress = h.totalProgress =
6096          function (a, b) {
6097            var c = this.duration();
6098            return arguments.length
6099              ? this.totalTime(c * a, b)
6100              : c
6101                ? this._time / c
6102                : this.ratio;
6103          }),
6104        (h.startTime = function (a) {
6105          return arguments.length
6106            ? (a !== this._startTime &&
6107                ((this._startTime = a),
6108                this.timeline &&
6109                  this.timeline._sortChildren &&
6110                  this.timeline.add(this, a - this._delay)),
6111              this)
6112            : this._startTime;
6113        }),
6114        (h.endTime = function (a) {
6115          return (
6116            this._startTime +
6117            (0 != a ? this.totalDuration() : this.duration()) / this._timeScale
6118          );
6119        }),
6120        (h.timeScale = function (a) {
6121          if (!arguments.length) return this._timeScale;
6122          var b, c;
6123          for (
6124            a = a || m,
6125              this._timeline &&
6126                this._timeline.smoothChildTiming &&
6127                ((b = this._pauseTime),
6128                (c = b || 0 === b ? b : this._timeline.totalTime()),
6129                (this._startTime =
6130                  c - ((c - this._startTime) * this._timeScale) / a)),
6131              this._timeScale = a,
6132              c = this.timeline;
6133            c && c.timeline;
6134          )
6135            ((c._dirty = !0), c.totalDuration(), (c = c.timeline));
6136          return this;
6137        }),
6138        (h.reversed = function (a) {
6139          return arguments.length
6140            ? (a != this._reversed &&
6141                ((this._reversed = a),
6142                this.totalTime(
6143                  this._timeline && !this._timeline.smoothChildTiming
6144                    ? this.totalDuration() - this._totalTime
6145                    : this._totalTime,
6146                  !0,
6147                )),
6148              this)
6149            : this._reversed;
6150        }),
6151        (h.paused = function (a) {
6152          if (!arguments.length) return this._paused;
6153          var b,
6154            c,
6155            d = this._timeline;
6156          return (
6157            a != this._paused &&
6158              d &&
6159              (j || a || i.wake(),
6160              (b = d.rawTime()),
6161              (c = b - this._pauseTime),
6162              !a &&
6163                d.smoothChildTiming &&
6164                ((this._startTime += c), this._uncache(!1)),
6165              (this._pauseTime = a ? b : null),
6166              (this._paused = a),
6167              (this._active = this.isActive()),
6168              !a &&
6169                0 !== c &&
6170                this._initted &&
6171                this.duration() &&
6172                ((b = d.smoothChildTiming
6173                  ? this._totalTime
6174                  : (b - this._startTime) / this._timeScale),
6175                this.render(b, b === this._totalTime, !0))),
6176            this._gc && !a && this._enabled(!0, !1),
6177            this
6178          );
6179        }));
6180      var F = t('core.SimpleTimeline', function (a) {
6181        (D.call(this, 0, a),
6182          (this.autoRemoveChildren = this.smoothChildTiming = !0));
6183      });
6184      ((h = F.prototype = new D()),
6185        (h.constructor = F),
6186        (h.kill()._gc = !1),
6187        (h._first = h._last = h._recent = null),
6188        (h._sortChildren = !1),
6189        (h.add = h.insert =
6190          function (a, b, c, d) {
6191            var e, f;
6192            if (
6193              ((a._startTime = Number(b || 0) + a._delay),
6194              a._paused &&
6195                this !== a._timeline &&
6196                (a._pauseTime =
6197                  a._startTime +
6198                  (this.rawTime() - a._startTime) / a._timeScale),
6199              a.timeline && a.timeline._remove(a, !0),
6200              (a.timeline = a._timeline = this),
6201              a._gc && a._enabled(!0, !0),
6202              (e = this._last),
6203              this._sortChildren)
6204            )
6205              for (f = a._startTime; e && e._startTime > f; ) e = e._prev;
6206            return (
6207              e
6208                ? ((a._next = e._next), (e._next = a))
6209                : ((a._next = this._first), (this._first = a)),
6210              a._next ? (a._next._prev = a) : (this._last = a),
6211              (a._prev = e),
6212              (this._recent = a),
6213              this._timeline && this._uncache(!0),
6214              this
6215            );
6216          }),
6217        (h._remove = function (a, b) {
6218          return (
6219            a.timeline === this &&
6220              (b || a._enabled(!1, !0),
6221              a._prev
6222                ? (a._prev._next = a._next)
6223                : this._first === a && (this._first = a._next),
6224              a._next
6225                ? (a._next._prev = a._prev)
6226                : this._last === a && (this._last = a._prev),
6227              (a._next = a._prev = a.timeline = null),
6228              a === this._recent && (this._recent = this._last),
6229              this._timeline && this._uncache(!0)),
6230            this
6231          );
6232        }),
6233        (h.render = function (a, b, c) {
6234          var d,
6235            e = this._first;
6236          for (this._totalTime = this._time = this._rawPrevTime = a; e; )
6237            ((d = e._next),
6238              (e._active || (a >= e._startTime && !e._paused && !e._gc)) &&
6239                (e._reversed
6240                  ? e.render(
6241                      (e._dirty ? e.totalDuration() : e._totalDuration) -
6242                        (a - e._startTime) * e._timeScale,
6243                      b,
6244                      c,
6245                    )
6246                  : e.render((a - e._startTime) * e._timeScale, b, c)),
6247              (e = d));
6248        }),
6249        (h.rawTime = function () {
6250          return (j || i.wake(), this._totalTime);
6251        }));
6252      var G = t(
6253          'TweenLite',
6254          function (b, c, d) {
6255            if (
6256              (D.call(this, c, d),
6257              (this.render = G.prototype.render),
6258              null == b)
6259            )
6260              throw 'Cannot tween a null target.';
6261            this.target = b = 'string' != typeof b ? b : G.selector(b) || b;
6262            var e,
6263              f,
6264              g,
6265              h =
6266                b.jquery ||
6267                (b.length &&
6268                  b !== a &&
6269                  b[0] &&
6270                  (b[0] === a || (b[0].nodeType && b[0].style && !b.nodeType))),
6271              i = this.vars.overwrite;
6272            if (
6273              ((this._overwrite = i =
6274                null == i
6275                  ? V[G.defaultOverwrite]
6276                  : 'number' == typeof i
6277                    ? i >> 0
6278                    : V[i]),
6279              (h || b instanceof Array || (b.push && p(b))) &&
6280                'number' != typeof b[0])
6281            )
6282              for (
6283                this._targets = g = n(b),
6284                  this._propLookup = [],
6285                  this._siblings = [],
6286                  e = 0;
6287                e < g.length;
6288                e++
6289              )
6290                ((f = g[e]),
6291                  f
6292                    ? 'string' != typeof f
6293                      ? f.length &&
6294                        f !== a &&
6295                        f[0] &&
6296                        (f[0] === a ||
6297                          (f[0].nodeType && f[0].style && !f.nodeType))
6298                        ? (g.splice(e--, 1),
6299                          (this._targets = g = g.concat(n(f))))
6300                        : ((this._siblings[e] = $(f, this, !1)),
6301                          1 === i &&
6302                            this._siblings[e].length > 1 &&
6303                            aa(f, this, null, 1, this._siblings[e]))
6304                      : ((f = g[e--] = G.selector(f)),
6305                        'string' == typeof f && g.splice(e + 1, 1))
6306                    : g.splice(e--, 1));
6307            else
6308              ((this._propLookup = {}),
6309                (this._siblings = $(b, this, !1)),
6310                1 === i &&
6311                  this._siblings.length > 1 &&
6312                  aa(b, this, null, 1, this._siblings));
6313            (this.vars.immediateRender ||
6314              (0 === c &&
6315                0 === this._delay &&
6316                this.vars.immediateRender !== !1)) &&
6317              ((this._time = -m), this.render(Math.min(0, -this._delay)));
6318          },
6319          !0,
6320        ),
6321        H = function (b) {
6322          return (
6323            b &&
6324            b.length &&
6325            b !== a &&
6326            b[0] &&
6327            (b[0] === a || (b[0].nodeType && b[0].style && !b.nodeType))
6328          );
6329        },
6330        I = function (a, b) {
6331          var c,
6332            d = {};
6333          for (c in a)
6334            U[c] ||
6335              (c in b &&
6336                'transform' !== c &&
6337                'x' !== c &&
6338                'y' !== c &&
6339                'width' !== c &&
6340                'height' !== c &&
6341                'className' !== c &&
6342                'border' !== c) ||
6343              !(!R[c] || (R[c] && R[c]._autoCSS)) ||
6344              ((d[c] = a[c]), delete a[c]);
6345          a.css = d;
6346        };
6347      ((h = G.prototype = new D()),
6348        (h.constructor = G),
6349        (h.kill()._gc = !1),
6350        (h.ratio = 0),
6351        (h._firstPT = h._targets = h._overwrittenProps = h._startAt = null),
6352        (h._notifyPluginsOfEnabled = h._lazy = !1),
6353        (G.version = '1.20.4'),
6354        (G.defaultEase = h._ease = new v(null, null, 1, 1)),
6355        (G.defaultOverwrite = 'auto'),
6356        (G.ticker = i),
6357        (G.autoSleep = 120),
6358        (G.lagSmoothing = function (a, b) {
6359          i.lagSmoothing(a, b);
6360        }),
6361        (G.selector =
6362          a.$ ||
6363          a.jQuery ||
6364          function (b) {
6365            var c = a.$ || a.jQuery;
6366            return c
6367              ? ((G.selector = c), c(b))
6368              : 'undefined' == typeof d
6369                ? b
6370                : d.querySelectorAll
6371                  ? d.querySelectorAll(b)
6372                  : d.getElementById('#' === b.charAt(0) ? b.substr(1) : b);
6373          }));
6374      var J = [],
6375        K = {},
6376        L = /(?:(-|-=|\+=)?\d*\.?\d*(?:e[\-+]?\d+)?)[0-9]/gi,
6377        M = /[\+-]=-?[\.\d]/,
6378        N = function (a) {
6379          for (var b, c = this._firstPT, d = 1e-6; c; )
6380            ((b = c.blob
6381              ? 1 === a && null != this.end
6382                ? this.end
6383                : a
6384                  ? this.join('')
6385                  : this.start
6386              : c.c * a + c.s),
6387              c.m
6388                ? (b = c.m(b, this._target || c.t))
6389                : d > b && b > -d && !c.blob && (b = 0),
6390              c.f ? (c.fp ? c.t[c.p](c.fp, b) : c.t[c.p](b)) : (c.t[c.p] = b),
6391              (c = c._next));
6392        },
6393        O = function (a, b, c, d) {
6394          var e,
6395            f,
6396            g,
6397            h,
6398            i,
6399            j,
6400            k,
6401            l = [],
6402            m = 0,
6403            n = '',
6404            o = 0;
6405          for (
6406            l.start = a,
6407              l.end = b,
6408              a = l[0] = a + '',
6409              b = l[1] = b + '',
6410              c && (c(l), (a = l[0]), (b = l[1])),
6411              l.length = 0,
6412              e = a.match(L) || [],
6413              f = b.match(L) || [],
6414              d &&
6415                ((d._next = null), (d.blob = 1), (l._firstPT = l._applyPT = d)),
6416              i = f.length,
6417              h = 0;
6418            i > h;
6419            h++
6420          )
6421            ((k = f[h]),
6422              (j = b.substr(m, b.indexOf(k, m) - m)),
6423              (n += j || !h ? j : ','),
6424              (m += j.length),
6425              o ? (o = (o + 1) % 5) : 'rgba(' === j.substr(-5) && (o = 1),
6426              k === e[h] || e.length <= h
6427                ? (n += k)
6428                : (n && (l.push(n), (n = '')),
6429                  (g = parseFloat(e[h])),
6430                  l.push(g),
6431                  (l._firstPT = {
6432                    _next: l._firstPT,
6433                    t: l,
6434                    p: l.length - 1,
6435                    s: g,
6436                    c:
6437                      ('=' === k.charAt(1)
6438                        ? parseInt(k.charAt(0) + '1', 10) *
6439                          parseFloat(k.substr(2))
6440                        : parseFloat(k) - g) || 0,
6441                    f: 0,
6442                    m: o && 4 > o ? Math.round : 0,
6443                  })),
6444              (m += k.length));
6445          return (
6446            (n += b.substr(m)),
6447            n && l.push(n),
6448            (l.setRatio = N),
6449            M.test(b) && (l.end = null),
6450            l
6451          );
6452        },
6453        P = function (a, b, c, d, e, f, g, h, i) {
6454          'function' == typeof d && (d = d(i || 0, a));
6455          var j,
6456            k = typeof a[b],
6457            l =
6458              'function' !== k
6459                ? ''
6460                : b.indexOf('set') ||
6461                    'function' != typeof a['get' + b.substr(3)]
6462                  ? b
6463                  : 'get' + b.substr(3),
6464            m = 'get' !== c ? c : l ? (g ? a[l](g) : a[l]()) : a[b],
6465            n = 'string' == typeof d && '=' === d.charAt(1),
6466            o = {
6467              t: a,
6468              p: b,
6469              s: m,
6470              f: 'function' === k,
6471              pg: 0,
6472              n: e || b,
6473              m: f ? ('function' == typeof f ? f : Math.round) : 0,
6474              pr: 0,
6475              c: n
6476                ? parseInt(d.charAt(0) + '1', 10) * parseFloat(d.substr(2))
6477                : parseFloat(d) - m || 0,
6478            };
6479          return (
6480            ('number' != typeof m || ('number' != typeof d && !n)) &&
6481              (g ||
6482              isNaN(m) ||
6483              (!n && isNaN(d)) ||
6484              'boolean' == typeof m ||
6485              'boolean' == typeof d
6486                ? ((o.fp = g),
6487                  (j = O(
6488                    m,
6489                    n
6490                      ? parseFloat(o.s) +
6491                          o.c +
6492                          (o.s + '').replace(/[0-9\-\.]/g, '')
6493                      : d,
6494                    h || G.defaultStringFilter,
6495                    o,
6496                  )),
6497                  (o = {
6498                    t: j,
6499                    p: 'setRatio',
6500                    s: 0,
6501                    c: 1,
6502                    f: 2,
6503                    pg: 0,
6504                    n: e || b,
6505                    pr: 0,
6506                    m: 0,
6507                  }))
6508                : ((o.s = parseFloat(m)),
6509                  n || (o.c = parseFloat(d) - o.s || 0))),
6510            o.c
6511              ? ((o._next = this._firstPT) && (o._next._prev = o),
6512                (this._firstPT = o),
6513                o)
6514              : void 0
6515          );
6516        },
6517        Q = (G._internals = {
6518          isArray: p,
6519          isSelector: H,
6520          lazyTweens: J,
6521          blobDif: O,
6522        }),
6523        R = (G._plugins = {}),
6524        S = (Q.tweenLookup = {}),
6525        T = 0,
6526        U = (Q.reservedProps = {
6527          ease: 1,
6528          delay: 1,
6529          overwrite: 1,
6530          onComplete: 1,
6531          onCompleteParams: 1,
6532          onCompleteScope: 1,
6533          useFrames: 1,
6534          runBackwards: 1,
6535          startAt: 1,
6536          onUpdate: 1,
6537          onUpdateParams: 1,
6538          onUpdateScope: 1,
6539          onStart: 1,
6540          onStartParams: 1,
6541          onStartScope: 1,
6542          onReverseComplete: 1,
6543          onReverseCompleteParams: 1,
6544          onReverseCompleteScope: 1,
6545          onRepeat: 1,
6546          onRepeatParams: 1,
6547          onRepeatScope: 1,
6548          easeParams: 1,
6549          yoyo: 1,
6550          immediateRender: 1,
6551          repeat: 1,
6552          repeatDelay: 1,
6553          data: 1,
6554          paused: 1,
6555          reversed: 1,
6556          autoCSS: 1,
6557          lazy: 1,
6558          onOverwrite: 1,
6559          callbackScope: 1,
6560          stringFilter: 1,
6561          id: 1,
6562          yoyoEase: 1,
6563        }),
6564        V = {
6565          none: 0,
6566          all: 1,
6567          auto: 2,
6568          concurrent: 3,
6569          allOnStart: 4,
6570          preexisting: 5,
6571          true: 1,
6572          false: 0,
6573        },
6574        W = (D._rootFramesTimeline = new F()),
6575        X = (D._rootTimeline = new F()),
6576        Y = 30,
6577        Z = (Q.lazyRender = function () {
6578          var a,
6579            b = J.length;
6580          for (K = {}; --b > -1; )
6581            ((a = J[b]),
6582              a &&
6583                a._lazy !== !1 &&
6584                (a.render(a._lazy[0], a._lazy[1], !0), (a._lazy = !1)));
6585          J.length = 0;
6586        });
6587      ((X._startTime = i.time),
6588        (W._startTime = i.frame),
6589        (X._active = W._active = !0),
6590        setTimeout(Z, 1),
6591        (D._updateRoot = G.render =
6592          function () {
6593            var a, b, c;
6594            if (
6595              (J.length && Z(),
6596              X.render((i.time - X._startTime) * X._timeScale, !1, !1),
6597              W.render((i.frame - W._startTime) * W._timeScale, !1, !1),
6598              J.length && Z(),
6599              i.frame >= Y)
6600            ) {
6601              Y = i.frame + (parseInt(G.autoSleep, 10) || 120);
6602              for (c in S) {
6603                for (b = S[c].tweens, a = b.length; --a > -1; )
6604                  b[a]._gc && b.splice(a, 1);
6605                0 === b.length && delete S[c];
6606              }
6607              if (
6608                ((c = X._first),
6609                (!c || c._paused) &&
6610                  G.autoSleep &&
6611                  !W._first &&
6612                  1 === i._listeners.tick.length)
6613              ) {
6614                for (; c && c._paused; ) c = c._next;
6615                c || i.sleep();
6616              }
6617            }
6618          }),
6619        i.addEventListener('tick', D._updateRoot));
6620      var $ = function (a, b, c) {
6621          var d,
6622            e,
6623            f = a._gsTweenID;
6624          if (
6625            (S[f || (a._gsTweenID = f = 't' + T++)] ||
6626              (S[f] = { target: a, tweens: [] }),
6627            b && ((d = S[f].tweens), (d[(e = d.length)] = b), c))
6628          )
6629            for (; --e > -1; ) d[e] === b && d.splice(e, 1);
6630          return S[f].tweens;
6631        },
6632        _ = function (a, b, c, d) {
6633          var e,
6634            f,
6635            g = a.vars.onOverwrite;
6636          return (
6637            g && (e = g(a, b, c, d)),
6638            (g = G.onOverwrite),
6639            g && (f = g(a, b, c, d)),
6640            e !== !1 && f !== !1
6641          );
6642        },
6643        aa = function (a, b, c, d, e) {
6644          var f, g, h, i;
6645          if (1 === d || d >= 4) {
6646            for (i = e.length, f = 0; i > f; f++)
6647              if ((h = e[f]) !== b) h._gc || (h._kill(null, a, b) && (g = !0));
6648              else if (5 === d) break;
6649            return g;
6650          }
6651          var j,
6652            k = b._startTime + m,
6653            l = [],
6654            n = 0,
6655            o = 0 === b._duration;
6656          for (f = e.length; --f > -1; )
6657            (h = e[f]) === b ||
6658              h._gc ||
6659              h._paused ||
6660              (h._timeline !== b._timeline
6661                ? ((j = j || ba(b, 0, o)), 0 === ba(h, j, o) && (l[n++] = h))
6662                : h._startTime <= k &&
6663                  h._startTime + h.totalDuration() / h._timeScale > k &&
6664                  (((o || !h._initted) && k - h._startTime <= 2e-10) ||
6665                    (l[n++] = h)));
6666          for (f = n; --f > -1; )
6667            if (
6668              ((h = l[f]),
6669              2 === d && h._kill(c, a, b) && (g = !0),
6670              2 !== d || (!h._firstPT && h._initted))
6671            ) {
6672              if (2 !== d && !_(h, b)) continue;
6673              h._enabled(!1, !1) && (g = !0);
6674            }
6675          return g;
6676        },
6677        ba = function (a, b, c) {
6678          for (
6679            var d = a._timeline, e = d._timeScale, f = a._startTime;
6680            d._timeline;
6681          ) {
6682            if (((f += d._startTime), (e *= d._timeScale), d._paused))
6683              return -100;
6684            d = d._timeline;
6685          }
6686          return (
6687            (f /= e),
6688            f > b
6689              ? f - b
6690              : (c && f === b) || (!a._initted && 2 * m > f - b)
6691                ? m
6692                : (f += a.totalDuration() / a._timeScale / e) > b + m
6693                  ? 0
6694                  : f - b - m
6695          );
6696        };
6697      ((h._init = function () {
6698        var a,
6699          b,
6700          c,
6701          d,
6702          e,
6703          f,
6704          g = this.vars,
6705          h = this._overwrittenProps,
6706          i = this._duration,
6707          j = !!g.immediateRender,
6708          k = g.ease;
6709        if (g.startAt) {
6710          (this._startAt &&
6711            (this._startAt.render(-1, !0), this._startAt.kill()),
6712            (e = {}));
6713          for (d in g.startAt) e[d] = g.startAt[d];
6714          if (
6715            ((e.data = 'isStart'),
6716            (e.overwrite = !1),
6717            (e.immediateRender = !0),
6718            (e.lazy = j && g.lazy !== !1),
6719            (e.startAt = e.delay = null),
6720            (e.onUpdate = g.onUpdate),
6721            (e.onUpdateParams = g.onUpdateParams),
6722            (e.onUpdateScope = g.onUpdateScope || g.callbackScope || this),
6723            (this._startAt = G.to(this.target, 0, e)),
6724            j)
6725          )
6726            if (this._time > 0) this._startAt = null;
6727            else if (0 !== i) return;
6728        } else if (g.runBackwards && 0 !== i)
6729          if (this._startAt)
6730            (this._startAt.render(-1, !0),
6731              this._startAt.kill(),
6732              (this._startAt = null));
6733          else {
6734            (0 !== this._time && (j = !1), (c = {}));
6735            for (d in g) (U[d] && 'autoCSS' !== d) || (c[d] = g[d]);
6736            if (
6737              ((c.overwrite = 0),
6738              (c.data = 'isFromStart'),
6739              (c.lazy = j && g.lazy !== !1),
6740              (c.immediateRender = j),
6741              (this._startAt = G.to(this.target, 0, c)),
6742              j)
6743            ) {
6744              if (0 === this._time) return;
6745            } else
6746              (this._startAt._init(),
6747                this._startAt._enabled(!1),
6748                this.vars.immediateRender && (this._startAt = null));
6749          }
6750        if (
6751          ((this._ease = k =
6752            k
6753              ? k instanceof v
6754                ? k
6755                : 'function' == typeof k
6756                  ? new v(k, g.easeParams)
6757                  : w[k] || G.defaultEase
6758              : G.defaultEase),
6759          g.easeParams instanceof Array &&
6760            k.config &&
6761            (this._ease = k.config.apply(k, g.easeParams)),
6762          (this._easeType = this._ease._type),
6763          (this._easePower = this._ease._power),
6764          (this._firstPT = null),
6765          this._targets)
6766        )
6767          for (f = this._targets.length, a = 0; f > a; a++)
6768            this._initProps(
6769              this._targets[a],
6770              (this._propLookup[a] = {}),
6771              this._siblings[a],
6772              h ? h[a] : null,
6773              a,
6774            ) && (b = !0);
6775        else
6776          b = this._initProps(
6777            this.target,
6778            this._propLookup,
6779            this._siblings,
6780            h,
6781            0,
6782          );
6783        if (
6784          (b && G._onPluginEvent('_onInitAllProps', this),
6785          h &&
6786            (this._firstPT ||
6787              ('function' != typeof this.target && this._enabled(!1, !1))),
6788          g.runBackwards)
6789        )
6790          for (c = this._firstPT; c; )
6791            ((c.s += c.c), (c.c = -c.c), (c = c._next));
6792        ((this._onUpdate = g.onUpdate), (this._initted = !0));
6793      }),
6794        (h._initProps = function (b, c, d, e, f) {
6795          var g, h, i, j, k, l;
6796          if (null == b) return !1;
6797          (K[b._gsTweenID] && Z(),
6798            this.vars.css ||
6799              (b.style &&
6800                b !== a &&
6801                b.nodeType &&
6802                R.css &&
6803                this.vars.autoCSS !== !1 &&
6804                I(this.vars, b)));
6805          for (g in this.vars)
6806            if (((l = this.vars[g]), U[g]))
6807              l &&
6808                (l instanceof Array || (l.push && p(l))) &&
6809                -1 !== l.join('').indexOf('{self}') &&
6810                (this.vars[g] = l = this._swapSelfInParams(l, this));
6811            else if (
6812              R[g] &&
6813              (j = new R[g]())._onInitTween(b, this.vars[g], this, f)
6814            ) {
6815              for (
6816                this._firstPT = k =
6817                  {
6818                    _next: this._firstPT,
6819                    t: j,
6820                    p: 'setRatio',
6821                    s: 0,
6822                    c: 1,
6823                    f: 1,
6824                    n: g,
6825                    pg: 1,
6826                    pr: j._priority,
6827                    m: 0,
6828                  },
6829                  h = j._overwriteProps.length;
6830                --h > -1;
6831              )
6832                c[j._overwriteProps[h]] = this._firstPT;
6833              ((j._priority || j._onInitAllProps) && (i = !0),
6834                (j._onDisable || j._onEnable) &&
6835                  (this._notifyPluginsOfEnabled = !0),
6836                k._next && (k._next._prev = k));
6837            } else
6838              c[g] = P.call(
6839                this,
6840                b,
6841                g,
6842                'get',
6843                l,
6844                g,
6845                0,
6846                null,
6847                this.vars.stringFilter,
6848                f,
6849              );
6850          return e && this._kill(e, b)
6851            ? this._initProps(b, c, d, e, f)
6852            : this._overwrite > 1 &&
6853                this._firstPT &&
6854                d.length > 1 &&
6855                aa(b, this, c, this._overwrite, d)
6856              ? (this._kill(c, b), this._initProps(b, c, d, e, f))
6857              : (this._firstPT &&
6858                  ((this.vars.lazy !== !1 && this._duration) ||
6859                    (this.vars.lazy && !this._duration)) &&
6860                  (K[b._gsTweenID] = !0),
6861                i);
6862        }),
6863        (h.render = function (a, b, c) {
6864          var d,
6865            e,
6866            f,
6867            g,
6868            h = this._time,
6869            i = this._duration,
6870            j = this._rawPrevTime;
6871          if (a >= i - 1e-7 && a >= 0)
6872            ((this._totalTime = this._time = i),
6873              (this.ratio = this._ease._calcEnd ? this._ease.getRatio(1) : 1),
6874              this._reversed ||
6875                ((d = !0),
6876                (e = 'onComplete'),
6877                (c = c || this._timeline.autoRemoveChildren)),
6878              0 === i &&
6879                (this._initted || !this.vars.lazy || c) &&
6880                (this._startTime === this._timeline._duration && (a = 0),
6881                (0 > j ||
6882                  (0 >= a && a >= -1e-7) ||
6883                  (j === m && 'isPause' !== this.data)) &&
6884                  j !== a &&
6885                  ((c = !0), j > m && (e = 'onReverseComplete')),
6886                (this._rawPrevTime = g = !b || a || j === a ? a : m)));
6887          else if (1e-7 > a)
6888            ((this._totalTime = this._time = 0),
6889              (this.ratio = this._ease._calcEnd ? this._ease.getRatio(0) : 0),
6890              (0 !== h || (0 === i && j > 0)) &&
6891                ((e = 'onReverseComplete'), (d = this._reversed)),
6892              0 > a &&
6893                ((this._active = !1),
6894                0 === i &&
6895                  (this._initted || !this.vars.lazy || c) &&
6896                  (j >= 0 && (j !== m || 'isPause' !== this.data) && (c = !0),
6897                  (this._rawPrevTime = g = !b || a || j === a ? a : m))),
6898              (!this._initted || (this._startAt && this._startAt.progress())) &&
6899                (c = !0));
6900          else if (((this._totalTime = this._time = a), this._easeType)) {
6901            var k = a / i,
6902              l = this._easeType,
6903              n = this._easePower;
6904            ((1 === l || (3 === l && k >= 0.5)) && (k = 1 - k),
6905              3 === l && (k *= 2),
6906              1 === n
6907                ? (k *= k)
6908                : 2 === n
6909                  ? (k *= k * k)
6910                  : 3 === n
6911                    ? (k *= k * k * k)
6912                    : 4 === n && (k *= k * k * k * k),
6913              1 === l
6914                ? (this.ratio = 1 - k)
6915                : 2 === l
6916                  ? (this.ratio = k)
6917                  : 0.5 > a / i
6918                    ? (this.ratio = k / 2)
6919                    : (this.ratio = 1 - k / 2));
6920          } else this.ratio = this._ease.getRatio(a / i);
6921          if (this._time !== h || c) {
6922            if (!this._initted) {
6923              if ((this._init(), !this._initted || this._gc)) return;
6924              if (
6925                !c &&
6926                this._firstPT &&
6927                ((this.vars.lazy !== !1 && this._duration) ||
6928                  (this.vars.lazy && !this._duration))
6929              )
6930                return (
6931                  (this._time = this._totalTime = h),
6932                  (this._rawPrevTime = j),
6933                  J.push(this),
6934                  void (this._lazy = [a, b])
6935                );
6936              this._time && !d
6937                ? (this.ratio = this._ease.getRatio(this._time / i))
6938                : d &&
6939                  this._ease._calcEnd &&
6940                  (this.ratio = this._ease.getRatio(0 === this._time ? 0 : 1));
6941            }
6942            for (
6943              this._lazy !== !1 && (this._lazy = !1),
6944                this._active ||
6945                  (!this._paused &&
6946                    this._time !== h &&
6947                    a >= 0 &&
6948                    (this._active = !0)),
6949                0 === h &&
6950                  (this._startAt &&
6951                    (a >= 0
6952                      ? this._startAt.render(a, !0, c)
6953                      : e || (e = '_dummyGS')),
6954                  this.vars.onStart &&
6955                    (0 !== this._time || 0 === i) &&
6956                    (b || this._callback('onStart'))),
6957                f = this._firstPT;
6958              f;
6959            )
6960              (f.f
6961                ? f.t[f.p](f.c * this.ratio + f.s)
6962                : (f.t[f.p] = f.c * this.ratio + f.s),
6963                (f = f._next));
6964            (this._onUpdate &&
6965              (0 > a &&
6966                this._startAt &&
6967                a !== -1e-4 &&
6968                this._startAt.render(a, !0, c),
6969              b ||
6970                ((this._time !== h || d || c) && this._callback('onUpdate'))),
6971              e &&
6972                (!this._gc || c) &&
6973                (0 > a &&
6974                  this._startAt &&
6975                  !this._onUpdate &&
6976                  a !== -1e-4 &&
6977                  this._startAt.render(a, !0, c),
6978                d &&
6979                  (this._timeline.autoRemoveChildren && this._enabled(!1, !1),
6980                  (this._active = !1)),
6981                !b && this.vars[e] && this._callback(e),
6982                0 === i &&
6983                  this._rawPrevTime === m &&
6984                  g !== m &&
6985                  (this._rawPrevTime = 0)));
6986          }
6987        }),
6988        (h._kill = function (a, b, c) {
6989          if (
6990            ('all' === a && (a = null),
6991            null == a && (null == b || b === this.target))
6992          )
6993            return ((this._lazy = !1), this._enabled(!1, !1));
6994          b =
6995            'string' != typeof b
6996              ? b || this._targets || this.target
6997              : G.selector(b) || b;
6998          var d,
6999            e,
7000            f,
7001            g,
7002            h,
7003            i,
7004            j,
7005            k,
7006            l,
7007            m =
7008              c &&
7009              this._time &&
7010              c._startTime === this._startTime &&
7011              this._timeline === c._timeline;
7012          if ((p(b) || H(b)) && 'number' != typeof b[0])
7013            for (d = b.length; --d > -1; ) this._kill(a, b[d], c) && (i = !0);
7014          else {
7015            if (this._targets) {
7016              for (d = this._targets.length; --d > -1; )
7017                if (b === this._targets[d]) {
7018                  ((h = this._propLookup[d] || {}),
7019                    (this._overwrittenProps = this._overwrittenProps || []),
7020                    (e = this._overwrittenProps[d] =
7021                      a ? this._overwrittenProps[d] || {} : 'all'));
7022                  break;
7023                }
7024            } else {
7025              if (b !== this.target) return !1;
7026              ((h = this._propLookup),
7027                (e = this._overwrittenProps =
7028                  a ? this._overwrittenProps || {} : 'all'));
7029            }
7030            if (h) {
7031              if (
7032                ((j = a || h),
7033                (k =
7034                  a !== e &&
7035                  'all' !== e &&
7036                  a !== h &&
7037                  ('object' != typeof a || !a._tempKill)),
7038                c && (G.onOverwrite || this.vars.onOverwrite))
7039              ) {
7040                for (f in j) h[f] && (l || (l = []), l.push(f));
7041                if ((l || !a) && !_(this, c, b, l)) return !1;
7042              }
7043              for (f in j)
7044                ((g = h[f]) &&
7045                  (m && (g.f ? g.t[g.p](g.s) : (g.t[g.p] = g.s), (i = !0)),
7046                  g.pg && g.t._kill(j) && (i = !0),
7047                  (g.pg && 0 !== g.t._overwriteProps.length) ||
7048                    (g._prev
7049                      ? (g._prev._next = g._next)
7050                      : g === this._firstPT && (this._firstPT = g._next),
7051                    g._next && (g._next._prev = g._prev),
7052                    (g._next = g._prev = null)),
7053                  delete h[f]),
7054                  k && (e[f] = 1));
7055              !this._firstPT && this._initted && this._enabled(!1, !1);
7056            }
7057          }
7058          return i;
7059        }),
7060        (h.invalidate = function () {
7061          return (
7062            this._notifyPluginsOfEnabled &&
7063              G._onPluginEvent('_onDisable', this),
7064            (this._firstPT =
7065              this._overwrittenProps =
7066              this._startAt =
7067              this._onUpdate =
7068                null),
7069            (this._notifyPluginsOfEnabled = this._active = this._lazy = !1),
7070            (this._propLookup = this._targets ? {} : []),
7071            D.prototype.invalidate.call(this),
7072            this.vars.immediateRender &&
7073              ((this._time = -m), this.render(Math.min(0, -this._delay))),
7074            this
7075          );
7076        }),
7077        (h._enabled = function (a, b) {
7078          if ((j || i.wake(), a && this._gc)) {
7079            var c,
7080              d = this._targets;
7081            if (d)
7082              for (c = d.length; --c > -1; )
7083                this._siblings[c] = $(d[c], this, !0);
7084            else this._siblings = $(this.target, this, !0);
7085          }
7086          return (
7087            D.prototype._enabled.call(this, a, b),
7088            this._notifyPluginsOfEnabled && this._firstPT
7089              ? G._onPluginEvent(a ? '_onEnable' : '_onDisable', this)
7090              : !1
7091          );
7092        }),
7093        (G.to = function (a, b, c) {
7094          return new G(a, b, c);
7095        }),
7096        (G.from = function (a, b, c) {
7097          return (
7098            (c.runBackwards = !0),
7099            (c.immediateRender = 0 != c.immediateRender),
7100            new G(a, b, c)
7101          );
7102        }),
7103        (G.fromTo = function (a, b, c, d) {
7104          return (
7105            (d.startAt = c),
7106            (d.immediateRender =
7107              0 != d.immediateRender && 0 != c.immediateRender),
7108            new G(a, b, d)
7109          );
7110        }),
7111        (G.delayedCall = function (a, b, c, d, e) {
7112          return new G(b, 0, {
7113            delay: a,
7114            onComplete: b,
7115            onCompleteParams: c,
7116            callbackScope: d,
7117            onReverseComplete: b,
7118            onReverseCompleteParams: c,
7119            immediateRender: !1,
7120            lazy: !1,
7121            useFrames: e,
7122            overwrite: 0,
7123          });
7124        }),
7125        (G.set = function (a, b) {
7126          return new G(a, 0, b);
7127        }),
7128        (G.getTweensOf = function (a, b) {
7129          if (null == a) return [];
7130          a = 'string' != typeof a ? a : G.selector(a) || a;
7131          var c, d, e, f;
7132          if ((p(a) || H(a)) && 'number' != typeof a[0]) {
7133            for (c = a.length, d = []; --c > -1; )
7134              d = d.concat(G.getTweensOf(a[c], b));
7135            for (c = d.length; --c > -1; )
7136              for (f = d[c], e = c; --e > -1; ) f === d[e] && d.splice(c, 1);
7137          } else if (a._gsTweenID)
7138            for (d = $(a).concat(), c = d.length; --c > -1; )
7139              (d[c]._gc || (b && !d[c].isActive())) && d.splice(c, 1);
7140          return d || [];
7141        }),
7142        (G.killTweensOf = G.killDelayedCallsTo =
7143          function (a, b, c) {
7144            'object' == typeof b && ((c = b), (b = !1));
7145            for (var d = G.getTweensOf(a, b), e = d.length; --e > -1; )
7146              d[e]._kill(c, a);
7147          }));
7148      var ca = t(
7149        'plugins.TweenPlugin',
7150        function (a, b) {
7151          ((this._overwriteProps = (a || '').split(',')),
7152            (this._propName = this._overwriteProps[0]),
7153            (this._priority = b || 0),
7154            (this._super = ca.prototype));
7155        },
7156        !0,
7157      );
7158      if (
7159        ((h = ca.prototype),
7160        (ca.version = '1.19.0'),
7161        (ca.API = 2),
7162        (h._firstPT = null),
7163        (h._addTween = P),
7164        (h.setRatio = N),
7165        (h._kill = function (a) {
7166          var b,
7167            c = this._overwriteProps,
7168            d = this._firstPT;
7169          if (null != a[this._propName]) this._overwriteProps = [];
7170          else for (b = c.length; --b > -1; ) null != a[c[b]] && c.splice(b, 1);
7171          for (; d; )
7172            (null != a[d.n] &&
7173              (d._next && (d._next._prev = d._prev),
7174              d._prev
7175                ? ((d._prev._next = d._next), (d._prev = null))
7176                : this._firstPT === d && (this._firstPT = d._next)),
7177              (d = d._next));
7178          return !1;
7179        }),
7180        (h._mod = h._roundProps =
7181          function (a) {
7182            for (var b, c = this._firstPT; c; )
7183              ((b =
7184                a[this._propName] ||
7185                (null != c.n && a[c.n.split(this._propName + '_').join('')])),
7186                b &&
7187                  'function' == typeof b &&
7188                  (2 === c.f ? (c.t._applyPT.m = b) : (c.m = b)),
7189                (c = c._next));
7190          }),
7191        (G._onPluginEvent = function (a, b) {
7192          var c,
7193            d,
7194            e,
7195            f,
7196            g,
7197            h = b._firstPT;
7198          if ('_onInitAllProps' === a) {
7199            for (; h; ) {
7200              for (g = h._next, d = e; d && d.pr > h.pr; ) d = d._next;
7201              ((h._prev = d ? d._prev : f) ? (h._prev._next = h) : (e = h),
7202                (h._next = d) ? (d._prev = h) : (f = h),
7203                (h = g));
7204            }
7205            h = b._firstPT = e;
7206          }
7207          for (; h; )
7208            (h.pg && 'function' == typeof h.t[a] && h.t[a]() && (c = !0),
7209              (h = h._next));
7210          return c;
7211        }),
7212        (ca.activate = function (a) {
7213          for (var b = a.length; --b > -1; )
7214            a[b].API === ca.API && (R[new a[b]()._propName] = a[b]);
7215          return !0;
7216        }),
7217        (s.plugin = function (a) {
7218          if (!(a && a.propName && a.init && a.API))
7219            throw 'illegal plugin definition.';
7220          var b,
7221            c = a.propName,
7222            d = a.priority || 0,
7223            e = a.overwriteProps,
7224            f = {
7225              init: '_onInitTween',
7226              set: 'setRatio',
7227              kill: '_kill',
7228              round: '_mod',
7229              mod: '_mod',
7230              initAll: '_onInitAllProps',
7231            },
7232            g = t(
7233              'plugins.' + c.charAt(0).toUpperCase() + c.substr(1) + 'Plugin',
7234              function () {
7235                (ca.call(this, c, d), (this._overwriteProps = e || []));
7236              },
7237              a.global === !0,
7238            ),
7239            h = (g.prototype = new ca(c));
7240          ((h.constructor = g), (g.API = a.API));
7241          for (b in f) 'function' == typeof a[b] && (h[f[b]] = a[b]);
7242          return ((g.version = a.version), ca.activate([g]), g);
7243        }),
7244        (f = a._gsQueue))
7245      ) {
7246        for (g = 0; g < f.length; g++) f[g]();
7247        for (h in q)
7248          q[h].func ||
7249            a.console.log('GSAP encountered missing dependency: ' + h);
7250      }
7251      j = !1;
7252    }
7253  })(
7254    'undefined' != typeof module &&
7255      module.exports &&
7256      'undefined' != typeof global
7257      ? global
7258      : this || window,
7259    'TweenMax',
7260  ));
7261
7262/*!
7263 * VERSION: 0.6.2
7264 * DATE: 2018-02-15
7265 * UPDATES AND DOCS AT: http://greensock.com
7266 *
7267 * @license Copyright (c) 2008-2018, GreenSock. All rights reserved.
7268 * This work is subject to the terms at http://greensock.com/standard-license or for
7269 * Club GreenSock members, the software agreement that was issued with your membership.
7270 *
7271 * @author: Jack Doyle, [email protected]
7272 */
7273var _gsScope =
7274  'undefined' != typeof module && module.exports && 'undefined' != typeof global
7275    ? global
7276    : this || window;
7277((_gsScope._gsQueue || (_gsScope._gsQueue = [])).push(function () {
7278  'use strict';
7279  var a = function (b) {
7280      var c = b.nodeType,
7281        d = '';
7282      if (1 === c || 9 === c || 11 === c) {
7283        if ('string' == typeof b.textContent) return b.textContent;
7284        for (b = b.firstChild; b; b = b.nextSibling) d += a(b);
7285      } else if (3 === c || 4 === c) return b.nodeValue;
7286      return d;
7287    },
7288    b = '[-]|�[�-�]|�[�-�]|[⚔-⚗]|�[�-�]|[�-�][�-�]',
7289    c = new RegExp(b),
7290    d = new RegExp(b + '|.', 'g'),
7291    e = function (a, b) {
7292      return ('' !== b && b) || !c.test(a) ? a.split(b || '') : a.match(d);
7293    },
7294    f = _gsScope._gsDefine.plugin({
7295      propName: 'text',
7296      API: 2,
7297      version: '0.6.2',
7298      init: function (b, c, d, f) {
7299        var g,
7300          h = b.nodeName.toUpperCase();
7301        if (
7302          ('function' == typeof c && (c = c(f, b)),
7303          (this._svg = b.getBBox && ('TEXT' === h || 'TSPAN' === h)),
7304          !('innerHTML' in b || this._svg))
7305        )
7306          return !1;
7307        if (
7308          ((this._target = b),
7309          'object' != typeof c && (c = { value: c }),
7310          void 0 === c.value)
7311        )
7312          return ((this._text = this._original = ['']), !0);
7313        for (
7314          this._delimiter = c.delimiter || '',
7315            this._original = e(a(b).replace(/\s+/g, ' '), this._delimiter),
7316            this._text = e(c.value.replace(/\s+/g, ' '), this._delimiter),
7317            this._runBackwards = d.vars.runBackwards === !0,
7318            this._runBackwards &&
7319              ((h = this._original),
7320              (this._original = this._text),
7321              (this._text = h)),
7322            'string' == typeof c.newClass &&
7323              ((this._newClass = c.newClass), (this._hasClass = !0)),
7324            'string' == typeof c.oldClass &&
7325              ((this._oldClass = c.oldClass), (this._hasClass = !0)),
7326            h = this._original.length - this._text.length,
7327            g = 0 > h ? this._original : this._text,
7328            this._fillChar = c.fillChar || (c.padSpace ? '&nbsp;' : ''),
7329            0 > h && (h = -h);
7330          --h > -1;
7331        )
7332          g.push(this._fillChar);
7333        return !0;
7334      },
7335      set: function (a) {
7336        (a > 1 ? (a = 1) : 0 > a && (a = 0), this._runBackwards && (a = 1 - a));
7337        var b,
7338          c,
7339          d,
7340          e = this._text.length,
7341          f = (a * e + 0.5) | 0;
7342        (this._hasClass
7343          ? ((b = this._newClass && 0 !== f),
7344            (c = this._oldClass && f !== e),
7345            (d =
7346              (b ? "<span class='" + this._newClass + "'>" : '') +
7347              this._text.slice(0, f).join(this._delimiter) +
7348              (b ? '</span>' : '') +
7349              (c ? "<span class='" + this._oldClass + "'>" : '') +
7350              this._delimiter +
7351              this._original.slice(f).join(this._delimiter) +
7352              (c ? '</span>' : '')))
7353          : (d =
7354              this._text.slice(0, f).join(this._delimiter) +
7355              this._delimiter +
7356              this._original.slice(f).join(this._delimiter)),
7357          this._svg
7358            ? (this._target.textContent = d)
7359            : (this._target.innerHTML =
7360                '&nbsp;' === this._fillChar && -1 !== d.indexOf('  ')
7361                  ? d.split('  ').join('&nbsp;&nbsp;')
7362                  : d));
7363      },
7364    }),
7365    g = f.prototype;
7366  g._newClass = g._oldClass = g._delimiter = '';
7367}),
7368  _gsScope._gsDefine && _gsScope._gsQueue.pop()(),
7369  (function (a) {
7370    'use strict';
7371    var b = function () {
7372      return (_gsScope.GreenSockGlobals || _gsScope)[a];
7373    };
7374    'undefined' != typeof module && module.exports
7375      ? (require('../TweenLite.min.js'), (module.exports = b()))
7376      : 'function' == typeof define && define.amd && define(['TweenLite'], b);
7377  })('TextPlugin'));
7378
7379/**
7380 * Swiper 4.2.0
7381 * Most modern mobile touch slider and framework with hardware accelerated transitions
7382 * http://www.idangero.us/swiper/
7383 *
7384 * Copyright 2014-2018 Vladimir Kharlampidi
7385 *
7386 * Released under the MIT License
7387 *
7388 * Released on: March 16, 2018
7389 */
7390
7391/**************************************************************************************************
7392 * CommonSlider | 레이어를 x축 혹은 y축으로 움직이는 slider입니다.
7393 *
7394 * @class CommonSlider
7395 * @constructor
7396 * @version 1.0
7397 *
7398 * @param {Object} container jQuery 객체
7399 * @param {Object} options 옵션 객체
7400 *
7401 **************************************************************************************************/
7402(function ($) {
7403  'use strict';
7404
7405  window.CommonSlider = function (container, options) {
7406    if (this instanceof CommonSlider === false) {
7407      return new CommonSlider(container, options);
7408    }
7409
7410    var _this = this;
7411
7412    var container =
7413        typeof container === 'object' ? container : $('#' + container),
7414      opt = {
7415        autoPlay: true,
7416        axis: 'x',
7417        repeat: true,
7418        loop: true,
7419        lazyLoad: false,
7420        itemsPerView: 1,
7421        itemsPerMove: 1,
7422        startIndex: 0,
7423        interval: 6000,
7424        duration: 500,
7425        easing: 'swing',
7426        unit: 'px',
7427        pagination: undefined,
7428        prevBtn: undefined,
7429        nextBtn: undefined,
7430        init: undefined,
7431        before: undefined,
7432        after: undefined,
7433      };
7434
7435    for (var prop in options) {
7436      opt[prop] = options[prop];
7437    }
7438
7439    var wrapper = container.children('ul:first-child'),
7440      items = wrapper.children('li'),
7441      originalItems = items,
7442      length = items.length;
7443
7444    if (length - opt.itemsPerView < 1) return false;
7445
7446    var totalPage, pagingList;
7447
7448    var restItems = (length - opt.itemsPerMove) % opt.itemsPerMove;
7449    if (restItems === opt.itemsPerMove) restItems = 0;
7450
7451    var prevIndex = 0,
7452      index = 0,
7453      itemsD,
7454      diff = [];
7455
7456    var cloneClass = 'slider-clone';
7457
7458    var imgLoadComplete = false;
7459
7460    var cssProp;
7461
7462    var timerId,
7463      timerCleared = true,
7464      clearLists = [];
7465
7466    var resizeTimer = null;
7467
7468    var tweening = false,
7469      tween;
7470
7471    var method;
7472
7473    /*
7474     * CommonSlider class 초기화 함수
7475     *
7476     * @method initialize
7477     */
7478    this.initialize = function () {
7479      if (length - opt.itemsPerView >= 1) {
7480        if (opt.startIndex + 1 - opt.itemsPerView > 0)
7481          index = prevIndex = Math.ceil(
7482            (opt.startIndex + 1 - opt.itemsPerView) / opt.itemsPerMove,
7483          );
7484        cssProp =
7485          this.canIUse('transform') === true
7486            ? opt.axis
7487            : opt.axis === 'x'
7488              ? 'marginLeft'
7489              : 'marginTop';
7490        if (items.eq(0).css('position') === 'static')
7491          items.css({ position: 'relative' });
7492        items.css({ float: opt.axis === 'x' ? 'left' : 'none' });
7493        if (opt.loop === true) {
7494          items
7495            .filter(':gt(' + (length - 1 - opt.itemsPerView) + ')')
7496            .clone()
7497            .addClass(cloneClass)
7498            .prependTo(wrapper);
7499          items
7500            .filter(':lt(' + opt.itemsPerView + ')')
7501            .clone()
7502            .addClass(cloneClass)
7503            .appendTo(wrapper);
7504          $('.' + cloneClass, container).each(function () {
7505            _this.imgLoad($(this));
7506          });
7507        }
7508        var tempTotalPage =
7509          Math.ceil((length - opt.itemsPerView) / opt.itemsPerMove) + 1;
7510        totalPage =
7511          opt.loop === true
7512            ? tempTotalPage + (opt.itemsPerView - opt.itemsPerMove)
7513            : tempTotalPage;
7514        if (typeof opt.interval === 'number') {
7515          var interval = opt.interval;
7516          opt.interval = [];
7517          for (var i = 0; i < totalPage; i++) {
7518            opt.interval[i] = interval;
7519          }
7520        }
7521        if (typeof opt.pagination === 'object') {
7522          if (opt.pagination.children('li').length === 0) {
7523            opt.pagination.empty();
7524            for (var i = 0; i < totalPage; i++) {
7525              if (i === index)
7526                opt.pagination.append(
7527                  '<li class="on"><a href="#none">' + (i + 1) + '</a></li>',
7528                );
7529              else
7530                opt.pagination.append(
7531                  '<li><a href="#none">' + (i + 1) + '</a></li>',
7532                );
7533            }
7534          }
7535          pagingList = opt.pagination.children('li');
7536        }
7537        if (opt.lazyLoad === true) this.lazyLoad(true);
7538        this.setSliderProps();
7539        this.setTranslate();
7540        this.setHandler();
7541        this.timerCtrl();
7542      } else {
7543        opt.loop = false;
7544        totalPage = 1;
7545        if (opt.lazyLoad === true) this.lazyLoad(true);
7546        this.setSliderProps();
7547      }
7548      if (typeof opt.init === 'function') opt.init();
7549    };
7550
7551    /*
7552     * 이벤트 핸들러 및 타이머를 등록합니다.
7553     *
7554     * @method setHandler
7555     */
7556    this.setHandler = function () {
7557      if (opt.autoPlay === true) this.setTimer();
7558      if (typeof opt.pagination === 'object') {
7559        pagingList.children().click(this.toIdx);
7560        clearLists.push(pagingList.children());
7561      }
7562      if (typeof opt.prevBtn === 'object') {
7563        opt.prevBtn.click(this.toPrev);
7564        clearLists.push(opt.prevBtn);
7565      }
7566      if (typeof opt.nextBtn === 'object') {
7567        opt.nextBtn.click(this.toNext);
7568        clearLists.push(opt.nextBtn);
7569      }
7570      $(window).resize(this.resize);
7571    };
7572
7573    /*
7574     * 이벤트 핸들러 및 타이머를 제거합니다.
7575     *
7576     * @method remHandler
7577     */
7578    this.remHandler = function () {
7579      if (opt.autoPlay === true) this.clearTimer();
7580      if (typeof opt.pagination === 'object')
7581        pagingList.children().unbind('click', this.toIdx);
7582      if (typeof opt.prevBtn === 'object')
7583        opt.prevBtn.unbind('click', this.toPrev);
7584      if (typeof opt.nextBtn === 'object')
7585        opt.nextBtn.unbind('click', this.toNext);
7586      $(window).unbind('resize', this.resize);
7587    };
7588
7589    /*
7590     * 타이머를 등록합니다.
7591     *
7592     * @method setTimer
7593     */
7594    this.setTimer = function () {
7595      if (timerCleared === true) {
7596        timerId = setTimeout(_this.timer, opt.interval[index]);
7597        timerCleared = false;
7598      }
7599    };
7600
7601    /*
7602     * 타이머를 제거합니다.
7603     *
7604     * @method clearTimer
7605     */
7606    this.clearTimer = function () {
7607      if (timerCleared === false) {
7608        clearTimeout(timerId);
7609        timerCleared = true;
7610      }
7611    };
7612
7613    /*
7614     * 타이머가 작동하면 toNext @method를 호출합니다.
7615     *
7616     * @method timer
7617     */
7618    this.timer = function () {
7619      _this.toNext();
7620    };
7621
7622    /*
7623     * 이전 프레임으로 이동합니다.
7624     *
7625     * @method toPrev
7626     */
7627    this.toPrev = function () {
7628      if (tweening === false) {
7629        index--;
7630        if (opt.repeat === false && index === -1) {
7631          index++;
7632          _this.clearTimer();
7633          return false;
7634        }
7635        index = index === -1 ? totalPage - 1 : index;
7636        if (opt.lazyLoad === true && imgLoadComplete === false)
7637          _this.lazyLoad();
7638        method = 'toPrev';
7639        if (index !== prevIndex) _this.slide();
7640      }
7641    };
7642
7643    /*
7644     * 다음 프레임으로 이동합니다.
7645     *
7646     * @method toNext
7647     */
7648    this.toNext = function () {
7649      if (tweening === false) {
7650        index++;
7651        if (opt.repeat === false && index === totalPage) {
7652          index--;
7653          _this.clearTimer();
7654          return false;
7655        }
7656        index = index === totalPage ? 0 : index;
7657        if (opt.lazyLoad === true && imgLoadComplete === false)
7658          _this.lazyLoad();
7659        method = 'toNext';
7660        if (index !== prevIndex) _this.slide();
7661      }
7662    };
7663
7664    /*
7665     * 해당 index 프레임으로 이동합니다.
7666     *
7667     * @method toIdx
7668     * @param {Object} e 이벤트 객체 혹은 인덱스 번호
7669     */
7670    this.toIdx = function (e) {
7671      if (tweening === false) {
7672        index = typeof e === 'object' ? $(this).closest('li').index() : e;
7673        if (opt.lazyLoad === true && imgLoadComplete === false)
7674          _this.lazyLoad();
7675        method = 'toIdx';
7676        if (index !== prevIndex) _this.slide();
7677      }
7678      if (typeof e === 'object') e.preventDefault();
7679    };
7680
7681    /*
7682     * slide합니다.
7683     *
7684     * @method slide
7685     */
7686    this.slide = function () {
7687      tweening = true;
7688      if (opt.autoPlay === true) this.clearTimer();
7689      if (typeof opt.pagination === 'object') {
7690        pagingList.filter('.on').removeClass('on');
7691        pagingList.eq(index).addClass('on');
7692      }
7693      if (typeof opt.before === 'function')
7694        opt.before(index, prevIndex, method);
7695      var tweenProps = {
7696        ease: opt.easing,
7697        onComplete: function () {
7698          _this.setTranslate();
7699          if (typeof opt.after === 'function')
7700            opt.after(index, prevIndex, method);
7701          if (opt.autoPlay === true) _this.setTimer();
7702          prevIndex = index;
7703          tweening = false;
7704        },
7705      };
7706      tweenProps[cssProp] = _this.getTranslate();
7707      tween = TweenMax.to(wrapper, opt.duration / 1000, tweenProps);
7708    };
7709
7710    /*
7711     * resize 이벤트 핸들러
7712     *
7713     * @method resize
7714     */
7715    this.resize = function () {
7716      clearTimeout(resizeTimer);
7717      resizeTimer = setTimeout(function () {
7718        _this.setSliderProps();
7719        if (tweening === true) {
7720          tween.vars.css[cssProp] = _this.getTranslate();
7721          tween.invalidate();
7722        } else {
7723          _this.setTranslate();
7724        }
7725      }, 100);
7726    };
7727
7728    /*
7729     * 슬라이더 크기 및 이동 값 조정
7730     *
7731     * @method setSliderProps
7732     */
7733    this.setSliderProps = function () {
7734      itemsD =
7735        opt.axis === 'x'
7736          ? parseFloat(container.css('width'), 10)
7737          : parseFloat(container.css('height'), 10);
7738      if (opt.itemsPerView > 1) {
7739        if (opt.unit === 'px')
7740          itemsD =
7741            opt.axis === 'x'
7742              ? items.eq(0).outerWidth(true)
7743              : items.eq(0).outerHeight(true);
7744        else itemsD = itemsD / opt.itemsPerView;
7745      }
7746      if (opt.axis === 'x') {
7747        if (opt.loop === true)
7748          wrapper.width(itemsD * (length + opt.itemsPerView * 2));
7749        else wrapper.width(itemsD * length);
7750        if (opt.itemsPerView === 1 || opt.unit !== 'px')
7751          wrapper.children('li').width(itemsD);
7752      } else {
7753        if (opt.loop === true)
7754          wrapper.height(itemsD * (length + opt.itemsPerView * 2));
7755        else wrapper.height(itemsD * length);
7756        if (opt.itemsPerView === 1 || opt.unit !== 'px')
7757          wrapper.children('li').height(itemsD);
7758      }
7759      for (var i = 0; i < totalPage; i++) {
7760        if (opt.loop === true) {
7761          if (i > 0) diff[i] = diff[0] - itemsD * opt.itemsPerMove * i;
7762          else diff[i] = -(itemsD * opt.itemsPerView);
7763        } else {
7764          diff[i] = -(itemsD * opt.itemsPerMove * i);
7765        }
7766        if (restItems > 0 && i === totalPage - 1)
7767          diff[i] = diff[i - 1] - itemsD * restItems;
7768      }
7769    };
7770
7771    /*
7772     * wrapper의 이동 값을 구합니다.
7773     *
7774     * @method getTranslate
7775     */
7776    this.getTranslate = function () {
7777      var value;
7778      if (opt.loop === true && method === 'toPrev' && index === totalPage - 1) {
7779        value = diff[0] + opt.itemsPerMove * itemsD;
7780      } else if (opt.loop === true && method === 'toNext' && index === 0) {
7781        value = diff[totalPage - 1] - opt.itemsPerMove * itemsD;
7782      } else {
7783        value = diff[index];
7784      }
7785      return value;
7786    };
7787
7788    /*
7789     * wrapper의 위치를 조정합니다.
7790     *
7791     * @method setTranslate
7792     */
7793    this.setTranslate = function () {
7794      var tempObj = {};
7795      tempObj[cssProp] = diff[index];
7796      TweenMax.set(wrapper, tempObj);
7797    };
7798
7799    /*
7800     * 해당 영역에 도달하면 이미지를 로드합니다.
7801     *
7802     * @method lazyLoad
7803     * @param {Boolean} init 옵션
7804     */
7805    this.lazyLoad = function (init) {
7806      if (typeof init === 'boolean' && init === true) {
7807        var prop = opt.itemsPerView;
7808        var dist = 1;
7809      } else {
7810        var prop = opt.itemsPerMove;
7811        var dist = Math.abs(index - prevIndex);
7812      }
7813      for (
7814        var i = index * prop, j = 0, idx;
7815        i < (index + dist) * opt.itemsPerView;
7816        i++
7817      ) {
7818        if (i < length) idx = i;
7819        else {
7820          idx = j;
7821          j++;
7822        }
7823        if (items.eq(idx).length > 0) this.imgLoad(items.eq(idx));
7824      }
7825    };
7826
7827    /*
7828     * 해당 영역에 도달하면 이미지를 로드합니다.
7829     *
7830     * @method imgLoad
7831     * @param {Object} el 이미지의 부모 요소
7832     */
7833    this.imgLoad = function (el) {
7834      el.data('lazyLoad', true);
7835      var imgs = el.find('img');
7836      for (var i = 0; i < imgs.length; i++) {
7837        if (typeof imgs.eq(i).data('src') === 'string') {
7838          imgs.eq(i).attr('src', imgs.eq(i).data('src'));
7839          imgs.eq(i).removeData('src');
7840        }
7841      }
7842    };
7843
7844    /*
7845     * 브라우저 구현 여부를 체크합니다.
7846     *
7847     * @method canIUse
7848     * @param {String} style 체크할 css 속성
7849     */
7850    this.canIUse = function (style) {
7851      var el = document.createElement('div'),
7852        testCssProp = [
7853          '-webkit-' + style,
7854          '-moz-' + style,
7855          '-ms-' + style,
7856          style,
7857        ];
7858
7859      for (var i = 0; i < testCssProp.length; i++) {
7860        if (typeof el.style[testCssProp[i]] === 'string') {
7861          return true;
7862          break;
7863        }
7864      }
7865
7866      return false;
7867    };
7868
7869    /*
7870     * click 이벤트를 통해 slider를 제어하는 요소에 마우스를 올리거나 포커스를 이동하면 타이머를 제거합니다.
7871     *
7872     * @method timerCtrl
7873     */
7874    this.timerCtrl = function () {
7875      this.clearT = function () {
7876        if (opt.autoPlay === true) _this.clearTimer();
7877      };
7878      this.setT = function () {
7879        if (opt.autoPlay === true) _this.setTimer();
7880      };
7881      for (var i = 0; i < clearLists.length; i++) {
7882        clearLists[i].bind('mouseenter focusin', this.clearT);
7883        clearLists[i].bind('mouseleave focusout', this.setT);
7884      }
7885    };
7886
7887    /*
7888     * autoPlay를 비활성화합니다.
7889     *
7890     * @method stop
7891     */
7892    this.stop = function () {
7893      opt.autoPlay = false;
7894      this.clearTimer();
7895    };
7896
7897    /*
7898     * autoPlay를 활성화합니다.
7899     *
7900     * @method play
7901     */
7902    this.play = function (cb) {
7903      if (typeof cb === 'function') cb(index);
7904      opt.autoPlay = true;
7905      this.setTimer();
7906    };
7907
7908    /*
7909     * 모든 기능을 정지하고 DOM을 초기화합니다.
7910     *
7911     * @method kill
7912     */
7913    this.kill = function () {
7914      wrapper.html(originalItems);
7915      this.setTranslate(0);
7916      this.remHandler();
7917      for (var i = 0; i < clearLists.length; i++) {
7918        clearLists[i].unbind('mouseenter focusin', this.clearT);
7919        clearLists[i].unbind('mouseleave focusout', this.setT);
7920        clearLists[i] = null;
7921      }
7922    };
7923
7924    // CommonSlider class 초기화 함수를 호출합니다.
7925    this.initialize();
7926  };
7927})(jQuery);
7928
7929/**************************************************************************************************
7930 * SmsModule | Sms 모듈에 관련된 모든 기능을 담당합니다.
7931 *
7932 * @class SmsModule
7933 * @constructor
7934 * @version 1.0
7935 *
7936 * @param {String} container_id 컨테이너 id 값
7937 * @param {String} type Sms 모듈 타입
7938 *
7939 **************************************************************************************************/
7940(function ($) {
7941  'use strict';
7942
7943  window.SmsModule = function (container_id, type) {
7944    var _this = this;
7945
7946    var body = $('body'),
7947      container,
7948      blockBg,
7949      videoId = 'smsMovie',
7950      open = false;
7951
7952    /*
7953     * Sms class 초기화 함수
7954     *
7955     * @method initialize
7956     */
7957    this.initialize = function () {
7958      if (typeof type === 'undefined') {
7959        $('.bindSmsModalOpen').click(function (e) {
7960          if (open === false) {
7961            _this.modalOpen();
7962            open = true;
7963          }
7964          e.preventDefault();
7965        });
7966      } else {
7967        container = $('#' + container_id);
7968        for (var i = 0; i < $('.labeling', container).length; i++) {
7969          this.labeling($('.labeling', container).eq(i));
7970        }
7971        $('.bindSmsSubmit', container).click(function (e) {
7972          _this.send(this.form);
7973          e.preventDefault();
7974        });
7975      }
7976    };
7977
7978    /*
7979     * SMS 모달창을 엽니다.
7980     *
7981     * @method modalOpen
7982     */
7983    this.modalOpen = function () {
7984      var requestUrl = CONST_REQUEST_ROOT + '/sms/smspop.php';
7985      $.post(
7986        requestUrl,
7987        { root: CONST_REQUEST_ROOT },
7988        function (response) {
7989          body.append(
7990            '<div id="blockBg" style="position:fixed;left:0;top:0;z-index:990;width:100%;height:100%;background:#999"></div>',
7991          );
7992          blockBg = $('#blockBg');
7993          blockBg.css('opacity', 0.7);
7994          body.append(response);
7995          container = $('#' + container_id);
7996          container.slideDown(400, function () {
7997            _this.step1Control();
7998          });
7999        },
8000        'html',
8001      ).error(function (e) {
8002        alert(e.statusText);
8003      });
8004    };
8005
8006    /*
8007     * 첫 번째 단계에 필요한 이벤트를 등록합니다.
8008     *
8009     * @method step1Control
8010     */
8011    this.step1Control = function () {
8012      $('.bindSmsModalX', container).click(function () {
8013        _this.modalX();
8014      });
8015      $('.bindSmsNext', container).click(function () {
8016        _this.next();
8017      });
8018    };
8019
8020    /*
8021     * SMS 모달창을 닫습니다.
8022     *
8023     * @method modalX
8024     */
8025    this.modalX = function () {
8026      if ($('iframe', container).length > 0) $('iframe', container).remove();
8027      container.remove();
8028      blockBg.fadeOut(100, function () {
8029        $(this).remove();
8030        open = false;
8031      });
8032    };
8033
8034    /*
8035     * 개인정보보호정책에 동의하면 내용 입력 단계로 넘어갑니다.
8036     *
8037     * @method next
8038     * @params {Obejct} f 동의 여부 체크할 폼
8039     */
8040    this.next = function () {
8041      var chkBox = $('.chk_sms_agree', container);
8042      if (chkBox.is(':checked') === false) {
8043        chkBox.focus();
8044        alert('개인정보수집관련 동의사항에 체크해주세요');
8045      } else {
8046        $('.step1', container).hide();
8047        $('.step2', container).show(0, function () {
8048          if ($('iframe', container).length > 0) {
8049            $('iframe', container).attr(
8050              'src',
8051              $('iframe', container)
8052                .attr('src')
8053                .replace('autoplay=0', 'autoplay=1'),
8054            );
8055          }
8056        });
8057        this.step2Control();
8058      }
8059    };
8060
8061    /*
8062     * SMS 전송 폼을 컨트롤합니다.
8063     *
8064     * @method step2Control
8065     */
8066    this.step2Control = function () {
8067      this.smsContent = $('.bindSmsLimitBytes', container);
8068      this.textLimit = $('.textlimit', container);
8069      this.bytesLimit = 60;
8070
8071      this.labeling(this.smsContent);
8072      this.smsContent.keyup(function () {
8073        _this.limitBytes(this.value);
8074      });
8075      $('.bindSmsSubmit', container).click(function (e) {
8076        _this.send(this.form);
8077        e.preventDefault();
8078      });
8079    };
8080
8081    /*
8082     * 해당하는 입력 폼의 라벨 텍스트를 보여주거나 감춥니다.
8083     *
8084     * @method labeling
8085     * @param {Object} input 해당하는 입력 폼
8086     */
8087    this.labeling = function (input) {
8088      var label = $('[for="' + input.attr('id') + '"]', container);
8089      var def = label.html();
8090      input
8091        .focusin(function () {
8092          label.empty();
8093        })
8094        .focusout(function () {
8095          if ($(this).val() == '') label.html(def);
8096        });
8097      label.click(function () {
8098        input.focus();
8099      });
8100    };
8101
8102    /*
8103     * SMS로 보낼 문자열을 정해진 바이트로 제한합니다.
8104     *
8105     * @method limitBytes
8106     */
8107    this.limitBytes = function (s) {
8108      var bytes = this.getBytesOfString(s);
8109      this.textLimit.text(bytes);
8110      if (bytes > this.bytesLimit) {
8111        alert(
8112          '최대 ' +
8113            this.bytesLimit +
8114            'byte이므로 초과된 글자수는 자동으로 삭제됩니다.',
8115        );
8116        var str = this.cutStr(s);
8117        this.smsContent.val(str);
8118        this.textLimit.text(this.bytesLimit);
8119      }
8120    };
8121
8122    /*
8123     * 입력된 문자의 바이트를 계산합니다.
8124     *
8125     * @method getBytesOfString
8126     * @param {String} s 입력된 문자열
8127     * @return {Number} 문자열 바이트
8128     */
8129    this.getBytesOfString = function (s) {
8130      var nbytes = 0;
8131      for (var i = 0; i < s.length; i++) {
8132        var ch = s.charAt(i);
8133        if (escape(ch).length > 4) nbytes += 2;
8134        else if (ch == '\n') {
8135          if (s.charAt(i - 1) != '\r') nbytes += 1;
8136        } else if (ch == '<' || ch == '>') nbytes += 4;
8137        else nbytes += 1;
8138      }
8139      return nbytes;
8140    };
8141
8142    /*
8143     * 제한된 바이트를 넘어 간 문자를 잘라냅니다.
8144     *
8145     * @method cutStr
8146     * @param {String} s 잘라낼 문자열
8147     * @return {String} 잘라낸 문자열
8148     */
8149    this.cutStr = function (s) {
8150      var nbytes = 0;
8151      var inc = 0;
8152      var strlen = s.length;
8153      var str = '';
8154      for (var i = 0; i < strlen; i++) {
8155        var ch = s.charAt(i);
8156        if (escape(ch).length > 4) inc = 2;
8157        else if (ch == '\n') {
8158          if (s.charAt(i - 1) != '\r') inc = 1;
8159        } else if (ch == '<' || ch == '>') inc = 4;
8160        else inc = 1;
8161        if (nbytes + inc > this.bytesLimit) break;
8162        nbytes += inc;
8163        str += ch;
8164      }
8165      return str;
8166    };
8167    /*
8168     * SMS 폼을 검사하고 ajax 방식으로 전송합니다.
8169     *
8170     * @method send
8171     * @params {Object} f 전송할 폼
8172     */
8173    this.send = function (f) {
8174      if (type === 'gOrder') {
8175        if (
8176          typeof f.chk_sms_agree !== 'undefined' &&
8177          f.chk_sms_agree.checked === false
8178        ) {
8179          f.chk_sms_agree.focus();
8180          alert('개인정보수집관련 동의사항에 체크해주세요');
8181          return false;
8182        } else if (f.name.value === '') {
8183          f.name.focus();
8184          alert('이름을 입력해주세요');
8185          return false;
8186        } else if (f.name.value.indexOf(' ') !== -1) {
8187          f.name.value = '';
8188          f.name.focus();
8189          alert('이름에는 공백문자를 포함할 수 없습니다.');
8190          return false;
8191        } else if (f.name.value.length < 2) {
8192          f.name.focus();
8193          alert('이름은 두 글자 이상 입력하셔야 합니다.');
8194          return false;
8195        } else if (f.hp.value === '') {
8196          f.hp.focus();
8197          alert('연락처를 입력해주세요.');
8198          return false;
8199        } else if (
8200          /^(01[016789]{1}|02|0[3-9]{1}[0-9]{1})-?[0-9]{3,4}-?[0-9]{4}$/.test(
8201            f.hp.value,
8202          ) === false
8203        ) {
8204          f.hp.value = '';
8205          f.hp.focus();
8206          alert('올바른 전화번호가 아닙니다.');
8207          return false;
8208        } else if (
8209          typeof f.special_03 !== 'undefined' &&
8210          f.special_03.value === ''
8211        ) {
8212          f.special_03.focus();
8213          alert('희망지역을 입력해주세요.');
8214          return false;
8215        } else if (
8216          typeof f.special_01 !== 'undefined' &&
8217          f.special_01.value === ''
8218        ) {
8219          f.special_01.focus();
8220          alert('희망하는 날짜를 입력해주세요.');
8221          return false;
8222        } else {
8223          openRecheckModal(f, true);
8224          // f.submit();
8225          // f.reset();
8226          return false;
8227          // $.post(f.action, $(f).serialize() + '&root=' + CONST_REQUEST_ROOT, function(response) {
8228          // 	alert('담당자에게 전송되었습니다.\n확인후 연락드리겠습니다. 감사합니다.');
8229          // 	if(typeof type === 'undefined') _this.modalX();
8230          // 	else f.reset();
8231          // }, 'text').error(function(e) {
8232          //     alert('전송이 실패했습니다. 다시 시도해 주시기 바랍니다.');
8233          // });
8234        }
8235      } else {
8236        if (
8237          typeof f.chk_sms_agree !== 'undefined' &&
8238          f.chk_sms_agree.checked === false
8239        ) {
8240          f.chk_sms_agree.focus();
8241          alert('개인정보수집관련 동의사항에 체크해주세요');
8242          return false;
8243        } else if (f.name.value === '') {
8244          f.name.focus();
8245          alert('이름을 입력해주세요');
8246          return false;
8247        } else if (f.name.value.indexOf(' ') !== -1) {
8248          f.name.value = '';
8249          f.name.focus();
8250          alert('이름에는 공백문자를 포함할 수 없습니다.');
8251          return false;
8252        } else if (f.name.value.length < 2) {
8253          f.name.focus();
8254          alert('이름은 두 글자 이상 입력하셔야 합니다.');
8255          return false;
8256        } else if (f.hp.value === '') {
8257          f.hp.focus();
8258          alert('연락처를 입력해주세요');
8259          return false;
8260        } else if (
8261          /^(01[016789]{1}|02|0[3-9]{1}[0-9]{1})-?[0-9]{3,4}-?[0-9]{4}$/.test(
8262            f.hp.value,
8263          ) === false
8264        ) {
8265          f.hp.value = '';
8266          f.hp.focus();
8267          alert('올바른 전화번호가 아닙니다.');
8268          return false;
8269        } else if (typeof f.cont !== 'undefined' && f.cont.value === '') {
8270          f.cont.focus();
8271          alert('내용을 입력해주세요');
8272          return false;
8273        } else if (
8274          typeof f.special_03 !== 'undefined' &&
8275          f.special_03.value === ''
8276        ) {
8277          f.special_03.focus();
8278          alert('희망지역을 입력해주세요');
8279          return false;
8280        } else if (
8281          typeof f.special_06 !== 'undefined' &&
8282          f.special_06.value === ''
8283        ) {
8284          f.special_06.focus();
8285          alert('유입경로를 선택해주세요');
8286          return false;
8287        } else {
8288          openRecheckModal(f, false);
8289          // f.submit();
8290          // f.reset();
8291          return false;
8292          // $.post(f.action, $(f).serialize() + '&root=' + CONST_REQUEST_ROOT, function(response) {
8293          // 	alert('담당자에게 전송되었습니다.\n확인후 연락드리겠습니다. 감사합니다.');
8294          // 	if(typeof type === 'undefined') _this.modalX();
8295          // 	else f.reset();
8296          // }, 'text').error(function(e) {
8297          //     alert('전송이 실패했습니다. 다시 시도해 주시기 바랍니다.');
8298          // });
8299        }
8300      }
8301    };
8302
8303    // Sms class 초기화 함수를 호출합니다.
8304    this.initialize();
8305  };
8306})(jQuery);
8307
8308/**************************************************************************************************
8309 * openRecheckModal | 가맹 상담폼 주요정보 재확인
8310 *
8311 * @class openRecheckModal
8312 * @constructor
8313 * @version 1.0
8314 *
8315 **************************************************************************************************/
8316(function ($) {
8317  'use strict';
8318
8319  window.openRecheckModal = function (f, policyChecked) {
8320    //reset css
8321    $('.inqRecheckWrap').hide();
8322    $('.inqRecheckBG').stop().css({ opacity: 0 });
8323    $('.inqRecheckBG').stop().css({ opacity: 0 });
8324    $('.progressBlock').hide();
8325    $('#recheck_policy_agree').prop('checked', policyChecked);
8326    //insert user info
8327    $('.inqRecheckLayer .user_info').html('');
8328
8329    var special07Html = '';
8330    special07Html +=
8331      '<input type="radio" name="special_07" value="가맹문의" id="inquiry_fran">&nbsp;';
8332    special07Html += '<label for="inquiry_fran">가맹문의</label>&nbsp;&nbsp;';
8333    special07Html +=
8334      '<input type="radio" name="special_07" value="매장소개" id="inquiry_partner">&nbsp;';
8335    special07Html +=
8336      '<label for="inquiry_partner">매장소개</label>&nbsp;&nbsp;';
8337    special07Html +=
8338      '<input type="radio" name="special_07" value="기타" id="inquiry_other">&nbsp;';
8339    special07Html += '<label for="inquiry_other">기타</label>';
8340
8341    var _dl = $('<dl><dt></dt><dd class="inquiry_wrap"></dd></dl>');
8342    $('dt', _dl).text('문의');
8343    $('dd', _dl).html(special07Html);
8344    $('.inqRecheckLayer .user_info').append(_dl);
8345
8346    if (typeof f.name !== 'undefined' && f.name.value.length > 0) {
8347      var _dl = $('<dl><dt></dt><dd></dd></dl>');
8348      $('dt', _dl).text('이름');
8349      $('dd', _dl).text(f.name.value);
8350      $('.inqRecheckLayer .user_info').append(_dl);
8351    }
8352    if (typeof f.hp !== 'undefined' && f.hp.value.length > 0) {
8353      var mobileNumber = f.hp.value;
8354      mobileNumber = mobileNumber.replace(/[^0-9]/g, '');
8355      mobileNumber = mobileNumber.replace(
8356        /^(\d{2,3})(\d{3,4})(\d{4})$/,
8357        '$1-$2-$3',
8358      );
8359      var _dl = $('<dl><dt></dt><dd class="mobileNumber"></dd></dl>');
8360      $('dt', _dl).text('연락처');
8361      $('dd', _dl).text(mobileNumber);
8362      $('.inqRecheckLayer .user_info').append(_dl);
8363    }
8364    if (typeof f.special_03 !== 'undefined' && f.special_03.value.length > 0) {
8365      var _dl = $('<dl><dt></dt><dd></dd></dl>');
8366      $('dt', _dl).text('주소');
8367      $('dd', _dl).text(f.special_03.value);
8368      $('.inqRecheckLayer .user_info').append(_dl);
8369    }
8370    if (typeof f.special_01 !== 'undefined' && f.special_01.value.length > 0) {
8371      var _dl = $('<dl><dt></dt><dd></dd></dl>');
8372      $('dt', _dl).text('희망일');
8373      $('dd', _dl).text(f.special_01.value);
8374      $('.inqRecheckLayer .user_info').append(_dl);
8375    }
8376    if (typeof f.special_06 !== 'undefined' && f.special_06.value.length > 0) {
8377      var _dl = $('<dl><dt></dt><dd></dd></dl>');
8378      $('dt', _dl).text('유입경로');
8379      $('dd', _dl).text(f.special_06.value);
8380      $('.inqRecheckLayer .user_info').append(_dl);
8381    }
8382    //start Anim
8383    $('.inqRecheckWrap').show();
8384    $('.inqRecheckBG').animate({ opacity: 1 }, { duration: 450 });
8385    $('.inqRecheckLayer')
8386      .delay(200)
8387      .animate({ marginTop: 0, opacity: 1 }, { duration: 350 });
8388    //btn 이벤트 등록
8389    $('.inqRecheckLayer .btn_close').off();
8390    $('.inqRecheckBG').off();
8391    $('.inqRecheckLayer .btn_complete').off();
8392    $('.inqRecheckLayer .btn_close').click(function () {
8393      $('.inqRecheckBG').stop().animate({ opacity: 0 }, { duration: 350 });
8394      $('.inqRecheckLayer')
8395        .stop()
8396        .animate(
8397          { opacity: 0 },
8398          {
8399            duration: 350,
8400            complete: function () {
8401              $('.inqRecheckWrap').hide();
8402            },
8403          },
8404        );
8405    });
8406    $('.inqRecheckBG').click(function () {
8407      $('.inqRecheckLayer .btn_close').trigger('click');
8408    });
8409    var special_07_input = $('<input type="hidden" name="special_07">');
8410    $(f).append(special_07_input);
8411
8412    $('body').on('change', '.inquiry_wrap input', function () {
8413      f.special_07.value = $(this).val();
8414    });
8415
8416    $('.inqRecheckLayer .btn_complete').click(function () {
8417      if (
8418        $('#recheck_policy_agree').length > 0 &&
8419        $('#recheck_policy_agree').is(':checked') === false
8420      ) {
8421        alert('개인정보수집관련 동의사항에 체크해주세요');
8422        return false;
8423      }
8423 else if (f.special_07.value == '') {
8424        alert('문의유형을 선택해주세요.');
8425        return false;
8426      }
8427      $('.progressBlock').show();
8428      f.submit();
8429      f.reset();
8430    });
8431  };
8432})(jQuery);
8433
8434/**************************************************************************************************
8435 * Policy | 홈페이지 정책에 관련된 모달창을 띄우거나 닫습니다.
8436 *
8437 * @class Policy
8438 * @constructor
8439 * @version 1.0
8440 *
8441 **************************************************************************************************/
8442(function ($) {
8443  'use strict';
8444
8445  window.Policy = function () {
8446    var _this = this;
8447
8448    var body = $('body'),
8449      container,
8450      blockBg,
8451      open = false;
8452
8453    /*
8454     * Policy class 초기화 함수
8455     *
8456     * @method initialize
8457     */
8458    this.initialize = function () {
8459      $('.bindPolicyModalOpen').click(function (e) {
8460        if (open === false) {
8461          var i = $(this).data('type');
8462          _this.modalOpen(i);
8463          open = true;
8464        }
8465        e.preventDefault();
8466      });
8467    };
8468
8469    /*
8470     * 개인정보보호정책 등의 내용이 담긴 모달창을 띄웁니다.
8471     *
8472     * @method modalOpen
8473     * @param {Number} i 인덱스 번호
8474     */
8475    this.modalOpen = function (i) {
8476      var requestUrl = CONST_REQUEST_ROOT + '/policy/policy.php';
8477
8478      var MODAL_W = 842,
8479        MODAL_H = 572,
8480        MODAL_MARGIN_LEFT = -(MODAL_W / 2);
8481
8482      $.post(
8483        requestUrl,
8484        { content: i, root: CONST_REQUEST_ROOT },
8485        function (response) {
8486          body.append(
8487            '<div id="blockBg" style="position:fixed;left:0;top:0;z-index:990;width:100%;height:100%;background:#999"></div>',
8488          );
8489          blockBg = $('#blockBg');
8490          blockBg.css('opacity', 0.7);
8491          body.append(response);
8492          container = $('#policyWrap');
8493          var policy = $('#policy'),
8494            scrollTop = win.scrollTop(),
8495            winH = win.innerHeight(),
8496            initTop = winH / 2 - container.height() / 2 - 50 + scrollTop,
8497            top = winH / 2 - MODAL_H / 2 + scrollTop;
8498          container.css('top', initTop);
8499          setTimeout(function () {
8500            $('#policyLoader').remove();
8501            container.animate(
8502              {
8503                top: top,
8504                width: MODAL_W,
8505                height: MODAL_H,
8506                marginLeft: MODAL_MARGIN_LEFT,
8507              },
8508              800,
8509              function () {
8510                policy.fadeIn(200, function () {
8511                  $('#bindPolicyModalX').click(_this.modalX);
8512                });
8513              },
8514            );
8515          }, 200);
8516        },
8517        'html',
8518      ).error(function (e) {
8519        alert(e.statusText);
8520      });
8521    };
8522
8523    /*
8524     * 모달창을 닫습니다.
8525     *
8526     * @method modalX
8527     */
8528    this.modalX = function (e) {
8529      container.animate({ width: 0 }, 600, function () {
8530        $(this).remove();
8531        blockBg.fadeOut(100, function () {
8532          $(this).remove();
8533          open = false;
8534        });
8535      });
8536      e.preventDefault();
8537    };
8538
8539    // Policy class 초기화 함수를 호출합니다.
8540    this.initialize();
8541  };
8542})(jQuery);
8543
8544/**************************************************************************************************
8545 * Popup | 팝업을 관리합니다.
8546 *
8547 * @class Popup
8548 * @constructor
8549 * @version 1.0
8550 *
8551 * @param {String} type 팝업 타입
8552 * @param {Object} options 옵션
8553 **************************************************************************************************/
8554(function ($) {
8555  'use strict';
8556
8557  window.Popup = function (type, options) {
8558    var _this = this;
8559
8560    var opt = { callback: false };
8561
8562    for (var prop in options) {
8563      opt[prop] = options[prop];
8564    }
8565
8566    var body = $('body');
8567
8568    /*
8569     * Popup class 초기화 함수
8570     *
8571     * @method initialize
8572     */
8573    this.initialize = function () {
8574      switch (type) {
8575        case 'type02':
8576          this.type02();
8577          break;
8578        case 'type03':
8579          this.type03();
8580          break;
8581        case 'type04':
8582          this.type04();
8583          break;
8584        default:
8585          break;
8586      }
8587      this.setHandler();
8588      if (typeof window.dragger === 'undefined') this.drag();
8589    };
8590
8591    this.type02 = function () {
8592      var tempPopup = $('.popup_' + type);
8593      if (
8594        typeof opt.callback === 'function' &&
8595        tempPopup.length === 0 &&
8596        $('[id^=popup]').length === 0
8597      ) {
8598        opt.callback();
8599        return false;
8600      }
8601      // if(tempPopup.length > 0 && typeof opt.callback === 'function') {
8602      // 	body.append('<div id="popup' + type + 'Block"></div>');
8603      // 	$('#popup' + type + 'Block').css('opacity', 0.8);
8604      // }
8605      for (var i = 0; i < tempPopup.length; i++) {
8606        $('#popup' + tempPopup.eq(i).data('index'))
8607          .css({ top: '-=80' })
8608          .show(0)
8609          .animate({ opacity: 1, top: '+=80' }, 500);
8610      }
8611    };
8612
8613    this.type03 = function () {
8614      var container = $('#popupWrap'),
8615        containerH = parseInt(container.css('height'), 10),
8616        fixed = $('.popup_fixed');
8617      if (
8618        typeof opt.callback === 'function' &&
8619        container.length === 0 &&
8620        $('[id^=popup]').length === 0
8621      ) {
8622        opt.callback();
8623        return false;
8624      }
8625      if (fixed.length > 0)
8626        fixed.animate({ top: containerH }, 700, 'easeOutExpo');
8627      container.slideDown(700, 'easeInExpo');
8628      $('#hpopupX, #hpopcheck').click(function (e) {
8629        if ($(this).is('#hpopcheck') === true)
8630          _this.setCookie('hpopup', 'hide', 1);
8631        if (fixed.length > 0) fixed.animate({ top: 0 }, 500, 'easeOutExpo');
8632        container.slideUp(500, 'easeOutExpo', function () {
8633          $(this).remove();
8634          if (
8635            typeof opt.callback === 'function' &&
8636            $('[id^=popup]').length === 0
8637          )
8638            opt.callback();
8639        });
8640        e.preventDefault();
8641      });
8642    };
8643
8644    this.type04 = function () {
8645      function delayLoad(popupID, delay) {
8646        setTimeout(function () {
8647          $(popupID)
8648            .css({ marginTop: '-=80' })
8649            .show(0)
8650            .animate({ opacity: 1, marginTop: '+=80' }, 500);
8651        }, delay);
8652      }
8653      var tempPopup = $('.popup_' + type);
8654      if (
8655        typeof opt.callback === 'function' &&
8656        tempPopup.length === 0 &&
8657        $('[id^=popup]').length === 0
8658      ) {
8659        opt.callback();
8660        return false;
8661      }
8662      // if(tempPopup.length > 0 && typeof opt.callback === 'function') {
8663      // 	body.append('<div id="popup' + type + 'Block"></div>');
8664      // 	$('#popup' + type + 'Block').css('opacity', 0.8);
8665      // }
8666      var delay = 200;
8667      for (var i = 0; i < tempPopup.length; i++) {
8668        delayLoad('#popup' + tempPopup.eq(i).data('index'), delay);
8669        delay += 600;
8670      }
8671    };
8672
8673    this.setHandler = function () {
8674      body.on(
8675        'click',
8676        '.popup_' + type + ' .popcheck, .popup_' + type + ' .popup_x',
8677        this.close,
8678      );
8679      // ESC 키로 팝업 닫기 (한 번만 등록)
8680      if (!window.popupEscHandlerAdded) {
8681        $(document).on('keydown', function (e) {
8682          if (e.keyCode === 27 || e.key === 'Escape') {
8683            // ESC 키
8684            var allPopups = $(
8685              '.popup_type02, .popup_type03, .popup_type04',
8686            ).filter(':visible');
8687            if (allPopups.length > 0) {
8688              // z-index가 가장 높은 팝업 찾기
8689              var highestPopup = null;
8690              var highestZIndex = 0;
8691              allPopups.each(function () {
8692                var zIndex = parseInt($(this).css('z-index'), 10) || 0;
8693                if (zIndex > highestZIndex) {
8694                  highestZIndex = zIndex;
8695                  highestPopup = $(this);
8696                }
8697              });
8698              // 가장 높은 z-index의 팝업 닫기
8699              if (highestPopup && highestPopup.length > 0) {
8700                var popupType = '';
8701                if (highestPopup.hasClass('popup_type02')) popupType = 'type02';
8702                else if (highestPopup.hasClass('popup_type03'))
8703                  popupType = 'type03';
8704                else if (highestPopup.hasClass('popup_type04'))
8705                  popupType = 'type04';
8706
8707                if (popupType) {
8708                  // 팝업 닫기 로직 실행
8709                  if (highestPopup.find('.popcheck').is(':checked') === true) {
8710                    var popupId = highestPopup.attr('id');
8711                    if (popupId) {
8712                      var todayDate = new Date();
8713                      todayDate.setDate(todayDate.getDate() + 1);
8714                      document.cookie =
8715                        popupId +
8716                        '=hide; path=/; expires=' +
8717                        todayDate.toUTCString() +
8718                        ';';
8719                    }
8720                  }
8721                  highestPopup.animate(
8722                    { opacity: 0, top: '-=80' },
8723                    300,
8724                    function () {
8725                      $(this).remove();
8726                      // 해당 타입의 팝업이 모두 닫혔으면 Block도 제거
8727                      if (
8728                        $('.popup_' + popupType).length === 0 &&
8729                        $('#popup' + popupType + 'Block').length > 0
8730                      ) {
8731                        $('#popup' + popupType + 'Block').remove();
8732                      }
8733                    },
8734                  );
8735                }
8736              }
8737            }
8738          }
8739        });
8740        window.popupEscHandlerAdded = true;
8741      }
8742    };
8743
8744    /*
8745     * 팝업창을 닫습니다.
8746     *
8747     * @method close
8748     * @params {Object} e 이벤트 객체
8749     */
8750    this.close = function (e) {
8751      var tempPopup = $(this).parents('.popup_' + type);
8752      if (tempPopup.find('.popcheck').is(':checked') === true)
8753        _this.setCookie(tempPopup.attr('id'), 'hide', 1);
8754      tempPopup.animate({ opacity: 0, top: '-=80' }, 300, function () {
8755        $(this).remove();
8756        if (
8757          $('.popup_' + type).length === 0 &&
8758          $('#popup' + type + 'Block').length > 0
8759        )
8760          $('#popup' + type + 'Block').remove();
8761        if (typeof opt.callback === 'function' && $('[id^=popup]').length === 0)
8762          opt.callback();
8763      });
8764      e.preventDefault();
8765    };
8766
8767    this.setCookie = function (name, value, expiredays) {
8768      var todayDate = new Date();
8769      todayDate.setDate(todayDate.getDate() + expiredays);
8770      document.cookie =
8771        name +
8772        '=' +
8773        value +
8774        '; path=/; expires=' +
8775        todayDate.toUTCString() +
8776        ';';
8777    };
8778
8779    this.drag = function () {
8780      window.dragger = {
8781        dragStartTarget: null,
8782        dragMoveTarget: null,
8783        targetObj: {},
8784        offsetX: 0,
8785        offsetY: 0,
8786      };
8787      dragger.getLeft = function (o) {
8788        return parseInt(o.style.marginLeft, 10);
8789      };
8790      dragger.getTop = function (o) {
8791        return parseInt(o.style.top, 10);
8792      };
8793      dragger.startDrag = function (e, obj) {
8794        e = window.event ? window.event : e;
8795        dragger.dragStartTarget = 0;
8796        dragger.dragMoveTarget = 1;
8797        dragger.targetObj = obj;
8798        dragger.dragStartTarget = e.target;
8799        dragger.offsetX = dragger.getLeft(obj) - e.clientX;
8800        dragger.offsetY = dragger.getTop(obj) - e.clientY;
8801        dragger.targetObj.onmousemove = dragger.moveDrag;
8802        dragger.targetObj.onmouseup = dragger.stopDrag;
8803        if (e.preventDefault) e.preventDefault();
8804      };
8805      dragger.stopDrag = function () {
8806        if (dragger.dragStartTarget === dragger.dragMoveTarget) {
8807          this.onclick = function () {
8808            return false;
8809          };
8810        } else {
8811          this.onclick = null;
8812        }
8813        dragger.targetObj.onmousemove = null;
8814        dragger.targetObj.onmouseup = null;
8815      };
8816      dragger.moveDrag = function (e) {
8817        e = window.event ? window.event : e;
8818        dragger.dragMoveTarget = e.target;
8819        dragger.targetObj.style.marginLeft =
8820          parseInt(e.clientX + dragger.offsetX, 10) + 'px';
8821        dragger.targetObj.style.top =
8822          parseInt(e.clientY + dragger.offsetY, 10) + 'px';
8823        return false;
8824      };
8825    };
8826
8827    // Popup class 초기화 함수를 호출합니다.
8828    this.initialize();
8829  };
8830})(jQuery);
8831
8832/**************************************************************************************************
8833 * Movie | 동영상 모달창을 띄우거나 닫습니다.
8834 *
8835 * @class Movie
8836 * @constructor
8837 * @version 1.0
8838 *
8839 **************************************************************************************************/
8840(function ($) {
8841  'use strict';
8842
8843  window.Movie = function () {
8844    var _this = this;
8845
8846    var body = $('body'),
8847      movieContainer,
8848      blockBg,
8849      initTop,
8850      lastTop,
8851      movieW = 990,
8852      movieH = 590,
8853      marginLeft = -(movieW / 2),
8854      spreadWTime = 300,
8855      spreadHTime = 600,
8856      modalHtml = '',
8857      open = false;
8858
8859    modalHtml +=
8860      '<div id="moviePop" style="overflow:hidden;position:absolute;left:50%;z-index:1000;width:0;height:10px;background:#000">';
8861    modalHtml +=
8862      '	<button type="button" id="bindMovieModalX" class="indent" style="position:absolute;width:53px;height:53px;right:0;top:-53px;background:url(' +
8863      CONST_REQUEST_ROOT +
8864      '/design/other/btnMovieModalX.jpg) no-repeat">X</button>';
8865    modalHtml += '</div>';
8866
8867    /*
8868     * Movie class 초기화 함수
8869     *
8870     * @method initialize
8871     */
8872    this.initialize = function () {
8873      $('.bindMovieModalOpen').click(function (e) {
8874        var vendor = $(this).data('vendor').toLowerCase(),
8875          id = ($(this).data('id') + '').replace(/ /g, '');
8876        if (
8877          typeof vendor === 'string' &&
8878          typeof id === 'string' &&
8879          open === false
8880        ) {
8881          _this.modalOpen(vendor, id);
8882          open = true;
8883        }
8884        e.preventDefault();
8885      });
8886    };
8887
8888    /*
8889     * 동영상 모달창을 띄웁니다.
8890     *
8891     * @method modalOpen
8892     * @param {String} vendor 동영상 공급업체
8893     * @param {String} id 동영상 ID 값
8894     */
8895    this.modalOpen = function (vendor, id) {
8896      var winW = win.innerWidth(),
8897        winH = win.innerHeight();
8898      var scrollTop = win.scrollTop();
8899      initTop = winH / 2 + scrollTop;
8900      lastTop = initTop - movieH / 2;
8901      body.append(
8902        '<div id="blockBg" style="position:fixed;left:0;top:0;z-index:990;width:100%;height:100%;background:#999"></div>',
8903      );
8904      blockBg = $('#blockBg');
8905      blockBg.css('opacity', 0.7);
8906      body.append(modalHtml);
8907      movieContainer = $('#moviePop');
8908      movieContainer
8909        .css('top', initTop)
8910        .animate(
8911          { width: movieW, marginLeft: marginLeft },
8912          spreadWTime,
8913          'easeInExpo',
8914          function () {
8915            $(this).animate(
8916              { top: lastTop, height: movieH },
8917              spreadHTime,
8918              'easeInOutCubic',
8919              function () {
8920                switch (vendor) {
8921                  case 'youtube':
8922                    $(this).append(
8923                      '<iframe src="//youtube.com/embed/' +
8924                        id +
8925                        '?vq=hd1080&rel=0&autoplay=1&loop=0&mute=0" width="' +
8926                        movieW +
8927                        '" height="' +
8928                        movieH +
8929                        '" allow="autoplay" width="100%" height="100%" frameborder="0" playsinline webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>',
8930                    );
8931                    break;
8932                  default:
8933                    $(this).append(
8934                      '<iframe src="//player.vimeo.com/video/' +
8935                        id +
8936                        '?quality=1080p&autopause=0&playsinline=1&autoplay=1&loop=0&background=0" allow="autoplay" width="' +
8937                        movieW +
8938                        '" height="' +
8939                        movieH +
8940                        '" frameborder="0" playsinline webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>',
8941                    );
8942                    break;
8943                }
8944                $(this).css('overflow', 'visible');
8945                $('#bindMovieModalX').click(function (e) {
8946                  _this.modalX();
8947                  e.preventDefault();
8948                });
8949              },
8950            );
8951          },
8952        );
8953    };
8954
8955    /*
8956     * 동영상 모달창을 닫습니다.
8957     *
8958     * @method modalX
8959     */
8960    this.modalX = function () {
8961      movieContainer.children('iframe').remove();
8962      movieContainer
8963        .css('overflow', 'hidden')
8964        .animate(
8965          { top: initTop, height: 10 },
8966          spreadHTime,
8967          'easeInOutCubic',
8968          function () {
8969            $(this).animate(
8970              { width: 0, marginLeft: 0 },
8971              spreadWTime,
8972              'easeOutExpo',
8973              function () {
8974                $(this).remove();
8975                blockBg.fadeOut(100, function () {
8976                  $(this).remove();
8977                  open = false;
8978                });
8979              },
8980            );
8981          },
8982        );
8983    };
8984
8985    // Movie class 초기화 함수를 호출합니다.
8986    this.initialize();
8987  };
8988})(jQuery);
8989
8990/**************************************************************************************************
8991 * Tabbing | 탭 컨텐츠를 제어합니다.
8992 *
8993 * @class Tabbing
8994 * @constructor
8995 * @version 1.0
8996 *
8997 * @param {Object} tabWrap jQuery 객체
8998 * @param {Object} content jQuery 객체
8999 * @param {Function} callback 콜백 함수
9000 *
9001 **************************************************************************************************/
9002(function ($) {
9003  'use strict';
9004
9005  window.Tabbing = function (tabWrap, content, callback) {
9006    var tabs = tabWrap.children(),
9007      cons = content.children();
9008
9009    /*
9010     * Tabbing class 초기화 함수
9011     *
9012     * @method initialize
9013     */
9014    this.initialize = function () {
9015      tabs.click(function (e) {
9016        var self = $(this),
9017          prevIdx = tabs.filter('.on').index(),
9018          idx = self.index();
9019        if (prevIdx !== idx) {
9020          prevIdx = idx;
9021          tabs.filter('.on').removeClass('on');
9022          self.addClass('on');
9023          cons.filter(':visible').hide(0);
9024          cons.eq(idx).show(0, function () {
9025            if (typeof callback === 'function') callback(idx, prevIdx);
9026          });
9027        }
9028        e.preventDefault();
9029      });
9030    };
9031
9032    // Tabbing class 초기화 함수를 호출합니다.
9033    this.initialize();
9034  };
9035})(jQuery);
9036
9037/**************************************************************************************************
9038 * Labeling | 인풋 박스 안의 라벨을 감추거나 보여줍니다.
9039 *
9040 * @class Labeling
9041 * @constructor
9042 * @version 1.0
9043 *
9044 * @param {Object} elems jQuery 객체
9045 *
9046 **************************************************************************************************/
9047(function ($) {
9048  'use strict';
9049
9050  window.Labeling = function (elems) {
9051    /*
9052     * Labeling class 초기화 함수
9053     *
9054     * @method initialize
9055     */
9056    this.initialize = function () {
9057      for (var i = 0; i < elems.length; i++) {
9058        this.setHandler(
9059          elems.eq(i),
9060          $('[for="' + elems.eq(i).attr('id') + '"]'),
9061        );
9062        elems.eq(i).val('');
9063      }
9064    };
9065
9066    this.setHandler = function (input, label) {
9067      var def = label.html();
9068      input
9069        .focusin(function () {
9070          label.empty();
9071        })
9072        .focusout(function () {
9073          if ($(this).val() == '') label.html(def);
9074        });
9075      label.click(function () {
9076        input.focus();
9077      });
9078    };
9079
9080    // Labeling class 초기화 함수를 호출합니다.
9081    this.initialize();
9082  };
9083})(jQuery);
9084
9085/**************************************************************************************************
9086 * Utils | 유틸리티 메소드를 모아 놓은 전역 객체입니다.
9087 **************************************************************************************************/
9088window.Utils = {
9089  // 모바일 device 여부 체크
9090  checkMobile: function () {
9091    if (
9092      navigator.userAgent.match(
9093        /Android|BlackBerry|Blazer|Bolt|Doris|Dorothy|Fennec|GoBrowser|IEMobile|iPhone|iPod|Iris|Maemo|MIB|Minimo|NetFront|Opera Mini|Opera Mobi|SEMC-Browser|Skyfire|SymbianOS|TeaShark|Teleca|uZardWeb/,
9094      ) !== null
9095    ) {
9096      return true;
9097    }
9098  },
9099  // 배열의 순서를 임의로 변경
9100  shuffle: function (d) {
9101    for (var i = d.length - 1; i > 0; i--) {
9102      var j = Math.floor(Math.random() * (i + 1));
9103      var temp = d[i];
9104      d[i] = d[j];
9105      d[j] = temp;
9106    }
9107    return d;
9108  },
9109  // css 속성 사용 가능 여부 체크
9110  canIUse: function (style, value) {
9111    var el = document.createElement('div'),
9112      testCssProp = [
9113        '-webkit-' + style,
9114        '-moz-' + style,
9115        '-ms-' + style,
9116        style,
9117      ];
9118
9119    for (var i = 0, j, k; i < testCssProp.length; i++) {
9120      if (typeof el.style[testCssProp[i]] === 'string') {
9121        if (
9122          typeof value === 'string' &&
9123          typeof window.getComputedStyle === 'function'
9124        ) {
9125          document.body.insertBefore(el, null);
9126          el.style[testCssProp[i]] = value;
9127          j = window.getComputedStyle(el, null);
9128          k = j.getPropertyValue(testCssProp[i]);
9129          document.body.removeChild(el);
9130          return k === value;
9131        }
9132        return true;
9133      }
9134    }
9135    return false;
9136  },
9137  // video api 사용 가능 여부 체크
9138  canIUseVideo: function () {
9139    var player = document.createElement('video');
9140    if (typeof player.canPlayType === 'function') {
9141      if (
9142        player.canPlayType('video/webm; codecs="vp8.0, vorbis"') === '' &&
9143        player.canPlayType('video/mp4; codecs="avc1.4D401E, mp4a.40.2"') === ''
9144      )
9145        return false;
9146    } else {
9147      return false;
9148    }
9149    return true;
9150  },
9151  // css preserve-3d 속성 사용 가능 여부 체크 (위의 canIUse 메소드로 정확한 판명 불가능)
9152  canIUsePreserve3d: function () {
9153    var outerAnchor = document.createElement('a'),
9154      innerAnchor = document.createElement('a'),
9155      result = false;
9156
9157    outerAnchor.style.cssText =
9158      'display:block;transform-style:preserve-3d;transform-origin:right;transform:rotateY(40deg);';
9159    innerAnchor.style.cssText =
9160      'display:block;width:9px;height:1px;background:#000;transform-origin:right;transform:rotateY(40deg);';
9161
9162    outerAnchor.appendChild(innerAnchor);
9163    document.body.appendChild(outerAnchor);
9164
9165    result = innerAnchor.getBoundingClientRect();
9166    document.body.removeChild(outerAnchor);
9167
9168    result = result.width && result.width < 4;
9169    return result;
9170  },
9171};
9172
9173/**************************************************************************************************
9174 * Sitemap | 사이트맵을 보이거나 감춥니다.
9175 *
9176 * @class Sitemap
9177 * @constructor
9178 * @version 1.0
9179 *
9180 * @param {String} dir 방향
9181 *
9182 **************************************************************************************************/
9183(function ($) {
9184  'use strict';
9185
9186  window.Sitemap = function () {
9187    var _this = this;
9188
9189    var $topElement = $('body'),
9190      $container = $('#sitemapWrap'),
9191      _anchor = '.bindSitemapSpread',
9192      _btnX = '.bindSitemapFold',
9193      spread = false,
9194      tween = false;
9195
9196    /*
9197     * Sitemap class 초기화 함수
9198     *
9199     * @method initialize
9200     */
9201    this.initialize = function () {
9202      $topElement.on('click', _anchor, this.spread);
9203      $topElement.on('click', _btnX, this.fold);
9204    };
9205
9206    this.spread = function (e) {
9207      if (tween === false) {
9208        if (spread === false) {
9209          $container.fadeIn(300, function () {
9210            spread = true;
9211            tween = false;
9212          });
9213          $(this).addClass('open');
9214        } else {
9215          $container.fadeOut(300, function () {
9216            spread = false;
9217            tween = false;
9218          });
9219          $(this).removeClass('open');
9220        }
9221        tween = true;
9222      }
9223      e.preventDefault();
9224    };
9225
9226    this.fold = function (e) {
9227      if (tween === false) {
9228        $container.fadeOut(300, function () {
9229          spread = false;
9230          tween = false;
9231        });
9232        $(this).removeClass('open');
9233        tween = true;
9234      }
9235      e.preventDefault();
9236    };
9237
9238    // Sitemap class 초기화 함수를 호출합니다.
9239    this.initialize();
9240  };
9241})(jQuery);
9242
9243(function ($) {
9244  $(document).ready(function () {
9245    new Policy();
9246    new Sitemap();
9247    new SmsModule('directSms1', 'direct');
9248    new SmsModule('gOrderForm', 'gOrder');
9249
9250    (function () {
9251      var $headerWrap = $('.header_wrap'),
9252        $depth1Li = $('.depth1_li', $headerWrap),
9253        $depth2Ul = $('.depth2_ul', $headerWrap),
9254        $gnb = $('#gnbBg');
9255      $depth2Ul.hide(0);
9256
9257      $('.depth1_a', $headerWrap).mouseenter(function () {
9258        if ($gnb.is(':hidden') === true) $gnb.show(0);
9259        $depth2Ul.filter(':visible').hide(0);
9260        $(this).next('.depth2_ul').show(0);
9261      });
9262      $headerWrap.mouseleave(function () {
9263        $depth2Ul.filter(':visible').hide(0);
9264        $gnb.hide(0);
9265      });
9266    })();
9267
9268    (function () {
9269      function scrollHandler() {
9270        var scrollTop = win.scrollTop(),
9271          fixOffset =
9272            doc.innerHeight() - win.innerHeight() - $diffElems.height();
9273
9274        if (scrollTop > fixOffset)
9275          $headElems.css({ bottom: scrollTop - fixOffset + $headElems.bottom });
9276        else $headElems.css({ bottom: $headElems.bottom });
9277
9278        if (show === false && scrollTop >= showOffset) {
9279          $headElems.addClass('scroll');
9280          show = true;
9281        } else if (show === true && scrollTop < showOffset) {
9282          $headElems.removeClass('scroll');
9283          show = false;
9284        }
9285      }
9286
9287      var $headElems = $('.inquiry_bar'),
9288        $diffElems = $('.footer_wrap');
9289
9290      $headElems.heigth = parseInt($headElems.css('height'), 10);
9291      $headElems.bottom = parseInt($headElems.css('bottom'), 10);
9292
9293      var showOffset = doc.innerHeight() - win.innerHeight() >= 200 ? 200 : 0,
9294        show = false;
9295
9296      win.scroll(scrollHandler).load(scrollHandler);
9297      scrollHandler();
9298    })();
9299
9300    (function () {
9301      function scrollHandler() {
9302        var scrollTop = win.scrollTop(),
9303          fixOffset =
9304            doc.innerHeight() - win.innerHeight() - $diffElems.height();
9305
9306        if (show === false && scrollTop >= showOffset && tween === false) {
9307          tween = true;
9308          $headElems.css({ display: 'block' });
9309          $headElems.animate({ opacity: 1 }, function () {
9310            $headElems.addClass('on');
9311            tween = false;
9312          });
9313          show = true;
9314        } else if (show === true && scrollTop < showOffset && tween === false) {
9315          tween = true;
9316          $headElems.animate({ opacity: 0 }, function () {
9317            $headElems.removeClass('on');
9318            $headElems.css({ display: 'none' });
9319            tween = false;
9320          });
9321          show = false;
9322        }
9323      }
9324
9325      var $headElems = $('.popup_gOrder'),
9326        $diffElems = $('.footer_wrap');
9327
9328      $headElems.heigth = parseInt($headElems.css('height'), 10);
9329      $headElems.bottom = parseInt($headElems.css('bottom'), 10);
9330
9331      var showOffset = doc.innerHeight() - win.innerHeight() >= 400 ? 400 : 0,
9332        show = false,
9333        tween = false;
9334
9335      win.scroll(scrollHandler).load(scrollHandler);
9336      scrollHandler();
9337    })();
9338
9339    TweenMax.to($('.neon_on'), 1.0, {
9340      opacity: 1,
9341      ease: Bounce.easeOut,
9342      yoyo: true,
9343      repeat: -1,
9344    });
9345  });
9346})(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.