gsap
Version:
GSAP is a framework-agnostic JavaScript animation library that turns developers into animation superheroes. Build high-performance animations that work in **every** major browser. Animate CSS, SVG, canvas, React, Vue, WebGL, colors, strings, motion paths,
10 lines (9 loc) • 62.2 kB
JavaScript
/*!
* GSDevTools 3.14.2
* https://gsap.com
*
* @license Copyright 2025, GreenSock. All rights reserved.
* Subject to the terms at https://gsap.com/standard-license.
* @author: Jack Doyle, jack@greensock.com
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).window=e.window||{})}(this,function(e){"use strict";function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function w(e,t){if(e.parentNode&&(g||M(e))){var o=P(e),n=o?o.getAttribute("xmlns")||"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",i=o?t?"rect":"g":"div",r=2!==t?0:100,a=3===t?100:0,s={position:"absolute",display:"block",pointerEvents:"none",margin:"0",padding:"0"},l=g.createElementNS?g.createElementNS(n.replace(/^https/,"http"),i):g.createElement(i);return t&&(o?(m=m||w(e),l.setAttribute("width",.01),l.setAttribute("height",.01),l.setAttribute("transform","translate("+r+","+a+")"),l.setAttribute("fill","transparent"),m.appendChild(l)):(h||(h=w(e),Object.assign(h.style,s)),Object.assign(l.style,s,{width:"0.1px",height:"0.1px",top:a+"px",left:r+"px"}),h.appendChild(l))),l}throw"Need document and parent."}function A(e,t,o,n,i,r,a){return e.a=t,e.b=o,e.c=n,e.d=i,e.e=r,e.f=a,e}var g,f,r,a,h,m,v,x,y,t,b="transform",T=b+"Origin",M=function _setDoc(e){var t=e.ownerDocument||e;!(b in e.style)&&"msTransform"in e.style&&(T=(b="msTransform")+"Origin");for(;t.parentNode&&(t=t.parentNode););if(f=window,v=new he,t){r=(g=t).documentElement,a=t.body,(x=g.createElementNS("http://www.w3.org/2000/svg","g")).style.transform="none";var o=t.createElement("div"),n=t.createElement("div"),i=t&&(t.body||t.firstElementChild);i&&i.appendChild&&(i.appendChild(o),o.appendChild(n),o.style.position="static",o.style.transform="translate3d(0,0,1px)",y=n.offsetParent!==o,i.removeChild(o))}return t},k=function _forceNonZeroScale(e){for(var t,o;e&&e!==a;)(o=e._gsap)&&o.uncache&&o.get(e,"x"),o&&!o.scaleX&&!o.scaleY&&o.renderTransform&&(o.scaleX=o.scaleY=1e-4,o.renderTransform(1,o),t?t.push(o):t=[o]),e=e.parentNode;return t},D=[],C=[],S=function _getDocScrollTop(){return f.pageYOffset||g.scrollTop||r.scrollTop||a.scrollTop||0},E=function _getDocScrollLeft(){return f.pageXOffset||g.scrollLeft||r.scrollLeft||a.scrollLeft||0},P=function _svgOwner(e){return e.ownerSVGElement||("svg"===(e.tagName+"").toLowerCase()?e:null)},L=function _isFixed(e){return"fixed"===f.getComputedStyle(e).position||((e=e.parentNode)&&1===e.nodeType?_isFixed(e):void 0)},N=function _placeSiblings(e,t){var o,n,i,r,a,s,l=P(e),d=e===l,c=l?D:C,p=e.parentNode,u=p&&!l&&p.shadowRoot&&p.shadowRoot.appendChild?p.shadowRoot:p;if(e===f)return e;if(c.length||c.push(w(e,1),w(e,2),w(e,3)),o=l?m:h,l)d?(r=-(i=function _getCTM(e){var t,o=e.getCTM();return o||(t=e.style[b],e.style[b]="none",e.appendChild(x),o=x.getCTM(),e.removeChild(x),t?e.style[b]=t:e.style.removeProperty(b.replace(/([A-Z])/g,"-$1").toLowerCase())),o||v.clone()}(e)).e/i.a,a=-i.f/i.d,n=v):e.getBBox?(i=e.getBBox(),r=(n=(n=e.transform?e.transform.baseVal:{}).numberOfItems?1<n.numberOfItems?function _consolidate(e){for(var t=new he,o=0;o<e.numberOfItems;o++)t.multiply(e.getItem(o).matrix);return t}(n):n.getItem(0).matrix:v).a*i.x+n.c*i.y,a=n.b*i.x+n.d*i.y):(n=new he,r=a=0),t&&"g"===e.tagName.toLowerCase()&&(r=a=0),(d||!e.getBoundingClientRect().width?l:p).appendChild(o),o.setAttribute("transform","matrix("+n.a+","+n.b+","+n.c+","+n.d+","+(n.e+r)+","+(n.f+a)+")");else{if(r=a=0,y)for(n=e.offsetParent,i=e;(i=i&&i.parentNode)&&i!==n&&i.parentNode;)4<(f.getComputedStyle(i)[b]+"").length&&(r=i.offsetLeft,a=i.offsetTop,i=0);if("absolute"!==(s=f.getComputedStyle(e)).position&&"fixed"!==s.position)for(n=e.offsetParent;p&&p!==n;)r+=p.scrollLeft||0,a+=p.scrollTop||0,p=p.parentNode;(i=o.style).top=e.offsetTop-a+"px",i.left=e.offsetLeft-r+"px",i[b]=s[b],i[T]=s[T],i.position="fixed"===s.position?"fixed":"absolute",u.appendChild(o)}return o},he=((t=Matrix2D.prototype).inverse=function inverse(){var e=this.a,t=this.b,o=this.c,n=this.d,i=this.e,r=this.f,a=e*n-t*o||1e-10;return A(this,n/a,-t/a,-o/a,e/a,(o*r-n*i)/a,-(e*r-t*i)/a)},t.multiply=function multiply(e){var t=this.a,o=this.b,n=this.c,i=this.d,r=this.e,a=this.f,s=e.a,l=e.c,d=e.b,c=e.d,p=e.e,u=e.f;return A(this,s*t+d*n,s*o+d*i,l*t+c*n,l*o+c*i,r+p*t+u*n,a+p*o+u*i)},t.clone=function clone(){return new Matrix2D(this.a,this.b,this.c,this.d,this.e,this.f)},t.equals=function equals(e){var t=this.a,o=this.b,n=this.c,i=this.d,r=this.e,a=this.f;return t===e.a&&o===e.b&&n===e.c&&i===e.d&&r===e.e&&a===e.f},t.apply=function apply(e,t){void 0===t&&(t={});var o=e.x,n=e.y,i=this.a,r=this.b,a=this.c,s=this.d,l=this.e,d=this.f;return t.x=o*i+n*a+l||0,t.y=o*r+n*s+d||0,t},Matrix2D);function Matrix2D(e,t,o,n,i,r){void 0===e&&(e=1),void 0===t&&(t=0),void 0===o&&(o=0),void 0===n&&(n=1),void 0===i&&(i=0),void 0===r&&(r=0),A(this,e,t,o,n,i,r)}function getGlobalMatrix(e,t,o,n){if(!e||!e.parentNode||(g||M(e)).documentElement===e)return new he;var i=k(e),r=P(e)?D:C,a=N(e,o),s=r[0].getBoundingClientRect(),l=r[1].getBoundingClientRect(),d=r[2].getBoundingClientRect(),c=a.parentNode,p=!n&&L(e),u=new he((l.left-s.left)/100,(l.top-s.top)/100,(d.left-s.left)/100,(d.top-s.top)/100,s.left+(p?0:E()),s.top+(p?0:S()));if(c.removeChild(a),i)for(s=i.length;s--;)(l=i[s]).scaleX=l.scaleY=0,l.renderTransform(1,l);return t?u.inverse():u}function X(){return"undefined"!=typeof window}function Y(){return me||X()&&(me=window.gsap)&&me.registerPlugin&&me}function Z(e){return"function"==typeof e}function $(e){return"object"==typeof e}function _(e){return void 0===e}function aa(){return!1}function da(e){return Math.round(1e4*e)/1e4}function fa(e,t){var o=xe.createElementNS?xe.createElementNS((t||"http://www.w3.org/1999/xhtml").replace(/^https/,"http"),e):xe.createElement(e);return o.style?o:xe.createElement(e)}function ra(e,t){var o,n={};for(o in e)n[o]=t?e[o]*t:e[o];return n}function ta(e,t){for(var o,n=e.length;n--;)t?e[n].style.touchAction=t:e[n].style.removeProperty("touch-action"),(o=e[n].children)&&o.length&&ta(o,t)}function ua(){return Oe.forEach(function(e){return e()})}function wa(){return!Oe.length&&me.ticker.remove(ua)}function xa(e){for(var t=Oe.length;t--;)Oe[t]===e&&Oe.splice(t,1);me.to(wa,{overwrite:!0,delay:15,duration:0,onComplete:wa,data:"_draggable"})}function za(e,t,o,n){if(e.addEventListener){var i=Me[t];n=n||(c?{passive:!1}:null),e.addEventListener(i||t,o,n),i&&t!==i&&e.addEventListener(t,o,n)}}function Aa(e,t,o,n){if(e.removeEventListener){var i=Me[t];e.removeEventListener(i||t,o,n),i&&t!==i&&e.removeEventListener(t,o,n)}}function Ba(e){e.preventDefault&&e.preventDefault(),e.preventManipulation&&e.preventManipulation()}function Da(e){ke=e.touches&&Ne<e.touches.length,Aa(e.target,"touchend",Da)}function Ea(e){ke=e.touches&&Ne<e.touches.length,za(e.target,"touchend",Da)}function Fa(e){return ve.pageYOffset||e.scrollTop||e.documentElement.scrollTop||e.body.scrollTop||0}function Ga(e){return ve.pageXOffset||e.scrollLeft||e.documentElement.scrollLeft||e.body.scrollLeft||0}function Ha(e,t){za(e,"scroll",t),Ze(e.parentNode)||Ha(e.parentNode,t)}function Ia(e,t){Aa(e,"scroll",t),Ze(e.parentNode)||Ia(e.parentNode,t)}function Ka(e,t){var o="x"===t?"Width":"Height",n="scroll"+o,i="client"+o;return Math.max(0,Ze(e)?Math.max(ye[n],s[n])-(ve["inner"+o]||ye[i]||s[i]):e[n]-e[i])}function La(e,t){var o=Ka(e,"x"),n=Ka(e,"y");Ze(e)?e=Ge:La(e.parentNode,t),e._gsMaxScrollX=o,e._gsMaxScrollY=n,t||(e._gsScrollX=e.scrollLeft||0,e._gsScrollY=e.scrollTop||0)}function Ma(e,t,o){var n=e.style;n&&(_(n[t])&&(t=d(t,e)||t),null==o?n.removeProperty&&n.removeProperty(t.replace(/([A-Z])/g,"-$1").toLowerCase()):n[t]=o)}function Na(e){return ve.getComputedStyle(e instanceof Element?e:e.host||(e.parentNode||{}).host||e)}function Pa(e){if(e===ve)return p.left=p.top=0,p.width=p.right=ye.clientWidth||e.innerWidth||s.clientWidth||0,p.height=p.bottom=(e.innerHeight||0)-20<ye.clientHeight?ye.clientHeight:e.innerHeight||s.clientHeight||0,p;var t=e.ownerDocument||xe,o=_(e.pageX)?e.nodeType||_(e.left)||_(e.top)?_e(e)[0].getBoundingClientRect():e:{left:e.pageX-Ga(t),top:e.pageY-Fa(t),right:e.pageX-Ga(t)+1,bottom:e.pageY-Fa(t)+1};return _(o.right)&&!_(o.width)?(o.right=o.left+o.width,o.bottom=o.top+o.height):_(o.width)&&(o={width:o.right-o.left,height:o.bottom-o.top,right:o.right,left:o.left,bottom:o.bottom,top:o.top}),o}function Qa(e,t,o){var n,i=e.vars,r=i[o],a=e._listeners[t];return Z(r)&&(n=r.apply(i.callbackScope||e,i[o+"Params"]||[e.pointerEvent])),a&&!1===e.dispatchEvent(t)&&(n=!1),n}function Ra(e,t){var o,n,i,r=_e(e)[0];return r.nodeType||r===ve?u(r,t):_(e.left)?{left:n=e.min||e.minX||e.minRotation||0,top:o=e.min||e.minY||0,width:(e.max||e.maxX||e.maxRotation||0)-n,height:(e.max||e.maxY||0)-o}:(i={x:0,y:0},{left:e.left-i.x,top:e.top-i.y,width:e.width,height:e.height})}function Ua(i,r,e,t,a,o){var n,s,l,d={};if(r)if(1!==a&&r instanceof Array){if(d.end=n=[],l=r.length,$(r[0]))for(s=0;s<l;s++)n[s]=ra(r[s],a);else for(s=0;s<l;s++)n[s]=r[s]*a;e+=1.1,t-=1.1}else Z(r)?d.end=function(e){var t,o,n=r.call(i,e);if(1!==a)if($(n)){for(o in t={},n)t[o]=n[o]*a;n=t}else n*=a;return n}:d.end=r;return!e&&0!==e||(d.max=e),!t&&0!==t||(d.min=t),o&&(d.velocity=0),d}function Va(e){var t;return!(!e||!e.getAttribute||e===s)&&(!("true"!==(t=e.getAttribute("data-clickable"))&&("false"===t||!n.test(e.nodeName+"")&&"true"!==e.getAttribute("contentEditable")))||Va(e.parentNode))}function Wa(e,t){for(var o,n=e.length;n--;)(o=e[n]).ondragstart=o.onselectstart=t?null:aa,me.set(o,{lazy:!0,userSelect:t?"text":"none"})}function $a(r,i){r=me.utils.toArray(r)[0],i=i||{};var a,s,l,e,d,c,p=document.createElement("div"),u=p.style,t=r.firstChild,g=0,f=0,h=r.scrollTop,m=r.scrollLeft,v=r.scrollWidth,x=r.scrollHeight,y=0,b=0,w=0;R&&!1!==i.force3D?(d="translate3d(",c="px,0px)"):O&&(d="translate(",c="px)"),this.scrollTop=function(e,t){if(!arguments.length)return-this.top();this.top(-e,t)},this.scrollLeft=function(e,t){if(!arguments.length)return-this.left();this.left(-e,t)},this.left=function(e,t){if(!arguments.length)return-(r.scrollLeft+f);var o=r.scrollLeft-m,n=f;if((2<o||o<-2)&&!t)return m=r.scrollLeft,me.killTweensOf(this,{left:1,scrollLeft:1}),this.left(-m),void(i.onKill&&i.onKill());(e=-e)<0?(f=e-.5|0,e=0):b<e?(f=e-b|0,e=b):f=0,(f||n)&&(this._skip||(u[O]=d+-f+"px,"+-g+c),0<=f+y&&(u.paddingRight=f+y+"px")),r.scrollLeft=0|e,m=r.scrollLeft},this.top=function(e,t){if(!arguments.length)return-(r.scrollTop+g);var o=r.scrollTop-h,n=g;if((2<o||o<-2)&&!t)return h=r.scrollTop,me.killTweensOf(this,{top:1,scrollTop:1}),this.top(-h),void(i.onKill&&i.onKill());(e=-e)<0?(g=e-.5|0,e=0):w<e?(g=e-w|0,e=w):g=0,(g||n)&&(this._skip||(u[O]=d+-f+"px,"+-g+c)),r.scrollTop=0|e,h=r.scrollTop},this.maxScrollTop=function(){return w},this.maxScrollLeft=function(){return b},this.disable=function(){for(t=p.firstChild;t;)e=t.nextSibling,r.appendChild(t),t=e;r===p.parentNode&&r.removeChild(p)},this.enable=function(){if((t=r.firstChild)!==p){for(;t;)e=t.nextSibling,p.appendChild(t),t=e;r.appendChild(p),this.calibrate()}},this.calibrate=function(e){var t,o,n,i=r.clientWidth===a;h=r.scrollTop,m=r.scrollLeft,i&&r.clientHeight===s&&p.offsetHeight===l&&v===r.scrollWidth&&x===r.scrollHeight&&!e||((g||f)&&(o=this.left(),n=this.top(),this.left(-r.scrollLeft),this.top(-r.scrollTop)),t=Na(r),i&&!e||(u.display="block",u.width="auto",u.paddingRight="0px",(y=Math.max(0,r.scrollWidth-r.clientWidth))&&(y+=parseFloat(t.paddingLeft)+(B?parseFloat(t.paddingRight):0))),u.display="inline-block",u.position="relative",u.overflow="visible",u.verticalAlign="top",u.boxSizing="content-box",u.width="100%",u.paddingRight=y+"px",B&&(u.paddingBottom=t.paddingBottom),a=r.clientWidth,s=r.clientHeight,v=r.scrollWidth,x=r.scrollHeight,b=r.scrollWidth-a,w=r.scrollHeight-s,l=p.offsetHeight,u.display="block",(o||n)&&(this.left(o),this.top(n)))},this.content=p,this.element=r,this._skip=!1,this.enable()}function _a(e){if(X()&&document.body){var t=window&&window.navigator;ve=window,xe=document,ye=xe.documentElement,s=xe.body,l=fa("div"),Ee=!!window.PointerEvent,(be=fa("div")).style.cssText="visibility:hidden;height:1px;top:-1px;pointer-events:none;position:relative;clear:both;cursor:grab",Se="grab"===be.style.cursor?"grab":"move",De=t&&-1!==t.userAgent.toLowerCase().indexOf("android"),Te="ontouchstart"in ye&&"orientation"in ve||t&&(0<t.MaxTouchPoints||0<t.msMaxTouchPoints),n=fa("div"),i=fa("div"),r=i.style,a=s,r.display="inline-block",r.position="relative",n.style.cssText="width:90px;height:40px;padding:10px;overflow:auto;visibility:hidden",n.appendChild(i),a.appendChild(n),o=i.offsetHeight+18>n.scrollHeight,a.removeChild(n),B=o,Me=function(e){for(var t=e.split(","),o=(("onpointerdown"in l?"pointerdown,pointermove,pointerup,pointercancel":"onmspointerdown"in l?"MSPointerDown,MSPointerMove,MSPointerUp,MSPointerCancel":e).split(",")),n={},i=4;-1<--i;)n[t[i]]=o[i],n[o[i]]=t[i];try{ye.addEventListener("test",null,Object.defineProperty({},"passive",{get:function get(){c=1}}))}catch(e){}return n}("touchstart,touchmove,touchend,touchcancel"),za(xe,"touchcancel",aa),za(ve,"touchmove",aa),s&&s.addEventListener("touchstart",aa),za(xe,"contextmenu",function(){for(var e in He)He[e].isPressed&&He[e].endDrag()}),me=we=Y()}var o,n,i,r,a;me?(Ce=me.plugins.inertia,Pe=me.core.context||function(){},d=me.utils.checkPrefix,O=d(O),Re=d(Re),_e=me.utils.toArray,Le=me.core.getStyleSaver,R=!!d("perspective")):e&&console.warn("Please gsap.registerPlugin(Draggable)")}var me,ve,xe,ye,s,l,be,we,d,_e,c,Te,Me,ke,De,Ce,Se,Ee,Pe,Le,R,B,o,Ne=0,O="transform",Re="transformOrigin",Ae=Array.isArray,Xe=180/Math.PI,Be=1e20,i=new he,Ye=Date.now||function(){return(new Date).getTime()},Oe=[],He={},Ie=0,n=/^(?:a|input|textarea|button|select)$/i,Fe=0,ze={},Ge={},Ze=function _isRoot(e){return!(e&&e!==ye&&9!==e.nodeType&&e!==xe.body&&e!==ve&&e.nodeType&&e.parentNode)},p={},We={},u=function _getElementBounds(e,t){t=_e(t)[0];var o,n,i,r,a,s,l,d,c,p,u,g,f,h=e.getBBox&&e.ownerSVGElement,m=e.ownerDocument||xe;if(e===ve)i=Fa(m),n=(o=Ga(m))+(m.documentElement.clientWidth||e.innerWidth||m.body.clientWidth||0),r=i+((e.innerHeight||0)-20<m.documentElement.clientHeight?m.documentElement.clientHeight:e.innerHeight||m.body.clientHeight||0);else{if(t===ve||_(t))return e.getBoundingClientRect();o=i=0,h?(u=(p=e.getBBox()).width,g=p.height):(e.viewBox&&(p=e.viewBox.baseVal)&&(o=p.x||0,i=p.y||0,u=p.width,g=p.height),u||(p="border-box"===(f=Na(e)).boxSizing,u=(parseFloat(f.width)||e.clientWidth||0)+(p?0:parseFloat(f.borderLeftWidth)+parseFloat(f.borderRightWidth)),g=(parseFloat(f.height)||e.clientHeight||0)+(p?0:parseFloat(f.borderTopWidth)+parseFloat(f.borderBottomWidth)))),n=u,r=g}return e===t?{left:o,top:i,width:n-o,height:r-i}:(s=(a=getGlobalMatrix(t,!0).multiply(getGlobalMatrix(e))).apply({x:o,y:i}),l=a.apply({x:n,y:i}),d=a.apply({x:n,y:r}),c=a.apply({x:o,y:r}),{left:o=Math.min(s.x,l.x,d.x,c.x),top:i=Math.min(s.y,l.y,d.y,c.y),width:Math.max(s.x,l.x,d.x,c.x)-o,height:Math.max(s.y,l.y,d.y,c.y)-i})},H=((o=EventDispatcher.prototype).addEventListener=function addEventListener(e,t){var o=this._listeners[e]||(this._listeners[e]=[]);~o.indexOf(t)||o.push(t)},o.removeEventListener=function removeEventListener(e,t){var o=this._listeners[e],n=o&&o.indexOf(t);0<=n&&o.splice(n,1)},o.dispatchEvent=function dispatchEvent(t){var o,n=this;return(this._listeners[t]||[]).forEach(function(e){return!1===e.call(n,{type:t,target:n.target})&&(o=!1)}),o},EventDispatcher);function EventDispatcher(e){this._listeners={},this.target=e||this}var Ve,W=(function _inheritsLoose(e,t){e.prototype=Object.create(t.prototype),(e.prototype.constructor=e).__proto__=t}(Draggable,Ve=H),Draggable.register=function register(e){me=e,_a()},Draggable.create=function create(e,t){return we||_a(!0),_e(e).map(function(e){return new Draggable(e,t)})},Draggable.get=function get(e){return He[(_e(e)[0]||{})._gsDragID]},Draggable.timeSinceDrag=function timeSinceDrag(){return(Ye()-Fe)/1e3},Draggable.hitTest=function hitTest(e,t,o){if(e===t)return!1;var n,i,r,a=Pa(e),s=Pa(t),l=a.top,d=a.left,c=a.right,p=a.bottom,u=a.width,g=a.height,f=s.left>c||s.right<d||s.top>p||s.bottom<l;return f||!o?!f:(r=-1!==(o+"").indexOf("%"),o=parseFloat(o)||0,(n={left:Math.max(d,s.left),top:Math.max(l,s.top)}).width=Math.min(c,s.right)-n.left,n.height=Math.min(p,s.bottom)-n.top,!(n.width<0||n.height<0)&&(r?u*g*(o*=.01)<=(i=n.width*n.height)||i>=s.width*s.height*o:n.width>o&&n.height>o))},Draggable);function Draggable(g,p){var e;e=Ve.call(this)||this,we||_a(1),g=_e(g)[0],e.styles=Le&&Le(g,"transform,left,top"),Ce=Ce||me.plugins.inertia,e.vars=p=ra(p||{}),e.target=g,e.x=e.y=e.rotation=0,e.dragResistance=parseFloat(p.dragResistance)||0,e.edgeResistance=isNaN(p.edgeResistance)?1:parseFloat(p.edgeResistance)||0,e.lockAxis=p.lockAxis,e.autoScroll=p.autoScroll||0,e.lockedAxis=null,e.allowEventDefault=!!p.allowEventDefault,me.getProperty(g,"x");function Mh(e,t){return parseFloat(le.get(g,e,t))}function ti(e){return Ba(e),e.stopImmediatePropagation&&e.stopImmediatePropagation(),!1}function ui(e){if(q.autoScroll&&q.isDragging&&(te||L)){var t,o,n,i,r,a,s,l,d=g,c=15*q.autoScroll;for(te=!1,Ge.scrollTop=null!=ve.pageYOffset?ve.pageYOffset:null!=ce.documentElement.scrollTop?ce.documentElement.scrollTop:ce.body.scrollTop,Ge.scrollLeft=null!=ve.pageXOffset?ve.pageXOffset:null!=ce.documentElement.scrollLeft?ce.documentElement.scrollLeft:ce.body.scrollLeft,i=q.pointerX-Ge.scrollLeft,r=q.pointerY-Ge.scrollTop;d&&!o;)t=(o=Ze(d.parentNode))?Ge:d.parentNode,n=o?{bottom:Math.max(ye.clientHeight,ve.innerHeight||0),right:Math.max(ye.clientWidth,ve.innerWidth||0),left:0,top:0}:t.getBoundingClientRect(),a=s=0,K&&((l=t._gsMaxScrollY-t.scrollTop)<0?s=l:r>n.bottom-ie&&l?(te=!0,s=Math.min(l,c*(1-Math.max(0,n.bottom-r)/ie)|0)):r<n.top+oe&&t.scrollTop&&(te=!0,s=-Math.min(t.scrollTop,c*(1-Math.max(0,r-n.top)/oe)|0)),s&&(t.scrollTop+=s)),U&&((l=t._gsMaxScrollX-t.scrollLeft)<0?a=l:i>n.right-ne&&l?(te=!0,a=Math.min(l,c*(1-Math.max(0,n.right-i)/ne)|0)):i<n.left+re&&t.scrollLeft&&(te=!0,a=-Math.min(t.scrollLeft,c*(1-Math.max(0,i-n.left)/re)|0)),a&&(t.scrollLeft+=a)),o&&(a||s)&&(ve.scrollTo(t.scrollLeft,t.scrollTop),ge(q.pointerX+a,q.pointerY+s)),d=t}if(L){var p=q.x,u=q.y;W?(q.deltaX=p-parseFloat(le.rotation),q.rotation=p,le.rotation=p+"deg",le.renderTransform(1,le)):f?(K&&(q.deltaY=u-f.top(),f.top(u)),U&&(q.deltaX=p-f.left(),f.left(p))):G?(K&&(q.deltaY=u-parseFloat(le.y),le.y=u+"px"),U&&(q.deltaX=p-parseFloat(le.x),le.x=p+"px"),le.renderTransform(1,le)):(K&&(q.deltaY=u-parseFloat(g.style.top||0),g.style.top=u+"px"),U&&(q.deltaX=p-parseFloat(g.style.left||0),g.style.left=p+"px")),!h||e||H||(!(H=!0)===Qa(q,"drag","onDrag")&&(U&&(q.x-=q.deltaX),K&&(q.y-=q.deltaY),ui(!0)),H=!1)}L=!1}function vi(e,t){var o,n,i=q.x,r=q.y;g._gsap||(le=me.core.getCache(g)),le.uncache&&me.getProperty(g,"x"),G?(q.x=parseFloat(le.x),q.y=parseFloat(le.y)):W?q.x=q.rotation=da(parseFloat(le.rotation)):f?(q.y=f.top(),q.x=f.left()):(q.y=parseFloat(g.style.top||(n=Na(g))&&n.top)||0,q.x=parseFloat(g.style.left||(n||{}).left)||0),(N||R||A)&&!t&&(q.isDragging||q.isThrowing)&&(A&&(ze.x=q.x,ze.y=q.y,(o=A(ze)).x!==q.x&&(q.x=o.x,L=!0),o.y!==q.y&&(q.y=o.y,L=!0)),N&&(o=N(q.x))!==q.x&&(q.x=o,W&&(q.rotation=o),L=!0),R&&((o=R(q.y))!==q.y&&(q.y=o),L=!0)),L&&ui(!0),e||(q.deltaX=q.x-i,q.deltaY=q.y-r,Qa(q,"throwupdate","onThrowUpdate"))}function wi(a,s,l,o){return null==s&&(s=-Be),null==l&&(l=Be),Z(a)?function(e){var t=q.isPressed?1-q.edgeResistance:1;return a.call(q,(l<e?l+(e-l)*t:e<s?s+(e-s)*t:e)*o)*o}:Ae(a)?function(e){for(var t,o,n=a.length,i=0,r=Be;-1<--n;)(o=(t=a[n])-e)<0&&(o=-o),o<r&&s<=t&&t<=l&&(i=n,r=o);return a[i]}:isNaN(a)?function(e){return e}:function(){return a*o}}function yi(){var e,t,o,n;k=!1,f?(f.calibrate(),q.minX=C=-f.maxScrollLeft(),q.minY=E=-f.maxScrollTop(),q.maxX=D=q.maxY=S=0,k=!0):p.bounds&&(e=Ra(p.bounds,g.parentNode),W?(q.minX=C=e.left,q.maxX=D=e.left+e.width,q.minY=E=q.maxY=S=0):_(p.bounds.maxX)&&_(p.bounds.maxY)?(t=Ra(g,g.parentNode),q.minX=C=Math.round(Mh(V,"px")+e.left-t.left),q.minY=E=Math.round(Mh(Q,"px")+e.top-t.top),q.maxX=D=Math.round(C+(e.width-t.width)),q.maxY=S=Math.round(E+(e.height-t.height))):(e=p.bounds,q.minX=C=e.minX,q.minY=E=e.minY,q.maxX=D=e.maxX,q.maxY=S=e.maxY),D<C&&(q.minX=D,q.maxX=D=C,C=q.minX),S<E&&(q.minY=S,q.maxY=S=E,E=q.minY),W&&(q.minRotation=C,q.maxRotation=D),k=!0),p.liveSnap&&(o=!0===p.liveSnap?p.snap||{}:p.liveSnap,n=Ae(o)||Z(o),W?(N=wi(n?o:o.rotation,C,D,1),R=null):o.points?A=function buildPointSnapFunc(l,s,d,c,p,u,g){return u=u&&u<Be?u*u:Be,Z(l)?function(e){var t,o,n,i=q.isPressed?1-q.edgeResistance:1,r=e.x,a=e.y;return e.x=r=d<r?d+(r-d)*i:r<s?s+(r-s)*i:r,e.y=a=p<a?p+(a-p)*i:a<c?c+(a-c)*i:a,(t=l.call(q,e))!==e&&(e.x=t.x,e.y=t.y),1!==g&&(e.x*=g,e.y*=g),u<Be&&(o=e.x-r,n=e.y-a,u<o*o+n*n&&(e.x=r,e.y=a)),e}:Ae(l)?function(e){for(var t,o,n,i,r=l.length,a=0,s=Be;-1<--r;)(i=(t=(n=l[r]).x-e.x)*t+(o=n.y-e.y)*o)<s&&(a=r,s=i);return s<=u?l[a]:e}:function(e){return e}}(n?o:o.points,C,D,E,S,o.radius,f?-1:1):(U&&(N=wi(n?o:o.x||o.left||o.scrollLeft,C,D,f?-1:1)),K&&(R=wi(n?o:o.y||o.top||o.scrollTop,E,S,f?-1:1))))}function zi(){q.isThrowing=!1,Qa(q,"throwcomplete","onThrowComplete")}function Ai(){q.isThrowing=!1}function Bi(e,t){var o,n,i,r;e&&Ce?(!0===e&&(o=p.snap||p.liveSnap||{},n=Ae(o)||Z(o),e={resistance:(p.throwResistance||p.resistance||1e3)/(W?10:1)},W?e.rotation=Ua(q,n?o:o.rotation,D,C,1,t):(U&&(e[V]=Ua(q,n?o:o.points||o.x||o.left,D,C,f?-1:1,t||"x"===q.lockedAxis)),K&&(e[Q]=Ua(q,n?o:o.points||o.y||o.top,S,E,f?-1:1,t||"y"===q.lockedAxis)),(o.points||Ae(o)&&$(o[0]))&&(e.linkedProps=V+","+Q,e.radius=o.radius))),q.isThrowing=!0,r=isNaN(p.overshootTolerance)?1===p.edgeResistance?0:1-q.edgeResistance+.2:p.overshootTolerance,e.duration||(e.duration={max:Math.max(p.minDuration||0,"maxDuration"in p?p.maxDuration:2),min:isNaN(p.minDuration)?0===r||$(e)&&1e3<e.resistance?0:.5:p.minDuration,overshoot:r}),q.tween=i=me.to(f||g,{inertia:e,data:"_draggable",inherit:!1,onComplete:zi,onInterrupt:Ai,onUpdate:p.fastMode?Qa:vi,onUpdateParams:p.fastMode?[q,"onthrowupdate","onThrowUpdate"]:o&&o.radius?[!1,!0]:[]}),p.fastMode||(f&&(f._skip=!0),i.render(1e9,!0,!0),vi(!0,!0),q.endX=q.x,q.endY=q.y,W&&(q.endRotation=q.x),i.play(0),vi(!0,!0),f&&(f._skip=!1))):k&&q.applyBounds()}function Ci(e){var t,o=X;X=getGlobalMatrix(g.parentNode,!0),e&&q.isPressed&&!X.equals(o||new he)&&(t=o.inverse().apply({x:b,y:w}),X.apply(t,t),b=t.x,w=t.y),X.equals(i)&&(X=null)}function Di(){var e,t,o,n=1-q.edgeResistance,i=de?Ga(ce):0,r=de?Fa(ce):0;G&&(le.x=Mh(V,"px")+"px",le.y=Mh(Q,"px")+"px",le.renderTransform()),Ci(!1),We.x=q.pointerX-i,We.y=q.pointerY-r,X&&X.apply(We,We),b=We.x,w=We.y,L&&(ge(q.pointerX,q.pointerY),ui(!0)),c=getGlobalMatrix(g),f?(yi(),M=f.top(),T=f.left()):(pe()?(vi(!0,!0),yi()):q.applyBounds(),W?(e=g.ownerSVGElement?[le.xOrigin-g.getBBox().x,le.yOrigin-g.getBBox().y]:(Na(g)[Re]||"0 0").split(" "),P=q.rotationOrigin=getGlobalMatrix(g).apply({x:parseFloat(e[0])||0,y:parseFloat(e[1])||0}),vi(!0,!0),t=q.pointerX-P.x-i,o=P.y-q.pointerY+r,T=q.x,M=q.y=Math.atan2(o,t)*Xe):(M=Mh(Q,"px"),T=Mh(V,"px"))),k&&n&&(D<T?T=D+(T-D)/n:T<C&&(T=C-(C-T)/n),W||(S<M?M=S+(M-S)/n:M<E&&(M=E-(E-M)/n))),q.startX=T=da(T),q.startY=M=da(M)}function Fi(){!be.parentNode||pe()||q.isDragging||be.parentNode.removeChild(be)}function Gi(e,t){var o;if(!u||q.isPressed||!e||!("mousedown"!==e.type&&"pointerdown"!==e.type||t)&&Ye()-se<30&&Me[q.pointerEvent.type])F&&e&&u&&Ba(e);else{if(B=pe(),z=!1,q.pointerEvent=e,Me[e.type]?(y=~e.type.indexOf("touch")?e.currentTarget||e.target:ce,za(y,"touchend",fe),za(y,"touchmove",ue),za(y,"touchcancel",fe),za(ce,"touchstart",Ea)):(y=null,za(ce,"mousemove",ue)),O=null,Ee&&y||(za(ce,"mouseup",fe),e&&e.target&&za(e.target,"mouseup",fe)),x=ae.call(q,e.target)&&!1===p.dragClickables&&!t)return za(e.target,"change",fe),Qa(q,"pressInit","onPressInit"),Qa(q,"press","onPress"),Wa(J,!0),void(F=!1);if(Y=!(!y||U==K||!1===q.vars.allowNativeTouchScrolling||q.vars.allowContextMenu&&e&&(e.ctrlKey||2<e.which))&&(U?"y":"x"),(F=!Y&&!q.allowEventDefault)&&(Ba(e),za(ve,"touchforcechange",Ba)),e.changedTouches?(e=m=e.changedTouches[0],v=e.identifier):e.pointerId?v=e.pointerId:m=v=null,Ne++,function _addToRenderQueue(e){Oe.push(e),1===Oe.length&&me.ticker.add(ua)}(ui),w=q.pointerY=e.pageY,b=q.pointerX=e.pageX,Qa(q,"pressInit","onPressInit"),(Y||q.autoScroll)&&La(g.parentNode),!g.parentNode||!q.autoScroll||f||W||!g.parentNode._gsMaxScrollX||be.parentNode||g.getBBox||(be.style.width=g.parentNode.scrollWidth+"px",g.parentNode.appendChild(be)),Di(),q.tween&&q.tween.kill(),q.isThrowing=!1,me.killTweensOf(f||g,n,!0),f&&me.killTweensOf(g,{scrollTo:1},!0),q.tween=q.lockedAxis=null,!p.zIndexBoost&&(W||f||!1===p.zIndexBoost)||(g.style.zIndex=Draggable.zIndex++),q.isPressed=!0,h=!(!p.onDrag&&!q._listeners.drag),l=!(!p.onMove&&!q._listeners.move),!1!==p.cursor||p.activeCursor)for(o=J.length;-1<--o;)me.set(J[o],{cursor:p.activeCursor||p.cursor||("grab"===Se?"grabbing":Se)});Qa(q,"press","onPress"),Ce&&Ce.track(f||g,G?"x,y":W?"rotation":"top,left")}}function Ki(e){if(e&&q.isDragging&&!f){var t=e.target||g.parentNode,o=t.scrollLeft-t._gsScrollX,n=t.scrollTop-t._gsScrollY;(o||n)&&(X?(b-=o*X.a+n*X.c,w-=n*X.d+o*X.b):(b-=o,w-=n),t._gsScrollX+=o,t._gsScrollY+=n,ge(q.pointerX,q.pointerY))}}function Li(e){var t=Ye(),o=t-se<100,n=t-ee<50,i=o&&I===se,r=q.pointerEvent&&q.pointerEvent.defaultPrevented,a=o&&d===se,s=e.isTrusted||null==e.isTrusted&&o&&i;if((i||n&&!1!==q.vars.suppressClickOnDrag)&&e.stopImmediatePropagation&&e.stopImmediatePropagation(),o&&(!q.pointerEvent||!q.pointerEvent.defaultPrevented)&&(!i||s&&!a))return s&&i&&(d=se),void(I=se);(q.isPressed||n||o)&&(s&&e.detail&&o&&!r||Ba(e)),o||n||z||(e&&e.target&&(q.pointerEvent=e),Qa(q,"click","onClick"))}function Mi(e){return X?{x:e.x*X.a+e.y*X.c+X.e,y:e.x*X.b+e.y*X.d+X.f}:{x:e.x,y:e.y}}var u,f,b,w,T,M,k,h,l,D,C,S,E,m,v,P,L,t,N,R,A,x,y,X,B,Y,O,H,I,d,F,c,z,o=(p.type||"x,y").toLowerCase(),G=~o.indexOf("x")||~o.indexOf("y"),W=-1!==o.indexOf("rotation"),V=W?"rotation":G?"x":"left",Q=G?"y":"top",U=!(!~o.indexOf("x")&&!~o.indexOf("left")&&"scroll"!==o),K=!(!~o.indexOf("y")&&!~o.indexOf("top")&&"scroll"!==o),j=p.minimumMovement||2,q=_assertThisInitialized(e),J=_e(p.trigger||p.handle||g),n={},ee=0,te=!1,oe=p.autoScrollMarginTop||40,ne=p.autoScrollMarginRight||40,ie=p.autoScrollMarginBottom||40,re=p.autoScrollMarginLeft||40,ae=p.clickableTest||Va,se=0,le=g._gsap||me.core.getCache(g),de=function _isFixed(e){return"fixed"===Na(e).position||((e=e.parentNode)&&1===e.nodeType?_isFixed(e):void 0)}(g),ce=g.ownerDocument||xe,pe=function isTweening(){return q.tween&&q.tween.isActive()},ue=function onMove(e){var t,o,n,i,r,a,s=e;if(u&&!ke&&q.isPressed&&e){if(t=(q.pointerEvent=e).changedTouches){if((e=t[0])!==m&&e.identifier!==v){for(i=t.length;-1<--i&&(e=t[i]).identifier!==v&&e.target!==g;);if(i<0)return}}else if(e.pointerId&&v&&e.pointerId!==v)return;y&&Y&&!O&&(We.x=e.pageX-(de?Ga(ce):0),We.y=e.pageY-(de?Fa(ce):0),X&&X.apply(We,We),o=We.x,n=We.y,((r=Math.abs(o-b))!==(a=Math.abs(n-w))&&(j<r||j<a)||De&&Y===O)&&(O=a<r&&U?"x":"y",Y&&O!==Y&&za(ve,"touchforcechange",Ba),!1!==q.vars.lockAxisOnTouchScroll&&U&&K&&(q.lockedAxis="x"===O?"y":"x",Z(q.vars.onLockAxis)&&q.vars.onLockAxis.call(q,s)),De&&Y===O))?fe(s):(F=q.allowEventDefault||Y&&(!O||Y===O)||!1===s.cancelable?F&&!1:(Ba(s),!0),q.autoScroll&&(te=!0),ge(e.pageX,e.pageY,l))}else F&&e&&u&&Ba(e)},ge=function setPointerPosition(e,t,o){var n,i,r,a,s,l,d=1-q.dragResistance,c=1-q.edgeResistance,p=q.pointerX,u=q.pointerY,g=M,f=q.x,h=q.y,m=q.endX,v=q.endY,x=q.endRotation,y=L;q.pointerX=e,q.pointerY=t,de&&(e-=Ga(ce),t-=Fa(ce)),W?(a=da(Math.atan2(P.y-t,e-P.x)*Xe),180<(s=q.y-a)?(M-=360,q.y=a):s<-180&&(M+=360,q.y=a),X&&(l=e*X.a+t*X.c+X.e,t=e*X.b+t*X.d+X.f,e=l),r=q.x!==T||Math.max(Math.abs(b-e),Math.abs(w-t))>j?(q.y=a,da(T+(M-a)*d)):T):(X&&(l=e*X.a+t*X.c+X.e,t=e*X.b+t*X.d+X.f,e=l),(i=t-w)<j&&-j<i&&(i=0),(n=e-b)<j&&-j<n&&(n=0),(q.lockAxis||q.lockedAxis)&&(n||i)&&((l=q.lockedAxis)||(q.lockedAxis=l=U&&Math.abs(n)>Math.abs(i)?"y":K?"x":null,l&&Z(q.vars.onLockAxis)&&q.vars.onLockAxis.call(q,q.pointerEvent)),"y"===l?i=0:"x"===l&&(n=0)),r=da(T+n*d),a=da(M+i*d)),(N||R||A)&&(q.x!==r||q.y!==a&&!W)&&(A&&(ze.x=r,ze.y=a,l=A(ze),r=da(l.x),a=da(l.y)),N&&(r=da(N(r))),R&&(a=da(R(a)))),k&&(D<r?r=D+Math.round((r-D)*c):r<C&&(r=C+Math.round((r-C)*c)),W||(S<a?a=Math.round(S+(a-S)*c):a<E&&(a=Math.round(E+(a-E)*c)))),q.x===r&&(q.y===a||W)||(W?(q.endRotation=q.x=q.endX=da(r),L=!0):(K&&(q.y=q.endY=a,L=!0),U&&(q.x=q.endX=r,L=!0)),o&&!1===Qa(q,"move","onMove")?(q.pointerX=p,q.pointerY=u,M=g,q.x=f,q.y=h,q.endX=m,q.endY=v,q.endRotation=x,L=y):!q.isDragging&&q.isPressed&&(q.isDragging=z=!0,Qa(q,"dragstart","onDragStart")))},fe=function onRelease(e,t){if(u&&q.isPressed&&(!e||null==v||t||!(e.pointerId&&e.pointerId!==v&&e.target!==g||e.changedTouches&&!function _hasTouchID(e,t){for(var o=e.length;o--;)if(e[o].identifier===t)return!0}(e.changedTouches,v)))){q.isPressed=!1;var o,n,i,r,a,s=e,l=q.isDragging,d=q.vars.allowContextMenu&&e&&(e.ctrlKey||2<e.which),c=me.delayedCall(.001,Fi);if(y?(Aa(y,"touchend",onRelease),Aa(y,"touchmove",ue),Aa(y,"touchcancel",onRelease),Aa(ce,"touchstart",Ea)):Aa(ce,"mousemove",ue),Aa(ve,"touchforcechange",Ba),Ee&&y||(Aa(ce,"mouseup",onRelease),e&&e.target&&Aa(e.target,"mouseup",onRelease)),L=!1,l&&(ee=Fe=Ye(),q.isDragging=!1),xa(ui),x&&!d)return e&&(Aa(e.target,"change",onRelease),q.pointerEvent=s),Wa(J,!1),Qa(q,"release","onRelease"),Qa(q,"click","onClick"),void(x=!1);for(n=J.length;-1<--n;)Ma(J[n],"cursor",p.cursor||(!1!==p.cursor?Se:null));if(Ne--,e){if((o=e.changedTouches)&&(e=o[0])!==m&&e.identifier!==v){for(n=o.length;-1<--n&&(e=o[n]).identifier!==v&&e.target!==g;);if(n<0&&!t)return}q.pointerEvent=s,q.pointerX=e.pageX,q.pointerY=e.pageY}return d&&s?(Ba(s),F=!0,Qa(q,"release","onRelease")):s&&!l?(F=!1,B&&(p.snap||p.bounds)&&Bi(p.inertia||p.throwProps),Qa(q,"release","onRelease"),De&&"touchmove"===s.type||-1!==s.type.indexOf("cancel")||(Qa(q,"click","onClick"),Ye()-se<300&&Qa(q,"doubleclick","onDoubleClick"),r=s.target||g,se=Ye(),a=function syntheticClick(){se===I||!q.enabled()||q.isPressed||s.defaultPrevented||(r.click?r.click():ce.createEvent&&((i=ce.createEvent("MouseEvents")).initMouseEvent("click",!0,!0,ve,1,q.pointerEvent.screenX,q.pointerEvent.screenY,q.pointerX,q.pointerY,!1,!1,!1,!1,0,null),r.dispatchEvent(i)))},De||s.defaultPrevented||me.delayedCall(.05,a))):(Bi(p.inertia||p.throwProps),q.allowEventDefault||!s||!1===p.dragClickables&&ae.call(q,s.target)||!l||Y&&(!O||Y!==O)||!1===s.cancelable?F=!1:(F=!0,Ba(s)),Qa(q,"release","onRelease")),pe()&&c.duration(q.tween.duration()),l&&Qa(q,"dragend","onDragEnd"),!0}F&&e&&u&&Ba(e)};return(t=Draggable.get(g))&&t.kill(),e.startDrag=function(e,t){var o,n,i,r;Gi(e||q.pointerEvent,!0),t&&!q.hitTest(e||q.pointerEvent)&&(o=Pa(e||q.pointerEvent),n=Pa(g),i=Mi({x:o.left+o.width/2,y:o.top+o.height/2}),r=Mi({x:n.left+n.width/2,y:n.top+n.height/2}),b-=i.x-r.x,w-=i.y-r.y),q.isDragging||(q.isDragging=z=!0,Qa(q,"dragstart","onDragStart"))},e.drag=ue,e.endDrag=function(e){return fe(e||q.pointerEvent,!0)},e.timeSinceDrag=function(){return q.isDragging?0:(Ye()-ee)/1e3},e.timeSinceClick=function(){return(Ye()-se)/1e3},e.hitTest=function(e,t){return Draggable.hitTest(q.target,e,t)},e.getDirection=function(e,t){var o,n,i,r,a,s,l="velocity"===e&&Ce?e:$(e)&&!W?"element":"start";return"element"===l&&(a=Pa(q.target),s=Pa(e)),o="start"===l?q.x-T:"velocity"===l?Ce.getVelocity(g,V):a.left+a.width/2-(s.left+s.width/2),W?o<0?"counter-clockwise":"clockwise":(t=t||2,n="start"===l?q.y-M:"velocity"===l?Ce.getVelocity(g,Q):a.top+a.height/2-(s.top+s.height/2),r=(i=Math.abs(o/n))<1/t?"":o<0?"left":"right",i<t&&(""!==r&&(r+="-"),r+=n<0?"up":"down"),r)},e.applyBounds=function(e,t){var o,n,i,r,a,s;if(e&&p.bounds!==e)return p.bounds=e,q.update(!0,t);if(vi(!0),yi(),k&&!pe()){if(o=q.x,n=q.y,D<o?o=D:o<C&&(o=C),S<n?n=S:n<E&&(n=E),(q.x!==o||q.y!==n)&&(i=!0,q.x=q.endX=o,W?q.endRotation=o:q.y=q.endY=n,ui(L=!0),q.autoScroll&&!q.isDragging))for(La(g.parentNode),r=g,Ge.scrollTop=null!=ve.pageYOffset?ve.pageYOffset:null!=ce.documentElement.scrollTop?ce.documentElement.scrollTop:ce.body.scrollTop,Ge.scrollLeft=null!=ve.pageXOffset?ve.pageXOffset:null!=ce.documentElement.scrollLeft?ce.documentElement.scrollLeft:ce.body.scrollLeft;r&&!s;)a=(s=Ze(r.parentNode))?Ge:r.parentNode,K&&a.scrollTop>a._gsMaxScrollY&&(a.scrollTop=a._gsMaxScrollY),U&&a.scrollLeft>a._gsMaxScrollX&&(a.scrollLeft=a._gsMaxScrollX),r=a;q.isThrowing&&(i||q.endX>D||q.endX<C||q.endY>S||q.endY<E)&&Bi(p.inertia||p.throwProps,i)}return q},e.update=function(e,t,o){if(t&&q.isPressed){if(W)q.x=q.y=da(parseFloat(le.rotation));else{var n=getGlobalMatrix(g),i=c.apply({x:q.x-T,y:q.y-M}),r=getGlobalMatrix(g.parentNode,!0);r.apply({x:n.e-i.x,y:n.f-i.y},i),q.x=da(q.x-(i.x-r.e)),q.y=da(q.y-(i.y-r.f))}ui(!0),Di()}var a=q.x,s=q.y;return Ci(!t),e?q.applyBounds():(L&&o&&ui(!0),vi(!0)),t&&(ge(q.pointerX,q.pointerY),L&&ui(!0)),q.isPressed&&!t&&(U&&.01<Math.abs(a-q.x)||K&&.01<Math.abs(s-q.y)&&!W)&&Di(),q.autoScroll&&(La(g.parentNode,q.isDragging),te=q.isDragging,ui(!0),Ia(g,Ki),Ha(g,Ki)),q},e.enable=function(e){var t,o,n,i={lazy:!0};if(!1!==p.cursor&&(i.cursor=p.cursor||Se),me.utils.checkPrefix("touchCallout")&&(i.touchCallout="none"),"soft"!==e){for(ta(J,U==K?"none":p.allowNativeTouchScrolling&&g.scrollHeight===g.clientHeight==(g.scrollWidth===g.clientHeight)||p.allowEventDefault?"manipulation":U?"pan-y":"pan-x"),o=J.length;-1<--o;)n=J[o],Ee||za(n,"mousedown",Gi),za(n,"touchstart",Gi),za(n,"click",Li,!0),me.set(n,i),n.getBBox&&n.ownerSVGElement&&U!=K&&me.set(n.ownerSVGElement,{touchAction:p.allowNativeTouchScrolling||p.allowEventDefault?"manipulation":U?"pan-y":"pan-x"}),p.allowContextMenu||za(n,"contextmenu",ti);Wa(J,!1)}return Ha(g,Ki),u=!0,Ce&&"soft"!==e&&Ce.track(f||g,G?"x,y":W?"rotation":"top,left"),g._gsDragID=t=g._gsDragID||"d"+Ie++,He[t]=q,f&&(f.enable(),f.element._gsDragID=t),(p.bounds||W)&&Di(),p.bounds&&q.applyBounds(),q},e.disable=function(e){for(var t,o=q.isDragging,n=J.length;-1<--n;)Ma(J[n],"cursor",null);if("soft"!==e){for(ta(J,null),n=J.length;-1<--n;)t=J[n],Ma(t,"touchCallout",null),Aa(t,"mousedown",Gi),Aa(t,"touchstart",Gi),Aa(t,"click",Li,!0),Aa(t,"contextmenu",ti);Wa(J,!0),y&&(Aa(y,"touchcancel",fe),Aa(y,"touchend",fe),Aa(y,"touchmove",ue)),Aa(ce,"mouseup",fe),Aa(ce,"mousemove",ue)}return Ia(g,Ki),u=!1,Ce&&"soft"!==e&&(Ce.untrack(f||g,G?"x,y":W?"rotation":"top,left"),q.tween&&q.tween.kill()),f&&f.disable(),xa(ui),q.isDragging=q.isPressed=x=!1,o&&Qa(q,"dragend","onDragEnd"),q},e.enabled=function(e,t){return arguments.length?e?q.enable(t):q.disable(t):u},e.kill=function(){return q.isThrowing=!1,q.tween&&q.tween.kill(),q.disable(),me.set(J,{clearProps:"userSelect"}),delete He[g._gsDragID],q},e.revert=function(){this.kill(),this.styles&&this.styles.revert()},~o.indexOf("scroll")&&(f=e.scrollProxy=new $a(g,function _extend(e,t){for(var o in t)o in e||(e[o]=t[o]);return e}({onKill:function onKill(){q.isPressed&&fe(null)}},p)),g.style.overflowY=K&&!Te?"auto":"hidden",g.style.overflowX=U&&!Te?"auto":"hidden",g=f.content),W?n.rotation=1:(U&&(n[V]=1),K&&(n[Q]=1)),le.force3D=!("force3D"in p)||p.force3D,Pe(_assertThisInitialized(e)),e.enable(),e}!function _setDefaults(e,t){for(var o in t)o in e||(e[o]=t[o])}(W.prototype,{pointerX:0,pointerY:0,startX:0,startY:0,deltaX:0,deltaY:0,isDragging:!1,isPressed:!1}),W.zIndex=1e3,W.version="3.14.2",Y()&&me.registerPlugin(W);function sb(){return"undefined"!=typeof window}function tb(){return V||sb()&&(V=window.gsap)&&V.registerPlugin&&V}function ub(e){return"string"==typeof e}function vb(e){return"function"==typeof e}function xb(e){return void 0===e}function Eb(e,t,o){var n=U.createElementNS?U.createElementNS("svg"===e?z:G,e):U.createElement(e);return t&&(ub(t)&&(t=U.querySelector(t)),t.appendChild(n)),"svg"===e&&(n.setAttribute("xmlns",z),n.setAttribute("xmlns:xlink",G)),o&&(n.style.cssText=o),n}function Fb(){U.selection?U.selection.empty():I.getSelection&&I.getSelection().removeAllRanges()}function Hb(e,t){var o=0,n=Math.max(0,e._repeat),i=e._first;for(i||(o=e.duration());i;)o=Math.max(o,999<i.totalDuration()?i.endTime(!1):i._start+i._tDur/i._ts),i=i._next;return!t&&n?o*(n+1)+e._rDelay*n:o}function Jb(e,t,o,n){var i,r,a;return ub(e)&&("="===e.charAt(1)?((i=parseInt(e.charAt(0)+"1",10)*parseFloat(e.substr(2)))<0&&0===n&&(n=100),e=n/100*t.duration()+i):isNaN(e)&&t.labels&&-1!==t.labels[e]?e=t.labels[e]:t===j&&(0<(r=e.indexOf("="))?(i=parseInt(e.charAt(r-1)+"1",10)*parseFloat(e.substr(r+1)),e=e.substr(0,r-1)):i=0,(a=V.getById(e))&&(e=function _globalizeTime(e,t){for(var o=e,n=1<arguments.length?+t:o.rawTime();o;)n=o._start+n/(o._ts||1),o=o.parent;return n}(a,o/100*a.duration())+i))),e=isNaN(e)?o:parseFloat(e),Math.min(100,Math.max(0,e/t.duration()*100))}function Nb(t,e,o,n){var i,r;if("mousedown"!==e&&"mouseup"!==e||(t.style.cursor="pointer"),"mousedown"===e&&(r=xb(t.onpointerdown)?xb(t.ontouchstart)?null:"touchstart":"pointerdown"))return i=function handler(e){"select"!==e.target.nodeName.toLowerCase()&&e.type===r?(e.stopPropagation(),pe&&(e.preventDefault(),o.call(t,e))):e.type!==r&&o.call(t,e),pe=!0},t.addEventListener(r,i,n),void("pointerdown"!==r&&t.addEventListener(e,i,n));t.addEventListener(e,o,n)}function Ob(e,t,o){e.removeEventListener(t,o),(t="mousedown"!==t?null:xb(e.onpointerdown)?xb(e.ontouchstart)?null:"touchstart":"pointerdown")&&e.removeEventListener(t,o)}function Pb(e,t,o,n){var i,r=e.options,a=r.length;for(t+="";-1<--a;)if(r[a].innerHTML===t||r[a].value===t)return e.selectedIndex=a,o.innerHTML=r[a].innerHTML,r[a];n&&((i=Eb("option",e)).setAttribute("value",t),i.innerHTML=o.innerHTML=ub(n)?n:t,e.selectedIndex=r.length-1)}function Qb(e,t,o){var n=e.options,i=Math.min(n.length-1,Math.max(0,e.selectedIndex+t));return e.selectedIndex=i,o&&(o.innerHTML=n[i].innerHTML),n[i].value}function Rb(){var e,t,o,n=F._first;if(ee){for(e=j._dur;n;)t=n._next,o=n._targets&&n._targets[0],vb(o)&&o===n.vars.onComplete&&!n._dur||o&&o._gsIgnore||j.add(n,n._start-n._delay),n=t;return e!==j.duration()}}function Ub(e){return V.getById(e)||oe.getById(e)||e===j.vars.id&&j}function Vb(e){V=e||tb(),Q||V&&sb()&&(U=document,K=U.documentElement,I=window,ie=V.core.context||function(){},V.registerPlugin(W),(F=V.globalTimeline)._sort=!0,F.autoRemoveChildren=!1,q=V.core.Animation,(oe=V.timeline({data:"indy",autoRemoveChildren:!0,smoothChildTiming:!0})).kill(),oe._dp=0,oe.to({},{duration:1e12}),j=V.timeline({data:"root",id:"Global Timeline",autoRemoveChildren:!1,smoothChildTiming:!0,parent:oe},0),J=V.to(j,{duration:1,time:1,ease:"none",data:"root",id:"_rootTween",paused:!0,immediateRender:!1,parent:oe},0),F.killTweensOf=function(e,t,o){j.killTweensOf(e,t,o),j.killTweensOf.call(F,e,t,o)},oe._start=V.ticker.time,V.ticker.add(function(e){return oe.render(e-oe._start)}),F._start+=F._time,j._start=F._time=F._tTime=0,(ne=function _delayedCall(e,t,o,n){return V.to(t,{delay:e,duration:0,onComplete:t,onReverseComplete:t,onCompleteParams:o,onReverseCompleteParams:o,callbackScope:n,parent:oe},oe._time)})(.01,function(){return ee?ee.update():Rb()}),ne(2,function(){var e,t,o;if(!ee)for(Rb(),e=j._first,o=j._start;e;)t=e._next,e._tDur!==e._tTime||!e._dur&&1!==e.progress()?F.add(e,e._start-e._delay+o):e.kill(),e=t;2<ue.globalRecordingTime?ne(ue.globalRecordingTime-2,function(){ee&&ee.update(),F.autoRemoveChildren=!0}):F.autoRemoveChildren=!0,ae=!1}),Q=1)}function Wb(e,t){t.globalSync||e.parent===F||F.add(e,F.time())}var V,Q,U,K,I,j,q,J,ee,te,F,oe,ne,ie,re,ae=!0,se=0,z="http://www.w3.org/2000/svg",G="http://www.w3.org/1999/xhtml",le=0,de={},ce=function(){try{return sessionStorage.setItem("gsTest","1"),sessionStorage.removeItem("gsTest"),!0}catch(e){return!1}}(),pe=!0,ue=function GSDevTools(r){Q||(Vb(),V||console.warn("Please gsap.registerPlugin(GSDevTools)")),this.vars=r=r||{},r.animation&&(GSDevTools.getByAnimation(r.animation)||{kill:function kill(){return 0}}).kill(),r.id=r.id||(ub(r.animation)?r.animation:le++),de[r.id+""]=this,"globalSync"in r||(r.globalSync=!r.animation);function Zn(e){return n.querySelector(e)}function $n(e,t){return!1!==r.persist&&ce&&sessionStorage.setItem("gs-dev-"+e+r.id,t),t}function _n(e){var t;if(!1!==r.persist&&ce)return t=sessionStorage.getItem("gs-dev-"+e+r.id),"animation"===e?t:"loop"===e?"true"===t:parseFloat(t)}function Ho(d,c,p){return function(e){var t,o=y.getBoundingClientRect(),n=d.getBoundingClientRect(),i=n.width*c,r=V.getProperty(d,"x"),a=o.left-n.left-i+r,s=o.right-n.right+(n.width-i)+r,l=a;p&&(d!==M&&(t=M.getBoundingClientRect()).left&&(a+=t.left+t.width-o.left),d!==k&&(t=k.getBoundingClientRect()).left&&(s-=o.left+o.width-t.left)),m=P,this.applyBounds({minX:a,maxX:s}),u=v.duration()/o.width,g=-l*u,h?v.pause():v.pause(g+u*this.x),this.target===x&&(this.activated&&(this.allowEventDefault=!1),this.activated=!0),f=!0}}function Jo(){D=0,C=100,M.style.left="0%",k.style.left="100%",$n("in",D),$n("out",C),O(!0)}function No(e){if(!X.isPressed){var t=e.target.getBoundingClientRect(),o=((e.changedTouches?e.changedTouches[0]:e).clientX-t.left)/t.width*100;if(o<D)return D=o=Math.max(0,o),M.style.left=D+"%",void B.startDrag(e);if(C<o)return C=o=Math.min(100,o),k.style.left=C+"%",void Y.startDrag(e);v.progress(o/100).pause(),O(!0),X.startDrag(e)}}function Ro(){if(!X.isPressed){Wb(v,r);var e=v._targets&&v._targets[0];e===i&&e.seek(s+(l-s)*D/100),v.progress(D/100,!0),P||v.resume()}}function So(e){if($n("loop",c=e),c){if(N.play(),v.progress()>=C/100){var t=v._targets&&v._targets[0];t===i&&t.seek(s+(l-s)*D/100),i._repeat&&!D&&100===C?v.totalProgress(0,!0):v.progress(D/100,!0),H()}}else N.reverse()}function To(){return So(!c)}function Uo(){var e,t,o=function _getChildrenOf(e,t){for(var o=[],n=0,i=V.core.Tween,r=e._first;r;)r instanceof i?r.vars.id&&(o[n++]=r):(t&&r.vars.id&&(o[n++]=r),n=(o=o.concat(_getChildrenOf(r,t))).length),r=r._next;return o}(a&&!r.globalSync?a:j,!0),n=S.children,i=0;for(a&&!r.globalSync?o.unshift(a):r.hideGlobalTimeline||o.unshift(j),t=0;t<o.length;t++)(e=n[t]||Eb("option",S)).animation=o[t],i=t&&o[t].vars.id===o[t-1].vars.id?i+1:0,e.setAttribute("value",e.innerHTML=o[t].vars.id+(i?" ["+i+"]":o[t+1]&&o[t+1].vars.id===o[t].vars.id?" [0]":""));for(;t<n.length;t++)S.removeChild(n[t])}function Vo(e){var t,o,n=parseFloat(R.options[R.selectedIndex].value)||1;if(!arguments.length)return i;if(ub(e)&&(e=Ub(e)),e instanceof q||console.warn("GSDevTools error: invalid animation."),e.scrollTrigger&&console.warn("GSDevTools can't work with ScrollTrigger-based animations; either the scrollbar -OR- the GSDevTools scrubber can control the animation."),e!==i){if(i&&(i._inProgress=D,i._outProgress=C),i=e,v&&(n=v.timeScale(),v._targets&&v._targets[0]===a&&(a.resume(),v.kill())),D=i._inProgress||0,C=i._outProgress||100,M.style.left=D+"%",k.style.left=C+"%",d&&($n("animation",i.vars.id),$n("in",D),$n("out",C)),s=0,o=r.maxDuration||Math.min(1e3,Hb(i)),i===j||r.globalSync){if(Rb(),v=J,ee&&ee!==p&&console.warn("Error: GSDevTools can only have one instance that's globally synchronized."),ee=p,i!==j)for(99999999<(l=(t=i).totalDuration())&&(l=t.duration());t.parent;)s=s/t._ts+t._start,l=l/t._ts+t._start,t=t.parent;else l=j.duration();o<l-s&&(l=s+o),j.pause(s),J.vars.time=l,J.invalidate(),J.duration(l-s).timeScale(n),P?J.progress(1,!0).pause(0,!0):ne(.01,function(){J.resume().progress(D/100),P&&H()})}else{if(ee===p&&(ee=null),s=Math.min(D*i.duration(),i.time()),i!==a&&a){for(99999999<(l=(t=i).totalDuration())&&(l=t.duration());t.parent&&t!==a;)s=s/(t._ts||t._rts)+t._start,l=l/(t._ts||t._rts)+t._start,t=t.parent;o<l-s&&(l=s+o),a.pause(s),v=V.to(a,{duration:l-s,time:l,ease:"none",data:"root",parent:oe},oe._time)}else v=i,!c&&v._repeat&&So(!0);v.timeScale(n),J.pause(),j.resume(),v.seek(0)}_.innerHTML=v.duration().toFixed(2),Pb(S,i.vars.id,E)}}function Xo(e){Vo(S.options[S.selectedIndex].animation),e.target&&e.target.blur&&e.target.blur(),P&&H()}function Yo(){var e,t=parseFloat(R.options[R.selectedIndex].value)||1;v.timeScale(t),$n("timeScale",t),P||(v.progress()>=C/100?((e=v._targets&&v._targets[0])===i&&e.seek(s+(l-s)*D/100),v.progress(D/100,!0).pause()):v.pause(),ne(.01,function(){return v.resume()})),A.innerHTML=t+"x",R.blur&&R.blur()}function _o(e){W.hitTest(e,n)||X.isDragging||B.isDragging||Y.isDragging||Z.restart(!0)}function ap(){G||(z.play(),Z.pause(),G=!0)}function bp(){Z.pause(),G&&(z.reverse(),G=!1)}function ep(e){ae&&!se&&(se=j._start),d=!e,(a=function _parseAnimation(e){return e instanceof q?e:e?V.getById(e):null}(r.animation))&&!a.vars.id&&(a.vars.id="[no id]"),Rb(),Uo();var t=Ub(_n("animation"));t&&(t._inProgress=_n("in")||0,t._outProgress=_n("out")||100),r.paused&&I(),i=null,Vo(a||t||j);var o=r.timeScale||_n("timeScale"),n=t===i;o&&(Pb(R,o,A,o+"x"),v.timeScale(o)),100===(D=("inTime"in r?Jb(r.inTime,i,0,0):n?t._inProgress:0)||0)&&!r.animation&&t&&(Vo(j),D=Jb(r.inTime,i,0,0)||0),D&&(M.style.left=D+"%",M.style.display=k.style.display="block"),(C=("outTime"in r?Jb(r.outTime,i,100,D):n?t._outProgress:0)||100)<D&&(C=100),100!==C&&(k.style.left=C+"%",M.style.display=k.style.display="block"),(c="loop"in r?r.loop:_n("loop"))&&So(!0),r.paused&&v.progress(D/100,!0).pause(),ae&&i===j&&se&&r.globalSync&&!P&&v.time(-se,!0),O(!0)}var u,g,f,h,m,i,v,a,s,l,d,e,c,p=this,n=function _createRootElement(e,t,o){re||(Eb("style",K).innerHTML=".gs-dev-tools{height:51px;bottom:0;left:0;right:0;display:block;position:fixed;overflow:visible;padding:0;font-size:15px;font-family:-apple-system,BlinkMacSystemFont,avenir next,sans-serif;color:#bbbaa6}.gs-dev-tools *{box-sizing:content-box;visibility:visible}.gs-dev-tools .gs-top{position:relative;z-index:499}.gs-dev-tools .gs-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;background-color:#0e100f;height:42px;position:relative}.gs-dev-tools .timeline{position:relative;height:8px;margin-left:15px;margin-right:15px;overflow:visible}.gs-dev-tools .progress-bar,.gs-dev-tools .timeline-track{height:8px;width:100%;position:absolute;top:0;left:0;}.gs-dev-tools .timeline-track{background-color:#222}.gs-dev-tools .progress-bar{background:linear-gradient(114.41deg,#0ae448 20.74%,#abff84 65.5%);height:8px;top:0;width:0;pointer-events:none}.gs-dev-tools .seek-bar{width:100%;position:absolute;height:24px;top:-12px;left:0;background-color:transparent}.gs-dev-tools .in-point,.gs-dev-tools .out-point{width:15px;height:26px;position:absolute;top:-18px}.gs-dev-tools .in-point-shape{fill:#0ae448;transform:translateX(1px)}.gs-dev-tools .out-point-shape{fill:#ff8709}.gs-dev-tools .in-point{transform:translateX(-100%)}.gs-dev-tools .out-point{left:100%}.gs-dev-tools .playhead{position:absolute;top:-5px;transform:translate(-50%,0);left:0;border-radius:50%;width:16px;height:16px;background:linear-gradient(114.41deg,#0ae448 20.74%,#abff84 65.5%)}.gs-dev-tools .gs-btn-white{fill:#fffce1}.gs-dev-tools .pause{opacity:0}.gs-dev-tools .select-animation{vertical-align:middle;position:relative;padding:6px 10px}.gs-dev-tools .select-animation-container{flex-grow:4;width:40%}.gs-dev-tools .select-arrow{display:inline-block;width:12px;height:7px;margin:0 7px;transform:translate(0,-2px)}.gs-dev-tools .select-arrow-shape{stroke:currentcolor;stroke-width:2px;fill:none}.gs-dev-tools .rewind{height:14px}.gs-dev-tools .ease-border,.gs-dev-tools .rewind-path{fill:currentColor}.gs-dev-tools .play-pause{width:18px;height:18px}.gs-dev-tools .ease{width:20px;height:20px;min-width:30px;display:none}.gs-dev-tools .ease-path{fill:none;stroke:#abff84;stroke-width:2px}.gs-dev-tools .time-scale{text-align:center;min-width:30px}.gs-dev-tools .loop{width:15px}.gs-dev-tools label span{text-decoration:none}.gs-dev-tools button:focus,.gs-dev-tools select:focus{outline:0}.gs-dev-tools label{position:relative;cursor:pointer}.gs-dev-tools label.locked{text-decoration:none;cursor:auto}.gs-dev-tools label input,.gs-dev-tools label select{position:absolute;left:0;top:0;z-index:1;font:inherit;font-size:inherit;line-height:inherit;height:100%;width:100%;color:#000!important;opacity:0;background:0 0;border:none;padding:0;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.gs-dev-tools label input+.display{position:relative;z-index:2}.gs-dev-tools .gs-bottom-right{vertical-align:middle;display:flex;align-items:center;flex-grow:4;width:40%;justify-content:flex-end}.gs-dev-tools .time-container{margin:0 5px}.gs-dev-tools .logo{width:32px;height:32px;position:relative;top:2px;margin:0 12px}.gs-dev-tools .gs-hit-area{background-color:transparent;width:100%;height:100%;top:0;position:absolute}.gs-dev-tools.minimal{border-top: 1px #222222 solid;height:auto;display:flex;align-items:stretch}.gs-dev-tools.minimal .gs-top{order:2;flex-grow:4;background-color:#0e100f}.gs-dev-tools.minimal .gs-bottom{background-color:#0e100f;border-top:none}.gs-dev-tools.minimal .timeline{top:50%;transform:translate(0,-50%)}.gs-dev-tools.minimal .gs-bottom-right,.gs-dev-tools.minimal .in-point,.gs-dev-tools.minimal .out-point,.gs-dev-tools.minimal .rewind,.gs-dev-tools.minimal .select-animation-container{display:none}.gs-dev-tools.minimal .play-pause{width:20px;height:20px;padding:4px 6px;margin-left:14px}.gs-dev-tools.minimal .time-scale{min-width:26px}.gs-dev-tools.minimal .loop{width:18px;min-width:18px;display:none}@media only screen and (max-width:600px){.gs-dev-tools{height:auto;display:flex;align-items:stretch}.gs-dev-tools .gs-top{order:2;flex-grow:4;background-color:#0e100f;height:42px}.gs-dev-tools .gs-bottom{background-color:#0e100f;border-top:none}.gs-dev-tools .timeline{top:50%;transform:translate(0,-50%)}.gs-dev-tools .gs-bottom-right,.gs-dev-tools .in-point,.gs-dev-tools .out-point,.gs-dev-tools .rewind,.gs-dev-tools .select-animation-container{display:none}.gs-dev-tools .play-pause{width:18px;height:18px;padding:4px 6px;margin-left:14px