PageSourceSearch

https://pidw.pk/assets/js/scrollTrigger.js

js pidw.pk collected 2026-10-06 22:13:38 UTC 71,539 bytes, 1,435 lines download raw bytes

vendor: 8,897 bytes, lines 1-244
1/*!
2 * ScrollTrigger 3.12.5
3 * https://gsap.com
4 * 
5 * @license Copyright 2024, GreenSock. All rights reserved.
6 * Subject to the terms at https://gsap.com/standard-license or for Club GSAP members, the agreement issued with that membership.
7 * @author: Jack Doyle, [email protected]
8 */
9
10! function (e, t) {
11    "object" == typeof exports && "undefined" != typeof module ? t(exports) : "function" == typeof define && define.amd ? define(["exports"], t) : t((e = e || self).window = e.window || {})
12}(this, function (e) {
13    "use strict";
14
15    function _defineProperties(e, t) {
16        for (var r = 0; r < t.length; r++) {
17            var n = t[r];
18            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n)
19        }
20    }
21
22    function r() {
23        return Ce || "undefined" != typeof window && (Ce = window.gsap) && Ce.registerPlugin && Ce
24    }
25
26    function z(e, t) {
27        return ~Le.indexOf(e) && Le[Le.indexOf(e) + 1][t]
28    }
29
30    function A(e) {
31        return !!~t.indexOf(e)
32    }
33
34    function B(e, t, r, n, o) {
35        return e.addEventListener(t, r, {
36            passive: !1 !== n,
37            capture: !!o
38        })
39    }
40
41    function C(e, t, r, n) {
42        return e.removeEventListener(t, r, !!n)
43    }
44
45    function F() {
46        return De && De.isPressed || Ie.cache++
47    }
48
49    function G(r, n) {
50        function dd(e) {
51            if (e || 0 === e) {
52                o && (Se.history.scrollRestoration = "manual");
53                var t = De && De.isPressed;
54                e = dd.v = Math.round(e) || (De && De.iOS ? 1 : 0), r(e), dd.cacheID = Ie.cache, t && i("ss", e)
55            } else (n || Ie.cache !== dd.cacheID || i("ref")) && (dd.cacheID = Ie.cache, dd.v = r());
56            return dd.v + dd.offset
57        }
58        return dd.offset = 0, r && dd
59    }
60
61    function J(e, t) {
62        return (t && t._ctx && t._ctx.selector || Ce.utils.toArray)(e)[0] || ("string" == typeof e && !1 !== Ce.config().nullTargetWarn ? console.warn("Element not found:", e) : null)
63    }
64
65    function K(t, e) {
66        var r = e.s,
67            n = e.sc;
68        A(t) && (t = ke.scrollingElement || Pe);
69        var o = Ie.indexOf(t),
70            i = n === Fe.sc ? 1 : 2;
71        ~o || (o = Ie.push(t) - 1), Ie[o + i] || B(t, "scroll", F);
72        var a = Ie[o + i],
73            s = a || (Ie[o + i] = G(z(t, r), !0) || (A(t) ? n : G(function (e) {
74                return arguments.length ? t[r] = e : t[r]
75            })));
76        return s.target = t, a || (s.smooth = "smooth" === Ce.getProperty(t, "scrollBehavior")), s
77    }
78
79    function L(e, t, o) {
80        function Cd(e, t) {
81            var r = ze();
82            t || n < r - s ? (a = i, i = e, l = s, s = r) : o ? i += e : i = a + (e - a) / (r - l) * (s - l)
83        }
84        var i = e,
85            a = e,
86            s = ze(),
87            l = s,
88            n = t || 50,
89            c = Math.max(500, 3 * n);
90        return {
91            update: Cd,
92            reset: function reset() {
93                a = i = o ? 0 : i, l = s = 0
94            },
95            getVelocity: function getVelocity(e) {
96                var t = l,
97                    r = a,
98                    n = ze();
99                return !e && 0 !== e || e === i || Cd(e), s === l || c < n - l ? 0 : (i + (o ? r : -r)) / ((o ? n : s) - t) * 1e3
100            }
101        }
102    }
103
104    function M(e, t) {
105        return t && !e._gsapAllow && e.preventDefault(), e.changedTouches ? e.changedTouches[0] : e
106    }
107
108    function N(e) {
109        var t = Math.max.apply(Math, e),
110            r = Math.min.apply(Math, e);
111        return Math.abs(t) >= Math.abs(r) ? t : r
112    }
113
114    function O() {
115        (Ae = Ce.core.globals().ScrollTrigger) && Ae.core && function _integrate() {
116            var e = Ae.core,
117                r = e.bridge || {},
118                t = e._scrollers,
119                n = e._proxies;
120            t.push.apply(t, Ie), n.push.apply(n, Le), Ie = t, Le = n, i = function _bridge(e, t) {
121                return r[e](t)
122            }
123        }()
124    }
125
126    function P(e) {
127        return Ce = e || r(), !Te && Ce && "undefined" != typeof document && document.body && (Se = window, Pe = (ke = document).documentElement, Me = ke.body, t = [Se, ke, Pe, Me], Ce.utils.clamp, Be = Ce.core.context || function () { }, Oe = "onpointerenter" in Me ? "pointer" : "mouse", Ee = k.isTouch = Se.matchMedia && Se.matchMedia("(hover: none), (pointer: coarse)").matches ? 1 : "ontouchstart" in Se || 0 < navigator.maxTouchPoints || 0 < navigator.msMaxTouchPoints ? 2 : 0, Re = k.eventTypes = ("ontouchstart" in Pe ? "touchstart,touchmove,touchcancel,touchend" : "onpointerdown" in Pe ? "pointerdown,pointermove,pointercancel,pointerup" : "mousedown,mousemove,mouseup,mouseup").split(","), setTimeout(function () {
128            return o = 0
129        }, 500), O(), Te = 1), Te
130    }
131    var Ce, Te, Se, ke, Pe, Me, Ee, Oe, Ae, t, De, Re, Be, o = 1,
132        qe = [],
133        Ie = [],
134        Le = [],
135        ze = Date.now,
136        i = function _bridge(e, t) {
137            return t
138        },
139        n = "scrollLeft",
140        a = "scrollTop",
141        Ye = {
142            s: n,
143            p: "left",
144            p2: "Left",
145            os: "right",
146            os2: "Right",
147            d: "width",
148            d2: "Width",
149            a: "x",
150            sc: G(function (e) {
151                return arguments.length ? Se.scrollTo(e, Fe.sc()) : Se.pageXOffset || ke[n] || Pe[n] || Me[n] || 0
152            })
153        },
154        Fe = {
155            s: a,
156            p: "top",
157            p2: "Top",
158            os: "bottom",
159            os2: "Bottom",
160            d: "height",
161            d2: "Height",
162            a: "y",
163            op: Ye,
164            sc: G(function (e) {
165                return arguments.length ? Se.scrollTo(Ye.sc(), e) : Se.pageYOffset || ke[a] || Pe[a] || Me[a] || 0
166            })
167        };
168    Ye.op = Fe, Ie.cache = 0;
169    var k = (Observer.prototype.init = function init(e) {
170        Te || P(Ce) || console.warn("Please gsap.registerPlugin(Observer)"), Ae || O();
171        var o = e.tolerance,
172            a = e.dragMinimum,
173            t = e.type,
174            i = e.target,
175            r = e.lineHeight,
176            n = e.debounce,
177            s = e.preventDefault,
178            l = e.onStop,
179            c = e.onStopDelay,
180            u = e.ignore,
181            f = e.wheelSpeed,
182            d = e.event,
183            p = e.onDragStart,
184            g = e.onDragEnd,
185            h = e.onDrag,
186            v = e.onPress,
187            b = e.onRelease,
188            m = e.onRight,
189            y = e.onLeft,
190            x = e.onUp,
191            w = e.onDown,
192            _ = e.onChangeX,
193            T = e.onChangeY,
194            S = e.onChange,
195            k = e.onToggleX,
196            E = e.onToggleY,
197            D = e.onHover,
198            R = e.onHoverEnd,
199            q = e.onMove,
200            I = e.ignoreCheck,
201            z = e.isNormalizer,
202            Y = e.onGestureStart,
203            H = e.onGestureEnd,
204            X = e.onWheel,
205            W = e.onEnable,
206            V = e.onDisable,
207            U = e.onClick,
208            j = e.scrollSpeed,
209            G = e.capture,
210            Q = e.allowClicks,
211            Z = e.lockAxis,
212            $ = e.onLockAxis;
213
214        function cf() {
215            return xe = ze()
216        }
217
218        function df(e, t) {
219            return (se.event = e) && u && ~u.indexOf(e.target) || t && he && "touch" !== e.pointerType || I && I(e, t)
220        }
221
222        function ff() {
223            var e = se.deltaX = N(me),
224                t = se.deltaY = N(ye),
225                r = Math.abs(e) >= o,
226                n = Math.abs(t) >= o;
227            S && (r || n) && S(se, e, t, me, ye), r && (m && 0 < se.deltaX && m(se), y && se.deltaX < 0 && y(se), _ && _(se), k && se.deltaX < 0 != le < 0 && k(se), le = se.deltaX, me[0] = me[1] = me[2] = 0), n && (w && 0 < se.deltaY && w(se), x && se.deltaY < 0 && x(se), T && T(se), E && se.deltaY < 0 != ce < 0 && E(se), ce = se.deltaY, ye[0] = ye[1] = ye[2] = 0), (ne || re) && (q && q(se), re && (h(se), re = !1), ne = !1), ie && !(ie = !1) && $ && $(se), oe && (X(se), oe = !1), ee = 0
228        }
229
230        function gf(e, t, r) {
231            me[r] += e, ye[r] += t, se._vx.update(e), se._vy.update(t), n ? ee = ee || requestAnimationFrame(ff) : ff()
232        }
233
234        function hf(e, t) {
235            Z && !ae && (se.axis = ae = Math.abs(e) > Math.abs(t) ? "x" : "y", ie = !0), "y" !== ae && (me[2] += e, se._vx.update(e, !0)), "x" !== ae && (ye[2] += t, se._vy.update(t, !0)), n ? ee = ee || requestAnimationFrame(ff) : ff()
236        }
237
238        function jf(e) {
239            if (!df(e, 1)) {
240                var t = (e = M(e, s)).clientX,
241                    r = e.clientY,
242                    n = t - se.x,
243                    o = r - se.y,
244                    i = se.isDragging;
vendor: 5,005 bytes, lines 245-336
245                se.x = t, se.y = r, (i || Math.abs(se.startX - t) >= a || Math.abs(se.startY - r) >= a) && (h && (re = !0), i || (se.isDragging = !0), hf(n, o), i || p && p(se))
246            }
247        }
248
249        function mf(e) {
250            return e.touches && 1 < e.touches.length && (se.isGesturing = !0) && Y(e, se.isDragging)
251        }
252
253        function nf() {
254            return (se.isGesturing = !1) || H(se)
255        }
256
257        function of(e) {
258            if (!df(e)) {
259                var t = fe(),
260                    r = de();
261                gf((t - pe) * j, (r - ge) * j, 1), pe = t, ge = r, l && te.restart(!0)
262            }
263        }
264
265        function pf(e) {
266            if (!df(e)) {
267                e = M(e, s), X && (oe = !0);
268                var t = (1 === e.deltaMode ? r : 2 === e.deltaMode ? Se.innerHeight : 1) * f;
269                gf(e.deltaX * t, e.deltaY * t, 0), l && !z && te.restart(!0)
270            }
271        }
272
273        function qf(e) {
274            if (!df(e)) {
275                var t = e.clientX,
276                    r = e.clientY,
277                    n = t - se.x,
278                    o = r - se.y;
279                se.x = t, se.y = r, ne = !0, l && te.restart(!0), (n || o) && hf(n, o)
280            }
281        }
282
283        function rf(e) {
284            se.event = e, D(se)
285        }
286
287        function sf(e) {
288            se.event = e, R(se)
289        }
290
291        function tf(e) {
292            return df(e) || M(e, s) && U(se)
293        }
294        this.target = i = J(i) || Pe, this.vars = e, u = u && Ce.utils.toArray(u), o = o || 1e-9, a = a || 0, f = f || 1, j = j || 1, t = t || "wheel,touch,pointer", n = !1 !== n, r = r || parseFloat(Se.getComputedStyle(Me).lineHeight) || 22;
295        var ee, te, re, ne, oe, ie, ae, se = this,
296            le = 0,
297            ce = 0,
298            ue = e.passive || !s,
299            fe = K(i, Ye),
300            de = K(i, Fe),
301            pe = fe(),
302            ge = de(),
303            he = ~t.indexOf("touch") && !~t.indexOf("pointer") && "pointerdown" === Re[0],
304            ve = A(i),
305            be = i.ownerDocument || ke,
306            me = [0, 0, 0],
307            ye = [0, 0, 0],
308            xe = 0,
309            we = se.onPress = function (e) {
310                df(e, 1) || e && e.button || (se.axis = ae = null, te.pause(), se.isPressed = !0, e = M(e), le = ce = 0, se.startX = se.x = e.clientX, se.startY = se.y = e.clientY, se._vx.reset(), se._vy.reset(), B(z ? i : be, Re[1], jf, ue, !0), se.deltaX = se.deltaY = 0, v && v(se))
311            },
312            _e = se.onRelease = function (t) {
313                if (!df(t, 1)) {
314                    C(z ? i : be, Re[1], jf, !0);
315                    var e = !isNaN(se.y - se.startY),
316                        r = se.isDragging,
317                        n = r && (3 < Math.abs(se.x - se.startX) || 3 < Math.abs(se.y - se.startY)),
318                        o = M(t);
319                    !n && e && (se._vx.reset(), se._vy.reset(), s && Q && Ce.delayedCall(.08, function () {
320                        if (300 < ze() - xe && !t.defaultPrevented)
321                            if (t.target.click) t.target.click();
322                            else if (be.createEvent) {
323                                var e = be.createEvent("MouseEvents");
324                                e.initMouseEvent("click", !0, !0, Se, 1, o.screenX, o.screenY, o.clientX, o.clientY, !1, !1, !1, !1, 0, null), t.target.dispatchEvent(e)
325                            }
326                    })), se.isDragging = se.isGesturing = se.isPressed = !1, l && r && !z && te.restart(!0), g && r && g(se), b && b(se, n)
327                }
328            };
329        te = se._dc = Ce.delayedCall(c || .25, function onStopFunc() {
330            se._vx.reset(), se._vy.reset(), te.pause(), l && l(se)
331        }).pause(), se.deltaX = se.deltaY = 0, se._vx = L(0, 50, !0), se._vy = L(0, 50, !0), se.scrollX = fe, se.scrollY = de, se.isDragging = se.isGesturing = se.isPressed = !1, Be(this), se.enable = function (e) {
332            return se.isEnabled || (B(ve ? be : i, "scroll", F), 0 <= t.indexOf("scroll") && B(ve ? be : i, "scroll", of, ue, G), 0 <= t.indexOf("wheel") && B(i, "wheel", pf, ue, G), (0 <= t.indexOf("touch") && Ee || 0 <= t.indexOf("pointer")) && (B(i, Re[0], we, ue, G), B(be, Re[2], _e), B(be, Re[3], _e), Q && B(i, "click", cf, !0, !0), U && B(i, "click", tf), Y && B(be, "gesturestart", mf), H && B(be, "gestureend", nf), D && B(i, Oe + "enter", rf), R && B(i, Oe + "leave", sf), q && B(i, Oe + "move", qf)), se.isEnabled = !0, e && e.type && we(e), W && W(se)), se
333        }, se.disable = function () {
334            se.isEnabled && (qe.filter(function (e) {
335                return e !== se && A(e.target)
336            }).length || C(ve ? be : i, "scroll", F), se.isPressed && (se._vx.reset(), se._vy.reset(), C(z ? i : be, Re[1], jf, !0)), C(ve ? be : i, "scroll", of, G), C(i, "wheel", pf, G), C(i, Re[0], we, G), C(be, Re[2], _e), C(be, Re[3], _e), C(i, "click", cf, !0), C(i, "click", tf), C(be, "gesturestart", mf), C(be, "gestureend", nf), 
vendor: 57,637 bytes, lines 336-1435
336C(i, Oe + "enter", rf), C(i, Oe + "leave", sf), C(i, Oe + "move", qf), se.isEnabled = se.isPressed = se.isDragging = !1, V && V(se))
337        }, se.kill = se.revert = function () {
338            se.disable();
339            var e = qe.indexOf(se);
340            0 <= e && qe.splice(e, 1), De === se && (De = 0)
341        }, qe.push(se), z && A(i) && (De = se), se.enable(d)
342    }, function _createClass(e, t, r) {
343        return t && _defineProperties(e.prototype, t), r && _defineProperties(e, r), e
344    }(Observer, [{
345        key: "velocityX",
346        get: function get() {
347            return this._vx.getVelocity()
348        }
349    }, {
350        key: "velocityY",
351        get: function get() {
352            return this._vy.getVelocity()
353        }
354    }]), Observer);
355
356    function Observer(e) {
357        this.init(e)
358    }
359    k.version = "3.12.5", k.create = function (e) {
360        return new k(e)
361    }, k.register = P, k.getAll = function () {
362        return qe.slice()
363    }, k.getById = function (t) {
364        return qe.filter(function (e) {
365            return e.vars.id === t
366        })[0]
367    }, r() && Ce.registerPlugin(k);
368
369    function Ca(e, t, r) {
370        var n = ct(e) && ("clamp(" === e.substr(0, 6) || -1 < e.indexOf("max"));
371        return (r["_" + t + "Clamp"] = n) ? e.substr(6, e.length - 7) : e
372    }
373
374    function Da(e, t) {
375        return !t || ct(e) && "clamp(" === e.substr(0, 6) ? e : "clamp(" + e + ")"
376    }
377
378    function Fa() {
379        return Ge = 1
380    }
381
382    function Ga() {
383        return Ge = 0
384    }
385
386    function Ha(e) {
387        return e
388    }
389
390    function Ia(e) {
391        return Math.round(1e5 * e) / 1e5 || 0
392    }
393
394    function Ja() {
395        return "undefined" != typeof window
396    }
397
398    function Ka() {
399        return He || Ja() && (He = window.gsap) && He.registerPlugin && He
400    }
401
402    function La(e) {
403        return !!~l.indexOf(e)
404    }
405
406    function Ma(e) {
407        return ("Height" === e ? T : Ne["inner" + e]) || Je["client" + e] || We["client" + e]
408    }
409
410    function Na(e) {
411        return z(e, "getBoundingClientRect") || (La(e) ? function () {
412            return Ot.width = Ne.innerWidth, Ot.height = T, Ot
413        } : function () {
414            return wt(e)
415        })
416    }
417
418    function Qa(e, t) {
419        var r = t.s,
420            n = t.d2,
421            o = t.d,
422            i = t.a;
423        return Math.max(0, (r = "scroll" + n) && (i = z(e, r)) ? i() - Na(e)()[o] : La(e) ? (Je[r] || We[r]) - Ma(n) : e[r] - e["offset" + n])
424    }
425
426    function Ra(e, t) {
427        for (var r = 0; r < g.length; r += 3) t && !~t.indexOf(g[r + 1]) || e(g[r], g[r + 1], g[r + 2])
428    }
429
430    function Ta(e) {
431        return "function" == typeof e
432    }
433
434    function Ua(e) {
435        return "number" == typeof e
436    }
437
438    function Va(e) {
439        return "object" == typeof e
440    }
441
442    function Wa(e, t, r) {
443        return e && e.progress(t ? 0 : 1) && r && e.pause()
444    }
445
446    function Xa(e, t) {
447        if (e.enabled) {
448            var r = e._ctx ? e._ctx.add(function () {
449                return t(e)
450            }) : t(e);
451            r && r.totalTime && (e.callbackAnimation = r)
452        }
453    }
454
455    function mb(e) {
456        return Ne.getComputedStyle(e)
457    }
458
459    function ob(e, t) {
460        for (var r in t) r in e || (e[r] = t[r]);
461        return e
462    }
463
464    function qb(e, t) {
465        var r = t.d2;
466        return e["offset" + r] || e["client" + r] || 0
467    }
468
469    function rb(e) {
470        var t, r = [],
471            n = e.labels,
472            o = e.duration();
473        for (t in n) r.push(n[t] / o);
474        return r
475    }
476
477    function tb(o) {
478        var i = He.utils.snap(o),
479            a = Array.isArray(o) && o.slice(0).sort(function (e, t) {
480                return e - t
481            });
482        return a ? function (e, t, r) {
483            var n;
484            if (void 0 === r && (r = .001), !t) return i(e);
485            if (0 < t) {
486                for (e -= r, n = 0; n < a.length; n++)
487                    if (a[n] >= e) return a[n];
488                return a[n - 1]
489            }
490            for (n = a.length, e += r; n--;)
491                if (a[n] <= e) return a[n];
492            return a[0]
493        } : function (e, t, r) {
494            void 0 === r && (r = .001);
495            var n = i(e);
496            return !t || Math.abs(n - e) < r || n - e < 0 == t < 0 ? n : i(t < 0 ? e - o : e + o)
497        }
498    }
499
500    function vb(t, r, e, n) {
501        return e.split(",").forEach(function (e) {
502            return t(r, e, n)
503        })
504    }
505
506    function wb(e, t, r, n, o) {
507        return e.addEventListener(t, r, {
508            passive: !n,
509            capture: !!o
510        })
511    }
512
513    function xb(e, t, r, n) {
514        return e.removeEventListener(t, r, !!n)
515    }
516
517    function yb(e, t, r) {
518        (r = r && r.wheelHandler) && (e(t, "wheel", r), e(t, "touchmove", r))
519    }
520
521    function Cb(e, t) {
522        if (ct(e)) {
523            var r = e.indexOf("="),
524                n = ~r ? (e.charAt(r - 1) + 1) * parseFloat(e.substr(r + 1)) : 0;
525            ~r && (e.indexOf("%") > r && (n *= t / 100), e = e.substr(0, r - 1)), e = n + (e in H ? H[e] * t : ~e.indexOf("%") ? parseFloat(e) * t / 100 : parseFloat(e) || 0)
526        }
527        return e
528    }
529
530    function Db(e, t, r, n, o, i, a, s) {
531        var l = o.startColor,
532            c = o.endColor,
533            u = o.fontSize,
534            f = o.indent,
535            d = o.fontWeight,
536            p = Xe.createElement("div"),
537            g = La(r) || "fixed" === z(r, "pinType"),
538            h = -1 !== e.indexOf("scroller"),
539            v = g ? We : r,
540            b = -1 !== e.indexOf("start"),
541            m = b ? l : c,
542            y = "border-color:" + m + ";font-size:" + u + ";color:" + m + ";font-weight:" + d + ";pointer-events:none;white-space:nowrap;font-family:sans-serif,Arial;z-index:1000;padding:4px 8px;border-width:0;border-style:solid;";
543        return y += "position:" + ((h || s) && g ? "fixed;" : "absolute;"), !h && !s && g || (y += (n === Fe ? q : I) + ":" + (i + parseFloat(f)) + "px;"), a && (y += "box-sizing:border-box;text-align:left;width:" + a.offsetWidth + "px;"), p._isStart = b, p.setAttribute("class", "gsap-marker-" + e + (t ? " marker-" + t : "")), p.style.cssText = y, p.innerText = t || 0 === t ? e + "-" + t : e, v.children[0] ? v.insertBefore(p, v.children[0]) : v.appendChild(p), p._offset = p["offset" + n.op.d2], X(p, 0, n, b), p
544    }
545
546    function Ib() {
547        return 34 < at() - st && (D = D || requestAnimationFrame(Z))
548    }
549
550    function Jb() {
551        v && v.isPressed && !(v.startX > We.clientWidth) || (Ie.cache++, v ? D = D || requestAnimationFrame(Z) : Z(), st || U("scrollStart"), st = at())
552    }
553
554    function Kb() {
555        y = Ne.innerWidth, m = Ne.innerHeight
556    }
557
558    function Lb() {
559        Ie.cache++, je || h || Xe.fullscreenElement || Xe.webkitFullscreenElement || b && y === Ne.innerWidth && !(Math.abs(Ne.innerHeight - m) > .25 * Ne.innerHeight) || c.restart(!0)
560    }
561
562    function Ob() {
563        return xb(ne, "scrollEnd", Ob) || Pt(!0)
564    }
565
566    function Rb(e) {
567        for (var t = 0; t < j.length; t += 5)(!e || j[t + 4] && j[t + 4].query === e) && (j[t].style.cssText = j[t + 1], j[t].getBBox && j[t].setAttribute("transform", j[t + 2] || ""), j[t + 3].uncache = 1)
568    }
569
570    function Sb(e, t) {
571        var r;
572        for (Qe = 0; Qe < Tt.length; Qe++) !(r = Tt[Qe]) || t && r._ctx !== t || (e ? r.kill(1) : r.revert(!0, !0));
573        S = !0, t && Rb(t), t || U("revert")
574    }
575
576    function Tb(e, t) {
577        Ie.cache++, !t && rt || Ie.forEach(function (e) {
578            return Ta(e) && e.cacheID++ && (e.rec = 0)
579        }), ct(e) && (Ne.history.scrollRestoration = w = e)
580    }
581
582    function Yb() {
583        We.appendChild(_), T = !v && _.offsetHeight || Ne.innerHeight, We.removeChild(_)
584    }
585
586    function Zb(t) {
587        return Ve(".gsap-marker-start, .gsap-marker-end, .gsap-marker-scroller-start, .gsap-marker-scroller-end").forEach(function (e) {
588            return e.style.display = t ? "none" : "block"
589        })
590    }
591
592    function gc(e, t, r, n) {
593        if (!e._gsap.swappedIn) {
594            for (var o, i = $.length, a = t.style, s = e.style; i--;) a[o = $[i]] = r[o];
595            a.position = "absolute" === r.position ? "absolute" : "relative", "inline" === r.display && (a.display = "inline-block"), s[I] = s[q] = "auto", a.flexBasis = r.flexBasis || "auto", a.overflow = "visible", a.boxSizing = "border-box", a[ft] = qb(e, Ye) + xt, a[dt] = qb(e, Fe) + xt, a[bt] = s[mt] = s.top = s.left = "0", Et(n), s[ft] = s.maxWidth = r[ft], s[dt] = s.maxHeight = r[dt], s[bt] = r[bt], e.parentNode !== t && (e.parentNode.insertBefore(t, e), t.appendChild(e)), e._gsap.swappedIn = !0
596        }
597    }
598
599    function jc(e) {
600        for (var t = ee.length, r = e.style, n = [], o = 0; o < t; o++) n.push(ee[o], r[ee[o]]);
601        return n.t = e, n
602    }
603
604    function mc(e, t, r, n, o, i, a, s, l, c, u, f, d, p) {
605        Ta(e) && (e = e(s)), ct(e) && "max" === e.substr(0, 3) && (e = f + ("=" === e.charAt(4) ? Cb("0" + e.substr(3), r) : 0));
606        var g, h, v, b = d ? d.time() : 0;
607        if (d && d.seek(0), isNaN(e) || (e = +e), Ua(e)) d && (e = He.utils.mapRange(d.scrollTrigger.start, d.scrollTrigger.end, 0, f, e)), a && X(a, r, n, !0);
608        else {
609            Ta(t) && (t = t(s));
610            var m, y, x, w, _ = (e || "0").split(" ");
611            v = J(t, s) || We, (m = wt(v) || {}) && (m.left || m.top) || "none" !== mb(v).display || (w = v.style.display, v.style.display = "block", m = wt(v), w ? v.style.display = w : v.style.removeProperty("display")), y = Cb(_[0], m[n.d]), x = Cb(_[1] || "0", r), e = m[n.p] - l[n.p] - c + y + o - x, a && X(a, x, n, r - x < 20 || a._isStart && 20 < x), r -= r - x
612        }
613        if (p && (s[p] = e || -.001, e < 0 && (e = 0)), i) {
614            var C = e + r,
615                T = i._isStart;
616            g = "scroll" + n.d2, X(i, C, n, T && 20 < C || !T && (u ? Math.max(We[g], Je[g]) : i.parentNode[g]) <= C + 1), u && (l = wt(a), u && (i.style[n.op.p] = l[n.op.p] - n.op.m - i._offset + xt))
617        }
618        return d && v && (g = wt(v), d.seek(f), h = wt(v), d._caScrollDist = g[n.p] - h[n.p], e = e / d._caScrollDist * f), d && d.seek(b), d ? e : Math.round(e)
619    }
620
621    function oc(e, t, r, n) {
622        if (e.parentNode !== t) {
623            var o, i, a = e.style;
624            if (t === We) {
625                for (o in e._stOrig = a.cssText, i = mb(e)) + o || re.test(o) || !i[o] || "string" != typeof a[o] || "0" === o || (a[o] = i[o]);
626                a.top = r, a.left = n
627            } else a.cssText = e._stOrig;
628            He.core.getCache(e).uncache = 1, t.appendChild(e)
629        }
630    }
631
632    function pc(r, e, n) {
633        var o = e,
634            i = o;
635        return function (e) {
636            var t = Math.round(r());
637            return t !== o && t !== i && 3 < Math.abs(t - o) && 3 < Math.abs(t - i) && (e = t, n && n()), i = o, o = e
638        }
639    }
640
641    function qc(e, t, r) {
642        var n = {};
643        n[t.p] = "+=" + r, He.set(e, n)
644    }
645
646    function rc(c, e) {
647        function Ck(e, t, r, n, o) {
648            var i = Ck.tween,
649                a = t.onComplete,
650                s = {};
651            r = r || u();
652            var l = pc(u, r, function () {
653                i.kill(), Ck.tween = 0
654            });
655            return o = n && o || 0, n = n || e - r, i && i.kill(), t[f] = e, t.inherit = !1, (t.modifiers = s)[f] = function () {
656                return l(r + n * i.ratio + o * i.ratio * i.ratio)
657            }, t.onUpdate = function () {
658                Ie.cache++, Ck.tween && Z()
659            }, t.onComplete = function () {
660                Ck.tween = 0, a && a.call(i)
661            }, i = Ck.tween = He.to(c, t)
662        }
663        var u = K(c, e),
664            f = "_scroll" + e.p2;
665        return (c[f] = u).wheelHandler = function () {
666            return Ck.tween && Ck.tween.kill() && (Ck.tween = 0)
667        }, wb(c, "wheel", u.wheelHandler), ne.isTouch && wb(c, "touchmove", u.wheelHandler), Ck
668    }
669    var He, s, Ne, Xe, Je, We, l, c, Ve, Ue, Ke, u, je, Ge, f, Qe, d, p, g, Ze, $e, h, v, b, m, y, E, x, w, _, T, S, et, tt, D, rt, nt, ot, it = 1,
670        at = Date.now,
671        R = at(),
672        st = 0,
673        lt = 0,
674        ct = function _isString(e) {
675            return "string" == typeof e
676        },
677        ut = Math.abs,
678        q = "right",
679        I = "bottom",
680        ft = "width",
681        dt = "height",
682        pt = "Right",
683        gt = "Left",
684        ht = "Top",
685        vt = "Bottom",
686        bt = "padding",
687        mt = "margin",
688        yt = "Width",
689        Y = "Height",
690        xt = "px",
691        wt = function _getBounds(e, t) {
692            var r = t && "matrix(1, 0, 0, 1, 0, 0)" !== mb(e)[f] && He.to(e, {
693                x: 0,
694                y: 0,
695                xPercent: 0,
696                yPercent: 0,
697                rotation: 0,
698                rotationX: 0,
699                rotationY: 0,
700                scale: 1,
701                skewX: 0,
702                skewY: 0
703            }).progress(1),
704                n = e.getBoundingClientRect();
705            return r && r.progress(0).kill(), n
706        },
707        _t = {
708            startColor: "green",
709            endColor: "red",
710            indent: 0,
711            fontSize: "16px",
712            fontWeight: "normal"
713        },
714        Ct = {
715            toggleActions: "play",
716            anticipatePin: 0
717        },
718        H = {
719            top: 0,
720            left: 0,
721            center: .5,
722            bottom: 1,
723            right: 1
724        },
725        X = function _positionMarker(e, t, r, n) {
726            var o = {
727                display: "block"
728            },
729                i = r[n ? "os2" : "p2"],
730                a = r[n ? "p2" : "os2"];
731            e._isFlipped = n, o[r.a + "Percent"] = n ? -100 : 0, o[r.a] = n ? "1px" : 0, o["border" + i + yt] = 1, o["border" + a + yt] = 0, o[r.p] = t + "px", He.set(e, o)
732        },
733        Tt = [],
734        St = {},
735        W = {},
736        V = [],
737        U = function _dispatch(e) {
738            return W[e] && W[e].map(function (e) {
739                return e()
740            }) || V
741        },
742        j = [],
743        kt = 0,
744        Pt = function _refreshAll(e, t) {
745            if (!st || e || S) {
746                Yb(), rt = ne.isRefreshing = !0, Ie.forEach(function (e) {
747                    return Ta(e) && ++e.cacheID && (e.rec = e())
748                });
749                var r = U("refreshInit");
750                Ze && ne.sort(), t || Sb(), Ie.forEach(function (e) {
751                    Ta(e) && (e.smooth && (e.target.style.scrollBehavior = "auto"), e(0))
752                }), Tt.slice(0).forEach(function (e) {
753                    return e.refresh()
754                }), S = !1, Tt.forEach(function (e) {
755                    if (e._subPinOffset && e.pin) {
756                        var t = e.vars.horizontal ? "offsetWidth" : "offsetHeight",
757                            r = e.pin[t];
758                        e.revert(!0, 1), e.adjustPinSpacing(e.pin[t] - r), e.refresh()
759                    }
760                }), et = 1, Zb(!0), Tt.forEach(function (e) {
761                    var t = Qa(e.scroller, e._dir),
762                        r = "max" === e.vars.end || e._endClamp && e.end > t,
763                        n = e._startClamp && e.start >= t;
764                    (r || n) && e.setPositions(n ? t - 1 : e.start, r ? Math.max(n ? t : e.start + 1, t) : e.end, !0)
765                }), Zb(!1), et = 0, r.forEach(function (e) {
766                    return e && e.render && e.render(-1)
767                }), Ie.forEach(function (e) {
768                    Ta(e) && (e.smooth && requestAnimationFrame(function () {
769                        return e.target.style.scrollBehavior = "smooth"
770                    }), e.rec && e(e.rec))
771                }), Tb(w, 1), c.pause(), kt++, Z(rt = 2), Tt.forEach(function (e) {
772                    return Ta(e.vars.onRefresh) && e.vars.onRefresh(e)
773                }), rt = ne.isRefreshing = !1, U("refresh")
774            } else wb(ne, "scrollEnd", Ob)
775        },
776        Q = 0,
777        Mt = 1,
778        Z = function _updateAll(e) {
779            if (2 === e || !rt && !S) {
780                ne.isUpdating = !0, ot && ot.update(0);
781                var t = Tt.length,
782                    r = at(),
783                    n = 50 <= r - R,
784                    o = t && Tt[0].scroll();
785                if (Mt = o < Q ? -1 : 1, rt || (Q = o), n && (st && !Ge && 200 < r - st && (st = 0, U("scrollEnd")), Ke = R, R = r), Mt < 0) {
786                    for (Qe = t; 0 < Qe--;) Tt[Qe] && Tt[Qe].update(0, n);
787                    Mt = 1
788                } else
789                    for (Qe = 0; Qe < t; Qe++) Tt[Qe] && Tt[Qe].update(0, n);
790                ne.isUpdating = !1
791            }
792            D = 0
793        },
794        $ = ["left", "top", I, q, mt + vt, mt + pt, mt + ht, mt + gt, "display", "flexShrink", "float", "zIndex", "gridColumnStart", "gridColumnEnd", "gridRowStart", "gridRowEnd", "gridArea", "justifySelf", "alignSelf", "placeSelf", "order"],
795        ee = $.concat([ft, dt, "boxSizing", "max" + yt, "max" + Y, "position", mt, bt, bt + ht, bt + pt, bt + vt, bt + gt]),
796        te = /([A-Z])/g,
797        Et = function _setState(e) {
798            if (e) {
799                var t, r, n = e.t.style,
800                    o = e.length,
801                    i = 0;
802                for ((e.t._gsap || He.core.getCache(e.t)).uncache = 1; i < o; i += 2) r = e[i + 1], t = e[i], r ? n[t] = r : n[t] && n.removeProperty(t.replace(te, "-$1").toLowerCase())
803            }
804        },
805        Ot = {
806            left: 0,
807            top: 0
808        },
809        re = /(webkit|moz|length|cssText|inset)/i,
810        ne = (ScrollTrigger.prototype.init = function init(E, O) {
811            if (this.progress = this.start = 0, this.vars && this.kill(!0, !0), lt) {
812                var A, n, p, D, R, B, q, I, L, Y, F, e, H, N, X, W, V, U, t, j, b, G, Q, m, Z, y, $, x, r, w, _, ee, o, g, te, re, ne, C, i, T = (E = ob(ct(E) || Ua(E) || E.nodeType ? {
813                    trigger: E
814                } : E, Ct)).onUpdate,
815                    S = E.toggleClass,
816                    a = E.id,
817                    k = E.onToggle,
818                    oe = E.onRefresh,
819                    P = E.scrub,
820                    ie = E.trigger,
821                    ae = E.pin,
822                    se = E.pinSpacing,
823                    le = E.invalidateOnRefresh,
824                    M = E.anticipatePin,
825                    s = E.onScrubComplete,
826                    h = E.onSnapComplete,
827                    ce = E.once,
828                    ue = E.snap,
829                    fe = E.pinReparent,
830                    l = E.pinSpacer,
831                    de = E.containerAnimation,
832                    pe = E.fastScrollEnd,
833                    ge = E.preventOverlaps,
834                    he = E.horizontal || E.containerAnimation && !1 !== E.horizontal ? Ye : Fe,
835                    ve = !P && 0 !== P,
836                    be = J(E.scroller || Ne),
837                    c = He.core.getCache(be),
838                    me = La(be),
839                    ye = "fixed" === ("pinType" in E ? E.pinType : z(be, "pinType") || me && "fixed"),
840                    xe = [E.onEnter, E.onLeave, E.onEnterBack, E.onLeaveBack],
841                    we = ve && E.toggleActions.split(" "),
842                    _e = "markers" in E ? E.markers : Ct.markers,
843                    Ce = me ? 0 : parseFloat(mb(be)["border" + he.p2 + yt]) || 0,
844                    Te = this,
845                    Se = E.onRefreshInit && function () {
846                        return E.onRefreshInit(Te)
847                    },
848                    ke = function _getSizeFunc(e, t, r) {
849                        var n = r.d,
850                            o = r.d2,
851                            i = r.a;
852                        return (i = z(e, "getBoundingClientRect")) ? function () {
853                            return i()[n]
854                        } : function () {
855                            return (t ? Ma(o) : e["client" + o]) || 0
856                        }
857                    }(be, me, he),
858                    Pe = function _getOffsetsFunc(e, t) {
859                        return !t || ~Le.indexOf(e) ? Na(e) : function () {
860                            return Ot
861                        }
862                    }(be, me),
863                    Me = 0,
864                    Ee = 0,
865                    Oe = 0,
866                    Ae = K(be, he);
867                if (Te._startClamp = Te._endClamp = !1, Te._dir = he, M *= 45, Te.scroller = be, Te.scroll = de ? de.time.bind(de) : Ae, D = Ae(), Te.vars = E, O = O || E.animation, "refreshPriority" in E && (Ze = 1, -9999 === E.refreshPriority && (ot = Te)), c.tweenScroll = c.tweenScroll || {
868                    top: rc(be, Fe),
869                    left: rc(be, Ye)
870                }, Te.tweenTo = A = c.tweenScroll[he.p], Te.scrubDuration = function (e) {
871                    (o = Ua(e) && e) ? ee ? ee.duration(e) : ee = He.to(O, {
872                        ease: "expo",
873                        totalProgress: "+=0",
874                        inherit: !1,
875                        duration: o,
876                        paused: !0,
877                        onComplete: function onComplete() {
878                            return s && s(Te)
879                        }
880                    }) : (ee && ee.progress(1).kill(), ee = 0)
881                }, O && (O.vars.lazy = !1, O._initted && !Te.isReverted || !1 !== O.vars.immediateRender && !1 !== E.immediateRender && O.duration() && O.render(0, !0, !0), Te.animation = O.pause(), (O.scrollTrigger = Te).scrubDuration(P), w = 0, a = a || O.vars.id), ue && (Va(ue) && !ue.push || (ue = {
882                    snapTo: ue
883                }), "scrollBehavior" in We.style && He.set(me ? [We, Je] : be, {
884                    scrollBehavior: "auto"
885                }), Ie.forEach(function (e) {
886                    return Ta(e) && e.target === (me ? Xe.scrollingElement || Je : be) && (e.smooth = !1)
887                }), p = Ta(ue.snapTo) ? ue.snapTo : "labels" === ue.snapTo ? function _getClosestLabel(t) {
888                    return function (e) {
889                        return He.utils.snap(rb(t), e)
890                    }
891                }(O) : "labelsDirectional" === ue.snapTo ? function _getLabelAtDirection(r) {
892                    return function (e, t) {
893                        return tb(rb(r))(e, t.direction)
894                    }
895                }(O) : !1 !== ue.directional ? function (e, t) {
896                    return tb(ue.snapTo)(e, at() - Ee < 500 ? 0 : t.direction)
897                } : He.utils.snap(ue.snapTo), g = ue.duration || {
898                    min: .1,
899                    max: 2
900                }, g = Va(g) ? Ue(g.min, g.max) : Ue(g, g), te = He.delayedCall(ue.delay || o / 2 || .1, function () {
901                    var e = Ae(),
902                        t = at() - Ee < 500,
903                        r = A.tween;
904                    if (!(t || Math.abs(Te.getVelocity()) < 10) || r || Ge || Me === e) Te.isActive && Me !== e && te.restart(!0);
905                    else {
906                        var n, o, i = (e - B) / N,
907                            a = O && !ve ? O.totalProgress() : i,
908                            s = t ? 0 : (a - _) / (at() - Ke) * 1e3 || 0,
909                            l = He.utils.clamp(-i, 1 - i, ut(s / 2) * s / .185),
910                            c = i + (!1 === ue.inertia ? 0 : l),
911                            u = ue.onStart,
912                            f = ue.onInterrupt,
913                            d = ue.onComplete;
914                        if (n = p(c, Te), Ua(n) || (n = c), o = Math.round(B + n * N), e <= q && B <= e && o !== e) {
915                            if (r && !r._initted && r.data <= ut(o - e)) return;
916                            !1 === ue.inertia && (l = n - i), A(o, {
917                                duration: g(ut(.185 * Math.max(ut(c - a), ut(n - a)) / s / .05 || 0)),
918                                ease: ue.ease || "power3",
919                                data: ut(o - e),
920                                onInterrupt: function onInterrupt() {
921                                    return te.restart(!0) && f && f(Te)
922                                },
923                                onComplete: function onComplete() {
924                                    Te.update(), Me = Ae(), O && (ee ? ee.resetTo("totalProgress", n, O._tTime / O._tDur) : O.progress(n)), w = _ = O && !ve ? O.totalProgress() : Te.progress, h && h(Te), d && d(Te)
925                                }
926                            }, e, l * N, o - e - l * N), u && u(Te, A.tween)
927                        }
928                    }
929                }).pause()), a && (St[a] = Te), i = (i = (ie = Te.trigger = J(ie || !0 !== ae && ae)) && ie._gsap && ie._gsap.stRevert) && i(Te), ae = !0 === ae ? ie : J(ae), ct(S) && (S = {
930                    targets: ie,
931                    className: S
932                }), ae && (!1 === se || se === mt || (se = !(!se && ae.parentNode && ae.parentNode.style && "flex" === mb(ae.parentNode).display) && bt), Te.pin = ae, (n = He.core.getCache(ae)).spacer ? X = n.pinState : (l && ((l = J(l)) && !l.nodeType && (l = l.current || l.nativeElement), n.spacerIsNative = !!l, l && (n.spacerState = jc(l))), n.spacer = U = l || Xe.createElement("div"), U.classList.add("pin-spacer"), a && U.classList.add("pin-spacer-" + a), n.pinState = X = jc(ae)), !1 !== E.force3D && He.set(ae, {
933                    force3D: !0
934                }), Te.spacer = U = n.spacer, r = mb(ae), m = r[se + he.os2], j = He.getProperty(ae), b = He.quickSetter(ae, he.a, xt), gc(ae, U, r), V = jc(ae)), _e) {
935                    e = Va(_e) ? ob(_e, _t) : _t, Y = Db("scroller-start", a, be, he, e, 0), F = Db("scroller-end", a, be, he, e, 0, Y), t = Y["offset" + he.op.d2];
936                    var u = J(z(be, "content") || be);
937                    I = this.markerStart = Db("start", a, u, he, e, t, 0, de), L = this.markerEnd = Db("end", a, u, he, e, t, 0, de), de && (C = He.quickSetter([I, L], he.a, xt)), ye || Le.length && !0 === z(be, "fixedMarkers") || (function _makePositionable(e) {
938                        var t = mb(e).position;
939                        e.style.position = "absolute" === t || "fixed" === t ? t : "relative"
940                    }(me ? We : be), He.set([Y, F], {
941                        force3D: !0
942                    }), y = He.quickSetter(Y, he.a, xt), x = He.quickSetter(F, he.a, xt))
943                }
944                if (de) {
945                    var f = de.vars.onUpdate,
946                        d = de.vars.onUpdateParams;
947                    de.eventCallback("onUpdate", function () {
948                        Te.update(0, 0, 1), f && f.apply(de, d || [])
949                    })
950                }
951                if (Te.previous = function () {
952                    return Tt[Tt.indexOf(Te) - 1]
953                }, Te.next = function () {
954                    return Tt[Tt.indexOf(Te) + 1]
955                }, Te.revert = function (e, t) {
956                    if (!t) return Te.kill(!0);
957                    var r = !1 !== e || !Te.enabled,
958                        n = je;
959                    r !== Te.isReverted && (r && (re = Math.max(Ae(), Te.scroll.rec || 0), Oe = Te.progress, ne = O && O.progress()), I && [I, L, Y, F].forEach(function (e) {
960                        return e.style.display = r ? "none" : "block"
961                    }), r && (je = Te).update(r), !ae || fe && Te.isActive || (r ? function _swapPinOut(e, t, r) {
962                        Et(r);
963                        var n = e._gsap;
964                        if (n.spacerIsNative) Et(n.spacerState);
965                        else if (e._gsap.swappedIn) {
966                            var o = t.parentNode;
967                            o && (o.insertBefore(e, t), o.removeChild(t))
968                        }
969                        e._gsap.swappedIn = !1
970                    }(ae, U, X) : gc(ae, U, mb(ae), Z)), r || Te.update(r), je = n, Te.isReverted = r)
971                }, Te.refresh = function (e, t, r, n) {
972                    if (!je && Te.enabled || t)
973                        if (ae && e && st) wb(ScrollTrigger, "scrollEnd", Ob);
974                        else {
975                            !rt && Se && Se(Te), je = Te, A.tween && !r && (A.tween.kill(), A.tween = 0), ee && ee.pause(), le && O && O.revert({
976                                kill: !1
977                            }).invalidate(), Te.isReverted || Te.revert(!0, !0), Te._subPinOffset = !1;
978                            var o, i, a, s, l, c, u, f, d, p, g, h, v, b = ke(),
979                                m = Pe(),
980                                y = de ? de.duration() : Qa(be, he),
981                                x = N <= .01,
982                                w = 0,
983                                _ = n || 0,
984                                C = Va(r) ? r.end : E.end,
985                                T = E.endTrigger || ie,
986                                S = Va(r) ? r.start : E.start || (0 !== E.start && ie ? ae ? "0 0" : "0 100%" : 0),
987                                k = Te.pinnedContainer = E.pinnedContainer && J(E.pinnedContainer, Te),
988                                P = ie && Math.max(0, Tt.indexOf(Te)) || 0,
989                                M = P;
990                            for (_e && Va(r) && (h = He.getProperty(Y, he.p), v = He.getProperty(F, he.p)); M--;)(c = Tt[M]).end || c.refresh(0, 1) || (je = Te), !(u = c.pin) || u !== ie && u !== ae && u !== k || c.isReverted || ((p = p || []).unshift(c), c.revert(!0, !0)), c !== Tt[M] && (P--, M--);
991                            for (Ta(S) && (S = S(Te)), S = Ca(S, "start", Te), B = mc(S, ie, b, he, Ae(), I, Y, Te, m, Ce, ye, y, de, Te._startClamp && "_startClamp") || (ae ? -.001 : 0), Ta(C) && (C = C(Te)), ct(C) && !C.indexOf("+=") && (~C.indexOf(" ") ? C = (ct(S) ? S.split(" ")[0] : "") + C : (w = Cb(C.substr(2), b), C = ct(S) ? S : (de ? He.utils.mapRange(0, de.duration(), de.scrollTrigger.start, de.scrollTrigger.end, B) : B) + w, T = ie)), C = Ca(C, "end", Te), q = Math.max(B, mc(C || (T ? "100% 0" : y), T, b, he, Ae() + w, L, F, Te, m, Ce, ye, y, de, Te._endClamp && "_endClamp")) || -.001, w = 0, M = P; M--;)(u = (c = Tt[M]).pin) && c.start - c._pinPush <= B && !de && 0 < c.end && (o = c.end - (Te._startClamp ? Math.max(0, c.start) : c.start), (u === ie && c.start - c._pinPush < B || u === k) && isNaN(S) && (w += o * (1 - c.progress)), u === ae && (_ += o));
992                            if (B += w, q += w, Te._startClamp && (Te._startClamp += w), Te._endClamp && !rt && (Te._endClamp = q || -.001, q = Math.min(q, Qa(be, he))), N = q - B || (B -= .01) && .001, x && (Oe = He.utils.clamp(0, 1, He.utils.normalize(B, q, re))), Te._pinPush = _, I && w && ((o = {})[he.a] = "+=" + w, k && (o[he.p] = "-=" + Ae()), He.set([I, L], o)), !ae || et && Te.end >= Qa(be, he)) {
993                                if (ie && Ae() && !de)
994                                    for (i = ie.parentNode; i && i !== We;) i._pinOffset && (B -= i._pinOffset, q -= i._pinOffset), i = i.parentNode
995                            } else o = mb(ae), s = he === Fe, a = Ae(), G = parseFloat(j(he.a)) + _, !y && 1 < q && (g = {
996                                style: g = (me ? Xe.scrollingElement || Je : be).style,
997                                value: g["overflow" + he.a.toUpperCase()]
998                            }, me && "scroll" !== mb(We)["overflow" + he.a.toUpperCase()] && (g.style["overflow" + he.a.toUpperCase()] = "scroll")), gc(ae, U, o), V = jc(ae), i = wt(ae, !0), f = ye && K(be, s ? Ye : Fe)(), se ? ((Z = [se + he.os2, N + _ + xt]).t = U, (M = se === bt ? qb(ae, he) + N + _ : 0) && (Z.push(he.d, M + xt), "auto" !== U.style.flexBasis && (U.style.flexBasis = M + xt)), Et(Z), k && Tt.forEach(function (e) {
999                                e.pin === k && !1 !== e.vars.pinSpacing && (e._subPinOffset = !0)
1000                            }), ye && Ae(re)) : (M = qb(ae, he)) && "auto" !== U.style.flexBasis && (U.style.flexBasis = M + xt), ye && ((l = {
1001                                top: i.top + (s ? a - B : f) + xt,
1002                                left: i.left + (s ? f : a - B) + xt,
1003                                boxSizing: "border-box",
1004                                position: "fixed"
1005                            })[ft] = l.maxWidth = Math.ceil(i.width) + xt, l[dt] = l.maxHeight = Math.ceil(i.height) + xt, l[mt] = l[mt + ht] = l[mt + pt] = l[mt + vt] = l[mt + gt] = "0", l[bt] = o[bt], l[bt + ht] = o[bt + ht], l[bt + pt] = o[bt + pt], l[bt + vt] = o[bt + vt], l[bt + gt] = o[bt + gt], W = function _copyState(e, t, r) {
1006                                for (var n, o = [], i = e.length, a = r ? 8 : 0; a < i; a += 2) n = e[a], o.push(n, n in t ? t[n] : e[a + 1]);
1007                                return o.t = e.t, o
1008                            }(X, l, fe), rt && Ae(0)), O ? (d = O._initted, $e(1), O.render(O.duration(), !0, !0), Q = j(he.a) - G + N + _, $ = 1 < Math.abs(N - Q), ye && $ && W.splice(W.length - 2, 2), O.render(0, !0, !0), d || O.invalidate(!0), O.parent || O.totalTime(O.totalTime()), $e(0)) : Q = N, g && (g.value ? g.style["overflow" + he.a.toUpperCase()] = g.value : g.style.removeProperty("overflow-" + he.a));
1009                            p && p.forEach(function (e) {
1010                                return e.revert(!1, !0)
1011                            }), Te.start = B, Te.end = q, D = R = rt ? re : Ae(), de || rt || (D < re && Ae(re), Te.scroll.rec = 0), Te.revert(!1, !0), Ee = at(), te && (Me = -1, te.restart(!0)), je = 0, O && ve && (O._initted || ne) && O.progress() !== ne && O.progress(ne || 0, !0).render(O.time(), !0, !0), (x || Oe !== Te.progress || de || le) && (O && !ve && O.totalProgress(de && B < -.001 && !Oe ? He.utils.normalize(B, q, 0) : Oe, !0), Te.progress = x || (D - B) / N === Oe ? 0 : Oe), ae && se && (U._pinOffset = Math.round(Te.progress * Q)), ee && ee.invalidate(), isNaN(h) || (h -= He.getProperty(Y, he.p), v -= He.getProperty(F, he.p), qc(Y, he, h), qc(I, he, h - (n || 0)), qc(F, he, v), qc(L, he, v - (n || 0))), x && !rt && Te.update(), !oe || rt || H || (H = !0, oe(Te), H = !1)
1012                        }
1013                }, Te.getVelocity = function () {
1014                    return (Ae() - R) / (at() - Ke) * 1e3 || 0
1015                }, Te.endAnimation = function () {
1016                    Wa(Te.callbackAnimation), O && (ee ? ee.progress(1) : O.paused() ? ve || Wa(O, Te.direction < 0, 1) : Wa(O, O.reversed()))
1017                }, Te.labelToScroll = function (e) {
1018                    return O && O.labels && (B || Te.refresh() || B) + O.labels[e] / O.duration() * N || 0
1019                }, Te.getTrailing = function (t) {
1020                    var e = Tt.indexOf(Te),
1021                        r = 0 < Te.direction ? Tt.slice(0, e).reverse() : Tt.slice(e + 1);
1022                    return (ct(t) ? r.filter(function (e) {
1023                        return e.vars.preventOverlaps === t
1024                    }) : r).filter(function (e) {
1025                        return 0 < Te.direction ? e.end <= B : e.start >= q
1026                    })
1027                }, Te.update = function (e, t, r) {
1028                    if (!de || r || e) {
1029                        var n, o, i, a, s, l, c, u = !0 === rt ? re : Te.scroll(),
1030                            f = e ? 0 : (u - B) / N,
1031                            d = f < 0 ? 0 : 1 < f ? 1 : f || 0,
1032                            p = Te.progress;
1033                        if (t && (R = D, D = de ? Ae() : u, ue && (_ = w, w = O && !ve ? O.totalProgress() : d)), M && ae && !je && !it && st && (!d && B < u + (u - R) / (at() - Ke) * M ? d = 1e-4 : 1 === d && q > u + (u - R) / (at() - Ke) * M && (d = .9999)), d !== p && Te.enabled) {
1034                            if (a = (s = (n = Te.isActive = !!d && d < 1) != (!!p && p < 1)) || !!d != !!p, Te.direction = p < d ? 1 : -1, Te.progress = d, a && !je && (o = d && !p ? 0 : 1 === d ? 1 : 1 === p ? 2 : 3, ve && (i = !s && "none" !== we[o + 1] && we[o + 1] || we[o], c = O && ("complete" === i || "reset" === i || i in O))), ge && (s || c) && (c || P || !O) && (Ta(ge) ? ge(Te) : Te.getTrailing(ge).forEach(function (e) {
1035                                return e.endAnimation()
1036                            })), ve || (!ee || je || it ? O && O.totalProgress(d, !(!je || !Ee && !e)) : (ee._dp._time - ee._start !== ee._time && ee.render(ee._dp._time - ee._start), ee.resetTo ? ee.resetTo("totalProgress", d, O._tTime / O._tDur) : (ee.vars.totalProgress = d, ee.invalidate().restart()))), ae)
1037                                if (e && se && (U.style[se + he.os2] = m), ye) {
1038                                    if (a) {
1039                                        if (l = !e && p < d && u < q + 1 && u + 1 >= Qa(be, he), fe)
1040                                            if (e || !n && !l) oc(ae, U);
1041                                            else {
1042                                                var g = wt(ae, !0),
1043                                                    h = u - B;
1044                                                oc(ae, We, g.top + (he === Fe ? h : 0) + xt, g.left + (he === Fe ? 0 : h) + xt)
1045                                            }
1046                                        Et(n || l ? W : V), $ && d < 1 && n || b(G + (1 !== d || l ? 0 : Q))
1047                                    }
1048                                } else b(Ia(G + Q * d));
1049                            !ue || A.tween || je || it || te.restart(!0), S && (s || ce && d && (d < 1 || !tt)) && Ve(S.targets).forEach(function (e) {
1050                                return e.classList[n || ce ? "add" : "remove"](S.className)
1051                            }), !T || ve || e || T(Te), a && !je ? (ve && (c && ("complete" === i ? O.pause().totalProgress(1) : "reset" === i ? O.restart(!0).pause() : "restart" === i ? O.restart(!0) : O[i]()), T && T(Te)), !s && tt || (k && s && Xa(Te, k), xe[o] && Xa(Te, xe[o]), ce && (1 === d ? Te.kill(!1, 1) : xe[o] = 0), s || xe[o = 1 === d ? 1 : 3] && Xa(Te, xe[o])), pe && !n && Math.abs(Te.getVelocity()) > (Ua(pe) ? pe : 2500) && (Wa(Te.callbackAnimation), ee ? ee.progress(1) : Wa(O, "reverse" === i ? 1 : !d, 1))) : ve && T && !je && T(Te)
1052                        }
1053                        if (x) {
1054                            var v = de ? u / de.duration() * (de._caScrollDist || 0) : u;
1055                            y(v + (Y._isFlipped ? 1 : 0)), x(v)
1056                        }
1057                        C && C(-u / de.duration() * (de._caScrollDist || 0))
1058                    }
1059                }, Te.enable = function (e, t) {
1060                    Te.enabled || (Te.enabled = !0, wb(be, "resize", Lb), me || wb(be, "scroll", Jb), Se && wb(ScrollTrigger, "refreshInit", Se), !1 !== e && (Te.progress = Oe = 0, D = R = Me = Ae()), !1 !== t && Te.refresh())
1061                }, Te.getTween = function (e) {
1062                    return e && A ? A.tween : ee
1063                }, Te.setPositions = function (e, t, r, n) {
1064                    if (de) {
1065                        var o = de.scrollTrigger,
1066                            i = de.duration(),
1067                            a = o.end - o.start;
1068                        e = o.start + a * e / i, t = o.start + a * t / i
1069                    }
1070                    Te.refresh(!1, !1, {
1071                        start: Da(e, r && !!Te._startClamp),
1072                        end: Da(t, r && !!Te._endClamp)
1073                    }, n), Te.update()
1074                }, Te.adjustPinSpacing = function (e) {
1075                    if (Z && e) {
1076                        var t = Z.indexOf(he.d) + 1;
1077                        Z[t] = parseFloat(Z[t]) + e + xt, Z[1] = parseFloat(Z[1]) + e + xt, Et(Z)
1078                    }
1079                }, Te.disable = function (e, t) {
1080                    if (Te.enabled && (!1 !== e && Te.revert(!0, !0), Te.enabled = Te.isActive = !1, t || ee && ee.pause(), re = 0, n && (n.uncache = 1), Se && xb(ScrollTrigger, "refreshInit", Se), te && (te.pause(), A.tween && A.tween.kill() && (A.tween = 0)), !me)) {
1081                        for (var r = Tt.length; r--;)
1082                            if (Tt[r].scroller === be && Tt[r] !== Te) return;
1083                        xb(be, "resize", Lb), me || xb(be, "scroll", Jb)
1084                    }
1085                }, Te.kill = function (e, t) {
1086                    Te.disable(e, t), ee && !t && ee.kill(), a && delete St[a];
1087                    var r = Tt.indexOf(Te);
1088                    0 <= r && Tt.splice(r, 1), r === Qe && 0 < Mt && Qe--, r = 0, Tt.forEach(function (e) {
1089                        return e.scroller === Te.scroller && (r = 1)
1090                    }), r || rt || (Te.scroll.rec = 0), O && (O.scrollTrigger = null, e && O.revert({
1091                        kill: !1
1092                    }), t || O.kill()), I && [I, L, Y, F].forEach(function (e) {
1093                        return e.parentNode && e.parentNode.removeChild(e)
1094                    }), ot === Te && (ot = 0), ae && (n && (n.uncache = 1), r = 0, Tt.forEach(function (e) {
1095                        return e.pin === ae && r++
1096                    }), r || (n.spacer = 0)), E.onKill && E.onKill(Te)
1097                }, Tt.push(Te), Te.enable(!1, !1), i && i(Te), O && O.add && !N) {
1098                    var v = Te.update;
1099                    Te.update = function () {
1100                        Te.update = v, B || q || Te.refresh()
1101                    }, He.delayedCall(.01, Te.update), N = .01, B = q = 0
1102                } else Te.refresh();
1103                ae && function _queueRefreshAll() {
1104                    if (nt !== kt) {
1105                        var e = nt = kt;
1106                        requestAnimationFrame(function () {
1107                            return e === kt && Pt(!0)
1108                        })
1109                    }
1110                }()
1111            } else this.update = this.refresh = this.kill = Ha
1112        }, ScrollTrigger.register = function register(e) {
1113            return s || (He = e || Ka(), Ja() && window.document && ScrollTrigger.enable(), s = lt), s
1114        }, ScrollTrigger.defaults = function defaults(e) {
1115            if (e)
1116                for (var t in e) Ct[t] = e[t];
1117            return Ct
1118        }, ScrollTrigger.disable = function disable(t, r) {
1119            lt = 0, Tt.forEach(function (e) {
1120                return e[r ? "kill" : "disable"](t)
1121            }), xb(Ne, "wheel", Jb), xb(Xe, "scroll", Jb), clearInterval(u), xb(Xe, "touchcancel", Ha), xb(We, "touchstart", Ha), vb(xb, Xe, "pointerdown,touchstart,mousedown", Fa), vb(xb, Xe, "pointerup,touchend,mouseup", Ga), c.kill(), Ra(xb);
1122            for (var e = 0; e < Ie.length; e += 3) yb(xb, Ie[e], Ie[e + 1]), yb(xb, Ie[e], Ie[e + 2])
1123        }, ScrollTrigger.enable = function enable() {
1124            if (Ne = window, Xe = document, Je = Xe.documentElement, We = Xe.body, He && (Ve = He.utils.toArray, Ue = He.utils.clamp, x = He.core.context || Ha, $e = He.core.suppressOverwrites || Ha, w = Ne.history.scrollRestoration || "auto", Q = Ne.pageYOffset, He.core.globals("ScrollTrigger", ScrollTrigger), We)) {
1125                lt = 1, (_ = document.createElement("div")).style.height = "100vh", _.style.position = "absolute", Yb(),
1126                    function _rafBugFix() {
1127                        return lt && requestAnimationFrame(_rafBugFix)
1128                    }(), k.register(He), ScrollTrigger.isTouch = k.isTouch, E = k.isTouch && /(iPad|iPhone|iPod|Mac)/g.test(navigator.userAgent), b = 1 === k.isTouch, wb(Ne, "wheel", Jb), l = [Ne, Xe, Je, We], He.matchMedia ? (ScrollTrigger.matchMedia = function (e) {
1129                        var t, r = He.matchMedia();
1130                        for (t in e) r.add(t, e[t]);
1131                        return r
1132                    }, He.addEventListener("matchMediaInit", function () {
1133                        return Sb()
1134                    }), He.addEventListener("matchMediaRevert", function () {
1135                        return Rb()
1136                    }), He.addEventListener("matchMedia", function () {
1137                        Pt(0, 1), U("matchMedia")
1138                    }), He.matchMedia("(orientation: portrait)", function () {
1139                        return Kb(), Kb
1140                    })) : console.warn("Requires GSAP 3.11.0 or later"), Kb(), wb(Xe, "scroll", Jb);
1141                var e, t, r = We.style,
1142                    n = r.borderTopStyle,
1143                    o = He.core.Animation.prototype;
1144                for (o.revert || Object.defineProperty(o, "revert", {
1145                    value: function value() {
1146                        return this.time(-.01, !0)
1147                    }
1148                }), r.borderTopStyle = "solid", e = wt(We), Fe.m = Math.round(e.top + Fe.sc()) || 0, Ye.m = Math.round(e.left + Ye.sc()) || 0, n ? r.borderTopStyle = n : r.removeProperty("border-top-style"), u = setInterval(Ib, 250), He.delayedCall(.5, function () {
1149                    return it = 0
1150                }), wb(Xe, "touchcancel", Ha), wb(We, "touchstart", Ha), vb(wb, Xe, "pointerdown,touchstart,mousedown", Fa), vb(wb, Xe, "pointerup,touchend,mouseup", Ga), f = He.utils.checkPrefix("transform"), ee.push(f), s = at(), c = He.delayedCall(.2, Pt).pause(), g = [Xe, "visibilitychange", function () {
1151                    var e = Ne.innerWidth,
1152                        t = Ne.innerHeight;
1153                    Xe.hidden ? (d = e, p = t) : d === e && p === t || Lb()
1154                }, Xe, "DOMContentLoaded", Pt, Ne, "load", Pt, Ne, "resize", Lb], Ra(wb), Tt.forEach(function (e) {
1155                    return e.enable(0, 1)
1156                }), t = 0; t < Ie.length; t += 3) yb(xb, Ie[t], Ie[t + 1]), yb(xb, Ie[t], Ie[t + 2])
1157            }
1158        }, ScrollTrigger.config = function config(e) {
1159            "limitCallbacks" in e && (tt = !!e.limitCallbacks);
1160            var t = e.syncInterval;
1161            t && clearInterval(u) || (u = t) && setInterval(Ib, t), "ignoreMobileResize" in e && (b = 1 === ScrollTrigger.isTouch && e.ignoreMobileResize), "autoRefreshEvents" in e && (Ra(xb) || Ra(wb, e.autoRefreshEvents || "none"), h = -1 === (e.autoRefreshEvents + "").indexOf("resize"))
1162        }, ScrollTrigger.scrollerProxy = function scrollerProxy(e, t) {
1163            var r = J(e),
1164                n = Ie.indexOf(r),
1165                o = La(r);
1166            ~n && Ie.splice(n, o ? 6 : 2), t && (o ? Le.unshift(Ne, t, We, t, Je, t) : Le.unshift(r, t))
1167        }, ScrollTrigger.clearMatchMedia = function clearMatchMedia(t) {
1168            Tt.forEach(function (e) {
1169                return e._ctx && e._ctx.query === t && e._ctx.kill(!0, !0)
1170            })
1171        }, ScrollTrigger.isInViewport = function isInViewport(e, t, r) {
1172            var n = (ct(e) ? J(e) : e).getBoundingClientRect(),
1173                o = n[r ? ft : dt] * t || 0;
1174            return r ? 0 < n.right - o && n.left + o < Ne.innerWidth : 0 < n.bottom - o && n.top + o < Ne.innerHeight
1175        }, ScrollTrigger.positionInViewport = function positionInViewport(e, t, r) {
1176            ct(e) && (e = J(e));
1177            var n = e.getBoundingClientRect(),
1178                o = n[r ? ft : dt],
1179                i = null == t ? o / 2 : t in H ? H[t] * o : ~t.indexOf("%") ? parseFloat(t) * o / 100 : parseFloat(t) || 0;
1180            return r ? (n.left + i) / Ne.innerWidth : (n.top + i) / Ne.innerHeight
1181        }, ScrollTrigger.killAll = function killAll(e) {
1182            if (Tt.slice(0).forEach(function (e) {
1183                return "ScrollSmoother" !== e.vars.id && e.kill()
1184            }), !0 !== e) {
1185                var t = W.killAll || [];
1186                W = {}, t.forEach(function (e) {
1187                    return e()
1188                })
1189            }
1190        }, ScrollTrigger);
1191
1192    function ScrollTrigger(e, t) {
1193        s || ScrollTrigger.register(He) || console.warn("Please gsap.registerPlugin(ScrollTrigger)"), x(this), this.init(e, t)
1194    }
1195    ne.version = "3.12.5", ne.saveStyles = function (e) {
1196        return e ? Ve(e).forEach(function (e) {
1197            if (e && e.style) {
1198                var t = j.indexOf(e);
1199                0 <= t && j.splice(t, 5), j.push(e, e.style.cssText, e.getBBox && e.getAttribute("transform"), He.core.getCache(e), x())
1200            }
1201        }) : j
1202    }, ne.revert = function (e, t) {
1203        return Sb(!e, t)
1204    }, ne.create = function (e, t) {
1205        return new ne(e, t)
1206    }, ne.refresh = function (e) {
1207        return e ? Lb() : (s || ne.register()) && Pt(!0)
1208    }, ne.update = function (e) {
1209        return ++Ie.cache && Z(!0 === e ? 2 : 0)
1210    }, ne.clearScrollMemory = Tb, ne.maxScroll = function (e, t) {
1211        return Qa(e, t ? Ye : Fe)
1212    }, ne.getScrollFunc = function (e, t) {
1213        return K(J(e), t ? Ye : Fe)
1214    }, ne.getById = function (e) {
1215        return St[e]
1216    }, ne.getAll = function () {
1217        return Tt.filter(function (e) {
1218            return "ScrollSmoother" !== e.vars.id
1219        })
1220    }, ne.isScrolling = function () {
1221        return !!st
1222    }, ne.snapDirectional = tb, ne.addEventListener = function (e, t) {
1223        var r = W[e] || (W[e] = []);
1224        ~r.indexOf(t) || r.push(t)
1225    }, ne.removeEventListener = function (e, t) {
1226        var r = W[e],
1227            n = r && r.indexOf(t);
1228        0 <= n && r.splice(n, 1)
1229    }, ne.batch = function (e, t) {
1230        function Cp(e, t) {
1231            var r = [],
1232                n = [],
1233                o = He.delayedCall(i, function () {
1234                    t(r, n), r = [], n = []
1235                }).pause();
1236            return function (e) {
1237                r.length || o.restart(!0), r.push(e.trigger), n.push(e), a <= r.length && o.progress(1)
1238            }
1239        }
1240        var r, n = [],
1241            o = {},
1242            i = t.interval || .016,
1243            a = t.batchMax || 1e9;
1244        for (r in t) o[r] = "on" === r.substr(0, 2) && Ta(t[r]) && "onRefreshInit" !== r ? Cp(0, t[r]) : t[r];
1245        return Ta(a) && (a = a(), wb(ne, "refresh", function () {
1246            return a = t.batchMax()
1247        })), Ve(e).forEach(function (e) {
1248            var t = {};
1249            for (r in o) t[r] = o[r];
1250            t.trigger = e, n.push(ne.create(t))
1251        }), n
1252    };
1253
1254    function tc(e, t, r, n) {
1255        return n < t ? e(n) : t < 0 && e(0), n < r ? (n - t) / (r - t) : r < 0 ? t / (t - r) : 1
1256    }
1257
1258    function uc(e, t) {
1259        !0 === t ? e.style.removeProperty("touch-action") : e.style.touchAction = !0 === t ? "auto" : t ? "pan-" + t + (k.isTouch ? " pinch-zoom" : "") : "none", e === Je && uc(We, t)
1260    }
1261
1262    function wc(e) {
1263        var t, r = e.event,
1264            n = e.target,
1265            o = e.axis,
1266            i = (r.changedTouches ? r.changedTouches[0] : r).target,
1267            a = i._gsap || He.core.getCache(i),
1268            s = at();
1269        if (!a._isScrollT || 2e3 < s - a._isScrollT) {
1270            for (; i && i !== We && (i.scrollHeight <= i.clientHeight && i.scrollWidth <= i.clientWidth || !ie[(t = mb(i)).overflowY] && !ie[t.overflowX]);) i = i.parentNode;
1271            a._isScroll = i && i !== n && !La(i) && (ie[(t = mb(i)).overflowY] || ie[t.overflowX]), a._isScrollT = s
1272        } !a._isScroll && "x" !== o || (r.stopPropagation(), r._gsapAllow = !0)
1273    }
1274
1275    function xc(e, t, r, n) {
1276        return k.create({
1277            target: e,
1278            capture: !0,
1279            debounce: !1,
1280            lockAxis: !0,
1281            type: t,
1282            onWheel: n = n && wc,
1283            onPress: n,
1284            onDrag: n,
1285            onScroll: n,
1286            onEnable: function onEnable() {
1287                return r && wb(Xe, k.eventTypes[0], se, !1, !0)
1288            },
1289            onDisable: function onDisable() {
1290                return xb(Xe, k.eventTypes[0], se, !0)
1291            }
1292        })
1293    }
1294
1295    function Bc(e) {
1296        function zq() {
1297            return o = !1
1298        }
1299
1300        function Cq() {
1301            i = Qa(p, Fe), S = Ue(E ? 1 : 0, i), f && (T = Ue(0, Qa(p, Ye))), l = kt
1302        }
1303
1304        function Dq() {
1305            v._gsap.y = Ia(parseFloat(v._gsap.y) + b.offset) + "px", v.style.transform = "matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, " + parseFloat(v._gsap.y) + ", 0, 1)", b.offset = b.cacheID = 0
1306        }
1307
1308        function Jq() {
1309            Cq(), a.isActive() && a.vars.scrollY > i && (b() > i ? a.progress(1) && b(i) : a.resetTo("scrollY", i))
1310        }
1311        Va(e) || (e = {}), e.preventDefault = e.isNormalizer = e.allowClicks = !0, e.type || (e.type = "wheel,touch"), e.debounce = !!e.debounce, e.id = e.id || "normalizer";
1312        var n, i, l, o, a, c, u, s, f = e.normalizeScrollX,
1313            t = e.momentum,
1314            r = e.allowNestedScroll,
1315            d = e.onRelease,
1316            p = J(e.target) || Je,
1317            g = He.core.globals().ScrollSmoother,
1318            h = g && g.get(),
1319            v = E && (e.content && J(e.content) || h && !1 !== e.content && !h.smooth() && h.content()),
1320            b = K(p, Fe),
1321            m = K(p, Ye),
1322            y = 1,
1323            x = (k.isTouch && Ne.visualViewport ? Ne.visualViewport.scale * Ne.visualViewport.width : Ne.outerWidth) / Ne.innerWidth,
1324            w = 0,
1325            _ = Ta(t) ? function () {
1326                return t(n)
1327            } : function () {
1328                return t || 2.8
1329            },
1330            C = xc(p, e.type, !0, r),
1331            T = Ha,
1332            S = Ha;
1333        return v && He.set(v, {
1334            y: "+=0"
1335        }), e.ignoreCheck = function (e) {
1336            return E && "touchmove" === e.type && function ignoreDrag() {
1337                if (o) {
1338                    requestAnimationFrame(zq);
1339                    var e = Ia(n.deltaY / 2),
1340                        t = S(b.v - e);
1341                    if (v && t !== b.v + b.offset) {
1342                        b.offset = t - b.v;
1343                        var r = Ia((parseFloat(v && v._gsap.y) || 0) - b.offset);
1344                        v.style.transform = "matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, " + r + ", 0, 1)", v._gsap.y = r + "px", b.cacheID = Ie.cache, Z()
1345                    }
1346                    return !0
1347                }
1348                b.offset && Dq(), o = !0
1349            }() || 1.05 < y && "touchstart" !== e.type || n.isGesturing || e.touches && 1 < e.touches.length
1350        }, e.onPress = function () {
1351            o = !1;
1352            var e = y;
1353            y = Ia((Ne.visualViewport && Ne.visualViewport.scale || 1) / x), a.pause(), e !== y && uc(p, 1.01 < y || !f && "x"), c = m(), u = b(), Cq(), l = kt
1354        }, e.onRelease = e.onGestureStart = function (e, t) {
1355            if (b.offset && Dq(), t) {
1356                Ie.cache++;
1357                var r, n, o = _();
1358                f && (n = (r = m()) + .05 * o * -e.velocityX / .227, o *= tc(m, r, n, Qa(p, Ye)), a.vars.scrollX = T(n)), n = (r = b()) + .05 * o * -e.velocityY / .227, o *= tc(b, r, n, Qa(p, Fe)), a.vars.scrollY = S(n), a.invalidate().duration(o).play(.01), (E && a.vars.scrollY >= i || i - 1 <= r) && He.to({}, {
1359                    onUpdate: Jq,
1360                    duration: o
1361                })
1362            } else s.restart(!0);
1363            d && d(e)
1364        }, e.onWheel = function () {
1365            a._ts && a.pause(), 1e3 < at() - w && (l = 0, w = at())
1366        }, e.onChange = function (e, t, r, n, o) {
1367            if (kt !== l && Cq(), t && f && m(T(n[2] === t ? c + (e.startX - e.x) : m() + t - n[1])), r) {
1368                b.offset && Dq();
1369                var i = o[2] === r,
1370                    a = i ? u + e.startY - e.y : b() + r - o[1],
1371                    s = S(a);
1372                i && a !== s && (u += s - a), b(s)
1373            } (r || t) && Z()
1374        }, e.onEnable = function () {
1375            uc(p, !f && "x"), ne.addEventListener("refresh", Jq), wb(Ne, "resize", Jq), b.smooth && (b.target.style.scrollBehavior = "auto", b.smooth = m.smooth = !1), C.enable()
1376        }, e.onDisable = function () {
1377            uc(p, !0), xb(Ne, "resize", Jq), ne.removeEventListener("refresh", Jq), C.kill()
1378        }, e.lockAxis = !1 !== e.lockAxis, ((n = new k(e)).iOS = E) && !b() && b(1), E && He.ticker.add(Ha), s = n._dc, a = He.to(n, {
1379            ease: "power4",
1380            paused: !0,
1381            inherit: !1,
1382            scrollX: f ? "+=0.1" : "+=0",
1383            scrollY: "+=0.1",
1384            modifiers: {
1385                scrollY: pc(b, b(), function () {
1386                    return a.pause()
1387                })
1388            },
1389            onUpdate: Z,
1390            onComplete: s.vars.onComplete
1391        }), n
1392    }
1393    var oe, ie = {
1394        auto: 1,
1395        scroll: 1
1396    },
1397        ae = /(input|label|select|textarea)/i,
1398        se = function _captureInputs(e) {
1399            var t = ae.test(e.target.tagName);
1400            (t || oe) && (e._gsapAllow = !0, oe = t)
1401        };
1402    ne.sort = function (e) {
1403        return Tt.sort(e || function (e, t) {
1404            return -1e6 * (e.vars.refreshPriority || 0) + e.start - (t.start + -1e6 * (t.vars.refreshPriority || 0))
1405        })
1406    }, ne.observe = function (e) {
1407        return new k(e)
1408    }, ne.normalizeScroll = function (e) {
1409        if (void 0 === e) return v;
1410        if (!0 === e && v) return v.enable();
1411        if (!1 === e) return v && v.kill(), void (v = e);
1412        var t = e instanceof k ? e : Bc(e);
1413        return v && v.target === t.target && v.kill(), La(t.target) && (v = t), t
1414    }, ne.core = {
1415        _getVelocityProp: L,
1416        _inputObserver: xc,
1417        _scrollers: Ie,
1418        _proxies: Le,
1419        bridge: {
1420            ss: function ss() {
1421                st || U("scrollStart"), st = at()
1422            },
1423            ref: function ref() {
1424                return je
1425            }
1426        }
1427    }, Ka() && He.registerPlugin(ne), e.ScrollTrigger = ne, e.default = ne;
1428    if (typeof (window) === "undefined" || window !== e) {
1429        Object.defineProperty(e, "__esModule", {
1430            value: !0
1431        })
1432    } else {
1433        delete e.default
1434    }
1435});

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.