PageSourceSearch

https://www.hockeyettan.se/wp-content/themes/hockeyettan/assets/dist/js/global.js?ver=1.0.01790931396

js hockeyettan.se collected 2026-10-02 11:17:41 UTC 482,944 bytes, 8,015 lines download raw bytes

vendor: 33,431 bytes, lines 1-838
1! function(t, e) {
2    "object" == typeof exports && "undefined" != typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define(e) : t.moment = e()
3}(this, function() {
4    "use strict";
5
6    function t() {
7        return fn.apply(null, arguments)
8    }
9
10    function e(t) {
11        fn = t
12    }
13
14    function i(t) {
15        return t instanceof Array || "[object Array]" === Object.prototype.toString.call(t)
16    }
17
18    function n(t) {
19        return null != t && "[object Object]" === Object.prototype.toString.call(t)
20    }
21
22    function s(t) {
23        var e;
24        for (e in t) return !1;
25        return !0
26    }
27
28    function r(t) {
29        return t instanceof Date || "[object Date]" === Object.prototype.toString.call(t)
30    }
31
32    function a(t, e) {
33        var i, n = [];
34        for (i = 0; i < t.length; ++i) n.push(e(t[i], i));
35        return n
36    }
37
38    function o(t, e) {
39        return Object.prototype.hasOwnProperty.call(t, e)
40    }
41
42    function l(t, e) {
43        for (var i in e) o(e, i) && (t[i] = e[i]);
44        return o(e, "toString") && (t.toString = e.toString), o(e, "valueOf") && (t.valueOf = e.valueOf), t
45    }
46
47    function u(t, e, i, n) {
48        return me(t, e, i, n, !0).utc()
49    }
50
51    function h() {
52        return {
53            empty: !1,
54            unusedTokens: [],
55            unusedInput: [],
56            overflow: -2,
57            charsLeftOver: 0,
58            nullInput: !1,
59            invalidMonth: null,
60            invalidFormat: !1,
61            userInvalidated: !1,
62            iso: !1,
63            parsedDateParts: [],
64            meridiem: null
65        }
66    }
67
68    function d(t) {
69        return null == t._pf && (t._pf = h()), t._pf
70    }
71
72    function c(t) {
73        if (null == t._isValid) {
74            var e = d(t),
75                i = pn.call(e.parsedDateParts, function(t) {
76                    return null != t
77                }),
78                n = !isNaN(t._d.getTime()) && e.overflow < 0 && !e.empty && !e.invalidMonth && !e.invalidWeekday && !e.nullInput && !e.invalidFormat && !e.userInvalidated && (!e.meridiem || e.meridiem && i);
79            if (t._strict && (n = n && 0 === e.charsLeftOver && 0 === e.unusedTokens.length && void 0 === e.bigHour), null != Object.isFrozen && Object.isFrozen(t)) return n;
80            t._isValid = n
81        }
82        return t._isValid
83    }
84
85    function f(t) {
86        var e = u(NaN);
87        return null != t ? l(d(e), t) : d(e).userInvalidated = !0, e
88    }
89
90    function p(t) {
91        return void 0 === t
92    }
93
94    function _(t, e) {
95        var i, n, s;
96        if (p(e._isAMomentObject) || (t._isAMomentObject = e._isAMomentObject), p(e._i) || (t._i = e._i), p(e._f) || (t._f = e._f), p(e._l) || (t._l = e._l), p(e._strict) || (t._strict = e._strict), p(e._tzm) || (t._tzm = e._tzm), p(e._isUTC) || (t._isUTC = e._isUTC), p(e._offset) || (t._offset = e._offset), p(e._pf) || (t._pf = d(e)), p(e._locale) || (t._locale = e._locale), _n.length > 0)
97            for (i in _n) n = _n[i], s = e[n], p(s) || (t[n] = s);
98        return t
99    }
100
101    function m(e) {
102        _(this, e), this._d = new Date(null != e._d ? e._d.getTime() : NaN), mn === !1 && (mn = !0, t.updateOffset(this), mn = !1)
103    }
104
105    function g(t) {
106        return t instanceof m || null != t && null != t._isAMomentObject
107    }
108
109    function y(t) {
110        return 0 > t ? Math.ceil(t) || 0 : Math.floor(t)
111    }
112
113    function v(t) {
114        var e = +t,
115            i = 0;
116        return 0 !== e && isFinite(e) && (i = y(e)), i
117    }
118
119    function w(t, e, i) {
120        var n, s = Math.min(t.length, e.length),
121            r = Math.abs(t.length - e.length),
122            a = 0;
123        for (n = 0; s > n; n++)(i && t[n] !== e[n] || !i && v(t[n]) !== v(e[n])) && a++;
124        return a + r
125    }
126
127    function b(e) {
128        t.suppressDeprecationWarnings === !1 && "undefined" != typeof console && console.warn && console.warn("Deprecation warning: " + e)
129    }
130
131    function T(e, i) {
132        var n = !0;
133        return l(function() {
134            if (null != t.deprecationHandler && t.deprecationHandler(null, e), n) {
135                for (var s, r = [], a = 0; a < arguments.length; a++) {
136                    if (s = "", "object" == typeof arguments[a]) {
137                        s += "\n[" + a + "] ";
138                        for (var o in arguments[0]) s += o + ": " + arguments[0][o] + ", ";
139                        s = s.slice(0, -2)
140                    } else s = arguments[a];
141                    r.push(s)
142                }
143                b(e + "\nArguments: " + Array.prototype.slice.call(r).join("") + "\n" + (new Error).stack), n = !1
144            }
145            return i.apply(this, arguments)
146        }, i)
147    }
148
149    function x(e, i) {
150        null != t.deprecationHandler && t.deprecationHandler(e, i), gn[e] || (b(i), gn[e] = !0)
151    }
152
153    function S(t) {
154        return t instanceof Function || "[object Function]" === Object.prototype.toString.call(t)
155    }
156
157    function k(t) {
158        var e, i;
159        for (i in t) e = t[i], S(e) ? this[i] = e : this["_" + i] = e;
160        this._config = t, this._ordinalParseLenient = new RegExp(this._ordinalParse.source + "|" + /\d{1,2}/.source)
161    }
162
163    function P(t, e) {
164        var i, s = l({}, t);
165        for (i in e) o(e, i) && (n(t[i]) && n(e[i]) ? (s[i] = {}, l(s[i], t[i]), l(s[i], e[i])) : null != e[i] ? s[i] = e[i] : delete s[i]);
166        for (i in t) o(t, i) && !o(e, i) && n(t[i]) && (s[i] = l({}, s[i]));
167        return s
168    }
169
170    function M(t) {
171        null != t && this.set(t)
172    }
173
174    function D(t, e, i) {
175        var n = this._calendar[t] || this._calendar.sameElse;
176        return S(n) ? n.call(e, i) : n
177    }
178
179    function O(t) {
180        var e = this._longDateFormat[t],
181            i = this._longDateFormat[t.toUpperCase()];
182        return e || !i ? e : (this._longDateFormat[t] = i.replace(/MMMM|MM|DD|dddd/g, function(t) {
183            return t.slice(1)
184        }), this._longDateFormat[t])
185    }
186
187    function C() {
188        return this._invalidDate
189    }
190
191    function Y(t) {
192        return this._ordinal.replace("%d", t)
193    }
194
195    function R(t, e, i, n) {
196        var s = this._relativeTime[i];
197        return S(s) ? s(t, e, i, n) : s.replace(/%d/i, t)
198    }
199
200    function j(t, e) {
201        var i = this._relativeTime[t > 0 ? "future" : "past"];
202        return S(i) ? i(e) : i.replace(/%s/i, e)
203    }
204
205    function L(t, e) {
206        var i = t.toLowerCase();
207        Pn[i] = Pn[i + "s"] = Pn[e] = t
208    }
209
210    function A(t) {
211        return "string" == typeof t ? Pn[t] || Pn[t.toLowerCase()] : void 0
212    }
213
214    function I(t) {
215        var e, i, n = {};
216        for (i in t) o(t, i) && (e = A(i), e && (n[e] = t[i]));
217        return n
218    }
219
220    function z(t, e) {
221        Mn[t] = e
222    }
223
224    function Q(t) {
225        var e = [];
226        for (var i in t) e.push({
227            unit: i,
228            priority: Mn[i]
229        });
230        return e.sort(function(t, e) {
231            return t.priority - e.priority
232        }), e
233    }
234
235    function F(e, i) {
236        return function(n) {
237            return null != n ? (G(this, e, n), t.updateOffset(this, i), this) : W(this, e)
238        }
239    }
240
241    function W(t, e) {
242        return t.isValid() ? t._d["get" + (t._isUTC ? "UTC" : "") + e]() : NaN
243    }
244
245    function G(t, e, i) {
246        t.isValid() && t._d["set" + (t._isUTC ? "UTC" : "") + e](i)
247    }
248
249    function N(t) {
250        return t = A(t), S(this[t]) ? this[t]() : this
251    }
252
253    function U(t, e) {
254        if ("object" == typeof t) {
255            t = I(t);
256            for (var i = Q(t), n = 0; n < i.length; n++) this[i[n].unit](t[i[n].unit])
257        } else if (t = A(t), S(this[t])) return this[t](e);
258        return this
259    }
260
261    function E(t, e, i) {
262        var n = "" + Math.abs(t),
263            s = e - n.length,
264            r = t >= 0;
265        return (r ? i ? "+" : "" : "-") + Math.pow(10, Math.max(0, s)).toString().substr(1) + n
266    }
267
268    function H(t, e, i, n) {
269        var s = n;
270        "string" == typeof n && (s = function() {
271            return this[n]()
272        }), t && (Yn[t] = s), e && (Yn[e[0]] = function() {
273            return E(s.apply(this, arguments), e[1], e[2])
274        }), i && (Yn[i] = function() {
275            return this.localeData().ordinal(s.apply(this, arguments), t)
276        })
277    }
278
279    function V(t) {
280        return t.match(/\[[\s\S]/) ? t.replace(/^\[|\]$/g, "") : t.replace(/\\/g, "")
281    }
282
283    function $(t) {
284        var e, i, n = t.match(Dn);
285        for (e = 0, i = n.length; i > e; e++) Yn[n[e]] ? n[e] = Yn[n[e]] : n[e] = V(n[e]);
286        return function(e) {
287            var s, r = "";
288            for (s = 0; i > s; s++) r += n[s] instanceof Function ? n[s].call(e, t) : n[s];
289            return r
290        }
291    }
292
293    function X(t, e) {
294        return t.isValid() ? (e = q(e, t.localeData()), Cn[e] = Cn[e] || $(e), Cn[e](t)) : t.localeData().invalidDate()
295    }
296
297    function q(t, e) {
298        function i(t) {
299            return e.longDateFormat(t) || t
300        }
301        var n = 5;
302        for (On.lastIndex = 0; n >= 0 && On.test(t);) t = t.replace(On, i), On.lastIndex = 0, n -= 1;
303        return t
304    }
305
306    function B(t, e, i) {
307        qn[t] = S(e) ? e : function(t) {
308            return t && i ? i : e
309        }
310    }
311
312    function Z(t, e) {
313        return o(qn, t) ? qn[t](e._strict, e._locale) : new RegExp(J(t))
314    }
315
316    function J(t) {
317        return K(t.replace("\\", "").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function(t, e, i, n, s) {
318            return e || i || n || s
319        }))
320    }
321
322    function K(t) {
323        return t.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&")
324    }
325
326    function tt(t, e) {
327        var i, n = e;
328        for ("string" == typeof t && (t = [t]), "number" == typeof e && (n = function(t, i) {
329                i[e] = v(t)
330            }), i = 0; i < t.length; i++) Bn[t[i]] = n
331    }
332
333    function et(t, e) {
334        tt(t, function(t, i, n, s) {
335            n._w = n._w || {}, e(t, n._w, n, s)
336        })
337    }
338
339    function it(t, e, i) {
340        null != e && o(Bn, t) && Bn[t](e, i._a, i, t)
341    }
342
343    function nt(t, e) {
344        return new Date(Date.UTC(t, e + 1, 0)).getUTCDate()
345    }
346
347    function st(t, e) {
348        return t ? i(this._months) ? this._months[t.month()] : this._months[(this._months.isFormat || as).test(e) ? "format" : "standalone"][t.month()] : this._months
349    }
350
351    function rt(t, e) {
352        return t ? i(this._monthsShort) ? this._monthsShort[t.month()] : this._monthsShort[as.test(e) ? "format" : "standalone"][t.month()] : this._monthsShort
353    }
354
355    function at(t, e, i) {
356        var n, s, r, a = t.toLocaleLowerCase();
357        if (!this._monthsParse)
358            for (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = [], n = 0; 12 > n; ++n) r = u([2e3, n]), this._shortMonthsParse[n] = this.monthsShort(r, "").toLocaleLowerCase(), this._longMonthsParse[n] = this.months(r, "").toLocaleLowerCase();
359        return i ? "MMM" === e ? (s = vn.call(this._shortMonthsParse, a), -1 !== s ? s : null) : (s = vn.call(this._longMonthsParse, a), -1 !== s ? s : null) : "MMM" === e ? (s = vn.call(this._shortMonthsParse, a), -1 !== s ? s : (s = vn.call(this._longMonthsParse, a), -1 !== s ? s : null)) : (s = vn.call(this._longMonthsParse, a), -1 !== s ? s : (s = vn.call(this._shortMonthsParse, a), -1 !== s ? s : null))
360    }
361
362    function ot(t, e, i) {
363        var n, s, r;
364        if (this._monthsParseExact) return at.call(this, t, e, i);
365        for (this._monthsParse || (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = []), n = 0; 12 > n; n++) {
366            if (s = u([2e3, n]), i && !this._longMonthsParse[n] && (this._longMonthsParse[n] = new RegExp("^" + this.months(s, "").replace(".", "") + "$", "i"), this._shortMonthsParse[n] = new RegExp("^" + this.monthsShort(s, "").replace(".", "") + "$", "i")), i || this._monthsParse[n] || (r = "^" + this.months(s, "") + "|^" + this.monthsShort(s, ""), this._monthsParse[n] = new RegExp(r.replace(".", ""), "i")), i && "MMMM" === e && this._longMonthsParse[n].test(t)) return n;
367            if (i && "MMM" === e && this._shortMonthsParse[n].test(t)) return n;
368            if (!i && this._monthsParse[n].test(t)) return n
369        }
370    }
371
372    function lt(t, e) {
373        var i;
374        if (!t.isValid()) return t;
375        if ("string" == typeof e)
376            if (/^\d+$/.test(e)) e = v(e);
377            else if (e = t.localeData().monthsParse(e), "number" != typeof e) return t;
378        return i = Math.min(t.date(), nt(t.year(), e)), t._d["set" + (t._isUTC ? "UTC" : "") + "Month"](e, i), t
379    }
380
381    function ut(e) {
382        return null != e ? (lt(this, e), t.updateOffset(this, !0), this) : W(this, "Month")
383    }
384
385    function ht() {
386        return nt(this.year(), this.month())
387    }
388
389    function dt(t) {
390        return this._monthsParseExact ? (o(this, "_monthsRegex") || ft.call(this), t ? this._monthsShortStrictRegex : this._monthsShortRegex) : (o(this, "_monthsShortRegex") || (this._monthsShortRegex = us), this._monthsShortStrictRegex && t ? this._monthsShortStrictRegex : this._monthsShortRegex)
391    }
392
393    function ct(t) {
394        return this._monthsParseExact ? (o(this, "_monthsRegex") || ft.call(this), t ? this._monthsStrictRegex : this._monthsRegex) : (o(this, "_monthsRegex") || (this._monthsRegex = hs), this._monthsStrictRegex && t ? this._monthsStrictRegex : this._monthsRegex)
395    }
396
397    function ft() {
398        function t(t, e) {
399            return e.length - t.length
400        }
401        var e, i, n = [],
402            s = [],
403            r = [];
404        for (e = 0; 12 > e; e++) i = u([2e3, e]), n.push(this.monthsShort(i, "")), s.push(this.months(i, "")), r.push(this.months(i, "")), r.push(this.monthsShort(i, ""));
405        for (n.sort(t), s.sort(t), r.sort(t), e = 0; 12 > e; e++) n[e] = K(n[e]), s[e] = K(s[e]);
406        for (e = 0; 24 > e; e++) r[e] = K(r[e]);
407        this._monthsRegex = new RegExp("^(" + r.join("|") + ")", "i"), this._monthsShortRegex = this._monthsRegex, this._monthsStrictRegex = new RegExp("^(" + s.join("|") + ")", "i"), this._monthsShortStrictRegex = new RegExp("^(" + n.join("|") + ")", "i")
408    }
409
410    function pt(t) {
411        return _t(t) ? 366 : 365
412    }
413
414    function _t(t) {
415        return t % 4 === 0 && t % 100 !== 0 || t % 400 === 0
416    }
417
418    function mt() {
419        return _t(this.year())
420    }
421
422    function gt(t, e, i, n, s, r, a) {
423        var o = new Date(t, e, i, n, s, r, a);
424        return 100 > t && t >= 0 && isFinite(o.getFullYear()) && o.setFullYear(t), o
425    }
426
427    function yt(t) {
428        var e = new Date(Date.UTC.apply(null, arguments));
429        return 100 > t && t >= 0 && isFinite(e.getUTCFullYear()) && e.setUTCFullYear(t), e
430    }
431
432    function vt(t, e, i) {
433        var n = 7 + e - i,
434            s = (7 + yt(t, 0, n).getUTCDay() - e) % 7;
435        return -s + n - 1
436    }
437
438    function wt(t, e, i, n, s) {
439        var r, a, o = (7 + i - n) % 7,
440            l = vt(t, n, s),
441            u = 1 + 7 * (e - 1) + o + l;
442        return 0 >= u ? (r = t - 1, a = pt(r) + u) : u > pt(t) ? (r = t + 1, a = u - pt(t)) : (r = t, a = u), {
443            year: r,
444            dayOfYear: a
445        }
446    }
447
448    function bt(t, e, i) {
449        var n, s, r = vt(t.year(), e, i),
450            a = Math.floor((t.dayOfYear() - r - 1) / 7) + 1;
451        return 1 > a ? (s = t.year() - 1, n = a + Tt(s, e, i)) : a > Tt(t.year(), e, i) ? (n = a - Tt(t.year(), e, i), s = t.year() + 1) : (s = t.year(), n = a), {
452            week: n,
453            year: s
454        }
455    }
456
457    function Tt(t, e, i) {
458        var n = vt(t, e, i),
459            s = vt(t + 1, e, i);
460        return (pt(t) - n + s) / 7
461    }
462
463    function xt(t) {
464        return bt(t, this._week.dow, this._week.doy).week
465    }
466
467    function St() {
468        return this._week.dow
469    }
470
471    function kt() {
472        return this._week.doy
473    }
474
475    function Pt(t) {
476        var e = this.localeData().week(this);
477        return null == t ? e : this.add(7 * (t - e), "d")
478    }
479
480    function Mt(t) {
481        var e = bt(this, 1, 4).week;
482        return null == t ? e : this.add(7 * (t - e), "d")
483    }
484
485    function Dt(t, e) {
486        return "string" != typeof t ? t : isNaN(t) ? (t = e.weekdaysParse(t), "number" == typeof t ? t : null) : parseInt(t, 10)
487    }
488
489    function Ot(t, e) {
490        return "string" == typeof t ? e.weekdaysParse(t) % 7 || 7 : isNaN(t) ? null : t
491    }
492
493    function Ct(t, e) {
494        return t ? i(this._weekdays) ? this._weekdays[t.day()] : this._weekdays[this._weekdays.isFormat.test(e) ? "format" : "standalone"][t.day()] : this._weekdays
495    }
496
497    function Yt(t) {
498        return t ? this._weekdaysShort[t.day()] : this._weekdaysShort
499    }
500
501    function Rt(t) {
502        return t ? this._weekdaysMin[t.day()] : this._weekdaysMin
503    }
504
505    function jt(t, e, i) {
506        var n, s, r, a = t.toLocaleLowerCase();
507        if (!this._weekdaysParse)
508            for (this._weekdaysParse = [], this._shortWeekdaysParse = [], this._minWeekdaysParse = [], n = 0; 7 > n; ++n) r = u([2e3, 1]).day(n), this._minWeekdaysParse[n] = this.weekdaysMin(r, "").toLocaleLowerCase(), this._shortWeekdaysParse[n] = this.weekdaysShort(r, "").toLocaleLowerCase(), this._weekdaysParse[n] = this.weekdays(r, "").toLocaleLowerCase();
509        return i ? "dddd" === e ? (s = vn.call(this._weekdaysParse, a), -1 !== s ? s : null) : "ddd" === e ? (s = vn.call(this._shortWeekdaysParse, a), -1 !== s ? s : null) : (s = vn.call(this._minWeekdaysParse, a), -1 !== s ? s : null) : "dddd" === e ? (s = vn.call(this._weekdaysParse, a), -1 !== s ? s : (s = vn.call(this._shortWeekdaysParse, a), -1 !== s ? s : (s = vn.call(this._minWeekdaysParse, a), -1 !== s ? s : null))) : "ddd" === e ? (s = vn.call(this._shortWeekdaysParse, a), -1 !== s ? s : (s = vn.call(this._weekdaysParse, a), -1 !== s ? s : (s = vn.call(this._minWeekdaysParse, a), -1 !== s ? s : null))) : (s = vn.call(this._minWeekdaysParse, a), -1 !== s ? s : (s = vn.call(this._weekdaysParse, a), -1 !== s ? s : (s = vn.call(this._shortWeekdaysParse, a), -1 !== s ? s : null)))
510    }
511
512    function Lt(t, e, i) {
513        var n, s, r;
514        if (this._weekdaysParseExact) return jt.call(this, t, e, i);
515        for (this._weekdaysParse || (this._weekdaysParse = [], this._minWeekdaysParse = [], this._shortWeekdaysParse = [], this._fullWeekdaysParse = []), n = 0; 7 > n; n++) {
516            if (s = u([2e3, 1]).day(n), i && !this._fullWeekdaysParse[n] && (this._fullWeekdaysParse[n] = new RegExp("^" + this.weekdays(s, "").replace(".", ".?") + "$", "i"), this._shortWeekdaysParse[n] = new RegExp("^" + this.weekdaysShort(s, "").replace(".", ".?") + "$", "i"), this._minWeekdaysParse[n] = new RegExp("^" + this.weekdaysMin(s, "").replace(".", ".?") + "$", "i")), this._weekdaysParse[n] || (r = "^" + this.weekdays(s, "") + "|^" + this.weekdaysShort(s, "") + "|^" + this.weekdaysMin(s, ""), this._weekdaysParse[n] = new RegExp(r.replace(".", ""), "i")), i && "dddd" === e && this._fullWeekdaysParse[n].test(t)) return n;
517            if (i && "ddd" === e && this._shortWeekdaysParse[n].test(t)) return n;
518            if (i && "dd" === e && this._minWeekdaysParse[n].test(t)) return n;
519            if (!i && this._weekdaysParse[n].test(t)) return n
520        }
521    }
522
523    function At(t) {
524        if (!this.isValid()) return null != t ? this : NaN;
525        var e = this._isUTC ? this._d.getUTCDay() : this._d.getDay();
526        return null != t ? (t = Dt(t, this.localeData()), this.add(t - e, "d")) : e
527    }
528
529    function It(t) {
530        if (!this.isValid()) return null != t ? this : NaN;
531        var e = (this.day() + 7 - this.localeData()._week.dow) % 7;
532        return null == t ? e : this.add(t - e, "d")
533    }
534
535    function zt(t) {
536        if (!this.isValid()) return null != t ? this : NaN;
537        if (null != t) {
538            var e = Ot(t, this.localeData());
539            return this.day(this.day() % 7 ? e : e - 7)
540        }
541        return this.day() || 7
542    }
543
544    function Qt(t) {
545        return this._weekdaysParseExact ? (o(this, "_weekdaysRegex") || Gt.call(this), t ? this._weekdaysStrictRegex : this._weekdaysRegex) : (o(this, "_weekdaysRegex") || (this._weekdaysRegex = ms), this._weekdaysStrictRegex && t ? this._weekdaysStrictRegex : this._weekdaysRegex)
546    }
547
548    function Ft(t) {
549        return this._weekdaysParseExact ? (o(this, "_weekdaysRegex") || Gt.call(this), t ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex) : (o(this, "_weekdaysShortRegex") || (this._weekdaysShortRegex = gs), this._weekdaysShortStrictRegex && t ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex)
550    }
551
552    function Wt(t) {
553        return this._weekdaysParseExact ? (o(this, "_weekdaysRegex") || Gt.call(this), t ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex) : (o(this, "_weekdaysMinRegex") || (this._weekdaysMinRegex = ys), this._weekdaysMinStrictRegex && t ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex)
554    }
555
556    function Gt() {
557        function t(t, e) {
558            return e.length - t.length
559        }
560        var e, i, n, s, r, a = [],
561            o = [],
562            l = [],
563            h = [];
564        for (e = 0; 7 > e; e++) i = u([2e3, 1]).day(e), n = this.weekdaysMin(i, ""), s = this.weekdaysShort(i, ""), r = this.weekdays(i, ""), a.push(n), o.push(s), l.push(r), h.push(n), h.push(s), h.push(r);
565        for (a.sort(t), o.sort(t), l.sort(t), h.sort(t), e = 0; 7 > e; e++) o[e] = K(o[e]), l[e] = K(l[e]), h[e] = K(h[e]);
566        this._weekdaysRegex = new RegExp("^(" + h.join("|") + ")", "i"), this._weekdaysShortRegex = this._weekdaysRegex, this._weekdaysMinRegex = this._weekdaysRegex, this._weekdaysStrictRegex = new RegExp("^(" + l.join("|") + ")", "i"), this._weekdaysShortStrictRegex = new RegExp("^(" + o.join("|") + ")", "i"), this._weekdaysMinStrictRegex = new RegExp("^(" + a.join("|") + ")", "i")
567    }
568
569    function Nt() {
570        return this.hours() % 12 || 12
571    }
572
573    function Ut() {
574        return this.hours() || 24
575    }
576
577    function Et(t, e) {
578        H(t, 0, 0, function() {
579            return this.localeData().meridiem(this.hours(), this.minutes(), e)
580        })
581    }
582
583    function Ht(t, e) {
584        return e._meridiemParse
585    }
586
587    function Vt(t) {
588        return "p" === (t + "").toLowerCase().charAt(0)
589    }
590
591    function $t(t, e, i) {
592        return t > 11 ? i ? "pm" : "PM" : i ? "am" : "AM"
593    }
594
595    function Xt(t) {
596        return t ? t.toLowerCase().replace("_", "-") : t
597    }
598
599    function qt(t) {
600        for (var e, i, n, s, r = 0; r < t.length;) {
601            for (s = Xt(t[r]).split("-"), e = s.length, i = Xt(t[r + 1]), i = i ? i.split("-") : null; e > 0;) {
602                if (n = Bt(s.slice(0, e).join("-"))) return n;
603                if (i && i.length >= e && w(s, i, !0) >= e - 1) break;
604                e--
605            }
606            r++
607        }
608        return null
609    }
610
611    function Bt(t) {
612        var e = null;
613        if (!xs[t] && "undefined" != typeof module && module && module.exports) try {
614            e = vs._abbr, require("./locale/" + t), Zt(e)
615        } catch (i) {}
616        return xs[t]
617    }
618
619    function Zt(t, e) {
620        var i;
621        return t && (i = p(e) ? te(t) : Jt(t, e), i && (vs = i)), vs._abbr
622    }
623
624    function Jt(t, e) {
625        if (null !== e) {
626            var i = Ts;
627            return e.abbr = t, null != xs[t] ? (x("defineLocaleOverride", "use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."), i = xs[t]._config) : null != e.parentLocale && (null != xs[e.parentLocale] ? i = xs[e.parentLocale]._config : x("parentLocaleUndefined", "specified parentLocale is not defined yet. See http://momentjs.com/guides/#/warnings/parent-locale/")), xs[t] = new M(P(i, e)), Zt(t), xs[t]
628        }
629        return delete xs[t], null
630    }
631
632    function Kt(t, e) {
633        if (null != e) {
634            var i, n = Ts;
635            null != xs[t] && (n = xs[t]._config), e = P(n, e), i = new M(e), i.parentLocale = xs[t], xs[t] = i, Zt(t)
636        } else null != xs[t] && (null != xs[t].parentLocale ? xs[t] = xs[t].parentLocale : null != xs[t] && delete xs[t]);
637        return xs[t]
638    }
639
640    function te(t) {
641        var e;
642        if (t && t._locale && t._locale._abbr && (t = t._locale._abbr), !t) return vs;
643        if (!i(t)) {
644            if (e = Bt(t)) return e;
645            t = [t]
646        }
647        return qt(t)
648    }
649
650    function ee() {
651        return yn(xs)
652    }
653
654    function ie(t) {
655        var e, i = t._a;
656        return i && -2 === d(t).overflow && (e = i[Jn] < 0 || i[Jn] > 11 ? Jn : i[Kn] < 1 || i[Kn] > nt(i[Zn], i[Jn]) ? Kn : i[ts] < 0 || i[ts] > 24 || 24 === i[ts] && (0 !== i[es] || 0 !== i[is] || 0 !== i[ns]) ? ts : i[es] < 0 || i[es] > 59 ? es : i[is] < 0 || i[is] > 59 ? is : i[ns] < 0 || i[ns] > 999 ? ns : -1, d(t)._overflowDayOfYear && (Zn > e || e > Kn) && (e = Kn), d(t)._overflowWeeks && -1 === e && (e = ss), d(t)._overflowWeekday && -1 === e && (e = rs), d(t).overflow = e), t
657    }
658
659    function ne(t) {
660        var e, i, n, s, r, a, o = t._i,
661            l = Ss.exec(o) || ks.exec(o);
662        if (l) {
663            for (d(t).iso = !0, e = 0, i = Ms.length; i > e; e++)
664                if (Ms[e][1].exec(l[1])) {
665                    s = Ms[e][0], n = Ms[e][2] !== !1;
666                    break
667                } if (null == s) return void(t._isValid = !1);
668            if (l[3]) {
669                for (e = 0, i = Ds.length; i > e; e++)
670                    if (Ds[e][1].exec(l[3])) {
671                        r = (l[2] || " ") + Ds[e][0];
672                        break
673                    } if (null == r) return void(t._isValid = !1)
674            }
675            if (!n && null != r) return void(t._isValid = !1);
676            if (l[4]) {
677                if (!Ps.exec(l[4])) return void(t._isValid = !1);
678                a = "Z"
679            }
680            t._f = s + (r || "") + (a || ""), ue(t)
681        } else t._isValid = !1
682    }
683
684    function se(e) {
685        var i = Os.exec(e._i);
686        return null !== i ? void(e._d = new Date(+i[1])) : (ne(e), void(e._isValid === !1 && (delete e._isValid, t.createFromInputFallback(e))))
687    }
688
689    function re(t, e, i) {
690        return null != t ? t : null != e ? e : i
691    }
692
693    function ae(e) {
694        var i = new Date(t.now());
695        return e._useUTC ? [i.getUTCFullYear(), i.getUTCMonth(), i.getUTCDate()] : [i.getFullYear(), i.getMonth(), i.getDate()]
696    }
697
698    function oe(t) {
699        var e, i, n, s, r = [];
700        if (!t._d) {
701            for (n = ae(t), t._w && null == t._a[Kn] && null == t._a[Jn] && le(t), t._dayOfYear && (s = re(t._a[Zn], n[Zn]), t._dayOfYear > pt(s) && (d(t)._overflowDayOfYear = !0), i = yt(s, 0, t._dayOfYear), t._a[Jn] = i.getUTCMonth(), t._a[Kn] = i.getUTCDate()), e = 0; 3 > e && null == t._a[e]; ++e) t._a[e] = r[e] = n[e];
702            for (; 7 > e; e++) t._a[e] = r[e] = null == t._a[e] ? 2 === e ? 1 : 0 : t._a[e];
703            24 === t._a[ts] && 0 === t._a[es] && 0 === t._a[is] && 0 === t._a[ns] && (t._nextDay = !0, t._a[ts] = 0), t._d = (t._useUTC ? yt : gt).apply(null, r), null != t._tzm && t._d.setUTCMinutes(t._d.getUTCMinutes() - t._tzm), t._nextDay && (t._a[ts] = 24)
704        }
705    }
706
707    function le(t) {
708        var e, i, n, s, r, a, o, l;
709        e = t._w, null != e.GG || null != e.W || null != e.E ? (r = 1, a = 4, i = re(e.GG, t._a[Zn], bt(ge(), 1, 4).year), n = re(e.W, 1), s = re(e.E, 1), (1 > s || s > 7) && (l = !0)) : (r = t._locale._week.dow, a = t._locale._week.doy, i = re(e.gg, t._a[Zn], bt(ge(), r, a).year), n = re(e.w, 1), null != e.d ? (s = e.d, (0 > s || s > 6) && (l = !0)) : null != e.e ? (s = e.e + r, (e.e < 0 || e.e > 6) && (l = !0)) : s = r), 1 > n || n > Tt(i, r, a) ? d(t)._overflowWeeks = !0 : null != l ? d(t)._overflowWeekday = !0 : (o = wt(i, n, s, r, a), t._a[Zn] = o.year, t._dayOfYear = o.dayOfYear)
710    }
711
712    function ue(e) {
713        if (e._f === t.ISO_8601) return void ne(e);
714        e._a = [], d(e).empty = !0;
715        var i, n, s, r, a, o = "" + e._i,
716            l = o.length,
717            u = 0;
718        for (s = q(e._f, e._locale).match(Dn) || [], i = 0; i < s.length; i++) r = s[i], n = (o.match(Z(r, e)) || [])[0], n && (a = o.substr(0, o.indexOf(n)), a.length > 0 && d(e).unusedInput.push(a), o = o.slice(o.indexOf(n) + n.length), u += n.length), Yn[r] ? (n ? d(e).empty = !1 : d(e).unusedTokens.push(r), it(r, n, e)) : e._strict && !n && d(e).unusedTokens.push(r);
719        d(e).charsLeftOver = l - u, o.length > 0 && d(e).unusedInput.push(o), e._a[ts] <= 12 && d(e).bigHour === !0 && e._a[ts] > 0 && (d(e).bigHour = void 0), d(e).parsedDateParts = e._a.slice(0), d(e).meridiem = e._meridiem, e._a[ts] = he(e._locale, e._a[ts], e._meridiem), oe(e), ie(e)
720    }
721
722    function he(t, e, i) {
723        var n;
724        return null == i ? e : null != t.meridiemHour ? t.meridiemHour(e, i) : null != t.isPM ? (n = t.isPM(i), n && 12 > e && (e += 12), n || 12 !== e || (e = 0), e) : e
725    }
726
727    function de(t) {
728        var e, i, n, s, r;
729        if (0 === t._f.length) return d(t).invalidFormat = !0, void(t._d = new Date(NaN));
730        for (s = 0; s < t._f.length; s++) r = 0, e = _({}, t), null != t._useUTC && (e._useUTC = t._useUTC), e._f = t._f[s], ue(e), c(e) && (r += d(e).charsLeftOver, r += 10 * d(e).unusedTokens.length, d(e).score = r, (null == n || n > r) && (n = r, i = e));
731        l(t, i || e)
732    }
733
734    function ce(t) {
735        if (!t._d) {
736            var e = I(t._i);
737            t._a = a([e.year, e.month, e.day || e.date, e.hour, e.minute, e.second, e.millisecond], function(t) {
738                return t && parseInt(t, 10)
739            }), oe(t)
740        }
741    }
742
743    function fe(t) {
744        var e = new m(ie(pe(t)));
745        return e._nextDay && (e.add(1, "d"), e._nextDay = void 0), e
746    }
747
748    function pe(t) {
749        var e = t._i,
750            n = t._f;
751        return t._locale = t._locale || te(t._l), null === e || void 0 === n && "" === e ? f({
752            nullInput: !0
753        }) : ("string" == typeof e && (t._i = e = t._locale.preparse(e)), g(e) ? new m(ie(e)) : (i(n) ? de(t) : r(e) ? t._d = e : n ? ue(t) : _e(t), c(t) || (t._d = null), t))
754    }
755
756    function _e(e) {
757        var n = e._i;
758        void 0 === n ? e._d = new Date(t.now()) : r(n) ? e._d = new Date(n.valueOf()) : "string" == typeof n ? se(e) : i(n) ? (e._a = a(n.slice(0), function(t) {
759            return parseInt(t, 10)
760        }), oe(e)) : "object" == typeof n ? ce(e) : "number" == typeof n ? e._d = new Date(n) : t.createFromInputFallback(e)
761    }
762
763    function me(t, e, r, a, o) {
764        var l = {};
765        return "boolean" == typeof r && (a = r, r = void 0), (n(t) && s(t) || i(t) && 0 === t.length) && (t = void 0), l._isAMomentObject = !0, l._useUTC = l._isUTC = o, l._l = r, l._i = t, l._f = e, l._strict = a, fe(l)
766    }
767
768    function ge(t, e, i, n) {
769        return me(t, e, i, n, !1)
770    }
771
772    function ye(t, e) {
773        var n, s;
774        if (1 === e.length && i(e[0]) && (e = e[0]), !e.length) return ge();
775        for (n = e[0], s = 1; s < e.length; ++s)(!e[s].isValid() || e[s][t](n)) && (n = e[s]);
776        return n
777    }
778
779    function ve() {
780        var t = [].slice.call(arguments, 0);
781        return ye("isBefore", t)
782    }
783
784    function we() {
785        var t = [].slice.call(arguments, 0);
786        return ye("isAfter", t)
787    }
788
789    function be(t) {
790        var e = I(t),
791            i = e.year || 0,
792            n = e.quarter || 0,
793            s = e.month || 0,
794            r = e.week || 0,
795            a = e.day || 0,
796            o = e.hour || 0,
797            l = e.minute || 0,
798            u = e.second || 0,
799            h = e.millisecond || 0;
800        this._milliseconds = +h + 1e3 * u + 6e4 * l + 1e3 * o * 60 * 60, this._days = +a + 7 * r, this._months = +s + 3 * n + 12 * i, this._data = {}, this._locale = te(), this._bubble()
801    }
802
803    function Te(t) {
804        return t instanceof be
805    }
806
807    function xe(t) {
808        return 0 > t ? -1 * Math.round(-1 * t) : Math.round(t)
809    }
810
811    function Se(t, e) {
812        H(t, 0, 0, function() {
813            var t = this.utcOffset(),
814                i = "+";
815            return 0 > t && (t = -t, i = "-"), i + E(~~(t / 60), 2) + e + E(~~t % 60, 2)
816        })
817    }
818
819    function ke(t, e) {
820        var i = (e || "").match(t) || [],
821            n = i[i.length - 1] || [],
822            s = (n + "").match(js) || ["-", 0, 0],
823            r = +(60 * s[1]) + v(s[2]);
824        return "+" === s[0] ? r : -r
825    }
826
827    function Pe(e, i) {
828        var n, s;
829        return i._isUTC ? (n = i.clone(), s = (g(e) || r(e) ? e.valueOf() : ge(e).valueOf()) - n.valueOf(), n._d.setTime(n._d.valueOf() + s), t.updateOffset(n, !1), n) : ge(e).local()
830    }
831
832    function Me(t) {
833        return 15 * -Math.round(t._d.getTimezoneOffset() / 15)
834    }
835
836    function De(e, i) {
837        var n, s = this._offset || 0;
838        return this.isValid() ? null != e ? ("string" == typeof e ? e = ke(Vn, e) : Math.abs(e) < 16 && (e = 60 * e), !this._isUTC && i && (n = Me(this)), this._offset = e, this._isUTC = !0, null != n && this.add(n, "m"), s !== e && (!i || this._changeInProgress ? Ee(this, Fe(e - s, "m"), 1, !1) : this._changeInProgress || (this._changeInProgress = !0, t.updateOffset(this, !0), this._changeInProgress = null)), this) : this._isUTC ? s : Me(this) : null != e ? this : Na
838N
839    }
840
841    function Oe(t, e) {
842        return null != t ? ("string" != typeof t && (t = -t), this.utcOffset(t, e), this) : -this.utcOffset()
843    }
844
845    function Ce(t) {
846        return this.utcOffset(0, t)
847    }
848
849    function Ye(t) {
850        return this._isUTC && (this.utcOffset(0, t), this._isUTC = !1, t && this.subtract(Me(this), "m")), this
851    }
852
853    function Re() {
854        if (this._tzm) this.utcOffset(this._tzm);
855        else if ("string" == typeof this._i) {
856            var t = ke(Hn, this._i);
857            0 === t ? this.utcOffset(0, !0) : this.utcOffset(ke(Hn, this._i))
858        }
859        return this
860    }
861
862    function je(t) {
863        return this.isValid() ? (t = t ? ge(t).utcOffset() : 0, (this.utcOffset() - t) % 60 === 0) : !1
864    }
865
866    function Le() {
867        return this.utcOffset() > this.clone().month(0).utcOffset() || this.utcOffset() > this.clone().month(5).utcOffset()
868    }
869
870    function Ae() {
871        if (!p(this._isDSTShifted)) return this._isDSTShifted;
872        var t = {};
873        if (_(t, this), t = pe(t), t._a) {
874            var e = t._isUTC ? u(t._a) : ge(t._a);
875            this._isDSTShifted = this.isValid() && w(t._a, e.toArray()) > 0
876        } else this._isDSTShifted = !1;
877        return this._isDSTShifted
878    }
879
880    function Ie() {
881        return this.isValid() ? !this._isUTC : !1
882    }
883
884    function ze() {
885        return this.isValid() ? this._isUTC : !1
886    }
887
888    function Qe() {
889        return this.isValid() ? this._isUTC && 0 === this._offset : !1
890    }
891
892    function Fe(t, e) {
893        var i, n, s, r = t,
894            a = null;
895        return Te(t) ? r = {
896            ms: t._milliseconds,
897            d: t._days,
898            M: t._months
899        } : "number" == typeof t ? (r = {}, e ? r[e] = t : r.milliseconds = t) : (a = Ls.exec(t)) ? (i = "-" === a[1] ? -1 : 1, r = {
900            y: 0,
901            d: v(a[Kn]) * i,
902            h: v(a[ts]) * i,
903            m: v(a[es]) * i,
904            s: v(a[is]) * i,
905            ms: v(xe(1e3 * a[ns])) * i
906        }) : (a = As.exec(t)) ? (i = "-" === a[1] ? -1 : 1, r = {
907            y: We(a[2], i),
908            M: We(a[3], i),
909            w: We(a[4], i),
910            d: We(a[5], i),
911            h: We(a[6], i),
vendor: 31,519 bytes, lines 912-1688
912            m: We(a[7], i),
913            s: We(a[8], i)
914        }) : null == r ? r = {} : "object" == typeof r && ("from" in r || "to" in r) && (s = Ne(ge(r.from), ge(r.to)), r = {}, r.ms = s.milliseconds, r.M = s.months), n = new be(r), Te(t) && o(t, "_locale") && (n._locale = t._locale), n
915    }
916
917    function We(t, e) {
918        var i = t && parseFloat(t.replace(",", "."));
919        return (isNaN(i) ? 0 : i) * e
920    }
921
922    function Ge(t, e) {
923        var i = {
924            milliseconds: 0,
925            months: 0
926        };
927        return i.months = e.month() - t.month() + 12 * (e.year() - t.year()), t.clone().add(i.months, "M").isAfter(e) && --i.months, i.milliseconds = +e - +t.clone().add(i.months, "M"), i
928    }
929
930    function Ne(t, e) {
931        var i;
932        return t.isValid() && e.isValid() ? (e = Pe(e, t), t.isBefore(e) ? i = Ge(t, e) : (i = Ge(e, t), i.milliseconds = -i.milliseconds, i.months = -i.months), i) : {
933            milliseconds: 0,
934            months: 0
935        }
936    }
937
938    function Ue(t, e) {
939        return function(i, n) {
940            var s, r;
941            return null === n || isNaN(+n) || (x(e, "moment()." + e + "(period, number) is deprecated. Please use moment()." + e + "(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."), r = i, i = n, n = r), i = "string" == typeof i ? +i : i, s = Fe(i, n), Ee(this, s, t), this
942        }
943    }
944
945    function Ee(e, i, n, s) {
946        var r = i._milliseconds,
947            a = xe(i._days),
948            o = xe(i._months);
949        e.isValid() && (s = null == s ? !0 : s, r && e._d.setTime(e._d.valueOf() + r * n), a && G(e, "Date", W(e, "Date") + a * n), o && lt(e, W(e, "Month") + o * n), s && t.updateOffset(e, a || o))
950    }
951
952    function He(t, e) {
953        var i = t.diff(e, "days", !0);
954        return -6 > i ? "sameElse" : -1 > i ? "lastWeek" : 0 > i ? "lastDay" : 1 > i ? "sameDay" : 2 > i ? "nextDay" : 7 > i ? "nextWeek" : "sameElse"
955    }
956
957    function Ve(e, i) {
958        var n = e || ge(),
959            s = Pe(n, this).startOf("day"),
960            r = t.calendarFormat(this, s) || "sameElse",
961            a = i && (S(i[r]) ? i[r].call(this, n) : i[r]);
962        return this.format(a || this.localeData().calendar(r, this, ge(n)))
963    }
964
965    function $e() {
966        return new m(this)
967    }
968
969    function Xe(t, e) {
970        var i = g(t) ? t : ge(t);
971        return this.isValid() && i.isValid() ? (e = A(p(e) ? "millisecond" : e), "millisecond" === e ? this.valueOf() > i.valueOf() : i.valueOf() < this.clone().startOf(e).valueOf()) : !1
972    }
973
974    function qe(t, e) {
975        var i = g(t) ? t : ge(t);
976        return this.isValid() && i.isValid() ? (e = A(p(e) ? "millisecond" : e), "millisecond" === e ? this.valueOf() < i.valueOf() : this.clone().endOf(e).valueOf() < i.valueOf()) : !1
977    }
978
979    function Be(t, e, i, n) {
980        return n = n || "()", ("(" === n[0] ? this.isAfter(t, i) : !this.isBefore(t, i)) && (")" === n[1] ? this.isBefore(e, i) : !this.isAfter(e, i))
981    }
982
983    function Ze(t, e) {
984        var i, n = g(t) ? t : ge(t);
985        return this.isValid() && n.isValid() ? (e = A(e || "millisecond"), "millisecond" === e ? this.valueOf() === n.valueOf() : (i = n.valueOf(), this.clone().startOf(e).valueOf() <= i && i <= this.clone().endOf(e).valueOf())) : !1
986    }
987
988    function Je(t, e) {
989        return this.isSame(t, e) || this.isAfter(t, e)
990    }
991
992    function Ke(t, e) {
993        return this.isSame(t, e) || this.isBefore(t, e)
994    }
995
996    function ti(t, e, i) {
997        var n, s, r, a;
998        return this.isValid() ? (n = Pe(t, this), n.isValid() ? (s = 6e4 * (n.utcOffset() - this.utcOffset()), e = A(e), "year" === e || "month" === e || "quarter" === e ? (a = ei(this, n), "quarter" === e ? a /= 3 : "year" === e && (a /= 12)) : (r = this - n, a = "second" === e ? r / 1e3 : "minute" === e ? r / 6e4 : "hour" === e ? r / 36e5 : "day" === e ? (r - s) / 864e5 : "week" === e ? (r - s) / 6048e5 : r), i ? a : y(a)) : NaN) : NaN
999    }
1000
1001    function ei(t, e) {
1002        var i, n, s = 12 * (e.year() - t.year()) + (e.month() - t.month()),
1003            r = t.clone().add(s, "months");
1004        return 0 > e - r ? (i = t.clone().add(s - 1, "months"), n = (e - r) / (r - i)) : (i = t.clone().add(s + 1, "months"), n = (e - r) / (i - r)), -(s + n) || 0
1005    }
1006
1007    function ii() {
1008        return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")
1009    }
1010
1011    function ni() {
1012        var t = this.clone().utc();
1013        return 0 < t.year() && t.year() <= 9999 ? S(Date.prototype.toISOString) ? this.toDate().toISOString() : X(t, "YYYY-MM-DD[T]HH:mm:ss.SSS[Z]") : X(t, "YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]")
1014    }
1015
1016    function si(e) {
1017        e || (e = this.isUtc() ? t.defaultFormatUtc : t.defaultFormat);
1018        var i = X(this, e);
1019        return this.localeData().postformat(i)
1020    }
1021
1022    function ri(t, e) {
1023        return this.isValid() && (g(t) && t.isValid() || ge(t).isValid()) ? Fe({
1024            to: this,
1025            from: t
1026        }).locale(this.locale()).humanize(!e) : this.localeData().invalidDate()
1027    }
1028
1029    function ai(t) {
1030        return this.from(ge(), t)
1031    }
1032
1033    function oi(t, e) {
1034        return this.isValid() && (g(t) && t.isValid() || ge(t).isValid()) ? Fe({
1035            from: this,
1036            to: t
1037        }).locale(this.locale()).humanize(!e) : this.localeData().invalidDate()
1038    }
1039
1040    function li(t) {
1041        return this.to(ge(), t)
1042    }
1043
1044    function ui(t) {
1045        var e;
1046        return void 0 === t ? this._locale._abbr : (e = te(t), null != e && (this._locale = e), this)
1047    }
1048
1049    function hi() {
1050        return this._locale
1051    }
1052
1053    function di(t) {
1054        switch (t = A(t)) {
1055            case "year":
1056                this.month(0);
1057            case "quarter":
1058            case "month":
1059                this.date(1);
1060            case "week":
1061            case "isoWeek":
1062            case "day":
1063            case "date":
1064                this.hours(0);
1065            case "hour":
1066                this.minutes(0);
1067            case "minute":
1068                this.seconds(0);
1069            case "second":
1070                this.milliseconds(0)
1071        }
1072        return "week" === t && this.weekday(0), "isoWeek" === t && this.isoWeekday(1), "quarter" === t && this.month(3 * Math.floor(this.month() / 3)), this
1073    }
1074
1075    function ci(t) {
1076        return t = A(t), void 0 === t || "millisecond" === t ? this : ("date" === t && (t = "day"), this.startOf(t).add(1, "isoWeek" === t ? "week" : t).subtract(1, "ms"))
1077    }
1078
1079    function fi() {
1080        return this._d.valueOf() - 6e4 * (this._offset || 0)
1081    }
1082
1083    function pi() {
1084        return Math.floor(this.valueOf() / 1e3)
1085    }
1086
1087    function _i() {
1088        return new Date(this.valueOf())
1089    }
1090
1091    function mi() {
1092        var t = this;
1093        return [t.year(), t.month(), t.date(), t.hour(), t.minute(), t.second(), t.millisecond()]
1094    }
1095
1096    function gi() {
1097        var t = this;
1098        return {
1099            years: t.year(),
1100            months: t.month(),
1101            date: t.date(),
1102            hours: t.hours(),
1103            minutes: t.minutes(),
1104            seconds: t.seconds(),
1105            milliseconds: t.milliseconds()
1106        }
1107    }
1108
1109    function yi() {
1110        return this.isValid() ? this.toISOString() : null
1111    }
1112
1113    function vi() {
1114        return c(this)
1115    }
1116
1117    function wi() {
1118        return l({}, d(this))
1119    }
1120
1121    function bi() {
1122        return d(this).overflow
1123    }
1124
1125    function Ti() {
1126        return {
1127            input: this._i,
1128            format: this._f,
1129            locale: this._locale,
1130            isUTC: this._isUTC,
1131            strict: this._strict
1132        }
1133    }
1134
1135    function xi(t, e) {
1136        H(0, [t, t.length], 0, e)
1137    }
1138
1139    function Si(t) {
1140        return Di.call(this, t, this.week(), this.weekday(), this.localeData()._week.dow, this.localeData()._week.doy)
1141    }
1142
1143    function ki(t) {
1144        return Di.call(this, t, this.isoWeek(), this.isoWeekday(), 1, 4)
1145    }
1146
1147    function Pi() {
1148        return Tt(this.year(), 1, 4)
1149    }
1150
1151    function Mi() {
1152        var t = this.localeData()._week;
1153        return Tt(this.year(), t.dow, t.doy)
1154    }
1155
1156    function Di(t, e, i, n, s) {
1157        var r;
1158        return null == t ? bt(this, n, s).year : (r = Tt(t, n, s), e > r && (e = r), Oi.call(this, t, e, i, n, s))
1159    }
1160
1161    function Oi(t, e, i, n, s) {
1162        var r = wt(t, e, i, n, s),
1163            a = yt(r.year, 0, r.dayOfYear);
1164        return this.year(a.getUTCFullYear()), this.month(a.getUTCMonth()), this.date(a.getUTCDate()), this
1165    }
1166
1167    function Ci(t) {
1168        return null == t ? Math.ceil((this.month() + 1) / 3) : this.month(3 * (t - 1) + this.month() % 3)
1169    }
1170
1171    function Yi(t) {
1172        var e = Math.round((this.clone().startOf("day") - this.clone().startOf("year")) / 864e5) + 1;
1173        return null == t ? e : this.add(t - e, "d")
1174    }
1175
1176    function Ri(t, e) {
1177        e[ns] = v(1e3 * ("0." + t))
1178    }
1179
1180    function ji() {
1181        return this._isUTC ? "UTC" : ""
1182    }
1183
1184    function Li() {
1185        return this._isUTC ? "Coordinated Universal Time" : ""
1186    }
1187
1188    function Ai(t) {
1189        return ge(1e3 * t)
1190    }
1191
1192    function Ii() {
1193        return ge.apply(null, arguments).parseZone()
1194    }
1195
1196    function zi(t) {
1197        return t
1198    }
1199
1200    function Qi(t, e, i, n) {
1201        var s = te(),
1202            r = u().set(n, e);
1203        return s[i](r, t)
1204    }
1205
1206    function Fi(t, e, i) {
1207        if ("number" == typeof t && (e = t, t = void 0), t = t || "", null != e) return Qi(t, e, i, "month");
1208        var n, s = [];
1209        for (n = 0; 12 > n; n++) s[n] = Qi(t, n, i, "month");
1210        return s
1211    }
1212
1213    function Wi(t, e, i, n) {
1214        "boolean" == typeof t ? ("number" == typeof e && (i = e, e = void 0), e = e || "") : (e = t, i = e, t = !1, "number" == typeof e && (i = e, e = void 0), e = e || "");
1215        var s = te(),
1216            r = t ? s._week.dow : 0;
1217        if (null != i) return Qi(e, (i + r) % 7, n, "day");
1218        var a, o = [];
1219        for (a = 0; 7 > a; a++) o[a] = Qi(e, (a + r) % 7, n, "day");
1220        return o
1221    }
1222
1223    function Gi(t, e) {
1224        return Fi(t, e, "months")
1225    }
1226
1227    function Ni(t, e) {
1228        return Fi(t, e, "monthsShort")
1229    }
1230
1231    function Ui(t, e, i) {
1232        return Wi(t, e, i, "weekdays")
1233    }
1234
1235    function Ei(t, e, i) {
1236        return Wi(t, e, i, "weekdaysShort")
1237    }
1238
1239    function Hi(t, e, i) {
1240        return Wi(t, e, i, "weekdaysMin");
1241    }
1242
1243    function Vi() {
1244        var t = this._data;
1245        return this._milliseconds = $s(this._milliseconds), this._days = $s(this._days), this._months = $s(this._months), t.milliseconds = $s(t.milliseconds), t.seconds = $s(t.seconds), t.minutes = $s(t.minutes), t.hours = $s(t.hours), t.months = $s(t.months), t.years = $s(t.years), this
1246    }
1247
1248    function $i(t, e, i, n) {
1249        var s = Fe(e, i);
1250        return t._milliseconds += n * s._milliseconds, t._days += n * s._days, t._months += n * s._months, t._bubble()
1251    }
1252
1253    function Xi(t, e) {
1254        return $i(this, t, e, 1)
1255    }
1256
1257    function qi(t, e) {
1258        return $i(this, t, e, -1)
1259    }
1260
1261    function Bi(t) {
1262        return 0 > t ? Math.floor(t) : Math.ceil(t)
1263    }
1264
1265    function Zi() {
1266        var t, e, i, n, s, r = this._milliseconds,
1267            a = this._days,
1268            o = this._months,
1269            l = this._data;
1270        return r >= 0 && a >= 0 && o >= 0 || 0 >= r && 0 >= a && 0 >= o || (r += 864e5 * Bi(Ki(o) + a), a = 0, o = 0), l.milliseconds = r % 1e3, t = y(r / 1e3), l.seconds = t % 60, e = y(t / 60), l.minutes = e % 60, i = y(e / 60), l.hours = i % 24, a += y(i / 24), s = y(Ji(a)), o += s, a -= Bi(Ki(s)), n = y(o / 12), o %= 12, l.days = a, l.months = o, l.years = n, this
1271    }
1272
1273    function Ji(t) {
1274        return 4800 * t / 146097
1275    }
1276
1277    function Ki(t) {
1278        return 146097 * t / 4800
1279    }
1280
1281    function tn(t) {
1282        var e, i, n = this._milliseconds;
1283        if (t = A(t), "month" === t || "year" === t) return e = this._days + n / 864e5, i = this._months + Ji(e), "month" === t ? i : i / 12;
1284        switch (e = this._days + Math.round(Ki(this._months)), t) {
1285            case "week":
1286                return e / 7 + n / 6048e5;
1287            case "day":
1288                return e + n / 864e5;
1289            case "hour":
1290                return 24 * e + n / 36e5;
1291            case "minute":
1292                return 1440 * e + n / 6e4;
1293            case "second":
1294                return 86400 * e + n / 1e3;
1295            case "millisecond":
1296                return Math.floor(864e5 * e) + n;
1297            default:
1298                throw new Error("Unknown unit " + t)
1299        }
1300    }
1301
1302    function en() {
1303        return this._milliseconds + 864e5 * this._days + this._months % 12 * 2592e6 + 31536e6 * v(this._months / 12)
1304    }
1305
1306    function nn(t) {
1307        return function() {
1308            return this.as(t)
1309        }
1310    }
1311
1312    function sn(t) {
1313        return t = A(t), this[t + "s"]()
1314    }
1315
1316    function rn(t) {
1317        return function() {
1318            return this._data[t]
1319        }
1320    }
1321
1322    function an() {
1323        return y(this.days() / 7)
1324    }
1325
1326    function on(t, e, i, n, s) {
1327        return s.relativeTime(e || 1, !!i, t, n)
1328    }
1329
1330    function ln(t, e, i) {
1331        var n = Fe(t).abs(),
1332            s = ur(n.as("s")),
1333            r = ur(n.as("m")),
1334            a = ur(n.as("h")),
1335            o = ur(n.as("d")),
1336            l = ur(n.as("M")),
1337            u = ur(n.as("y")),
1338            h = s < hr.s && ["s", s] || 1 >= r && ["m"] || r < hr.m && ["mm", r] || 1 >= a && ["h"] || a < hr.h && ["hh", a] || 1 >= o && ["d"] || o < hr.d && ["dd", o] || 1 >= l && ["M"] || l < hr.M && ["MM", l] || 1 >= u && ["y"] || ["yy", u];
1339        return h[2] = e, h[3] = +t > 0, h[4] = i, on.apply(null, h)
1340    }
1341
1342    function un(t) {
1343        return void 0 === t ? ur : "function" == typeof t ? (ur = t, !0) : !1
1344    }
1345
1346    function hn(t, e) {
1347        return void 0 === hr[t] ? !1 : void 0 === e ? hr[t] : (hr[t] = e, !0)
1348    }
1349
1350    function dn(t) {
1351        var e = this.localeData(),
1352            i = ln(this, !t, e);
1353        return t && (i = e.pastFuture(+this, i)), e.postformat(i)
1354    }
1355
1356    function cn() {
1357        var t, e, i, n = dr(this._milliseconds) / 1e3,
1358            s = dr(this._days),
1359            r = dr(this._months);
1360        t = y(n / 60), e = y(t / 60), n %= 60, t %= 60, i = y(r / 12), r %= 12;
1361        var a = i,
1362            o = r,
1363            l = s,
1364            u = e,
1365            h = t,
1366            d = n,
1367            c = this.asSeconds();
1368        return c ? (0 > c ? "-" : "") + "P" + (a ? a + "Y" : "") + (o ? o + "M" : "") + (l ? l + "D" : "") + (u || h || d ? "T" : "") + (u ? u + "H" : "") + (h ? h + "M" : "") + (d ? d + "S" : "") : "P0D"
1369    }
1370    var fn, pn;
1371    pn = Array.prototype.some ? Array.prototype.some : function(t) {
1372        for (var e = Object(this), i = e.length >>> 0, n = 0; i > n; n++)
1373            if (n in e && t.call(this, e[n], n, e)) return !0;
1374        return !1
1375    };
1376    var _n = t.momentProperties = [],
1377        mn = !1,
1378        gn = {};
1379    t.suppressDeprecationWarnings = !1, t.deprecationHandler = null;
1380    var yn;
1381    yn = Object.keys ? Object.keys : function(t) {
1382        var e, i = [];
1383        for (e in t) o(t, e) && i.push(e);
1384        return i
1385    };
1386    var vn, wn = {
1387            sameDay: "[Today at] LT",
1388            nextDay: "[Tomorrow at] LT",
1389            nextWeek: "dddd [at] LT",
1390            lastDay: "[Yesterday at] LT",
1391            lastWeek: "[Last] dddd [at] LT",
1392            sameElse: "L"
1393        },
1394        bn = {
1395            LTS: "h:mm:ss A",
1396            LT: "h:mm A",
1397            L: "MM/DD/YYYY",
1398            LL: "MMMM D, YYYY",
1399            LLL: "MMMM D, YYYY h:mm A",
1400            LLLL: "dddd, MMMM D, YYYY h:mm A"
1401        },
1402        Tn = "Invalid date",
1403        xn = "%d",
1404        Sn = /\d{1,2}/,
1405        kn = {
1406            future: "in %s",
1407            past: "%s ago",
1408            s: "a few seconds",
1409            m: "a minute",
1410            mm: "%d minutes",
1411            h: "an hour",
1412            hh: "%d hours",
1413            d: "a day",
1414            dd: "%d days",
1415            M: "a month",
1416            MM: "%d months",
1417            y: "a year",
1418            yy: "%d years"
1419        },
1420        Pn = {},
1421        Mn = {},
1422        Dn = /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,
1423        On = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,
1424        Cn = {},
1425        Yn = {},
1426        Rn = /\d/,
1427        jn = /\d\d/,
1428        Ln = /\d{3}/,
1429        An = /\d{4}/,
1430        In = /[+-]?\d{6}/,
1431        zn = /\d\d?/,
1432        Qn = /\d\d\d\d?/,
1433        Fn = /\d\d\d\d\d\d?/,
1434        Wn = /\d{1,3}/,
1435        Gn = /\d{1,4}/,
1436        Nn = /[+-]?\d{1,6}/,
1437        Un = /\d+/,
1438        En = /[+-]?\d+/,
1439        Hn = /Z|[+-]\d\d:?\d\d/gi,
1440        Vn = /Z|[+-]\d\d(?::?\d\d)?/gi,
1441        $n = /[+-]?\d+(\.\d{1,3})?/,
1442        Xn = /[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,
1443        qn = {},
1444        Bn = {},
1445        Zn = 0,
1446        Jn = 1,
1447        Kn = 2,
1448        ts = 3,
1449        es = 4,
1450        is = 5,
1451        ns = 6,
1452        ss = 7,
1453        rs = 8;
1454    vn = Array.prototype.indexOf ? Array.prototype.indexOf : function(t) {
1455        var e;
1456        for (e = 0; e < this.length; ++e)
1457            if (this[e] === t) return e;
1458        return -1
1459    }, H("M", ["MM", 2], "Mo", function() {
1460        return this.month() + 1
1461    }), H("MMM", 0, 0, function(t) {
1462        return this.localeData().monthsShort(this, t)
1463    }), H("MMMM", 0, 0, function(t) {
1464        return this.localeData().months(this, t)
1465    }), L("month", "M"), z("month", 8), B("M", zn), B("MM", zn, jn), B("MMM", function(t, e) {
1466        return e.monthsShortRegex(t)
1467    }), B("MMMM", function(t, e) {
1468        return e.monthsRegex(t)
1469    }), tt(["M", "MM"], function(t, e) {
1470        e[Jn] = v(t) - 1
1471    }), tt(["MMM", "MMMM"], function(t, e, i, n) {
1472        var s = i._locale.monthsParse(t, n, i._strict);
1473        null != s ? e[Jn] = s : d(i).invalidMonth = t
1474    });
1475    var as = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,
1476        os = "January_February_March_April_May_June_July_August_September_October_November_December".split("_"),
1477        ls = "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),
1478        us = Xn,
1479        hs = Xn;
1480    H("Y", 0, 0, function() {
1481        var t = this.year();
1482        return 9999 >= t ? "" + t : "+" + t
1483    }), H(0, ["YY", 2], 0, function() {
1484        return this.year() % 100
1485    }), H(0, ["YYYY", 4], 0, "year"), H(0, ["YYYYY", 5], 0, "year"), H(0, ["YYYYYY", 6, !0], 0, "year"), L("year", "y"), z("year", 1), B("Y", En), B("YY", zn, jn), B("YYYY", Gn, An), B("YYYYY", Nn, In), B("YYYYYY", Nn, In), tt(["YYYYY", "YYYYYY"], Zn), tt("YYYY", function(e, i) {
1486        i[Zn] = 2 === e.length ? t.parseTwoDigitYear(e) : v(e)
1487    }), tt("YY", function(e, i) {
1488        i[Zn] = t.parseTwoDigitYear(e)
1489    }), tt("Y", function(t, e) {
1490        e[Zn] = parseInt(t, 10)
1491    }), t.parseTwoDigitYear = function(t) {
1492        return v(t) + (v(t) > 68 ? 1900 : 2e3)
1493    };
1494    var ds = F("FullYear", !0);
1495    H("w", ["ww", 2], "wo", "week"), H("W", ["WW", 2], "Wo", "isoWeek"), L("week", "w"), L("isoWeek", "W"), z("week", 5), z("isoWeek", 5), B("w", zn), B("ww", zn, jn), B("W", zn), B("WW", zn, jn), et(["w", "ww", "W", "WW"], function(t, e, i, n) {
1496        e[n.substr(0, 1)] = v(t)
1497    });
1498    var cs = {
1499        dow: 0,
1500        doy: 6
1501    };
1502    H("d", 0, "do", "day"), H("dd", 0, 0, function(t) {
1503        return this.localeData().weekdaysMin(this, t)
1504    }), H("ddd", 0, 0, function(t) {
1505        return this.localeData().weekdaysShort(this, t)
1506    }), H("dddd", 0, 0, function(t) {
1507        return this.localeData().weekdays(this, t)
1508    }), H("e", 0, 0, "weekday"), H("E", 0, 0, "isoWeekday"), L("day", "d"), L("weekday", "e"), L("isoWeekday", "E"), z("day", 11), z("weekday", 11), z("isoWeekday", 11), B("d", zn), B("e", zn), B("E", zn), B("dd", function(t, e) {
1509        return e.weekdaysMinRegex(t)
1510    }), B("ddd", function(t, e) {
1511        return e.weekdaysShortRegex(t)
1512    }), B("dddd", function(t, e) {
1513        return e.weekdaysRegex(t)
1514    }), et(["dd", "ddd", "dddd"], function(t, e, i, n) {
1515        var s = i._locale.weekdaysParse(t, n, i._strict);
1516        null != s ? e.d = s : d(i).invalidWeekday = t
1517    }), et(["d", "e", "E"], function(t, e, i, n) {
1518        e[n] = v(t)
1519    });
1520    var fs = "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),
1521        ps = "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),
1522        _s = "Su_Mo_Tu_We_Th_Fr_Sa".split("_"),
1523        ms = Xn,
1524        gs = Xn,
1525        ys = Xn;
1526    H("H", ["HH", 2], 0, "hour"), H("h", ["hh", 2], 0, Nt), H("k", ["kk", 2], 0, Ut), H("hmm", 0, 0, function() {
1527        return "" + Nt.apply(this) + E(this.minutes(), 2)
1528    }), H("hmmss", 0, 0, function() {
1529        return "" + Nt.apply(this) + E(this.minutes(), 2) + E(this.seconds(), 2)
1530    }), H("Hmm", 0, 0, function() {
1531        return "" + this.hours() + E(this.minutes(), 2)
1532    }), H("Hmmss", 0, 0, function() {
1533        return "" + this.hours() + E(this.minutes(), 2) + E(this.seconds(), 2)
1534    }), Et("a", !0), Et("A", !1), L("hour", "h"), z("hour", 13), B("a", Ht), B("A", Ht), B("H", zn), B("h", zn), B("HH", zn, jn), B("hh", zn, jn), B("hmm", Qn), B("hmmss", Fn), B("Hmm", Qn), B("Hmmss", Fn), tt(["H", "HH"], ts), tt(["a", "A"], function(t, e, i) {
1535        i._isPm = i._locale.isPM(t), i._meridiem = t
1536    }), tt(["h", "hh"], function(t, e, i) {
1537        e[ts] = v(t), d(i).bigHour = !0
1538    }), tt("hmm", function(t, e, i) {
1539        var n = t.length - 2;
1540        e[ts] = v(t.substr(0, n)), e[es] = v(t.substr(n)), d(i).bigHour = !0
1541    }), tt("hmmss", function(t, e, i) {
1542        var n = t.length - 4,
1543            s = t.length - 2;
1544        e[ts] = v(t.substr(0, n)), e[es] = v(t.substr(n, 2)), e[is] = v(t.substr(s)), d(i).bigHour = !0
1545    }), tt("Hmm", function(t, e) {
1546        var i = t.length - 2;
1547        e[ts] = v(t.substr(0, i)), e[es] = v(t.substr(i))
1548    }), tt("Hmmss", function(t, e) {
1549        var i = t.length - 4,
1550            n = t.length - 2;
1551        e[ts] = v(t.substr(0, i)), e[es] = v(t.substr(i, 2)), e[is] = v(t.substr(n))
1552    });
1553    var vs, ws = /[ap]\.?m?\.?/i,
1554        bs = F("Hours", !0),
1555        Ts = {
1556            calendar: wn,
1557            longDateFormat: bn,
1558            invalidDate: Tn,
1559            ordinal: xn,
1560            ordinalParse: Sn,
1561            relativeTime: kn,
1562            months: os,
1563            monthsShort: ls,
1564            week: cs,
1565            weekdays: fs,
1566            weekdaysMin: _s,
1567            weekdaysShort: ps,
1568            meridiemParse: ws
1569        },
1570        xs = {},
1571        Ss = /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/,
1572        ks = /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/,
1573        Ps = /Z|[+-]\d\d(?::?\d\d)?/,
1574        Ms = [
1575            ["YYYYYY-MM-DD", /[+-]\d{6}-\d\d-\d\d/],
1576            ["YYYY-MM-DD", /\d{4}-\d\d-\d\d/],
1577            ["GGGG-[W]WW-E", /\d{4}-W\d\d-\d/],
1578            ["GGGG-[W]WW", /\d{4}-W\d\d/, !1],
1579            ["YYYY-DDD", /\d{4}-\d{3}/],
1580            ["YYYY-MM", /\d{4}-\d\d/, !1],
1581            ["YYYYYYMMDD", /[+-]\d{10}/],
1582            ["YYYYMMDD", /\d{8}/],
1583            ["GGGG[W]WWE", /\d{4}W\d{3}/],
1584            ["GGGG[W]WW", /\d{4}W\d{2}/, !1],
1585            ["YYYYDDD", /\d{7}/]
1586        ],
1587        Ds = [
1588            ["HH:mm:ss.SSSS", /\d\d:\d\d:\d\d\.\d+/],
1589            ["HH:mm:ss,SSSS", /\d\d:\d\d:\d\d,\d+/],
1590            ["HH:mm:ss", /\d\d:\d\d:\d\d/],
1591            ["HH:mm", /\d\d:\d\d/],
1592            ["HHmmss.SSSS", /\d\d\d\d\d\d\.\d+/],
1593            ["HHmmss,SSSS", /\d\d\d\d\d\d,\d+/],
1594            ["HHmmss", /\d\d\d\d\d\d/],
1595            ["HHmm", /\d\d\d\d/],
1596            ["HH", /\d\d/]
1597        ],
1598        Os = /^\/?Date\((\-?\d+)/i;
1599    t.createFromInputFallback = T("value provided is not in a recognized ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.", function(t) {
1600        t._d = new Date(t._i + (t._useUTC ? " UTC" : ""))
1601    }), t.ISO_8601 = function() {};
1602    var Cs = T("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/", function() {
1603            var t = ge.apply(null, arguments);
1604            return this.isValid() && t.isValid() ? this > t ? this : t : f()
1605        }),
1606        Ys = T("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/", function() {
1607            var t = ge.apply(null, arguments);
1608            return this.isValid() && t.isValid() ? t > this ? this : t : f()
1609        }),
1610        Rs = function() {
1611            return Date.now ? Date.now() : +new Date
1612        };
1613    Se("Z", ":"), Se("ZZ", ""), B("Z", Vn), B("ZZ", Vn), tt(["Z", "ZZ"], function(t, e, i) {
1614        i._useUTC = !0, i._tzm = ke(Vn, t)
1615    });
1616    var js = /([\+\-]|\d\d)/gi;
1617    t.updateOffset = function() {};
1618    var Ls = /^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,
1619        As = /^(-)?P(?:(-?[0-9,.]*)Y)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)W)?(?:(-?[0-9,.]*)D)?(?:T(?:(-?[0-9,.]*)H)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)S)?)?$/;
1620    Fe.fn = be.prototype;
1621    var Is = Ue(1, "add"),
1622        zs = Ue(-1, "subtract");
1623    t.defaultFormat = "YYYY-MM-DDTHH:mm:ssZ", t.defaultFormatUtc = "YYYY-MM-DDTHH:mm:ss[Z]";
1624    var Qs = T("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.", function(t) {
1625        return void 0 === t ? this.localeData() : this.locale(t)
1626    });
1627    H(0, ["gg", 2], 0, function() {
1628        return this.weekYear() % 100
1629    }), H(0, ["GG", 2], 0, function() {
1630        return this.isoWeekYear() % 100
1631    }), xi("gggg", "weekYear"), xi("ggggg", "weekYear"), xi("GGGG", "isoWeekYear"), xi("GGGGG", "isoWeekYear"), L("weekYear", "gg"), L("isoWeekYear", "GG"), z("weekYear", 1), z("isoWeekYear", 1), B("G", En), B("g", En), B("GG", zn, jn), B("gg", zn, jn), B("GGGG", Gn, An), B("gggg", Gn, An), B("GGGGG", Nn, In), B("ggggg", Nn, In), et(["gggg", "ggggg", "GGGG", "GGGGG"], function(t, e, i, n) {
1632        e[n.substr(0, 2)] = v(t)
1633    }), et(["gg", "GG"], function(e, i, n, s) {
1634        i[s] = t.parseTwoDigitYear(e)
1635    }), H("Q", 0, "Qo", "quarter"), L("quarter", "Q"), z("quarter", 7), B("Q", Rn), tt("Q", function(t, e) {
1636        e[Jn] = 3 * (v(t) - 1)
1637    }), H("D", ["DD", 2], "Do", "date"), L("date", "D"), z("date", 9), B("D", zn), B("DD", zn, jn), B("Do", function(t, e) {
1638        return t ? e._ordinalParse : e._ordinalParseLenient
1639    }), tt(["D", "DD"], Kn), tt("Do", function(t, e) {
1640        e[Kn] = v(t.match(zn)[0], 10)
1641    });
1642    var Fs = F("Date", !0);
1643    H("DDD", ["DDDD", 3], "DDDo", "dayOfYear"), L("dayOfYear", "DDD"), z("dayOfYear", 4), B("DDD", Wn), B("DDDD", Ln), tt(["DDD", "DDDD"], function(t, e, i) {
1644        i._dayOfYear = v(t)
1645    }), H("m", ["mm", 2], 0, "minute"), L("minute", "m"), z("minute", 14), B("m", zn), B("mm", zn, jn), tt(["m", "mm"], es);
1646    var Ws = F("Minutes", !1);
1647    H("s", ["ss", 2], 0, "second"), L("second", "s"), z("second", 15), B("s", zn), B("ss", zn, jn), tt(["s", "ss"], is);
1648    var Gs = F("Seconds", !1);
1649    H("S", 0, 0, function() {
1650        return ~~(this.millisecond() / 100)
1651    }), H(0, ["SS", 2], 0, function() {
1652        return ~~(this.millisecond() / 10)
1653    }), H(0, ["SSS", 3], 0, "millisecond"), H(0, ["SSSS", 4], 0, function() {
1654        return 10 * this.millisecond()
1655    }), H(0, ["SSSSS", 5], 0, function() {
1656        return 100 * this.millisecond()
1657    }), H(0, ["SSSSSS", 6], 0, function() {
1658        return 1e3 * this.millisecond()
1659    }), H(0, ["SSSSSSS", 7], 0, function() {
1660        return 1e4 * this.millisecond()
1661    }), H(0, ["SSSSSSSS", 8], 0, function() {
1662        return 1e5 * this.millisecond()
1663    }), H(0, ["SSSSSSSSS", 9], 0, function() {
1664        return 1e6 * this.millisecond()
1665    }), L("millisecond", "ms"), z("millisecond", 16), B("S", Wn, Rn), B("SS", Wn, jn), B("SSS", Wn, Ln);
1666    var Ns;
1667    for (Ns = "SSSS"; Ns.length <= 9; Ns += "S") B(Ns, Un);
1668    for (Ns = "S"; Ns.length <= 9; Ns += "S") tt(Ns, Ri);
1669    var Us = F("Milliseconds", !1);
1670    H("z", 0, 0, "zoneAbbr"), H("zz", 0, 0, "zoneName");
1671    var Es = m.prototype;
1672    Es.add = Is, Es.calendar = Ve, Es.clone = $e, Es.diff = ti, Es.endOf = ci, Es.format = si, Es.from = ri, Es.fromNow = ai, Es.to = oi, Es.toNow = li, Es.get = N, Es.invalidAt = bi, Es.isAfter = Xe, Es.isBefore = qe, Es.isBetween = Be, Es.isSame = Ze, Es.isSameOrAfter = Je, Es.isSameOrBefore = Ke, Es.isValid = vi, Es.lang = Qs, Es.locale = ui, Es.localeData = hi, Es.max = Ys, Es.min = Cs, Es.parsingFlags = wi, Es.set = U, Es.startOf = di, Es.subtract = zs, Es.toArray = mi, Es.toObject = gi, Es.toDate = _i, Es.toISOString = ni, Es.toJSON = yi, Es.toString = ii, Es.unix = pi, Es.valueOf = fi, Es.creationData = Ti, Es.year = ds, Es.isLeapYear = mt, Es.weekYear = Si, Es.isoWeekYear = ki, Es.quarter = Es.quarters = Ci, Es.month = ut, Es.daysInMonth = ht, Es.week = Es.weeks = Pt, Es.isoWeek = Es.isoWeeks = Mt, Es.weeksInYear = Mi, Es.isoWeeksInYear = Pi, Es.date = Fs, Es.day = Es.days = At, Es.weekday = It, Es.isoWeekday = zt, Es.dayOfYear = Yi, Es.hour = Es.hours = bs, Es.minute = Es.minutes = Ws, Es.second = Es.seconds = Gs, Es.millisecond = Es.milliseconds = Us, Es.utcOffset = De, Es.utc = Ce, Es.local = Ye, Es.parseZone = Re, Es.hasAlignedHourOffset = je, Es.isDST = Le, Es.isLocal = Ie, Es.isUtcOffset = ze, Es.isUtc = Qe, Es.isUTC = Qe, Es.zoneAbbr = ji, Es.zoneName = Li, Es.dates = T("dates accessor is deprecated. Use date instead.", Fs), Es.months = T("months accessor is deprecated. Use month instead", ut), Es.years = T("years accessor is deprecated. Use year instead", ds), Es.zone = T("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/", Oe), Es.isDSTShifted = T("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information", Ae);
1673    var Hs = Es,
1674        Vs = M.prototype;
1675    Vs.calendar = D, Vs.longDateFormat = O, Vs.invalidDate = C, Vs.ordinal = Y, Vs.preparse = zi, Vs.postformat = zi, Vs.relativeTime = R, Vs.pastFuture = j, Vs.set = k, Vs.months = st, Vs.monthsShort = rt, Vs.monthsParse = ot, Vs.monthsRegex = ct, Vs.monthsShortRegex = dt, Vs.week = xt, Vs.firstDayOfYear = kt, Vs.firstDayOfWeek = St, Vs.weekdays = Ct, Vs.weekdaysMin = Rt, Vs.weekdaysShort = Yt, Vs.weekdaysParse = Lt, Vs.weekdaysRegex = Qt, Vs.weekdaysShortRegex = Ft, Vs.weekdaysMinRegex = Wt, Vs.isPM = Vt, Vs.meridiem = $t, Zt("en", {
1676        ordinalParse: /\d{1,2}(th|st|nd|rd)/,
1677        ordinal: function(t) {
1678            var e = t % 10,
1679                i = 1 === v(t % 100 / 10) ? "th" : 1 === e ? "st" : 2 === e ? "nd" : 3 === e ? "rd" : "th";
1680            return t + i
1681        }
1682    }), t.lang = T("moment.lang is deprecated. Use moment.locale instead.", Zt), t.langData = T("moment.langData is deprecated. Use moment.localeData instead.", te);
1683    var $s = Math.abs,
1684        Xs = nn("ms"),
1685        qs = nn("s"),
1686        Bs = nn("m"),
1687        Zs = nn("h"),
1688        Js = nn("d"),
1689        Ks = nn("w"),
1690        tr = nn("M"),
1691        er = nn("y"),
1692        ir = rn("milliseconds"),
1693        nr = rn("seconds"),
1694        sr = rn("minutes"),
1695        rr = rn("hours"),
1696        ar = rn("days"),
1697        or = rn("months"),
1698        lr = rn("years"),
1699        ur = Math.round,
1700        hr = {
1701            s: 45,
1702            m: 45,
1703            h: 22,
1704            d: 26,
1705            M: 11
1706        },
1707        dr = Math.abs,
1708        cr = be.prototype;
1709    cr.abs = Vi, cr.add = Xi, cr.subtract = qi, cr.as = tn, cr.asMilliseconds = Xs, cr.asSeconds = qs, cr.asMinutes = Bs, cr.asHours = Zs, cr.asDays = Js, cr.asWeeks = Ks, cr.asMonths = tr, cr.asYears = er, cr.valueOf = en, cr._bubble = Zi, cr.get = sn, cr.milliseconds = ir, cr.seconds = nr, cr.minutes = sr, cr.hours = rr, cr.days = ar, cr.weeks = an, cr.months = or, cr.years = lr, cr.humanize = dn, cr.toISOString = cn, cr.toString = cn, cr.toJSON = cn, cr.locale = ui, cr.localeData = hi, cr.toIsoString = T("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)", cn), cr.lang = Qs, H("X", 0, 0, "unix"), H("x", 0, 0, "valueOf"), B("x", En), B("X", $n), tt("X", function(t, e, i) {
1710        i._d = new Date(1e3 * parseFloat(t, 10))
1711    }), tt("x", function(t, e, i) {
1712        i._d = new Date(v(t))
1713    }), t.version = "2.15.2", e(ge), t.fn = Hs, t.min = ve, t.max = we, t.now = Rs, t.utc = u, t.unix = Ai, t.months = Gi, t.isDate = r, t.locale = Zt, t.invalid = f, t.duration = Fe, t.isMoment = g, t.weekdays = Ui, t.parseZone = Ii, t.localeData = te, t.isDuration = Te, t.monthsShort = Ni, t.weekdaysMin = Hi, t.defineLocale = Jt, t.updateLocale = Kt, t.locales = ee, t.weekdaysShort = Ei, t.normalizeUnits = A, t.relativeTimeRounding = un, t.relativeTimeThreshold = hn, t.calendarFormat = He, t.prototype = Hs;
1714    var fr = t;
1715    return fr
1716});
1717! function() {
1718    "use strict";
1719
1720    function e(e) {
1721        e.fn.swiper = function(a) {
1722            var s;
1723            return e(this).each(function() {
1724                var e = new t(this, a);
1725                s || (s = e)
1726            }), s
1727        }
1728    }
1729    var a, t = function(e, s) {
1730        function r(e) {
1731            return Math.floor(e)
1732        }
1733
1734        function i() {
1735            y.autoplayTimeoutId = setTimeout(function() {
1736                y.params.loop ? (y.fixLoop(), y._slideNext(), y.emit("onAutoplay", y)) : y.isEnd ? s.autoplayStopOnLast ? y.stopAutoplay() : (y._slideTo(0), y.emit("onAutoplay", y)) : (y._slideNext(), y.emit("onAutoplay", y))
1737            }, y.params.autoplay)
1738        }
1739
1740        function n(e, t) {
1741            var s = a(e.target);
1742            if (!s.is(t))
1743                if ("string" == typeof t) s = s.parents(t);
1744                else if (t.nodeType) {
1745                var r;
1746                return s.parents().each(function(e, a) {
1747                    a === t && (r = t)
1748                }), r ? t : void 0
1749            }
1750            if (0 !== s.length) return s[0]
1751        }
1752
1753        function o(e, a) {
1754            a = a || {};
1755            var t = window.MutationObserver || window.WebkitMutationObserver,
1756                s = new t(function(e) {
1757                    e.forEach(function(e) {
1758                        y.onResize(!0), y.emit("onObserverUpdate", y, e)
1759                    })
1760                });
1761            s.observe(e, {
1762                attributes: "undefined" == typeof a.attributes ? !0 : a.attributes,
1763                childList: "undefined" == typeof a.childList ? !0 : a.childList,
1764                characterData: "undefined" == typeof a.characterData ? !0 : a.characterData
1765            }), y.observers.push(s)
1766        }
1767
1768        function l(e) {
1769            e.originalEvent && (e = e.originalEvent);
1770            var a = e.keyCode || e.charCode;
1771            if (!y.params.allowSwipeToNext && (y.isHorizontal() && 39 === a || !y.isHorizontal() && 40 === a)) return !1;
1772            if (!y.params.allowSwipeToPrev && (y.isHorizontal() && 37 === a || !y.isHorizontal() && 38 === a)) return !1;
1773            if (!(e.shiftKey || e.altKey || e.ctrlKey || e.metaKey || document.activeElement && document.activeElement.nodeName && ("input" === document.activeElement.nodeName.toLowerCase() || "textarea" === document.activeElement.nodeName.toLowerCase()))) {
1774                if (37 === a || 39 === a || 38 === a || 40 === a) {
1775                    var t = !1;
1776                    if (y.container.parents(".swiper-slide").length > 0 && 0 === y.container.parents(".swiper-slide-active").length) return;
1777                    var s = {
1778                            left: window.pageXOffset,
1779                            top: window.pageYOffset
1780                        },
1781                        r = window.innerWidth,
1782                        i = window.innerHeight,
1783                        n = y.container.offset();
1784                    y.rtl && (n.left = n.left - y.container[0].scrollLeft);
1785                    for (var o = [
1786                            [n.left, n.top],
1787                            [n.left + y.width, n.top],
vendor: 27,804 bytes, lines 1788-2178
1788                            [n.left, n.top + y.height],
1789                            [n.left + y.width, n.top + y.height]
1790                        ], l = 0; l < o.length; l++) {
1791                        var p = o[l];
1792                        p[0] >= s.left && p[0] <= s.left + r && p[1] >= s.top && p[1] <= s.top + i && (t = !0)
1793                    }
1794                    if (!t) return
1795                }
1796                y.isHorizontal() ? ((37 === a || 39 === a) && (e.preventDefault ? e.preventDefault() : e.returnValue = !1), (39 === a && !y.rtl || 37 === a && y.rtl) && y.slideNext(), (37 === a && !y.rtl || 39 === a && y.rtl) && y.slidePrev()) : ((38 === a || 40 === a) && (e.preventDefault ? e.preventDefault() : e.returnValue = !1), 40 === a && y.slideNext(), 38 === a && y.slidePrev())
1797            }
1798        }
1799
1800        function p(e) {
1801            e.originalEvent && (e = e.originalEvent);
1802            var a = y.mousewheel.event,
1803                t = 0,
1804                s = y.rtl ? -1 : 1;
1805            if ("mousewheel" === a)
1806                if (y.params.mousewheelForceToAxis)
1807                    if (y.isHorizontal()) {
1808                        if (!(Math.abs(e.wheelDeltaX) > Math.abs(e.wheelDeltaY))) return;
1809                        t = e.wheelDeltaX * s
1810                    } else {
1811                        if (!(Math.abs(e.wheelDeltaY) > Math.abs(e.wheelDeltaX))) return;
1812                        t = e.wheelDeltaY
1813                    }
1814            else t = Math.abs(e.wheelDeltaX) > Math.abs(e.wheelDeltaY) ? -e.wheelDeltaX * s : -e.wheelDeltaY;
1815            else if ("DOMMouseScroll" === a) t = -e.detail;
1816            else if ("wheel" === a)
1817                if (y.params.mousewheelForceToAxis)
1818                    if (y.isHorizontal()) {
1819                        if (!(Math.abs(e.deltaX) > Math.abs(e.deltaY))) return;
1820                        t = -e.deltaX * s
1821                    } else {
1822                        if (!(Math.abs(e.deltaY) > Math.abs(e.deltaX))) return;
1823                        t = -e.deltaY
1824                    }
1825            else t = Math.abs(e.deltaX) > Math.abs(e.deltaY) ? -e.deltaX * s : -e.deltaY;
1826            if (0 !== t) {
1827                if (y.params.mousewheelInvert && (t = -t), y.params.freeMode) {
1828                    var r = y.getWrapperTranslate() + t * y.params.mousewheelSensitivity,
1829                        i = y.isBeginning,
1830                        n = y.isEnd;
1831                    if (r >= y.minTranslate() && (r = y.minTranslate()), r <= y.maxTranslate() && (r = y.maxTranslate()), y.setWrapperTransition(0), y.setWrapperTranslate(r), y.updateProgress(), y.updateActiveIndex(), (!i && y.isBeginning || !n && y.isEnd) && y.updateClasses(), y.params.freeModeSticky ? (clearTimeout(y.mousewheel.timeout), y.mousewheel.timeout = setTimeout(function() {
1832                            y.slideReset()
1833                        }, 300)) : y.params.lazyLoading && y.lazy && y.lazy.load(), 0 === r || r === y.maxTranslate()) return
1834                } else {
1835                    if ((new window.Date).getTime() - y.mousewheel.lastScrollTime > 60)
1836                        if (0 > t)
1837                            if (y.isEnd && !y.params.loop || y.animating) {
1838                                if (y.params.mousewheelReleaseOnEdges) return !0
1839                            } else y.slideNext();
1840                    else if (y.isBeginning && !y.params.loop || y.animating) {
1841                        if (y.params.mousewheelReleaseOnEdges) return !0
1842                    } else y.slidePrev();
1843                    y.mousewheel.lastScrollTime = (new window.Date).getTime()
1844                }
1845                return y.params.autoplay && y.stopAutoplay(), e.preventDefault ? e.preventDefault() : e.returnValue = !1, !1
1846            }
1847        }
1848
1849        function d(e, t) {
1850            e = a(e);
1851            var s, r, i, n = y.rtl ? -1 : 1;
1852            s = e.attr("data-swiper-parallax") || "0", r = e.attr("data-swiper-parallax-x"), i = e.attr("data-swiper-parallax-y"), r || i ? (r = r || "0", i = i || "0") : y.isHorizontal() ? (r = s, i = "0") : (i = s, r = "0"), r = r.indexOf("%") >= 0 ? parseInt(r, 10) * t * n + "%" : r * t * n + "px", i = i.indexOf("%") >= 0 ? parseInt(i, 10) * t + "%" : i * t + "px", e.transform("translate3d(" + r + ", " + i + ",0px)")
1853        }
1854
1855        function u(e) {
1856            return 0 !== e.indexOf("on") && (e = e[0] !== e[0].toUpperCase() ? "on" + e[0].toUpperCase() + e.substring(1) : "on" + e), e
1857        }
1858        if (!(this instanceof t)) return new t(e, s);
1859        var c = {
1860                direction: "horizontal",
1861                touchEventsTarget: "container",
1862                initialSlide: 0,
1863                speed: 300,
1864                autoplay: !1,
1865                autoplayDisableOnInteraction: !0,
1866                autoplayStopOnLast: !1,
1867                iOSEdgeSwipeDetection: !1,
1868                iOSEdgeSwipeThreshold: 20,
1869                freeMode: !1,
1870                freeModeMomentum: !0,
1871                freeModeMomentumRatio: 1,
1872                freeModeMomentumBounce: !0,
1873                freeModeMomentumBounceRatio: 1,
1874                freeModeSticky: !1,
1875                freeModeMinimumVelocity: .02,
1876                autoHeight: !1,
1877                setWrapperSize: !1,
1878                virtualTranslate: !1,
1879                effect: "slide",
1880                coverflow: {
1881                    rotate: 50,
1882                    stretch: 0,
1883                    depth: 100,
1884                    modifier: 1,
1885                    slideShadows: !0
1886                },
1887                flip: {
1888                    slideShadows: !0,
1889                    limitRotation: !0
1890                },
1891                cube: {
1892                    slideShadows: !0,
1893                    shadow: !0,
1894                    shadowOffset: 20,
1895                    shadowScale: .94
1896                },
1897                fade: {
1898                    crossFade: !1
1899                },
1900                parallax: !1,
1901                scrollbar: null,
1902                scrollbarHide: !0,
1903                scrollbarDraggable: !1,
1904                scrollbarSnapOnRelease: !1,
1905                keyboardControl: !1,
1906                mousewheelControl: !1,
1907                mousewheelReleaseOnEdges: !1,
1908                mousewheelInvert: !1,
1909                mousewheelForceToAxis: !1,
1910                mousewheelSensitivity: 1,
1911                hashnav: !1,
1912                breakpoints: void 0,
1913                spaceBetween: 0,
1914                slidesPerView: 1,
1915                slidesPerColumn: 1,
1916                slidesPerColumnFill: "column",
1917                slidesPerGroup: 1,
1918                centeredSlides: !1,
1919                slidesOffsetBefore: 0,
1920                slidesOffsetAfter: 0,
1921                roundLengths: !1,
1922                touchRatio: 1,
1923                touchAngle: 45,
1924                simulateTouch: !0,
1925                shortSwipes: !0,
1926                longSwipes: !0,
1927                longSwipesRatio: .5,
1928                longSwipesMs: 300,
1929                followFinger: !0,
1930                onlyExternal: !1,
1931                threshold: 0,
1932                touchMoveStopPropagation: !0,
1933                uniqueNavElements: !0,
1934                pagination: null,
1935                paginationElement: "span",
1936                paginationClickable: !1,
1937                paginationHide: !1,
1938                paginationBulletRender: null,
1939                paginationProgressRender: null,
1940                paginationFractionRender: null,
1941                paginationCustomRender: null,
1942                paginationType: "bullets",
1943                resistance: !0,
1944                resistanceRatio: .85,
1945                nextButton: null,
1946                prevButton: null,
1947                watchSlidesProgress: !1,
1948                watchSlidesVisibility: !1,
1949                grabCursor: !1,
1950                preventClicks: !0,
1951                preventClicksPropagation: !0,
1952                slideToClickedSlide: !1,
1953                lazyLoading: !1,
1954                lazyLoadingInPrevNext: !1,
1955                lazyLoadingInPrevNextAmount: 1,
1956                lazyLoadingOnTransitionStart: !1,
1957                preloadImages: !0,
1958                updateOnImagesReady: !0,
1959                loop: !1,
1960                loopAdditionalSlides: 0,
1961                loopedSlides: null,
1962                control: void 0,
1963                controlInverse: !1,
1964                controlBy: "slide",
1965                allowSwipeToPrev: !0,
1966                allowSwipeToNext: !0,
1967                swipeHandler: null,
1968                noSwiping: !0,
1969                noSwipingClass: "swiper-no-swiping",
1970                slideClass: "swiper-slide",
1971                slideActiveClass: "swiper-slide-active",
1972                slideVisibleClass: "swiper-slide-visible",
1973                slideDuplicateClass: "swiper-slide-duplicate",
1974                slideNextClass: "swiper-slide-next",
1975                slidePrevClass: "swiper-slide-prev",
1976                wrapperClass: "swiper-wrapper",
1977                bulletClass: "swiper-pagination-bullet",
1978                bulletActiveClass: "swiper-pagination-bullet-active",
1979                buttonDisabledClass: "swiper-button-disabled",
1980                paginationCurrentClass: "swiper-pagination-current",
1981                paginationTotalClass: "swiper-pagination-total",
1982                paginationHiddenClass: "swiper-pagination-hidden",
1983                paginationProgressbarClass: "swiper-pagination-progressbar",
1984                observer: !1,
1985                observeParents: !1,
1986                a11y: !1,
1987                prevSlideMessage: "Previous slide",
1988                nextSlideMessage: "Next slide",
1989                firstSlideMessage: "This is the first slide",
1990                lastSlideMessage: "This is the last slide",
1991                paginationBulletMessage: "Go to slide {{index}}",
1992                runCallbacksOnInit: !0
1993            },
1994            m = s && s.virtualTranslate;
1995        s = s || {};
1996        var f = {};
1997        for (var g in s)
1998            if ("object" != typeof s[g] || null === s[g] || (s[g].nodeType || s[g] === window || s[g] === document || "undefined" != typeof Dom7 && s[g] instanceof Dom7 || "undefined" != typeof jQuery && s[g] instanceof jQuery)) f[g] = s[g];
1999            else {
2000                f[g] = {};
2001                for (var h in s[g]) f[g][h] = s[g][h]
2002            } for (var v in c)
2003            if ("undefined" == typeof s[v]) s[v] = c[v];
2004            else if ("object" == typeof s[v])
2005            for (var w in c[v]) "undefined" == typeof s[v][w] && (s[v][w] = c[v][w]);
2006        var y = this;
2007        if (y.params = s, y.originalParams = f, y.classNames = [], "undefined" != typeof a && "undefined" != typeof Dom7 && (a = Dom7), ("undefined" != typeof a || (a = "undefined" == typeof Dom7 ? window.Dom7 || window.Zepto || window.jQuery : Dom7)) && (y.$ = a, y.currentBreakpoint = void 0, y.getActiveBreakpoint = function() {
2008                if (!y.params.breakpoints) return !1;
2009                var e, a = !1,
2010                    t = [];
2011                for (e in y.params.breakpoints) y.params.breakpoints.hasOwnProperty(e) && t.push(e);
2012                t.sort(function(e, a) {
2013                    return parseInt(e, 10) > parseInt(a, 10)
2014                });
2015                for (var s = 0; s < t.length; s++) e = t[s], e >= window.innerWidth && !a && (a = e);
2016                return a || "max"
2017            }, y.setBreakpoint = function() {
2018                var e = y.getActiveBreakpoint();
2019                if (e && y.currentBreakpoint !== e) {
2020                    var a = e in y.params.breakpoints ? y.params.breakpoints[e] : y.originalParams,
2021                        t = y.params.loop && a.slidesPerView !== y.params.slidesPerView;
2022                    for (var s in a) y.params[s] = a[s];
2023                    y.currentBreakpoint = e, t && y.destroyLoop && y.reLoop(!0)
2024                }
2025            }, y.params.breakpoints && y.setBreakpoint(), y.container = a(e), 0 !== y.container.length)) {
2026            if (y.container.length > 1) {
2027                var b = [];
2028                return y.container.each(function() {
2029                    b.push(new t(this, s))
2030                }), b
2031            }
2032            y.container[0].swiper = y, y.container.data("swiper", y), y.classNames.push("swiper-container-" + y.params.direction), y.params.freeMode && y.classNames.push("swiper-container-free-mode"), y.support.flexbox || (y.classNames.push("swiper-container-no-flexbox"), y.params.slidesPerColumn = 1), y.params.autoHeight && y.classNames.push("swiper-container-autoheight"), (y.params.parallax || y.params.watchSlidesVisibility) && (y.params.watchSlidesProgress = !0), ["cube", "coverflow", "flip"].indexOf(y.params.effect) >= 0 && (y.support.transforms3d ? (y.params.watchSlidesProgress = !0, y.classNames.push("swiper-container-3d")) : y.params.effect = "slide"), "slide" !== y.params.effect && y.classNames.push("swiper-container-" + y.params.effect), "cube" === y.params.effect && (y.params.resistanceRatio = 0, y.params.slidesPerView = 1, y.params.slidesPerColumn = 1, y.params.slidesPerGroup = 1, y.params.centeredSlides = !1, y.params.spaceBetween = 0, y.params.virtualTranslate = !0, y.params.setWrapperSize = !1), ("fade" === y.params.effect || "flip" === y.params.effect) && (y.params.slidesPerView = 1, y.params.slidesPerColumn = 1, y.params.slidesPerGroup = 1, y.params.watchSlidesProgress = !0, y.params.spaceBetween = 0, y.params.setWrapperSize = !1, "undefined" == typeof m && (y.params.virtualTranslate = !0)), y.params.grabCursor && y.support.touch && (y.params.grabCursor = !1), y.wrapper = y.container.children("." + y.params.wrapperClass), y.params.pagination && (y.paginationContainer = a(y.params.pagination), y.params.uniqueNavElements && "string" == typeof y.params.pagination && y.paginationContainer.length > 1 && 1 === y.container.find(y.params.pagination).length && (y.paginationContainer = y.container.find(y.params.pagination)), "bullets" === y.params.paginationType && y.params.paginationClickable ? y.paginationContainer.addClass("swiper-pagination-clickable") : y.params.paginationClickable = !1, y.paginationContainer.addClass("swiper-pagination-" + y.params.paginationType)), (y.params.nextButton || y.params.prevButton) && (y.params.nextButton && (y.nextButton = a(y.params.nextButton), y.params.uniqueNavElements && "string" == typeof y.params.nextButton && y.nextButton.length > 1 && 1 === y.container.find(y.params.nextButton).length && (y.nextButton = y.container.find(y.params.nextButton))), y.params.prevButton && (y.prevButton = a(y.params.prevButton), y.params.uniqueNavElements && "string" == typeof y.params.prevButton && y.prevButton.length > 1 && 1 === y.container.find(y.params.prevButton).length && (y.prevButton = y.container.find(y.params.prevButton)))), y.isHorizontal = function() {
2033                return "horizontal" === y.params.direction
2034            }, y.rtl = y.isHorizontal() && ("rtl" === y.container[0].dir.toLowerCase() || "rtl" === y.container.css("direction")), y.rtl && y.classNames.push("swiper-container-rtl"), y.rtl && (y.wrongRTL = "-webkit-box" === y.wrapper.css("display")), y.params.slidesPerColumn > 1 && y.classNames.push("swiper-container-multirow"), y.device.android && y.classNames.push("swiper-container-android"), y.container.addClass(y.classNames.join(" ")), y.translate = 0, y.progress = 0, y.velocity = 0, y.lockSwipeToNext = function() {
2035                y.params.allowSwipeToNext = !1
2036            }, y.lockSwipeToPrev = function() {
2037                y.params.allowSwipeToPrev = !1
2038            }, y.lockSwipes = function() {
2039                y.params.allowSwipeToNext = y.params.allowSwipeToPrev = !1
2040            }, y.unlockSwipeToNext = function() {
2041                y.params.allowSwipeToNext = !0
2042            }, y.unlockSwipeToPrev = function() {
2043                y.params.allowSwipeToPrev = !0
2044            }, y.unlockSwipes = function() {
2045                y.params.allowSwipeToNext = y.params.allowSwipeToPrev = !0
2046            }, y.params.grabCursor && (y.container[0].style.cursor = "move", y.container[0].style.cursor = "-webkit-grab", y.container[0].style.cursor = "-moz-grab", y.container[0].style.cursor = "grab"), y.imagesToLoad = [], y.imagesLoaded = 0, y.loadImage = function(e, a, t, s, r) {
2047                function i() {
2048                    r && r()
2049                }
2050                var n;
2051                e.complete && s ? i() : a ? (n = new window.Image, n.onload = i, n.onerror = i, t && (n.srcset = t), a && (n.src = a)) : i()
2052            }, y.preloadImages = function() {
2053                function e() {
2054                    "undefined" != typeof y && null !== y && (void 0 !== y.imagesLoaded && y.imagesLoaded++, y.imagesLoaded === y.imagesToLoad.length && (y.params.updateOnImagesReady && y.update(), y.emit("onImagesReady", y)))
2055                }
2056                y.imagesToLoad = y.container.find("img");
2057                for (var a = 0; a < y.imagesToLoad.length; a++) y.loadImage(y.imagesToLoad[a], y.imagesToLoad[a].currentSrc || y.imagesToLoad[a].getAttribute("src"), y.imagesToLoad[a].srcset || y.imagesToLoad[a].getAttribute("srcset"), !0, e)
2058            }, y.autoplayTimeoutId = void 0, y.autoplaying = !1, y.autoplayPaused = !1, y.startAutoplay = function() {
2059                return "undefined" != typeof y.autoplayTimeoutId ? !1 : y.params.autoplay ? y.autoplaying ? !1 : (y.autoplaying = !0, y.emit("onAutoplayStart", y), void i()) : !1
2060            }, y.stopAutoplay = function(e) {
2061                y.autoplayTimeoutId && (y.autoplayTimeoutId && clearTimeout(y.autoplayTimeoutId), y.autoplaying = !1, y.autoplayTimeoutId = void 0, y.emit("onAutoplayStop", y))
2062            }, y.pauseAutoplay = function(e) {
2063                y.autoplayPaused || (y.autoplayTimeoutId && clearTimeout(y.autoplayTimeoutId), y.autoplayPaused = !0, 0 === e ? (y.autoplayPaused = !1, i()) : y.wrapper.transitionEnd(function() {
2064                    y && (y.autoplayPaused = !1, y.autoplaying ? i() : y.stopAutoplay())
2065                }))
2066            }, y.minTranslate = function() {
2067                return -y.snapGrid[0]
2068            }, y.maxTranslate = function() {
2069                return -y.snapGrid[y.snapGrid.length - 1]
2070            }, y.updateAutoHeight = function() {
2071                var e = y.slides.eq(y.activeIndex)[0];
2072                if ("undefined" != typeof e) {
2073                    var a = e.offsetHeight;
2074                    a && y.wrapper.css("height", a + "px")
2075                }
2076            }, y.updateContainerSize = function() {
2077                var e, a;
2078                e = "undefined" != typeof y.params.width ? y.params.width : y.container[0].clientWidth, a = "undefined" != typeof y.params.height ? y.params.height : y.container[0].clientHeight, 0 === e && y.isHorizontal() || 0 === a && !y.isHorizontal() || (e = e - parseInt(y.container.css("padding-left"), 10) - parseInt(y.container.css("padding-right"), 10), a = a - parseInt(y.container.css("padding-top"), 10) - parseInt(y.container.css("padding-bottom"), 10), y.width = e, y.height = a, y.size = y.isHorizontal() ? y.width : y.height)
2079            }, y.updateSlidesSize = function() {
2080                y.slides = y.wrapper.children("." + y.params.slideClass), y.snapGrid = [], y.slidesGrid = [], y.slidesSizesGrid = [];
2081                var e, a = y.params.spaceBetween,
2082                    t = -y.params.slidesOffsetBefore,
2083                    s = 0,
2084                    i = 0;
2085                if ("undefined" != typeof y.size) {
2086                    "string" == typeof a && a.indexOf("%") >= 0 && (a = parseFloat(a.replace("%", "")) / 100 * y.size), y.virtualSize = -a, y.rtl ? y.slides.css({
2087                        marginLeft: "",
2088                        marginTop: ""
2089                    }) : y.slides.css({
2090                        marginRight: "",
2091                        marginBottom: ""
2092                    });
2093                    var n;
2094                    y.params.slidesPerColumn > 1 && (n = Math.floor(y.slides.length / y.params.slidesPerColumn) === y.slides.length / y.params.slidesPerColumn ? y.slides.length : Math.ceil(y.slides.length / y.params.slidesPerColumn) * y.params.slidesPerColumn, "auto" !== y.params.slidesPerView && "row" === y.params.slidesPerColumnFill && (n = Math.max(n, y.params.slidesPerView * y.params.slidesPerColumn)));
2095                    var o, l = y.params.slidesPerColumn,
2096                        p = n / l,
2097                        d = p - (y.params.slidesPerColumn * p - y.slides.length);
2098                    for (e = 0; e < y.slides.length; e++) {
2099                        o = 0;
2100                        var u = y.slides.eq(e);
2101                        if (y.params.slidesPerColumn > 1) {
2102                            var c, m, f;
2103                            "column" === y.params.slidesPerColumnFill ? (m = Math.floor(e / l), f = e - m * l, (m > d || m === d && f === l - 1) && ++f >= l && (f = 0, m++), c = m + f * n / l, u.css({
2104                                "-webkit-box-ordinal-group": c,
2105                                "-moz-box-ordinal-group": c,
2106                                "-ms-flex-order": c,
2107                                "-webkit-order": c,
2108                                order: c
2109                            })) : (f = Math.floor(e / p), m = e - f * p), u.css({
2110                                "margin-top": 0 !== f && y.params.spaceBetween && y.params.spaceBetween + "px"
2111                            }).attr("data-swiper-column", m).attr("data-swiper-row", f)
2112                        }
2113                        "none" !== u.css("display") && ("auto" === y.params.slidesPerView ? (o = y.isHorizontal() ? u.outerWidth(!0) : u.outerHeight(!0), y.params.roundLengths && (o = r(o))) : (o = (y.size - (y.params.slidesPerView - 1) * a) / y.params.slidesPerView, y.params.roundLengths && (o = r(o)), y.isHorizontal() ? y.slides[e].style.width = o + "px" : y.slides[e].style.height = o + "px"), y.slides[e].swiperSlideSize = o, y.slidesSizesGrid.push(o), y.params.centeredSlides ? (t = t + o / 2 + s / 2 + a, 0 === e && (t = t - y.size / 2 - a), Math.abs(t) < .001 && (t = 0), i % y.params.slidesPerGroup === 0 && y.snapGrid.push(t), y.slidesGrid.push(t)) : (i % y.params.slidesPerGroup === 0 && y.snapGrid.push(t), y.slidesGrid.push(t), t = t + o + a), y.virtualSize += o + a, s = o, i++)
2114                    }
2115                    y.virtualSize = Math.max(y.virtualSize, y.size) + y.params.slidesOffsetAfter;
2116                    var g;
2117                    if (y.rtl && y.wrongRTL && ("slide" === y.params.effect || "coverflow" === y.params.effect) && y.wrapper.css({
2118                            width: y.virtualSize + y.params.spaceBetween + "px"
2119                        }), (!y.support.flexbox || y.params.setWrapperSize) && (y.isHorizontal() ? y.wrapper.css({
2120                            width: y.virtualSize + y.params.spaceBetween + "px"
2121                        }) : y.wrapper.css({
2122                            height: y.virtualSize + y.params.spaceBetween + "px"
2123                        })), y.params.slidesPerColumn > 1 && (y.virtualSize = (o + y.params.spaceBetween) * n, y.virtualSize = Math.ceil(y.virtualSize / y.params.slidesPerColumn) - y.params.spaceBetween, y.wrapper.css({
2124                            width: y.virtualSize + y.params.spaceBetween + "px"
2125                        }), y.params.centeredSlides)) {
2126                        for (g = [], e = 0; e < y.snapGrid.length; e++) y.snapGrid[e] < y.virtualSize + y.snapGrid[0] && g.push(y.snapGrid[e]);
2127                        y.snapGrid = g
2128                    }
2129                    if (!y.params.centeredSlides) {
2130                        for (g = [], e = 0; e < y.snapGrid.length; e++) y.snapGrid[e] <= y.virtualSize - y.size && g.push(y.snapGrid[e]);
2131                        y.snapGrid = g, Math.floor(y.virtualSize - y.size) - Math.floor(y.snapGrid[y.snapGrid.length - 1]) > 1 && y.snapGrid.push(y.virtualSize - y.size)
2132                    }
2133                    0 === y.snapGrid.length && (y.snapGrid = [0]), 0 !== y.params.spaceBetween && (y.isHorizontal() ? y.rtl ? y.slides.css({
2134                        marginLeft: a + "px"
2135                    }) : y.slides.css({
2136                        marginRight: a + "px"
2137                    }) : y.slides.css({
2138                        marginBottom: a + "px"
2139                    })), y.params.watchSlidesProgress && y.updateSlidesOffset()
2140                }
2141            }, y.updateSlidesOffset = function() {
2142                for (var e = 0; e < y.slides.length; e++) y.slides[e].swiperSlideOffset = y.isHorizontal() ? y.slides[e].offsetLeft : y.slides[e].offsetTop
2143            }, y.updateSlidesProgress = function(e) {
2144                if ("undefined" == typeof e && (e = y.translate || 0), 0 !== y.slides.length) {
2145                    "undefined" == typeof y.slides[0].swiperSlideOffset && y.updateSlidesOffset();
2146                    var a = -e;
2147                    y.rtl && (a = e), y.slides.removeClass(y.params.slideVisibleClass);
2148                    for (var t = 0; t < y.slides.length; t++) {
2149                        var s = y.slides[t],
2150                            r = (a - s.swiperSlideOffset) / (s.swiperSlideSize + y.params.spaceBetween);
2151                        if (y.params.watchSlidesVisibility) {
2152                            var i = -(a - s.swiperSlideOffset),
2153                                n = i + y.slidesSizesGrid[t],
2154                                o = i >= 0 && i < y.size || n > 0 && n <= y.size || 0 >= i && n >= y.size;
2155                            o && y.slides.eq(t).addClass(y.params.slideVisibleClass)
2156                        }
2157                        s.progress = y.rtl ? -r : r
2158                    }
2159                }
2160            }, y.updateProgress = function(e) {
2161                "undefined" == typeof e && (e = y.translate || 0);
2162                var a = y.maxTranslate() - y.minTranslate(),
2163                    t = y.isBeginning,
2164                    s = y.isEnd;
2165                0 === a ? (y.progress = 0, y.isBeginning = y.isEnd = !0) : (y.progress = (e - y.minTranslate()) / a, y.isBeginning = y.progress <= 0, y.isEnd = y.progress >= 1), y.isBeginning && !t && y.emit("onReachBeginning", y), y.isEnd && !s && y.emit("onReachEnd", y), y.params.watchSlidesProgress && y.updateSlidesProgress(e), y.emit("onProgress", y, y.progress)
2166            }, y.updateActiveIndex = function() {
2167                var e, a, t, s = y.rtl ? y.translate : -y.translate;
2168                for (a = 0; a < y.slidesGrid.length; a++) "undefined" != typeof y.slidesGrid[a + 1] ? s >= y.slidesGrid[a] && s < y.slidesGrid[a + 1] - (y.slidesGrid[a + 1] - y.slidesGrid[a]) / 2 ? e = a : s >= y.slidesGrid[a] && s < y.slidesGrid[a + 1] && (e = a + 1) : s >= y.slidesGrid[a] && (e = a);
2169                (0 > e || "undefined" == typeof e) && (e = 0), t = Math.floor(e / y.params.slidesPerGroup), t >= y.snapGrid.length && (t = y.snapGrid.length - 1), e !== y.activeIndex && (y.snapIndex = t, y.previousIndex = y.activeIndex, y.activeIndex = e, y.updateClasses())
2170            }, y.updateClasses = function() {
2171                y.slides.removeClass(y.params.slideActiveClass + " " + y.params.slideNextClass + " " + y.params.slidePrevClass);
2172                var e = y.slides.eq(y.activeIndex);
2173                e.addClass(y.params.slideActiveClass);
2174                var t = e.next("." + y.params.slideClass).addClass(y.params.slideNextClass);
2175                y.params.loop && 0 === t.length && y.slides.eq(0).addClass(y.params.slideNextClass);
2176                var s = e.prev("." + y.params.slideClass).addClass(y.params.slidePrevClass);
2177                if (y.params.loop && 0 === s.length && y.slides.eq(-1).addClass(y.params.slidePrevClass), y.paginationContainer && y.paginationContainer.length > 0) {
2178                    var r, i = y.params.loop ? Math.ceil((y.slides.length - 2 * y.loopedSlides) / y.params.slidesPerGroup) : y.snapGrid.length;
2179                    if (y.params.loop ? (r = Math.ceil((y.activeIndex - y.loopedSlides) / y.params.slidesPerGroup), r > y.slides.length - 1 - 2 * y.loopedSlides && (r -= y.slides.length - 2 * y.loopedSlides), r > i - 1 && (r -= i), 0 > r && "bullets" !== y.params.paginationType && (r = i + r)) : r = "undefined" != typeof y.snapIndex ? y.snapIndex : y.activeIndex || 0, "bullets" === y.params.paginationType && y.bullets && y.bullets.length > 0 && (y.bullets.removeClass(y.params.bulletActiveClass), y.paginationContainer.length > 1 ? y.bullets.each(function() {
2180                            a(this).index() === r && a(this).addClass(y.params.bulletActiveClass)
2181                        }) : y.bullets.eq(r).addClass(y.params.bulletActiveClass)), "fraction" === y.params.paginationType && (y.paginationContainer.find("." + y.params.paginationCurrentClass).text(r + 1), y.paginationContainer.find("." + y.params.paginationTotalClass).text(i)), "progress" === y.params.paginationType) {
2182                        var n = (r + 1) / i,
2183                            o = n,
2184                            l = 1;
2185                        y.isHorizontal() || (l = n, o = 1), y.paginationContainer.find("." + y.params.paginationProgressbarClass).transform("translate3d(0,0,0) scaleX(" + o + ") scaleY(" + l + ")").transition(y.params.speed)
2186                    }
2187                    "custom" === y.params.paginationType && y.params.paginationCustomRender && (y.paginationContainer.html(y.params.paginationCustomRender(y, r + 1, i)), y.emit("onPaginationRendered", y, y.paginationContainer[0]))
2188                }
2189                y.params.loop || (y.params.prevButton && y.prevButton && y.prevButton.length > 0 && (y.isBeginning ? (y.prevButton.addClass(y.params.buttonDisabledClass), y.params.a11y && y.a11y && y.a11y.disable(y.prevButton)) : (y.prevButton.removeClass(y.params.buttonDisabledClass), y.params.a11y && y.a11y && y.a11y.enable(y.prevButton))), y.params.nextButton && y.nextButton && y.nextButton.length > 0 && (y.isEnd ? (y.nextButton.addClass(y.params.buttonDisabledClass), y.params.a11y && y.a11y && y.a11y.disable(y.nextButton)) : (y.nextButton.removeClass(y.params.buttonDisabledClass), y.params.a11y && y.a11y && y.a11y.enable(y.nextButton))))
2190            }, y.updatePagination = function() {
2191                if (y.params.pagination && y.paginationContainer && y.paginationContainer.length > 0) {
2192                    var e = "";
2193                    if ("bullets" === y.params.paginationType) {
2194                        for (var a = y.params.loop ? Math.ceil((y.slides.length - 2 * y.loopedSlides) / y.params.slidesPerGroup) : y.snapGrid.length, t = 0; a > t; t++) e += y.params.paginationBulletRender ? y.params.paginationBulletRender(t, y.params.bulletClass) : "<" + y.params.paginationElement + ' class="' + y.params.bulletClass + '"></' + y.params.paginationElement + ">";
2195                        y.paginationContainer.html(e), y.bullets = y.paginationContainer.find("." + y.params.bulletClass), y.params.paginationClickable && y.params.a11y && y.a11y && y.a11y.initPagination()
2196                    }
2197                    "fraction" === y.params.paginationType && (e = y.params.paginationFractionRender ? y.params.paginationFractionRender(y, y.params.paginationCurrentClass, y.params.paginationTotalClass) : '<span class="' + y.params.paginationCurrentClass + '"></span> / <span class="' + y.params.paginationTotalClass + '"></span>', y.paginationContainer.html(e)), "progress" === y.params.paginationType && (e = y.params.paginationProgressRender ? y.params.paginationProgressRender(y, y.params.paginationProgressbarClass) : '<span class="' + y.params.paginationProgressbarClass + '"></span>', y.paginationContainer.html(e)), "custom" !== y.params.paginationType && y.emit("onPaginationRendered", y, y.paginationContainer[0])
2198                }
2199            }, y.update = function(e) {
2200                function a() {
2201                    s = Math.min(Math.max(y.translate, y.maxTranslate()), y.minTranslate()), y.setWrapperTranslate(s), y.updateActiveIndex(), y.updateClasses()
2202                }
2203                if (y.updateContainerSize(), y.updateSlidesSize(), y.updateProgress(), y.updatePagination(), y.updateClasses(), y.params.scrollbar && y.scrollbar && y.scrollbar.set(), e) {
2204                    var t, s;
2205                    y.controller && y.controller.spline && (y.controller.spline = void 0), y.params.freeMode ? (a(), y.params.autoHeight && y.updateAutoHeight()) : (t = ("auto" === y.params.slidesPerView || y.params.slidesPerView > 1) && y.isEnd && !y.params.centeredSlides ? y.slideTo(y.slides.length - 1, 0, !1, !0) : y.slideTo(y.activeIndex, 0, !1, !0), t || a())
2206                } else y.params.autoHeight && y.updateAutoHeight()
2207            }, y.onResize = function(e) {
2208                y.params.breakpoints && y.setBreakpoint();
2209                var a = y.params.allowSwipeToPrev,
2210                    t = y.params.allowSwipeToNext;
2211                y.params.allowSwipeToPrev = y.params.allowSwipeToNext = !0, y.updateContainerSize(), y.updateSlidesSize(), ("auto" === y.params.slidesPerView || y.params.freeMode || e) && y.updatePagination(), y.params.scrollbar && y.scrollbar && y.scrollbar.set(), y.controller && y.controller.spline && (y.controller.spline = void 0);
2212                var s = !1;
2213                if (y.params.freeMode) {
2214                    var r = Math.min(Math.max(y.translate, y.maxTranslate()), y.minTranslate());
2215                    y.setWrapperTranslate(r), y.updateActiveIndex(), y.updateClasses(), y.params.autoHeight && y.updateAutoHeight()
2216                } else y.updateClasses(), s = ("auto" === y.params.slidesPerView || y.params.slidesPerView > 1) && y.isEnd && !y.params.centeredSlides ? y.slideTo(y.slides.length - 1, 0, !1, !0) : y.slideTo(y.activeIndex, 0, !1, !0);
2217                y.params.lazyLoading && !s && y.lazy && y.lazy.load(), y.params.allowSwipeToPrev = a, y.params.allowSwipeToNext = t
2218            };
2219            var x = ["mousedown", "mousemove", "mouseup"];
2220            window.navigator.pointerEnabled ? x = ["pointerdown", "pointermove", "pointerup"] : window.navigator.msPointerEnabled && (x = ["MSPointerDown", "MSPointerMove", "MSPointerUp"]), y.touchEvents = {
2221                start: y.support.touch || !y.params.simulateTouch ? "touchstart" : x[0],
2222                move: y.support.touch || !y.params.simulateTouch ? "touchmove" : x[1],
2223                end: y.support.touch || !y.params.simulateTouch ? "touchend" : x[2]
2224            }, (window.navigator.pointerEnabled || window.navigator.msPointerEnabled) && ("container" === y.params.touchEventsTarget ? y.container : y.wrapper).addClass("swiper-wp8-" + y.params.direction), y.initEvents = function(e) {
2225                var a = e ? "off" : "on",
2226                    t = e ? "removeEventListener" : "addEventListener",
2227                    r = "container" === y.params.touchEventsTarget ? y.container[0] : y.wrapper[0],
2228                    i = y.support.touch ? r : document,
2229                    n = y.params.nested ? !0 : !1;
2230                y.browser.ie ? (r[t](y.touchEvents.start, y.onTouchStart, !1), i[t](y.touchEvents.move, y.onTouchMove, n), i[t](y.touchEvents.end, y.onTouchEnd, !1)) : (y.support.touch && (r[t](y.touchEvents.start, y.onTouchStart, !1), r[t](y.touchEvents.move, y.onTouchMove, n), r[t](y.touchEvents.end, y.onTouchEnd, !1)), !s.simulateTouch || y.device.ios || y.device.android || (r[t]("mousedown", y.onTouchStart, !1), document[t]("mousemove", y.onTouchMove, n), document[t]("mouseup", y.onTouchEnd, !1))), window[t]("resize", y.onResize), y.params.nextButton && y.nextButton && y.nextButton.length > 0 && (y.nextButton[a]("click", y.onClickNext), y.params.a11y && y.a11y && y.nextButton[a]("keydown", y.a11y.onEnterKey)), y.params.prevButton && y.prevButton && y.prevButton.length > 0 && (y.prevButton[a]("click", y.onClickPrev), y.params.a11y && y.a11y && y.prevButton[a]("keydown", y.a11y.onEnterKey)), y.params.pagination && y.params.paginationClickable && (y.paginationContainer[a]("click", "." + y.params.bulletClass, y.onClickIndex), y.params.a11y && y.a11y && y.paginationContainer[a]("keydown", "." + y.params.bulletClass, y.a11y.onEnterKey)), (y.params.preventClicks || y.params.preventClicksPropagation) && r[t]("click", y.preventClicks, !0)
2231            }, y.attachEvents = function() {
2232                y.initEvents()
2233            }, y.detachEvents = function() {
2234                y.initEvents(!0)
2235            }, y.allowClick = !0, y.preventClicks = function(e) {
2236                y.allowClick || (y.params.preventClicks && e.preventDefault(), y.params.preventClicksPropagation && y.animating && (e.stopPropagation(), e.stopImmediatePropagation()))
2237            }, y.onClickNext = function(e) {
2238                e.preventDefault(), (!y.isEnd || y.params.loop) && y.slideNext()
2239            }, y.onClickPrev = function(e) {
vendor: 58,160 bytes, lines 2240-2895
2240                e.preventDefault(), (!y.isBeginning || y.params.loop) && y.slidePrev()
2241            }, y.onClickIndex = function(e) {
2242                e.preventDefault();
2243                var t = a(this).index() * y.params.slidesPerGroup;
2244                y.params.loop && (t += y.loopedSlides), y.slideTo(t)
2245            }, y.updateClickedSlide = function(e) {
2246                var t = n(e, "." + y.params.slideClass),
2247                    s = !1;
2248                if (t)
2249                    for (var r = 0; r < y.slides.length; r++) y.slides[r] === t && (s = !0);
2250                if (!t || !s) return y.clickedSlide = void 0, void(y.clickedIndex = void 0);
2251                if (y.clickedSlide = t, y.clickedIndex = a(t).index(), y.params.slideToClickedSlide && void 0 !== y.clickedIndex && y.clickedIndex !== y.activeIndex) {
2252                    var i, o = y.clickedIndex;
2253                    if (y.params.loop) {
2254                        if (y.animating) return;
2255                        i = a(y.clickedSlide).attr("data-swiper-slide-index"), y.params.centeredSlides ? o < y.loopedSlides - y.params.slidesPerView / 2 || o > y.slides.length - y.loopedSlides + y.params.slidesPerView / 2 ? (y.fixLoop(), o = y.wrapper.children("." + y.params.slideClass + '[data-swiper-slide-index="' + i + '"]:not(.swiper-slide-duplicate)').eq(0).index(), setTimeout(function() {
2256                            y.slideTo(o)
2257                        }, 0)) : y.slideTo(o) : o > y.slides.length - y.params.slidesPerView ? (y.fixLoop(), o = y.wrapper.children("." + y.params.slideClass + '[data-swiper-slide-index="' + i + '"]:not(.swiper-slide-duplicate)').eq(0).index(), setTimeout(function() {
2258                            y.slideTo(o)
2259                        }, 0)) : y.slideTo(o)
2260                    } else y.slideTo(o)
2261                }
2262            };
2263            var T, S, C, z, M, P, I, k, E, B, D = "input, select, textarea, button",
2264                L = Date.now(),
2265                H = [];
2266            y.animating = !1, y.touches = {
2267                startX: 0,
2268                startY: 0,
2269                currentX: 0,
2270                currentY: 0,
2271                diff: 0
2272            };
2273            var G, A;
2274            if (y.onTouchStart = function(e) {
2275                    if (e.originalEvent && (e = e.originalEvent), G = "touchstart" === e.type, G || !("which" in e) || 3 !== e.which) {
2276                        if (y.params.noSwiping && n(e, "." + y.params.noSwipingClass)) return void(y.allowClick = !0);
2277                        if (!y.params.swipeHandler || n(e, y.params.swipeHandler)) {
2278                            var t = y.touches.currentX = "touchstart" === e.type ? e.targetTouches[0].pageX : e.pageX,
2279                                s = y.touches.currentY = "touchstart" === e.type ? e.targetTouches[0].pageY : e.pageY;
2280                            if (!(y.device.ios && y.params.iOSEdgeSwipeDetection && t <= y.params.iOSEdgeSwipeThreshold)) {
2281                                if (T = !0, S = !1, C = !0, M = void 0, A = void 0, y.touches.startX = t, y.touches.startY = s, z = Date.now(), y.allowClick = !0, y.updateContainerSize(), y.swipeDirection = void 0, y.params.threshold > 0 && (k = !1), "touchstart" !== e.type) {
2282                                    var r = !0;
2283                                    a(e.target).is(D) && (r = !1), document.activeElement && a(document.activeElement).is(D) && document.activeElement.blur(), r && e.preventDefault()
2284                                }
2285                                y.emit("onTouchStart", y, e)
2286                            }
2287                        }
2288                    }
2289                }, y.onTouchMove = function(e) {
2290                    if (e.originalEvent && (e = e.originalEvent), !G || "mousemove" !== e.type) {
2291                        if (e.preventedByNestedSwiper) return y.touches.startX = "touchmove" === e.type ? e.targetTouches[0].pageX : e.pageX, void(y.touches.startY = "touchmove" === e.type ? e.targetTouches[0].pageY : e.pageY);
2292                        if (y.params.onlyExternal) return y.allowClick = !1, void(T && (y.touches.startX = y.touches.currentX = "touchmove" === e.type ? e.targetTouches[0].pageX : e.pageX, y.touches.startY = y.touches.currentY = "touchmove" === e.type ? e.targetTouches[0].pageY : e.pageY, z = Date.now()));
2293                        if (G && document.activeElement && e.target === document.activeElement && a(e.target).is(D)) return S = !0, void(y.allowClick = !1);
2294                        if (C && y.emit("onTouchMove", y, e), !(e.targetTouches && e.targetTouches.length > 1)) {
2295                            if (y.touches.currentX = "touchmove" === e.type ? e.targetTouches[0].pageX : e.pageX, y.touches.currentY = "touchmove" === e.type ? e.targetTouches[0].pageY : e.pageY, "undefined" == typeof M) {
2296                                var t = 180 * Math.atan2(Math.abs(y.touches.currentY - y.touches.startY), Math.abs(y.touches.currentX - y.touches.startX)) / Math.PI;
2297                                M = y.isHorizontal() ? t > y.params.touchAngle : 90 - t > y.params.touchAngle
2298                            }
2299                            if (M && y.emit("onTouchMoveOpposite", y, e), "undefined" == typeof A && y.browser.ieTouch && (y.touches.currentX !== y.touches.startX || y.touches.currentY !== y.touches.startY) && (A = !0), T) {
2300                                if (M) return void(T = !1);
2301                                if (A || !y.browser.ieTouch) {
2302                                    y.allowClick = !1, y.emit("onSliderMove", y, e), e.preventDefault(), y.params.touchMoveStopPropagation && !y.params.nested && e.stopPropagation(), S || (s.loop && y.fixLoop(), I = y.getWrapperTranslate(), y.setWrapperTransition(0), y.animating && y.wrapper.trigger("webkitTransitionEnd transitionend oTransitionEnd MSTransitionEnd msTransitionEnd"), y.params.autoplay && y.autoplaying && (y.params.autoplayDisableOnInteraction ? y.stopAutoplay() : y.pauseAutoplay()), B = !1, y.params.grabCursor && (y.container[0].style.cursor = "move", y.container[0].style.cursor = "-webkit-grabbing", y.container[0].style.cursor = "-moz-grabbin", y.container[0].style.cursor = "grabbing")), S = !0;
2303                                    var r = y.touches.diff = y.isHorizontal() ? y.touches.currentX - y.touches.startX : y.touches.currentY - y.touches.startY;
2304                                    r *= y.params.touchRatio, y.rtl && (r = -r), y.swipeDirection = r > 0 ? "prev" : "next", P = r + I;
2305                                    var i = !0;
2306                                    if (r > 0 && P > y.minTranslate() ? (i = !1, y.params.resistance && (P = y.minTranslate() - 1 + Math.pow(-y.minTranslate() + I + r, y.params.resistanceRatio))) : 0 > r && P < y.maxTranslate() && (i = !1, y.params.resistance && (P = y.maxTranslate() + 1 - Math.pow(y.maxTranslate() - I - r, y.params.resistanceRatio))),
2307                                        i && (e.preventedByNestedSwiper = !0), !y.params.allowSwipeToNext && "next" === y.swipeDirection && I > P && (P = I), !y.params.allowSwipeToPrev && "prev" === y.swipeDirection && P > I && (P = I), y.params.followFinger) {
2308                                        if (y.params.threshold > 0) {
2309                                            if (!(Math.abs(r) > y.params.threshold || k)) return void(P = I);
2310                                            if (!k) return k = !0, y.touches.startX = y.touches.currentX, y.touches.startY = y.touches.currentY, P = I, void(y.touches.diff = y.isHorizontal() ? y.touches.currentX - y.touches.startX : y.touches.currentY - y.touches.startY)
2311                                        }(y.params.freeMode || y.params.watchSlidesProgress) && y.updateActiveIndex(), y.params.freeMode && (0 === H.length && H.push({
2312                                            position: y.touches[y.isHorizontal() ? "startX" : "startY"],
2313                                            time: z
2314                                        }), H.push({
2315                                            position: y.touches[y.isHorizontal() ? "currentX" : "currentY"],
2316                                            time: (new window.Date).getTime()
2317                                        })), y.updateProgress(P), y.setWrapperTranslate(P)
2318                                    }
2319                                }
2320                            }
2321                        }
2322                    }
2323                }, y.onTouchEnd = function(e) {
2324                    if (e.originalEvent && (e = e.originalEvent), C && y.emit("onTouchEnd", y, e), C = !1, T) {
2325                        y.params.grabCursor && S && T && (y.container[0].style.cursor = "move", y.container[0].style.cursor = "-webkit-grab", y.container[0].style.cursor = "-moz-grab", y.container[0].style.cursor = "grab");
2326                        var t = Date.now(),
2327                            s = t - z;
2328                        if (y.allowClick && (y.updateClickedSlide(e), y.emit("onTap", y, e), 300 > s && t - L > 300 && (E && clearTimeout(E), E = setTimeout(function() {
2329                                y && (y.params.paginationHide && y.paginationContainer.length > 0 && !a(e.target).hasClass(y.params.bulletClass) && y.paginationContainer.toggleClass(y.params.paginationHiddenClass), y.emit("onClick", y, e))
2330                            }, 300)), 300 > s && 300 > t - L && (E && clearTimeout(E), y.emit("onDoubleTap", y, e))), L = Date.now(), setTimeout(function() {
2331                                y && (y.allowClick = !0)
2332                            }, 0), !T || !S || !y.swipeDirection || 0 === y.touches.diff || P === I) return void(T = S = !1);
2333                        T = S = !1;
2334                        var r;
2335                        if (r = y.params.followFinger ? y.rtl ? y.translate : -y.translate : -P, y.params.freeMode) {
2336                            if (r < -y.minTranslate()) return void y.slideTo(y.activeIndex);
2337                            if (r > -y.maxTranslate()) return void(y.slides.length < y.snapGrid.length ? y.slideTo(y.snapGrid.length - 1) : y.slideTo(y.slides.length - 1));
2338                            if (y.params.freeModeMomentum) {
2339                                if (H.length > 1) {
2340                                    var i = H.pop(),
2341                                        n = H.pop(),
2342                                        o = i.position - n.position,
2343                                        l = i.time - n.time;
2344                                    y.velocity = o / l, y.velocity = y.velocity / 2, Math.abs(y.velocity) < y.params.freeModeMinimumVelocity && (y.velocity = 0), (l > 150 || (new window.Date).getTime() - i.time > 300) && (y.velocity = 0)
2345                                } else y.velocity = 0;
2346                                H.length = 0;
2347                                var p = 1e3 * y.params.freeModeMomentumRatio,
2348                                    d = y.velocity * p,
2349                                    u = y.translate + d;
2350                                y.rtl && (u = -u);
2351                                var c, m = !1,
2352                                    f = 20 * Math.abs(y.velocity) * y.params.freeModeMomentumBounceRatio;
2353                                if (u < y.maxTranslate()) y.params.freeModeMomentumBounce ? (u + y.maxTranslate() < -f && (u = y.maxTranslate() - f), c = y.maxTranslate(), m = !0, B = !0) : u = y.maxTranslate();
2354                                else if (u > y.minTranslate()) y.params.freeModeMomentumBounce ? (u - y.minTranslate() > f && (u = y.minTranslate() + f), c = y.minTranslate(), m = !0, B = !0) : u = y.minTranslate();
2355                                else if (y.params.freeModeSticky) {
2356                                    var g, h = 0;
2357                                    for (h = 0; h < y.snapGrid.length; h += 1)
2358                                        if (y.snapGrid[h] > -u) {
2359                                            g = h;
2360                                            break
2361                                        } u = Math.abs(y.snapGrid[g] - u) < Math.abs(y.snapGrid[g - 1] - u) || "next" === y.swipeDirection ? y.snapGrid[g] : y.snapGrid[g - 1], y.rtl || (u = -u)
2362                                }
2363                                if (0 !== y.velocity) p = y.rtl ? Math.abs((-u - y.translate) / y.velocity) : Math.abs((u - y.translate) / y.velocity);
2364                                else if (y.params.freeModeSticky) return void y.slideReset();
2365                                y.params.freeModeMomentumBounce && m ? (y.updateProgress(c), y.setWrapperTransition(p), y.setWrapperTranslate(u), y.onTransitionStart(), y.animating = !0, y.wrapper.transitionEnd(function() {
2366                                    y && B && (y.emit("onMomentumBounce", y), y.setWrapperTransition(y.params.speed), y.setWrapperTranslate(c), y.wrapper.transitionEnd(function() {
2367                                        y && y.onTransitionEnd()
2368                                    }))
2369                                })) : y.velocity ? (y.updateProgress(u), y.setWrapperTransition(p), y.setWrapperTranslate(u), y.onTransitionStart(), y.animating || (y.animating = !0, y.wrapper.transitionEnd(function() {
2370                                    y && y.onTransitionEnd()
2371                                }))) : y.updateProgress(u), y.updateActiveIndex()
2372                            }
2373                            return void((!y.params.freeModeMomentum || s >= y.params.longSwipesMs) && (y.updateProgress(), y.updateActiveIndex()))
2374                        }
2375                        var v, w = 0,
2376                            b = y.slidesSizesGrid[0];
2377                        for (v = 0; v < y.slidesGrid.length; v += y.params.slidesPerGroup) "undefined" != typeof y.slidesGrid[v + y.params.slidesPerGroup] ? r >= y.slidesGrid[v] && r < y.slidesGrid[v + y.params.slidesPerGroup] && (w = v, b = y.slidesGrid[v + y.params.slidesPerGroup] - y.slidesGrid[v]) : r >= y.slidesGrid[v] && (w = v, b = y.slidesGrid[y.slidesGrid.length - 1] - y.slidesGrid[y.slidesGrid.length - 2]);
2378                        var x = (r - y.slidesGrid[w]) / b;
2379                        if (s > y.params.longSwipesMs) {
2380                            if (!y.params.longSwipes) return void y.slideTo(y.activeIndex);
2381                            "next" === y.swipeDirection && (x >= y.params.longSwipesRatio ? y.slideTo(w + y.params.slidesPerGroup) : y.slideTo(w)), "prev" === y.swipeDirection && (x > 1 - y.params.longSwipesRatio ? y.slideTo(w + y.params.slidesPerGroup) : y.slideTo(w))
2382                        } else {
2383                            if (!y.params.shortSwipes) return void y.slideTo(y.activeIndex);
2384                            "next" === y.swipeDirection && y.slideTo(w + y.params.slidesPerGroup), "prev" === y.swipeDirection && y.slideTo(w)
2385                        }
2386                    }
2387                }, y._slideTo = function(e, a) {
2388                    return y.slideTo(e, a, !0, !0)
2389                }, y.slideTo = function(e, a, t, s) {
2390                    "undefined" == typeof t && (t = !0), "undefined" == typeof e && (e = 0), 0 > e && (e = 0), y.snapIndex = Math.floor(e / y.params.slidesPerGroup), y.snapIndex >= y.snapGrid.length && (y.snapIndex = y.snapGrid.length - 1);
2391                    var r = -y.snapGrid[y.snapIndex];
2392                    y.params.autoplay && y.autoplaying && (s || !y.params.autoplayDisableOnInteraction ? y.pauseAutoplay(a) : y.stopAutoplay()), y.updateProgress(r);
2393                    for (var i = 0; i < y.slidesGrid.length; i++) - Math.floor(100 * r) >= Math.floor(100 * y.slidesGrid[i]) && (e = i);
2394                    return !y.params.allowSwipeToNext && r < y.translate && r < y.minTranslate() ? !1 : !y.params.allowSwipeToPrev && r > y.translate && r > y.maxTranslate() && (y.activeIndex || 0) !== e ? !1 : ("undefined" == typeof a && (a = y.params.speed), y.previousIndex = y.activeIndex || 0, y.activeIndex = e, y.rtl && -r === y.translate || !y.rtl && r === y.translate ? (y.params.autoHeight && y.updateAutoHeight(), y.updateClasses(), "slide" !== y.params.effect && y.setWrapperTranslate(r), !1) : (y.updateClasses(), y.onTransitionStart(t), 0 === a ? (y.setWrapperTranslate(r), y.setWrapperTransition(0), y.onTransitionEnd(t)) : (y.setWrapperTranslate(r), y.setWrapperTransition(a), y.animating || (y.animating = !0, y.wrapper.transitionEnd(function() {
2395                        y && y.onTransitionEnd(t)
2396                    }))), !0))
2397                }, y.onTransitionStart = function(e) {
2398                    "undefined" == typeof e && (e = !0), y.params.autoHeight && y.updateAutoHeight(), y.lazy && y.lazy.onTransitionStart(), e && (y.emit("onTransitionStart", y), y.activeIndex !== y.previousIndex && (y.emit("onSlideChangeStart", y), y.activeIndex > y.previousIndex ? y.emit("onSlideNextStart", y) : y.emit("onSlidePrevStart", y)))
2399                }, y.onTransitionEnd = function(e) {
2400                    y.animating = !1, y.setWrapperTransition(0), "undefined" == typeof e && (e = !0), y.lazy && y.lazy.onTransitionEnd(), e && (y.emit("onTransitionEnd", y), y.activeIndex !== y.previousIndex && (y.emit("onSlideChangeEnd", y), y.activeIndex > y.previousIndex ? y.emit("onSlideNextEnd", y) : y.emit("onSlidePrevEnd", y))), y.params.hashnav && y.hashnav && y.hashnav.setHash()
2401                }, y.slideNext = function(e, a, t) {
2402                    if (y.params.loop) {
2403                        if (y.animating) return !1;
2404                        y.fixLoop();
2405                        y.container[0].clientLeft;
2406                        return y.slideTo(y.activeIndex + y.params.slidesPerGroup, a, e, t)
2407                    }
2408                    return y.slideTo(y.activeIndex + y.params.slidesPerGroup, a, e, t)
2409                }, y._slideNext = function(e) {
2410                    return y.slideNext(!0, e, !0)
2411                }, y.slidePrev = function(e, a, t) {
2412                    if (y.params.loop) {
2413                        if (y.animating) return !1;
2414                        y.fixLoop();
2415                        y.container[0].clientLeft;
2416                        return y.slideTo(y.activeIndex - 1, a, e, t)
2417                    }
2418                    return y.slideTo(y.activeIndex - 1, a, e, t)
2419                }, y._slidePrev = function(e) {
2420                    return y.slidePrev(!0, e, !0)
2421                }, y.slideReset = function(e, a, t) {
2422                    return y.slideTo(y.activeIndex, a, e)
2423                }, y.setWrapperTransition = function(e, a) {
2424                    y.wrapper.transition(e), "slide" !== y.params.effect && y.effects[y.params.effect] && y.effects[y.params.effect].setTransition(e), y.params.parallax && y.parallax && y.parallax.setTransition(e), y.params.scrollbar && y.scrollbar && y.scrollbar.setTransition(e), y.params.control && y.controller && y.controller.setTransition(e, a), y.emit("onSetTransition", y, e)
2425                }, y.setWrapperTranslate = function(e, a, t) {
2426                    var s = 0,
2427                        i = 0,
2428                        n = 0;
2429                    y.isHorizontal() ? s = y.rtl ? -e : e : i = e, y.params.roundLengths && (s = r(s), i = r(i)), y.params.virtualTranslate || (y.support.transforms3d ? y.wrapper.transform("translate3d(" + s + "px, " + i + "px, " + n + "px)") : y.wrapper.transform("translate(" + s + "px, " + i + "px)")), y.translate = y.isHorizontal() ? s : i;
2430                    var o, l = y.maxTranslate() - y.minTranslate();
2431                    o = 0 === l ? 0 : (e - y.minTranslate()) / l, o !== y.progress && y.updateProgress(e), a && y.updateActiveIndex(), "slide" !== y.params.effect && y.effects[y.params.effect] && y.effects[y.params.effect].setTranslate(y.translate), y.params.parallax && y.parallax && y.parallax.setTranslate(y.translate), y.params.scrollbar && y.scrollbar && y.scrollbar.setTranslate(y.translate), y.params.control && y.controller && y.controller.setTranslate(y.translate, t), y.emit("onSetTranslate", y, y.translate)
2432                }, y.getTranslate = function(e, a) {
2433                    var t, s, r, i;
2434                    return "undefined" == typeof a && (a = "x"), y.params.virtualTranslate ? y.rtl ? -y.translate : y.translate : (r = window.getComputedStyle(e, null), window.WebKitCSSMatrix ? (s = r.transform || r.webkitTransform, s.split(",").length > 6 && (s = s.split(", ").map(function(e) {
2435                        return e.replace(",", ".")
2436                    }).join(", ")), i = new window.WebKitCSSMatrix("none" === s ? "" : s)) : (i = r.MozTransform || r.OTransform || r.MsTransform || r.msTransform || r.transform || r.getPropertyValue("transform").replace("translate(", "matrix(1, 0, 0, 1,"), t = i.toString().split(",")), "x" === a && (s = window.WebKitCSSMatrix ? i.m41 : 16 === t.length ? parseFloat(t[12]) : parseFloat(t[4])), "y" === a && (s = window.WebKitCSSMatrix ? i.m42 : 16 === t.length ? parseFloat(t[13]) : parseFloat(t[5])), y.rtl && s && (s = -s), s || 0)
2437                }, y.getWrapperTranslate = function(e) {
2438                    return "undefined" == typeof e && (e = y.isHorizontal() ? "x" : "y"), y.getTranslate(y.wrapper[0], e)
2439                }, y.observers = [], y.initObservers = function() {
2440                    if (y.params.observeParents)
2441                        for (var e = y.container.parents(), a = 0; a < e.length; a++) o(e[a]);
2442                    o(y.container[0], {
2443                        childList: !1
2444                    }), o(y.wrapper[0], {
2445                        attributes: !1
2446                    })
2447                }, y.disconnectObservers = function() {
2448                    for (var e = 0; e < y.observers.length; e++) y.observers[e].disconnect();
2449                    y.observers = []
2450                }, y.createLoop = function() {
2451                    y.wrapper.children("." + y.params.slideClass + "." + y.params.slideDuplicateClass).remove();
2452                    var e = y.wrapper.children("." + y.params.slideClass);
2453                    "auto" !== y.params.slidesPerView || y.params.loopedSlides || (y.params.loopedSlides = e.length), y.loopedSlides = parseInt(y.params.loopedSlides || y.params.slidesPerView, 10), y.loopedSlides = y.loopedSlides + y.params.loopAdditionalSlides, y.loopedSlides > e.length && (y.loopedSlides = e.length);
2454                    var t, s = [],
2455                        r = [];
2456                    for (e.each(function(t, i) {
2457                            var n = a(this);
2458                            t < y.loopedSlides && r.push(i), t < e.length && t >= e.length - y.loopedSlides && s.push(i), n.attr("data-swiper-slide-index", t)
2459                        }), t = 0; t < r.length; t++) y.wrapper.append(a(r[t].cloneNode(!0)).addClass(y.params.slideDuplicateClass));
2460                    for (t = s.length - 1; t >= 0; t--) y.wrapper.prepend(a(s[t].cloneNode(!0)).addClass(y.params.slideDuplicateClass))
2461                }, y.destroyLoop = function() {
2462                    y.wrapper.children("." + y.params.slideClass + "." + y.params.slideDuplicateClass).remove(), y.slides.removeAttr("data-swiper-slide-index")
2463                }, y.reLoop = function(e) {
2464                    var a = y.activeIndex - y.loopedSlides;
2465                    y.destroyLoop(), y.createLoop(), y.updateSlidesSize(), e && y.slideTo(a + y.loopedSlides, 0, !1)
2466                }, y.fixLoop = function() {
2467                    var e;
2468                    y.activeIndex < y.loopedSlides ? (e = y.slides.length - 3 * y.loopedSlides + y.activeIndex, e += y.loopedSlides, y.slideTo(e, 0, !1, !0)) : ("auto" === y.params.slidesPerView && y.activeIndex >= 2 * y.loopedSlides || y.activeIndex > y.slides.length - 2 * y.params.slidesPerView) && (e = -y.slides.length + y.activeIndex + y.loopedSlides, e += y.loopedSlides, y.slideTo(e, 0, !1, !0))
2469                }, y.appendSlide = function(e) {
2470                    if (y.params.loop && y.destroyLoop(), "object" == typeof e && e.length)
2471                        for (var a = 0; a < e.length; a++) e[a] && y.wrapper.append(e[a]);
2472                    else y.wrapper.append(e);
2473                    y.params.loop && y.createLoop(), y.params.observer && y.support.observer || y.update(!0)
2474                }, y.prependSlide = function(e) {
2475                    y.params.loop && y.destroyLoop();
2476                    var a = y.activeIndex + 1;
2477                    if ("object" == typeof e && e.length) {
2478                        for (var t = 0; t < e.length; t++) e[t] && y.wrapper.prepend(e[t]);
2479                        a = y.activeIndex + e.length
2480                    } else y.wrapper.prepend(e);
2481                    y.params.loop && y.createLoop(), y.params.observer && y.support.observer || y.update(!0), y.slideTo(a, 0, !1)
2482                }, y.removeSlide = function(e) {
2483                    y.params.loop && (y.destroyLoop(), y.slides = y.wrapper.children("." + y.params.slideClass));
2484                    var a, t = y.activeIndex;
2485                    if ("object" == typeof e && e.length) {
2486                        for (var s = 0; s < e.length; s++) a = e[s], y.slides[a] && y.slides.eq(a).remove(), t > a && t--;
2487                        t = Math.max(t, 0)
2488                    } else a = e, y.slides[a] && y.slides.eq(a).remove(), t > a && t--, t = Math.max(t, 0);
2489                    y.params.loop && y.createLoop(), y.params.observer && y.support.observer || y.update(!0), y.params.loop ? y.slideTo(t + y.loopedSlides, 0, !1) : y.slideTo(t, 0, !1)
2490                }, y.removeAllSlides = function() {
2491                    for (var e = [], a = 0; a < y.slides.length; a++) e.push(a);
2492                    y.removeSlide(e)
2493                }, y.effects = {
2494                    fade: {
2495                        setTranslate: function() {
2496                            for (var e = 0; e < y.slides.length; e++) {
2497                                var a = y.slides.eq(e),
2498                                    t = a[0].swiperSlideOffset,
2499                                    s = -t;
2500                                y.params.virtualTranslate || (s -= y.translate);
2501                                var r = 0;
2502                                y.isHorizontal() || (r = s, s = 0);
2503                                var i = y.params.fade.crossFade ? Math.max(1 - Math.abs(a[0].progress), 0) : 1 + Math.min(Math.max(a[0].progress, -1), 0);
2504                                a.css({
2505                                    opacity: i
2506                                }).transform("translate3d(" + s + "px, " + r + "px, 0px)")
2507                            }
2508                        },
2509                        setTransition: function(e) {
2510                            if (y.slides.transition(e), y.params.virtualTranslate && 0 !== e) {
2511                                var a = !1;
2512                                y.slides.transitionEnd(function() {
2513                                    if (!a && y) {
2514                                        a = !0, y.animating = !1;
2515                                        for (var e = ["webkitTransitionEnd", "transitionend", "oTransitionEnd", "MSTransitionEnd", "msTransitionEnd"], t = 0; t < e.length; t++) y.wrapper.trigger(e[t])
2516                                    }
2517                                })
2518                            }
2519                        }
2520                    },
2521                    flip: {
2522                        setTranslate: function() {
2523                            for (var e = 0; e < y.slides.length; e++) {
2524                                var t = y.slides.eq(e),
2525                                    s = t[0].progress;
2526                                y.params.flip.limitRotation && (s = Math.max(Math.min(t[0].progress, 1), -1));
2527                                var r = t[0].swiperSlideOffset,
2528                                    i = -180 * s,
2529                                    n = i,
2530                                    o = 0,
2531                                    l = -r,
2532                                    p = 0;
2533                                if (y.isHorizontal() ? y.rtl && (n = -n) : (p = l, l = 0, o = -n, n = 0), t[0].style.zIndex = -Math.abs(Math.round(s)) + y.slides.length, y.params.flip.slideShadows) {
2534                                    var d = y.isHorizontal() ? t.find(".swiper-slide-shadow-left") : t.find(".swiper-slide-shadow-top"),
2535                                        u = y.isHorizontal() ? t.find(".swiper-slide-shadow-right") : t.find(".swiper-slide-shadow-bottom");
2536                                    0 === d.length && (d = a('<div class="swiper-slide-shadow-' + (y.isHorizontal() ? "left" : "top") + '"></div>'), t.append(d)), 0 === u.length && (u = a('<div class="swiper-slide-shadow-' + (y.isHorizontal() ? "right" : "bottom") + '"></div>'), t.append(u)), d.length && (d[0].style.opacity = Math.max(-s, 0)), u.length && (u[0].style.opacity = Math.max(s, 0))
2537                                }
2538                                t.transform("translate3d(" + l + "px, " + p + "px, 0px) rotateX(" + o + "deg) rotateY(" + n + "deg)")
2539                            }
2540                        },
2541                        setTransition: function(e) {
2542                            if (y.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e), y.params.virtualTranslate && 0 !== e) {
2543                                var t = !1;
2544                                y.slides.eq(y.activeIndex).transitionEnd(function() {
2545                                    if (!t && y && a(this).hasClass(y.params.slideActiveClass)) {
2546                                        t = !0, y.animating = !1;
2547                                        for (var e = ["webkitTransitionEnd", "transitionend", "oTransitionEnd", "MSTransitionEnd", "msTransitionEnd"], s = 0; s < e.length; s++) y.wrapper.trigger(e[s])
2548                                    }
2549                                })
2550                            }
2551                        }
2552                    },
2553                    cube: {
2554                        setTranslate: function() {
2555                            var e, t = 0;
2556                            y.params.cube.shadow && (y.isHorizontal() ? (e = y.wrapper.find(".swiper-cube-shadow"), 0 === e.length && (e = a('<div class="swiper-cube-shadow"></div>'), y.wrapper.append(e)), e.css({
2557                                height: y.width + "px"
2558                            })) : (e = y.container.find(".swiper-cube-shadow"), 0 === e.length && (e = a('<div class="swiper-cube-shadow"></div>'), y.container.append(e))));
2559                            for (var s = 0; s < y.slides.length; s++) {
2560                                var r = y.slides.eq(s),
2561                                    i = 90 * s,
2562                                    n = Math.floor(i / 360);
2563                                y.rtl && (i = -i, n = Math.floor(-i / 360));
2564                                var o = Math.max(Math.min(r[0].progress, 1), -1),
2565                                    l = 0,
2566                                    p = 0,
2567                                    d = 0;
2568                                s % 4 === 0 ? (l = 4 * -n * y.size, d = 0) : (s - 1) % 4 === 0 ? (l = 0, d = 4 * -n * y.size) : (s - 2) % 4 === 0 ? (l = y.size + 4 * n * y.size, d = y.size) : (s - 3) % 4 === 0 && (l = -y.size, d = 3 * y.size + 4 * y.size * n), y.rtl && (l = -l), y.isHorizontal() || (p = l, l = 0);
2569                                var u = "rotateX(" + (y.isHorizontal() ? 0 : -i) + "deg) rotateY(" + (y.isHorizontal() ? i : 0) + "deg) translate3d(" + l + "px, " + p + "px, " + d + "px)";
2570                                if (1 >= o && o > -1 && (t = 90 * s + 90 * o, y.rtl && (t = 90 * -s - 90 * o)), r.transform(u), y.params.cube.slideShadows) {
2571                                    var c = y.isHorizontal() ? r.find(".swiper-slide-shadow-left") : r.find(".swiper-slide-shadow-top"),
2572                                        m = y.isHorizontal() ? r.find(".swiper-slide-shadow-right") : r.find(".swiper-slide-shadow-bottom");
2573                                    0 === c.length && (c = a('<div class="swiper-slide-shadow-' + (y.isHorizontal() ? "left" : "top") + '"></div>'), r.append(c)), 0 === m.length && (m = a('<div class="swiper-slide-shadow-' + (y.isHorizontal() ? "right" : "bottom") + '"></div>'), r.append(m)), c.length && (c[0].style.opacity = Math.max(-o, 0)), m.length && (m[0].style.opacity = Math.max(o, 0))
2574                                }
2575                            }
2576                            if (y.wrapper.css({
2577                                    "-webkit-transform-origin": "50% 50% -" + y.size / 2 + "px",
2578                                    "-moz-transform-origin": "50% 50% -" + y.size / 2 + "px",
2579                                    "-ms-transform-origin": "50% 50% -" + y.size / 2 + "px",
2580                                    "transform-origin": "50% 50% -" + y.size / 2 + "px"
2581                                }), y.params.cube.shadow)
2582                                if (y.isHorizontal()) e.transform("translate3d(0px, " + (y.width / 2 + y.params.cube.shadowOffset) + "px, " + -y.width / 2 + "px) rotateX(90deg) rotateZ(0deg) scale(" + y.params.cube.shadowScale + ")");
2583                                else {
2584                                    var f = Math.abs(t) - 90 * Math.floor(Math.abs(t) / 90),
2585                                        g = 1.5 - (Math.sin(2 * f * Math.PI / 360) / 2 + Math.cos(2 * f * Math.PI / 360) / 2),
2586                                        h = y.params.cube.shadowScale,
2587                                        v = y.params.cube.shadowScale / g,
2588                                        w = y.params.cube.shadowOffset;
2589                                    e.transform("scale3d(" + h + ", 1, " + v + ") translate3d(0px, " + (y.height / 2 + w) + "px, " + -y.height / 2 / v + "px) rotateX(-90deg)")
2590                                } var b = y.isSafari || y.isUiWebView ? -y.size / 2 : 0;
2591                            y.wrapper.transform("translate3d(0px,0," + b + "px) rotateX(" + (y.isHorizontal() ? 0 : t) + "deg) rotateY(" + (y.isHorizontal() ? -t : 0) + "deg)")
2592                        },
2593                        setTransition: function(e) {
2594                            y.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e), y.params.cube.shadow && !y.isHorizontal() && y.container.find(".swiper-cube-shadow").transition(e)
2595                        }
2596                    },
2597                    coverflow: {
2598                        setTranslate: function() {
2599                            for (var e = y.translate, t = y.isHorizontal() ? -e + y.width / 2 : -e + y.height / 2, s = y.isHorizontal() ? y.params.coverflow.rotate : -y.params.coverflow.rotate, r = y.params.coverflow.depth, i = 0, n = y.slides.length; n > i; i++) {
2600                                var o = y.slides.eq(i),
2601                                    l = y.slidesSizesGrid[i],
2602                                    p = o[0].swiperSlideOffset,
2603                                    d = (t - p - l / 2) / l * y.params.coverflow.modifier,
2604                                    u = y.isHorizontal() ? s * d : 0,
2605                                    c = y.isHorizontal() ? 0 : s * d,
2606                                    m = -r * Math.abs(d),
2607                                    f = y.isHorizontal() ? 0 : y.params.coverflow.stretch * d,
2608                                    g = y.isHorizontal() ? y.params.coverflow.stretch * d : 0;
2609                                Math.abs(g) < .001 && (g = 0), Math.abs(f) < .001 && (f = 0), Math.abs(m) < .001 && (m = 0), Math.abs(u) < .001 && (u = 0), Math.abs(c) < .001 && (c = 0);
2610                                var h = "translate3d(" + g + "px," + f + "px," + m + "px)  rotateX(" + c + "deg) rotateY(" + u + "deg)";
2611                                if (o.transform(h), o[0].style.zIndex = -Math.abs(Math.round(d)) + 1, y.params.coverflow.slideShadows) {
2612                                    var v = y.isHorizontal() ? o.find(".swiper-slide-shadow-left") : o.find(".swiper-slide-shadow-top"),
2613                                        w = y.isHorizontal() ? o.find(".swiper-slide-shadow-right") : o.find(".swiper-slide-shadow-bottom");
2614                                    0 === v.length && (v = a('<div class="swiper-slide-shadow-' + (y.isHorizontal() ? "left" : "top") + '"></div>'), o.append(v)), 0 === w.length && (w = a('<div class="swiper-slide-shadow-' + (y.isHorizontal() ? "right" : "bottom") + '"></div>'), o.append(w)), v.length && (v[0].style.opacity = d > 0 ? d : 0), w.length && (w[0].style.opacity = -d > 0 ? -d : 0)
2615                                }
2616                            }
2617                            if (y.browser.ie) {
2618                                var b = y.wrapper[0].style;
2619                                b.perspectiveOrigin = t + "px 50%"
2620                            }
2621                        },
2622                        setTransition: function(e) {
2623                            y.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e)
2624                        }
2625                    }
2626                }, y.lazy = {
2627                    initialImageLoaded: !1,
2628                    loadImageInSlide: function(e, t) {
2629                        if ("undefined" != typeof e && ("undefined" == typeof t && (t = !0), 0 !== y.slides.length)) {
2630                            var s = y.slides.eq(e),
2631                                r = s.find(".swiper-lazy:not(.swiper-lazy-loaded):not(.swiper-lazy-loading)");
2632                            !s.hasClass("swiper-lazy") || s.hasClass("swiper-lazy-loaded") || s.hasClass("swiper-lazy-loading") || (r = r.add(s[0])), 0 !== r.length && r.each(function() {
2633                                var e = a(this);
2634                                e.addClass("swiper-lazy-loading");
2635                                var r = e.attr("data-background"),
2636                                    i = e.attr("data-src"),
2637                                    n = e.attr("data-srcset");
2638                                y.loadImage(e[0], i || r, n, !1, function() {
2639                                    if (r ? (e.css("background-image", 'url("' + r + '")'), e.removeAttr("data-background")) : (n && (e.attr("srcset", n), e.removeAttr("data-srcset")), i && (e.attr("src", i), e.removeAttr("data-src"))), e.addClass("swiper-lazy-loaded").removeClass("swiper-lazy-loading"), s.find(".swiper-lazy-preloader, .preloader").remove(), y.params.loop && t) {
2640                                        var a = s.attr("data-swiper-slide-index");
2641                                        if (s.hasClass(y.params.slideDuplicateClass)) {
2642                                            var o = y.wrapper.children('[data-swiper-slide-index="' + a + '"]:not(.' + y.params.slideDuplicateClass + ")");
2643                                            y.lazy.loadImageInSlide(o.index(), !1)
2644                                        } else {
2645                                            var l = y.wrapper.children("." + y.params.slideDuplicateClass + '[data-swiper-slide-index="' + a + '"]');
2646                                            y.lazy.loadImageInSlide(l.index(), !1)
2647                                        }
2648                                    }
2649                                    y.emit("onLazyImageReady", y, s[0], e[0])
2650                                }), y.emit("onLazyImageLoad", y, s[0], e[0])
2651                            })
2652                        }
2653                    },
2654                    load: function() {
2655                        var e;
2656                        if (y.params.watchSlidesVisibility) y.wrapper.children("." + y.params.slideVisibleClass).each(function() {
2657                            y.lazy.loadImageInSlide(a(this).index())
2658                        });
2659                        else if (y.params.slidesPerView > 1)
2660                            for (e = y.activeIndex; e < y.activeIndex + y.params.slidesPerView; e++) y.slides[e] && y.lazy.loadImageInSlide(e);
2661                        else y.lazy.loadImageInSlide(y.activeIndex);
2662                        if (y.params.lazyLoadingInPrevNext)
2663                            if (y.params.slidesPerView > 1 || y.params.lazyLoadingInPrevNextAmount && y.params.lazyLoadingInPrevNextAmount > 1) {
2664                                var t = y.params.lazyLoadingInPrevNextAmount,
2665                                    s = y.params.slidesPerView,
2666                                    r = Math.min(y.activeIndex + s + Math.max(t, s), y.slides.length),
2667                                    i = Math.max(y.activeIndex - Math.max(s, t), 0);
2668                                for (e = y.activeIndex + y.params.slidesPerView; r > e; e++) y.slides[e] && y.lazy.loadImageInSlide(e);
2669                                for (e = i; e < y.activeIndex; e++) y.slides[e] && y.lazy.loadImageInSlide(e)
2670                            } else {
2671                                var n = y.wrapper.children("." + y.params.slideNextClass);
2672                                n.length > 0 && y.lazy.loadImageInSlide(n.index());
2673                                var o = y.wrapper.children("." + y.params.slidePrevClass);
2674                                o.length > 0 && y.lazy.loadImageInSlide(o.index())
2675                            }
2676                    },
2677                    onTransitionStart: function() {
2678                        y.params.lazyLoading && (y.params.lazyLoadingOnTransitionStart || !y.params.lazyLoadingOnTransitionStart && !y.lazy.initialImageLoaded) && y.lazy.load()
2679                    },
2680                    onTransitionEnd: function() {
2681                        y.params.lazyLoading && !y.params.lazyLoadingOnTransitionStart && y.lazy.load()
2682                    }
2683                }, y.scrollbar = {
2684                    isTouched: !1,
2685                    setDragPosition: function(e) {
2686                        var a = y.scrollbar,
2687                            t = y.isHorizontal() ? "touchstart" === e.type || "touchmove" === e.type ? e.targetTouches[0].pageX : e.pageX || e.clientX : "touchstart" === e.type || "touchmove" === e.type ? e.targetTouches[0].pageY : e.pageY || e.clientY,
2688                            s = t - a.track.offset()[y.isHorizontal() ? "left" : "top"] - a.dragSize / 2,
2689                            r = -y.minTranslate() * a.moveDivider,
2690                            i = -y.maxTranslate() * a.moveDivider;
2691                        r > s ? s = r : s > i && (s = i), s = -s / a.moveDivider, y.updateProgress(s), y.setWrapperTranslate(s, !0)
2692                    },
2693                    dragStart: function(e) {
2694                        var a = y.scrollbar;
2695                        a.isTouched = !0, e.preventDefault(), e.stopPropagation(), a.setDragPosition(e), clearTimeout(a.dragTimeout), a.track.transition(0), y.params.scrollbarHide && a.track.css("opacity", 1), y.wrapper.transition(100), a.drag.transition(100), y.emit("onScrollbarDragStart", y)
2696                    },
2697                    dragMove: function(e) {
2698                        var a = y.scrollbar;
2699                        a.isTouched && (e.preventDefault ? e.preventDefault() : e.returnValue = !1, a.setDragPosition(e), y.wrapper.transition(0), a.track.transition(0), a.drag.transition(0), y.emit("onScrollbarDragMove", y))
2700                    },
2701                    dragEnd: function(e) {
2702                        var a = y.scrollbar;
2703                        a.isTouched && (a.isTouched = !1, y.params.scrollbarHide && (clearTimeout(a.dragTimeout), a.dragTimeout = setTimeout(function() {
2704                            a.track.css("opacity", 0), a.track.transition(400)
2705                        }, 1e3)), y.emit("onScrollbarDragEnd", y), y.params.scrollbarSnapOnRelease && y.slideReset())
2706                    },
2707                    enableDraggable: function() {
2708                        var e = y.scrollbar,
2709                            t = y.support.touch ? e.track : document;
2710                        a(e.track).on(y.touchEvents.start, e.dragStart), a(t).on(y.touchEvents.move, e.dragMove), a(t).on(y.touchEvents.end, e.dragEnd)
2711                    },
2712                    disableDraggable: function() {
2713                        var e = y.scrollbar,
2714                            t = y.support.touch ? e.track : document;
2715                        a(e.track).off(y.touchEvents.start, e.dragStart), a(t).off(y.touchEvents.move, e.dragMove), a(t).off(y.touchEvents.end, e.dragEnd)
2716                    },
2717                    set: function() {
2718                        if (y.params.scrollbar) {
2719                            var e = y.scrollbar;
2720                            e.track = a(y.params.scrollbar), y.params.uniqueNavElements && "string" == typeof y.params.scrollbar && e.track.length > 1 && 1 === y.container.find(y.params.scrollbar).length && (e.track = y.container.find(y.params.scrollbar)), e.drag = e.track.find(".swiper-scrollbar-drag"), 0 === e.drag.length && (e.drag = a('<div class="swiper-scrollbar-drag"></div>'), e.track.append(e.drag)), e.drag[0].style.width = "", e.drag[0].style.height = "", e.trackSize = y.isHorizontal() ? e.track[0].offsetWidth : e.track[0].offsetHeight, e.divider = y.size / y.virtualSize, e.moveDivider = e.divider * (e.trackSize / y.size), e.dragSize = e.trackSize * e.divider, y.isHorizontal() ? e.drag[0].style.width = e.dragSize + "px" : e.drag[0].style.height = e.dragSize + "px", e.divider >= 1 ? e.track[0].style.display = "none" : e.track[0].style.display = "", y.params.scrollbarHide && (e.track[0].style.opacity = 0)
2721                        }
2722                    },
2723                    setTranslate: function() {
2724                        if (y.params.scrollbar) {
2725                            var e, a = y.scrollbar,
2726                                t = (y.translate || 0, a.dragSize);
2727                            e = (a.trackSize - a.dragSize) * y.progress, y.rtl && y.isHorizontal() ? (e = -e, e > 0 ? (t = a.dragSize - e, e = 0) : -e + a.dragSize > a.trackSize && (t = a.trackSize + e)) : 0 > e ? (t = a.dragSize + e, e = 0) : e + a.dragSize > a.trackSize && (t = a.trackSize - e), y.isHorizontal() ? (y.support.transforms3d ? a.drag.transform("translate3d(" + e + "px, 0, 0)") : a.drag.transform("translateX(" + e + "px)"), a.drag[0].style.width = t + "px") : (y.support.transforms3d ? a.drag.transform("translate3d(0px, " + e + "px, 0)") : a.drag.transform("translateY(" + e + "px)"), a.drag[0].style.height = t + "px"), y.params.scrollbarHide && (clearTimeout(a.timeout), a.track[0].style.opacity = 1, a.timeout = setTimeout(function() {
2728                                a.track[0].style.opacity = 0, a.track.transition(400)
2729                            }, 1e3))
2730                        }
2731                    },
2732                    setTransition: function(e) {
2733                        y.params.scrollbar && y.scrollbar.drag.transition(e)
2734                    }
2735                }, y.controller = {
2736                    LinearSpline: function(e, a) {
2737                        this.x = e, this.y = a, this.lastIndex = e.length - 1;
2738                        var t, s;
2739                        this.x.length;
2740                        this.interpolate = function(e) {
2741                            return e ? (s = r(this.x, e), t = s - 1, (e - this.x[t]) * (this.y[s] - this.y[t]) / (this.x[s] - this.x[t]) + this.y[t]) : 0
2742                        };
2743                        var r = function() {
2744                            var e, a, t;
2745                            return function(s, r) {
2746                                for (a = -1, e = s.length; e - a > 1;) s[t = e + a >> 1] <= r ? a = t : e = t;
2747                                return e
2748                            }
2749                        }()
2750                    },
2751                    getInterpolateFunction: function(e) {
2752                        y.controller.spline || (y.controller.spline = y.params.loop ? new y.controller.LinearSpline(y.slidesGrid, e.slidesGrid) : new y.controller.LinearSpline(y.snapGrid, e.snapGrid))
2753                    },
2754                    setTranslate: function(e, a) {
2755                        function s(a) {
2756                            e = a.rtl && "horizontal" === a.params.direction ? -y.translate : y.translate, "slide" === y.params.controlBy && (y.controller.getInterpolateFunction(a), i = -y.controller.spline.interpolate(-e)), i && "container" !== y.params.controlBy || (r = (a.maxTranslate() - a.minTranslate()) / (y.maxTranslate() - y.minTranslate()), i = (e - y.minTranslate()) * r + a.minTranslate()), y.params.controlInverse && (i = a.maxTranslate() - i), a.updateProgress(i), a.setWrapperTranslate(i, !1, y), a.updateActiveIndex()
2757                        }
2758                        var r, i, n = y.params.control;
2759                        if (y.isArray(n))
2760                            for (var o = 0; o < n.length; o++) n[o] !== a && n[o] instanceof t && s(n[o]);
2761                        else n instanceof t && a !== n && s(n)
2762                    },
2763                    setTransition: function(e, a) {
2764                        function s(a) {
2765                            a.setWrapperTransition(e, y), 0 !== e && (a.onTransitionStart(), a.wrapper.transitionEnd(function() {
2766                                i && (a.params.loop && "slide" === y.params.controlBy && a.fixLoop(), a.onTransitionEnd())
2767                            }))
2768                        }
2769                        var r, i = y.params.control;
2770                        if (y.isArray(i))
2771                            for (r = 0; r < i.length; r++) i[r] !== a && i[r] instanceof t && s(i[r]);
2772                        else i instanceof t && a !== i && s(i)
2773                    }
2774                }, y.hashnav = {
2775                    init: function() {
2776                        if (y.params.hashnav) {
2777                            y.hashnav.initialized = !0;
2778                            var e = document.location.hash.replace("#", "");
2779                            if (e)
2780                                for (var a = 0, t = 0, s = y.slides.length; s > t; t++) {
2781                                    var r = y.slides.eq(t),
2782                                        i = r.attr("data-hash");
2783                                    if (i === e && !r.hasClass(y.params.slideDuplicateClass)) {
2784                                        var n = r.index();
2785                                        y.slideTo(n, a, y.params.runCallbacksOnInit, !0)
2786                                    }
2787                                }
2788                        }
2789                    },
2790                    setHash: function() {
2791                        y.hashnav.initialized && y.params.hashnav && (document.location.hash = y.slides.eq(y.activeIndex).attr("data-hash") || "")
2792                    }
2793                }, y.disableKeyboardControl = function() {
2794                    y.params.keyboardControl = !1, a(document).off("keydown", l)
2795                }, y.enableKeyboardControl = function() {
2796                    y.params.keyboardControl = !0, a(document).on("keydown", l)
2797                }, y.mousewheel = {
2798                    event: !1,
2799                    lastScrollTime: (new window.Date).getTime()
2800                }, y.params.mousewheelControl) {
2801                try {
2802                    new window.WheelEvent("wheel"), y.mousewheel.event = "wheel"
2803                } catch (O) {
2804                    (window.WheelEvent || y.container[0] && "wheel" in y.container[0]) && (y.mousewheel.event = "wheel")
2805                }!y.mousewheel.event && window.WheelEvent, y.mousewheel.event || void 0 === document.onmousewheel || (y.mousewheel.event = "mousewheel"), y.mousewheel.event || (y.mousewheel.event = "DOMMouseScroll")
2806            }
2807            y.disableMousewheelControl = function() {
2808                return y.mousewheel.event ? (y.container.off(y.mousewheel.event, p), !0) : !1
2809            }, y.enableMousewheelControl = function() {
2810                return y.mousewheel.event ? (y.container.on(y.mousewheel.event, p), !0) : !1
2811            }, y.parallax = {
2812                setTranslate: function() {
2813                    y.container.children("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function() {
2814                        d(this, y.progress)
2815                    }), y.slides.each(function() {
2816                        var e = a(this);
2817                        e.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function() {
2818                            var a = Math.min(Math.max(e[0].progress, -1), 1);
2819                            d(this, a)
2820                        })
2821                    })
2822                },
2823                setTransition: function(e) {
2824                    "undefined" == typeof e && (e = y.params.speed), y.container.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function() {
2825                        var t = a(this),
2826                            s = parseInt(t.attr("data-swiper-parallax-duration"), 10) || e;
2827                        0 === e && (s = 0), t.transition(s)
2828                    })
2829                }
2830            }, y._plugins = [];
2831            for (var N in y.plugins) {
2832                var R = y.plugins[N](y, y.params[N]);
2833                R && y._plugins.push(R)
2834            }
2835            return y.callPlugins = function(e) {
2836                for (var a = 0; a < y._plugins.length; a++) e in y._plugins[a] && y._plugins[a][e](arguments[1], arguments[2], arguments[3], arguments[4], arguments[5])
2837            }, y.emitterEventListeners = {}, y.emit = function(e) {
2838                y.params[e] && y.params[e](arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]);
2839                var a;
2840                if (y.emitterEventListeners[e])
2841                    for (a = 0; a < y.emitterEventListeners[e].length; a++) y.emitterEventListeners[e][a](arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]);
2842                y.callPlugins && y.callPlugins(e, arguments[1], arguments[2], arguments[3], arguments[4], arguments[5])
2843            }, y.on = function(e, a) {
2844                return e = u(e), y.emitterEventListeners[e] || (y.emitterEventListeners[e] = []), y.emitterEventListeners[e].push(a), y
2845            }, y.off = function(e, a) {
2846                var t;
2847                if (e = u(e), "undefined" == typeof a) return y.emitterEventListeners[e] = [], y;
2848                if (y.emitterEventListeners[e] && 0 !== y.emitterEventListeners[e].length) {
2849                    for (t = 0; t < y.emitterEventListeners[e].length; t++) y.emitterEventListeners[e][t] === a && y.emitterEventListeners[e].splice(t, 1);
2850                    return y
2851                }
2852            }, y.once = function(e, a) {
2853                e = u(e);
2854                var t = function() {
2855                    a(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4]), y.off(e, t)
2856                };
2857                return y.on(e, t), y
2858            }, y.a11y = {
2859                makeFocusable: function(e) {
2860                    return e.attr("tabIndex", "0"), e
2861                },
2862                addRole: function(e, a) {
2863                    return e.attr("role", a), e
2864                },
2865                addLabel: function(e, a) {
2866                    return e.attr("aria-label", a), e
2867                },
2868                disable: function(e) {
2869                    return e.attr("aria-disabled", !0), e
2870                },
2871                enable: function(e) {
2872                    return e.attr("aria-disabled", !1), e
2873                },
2874                onEnterKey: function(e) {
2875                    13 === e.keyCode && (a(e.target).is(y.params.nextButton) ? (y.onClickNext(e), y.isEnd ? y.a11y.notify(y.params.lastSlideMessage) : y.a11y.notify(y.params.nextSlideMessage)) : a(e.target).is(y.params.prevButton) && (y.onClickPrev(e), y.isBeginning ? y.a11y.notify(y.params.firstSlideMessage) : y.a11y.notify(y.params.prevSlideMessage)), a(e.target).is("." + y.params.bulletClass) && a(e.target)[0].click())
2876                },
2877                liveRegion: a('<span class="swiper-notification" aria-live="assertive" aria-atomic="true"></span>'),
2878                notify: function(e) {
2879                    var a = y.a11y.liveRegion;
2880                    0 !== a.length && (a.html(""), a.html(e))
2881                },
2882                init: function() {
2883                    y.params.nextButton && y.nextButton && y.nextButton.length > 0 && (y.a11y.makeFocusable(y.nextButton), y.a11y.addRole(y.nextButton, "button"), y.a11y.addLabel(y.nextButton, y.params.nextSlideMessage)), y.params.prevButton && y.prevButton && y.prevButton.length > 0 && (y.a11y.makeFocusable(y.prevButton), y.a11y.addRole(y.prevButton, "button"), y.a11y.addLabel(y.prevButton, y.params.prevSlideMessage)), a(y.container).append(y.a11y.liveRegion)
2884                },
2885                initPagination: function() {
2886                    y.params.pagination && y.params.paginationClickable && y.bullets && y.bullets.length && y.bullets.each(function() {
2887                        var e = a(this);
2888                        y.a11y.makeFocusable(e), y.a11y.addRole(e, "button"), y.a11y.addLabel(e, y.params.paginationBulletMessage.replace(/{{index}}/, e.index() + 1))
2889                    })
2890                },
2891                destroy: function() {
2892                    y.a11y.liveRegion && y.a11y.liveRegion.length > 0 && y.a11y.liveRegion.remove()
2893                }
2894            }, y.init = function() {
2895                y.params.loop && y.createLoop(), y.updateContainerSize(), y.updateSlidesSize(), y.updatePagination(), y.params.scrollbar && y.scrollbar && (y.scrollbar.set(), y.params.scrollbarDraggable && y.scrollbar.enableDraggable()), "slide" !== y.params.effect && y.effects[y.params.effect] && (y.params.loop || y.updateProgress(), y.effects[y.params.effect].setTranslate()), y.params.loop ? y.slideTo(y.params.initialSlide + y.loopedSlides, 0, y.params.runCallbacksOnInit) : (y.slideTo(y.params.initialSlide, 0, y.params.runCallbacksOnInit), 0 === y.params.initialSlide && (y.parallax && y.params.parallax && y.parallax.setTranslate(), y.lazy && y.params.lazyLoading && (y.lazy.load(), y.lazy.initialImageLoaded = !0))), y.attachEvents(), y.params.observer && y.support.observer && y.initOb
2895servers(), y.params.preloadImages && !y.params.lazyLoading && y.preloadImages(), y.params.autoplay && y.startAutoplay(), y.params.keyboardControl && y.enableKeyboardControl && y.enableKeyboardControl(), y.params.mousewheelControl && y.enableMousewheelControl && y.enableMousewheelControl(),
2896                    y.params.hashnav && y.hashnav && y.hashnav.init(), y.params.a11y && y.a11y && y.a11y.init(), y.emit("onInit", y)
2897            }, y.cleanupStyles = function() {
2898                y.container.removeClass(y.classNames.join(" ")).removeAttr("style"), y.wrapper.removeAttr("style"), y.slides && y.slides.length && y.slides.removeClass([y.params.slideVisibleClass, y.params.slideActiveClass, y.params.slideNextClass, y.params.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-column").removeAttr("data-swiper-row"), y.paginationContainer && y.paginationContainer.length && y.paginationContainer.removeClass(y.params.paginationHiddenClass), y.bullets && y.bullets.length && y.bullets.removeClass(y.params.bulletActiveClass), y.params.prevButton && a(y.params.prevButton).removeClass(y.params.buttonDisabledClass), y.params.nextButton && a(y.params.nextButton).removeClass(y.params.buttonDisabledClass), y.params.scrollbar && y.scrollbar && (y.scrollbar.track && y.scrollbar.track.length && y.scrollbar.track.removeAttr("style"), y.scrollbar.drag && y.scrollbar.drag.length && y.scrollbar.drag.removeAttr("style"))
2899            }, y.destroy = function(e, a) {
2900                y.detachEvents(), y.stopAutoplay(), y.params.scrollbar && y.scrollbar && y.params.scrollbarDraggable && y.scrollbar.disableDraggable(), y.params.loop && y.destroyLoop(), a && y.cleanupStyles(), y.disconnectObservers(), y.params.keyboardControl && y.disableKeyboardControl && y.disableKeyboardControl(), y.params.mousewheelControl && y.disableMousewheelControl && y.disableMousewheelControl(), y.params.a11y && y.a11y && y.a11y.destroy(), y.emit("onDestroy"), e !== !1 && (y = null)
2901            }, y.init(), y
2902        }
2903    };
2904    t.prototype = {
2905        isSafari: function() {
2906            var e = navigator.userAgent.toLowerCase();
2907            return e.indexOf("safari") >= 0 && e.indexOf("chrome") < 0 && e.indexOf("android") < 0
2908        }(),
2909        isUiWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(navigator.userAgent),
2910        isArray: function(e) {
2911            return "[object Array]" === Object.prototype.toString.apply(e)
2912        },
2913        browser: {
2914            ie: window.navigator.pointerEnabled || window.navigator.msPointerEnabled,
2915            ieTouch: window.navigator.msPointerEnabled && window.navigator.msMaxTouchPoints > 1 || window.navigator.pointerEnabled && window.navigator.maxTouchPoints > 1
2916        },
2917        device: function() {
2918            var e = navigator.userAgent,
2919                a = e.match(/(Android);?[\s\/]+([\d.]+)?/),
2920                t = e.match(/(iPad).*OS\s([\d_]+)/),
2921                s = e.match(/(iPod)(.*OS\s([\d_]+))?/),
2922                r = !t && e.match(/(iPhone\sOS)\s([\d_]+)/);
2923            return {
2924                ios: t || r || s,
2925                android: a
2926            }
2927        }(),
2928        support: {
2929            touch: window.Modernizr && Modernizr.touch === !0 || function() {
2930                return !!("ontouchstart" in window || window.DocumentTouch && document instanceof DocumentTouch)
2931            }(),
2932            transforms3d: window.Modernizr && Modernizr.csstransforms3d === !0 || function() {
2933                var e = document.createElement("div").style;
2934                return "webkitPerspective" in e || "MozPerspective" in e || "OPerspective" in e || "MsPerspective" in e || "perspective" in e
2935            }(),
2936            flexbox: function() {
2937                for (var e = document.createElement("div").style, a = "alignItems webkitAlignItems webkitBoxAlign msFlexAlign mozBoxAlign webkitFlexDirection msFlexDirection mozBoxDirection mozBoxOrient webkitBoxDirection webkitBoxOrient".split(" "), t = 0; t < a.length; t++)
2938                    if (a[t] in e) return !0
2939            }(),
2940            observer: function() {
2941                return "MutationObserver" in window || "WebkitMutationObserver" in window
2942            }()
2943        },
2944        plugins: {}
2945    };
2946    for (var s = ["jQuery", "Zepto", "Dom7"], r = 0; r < s.length; r++) window[s[r]] && e(window[s[r]]);
2947    var i;
2948    i = "undefined" == typeof Dom7 ? window.Dom7 || window.Zepto || window.jQuery : Dom7, i && ("transitionEnd" in i.fn || (i.fn.transitionEnd = function(e) {
2949        function a(i) {
2950            if (i.target === this)
2951                for (e.call(this, i), t = 0; t < s.length; t++) r.off(s[t], a)
2952        }
2953        var t, s = ["webkitTransitionEnd", "transitionend", "oTransitionEnd", "MSTransitionEnd", "msTransitionEnd"],
2954            r = this;
2955        if (e)
2956            for (t = 0; t < s.length; t++) r.on(s[t], a);
2957        return this
2958    }), "transform" in i.fn || (i.fn.transform = function(e) {
2959        for (var a = 0; a < this.length; a++) {
2960            var t = this[a].style;
2961            t.webkitTransform = t.MsTransform = t.msTransform = t.MozTransform = t.OTransform = t.transform = e
2962        }
2963        return this
2964    }), "transition" in i.fn || (i.fn.transition = function(e) {
2965        "string" != typeof e && (e += "ms");
2966        for (var a = 0; a < this.length; a++) {
2967            var t = this[a].style;
2968            t.webkitTransitionDuration = t.MsTransitionDuration = t.msTransitionDuration = t.MozTransitionDuration = t.OTransitionDuration = t.transitionDuration = e
2969        }
2970        return this
2971    })), window.Swiper = t
2972}(), "undefined" != typeof module ? module.exports = window.Swiper : "function" == typeof define && define.amd && define([], function() {
2973    "use strict";
2974    return window.Swiper
2975});
2976
2977! function(t) {
2978    t.Package ? Materialize = {} : t.Materialize = {}
2979}(window), Materialize.guid = function() {
2980    function t() {
2981        return Math.floor(65536 * (1 + Math.random())).toString(16).substring(1)
2982    }
2983    return function() {
2984        return t() + t() + "-" + t() + "-" + t() + "-" + t() + "-" + t() + t() + t()
2985    }
2986}(), Materialize.elementOrParentIsFixed = function(t) {
2987    var e = $(t),
2988        i = e.add(e.parents()),
2989        n = !1;
2990    return i.each(function() {
2991        return "fixed" === $(this).css("position") ? (n = !0, !1) : void 0
2992    }), n
2993};
2994var Vel;
2995Vel = $ ? $.Velocity : jQuery ? jQuery.Velocity : Velocity;
2996/*! VelocityJS.org (1.2.3). (C) 2014 Julian Shapiro. MIT @license: en.wikipedia.org/wiki/MIT_License */
vendor: 61,211 bytes, lines 2997-4084
2997/*! VelocityJS.org jQuery Shim (1.0.1). (C) 2014 The jQuery Foundation. MIT @license: en.wikipedia.org/wiki/MIT_License. */
2998/*! Note that this has been modified by Materialize to confirm that Velocity is not already being imported. */
2999jQuery.Velocity ? console.log("Velocity is already loaded. You may be needlessly importing Velocity again; note that Materialize includes Velocity.") : (! function(e) {
3000    function t(e) {
3001        var t = e.length,
3002            a = r.type(e);
3003        return "function" === a || r.isWindow(e) ? !1 : 1 === e.nodeType && t ? !0 : "array" === a || 0 === t || "number" == typeof t && t > 0 && t - 1 in e
3004    }
3005    if (!e.jQuery) {
3006        var r = function(e, t) {
3007            return new r.fn.init(e, t)
3008        };
3009        r.isWindow = function(e) {
3010            return null != e && e == e.window
3011        }, r.type = function(e) {
3012            return null == e ? e + "" : "object" == typeof e || "function" == typeof e ? n[i.call(e)] || "object" : typeof e
3013        }, r.isArray = Array.isArray || function(e) {
3014            return "array" === r.type(e)
3015        }, r.isPlainObject = function(e) {
3016            var t;
3017            if (!e || "object" !== r.type(e) || e.nodeType || r.isWindow(e)) return !1;
3018            try {
3019                if (e.constructor && !o.call(e, "constructor") && !o.call(e.constructor.prototype, "isPrototypeOf")) return !1
3020            } catch (a) {
3021                return !1
3022            }
3023            for (t in e);
3024            return void 0 === t || o.call(e, t)
3025        }, r.each = function(e, r, a) {
3026            var n, o = 0,
3027                i = e.length,
3028                s = t(e);
3029            if (a) {
3030                if (s)
3031                    for (; i > o && (n = r.apply(e[o], a), n !== !1); o++);
3032                else
3033                    for (o in e)
3034                        if (n = r.apply(e[o], a), n === !1) break
3035            } else if (s)
3036                for (; i > o && (n = r.call(e[o], o, e[o]), n !== !1); o++);
3037            else
3038                for (o in e)
3039                    if (n = r.call(e[o], o, e[o]), n === !1) break;
3040            return e
3041        }, r.data = function(e, t, n) {
3042            if (void 0 === n) {
3043                var o = e[r.expando],
3044                    i = o && a[o];
3045                if (void 0 === t) return i;
3046                if (i && t in i) return i[t]
3047            } else if (void 0 !== t) {
3048                var o = e[r.expando] || (e[r.expando] = ++r.uuid);
3049                return a[o] = a[o] || {}, a[o][t] = n, n
3050            }
3051        }, r.removeData = function(e, t) {
3052            var n = e[r.expando],
3053                o = n && a[n];
3054            o && r.each(t, function(e, t) {
3055                delete o[t]
3056            })
3057        }, r.extend = function() {
3058            var e, t, a, n, o, i, s = arguments[0] || {},
3059                l = 1,
3060                u = arguments.length,
3061                c = !1;
3062            for ("boolean" == typeof s && (c = s, s = arguments[l] || {}, l++), "object" != typeof s && "function" !== r.type(s) && (s = {}), l === u && (s = this, l--); u > l; l++)
3063                if (null != (o = arguments[l]))
3064                    for (n in o) e = s[n], a = o[n], s !== a && (c && a && (r.isPlainObject(a) || (t = r.isArray(a))) ? (t ? (t = !1, i = e && r.isArray(e) ? e : []) : i = e && r.isPlainObject(e) ? e : {}, s[n] = r.extend(c, i, a)) : void 0 !== a && (s[n] = a));
3065            return s
3066        }, r.queue = function(e, a, n) {
3067            function o(e, r) {
3068                var a = r || [];
3069                return null != e && (t(Object(e)) ? ! function(e, t) {
3070                    for (var r = +t.length, a = 0, n = e.length; r > a;) e[n++] = t[a++];
3071                    if (r !== r)
3072                        for (; void 0 !== t[a];) e[n++] = t[a++];
3073                    return e.length = n, e
3074                }(a, "string" == typeof e ? [e] : e) : [].push.call(a, e)), a
3075            }
3076            if (e) {
3077                a = (a || "fx") + "queue";
3078                var i = r.data(e, a);
3079                return n ? (!i || r.isArray(n) ? i = r.data(e, a, o(n)) : i.push(n), i) : i || []
3080            }
3081        }, r.dequeue = function(e, t) {
3082            r.each(e.nodeType ? [e] : e, function(e, a) {
3083                t = t || "fx";
3084                var n = r.queue(a, t),
3085                    o = n.shift();
3086                "inprogress" === o && (o = n.shift()), o && ("fx" === t && n.unshift("inprogress"), o.call(a, function() {
3087                    r.dequeue(a, t)
3088                }))
3089            })
3090        }, r.fn = r.prototype = {
3091            init: function(e) {
3092                if (e.nodeType) return this[0] = e, this;
3093                throw new Error("Not a DOM node.")
3094            },
3095            offset: function() {
3096                var t = this[0].getBoundingClientRect ? this[0].getBoundingClientRect() : {
3097                    top: 0,
3098                    left: 0
3099                };
3100                return {
3101                    top: t.top + (e.pageYOffset || document.scrollTop || 0) - (document.clientTop || 0),
3102                    left: t.left + (e.pageXOffset || document.scrollLeft || 0) - (document.clientLeft || 0)
3103                }
3104            },
3105            position: function() {
3106                function e() {
3107                    for (var e = this.offsetParent || document; e && "html" === !e.nodeType.toLowerCase && "static" === e.style.position;) e = e.offsetParent;
3108                    return e || document
3109                }
3110                var t = this[0],
3111                    e = e.apply(t),
3112                    a = this.offset(),
3113                    n = /^(?:body|html)$/i.test(e.nodeName) ? {
3114                        top: 0,
3115                        left: 0
3116                    } : r(e).offset();
3117                return a.top -= parseFloat(t.style.marginTop) || 0, a.left -= parseFloat(t.style.marginLeft) || 0, e.style && (n.top += parseFloat(e.style.borderTopWidth) || 0, n.left += parseFloat(e.style.borderLeftWidth) || 0), {
3118                    top: a.top - n.top,
3119                    left: a.left - n.left
3120                }
3121            }
3122        };
3123        var a = {};
3124        r.expando = "velocity" + (new Date).getTime(), r.uuid = 0;
3125        for (var n = {}, o = n.hasOwnProperty, i = n.toString, s = "Boolean Number String Function Array Date RegExp Object Error".split(" "), l = 0; l < s.length; l++) n["[object " + s[l] + "]"] = s[l].toLowerCase();
3126        r.fn.init.prototype = r.fn, e.Velocity = {
3127            Utilities: r
3128        }
3129    }
3130}(window), function(e) {
3131    "object" == typeof module && "object" == typeof module.exports ? module.exports = e() : "function" == typeof define && define.amd ? define(e) : e()
3132}(function() {
3133    return function(e, t, r, a) {
3134        function n(e) {
3135            for (var t = -1, r = e ? e.length : 0, a = []; ++t < r;) {
3136                var n = e[t];
3137                n && a.push(n)
3138            }
3139            return a
3140        }
3141
3142        function o(e) {
3143            return m.isWrapped(e) ? e = [].slice.call(e) : m.isNode(e) && (e = [e]), e
3144        }
3145
3146        function i(e) {
3147            var t = f.data(e, "velocity");
3148            return null === t ? a : t
3149        }
3150
3151        function s(e) {
3152            return function(t) {
3153                return Math.round(t * e) * (1 / e)
3154            }
3155        }
3156
3157        function l(e, r, a, n) {
3158            function o(e, t) {
3159                return 1 - 3 * t + 3 * e
3160            }
3161
3162            function i(e, t) {
3163                return 3 * t - 6 * e
3164            }
3165
3166            function s(e) {
3167                return 3 * e
3168            }
3169
3170            function l(e, t, r) {
3171                return ((o(t, r) * e + i(t, r)) * e + s(t)) * e
3172            }
3173
3174            function u(e, t, r) {
3175                return 3 * o(t, r) * e * e + 2 * i(t, r) * e + s(t)
3176            }
3177
3178            function c(t, r) {
3179                for (var n = 0; m > n; ++n) {
3180                    var o = u(r, e, a);
3181                    if (0 === o) return r;
3182                    var i = l(r, e, a) - t;
3183                    r -= i / o
3184                }
3185                return r
3186            }
3187
3188            function p() {
3189                for (var t = 0; b > t; ++t) w[t] = l(t * x, e, a)
3190            }
3191
3192            function f(t, r, n) {
3193                var o, i, s = 0;
3194                do i = r + (n - r) / 2, o = l(i, e, a) - t, o > 0 ? n = i : r = i; while (Math.abs(o) > h && ++s < v);
3195                return i
3196            }
3197
3198            function d(t) {
3199                for (var r = 0, n = 1, o = b - 1; n != o && w[n] <= t; ++n) r += x;
3200                --n;
3201                var i = (t - w[n]) / (w[n + 1] - w[n]),
3202                    s = r + i * x,
3203                    l = u(s, e, a);
3204                return l >= y ? c(t, s) : 0 == l ? s : f(t, r, r + x)
3205            }
3206
3207            function g() {
3208                V = !0, (e != r || a != n) && p()
3209            }
3210            var m = 4,
3211                y = .001,
3212                h = 1e-7,
3213                v = 10,
3214                b = 11,
3215                x = 1 / (b - 1),
3216                S = "Float32Array" in t;
3217            if (4 !== arguments.length) return !1;
3218            for (var P = 0; 4 > P; ++P)
3219                if ("number" != typeof arguments[P] || isNaN(arguments[P]) || !isFinite(arguments[P])) return !1;
3220            e = Math.min(e, 1), a = Math.min(a, 1), e = Math.max(e, 0), a = Math.max(a, 0);
3221            var w = S ? new Float32Array(b) : new Array(b),
3222                V = !1,
3223                C = function(t) {
3224                    return V || g(), e === r && a === n ? t : 0 === t ? 0 : 1 === t ? 1 : l(d(t), r, n)
3225                };
3226            C.getControlPoints = function() {
3227                return [{
3228                    x: e,
3229                    y: r
3230                }, {
3231                    x: a,
3232                    y: n
3233                }]
3234            };
3235            var T = "generateBezier(" + [e, r, a, n] + ")";
3236            return C.toString = function() {
3237                return T
3238            }, C
3239        }
3240
3241        function u(e, t) {
3242            var r = e;
3243            return m.isString(e) ? b.Easings[e] || (r = !1) : r = m.isArray(e) && 1 === e.length ? s.apply(null, e) : m.isArray(e) && 2 === e.length ? x.apply(null, e.concat([t])) : m.isArray(e) && 4 === e.length ? l.apply(null, e) : !1, r === !1 && (r = b.Easings[b.defaults.easing] ? b.defaults.easing : v), r
3244        }
3245
3246        function c(e) {
3247            if (e) {
3248                var t = (new Date).getTime(),
3249                    r = b.State.calls.length;
3250                r > 1e4 && (b.State.calls = n(b.State.calls));
3251                for (var o = 0; r > o; o++)
3252                    if (b.State.calls[o]) {
3253                        var s = b.State.calls[o],
3254                            l = s[0],
3255                            u = s[2],
3256                            d = s[3],
3257                            g = !!d,
3258                            y = null;
3259                        d || (d = b.State.calls[o][3] = t - 16);
3260                        for (var h = Math.min((t - d) / u.duration, 1), v = 0, x = l.length; x > v; v++) {
3261                            var P = l[v],
3262                                V = P.element;
3263                            if (i(V)) {
3264                                var C = !1;
3265                                if (u.display !== a && null !== u.display && "none" !== u.display) {
3266                                    if ("flex" === u.display) {
3267                                        var T = ["-webkit-box", "-moz-box", "-ms-flexbox", "-webkit-flex"];
3268                                        f.each(T, function(e, t) {
3269                                            S.setPropertyValue(V, "display", t)
3270                                        })
3271                                    }
3272                                    S.setPropertyValue(V, "display", u.display)
3273                                }
3274                                u.visibility !== a && "hidden" !== u.visibility && S.setPropertyValue(V, "visibility", u.visibility);
3275                                for (var k in P)
3276                                    if ("element" !== k) {
3277                                        var A, F = P[k],
3278                                            j = m.isString(F.easing) ? b.Easings[F.easing] : F.easing;
3279                                        if (1 === h) A = F.endValue;
3280                                        else {
3281                                            var E = F.endValue - F.startValue;
3282                                            if (A = F.startValue + E * j(h, u, E), !g && A === F.currentValue) continue
3283                                        }
3284                                        if (F.currentValue = A, "tween" === k) y = A;
3285                                        else {
3286                                            if (S.Hooks.registered[k]) {
3287                                                var H = S.Hooks.getRoot(k),
3288                                                    N = i(V).rootPropertyValueCache[H];
3289                                                N && (F.rootPropertyValue = N)
3290                                            }
3291                                            var L = S.setPropertyValue(V, k, F.currentValue + (0 === parseFloat(A) ? "" : F.unitType), F.rootPropertyValue, F.scrollData);
3292                                            S.Hooks.registered[k] && (i(V).rootPropertyValueCache[H] = S.Normalizations.registered[H] ? S.Normalizations.registered[H]("extract", null, L[1]) : L[1]), "transform" === L[0] && (C = !0)
3293                                        }
3294                                    } u.mobileHA && i(V).transformCache.translate3d === a && (i(V).transformCache.translate3d = "(0px, 0px, 0px)", C = !0), C && S.flushTransformCache(V)
3295                            }
3296                        }
3297                        u.display !== a && "none" !== u.display && (b.State.calls[o][2].display = !1), u.visibility !== a && "hidden" !== u.visibility && (b.State.calls[o][2].visibility = !1), u.progress && u.progress.call(s[1], s[1], h, Math.max(0, d + u.duration - t), d, y), 1 === h && p(o)
3298                    }
3299            }
3300            b.State.isTicking && w(c)
3301        }
3302
3303        function p(e, t) {
3304            if (!b.State.calls[e]) return !1;
3305            for (var r = b.State.calls[e][0], n = b.State.calls[e][1], o = b.State.calls[e][2], s = b.State.calls[e][4], l = !1, u = 0, c = r.length; c > u; u++) {
3306                var p = r[u].element;
3307                if (t || o.loop || ("none" === o.display && S.setPropertyValue(p, "display", o.display), "hidden" === o.visibility && S.setPropertyValue(p, "visibility", o.visibility)), o.loop !== !0 && (f.queue(p)[1] === a || !/\.velocityQueueEntryFlag/i.test(f.queue(p)[1])) && i(p)) {
3308                    i(p).isAnimating = !1, i(p).rootPropertyValueCache = {};
3309                    var d = !1;
3310                    f.each(S.Lists.transforms3D, function(e, t) {
3311                        var r = /^scale/.test(t) ? 1 : 0,
3312                            n = i(p).transformCache[t];
3313                        i(p).transformCache[t] !== a && new RegExp("^\\(" + r + "[^.]").test(n) && (d = !0, delete i(p).transformCache[t])
3314                    }), o.mobileHA && (d = !0, delete i(p).transformCache.translate3d), d && S.flushTransformCache(p), S.Values.removeClass(p, "velocity-animating")
3315                }
3316                if (!t && o.complete && !o.loop && u === c - 1) try {
3317                    o.complete.call(n, n)
3318                } catch (g) {
3319                    setTimeout(function() {
3320                        throw g
3321                    }, 1)
3322                }
3323                s && o.loop !== !0 && s(n), i(p) && o.loop === !0 && !t && (f.each(i(p).tweensContainer, function(e, t) {
3324                    /^rotate/.test(e) && 360 === parseFloat(t.endValue) && (t.endValue = 0, t.startValue = 360), /^backgroundPosition/.test(e) && 100 === parseFloat(t.endValue) && "%" === t.unitType && (t.endValue = 0, t.startValue = 100)
3325                }), b(p, "reverse", {
3326                    loop: !0,
3327                    delay: o.delay
3328                })), o.queue !== !1 && f.dequeue(p, o.queue)
3329            }
3330            b.State.calls[e] = !1;
3331            for (var m = 0, y = b.State.calls.length; y > m; m++)
3332                if (b.State.calls[m] !== !1) {
3333                    l = !0;
3334                    break
3335                } l === !1 && (b.State.isTicking = !1, delete b.State.calls, b.State.calls = [])
3336        }
3337        var f, d = function() {
3338                if (r.documentMode) return r.documentMode;
3339                for (var e = 7; e > 4; e--) {
3340                    var t = r.createElement("div");
3341                    if (t.innerHTML = "<!--[if IE " + e + "]><span></span><![endif]-->", t.getElementsByTagName("span").length) return t = null, e
3342                }
3343                return a
3344            }(),
3345            g = function() {
3346                var e = 0;
3347                return t.webkitRequestAnimationFrame || t.mozRequestAnimationFrame || function(t) {
3348                    var r, a = (new Date).getTime();
3349                    return r = Math.max(0, 16 - (a - e)), e = a + r, setTimeout(function() {
3350                        t(a + r)
3351                    }, r)
3352                }
3353            }(),
3354            m = {
3355                isString: function(e) {
3356                    return "string" == typeof e
3357                },
3358                isArray: Array.isArray || function(e) {
3359                    return "[object Array]" === Object.prototype.toString.call(e)
3360                },
3361                isFunction: function(e) {
3362                    return "[object Function]" === Object.prototype.toString.call(e)
3363                },
3364                isNode: function(e) {
3365                    return e && e.nodeType
3366                },
3367                isNodeList: function(e) {
3368                    return "object" == typeof e && /^\[object (HTMLCollection|NodeList|Object)\]$/.test(Object.prototype.toString.call(e)) && e.length !== a && (0 === e.length || "object" == typeof e[0] && e[0].nodeType > 0)
3369                },
3370                isWrapped: function(e) {
3371                    return e && (e.jquery || t.Zepto && t.Zepto.zepto.isZ(e))
3372                },
3373                isSVG: function(e) {
3374                    return t.SVGElement && e instanceof t.SVGElement
3375                },
3376                isEmptyObject: function(e) {
3377                    for (var t in e) return !1;
3378                    return !0
3379                }
3380            },
3381            y = !1;
3382        if (e.fn && e.fn.jquery ? (f = e, y = !0) : f = t.Velocity.Utilities, 8 >= d && !y) throw new Error("Velocity: IE8 and below require jQuery to be loaded before Velocity.");
3383        if (7 >= d) return void(jQuery.fn.velocity = jQuery.fn.animate);
3384        var h = 400,
3385            v = "swing",
3386            b = {
3387                State: {
3388                    isMobile: /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),
3389                    isAndroid: /Android/i.test(navigator.userAgent),
3390                    isGingerbread: /Android 2\.3\.[3-7]/i.test(navigator.userAgent),
3391                    isChrome: t.chrome,
3392                    isFirefox: /Firefox/i.test(navigator.userAgent),
3393                    prefixElement: r.createElement("div"),
3394                    prefixMatches: {},
3395                    scrollAnchor: null,
3396                    scrollPropertyLeft: null,
3397                    scrollPropertyTop: null,
3398                    isTicking: !1,
3399                    calls: []
3400                },
3401                CSS: {},
3402                Utilities: f,
3403                Redirects: {},
3404                Easings: {},
3405                Promise: t.Promise,
3406                defaults: {
3407                    queue: "",
3408                    duration: h,
3409                    easing: v,
3410                    begin: a,
3411                    complete: a,
3412                    progress: a,
3413                    display: a,
3414                    visibility: a,
3415                    loop: !1,
3416                    delay: !1,
3417                    mobileHA: !0,
3418                    _cacheValues: !0
3419                },
3420                init: function(e) {
3421                    f.data(e, "velocity", {
3422                        isSVG: m.isSVG(e),
3423                        isAnimating: !1,
3424                        computedStyle: null,
3425                        tweensContainer: null,
3426                        rootPropertyValueCache: {},
3427                        transformCache: {}
3428                    })
3429                },
3430                hook: null,
3431                mock: !1,
3432                version: {
3433                    major: 1,
3434                    minor: 2,
3435                    patch: 2
3436                },
3437                debug: !1
3438            };
3439        t.pageYOffset !== a ? (b.State.scrollAnchor = t, b.State.scrollPropertyLeft = "pageXOffset", b.State.scrollPropertyTop = "pageYOffset") : (b.State.scrollAnchor = r.documentElement || r.body.parentNode || r.body, b.State.scrollPropertyLeft = "scrollLeft", b.State.scrollPropertyTop = "scrollTop");
3440        var x = function() {
3441            function e(e) {
3442                return -e.tension * e.x - e.friction * e.v
3443            }
3444
3445            function t(t, r, a) {
3446                var n = {
3447                    x: t.x + a.dx * r,
3448                    v: t.v + a.dv * r,
3449                    tension: t.tension,
3450                    friction: t.friction
3451                };
3452                return {
3453                    dx: n.v,
3454                    dv: e(n)
3455                }
3456            }
3457
3458            function r(r, a) {
3459                var n = {
3460                        dx: r.v,
3461                        dv: e(r)
3462                    },
3463                    o = t(r, .5 * a, n),
3464                    i = t(r, .5 * a, o),
3465                    s = t(r, a, i),
3466                    l = 1 / 6 * (n.dx + 2 * (o.dx + i.dx) + s.dx),
3467                    u = 1 / 6 * (n.dv + 2 * (o.dv + i.dv) + s.dv);
3468                return r.x = r.x + l * a, r.v = r.v + u * a, r
3469            }
3470            return function a(e, t, n) {
3471                var o, i, s, l = {
3472                        x: -1,
3473                        v: 0,
3474                        tension: null,
3475                        friction: null
3476                    },
3477                    u = [0],
3478                    c = 0,
3479                    p = 1e-4,
3480                    f = .016;
3481                for (e = parseFloat(e) || 500, t = parseFloat(t) || 20, n = n || null, l.tension = e, l.friction = t, o = null !== n, o ? (c = a(e, t), i = c / n * f) : i = f; s = r(s || l, i), u.push(1 + s.x), c += 16, Math.abs(s.x) > p && Math.abs(s.v) > p;);
3482                return o ? function(e) {
3483                    return u[e * (u.length - 1) | 0]
3484                } : c
3485            }
3486        }();
3487        b.Easings = {
3488            linear: function(e) {
3489                return e
3490            },
3491            swing: function(e) {
3492                return .5 - Math.cos(e * Math.PI) / 2
3493            },
3494            spring: function(e) {
3495                return 1 - Math.cos(4.5 * e * Math.PI) * Math.exp(6 * -e)
3496            }
3497        }, f.each([
3498            ["ease", [.25, .1, .25, 1]],
3499            ["ease-in", [.42, 0, 1, 1]],
3500            ["ease-out", [0, 0, .58, 1]],
3501            ["ease-in-out", [.42, 0, .58, 1]],
3502            ["easeInSine", [.47, 0, .745, .715]],
3503            ["easeOutSine", [.39, .575, .565, 1]],
3504            ["easeInOutSine", [.445, .05, .55, .95]],
3505            ["easeInQuad", [.55, .085, .68, .53]],
3506            ["easeOutQuad", [.25, .46, .45, .94]],
3507            ["easeInOutQuad", [.455, .03, .515, .955]],
3508            ["easeInCubic", [.55, .055, .675, .19]],
3509            ["easeOutCubic", [.215, .61, .355, 1]],
3510            ["easeInOutCubic", [.645, .045, .355, 1]],
3511            ["easeInQuart", [.895, .03, .685, .22]],
3512            ["easeOutQuart", [.165, .84, .44, 1]],
3513            ["easeInOutQuart", [.77, 0, .175, 1]],
3514            ["easeInQuint", [.755, .05, .855, .06]],
3515            ["easeOutQuint", [.23, 1, .32, 1]],
3516            ["easeInOutQuint", [.86, 0, .07, 1]],
3517            ["easeInExpo", [.95, .05, .795, .035]],
3518            ["easeOutExpo", [.19, 1, .22, 1]],
3519            ["easeInOutExpo", [1, 0, 0, 1]],
3520            ["easeInCirc", [.6, .04, .98, .335]],
3521            ["easeOutCirc", [.075, .82, .165, 1]],
3522            ["easeInOutCirc", [.785, .135, .15, .86]]
3523        ], function(e, t) {
3524            b.Easings[t[0]] = l.apply(null, t[1])
3525        });
3526        var S = b.CSS = {
3527            RegEx: {
3528                isHex: /^#([A-f\d]{3}){1,2}$/i,
3529                valueUnwrap: /^[A-z]+\((.*)\)$/i,
3530                wrappedValueAlreadyExtracted: /[0-9.]+ [0-9.]+ [0-9.]+( [0-9.]+)?/,
3531                valueSplit: /([A-z]+\(.+\))|(([A-z0-9#-.]+?)(?=\s|$))/gi
3532            },
3533            Lists: {
3534                colors: ["fill", "stroke", "stopColor", "color", "backgroundColor", "borderColor", "borderTopColor", "borderRightColor", "borderBottomColor", "borderLeftColor", "outlineColor"],
3535                transformsBase: ["translateX", "translateY", "scale", "scaleX", "scaleY", "skewX", "skewY", "rotateZ"],
3536                transforms3D: ["transformPerspective", "translateZ", "scaleZ", "rotateX", "rotateY"]
3537            },
3538            Hooks: {
3539                templates: {
3540                    textShadow: ["Color X Y Blur", "black 0px 0px 0px"],
3541                    boxShadow: ["Color X Y Blur Spread", "black 0px 0px 0px 0px"],
3542                    clip: ["Top Right Bottom Left", "0px 0px 0px 0px"],
3543                    backgroundPosition: ["X Y", "0% 0%"],
3544                    transformOrigin: ["X Y Z", "50% 50% 0px"],
3545                    perspectiveOrigin: ["X Y", "50% 50%"]
3546                },
3547                registered: {},
3548                register: function() {
3549                    for (var e = 0; e < S.Lists.colors.length; e++) {
3550                        var t = "color" === S.Lists.colors[e] ? "0 0 0 1" : "255 255 255 1";
3551                        S.Hooks.templates[S.Lists.colors[e]] = ["Red Green Blue Alpha", t]
3552                    }
3553                    var r, a, n;
3554                    if (d)
3555                        for (r in S.Hooks.templates) {
3556                            a = S.Hooks.templates[r], n = a[0].split(" ");
3557                            var o = a[1].match(S.RegEx.valueSplit);
3558                            "Color" === n[0] && (n.push(n.shift()), o.push(o.shift()), S.Hooks.templates[r] = [n.join(" "), o.join(" ")])
3559                        }
3560                    for (r in S.Hooks.templates) {
3561                        a = S.Hooks.templates[r], n = a[0].split(" ");
3562                        for (var e in n) {
3563                            var i = r + n[e],
3564                                s = e;
3565                            S.Hooks.registered[i] = [r, s]
3566                        }
3567                    }
3568                },
3569                getRoot: function(e) {
3570                    var t = S.Hooks.registered[e];
3571                    return t ? t[0] : e
3572                },
3573                cleanRootPropertyValue: function(e, t) {
3574                    return S.RegEx.valueUnwrap.test(t) && (t = t.match(S.RegEx.valueUnwrap)[1]), S.Values.isCSSNullValue(t) && (t = S.Hooks.templates[e][1]), t
3575                },
3576                extractValue: function(e, t) {
3577                    var r = S.Hooks.registered[e];
3578                    if (r) {
3579                        var a = r[0],
3580                            n = r[1];
3581                        return t = S.Hooks.cleanRootPropertyValue(a, t), t.toString().match(S.RegEx.valueSplit)[n]
3582                    }
3583                    return t
3584                },
3585                injectValue: function(e, t, r) {
3586                    var a = S.Hooks.registered[e];
3587                    if (a) {
3588                        var n, o, i = a[0],
3589                            s = a[1];
3590                        return r = S.Hooks.cleanRootPropertyValue(i, r), n = r.toString().match(S.RegEx.valueSplit), n[s] = t, o = n.join(" ")
3591                    }
3592                    return r
3593                }
3594            },
3595            Normalizations: {
3596                registered: {
3597                    clip: function(e, t, r) {
3598                        switch (e) {
3599                            case "name":
3600                                return "clip";
3601                            case "extract":
3602                                var a;
3603                                return S.RegEx.wrappedValueAlreadyExtracted.test(r) ? a = r : (a = r.toString().match(S.RegEx.valueUnwrap), a = a ? a[1].replace(/,(\s+)?/g, " ") : r), a;
3604                            case "inject":
3605                                return "rect(" + r + ")"
3606                        }
3607                    },
3608                    blur: function(e, t, r) {
3609                        switch (e) {
3610                            case "name":
3611                                return b.State.isFirefox ? "filter" : "-webkit-filter";
3612                            case "extract":
3613                                var a = parseFloat(r);
3614                                if (!a && 0 !== a) {
3615                                    var n = r.toString().match(/blur\(([0-9]+[A-z]+)\)/i);
3616                                    a = n ? n[1] : 0
3617                                }
3618                                return a;
3619                            case "inject":
3620                                return parseFloat(r) ? "blur(" + r + ")" : "none"
3621                        }
3622                    },
3623                    opacity: function(e, t, r) {
3624                        if (8 >= d) switch (e) {
3625                            case "name":
3626                                return "filter";
3627                            case "extract":
3628                                var a = r.toString().match(/alpha\(opacity=(.*)\)/i);
3629                                return r = a ? a[1] / 100 : 1;
3630                            case "inject":
3631                                return t.style.zoom = 1, parseFloat(r) >= 1 ? "" : "alpha(opacity=" + parseInt(100 * parseFloat(r), 10) + ")"
3632                        } else switch (e) {
3633                            case "name":
3634                                return "opacity";
3635                            case "extract":
3636                                return r;
3637                            case "inject":
3638                                return r
3639                        }
3640                    }
3641                },
3642                register: function() {
3643                    9 >= d || b.State.isGingerbread || (S.Lists.transformsBase = S.Lists.transformsBase.concat(S.Lists.transforms3D));
3644                    for (var e = 0; e < S.Lists.transformsBase.length; e++) ! function() {
3645                        var t = S.Lists.transformsBase[e];
3646                        S.Normalizations.registered[t] = function(e, r, n) {
3647                            switch (e) {
3648                                case "name":
3649                                    return "transform";
3650                                case "extract":
3651                                    return i(r) === a || i(r).transformCache[t] === a ? /^scale/i.test(t) ? 1 : 0 : i(r).transformCache[t].replace(/[()]/g, "");
3652                                case "inject":
3653                                    var o = !1;
3654                                    switch (t.substr(0, t.length - 1)) {
3655                                        case "translate":
3656                                            o = !/(%|px|em|rem|vw|vh|\d)$/i.test(n);
3657                                            break;
3658                                        case "scal":
3659                                        case "scale":
3660                                            b.State.isAndroid && i(r).transformCache[t] === a && 1 > n && (n = 1), o = !/(\d)$/i.test(n);
3661                                            break;
3662                                        case "skew":
3663                                            o = !/(deg|\d)$/i.test(n);
3664                                            break;
3665                                        case "rotate":
3666                                            o = !/(deg|\d)$/i.test(n)
3667                                    }
3668                                    return o || (i(r).transformCache[t] = "(" + n + ")"), i(r).transformCache[t]
3669                            }
3670                        }
3671                    }();
3672                    for (var e = 0; e < S.Lists.colors.length; e++) ! function() {
3673                        var t = S.Lists.colors[e];
3674                        S.Normalizations.registered[t] = function(e, r, n) {
3675                            switch (e) {
3676                                case "name":
3677                                    return t;
3678                                case "extract":
3679                                    var o;
3680                                    if (S.RegEx.wrappedValueAlreadyExtracted.test(n)) o = n;
3681                                    else {
3682                                        var i, s = {
3683                                            black: "rgb(0, 0, 0)",
3684                                            blue: "rgb(0, 0, 255)",
3685                                            gray: "rgb(128, 128, 128)",
3686                                            green: "rgb(0, 128, 0)",
3687                                            red: "rgb(255, 0, 0)",
3688                                            white: "rgb(255, 255, 255)"
3689                                        };
3690                                        /^[A-z]+$/i.test(n) ? i = s[n] !== a ? s[n] : s.black : S.RegEx.isHex.test(n) ? i = "rgb(" + S.Values.hexToRgb(n).join(" ") + ")" : /^rgba?\(/i.test(n) || (i = s.black), o = (i || n).toString().match(S.RegEx.valueUnwrap)[1].replace(/,(\s+)?/g, " ")
3691                                    }
3692                                    return 8 >= d || 3 !== o.split(" ").length || (o += " 1"), o;
3693                                case "inject":
3694                                    return 8 >= d ? 4 === n.split(" ").length && (n = n.split(/\s+/).slice(0, 3).join(" ")) : 3 === n.split(" ").length && (n += " 1"), (8 >= d ? "rgb" : "rgba") + "(" + n.replace(/\s+/g, ",").replace(/\.(\d)+(?=,)/g, "") + ")"
3695                            }
3696                        }
3697                    }()
3698                }
3699            },
3700            Names: {
3701                camelCase: function(e) {
3702                    return e.replace(/-(\w)/g, function(e, t) {
3703                        return t.toUpperCase()
3704                    })
3705                },
3706                SVGAttribute: function(e) {
3707                    var t = "width|height|x|y|cx|cy|r|rx|ry|x1|x2|y1|y2";
3708                    return (d || b.State.isAndroid && !b.State.isChrome) && (t += "|transform"), new RegExp("^(" + t + ")$", "i").test(e)
3709                },
3710                prefixCheck: function(e) {
3711                    if (b.State.prefixMatches[e]) return [b.State.prefixMatches[e], !0];
3712                    for (var t = ["", "Webkit", "Moz", "ms", "O"], r = 0, a = t.length; a > r; r++) {
3713                        var n;
3714                        if (n = 0 === r ? e : t[r] + e.replace(/^\w/, function(e) {
3715                                return e.toUpperCase()
3716                            }), m.isString(b.State.prefixElement.style[n])) return b.State.prefixMatches[e] = n, [n, !0]
3717                    }
3718                    return [e, !1]
3719                }
3720            },
3721            Values: {
3722                hexToRgb: function(e) {
3723                    var t, r = /^#?([a-f\d])([a-f\d])([a-f\d])$/i,
3724                        a = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i;
3725                    return e = e.replace(r, function(e, t, r, a) {
3726                        return t + t + r + r + a + a
3727                    }), t = a.exec(e), t ? [parseInt(t[1], 16), parseInt(t[2], 16), parseInt(t[3], 16)] : [0, 0, 0]
3728                },
3729                isCSSNullValue: function(e) {
3730                    return 0 == e || /^(none|auto|transparent|(rgba\(0, ?0, ?0, ?0\)))$/i.test(e)
3731                },
3732                getUnitType: function(e) {
3733                    return /^(rotate|skew)/i.test(e) ? "deg" : /(^(scale|scaleX|scaleY|scaleZ|alpha|flexGrow|flexHeight|zIndex|fontWeight)$)|((opacity|red|green|blue|alpha)$)/i.test(e) ? "" : "px"
3734                },
3735                getDisplayType: function(e) {
3736                    var t = e && e.tagName.toString().toLowerCase();
3737                    return /^(b|big|i|small|tt|abbr|acronym|cite|code|dfn|em|kbd|strong|samp|var|a|bdo|br|img|map|object|q|script|span|sub|sup|button|input|label|select|textarea)$/i.test(t) ? "inline" : /^(li)$/i.test(t) ? "list-item" : /^(tr)$/i.test(t) ? "table-row" : /^(table)$/i.test(t) ? "table" : /^(tbody)$/i.test(t) ? "table-row-group" : "block"
3738                },
3739                addClass: function(e, t) {
3740                    e.classList ? e.classList.add(t) : e.className += (e.className.length ? " " : "") + t
3741                },
3742                removeClass: function(e, t) {
3743                    e.classList ? e.classList.remove(t) : e.className = e.className.toString().replace(new RegExp("(^|\\s)" + t.split(" ").join("|") + "(\\s|$)", "gi"), " ")
3744                }
3745            },
3746            getPropertyValue: function(e, r, n, o) {
3747                function s(e, r) {
3748                    function n() {
3749                        u && S.setPropertyValue(e, "display", "none")
3750                    }
3751                    var l = 0;
3752                    if (8 >= d) l = f.css(e, r);
3753                    else {
3754                        var u = !1;
3755                        if (/^(width|height)$/.test(r) && 0 === S.getPropertyValue(e, "display") && (u = !0, S.setPropertyValue(e, "display", S.Values.getDisplayType(e))), !o) {
3756                            if ("height" === r && "border-box" !== S.getPropertyValue(e, "boxSizing").toString().toLowerCase()) {
3757                                var c = e.offsetHeight - (parseFloat(S.getPropertyValue(e, "borderTopWidth")) || 0) - (parseFloat(S.getPropertyValue(e, "borderBottomWidth")) || 0) - (parseFloat(S.getPropertyValue(e, "paddingTop")) || 0) - (parseFloat(S.getPropertyValue(e, "paddingBottom")) || 0);
3758                                return n(), c
3759                            }
3760                            if ("width" === r && "border-box" !== S.getPropertyValue(e, "boxSizing").toString().toLowerCase()) {
3761                                var p = e.offsetWidth - (parseFloat(S.getPropertyValue(e, "borderLeftWidth")) || 0) - (parseFloat(S.getPropertyValue(e, "borderRightWidth")) || 0) - (parseFloat(S.getPropertyValue(e, "paddingLeft")) || 0) - (parseFloat(S.getPropertyValue(e, "paddingRight")) || 0);
3762                                return n(), p
3763                            }
3764                        }
3765                        var g;
3766                        g = i(e) === a ? t.getComputedStyle(e, null) : i(e).computedStyle ? i(e).computedStyle : i(e).computedStyle = t.getComputedStyle(e, null), "borderColor" === r && (r = "borderTopColor"), l = 9 === d && "filter" === r ? g.getPropertyValue(r) : g[r], ("" === l || null === l) && (l = e.style[r]), n()
3767                    }
3768                    if ("auto" === l && /^(top|right|bottom|left)$/i.test(r)) {
3769                        var m = s(e, "position");
3770                        ("fixed" === m || "absolute" === m && /top|left/i.test(r)) && (l = f(e).position()[r] + "px")
3771                    }
3772                    return l
3773                }
3774                var l;
3775                if (S.Hooks.registered[r]) {
3776                    var u = r,
3777                        c = S.Hooks.getRoot(u);
3778                    n === a && (n = S.getPropertyValue(e, S.Names.prefixCheck(c)[0])), S.Normalizations.registered[c] && (n = S.Normalizations.registered[c]("extract", e, n)), l = S.Hooks.extractValue(u, n)
3779                } else if (S.Normalizations.registered[r]) {
3780                    var p, g;
3781                    p = S.Normalizations.registered[r]("name", e), "transform" !== p && (g = s(e, S.Names.prefixCheck(p)[0]), S.Values.isCSSNullValue(g) && S.Hooks.templates[r] && (g = S.Hooks.templates[r][1])), l = S.Normalizations.registered[r]("extract", e, g)
3782                }
3783                if (!/^[\d-]/.test(l))
3784                    if (i(e) && i(e).isSVG && S.Names.SVGAttribute(r))
3785                        if (/^(height|width)$/i.test(r)) try {
3786                            l = e.getBBox()[r]
3787                        } catch (m) {
3788                            l = 0
3789                        } else l = e.getAttribute(r);
3790                        else l = s(e, S.Names.prefixCheck(r)[0]);
3791                return S.Values.isCSSNullValue(l) && (l = 0), b.debug >= 2 && console.log("Get " + r + ": " + l), l
3792            },
3793            setPropertyValue: function(e, r, a, n, o) {
3794                var s = r;
3795                if ("scroll" === r) o.container ? o.container["scroll" + o.direction] = a : "Left" === o.direction ? t.scrollTo(a, o.alternateValue) : t.scrollTo(o.alternateValue, a);
3796                else if (S.Normalizations.registered[r] && "transform" === S.Normalizations.registered[r]("name", e)) S.Normalizations.registered[r]("inject", e, a), s = "transform", a = i(e).transformCache[r];
3797                else {
3798                    if (S.Hooks.registered[r]) {
3799                        var l = r,
3800                            u = S.Hooks.getRoot(r);
3801                        n = n || S.getPropertyValue(e, u), a = S.Hooks.injectValue(l, a, n), r = u
3802                    }
3803                    if (S.Normalizations.registered[r] && (a = S.Normalizations.registered[r]("inject", e, a), r = S.Normalizations.registered[r]("name", e)), s = S.Names.prefixCheck(r)[0], 8 >= d) try {
3804                        e.style[s] = a
3805                    } catch (c) {
3806                        b.debug && console.log("Browser does not support [" + a + "] for [" + s + "]")
3807                    } else i(e) && i(e).isSVG && S.Names.SVGAttribute(r) ? e.setAttribute(r, a) : e.style[s] = a;
3808                    b.debug >= 2 && console.log("Set " + r + " (" + s + "): " + a)
3809                }
3810                return [s, a]
3811            },
3812            flushTransformCache: function(e) {
3813                function t(t) {
3814                    return parseFloat(S.getPropertyValue(e, t))
3815                }
3816                var r = "";
3817                if ((d || b.State.isAndroid && !b.State.isChrome) && i(e).isSVG) {
3818                    var a = {
3819                        translate: [t("translateX"), t("translateY")],
3820                        skewX: [t("skewX")],
3821                        skewY: [t("skewY")],
3822                        scale: 1 !== t("scale") ? [t("scale"), t("scale")] : [t("scaleX"), t("scaleY")],
3823                        rotate: [t("rotateZ"), 0, 0]
3824                    };
3825                    f.each(i(e).transformCache, function(e) {
3826                        /^translate/i.test(e) ? e = "translate" : /^scale/i.test(e) ? e = "scale" : /^rotate/i.test(e) && (e = "rotate"), a[e] && (r += e + "(" + a[e].join(" ") + ") ", delete a[e])
3827                    })
3828                } else {
3829                    var n, o;
3830                    f.each(i(e).transformCache, function(t) {
3831                        return n = i(e).transformCache[t], "transformPerspective" === t ? (o = n, !0) : (9 === d && "rotateZ" === t && (t = "rotate"), void(r += t + n + " "))
3832                    }), o && (r = "perspective" + o + " " + r)
3833                }
3834                S.setPropertyValue(e, "transform", r)
3835            }
3836        };
3837        S.Hooks.register(), S.Normalizations.register(), b.hook = function(e, t, r) {
3838            var n = a;
3839            return e = o(e), f.each(e, function(e, o) {
3840                if (i(o) === a && b.init(o), r === a) n === a && (n = b.CSS.getPropertyValue(o, t));
3841                else {
3842                    var s = b.CSS.setPropertyValue(o, t, r);
3843                    "transform" === s[0] && b.CSS.flushTransformCache(o), n = s
3844                }
3845            }), n
3846        };
3847        var P = function() {
3848            function e() {
3849                return s ? k.promise || null : l
3850            }
3851
3852            function n() {
3853                function e(e) {
3854                    function p(e, t) {
3855                        var r = a,
3856                            n = a,
3857                            i = a;
3858                        return m.isArray(e) ? (r = e[0], !m.isArray(e[1]) && /^[\d-]/.test(e[1]) || m.isFunction(e[1]) || S.RegEx.isHex.test(e[1]) ? i = e[1] : (m.isString(e[1]) && !S.RegEx.isHex.test(e[1]) || m.isArray(e[1])) && (n = t ? e[1] : u(e[1], s.duration), e[2] !== a && (i = e[2]))) : r = e, t || (n = n || s.easing), m.isFunction(r) && (r = r.call(o, V, w)), m.isFunction(i) && (i = i.call(o, V, w)), [r || 0, n, i]
3859                    }
3860
3861                    function d(e, t) {
3862                        var r, a;
3863                        return a = (t || "0").toString().toLowerCase().replace(/[%A-z]+$/, function(e) {
3864                            return r = e, ""
3865                        }), r || (r = S.Values.getUnitType(e)), [a, r]
3866                    }
3867
3868                    function h() {
3869                        var e = {
3870                                myParent: o.parentNode || r.body,
3871                                position: S.getPropertyValue(o, "position"),
3872                                fontSize: S.getPropertyValue(o, "fontSize")
3873                            },
3874                            a = e.position === L.lastPosition && e.myParent === L.lastParent,
3875                            n = e.fontSize === L.lastFontSize;
3876                        L.lastParent = e.myParent, L.lastPosition = e.position, L.lastFontSize = e.fontSize;
3877                        var s = 100,
3878                            l = {};
3879                        if (n && a) l.emToPx = L.lastEmToPx, l.percentToPxWidth = L.lastPercentToPxWidth, l.percentToPxHeight = L.lastPercentToPxHeight;
3880                        else {
3881                            var u = i(o).isSVG ? r.createElementNS("http://www.w3.org/2000/svg", "rect") : r.createElement("div");
3882                            b.init(u), e.myParent.appendChild(u), f.each(["overflow", "overflowX", "overflowY"], function(e, t) {
3883                                b.CSS.setPropertyValue(u, t, "hidden")
3884                            }), b.CSS.setPropertyValue(u, "position", e.position), b.CSS.setPropertyValue(u, "fontSize", e.fontSize), b.CSS.setPropertyValue(u, "boxSizing", "content-box"), f.each(["minWidth", "maxWidth", "width", "minHeight", "maxHeight", "height"], function(e, t) {
3885                                b.CSS.setPropertyValue(u, t, s + "%")
3886                            }), b.CSS.setPropertyValue(u, "paddingLeft", s + "em"), l.percentToPxWidth = L.lastPercentToPxWidth = (parseFloat(S.getPropertyValue(u, "width", null, !0)) || 1) / s, l.percentToPxHeight = L.lastPercentToPxHeight = (parseFloat(S.getPropertyValue(u, "height", null, !0)) || 1) / s, l.emToPx = L.lastEmToPx = (parseFloat(S.getPropertyValue(u, "paddingLeft")) || 1) / s, e.myParent.removeChild(u)
3887                        }
3888                        return null === L.remToPx && (L.remToPx = parseFloat(S.getPropertyValue(r.body, "fontSize")) || 16), null === L.vwToPx && (L.vwToPx = parseFloat(t.innerWidth) / 100, L.vhToPx = parseFloat(t.innerHeight) / 100), l.remToPx = L.remToPx, l.vwToPx = L.vwToPx, l.vhToPx = L.vhToPx, b.debug >= 1 && console.log("Unit ratios: " + JSON.stringify(l), o), l
3889                    }
3890                    if (s.begin && 0 === V) try {
3891                        s.begin.call(g, g)
3892                    } catch (x) {
3893                        setTimeout(function() {
3894                            throw x
3895                        }, 1)
3896                    }
3897                    if ("scroll" === A) {
3898                        var P, C, T, F = /^x$/i.test(s.axis) ? "Left" : "Top",
3899                            j = parseFloat(s.offset) || 0;
3900                        s.container ? m.isWrapped(s.container) || m.isNode(s.container) ? (s.container = s.container[0] || s.container, P = s.container["scroll" + F], T = P + f(o).position()[F.toLowerCase()] + j) : s.container = null : (P = b.State.scrollAnchor[b.State["scrollProperty" + F]], C = b.State.scrollAnchor[b.State["scrollProperty" + ("Left" === F ? "Top" : "Left")]], T = f(o).offset()[F.toLowerCase()] + j), l = {
3901                            scroll: {
3902                                rootPropertyValue: !1,
3903                                startValue: P,
3904                                currentValue: P,
3905                                endValue: T,
3906                                unitType: "",
3907                                easing: s.easing,
3908                                scrollData: {
3909                                    container: s.container,
3910                                    direction: F,
3911                                    alternateValue: C
3912                                }
3913                            },
3914                            element: o
3915                        }, b.debug && console.log("tweensContainer (scroll): ", l.scroll, o)
3916                    } else if ("reverse" === A) {
3917                        if (!i(o).tweensContainer) return void f.dequeue(o, s.queue);
3918                        "none" === i(o).opts.display && (i(o).opts.display = "auto"), "hidden" === i(o).opts.visibility && (i(o).opts.visibility = "visible"), i(o).opts.loop = !1, i(o).opts.begin = null, i(o).opts.complete = null, v.easing || delete s.easing, v.duration || delete s.duration, s = f.extend({}, i(o).opts, s);
3919                        var E = f.extend(!0, {}, i(o).tweensContainer);
3920                        for (var H in E)
3921                            if ("element" !== H) {
3922                                var N = E[H].startValue;
3923                                E[H].startValue = E[H].currentValue = E[H].endValue, E[H].endValue = N, m.isEmptyObject(v) || (E[H].easing = s.easing), b.debug && console.log("reverse tweensContainer (" + H + "): " + JSON.stringify(E[H]), o)
3924                            } l = E
3925                    } else if ("start" === A) {
3926                        var E;
3927                        i(o).tweensContainer && i(o).isAnimating === !0 && (E = i(o).tweensContainer), f.each(y, function(e, t) {
3928                            if (RegExp("^" + S.Lists.colors.join("$|^") + "$").test(e)) {
3929                                var r = p(t, !0),
3930                                    n = r[0],
3931                                    o = r[1],
3932                                    i = r[2];
3933                                if (S.RegEx.isHex.test(n)) {
3934                                    for (var s = ["Red", "Green", "Blue"], l = S.Values.hexToRgb(n), u = i ? S.Values.hexToRgb(i) : a, c = 0; c < s.length; c++) {
3935                                        var f = [l[c]];
3936                                        o && f.push(o), u !== a && f.push(u[c]), y[e + s[c]] = f
3937                                    }
3938                                    delete y[e]
3939                                }
3940                            }
3941                        });
3942                        for (var z in y) {
3943                            var O = p(y[z]),
3944                                q = O[0],
3945                                $ = O[1],
3946                                M = O[2];
3947                            z = S.Names.camelCase(z);
3948                            var I = S.Hooks.getRoot(z),
3949                                B = !1;
3950                            if (i(o).isSVG || "tween" === I || S.Names.prefixCheck(I)[1] !== !1 || S.Normalizations.registered[I] !== a) {
3951                                (s.display !== a && null !== s.display && "none" !== s.display || s.visibility !== a && "hidden" !== s.visibility) && /opacity|filter/.test(z) && !M && 0 !== q && (M = 0), s._cacheValues && E && E[z] ? (M === a && (M = E[z].endValue + E[z].unitType), B = i(o).rootPropertyValueCache[I]) : S.Hooks.registered[z] ? M === a ? (B = S.getPropertyValue(o, I), M = S.getPropertyValue(o, z, B)) : B = S.Hooks.templates[I][1] : M === a && (M = S.getPropertyValue(o, z));
3952                                var W, G, Y, D = !1;
3953                                if (W = d(z, M), M = W[0], Y = W[1], W = d(z, q), q = W[0].replace(/^([+-\/*])=/, function(e, t) {
3954                                        return D = t, ""
3955                                    }), G = W[1], M = parseFloat(M) || 0, q = parseFloat(q) || 0, "%" === G && (/^(fontSize|lineHeight)$/.test(z) ? (q /= 100, G = "em") : /^scale/.test(z) ? (q /= 100, G = "") : /(Red|Green|Blue)$/i.test(z) && (q = q / 100 * 255, G = "")), /[\/*]/.test(D)) G = Y;
3956                                else if (Y !== G && 0 !== M)
3957                                    if (0 === q) G = Y;
3958                                    else {
3959                                        n = n || h();
3960                                        var Q = /margin|padding|left|right|width|text|word|letter/i.test(z) || /X$/.test(z) || "x" === z ? "x" : "y";
3961                                        switch (Y) {
3962                                            case "%":
3963                                                M *= "x" === Q ? n.percentToPxWidth : n.percentToPxHeight;
3964                                                break;
3965                                            case "px":
3966                                                break;
3967                                            default:
3968                                                M *= n[Y + "ToPx"]
3969                                        }
3970                                        switch (G) {
3971                                            case "%":
3972                                                M *= 1 / ("x" === Q ? n.percentToPxWidth : n.percentToPxHeight);
3973                                                break;
3974                                            case "px":
3975                                                break;
3976                                            default:
3977                                                M *= 1 / n[G + "ToPx"]
3978                                        }
3979                                    } switch (D) {
3980                                    case "+":
3981                                        q = M + q;
3982                                        break;
3983                                    case "-":
3984                                        q = M - q;
3985                                        break;
3986                                    case "*":
3987                                        q = M * q;
3988                                        break;
3989                                    case "/":
3990                                        q = M / q
3991                                }
3992                                l[z] = {
3993                                    rootPropertyValue: B,
3994                                    startValue: M,
3995                                    currentValue: M,
3996                                    endValue: q,
3997                                    unitType: G,
3998                                    easing: $
3999                                }, b.debug && console.log("tweensContainer (" + z + "): " + JSON.stringify(l[z]), o)
4000                            } else b.debug && console.log("Skipping [" + I + "] due to a lack of browser support.")
4001                        }
4002                        l.element = o
4003                    }
4004                    l.element && (S.Values.addClass(o, "velocity-animating"), R.push(l), "" === s.queue && (i(o).tweensContainer = l, i(o).opts = s), i(o).isAnimating = !0, V === w - 1 ? (b.State.calls.push([R, g, s, null, k.resolver]), b.State.isTicking === !1 && (b.State.isTicking = !0, c())) : V++)
4005                }
4006                var n, o = this,
4007                    s = f.extend({}, b.defaults, v),
4008                    l = {};
4009                switch (i(o) === a && b.init(o), parseFloat(s.delay) && s.queue !== !1 && f.queue(o, s.queue, function(e) {
4010                        b.velocityQueueEntryFlag = !0, i(o).delayTimer = {
4011                            setTimeout: setTimeout(e, parseFloat(s.delay)),
4012                            next: e
4013                        }
4014                    }), s.duration.toString().toLowerCase()) {
4015                    case "fast":
4016                        s.duration = 200;
4017                        break;
4018                    case "normal":
4019                        s.duration = h;
4020                        break;
4021                    case "slow":
4022                        s.duration = 600;
4023                        break;
4024                    default:
4025                        s.duration = parseFloat(s.duration) || 1
4026                }
4027                b.mock !== !1 && (b.mock === !0 ? s.duration = s.delay = 1 : (s.duration *= parseFloat(b.mock) || 1, s.delay *= parseFloat(b.mock) || 1)), s.easing = u(s.easing, s.duration), s.begin && !m.isFunction(s.begin) && (s.begin = null), s.progress && !m.isFunction(s.progress) && (s.progress = null), s.complete && !m.isFunction(s.complete) && (s.complete = null), s.display !== a && null !== s.display && (s.display = s.display.toString().toLowerCase(), "auto" === s.display && (s.display = b.CSS.Values.getDisplayType(o))), s.visibility !== a && null !== s.visibility && (s.visibility = s.visibility.toString().toLowerCase()), s.mobileHA = s.mobileHA && b.State.isMobile && !b.State.isGingerbread, s.queue === !1 ? s.delay ? setTimeout(e, s.delay) : e() : f.queue(o, s.queue, function(t, r) {
4028                    return r === !0 ? (k.promise && k.resolver(g), !0) : (b.velocityQueueEntryFlag = !0, void e(t))
4029                }), "" !== s.queue && "fx" !== s.queue || "inprogress" === f.queue(o)[0] || f.dequeue(o)
4030            }
4031            var s, l, d, g, y, v, x = arguments[0] && (arguments[0].p || f.isPlainObject(arguments[0].properties) && !arguments[0].properties.names || m.isString(arguments[0].properties));
4032            if (m.isWrapped(this) ? (s = !1, d = 0, g = this, l = this) : (s = !0, d = 1, g = x ? arguments[0].elements || arguments[0].e : arguments[0]), g = o(g)) {
4033                x ? (y = arguments[0].properties || arguments[0].p, v = arguments[0].options || arguments[0].o) : (y = arguments[d], v = arguments[d + 1]);
4034                var w = g.length,
4035                    V = 0;
4036                if (!/^(stop|finish)$/i.test(y) && !f.isPlainObject(v)) {
4037                    var C = d + 1;
4038                    v = {};
4039                    for (var T = C; T < arguments.length; T++) m.isArray(arguments[T]) || !/^(fast|normal|slow)$/i.test(arguments[T]) && !/^\d/.test(arguments[T]) ? m.isString(arguments[T]) || m.isArray(arguments[T]) ? v.easing = arguments[T] : m.isFunction(arguments[T]) && (v.complete = arguments[T]) : v.duration = arguments[T]
4040                }
4041                var k = {
4042                    promise: null,
4043                    resolver: null,
4044                    rejecter: null
4045                };
4046                s && b.Promise && (k.promise = new b.Promise(function(e, t) {
4047                    k.resolver = e, k.rejecter = t
4048                }));
4049                var A;
4050                switch (y) {
4051                    case "scroll":
4052                        A = "scroll";
4053                        break;
4054                    case "reverse":
4055                        A = "reverse";
4056                        break;
4057                    case "finish":
4058                    case "stop":
4059                        f.each(g, function(e, t) {
4060                            i(t) && i(t).delayTimer && (clearTimeout(i(t).delayTimer.setTimeout), i(t).delayTimer.next && i(t).delayTimer.next(), delete i(t).delayTimer)
4061                        });
4062                        var F = [];
4063                        return f.each(b.State.calls, function(e, t) {
4064                            t && f.each(t[1], function(r, n) {
4065                                var o = v === a ? "" : v;
4066                                return o === !0 || t[2].queue === o || v === a && t[2].queue === !1 ? void f.each(g, function(r, a) {
4067                                    a === n && ((v === !0 || m.isString(v)) && (f.each(f.queue(a, m.isString(v) ? v : ""), function(e, t) {
4068                                        m.isFunction(t) && t(null, !0)
4069                                    }), f.queue(a, m.isString(v) ? v : "", [])), "stop" === y ? (i(a) && i(a).tweensContainer && o !== !1 && f.each(i(a).tweensContainer, function(e, t) {
4070                                        t.endValue = t.currentValue
4071                                    }), F.push(e)) : "finish" === y && (t[2].duration = 1))
4072                                }) : !0
4073                            })
4074                        }), "stop" === y && (f.each(F, function(e, t) {
4075                            p(t, !0)
4076                        }), k.promise && k.resolver(g)), e();
4077                    default:
4078                        if (!f.isPlainObject(y) || m.isEmptyObject(y)) {
4079                            if (m.isString(y) && b.Redirects[y]) {
4080                                var j = f.extend({}, v),
4081                                    E = j.duration,
4082                                    H = j.delay || 0;
4083                                return j.backwards === !0 && (g = f.extend(!0, [], g).reverse()), f.each(g, function(e, t) {
4084                                    parseFloat(j.stagger) ? j.delay 
4084= H + parseFloat(j.stagger) * e : m.isFunction(j.stagger) && (j.delay = H + j.stagger.call(t, e, w)), j.drag && (j.duration = parseFloat(E) || (/^(callout|transition)/.test(y) ? 1e3 : h), j.duration = Math.max(j.duration * (j.backwards ? 1 - e / w : (e + 1) / w), .75 * j.duration, 200)), b.Redirects[y].call(t, t, j || {}, e, w, g, k.promise ? k : a)
4085                                }), e()
4086                            }
4087                            var N = "Velocity: First argument (" + y + ") was not a property map, a known action, or a registered redirect. Aborting.";
4088                            return k.promise ? k.rejecter(new Error(N)) : console.log(N), e()
4089                        }
4090                        A = "start"
4091                }
4092                var L = {
4093                        lastParent: null,
4094                        lastPosition: null,
4095                        lastFontSize: null,
4096                        lastPercentToPxWidth: null,
4097                        lastPercentToPxHeight: null,
4098                        lastEmToPx: null,
4099                        remToPx: null,
4100                        vwToPx: null,
4101                        vhToPx: null
4102                    },
4103                    R = [];
4104                f.each(g, function(e, t) {
4105                    m.isNode(t) && n.call(t)
4106                });
4107                var z, j = f.extend({}, b.defaults, v);
4108                if (j.loop = parseInt(j.loop), z = 2 * j.loop - 1, j.loop)
4109                    for (var O = 0; z > O; O++) {
4110                        var q = {
4111                            delay: j.delay,
4112                            progress: j.progress
4113                        };
4114                        O === z - 1 && (q.display = j.display, q.visibility = j.visibility, q.complete = j.complete), P(g, "reverse", q)
4115                    }
4116                return e()
4117            }
4118        };
4119        b = f.extend(P, b), b.animate = P;
4120        var w = t.requestAnimationFrame || g;
4121        return b.State.isMobile || r.hidden === a || r.addEventListener("visibilitychange", function() {
4122            r.hidden ? (w = function(e) {
4123                return setTimeout(function() {
4124                    e(!0)
4125                }, 16)
4126            }, c()) : w = t.requestAnimationFrame || g
4127        }), e.Velocity = b, e !== t && (e.fn.velocity = P, e.fn.velocity.defaults = b.defaults), f.each(["Down", "Up"], function(e, t) {
4128            b.Redirects["slide" + t] = function(e, r, n, o, i, s) {
4129                var l = f.extend({}, r),
4130                    u = l.begin,
4131                    c = l.complete,
4132                    p = {
4133                        height: "",
4134                        marginTop: "",
4135                        marginBottom: "",
4136                        paddingTop: "",
4137                        paddingBottom: ""
4138                    },
4139                    d = {};
4140                l.display === a && (l.display = "Down" === t ? "inline" === b.CSS.Values.getDisplayType(e) ? "inline-block" : "block" : "none"), l.begin = function() {
4141                    u && u.call(i, i);
4142                    for (var r in p) {
4143                        d[r] = e.style[r];
4144                        var a = b.CSS.getPropertyValue(e, r);
4145                        p[r] = "Down" === t ? [a, 0] : [0, a]
4146                    }
4147                    d.overflow = e.style.overflow, e.style.overflow = "hidden"
4148                }, l.complete = function() {
4149                    for (var t in d) e.style[t] = d[t];
4150                    c && c.call(i, i), s && s.resolver(i)
4151                }, b(e, p, l)
4152            }
4153        }), f.each(["In", "Out"], function(e, t) {
4154            b.Redirects["fade" + t] = function(e, r, n, o, i, s) {
4155                var l = f.extend({}, r),
4156                    u = {
4157                        opacity: "In" === t ? 1 : 0
4158                    },
4159                    c = l.complete;
4160                l.complete = n !== o - 1 ? l.begin = null : function() {
4161                    c && c.call(i, i), s && s.resolver(i)
4162                }, l.display === a && (l.display = "In" === t ? "auto" : "none"), b(this, u, l)
4163            }
4164        }), b
4165    }(window.jQuery || window.Zepto || window, window, document)
4166}));
4167
4168! function(t) {
4169    var e = {
4170        init: function(e) {
4171            var i = {
4172                onShow: null
4173            };
4174            return e = t.extend(i, e), this.each(function() {
4175                var i, n, s = t(this),
4176                    r = (t(window).width(), s.find("li.tab a")),
4177                    a = s.width(),
4178                    o = Math.max(a, s[0].scrollWidth) / r.length,
4179                    l = 0,
4180                    u = function(t) {
4181                        return a - t.position().left - t.outerWidth() - s.scrollLeft()
4182                    },
4183                    h = function(t) {
4184                        return t.position().left + s.scrollLeft()
4185                    };
4186                i = t(r.filter('[href="' + location.hash + '"]')), 0 === i.length && (i = t(this).find("li.tab a.active").first()), 0 === i.length && (i = t(this).find("li.tab a").first()), i.addClass("active"), l = r.index(i), 0 > l && (l = 0), void 0 !== i[0] && (n = t(i[0].hash)), s.append('<div class="indicator"></div>');
4187                var d = s.find(".indicator");
4188                s.is(":visible") && setTimeout(function() {
4189                    d.css({
4190                        right: u(i)
4191                    }), d.css({
4192                        left: h(i)
4193                    })
4194                }, 0), t(window).resize(function() {
4195                    a = s.width(), o = Math.max(a, s[0].scrollWidth) / r.length, 0 > l && (l = 0), 0 !== o && 0 !== a && (d.css({
4196                        right: u(i)
4197                    }), d.css({
4198                        left: h(i)
4199                    }))
4200                }), r.not(i).each(function() {
4201                    t(this.hash).hide()
4202                }), s.on("click", "a", function(c) {
4203                    if (t(this).parent().hasClass("disabled")) return void c.preventDefault();
4204                    if (!t(this).attr("target")) {
4205                        a = s.width(), o = Math.max(a, s[0].scrollWidth) / r.length, i.removeClass("active"), void 0 !== n && n.hide(), i = t(this), n = t(this.hash), r = s.find("li.tab a");
4206                        i.position();
4207                        i.addClass("active");
4208                        var f = l;
4209                        l = r.index(t(this)), 0 > l && (l = 0), void 0 !== n && (n.show(), "function" == typeof e.onShow && e.onShow.call(this, n)), l - f >= 0 ? (d.velocity({
4210                            right: u(i)
4211                        }, {
4212                            duration: 300,
4213                            queue: !1,
4214                            easing: "easeOutQuad"
4215                        }), d.velocity({
4216                            left: h(i)
4217                        }, {
4218                            duration: 300,
4219                            queue: !1,
4220                            easing: "easeOutQuad",
4221                            delay: 90
4222                        })) : (d.velocity({
4223                            left: h(i)
4224                        }, {
4225                            duration: 300,
4226                            queue: !1,
4227                            easing: "easeOutQuad"
4228                        }), d.velocity({
4229                            right: u(i)
4230                        }, {
4231                            duration: 300,
4232                            queue: !1,
4233                            easing: "easeOutQuad",
4234                            delay: 90
4235                        })), c.preventDefault()
4236                    }
4237                })
4238            })
4239        },
4240        select_tab: function(t) {
4241            this.find('a[href="#' + t + '"]').trigger("click")
4242        }
4243    };
4244    t.fn.tabs = function(i) {
4245        return e[i] ? e[i].apply(this, Array.prototype.slice.call(arguments, 1)) : "object" != typeof i && i ? void t.error("Method " + i + " does not exist on jQuery.tabs") : e.init.apply(this, arguments)
4246    }, t(document).ready(function() {
4247        t("ul.tabs").tabs()
4248    })
4249}(jQuery);
4250! function(t) {
4251    t(document).ready(function() {
4252        var e = t("body"),
4253            i = !1,
4254            n = 0;
4255        e.position();
4256        t(window).scroll(function() {
4257            var e = t(window).scrollTop(),
4258                s = t(".sticky").offset().top,
4259                r = t(".site-footer").offset().top,
4260                a = s - e,
4261                o = r - e;
4262            i ? a = n - e : n = s, 30 >= a && o >= 330 ? (i = !0, t(".sidebar").addClass("fixed")) : (i = !1, t(".sidebar").removeClass("fixed"))
4263        })
4264    })
4265}(jQuery);
4266! function(t) {
4267    t(document).ready(function() {
4268        function e(e) {
4269            var i = e.css("font-family"),
4270                n = e.css("font-size");
4271            n && s.css("font-size", n), i && s.css("font-family", i), "off" === e.attr("wrap") && s.css("overflow-wrap", "normal").css("white-space", "pre"), s.text(e.val() + "\n");
4272            var r = s.html().replace(/\n/g, "<br>");
4273            s.html(r), e.is(":visible") ? s.css("width", e.width()) : s.css("width", t(window).width() / 2), e.css("height", s.height())
4274        }
4275        Materialize.updateTextFields = function() {
4276            var e = "input[type=text], input[type=password], input[type=email], input[type=url], input[type=tel], input[type=number], input[type=search], textarea";
4277            t(e).each(function(e, i) {
4278                t(i).val().length > 0 || i.autofocus || void 0 !== t(this).attr("placeholder") || t(i)[0].validity.badInput === !0 ? t(this).siblings("label, i").addClass("active") : t(this).siblings("label, i").removeClass("active")
4279            })
4280        };
4281        var i = "input[type=text], input[type=password], input[type=email], input[type=url], input[type=tel], input[type=number], input[type=search], textarea";
4282        t(document).on("change", i, function() {
4283            (0 !== t(this).val().length || void 0 !== t(this).attr("placeholder")) && t(this).siblings("label").addClass("active"), validate_field(t(this))
4284        }), t(document).ready(function() {
4285            Materialize.updateTextFields()
4286        }), t(document).on("reset", function(e) {
4287            var n = t(e.target);
4288            n.is("form") && (n.find(i).removeClass("valid").removeClass("invalid"), n.find(i).each(function() {
4289                "" === t(this).attr("value") && t(this).siblings("label, i").removeClass("active")
4290            }), n.find("select.initialized").each(function() {
4291                var t = n.find("option[selected]").text();
4292                n.siblings("input.select-dropdown").val(t)
4293            }))
4294        }), t(document).on("focus", i, function() {
4295            t(this).siblings("label, i").addClass("active")
4296        }), t(document).on("blur", i, function() {
4297            var e = t(this);
4298            0 === e.val().length && e[0].validity.badInput !== !0 && void 0 === e.attr("placeholder") && e.siblings("label, i").removeClass("active"), 0 === e.val().length && e[0].validity.badInput !== !0 && void 0 !== e.attr("placeholder") && e.siblings("i").removeClass("active"), validate_field(e)
4299        }), window.validate_field = function(t) {
4300            var e = void 0 !== t.attr("length"),
4301                i = parseInt(t.attr("length")),
4302                n = t.val().length;
4303            0 === t.val().length && t[0].validity.badInput === !1 ? t.hasClass("val
4303idate") && (t.removeClass("valid"), t.removeClass("invalid")) : t.hasClass("validate") && (t.is(":valid") && e && i >= n || t.is(":valid") && !e ? (t.removeClass("invalid"), t.addClass("valid")) : (t.removeClass("valid"), t.addClass("invalid")))
4304        };
4305        var n = "input[type=radio], input[type=checkbox]";
4306        t(document).on("keyup.radio", n, function(e) {
4307            if (9 === e.which) {
4308                t(this).addClass("tabbed");
4309                var i = t(this);
4310                return void i.one("blur", function() {
4311                    t(this).removeClass("tabbed")
4312                })
4313            }
4314        });
4315        var s = t(".hiddendiv").first();
4316        s.length || (s = t('<div class="hiddendiv common"></div>'), t("body").append(s));
4317        var r = ".materialize-textarea";
4318        t(r).each(function() {
4319            var i = t(this);
4320            i.val().length && e(i)
4321        }), t("body").on("keyup keydown autoresize", r, function() {
4322            e(t(this))
4323        }), t(document).on("change", '.file-field input[type="file"]', function() {
4324            for (var e = t(this).closest(".file-field"), i = e.find("input.file-path"), n = t(this)[0].files, s = [], r = 0; r < n.length; r++) s.push(n[r].name);
4325            i.val(s.join(", ")), i.trigger("change")
4326        });
4327        var a, o = "input[type=range]",
4328            l = !1;
4329        t(o).each(function() {
4330            var e = t('<span class="thumb"><span class="value"></span></span>');
4331            t(this).after(e)
4332        });
4333        var u = ".range-field";
4334        t(document).on("change", o, function() {
4335            var e = t(this).siblings(".thumb");
4336            e.find(".value").html(t(this).val())
4337        }), t(document).on("input mousedown touchstart", o, function(e) {
4338            var i = t(this).siblings(".thumb"),
4339                n = t(this).outerWidth();
4340            i.length <= 0 && (i = t('<span class="thumb"><span class="value"></span></span>'), t(this).after(i)), i.find(".value").html(t(this).val()), l = !0, t(this).addClass("active"), i.hasClass("active") || i.velocity({
4341                height: "30px",
4342                width: "30px",
4343                top: "-20px",
4344                marginLeft: "-15px"
4345            }, {
4346                duration: 300,
4347                easing: "easeOutExpo"
4348            }), "input" !== e.type && (a = void 0 === e.pageX || null === e.pageX ? e.originalEvent.touches[0].pageX - t(this).offset().left : e.pageX - t(this).offset().left, 0 > a ? a = 0 : a > n && (a = n), i.addClass("active").css("left", a)), i.find(".value").html(t(this).val())
4349        }), t(document).on("mouseup touchend", u, function() {
4350            l = !1, t(this).removeClass("active")
4351        }), t(document).on("mousemove touchmove", u, function(e) {
4352            var i, n = t(this).children(".thumb");
4353            if (l) {
4354                n.hasClass("active") || n.velocity({
4355                    height: "30px",
4356                    width: "30px",
4357                    top: "-20px",
4358                    marginLeft: "-15px"
4359                }, {
4360                    duration: 300,
4361                    easing: "easeOutExpo"
4362                }), i = void 0 === e.pageX || null === e.pageX ? e.originalEvent.touches[0].pageX - t(this).offset().left : e.pageX - t(this).offset().left;
4363                var s = t(this).outerWidth();
4364                0 > i ? i = 0 : i > s && (i = s), n.addClass("active").css("left", i), n.find(".value").html(n.siblings(o).val())
4365            }
4366        }), t(document).on("mouseout touchleave", u, function() {
4367            if (!l) {
4368                var e = t(this).children(".thumb");
4369                e.hasClass("active") && e.velocity({
4370                    height: "0",
4371                    width: "0",
4372                    top: "10px",
4373                    marginLeft: "-6px"
4374                }, {
4375                    duration: 100
4376                }), e.removeClass("active")
4377            }
4378        })
4379    }), t.fn.material_select = function(e) {
4380        function i(t, e, i) {
4381            var s = t.indexOf(e),
4382                r = -1 === s;
4383            return r ? t.push(e) : t.splice(s, 1), i.siblings("ul.dropdown-content").find("li").eq(e).toggleClass("active"), i.find("option").eq(e).prop("selected", r), n(t, i), r
4384        }
4385
4386        function n(t, e) {
4387            for (var i = "", n = 0, s = t.length; s > n; n++) {
4388                var r = e.find("option").eq(t[n]).text();
4389                i += 0 === n ? r : ", " + r
4390            }
4391            "" === i && (i = e.find("option:disabled").eq(0).text()), e.siblings("input.select-dropdown").val(i)
4392        }
4393        t(this).each(function() {
4394            var n = t(this);
4395            if (!n.hasClass("browser-default")) {
4396                var s = n.attr("multiple") ? !0 : !1,
4397                    r = n.data("select-id");
4398                if (r && (n.parent().find("span.caret").remove(), n.parent().find("input").remove(), n.unwrap(), t("ul#select-options-" + r).remove()), "destroy" === e) return void n.data("select-id", null).removeClass("initialized");
4399                var a = Materialize.guid();
4400                n.data("select-id", a);
4401                var o = t('<div class="select-wrapper"></div>');
4402                o.addClass(n.attr("class"));
4403                var l = t('<ul id="select-options-' + a + '" class="dropdown-content select-dropdown ' + (s ? "multiple-select-dropdown" : "") + '"></ul>'),
4404                    u = n.children("option, optgroup"),
4405                    h = [],
4406                    d = !1,
4407                    c = n.find("option:selected").html() || n.find("option:first").html() || "",
4408                    f = function(e, i, n) {
4409                        var s = i.is(":disabled") ? "disabled " : "",
4410                            r = "optgroup-option" === n ? "optgroup-option " : "",
4411                            a = i.data("icon"),
4412                            o = i.attr("class");
4413                        if (a) {
4414                            var u = "";
4415                            return o && (u = ' class="' + o + '"'), "multiple" === n ? l.append(t('<li class="' + s + '"><img src="' + a + '"' + u + '><span><input type="checkbox"' + s + "/><label></label>" + i.html() + "</span></li>")) : l.append(t('<li class="' + s + r + '"><img src="' + a + '"' + u + "><span>" + i.html() + "</span></li>")), !0
4416                        }
4417                        "multiple" === n ? l.append(t('<li class="' + s + '"><span><input type="checkbox"' + s + "/><label></label>" + i.html() + "</span></li>")) : l.append(t('<li class="' + s + r + '"><span>' + i.html() + "</span></li>"))
4418                    };
4419                u.length && u.each(function() {
4420                    if (t(this).is("option")) s ? f(n, t(this), "multiple") : f(n, t(this));
4421                    else if (t(this).is("optgroup")) {
4422                        var e = t(this).children("option");
4423                        l.append(t('<li class="optgroup"><span>' + t(this).attr("label") + "</span></li>")), e.each(function() {
4424                            f(n, t(this), "optgroup-option")
4425                        })
4426                    }
4427                }), l.find("li:not(.optgroup)").each(function(r) {
4428                    t(this).click(function(a) {
4429                        if (!t(this).hasClass("disabled") && !t(this).hasClass("optgroup")) {
4430                            var o = !0;
4431                            s ? (t('input[type="checkbox"]', this).prop("checked", function(t, e) {
4432                                return !e
4433                            }), o = i(h, t(this).index(), n), _.trigger("focus")) : (l.find("li").removeClass("active"), t(this).toggleClass("active"), _.val(t(this).text())), g(l, t(this)), n.find("option").eq(r).prop("selected", o), n.trigger("change"), "undefined" != typeof e && e()
4434                        }
4435                        a.stopPropagation()
4436                    })
4437                }), n.wrap(o);
4438                var p = t('<span class="caret">&#9660;</span>');
4439                n.is(":disabled") && p.addClass("disabled");
4440                var m = c.replace(/"/g, "&quot;"),
4441                    _ = t('<input type="text" class="select-dropdown" readonly="true" ' + (n.is(":disabled") ? "disabled" : "") + ' data-activates="select-options-' + a + '" value="' + m + '"/>');
4442                n.before(_), _.before(p), _.after(l), n.is(":disabled") || _.dropdown({
4443                    hover: !1,
4444                    closeOnClick: !1
4445                }), n.attr("tabindex") && t(_[0]).attr("tabindex", n.attr("tabindex")), n.addClass("initialized"), _.on({
4446                    focus: function() {
4447                        if (t("ul.select-dropdown").not(l[0]).is(":visible") && t("input.select-dropdown").trigger("close"), !l.is(":visible")) {
4448                            t(this).trigger("open", ["focus"]);
4449                            var e = t(this).val(),
4450                                i = l.find("li").filter(function() {
4451                                    return t(this).text().toLowerCase() === e.toLowerCase()
4452                                })[0];
4453                            g(l, i)
4454                        }
4455                    },
4456                    click: function(t) {
4457                        t.stopPropagation()
4458                    }
4459                }), _.on("blur", function() {
4460                    s || t(this).trigger("close"), l.find("li.selected").removeClass("selected")
4461                }), l.hover(function() {
4462                    d = !0
4463                }, function() {
4464                    d = !1
4465                }), t(window).on({
4466                    click: function() {
4467                        s && (d || _.trigger("close"))
4468                    }
4469                }), s && n.find("option:selected:not(:disabled)").each(function() {
4470                    var e = t(this).index();
4471                    i(h, e, n), l.find("li").eq(e).find(":checkbox").prop("checked", !0)
4472                });
4473                var g = function(e, i) {
4474                        if (i) {
4475                            e.find("li.selected").removeClass("selected");
4476                            var n = t(i);
4477                            n.addClass("selected"), l.scrollTo(n)
4478                        }
4479                    },
4480                    v = [],
4481                    y = function(e) {
4482                        if (9 == e.which) return void _.trigger("close");
4483                        if (40 == e.which && !l.is(":visible")) return void _.trigger("open");
4484                        if (13 != e.which || l.is(":visible")) {
4485                            e.preventDefault();
4486                            var i = String.fromCharCode(e.which).toLowerCase(),
4487                                n = [9, 13, 27, 38, 40];
4488                            if (i && -1 === n.indexOf(e.which)) {
4489                                v.push(i);
4490                                var r = v.join(""),
4491                                    a = l.find("li").filter(function() {
4492                                        return 0 === t(this).text().toLowerCase().indexOf(r)
4493                                    })[0];
4494                                a && g(l, a)
4495                            }
4496                            if (13 == e.which) {
4497                                var o = l.find("li.selected:not(.disabled)")[0];
4498                                o && (t(o).trigger("click"), s || _.trigger("close"))
4499                            }
4500                            40 == e.which && (a = l.find("li.selected").length ? l.find("li.selected").next("li:not(.disabled)")[0] : l.find("li:not(.disabled)")[0], g(l, a)), 27 == e.which && _.trigger("close"), 38 == e.which && (a = l.find("li.selected").prev("li:not(.disabled)")[0], a && g(l, a)), setTimeout(function() {
4501                                v = []
4502                            }, 1e3)
4503                        }
4504                    };
4505                _.on("keydown", y)
4506            }
4507        })
4508    }
4509}(jQuery);
4510jQuery(document).ready(function(t) {
4511    t(".mMenu").on("click", function() {
4512        t("#site-header").toggleClass("navOpen")
4513    }), t(".customizeBtn").on("click", function() {
4514        t(".top-menu-wrapper").hide(), t(".customize-menu").slideToggle()
4515    }), t(".top-menu-btn").on("click", function() {
4516        t(".customize-menu").hide(), t(".top-menu-wrapper").slideToggle()
4517    });
4518    var e = t(".customize-menu").find("input:checked");
4519    e.length > 0 && e.parent().parent().addClass("active"), t(".customize-menu").find("input").on("change", function() {
4520        t(".customize-menu").find(".active").removeClass("active");
4521        var e = t(".customize-menu").find("input:checked");
4522        e.length > 0 && e.parent().parent().addClass("active")
4523    })
4524});
4525jQuery(document).ready(function(t) {
4526    var e = document.createElement("audio");
4527    e.setAttribute("src", "/wp-content/themes/hockeyettan/assets/sounds/pling.mp3"), t.get(), e.addEventListener("load", function() {
4528        e.volume = .05, e.play()
4529    }, !0)
4530});
4531! function(t) {
4532    t.fn.equalHeights = function() {
4533        var e = 0,
4534            i = t(this);
4535        return i.each(function() {
4536            var i = t(this).innerHeight();
4537            i > e && (e = i)
4538        }), i.css("height", e)
4539    }, t("[data-equal]").each(function() {
4540        var e = t(this),
4541            i = e.data("equal");
4542        e.find(i).equalHeights()
4543    })
4544}(jQuery), jQuery(document).ready(function(t) {
4545    t(window).outerWidth(), t(window).height(), setTimeout(function() {
4546        t(".equal-row").each(function() {
4547            t(this).find(".equal").equalHeights()
4548        })
4549    }, 500);
4550    t(".tabs a, .gameTabs a").on("click", function() {
4551        setTimeout(function() {
4552            t(".equal-row").each(function() {
4553                t(this).find(".equal").height("auto"), t(this).find(".equal").equalHeights()
4554            })
4555        }, 200)
4556    })
4557}), jQuery(window).resize(function() {
4558    var t = jQuery;
4559    windowWidth = t(window).outerWidth(), windowHeight = t(window).height(), t(".equal-row").each(function() {
4560        t(this).find(".equal").height("auto"), t(this).find(".equal").equalHeights()
4561    })
4562});
4563jQuery(document).ready(function(t) {
4564    var e = t("p.trim").text();
4565    e = e.substr(0, 150) + "...", t("p.trim").text(e)
4566});
4567
4568function windowpop(t, e, i) {
4569    var n, s;
4570    return n = window.screen.width / 2 - (e / 2 + 10), s = window.screen.height / 2 - (i / 2 + 50), window.open(t, "Window2", "status=no,height=" + i + ",width=" + e + ",resizable=yes,left=" + n + ",top=" + s + ",screenX=" + n + ",screenY=" + s + ",toolbar=no,menubar=no,scrollbars=no,location=no,directories=no"), !1
4571}
4572var _gsScope = "undefined" != typeof module && module.exports && "undefined" != typeof global ? global : this || window;
4573(_gsScope._gsQueue || (_gsScope._gsQueue = [])).push(function() {
4574        "use strict";
4575        _gsScope._gsDefine("TweenMax", ["core.Animation", "core.SimpleTimeline", "TweenLite"], function(t, e, i) {
4576                var n = function(t) {
4577                        var e, i = [],
4578                            n = t.length;
4579                        for (e = 0; e !== n; i.push(t[e++]));
4580                        return i
4581                    },
4582                    s = function(t, e, n) {
4583                        i.call(this, t, e, n), this._cycle = 0, this._yoyo = this.vars.yoyo === !0, this._repeat = this.vars.repeat || 0, this._repeatDelay = this.vars.repeatDelay || 0, this._dirty = !0, this.render = s.prototype.render
4584                    },
4585                    r = 1e-10,
4586                    a = i._internals,
4587                    o = a.isSelector,
4588                    l = a.isArray,
4589                    h = s.prototype = i.to({}, .1, {}),
4590                    u = [];
4591                s.version = "1.15.1", h.constructor = s, h.kill()._gc = !1, s.killTweensOf = s.killDelayedCallsTo = i.killTweensOf, s.getTweensOf = i.getTweensOf, s.lagSmoothing = i.lagSmoothing, s.ticker = i.ticker, s.render = i.render, h.invalidate = function() {
4592                    return this._yoyo = this.vars.yoyo === !0, this._repeat = this.vars.repeat || 0, this._repeatDelay = this.vars.repeatDelay || 0, this._uncache(!0), i.prototype.invalidate.call(this)
4593                }, h.updateTo = function(t, e) {
4594                    var n, s = this.ratio,
4595                        r = this.vars.immediateRender || t.immediateRender;
4596                    e && this._startTime < this._timeline._time && (this._startTime = this._timeline._time, this._uncache(!1), this._gc ? this._enabled(!0, !1) : this._timeline.insert(this, this._startTime - this._delay));
4597                    for (n in t) this.vars[n] = t[n];
4598                    if (this._initted || r)
4599                        if (e) this._initted = !1, r && this.render(0, !0, !0);
4600                        else if (this._gc && this._enabled(!0, !1), this._notifyPluginsOfEnabled && this._firstPT && i._onPluginEvent("_onDisable", this), this._time / this._duration > .998) {
4601                        var a = this._time;
4602                        this.render(0, !0, !1), this._initted = !1, this.render(a, !0, !1)
4603                    } else if (this._time > 0 || r) {
4604                        this._initted = !1, this._init();
4605                        for (var o, l = 1 / (1 - s), h = this._firstPT; h;) o = h.s + h.c, h.c *= l, h.s = o - h.c, h = h._next
4606                    }
4607                    return this
4608                }, h.render = function(t, e, i) {
4609                    this._initted || 0 === this._duration && this.vars.repeat && this.invalidate();
4610                    var n, s, o, l, h, d, c, f, p = this._dirty ? this.totalDuration() : this._totalDuration,
4611                        _ = this._time,
4612                        m = this._totalTime,
4613                        g = this._cycle,
4614                        v = this._duration,
4615                        y = this._rawPrevTime;
4616                    if (t >= p ? (this._totalTime = p, this._cycle = this._repeat, this._yoyo && 0 !== (1 & this._cycle) ? (this._time = 0, this.ratio = this._ease._calcEnd ? this._ease.getRatio(0) : 0) : (this._time = v, this.ratio = this._ease._calcEnd ? this._ease.getRatio(1) : 1), this._reversed || (n = !0, s = "onComplete"), 0 === v && (this._initted || !this.vars.lazy || i) && (this._startTime === this._timeline._duration && (t = 0), (0 === t || 0 > y || y === r) && y !== t && (i = !0, y > r && (s = "onReverseComplete")), this._rawPrevTime = f = !e || t || y === t ? t : r)) : 1e-7 > t ? (this._totalTime = this._time = this._cycle = 0, this.ratio = this._ease._calcEnd ? this._ease.getRatio(0) : 0, (0 !== m || 0 === v && y > 0 && y !== r) && (s = "onReverseComplete", n = this._reversed), 0 > t && (this._active = !1, 0 === v && (this._initted || !this.vars.lazy || i) && (y >= 0 && (i = !0), this._rawPrevTime = f = !e || t || y === t ? t : r)), this._initted || (i = !0)) : (this._totalTime = this._time = t, 0 !== this._repeat && (l = v + this._repeatDelay, this._cycle = this._totalTime / l >> 0, 0 !== this._cycle && this._cycle === this._totalTime / l && this._cycle--, this._time = this._totalTime - this._cycle * l, this._yoyo && 0 !== (1 & this._cycle) && (this._time = v - this._time), this._time > v ? this._time = v : 0 > this._time && (this._time = 0)), this._easeType ? (h = this._time / v, d = this._easeType, c = this._easePower, (1 === d || 3 === d && h >= .5) && (h = 1 - h), 3 === d && (h *= 2), 1 === c ? h *= h : 2 === c ? h *= h * h : 3 === c ? h *= h * h * h : 4 === c && (h *= h * h * h * h), this.ratio = 1 === d ? 1 - h : 2 === d ? h : .5 > this._time / v ? h / 2 : 1 - h / 2) : this.ratio = this._ease.getRatio(this._time / v)), _ === this._time && !i && g === this._cycle) return void(m !== this._totalTime && this._onUpdate && (e || this._onUpdate.apply(this.vars.onUp
vendor: 9,272 bytes, lines 4616-4722
4616dateScope || this, this.vars.onUpdateParams || u)));
4617                    if (!this._initted) {
4618                        if (this._init(), !this._initted || this._gc) return;
4619                        if (!i && this._firstPT && (this.vars.lazy !== !1 && this._duration || this.vars.lazy && !this._duration)) return this._time = _, this._totalTime = m, this._rawPrevTime = y, this._cycle = g, a.lazyTweens.push(this), void(this._lazy = [t, e]);
4620                        this._time && !n ? this.ratio = this._ease.getRatio(this._time / v) : n && this._ease._calcEnd && (this.ratio = this._ease.getRatio(0 === this._time ? 0 : 1))
4621                    }
4622                    for (this._lazy !== !1 && (this._lazy = !1), this._active || !this._paused && this._time !== _ && t >= 0 && (this._active = !0), 0 === m && (2 === this._initted && t > 0 && this._init(), this._startAt && (t >= 0 ? this._startAt.render(t, e, i) : s || (s = "_dummyGS")), this.vars.onStart && (0 !== this._totalTime || 0 === v) && (e || this.vars.onStart.apply(this.vars.onStartScope || this, this.vars.onStartParams || u))), o = this._firstPT; o;) o.f ? o.t[o.p](o.c * this.ratio + o.s) : o.t[o.p] = o.c * this.ratio + o.s, o = o._next;
4623                    this._onUpdate && (0 > t && this._startAt && this._startTime && this._startAt.render(t, e, i), e || (this._totalTime !== m || n) && this._onUpdate.apply(this.vars.onUpdateScope || this, this.vars.onUpdateParams || u)), this._cycle !== g && (e || this._gc || this.vars.onRepeat && this.vars.onRepeat.apply(this.vars.onRepeatScope || this, this.vars.onRepeatParams || u)), s && (!this._gc || i) && (0 > t && this._startAt && !this._onUpdate && this._startTime && this._startAt.render(t, e, i), n && (this._timeline.autoRemoveChildren && this._enabled(!1, !1), this._active = !1), !e && this.vars[s] && this.vars[s].apply(this.vars[s + "Scope"] || this, this.vars[s + "Params"] || u), 0 === v && this._rawPrevTime === r && f !== r && (this._rawPrevTime = 0))
4624                }, s.to = function(t, e, i) {
4625                    return new s(t, e, i)
4626                }, s.from = function(t, e, i) {
4627                    return i.runBackwards = !0, i.immediateRender = 0 != i.immediateRender, new s(t, e, i)
4628                }, s.fromTo = function(t, e, i, n) {
4629                    return n.startAt = i, n.immediateRender = 0 != n.immediateRender && 0 != i.immediateRender, new s(t, e, n)
4630                }, s.staggerTo = s.allTo = function(t, e, r, a, h, d, c) {
4631                    a = a || 0;
4632                    var f, p, _, m, g = r.delay || 0,
4633                        v = [],
4634                        y = function() {
4635                            r.onComplete && r.onComplete.apply(r.onCompleteScope || this, arguments), h.apply(c || this, d || u)
4636                        };
4637                    for (l(t) || ("string" == typeof t && (t = i.selector(t) || t), o(t) && (t = n(t))), t = t || [], 0 > a && (t = n(t), t.reverse(), a *= -1), f = t.length - 1, _ = 0; f >= _; _++) {
4638                        p = {};
4639                        for (m in r) p[m] = r[m];
4640                        p.delay = g, _ === f && h && (p.onComplete = y), v[_] = new s(t[_], e, p), g += a
4641                    }
4642                    return v
4643                }, s.staggerFrom = s.allFrom = function(t, e, i, n, r, a, o) {
4644                    return i.runBackwards = !0, i.immediateRender = 0 != i.immediateRender, s.staggerTo(t, e, i, n, r, a, o)
4645                }, s.staggerFromTo = s.allFromTo = function(t, e, i, n, r, a, o, l) {
4646                    return n.startAt = i, n.immediateRender = 0 != n.immediateRender && 0 != i.immediateRender, s.staggerTo(t, e, n, r, a, o, l)
4647                }, s.delayedCall = function(t, e, i, n, r) {
4648                    return new s(e, 0, {
4649                        delay: t,
4650                        onComplete: e,
4651                        onCompleteParams: i,
4652                        onCompleteScope: n,
4653                        onReverseComplete: e,
4654                        onReverseCompleteParams: i,
4655                        onReverseCompleteScope: n,
4656                        immediateRender: !1,
4657                        useFrames: r,
4658                        overwrite: 0
4659                    })
4660                }, s.set = function(t, e) {
4661                    return new s(t, 0, e)
4662                }, s.isTweening = function(t) {
4663                    return i.getTweensOf(t, !0).length > 0
4664                };
4665                var d = function(t, e) {
4666                        for (var n = [], s = 0, r = t._first; r;) r instanceof i ? n[s++] = r : (e && (n[s++] = r), n = n.concat(d(r, e)), s = n.length), r = r._next;
4667                        return n
4668                    },
4669                    c = s.getAllTweens = function(e) {
4670                        return d(t._rootTimeline, e).concat(d(t._rootFramesTimeline, e))
4671                    };
4672                s.killAll = function(t, i, n, s) {
4673                    null == i && (i = !0), null == n && (n = !0);
4674                    var r, a, o, l = c(0 != s),
4675                        h = l.length,
4676                        u = i && n && s;
4677                    for (o = 0; h > o; o++) a = l[o], (u || a instanceof e || (r = a.target === a.vars.onComplete) && n || i && !r) && (t ? a.totalTime(a._reversed ? 0 : a.totalDuration()) : a._enabled(!1, !1))
4678                }, s.killChildTweensOf = function(t, e) {
4679                    if (null != t) {
4680                        var r, h, u, d, c, f = a.tweenLookup;
4681                        if ("string" == typeof t && (t = i.selector(t) || t), o(t) && (t = n(t)), l(t))
4682                            for (d = t.length; --d > -1;) s.killChildTweensOf(t[d], e);
4683                        else {
4684                            r = [];
4685                            for (u in f)
4686                                for (h = f[u].target.parentNode; h;) h === t && (r = r.concat(f[u].tweens)), h = h.parentNode;
4687                            for (c = r.length, d = 0; c > d; d++) e && r[d].totalTime(r[d].totalDuration()), r[d]._enabled(!1, !1)
4688                        }
4689                    }
4690                };
4691                var f = function(t, i, n, s) {
4692                    i = i !== !1, n = n !== !1, s = s !== !1;
4693                    for (var r, a, o = c(s), l = i && n && s, h = o.length; --h > -1;) a = o[h], (l || a instanceof e || (r = a.target === a.vars.onComplete) && n || i && !r) && a.paused(t)
4694                };
4695                return s.pauseAll = function(t, e, i) {
4696                    f(!0, t, e, i)
4697                }, s.resumeAll = function(t, e, i) {
4698                    f(!1, t, e, i)
4699                }, s.globalTimeScale = function(e) {
4700                    var n = t._rootTimeline,
4701                        s = i.ticker.time;
4702                    return arguments.length ? (e = e || r, n._startTime = s - (s - n._startTime) * n._timeScale / e, n = t._rootFramesTimeline, s = i.ticker.frame, n._startTime = s - (s - n._startTime) * n._timeScale / e, n._timeScale = t._rootTimeline._timeScale = e, e) : n._timeScale
4703                }, h.progress = function(t) {
4704                    return arguments.length ? this.totalTime(this.duration() * (this._yoyo && 0 !== (1 & this._cycle) ? 1 - t : t) + this._cycle * (this._duration + this._repeatDelay), !1) : this._time / this.duration()
4705                }, h.totalProgress = function(t) {
4706                    return arguments.length ? this.totalTime(this.totalDuration() * t, !1) : this._totalTime / this.totalDuration()
4707                }, h.time = function(t, e) {
4708                    return arguments.length ? (this._dirty && this.totalDuration(), t > this._duration && (t = this._duration), this._yoyo && 0 !== (1 & this._cycle) ? t = this._duration - t + this._cycle * (this._duration + this._repeatDelay) : 0 !== this._repeat && (t += this._cycle * (this._duration + this._repeatDelay)), this.totalTime(t, e)) : this._time
4709                }, h.duration = function(e) {
4710                    return arguments.length ? t.prototype.duration.call(this, e) : this._duration
4711                }, h.totalDuration = function(t) {
4712                    return arguments.length ? -1 === this._repeat ? this : this.duration((t - this._repeat * this._repeatDelay) / (this._repeat + 1)) : (this._dirty && (this._totalDuration = -1 === this._repeat ? 999999999999 : this._duration * (this._repeat + 1) + this._repeatDelay * this._repeat, this._dirty = !1), this._totalDuration)
4713                }, h.repeat = function(t) {
4714                    return arguments.length ? (this._repeat = t, this._uncache(!0)) : this._repeat
4715                }, h.repeatDelay = function(t) {
4716                    return arguments.length ? (this._repeatDelay = t, this._uncache(!0)) : this._repeatDelay
4717                }, h.yoyo = function(t) {
4718                    return arguments.length ? (this._yoyo = t, this) : this._yoyo
4719                }, s
4720            }, !0), _gsScope._gsDefine("TimelineLite", ["core.Animation", "core.SimpleTimeline", "TweenLite"], function(t, e, i) {
4721                var n = function(t) {
4722                        e.call(this, t), this._labels = {}, this.autoRemoveChildren = this.vars.autoRemoveChildren === !0, this.smoothChildTiming = this.vars.smoothChildTiming === !0, this._sortChildren = !0, this._onUpdate = this.vars.onUp
4722date;
4723                        var i, n, s = this.vars;
4724                        for (n in s) i = s[n], l(i) && -1 !== i.join("").indexOf("{self}") && (s[n] = this._swapSelfInParams(i));
4725                        l(s.tweens) && this.add(s.tweens, 0, s.align, s.stagger)
4726                    },
4727                    s = 1e-10,
4728                    r = i._internals,
4729                    a = n._internals = {},
4730                    o = r.isSelector,
4731                    l = r.isArray,
4732                    h = r.lazyTweens,
4733                    u = r.lazyRender,
4734                    d = [],
4735                    c = _gsScope._gsDefine.globals,
4736                    f = function(t) {
4737                        var e, i = {};
4738                        for (e in t) i[e] = t[e];
4739                        return i
4740                    },
4741                    p = a.pauseCallback = function(t, e, i, n) {
4742                        var s = t._timeline,
4743                            r = s._totalTime;
4744                        !e && this._forcingPlayhead || s._rawPrevTime === t._startTime || (s.pause(t._startTime), e && e.apply(n || s, i || d), this._forcingPlayhead && s.seek(r))
4745                    },
4746                    _ = function(t) {
4747                        var e, i = [],
4748                            n = t.length;
4749                        for (e = 0; e !== n; i.push(t[e++]));
4750                        return i
4751                    },
4752                    m = n.prototype = new e;
4753                return n.version = "1.15.1", m.constructor = n, m.kill()._gc = m._forcingPlayhead = !1, m.to = function(t, e, n, s) {
4754                    var r = n.repeat && c.TweenMax || i;
4755                    return e ? this.add(new r(t, e, n), s) : this.set(t, n, s)
4756                }, m.from = function(t, e, n, s) {
4757                    return this.add((n.repeat && c.TweenMax || i).from(t, e, n), s)
4758                }, m.fromTo = function(t, e, n, s, r) {
4759                    var a = s.repeat && c.TweenMax || i;
4760                    return e ? this.add(a.fromTo(t, e, n, s), r) : this.set(t, s, r)
4761                }, m.staggerTo = function(t, e, s, r, a, l, h, u) {
4762                    var d, c = new n({
4763                        onComplete: l,
4764                        onCompleteParams: h,
4765                        onCompleteScope: u,
4766                        smoothChildTiming: this.smoothChildTiming
4767                    });
4768                    for ("string" == typeof t && (t = i.selector(t) || t), t = t || [], o(t) && (t = _(t)), r = r || 0, 0 > r && (t = _(t), t.reverse(), r *= -1), d = 0; t.length > d; d++) s.startAt && (s.startAt = f(s.startAt)), c.to(t[d], e, f(s), d * r);
4769                    return this.add(c, a)
4770                }, m.staggerFrom = function(t, e, i, n, s, r, a, o) {
4771                    return i.immediateRender = 0 != i.immediateRender, i.runBackwards = !0, this.staggerTo(t, e, i, n, s, r, a, o)
4772                }, m.staggerFromTo = function(t, e, i, n, s, r, a, o, l) {
4773                    return n.startAt = i, n.immediateRender = 0 != n.immediateRender && 0 != i.immediateRender, this.staggerTo(t, e, n, s, r, a, o, l)
4774                }, m.call = function(t, e, n, s) {
4775                    return this.add(i.delayedCall(0, t, e, n), s)
4776                }, m.set = function(t, e, n) {
4777                    return n = this._parseTimeOrLabel(n, 0, !0), null == e.immediateRender && (e.immediateRender = n === this._time && !this._paused), this.add(new i(t, 0, e), n)
4778                }, n.exportRoot = function(t, e) {
4779                    t = t || {}, null == t.smoothChildTiming && (t.smoothChildTiming = !0);
4780                    var s, r, a = new n(t),
4781                        o = a._timeline;
4782                    for (null == e && (e = !0), o._remove(a, !0), a._startTime = 0, a._rawPrevTime = a._time = a._totalTime = o._time, s = o._first; s;) r = s._next, e && s instanceof i && s.target === s.vars.onComplete || a.add(s, s._startTime - s._delay), s = r;
4783                    return o.add(a, 0), a
4784                }, m.add = function(s, r, a, o) {
4785                    var h, u, d, c, f, p;
4786                    if ("number" != typeof r && (r = this._parseTimeOrLabel(r, 0, !0, s)), !(s instanceof t)) {
4787                        if (s instanceof Array || s && s.push && l(s)) {
4788                            for (a = a || "normal", o = o || 0, h = r, u = s.length, d = 0; u > d; d++) l(c = s[d]) && (c = new n({
4789                                tweens: c
4790                            })), this.add(c, h), "string" != typeof c && "function" != typeof c && ("sequence" === a ? h = c._startTime + c.totalDuration() / c._timeScale : "start" === a && (c._startTime -= c.delay())), h += o;
4791                            return this._uncache(!0)
4792                        }
4793                        if ("string" == typeof s) return this.addLabel(s, r);
4794                        if ("function" != typeof s) throw "Cannot add " + s + " into the timeline; it is not a tween, timeline, function, or string.";
4795                        s = i.delayedCall(0, s)
4796                    }
4797                    if (e.prototype.add.call(this, s, r), (this._gc || this._time === this._duration) && !this._paused && this._duration < this.duration())
4798                        for (f = this, p = f.rawTime() > s._startTime; f._timeline;) p && f._timeline.smoothChildTiming ? f.totalTime(f._totalTime, !0) : f._gc && f._enabled(!0, !1), f = f._timeline;
4799                    return this
4800                }, m.remove = function(e) {
4801                    if (e instanceof t) return this._remove(e, !1);
4802                    if (e instanceof Array || e && e.push && l(e)) {
4803                        for (var i = e.length; --i > -1;) this.remove(e[i]);
4804                        return this
4805                    }
4806                    return "string" == typeof e ? this.removeLabel(e) : this.kill(null, e)
4807                }, m._remove = function(t, i) {
4808                    e.prototype._remove.call(this, t, i);
4809                    var n = this._last;
4810                    return n ? this._time > n._startTime + n._totalDuration / n._timeScale && (this._time = this.duration(), this._totalTime = this._totalDuration) : this._time = this._totalTime = this._duration = this._totalDuration = 0, this
4811                }, m.append = function(t, e) {
4812                    return this.add(t, this._parseTimeOrLabel(null, e, !0, t))
4813                }, m.insert = m.insertMultiple = function(t, e, i, n) {
4814                    return this.add(t, e || 0, i, n)
4815                }, m.appendMultiple = function(t, e, i, n) {
4816                    return this.add(t, this._parseTimeOrLabel(null, e, !0, t), i, n)
4817                }, m.addLabel = function(t, e) {
4818                    return this._labels[t] = this._parseTimeOrLabel(e), this
4819                }, m.addPause = function(t, e, n, s) {
4820                    var r = i.delayedCall(0, p, ["{self}", e, n, s], this);
4821                    return r.data = "isPause", this.add(r, t)
4822                }, m.removeLabel = function(t) {
4823                    return delete this._labels[t], this
4824                }, m.getLabelTime = function(t) {
4825                    return null != this._labels[t] ? this._labels[t] : -1
4826                }, m._parseTimeOrLabel = function(e, i, n, s) {
4827                    var r;
4828                    if (s instanceof t && s.timeline === this) this.remove(s);
4829                    else if (s && (s instanceof Array || s.push && l(s)))
4830                        for (r = s.length; --r > -1;) s[r] instanceof t && s[r].timeline === this && this.remove(s[r]);
4831                    if ("string" == typeof i) return this._parseTimeOrLabel(i, n && "number" == typeof e && null == this._labels[i] ? e - this.duration() : 0, n);
4832                    if (i = i || 0, "string" != typeof e || !isNaN(e) && null == this._labels[e]) null == e && (e = this.duration());
4833                    else {
4834                        if (r = e.indexOf("="), -1 === r) return null == this._labels[e] ? n ? this._labels[e] = this.duration() + i : i : this._labels[e] + i;
4835                        i = parseInt(e.charAt(r - 1) + "1", 10) * Number(e.substr(r + 1)), e = r > 1 ? this._parseTimeOrLabel(e.substr(0, r - 1), 0, n) : this.duration()
4836                    }
4837                    return Number(e) + i
4838                }, m.seek = function(t, e) {
4839                    return this.totalTime("number" == typeof t ? t : this._parseTimeOrLabel(t), e !== !1)
4840                }, m.stop = function() {
4841                    return this.paused(!0)
4842                }, m.gotoAndPlay = function(t, e) {
4843                    return this.play(t, e)
4844                }, m.gotoAndStop = function(t, e) {
4845                    return this.pause(t, e)
4846                }, m.render = function(t, e, i) {
4847                    this._gc && this._enabled(!0, !1);
4848                    var n, r, a, o, l, c = this._dirty ? this.totalDuration() : this._totalDuration,
4849                        f = this._time,
4850                        p = this._startTime,
4851                        _ = this._timeScale,
4852                        m = this._paused;
4853                    if (t >= c ? (this._totalTime = this._time = c, this._reversed || this._hasPausedChild() || (r = !0, o = "onComplete", 0 === this._duration && (0 === t || 0 > this._rawPrevTime || this._rawPrevTime === s) && this._rawPrevTime !== t && this._first && (l = !0, this._rawPrevTime > s && (o = "onReverseComplete"))), this._rawPrevTime = this._duration || !e || t || this._rawPrevTime === t ? t : s, t = c + 1e-4) : 1e-7 > t ? (this._totalTime = this._time = 0, (0 !== f || 0 === this._duration && this._rawPrevTime !== s && (this._rawPrevTime > 0 || 0 > t && this._rawPrevTime >= 0)) && (o = "onReverseComplete", r = this._reversed), 0 > t ? (this._active = !1, this._rawPrevTime >= 0 && this._first && (l = !0), this._rawPrevTime = t) : (this._rawPrevTime = this._duration || !e || t || this._rawPrevTime === t ? t : s, t = 0, this._initted || (l = !0))) : this._totalTime = this._time = this._rawPrevTime = t, this._time !== f && this._first || i || l) {
4854                        if (this._initted || (this._initted = !0), this._active || !this._paused && this._time !== f && t > 0 && (this._active = !0), 0 === f && this.vars.onStart && 0 !== this._time && (e || this.vars.onStart.apply(this.vars.onStartScope || this, this.vars.onStartParams || d)), this._time >= f)
4855                            for (n = this._first; n && (a = n._next, !this._paused || m);)(n._active || n._startTime <= this._time && !n._paused && !n._gc) && (n._reversed ? n.render((n._dirty ? n.totalDuration() : n._totalDuration) - (t - n._startTime) * n._timeScale, e, i) : n.render((t - n._startTime) * n._timeScale, e, i)), n = a;
4856                        else
4857                            for (n = this._last; n && (a = n._prev, !this._paused || m);)(n._active || f >= n._startTime && !n._paused && !n._gc) && (n._reversed ? n.render((n._dirty ? n.totalDuration() : n._totalDuration) - (t - n._startTime) * n._timeScale, e, i) : n.render((t - n._startTime) * n._timeScale, e, i)), n = a;
4858                        this._onUpdate && (e || (h.length && u(), this._onUpdate.apply(this.vars.onUp
vendor: 5,667 bytes, lines 4858-4938
4858dateScope || this, this.vars.onUpdateParams || d))), o && (this._gc || (p === this._startTime || _ !== this._timeScale) && (0 === this._time || c >= this.totalDuration()) && (r && (h.length && u(), this._timeline.autoRemoveChildren && this._enabled(!1, !1), this._active = !1), !e && this.vars[o] && this.vars[o].apply(this.vars[o + "Scope"] || this, this.vars[o + "Params"] || d)))
4859                    }
4860                }, m._hasPausedChild = function() {
4861                    for (var t = this._first; t;) {
4862                        if (t._paused || t instanceof n && t._hasPausedChild()) return !0;
4863                        t = t._next
4864                    }
4865                    return !1
4866                }, m.getChildren = function(t, e, n, s) {
4867                    s = s || -9999999999;
4868                    for (var r = [], a = this._first, o = 0; a;) s > a._startTime || (a instanceof i ? e !== !1 && (r[o++] = a) : (n !== !1 && (r[o++] = a), t !== !1 && (r = r.concat(a.getChildren(!0, e, n)), o = r.length))), a = a._next;
4869                    return r
4870                }, m.getTweensOf = function(t, e) {
4871                    var n, s, r = this._gc,
4872                        a = [],
4873                        o = 0;
4874                    for (r && this._enabled(!0, !0), n = i.getTweensOf(t), s = n.length; --s > -1;)(n[s].timeline === this || e && this._contains(n[s])) && (a[o++] = n[s]);
4875                    return r && this._enabled(!1, !0), a
4876                }, m.recent = function() {
4877                    return this._recent
4878                }, m._contains = function(t) {
4879                    for (var e = t.timeline; e;) {
4880                        if (e === this) return !0;
4881                        e = e.timeline
4882                    }
4883                    return !1
4884                }, m.shiftChildren = function(t, e, i) {
4885                    i = i || 0;
4886                    for (var n, s = this._first, r = this._labels; s;) s._startTime >= i && (s._startTime += t), s = s._next;
4887                    if (e)
4888                        for (n in r) r[n] >= i && (r[n] += t);
4889                    return this._uncache(!0)
4890                }, m._kill = function(t, e) {
4891                    if (!t && !e) return this._enabled(!1, !1);
4892                    for (var i = e ? this.getTweensOf(e) : this.getChildren(!0, !0, !1), n = i.length, s = !1; --n > -1;) i[n]._kill(t, e) && (s = !0);
4893                    return s
4894                }, m.clear = function(t) {
4895                    var e = this.getChildren(!1, !0, !0),
4896                        i = e.length;
4897                    for (this._time = this._totalTime = 0; --i > -1;) e[i]._enabled(!1, !1);
4898                    return t !== !1 && (this._labels = {}), this._uncache(!0)
4899                }, m.invalidate = function() {
4900                    for (var e = this._first; e;) e.invalidate(), e = e._next;
4901                    return t.prototype.invalidate.call(this)
4902                }, m._enabled = function(t, i) {
4903                    if (t === this._gc)
4904                        for (var n = this._first; n;) n._enabled(t, !0), n = n._next;
4905                    return e.prototype._enabled.call(this, t, i)
4906                }, m.totalTime = function() {
4907                    this._forcingPlayhead = !0;
4908                    var e = t.prototype.totalTime.apply(this, arguments);
4909                    return this._forcingPlayhead = !1, e
4910                }, m.duration = function(t) {
4911                    return arguments.length ? (0 !== this.duration() && 0 !== t && this.timeScale(this._duration / t), this) : (this._dirty && this.totalDuration(), this._duration)
4912                }, m.totalDuration = function(t) {
4913                    if (!arguments.length) {
4914                        if (this._dirty) {
4915                            for (var e, i, n = 0, s = this._last, r = 999999999999; s;) e = s._prev, s._dirty && s.totalDuration(), s._startTime > r && this._sortChildren && !s._paused ? this.add(s, s._startTime - s._delay) : r = s._startTime, 0 > s._startTime && !s._paused && (n -= s._startTime, this._timeline.smoothChildTiming && (this._startTime += s._startTime / this._timeScale), this.shiftChildren(-s._startTime, !1, -9999999999), r = 0), i = s._startTime + s._totalDuration / s._timeScale, i > n && (n = i), s = e;
4916                            this._duration = this._totalDuration = n, this._dirty = !1
4917                        }
4918                        return this._totalDuration
4919                    }
4920                    return 0 !== this.totalDuration() && 0 !== t && this.timeScale(this._totalDuration / t), this
4921                }, m.usesFrames = function() {
4922                    for (var e = this._timeline; e._timeline;) e = e._timeline;
4923                    return e === t._rootFramesTimeline
4924                }, m.rawTime = function() {
4925                    return this._paused ? this._totalTime : (this._timeline.rawTime() - this._startTime) * this._timeScale
4926                }, n
4927            }, !0), _gsScope._gsDefine("TimelineMax", ["TimelineLite", "TweenLite", "easing.Ease"], function(t, e, i) {
4928                var n = function(e) {
4929                        t.call(this, e), this._repeat = this.vars.repeat || 0, this._repeatDelay = this.vars.repeatDelay || 0, this._cycle = 0, this._yoyo = this.vars.yoyo === !0, this._dirty = !0
4930                    },
4931                    s = 1e-10,
4932                    r = [],
4933                    a = e._internals,
4934                    o = a.lazyTweens,
4935                    l = a.lazyRender,
4936                    h = new i(null, null, 1, 0),
4937                    u = n.prototype = new t;
4938                return u.constructor = n, u.kill()._gc = !1, n.version = "1.15.1", u.invali
4938date = function() {
4939                    return this._yoyo = this.vars.yoyo === !0, this._repeat = this.vars.repeat || 0, this._repeatDelay = this.vars.repeatDelay || 0, this._uncache(!0), t.prototype.invalidate.call(this)
4940                }, u.addCallback = function(t, i, n, s) {
4941                    return this.add(e.delayedCall(0, t, n, s), i)
4942                }, u.removeCallback = function(t, e) {
4943                    if (t)
4944                        if (null == e) this._kill(null, t);
4945                        else
4946                            for (var i = this.getTweensOf(t, !1), n = i.length, s = this._parseTimeOrLabel(e); --n > -1;) i[n]._startTime === s && i[n]._enabled(!1, !1);
4947                    return this
4948                }, u.removePause = function(e) {
4949                    return this.removeCallback(t._internals.pauseCallback, e)
4950                }, u.tweenTo = function(t, i) {
4951                    i = i || {};
4952                    var n, s, a, o = {
4953                        ease: h,
4954                        useFrames: this.usesFrames(),
4955                        immediateRender: !1
4956                    };
4957                    for (s in i) o[s] = i[s];
4958                    return o.time = this._parseTimeOrLabel(t), n = Math.abs(Number(o.time) - this._time) / this._timeScale || .001, a = new e(this, n, o), o.onStart = function() {
4959                        a.target.paused(!0), a.vars.time !== a.target.time() && n === a.duration() && a.duration(Math.abs(a.vars.time - a.target.time()) / a.target._timeScale), i.onStart && i.onStart.apply(i.onStartScope || a, i.onStartParams || r)
4960                    }, a
4961                }, u.tweenFromTo = function(t, e, i) {
4962                    i = i || {}, t = this._parseTimeOrLabel(t), i.startAt = {
4963                        onComplete: this.seek,
4964                        onCompleteParams: [t],
4965                        onCompleteScope: this
4966                    }, i.immediateRender = i.immediateRender !== !1;
4967                    var n = this.tweenTo(e, i);
4968                    return n.duration(Math.abs(n.vars.time - t) / this._timeScale || .001)
4969                }, u.render = function(t, e, i) {
4970                    this._gc && this._enabled(!0, !1);
4971                    var n, a, h, u, d, c, f = this._dirty ? this.totalDuration() : this._totalDuration,
4972                        p = this._duration,
4973                        _ = this._time,
4974                        m = this._totalTime,
4975                        g = this._startTime,
4976                        v = this._timeScale,
4977                        y = this._rawPrevTime,
4978                        w = this._paused,
4979                        b = this._cycle;
4980                    if (t >= f ? (this._locked || (this._totalTime = f, this._cycle = this._repeat), this._reversed || this._hasPausedChild() || (a = !0, u = "onComplete", 0 === this._duration && (0 === t || 0 > y || y === s) && y !== t && this._first && (d = !0, y > s && (u = "onReverseComplete"))), this._rawPrevTime = this._duration || !e || t || this._rawPrevTime === t ? t : s, this._yoyo && 0 !== (1 & this._cycle) ? this._time = t = 0 : (this._time = p, t = p + 1e-4)) : 1e-7 > t ? (this._locked || (this._totalTime = this._cycle = 0), this._time = 0, (0 !== _ || 0 === p && y !== s && (y > 0 || 0 > t && y >= 0) && !this._locked) && (u = "onReverseComplete", a = this._reversed), 0 > t ? (this._active = !1, y >= 0 && this._first && (d = !0), this._rawPrevTime = t) : (this._rawPrevTime = p || !e || t || this._rawPrevTime === t ? t : s, t = 0, this._initted || (d = !0))) : (0 === p && 0 > y && (d = !0), this._time = this._rawPrevTime = t, this._locked || (this._totalTime = t, 0 !== this._repeat && (c = p + this._repeatDelay, this._cycle = this._totalTime / c >> 0, 0 !== this._cycle && this._cycle === this._totalTime / c && this._cycle--, this._time = this._totalTime - this._cycle * c, this._yoyo && 0 !== (1 & this._cycle) && (this._time = p - this._time), this._time > p ? (this._time = p, t = p + 1e-4) : 0 > this._time ? this._time = t = 0 : t = this._time))), this._cycle !== b && !this._locked) {
4981                        var T = this._yoyo && 0 !== (1 & b),
4982                            x = T === (this._yoyo && 0 !== (1 & this._cycle)),
4983                            S = this._totalTime,
4984                            P = this._cycle,
4985                            k = this._rawPrevTime,
4986                            M = this._time;
4987                        if (this._totalTime = b * p, b > this._cycle ? T = !T : this._totalTime += p, this._time = _, this._rawPrevTime = 0 === p ? y - 1e-4 : y, this._cycle = b, this._locked = !0, _ = T ? 0 : p, this.render(_, e, 0 === p), e || this._gc || this.vars.onRepeat && this.vars.onRepeat.apply(this.vars.onRepeatScope || this, this.vars.onRepeatParams || r), x && (_ = T ? p + 1e-4 : -1e-4, this.render(_, !0, !1)), this._locked = !1, this._paused && !w) return;
4988                        this._time = M, this._totalTime = S, this._cycle = P, this._rawPrevTime = k
4989                    }
4990                    if (!(this._time !== _ && this._first || i || d)) return void(m !== this._totalTime && this._onUpdate && (e || this._onUpdate.apply(this.vars.onUp
vendor: 15,454 bytes, lines 4990-5185
4990dateScope || this, this.vars.onUpdateParams || r)));
4991                    if (this._initted || (this._initted = !0), this._active || !this._paused && this._totalTime !== m && t > 0 && (this._active = !0), 0 === m && this.vars.onStart && 0 !== this._totalTime && (e || this.vars.onStart.apply(this.vars.onStartScope || this, this.vars.onStartParams || r)), this._time >= _)
4992                        for (n = this._first; n && (h = n._next, !this._paused || w);)(n._active || n._startTime <= this._time && !n._paused && !n._gc) && (n._reversed ? n.render((n._dirty ? n.totalDuration() : n._totalDuration) - (t - n._startTime) * n._timeScale, e, i) : n.render((t - n._startTime) * n._timeScale, e, i)), n = h;
4993                    else
4994                        for (n = this._last; n && (h = n._prev, !this._paused || w);)(n._active || _ >= n._startTime && !n._paused && !n._gc) && (n._reversed ? n.render((n._dirty ? n.totalDuration() : n._totalDuration) - (t - n._startTime) * n._timeScale, e, i) : n.render((t - n._startTime) * n._timeScale, e, i)), n = h;
4995                    this._onUpdate && (e || (o.length && l(), this._onUpdate.apply(this.vars.onUpdateScope || this, this.vars.onUpdateParams || r))), u && (this._locked || this._gc || (g === this._startTime || v !== this._timeScale) && (0 === this._time || f >= this.totalDuration()) && (a && (o.length && l(), this._timeline.autoRemoveChildren && this._enabled(!1, !1), this._active = !1), !e && this.vars[u] && this.vars[u].apply(this.vars[u + "Scope"] || this, this.vars[u + "Params"] || r)))
4996                }, u.getActive = function(t, e, i) {
4997                    null == t && (t = !0), null == e && (e = !0), null == i && (i = !1);
4998                    var n, s, r = [],
4999                        a = this.getChildren(t, e, i),
5000                        o = 0,
5001                        l = a.length;
5002                    for (n = 0; l > n; n++) s = a[n], s.isActive() && (r[o++] = s);
5003                    return r
5004                }, u.getLabelAfter = function(t) {
5005                    t || 0 !== t && (t = this._time);
5006                    var e, i = this.getLabelsArray(),
5007                        n = i.length;
5008                    for (e = 0; n > e; e++)
5009                        if (i[e].time > t) return i[e].name;
5010                    return null
5011                }, u.getLabelBefore = function(t) {
5012                    null == t && (t = this._time);
5013                    for (var e = this.getLabelsArray(), i = e.length; --i > -1;)
5014                        if (t > e[i].time) return e[i].name;
5015                    return null
5016                }, u.getLabelsArray = function() {
5017                    var t, e = [],
5018                        i = 0;
5019                    for (t in this._labels) e[i++] = {
5020                        time: this._labels[t],
5021                        name: t
5022                    };
5023                    return e.sort(function(t, e) {
5024                        return t.time - e.time
5025                    }), e
5026                }, u.progress = function(t, e) {
5027                    return arguments.length ? this.totalTime(this.duration() * (this._yoyo && 0 !== (1 & this._cycle) ? 1 - t : t) + this._cycle * (this._duration + this._repeatDelay), e) : this._time / this.duration()
5028                }, u.totalProgress = function(t, e) {
5029                    return arguments.length ? this.totalTime(this.totalDuration() * t, e) : this._totalTime / this.totalDuration()
5030                }, u.totalDuration = function(e) {
5031                    return arguments.length ? -1 === this._repeat ? this : this.duration((e - this._repeat * this._repeatDelay) / (this._repeat + 1)) : (this._dirty && (t.prototype.totalDuration.call(this), this._totalDuration = -1 === this._repeat ? 999999999999 : this._duration * (this._repeat + 1) + this._repeatDelay * this._repeat), this._totalDuration)
5032                }, u.time = function(t, e) {
5033                    return arguments.length ? (this._dirty && this.totalDuration(), t > this._duration && (t = this._duration), this._yoyo && 0 !== (1 & this._cycle) ? t = this._duration - t + this._cycle * (this._duration + this._repeatDelay) : 0 !== this._repeat && (t += this._cycle * (this._duration + this._repeatDelay)), this.totalTime(t, e)) : this._time
5034                }, u.repeat = function(t) {
5035                    return arguments.length ? (this._repeat = t, this._uncache(!0)) : this._repeat
5036                }, u.repeatDelay = function(t) {
5037                    return arguments.length ? (this._repeatDelay = t, this._uncache(!0)) : this._repeatDelay
5038                }, u.yoyo = function(t) {
5039                    return arguments.length ? (this._yoyo = t, this) : this._yoyo
5040                }, u.currentLabel = function(t) {
5041                    return arguments.length ? this.seek(t, !0) : this.getLabelBefore(this._time + 1e-8)
5042                }, n
5043            }, !0),
5044            function() {
5045                var t = 180 / Math.PI,
5046                    e = [],
5047                    i = [],
5048                    n = [],
5049                    s = {},
5050                    r = _gsScope._gsDefine.globals,
5051                    a = function(t, e, i, n) {
5052                        this.a = t, this.b = e, this.c = i, this.d = n, this.da = n - t, this.ca = i - t, this.ba = e - t
5053                    },
5054                    o = ",x,y,z,left,top,right,bottom,marginTop,marginLeft,marginRight,marginBottom,paddingLeft,paddingTop,paddingRight,paddingBottom,backgroundPosition,backgroundPosition_y,",
5055                    l = function(t, e, i, n) {
5056                        var s = {
5057                                a: t
5058                            },
5059                            r = {},
5060                            a = {},
5061                            o = {
5062                                c: n
5063                            },
5064                            l = (t + e) / 2,
5065                            h = (e + i) / 2,
5066                            u = (i + n) / 2,
5067                            d = (l + h) / 2,
5068                            c = (h + u) / 2,
5069                            f = (c - d) / 8;
5070                        return s.b = l + (t - l) / 4, r.b = d + f, s.c = r.a = (s.b + r.b) / 2, r.c = a.a = (d + c) / 2, a.b = c - f, o.b = u + (n - u) / 4, a.c = o.a = (a.b + o.b) / 2, [s, r, a, o]
5071                    },
5072                    h = function(t, s, r, a, o) {
5073                        var h, u, d, c, f, p, _, m, g, v, y, w, b, T = t.length - 1,
5074                            x = 0,
5075                            S = t[0].a;
5076                        for (h = 0; T > h; h++) f = t[x], u = f.a, d = f.d, c = t[x + 1].d, o ? (y = e[h], w = i[h], b = .25 * (w + y) * s / (a ? .5 : n[h] || .5), p = d - (d - u) * (a ? .5 * s : 0 !== y ? b / y : 0), _ = d + (c - d) * (a ? .5 * s : 0 !== w ? b / w : 0), m = d - (p + ((_ - p) * (3 * y / (y + w) + .5) / 4 || 0))) : (p = d - .5 * (d - u) * s, _ = d + .5 * (c - d) * s, m = d - (p + _) / 2), p += m, _ += m, f.c = g = p, f.b = 0 !== h ? S : S = f.a + .6 * (f.c - f.a), f.da = d - u, f.ca = g - u, f.ba = S - u, r ? (v = l(u, S, g, d), t.splice(x, 1, v[0], v[1], v[2], v[3]), x += 4) : x++, S = _;
5077                        f = t[x], f.b = S, f.c = S + .4 * (f.d - S), f.da = f.d - f.a, f.ca = f.c - f.a, f.ba = S - f.a, r && (v = l(f.a, S, f.c, f.d), t.splice(x, 1, v[0], v[1], v[2], v[3]))
5078                    },
5079                    u = function(t, n, s, r) {
5080                        var o, l, h, u, d, c, f = [];
5081                        if (r)
5082                            for (t = [r].concat(t), l = t.length; --l > -1;) "string" == typeof(c = t[l][n]) && "=" === c.charAt(1) && (t[l][n] = r[n] + Number(c.charAt(0) + c.substr(2)));
5083                        if (o = t.length - 2, 0 > o) return f[0] = new a(t[0][n], 0, 0, t[-1 > o ? 0 : 1][n]), f;
5084                        for (l = 0; o > l; l++) h = t[l][n], u = t[l + 1][n], f[l] = new a(h, 0, 0, u), s && (d = t[l + 2][n], e[l] = (e[l] || 0) + (u - h) * (u - h), i[l] = (i[l] || 0) + (d - u) * (d - u));
5085                        return f[l] = new a(t[l][n], 0, 0, t[l + 1][n]), f
5086                    },
5087                    d = function(t, r, a, l, d, c) {
5088                        var f, p, _, m, g, v, y, w, b = {},
5089                            T = [],
5090                            x = c || t[0];
5091                        d = "string" == typeof d ? "," + d + "," : o, null == r && (r = 1);
5092                        for (p in t[0]) T.push(p);
5093                        if (t.length > 1) {
5094                            for (w = t[t.length - 1], y = !0, f = T.length; --f > -1;)
5095                                if (p = T[f], Math.abs(x[p] - w[p]) > .05) {
5096                                    y = !1;
5097                                    break
5098                                } y && (t = t.concat(), c && t.unshift(c), t.push(t[1]), c = t[t.length - 3])
5099                        }
5100                        for (e.length = i.length = n.length = 0, f = T.length; --f > -1;) p = T[f], s[p] = -1 !== d.indexOf("," + p + ","), b[p] = u(t, p, s[p], c);
5101                        for (f = e.length; --f > -1;) e[f] = Math.sqrt(e[f]), i[f] = Math.sqrt(i[f]);
5102                        if (!l) {
5103                            for (f = T.length; --f > -1;)
5104                                if (s[p])
5105                                    for (_ = b[T[f]], v = _.length - 1, m = 0; v > m; m++) g = _[m + 1].da / i[m] + _[m].da / e[m], n[m] = (n[m] || 0) + g * g;
5106                            for (f = n.length; --f > -1;) n[f] = Math.sqrt(n[f])
5107                        }
5108                        for (f = T.length, m = a ? 4 : 1; --f > -1;) p = T[f], _ = b[p], h(_, r, a, l, s[p]), y && (_.splice(0, m), _.splice(_.length - m, m));
5109                        return b
5110                    },
5111                    c = function(t, e, i) {
5112                        e = e || "soft";
5113                        var n, s, r, o, l, h, u, d, c, f, p, _ = {},
5114                            m = "cubic" === e ? 3 : 2,
5115                            g = "soft" === e,
5116                            v = [];
5117                        if (g && i && (t = [i].concat(t)), null == t || m + 1 > t.length) throw "invalid Bezier data";
5118                        for (c in t[0]) v.push(c);
5119                        for (h = v.length; --h > -1;) {
5120                            for (c = v[h], _[c] = l = [], f = 0, d = t.length, u = 0; d > u; u++) n = null == i ? t[u][c] : "string" == typeof(p = t[u][c]) && "=" === p.charAt(1) ? i[c] + Number(p.charAt(0) + p.substr(2)) : Number(p), g && u > 1 && d - 1 > u && (l[f++] = (n + l[f - 2]) / 2), l[f++] = n;
5121                            for (d = f - m + 1, f = 0, u = 0; d > u; u += m) n = l[u], s = l[u + 1], r = l[u + 2], o = 2 === m ? 0 : l[u + 3], l[f++] = p = 3 === m ? new a(n, s, r, o) : new a(n, (2 * s + n) / 3, (2 * s + r) / 3, r);
5122                            l.length = f
5123                        }
5124                        return _
5125                    },
5126                    f = function(t, e, i) {
5127                        for (var n, s, r, a, o, l, h, u, d, c, f, p = 1 / i, _ = t.length; --_ > -1;)
5128                            for (c = t[_], r = c.a, a = c.d - r, o = c.c - r, l = c.b - r, n = s = 0, u = 1; i >= u; u++) h = p * u, d = 1 - h, n = s - (s = (h * h * a + 3 * d * (h * o + d * l)) * h), f = _ * i + u - 1, e[f] = (e[f] || 0) + n * n
5129                    },
5130                    p = function(t, e) {
5131                        e = e >> 0 || 6;
5132                        var i, n, s, r, a = [],
5133                            o = [],
5134                            l = 0,
5135                            h = 0,
5136                            u = e - 1,
5137                            d = [],
5138                            c = [];
5139                        for (i in t) f(t[i], a, e);
5140                        for (s = a.length, n = 0; s > n; n++) l += Math.sqrt(a[n]), r = n % e, c[r] = l, r === u && (h += l, r = n / e >> 0, d[r] = c, o[r] = h, l = 0, c = []);
5141                        return {
5142                            length: h,
5143                            lengths: o,
5144                            segments: d
5145                        }
5146                    },
5147                    _ = _gsScope._gsDefine.plugin({
5148                        propName: "bezier",
5149                        priority: -1,
5150                        version: "1.3.4",
5151                        API: 2,
5152                        global: !0,
5153                        init: function(t, e, i) {
5154                            this._target = t, e instanceof Array && (e = {
5155                                values: e
5156                            }), this._func = {}, this._round = {}, this._props = [], this._timeRes = null == e.timeResolution ? 6 : parseInt(e.timeResolution, 10);
5157                            var n, s, r, a, o, l = e.values || [],
5158                                h = {},
5159                                u = l[0],
5160                                f = e.autoRotate || i.vars.orientToBezier;
5161                            this._autoRotate = f ? f instanceof Array ? f : [
5162                                ["x", "y", "rotation", f === !0 ? 0 : Number(f) || 0]
5163                            ] : null;
5164                            for (n in u) this._props.push(n);
5165                            for (r = this._props.length; --r > -1;) n = this._props[r], this._overwriteProps.push(n), s = this._func[n] = "function" == typeof t[n], h[n] = s ? t[n.indexOf("set") || "function" != typeof t["get" + n.substr(3)] ? n : "get" + n.substr(3)]() : parseFloat(t[n]), o || h[n] !== l[0][n] && (o = h);
5166                            if (this._beziers = "cubic" !== e.type && "quadratic" !== e.type && "soft" !== e.type ? d(l, isNaN(e.curviness) ? 1 : e.curviness, !1, "thruBasic" === e.type, e.correlate, o) : c(l, e.type, h), this._segCount = this._beziers[n].length, this._timeRes) {
5167                                var _ = p(this._beziers, this._timeRes);
5168                                this._length = _.length, this._lengths = _.lengths, this._segments = _.segments, this._l1 = this._li = this._s1 = this._si = 0, this._l2 = this._lengths[0], this._curSeg = this._segments[0], this._s2 = this._curSeg[0], this._prec = 1 / this._curSeg.length
5169                            }
5170                            if (f = this._autoRotate)
5171                                for (this._initialRotations = [], f[0] instanceof Array || (this._autoRotate = f = [f]), r = f.length; --r > -1;) {
5172                                    for (a = 0; 3 > a; a++) n = f[r][a], this._func[n] = "function" == typeof t[n] ? t[n.indexOf("set") || "function" != typeof t["get" + n.substr(3)] ? n : "get" + n.substr(3)] : !1;
5173                                    n = f[r][2], this._initialRotations[r] = this._func[n] ? this._func[n].call(this._target) : this._target[n]
5174                                }
5175                            return this._startRatio = i.vars.runBackwards ? 1 : 0, !0
5176                        },
5177                        set: function(e) {
5178                            var i, n, s, r, a, o, l, h, u, d, c = this._segCount,
5179                                f = this._func,
5180                                p = this._target,
5181                                _ = e !== this._startRatio;
5182                            if (this._timeRes) {
5183                                if (u = this._lengths, d = this._curSeg,
5184                                    e *= this._length, s = this._li, e > this._l2 && c - 1 > s) {
5185                                    for (h = c - 1; h > s && e >= (this._l2 = u[++s]););
5186                                    this._l1 = u[s - 1], this._li = s, this._curSeg = d = this._segments[s], this._s2 = d[this._s1 = this._si = 0]
5187                                } else if (this._l1 > e && s > 0) {
5188                                    for (; s > 0 && (this._l1 = u[--s]) >= e;);
5189                                    0 === s && this._l1 > e ? this._l1 = 0 : s++, this._l2 = u[s], this._li = s, this._curSeg = d = this._segments[s], this._s1 = d[(this._si = d.length - 1) - 1] || 0, this._s2 = d[this._si]
5190                                }
5191                                if (i = s, e -= this._l1, s = this._si, e > this._s2 && d.length - 1 > s) {
5192                                    for (h = d.length - 1; h > s && e >= (this._s2 = d[++s]););
5193                                    this._s1 = d[s - 1], this._si = s
5194                                } else if (this._s1 > e && s > 0) {
5195                                    for (; s > 0 && (this._s1 = d[--s]) >= e;);
5196                                    0 === s && this._s1 > e ? this._s1 = 0 : s++, this._s2 = d[s], this._si = s
5197                                }
5198                                o = (s + (e - this._s1) / (this._s2 - this._s1)) * this._prec
5199                            } else i = 0 > e ? 0 : e >= 1 ? c - 1 : c * e >> 0, o = (e - i * (1 / c)) * c;
5200                            for (n = 1 - o, s = this._props.length; --s > -1;) r = this._props[s], a = this._beziers[r][i], l = (o * o * a.da + 3 * n * (o * a.ca + n * a.ba)) * o + a.a, this._round[r] && (l = Math.round(l)), f[r] ? p[r](l) : p[r] = l;
5201                            if (this._autoRotate) {
5202                                var m, g, v, y, w, b, T, x = this._autoRotate;
5203                                for (s = x.length; --s > -1;) r = x[s][2], b = x[s][3] || 0, T = x[s][4] === !0 ? 1 : t, a = this._beziers[x[s][0]], m = this._beziers[x[s][1]], a && m && (a = a[i], m = m[i], g = a.a + (a.b - a.a) * o, y = a.b + (a.c - a.b) * o, g += (y - g) * o, y += (a.c + (a.d - a.c) * o - y) * o, v = m.a + (m.b - m.a) * o, w = m.b + (m.c - m.b) * o, v += (w - v) * o, w += (m.c + (m.d - m.c) * o - w) * o, l = _ ? Math.atan2(w - v, y - g) * T + b : this._initialRotations[s], f[r] ? p[r](l) : p[r] = l)
5204                            }
5205                        }
5206                    }),
5207                    m = _.prototype;
5208                _.bezierThrough = d, _.cubicToQuadratic = l, _._autoCSS = !0, _.quadraticToCubic = function(t, e, i) {
5209                    return new a(t, (2 * e + t) / 3, (2 * e + i) / 3, i)
5210                }, _._cssRegister = function() {
5211                    var t = r.CSSPlugin;
5212                    if (t) {
5213                        var e = t._internals,
5214                            i = e._parseToProxy,
5215                            n = e._setPluginRatio,
5216                            s = e.CSSPropTween;
5217                        e._registerComplexSpecialProp("bezier", {
5218                            parser: function(t, e, r, a, o, l) {
5219                                e instanceof Array && (e = {
5220                                    values: e
5221                                }), l = new _;
5222                                var h, u, d, c = e.values,
5223                                    f = c.length - 1,
5224                                    p = [],
5225                                    m = {};
5226                                if (0 > f) return o;
5227                                for (h = 0; f >= h; h++) d = i(t, c[h], a, o, l, f !== h), p[h] = d.end;
5228                                for (u in e) m[u] = e[u];
5229                                return m.values = p, o = new s(t, "bezier", 0, 0, d.pt, 2), o.data = d, o.plugin = l, o.setRatio = n, 0 === m.autoRotate && (m.autoRotate = !0), !m.autoRotate || m.autoRotate instanceof Array || (h = m.autoRotate === !0 ? 0 : Number(m.autoRotate), m.autoRotate = null != d.end.left ? [
5230                                    ["left", "top", "rotation", h, !1]
5231                                ] : null != d.end.x ? [
5232                                    ["x", "y", "rotation", h, !1]
5233                                ] : !1), m.autoRotate && (a._transform || a._enableTransforms(!1), d.autoRotate = a._target._gsTransform), l._onInitTween(d.proxy, m, a._tween), o
5234                            }
5235                        })
5236                    }
5237                }, m._roundProps = function(t, e) {
5238                    for (var i = this._overwriteProps, n = i.length; --n > -1;)(t[i[n]] || t.bezier || t.bezierThrough) && (this._round[i[n]] = e)
5239                }, m._kill = function(t) {
5240                    var e, i, n = this._props;
5241                    for (e in this._beziers)
5242                        if (e in t)
5243                            for (delete this._beziers[e], delete this._func[e], i = n.length; --i > -1;) n[i] === e && n.splice(i, 1);
5244                    return this._super._kill.call(this, t)
5245                }
5246            }(), _gsScope._gsDefine("plugins.CSSPlugin", ["plugins.TweenPlugin", "TweenLite"], function(t, e) {
5247                var i, n, s, r, a = function() {
5248                        t.call(this, "css"), this._overwriteProps.length = 0, this.setRatio = a.prototype.setRatio
5249                    },
5250                    o = _gsScope._gsDefine.globals,
5251                    l = {},
5252                    h = a.prototype = new t("css");
5253                h.constructor = a, a.version = "1.15.1", a.API = 2, a.defaultTransformPerspective = 0, a.defaultSkewType = "compensated", h = "px", a.suffixMap = {
5254                    top: h,
5255                    right: h,
5256                    bottom: h,
5257                    left: h,
5258                    width: h,
5259                    height: h,
5260                    fontSize: h,
5261                    padding: h,
5262                    margin: h,
5263                    perspective: h,
5264                    lineHeight: ""
5265                };
5266                var u, d, c, f, p, _, m = /(?:\d|\-\d|\.\d|\-\.\d)+/g,
5267                    g = /(?:\d|\-\d|\.\d|\-\.\d|\+=\d|\-=\d|\+=.\d|\-=\.\d)+/g,
vendor: 10,370 bytes, lines 5268-5414
5268                    v = /(?:\+=|\-=|\-|\b)[\d\-\.]+[a-zA-Z0-9]*(?:%|\b)/gi,
5269                    y = /(?![+-]?\d*\.?\d+|[+-]|e[+-]\d+)[^0-9]/g,
5270                    w = /(?:\d|\-|\+|=|#|\.)*/g,
5271                    b = /opacity *= *([^)]*)/i,
5272                    T = /opacity:([^;]*)/i,
5273                    x = /alpha\(opacity *=.+?\)/i,
5274                    S = /^(rgb|hsl)/,
5275                    P = /([A-Z])/g,
5276                    k = /-([a-z])/gi,
5277                    M = /(^(?:url\(\"|url\())|(?:(\"\))$|\)$)/gi,
5278                    D = function(t, e) {
5279                        return e.toUpperCase()
5280                    },
5281                    O = /(?:Left|Right|Width)/i,
5282                    C = /(M11|M12|M21|M22)=[\d\-\.e]+/gi,
5283                    R = /progid\:DXImageTransform\.Microsoft\.Matrix\(.+?\)/i,
5284                    A = /,(?=[^\)]*(?:\(|$))/gi,
5285                    L = Math.PI / 180,
5286                    Y = 180 / Math.PI,
5287                    j = {},
5288                    z = document,
5289                    I = function(t) {
5290                        return z.createElementNS ? z.createElementNS("http://www.w3.org/1999/xhtml", t) : z.createElement(t)
5291                    },
5292                    F = I("div"),
5293                    Q = I("img"),
5294                    W = a._internals = {
5295                        _specialProps: l
5296                    },
5297                    N = navigator.userAgent,
5298                    E = function() {
5299                        var t = N.indexOf("Android"),
5300                            e = I("a");
5301                        return c = -1 !== N.indexOf("Safari") && -1 === N.indexOf("Chrome") && (-1 === t || Number(N.substr(t + 8, 1)) > 3), p = c && 6 > Number(N.substr(N.indexOf("Version/") + 8, 1)), f = -1 !== N.indexOf("Firefox"), (/MSIE ([0-9]{1,}[\.0-9]{0,})/.exec(N) || /Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/.exec(N)) && (_ = parseFloat(RegExp.$1)), e ? (e.style.cssText = "top:1px;opacity:.55;", /^0.55/.test(e.style.opacity)) : !1
5302                    }(),
5303                    G = function(t) {
5304                        return b.test("string" == typeof t ? t : (t.currentStyle ? t.currentStyle.filter : t.style.filter) || "") ? parseFloat(RegExp.$1) / 100 : 1
5305                    },
5306                    U = function(t) {
5307                        window.console && console.log(t)
5308                    },
5309                    H = "",
5310                    X = "",
5311                    V = function(t, e) {
5312                        e = e || F;
5313                        var i, n, s = e.style;
5314                        if (void 0 !== s[t]) return t;
5315                        for (t = t.charAt(0).toUpperCase() + t.substr(1), i = ["O", "Moz", "ms", "Ms", "Webkit"], n = 5; --n > -1 && void 0 === s[i[n] + t];);
5316                        return n >= 0 ? (X = 3 === n ? "ms" : i[n], H = "-" + X.toLowerCase() + "-", X + t) : null
5317                    },
5318                    $ = z.defaultView ? z.defaultView.getComputedStyle : function() {},
5319                    q = a.getStyle = function(t, e, i, n, s) {
5320                        var r;
5321                        return E || "opacity" !== e ? (!n && t.style[e] ? r = t.style[e] : (i = i || $(t)) ? r = i[e] || i.getPropertyValue(e) || i.getPropertyValue(e.replace(P, "-$1").toLowerCase()) : t.currentStyle && (r = t.currentStyle[e]), null == s || r && "none" !== r && "auto" !== r && "auto auto" !== r ? r : s) : G(t)
5322                    },
5323                    B = W.convertToPixels = function(t, i, n, s, r) {
5324                        if ("px" === s || !s) return n;
5325                        if ("auto" === s || !n) return 0;
5326                        var o, l, h, u = O.test(i),
5327                            d = t,
5328                            c = F.style,
5329                            f = 0 > n;
5330                        if (f && (n = -n), "%" === s && -1 !== i.indexOf("border")) o = n / 100 * (u ? t.clientWidth : t.clientHeight);
5331                        else {
5332                            if (c.cssText = "border:0 solid red;position:" + q(t, "position") + ";line-height:0;", "%" !== s && d.appendChild) c[u ? "borderLeftWidth" : "borderTopWidth"] = n + s;
5333                            else {
5334                                if (d = t.parentNode || z.body, l = d._gsCache, h = e.ticker.frame, l && u && l.time === h) return l.width * n / 100;
5335                                c[u ? "width" : "height"] = n + s
5336                            }
5337                            d.appendChild(F), o = parseFloat(F[u ? "offsetWidth" : "offsetHeight"]), d.removeChild(F), u && "%" === s && a.cacheWidths !== !1 && (l = d._gsCache = d._gsCache || {}, l.time = h, l.width = 100 * (o / n)), 0 !== o || r || (o = B(t, i, n, s, !0))
5338                        }
5339                        return f ? -o : o
5340                    },
5341                    Z = W.calculateOffset = function(t, e, i) {
5342                        if ("absolute" !== q(t, "position", i)) return 0;
5343                        var n = "left" === e ? "Left" : "Top",
5344                            s = q(t, "margin" + n, i);
5345                        return t["offset" + n] - (B(t, e, parseFloat(s), s.replace(w, "")) || 0)
5346                    },
5347                    J = function(t, e) {
5348                        var i, n, s = {};
5349                        if (e = e || $(t, null))
5350                            for (i in e)(-1 === i.indexOf("Transform") || Tt === i) && (s[i] = e[i]);
5351                        else if (e = t.currentStyle || t.style)
5352                            for (i in e) "string" == typeof i && void 0 === s[i] && (s[i.replace(k, D)] = e[i]);
5353                        return E || (s.opacity = G(t)), n = At(t, e, !1), s.rotation = n.rotation, s.skewX = n.skewX, s.scaleX = n.scaleX, s.scaleY = n.scaleY, s.x = n.x, s.y = n.y, Pt && (s.z = n.z, s.rotationX = n.rotationX, s.rotationY = n.rotationY, s.scaleZ = n.scaleZ), s.filters && delete s.filters, s
5354                    },
5355                    K = function(t, e, i, n, s) {
5356                        var r, a, o, l = {},
5357                            h = t.style;
5358                        for (a in i) "cssText" !== a && "length" !== a && isNaN(a) && (e[a] !== (r = i[a]) || s && s[a]) && -1 === a.indexOf("Origin") && ("number" == typeof r || "string" == typeof r) && (l[a] = "auto" !== r || "left" !== a && "top" !== a ? "" !== r && "auto" !== r && "none" !== r || "string" != typeof e[a] || "" === e[a].replace(y, "") ? r : 0 : Z(t, a), void 0 !== h[a] && (o = new ft(h, a, h[a], o)));
5359                        if (n)
5360                            for (a in n) "className" !== a && (l[a] = n[a]);
5361                        return {
5362                            difs: l,
5363                            firstMPT: o
5364                        }
5365                    },
5366                    tt = {
5367                        width: ["Left", "Right"],
5368                        height: ["Top", "Bottom"]
5369                    },
5370                    et = ["marginLeft", "marginRight", "marginTop", "marginBottom"],
5371                    it = function(t, e, i) {
5372                        var n = parseFloat("width" === e ? t.offsetWidth : t.offsetHeight),
5373                            s = tt[e],
5374                            r = s.length;
5375                        for (i = i || $(t, null); --r > -1;) n -= parseFloat(q(t, "padding" + s[r], i, !0)) || 0, n -= parseFloat(q(t, "border" + s[r] + "Width", i, !0)) || 0;
5376                        return n
5377                    },
5378                    nt = function(t, e) {
5379                        (null == t || "" === t || "auto" === t || "auto auto" === t) && (t = "0 0");
5380                        var i = t.split(" "),
5381                            n = -1 !== t.indexOf("left") ? "0%" : -1 !== t.indexOf("right") ? "100%" : i[0],
5382                            s = -1 !== t.indexOf("top") ? "0%" : -1 !== t.indexOf("bottom") ? "100%" : i[1];
5383                        return null == s ? s = "center" === n ? "50%" : "0" : "center" === s && (s = "50%"), ("center" === n || isNaN(parseFloat(n)) && -1 === (n + "").indexOf("=")) && (n = "50%"), e && (e.oxp = -1 !== n.indexOf("%"), e.oyp = -1 !== s.indexOf("%"), e.oxr = "=" === n.charAt(1), e.oyr = "=" === s.charAt(1), e.ox = parseFloat(n.replace(y, "")), e.oy = parseFloat(s.replace(y, ""))), n + " " + s + (i.length > 2 ? " " + i[2] : "")
5384                    },
5385                    st = function(t, e) {
5386                        return "string" == typeof t && "=" === t.charAt(1) ? parseInt(t.charAt(0) + "1", 10) * parseFloat(t.substr(2)) : parseFloat(t) - parseFloat(e)
5387                    },
5388                    rt = function(t, e) {
5389                        return null == t ? e : "string" == typeof t && "=" === t.charAt(1) ? parseInt(t.charAt(0) + "1", 10) * parseFloat(t.substr(2)) + e : parseFloat(t)
5390                    },
5391                    at = function(t, e, i, n) {
5392                        var s, r, a, o, l, h = 1e-6;
5393                        return null == t ? o = e : "number" == typeof t ? o = t : (s = 360, r = t.split("_"), l = "=" === t.charAt(1), a = (l ? parseInt(t.charAt(0) + "1", 10) * parseFloat(r[0].substr(2)) : parseFloat(r[0])) * (-1 === t.indexOf("rad") ? 1 : Y) - (l ? 0 : e), r.length && (n && (n[i] = e + a), -1 !== t.indexOf("short") && (a %= s, a !== a % (s / 2) && (a = 0 > a ? a + s : a - s)), -1 !== t.indexOf("_cw") && 0 > a ? a = (a + 9999999999 * s) % s - (0 | a / s) * s : -1 !== t.indexOf("ccw") && a > 0 && (a = (a - 9999999999 * s) % s - (0 | a / s) * s)), o = e + a), h > o && o > -h && (o = 0), o
5394                    },
5395                    ot = {
5396                        aqua: [0, 255, 255],
5397                        lime: [0, 255, 0],
5398                        silver: [192, 192, 192],
5399                        black: [0, 0, 0],
5400                        maroon: [128, 0, 0],
5401                        teal: [0, 128, 128],
5402                        blue: [0, 0, 255],
5403                        navy: [0, 0, 128],
5404                        white: [255, 255, 255],
5405                        fuchsia: [255, 0, 255],
5406                        olive: [128, 128, 0],
5407                        yellow: [255, 255, 0],
5408                        orange: [255, 165, 0],
5409                        gray: [128, 128, 128],
5410                        purple: [128, 0, 128],
5411                        green: [0, 128, 0],
5412                        red: [255, 0, 0],
5413                        pink: [255, 192, 203],
5414                        cyan: [0, 255, 255],
5415                        transparent: [255, 255, 255, 0]
5416                    },
5417                    lt = function(t, e, i) {
5418                        return t = 0 > t ? t + 1 : t > 1 ? t - 1 : t, 0 | 255 * (1 > 6 * t ? e + 6 * (i - e) * t : .5 > t ? i : 2 > 3 * t ? e + 6 * (i - e) * (2 / 3 - t) : e) + .5
5419                    },
5420                    ht = a.parseColor = function(t) {
5421                        var e, i, n, s, r, a;
5422                        return t && "" !== t ? "number" == typeof t ? [t >> 16, 255 & t >> 8, 255 & t] : ("," === t.charAt(t.length - 1) && (t = t.substr(0, t.length - 1)), ot[t] ? ot[t] : "#" === t.charAt(0) ? (4 === t.length && (e = t.charAt(1), i = t.charAt(2), n = t.charAt(3), t = "#" + e + e + i + i + n + n), t = parseInt(t.substr(1), 16), [t >> 16, 255 & t >> 8, 255 & t]) : "hsl" === t.substr(0, 3) ? (t = t.match(m), s = Number(t[0]) % 360 / 360, r = Number(t[1]) / 100, a = Number(t[2]) / 100, i = .5 >= a ? a * (r + 1) : a + r - a * r, e = 2 * a - i, t.length > 3 && (t[3] = Number(t[3])), t[0] = lt(s + 1 / 3, e, i), t[1] = lt(s, e, i), t[2] = lt(s - 1 / 3, e, i), t) : (t = t.match(m) || ot.transparent, t[0] = Number(t[0]), t[1] = Number(t[1]), t[2] = Number(t[2]), t.length > 3 && (t[3] = Number(t[3])), t)) : ot.black
5423                    },
5424                    ut = "(?:\\b(?:(?:rgb|rgba|hsl|hsla)\\(.+?\\))|\\B#.+?\\b";
5425                for (h in ot) ut += "|" + h + "\\b";
5426                ut = RegExp(ut + ")", "gi");
5427                var dt = function(t, e, i, n) {
5428                        if (null == t) return function(t) {
5429                            return t
5430                        };
5431                        var s, r = e ? (t.match(ut) || [""])[0] : "",
5432                            a = t.split(r).join("").match(v) || [],
5433                            o = t.substr(0, t.indexOf(a[0])),
5434                            l = ")" === t.charAt(t.length - 1) ? ")" : "",
5435                            h = -1 !== t.indexOf(" ") ? " " : ",",
5436                            u = a.length,
5437                            d = u > 0 ? a[0].replace(m, "") : "";
5438                        return u ? s = e ? function(t) {
5439                            var e, c, f, p;
5440                            if ("number" == typeof t) t += d;
5441                            else if (n && A.test(t)) {
5442                                for (p = t.replace(A, "|").split("|"), f = 0; p.length > f; f++) p[f] = s(p[f]);
5443                                return p.join(",")
5444                            }
5445                            if (e = (t.match(ut) || [r])[0], c = t.split(e).join("").match(v) || [], f = c.length, u > f--)
5446                                for (; u > ++f;) c[f] = i ? c[0 | (f - 1) / 2] : a[f];
5447                            return o + c.join(h) + h + e + l + (-1 !== t.indexOf("inset") ? " inset" : "")
5448                        } : function(t) {
5449                            var e, r, c;
5450                            if ("number" == typeof t) t += d;
5451                            else if (n && A.test(t)) {
5452                                for (r = t.replace(A, "|").split("|"), c = 0; r.length > c; c++) r[c] = s(r[c]);
5453                                return r.join(",")
5454                            }
5455                            if (e = t.match(v) || [], c = e.length, u > c--)
5456                                for (; u > ++c;) e[c] = i ? e[0 | (c - 1) / 2] : a[c];
5457                            return o + e.join(h) + l
5458                        } : function(t) {
5459                            return t
5460                        }
5461                    },
5462                    ct = function(t) {
5463                        return t = t.split(","),
5464                            function(e, i, n, s, r, a, o) {
5465                                var l, h = (i + "").split(" ");
5466                                for (o = {}, l = 0; 4 > l; l++) o[t[l]] = h[l] = h[l] || h[(l - 1) / 2 >> 0];
5467                                return s.parse(e, o, r, a)
5468                            }
5469                    },
5470                    ft = (W._setPluginRatio = function(t) {
5471                        this.plugin.setRatio(t);
5472                        for (var e, i, n, s, r = this.data, a = r.proxy, o = r.firstMPT, l = 1e-6; o;) e = a[o.v], o.r ? e = Math.round(e) : l > e && e > -l && (e = 0), o.t[o.p] = e, o = o._next;
5473                        if (r.autoRotate && (r.autoRotate.rotation = a.rotation), 1 === t)
5474                            for (o = r.firstMPT; o;) {
5475                                if (i = o.t, i.type) {
5476                                    if (1 === i.type) {
5477                                        for (s = i.xs0 + i.s + i.xs1, n = 1; i.l > n; n++) s += i["xn" + n] + i["xs" + (n + 1)];
5478                                        i.e = s
5479                                    }
5480                                } else i.e = i.s + i.xs0;
5481                                o = o._next
5482                            }
5483                    }, function(t, e, i, n, s) {
5484                        this.t = t, this.p = e, this.v = i, this.r = s, n && (n._prev = this, this._next = n)
5485                    }),
5486                    pt = (W._parseToProxy = function(t, e, i, n, s, r) {
5487                        var a, o, l, h, u, d = n,
5488                            c = {},
5489                            f = {},
5490                            p = i._transform,
5491                            _ = j;
5492                        for (i._transform = null, j = e, n = u = i.parse(t, e, n, s), j = _, r && (i._transform = p, d && (d._prev = null, d._prev && (d._prev._next = null))); n && n !== d;) {
5493                            if (1 >= n.type && (o = n.p, f[o] = n.s + n.c, c[o] = n.s, r || (h = new ft(n, "s", o, h, n.r), n.c = 0), 1 === n.type))
5494                                for (a = n.l; --a > 0;) l = "xn" + a, o = n.p + "_" + l, f[o] = n.data[l], c[o] = n[l], r || (h = new ft(n, l, o, h, n.rxp[l]));
5495                            n = n._next
5496                        }
5497                        return {
5498                            proxy: c,
5499                            end: f,
5500                            firstMPT: h,
5501                            pt: u
5502                        }
5503                    }, W.CSSPropTween = function(t, e, n, s, a, o, l, h, u, d, c) {
5504                        this.t = t, this.p = e, this.s = n, this.c = s, this.n = l || e, t instanceof pt || r.push(this.n), this.r = h, this.type = o || 0, u && (this.pr = u, i = !0), this.b = void 0 === d ? n : d, this.e = void 0 === c ? n + s : c, a && (this._next = a, a._prev = this)
5505                    }),
5506                    _t = a.parseComplex = function(t, e, i, n, s, r, a, o, l, h) {
5507                        i = i || r || "", a = new pt(t, e, 0, 0, a, h ? 2 : 1, null, !1, o, i, n), n += "";
5508                        var d, c, f, p, _, v, y, w, b, T, x, P, k = i.split(", ").join(",").split(" "),
5509                            M = n.split(", ").join(",").split(" "),
5510                            D = k.length,
5511                            O = u !== !1;
5512                        for ((-1 !== n.indexOf(",") || -1 !== i.indexOf(",")) && (k = k.join(" ").replace(A, ", ").split(" "), M = M.join(" ").replace(A, ", ").split(" "), D = k.length), D !== M.length && (k = (r || "").split(" "), D = k.length), a.plugin = l, a.setRatio = h, d = 0; D > d; d++)
5513                            if (p = k[d], _ = M[d], w = parseFloat(p), w || 0 === w) a.appendXtra("", w, st(_, w), _.replace(g, ""), O && -1 !== _.indexOf("px"), !0);
5514                            else if (s && ("#" === p.charAt(0) || ot[p] || S.test(p))) P = "," === _.charAt(_.length - 1) ? ")," : ")", p = ht(p), _ = ht(_), b = p.length + _.length > 6, b && !E && 0 === _[3] ? (a["xs" + a.l] += a.l ? " transparent" : "transparent", a.e = a.e.split(M[d]).join("transparent")) : (E || (b = !1), a.appendXtra(b ? "rgba(" : "rgb(", p[0], _[0] - p[0], ",", !0, !0).appendXtra("", p[1], _[1] - p[1], ",", !0).appendXtra("", p[2], _[2] - p[2], b ? "," : P, !0), b && (p = 4 > p.length ? 1 : p[3], a.appendXtra("", p, (4 > _.length ? 1 : _[3]) - p, P, !1)));
5515                        else if (v = p.match(m)) {
5516                            if (y = _.match(g), !y || y.length !== v.length) return a;
5517                            for (f = 0, c = 0; v.length > c; c++) x = v[c], T = p.indexOf(x, f), a.appendXtra(p.substr(f, T - f), Number(x), st
vendor: 4,485 bytes, lines 5517-5578
5517(y[c], x), "", O && "px" === p.substr(T + x.length, 2), 0 === c), f = T + x.length;
5518                            a["xs" + a.l] += p.substr(f)
5519                        } else a["xs" + a.l] += a.l ? " " + p : p;
5520                        if (-1 !== n.indexOf("=") && a.data) {
5521                            for (P = a.xs0 + a.data.s, d = 1; a.l > d; d++) P += a["xs" + d] + a.data["xn" + d];
5522                            a.e = P + a["xs" + d]
5523                        }
5524                        return a.l || (a.type = -1, a.xs0 = a.e), a.xfirst || a
5525                    },
5526                    mt = 9;
5527                for (h = pt.prototype, h.l = h.pr = 0; --mt > 0;) h["xn" + mt] = 0, h["xs" + mt] = "";
5528                h.xs0 = "", h._next = h._prev = h.xfirst = h.data = h.plugin = h.setRatio = h.rxp = null, h.appendXtra = function(t, e, i, n, s, r) {
5529                    var a = this,
5530                        o = a.l;
5531                    return a["xs" + o] += r && o ? " " + t : t || "", i || 0 === o || a.plugin ? (a.l++, a.type = a.setRatio ? 2 : 1, a["xs" + a.l] = n || "", o > 0 ? (a.data["xn" + o] = e + i, a.rxp["xn" + o] = s, a["xn" + o] = e, a.plugin || (a.xfirst = new pt(a, "xn" + o, e, i, a.xfirst || a, 0, a.n, s, a.pr), a.xfirst.xs0 = 0), a) : (a.data = {
5532                        s: e + i
5533                    }, a.rxp = {}, a.s = e, a.c = i, a.r = s, a)) : (a["xs" + o] += e + (n || ""), a)
5534                };
5535                var gt = function(t, e) {
5536                        e = e || {}, this.p = e.prefix ? V(t) || t : t, l[t] = l[this.p] = this, this.format = e.formatter || dt(e.defaultValue, e.color, e.collapsible, e.multi), e.parser && (this.parse = e.parser), this.clrs = e.color, this.multi = e.multi, this.keyword = e.keyword, this.dflt = e.defaultValue, this.pr = e.priority || 0
5537                    },
5538                    vt = W._registerComplexSpecialProp = function(t, e, i) {
5539                        "object" != typeof e && (e = {
5540                            parser: i
5541                        });
5542                        var n, s, r = t.split(","),
5543                            a = e.defaultValue;
5544                        for (i = i || [a], n = 0; r.length > n; n++) e.prefix = 0 === n && e.prefix, e.defaultValue = i[n] || a, s = new gt(r[n], e)
5545                    },
5546                    yt = function(t) {
5547                        if (!l[t]) {
5548                            var e = t.charAt(0).toUpperCase() + t.substr(1) + "Plugin";
5549                            vt(t, {
5550                                parser: function(t, i, n, s, r, a, h) {
5551                                    var u = o.com.greensock.plugins[e];
5552                                    return u ? (u._cssRegister(), l[n].parse(t, i, n, s, r, a, h)) : (U("Error: " + e + " js file not loaded."), r)
5553                                }
5554                            })
5555                        }
5556                    };
5557                h = gt.prototype, h.parseComplex = function(t, e, i, n, s, r) {
5558                    var a, o, l, h, u, d, c = this.keyword;
5559                    if (this.multi && (A.test(i) || A.test(e) ? (o = e.replace(A, "|").split("|"), l = i.replace(A, "|").split("|")) : c && (o = [e], l = [i])), l) {
5560                        for (h = l.length > o.length ? l.length : o.length, a = 0; h > a; a++) e = o[a] = o[a] || this.dflt, i = l[a] = l[a] || this.dflt, c && (u = e.indexOf(c), d = i.indexOf(c), u !== d && (i = -1 === d ? l : o, i[a] += " " + c));
5561                        e = o.join(", "), i = l.join(", ")
5562                    }
5563                    return _t(t, this.p, e, i, this.clrs, this.dflt, n, this.pr, s, r)
5564                }, h.parse = function(t, e, i, n, r, a) {
5565                    return this.parseComplex(t.style, this.format(q(t, this.p, s, !1, this.dflt)), this.format(e), r, a)
5566                }, a.registerSpecialProp = function(t, e, i) {
5567                    vt(t, {
5568                        parser: function(t, n, s, r, a, o) {
5569                            var l = new pt(t, s, 0, 0, a, 2, s, !1, i);
5570                            return l.plugin = o, l.setRatio = e(t, n, r._tween, s), l
5571                        },
5572                        priority: i
5573                    })
5574                };
5575                var wt, bt = "scaleX,scaleY,scaleZ,x,y,z,skewX,skewY,rotation,rotationX,rotationY,perspective,xPercent,yPercent".split(","),
5576                    Tt = V("transform"),
5577                    xt = H + "transform",
5578                    St = V("transformOrigin"),
5579                    Pt = null !== V("perspective"),
5580                    kt = W.Transform = function() {
5581                        this.perspective = parseFloat(a.defaultTransformPerspective) || 0, this.force3D = a.defaultForce3D !== !1 && Pt ? a.defaultForce3D || "auto" : !1
5582                    },
5583                    Mt = window.SVGElement,
5584                    Dt = function(t, e, i) {
5585                        var n, s = z.createElementNS("http://www.w3.org/2000/svg", t),
5586                            r = /([a-z])([A-Z])/g;
5587                        for (n in i) s.setAttributeNS(null, n.replace(r, "$1-$2").toLowerCase(), i[n]);
5588                        return e.appendChild(s), s
5589                    },
5590                    Ot = document.documentElement,
5591                    Ct = function() {
5592                        var t, e, i, n = _ || /Android/i.test(N) && !window.chrome;
5593                        return z.createElementNS && !n && (t = Dt("svg", Ot), e = Dt("rect", t, {
5594                            width: 100,
5595                            height: 50,
5596                            x: 100
5597                        }), i = e.getBoundingClientRect().width, e.style[St] = "50% 50%", e.style[Tt] = "scaleX(0.5)", n = i === e.getBoundingClientRect().width && !(f && Pt), Ot.removeChild(t)), n
5598                    }(),
5599                    Rt = function(t, e, i) {
5600                        var n = t.getBBox();
5601                        e = nt(e).split(" "), i.xOrigin = (-1 !== e[0].indexOf("%") ? parseFloat(e[0]) / 100 * n.width : parseFloat(e[0])) + n.x, i.yOrigin = (-1 !== e[1].indexOf("%") ? parseFloat(e[1]) / 100 * n.height : parseFloat(e[1])) + n.y
5602                    },
5603                    At = W.getTransform = function(t, e, i, n) {
5604                        if (t._gsTransform && i && !n) return t._gsTransform;
5605                        var r, o, l, h, u, d, c, f, p, _, m = i ? t._gsTransform || new kt : new kt,
5606                            g = 0 > m.scaleX,
5607                            v = 2e-5,
5608                            y = 1e5,
5609                            w = Pt ? parseFloat(q(t, St, e, !1, "0 0 0").split(" ")[2]) || m.zOrigin || 0 : 0,
5610                            b = parseFloat(a.defaultTransformPerspective) || 0;
5611                        if (Tt ? o = q(t, xt, e, !0) : t.currentStyle && (o = t.currentStyle.filter.match(C), o = o && 4 === o.length ? [o[0].substr(4), Number(o[2].substr(4)), Number(o[1].substr(4)), o[3].substr(4), m.x || 0, m.y || 0].join(",") : ""), r = !o || "none" === o || "matrix(1, 0, 0, 1, 0, 0)" === o, m.svg = !!(Mt && "function" == typeof t.getBBox && t.getCTM && (!t.parentNode || t.parentNode.getBBox && t.parentNode.getCTM)), m.svg && (Rt(t, q(t, St, s, !1, "50% 50%") + "", m), wt = a.useSVGTransformAttr || Ct, l = t.getAttribute("transform"), r && l && -1 !== l.indexOf("matrix") && (
5611o = l, r = 0)), !r) {
5612                            for (l = (o || "").match(/(?:\-|\b)[\d\-\.e]+\b/gi) || [], h = l.length; --h > -1;) u = Number(l[h]), l[h] = (d = u - (u |= 0)) ? (0 | d * y + (0 > d ? -.5 : .5)) / y + u : u;
5613                            if (16 === l.length) {
5614                                var T, x, S, P, k, M = l[0],
5615                                    D = l[1],
5616                                    O = l[2],
5617                                    R = l[3],
5618                                    A = l[4],
5619                                    L = l[5],
5620                                    j = l[6],
5621                                    z = l[7],
5622                                    I = l[8],
5623                                    F = l[9],
5624                                    Q = l[10],
5625                                    W = l[12],
5626                                    N = l[13],
5627                                    E = l[14],
5628                                    G = l[11],
5629                                    U = Math.atan2(j, Q);
5630                                m.zOrigin && (E = -m.zOrigin, W = I * E - l[12], N = F * E - l[13], E = Q * E + m.zOrigin - l[14]), m.rotationX = U * Y, U && (P = Math.cos(-U), k = Math.sin(-U), T = A * P + I * k, x = L * P + F * k, S = j * P + Q * k, I = A * -k + I * P, F = L * -k + F * P, Q = j * -k + Q * P, G = z * -k + G * P, A = T, L = x, j = S), U = Math.atan2(I, Q), m.rotationY = U * Y, U && (P = Math.cos(-U), k = Math.sin(-U), T = M * P - I * k, x = D * P - F * k, S = O * P - Q * k, F = D * k + F * P, Q = O * k + Q * P, G = R * k + G * P, M = T, D = x, O = S), U = Math.atan2(D, M), m.rotation = U * Y, U && (P = Math.cos(-U), k = Math.sin(-U), M = M * P + A * k, x = D * P + L * k, L = D * -k + L * P, j = O * -k + j * P, D = x), m.rotationX && Math.abs(m.rotationX) + Math.abs(m.rotation) > 359.9 && (m.rotationX = m.rotation = 0, m.rotationY += 180), m.scaleX = (0 | Math.sqrt(M * M + D * D) * y + .5) / y, m.scaleY = (0 | Math.sqrt(L * L + F * F) * y + .5) / y, m.scaleZ = (0 | Math.sqrt(j * j + Q * Q) * y + .5) / y, m.skewX = 0, m.perspective = G ? 1 / (0 > G ? -G : G) : 0, m.x = W, m.y = N, m.z = E
5631                            } else if (!(Pt && !n && l.length && m.x === l[4] && m.y === l[5] && (m.rotationX || m.rotationY) || void 0 !== m.x && "none" === q(t, "display", e))) {
5632                                var H = l.length >= 6,
5633                                    X = H ? l[0] : 1,
5634                                    V = l[1] || 0,
5635                                    $ = l[2] || 0,
5636                                    B = H ? l[3] : 1;
5637                                m.x = l[4] || 0, m.y = l[5] || 0, c = Math.sqrt(X * X + V * V), f = Math.sqrt(B * B + $ * $), p = X || V ? Math.atan2(V, X) * Y : m.rotation || 0, _ = $ || B ? Math.atan2($, B) * Y + p : m.skewX || 0, Math.abs(_) > 90 && 270 > Math.abs(_) && (g ? (c *= -1, _ += 0 >= p ? 180 : -180, p += 0 >= p ? 180 : -180) : (f *= -1, _ += 0 >= _ ? 180 : -180)), m.scaleX = c, m.scaleY = f, m.rotation = p, m.skewX = _, Pt && (m.rotationX = m.rotationY = m.z = 0, m.perspective = b, m.scaleZ = 1)
5638                            }
5639                            m.zOrigin = w;
5640                            for (h in m) v > m[h] && m[h] > -v && (m[h] = 0)
5641                        }
5642                        return i && (t._gsTransform = m), m
5643                    },
5644                    Lt = function(t) {
5645                        var e, i, n = this.data,
5646                            s = -n.rotation * L,
5647                            r = s + n.skewX * L,
5648                            a = 1e5,
5649                            o = (0 | Math.cos(s) * n.scaleX * a) / a,
5650                            l = (0 | Math.sin(s) * n.scaleX * a) / a,
5651                            h = (0 | Math.sin(r) * -n.scaleY * a) / a,
5652                            u = (0 | Math.cos(r) * n.scaleY * a) / a,
5653                            d = this.t.style,
5654                            c = this.t.currentStyle;
5655                        if (c) {
5656                            i = l, l = -h, h = -i, e = c.filter, d.filter = "";
5657                            var f, p, m = this.t.offsetWidth,
5658                                g = this.t.offsetHeight,
5659                                v = "absolute" !== c.position,
5660                                y = "progid:DXImageTransform.Microsoft.Matrix(M11=" + o + ", M12=" + l + ", M21=" + h + ", M22=" + u,
5661                                T = n.x + m * n.xPercent / 100,
5662                                x = n.y + g * n.yPercent / 100;
5663                            if (null != n.ox && (f = (n.oxp ? .01 * m * n.ox : n.ox) - m / 2, p = (n.oyp ? .01 * g * n.oy : n.oy) - g / 2, T += f - (f * o + p * l), x += p - (f * h + p * u)), v ? (f = m / 2, p = g / 2, y += ", Dx=" + (f - (f * o + p * l) + T) + ", Dy=" + (p - (f * h + p * u) + x) + ")") : y += ", sizingMethod='auto expand')", d.filter = -1 !== e.indexOf("DXImageTransform.Microsoft.Matrix(") ? e.replace(R, y) : y + " " + e, (0 === t || 1 === t) && 1 === o && 0 === l && 0 === h && 1 === u && (v && -1 === y.indexOf("Dx=0, Dy=0") || b.test(e) && 100 !== parseFloat(RegExp.$1) || -1 === e.indexOf(e.indexOf("Alpha")) && d.removeAttribute("filter")), !v) {
5664                                var S, P, k, M = 8 > _ ? 1 : -1;
5665                                for (f = n.ieOffsetX || 0, p = n.ieOffsetY || 0, n.ieOffsetX = Math.round((m - ((0 > o ? -o : o) * m + (0 > l ? -l : l) * g)) / 2 + T), n.ieOffsetY = Math.round((g - ((0 > u ? -u : u) * g + (0 > h ? -h : h) * m)) / 2 + x), mt = 0; 4 > mt; mt++) P = et[mt], S = c[P], i = -1 !== S.indexOf("px") ? parseFloat(S) : B(this.t, P, parseFloat(S), S.replace(w, "")) || 0, k = i !== n[P] ? 2 > mt ? -n.ieOffsetX : -n.ieOffsetY : 2 > mt ? f - n.ieOffsetX : p - n.ieOffsetY, d[P] = (n[P] = Math.round(i - k * (0 === mt || 2 === mt ? 1 : M))) + "px"
5666                            }
5667                        }
5668                    },
5669                    Yt = W.set3DTransformRatio = function(t) {
5670                        var e, i, n, s, r, a, o, l, h, u, d, c, p, _, m, g, v, y, w, b, T, x = this.data,
5671                            S = this.t.style,
5672                            P = x.rotation * L,
5673                            k = x.scaleX,
5674                            M = x.scaleY,
5675                            D = x.scaleZ,
5676                            O = x.x,
5677                            C = x.y,
5678                            R = x.z,
5679                            A = x.perspective;
5680                        if (!(1 !== t && 0 !== t && x.force3D || x.force3D === !0 || x.rotationY || x.rotationX || 1 !== D || A || R)) return void jt.call(this, t);
5681                        if (f && (_ = 1e-4, _ > k && k > -_ && (k = D = 2e-5), _ > M && M > -_ && (M = D = 2e-5), !A || x.z || x.rotationX || x.rotationY || (A = 0)), P || x.skewX) m = e = Math.
5681cos(P), g = s = Math.sin(P), x.skewX && (P -= x.skewX * L, m = Math.cos(P), g = Math.sin(P), "simple" === x.skewType && (v = Math.tan(x.skewX * L), v = Math.sqrt(1 + v * v), m *= v, g *= v)), i = -g, r = m;
5682                        else {
5683                            if (!(x.rotationY || x.rotationX || 1 !== D || A || x.svg)) return void(S[Tt] = (x.xPercent || x.yPercent ? "translate(" + x.xPercent + "%," + x.yPercent + "%) translate3d(" : "translate3d(") + O + "px," + C + "px," + R + "px)" + (1 !== k || 1 !== M ? " scale(" + k + "," + M + ")" : ""));
5684                            e = r = 1, i = s = 0
5685                        }
5686                        h = 1, n = a = o = l = u = d = 0, c = A ? -1 / A : 0, p = x.zOrigin, _ = 1e-6, b = ",", T = "0", P = x.rotationY * L, P && (m = Math.cos(P), g = Math.sin(P), o = -g, u = c * -g, n = e * g, a = s * g, h = m, c *= m, e *= m, s *= m), P = x.rotationX * L, P && (m = Math.cos(P), g = Math.sin(P), v = i * m + n * g, y = r * m + a * g, l = h * g, d = c * g, n = i * -g + n * m, a = r * -g + a * m, h *= m, c *= m, i = v, r = y), 1 !== D && (n *= D, a *= D, h *= D, c *= D), 1 !== M && (i *= M, r *= M, l *= M, d *= M), 1 !== k && (e *= k, s *= k, o *= k, u *= k), (p || x.svg) && (p && (O += n * -p, C += a * -p, R += h * -p + p), x.svg && (O += x.xOrigin - (x.xOrigin * e + x.yOrigin * i), C += x.yOrigin - (x.xOrigin * s + x.yOrigin * r)), _ > O && O > -_ && (O = T), _ > C && C > -_ && (C = T), _ > R && R > -_ && (R = 0)), w = x.xPercent || x.yPercent ? "translate(" + x.xPercent + "%," + x.yPercent + "%) matrix3d(" : "matrix3d(", w += (_ > e && e > -_ ? T : e) + b + (_ > s && s > -_ ? T : s) + b + (_ > o && o > -_ ? T : o), w += b + (_ > u && u > -_ ? T : u) + b + (_ > i && i > -_ ? T : i) + b + (_ > r && r > -_ ? T : r), x.rotationX || x.rotationY ? (w += b + (_ > l && l > -_ ? T : l) + b + (_ > d && d > -_ ? T : d) + b + (_ > n && n > -_ ? T : n), w += b + (_ > a && a > -_ ? T : a) + b + (_ > h && h > -_ ? T : h) + b + (_ > c && c > -_ ? T : c) + b) : w += ",0,0,0,0,1,0,", w += O + b + C + b + R + b + (A ? 1 + -R / A : 1) + ")", S[Tt] = w
5687                    },
5688                    jt = W.set2DTransformRatio = function(t) {
5689                        var e, i, n, s, r, a, o, l, h, u, d, c = this.data,
5690                            f = this.t,
5691                            p = f.style,
5692                            _ = c.x,
5693                            m = c.y;
5694                        return !(c.rotationX || c.rotationY || c.z || c.force3D === !0 || "auto" === c.force3D && 1 !== t && 0 !== t) || c.svg && wt || !Pt ? (s = c.scaleX, r = c.scaleY, void(c.rotation || c.skewX || c.svg ? (e = c.rotation * L, i = e - c.skewX * L, n = 1e5, a = Math.cos(e) * s, o = Math.sin(e) * s, l = Math.sin(i) * -r, h = Math.cos(i) * r, c.svg && (_ += c.xOrigin - (c.xOrigin * a + c.yOrigin * l), m += c.yOrigin - (c.xOrigin * o + c.yOrigin * h), d = 1e-6, d > _ && _ > -d && (_ = 0), d > m && m > -d && (m = 0)), u = (0 | a * n) / n + "," + (0 | o * n) / n + "," + (0 | l * n) / n + "," + (0 | h * n) / n + "," + _ + "," + m + ")", c.svg && wt ? f.setAttribute("transform", "matrix(" 
5694+ u) : p[Tt] = (c.xPercent || c.yPercent ? "translate(" + c.xPercent + "%," + c.yPercent + "%) matrix(" : "matrix(") + u) : p[Tt] = (c.xPercent || c.yPercent ? "translate(" + c.xPercent + "%," + c.yPercent + "%) matrix(" : "matrix(") + s + ",0,0," + r + "," + _ + "," + m + ")")) : (this.setRatio = Yt, void Yt.call(this, t))
5695                    };
5696                h = kt.prototype, h.x = h.y = h.z = h.skewX = h.skewY = h.rotation = h.rotationX = h.rotationY = h.zOrigin = h.xPercent = h.yPercent = 0, h.scaleX = h.scaleY = h.scaleZ = 1, vt("transform,scale,scaleX,scaleY,scaleZ,x,y,z,rotation,rotationX,rotationY,rotationZ,skewX,skewY,shortRotation,shortRotationX,shortRotationY,shortRotationZ,transformOrigin,transformPerspective,directionalRotation,parseTransform,force3D,skewType,xPercent,yPercent", {
5697                    parser: function(t, e, i, n, r, o, l) {
5698                        if (n._lastParsedTransform === l) return r;
5699                        n._lastParsedTransform = l;
5700                        var h, u, d, c, f, p, _, m = n._transform = At(t, s, !0, l.parseTransform),
5701                            g = t.style,
5702                            v = 1e-6,
5703                            y = bt.length,
5704                            w = l,
5705                            b = {};
5706                        if ("string" == typeof w.transform && Tt) d = F.style, d[Tt] = w.transform, d.display = "block", d.position = "absolute", z.body.appendChild(F), h = At(F, null, !1), z.body.removeChild(F);
5707                        else if ("object" == typeof w) {
5708                            if (h = {
5709                                    scaleX: rt(null != w.scaleX ? w.scaleX : w.scale, m.scaleX),
5710                                    scaleY: rt(null != w.scaleY ? w.scaleY : w.scale, m.scaleY),
5711                                    scaleZ: rt(w.scaleZ, m.scaleZ),
5712                                    x: rt(w.x, m.x),
5713                                    y: rt(w.y, m.y),
5714                                    z: rt(w.z, m.z),
5715                                    xPercent: rt(w.xPercent, m.xPercent),
5716                                    yPercent: rt(w.yPercent, m.yPercent),
5717                                    perspective: rt(w.transformPerspective, m.perspective)
5718                                }, _ = w.directionalRotation, null != _)
5719                                if ("object" == typeof _)
5720                                    for (d in _) w[d] = _[d];
5721                                else w.rotation = _;
5722                            "string" == typeof w.x && -1 !== w.x.indexOf("%") && (h.x = 0, h.xPercent = rt(w.x, m.xPercent)), "string" == typeof w.y && -1 !== w.y.indexOf("%") && (h.y = 0, h.yPercent = rt(w.y, m.yPercent)), h.rotation = at("rotation" in w ? w.rotation : "shortRotation" in w ? w.shortRotation + "_short" : "rotationZ" in w ? w.rotationZ : m.rotation, m.rotation, "rotation", b), Pt && (h.rotationX = at("rotationX" in w ? w.rotationX : "shortRotationX" in w ? w.shortRotationX + "_short" : m.rotationX || 0, m.rotationX, "rotationX", b), h.rotationY = at("rotationY" in w ? w.rotationY : "shortRotationY" in w ? w.shortRotationY + "_short" : m.rotationY || 0, m.rotationY, "rotationY", b)), h.skewX = null == w.skewX ? m.skewX : at(w.skewX, m.skewX), h.skewY = null == w.skewY ? m.skewY : at(w.skewY, m.skewY), (u = h.skewY - m.skewY) && (h.skewX += u, h.rotation += u)
5723                        }
5724                        for (Pt && null != w.force3D && (m.force3D = w.force3D, p = !0), m.skewType = w.skewType || m.skewType || a.defaultSkewType, f = m.force3D || m.z || m.rotationX || m.rotationY || h.z || h.rotationX || h.rotationY || h.perspective, f || null == w.scale || (h.scaleZ = 1); --y > -1;) i = bt[y], c = h[i] - m[i], (c > v || -v > c || null != w[i] || null != j[i]) && (p = !0, r = new pt(m, i, m[i], c, r), i in b && (r.e = b[i]), r.xs0 = 0, r.plugin = o, n._overwriteProps.push(r.n));
5725                        return c = w.transformOrigin, c && m.svg && (Rt(t, nt(c), h), r = new pt(m, "xOrigin", m.xOrigin, h.xOrigin - m.xOrigin, r, -1, "transformOrigin"), r.b = m.xOrigin, r.e = r.xs0 = h.xOrigin, r = new pt(m, "yOrigin", m.yOrigin, h.yOrigin - m.yOrigin, r, -1, "transformOrigin"), r.b = m.yOrigin, r.e = r.xs0 = h.yOrigin, c = "0px 0px"), (c || Pt && f && m.zOrigin) && (Tt ? (p = !0, i = St, c = (c || q(t, i, s, !1, "50% 50%")) + "", r = new pt(g, i, 0, 0, r, -1, "transformOrigin"), r.b = g[i], r.plugin = o, Pt ? (d = m.zOrigin, c = c.split(" "), m.zOrigin = (c.length > 2 && (0 === d || "0px" !== c[2]) ? parseFloat(c[2]) : d) || 0, r.xs0 = r.e = c[0] + " " + (c[1] || "50%") + " 0px", r = new pt(m, "zOrigin", 0, 0, r, -1, r.n), r.b = d, r.xs0 = r.e = m.zOrigin) : r.xs0 = r.e = c) : nt(c + "", m)), p && (n._transformType = m.
vendor: 18,345 bytes, lines 5725-5941
5725svg && wt || !f && 3 !== this._transformType ? 2 : 3), r
5726                    },
5727                    prefix: !0
5728                }), vt("boxShadow", {
5729                    defaultValue: "0px 0px 0px 0px #999",
5730                    prefix: !0,
5731                    color: !0,
5732                    multi: !0,
5733                    keyword: "inset"
5734                }), vt("borderRadius", {
5735                    defaultValue: "0px",
5736                    parser: function(t, e, i, r, a) {
5737                        e = this.format(e);
5738                        var o, l, h, u, d, c, f, p, _, m, g, v, y, w, b, T, x = ["borderTopLeftRadius", "borderTopRightRadius", "borderBottomRightRadius", "borderBottomLeftRadius"],
5739                            S = t.style;
5740                        for (_ = parseFloat(t.offsetWidth), m = parseFloat(t.offsetHeight), o = e.split(" "), l = 0; x.length > l; l++) this.p.indexOf("border") && (x[l] = V(x[l])), d = u = q(t, x[l], s, !1, "0px"), -1 !== d.indexOf(" ") && (u = d.split(" "), d = u[0], u = u[1]), c = h = o[l], f = parseFloat(d), v = d.substr((f + "").length), y = "=" === c.charAt(1), y ? (p = parseInt(c.charAt(0) + "1", 10), c = c.substr(2), p *= parseFloat(c), g = c.substr((p + "").length - (0 > p ? 1 : 0)) || "") : (p = parseFloat(c), g = c.substr((p + "").length)), "" === g && (g = n[i] || v), g !== v && (w = B(t, "borderLeft", f, v), b = B(t, "borderTop", f, v), "%" === g ? (d = 100 * (w / _) + "%", u = 100 * (b / m) + "%") : "em" === g ? (T = B(t, "borderLeft", 1, "em"), d = w / T + "em", u = b / T + "em") : (d = w + "px", u = b + "px"), y && (c = parseFloat(d) + p + g, h = parseFloat(u) + p + g)), a = _t(S, x[l], d + " " + u, c + " " + h, !1, "0px", a);
5741                        return a
5742                    },
5743                    prefix: !0,
5744                    formatter: dt("0px 0px 0px 0px", !1, !0)
5745                }), vt("backgroundPosition", {
5746                    defaultValue: "0 0",
5747                    parser: function(t, e, i, n, r, a) {
5748                        var o, l, h, u, d, c, f = "background-position",
5749                            p = s || $(t, null),
5750                            m = this.format((p ? _ ? p.getPropertyValue(f + "-x") + " " + p.getPropertyValue(f + "-y") : p.getPropertyValue(f) : t.currentStyle.backgroundPositionX + " " + t.currentStyle.backgroundPositionY) || "0 0"),
5751                            g = this.format(e);
5752                        if (-1 !== m.indexOf("%") != (-1 !== g.indexOf("%")) && (c = q(t, "backgroundImage").replace(M, ""), c && "none" !== c)) {
5753                            for (o = m.split(" "), l = g.split(" "), Q.setAttribute("src", c), h = 2; --h > -1;) m = o[h], u = -1 !== m.indexOf("%"), u !== (-1 !== l[h].indexOf("%")) && (d = 0 === h ? t.offsetWidth - Q.width : t.offsetHeight - Q.height, o[h] = u ? parseFloat(m) / 100 * d + "px" : 100 * (parseFloat(m) / d) + "%");
5754                            m = o.join(" ")
5755                        }
5756                        return this.parseComplex(t.style, m, g, r, a)
5757                    },
5758                    formatter: nt
5759                }), vt("backgroundSize", {
5760                    defaultValue: "0 0",
5761                    formatter: nt
5762                }), vt("perspective", {
5763                    defaultValue: "0px",
5764                    prefix: !0
5765                }), vt("perspectiveOrigin", {
5766                    defaultValue: "50% 50%",
5767                    prefix: !0
5768                }), vt("transformStyle", {
5769                    prefix: !0
5770                }), vt("backfaceVisibility", {
5771                    prefix: !0
5772                }), vt("userSelect", {
5773                    prefix: !0
5774                }), vt("margin", {
5775                    parser: ct("marginTop,marginRight,marginBottom,marginLeft")
5776                }), vt("padding", {
5777                    parser: ct("paddingTop,paddingRight,paddingBottom,paddingLeft")
5778                }), vt("clip", {
5779                    defaultValue: "rect(0px,0px,0px,0px)",
5780                    parser: function(t, e, i, n, r, a) {
5781                        var o, l, h;
5782                        return 9 > _ ? (l = t.currentStyle, h = 8 > _ ? " " : ",", o = "rect(" + l.clipTop + h + l.clipRight + h + l.clipBottom + h + l.clipLeft + ")", e = this.format(e).split(",").join(h)) : (o = this.format(q(t, this.p, s, !1, this.dflt)), e = this.format(e)), this.parseComplex(t.style, o, e, r, a)
5783                    }
5784                }), vt("textShadow", {
5785                    defaultValue: "0px 0px 0px #999",
5786                    color: !0,
5787                    multi: !0
5788                }), vt("autoRound,strictUnits", {
5789                    parser: function(t, e, i, n, s) {
5790                        return s
5791                    }
5792                }), vt("border", {
5793                    defaultValue: "0px solid #000",
5794                    parser: function(t, e, i, n, r, a) {
5795                        return this.parseComplex(t.style, this.format(q(t, "borderTopWidth", s, !1, "0px") + " " + q(t, "borderTopStyle", s, !1, "solid") + " " + q(t, "borderTopColor", s, !1, "#000")), this.format(e), r, a)
5796                    },
5797                    color: !0,
5798                    formatter: function(t) {
5799                        var e = t.split(" ");
5800                        return e[0] + " " + (e[1] || "solid") + " " + (t.match(ut) || ["#000"])[0]
5801                    }
5802                }), vt("borderWidth", {
5803                    parser: ct("borderTopWidth,borderRightWidth,borderBottomWidth,borderLeftWidth")
5804                }), vt("float,cssFloat,styleFloat", {
5805                    parser: function(t, e, i, n, s) {
5806                        var r = t.style,
5807                            a = "cssFloat" in r ? "cssFloat" : "styleFloat";
5808                        return new pt(r, a, 0, 0, s, -1, i, !1, 0, r[a], e)
5809                    }
5810                });
5811                var zt = function(t) {
5812                    var e, i = this.t,
5813                        n = i.filter || q(this.data, "filter") || "",
5814                        s = 0 | this.s + this.c * t;
5815                    100 === s && (-1 === n.indexOf("atrix(") && -1 === n.indexOf("radient(") && -1 === n.indexOf("oader(") ? (i.removeAttribute("filter"), e = !q(this.data, "filter")) : (i.filter = n.replace(x, ""), e = !0)), e || (this.xn1 && (i.filter = n = n || "alpha(opacity=" + s + ")"), -1 === n.indexOf("pacity") ? 0 === s && this.xn1 || (i.filter = n + " alpha(opacity=" + s + ")") : i.filter = n.replace(b, "opacity=" + s))
5816                };
5817                vt("opacity,alpha,autoAlpha", {
5818                    defaultValue: "1",
5819                    parser: function(t, e, i, n, r, a) {
5820                        var o = parseFloat(q(t, "opacity", s, !1, "1")),
5821                            l = t.style,
5822                            h = "autoAlpha" === i;
5823                        return "string" == typeof e && "=" === e.charAt(1) && (e = ("-" === e.charAt(0) ? -1 : 1) * parseFloat(e.substr(2)) + o), h && 1 === o && "hidden" === q(t, "visibility", s) && 0 !== e && (o = 0), E ? r = new pt(l, "opacity", o, e - o, r) : (r = new pt(l, "opacity", 100 * o, 100 * (e - o), r), r.xn1 = h ? 1 : 0, l.zoom = 1, r.type = 2, r.b = "alpha(opacity=" + r.s + ")", r.e = "alpha(opacity=" + (r.s + r.c) + ")", r.data = t, r.plugin = a, r.setRatio = zt), h && (r = new pt(l, "visibility", 0, 0, r, -1, null, !1, 0, 0 !== o ? "inherit" : "hidden", 0 === e ? "hidden" : "inherit"), r.xs0 = "inherit", n._overwriteProps.push(r.n), n._overwriteProps.push(i)), r
5824                    }
5825                });
5826                var It = function(t, e) {
5827                        e && (t.removeProperty ? ("ms" === e.substr(0, 2) && (e = "M" + e.substr(1)), t.removeProperty(e.replace(P, "-$1").toLowerCase())) : t.removeAttribute(e))
5828                    },
5829                    Ft = function(t) {
5830                        if (this.t._gsClassPT = this, 1 === t || 0 === t) {
5831                            this.t.setAttribute("class", 0 === t ? this.b : this.e);
5832                            for (var e = this.data, i = this.t.style; e;) e.v ? i[e.p] = e.v : It(i, e.p), e = e._next;
5833                            1 === t && this.t._gsClassPT === this && (this.t._gsClassPT = null)
5834                        } else this.t.getAttribute("class") !== this.e && this.t.setAttribute("class", this.e)
5835                    };
5836                vt("className", {
5837                    parser: function(t, e, n, r, a, o, l) {
5838                        var h, u, d, c, f, p = t.getAttribute("class") || "",
5839                            _ = t.style.cssText;
5840                        if (a = r._classNamePT = new pt(t, n, 0, 0, a, 2), a.setRatio = Ft, a.pr = -11, i = !0, a.b = p, u = J(t, s), d = t._gsClassPT) {
5841                            for (c = {}, f = d.data; f;) c[f.p] = 1, f = f._next;
5842                            d.setRatio(1)
5843                        }
5844                        return t._gsClassPT = a, a.e = "=" !== e.charAt(1) ? e : p.replace(RegExp("\\s*\\b" + e.substr(2) + "\\b"), "") + ("+" === e.charAt(0) ? " " + e.substr(2) : ""), r._tween._duration && (t.setAttribute("class", a.e), h = K(t, u, J(t), l, c), t.setAttribute("class", p), a.data = h.firstMPT, t.style.cssText = _, a = a.xfirst = r.parse(t, h.difs, a, o)), a
5845                    }
5846                });
5847                var Qt = function(t) {
5848                    if ((1 === t || 0 === t) && this.data._totalTime === this.data._totalDuration && "isFromStart" !== this.data.data) {
5849                        var e, i, n, s, r = this.t.style,
5850                            a = l.transform.parse;
5851                        if ("all" === this.e) r.cssText = "", s = !0;
5852                        else
5853                            for (e = this.e.split(" ").join("").split(","), n = e.length; --n > -1;) i = e[n],
5854                                l[i] && (l[i].parse === a ? s = !0 : i = "transformOrigin" === i ? St : l[i].p), It(r, i);
5855                        s && (It(r, Tt), this.t._gsTransform && delete this.t._gsTransform)
5856                    }
5857                };
5858                for (vt("clearProps", {
5859                        parser: function(t, e, n, s, r) {
5860                            return r = new pt(t, n, 0, 0, r, 2), r.setRatio = Qt, r.e = e, r.pr = -10, r.data = s._tween, i = !0, r
5861                        }
5862                    }), h = "bezier,throwProps,physicsProps,physics2D".split(","), mt = h.length; mt--;) yt(h[mt]);
5863                h = a.prototype, h._firstPT = h._lastParsedTransform = h._transform = null, h._onInitTween = function(t, e, o) {
5864                    if (!t.nodeType) return !1;
5865                    this._target = t, this._tween = o, this._vars = e, u = e.autoRound, i = !1, n = e.suffixMap || a.suffixMap, s = $(t, ""), r = this._overwriteProps;
5866                    var l, h, f, _, m, g, v, y, w, b = t.style;
5867                    if (d && "" === b.zIndex && (l = q(t, "zIndex", s), ("auto" === l || "" === l) && this._addLazySet(b, "zIndex", 0)), "string" == typeof e && (_ = b.cssText, l = J(t, s), b.cssText = _ + ";" + e, l = K(t, l, J(t)).difs, !E && T.test(e) && (l.opacity = parseFloat(RegExp.$1)), e = l, b.cssText = _), this._firstPT = h = this.parse(t, e, null), this._transformType) {
5868                        for (w = 3 === this._transformType, Tt ? c && (d = !0, "" === b.zIndex && (v = q(t, "zIndex", s), ("auto" === v || "" === v) && this._addLazySet(b, "zIndex", 0)), p && this._addLazySet(b, "WebkitBackfaceVisibility", this._vars.WebkitBackfaceVisibility || (w ? "visible" : "hidden"))) : b.zoom = 1, f = h; f && f._next;) f = f._next;
5869                        y = new pt(t, "transform", 0, 0, null, 2), this._linkCSSP(y, null, f), y.setRatio = w && Pt ? Yt : Tt ? jt : Lt, y.data = this._transform || At(t, s, !0), r.pop()
5870                    }
5871                    if (i) {
5872                        for (; h;) {
5873                            for (g = h._next, f = _; f && f.pr > h.pr;) f = f._next;
5874                            (h._prev = f ? f._prev : m) ? h._prev._next = h: _ = h, (h._next = f) ? f._prev = h : m = h, h = g
5875                        }
5876                        this._firstPT = _
5877                    }
5878                    return !0
5879                }, h.parse = function(t, e, i, r) {
5880                    var a, o, h, d, c, f, p, _, m, g, v = t.style;
5881                    for (a in e) f = e[a], o = l[a], o ? i = o.parse(t, f, a, this, i, r, e) : (c = q(t, a, s) + "", m = "string" == typeof f, "color" === a || "fill" === a || "stroke" === a || -1 !== a.indexOf("Color") || m && S.test(f) ? (m || (f = ht(f), f = (f.length > 3 ? "rgba(" : "rgb(") + f.join(",") + ")"), i = _t(v, a, c, f, !0, "transparent", i, 0, r)) : !m || -1 === f.indexOf(" ") && -1 === f.indexOf(",") ? (h = parseFloat(c), p = h || 0 === h ? c.substr((h + "").length) : "", ("" === c || "auto" === c) && ("width" === a || "height" === a ? (h = it(t, a, s), p = "px") : "left" === a || "top" === a ? (h = Z(t, a, s), p = "px") : (h = "opacity" !== a ? 0 : 1, p = "")), g = m && "=" === f.charAt(1), g ? (d = parseInt(f.charAt(0) + "1", 10), f = f.substr(2), d *= parseFloat(f), _ = f.replace(w, "")) : (d = parseFloat(f), _ = m ? f.replace(w, "") : ""), "" === _ && (_ = a in n ? n[a] : p), f = d || 0 === d ? (g ? d + h : d) + _ : e[a], p !== _ && "" !== _ && (d || 0 === d) && h && (h = B(t, a, h, p), "%" === _ ? (h /= B(t, a, 100, "%") / 100, e.strictUnits !== !0 && (c = h + "%")) : "em" === _ ? h /= B(t, a, 1, "em") : "px" !== _ && (d = B(t, a, d, _), _ = "px"), g && (d || 0 === d) && (f = d + h + _)), g && (d += h), !h && 0 !== h || !d && 0 !== d ? void 0 !== v[a] && (f || "NaN" != f + "" && null != f) ? (i = new pt(v, a, d || h || 0, 0, i, -1, a, !1, 0, c, f), i.xs0 = "none" !== f || "display" !== a && -1 === a.indexOf("Style") ? f : c) : U("invalid " + a + " tween value: " + e[a]) : (i = new pt(v, a, h, d - h, i, 0, a, u !== !1 && ("px" === _ || "zIndex" === a), 0, c, f), i.xs0 = _)) : i = _t(v, a, c, f, !0, null, i, 0, r)), r && i && !i.plugin && (i.plugin = r);
5882                    return i
5883                }, h.setRatio = function(t) {
5884                    var e, i, n, s = this._firstPT,
5885                        r = 1e-6;
5886                    if (1 !== t || this._tween._time !== this._tween._duration && 0 !== this._tween._time)
5887                        if (t || this._tween._time !== this._tween._duration && 0 !== this._tween._time || this._tween._rawPrevTime === -1e-6)
5888                            for (; s;) {
5889                                if (e = s.c * t + s.s, s.r ? e = Math.round(e) : r > e && e > -r && (e = 0), s.type)
5890                                    if (1 === s.type)
5891                                        if (n = s.l, 2 === n) s.t[s.p] = s.xs0 + e + s.xs1 + s.xn1 + s.xs2;
5892                                        else if (3 === n) s.t[s.p] = s.xs0 + e + s.xs1 + s.xn1 + s.xs2 + s.xn2 + s.xs3;
5893                                else if (4 === n) s.t[s.p] = s.xs0 + e + s.xs1 + s.xn1 + s.xs2 + s.xn2 + s.xs3 + s.xn3 + s.xs4;
5894                                else if (5 === n) s.t[s.p] = s.xs0 + e + s.xs1 + s.xn1 + s.xs2 + s.xn2 + s.xs3 + s.xn3 + s.xs4 + s.xn4 + s.xs5;
5895                                else {
5896                                    for (i = s.xs0 + e + s.xs1, n = 1; s.l > n; n++) i += s["xn" + n] + s["xs" + (n + 1)];
5897                                    s.t[s.p] = i
5898                                } else -1 === s.type ? s.t[s.p] = s.xs0 : s.setRatio && s.setRatio(t);
5899                                else s.t[s.p] = e + s.xs0;
5900                                s = s._next
5901                            } else
5902                                for (; s;) 2 !== s.type ? s.t[s.p] = s.b : s.setRatio(t), s = s._next;
5903                        else
5904                            for (; s;) 2 !== s.type ? s.t[s.p] = s.e : s.setRatio(t), s = s._next
5905                }, h._enableTransforms = function(t) {
5906                    this._transform = this._transform || At(this._target, s, !0), this._transformType = this._transform.svg && wt || !t && 3 !== this._transformType ? 2 : 3
5907                };
5908                var Wt = function() {
5909                    this.t[this.p] = this.e, this.data._linkCSSP(this, this._next, null, !0)
5910                };
5911                h._addLazySet = function(t, e, i) {
5912                    var n = this._firstPT = new pt(t, e, 0, 0, this._firstPT, 2);
5913                    n.e = i, n.setRatio = Wt, n.data = this
5914                }, h._linkCSSP = function(t, e, i, n) {
5915                    return t && (e && (e._prev = t), t._next && (t._next._prev = t._prev), t._prev ? t._prev._next = t._next : this._firstPT === t && (this._firstPT = t._next, n = !0), i ? i._next = t : n || null !== this._firstPT || (this._firstPT = t), t._next = e, t._prev = i), t
5916                }, h._kill = function(e) {
5917                    var i, n, s, r = e;
5918                    if (e.autoAlpha || e.alpha) {
5919                        r = {};
5920                        for (n in e) r[n] = e[n];
5921                        r.opacity = 1, r.autoAlpha && (r.visibility = 1)
5922                    }
5923                    return e.className && (i = this._classNamePT) && (s = i.xfirst, s && s._prev ? this._linkCSSP(s._prev, i._next, s._prev._prev) : s === this._firstPT && (this._firstPT = i._next), i._next && this._linkCSSP(i._next, i._next._next, s._prev), this._classNamePT = null), t.prototype._kill.call(this, r)
5924                };
5925                var Nt = function(t, e, i) {
5926                    var n, s, r, a;
5927                    if (t.slice)
5928                        for (s = t.length; --s > -1;) Nt(t[s], e, i);
5929                    else
5930                        for (n = t.childNodes, s = n.length; --s > -1;) r = n[s], a = r.type, r.style && (e.push(J(r)), i && i.push(r)), 1 !== a && 9 !== a && 11 !== a || !r.childNodes.length || Nt(r, e, i)
5931                };
5932                return a.cascadeTo = function(t, i, n) {
5933                    var s, r, a, o = e.to(t, i, n),
5934                        l = [o],
5935                        h = [],
5936                        u = [],
5937                        d = [],
5938                        c = e._internals.reservedProps;
5939                    for (t = o._targets || o.target, Nt(t, h, d), o.render(i, !0), Nt(t, u), o.render(0, !0), o._enabled(!0), s = d.length; --s > -1;)
5940                        if (r = K(d[s], h[s], u[s]), r.firstMPT) {
5941                            r = r.difs;
5942                            for (a in n) c[a] && (r[a] = n[a]);
5943                            l.push(e.to(d[s], i, r))
5944                        } return l
5945                }, t.activate([a]), a
5946            }, !0),
5947            function() {
5948                var t = _gsScope._gsDefine.plugin({
5949                        propName: "roundProps",
5950                        priority: -1,
5951                        API: 2,
5952                        init: function(t, e, i) {
5953                            return this._tween = i, !0
5954                        }
5955                    }),
5956                    e = t.prototype;
5957                e._onInitAllProps = function() {
5958                    for (var t, e, i, n = this._tween, s = n.vars.roundProps instanceof Array ? n.vars.roundProps : n.vars.roundProps.split(","), r = s.length, a = {}, o = n._propLookup.roundProps; --r > -1;) a[s[r]] = 1;
5959                    for (r = s.length; --r > -1;)
5960                        for (t = s[r], e = n._firstPT; e;) i = e._next, e.pg ? e.t._roundProps(a, !0) : e.n === t && (this._add(e.t, t, e.s, e.c), i && (i._prev = e._prev), e._prev ? e._prev._next = i : n._firstPT === e && (n._firstPT = i), e._next = e._prev = null, n._propLookup[t] = o), e = i;
5961                    return !1
5962                }, e._add = function(t, e, i, n) {
5963                    this._addTween(t, e, i, i + n, e, !0), this._overwriteProps.push(e)
5964                }
5965            }(), _gsScope._gsDefine.plugin({
5966                propName: "attr",
5967                API: 2,
5968                version: "0.3.3",
5969                init: function(t, e) {
5970                    var i, n, s;
5971                    if ("function" != typeof t.setAttribute) return !1;
5972                    this._target = t, this._proxy = {}, this._start = {}, this._end = {};
5973                    for (i in e) this._start[i] = this._proxy[i] = n = t.getAttribute(i), s = this._addTween(this._proxy, i, parseFloat(n), e[i], i), this._end[i] = s ? s.s + s.c : e[i], this._overwriteProps.push(i);
5974                    return !0
5975                },
5976                set: function(t) {
5977                    this._super.setRatio.call(this, t);
5978                    for (var e, i = this._overwriteProps, n = i.length, s = 1 === t ? this._end : t ? this._proxy : this._start; --n > -1;) e = i[n], this._target.setAttribute(e, s[e] + "")
5979                }
5980            }), _gsScope._gsDefine.plugin({
5981                propName: "directionalRotation",
5982                version: "0.2.1",
5983                API: 2,
5984                init: function(t, e) {
5985                    "object" != typeof e && (e = {
5986                        rotation: e
5987                    }), this.finals = {};
5988                    var i, n, s, r, a, o, l = e.useRadians === !0 ? 2 * Math.PI : 360,
5989                        h = 1e-6;
5990                    for (i in e) "useRadians" !== i && (o = (e[i] + "").split("_"), n = o[0], s = parseFloat("function" != typeof t[i] ? t[i] : t[i.indexOf("set") || "function" != typeof t["get" + i.substr(3)] ? i : "get" + i.substr(3)]()), r = this.finals[i] = "string" == typeof n && "=" === n.charAt(1) ? s + parseInt(n.charAt(0) + "1", 10) * Number(n.substr(2)) : Number(n) || 0, a = r - s, o.length && (n = o.join("_"), -1 !== n.indexOf("short") && (a %= l, a !== a % (l / 2) && (a = 0 > a ? a + l : a - l)), -1 !== n.indexOf("_cw") && 0 > a ? a = (a + 9999999999 * l) % l - (0 | a / l) * l : -1 !== n.indexOf("ccw") && a > 0 && (a = (a - 9999999999 * l) % l - (0 | a / l) * l)), (a > h || -h > a) && (this._addTween(t, i, s, s + a, i), this._overwriteProps.push(i)));
5991                    return !0
5992                },
5993                set: function(t) {
5994                    var e;
5995                    if (1 !== t) this._super.setRatio.call(this, t);
5996                    else
5997                        for (e = this._firstPT; e;) e.f ? e.t[e.p](this.finals[e.p]) : e.t[e.p] = this.finals[e.p], e = e._next
5998                }
5999            })._autoCSS = !0, _gsScope._gsDefine("easing.Back", ["easing.Ease"], function(t) {
6000                var e, i, n, s = _gsScope.GreenSockGlobals || _gsScope,
6001                    r = s.com.greensock,
6002                    a = 2 * Math.PI,
6003                    o = Math.PI / 2,
6004                    l = r._class,
6005                    h = function(e, i) {
6006                        var n = l("easing." + e, function() {}, !0),
6007                            s = n.prototype = new t;
6008                        return s.constructor = n, s.getRatio = i, n
6009                    },
6010                    u = t.register || function() {},
6011                    d = function(t, e, i, n) {
6012                        var s = l("easing." + t, {
6013                            easeOut: new e,
vendor: 9,171 bytes, lines 6014-6151
6014                            easeIn: new i,
6015                            easeInOut: new n
6016                        }, !0);
6017                        return u(s, t), s
6018                    },
6019                    c = function(t, e, i) {
6020                        this.t = t, this.v = e, i && (this.next = i, i.prev = this, this.c = i.v - e, this.gap = i.t - t)
6021                    },
6022                    f = function(e, i) {
6023                        var n = l("easing." + e, function(t) {
6024                                this._p1 = t || 0 === t ? t : 1.70158, this._p2 = 1.525 * this._p1
6025                            }, !0),
6026                            s = n.prototype = new t;
6027                        return s.constructor = n, s.getRatio = i, s.config = function(t) {
6028                            return new n(t)
6029                        }, n
6030                    },
6031                    p = d("Back", f("BackOut", function(t) {
6032                        return (t -= 1) * t * ((this._p1 + 1) * t + this._p1) + 1
6033                    }), f("BackIn", function(t) {
6034                        return t * t * ((this._p1 + 1) * t - this._p1)
6035                    }), f("BackInOut", function(t) {
6036                        return 1 > (t *= 2) ? .5 * t * t * ((this._p2 + 1) * t - this._p2) : .5 * ((t -= 2) * t * ((this._p2 + 1) * t + this._p2) + 2)
6037                    })),
6038                    _ = l("easing.SlowMo", function(t, e, i) {
6039                        e = e || 0 === e ? e : .7, null == t ? t = .7 : t > 1 && (t = 1), this._p = 1 !== t ? e : 0, this._p1 = (1 - t) / 2, this._p2 = t, this._p3 = this._p1 + this._p2, this._calcEnd = i === !0
6040                    }, !0),
6041                    m = _.prototype = new t;
6042                return m.constructor = _, m.getRatio = function(t) {
6043                    var e = t + (.5 - t) * this._p;
6044                    return this._p1 > t ? this._calcEnd ? 1 - (t = 1 - t / this._p1) * t : e - (t = 1 - t / this._p1) * t * t * t * e : t > this._p3 ? this._calcEnd ? 1 - (t = (t - this._p3) / this._p1) * t : e + (t - e) * (t = (t - this._p3) / this._p1) * t * t * t : this._calcEnd ? 1 : e
6045                }, _.ease = new _(.7, .7), m.config = _.config = function(t, e, i) {
6046                    return new _(t, e, i)
6047                }, e = l("easing.SteppedEase", function(t) {
6048                    t = t || 1, this._p1 = 1 / t, this._p2 = t + 1
6049                }, !0), m = e.prototype = new t, m.constructor = e, m.getRatio = function(t) {
6050                    return 0 > t ? t = 0 : t >= 1 && (t = .999999999), (this._p2 * t >> 0) * this._p1
6051                }, m.config = e.config = function(t) {
6052                    return new e(t)
6053                }, i = l("easing.RoughEase", function(e) {
6054                    e = e || {};
6055                    for (var i, n, s, r, a, o, l = e.taper || "none", h = [], u = 0, d = 0 | (e.points || 20), f = d, p = e.randomize !== !1, _ = e.clamp === !0, m = e.template instanceof t ? e.template : null, g = "number" == typeof e.strength ? .4 * e.strength : .4; --f > -1;) i = p ? Math.random() : 1 / d * f, n = m ? m.getRatio(i) : i, "none" === l ? s = g : "out" === l ? (r = 1 - i, s = r * r * g) : "in" === l ? s = i * i * g : .5 > i ? (r = 2 * i, s = .5 * r * r * g) : (r = 2 * (1 - i), s = .5 * r * r * g), p ? n += Math.random() * s - .5 * s : f % 2 ? n += .5 * s : n -= .5 * s, _ && (n > 1 ? n = 1 : 0 > n && (n = 0)), h[u++] = {
6056                        x: i,
6057                        y: n
6058                    };
6059                    for (h.sort(function(t, e) {
6060                            return t.x - e.x
6061                        }), o = new c(1, 1, null), f = d; --f > -1;) a = h[f], o = new c(a.x, a.y, o);
6062                    this._prev = new c(0, 0, 0 !== o.t ? o : o.next)
6063                }, !0), m = i.prototype = new t, m.constructor = i, m.getRatio = function(t) {
6064                    var e = this._prev;
6065                    if (t > e.t) {
6066                        for (; e.next && t >= e.t;) e = e.next;
6067                        e = e.prev
6068                    } else
6069                        for (; e.prev && e.t >= t;) e = e.prev;
6070                    return this._prev = e, e.v + (t - e.t) / e.gap * e.c
6071                }, m.config = function(t) {
6072                    return new i(t)
6073                }, i.ease = new i, d("Bounce", h("BounceOut", function(t) {
6074                    return 1 / 2.75 > t ? 7.5625 * t * t : 2 / 2.75 > t ? 7.5625 * (t -= 1.5 / 2.75) * t + .75 : 2.5 / 2.75 > t ? 7.5625 * (t -= 2.25 / 2.75) * t + .9375 : 7.5625 * (t -= 2.625 / 2.75) * t + .984375
6075                }), h("BounceIn", function(t) {
6076                    return 1 / 2.75 > (t = 1 - t) ? 1 - 7.5625 * t * t : 2 / 2.75 > t ? 1 - (7.5625 * (t -= 1.5 / 2.75) * t + .75) : 2.5 / 2.75 > t ? 1 - (7.5625 * (t -= 2.25 / 2.75) * t + .9375) : 1 - (7.5625 * (t -= 2.625 / 2.75) * t + .984375)
6077                }), h("BounceInOut", function(t) {
6078                    var e = .5 > t;
6079                    return t = e ? 1 - 2 * t : 2 * t - 1, t = 1 / 2.75 > t ? 7.5625 * t * t : 2 / 2.75 > t ? 7.5625 * (t -= 1.5 / 2.75) * t + .75 : 2.5 / 2.75 > t ? 7.5625 * (t -= 2.25 / 2.75) * t + .9375 : 7.5625 * (t -= 2.625 / 2.75) * t + .984375, e ? .5 * (1 - t) : .5 * t + .5
6080                })), d("Circ", h("CircOut", function(t) {
6081                    return Math.sqrt(1 - (t -= 1) * t)
6082                }), h("CircIn", function(t) {
6083                    return -(Math.sqrt(1 - t * t) - 1)
6084                }), h("CircInOut", function(t) {
6085                    return 1 > (t *= 2) ? -.5 * (Math.sqrt(1 - t * t) - 1) : .5 * (Math.sqrt(1 - (t -= 2) * t) + 1)
6086                })), n = function(e, i, n) {
6087                    var s = l("easing." + e, function(t, e) {
6088                            this._p1 = t || 1, this._p2 = e || n, this._p3 = this._p2 / a * (Math.asin(1 / this._p1) || 0)
6089                        }, !0),
6090                        r = s.prototype = new t;
6091                    return r.constructor = s, r.getRatio = i, r.config = function(t, e) {
6092                        return new s(t, e)
6093                    }, s
6094                }, d("Elastic", n("ElasticOut", function(t) {
6095                    return this._p1 * Math.pow(2, -10 * t) * Math.sin((t - this._p3) * a / this._p2) + 1
6096                }, .3), n("ElasticIn", function(t) {
6097                    return -(this._p1 * Math.pow(2, 10 * (t -= 1)) * Math.sin((t - this._p3) * a / this._p2))
6098                }, .3), n("ElasticInOut", function(t) {
6099                    return 1 > (t *= 2) ? -.5 * this._p1 * Math.pow(2, 10 * (t -= 1)) * Math.sin((t - this._p3) * a / this._p2) : .5 * this._p1 * Math.pow(2, -10 * (t -= 1)) * Math.sin((t - this._p3) * a / this._p2) + 1
6100                }, .45)), d("Expo", h("ExpoOut", function(t) {
6101                    return 1 - Math.pow(2, -10 * t)
6102                }), h("ExpoIn", function(t) {
6103                    return Math.pow(2, 10 * (t - 1)) - .001
6104                }), h("ExpoInOut", function(t) {
6105                    return 1 > (t *= 2) ? .5 * Math.pow(2, 10 * (t - 1)) : .5 * (2 - Math.pow(2, -10 * (t - 1)))
6106                })), d("Sine", h("SineOut", function(t) {
6107                    return Math.sin(t * o)
6108                }), h("SineIn", function(t) {
6109                    return -Math.cos(t * o) + 1
6110                }), h("SineInOut", function(t) {
6111                    return -.5 * (Math.cos(Math.PI * t) - 1)
6112                })), l("easing.EaseLookup", {
6113                    find: function(e) {
6114                        return t.map[e]
6115                    }
6116                }, !0), u(s.SlowMo, "SlowMo", "ease,"), u(i, "RoughEase", "ease,"), u(e, "SteppedEase", "ease,"), p
6117            }, !0)
6118    }), _gsScope._gsDefine && _gsScope._gsQueue.pop()(),
6119    function(t, e) {
6120        "use strict";
6121        var i = t.GreenSockGlobals = t.GreenSockGlobals || t;
6122        if (!i.TweenLite) {
6123            var n, s, r, a, o, l = function(t) {
6124                    var e, n = t.split("."),
6125                        s = i;
6126                    for (e = 0; n.length > e; e++) s[n[e]] = s = s[n[e]] || {};
6127                    return s
6128                },
6129                h = l("com.greensock"),
6130                u = 1e-10,
6131                d = function(t) {
6132                    var e, i = [],
6133                        n = t.length;
6134                    for (e = 0; e !== n; i.push(t[e++]));
6135                    return i
6136                },
6137                c = function() {},
6138                f = function() {
6139                    var t = Object.prototype.toString,
6140                        e = t.call([]);
6141                    return function(i) {
6142                        return null != i && (i instanceof Array || "object" == typeof i && !!i.push && t.call(i) === e)
6143                    }
6144                }(),
6145                p = {},
6146                _ = function(n, s, r, a) {
6147                    this.sc = p[n] ? p[n].sc : [], p[n] = this, this.gsClass = null, this.func = r;
6148                    var o = [];
6149                    this.check = function(h) {
6150                        for (var u, d, c, f, m = s.length, g = m; --m > -1;)(u = p[s[m]] || new _(s[m], [])).gsClass ? (o[m] = u.gsClass, g--) : h && u.sc.push(this);
6151                        if (0 === g && r)
6152                            for (d = ("com.greensock." + n).split("."), c = d.pop(), f = l(d.join("."))[c] = this.gsClass = r.apply(r, o), a && (i[c] = f, "function" == typeof define && define.amd ? define((t.GreenSockAMDPath ? t.GreenSockAMDPath + "/" : "") + n.split(".").pop(), [], function() {
6153                                    return f
6154                                }) : n === e && "undefined" != typeof module && module.exports && (module.exports = f)), m = 0; this.sc.length > m; m++) this.sc[m].check()
6155                    }, this.check(!0)
6156                },
6157                m = t._gsDefine = function(t, e, i, n) {
6158                    return new _(t, e, i, n)
6159                },
6160                g = h._class = function(t, e, i) {
6161                    return e = e || function() {}, m(t, [], function() {
6162                        return e
6163                    }, i), e
6164                };
6165            m.globals = i;
6166            var v = [0, 0, 1, 1],
6167                y = [],
6168                w = g("easing.Ease", function(t, e, i, n) {
6169                    this._func = t, this._type = i || 0, this._power = n || 0, this._params = e ? v.concat(e) : v
6170                }, !0),
6171                b = w.map = {},
6172                T = w.register = function(t, e, i, n) {
6173                    for (var s, r, a, o, l = e.split(","), u = l.length, d = (i || "easeIn,easeOut,easeInOut").split(","); --u > -1;)
6174                        for (r = l[u], s = n ? g("easing." + r, null, !0) : h.easing[r] || {}, a = d.length; --a > -1;) o = d[a], b[r + "." + o] = b[o + r] = s[o] = t.getRatio ? t : t[o] || new t
6175                };
6176            for (r = w.prototype, r._calcEnd = !1, r.getRatio = function(t) {
6177                    if (this._func) return this._params[0] = t, this._func.apply(null, this._params);
6178                    var e = this._type,
6179                        i = this._power,
6180                        n = 1 === e ? 1 - t : 2 === e ? t : .5 > t ? 2 * t : 2 * (1 - t);
6181                    return 1 === i ? n *= n : 2 === i ? n *= n * n : 3 === i ? n *= n * n * n : 4 === i && (n *= n * n * n * n), 1 === e ? 1 - n : 2 === e ? n : .5 > t ? n / 2 : 1 - n / 2
6182                }, n = ["Linear", "Quad", "Cubic", "Quart", "Quint,Strong"], s = n.length; --s > -1;) r = n[s] + ",Power" + s, T(new w(null, null, 1, s), r, "easeOut", !0), T(new w(null, null, 2, s), r, "easeIn" + (0 === s ? ",easeNone" : "")), T(new w(null, null, 3, s), r, "easeInOut");
6183            b.linear = h.easing.Linear.easeIn, b.swing = h.easing.Quad.easeInOut;
6184            var x = g("events.EventDispatcher", function(t) {
6185                this._listeners = {}, this._eventTarget = t || this
6186            });
6187            r = x.prototype, r.addEventListener = function(t, e, i, n, s) {
6188                s = s || 0;
6189                var r, l, h = this._listeners[t],
6190                    u = 0;
6191                for (null == h && (this._listeners[t] = h = []), l = h.length; --l > -1;) r = h[l], r.c === e && r.s === i ? h.splice(l, 1) : 0 === u && s > r.pr && (u = l + 1);
6192                h.splice(u, 0, {
6193                    c: e,
6194                    s: i,
6195                    up: n,
6196                    pr: s
6197                }), this !== a || o || a.wake()
6198            }, r.removeEventListener = function(t, e) {
6199                var i, n = this._listeners[t];
6200                if (n)
6201                    for (i = n.length; --i > -1;)
6202                        if (n[i].c === e) return void n.splice(i, 1)
6203            }, r.dispatchEvent = function(t) {
6204                var e, i, n, s = this._listeners[t];
6205                if (s)
6206                    for (e = s.length, i = this._eventTarget; --e > -1;) n = s[e], n && (n.up ? n.c.call(n.s || i, {
6207                        type: t,
6208                        target: i
6209                    }) : n.c.call(n.s || i))
6210            };
6211            var S = t.requestAnimationFrame,
6212                P = t.cancelAnimationFrame,
6213                k = Date.now || function() {
6214                    return (new Date).getTime()
6215                },
6216                M = k();
6217            for (n = ["ms", "moz", "webkit", "o"], s = n.length; --s > -1 && !S;) S = t[n[s] + "RequestAnimationFrame"], P = t[n[s] + "CancelAnimationFrame"] || t[n[s] + "CancelRequestAnimationFrame"];
6218            g("Ticker", function(t, e) {
6219                var i, n, s, r, l, h = this,
6220                    d = k(),
6221                    f = e !== !1 && S,
6222                    p = 500,
6223                    _ = 33,
6224                    m = "tick",
6225                    g = function(t) {
6226                        var e, a, o = k() - M;
6227                        o > p && (d += o - _), M += o, h.time = (M - d) / 1e3, e = h.time - l, (!i || e > 0 || t === !0) && (h.frame++, l += e + (e >= r ? .004 : r - e), a = !0), t !== !0 && (s = n(g)), a && h.dispatchEvent(m)
6228                    };
6229                x.call(h), h.time = h.frame = 0, h.tick = function() {
6230                    g(!0)
6231                }, h.lagSmoothing = function(t, e) {
6232                    p = t || 1 / u, _ = Math.min(e, p, 0)
6233                }, h.sleep = function() {
6234                    null != s && (f && P ? P(s) : clearTimeout(s), n = c, s = null, h === a && (o = !1))
6235                }, h.wake = function() {
6236                    null !== s ? h.sleep() : h.frame > 10 && (M = k() - p + 5), n = 0 === i ? c : f && S ? S : function(t) {
6237                        return setTimeout(t, 0 | 1e3 * (l - h.time) + 1)
6238                    }, h === a && (o = !0), g(2)
6239                }, h.fps = function(t) {
6240                    return arguments.length ? (i = t, r = 1 / (i || 60), l = this.time + r, void h.wake()
vendor: 10,698 bytes, lines 6240-6365
6240) : i
6241                }, h.useRAF = function(t) {
6242                    return arguments.length ? (h.sleep(), f = t, void h.fps(i)) : f
6243                }, h.fps(t), setTimeout(function() {
6244                    f && (!s || 5 > h.frame) && h.useRAF(!1)
6245                }, 1500)
6246            }), r = h.Ticker.prototype = new h.events.EventDispatcher, r.constructor = h.Ticker;
6247            var D = g("core.Animation", function(t, e) {
6248                if (this.vars = e = e || {}, this._duration = this._totalDuration = t || 0, this._delay = Number(e.delay) || 0, this._timeScale = 1, this._active = e.immediateRender === !0, this.data = e.data, this._reversed = e.reversed === !0, G) {
6249                    o || a.wake();
6250                    var i = this.vars.useFrames ? E : G;
6251                    i.add(this, i._time), this.vars.paused && this.paused(!0)
6252                }
6253            });
6254            a = D.ticker = new h.Ticker, r = D.prototype, r._dirty = r._gc = r._initted = r._paused = !1, r._totalTime = r._time = 0, r._rawPrevTime = -1, r._next = r._last = r._onUpdate = r._timeline = r.timeline = null, r._paused = !1;
6255            var O = function() {
6256                o && k() - M > 2e3 && a.wake(), setTimeout(O, 2e3)
6257            };
6258            O(), r.play = function(t, e) {
6259                return null != t && this.seek(t, e), this.reversed(!1).paused(!1)
6260            }, r.pause = function(t, e) {
6261                return null != t && this.seek(t, e), this.paused(!0)
6262            }, r.resume = function(t, e) {
6263                return null != t && this.seek(t, e), this.paused(!1)
6264            }, r.seek = function(t, e) {
6265                return this.totalTime(Number(t), e !== !1)
6266            }, r.restart = function(t, e) {
6267                return this.reversed(!1).paused(!1).totalTime(t ? -this._delay : 0, e !== !1, !0)
6268            }, r.reverse = function(t, e) {
6269                return null != t && this.seek(t || this.totalDuration(), e), this.reversed(!0).paused(!1)
6270            }, r.render = function() {}, r.invalidate = function() {
6271                return this._time = this._totalTime = 0, this._initted = this._gc = !1, this._rawPrevTime = -1, (this._gc || !this.timeline) && this._enabled(!0), this
6272            }, r.isActive = function() {
6273                var t, e = this._timeline,
6274                    i = this._startTime;
6275                return !e || !this._gc && !this._paused && e.isActive() && (t = e.rawTime()) >= i && i + this.totalDuration() / this._timeScale > t
6276            }, r._enabled = function(t, e) {
6277                return o || a.wake(), this._gc = !t, this._active = this.isActive(), e !== !0 && (t && !this.timeline ? this._timeline.add(this, this._startTime - this._delay) : !t && this.timeline && this._timeline._remove(this, !0)), !1
6278            }, r._kill = function() {
6279                return this._enabled(!1, !1)
6280            }, r.kill = function(t, e) {
6281                return this._kill(t, e), this
6282            }, r._uncache = function(t) {
6283                for (var e = t ? this : this.timeline; e;) e._dirty = !0, e = e.timeline;
6284                return this
6285            }, r._swapSelfInParams = function(t) {
6286                for (var e = t.length, i = t.concat(); --e > -1;) "{self}" === t[e] && (i[e] = this);
6287                return i
6288            }, r.eventCallback = function(t, e, i, n) {
6289                if ("on" === (t || "").substr(0, 2)) {
6290                    var s = this.vars;
6291                    if (1 === arguments.length) return s[t];
6292                    null == e ? delete s[t] : (s[t] = e, s[t + "Params"] = f(i) && -1 !== i.join("").indexOf("{self}") ? this._swapSelfInParams(i) : i, s[t + "Scope"] = n), "onUpdate" === t && (this._onUpdate = e)
6293                }
6294                return this
6295            }, r.delay = function(t) {
6296                return arguments.length ? (this._timeline.smoothChildTiming && this.startTime(this._startTime + t - this._delay), this._delay = t, this) : this._delay
6297            }, r.duration = function(t) {
6298                return arguments.length ? (this._duration = this._totalDuration = t, this._uncache(!0), this._timeline.smoothChildTiming && this._time > 0 && this._time < this._duration && 0 !== t && this.totalTime(this._totalTime * (t / this._duration), !0), this) : (this._dirty = !1, this._duration)
6299            }, r.totalDuration = function(t) {
6300                return this._dirty = !1, arguments.length ? this.duration(t) : this._totalDuration
6301            }, r.time = function(t, e) {
6302                return arguments.length ? (this._dirty && this.totalDuration(), this.totalTime(t > this._duration ? this._duration : t, e)) : this._time
6303            }, r.totalTime = function(t, e, i) {
6304                if (o || a.wake(), !arguments.length) return this._totalTime;
6305                if (this._timeline) {
6306                    if (0 > t && !i && (t += this.totalDuration()), this._timeline.smoothChildTiming) {
6307                        this._dirty && this.totalDuration();
6308                        var n = this._totalDuration,
6309                            s = this._timeline;
6310                        if (t > n && !i && (t = n), this._startTime = (this._paused ? this._pauseTime : s._time) - (this._reversed ? n - t : t) / this._timeScale, s._dirty || this._uncache(!1), s._timeline)
6311                            for (; s._timeline;) s._timeline._time !== (s._startTime + s._totalTime) / s._timeScale && s.totalTime(s._totalTime, !0), s = s._timeline
6312                    }
6313                    this._gc && this._enabled(!0, !1), (this._totalTime !== t || 0 === this._duration) && (this.render(t, e, !1), Y.length && U())
6314                }
6315                return this
6316            }, r.progress = r.totalProgress = function(t, e) {
6317                return arguments.length ? this.totalTime(this.duration() * t, e) : this._time / this.duration()
6318            }, r.startTime = function(t) {
6319                return arguments.length ? (t !== this._startTime && (this._startTime = t, this.timeline && this.timeline._sortChildren && this.timeline.add(this, t - this._delay)), this) : this._startTime
6320            }, r.endTime = function(t) {
6321                return this._startTime + (0 != t ? this.totalDuration() : this.duration()) / this._timeScale
6322            }, r.timeScale = function(t) {
6323                if (!arguments.length) return this._timeScale;
6324                if (t = t || u, this._timeline && this._timeline.smoothChildTiming) {
6325                    var e = this._pauseTime,
6326                        i = e || 0 === e ? e : this._timeline.totalTime();
6327                    this._startTime = i - (i - this._startTime) * this._timeScale / t
6328                }
6329                return this._timeScale = t, this._uncache(!1)
6330            }, r.reversed = function(t) {
6331                return arguments.length ? (t != this._reversed && (this._reversed = t, this.totalTime(this._timeline && !this._timeline.smoothChildTiming ? this.totalDuration() - this._totalTime : this._totalTime, !0)), this) : this._reversed
6332            }, r.paused = function(t) {
6333                if (!arguments.length) return this._paused;
6334                if (t != this._paused && this._timeline) {
6335                    o || t || a.wake();
6336                    var e = this._timeline,
6337                        i = e.rawTime(),
6338                        n = i - this._pauseTime;
6339                    !t && e.smoothChildTiming && (this._startTime += n, this._uncache(!1)), this._pauseTime = t ? i : null, this._paused = t, this._active = this.isActive(), !t && 0 !== n && this._initted && this.duration() && this.render(e.smoothChildTiming ? this._totalTime : (i - this._startTime) / this._timeScale, !0, !0)
6340                }
6341                return this._gc && !t && this._enabled(!0, !1), this
6342            };
6343            var C = g("core.SimpleTimeline", function(t) {
6344                D.call(this, 0, t), this.autoRemoveChildren = this.smoothChildTiming = !0
6345            });
6346            r = C.prototype = new D, r.constructor = C, r.kill()._gc = !1, r._first = r._last = r._recent = null, r._sortChildren = !1, r.add = r.insert = function(t, e) {
6347                var i, n;
6348                if (t._startTime = Number(e || 0) + t._delay, t._paused && this !== t._timeline && (t._pauseTime = t._startTime + (this.rawTime() - t._startTime) / t._timeScale), t.timeline && t.timeline._remove(t, !0), t.timeline = t._timeline = this, t._gc && t._enabled(!0, !0), i = this._last, this._sortChildren)
6349                    for (n = t._startTime; i && i._startTime > n;) i = i._prev;
6350                return i ? (t._next = i._next, i._next = t) : (t._next = this._first, this._first = t), t._next ? t._next._prev = t : this._last = t, t._prev = i, this._recent = t, this._timeline && this._uncache(!0), this
6351            }, r._remove = function(t, e) {
6352                return t.timeline === this && (e || t._enabled(!1, !0), t._prev ? t._prev._next = t._next : this._first === t && (this._first = t._next), t._next ? t._next._prev = t._prev : this._last === t && (this._last = t._prev), t._next = t._prev = t.timeline = null, t === this._recent && (this._recent = this._last), this._timeline && this._uncache(!0)), this
6353            }, r.render = function(t, e, i) {
6354                var n, s = this._first;
6355                for (this._totalTime = this._time = this._rawPrevTime = t; s;) n = s._next, (s._active || t >= s._startTime && !s._paused) && (s._reversed ? s.render((s._dirty ? s.totalDuration() : s._totalDuration) - (t - s._startTime) * s._timeScale, e, i) : s.render((t - s._startTime) * s._timeScale, e, i)), s = n
6356            }, r.rawTime = function() {
6357                return o || a.wake(), this._totalTime
6358            };
6359            var R = g("TweenLite", function(e, i, n) {
6360                    if (D.call(this, i, n), this.render = R.prototype.render, null == e) throw "Cannot tween a null target.";
6361                    this.target = e = "string" != typeof e ? e : R.selector(e) || e;
6362                    var s, r, a, o = e.jquery || e.length && e !== t && e[0] && (e[0] === t || e[0].nodeType && e[0].style && !e.nodeType),
6363                        l = this.vars.overwrite;
6364                    if (this._overwrite = l = null == l ? N[R.defaultOverwrite] : "number" == typeof l ? l >> 0 : N[l], (o || e instanceof Array || e.push && f(e)) && "number" != typeof e[0])
6365                        for (this._targets = a = d(e), this._propLookup = [], this._siblings = [], s = 0; a.length > s; s++) r = a[s], r ? "string" != typeof r ? r.length && r !== t && r[0] && (r[0] === t || r[0].nodeType && r[0].style && !r.nodeType) ? (a.splice(s--, 1), this._targets = a = a.concat(d(r))) : (this._siblings[s] = H(r, this, !1), 1 === l && this._siblings[s].length >
vendor: 6,096 bytes, lines 6365-6482
6365 1 && V(r, this, null, 1, this._siblings[s])) : (r = a[s--] = R.selector(r), "string" == typeof r && a.splice(s + 1, 1)) : a.splice(s--, 1);
6366                    else this._propLookup = {}, this._siblings = H(e, this, !1), 1 === l && this._siblings.length > 1 && V(e, this, null, 1, this._siblings);
6367                    (this.vars.immediateRender || 0 === i && 0 === this._delay && this.vars.immediateRender !== !1) && (this._time = -u, this.render(-this._delay))
6368                }, !0),
6369                A = function(e) {
6370                    return e && e.length && e !== t && e[0] && (e[0] === t || e[0].nodeType && e[0].style && !e.nodeType)
6371                },
6372                L = function(t, e) {
6373                    var i, n = {};
6374                    for (i in t) W[i] || i in e && "transform" !== i && "x" !== i && "y" !== i && "width" !== i && "height" !== i && "className" !== i && "border" !== i || !(!I[i] || I[i] && I[i]._autoCSS) || (n[i] = t[i], delete t[i]);
6375                    t.css = n
6376                };
6377            r = R.prototype = new D, r.constructor = R, r.kill()._gc = !1, r.ratio = 0, r._firstPT = r._targets = r._overwrittenProps = r._startAt = null, r._notifyPluginsOfEnabled = r._lazy = !1, R.version = "1.15.1", R.defaultEase = r._ease = new w(null, null, 1, 1), R.defaultOverwrite = "auto", R.ticker = a, R.autoSleep = !0, R.lagSmoothing = function(t, e) {
6378                a.lagSmoothing(t, e)
6379            }, R.selector = t.$ || t.jQuery || function(e) {
6380                var i = t.$ || t.jQuery;
6381                return i ? (R.selector = i, i(e)) : "undefined" == typeof document ? e : document.querySelectorAll ? document.querySelectorAll(e) : document.getElementById("#" === e.charAt(0) ? e.substr(1) : e)
6382            };
6383            var Y = [],
6384                j = {},
6385                z = R._internals = {
6386                    isArray: f,
6387                    isSelector: A,
6388                    lazyTweens: Y
6389                },
6390                I = R._plugins = {},
6391                F = z.tweenLookup = {},
6392                Q = 0,
6393                W = z.reservedProps = {
6394                    ease: 1,
6395                    delay: 1,
6396                    overwrite: 1,
6397                    onComplete: 1,
6398                    onCompleteParams: 1,
6399                    onCompleteScope: 1,
6400                    useFrames: 1,
6401                    runBackwards: 1,
6402                    startAt: 1,
6403                    onUpdate: 1,
6404                    onUpdateParams: 1,
6405                    onUpdateScope: 1,
6406                    onStart: 1,
6407                    onStartParams: 1,
6408                    onStartScope: 1,
6409                    onReverseComplete: 1,
6410                    onReverseCompleteParams: 1,
6411                    onReverseCompleteScope: 1,
6412                    onRepeat: 1,
6413                    onRepeatParams: 1,
6414                    onRepeatScope: 1,
6415                    easeParams: 1,
6416                    yoyo: 1,
6417                    immediateRender: 1,
6418                    repeat: 1,
6419                    repeatDelay: 1,
6420                    data: 1,
6421                    paused: 1,
6422                    reversed: 1,
6423                    autoCSS: 1,
6424                    lazy: 1,
6425                    onOverwrite: 1
6426                },
6427                N = {
6428                    none: 0,
6429                    all: 1,
6430                    auto: 2,
6431                    concurrent: 3,
6432                    allOnStart: 4,
6433                    preexisting: 5,
6434                    "true": 1,
6435                    "false": 0
6436                },
6437                E = D._rootFramesTimeline = new C,
6438                G = D._rootTimeline = new C,
6439                U = z.lazyRender = function() {
6440                    var t, e = Y.length;
6441                    for (j = {}; --e > -1;) t = Y[e], t && t._lazy !== !1 && (t.render(t._lazy[0], t._lazy[1], !0), t._lazy = !1);
6442                    Y.length = 0
6443                };
6444            G._startTime = a.time, E._startTime = a.frame, G._active = E._active = !0, setTimeout(U, 1), D._updateRoot = R.render = function() {
6445                var t, e, i;
6446                if (Y.length && U(), G.render((a.time - G._startTime) * G._timeScale, !1, !1), E.render((a.frame - E._startTime) * E._timeScale, !1, !1), Y.length && U(), !(a.frame % 120)) {
6447                    for (i in F) {
6448                        for (e = F[i].tweens, t = e.length; --t > -1;) e[t]._gc && e.splice(t, 1);
6449                        0 === e.length && delete F[i]
6450                    }
6451                    if (i = G._first, (!i || i._paused) && R.autoSleep && !E._first && 1 === a._listeners.tick.length) {
6452                        for (; i && i._paused;) i = i._next;
6453                        i || a.sleep()
6454                    }
6455                }
6456            }, a.addEventListener("tick", D._updateRoot);
6457            var H = function(t, e, i) {
6458                    var n, s, r = t._gsTweenID;
6459                    if (F[r || (t._gsTweenID = r = "t" + Q++)] || (F[r] = {
6460                            target: t,
6461                            tweens: []
6462                        }), e && (n = F[r].tweens, n[s = n.length] = e, i))
6463                        for (; --s > -1;) n[s] === e && n.splice(s, 1);
6464                    return F[r].tweens
6465                },
6466                X = function(t, e, i, n) {
6467                    var s, r, a = t.vars.onOverwrite;
6468                    return a && (s = a(t, e, i, n)), a = R.onOverwrite, a && (r = a(t, e, i, n)), s !== !1 && r !== !1
6469                },
6470                V = function(t, e, i, n, s) {
6471                    var r, a, o, l;
6472                    if (1 === n || n >= 4) {
6473                        for (l = s.length, r = 0; l > r; r++)
6474                            if ((o = s[r]) !== e) o._gc || X(o, e) && o._enabled(!1, !1) && (a = !0);
6475                            else if (5 === n) break;
6476                        return a
6477                    }
6478                    var h, d = e._startTime + u,
6479                        c = [],
6480                        f = 0,
6481                        p = 0 === e._duration;
6482                    for (r = s.length; --r > -1;
vendor: 16,857 bytes, lines 6482-6691
6482)(o = s[r]) === e || o._gc || o._paused || (o._timeline !== e._timeline ? (h = h || $(e, 0, p), 0 === $(o, h, p) && (c[f++] = o)) : d >= o._startTime && o._startTime + o.totalDuration() / o._timeScale > d && ((p || !o._initted) && 2e-10 >= d - o._startTime || (c[f++] = o)));
6483                    for (r = f; --r > -1;)
6484                        if (o = c[r], 2 === n && o._kill(i, t, e) && (a = !0), 2 !== n || !o._firstPT && o._initted) {
6485                            if (2 !== n && !X(o, e)) continue;
6486                            o._enabled(!1, !1) && (a = !0)
6487                        } return a
6488                },
6489                $ = function(t, e, i) {
6490                    for (var n = t._timeline, s = n._timeScale, r = t._startTime; n._timeline;) {
6491                        if (r += n._startTime, s *= n._timeScale, n._paused) return -100;
6492                        n = n._timeline
6493                    }
6494                    return r /= s, r > e ? r - e : i && r === e || !t._initted && 2 * u > r - e ? u : (r += t.totalDuration() / t._timeScale / s) > e + u ? 0 : r - e - u
6495                };
6496            r._init = function() {
6497                var t, e, i, n, s, r = this.vars,
6498                    a = this._overwrittenProps,
6499                    o = this._duration,
6500                    l = !!r.immediateRender,
6501                    h = r.ease;
6502                if (r.startAt) {
6503                    this._startAt && (this._startAt.render(-1, !0), this._startAt.kill()), s = {};
6504                    for (n in r.startAt) s[n] = r.startAt[n];
6505                    if (s.overwrite = !1, s.immediateRender = !0, s.lazy = l && r.lazy !== !1, s.startAt = s.delay = null, this._startAt = R.to(this.target, 0, s), l)
6506                        if (this._time > 0) this._startAt = null;
6507                        else if (0 !== o) return
6508                } else if (r.runBackwards && 0 !== o)
6509                    if (this._startAt) this._startAt.render(-1, !0), this._startAt.kill(), this._startAt = null;
6510                    else {
6511                        0 !== this._time && (l = !1), i = {};
6512                        for (n in r) W[n] && "autoCSS" !== n || (i[n] = r[n]);
6513                        if (i.overwrite = 0, i.data = "isFromStart", i.lazy = l && r.lazy !== !1, i.immediateRender = l, this._startAt = R.to(this.target, 0, i), l) {
6514                            if (0 === this._time) return
6515                        } else this._startAt._init(), this._startAt._enabled(!1), this.vars.immediateRender && (this._startAt = null)
6516                    } if (this._ease = h = h ? h instanceof w ? h : "function" == typeof h ? new w(h, r.easeParams) : b[h] || R.defaultEase : R.defaultEase, r.easeParams instanceof Array && h.config && (this._ease = h.config.apply(h, r.easeParams)), this._easeType = this._ease._type, this._easePower = this._ease._power, this._firstPT = null, this._targets)
6517                    for (t = this._targets.length; --t > -1;) this._initProps(this._targets[t], this._propLookup[t] = {}, this._siblings[t], a ? a[t] : null) && (e = !0);
6518                else e = this._initProps(this.target, this._propLookup, this._siblings, a);
6519                if (e && R._onPluginEvent("_onInitAllProps", this), a && (this._firstPT || "function" != typeof this.target && this._enabled(!1, !1)), r.runBackwards)
6520                    for (i = this._firstPT; i;) i.s += i.c, i.c = -i.c, i = i._next;
6521                this._onUpdate = r.onUpdate, this._initted = !0
6522            }, r._initProps = function(e, i, n, s) {
6523                var r, a, o, l, h, u;
6524                if (null == e) return !1;
6525                j[e._gsTweenID] && U(), this.vars.css || e.style && e !== t && e.nodeType && I.css && this.vars.autoCSS !== !1 && L(this.vars, e);
6526                for (r in this.vars) {
6527                    if (u = this.vars[r], W[r]) u && (u instanceof Array || u.push && f(u)) && -1 !== u.join("").indexOf("{self}") && (this.vars[r] = u = this._swapSelfInParams(u, this));
6528                    else if (I[r] && (l = new I[r])._onInitTween(e, this.vars[r], this)) {
6529                        for (this._firstPT = h = {
6530                                _next: this._firstPT,
6531                                t: l,
6532                                p: "setRatio",
6533                                s: 0,
6534                                c: 1,
6535                                f: !0,
6536                                n: r,
6537                                pg: !0,
6538                                pr: l._priority
6539                            }, a = l._overwriteProps.length; --a > -1;) i[l._overwriteProps[a]] = this._firstPT;
6540                        (l._priority || l._onInitAllProps) && (o = !0), (l._onDisable || l._onEnable) && (this._notifyPluginsOfEnabled = !0)
6541                    } else this._firstPT = i[r] = h = {
6542                        _next: this._firstPT,
6543                        t: e,
6544                        p: r,
6545                        f: "function" == typeof e[r],
6546                        n: r,
6547                        pg: !1,
6548                        pr: 0
6549                    }, h.s = h.f ? e[r.indexOf("set") || "function" != typeof e["get" + r.substr(3)] ? r : "get" + r.substr(3)]() : parseFloat(e[r]), h.c = "string" == typeof u && "=" === u.charAt(1) ? parseInt(u.charAt(0) + "1", 10) * Number(u.substr(2)) : Number(u) - h.s || 0;
6550                    h && h._next && (h._next._prev = h)
6551                }
6552                return s && this._kill(s, e) ? this._initProps(e, i, n, s) : this._overwrite > 1 && this._firstPT && n.length > 1 && V(e, this, i, this._overwrite, n) ? (this._kill(i, e), this._initProps(e, i, n, s)) : (this._firstPT && (this.vars.lazy !== !1 && this._duration || this.vars.lazy && !this._duration) && (j[e._gsTweenID] = !0), o)
6553            }, r.render = function(t, e, i) {
6554                var n, s, r, a, o = this._time,
6555                    l = this._duration,
6556                    h = this._rawPrevTime;
6557                if (t >= l) this._totalTime = this._time = l, this.ratio = this._ease._calcEnd ? this._ease.getRatio(1) : 1, this._reversed || (n = !0, s = "onComplete"), 0 === l && (this._initted || !this.vars.lazy || i) && (this._startTime === this._timeline._duration && (t = 0), (0 === t || 0 > h || h === u && "isPause" !== this.data) && h !== t && (i = !0, h > u && (s = "onReverseComplete")), this._rawPrevTime = a = !e || t || h === t ? t : u);
6558                else if (1e-7 > t) this._totalTime = this._time = 0, this.ratio = this._ease._calcEnd ? this._ease.getRatio(0) : 0, (0 !== o || 0 === l && h > 0 && h !== u) && (s = "onReverseComplete", n = this._reversed), 0 > t && (this._active = !1, 0 === l && (this._initted || !this.vars.lazy || i) && (h >= 0 && (h !== u || "isPause" !== this.data) && (i = !0), this._rawPrevTime = a = !e || t || h === t ? t : u)), this._initted || (i = !0);
6559                else if (this._totalTime = this._time = t, this._easeType) {
6560                    var d = t / l,
6561                        c = this._easeType,
6562                        f = this._easePower;
6563                    (1 === c || 3 === c && d >= .5) && (d = 1 - d), 3 === c && (d *= 2), 1 === f ? d *= d : 2 === f ? d *= d * d : 3 === f ? d *= d * d * d : 4 === f && (d *= d * d * d * d), this.ratio = 1 === c ? 1 - d : 2 === c ? d : .5 > t / l ? d / 2 : 1 - d / 2
6564                } else this.ratio = this._ease.getRatio(t / l);
6565                if (this._time !== o || i) {
6566                    if (!this._initted) {
6567                        if (this._init(), !this._initted || this._gc) return;
6568                        if (!i && this._firstPT && (this.vars.lazy !== !1 && this._duration || this.vars.lazy && !this._duration)) return this._time = this._totalTime = o, this._rawPrevTime = h, Y.push(this), void(this._lazy = [t, e]);
6569                        this._time && !n ? this.ratio = this._ease.getRatio(this._time / l) : n && this._ease._calcEnd && (this.ratio = this._ease.getRatio(0 === this._time ? 0 : 1))
6570                    }
6571                    for (this._lazy !== !1 && (this._lazy = !1), this._active || !this._paused && this._time !== o && t >= 0 && (this._active = !0), 0 === o && (this._startAt && (t >= 0 ? this._startAt.render(t, e, i) : s || (s = "_dummyGS")), this.vars.onStart && (0 !== this._time || 0 === l) && (e || this.vars.onStart.apply(this.vars.onStartScope || this, this.vars.onStartParams || y))), r = this._firstPT; r;) r.f ? r.t[r.p](r.c * this.ratio + r.s) : r.t[r.p] = r.c * this.ratio + r.s, r = r._next;
6572                    this._onUpdate && (0 > t && this._startAt && t !== -1e-4 && this._startAt.render(t, e, i),
6573                        e || (this._time !== o || n) && this._onUpdate.apply(this.vars.onUpdateScope || this, this.vars.onUpdateParams || y)), s && (!this._gc || i) && (0 > t && this._startAt && !this._onUpdate && t !== -1e-4 && this._startAt.render(t, e, i), n && (this._timeline.autoRemoveChildren && this._enabled(!1, !1), this._active = !1), !e && this.vars[s] && this.vars[s].apply(this.vars[s + "Scope"] || this, this.vars[s + "Params"] || y), 0 === l && this._rawPrevTime === u && a !== u && (this._rawPrevTime = 0))
6574                }
6575            }, r._kill = function(t, e, i) {
6576                if ("all" === t && (t = null), null == t && (null == e || e === this.target)) return this._lazy = !1, this._enabled(!1, !1);
6577                e = "string" != typeof e ? e || this._targets || this.target : R.selector(e) || e;
6578                var n, s, r, a, o, l, h, u, d;
6579                if ((f(e) || A(e)) && "number" != typeof e[0])
6580                    for (n = e.length; --n > -1;) this._kill(t, e[n]) && (l = !0);
6581                else {
6582                    if (this._targets) {
6583                        for (n = this._targets.length; --n > -1;)
6584                            if (e === this._targets[n]) {
6585                                o = this._propLookup[n] || {}, this._overwrittenProps = this._overwrittenProps || [], s = this._overwrittenProps[n] = t ? this._overwrittenProps[n] || {} : "all";
6586                                break
6587                            }
6588                    } else {
6589                        if (e !== this.target) return !1;
6590                        o = this._propLookup, s = this._overwrittenProps = t ? this._overwrittenProps || {} : "all"
6591                    }
6592                    if (o) {
6593                        if (h = t || o, u = t !== s && "all" !== s && t !== o && ("object" != typeof t || !t._tempKill), i && (R.onOverwrite || this.vars.onOverwrite)) {
6594                            for (r in h) o[r] && (d || (d = []), d.push(r));
6595                            if (!X(this, i, e, d)) return !1
6596                        }
6597                        for (r in h)(a = o[r]) && (a.pg && a.t._kill(h) && (l = !0), a.pg && 0 !== a.t._overwriteProps.length || (a._prev ? a._prev._next = a._next : a === this._firstPT && (this._firstPT = a._next), a._next && (a._next._prev = a._prev), a._next = a._prev = null), delete o[r]), u && (s[r] = 1);
6598                        !this._firstPT && this._initted && this._enabled(!1, !1)
6599                    }
6600                }
6601                return l
6602            }, r.invalidate = function() {
6603                return this._notifyPluginsOfEnabled && R._onPluginEvent("_onDisable", this), this._firstPT = this._overwrittenProps = this._startAt = this._onUpdate = null, this._notifyPluginsOfEnabled = this._active = this._lazy = !1, this._propLookup = this._targets ? {} : [], D.prototype.invalidate.call(this), this.vars.immediateRender && (this._time = -u, this.render(-this._delay)), this
6604            }, r._enabled = function(t, e) {
6605                if (o || a.wake(), t && this._gc) {
6606                    var i, n = this._targets;
6607                    if (n)
6608                        for (i = n.length; --i > -1;) this._siblings[i] = H(n[i], this, !0);
6609                    else this._siblings = H(this.target, this, !0)
6610                }
6611                return D.prototype._enabled.call(this, t, e), this._notifyPluginsOfEnabled && this._firstPT ? R._onPluginEvent(t ? "_onEnable" : "_onDisable", this) : !1
6612            }, R.to = function(t, e, i) {
6613                return new R(t, e, i)
6614            }, R.from = function(t, e, i) {
6615                return i.runBackwards = !0, i.immediateRender = 0 != i.immediateRender, new R(t, e, i)
6616            }, R.fromTo = function(t, e, i, n) {
6617                return n.startAt = i, n.immediateRender = 0 != n.immediateRender && 0 != i.immediateRender, new R(t, e, n)
6618            }, R.delayedCall = function(t, e, i, n, s) {
6619                return new R(e, 0, {
6620                    delay: t,
6621                    onComplete: e,
6622                    onCompleteParams: i,
6623                    onCompleteScope: n,
6624                    onReverseComplete: e,
6625                    onReverseCompleteParams: i,
6626                    onReverseCompleteScope: n,
6627                    immediateRender: !1,
6628                    lazy: !1,
6629                    useFrames: s,
6630                    overwrite: 0
6631                })
6632            }, R.set = function(t, e) {
6633                return new R(t, 0, e)
6634            }, R.getTweensOf = function(t, e) {
6635                if (null == t) return [];
6636                t = "string" != typeof t ? t : R.selector(t) || t;
6637                var i, n, s, r;
6638                if ((f(t) || A(t)) && "number" != typeof t[0]) {
6639                    for (i = t.length, n = []; --i > -1;) n = n.concat(R.getTweensOf(t[i], e));
6640                    for (i = n.length; --i > -1;)
6641                        for (r = n[i], s = i; --s > -1;) r === n[s] && n.splice(i, 1)
6642                } else
6643                    for (n = H(t).concat(), i = n.length; --i > -1;)(n[i]._gc || e && !n[i].isActive()) && n.splice(i, 1);
6644                return n
6645            }, R.killTweensOf = R.killDelayedCallsTo = function(t, e, i) {
6646                "object" == typeof e && (i = e, e = !1);
6647                for (var n = R.getTweensOf(t, e), s = n.length; --s > -1;) n[s]._kill(i, t)
6648            };
6649            var q = g("plugins.TweenPlugin", function(t, e) {
6650                this._overwriteProps = (t || "").split(","), this._propName = this._overwriteProps[0], this._priority = e || 0, this._super = q.prototype
6651            }, !0);
6652            if (r = q.prototype, q.version = "1.10.1", q.API = 2, r._firstPT = null, r._addTween = function(t, e, i, n, s, r) {
6653                    var a, o;
6654                    return null != n && (a = "number" == typeof n || "=" !== n.charAt(1) ? Number(n) - i : parseInt(n.charAt(0) + "1", 10) * Number(n.substr(2))) ? (this._firstPT = o = {
6655                        _next: this._firstPT,
6656                        t: t,
6657                        p: e,
6658                        s: i,
6659                        c: a,
6660                        f: "function" == typeof t[e],
6661                        n: s || e,
6662                        r: r
6663                    }, o._next && (o._next._prev = o), o) : void 0
6664                }, r.setRatio = function(t) {
6665                    for (var e, i = this._firstPT, n = 1e-6; i;) e = i.c * t + i.s, i.r ? e = Math.round(e) : n > e && e > -n && (e = 0), i.f ? i.t[i.p](e) : i.t[i.p] = e, i = i._next
6666                }, r._kill = function(t) {
6667                    var e, i = this._overwriteProps,
6668                        n = this._firstPT;
6669                    if (null != t[this._propName]) this._overwriteProps = [];
6670                    else
6671                        for (e = i.length; --e > -1;) null != t[i[e]] && i.splice(e, 1);
6672                    for (; n;) null != t[n.n] && (n._next && (n._next._prev = n._prev), n._prev ? (n._prev._next = n._next, n._prev = null) : this._firstPT === n && (this._firstPT = n._next)), n = n._next;
6673                    return !1
6674                }, r._roundProps = function(t, e) {
6675                    for (var i = this._firstPT; i;)(t[this._propName] || null != i.n && t[i.n.split(this._propName + "_").join("")]) && (i.r = e), i = i._next
6676                }, R._onPluginEvent = function(t, e) {
6677                    var i, n, s, r, a, o = e._firstPT;
6678                    if ("_onInitAllProps" === t) {
6679                        for (; o;) {
6680                            for (a = o._next, n = s; n && n.pr > o.pr;) n = n._next;
6681                            (o._prev = n ? n._prev : r) ? o._prev._next = o: s = o, (o._next = n) ? n._prev = o : r = o, o = a
6682                        }
6683                        o = e._firstPT = s
6684                    }
6685                    for (; o;) o.pg && "function" == typeof o.t[t] && o.t[t]() && (i = !0), o = o._next;
6686                    return i
6687                }, q.activate = function(t) {
6688                    for (var e = t.length; --e > -1;) t[e].API === q.API && (I[(new t[e])._propName] = t[e]);
6689                    return !0
6690                }, m.plugin = function(t) {
6691                    if (!(t && t.propName && t.init && t.API)) throw "illegal plugin definition.";
6692                    var e, i = t.propName,
6693                        n = t.priority || 0,
6694                        s = t.overwriteProps,
6695                        r = {
6696                            init: "_onInitTween",
6697                            set: "setRatio",
6698                            kill: "_kill",
6699                            round: "_roundProps",
6700                            initAll: "_onInitAllProps"
6701                        },
6702                        a = g("plugins." + i.charAt(0).toUpperCase() + i.substr(1) + "Plugin", function() {
6703                            q.call(this, i, n), this._overwriteProps = s || []
6704                        }, t.global === !0),
6705                        o = a.prototype = new q(i);
6706                    o.constructor = a, a.API = t.API;
6707                    for (e in r) "function" == typeof t[e] && (o[r[e]] = t[e]);
6708                    return a.version = t.version, q.activate([a]), a
6709                }, n = t._gsQueue) {
6710                for (s = 0; n.length > s; s++) n[s]();
6711                for (r in p) p[r].func || t.console.log("GSAP encountered missing dependency: com.greensock." + r)
6712            }
6713            o = !1
6714        }
6715    }("undefined" != typeof module && module.exports && "undefined" != typeof global ? global : this || window, "TweenMax"),
6716    function(t) {
6717        t(document).ready(function() {
6718            function e() {
6719                TweenMax.to(r, .1, {
6720                    scaleX: 1.2,
6721                    scaleY: .6,
6722                    ease: Quad.easeOut,
6723                    onComplete: function() {
6724                        TweenMax.to(r, .8, {
6725                            scale: .6,
6726                            ease: Elastic.easeOut,
6727                            easeParams: [1.1, .6]
6728                        }), TweenMax.to(r.children(".share-icon"), .8, {
6729                            scale: 1.4,
6730                            ease: Elastic.easeOut,
6731                            easeParams: [1.1, .6]
6732                        })
6733                    }
6734                }), s.each(function(e) {
6735                    var i = t(this),
6736                        n = e - l;
6737                    n >= 0 && (n += 1);
6738                    var s = Math.abs(n);
6739                    i.css({
6740                        zIndex: l - s
6741                    }), TweenMax.to(i, 1.1 * s, {
6742                        x: n * h,
6743                        scaleY: .6,
6744                        scaleX: 1.1,
6745                        ease: Elastic.easeOut,
6746                        easeParams: [1.01, .5]
6747                    }), TweenMax.to(i, .8, {
6748                        delay: .2 * s - .1,
6749                        scale: .6,
6750                        ease: Elastic.easeOut,
6751                        easeParams: [1.1, .6]
6752                    }), TweenMax.fromTo(i.children(".share-icon"), .2, {
6753                        scale: 0
6754                    }, {
6755                        delay: .2 * s - .1,
6756                        scale: 1,
6757                        ease: Quad.easeInOut
6758                    })
6759                })
6760            }
6761
6762            function i() {
6763                TweenMax.to([r, r.children(".share-icon")], 1.4, {
6764                    delay: .1,
6765                    scale: 1,
6766                    ease: Elastic.easeOut,
6767                    easeParams: [1.1, .3]
6768                }), s.each(function(e) {
6769                    var i = t(this),
6770                        n = e - l;
6771                    n >= 0 && (n += 1);
6772                    var s = Math.abs(n);
6773                    i.css({
6774                        zIndex: s
6775                    }), TweenMax.to(i, .4 + .1 * (l - s), {
6776                        x: 0,
6777                        scale: .95,
6778                        ease: Quad.easeInOut
6779                    }), TweenMax.to(i.children(".share-icon"), .2, {
6780                        scale: 0,
6781                        ease: Quad.easeIn
6782                    })
6783                })
6784            }
6785
6786            function n() {
6787                a = !a, a ? e() : i()
6788            }
6789            var s = t(".share-button"),
6790                r = t(".share-toggle-button"),
6791                a = !1,
6792                o = s.length,
6793                l = o / 2,
6794                h = 75;
6795            r.on("mousedown", function() {
6796                n()
6797            })
6798        })
6799    }(jQuery);
6800var PlayerLeaderboard = function() {
6801    function t() {
6802        jQuery(".player-leaderboards").length > 0 && (i = jQuery("#tbPlayerLeaderboardScore"), jQuery("#tbPlayerLeaderboardsSelect").on("change", e))
6803    }
6804
6805    function e() {
6806        var t = jQuery("#tbPlayerLeaderboardsSelect").val();
6807        i.addClass("tbHidden");
6808        var e = jQuery("#" + t);
6809        e.length > 0 && (i = e, i.removeClass("tbHidden"))
6810    }
6811    var i = null;
6812    return {
6813        setup: function() {
6814            t()
6815        }
6816    }
6817}();
6818jQuery(document).ready(function() {
6819    PlayerLeaderboard.setup()
6820});
6821var GroupStandings = function() {
6822    function t() {
6823        jQuery(".group-standings").length > 0 && (i = jQuery(jQuery(".tbGroupStandingsPageMultiple").not("tbHidden")), jQuery("#tbGroupStandingSelect").on("change", e))
6824    }
6825
6826    function e() {
6827        var t = jQuery("#tbGroupStandingSelect").val();
6828        i.addClass("tbHidden");
6829        var e = jQuery("#" + t);
6830        e.length > 0 && (i = e, i.removeClass("tbHidden")), jQuery(".equal-row").each(function() {
6831            jQuery(this).find(".equal").height("auto"), jQuery(this).find(".equal").equalHeights()
6832        })
6833    }
6834    var i = null;
6835    return {
6836        setup: function() {
6837            t()
6838        }
6839    }
6840}();
6841jQuery(document).ready(function() {
6842    GroupStandings.setup()
6843});
6844var GroupStandingsList = function() {
6845    function t() {
6846        jQuery(".group-standings").length > 0 && jQuery("#tbGroupStandingSelect").on("change", e)
6847    }
6848
6849    function e() {
6850        var t = jQuery("#tbGroupStandingSelect").val();
6851        "tb_all_tournament_groups" === t ? jQuery(".tbGroupStandingsPageMultipleList").each(function() {
6852            jQuery(this).removeClass("tbHidden")
6853        }) : jQuery(".tbGroupStandingsPageMultipleList").each(function() {
6854            var e = jQuery(this).attr("id");
6855            e === t ? jQuery(this).removeClass("tbHidden") : jQuery(this).addClass("tbHidden")
6856        })
6857    }
6858    return {
6859        setup: function() {
6860            t()
6861        }
6862    }
6863}();
6864jQuery(document).ready(function(t) {
6865    GroupStandingsList.setup(), t(".tabToggle").on("click", function() {
6866        var e = t(this).attr("data-type"),
6867            i = t(".toggleBox");
6868        t(".tabToggle").removeClass("active"), t(this).addClass("active"), i.hide(), i.filter('[data-type="' + e + '"]').show()
6869    })
6870});
6871var PlayerPositionTypes = function() {
6872        return {
6873            All: "all_positions",
6874            Center: "center",
6875            Winger: "winger",
6876            Defence: "defence",
6877            Goalkeeper: "goalkeeper"
6878        }
6879    }(),
6880    Leaderboards = function() {
6881        return {
6882            Score: "score",
6883            Goal: "goal",
6884            Assist: "assist",
6885            Penalty: "penalty",
6886            SavesPercentage: "svsprc"
6887        }
6888    }(),
6889    PlayerLeaderboardAdv = function() {
6890        function t() {
6891            jQuery("#tbPLAdvLeaderboard").length > 0 && (jQuery("#tbPLAdvTeamSelect").length > 0 && (s = !0), jQuery("#tbPLAdvPositionSelect").on("change", e), jQuery("#tbPLAdvTeamSelect").on("change", n), jQuery("#tbPLAdvLeaderboardSelect").on("change", n))
6892        }
6893
6894        function e() {
6895            var t = jQuery("#tbPLAdvPositionSelect").val();
6896            switch (t) {
6897                case PlayerPositionTypes.All:
6898                    i(Leaderboards.Score, !0), i(Leaderboards.Goal, !0), i(Leaderboards.Assist, !0), i(Leaderboards.Penalty, !0), i(Leaderboards.SavesPercentage, !0);
6899                    break;
6900                case PlayerPositionTypes.Center:
6901                case PlayerPositionTypes.Winger:
6902                case PlayerPositionTypes.Defence:
6903                    i(Leaderboards.Score, !0), i(Leaderboards.Goal, !0), i(Leaderboards.Assist, !0), i(Leaderboards.Penalty, !0), i(Leaderboards.SavesPercentage, !1);
6904                    break;
6905                case PlayerPositionTypes.Goalkeeper:
6906                    i(Leaderboards.Score, !1), i(Leaderboards.Goal, !1), i(Leaderboards.Assist, !1), i(Leaderboards.Penalty, !0), i(Leaderboards.SavesPercentage, !0)
6907            }
6908            if (null == jQuery("#tbPLAdvLeaderboardSelect").val())
6909                for (var e = jQuery("#tbPLAdvLeaderboardSelect > option"), s = 0; s < e.length; s++) {
6910                    var r = jQuery(e[s]);
6911                    if (0 == r.prop("disabled")) {
6912                        r.prop("selected", !0);
6913                        break
6914                    }
6915                }
6916            n()
6917        }
6918
6919        function i(t, e) {
6920            var t = jQuery("#tbPLAdvLeaderboardSelect option[value='" + t + "']");
6921            e === !0 ? t.removeAttr("disabled") : t.attr("disabled", "disabled")
6922        }
6923
6924        function n() {
6925            var t = {
6926                action: jQuery("#tbPLAdvLeaderboard").attr("data-action"),
6927                positionType: jQuery("#tbPLAdvPositionSelect").val(),
6928                leaderboardType: jQuery("#tbPLAdvLeaderboardSelect").val()
6929            };
6930            1 == s ? t.teamId = jQuery("#tbPLAdvTeamSelect").val() : t.teamId = jQuery("#tbPLAdvLeaderboard").attr("data-default-team-id"), jQuery.ajax({
6931                type: "GET",
6932                url: jQuery("#tbPLAdvLeaderboard").attr("data-url"),
6933                data: t,
6934                dataType: "json",
6935                beforeSend: function() {
6936                    var t = '<div class="loaderOverlay"><div class="spinner"><div class="cube1"></div><div class="cube2"></div></div></div>';
6937                    jQuery("#tbPLAdvContent").prepend(t), jQuery(".loaderOverlay").fadeIn()
6938                },
6939                success: function(t) {
6940                    jQuery("#tbPLAdvContent").empty(), jQuery("#tbPLAdvContent").append(t.output)
6941                },
6942                error: function() {
6943                    jQuery("#tbPLAdvContent").empty(), jQuery("#tbPLAdvContent").append("<div class='no-data'><div class='message bounceIn'><i class='fa fa-exclamation-triangle' aria-hidden='true'></i>Misslyckades hämta data.</div></div>")
6944                }
6945            })
6946        }
6947        var s = !1;
6948        return {
6949            setup: function() {
6950                t()
6951            }
6952        }
6953    }();
6954jQuery(document).ready(function() {
6955    PlayerLeaderboardAdv.setup()
6956});
6957jQuery(document).ready(function(t) {
6958    t(".source").find("a").attr("target", "_blank")
6959});
6960! function(t, e) {
6961    "use strict";
6962    "function" == typeof define && define.amd ? define("tweetlight", e) : "object" == typeof exports ? module.exports = e() : t.Tweetlight = e()
6963}(this, function() {
6964    "use strict";
6965    Function.prototype.hasOwnProperty("bind") || (Function.prototype.bind = function() {
6966        var t = this,
6967            e = arguments[0],
6968            i = Array.prototype.slice.call(arguments, 1);
6969        return function() {
6970            return t.apply(e, i.concat(Array.prototype.slice.call(arguments)))
6971        }
6972    });
6973    var t = function(e) {
6974        return this && this instanceof t ? e ? (this.endpoint = e.endpoint, this.action = e.action, this.username = e.username, this.hashtag = e.hashtag, this.nonce = e.nonce, this.container = e.container, this.counter = e.counter, this.showImageProfile = e.showImageProfile || !1, this.onComplete = e.onComplete || void 0, this.refreshRate = 12e4, void this.fetch()) : void console.log("%c Don't initialize the plugin without setting a username or without setting an html element to attach tweets", "background: red; color: white") : new t(e)
6975    };
6976    return t.prototype = {
6977        inject: function(t, e) {
6978            jQuery(t).prepend(e)
6979        },
6980        fetch: function() {
6981            var t = this.action ? "action=" + encodeURIComponent(this.action) : "",
6982                e = this.hashtag ? "&hashtag=" + encodeURIComponent(this.hashtag) : "username=" + this.username,
6983                i = this.counter ? "&count=" + this.counter : "",
6984                n = this.nonce ? "&nonce=" + this.nonce : "",
6985                s = this.endpoint + "?" + t + e + i + n;
6986            this.getJSON(s, this.loadTweets.bind(this), this.failure.bind(this))
6987        },
6988        getJSON: function(t, e, i) {
6989            var n = new XMLHttpRequest;
6990            n.open("GET", t, !0), n.setRequestHeader("X-Requested-With", "XMLHttpRequest"), n.setRequestHeader("Content-type", "application/json"), n.onreadystatechange = function() {
6991                if (4 === this.readyState)
6992                    if (this.status >= 200 && this.status < 300 || 304 === this.status) {
6993                        var t = JSON.parse(this.responseText);
6994                        e.call(this, t)
6995                    } else i.call(this, this.status + " - " + this.statusText)
6996            }, n.send(), n = null, this.refresh()
6997        },
6998        refresh: function() {
6999            var t = this;
7000            setTimeout(function() {
7001                t.fetch()
7002            }, this.refreshRate)
7003        },
7004        loadTweets: function(t) {
7005            var e = t.httpstatus;
7006            200 === e ? (t.statuses && (t = t.statuses), this.displayTweets(t), "function" == typeof this.onComplete && this.onComplete.call()) : this.displayError(t)
7007        },
7008        displayTweets: function(t) {
7009            var e, i, n, s = document.querySelector(this.container);
7010            for (n in t) t.hasOwnProperty(n) && t[n].text && 0 === jQuery("#tweet-" + t[n].id_str).length && (i = this.showImageProfile ? '<img class="image-profile" src="' + t[n].user.profile_image_url_https + '" alt="' + t[n].user.name + '">' : "", e = '<li id="tweet-' + t[n].id_str + '">' + i + '<div><span class="user">' + t[n].user.name + '</span><span class="tweet">' + this.twitterLinks(t[n].text) + '</span><span class="created">
7010' + this.prettyDate(t[n].created_at) + "</span></div></li>", this.inject(s, e), jQuery(this.container).children("li").length > this.counter && jQuery(this.container).children("li").last().remove())
7011        },
7012        displayError: function(t) {
7013            var e = document.querySelector(this.container);
7014            this.inject(e, '<li class="error">' + t.errors[0].message + "</li>")
7015        },
7016        failure: function(t) {
7017            console.log(t)
7018        },
7019        prettyDate: function(t) {
7020            var e, i, n, s, r, a, o = new Date,
7021                l = new Date(t);
7022            return (-1 !== navigator.userAgent.indexOf("MSIE") || navigator.appVersion.indexOf("Trident/") > 0) && (l = Date.parse(t.replace(/( \+)/, " UTC$1"))), e = o - l, i = 1e3, n = 60 * i, s = 60 * n, r = 24 * s, a = 7 * r, isNaN(e) || 0 > e ? "" : 2 * i > e ? "just now" : n > e ? Math.floor(e / i) + " seconds ago" : 2 * n > e ? "1 minute ago" : s > e ? Math.floor(e / n) + " minutes ago" : 2 * s > e ? "1 hour ago" : r > e ? Math.floor(e / s) + " hours ago" : e > r && 2 * r > e ? "yesterday" : 365 * r > e ? Math.floor(e / r) + " days ago" : "over a year ago"
7023        },
7024        twitterLinks: function(t) {
7025            return t = t.replace(/(https?:\/\/)([\w\-:;?&=+.%#\/]+)/gi, '<a href="$1$2">$2</a>').replace(/(^|\W)@(\w+)/g, '$1<a href="https://twitter.com/$2">@$2</a>').replace(/(^|\W)#(\w+)/g, '$1<a href="https://twitter.com/search?q=%23$2">#$2</a>')
7026        }
7027    }, t
7028});
7029jQuery(document).ready(function() {
7030    if (jQuery("#twitter-timeline").length > 0) {
7031        var t = jQuery("#twitter-timeline"),
7032            e = t.attr("data-hashtag"),
7033            i = t.attr("data-url"),
7034            n = t.attr("data-action"),
7035            s = (t.attr("data-action"), t.attr("data-nonce"));
7036        Tweetlight({
7037            hashtag: e,
7038            endpoint: i,
7039            action: n,
7040            nonce: s,
7041            container: "#twitter-timeline",
7042            showImageProfile: !0,
7043            counter: 5,
7044            onComplete: function() {}
7045        })
7046    }
7047});
7048var InstagramFeed = function() {
7049    function t() {
7050        var t = jQuery("#instagram-tag-timeline");
7051        t.length > 0 && (v = t, f = t.attr("data-tag"), p = t.attr("data-action"), _ = t.attr("data-url"), m = t.attr("data-nonce"), g = t.attr("data-count"), g = Math.max(0, g), v.append('<ul id="lightGallery"></ul>'), y = jQuery(v.children("#lightGallery")[0]), v.append('<div id="instagram-videos" style="display:none;"></div>'), w = jQuery(v.children("#instagram-videos")[0]), v.append('<div id="instagram-captions" style="display:none;"></div>'), b = jQuery(v.children("#instagram-captions")[0]), n(), e())
7052    }
7053
7054    function e() {
7055        y.on("onBeforeOpen.lg", function() {
7056            S = !0
7057        }), y.on("onCloseAfter.lg", function() {
7058            S = !1
7059        })
7060    }
7061
7062    function i() {
7063        setTimeout(function() {
7064            S ? i() : n()
7065        }, T)
7066    }
7067
7068    function n() {
7069        var t = {
7070            action: p,
7071            nonce: m,
7072            tag: f
7073        };
7074        jQuery.ajax({
7075            type: "GET",
7076            url: _,
7077            data: t,
7078            dataType: "json",
7079            success: function(t) {
7080                "success" === t.status && s(t.media), i()
7081            },
7082            error: function() {
7083                i()
7084            }
7085        })
7086    }
7087
7088    function s(t) {
7089        for (var e = 0; e < t.length && e != g; e++) {
7090            var i = t[e];
7091            0 === jQuery("#" + i.id).length && ("image" === i.type ? r(i) : a(i), o(i))
7092        }
7093        var n = l();
7094        if (n > g)
7095            for (var s = n - g, e = 0; s > e; e++) h();
7096        x ? (y.data("lightGallery").destroy(!0), y.lightGallery({
7097            preload: 0
7098        })) : (y.lightGallery({
7099            preload: 0
7100        }), x = !0)
7101    }
7102
7103    function r(t) {
7104        y.prepend('<li class="instagram-media" id="' + t.id + '" data-media-type="image" href="' + t.image + '" data-sub-html="#caption-' + t.id + '"><img src="' + t.thumbnail + '"/></li>')
7105    }
7106
7107    function a(t) {
7108        w.append('<div id="video-' + t.id + '"><video class="lg-video-object lg-html5" controls preload="none"><source src="' + t.video + '" type="video/mp4">Your browser does not support HTML5 video.</video></div>'), y.prepend('<li class="instagram-media" id="' + t.id + '" data-media-type="video" data-html="#video-' + t.id + '" data-sub-html="#caption-' + t.id + '"><img src="' + t.thumbnail + '"/></li>')
7109    }
7110
7111    function o(t) {
7112        b.append('<div id="caption-' + t.id + '"><h4>' + t.user.username + "</h4><p>" + t.text + "</p></div>")
7113    }
7114
7115    function l() {
7116        return y.children(".instagram-media").length
7117    }
7118
7119    function h() {
7120        var t = jQuery(y).children(".instagram-media").last(),
7121            e = t.attr("data-media-type");
7122        c(t), "image" === e ? u(t) : d(t)
7123    }
7124
7125    function u(t) {
7126        t.remove()
7127    }
7128
7129    function d(t) {
7130        var e = t.attr("id");
7131        t.remove();
7132        var i = jQuery(jQuery(w).find("#video-" + e)[0]);
7133        i.remove()
7134    }
7135
7136    function c(t) {
7137        var e = t.attr("id"),
7138            i = jQuery(jQuery(b).find("#caption-" + e)[0]);
7139        i.remove()
7140    }
7141    var f = "",
7142        p = "",
7143        _ = "",
7144        m = "",
7145        g = 0,
7146        v = null,
7147        y = null,
7148        w = null,
7149        b = null,
7150        T = 12e4,
7151        x = !1,
7152        S = !1;
7153    return {
7154        setup: function() {
7155            t()
7156        }
7157    }
7158}();
7159jQuery(document).ready(function() {
7160    InstagramFeed.setup()
7161});
7162var GameTicker = function() {
7163    function t() {
7164        if (jQuery("#gameTicker").length > 0) {
7165            n = jQuery("#gameTicker"), s = jQuery("#game-goals"), r = jQuery("#game-periods");
7166            var t = n.attr("data-game-live");
7167            1 == t && e()
7168        }
7169    }
7170
7171    function e() {
7172        setTimeout(function() {
7173            i()
7174        }, a)
7175    }
7176
7177    function i() {
7178        var t = {
7179            action: n.attr("data-action"),
7180            gameId: n.attr("data-game-id"),
7181            nonce: n.attr("data-nonce")
7182        };
7183        jQuery.ajax({
7184            type: "GET",
7185            url: n.attr("data-url"),
7186            data: t,
7187            dataType: "json",
7188            success: function(t) {
7189                "success" === t.status && (n.empty(), n.append(t.output), s.empty(), s.append(t.result.GoalsHome + " - " + t.result.GoalsGuest), r.empty(), r.append(t.result.Per
7189iods), t.gameStatus.Ended !== !0 ? e() : console.log("Game ended. Live-feed shutting down."))
7190            },
7191            error: function() {}
7192        })
7193    }
7194    var n = null,
7195        s = null,
7196        r = null,
7197        a = 2e4;
7198    return {
7199        setup: function() {
7200            t()
7201        }
7202    }
7203}();
7204jQuery(document).ready(function() {
7205    GameTicker.setup()
7206});
7207jQuery(document).ready(function(t) {
7208    var e = "",
7209        i = t("#aniimated-thumbnials");
7210    i.lightGallery({
7211        selector: "a"
7212    }), t(".filter-wrapper .filter").on("click", function() {
7213        e = t(this).data("filter"), t("#aniimated-thumbnials").data("lightGallery").destroy(!0), i.lightGallery({
7214            selector: e
7215        })
7216    })
7217});
7218var Teams = function() {
7219    function t() {
7220        jQuery("#tbTeamModule").length > 0 && (i = jQuery(jQuery(".tbTeams").not("tbHidden")), jQuery("#tbTeamSelect").on("change", e))
7221    }
7222
7223    function e() {
7224        var t = jQuery("#tbTeamSelect").val();
7225        i.addClass("tbHidden");
7226        var e = jQuery("#" + t);
7227        e.length > 0 && (i = e, i.removeClass("tbHidden"))
7228    }
7229    var i = null;
7230    return {
7231        setup: function() {
7232            t()
7233        }
7234    }
7235}();
7236jQuery(document).ready(function() {
7237    Teams.setup()
7238});
7239var mIndex = 0,
7240    GameSlider = function() {
7241        function t() {
7242            jQuery("#gameSlider").length > 0 && (s = jQuery("#gameSlider"), r = jQuery("#gameSliderContent"), e(), i())
7243        }
7244
7245        function e() {
7246            a = new Swiper(".match-swiper-container", {
7247                paginationClickable: !0,
7248                nextButton: ".swiper-button-next",
7249                prevButton: ".swiper-button-prev",
7250                spaceBetween: 0,
7251                slidesPerView: 9,
7252                initialSlide: mIndex,
7253                preventClicks: !1,
7254                preventClicksPropagation: !1,
7255                grabCursor: !0,
7256                breakpoints: {
7257                    1360: {
7258                        slidesPerView: 8
7259                    },
7260                    1280: {
7261                        slidesPerView: 7
7262                    },
7263                    1200: {
7264                        slidesPerView: 6
7265                    },
7266                    1024: {
7267                        slidesPerView: 5
7268                    },
7269                    768: {
7270                        slidesPerView: 4
7271                    },
7272                    640: {
7273                        slidesPerView: 3
7274                    },
7275                    480: {
7276                        slidesPerView: 3
7277                    },
7278                    375: {
7279                        slidesPerView: 2
7280                    }
7281                }
7282            })
7283        }
7284
7285        function i() {
7286            setTimeout(function() {
7287                n()
7288            }, o)
7289        }
7290
7291        function n() {
7292            var t = {
7293                action: s.attr("data-action"),
7294                nonce: s.attr("data-nonce")
7295            };
7296            jQuery.ajax({
7297                type: "GET",
7298                url: s.attr("data-url"),
7299                data: t,
7300                dataType: "json",
7301                success: function(t) {
7302                    r.empty(), r.append(t.output), a.update(), i()
7303                },
7304                error: function() {}
7305            })
7306        }
7307        var s = null,
7308            r = null,
7309            a = null,
7310            o = 2e4;
7311        return {
7312            setup: function() {
7313                t()
7314            }
7315        }
7316    }();
7317jQuery(document).ready(function(t) {
7318    for (var e = t("#gameSliderContent").children(".swiper-slide"), i = moment().format("YYYY-MM-DD"), n = 0; n < e.length; n++) {
7319        var s = t(e[n]).data("date");
7320        if (void 0 !== s) {
7321            if (moment(s).isBefore(i)) continue;
7322            mIndex = n;
7323            break
7324        }
7325    }
7326    GameSlider.setup()
7327});
7328var hashes = window.location.hash,
7329    NewsInfiniteLoader = function() {
7330        function t(t) {
7331            if (n = jQuery(t), s = jQuery("#" + n.attr("data-target")), r = JSON.parse(decodeURIComponent(n.attr("data-args"))), r.offset = parseInt(r.offset), r.chunkSize = parseInt(r.chunkSize), hashes = window.location.hash, hashes.indexOf("offset") > -1)
7332                for (var a = hashes.split("#"), o = 0; o < a.length; o++)
7333                    if (a[o].indexOf("offset") > -1) {
7334                        var l = a[o].replace("offset=", "");
7335                        r.chunkSize = l, i(l)
7336                    } n.on("click", e)
7337        }
7338
7339        function e() {
7340            i()
7341        }
7342
7343        function i(t) {
7344            if (hashes = window.location.hash, hashes.indexOf("offset") > -1) {
7345                var e = r.offset;
7346                void 0 != t && (e = t), hashes.indexOf("filtered") > -1 ? window.location.hash = "#offset=" + e + "#filtered" : window.location.hash = "#offset=" + e
7347            } else -1 == hashes.indexOf("offset") && (hashes.indexOf("filtered") > -1 ? window.location.hash = "#offset=" + r.offset + "#filtered" : window.location.hash = "#offset=" + r.offset);
7348            var i = {
7349                action: n.attr("data-action"),
7350                args: r,
7351                nonce: n.attr("data-nonce")
7352            };
7353            jQuery.ajax({
7354                type: "GET",
7355                url: n.attr("data-url"),
7356                data: i,
7357                dataType: "json",
7358                beforeSend: function() {
7359                    var t = '<div class="spinner2"><div class="double-bounce1"></div><div class="double-bounce2"></div></div>';
7360                    jQuery("#tbNewsInfinityLoader").addClass("loading"), jQuery("#tbNewsInfinityLoader").parent().append(t)
7361                },
7362                success: function(e) {
7363                    if ("success" == e.status) {
7364                        jQuery(".spinner2").remove(), jQuery("#tbNewsInfinityLoader").removeClass("loading"), s.append(e.output);
7365                        var i = parseInt(e.itemsFound);
7366                        void 0 != t && (r.offset = parseInt(t)), r.offset += i, i < r.chunkSize && n.remove()
7367                    }
7368                },
7369                error: function() {
7370                    s.empty(), s.append("<div class='no-data'><div class='message bounceIn'><i class='fa fa-exclamation-triangle' aria-hidden='true'></i>Misslyckades hämta data.</div></div>")
7371                }
7372            })
7373        }
7374        var n = null,
7375            s = null,
7376            r = null;
7377        return {
7378            setup: function(e) {
7379                t(e)
7380            }
7381        }
7382    }();
7383jQuery(document).ready(function() {
7384    jQuery("#tbNewsInfinityLoader").length > 0 && NewsInfiniteLoader.setup(jQuery("#tbNewsInfinityLoader"))
7385});
7386var hashes = window.location.hash,
7387    NewsFilter = function() {
7388        function t() {
7389            jQuery("#tbNewsFilter").length > 0 && (o = jQuery("#tbNewsFilter"), l = jQuery("#tbNewsFilterContent"), jQuery("#tbNewsType").on("change", e), jQuery("#tbGameListTeam").on("change", i), jQuery("#tbGameListTourn
7389amentGroup").on("change", n), hashes.indexOf("filtered") > -1 && a())
7390        }
7391
7392        function e() {
7393            var t = s("#tbNewsType");
7394            t == d && (r("#tbGameListTournamentGroup", u), r("#tbGameListTeam", h)), hashes = window.location.hash, window.location.hash = "#filtered", a()
7395        }
7396
7397        function i() {
7398            var t = s("#tbNewsType");
7399            t == d && r("#tbNewsType", c), r("#tbGameListTournamentGroup", u), hashes = window.location.hash, window.location.hash = "#filtered", a()
7400        }
7401
7402        function n() {
7403            var t = s("#tbNewsType");
7404            t == d && r("#tbNewsType", c), r("#tbGameListTeam", h), hashes = window.location.hash, window.location.hash = "#filtered", a()
7405        }
7406
7407        function s(t) {
7408            return jQuery(t).val()
7409        }
7410
7411        function r(t, e) {
7412            for (var i = jQuery(t + "> option"), n = 0; n < i.length; n++) {
7413                var s = jQuery(i[n]);
7414                if (s.val() == e) {
7415                    s.prop("selected", !0);
7416                    break
7417                }
7418            }
7419        }
7420
7421        function a() {
7422            var t = {
7423                action: o.attr("data-action"),
7424                newsType: jQuery("#tbNewsType").val(),
7425                tournamentTeamId: jQuery("#tbGameListTeam").val(),
7426                tournamentGroupId: jQuery("#tbGameListTournamentGroup").val(),
7427                nonce: o.attr("data-nonce")
7428            };
7429            jQuery.ajax({
7430                type: "GET",
7431                url: o.attr("data-url"),
7432                data: t,
7433                dataType: "json",
7434                beforeSend: function() {
7435                    var t = '<div class="loaderOverlay"><div class="spinner"><div class="cube1"></div><div class="cube2"></div></div></div>';
7436                    jQuery("#ajax-news").prepend(t), jQuery(".loaderOverlay").fadeIn()
7437                },
7438                success: function(t) {
7439                    l.empty(), l.append(t.output), jQuery("#tbNewsInfinityLoader").length > 0 && NewsInfiniteLoader.setup(jQuery("#tbNewsInfinityLoader"))
7440                },
7441                error: function() {
7442                    l.empty(), l.append("<div class='no-data'><div class='message bounceIn'><i class='fa fa-exclamation-triangle' aria-hidden='true'></i>Misslyckades hämta data.</div>")
7443                }
7444            })
7445        }
7446        var o = null,
7447            l = null,
7448            h = "team_all_teams",
7449            u = "tournament_group_all_tournament_groups",
7450            d = "hockeyettan",
7451            c = "all_news";
7452        return {
7453            setup: function() {
7454                t()
7455            }
7456        }
7457    }();
7458jQuery(document).ready(function() {
7459    NewsFilter.setup()
7460});
7461var GameTabs = function() {
7462    function t() {
7463        jQuery("ul.gameTabs").length > 0 && (jQuery("ul.gameTabs").tabs({
7464            onShow: function(t) {
7465                i(t)
7466            }
7467        }), e())
7468    }
7469
7470    function e() {
7471        var t = jQuery("ul.gameTabs > li > .active");
7472        if (t.length > 0) {
7473            var e = jQuery(t[0]),
7474                i = e.attr("href"),
7475                s = jQuery(jQuery(i).find(".twitter")[0]);
7476            n(s)
7477        }
7478    }
7479
7480    function i(t) {
7481        var e = jQuery(t).find(".twitter").eq(0);
7482        n(e)
7483    }
7484
7485    function n(t) {
7486        var e = jQuery("#twitter-feed");
7487        e.detach(), t.append(e)
7488    }
7489    return {
7490        setup: function() {
7491            t()
7492        }
7493    }
7494}();
7495jQuery(document).ready(function() {
7496    GameTabs.setup()
7497});
7498var GameList = function() {
7499    function t() {
7500        jQuery("#tbGameList").length > 0 && (_ = jQuery("#tbGameList"), m = jQuery("#tbGameListContent"), g = jQuery("#tbGameListLoadMore"), g.on("click", n), w = parseInt(m.attr("data-count")), b = parseInt(m.attr("data-found")), jQuery("#tbGameStatus").on("change", o), jQuery("#tbGameListTeam").on("change", l), jQuery("#tbGameListTournamentGroup").on("change", h), e())
7501    }
7502
7503    function e() {
7504        var t = jQuery(".game-list-item.live");
7505        t.length > 0 && r()
7506    }
7507
7508    function i() {
7509        var t = [],
7510            e = jQuery(".game-list-item.live");
7511        if (e.length > 0)
7512            for (var i = 0; i < e.length; i++) {
7513                var n = jQuery(e[i]);
7514                t.push(n.attr("id"))
7515            }
7516        return t
7517    }
7518
7519    function n() {
7520        0 == T && (T = !0, p(k.LoadMore))
7521    }
7522
7523    function s() {
7524        a(), null !== x && (x.abort(), x = null)
7525    }
7526
7527    function r() {
7528        S = setTimeout(function() {
7529            a(), f()
7530        }, P)
7531    }
7532
7533    function a() {
7534        null !== S && clearTimeout(S)
7535    }
7536
7537    function o() {
7538        u(), p(k.Initial)
7539    }
7540
7541    function l() {
7542        u(), c("#tbGameListTournamentGroup", y), p(k.Initial)
7543    }
7544
7545    function h() {
7546        u(), c("#tbGameListTeam", v), p(k.Initial)
7547    }
7548
7549    function u() {
7550        w = 0, b = 0
7551    }
7552
7553    function d() {
7554        w >= b ? g.addClass("tbHidden") : g.removeClass("tbHidden")
7555    }
7556
7557    function c(t, e) {
7558        for (var i = jQuery(t + "> option"), n = 0; n < i.length; n++) {
7559            var s = jQuery(i[n]);
7560            if (s.val() == e) {
7561                s.prop("selected", !0);
7562                break
7563            }
7564        }
7565    }
7566
7567    function f() {
7568        var t = {
7569            action: _.attr("data-action-refresh"),
7570            nonce: _.attr("data-nonce"),
7571            ids: i()
7572        };
7573        x = jQuery.ajax({
7574            type: "GET",
7575            url: _.attr("data-url"),
7576            data: t,
7577            dataType: "json",
7578            success: function(t) {
7579                if ("success" == t.status && t.games.length > 0) {
7580                    for (var i = 0; i < t.games.length; i++) {
7581                        var n = t.games[i],
7582                            r = jQuery("#" + n.id);
7583                        if (r.length > 0) {
7584                            var a = r.find(".scoreHome").first();
7585                            a.empty(), a.append(n.goalsHome);
7586                            var o = r.find(".scoreGuest").first();
7587                            o.empty(), o.append(n.goalsGuest);
7588                            var l = r.find(".periods").first();
7589                            l.empty(), l.append(n.periods), n.ended && r.removeClass("live")
7590                        }
7591                    }
7592                    s(), e()
7593                }
7594            }
7595        })
7596    }
7597
7598    function p(t) {
7599        s();
7600        var i = {
7601            action: _.attr("data-action"),
7602            gameStatus: jQuery("#tbGameStatus").val(),
7603            tournamentTeamId: jQuery("#tbGameListTeam").val(),
7604            tournamentGroupId: jQuery("#tbGameListTournamentGroup").val(),
7605            teamid: _.attr("data-teamid"),
7606            nonce: _.attr("data-nonce"),
7607            offset: w
7608        };
7609        jQuery.ajax({
7610            type: "GET",
7611            url: _.attr("data-url"),
7612            data: i,
7613            dataType: "json",
7614            beforeSend: function() {
7615                if (t === k.Initial) {
7616                    var e = '<div class="loaderOverlay"><div class="spinner"><div class="cube1"></div><div class="cube2"></div></div></div>';
7617                    jQuery("#tbGameListContent").prepend(e), jQuery(".loaderOverlay").fadeIn()
7618                } else if (t === k.LoadMore) {
7619                    var e = '<div class="spinner2"><div class="double-bounce1"></div><div class="double-bounce2"></div></div>';
7620                    jQuery("#tbGameListLoadMore").addClass("loading"), jQuery("#tbGameListLoadMore").parent().append(e)
7621                }
7622            },
7623            success: function(i) {
7624                t === k.LoadMore && (jQuery("#tbGameListLoadMore").removeClass("loading"), jQuery(".spinner2").remove()), b = parseInt(i.result.found), t === k.Initial ? (m.empty(), w = parseInt(i.result.count)) : (T = !1, w += parseInt(i.result.count)), d(), m.append(i.result.output), e(), jQuery('.livestream-link').lightGallery({
7625                    selector: 'this'
7626                })
7627            },
7628            error: function() {
7629                m.empty(), m.append("<div class='no-data'><div class='message bounceIn'><i class='fa fa-exclamation-triangle' aria-hidden='true'></i>Misslyckades hämta data.</div>")
7630            }
7631        })
7632    }
7633    var _ = null,
7634        m = null,
7635        g = null,
7636        v = "team_all_teams",
7637        y = "tournament_group_all_tournament_groups",
7638        w = 0,
7639        b = 0,
7640        T = !1,
7641        x = null,
7642        S = null,
7643        P = 2e4,
7644        k = {
7645            Initial: 0,
7646            LoadMore: 1
7647        };
7648    return {
7649        setup: function() {
7650            t()
7651        }
7652    }
7653}();
7654jQuery(document).ready(function() {
7655    GameList.setup()
7656});
7657// var StoryTeller = function() {
7658//     function t() {
7659//         jQuery("#storyteller").length > 0 && jQuery("#storyteller-container").length > 0 && (p = jQuery("#storyteller"), _ = jQuery("#storyteller-container"), e(), i())
7660//     }
7661
7662//     function e() {
7663//         w = document.createElement("audio"), w.setAttribute("src", "/wp-content/themes/hockeyettan/assets/sounds/pling.mp3"), w.volume = m.audioVolume
7664//     }
7665
7666//     function i() {
7667//         var t = "";
7668//         t = m.stagingMode ? "http://st.tsm.impleoit.com/signalr/hubs" : "http://storyteller.swehockey.se/signalr/hubs", jQuery.connection.hub.url = t;
7669//         var e = jQuery.connection.SwehockeyStorytellerHub;
7670//         e.client.onInformationUpdate = s, e.client.onClientConnected = n, jQuery.connection.hub.start().done(r)
7671//     }
7672
7673//     function n(t) {
7674//         for (var e = JSON.parse(t), i = 0; i < e.length; i++) {
7675//             var n = e[i],
7676//                 s = a(n);
7677//             null !== s && u(s)
7678//         }
7679//         v || o()
7680//     }
7681
7682//     function s(t) {
7683//         var e = JSON.parse(t),
7684//             i = a(e);
7685//         null !== i && (u(i), v || o())
7686//     }
7687
7688//     function r() {
7689//         var t = jQuery.connection.SwehockeyStorytellerHub;
7690//         t.server.subscribeStory(m.storytellerId, m.clubId, m.language)
7691//     }
7692
7693//     function a(t) {
7694//         var e = t.Text,
7695//             i = t.Title,
7696//             n = t.IsNegative;
7697//         return m.excludeNegative && n ? null : '<strong>Just nu</strong><span title="' + i + '" class="fi flaticon-nav-arrow-right storyteller-span">' + e + '</span><div class="clearFloat"></div>'
7698//     }
7699
7700//     function o() {
7701//         _.empty();
7702//         var t = d();
7703//         null !== t ? (v = !0, _.append(t), p.slideDown(m.slideTime, l), m.playAudio && w.play()) : v = !1
7704//     }
7705
7706//     function l() {
7707//         f()
7708//     }
7709
7710//     function h() {
7711//         o()
7712//     }
7713
7714//     function u(t) {
7715//         g.push(t)
7716//     }
7717
7718//     function d() {
7719//         return g.length > 0 ? g.shift() : null
7720//     }
7721
7722//     function c() {
7723//         y = null, p.slideUp(m.slideTime, h)
7724//     }
7725
7726//     function f() {
7727//         y = setTimeout(c, m.showTime)
7728//     }
7729//     var p = null,
7730//         _ = null,
7731//         m = {
7732//             storytellerId: 2,
7733//             clubId: null,
7734//             language: "sv",
7735//             stagingMode: !1,
7736//             excludeNegativeInfos: !0,
7737//             showTime: 5e3,
7738//             slideTime: 200,
7739//             audioVolume: .05,
7740//             playAudio: !0
7741//         },
7742//         g = [],
7743//         v = !1,
7744//         y = null,
7745//         w = null;
7746//     return {
7747//         setup: function() {
7748//             t()
7749//         }
7750//     }
7751// }();
7752// jQuery(document).ready(function() {
7753//     StoryTeller.setup()
7754// });
7755jQuery(document).ready(function(t) {
7756    new Swiper(".post-container", {
7757        pagination: ".swiper-pagination",
7758        paginationClickable: !0,
7759        autoplay: 7e3,
7760        loop: !0,
7761        onSlideChangeStart: function(e) {
7762            var i = t(".singleSlidePost").eq(e.previousIndex).find("iframe").attr("src");
7763            t(".singleSlidePost").eq(e.previousIndex).find("iframe").attr("src", i)
7764        },
7765        onSlideChangeEnd: function(e) {
7766            t(".singleSlidePost").eq(e.activeIndex).attr("data-id");
7767            t(".post-list-item").removeClass("active"), t(".post-list-item").eq(e.activeIndex - 1).addClass("active")
7768        }
7769    })
7770});
7771var LazyLoader = {};
7772LazyLoader.timer = {}, LazyLoader.scripts = [], LazyLoader.load = function(t, e, i) {
7773    try {
7774        LazyLoader.scripts.push(t);
7775        var n = document.createElement("script");
7776        if (n.src = t, n.type = "text/javascript", e.get(0).appendChild(n), i) {
7777            n.onreadystatechange = function() {
7778                ("loaded" === n.readyState || "complete" === n.readyState) && (i(), jQuery(n).remove())
7779            }, n.onload = function() {
7780                i(), jQuery(n).remove()
7781            };
7782            try {
7783                ($.browser.webkit && !navigator.userAgent.match(/Version\/3/) || $.browser.opera) && (LazyLoader.timer[t] = setInterval(function() {
7784                    /loaded|complete/.test(document.readyState) && (clearInterval(LazyLoader.timer[t]), i())
7785                }, 10))
7786            } catch (r) {}
7787        }
7788    } catch (s) {
7789        alert(s)
7790    }
7791};
7792var xrayAd = {
7793    div: null,
7794    viewport: null,
7795    thresold: 200,
7796    elements: [],
7797    adBlockCount: 0,
7798    w: 160,
7799    h: 200,
7800    init: function() {
7801        this.div = $("#xrayAd"), this.div || (this.div = $("<div>", {
7802            id: "xrayAd",
7803            css: {
7804                position: "fixed",
7805                top: 10,
7806                left: 10,
7807                width: this.w,
7808                height: this.h,
7809                zIndex: 1e4,
7810                background: "rgba(0,0,0, 0.5)"
7811            }
7812        }), this.div.appendTo($("body")))
7813    },
7814    viewportUpdate: function() {
7815        this.viewport || (this.viewport = $("<div>", {
7816            id: "xrayAdViewport",
7817            css: {
7818                position: "absolute",
7819                width: this.w,
7820                height: 10,
7821                zIndex: 10001,
7822                background: "rgba(255,255,255, 0.3)"
7823            }
7824        }), this.viewport.appendTo(this.div)), this.viewThresoldTop || (this.viewThresoldTop = $("<div>", {
7825            id: "xrayAdThresold",
7826            css: {
7827                position: "absolute",
7828                width: this.w,
7829                height: 1,
7830                zIndex: 10002,
7831                background: "rgba(255,0,0, 0.5)"
7832            }
7833        }), this.viewThresoldTop.appendTo(this.div), this.viewThresoldBottom = this.viewThresoldTop.clone().appendTo(this.div)), this.bodyHeight = $(document).height(), this.bodyWidth = $(window).width();
7834        var t = $(window).height() / this.bodyHeight * xrayAd.h,
7835            e = $(window).scrollTop() / this.bodyHeight * xrayAd.h;
7836        if (this.viewport.css({
7837                height: t,
7838                top: e
7839            }), this.viewThresoldTop.css({
7840                top: ($(window).scrollTop() - xrayAd.thresold) / this.bodyHeight * xrayAd.h
7841            }), this.viewThresoldBottom.css({
7842                top: ($(window).scrollTop() + xrayAd.thresold) / this.bodyHeight * xrayAd.h + t - 1
7843            }), this.div && this.div.length) {
7844            var i = this.div.find(".xrayAdBlock");
7845            $.each(i, function(t) {
7846                var e = $(this),
7847                    i = $(xrayAd.elements[t]);
7848                if (e.length && i.length) {
7849                    var n = {};
7850                    if (n.off = i.offset(), n.off) {
7851                        n.top = n.off.top / xrayAd.bodyHeight * xrayAd.h, n.left = n.off.left / xrayAd.bodyWidth * xrayAd.w, n.w = Math.max(i.width(), 10) / xrayAd.bodyWidth * xrayAd.w, n.h = Math.max(i.height(), 10) / xrayAd.bodyHeight * xrayAd.h;
7852                        var r = "#FF0071";
7853                        r = "true" === i.data("loading") ? "orange" : r, r = "true" === i.data("loaded") ? "#00FF00" : r, e.css({
7854                            top: n.top,
7855                            left: n.left,
7856                            width: n.w,
7857                            height: n.h,
7858                            borderColor: r
7859                        })
7860                    }
7861                }
7862            })
7863        }
7864    },
7865    load: function(t, e) {
7866        this.thresold = e || 0, this.init();
7867        var i = $("<div>", {
7868            "class": "xrayAdBlock",
7869            css: {
7870                position: "absolute",
7871                background: "#ffffff",
7872                border: "1px solid #FF0071",
7873                top: 0,
7874                left: 0,
7875                width: 0,
7876                height: 0,
7877                zIndex: 10003
7878            }
7879        });
7880        $.each(t, function() {
7881            i.clone().attr("xrayblock", "xrayAdBlock_" + xrayAd.adBlockCount++).appendTo(xrayAd.div), $(this).bind("onCompleteXray", function() {
7882                xrayAd.viewportUpdate()
7883            }), $(this).bind("onLoadXray", function() {
7884                xrayAd.viewportUpdate()
7885            }), xrayAd.elements.push(this)
7886        }), xrayAd.viewportUpdate(), $(window).bind("scroll", function() {
7887            xrayAd.viewportUpdate()
7888        })
7889    }
7890};
7891! function($) {
7892    $.lazyLoadAdRunning = !1, $.lazyLoadAdTimers = [], $.fn.lazyLoadAd = function(h) {
7893        function _debug() {
7894            if ("undefined" != typeof console && j.debug) {
7895                for (var t = [], e = 0; e < arguments.length; e++) t.push(arguments[e]);
7896                try {
7897                    console.log("LazyLoadAD |", t)
7898                } catch (i) {}
7899            }
7900        }
7901        var j = {
7902            threshold: 0,
7903            failurelimit: 1,
7904            forceLoad: !1,
7905            event: "scroll",
7906            viewport: window,
7907            placeholder: !1,
7908            onLoad: !1,
7909            onComplete: !1,
7910            timeout: 1500,
7911            debug: !1,
7912            xray: !1
7913        };
7914        h && $.extend(j, h), j.xray && "object" == typeof xrayAd && xrayAd.load(this, j.threshold);
7915        var k = this;
7916        return $(j.viewport).bind("checkLazyLoadAd", function() {
7917            var t = 0;
7918            k.each(function() {
7919                if ($.lazyLoadAdRunning) return $.lazyLoadAdTimers.runTimeOut && clearTimeout($.lazyLoadAdTimers.runTimeOut), $.lazyLoadAdTimers.runTimeOut = setTimeout(function() {
7920                    $(j.viewport).trigger("checkLazyLoadAd")
7921                }, 300), !1;
7922                if (j.forceLoad === !0) $(this).trigger("load");
7923                else if ($.belowthefold(this, j) || $.abovethetop(this, j)) {
7924                    if (t++ > j.failurelimit) return !1
7925                } else $(this).trigger("load")
7926            });
7927            var e = $.grep(k, function(t) {
7928                return !("true" === $(t).data("loaded") ? !0 : !1)
7929            });
7930            k = $(e)
7931        }), "scroll" === j.event && $(j.viewport).bind("scroll", function() {
7932            return 0 === k.length ? !1 : void $(j.viewport).trigger("checkLazyLoadAd")
7933        }), this.each(function(d, f) {
7934            var g = $(this);
7935            void 0 === g.attr("original") && g.attr("original", g.attr("src")), g.isLoaded = function() {
7936                return "true" === g.data("loaded") ? !0 : !1
7937            }, g.bind("debug", function(t, e) {
7938                e = e || "start", j.xray && ("start" === e ? g.trigger("onLoadXray") : "error" === e ? g.trigger("onErrorXray") : "complete" === e && g.trigger("onCompleteXray")), j.debug && ("start" === e ? g.css({
7939                    border: "3px solid orange"
7940                }) : "error" === e ? g.css({
7941                    border: "3px solid red"
7942                }) : "complete" === e && g.css({
7943                    border: "3px solid green"
7944                }))
7945            }), g.one("onComplete", function() {
7946                if (_debug("---> lazyLoadComplete"), $(g).removeAttr("original"), $.lazyLoadAdRunning = !1, g.data("loaded", "true"), g.trigger("debug", "complete"), "function" == typeof j.onComplete) try {
7947                    j.onComplete()
7948                } catch (t) {}
7949            }), g.stack = [], g.makinaBlock = !1, g.bind("makina_go", function() {
7950                if (g.makinaBlock) return !1;
7951                if (g.stack.length > 0) {
7952                    var t = g.stack.shift(),
7953                        e = g.find(".wrapAd");
7954                    e.length || (e = $('<div class="wrapAd"></div>').clone(), e.appendTo(g));
7955                    var i = $("<div>").clone().appendTo(e);
7956                    "string" == typeof t ? i.replaceWith(t) : "object" == typeof t && (t.is("script") && t.attr("src") ? (_debug("JS to load !! --> " + t.attr("src")), LazyLoader.load(t.attr("src"), g, function() {
7957                        g.makinaBlock = !1, _debug("JS to load !! ++> " + t.attr("src")), g.trigger("makina_go")
7958                    })) : i.replaceWith(t)), g.trigger("makina_go")
7959                } else $.lazyLoadAdTimers.loadJS && clearTimeout($.lazyLoadAdTimers.loadJS), $.lazyLoadAdTimers.loadJS = setTimeout(function() {
7960                    g.trigger("onComplete")
7961                }, j.timeout)
7962            }), g.bind("docWrite_direct", function(t, e) {
7963                var i = $(e);
7964                _debug("Fragment Direct Write : ", i, i.length), $.each(i, function() {
7965                    g.stack.push($(this))
7966                }), g.trigger("makina_go")
7967            }), g.bind("docWrite_delayed", function(t, e) {
7968                _debug("Fragment Delayed Write : ", e), g.numWrappers--, _debug("Fragment append : ", g.numWrappers, e), g.docHtmlCurrent += e, 0 === g.numWrappers && (e = g.docHtmlCurrent, g.docHtmlCurrent = "", setTimeout(function() {
7969                    g.stack.push(e), g.docHtmlCurrent = "", g.trigger("makina_go")
7970                }, 0))
7971            }), g.numWrappers = 0, g.docHtmlCurrent = "", g.bind("docWrite_overload", function() {
7972                document._writeOriginal = document.write, document.write = document.writeln = function() {
7973                    for (var t = arguments, e = "", i = 0; i < t.length; i++) e += t[i];
7974                    var n = "",
7975                        r = !1;
7976                    try {
7977                        n = $(e), r = n.is("div") || n.is("script") ? !0 : !1
7978                    } catch (s) {}
7979                    g.history[g.fragmentId] = g.history[g.fragmentId] || {}, void 0 === g.history[g.fragmentId][e] && (g.history[g.fragmentId][e] = !0, r ? g.trigger("docWrite_direct", e) : (g.numWrappers++, setTimeout(function() {
7980                        g.trigger("docWrite_delayed", e)
7981                    }, 0)))
7982                }
7983            }), g.bind("evalCode", function() {
7984                for (var a = [], script, regexp = /<code[^>]*>([\s\S]*?)<\/code>/gi; script = regexp.exec(g.html());) {
7985                    var b = script[1];
7986                    b = b.replace("<!--//<![CDATA[", "").replace("//]]>-->", "").replace("<!--", "").replace("//-->", ""), b = b.replace(/\&gt\;/g, ">").replace(/\&lt\;/g, "<"), a.push($.trim(b))
7987                }
7988                try {
7989                    a = a.length ? a.join("\n") : "", _debug("Script to eval : ", a), "" !== a && eval(a)
7990                } catch (e) {}
7991            }), g.bind("loadJS", function(t, e) {
7992                var i = null;
7993                e.src && (i = e.callback || null, e = e.src), e += -1 === e.indexOf("?") ? "?_=" + (new Date).getTime() : "&_=" + (new Date).getTime(), _debug("loadJS :: ", e), LazyLoader.load(e, g, function() {
7994                    _debug("loadJS COMPLETE :: " + e), i ? i() : $.lazyLoadAdTimers.loadJS = setTimeout(function() {
7995                        g.trigger("onComplete")
7996                    }, j.timeout)
7997                })
7998            }), g.one("load", function() {
7999                if (!g.isLoaded()) {
8000                    $.lazyLoadAdRunning = !0, g.data("loading", "true"), g.trigger("debug", "start");
8001                    var t = $(g).attr("original");
8002                    g.history = {}, _debug("------------------------------  Lazy Load Ad CALL ----"), _debug("Context : ", g), g.trigger("docWrite_overload"), g.trigger("evalCode"), t && g.trigger("loadJS", t)
8003                }
8004            }), "scroll" !== j.event && g.bind(j.event, function() {
8005                g.isLoaded() || g.trigger("load")
8006            })
8007        }), $(j.viewport).trigger("checkLazyLoadAd"), this
8008    }, $.belowthefold = function(t, e) {
8009        var i = 0;
8010        return i = void 0 === e.viewport || e.viewport === window ? $(window).height() + $(window).scrollTop() : $(e.viewport).offset().top + $(e.viewport).height(), i <= $(t).offset().top - e.threshold
8011    }, $.abovethetop = function(t, e) {
8012        var i = 0;
8013        return i = void 0 === e.viewport || e.viewport === window ? $(window).scrollTop() : $(e.viewport).offset().top, i >= $(t).offset().top + e.threshold + $(t).height()
8014    }
8015}(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.