1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,54505,57788,76959,66820,63011,65091,22660,79444,69577,30162,83411,64440,65566,19928,60830,46791,80248,87022,21012,63074,33887,70596,60900,14229,79294,4169,60855,56512,97307,68e3,60140,96173,25791,86427,85983,32525,6840,87576,86579,17218,93787,44947,81261,99951,706,24463,30789,84049,67926,27677,77777,35636,53689,44966,t=>{"use strict";let e,i,n=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],s=new Set(n);t.s(["transformPropOrder",()=>n,"transformProps",()=>s],57788);let r=(t,e,i)=>i>e?e:i<t?t:i;t.s(["clamp",()=>r],76959);let o={test:t=>"number"==typeof t,parse:parseFloat,transform:t=>t},a={...o,transform:t=>r(0,1,t)},l={...o,default:1},h=t=>Math.round(1e5*t)/1e5,u=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu,c=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,d=(t,e)=>i=>!!("string"==typeof i&&c.test(i)&&i.startsWith(t)||e&&null!=i&&Object.prototype.hasOwnProperty.call(i,e)),m=(t,e,i)=>n=>{if("string"!=typeof n)return n;let[s,r,o,a]=n.match(u);return{[t]:parseFloat(s),[e]:parseFloat(r),[i]:parseFloat(o),alpha:void 0!==a?parseFloat(a):1}},p={...o,transform:t=>Math.round(r(0,255,t))},f={test:d("rgb","red"),parse:m("red","green","blue"),transform:({red:t,green:e,blue:i,alpha:n=1})=>"rgba("+p.transform(t)+", "+p.transform(e)+", "+p.transform(i)+", "+h(a.transform(n))+")"};t.s(["rgba",()=>f],66820);let g={test:d("#"),parse:function(t){let e="",i="",n="",s="";return t.length>5?(e=t.substring(1,3),i=t.substring(3,5),n=t.substring(5,7),s=t.substring(7,9)):(e=t.substring(1,2),i=t.substring(2,3),n=t.substring(3,4),s=t.substring(4,5),e+=e,i+=i,n+=n,s+=s),{red:parseInt(e,16),green:parseInt(i,16),blue:parseInt(n,16),alpha:s?parseInt(s,16)/255:1}},transform:f.transform};t.s(["hex",()=>g],63011);let v=t=>({test:e=>"string"==typeof e&&e.endsWith(t)&&1===e.split(" ").length,parse:parseFloat,transform:e=>`${e}${t}`}),y=v("deg"),x=v("%"),b=v("px"),w=v("vh"),A=v("vw"),T={...x,parse:t=>x.parse(t)/100,transform:t=>x.transform(100*t)};t.s(["degrees",()=>y,"percent",()=>x,"progressPercentage",()=>T,"px",()=>b,"vh",()=>w,"vw",()=>A],65091);let S={test:d("hsl","hue"),parse:m("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:i,alpha:n=1})=>"hsla("+Math.round(t)+", "+x.transform(h(e))+", "+x.transform(h(i))+", "+h(a.transform(n))+")"};t.s(["hsla",()=>S],22660);let C={test:t=>f.test(t)||g.test(t)||S.test(t),parse:t=>f.test(t)?f.parse(t):S.test(t)?S.parse(t):g.parse(t),transform:t=>"string"==typeof t?t:t.hasOwnProperty("red")?f.transform(t):S.transform(t),getAnimatableNone:t=>{let e=C.parse(t);return e.alpha=0,C.transform(e)}};t.s(["color",()=>C],79444);let P=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu,M="number",k="color",V=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function j(t){let e=t.toString(),i=[],n={color:[],number:[],var:[]},s=[],r=0,o=e.replace(V,t=>(C.test(t)?(n.color.push(r),s.push(k),i.push(C.parse(t))):t.startsWith("var(")?(n.var.push(r),s.push("var"),i.push(t)):(n.number.push(r),s.push(M),i.push(parseFloat(t))),++r,"${}")).split("${}");return{values:i,split:o,indexes:n,types:s}}function E(t){return j(t).values}function D(t){let{split:e,types:i}=j(t),n=e.length;return t=>{let s="";for(let r=0;r<n;r++)if(s+=e[r],void 0!==t[r]){let e=i[r];e===M?s+=h(t[r]):e===k?s+=C.transform(t[r]):s+=t[r]}return s}}let L=t=>"number"==typeof t?0:C.test(t)?C.getAnimatableNone(t):t,R={test:function(t){return isNaN(t)&&"string"==typeof t&&(t.match(u)?.length||0)+(t.match(P)?.length||0)>0},parse:E,createTransformer:D,getAnimatableNone:function(t){let e=E(t);return D(t)(e.map(L))}};t.s(["analyseComplexValue",()=>j,"complex",()=>R],69577);let B=new Set(["brightness","contrast","saturate","opacity"]);function F(t){let[e,i]=t.slice(0,-1).split("(");if("drop-shadow"===e)return t;let[n]=i.match(u)||[];if(!n)return t;let s=i.replace(n,""),r=+!!B.has(e);return n!==i&&(r*=100),e+"("+r+s+")"}let I=/\b([a-z-]*)\(.*?\)/gu,O={...R,getAnimatableNone:t=>{let e=t.match(I);return e?e.map(F).join(" "):t}},z={...o,transform:Math.round},U={borderWidth:b,borderTopWidth:b,borderRightWidth:b,borderBottomWidth:b,borderLeftWidth:b,borderRadius:b,borderTopLeftRadius:b,borderTopRightRadius:b,borderBottomRightRadius:b,borderBottomLeftRadius:b,width:b,maxWidth:b,height:b,maxHeight:b,top:b,right:b,bottom:b,left:b,inset:b,insetBlock:b,insetBlockStart:b,insetBlockEnd:b,insetInline:b,insetInlineStart:b,insetInlineEnd:b,padding:b,paddingTop:b,paddingRight:b,paddingBottom:b,paddingLeft:b,paddingBlock:b,paddingBlockStart:b,paddingBlockEnd:b,paddingInline:b,paddingInlineStart:b,paddingInlineEnd:b,margin:b,marginTop:b,marginRight:b,marginBottom:b,marginLeft:b,marginBlock:b,marginBlockStart:b,marginBlockEnd:b,marginInline:b,marginInlineStart:b,marginInlineEnd:b,fontSize:b,backgroundPositionX:b,backgroundPositionY:b,rotate:y,rotateX:y,rotateY:y,rotateZ:y,scale:l,scaleX:l,scaleY:l,scaleZ:l,skew:y,skewX:y,skewY:y,distance:b,translateX:b,translateY:b,translateZ:b,x:b,y:b,z:b,perspective:b,transformPerspective:b,opacity:a,originX:T,originY:T,originZ:b,zIndex:z,fillOpacity:a,strokeOpacity:a,numOctaves:z},N={...U,color:C,backgroundColor:C,outlineColor:C,fill:C,stroke:C,borderColor:C,borderTopColor:C,borderRightColor:C,borderBottomColor:C,borderLeftColor:C,filter:O,WebkitFilter:O},W=t=>N[t],G=()=>({translate:0,scale:1,origin:0,originPoint:0}),H=()=>({x:G(),y:G()}),_=()=>({min:0,max:0}),$=()=>({x:_(),y:_()});t.s(["createBox",()=>$,"createDelta",()=>H],30162);let q=t=>!!(t&&t.getVelocity);t.s(["isMotionValue",()=>q],83411);let K=new Set(["width","height","top","left","right","bottom",...n]);t.s(["positionalKeys",()=>K],64440);let Y=t=>e=>e.test(t),X=[o,b,x,y,A,w,{test:t=>"auto"===t,parse:t=>t}],Z=t=>X.find(Y(t));var J=t.i(47167);let Q=()=>{},tt=()=>{};J.default,t.s(["invariant",()=>tt,"warning",()=>Q],65566);let te=t=>e=>"string"==typeof e&&e.startsWith(t),ti=te("--"),tn=te("var(--"),ts=t=>!!tn(t)&&tr.test(t.split("/*")[0].trim()),tr=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function to(t){return"string"==typeof t&&t.split("/*")[0].includes("var(--")}t.s(["containsCSSVariable",()=>to,"isCSSVariableName",()=>ti,"isCSSVariableToken",()=>ts],19928);let ta=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u,tl=t=>180*t/Math.PI,th=t=>tc(tl(Math.atan2(t[1],t[0]))),tu={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:t=>(Math.abs(t[0])+Math.abs(t[3]))/2,rotate:th,rotateZ:th,skewX:t=>tl(Math.atan(t[1])),skewY:t=>tl(Math.atan(t[2])),skew:t=>(Math.abs(t[1])+Math.abs(t[2]))/2},tc=t=>((t%=360)<0&&(t+=360),t),td=t=>Math.sqrt(t[0]*t[0]+t[1]*t[1]),tm=t=>Math.sqrt(t[4]*t[4]+t[5]*t[5]),tp={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:td,scaleY:tm,scale:t=>(td(t)+tm(t))/2,rotateX:t=>tc(tl(Math.atan2(t[6],t[5]))),rotateY:t=>tc(tl(Math.atan2(-t[2],t[0]))),rotateZ:th,rotate:th,skewX:t=>tl(Math.atan(t[4])),skewY:t=>tl(Math.atan(t[1])),skew:t=>(Math.abs(t[1])+Math.abs(t[4]))/2};function tf(t){return+!!t.includes("scale")}function tg(t,e){let i,n;if(!t||"none"===t)return tf(e);let s=t.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);if(s)i=tp,n=s;else{let e=t.match(/^matrix\(([-\d.e\s,]+)\)$/u);i=tu,n=e}if(!n)return tf(e);let r=i[e],o=n[1].split(",").map(tv);return"function"==typeof r?r(o):o[r]}function tv(t){return parseFloat(t.trim())}
1let ty=t=>t===o||t===b,tx=new Set(["x","y","z"]),tb=n.filter(t=>!tx.has(t)),tw={width:({x:t},{paddingLeft:e="0",paddingRight:i="0"})=>t.max-t.min-parseFloat(e)-parseFloat(i),height:({y:t},{paddingTop:e="0",paddingBottom:i="0"})=>t.max-t.min-parseFloat(e)-parseFloat(i),top:(t,{top:e})=>parseFloat(e),left:(t,{left:e})=>parseFloat(e),bottom:({y:t},{top:e})=>parseFloat(e)+(t.max-t.min),right:({x:t},{left:e})=>parseFloat(e)+(t.max-t.min),x:(t,{transform:e})=>tg(e,"x"),y:(t,{transform:e})=>tg(e,"y")};tw.translateX=tw.x,tw.translateY=tw.y;let tA=t=>t;t.s(["noop",()=>tA],60830);let tT={};t.s(["MotionGlobalConfig",()=>tT],46791);let tS=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"],tC={value:null,addProjectionMetrics:null};function tP(t,e){let i=!1,n=!0,s={delta:0,timestamp:0,isProcessing:!1},r=()=>i=!0,o=tS.reduce((t,i)=>(t[i]=function(t,e){let i=new Set,n=new Set,s=!1,r=!1,o=new WeakSet,a={delta:0,timestamp:0,isProcessing:!1},l=0;function h(e){o.has(e)&&(u.schedule(e),t()),l++,e(a)}let u={schedule:(t,e=!1,r=!1)=>{let a=r&&s?i:n;return e&&o.add(t),a.has(t)||a.add(t),t},cancel:t=>{n.delete(t),o.delete(t)},process:t=>{if(a=t,s){r=!0;return}s=!0,[i,n]=[n,i],i.forEach(h),e&&tC.value&&tC.value.frameloop[e].push(l),l=0,i.clear(),s=!1,r&&(r=!1,u.process(t))}};return u}(r,e?i:void 0),t),{}),{setup:a,read:l,resolveKeyframes:h,preUpdate:u,update:c,preRender:d,render:m,postRender:p}=o,f=()=>{let r=tT.useManualTiming?s.timestamp:performance.now();i=!1,tT.useManualTiming||(s.delta=n?1e3/60:Math.max(Math.min(r-s.timestamp,40),1)),s.timestamp=r,s.isProcessing=!0,a.process(s),l.process(s),h.process(s),u.process(s),c.process(s),d.process(s),m.process(s),p.process(s),s.isProcessing=!1,i&&e&&(n=!1,t(f))};return{schedule:tS.reduce((e,r)=>{let a=o[r];return e[r]=(e,r=!1,o=!1)=>(!i&&(i=!0,n=!0,s.isProcessing||t(f)),a.schedule(e,r,o)),e},{}),cancel:t=>{for(let e=0;e<tS.length;e++)o[tS[e]].cancel(t)},state:s,steps:o}}t.s(["statsBuffer",()=>tC],80248);let{schedule:tM,cancel:tk,state:tV,steps:tj}=tP("u">typeof requestAnimationFrame?requestAnimationFrame:tA,!0);t.s(["cancelFrame",()=>tk,"frame",()=>tM,"frameData",()=>tV,"frameSteps",()=>tj],87022);let tE=new Set,tD=!1,tL=!1,tR=!1;function tB(){if(tL){let t=Array.from(tE).filter(t=>t.needsMeasurement),e=new Set(t.map(t=>t.element)),i=new Map;e.forEach(t=>{let e,n=(e=[],tb.forEach(i=>{let n=t.getValue(i);void 0!==n&&(e.push([i,n.get()]),n.set(+!!i.startsWith("scale")))}),e);n.length&&(i.set(t,n),t.render())}),t.forEach(t=>t.measureInitialState()),e.forEach(t=>{t.render();let e=i.get(t);e&&e.forEach(([e,i])=>{t.getValue(e)?.set(i)})}),t.forEach(t=>t.measureEndState()),t.forEach(t=>{void 0!==t.suspendedScrollY&&window.scrollTo(0,t.suspendedScrollY)})}tL=!1,tD=!1,tE.forEach(t=>t.complete(tR)),tE.clear()}function tF(){tE.forEach(t=>{t.readKeyframes(),t.needsMeasurement&&(tL=!0)})}function tI(){tR=!0,tF(),tB(),tR=!1}class tO{constructor(t,e,i,n,s,r=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...t],this.onComplete=e,this.name=i,this.motionValue=n,this.element=s,this.isAsync=r}scheduleResolve(){this.state="scheduled",this.isAsync?(tE.add(this),tD||(tD=!0,tM.read(tF),tM.resolveKeyframes(tB))):(this.readKeyframes(),this.complete())}readKeyframes(){let{unresolvedKeyframes:t,name:e,element:i,motionValue:n}=this;if(null===t[0]){let s=n?.get(),r=t[t.length-1];if(void 0!==s)t[0]=s;else if(i&&e){let n=i.readValue(e,r);null!=n&&(t[0]=n)}void 0===t[0]&&(t[0]=r),n&&void 0===s&&n.set(t[0])}for(let e=1;e<t.length;e++)t[e]??(t[e]=t[e-1])}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(t=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,t),tE.delete(this)}cancel(){"scheduled"===this.state&&(tE.delete(this),this.state="pending")}resume(){"pending"===this.state&&this.scheduleResolve()}}function tz(t,e){let i=W(t);return i!==O&&(i=R),i.getAnimatableNone?i.getAnimatableNone(e):void 0}t.s(["KeyframeResolver",()=>tO,"flushKeyframeResolvers",()=>tI],21012);
1let tU=new Set(["auto","none","0"]);class tN extends tO{constructor(t,e,i,n,s){super(t,e,i,n,s,!0)}readKeyframes(){let{unresolvedKeyframes:t,element:e,name:i}=this;if(!e||!e.current)return;super.readKeyframes();for(let i=0;i<t.length;i++){let n=t[i];if("string"==typeof n&&ts(n=n.trim())){let s=function t(e,i,n=1){tt(n<=4,`Max CSS variable fallback depth detected in property "${e}". This may indicate a circular fallback dependency.`,"max-css-var-depth");let[s,r]=function(t){let e=ta.exec(t);if(!e)return[,];let[,i,n,s]=e;return[`--${i??n}`,s]}(e);if(!s)return;let o=window.getComputedStyle(i).getPropertyValue(s);if(o){let t=o.trim();return/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(t)?parseFloat(t):t}return ts(r)?t(r,i,n+1):r}(n,e.current);void 0!==s&&(t[i]=s),i===t.length-1&&(this.finalKeyframe=n)}}if(this.resolveNoneKeyframes(),!K.has(i)||2!==t.length)return;let[n,s]=t,r=Z(n),o=Z(s);if(to(n)!==to(s)&&tw[i]){this.needsMeasurement=!0;return}if(r!==o)if(ty(r)&&ty(o))for(let e=0;e<t.length;e++){let i=t[e];"string"==typeof i&&(t[e]=parseFloat(i))}else tw[i]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){let{unresolvedKeyframes:t,name:e}=this,i=[];for(let e=0;e<t.length;e++)(null===t[e]||function(t){if("number"==typeof t)return 0===t;if(null===t)return!0;return"none"===t||"0"===t||/^0[^.\s]+$/u.test(t)}(t[e]))&&i.push(e);i.length&&function(t,e,i){let n,s=0;for(;s<t.length&&!n;){let e=t[s];"string"==typeof e&&!tU.has(e)&&j(e).values.length&&(n=t[s]),s++}if(n&&i)for(let s of e)t[s]=tz(i,n)}(t,i,e)}measureInitialState(){let{element:t,unresolvedKeyframes:e,name:i}=this;if(!t||!t.current)return;"height"===i&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=tw[i](t.measureViewportBox(),window.getComputedStyle(t.current)),e[0]=this.measuredOrigin;let n=e[e.length-1];void 0!==n&&t.getValue(i,n).jump(n,!1)}measureEndState(){let{element:t,name:e,unresolvedKeyframes:i}=this;if(!t||!t.current)return;let n=t.getValue(e);n&&n.jump(this.measuredOrigin,!1);let s=i.length-1,r=i[s];i[s]=tw[e](t.measureViewportBox(),window.getComputedStyle(t.current)),null!==r&&void 0===this.finalKeyframe&&(this.finalKeyframe=r),this.removedTransforms?.length&&this.removedTransforms.forEac
1h(([e,i])=>{t.getValue(e).set(i)}),this.resolveNoneKeyframes()}}let tW=t=>1e3*t,tG=t=>t/1e3;function tH(t,e){-1===t.indexOf(e)&&t.push(e)}function t_(t,e){let i=t.indexOf(e);i>-1&&t.splice(i,1)}t.s(["millisecondsToSeconds",()=>tG,"secondsToMilliseconds",()=>tW],63074),t.s(["addUniqueItem",()=>tH,"removeItem",()=>t_],33887);class t${constructor(){this.subscriptions=[]}add(t){return tH(this.subscriptions,t),()=>t_(this.subscriptions,t)}notify(t,e,i){let n=this.subscriptions.length;if(n)if(1===n)this.subscriptions[0](t,e,i);else for(let s=0;s<n;s++){let n=this.subscriptions[s];n&&n(t,e,i)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}function tq(t){let e;return()=>(void 0===e&&(e=t()),e)}t.s(["SubscriptionManager",()=>t$],70596),t.s(["memo",()=>tq],60900);let tK=tq(()=>void 0!==window.ScrollTimeline),tY=t=>null!==t;function tX(t,{repeat:e,repeatType:i="loop"},n,s=1){let r=t.filter(tY),o=s<0||e&&"loop"!==i&&e%2==1?0:r.length-1;return o&&void 0!==n?n:r[o]}t.s(["getFinalKeyframe",()=>tX],14229);class tZ{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(t=>{this.resolve=t})}notifyFinished(){this.resolve()}then(t,e){return this.finished.then(t,e)}}t.s(["WithPromise",()=>tZ],79294);let tJ={layout:0,mainThread:0,waapi:0};t.s(["activeAnimations",()=>tJ],4169);let tQ=t=>Array.isArray(t)&&"number"==typeof t[0];t.s(["isBezierDefinition",()=>tQ],60855);let t0={},t1=(i=tq(()=>{try{document.createElement("div").animate({opacity:0}
1,{easing:"linear(0, 1)"})}catch(t){return!1}return!0}),()=>t0.linearEasing??i()),t2=(t,e,i=10)=>{let n="",s=Math.max(Math.round(e/i),2);for(let e=0;e<s;e++)n+=Math.round(1e4*t(e/(s-1)))/1e4+", ";return`linear(${n.substring(0,n.length-2)})`};t.s(["generateLinearEasing",()=>t2],56512);let t3=([t,e,i,n])=>`cubic-bezier(${t}, ${e}, ${i}, ${n})`,t5={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:t3([0,.65,.55,1]),circOut:t3([.55,0,1,.45]),backIn:t3([.31,.01,.66,-.59]),backOut:t3([.33,1.53,.69,.99])};function t6(t){return"function"==typeof t&&"applyToOptions"in t}t.s(["isGenerator",()=>t6],97307);class t4 extends tZ{constructor(t){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!t)return;const{element:e,name:i,keyframes:n,pseudoElement:s,allowFlatten:r=!1,finalKeyframe:o,onComplete:a}=t;this.isPseudoElement=!!s,this.allowFlatten=r,this.options=t,tt("string"!=typeof t.type,'Mini animate() doesn\'t support "type" as a string.',"mini-spring");const l=function({type:t,...e}){return t6(t)&&t1()?t.applyToOptions(e):(e.duration??(e.duration=300),e.ease??(e.ease="easeOut"),e)}(t);this.animation=function(t,e,i,{delay:n=0,duration:s=300,repeat:r=0,repeatType:o="loop",ease:a="easeOut",times:l}={},h){let u={[e]:i};l&&(u.offset=l);let c=function t(e,i){if(e)return"function"==typeof e?t1()?t2(e,i):"ease-out":tQ(e)?t3(e):Array.isArray(e)?e.map(e=>t(e,i)||t5.easeOut):t5[e]}(a,s);Array.isArray(c)&&(u.easing=c),tC.value&&tJ.waapi++;let d={delay:n,duration:s,easing:Array.isArray(c)?"linear":c,fill:"both",iterations:r+1,direction:"reverse"===o?"alternate":"normal"};h&&(d.pseudoElement=h);let m=t.animate(u,d);return tC.value&&m.finished.finally(()=>{tJ.waapi--}),m}(e,i,n,l,s),!1===l.autoplay&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!s){let t=tX(n,this.options,o,this.speed);this.updateMotionValue?this.updateMotionValue(t):i.startsWith("--")?e.style.setProperty(i,t):e.style[i]=t,this.animation.cancel()}a?.(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),"finished"===this.state&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch(t){}}stop(){if(this.isStopped)return;this.isStopped=!0;let{state:t}=this;"idle"!==t&&"finished"!==t&&(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){let t=this.options?.element;!this.isPseudoElement&&t?.isConnected&&this.animation.commitStyles?.()}get duration(){return tG(Number(this.animation.effect?.getComputedTiming?.().duration||0))}get iterationDuration(){let{delay:t=0}=this.options||{};return this.duration+tG(t)}get time(){return tG(Number(this.animation.currentTime)||0)}set time(t){this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=tW(t)}get speed(){return this.animation.playbackRate}set speed(t){t<0&&(this.finishedTime=null),this.animation.playbackRate=t}get state(){return null!==this.finishedTime?"finished":this.animation.playState}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(t){this.manualStartTime=this.animation.startTime=t}attachTimeline({timeline:t,observe:e}){return(this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,t&&tK())?(this.animation.timeline=t,tA):e(this)}}t.s(["NativeAnimation",()=>t4],68e3);let t7=new Set(["opacity","clipPath","filter","transform"]),{schedule:t8}=tP(queueMicrotask,!1);function t9(){e=void 0}t.s(["microtask",()=>t8],60140);let et={now:()=>(void 0===e&&et.set(tV.isProcessing||tT.useManualTiming?tV.timestamp:performance.now()),e),set:t=>{e=t,queueMicrotask(t9)}};function ee(t,e){return e?1e3/e*t:0}t.s(["time",()=>et],96173),t.s(["velocityPerSecond",()=>ee],25791);let ei={current:void 0};class en{constructor(t,e={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=t=>{let e=et.now();if(this.updatedAt!==e&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(t),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(let t of this.dependents)t.dirty()},this.hasAnimated=!1,this.setCurrent(t),this.owner=e.owner}setCurrent(t){this.current=t,this.updatedAt=et.now(),null===this.canTrackVelocity&&void 0!==t&&(this.canTrackVelocity=!isNaN(parseFloat(this.current)))}setPrevFrameValue(t=this.current){this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt}onChange(t){return this.on("change",t)}on(t,e){this.events[t]||(this.events[t]=new t$);let i=this.events[t].add(e);return"change"===t?()=>{i(),tM.read(()=>{this.events.change.getSize()||this.stop()})}:i}clearListeners(){for(let t in this.events)this.events[t].clear()}attach(t,e){this.passiveEffect=t,this.stopPassiveEffect=e}set(t){this.passiveEffect?this.passiveEffect(t,this.updateAndNotify):this.updateAndNotify(t)}setWithVelocity(t,e,i){this.set(e),this.prev=void 0,this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt-i}jump(t,e=!0){this.updateAndNotify(t),this.prev=t,this.prevUpdatedAt=this.prevFrameValue=void 0,e&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(t){this.dependents||(this.dependents=new Set),this.dependents.add(t)}removeDependent(t){this.dependents&&this.dependents.delete(t)}get(){return ei.current&&ei.current.push(this),this.current}getPrevious(){return this.prev}
1getVelocity(){let t=et.now();if(!this.canTrackVelocity||void 0===this.prevFrameValue||t-this.updatedAt>30)return 0;let e=Math.min(this.updatedAt-this.prevUpdatedAt,30);return ee(parseFloat(this.current)-parseFloat(this.prevFrameValue),e)}start(t){return this.stop(),new Promise(e=>{this.hasAnimated=!0,this.animation=t(e),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function es(t,e){return new en(t,e)}t.s(["collectMotionValues",()=>ei,"motionValue",()=>es],86427);let er=[...X,C,R],eo=new WeakMap;function ea(t){return null!==t&&"object"==typeof t&&"function"==typeof t.start}function el(t){return"string"==typeof t||Array.isArray(t)}t.s(["isAnimationControls",()=>ea],85983),t.s(["isVariantLabel",()=>el],32525);let eh=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],eu=["initial",...eh];function ec(t){return ea(t.animate)||eu.some(e=>el(t[e]))}function ed(t){return!!(ec(t)||t.variants)}t.s(["variantPriorityOrder",()=>eh,"variantProps",()=>eu],6840),t.s(["isControllingVariants",()=>ec,"isVariantNode",()=>ed],87576);let em={current:null},ep={current:!1},ef="u">typeof window;function eg(t){let e=[{},{}];return t?.values.forEach((t,i)=>{e[0][i]=t.get(),e[1][i]=t.getVelocity()}),e}function ev(t,e,i,n){if("function"==typeof e){let[s,r]=eg(n);e=e(void 0!==i?i:t.custom,s,r)}if("string"==typeof e&&(e=t.variants&&t.variants[e]),"function"==typeof e){let[s,r]=eg(n);e=e(void 0!==i?i:t.custom,s,r)}return e}t.s(["resolveVariantFromProps",()=>ev],86579);let ey=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"],ex={};function eb(t){ex=t}function ew(){return ex}class eA{scrapeMotionValuesFromProps(t,e,i){return{}}constructor({parent:t,props:e,presenceContext:i,reducedMotionConfig:n,skipAnimations:s,blockInitialAnimation:r,visualState:o},a={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.shouldSkipAnimations=!1,this.values=new Map,this.KeyframeResolver=tO,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.hasBeenMounted=!1,this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{let t=et.now();this.renderScheduledAt<t&&(this.renderScheduledAt=t,tM.render(this.render,!1,!0))};const{latestValues:l,renderState:h}=o;this.latestValues=l,this.baseTarget={...l},this.initialValues=e.initial?{...l}:{},this.renderState=h,this.parent=t,this.props=e,this.presenceContext=i,this.depth=t?t.depth+1:0,this.reducedMotionConfig=n,this.skipAnimationsConfig=s,this.options=a,this.blockInitialAnimation=!!r,this.isControllingVariants=ec(e),this.isVariantNode=ed(e),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(t&&t.current);const{willChange:u,...c}=this.scrapeMotionValuesFromProps(e,{},this);for(const t in c){const e=c[t];void 0!==l[t]&&q(e)&&e.set(l[t])}}mount(t){if(this.hasBeenMounted)for(let t in this.initialValues)this.values.get(t)?.jump(this.initialValues[t]),this.latestValues[t]=this.initialValues[t];this.current=t,eo.set(t,this),this.projection&&!this.projection.instance&&this.projection.mount(t),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((t,e)=>this.bindToMotionValue(e,t)),"never"===this.reducedMotionConfig?this.shouldReduceMotion=!1:"always"===this.reducedMotionConfig?this.shouldReduceMotion=!0:(ep.current||function(){if(ep.current=!0,ef)if(window.matchMedia){let t=window.matchMedia("(prefers-reduced-motion)"),e=()=>em.current=t.matches;t.addEventListener("change",e),e()}else em.current=!1}(),this.shouldReduceMotion=em.current),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,this.parent?.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){for(let t in this.projection&&this.projection.unmount(),tk(this.notifyUpdate),tk(this.render),this.valueSubscriptions.forEach(t=>t()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this),this.events)this.events[t].clear();for(let t in this.features){let e=this.features[t];e&&(e.unmount(),e.isMounted=!1)}this.current=null}addChild(t){this.children.add(t),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(t)}removeChild(t){this.children.delete(t),this.enteringChildren&&this.enteringChildren.delete(t)}bindToMotionValue(t,e){let i;if(this.valueSubscriptions.has(t)&&this.valueSubscriptions.get(t)(),e.accelerate&&t7.has(t)&&this.current instanceof HTMLElement){let{factory:i,keyframes:n,times:s,ease:r,duration:o}=e.accelerate,a=new t4({element:this.current,name:t,keyframes:n,times:s,ease:r,duration:tW(o)}),l=i(a);this.valueSubscriptions.set(t,()=>{l(),a.cancel()});return}let n=s.has(t);n&&this.onBindTransform&&this.onBindTransform();let r=e.on("change",e=>{this.latestValues[t]=e,this.props.onUpdate&&tM.preRender(this.notifyUpdate),n&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});"u">typeof window&&window.MotionCheckAppearSync&&(i=window.MotionCheckAppearSync(this,t,e)),this.valueSubscriptions.set(t,()=>{r(),i&&i(),e.owner&&e.stop()})}sortNodePosition(t){return this.current&&this.sortInstanceNodePosition&&this.type===t.type?this.sortInstanceNodePosition(this.current,t.current):0}updateFeatures(){let t="animation";for(t in ex){let e=ex[t];if(!e)continue;let{isEnabled:i,Feature:n}=e;if(!this.features[t]&&n&&i(this.props)&&(this.features[t]=new n(this)),this.features[t]){let e=this.features[t];
1e.isMounted?e.update():(e.mount(),e.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):$()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,e){this.latestValues[t]=e}update(t,e){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=e;for(let e=0;e<ey.length;e++){let i=ey[e];this.propEventSubscriptions[i]&&(this.propEventSubscriptions[i](),delete this.propEventSubscriptions[i]);let n=t["on"+i];n&&(this.propEventSubscriptions[i]=this.on(i,n))}this.prevMotionValues=function(t,e,i){for(let n in e){let s=e[n],r=i[n];if(q(s))t.addValue(n,s);else if(q(r))t.addValue(n,es(s,{owner:t}));else if(r!==s)if(t.hasValue(n)){let e=t.getValue(n);!0===e.liveStyle?e.jump(s):e.hasAnimated||e.set(s)}else{let e=t.getStaticValue(n);t.addValue(n,es(void 0!==e?e:s,{owner:t}))}}for(let n in i)void 0===e[n]&&t.removeValue(n);return e}(this,this.scrapeMotionValuesFromProps(t,this.prevProps||{},this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(t){return this.props.variants?this.props.variants[t]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}addVariantChild(t){let e=this.getClosestVariantNode();if(e)return e.variantChildren&&e.variantChildren.add(t),()=>e.variantChildren.delete(t)}addValue(t,e){let i=this.values.get(t);e!==i&&(i&&this.removeValue(t),this.bindToMotionValue(t,e),this.values.set(t,e),this.latestValues[t]=e.get())}removeValue(t){this.values.delete(t);let e=this.valueSubscriptions.get(t);e&&(e(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,e){if(this.props.values&&this.props.values[t])return this.props.values[t];let i=this.values.get(t);return void 0===i&&void 0!==e&&(i=es(null===e?void 0:e,{owner:this}),this.addValue(t,i)),i}readValue(t,e){let i=void 0===this.latestValues[t]&&this.current?this.getBaseTargetFromProps(this.props,t)??this.readValueFromInstance(this.current,t,this.options):this.latestValues[t];if(null!=i){let n,s;if("string"==typeof i&&(n=i,/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(n)||(s=i,/^0[^.\s]+$/u.test(s))))i=parseFloat(i);else{let n;n=i,!er.find(Y(n))&&R.test(e)&&(i=tz(t,e))}this.setBaseTarget(t,q(i)?i.get():i)}return q(i)?i.get():i}setBaseTarget(t,e){this.baseTarget[t]=e}getBaseTarget(t){let e,{initial:i}=this.props;if("string"==typeof i||"object"==typeof i){let n=ev(this.props,i,this.presenceContext?.custom);n&&(e=n[t])}if(i&&void 0!==e)return e;let n=this.getBaseTargetFromProps(this.props,t);return void 0===n||q(n)?void 0!==this.initialValues[t]&&void 0===e?void 0:this.baseTarget[t]:n}on(t,e){return this.events[t]||(this.events[t]=new t$),this.events[t].add(e)}notify(t,...e){this.events[t]&&this.events[t].notify(...e)}scheduleRenderMicrotask(){t8.render(this.render)}}t.s(["VisualElement",()=>eA,"getFeatureDefinitions",()=>ew,"setFeatureDefinitions",()=>eb],17218);class eT extends eA{constructor(){super(...arguments),this.KeyframeResolver=tN}sortInstanceNodePosition(t,e){return 2&t.compareDocumentPosition(e)?1:-1}getBaseTargetFromProps(t,e){let i=t.style;return i?i[e]:void 0}removeValueFromRenderState(t,{vars:e,style:i}){delete e[t],delete i[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);let{children:t}=this.props;q(t)&&(this.childSubscription=t.on("change",t=>{this.current&&(this.current.textContent=`${t}`)}))}}function eS(t){return t.replace(/([A-Z])/g,t=>`-${t.toLowerCase()}`)}t.s(["camelToDash",()=>eS],93787);let eC=(t,e)=>e&&"number"==typeof t?e.transform(t):t,eP={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},eM=n.length;function ek(t,e,i){let{style:r,vars:o,transformOrigin:a}=t,l=!1,h=!1;for(let t in e){let i=e[t];if(s.has(t)){l=!0;continue}if(ti(t)){o[t]=i;continue}{let e=eC(i,U[t]);t.startsWith("origin")?(h=!0,a[t]=e):r[t]=e}}
1if(!e.transform&&(l||i?r.transform=function(t,e,i){let s="",r=!0;for(let o=0;o<eM;o++){let a=n[o],l=t[a];if(void 0===l)continue;let h=!0;if("number"==typeof l)h=l===+!!a.startsWith("scale");else{let t=parseFloat(l);h=a.startsWith("scale")?1===t:0===t}if(!h||i){let t=eC(l,U[a]);if(!h){r=!1;let e=eP[a]||a;s+=`${e}(${t}) `}i&&(e[a]=t)}}return s=s.trim(),i?s=i(e,r?"":s):r&&(s="none"),s}(e,t.transform,i):r.transform&&(r.transform="none")),h){let{originX:t="50%",originY:e="50%",originZ:i=0}=a;r.transformOrigin=`${t} ${e} ${i}`}}t.s(["buildHTMLStyles",()=>ek],44947);let eV={offset:"stroke-dashoffset",array:"stroke-dasharray"},ej={offset:"strokeDashoffset",array:"strokeDasharray"},eE=["offsetDistance","offsetPath","offsetRotate","offsetAnchor"];function eD(t,{attrX:e,attrY:i,attrScale:n,pathLength:s,pathSpacing:r=1,pathOffset:o=0,...a},l,h,u){if(ek(t,a,h),l){t.style.viewBox&&(t.attrs.viewBox=t.style.viewBox);return}t.attrs=t.style,t.style={};let{attrs:c,style:d}=t;for(let t of(c.transform&&(d.transform=c.transform,delete c.transform),(d.transform||c.transformOrigin)&&(d.transformOrigin=c.transformOrigin??"50% 50%",delete c.transformOrigin),d.transform&&(d.transformBox=u?.transformBox??"fill-box",delete c.transformBox),eE))void 0!==c[t]&&(d[t]=c[t],delete c[t]);void 0!==e&&(c.x=e),void 0!==i&&(c.y=i),void 0!==n&&(c.scale=n),void 0!==s&&function(t,e,i=1,n=0,s=!0){t.pathLength=1;let r=s?eV:ej;t[r.offset]=`${-n}`,t[r.array]=`${e} ${i}`}(c,s,r,o,!1)}t.s(["buildSVGAttrs",()=>eD],81261);let eL=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),eR=t=>"string"==typeof t&&"svg"===t.toLowerCase();function eB(t,{style:e,vars:i},n,s){let r,o=t.style;for(r in e)o[r]=e[r];for(r in s?.applyProjectionStyles(o,n),i)o.setProperty(r,i[r])}function eF(t,e){return e.max===e.min?0:t/(e.max-e.min)*100}t.s(["isSVGTag",()=>eR],99951);let eI={correct:(t,e)=>{if(!e.target)return t;if("string"==typeof t)if(!b.test(t))return t;else t=parseFloat(t);let i=eF(t,e.target.x),n=eF(t,e.target.y);return`${i}% ${n}%`}},eO=(t,e,i)=>t+(e-t)*i;t.s(["mixNumber",()=>eO],706);let ez={borderRadius:{...eI,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:eI,borderTopRightRadius:eI,borderBottomLeftRadius:eI,borderBottomRightRadius:eI,boxShadow:{correct:(t,{treeScale:e,projectionDelta:i})=>{let n=R.parse(t);if(n.length>5)return t;let s=R.createTransformer(t),r=+("number"!=typeof n[0]),o=i.x.scale*e.x,a=i.y.scale*e.y;n[0+r]/=o,n[1+r]/=a;let l=eO(o,a,.5);return"number"==typeof n[2+r]&&(n[2+r]/=l),"number"==typeof n[3+r]&&(n[3+r]/=l),s(n)}}};function eU(t,{layout:e,layoutId:i}){return s.has(t)||t.startsWith("origin")||(e||void 0!==i)&&(!!ez[t]||"opacity"===t)}function eN(t,e,i){let n=t.style,s=e?.style,r={};if(!n)return r;for(let e in n)(q(n[e])||s&&q(s[e])||eU(e,t)||i?.getValue(e)?.liveStyle!==void 0)&&(r[e]=n[e]);return r}function eW(t,e,i){let s=eN(t,e,i);for(let i in t)(q(t[i])||q(e[i]))&&(s[-1!==n.indexOf(i)?"attr"+i.charAt(0).toUpperCase()+i.substring(1):i]=t[i]);return s}t.s(["scaleCorrectors",()=>ez],24463),t.s(["isForcedMotionValue",()=>eU],30789),t.s(["scrapeMotionValuesFromProps",()=>eN],84049),t.s(["scrapeMotionValuesFromProps",()=>eW],67926);class eG extends eT{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=$}getBaseTargetFromProps(t,e){return t[e]}readValueFromInstance(t,e){if(s.has(e)){let t=W(e);return t&&t.default||0}return e=eL.has(e)?e:eS(e),t.getAttribute(e)}scrapeMotionValuesFromProps(t,e,i){return eW(t,e,i)}build(t,e,i){eD(t,e,this.isSVGTag,i.transformTemplate,i.style)}renderInstance(t,e,i,n){for(let i in eB(t,e,void 0,n),e.attrs)t.setAttribute(eL.has(i)?i:eS(i),e.attrs[i])}mount(t){this.isSVGTag=eR(t.tagName),super.mount(t)}}function eH({top:t,left:e,right:i,bottom:n}){return{x:{min:e,max:i},y:{min:t,max:n}}}function e_({x:t,y:e}){return{top:e.min,right:t.max,bottom:e.max,left:t.min}}function e$(t,e){if(!e)return t;let i=e({x:t.left,y:t.top}),n=e({x:t.right,y:t.bottom});return{top:i.y,left:i.x,bottom:n.y,right:n.x}}function eq(t){return void 0===t||1===t}function eK({scale:t,scaleX:e,scaleY:i}){return!eq(t)||!eq(e)||!eq(i)}function eY(t){return eK(t)||eX(t)||t.z||t.rotate||t.rotateX||t.rotateY||t.skewX||t.skewY}function eX(t){var e,i;return(e=t.x)&&"0%"!==e||(i=t.y)&&"0%"!==i}function eZ(t,e,i){return i+e*(t-i)}function eJ(t,e,i,n,s){return void 0!==s&&(t=n+s*(t-n)),n+i*(t-n)+e}function eQ(t,e=0,i=1,n,s){t.min=eJ(t.min,e,i,n,s),t.max=eJ(t.max,e,i,n,s)}function e0(t,{x:e,y:i}){eQ(t.x,e.translate,e.scale,e.originPoint),eQ(t.y,i.translate,i.scale,i.originPoint)}function e1(t,e,i,n=!1){let s,r,o=i.length;if(o){e.x=e.y=1;for(let a=0;a<o;a++){r=(s=i[a]).projectionDelta;let{visualElement:o}=s.options;(!o||!o.props.style||"contents"!==o.props.style.display)&&(n&&s.options.layoutScroll&&s.scroll&&s!==s.root&&e5(t,{x:-s.scroll.offset.x,y:-s.scroll.offset.y}),r&&(e.x*=r.x.scale,e.y*=r.y.scale,e0(t,r)),n&&eY(s.latestValues)&&e5(t,s.latestValues))}e.x<1.0000000000001&&e.x>.999999999999&&(e.x=1),e.y<1.0000000000001&&e.y>.999999999999&&(e.y=1)}}function e2(t,e){t.min=t.min+e,t.max=t.max+e}function e3(t,e,i,n,s=.5){let r=eO(t.min,t.max,s);eQ(t,e,i,r,n)}function e5(t,e){e3(t.x,e.x,e.scaleX,e.scale,e.originX),e3(t.y,e.y,e.scaleY,e.scale,e.originY)}function e6(t,e){return eH(e$(t.getBoundingClientRect(),e))}function e4(t,e,i){let n=e6(t,i),{scroll:s}=e;return s&&(e2(n.x,s.offset.x),e2(n.y,s.offset.y)),n}t.s(["convertBoundingBoxToBox",()=>eH,"convertBoxToBoundingBox",()=>e_,"transformBoxPoints",()=>e$],27677),t.s(["has2DTranslate",()=>eX,"hasScale",()=>eK,"hasTransform",()=>eY],77777),t.s(["applyBoxDelta",()=>e0,"applyTreeDeltas",()=>e1,"scalePoint",()=>eZ,"transformBox",()=>e5,"translateAxis",()=>e2],35636),t.s(["measurePageBox",()=>e4,"measureViewportBox",()=>e6],53689);class e7 extends eT{constructor(){super(...arguments),this.type="html",this.renderInstance=eB}readValueFromInstance(t,e){if(s.has(e))return this.projection?.isProjecting?tf(e):((t,e)=>{let{transform:i="none"}=getComputedStyle(t);return tg(i,e)})(t,e);{let i=window.getComputedStyle(t),n=(ti(e)?i.getPropertyValue(e):i[e])||0;return"string"==typeof n?n.trim():n}}measureInstanceViewportBox(t,{transformPagePoint:e}){return e6(t,e)}build(t,e,i){ek(t,e,i.transformTemplate)}
1scrapeMotionValuesFromProps(t,e,i){return eN(t,e,i)}}var e8=t.i(71645);let e9=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function it(t){if("string"!=typeof t||t.includes("-"));else if(e9.indexOf(t)>-1||/[A-Z]/u.test(t))return!0;return!1}t.s(["isSVGComponent",()=>it],44966);let ie=(t,e)=>e.isSVG??it(t)?new eG(e):new e7(e,{allowProjection:t!==e8.Fragment});t.s(["createDomVisualElement",()=>ie],54505)},31178,t=>{"use strict";let e=(0,t.i(71645).createContext)({});t.s(["LayoutGroupContext",()=>e])},48070,t=>{"use strict";let e=(0,t.i(71645).createContext)({strict:!1});t.s(["LazyContext",()=>e])},37806,t=>{"use strict";let e=(0,t.i(71645).createContext)({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"});t.s(["MotionConfigContext",()=>e])},88291,82474,86549,11587,8576,30665,33871,t=>{"use strict";var e,i=t.i(71645);let n=(0,i.createContext)({});t.s(["MotionContext",()=>n],88291);var s=t.i(87576),r=t.i(32525);function o(t){let{initial:e,animate:o}=function(t,e){if((0,s.isControllingVariants)(t)){let{initial:e,animate:i}=t;return{initial:!1===e||(0,r.isVariantLabel)(e)?e:void 0,animate:(0,r.isVariantLabel)(i)?i:void 0}}return!1!==t.inherit?e:{}}(t,(0,i.useContext)(n));return(0,i.useMemo)(()=>({initial:e,animate:o}),[a(e),a(o)])}function a(t){return Array.isArray(t)?t.join(" "):t}t.s(["useCreateMotionContext",()=>o],82474);var l=t.i(83411),h=t.i(30789),u=t.i(44947);let c=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function d(t,e,i){for(let n in e)(0,l.isMotionValue)(e[n])||(0,h.isForcedMotionValue)(n,i)||(t[n]=e[n])}t.s(["createHtmlRenderState",()=>c],86549);var m=t.i(81261),p=t.i(99951);let f=()=>({...c(),attrs:{}});t.s(["createSvgRenderState",()=>f],11587);let g=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","propagate","ignoreStrict","viewport"]);function v(t){return t.startsWith("while")||t.startsWith("drag")&&"draggable"!==t||t.startsWith("layout")||t.startsWith("onTap")||t.startsWith("onPan")||t.startsWith("onLayout")||g.has(t)}let y=t=>!v(t);try{e=(()=>{let t=Error("Cannot find module '@emotion/is-prop-valid'");throw t.code="MODULE_NOT_FOUND",t})().default,"function"==typeof e&&(y=t=>t.startsWith("on")?!v(t):e(t))}catch{}var x=t.i(44966);function b(t,e,n,{latestValues:s},r,o=!1,a){let h=(a??(0,x.isSVGComponent)(t)?function(t,e,n,s){let r=(0,i.useMemo)(()=>{let i=f();return(0,m.buildSVGAttrs)(i,e,(0,p.isSVGTag)(s),t.transformTemplate,t.style),{...i.attrs,style:{...i.style}}},[e]);if(t.style){let e={};d(e,t.style,t),r.style={...e,...r.style}}return r}:function(t,e){let n,s,r={},o=(n=t.style||{},d(s={},n,t),Object.assign(s,function({transformTemplate:t},e){return(0,i.useMemo)(()=>{let i=c();return(0,u.buildHTMLStyles)(i,e,t),Object.assign({},i.vars,i.style)},[e])}(t,e)),s);return t.drag&&!1!==t.dragListener&&(r.draggable=!1,o.userSelect=o.WebkitUserSelect=o.WebkitTouchCallout="none",o.touchAction=!0===t.drag?"none":`pan-${"x"===t.drag?"y":"x"}`),void 0===t.tabIndex&&(t.onTap||t.onTapStart||t.whileTap)&&(r.tabIndex=0),r.style=o,r})(e,s,r,t),g=function(t,e,i){let n={};for(let s in t)("values"!==s||"object"!=typeof t.values)&&(y(s)||!0===i&&v(s)||!e&&!v(s)||t.draggable&&s.startsWith("onDrag"))&&(n[s]=t[s]);return n}(e,"string"==typeof t,o),w=t!==i.Fragment?{...g,...h,ref:n}:{},{children:A}=e,T=(0,i.useMemo)(()=>(0,l.isMotionValue)(A)?A.get():A,[A]);return(0,i.createElement)(t,{...w,children:T})}t.s(["useRender",()=>b],8576);var w=t.i(84049);function A(t){return(0,l.isMotionValue)(t)?t.get():t}t.s(["scrapeHTMLMotionValuesFromProps",()=>w.scrapeMotionValuesFromProps],30665),t.s(["resolveMotionValue",()=>A],33871)},21476,t=>{"use strict";let e=(0,t.i(71645).createContext)(null);t.s(["PresenceContext",()=>e])},47414,t=>{"use strict";var e=t.i(71645);function i(t){let i=(0,e.useRef)(null);return null===i.current&&(i.current=t()),i.current}t.s(["useConstant",()=>i])},11805,1664,t=>{"use strict";var e=t.i(30665),i=t.i(33871),n=t.i(87576),s=t.i(85983),r=t.i(86579),o=t.i(
171645),a=t.i(88291),l=t.i(21476),h=t.i(47414);let u=t=>(e,u)=>{let c=(0,o.useContext)(a.MotionContext),d=(0,o.useContext)(l.PresenceContext),m=()=>(function({scrapeMotionValuesFromProps:t,createRenderState:e},o,a,l){return{latestValues:function(t,e,o,a){let l={},h=a(t,{});for(let t in h)l[t]=(0,i.resolveMotionValue)(h[t]);let{initial:u,animate:c}=t,d=(0,n.isControllingVariants)(t),m=(0,n.isVariantNode)(t);e&&m&&!d&&!1!==t.inherit&&(void 0===u&&(u=e.initial),void 0===c&&(c=e.animate));let p=!!o&&!1===o.initial,f=(p=p||!1===u)?c:u;if(f&&"boolean"!=typeof f&&!(0,s.isAnimationControls)(f)){let e=Array.isArray(f)?f:[f];for(let i=0;i<e.length;i++){let n=(0,r.resolveVariantFromProps)(t,e[i]);if(n){let{transitionEnd:t,transition:e,...i}=n;for(let t in i){let e=i[t];if(Array.isArray(e)){let t=p?e.length-1:0;e=e[t]}null!==e&&(l[t]=e)}for(let e in t)l[e]=t[e]}}}return l}(o,a,l,t),renderState:e()}})(t,e,c,d);return u?m():(0,h.useConstant)(m)};var c=t.i(86549);let d=u({scrapeMotionValuesFromProps:e.scrapeHTMLMotionValuesFromProps,createRenderState:c.createHtmlRenderState});t.s(["useHTMLVisualState",()=>d],11805);var m=t.i(67926),m=m,p=t.i(11587);let f=u({scrapeMotionValuesFromProps:m.scrapeMotionValuesFromProps,createRenderState:p.createSvgRenderState});t.s(["useSVGVisualState",()=>f],1664)},92936,t=>{"use strict";let e="u">typeof window;t.s(["isBrowser",()=>e])},76948,13565,21967,83640,35043,4035,25522,t=>{"use strict";var e=t.i(17218);let i={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},n=!1;function s(){return!function(){if(n)return;let t={};for(let e in i)t[e]={isEnabled:t=>i[e].some(e=>!!t[e])};(0,e.setFeatureDefinitions)(t),n=!0}(),(0,e.getFeatureDefinitions)()}function r(t){let i=s();for(let e in t)i[e]={...i[e],...t[e]};(0,e.setFeatureDefinitions)(i)}t.s(["getInitializedFeatureDefinitions",()=>s],76948),t.s(["loadFeatures",()=>r],13565);let o=Symbol.for("motionComponentSymbol");t.s(["motionComponentSymbol",()=>o],21967);var a=t.i(71645);function l(t,e,i){let n=(0,a.useRef)(i);(0,a.useInsertionEffect)(()=>{n.current=i});let s=(0,a.useRef)(null);return(0,a.useCallback)(i=>{i&&t.onMount?.(i),e&&(i?e.mount(i):e.unmount());let r=n.current;if("function"==typeof r)if(i){let t=r(i);"function"==typeof t&&(s.current=t)}else s.current?(s.current(),s.current=null):r(i);else r&&(r.current=i)},[e])}t.s(["useMotionRef",()=>l],83640);let h="data-"+(0,t.i(93787).camelToDash)("framerAppearId");t.s(["optimizedAppearDataAttribute",()=>h],35043);let u=(0,a.createContext)({});function c(t){return t&&"object"==typeof t&&Object.prototype.hasOwnProperty.call(t,"current")}t.s(["SwitchLayoutGroupContext",()=>u],4035),t.s(["isRefObject",()=>c],25522)},74008,t=>{"use strict";var e=t.i(71645);let i=t.i(92936).isBrowser?e.useLayoutEffect:e.useEffect;t.s(["useIsomorphicLayoutEffect",()=>i])},7051,42098,87333,80538,16896,38638,91559,83920,44230,83352,39011,23070,55559,19880,82774,39676,37541,52101,t=>{"use strict";t.i(47167);var e=t.i(43476),i=t.i(71645),n=t.i(31178),s=t.i(48070),r=t.i(37806),o=t.i(88291),a=t.i(82474),l=t.i(8576),h=t.i(44966),u=t.i(11805),c=t.i(1664),d=t.i(92936),m=t.i(76948),p=t.i(13565),f=t.i(21967),g=t.i(83640),v=t.i(35043),y=t.i(21476),x=t.i(4035),b=t.i(25522),w=t.i(74008);function A(t,{forwardMotionProps:T=!1,type:S}={},C,P){C&&(0,p.loadFeatures)(C);let M=S?"svg"===S:(0,h.isSVGComponent)(t),k=M?c.useSVGVisualState:u.useHTMLVisualState;function V(h,u){let c,p={...(0,i.useContext)(r.MotionConfigContext),...h,layoutId:function({layoutId:t}){let e=(0,i.useContext)(n.LayoutGroupContext).id;return e&&void 0!==t?e+"-"+t:t}(h)},{isStatic:f}=p,A=(0,a.useCreateMotionContext)(h),S=k(h,f);if(!f&&d.isBrowser){(0,i.useContext)(s.LazyContext).strict;let e=function(t){let{drag:e,layout:i}=(0,m.getInitializedFeatureDefinitions)();if(!e&&!i)return{};let n={...e,...i};return{MeasureLayout:e?.isEnabled(t)||i?.isEnabled(t)?n.MeasureLayout:void 0,ProjectionNode:n.ProjectionNode}}
1(p);c=e.MeasureLayout,A.visualElement=function(t,e,n,a,l,h){let{visualElement:u}=(0,i.useContext)(o.MotionContext),c=(0,i.useContext)(s.LazyContext),d=(0,i.useContext)(y.PresenceContext),m=(0,i.useContext)(r.MotionConfigContext),p=m.reducedMotion,f=m.skipAnimations,g=(0,i.useRef)(null),A=(0,i.useRef)(!1);a=a||c.renderer,!g.current&&a&&(g.current=a(t,{visualState:e,parent:u,props:n,presenceContext:d,blockInitialAnimation:!!d&&!1===d.initial,reducedMotionConfig:p,skipAnimations:f,isSVG:h}),A.current&&g.current&&(g.current.manuallyAnimateOnMount=!0));let T=g.current,S=(0,i.useContext)(x.SwitchLayoutGroupContext);T&&!T.projection&&l&&("html"===T.type||"svg"===T.type)&&function(t,e,i,n){let{layoutId:s,layout:r,drag:o,dragConstraints:a,layoutScroll:l,layoutRoot:h,layoutCrossfade:u}=e;t.projection=new i(t.latestValues,e["data-framer-portal-id"]?void 0:function t(e){if(e)return!1!==e.options.allowProjection?e.projection:t(e.parent)}(t.parent)),t.projection.setOptions({layoutId:s,layout:r,alwaysMeasureLayout:!!o||a&&(0,b.isRefObject)(a),visualElement:t,animationType:"string"==typeof r?r:"both",initialPromotionConfig:n,crossfade:u,layoutScroll:l,layoutRoot:h})}(g.current,n,l,S);let C=(0,i.useRef)(!1);(0,i.useInsertionEffect)(()=>{T&&C.current&&T.update(n,d)});let P=n[v.optimizedAppearDataAttribute],M=(0,i.useRef)(!!P&&!window.MotionHandoffIsComplete?.(P)&&window.MotionHasOptimisedAnimation?.(P));return(0,w.useIsomorphicLayoutEffect)(()=>{A.current=!0,T&&(C.current=!0,window.MotionIsMounted=!0,T.updateFeatures(),T.scheduleRenderMicrotask(),M.current&&T.animationState&&T.animationState.animateChanges())}),(0,i.useEffect)(()=>{T&&(!M.current&&T.animationState&&T.animationState.animateChanges(),M.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(P)}),M.current=!1),T.enteringChildren=void 0)}),T}(t,S,p,P,e.ProjectionNode,M)}return(0,e.jsxs)(o.MotionContext.Provider,{value:A,children:[c&&A.visualElement?(0,e.jsx)(c,{visualElement:A.visualElement,...p}):null,(0,l.useRender)(t,h,(0,g.useMotionRef)(S,A.visualElement,u),S,f,T,M)]})}V.displayName=`motion.${"string"==typeof t?t:`create(${t.displayName??t.name??""})`}`;let j=(0,i.forwardRef)(V);return j[f.motionComponentSymbol]=t,j}function T(t,e){if("u"<typeof Proxy)return A;let i=new Map,n=(i,n)=>A(i,n,t,e);return new Proxy((t,e)=>n(t,e),{get:(s,r)=>"create"===r?n:(i.has(r)||i.set(r,A(r,void 0,t,e)),i.get(r))})}t.s(["createMotionProxy",()=>T],7051);class S{constructor(t){this.isMounted=!1,this.node=t}update(){}}t.s(["Feature",()=>S],42098);var C=t.i(86579);function P(t,e,i){let n=t.getProps();return(0,C.resolveVariantFromProps)(n,e,void 0!==i?i:n.custom,t)}function M(t,e){if(t?.inherit&&e){let{inherit:i,...n}=t;return{...e,...n}}return t}function k(t,e){let i=t?.[e]??t?.default??t;return i!==t?M(i,t):i}t.s(["getValueTransition",()=>k],87333);var V=t.i(64440),j=t.i(86427);let E=t=>Array.isArray(t);var D=t.i(46791),L=t.i(83411);function R(t,e){let i=t.getValue("willChange");if((0,L.isMotionValue)(i)&&i.add)return i.add(e);if(!i&&D.MotionGlobalConfig.WillChange){let i=new D.MotionGlobalConfig.WillChange("auto");t.addValue("willChange",i),i.add(e)}}function B(t){return t.props[v.optimizedAppearDataAttribute]}t.s(["addValueToWillChange",()=>R],80538),t.s(["getOptimisedAppearId",()=>B],16896);var F=t.i(63074),I=t.i(60830),O=t.i(96173);let z=(t,e)=>i=>e(t(i)),U=(...t)=>t.reduce(z);t.s(["pipe",()=>U],38638);var N=t.i(76959),W=t.i(4169),G=t.i(65566),H=t.i(19928),_=t.i(79444),$=t.i(69577),q=t.i(63011),K=t.i(22660);function Y(t,e,i){return(i<0&&(i+=1),i>1&&(i-=1),i<1/6)?t+(e-t)*6*i:i<.5?e:i<2/3?t+(e-t)*(2/3-i)*6:t}var X=t.i(66820);function Z(t,e){return i=>i>0?e:t}var J=t.i(706);let Q=(t,e,i)=>{let n=t*t,s=i*(e*e-n)+n;return s<0?0:Math.sqrt(s)},tt=[q.hex,X.rgba,K.hsla];function te(t){let e=tt.find(e=>e.test(t));if((0,G.warning)(!!e,`'${t}' is not an animatable color. Use the equivalent color code instead.`,"color-not-animatable"),!e)return!1;let i=e.parse(t);return e===K.hsla&&(i=function({hue:t,saturation:e,lightness:i,alpha:n}){t/=360,i/=100;let s=0,r=0,o=0;if(e/=100){let n=i<.5?i*(1+e):i+e-i*e,a=2*i-n;s=Y(a,n,t+1/3),r=Y(a,n,t),o=Y(a,n,t-1/3)}else s=r=o=i;return{red:Math.round(255*s),green:Math.round(255*r),blue:Math.round(255*o),alpha:n}}(i)),i}let ti=(t,e)=>{let i=te(t),n=te(e);if(!i||!n)return Z(t,e);let s={...i};return t=>(s.red=Q(i.red,n.red,t),s.green=Q(i.green,n.green,t),s.blue=Q(i.blue,n.blue,t),s.alpha=(0,J.mixNumber)(i.alpha,n.alpha,t),X.rgba.transform(s))},tn=new Set(["none","hidden"]);function ts(t,e){return i=>(0,J.mixNumber)(t,e,i)}function tr(t){return"number"==typeof t?ts:"string"==typeof t?(0,H.isCSSVariableToken)(t)?Z:_.color.test(t)?ti:tl:Array.isArray(t)?to:"object"==typeof t?_.color.test(t)?ti:ta:Z}function to(t,e){let i=[...t],n=i.length,s=t.map((t,i)=>tr(t)(t,e[i]));return t=>{for(let e=0;e<n;e++)i[e]=s[e](t);return i}}function ta(t,e){let i={...t,...e},n={};for(let s in i)void 0!==t[s]&&void 0!==e[s]&&(n[s]=tr(t[s])(t[s],e[s]));return t=>{for(let e in n)i[e]=n[e](t);return i}}let tl=(t,e)=>
1{let i=$.complex.createTransformer(e),n=(0,$.analyseComplexValue)(t),s=(0,$.analyseComplexValue)(e);if(!(n.indexes.var.length===s.indexes.var.length&&n.indexes.color.length===s.indexes.color.length&&n.indexes.number.length>=s.indexes.number.length))return(0,G.warning)(!0,`Complex values '${t}' and '${e}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`,"complex-values-different"),Z(t,e);if(tn.has(t)&&!s.values.length||tn.has(e)&&!n.values.length)return tn.has(t)?i=>i<=0?t:e:i=>i>=1?e:t;return U(to(function(t,e){let i=[],n={color:0,var:0,number:0};for(let s=0;s<e.values.length;s++){let r=e.types[s],o=t.indexes[r][n[r]],a=t.values[o]??0;i[s]=a,n[r]++}return i}(n,s),s.values),i)};function th(t,e,i){return"number"==typeof t&&"number"==typeof e&&"number"==typeof i?(0,J.mixNumber)(t,e,i):tr(t)(t,e)}var tu=t.i(87022);let tc=t=>{let e=({timestamp:e})=>t(e);return{start:(t=!0)=>tu.frame.update(e,t),stop:()=>(0,tu.cancelFrame)(e),now:()=>tu.frameData.isProcessing?tu.frameData.timestamp:O.time.now()}};var td=t.i(56512);function tm(t){let e=0,i=t.next(e);for(;!i.done&&e<2e4;)e+=50,i=t.next(e);return e>=2e4?1/0:e}var tp=t.i(25791);function tf(t,e,i){let n=Math.max(e-5,0);return(0,tp.velocityPerSecond)(i-t(n),e-n)}let tg=.01,tv=2,ty=.005,tx=.5;function tb(t,e){return t*Math.sqrt(1-e*e)}let tw=["duration","bounce"],tA=["stiffness","damping","mass"];function tT(t,e){return e.some(e=>void 0!==t[e])}function tS(t=.3,e=.3){let i,n="object"!=typeof t?{visualDuration:t,keyframes:[0,1],bounce:e}:t,{restSpeed:s,restDelta:r}=n,o=n.keyframes[0],a=n.keyframes[n.keyframes.length-1],l={done:!1,value:o},{stiffness:h,damping:u,mass:c,duration:d,velocity:m,isResolvedFromDuration:p}=function(t){let e={velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1,...t};if(!tT(t,tA)&&tT(t,tw))if(t.visualDuration){let i=2*Math.PI/(1.2*t.visualDuration),n=i*i,s=2*(0,N.clamp)(.05,1,1-(t.bounce||0))*Math.sqrt(n);e={...e,mass:1,stiffness:n,damping:s}}else{let i=function({duration:t=800,bounce:e=.3,velocity:i=0,mass:n=1}){let s,r;(0,G.warning)(t<=(0,F.secondsToMilliseconds)(10),"Spring duration must be 10 seconds or less","spring-duration-limit");let o=1-e;o=(0,N.clamp)(.05,1,o),t=(0,N.clamp)(.01,10,(0,F.millisecondsToSeconds)(t)),o<1?(s=e=>{let n=e*o,s=n*t;return .001-(n-i)/tb(e,o)*Math.exp(-s)},r=e=>{let n=e*o*t,r=Math.pow(o,2)*Math.pow(e,2)*t,a=Math.exp(-n),l=tb(Math.pow(e,2),o);return(n*i+i-r)*a*(-s(e)+.001>0?-1:1)/l}):(s=e=>-.001+Math.exp(-e*t)*((e-i)*t+1),r=e=>t*t*(i-e)*Math.exp(-e*t));let a=function(t,e,i){let n=i;for(let i=1;i<12;i++)n-=t(n)/e(n);return n}(s,r,5/t);if(t=(0,F.secondsToMilliseconds)(t),isNaN(a))return{stiffness:100,damping:10,duration:t};{let e=Math.pow(a,2)*n;return{stiffness:e,damping:2*o*Math.sqrt(n*e),duration:t}}}(t);(e={...e,...i,mass:1}).isResolvedFromDuration=!0}return e}({...n,velocity:-(0,F.millisecondsToSeconds)(n.velocity||0)}),f=m||0,g=u/(2*Math.sqrt(h*c)),v=a-o,y=(0,F.millisecondsToSeconds)(Math.sqrt(h/c)),x=5>Math.abs(v);if(s||(s=x?tg:tv),r||(r=x?ty:tx),g<1){let t=tb(y,g);i=e=>a-Math.exp(-g*y*e)*((f+g*y*v)/t*Math.sin(t*e)+v*Math.cos(t*e))}else if(1===g)i=t=>a-Math.exp(-y*t)*(v+(f+y*v)*t);else{let t=y*Math.sqrt(g*g-1);i=e=>{let i=Math.exp(-g*y*e),n=Math.min(t*e,300);return a-i*((f+g*y*v)*Math.sinh(n)+t*v*Math.cosh(n))/t}}let b={calculatedDuration:p&&d||null,next:t=>{let e=i(t);if(p)l.done=t>=d;else{let n=0===t?f:0;g<1&&(n=0===t?(0,F.secondsToMilliseconds)(f):tf(i,t,e));let o=Math.abs(a-e)<=r;l.done=Math.abs(n)<=s&&o}return l.value=l.done?a:e,l},toString:()=>{let t=Math.min(tm(b),2e4),e=(0,td.generateLinearEasing)(e=>b.next(t*e).value,t,30);return t+"ms "+e},toTransition:()=>{}};return b}function tC({keyframes:t,velocity:e=0,power:i=.8,timeConstant:n=325,bounceDamping:s=10,bounceStiffness:r=500,modifyTarget:o,min:a,max:l,restDelta:h=.5,restSpeed:u}){let c,d,m=t[0],p={done:!1,value:m},f=i*e,g=m+f,v=void 0===o?g:o(g);v!==g&&(f=v-m);let y=t=>-f*Math.exp(-t/n),x=t=>v+y(t),b=t=>{let e=y(t),i=x(t);p.done=Math.abs(e)<=h,p.value=p.done?v:i},w=t=>{let e;if(e=p.value,void 0!==a&&e<a||void 0!==l&&e>l){var i;c=t,d=tS({keyframes:[p.value,(i=p.value,void 0===a?l:void 0===l||Math.abs(a-i)<Math.abs(l-i)?a:l)],velocity:tf(x,t,p.value),damping:s,stiffness:r,restDelta:h,restSpeed:u})}};return w(0),{calculatedDuration:null,next:t=>{let e=!1;return(d||void 0!==c||(e=!0,b(t),w(t)),void 0!==c&&t>=c)?d.next(t-c):(e||b(t),p)}}}tS.applyToOptions=t=>{let e=function(t,e=100,i){let n=i({...t,keyframes:[0,e]}),s=Math.min(tm(n),2e4);return{type:"keyframes",ease:t=>n.next(s*t).value/e,duration:(0,F.millisecondsToSeconds)(s)}}(t,100,tS);return t.ease=e.ease,t.duration=(0,F.secondsToMilliseconds)(e.duration),t.type="keyframes",t};let tP=(t,e,i)=>(((1-3*i+3*e)*t+(3*i-6*e))*t+3*e)*t;function tM(t,e,i,n){return t===e&&i===n?I.noop:s=>
10===s||1===s?s:tP(function(t,e,i,n,s){let r,o,a=0;do(r=tP(o=e+(i-e)/2,n,s)-t)>0?i=o:e=o;while(Math.abs(r)>1e-7&&++a<12)return o}(s,0,1,t,i),e,n)}let tk=tM(.42,0,1,1),tV=tM(0,0,.58,1),tj=tM(.42,0,.58,1),tE=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,tD=t=>e=>1-t(1-e),tL=tM(.33,1.53,.69,.99),tR=tD(tL),tB=tE(tR),tF=t=>(t*=2)<1?.5*tR(t):.5*(2-Math.pow(2,-10*(t-1))),tI=t=>1-Math.sin(Math.acos(t)),tO=tD(tI),tz=tE(tI);t.s(["circIn",()=>tI,"circInOut",()=>tz,"circOut",()=>tO],91559);var tU=t.i(60855);let tN={linear:I.noop,easeIn:tk,easeInOut:tj,easeOut:tV,circIn:tI,circInOut:tz,circOut:tO,backIn:tR,backInOut:tB,backOut:tL,anticipate:tF},tW=t=>{if((0,tU.isBezierDefinition)(t)){(0,G.invariant)(4===t.length,"Cubic bezier arrays must contain four numerical values.","cubic-bezier-length");let[e,i,n,s]=t;return tM(e,i,n,s)}return"string"==typeof t?((0,G.invariant)(void 0!==tN[t],`Invalid easing type '${t}'`,"invalid-easing-type"),tN[t]):t},tG=(t,e,i)=>{let n=e-t;return 0===n?1:(i-t)/n};function tH(t,e,{clamp:i=!0,ease:n,mixer:s}={}){let r=t.length;if((0,G.invariant)(r===e.length,"Both input and output ranges must be the same length","range-length"),1===r)return()=>e[0];if(2===r&&e[0]===e[1])return()=>e[1];let o=t[0]===t[1];t[0]>t[r-1]&&(t=[...t].reverse(),e=[...e].reverse());let a=function(t,e,i){let n=[],s=i||D.MotionGlobalConfig.mix||th,r=t.length-1;for(let i=0;i<r;i++){let r=s(t[i],t[i+1]);e&&(r=U(Array.isArray(e)?e[i]||I.noop:e,r)),n.push(r)}return n}(e,n,s),l=a.length,h=i=>{if(o&&i<t[0])return e[0];let n=0;if(l>1)for(;n<t.length-2&&!(i<t[n+1]);n++);let s=tG(t[n],t[n+1],i);return a[n](s)};return i?e=>h((0,N.clamp)(t[0],t[r-1],e)):h}function t_({duration:t=300,keyframes:e,times:i,ease:n="easeInOut"}){var s;let r,o=Array.isArray(n)&&"number"!=typeof n[0]?n.map(tW):tW(n),a={done:!1,value:e[0]},l=tH((s=i&&i.length===e.length?i:(!function(t,e){let i=t[t.length-1];for(let n=1;n<=e;n++){let s=tG(0,e,n);t.push((0,J.mixNumber)(i,1,s))}}(r=[0],e.length-1),r),s.map(e=>e*t)),e,{ease:Array.isArray(o)?o:e.map(()=>o||tj).splice(0,e.length-1)});return{calculatedDuration:t,next:e=>(a.value=l(e),a.done=e>=t,a)}}t.s(["progress",()=>tG],83920),t.s(["interpolate",()=>tH],44230);var t$=t.i(14229);let tq={decay:tC,inertia:tC,tween:t_,keyframes:t_,spring:tS};function tK(t){"string"==typeof t.type&&(t.type=tq[t.type])}var tY=t.i(79294);let tX=t=>t/100;class tZ extends tY.WithPromise{constructor(t){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{let{motionValue:t}=this.options;t&&t.updatedAt!==O.time.now()&&this.tick(O.time.now()),this.isStopped=!0,"idle"!==this.state&&(this.teardown(),this.options.onStop?.())},W.activeAnimations.mainThread++,this.options=t,this.initAnimation(),this.play(),!1===t.autoplay&&this.pause()}initAnimation(){let{options:t}=this;tK(t);let{type:e=t_,repeat:i=0,repeatDelay:n=0,repeatType:s,velocity:r=0}=t,{keyframes:o}=t,a=e||t_;a!==t_&&"number"!=typeof o[0]&&(this.mixKeyframes=U(tX,th(o[0],o[1])),o=[0,100]);let l=a({...t,keyframes:o});"mirror"===s&&(this.mirroredGenerator=a({...t,keyframes:[...o].reverse(),velocity:-r})),null===l.calculatedDuration&&(l.calculatedDuration=tm(l));let{calculatedDuration:h}=l;this.calculatedDuration=h,this.resolvedDuration=h+n,this.totalDuration=this.resolvedDuration*(i+1)-n,this.generator=l}updateTime(t){let e=Math.round(t-this.startTime)*this.playbackSpeed;null!==this.holdTime?this.currentTime=this.holdTime:this.currentTime=e}tick(t,e=!1){let{generator:i,totalDuration:n,mixKeyframes:s,mirroredGenerator:r,resolvedDuration:o,calculatedDuration:a}=this;if(null===this.startTime)return i.next(0);let{delay:l=0,keyframes:h,repeat:u,repeatType:c,repeatDelay:d,type:m,onUpdate:p,finalKeyframe:f}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,t):this.speed<0&&(this.startTime=Math.min(t-n/this.speed,this.startTime)),e?this.currentTime=t:this.updateTime(t);let g=this.currentTime-l*(this.playbackSpeed>=0?1:-1),v=this.playbackSpeed>=0?g<0:g>n;this.currentTime=Math.max(g,0),"finished"===this.state&&null===this.holdTime&&(this.currentTime=n);let y=this.currentTime,x=i;if(u){let t=Math.min(this.currentTime,n)/o,e=Math.floor(t),i=t%1;!i&&t>=1&&(i=1),1===i&&e--,(e=Math.min(e,u+1))%2&&("reverse"===c?(i=1-i,d&&(i-=d/
1o)):"mirror"===c&&(x=r)),y=(0,N.clamp)(0,1,i)*o}let b=v?{done:!1,value:h[0]}:x.next(y);s&&(b.value=s(b.value));let{done:w}=b;v||null===a||(w=this.playbackSpeed>=0?this.currentTime>=n:this.currentTime<=0);let A=null===this.holdTime&&("finished"===this.state||"running"===this.state&&w);return A&&m!==tC&&(b.value=(0,t$.getFinalKeyframe)(h,this.options,f,this.speed)),p&&p(b.value),A&&this.finish(),b}then(t,e){return this.finished.then(t,e)}get duration(){return(0,F.millisecondsToSeconds)(this.calculatedDuration)}get iterationDuration(){let{delay:t=0}=this.options||{};return this.duration+(0,F.millisecondsToSeconds)(t)}get time(){return(0,F.millisecondsToSeconds)(this.currentTime)}set time(t){t=(0,F.secondsToMilliseconds)(t),this.currentTime=t,null===this.startTime||null!==this.holdTime||0===this.playbackSpeed?this.holdTime=t:this.driver&&(this.startTime=this.driver.now()-t/this.playbackSpeed),this.driver?.start(!1)}get speed(){return this.playbackSpeed}set speed(t){this.updateTime(O.time.now());let e=this.playbackSpeed!==t;this.playbackSpeed=t,e&&(this.time=(0,F.millisecondsToSeconds)(this.currentTime))}play(){if(this.isStopped)return;let{driver:t=tc,startTime:e}=this.options;this.driver||(this.driver=t(t=>this.tick(t))),this.options.onPlay?.();let i=this.driver.now();"finished"===this.state?(this.updateFinished(),this.startTime=i):null!==this.holdTime?this.startTime=i-this.holdTime:this.startTime||(this.startTime=e??i),"finished"===this.state&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(O.time.now()),this.holdTime=this.currentTime}complete(){"running"!==this.state&&this.play(),this.state="finished",this.holdTime=null}finish(){this.notifyFinished(),this.teardown(),this.state="finished",this.options.onComplete?.()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),this.options.onCancel?.()}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null,W.activeAnimations.mainThread--}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(t){return this.startTime=0,this.tick(t,!0)}attachTimeline(t){return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),this.driver?.stop(),t.observe(this)}}t.s(["JSAnimation",()=>tZ],83352);var tJ=t.i(21012),tQ=t.i(68e3);let t0={anticipate:tF,backInOut:tB,circInOut:tz};class t1 extends tQ.NativeAnimation{constructor(t){!function(t){"string"==typeof t.ease&&t.ease in t0&&(t.ease=t0[t.ease])}(t),tK(t),super(t),void 0!==t.startTime&&(this.startTime=t.startTime),this.options=t}updateMotionValue(t){let{motionValue:e,onUpdate:i,onComplete:n,element:s,...r}=this.options;if(!e)return;if(void 0!==t)return void e.set(t);let o=new tZ({...r,autoplay:!1}),a=Math.max(10,O.time.now()-this.startTime),l=(0,N.clamp)(0,10,a-10);e.setWithVelocity(o.sample(Math.max(0,a-l)).value,o.sample(a).value,l),o.stop()}}var t2=t.i(97307);let t3=(t,e)=>"zIndex"!==e&&!!("number"==typeof t||Array.isArray(t)||"string"==typeof t&&($.complex.test(t)||"0"===t)&&!t.startsWith("url("));function t5(t){t.duration=0,t.type="keyframes"}var t6=tY,t4=t.i(60900);let t7=new Set(["opacity","clipPath","filter","transform"]),t8=(0,t4.memo)(()=>Object.hasOwnProperty.call(Element.prototype,"animate"));class t9 extends t6.WithPromise{constructor({autoplay:t=!0,delay:e=0,type:i="keyframes",repeat:n=0,repeatDelay:s=0,repeatType:r="loop",keyframes:o,name:a,motionValue:l,element:h,...u}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=O.time.now();const c={autoplay:t,delay:e,type:i,repeat:n,repeatDelay:s,repeatType:r,name:a,motionValue:l,element:h,...u},d=h?.KeyframeResolver||tJ.KeyframeResolver;this.keyframeResolver=new d(o,(t,e,i)=>this.onKeyframesResolved(t,e,c,!i),a,l,h),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(t,e,i,n){this.keyframeResolver=void 0;let{name:s,type:r,velocity:o,delay:a,isHandoff:l,onUpdate:h}=i;
1this.resolvedAt=O.time.now(),!function(t,e,i,n){let s=t[0];if(null===s)return!1;if("display"===e||"visibility"===e)return!0;let r=t[t.length-1],o=t3(s,e),a=t3(r,e);return(0,G.warning)(o===a,`You are trying to animate ${e} from "${s}" to "${r}". "${o?r:s}" is not an animatable value.`,"value-not-animatable"),!!o&&!!a&&(function(t){let e=t[0];if(1===t.length)return!0;for(let i=0;i<t.length;i++)if(t[i]!==e)return!0}(t)||("spring"===i||(0,t2.isGenerator)(i))&&n)}(t,s,r,o)&&((D.MotionGlobalConfig.instantAnimations||!a)&&h?.((0,t$.getFinalKeyframe)(t,i,e)),t[0]=t[t.length-1],t5(i),i.repeat=0);let u={startTime:n?this.resolvedAt&&this.resolvedAt-this.createdAt>40?this.resolvedAt:this.createdAt:void 0,finalKeyframe:e,...i,keyframes:t},c=!l&&function(t){let{motionValue:e,name:i,repeatDelay:n,repeatType:s,damping:r,type:o}=t;if(!(e?.owner?.current instanceof HTMLElement))return!1;let{onUpdate:a,transformTemplate:l}=e.owner.getProps();return t8()&&i&&t7.has(i)&&("transform"!==i||!l)&&!a&&!n&&"mirror"!==s&&0!==r&&"inertia"!==o}(u),d=u.motionValue?.owner?.current,m=c?new t1({...u,element:d}):new tZ(u);m.finished.then(()=>{this.notifyFinished()}).catch(I.noop),this.pendingTimeline&&(this.stopTimeline=m.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=m}get finished(){return this._animation?this.animation.finished:this._finished}then(t,e){return this.finished.finally(t).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),(0,tJ.flushKeyframeResolvers)()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(t){this.animation.time=t}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(t){this.animation.speed=t}get startTime(){return this.animation.startTime}attachTimeline(t){return this._animation?this.stopTimeline=this.animation.attachTimeline(t):this.pendingTimeline=t,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this._animation&&this.animation.cancel(),this.keyframeResolver?.cancel()}}var et=t.i(57788);let ee={type:"spring",stiffness:500,damping:25,restSpeed:10},ei={type:"keyframes",duration:.8},en={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},es=t=>null!==t,er=(t,e,i,n={},s,r)=>o=>{let a=k(n,t)||{},l=a.delay||n.delay||0,{elapsed:h=0}=n;h-=(0,F.secondsToMilliseconds)(l);let u={keyframes:Array.isArray(i)?i:[null,i],ease:"easeOut",velocity:e.getVelocity(),...a,delay:-h,onUpdate:t=>{e.set(t),a.onUpdate&&a.onUpdate(t)},onComplete:()=>{o(),a.onComplete&&a.onComplete()},name:t,motionValue:e,element:r?void 0:s};!function({when:t,delay:e,delayChildren:i,staggerChildren:n,staggerDirection:s,repeat:r,repeatType:o,repeatDelay:a,from:l,elapsed:h,...u}){return!!Object.keys(u).length}(a)&&Object.assign(u,((t,{keyframes:e})=>e.length>2?ei:et.transformProps.has(t)?t.startsWith("scale")?{type:"spring",stiffness:550,damping:0===e[1]?2*Math.sqrt(550):30,restSpeed:10}:ee:en)(t,u)),u.duration&&(u.duration=(0,F.secondsToMilliseconds)(u.duration)),u.repeatDelay&&(u.repeatDelay=(0,F.secondsToMilliseconds)(u.repeatDelay)),void 0!==u.from&&(u.keyframes[0]=u.from);let c=!1;if(!1!==u.type&&(0!==u.duration||u.repeatDelay)||(t5(u),0===u.delay&&(c=!0)),(D.MotionGlobalConfig.instantAnimations||D.MotionGlobalConfig.skipAnimations||s?.shouldSkipAnimations)&&(c=!0,t5(u),u.delay=0),u.allowFlatten=!a.type&&!a.ease,c&&!r&&void 0!==e.get()){let t=function(t,{repeat:e,repeatType:i="loop"},n){let s=t.filter(es),r=e&&"loop"!==i&&e%2==1?0:s.length-1;return s[r]}(u.keyframes,a);if(void 0!==t)return void tu.frame.update(()=>{u.onUpdate(t),u.onComplete()})}return a.isSync?new tZ(u):new t9(u)};function eo(t,e,{delay:i=0,transitionOverride:n,type:s}={}){let{transition:r,transitionEnd:o,...a}=e,l=t.getDefaultTransition();r=r?M(r,l):l;let h=r?.reduceMotion;n&&(r=n);let u=[],c=s&&t.animationState&&t.animationState.getState()[s];for(let e in a){let n=t.getValue(e,t.latestValues[e]??null),s=a[e];if(void 0===s||c&&function({protectedKeys:t,needsAnimating:e},i){let n=t.hasOwnProperty(i)&&!0!==e[i];return e[i]=!1,n}(c,e))continue;let o={delay:i,...k(r||{},e)},l=n.get();if(void 0!==l&&!n.isAnimating&&!Array.isArray(s)&&s===l&&!o.velocity)continue;let d=!1;if(window.MotionHandoffAnimation){let i=B(t);if(i){let t=window.MotionHandoffAnimation(i,e,tu.frame);null!==t&&(o.startTime=t,d=!0)}}R(t,e);let m=h??t.shouldReduceMotion;n.start(er(e,n,s,m&&V.positionalKeys.has(e)?{type:!1}:o,t,d));let p=n.animation;p&&u.push(p)}if(o){let e=()=>tu.frame.update(()=>{o&&function(t,e){let{transitionEnd:i={},transition:n={},...s}=P(t,e)||{};for(let e in s={...s,...i}){var r;let i=E(r=s[e])?r[r.length-1]||0:r;t.hasValue(e)?t.getValue(e).set(i):t.addValue(e,(0,j.motionValue)(i))}}(t,o)});u.length?Promise.all(u).then(e):e()}return u}
1function ea(t,e,i,n=0,s=1){let r=Array.from(t).sort((t,e)=>t.sortNodePosition(e)).indexOf(e),o=t.size,a=(o-1)*n;return"function"==typeof i?i(r,o):1===s?r*n:a-r*n}function el(t,e,i={}){let n=P(t,e,"exit"===i.type?t.presenceContext?.custom:void 0),{transition:s=t.getDefaultTransition()||{}}=n||{};i.transitionOverride&&(s=i.transitionOverride);let r=n?()=>Promise.all(eo(t,n,i)):()=>Promise.resolve(),o=t.variantChildren&&t.variantChildren.size?(n=0)=>{let{delayChildren:r=0,staggerChildren:o,staggerDirection:a}=s;return function(t,e,i=0,n=0,s=0,r=1,o){let a=[];for(let l of t.variantChildren)l.notify("AnimationStart",e),a.push(el(l,e,{...o,delay:i+("function"==typeof n?0:n)+ea(t.variantChildren,l,n,s,r)}).then(()=>l.notify("AnimationComplete",e)));return Promise.all(a)}(t,e,n,r,o,a,i)}:()=>Promise.resolve(),{when:a}=s;if(!a)return Promise.all([r(),o(i.delay)]);{let[t,e]="beforeChildren"===a?[r,o]:[o,r];return t().then(()=>e())}}t.s(["animateMotionValue",()=>er],39011);var eh=t.i(32525),eu=t.i(6840);let ec=eu.variantProps.length;var ed=t.i(85983);function em(t,e){if(!Array.isArray(e))return!1;let i=e.length;if(i!==t.length)return!1;for(let n=0;n<i;n++)if(e[n]!==t[n])return!1;return!0}let ep=[...eu.variantPriorityOrder].reverse(),ef=eu.variantPriorityOrder.length;function eg(t=!1){return{isActive:t,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function ev(){return{animate:eg(!0),whileInView:eg(),whileHover:eg(),whileTap:eg(),whileDrag:eg(),whileFocus:eg(),exit:eg()}}let ey=0,ex={animation:{Feature:class extends S{constructor(t){super(t),t.animationState||(t.animationState=function(t){let e=e=>Promise.all(e.map(({animation:e,options:i})=>(function(t,e,i={}){let n;if(t.notify("AnimationStart",e),Array.isArray(e))n=Promise.all(e.map(e=>el(t,e,i)));else if("string"==typeof e)n=el(t,e,i);else{let s="function"==typeof e?P(t,e,i.custom):e;n=Promise.all(eo(t,s,i))}return n.then(()=>{t.notify("AnimationComplete",e)})})(t,e,i))),i=ev(),n=!0,s=e=>(i,n)=>{let s=P(t,n,"exit"===e?t.presenceContext?.custom:void 0);if(s){let{transition:t,transitionEnd:e,...n}=s;i={...i,...n,...e}}return i};function r(r){let{props:o}=t,a=function t(e){if(!e)return;if(!e.isControllingVariants){let i=e.parent&&t(e.parent)||{};return void 0!==e.props.initial&&(i.initial=e.props.initial),i}let i={};for(let t=0;t<ec;t++){let n=eu.variantProps[t],s=e.props[n];((0,eh.isVariantLabel)(s)||!1===s)&&(i[n]=s)}return i}(t.parent)||{},l=[],h=new Set,u={},c=1/0;for(let e=0;e<ef;e++){var d,m;let p=ep[e],f=i[p],g=void 0!==o[p]?o[p]:a[p],v=(0,eh.isVariantLabel)(g),y=p===r?f.isActive:null;!1===y&&(c=e);let x=g===a[p]&&g!==o[p]&&v;if(x&&n&&t.manuallyAnimateOnMount&&(x=!1),f.protectedKeys={...u},!f.isActive&&null===y||!g&&!f.prevProp||(0,ed.isAnimationControls)(g)||"boolean"==typeof g)continue;if("exit"===p&&f.isActive&&!0!==y){f.prevResolvedValues&&(u={...u,...f.prevResolvedValues});continue}let b=(d=f.prevProp,"string"==typeof(m=g)?m!==d:!!Array.isArray(m)&&!em(m,d)),w=b||p===r&&f.isActive&&!x&&v||e>c&&v,A=!1,T=Array.isArray(g)?g:[g],S=T.reduce(s(p),{});!1===y&&(S={});let{prevResolvedValues:C={}}=f,M={...C,...S},k=e=>{w=!0,h.has(e)&&(A=!0,h.delete(e)),f.needsAnimating[e]=!0;let i=t.getValue(e);i&&(i.liveStyle=!1)};for(let t in M){let e=S[t],i=C[t];if(!u.hasOwnProperty(t))(E(e)&&E(i)?em(e,i):e===i)?void 0!==e&&h.has(t)?k(t):f.protectedKeys[t]=!0:null!=e?k(t):h.add(t)}f.prevProp=g,f.prevResolvedValues=S,f.isActive&&(u={...u,...S}),n&&t.blockInitialAnimation&&(w=!1);let V=x&&b,j=!V||A;w&&j&&l.push(...T.map(e=>{let i={type:p};if("string"==typeof e&&n&&!V&&t.manuallyAnimateOnMount&&t.parent){let{parent:n}=t,s=P(n,e);if(n.enteringChildren&&s){let{delayChildren:e}=s.transition||{};i.delay=ea(n.enteringChildren,t,e)}}return{animation:e,options:i}}))}if(h.size){let e={};if("boolean"!=typeof o.initial){let i=P(t,Array.isArray(o.initial)?o.initial[0]:o.initial);i&&i.transition&&(e.transition=i.transition)}h.forEach(i=>{let n=t.getBaseTarget(i),s=t.getValue(i);s&&(s.liveStyle=!0),e[i]=n??null}),l.push({animation:e})}let p=!!l.length;return n&&(!1===o.initial||o.initial===o.animate)&&!t.manuallyAnimateOnMount&&(p=!1),n=!1,p?e(l):Promise.resolve()}return{animateChanges:r,setActive:function(e,n){if(i[e].isActive===n)return Promise.resolve();t.variantChildren?.forEach(t=>t.animationState?.setActive(e,n)),i[e].isActive=n;let s=r(e);for(let t in i)i[t].protectedKeys={};return s},setAnimateFunction:function(i){e=i(t)},getState:()=>i,reset:()=>{i=ev()}}}(t))}updateAnimationControlsSubscription(){let{animate:t}=this.node.getProps();(0,ed.isAnimationControls)(t)&&(this.unmountControls=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){let{animate:t}=this.node.getProps(),{animate:e}=this.node.prevProps||{};t!==e&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}}},exit:{Feature:class extends S{constructor(){super(...arguments),this.id=ey++}update(){if(!this.node.presenceContext)return;let{isPresent:t,onExitComplete:e}=this.node.presenceContext,{isPresent:i}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===i)return;let n=this.node.animationState.setActive("exit",!t);e&&!t&&n.then(()=>
1{e(this.id)})}mount(){let{register:t,onExitComplete:e}=this.node.presenceContext||{};e&&e(this.id),t&&(this.unmount=t(this.id))}unmount(){}}}};function eb(t){return[t("x"),t("y")]}t.s(["animations",()=>ex],23070),t.s(["eachAxis",()=>eb],55559);let ew=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function eA(t){return ew.has(t.tagName)||!0===t.isContentEditable}let eT=new Set(["INPUT","SELECT","TEXTAREA"]);function eS(t){return eT.has(t.tagName)||!0===t.isContentEditable}function eC(t,e,i,n={passive:!0}){return t.addEventListener(e,i,n),()=>t.removeEventListener(e,i)}t.s(["isElementKeyboardAccessible",()=>eA,"isElementTextInput",()=>eS],19880),t.s(["addDomEvent",()=>eC],82774);let eP={x:!1,y:!1};function eM(){return eP.x||eP.y}function ek(t){if("x"===t||"y"===t)if(eP[t])return null;else return eP[t]=!0,()=>{eP[t]=!1};return eP.x||eP.y?null:(eP.x=eP.y=!0,()=>{eP.x=eP.y=!1})}t.s(["isDragActive",()=>eM,"isDragging",()=>eP],39676),t.s(["setDragLock",()=>ek],37541);function eV(t){return t.max-t.min}function ej(t,e,i){return Math.abs(t-e)<=i}function eE(t,e,i,n=.5){t.origin=n,t.originPoint=(0,J.mixNumber)(e.min,e.max,t.origin),t.scale=eV(i)/eV(e),t.translate=(0,J.mixNumber)(i.min,i.max,t.origin)-t.originPoint,(t.scale>=.9999&&t.scale<=1.0001||isNaN(t.scale))&&(t.scale=1),(t.translate>=-.01&&t.translate<=.01||isNaN(t.translate))&&(t.translate=0)}function eD(t,e,i,n){eE(t.x,e.x,i.x,n?n.originX:void 0),eE(t.y,e.y,i.y,n?n.originY:void 0)}function eL(t,e,i){t.min=i.min+e.min,t.max=t.min+eV(e)}function eR(t,e,i){eL(t.x,e.x,i.x),eL(t.y,e.y,i.y)}function eB(t,e,i){t.min=e.min-i.min,t.max=t.min+eV(e)}function eF(t,e,i){eB(t.x,e.x,i.x),eB(t.y,e.y,i.y)}t.s(["calcBoxDelta",()=>eD,"calcLength",()=>eV,"calcRelativeBox",()=>eR,"calcRelativePosition",()=>eF,"isNear",()=>ej],52101)},42824,t=>{"use strict";function e(t){return"object"==typeof t&&null!==t}t.s(["isObject",()=>e])},33986,89026,49652,41327,65536,85651,7230,t=>{"use strict";let e,i;var n=t.i(42098),s=t.i(60830),r=t.i(30162),o=t.i(87022),a=t.i(55559),l=t.i(53689),h=t.i(27677),u=t.i(80538),c=t.i(39011),d=t.i(706),m=t.i(19880),p=t.i(82774),f=t.i(37541),g=t.i(65091),v=t.i(52101),y=t.i(42824);function x(t){return(0,y.isObject)(t)&&"ownerSVGElement"in t}function b(t,e,i){if(null==t)return[];if(t instanceof EventTarget)return[t];if("string"==typeof t){let n=document;e&&(n=e.current);let s=i?.[t]??n.querySelectorAll(t);return s?Array.from(s):[]}return Array.from(t).filter(t=>null!=t)}t.s(["isSVGElement",()=>x],89026),t.s(["resolveElements",()=>b],49652);let w=new WeakMap,A=(t,e,i)=>(n,s)=>s&&s[0]?s[0][t+"Size"]:x(n)&&"getBBox"in n?n.getBBox()[e]:n[i],T=A("inline","width","offsetWidth"),S=A("block","height","offsetHeight");function C({target:t,borderBoxSize:e}){w.get(t)?.forEach(i=>{i(t,{get width(){return T(t,e)},get height(){return S(t,e)}})})}function P(t){t.forEach(C)}let M=new Set;function k(t,n){let s;return"function"==typeof t?(M.add(t),i||(i=()=>{let t={get width(){return window.innerWidth},get height(){return window.innerHeight}};M.forEach(e=>e(t))},window.addEventListener("resize",i)),()=>{M.delete(t),M.size||"function"!=typeof i||(window.removeEventListener("resize",i),i=void 0)}):(!e&&"u">typeof ResizeObserver&&(e=new ResizeObserver(P)),(s=b(t)).forEach(t=>{let i=w.get(t);i||(i=new Set,w.set(t,i)),i.add(n),e?.observe(t)}),()=>{s.forEach(t=>{let i=w.get(t);i?.delete(n),i?.size||e?.unobserve(t)})})}var V=t.i(65566);let j=t=>"mouse"===t.pointerType?"number"!=typeof t.button||t.button<=0:!1!==t.isPrimary;function E(t){return{point:{x:t.pageX,y:t.pageY}}}t.s(["isPrimaryPointer",()=>j],41327);let D=t=>e=>j(e)&&t(e,E(e));function L(t,e,i,n){return(0,p.addDomEvent)(t,e,D(i),n)}t.s(["addPointerInfo",()=>D,"extractEventInfo",()=>E],65536);let R=({current:t})=>t?t.ownerDocument.defaultView:null;var B=t.i(25522),F=t.i(38638),I=t.i(63074);let O=(t,e)=>Math.abs(t-e),z=new Set(["auto","scroll"]);class U{constructor(t,e,{transformPagePoint:i,contextWindow:n=window,dragSnapToOrigin:s=!1,distanceThreshold:r=3,element:a}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.scrollPositions=new Map,this.removeScrollListeners=null,this.onElementScroll=t=>{this.handleScroll(t.target)},this.onWindowScroll=()=>{this.handleScroll(window)},this.updatePoint=()=>{var t,e;if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;let i=G(this.lastMoveEventInfo,this.history),n=null!==this.startEvent,s=(t=i.offset,e={x:0,y:0},Math.sqrt(O(t.x,e.x)**2+O(t.y,e.y)**2)>=this.distanceThreshold);if(!n&&!s)return;let{point:r}=i,{timestamp:a}=o.frameData;this.history.push({...r,timestamp:a});let{onStart:l,onMove:h}=this.handlers;n||(l&&l(this.lastMoveEvent,i),this.startEvent=this.lastMoveEvent),h&&h(this.lastMoveEvent,i)},this.handlePointerMove=(t,e)=>{this.lastMoveEvent=t,this.lastMoveEventInfo=N(e,this.transformPagePoint),o.frame.update(this.updatePoint,!0)},this.handlePointerUp=(t,e)=>{this.end();let{onEnd:i,onSessionEnd:n,resumeAnimation:s}=this.handlers;if((this.dragSnapToOrigin||!this.startEvent)&&s&&s(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;let r=G("pointercancel"===t.type?this.lastMoveEventInfo:N(e,this.transformPagePoint),this.history);this.startEvent&&i&&i(t,r),n&&n(t,r)},!j(t))return;this.dragSnapToOrigin=s,this.handlers=e,this.transformPagePoint=i,this.distanceThreshold=r,this.contextWindow=n||window;const l=N(E(t),this.transformPagePoint),{point:h}=l,{timestamp:u}=o.frameData;this.history=[{...h,timestamp:u}];const{onSessionStart:c}=e;c&&c(t,G(l,this.history)),this.removeListeners=(0,F.pipe)(L(this.contextWindow,"pointermove",this.handlePointerMove),L(this.contextWindow,"pointerup",this.handlePointerUp),L(this.contextWindow,"pointercancel",this.handlePointerUp)),a&&this.startScrollTracking(a)}startScrollTracking(t){let e=t.parentElement;for(;e;){let t=getComputedStyle(e);(z.has(t.overflowX)||z.has(t.overflowY))&&this.scrollPositions.set(e,{x:e.scrollLeft,y:e.scrollTop}),e=e.parentElement}this.scrollPositions.set(window,{x:window.scrollX,y:window.scrollY}),window.addEventListener("scroll",this.onElementScroll,{capture:!0,passive:!0}),window.addEventListener("scroll",this.onWindowScroll,{passive:!0}),this.removeScrollListeners=()=>{window.removeEventListener("scroll",this.onElementScroll,{capture:!0}),window.removeEventListener("scroll",this.onWindowScroll)}}handleScroll(t){let e=this.scrollPositions.get(t);if(!e)return;let i=t===window,n=i?{x:window.scrollX,y:window.scrollY}:{x:t.scrollLeft,y:t.scrollTop},s={x:n.x-e.x,y:n.y-e.y};(0!==s.x||0!==s.y)&&(i?this.lastMoveEventInfo&&(this.lastMoveEventInfo.point.x+=s.x,this.lastMoveEventInfo.point.y+=s.y):this.history.length>0&&(this.history[0].x-=s.x,this.history[0].y-=s.y),this.scrollPositions.set(t,n),o.frame.update(this.updatePoint,!0))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),this.removeScrollListeners&&this.removeScrollListeners(),this.scrollPositions.clear(),(0,o.cancelFrame)(this.updatePoint)}}function N(t,e){return e?{point:e(t.point)}:t}function W(t,e){return{x:t.x-e.x,y:t.y-e.y}}function G({point:t},e){return{point:t,delta:W(t,H(e)),offset:W(t,e[0]),velocity:function(t,e){if(t.length<2)return{x:0,y:0};let i=t.length-1,n=null,s=H(t);for(;i>=0&&(n=t[i],!(s.timestamp-n.timestamp>(0,I.secondsToMilliseconds)(.1)));)i--;if(!n)return{x:0,y:0};n===t[0]&&t.length>2&&s.timestamp-n.timestamp>
12*(0,I.secondsToMilliseconds)(.1)&&(n=t[1]);let r=(0,I.millisecondsToSeconds)(s.timestamp-n.timestamp);if(0===r)return{x:0,y:0};let o={x:(s.x-n.x)/r,y:(s.y-n.y)/r};return o.x===1/0&&(o.x=0),o.y===1/0&&(o.y=0),o}(e,.1)}}function H(t){return t[t.length-1]}var _=t.i(83920),$=t.i(76959);function q(t,e,i){return{min:void 0!==e?t.min+e:void 0,max:void 0!==i?t.max+i-(t.max-t.min):void 0}}function K(t,e){let i=e.min-t.min,n=e.max-t.max;return e.max-e.min<t.max-t.min&&([i,n]=[n,i]),{min:i,max:n}}function Y(t,e,i){return{min:X(t,e),max:X(t,i)}}function X(t,e){return"number"==typeof t?t:t[e]||0}let Z=new WeakMap;class J{constructor(t){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=(0,r.createBox)(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=t}start(t,{snapToCursor:e=!1,distanceThreshold:i}={}){let{presenceContext:n}=this.visualElement;if(n&&!1===n.isPresent)return;let s=t=>{e&&this.snapToCursor(E(t).point),this.stopAnimation()},r=(t,e)=>{let{drag:i,dragPropagation:n,onDragStart:s}=this.getProps();if(i&&!n&&(this.openDragLock&&this.openDragLock(),this.openDragLock=(0,f.setDragLock)(i),!this.openDragLock))return;this.latestPointerEvent=t,this.latestPanInfo=e,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),(0,a.eachAxis)(t=>{let e=this.getAxisMotionValue(t).get()||0;if(g.percent.test(e)){let{projection:i}=this.visualElement;if(i&&i.layout){let n=i.layout.layoutBox[t];n&&(e=(0,v.calcLength)(n)*(parseFloat(e)/100))}}this.originPoint[t]=e}),s&&o.frame.update(()=>s(t,e),!1,!0),(0,u.addValueToWillChange)(this.visualElement,"transform");let{animationState:r}=this.visualElement;r&&r.setActive("whileDrag",!0)},l=(t,e)=>{this.latestPointerEvent=t,this.latestPanInfo=e;let{dragPropagation:i,dragDirectionLock:n,onDirectionLock:s,onDrag:r}=this.getProps();if(!i&&!this.openDragLock)return;let{offset:a}=e;if(n&&null===this.currentDirection){this.currentDirection=function(t,e=10){let i=null;return Math.abs(t.y)>e?i="y":Math.abs(t.x)>e&&(i="x"),i}(a),null!==this.currentDirection&&s&&s(this.currentDirection);return}this.updateAxis("x",e.point,a),this.updateAxis("y",e.point,a),this.visualElement.render(),r&&o.frame.update(()=>r(t,e),!1,!0)},h=(t,e)=>{this.latestPointerEvent=t,this.latestPanInfo=e,this.stop(t,e),this.latestPointerEvent=null,this.latestPanInfo=null},c=()=>{let{dragSnapToOrigin:t}=this.getProps();(t||this.constraints)&&this.startAnimation({x:0,y:0})},{dragSnapToOrigin:d}=this.getProps();this.panSession=new U(t,{onSessionStart:s,onStart:r,onMove:l,onSessionEnd:h,resumeAnimation:c},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:d,distanceThreshold:i,contextWindow:R(this.visualElement),element:this.visualElement.current})}stop(t,e){let i=t||this.latestPointerEvent,n=e||this.latestPanInfo,s=this.isDragging;if(this.cancel(),!s||!n||!i)return;let{velocity:r}=n;this.startAnimation(r);let{onDragEnd:a}=this.getProps();a&&o.frame.postRender(()=>a(i,n))}cancel(){this.isDragging=!1;let{projection:t,animationState:e}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.endPanSession();let{dragPropagation:i}=this.getProps();!i&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),e&&e.setActive("whileDrag",!1)}endPanSession(){this.panSession&&this.panSession.end(),this.panSession=void 0}updateAxis(t,e,i){let{drag:n}=this.getProps();if(!i||!tt(t,n,this.currentDirection))return;let s=this.getAxisMotionValue(t),r=this.originPoint[t]+i[t];this.constraints&&this.constraints[t]&&(r=function(t,{min:e,max:i},n){return void 0!==e&&t<e?t=n?(0,d.mixNumber)(e,t,n.min):Math.max(t,e):void 0!==i&&t>i&&(t=n?(0,d.mixNumber)(i,t,n.max):Math.min(t,i)),t}(r,this.constraints[t],this.elastic[t])),s.set(r)}resolveConstraints(){let{dragConstraints:t,dragElastic:e}=this.getProps(),i=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):this.visualElement.projection?.layout,n=this.constraints;t&&(0,B.isRefObject)(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&i?this.constraints=function(t,{top:e,left:i,bottom:n,right:s}){return{x:q(t.x,i,s),y:q(t.y,e,n)}}(i.layoutBox,t):this.constraints=!1,this.elastic=function(t=.35){return!1===t?t=0:!0===t&&(t=.35),{x:Y(t,"left","right"),y:Y(t,"top","bottom")}}(e),n!==this.constraints&&!(0,B.isRefObject)(t)&&i&&this.constraints&&!this.hasMutatedConstraints&&(0,a.eachAxis)(t=>{var e,n;let s;!1!==this.constraints&&this.getAxisMotionValue(t)&&(this.constraints[t]=(e=i.layoutBox[t],n=this.constraints[t],s={},void 0!==n.min&&(s.min=n.min-e.min),void 0!==n.max&&(s.max=n.max-e.min),s))})}resolveRefConstraints(){var t;let{dragConstraints:e,onMeasureDragConstraints:i}=this.getProps();if(!e||!(0,B.isRefObject)(e))return!1;let n=e.current;(0,V.invariant)(null!==n,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.","drag-constraints-ref");let{projection:s}=this.visualElement;if(!s||!s.layout)return!1;let r=(0,l.measurePageBox)(n,s.root,this.visualElement.getTransformPagePoint()),o=(t=s.layout.layoutBox,{x:K(t.x,r.x),y:K(t.y,r.y)});if(i){let t=i((0,h.convertBoxToBoundingBox)(o));this.hasMutatedConstraints=!!t,t&&(o=(0,h.convertBoundingBoxToBox)(t))}return o}startAnimation(t){let{drag:e,dragMomentum:i,dragElastic:n,dragTransition:s,dragSnapToOrigin:r,onDragTransitionEnd:o}=this.getProps(),l=this.constraints||{};return Promise.all((0,a.eachAxis)(o=>{if(!tt(o,e,this.currentDirection))return;let a=l&&l[o]||{};r&&(a={min:0,max:0});let h={type:"inertia",velocity:i?t[o]:0,bounceStiffness:n?200:1e6,bounceDamping:n?40:1e7,timeConstant:750,restDelta:1,restSpeed:10,...s,...a};return this.startAxisValueAnimation(o,h)})).then(o)}startAxisValueAnimation(t,e){let i=this.getAxisMotionValue(t);return(0,u.addValueToWillChange)(this.visualElement,t),i.start((0,c.animateMotionValue)(t,i,0,e,this.visualElement,!1))}stopAnimation(){(0,a.eachAxis)(t=>this.getAxisMotionValue(t).stop())}getAxisMotionValue(t){let e=`_drag${t.toUpperCase()}`,i=this.visualElement.getProps();return i[e]||this.visualElement.getValue(t,(i.initial?i.initial[t]:void 0)||0)}snapToCursor(t){(0,a.eachAxis)(e=>{let{drag:i}=this.getProps();if(!tt(e,i,this.currentDirection))return;let{projection:n}=this.visualElement,s=this.getAxisMotionValue(e);if(n&&n.layout){let{min:i,max:r}=n.layout.layoutBox[e],o=s.get()||0;s.set(t[e]-(0,d.mixNumber)(i,r,.5)+o)}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;let{drag:t,dragConstraints:e}=this.getProps(),{projection:i}=this.visualElement;if(!(0,B.isRefObject)(e)||!i||!this.constraints)return;this.stopAnimation();let n={x:0,y:0};(0,a.eachAxis)(t=>{let e=this.getAxisMotionValue(t);if(e&&!1!==this.constraints){var i,s;let r,o,a,l=e.get();n[t]=(i={min:l,max:l},s=this.constraints[t],r=.5,o=(0,v.calcLength)(i),(a=(0,v.calcLength)(s))>o?r=(0,_.progress)(s.min,s.max-o,i.min):o>a&&(r=(0,_.progress)(i.min,i.max-a,s.min)),(0,$.clamp)(0,1,r))}});let{transformTemplate:s}=this.visualElement.getProps();this.visualElement.current.style.transform=s?s({},""):"none",i.root&&i.root.updateScroll(),i.updateLayout(),this.constraints=!1,this.resolveConstraints(),(0,a.eachAxis)(e=>{if(!tt(e,t,null))return;let i=this.getAxisMotionValue(e),{min:s,max:r}=this.constraints[e];i.set((0,d.mixNumber)(s,r,n[e]))}),this.visualElement.render()}addListeners(){let t;if(!this.visualElement.current)return;Z.set(this.visualElement,this);let e=this.visualElement.current,i=L(e,"pointerdown",t=>{let{drag:i,dragListener:n=!0}
1=this.getProps(),s=t.target,r=s!==e&&(0,m.isElementTextInput)(s);i&&n&&!r&&this.start(t)}),n=()=>{var i,n,s;let r,o,{dragConstraints:a}=this.getProps();(0,B.isRefObject)(a)&&a.current&&(this.constraints=this.resolveRefConstraints(),t||(i=e,n=a.current,r=k(i,Q(s=()=>this.scalePositionWithinConstraints())),o=k(n,Q(s)),t=()=>{r(),o()}))},{projection:s}=this.visualElement,r=s.addEventListener("measure",n);s&&!s.layout&&(s.root&&s.root.updateScroll(),s.updateLayout()),o.frame.read(n);let l=(0,p.addDomEvent)(window,"resize",()=>this.scalePositionWithinConstraints()),h=s.addEventListener("didUpdate",({delta:t,hasLayoutChanged:e})=>{this.isDragging&&e&&((0,a.eachAxis)(e=>{let i=this.getAxisMotionValue(e);i&&(this.originPoint[e]+=t[e].translate,i.set(i.get()+t[e].translate))}),this.visualElement.render())});return()=>{l(),i(),r(),h&&h(),t&&t()}}getProps(){let t=this.visualElement.getProps(),{drag:e=!1,dragDirectionLock:i=!1,dragPropagation:n=!1,dragConstraints:s=!1,dragElastic:r=.35,dragMomentum:o=!0}=t;return{...t,drag:e,dragDirectionLock:i,dragPropagation:n,dragConstraints:s,dragElastic:r,dragMomentum:o}}}function Q(t){let e=!0;return()=>{if(e){e=!1;return}t()}}function tt(t,e,i){return(!0===e||e===t)&&(null===i||i===t)}class te extends n.Feature{constructor(t){super(t),this.removeGroupControls=s.noop,this.removeListeners=s.noop,this.controls=new J(t)}mount(){let{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||s.noop}update(){let{dragControls:t}=this.node.getProps(),{dragControls:e}=this.node.prevProps||{};t!==e&&(this.removeGroupControls(),t&&(this.removeGroupControls=t.subscribe(this.controls)))}unmount(){this.removeGroupControls(),this.removeListeners(),this.controls.isDragging||this.controls.endPanSession()}}t.s(["DragGesture",()=>te],33986);var ti=n;let tn=t=>(e,i)=>{t&&o.frame.update(()=>t(e,i),!1,!0)};class ts extends ti.Feature{constructor(){super(...arguments),this.removePointerDownListener=s.noop}onPointerDown(t){this.session=new U(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:R(this.node)})}createPanHandlers(){let{onPanSessionStart:t,onPanStart:e,onPan:i,onPanEnd:n}=this.node.getProps();return{onSessionStart:tn(t),onStart:tn(e),onMove:tn(i),onEnd:(t,e)=>{delete this.session,n&&o.frame.postRender(()=>n(t,e))}}}mount(){this.removePointerDownListener=L(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}t.s(["PanGesture",()=>ts],85651);let tr={hasAnimatedSinceResize:!0,hasEverUpdated:!1};t.s(["globalProjectionState",()=>tr],7230)},64978,t=>{"use strict";var e=t.i(71645),i=t.i(21476);function n(t=!0){let s=(0,e.useContext)(i.PresenceContext);if(null===s)return[!0,null];let{isPresent:r,onExitComplete:o,register:a}=s,l=(0,e.useId)();(0,e.useEffect)(()=>{if(t)return a(l)},[t]);let h=(0,e.useCallback)(()=>t&&o&&o(l),[l,o,t]);return!r&&o?[!1,h]:[!0]}t.s(["usePresence",()=>n])},46816,77397,17871,73089,57512,99642,t=>{"use strict";var e=t.i(33986),i=t.i(85651),n=t.i(43476),s=t.i(7230),r=t.i(87022),o=t.i(60140),a=t.i(71645),l=t.i(64978),h=t.i(31178),u=t.i(4035);let c=!1;class d extends a.Component{componentDidMount(){let{visualElement:t,layoutGroup:e,switchLayoutGroup:i,layoutId:n}=this.props,{projection:r}=t;r&&(e.group&&e.group.add(r),i&&i.register&&n&&i.register(r),c&&r.root.didUpdate(),r.addEventListener("animationComplete",()=>{this.safeToRemove()}),r.setOptions({...r.options,layoutDependency:this.props.layoutDependency,onExitComplete:()=>this.safeToRemove()})),s.globalProjectionState.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){let{layoutDependency:e,visualElement:i,drag:n,isPresent:s}=this.props,{projection:o}=i;return o&&(o.isPresent=s,t.layoutDependency!==e&&o.setOptions({...o.options,layoutDependency:e}),c=!0,n||t.layoutDependency!==e||void 0===e||t.isPresent!==s?o.willUpdate():this.safeToRemove(),t.isPresent!==s&&(s?o.promote():o.relegate()||r.frame.postRender(()=>
1{let t=o.getStack();t&&t.members.length||this.safeToRemove()}))),null}componentDidUpdate(){let{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),o.microtask.postRender(()=>{!t.currentAnimation&&t.isLead()&&this.safeToRemove()}))}componentWillUnmount(){let{visualElement:t,layoutGroup:e,switchLayoutGroup:i}=this.props,{projection:n}=t;c=!0,n&&(n.scheduleCheckAfterUnmount(),e&&e.group&&e.group.remove(n),i&&i.deregister&&i.deregister(n))}safeToRemove(){let{safeToRemove:t}=this.props;t&&t()}render(){return null}}function m(t){let[e,i]=(0,l.usePresence)(),s=(0,a.useContext)(h.LayoutGroupContext);return(0,n.jsx)(d,{...t,layoutGroup:s,switchLayoutGroup:(0,a.useContext)(u.SwitchLayoutGroupContext),isPresent:e,safeToRemove:i})}t.s(["MeasureLayout",()=>m],77397);var p=t.i(70596),f=t.i(76959),g=t.i(60830),v=t.i(39011),y=t.i(86427),x=t.i(83411),b=t.i(16896),w=t.i(87333),A=t.i(96173),T=t.i(24463),S=t.i(4169),C=t.i(80248);t.i(63074);var P=t.i(89026),M=t.i(706),k=t.i(33871),V=t.i(65091),j=t.i(83920),E=t.i(91559);let D=["TopLeft","TopRight","BottomLeft","BottomRight"],L=D.length,R=t=>"string"==typeof t?parseFloat(t):t,B=t=>"number"==typeof t||V.px.test(t);function F(t,e){return void 0!==t[e]?t[e]:t.borderRadius}let I=z(0,.5,E.circOut),O=z(.5,.95,g.noop);function z(t,e,i){return n=>n<t?0:n>e?1:i((0,j.progress)(t,e,n))}function U(t,e){t.min=e.min,t.max=e.max}function N(t,e){U(t.x,e.x),U(t.y,e.y)}function W(t,e){t.translate=e.translate,t.scale=e.scale,t.originPoint=e.originPoint,t.origin=e.origin}var G=t.i(35636),H=t.i(52101);function _(t,e,i,n,s){return t-=e,t=(0,G.scalePoint)(t,1/i,n),void 0!==s&&(t=(0,G.scalePoint)(t,1/s,n)),t}function $(t,e,[i,n,s],r,o){!function(t,e=0,i=1,n=.5,s,r=t,o=t){if(V.percent.test(e)&&(e=parseFloat(e),e=(0,M.mixNumber)(o.min,o.max,e/100)-o.min),"number"!=typeof e)return;let a=(0,M.mixNumber)(r.min,r.max,n);t===r&&(a-=e),t.min=_(t.min,e,i,a,s),t.max=_(t.max,e,i,a,s)}(t,e[i],e[n],e[s],e.scale,r,o)}let q=["x","scaleX","originX"],K=["y","scaleY","originY"];function Y(t,e,i,n){$(t.x,e,q,i?i.x:void 0,n?n.x:void 0),$(t.y,e,K,i?i.y:void 0,n?n.y:void 0)}var X=t.i(30162);function Z(t){return 0===t.translate&&1===t.scale}function J(t){return Z(t.x)&&Z(t.y)}function Q(t,e){return t.min===e.min&&t.max===e.max}function tt(t,e){return Math.round(t.min)===Math.round(e.min)&&Math.round(t.max)===Math.round(e.max)}function te(t,e){return tt(t.x,e.x)&&tt(t.y,e.y)}function ti(t){return(0,H.calcLength)(t.x)/(0,H.calcLength)(t.y)}function tn(t,e){return t.translate===e.translate&&t.scale===e.scale&&t.originPoint===e.originPoint}var ts=t.i(33887);class tr{constructor(){this.members=[]}add(t){(0,ts.addUniqueItem)(this.members,t);for(let e=this.members.length-1;e>=0;e--){let i=this.members[e];if(i===t||i===this.lead||i===this.prevLead)continue;let n=i.instance;n&&!1===n.isConnected&&!1!==i.isPresent&&!i.snapshot&&(0,ts.removeItem)(this.members,i)}t.scheduleRender()}remove(t){if((0,ts.removeItem)(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){let t=this.members[this.members.length-1];t&&this.promote(t)}}relegate(t){let e,i=this.members.findIndex(e=>t===e);if(0===i)return!1;for(let t=i;t>=0;t--){let i=this.members[t],n=i.instance;if(!1!==i.isPresent&&(!n||!1!==n.isConnected)){e=i;break}}return!!e&&(this.promote(e),!0)}promote(t,e){let i=this.lead;if(t!==i&&(this.prevLead=i,this.lead=t,t.show(),i)){i.instance&&i.scheduleRender(),t.scheduleRender();let n=i.options.layoutDependency,s=t.options.layoutDependency;if(void 0===n||void 0===s||n!==s){let n=i.instance;!(n&&!1===n.isConnected&&!i.snapshot)&&(t.resumeFrom=i,e&&(t.resumeFrom.preserveOpacity=!0),i.snapshot&&(t.snapshot=i.snapshot,t.snapshot.latestValues=i.animationValues||i.latestValues),t.root&&t.root.isUpdating&&(t.isLayoutDirty=!0))}let{crossfade:r}=t.options;!1===r&&i.hide()}}exitAnimationComplete(){this.members.forEach(t=>{let{options:e,resumingFrom:i}=t;e.onExitComplete&&e.onExitComplete(),i&&i.options.onExitComplete&&i.options.onExitComplete()})}scheduleRender(){this.members.forEach(t=>{t.instance&&t.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}var to=t.i(55559);let ta=(t,e)=>t.depth-e.depth;class tl{constructor(){this.children=[],this.isDirty=!1}add(t){(0,ts.addUniqueItem)(this.children,t),this.isDirty=!0}remove(t){(0,ts.removeItem)(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(ta),this.isDirty=!1,this.children.forEac
1h(t)}}var th=t.i(77777);let tu={nodes:0,calculatedTargetDeltas:0,calculatedProjections:0},tc=["","X","Y","Z"],td=0;function tm(t,e,i,n){let{latestValues:s}=e;s[t]&&(i[t]=s[t],e.setStaticValue(t,0),n&&(n[t]=0))}function tp({attachResizeListener:t,defaultParent:e,measureScroll:i,checkIsScrollRoot:n,resetTransform:a}){return class{constructor(t={},i=e?.()){this.id=td++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,C.statsBuffer.value&&(tu.nodes=tu.calculatedTargetDeltas=tu.calculatedProjections=0),this.nodes.forEach(tv),this.nodes.forEach(tS),this.nodes.forEach(tC),this.nodes.forEach(ty),C.statsBuffer.addProjectionMetrics&&C.statsBuffer.addProjectionMetrics(tu)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=t,this.root=i?i.root||i:this,this.path=i?[...i.path,i]:[],this.parent=i,this.depth=i?i.depth+1:0;for(let t=0;t<this.path.length;t++)this.path[t].shouldResetTransform=!0;this.root===this&&(this.nodes=new tl)}addEventListener(t,e){return this.eventHandlers.has(t)||this.eventHandlers.set(t,new p.SubscriptionManager),this.eventHandlers.get(t).add(e)}notifyListeners(t,...e){let i=this.eventHandlers.get(t);i&&i.notify(...e)}hasListeners(t){return this.eventHandlers.has(t)}mount(e){if(this.instance)return;this.isSVG=(0,P.isSVGElement)(e)&&(!(0,P.isSVGElement)(e)||"svg"!==e.tagName),this.instance=e;let{layoutId:i,layout:n,visualElement:o}=this.options;if(o&&!o.current&&o.mount(e),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(n||i)&&(this.isLayoutDirty=!0),t){let i,n=0,o=()=>this.root.updateBlockedByResize=!1;r.frame.read(()=>{n=window.innerWidth}),t(e,()=>{let t=window.innerWidth;if(t!==n){let e,a;n=t,this.root.updateBlockedByResize=!0,i&&i(),e=A.time.now(),a=({timestamp:t})=>{let i=t-e;i>=250&&((0,r.cancelFrame)(a),o(i-250))},r.frame.setup(a,!0),i=()=>(0,r.cancelFrame)(a),s.globalProjectionState.hasAnimatedSinceResize&&(s.globalProjectionState.hasAnimatedSinceResize=!1,this.nodes.forEach(tT))}})}i&&this.root.registerSharedNode(i,this),!1!==this.options.animate&&o&&(i||n)&&this.addEventListener("didUpdate",({delta:t,hasLayoutChanged:e,hasRelativeLayoutChanged:i,layout:n})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}let s=this.options.transition||o.getDefaultTransition()||tE,{onLayoutAnimationStart:r,onLayoutAnimationComplete:a}=o.getProps(),l=!this.targetLayout||!te(this.targetLayout,n),h=!e&&i;if(this.options.layoutRoot||this.resumeFrom||h||e&&(l||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);let e={...(0,w.getValueTransition)(s,"layout"),onPlay:r,onComplete:a};(o.shouldReduceMotion||this.options.layoutRoot)&&(e.delay=0,e.type=!1),this.startAnimation(e),this.setAnimationOrigin(t,h)}else e||tT(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=n})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);let t=this.getStack();t&&t.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),(0,r.cancelFrame)(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){!this.isUpdateBlocked()&&(this.isUpdating=!0,this.nodes&&this.nodes.forEac
1h(tP),this.animationId++)}getTransformTemplate(){let{visualElement:t}=this.options;return t&&t.getProps().transformTemplate}willUpdate(t=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&function t(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;let{visualElement:i}=e.options;if(!i)return;let n=(0,b.getOptimisedAppearId)(i);if(window.MotionHasOptimisedAnimation(n,"transform")){let{layout:t,layoutId:i}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",r.frame,!(t||i))}let{parent:s}=e;s&&!s.hasCheckedOptimisedAppear&&t(s)}(this),this.root.isUpdating||this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let t=0;t<this.path.length;t++){let e=this.path[t];e.shouldResetTransform=!0,e.updateScroll("snapshot"),e.options.layoutRoot&&e.willUpdate(!1)}let{layoutId:e,layout:i}=this.options;if(void 0===e&&!i)return;let n=this.getTransformTemplate();this.prevTransformTemplateValue=n?n(this.latestValues,""):void 0,this.updateSnapshot(),t&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(tb);return}if(this.animationId<=this.animationCommitId)return void this.nodes.forEach(tw);this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(tA),this.nodes.forEach(tf),this.nodes.forEach(tg)):this.nodes.forEach(tw),this.clearAllSnapshots();let t=A.time.now();r.frameData.delta=(0,f.clamp)(0,1e3/60,t-r.frameData.timestamp),r.frameData.timestamp=t,r.frameData.isProcessing=!0,r.frameSteps.update.process(r.frameData),r.frameSteps.preRender.process(r.frameData),r.frameSteps.render.process(r.frameData),r.frameData.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,o.microtask.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(tx),this.sharedNodes.forEach(tM)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,r.frame.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){r.frame.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){!this.snapshot&&this.instance&&(this.snapshot=this.measure(),!this.snapshot||(0,H.calcLength)(this.snapshot.measuredBox.x)||(0,H.calcLength)(this.snapshot.measuredBox.y)||(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let t=0;t<this.path.length;t++)this.path[t].updateScroll();let t=this.layout;this.layout=this.measure(!1),this.layoutVersion++,this.layoutCorrected=(0,X.createBox)(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);let{visualElement:e}=this.options;e&&e.notify("LayoutMeasure",this.layout.layoutBox,t?t.layoutBox:void 0)}updateScroll(t="measure"){let e=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===t&&(e=!1),e&&this.instance){let e=n(this.instance);this.scroll={animationId:this.root.animationId,phase:t,isRoot:e,offset:i(this.instance),wasRoot:this.scroll?this.scroll.isRoot:e}}}resetTransform(){if(!a)return;let t=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,e=this.projectionDelta&&!J(this.projectionDelta),i=this.getTransformTemplate(),n=i?i(this.latestValues,""):void 0,s=n!==this.prevTransformTemplateValue;t&&this.instance&&(e||(0,th.hasTransform)(this.latestValues)||s)&&(a(this.instance,n),this.shouldResetTransform=!1,this.scheduleRender())}measure(t=!0){var e;let i=this.measurePageBox(),n=this.removeElementScroll(i);return t&&(n=this.removeTransform(n)),tR((e=n).x),tR(e.y),{animationId:this.root.animationId,measuredBox:i,layoutBox:n,latestValues:{},source:this.id}}measurePageBox(){let{visualElement:t}=this.options;if(!t)return(0,X.createBox)();let e=t.measureViewportBox();if(!(this.scroll?.wasRoot||this.path.some(tF))){let{scroll:t}=this.root;t&&((0,G.translateAxis)(e.x,t.offset.x),(0,G.translateAxis)(e.y,t.offset.y))}return e}removeElementScroll(t){let e=(0,X.createBox)();if(N(e,t),this.scroll?.wasRoot)return e;for(let i=0;i<this.path.length;i++){let n=this.path[i],{scroll:s,options:r}=n;n!==this.root&&s&&r.layoutScroll&&(s.wasRoot&&N(e,t),(0,G.translateAxis)(e.x,s.offset.x),(0,G.translateAxis)(e.y,s.offset.y))}return e}applyTransform(t,e=!1){let i=(0,X.createBox)();N(i,t);for(let t=0;t<this.path.length;t++){let n=this.path[t];!e&&n.options.layoutScroll&&n.scroll&&n!==n.root&&(0,G.transformBox)(i,{x:-n.scroll.offset.x,y:-n.scroll.offset.y}),(0,th.hasTransform)(n.latestValues)&&(0,G.transformBox)(i,n.latestValues)}return(0,th.hasTransform)(this.latestValues)&&(0,G.transformBox)(i,this.latestValues),i}removeTransform(t){let e=(0,X.createBox)();N(e,t);for(let t=0;t<this.path.length;t++){let i=this.path[t];if(!i.instance||!(0,th.hasTransform)(i.latestValues))continue;(0,th.hasScale)(i.latestValues)&&i.updateSnapshot();let n=(0,X.createBox)();N(n,i.measurePageBox()),Y(e,i.latestValues,i.snapshot?i.snapshot.layoutBox:void 0,n)}return(0,th.hasTransform)(this.latestValues)&&Y(e,this.latestValues),e}setTargetDelta(t){this.targetDelta=t,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(t){this.options={...this.options,...t,crossfade:void 0===t.crossfade||t.crossfade}}clearMeasurements(){this.scroll=void 0,this.layout=void 0,this.snapshot=void 0,this.prevTransformTemplateValue=void 0,this.targetDelta=void 0,this.target=void 0,this.isLayoutDirty=!1}forceRelativeParentToResolveTarget(){this.relativeParent&&this.relativeParent.resolvedRelativeTargetAt!==r.frameData.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(t=!1){let e=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=e.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=e.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=e.isSharedProjectionDirty);let i=!!this.resumingFrom||this!==e;if(!(t||i&&this.isSharedProjectionDirty||this.isProjectionDirty||this.parent?.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;let{layout:n,layoutId:s}=this.options;if(!this.layout||!(n||s))return;this.resolvedRelativeTargetAt=r.frameData.timestamp;let o=this.getClosestProjectingParent();o&&this.linkedParentVersion!==o.layoutVersion&&!o.options.layoutRoot&&this.removeRelativeTarget(),this.targetDelta||this.relativeTarget||(o&&o.layout?this.createRelativeTarget(o,this.layout.layoutBox,o.layout.layoutBox):this.removeRelativeTarget()),(this.relativeTarget||this.targetDelta)&&(this.target||(this.target=(0,X.createBox)(),this.targetWithTransforms=(0,X.createBox)()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),(0,H.calcRelativeBox)(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):N(this.target,this.layout.layoutBox),(0,G.applyBoxDelta)(this.target,this.targetDelta)):N(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget&&(this.attemptToResolveRelativeTarget=!1,o&&!!o.resumingFrom==!!this.resumingFrom&&!o.options.layoutScroll&&o.target&&1!==this.animationProgress?this.createRelativeTarget(o,this.target,o.target):this.relativeParent=this.relativeTarget=void 0),C.statsBuffer.value&&tu.calculatedTargetDeltas++)}getClosestProjectingParent(){if(!(!this.parent||(0,th.hasScale)(this.parent.latestValues)||(0,th.has2DTranslate)(this.parent.latestValues)))if(this.parent.isProjecting())return this.parent;else return this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}createRelativeTarget(t,e,i){this.relativeParent=t,this.linkedParentVersion=t.layoutVersion,this.forceRelativeParentToResolveTarget(),this.relativeTarget=(0,X.createBox)(),this.relativeTargetOrigin=(0,X.createBox)(),(0,H.calcRelativePosition)(this.relativeTargetOrigin,e,i),N(this.relativeTarget,this.relativeTargetOrigin)}removeRelativeTarget(){this.relativeParent=this.relativeTarget=void 0}calcProjection(){let t=this.getLead(),e=!!this.resumingFrom||this!==t,i=!0;
1if((this.isProjectionDirty||this.parent?.isProjectionDirty)&&(i=!1),e&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(i=!1),this.resolvedRelativeTargetAt===r.frameData.timestamp&&(i=!1),i)return;let{layout:n,layoutId:s}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(n||s))return;N(this.layoutCorrected,this.layout.layoutBox);let o=this.treeScale.x,a=this.treeScale.y;(0,G.applyTreeDeltas)(this.layoutCorrected,this.treeScale,this.path,e),t.layout&&!t.target&&(1!==this.treeScale.x||1!==this.treeScale.y)&&(t.target=t.layout.layoutBox,t.targetWithTransforms=(0,X.createBox)());let{target:l}=t;if(!l){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}this.projectionDelta&&this.prevProjectionDelta?(W(this.prevProjectionDelta.x,this.projectionDelta.x),W(this.prevProjectionDelta.y,this.projectionDelta.y)):this.createProjectionDeltas(),(0,H.calcBoxDelta)(this.projectionDelta,this.layoutCorrected,l,this.latestValues),this.treeScale.x===o&&this.treeScale.y===a&&tn(this.projectionDelta.x,this.prevProjectionDelta.x)&&tn(this.projectionDelta.y,this.prevProjectionDelta.y)||(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",l)),C.statsBuffer.value&&tu.calculatedProjections++}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(t=!0){if(this.options.visualElement?.scheduleRender(),t){let t=this.getStack();t&&t.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=(0,X.createDelta)(),this.projectionDelta=(0,X.createDelta)(),this.projectionDeltaWithTransform=(0,X.createDelta)()}setAnimationOrigin(t,e=!1){let i,n=this.snapshot,s=n?n.latestValues:{},r={...this.latestValues},o=(0,X.createDelta)();this.relativeParent&&this.relativeParent.options.layoutRoot||(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!e;let a=(0,X.createBox)(),l=(n?n.source:void 0)!==(this.layout?this.layout.source:void 0),h=this.getStack(),u=!h||h.members.length<=1,c=!!(l&&!u&&!0===this.options.crossfade&&!this.path.some(tj));this.animationProgress=0,this.mixTargetDelta=e=>{let n=e/1e3;if(tk(o.x,t.x,n),tk(o.y,t.y,n),this.setTargetDelta(o),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout){var h,d,m,p,f,g;(0,H.calcRelativePosition)(a,this.layout.layoutBox,this.relativeParent.layout.layoutBox),m=this.relativeTarget,p=this.relativeTargetOrigin,f=a,g=n,tV(m.x,p.x,f.x,g),tV(m.y,p.y,f.y,g),i&&(h=this.relativeTarget,d=i,Q(h.x,d.x)&&Q(h.y,d.y))&&(this.isProjectionDirty=!1),i||(i=(0,X.createBox)()),N(i,this.relativeTarget)}l&&(this.animationValues=r,function(t,e,i,n,s,r){s?(t.opacity=(0,M.mixNumber)(0,i.opacity??1,I(n)),t.opacityExit=(0,M.mixNumber)(e.opacity??1,0,O(n))):r&&(t.opacity=(0,M.mixNumber)(e.opacity??1,i.opacity??1,n));for(let s=0;s<L;s++){let r=`border${D[s]}Radius`,o=F(e,r),a=F(i,r);(void 0!==o||void 0!==a)&&(o||(o=0),a||(a=0),0===o||0===a||B(o)===B(a)?(t[r]=Math.max((0,M.mixNumber)(R(o),R(a),n),0),(V.percent.test(a)||V.percent.test(o))&&(t[r]+="%")):t[r]=a)}(e.rotate||i.rotate)&&(t.rotate=(0,M.mixNumber)(e.rotate||0,i.rotate||0,n))}(r,s,this.latestValues,n,c,u)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=n},this.mixTargetDelta(1e3*!!this.options.layoutRoot)}startAnimation(t){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&((0,r.cancelFrame)(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=r.frame.update(()=>{var e,i,n;let r;s.globalProjectionState.hasAnimatedSinceResize=!0,S.activeAnimations.layout++,this.motionValue||(this.motionValue=(0,y.motionValue)(0)),this.currentAnimation=(e=this.motionValue,i=[0,1e3],n={...t,velocity:0,isSync:!0,onUpdate:e=>{this.mixTargetDelta(e),t.onUpdate&&t.onUpdate(e)},onStop:()=>{S.activeAnimations.layout--},onComplete:()=>{S.activeAnimations.layout--,t.onComplete&&t.onComplete(),this.completeAnimation()}},(r=(0,x.isMotionValue)(e)?e:(0,y.motionValue)(e)).start((0,v.animateMotionValue)("",r,i,n)),r.animation),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);let t=this.getStack();t&&t.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(1e3),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){let t=this.getLead(),{targetWithTransforms:e,target:i,layout:n,latestValues:s}=t;if(e&&i&&n){if(this!==t&&this.layout&&n&&tB(this.options.animationType,this.layout.layoutBox,n.layoutBox)){i=this.target||(0,X.createBox)();
1let e=(0,H.calcLength)(this.layout.layoutBox.x);i.x.min=t.target.x.min,i.x.max=i.x.min+e;let n=(0,H.calcLength)(this.layout.layoutBox.y);i.y.min=t.target.y.min,i.y.max=i.y.min+n}N(e,i),(0,G.transformBox)(e,s),(0,H.calcBoxDelta)(this.projectionDeltaWithTransform,this.layoutCorrected,e,s)}}registerSharedNode(t,e){this.sharedNodes.has(t)||this.sharedNodes.set(t,new tr),this.sharedNodes.get(t).add(e);let i=e.options.initialPromotionConfig;e.promote({transition:i?i.transition:void 0,preserveFollowOpacity:i&&i.shouldPreserveFollowOpacity?i.shouldPreserveFollowOpacity(e):void 0})}isLead(){let t=this.getStack();return!t||t.lead===this}getLead(){let{layoutId:t}=this.options;return t&&this.getStack()?.lead||this}getPrevLead(){let{layoutId:t}=this.options;return t?this.getStack()?.prevLead:void 0}getStack(){let{layoutId:t}=this.options;if(t)return this.root.sharedNodes.get(t)}promote({needsReset:t,transition:e,preserveFollowOpacity:i}={}){let n=this.getStack();n&&n.promote(this,i),t&&(this.projectionDelta=void 0,this.needsReset=!0),e&&this.setOptions({transition:e})}relegate(){let t=this.getStack();return!!t&&t.relegate(this)}resetSkewAndRotation(){let{visualElement:t}=this.options;if(!t)return;let e=!1,{latestValues:i}=t;if((i.z||i.rotate||i.rotateX||i.rotateY||i.rotateZ||i.skewX||i.skewY)&&(e=!0),!e)return;let n={};i.z&&tm("z",t,n,this.animationValues);for(let e=0;e<tc.length;e++)tm(`rotate${tc[e]}`,t,n,this.animationValues),tm(`skew${tc[e]}`,t,n,this.animationValues);for(let e in t.render(),n)t.setStaticValue(e,n[e]),this.animationValues&&(this.animationValues[e]=n[e]);t.scheduleRender()}applyProjectionStyles(t,e){if(!this.instance||this.isSVG)return;if(!this.isVisible){t.visibility="hidden";return}let i=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,t.visibility="",t.opacity="",t.pointerEvents=(0,k.resolveMotionValue)(e?.pointerEvents)||"",t.transform=i?i(this.latestValues,""):"none";return}let n=this.getLead();if(!this.projectionDelta||!this.layout||!n.target){this.options.layoutId&&(t.opacity=void 0!==this.latestValues.opacity?this.latestValues.opacity:1,t.pointerEvents=(0,k.resolveMotionValue)(e?.pointerEvents)||""),this.hasProjected&&!(0,th.hasTransform)(this.latestValues)&&(t.transform=i?i({},""):"none",this.hasProjected=!1);return}t.visibility="";let s=n.animationValues||n.latestValues;this.applyTransformsToTarget();let r=function(t,e,i){let n="",s=t.x.translate/e.x,r=t.y.translate/e.y,o=i?.z||0;if((s||r||o)&&(n=`translate3d(${s}px, ${r}px, ${o}px) `),(1!==e.x||1!==e.y)&&(n+=`scale(${1/e.x}, ${1/e.y}) `),i){let{transformPerspective:t,rotate:e,rotateX:s,rotateY:r,skewX:o,skewY:a}=i;t&&(n=`perspective(${t}px) ${n}`),e&&(n+=`rotate(${e}deg) `),s&&(n+=`rotateX(${s}deg) `),r&&(n+=`rotateY(${r}deg) `),o&&(n+=`skewX(${o}deg) `),a&&(n+=`skewY(${a}deg) `)}let a=t.x.scale*e.x,l=t.y.scale*e.y;return(1!==a||1!==l)&&(n+=`scale(${a}, ${l})`),n||"none"}(this.projectionDeltaWithTransform,this.treeScale,s);i&&(r=i(s,r)),t.transform=r;let{x:o,y:a}=this.projectionDelta;for(let e in t.transformOrigin=`${100*o.origin}% ${100*a.origin}% 0`,n.animationValues?t.opacity=n===this?s.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:s.opacityExit:t.opacity=n===this?void 0!==s.opacity?s.opacity:"":void 0!==s.opacityExit?s.opacityExit:0,T.scaleCorrectors){if
1(void 0===s[e])continue;let{correct:i,applyTo:o,isCSSVariable:a}=T.scaleCorrectors[e],l="none"===r?s[e]:i(s[e],n);if(o){let e=o.length;for(let i=0;i<e;i++)t[o[i]]=l}else a?this.options.visualElement.renderState.vars[e]=l:t[e]=l}this.options.layoutId&&(t.pointerEvents=n===this?(0,k.resolveMotionValue)(e?.pointerEvents)||"":"none")}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(t=>t.currentAnimation?.stop()),this.root.nodes.forEach(tb),this.root.sharedNodes.clear()}}}function tf(t){t.updateLayout()}function tg(t){let e=t.resumeFrom?.snapshot||t.snapshot;if(t.isLead()&&t.layout&&e&&t.hasListeners("didUpdate")){let{layoutBox:i,measuredBox:n}=t.layout,{animationType:s}=t.options,r=e.source!==t.layout.source;"size"===s?(0,to.eachAxis)(t=>{let n=r?e.measuredBox[t]:e.layoutBox[t],s=(0,H.calcLength)(n);n.min=i[t].min,n.max=n.min+s}):tB(s,e.layoutBox,i)&&(0,to.eachAxis)(n=>{let s=r?e.measuredBox[n]:e.layoutBox[n],o=(0,H.calcLength)(i[n]);s.max=s.min+o,t.relativeTarget&&!t.currentAnimation&&(t.isProjectionDirty=!0,t.relativeTarget[n].max=t.relativeTarget[n].min+o)});let o=(0,X.createDelta)();(0,H.calcBoxDelta)(o,i,e.layoutBox);let a=(0,X.createDelta)();r?(0,H.calcBoxDelta)(a,t.applyTransform(n,!0),e.measuredBox):(0,H.calcBoxDelta)(a,i,e.layoutBox);let l=!J(o),h=!1;if(!t.resumeFrom){let n=t.getClosestProjectingParent();if(n&&!n.resumeFrom){let{snapshot:s,layout:r}=n;if(s&&r){let o=(0,X.createBox)();(0,H.calcRelativePosition)(o,e.layoutBox,s.layoutBox);let a=(0,X.createBox)();(0,H.calcRelativePosition)(a,i,r.layoutBox),te(o,a)||(h=!0),n.options.layoutRoot&&(t.relativeTarget=a,t.relativeTargetOrigin=o,t.relativeParent=n)}}}t.notifyListeners("didUpdate",{layout:i,snapshot:e,delta:a,layoutDelta:o,hasLayoutChanged:l,hasRelativeLayoutChanged:h})}else if(t.isLead()){let{onExitComplete:e}=t.options;e&&e()}t.options.transition=void 0}function tv(t){C.statsBuffer.value&&tu.nodes++,t.parent&&(t.isProjecting()||(t.isProjectionDirty=t.parent.isProjectionDirty),t.isSharedProjectionDirty||(t.isSharedProjectionDirty=!!(t.isProjectionDirty||t.parent.isProjectionDirty||t.parent.isSharedProjectionDirty)),t.isTransformDirty||(t.isTransformDirty=t.parent.isTransformDirty))}function ty(t){t.isProjectionDirty=t.isSharedProjectionDirty=t.isTransformDirty=!1}function tx(t){t.clearSnapshot()}function tb(t){t.clearMeasurements()}function tw(t){t.isLayoutDirty=!1}function tA(t){let{visualElement:e}=t.options;e&&e.getProps().onBeforeLayoutMeasure&&e.notify("BeforeLayoutMeasure"),t.resetTransform()}function tT(t){t.finishAnimation(),t.targetDelta=t.relativeTarget=t.target=void 0,t.isProjectionDirty=!0}function tS(t){t.resolveTargetDelta()}function tC(t){t.calcProjection()}function tP(t){t.resetSkewAndRotation()}function tM(t){t.removeLeadSnapshot()}function tk(t,e,i){t.translate=(0,M.mixNumber)(e.translate,0,i),t.scale=(0,M.mixNumber)(e.scale,1,i),t.origin=e.origin,t.originPoint=e.originPoint}function tV(t,e,i,n){t.min=(0,M.mixNumber)(e.min,i.min,n),t.max=(0,M.mixNumber)(e.max,i.max,n)}function tj(t){return t.animationValues&&void 0!==t.animationValues.opacityExit}let tE={duration:.45,ease:[.4,0,.1,1]},tD=t=>"u">typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(t),tL=tD("applewebkit/")&&!tD("chrome/")?Math.round:g.noop;function tR(t){t.min=tL(t.min),t.max=tL(t.max)}function tB(t,e,i){return"position"===t||"preserve-aspect"===t&&!(0,H.isNear)(ti(e),ti(i),.2)}function tF(t){return t!==t.root&&t.scroll?.wasRoot}var tI=t.i(82774);let tO=tp({attachResizeListener:(t,e)=>(0,tI.addDomEvent)(t,"resize",e),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body?.scrollLeft||0,y:document.documentElement.scrollTop||document.body?.scrollTop||0}),checkIsScrollRoot:()=>!0}),tz={current:void 0},tU=tp({measureScroll:t=>({x:t.scrollLeft,y:t.scrollTop}),defaultParent:()=>{if(!tz.current){let t=new tO({});t.mount(window),t.setOptions({layoutScroll:!0}),tz.current=t}return tz.current},resetTransform:(t,e)=>{t.style.transform=void 0!==e?e:"none"},checkIsScrollRoot:t=>"fixed"===window.getComputedStyle(t).position});t.s(["HTMLProjectionNode",()=>tU],17871);let tN={pan:{Feature:i.PanGesture},drag:{Feature:e.DragGesture,ProjectionNode:tU,MeasureLayout:m}};t.s(["drag",()=>tN],46816);var tW=t.i(42098),tG=t.i(39676),tH=t.i(49652);function t_(t,e){let i=(0,tH.resolveElements)(t),n=new AbortController;return[i,{passive:!0,...e,signal:n.signal},()=>n.abort()]}t.s(["setupGesture",()=>t_],73089);var t$=t.i(65536);function tq(t,e,i){let{props:n}=t;t.animationState&&n.whileHover&&t.animationState.setActive("whileHover","Start"===i);let s=n["onHover"+i];s&&r.frame.postRender(()=>s(e,(0,t$.extractEventInfo)(e)))}class tK extends tW.Feature{mount(){let{current:t}=this.node;
1t&&(this.unmount=function(t,e,i={}){let[n,s,r]=t_(t,i);return n.forEach(t=>{let i,n=!1,r=!1,o=e=>{i&&(i(e),i=void 0),t.removeEventListener("pointerleave",l)},a=t=>{n=!1,window.removeEventListener("pointerup",a),window.removeEventListener("pointercancel",a),r&&(r=!1,o(t))},l=t=>{if("touch"!==t.pointerType){if(n){r=!0;return}o(t)}};t.addEventListener("pointerenter",n=>{if("touch"===n.pointerType||(0,tG.isDragActive)())return;r=!1;let o=e(t,n);"function"==typeof o&&(i=o,t.addEventListener("pointerleave",l,s))},s),t.addEventListener("pointerdown",()=>{n=!0,window.addEventListener("pointerup",a,s),window.addEventListener("pointercancel",a,s)},s)}),r}(t,(t,e)=>(tq(this.node,e,"Start"),t=>tq(this.node,t,"End"))))}unmount(){}}t.s(["HoverGesture",()=>tK],57512);var tY=tW,tX=t.i(38638);class tZ extends tY.Feature{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch(e){t=!0}t&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){this.isActive&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=(0,tX.pipe)((0,tI.addDomEvent)(this.node.current,"focus",()=>this.onFocus()),(0,tI.addDomEvent)(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}t.s(["FocusGesture",()=>tZ],99642)},72846,t=>{"use strict";var e=t.i(42824);function i(t){return(0,e.isObject)(t)&&"offsetHeight"in t}t.s(["isHTMLElement",()=>i])},46932,t=>{"use strict";var e=t.i(54505),i=t.i(7051),n=t.i(23070),s=t.i(46816),r=t.i(57512),o=t.i(99642),a=t.i(42098),l=t.i(72846),h=t.i(39676);let u=(t,e)=>!!e&&(t===e||u(t,e.parentElement));var c=t.i(41327),d=t.i(73089),m=t.i(19880);let p=new WeakSet;function f(t){return e=>{"Enter"===e.key&&t(e)}}function g(t,e){t.dispatchEvent(new PointerEvent("pointer"+e,{isPrimary:!0,bubbles:!0}))}function v(t){return(0,c.isPrimaryPointer)(t)&&!(0,h.isDragActive)()}let y=new WeakSet;var x=t.i(87022),b=t.i(65536);function w(t,e,i){let{props:n}=t;if(t.current instanceof HTMLButtonElement&&t.current.disabled)return;t.animationState&&n.whileTap&&t.animationState.setActive("whileTap","Start"===i);let s=n["onTap"+("End"===i?"":i)];s&&x.frame.postRender(()=>s(e,(0,b.extractEventInfo)(e)))}class A extends a.Feature{mount(){let{current:t}=this.node;if(!t)return;let{globalTapTarget:e,propagate:i}=this.node.props;this.unmount=function(t,e,i={}){let[n,s,r]=(0,d.setupGesture)(t,i),o=t=>{let n=t.currentTarget;if(!v(t)||y.has(t))return;p.add(n),i.stopPropagation&&y.add(t);let r=e(n,t),o=(t,e)=>{window.removeEventListener("pointerup",a),window.removeEventListener("pointercancel",l),p.has(n)&&p.delete(n),v(t)&&"function"==typeof r&&r(t,{success:e})},a=t=>{o(t,n===window||n===document||i.useGlobalTarget||u(n,t.target))},l=t=>{o(t,!1)};window.addEventListener("pointerup",a,s),window.addEventListener("pointercancel",l,s)};return n.forEach(t=>{(i.useGlobalTarget?window:t).addEventListener("pointerdown",o,s),(0,l.isHTMLElement)(t)&&(t.addEventListener("focus",t=>((t,e)=>{let i=t.currentTarget;if(!i)return;let n=f(()=>{if(p.has(i))return;g(i,"down");let t=f(()=>{g(i,"up")});i.addEventListener("keyup",t,e),i.addEventListener("blur",()=>g(i,"cancel"),e)});i.addEventListener("keydown",n,e),i.addEventListener("blur",()=>i.removeEventListener("keydown",n),e)})(t,s)),(0,m.isElementKeyboardAccessible)(t)||t.hasAttribute("tabindex")||(t.tabIndex=0))}),r}(t,(t,e)=>(w(this.node,e,"Start"),(t,{success:e})=>w(this.node,t,e?"End":"Cancel")),{useGlobalTarget:e,stopPropagation:i?.tap===!1})}unmount(){}}var T=a;let S=new WeakMap,C=new WeakMap,P=t=>{let e=S.get(t.target);e&&e(t)},M=t=>{t.forEach(P)},k={some:0,all:1};class V extends T.Feature{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){var t;let e;this.unmount();let{viewport:i={}}=this.node.getProps(),{root:n,margin:s,amount:r="some",once:o}=i,a={root:n?n.current:void 0,rootMargin:s,threshold:"number"==typeof r?r:k[r]},l=t=>{let{isIntersecting:e}=t;if(this.isInView===e||(this.isInView=e,o&&!e&&this.hasEnteredView))return;e&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",e);let{onViewportEnter:i,onViewportLeave:n}=this.node.getProps(),s=e?i:n;s&&s(t)};return t=this.node.current,e=function({root:t,...e}){let i=t||document;C.has(i)||C.set(i,{});let n=C.get(i),s=JSON.stringify(e);return n[s]||(n[s]=new IntersectionObserver(M,{root:t,...e})),n[s]}(a),S.set(t,l),e.observe(t),()=>{S.delete(t),e.unobserve(t)}}mount(){this.startObserver()}update(){if("u"<typeof IntersectionObserver)return;let{props:t,prevProps:e}=this.node;["amount","margin","root"].some(function({viewport:t={}},{viewport:e={}}={}){return i=>t[i]!==e[i]}(t,e))&&this.startObserver()}unmount(){}}let j={inView:{Feature:V},tap:{Feature:A},focus:{Feature:o.FocusGesture},hover:{Feature:r.HoverGesture}};
1var E=t.i(17871),D=t.i(77397);let L={layout:{ProjectionNode:E.HTMLProjectionNode,MeasureLayout:D.MeasureLayout}},R={...n.animations,...j,...s.drag,...L},B=(0,i.createMotionProxy)(R,e.createDomVisualElement);t.s(["motion",()=>B],46932)},54852,75254,t=>{"use strict";var e=t.i(43476),i=t.i(71645);let n=t=>{let e=t.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,e,i)=>i?i.toUpperCase():e.toLowerCase());return e.charAt(0).toUpperCase()+e.slice(1)},s=(...t)=>t.filter((t,e,i)=>!!t&&""!==t.trim()&&i.indexOf(t)===e).join(" ").trim();var r={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let o=(0,i.forwardRef)(({color:t="currentColor",size:e=24,strokeWidth:n=2,absoluteStrokeWidth:o,className:a="",children:l,iconNode:h,...u},c)=>(0,i.createElement)("svg",{ref:c,...r,width:e,height:e,stroke:t,strokeWidth:o?24*Number(n)/Number(e):n,className:s("lucide",a),...!l&&!(t=>{for(let e in t)if(e.startsWith("aria-")||"role"===e||"title"===e)return!0})(u)&&{"aria-hidden":"true"},...u},[...h.map(([t,e])=>(0,i.createElement)(t,e)),...Array.isArray(l)?l:[l]])),a=(t,e)=>{let r=(0,i.forwardRef)(({className:r,...a},l)=>(0,i.createElement)(o,{ref:l,iconNode:e,className:s(`lucide-${n(t).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${t}`,r),...a}));return r.displayName=n(t),r};t.s(["default",()=>a],75254);let l=a("globe",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]]),h=a("mail",[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]]),u=t=>(0,e.jsx)(l,{...t}),c=t=>(0,e.jsxs)("svg",{viewBox:"0 0 438.549 438.549",xmlns:"http://www.w3.org/2000/svg",role:"img",...t,children:[(0,e.jsx)("title",{children:"GitHub"}),(0,e.jsx)("path",{fill:"currentColor",d:"M409.132 114.573c-19.608-33.596-46.205-60.194-79.798-79.8-33.598-19.607-70.277-29.408-110.063-29.408-39.781 0-76.472 9.804-110.063 29.408-33.596 19.605-60.192 46.204-79.8 79.8C9.803 148.168 0 184.854 0 224.63c0 47.78 13.94 90.745 41.827 128.906 27.884 38.164 63.906 64.572 108.063 79.227 5.14.954 8.945.283 11.419-1.996 2.475-2.282 3.711-5.14 3.711-8.562 0-.571-.049-5.708-.144-15.417a2549.81 2549.81 0 01-.144-25.406l-6.567 1.136c-4.187.767-9.469 1.092-15.846 1-6.374-.089-12.991-.757-19.842-1.999-6.854-1.231-13.229-4.086-19.13-8.559-5.898-4.473-10.085-10.328-12.56-17.556l-2.855-6.57c-1.903-4.374-4.899-9.233-8.992-14.559-4.093-5.331-8.232-8.945-12.419-10.848l-1.999-1.431c-1.332-.951-2.568-2.098-3.711-3.429-1.142-1.331-1.997-2.663-2.568-3.997-.572-1.335-.098-2.43 1.427-3.289 1.525-.859 4.281-1.276 8.28-1.276l5.708.853c3.807.763 8.516 3.042 14.133 6.851 5.614 3.806 10.229 8.754 13.846 14.842 4.38 7.806 9.657 13.754 15.846 17.847 6.184 4.093 12.419 6.136 18.699 6.136 6.28 0 11.704-.476 16.274-1.423 4.565-.952 8.848-2.383 12.847-4.285 1.713-12.758 6.377-22.559 13.988-29.41-10.848-1.14-20.601-2.857-29.264-5.14-8.658-2.286-17.605-5.996-26.835-11.14-9.235-5.137-16.896-11.516-22.985-19.126-6.09-7.614-11.088-17.61-14.987-29.979-3.901-12.374-5.852-26.648-5.852-42.826 0-23.035 7.52-42.637 22.557-58.817-7.044-17.318-6.379-36.732 1.997-58.24 5.52-1.715 13.706-.428 24.554 3.853 10.85 4.283 18.794 7.952 23.84 10.994 5.046 3.041 9.089 5.618 12.135 7.708 17.705-4.947 35.976-7.421 54.818-7.421s37.117 2.474 54.823 7.421l10.849-6.849c7.419-4.57 16.18-8.758 26.262-12.565 10.088-3.805 17.802-4.853 23.134-3.138 8.562 21.509 9.325 40.922 2.279 58.24 15.036 16.18 22.559 35.787 22.559 58.817 0 16.178-1.958 30.497-5.853 42.966-3.9 12.471-8.941 22.457-15.125 29.979-6.191 7.521-13.901 13.85-23.131 18.986-9.232 5.14-18.182 8.85-26.84 11.136-8.662 2.286-18.415 4.004-29.263 5.146 9.894 8.562 14.842 22.077 14.842 40.539v60.237c0 3.422 1.19 6.279 3.572 8.562 2.379 2.279 6.136 2.95 11.276 1.995 44.163-14.653 80.185-41.062 108.068-79.226 27.88-38.161 41.825-81.126 41.825-128.906-.01-39.771-9.818-76.454-29.414-110.049z"})]}),d={name:"Darshankumar Prajapati",initials:"DP",url:"https://djp1002.github.io",location:"Mandi, HP, India",locationLink:"https://maps.app.goo.gl/1BMv9XLTZUb8Z2PH9",description:"I build things that move. Robots, ideas, systems, living or not. Legged Robotics, Dynamics, Perception & Control, Reinforcement Learning",summary:"M.Tech (Research) Scholar at IIT Mandiâs Centre for AI and Robotics, specializing in legged systems, optimal control, and sim-to-real reinfor
1cement learning. My thesis focuses on autonomous multi-terrain navigation for heterogeneous UAVâquadruped coordination in industrial environments. I work on dynamic modeling, MPC-based quadruped control, RL-driven dual-arm manipulation, and dynamic biped locomotion, integrating perception, planning, and control into cohesive multi-robot frameworks. Building robots that respect dynamics before they learn to bend them.",avatarUrl:"/me.jpeg",skills:[{name:"ROS",icon:t=>(0,e.jsxs)("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...t,children:[(0,e.jsx)("title",{children:"ROS"}),(0,e.jsx)("path",{fill:"currentColor",d:"M2.807 0C1.353 0 .173 1.22.173 2.722c0 1.504 1.18 2.723 2.634 2.723 1.455 0 2.635-1.22 2.635-2.723S4.262 0 2.807 0zM12 0c-1.455 0-2.634 1.22-2.634 2.722 0 1.504 1.18 2.723 2.634 2.723 1.455 0 2.634-1.22 2.634-2.723S13.454 0 12 0zm9.193 0c-1.455 0-2.635 1.22-2.635 2.722 0 1.504 1.18 2.723 2.635 2.723 1.455 0 2.634-1.22 2.634-2.723S22.647 0 21.193 0zM2.807 9.277C1.353 9.277.173 10.497.173 12s1.18 2.722 2.634 2.722c1.455 0 2.635-1.219 2.635-2.722 0-1.504-1.18-2.723-2.635-2.723zm9.193 0c-1.455 0-2.634 1.22-2.634 2.723s1.18 2.722 2.634 2.722c1.455 0 2.634-1.219 2.634-2.722 0-1.504-1.18-2.723-2.634-2.723zm9.193 0c-1.455 0-2.635 1.22-2.635 2.723s1.18 2.722 2.635 2.722c1.455 0 2.634-1.219 2.634-2.722 0-1.504-1.18-2.723-2.634-2.723zM2.807 18.555c-1.454 0-2.634 1.22-2.634 2.722C.173 22.781 1.353 24 2.807 24c1.455 0 2.635-1.22 2.635-2.723s-1.18-2.722-2.635-2.722zm9.193 0c-1.455 0-2.634 1.22-2.634 2.722C9.366 22.781 10.546 24 12 24c1.455 0 2.634-1.22 2.634-2.723s-1.18-2.722-2.634-2.722zm9.193 0c-1.455 0-2.635 1.22-2.635 2.722 0 1.504 1.18 2.723 2.635 2.723 1.455 0 2.634-1.22 2.634-2.723s-1.18-2.722-2.634-2.722z"})]})},{name:"ROS 2",icon:()=>(0,e.jsx)("img",{src:"/ros2.png",alt:"ROS 2",className:"size-6 brightness-0 dark:brightness-0 dark:invert"})},{name:"Gazebo",icon:t=>(0,e.jsxs)("svg",{...t,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 128 128",children:[(0,e.jsx)("path",{fill:"#fff",d:"m14.428 38.099.651 54.711 47.547 28.335 2.28-26.38S91.612 78.48 89.657 77.179c-1.952-1.302-75.23-39.08-75.23-39.08z"}),(0,e.jsx)("path",{fill:"#231f20",d:"m60.493 68.22 1.61 1a3.591 3.591 0 0 0 1.892.539c.658 0 1.315-.18 1.894-.542l1.614-1.005 16.37 10.139-21.857 13.61a3.58 3.58 0 0 0-1.69 3.051l.065 22.308L20.904 92.8ZM17.565 41.564 53.697 64 17.565 86.436Zm99.814 22.365a3.583 3.583 0 0 0-5.48-3.032L90.662 74.12l-16.37-10.136 41.483-25.83a3.587 3.587 0 0 0 1.69-3.048 3.586 3.586 0 0 0-1.697-3.042L65.882 1.175a3.583 3.583 0 0 0-3.778.003L12.218 32.154a3.584 3.584 0 0 0-1.693 3.045V92.8a3.585 3.585 0 0 0 1.693 3.046l49.886 30.976c.024.013.05.024.075.039.026.015.05.034.077.05.058.031.117.054.175.082.06.03.117.06.177.083.093.04.188.073.283.102.056.02.111.04.168.056.107.03.215.05.324.068.047.006.093.02.14.026.156.021.314.034.471.034h.001c.326 0 .653-.045.97-.137h.004a2.92 2.92 0 0 0 .36-.13c.036-.013.074-.023.11-.038.098-.043.192-.098.288-.152.052-.03.106-.053.158-.083l.002-.002.002-.002.095-.06 49.787-30.912a3.585 3.585 0 0 0 1.693-3.057l-.085-28.86"}),(0,e.jsx)("path",{fill:"#fff",d:"m67.501 96.99.059 20.355 42.73-26.534-.06-20.43L67.5 96.989"}),(0,e.jsx)("path",{fill:"#f58113",d:"m20.904 35.199 43.09 26.755 43.091-26.833L63.998 8.44 20.904 35.198"})]})},{name:"Isaac Sim",icon:()=>(0,e.jsx)("img",{src:"/isaacsim.png",alt:"Isaac Sim",className:"size-6"})},{name:"Embedded Systems",icon:t=>(0,e.jsx)("svg",{...t,version:"1.1",id:"Layer_1",xmlns:"http://www.w3.org/2000/svg",x:"0px",y:"0px",width:"300px",height:"300px",viewBox:"0 0 300 300",children:(0,e.jsxs)("g",{children:[(0,e.jsx)("path",{fill:"#3CB4E6",d:"M300,150L300,150c0-2.5-0.1-5-0.2-7.5c0-0.8-0.1-1.7-0.2-2.5c-0.1-1.6-0.2-3.3-0.4-4.9c-0.1-1-0.2-2-0.3-3 c-0.2-1.4-0.3-2.9-0.6-4.3c-0.2-1.1-0.3-2.1-0.5-3.2c-0.2-1.4-0.5-2.7-0.7-4c-0.2-1.1-0.5-2.2-0.7-3.3c-0.3-1.3-0.6-2.5-0.9-3.8 c-0.3-1.1-0.6-2.2-0.9-3.3c-0.3-1.2-0.7-2.4-1-3.6c-0.3-1.1-0.7-2.2-1.1-3.3c-0.4-1.2-0.8-2.3-1.2-3.5c-0.4-1.1-0.8-2.2-1.2-3.3 c-0.4-1.1-0.9-2.2-1.3-3.3c-0.5-1.1-0.9-2.2-1.4-3.3c-0.5-1.1-0.9-2.2-1.4-3.2c-0.5-1.1-1-2.2-1.5-3.3c-0.5-1-1-2-1.5-3.1 c-0.6-1.1-1.1-2.2-1.7-3.2c-0.5-1-1.1-1.9-1.7-2.9c-0.6-1.1-1.2-2.1-1.9-3.2c-0.6-0.9-1.2-1.9-1.8-2.8c-0.7-1.1-1.4-2.1-2.1-3.1 c-0.6-0.9-1.2-1.7-1.9-2.6c-0.8-1-1.5-2.1-2.2-3.1c-0.6-0.8-1.3-1.6-1.9-2.5c-0.8-1-1.6-2-2.5-3.1c-0.6-0.8-1.3-1.5-1.9-2.2 c-0.9-1-1.8-2-2.7-3.1c0,0-0.1-0.1-0.2-0.2l0,0c-11.2-12.1-24.3-22.5-39-30.4l0,0c0,0,0,0,0,0c-2.4-1.3-4.9-2.6-7.4-3.7 c-0.8-0.4-1.5-0.7-2.3-1.1c-1.8-0.8-3.6-1.6-5.4-2.3c-0.9-0.4-1.8-0.7-2.7-1.1c-1.8-0.7-3.7-1.4-5.6-2c-0.8-0.3-1.7-0.6-2.5-0.8 c-2.6-0.8-5.3-1.6-8-2.3c0,0-0.1,0-0.1,0c-2.7-0.7-5.5-1.3-8.3-1.9c-0.9-0.2-1.7-0.3-2.6-0.5c-2-0.3-4-0.7-6-0.9 c-1-0.2-2-0.3-3-0.4c-2-0.2-4-0.4-6.1-0.6c-0.9-0.1-1.8-0.2-2.7-0.2C155.9,0.1,153,0,150,0c-27.8,0-53.7,7.6-76,20.7 c-0.7,0.4-1.5,0.8-2.2,1.3c-7.4,4.6-14.4,9.8-20.9,15.5c-2.3,2.1-4.7,4.2-6.9,6.4c-2.2,2.2-4.3,4.5-6.4,6.9 c-4.3,4.8-8.3,9.9-11.9,15.3c-0.2,0.2-0.3,0.5-0.5,0.7c-1.9,2.8-3.6,5.7-5.3,8.6c-0.9,1.7-1.9,3.4-2.8,5 c-6.3,12.1-11.1,25-13.9,38.7c-0.2,0.9-0.3,1.8-0.5,2.7C0.9,131,0,140.4,0,150l0,0l0,0c0,82.9,67.2,150,150,150 c2.6,0,5.2-0.1,7.7-0.2c16.4-0.8,32-4.3,46.5-10c2.6-1,5.2-2.1,7.7-3.3c4.8-2.2,9.5-4.6,14.1-7.3c1.7-1,3.4-2.1,5.1-3.2 c4.4-2.8,8.6-5.9,12.7-9.1c4.3-3.4,8.4-7,12.2-10.9c2-2,3.9-4,5.7-6c2.5-2.8,4.9-5.7,7.2-8.7c2.2-2.8,4.3-5.7,6.2
1-8.8 c2-3,3.9-6.2,5.7-9.3C293,201.5,300,176.6,300,150C300,150,300,150,300,150C300,150,300,150,300,150z"}),(0,e.jsx)("g",{children:(0,e.jsx)("g",{children:(0,e.jsx)("path",{fill:"#FFFFFF",d:"M240.6,87.2c15.7-14,28.1-53,14.2-73.4c-20.1-29.6-67.1,46.4-73.6,59c-1.6-4.5-5.5-10.3-10.2-11.5 c-3.6,3.6-3.7,11-2.7,15.2C154.6,63.9,98,39.2,78.7,54.2c-3.8,2.9-2.9,8.8-2.9,8.8c2.3,21.1,25.2,56.6,46.8,54.8 c-16.9,23.1-19.1,63.1,24,62.2c29.8-0.7,33.3-27.4,39.1-51.6c1.8,10.6,7.3,27.4,12.2,33.2c2-8.6-1.6-24.3-5.6-34.7 c18.2,20.1,44,47.4,69.4,17.3C283,118.9,265.3,99.7,240.6,87.2z"})})}),(0,e.jsxs)("g",{children:[(0,e.jsx)("path",{fill:"currentColor",d:"M55.6,233v1.4c0,4.3,1.2,7.1,6.1,7.1c2.8,0,5.5-1.8,5.5-5.7c0-4.2-2.1-5.7-8.2-7.8c-8.2-2.8-12-6.2-12-13.9 c0-8.9,5.5-13.5,14.2-13.5c8.2,0,14.2,3.6,14.2,12.3v1.3h-8.9c0-4.3-1.5-6.8-5-6.8c-4.2,0-5.3,2.6-5.3,5.3c0,2.8,0.8,4.6,4.8,6.2 l7.1,3.1c7,3,8.7,6.5,8.7,12.1c0,9.7-5.9,14.1-16,14.1c-10.5,0-14.6-4.9-14.6-13.4V233C46.3,233,55.6,233,55.6,233z"}),(0,e.jsx)("path",{fill:"currentColor",d:"M108.3,201.4v7.6h-10v38.3H89V209H79v-7.6H108.3z"}),(0,e.jsx)("path",{fill:"currentColor",d:"M112.5,201.4h13.8l6.5,32.4h0.1l6.6-32.4h13.7v45.9h-8.5v-36.6h-0.1l-8.2,36.6h-7.2l-8.2-36.6H121v36.6h-8.5 V201.4z"}),(0,e.jsx)("path",{fill:"currentColor",d:"M168.2,221.6h2.8c4.8,0,7-3.5,7-8.1c0-4.2-1.5-7.6-5.9-7.6c-6,0-6.5,5.5-6.5,8.9h-5.7 c0-7.8,3.7-13.1,12.1-13.1c9.5,0,11.7,6.8,11.7,11.8c0,4.6-2.3,8.6-7.1,9.8v0.1c5.1,1,8.4,4.3,8.4,10.6c0,8.3-4.2,14.1-12.9,14.1 c-12.2,0-12.9-10.7-12.9-12.7v-0.6h5.7c0,4.2,2,9,7.3,9c3.3,0,7.3-1.7,7.3-9.4c0-5.3-2.6-8.7-8.2-8.7h-2.9V221.6z"}),(0,e.jsx)("path",{fill:"currentColor",d:"M215.6,247.3h-25.4c0-8.5,4.8-14.2,9.8-18.6l3.7-3.1c3.7-3.1,6-5.9,6-10.9c0-3.9-1.7-8.2-6.6-8.2 c-7,0-7.2,7.3-7.2,9.8h-5.7c0-8.6,3.6-14.5,12.9-14.5c10.5,0,12.2,8.2,12.2,12.1c0,7-2.9,10.6-8,15l-6.4,5.6 c-2.5,2.1-4.3,4.8-5,7.8h19.5L215.6,247.3L215.6,247.3z"})]})]})})},{name:"Edge Systems",icon:t=>(0,e.jsxs)("svg",{...t,xmlns:"http://www.w3.org/2000/svg",width:"2500",height:"1841",viewBox:"35.188 31.512 351.46 258.785",children:[(0,e.jsx)("path",{fill:"currentColor",d:"M384.195 282.109c0 3.771-2.769 6.302-6.047 6.302v-.023c-3.371.023-6.089-2.508-6.089-6.278 0-3.769 2.718-6.293 6.089-6.293 3.279-.001 6.047 2.523 6.047 6.292zm2.453 0c0-5.176-4.02-8.18-8.5-8.18-4.511 0-8.531 3.004-8.531 8.18 0 5.172 4.021 8.188 8.531 8.188 4.48 0 8.5-3.016 8.5-8.188m-9.91.692h.91l2.109 3.703h2.315l-2.336-3.859c1.207-.086 2.2-.66 2.2-2.285 0-2.02-1.393-2.668-3.75-2.668h-3.411v8.812h1.961l.002-3.703m0-1.492v-2.121h1.364c.742 0 1.753.06 1.753.965 0 .984-.523 1.156-1.398 1.156h-1.719M329.406 237.027l10.598 28.992H318.48l10.926-28.992zm-11.35-11.289l-24.423 61.88h17.245l3.863-10.935h28.903l3.656 10.935h18.722l-24.605-61.888-23.361.008zm-49.033 61.903h17.497v-61.922l-17.5-.004.003 61.926zm-121.467-61.926l-14.598 49.078-13.984-49.074-18.879-.004 19.972 61.926h25.207l20.133-61.926h-17.851zm70.725 13.484h7.521c10.909 0 17.966 4.898 17.966 17.609 0 12.713-7.057 17.612-17.966 17.612h-7.521v
1-35.221zm-17.35-13.484v61.926h28.365c15.113 0 20.049-2.512 25.385-8.147 3.769-3.957 6.207-12.642 6.207-22.134 0-8.707-2.063-16.469-5.66-21.305-6.48-8.648-15.816-10.34-29.75-10.34h-24.547zm-165.743-.086v62.012h17.645v-47.086l13.672.004c4.527 0 7.754 1.129 9.934 3.457 2.765 2.945 3.894 7.699 3.894 16.396v27.229h17.098v-34.262c0-24.453-15.586-27.75-30.836-27.75H35.188zm137.583.086l.007 61.926h17.489v-61.926h-17.496z"}),(0,e.jsx)("path",{fill:"#77b900",d:"M82.211 102.414s22.504-33.203 67.437-36.638V53.73c-49.769 3.997-92.867 46.149-92.867 46.149s24.41 70.564 92.867 77.026v-12.804c-50.237-6.32-67.437-61.687-67.437-61.687zm67.437 36.223v11.727c-37.968-6.77-48.507-46.237-48.507-46.237s18.23-20.195 48.507-23.47v12.867c-.023 0-.039-.007-.058-.007-15.891-1.907-28.305 12.938-28.305 12.938s6.958 24.99 28.363 32.182m0-107.125V53.73c1.461-.112 2.922-.207 4.391-.257 56.582-1.907 93.449 46.406 93.449 46.406s-42.343 51.488-86.457 51.488c-4.043 0-7.828-.375-11.383-1.005v13.739a75.04 75.04 0 0 0 9.481.612c41.051 0 70.738-20.965 99.484-45.778 4.766 3.817 24.278 13.103 28.289 17.167-27.332 22.884-91.031 41.33-127.144 41.33-3.481 0-6.824-.211-10.11-.528v19.306H305.68V31.512H149.648zm0 49.144V65.777c1.446-.101 2.903-.179 4.391-.226 40.688-1.278 67.382 34.965 67.382 34.965s-28.832 40.042-59.746 40.042c-4.449 0-8.438-.715-12.028-1.922V93.523c15.84 1.914 19.028 8.911 28.551 24.786l21.181-17.859s-15.461-20.277-41.524-20.277c-2.834-.001-5.545.198-8.207.483"})]})},{name:"Classical Control",icon:t=>(0,e.jsxs)("svg",{...t,xmlns:"http://www.w3.org/2000/svg",width:"320",height:"240",className:"size-8",viewBox:"0 0 160 120",children:[(0,e.jsx)("line",{x1:"10",y1:"60",x2:"28",y2:"60",stroke:"currentColor",strokeWidth:"5"}),(0,e.jsx)("polygon",{points:"32,60 26,56 26,64",fill:"currentColor"}),(0,e.jsx)("text",{x:"12",y:"52",fill:"currentColor",fontSize:"20",fontFamily:"Arial",children:"r"}),(0,e.jsx)("circle",{cx:"40",cy:"60",r:"7",stroke:"currentColor",strokeWidth:"5",fill:"none"}),(0,e.jsx)("text",{x:"36",y:"50",fill:"currentColor",fontSize:"20",fontFamily:"Arial",children:"+"}),(0,e.jsx)("text",{x:"22",y:"82",fill:"currentColor",fontSize:"20",fontFamily:"Arial",children:"â"}),(0,e.jsx)("rect",{x:"55",y:"40",width:"35",height:"40",rx:"4",stroke:"currentColor",strokeWidth:"5",fill:"none"}),(0,e.jsx)("text",{x:"58",y:"65",fill:"currentColor",fontSize:"15",fontFamily:"Arial",children:"C(s)"}),(0,e.jsx)("rect",{x:"105",y:"40",width:"35",height:"40",rx:"4",stroke:"currentColor",strokeWidth:"5",fill:"none"}),(0,e.jsx)("text",{x:"108",y:"65",fill:"currentColor",fontSize:"15",fontFamily:"Arial",children:"G(s)"}),(0,e.jsx)("line",{x1:"47",y1:"60",x2:"55",y2:"60",stroke:"currentColor",strokeWidth:"5"}),(0,e.jsx)("line",{x1:"90",y1:"60",x2:"105",y2:"60",stroke:"currentColor",strokeWidth:"5"}),(0,e.jsx)("line",{x1:"140",y1:"60",x2:"152",y2:"60",stroke:"currentColor",strokeWidth:"5"}),(0,e.jsx)("polygon",{points:"156,60 150,56 150,64",fill:"currentColor"}),(0,e.jsx)("text",{x:"150",y:"52",fill:"currentColor",fontSize:"20",fontFamily:"Arial",children:"y"}),(0,e.jsx)("path",{d:"M150 60 V95 H40 V67",stroke:"currentColor",strokeWidth:"5",fill:"none"}),(0,e.jsx)("polygon",{points:"40,67 36,73 44,73",fill:"currentColor"})]})},{name:"Optimal Control",icon:t=>(0,e.jsxs)("svg",{...t,xmlns:"http://www.w3.org/2000/svg",width:"120",height:"120",viewBox:"0 0 120 120",children:[(0,e.jsx)("path",{d:"M20 40 Q60 95 100 40",stroke:"currentColor",strokeWidth:"8",fill:"none"}),(0,e.jsx)("path",{d:"M30 42 Q60 82 90 42",stroke:"currentColor",strokeWidth:"3",fill:"none"}),(0,e.jsx)("path",{d:"M60 12 L60 55",stroke:"currentColor",strokeWidth:"8",fill:"none"}),(0,e.jsx)("polygon",{points:"60,60 50,40 70,40",fill:"currentColor"}),(0,e.jsx)("circle",{cx:"60",cy:"85",r:"10",fill:"currentColor"})]})},{name:"Reinforcement Learning",icon:t=>(0,e.jsxs)("svg",{...t,xmlns:"http://www.w3.org/2000/svg",width:"140",height:"160",viewBox:"0 0 140 160",children:[(0,e.jsx)("circle",{cx:"30",cy:"80",r:"20",stroke:"currentColor",strokeWidth:"8",fill:"none"}),(0,e.jsx)("circle",{cx:"24",cy:"78",r:"4",fill:"currentColor"}
1),(0,e.jsx)("circle",{cx:"36",cy:"78",r:"4",fill:"currentColor"}),(0,e.jsx)("line",{x1:"30",y1:"64",x2:"30",y2:"45",stroke:"currentColor",strokeWidth:"8"}),(0,e.jsx)("circle",{cx:"30",cy:"40",r:"4",fill:"currentColor"}),(0,e.jsx)("circle",{cx:"110",cy:"80",r:"22",stroke:"currentColor",strokeWidth:"5",fill:"none"}),(0,e.jsx)("ellipse",{cx:"110",cy:"80",rx:"12",ry:"22",stroke:"currentColor",strokeWidth:"3",fill:"none"}),(0,e.jsx)("line",{x1:"88",y1:"80",x2:"132",y2:"80",stroke:"currentColor",strokeWidth:"3"}),(0,e.jsx)("path",{d:"M46 52 C70 10, 90 10, 114 52",stroke:"currentColor",strokeWidth:"8",fill:"none"}),(0,e.jsx)("polygon",{points:"119,45 105,50 116,60",fill:"currentColor"}),(0,e.jsx)("path",{d:"M114 108 C90 150, 70 150, 46 108",stroke:"currentColor",strokeWidth:"8",fill:"none"}),(0,e.jsx)("polygon",{points:"42,118 56,112 42,100",fill:"currentColor"})]})},{name:"Python",icon:t=>(0,e.jsxs)("svg",{...t,fill:"none",viewBox:"16 16 32 32",children:[(0,e.jsx)("path",{fill:"url(#a)",d:"M31.885 16c-8.124 0-7.617 3.523-7.617 3.523l.01 3.65h7.752v1.095H21.197S16 23.678 16 31.876c0 8.196 4.537 7.906 4.537 7.906h2.708v-3.804s-.146-4.537 4.465-4.537h7.688s4.32.07 4.32-4.175v-7.019S40.374 16 31.885 16zm-4.275 2.454a1.394 1.394 0 1 1 0 2.79 1.393 1.393 0 0 1-1.395-1.395c0-.771.624-1.395 1.395-1.395z"}),(0,e.jsx)("path",{fill:"url(#b)",d:"M32.115 47.833c8.124 0 7.617-3.523 7.617-3.523l-.01-3.65H31.97v-1.095h10.832S48 40.155 48 31.958c0-8.197-4.537-7.906-4.537-7.906h-2.708v3.803s.146 4.537-4.465 4.537h-7.688s-4.32-.07-4.32 4.175v7.019s-.656 4.247 7.833 4.247zm4.275-2.454a1.393 1.393 0 0 1-1.395-1.395 1.394 1.394 0 1 1 1.395 1.395z"}),(0,e.jsxs)("defs",{children:[(0,e.jsxs)("linearGradient",{id:"a",x1:"19.075",x2:"34.898",y1:"18.782",y2:"34.658",gradientUnits:"userSpaceOnUse",children:[(0,e.jsx)("stop",{stopColor:"#387EB8"}),(0,e.jsx)("stop",{offset:"1",stopColor:"#366994"})]}),(0,e.jsxs)("linearGradient",{id:"b",x1:"28.809",x2:"45.803",y1:"28.882",y2:"45.163",gradientUnits:"userSpaceOnUse",children:[(0,e.jsx)("stop",{stopColor:"#FFE052"}),(0,e.jsx)("stop",{offset:"1",stopColor:"#FFC331"})]})]})]})},{name:"C",icon:t=>(0,e.jsx)("svg",{...t,version:"1.1",id:"Layer_1",xmlns:"http://www.w3.org/2000/svg",x:"0px",y:"0px",viewBox:"0 0 109.19 122.88",children:(0,e.jsxs)("g",{children:[(0,e.jsx)("path",{fill:"#3949AB",d:"M107.81,92.16c0.86-1.48,1.39-3.16,1.39-4.66V35.38c0-1.5-0.53-3.17-1.39-4.66L54.6,61.44L107.81,92.16 L107.81,92.16L107.81,92.16z"}),(0,e.jsx)("path",{fill:"#283593",d:"M59.33,121.75l45.14-26.06c1.3-0.75,2.48-2.05,3.34-3.53L54.6,61.44L1.39,92.16c0.86,1.48,2.04,2.78,3.34,3.53 l45.14,26.06C52.47,123.25,56.72,123.25,59.33,121.75L59.33,121.75L59.33,121.75z"}),(0,e.jsx)("path",{fill:"#5C6BC0",d:"M107.81,30.72c-0.86-1.48-2.04-2.78-3.34-3.53L59.33,1.13c-2.6-1.5-6.86-1.5-9.46,0L4.73,27.19 C2.13,28.69,0,32.38,0,35.38V87.5c0,1.5,0.53,3.17,1.39,4.66L54.6,61.44L107.81,30.72L107.81,30.72L107.81,30.72z"}),(0,e.jsx)("path",{fill:"#FFFFFF",d:"M54.6,97.84c-20.07,0-36.4-16.33-36.4-36.4s16.33-36.4,36.4-36.4c12.95,0,25.03,6.97,31.52,18.19l-15.75,9.12 c-3.25-5.62-9.29-9.1-15.77-9.1c-10.04,0-18.2,8.16-18.2,18.2c0,10.03,8.16,18.2,18.2,18.2c6.48,0,12.52-3.49,15.77-9.1l15.75,9.12 C79.63,90.87,67.55,97.84,54.6,97.84L54.6,97.84L54.6,97.84z"})]})})},{name:"C++",icon:t=>(0,e.jsx)("svg",{...t,version:"1.1",id:"Layer_1",xmlns:"http://www.w3.org/2000/svg",x:"0px",y:"0px",viewBox:"0 0 109.19 122.88",children:(0,e.jsxs)("g",{children:[(0,e.jsx)("path",{fill:"#00599C",d:"M107.81,92.16c0.86-1.48,1.39-3.16,1.39-4.66V35.38c0-1.5-0.53-3.17-1.39-4.66L54.6,61.44L107.81,92.16 L107.81,92.16z"}),(0,e.jsx)("path",{fill:"#004482",d:"M59.33,121.75l45.14-26.06c1.3-0.75,2.48-2.05,3.34-3.53L54.6,61.44L1.39,92.16c0.86,1.48,2.04,2.78,3.34,3.53 l45.14,26.06C52.47,123.26,56.73,123.26,59.33,121.75L59.33,121.75z"}),(0,e.jsx)("path",{fill:"#659AD2",d:"M107.81,30.72c-0.86-1.48-2.04-2.78-3.34-3.53L59.33,1.13c-2.6-1.5-6.86-1.5-9.46,0L4.73,27.19 C2.13,28.69,0,32.37,0,35.38V87.5c0,1.5,0.53,3.17,1.39,4.66L54.6,61.44L107.81,30.72L107.81,30.72z"}),(0,e.jsx)("path",{fill:"#FFFFFF",d:"M54.6,97.84c-20.07,0-36.4-16.33-36.4-36.4c0-20.07,16.33-36.4,36.4-36.4c12.95,0,25.03,6.97,31.52,18.19 l-15.75,9.12c-3.25-5.62-9.29-9.1-15.77-9.1c-10.04,0-18.2,8.16-18.2,18.2c0,10.03,8.16,18.2,18.2,18.2 c6.48,0,12.52-3.49,15.77-9.1l15.75,9.12C79.63,90.87,67.55,97.84,54.6,97.84L54.6,97.84z"}),(0,e.jsx)("polygon",{fill:"#FFFFFF",points:"91,59.42 86.95,59.42 86.95,55.37 82.91,55.37 82.91,59.42 78.86,59.42 78.86,63.46 82.91,63.46 82.91,67.51 86.95,67.51 86.95,63.46 91,63.46 91,59.42"}),(0,e.jsx)("polygon",{fill:"#FFFFFF",points:"106.16,59.42 102.12,59.42 102.12,55.37 98.07,55.37 98.07,59.42 94.03,59.42 94.03,63.46 98.07,63.46 98.07,67.51 102.12,67.51 102.12,63.46 106.16,63.46 106.16,59.42"})]})})}],navbar:[{href:"/",icon:a("house",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]]),label:"Home"},{href:"/projects",icon:a("folder-kanban",[["path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z",key:"1fr9dc"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M12 10v2",key:"hh53o1"}],["path",{d:"M16 10v6",key:"1d6xys"}]]),label:"Projects"},{href:"/publications",icon:a("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]),label:"Publications"}],contact:{email:"[email protected]",tel:"+91 9104030970",social:{GitHub:{name:"GitHub",url:"https://github.com/djp1002",icon:c,navbar:!0},LinkedIn:{name:"LinkedIn",url:"https://www.linkedin.com/in/darshankumar-prajapati/",icon:t=>(0,e.jsxs)("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...t,children:[(0,e.jsx)("title",{children:"LinkedIn"}),(0,e.jsx)("path",{fill:"currentColor",d:"M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"})]}),navbar:!0},X:{name:"X",url:"https://dub.sh/dillion-twitter",icon:t=>(0,e.jsxs)("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...t,children:[(0,e.jsx)("title",{children:"X"}),(0,e.jsx)("path",{fill:"currentColor",d:"M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z"})]}),navbar:!1},Youtube:{name:"Youtube",url:"https://dub.sh/dillion-youtube",icon:t=>(0,e.jsxs)("svg",{width:"32px",height:"32px",viewBox:"0 0 32 32",fill:"
1currentColor",xmlns:"http://www.w3.org/2000/svg",...t,children:[(0,e.jsx)("title",{children:"youtube"}),(0,e.jsx)("path",{d:"M29.41,9.26a3.5,3.5,0,0,0-2.47-2.47C24.76,6.2,16,6.2,16,6.2s-8.76,0-10.94.59A3.5,3.5,0,0,0,2.59,9.26,36.13,36.13,0,0,0,2,16a36.13,36.13,0,0,0,.59,6.74,3.5,3.5,0,0,0,2.47,2.47C7.24,25.8,16,25.8,16,25.8s8.76,0,10.94-.59a3.5,3.5,0,0,0,2.47-2.47A36.13,36.13,0,0,0,30,16,36.13,36.13,0,0,0,29.41,9.26ZM13.2,20.2V11.8L20.47,16Z"})]}),navbar:!1},email:{name:"Send Email",url:"mailto:[email protected]",icon:t=>(0,e.jsx)(h,{...t}),navbar:!0}}},work:[{company:"IIT Mandi",href:"https://www.iitmandi.ac.in/",badges:[],location:"Mandi, Himachal Pradesh",title:"Teaching Assistant",logoUrl:"/iitmandi.png",start:"Mar 2023",end:"Feb 2026",description:"Supervised undergraduate research projects in robotics and mechanical systems. Conducted laboratory sessions for Design Practicum, and Robot Kinematics & Dynamics. Conducted technical and hands-on sessions on robotics and drone systems for 100+ students. Conducted 3-day robotics workshop for 40+ faculty across institutions under the Faculty Development Program"},{company:"IIT Bhilai",href:"https://www.iitbhilai.ac.in/",badges:[],location:"Bhilai, Chhattisgarh",title:"Robotics Research Intern ",logoUrl:"/iitbhilai.png",start:"July 2022",end:"Feb 2023",description:"Designed and developed Micromouse robot encompassing hardware, software, and control systems. Built UGV pick-and-place system integrating mechanical design, embedded programming, and motion control"},{company:"OSVIPL",href:"https://www.linkedin.com/company/om-siddh-vinayak-impex-pvt-ltd/?originalSubdomain=in",badges:[],location:"Gandhidham, Gujarat",title:"Automation Intern",logoUrl:"/osvipl.jpg",start:"Apr 2021",end:"Sep 2021",description:"Developed automation system for clothes donation bin collection and sorting. Designed cloth transport mechanism using belt-drive systems"}],education:[{school:"Indian Institute of Technology Mandi",href:"https://www.iitmandi.ac.in/",degree:"Master of Technology (Research) - Robotics and AI",logoUrl:"/iitmandi.png",start:"Mar 2023",end:"Feb 2026"},{school:"Marwadi University",href:"https://www.marwadiuniversity.ac.in/",degree:"Bachelor of Technology - Mechanical Engineering",logoUrl:"/mu.png",start:"July 2017",end:"June 2021"}],projects:[{id:"uav-quadruped",publicationIds:["mppf","reference-coupled"],title:"Autonomous Multi-Terrain Navigation Framework for Heterogeneous UAV - Quadruped Coordination in Industrial Environments",href:"https://ieeexplore.ieee.org/document/11358968",dates:"Mar 2024 - Jan 2026",active:!0,description:"This research project focuses on developing a coordinated search operation utilizing a UAV and a quadruped. The UAV is tasked with creating a global map of the environment, identifying different types of terrain. This terrain information is then communicated to the quadruped robot, which adapts its locomotion mode accordingly to navigate the environment efficiently. The project aims to integrate visual servoing techniques with legged robotic systems, enabling the quadruped to traverse diverse terrains autonomously and effectively during search and rescue missions.",technologies:["Visual Servoing","Legged Robot","Pathplanning","Deep Learning","OpenCV","ROS","Jetson Orin"],links:[{type:"Project Link",href:"https://ieeexplore.ieee.org/document/11358968",icon:(0,e.jsx)(u,{className:"size-3"})}],image:"/pub_pro_img/mppf_overview_comp.jpg",video:"https://youtu.be/ot43SBMGWPo"},{id:"tiltrotor",publicationIds:["tiltrotor"],title:"Fully Actuated Tiltrotor UAV for Improved Gust Rejeection (",href:"https://ieeexplore.ieee.org/abstract/document/10949562",dates:"Mar 2024 - Aug 2025",active:!0,description:"Developing a custom, fully actuated tilt quadrotor UAV capable of precise hovering and path tracking at any angle. With its six degrees of freedom, the system can outperforms conventional quadrotors in high wind conditions, making it ideal for search and rescue missions.",technologies:["ROS","Optimal Controller","STM32","ICM20948","PWM","SPI","Servo and BLDC motors"],links:[{type:"Website",href:"https://ieeexplore.ieee.org/abstract/document/10949562",icon:(0,e.jsx)(u,{className:"size-3"})},{type:"Source",href:"https://ieeexplore.ieee.org/abstract/document/10949562",icon:(0,e.jsx)(c,{className:"size-3"})}],image:"/pub_pro_img/tiltrotor.jpg",video:"https://www.youtube.com/shorts/NK-A0Zvofsg"}],authors:[{id:"djp",name:"Darshankumar Prajapati",scholar:"https://scholar.google.com/citations?user=PpronkIAAAAJ&hl=en",image:"/authors/darshan.jpg"}
1,{id:"spsk",name:"Surya Prakash S.K",scholar:"https://scholar.google.com/citations?user=NJhUjFQAAAAJ&hl=en",image:"/authors/surya.jpg"},{id:"ankit",name:"Ankit Mehra",scholar:"https://scholar.google.com/citations?user=gm6-YM0AAAAJ&hl=en",image:"/authors/ankit.jpg"},{id:"jagannath",name:"Jagannath Prasad Sahoo",scholar:"https://scholar.google.com/citations?user=o8FPbNMAAAAJ&hl=en",image:"/authors/jagannath.jpg"},{id:"karan",name:"Karan Raj Pant",scholar:"https://scholar.google.com/citations?user=E9-hidIAAAAJ&hl=en",image:""},{id:"amit",name:"Amit Shukla",scholar:"https://scholar.google.com/citations?user=pjJwY5oAAAAJ&hl=en",image:"/authors/amit.jpg"},{id:"pushkar",name:"Pushkar Kumar",scholar:"https://scholar.google.com/citations?user=bXCTqyMAAAAJ&hl=en",image:"/authors/pushkar.jpg"},{id:"ashish",name:"Ashish Rana",scholar:"https://scholar.google.com/citations?user=XeFww4wAAAAJ&hl=en",image:"/authors/ashish.jpg"},{id:"bhuvan",name:"Bhuvan Narula",scholar:"https://scholar.google.com/citations?user=g_Bea5IAAAAJ&hl=en",image:""},{id:"tushar",name:"Tushar Patil",scholar:"",image:""},{id:"abhay",name:"Abhay Dwivedi",scholar:"",image:""},{id:"treddy",name:"T Reddy",scholar:"",image:""},{id:"urvashi",name:"Urvashi Goswami",scholar:"https://scholar.google.com/citations?user=6AH5YeYAAAAJ&hl=en",image:"/authors/urvashi.jpg"}],publications:[{id:"mppf",projectId:"uav-quadruped",image:"/pub_pro_img/mppf_overview_comp.jpg",video:"https://youtu.be/ot43SBMGWPo",title:"MPPF: Mobile Probe Potential Field for Real-Time Multi-Agent Navigation in Industrial Environments",venue:"IEEE Access",year:"2026",authors:["djp","ankit","pushkar","ashish","spsk","amit"],doi:"https://doi.org/10.1109/ACCESS.2026.3655886",abstract:"Industrial inspection in open outdoor unstructured multi-terrain environments creates critical autonomous navigation challenges. Ground agents required for manipulation and close inspection cannot achieve the comprehensive environmental perception necessary for safe autonomous operation, requiring multi-agent collaboration. This necessitates parallel processing of collaborative tasks, including trajectory planning, perception, real-time dynamic obstacle detection, and avoidance on resource-constrained edge devices. Terrain variations further demand adaptive locomotion strategies, necessitating legged robot deployment with adaptive gait patterns. To address these challenges, we propose a collaborative multi-agent framework where a autonomous aerial vehicles (AAV) provides environmental perception, localization, and dynamic obstacle detection through RGB-D cameras, utilizing deep learning for RGB processing and classical vision for depth analysis. The quadruped receives real-time guidance while executing terrain-adaptive locomotion with adaptive gait transitions. For efficient trajectory planning under computational constraints, we present MPPF (Mobile Probe Potential Field), a moving surface charge model for obstacle representation in APF methods. Our algorithm incorporates a virtual obstacle-based framework for local minima resolution and smooth trajectory generation through dynamic parameter adaptation. Experimental validation of our proposed framework demonstrates trajectory generation in 0.025 seconds with superior smoothness compared to baseline methods, achieving successful navigation across sand, stairs, and stones for autonomous industrial inspection in unstructured environments.",tags:["Multi-Agent","Navigation","Quadruped","UAV","Industrial Inspection","Potential Fields","Real-Time","Edge Computing"]},{id:"reference-coupled",projectId:"uav-quadruped",image:"/pub_pro_img/LQR_coupled.png",video:"https://youtu.be/tNEV3UJZ34Y",title:"Reference-Coupled Heterogeneous Multi-Agent Coordination with Real-Time Adaptive Perimeter Field Navigation",venue:"ICARA",year:"2026",authors:["djp","pushkar","spsk","ankit","ashish","jagannath","treddy","amit"],doi:"",abstract:"Autonomous industrial inspection in unstructured environments requires coordinated UAV-ground systems for aerial perception and ground-level task execution. Coordinating Heterogeneous 3D aerial and 2D ground dynamics requires control frameworks with adaptable coordination strategies. Existing decoupled or fixed hierarchical approaches lack optimal coordination and runtime strategy adaptability. This work presents a reference-coupled Linear Quadratic Regulator (LQR) framework with parameterized coordination achieving optimal state synchronization across heterogeneous 3D aerial and 2D ground dynamics. The formulation enables continuous coordination strategies from leader-follower to symmetric modes via single-parameter adjustment, with adaptive alt
1itude control maintaining perception coverage. For real-time trajectory generation, we introduce APFNav (Adaptive Perimeter Field Navigation) employing moving perimeter charge representation with 0.012 s computational latency. The system integrates RGB-D perception, deep learning terrain classification, and vision-based state estimation. Multiterrain experiments confirm successful autonomous navigation with terrain-adaptive locomotion, establishing the viability of reference-coupled LQR coordination for heterogeneous multiagent systems in resource-constrained embedded deployment.",tags:["Multi-Agent","Quadruped","UAV","Industrial Inspection","Real-Time","Edge Computing","LQR","Adaptive Control","Heterogeneous Systems","Reference-Coupling"]},{id:"pixels_pursuit",projectId:"",image:"/pub_pro_img/pixels.jpg",video:"https://www.youtube.com/watch?v=WnPe1OE8H4k&list=PL6SiUj2VGnRzmon_hSX_hfLP0CkzzldRh&index=8",title:"Pixels to Pursuit: Reinforcement Learning-based Control Strategies for UAV-AGV Collaborative Systems",venue:"ICMRE",year:"2026",authors:["ankit","djp","pushkar","ashish","urvashi","amit"],doi:"",abstract:"Heterogeneous multi-agent collaborative systems have gained significant attention for itâs potential to enhance efficiency and autonomy in various safety surveillance and rescue operations. Tracking motion between Unmanned Aerial Vehicle (UAV) and Autonomous Ground Vehicle (AGV), landing of UAV over AGV are fundamental collaborative tasks. Tracking a UAV using an AGV presents greater challenges compared to tracking an AGV with a UAV. This is primarily due to the AGVâs limited spatial maneuverability. Vision-based tracking of a UAV by an AGV is considered in this work to conduct a comparative study of three distinct control strategies: Proportional-Integral-Derivative (PID) controllers, Sliding Mode Controllers (SMC), and Reinforcement Learning (RL)-based controllers, applied to a UAV-AGV multi-agent collaborative system. The primary objective is to evaluate the performance, robustness, and adaptability of these controllers in managing the complex dynamics and interactions between UAVs and AGVs during collaborative tasks. Our proposed methodology incorporates deep learning-based UAV detection. Autonomous vision-based control for AGV is developed, guided by the extracted image features. We present experimental validation of PID, SMC, and RL-based control for the AGV in outdoor conditions. The experimental results are discussed for performance analysis of the approach. This comparative analysis provides valuable insights into selecting appropriate control strategies for UAV-AGV systems, advancing autonomous multi-agent operations across various applications. ",tags:["Multi-Agent","UAV","Real-Time","Edge Computing","Heterogeneous Systems","Reinforcement Learning","PID Control","Sliding Mode Control"]},{id:"iapf",projectId:"",image:"/pub_pro_img/iapf.jpg",video:"https://youtu.be/aderCNr3H6k",title:"iAPF: an improved artificial potential field framework for asymmetric dual-arm manipulation with real-time inter-arm collision avoidance",venue:"Frontiers in Robotics and AI",year:"2025",authors:["spsk","djp","bhuvan","amit"],doi:"https://doi.org/10.3389/frobt.2025.1604506",abstract:"This paper presents a robust vision-based motion planning framework for dual-arm manipulators that introduces a novel three-way force equilibrium with velocity-dependent stabilization. The framework combines an improved Artificial Potential Field (iAPF) for linear velocity control with a Proportional-Derivative (PD) controller for angular velocity, creating a hybrid twist command for precise manipulation. A priority-based state machine enables human-like asymmetric dual-arm manipulation. Lyapunov stability analysis proves the asymptotic convergence to desired configurations. The method introduces a computationally efficient continuous distance calculation between links based on line segment configurations, enabling real-time collision monitoring. Experimental validation integrates a real-time vision system using YOLOv8 OBB that achieves 20 frames per second with 0.99/0.97 detection accuracy for bolts/nuts. Comparative tests against traditional APF methods demonstrate that the proposed approach provides stabilized motion planning with smoother trajectories and optimized spatial separation, effectively preventing inter-arm collisions during industrial
1component sorting.",tags:["Real-Time","Dual-Arm Manipulation","Artificial Potential Fields","Collision Avoidance","Vision-Based Control","Dual-Arm Manipulators","Industrial Automation"]},{id:"underactuated-biped",projectId:"",image:"/pub_pro_img/underactuated_biped.jpg",video:"",title:"Learning Multi-Skill Locomotion in Underactuated Biped: A Waypoint-Based Reward Shaping Approach",venue:"ICC",year:"2025",authors:["jagannath","spsk","djp","karan","abhay","amit"],doi:"https://doi.org/10.1109/ICC69100.2025.11372287",abstract:"This paper presents a comprehensive benchmarking framework for multi-skill bipedal locomotion learning using deep reinforcement learning with progressive waypoint-based reward shaping. We introduce the SkillsâAlgorithmsâRewards (SAR) matrix methodology for systematic evaluation of three actor-critic algorithms (DDPG, TD3, SAC) across five locomotion tasks in a 6-DOF underactuated bipedal robot simulation (Biped-5). Our progressive reward shaping strategy transitions from sparse (2 points) to dense (4+ points) waypoint configurations, enabling quantitative analysis of reward density effects on learning performance. Experimental results reveal distinct algorithmic superiority: SAC excels in stability-critical tasks, achieving 2% fall rates and superior energy efficiency (7.3J), while TD3 dominates dynamic locomotion with 4% fall rates and optimal cost of transport (1.21). SAC demonstrates robust waypoint navigation with 94% success rates and minimal deviation (0.21m), maintaining 84% generalization in complex scenarios. DDPG consistently underperforms across all tasks with 24-94% fall rates due to exploration limitations. Learning curves show continued improvement potential beyond 10M training steps. The Biped-5 benchmark suite establishes task-specific algorithmic guidelines and provides a standardized evaluation platform for advancing bipedal locomotion research.",tags:["Real-Time","Bipedal locomotion","Deep Reinforcement Learning","Underactuated Robots","Actor-Critic Algorithms"]},{id:"dual_arm_kin",projectId:"",image:"/pub_pro_img/dual_arm_kin.jpg",video:"",title:"Kinematics-Based Real-Time Distance Monitoring for Safe Multi-Arm Robot Operations",venue:"ICCAS",year:"2025",authors:["spsk","djp","bhuvan","jagannath","amit"],doi:"https://doi.org/10.23919/ICCAS66577.2025.11301286",abstract:"Collaborative manipulations in industrial setups such as assembly lines and warehouse management are essential for advanced automation. This paper presents a mathematically robust, kinematics-based method for real-time distance calculation between manipulator links without requiring external sensors. We first derive a comprehensive geometric framework for multi-arm systems that classifies link configurations as parallel, intersecting, or skew, enabling precise minimum distance calculations through line segment representation. The general n -arm mathematical framework is then specialized for dual-arm systems, focusing on collision-critical segments in table-mounted configurations. Our approach constructs distance matrices for systematic collision monitoring and reduces computational overhead by targeting inter-arm link pairs. Real-time hardware validation on dual Kinova Gen3 Lite manipulators demonstrates the method's effectiveness for computing inter-arm distances in shared workspace operations, confirming reliable collision avoidance performance in collaborative robotic tasks. The scalable mathematical foundation combined with efficient dual-arm implementation enables safe and effective collaborative automation in industrial applications.",tags:["Real-Time","Dual-Arm Manipulation","Collision Avoidance","Kinematics-Based Control","Multi-Arm Robotic Systems","Industrial Automation"]},{id:"runway",projectId:"",image:"/pub_pro_img/Runway_inspection.jpeg",video:"https://youtu.be/9kAnyB4-U7o",title:"Autonomous Multi-UAV System for Runway FOD Detection Using Hybrid Navigation",venue:"ICCAR",year:"2025",authors:["ashish","ankit","djp","pushkar","amit"],doi:"https://doi.org/10.1109/ICCAR64901.2025.11072944",abstract:"This paper presents a novel multi-agent UAV-based framework for detecting and localizing foreign objects on airport runways, addressing critical aviation safety and operational efficiency concerns. Traditional methods such as manual inspection, vehicle-based patrols, radar systems, infrared sensors, and fixed cameras suffer from limitations that include slow operation or high costs or elevated false positive rates for small object detection. To overcome these challenges, we propose an integrated approach leveraging deep learning for both object detection and visual servoing. We have developed a custom dataset specifically designed for runway foreign object detection, localization, and visual servoing tasks. Our system implements a hybrid navigation strategy combining visual feedback and GPS, utilizing limited but reliable runway features such as threshold and edge markings. The framework employs a multi-agent approach for runway inspection, which has been successfully validated using two UAVs with demonstrated potential for system scalability. This methodology significantly reduces inspection time while maintaining the capability for human intervention when required. We present comprehensive experimental validation conducted under outdoor conditions, accompanied by detailed results and analysis that demonstrate the effectiveness of our approach.",tags:["UAV","Multi-Agent","Runway Inspection","FOD Detection","Visual Servoing","Deep Learning","Hybrid Navigation"]},{id:"biped_design",projectId:"",image:"/pub_pro_img/biped_design.jpg",video:"",title:"Design, Kinematic Modeling, and Stability Verification of a Small-Scale Biped Robot",venue:"ICCAS",year:"2025",authors:["jagannath","spsk","djp","karan","amit"],doi:"https://doi.org/10.23919/ICCAS66577.2025.11301351",abstract:"Kinematic validation, structural optimization, and gait planning are needed to build compact bipedal robots. This work designs, models, and simulates a 6-DOF bipedal robot for kinematic analysis and trajectory development. Joint configurations for stable locomotion are computed using the Denavit-Hartenberg (D-H) convention and geometric inverse kinematics. Smooth joint trajectories are created using cubic spline interpolation. MATLAB Simscape simulations verify motion feasibility and provide joint velocity patterns and torque needs. Topology optimization under gravitational self-weight loading assumptions reduces weight without compromising stability, improving mechanical efficiency. Dynamic stability is qualitatively examined by studying the Center of Mass (CoM) trajectory and determining the Zero Moment Point (ZMP) using the Linear Inverted Pendulum Model (LIPM). Simulations show steady gait patterns, synchronized joint motions, appropriate torque distribution across the ankle, knee, and hip joints, and a CoM-ZMP trajectory deviation of less than 6 mm, confirming gait stability. This research bridges theoretical modeling with real-world applications to produce agile, energy-efficient bipedal robots for humanoid locomotion.",tags:["Humanoid","Biped","Stability","Gait","Topology Optimization","ZMP","Simscape","Spline Interpolation"]},{id:"biped_review",projectId:"",image:"/pub_pro_img/biped_review.png",video:"",title:"From Classical Control to Reinforcement Learning: Trends in Bipedal Robot Locomotion",venue:"ICCCNT",year:"2025",authors:["jagannath","spsk","djp","karan","amit"],doi:"",abstract:"Industrial inspections in cluttered environments and surveillance in rough terrains are still difficult for tracked and wheeled robots. In these situations, human-like locomotion is advantageous. However, achieving this presents several key challenges. Overcoming these challenges and enhancing locomotion with human-like mobility necessitates a critical survey of recent trends in bipedal robots. The present approaches in learning and control strategies that allow adaptive and stable locomotion are reviewed in this work. Beginning with conventional modelbased control methods like Zero Moment Point (ZMP) and dynamic modeling, we investigate how these approaches set the stage for real-time gait planning and stability on level ground. Examining their benefits in terrain adaptation, we also discuss the shift to new optimum control frameworks: Model Predictive
1Control (MPC), Trajectory Optimization (TO), and distributed whole-body control. The paper then explores bioinspired control techniques like Cerebellum Model Articulation Controllers (CMACs) and Central Pattern Generators (CPGs), which replicate sensory integration and natural rhythmic motion. We also address key components that convert into precise locomotion: actuators and their compliance systems, as well as heat management. Lastly, we investigate learning-based control, such as imitation-based approaches and reinforcement learning, which let systems maximize their performance by means of ongoing environmental interaction. Our survey shows that hybrid methods combining model-based control with learning algorithms offer the highest potential for strong terrain adaption. We provide future approaches for autonomous bipedal mobility in complicated situations by pointing out important research gaps in real-time adaptability and energy economy.",tags:["Humanoid","Biped","Stability","Gait","Classical Control","Optimal Control","Reinforcement Learning","Survey"]},{id:"tiltrotor",projectId:"",image:"/pub_pro_img/tiltrotor.jpg",video:"https://www.youtube.com/shorts/NK-A0Zvofsg",title:"Modeling and Validation of a Single-Axis Tilting Quadrotor with Enhanced Attitude Control",venue:"RAAI",year:"2024",authors:["pushkar","amit","djp","ankit","ashish"],doi:"https://doi.org/10.1109/RAAI64504.2024.10949562",abstract:"Standard quadrotors are inherently limited by their underactuated nature, typically offering only 4 degrees of freedom (DOF) through their four rotors. While sufficient for general applications, however this design falls short in scenarios requiring full attitude control, improved wind resistance, aerial manipulation and other specialized capabilities. This paper presents the design, implementation, and evaluation of a novel fully actuated 6-DOF quadrotor featuring a single-axis tilting mechanism. Our proposed design incorporates four rotors and two tilt motors, enabling complete position and attitude control. We derive a comprehensive dynamic model of the quadrotor and discuss the control parameters crucial for stable flight. The paper details the practical implementation of this design on actual hardware, demonstrating its feasibility beyond theoretical concepts. Furthermore, we showcase the quadrotor's enhanced performance through experimental results. These results highlight the advantages of our fully actuated design over traditional underactuated quadrotors in applications requiring precise aerial manipulation and resilience to external disturbances.",tags:["Quadrotor","Tilting","Attitude Control","Dynamic Modeling","Experimental Validation"]},{id:"firefighting",projectId:"",image:"/pub_pro_img/firefighting.jpg",video:"https://www.youtube.com/watch?v=BMY3XJge1qM&list=PL6SiUj2VGnRzmon_hSX_hfLP0CkzzldRh&index=2",title:"Vision-Based Control of UAV for Autonomous Firefighting",venue:"ICCAE",year:"2024",authors:["ankit","amit","djp","pushkar","ashish","tushar"],doi:"https://doi.org/10.1109/ICCAE59995.2024.10569529",abstract:"Urban and industrial environments frequently necessitate the immediate readiness of firefighting personnel to address potential fire emergencies, which can lead to a perpetual shortage of available manpower. To counter this challenge, we propose an integrated approach to autonomous firefighting through the utilization of Unmanned Aerial Vehicles (UAVs). The UAVs serve a dual purpose: providing auxiliary support to conventional firefighting efforts while simultaneously mitigating risks to human life. Our proposed methodology incorporates deep learning-based fire detection. The system combines image feature analysis with data obtained from distance sensor to establish Cartesian coordinates of the identified fire sources. Autonomous vision-based control for multirotor platform is developed, guided by the extracted image features and Cartesian coordinates. This system is designed to facilitate both swift deployment and autonomous operation, while still allowing for manual intervention as necessary. We present experimental validations for the vision-based control of the multirotor platform under outdoor conditions. Further tests are conducted to assess the performance characteristics of the spray subassembly, including spray distance and flow rate, prior to its deployment on aerial platforms. The experimental results are discussed for performance analysis of the approach.",tags:["UAV","Firefighting","Vision-Based Control","Deep Learning","Autonomous Systems"]}]};t.s(["DATA",0,d],54852)}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.