alrdy-animate
Version:
A library to handle animations on scroll with GSAP integration.
2 lines • 55.3 kB
JavaScript
/*! For license information please see gsap-draggable.8854a54fdc9cbfdf9eb0.js.LICENSE.txt */
"use strict";(this.webpackChunkAlrdyAnimate=this.webpackChunkAlrdyAnimate||[]).push([[704],{280(e,t,n){function r(e,t){const n=new Set;let r=0;function o(n,r){let o;return n=e.utils.toArray(n),r=r||{},e.context(()=>{let i,a,s,l=r.onChange,c=0,u=e.timeline({repeat:r.repeat,onUpdate:l&&function(){let e=u.closestIndex();c!==e&&(c=e,l(n[e],e))},paused:r.paused,defaults:{ease:"none"},onReverseComplete:()=>u.totalTime(u.rawTime()+100*u.duration())}),d=n.length,p=n[0].offsetTop,f=[],h=[],g=[],v=[],m=0,y=r.center,x=100*(r.speed||1),w=!1===r.snap?e=>e:e.utils.snap(r.snap||1),b=0,T=!0===y?n[0].parentNode:e.utils.toArray(y)[0]||n[0].parentNode,E=()=>{let t,o=T.getBoundingClientRect();p=n[0].offsetTop,n.forEach((n,r)=>{h[r]=parseFloat(e.getProperty(n,"height","px")),v[r]=w(parseFloat(e.getProperty(n,"y","px"))/h[r]*100+e.getProperty(n,"yPercent")),t=n.getBoundingClientRect(),g[r]=t.top-(r?o.bottom:o.top),o=t}),e.set(n,{yPercent:e=>v[e]}),i=n[d-1].offsetTop+v[d-1]/100*h[d-1]-p+n[d-1].offsetHeight*e.getProperty(n[d-1],"scaleY")+(parseFloat(r.paddingBottom)||0)},k=()=>{b=y?u.duration()*(T.offsetHeight/2)/i:0,y&&f.forEach((e,t)=>{f[t]=a(u.labels["label"+t]+u.duration()*h[t]/2/i-b)})},C=(e,t,n)=>{let r,o=e.length,i=1e10,a=0;for(;o--;)r=Math.abs(e[o]-t),r>n/2&&(r=n-r),r<i&&(i=r,a=o);return a},P=()=>{let t,r,o,s,l;for(u.clear(),t=0;t<d;t++)r=n[t],o=v[t]/100*h[t],s=r.offsetTop+o-p+g[0],l=s+h[t]*e.getProperty(r,"scaleY"),u.to(r,{yPercent:w((o-l)/h[t]*100),duration:l/x},0).fromTo(r,{yPercent:w((o-l+i)/h[t]*100)},{yPercent:v[t],duration:(o-l+i-o)/x,immediateRender:!1},l/x).add("label"+t,s/x),f[t]=s/x;a=e.utils.wrap(0,u.duration())},A=()=>{let{enterAnimation:e,leaveAnimation:t}=r,o=u.duration()/n.length;n.forEach((n,r)=>{let i=e&&e(n,o,r),s=i&&u.duration()-a(f[r]-Math.min(o,i.duration()))<o-.05;i&&u.add(i,s?0:a(f[r]-i.duration())),i=t&&t(n,o,r),s=f[r]===u.duration(),i&&i.duration()>o&&i.duration(o),i&&u.add(i,s?0:f[r])})};function M(t,n){n=n||{},Math.abs(t-m)>d/2&&(t+=t>m?-d:d);let r=e.utils.wrap(0,d,t),o=f[r];return o>u.time()!=t>m&&(o+=u.duration()*(t>m?1:-1)),(o<0||o>u.duration())&&(n.modifiers={time:a}),m=r,n.overwrite=!0,e.killTweensOf(s),0===n.duration?u.time(a(o)):u.tweenTo(o,n)}if(e.set(n,{y:0}),E(),P(),k(),A(),u.elements=n,u.next=e=>M(m+1,e),u.previous=e=>M(m-1,e),u.current=()=>m,u.toIndex=(e,t)=>M(e,t),u.closestIndex=e=>{let t=C(f,u.time(),u.duration());return e&&(m=t),t},u.times=f,u.progress(1,!0).progress(0,!0),r.reversed&&(u.vars.onReverseComplete(),u.reverse()),r.draggable&&"function"==typeof t){s=document.createElement("div");let o,l,c,d,p,h,g,v=e.utils.wrap(0,1),y=()=>u.progress(v(l+(c.startY-c.y)*o)),x=()=>u.closestIndex(!0);c=t.create(s,{trigger:n[0].parentNode,type:"y",onPressInit(){let t=this.y;e.killTweensOf(u),d=!u.paused(),u.pause(),l=u.progress(),(e=>{let t=u.progress();u.progress(0,!0),E(),e&&P(),k(),A(),e&&u.draggable?u.time(f[m],!0):u.progress(t,!0)})(),o=1/i,h=l/-o-t,e.set(s,{y:l/-o})},onDrag:y,onThrowUpdate:y,overshootTolerance:0,inertia:!0,throwResistance:2e3,maxDuration:3,snap(e){if(Math.abs(l/-o-this.y)<10)return p+h;let t=-e*o*u.duration(),n=a(t),r=f[C(f,n,u.duration())]-n;return Math.abs(r)>u.duration()/2&&(r+=r<0?u.duration():-u.duration()),p=(t+r)/u.duration()/-o,p},onRelease(){x(),c.isThrowing&&(g=!0),r.reversed&&u.reversed(!0)},onThrowComplete:()=>{x(),d&&u.play(),r.reversed&&u.reversed(!0)}})[0],u.draggable=c}u.closestIndex(!0),r.center&&M(0,{duration:0}),c=m,l&&l(n[m],m),o=u}),o}function i(i,a,s,l,c){const u=e.utils.toArray("[aa-slider-item]",i);if(0===u.length)return void console.warn("No items found with [aa-slider-item] attribute.");const d=r++,p=function(e){return{isLoop:e.includes("loop"),isAutoplay:e.includes("snap")||e.includes("autoplay"),isVertical:e.includes("vertical"),isReverse:e.includes("reverse"),isCenter:e.includes("center"),isDraggable:e.includes("draggable"),isHover:e.includes("hover"),originalType:e}}(a),f={isHovering:!1},h=function(e,t,n){const r={speed:n,repeat:-1,center:!1,paused:!0,snap:!0},o=e.querySelector("[aa-slider-item]"),i=parseFloat(window.getComputedStyle(o.parentElement).gap)||0;return t.isVertical?r.paddingBottom=i:r.paddingRight=i,t.isDraggable&&(r.draggable=!0),t.isLoop&&(r.paused=!1),t.isReverse&&(r.reversed=!0),t.isCenter&&(r.center=!0),r}(i,p,s);!function(e,t,n,r){const o=t.length,i=e.querySelector("[aa-slider-next]"),a=e.querySelector("[aa-slider-prev]"),s=e.querySelector("[aa-slider-current]"),l=e.querySelector("[aa-slider-total]"),c=e.id?[...e.querySelectorAll("[aa-slider-button]"),...document.querySelectorAll(`[aa-slider-button][aa-slider-target="${e.id}"]`)]:e.querySelectorAll("[aa-slider-button]"),u=e.id||`slider-${r}`;e.setAttribute("role","region"),e.setAttribute("aria-roledescription","carousel"),t.forEach((e,t)=>{e.classList.contains("w-dyn-item")||e.setAttribute("role","group"),e.setAttribute("aria-roledescription","slide"),e.setAttribute("aria-label",`Slide ${t+1} of ${o}`),e.setAttribute("id",`${u}-slide-${t}`)}),i&&(i.setAttribute("aria-label","Next slide"),i.setAttribute("role","button")),a&&(a.setAttribute("aria-label","Previous slide"),a.setAttribute("role","button")),c.length>0&&c.forEach((e,t)=>{e.setAttribute("aria-label",`Go to slide ${t+1}`)}),l&&(l.textContent=o<10?`0${o}`:o),n.onChange=(e,n)=>{const r=(n%o+o)%o;t.forEach((e,t)=>{e.classList.toggle("is-active",t===r),e.setAttribute("aria-hidden",t!==r?"true":"false")}),c.length>0&&c.forEach((e,t)=>{e.classList.toggle("is-active",t===r),t===r?e.setAttribute("aria-current","true"):e.removeAttribute("aria-current")}),s&&(s.textContent=r+1<10?`0${r+1}`:r+1)},e._sliderNav={nextButton:i,prevButton:a,currentElement:s,totalElement:l,slideButtons:c}}(i,u,h,d);const g=p.isVertical?o(u,h):function(n,r){let o;return n=e.utils.toArray(n),r=r||{},e.context(()=>{let i,a,s,l=r.onChange,c=0,u=e.timeline({repeat:r.repeat,onUpdate:l&&function(){let e=u.closestIndex();c!==e&&(c=e,l(n[e],e))},paused:r.paused,defaults:{ease:"none"},onReverseComplete:()=>u.totalTime(u.rawTime()+100*u.duration())}),d=n.length,p=n[0].offsetLeft,f=[],h=[],g=[],v=[],m=0,y=!1,x=r.center,w=100*(r.speed||1),b=!1===r.snap?e=>e:e.utils.snap(r.snap||1),T=0,E=!0===x?n[0].parentNode:e.utils.toArray(x)[0]||n[0].parentNode,k=()=>{let t,o=E.getBoundingClientRect();n.forEach((n,r)=>{h[r]=parseFloat(e.getProperty(n,"width","px")),v[r]=b(parseFloat(e.getProperty(n,"x","px"))/h[r]*100+e.getProperty(n,"xPercent")),t=n.getBoundingClientRect(),g[r]=t.left-(r?o.right:o.left),o=t}),e.set(n,{xPercent:e=>v[e]}),i=n[d-1].offsetLeft+v[d-1]/100*h[d-1]-p+n[d-1].offsetWidth*e.getProperty(n[d-1],"scaleX")+(parseFloat(r.paddingRight)||0)},C=()=>{T=x?u.duration()*(E.offsetWidth/2)/i:0,x&&f.forEach((e,t)=>{f[t]=a(u.labels["label"+t]+u.duration()*h[t]/2/i-T)})},P=(e,t,n)=>{let r,o=e.length,i=1e10,a=0;for(;o--;)r=Math.abs(e[o]-t),r>n/2&&(r=n-r),r<i&&(i=r,a=o);return a},A=()=>{let t,r,o,s,l;for(u.clear(),t=0;t<d;t++)r=n[t],o=v[t]/100*h[t],s=r.offsetLeft+o-p+g[0],l=s+h[t]*e.getProperty(r,"scaleX"),u.to(r,{xPercent:b((o-l)/h[t]*100),duration:l/w},0).fromTo(r,{xPercent:b((o-l+i)/h[t]*100)},{xPercent:v[t],duration:(o-l+i-o)/w,immediateRender:!1},l/w).add("label"+t,s/w),f[t]=s/w;a=e.utils.wrap(0,u.duration())},M=e=>{let t=u.progress();u.progress(0,!0),k(),e&&A(),C(),e&&u.draggable?u.time(f[m],!0):u.progress(t,!0)};function _(t,n){n=n||{},Math.abs(t-m)>d/2&&(t+=t>m?-d:d);let r=e.utils.wrap(0,d,t),o=f[r];return o>u.time()!=t>m&&t!==m&&(o+=u.duration()*(t>m?1:-1)),(o<0||o>u.duration())&&(n.modifiers={time:a}),m=r,n.overwrite=!0,e.killTweensOf(s),0===n.duration?u.time(a(o)):u.tweenTo(o,n)}if(e.set(n,{x:0}),k(),A(),C(),u.toIndex=(e,t)=>_(e,t),u.closestIndex=e=>{let t=P(f,u.time(),u.duration());return e&&(m=t,y=!1),t},u.current=()=>y?u.closestIndex(!0):m,u.next=e=>_(u.current()+1,e),u.previous=e=>_(u.current()-1,e),u.times=f,u.progress(1,!0).progress(0,!0),r.reversed&&(u.vars.onReverseComplete(),u.reverse()),r.draggable&&"function"==typeof t){s=document.createElement("div");let o,l,c,d,p,h,g,v,m=e.utils.wrap(0,1),x=!1,w=()=>u.progress(m(l+(c.startX-c.x)*o)),b=()=>u.closestIndex(!0);c=t.create(s,{trigger:n[0].parentNode,type:"x",onPressInit(){g=this.pointerY,v=this.pointerX;let t=this.x;e.killTweensOf(u),h=!u.paused(),u.pause(),l=u.progress(),M(),o=1/i,p=l/-o-t,e.set(s,{x:l/-o})},onDrag:w,onThrowUpdate:w,overshootTolerance:0,inertia:!0,maxDuration:1.5,minDuration:.3,snap(e){if(Math.abs(l/-o-this.x)<10)return d+p;let t=-e*o*u.duration(),n=a(t),r=f[P(f,n,u.duration())]-n;return Math.abs(r)>u.duration()/2&&(r+=r<0?u.duration():-u.duration()),d=(t+r)/u.duration()/-o,d},onRelease(){b(),c.isThrowing&&(y=!0),r.reversed&&u.reversed(!0)},onThrowComplete:()=>{b(),h&&u.play(),r.reversed&&u.reversed(!0)}})[0];const T=n[0].parentNode;let E=0,k=0;const C=e=>{E=e.touches[0].clientY,k=e.touches[0].clientX},A=e=>{x||(Math.abs(e.touches[0].clientY-E)>Math.abs(e.touches[0].clientX-k)?c.disable():x=!0)},_=()=>{x||c.enable(),x=!1};T.addEventListener("touchstart",C,{passive:!1}),T.addEventListener("touchmove",A,{passive:!1}),T.addEventListener("touchend",_),u.touchCleanup=()=>{T.removeEventListener("touchstart",C),T.removeEventListener("touchmove",A),T.removeEventListener("touchend",_)},u.draggable=c}u.closestIndex(!0),r.center&&(_(0,{duration:0}),M(!0)),c=m,l&&l(n[m],m),o=u}),o}(u,h);return i._slider=g,n.add(i),function(t,n,r,o,i,a,s,l){if(t._sliderNav){const{nextButton:n,prevButton:a,slideButtons:c}=t._sliderNav,u=(t,n=null)=>{null!==n&&n===r.current()||(r.stopAutoplay&&r.stopAutoplay(),null!==n?r.toIndex(n,{ease:i,duration:o}):r[t]({ease:i,duration:o}),e.delayedCall(.1,()=>{s.isLoop?e.delayedCall(1,()=>{r.resume()}):s.isAutoplay&&(l.isHovering||r.startAutoplay())}))};n&&n.addEventListener("click",()=>u("next")),a&&a.addEventListener("click",()=>u("previous")),c?.length>0&&c.forEach((e,t)=>{e.addEventListener("click",()=>{u(null,t)})})}s.isLoop||window.matchMedia("(hover: none)").matches||n.forEach((n,a)=>{n.addEventListener("click",n=>{const l=r.current();a!==l&&(r.stopAutoplay&&r.stopAutoplay(),r.toIndex(a,{ease:i,duration:o}),e.delayedCall(.1,()=>{s.isAutoplay&&(t.matches(":hover")&&!window.matchMedia("(hover: none)").matches||r.startAutoplay())}))})})}(i,u,g,s,l,0,p,f),p.isAutoplay&&function(t,n,r,o,i,a,s){let l,c=[],u=!1;const d=t.querySelectorAll("[aa-slider-progress]"),p=t=>{c.forEach(({element:n,property:r,ease:o,index:i})=>{e.killTweensOf(n),i===t?e.fromTo(n,{[r]:"0%"},{[r]:"100%",duration:a,ease:o,overwrite:!0}):e.set(n,{[r]:"0%"})})},f=()=>{c.forEach(({element:t,property:n})=>{e.set(t,{[n]:"0%"})})},h=()=>{if(!l){const t=()=>{const s=r.isReverse?"previous":"next";n[s]({duration:o,ease:i}),e.delayedCall(o/2,()=>{const e=n.current();p(e)}),l=e.delayedCall(o+a,t)},s=n.current();p(s),l=e.delayedCall(a,t)}},g=()=>{l&&(l.kill(),l=null,c.forEach(({element:t})=>{e.killTweensOf(t)}),f(),u=!1)},v=()=>{l&&(l.pause(),c.forEach(({element:t})=>{e.getTweensOf(t).forEach(e=>e.pause())}),u=!0)},m=()=>{l&&u&&(l.resume(),c.forEach(({element:t})=>{e.getTweensOf(t).forEach(e=>e.resume())}),u=!1)};if(c=[],d.forEach((t,n)=>{const r=t.getAttribute("aa-slider-progress")||"width",o=t.getAttribute("aa-ease")||i,a="width"===r.toLowerCase()?"width":"height";e.set(t,{[a]:"0%"}),c.push({element:t,property:a,ease:o,index:n,animation:null})}),n.startAutoplay=h,n.stopAutoplay=g,n.pauseAutoplay=v,n.resumeAutoplay=m,n.updateProgressBars=p,n.resetAllProgressBars=f,!window.matchMedia("(hover: none)").matches&&r.isHover){const e=()=>{s.isHovering=!0,l&&!l.paused()&&v()},o=()=>{s.isHovering=!1,u?m():l||!r.isAutoplay||n._isThrowing||h()};t.addEventListener("mouseenter",e),t.addEventListener("mouseleave",o),n._removeHoverListeners=()=>{t.removeEventListener("mouseenter",e),t.removeEventListener("mouseleave",o)}}n.scrollTrigger=ScrollTrigger.create({trigger:t,start:"top bottom",end:"bottom top",onEnter:h,onLeave:g,onEnterBack:h,onLeaveBack:g}),n.pause()}(i,g,p,s,l,c,f),p.isDraggable&&function(e,t,n,r){const o={onPressInit:t.draggable.vars.onPressInit,onRelease:t.draggable.vars.onRelease,onThrowComplete:t.draggable.vars.onThrowComplete};if(n.isDraggable){const e={onPressInit(){o.onPressInit&&o.onPressInit.call(this)},onDragStart(){t.pause(),t._isThrowing=!0,t.stopAutoplay&&t.stopAutoplay()},onDragEnd(){this.tween&&this.tween.isActive()&&(t._isThrowing=!0)},onThrowComplete(){o.onThrowComplete&&o.onThrowComplete.call(this),t._isThrowing=!1,t.startAutoplay&&n.isAutoplay?r.isHovering||t.startAutoplay():n.isLoop&&t.play()}};t.draggable.vars={...t.draggable.vars,...e},t.draggable.enable()}}(0,g,p,f),p.isLoop&&(g.scrollTrigger=ScrollTrigger.create({trigger:i,start:"top bottom",end:"bottom top",onEnter:()=>g.play(),onLeave:()=>g.pause(),onEnterBack:()=>g.play(),onLeaveBack:()=>g.pause()})),g}return{slider:(e,t,n,r,o)=>i(e,t,n,r,o),cleanupSliders:function(){n.forEach(t=>{if(t._slider){t._slider.stopAutoplay&&t._slider.stopAutoplay(),t._slider._removeHoverListeners&&t._slider._removeHoverListeners(),t._slider.draggable&&t._slider.draggable.kill(),t._slider.scrollTrigger&&t._slider.scrollTrigger.kill();const n=t.querySelectorAll("[aa-slider-item]"),r=t.querySelectorAll("[aa-slider-button] [aa-slider-progress]");if(n.length>0&&(e.killTweensOf(n),e.set(n,{clearProps:"all"}),n.forEach(e=>e.classList.remove("active"))),r.length>0&&(e.killTweensOf(r),e.set(r,{clearProps:"all"})),t._slider.moveToNext&&e.killTweensOf(t._slider.moveToNext),t._slider.kill(),t._sliderNav){const{nextButton:e,prevButton:n}=t._sliderNav;e&&e.replaceWith(e.cloneNode(!0)),n&&n.replaceWith(n.cloneNode(!0)),t._sliderNav=null}t._slider&&"function"==typeof t._slider.touchCleanup&&t._slider.touchCleanup(),t._slider=null}}),n.clear()}}}n.r(t),n.d(t,{createSliderAnimations:()=>r})},929(e,t,n){n.d(t,{Draggable:()=>Ae});var r=n(335);function o(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}var i,a,s,l,c,u,d,p,f,h,g,v,m,y,x,w,b,T,E,k,C,P,A=0,M=function(){return"undefined"!=typeof window},_=function(){return i||M()&&(i=window.gsap)&&i.registerPlugin&&i},L=function(e){return"function"==typeof e},S=function(e){return"object"==typeof e},N=function(e){return void 0===e},D=function(){return!1},X="transform",Y="transformOrigin",R=function(e){return Math.round(1e4*e)/1e4},O=Array.isArray,B=function(e,t){var n=s.createElementNS?s.createElementNS((t||"http://www.w3.org/1999/xhtml").replace(/^https/,"http"),e):s.createElement(e);return n.style?n:s.createElement(e)},I=180/Math.PI,F=1e20,H=new r.cA,W=Date.now||function(){return(new Date).getTime()},K=[],q={},V=0,$=/^(?:a|input|textarea|button|select)$/i,U=0,z={},j={},G=function(e,t){var n,r={};for(n in e)r[n]=t?e[n]*t:e[n];return r},Z=function e(t,n){for(var r,o=t.length;o--;)n?t[o].style.touchAction=n:t[o].style.removeProperty("touch-action"),(r=t[o].children)&&r.length&&e(r,n)},Q=function(){return K.forEach(function(e){return e()})},J=function(){return!K.length&&i.ticker.remove(Q)},ee=function(e){for(var t=K.length;t--;)K[t]===e&&K.splice(t,1);i.to(J,{overwrite:!0,delay:15,duration:0,onComplete:J,data:"_draggable"})},te=function(e,t,n,r){if(e.addEventListener){var o=m[t];r=r||(g?{passive:!1}:null),e.addEventListener(o||t,n,r),o&&t!==o&&e.addEventListener(t,n,r)}},ne=function(e,t,n,r){if(e.removeEventListener){var o=m[t];e.removeEventListener(o||t,n,r),o&&t!==o&&e.removeEventListener(t,n,r)}},re=function(e){e.preventDefault&&e.preventDefault(),e.preventManipulation&&e.preventManipulation()},oe=function e(t){y=t.touches&&A<t.touches.length,ne(t.target,"touchend",e)},ie=function(e){y=e.touches&&A<e.touches.length,te(e.target,"touchend",oe)},ae=function(e){return a.pageYOffset||e.scrollTop||e.documentElement.scrollTop||e.body.scrollTop||0},se=function(e){return a.pageXOffset||e.scrollLeft||e.documentElement.scrollLeft||e.body.scrollLeft||0},le=function e(t,n){te(t,"scroll",n),ue(t.parentNode)||e(t.parentNode,n)},ce=function e(t,n){ne(t,"scroll",n),ue(t.parentNode)||e(t.parentNode,n)},ue=function(e){return!(e&&e!==l&&9!==e.nodeType&&e!==s.body&&e!==a&&e.nodeType&&e.parentNode)},de=function(e,t){var n="x"===t?"Width":"Height",r="scroll"+n,o="client"+n;return Math.max(0,ue(e)?Math.max(l[r],c[r])-(a["inner"+n]||l[o]||c[o]):e[r]-e[o])},pe=function e(t,n){var r=de(t,"x"),o=de(t,"y");ue(t)?t=j:e(t.parentNode,n),t._gsMaxScrollX=r,t._gsMaxScrollY=o,n||(t._gsScrollX=t.scrollLeft||0,t._gsScrollY=t.scrollTop||0)},fe=function(e,t,n){var r=e.style;r&&(N(r[t])&&(t=f(t,e)||t),null==n?r.removeProperty&&r.removeProperty(t.replace(/([A-Z])/g,"-$1").toLowerCase()):r[t]=n)},he=function(e){return a.getComputedStyle(e instanceof Element?e:e.host||(e.parentNode||{}).host||e)},ge={},ve=function(e){if(e===a)return ge.left=ge.top=0,ge.width=ge.right=l.clientWidth||e.innerWidth||c.clientWidth||0,ge.height=ge.bottom=(e.innerHeight||0)-20<l.clientHeight?l.clientHeight:e.innerHeight||c.clientHeight||0,ge;var t=e.ownerDocument||s,n=N(e.pageX)?e.nodeType||N(e.left)||N(e.top)?h(e)[0].getBoundingClientRect():e:{left:e.pageX-se(t),top:e.pageY-ae(t),right:e.pageX-se(t)+1,bottom:e.pageY-ae(t)+1};return N(n.right)&&!N(n.width)?(n.right=n.left+n.width,n.bottom=n.top+n.height):N(n.width)&&(n={width:n.right-n.left,height:n.bottom-n.top,right:n.right,left:n.left,bottom:n.bottom,top:n.top}),n},me=function(e,t,n){var r,o=e.vars,i=o[n],a=e._listeners[t];return L(i)&&(r=i.apply(o.callbackScope||e,o[n+"Params"]||[e.pointerEvent])),a&&!1===e.dispatchEvent(t)&&(r=!1),r},ye=function(e,t){var n,r,o,i=h(e)[0];return i.nodeType||i===a?we(i,t):N(e.left)?{left:r=e.min||e.minX||e.minRotation||0,top:n=e.min||e.minY||0,width:(e.max||e.maxX||e.maxRotation||0)-r,height:(e.max||e.maxY||0)-n}:(o={x:0,y:0},{left:e.left-o.x,top:e.top-o.y,width:e.width,height:e.height})},xe={},we=function(e,t){t=h(t)[0];var n,o,i,l,c,u,d,p,f,g,v,m,y,x=e.getBBox&&e.ownerSVGElement,w=e.ownerDocument||s;if(e===a)i=ae(w),o=(n=se(w))+(w.documentElement.clientWidth||e.innerWidth||w.body.clientWidth||0),l=i+((e.innerHeight||0)-20<w.documentElement.clientHeight?w.documentElement.clientHeight:e.innerHeight||w.body.clientHeight||0);else{if(t===a||N(t))return e.getBoundingClientRect();n=i=0,x?(v=(g=e.getBBox()).width,m=g.height):(e.viewBox&&(g=e.viewBox.baseVal)&&(n=g.x||0,i=g.y||0,v=g.width,m=g.height),v||(g="border-box"===(y=he(e)).boxSizing,v=(parseFloat(y.width)||e.clientWidth||0)+(g?0:parseFloat(y.borderLeftWidth)+parseFloat(y.borderRightWidth)),m=(parseFloat(y.height)||e.clientHeight||0)+(g?0:parseFloat(y.borderTopWidth)+parseFloat(y.borderBottomWidth)))),o=v,l=m}return e===t?{left:n,top:i,width:o-n,height:l-i}:(u=(c=(0,r.hK)(t,!0).multiply((0,r.hK)(e))).apply({x:n,y:i}),d=c.apply({x:o,y:i}),p=c.apply({x:o,y:l}),f=c.apply({x:n,y:l}),{left:n=Math.min(u.x,d.x,p.x,f.x),top:i=Math.min(u.y,d.y,p.y,f.y),width:Math.max(u.x,d.x,p.x,f.x)-n,height:Math.max(u.y,d.y,p.y,f.y)-i})},be=function(e,t,n,r,o,i){var a,s,l,c={};if(t)if(1!==o&&t instanceof Array){if(c.end=a=[],l=t.length,S(t[0]))for(s=0;s<l;s++)a[s]=G(t[s],o);else for(s=0;s<l;s++)a[s]=t[s]*o;n+=1.1,r-=1.1}else L(t)?c.end=function(n){var r,i,a=t.call(e,n);if(1!==o)if(S(a)){for(i in r={},a)r[i]=a[i]*o;a=r}else a*=o;return a}:c.end=t;return(n||0===n)&&(c.max=n),(r||0===r)&&(c.min=r),i&&(c.velocity=0),c},Te=function e(t){var n;return!(!t||!t.getAttribute||t===c)&&(!("true"!==(n=t.getAttribute("data-clickable"))&&("false"===n||!$.test(t.nodeName+"")&&"true"!==t.getAttribute("contentEditable")))||e(t.parentNode))},Ee=function(e,t){for(var n,r=e.length;r--;)(n=e[r]).ondragstart=n.onselectstart=t?null:D,i.set(n,{lazy:!0,userSelect:t?"text":"none"})},ke=function e(t){return"fixed"===he(t).position||((t=t.parentNode)&&1===t.nodeType?e(t):void 0)},Ce=function(e,t){e=i.utils.toArray(e)[0],t=t||{};var n,r,o,a,s,l,c=document.createElement("div"),u=c.style,d=e.firstChild,p=0,f=0,h=e.scrollTop,g=e.scrollLeft,v=e.scrollWidth,m=e.scrollHeight,y=0,x=0,w=0;C&&!1!==t.force3D?(s="translate3d(",l="px,0px)"):X&&(s="translate(",l="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(n,r){if(!arguments.length)return-(e.scrollLeft+f);var o=e.scrollLeft-g,a=f;if((o>2||o<-2)&&!r)return g=e.scrollLeft,i.killTweensOf(this,{left:1,scrollLeft:1}),this.left(-g),void(t.onKill&&t.onKill());(n=-n)<0?(f=n-.5|0,n=0):n>x?(f=n-x|0,n=x):f=0,(f||a)&&(this._skip||(u[X]=s+-f+"px,"+-p+l),f+y>=0&&(u.paddingRight=f+y+"px")),e.scrollLeft=0|n,g=e.scrollLeft},this.top=function(n,r){if(!arguments.length)return-(e.scrollTop+p);var o=e.scrollTop-h,a=p;if((o>2||o<-2)&&!r)return h=e.scrollTop,i.killTweensOf(this,{top:1,scrollTop:1}),this.top(-h),void(t.onKill&&t.onKill());(n=-n)<0?(p=n-.5|0,n=0):n>w?(p=n-w|0,n=w):p=0,(p||a)&&(this._skip||(u[X]=s+-f+"px,"+-p+l)),e.scrollTop=0|n,h=e.scrollTop},this.maxScrollTop=function(){return w},this.maxScrollLeft=function(){return x},this.disable=function(){for(d=c.firstChild;d;)a=d.nextSibling,e.appendChild(d),d=a;e===c.parentNode&&e.removeChild(c)},this.enable=function(){if((d=e.firstChild)!==c){for(;d;)a=d.nextSibling,c.appendChild(d),d=a;e.appendChild(c),this.calibrate()}},this.calibrate=function(t){var i,a,s,l=e.clientWidth===n;h=e.scrollTop,g=e.scrollLeft,l&&e.clientHeight===r&&c.offsetHeight===o&&v===e.scrollWidth&&m===e.scrollHeight&&!t||((p||f)&&(a=this.left(),s=this.top(),this.left(-e.scrollLeft),this.top(-e.scrollTop)),i=he(e),l&&!t||(u.display="block",u.width="auto",u.paddingRight="0px",(y=Math.max(0,e.scrollWidth-e.clientWidth))&&(y+=parseFloat(i.paddingLeft)+(P?parseFloat(i.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",P&&(u.paddingBottom=i.paddingBottom),n=e.clientWidth,r=e.clientHeight,v=e.scrollWidth,m=e.scrollHeight,x=e.scrollWidth-n,w=e.scrollHeight-r,o=c.offsetHeight,u.display="block",(a||s)&&(this.left(a),this.top(s)))},this.content=c,this.element=e,this._skip=!1,this.enable()},Pe=function(e){if(M()&&document.body){var t=window&&window.navigator;a=window,s=document,l=s.documentElement,c=s.body,u=B("div"),T=!!window.PointerEvent,(d=B("div")).style.cssText="visibility:hidden;height:1px;top:-1px;pointer-events:none;position:relative;clear:both;cursor:grab",b="grab"===d.style.cursor?"grab":"move",x=t&&-1!==t.userAgent.toLowerCase().indexOf("android"),v="ontouchstart"in l&&"orientation"in a||t&&(t.MaxTouchPoints>0||t.msMaxTouchPoints>0),r=B("div"),y=(o=B("div")).style,A=c,y.display="inline-block",y.position="relative",r.style.cssText="width:90px;height:40px;padding:10px;overflow:auto;visibility:hidden",r.appendChild(o),A.appendChild(r),n=o.offsetHeight+18>r.scrollHeight,A.removeChild(r),P=n,m=function(e){for(var t=e.split(","),n=(("onpointerdown"in u?"pointerdown,pointermove,pointerup,pointercancel":"onmspointerdown"in u?"MSPointerDown,MSPointerMove,MSPointerUp,MSPointerCancel":e).split(",")),r={},o=4;--o>-1;)r[t[o]]=n[o],r[n[o]]=t[o];try{l.addEventListener("test",null,Object.defineProperty({},"passive",{get:function(){g=1}}))}catch(e){}return r}("touchstart,touchmove,touchend,touchcancel"),te(s,"touchcancel",D),te(a,"touchmove",D),c&&c.addEventListener("touchstart",D),te(s,"contextmenu",function(){for(var e in q)q[e].isPressed&&q[e].endDrag()}),i=p=_()}var n,r,o,y,A;i?(w=i.plugins.inertia,E=i.core.context||function(){},f=i.utils.checkPrefix,X=f(X),Y=f(Y),h=i.utils.toArray,k=i.core.getStyleSaver,C=!!f("perspective")):e&&console.warn("Please gsap.registerPlugin(Draggable)")},Ae=function(e){var t,n;function c(t,n){var u;u=e.call(this)||this,p||Pe(1),t=h(t)[0],u.styles=k&&k(t,"transform,left,top"),w||(w=i.plugins.inertia),u.vars=n=G(n||{}),u.target=t,u.x=u.y=u.rotation=0,u.dragResistance=parseFloat(n.dragResistance)||0,u.edgeResistance=isNaN(n.edgeResistance)?1:parseFloat(n.edgeResistance)||0,u.lockAxis=n.lockAxis,u.autoScroll=n.autoScroll||0,u.lockedAxis=null,u.allowEventDefault=!!n.allowEventDefault,i.getProperty(t,"x");var f,g,C,P,M,_,D,X,B,$,J,oe,de,ge,we,Ae,Me,_e,Le,Se,Ne,De,Xe,Ye,Re,Oe,Be,Ie,Fe,He,We,Ke,qe,Ve=(n.type||"x,y").toLowerCase(),$e=~Ve.indexOf("x")||~Ve.indexOf("y"),Ue=-1!==Ve.indexOf("rotation"),ze=Ue?"rotation":$e?"x":"left",je=$e?"y":"top",Ge=!(!~Ve.indexOf("x")&&!~Ve.indexOf("left")&&"scroll"!==Ve),Ze=!(!~Ve.indexOf("y")&&!~Ve.indexOf("top")&&"scroll"!==Ve),Qe=n.minimumMovement||2,Je=o(u),et=h(n.trigger||n.handle||t),tt={},nt=0,rt=!1,ot=n.autoScrollMarginTop||40,it=n.autoScrollMarginRight||40,at=n.autoScrollMarginBottom||40,st=n.autoScrollMarginLeft||40,lt=n.clickableTest||Te,ct=0,ut=t._gsap||i.core.getCache(t),dt=ke(t),pt=function(e,n){return parseFloat(ut.get(t,e,n))},ft=t.ownerDocument||s,ht=function(e){return re(e),e.stopImmediatePropagation&&e.stopImmediatePropagation(),!1},gt=function e(n){if(Je.autoScroll&&Je.isDragging&&(rt||Me)){var r,o,i,s,c,u,d,p,f=t,h=15*Je.autoScroll;for(rt=!1,j.scrollTop=null!=a.pageYOffset?a.pageYOffset:null!=ft.documentElement.scrollTop?ft.documentElement.scrollTop:ft.body.scrollTop,j.scrollLeft=null!=a.pageXOffset?a.pageXOffset:null!=ft.documentElement.scrollLeft?ft.documentElement.scrollLeft:ft.body.scrollLeft,s=Je.pointerX-j.scrollLeft,c=Je.pointerY-j.scrollTop;f&&!o;)r=(o=ue(f.parentNode))?j:f.parentNode,i=o?{bottom:Math.max(l.clientHeight,a.innerHeight||0),right:Math.max(l.clientWidth,a.innerWidth||0),left:0,top:0}:r.getBoundingClientRect(),u=d=0,Ze&&((p=r._gsMaxScrollY-r.scrollTop)<0?d=p:c>i.bottom-at&&p?(rt=!0,d=Math.min(p,h*(1-Math.max(0,i.bottom-c)/at)|0)):c<i.top+ot&&r.scrollTop&&(rt=!0,d=-Math.min(r.scrollTop,h*(1-Math.max(0,c-i.top)/ot)|0)),d&&(r.scrollTop+=d)),Ge&&((p=r._gsMaxScrollX-r.scrollLeft)<0?u=p:s>i.right-it&&p?(rt=!0,u=Math.min(p,h*(1-Math.max(0,i.right-s)/it)|0)):s<i.left+st&&r.scrollLeft&&(rt=!0,u=-Math.min(r.scrollLeft,h*(1-Math.max(0,s-i.left)/st)|0)),u&&(r.scrollLeft+=u)),o&&(u||d)&&(a.scrollTo(r.scrollLeft,r.scrollTop),Mt(Je.pointerX+u,Je.pointerY+d)),f=r}if(Me){var v=Je.x,m=Je.y;Ue?(Je.deltaX=v-parseFloat(ut.rotation),Je.rotation=v,ut.rotation=v+"deg",ut.renderTransform(1,ut)):g?(Ze&&(Je.deltaY=m-g.top(),g.top(m)),Ge&&(Je.deltaX=v-g.left(),g.left(v))):$e?(Ze&&(Je.deltaY=m-parseFloat(ut.y),ut.y=m+"px"),Ge&&(Je.deltaX=v-parseFloat(ut.x),ut.x=v+"px"),ut.renderTransform(1,ut)):(Ze&&(Je.deltaY=m-parseFloat(t.style.top||0),t.style.top=m+"px"),Ge&&(Je.deltaX=v-parseFloat(t.style.left||0),t.style.left=v+"px")),!X||n||Ie||(Ie=!0,!1===me(Je,"drag","onDrag")&&(Ge&&(Je.x-=Je.deltaX),Ze&&(Je.y-=Je.deltaY),e(!0)),Ie=!1)}Me=!1},vt=function(e,n){var r,o,a=Je.x,s=Je.y;t._gsap||(ut=i.core.getCache(t)),ut.uncache&&i.getProperty(t,"x"),$e?(Je.x=parseFloat(ut.x),Je.y=parseFloat(ut.y)):Ue?Je.x=Je.rotation=R(parseFloat(ut.rotation)):g?(Je.y=g.top(),Je.x=g.left()):(Je.y=parseFloat(t.style.top||(o=he(t))&&o.top)||0,Je.x=parseFloat(t.style.left||(o||{}).left)||0),(Le||Se||Ne)&&!n&&(Je.isDragging||Je.isThrowing)&&(Ne&&(z.x=Je.x,z.y=Je.y,(r=Ne(z)).x!==Je.x&&(Je.x=r.x,Me=!0),r.y!==Je.y&&(Je.y=r.y,Me=!0)),Le&&(r=Le(Je.x))!==Je.x&&(Je.x=r,Ue&&(Je.rotation=r),Me=!0),Se&&((r=Se(Je.y))!==Je.y&&(Je.y=r),Me=!0)),Me&>(!0),e||(Je.deltaX=Je.x-a,Je.deltaY=Je.y-s,me(Je,"throwupdate","onThrowUpdate"))},mt=function(e,t,n,r){return null==t&&(t=-F),null==n&&(n=F),L(e)?function(o){var i=Je.isPressed?1-Je.edgeResistance:1;return e.call(Je,(o>n?n+(o-n)*i:o<t?t+(o-t)*i:o)*r)*r}:O(e)?function(r){for(var o,i,a=e.length,s=0,l=F;--a>-1;)(i=(o=e[a])-r)<0&&(i=-i),i<l&&o>=t&&o<=n&&(s=a,l=i);return e[s]}:isNaN(e)?function(e){return e}:function(){return e*r}},yt=function(){var e,r,o,i;D=!1,g?(g.calibrate(),Je.minX=J=-g.maxScrollLeft(),Je.minY=de=-g.maxScrollTop(),Je.maxX=$=Je.maxY=oe=0,D=!0):n.bounds&&(e=ye(n.bounds,t.parentNode),Ue?(Je.minX=J=e.left,Je.maxX=$=e.left+e.width,Je.minY=de=Je.maxY=oe=0):N(n.bounds.maxX)&&N(n.bounds.maxY)?(r=ye(t,t.parentNode),Je.minX=J=Math.round(pt(ze,"px")+e.left-r.left),Je.minY=de=Math.round(pt(je,"px")+e.top-r.top),Je.maxX=$=Math.round(J+(e.width-r.width)),Je.maxY=oe=Math.round(de+(e.height-r.height))):(e=n.bounds,Je.minX=J=e.minX,Je.minY=de=e.minY,Je.maxX=$=e.maxX,Je.maxY=oe=e.maxY),J>$&&(Je.minX=$,Je.maxX=$=J,J=Je.minX),de>oe&&(Je.minY=oe,Je.maxY=oe=de,de=Je.minY),Ue&&(Je.minRotation=J,Je.maxRotation=$),D=!0),n.liveSnap&&(o=!0===n.liveSnap?n.snap||{}:n.liveSnap,i=O(o)||L(o),Ue?(Le=mt(i?o:o.rotation,J,$,1),Se=null):o.points?Ne=function(e,t,n,r,o,i,a){return i=i&&i<F?i*i:F,L(e)?function(s){var l,c,u,d=Je.isPressed?1-Je.edgeResistance:1,p=s.x,f=s.y;return s.x=p=p>n?n+(p-n)*d:p<t?t+(p-t)*d:p,s.y=f=f>o?o+(f-o)*d:f<r?r+(f-r)*d:f,(l=e.call(Je,s))!==s&&(s.x=l.x,s.y=l.y),1!==a&&(s.x*=a,s.y*=a),i<F&&(c=s.x-p)*c+(u=s.y-f)*u>i&&(s.x=p,s.y=f),s}:O(e)?function(t){for(var n,r,o,a,s=e.length,l=0,c=F;--s>-1;)(a=(n=(o=e[s]).x-t.x)*n+(r=o.y-t.y)*r)<c&&(l=s,c=a);return c<=i?e[l]:t}:function(e){return e}}(i?o:o.points,J,$,de,oe,o.radius,g?-1:1):(Ge&&(Le=mt(i?o:o.x||o.left||o.scrollLeft,J,$,g?-1:1)),Ze&&(Se=mt(i?o:o.y||o.top||o.scrollTop,de,oe,g?-1:1))))},xt=function(){Je.isThrowing=!1,me(Je,"throwcomplete","onThrowComplete")},wt=function(){Je.isThrowing=!1},bt=function(e,r){var o,a,s,l;e&&w?(!0===e&&(o=n.snap||n.liveSnap||{},a=O(o)||L(o),e={resistance:(n.throwResistance||n.resistance||1e3)/(Ue?10:1)},Ue?e.rotation=be(Je,a?o:o.rotation,$,J,1,r):(Ge&&(e[ze]=be(Je,a?o:o.points||o.x||o.left,$,J,g?-1:1,r||"x"===Je.lockedAxis)),Ze&&(e[je]=be(Je,a?o:o.points||o.y||o.top,oe,de,g?-1:1,r||"y"===Je.lockedAxis)),(o.points||O(o)&&S(o[0]))&&(e.linkedProps=ze+","+je,e.radius=o.radius))),Je.isThrowing=!0,l=isNaN(n.overshootTolerance)?1===n.edgeResistance?0:1-Je.edgeResistance+.2:n.overshootTolerance,e.duration||(e.duration={max:Math.max(n.minDuration||0,"maxDuration"in n?n.maxDuration:2),min:isNaN(n.minDuration)?0===l||S(e)&&e.resistance>1e3?0:.5:n.minDuration,overshoot:l}),Je.tween=s=i.to(g||t,{inertia:e,data:"_draggable",inherit:!1,onComplete:xt,onInterrupt:wt,onUpdate:n.fastMode?me:vt,onUpdateParams:n.fastMode?[Je,"onthrowupdate","onThrowUpdate"]:o&&o.radius?[!1,!0]:[]}),n.fastMode||(g&&(g._skip=!0),s.render(1e9,!0,!0),vt(!0,!0),Je.endX=Je.x,Je.endY=Je.y,Ue&&(Je.endRotation=Je.x),s.play(0),vt(!0,!0),g&&(g._skip=!1))):D&&Je.applyBounds()},Tt=function(e){var n,o=Ye;Ye=(0,r.hK)(t.parentNode,!0),e&&Je.isPressed&&!Ye.equals(o||new r.cA)&&(n=o.inverse().apply({x:C,y:P}),Ye.apply(n,n),C=n.x,P=n.y),Ye.equals(H)&&(Ye=null)},Et=function(){var e,n,o,i=1-Je.edgeResistance,a=dt?se(ft):0,s=dt?ae(ft):0;$e&&(ut.x=pt(ze,"px")+"px",ut.y=pt(je,"px")+"px",ut.renderTransform()),Tt(!1),xe.x=Je.pointerX-a,xe.y=Je.pointerY-s,Ye&&Ye.apply(xe,xe),C=xe.x,P=xe.y,Me&&(Mt(Je.pointerX,Je.pointerY),gt(!0)),Ke=(0,r.hK)(t),g?(yt(),_=g.top(),M=g.left()):(kt()?(vt(!0,!0),yt()):Je.applyBounds(),Ue?(e=t.ownerSVGElement?[ut.xOrigin-t.getBBox().x,ut.yOrigin-t.getBBox().y]:(he(t)[Y]||"0 0").split(" "),Ae=Je.rotationOrigin=(0,r.hK)(t).apply({x:parseFloat(e[0])||0,y:parseFloat(e[1])||0}),vt(!0,!0),n=Je.pointerX-Ae.x-a,o=Ae.y-Je.pointerY+s,M=Je.x,_=Je.y=Math.atan2(o,n)*I):(_=pt(je,"px"),M=pt(ze,"px"))),D&&i&&(M>$?M=$+(M-$)/i:M<J&&(M=J-(J-M)/i),Ue||(_>oe?_=oe+(_-oe)/i:_<de&&(_=de-(de-_)/i))),Je.startX=M=R(M),Je.startY=_=R(_)},kt=function(){return Je.tween&&Je.tween.isActive()},Ct=function(){!d.parentNode||kt()||Je.isDragging||d.parentNode.removeChild(d)},Pt=function(e,r){var o;if(!f||Je.isPressed||!e||!("mousedown"!==e.type&&"pointerdown"!==e.type||r)&&W()-ct<30&&m[Je.pointerEvent.type])We&&e&&f&&re(e);else{if(Re=kt(),qe=!1,Je.pointerEvent=e,m[e.type]?(Xe=~e.type.indexOf("touch")?e.currentTarget||e.target:ft,te(Xe,"touchend",_t),te(Xe,"touchmove",At),te(Xe,"touchcancel",_t),te(ft,"touchstart",ie)):(Xe=null,te(ft,"mousemove",At)),Be=null,T&&Xe||(te(ft,"mouseup",_t),e&&e.target&&te(e.target,"mouseup",_t)),De=lt.call(Je,e.target)&&!1===n.dragClickables&&!r)return te(e.target,"change",_t),me(Je,"pressInit","onPressInit"),me(Je,"press","onPress"),Ee(et,!0),void(We=!1);var s;if(Oe=!(!Xe||Ge===Ze||!1===Je.vars.allowNativeTouchScrolling||Je.vars.allowContextMenu&&e&&(e.ctrlKey||e.which>2))&&(Ge?"y":"x"),(We=!Oe&&!Je.allowEventDefault)&&(re(e),te(a,"touchforcechange",re)),e.changedTouches?(e=ge=e.changedTouches[0],we=e.identifier):e.pointerId?we=e.pointerId:ge=we=null,A++,s=gt,K.push(s),1===K.length&&i.ticker.add(Q),P=Je.pointerY=e.pageY,C=Je.pointerX=e.pageX,me(Je,"pressInit","onPressInit"),(Oe||Je.autoScroll)&&pe(t.parentNode),!t.parentNode||!Je.autoScroll||g||Ue||!t.parentNode._gsMaxScrollX||d.parentNode||t.getBBox||(d.style.width=t.parentNode.scrollWidth+"px",t.parentNode.appendChild(d)),Et(),Je.tween&&Je.tween.kill(),Je.isThrowing=!1,i.killTweensOf(g||t,tt,!0),g&&i.killTweensOf(t,{scrollTo:1},!0),Je.tween=Je.lockedAxis=null,(n.zIndexBoost||!Ue&&!g&&!1!==n.zIndexBoost)&&(t.style.zIndex=c.zIndex++),Je.isPressed=!0,X=!(!n.onDrag&&!Je._listeners.drag),B=!(!n.onMove&&!Je._listeners.move),!1!==n.cursor||n.activeCursor)for(o=et.length;--o>-1;)i.set(et[o],{cursor:n.activeCursor||n.cursor||("grab"===b?"grabbing":b)});me(Je,"press","onPress"),w&&w.track(g||t,$e?"x,y":Ue?"rotation":"top,left")}},At=function(e){var n,r,o,i,s,l,c=e;if(f&&!y&&Je.isPressed&&e){if(Je.pointerEvent=e,n=e.changedTouches){if((e=n[0])!==ge&&e.identifier!==we){for(i=n.length;--i>-1&&(e=n[i]).identifier!==we&&e.target!==t;);if(i<0)return}}else if(e.pointerId&&we&&e.pointerId!==we)return;Xe&&Oe&&!Be&&(xe.x=e.pageX-(dt?se(ft):0),xe.y=e.pageY-(dt?ae(ft):0),Ye&&Ye.apply(xe,xe),r=xe.x,o=xe.y,((s=Math.abs(r-C))!==(l=Math.abs(o-P))&&(s>Qe||l>Qe)||x&&Oe===Be)&&(Be=s>l&&Ge?"x":"y",Oe&&Be!==Oe&&te(a,"touchforcechange",re),!1!==Je.vars.lockAxisOnTouchScroll&&Ge&&Ze&&(Je.lockedAxis="x"===Be?"y":"x",L(Je.vars.onLockAxis)&&Je.vars.onLockAxis.call(Je,c)),x&&Oe===Be))?_t(c):(Je.allowEventDefault||Oe&&(!Be||Oe===Be)||!1===c.cancelable?We&&(We=!1):(re(c),We=!0),Je.autoScroll&&(rt=!0),Mt(e.pageX,e.pageY,B))}else We&&e&&f&&re(e)},Mt=function(e,t,n){var r,o,i,a,s,l,c=1-Je.dragResistance,u=1-Je.edgeResistance,d=Je.pointerX,p=Je.pointerY,f=_,h=Je.x,g=Je.y,v=Je.endX,m=Je.endY,y=Je.endRotation,x=Me;Je.pointerX=e,Je.pointerY=t,dt&&(e-=se(ft),t-=ae(ft)),Ue?(a=R(Math.atan2(Ae.y-t,e-Ae.x)*I),(s=Je.y-a)>180?(_-=360,Je.y=a):s<-180&&(_+=360,Je.y=a),Ye&&(l=e*Ye.a+t*Ye.c+Ye.e,t=e*Ye.b+t*Ye.d+Ye.f,e=l),Je.x!==M||Math.max(Math.abs(C-e),Math.abs(P-t))>Qe?(Je.y=a,i=R(M+(_-a)*c)):i=M):(Ye&&(l=e*Ye.a+t*Ye.c+Ye.e,t=e*Ye.b+t*Ye.d+Ye.f,e=l),(o=t-P)<Qe&&o>-Qe&&(o=0),(r=e-C)<Qe&&r>-Qe&&(r=0),(Je.lockAxis||Je.lockedAxis)&&(r||o)&&((l=Je.lockedAxis)||(Je.lockedAxis=l=Ge&&Math.abs(r)>Math.abs(o)?"y":Ze?"x":null,l&&L(Je.vars.onLockAxis)&&Je.vars.onLockAxis.call(Je,Je.pointerEvent)),"y"===l?o=0:"x"===l&&(r=0)),i=R(M+r*c),a=R(_+o*c)),(Le||Se||Ne)&&(Je.x!==i||Je.y!==a&&!Ue)&&(Ne&&(z.x=i,z.y=a,l=Ne(z),i=R(l.x),a=R(l.y)),Le&&(i=R(Le(i))),Se&&(a=R(Se(a)))),D&&(i>$?i=$+Math.round((i-$)*u):i<J&&(i=J+Math.round((i-J)*u)),Ue||(a>oe?a=Math.round(oe+(a-oe)*u):a<de&&(a=Math.round(de+(a-de)*u)))),(Je.x!==i||Je.y!==a&&!Ue)&&(Ue?(Je.endRotation=Je.x=Je.endX=R(i),Me=!0):(Ze&&(Je.y=Je.endY=a,Me=!0),Ge&&(Je.x=Je.endX=i,Me=!0)),n&&!1===me(Je,"move","onMove")?(Je.pointerX=d,Je.pointerY=p,_=f,Je.x=h,Je.y=g,Je.endX=v,Je.endY=m,Je.endRotation=y,Me=x):!Je.isDragging&&Je.isPressed&&(Je.isDragging=qe=!0,me(Je,"dragstart","onDragStart")))},_t=function e(r,o){if(f&&Je.isPressed&&(!r||null==we||o||!(r.pointerId&&r.pointerId!==we&&r.target!==t||r.changedTouches&&!function(e,t){for(var n=e.length;n--;)if(e[n].identifier===t)return!0}(r.changedTouches,we)))){Je.isPressed=!1;var s,l,c,u,d,p=r,h=Je.isDragging,g=Je.vars.allowContextMenu&&r&&(r.ctrlKey||r.which>2),v=i.delayedCall(.001,Ct);if(Xe?(ne(Xe,"touchend",e),ne(Xe,"touchmove",At),ne(Xe,"touchcancel",e),ne(ft,"touchstart",ie)):ne(ft,"mousemove",At),ne(a,"touchforcechange",re),T&&Xe||(ne(ft,"mouseup",e),r&&r.target&&ne(r.target,"mouseup",e)),Me=!1,h&&(nt=U=W(),Je.isDragging=!1),ee(gt),De&&!g)return r&&(ne(r.target,"change",e),Je.pointerEvent=p),Ee(et,!1),me(Je,"release","onRelease"),me(Je,"click","onClick"),void(De=!1);for(l=et.length;--l>-1;)fe(et[l],"cursor",n.cursor||(!1!==n.cursor?b:null));if(A--,r){if((s=r.changedTouches)&&(r=s[0])!==ge&&r.identifier!==we){for(l=s.length;--l>-1&&(r=s[l]).identifier!==we&&r.target!==t;);if(l<0&&!o)return}Je.pointerEvent=p,Je.pointerX=r.pageX,Je.pointerY=r.pageY}return g&&p?(re(p),We=!0,me(Je,"release","onRelease")):p&&!h?(We=!1,Re&&(n.snap||n.bounds)&&bt(n.inertia||n.throwProps),me(Je,"release","onRelease"),x&&"touchmove"===p.type||-1!==p.type.indexOf("cancel")||(me(Je,"click","onClick"),W()-ct<300&&me(Je,"doubleclick","onDoubleClick"),u=p.target||t,ct=W(),d=function(){ct===Fe||!Je.enabled()||Je.isPressed||p.defaultPrevented||(u.click?u.click():ft.createEvent&&((c=ft.createEvent("MouseEvents")).initMouseEvent("click",!0,!0,a,1,Je.pointerEvent.screenX,Je.pointerEvent.screenY,Je.pointerX,Je.pointerY,!1,!1,!1,!1,0,null),u.dispatchEvent(c)))},x||p.defaultPrevented||i.delayedCall(.05,d))):(bt(n.inertia||n.throwProps),Je.allowEventDefault||!p||!1===n.dragClickables&<.call(Je,p.target)||!h||Oe&&(!Be||Oe!==Be)||!1===p.cancelable?We=!1:(We=!0,re(p)),me(Je,"release","onRelease")),kt()&&v.duration(Je.tween.duration()),h&&me(Je,"dragend","onDragEnd"),!0}We&&r&&f&&re(r)},Lt=function(e){if(e&&Je.isDragging&&!g){var n=e.target||t.parentNode,r=n.scrollLeft-n._gsScrollX,o=n.scrollTop-n._gsScrollY;(r||o)&&(Ye?(C-=r*Ye.a+o*Ye.c,P-=o*Ye.d+r*Ye.b):(C-=r,P-=o),n._gsScrollX+=r,n._gsScrollY+=o,Mt(Je.pointerX,Je.pointerY))}},St=function(e){var t=W(),n=t-ct<100,r=t-nt<50,o=n&&Fe===ct,i=Je.pointerEvent&&Je.pointerEvent.defaultPrevented,a=n&&He===ct,s=e.isTrusted||null==e.isTrusted&&n&&o;if((o||r&&!1!==Je.vars.suppressClickOnDrag)&&e.stopImmediatePropagation&&e.stopImmediatePropagation(),n&&(!Je.pointerEvent||!Je.pointerEvent.defaultPrevented)&&(!o||s&&!a))return s&&o&&(He=ct),void(Fe=ct);(Je.isPressed||r||n)&&(s&&e.detail&&n&&!i||re(e)),n||r||qe||(e&&e.target&&(Je.pointerEvent=e),me(Je,"click","onClick"))},Nt=function(e){return Ye?{x:e.x*Ye.a+e.y*Ye.c+Ye.e,y:e.x*Ye.b+e.y*Ye.d+Ye.f}:{x:e.x,y:e.y}};return(_e=c.get(t))&&_e.kill(),u.startDrag=function(e,n){var r,o,i,a;Pt(e||Je.pointerEvent,!0),n&&!Je.hitTest(e||Je.pointerEvent)&&(r=ve(e||Je.pointerEvent),o=ve(t),i=Nt({x:r.left+r.width/2,y:r.top+r.height/2}),a=Nt({x:o.left+o.width/2,y:o.top+o.height/2}),C-=i.x-a.x,P-=i.y-a.y),Je.isDragging||(Je.isDragging=qe=!0,me(Je,"dragstart","onDragStart"))},u.drag=At,u.endDrag=function(e){return _t(e||Je.pointerEvent,!0)},u.timeSinceDrag=function(){return Je.isDragging?0:(W()-nt)/1e3},u.timeSinceClick=function(){return(W()-ct)/1e3},u.hitTest=function(e,t){return c.hitTest(Je.target,e,t)},u.getDirection=function(e,n){var r,o,i,a,s,l,c="velocity"===e&&w?e:S(e)&&!Ue?"element":"start";return"element"===c&&(s=ve(Je.target),l=ve(e)),r="start"===c?Je.x-M:"velocity"===c?w.getVelocity(t,ze):s.left+s.width/2-(l.left+l.width/2),Ue?r<0?"counter-clockwise":"clockwise":(n=n||2,o="start"===c?Je.y-_:"velocity"===c?w.getVelocity(t,je):s.top+s.height/2-(l.top+l.height/2),a=(i=Math.abs(r/o))<1/n?"":r<0?"left":"right",i<n&&(""!==a&&(a+="-"),a+=o<0?"up":"down"),a)},u.applyBounds=function(e,r){var o,i,s,l,c,u;if(e&&n.bounds!==e)return n.bounds=e,Je.update(!0,r);if(vt(!0),yt(),D&&!kt()){if(o=Je.x,i=Je.y,o>$?o=$:o<J&&(o=J),i>oe?i=oe:i<de&&(i=de),(Je.x!==o||Je.y!==i)&&(s=!0,Je.x=Je.endX=o,Ue?Je.endRotation=o:Je.y=Je.endY=i,Me=!0,gt(!0),Je.autoScroll&&!Je.isDragging))for(pe(t.parentNode),l=t,j.scrollTop=null!=a.pageYOffset?a.pageYOffset:null!=ft.documentElement.scrollTop?ft.documentElement.scrollTop:ft.body.scrollTop,j.scrollLeft=null!=a.pageXOffset?a.pageXOffset:null!=ft.documentElement.scrollLeft?ft.documentElement.scrollLeft:ft.body.scrollLeft;l&&!u;)c=(u=ue(l.parentNode))?j:l.parentNode,Ze&&c.scrollTop>c._gsMaxScrollY&&(c.scrollTop=c._gsMaxScrollY),Ge&&c.scrollLeft>c._gsMaxScrollX&&(c.scrollLeft=c._gsMaxScrollX),l=c;Je.isThrowing&&(s||Je.endX>$||Je.endX<J||Je.endY>oe||Je.endY<de)&&bt(n.inertia||n.throwProps,s)}return Je},u.update=function(e,n,o){if(n&&Je.isPressed){if(Ue)Je.x=Je.y=R(parseFloat(ut.rotation));else{var i=(0,r.hK)(t),a=Ke.apply({x:Je.x-M,y:Je.y-_}),s=(0,r.hK)(t.parentNode,!0);s.apply({x:i.e-a.x,y:i.f-a.y},a),Je.x=R(Je.x-(a.x-s.e)),Je.y=R(Je.y-(a.y-s.f))}gt(!0),Et()}var l=Je.x,c=Je.y;return Tt(!n),e?Je.applyBounds():(Me&&o&>(!0),vt(!0)),n&&(Mt(Je.pointerX,Je.pointerY),Me&>(!0)),Je.isPressed&&!n&&(Ge&&Math.abs(l-Je.x)>.01||Ze&&Math.abs(c-Je.y)>.01&&!Ue)&&Et(),Je.autoScroll&&(pe(t.parentNode,Je.isDragging),rt=Je.isDragging,gt(!0),ce(t,Lt),le(t,Lt)),Je},u.enable=function(e){var r,o,a,s={lazy:!0};if(!1!==n.cursor&&(s.cursor=n.cursor||b),i.utils.checkPrefix("touchCallout")&&(s.touchCallout="none"),"soft"!==e){for(Z(et,Ge===Ze?"none":n.allowNativeTouchScrolling&&t.scrollHeight===t.clientHeight==(t.scrollWidth===t.clientHeight)||n.allowEventDefault?"manipulation":Ge?"pan-y":"pan-x"),o=et.length;--o>-1;)a=et[o],T||te(a,"mousedown",Pt),te(a,"touchstart",Pt),te(a,"click",St,!0),i.set(a,s),a.getBBox&&a.ownerSVGElement&&Ge!==Ze&&i.set(a.ownerSVGElement,{touchAction:n.allowNativeTouchScrolling||n.allowEventDefault?"manipulation":Ge?"pan-y":"pan-x"}),n.allowContextMenu||te(a,"contextmenu",ht);Ee(et,!1)}return le(t,Lt),f=!0,w&&"soft"!==e&&w.track(g||t,$e?"x,y":Ue?"rotation":"top,left"),t._gsDragID=r=t._gsDragID||"d"+V++,q[r]=Je,g&&(g.enable(),g.element._gsDragID=r),(n.bounds||Ue)&&Et(),n.bounds&&Je.applyBounds(),Je},u.disable=function(e){for(var n,r=Je.isDragging,o=et.length;--o>-1;)fe(et[o],"cursor",null);if("soft"!==e){for(Z(et,null),o=et.length;--o>-1;)n=et[o],fe(n,"touchCallout",null),ne(n,"mousedown",Pt),ne(n,"touchstart",Pt),ne(n,"click",St,!0),ne(n,"contextmenu",ht);Ee(et,!0),Xe&&(ne(Xe,"touchcancel",_t),ne(Xe,"touchend",_t),ne(Xe,"touchmove",At)),ne(ft,"mouseup",_t),ne(ft,"mousemove",At)}return ce(t,Lt),f=!1,w&&"soft"!==e&&(w.untrack(g||t,$e?"x,y":Ue?"rotation":"top,left"),Je.tween&&Je.tween.kill()),g&&g.disable(),ee(gt),Je.isDragging=Je.isPressed=De=!1,r&&me(Je,"dragend","onDragEnd"),Je},u.enabled=function(e,t){return arguments.length?e?Je.enable(t):Je.disable(t):f},u.kill=function(){return Je.isThrowing=!1,Je.tween&&Je.tween.kill(),Je.disable(),i.set(et,{clearProps:"userSelect"}),delete q[t._gsDragID],Je},u.revert=function(){this.kill(),this.styles&&this.styles.revert()},~Ve.indexOf("scroll")&&(g=u.scrollProxy=new Ce(t,function(e,t){for(var n in t)n in e||(e[n]=t[n]);return e}({onKill:function(){Je.isPressed&&_t(null)}},n)),t.style.overflowY=Ze&&!v?"auto":"hidden",t.style.overflowX=Ge&&!v?"auto":"hidden",t=g.content),Ue?tt.rotation=1:(Ge&&(tt[ze]=1),Ze&&(tt[je]=1)),ut.force3D=!("force3D"in n)||n.force3D,E(o(u)),u.enable(),u}return n=e,(t=c).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,c.register=function(e){i=e,Pe()},c.create=function(e,t){return p||Pe(!0),h(e).map(function(e){return new c(e,t)})},c.get=function(e){return q[(h(e)[0]||{})._gsDragID]},c.timeSinceDrag=function(){return(W()-U)/1e3},c.hitTest=function(e,t,n){if(e===t)return!1;var r,o,i,a=ve(e),s=ve(t),l=a.top,c=a.left,u=a.right,d=a.bottom,p=a.width,f=a.height,h=s.left>u||s.right<c||s.top>d||s.bottom<l;return h||!n?!h:(i=-1!==(n+"").indexOf("%"),n=parseFloat(n)||0,(r={left:Math.max(c,s.left),top:Math.max(l,s.top)}).width=Math.min(u,s.right)-r.left,r.height=Math.min(d,s.bottom)-r.top,!(r.width<0||r.height<0)&&(i?(n*=.01,(o=r.width*r.height)>=p*f*n||o>=s.width*s.height*n):r.width>n&&r.height>n))},c}(function(){function e(e){this._listeners={},this.target=e||this}var t=e.prototype;return t.addEventListener=function(e,t){var n=this._listeners[e]||(this._listeners[e]=[]);~n.indexOf(t)||n.push(t)},t.removeEventListener=function(e,t){var n=this._listeners[e],r=n&&n.indexOf(t);r>=0&&n.splice(r,1)},t.dispatchEvent=function(e){var t,n=this;return(this._listeners[e]||[]).forEach(function(r){return!1===r.call(n,{type:e,target:n.target})&&(t=!1)}),t},e}());!function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Ae.prototype,{pointerX:0,pointerY:0,startX:0,startY:0,deltaX:0,deltaY:0,isDragging:!1,isPressed:!1}),Ae.zIndex=1e3,Ae.version="3.15.0",_()&&i.registerPlugin(Ae)},423(e,t,n){n.d(t,{InertiaPlugin:()=>J});var r,o,i,a,s,l,c,u,d=function(){return r||"undefined"!=typeof window&&(r=window.gsap)},p={},f=function(e){return u(e).id},h=function(e){return p[f("string"==typeof e?i(e)[0]:e)]},g=function(e){var t,n=s;if(e-c>=.05)for(c=e;n;)((t=n.g(n.t,n.p))!==n.v1||e-n.t1>.2)&&(n.v2=n.v1,n.v1=t,n.t2=n.t1,n.t1=e),n=n._next},v={deg:360,rad:2*Math.PI},m=function(){(r=d())&&(i=r.utils.toArray,a=r.utils.getUnit,u=r.core.getCache,l=r.ticker,o=1)},y=function(e,t,n,r){this.t=e,this.p=t,this.g=e._gsap.get,this.rCap=v[n||a(this.g(e,t))],this.v1=this.v2=this.g(e,t),this.t1=this.t2=l.time,r&&(this._next=r,r._prev=this)},x=function(){function e(e,t){o||m(),this.target=i(e)[0],p[f(this.target)]=this,this._props={},t&&this.add(t)}e.register=function(e){r=e,m()};var t=e.prototype;return t.get=function(e,t){var n,r,o,i=this._props[e]||console.warn("Not tracking "+e+" velocity.");return n=parseFloat(t?i.v1:i.g(i.t,i.p))-parseFloat(i.v2),(r=i.rCap)&&(n%=r)!==n%(r/2)&&(n=n<0?n+r:n-r),o=n/((t?i.t1:l.time)-i.t2),Math.round(1e4*o)/1e4},t.getAll=function(){var e,t={},n=this._props;for(e in n)t[e]=this.get(e);return t},t.isTracking=function(e){return e in this._props},t.add=function(e,t){var n=this._props[e];n?(n.v1=n.v2=n.g(n.t,n.p),n.t1=n.t2=l.time):(s||(l.add(g),c=l.time),s=this._props[e]=new y(this.target,e,t,s))},t.remove=function(e){var t,n,r=this._props[e];r&&(t=r._prev,n=r._next,t&&(t._next=n),n?n._prev=t:s===r&&(l.remove(g),s=0),delete this._props[e])},t.kill=function(e){for(var t in this._props)this.remove(t);e||delete p[f(this.target)]},e.track=function(t,n,r){o||m();for(var a,s,l=[],c=i(t),u=n.split(","),d=(r||"").split(","),p=c.length;p--;){for(a=h(c[p])||new e(c[p]),s=u.length;s--;)a.add(u[s],d[s]||d[0]);l.push(a)}return l},e.untrack=function(e,t){var n=t&&t.split(",");i(e).forEach(function(e){var t=h(e);t&&(n?n.forEach(function(e){return t.remove(e)}):t.kill(1))})},e.isTracking=function(e,t){var n=h(e);return n&&n.isTracking(t)},e.getVelocity=function(e,t){var n=h(e);return n&&n.isTracking(t)?n.get(t):console.warn("Not tracking velocity of "+t)},e}();x.getByTarget=h,d()&&r.registerPlugin(x);var w,b,T,E,k,C,P,A,M,_,L,S,N,D,X=x.getByTarget,Y=function(){return w||"undefined"!=typeof window&&(w=window.gsap)&&w.registerPlugin&&w},R=function(e){return"number"==typeof e},O=function(e){return"object"==typeof e},B=function(e){return"function"==typeof e},I=Array.isArray,F=function(e){return e},H=1e10,W=function(e){return Math.round(1e4*e)/1e4},K=function(e,t,n){for(var r in t)r in e||r===n||(e[r]=t[r]);return e},q=function e(t){var n,r,o={};for(n in t)o[n]=O(r=t[n])&&!I(r)?e(r):r;return o},V=function(e,t,n,r,o){var i,a,s,l,c=t.length,u=0,d=H;if(O(e)){for(;c--;){for(s in i=t[c],a=0,e)a+=(l=i[s]-e[s])*l;a<d&&(u=c,d=a)}if((o||H)<H&&o<Math.sqrt(d))return e}else for(;c--;)(a=(i=t[c])-e)<0&&(a=-a),a<d&&i>=r&&i<=n&&(u=c,d=a);return t[u]},$=function(e,t,n,r,o,i,a){if("auto"===e.end)return e;var s,l,c=e.end;if(n=isNaN(n)?H:n,r=isNaN(r)?-H:r,O(t)){if(s=t.calculated?t:(B(c)?c(t,a):V(t,c,n,r,i))||t,!t.calculated){for(l in s)t[l]=s[l];t.calculated=!0}s=s[o]}else s=B(c)?c(t,a):I(c)?V(t,c,n,r,i):parseFloat(c);return s>n?s=n:s<r&&(s=r),{max:s,min:s,unitFactor:e.unitFactor}},U=function(e,t,n){return isNaN(e[t])?n:+e[t]},z=function(e,t){return.05*t*e/_},j=function(e,t,n){return Math.abs((t-e)*_/n/.05)},G={resistance:1,checkpoint:1,preventOvershoot:1,linkedProps:1,radius:1,duration:1},Z=function(e,t,n,r){if(t.linkedProps){var o,i,a,s,l,c,u=t.linkedProps.split(","),d={};for(o=0;o<u.length;o++)(a=t[i=u[o]])&&(s=R(a.velocity)?a.velocity:(l=l||X(e))&&l.isTracking(i)?l.get(i):0,c=Math.abs(s/U(a,"resistance",r)),d[i]=parseFloat(n(e,i))+z(s,c));return d}},Q=function(){(w=Y())&&(T=w.parseEase,E=w.utils.toArray,P=w.utils.getUnit,M=w.core.getCache,L=w.utils.clamp,N=w.core.getStyleSaver,D=w.core.reverting||function(){},k=T("power3"),_=k(.05),A=w.core.PropTween,w.config({resistance:100,unitFactors:{time:1e3,totalTime:1e3,progress:1e3,totalProgress:1e3}}),C=w.config(),w.registerPlugin(x),b=1)},J={version:"3.15.0",name:"inertia",register:function(e){w=e,Q()},init:function(e,t,n,r,o){b||Q();var i=X(e);if("auto"===t){if(!i)return void console.warn("No inertia tracking on "+e+". InertiaPlugin.track(target) first.");t=i.getAll()}this.styles=N&&"object"==typeof e.style&&N(e),this.target=e,this.tween=n,S=t;var a,s,l,c,u,d,p,f,h,g=e._gsap,v=g.get,m=t.duration,y=O(m),x=t.preventOvershoot||y&&0===m.overshoot,w=U(t,"resistance",C.resistance),T=R(m)?m:function(e,t,n,r,o,i){if(void 0===n&&(n=10),void 0===r&&(r=.2),void 0===o&&(o=1),void 0===i&&(i=0),"string"==typeof e&&(e=E(e)[0]),!e)return 0;var a,s,l,c,u,d,p,f,h,g,v=0,m=H,y=t.inertia||t,x=M(e).get,w=U(y,"resistance",C.resistance);for(a in g=Z(e,y,x,w),y)G[a]||(s=y[a],O(s)||((f=f||X(e))&&f.isTracking(a)?s=R(s)?{velocity:s}:{velocity:f.get(a)}:(c=+s||0,l=Math.abs(c/w))),O(s)&&(c=R(s.velocity)?s.velocity:(f=f||X(e))&&f.isTracking(a)?f.get(a):0,l=L(r,n,Math.abs(c/U(s,"resistance",w))),d=(u=parseFloat(x(e,a))||0)+z(c,l),"end"in s&&(s=$(s,g&&a in g?g:d,s.max,s.min,a,y.radius,c),i&&(S===t&&(S=y=q(t)),y[a]=K(s,y[a],"end"))),"max"in s&&d>+s.max+1e-10?(h=s.unitFactor||C.unitFactors[a]||1,(p=u>s.max&&s.min!==s.max||c*h>-15&&c*h<45?r+.1*(n-r):j(u,s.max,c))+o<m&&(m=p+o)):"min"in s&&d<+s.min-1e-10&&(h=s.unitFactor||C.unitFactors[a]||1,(p=u<s.min&&s.min!==s.max||c*h>-45&&c*h<15?r+.1*(n-r):j(u,s.min,c))+o<m&&(m=p+o)),p>v&&(v=p)),l>v&&(v=l));return v>m&&(v=m),v>n?n:v<r?r:v}(e,t,y&&m.max||10,y&&m.min||.2,y&&"overshoot"in m?+m.overshoot:x?0:1,!0);for(a in t=S,S=0,h=Z(e,t,v,w),t)G[a]||(s=t[a],B(s)&&(s=s(r,e,o)),R(s)?u=s:O(s)&&!isNaN(s.velocity)?u=+s.velocity:i&&i.isTracking(a)?u=i.get(a):console.warn("ERROR: No velocity was defined for "+e+" property: "+a),d=z(u,T),f=0,l=v(e,a),c=P(l),l=parseFloat(l),O(s)&&(p=l+d,"end"in s&&(s=$(s,h&&a in h?h:p,s.max,s.min,a,t.radius,u)),"max"in s&&+s.max<p?x||s.preventOvershoot?d=s.max-l:f=s.max-l-d:"min"in s&&+s.min>p