@reearth/core 0.0.7-alpha.34 → 0.0.7-alpha.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/core.umd.cjs
CHANGED
|
@@ -6092,7 +6092,7 @@ vec2 sampleBicubic(
|
|
|
6092
6092
|
material.emissive = vec3(0.0);
|
|
6093
6093
|
material.alpha = 1.0;
|
|
6094
6094
|
}
|
|
6095
|
-
`});function Model({id:t,isVisible:n,property:o,viewerProperty:s,geometry:c,layer:d,feature:h}){var ff,pf,hf,of,gf,Ef;const p=extractSimpleLayerData(d),y=(p==null?void 0:p.type)==="gltf",S=React.useMemo(()=>(c==null?void 0:c.type)==="Point"?c.coordinates:o!=null&&o.location?[o.location.lng,o.location.lat,o.height??0]:void 0,[c==null?void 0:c.coordinates,c==null?void 0:c.type,o==null?void 0:o.height,o==null?void 0:o.location]),P=React.useMemo(()=>S?Cesium$1.Cartesian3.fromDegrees(S[0],S[1],S[2]):Cesium$1.Cartesian3.ZERO,[S]),{show:L=!0,model:F,url:N,heightReference:z,heading:W,pitch:nt,roll:Pe,scale:se,maximumScale:mt,minimumPixelSize:kt,animation:mn=!0,shadows:_i="disabled",colorBlend:zi="none",color:Sa,colorBlendAmount:fa,lightColor:La,silhouette:Ra,silhouetteColor:ma,bearing:yt,silhouetteSize:lt=1,pbr:pi}=o??{},ba=React.useMemo(()=>F||N||(p==null?void 0:p.url),[F,N,p==null?void 0:p.url]),Sc=React.useMemo(()=>yt?Cesium$1.Transforms.headingPitchRollQuaternion(P,Cesium$1.HeadingPitchRoll.fromDegrees(yt-90,0,0)):Cesium$1.Transforms.headingPitchRollQuaternion(P,new Cesium$1.HeadingPitchRoll(Cesium$1.Math.toRadians(W??0),Cesium$1.Math.toRadians(nt??0),Cesium$1.Math.toRadians(Pe??0))),[yt,W,nt,P,Pe]),ms=React.useMemo(()=>zi?toColor(Sa):void 0,[zi,Sa]),Xs=React.useMemo(()=>toColor(La),[La]),Nl=React.useMemo(()=>toColor(ma),[ma]),pu=React.useMemo(()=>toTimeInterval(h==null?void 0:h.interval),[h==null?void 0:h.interval]),yu=React.useMemo(()=>toDistanceDisplayCondition(o==null?void 0:o.near,o==null?void 0:o.far),[o==null?void 0:o.near,o==null?void 0:o.far]),Ru=React.useMemo(()=>{var gd,pd,Zd,cf,sf,nf,df,Cf,mf,Sf;const xf=new Cesium$1.ImageBasedLighting;if(!(o!=null&&o.specularEnvironmentMaps)&&!(o!=null&&o.sphericalHarmonicCoefficients)&&!((pd=(gd=s==null?void 0:s.scene)==null?void 0:gd.imageBasedLighting)!=null&&pd.specularEnvironmentMaps)&&!((cf=(Zd=s==null?void 0:s.scene)==null?void 0:Zd.imageBasedLighting)!=null&&cf.sphericalHarmonicCoefficients))return xf;const Wa=(o==null?void 0:o.specularEnvironmentMaps)??((nf=(sf=s==null?void 0:s.scene)==null?void 0:sf.imageBasedLighting)==null?void 0:nf.specularEnvironmentMaps),af=(o==null?void 0:o.imageBasedLightIntensity)??((Cf=(df=s==null?void 0:s.scene)==null?void 0:df.imageBasedLighting)==null?void 0:Cf.intensity),Xd=arrayToCartecian3((o==null?void 0:o.sphericalHarmonicCoefficients)??((Sf=(mf=s==null?void 0:s.scene)==null?void 0:mf.imageBasedLighting)==null?void 0:Sf.sphericalHarmonicCoefficients),af);return Wa&&(xf.specularEnvironmentMaps=Wa),Xd&&(xf.sphericalHarmonicCoefficients=Xd),xf},[o==null?void 0:o.specularEnvironmentMaps,o==null?void 0:o.sphericalHarmonicCoefficients,o==null?void 0:o.imageBasedLightIntensity,(pf=(ff=s==null?void 0:s.scene)==null?void 0:ff.imageBasedLighting)==null?void 0:pf.specularEnvironmentMaps,(of=(hf=s==null?void 0:s.scene)==null?void 0:hf.imageBasedLighting)==null?void 0:of.sphericalHarmonicCoefficients,(Ef=(gf=s==null?void 0:s.scene)==null?void 0:gf.imageBasedLighting)==null?void 0:Ef.intensity]),{viewer:Vd}=$e$1(),{requestRender:Gd}=useContext(),uf=React.useRef(!1);return useSceneEvent("postRender",()=>{const xf=Vd==null?void 0:Vd.scene.primitives,Wa=(xf==null?void 0:xf.length)??0;if(!(!uf.current||!Ru))for(let af=0;af<Wa;af++){const Xd=xf==null?void 0:xf.get(af);Xd instanceof Cesium$1.Model&&Xd.id&&Xd.id.id===t&&(Xd.imageBasedLighting=Ru,uf.current=!1,Gd==null||Gd())}}),React.useEffect(()=>{Ru&&(uf.current=!0)},[Ru]),React.useEffect(()=>{Gd==null||Gd()}),(y?h:!h)||!n||!L||!ba?null:jsxRuntimeExports.jsx(EntityExt,{id:t,position:P,orientation:Sc,layerId:d==null?void 0:d.id,featureId:h==null?void 0:h.id,draggable:!0,properties:h==null?void 0:h.properties,availability:pu,children:jsxRuntimeExports.jsx(Qs$1,{uri:ba,scale:se,shadows:shadowMode(_i),customShader:pi===!1?NonPBRLightingShader:pi==="withTexture"?NonPBRWithTextureLightingShader:void 0,colorBlendMode:colorBlendMode(zi),colorBlendAmount:fa,color:ms,lightColor:Xs,runAnimations:mn,silhouetteColor:Nl,silhouetteSize:Ra?lt:void 0,heightReference:heightReference(z),maximumScale:mt,minimumPixelSize:kt,distanceDisplayCondition:yu})})}const config$7={};var jsxRuntime=jsxRuntimeExports,_jsx=jsxRuntime.jsx,newlineRegex=/(\r\n|\r|\n)/g,reactNl2br=function(t){return typeof t!="string"?t:t.split(newlineRegex).map(function(n,o){return n.match(newlineRegex)?_jsx("br",{key:o}):n})};const nl2br=getDefaultExportFromCjs(reactNl2br),cameraDuration=2,cameraExitDuration=2,fovDuration=.5,fovExitDuration=.5,photoDuration=1,photoExitDuration=.5,defaultFOV=Cesium$1.Math.toRadians(60),durations=[[cameraDuration*1e3,cameraExitDuration*1e3],[fovDuration*1e3,fovExitDuration*1e3],[photoDuration*1e3,photoExitDuration*1e3]];function useHooks$3({isSelected:t,camera:n}){const{selectionReason:o,flyTo:s,getCamera:c}=useContext(),[d,h,p]=useDelayedCount(durations),y=React.useRef(n);y.current=n;const S=React.useRef(!1);S.current=(o==null?void 0:o.reason)==="storytelling";const P=React.useRef();React.useEffect(()=>{var N,z,W;if((h??0)>1&&d===1&&P.current)s==null||s(P.current,{duration:cameraExitDuration,easing:Cesium$1.EasingFunction.CUBIC_IN_OUT}),P.current=void 0;else if((h??0)===0&&d===1&&y.current)P.current=c==null?void 0:c(),s==null||s({...y.current,fov:(N=P.current)==null?void 0:N.fov},{duration:cameraDuration,easing:Cesium$1.EasingFunction.CUBIC_IN_OUT});else if(d===2){const nt=(h??0)===1?(z=y.current)==null?void 0:z.fov:((W=P.current)==null?void 0:W.fov)??defaultFOV;s==null||s({fov:nt},{duration:(h??0)===1?fovDuration:fovExitDuration,easing:Cesium$1.EasingFunction.CUBIC_IN_OUT})}},[s,c,d,h]),React.useEffect(()=>{var N;if(!t&&S.current){const z=((N=P.current)==null?void 0:N.fov)??defaultFOV;s==null||s({fov:z},{duration:0})}p(!t,!t)},[s,p,t]);const L=useTransition(!!t&&d>=3,(h??0)>3?photoExitDuration*1e3:photoDuration*1e3,{mountOnEnter:!0,unmountOnExit:!0}),F=React.useCallback(()=>p(!0,!n),[n,p]);return{photoOverlayImageTransiton:L,exitPhotoOverlay:F}}const defaultImage="data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M5%202H19C20.6569%202%2022%203.34315%2022%205V14.9971C22%2014.999%2022%2015.001%2022%2015.0029V19C22%2020.6569%2020.6569%2022%2019%2022H5C3.34315%2022%202%2020.6569%202%2019V5C2%203.34315%203.34315%202%205%202ZM20%2012.5858V5C20%204.44772%2019.5523%204%2019%204H5C4.44772%204%204%204.44772%204%205V19C4%2019.4288%204.2699%2019.7946%204.64909%2019.9367L15.2929%209.29289C15.6834%208.90236%2016.3166%208.90236%2016.7071%209.29289L20%2012.5858ZM7.41421%2020L16%2011.4142L20%2015.4142V19C20%2019.5523%2019.5523%2020%2019%2020H7.41421ZM6%208.5C6%209.88071%207.11928%2011%208.5%2011C9.88071%2011%2011%209.88071%2011%208.5C11%207.11928%209.88071%206%208.5%206C7.11928%206%206%207.11928%206%208.5ZM8.5%209C8.77614%209%209%208.77614%209%208.5C9%208.22386%208.77614%208%208.5%208C8.22386%208%208%208.22386%208%208.5C8%208.77614%208.22386%209%208.5%209Z'%20fill='currentColor'/%3e%3c/svg%3e";function PhotoOverlay({id:t,isVisible:n,property:o,geometry:s,isSelected:c,layer:d,feature:h}){const p=React.useMemo(()=>(s==null?void 0:s.type)==="Point"?s.coordinates:o!=null&&o.location?[o.location.lng,o.location.lat,o.height??0]:void 0,[s==null?void 0:s.coordinates,s==null?void 0:s.type,o==null?void 0:o.height,o==null?void 0:o.location]),{show:y=!0,image:S,imageSize:P,imageHorizontalOrigin:L,imageVerticalOrigin:F,imageCrop:N,imageShadow:z,imageShadowColor:W,imageShadowBlur:nt,imageShadowPositionX:Pe,imageShadowPositionY:se,heightReference:mt,camera:kt,photoOverlayImage:mn,photoOverlayDescription:_i}=o??{},[zi]=useIcon({image:S||defaultImage,imageSize:S?P:void 0,crop:S?N:void 0,shadow:S?z:void 0,shadowColor:S?W:void 0,shadowBlur:S?nt:void 0,shadowOffsetX:S?Pe:void 0,shadowOffsetY:S?se:void 0}),Sa=React.useMemo(()=>p?Cesium$1.Cartesian3.fromDegrees(p[0],p[1],p[2]):void 0,[p]),{photoOverlayImageTransiton:fa,exitPhotoOverlay:La}=useHooks$3({camera:kt,isSelected:c&&!!mn}),Ra=React.useMemo(()=>toTimeInterval(h==null?void 0:h.interval),[h==null?void 0:h.interval]),ma=React.useMemo(()=>toDistanceDisplayCondition(o==null?void 0:o.near,o==null?void 0:o.far),[o==null?void 0:o.near,o==null?void 0:o.far]);return!n||!y||!Sa?null:jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(EntityExt,{id:t,position:Sa,layerId:d==null?void 0:d.id,featureId:h==null?void 0:h.id,draggable:!0,properties:h==null?void 0:h.properties,availability:Ra,children:jsxRuntimeExports.jsx(gs$1,{image:zi,horizontalOrigin:ho$1(L),verticalOrigin:vo$1(F),heightReference:heightReference(mt),distanceDisplayCondition:ma})}),fa==="unmounted"?null:jsxRuntimeExports.jsxs("div",{onClick:La,style:{position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",justifyContent:"center",alignItems:"center",transition:fa==="entering"||fa==="exiting"?`all ${fa==="exiting"?photoExitDuration:photoDuration}s ease`:void 0,opacity:fa==="entering"||fa==="entered"?1:0},children:[jsxRuntimeExports.jsx("img",{src:mn,style:PhotoStyle}),_i&&jsxRuntimeExports.jsx("p",{style:DescriptionStyle,children:nl2br(_i)})]})]})}const PhotoStyle={maxWidth:"95%",maxHeight:"80%",boxShadow:"0 0 15px rgba(0, 0, 0, 1)"},DescriptionStyle={position:"absolute",bottom:"10px",left:"20px",right:"20px",textAlign:"left",userSelect:"none",color:"rgba(0,0,0,.2)",fontFamily:"Noto Sans, hiragino sans, hiragino kaku gothic proN, -apple-system, BlinkMacSystem, sans-serif;",fontSize:"12px",fontWeight:"normal",lineHeight:"20px"},config$6={noLayer:!0};function isPrimitive(t){return t==null||/^[sbn]/.test(typeof t)}function checkDeps(t,n,o){var s="React."+o.replace(/CustomCompare/,"");(!(t instanceof Array)||t.length===0)&&console.warn(o+" should not be used with no dependencies. Use "+s+" instead."),t.every(isPrimitive)&&console.warn(o+" should not be used with dependencies that are all primitive values. Use "+s+" instead."),typeof n!="function"&&console.warn(o+" should be used with depsEqual callback for comparing deps list")}function useCustomCompareMemoize(t,n){var o=React.useRef(void 0),s=React.useRef(o.current);return(s.current===void 0||!n(s.current,t))&&(o.current=t),s.current=t,o.current}function useCustomCompareCallback(t,n,o){return process.env.NODE_ENV!=="production"&&checkDeps(n,o,"useCustomCompareCallback"),React.useCallback(t,useCustomCompareMemoize(n,o))}function useCustomCompareMemo(t,n,o){return process.env.NODE_ENV!=="production"&&checkDeps(n,o,"useCustomCompareMemo"),React.useMemo(t,useCustomCompareMemoize(n,o))}function Polygon({id:t,isVisible:n,property:o,geometry:s,layer:c,feature:d,disableWorkaround:h}){var lt;const p=React.useMemo(()=>(s==null?void 0:s.type)==="Polygon"?s.coordinates:o!=null&&o.polygon?o.polygon.map(pi=>pi.map(ba=>[ba.lng,ba.lat,ba.height])):void 0,[s==null?void 0:s.coordinates,s==null?void 0:s.type,o==null?void 0:o.polygon]),{requestRender:y}=useContext(),{show:S=!0,fill:P=!0,stroke:L,fillColor:F,strokeColor:N,strokeWidth:z=1,height:W,heightReference:nt,shadows:Pe,extrudedHeight:se,classificationType:mt,hideIndicator:kt}=o??{},mn=useCustomCompareMemo(()=>p!=null&&p[0]?new Cesium$1.PolygonHierarchy(p[0].map(pi=>Cesium$1.Cartesian3.fromDegrees(pi[0],pi[1],pi[2]??0)),p.slice(1).map(pi=>new Cesium$1.PolygonHierarchy(pi.map(ba=>Cesium$1.Cartesian3.fromDegrees(ba[0],ba[1],ba[2]??0))))):void 0,[p??[]],isEqual),_i=React.useMemo(()=>p&&L&&!h?p.flatMap(pi=>[pi.map(ba=>Cesium$1.Cartesian3.fromDegrees(ba[0],ba[1],ba[2]??W)),...se?[pi.map(ba=>Cesium$1.Cartesian3.fromDegrees(ba[0],ba[1],se)),...pi.slice(0,-1).map(ba=>[Cesium$1.Cartesian3.fromDegrees(ba[0],ba[1],W??0),Cesium$1.Cartesian3.fromDegrees(ba[0],ba[1],se)])]:[]]):[],[p,L,h,W,se]),zi=React.useMemo(()=>L?toColor$2(N):void 0,[L,N]),Sa=React.useRef(null),fa=getTag((lt=Sa.current)==null?void 0:lt.cesiumElement),La=React.useMemo(()=>{var pi,ba;return P?fa!=null&&fa.isFeatureSelected&&typeof((pi=c==null?void 0:c.polygon)==null?void 0:pi.selectedFeatureColor)=="string"?toColor$2((ba=c.polygon)==null?void 0:ba.selectedFeatureColor):toColor$2(F):void 0},[P,F,c==null?void 0:c.id,d==null?void 0:d.id,fa==null?void 0:fa.isFeatureSelected]),Ra=React.useMemo(()=>toTimeInterval(d==null?void 0:d.interval),[d==null?void 0:d.interval]),ma=React.useMemo(()=>toDistanceDisplayCondition(o==null?void 0:o.near,o==null?void 0:o.far),[o==null?void 0:o.near,o==null?void 0:o.far]),yt=React.useMemo(()=>se!==void 0?{extrudedHeight:se}:void 0,[se]);return React.useEffect(()=>{y==null||y()}),!n||!p||!S?null:jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(EntityExt,{id:t,layerId:c==null?void 0:c.id,featureId:d==null?void 0:d.id,ref:Sa,availability:Ra,properties:d==null?void 0:d.properties,hideIndicator:kt,children:jsxRuntimeExports.jsx(aa$1,{hierarchy:mn,fill:P,material:La,outline:!!zi,outlineColor:zi,outlineWidth:z,height:W,heightReference:heightReference(nt),shadows:shadowMode(Pe),distanceDisplayCondition:ma,classificationType:classificationType(mt),...yt})}),_i==null?void 0:_i.map((pi,ba)=>jsxRuntimeExports.jsx(Is$1,{id:`${t}-stroke${ba}`,children:jsxRuntimeExports.jsx(ua$1,{positions:pi,clampToGround:nt=="clamp"||nt=="relative",width:z,material:zi,shadows:shadowMode(Pe),distanceDisplayCondition:ma,classificationType:classificationType(mt)})},ba))]})}const config$5={noLayer:!0};function Polyline({id:t,isVisible:n,property:o,geometry:s,layer:c,feature:d}){var mn;const{show:h=!0}=o||{},p=React.useMemo(()=>(s==null?void 0:s.type)==="LineString"?s.coordinates:o!=null&&o.coordinates?o.coordinates.map(_i=>[_i.lng,_i.lat,_i.height]):void 0,[s==null?void 0:s.coordinates,s==null?void 0:s.type,o==null?void 0:o.coordinates]),{requestRender:y}=useContext(),{clampToGround:S,strokeColor:P,strokeWidth:L=1,shadows:F,classificationType:N,hideIndicator:z}=o??{},W=useCustomCompareMemo(()=>p==null?void 0:p.map(_i=>Cesium$1.Cartesian3.fromDegrees(_i[0],_i[1],_i[2])),[p??[]],isEqual),nt=React.useRef(null),Pe=getTag((mn=nt.current)==null?void 0:mn.cesiumElement),se=React.useMemo(()=>{var _i,zi;return Pe!=null&&Pe.isFeatureSelected&&typeof((_i=c==null?void 0:c.polyline)==null?void 0:_i.selectedFeatureColor)=="string"?toColor$2((zi=c.polyline)==null?void 0:zi.selectedFeatureColor):toColor$2(P)},[P,c,Pe==null?void 0:Pe.isFeatureSelected]),mt=React.useMemo(()=>toTimeInterval(d==null?void 0:d.interval),[d==null?void 0:d.interval]),kt=React.useMemo(()=>toDistanceDisplayCondition(o==null?void 0:o.near,o==null?void 0:o.far),[o==null?void 0:o.near,o==null?void 0:o.far]);return React.useEffect(()=>{y==null||y()}),!n||!p||!h?null:jsxRuntimeExports.jsx(EntityExt,{id:t,layerId:c==null?void 0:c.id,featureId:d==null?void 0:d.id,ref:nt,availability:mt,properties:d==null?void 0:d.properties,hideIndicator:z,children:jsxRuntimeExports.jsx(ua$1,{positions:W,width:L,material:se,clampToGround:S,shadows:shadowMode(F),distanceDisplayCondition:kt,classificationType:classificationType(N)})})}const config$4={noLayer:!0};var bd=Object.defineProperty,md=(t,n,o)=>n in t?bd(t,n,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[n]=o,U=(t,n,o)=>(md(t,typeof n!="symbol"?n+"":n,o),o),qi=(t,n,o)=>{if(!n.has(t))throw TypeError("Cannot "+o)},r=(t,n,o)=>(qi(t,n,"read from private field"),o?o.call(t):n.get(t)),E=(t,n,o)=>{if(n.has(t))throw TypeError("Cannot add the same private member more than once");n instanceof WeakSet?n.add(t):n.set(t,o)},H=(t,n,o,s)=>(qi(t,n,"write to private field"),n.set(t,o),o),ri=(t,n,o,s)=>({set _(c){H(t,n,c)},get _(){return r(t,n,s)}}),K=(t,n,o)=>(qi(t,n,"access private method"),o),yd=typeof global=="object"&&global&&global.Object===Object&&global;const sc=yd;var Rd=typeof self=="object"&&self&&self.Object===Object&&self,Wd=sc||Rd||Function("return this")();const Et=Wd;var fd=Et.Symbol;const Tt=fd;var ac=Object.prototype,Sd=ac.hasOwnProperty,Ld=ac.toString,Ee=Tt?Tt.toStringTag:void 0;function Fd(t){var n=Sd.call(t,Ee),o=t[Ee];try{t[Ee]=void 0;var s=!0}catch{}var c=Ld.call(t);return s&&(n?t[Ee]=o:delete t[Ee]),c}var Id=Object.prototype,xd=Id.toString;function Td(t){return xd.call(t)}var Ud="[object Null]",Yd="[object Undefined]",tn=Tt?Tt.toStringTag:void 0;function ze(t){return t==null?t===void 0?Yd:Ud:tn&&tn in Object(t)?Fd(t):Td(t)}function ce(t){return t!=null&&typeof t=="object"}var Jd="[object Symbol]";function Il(t){return typeof t=="symbol"||ce(t)&&ze(t)==Jd}function Cd(t,n){for(var o=-1,s=t==null?0:t.length,c=Array(s);++o<s;)c[o]=n(t[o],o,t);return c}var Kd=Array.isArray;const Pt=Kd;var en=Tt?Tt.prototype:void 0,ln=en?en.toString:void 0;function uc(t){if(typeof t=="string")return t;if(Pt(t))return Cd(t,uc)+"";if(Il(t))return ln?ln.call(t):"";var n=t+"";return n=="0"&&1/t==-1/0?"-0":n}function Ze(t){var n=typeof t;return t!=null&&(n=="object"||n=="function")}function Nd(t){return t}var Md="[object AsyncFunction]",kd="[object Function]",Hd="[object GeneratorFunction]",zd="[object Proxy]";function rc(t){if(!Ze(t))return!1;var n=ze(t);return n==kd||n==Hd||n==Md||n==zd}var Qd=Et["__core-js_shared__"];const $i=Qd;var nn=function(){var t=/[^.]+$/.exec($i&&$i.keys&&$i.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function Pd(t){return!!nn&&nn in t}var Ed=Function.prototype,wd=Ed.toString;function Ge(t){if(t!=null){try{return wd.call(t)}catch{}try{return t+""}catch{}}return""}var vd=/[\\^$.*+?()[\]{}|]/g,Bd=/^\[object .+?Constructor\]$/,jd=Function.prototype,Od=Object.prototype,Dd=jd.toString,Ad=Od.hasOwnProperty,_d=RegExp("^"+Dd.call(Ad).replace(vd,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function qd(t){if(!Ze(t)||Pd(t))return!1;var n=rc(t)?_d:Bd;return n.test(Ge(t))}function $d(t,n){return t==null?void 0:t[n]}function pe(t,n){var o=$d(t,n);return qd(o)?o:void 0}var to=pe(Et,"WeakMap");const ul=to;var cn=Object.create,eo=function(){function t(){}return function(n){if(!Ze(n))return{};if(cn)return cn(n);t.prototype=n;var o=new t;return t.prototype=void 0,o}}();const io=eo;function lo(t,n,o){switch(o.length){case 0:return t.call(n);case 1:return t.call(n,o[0]);case 2:return t.call(n,o[0],o[1]);case 3:return t.call(n,o[0],o[1],o[2])}return t.apply(n,o)}var co=800,oo=16,so=Date.now;function ao(t){var n=0,o=0;return function(){var s=so(),c=oo-(s-o);if(o=s,c>0){if(++n>=co)return arguments[0]}else n=0;return t.apply(void 0,arguments)}}function uo(t){return function(){return t}}var ro=function(){try{var t=pe(Object,"defineProperty");return t({},"",{}),t}catch{}}();const xi=ro;var ho=xi?function(t,n){return xi(t,"toString",{configurable:!0,enumerable:!1,value:uo(n),writable:!0})}:Nd;const bo=ho;var mo=ao(bo);const Zo=mo;function Vo(t,n){for(var o=-1,s=t==null?0:t.length;++o<s&&n(t[o],o,t)!==!1;);return t}var Xo=9007199254740991,Go=/^(?:0|[1-9]\d*)$/;function xl(t,n){var o=typeof t;return n=n??Xo,!!n&&(o=="number"||o!="symbol"&&Go.test(t))&&t>-1&&t%1==0&&t<n}function hc(t,n,o){n=="__proto__"&&xi?xi(t,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):t[n]=o}function Tl(t,n){return t===n||t!==t&&n!==n}var po=Object.prototype,yo=po.hasOwnProperty;function Ul(t,n,o){var s=t[n];(!(yo.call(t,n)&&Tl(s,o))||o===void 0&&!(n in t))&&hc(t,n,o)}var dn=Math.max;function Ro(t,n,o){return n=dn(n===void 0?t.length-1:n,0),function(){for(var s=arguments,c=-1,d=dn(s.length-n,0),h=Array(d);++c<d;)h[c]=s[n+c];c=-1;for(var p=Array(n+1);++c<n;)p[c]=s[c];return p[n]=o(h),lo(t,this,p)}}var Wo=9007199254740991;function Yl(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Wo}function bc(t){return t!=null&&Yl(t.length)&&!rc(t)}var fo=Object.prototype;function Jl(t){var n=t&&t.constructor,o=typeof n=="function"&&n.prototype||fo;return t===o}function So(t,n){for(var o=-1,s=Array(t);++o<t;)s[o]=n(o);return s}var Lo="[object Arguments]";function on$1(t){return ce(t)&&ze(t)==Lo}var mc=Object.prototype,Fo=mc.hasOwnProperty,Io=mc.propertyIsEnumerable,xo=on$1(function(){return arguments}())?on$1:function(t){return ce(t)&&Fo.call(t,"callee")&&!Io.call(t,"callee")};const Cl=xo;function To(){return!1}var Zc=typeof exports=="object"&&exports&&!exports.nodeType&&exports,sn=Zc&&typeof module=="object"&&module&&!module.nodeType&&module,Uo=sn&&sn.exports===Zc,an=Uo?Et.Buffer:void 0,Yo=an?an.isBuffer:void 0,Jo=Yo||To;const Ti=Jo;var Co="[object Arguments]",Ko="[object Array]",go="[object Boolean]",No="[object Date]",Mo="[object Error]",ko="[object Function]",Ho="[object Map]",zo="[object Number]",Qo="[object Object]",Po="[object RegExp]",Eo="[object Set]",wo="[object String]",vo="[object WeakMap]",Bo="[object ArrayBuffer]",jo="[object DataView]",Oo="[object Float32Array]",Do="[object Float64Array]",Ao="[object Int8Array]",_o="[object Int16Array]",qo="[object Int32Array]",$o="[object Uint8Array]",ts="[object Uint8ClampedArray]",es="[object Uint16Array]",is="[object Uint32Array]",et={};et[Oo]=et[Do]=et[Ao]=et[_o]=et[qo]=et[$o]=et[ts]=et[es]=et[is]=!0,et[Co]=et[Ko]=et[Bo]=et[go]=et[jo]=et[No]=et[Mo]=et[ko]=et[Ho]=et[zo]=et[Qo]=et[Po]=et[Eo]=et[wo]=et[vo]=!1;function ls(t){return ce(t)&&Yl(t.length)&&!!et[ze(t)]}function Kl(t){return function(n){return t(n)}}var Vc=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Oe=Vc&&typeof module=="object"&&module&&!module.nodeType&&module,ns=Oe&&Oe.exports===Vc,tl=ns&&sc.process,cs=function(){try{var t=Oe&&Oe.require&&Oe.require("util").types;return t||tl&&tl.binding&&tl.binding("util")}catch{}}();const Ke=cs;var un=Ke&&Ke.isTypedArray,ds=un?Kl(un):ls;const Xc=ds;var os=Object.prototype,ss=os.hasOwnProperty;function Gc(t,n){var o=Pt(t),s=!o&&Cl(t),c=!o&&!s&&Ti(t),d=!o&&!s&&!c&&Xc(t),h=o||s||c||d,p=h?So(t.length,String):[],y=p.length;for(var S in t)ss.call(t,S)&&!(h&&(S=="length"||c&&(S=="offset"||S=="parent")||d&&(S=="buffer"||S=="byteLength"||S=="byteOffset")||xl(S,y)))&&p.push(S);return p}function pc(t,n){return function(o){return t(n(o))}}var as=pc(Object.keys,Object);const us=as;var rs=Object.prototype,hs=rs.hasOwnProperty;function bs(t){if(!Jl(t))return us(t);var n=[];for(var o in Object(t))hs.call(t,o)&&o!="constructor"&&n.push(o);return n}function gl(t){return bc(t)?Gc(t):bs(t)}var Gs=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ps=/^\w*$/;function ys(t,n){if(Pt(t))return!1;var o=typeof t;return o=="number"||o=="symbol"||o=="boolean"||t==null||Il(t)?!0:ps.test(t)||!Gs.test(t)||n!=null&&t in Object(n)}var Rs=pe(Object,"create");const Ae=Rs;function Ws(){this.__data__=Ae?Ae(null):{},this.size=0}function fs(t){var n=this.has(t)&&delete this.__data__[t];return this.size-=n?1:0,n}var Ss="__lodash_hash_undefined__",Ls=Object.prototype,Fs=Ls.hasOwnProperty;function Is(t){var n=this.__data__;if(Ae){var o=n[t];return o===Ss?void 0:o}return Fs.call(n,t)?n[t]:void 0}var xs=Object.prototype,Ts=xs.hasOwnProperty;function Us(t){var n=this.__data__;return Ae?n[t]!==void 0:Ts.call(n,t)}var Ys="__lodash_hash_undefined__";function Js(t,n){var o=this.__data__;return this.size+=this.has(t)?0:1,o[t]=Ae&&n===void 0?Ys:n,this}function Ve(t){var n=-1,o=t==null?0:t.length;for(this.clear();++n<o;){var s=t[n];this.set(s[0],s[1])}}Ve.prototype.clear=Ws,Ve.prototype.delete=fs,Ve.prototype.get=Is,Ve.prototype.has=Us,Ve.prototype.set=Js;function Cs(){this.__data__=[],this.size=0}function Qi(t,n){for(var o=t.length;o--;)if(Tl(t[o][0],n))return o;return-1}var Ks=Array.prototype,gs=Ks.splice;function Ns(t){var n=this.__data__,o=Qi(n,t);if(o<0)return!1;var s=n.length-1;return o==s?n.pop():gs.call(n,o,1),--this.size,!0}function Ms(t){var n=this.__data__,o=Qi(n,t);return o<0?void 0:n[o][1]}function ks(t){return Qi(this.__data__,t)>-1}function Hs(t,n){var o=this.__data__,s=Qi(o,t);return s<0?(++this.size,o.push([t,n])):o[s][1]=n,this}function At(t){var n=-1,o=t==null?0:t.length;for(this.clear();++n<o;){var s=t[n];this.set(s[0],s[1])}}At.prototype.clear=Cs,At.prototype.delete=Ns,At.prototype.get=Ms,At.prototype.has=ks,At.prototype.set=Hs;var zs=pe(Et,"Map");const _e=zs;function Qs(){this.size=0,this.__data__={hash:new Ve,map:new(_e||At),string:new Ve}}function Ps(t){var n=typeof t;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?t!=="__proto__":t===null}function Pi(t,n){var o=t.__data__;return Ps(n)?o[typeof n=="string"?"string":"hash"]:o.map}function Es(t){var n=Pi(this,t).delete(t);return this.size-=n?1:0,n}function ws(t){return Pi(this,t).get(t)}function vs(t){return Pi(this,t).has(t)}function Bs(t,n){var o=Pi(this,t),s=o.size;return o.set(t,n),this.size+=o.size==s?0:1,this}function _t(t){var n=-1,o=t==null?0:t.length;for(this.clear();++n<o;){var s=t[n];this.set(s[0],s[1])}}_t.prototype.clear=Qs,_t.prototype.delete=Es,_t.prototype.get=ws,_t.prototype.has=vs,_t.prototype.set=Bs;var js="Expected a function";function Ml(t,n){if(typeof t!="function"||n!=null&&typeof n!="function")throw new TypeError(js);var o=function(){var s=arguments,c=n?n.apply(this,s):s[0],d=o.cache;if(d.has(c))return d.get(c);var h=t.apply(this,s);return o.cache=d.set(c,h)||d,h};return o.cache=new(Ml.Cache||_t),o}Ml.Cache=_t;var Os=500;function Ds(t){var n=Ml(t,function(s){return o.size===Os&&o.clear(),s}),o=n.cache;return n}var As=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,_s=/\\(\\)?/g,qs=Ds(function(t){var n=[];return t.charCodeAt(0)===46&&n.push(""),t.replace(As,function(o,s,c,d){n.push(c?d.replace(_s,"$1"):s||o)}),n});const $s=qs;function ta(t){return t==null?"":uc(t)}function Ei(t,n){return Pt(t)?t:ys(t,n)?[t]:$s(ta(t))}function kl(t){if(typeof t=="string"||Il(t))return t;var n=t+"";return n=="0"&&1/t==-1/0?"-0":n}function ia(t,n){n=Ei(n,t);for(var o=0,s=n.length;t!=null&&o<s;)t=t[kl(n[o++])];return o&&o==s?t:void 0}function Hl(t,n){for(var o=-1,s=n.length,c=t.length;++o<s;)t[c+o]=n[o];return t}var rn=Tt?Tt.isConcatSpreadable:void 0;function la(t){return Pt(t)||Cl(t)||!!(rn&&t&&t[rn])}function yc(t,n,o,s,c){var d=-1,h=t.length;for(o||(o=la),c||(c=[]);++d<h;){var p=t[d];o(p)?Hl(c,p):c[c.length]=p}return c}function na(t){var n=t==null?0:t.length;return n?yc(t):[]}function ca(t){return Zo(Ro(t,void 0,na),t+"")}var da=pc(Object.getPrototypeOf,Object);const Rc=da;function oa(){this.__data__=new At,this.size=0}function sa(t){var n=this.__data__,o=n.delete(t);return this.size=n.size,o}function aa(t){return this.__data__.get(t)}function ua(t){return this.__data__.has(t)}var ra=200;function ha(t,n){var o=this.__data__;if(o instanceof At){var s=o.__data__;if(!_e||s.length<ra-1)return s.push([t,n]),this.size=++o.size,this;o=this.__data__=new _t(s)}return o.set(t,n),this.size=o.size,this}function jt(t){var n=this.__data__=new At(t);this.size=n.size}jt.prototype.clear=oa,jt.prototype.delete=sa,jt.prototype.get=aa,jt.prototype.has=ua,jt.prototype.set=ha;var Wc=typeof exports=="object"&&exports&&!exports.nodeType&&exports,hn=Wc&&typeof module=="object"&&module&&!module.nodeType&&module,Za=hn&&hn.exports===Wc,bn=Za?Et.Buffer:void 0;bn&&bn.allocUnsafe;function Va(t,n){return t.slice()}function Xa(t,n){for(var o=-1,s=t==null?0:t.length,c=0,d=[];++o<s;){var h=t[o];n(h,o,t)&&(d[c++]=h)}return d}function fc(){return[]}var Ga=Object.prototype,pa=Ga.propertyIsEnumerable,Zn=Object.getOwnPropertySymbols,ya=Zn?function(t){return t==null?[]:(t=Object(t),Xa(Zn(t),function(n){return pa.call(t,n)}))}:fc;const zl=ya;function Lc(t,n,o){var s=n(t);return Pt(t)?s:Hl(s,o(t))}function rl(t){return Lc(t,gl,zl)}var Fa=pe(Et,"DataView");const hl=Fa;var Ia=pe(Et,"Promise");const bl=Ia;var xa=pe(Et,"Set");const ml=xa;var Vn="[object Map]",Ta="[object Object]",Xn="[object Promise]",Gn="[object Set]",pn="[object WeakMap]",yn="[object DataView]",Ua=Ge(hl),Ya=Ge(_e),Ja=Ge(bl),Ca=Ge(ml),Ka=Ge(ul),ue=ze;(hl&&ue(new hl(new ArrayBuffer(1)))!=yn||_e&&ue(new _e)!=Vn||bl&&ue(bl.resolve())!=Xn||ml&&ue(new ml)!=Gn||ul&&ue(new ul)!=pn)&&(ue=function(t){var n=ze(t),o=n==Ta?t.constructor:void 0,s=o?Ge(o):"";if(s)switch(s){case Ua:return yn;case Ya:return Vn;case Ja:return Xn;case Ca:return Gn;case Ka:return pn}return n});const qe=ue;var ga=Object.prototype,Na=ga.hasOwnProperty;function Ma(t){var n=t.length,o=new t.constructor(n);return n&&typeof t[0]=="string"&&Na.call(t,"index")&&(o.index=t.index,o.input=t.input),o}var ka=Et.Uint8Array;const Ui=ka;function Ql(t){var n=new t.constructor(t.byteLength);return new Ui(n).set(new Ui(t)),n}function Ha(t,n){var o=Ql(t.buffer);return new t.constructor(o,t.byteOffset,t.byteLength)}var za=/\w*$/;function Qa(t){var n=new t.constructor(t.source,za.exec(t));return n.lastIndex=t.lastIndex,n}var Rn=Tt?Tt.prototype:void 0,Wn=Rn?Rn.valueOf:void 0;function Pa(t){return Wn?Object(Wn.call(t)):{}}function Ea(t,n){var o=Ql(t.buffer);return new t.constructor(o,t.byteOffset,t.length)}var wa="[object Boolean]",va="[object Date]",Ba="[object Map]",ja="[object Number]",Oa="[object RegExp]",Da="[object Set]",Aa="[object String]",_a="[object Symbol]",qa="[object ArrayBuffer]",$a="[object DataView]",tu="[object Float32Array]",eu="[object Float64Array]",iu="[object Int8Array]",lu="[object Int16Array]",nu="[object Int32Array]",cu="[object Uint8Array]",du="[object Uint8ClampedArray]",ou="[object Uint16Array]",su="[object Uint32Array]";function au(t,n,o){var s=t.constructor;switch(n){case qa:return Ql(t);case wa:case va:return new s(+t);case $a:return Ha(t);case tu:case eu:case iu:case lu:case nu:case cu:case du:case ou:case su:return Ea(t);case Ba:return new s;case ja:case Aa:return new s(t);case Oa:return Qa(t);case Da:return new s;case _a:return Pa(t)}}function uu(t){return typeof t.constructor=="function"&&!Jl(t)?io(Rc(t)):{}}var ru="[object Map]";function hu(t){return ce(t)&&qe(t)==ru}var fn=Ke&&Ke.isMap,bu=fn?Kl(fn):hu;const mu=bu;var Zu="[object Set]";function Vu(t){return ce(t)&&qe(t)==Zu}var Sn=Ke&&Ke.isSet,Xu=Sn?Kl(Sn):Vu;const Gu=Xu;var Fc="[object Arguments]",Wu="[object Array]",fu="[object Boolean]",Su="[object Date]",Lu="[object Error]",Ic="[object Function]",Fu="[object GeneratorFunction]",Iu="[object Map]",xu="[object Number]",xc="[object Object]",Tu="[object RegExp]",Uu="[object Set]",Yu="[object String]",Ju="[object Symbol]",Cu="[object WeakMap]",Ku="[object ArrayBuffer]",gu="[object DataView]",Nu="[object Float32Array]",Mu="[object Float64Array]",ku="[object Int8Array]",Hu="[object Int16Array]",zu="[object Int32Array]",Qu="[object Uint8Array]",Pu="[object Uint8ClampedArray]",Eu="[object Uint16Array]",wu="[object Uint32Array]",q={};q[Fc]=q[Wu]=q[Ku]=q[gu]=q[fu]=q[Su]=q[Nu]=q[Mu]=q[ku]=q[Hu]=q[zu]=q[Iu]=q[xu]=q[xc]=q[Tu]=q[Uu]=q[Yu]=q[Ju]=q[Qu]=q[Pu]=q[Eu]=q[wu]=!0,q[Lu]=q[Ic]=q[Cu]=!1;function yi(t,n,o,s,c,d){var h;if(h!==void 0)return h;if(!Ze(t))return t;var p=Pt(t);if(p)h=Ma(t);else{var y=qe(t),S=y==Ic||y==Fu;if(Ti(t))return Va(t);if(y==xc||y==Fc||S&&!c)h=S?{}:uu(t);else{if(!q[y])return c?t:{};h=au(t,y)}}d||(d=new jt);var P=d.get(t);if(P)return P;d.set(t,h),Gu(t)?t.forEach(function(N){h.add(yi(N,n,o,N,t,d))}):mu(t)&&t.forEach(function(N,z){h.set(z,yi(N,n,o,z,t,d))});var L=rl,F=p?void 0:L(t);return Vo(F||t,function(N,z){F&&(z=N,N=t[z]),Ul(h,z,yi(N,n,o,z,t,d))}),h}var vu=1,Bu=4;function ju(t){return yi(t,vu|Bu)}var Ou="__lodash_hash_undefined__";function Du(t){return this.__data__.set(t,Ou),this}function Au(t){return this.__data__.has(t)}function Yi(t){var n=-1,o=t==null?0:t.length;for(this.__data__=new _t;++n<o;)this.add(t[n])}Yi.prototype.add=Yi.prototype.push=Du,Yi.prototype.has=Au;function _u(t,n){for(var o=-1,s=t==null?0:t.length;++o<s;)if(n(t[o],o,t))return!0;return!1}function qu(t,n){return t.has(n)}var $u=1,t0=2;function Tc(t,n,o,s,c,d){var h=o&$u,p=t.length,y=n.length;if(p!=y&&!(h&&y>p))return!1;var S=d.get(t),P=d.get(n);if(S&&P)return S==n&&P==t;var L=-1,F=!0,N=o&t0?new Yi:void 0;for(d.set(t,n),d.set(n,t);++L<p;){var z=t[L],W=n[L];if(s)var nt=h?s(W,z,L,n,t,d):s(z,W,L,t,n,d);if(nt!==void 0){if(nt)continue;F=!1;break}if(N){if(!_u(n,function(Pe,se){if(!qu(N,se)&&(z===Pe||c(z,Pe,o,s,d)))return N.push(se)})){F=!1;break}}else if(!(z===W||c(z,W,o,s,d))){F=!1;break}}return d.delete(t),d.delete(n),F}function e0(t){var n=-1,o=Array(t.size);return t.forEach(function(s,c){o[++n]=[c,s]}),o}function i0(t){var n=-1,o=Array(t.size);return t.forEach(function(s){o[++n]=s}),o}var l0=1,n0=2,c0="[object Boolean]",d0="[object Date]",o0="[object Error]",s0="[object Map]",a0="[object Number]",u0="[object RegExp]",r0="[object Set]",h0="[object String]",b0="[object Symbol]",m0="[object ArrayBuffer]",Z0="[object DataView]",Ln=Tt?Tt.prototype:void 0,el=Ln?Ln.valueOf:void 0;function V0(t,n,o,s,c,d,h){switch(o){case Z0:if(t.byteLength!=n.byteLength||t.byteOffset!=n.byteOffset)return!1;t=t.buffer,n=n.buffer;case m0:return!(t.byteLength!=n.byteLength||!d(new Ui(t),new Ui(n)));case c0:case d0:case a0:return Tl(+t,+n);case o0:return t.name==n.name&&t.message==n.message;case u0:case h0:return t==n+"";case s0:var p=e0;case r0:var y=s&l0;if(p||(p=i0),t.size!=n.size&&!y)return!1;var S=h.get(t);if(S)return S==n;s|=n0,h.set(t,n);var P=Tc(p(t),p(n),s,c,d,h);return h.delete(t),P;case b0:if(el)return el.call(t)==el.call(n)}return!1}var X0=1,G0=Object.prototype,p0=G0.hasOwnProperty;function y0(t,n,o,s,c,d){var h=o&X0,p=rl(t),y=p.length,S=rl(n),P=S.length;if(y!=P&&!h)return!1;for(var L=y;L--;){var F=p[L];if(!(h?F in n:p0.call(n,F)))return!1}var N=d.get(t),z=d.get(n);if(N&&z)return N==n&&z==t;var W=!0;d.set(t,n),d.set(n,t);for(var nt=h;++L<y;){F=p[L];var Pe=t[F],se=n[F];if(s)var mt=h?s(se,Pe,F,n,t,d):s(Pe,se,F,t,n,d);if(!(mt===void 0?Pe===se||c(Pe,se,o,s,d):mt)){W=!1;break}nt||(nt=F=="constructor")}if(W&&!nt){var kt=t.constructor,mn=n.constructor;kt!=mn&&"constructor"in t&&"constructor"in n&&!(typeof kt=="function"&&kt instanceof kt&&typeof mn=="function"&&mn instanceof mn)&&(W=!1)}return d.delete(t),d.delete(n),W}var R0=1,Fn="[object Arguments]",In="[object Array]",hi="[object Object]",W0=Object.prototype,xn=W0.hasOwnProperty;function f0(t,n,o,s,c,d){var h=Pt(t),p=Pt(n),y=h?In:qe(t),S=p?In:qe(n);y=y==Fn?hi:y,S=S==Fn?hi:S;var P=y==hi,L=S==hi,F=y==S;if(F&&Ti(t)){if(!Ti(n))return!1;h=!0,P=!1}if(F&&!P)return d||(d=new jt),h||Xc(t)?Tc(t,n,o,s,c,d):V0(t,n,y,o,s,c,d);if(!(o&R0)){var N=P&&xn.call(t,"__wrapped__"),z=L&&xn.call(n,"__wrapped__");if(N||z){var W=N?t.value():t,nt=z?n.value():n;return d||(d=new jt),c(W,nt,o,s,d)}}return F?(d||(d=new jt),y0(t,n,o,s,c,d)):!1}function Uc(t,n,o,s,c){return t===n?!0:t==null||n==null||!ce(t)&&!ce(n)?t!==t&&n!==n:f0(t,n,o,s,Uc,c)}function S0(t,n){return t!=null&&n in Object(t)}function L0(t,n,o){n=Ei(n,t);for(var s=-1,c=n.length,d=!1;++s<c;){var h=kl(n[s]);if(!(d=t!=null&&o(t,h)))break;t=t[h]}return d||++s!=c?d:(c=t==null?0:t.length,!!c&&Yl(c)&&xl(h,c)&&(Pt(t)||Cl(t)))}function F0(t,n){return t!=null&&L0(t,n,S0)}function I0(t,n){return Uc(t,n)}function x0(t,n,o,s){if(!Ze(t))return t;n=Ei(n,t);for(var c=-1,d=n.length,h=d-1,p=t;p!=null&&++c<d;){var y=kl(n[c]),S=o;if(y==="__proto__"||y==="constructor"||y==="prototype")return t;if(c!=h){var P=p[y];S=void 0,S===void 0&&(S=Ze(P)?P:xl(n[c+1])?[]:{})}Ul(p,y,S),p=p[y]}return t}function T0(t,n,o){for(var s=-1,c=n.length,d={};++s<c;){var h=n[s],p=ia(t,h);o(p,h)&&x0(d,Ei(h,t),p)}return d}function U0(t,n){return T0(t,n,function(o,s){return F0(t,s)})}var Y0=ca(function(t,n){return t==null?{}:U0(t,n)});const J0=Y0;function C(t,n){return t??n}C.EMPTY_OBJECT=Object.freeze({});function X(t){return t!=null}function Y(t){this.name="DeveloperError",this.message=t;let n;try{throw new Error}catch(o){n=o.stack}this.stack=n}X(Object.create)&&(Y.prototype=Object.create(Error.prototype),Y.prototype.constructor=Y),Y.prototype.toString=function(){let t=`${this.name}: ${this.message}`;return X(this.stack)&&(t+=`
|
|
6095
|
+
`});function Model({id:t,isVisible:n,property:o,viewerProperty:s,geometry:c,layer:d,feature:h}){var ff,pf,hf,of,gf,Ef;const p=extractSimpleLayerData(d),y=(p==null?void 0:p.type)==="gltf",S=React.useMemo(()=>(c==null?void 0:c.type)==="Point"?(o==null?void 0:o.height)===void 0?c.coordinates:[...c.coordinates.slice(0,2),o.height]:o!=null&&o.location?[o.location.lng,o.location.lat,o.height??0]:void 0,[c==null?void 0:c.coordinates,c==null?void 0:c.type,o==null?void 0:o.height,o==null?void 0:o.location]),P=React.useMemo(()=>S?Cesium$1.Cartesian3.fromDegrees(S[0],S[1],S[2]):Cesium$1.Cartesian3.ZERO,[S]),{show:L=!0,model:F,url:N,heightReference:z,heading:W,pitch:nt,roll:Pe,scale:se,maximumScale:mt,minimumPixelSize:kt,animation:mn=!0,shadows:_i="disabled",colorBlend:zi="none",color:Sa,colorBlendAmount:fa,lightColor:La,silhouette:Ra,silhouetteColor:ma,bearing:yt,silhouetteSize:lt=1,pbr:pi}=o??{},ba=React.useMemo(()=>F||N||(p==null?void 0:p.url),[F,N,p==null?void 0:p.url]),Sc=React.useMemo(()=>yt?Cesium$1.Transforms.headingPitchRollQuaternion(P,Cesium$1.HeadingPitchRoll.fromDegrees(yt-90,0,0)):Cesium$1.Transforms.headingPitchRollQuaternion(P,new Cesium$1.HeadingPitchRoll(Cesium$1.Math.toRadians(W??0),Cesium$1.Math.toRadians(nt??0),Cesium$1.Math.toRadians(Pe??0))),[yt,W,nt,P,Pe]),ms=React.useMemo(()=>zi?toColor(Sa):void 0,[zi,Sa]),Xs=React.useMemo(()=>toColor(La),[La]),Nl=React.useMemo(()=>toColor(ma),[ma]),pu=React.useMemo(()=>toTimeInterval(h==null?void 0:h.interval),[h==null?void 0:h.interval]),yu=React.useMemo(()=>toDistanceDisplayCondition(o==null?void 0:o.near,o==null?void 0:o.far),[o==null?void 0:o.near,o==null?void 0:o.far]),Ru=React.useMemo(()=>{var gd,pd,Zd,cf,sf,nf,df,Cf,mf,Sf;const xf=new Cesium$1.ImageBasedLighting;if(!(o!=null&&o.specularEnvironmentMaps)&&!(o!=null&&o.sphericalHarmonicCoefficients)&&!((pd=(gd=s==null?void 0:s.scene)==null?void 0:gd.imageBasedLighting)!=null&&pd.specularEnvironmentMaps)&&!((cf=(Zd=s==null?void 0:s.scene)==null?void 0:Zd.imageBasedLighting)!=null&&cf.sphericalHarmonicCoefficients))return xf;const Wa=(o==null?void 0:o.specularEnvironmentMaps)??((nf=(sf=s==null?void 0:s.scene)==null?void 0:sf.imageBasedLighting)==null?void 0:nf.specularEnvironmentMaps),af=(o==null?void 0:o.imageBasedLightIntensity)??((Cf=(df=s==null?void 0:s.scene)==null?void 0:df.imageBasedLighting)==null?void 0:Cf.intensity),Xd=arrayToCartecian3((o==null?void 0:o.sphericalHarmonicCoefficients)??((Sf=(mf=s==null?void 0:s.scene)==null?void 0:mf.imageBasedLighting)==null?void 0:Sf.sphericalHarmonicCoefficients),af);return Wa&&(xf.specularEnvironmentMaps=Wa),Xd&&(xf.sphericalHarmonicCoefficients=Xd),xf},[o==null?void 0:o.specularEnvironmentMaps,o==null?void 0:o.sphericalHarmonicCoefficients,o==null?void 0:o.imageBasedLightIntensity,(pf=(ff=s==null?void 0:s.scene)==null?void 0:ff.imageBasedLighting)==null?void 0:pf.specularEnvironmentMaps,(of=(hf=s==null?void 0:s.scene)==null?void 0:hf.imageBasedLighting)==null?void 0:of.sphericalHarmonicCoefficients,(Ef=(gf=s==null?void 0:s.scene)==null?void 0:gf.imageBasedLighting)==null?void 0:Ef.intensity]),{viewer:Vd}=$e$1(),{requestRender:Gd}=useContext(),uf=React.useRef(!1);return useSceneEvent("postRender",()=>{const xf=Vd==null?void 0:Vd.scene.primitives,Wa=(xf==null?void 0:xf.length)??0;if(!(!uf.current||!Ru))for(let af=0;af<Wa;af++){const Xd=xf==null?void 0:xf.get(af);Xd instanceof Cesium$1.Model&&Xd.id&&Xd.id.id===t&&(Xd.imageBasedLighting=Ru,uf.current=!1,Gd==null||Gd())}}),React.useEffect(()=>{Ru&&(uf.current=!0)},[Ru]),React.useEffect(()=>{Gd==null||Gd()}),(y?h:!h)||!n||!L||!ba?null:jsxRuntimeExports.jsx(EntityExt,{id:t,position:P,orientation:Sc,layerId:d==null?void 0:d.id,featureId:h==null?void 0:h.id,draggable:!0,properties:h==null?void 0:h.properties,availability:pu,children:jsxRuntimeExports.jsx(Qs$1,{uri:ba,scale:se,shadows:shadowMode(_i),customShader:pi===!1?NonPBRLightingShader:pi==="withTexture"?NonPBRWithTextureLightingShader:void 0,colorBlendMode:colorBlendMode(zi),colorBlendAmount:fa,color:ms,lightColor:Xs,runAnimations:mn,silhouetteColor:Nl,silhouetteSize:Ra?lt:void 0,heightReference:heightReference(z),maximumScale:mt,minimumPixelSize:kt,distanceDisplayCondition:yu})})}const config$7={};var jsxRuntime=jsxRuntimeExports,_jsx=jsxRuntime.jsx,newlineRegex=/(\r\n|\r|\n)/g,reactNl2br=function(t){return typeof t!="string"?t:t.split(newlineRegex).map(function(n,o){return n.match(newlineRegex)?_jsx("br",{key:o}):n})};const nl2br=getDefaultExportFromCjs(reactNl2br),cameraDuration=2,cameraExitDuration=2,fovDuration=.5,fovExitDuration=.5,photoDuration=1,photoExitDuration=.5,defaultFOV=Cesium$1.Math.toRadians(60),durations=[[cameraDuration*1e3,cameraExitDuration*1e3],[fovDuration*1e3,fovExitDuration*1e3],[photoDuration*1e3,photoExitDuration*1e3]];function useHooks$3({isSelected:t,camera:n}){const{selectionReason:o,flyTo:s,getCamera:c}=useContext(),[d,h,p]=useDelayedCount(durations),y=React.useRef(n);y.current=n;const S=React.useRef(!1);S.current=(o==null?void 0:o.reason)==="storytelling";const P=React.useRef();React.useEffect(()=>{var N,z,W;if((h??0)>1&&d===1&&P.current)s==null||s(P.current,{duration:cameraExitDuration,easing:Cesium$1.EasingFunction.CUBIC_IN_OUT}),P.current=void 0;else if((h??0)===0&&d===1&&y.current)P.current=c==null?void 0:c(),s==null||s({...y.current,fov:(N=P.current)==null?void 0:N.fov},{duration:cameraDuration,easing:Cesium$1.EasingFunction.CUBIC_IN_OUT});else if(d===2){const nt=(h??0)===1?(z=y.current)==null?void 0:z.fov:((W=P.current)==null?void 0:W.fov)??defaultFOV;s==null||s({fov:nt},{duration:(h??0)===1?fovDuration:fovExitDuration,easing:Cesium$1.EasingFunction.CUBIC_IN_OUT})}},[s,c,d,h]),React.useEffect(()=>{var N;if(!t&&S.current){const z=((N=P.current)==null?void 0:N.fov)??defaultFOV;s==null||s({fov:z},{duration:0})}p(!t,!t)},[s,p,t]);const L=useTransition(!!t&&d>=3,(h??0)>3?photoExitDuration*1e3:photoDuration*1e3,{mountOnEnter:!0,unmountOnExit:!0}),F=React.useCallback(()=>p(!0,!n),[n,p]);return{photoOverlayImageTransiton:L,exitPhotoOverlay:F}}const defaultImage="data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M5%202H19C20.6569%202%2022%203.34315%2022%205V14.9971C22%2014.999%2022%2015.001%2022%2015.0029V19C22%2020.6569%2020.6569%2022%2019%2022H5C3.34315%2022%202%2020.6569%202%2019V5C2%203.34315%203.34315%202%205%202ZM20%2012.5858V5C20%204.44772%2019.5523%204%2019%204H5C4.44772%204%204%204.44772%204%205V19C4%2019.4288%204.2699%2019.7946%204.64909%2019.9367L15.2929%209.29289C15.6834%208.90236%2016.3166%208.90236%2016.7071%209.29289L20%2012.5858ZM7.41421%2020L16%2011.4142L20%2015.4142V19C20%2019.5523%2019.5523%2020%2019%2020H7.41421ZM6%208.5C6%209.88071%207.11928%2011%208.5%2011C9.88071%2011%2011%209.88071%2011%208.5C11%207.11928%209.88071%206%208.5%206C7.11928%206%206%207.11928%206%208.5ZM8.5%209C8.77614%209%209%208.77614%209%208.5C9%208.22386%208.77614%208%208.5%208C8.22386%208%208%208.22386%208%208.5C8%208.77614%208.22386%209%208.5%209Z'%20fill='currentColor'/%3e%3c/svg%3e";function PhotoOverlay({id:t,isVisible:n,property:o,geometry:s,isSelected:c,layer:d,feature:h}){const p=React.useMemo(()=>(s==null?void 0:s.type)==="Point"?s.coordinates:o!=null&&o.location?[o.location.lng,o.location.lat,o.height??0]:void 0,[s==null?void 0:s.coordinates,s==null?void 0:s.type,o==null?void 0:o.height,o==null?void 0:o.location]),{show:y=!0,image:S,imageSize:P,imageHorizontalOrigin:L,imageVerticalOrigin:F,imageCrop:N,imageShadow:z,imageShadowColor:W,imageShadowBlur:nt,imageShadowPositionX:Pe,imageShadowPositionY:se,heightReference:mt,camera:kt,photoOverlayImage:mn,photoOverlayDescription:_i}=o??{},[zi]=useIcon({image:S||defaultImage,imageSize:S?P:void 0,crop:S?N:void 0,shadow:S?z:void 0,shadowColor:S?W:void 0,shadowBlur:S?nt:void 0,shadowOffsetX:S?Pe:void 0,shadowOffsetY:S?se:void 0}),Sa=React.useMemo(()=>p?Cesium$1.Cartesian3.fromDegrees(p[0],p[1],p[2]):void 0,[p]),{photoOverlayImageTransiton:fa,exitPhotoOverlay:La}=useHooks$3({camera:kt,isSelected:c&&!!mn}),Ra=React.useMemo(()=>toTimeInterval(h==null?void 0:h.interval),[h==null?void 0:h.interval]),ma=React.useMemo(()=>toDistanceDisplayCondition(o==null?void 0:o.near,o==null?void 0:o.far),[o==null?void 0:o.near,o==null?void 0:o.far]);return!n||!y||!Sa?null:jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(EntityExt,{id:t,position:Sa,layerId:d==null?void 0:d.id,featureId:h==null?void 0:h.id,draggable:!0,properties:h==null?void 0:h.properties,availability:Ra,children:jsxRuntimeExports.jsx(gs$1,{image:zi,horizontalOrigin:ho$1(L),verticalOrigin:vo$1(F),heightReference:heightReference(mt),distanceDisplayCondition:ma})}),fa==="unmounted"?null:jsxRuntimeExports.jsxs("div",{onClick:La,style:{position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",justifyContent:"center",alignItems:"center",transition:fa==="entering"||fa==="exiting"?`all ${fa==="exiting"?photoExitDuration:photoDuration}s ease`:void 0,opacity:fa==="entering"||fa==="entered"?1:0},children:[jsxRuntimeExports.jsx("img",{src:mn,style:PhotoStyle}),_i&&jsxRuntimeExports.jsx("p",{style:DescriptionStyle,children:nl2br(_i)})]})]})}const PhotoStyle={maxWidth:"95%",maxHeight:"80%",boxShadow:"0 0 15px rgba(0, 0, 0, 1)"},DescriptionStyle={position:"absolute",bottom:"10px",left:"20px",right:"20px",textAlign:"left",userSelect:"none",color:"rgba(0,0,0,.2)",fontFamily:"Noto Sans, hiragino sans, hiragino kaku gothic proN, -apple-system, BlinkMacSystem, sans-serif;",fontSize:"12px",fontWeight:"normal",lineHeight:"20px"},config$6={noLayer:!0};function isPrimitive(t){return t==null||/^[sbn]/.test(typeof t)}function checkDeps(t,n,o){var s="React."+o.replace(/CustomCompare/,"");(!(t instanceof Array)||t.length===0)&&console.warn(o+" should not be used with no dependencies. Use "+s+" instead."),t.every(isPrimitive)&&console.warn(o+" should not be used with dependencies that are all primitive values. Use "+s+" instead."),typeof n!="function"&&console.warn(o+" should be used with depsEqual callback for comparing deps list")}function useCustomCompareMemoize(t,n){var o=React.useRef(void 0),s=React.useRef(o.current);return(s.current===void 0||!n(s.current,t))&&(o.current=t),s.current=t,o.current}function useCustomCompareCallback(t,n,o){return process.env.NODE_ENV!=="production"&&checkDeps(n,o,"useCustomCompareCallback"),React.useCallback(t,useCustomCompareMemoize(n,o))}function useCustomCompareMemo(t,n,o){return process.env.NODE_ENV!=="production"&&checkDeps(n,o,"useCustomCompareMemo"),React.useMemo(t,useCustomCompareMemoize(n,o))}function Polygon({id:t,isVisible:n,property:o,geometry:s,layer:c,feature:d,disableWorkaround:h}){var lt;const p=React.useMemo(()=>(s==null?void 0:s.type)==="Polygon"?s.coordinates:o!=null&&o.polygon?o.polygon.map(pi=>pi.map(ba=>[ba.lng,ba.lat,ba.height])):void 0,[s==null?void 0:s.coordinates,s==null?void 0:s.type,o==null?void 0:o.polygon]),{requestRender:y}=useContext(),{show:S=!0,fill:P=!0,stroke:L,fillColor:F,strokeColor:N,strokeWidth:z=1,height:W,heightReference:nt,shadows:Pe,extrudedHeight:se,classificationType:mt,hideIndicator:kt}=o??{},mn=useCustomCompareMemo(()=>p!=null&&p[0]?new Cesium$1.PolygonHierarchy(p[0].map(pi=>Cesium$1.Cartesian3.fromDegrees(pi[0],pi[1],pi[2]??0)),p.slice(1).map(pi=>new Cesium$1.PolygonHierarchy(pi.map(ba=>Cesium$1.Cartesian3.fromDegrees(ba[0],ba[1],ba[2]??0))))):void 0,[p??[]],isEqual),_i=React.useMemo(()=>p&&L&&!h?p.flatMap(pi=>[pi.map(ba=>Cesium$1.Cartesian3.fromDegrees(ba[0],ba[1],ba[2]??W)),...se?[pi.map(ba=>Cesium$1.Cartesian3.fromDegrees(ba[0],ba[1],se)),...pi.slice(0,-1).map(ba=>[Cesium$1.Cartesian3.fromDegrees(ba[0],ba[1],W??0),Cesium$1.Cartesian3.fromDegrees(ba[0],ba[1],se)])]:[]]):[],[p,L,h,W,se]),zi=React.useMemo(()=>L?toColor$2(N):void 0,[L,N]),Sa=React.useRef(null),fa=getTag((lt=Sa.current)==null?void 0:lt.cesiumElement),La=React.useMemo(()=>{var pi,ba;return P?fa!=null&&fa.isFeatureSelected&&typeof((pi=c==null?void 0:c.polygon)==null?void 0:pi.selectedFeatureColor)=="string"?toColor$2((ba=c.polygon)==null?void 0:ba.selectedFeatureColor):toColor$2(F):void 0},[P,F,c==null?void 0:c.id,d==null?void 0:d.id,fa==null?void 0:fa.isFeatureSelected]),Ra=React.useMemo(()=>toTimeInterval(d==null?void 0:d.interval),[d==null?void 0:d.interval]),ma=React.useMemo(()=>toDistanceDisplayCondition(o==null?void 0:o.near,o==null?void 0:o.far),[o==null?void 0:o.near,o==null?void 0:o.far]),yt=React.useMemo(()=>se!==void 0?{extrudedHeight:se}:void 0,[se]);return React.useEffect(()=>{y==null||y()}),!n||!p||!S?null:jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(EntityExt,{id:t,layerId:c==null?void 0:c.id,featureId:d==null?void 0:d.id,ref:Sa,availability:Ra,properties:d==null?void 0:d.properties,hideIndicator:kt,children:jsxRuntimeExports.jsx(aa$1,{hierarchy:mn,fill:P,material:La,outline:!!zi,outlineColor:zi,outlineWidth:z,height:W,heightReference:heightReference(nt),shadows:shadowMode(Pe),distanceDisplayCondition:ma,classificationType:classificationType(mt),...yt})}),_i==null?void 0:_i.map((pi,ba)=>jsxRuntimeExports.jsx(Is$1,{id:`${t}-stroke${ba}`,children:jsxRuntimeExports.jsx(ua$1,{positions:pi,clampToGround:nt=="clamp"||nt=="relative",width:z,material:zi,shadows:shadowMode(Pe),distanceDisplayCondition:ma,classificationType:classificationType(mt)})},ba))]})}const config$5={noLayer:!0};function Polyline({id:t,isVisible:n,property:o,geometry:s,layer:c,feature:d}){var mn;const{show:h=!0}=o||{},p=React.useMemo(()=>(s==null?void 0:s.type)==="LineString"?s.coordinates:o!=null&&o.coordinates?o.coordinates.map(_i=>[_i.lng,_i.lat,_i.height]):void 0,[s==null?void 0:s.coordinates,s==null?void 0:s.type,o==null?void 0:o.coordinates]),{requestRender:y}=useContext(),{clampToGround:S,strokeColor:P,strokeWidth:L=1,shadows:F,classificationType:N,hideIndicator:z}=o??{},W=useCustomCompareMemo(()=>p==null?void 0:p.map(_i=>Cesium$1.Cartesian3.fromDegrees(_i[0],_i[1],_i[2])),[p??[]],isEqual),nt=React.useRef(null),Pe=getTag((mn=nt.current)==null?void 0:mn.cesiumElement),se=React.useMemo(()=>{var _i,zi;return Pe!=null&&Pe.isFeatureSelected&&typeof((_i=c==null?void 0:c.polyline)==null?void 0:_i.selectedFeatureColor)=="string"?toColor$2((zi=c.polyline)==null?void 0:zi.selectedFeatureColor):toColor$2(P)},[P,c,Pe==null?void 0:Pe.isFeatureSelected]),mt=React.useMemo(()=>toTimeInterval(d==null?void 0:d.interval),[d==null?void 0:d.interval]),kt=React.useMemo(()=>toDistanceDisplayCondition(o==null?void 0:o.near,o==null?void 0:o.far),[o==null?void 0:o.near,o==null?void 0:o.far]);return React.useEffect(()=>{y==null||y()}),!n||!p||!h?null:jsxRuntimeExports.jsx(EntityExt,{id:t,layerId:c==null?void 0:c.id,featureId:d==null?void 0:d.id,ref:nt,availability:mt,properties:d==null?void 0:d.properties,hideIndicator:z,children:jsxRuntimeExports.jsx(ua$1,{positions:W,width:L,material:se,clampToGround:S,shadows:shadowMode(F),distanceDisplayCondition:kt,classificationType:classificationType(N)})})}const config$4={noLayer:!0};var bd=Object.defineProperty,md=(t,n,o)=>n in t?bd(t,n,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[n]=o,U=(t,n,o)=>(md(t,typeof n!="symbol"?n+"":n,o),o),qi=(t,n,o)=>{if(!n.has(t))throw TypeError("Cannot "+o)},r=(t,n,o)=>(qi(t,n,"read from private field"),o?o.call(t):n.get(t)),E=(t,n,o)=>{if(n.has(t))throw TypeError("Cannot add the same private member more than once");n instanceof WeakSet?n.add(t):n.set(t,o)},H=(t,n,o,s)=>(qi(t,n,"write to private field"),n.set(t,o),o),ri=(t,n,o,s)=>({set _(c){H(t,n,c)},get _(){return r(t,n,s)}}),K=(t,n,o)=>(qi(t,n,"access private method"),o),yd=typeof global=="object"&&global&&global.Object===Object&&global;const sc=yd;var Rd=typeof self=="object"&&self&&self.Object===Object&&self,Wd=sc||Rd||Function("return this")();const Et=Wd;var fd=Et.Symbol;const Tt=fd;var ac=Object.prototype,Sd=ac.hasOwnProperty,Ld=ac.toString,Ee=Tt?Tt.toStringTag:void 0;function Fd(t){var n=Sd.call(t,Ee),o=t[Ee];try{t[Ee]=void 0;var s=!0}catch{}var c=Ld.call(t);return s&&(n?t[Ee]=o:delete t[Ee]),c}var Id=Object.prototype,xd=Id.toString;function Td(t){return xd.call(t)}var Ud="[object Null]",Yd="[object Undefined]",tn=Tt?Tt.toStringTag:void 0;function ze(t){return t==null?t===void 0?Yd:Ud:tn&&tn in Object(t)?Fd(t):Td(t)}function ce(t){return t!=null&&typeof t=="object"}var Jd="[object Symbol]";function Il(t){return typeof t=="symbol"||ce(t)&&ze(t)==Jd}function Cd(t,n){for(var o=-1,s=t==null?0:t.length,c=Array(s);++o<s;)c[o]=n(t[o],o,t);return c}var Kd=Array.isArray;const Pt=Kd;var en=Tt?Tt.prototype:void 0,ln=en?en.toString:void 0;function uc(t){if(typeof t=="string")return t;if(Pt(t))return Cd(t,uc)+"";if(Il(t))return ln?ln.call(t):"";var n=t+"";return n=="0"&&1/t==-1/0?"-0":n}function Ze(t){var n=typeof t;return t!=null&&(n=="object"||n=="function")}function Nd(t){return t}var Md="[object AsyncFunction]",kd="[object Function]",Hd="[object GeneratorFunction]",zd="[object Proxy]";function rc(t){if(!Ze(t))return!1;var n=ze(t);return n==kd||n==Hd||n==Md||n==zd}var Qd=Et["__core-js_shared__"];const $i=Qd;var nn=function(){var t=/[^.]+$/.exec($i&&$i.keys&&$i.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function Pd(t){return!!nn&&nn in t}var Ed=Function.prototype,wd=Ed.toString;function Ge(t){if(t!=null){try{return wd.call(t)}catch{}try{return t+""}catch{}}return""}var vd=/[\\^$.*+?()[\]{}|]/g,Bd=/^\[object .+?Constructor\]$/,jd=Function.prototype,Od=Object.prototype,Dd=jd.toString,Ad=Od.hasOwnProperty,_d=RegExp("^"+Dd.call(Ad).replace(vd,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function qd(t){if(!Ze(t)||Pd(t))return!1;var n=rc(t)?_d:Bd;return n.test(Ge(t))}function $d(t,n){return t==null?void 0:t[n]}function pe(t,n){var o=$d(t,n);return qd(o)?o:void 0}var to=pe(Et,"WeakMap");const ul=to;var cn=Object.create,eo=function(){function t(){}return function(n){if(!Ze(n))return{};if(cn)return cn(n);t.prototype=n;var o=new t;return t.prototype=void 0,o}}();const io=eo;function lo(t,n,o){switch(o.length){case 0:return t.call(n);case 1:return t.call(n,o[0]);case 2:return t.call(n,o[0],o[1]);case 3:return t.call(n,o[0],o[1],o[2])}return t.apply(n,o)}var co=800,oo=16,so=Date.now;function ao(t){var n=0,o=0;return function(){var s=so(),c=oo-(s-o);if(o=s,c>0){if(++n>=co)return arguments[0]}else n=0;return t.apply(void 0,arguments)}}function uo(t){return function(){return t}}var ro=function(){try{var t=pe(Object,"defineProperty");return t({},"",{}),t}catch{}}();const xi=ro;var ho=xi?function(t,n){return xi(t,"toString",{configurable:!0,enumerable:!1,value:uo(n),writable:!0})}:Nd;const bo=ho;var mo=ao(bo);const Zo=mo;function Vo(t,n){for(var o=-1,s=t==null?0:t.length;++o<s&&n(t[o],o,t)!==!1;);return t}var Xo=9007199254740991,Go=/^(?:0|[1-9]\d*)$/;function xl(t,n){var o=typeof t;return n=n??Xo,!!n&&(o=="number"||o!="symbol"&&Go.test(t))&&t>-1&&t%1==0&&t<n}function hc(t,n,o){n=="__proto__"&&xi?xi(t,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):t[n]=o}function Tl(t,n){return t===n||t!==t&&n!==n}var po=Object.prototype,yo=po.hasOwnProperty;function Ul(t,n,o){var s=t[n];(!(yo.call(t,n)&&Tl(s,o))||o===void 0&&!(n in t))&&hc(t,n,o)}var dn=Math.max;function Ro(t,n,o){return n=dn(n===void 0?t.length-1:n,0),function(){for(var s=arguments,c=-1,d=dn(s.length-n,0),h=Array(d);++c<d;)h[c]=s[n+c];c=-1;for(var p=Array(n+1);++c<n;)p[c]=s[c];return p[n]=o(h),lo(t,this,p)}}var Wo=9007199254740991;function Yl(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Wo}function bc(t){return t!=null&&Yl(t.length)&&!rc(t)}var fo=Object.prototype;function Jl(t){var n=t&&t.constructor,o=typeof n=="function"&&n.prototype||fo;return t===o}function So(t,n){for(var o=-1,s=Array(t);++o<t;)s[o]=n(o);return s}var Lo="[object Arguments]";function on$1(t){return ce(t)&&ze(t)==Lo}var mc=Object.prototype,Fo=mc.hasOwnProperty,Io=mc.propertyIsEnumerable,xo=on$1(function(){return arguments}())?on$1:function(t){return ce(t)&&Fo.call(t,"callee")&&!Io.call(t,"callee")};const Cl=xo;function To(){return!1}var Zc=typeof exports=="object"&&exports&&!exports.nodeType&&exports,sn=Zc&&typeof module=="object"&&module&&!module.nodeType&&module,Uo=sn&&sn.exports===Zc,an=Uo?Et.Buffer:void 0,Yo=an?an.isBuffer:void 0,Jo=Yo||To;const Ti=Jo;var Co="[object Arguments]",Ko="[object Array]",go="[object Boolean]",No="[object Date]",Mo="[object Error]",ko="[object Function]",Ho="[object Map]",zo="[object Number]",Qo="[object Object]",Po="[object RegExp]",Eo="[object Set]",wo="[object String]",vo="[object WeakMap]",Bo="[object ArrayBuffer]",jo="[object DataView]",Oo="[object Float32Array]",Do="[object Float64Array]",Ao="[object Int8Array]",_o="[object Int16Array]",qo="[object Int32Array]",$o="[object Uint8Array]",ts="[object Uint8ClampedArray]",es="[object Uint16Array]",is="[object Uint32Array]",et={};et[Oo]=et[Do]=et[Ao]=et[_o]=et[qo]=et[$o]=et[ts]=et[es]=et[is]=!0,et[Co]=et[Ko]=et[Bo]=et[go]=et[jo]=et[No]=et[Mo]=et[ko]=et[Ho]=et[zo]=et[Qo]=et[Po]=et[Eo]=et[wo]=et[vo]=!1;function ls(t){return ce(t)&&Yl(t.length)&&!!et[ze(t)]}function Kl(t){return function(n){return t(n)}}var Vc=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Oe=Vc&&typeof module=="object"&&module&&!module.nodeType&&module,ns=Oe&&Oe.exports===Vc,tl=ns&&sc.process,cs=function(){try{var t=Oe&&Oe.require&&Oe.require("util").types;return t||tl&&tl.binding&&tl.binding("util")}catch{}}();const Ke=cs;var un=Ke&&Ke.isTypedArray,ds=un?Kl(un):ls;const Xc=ds;var os=Object.prototype,ss=os.hasOwnProperty;function Gc(t,n){var o=Pt(t),s=!o&&Cl(t),c=!o&&!s&&Ti(t),d=!o&&!s&&!c&&Xc(t),h=o||s||c||d,p=h?So(t.length,String):[],y=p.length;for(var S in t)ss.call(t,S)&&!(h&&(S=="length"||c&&(S=="offset"||S=="parent")||d&&(S=="buffer"||S=="byteLength"||S=="byteOffset")||xl(S,y)))&&p.push(S);return p}function pc(t,n){return function(o){return t(n(o))}}var as=pc(Object.keys,Object);const us=as;var rs=Object.prototype,hs=rs.hasOwnProperty;function bs(t){if(!Jl(t))return us(t);var n=[];for(var o in Object(t))hs.call(t,o)&&o!="constructor"&&n.push(o);return n}function gl(t){return bc(t)?Gc(t):bs(t)}var Gs=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ps=/^\w*$/;function ys(t,n){if(Pt(t))return!1;var o=typeof t;return o=="number"||o=="symbol"||o=="boolean"||t==null||Il(t)?!0:ps.test(t)||!Gs.test(t)||n!=null&&t in Object(n)}var Rs=pe(Object,"create");const Ae=Rs;function Ws(){this.__data__=Ae?Ae(null):{},this.size=0}function fs(t){var n=this.has(t)&&delete this.__data__[t];return this.size-=n?1:0,n}var Ss="__lodash_hash_undefined__",Ls=Object.prototype,Fs=Ls.hasOwnProperty;function Is(t){var n=this.__data__;if(Ae){var o=n[t];return o===Ss?void 0:o}return Fs.call(n,t)?n[t]:void 0}var xs=Object.prototype,Ts=xs.hasOwnProperty;function Us(t){var n=this.__data__;return Ae?n[t]!==void 0:Ts.call(n,t)}var Ys="__lodash_hash_undefined__";function Js(t,n){var o=this.__data__;return this.size+=this.has(t)?0:1,o[t]=Ae&&n===void 0?Ys:n,this}function Ve(t){var n=-1,o=t==null?0:t.length;for(this.clear();++n<o;){var s=t[n];this.set(s[0],s[1])}}Ve.prototype.clear=Ws,Ve.prototype.delete=fs,Ve.prototype.get=Is,Ve.prototype.has=Us,Ve.prototype.set=Js;function Cs(){this.__data__=[],this.size=0}function Qi(t,n){for(var o=t.length;o--;)if(Tl(t[o][0],n))return o;return-1}var Ks=Array.prototype,gs=Ks.splice;function Ns(t){var n=this.__data__,o=Qi(n,t);if(o<0)return!1;var s=n.length-1;return o==s?n.pop():gs.call(n,o,1),--this.size,!0}function Ms(t){var n=this.__data__,o=Qi(n,t);return o<0?void 0:n[o][1]}function ks(t){return Qi(this.__data__,t)>-1}function Hs(t,n){var o=this.__data__,s=Qi(o,t);return s<0?(++this.size,o.push([t,n])):o[s][1]=n,this}function At(t){var n=-1,o=t==null?0:t.length;for(this.clear();++n<o;){var s=t[n];this.set(s[0],s[1])}}At.prototype.clear=Cs,At.prototype.delete=Ns,At.prototype.get=Ms,At.prototype.has=ks,At.prototype.set=Hs;var zs=pe(Et,"Map");const _e=zs;function Qs(){this.size=0,this.__data__={hash:new Ve,map:new(_e||At),string:new Ve}}function Ps(t){var n=typeof t;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?t!=="__proto__":t===null}function Pi(t,n){var o=t.__data__;return Ps(n)?o[typeof n=="string"?"string":"hash"]:o.map}function Es(t){var n=Pi(this,t).delete(t);return this.size-=n?1:0,n}function ws(t){return Pi(this,t).get(t)}function vs(t){return Pi(this,t).has(t)}function Bs(t,n){var o=Pi(this,t),s=o.size;return o.set(t,n),this.size+=o.size==s?0:1,this}function _t(t){var n=-1,o=t==null?0:t.length;for(this.clear();++n<o;){var s=t[n];this.set(s[0],s[1])}}_t.prototype.clear=Qs,_t.prototype.delete=Es,_t.prototype.get=ws,_t.prototype.has=vs,_t.prototype.set=Bs;var js="Expected a function";function Ml(t,n){if(typeof t!="function"||n!=null&&typeof n!="function")throw new TypeError(js);var o=function(){var s=arguments,c=n?n.apply(this,s):s[0],d=o.cache;if(d.has(c))return d.get(c);var h=t.apply(this,s);return o.cache=d.set(c,h)||d,h};return o.cache=new(Ml.Cache||_t),o}Ml.Cache=_t;var Os=500;function Ds(t){var n=Ml(t,function(s){return o.size===Os&&o.clear(),s}),o=n.cache;return n}var As=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,_s=/\\(\\)?/g,qs=Ds(function(t){var n=[];return t.charCodeAt(0)===46&&n.push(""),t.replace(As,function(o,s,c,d){n.push(c?d.replace(_s,"$1"):s||o)}),n});const $s=qs;function ta(t){return t==null?"":uc(t)}function Ei(t,n){return Pt(t)?t:ys(t,n)?[t]:$s(ta(t))}function kl(t){if(typeof t=="string"||Il(t))return t;var n=t+"";return n=="0"&&1/t==-1/0?"-0":n}function ia(t,n){n=Ei(n,t);for(var o=0,s=n.length;t!=null&&o<s;)t=t[kl(n[o++])];return o&&o==s?t:void 0}function Hl(t,n){for(var o=-1,s=n.length,c=t.length;++o<s;)t[c+o]=n[o];return t}var rn=Tt?Tt.isConcatSpreadable:void 0;function la(t){return Pt(t)||Cl(t)||!!(rn&&t&&t[rn])}function yc(t,n,o,s,c){var d=-1,h=t.length;for(o||(o=la),c||(c=[]);++d<h;){var p=t[d];o(p)?Hl(c,p):c[c.length]=p}return c}function na(t){var n=t==null?0:t.length;return n?yc(t):[]}function ca(t){return Zo(Ro(t,void 0,na),t+"")}var da=pc(Object.getPrototypeOf,Object);const Rc=da;function oa(){this.__data__=new At,this.size=0}function sa(t){var n=this.__data__,o=n.delete(t);return this.size=n.size,o}function aa(t){return this.__data__.get(t)}function ua(t){return this.__data__.has(t)}var ra=200;function ha(t,n){var o=this.__data__;if(o instanceof At){var s=o.__data__;if(!_e||s.length<ra-1)return s.push([t,n]),this.size=++o.size,this;o=this.__data__=new _t(s)}return o.set(t,n),this.size=o.size,this}function jt(t){var n=this.__data__=new At(t);this.size=n.size}jt.prototype.clear=oa,jt.prototype.delete=sa,jt.prototype.get=aa,jt.prototype.has=ua,jt.prototype.set=ha;var Wc=typeof exports=="object"&&exports&&!exports.nodeType&&exports,hn=Wc&&typeof module=="object"&&module&&!module.nodeType&&module,Za=hn&&hn.exports===Wc,bn=Za?Et.Buffer:void 0;bn&&bn.allocUnsafe;function Va(t,n){return t.slice()}function Xa(t,n){for(var o=-1,s=t==null?0:t.length,c=0,d=[];++o<s;){var h=t[o];n(h,o,t)&&(d[c++]=h)}return d}function fc(){return[]}var Ga=Object.prototype,pa=Ga.propertyIsEnumerable,Zn=Object.getOwnPropertySymbols,ya=Zn?function(t){return t==null?[]:(t=Object(t),Xa(Zn(t),function(n){return pa.call(t,n)}))}:fc;const zl=ya;function Lc(t,n,o){var s=n(t);return Pt(t)?s:Hl(s,o(t))}function rl(t){return Lc(t,gl,zl)}var Fa=pe(Et,"DataView");const hl=Fa;var Ia=pe(Et,"Promise");const bl=Ia;var xa=pe(Et,"Set");const ml=xa;var Vn="[object Map]",Ta="[object Object]",Xn="[object Promise]",Gn="[object Set]",pn="[object WeakMap]",yn="[object DataView]",Ua=Ge(hl),Ya=Ge(_e),Ja=Ge(bl),Ca=Ge(ml),Ka=Ge(ul),ue=ze;(hl&&ue(new hl(new ArrayBuffer(1)))!=yn||_e&&ue(new _e)!=Vn||bl&&ue(bl.resolve())!=Xn||ml&&ue(new ml)!=Gn||ul&&ue(new ul)!=pn)&&(ue=function(t){var n=ze(t),o=n==Ta?t.constructor:void 0,s=o?Ge(o):"";if(s)switch(s){case Ua:return yn;case Ya:return Vn;case Ja:return Xn;case Ca:return Gn;case Ka:return pn}return n});const qe=ue;var ga=Object.prototype,Na=ga.hasOwnProperty;function Ma(t){var n=t.length,o=new t.constructor(n);return n&&typeof t[0]=="string"&&Na.call(t,"index")&&(o.index=t.index,o.input=t.input),o}var ka=Et.Uint8Array;const Ui=ka;function Ql(t){var n=new t.constructor(t.byteLength);return new Ui(n).set(new Ui(t)),n}function Ha(t,n){var o=Ql(t.buffer);return new t.constructor(o,t.byteOffset,t.byteLength)}var za=/\w*$/;function Qa(t){var n=new t.constructor(t.source,za.exec(t));return n.lastIndex=t.lastIndex,n}var Rn=Tt?Tt.prototype:void 0,Wn=Rn?Rn.valueOf:void 0;function Pa(t){return Wn?Object(Wn.call(t)):{}}function Ea(t,n){var o=Ql(t.buffer);return new t.constructor(o,t.byteOffset,t.length)}var wa="[object Boolean]",va="[object Date]",Ba="[object Map]",ja="[object Number]",Oa="[object RegExp]",Da="[object Set]",Aa="[object String]",_a="[object Symbol]",qa="[object ArrayBuffer]",$a="[object DataView]",tu="[object Float32Array]",eu="[object Float64Array]",iu="[object Int8Array]",lu="[object Int16Array]",nu="[object Int32Array]",cu="[object Uint8Array]",du="[object Uint8ClampedArray]",ou="[object Uint16Array]",su="[object Uint32Array]";function au(t,n,o){var s=t.constructor;switch(n){case qa:return Ql(t);case wa:case va:return new s(+t);case $a:return Ha(t);case tu:case eu:case iu:case lu:case nu:case cu:case du:case ou:case su:return Ea(t);case Ba:return new s;case ja:case Aa:return new s(t);case Oa:return Qa(t);case Da:return new s;case _a:return Pa(t)}}function uu(t){return typeof t.constructor=="function"&&!Jl(t)?io(Rc(t)):{}}var ru="[object Map]";function hu(t){return ce(t)&&qe(t)==ru}var fn=Ke&&Ke.isMap,bu=fn?Kl(fn):hu;const mu=bu;var Zu="[object Set]";function Vu(t){return ce(t)&&qe(t)==Zu}var Sn=Ke&&Ke.isSet,Xu=Sn?Kl(Sn):Vu;const Gu=Xu;var Fc="[object Arguments]",Wu="[object Array]",fu="[object Boolean]",Su="[object Date]",Lu="[object Error]",Ic="[object Function]",Fu="[object GeneratorFunction]",Iu="[object Map]",xu="[object Number]",xc="[object Object]",Tu="[object RegExp]",Uu="[object Set]",Yu="[object String]",Ju="[object Symbol]",Cu="[object WeakMap]",Ku="[object ArrayBuffer]",gu="[object DataView]",Nu="[object Float32Array]",Mu="[object Float64Array]",ku="[object Int8Array]",Hu="[object Int16Array]",zu="[object Int32Array]",Qu="[object Uint8Array]",Pu="[object Uint8ClampedArray]",Eu="[object Uint16Array]",wu="[object Uint32Array]",q={};q[Fc]=q[Wu]=q[Ku]=q[gu]=q[fu]=q[Su]=q[Nu]=q[Mu]=q[ku]=q[Hu]=q[zu]=q[Iu]=q[xu]=q[xc]=q[Tu]=q[Uu]=q[Yu]=q[Ju]=q[Qu]=q[Pu]=q[Eu]=q[wu]=!0,q[Lu]=q[Ic]=q[Cu]=!1;function yi(t,n,o,s,c,d){var h;if(h!==void 0)return h;if(!Ze(t))return t;var p=Pt(t);if(p)h=Ma(t);else{var y=qe(t),S=y==Ic||y==Fu;if(Ti(t))return Va(t);if(y==xc||y==Fc||S&&!c)h=S?{}:uu(t);else{if(!q[y])return c?t:{};h=au(t,y)}}d||(d=new jt);var P=d.get(t);if(P)return P;d.set(t,h),Gu(t)?t.forEach(function(N){h.add(yi(N,n,o,N,t,d))}):mu(t)&&t.forEach(function(N,z){h.set(z,yi(N,n,o,z,t,d))});var L=rl,F=p?void 0:L(t);return Vo(F||t,function(N,z){F&&(z=N,N=t[z]),Ul(h,z,yi(N,n,o,z,t,d))}),h}var vu=1,Bu=4;function ju(t){return yi(t,vu|Bu)}var Ou="__lodash_hash_undefined__";function Du(t){return this.__data__.set(t,Ou),this}function Au(t){return this.__data__.has(t)}function Yi(t){var n=-1,o=t==null?0:t.length;for(this.__data__=new _t;++n<o;)this.add(t[n])}Yi.prototype.add=Yi.prototype.push=Du,Yi.prototype.has=Au;function _u(t,n){for(var o=-1,s=t==null?0:t.length;++o<s;)if(n(t[o],o,t))return!0;return!1}function qu(t,n){return t.has(n)}var $u=1,t0=2;function Tc(t,n,o,s,c,d){var h=o&$u,p=t.length,y=n.length;if(p!=y&&!(h&&y>p))return!1;var S=d.get(t),P=d.get(n);if(S&&P)return S==n&&P==t;var L=-1,F=!0,N=o&t0?new Yi:void 0;for(d.set(t,n),d.set(n,t);++L<p;){var z=t[L],W=n[L];if(s)var nt=h?s(W,z,L,n,t,d):s(z,W,L,t,n,d);if(nt!==void 0){if(nt)continue;F=!1;break}if(N){if(!_u(n,function(Pe,se){if(!qu(N,se)&&(z===Pe||c(z,Pe,o,s,d)))return N.push(se)})){F=!1;break}}else if(!(z===W||c(z,W,o,s,d))){F=!1;break}}return d.delete(t),d.delete(n),F}function e0(t){var n=-1,o=Array(t.size);return t.forEach(function(s,c){o[++n]=[c,s]}),o}function i0(t){var n=-1,o=Array(t.size);return t.forEach(function(s){o[++n]=s}),o}var l0=1,n0=2,c0="[object Boolean]",d0="[object Date]",o0="[object Error]",s0="[object Map]",a0="[object Number]",u0="[object RegExp]",r0="[object Set]",h0="[object String]",b0="[object Symbol]",m0="[object ArrayBuffer]",Z0="[object DataView]",Ln=Tt?Tt.prototype:void 0,el=Ln?Ln.valueOf:void 0;function V0(t,n,o,s,c,d,h){switch(o){case Z0:if(t.byteLength!=n.byteLength||t.byteOffset!=n.byteOffset)return!1;t=t.buffer,n=n.buffer;case m0:return!(t.byteLength!=n.byteLength||!d(new Ui(t),new Ui(n)));case c0:case d0:case a0:return Tl(+t,+n);case o0:return t.name==n.name&&t.message==n.message;case u0:case h0:return t==n+"";case s0:var p=e0;case r0:var y=s&l0;if(p||(p=i0),t.size!=n.size&&!y)return!1;var S=h.get(t);if(S)return S==n;s|=n0,h.set(t,n);var P=Tc(p(t),p(n),s,c,d,h);return h.delete(t),P;case b0:if(el)return el.call(t)==el.call(n)}return!1}var X0=1,G0=Object.prototype,p0=G0.hasOwnProperty;function y0(t,n,o,s,c,d){var h=o&X0,p=rl(t),y=p.length,S=rl(n),P=S.length;if(y!=P&&!h)return!1;for(var L=y;L--;){var F=p[L];if(!(h?F in n:p0.call(n,F)))return!1}var N=d.get(t),z=d.get(n);if(N&&z)return N==n&&z==t;var W=!0;d.set(t,n),d.set(n,t);for(var nt=h;++L<y;){F=p[L];var Pe=t[F],se=n[F];if(s)var mt=h?s(se,Pe,F,n,t,d):s(Pe,se,F,t,n,d);if(!(mt===void 0?Pe===se||c(Pe,se,o,s,d):mt)){W=!1;break}nt||(nt=F=="constructor")}if(W&&!nt){var kt=t.constructor,mn=n.constructor;kt!=mn&&"constructor"in t&&"constructor"in n&&!(typeof kt=="function"&&kt instanceof kt&&typeof mn=="function"&&mn instanceof mn)&&(W=!1)}return d.delete(t),d.delete(n),W}var R0=1,Fn="[object Arguments]",In="[object Array]",hi="[object Object]",W0=Object.prototype,xn=W0.hasOwnProperty;function f0(t,n,o,s,c,d){var h=Pt(t),p=Pt(n),y=h?In:qe(t),S=p?In:qe(n);y=y==Fn?hi:y,S=S==Fn?hi:S;var P=y==hi,L=S==hi,F=y==S;if(F&&Ti(t)){if(!Ti(n))return!1;h=!0,P=!1}if(F&&!P)return d||(d=new jt),h||Xc(t)?Tc(t,n,o,s,c,d):V0(t,n,y,o,s,c,d);if(!(o&R0)){var N=P&&xn.call(t,"__wrapped__"),z=L&&xn.call(n,"__wrapped__");if(N||z){var W=N?t.value():t,nt=z?n.value():n;return d||(d=new jt),c(W,nt,o,s,d)}}return F?(d||(d=new jt),y0(t,n,o,s,c,d)):!1}function Uc(t,n,o,s,c){return t===n?!0:t==null||n==null||!ce(t)&&!ce(n)?t!==t&&n!==n:f0(t,n,o,s,Uc,c)}function S0(t,n){return t!=null&&n in Object(t)}function L0(t,n,o){n=Ei(n,t);for(var s=-1,c=n.length,d=!1;++s<c;){var h=kl(n[s]);if(!(d=t!=null&&o(t,h)))break;t=t[h]}return d||++s!=c?d:(c=t==null?0:t.length,!!c&&Yl(c)&&xl(h,c)&&(Pt(t)||Cl(t)))}function F0(t,n){return t!=null&&L0(t,n,S0)}function I0(t,n){return Uc(t,n)}function x0(t,n,o,s){if(!Ze(t))return t;n=Ei(n,t);for(var c=-1,d=n.length,h=d-1,p=t;p!=null&&++c<d;){var y=kl(n[c]),S=o;if(y==="__proto__"||y==="constructor"||y==="prototype")return t;if(c!=h){var P=p[y];S=void 0,S===void 0&&(S=Ze(P)?P:xl(n[c+1])?[]:{})}Ul(p,y,S),p=p[y]}return t}function T0(t,n,o){for(var s=-1,c=n.length,d={};++s<c;){var h=n[s],p=ia(t,h);o(p,h)&&x0(d,Ei(h,t),p)}return d}function U0(t,n){return T0(t,n,function(o,s){return F0(t,s)})}var Y0=ca(function(t,n){return t==null?{}:U0(t,n)});const J0=Y0;function C(t,n){return t??n}C.EMPTY_OBJECT=Object.freeze({});function X(t){return t!=null}function Y(t){this.name="DeveloperError",this.message=t;let n;try{throw new Error}catch(o){n=o.stack}this.stack=n}X(Object.create)&&(Y.prototype=Object.create(Error.prototype),Y.prototype.constructor=Y),Y.prototype.toString=function(){let t=`${this.name}: ${this.message}`;return X(this.stack)&&(t+=`
|
|
6096
6096
|
${this.stack.toString()}`),t},Y.throwInstantiationError=function(){throw new Y("This function defines an interface and should not be called directly.")};const dt={};dt.typeOf={};function C0(t){return`${t} is required, actual value was undefined`}function Qe(t,n,o){return`Expected ${o} to be typeof ${n}, actual typeof was ${t}`}dt.defined=function(t,n){if(!X(n))throw new Y(C0(t))},dt.typeOf.func=function(t,n){if(typeof n!="function")throw new Y(Qe(typeof n,"function",t))},dt.typeOf.string=function(t,n){if(typeof n!="string")throw new Y(Qe(typeof n,"string",t))},dt.typeOf.number=function(t,n){if(typeof n!="number")throw new Y(Qe(typeof n,"number",t))},dt.typeOf.number.lessThan=function(t,n,o){if(dt.typeOf.number(t,n),n>=o)throw new Y(`Expected ${t} to be less than ${o}, actual value was ${n}`)},dt.typeOf.number.lessThanOrEquals=function(t,n,o){if(dt.typeOf.number(t,n),n>o)throw new Y(`Expected ${t} to be less than or equal to ${o}, actual value was ${n}`)},dt.typeOf.number.greaterThan=function(t,n,o){if(dt.typeOf.number(t,n),n<=o)throw new Y(`Expected ${t} to be greater than ${o}, actual value was ${n}`)},dt.typeOf.number.greaterThanOrEquals=function(t,n,o){if(dt.typeOf.number(t,n),n<o)throw new Y(`Expected ${t} to be greater than or equal to ${o}, actual value was ${n}`)},dt.typeOf.object=function(t,n){if(typeof n!="object")throw new Y(Qe(typeof n,"object",t))},dt.typeOf.bool=function(t,n){if(typeof n!="boolean")throw new Y(Qe(typeof n,"boolean",t))},dt.typeOf.bigint=function(t,n){if(typeof n!="bigint")throw new Y(Qe(typeof n,"bigint",t))},dt.typeOf.number.equals=function(t,n,o,s){if(dt.typeOf.number(t,o),dt.typeOf.number(n,s),o!==s)throw new Y(`${t} must be equal to ${n}, the actual values are ${o} and ${s}`)};const b=dt;var rt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function K0(t){return t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function g0(t){if(t.__esModule)return t;var n=t.default;if(typeof n=="function"){var o=function s(){if(this instanceof s){var c=[null];c.push.apply(c,arguments);var d=Function.bind.apply(n,c);return new d}return n.apply(this,arguments)};o.prototype=n.prototype}else o={};return Object.defineProperty(o,"__esModule",{value:!0}),Object.keys(t).forEach(function(s){var c=Object.getOwnPropertyDescriptor(t,s);Object.defineProperty(o,s,c.get?c:{enumerable:!0,get:function(){return t[s]}})}),o}var qt=function(t){t==null&&(t=new Date().getTime()),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,t.constructor==Array?this.init_by_array(t,t.length):this.init_seed(t)};qt.prototype.init_seed=function(t){for(this.mt[0]=t>>>0,this.mti=1;this.mti<this.N;this.mti++){var t=this.mt[this.mti-1]^this.mt[this.mti-1]>>>30;this.mt[this.mti]=(((t&4294901760)>>>16)*1812433253<<16)+(t&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0}},qt.prototype.init_by_array=function(t,n){var o,s,c;for(this.init_seed(19650218),o=1,s=0,c=this.N>n?this.N:n;c;c--){var d=this.mt[o-1]^this.mt[o-1]>>>30;this.mt[o]=(this.mt[o]^(((d&4294901760)>>>16)*1664525<<16)+(d&65535)*1664525)+t[s]+s,this.mt[o]>>>=0,o++,s++,o>=this.N&&(this.mt[0]=this.mt[this.N-1],o=1),s>=n&&(s=0)}for(c=this.N-1;c;c--){var d=this.mt[o-1]^this.mt[o-1]>>>30;this.mt[o]=(this.mt[o]^(((d&4294901760)>>>16)*1566083941<<16)+(d&65535)*1566083941)-o,this.mt[o]>>>=0,o++,o>=this.N&&(this.mt[0]=this.mt[this.N-1],o=1)}this.mt[0]=2147483648},qt.prototype.random_int=function(){var t,n=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var o;for(this.mti==this.N+1&&this.init_seed(5489),o=0;o<this.N-this.M;o++)t=this.mt[o]&this.UPPER_MASK|this.mt[o+1]&this.LOWER_MASK,this.mt[o]=this.mt[o+this.M]^t>>>1^n[t&1];for(;o<this.N-1;o++)t=this.mt[o]&this.UPPER_MASK|this.mt[o+1]&this.LOWER_MASK,this.mt[o]=this.mt[o+(this.M-this.N)]^t>>>1^n[t&1];t=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^t>>>1^n[t&1],this.mti=0}return t=this.mt[this.mti++],t^=t>>>11,t^=t<<7&2636928640,t^=t<<15&4022730752,t^=t>>>18,t>>>0},qt.prototype.random_int31=function(){return this.random_int()>>>1},qt.prototype.random_incl=function(){return this.random_int()*(1/4294967295)},qt.prototype.random=function(){return this.random_int()*(1/4294967296)},qt.prototype.random_excl=function(){return(this.random_int()+.5)*(1/4294967296)},qt.prototype.random_long=function(){var t=this.random_int()>>>5,n=this.random_int()>>>6;return(t*67108864+n)*(1/9007199254740992)};var Yc=qt;const G={};G.EPSILON1=.1,G.EPSILON2=.01,G.EPSILON3=.001,G.EPSILON4=1e-4,G.EPSILON5=1e-5,G.EPSILON6=1e-6,G.EPSILON7=1e-7,G.EPSILON8=1e-8,G.EPSILON9=1e-9,G.EPSILON10=1e-10,G.EPSILON11=1e-11,G.EPSILON12=1e-12,G.EPSILON13=1e-13,G.EPSILON14=1e-14,G.EPSILON15=1e-15,G.EPSILON16=1e-16,G.EPSILON17=1e-17,G.EPSILON18=1e-18,G.EPSILON19=1e-19,G.EPSILON20=1e-20,G.EPSILON21=1e-21,G.GRAVITATIONALPARAMETER=3986004418e5,G.SOLAR_RADIUS=6955e5,G.LUNAR_RADIUS=1737400,G.SIXTY_FOUR_KILOBYTES=64*1024,G.FOUR_GIGABYTES=4*1024*1024*1024,G.sign=C(Math.sign,function(t){return t=+t,t===0||t!==t?t:t>0?1:-1}),G.signNotZero=function(t){return t<0?-1:1},G.toSNorm=function(t,n){return n=C(n,255),Math.round((G.clamp(t,-1,1)*.5+.5)*n)},G.fromSNorm=function(t,n){return n=C(n,255),G.clamp(t,0,n)/n*2-1},G.normalize=function(t,n,o){return o=Math.max(o-n,0),o===0?0:G.clamp((t-n)/o,0,1)},G.sinh=C(Math.sinh,function(t){return(Math.exp(t)-Math.exp(-t))/2}),G.cosh=C(Math.cosh,function(t){return(Math.exp(t)+Math.exp(-t))/2}),G.lerp=function(t,n,o){return(1-o)*t+o*n},G.PI=Math.PI,G.ONE_OVER_PI=1/Math.PI,G.PI_OVER_TWO=Math.PI/2,G.PI_OVER_THREE=Math.PI/3,G.PI_OVER_FOUR=Math.PI/4,G.PI_OVER_SIX=Math.PI/6,G.THREE_PI_OVER_TWO=3*Math.PI/2,G.TWO_PI=2*Math.PI,G.ONE_OVER_TWO_PI=1/(2*Math.PI),G.RADIANS_PER_DEGREE=Math.PI/180,G.DEGREES_PER_RADIAN=180/Math.PI,G.RADIANS_PER_ARCSECOND=G.RADIANS_PER_DEGREE/3600,G.toRadians=function(t){if(!X(t))throw new Y("degrees is required.");return t*G.RADIANS_PER_DEGREE},G.toDegrees=function(t){if(!X(t))throw new Y("radians is required.");return t*G.DEGREES_PER_RADIAN},G.convertLongitudeRange=function(t){if(!X(t))throw new Y("angle is required.");const n=G.TWO_PI,o=t-Math.floor(t/n)*n;return o<-Math.PI?o+n:o>=Math.PI?o-n:o},G.clampToLatitudeRange=function(t){if(!X(t))throw new Y("angle is required.");return G.clamp(t,-1*G.PI_OVER_TWO,G.PI_OVER_TWO)},G.negativePiToPi=function(t){if(!X(t))throw new Y("angle is required.");return t>=-G.PI&&t<=G.PI?t:G.zeroToTwoPi(t+G.PI)-G.PI},G.zeroToTwoPi=function(t){if(!X(t))throw new Y("angle is required.");if(t>=0&&t<=G.TWO_PI)return t;const n=G.mod(t,G.TWO_PI);return Math.abs(n)<G.EPSILON14&&Math.abs(t)>G.EPSILON14?G.TWO_PI:n},G.mod=function(t,n){if(!X(t))throw new Y("m is required.");if(!X(n))throw new Y("n is required.");if(n===0)throw new Y("divisor cannot be 0.");return G.sign(t)===G.sign(n)&&Math.abs(t)<Math.abs(n)?t:(t%n+n)%n},G.equalsEpsilon=function(t,n,o,s){if(!X(t))throw new Y("left is required.");if(!X(n))throw new Y("right is required.");o=C(o,0),s=C(s,o);const c=Math.abs(t-n);return c<=s||c<=o*Math.max(Math.abs(t),Math.abs(n))},G.lessThan=function(t,n,o){if(!X(t))throw new Y("first is required.");if(!X(n))throw new Y("second is required.");if(!X(o))throw new Y("absoluteEpsilon is required.");return t-n<-o},G.lessThanOrEquals=function(t,n,o){if(!X(t))throw new Y("first is required.");if(!X(n))throw new Y("second is required.");if(!X(o))throw new Y("absoluteEpsilon is required.");return t-n<o},G.greaterThan=function(t,n,o){if(!X(t))throw new Y("first is required.");if(!X(n))throw new Y("second is required.");if(!X(o))throw new Y("absoluteEpsilon is required.");return t-n>o},G.greaterThanOrEquals=function(t,n,o){if(!X(t))throw new Y("first is required.");if(!X(n))throw new Y("second is required.");if(!X(o))throw new Y("absoluteEpsilon is required.");return t-n>-o};const bi=[1];G.factorial=function(t){if(typeof t!="number"||t<0)throw new Y("A number greater than or equal to 0 is required.");const n=bi.length;if(t>=n){let o=bi[n-1];for(let s=n;s<=t;s++){const c=o*s;bi.push(c),o=c}}return bi[t]},G.incrementWrap=function(t,n,o){if(o=C(o,0),!X(t))throw new Y("n is required.");if(n<=o)throw new Y("maximumValue must be greater than minimumValue.");return++t,t>n&&(t=o),t},G.isPowerOfTwo=function(t){if(typeof t!="number"||t<0||t>4294967295)throw new Y("A number between 0 and (2^32)-1 is required.");return t!==0&&(t&t-1)===0},G.nextPowerOfTwo=function(t){if(typeof t!="number"||t<0||t>2147483648)throw new Y("A number between 0 and 2^31 is required.");return--t,t|=t>>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,++t,t},G.previousPowerOfTwo=function(t){if(typeof t!="number"||t<0||t>4294967295)throw new Y("A number between 0 and (2^32)-1 is required.");return t|=t>>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,t|=t>>32,t=(t>>>0)-(t>>>1),t},G.clamp=function(t,n,o){return b.typeOf.number("value",t),b.typeOf.number("min",n),b.typeOf.number("max",o),t<n?n:t>o?o:t};let Jc=new Yc;G.setRandomNumberSeed=function(t){if(!X(t))throw new Y("seed is required.");Jc=new Yc(t)},G.nextRandomNumber=function(){return Jc.random()},G.randomBetween=function(t,n){return G.nextRandomNumber()*(n-t)+t},G.acosClamped=function(t){if(!X(t))throw new Y("value is required.");return Math.acos(G.clamp(t,-1,1))},G.asinClamped=function(t){if(!X(t))throw new Y("value is required.");return Math.asin(G.clamp(t,-1,1))},G.chordLength=function(t,n){if(!X(t))throw new Y("angle is required.");if(!X(n))throw new Y("radius is required.");return 2*n*Math.sin(t*.5)},G.logBase=function(t,n){if(!X(t))throw new Y("number is required.");if(!X(n))throw new Y("base is required.");return Math.log(t)/Math.log(n)},G.cbrt=C(Math.cbrt,function(t){const n=Math.pow(Math.abs(t),.3333333333333333);return t<0?-n:n}),G.log2=C(Math.log2,function(t){return Math.log(t)*Math.LOG2E}),G.fog=function(t,n){const o=t*n;return 1-Math.exp(-(o*o))},G.fastApproximateAtan=function(t){return b.typeOf.number("x",t),t*(-.1784*Math.abs(t)-.0663*t*t+1.0301)},G.fastApproximateAtan2=function(t,n){b.typeOf.number("x",t),b.typeOf.number("y",n);let o,s=Math.abs(t);o=Math.abs(n);const c=Math.max(s,o);o=Math.min(s,o);const d=o/c;if(isNaN(d))throw new Y("either x or y must be nonzero");return s=G.fastApproximateAtan(d),s=Math.abs(n)>Math.abs(t)?G.PI_OVER_TWO-s:s,s=t<0?G.PI-s:s,s=n<0?-s:s,s};const T=G;function f(t,n){this.x=C(t,0),this.y=C(n,0)}f.fromElements=function(t,n,o){return X(o)?(o.x=t,o.y=n,o):new f(t,n)},f.clone=function(t,n){if(X(t))return X(n)?(n.x=t.x,n.y=t.y,n):new f(t.x,t.y)},f.fromCartesian3=f.clone,f.fromCartesian4=f.clone,f.packedLength=2,f.pack=function(t,n,o){return b.typeOf.object("value",t),b.defined("array",n),o=C(o,0),n[o++]=t.x,n[o]=t.y,n},f.unpack=function(t,n,o){return b.defined("array",t),n=C(n,0),X(o)||(o=new f),o.x=t[n++],o.y=t[n],o},f.packArray=function(t,n){b.defined("array",t);const o=t.length,s=o*2;if(!X(n))n=new Array(s);else{if(!Array.isArray(n)&&n.length!==s)throw new Y("If result is a typed array, it must have exactly array.length * 2 elements");n.length!==s&&(n.length=s)}for(let c=0;c<o;++c)f.pack(t[c],n,c*2);return n},f.unpackArray=function(t,n){if(b.defined("array",t),b.typeOf.number.greaterThanOrEquals("array.length",t.length,2),t.length%2!==0)throw new Y("array length must be a multiple of 2.");const o=t.length;X(n)?n.length=o/2:n=new Array(o/2);for(let s=0;s<o;s+=2){const c=s/2;n[c]=f.unpack(t,s,n[c])}return n},f.fromArray=f.unpack,f.maximumComponent=function(t){return b.typeOf.object("cartesian",t),Math.max(t.x,t.y)},f.minimumComponent=function(t){return b.typeOf.object("cartesian",t),Math.min(t.x,t.y)},f.minimumByComponent=function(t,n,o){return b.typeOf.object("first",t),b.typeOf.object("second",n),b.typeOf.object("result",o),o.x=Math.min(t.x,n.x),o.y=Math.min(t.y,n.y),o},f.maximumByComponent=function(t,n,o){return b.typeOf.object("first",t),b.typeOf.object("second",n),b.typeOf.object("result",o),o.x=Math.max(t.x,n.x),o.y=Math.max(t.y,n.y),o},f.clamp=function(t,n,o,s){b.typeOf.object("value",t),b.typeOf.object("min",n),b.typeOf.object("max",o),b.typeOf.object("result",s);const c=T.clamp(t.x,n.x,o.x),d=T.clamp(t.y,n.y,o.y);return s.x=c,s.y=d,s},f.magnitudeSquared=function(t){return b.typeOf.object("cartesian",t),t.x*t.x+t.y*t.y},f.magnitude=function(t){return Math.sqrt(f.magnitudeSquared(t))};const Ji=new f;f.distance=function(t,n){return b.typeOf.object("left",t),b.typeOf.object("right",n),f.subtract(t,n,Ji),f.magnitude(Ji)},f.distanceSquared=function(t,n){return b.typeOf.object("left",t),b.typeOf.object("right",n),f.subtract(t,n,Ji),f.magnitudeSquared(Ji)},f.normalize=function(t,n){b.typeOf.object("cartesian",t),b.typeOf.object("result",n);const o=f.magnitude(t);if(n.x=t.x/o,n.y=t.y/o,isNaN(n.x)||isNaN(n.y))throw new Y("normalized result is not a number");return n},f.dot=function(t,n){return b.typeOf.object("left",t),b.typeOf.object("right",n),t.x*n.x+t.y*n.y},f.cross=function(t,n){return b.typeOf.object("left",t),b.typeOf.object("right",n),t.x*n.y-t.y*n.x},f.multiplyComponents=function(t,n,o){return b.typeOf.object("left",t),b.typeOf.object("right",n),b.typeOf.object("result",o),o.x=t.x*n.x,o.y=t.y*n.y,o},f.divideComponents=function(t,n,o){return b.typeOf.object("left",t),b.typeOf.object("right",n),b.typeOf.object("result",o),o.x=t.x/n.x,o.y=t.y/n.y,o},f.add=function(t,n,o){return b.typeOf.object("left",t),b.typeOf.object("right",n),b.typeOf.object("result",o),o.x=t.x+n.x,o.y=t.y+n.y,o},f.subtract=function(t,n,o){return b.typeOf.object("left",t),b.typeOf.object("right",n),b.typeOf.object("result",o),o.x=t.x-n.x,o.y=t.y-n.y,o},f.multiplyByScalar=function(t,n,o){return b.typeOf.object("cartesian",t),b.typeOf.number("scalar",n),b.typeOf.object("result",o),o.x=t.x*n,o.y=t.y*n,o},f.divideByScalar=function(t,n,o){return b.typeOf.object("cartesian",t),b.typeOf.number("scalar",n),b.typeOf.object("result",o),o.x=t.x/n,o.y=t.y/n,o},f.negate=function(t,n){return b.typeOf.object("cartesian",t),b.typeOf.object("result",n),n.x=-t.x,n.y=-t.y,n},f.abs=function(t,n){return b.typeOf.object("cartesian",t),b.typeOf.object("result",n),n.x=Math.abs(t.x),n.y=Math.abs(t.y),n};const Tn=new f;f.lerp=function(t,n,o,s){return b.typeOf.object("start",t),b.typeOf.object("end",n),b.typeOf.number("t",o),b.typeOf.object("result",s),f.multiplyByScalar(n,o,Tn),s=f.multiplyByScalar(t,1-o,s),f.add(Tn,s,s)};const Un=new f,Yn=new f;f.angleBetween=function(t,n){return b.typeOf.object("left",t),b.typeOf.object("right",n),f.normalize(t,Un),f.normalize(n,Yn),T.acosClamped(f.dot(Un,Yn))};const N0=new f;f.mostOrthogonalAxis=function(t,n){b.typeOf.object("cartesian",t),b.typeOf.object("result",n);const o=f.normalize(t,N0);return f.abs(o,o),o.x<=o.y?n=f.clone(f.UNIT_X,n):n=f.clone(f.UNIT_Y,n),n},f.equals=function(t,n){return t===n||X(t)&&X(n)&&t.x===n.x&&t.y===n.y},f.equalsArray=function(t,n,o){return t.x===n[o]&&t.y===n[o+1]},f.equalsEpsilon=function(t,n,o,s){return t===n||X(t)&&X(n)&&T.equalsEpsilon(t.x,n.x,o,s)&&T.equalsEpsilon(t.y,n.y,o,s)},f.ZERO=Object.freeze(new f(0,0)),f.ONE=Object.freeze(new f(1,1)),f.UNIT_X=Object.freeze(new f(1,0)),f.UNIT_Y=Object.freeze(new f(0,1)),f.prototype.clone=function(t){return f.clone(this,t)},f.prototype.equals=function(t){return f.equals(this,t)},f.prototype.equalsEpsilon=function(t,n,o){return f.equalsEpsilon(this,t,n,o)},f.prototype.toString=function(){return`(${this.x}, ${this.y})`};function m(t,n,o){this.x=C(t,0),this.y=C(n,0),this.z=C(o,0)}m.fromSpherical=function(t,n){b.typeOf.object("spherical",t),X(n)||(n=new m);const o=t.clock,s=t.cone,c=C(t.magnitude,1),d=c*Math.sin(s);return n.x=d*Math.cos(o),n.y=d*Math.sin(o),n.z=c*Math.cos(s),n},m.fromElements=function(t,n,o,s){return X(s)?(s.x=t,s.y=n,s.z=o,s):new m(t,n,o)},m.clone=function(t,n){if(X(t))return X(n)?(n.x=t.x,n.y=t.y,n.z=t.z,n):new m(t.x,t.y,t.z)},m.fromCartesian4=m.clone,m.packedLength=3,m.pack=function(t,n,o){return b.typeOf.object("value",t),b.defined("array",n),o=C(o,0),n[o++]=t.x,n[o++]=t.y,n[o]=t.z,n},m.unpack=function(t,n,o){return b.defined("array",t),n=C(n,0),X(o)||(o=new m),o.x=t[n++],o.y=t[n++],o.z=t[n],o},m.packArray=function(t,n){b.defined("array",t);const o=t.length,s=o*3;if(!X(n))n=new Array(s);else{if(!Array.isArray(n)&&n.length!==s)throw new Y("If result is a typed array, it must have exactly array.length * 3 elements");n.length!==s&&(n.length=s)}for(let c=0;c<o;++c)m.pack(t[c],n,c*3);return n},m.unpackArray=function(t,n){if(b.defined("array",t),b.typeOf.number.greaterThanOrEquals("array.length",t.length,3),t.length%3!==0)throw new Y("array length must be a multiple of 3.");const o=t.length;X(n)?n.length=o/3:n=new Array(o/3);for(let s=0;s<o;s+=3){const c=s/3;n[c]=m.unpack(t,s,n[c])}return n},m.fromArray=m.unpack,m.maximumComponent=function(t){return b.typeOf.object("cartesian",t),Math.max(t.x,t.y,t.z)},m.minimumComponent=function(t){return b.typeOf.object("cartesian",t),Math.min(t.x,t.y,t.z)},m.minimumByComponent=function(t,n,o){return b.typeOf.object("first",t),b.typeOf.object("second",n),b.typeOf.object("result",o),o.x=Math.min(t.x,n.x),o.y=Math.min(t.y,n.y),o.z=Math.min(t.z,n.z),o},m.maximumByComponent=function(t,n,o){return b.typeOf.object("first",t),b.typeOf.object("second",n),b.typeOf.object("result",o),o.x=Math.max(t.x,n.x),o.y=Math.max(t.y,n.y),o.z=Math.max(t.z,n.z),o},m.clamp=function(t,n,o,s){b.typeOf.object("value",t),b.typeOf.object("min",n),b.typeOf.object("max",o),b.typeOf.object("result",s);const c=T.clamp(t.x,n.x,o.x),d=T.clamp(t.y,n.y,o.y),h=T.clamp(t.z,n.z,o.z);return s.x=c,s.y=d,s.z=h,s},m.magnitudeSquared=function(t){return b.typeOf.object("cartesian",t),t.x*t.x+t.y*t.y+t.z*t.z},m.magnitude=function(t){return Math.sqrt(m.magnitudeSquared(t))};const Ci=new m;m.distance=function(t,n){return b.typeOf.object("left",t),b.typeOf.object("right",n),m.subtract(t,n,Ci),m.magnitude(Ci)},m.distanceSquared=function(t,n){return b.typeOf.object("left",t),b.typeOf.object("right",n),m.subtract(t,n,Ci),m.magnitudeSquared(Ci)},m.normalize=function(t,n){b.typeOf.object("cartesian",t),b.typeOf.object("result",n);const o=m.magnitude(t);if(n.x=t.x/o,n.y=t.y/o,n.z=t.z/o,isNaN(n.x)||isNaN(n.y)||isNaN(n.z))throw new Y("normalized result is not a number");return n},m.dot=function(t,n){return b.typeOf.object("left",t),b.typeOf.object("right",n),t.x*n.x+t.y*n.y+t.z*n.z},m.multiplyComponents=function(t,n,o){return b.typeOf.object("left",t),b.typeOf.object("right",n),b.typeOf.object("result",o),o.x=t.x*n.x,o.y=t.y*n.y,o.z=t.z*n.z,o},m.divideComponents=function(t,n,o){return b.typeOf.object("left",t),b.typeOf.object("right",n),b.typeOf.object("result",o),o.x=t.x/n.x,o.y=t.y/n.y,o.z=t.z/n.z,o},m.add=function(t,n,o){return b.typeOf.object("left",t),b.typeOf.object("right",n),b.typeOf.object("result",o),o.x=t.x+n.x,o.y=t.y+n.y,o.z=t.z+n.z,o},m.subtract=function(t,n,o){return b.typeOf.object("left",t),b.typeOf.object("right",n),b.typeOf.object("result",o),o.x=t.x-n.x,o.y=t.y-n.y,o.z=t.z-n.z,o},m.multiplyByScalar=function(t,n,o){return b.typeOf.object("cartesian",t),b.typeOf.number("scalar",n),b.typeOf.object("result",o),o.x=t.x*n,o.y=t.y*n,o.z=t.z*n,o},m.divideByScalar=function(t,n,o){return b.typeOf.object("cartesian",t),b.typeOf.number("scalar",n),b.typeOf.object("result",o),o.x=t.x/n,o.y=t.y/n,o.z=t.z/n,o},m.negate=function(t,n){return b.typeOf.object("cartesian",t),b.typeOf.object("result",n),n.x=-t.x,n.y=-t.y,n.z=-t.z,n},m.abs=function(t,n){return b.typeOf.object("cartesian",t),b.typeOf.object("result",n),n.x=Math.abs(t.x),n.y=Math.abs(t.y),n.z=Math.abs(t.z),n};const Jn=new m;m.lerp=function(t,n,o,s){return b.typeOf.object("start",t),b.typeOf.object("end",n),b.typeOf.number("t",o),b.typeOf.object("result",s),m.multiplyByScalar(n,o,Jn),s=m.multiplyByScalar(t,1-o,s),m.add(Jn,s,s)};const mi=new m,il=new m;m.angleBetween=function(t,n){b.typeOf.object("left",t),b.typeOf.object("right",n),m.normalize(t,mi),m.normalize(n,il);const o=m.dot(mi,il),s=m.magnitude(m.cross(mi,il,mi));return Math.atan2(s,o)};const M0=new m;m.mostOrthogonalAxis=function(t,n){b.typeOf.object("cartesian",t),b.typeOf.object("result",n);const o=m.normalize(t,M0);return m.abs(o,o),o.x<=o.y?o.x<=o.z?n=m.clone(m.UNIT_X,n):n=m.clone(m.UNIT_Z,n):o.y<=o.z?n=m.clone(m.UNIT_Y,n):n=m.clone(m.UNIT_Z,n),n},m.projectVector=function(t,n,o){b.defined("a",t),b.defined("b",n),b.defined("result",o);const s=m.dot(t,n)/m.dot(n,n);return m.multiplyByScalar(n,s,o)},m.equals=function(t,n){return t===n||X(t)&&X(n)&&t.x===n.x&&t.y===n.y&&t.z===n.z},m.equalsArray=function(t,n,o){return t.x===n[o]&&t.y===n[o+1]&&t.z===n[o+2]},m.equalsEpsilon=function(t,n,o,s){return t===n||X(t)&&X(n)&&T.equalsEpsilon(t.x,n.x,o,s)&&T.equalsEpsilon(t.y,n.y,o,s)&&T.equalsEpsilon(t.z,n.z,o,s)},m.cross=function(t,n,o){b.typeOf.object("left",t),b.typeOf.object("right",n),b.typeOf.object("result",o);const s=t.x,c=t.y,d=t.z,h=n.x,p=n.y,y=n.z,S=c*y-d*p,P=d*h-s*y,L=s*p-c*h;return o.x=S,o.y=P,o.z=L,o},m.midpoint=function(t,n,o){return b.typeOf.object("left",t),b.typeOf.object("right",n),b.typeOf.object("result",o),o.x=(t.x+n.x)*.5,o.y=(t.y+n.y)*.5,o.z=(t.z+n.z)*.5,o},m.fromDegrees=function(t,n,o,s,c){return b.typeOf.number("longitude",t),b.typeOf.number("latitude",n),t=T.toRadians(t),n=T.toRadians(n),m.fromRadians(t,n,o,s,c)};let Lt=new m,We=new m;const k0=new m(6378137*6378137,6378137*6378137,6356752314245179e-9*6356752314245179e-9);m.fromRadians=function(t,n,o,s,c){b.typeOf.number("longitude",t),b.typeOf.number("latitude",n),o=C(o,0);const d=X(s)?s.radiiSquared:k0,h=Math.cos(n);Lt.x=h*Math.cos(t),Lt.y=h*Math.sin(t),Lt.z=Math.sin(n),Lt=m.normalize(Lt,Lt),m.multiplyComponents(d,Lt,We);const p=Math.sqrt(m.dot(Lt,We));return We=m.divideByScalar(We,p,We),Lt=m.multiplyByScalar(Lt,o,Lt),X(c)||(c=new m),m.add(We,Lt,c)},m.fromDegreesArray=function(t,n,o){if(b.defined("coordinates",t),t.length<2||t.length%2!==0)throw new Y("the number of coordinates must be a multiple of 2 and at least 2");const s=t.length;X(o)?o.length=s/2:o=new Array(s/2);for(let c=0;c<s;c+=2){const d=t[c],h=t[c+1],p=c/2;o[p]=m.fromDegrees(d,h,0,n,o[p])}return o},m.fromRadiansArray=function(t,n,o){if(b.defined("coordinates",t),t.length<2||t.length%2!==0)throw new Y("the number of coordinates must be a multiple of 2 and at least 2");const s=t.length;X(o)?o.length=s/2:o=new Array(s/2);for(let c=0;c<s;c+=2){const d=t[c],h=t[c+1],p=c/2;o[p]=m.fromRadians(d,h,0,n,o[p])}return o},m.fromDegreesArrayHeights=function(t,n,o){if(b.defined("coordinates",t),t.length<3||t.length%3!==0)throw new Y("the number of coordinates must be a multiple of 3 and at least 3");const s=t.length;X(o)?o.length=s/3:o=new Array(s/3);for(let c=0;c<s;c+=3){const d=t[c],h=t[c+1],p=t[c+2],y=c/3;o[y]=m.fromDegrees(d,h,p,n,o[y])}return o},m.fromRadiansArrayHeights=function(t,n,o){if(b.defined("coordinates",t),t.length<3||t.length%3!==0)throw new Y("the number of coordinates must be a multiple of 3 and at least 3");const s=t.length;X(o)?o.length=s/3:o=new Array(s/3);for(let c=0;c<s;c+=3){const d=t[c],h=t[c+1],p=t[c+2],y=c/3;o[y]=m.fromRadians(d,h,p,n,o[y])}return o},m.ZERO=Object.freeze(new m(0,0,0)),m.ONE=Object.freeze(new m(1,1,1)),m.UNIT_X=Object.freeze(new m(1,0,0)),m.UNIT_Y=Object.freeze(new m(0,1,0)),m.UNIT_Z=Object.freeze(new m(0,0,1)),m.prototype.clone=function(t){return m.clone(this,t)},m.prototype.equals=function(t){return m.equals(this,t)},m.prototype.equalsEpsilon=function(t,n,o){return m.equalsEpsilon(this,t,n,o)},m.prototype.toString=function(){return`(${this.x}, ${this.y}, ${this.z})`};const H0=new m,z0=new m;function Cc(t,n,o,s,c){if(!X(t))throw new Y("cartesian is required.");if(!X(n))throw new Y("oneOverRadii is required.");if(!X(o))throw new Y("oneOverRadiiSquared is required.");if(!X(s))throw new Y("centerToleranceSquared is required.");const d=t.x,h=t.y,p=t.z,y=n.x,S=n.y,P=n.z,L=d*d*y*y,F=h*h*S*S,N=p*p*P*P,z=L+F+N,W=Math.sqrt(1/z),nt=m.multiplyByScalar(t,W,H0);if(z<s)return isFinite(W)?m.clone(nt,c):void 0;const Pe=o.x,se=o.y,mt=o.z,kt=z0;kt.x=nt.x*Pe*2,kt.y=nt.y*se*2,kt.z=nt.z*mt*2;let mn=(1-W)*m.magnitude(t)/(.5*m.magnitude(kt)),_i=0,zi,Sa,fa,La,Ra,ma,yt,lt,pi,ba,Sc;do{mn-=_i,fa=1/(1+mn*Pe),La=1/(1+mn*se),Ra=1/(1+mn*mt),ma=fa*fa,yt=La*La,lt=Ra*Ra,pi=ma*fa,ba=yt*La,Sc=lt*Ra,zi=L*ma+F*yt+N*lt-1,Sa=L*pi*Pe+F*ba*se+N*Sc*mt;const ms=-2*Sa;_i=zi/ms}while(Math.abs(zi)>T.EPSILON12);return X(c)?(c.x=d*fa,c.y=h*La,c.z=p*Ra,c):new m(d*fa,h*La,p*Ra)}function A(t,n,o){this.longitude=C(t,0),this.latitude=C(n,0),this.height=C(o,0)}A.fromRadians=function(t,n,o,s){return b.typeOf.number("longitude",t),b.typeOf.number("latitude",n),o=C(o,0),X(s)?(s.longitude=t,s.latitude=n,s.height=o,s):new A(t,n,o)},A.fromDegrees=function(t,n,o,s){return b.typeOf.number("longitude",t),b.typeOf.number("latitude",n),t=T.toRadians(t),n=T.toRadians(n),A.fromRadians(t,n,o,s)};const Q0=new m,P0=new m,E0=new m,w0=new m(1/6378137,1/6378137,1/6356752314245179e-9),v0=new m(1/(6378137*6378137),1/(6378137*6378137),1/(6356752314245179e-9*6356752314245179e-9)),B0=T.EPSILON1;A.fromCartesian=function(t,n,o){const s=X(n)?n.oneOverRadii:w0,c=X(n)?n.oneOverRadiiSquared:v0,d=X(n)?n._centerToleranceSquared:B0,h=Cc(t,s,c,d,P0);if(!X(h))return;let p=m.multiplyComponents(h,c,Q0);p=m.normalize(p,p);const y=m.subtract(t,h,E0),S=Math.atan2(p.y,p.x),P=Math.asin(p.z),L=T.sign(m.dot(y,t))*m.magnitude(y);return X(o)?(o.longitude=S,o.latitude=P,o.height=L,o):new A(S,P,L)},A.toCartesian=function(t,n,o){return b.defined("cartographic",t),m.fromRadians(t.longitude,t.latitude,t.height,n,o)},A.clone=function(t,n){if(X(t))return X(n)?(n.longitude=t.longitude,n.latitude=t.latitude,n.height=t.height,n):new A(t.longitude,t.latitude,t.height)},A.equals=function(t,n){return t===n||X(t)&&X(n)&&t.longitude===n.longitude&&t.latitude===n.latitude&&t.height===n.height},A.equalsEpsilon=function(t,n,o){return o=C(o,0),t===n||X(t)&&X(n)&&Math.abs(t.longitude-n.longitude)<=o&&Math.abs(t.latitude-n.latitude)<=o&&Math.abs(t.height-n.height)<=o},A.ZERO=Object.freeze(new A(0,0,0)),A.prototype.clone=function(t){return A.clone(this,t)},A.prototype.equals=function(t){return A.equals(this,t)},A.prototype.equalsEpsilon=function(t,n){return A.equalsEpsilon(this,t,n)},A.prototype.toString=function(){return`(${this.longitude}, ${this.latitude}, ${this.height})`};function Kc(t,n,o,s){n=C(n,0),o=C(o,0),s=C(s,0),b.typeOf.number.greaterThanOrEquals("x",n,0),b.typeOf.number.greaterThanOrEquals("y",o,0),b.typeOf.number.greaterThanOrEquals("z",s,0),t._radii=new m(n,o,s),t._radiiSquared=new m(n*n,o*o,s*s),t._radiiToTheFourth=new m(n*n*n*n,o*o*o*o,s*s*s*s),t._oneOverRadii=new m(n===0?0:1/n,o===0?0:1/o,s===0?0:1/s),t._oneOverRadiiSquared=new m(n===0?0:1/(n*n),o===0?0:1/(o*o),s===0?0:1/(s*s)),t._minimumRadius=Math.min(n,o,s),t._maximumRadius=Math.max(n,o,s),t._centerToleranceSquared=T.EPSILON1,t._radiiSquared.z!==0&&(t._squaredXOverSquaredZ=t._radiiSquared.x/t._radiiSquared.z)}function B(t,n,o){this._radii=void 0,this._radiiSquared=void 0,this._radiiToTheFourth=void 0,this._oneOverRadii=void 0,this._oneOverRadiiSquared=void 0,this._minimumRadius=void 0,this._maximumRadius=void 0,this._centerToleranceSquared=void 0,this._squaredXOverSquaredZ=void 0,Kc(this,t,n,o)}Object.defineProperties(B.prototype,{radii:{get:function(){return this._radii}},radiiSquared:{get:function(){return this._radiiSquared}},radiiToTheFourth:{get:function(){return this._radiiToTheFourth}},oneOverRadii:{get:function(){return this._oneOverRadii}},oneOverRadiiSquared:{get:function(){return this._oneOverRadiiSquared}},minimumRadius:{get:function(){return this._minimumRadius}},maximumRadius:{get:function(){return this._maximumRadius}}}),B.clone=function(t,n){if(!X(t))return;const o=t._radii;return X(n)?(m.clone(o,n._radii),m.clone(t._radiiSquared,n._radiiSquared),m.clone(t._radiiToTheFourth,n._radiiToTheFourth),m.clone(t._oneOverRadii,n._oneOverRadii),m.clone(t._oneOverRadiiSquared,n._oneOverRadiiSquared),n._minimumRadius=t._minimumRadius,n._maximumRadius=t._maximumRadius,n._centerToleranceSquared=t._centerToleranceSquared,n):new B(o.x,o.y,o.z)},B.fromCartesian3=function(t,n){return X(n)||(n=new B),X(t)&&Kc(n,t.x,t.y,t.z),n},B.WGS84=Object.freeze(new B(6378137,6378137,6356752314245179e-9)),B.UNIT_SPHERE=Object.freeze(new B(1,1,1)),B.MOON=Object.freeze(new B(T.LUNAR_RADIUS,T.LUNAR_RADIUS,T.LUNAR_RADIUS)),B.prototype.clone=function(t){return B.clone(this,t)},B.packedLength=m.packedLength,B.pack=function(t,n,o){return b.typeOf.object("value",t),b.defined("array",n),o=C(o,0),m.pack(t._radii,n,o),n},B.unpack=function(t,n,o){b.defined("array",t),n=C(n,0);const s=m.unpack(t,n);return B.fromCartesian3(s,o)},B.prototype.geocentricSurfaceNormal=m.normalize,B.prototype.geodeticSurfaceNormalCartographic=function(t,n){b.typeOf.object("cartographic",t);const o=t.longitude,s=t.latitude,c=Math.cos(s),d=c*Math.cos(o),h=c*Math.sin(o),p=Math.sin(s);return X(n)||(n=new m),n.x=d,n.y=h,n.z=p,m.normalize(n,n)},B.prototype.geodeticSurfaceNormal=function(t,n){if(!m.equalsEpsilon(t,m.ZERO,T.EPSILON14))return X(n)||(n=new m),n=m.multiplyComponents(t,this._oneOverRadiiSquared,n),m.normalize(n,n)};const j0=new m,O0=new m;B.prototype.cartographicToCartesian=function(t,n){const o=j0,s=O0;this.geodeticSurfaceNormalCartographic(t,o),m.multiplyComponents(this._radiiSquared,o,s);const c=Math.sqrt(m.dot(o,s));return m.divideByScalar(s,c,s),m.multiplyByScalar(o,t.height,o),X(n)||(n=new m),m.add(s,o,n)},B.prototype.cartographicArrayToCartesianArray=function(t,n){b.defined("cartographics",t);const o=t.length;X(n)?n.length=o:n=new Array(o);for(let s=0;s<o;s++)n[s]=this.cartographicToCartesian(t[s],n[s]);return n};const D0=new m,A0=new m,_0=new m;B.prototype.cartesianToCartographic=function(t,n){const o=this.scaleToGeodeticSurface(t,A0);if(!X(o))return;const s=this.geodeticSurfaceNormal(o,D0),c=m.subtract(t,o,_0),d=Math.atan2(s.y,s.x),h=Math.asin(s.z),p=T.sign(m.dot(c,t))*m.magnitude(c);return X(n)?(n.longitude=d,n.latitude=h,n.height=p,n):new A(d,h,p)},B.prototype.cartesianArrayToCartographicArray=function(t,n){b.defined("cartesians",t);const o=t.length;X(n)?n.length=o:n=new Array(o);for(let s=0;s<o;++s)n[s]=this.cartesianToCartographic(t[s],n[s]);return n},B.prototype.scaleToGeodeticSurface=function(t,n){return Cc(t,this._oneOverRadii,this._oneOverRadiiSquared,this._centerToleranceSquared,n)},B.prototype.scaleToGeocentricSurface=function(t,n){b.typeOf.object("cartesian",t),X(n)||(n=new m);const o=t.x,s=t.y,c=t.z,d=this._oneOverRadiiSquared,h=1/Math.sqrt(o*o*d.x+s*s*d.y+c*c*d.z);return m.multiplyByScalar(t,h,n)},B.prototype.transformPositionToScaledSpace=function(t,n){return X(n)||(n=new m),m.multiplyComponents(t,this._oneOverRadii,n)},B.prototype.transformPositionFromScaledSpace=function(t,n){return X(n)||(n=new m),m.multiplyComponents(t,this._radii,n)},B.prototype.equals=function(t){return this===t||X(t)&&m.equals(this._radii,t._radii)},B.prototype.toString=function(){return this._radii.toString()},B.prototype.getSurfaceNormalIntersectionWithZAxis=function(t,n,o){if(b.typeOf.object("position",t),!T.equalsEpsilon(this._radii.x,this._radii.y,T.EPSILON15))throw new Y("Ellipsoid must be an ellipsoid of revolution (radii.x == radii.y)");b.typeOf.number.greaterThan("Ellipsoid.radii.z",this._radii.z,0),n=C(n,0);const s=this._squaredXOverSquaredZ;if(X(o)||(o=new m),o.x=0,o.y=0,o.z=t.z*(1-s),!(Math.abs(o.z)>=this._radii.z-n))return o};const q0=[.14887433898163,.43339539412925,.67940956829902,.86506336668898,.97390652851717,0],$0=[.29552422471475,.26926671930999,.21908636251598,.14945134915058,.066671344308684,0];function Cn(t,n,o){b.typeOf.number("a",t),b.typeOf.number("b",n),b.typeOf.func("func",o);const s=.5*(n+t),c=.5*(n-t);let d=0;for(let h=0;h<5;h++){const p=c*q0[h];d+=$0[h]*(o(s+p)+o(s-p))}return d*=c,d}B.prototype.surfaceArea=function(t){b.typeOf.object("rectangle",t);const n=t.west;let o=t.east;const s=t.south,c=t.north;for(;o<n;)o+=T.TWO_PI;const d=this._radiiSquared,h=d.x,p=d.y,y=d.z,S=h*p;return Cn(s,c,function(P){const L=Math.cos(P),F=Math.sin(P);return Math.cos(P)*Cn(n,o,function(N){const z=Math.cos(N),W=Math.sin(N);return Math.sqrt(S*F*F+y*(p*z*z+h*W*W)*L*L)})})};function g(t,n,o,s){this.west=C(t,0),this.south=C(n,0),this.east=C(o,0),this.north=C(s,0)}Object.defineProperties(g.prototype,{width:{get:function(){return g.computeWidth(this)}},height:{get:function(){return g.computeHeight(this)}}}),g.packedLength=4,g.pack=function(t,n,o){return b.typeOf.object("value",t),b.defined("array",n),o=C(o,0),n[o++]=t.west,n[o++]=t.south,n[o++]=t.east,n[o]=t.north,n},g.unpack=function(t,n,o){return b.defined("array",t),n=C(n,0),X(o)||(o=new g),o.west=t[n++],o.south=t[n++],o.east=t[n++],o.north=t[n],o},g.computeWidth=function(t){b.typeOf.object("rectangle",t);let n=t.east;const o=t.west;return n<o&&(n+=T.TWO_PI),n-o},g.computeHeight=function(t){return b.typeOf.object("rectangle",t),t.north-t.south},g.fromDegrees=function(t,n,o,s,c){return t=T.toRadians(C(t,0)),n=T.toRadians(C(n,0)),o=T.toRadians(C(o,0)),s=T.toRadians(C(s,0)),X(c)?(c.west=t,c.south=n,c.east=o,c.north=s,c):new g(t,n,o,s)},g.fromRadians=function(t,n,o,s,c){return X(c)?(c.west=C(t,0),c.south=C(n,0),c.east=C(o,0),c.north=C(s,0),c):new g(t,n,o,s)},g.fromCartographicArray=function(t,n){b.defined("cartographics",t);let o=Number.MAX_VALUE,s=-Number.MAX_VALUE,c=Number.MAX_VALUE,d=-Number.MAX_VALUE,h=Number.MAX_VALUE,p=-Number.MAX_VALUE;for(let y=0,S=t.length;y<S;y++){const P=t[y];o=Math.min(o,P.longitude),s=Math.max(s,P.longitude),h=Math.min(h,P.latitude),p=Math.max(p,P.latitude);const L=P.longitude>=0?P.longitude:P.longitude+T.TWO_PI;c=Math.min(c,L),d=Math.max(d,L)}return s-o>d-c&&(o=c,s=d,s>T.PI&&(s=s-T.TWO_PI),o>T.PI&&(o=o-T.TWO_PI)),X(n)?(n.west=o,n.south=h,n.east=s,n.north=p,n):new g(o,h,s,p)},g.fromCartesianArray=function(t,n,o){b.defined("cartesians",t),n=C(n,B.WGS84);let s=Number.MAX_VALUE,c=-Number.MAX_VALUE,d=Number.MAX_VALUE,h=-Number.MAX_VALUE,p=Number.MAX_VALUE,y=-Number.MAX_VALUE;for(let S=0,P=t.length;S<P;S++){const L=n.cartesianToCartographic(t[S]);s=Math.min(s,L.longitude),c=Math.max(c,L.longitude),p=Math.min(p,L.latitude),y=Math.max(y,L.latitude);const F=L.longitude>=0?L.longitude:L.longitude+T.TWO_PI;d=Math.min(d,F),h=Math.max(h,F)}return c-s>h-d&&(s=d,c=h,c>T.PI&&(c=c-T.TWO_PI),s>T.PI&&(s=s-T.TWO_PI)),X(o)?(o.west=s,o.south=p,o.east=c,o.north=y,o):new g(s,p,c,y)},g.clone=function(t,n){if(X(t))return X(n)?(n.west=t.west,n.south=t.south,n.east=t.east,n.north=t.north,n):new g(t.west,t.south,t.east,t.north)},g.equalsEpsilon=function(t,n,o){return o=C(o,0),t===n||X(t)&&X(n)&&Math.abs(t.west-n.west)<=o&&Math.abs(t.south-n.south)<=o&&Math.abs(t.east-n.east)<=o&&Math.abs(t.north-n.north)<=o},g.prototype.clone=function(t){return g.clone(this,t)},g.prototype.equals=function(t){return g.equals(this,t)},g.equals=function(t,n){return t===n||X(t)&&X(n)&&t.west===n.west&&t.south===n.south&&t.east===n.east&&t.north===n.north},g.prototype.equalsEpsilon=function(t,n){return g.equalsEpsilon(this,t,n)},g.validate=function(t){b.typeOf.object("rectangle",t);const n=t.north;b.typeOf.number.greaterThanOrEquals("north",n,-T.PI_OVER_TWO),b.typeOf.number.lessThanOrEquals("north",n,T.PI_OVER_TWO);const o=t.south;b.typeOf.number.greaterThanOrEquals("south",o,-T.PI_OVER_TWO),b.typeOf.number.lessThanOrEquals("south",o,T.PI_OVER_TWO);const s=t.west;b.typeOf.number.greaterThanOrEquals("west",s,-Math.PI),b.typeOf.number.lessThanOrEquals("west",s,Math.PI);const c=t.east;b.typeOf.number.greaterThanOrEquals("east",c,-Math.PI),b.typeOf.number.lessThanOrEquals("east",c,Math.PI)},g.southwest=function(t,n){return b.typeOf.object("rectangle",t),X(n)?(n.longitude=t.west,n.latitude=t.south,n.height=0,n):new A(t.west,t.south)},g.northwest=function(t,n){return b.typeOf.object("rectangle",t),X(n)?(n.longitude=t.west,n.latitude=t.north,n.height=0,n):new A(t.west,t.north)},g.northeast=function(t,n){return b.typeOf.object("rectangle",t),X(n)?(n.longitude=t.east,n.latitude=t.north,n.height=0,n):new A(t.east,t.north)},g.southeast=function(t,n){return b.typeOf.object("rectangle",t),X(n)?(n.longitude=t.east,n.latitude=t.south,n.height=0,n):new A(t.east,t.south)},g.center=function(t,n){b.typeOf.object("rectangle",t);let o=t.east;const s=t.west;o<s&&(o+=T.TWO_PI);const c=T.negativePiToPi((s+o)*.5),d=(t.south+t.north)*.5;return X(n)?(n.longitude=c,n.latitude=d,n.height=0,n):new A(c,d)},g.intersection=function(t,n,o){b.typeOf.object("rectangle",t),b.typeOf.object("otherRectangle",n);let s=t.east,c=t.west,d=n.east,h=n.west;s<c&&d>0?s+=T.TWO_PI:d<h&&s>0&&(d+=T.TWO_PI),s<c&&h<0?h+=T.TWO_PI:d<h&&c<0&&(c+=T.TWO_PI);const p=T.negativePiToPi(Math.max(c,h)),y=T.negativePiToPi(Math.min(s,d));if((t.west<t.east||n.west<n.east)&&y<=p)return;const S=Math.max(t.south,n.south),P=Math.min(t.north,n.north);if(!(S>=P))return X(o)?(o.west=p,o.south=S,o.east=y,o.north=P,o):new g(p,S,y,P)},g.simpleIntersection=function(t,n,o){b.typeOf.object("rectangle",t),b.typeOf.object("otherRectangle",n);const s=Math.max(t.west,n.west),c=Math.max(t.south,n.south),d=Math.min(t.east,n.east),h=Math.min(t.north,n.north);if(!(c>=h||s>=d))return X(o)?(o.west=s,o.south=c,o.east=d,o.north=h,o):new g(s,c,d,h)},g.union=function(t,n,o){b.typeOf.object("rectangle",t),b.typeOf.object("otherRectangle",n),X(o)||(o=new g);let s=t.east,c=t.west,d=n.east,h=n.west;s<c&&d>0?s+=T.TWO_PI:d<h&&s>0&&(d+=T.TWO_PI),s<c&&h<0?h+=T.TWO_PI:d<h&&c<0&&(c+=T.TWO_PI);const p=T.negativePiToPi(Math.min(c,h)),y=T.negativePiToPi(Math.max(s,d));return o.west=p,o.south=Math.min(t.south,n.south),o.east=y,o.north=Math.max(t.north,n.north),o},g.expand=function(t,n,o){return b.typeOf.object("rectangle",t),b.typeOf.object("cartographic",n),X(o)||(o=new g),o.west=Math.min(t.west,n.longitude),o.south=Math.min(t.south,n.latitude),o.east=Math.max(t.east,n.longitude),o.north=Math.max(t.north,n.latitude),o},g.contains=function(t,n){b.typeOf.object("rectangle",t),b.typeOf.object("cartographic",n);let o=n.longitude;const s=n.latitude,c=t.west;let d=t.east;return d<c&&(d+=T.TWO_PI,o<0&&(o+=T.TWO_PI)),(o>c||T.equalsEpsilon(o,c,T.EPSILON14))&&(o<d||T.equalsEpsilon(o,d,T.EPSILON14))&&s>=t.south&&s<=t.north};const tr=new A;g.subsample=function(t,n,o,s){b.typeOf.object("rectangle",t),n=C(n,B.WGS84),o=C(o,0),X(s)||(s=[]);let c=0;const d=t.north,h=t.south,p=t.east,y=t.west,S=tr;S.height=o,S.longitude=y,S.latitude=d,s[c]=n.cartographicToCartesian(S,s[c]),c++,S.longitude=p,s[c]=n.cartographicToCartesian(S,s[c]),c++,S.latitude=h,s[c]=n.cartographicToCartesian(S,s[c]),c++,S.longitude=y,s[c]=n.cartographicToCartesian(S,s[c]),c++,d<0?S.latitude=d:h>0?S.latitude=h:S.latitude=0;for(let P=1;P<8;++P)S.longitude=-Math.PI+P*T.PI_OVER_TWO,g.contains(t,S)&&(s[c]=n.cartographicToCartesian(S,s[c]),c++);return S.latitude===0&&(S.longitude=y,s[c]=n.cartographicToCartesian(S,s[c]),c++,S.longitude=p,s[c]=n.cartographicToCartesian(S,s[c]),c++),s.length=c,s},g.subsection=function(t,n,o,s,c,d){if(b.typeOf.object("rectangle",t),b.typeOf.number.greaterThanOrEquals("westLerp",n,0),b.typeOf.number.lessThanOrEquals("westLerp",n,1),b.typeOf.number.greaterThanOrEquals("southLerp",o,0),b.typeOf.number.lessThanOrEquals("southLerp",o,1),b.typeOf.number.greaterThanOrEquals("eastLerp",s,0),b.typeOf.number.lessThanOrEquals("eastLerp",s,1),b.typeOf.number.greaterThanOrEquals("northLerp",c,0),b.typeOf.number.lessThanOrEquals("northLerp",c,1),b.typeOf.number.lessThanOrEquals("westLerp",n,s),b.typeOf.number.lessThanOrEquals("southLerp",o,c),X(d)||(d=new g),t.west<=t.east){const p=t.east-t.west;d.west=t.west+n*p,d.east=t.west+s*p}else{const p=T.TWO_PI+t.east-t.west;d.west=T.negativePiToPi(t.west+n*p),d.east=T.negativePiToPi(t.west+s*p)}const h=t.north-t.south;return d.south=t.south+o*h,d.north=t.south+c*h,n===1&&(d.west=t.east),s===1&&(d.east=t.east),o===1&&(d.south=t.north),c===1&&(d.north=t.north),d},g.MAX_VALUE=Object.freeze(new g(-Math.PI,-T.PI_OVER_TWO,Math.PI,T.PI_OVER_TWO));function Gt(t){this._ellipsoid=C(t,B.WGS84),this._semimajorAxis=this._ellipsoid.maximumRadius,this._oneOverSemimajorAxis=1/this._semimajorAxis}Object.defineProperties(Gt.prototype,{ellipsoid:{get:function(){return this._ellipsoid}}}),Gt.mercatorAngleToGeodeticLatitude=function(t){return T.PI_OVER_TWO-2*Math.atan(Math.exp(-t))},Gt.geodeticLatitudeToMercatorAngle=function(t){t>Gt.MaximumLatitude?t=Gt.MaximumLatitude:t<-Gt.MaximumLatitude&&(t=-Gt.MaximumLatitude);const n=Math.sin(t);return .5*Math.log((1+n)/(1-n))},Gt.MaximumLatitude=Gt.mercatorAngleToGeodeticLatitude(Math.PI),Gt.prototype.project=function(t,n){const o=this._semimajorAxis,s=t.longitude*o,c=Gt.geodeticLatitudeToMercatorAngle(t.latitude)*o,d=t.height;return X(n)?(n.x=s,n.y=c,n.z=d,n):new m(s,c,d)},Gt.prototype.unproject=function(t,n){if(!X(t))throw new Y("cartesian is required");const o=this._oneOverSemimajorAxis,s=t.x*o,c=Gt.mercatorAngleToGeodeticLatitude(t.y*o),d=t.z;return X(n)?(n.longitude=s,n.latitude=c,n.height=d,n):new A(s,c,d)};class er{add(n,o,s){if(typeof arguments[0]!="string")for(let c in arguments[0])this.add(c,arguments[0][c],arguments[1]);else(Array.isArray(n)?n:[n]).forEach(function(c){this[c]=this[c]||[],o&&this[c][s?"unshift":"push"](o)},this)}run(n,o){this[n]=this[n]||[],this[n].forEach(function(s){s.call(o&&o.context?o.context:o,o)})}}class ir{constructor(n){this.jsep=n,this.registered={}}register(...n){n.forEach(o=>{if(typeof o!="object"||!o.name||!o.init)throw new Error("Invalid JSEP plugin format");this.registered[o.name]||(o.init(this.jsep),this.registered[o.name]=o)})}}class V{static get version(){return"1.3.8"}static toString(){return"JavaScript Expression Parser (JSEP) v"+V.version}static addUnaryOp(n){return V.max_unop_len=Math.max(n.length,V.max_unop_len),V.unary_ops[n]=1,V}static addBinaryOp(n,o,s){return V.max_binop_len=Math.max(n.length,V.max_binop_len),V.binary_ops[n]=o,s?V.right_associative.add(n):V.right_associative.delete(n),V}static addIdentifierChar(n){return V.additional_identifier_chars.add(n),V}static addLiteral(n,o){return V.literals[n]=o,V}static removeUnaryOp(n){return delete V.unary_ops[n],n.length===V.max_unop_len&&(V.max_unop_len=V.getMaxKeyLen(V.unary_ops)),V}static removeAllUnaryOps(){return V.unary_ops={},V.max_unop_len=0,V}static removeIdentifierChar(n){return V.additional_identifier_chars.delete(n),V}static removeBinaryOp(n){return delete V.binary_ops[n],n.length===V.max_binop_len&&(V.max_binop_len=V.getMaxKeyLen(V.binary_ops)),V.right_associative.delete(n),V}static removeAllBinaryOps(){return V.binary_ops={},V.max_binop_len=0,V}static removeLiteral(n){return delete V.literals[n],V}static removeAllLiterals(){return V.literals={},V}get char(){return this.expr.charAt(this.index)}get code(){return this.expr.charCodeAt(this.index)}constructor(n){this.expr=n,this.index=0}static parse(n){return new V(n).parse()}static getMaxKeyLen(n){return Math.max(0,...Object.keys(n).map(o=>o.length))}static isDecimalDigit(n){return n>=48&&n<=57}static binaryPrecedence(n){return V.binary_ops[n]||0}static isIdentifierStart(n){return n>=65&&n<=90||n>=97&&n<=122||n>=128&&!V.binary_ops[String.fromCharCode(n)]||V.additional_identifier_chars.has(String.fromCharCode(n))}static isIdentifierPart(n){return V.isIdentifierStart(n)||V.isDecimalDigit(n)}throwError(n){const o=new Error(n+" at character "+this.index);throw o.index=this.index,o.description=n,o}runHook(n,o){if(V.hooks[n]){const s={context:this,node:o};return V.hooks.run(n,s),s.node}return o}searchHook(n){if(V.hooks[n]){const o={context:this};return V.hooks[n].find(function(s){return s.call(o.context,o),o.node}),o.node}}gobbleSpaces(){let n=this.code;for(;n===V.SPACE_CODE||n===V.TAB_CODE||n===V.LF_CODE||n===V.CR_CODE;)n=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}parse(){this.runHook("before-all");const n=this.gobbleExpressions(),o=n.length===1?n[0]:{type:V.COMPOUND,body:n};return this.runHook("after-all",o)}gobbleExpressions(n){let o=[],s,c;for(;this.index<this.expr.length;)if(s=this.code,s===V.SEMCOL_CODE||s===V.COMMA_CODE)this.index++;else if(c=this.gobbleExpression())o.push(c);else if(this.index<this.expr.length){if(s===n)break;this.throwError('Unexpected "'+this.char+'"')}return o}gobbleExpression(){const n=this.searchHook("gobble-expression")||this.gobbleBinaryExpression();return this.gobbleSpaces(),this.runHook("after-expression",n)}gobbleBinaryOp(){this.gobbleSpaces();let n=this.expr.substr(this.index,V.max_binop_len),o=n.length;for(;o>0;){if(V.binary_ops.hasOwnProperty(n)&&(!V.isIdentifierStart(this.code)||this.index+n.length<this.expr.length&&!V.isIdentifierPart(this.expr.charCodeAt(this.index+n.length))))return this.index+=o,n;n=n.substr(0,--o)}return!1}gobbleBinaryExpression(){let n,o,s,c,d,h,p,y,S;if(h=this.gobbleToken(),!h||(o=this.gobbleBinaryOp(),!o))return h;for(d={value:o,prec:V.binaryPrecedence(o),right_a:V.right_associative.has(o)},p=this.gobbleToken(),p||this.throwError("Expected expression after "+o),c=[h,d,p];o=this.gobbleBinaryOp();){if(s=V.binaryPrecedence(o),s===0){this.index-=o.length;break}d={value:o,prec:s,right_a:V.right_associative.has(o)},S=o;const P=L=>d.right_a&&L.right_a?s>L.prec:s<=L.prec;for(;c.length>2&&P(c[c.length-2]);)p=c.pop(),o=c.pop().value,h=c.pop(),n={type:V.BINARY_EXP,operator:o,left:h,right:p},c.push(n);n=this.gobbleToken(),n||this.throwError("Expected expression after "+S),c.push(d,n)}for(y=c.length-1,n=c[y];y>1;)n={type:V.BINARY_EXP,operator:c[y-1].value,left:c[y-2],right:n},y-=2;return n}gobbleToken(){let n,o,s,c;if(this.gobbleSpaces(),c=this.searchHook("gobble-token"),c)return this.runHook("after-token",c);if(n=this.code,V.isDecimalDigit(n)||n===V.PERIOD_CODE)return this.gobbleNumericLiteral();if(n===V.SQUOTE_CODE||n===V.DQUOTE_CODE)c=this.gobbleStringLiteral();else if(n===V.OBRACK_CODE)c=this.gobbleArray();else{for(o=this.expr.substr(this.index,V.max_unop_len),s=o.length;s>0;){if(V.unary_ops.hasOwnProperty(o)&&(!V.isIdentifierStart(this.code)||this.index+o.length<this.expr.length&&!V.isIdentifierPart(this.expr.charCodeAt(this.index+o.length)))){this.index+=s;const d=this.gobbleToken();return d||this.throwError("missing unaryOp argument"),this.runHook("after-token",{type:V.UNARY_EXP,operator:o,argument:d,prefix:!0})}o=o.substr(0,--s)}V.isIdentifierStart(n)?(c=this.gobbleIdentifier(),V.literals.hasOwnProperty(c.name)?c={type:V.LITERAL,value:V.literals[c.name],raw:c.name}:c.name===V.this_str&&(c={type:V.THIS_EXP})):n===V.OPAREN_CODE&&(c=this.gobbleGroup())}return c?(c=this.gobbleTokenProperty(c),this.runHook("after-token",c)):this.runHook("after-token",!1)}gobbleTokenProperty(n){this.gobbleSpaces();let o=this.code;for(;o===V.PERIOD_CODE||o===V.OBRACK_CODE||o===V.OPAREN_CODE||o===V.QUMARK_CODE;){let s;if(o===V.QUMARK_CODE){if(this.expr.charCodeAt(this.index+1)!==V.PERIOD_CODE)break;s=!0,this.index+=2,this.gobbleSpaces(),o=this.code}this.index++,o===V.OBRACK_CODE?(n={type:V.MEMBER_EXP,computed:!0,object:n,property:this.gobbleExpression()},this.gobbleSpaces(),o=this.code,o!==V.CBRACK_CODE&&this.throwError("Unclosed ["),this.index++):o===V.OPAREN_CODE?n={type:V.CALL_EXP,arguments:this.gobbleArguments(V.CPAREN_CODE),callee:n}:(o===V.PERIOD_CODE||s)&&(s&&this.index--,this.gobbleSpaces(),n={type:V.MEMBER_EXP,computed:!1,object:n,property:this.gobbleIdentifier()}),s&&(n.optional=!0),this.gobbleSpaces(),o=this.code}return n}gobbleNumericLiteral(){let n="",o,s;for(;V.isDecimalDigit(this.code);)n+=this.expr.charAt(this.index++);if(this.code===V.PERIOD_CODE)for(n+=this.expr.charAt(this.index++);V.isDecimalDigit(this.code);)n+=this.expr.charAt(this.index++);if(o=this.char,o==="e"||o==="E"){for(n+=this.expr.charAt(this.index++),o=this.char,(o==="+"||o==="-")&&(n+=this.expr.charAt(this.index++));V.isDecimalDigit(this.code);)n+=this.expr.charAt(this.index++);V.isDecimalDigit(this.expr.charCodeAt(this.index-1))||this.throwError("Expected exponent ("+n+this.char+")")}return s=this.code,V.isIdentifierStart(s)?this.throwError("Variable names cannot start with a number ("+n+this.char+")"):(s===V.PERIOD_CODE||n.length===1&&n.charCodeAt(0)===V.PERIOD_CODE)&&this.throwError("Unexpected period"),{type:V.LITERAL,value:parseFloat(n),raw:n}}gobbleStringLiteral(){let n="";const o=this.index,s=this.expr.charAt(this.index++);let c=!1;for(;this.index<this.expr.length;){let d=this.expr.charAt(this.index++);if(d===s){c=!0;break}else if(d==="\\")switch(d=this.expr.charAt(this.index++),d){case"n":n+=`
|
|
6097
6097
|
`;break;case"r":n+="\r";break;case"t":n+=" ";break;case"b":n+="\b";break;case"f":n+="\f";break;case"v":n+="\v";break;default:n+=d}else n+=d}return c||this.throwError('Unclosed quote after "'+n+'"'),{type:V.LITERAL,value:n,raw:this.expr.substring(o,this.index)}}gobbleIdentifier(){let n=this.code,o=this.index;for(V.isIdentifierStart(n)?this.index++:this.throwError("Unexpected "+this.char);this.index<this.expr.length&&(n=this.code,V.isIdentifierPart(n));)this.index++;return{type:V.IDENTIFIER,name:this.expr.slice(o,this.index)}}gobbleArguments(n){const o=[];let s=!1,c=0;for(;this.index<this.expr.length;){this.gobbleSpaces();let d=this.code;if(d===n){s=!0,this.index++,n===V.CPAREN_CODE&&c&&c>=o.length&&this.throwError("Unexpected token "+String.fromCharCode(n));break}else if(d===V.COMMA_CODE){if(this.index++,c++,c!==o.length){if(n===V.CPAREN_CODE)this.throwError("Unexpected token ,");else if(n===V.CBRACK_CODE)for(let h=o.length;h<c;h++)o.push(null)}}else if(o.length!==c&&c!==0)this.throwError("Expected comma");else{const h=this.gobbleExpression();(!h||h.type===V.COMPOUND)&&this.throwError("Expected comma"),o.push(h)}}return s||this.throwError("Expected "+String.fromCharCode(n)),o}gobbleGroup(){this.index++;let n=this.gobbleExpressions(V.CPAREN_CODE);if(this.code===V.CPAREN_CODE)return this.index++,n.length===1?n[0]:n.length?{type:V.SEQUENCE_EXP,expressions:n}:!1;this.throwError("Unclosed (")}gobbleArray(){return this.index++,{type:V.ARRAY_EXP,elements:this.gobbleArguments(V.CBRACK_CODE)}}}const lr=new er;Object.assign(V,{hooks:lr,plugins:new ir(V),COMPOUND:"Compound",SEQUENCE_EXP:"SequenceExpression",IDENTIFIER:"Identifier",MEMBER_EXP:"MemberExpression",LITERAL:"Literal",THIS_EXP:"ThisExpression",CALL_EXP:"CallExpression",UNARY_EXP:"UnaryExpression",BINARY_EXP:"BinaryExpression",ARRAY_EXP:"ArrayExpression",TAB_CODE:9,LF_CODE:10,CR_CODE:13,SPACE_CODE:32,PERIOD_CODE:46,COMMA_CODE:44,SQUOTE_CODE:39,DQUOTE_CODE:34,OPAREN_CODE:40,CPAREN_CODE:41,OBRACK_CODE:91,CBRACK_CODE:93,QUMARK_CODE:63,SEMCOL_CODE:59,COLON_CODE:58,unary_ops:{"-":1,"!":1,"~":1,"+":1},binary_ops:{"||":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10},right_associative:new Set,additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"}),V.max_unop_len=V.getMaxKeyLen(V.unary_ops),V.max_binop_len=V.getMaxKeyLen(V.binary_ops);const ne=t=>new V(t).parse(),nr=Object.getOwnPropertyNames(V);nr.forEach(t=>{ne[t]===void 0&&t!=="prototype"&&(ne[t]=V[t])}),ne.Jsep=V;const cr$2="ConditionalExpression";var dr={name:"ternary",init(t){t.hooks.add("after-expression",function(n){if(n.node&&this.code===t.QUMARK_CODE){this.index++;const o=n.node,s=this.gobbleExpression();if(s||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===t.COLON_CODE){this.index++;const c=this.gobbleExpression();if(c||this.throwError("Expected expression"),n.node={type:cr$2,test:o,consequent:s,alternate:c},o.operator&&t.binary_ops[o.operator]<=.9){let d=o;for(;d.right.operator&&t.binary_ops[d.right.operator]<=.9;)d=d.right;n.node.test=d.right,d.right=n.node,n.node=o}}else this.throwError("Expected :")}})}};ne.plugins.register(dr);function de(t){if(t=C(t,C.EMPTY_OBJECT),this._ellipsoid=C(t.ellipsoid,B.WGS84),this._numberOfLevelZeroTilesX=C(t.numberOfLevelZeroTilesX,1),this._numberOfLevelZeroTilesY=C(t.numberOfLevelZeroTilesY,1),this._projection=new Gt(this._ellipsoid),X(t.rectangleSouthwestInMeters)&&X(t.rectangleNortheastInMeters))this._rectangleSouthwestInMeters=t.rectangleSouthwestInMeters,this._rectangleNortheastInMeters=t.rectangleNortheastInMeters;else{const s=this._ellipsoid.maximumRadius*Math.PI;this._rectangleSouthwestInMeters=new f(-s,-s),this._rectangleNortheastInMeters=new f(s,s)}const n=this._projection.unproject(this._rectangleSouthwestInMeters),o=this._projection.unproject(this._rectangleNortheastInMeters);this._rectangle=new g(n.longitude,n.latitude,o.longitude,o.latitude)}Object.defineProperties(de.prototype,{ellipsoid:{get:function(){return this._ellipsoid}},rectangle:{get:function(){return this._rectangle}},projection:{get:function(){return this._projection}}}),de.prototype.getNumberOfXTilesAtLevel=function(t){return this._numberOfLevelZeroTilesX<<t},de.prototype.getNumberOfYTilesAtLevel=function(t){return this._numberOfLevelZeroTilesY<<t},de.prototype.rectangleToNativeRectangle=function(t,n){const o=this._projection,s=o.project(g.southwest(t)),c=o.project(g.northeast(t));return X(n)?(n.west=s.x,n.south=s.y,n.east=c.x,n.north=c.y,n):new g(s.x,s.y,c.x,c.y)},de.prototype.tileXYToNativeRectangle=function(t,n,o,s){const c=this.getNumberOfXTilesAtLevel(o),d=this.getNumberOfYTilesAtLevel(o),h=(this._rectangleNortheastInMeters.x-this._rectangleSouthwestInMeters.x)/c,p=this._rectangleSouthwestInMeters.x+t*h,y=this._rectangleSouthwestInMeters.x+(t+1)*h,S=(this._rectangleNortheastInMeters.y-this._rectangleSouthwestInMeters.y)/d,P=this._rectangleNortheastInMeters.y-n*S,L=this._rectangleNortheastInMeters.y-(n+1)*S;return X(s)?(s.west=p,s.south=L,s.east=y,s.north=P,s):new g(p,L,y,P)},de.prototype.tileXYToRectangle=function(t,n,o,s){const c=this.tileXYToNativeRectangle(t,n,o,s),d=this._projection,h=d.unproject(new f(c.west,c.south)),p=d.unproject(new f(c.east,c.north));return c.west=h.longitude,c.south=h.latitude,c.east=p.longitude,c.north=p.latitude,c},de.prototype.positionToTileXY=function(t,n,o){const s=this._rectangle;if(!g.contains(s,t))return;const c=this.getNumberOfXTilesAtLevel(n),d=this.getNumberOfYTilesAtLevel(n),h=(this._rectangleNortheastInMeters.x-this._rectangleSouthwestInMeters.x)/c,p=(this._rectangleNortheastInMeters.y-this._rectangleSouthwestInMeters.y)/d,y=this._projection.project(t),S=y.x-this._rectangleSouthwestInMeters.x,P=this._rectangleNortheastInMeters.y-y.y;let L=S/h|0;L>=c&&(L=c-1);let F=P/p|0;return F>=d&&(F=d-1),X(o)?(o.x=L,o.y=F,o):new f(L,F)};var wi=Ie;function Ie(t,n){this.x=t,this.y=n}Ie.prototype={clone:function(){return new Ie(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,n){return this.clone()._rotateAround(t,n)},matMult:function(t){return this.clone()._matMult(t)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var n=t.x-this.x,o=t.y-this.y;return n*n+o*o},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,n){return Math.atan2(this.x*n-this.y*t,this.x*t+this.y*n)},_matMult:function(t){var n=t[0]*this.x+t[1]*this.y,o=t[2]*this.x+t[3]*this.y;return this.x=n,this.y=o,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x*=t,this.y*=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var n=Math.cos(t),o=Math.sin(t),s=n*this.x-o*this.y,c=o*this.x+n*this.y;return this.x=s,this.y=c,this},_rotateAround:function(t,n){var o=Math.cos(t),s=Math.sin(t),c=n.x+o*(this.x-n.x)-s*(this.y-n.y),d=n.y+s*(this.x-n.x)+o*(this.y-n.y);return this.x=c,this.y=d,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},Ie.convert=function(t){return t instanceof Ie?t:Array.isArray(t)?new Ie(t[0],t[1]):t};var or=wi,gc=ge;function ge(t,n,o,s,c){this.properties={},this.extent=o,this.type=0,this._pbf=t,this._geometry=-1,this._keys=s,this._values=c,t.readFields(sr,this,n)}function sr(t,n,o){t==1?n.id=o.readVarint():t==2?ar(o,n):t==3?n.type=o.readVarint():t==4&&(n._geometry=o.pos)}function ar(t,n){for(var o=t.readVarint()+t.pos;t.pos<o;){var s=n._keys[t.readVarint()],c=n._values[t.readVarint()];n.properties[s]=c}}ge.types=["Unknown","Point","LineString","Polygon"],ge.prototype.loadGeometry=function(){var t=this._pbf;t.pos=this._geometry;for(var n=t.readVarint()+t.pos,o=1,s=0,c=0,d=0,h=[],p;t.pos<n;){if(s<=0){var y=t.readVarint();o=y&7,s=y>>3}if(s--,o===1||o===2)c+=t.readSVarint(),d+=t.readSVarint(),o===1&&(p&&h.push(p),p=[]),p.push(new or(c,d));else if(o===7)p&&p.push(p[0].clone());else throw new Error("unknown command "+o)}return p&&h.push(p),h},ge.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var n=t.readVarint()+t.pos,o=1,s=0,c=0,d=0,h=1/0,p=-1/0,y=1/0,S=-1/0;t.pos<n;){if(s<=0){var P=t.readVarint();o=P&7,s=P>>3}if(s--,o===1||o===2)c+=t.readSVarint(),d+=t.readSVarint(),c<h&&(h=c),c>p&&(p=c),d<y&&(y=d),d>S&&(S=d);else if(o!==7)throw new Error("unknown command "+o)}return[h,y,p,S]},ge.prototype.toGeoJSON=function(t,n,o){var s=this.extent*Math.pow(2,o),c=this.extent*t,d=this.extent*n,h=this.loadGeometry(),p=ge.types[this.type],y,S;function P(N){for(var z=0;z<N.length;z++){var W=N[z],nt=180-(W.y+d)*360/s;N[z]=[(W.x+c)*360/s-180,360/Math.PI*Math.atan(Math.exp(nt*Math.PI/180))-90]}}switch(this.type){case 1:var L=[];for(y=0;y<h.length;y++)L[y]=h[y][0];h=L,P(h);break;case 2:for(y=0;y<h.length;y++)P(h[y]);break;case 3:for(h=ur(h),y=0;y<h.length;y++)for(S=0;S<h[y].length;S++)P(h[y][S]);break}h.length===1?h=h[0]:p="Multi"+p;var F={type:"Feature",geometry:{type:p,coordinates:h},properties:this.properties};return"id"in this&&(F.id=this.id),F};function ur(t){var n=t.length;if(n<=1)return[t];for(var o=[],s,c,d=0;d<n;d++){var h=rr(t[d]);h!==0&&(c===void 0&&(c=h<0),c===h<0?(s&&o.push(s),s=[t[d]]):s.push(t[d]))}return s&&o.push(s),o}function rr(t){for(var n=0,o=0,s=t.length,c=s-1,d,h;o<s;c=o++)d=t[o],h=t[c],n+=(h.x-d.x)*(d.y+h.y);return n}var hr=gc,br=Nc;function Nc(t,n){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=t,this._keys=[],this._values=[],this._features=[],t.readFields(mr,this,n),this.length=this._features.length}function mr(t,n,o){t===15?n.version=o.readVarint():t===1?n.name=o.readString():t===5?n.extent=o.readVarint():t===2?n._features.push(o.pos):t===3?n._keys.push(o.readString()):t===4&&n._values.push(Zr(o))}function Zr(t){for(var n=null,o=t.readVarint()+t.pos;t.pos<o;){var s=t.readVarint()>>3;n=s===1?t.readString():s===2?t.readFloat():s===3?t.readDouble():s===4?t.readVarint64():s===5?t.readVarint():s===6?t.readSVarint():s===7?t.readBoolean():null}return n}Nc.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[t];var n=this._pbf.readVarint()+this._pbf.pos;return new hr(this._pbf,n,this.extent,this._keys,this._values)};var Vr=br,Xr=Gr;function Gr(t,n){this.layers=t.readFields(pr,{},n)}function pr(t,n,o){if(t===3){var s=new Vr(o,o.readVarint()+o.pos);s.length&&(n[s.name]=s)}}var yr=Xr,vt=gc,Pl={};/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */Pl.read=function(t,n,o,s,c){var d,h,p=c*8-s-1,y=(1<<p)-1,S=y>>1,P=-7,L=o?c-1:0,F=o?-1:1,N=t[n+L];for(L+=F,d=N&(1<<-P)-1,N>>=-P,P+=p;P>0;d=d*256+t[n+L],L+=F,P-=8);for(h=d&(1<<-P)-1,d>>=-P,P+=s;P>0;h=h*256+t[n+L],L+=F,P-=8);if(d===0)d=1-S;else{if(d===y)return h?NaN:(N?-1:1)*(1/0);h=h+Math.pow(2,s),d=d-S}return(N?-1:1)*h*Math.pow(2,d-s)},Pl.write=function(t,n,o,s,c,d){var h,p,y,S=d*8-c-1,P=(1<<S)-1,L=P>>1,F=c===23?Math.pow(2,-24)-Math.pow(2,-77):0,N=s?0:d-1,z=s?1:-1,W=n<0||n===0&&1/n<0?1:0;for(n=Math.abs(n),isNaN(n)||n===1/0?(p=isNaN(n)?1:0,h=P):(h=Math.floor(Math.log(n)/Math.LN2),n*(y=Math.pow(2,-h))<1&&(h--,y*=2),h+L>=1?n+=F/y:n+=F*Math.pow(2,1-L),n*y>=2&&(h++,y/=2),h+L>=P?(p=0,h=P):h+L>=1?(p=(n*y-1)*Math.pow(2,c),h=h+L):(p=n*Math.pow(2,L-1)*Math.pow(2,c),h=0));c>=8;t[o+N]=p&255,N+=z,p/=256,c-=8);for(h=h<<c|p,S+=c;S>0;t[o+N]=h&255,N+=z,h/=256,S-=8);t[o+N-z]|=W*128};var Rr=j,Zi=Pl;function j(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}j.Varint=0,j.Fixed64=1,j.Bytes=2,j.Fixed32=5;var Zl=65536*65536,Kn=1/Zl,Wr=12,Mc=typeof TextDecoder>"u"?null:new TextDecoder("utf8");j.prototype={destroy:function(){this.buf=null},readFields:function(t,n,o){for(o=o||this.length;this.pos<o;){var s=this.readVarint(),c=s>>3,d=this.pos;this.type=s&7,t(c,n,this),this.pos===d&&this.skip(s)}return n},readMessage:function(t,n){return this.readFields(t,n,this.readVarint()+this.pos)},readFixed32:function(){var t=Vi(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=Nn(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=Vi(this.buf,this.pos)+Vi(this.buf,this.pos+4)*Zl;return this.pos+=8,t},readSFixed64:function(){var t=Vi(this.buf,this.pos)+Nn(this.buf,this.pos+4)*Zl;return this.pos+=8,t},readFloat:function(){var t=Zi.read(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=Zi.read(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var n=this.buf,o,s;return s=n[this.pos++],o=s&127,s<128||(s=n[this.pos++],o|=(s&127)<<7,s<128)||(s=n[this.pos++],o|=(s&127)<<14,s<128)||(s=n[this.pos++],o|=(s&127)<<21,s<128)?o:(s=n[this.pos],o|=(s&15)<<28,fr(o,t,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2===1?(t+1)/-2:t/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var t=this.readVarint()+this.pos,n=this.pos;return this.pos=t,t-n>=Wr&&Mc?Mr(this.buf,n,t):Nr(this.buf,n,t)},readBytes:function(){var t=this.readVarint()+this.pos,n=this.buf.subarray(this.pos,t);return this.pos=t,n},readPackedVarint:function(t,n){if(this.type!==j.Bytes)return t.push(this.readVarint(n));var o=wt(this);for(t=t||[];this.pos<o;)t.push(this.readVarint(n));return t},readPackedSVarint:function(t){if(this.type!==j.Bytes)return t.push(this.readSVarint());var n=wt(this);for(t=t||[];this.pos<n;)t.push(this.readSVarint());return t},readPackedBoolean:function(t){if(this.type!==j.Bytes)return t.push(this.readBoolean());var n=wt(this);for(t=t||[];this.pos<n;)t.push(this.readBoolean());return t},readPackedFloat:function(t){if(this.type!==j.Bytes)return t.push(this.readFloat());var n=wt(this);for(t=t||[];this.pos<n;)t.push(this.readFloat());return t},readPackedDouble:function(t){if(this.type!==j.Bytes)return t.push(this.readDouble());var n=wt(this);for(t=t||[];this.pos<n;)t.push(this.readDouble());return t},readPackedFixed32:function(t){if(this.type!==j.Bytes)return t.push(this.readFixed32());var n=wt(this);for(t=t||[];this.pos<n;)t.push(this.readFixed32());return t},readPackedSFixed32:function(t){if(this.type!==j.Bytes)return t.push(this.readSFixed32());var n=wt(this);for(t=t||[];this.pos<n;)t.push(this.readSFixed32());return t},readPackedFixed64:function(t){if(this.type!==j.Bytes)return t.push(this.readFixed64());var n=wt(this);for(t=t||[];this.pos<n;)t.push(this.readFixed64());return t},readPackedSFixed64:function(t){if(this.type!==j.Bytes)return t.push(this.readSFixed64());var n=wt(this);for(t=t||[];this.pos<n;)t.push(this.readSFixed64());return t},skip:function(t){var n=t&7;if(n===j.Varint)for(;this.buf[this.pos++]>127;);else if(n===j.Bytes)this.pos=this.readVarint()+this.pos;else if(n===j.Fixed32)this.pos+=4;else if(n===j.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+n)},writeTag:function(t,n){this.writeVarint(t<<3|n)},realloc:function(t){for(var n=this.length||16;n<this.pos+t;)n*=2;if(n!==this.length){var o=new Uint8Array(n);o.set(this.buf),this.buf=o,this.length=n}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(t){this.realloc(4),Se(this.buf,t,this.pos),this.pos+=4},writeSFixed32:function(t){this.realloc(4),Se(this.buf,t,this.pos),this.pos+=4},writeFixed64:function(t){this.realloc(8),Se(this.buf,t&-1,this.pos),Se(this.buf,Math.floor(t*Kn),this.pos+4),this.pos+=8},writeSFixed64:function(t){this.realloc(8),Se(this.buf,t&-1,this.pos),Se(this.buf,Math.floor(t*Kn),this.pos+4),this.pos+=8},writeVarint:function(t){if(t=+t||0,t>268435455||t<0){Sr(t,this);return}this.realloc(4),this.buf[this.pos++]=t&127|(t>127?128:0),!(t<=127)&&(this.buf[this.pos++]=(t>>>=7)&127|(t>127?128:0),!(t<=127)&&(this.buf[this.pos++]=(t>>>=7)&127|(t>127?128:0),!(t<=127)&&(this.buf[this.pos++]=t>>>7&127)))},writeSVarint:function(t){this.writeVarint(t<0?-t*2-1:t*2)},writeBoolean:function(t){this.writeVarint(!!t)},writeString:function(t){t=String(t),this.realloc(t.length*4),this.pos++;var n=this.pos;this.pos=kr(this.buf,t,this.pos);var o=this.pos-n;o>=128&&gn(n,o,this),this.pos=n-1,this.writeVarint(o),this.pos+=o},writeFloat:function(t){this.realloc(4),Zi.write(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),Zi.write(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var n=t.length;this.writeVarint(n),this.realloc(n);for(var o=0;o<n;o++)this.buf[this.pos++]=t[o]},writeRawMessage:function(t,n){this.pos++;var o=this.pos;t(n,this);var s=this.pos-o;s>=128&&gn(o,s,this),this.pos=o-1,this.writeVarint(s),this.pos+=s},writeMessage:function(t,n,o){this.writeTag(t,j.Bytes),this.writeRawMessage(n,o)},writePackedVarint:function(t,n){n.length&&this.writeMessage(t,Ir,n)},writePackedSVarint:function(t,n){n.length&&this.writeMessage(t,xr,n)},writePackedBoolean:function(t,n){n.length&&this.writeMessage(t,Yr,n)},writePackedFloat:function(t,n){n.length&&this.writeMessage(t,Tr,n)},writePackedDouble:function(t,n){n.length&&this.writeMessage(t,Ur,n)},writePackedFixed32:function(t,n){n.length&&this.writeMessage(t,Jr,n)},writePackedSFixed32:function(t,n){n.length&&this.writeMessage(t,Cr,n)},writePackedFixed64:function(t,n){n.length&&this.writeMessage(t,Kr,n)},writePackedSFixed64:function(t,n){n.length&&this.writeMessage(t,gr,n)},writeBytesField:function(t,n){this.writeTag(t,j.Bytes),this.writeBytes(n)},writeFixed32Field:function(t,n){this.writeTag(t,j.Fixed32),this.writeFixed32(n)},writeSFixed32Field:function(t,n){this.writeTag(t,j.Fixed32),this.writeSFixed32(n)},writeFixed64Field:function(t,n){this.writeTag(t,j.Fixed64),this.writeFixed64(n)},writeSFixed64Field:function(t,n){this.writeTag(t,j.Fixed64),this.writeSFixed64(n)},writeVarintField:function(t,n){this.writeTag(t,j.Varint),this.writeVarint(n)},writeSVarintField:function(t,n){this.writeTag(t,j.Varint),this.writeSVarint(n)},writeStringField:function(t,n){this.writeTag(t,j.Bytes),this.writeString(n)},writeFloatField:function(t,n){this.writeTag(t,j.Fixed32),this.writeFloat(n)},writeDoubleField:function(t,n){this.writeTag(t,j.Fixed64),this.writeDouble(n)},writeBooleanField:function(t,n){this.writeVarintField(t,!!n)}};function fr(t,n,o){var s=o.buf,c,d;if(d=s[o.pos++],c=(d&112)>>4,d<128||(d=s[o.pos++],c|=(d&127)<<3,d<128)||(d=s[o.pos++],c|=(d&127)<<10,d<128)||(d=s[o.pos++],c|=(d&127)<<17,d<128)||(d=s[o.pos++],c|=(d&127)<<24,d<128)||(d=s[o.pos++],c|=(d&1)<<31,d<128))return fe(t,c,n);throw new Error("Expected varint not more than 10 bytes")}function wt(t){return t.type===j.Bytes?t.readVarint()+t.pos:t.pos+1}function fe(t,n,o){return o?n*4294967296+(t>>>0):(n>>>0)*4294967296+(t>>>0)}function Sr(t,n){var o,s;if(t>=0?(o=t%4294967296|0,s=t/4294967296|0):(o=~(-t%4294967296),s=~(-t/4294967296),o^4294967295?o=o+1|0:(o=0,s=s+1|0)),t>=18446744073709552e3||t<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");n.realloc(10),Lr(o,s,n),Fr(s,n)}function Lr(t,n,o){o.buf[o.pos++]=t&127|128,t>>>=7,o.buf[o.pos++]=t&127|128,t>>>=7,o.buf[o.pos++]=t&127|128,t>>>=7,o.buf[o.pos++]=t&127|128,t>>>=7,o.buf[o.pos]=t&127}function Fr(t,n){var o=(t&7)<<4;n.buf[n.pos++]|=o|((t>>>=3)?128:0),t&&(n.buf[n.pos++]=t&127|((t>>>=7)?128:0),t&&(n.buf[n.pos++]=t&127|((t>>>=7)?128:0),t&&(n.buf[n.pos++]=t&127|((t>>>=7)?128:0),t&&(n.buf[n.pos++]=t&127|((t>>>=7)?128:0),t&&(n.buf[n.pos++]=t&127)))))}function gn(t,n,o){var s=n<=16383?1:n<=2097151?2:n<=268435455?3:Math.floor(Math.log(n)/(Math.LN2*7));o.realloc(s);for(var c=o.pos-1;c>=t;c--)o.buf[c+s]=o.buf[c]}function Ir(t,n){for(var o=0;o<t.length;o++)n.writeVarint(t[o])}function xr(t,n){for(var o=0;o<t.length;o++)n.writeSVarint(t[o])}function Tr(t,n){for(var o=0;o<t.length;o++)n.writeFloat(t[o])}function Ur(t,n){for(var o=0;o<t.length;o++)n.writeDouble(t[o])}function Yr(t,n){for(var o=0;o<t.length;o++)n.writeBoolean(t[o])}function Jr(t,n){for(var o=0;o<t.length;o++)n.writeFixed32(t[o])}function Cr(t,n){for(var o=0;o<t.length;o++)n.writeSFixed32(t[o])}function Kr(t,n){for(var o=0;o<t.length;o++)n.writeFixed64(t[o])}function gr(t,n){for(var o=0;o<t.length;o++)n.writeSFixed64(t[o])}function Vi(t,n){return(t[n]|t[n+1]<<8|t[n+2]<<16)+t[n+3]*16777216}function Se(t,n,o){t[o]=n,t[o+1]=n>>>8,t[o+2]=n>>>16,t[o+3]=n>>>24}function Nn(t,n){return(t[n]|t[n+1]<<8|t[n+2]<<16)+(t[n+3]<<24)}function Nr(t,n,o){for(var s="",c=n;c<o;){var d=t[c],h=null,p=d>239?4:d>223?3:d>191?2:1;if(c+p>o)break;var y,S,P;p===1?d<128&&(h=d):p===2?(y=t[c+1],(y&192)===128&&(h=(d&31)<<6|y&63,h<=127&&(h=null))):p===3?(y=t[c+1],S=t[c+2],(y&192)===128&&(S&192)===128&&(h=(d&15)<<12|(y&63)<<6|S&63,(h<=2047||h>=55296&&h<=57343)&&(h=null))):p===4&&(y=t[c+1],S=t[c+2],P=t[c+3],(y&192)===128&&(S&192)===128&&(P&192)===128&&(h=(d&15)<<18|(y&63)<<12|(S&63)<<6|P&63,(h<=65535||h>=1114112)&&(h=null))),h===null?(h=65533,p=1):h>65535&&(h-=65536,s+=String.fromCharCode(h>>>10&1023|55296),h=56320|h&1023),s+=String.fromCharCode(h),c+=p}return s}function Mr(t,n,o){return Mc.decode(t.subarray(n,o))}function kr(t,n,o){for(var s=0,c,d;s<n.length;s++){if(c=n.charCodeAt(s),c>55295&&c<57344)if(d)if(c<56320){t[o++]=239,t[o++]=191,t[o++]=189,d=c;continue}else c=d-55296<<10|c-56320|65536,d=null;else{c>56319||s+1===n.length?(t[o++]=239,t[o++]=191,t[o++]=189):d=c;continue}else d&&(t[o++]=239,t[o++]=191,t[o++]=189,d=null);c<128?t[o++]=c:(c<2048?t[o++]=c>>6|192:(c<65536?t[o++]=c>>12|224:(t[o++]=c>>18|240,t[o++]=c>>12&63|128),t[o++]=c>>6&63|128),t[o++]=c&63|128)}return o}function Hr(t){return Object.keys(t)}function ht(t,n){return t??n}const zr=new wi(0,0);function Qr(t,n,o){return t.length===0||t[0].length===0?!1:t[0][0].distSqr(n)<=o**2}function Pr(t,n,o){if(t.length===0)return!1;const s=t[0],c=o/2;for(let d=0;d<s.length-1;d++){const h=s[d],p=s[d+1];if(Er(h,p,n,c,zr))return!0}return!1}function Er(t,n,o,s,c=new wi(0,0)){const d=t.distSqr(n);if(d===0)return!1;const h=((o.x-t.x)*(n.x-t.x)+(o.y-t.y)*(n.y-t.y))/d,p=Math.max(0,Math.min(1,h)),y=c;return y.x=t.x+p*(n.x-t.x),y.y=t.y+p*(n.y-t.y),o.distSqr(y)<=s**2}const wr=t=>{let n=0;for(let o=0;o<t.length;o++){const s=t.charCodeAt(o);n=(n<<5)-n+s,n&=n}return n.toString(16)},vr={marker:1,polyline:1,polygon:1,ellipsoid:1,ellipse:1,model:1,"3dtiles":1,box:1,photooverlay:1,resource:1,raster:1,heatMap:1,frustum:1,transition:1},Br=Hr(vr);var k=(t=>(t[t.VARIABLE=0]="VARIABLE",t[t.UNARY=1]="UNARY",t[t.BINARY=2]="BINARY",t[t.TERNARY=3]="TERNARY",t[t.CONDITIONAL=4]="CONDITIONAL",t[t.MEMBER=5]="MEMBER",t[t.FUNCTION_CALL=6]="FUNCTION_CALL",t[t.ARRAY=7]="ARRAY",t[t.REGEX=8]="REGEX",t[t.VARIABLE_IN_STRING=9]="VARIABLE_IN_STRING",t[t.LITERAL_NULL=10]="LITERAL_NULL",t[t.LITERAL_BOOLEAN=11]="LITERAL_BOOLEAN",t[t.LITERAL_NUMBER=12]="LITERAL_NUMBER",t[t.LITERAL_STRING=13]="LITERAL_STRING",t[t.LITERAL_COLOR=14]="LITERAL_COLOR",t[t.LITERAL_VECTOR=15]="LITERAL_VECTOR",t[t.LITERAL_REGEX=16]="LITERAL_REGEX",t[t.LITERAL_UNDEFINED=17]="LITERAL_UNDEFINED",t[t.BUILTIN_VARIABLE=18]="BUILTIN_VARIABLE",t))(k||{});const jr=["!","-","+"],Or=["+","-","*","/","%","===","!==",">",">=","<","<=","&&","||","!~","=~","==","!="],Dr=/\\/g,Ar="@#%",_r=/@#%/g,qr=/^#([0-9a-f])([0-9a-f])([0-9a-f])([0-9a-f])?$/i,$r=/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})?$/i,Mn={ALICEBLUE:"#F0F8FF",ANTIQUEWHITE:"#FAEBD7",AQUA:"#00FFFF",AQUAMARINE:"#7FFFD4",AZURE:"#F0FFFF",BEIGE:"#F5F5DC",BISQUE:"#FFE4C4",BLACK:"#000000",BLANCHEDALMOND:"#FFEBCD",BLUE:"#0000FF",BLUEVIOLET:"#8A2BE2",BROWN:"#A52A2A",BURLYWOOD:"#DEB887",CADETBLUE:"#5F9EA0",CHARTREUSE:"#7FFF00",CHOCOLATE:"#D2691E",CORAL:"#FF7F50",CORNFLOWERBLUE:"#6495ED",CORNSILK:"#FFF8DC",CRIMSON:"#DC143C",CYAN:"#00FFFF",DARKBLUE:"#00008B",DARKCYAN:"#008B8B",DARKGOLDENROD:"#B8860B",DARKGRAY:"#A9A9A9",DARKGREEN:"#006400",DARKGREY:"#A9A9A9",DARKKHAKI:"#BDB76B",DARKMAGENTA:"#8B008B",DARKOLIVEGREEN:"#556B2F",DARKORANGE:"#FF8C00",DARKORCHID:"#9932CC",DARKRED:"#8B0000",DARKSALMON:"#E9967A",DARKSEAGREEN:"#8FBC8F",DARKSLATEBLUE:"#483D8B",DARKSLATEGRAY:"#2F4F4F",DARKSLATEGREY:"#2F4F4F",DARKTURQUOISE:"#00CED1",DARKVIOLET:"#9400D3",DEEPPINK:"#FF1493",DEEPSKYBLUE:"#00BFFF",DIMGRAY:"#696969",DIMGREY:"#696969",DODGERBLUE:"#1E90FF",FIREBRICK:"#B22222",FLORALWHITE:"#FFFAF0",FORESTGREEN:"#228B22",FUCHSIA:"#FF00FF",GAINSBORO:"#DCDCDC",GHOSTWHITE:"#F8F8FF",GOLD:"#FFD700",GOLDENROD:"#DAA520",GRAY:"#808080",GREEN:"#008000",GREENYELLOW:"#ADFF2F",GREY:"#808080",HONEYDEW:"#F0FFF0",HOTPINK:"#FF69B4",INDIANRED:"#CD5C5C",INDIGO:"#4B0082",IVORY:"#FFFFF0",KHAKI:"#F0E68C",LAVENDER:"#E6E6FA",LAVENDAR_BLUSH:"#FFF0F5",LAWNGREEN:"#7CFC00",LEMONCHIFFON:"#FFFACD",LIGHTBLUE:"#ADD8E6",LIGHTCORAL:"#F08080",LIGHTCYAN:"#E0FFFF",LIGHTGOLDENRODYELLOW:"#FAFAD2",LIGHTGRAY:"#D3D3D3",LIGHTGREEN:"#90EE90",LIGHTGREY:"#D3D3D3",LIGHTPINK:"#FFB6C1",LIGHTSEAGREEN:"#20B2AA",LIGHTSKYBLUE:"#87CEFA",LIGHTSLATEGRAY:"#778899",LIGHTSLATEGREY:"#778899",LIGHTSTEELBLUE:"#B0C4DE",LIGHTYELLOW:"#FFFFE0",LIME:"#00FF00",LIMEGREEN:"#32CD32",LINEN:"#FAF0E6",MAGENTA:"#FF00FF",MAROON:"#800000",MEDIUMAQUAMARINE:"#66CDAA",MEDIUMBLUE:"#0000CD",MEDIUMORCHID:"#BA55D3",MEDIUMPURPLE:"#9370DB",MEDIUMSEAGREEN:"#3CB371",MEDIUMSLATEBLUE:"#7B68EE",MEDIUMSPRINGGREEN:"#00FA9A",MEDIUMTURQUOISE:"#48D1CC",MEDIUMVIOLETRED:"#C71585",MIDNIGHTBLUE:"#191970",MINTCREAM:"#F5FFFA",MISTYROSE:"#FFE4E1",MOCCASIN:"#FFE4B5",NAVAJOWHITE:"#FFDEAD",NAVY:"#000080",OLDLACE:"#FDF5E6",OLIVE:"#808000",OLIVEDRAB:"#6B8E23",ORANGE:"#FFA500",ORANGERED:"#FF4500",ORCHID:"#DA70D6",PALEGOLDENROD:"#EEE8AA",PALEGREEN:"#98FB98",PALETURQUOISE:"#AFEEEE",PALEVIOLETRED:"#DB7093",PAPAYAWHIP:"#FFEFD5",PEACHPUFF:"#FFDAB9",PERU:"#CD853F",PINK:"#FFC0CB",PLUM:"#DDA0DD",POWDERBLUE:"#B0E0E6",PURPLE:"#800080",RED:"#FF0000",ROSYBROWN:"#BC8F8F",ROYALBLUE:"#4169E1",SADDLEBROWN:"#8B4513",SALMON:"#FA8072",SANDYBROWN:"#F4A460",SEAGREEN:"#2E8B57",SEASHELL:"#FFF5EE",SIENNA:"#A0522D",SILVER:"#C0C0C0",SKYBLUE:"#87CEEB",SLATEBLUE:"#6A5ACD",SLATEGRAY:"#708090",SLATEGREY:"#708090",SNOW:"#FFFAFA",SPRINGGREEN:"#00FF7F",STEELBLUE:"#4682B4",TAN:"#D2B48C",TEAL:"#008080",THISTLE:"#D8BFD8",TOMATO:"#FF6347",TURQUOISE:"#40E0D0",VIOLET:"#EE82EE",WHEAT:"#F5DEB3",WHITE:"#FFFFFF",WHITESMOKE:"#F5F5F5",YELLOW:"#FFFF00",YELLOWGREEN:"#9ACD32"};function th(t){const n=El[t];return function(o){const s=this._left.evaluate(o),c=this._right.evaluate(o);return n(t,s,c)}}const El={atan2:we(Math.atan2,!1),pow:we(Math.pow,!1),min:we(Math.min,!0),max:we(Math.max,!0),startsWith:we(eh,!1)};function we(t,n){return function(o,s,c){if(n&&typeof c=="number"&&typeof s=="number"||typeof s=="number"&&typeof c=="number"||typeof s=="string"&&typeof c=="string")return t(s,c);throw new Error(`Function "${o}" requires vector or number arguments of matching types. Arguments are ${s} and ${c}.`)}}function eh(t,n){return t.startsWith(n)}function ih(t){const n=wl[t];return function(o){const s=this._left.evaluate(o);return n(t,s)}}const wl={abs:st(Math.abs),sqrt:st(Math.sqrt),cos:st(Math.cos),sin:st(Math.sin),tan:st(Math.tan),acos:st(Math.acos),asin:st(Math.asin),atan:st(Math.atan),radians:st(Cesium$1.Math.toRadians),degrees:st(Cesium$1.Math.toDegrees),sign:st(Cesium$1.Math.sign),floor:st(Math.floor),ceil:st(Math.ceil),round:st(Math.round),exp2:st(nh),log:st(Math.log),log2:st(ch),fract:st(lh)};function st(t){return function(n,o){if(typeof o=="number")return t(o);throw new Error(`Function "${n}" requires a vector or number argument. Argument is ${o}.`)}}function lh(t){return t-Math.floor(t)}function nh(t){return Math.pow(2,t)}function ch(t){return Cesium$1.Math.log2(t)}const dh=/^rgba?\(\s*([0-9.]+%?)\s*,\s*([0-9.]+%?)\s*,\s*([0-9.]+%?)(?:\s*,\s*([0-9.]+))?\s*\)$/i,oh=/^hsla?\(\s*([0-9.]+)\s*,\s*([0-9.]+%)\s*,\s*([0-9.]+%)(?:\s*,\s*([0-9.]+))?\s*\)$/i;class it{constructor(n,o,s,c){U(this,"red"),U(this,"green"),U(this,"blue"),U(this,"alpha"),this.red=ht(n,1),this.green=ht(o,1),this.blue=ht(s,1),this.alpha=ht(c,1)}static byteToFloat(n){return n/255}static floatToByte(n){return n===1?255:n*256|0}static fromCssColorString(n){n=n.replace(/\s/g,"");const o=sh(n);if(typeof o<"u")return o;let s=qr.exec(n);if(s!==null){const c=new it;return c.red=parseInt(s[1],16)/15,c.green=parseInt(s[2],16)/15,c.blue=parseInt(s[3],16)/15,c.alpha=parseInt(ht(s[4],"f"),16)/15,c}if(s=$r.exec(n),s!==null){const c=new it;return c.red=parseInt(s[1],16)/255,c.green=parseInt(s[2],16)/255,c.blue=parseInt(s[3],16)/255,c.alpha=parseInt(ht(s[4],"ff"),16)/255,c}if(s=dh.exec(n),s!==null){const c=new it;return c.red=parseFloat(s[1])/(s[1].substr(-1)==="%"?100:255),c.green=parseFloat(s[2])/(s[2].substr(-1)==="%"?100:255),c.blue=parseFloat(s[3])/(s[3].substr(-1)==="%"?100:255),c.alpha=parseFloat(ht(s[4],"1.0")),c}if(s=oh.exec(n),s!==null)return it.fromHsl(parseFloat(s[1])/360,parseFloat(s[2])/100,parseFloat(s[3])/100,parseFloat(ht(s[4],"1.0")))}static fromHsl(n,o,s,c){if(n=ht(n,0)%1,o=ht(o,0),s=ht(s,0),c=ht(c,1),n&&o&&s&&c){let d=s,h=s,p=s;const y=new it;if(o!==0){let S;s<.5?S=s*(1+o):S=s+o-s*o;const P=2*s-S;d=ll(P,S,n+1/3),h=ll(P,S,n),p=ll(P,S,n-1/3)}return typeof y>"u"?new it(d,h,p,c):(y.red=d,y.green=h,y.blue=p,y.alpha=c,y)}}toCssHexString(){let n=it.floatToByte(this.red).toString(16);n.length<2&&(n=`0${n}`);let o=it.floatToByte(this.green).toString(16);o.length<2&&(o=`0${o}`);let s=it.floatToByte(this.blue).toString(16);if(s.length<2&&(s=`0${s}`),this.alpha<1){let c=it.floatToByte(this.alpha).toString(16);return c.length<2&&(c=`0${c}`),`#${n}${o}${s}${c}`}return`#${n}${o}${s}`.toUpperCase()}static fromBytes(n,o,s,c){return n=this.byteToFloat(ht(n,255)),o=it.byteToFloat(ht(o,255)),s=it.byteToFloat(ht(s,255)),c=it.byteToFloat(ht(c,255)),new it(n,o,s,c)}}function sh(t){if(t=t.toUpperCase(),Mn[t])return it.fromCssColorString(Mn[t]);switch(t){case"TRANSPARENT":return new it(0,0,0,0);default:return}}function ll(t,n,o){return o<0&&(o+=1),o>1&&(o-=1),o*6<1?t+(n-t)*6*o:o*2<1?n:o*3<2?t+(n-t)*(2/3-o)*6:t}class w{constructor(n,o,s,c,d){U(this,"_type"),U(this,"_value"),U(this,"_left"),U(this,"_right"),U(this,"_test"),U(this,"evaluate"),this._type=n,this._value=o,this._left=s,this._right=c,this._test=d,this.setEvaluateFunction()}setEvaluateFunction(){const n=this._type,o=this._value;switch(n){case k.CONDITIONAL:this.evaluate=this._evaluateConditional;break;case k.FUNCTION_CALL:switch(o){case"toString":this.evaluate=this._evaluateToString;break}break;case k.UNARY:switch(o){case"!":this.evaluate=this._evaluateNot;break;case"-":this.evaluate=this._evaluateNegative;break;case"+":this.evaluate=this._evaluatePositive;break;case"isNaN":this.evaluate=this._evaluateNaN;break;case"isFinite":this.evaluate=this._evaluateIsFinite;break;case"Boolean":this.evaluate=this._evaluateBooleanConversion;break;case"Number":this.evaluate=this._evaluateNumberConversion;break;case"String":this.evaluate=this._evaluateStringConversion;break;default:typeof wl[o]<"u"&&(this.evaluate=ih(o));break}break;case k.BINARY:switch(o){case"+":this.evaluate=this._evaluatePlus;break;case"-":this.evaluate=this._evaluateMinus;break;case"*":this.evaluate=this._evaluateTimes;break;case"/":this.evaluate=this._evaluateDivide;break;case"%":this.evaluate=this._evaluateMod;break;case"===":this.evaluate=this._evaluateEqualsStrict;break;case"!==":this.evaluate=this._evaluateNotEqualsStrict;break;case"<":this.evaluate=this._evaluateLessThan;break;case"<=":this.evaluate=this._evaluateLessThanOrEquals;break;case">":this.evaluate=this._evaluateGreaterThan;break;case">=":this.evaluate=this._evaluateGreaterThanOrEquals;break;case"&&":this.evaluate=this._evaluateAnd;break;case"||":this.evaluate=this._evaluateOr;break;case"==":this.evaluate=this._evaluateEquals;break;case"!=":this.evaluate=this._evaluateNotEquals;break;default:typeof El[o]<"u"&&(this.evaluate=th(o));break}break;case k.MEMBER:o==="brackets"?this.evaluate=this._evaluateMemberBrackets:this.evaluate=this._evaluateMemberDot;break;case k.ARRAY:this.evaluate=this._evaluateArray;break;case k.VARIABLE:this.evaluate=this._evaluateVariable;break;case k.VARIABLE_IN_STRING:this.evaluate=this._evaluateVariableString;break;case k.LITERAL_COLOR:this.evaluate=this._evaluateLiteralColor;break;case k.LITERAL_STRING:this.evaluate=this._evaluateLiteralString;break;default:this.evaluate=this._evaluateLiteral;break}}_evaluateLiteral(){return this._value}_evaluateLiteralString(){return this._value}_evaluateVariableString(n){const o=/\${(.*?)}/g;let s=this._value,c=o.exec(s);for(;c!==null;){const d=c[0],h=c[1];let p=n==null?void 0:n.properties[h];typeof p>"u"&&(p=""),s=s.replace(d,p),c=o.exec(s)}return s}_evaluateVariable(n){let o;return n&&String(this._value)in n.properties?o=n.properties[String(this._value)]:String(this._value)==="id"?o=n==null?void 0:n.id:n&&String(this._value)==="rootProperties"&&(o=n.properties),typeof o>"u"&&(o=""),o}_evaluateMemberDot(n){if(kn(this._left))return n==null?void 0:n.properties[this._right.evaluate(n)];const o=this._left.evaluate(n);if(typeof o>"u")return;const s=this._right.evaluate(n);return o[s]}_evaluateMemberBrackets(n){if(kn(this._left))return n==null?void 0:n.properties[this._right.evaluate(n)];const o=this._left.evaluate(n);if(typeof o>"u")return;const s=this._right.evaluate(n);return o[s]}_evaluateArray(n){const o=[];for(let s=0;s<this._value.length;s++)o[s]=this._value[s].evaluate(n);return o}_evaluateNot(n){const o=this._left.evaluate(n);if(typeof o!="boolean")throw new Error(`Operator "!" requires a boolean argument. Argument is ${o}.`);return!o}_evaluateNegative(n){const o=this._left.evaluate(n);if(typeof o=="number")return-o;throw new Error(`Operator "-" requires a vector or number argument. Argument is ${o}.`)}_evaluatePositive(n){const o=this._left.evaluate(n);if(typeof o!="number")throw new Error(`Operator "+" requires a vector or number argument. Argument is ${o}.`);return o}_evaluateLessThan(n){const o=this._left.evaluate(n),s=this._right.evaluate(n);return typeof o!="number"||typeof s!="number"?(console.warn(`Operator "<" requires number arguments. Arguments are ${o} and ${s}.`),!1):o<s}_evaluateLessThanOrEquals(n){const o=this._left.evaluate(n),s=this._right.evaluate(n);return typeof o!="number"||typeof s!="number"?(console.warn(`Operator "<=" requires number arguments. Arguments are ${o} and ${s}.`),!1):o<=s}_evaluateGreaterThan(n){const o=this._left.evaluate(n),s=this._right.evaluate(n);return typeof o!="number"||typeof s!="number"?(console.warn(`Operator ">" requires number arguments. Arguments are ${o} and ${s}.`),!1):o>s}_evaluateGreaterThanOrEquals(n){const o=this._left.evaluate(n),s=this._right.evaluate(n);return typeof o!="number"||typeof s!="number"?(console.warn(`Operator ">=" requires number arguments. Arguments are ${o} and ${s}.`),!1):o>=s}_evaluateOr(n){const o=this._left.evaluate(n);if(typeof o!="boolean")return console.warn(`Operator "||" requires boolean arguments. First argument is ${o}.`),!1;if(o)return!0;const s=this._right.evaluate(n);return typeof s!="boolean"?(console.warn(`Operator "||" requires boolean arguments. Second argument is ${s}.`),!1):o||s}_evaluateAnd(n){const o=this._left.evaluate(n);if(typeof o!="boolean")return console.warn(`Operator "&&" requires boolean arguments. First argument is ${o}.`),!1;if(!o)return!1;const s=this._right.evaluate(n);return typeof s!="boolean"?(console.warn(`Operator "&&" requires boolean arguments. Second argument is ${s}.`),!1):o&&s}_evaluatePlus(n){const o=this._left.evaluate(n),s=this._right.evaluate(n);if(typeof o=="number"&&typeof s=="number")return o+s;throw new Error(`Operator "+" requires vector or number arguments of matching types, or at least one string argument. Arguments are ${o} and ${s}.`)}_evaluateMinus(n){const o=this._left.evaluate(n),s=this._right.evaluate(n);if(typeof o=="number"&&typeof s=="number")return o-s;throw new Error(`Operator "-" requires vector or number arguments of matching types. Arguments are ${o} and ${s}.`)}_evaluateTimes(n){const o=this._left.evaluate(n),s=this._right.evaluate(n);if(typeof o=="number"&&typeof s=="number")return o*s;throw new Error(`Operator "*" requires vector or number arguments. If both arguments are vectors they must be matching types. Arguments are ${o} and ${s}.`)}_evaluateDivide(n){const o=this._left.evaluate(n),s=this._right.evaluate(n);if(typeof o=="number"&&typeof s=="number")return o/s;throw new Error(`Operator "/" requires vector or number arguments of matching types, or a number as the second argument. Arguments are ${o} and ${s}.`)}_evaluateMod(n){const o=this._left.evaluate(n),s=this._right.evaluate(n);if(typeof o=="number"&&typeof s=="number")return o%s;throw new Error(`Operator "%" requires vector or number arguments of matching types. Arguments are ${o} and ${s}.`)}_evaluateEqualsStrict(n){const o=this._left.evaluate(n),s=this._right.evaluate(n);return o===s}_evaluateNotEqualsStrict(n){const o=this._left.evaluate(n),s=this._right.evaluate(n);return o!==s}_evaluateConditional(n){const o=this._test.evaluate(n);if(typeof o!="boolean")throw new Error(`Conditional argument of conditional expression must be a boolean. Argument is ${o}.`);return o?this._left.evaluate(n):this._right.evaluate(n)}_evaluateNaN(n){return isNaN(this._left.evaluate(n))}_evaluateIsFinite(n){return isFinite(this._left.evaluate(n))}_evaluateBooleanConversion(n){return!!this._left.evaluate(n)}_evaluateNumberConversion(n){const o=ah(this._left.evaluate(n));return Number(o)}_evaluateStringConversion(n){return String(this._left.evaluate(n))}_evaluateToString(n){const o=this._left.evaluate(n);if(o instanceof RegExp)return String(o);throw new Error(`Unexpected function call "${this._value}".`)}_evaluateLiteralColor(n){const o=this._left;let s=new it;if(this._value==="color")if(typeof o>"u")s=it.fromBytes(255,255,255,255);else if(o.length>1){const c=it.fromCssColorString(o[0].evaluate(n));if(c)s=c;else throw new Error(`wrong literalColor call "${this._value}, ${o}}"`);s.alpha=o[1].evaluate(n)}else{const c=it.fromCssColorString(o[0].evaluate(n));if(c)s=c;else throw new Error(`wrong literalColor call "${this._value}, ${o}}"`)}else if(this._value==="rgb")s=it.fromBytes(o[0].evaluate(n),o[1].evaluate(n),o[2].evaluate(n),255);else if(this._value==="rgba"){const c=o[3].evaluate(n)*255;s=it.fromBytes(o[0].evaluate(n),o[1].evaluate(n),o[2].evaluate(n),c)}else if(this._value==="hsl"){const c=it.fromHsl(o[0].evaluate(n),o[1].evaluate(n),o[2].evaluate(n),1);c&&(s=c)}else if(this._value==="hsla"){const c=it.fromHsl(o[0].evaluate(n),o[1].evaluate(n),o[2].evaluate(n),o[3].evaluate(n));c&&(s=c)}return s.toCssHexString()}_evaluateEquals(n){const o=this._left.evaluate(n),s=this._right.evaluate(n);return Ft(o)&&!Ft(s)?o.includes(s):Ft(s)&&!Ft(o)?s.includes(o):(Ft(s)&&Ft(o)&&console.error("Equals left and right both can't be array at the same time"),o==s)}_evaluateNotEquals(n){const o=this._left.evaluate(n),s=this._right.evaluate(n);return Ft(o)&&!Ft(s)?!o.includes(s):Ft(s)&&!Ft(o)?!s.includes(o):(Ft(s)&&Ft(o)&&console.error("NotEquals left and right both can't be array at the same time"),o!=s)}}function ah(t){if(typeof t!="string")return t;const n=["%"];for(const o of n)if(t.endsWith(o))return t.slice(0,-o.length).trim();return t.trim()}function kn(t){return t._value==="feature"}function Ft(t){return Array.isArray(t)}function uh(t,n,o){return n=$e(n),Vh(t,vl()?Reflect.construct(n,o,$e(t).constructor):n.apply(t,o))}function kc(t,n,o){if(vl())return Reflect.construct.apply(null,arguments);var s=[null];s.push.apply(s,n);var c=new(t.bind.apply(t,s));return o&&ti(c,o.prototype),c}function vl(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(vl=function(){return!!t})()}function rh(t,n){if(typeof t!="object"||!t)return t;var o=t[Symbol.toPrimitive];if(o!==void 0){var s=o.call(t,n);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}function hh(t){var n=rh(t,"string");return typeof n=="symbol"?n:String(n)}function Qt(t){return Qt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Qt(t)}function Hc(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}function Hn(t,n){for(var o=0;o<n.length;o++){var s=n[o];s.enumerable=s.enumerable||!1,s.configurable=!0,"value"in s&&(s.writable=!0),Object.defineProperty(t,hh(s.key),s)}}function zc(t,n,o){return n&&Hn(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),t}function bh(t,n){if(typeof n!="function"&&n!==null)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(n&&n.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),n&&ti(t,n)}function $e(t){return $e=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},$e(t)}function ti(t,n){return ti=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(o,s){return o.__proto__=s,o},ti(t,n)}function mh(t){try{return Function.toString.call(t).indexOf("[native code]")!==-1}catch{return typeof t=="function"}}function Vl(t){var n=typeof Map=="function"?new Map:void 0;return Vl=function(o){if(o===null||!mh(o))return o;if(typeof o!="function")throw new TypeError("Super expression must either be null or a function");if(typeof n<"u"){if(n.has(o))return n.get(o);n.set(o,s)}function s(){return kc(o,arguments,$e(this).constructor)}return s.prototype=Object.create(o.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}}),ti(s,o)},Vl(t)}function Zh(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function Vh(t,n){if(n&&(typeof n=="object"||typeof n=="function"))return n;if(n!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Zh(t)}function Xh(t){return Gh(t)||ph(t)||Qc(t)||yh()}function Gh(t){if(Array.isArray(t))return Xl(t)}function ph(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function Qc(t,n){if(t){if(typeof t=="string")return Xl(t,n);var o=Object.prototype.toString.call(t).slice(8,-1);if(o==="Object"&&t.constructor&&(o=t.constructor.name),o==="Map"||o==="Set")return Array.from(t);if(o==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return Xl(t,n)}}function Xl(t,n){(n==null||n>t.length)&&(n=t.length);for(var o=0,s=new Array(n);o<n;o++)s[o]=t[o];return s}function yh(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
6098
6098
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Rh(t,n){var o=typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(!o){if(Array.isArray(t)||(o=Qc(t))||n){o&&(t=o);var s=0,c=function(){};return{s:c,n:function(){return s>=t.length?{done:!0}:{done:!1,value:t[s++]}},e:function(y){throw y},f:c}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
@@ -6742,7 +6742,7 @@ vec3 getTurboColormap(const float v) {
|
|
|
6742
6742
|
${reconstructPosition}
|
|
6743
6743
|
${turboColorMap}
|
|
6744
6744
|
${ambientOcclusionModulate}
|
|
6745
|
-
`,uniforms:{...pick(P,["color","frustumLength","blackPoint","whitePoint","gamma"]),globeDepthTexture:()=>(y==null?void 0:y())??F._depthTexture}});if(c){const N=createBilateralFilterStage({prefix:t,outputType:h,useGlobeDepth:p,getGlobeDepthTexture:y,uniforms:{textureScale:n,...pick(P,["frustumLength","normalExponent","depthExponent"])}}),z=new Cesium$1.PostProcessStageComposite({name:`${t}_ambient_occlusion_generate_and_filter`,stages:[L,N]});return F.uniforms.ambientOcclusionTexture=z.name,new Cesium$1.PostProcessStageComposite({name:`${t}_ambient_occlusion`,stages:[z,F],inputPreviousStageTexture:!1,uniforms:createUniforms([{stage:L,uniforms:["intensity","maxRadius","bias","frustumLength","focalLength"]},{stage:N,uniforms:["frustumLength","normalExponent","depthExponent"]},{stage:F,uniforms:["color","blackPoint","whitePoint","gamma"]}])})}else return F.uniforms.ambientOcclusionTexture=L.name,new Cesium$1.PostProcessStageComposite({name:`${t}_ambient_occlusion`,stages:[L,F],inputPreviousStageTexture:!1,uniforms:createUniforms([{stage:L,uniforms:["intensity","maxRadius","bias","frustumLength","focalLength"]},{stage:F,uniforms:["color","blackPoint","whitePoint","gamma"]}])})}const AmbientOcclusionStage=({enabled:t=!0,textureScale:n,directions:o,steps:s,denoise:c,accurateNormalReconstruction:d,outputType:h,useGlobeDepth:p,...y})=>{const{viewer:S}=$e$1(),P=S==null?void 0:S.scene,L=useInstance({owner:P==null?void 0:P.postProcessStages,keys:[n,s,o,c,d,h,p],create:()=>{const F=createAmbientOcclusionStage({textureScale:n,steps:s,directions:o,denoise:c,accurateNormalReconstruction:d,outputType:h,useGlobeDepth:p,getGlobeDepthTexture:()=>P.context.uniformState.globeDepthTexture,uniforms:y});return F.enabled=t,F},transferOwnership:(F,N)=>(N==null||N.add(F),()=>{N==null||N.remove(F)})});return L.enabled=t,Object.assign(L.uniforms,y),P==null||P.requestRender(),usePreRender(()=>{const F=P==null?void 0:P.camera.frustum;if(F instanceof Cesium$1.PerspectiveFrustum){const N=1/Math.tan(F.fovy/2);L.uniforms.focalLength.x=N*F.aspectRatio,L.uniforms.focalLength.y=N}}),null},AmbientOcclusion=t=>{const n=$e$1(),[o,s]=React.useState(!1);return usePreRender(()=>{const c=n.scene;s(!(c!=null&&c.globe.depthTestAgainstTerrain));const{globeHeight:d}=c;if(!c||d==null)return;const h=c.camera.positionCartographic.height-d,p=c==null?void 0:c.camera.frustum;p instanceof Cesium$1.PerspectiveFrustum&&(c.camera.frustum.near=Cesium$1.Math.clamp(h-1,1,5)/Math.tan(p.fov/2))}),jsxRuntimeExports.jsx(AmbientOcclusionStage,{...t,useGlobeDepth:o})};var AmbientOcclusionOutputType=(t=>(t[t.Occlusion=1]="Occlusion",t[t.Normal=2]="Normal",t[t.Depth=3]="Depth",t[t.Weight=4]="Weight",t[t.Shade=5]="Shade",t))(AmbientOcclusionOutputType||{});const AMBIENT_OCCLUSION_QUALITY={low:{directions:4,steps:4,textureScale:.5,maxRadius:30},medium:{directions:4,steps:8,textureScale:.5,maxRadius:40},high:{directions:8,steps:8,textureScale:1,maxRadius:40},extreme:{directions:16,steps:16,textureScale:1,maxRadius:40}},DEFAULT_SKETCH_COLOR="#00bebe",DEFAULT_EDIT_COLOR="#3B3CD0",SELECTED_EDIT_COLOR="#FF9900",ADDING_POINT_COLOR="#3B3CD0";let drawPointImage,editPointImage,selectedPointImage,addingPointImage;const ControlPoint=({position:t,clampToGround:n=!1,index:o,isEditing:s,isSelected:c,isAddingPoint:d,isExtrudedControlPoint:h,handleControlPointMouseEvent:p})=>{const y=React.useRef(t);y.current=t;const S=useConstant$2(()=>new CallbackProperty((N,z)=>"getValue"in y.current?y.current.getValue(N,z):y.current,!1)),P=React.useMemo(()=>({position:S,billboard:{image:s?d?getAddingPointImage():c?getSelectedPointImage():getEditPointImage():getDrawPointImage(),width:s?16:8,height:s?16:8,heightReference:n?HeightReference$1.CLAMP_TO_GROUND:HeightReference$1.NONE,disableDepthTestDistance:1/0}}),[n,S,d,s,c]),L=React.useCallback(()=>{p==null||p(o,!!h,"mousedown")},[o,h,p]),F=React.useCallback(()=>{p==null||p(o,!!h,"click")},[o,h,p]);return jsxRuntimeExports.jsx(Is$1,{...P,onMouseDown:L,onClick:F})};function getDrawPointImage(){if(drawPointImage!=null)return drawPointImage;drawPointImage=document.createElement("canvas"),drawPointImage.width=16,drawPointImage.height=16;const t=drawPointImage.getContext("2d");return invariant$1(t!=null),t.fillStyle="white",t.fillRect(3,3,10,10),t.strokeStyle="black",t.lineWidth=2,t.strokeRect(3,3,10,10),drawPointImage}function getEditPointImage(){return getImage(editPointImage,{size:32,color:"white",strokeColor:DEFAULT_EDIT_COLOR})}function getSelectedPointImage(){return getImage(selectedPointImage,{size:32,color:"white",strokeColor:SELECTED_EDIT_COLOR})}function getAddingPointImage(){if(addingPointImage!=null)return addingPointImage;addingPointImage=document.createElement("canvas"),addingPointImage.width=32,addingPointImage.height=32;const t=addingPointImage.getContext("2d");return invariant$1(t!=null),t.beginPath(),t.arc(16,16,12,0,2*Math.PI),t.fillStyle="white",t.fill(),t.strokeStyle=ADDING_POINT_COLOR,t.lineWidth=4,t.stroke(),t.beginPath(),t.moveTo(16,8),t.lineTo(16,24),t.stroke(),t.moveTo(8,16),t.lineTo(24,16),t.stroke(),addingPointImage}function getImage(t,n){if(t!=null)return t;t=document.createElement("canvas"),t.width=n.size,t.height=n.size;const o=t.getContext("2d");return invariant$1(o!=null),o.beginPath(),o.arc(n.size/2,n.size/2,n.size/2-4,0,2*Math.PI),o.fillStyle=n.color,o.fill(),o.strokeStyle=n.strokeColor,o.lineWidth=4,o.stroke(),t}function assignForwardedRef(t,n){if(typeof t=="function")return t(n),()=>{t(null)};if(t!=null)return t.current=n,()=>{t.current=null}}const Entity=React.memo(React.forwardRef(({entities:t,...n},o)=>{const{viewer:s}=$e$1(),c=s==null?void 0:s.scene,d=s==null?void 0:s.entities,h=t??d,[p,y]=React.useState(()=>new Entity$1(n));return React.useEffect(()=>{y(new Entity$1(n))},[n.id]),React.useEffect(()=>(h==null||h.add(p),()=>{h==null||h.remove(p),c==null||c.requestRender()}),[c,h,p]),React.useEffect(()=>assignForwardedRef(o,p),[o,p]),Object.assign(p,omit(n,"id")),c==null||c.requestRender(),null})),textStyle={padding:"5px",color:"#fff",backgroundColor:"#000",borderRadius:"5px",lineHeight:1},MeasurementText=({children:t})=>jsxRuntimeExports.jsx("div",{style:textStyle,children:t}),MotionConfigContext=React.createContext({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"}),MotionContext=React.createContext({}),PresenceContext=React.createContext(null),isBrowser=typeof document<"u",useIsomorphicLayoutEffect$1=isBrowser?React.useLayoutEffect:React.useEffect,LazyContext=React.createContext({strict:!1}),camelToDash=t=>t.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),optimizedAppearDataId="framerAppearId",optimizedAppearDataAttribute="data-"+camelToDash(optimizedAppearDataId),MotionGlobalConfig={skipAnimations:!1,useManualTiming:!1};class Queue{constructor(){this.order=[],this.scheduled=new Set}add(n){if(!this.scheduled.has(n))return this.scheduled.add(n),this.order.push(n),!0}remove(n){const o=this.order.indexOf(n);o!==-1&&(this.order.splice(o,1),this.scheduled.delete(n))}clear(){this.order.length=0,this.scheduled.clear()}}function createRenderStep(t){let n=new Queue,o=new Queue,s=0,c=!1,d=!1;const h=new WeakSet,p={schedule:(y,S=!1,P=!1)=>{const L=P&&c,F=L?n:o;return S&&h.add(y),F.add(y)&&L&&c&&(s=n.order.length),y},cancel:y=>{o.remove(y),h.delete(y)},process:y=>{if(c){d=!0;return}if(c=!0,[n,o]=[o,n],o.clear(),s=n.order.length,s)for(let S=0;S<s;S++){const P=n.order[S];h.has(P)&&(p.schedule(P),t()),P(y)}c=!1,d&&(d=!1,p.process(y))}};return p}const stepsOrder=["read","resolveKeyframes","update","preRender","render","postRender"],maxElapsed=40;function createRenderBatcher(t,n){let o=!1,s=!0;const c={delta:0,timestamp:0,isProcessing:!1},d=stepsOrder.reduce((L,F)=>(L[F]=createRenderStep(()=>o=!0),L),{}),h=L=>{d[L].process(c)},p=()=>{const L=performance.now();o=!1,c.delta=s?1e3/60:Math.max(Math.min(L-c.timestamp,maxElapsed),1),c.timestamp=L,c.isProcessing=!0,stepsOrder.forEach(h),c.isProcessing=!1,o&&n&&(s=!1,t(p))},y=()=>{o=!0,s=!0,c.isProcessing||t(p)};return{schedule:stepsOrder.reduce((L,F)=>{const N=d[F];return L[F]=(z,W=!1,nt=!1)=>(o||y(),N.schedule(z,W,nt)),L},{}),cancel:L=>stepsOrder.forEach(F=>d[F].cancel(L)),state:c,steps:d}}const{schedule:microtask,cancel:cancelMicrotask}=createRenderBatcher(queueMicrotask,!1);function useVisualElement(t,n,o,s){const{visualElement:c}=React.useContext(MotionContext),d=React.useContext(LazyContext),h=React.useContext(PresenceContext),p=React.useContext(MotionConfigContext).reducedMotion,y=React.useRef();s=s||d.renderer,!y.current&&s&&(y.current=s(t,{visualState:n,parent:c,props:o,presenceContext:h,blockInitialAnimation:h?h.initial===!1:!1,reducedMotionConfig:p}));const S=y.current;React.useInsertionEffect(()=>{S&&S.update(o,h)});const P=React.useRef(!!(o[optimizedAppearDataAttribute]&&!window.HandoffComplete));return useIsomorphicLayoutEffect$1(()=>{S&&(microtask.postRender(S.render),P.current&&S.animationState&&S.animationState.animateChanges())}),React.useEffect(()=>{S&&(S.updateFeatures(),!P.current&&S.animationState&&S.animationState.animateChanges(),P.current&&(P.current=!1,window.HandoffComplete=!0))}),S}function isRefObject(t){return t&&typeof t=="object"&&Object.prototype.hasOwnProperty.call(t,"current")}function useMotionRef(t,n,o){return React.useCallback(s=>{s&&t.mount&&t.mount(s),n&&(s?n.mount(s):n.unmount()),o&&(typeof o=="function"?o(s):isRefObject(o)&&(o.current=s))},[n])}function isVariantLabel(t){return typeof t=="string"||Array.isArray(t)}function isAnimationControls(t){return t!==null&&typeof t=="object"&&typeof t.start=="function"}const variantPriorityOrder=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],variantProps=["initial",...variantPriorityOrder];function isControllingVariants(t){return isAnimationControls(t.animate)||variantProps.some(n=>isVariantLabel(t[n]))}function isVariantNode(t){return!!(isControllingVariants(t)||t.variants)}function getCurrentTreeVariants(t,n){if(isControllingVariants(t)){const{initial:o,animate:s}=t;return{initial:o===!1||isVariantLabel(o)?o:void 0,animate:isVariantLabel(s)?s:void 0}}return t.inherit!==!1?n:{}}function useCreateMotionContext(t){const{initial:n,animate:o}=getCurrentTreeVariants(t,React.useContext(MotionContext));return React.useMemo(()=>({initial:n,animate:o}),[variantLabelsAsDependency(n),variantLabelsAsDependency(o)])}function variantLabelsAsDependency(t){return Array.isArray(t)?t.join(" "):t}const featureProps={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"]},featureDefinitions={};for(const t in featureProps)featureDefinitions[t]={isEnabled:n=>featureProps[t].some(o=>!!n[o])};function loadFeatures(t){for(const n in t)featureDefinitions[n]={...featureDefinitions[n],...t[n]}}const LayoutGroupContext=React.createContext({}),SwitchLayoutGroupContext=React.createContext({}),motionComponentSymbol=Symbol.for("motionComponentSymbol");function createMotionComponent({preloadedFeatures:t,createVisualElement:n,useRender:o,useVisualState:s,Component:c}){t&&loadFeatures(t);function d(p,y){let S;const P={...React.useContext(MotionConfigContext),...p,layoutId:useLayoutId(p)},{isStatic:L}=P,F=useCreateMotionContext(p),N=s(p,L);if(!L&&isBrowser){F.visualElement=useVisualElement(c,N,P,n);const z=React.useContext(SwitchLayoutGroupContext),W=React.useContext(LazyContext).strict;F.visualElement&&(S=F.visualElement.loadFeatures(P,W,t,z))}return React__namespace.createElement(MotionContext.Provider,{value:F},S&&F.visualElement?React__namespace.createElement(S,{visualElement:F.visualElement,...P}):null,o(c,p,useMotionRef(N,F.visualElement,y),N,L,F.visualElement))}const h=React.forwardRef(d);return h[motionComponentSymbol]=c,h}function useLayoutId({layoutId:t}){const n=React.useContext(LayoutGroupContext).id;return n&&t!==void 0?n+"-"+t:t}function createMotionProxy(t){function n(s,c={}){return createMotionComponent(t(s,c))}if(typeof Proxy>"u")return n;const o=new Map;return new Proxy(n,{get:(s,c)=>(o.has(c)||o.set(c,n(c)),o.get(c))})}const lowercaseSVGElements=["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 isSVGComponent(t){return typeof t!="string"||t.includes("-")?!1:!!(lowercaseSVGElements.indexOf(t)>-1||/[A-Z]/u.test(t))}const scaleCorrectors={};function addScaleCorrector(t){Object.assign(scaleCorrectors,t)}const transformPropOrder=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],transformProps=new Set(transformPropOrder);function isForcedMotionValue(t,{layout:n,layoutId:o}){return transformProps.has(t)||t.startsWith("origin")||(n||o!==void 0)&&(!!scaleCorrectors[t]||t==="opacity")}const isMotionValue=t=>!!(t&&t.getVelocity),translateAlias={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},numTransforms=transformPropOrder.length;function buildTransform(t,{enableHardwareAcceleration:n=!0,allowTransformNone:o=!0},s,c){let d="";for(let h=0;h<numTransforms;h++){const p=transformPropOrder[h];if(t[p]!==void 0){const y=translateAlias[p]||p;d+=`${y}(${t[p]}) `}}return n&&!t.z&&(d+="translateZ(0)"),d=d.trim(),c?d=c(t,s?"":d):o&&s&&(d="none"),d}const checkStringStartsWith=t=>n=>typeof n=="string"&&n.startsWith(t),isCSSVariableName=checkStringStartsWith("--"),startsAsVariableToken=checkStringStartsWith("var(--"),isCSSVariableToken=t=>startsAsVariableToken(t)?singleCssVariableRegex.test(t.split("/*")[0].trim()):!1,singleCssVariableRegex=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,getValueAsType=(t,n)=>n&&typeof t=="number"?n.transform(t):t,clamp=(t,n,o)=>o>n?n:o<t?t:o,number={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},alpha={...number,transform:t=>clamp(0,1,t)},scale={...number,default:1},sanitize=t=>Math.round(t*1e5)/1e5,floatRegex=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu,colorRegex=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu,singleColorRegex=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu;function isString$1(t){return typeof t=="string"}const createUnitType=t=>({test:n=>isString$1(n)&&n.endsWith(t)&&n.split(" ").length===1,parse:parseFloat,transform:n=>`${n}${t}`}),degrees=createUnitType("deg"),percent=createUnitType("%"),px=createUnitType("px"),vh=createUnitType("vh"),vw=createUnitType("vw"),progressPercentage={...percent,parse:t=>percent.parse(t)/100,transform:t=>percent.transform(t*100)},int={...number,transform:Math.round},numberValueTypes={borderWidth:px,borderTopWidth:px,borderRightWidth:px,borderBottomWidth:px,borderLeftWidth:px,borderRadius:px,radius:px,borderTopLeftRadius:px,borderTopRightRadius:px,borderBottomRightRadius:px,borderBottomLeftRadius:px,width:px,maxWidth:px,height:px,maxHeight:px,size:px,top:px,right:px,bottom:px,left:px,padding:px,paddingTop:px,paddingRight:px,paddingBottom:px,paddingLeft:px,margin:px,marginTop:px,marginRight:px,marginBottom:px,marginLeft:px,rotate:degrees,rotateX:degrees,rotateY:degrees,rotateZ:degrees,scale,scaleX:scale,scaleY:scale,scaleZ:scale,skew:degrees,skewX:degrees,skewY:degrees,distance:px,translateX:px,translateY:px,translateZ:px,x:px,y:px,z:px,perspective:px,transformPerspective:px,opacity:alpha,originX:progressPercentage,originY:progressPercentage,originZ:px,zIndex:int,backgroundPositionX:px,backgroundPositionY:px,fillOpacity:alpha,strokeOpacity:alpha,numOctaves:int};function buildHTMLStyles(t,n,o,s){const{style:c,vars:d,transform:h,transformOrigin:p}=t;let y=!1,S=!1,P=!0;for(const L in n){const F=n[L];if(isCSSVariableName(L)){d[L]=F;continue}const N=numberValueTypes[L],z=getValueAsType(F,N);if(transformProps.has(L)){if(y=!0,h[L]=z,!P)continue;F!==(N.default||0)&&(P=!1)}else L.startsWith("origin")?(S=!0,p[L]=z):c[L]=z}if(n.transform||(y||s?c.transform=buildTransform(t.transform,o,P,s):c.transform&&(c.transform="none")),S){const{originX:L="50%",originY:F="50%",originZ:N=0}=p;c.transformOrigin=`${L} ${F} ${N}`}}const createHtmlRenderState=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function copyRawValuesOnly(t,n,o){for(const s in n)!isMotionValue(n[s])&&!isForcedMotionValue(s,o)&&(t[s]=n[s])}function useInitialMotionValues({transformTemplate:t},n,o){return React.useMemo(()=>{const s=createHtmlRenderState();return buildHTMLStyles(s,n,{enableHardwareAcceleration:!o},t),Object.assign({},s.vars,s.style)},[n])}function useStyle(t,n,o){const s=t.style||{},c={};return copyRawValuesOnly(c,s,t),Object.assign(c,useInitialMotionValues(t,n,o)),c}function useHTMLProps(t,n,o){const s={},c=useStyle(t,n,o);return t.drag&&t.dragListener!==!1&&(s.draggable=!1,c.userSelect=c.WebkitUserSelect=c.WebkitTouchCallout="none",c.touchAction=t.drag===!0?"none":`pan-${t.drag==="x"?"y":"x"}`),t.tabIndex===void 0&&(t.onTap||t.onTapStart||t.whileTap)&&(s.tabIndex=0),s.style=c,s}const validMotionProps=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","ignoreStrict","viewport"]);function isValidMotionProp(t){return t.startsWith("while")||t.startsWith("drag")&&t!=="draggable"||t.startsWith("layout")||t.startsWith("onTap")||t.startsWith("onPan")||t.startsWith("onLayout")||validMotionProps.has(t)}let shouldForward=t=>!isValidMotionProp(t);function loadExternalIsValidProp(t){t&&(shouldForward=n=>n.startsWith("on")?!isValidMotionProp(n):t(n))}try{loadExternalIsValidProp(require("@emotion/is-prop-valid").default)}catch(t){}function filterProps(t,n,o){const s={};for(const c in t)c==="values"&&typeof t.values=="object"||(shouldForward(c)||o===!0&&isValidMotionProp(c)||!n&&!isValidMotionProp(c)||t.draggable&&c.startsWith("onDrag"))&&(s[c]=t[c]);return s}function calcOrigin$1(t,n,o){return typeof t=="string"?t:px.transform(n+o*t)}function calcSVGTransformOrigin(t,n,o){const s=calcOrigin$1(n,t.x,t.width),c=calcOrigin$1(o,t.y,t.height);return`${s} ${c}`}const dashKeys={offset:"stroke-dashoffset",array:"stroke-dasharray"},camelKeys={offset:"strokeDashoffset",array:"strokeDasharray"};function buildSVGPath(t,n,o=1,s=0,c=!0){t.pathLength=1;const d=c?dashKeys:camelKeys;t[d.offset]=px.transform(-s);const h=px.transform(n),p=px.transform(o);t[d.array]=`${h} ${p}`}function buildSVGAttrs(t,{attrX:n,attrY:o,attrScale:s,originX:c,originY:d,pathLength:h,pathSpacing:p=1,pathOffset:y=0,...S},P,L,F){if(buildHTMLStyles(t,S,P,F),L){t.style.viewBox&&(t.attrs.viewBox=t.style.viewBox);return}t.attrs=t.style,t.style={};const{attrs:N,style:z,dimensions:W}=t;N.transform&&(W&&(z.transform=N.transform),delete N.transform),W&&(c!==void 0||d!==void 0||z.transform)&&(z.transformOrigin=calcSVGTransformOrigin(W,c!==void 0?c:.5,d!==void 0?d:.5)),n!==void 0&&(N.x=n),o!==void 0&&(N.y=o),s!==void 0&&(N.scale=s),h!==void 0&&buildSVGPath(N,h,p,y,!1)}const createSvgRenderState=()=>({...createHtmlRenderState(),attrs:{}}),isSVGTag=t=>typeof t=="string"&&t.toLowerCase()==="svg";function useSVGProps(t,n,o,s){const c=React.useMemo(()=>{const d=createSvgRenderState();return buildSVGAttrs(d,n,{enableHardwareAcceleration:!1},isSVGTag(s),t.transformTemplate),{...d.attrs,style:{...d.style}}},[n]);if(t.style){const d={};copyRawValuesOnly(d,t.style,t),c.style={...d,...c.style}}return c}function createUseRender(t=!1){return(o,s,c,{latestValues:d},h)=>{const y=(isSVGComponent(o)?useSVGProps:useHTMLProps)(s,d,h,o),S=filterProps(s,typeof o=="string",t),P=o!==React.Fragment?{...S,...y,ref:c}:{},{children:L}=s,F=React.useMemo(()=>isMotionValue(L)?L.get():L,[L]);return React.createElement(o,{...P,children:F})}}function renderHTML(t,{style:n,vars:o},s,c){Object.assign(t.style,n,c&&c.getProjectionStyles(s));for(const d in o)t.style.setProperty(d,o[d])}const camelCaseAttributes=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"]);function renderSVG(t,n,o,s){renderHTML(t,n,void 0,s);for(const c in n.attrs)t.setAttribute(camelCaseAttributes.has(c)?c:camelToDash(c),n.attrs[c])}function scrapeMotionValuesFromProps$1(t,n,o){var s;const{style:c}=t,d={};for(const h in c)(isMotionValue(c[h])||n.style&&isMotionValue(n.style[h])||isForcedMotionValue(h,t)||((s=o==null?void 0:o.getValue(h))===null||s===void 0?void 0:s.liveStyle)!==void 0)&&(d[h]=c[h]);return d}function scrapeMotionValuesFromProps(t,n,o){const s=scrapeMotionValuesFromProps$1(t,n,o);for(const c in t)if(isMotionValue(t[c])||isMotionValue(n[c])){const d=transformPropOrder.indexOf(c)!==-1?"attr"+c.charAt(0).toUpperCase()+c.substring(1):c;s[d]=t[c]}return s}function resolveVariantFromProps(t,n,o,s={},c={}){return typeof n=="function"&&(n=n(o!==void 0?o:t.custom,s,c)),typeof n=="string"&&(n=t.variants&&t.variants[n]),typeof n=="function"&&(n=n(o!==void 0?o:t.custom,s,c)),n}function useConstant(t){const n=React.useRef(null);return n.current===null&&(n.current=t()),n.current}const isKeyframesTarget=t=>Array.isArray(t),isCustomValue=t=>!!(t&&typeof t=="object"&&t.mix&&t.toValue),resolveFinalValueInKeyframes=t=>isKeyframesTarget(t)?t[t.length-1]||0:t;function resolveMotionValue(t){const n=isMotionValue(t)?t.get():t;return isCustomValue(n)?n.toValue():n}function makeState({scrapeMotionValuesFromProps:t,createRenderState:n,onMount:o},s,c,d){const h={latestValues:makeLatestValues(s,c,d,t),renderState:n()};return o&&(h.mount=p=>o(s,p,h)),h}const makeUseVisualState=t=>(n,o)=>{const s=React.useContext(MotionContext),c=React.useContext(PresenceContext),d=()=>makeState(t,n,s,c);return o?d():useConstant(d)};function makeLatestValues(t,n,o,s){const c={},d=s(t,{});for(const F in d)c[F]=resolveMotionValue(d[F]);let{initial:h,animate:p}=t;const y=isControllingVariants(t),S=isVariantNode(t);n&&S&&!y&&t.inherit!==!1&&(h===void 0&&(h=n.initial),p===void 0&&(p=n.animate));let P=o?o.initial===!1:!1;P=P||h===!1;const L=P?p:h;return L&&typeof L!="boolean"&&!isAnimationControls(L)&&(Array.isArray(L)?L:[L]).forEach(N=>{const z=resolveVariantFromProps(t,N);if(!z)return;const{transitionEnd:W,transition:nt,...Pe}=z;for(const se in Pe){let mt=Pe[se];if(Array.isArray(mt)){const kt=P?mt.length-1:0;mt=mt[kt]}mt!==null&&(c[se]=mt)}for(const se in W)c[se]=W[se]}),c}const noop$1=t=>t,{schedule:frame,cancel:cancelFrame,state:frameData,steps}=createRenderBatcher(typeof requestAnimationFrame<"u"?requestAnimationFrame:noop$1,!0),svgMotionConfig={useVisualState:makeUseVisualState({scrapeMotionValuesFromProps,createRenderState:createSvgRenderState,onMount:(t,n,{renderState:o,latestValues:s})=>{frame.read(()=>{try{o.dimensions=typeof n.getBBox=="function"?n.getBBox():n.getBoundingClientRect()}catch{o.dimensions={x:0,y:0,width:0,height:0}}}),frame.render(()=>{buildSVGAttrs(o,s,{enableHardwareAcceleration:!1},isSVGTag(n.tagName),t.transformTemplate),renderSVG(n,o)})}})},htmlMotionConfig={useVisualState:makeUseVisualState({scrapeMotionValuesFromProps:scrapeMotionValuesFromProps$1,createRenderState:createHtmlRenderState})};function createDomMotionConfig(t,{forwardMotionProps:n=!1},o,s){return{...isSVGComponent(t)?svgMotionConfig:htmlMotionConfig,preloadedFeatures:o,useRender:createUseRender(n),createVisualElement:s,Component:t}}function addDomEvent(t,n,o,s={passive:!0}){return t.addEventListener(n,o,s),()=>t.removeEventListener(n,o)}const isPrimaryPointer=t=>t.pointerType==="mouse"?typeof t.button!="number"||t.button<=0:t.isPrimary!==!1;function extractEventInfo(t,n="page"){return{point:{x:t[n+"X"],y:t[n+"Y"]}}}const addPointerInfo=t=>n=>isPrimaryPointer(n)&&t(n,extractEventInfo(n));function addPointerEvent(t,n,o,s){return addDomEvent(t,n,addPointerInfo(o),s)}const combineFunctions=(t,n)=>o=>n(t(o)),pipe=(...t)=>t.reduce(combineFunctions);function createLock(t){let n=null;return()=>{const o=()=>{n=null};return n===null?(n=t,o):!1}}const globalHorizontalLock=createLock("dragHorizontal"),globalVerticalLock=createLock("dragVertical");function getGlobalLock(t){let n=!1;if(t==="y")n=globalVerticalLock();else if(t==="x")n=globalHorizontalLock();else{const o=globalHorizontalLock(),s=globalVerticalLock();o&&s?n=()=>{o(),s()}:(o&&o(),s&&s())}return n}function isDragActive(){const t=getGlobalLock(!0);return t?(t(),!1):!0}class Feature{constructor(n){this.isMounted=!1,this.node=n}update(){}}function addHoverEvent(t,n){const o="pointer"+(n?"enter":"leave"),s="onHover"+(n?"Start":"End"),c=(d,h)=>{if(d.pointerType==="touch"||isDragActive())return;const p=t.getProps();t.animationState&&p.whileHover&&t.animationState.setActive("whileHover",n),p[s]&&p[s](d,h)};return addPointerEvent(t.current,o,c,{passive:!t.getProps()[s]})}class HoverGesture extends Feature{mount(){this.unmount=pipe(addHoverEvent(this.node,!0),addHoverEvent(this.node,!1))}unmount(){}}class FocusGesture extends Feature{constructor(){super(...arguments),this.isActive=!1}onFocus(){let n=!1;try{n=this.node.current.matches(":focus-visible")}catch{n=!0}!n||!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=pipe(addDomEvent(this.node.current,"focus",()=>this.onFocus()),addDomEvent(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}const isNodeOrChild=(t,n)=>n?t===n?!0:isNodeOrChild(t,n.parentElement):!1;function fireSyntheticPointerEvent(t,n){if(!n)return;const o=new PointerEvent("pointer"+t);n(o,extractEventInfo(o))}class PressGesture extends Feature{constructor(){super(...arguments),this.removeStartListeners=noop$1,this.removeEndListeners=noop$1,this.removeAccessibleListeners=noop$1,this.startPointerPress=(n,o)=>{if(this.isPressing)return;this.removeEndListeners();const s=this.node.getProps(),d=addPointerEvent(window,"pointerup",(p,y)=>{if(!this.checkPressEnd())return;const{onTap:S,onTapCancel:P,globalTapTarget:L}=this.node.getProps();!L&&!isNodeOrChild(this.node.current,p.target)?P&&P(p,y):S&&S(p,y)},{passive:!(s.onTap||s.onPointerUp)}),h=addPointerEvent(window,"pointercancel",(p,y)=>this.cancelPress(p,y),{passive:!(s.onTapCancel||s.onPointerCancel)});this.removeEndListeners=pipe(d,h),this.startPress(n,o)},this.startAccessiblePress=()=>{const n=d=>{if(d.key!=="Enter"||this.isPressing)return;const h=p=>{p.key!=="Enter"||!this.checkPressEnd()||fireSyntheticPointerEvent("up",(y,S)=>{const{onTap:P}=this.node.getProps();P&&P(y,S)})};this.removeEndListeners(),this.removeEndListeners=addDomEvent(this.node.current,"keyup",h),fireSyntheticPointerEvent("down",(p,y)=>{this.startPress(p,y)})},o=addDomEvent(this.node.current,"keydown",n),s=()=>{this.isPressing&&fireSyntheticPointerEvent("cancel",(d,h)=>this.cancelPress(d,h))},c=addDomEvent(this.node.current,"blur",s);this.removeAccessibleListeners=pipe(o,c)}}startPress(n,o){this.isPressing=!0;const{onTapStart:s,whileTap:c}=this.node.getProps();c&&this.node.animationState&&this.node.animationState.setActive("whileTap",!0),s&&s(n,o)}checkPressEnd(){return this.removeEndListeners(),this.isPressing=!1,this.node.getProps().whileTap&&this.node.animationState&&this.node.animationState.setActive("whileTap",!1),!isDragActive()}cancelPress(n,o){if(!this.checkPressEnd())return;const{onTapCancel:s}=this.node.getProps();s&&s(n,o)}mount(){const n=this.node.getProps(),o=addPointerEvent(n.globalTapTarget?window:this.node.current,"pointerdown",this.startPointerPress,{passive:!(n.onTapStart||n.onPointerStart)}),s=addDomEvent(this.node.current,"focus",this.startAccessiblePress);this.removeStartListeners=pipe(o,s)}unmount(){this.removeStartListeners(),this.removeEndListeners(),this.removeAccessibleListeners()}}const observerCallbacks=new WeakMap,observers=new WeakMap,fireObserverCallback=t=>{const n=observerCallbacks.get(t.target);n&&n(t)},fireAllObserverCallbacks=t=>{t.forEach(fireObserverCallback)};function initIntersectionObserver({root:t,...n}){const o=t||document;observers.has(o)||observers.set(o,{});const s=observers.get(o),c=JSON.stringify(n);return s[c]||(s[c]=new IntersectionObserver(fireAllObserverCallbacks,{root:t,...n})),s[c]}function observeIntersection(t,n,o){const s=initIntersectionObserver(n);return observerCallbacks.set(t,o),s.observe(t),()=>{observerCallbacks.delete(t),s.unobserve(t)}}const thresholdNames={some:0,all:1};class InViewFeature extends Feature{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:n={}}=this.node.getProps(),{root:o,margin:s,amount:c="some",once:d}=n,h={root:o?o.current:void 0,rootMargin:s,threshold:typeof c=="number"?c:thresholdNames[c]},p=y=>{const{isIntersecting:S}=y;if(this.isInView===S||(this.isInView=S,d&&!S&&this.hasEnteredView))return;S&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",S);const{onViewportEnter:P,onViewportLeave:L}=this.node.getProps(),F=S?P:L;F&&F(y)};return observeIntersection(this.node.current,h,p)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:n,prevProps:o}=this.node;["amount","margin","root"].some(hasViewportOptionChanged(n,o))&&this.startObserver()}unmount(){}}function hasViewportOptionChanged({viewport:t={}},{viewport:n={}}={}){return o=>t[o]!==n[o]}const gestureAnimations={inView:{Feature:InViewFeature},tap:{Feature:PressGesture},focus:{Feature:FocusGesture},hover:{Feature:HoverGesture}};function shallowCompare(t,n){if(!Array.isArray(n))return!1;const o=n.length;if(o!==t.length)return!1;for(let s=0;s<o;s++)if(n[s]!==t[s])return!1;return!0}function getCurrent(t){const n={};return t.values.forEach((o,s)=>n[s]=o.get()),n}function getVelocity$1(t){const n={};return t.values.forEach((o,s)=>n[s]=o.getVelocity()),n}function resolveVariant(t,n,o){const s=t.getProps();return resolveVariantFromProps(s,n,o!==void 0?o:s.custom,getCurrent(t),getVelocity$1(t))}const secondsToMilliseconds=t=>t*1e3,millisecondsToSeconds=t=>t/1e3,underDampedSpring={type:"spring",stiffness:500,damping:25,restSpeed:10},criticallyDampedSpring=t=>({type:"spring",stiffness:550,damping:t===0?2*Math.sqrt(550):30,restSpeed:10}),keyframesTransition={type:"keyframes",duration:.8},ease={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},getDefaultTransition=(t,{keyframes:n})=>n.length>2?keyframesTransition:transformProps.has(t)?t.startsWith("scale")?criticallyDampedSpring(n[1]):underDampedSpring:ease;function isTransitionDefined({when:t,delay:n,delayChildren:o,staggerChildren:s,staggerDirection:c,repeat:d,repeatType:h,repeatDelay:p,from:y,elapsed:S,...P}){return!!Object.keys(P).length}function getValueTransition(t,n){return t[n]||t.default||t}const isNotNull=t=>t!==null;function getFinalKeyframe(t,{repeat:n,repeatType:o="loop"},s){const c=t.filter(isNotNull),d=n&&o!=="loop"&&n%2===1?0:c.length-1;return!d||s===void 0?c[d]:s}let now;function clearTime(){now=void 0}const time={now:()=>(now===void 0&&time.set(frameData.isProcessing||MotionGlobalConfig.useManualTiming?frameData.timestamp:performance.now()),now),set:t=>{now=t,queueMicrotask(clearTime)}},isZeroValueString=t=>/^0[^.\s]+$/u.test(t);function isNone(t){return typeof t=="number"?t===0:t!==null?t==="none"||t==="0"||isZeroValueString(t):!0}let warning=noop$1,invariant=noop$1;process.env.NODE_ENV!=="production"&&(warning=(t,n)=>{!t&&typeof console<"u"&&console.warn(n)},invariant=(t,n)=>{if(!t)throw new Error(n)});const isNumericalString=t=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(t),splitCSSVariableRegex=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function parseCSSVariable(t){const n=splitCSSVariableRegex.exec(t);if(!n)return[,];const[,o,s,c]=n;return[`--${o??s}`,c]}const maxDepth=4;function getVariableValue(t,n,o=1){invariant(o<=maxDepth,`Max CSS variable fallback depth detected in property "${t}". This may indicate a circular fallback dependency.`);const[s,c]=parseCSSVariable(t);if(!s)return;const d=window.getComputedStyle(n).getPropertyValue(s);if(d){const h=d.trim();return isNumericalString(h)?parseFloat(h):h}return isCSSVariableToken(c)?getVariableValue(c,n,o+1):c}const positionalKeys=new Set(["width","height","top","left","right","bottom","x","y","translateX","translateY"]),isNumOrPxType=t=>t===number||t===px,getPosFromMatrix=(t,n)=>parseFloat(t.split(", ")[n]),getTranslateFromMatrix=(t,n)=>(o,{transform:s})=>{if(s==="none"||!s)return 0;const c=s.match(/^matrix3d\((.+)\)$/u);if(c)return getPosFromMatrix(c[1],n);{const d=s.match(/^matrix\((.+)\)$/u);return d?getPosFromMatrix(d[1],t):0}},transformKeys=new Set(["x","y","z"]),nonTranslationalTransformKeys=transformPropOrder.filter(t=>!transformKeys.has(t));function removeNonTranslationalTransform(t){const n=[];return nonTranslationalTransformKeys.forEach(o=>{const s=t.getValue(o);s!==void 0&&(n.push([o,s.get()]),s.set(o.startsWith("scale")?1:0))}),n}const positionalValues={width:({x:t},{paddingLeft:n="0",paddingRight:o="0"})=>t.max-t.min-parseFloat(n)-parseFloat(o),height:({y:t},{paddingTop:n="0",paddingBottom:o="0"})=>t.max-t.min-parseFloat(n)-parseFloat(o),top:(t,{top:n})=>parseFloat(n),left:(t,{left:n})=>parseFloat(n),bottom:({y:t},{top:n})=>parseFloat(n)+(t.max-t.min),right:({x:t},{left:n})=>parseFloat(n)+(t.max-t.min),x:getTranslateFromMatrix(4,13),y:getTranslateFromMatrix(5,14)};positionalValues.translateX=positionalValues.x,positionalValues.translateY=positionalValues.y;const testValueType=t=>n=>n.test(t),auto={test:t=>t==="auto",parse:t=>t},dimensionValueTypes=[number,px,percent,degrees,vw,vh,auto],findDimensionValueType=t=>dimensionValueTypes.find(testValueType(t)),toResolve=new Set;let isScheduled=!1,anyNeedsMeasurement=!1;function measureAllKeyframes(){if(anyNeedsMeasurement){const t=Array.from(toResolve).filter(s=>s.needsMeasurement),n=new Set(t.map(s=>s.element)),o=new Map;n.forEach(s=>{removeNonTranslationalTransform(s).length&&(o.set(s,removeNonTranslationalTransform(s)),s.render())}),t.forEach(s=>s.measureInitialState()),n.forEach(s=>{s.render()}),t.forEach(s=>s.measureEndState()),t.forEach(s=>{s.suspendedScrollY!==void 0&&window.scrollTo(0,s.suspendedScrollY)})}anyNeedsMeasurement=!1,isScheduled=!1,toResolve.forEach(t=>t.complete()),toResolve.clear()}function readAllKeyframes(){toResolve.forEach(t=>{t.readKeyframes(),t.needsMeasurement&&(anyNeedsMeasurement=!0)})}function flushKeyframeResolvers(){readAllKeyframes(),measureAllKeyframes()}class KeyframeResolver{constructor(n,o,s,c,d,h=!1){this.isComplete=!1,this.isAsync=!1,this.needsMeasurement=!1,this.isScheduled=!1,this.unresolvedKeyframes=[...n],this.onComplete=o,this.name=s,this.motionValue=c,this.element=d,this.isAsync=h}scheduleResolve(){this.isScheduled=!0,this.isAsync?(toResolve.add(this),isScheduled||(isScheduled=!0,frame.read(readAllKeyframes),frame.resolveKeyframes(measureAllKeyframes))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:n,name:o,element:s,motionValue:c}=this;for(let d=0;d<n.length;d++)if(n[d]===null)if(d===0){const h=c==null?void 0:c.get(),p=n[n.length-1];if(h!==void 0)n[0]=h;else if(s&&o){const y=s.readValue(o,p);y!=null&&(n[0]=y)}n[0]===void 0&&(n[0]=p),c&&h===void 0&&c.set(n[0])}else n[d]=n[d-1]}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(){this.isComplete=!0,this.onComplete(this.unresolvedKeyframes,this.finalKeyframe),toResolve.delete(this)}cancel(){this.isComplete||(this.isScheduled=!1,toResolve.delete(this))}resume(){this.isComplete||this.scheduleResolve()}}const isColorString=(t,n)=>o=>!!(isString$1(o)&&singleColorRegex.test(o)&&o.startsWith(t)||n&&Object.prototype.hasOwnProperty.call(o,n)),splitColor=(t,n,o)=>s=>{if(!isString$1(s))return s;const[c,d,h,p]=s.match(floatRegex);return{[t]:parseFloat(c),[n]:parseFloat(d),[o]:parseFloat(h),alpha:p!==void 0?parseFloat(p):1}},clampRgbUnit=t=>clamp(0,255,t),rgbUnit={...number,transform:t=>Math.round(clampRgbUnit(t))},rgba={test:isColorString("rgb","red"),parse:splitColor("red","green","blue"),transform:({red:t,green:n,blue:o,alpha:s=1})=>"rgba("+rgbUnit.transform(t)+", "+rgbUnit.transform(n)+", "+rgbUnit.transform(o)+", "+sanitize(alpha.transform(s))+")"};function parseHex(t){let n="",o="",s="",c="";return t.length>5?(n=t.substring(1,3),o=t.substring(3,5),s=t.substring(5,7),c=t.substring(7,9)):(n=t.substring(1,2),o=t.substring(2,3),s=t.substring(3,4),c=t.substring(4,5),n+=n,o+=o,s+=s,c+=c),{red:parseInt(n,16),green:parseInt(o,16),blue:parseInt(s,16),alpha:c?parseInt(c,16)/255:1}}const hex={test:isColorString("#"),parse:parseHex,transform:rgba.transform},hsla={test:isColorString("hsl","hue"),parse:splitColor("hue","saturation","lightness"),transform:({hue:t,saturation:n,lightness:o,alpha:s=1})=>"hsla("+Math.round(t)+", "+percent.transform(sanitize(n))+", "+percent.transform(sanitize(o))+", "+sanitize(alpha.transform(s))+")"},color={test:t=>rgba.test(t)||hex.test(t)||hsla.test(t),parse:t=>rgba.test(t)?rgba.parse(t):hsla.test(t)?hsla.parse(t):hex.parse(t),transform:t=>isString$1(t)?t:t.hasOwnProperty("red")?rgba.transform(t):hsla.transform(t)};function test(t){var n,o;return isNaN(t)&&isString$1(t)&&(((n=t.match(floatRegex))===null||n===void 0?void 0:n.length)||0)+(((o=t.match(colorRegex))===null||o===void 0?void 0:o.length)||0)>0}const NUMBER_TOKEN="number",COLOR_TOKEN="color",VAR_TOKEN="var",VAR_FUNCTION_TOKEN="var(",SPLIT_TOKEN="${}",complexRegex=/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 analyseComplexValue(t){const n=t.toString(),o=[],s={color:[],number:[],var:[]},c=[];let d=0;const p=n.replace(complexRegex,y=>(color.test(y)?(s.color.push(d),c.push(COLOR_TOKEN),o.push(color.parse(y))):y.startsWith(VAR_FUNCTION_TOKEN)?(s.var.push(d),c.push(VAR_TOKEN),o.push(y)):(s.number.push(d),c.push(NUMBER_TOKEN),o.push(parseFloat(y))),++d,SPLIT_TOKEN)).split(SPLIT_TOKEN);return{values:o,split:p,indexes:s,types:c}}function parseComplexValue(t){return analyseComplexValue(t).values}function createTransformer(t){const{split:n,types:o}=analyseComplexValue(t),s=n.length;return c=>{let d="";for(let h=0;h<s;h++)if(d+=n[h],c[h]!==void 0){const p=o[h];p===NUMBER_TOKEN?d+=sanitize(c[h]):p===COLOR_TOKEN?d+=color.transform(c[h]):d+=c[h]}return d}}const convertNumbersToZero=t=>typeof t=="number"?0:t;function getAnimatableNone$1(t){const n=parseComplexValue(t);return createTransformer(t)(n.map(convertNumbersToZero))}const complex={test,parse:parseComplexValue,createTransformer,getAnimatableNone:getAnimatableNone$1},maxDefaults=new Set(["brightness","contrast","saturate","opacity"]);function applyDefaultFilter(t){const[n,o]=t.slice(0,-1).split("(");if(n==="drop-shadow")return t;const[s]=o.match(floatRegex)||[];if(!s)return t;const c=o.replace(s,"");let d=maxDefaults.has(n)?1:0;return s!==o&&(d*=100),n+"("+d+c+")"}const functionRegex=/\b([a-z-]*)\(.*?\)/gu,filter={...complex,getAnimatableNone:t=>{const n=t.match(functionRegex);return n?n.map(applyDefaultFilter).join(" "):t}},defaultValueTypes={...numberValueTypes,color,backgroundColor:color,outlineColor:color,fill:color,stroke:color,borderColor:color,borderTopColor:color,borderRightColor:color,borderBottomColor:color,borderLeftColor:color,filter,WebkitFilter:filter},getDefaultValueType=t=>defaultValueTypes[t];function getAnimatableNone(t,n){let o=getDefaultValueType(t);return o!==filter&&(o=complex),o.getAnimatableNone?o.getAnimatableNone(n):void 0}function makeNoneKeyframesAnimatable(t,n,o){let s=0,c;for(;s<t.length&&!c;)typeof t[s]=="string"&&t[s]!=="none"&&t[s]!=="0"&&(c=t[s]),s++;if(c&&o)for(const d of n)t[d]=getAnimatableNone(o,c)}class DOMKeyframesResolver extends KeyframeResolver{constructor(n,o,s,c){super(n,o,s,c,c==null?void 0:c.owner,!0)}readKeyframes(){const{unresolvedKeyframes:n,element:o,name:s}=this;if(!o.current)return;super.readKeyframes();for(let y=0;y<n.length;y++){const S=n[y];if(typeof S=="string"&&isCSSVariableToken(S)){const P=getVariableValue(S,o.current);P!==void 0&&(n[y]=P)}}if(!positionalKeys.has(s)||n.length!==2)return this.resolveNoneKeyframes();const[c,d]=n,h=findDimensionValueType(c),p=findDimensionValueType(d);if(h!==p)if(isNumOrPxType(h)&&isNumOrPxType(p))for(let y=0;y<n.length;y++){const S=n[y];typeof S=="string"&&(n[y]=parseFloat(S))}else this.needsMeasurement=!0}resolveNoneKeyframes(){const{unresolvedKeyframes:n,name:o}=this,s=[];for(let c=0;c<n.length;c++)isNone(n[c])&&s.push(c);s.length&&makeNoneKeyframesAnimatable(n,s,o)}measureInitialState(){const{element:n,unresolvedKeyframes:o,name:s}=this;if(!n.current)return;s==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=positionalValues[s](n.measureViewportBox(),window.getComputedStyle(n.current)),o[0]=this.measuredOrigin;const c=o[o.length-1];c!==void 0&&n.getValue(s,c).jump(c,!1)}measureEndState(){var n;const{element:o,name:s,unresolvedKeyframes:c}=this;if(!o.current)return;const d=o.getValue(s);d&&d.jump(this.measuredOrigin,!1);const h=c.length-1,p=c[h];c[h]=positionalValues[s](o.measureViewportBox(),window.getComputedStyle(o.current)),p!==null&&(this.finalKeyframe=p),!((n=this.removedTransforms)===null||n===void 0)&&n.length&&this.removedTransforms.forEach(([y,S])=>{o.getValue(y).set(S)}),this.resolveNoneKeyframes()}}function memo(t){let n;return()=>(n===void 0&&(n=t()),n)}const isAnimatable=(t,n)=>n==="zIndex"?!1:!!(typeof t=="number"||Array.isArray(t)||typeof t=="string"&&(complex.test(t)||t==="0")&&!t.startsWith("url("));function hasKeyframesChanged(t){const n=t[0];if(t.length===1)return!0;for(let o=0;o<t.length;o++)if(t[o]!==n)return!0}function canAnimate(t,n,o,s){const c=t[0];if(c===null)return!1;const d=t[t.length-1],h=isAnimatable(c,n),p=isAnimatable(d,n);return warning(h===p,`You are trying to animate ${n} from "${c}" to "${d}". ${c} is not an animatable value - to enable this animation set ${c} to a value animatable to ${d} via the \`style\` property.`),!h||!p?!1:hasKeyframesChanged(t)||o==="spring"&&s}class BaseAnimation{constructor({autoplay:n=!0,delay:o=0,type:s="keyframes",repeat:c=0,repeatDelay:d=0,repeatType:h="loop",...p}){this.isStopped=!1,this.hasAttemptedResolve=!1,this.options={autoplay:n,delay:o,type:s,repeat:c,repeatDelay:d,repeatType:h,...p},this.updateFinishedPromise()}get resolved(){return!this._resolved&&!this.hasAttemptedResolve&&flushKeyframeResolvers(),this._resolved}onKeyframesResolved(n,o){this.hasAttemptedResolve=!0;const{name:s,type:c,velocity:d,delay:h,onComplete:p,onUpdate:y,isGenerator:S}=this.options;if(!S&&!canAnimate(n,s,c,d))if(h)this.options.duration=0;else{y==null||y(getFinalKeyframe(n,this.options,o)),p==null||p(),this.resolveFinishedPromise();return}const P=this.initPlayback(n,o);P!==!1&&(this._resolved={keyframes:n,finalKeyframe:o,...P},this.onPostResolved())}onPostResolved(){}then(n,o){return this.currentFinishedPromise.then(n,o)}updateFinishedPromise(){this.currentFinishedPromise=new Promise(n=>{this.resolveFinishedPromise=n})}}function velocityPerSecond(t,n){return n?t*(1e3/n):0}const velocitySampleDuration=5;function calcGeneratorVelocity(t,n,o){const s=Math.max(n-velocitySampleDuration,0);return velocityPerSecond(o-t(s),n-s)}const safeMin=.001,minDuration=.01,maxDuration$1=10,minDamping=.05,maxDamping=1;function findSpring({duration:t=800,bounce:n=.25,velocity:o=0,mass:s=1}){let c,d;warning(t<=secondsToMilliseconds(maxDuration$1),"Spring duration must be 10 seconds or less");let h=1-n;h=clamp(minDamping,maxDamping,h),t=clamp(minDuration,maxDuration$1,millisecondsToSeconds(t)),h<1?(c=S=>{const P=S*h,L=P*t,F=P-o,N=calcAngularFreq(S,h),z=Math.exp(-L);return safeMin-F/N*z},d=S=>{const L=S*h*t,F=L*o+o,N=Math.pow(h,2)*Math.pow(S,2)*t,z=Math.exp(-L),W=calcAngularFreq(Math.pow(S,2),h);return(-c(S)+safeMin>0?-1:1)*((F-N)*z)/W}):(c=S=>{const P=Math.exp(-S*t),L=(S-o)*t+1;return-.001+P*L},d=S=>{const P=Math.exp(-S*t),L=(o-S)*(t*t);return P*L});const p=5/t,y=approximateRoot(c,d,p);if(t=secondsToMilliseconds(t),isNaN(y))return{stiffness:100,damping:10,duration:t};{const S=Math.pow(y,2)*s;return{stiffness:S,damping:h*2*Math.sqrt(s*S),duration:t}}}const rootIterations=12;function approximateRoot(t,n,o){let s=o;for(let c=1;c<rootIterations;c++)s=s-t(s)/n(s);return s}function calcAngularFreq(t,n){return t*Math.sqrt(1-n*n)}const durationKeys=["duration","bounce"],physicsKeys=["stiffness","damping","mass"];function isSpringType(t,n){return n.some(o=>t[o]!==void 0)}function getSpringOptions(t){let n={velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1,...t};if(!isSpringType(t,physicsKeys)&&isSpringType(t,durationKeys)){const o=findSpring(t);n={...n,...o,mass:1},n.isResolvedFromDuration=!0}return n}function spring({keyframes:t,restDelta:n,restSpeed:o,...s}){const c=t[0],d=t[t.length-1],h={done:!1,value:c},{stiffness:p,damping:y,mass:S,duration:P,velocity:L,isResolvedFromDuration:F}=getSpringOptions({...s,velocity:-millisecondsToSeconds(s.velocity||0)}),N=L||0,z=y/(2*Math.sqrt(p*S)),W=d-c,nt=millisecondsToSeconds(Math.sqrt(p/S)),Pe=Math.abs(W)<5;o||(o=Pe?.01:2),n||(n=Pe?.005:.5);let se;if(z<1){const mt=calcAngularFreq(nt,z);se=kt=>{const mn=Math.exp(-z*nt*kt);return d-mn*((N+z*nt*W)/mt*Math.sin(mt*kt)+W*Math.cos(mt*kt))}}else if(z===1)se=mt=>d-Math.exp(-nt*mt)*(W+(N+nt*W)*mt);else{const mt=nt*Math.sqrt(z*z-1);se=kt=>{const mn=Math.exp(-z*nt*kt),_i=Math.min(mt*kt,300);return d-mn*((N+z*nt*W)*Math.sinh(_i)+mt*W*Math.cosh(_i))/mt}}return{calculatedDuration:F&&P||null,next:mt=>{const kt=se(mt);if(F)h.done=mt>=P;else{let mn=N;mt!==0&&(z<1?mn=calcGeneratorVelocity(se,mt,kt):mn=0);const _i=Math.abs(mn)<=o,zi=Math.abs(d-kt)<=n;h.done=_i&&zi}return h.value=h.done?d:kt,h}}}function inertia({keyframes:t,velocity:n=0,power:o=.8,timeConstant:s=325,bounceDamping:c=10,bounceStiffness:d=500,modifyTarget:h,min:p,max:y,restDelta:S=.5,restSpeed:P}){const L=t[0],F={done:!1,value:L},N=Sa=>p!==void 0&&Sa<p||y!==void 0&&Sa>y,z=Sa=>p===void 0?y:y===void 0||Math.abs(p-Sa)<Math.abs(y-Sa)?p:y;let W=o*n;const nt=L+W,Pe=h===void 0?nt:h(nt);Pe!==nt&&(W=Pe-L);const se=Sa=>-W*Math.exp(-Sa/s),mt=Sa=>Pe+se(Sa),kt=Sa=>{const fa=se(Sa),La=mt(Sa);F.done=Math.abs(fa)<=S,F.value=F.done?Pe:La};let mn,_i;const zi=Sa=>{N(F.value)&&(mn=Sa,_i=spring({keyframes:[F.value,z(F.value)],velocity:calcGeneratorVelocity(mt,Sa,F.value),damping:c,stiffness:d,restDelta:S,restSpeed:P}))};return zi(0),{calculatedDuration:null,next:Sa=>{let fa=!1;return!_i&&mn===void 0&&(fa=!0,kt(Sa),zi(Sa)),mn!==void 0&&Sa>=mn?_i.next(Sa-mn):(!fa&&kt(Sa),F)}}}const calcBezier=(t,n,o)=>(((1-3*o+3*n)*t+(3*o-6*n))*t+3*n)*t,subdivisionPrecision=1e-7,subdivisionMaxIterations=12;function binarySubdivide(t,n,o,s,c){let d,h,p=0;do h=n+(o-n)/2,d=calcBezier(h,s,c)-t,d>0?o=h:n=h;while(Math.abs(d)>subdivisionPrecision&&++p<subdivisionMaxIterations);return h}function cubicBezier(t,n,o,s){if(t===n&&o===s)return noop$1;const c=d=>binarySubdivide(d,0,1,t,o);return d=>d===0||d===1?d:calcBezier(c(d),n,s)}const easeIn=cubicBezier(.42,0,1,1),easeOut=cubicBezier(0,0,.58,1),easeInOut=cubicBezier(.42,0,.58,1),isEasingArray=t=>Array.isArray(t)&&typeof t[0]!="number",mirrorEasing=t=>n=>n<=.5?t(2*n)/2:(2-t(2*(1-n)))/2,reverseEasing=t=>n=>1-t(1-n),circIn=t=>1-Math.sin(Math.acos(t)),circOut=reverseEasing(circIn),circInOut=mirrorEasing(circIn),backOut=cubicBezier(.33,1.53,.69,.99),backIn=reverseEasing(backOut),backInOut=mirrorEasing(backIn),anticipate=t=>(t*=2)<1?.5*backIn(t):.5*(2-Math.pow(2,-10*(t-1))),easingLookup={linear:noop$1,easeIn,easeInOut,easeOut,circIn,circInOut,circOut,backIn,backInOut,backOut,anticipate},easingDefinitionToFunction=t=>{if(Array.isArray(t)){invariant(t.length===4,"Cubic bezier arrays must contain four numerical values.");const[n,o,s,c]=t;return cubicBezier(n,o,s,c)}else if(typeof t=="string")return invariant(easingLookup[t]!==void 0,`Invalid easing type '${t}'`),easingLookup[t];return t},progress=(t,n,o)=>{const s=n-t;return s===0?1:(o-t)/s},mixNumber$1=(t,n,o)=>t+(n-t)*o;function hueToRgb(t,n,o){return o<0&&(o+=1),o>1&&(o-=1),o<1/6?t+(n-t)*6*o:o<1/2?n:o<2/3?t+(n-t)*(2/3-o)*6:t}function hslaToRgba({hue:t,saturation:n,lightness:o,alpha:s}){t/=360,n/=100,o/=100;let c=0,d=0,h=0;if(!n)c=d=h=o;else{const p=o<.5?o*(1+n):o+n-o*n,y=2*o-p;c=hueToRgb(y,p,t+1/3),d=hueToRgb(y,p,t),h=hueToRgb(y,p,t-1/3)}return{red:Math.round(c*255),green:Math.round(d*255),blue:Math.round(h*255),alpha:s}}const mixLinearColor=(t,n,o)=>{const s=t*t,c=o*(n*n-s)+s;return c<0?0:Math.sqrt(c)},colorTypes=[hex,rgba,hsla],getColorType=t=>colorTypes.find(n=>n.test(t));function asRGBA(t){const n=getColorType(t);invariant(!!n,`'${t}' is not an animatable color. Use the equivalent color code instead.`);let o=n.parse(t);return n===hsla&&(o=hslaToRgba(o)),o}const mixColor=(t,n)=>{const o=asRGBA(t),s=asRGBA(n),c={...o};return d=>(c.red=mixLinearColor(o.red,s.red,d),c.green=mixLinearColor(o.green,s.green,d),c.blue=mixLinearColor(o.blue,s.blue,d),c.alpha=mixNumber$1(o.alpha,s.alpha,d),rgba.transform(c))};function mixImmediate(t,n){return o=>o>0?n:t}function mixNumber(t,n){return o=>mixNumber$1(t,n,o)}function getMixer(t){return typeof t=="number"?mixNumber:typeof t=="string"?isCSSVariableToken(t)?mixImmediate:color.test(t)?mixColor:mixComplex:Array.isArray(t)?mixArray:typeof t=="object"?color.test(t)?mixColor:mixObject:mixImmediate}function mixArray(t,n){const o=[...t],s=o.length,c=t.map((d,h)=>getMixer(d)(d,n[h]));return d=>{for(let h=0;h<s;h++)o[h]=c[h](d);return o}}function mixObject(t,n){const o={...t,...n},s={};for(const c in o)t[c]!==void 0&&n[c]!==void 0&&(s[c]=getMixer(t[c])(t[c],n[c]));return c=>{for(const d in s)o[d]=s[d](c);return o}}function matchOrder(t,n){var o;const s=[],c={color:0,var:0,number:0};for(let d=0;d<n.values.length;d++){const h=n.types[d],p=t.indexes[h][c[h]],y=(o=t.values[p])!==null&&o!==void 0?o:0;s[d]=y,c[h]++}return s}const mixComplex=(t,n)=>{const o=complex.createTransformer(n),s=analyseComplexValue(t),c=analyseComplexValue(n);return s.indexes.var.length===c.indexes.var.length&&s.indexes.color.length===c.indexes.color.length&&s.indexes.number.length>=c.indexes.number.length?pipe(mixArray(matchOrder(s,c),c.values),o):(warning(!0,`Complex values '${t}' and '${n}' 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.`),mixImmediate(t,n))};function mix(t,n,o){return typeof t=="number"&&typeof n=="number"&&typeof o=="number"?mixNumber$1(t,n,o):getMixer(t)(t,n)}function createMixers(t,n,o){const s=[],c=o||mix,d=t.length-1;for(let h=0;h<d;h++){let p=c(t[h],t[h+1]);if(n){const y=Array.isArray(n)?n[h]||noop$1:n;p=pipe(y,p)}s.push(p)}return s}function interpolate(t,n,{clamp:o=!0,ease:s,mixer:c}={}){const d=t.length;if(invariant(d===n.length,"Both input and output ranges must be the same length"),d===1)return()=>n[0];if(d===2&&t[0]===t[1])return()=>n[1];t[0]>t[d-1]&&(t=[...t].reverse(),n=[...n].reverse());const h=createMixers(n,s,c),p=h.length,y=S=>{let P=0;if(p>1)for(;P<t.length-2&&!(S<t[P+1]);P++);const L=progress(t[P],t[P+1],S);return h[P](L)};return o?S=>y(clamp(t[0],t[d-1],S)):y}function fillOffset(t,n){const o=t[t.length-1];for(let s=1;s<=n;s++){const c=progress(0,n,s);t.push(mixNumber$1(o,1,c))}}function defaultOffset(t){const n=[0];return fillOffset(n,t.length-1),n}function convertOffsetToTimes(t,n){return t.map(o=>o*n)}function defaultEasing(t,n){return t.map(()=>n||easeInOut).splice(0,t.length-1)}function keyframes({duration:t=300,keyframes:n,times:o,ease:s="easeInOut"}){const c=isEasingArray(s)?s.map(easingDefinitionToFunction):easingDefinitionToFunction(s),d={done:!1,value:n[0]},h=convertOffsetToTimes(o&&o.length===n.length?o:defaultOffset(n),t),p=interpolate(h,n,{ease:Array.isArray(c)?c:defaultEasing(n,c)});return{calculatedDuration:t,next:y=>(d.value=p(y),d.done=y>=t,d)}}const maxGeneratorDuration=2e4;function calcGeneratorDuration(t){let n=0;const o=50;let s=t.next(n);for(;!s.done&&n<maxGeneratorDuration;)n+=o,s=t.next(n);return n>=maxGeneratorDuration?1/0:n}const frameloopDriver=t=>{const n=({timestamp:o})=>t(o);return{start:()=>frame.update(n,!0),stop:()=>cancelFrame(n),now:()=>frameData.isProcessing?frameData.timestamp:time.now()}},generators={decay:inertia,inertia,tween:keyframes,keyframes,spring},percentToProgress=t=>t/100;class MainThreadAnimation extends BaseAnimation{constructor({KeyframeResolver:n=KeyframeResolver,...o}){super(o),this.holdTime=null,this.startTime=null,this.cancelTime=null,this.currentTime=0,this.playbackSpeed=1,this.pendingPlayState="running",this.state="idle";const{name:s,motionValue:c,keyframes:d}=this.options,h=(p,y)=>this.onKeyframesResolved(p,y);s&&c&&c.owner?this.resolver=c.owner.resolveKeyframes(d,h,s,c):this.resolver=new n(d,h,s,c),this.resolver.scheduleResolve()}initPlayback(n){const{type:o="keyframes",repeat:s=0,repeatDelay:c=0,repeatType:d,velocity:h=0}=this.options,p=generators[o]||keyframes;let y,S;p!==keyframes&&typeof n[0]!="number"&&(process.env.NODE_ENV!=="production"&&invariant(n.length===2,`Only two keyframes currently supported with spring and inertia animations. Trying to animate ${n}`),y=pipe(percentToProgress,mix(n[0],n[1])),n=[0,100]);const P=p({...this.options,keyframes:n});d==="mirror"&&(S=p({...this.options,keyframes:[...n].reverse(),velocity:-h})),P.calculatedDuration===null&&(P.calculatedDuration=calcGeneratorDuration(P));const{calculatedDuration:L}=P,F=L+c,N=F*(s+1)-c;return{generator:P,mirroredGenerator:S,mapPercentToKeyframes:y,calculatedDuration:L,resolvedDuration:F,totalDuration:N}}onPostResolved(){const{autoplay:n=!0}=this.options;this.play(),this.pendingPlayState==="paused"||!n?this.pause():this.state=this.pendingPlayState}tick(n,o=!1){const{resolved:s}=this;if(!s){const{keyframes:Sa}=this.options;return{done:!0,value:Sa[Sa.length-1]}}const{finalKeyframe:c,generator:d,mirroredGenerator:h,mapPercentToKeyframes:p,keyframes:y,calculatedDuration:S,totalDuration:P,resolvedDuration:L}=s;if(this.startTime===null)return d.next(0);const{delay:F,repeat:N,repeatType:z,repeatDelay:W,onUpdate:nt}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,n):this.speed<0&&(this.startTime=Math.min(n-P/this.speed,this.startTime)),o?this.currentTime=n:this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=Math.round(n-this.startTime)*this.speed;const Pe=this.currentTime-F*(this.speed>=0?1:-1),se=this.speed>=0?Pe<0:Pe>P;this.currentTime=Math.max(Pe,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=P);let mt=this.currentTime,kt=d;if(N){const Sa=Math.min(this.currentTime,P)/L;let fa=Math.floor(Sa),La=Sa%1;!La&&Sa>=1&&(La=1),La===1&&fa--,fa=Math.min(fa,N+1),!!(fa%2)&&(z==="reverse"?(La=1-La,W&&(La-=W/L)):z==="mirror"&&(kt=h)),mt=clamp(0,1,La)*L}const mn=se?{done:!1,value:y[0]}:kt.next(mt);p&&(mn.value=p(mn.value));let{done:_i}=mn;!se&&S!==null&&(_i=this.speed>=0?this.currentTime>=P:this.currentTime<=0);const zi=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&_i);return zi&&c!==void 0&&(mn.value=getFinalKeyframe(y,this.options,c)),nt&&nt(mn.value),zi&&this.finish(),mn}get duration(){const{resolved:n}=this;return n?millisecondsToSeconds(n.calculatedDuration):0}get time(){return millisecondsToSeconds(this.currentTime)}set time(n){n=secondsToMilliseconds(n),this.currentTime=n,this.holdTime!==null||this.speed===0?this.holdTime=n:this.driver&&(this.startTime=this.driver.now()-n/this.speed)}get speed(){return this.playbackSpeed}set speed(n){const o=this.playbackSpeed!==n;this.playbackSpeed=n,o&&(this.time=millisecondsToSeconds(this.currentTime))}play(){if(this.resolver.isScheduled||this.resolver.resume(),!this._resolved){this.pendingPlayState="running";return}if(this.isStopped)return;const{driver:n=frameloopDriver,onPlay:o}=this.options;this.driver||(this.driver=n(c=>this.tick(c))),o&&o();const s=this.driver.now();this.holdTime!==null?this.startTime=s-this.holdTime:(!this.startTime||this.state==="finished")&&(this.startTime=s),this.state==="finished"&&this.updateFinishedPromise(),this.cancelTime=this.startTime,this.holdTime=null,this.state="running",this.driver.start()}pause(){var n;if(!this._resolved){this.pendingPlayState="paused";return}this.state="paused",this.holdTime=(n=this.currentTime)!==null&&n!==void 0?n:0}stop(){if(this.resolver.cancel(),this.isStopped=!0,this.state==="idle")return;this.teardown();const{onStop:n}=this.options;n&&n()}complete(){this.state!=="running"&&this.play(),this.pendingPlayState=this.state="finished",this.holdTime=null}finish(){this.teardown(),this.state="finished";const{onComplete:n}=this.options;n&&n()}cancel(){this.cancelTime!==null&&this.tick(this.cancelTime),this.teardown(),this.updateFinishedPromise()}teardown(){this.state="idle",this.stopDriver(),this.resolveFinishedPromise(),this.updateFinishedPromise(),this.startTime=this.cancelTime=null,this.resolver.cancel()}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(n){return this.startTime=0,this.tick(n,!0)}}const isBezierDefinition=t=>Array.isArray(t)&&typeof t[0]=="number";function isWaapiSupportedEasing(t){return!!(!t||typeof t=="string"&&supportedWaapiEasing[t]||isBezierDefinition(t)||Array.isArray(t)&&t.every(isWaapiSupportedEasing))}const cubicBezierAsString=([t,n,o,s])=>`cubic-bezier(${t}, ${n}, ${o}, ${s})`,supportedWaapiEasing={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:cubicBezierAsString([0,.65,.55,1]),circOut:cubicBezierAsString([.55,0,1,.45]),backIn:cubicBezierAsString([.31,.01,.66,-.59]),backOut:cubicBezierAsString([.33,1.53,.69,.99])};function mapEasingToNativeEasing(t){if(t)return isBezierDefinition(t)?cubicBezierAsString(t):Array.isArray(t)?t.map(mapEasingToNativeEasing):supportedWaapiEasing[t]}function animateStyle(t,n,o,{delay:s=0,duration:c=300,repeat:d=0,repeatType:h="loop",ease:p,times:y}={}){const S={[n]:o};y&&(S.offset=y);const P=mapEasingToNativeEasing(p);return Array.isArray(P)&&(S.easing=P),t.animate(S,{delay:s,duration:c,easing:Array.isArray(P)?"linear":P,fill:"both",iterations:d+1,direction:h==="reverse"?"alternate":"normal"})}const supportsWaapi=memo(()=>Object.hasOwnProperty.call(Element.prototype,"animate")),acceleratedValues=new Set(["opacity","clipPath","filter","transform"]),sampleDelta=10,maxDuration=2e4;function requiresPregeneratedKeyframes(t){return t.type==="spring"||t.name==="backgroundColor"||!isWaapiSupportedEasing(t.ease)}function pregenerateKeyframes(t,n){const o=new MainThreadAnimation({...n,keyframes:t,repeat:0,delay:0,isGenerator:!0});let s={done:!1,value:t[0]};const c=[];let d=0;for(;!s.done&&d<maxDuration;)s=o.sample(d),c.push(s.value),d+=sampleDelta;return{times:void 0,keyframes:c,duration:d-sampleDelta,ease:"linear"}}class AcceleratedAnimation extends BaseAnimation{constructor(n){super(n);const{name:o,motionValue:s,keyframes:c}=this.options;this.resolver=new DOMKeyframesResolver(c,(d,h)=>this.onKeyframesResolved(d,h),o,s),this.resolver.scheduleResolve()}initPlayback(n,o){var s;let{duration:c=300,times:d,ease:h,type:p,motionValue:y,name:S}=this.options;if(!(!((s=y.owner)===null||s===void 0)&&s.current))return!1;if(requiresPregeneratedKeyframes(this.options)){const{onComplete:L,onUpdate:F,motionValue:N,...z}=this.options,W=pregenerateKeyframes(n,z);n=W.keyframes,n.length===1&&(n[1]=n[0]),c=W.duration,d=W.times,h=W.ease,p="keyframes"}const P=animateStyle(y.owner.current,S,n,{...this.options,duration:c,times:d,ease:h});return P.startTime=time.now(),this.pendingTimeline?(P.timeline=this.pendingTimeline,this.pendingTimeline=void 0):P.onfinish=()=>{const{onComplete:L}=this.options;y.set(getFinalKeyframe(n,this.options,o)),L&&L(),this.cancel(),this.resolveFinishedPromise()},{animation:P,duration:c,times:d,type:p,ease:h,keyframes:n}}get duration(){const{resolved:n}=this;if(!n)return 0;const{duration:o}=n;return millisecondsToSeconds(o)}get time(){const{resolved:n}=this;if(!n)return 0;const{animation:o}=n;return millisecondsToSeconds(o.currentTime||0)}set time(n){const{resolved:o}=this;if(!o)return;const{animation:s}=o;s.currentTime=secondsToMilliseconds(n)}get speed(){const{resolved:n}=this;if(!n)return 1;const{animation:o}=n;return o.playbackRate}set speed(n){const{resolved:o}=this;if(!o)return;const{animation:s}=o;s.playbackRate=n}get state(){const{resolved:n}=this;if(!n)return"idle";const{animation:o}=n;return o.playState}attachTimeline(n){if(!this._resolved)this.pendingTimeline=n;else{const{resolved:o}=this;if(!o)return noop$1;const{animation:s}=o;s.timeline=n,s.onfinish=null}return noop$1}play(){if(this.isStopped)return;const{resolved:n}=this;if(!n)return;const{animation:o}=n;o.playState==="finished"&&this.updateFinishedPromise(),o.play()}pause(){const{resolved:n}=this;if(!n)return;const{animation:o}=n;o.pause()}stop(){if(this.resolver.cancel(),this.isStopped=!0,this.state==="idle")return;const{resolved:n}=this;if(!n)return;const{animation:o,keyframes:s,duration:c,type:d,ease:h,times:p}=n;if(!(o.playState==="idle"||o.playState==="finished")){if(this.time){const{motionValue:y,onUpdate:S,onComplete:P,...L}=this.options,F=new MainThreadAnimation({...L,keyframes:s,duration:c,type:d,ease:h,times:p,isGenerator:!0}),N=secondsToMilliseconds(this.time);y.setWithVelocity(F.sample(N-sampleDelta).value,F.sample(N).value,sampleDelta)}this.cancel()}}complete(){const{resolved:n}=this;n&&n.animation.finish()}cancel(){const{resolved:n}=this;n&&n.animation.cancel()}static supports(n){const{motionValue:o,name:s,repeatDelay:c,repeatType:d,damping:h,type:p}=n;return supportsWaapi()&&s&&acceleratedValues.has(s)&&o&&o.owner&&o.owner.current instanceof HTMLElement&&!o.owner.getProps().onUpdate&&!c&&d!=="mirror"&&h!==0&&p!=="inertia"}}const animateMotionValue=(t,n,o,s={},c,d)=>h=>{const p=getValueTransition(s,t)||{},y=p.delay||s.delay||0;let{elapsed:S=0}=s;S=S-secondsToMilliseconds(y);let P={keyframes:Array.isArray(o)?o:[null,o],ease:"easeOut",velocity:n.getVelocity(),...p,delay:-S,onUpdate:F=>{n.set(F),p.onUpdate&&p.onUpdate(F)},onComplete:()=>{h(),p.onComplete&&p.onComplete()},name:t,motionValue:n,element:d?void 0:c};isTransitionDefined(p)||(P={...P,...getDefaultTransition(t,P)}),P.duration&&(P.duration=secondsToMilliseconds(P.duration)),P.repeatDelay&&(P.repeatDelay=secondsToMilliseconds(P.repeatDelay)),P.from!==void 0&&(P.keyframes[0]=P.from);let L=!1;if((P.type===!1||P.duration===0&&!P.repeatDelay)&&(P.duration=0,P.delay===0&&(L=!0)),L&&!d&&n.get()!==void 0){const F=getFinalKeyframe(P.keyframes,p);if(F!==void 0){frame.update(()=>{P.onUpdate(F),P.onComplete()});return}}return!d&&AcceleratedAnimation.supports(P)?new AcceleratedAnimation(P):new MainThreadAnimation(P)};function isWillChangeMotionValue(t){return!!(isMotionValue(t)&&t.add)}function addUniqueItem(t,n){t.indexOf(n)===-1&&t.push(n)}function removeItem(t,n){const o=t.indexOf(n);o>-1&&t.splice(o,1)}class SubscriptionManager{constructor(){this.subscriptions=[]}add(n){return addUniqueItem(this.subscriptions,n),()=>removeItem(this.subscriptions,n)}notify(n,o,s){const c=this.subscriptions.length;if(c)if(c===1)this.subscriptions[0](n,o,s);else for(let d=0;d<c;d++){const h=this.subscriptions[d];h&&h(n,o,s)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const warned=new Set;function warnOnce(t,n,o){t||warned.has(n)||(console.warn(n),warned.add(n))}const MAX_VELOCITY_DELTA=30,isFloat=t=>!isNaN(parseFloat(t));class MotionValue{constructor(n,o={}){this.version="11.0.27",this.canTrackVelocity=!1,this.events={},this.updateAndNotify=(s,c=!0)=>{const d=time.now();this.updatedAt!==d&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(s),this.current!==this.prev&&this.events.change&&this.events.change.notify(this.current),c&&this.events.renderRequest&&this.events.renderRequest.notify(this.current)},this.hasAnimated=!1,this.setCurrent(n),this.canTrackVelocity=isFloat(this.current),this.owner=o.owner}setCurrent(n){this.current=n,this.updatedAt=time.now()}setPrevFrameValue(n=this.current){this.prevFrameValue=n,this.prevUpdatedAt=this.updatedAt}onChange(n){return process.env.NODE_ENV!=="production"&&warnOnce(!1,'value.onChange(callback) is deprecated. Switch to value.on("change", callback).'),this.on("change",n)}on(n,o){this.events[n]||(this.events[n]=new SubscriptionManager);const s=this.events[n].add(o);return n==="change"?()=>{s(),frame.read(()=>{this.events.change.getSize()||this.stop()})}:s}clearListeners(){for(const n in this.events)this.events[n].clear()}attach(n,o){this.passiveEffect=n,this.stopPassiveEffect=o}set(n,o=!0){!o||!this.passiveEffect?this.updateAndNotify(n,o):this.passiveEffect(n,this.updateAndNotify)}setWithVelocity(n,o,s){this.set(o),this.prev=void 0,this.prevFrameValue=n,this.prevUpdatedAt=this.updatedAt-s}jump(n,o=!0){this.updateAndNotify(n),this.prev=n,this.prevUpdatedAt=this.prevFrameValue=void 0,o&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const n=time.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||n-this.updatedAt>MAX_VELOCITY_DELTA)return 0;const o=Math.min(this.updatedAt-this.prevUpdatedAt,MAX_VELOCITY_DELTA);return velocityPerSecond(parseFloat(this.current)-parseFloat(this.prevFrameValue),o)}start(n){return this.stop(),new Promise(o=>{this.hasAnimated=!0,this.animation=n(o),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.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function motionValue(t,n){return new MotionValue(t,n)}function setMotionValue(t,n,o){t.hasValue(n)?t.getValue(n).set(o):t.addValue(n,motionValue(o))}function setTarget(t,n){const o=resolveVariant(t,n);let{transitionEnd:s={},transition:c={},...d}=o||{};d={...d,...s};for(const h in d){const p=resolveFinalValueInKeyframes(d[h]);setMotionValue(t,h,p)}}function shouldBlockAnimation({protectedKeys:t,needsAnimating:n},o){const s=t.hasOwnProperty(o)&&n[o]!==!0;return n[o]=!1,s}function animateTarget(t,n,{delay:o=0,transitionOverride:s,type:c}={}){var d;let{transition:h=t.getDefaultTransition(),transitionEnd:p,...y}=n;const S=t.getValue("willChange");s&&(h=s);const P=[],L=c&&t.animationState&&t.animationState.getState()[c];for(const F in y){const N=t.getValue(F,(d=t.latestValues[F])!==null&&d!==void 0?d:null),z=y[F];if(z===void 0||L&&shouldBlockAnimation(L,F))continue;const W={delay:o,elapsed:0,...getValueTransition(h||{},F)};let nt=!1;if(window.HandoffAppearAnimations){const se=t.getProps()[optimizedAppearDataAttribute];if(se){const mt=window.HandoffAppearAnimations(se,F);mt!==null&&(W.elapsed=mt,nt=!0)}}N.start(animateMotionValue(F,N,z,t.shouldReduceMotion&&transformProps.has(F)?{type:!1}:W,t,nt));const Pe=N.animation;Pe&&(isWillChangeMotionValue(S)&&(S.add(F),Pe.then(()=>S.remove(F))),P.push(Pe))}return p&&Promise.all(P).then(()=>{frame.update(()=>{p&&setTarget(t,p)})}),P}function animateVariant(t,n,o={}){var s;const c=resolveVariant(t,n,o.type==="exit"?(s=t.presenceContext)===null||s===void 0?void 0:s.custom:void 0);let{transition:d=t.getDefaultTransition()||{}}=c||{};o.transitionOverride&&(d=o.transitionOverride);const h=c?()=>Promise.all(animateTarget(t,c,o)):()=>Promise.resolve(),p=t.variantChildren&&t.variantChildren.size?(S=0)=>{const{delayChildren:P=0,staggerChildren:L,staggerDirection:F}=d;return animateChildren(t,n,P+S,L,F,o)}:()=>Promise.resolve(),{when:y}=d;if(y){const[S,P]=y==="beforeChildren"?[h,p]:[p,h];return S().then(()=>P())}else return Promise.all([h(),p(o.delay)])}function animateChildren(t,n,o=0,s=0,c=1,d){const h=[],p=(t.variantChildren.size-1)*s,y=c===1?(S=0)=>S*s:(S=0)=>p-S*s;return Array.from(t.variantChildren).sort(sortByTreeOrder).forEach((S,P)=>{S.notify("AnimationStart",n),h.push(animateVariant(S,n,{...d,delay:o+y(P)}).then(()=>S.notify("AnimationComplete",n)))}),Promise.all(h)}function sortByTreeOrder(t,n){return t.sortNodePosition(n)}function animateVisualElement(t,n,o={}){t.notify("AnimationStart",n);let s;if(Array.isArray(n)){const c=n.map(d=>animateVariant(t,d,o));s=Promise.all(c)}else if(typeof n=="string")s=animateVariant(t,n,o);else{const c=typeof n=="function"?resolveVariant(t,n,o.custom):n;s=Promise.all(animateTarget(t,c,o))}return s.then(()=>{frame.postRender(()=>{t.notify("AnimationComplete",n)})})}const reversePriorityOrder=[...variantPriorityOrder].reverse(),numAnimationTypes=variantPriorityOrder.length;function animateList(t){return n=>Promise.all(n.map(({animation:o,options:s})=>animateVisualElement(t,o,s)))}function createAnimationState(t){let n=animateList(t);const o=createState();let s=!0;const c=y=>(S,P)=>{var L;const F=resolveVariant(t,P,y==="exit"?(L=t.presenceContext)===null||L===void 0?void 0:L.custom:void 0);if(F){const{transition:N,transitionEnd:z,...W}=F;S={...S,...W,...z}}return S};function d(y){n=y(t)}function h(y){const S=t.getProps(),P=t.getVariantContext(!0)||{},L=[],F=new Set;let N={},z=1/0;for(let nt=0;nt<numAnimationTypes;nt++){const Pe=reversePriorityOrder[nt],se=o[Pe],mt=S[Pe]!==void 0?S[Pe]:P[Pe],kt=isVariantLabel(mt),mn=Pe===y?se.isActive:null;mn===!1&&(z=nt);let _i=mt===P[Pe]&&mt!==S[Pe]&&kt;if(_i&&s&&t.manuallyAnimateOnMount&&(_i=!1),se.protectedKeys={...N},!se.isActive&&mn===null||!mt&&!se.prevProp||isAnimationControls(mt)||typeof mt=="boolean")continue;let Sa=checkVariantsDidChange(se.prevProp,mt)||Pe===y&&se.isActive&&!_i&&kt||nt>z&&kt,fa=!1;const La=Array.isArray(mt)?mt:[mt];let Ra=La.reduce(c(Pe),{});mn===!1&&(Ra={});const{prevResolvedValues:ma={}}=se,yt={...ma,...Ra},lt=pi=>{Sa=!0,F.has(pi)&&(fa=!0,F.delete(pi)),se.needsAnimating[pi]=!0;const ba=t.getValue(pi);ba&&(ba.liveStyle=!1)};for(const pi in yt){const ba=Ra[pi],Sc=ma[pi];if(N.hasOwnProperty(pi))continue;let ms=!1;isKeyframesTarget(ba)&&isKeyframesTarget(Sc)?ms=!shallowCompare(ba,Sc):ms=ba!==Sc,ms?ba!=null?lt(pi):F.add(pi):ba!==void 0&&F.has(pi)?lt(pi):se.protectedKeys[pi]=!0}se.prevProp=mt,se.prevResolvedValues=Ra,se.isActive&&(N={...N,...Ra}),s&&t.blockInitialAnimation&&(Sa=!1),Sa&&(!_i||fa)&&L.push(...La.map(pi=>({animation:pi,options:{type:Pe}})))}if(F.size){const nt={};F.forEach(Pe=>{const se=t.getBaseTarget(Pe),mt=t.getValue(Pe);mt&&(mt.liveStyle=!0),nt[Pe]=se===void 0?null:se}),L.push({animation:nt})}let W=!!L.length;return s&&(S.initial===!1||S.initial===S.animate)&&!t.manuallyAnimateOnMount&&(W=!1),s=!1,W?n(L):Promise.resolve()}function p(y,S){var P;if(o[y].isActive===S)return Promise.resolve();(P=t.variantChildren)===null||P===void 0||P.forEach(F=>{var N;return(N=F.animationState)===null||N===void 0?void 0:N.setActive(y,S)}),o[y].isActive=S;const L=h(y);for(const F in o)o[F].protectedKeys={};return L}return{animateChanges:h,setActive:p,setAnimateFunction:d,getState:()=>o}}function checkVariantsDidChange(t,n){return typeof n=="string"?n!==t:Array.isArray(n)?!shallowCompare(n,t):!1}function createTypeState(t=!1){return{isActive:t,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function createState(){return{animate:createTypeState(!0),whileInView:createTypeState(),whileHover:createTypeState(),whileTap:createTypeState(),whileDrag:createTypeState(),whileFocus:createTypeState(),exit:createTypeState()}}class AnimationFeature extends Feature{constructor(n){super(n),n.animationState||(n.animationState=createAnimationState(n))}updateAnimationControlsSubscription(){const{animate:n}=this.node.getProps();this.unmount(),isAnimationControls(n)&&(this.unmount=n.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:n}=this.node.getProps(),{animate:o}=this.node.prevProps||{};n!==o&&this.updateAnimationControlsSubscription()}unmount(){}}let id$1=0;class ExitAnimationFeature extends Feature{constructor(){super(...arguments),this.id=id$1++}update(){if(!this.node.presenceContext)return;const{isPresent:n,onExitComplete:o}=this.node.presenceContext,{isPresent:s}=this.node.prevPresenceContext||{};if(!this.node.animationState||n===s)return;const c=this.node.animationState.setActive("exit",!n);o&&!n&&c.then(()=>o(this.id))}mount(){const{register:n}=this.node.presenceContext||{};n&&(this.unmount=n(this.id))}unmount(){}}const animations={animation:{Feature:AnimationFeature},exit:{Feature:ExitAnimationFeature}},distance=(t,n)=>Math.abs(t-n);function distance2D(t,n){const o=distance(t.x,n.x),s=distance(t.y,n.y);return Math.sqrt(o**2+s**2)}class PanSession{constructor(n,o,{transformPagePoint:s,contextWindow:c,dragSnapToOrigin:d=!1}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const L=getPanInfo(this.lastMoveEventInfo,this.history),F=this.startEvent!==null,N=distance2D(L.offset,{x:0,y:0})>=3;if(!F&&!N)return;const{point:z}=L,{timestamp:W}=frameData;this.history.push({...z,timestamp:W});const{onStart:nt,onMove:Pe}=this.handlers;F||(nt&&nt(this.lastMoveEvent,L),this.startEvent=this.lastMoveEvent),Pe&&Pe(this.lastMoveEvent,L)},this.handlePointerMove=(L,F)=>{this.lastMoveEvent=L,this.lastMoveEventInfo=transformPoint(F,this.transformPagePoint),frame.update(this.updatePoint,!0)},this.handlePointerUp=(L,F)=>{this.end();const{onEnd:N,onSessionEnd:z,resumeAnimation:W}=this.handlers;if(this.dragSnapToOrigin&&W&&W(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const nt=getPanInfo(L.type==="pointercancel"?this.lastMoveEventInfo:transformPoint(F,this.transformPagePoint),this.history);this.startEvent&&N&&N(L,nt),z&&z(L,nt)},!isPrimaryPointer(n))return;this.dragSnapToOrigin=d,this.handlers=o,this.transformPagePoint=s,this.contextWindow=c||window;const h=extractEventInfo(n),p=transformPoint(h,this.transformPagePoint),{point:y}=p,{timestamp:S}=frameData;this.history=[{...y,timestamp:S}];const{onSessionStart:P}=o;P&&P(n,getPanInfo(p,this.history)),this.removeListeners=pipe(addPointerEvent(this.contextWindow,"pointermove",this.handlePointerMove),addPointerEvent(this.contextWindow,"pointerup",this.handlePointerUp),addPointerEvent(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(n){this.handlers=n}end(){this.removeListeners&&this.removeListeners(),cancelFrame(this.updatePoint)}}function transformPoint(t,n){return n?{point:n(t.point)}:t}function subtractPoint(t,n){return{x:t.x-n.x,y:t.y-n.y}}function getPanInfo({point:t},n){return{point:t,delta:subtractPoint(t,lastDevicePoint(n)),offset:subtractPoint(t,startDevicePoint(n)),velocity:getVelocity(n,.1)}}function startDevicePoint(t){return t[0]}function lastDevicePoint(t){return t[t.length-1]}function getVelocity(t,n){if(t.length<2)return{x:0,y:0};let o=t.length-1,s=null;const c=lastDevicePoint(t);for(;o>=0&&(s=t[o],!(c.timestamp-s.timestamp>secondsToMilliseconds(n)));)o--;if(!s)return{x:0,y:0};const d=millisecondsToSeconds(c.timestamp-s.timestamp);if(d===0)return{x:0,y:0};const h={x:(c.x-s.x)/d,y:(c.y-s.y)/d};return h.x===1/0&&(h.x=0),h.y===1/0&&(h.y=0),h}function calcLength(t){return t.max-t.min}function isNear(t,n=0,o=.01){return Math.abs(t-n)<=o}function calcAxisDelta(t,n,o,s=.5){t.origin=s,t.originPoint=mixNumber$1(n.min,n.max,t.origin),t.scale=calcLength(o)/calcLength(n),(isNear(t.scale,1,1e-4)||isNaN(t.scale))&&(t.scale=1),t.translate=mixNumber$1(o.min,o.max,t.origin)-t.originPoint,(isNear(t.translate)||isNaN(t.translate))&&(t.translate=0)}function calcBoxDelta(t,n,o,s){calcAxisDelta(t.x,n.x,o.x,s?s.originX:void 0),calcAxisDelta(t.y,n.y,o.y,s?s.originY:void 0)}function calcRelativeAxis(t,n,o){t.min=o.min+n.min,t.max=t.min+calcLength(n)}function calcRelativeBox(t,n,o){calcRelativeAxis(t.x,n.x,o.x),calcRelativeAxis(t.y,n.y,o.y)}function calcRelativeAxisPosition(t,n,o){t.min=n.min-o.min,t.max=t.min+calcLength(n)}function calcRelativePosition(t,n,o){calcRelativeAxisPosition(t.x,n.x,o.x),calcRelativeAxisPosition(t.y,n.y,o.y)}function applyConstraints(t,{min:n,max:o},s){return n!==void 0&&t<n?t=s?mixNumber$1(n,t,s.min):Math.max(t,n):o!==void 0&&t>o&&(t=s?mixNumber$1(o,t,s.max):Math.min(t,o)),t}function calcRelativeAxisConstraints(t,n,o){return{min:n!==void 0?t.min+n:void 0,max:o!==void 0?t.max+o-(t.max-t.min):void 0}}function calcRelativeConstraints(t,{top:n,left:o,bottom:s,right:c}){return{x:calcRelativeAxisConstraints(t.x,o,c),y:calcRelativeAxisConstraints(t.y,n,s)}}function calcViewportAxisConstraints(t,n){let o=n.min-t.min,s=n.max-t.max;return n.max-n.min<t.max-t.min&&([o,s]=[s,o]),{min:o,max:s}}function calcViewportConstraints(t,n){return{x:calcViewportAxisConstraints(t.x,n.x),y:calcViewportAxisConstraints(t.y,n.y)}}function calcOrigin(t,n){let o=.5;const s=calcLength(t),c=calcLength(n);return c>s?o=progress(n.min,n.max-s,t.min):s>c&&(o=progress(t.min,t.max-c,n.min)),clamp(0,1,o)}function rebaseAxisConstraints(t,n){const o={};return n.min!==void 0&&(o.min=n.min-t.min),n.max!==void 0&&(o.max=n.max-t.min),o}const defaultElastic=.35;function resolveDragElastic(t=defaultElastic){return t===!1?t=0:t===!0&&(t=defaultElastic),{x:resolveAxisElastic(t,"left","right"),y:resolveAxisElastic(t,"top","bottom")}}function resolveAxisElastic(t,n,o){return{min:resolvePointElastic(t,n),max:resolvePointElastic(t,o)}}function resolvePointElastic(t,n){return typeof t=="number"?t:t[n]||0}const createAxisDelta=()=>({translate:0,scale:1,origin:0,originPoint:0}),createDelta=()=>({x:createAxisDelta(),y:createAxisDelta()}),createAxis=()=>({min:0,max:0}),createBox=()=>({x:createAxis(),y:createAxis()});function eachAxis(t){return[t("x"),t("y")]}function convertBoundingBoxToBox({top:t,left:n,right:o,bottom:s}){return{x:{min:n,max:o},y:{min:t,max:s}}}function convertBoxToBoundingBox({x:t,y:n}){return{top:n.min,right:t.max,bottom:n.max,left:t.min}}function transformBoxPoints(t,n){if(!n)return t;const o=n({x:t.left,y:t.top}),s=n({x:t.right,y:t.bottom});return{top:o.y,left:o.x,bottom:s.y,right:s.x}}function isIdentityScale(t){return t===void 0||t===1}function hasScale({scale:t,scaleX:n,scaleY:o}){return!isIdentityScale(t)||!isIdentityScale(n)||!isIdentityScale(o)}function hasTransform(t){return hasScale(t)||has2DTranslate(t)||t.z||t.rotate||t.rotateX||t.rotateY||t.skewX||t.skewY}function has2DTranslate(t){return is2DTranslate(t.x)||is2DTranslate(t.y)}function is2DTranslate(t){return t&&t!=="0%"}function scalePoint(t,n,o){const s=t-o,c=n*s;return o+c}function applyPointDelta(t,n,o,s,c){return c!==void 0&&(t=scalePoint(t,c,s)),scalePoint(t,o,s)+n}function applyAxisDelta(t,n=0,o=1,s,c){t.min=applyPointDelta(t.min,n,o,s,c),t.max=applyPointDelta(t.max,n,o,s,c)}function applyBoxDelta(t,{x:n,y:o}){applyAxisDelta(t.x,n.translate,n.scale,n.originPoint),applyAxisDelta(t.y,o.translate,o.scale,o.originPoint)}function applyTreeDeltas(t,n,o,s=!1){const c=o.length;if(!c)return;n.x=n.y=1;let d,h;for(let p=0;p<c;p++){d=o[p],h=d.projectionDelta;const y=d.instance;y&&y.style&&y.style.display==="contents"||(s&&d.options.layoutScroll&&d.scroll&&d!==d.root&&transformBox(t,{x:-d.scroll.offset.x,y:-d.scroll.offset.y}),h&&(n.x*=h.x.scale,n.y*=h.y.scale,applyBoxDelta(t,h)),s&&hasTransform(d.latestValues)&&transformBox(t,d.latestValues))}n.x=snapToDefault(n.x),n.y=snapToDefault(n.y)}function snapToDefault(t){return Number.isInteger(t)||t>1.0000000000001||t<.999999999999?t:1}function translateAxis(t,n){t.min=t.min+n,t.max=t.max+n}function transformAxis(t,n,[o,s,c]){const d=n[c]!==void 0?n[c]:.5,h=mixNumber$1(t.min,t.max,d);applyAxisDelta(t,n[o],n[s],h,n.scale)}const xKeys$1=["x","scaleX","originX"],yKeys$1=["y","scaleY","originY"];function transformBox(t,n){transformAxis(t.x,n,xKeys$1),transformAxis(t.y,n,yKeys$1)}function measureViewportBox(t,n){return convertBoundingBoxToBox(transformBoxPoints(t.getBoundingClientRect(),n))}function measurePageBox(t,n,o){const s=measureViewportBox(t,o),{scroll:c}=n;return c&&(translateAxis(s.x,c.offset.x),translateAxis(s.y,c.offset.y)),s}const getContextWindow=({current:t})=>t?t.ownerDocument.defaultView:null,elementDragControls=new WeakMap;class VisualElementDragControls{constructor(n){this.openGlobalLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=createBox(),this.visualElement=n}start(n,{snapToCursor:o=!1}={}){const{presenceContext:s}=this.visualElement;if(s&&s.isPresent===!1)return;const c=P=>{const{dragSnapToOrigin:L}=this.getProps();L?this.pauseAnimation():this.stopAnimation(),o&&this.snapToCursor(extractEventInfo(P,"page").point)},d=(P,L)=>{const{drag:F,dragPropagation:N,onDragStart:z}=this.getProps();if(F&&!N&&(this.openGlobalLock&&this.openGlobalLock(),this.openGlobalLock=getGlobalLock(F),!this.openGlobalLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),eachAxis(nt=>{let Pe=this.getAxisMotionValue(nt).get()||0;if(percent.test(Pe)){const{projection:se}=this.visualElement;if(se&&se.layout){const mt=se.layout.layoutBox[nt];mt&&(Pe=calcLength(mt)*(parseFloat(Pe)/100))}}this.originPoint[nt]=Pe}),z&&z(P,L);const{animationState:W}=this.visualElement;W&&W.setActive("whileDrag",!0)},h=(P,L)=>{const{dragPropagation:F,dragDirectionLock:N,onDirectionLock:z,onDrag:W}=this.getProps();if(!F&&!this.openGlobalLock)return;const{offset:nt}=L;if(N&&this.currentDirection===null){this.currentDirection=getCurrentDirection(nt),this.currentDirection!==null&&z&&z(this.currentDirection);return}this.updateAxis("x",L.point,nt),this.updateAxis("y",L.point,nt),this.visualElement.render(),W&&W(P,L)},p=(P,L)=>this.stop(P,L),y=()=>eachAxis(P=>{var L;return this.getAnimationState(P)==="paused"&&((L=this.getAxisMotionValue(P).animation)===null||L===void 0?void 0:L.play())}),{dragSnapToOrigin:S}=this.getProps();this.panSession=new PanSession(n,{onSessionStart:c,onStart:d,onMove:h,onSessionEnd:p,resumeAnimation:y},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:S,contextWindow:getContextWindow(this.visualElement)})}stop(n,o){const s=this.isDragging;if(this.cancel(),!s)return;const{velocity:c}=o;this.startAnimation(c);const{onDragEnd:d}=this.getProps();d&&d(n,o)}cancel(){this.isDragging=!1;const{projection:n,animationState:o}=this.visualElement;n&&(n.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:s}=this.getProps();!s&&this.openGlobalLock&&(this.openGlobalLock(),this.openGlobalLock=null),o&&o.setActive("whileDrag",!1)}updateAxis(n,o,s){const{drag:c}=this.getProps();if(!s||!shouldDrag(n,c,this.currentDirection))return;const d=this.getAxisMotionValue(n);let h=this.originPoint[n]+s[n];this.constraints&&this.constraints[n]&&(h=applyConstraints(h,this.constraints[n],this.elastic[n])),d.set(h)}resolveConstraints(){var n;const{dragConstraints:o,dragElastic:s}=this.getProps(),c=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(n=this.visualElement.projection)===null||n===void 0?void 0:n.layout,d=this.constraints;o&&isRefObject(o)?this.constraints||(this.constraints=this.resolveRefConstraints()):o&&c?this.constraints=calcRelativeConstraints(c.layoutBox,o):this.constraints=!1,this.elastic=resolveDragElastic(s),d!==this.constraints&&c&&this.constraints&&!this.hasMutatedConstraints&&eachAxis(h=>{this.getAxisMotionValue(h)&&(this.constraints[h]=rebaseAxisConstraints(c.layoutBox[h],this.constraints[h]))})}resolveRefConstraints(){const{dragConstraints:n,onMeasureDragConstraints:o}=this.getProps();if(!n||!isRefObject(n))return!1;const s=n.current;invariant(s!==null,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.");const{projection:c}=this.visualElement;if(!c||!c.layout)return!1;const d=measurePageBox(s,c.root,this.visualElement.getTransformPagePoint());let h=calcViewportConstraints(c.layout.layoutBox,d);if(o){const p=o(convertBoxToBoundingBox(h));this.hasMutatedConstraints=!!p,p&&(h=convertBoundingBoxToBox(p))}return h}startAnimation(n){const{drag:o,dragMomentum:s,dragElastic:c,dragTransition:d,dragSnapToOrigin:h,onDragTransitionEnd:p}=this.getProps(),y=this.constraints||{},S=eachAxis(P=>{if(!shouldDrag(P,o,this.currentDirection))return;let L=y[P]||{};h&&(L={min:0,max:0});const F=c?200:1e6,N=c?40:1e7,z={type:"inertia",velocity:s?n[P]:0,bounceStiffness:F,bounceDamping:N,timeConstant:750,restDelta:1,restSpeed:10,...d,...L};return this.startAxisValueAnimation(P,z)});return Promise.all(S).then(p)}startAxisValueAnimation(n,o){const s=this.getAxisMotionValue(n);return s.start(animateMotionValue(n,s,0,o,this.visualElement))}stopAnimation(){eachAxis(n=>this.getAxisMotionValue(n).stop())}pauseAnimation(){eachAxis(n=>{var o;return(o=this.getAxisMotionValue(n).animation)===null||o===void 0?void 0:o.pause()})}getAnimationState(n){var o;return(o=this.getAxisMotionValue(n).animation)===null||o===void 0?void 0:o.state}getAxisMotionValue(n){const o="_drag"+n.toUpperCase(),s=this.visualElement.getProps(),c=s[o];return c||this.visualElement.getValue(n,(s.initial?s.initial[n]:void 0)||0)}snapToCursor(n){eachAxis(o=>{const{drag:s}=this.getProps();if(!shouldDrag(o,s,this.currentDirection))return;const{projection:c}=this.visualElement,d=this.getAxisMotionValue(o);if(c&&c.layout){const{min:h,max:p}=c.layout.layoutBox[o];d.set(n[o]-mixNumber$1(h,p,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:n,dragConstraints:o}=this.getProps(),{projection:s}=this.visualElement;if(!isRefObject(o)||!s||!this.constraints)return;this.stopAnimation();const c={x:0,y:0};eachAxis(h=>{const p=this.getAxisMotionValue(h);if(p){const y=p.get();c[h]=calcOrigin({min:y,max:y},this.constraints[h])}});const{transformTemplate:d}=this.visualElement.getProps();this.visualElement.current.style.transform=d?d({},""):"none",s.root&&s.root.updateScroll(),s.updateLayout(),this.resolveConstraints(),eachAxis(h=>{if(!shouldDrag(h,n,null))return;const p=this.getAxisMotionValue(h),{min:y,max:S}=this.constraints[h];p.set(mixNumber$1(y,S,c[h]))})}addListeners(){if(!this.visualElement.current)return;elementDragControls.set(this.visualElement,this);const n=this.visualElement.current,o=addPointerEvent(n,"pointerdown",y=>{const{drag:S,dragListener:P=!0}=this.getProps();S&&P&&this.start(y)}),s=()=>{const{dragConstraints:y}=this.getProps();isRefObject(y)&&(this.constraints=this.resolveRefConstraints())},{projection:c}=this.visualElement,d=c.addEventListener("measure",s);c&&!c.layout&&(c.root&&c.root.updateScroll(),c.updateLayout()),s();const h=addDomEvent(window,"resize",()=>this.scalePositionWithinConstraints()),p=c.addEventListener("didUpdate",({delta:y,hasLayoutChanged:S})=>{this.isDragging&&S&&(eachAxis(P=>{const L=this.getAxisMotionValue(P);L&&(this.originPoint[P]+=y[P].translate,L.set(L.get()+y[P].translate))}),this.visualElement.render())});return()=>{h(),o(),d(),p&&p()}}getProps(){const n=this.visualElement.getProps(),{drag:o=!1,dragDirectionLock:s=!1,dragPropagation:c=!1,dragConstraints:d=!1,dragElastic:h=defaultElastic,dragMomentum:p=!0}=n;return{...n,drag:o,dragDirectionLock:s,dragPropagation:c,dragConstraints:d,dragElastic:h,dragMomentum:p}}}function shouldDrag(t,n,o){return(n===!0||n===t)&&(o===null||o===t)}function getCurrentDirection(t,n=10){let o=null;return Math.abs(t.y)>n?o="y":Math.abs(t.x)>n&&(o="x"),o}class DragGesture extends Feature{constructor(n){super(n),this.removeGroupControls=noop$1,this.removeListeners=noop$1,this.controls=new VisualElementDragControls(n)}mount(){const{dragControls:n}=this.node.getProps();n&&(this.removeGroupControls=n.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||noop$1}unmount(){this.removeGroupControls(),this.removeListeners()}}const asyncHandler=t=>(n,o)=>{t&&t(n,o)};class PanGesture extends Feature{constructor(){super(...arguments),this.removePointerDownListener=noop$1}onPointerDown(n){this.session=new PanSession(n,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:getContextWindow(this.node)})}createPanHandlers(){const{onPanSessionStart:n,onPanStart:o,onPan:s,onPanEnd:c}=this.node.getProps();return{onSessionStart:asyncHandler(n),onStart:asyncHandler(o),onMove:s,onEnd:(d,h)=>{delete this.session,c&&c(d,h)}}}mount(){this.removePointerDownListener=addPointerEvent(this.node.current,"pointerdown",n=>this.onPointerDown(n))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}function usePresence(){const t=React.useContext(PresenceContext);if(t===null)return[!0,null];const{isPresent:n,onExitComplete:o,register:s}=t,c=React.useId();return React.useEffect(()=>s(c),[]),!n&&o?[!1,()=>o&&o(c)]:[!0]}const globalProjectionState={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function pixelsToPercent(t,n){return n.max===n.min?0:t/(n.max-n.min)*100}const correctBorderRadius={correct:(t,n)=>{if(!n.target)return t;if(typeof t=="string")if(px.test(t))t=parseFloat(t);else return t;const o=pixelsToPercent(t,n.target.x),s=pixelsToPercent(t,n.target.y);return`${o}% ${s}%`}},correctBoxShadow={correct:(t,{treeScale:n,projectionDelta:o})=>{const s=t,c=complex.parse(t);if(c.length>5)return s;const d=complex.createTransformer(t),h=typeof c[0]!="number"?1:0,p=o.x.scale*n.x,y=o.y.scale*n.y;c[0+h]/=p,c[1+h]/=y;const S=mixNumber$1(p,y,.5);return typeof c[2+h]=="number"&&(c[2+h]/=S),typeof c[3+h]=="number"&&(c[3+h]/=S),d(c)}};class MeasureLayoutWithContext extends React.Component{componentDidMount(){const{visualElement:n,layoutGroup:o,switchLayoutGroup:s,layoutId:c}=this.props,{projection:d}=n;addScaleCorrector(defaultScaleCorrectors),d&&(o.group&&o.group.add(d),s&&s.register&&c&&s.register(d),d.root.didUpdate(),d.addEventListener("animationComplete",()=>{this.safeToRemove()}),d.setOptions({...d.options,onExitComplete:()=>this.safeToRemove()})),globalProjectionState.hasEverUpdated=!0}getSnapshotBeforeUpdate(n){const{layoutDependency:o,visualElement:s,drag:c,isPresent:d}=this.props,h=s.projection;return h&&(h.isPresent=d,c||n.layoutDependency!==o||o===void 0?h.willUpdate():this.safeToRemove(),n.isPresent!==d&&(d?h.promote():h.relegate()||frame.postRender(()=>{const p=h.getStack();(!p||!p.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:n}=this.props.visualElement;n&&(n.root.didUpdate(),microtask.postRender(()=>{!n.currentAnimation&&n.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:n,layoutGroup:o,switchLayoutGroup:s}=this.props,{projection:c}=n;c&&(c.scheduleCheckAfterUnmount(),o&&o.group&&o.group.remove(c),s&&s.deregister&&s.deregister(c))}safeToRemove(){const{safeToRemove:n}=this.props;n&&n()}render(){return null}}function MeasureLayout(t){const[n,o]=usePresence(),s=React.useContext(LayoutGroupContext);return React.createElement(MeasureLayoutWithContext,{...t,layoutGroup:s,switchLayoutGroup:React.useContext(SwitchLayoutGroupContext),isPresent:n,safeToRemove:o})}const defaultScaleCorrectors={borderRadius:{...correctBorderRadius,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:correctBorderRadius,borderTopRightRadius:correctBorderRadius,borderBottomLeftRadius:correctBorderRadius,borderBottomRightRadius:correctBorderRadius,boxShadow:correctBoxShadow},borders=["TopLeft","TopRight","BottomLeft","BottomRight"],numBorders=borders.length,asNumber=t=>typeof t=="string"?parseFloat(t):t,isPx=t=>typeof t=="number"||px.test(t);function mixValues(t,n,o,s,c,d){c?(t.opacity=mixNumber$1(0,o.opacity!==void 0?o.opacity:1,easeCrossfadeIn(s)),t.opacityExit=mixNumber$1(n.opacity!==void 0?n.opacity:1,0,easeCrossfadeOut(s))):d&&(t.opacity=mixNumber$1(n.opacity!==void 0?n.opacity:1,o.opacity!==void 0?o.opacity:1,s));for(let h=0;h<numBorders;h++){const p=`border${borders[h]}Radius`;let y=getRadius(n,p),S=getRadius(o,p);if(y===void 0&&S===void 0)continue;y||(y=0),S||(S=0),y===0||S===0||isPx(y)===isPx(S)?(t[p]=Math.max(mixNumber$1(asNumber(y),asNumber(S),s),0),(percent.test(S)||percent.test(y))&&(t[p]+="%")):t[p]=S}(n.rotate||o.rotate)&&(t.rotate=mixNumber$1(n.rotate||0,o.rotate||0,s))}function getRadius(t,n){return t[n]!==void 0?t[n]:t.borderRadius}const easeCrossfadeIn=compress(0,.5,circOut),easeCrossfadeOut=compress(.5,.95,noop$1);function compress(t,n,o){return s=>s<t?0:s>n?1:o(progress(t,n,s))}function copyAxisInto(t,n){t.min=n.min,t.max=n.max}function copyBoxInto(t,n){copyAxisInto(t.x,n.x),copyAxisInto(t.y,n.y)}function removePointDelta(t,n,o,s,c){return t-=n,t=scalePoint(t,1/o,s),c!==void 0&&(t=scalePoint(t,1/c,s)),t}function removeAxisDelta(t,n=0,o=1,s=.5,c,d=t,h=t){if(percent.test(n)&&(n=parseFloat(n),n=mixNumber$1(h.min,h.max,n/100)-h.min),typeof n!="number")return;let p=mixNumber$1(d.min,d.max,s);t===d&&(p-=n),t.min=removePointDelta(t.min,n,o,p,c),t.max=removePointDelta(t.max,n,o,p,c)}function removeAxisTransforms(t,n,[o,s,c],d,h){removeAxisDelta(t,n[o],n[s],n[c],n.scale,d,h)}const xKeys=["x","scaleX","originX"],yKeys=["y","scaleY","originY"];function removeBoxTransforms(t,n,o,s){removeAxisTransforms(t.x,n,xKeys,o?o.x:void 0,s?s.x:void 0),removeAxisTransforms(t.y,n,yKeys,o?o.y:void 0,s?s.y:void 0)}function isAxisDeltaZero(t){return t.translate===0&&t.scale===1}function isDeltaZero(t){return isAxisDeltaZero(t.x)&&isAxisDeltaZero(t.y)}function boxEquals(t,n){return t.x.min===n.x.min&&t.x.max===n.x.max&&t.y.min===n.y.min&&t.y.max===n.y.max}function boxEqualsRounded(t,n){return Math.round(t.x.min)===Math.round(n.x.min)&&Math.round(t.x.max)===Math.round(n.x.max)&&Math.round(t.y.min)===Math.round(n.y.min)&&Math.round(t.y.max)===Math.round(n.y.max)}function aspectRatio(t){return calcLength(t.x)/calcLength(t.y)}class NodeStack{constructor(){this.members=[]}add(n){addUniqueItem(this.members,n),n.scheduleRender()}remove(n){if(removeItem(this.members,n),n===this.prevLead&&(this.prevLead=void 0),n===this.lead){const o=this.members[this.members.length-1];o&&this.promote(o)}}relegate(n){const o=this.members.findIndex(c=>n===c);if(o===0)return!1;let s;for(let c=o;c>=0;c--){const d=this.members[c];if(d.isPresent!==!1){s=d;break}}return s?(this.promote(s),!0):!1}promote(n,o){const s=this.lead;if(n!==s&&(this.prevLead=s,this.lead=n,n.show(),s)){s.instance&&s.scheduleRender(),n.scheduleRender(),n.resumeFrom=s,o&&(n.resumeFrom.preserveOpacity=!0),s.snapshot&&(n.snapshot=s.snapshot,n.snapshot.latestValues=s.animationValues||s.latestValues),n.root&&n.root.isUpdating&&(n.isLayoutDirty=!0);const{crossfade:c}=n.options;c===!1&&s.hide()}}exitAnimationComplete(){this.members.forEach(n=>{const{options:o,resumingFrom:s}=n;o.onExitComplete&&o.onExitComplete(),s&&s.options.onExitComplete&&s.options.onExitComplete()})}scheduleRender(){this.members.forEach(n=>{n.instance&&n.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function buildProjectionTransform(t,n,o){let s="";const c=t.x.translate/n.x,d=t.y.translate/n.y,h=(o==null?void 0:o.z)||0;if((c||d||h)&&(s=`translate3d(${c}px, ${d}px, ${h}px) `),(n.x!==1||n.y!==1)&&(s+=`scale(${1/n.x}, ${1/n.y}) `),o){const{transformPerspective:S,rotate:P,rotateX:L,rotateY:F,skewX:N,skewY:z}=o;S&&(s=`perspective(${S}px) ${s}`),P&&(s+=`rotate(${P}deg) `),L&&(s+=`rotateX(${L}deg) `),F&&(s+=`rotateY(${F}deg) `),N&&(s+=`skewX(${N}deg) `),z&&(s+=`skewY(${z}deg) `)}const p=t.x.scale*n.x,y=t.y.scale*n.y;return(p!==1||y!==1)&&(s+=`scale(${p}, ${y})`),s||"none"}const compareByDepth=(t,n)=>t.depth-n.depth;class FlatTree{constructor(){this.children=[],this.isDirty=!1}add(n){addUniqueItem(this.children,n),this.isDirty=!0}remove(n){removeItem(this.children,n),this.isDirty=!0}forEach(n){this.isDirty&&this.children.sort(compareByDepth),this.isDirty=!1,this.children.forEach(n)}}function delay(t,n){const o=time.now(),s=({timestamp:c})=>{const d=c-o;d>=n&&(cancelFrame(s),t(d-n))};return frame.read(s,!0),()=>cancelFrame(s)}function record(t){window.MotionDebug&&window.MotionDebug.record(t)}function isSVGElement(t){return t instanceof SVGElement&&t.tagName!=="svg"}function animateSingleValue(t,n,o){const s=isMotionValue(t)?t:motionValue(t);return s.start(animateMotionValue("",s,n,o)),s.animation}const transformAxes=["","X","Y","Z"],hiddenVisibility={visibility:"hidden"},animationTarget=1e3;let id=0;const projectionFrameData={type:"projectionFrame",totalNodes:0,resolvedTargetDeltas:0,recalculatedProjection:0};function resetDistortingTransform(t,n,o,s){const{latestValues:c}=n;c[t]&&(o[t]=c[t],n.setStaticValue(t,0),s&&(s[t]=0))}function createProjectionNode({attachResizeListener:t,defaultParent:n,measureScroll:o,checkIsScrollRoot:s,resetTransform:c}){return class{constructor(h={},p=n==null?void 0:n()){this.id=id++,this.animationId=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.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.updateScheduled=!1,this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,projectionFrameData.totalNodes=projectionFrameData.resolvedTargetDeltas=projectionFrameData.recalculatedProjection=0,this.nodes.forEach(propagateDirtyNodes),this.nodes.forEach(resolveTargetDelta),this.nodes.forEach(calcProjection),this.nodes.forEach(cleanDirtyNodes),record(projectionFrameData)},this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=h,this.root=p?p.root||p:this,this.path=p?[...p.path,p]:[],this.parent=p,this.depth=p?p.depth+1:0;for(let y=0;y<this.path.length;y++)this.path[y].shouldResetTransform=!0;this.root===this&&(this.nodes=new FlatTree)}addEventListener(h,p){return this.eventHandlers.has(h)||this.eventHandlers.set(h,new SubscriptionManager),this.eventHandlers.get(h).add(p)}notifyListeners(h,...p){const y=this.eventHandlers.get(h);y&&y.notify(...p)}hasListeners(h){return this.eventHandlers.has(h)}mount(h,p=this.root.hasTreeAnimated){if(this.instance)return;this.isSVG=isSVGElement(h),this.instance=h;const{layoutId:y,layout:S,visualElement:P}=this.options;if(P&&!P.current&&P.mount(h),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),p&&(S||y)&&(this.isLayoutDirty=!0),t){let L;const F=()=>this.root.updateBlockedByResize=!1;t(h,()=>{this.root.updateBlockedByResize=!0,L&&L(),L=delay(F,250),globalProjectionState.hasAnimatedSinceResize&&(globalProjectionState.hasAnimatedSinceResize=!1,this.nodes.forEach(finishAnimation))})}y&&this.root.registerSharedNode(y,this),this.options.animate!==!1&&P&&(y||S)&&this.addEventListener("didUpdate",({delta:L,hasLayoutChanged:F,hasRelativeTargetChanged:N,layout:z})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const W=this.options.transition||P.getDefaultTransition()||defaultLayoutTransition,{onLayoutAnimationStart:nt,onLayoutAnimationComplete:Pe}=P.getProps(),se=!this.targetLayout||!boxEqualsRounded(this.targetLayout,z)||N,mt=!F&&N;if(this.options.layoutRoot||this.resumeFrom&&this.resumeFrom.instance||mt||F&&(se||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0),this.setAnimationOrigin(L,mt);const kt={...getValueTransition(W,"layout"),onPlay:nt,onComplete:Pe};(P.shouldReduceMotion||this.options.layoutRoot)&&(kt.delay=0,kt.type=!1),this.startAnimation(kt)}else F||finishAnimation(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=z})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const h=this.getStack();h&&h.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,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.forEach(resetSkewAndRotation),this.animationId++)}getTransformTemplate(){const{visualElement:h}=this.options;return h&&h.getProps().transformTemplate}willUpdate(h=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let P=0;P<this.path.length;P++){const L=this.path[P];L.shouldResetTransform=!0,L.updateScroll("snapshot"),L.options.layoutRoot&&L.willUpdate(!1)}const{layoutId:p,layout:y}=this.options;if(p===void 0&&!y)return;const S=this.getTransformTemplate();this.prevTransformTemplateValue=S?S(this.latestValues,""):void 0,this.updateSnapshot(),h&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(clearMeasurements);return}this.isUpdating||this.nodes.forEach(clearIsLayoutDirty),this.isUpdating=!1,window.HandoffCancelAllAnimations&&window.HandoffCancelAllAnimations(),this.nodes.forEach(resetTransformStyle),this.nodes.forEach(updateLayout),this.nodes.forEach(notifyLayoutUpdate),this.clearAllSnapshots();const p=time.now();frameData.delta=clamp(0,1e3/60,p-frameData.timestamp),frameData.timestamp=p,frameData.isProcessing=!0,steps.update.process(frameData),steps.preRender.process(frameData),steps.render.process(frameData),frameData.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,microtask.read(()=>this.update()))}clearAllSnapshots(){this.nodes.forEach(clearSnapshot),this.sharedNodes.forEach(removeLeadSnapshots)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,frame.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){frame.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure())}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let y=0;y<this.path.length;y++)this.path[y].updateScroll();const h=this.layout;this.layout=this.measure(!1),this.layoutCorrected=createBox(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:p}=this.options;p&&p.notify("LayoutMeasure",this.layout.layoutBox,h?h.layoutBox:void 0)}updateScroll(h="measure"){let p=!!(this.options.layoutScroll&&this.instance);this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===h&&(p=!1),p&&(this.scroll={animationId:this.root.animationId,phase:h,isRoot:s(this.instance),offset:o(this.instance)})}resetTransform(){if(!c)return;const h=this.isLayoutDirty||this.shouldResetTransform,p=this.projectionDelta&&!isDeltaZero(this.projectionDelta),y=this.getTransformTemplate(),S=y?y(this.latestValues,""):void 0,P=S!==this.prevTransformTemplateValue;h&&(p||hasTransform(this.latestValues)||P)&&(c(this.instance,S),this.shouldResetTransform=!1,this.scheduleRender())}measure(h=!0){const p=this.measurePageBox();let y=this.removeElementScroll(p);return h&&(y=this.removeTransform(y)),roundBox(y),{animationId:this.root.animationId,measuredBox:p,layoutBox:y,latestValues:{},source:this.id}}measurePageBox(){const{visualElement:h}=this.options;if(!h)return createBox();const p=h.measureViewportBox(),{scroll:y}=this.root;return y&&(translateAxis(p.x,y.offset.x),translateAxis(p.y,y.offset.y)),p}removeElementScroll(h){const p=createBox();copyBoxInto(p,h);for(let y=0;y<this.path.length;y++){const S=this.path[y],{scroll:P,options:L}=S;if(S!==this.root&&P&&L.layoutScroll){if(P.isRoot){copyBoxInto(p,h);const{scroll:F}=this.root;F&&(translateAxis(p.x,-F.offset.x),translateAxis(p.y,-F.offset.y))}translateAxis(p.x,P.offset.x),translateAxis(p.y,P.offset.y)}}return p}applyTransform(h,p=!1){const y=createBox();copyBoxInto(y,h);for(let S=0;S<this.path.length;S++){const P=this.path[S];!p&&P.options.layoutScroll&&P.scroll&&P!==P.root&&transformBox(y,{x:-P.scroll.offset.x,y:-P.scroll.offset.y}),hasTransform(P.latestValues)&&transformBox(y,P.latestValues)}return hasTransform(this.latestValues)&&transformBox(y,this.latestValues),y}removeTransform(h){const p=createBox();copyBoxInto(p,h);for(let y=0;y<this.path.length;y++){const S=this.path[y];if(!S.instance||!hasTransform(S.latestValues))continue;hasScale(S.latestValues)&&S.updateSnapshot();const P=createBox(),L=S.measurePageBox();copyBoxInto(P,L),removeBoxTransforms(p,S.latestValues,S.snapshot?S.snapshot.layoutBox:void 0,P)}return hasTransform(this.latestValues)&&removeBoxTransforms(p,this.latestValues),p}setTargetDelta(h){this.targetDelta=h,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(h){this.options={...this.options,...h,crossfade:h.crossfade!==void 0?h.crossfade:!0}}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!==frameData.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(h=!1){var p;const y=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=y.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=y.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=y.isSharedProjectionDirty);const S=!!this.resumingFrom||this!==y;if(!(h||S&&this.isSharedProjectionDirty||this.isProjectionDirty||!((p=this.parent)===null||p===void 0)&&p.isProjectionDirty||this.attemptToResolveRelativeTarget))return;const{layout:L,layoutId:F}=this.options;if(!(!this.layout||!(L||F))){if(this.resolvedRelativeTargetAt=frameData.timestamp,!this.targetDelta&&!this.relativeTarget){const N=this.getClosestProjectingParent();N&&N.layout&&this.animationProgress!==1?(this.relativeParent=N,this.forceRelativeParentToResolveTarget(),this.relativeTarget=createBox(),this.relativeTargetOrigin=createBox(),calcRelativePosition(this.relativeTargetOrigin,this.layout.layoutBox,N.layout.layoutBox),copyBoxInto(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}if(!(!this.relativeTarget&&!this.targetDelta)){if(this.target||(this.target=createBox(),this.targetWithTransforms=createBox()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),calcRelativeBox(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):copyBoxInto(this.target,this.layout.layoutBox),applyBoxDelta(this.target,this.targetDelta)):copyBoxInto(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget){this.attemptToResolveRelativeTarget=!1;const N=this.getClosestProjectingParent();N&&!!N.resumingFrom==!!this.resumingFrom&&!N.options.layoutScroll&&N.target&&this.animationProgress!==1?(this.relativeParent=N,this.forceRelativeParentToResolveTarget(),this.relativeTarget=createBox(),this.relativeTargetOrigin=createBox(),calcRelativePosition(this.relativeTargetOrigin,this.target,N.target),copyBoxInto(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}projectionFrameData.resolvedTargetDeltas++}}}getClosestProjectingParent(){if(!(!this.parent||hasScale(this.parent.latestValues)||has2DTranslate(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}calcProjection(){var h;const p=this.getLead(),y=!!this.resumingFrom||this!==p;let S=!0;if((this.isProjectionDirty||!((h=this.parent)===null||h===void 0)&&h.isProjectionDirty)&&(S=!1),y&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(S=!1),this.resolvedRelativeTargetAt===frameData.timestamp&&(S=!1),S)return;const{layout:P,layoutId:L}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(P||L))return;copyBoxInto(this.layoutCorrected,this.layout.layoutBox);const F=this.treeScale.x,N=this.treeScale.y;applyTreeDeltas(this.layoutCorrected,this.treeScale,this.path,y),p.layout&&!p.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(p.target=p.layout.layoutBox,p.targetWithTransforms=createBox());const{target:z}=p;if(!z){this.projectionTransform&&(this.projectionDelta=createDelta(),this.projectionTransform="none",this.scheduleRender());return}this.projectionDelta||(this.projectionDelta=createDelta(),this.projectionDeltaWithTransform=createDelta());const W=this.projectionTransform;calcBoxDelta(this.projectionDelta,this.layoutCorrected,z,this.latestValues),this.projectionTransform=buildProjectionTransform(this.projectionDelta,this.treeScale),(this.projectionTransform!==W||this.treeScale.x!==F||this.treeScale.y!==N)&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",z)),projectionFrameData.recalculatedProjection++}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(h=!0){if(this.options.scheduleRender&&this.options.scheduleRender(),h){const p=this.getStack();p&&p.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}setAnimationOrigin(h,p=!1){const y=this.snapshot,S=y?y.latestValues:{},P={...this.latestValues},L=createDelta();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!p;const F=createBox(),N=y?y.source:void 0,z=this.layout?this.layout.source:void 0,W=N!==z,nt=this.getStack(),Pe=!nt||nt.members.length<=1,se=!!(W&&!Pe&&this.options.crossfade===!0&&!this.path.some(hasOpacityCrossfade));this.animationProgress=0;let mt;this.mixTargetDelta=kt=>{const mn=kt/1e3;mixAxisDelta(L.x,h.x,mn),mixAxisDelta(L.y,h.y,mn),this.setTargetDelta(L),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(calcRelativePosition(F,this.layout.layoutBox,this.relativeParent.layout.layoutBox),mixBox(this.relativeTarget,this.relativeTargetOrigin,F,mn),mt&&boxEquals(this.relativeTarget,mt)&&(this.isProjectionDirty=!1),mt||(mt=createBox()),copyBoxInto(mt,this.relativeTarget)),W&&(this.animationValues=P,mixValues(P,S,this.latestValues,mn,se,Pe)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=mn},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(h){this.notifyListeners("animationStart"),this.currentAnimation&&this.currentAnimation.stop(),this.resumingFrom&&this.resumingFrom.currentAnimation&&this.resumingFrom.currentAnimation.stop(),this.pendingAnimation&&(cancelFrame(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=frame.update(()=>{globalProjectionState.hasAnimatedSinceResize=!0,this.currentAnimation=animateSingleValue(0,animationTarget,{...h,onUpdate:p=>{this.mixTargetDelta(p),h.onUpdate&&h.onUpdate(p)},onComplete:()=>{h.onComplete&&h.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const h=this.getStack();h&&h.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(animationTarget),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const h=this.getLead();let{targetWithTransforms:p,target:y,layout:S,latestValues:P}=h;if(!(!p||!y||!S)){if(this!==h&&this.layout&&S&&shouldAnimatePositionOnly(this.options.animationType,this.layout.layoutBox,S.layoutBox)){y=this.target||createBox();const L=calcLength(this.layout.layoutBox.x);y.x.min=h.target.x.min,y.x.max=y.x.min+L;const F=calcLength(this.layout.layoutBox.y);y.y.min=h.target.y.min,y.y.max=y.y.min+F}copyBoxInto(p,y),transformBox(p,P),calcBoxDelta(this.projectionDeltaWithTransform,this.layoutCorrected,p,P)}}registerSharedNode(h,p){this.sharedNodes.has(h)||this.sharedNodes.set(h,new NodeStack),this.sharedNodes.get(h).add(p);const S=p.options.initialPromotionConfig;p.promote({transition:S?S.transition:void 0,preserveFollowOpacity:S&&S.shouldPreserveFollowOpacity?S.shouldPreserveFollowOpacity(p):void 0})}isLead(){const h=this.getStack();return h?h.lead===this:!0}getLead(){var h;const{layoutId:p}=this.options;return p?((h=this.getStack())===null||h===void 0?void 0:h.lead)||this:this}getPrevLead(){var h;const{layoutId:p}=this.options;return p?(h=this.getStack())===null||h===void 0?void 0:h.prevLead:void 0}getStack(){const{layoutId:h}=this.options;if(h)return this.root.sharedNodes.get(h)}promote({needsReset:h,transition:p,preserveFollowOpacity:y}={}){const S=this.getStack();S&&S.promote(this,y),h&&(this.projectionDelta=void 0,this.needsReset=!0),p&&this.setOptions({transition:p})}relegate(){const h=this.getStack();return h?h.relegate(this):!1}resetSkewAndRotation(){const{visualElement:h}=this.options;if(!h)return;let p=!1;const{latestValues:y}=h;if((y.z||y.rotate||y.rotateX||y.rotateY||y.rotateZ||y.skewX||y.skewY)&&(p=!0),!p)return;const S={};y.z&&resetDistortingTransform("z",h,S,this.animationValues);for(let P=0;P<transformAxes.length;P++)resetDistortingTransform(`rotate${transformAxes[P]}`,h,S,this.animationValues),resetDistortingTransform(`skew${transformAxes[P]}`,h,S,this.animationValues);h.render();for(const P in S)h.setStaticValue(P,S[P]),this.animationValues&&(this.animationValues[P]=S[P]);h.scheduleRender()}getProjectionStyles(h){var p,y;if(!this.instance||this.isSVG)return;if(!this.isVisible)return hiddenVisibility;const S={visibility:""},P=this.getTransformTemplate();if(this.needsReset)return this.needsReset=!1,S.opacity="",S.pointerEvents=resolveMotionValue(h==null?void 0:h.pointerEvents)||"",S.transform=P?P(this.latestValues,""):"none",S;const L=this.getLead();if(!this.projectionDelta||!this.layout||!L.target){const W={};return this.options.layoutId&&(W.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,W.pointerEvents=resolveMotionValue(h==null?void 0:h.pointerEvents)||""),this.hasProjected&&!hasTransform(this.latestValues)&&(W.transform=P?P({},""):"none",this.hasProjected=!1),W}const F=L.animationValues||L.latestValues;this.applyTransformsToTarget(),S.transform=buildProjectionTransform(this.projectionDeltaWithTransform,this.treeScale,F),P&&(S.transform=P(F,S.transform));const{x:N,y:z}=this.projectionDelta;S.transformOrigin=`${N.origin*100}% ${z.origin*100}% 0`,L.animationValues?S.opacity=L===this?(y=(p=F.opacity)!==null&&p!==void 0?p:this.latestValues.opacity)!==null&&y!==void 0?y:1:this.preserveOpacity?this.latestValues.opacity:F.opacityExit:S.opacity=L===this?F.opacity!==void 0?F.opacity:"":F.opacityExit!==void 0?F.opacityExit:0;for(const W in scaleCorrectors){if(F[W]===void 0)continue;const{correct:nt,applyTo:Pe}=scaleCorrectors[W],se=S.transform==="none"?F[W]:nt(F[W],L);if(Pe){const mt=Pe.length;for(let kt=0;kt<mt;kt++)S[Pe[kt]]=se}else S[W]=se}return this.options.layoutId&&(S.pointerEvents=L===this?resolveMotionValue(h==null?void 0:h.pointerEvents)||"":"none"),S}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(h=>{var p;return(p=h.currentAnimation)===null||p===void 0?void 0:p.stop()}),this.root.nodes.forEach(clearMeasurements),this.root.sharedNodes.clear()}}}function updateLayout(t){t.updateLayout()}function notifyLayoutUpdate(t){var n;const o=((n=t.resumeFrom)===null||n===void 0?void 0:n.snapshot)||t.snapshot;if(t.isLead()&&t.layout&&o&&t.hasListeners("didUpdate")){const{layoutBox:s,measuredBox:c}=t.layout,{animationType:d}=t.options,h=o.source!==t.layout.source;d==="size"?eachAxis(L=>{const F=h?o.measuredBox[L]:o.layoutBox[L],N=calcLength(F);F.min=s[L].min,F.max=F.min+N}):shouldAnimatePositionOnly(d,o.layoutBox,s)&&eachAxis(L=>{const F=h?o.measuredBox[L]:o.layoutBox[L],N=calcLength(s[L]);F.max=F.min+N,t.relativeTarget&&!t.currentAnimation&&(t.isProjectionDirty=!0,t.relativeTarget[L].max=t.relativeTarget[L].min+N)});const p=createDelta();calcBoxDelta(p,s,o.layoutBox);const y=createDelta();h?calcBoxDelta(y,t.applyTransform(c,!0),o.measuredBox):calcBoxDelta(y,s,o.layoutBox);const S=!isDeltaZero(p);let P=!1;if(!t.resumeFrom){const L=t.getClosestProjectingParent();if(L&&!L.resumeFrom){const{snapshot:F,layout:N}=L;if(F&&N){const z=createBox();calcRelativePosition(z,o.layoutBox,F.layoutBox);const W=createBox();calcRelativePosition(W,s,N.layoutBox),boxEqualsRounded(z,W)||(P=!0),L.options.layoutRoot&&(t.relativeTarget=W,t.relativeTargetOrigin=z,t.relativeParent=L)}}}t.notifyListeners("didUpdate",{layout:s,snapshot:o,delta:y,layoutDelta:p,hasLayoutChanged:S,hasRelativeTargetChanged:P})}else if(t.isLead()){const{onExitComplete:s}=t.options;s&&s()}t.options.transition=void 0}function propagateDirtyNodes(t){projectionFrameData.totalNodes++,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 cleanDirtyNodes(t){t.isProjectionDirty=t.isSharedProjectionDirty=t.isTransformDirty=!1}function clearSnapshot(t){t.clearSnapshot()}function clearMeasurements(t){t.clearMeasurements()}function clearIsLayoutDirty(t){t.isLayoutDirty=!1}function resetTransformStyle(t){const{visualElement:n}=t.options;n&&n.getProps().onBeforeLayoutMeasure&&n.notify("BeforeLayoutMeasure"),t.resetTransform()}function finishAnimation(t){t.finishAnimation(),t.targetDelta=t.relativeTarget=t.target=void 0,t.isProjectionDirty=!0}function resolveTargetDelta(t){t.resolveTargetDelta()}function calcProjection(t){t.calcProjection()}function resetSkewAndRotation(t){t.resetSkewAndRotation()}function removeLeadSnapshots(t){t.removeLeadSnapshot()}function mixAxisDelta(t,n,o){t.translate=mixNumber$1(n.translate,0,o),t.scale=mixNumber$1(n.scale,1,o),t.origin=n.origin,t.originPoint=n.originPoint}function mixAxis(t,n,o,s){t.min=mixNumber$1(n.min,o.min,s),t.max=mixNumber$1(n.max,o.max,s)}function mixBox(t,n,o,s){mixAxis(t.x,n.x,o.x,s),mixAxis(t.y,n.y,o.y,s)}function hasOpacityCrossfade(t){return t.animationValues&&t.animationValues.opacityExit!==void 0}const defaultLayoutTransition={duration:.45,ease:[.4,0,.1,1]},userAgentContains=t=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(t),roundPoint=userAgentContains("applewebkit/")&&!userAgentContains("chrome/")?Math.round:noop$1;function roundAxis(t){t.min=roundPoint(t.min),t.max=roundPoint(t.max)}function roundBox(t){roundAxis(t.x),roundAxis(t.y)}function shouldAnimatePositionOnly(t,n,o){return t==="position"||t==="preserve-aspect"&&!isNear(aspectRatio(n),aspectRatio(o),.2)}const DocumentProjectionNode=createProjectionNode({attachResizeListener:(t,n)=>addDomEvent(t,"resize",n),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),rootProjectionNode={current:void 0},HTMLProjectionNode=createProjectionNode({measureScroll:t=>({x:t.scrollLeft,y:t.scrollTop}),defaultParent:()=>{if(!rootProjectionNode.current){const t=new DocumentProjectionNode({});t.mount(window),t.setOptions({layoutScroll:!0}),rootProjectionNode.current=t}return rootProjectionNode.current},resetTransform:(t,n)=>{t.style.transform=n!==void 0?n:"none"},checkIsScrollRoot:t=>window.getComputedStyle(t).position==="fixed"}),drag={pan:{Feature:PanGesture},drag:{Feature:DragGesture,ProjectionNode:HTMLProjectionNode,MeasureLayout}},prefersReducedMotion={current:null},hasReducedMotionListener={current:!1};function initPrefersReducedMotion(){if(hasReducedMotionListener.current=!0,!!isBrowser)if(window.matchMedia){const t=window.matchMedia("(prefers-reduced-motion)"),n=()=>prefersReducedMotion.current=t.matches;t.addListener(n),n()}else prefersReducedMotion.current=!1}function updateMotionValuesFromProps(t,n,o){const{willChange:s}=n;for(const c in n){const d=n[c],h=o[c];if(isMotionValue(d))t.addValue(c,d),isWillChangeMotionValue(s)&&s.add(c),process.env.NODE_ENV==="development"&&warnOnce(d.version==="11.0.27",`Attempting to mix Framer Motion versions ${d.version} with 11.0.27 may not work as expected.`);else if(isMotionValue(h))t.addValue(c,motionValue(d,{owner:t})),isWillChangeMotionValue(s)&&s.remove(c);else if(h!==d)if(t.hasValue(c)){const p=t.getValue(c);p.liveStyle===!0?p.jump(d):p.hasAnimated||p.set(d)}else{const p=t.getStaticValue(c);t.addValue(c,motionValue(p!==void 0?p:d,{owner:t}))}}for(const c in o)n[c]===void 0&&t.removeValue(c);return n}const visualElementStore=new WeakMap,valueTypes=[...dimensionValueTypes,color,complex],findValueType=t=>valueTypes.find(testValueType(t)),featureNames=Object.keys(featureDefinitions),numFeatures=featureNames.length,propEventHandlers=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"],numVariantProps=variantProps.length;function getClosestProjectingNode(t){if(t)return t.options.allowProjection!==!1?t.projection:getClosestProjectingNode(t.parent)}class VisualElement{constructor({parent:n,props:o,presenceContext:s,reducedMotionConfig:c,blockInitialAnimation:d,visualState:h},p={}){this.resolveKeyframes=(F,N,z,W)=>new this.KeyframeResolver(F,N,z,W,this),this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=KeyframeResolver,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},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.scheduleRender=()=>frame.render(this.render,!1,!0);const{latestValues:y,renderState:S}=h;this.latestValues=y,this.baseTarget={...y},this.initialValues=o.initial?{...y}:{},this.renderState=S,this.parent=n,this.props=o,this.presenceContext=s,this.depth=n?n.depth+1:0,this.reducedMotionConfig=c,this.options=p,this.blockInitialAnimation=!!d,this.isControllingVariants=isControllingVariants(o),this.isVariantNode=isVariantNode(o),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(n&&n.current);const{willChange:P,...L}=this.scrapeMotionValuesFromProps(o,{},this);for(const F in L){const N=L[F];y[F]!==void 0&&isMotionValue(N)&&(N.set(y[F],!1),isWillChangeMotionValue(P)&&P.add(F))}}scrapeMotionValuesFromProps(n,o,s){return{}}mount(n){this.current=n,visualElementStore.set(n,this),this.projection&&!this.projection.instance&&this.projection.mount(n),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((o,s)=>this.bindToMotionValue(s,o)),hasReducedMotionListener.current||initPrefersReducedMotion(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:prefersReducedMotion.current,process.env.NODE_ENV!=="production"&&warnOnce(this.shouldReduceMotion!==!0,"You have Reduced Motion enabled on your device. Animations may not appear as expected."),this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){visualElementStore.delete(this.current),this.projection&&this.projection.unmount(),cancelFrame(this.notifyUpdate),cancelFrame(this.render),this.valueSubscriptions.forEach(n=>n()),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const n in this.events)this.events[n].clear();for(const n in this.features)this.features[n].unmount();this.current=null}bindToMotionValue(n,o){const s=transformProps.has(n),c=o.on("change",h=>{this.latestValues[n]=h,this.props.onUpdate&&frame.preRender(this.notifyUpdate),s&&this.projection&&(this.projection.isTransformDirty=!0)}),d=o.on("renderRequest",this.scheduleRender);this.valueSubscriptions.set(n,()=>{c(),d(),o.owner&&o.stop()})}sortNodePosition(n){return!this.current||!this.sortInstanceNodePosition||this.type!==n.type?0:this.sortInstanceNodePosition(this.current,n.current)}loadFeatures({children:n,...o},s,c,d){let h,p;if(process.env.NODE_ENV!=="production"&&c&&s){const y="You have rendered a `motion` component within a `LazyMotion` component. This will break tree shaking. Import and render a `m` component instead.";o.ignoreStrict?warning(!1,y):invariant(!1,y)}for(let y=0;y<numFeatures;y++){const S=featureNames[y],{isEnabled:P,Feature:L,ProjectionNode:F,MeasureLayout:N}=featureDefinitions[S];F&&(h=F),P(o)&&(!this.features[S]&&L&&(this.features[S]=new L(this)),N&&(p=N))}if((this.type==="html"||this.type==="svg")&&!this.projection&&h){this.projection=new h(this.latestValues,getClosestProjectingNode(this.parent));const{layoutId:y,layout:S,drag:P,dragConstraints:L,layoutScroll:F,layoutRoot:N}=o;this.projection.setOptions({layoutId:y,layout:S,alwaysMeasureLayout:!!P||L&&isRefObject(L),visualElement:this,scheduleRender:()=>this.scheduleRender(),animationType:typeof S=="string"?S:"both",initialPromotionConfig:d,layoutScroll:F,layoutRoot:N})}return p}updateFeatures(){for(const n in this.features){const o=this.features[n];o.isMounted?o.update():(o.mount(),o.isMounted=!0)}}triggerBuild(){this.build(this.renderState,this.latestValues,this.options,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):createBox()}getStaticValue(n){return this.latestValues[n]}setStaticValue(n,o){this.latestValues[n]=o}update(n,o){(n.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=n,this.prevPresenceContext=this.presenceContext,this.presenceContext=o;for(let s=0;s<propEventHandlers.length;s++){const c=propEventHandlers[s];this.propEventSubscriptions[c]&&(this.propEventSubscriptions[c](),delete this.propEventSubscriptions[c]);const d=n["on"+c];d&&(this.propEventSubscriptions[c]=this.on(c,d))}this.prevMotionValues=updateMotionValuesFromProps(this,this.scrapeMotionValuesFromProps(n,this.prevProps,this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(n){return this.props.variants?this.props.variants[n]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}getVariantContext(n=!1){if(n)return this.parent?this.parent.getVariantContext():void 0;if(!this.isControllingVariants){const s=this.parent?this.parent.getVariantContext()||{}:{};return this.props.initial!==void 0&&(s.initial=this.props.initial),s}const o={};for(let s=0;s<numVariantProps;s++){const c=variantProps[s],d=this.props[c];(isVariantLabel(d)||d===!1)&&(o[c]=d)}return o}addVariantChild(n){const o=this.getClosestVariantNode();if(o)return o.variantChildren&&o.variantChildren.add(n),()=>o.variantChildren.delete(n)}addValue(n,o){o!==this.values.get(n)&&(this.removeValue(n),this.bindToMotionValue(n,o)),this.values.set(n,o),this.latestValues[n]=o.get()}removeValue(n){this.values.delete(n);const o=this.valueSubscriptions.get(n);o&&(o(),this.valueSubscriptions.delete(n)),delete this.latestValues[n],this.removeValueFromRenderState(n,this.renderState)}hasValue(n){return this.values.has(n)}getValue(n,o){if(this.props.values&&this.props.values[n])return this.props.values[n];let s=this.values.get(n);return s===void 0&&o!==void 0&&(s=motionValue(o===null?void 0:o,{owner:this}),this.addValue(n,s)),s}readValue(n,o){var s;let c=this.latestValues[n]!==void 0||!this.current?this.latestValues[n]:(s=this.getBaseTargetFromProps(this.props,n))!==null&&s!==void 0?s:this.readValueFromInstance(this.current,n,this.options);return c!=null&&(typeof c=="string"&&(isNumericalString(c)||isZeroValueString(c))?c=parseFloat(c):!findValueType(c)&&complex.test(o)&&(c=getAnimatableNone(n,o)),this.setBaseTarget(n,isMotionValue(c)?c.get():c)),isMotionValue(c)?c.get():c}setBaseTarget(n,o){this.baseTarget[n]=o}getBaseTarget(n){var o,s;const{initial:c}=this.props,d=typeof c=="string"||typeof c=="object"?(s=resolveVariantFromProps(this.props,c,(o=this.presenceContext)===null||o===void 0?void 0:o.custom))===null||s===void 0?void 0:s[n]:void 0;if(c&&d!==void 0)return d;const h=this.getBaseTargetFromProps(this.props,n);return h!==void 0&&!isMotionValue(h)?h:this.initialValues[n]!==void 0&&d===void 0?void 0:this.baseTarget[n]}on(n,o){return this.events[n]||(this.events[n]=new SubscriptionManager),this.events[n].add(o)}notify(n,...o){this.events[n]&&this.events[n].notify(...o)}}class DOMVisualElement extends VisualElement{constructor(){super(...arguments),this.KeyframeResolver=DOMKeyframesResolver}sortInstanceNodePosition(n,o){return n.compareDocumentPosition(o)&2?1:-1}getBaseTargetFromProps(n,o){return n.style?n.style[o]:void 0}removeValueFromRenderState(n,{vars:o,style:s}){delete o[n],delete s[n]}}function getComputedStyle(t){return window.getComputedStyle(t)}class HTMLVisualElement extends DOMVisualElement{constructor(){super(...arguments),this.type="html"}readValueFromInstance(n,o){if(transformProps.has(o)){const s=getDefaultValueType(o);return s&&s.default||0}else{const s=getComputedStyle(n),c=(isCSSVariableName(o)?s.getPropertyValue(o):s[o])||0;return typeof c=="string"?c.trim():c}}measureInstanceViewportBox(n,{transformPagePoint:o}){return measureViewportBox(n,o)}build(n,o,s,c){buildHTMLStyles(n,o,s,c.transformTemplate)}scrapeMotionValuesFromProps(n,o,s){return scrapeMotionValuesFromProps$1(n,o,s)}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:n}=this.props;isMotionValue(n)&&(this.childSubscription=n.on("change",o=>{this.current&&(this.current.textContent=`${o}`)}))}renderInstance(n,o,s,c){renderHTML(n,o,s,c)}}class SVGVisualElement extends DOMVisualElement{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1}getBaseTargetFromProps(n,o){return n[o]}readValueFromInstance(n,o){if(transformProps.has(o)){const s=getDefaultValueType(o);return s&&s.default||0}return o=camelCaseAttributes.has(o)?o:camelToDash(o),n.getAttribute(o)}measureInstanceViewportBox(){return createBox()}scrapeMotionValuesFromProps(n,o){return scrapeMotionValuesFromProps(n,o,this)}build(n,o,s,c){buildSVGAttrs(n,o,s,this.isSVGTag,c.transformTemplate)}renderInstance(n,o,s,c){renderSVG(n,o,s,c)}mount(n){this.isSVGTag=isSVGTag(n.tagName),super.mount(n)}}const createDomVisualElement=(t,n)=>isSVGComponent(t)?new SVGVisualElement(n,{enableHardwareAcceleration:!1}):new HTMLVisualElement(n,{allowProjection:t!==React.Fragment,enableHardwareAcceleration:!0}),layout={layout:{ProjectionNode:HTMLProjectionNode,MeasureLayout}},preloadedFeatures={...animations,...gestureAnimations,...drag,...layout},motion=createMotionProxy((t,n)=>createDomMotionConfig(t,n,preloadedFeatures,createDomVisualElement));function useMotionValue(t){const n=useConstant(()=>motionValue(t)),{isStatic:o}=React.useContext(MotionConfigContext);if(o){const[,s]=React.useState(t);React.useEffect(()=>n.on("change",s),[])}return n}function assignRef(t,n){return typeof t=="function"?t(n):t&&(t.current=n),t}function useCallbackRef(t,n){var o=React.useState(function(){return{value:t,callback:n,facade:{get current(){return o.value},set current(s){var c=o.value;c!==s&&(o.value=s,o.callback(s,c))}}}})[0];return o.callback=n,o.facade}var useIsomorphicLayoutEffect=typeof window<"u"?React__namespace.useLayoutEffect:React__namespace.useEffect,currentValues=new WeakMap;function useMergeRefs(t,n){var o=useCallbackRef(null,function(s){return t.forEach(function(c){return assignRef(c,s)})});return useIsomorphicLayoutEffect(function(){var s=currentValues.get(o);if(s){var c=new Set(s),d=new Set(t),h=o.current;c.forEach(function(p){d.has(p)||assignRef(p,null)}),d.forEach(function(p){c.has(p)||assignRef(p,h)})}currentValues.set(o,t)},[t]),o}const occluder=new EllipsoidalOccluder(Ellipsoid$1.WGS84,Cartesian3.ZERO),ScreenSpaceElement=React.forwardRef(({position:t,children:n,...o},s)=>{const c=useConstant$2(()=>new Cartesian3);t==null||t.clone(c);const d=useMotionValue(""),h=useMotionValue("none"),{toWindowPosition:p,getCamera:y,toXYZ:S,isPositionVisible:P}=useContext(),L=React.useRef(null);usePreRender(()=>{if(L.current==null)return;let N;try{const se=p==null?void 0:p([c.x,c.y,c.z]);N=new Cartesian2(se==null?void 0:se[0],se==null?void 0:se[1])}catch{h.set("none");return}const z=y==null?void 0:y();if(!z)return;const W=S==null?void 0:S(z==null?void 0:z.lng,z==null?void 0:z.lat,z==null?void 0:z.height);if(!W)return;if(occluder.cameraPosition=new Cartesian3(W[0],W[1],W[2]),N==null||N.x<0||N.y<0||N.x>window.innerWidth||N.y>window.innerHeight||!(P!=null&&P([c.x,c.y,c.z]))){h.set("none");return}const nt=`calc(${N.x}px - 50%)`,Pe=`calc(${N.y}px - 50%)`;d.set(`translate(${nt}, ${Pe})`),h.set("block")});const F=useMergeRefs([L,s]);return jsxRuntimeExports.jsx(motion.div,{ref:F,...o,style:{...o.style,transform:d,display:h,position:"absolute",pointerEvents:"none",left:0,top:0},children:n})});ScreenSpaceElement.displayName="ScreenSpaceElement";const MeasurementLine$1=({a:t,b:n,color:o})=>{const s=React.useRef([t,n]);s.current=[t,n];const c=useConstant$2(()=>new CallbackProperty(()=>s.current,!1)),d=React.useMemo(()=>({polyline:{positions:c,width:1.5,material:new PolylineDashMaterialProperty({color:o,dashLength:8})}}),[o,c]);return jsxRuntimeExports.jsx(Entity,{...d})},ExtrudedMeasurement=({a:t,b:n,extrudedHeight:o,color:s,showLine:c})=>{const d=useConstant$2(()=>new Cartesian3);return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(ScreenSpaceElement,{position:Cartesian3.midpoint(t,n,d),children:jsxRuntimeExports.jsx(MeasurementText,{children:o<1e3?`${o.toFixed(1)} m`:`${(o/1e3).toFixed(1)} km`})}),c&&jsxRuntimeExports.jsx(MeasurementLine$1,{a:t,b:n,color:s})]})},ExtrudedControlPoints=React.memo(({geometryOptions:{controlPoints:t,type:n},extrudedHeight:o,color:s,isEditing:c,extrudedPoint:d,centroidBasePoint:h,centroidExtrudedPoint:p,catchedExtrudedPoint:y,handleControlPointMouseEvent:S})=>{const P=t[t.length-1],L=d?new Cartesian3(...d):void 0,F=h?new Cartesian3(...h):void 0,N=p?new Cartesian3(...p):void 0;return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[L&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(ControlPoint,{index:-1,position:L,isEditing:c,isExtrudedControlPoint:!0,handleControlPointMouseEvent:S}),(!c||y)&&jsxRuntimeExports.jsx(ExtrudedMeasurement,{a:P,b:L,extrudedHeight:o,color:c?Color$1.fromCssColorString(DEFAULT_EDIT_COLOR):s,showLine:n!=="extrudedPolygon"})]}),F&&jsxRuntimeExports.jsx(ControlPoint,{index:-1,position:F,isEditing:c,isExtrudedControlPoint:!0}),N&&jsxRuntimeExports.jsx(ControlPoint,{index:-1,position:N,isEditing:c,isExtrudedControlPoint:!0})]})});ExtrudedControlPoints.displayName="ExtrudedControlPoints";const ExtrudedPolygonEntity=({id:t,hierarchy:n,extrudedHeight:o,color:s,disableShadow:c=!1,isEditing:d})=>{const h=React.useRef(n);h.current=n;const y=useConstant$2(()=>new CallbackProperty(()=>h.current,!1)),S=React.useRef(o);S.current=o;const L=useConstant$2(()=>new CallbackProperty(()=>S.current,!1)),F=React.useMemo(()=>({polygon:{hierarchy:y,heightReference:HeightReference$1.RELATIVE_TO_TERRAIN,extrudedHeight:L,extrudedHeightReference:HeightReference$1.RELATIVE_TO_TERRAIN,fill:!0,outline:!0,outlineWidth:1,outlineColor:d?Color$1.fromCssColorString(DEFAULT_EDIT_COLOR):s==null?void 0:s.withAlpha(1),material:new ColorMaterialProperty(d?s==null?void 0:s.withAlpha(.2):s),classificationType:ClassificationType$1.TERRAIN,shadows:c?ShadowMode$1.DISABLED:ShadowMode$1.ENABLED}}),[L,c,y,s,d]),{requestRender:N}=useContext();return N==null||N(),jsxRuntimeExports.jsx(Entity,{id:t,...F})},PolygonEntity=({dynamic:t=!1,hierarchy:n,color:o})=>{const s=React.useRef(n);s.current=n;const c=useConstant$2(()=>new CallbackProperty(()=>s.current,!1)),d=t?c:n,h=React.useMemo(()=>({polygon:{hierarchy:d,fill:!0,material:o==null?void 0:o.withAlpha(.5),classificationType:ClassificationType$1.TERRAIN}}),[o,d]),{requestRender:p}=useContext();return p==null||p(),jsxRuntimeExports.jsx(Entity,{...h})},PolylineEntity=({dynamic:t=!1,positions:n,color:o,isEditing:s})=>{const c=React.useRef(n);c.current=n;const d=useConstant$2(()=>new CallbackProperty(()=>c.current,!t)),h=t?d:n,p=React.useMemo(()=>({polyline:{positions:h,width:1.5,material:s?Color$1.fromCssColorString(DEFAULT_EDIT_COLOR):o,classificationType:ClassificationType$1.TERRAIN,clampToGround:!0}}),[o,h,s]),{requestRender:y}=useContext();return y==null||y(),jsxRuntimeExports.jsx(Entity,{...p})},cartesianScratch1$1=new Cartesian3,SurfaceAddingPoints=React.memo(({geometryOptions:{type:t,controlPoints:n},isEditing:o,handleAddControlPoint:s})=>{if(!["polyline","polygon","extrudedPolygon"].includes(t))return null;const c=[];for(let d=0;d<n.length-1;d++){const h=n[d+1],p=Cartesian3.midpoint(n[d],h,cartesianScratch1$1);c.push(p.clone())}if(t==="polygon"||t==="extrudedPolygon"){const d=Cartesian3.midpoint(n[n.length-1],n[0],cartesianScratch1$1);c.push(d.clone())}return jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:c.map((d,h)=>jsxRuntimeExports.jsx(ControlPoint,{position:d,isAddingPoint:!0,index:h,clampToGround:!0,isEditing:o,handleControlPointMouseEvent:()=>s==null?void 0:s([d.x,d.y,d.z],h)},h))})});SurfaceAddingPoints.displayName="SurfaceAddingPoints";const MeasurementLine=({a:t,b:n,color:o})=>{const s=React.useRef([t,n]);s.current=[t,n];const c=useConstant$2(()=>new CallbackProperty(()=>s.current,!1)),d=React.useMemo(()=>({polyline:{positions:c,width:1.5,material:new PolylineDashMaterialProperty({color:o,dashLength:8}),classificationType:ClassificationType$1.TERRAIN,clampToGround:!0}}),[o,c]),{requestRender:h}=useContext();return h==null||h(),jsxRuntimeExports.jsx(Entity,{...d})},SurfaceMeasurement=({a:t,b:n,color:o,showLine:s=!1})=>{const c=useConstant$2(()=>new Cartesian3),{getSurfaceDistance:d}=useContext(),h=d==null?void 0:d(t,n);return h!==void 0?jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(ScreenSpaceElement,{position:Cartesian3.midpoint(t,n,c),children:jsxRuntimeExports.jsx(MeasurementText,{children:h<1e3?`${h.toFixed(1)} m`:`${(h/1e3).toFixed(1)} km`})}),s&&jsxRuntimeExports.jsx(MeasurementLine,{a:t,b:n,color:o})]}):null},cartesianScratch1=new Cartesian3,SurfaceControlPoints=React.memo(({geometryOptions:{type:t,controlPoints:n},color:o,isEditing:s,catchedControlPointIndex:c,selectedControlPointIndex:d,handleControlPointMouseEvent:h})=>{const p=[];if(n.length>=2)if(s){if(c!==void 0&&c!==-1)switch(t){case"polyline":c>0&&p.push({points:[n[c-1],n[c]],showLine:!1}),c<n.length-1&&p.push({points:[n[c],n[c+1]],showLine:!1});break;case"circle":case"extrudedCircle":c!==2&&p.push({points:[n[0],n[1]],showLine:!0});break;case"rectangle":case"extrudedRectangle":if(c<=1)p.push({points:[n[0],n[1]],showLine:!1});else if(c===2){const[y,S,P]=n,L=Cartesian3.midpoint(y,S,cartesianScratch1);p.push({points:[L,P],showLine:!0})}break;case"polygon":case"extrudedPolygon":p.push({points:[n[c],c===0?n[n.length-1]:n[c-1]],showLine:!1}),p.push({points:[n[c],c===n.length-1?n[0]:n[c+1]],showLine:!1});break}}else switch(t){case"rectangle":if(n.length===2)p.push({points:n,showLine:!0});else if(n.length===3){const[y,S,P]=n,L=Cartesian3.midpoint(y,S,cartesianScratch1);p.push({points:[L,P],showLine:!0})}break;default:p.push({points:n.slice(-2),showLine:t==="circle"});break}return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[n.map((y,S)=>jsxRuntimeExports.jsx(ControlPoint,{position:y,index:S,isSelected:d===S,clampToGround:!0,isEditing:s,handleControlPointMouseEvent:h},S)),p.map(({points:y,showLine:S},P)=>jsxRuntimeExports.jsx(SurfaceMeasurement,{a:y[0],b:y[1],color:s?Color$1.fromCssColorString(DEFAULT_EDIT_COLOR):o,showLine:S},P))]})});SurfaceControlPoints.displayName="SurfaceControlPoints";const SketchComponent=React.memo(({geometryOptions:t,extrudedHeight:n,disableShadow:o,color:s,isEditing:c,extrudedPoint:d,centroidBasePoint:h,centroidExtrudedPoint:p,catchedControlPointIndex:y,catchedExtrudedPoint:S,selectedControlPointIndex:P,handleControlPointMouseEvent:L,handleAddControlPoint:F})=>{const N=React.useMemo(()=>t?{...t,controlPoints:t==null?void 0:t.controlPoints.map(se=>new Cesium$1.Cartesian3(...se))}:null,[t]),z=React.useMemo(()=>N?createGeometry(N):null,[N]),{positionsArray:W,hierarchyArray:nt}=React.useMemo(()=>(z==null?void 0:z.type)==="Point"?{}:(z==null?void 0:z.type)==="LineString"?{positionsArray:convertGeometryToPositionsArray(z)}:z!=null?{positionsArray:convertGeometryToPositionsArray(z),hierarchyArray:convertPolygonToHierarchyArray(z)}:{},[z]),Pe=React.useMemo(()=>Color$1.fromCssColorString(s??DEFAULT_SKETCH_COLOR),[s]);return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[W==null?void 0:W.map((se,mt)=>jsxRuntimeExports.jsx(PolylineEntity,{dynamic:!0,positions:se,color:Pe,isEditing:c},mt)),nt==null?void 0:nt.map((se,mt)=>jsxRuntimeExports.jsx(PolygonEntity,{dynamic:!0,hierarchy:se,color:Pe},mt)),N!=null&&(!n||c)&&jsxRuntimeExports.jsx(SurfaceControlPoints,{geometryOptions:N,color:Pe,isEditing:c,catchedControlPointIndex:y,selectedControlPointIndex:P,handleControlPointMouseEvent:L}),N!=null&&c&&jsxRuntimeExports.jsx(SurfaceAddingPoints,{geometryOptions:N,isEditing:c,handleAddControlPoint:F}),N!=null&&n&&jsxRuntimeExports.jsx(ExtrudedControlPoints,{geometryOptions:N,extrudedHeight:n,extrudedPoint:d,centroidBasePoint:h,centroidExtrudedPoint:p,catchedExtrudedPoint:S,color:Pe,isEditing:c,handleControlPointMouseEvent:L}),n&&(nt==null?void 0:nt.map((se,mt)=>jsxRuntimeExports.jsx(ExtrudedPolygonEntity,{hierarchy:se,extrudedHeight:n,disableShadow:o,color:Pe,isEditing:c},mt)))]})});SketchComponent.displayName="SketchComponent";const Cesium=({className:t,style:n,property:o,time:s,camera:c,small:d,ready:h,children:p,selectedLayerId:y,isLayerDraggable:S,isLayerDragging:P,shouldRender:L,layerSelectionReason:F,meta:N,displayCredits:z,layersRef:W,featureFlags:nt,requestingRenderMode:Pe,timelineManagerRef:se,cameraForceHorizontalRoll:mt,onLayerSelect:kt,onCameraChange:mn,onLayerDrag:_i,onLayerDrop:zi,onLayerEdit:Sa,onLayerSelectWithRectStart:fa,onLayerSelectWithRectMove:La,onLayerSelectWithRectEnd:Ra,onMount:ma,onLayerVisibility:yt,onLayerLoad:lt,onCreditsUpdate:pi},ba)=>{var gd,pd,Zd,cf,sf,nf,df,Cf,mf,Sf,Pf,Af,Hf,_f,wf,Yf,Nf,vf,Ff,Xf,Wf,Qf,_m,Bf,$m,qf,qm,ep,Tf,rf,bf,If,Uf,jf,jm,sp,cp,fp,mp,al,tf,lf;const{cesium:Sc,mouseEventHandles:ms,cesiumIonAccessToken:Xs,context:Nl,layerSelectWithRectEventHandlers:pu,sceneLight:yu,sceneBackgroundColor:Ru,sceneMsaaSamples:Vd,sceneMode:Gd,cameraViewBoundaries:uf,cameraViewOuterBoundaries:ff,cameraViewBoundariesMaterial:pf,handleCameraChange:hf,handleCameraMoveEnd:of,handleUpdate:gf,handleClick:Ef,handleMount:xf,handleUnmount:Wa,handleTilesChange:af,handleTerrainProviderChange:Xd}=useHooks$1({ref:ba,property:o,time:s,selectedLayerId:y,selectionReason:F,meta:N,layersRef:W,featureFlags:nt,timelineManagerRef:se,isLayerDraggable:S,isLayerDragging:P,shouldRender:L,requestingRenderMode:Pe,camera:c,cameraForceHorizontalRoll:mt,onLayerDrag:_i,onLayerDrop:zi,onLayerSelect:kt,onLayerEdit:Sa,onLayerSelectWithRectStart:fa,onLayerSelectWithRectMove:La,onLayerSelectWithRectEnd:Ra,onLayerVisibility:yt,onLayerLoad:lt,onCameraChange:mn,onMount:ma,onCreditsUpdate:pi});return jsxRuntimeExports.jsxs(Aa$1,{ref:Sc,onUpdate:gf,className:t,requestRenderMode:!0,animation:!1,timeline:!1,baseLayer:!1,fullscreenButton:!1,homeButton:!1,geocoder:!1,infoBox:!1,baseLayerPicker:!1,navigationHelpButton:!1,projectionPicker:!1,sceneModePicker:!1,creditContainer:z?void 0:creditContainer,style:{width:d?"300px":"auto",height:d?"300px":"100%",display:h?void 0:"none",cursor:P?"grab":void 0,...n},shadows:!!((pd=(gd=o==null?void 0:o.scene)==null?void 0:gd.shadow)!=null&&pd.enabled),onClick:Ef,onDoubleClick:ms.doubleClick,onMouseDown:ms.mouseDown,onMouseUp:ms.mouseUp,onRightClick:ms.rightClick,onRightDown:ms.rightDown,onRightUp:ms.rightUp,onMiddleClick:ms.middleClick,onMiddleDown:ms.middleDown,onMiddleUp:ms.middleUp,onMouseMove:ms.mouseMove,onMouseEnter:ms.mouseEnter,onMouseLeave:ms.mouseLeave,onWheel:ms.wheel,children:[jsxRuntimeExports.jsx(Event,{onMount:xf,onUnmount:Wa}),jsxRuntimeExports.jsx(ReearthClock,{timelineManagerRef:se}),jsxRuntimeExports.jsx(ImageryLayers,{tiles:o==null?void 0:o.tiles,cesiumIonAccessToken:Xs,onTilesChange:af}),jsxRuntimeExports.jsx(LabelImageryLayers,{tileLabels:o==null?void 0:o.tileLabels}),jsxRuntimeExports.jsx(Indicator,{property:o,timelineManagerRef:se}),jsxRuntimeExports.jsxs(ka$1,{useDefault:!0,children:[jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_CLICK}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_DOUBLE_CLICK})]}),jsxRuntimeExports.jsxs(ka$1,{children:[jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_DOWN,action:pu.start.handler}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_DOWN,modifier:Cesium$1.KeyboardEventModifier.SHIFT,action:pu.start.shift}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE,action:pu.move.handler}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE,modifier:Cesium$1.KeyboardEventModifier.SHIFT,action:pu.move.shift}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_UP,action:pu.end.handler}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_UP,modifier:Cesium$1.KeyboardEventModifier.SHIFT,action:pu.end.shift})]}),jsxRuntimeExports.jsx(Ta$1,{maximumZoomDistance:(cf=(Zd=o==null?void 0:o.camera)==null?void 0:Zd.limiter)!=null&&cf.enabled?((df=(nf=(sf=o.camera)==null?void 0:sf.limiter)==null?void 0:nf.targetArea)==null?void 0:df.height)??Number.POSITIVE_INFINITY:Number.POSITIVE_INFINITY,enableCollisionDetection:!((Cf=o==null?void 0:o.camera)!=null&&Cf.allowEnterGround)}),jsxRuntimeExports.jsx(Ps$1,{percentageChanged:.2,onChange:hf,onMoveEnd:of}),uf&&((Sf=(mf=o==null?void 0:o.camera)==null?void 0:mf.limiter)==null?void 0:Sf.showHelper)&&jsxRuntimeExports.jsx(Is$1,{children:jsxRuntimeExports.jsx(ua$1,{positions:uf,width:1,material:Cesium$1.Color.RED,arcType:Cesium$1.ArcType.RHUMB})}),ff&&((Af=(Pf=o==null?void 0:o.camera)==null?void 0:Pf.limiter)==null?void 0:Af.showHelper)&&jsxRuntimeExports.jsx(Is$1,{children:jsxRuntimeExports.jsx(ua$1,{positions:ff,width:1,material:pf,arcType:Cesium$1.ArcType.RHUMB})}),jsxRuntimeExports.jsx($a$1,{backgroundColor:Ru,light:yu,mode:Gd,msaaSamples:Vd,useDepthPicking:!1,useWebVR:!!((Hf=o==null?void 0:o.scene)!=null&&Hf.vr)||void 0,debugShowFramesPerSecond:!!((_f=o==null?void 0:o.debug)!=null&&_f.showFramesPerSecond),verticalExaggerationRelativeHeight:(wf=o==null?void 0:o.scene)==null?void 0:wf.verticalExaggerationRelativeHeight,verticalExaggeration:(Yf=o==null?void 0:o.scene)==null?void 0:Yf.verticalExaggeration}),jsxRuntimeExports.jsx(Oa$1,{show:((vf=(Nf=o==null?void 0:o.sky)==null?void 0:Nf.skyBox)==null?void 0:vf.show)??!0}),jsxRuntimeExports.jsx(Vs,{enabled:((Xf=(Ff=o==null?void 0:o.sky)==null?void 0:Ff.fog)==null?void 0:Xf.enabled)??!0,density:(Qf=(Wf=o==null?void 0:o.sky)==null?void 0:Wf.fog)==null?void 0:Qf.density}),jsxRuntimeExports.jsx(Ga$1,{show:((Bf=(_m=o==null?void 0:o.sky)==null?void 0:_m.sun)==null?void 0:Bf.show)??!0}),jsxRuntimeExports.jsx(ea,{show:((qf=($m=o==null?void 0:o.sky)==null?void 0:$m.moon)==null?void 0:qf.show)??!0}),jsxRuntimeExports.jsx(_a$2,{show:((ep=(qm=o==null?void 0:o.sky)==null?void 0:qm.skyAtmosphere)==null?void 0:ep.show)??!0,atmosphereLightIntensity:(rf=(Tf=o==null?void 0:o.sky)==null?void 0:Tf.skyAtmosphere)==null?void 0:rf.lightIntensity,saturationShift:(If=(bf=o==null?void 0:o.sky)==null?void 0:bf.skyAtmosphere)==null?void 0:If.saturationShift,brightnessShift:(jf=(Uf=o==null?void 0:o.sky)==null?void 0:Uf.skyAtmosphere)==null?void 0:jf.brightnessShift}),jsxRuntimeExports.jsx(Globe,{property:o,cesiumIonAccessToken:Xs,onTerrainProviderChange:Xd}),jsxRuntimeExports.jsx(context.Provider,{value:Nl,children:h?p:null}),jsxRuntimeExports.jsx(AmbientOcclusion,{...AMBIENT_OCCLUSION_QUALITY[((sp=(jm=o==null?void 0:o.render)==null?void 0:jm.ambientOcclusion)==null?void 0:sp.quality)||"low"],enabled:!!((fp=(cp=o==null?void 0:o.render)==null?void 0:cp.ambientOcclusion)!=null&&fp.enabled),intensity:((al=(mp=o==null?void 0:o.render)==null?void 0:mp.ambientOcclusion)==null?void 0:al.intensity)??100,outputType:(lf=(tf=o==null?void 0:o.render)==null?void 0:tf.ambientOcclusion)!=null&&lf.ambientOcclusionOnly?AmbientOcclusionOutputType.Occlusion:null})]})},creditContainer=document.createElement("div"),Component=React.forwardRef(Cesium),engine={component:Component,featureComponent:Feature$1,clusterComponent:Cluster,sketchComponent:SketchComponent,delegatedDataTypes:["czml","wms","mvt","3dtiles","osm-buildings","kml"]},engines={cesium:engine};function Error$1({error:t,resetErrorBoundary:n}){return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx("h1",{children:"Oops! An Error Occurred"}),jsxRuntimeExports.jsx("p",{children:t.message}),jsxRuntimeExports.jsx("p",{children:jsxRuntimeExports.jsx("button",{style:{color:"#fff"},onClick:n,children:"Retry"})})]})}const version$1="0.0.7-alpha.34",useCoreAPI=({viewerProperty:t})=>{const n=React.useRef(t);n.current=t;const o=React.useMemo(()=>({get version(){return version$1},get viewerProperty(){return n.current}}),[]);React.useEffect(()=>{window.reearth_core=o},[o])},viewportMobileMaxWidth=768,useViewport=({wrapperRef:t})=>{const n=React.useMemo(()=>paramsToObject(new URLSearchParams(window.location.search)),[]),[o,s]=React.useState({width:void 0,height:void 0,isMobile:void 0,query:n});return React.useEffect(()=>{const c=new ResizeObserver(d=>{var S,P;const[h]=d;let p,y;if(h.contentBoxSize){const L=Array.isArray(h.contentBoxSize)?h.contentBoxSize[0]:h.contentBoxSize;p=L.inlineSize,y=L.blockSize}else h.contentRect?(p=h.contentRect.width,y=h.contentRect.height):(p=(S=t.current)==null?void 0:S.clientWidth,y=(P=t.current)==null?void 0:P.clientHeight);s(L=>({width:p,height:y,isMobile:p?p<=viewportMobileMaxWidth:void 0,query:L.query}))});return t.current&&c.observe(t.current),()=>{c.disconnect()}},[t]),o};function paramsToObject(t){const n={};for(const[o,s]of t)n[o]=s;return n}function useHooks({camera:t,interactionMode:n,zoomedLayerId:o,viewerProperty:s,onLayerSelect:c,onCameraChange:d,onInteractionModeChange:h,onZoomToLayer:p,onLayerDrop:y,onSketchTypeChangeProp:S},P){const L=React.useRef(null);React.useImperativeHandle(P,()=>L.current,[]);const F=React.useRef(null),N=useViewport({wrapperRef:F}),[z,W]=React.useState({}),[nt,Pe]=React.useState(),[se,mt]=React.useState(),kt=React.useCallback(async(_f,wf,Yf,Nf,vf)=>{var Qf,_m,Bf,$m,qf,qm,ep,Tf,rf,bf,If;const Ff=((Qf=z.layer)==null?void 0:Qf.layer.type)==="simple"&&(($m=(Bf=(_m=z.layer)==null?void 0:_m.layer)==null?void 0:Bf.data)==null?void 0:$m.isSketchLayer);if(z.layerId===_f&&z.featureId===wf&&!Ff)return;const Xf=await(Yf==null?void 0:Yf()),Wf=_f&&wf?(Ff?(qf=Xf==null?void 0:Xf.features)==null?void 0:qf.find(Uf=>Uf.id===wf):(Tf=(qm=L.current)==null?void 0:(ep=qm.engine).findComputedFeatureById)==null?void 0:Tf.call(ep,_f,wf))??(vf==null?void 0:vf.feature):void 0;Pe(_f&&wf?(If=(rf=L.current)==null?void 0:(bf=rf.engine).findFeatureById)==null?void 0:If.call(bf,_f,wf):void 0),mt(Wf),W(Uf=>Uf.layerId===_f&&Uf.featureId===wf?Uf:{layerId:_f,featureId:wf,layer:Xf,reason:Nf}),c==null||c(_f,Yf,Wf,Nf)},[z,c]),mn=React.useRef(),[_i,zi]=useValue(t,d),[Sa,fa]=React.useState(!1),La=React.useCallback(_f=>{fa(!!_f)},[]),[Ra,ma]=useValue(n||"default",h);React.useEffect(()=>{var _f,wf;Ra==="default"&&((wf=(_f=L==null?void 0:L.current)==null?void 0:_f.engine)==null||wf.setCursor("auto"))},[Ra]);const yt=INTERACTION_MODES[Ra??"default"],lt=React.useRef(),pi=React.useCallback(_f=>{lt.current=_f},[]),ba=React.useCallback(_f=>{var wf;(wf=lt.current)==null||wf.call(lt,_f)},[]),Sc=React.useRef(),ms=React.useCallback(_f=>{Sc.current=_f},[]),Xs=React.useCallback(_f=>{var wf;(wf=Sc.current)==null||wf.call(Sc,_f)},[]),Nl=React.useRef(),pu=React.useCallback(_f=>{Nl.current=_f},[]),yu=React.useCallback(_f=>{var wf;(wf=Nl.current)==null||wf.call(Nl,_f)},[]),Ru=React.useRef(),Vd=React.useCallback(_f=>{Ru.current=_f},[]),Gd=React.useCallback(_f=>{var wf;(wf=Ru.current)==null||wf.call(Ru,_f)},[]),uf=React.useRef(),ff=React.useCallback(_f=>{uf.current=_f},[]),pf=React.useCallback(_f=>{var wf;(wf=uf.current)==null||wf.call(uf,_f)},[]),hf=React.useRef(),of=React.useCallback(_f=>{hf.current=_f},[]),gf=React.useCallback(_f=>{var wf;(wf=hf.current)==null||wf.call(hf,_f)},[]),Ef=React.useRef([]),xf=React.useCallback(_f=>{Ef.current.push(_f)},[]),Wa=React.useCallback(_f=>{Ef.current.forEach(wf=>wf(_f))},[]),af=React.useRef([]),Xd=React.useCallback(_f=>{af.current.push(_f)},[]),gd=React.useCallback(_f=>{af.current.forEach(wf=>wf(_f))},[]),pd=React.useRef([]),Zd=React.useCallback(_f=>{pd.current.push(_f)},[]),cf=React.useCallback(_f=>{pd.current.forEach(wf=>wf(_f))},[]),sf=React.useRef([]),nf=React.useCallback(_f=>{sf.current.push(_f)},[]),df=React.useCallback((_f,wf)=>{sf.current.forEach(Yf=>Yf(_f)),S==null||S(_f,wf)},[S]);React.useEffect(()=>{var _f,wf;o&&((wf=(_f=L.current)==null?void 0:_f.engine)==null||wf.lookAtLayer(o),p==null||p(void 0))},[o,p]);const[Cf,mf]=React.useState(!1),Sf=React.useCallback(()=>{mf(!0)},[]),Pf=React.useCallback((_f,wf,Yf)=>{var Ff;mf(!1);const Nf=(Ff=L.current)==null?void 0:Ff.layers.findById(_f),vf=Nf!=null&&Nf.property.default.location?"default.location":Nf!=null&&Nf.property.default.position?"default.position":void 0;Yf&&Nf&&Nf.propertyId&&vf&&(y==null||y(Nf.propertyId,vf,Yf))},[y,L]),Af=React.useMemo(()=>({interactionMode:Ra,selectedLayer:z,selectedComputedFeature:se,viewport:N,handleCameraForceHorizontalRollChange:La,handleInteractionModeChange:ma,onSketchPluginFeatureCreate:xf,onSketchPluginFeatureUpdate:Xd,onSketchPluginFeatureDelete:Zd,onSketchTypeChange:nf,onLayerVisibility:ms,onLayerLoad:pu,onLayerEdit:pi,onLayerSelectWithRectStart:Vd,onLayerSelectWithRectMove:ff,onLayerSelectWithRectEnd:of}),[Ra,z,se,N,ma,La,pi,xf,Xd,Zd,nf,ms,pu,Vd,ff,of]),Hf=React.useMemo(()=>({position:"relative",width:"100%",height:"100%",overflow:"hidden"}),[]);return useCoreAPI({viewerProperty:s}),{mapRef:L,wrapperRef:F,selectedFeature:nt,camera:_i,featureFlags:yt,isLayerDragging:Cf,timelineManagerRef:mn,cameraForceHorizontalRoll:Sa,coreContextValue:Af,containerStyle:Hf,overriddenInteractionMode:Ra,handleLayerSelect:kt,handleLayerDrag:Sf,handleLayerDrop:Pf,handleLayerEdit:ba,handleCameraChange:zi,handleInteractionModeChange:ma,handleSketchPluginFeatureCreate:Wa,handleSketchPluginFeatureUpdate:gd,handleSketchPluginFeatureDelete:cf,handleSketchTypeChange:df,handleLayerVisibility:Xs,handleLayerLoad:yu,handleLayerSelectWithRectStart:Gd,handleLayerSelectWithRectMove:pf,handleLayerSelectWithRectEnd:gf}}function useValue(t,n){const[o,s]=React.useState(t),c=React.useCallback(d=>{d&&(s(d),n==null||n(d))},[n]);return React.useEffect(()=>{s(t)},[t]),[o,c]}const CoreVisualizer=React.memo(React.forwardRef(({engine:t,isBuilt:n,isEditable:o,viewerProperty:s,layers:c,clusters:d,small:h,ready:p,hiddenLayers:y,camera:S,time:P,interactionMode:L,shouldRender:F,meta:N,displayCredits:z=!0,style:W,zoomedLayerId:nt,children:Pe,onLayerDrop:se,onLayerSelect:mt,onCameraChange:kt,onZoomToLayer:mn,onInteractionModeChange:_i,onMount:zi,onSketchTypeChangeProp:Sa,onSketchFeatureCreate:fa,onSketchFeatureUpdate:La,onSketchFeatureDelete:Ra,onAPIReady:ma,onCreditsUpdate:yt},lt)=>{const{mapRef:pi,wrapperRef:ba,selectedFeature:Sc,camera:ms,featureFlags:Xs,isLayerDragging:Nl,timelineManagerRef:pu,cameraForceHorizontalRoll:yu,coreContextValue:Ru,containerStyle:Vd,overriddenInteractionMode:Gd,handleLayerSelect:uf,handleLayerDrag:ff,handleLayerDrop:pf,handleLayerEdit:hf,handleCameraChange:of,handleInteractionModeChange:gf,handleSketchPluginFeatureCreate:Ef,handleSketchPluginFeatureUpdate:xf,handleSketchPluginFeatureDelete:Wa,handleSketchTypeChange:af,handleLayerVisibility:Xd,handleLayerLoad:gd,handleLayerSelectWithRectStart:pd,handleLayerSelectWithRectMove:Zd,handleLayerSelectWithRectEnd:cf}=useHooks({camera:S,interactionMode:L,zoomedLayerId:nt,viewerProperty:s,onLayerSelect:mt,onCameraChange:kt,onZoomToLayer:mn,onLayerDrop:se,onInteractionModeChange:_i,onSketchTypeChangeProp:Sa},lt);return jsxRuntimeExports.jsx(ErrorBoundary,{FallbackComponent:Error$1,children:jsxRuntimeExports.jsx(VisualizerProvider,{mapRef:pi,children:jsxRuntimeExports.jsxs("div",{ref:ba,style:Vd,children:[jsxRuntimeExports.jsx(Map$1,{ref:pi,isBuilt:n,isEditable:o,engine:t,layers:c,engines,camera:ms,cameraForceHorizontalRoll:yu,clusters:d,hiddenLayers:y,isLayerDragging:Nl,isLayerDraggable:o,meta:N,displayCredits:z,style:W,featureFlags:Xs,shouldRender:F,property:s,time:P,small:h,ready:p,timelineManagerRef:pu,interactionMode:Gd,selectedFeature:Sc,onCameraChange:of,onLayerDrag:ff,onLayerDrop:pf,onLayerSelect:uf,onLayerEdit:hf,overrideInteractionMode:gf,onSketchFeatureCreate:fa,onSketchPluginFeatureCreate:Ef,onSketchFeatureUpdate:La,onSketchPluginFeatureUpdate:xf,onSketchFeatureDelete:Ra,onSketchPluginFeatureDelete:Wa,onSketchTypeChange:af,onMount:zi,onLayerVisibility:Xd,onLayerLoad:gd,onLayerSelectWithRectStart:pd,onLayerSelectWithRectMove:Zd,onLayerSelectWithRectEnd:cf,onAPIReady:ma,onCreditsUpdate:yt}),jsxRuntimeExports.jsx(coreContext.Provider,{value:Ru,children:Pe})]})})})}));var global$1=typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{},lookup=[],revLookup=[],Arr=typeof Uint8Array<"u"?Uint8Array:Array,inited=!1;function init(){inited=!0;for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n=0,o=t.length;n<o;++n)lookup[n]=t[n],revLookup[t.charCodeAt(n)]=n;revLookup[45]=62,revLookup[95]=63}function toByteArray(t){inited||init();var n,o,s,c,d,h,p=t.length;if(p%4>0)throw new Error("Invalid string. Length must be a multiple of 4");d=t[p-2]==="="?2:t[p-1]==="="?1:0,h=new Arr(p*3/4-d),s=d>0?p-4:p;var y=0;for(n=0,o=0;n<s;n+=4,o+=3)c=revLookup[t.charCodeAt(n)]<<18|revLookup[t.charCodeAt(n+1)]<<12|revLookup[t.charCodeAt(n+2)]<<6|revLookup[t.charCodeAt(n+3)],h[y++]=c>>16&255,h[y++]=c>>8&255,h[y++]=c&255;return d===2?(c=revLookup[t.charCodeAt(n)]<<2|revLookup[t.charCodeAt(n+1)]>>4,h[y++]=c&255):d===1&&(c=revLookup[t.charCodeAt(n)]<<10|revLookup[t.charCodeAt(n+1)]<<4|revLookup[t.charCodeAt(n+2)]>>2,h[y++]=c>>8&255,h[y++]=c&255),h}function tripletToBase64(t){return lookup[t>>18&63]+lookup[t>>12&63]+lookup[t>>6&63]+lookup[t&63]}function encodeChunk(t,n,o){for(var s,c=[],d=n;d<o;d+=3)s=(t[d]<<16)+(t[d+1]<<8)+t[d+2],c.push(tripletToBase64(s));return c.join("")}function fromByteArray(t){inited||init();for(var n,o=t.length,s=o%3,c="",d=[],h=16383,p=0,y=o-s;p<y;p+=h)d.push(encodeChunk(t,p,p+h>y?y:p+h));return s===1?(n=t[o-1],c+=lookup[n>>2],c+=lookup[n<<4&63],c+="=="):s===2&&(n=(t[o-2]<<8)+t[o-1],c+=lookup[n>>10],c+=lookup[n>>4&63],c+=lookup[n<<2&63],c+="="),d.push(c),d.join("")}function read(t,n,o,s,c){var d,h,p=c*8-s-1,y=(1<<p)-1,S=y>>1,P=-7,L=o?c-1:0,F=o?-1:1,N=t[n+L];for(L+=F,d=N&(1<<-P)-1,N>>=-P,P+=p;P>0;d=d*256+t[n+L],L+=F,P-=8);for(h=d&(1<<-P)-1,d>>=-P,P+=s;P>0;h=h*256+t[n+L],L+=F,P-=8);if(d===0)d=1-S;else{if(d===y)return h?NaN:(N?-1:1)*(1/0);h=h+Math.pow(2,s),d=d-S}return(N?-1:1)*h*Math.pow(2,d-s)}function write(t,n,o,s,c,d){var h,p,y,S=d*8-c-1,P=(1<<S)-1,L=P>>1,F=c===23?Math.pow(2,-24)-Math.pow(2,-77):0,N=s?0:d-1,z=s?1:-1,W=n<0||n===0&&1/n<0?1:0;for(n=Math.abs(n),isNaN(n)||n===1/0?(p=isNaN(n)?1:0,h=P):(h=Math.floor(Math.log(n)/Math.LN2),n*(y=Math.pow(2,-h))<1&&(h--,y*=2),h+L>=1?n+=F/y:n+=F*Math.pow(2,1-L),n*y>=2&&(h++,y/=2),h+L>=P?(p=0,h=P):h+L>=1?(p=(n*y-1)*Math.pow(2,c),h=h+L):(p=n*Math.pow(2,L-1)*Math.pow(2,c),h=0));c>=8;t[o+N]=p&255,N+=z,p/=256,c-=8);for(h=h<<c|p,S+=c;S>0;t[o+N]=h&255,N+=z,h/=256,S-=8);t[o+N-z]|=W*128}var toString={}.toString,isArray$1=Array.isArray||function(t){return toString.call(t)=="[object Array]"},INSPECT_MAX_BYTES=50;Buffer$1.TYPED_ARRAY_SUPPORT=global$1.TYPED_ARRAY_SUPPORT!==void 0?global$1.TYPED_ARRAY_SUPPORT:!0,kMaxLength();function kMaxLength(){return Buffer$1.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function createBuffer(t,n){if(kMaxLength()<n)throw new RangeError("Invalid typed array length");return Buffer$1.TYPED_ARRAY_SUPPORT?(t=new Uint8Array(n),t.__proto__=Buffer$1.prototype):(t===null&&(t=new Buffer$1(n)),t.length=n),t}function Buffer$1(t,n,o){if(!Buffer$1.TYPED_ARRAY_SUPPORT&&!(this instanceof Buffer$1))return new Buffer$1(t,n,o);if(typeof t=="number"){if(typeof n=="string")throw new Error("If encoding is specified then the first argument must be a string");return allocUnsafe(this,t)}return from(this,t,n,o)}Buffer$1.poolSize=8192,Buffer$1._augment=function(t){return t.__proto__=Buffer$1.prototype,t};function from(t,n,o,s){if(typeof n=="number")throw new TypeError('"value" argument must not be a number');return typeof ArrayBuffer<"u"&&n instanceof ArrayBuffer?fromArrayBuffer(t,n,o,s):typeof n=="string"?fromString(t,n,o):fromObject(t,n)}Buffer$1.from=function(t,n,o){return from(null,t,n,o)},Buffer$1.TYPED_ARRAY_SUPPORT&&(Buffer$1.prototype.__proto__=Uint8Array.prototype,Buffer$1.__proto__=Uint8Array,typeof Symbol<"u"&&Symbol.species&&Buffer$1[Symbol.species]);function assertSize(t){if(typeof t!="number")throw new TypeError('"size" argument must be a number');if(t<0)throw new RangeError('"size" argument must not be negative')}function alloc(t,n,o,s){return assertSize(n),n<=0?createBuffer(t,n):o!==void 0?typeof s=="string"?createBuffer(t,n).fill(o,s):createBuffer(t,n).fill(o):createBuffer(t,n)}Buffer$1.alloc=function(t,n,o){return alloc(null,t,n,o)};function allocUnsafe(t,n){if(assertSize(n),t=createBuffer(t,n<0?0:checked(n)|0),!Buffer$1.TYPED_ARRAY_SUPPORT)for(var o=0;o<n;++o)t[o]=0;return t}Buffer$1.allocUnsafe=function(t){return allocUnsafe(null,t)},Buffer$1.allocUnsafeSlow=function(t){return allocUnsafe(null,t)};function fromString(t,n,o){if((typeof o!="string"||o==="")&&(o="utf8"),!Buffer$1.isEncoding(o))throw new TypeError('"encoding" must be a valid string encoding');var s=byteLength(n,o)|0;t=createBuffer(t,s);var c=t.write(n,o);return c!==s&&(t=t.slice(0,c)),t}function fromArrayLike(t,n){var o=n.length<0?0:checked(n.length)|0;t=createBuffer(t,o);for(var s=0;s<o;s+=1)t[s]=n[s]&255;return t}function fromArrayBuffer(t,n,o,s){if(n.byteLength,o<0||n.byteLength<o)throw new RangeError("'offset' is out of bounds");if(n.byteLength<o+(s||0))throw new RangeError("'length' is out of bounds");return o===void 0&&s===void 0?n=new Uint8Array(n):s===void 0?n=new Uint8Array(n,o):n=new Uint8Array(n,o,s),Buffer$1.TYPED_ARRAY_SUPPORT?(t=n,t.__proto__=Buffer$1.prototype):t=fromArrayLike(t,n),t}function fromObject(t,n){if(internalIsBuffer(n)){var o=checked(n.length)|0;return t=createBuffer(t,o),t.length===0||n.copy(t,0,0,o),t}if(n){if(typeof ArrayBuffer<"u"&&n.buffer instanceof ArrayBuffer||"length"in n)return typeof n.length!="number"||isnan(n.length)?createBuffer(t,0):fromArrayLike(t,n);if(n.type==="Buffer"&&isArray$1(n.data))return fromArrayLike(t,n.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}function checked(t){if(t>=kMaxLength())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+kMaxLength().toString(16)+" bytes");return t|0}Buffer$1.isBuffer=isBuffer;function internalIsBuffer(t){return!!(t!=null&&t._isBuffer)}Buffer$1.compare=function t(n,o){if(!internalIsBuffer(n)||!internalIsBuffer(o))throw new TypeError("Arguments must be Buffers");if(n===o)return 0;for(var s=n.length,c=o.length,d=0,h=Math.min(s,c);d<h;++d)if(n[d]!==o[d]){s=n[d],c=o[d];break}return s<c?-1:c<s?1:0},Buffer$1.isEncoding=function t(n){switch(String(n).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},Buffer$1.concat=function t(n,o){if(!isArray$1(n))throw new TypeError('"list" argument must be an Array of Buffers');if(n.length===0)return Buffer$1.alloc(0);var s;if(o===void 0)for(o=0,s=0;s<n.length;++s)o+=n[s].length;var c=Buffer$1.allocUnsafe(o),d=0;for(s=0;s<n.length;++s){var h=n[s];if(!internalIsBuffer(h))throw new TypeError('"list" argument must be an Array of Buffers');h.copy(c,d),d+=h.length}return c};function byteLength(t,n){if(internalIsBuffer(t))return t.length;if(typeof ArrayBuffer<"u"&&typeof ArrayBuffer.isView=="function"&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;typeof t!="string"&&(t=""+t);var o=t.length;if(o===0)return 0;for(var s=!1;;)switch(n){case"ascii":case"latin1":case"binary":return o;case"utf8":case"utf-8":case void 0:return utf8ToBytes(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return o*2;case"hex":return o>>>1;case"base64":return base64ToBytes(t).length;default:if(s)return utf8ToBytes(t).length;n=(""+n).toLowerCase(),s=!0}}Buffer$1.byteLength=byteLength;function slowToString(t,n,o){var s=!1;if((n===void 0||n<0)&&(n=0),n>this.length||((o===void 0||o>this.length)&&(o=this.length),o<=0)||(o>>>=0,n>>>=0,o<=n))return"";for(t||(t="utf8");;)switch(t){case"hex":return hexSlice(this,n,o);case"utf8":case"utf-8":return utf8Slice(this,n,o);case"ascii":return asciiSlice(this,n,o);case"latin1":case"binary":return latin1Slice(this,n,o);case"base64":return base64Slice(this,n,o);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return utf16leSlice(this,n,o);default:if(s)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),s=!0}}Buffer$1.prototype._isBuffer=!0;function swap(t,n,o){var s=t[n];t[n]=t[o],t[o]=s}Buffer$1.prototype.swap16=function t(){var n=this.length;if(n%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var o=0;o<n;o+=2)swap(this,o,o+1);return this},Buffer$1.prototype.swap32=function t(){var n=this.length;if(n%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var o=0;o<n;o+=4)swap(this,o,o+3),swap(this,o+1,o+2);return this},Buffer$1.prototype.swap64=function t(){var n=this.length;if(n%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var o=0;o<n;o+=8)swap(this,o,o+7),swap(this,o+1,o+6),swap(this,o+2,o+5),swap(this,o+3,o+4);return this},Buffer$1.prototype.toString=function t(){var n=this.length|0;return n===0?"":arguments.length===0?utf8Slice(this,0,n):slowToString.apply(this,arguments)},Buffer$1.prototype.equals=function t(n){if(!internalIsBuffer(n))throw new TypeError("Argument must be a Buffer");return this===n?!0:Buffer$1.compare(this,n)===0},Buffer$1.prototype.inspect=function t(){var n="",o=INSPECT_MAX_BYTES;return this.length>0&&(n=this.toString("hex",0,o).match(/.{2}/g).join(" "),this.length>o&&(n+=" ... ")),"<Buffer "+n+">"},Buffer$1.prototype.compare=function t(n,o,s,c,d){if(!internalIsBuffer(n))throw new TypeError("Argument must be a Buffer");if(o===void 0&&(o=0),s===void 0&&(s=n?n.length:0),c===void 0&&(c=0),d===void 0&&(d=this.length),o<0||s>n.length||c<0||d>this.length)throw new RangeError("out of range index");if(c>=d&&o>=s)return 0;if(c>=d)return-1;if(o>=s)return 1;if(o>>>=0,s>>>=0,c>>>=0,d>>>=0,this===n)return 0;for(var h=d-c,p=s-o,y=Math.min(h,p),S=this.slice(c,d),P=n.slice(o,s),L=0;L<y;++L)if(S[L]!==P[L]){h=S[L],p=P[L];break}return h<p?-1:p<h?1:0};function bidirectionalIndexOf(t,n,o,s,c){if(t.length===0)return-1;if(typeof o=="string"?(s=o,o=0):o>2147483647?o=2147483647:o<-2147483648&&(o=-2147483648),o=+o,isNaN(o)&&(o=c?0:t.length-1),o<0&&(o=t.length+o),o>=t.length){if(c)return-1;o=t.length-1}else if(o<0)if(c)o=0;else return-1;if(typeof n=="string"&&(n=Buffer$1.from(n,s)),internalIsBuffer(n))return n.length===0?-1:arrayIndexOf(t,n,o,s,c);if(typeof n=="number")return n=n&255,Buffer$1.TYPED_ARRAY_SUPPORT&&typeof Uint8Array.prototype.indexOf=="function"?c?Uint8Array.prototype.indexOf.call(t,n,o):Uint8Array.prototype.lastIndexOf.call(t,n,o):arrayIndexOf(t,[n],o,s,c);throw new TypeError("val must be string, number or Buffer")}function arrayIndexOf(t,n,o,s,c){var d=1,h=t.length,p=n.length;if(s!==void 0&&(s=String(s).toLowerCase(),s==="ucs2"||s==="ucs-2"||s==="utf16le"||s==="utf-16le")){if(t.length<2||n.length<2)return-1;d=2,h/=2,p/=2,o/=2}function y(N,z){return d===1?N[z]:N.readUInt16BE(z*d)}var S;if(c){var P=-1;for(S=o;S<h;S++)if(y(t,S)===y(n,P===-1?0:S-P)){if(P===-1&&(P=S),S-P+1===p)return P*d}else P!==-1&&(S-=S-P),P=-1}else for(o+p>h&&(o=h-p),S=o;S>=0;S--){for(var L=!0,F=0;F<p;F++)if(y(t,S+F)!==y(n,F)){L=!1;break}if(L)return S}return-1}Buffer$1.prototype.includes=function t(n,o,s){return this.indexOf(n,o,s)!==-1},Buffer$1.prototype.indexOf=function t(n,o,s){return bidirectionalIndexOf(this,n,o,s,!0)},Buffer$1.prototype.lastIndexOf=function t(n,o,s){return bidirectionalIndexOf(this,n,o,s,!1)};function hexWrite(t,n,o,s){o=Number(o)||0;var c=t.length-o;s?(s=Number(s),s>c&&(s=c)):s=c;var d=n.length;if(d%2!==0)throw new TypeError("Invalid hex string");s>d/2&&(s=d/2);for(var h=0;h<s;++h){var p=parseInt(n.substr(h*2,2),16);if(isNaN(p))return h;t[o+h]=p}return h}function utf8Write(t,n,o,s){return blitBuffer(utf8ToBytes(n,t.length-o),t,o,s)}function asciiWrite(t,n,o,s){return blitBuffer(asciiToBytes(n),t,o,s)}function latin1Write(t,n,o,s){return asciiWrite(t,n,o,s)}function base64Write(t,n,o,s){return blitBuffer(base64ToBytes(n),t,o,s)}function ucs2Write(t,n,o,s){return blitBuffer(utf16leToBytes(n,t.length-o),t,o,s)}Buffer$1.prototype.write=function t(n,o,s,c){if(o===void 0)c="utf8",s=this.length,o=0;else if(s===void 0&&typeof o=="string")c=o,s=this.length,o=0;else if(isFinite(o))o=o|0,isFinite(s)?(s=s|0,c===void 0&&(c="utf8")):(c=s,s=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var d=this.length-o;if((s===void 0||s>d)&&(s=d),n.length>0&&(s<0||o<0)||o>this.length)throw new RangeError("Attempt to write outside buffer bounds");c||(c="utf8");for(var h=!1;;)switch(c){case"hex":return hexWrite(this,n,o,s);case"utf8":case"utf-8":return utf8Write(this,n,o,s);case"ascii":return asciiWrite(this,n,o,s);case"latin1":case"binary":return latin1Write(this,n,o,s);case"base64":return base64Write(this,n,o,s);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ucs2Write(this,n,o,s);default:if(h)throw new TypeError("Unknown encoding: "+c);c=(""+c).toLowerCase(),h=!0}},Buffer$1.prototype.toJSON=function t(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function base64Slice(t,n,o){return n===0&&o===t.length?fromByteArray(t):fromByteArray(t.slice(n,o))}function utf8Slice(t,n,o){o=Math.min(t.length,o);for(var s=[],c=n;c<o;){var d=t[c],h=null,p=d>239?4:d>223?3:d>191?2:1;if(c+p<=o){var y,S,P,L;switch(p){case 1:d<128&&(h=d);break;case 2:y=t[c+1],(y&192)===128&&(L=(d&31)<<6|y&63,L>127&&(h=L));break;case 3:y=t[c+1],S=t[c+2],(y&192)===128&&(S&192)===128&&(L=(d&15)<<12|(y&63)<<6|S&63,L>2047&&(L<55296||L>57343)&&(h=L));break;case 4:y=t[c+1],S=t[c+2],P=t[c+3],(y&192)===128&&(S&192)===128&&(P&192)===128&&(L=(d&15)<<18|(y&63)<<12|(S&63)<<6|P&63,L>65535&&L<1114112&&(h=L))}}h===null?(h=65533,p=1):h>65535&&(h-=65536,s.push(h>>>10&1023|55296),h=56320|h&1023),s.push(h),c+=p}return decodeCodePointsArray(s)}var MAX_ARGUMENTS_LENGTH=4096;function decodeCodePointsArray(t){var n=t.length;if(n<=MAX_ARGUMENTS_LENGTH)return String.fromCharCode.apply(String,t);for(var o="",s=0;s<n;)o+=String.fromCharCode.apply(String,t.slice(s,s+=MAX_ARGUMENTS_LENGTH));return o}function asciiSlice(t,n,o){var s="";o=Math.min(t.length,o);for(var c=n;c<o;++c)s+=String.fromCharCode(t[c]&127);return s}function latin1Slice(t,n,o){var s="";o=Math.min(t.length,o);for(var c=n;c<o;++c)s+=String.fromCharCode(t[c]);return s}function hexSlice(t,n,o){var s=t.length;(!n||n<0)&&(n=0),(!o||o<0||o>s)&&(o=s);for(var c="",d=n;d<o;++d)c+=toHex(t[d]);return c}function utf16leSlice(t,n,o){for(var s=t.slice(n,o),c="",d=0;d<s.length;d+=2)c+=String.fromCharCode(s[d]+s[d+1]*256);return c}Buffer$1.prototype.slice=function t(n,o){var s=this.length;n=~~n,o=o===void 0?s:~~o,n<0?(n+=s,n<0&&(n=0)):n>s&&(n=s),o<0?(o+=s,o<0&&(o=0)):o>s&&(o=s),o<n&&(o=n);var c;if(Buffer$1.TYPED_ARRAY_SUPPORT)c=this.subarray(n,o),c.__proto__=Buffer$1.prototype;else{var d=o-n;c=new Buffer$1(d,void 0);for(var h=0;h<d;++h)c[h]=this[h+n]}return c};function checkOffset(t,n,o){if(t%1!==0||t<0)throw new RangeError("offset is not uint");if(t+n>o)throw new RangeError("Trying to access beyond buffer length")}Buffer$1.prototype.readUIntLE=function t(n,o,s){n=n|0,o=o|0,s||checkOffset(n,o,this.length);for(var c=this[n],d=1,h=0;++h<o&&(d*=256);)c+=this[n+h]*d;return c},Buffer$1.prototype.readUIntBE=function t(n,o,s){n=n|0,o=o|0,s||checkOffset(n,o,this.length);for(var c=this[n+--o],d=1;o>0&&(d*=256);)c+=this[n+--o]*d;return c},Buffer$1.prototype.readUInt8=function t(n,o){return o||checkOffset(n,1,this.length),this[n]},Buffer$1.prototype.readUInt16LE=function t(n,o){return o||checkOffset(n,2,this.length),this[n]|this[n+1]<<8},Buffer$1.prototype.readUInt16BE=function t(n,o){return o||checkOffset(n,2,this.length),this[n]<<8|this[n+1]},Buffer$1.prototype.readUInt32LE=function t(n,o){return o||checkOffset(n,4,this.length),(this[n]|this[n+1]<<8|this[n+2]<<16)+this[n+3]*16777216},Buffer$1.prototype.readUInt32BE=function t(n,o){return o||checkOffset(n,4,this.length),this[n]*16777216+(this[n+1]<<16|this[n+2]<<8|this[n+3])},Buffer$1.prototype.readIntLE=function t(n,o,s){n=n|0,o=o|0,s||checkOffset(n,o,this.length);for(var c=this[n],d=1,h=0;++h<o&&(d*=256);)c+=this[n+h]*d;return d*=128,c>=d&&(c-=Math.pow(2,8*o)),c},Buffer$1.prototype.readIntBE=function t(n,o,s){n=n|0,o=o|0,s||checkOffset(n,o,this.length);for(var c=o,d=1,h=this[n+--c];c>0&&(d*=256);)h+=this[n+--c]*d;return d*=128,h>=d&&(h-=Math.pow(2,8*o)),h},Buffer$1.prototype.readInt8=function t(n,o){return o||checkOffset(n,1,this.length),this[n]&128?(255-this[n]+1)*-1:this[n]},Buffer$1.prototype.readInt16LE=function t(n,o){o||checkOffset(n,2,this.length);var s=this[n]|this[n+1]<<8;return s&32768?s|4294901760:s},Buffer$1.prototype.readInt16BE=function t(n,o){o||checkOffset(n,2,this.length);var s=this[n+1]|this[n]<<8;return s&32768?s|4294901760:s},Buffer$1.prototype.readInt32LE=function t(n,o){return o||checkOffset(n,4,this.length),this[n]|this[n+1]<<8|this[n+2]<<16|this[n+3]<<24},Buffer$1.prototype.readInt32BE=function t(n,o){return o||checkOffset(n,4,this.length),this[n]<<24|this[n+1]<<16|this[n+2]<<8|this[n+3]},Buffer$1.prototype.readFloatLE=function t(n,o){return o||checkOffset(n,4,this.length),read(this,n,!0,23,4)},Buffer$1.prototype.readFloatBE=function t(n,o){return o||checkOffset(n,4,this.length),read(this,n,!1,23,4)},Buffer$1.prototype.readDoubleLE=function t(n,o){return o||checkOffset(n,8,this.length),read(this,n,!0,52,8)},Buffer$1.prototype.readDoubleBE=function t(n,o){return o||checkOffset(n,8,this.length),read(this,n,!1,52,8)};function checkInt(t,n,o,s,c,d){if(!internalIsBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(n>c||n<d)throw new RangeError('"value" argument is out of bounds');if(o+s>t.length)throw new RangeError("Index out of range")}Buffer$1.prototype.writeUIntLE=function t(n,o,s,c){if(n=+n,o=o|0,s=s|0,!c){var d=Math.pow(2,8*s)-1;checkInt(this,n,o,s,d,0)}var h=1,p=0;for(this[o]=n&255;++p<s&&(h*=256);)this[o+p]=n/h&255;return o+s},Buffer$1.prototype.writeUIntBE=function t(n,o,s,c){if(n=+n,o=o|0,s=s|0,!c){var d=Math.pow(2,8*s)-1;checkInt(this,n,o,s,d,0)}var h=s-1,p=1;for(this[o+h]=n&255;--h>=0&&(p*=256);)this[o+h]=n/p&255;return o+s},Buffer$1.prototype.writeUInt8=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,1,255,0),Buffer$1.TYPED_ARRAY_SUPPORT||(n=Math.floor(n)),this[o]=n&255,o+1};function objectWriteUInt16(t,n,o,s){n<0&&(n=65535+n+1);for(var c=0,d=Math.min(t.length-o,2);c<d;++c)t[o+c]=(n&255<<8*(s?c:1-c))>>>(s?c:1-c)*8}Buffer$1.prototype.writeUInt16LE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,2,65535,0),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n&255,this[o+1]=n>>>8):objectWriteUInt16(this,n,o,!0),o+2},Buffer$1.prototype.writeUInt16BE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,2,65535,0),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n>>>8,this[o+1]=n&255):objectWriteUInt16(this,n,o,!1),o+2};function objectWriteUInt32(t,n,o,s){n<0&&(n=4294967295+n+1);for(var c=0,d=Math.min(t.length-o,4);c<d;++c)t[o+c]=n>>>(s?c:3-c)*8&255}Buffer$1.prototype.writeUInt32LE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,4,4294967295,0),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o+3]=n>>>24,this[o+2]=n>>>16,this[o+1]=n>>>8,this[o]=n&255):objectWriteUInt32(this,n,o,!0),o+4},Buffer$1.prototype.writeUInt32BE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,4,4294967295,0),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n>>>24,this[o+1]=n>>>16,this[o+2]=n>>>8,this[o+3]=n&255):objectWriteUInt32(this,n,o,!1),o+4},Buffer$1.prototype.writeIntLE=function t(n,o,s,c){if(n=+n,o=o|0,!c){var d=Math.pow(2,8*s-1);checkInt(this,n,o,s,d-1,-d)}var h=0,p=1,y=0;for(this[o]=n&255;++h<s&&(p*=256);)n<0&&y===0&&this[o+h-1]!==0&&(y=1),this[o+h]=(n/p>>0)-y&255;return o+s},Buffer$1.prototype.writeIntBE=function t(n,o,s,c){if(n=+n,o=o|0,!c){var d=Math.pow(2,8*s-1);checkInt(this,n,o,s,d-1,-d)}var h=s-1,p=1,y=0;for(this[o+h]=n&255;--h>=0&&(p*=256);)n<0&&y===0&&this[o+h+1]!==0&&(y=1),this[o+h]=(n/p>>0)-y&255;return o+s},Buffer$1.prototype.writeInt8=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,1,127,-128),Buffer$1.TYPED_ARRAY_SUPPORT||(n=Math.floor(n)),n<0&&(n=255+n+1),this[o]=n&255,o+1},Buffer$1.prototype.writeInt16LE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,2,32767,-32768),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n&255,this[o+1]=n>>>8):objectWriteUInt16(this,n,o,!0),o+2},Buffer$1.prototype.writeInt16BE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,2,32767,-32768),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n>>>8,this[o+1]=n&255):objectWriteUInt16(this,n,o,!1),o+2},Buffer$1.prototype.writeInt32LE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,4,2147483647,-2147483648),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n&255,this[o+1]=n>>>8,this[o+2]=n>>>16,this[o+3]=n>>>24):objectWriteUInt32(this,n,o,!0),o+4},Buffer$1.prototype.writeInt32BE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,4,2147483647,-2147483648),n<0&&(n=4294967295+n+1),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n>>>24,this[o+1]=n>>>16,this[o+2]=n>>>8,this[o+3]=n&255):objectWriteUInt32(this,n,o,!1),o+4};function checkIEEE754(t,n,o,s,c,d){if(o+s>t.length)throw new RangeError("Index out of range");if(o<0)throw new RangeError("Index out of range")}function writeFloat(t,n,o,s,c){return c||checkIEEE754(t,n,o,4),write(t,n,o,s,23,4),o+4}Buffer$1.prototype.writeFloatLE=function t(n,o,s){return writeFloat(this,n,o,!0,s)},Buffer$1.prototype.writeFloatBE=function t(n,o,s){return writeFloat(this,n,o,!1,s)};function writeDouble(t,n,o,s,c){return c||checkIEEE754(t,n,o,8),write(t,n,o,s,52,8),o+8}Buffer$1.prototype.writeDoubleLE=function t(n,o,s){return writeDouble(this,n,o,!0,s)},Buffer$1.prototype.writeDoubleBE=function t(n,o,s){return writeDouble(this,n,o,!1,s)},Buffer$1.prototype.copy=function t(n,o,s,c){if(s||(s=0),!c&&c!==0&&(c=this.length),o>=n.length&&(o=n.length),o||(o=0),c>0&&c<s&&(c=s),c===s||n.length===0||this.length===0)return 0;if(o<0)throw new RangeError("targetStart out of bounds");if(s<0||s>=this.length)throw new RangeError("sourceStart out of bounds");if(c<0)throw new RangeError("sourceEnd out of bounds");c>this.length&&(c=this.length),n.length-o<c-s&&(c=n.length-o+s);var d=c-s,h;if(this===n&&s<o&&o<c)for(h=d-1;h>=0;--h)n[h+o]=this[h+s];else if(d<1e3||!Buffer$1.TYPED_ARRAY_SUPPORT)for(h=0;h<d;++h)n[h+o]=this[h+s];else Uint8Array.prototype.set.call(n,this.subarray(s,s+d),o);return d},Buffer$1.prototype.fill=function t(n,o,s,c){if(typeof n=="string"){if(typeof o=="string"?(c=o,o=0,s=this.length):typeof s=="string"&&(c=s,s=this.length),n.length===1){var d=n.charCodeAt(0);d<256&&(n=d)}if(c!==void 0&&typeof c!="string")throw new TypeError("encoding must be a string");if(typeof c=="string"&&!Buffer$1.isEncoding(c))throw new TypeError("Unknown encoding: "+c)}else typeof n=="number"&&(n=n&255);if(o<0||this.length<o||this.length<s)throw new RangeError("Out of range index");if(s<=o)return this;o=o>>>0,s=s===void 0?this.length:s>>>0,n||(n=0);var h;if(typeof n=="number")for(h=o;h<s;++h)this[h]=n;else{var p=internalIsBuffer(n)?n:utf8ToBytes(new Buffer$1(n,c).toString()),y=p.length;for(h=0;h<s-o;++h)this[h+o]=p[h%y]}return this};var INVALID_BASE64_RE=/[^+\/0-9A-Za-z-_]/g;function base64clean(t){if(t=stringtrim(t).replace(INVALID_BASE64_RE,""),t.length<2)return"";for(;t.length%4!==0;)t=t+"=";return t}function stringtrim(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function toHex(t){return t<16?"0"+t.toString(16):t.toString(16)}function utf8ToBytes(t,n){n=n||1/0;for(var o,s=t.length,c=null,d=[],h=0;h<s;++h){if(o=t.charCodeAt(h),o>55295&&o<57344){if(!c){if(o>56319){(n-=3)>-1&&d.push(239,191,189);continue}else if(h+1===s){(n-=3)>-1&&d.push(239,191,189);continue}c=o;continue}if(o<56320){(n-=3)>-1&&d.push(239,191,189),c=o;continue}o=(c-55296<<10|o-56320)+65536}else c&&(n-=3)>-1&&d.push(239,191,189);if(c=null,o<128){if((n-=1)<0)break;d.push(o)}else if(o<2048){if((n-=2)<0)break;d.push(o>>6|192,o&63|128)}else if(o<65536){if((n-=3)<0)break;d.push(o>>12|224,o>>6&63|128,o&63|128)}else if(o<1114112){if((n-=4)<0)break;d.push(o>>18|240,o>>12&63|128,o>>6&63|128,o&63|128)}else throw new Error("Invalid code point")}return d}function asciiToBytes(t){for(var n=[],o=0;o<t.length;++o)n.push(t.charCodeAt(o)&255);return n}function utf16leToBytes(t,n){for(var o,s,c,d=[],h=0;h<t.length&&!((n-=2)<0);++h)o=t.charCodeAt(h),s=o>>8,c=o%256,d.push(c),d.push(s);return d}function base64ToBytes(t){return toByteArray(base64clean(t))}function blitBuffer(t,n,o,s){for(var c=0;c<s&&!(c+o>=n.length||c>=t.length);++c)n[c+o]=t[c];return c}function isnan(t){return t!==t}function isBuffer(t){return t!=null&&(!!t._isBuffer||isFastBuffer(t)||isSlowBuffer(t))}function isFastBuffer(t){return!!t.constructor&&typeof t.constructor.isBuffer=="function"&&t.constructor.isBuffer(t)}function isSlowBuffer(t){return typeof t.readFloatLE=="function"&&typeof t.slice=="function"&&isFastBuffer(t.slice(0,0))}var domain;function EventHandlers(){}EventHandlers.prototype=Object.create(null);function EventEmitter(){EventEmitter.init.call(this)}EventEmitter.EventEmitter=EventEmitter,EventEmitter.usingDomains=!1,EventEmitter.prototype.domain=void 0,EventEmitter.prototype._events=void 0,EventEmitter.prototype._maxListeners=void 0,EventEmitter.defaultMaxListeners=10,EventEmitter.init=function(){this.domain=null,EventEmitter.usingDomains&&domain.active,(!this._events||this._events===Object.getPrototypeOf(this)._events)&&(this._events=new EventHandlers,this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},EventEmitter.prototype.setMaxListeners=function t(n){if(typeof n!="number"||n<0||isNaN(n))throw new TypeError('"n" argument must be a positive number');return this._maxListeners=n,this};function $getMaxListeners(t){return t._maxListeners===void 0?EventEmitter.defaultMaxListeners:t._maxListeners}EventEmitter.prototype.getMaxListeners=function t(){return $getMaxListeners(this)};function emitNone(t,n,o){if(n)t.call(o);else for(var s=t.length,c=arrayClone(t,s),d=0;d<s;++d)c[d].call(o)}function emitOne(t,n,o,s){if(n)t.call(o,s);else for(var c=t.length,d=arrayClone(t,c),h=0;h<c;++h)d[h].call(o,s)}function emitTwo(t,n,o,s,c){if(n)t.call(o,s,c);else for(var d=t.length,h=arrayClone(t,d),p=0;p<d;++p)h[p].call(o,s,c)}function emitThree(t,n,o,s,c,d){if(n)t.call(o,s,c,d);else for(var h=t.length,p=arrayClone(t,h),y=0;y<h;++y)p[y].call(o,s,c,d)}function emitMany(t,n,o,s){if(n)t.apply(o,s);else for(var c=t.length,d=arrayClone(t,c),h=0;h<c;++h)d[h].apply(o,s)}EventEmitter.prototype.emit=function t(n){var o,s,c,d,h,p,y,S=n==="error";if(p=this._events,p)S=S&&p.error==null;else if(!S)return!1;if(y=this.domain,S){if(o=arguments[1],y)o||(o=new Error('Uncaught, unspecified "error" event')),o.domainEmitter=this,o.domain=y,o.domainThrown=!1,y.emit("error",o);else{if(o instanceof Error)throw o;var P=new Error('Uncaught, unspecified "error" event. ('+o+")");throw P.context=o,P}return!1}if(s=p[n],!s)return!1;var L=typeof s=="function";switch(c=arguments.length,c){case 1:emitNone(s,L,this);break;case 2:emitOne(s,L,this,arguments[1]);break;case 3:emitTwo(s,L,this,arguments[1],arguments[2]);break;case 4:emitThree(s,L,this,arguments[1],arguments[2],arguments[3]);break;default:for(d=new Array(c-1),h=1;h<c;h++)d[h-1]=arguments[h];emitMany(s,L,this,d)}return!0};function _addListener(t,n,o,s){var c,d,h;if(typeof o!="function")throw new TypeError('"listener" argument must be a function');if(d=t._events,d?(d.newListener&&(t.emit("newListener",n,o.listener?o.listener:o),d=t._events),h=d[n]):(d=t._events=new EventHandlers,t._eventsCount=0),!h)h=d[n]=o,++t._eventsCount;else if(typeof h=="function"?h=d[n]=s?[o,h]:[h,o]:s?h.unshift(o):h.push(o),!h.warned&&(c=$getMaxListeners(t),c&&c>0&&h.length>c)){h.warned=!0;var p=new Error("Possible EventEmitter memory leak detected. "+h.length+" "+n+" listeners added. Use emitter.setMaxListeners() to increase limit");p.name="MaxListenersExceededWarning",p.emitter=t,p.type=n,p.count=h.length,emitWarning(p)}return t}function emitWarning(t){typeof console.warn=="function"?console.warn(t):console.log(t)}EventEmitter.prototype.addListener=function t(n,o){return _addListener(this,n,o,!1)},EventEmitter.prototype.on=EventEmitter.prototype.addListener,EventEmitter.prototype.prependListener=function t(n,o){return _addListener(this,n,o,!0)};function _onceWrap(t,n,o){var s=!1;function c(){t.removeListener(n,c),s||(s=!0,o.apply(t,arguments))}return c.listener=o,c}EventEmitter.prototype.once=function t(n,o){if(typeof o!="function")throw new TypeError('"listener" argument must be a function');return this.on(n,_onceWrap(this,n,o)),this},EventEmitter.prototype.prependOnceListener=function t(n,o){if(typeof o!="function")throw new TypeError('"listener" argument must be a function');return this.prependListener(n,_onceWrap(this,n,o)),this},EventEmitter.prototype.removeListener=function t(n,o){var s,c,d,h,p;if(typeof o!="function")throw new TypeError('"listener" argument must be a function');if(c=this._events,!c)return this;if(s=c[n],!s)return this;if(s===o||s.listener&&s.listener===o)--this._eventsCount===0?this._events=new EventHandlers:(delete c[n],c.removeListener&&this.emit("removeListener",n,s.listener||o));else if(typeof s!="function"){for(d=-1,h=s.length;h-- >0;)if(s[h]===o||s[h].listener&&s[h].listener===o){p=s[h].listener,d=h;break}if(d<0)return this;if(s.length===1){if(s[0]=void 0,--this._eventsCount===0)return this._events=new EventHandlers,this;delete c[n]}else spliceOne(s,d);c.removeListener&&this.emit("removeListener",n,p||o)}return this},EventEmitter.prototype.removeAllListeners=function t(n){var o,s;if(s=this._events,!s)return this;if(!s.removeListener)return arguments.length===0?(this._events=new EventHandlers,this._eventsCount=0):s[n]&&(--this._eventsCount===0?this._events=new EventHandlers:delete s[n]),this;if(arguments.length===0){for(var c=Object.keys(s),d=0,h;d<c.length;++d)h=c[d],h!=="removeListener"&&this.removeAllListeners(h);return this.removeAllListeners("removeListener"),this._events=new EventHandlers,this._eventsCount=0,this}if(o=s[n],typeof o=="function")this.removeListener(n,o);else if(o)do this.removeListener(n,o[o.length-1]);while(o[0]);return this},EventEmitter.prototype.listeners=function t(n){var o,s,c=this._events;return c?(o=c[n],o?typeof o=="function"?s=[o.listener||o]:s=unwrapListeners(o):s=[]):s=[],s},EventEmitter.listenerCount=function(t,n){return typeof t.listenerCount=="function"?t.listenerCount(n):listenerCount$1.call(t,n)},EventEmitter.prototype.listenerCount=listenerCount$1;function listenerCount$1(t){var n=this._events;if(n){var o=n[t];if(typeof o=="function")return 1;if(o)return o.length}return 0}EventEmitter.prototype.eventNames=function t(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};function spliceOne(t,n){for(var o=n,s=o+1,c=t.length;s<c;o+=1,s+=1)t[o]=t[s];t.pop()}function arrayClone(t,n){for(var o=new Array(n);n--;)o[n]=t[n];return o}function unwrapListeners(t){for(var n=new Array(t.length),o=0;o<n.length;++o)n[o]=t[o].listener||t[o];return n}function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}var cachedSetTimeout=defaultSetTimout,cachedClearTimeout=defaultClearTimeout;typeof global$1.setTimeout=="function"&&(cachedSetTimeout=setTimeout),typeof global$1.clearTimeout=="function"&&(cachedClearTimeout=clearTimeout);function runTimeout(t){if(cachedSetTimeout===setTimeout)return setTimeout(t,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(t,0);try{return cachedSetTimeout(t,0)}catch{try{return cachedSetTimeout.call(null,t,0)}catch{return cachedSetTimeout.call(this,t,0)}}}function runClearTimeout(t){if(cachedClearTimeout===clearTimeout)return clearTimeout(t);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(t);try{return cachedClearTimeout(t)}catch{try{return cachedClearTimeout.call(null,t)}catch{return cachedClearTimeout.call(this,t)}}}var queue=[],draining=!1,currentQueue,queueIndex=-1;function cleanUpNextTick(){!draining||!currentQueue||(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var t=runTimeout(cleanUpNextTick);draining=!0;for(var n=queue.length;n;){for(currentQueue=queue,queue=[];++queueIndex<n;)currentQueue&¤tQueue[queueIndex].run();queueIndex=-1,n=queue.length}currentQueue=null,draining=!1,runClearTimeout(t)}}function nextTick(t){var n=new Array(arguments.length-1);if(arguments.length>1)for(var o=1;o<arguments.length;o++)n[o-1]=arguments[o];queue.push(new Item(t,n)),queue.length===1&&!draining&&runTimeout(drainQueue)}function Item(t,n){this.fun=t,this.array=n}Item.prototype.run=function(){this.fun.apply(null,this.array)};var title="browser",platform="browser",browser=!0,env={},argv=[],version="",versions={},release={},config={};function noop(){}var on=noop,addListener=noop,once=noop,off=noop,removeListener=noop,removeAllListeners=noop,emit=noop;function binding(t){throw new Error("process.binding is not supported")}function cwd(){return"/"}function chdir(t){throw new Error("process.chdir is not supported")}function umask(){return 0}var performance$1=global$1.performance||{},performanceNow=performance$1.now||performance$1.mozNow||performance$1.msNow||performance$1.oNow||performance$1.webkitNow||function(){return new Date().getTime()};function hrtime(t){var n=performanceNow.call(performance$1)*.001,o=Math.floor(n),s=Math.floor(n%1*1e9);return t&&(o=o-t[0],s=s-t[1],s<0&&(o--,s+=1e9)),[o,s]}var startTime=new Date;function uptime(){var t=new Date,n=t-startTime;return n/1e3}var process$1={nextTick,title,browser,env,argv,version,versions,on,addListener,once,off,removeListener,removeAllListeners,emit,binding,cwd,chdir,umask,hrtime,platform,release,config,uptime},inherits;typeof Object.create=="function"?inherits=function(n,o){n.super_=o,n.prototype=Object.create(o.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}})}:inherits=function(n,o){n.super_=o;var s=function(){};s.prototype=o.prototype,n.prototype=new s,n.prototype.constructor=n};var inherits$1=inherits,formatRegExp=/%[sdj%]/g;function format(t){if(!isString(t)){for(var n=[],o=0;o<arguments.length;o++)n.push(inspect(arguments[o]));return n.join(" ")}for(var o=1,s=arguments,c=s.length,d=String(t).replace(formatRegExp,function(p){if(p==="%%")return"%";if(o>=c)return p;switch(p){case"%s":return String(s[o++]);case"%d":return Number(s[o++]);case"%j":try{return JSON.stringify(s[o++])}catch{return"[Circular]"}default:return p}}),h=s[o];o<c;h=s[++o])isNull(h)||!isObject(h)?d+=" "+h:d+=" "+inspect(h);return d}function deprecate(t,n){if(isUndefined(global$1.process))return function(){return deprecate(t,n).apply(this,arguments)};if(process$1.noDeprecation===!0)return t;var o=!1;function s(){if(!o){if(process$1.throwDeprecation)throw new Error(n);process$1.traceDeprecation?console.trace(n):console.error(n),o=!0}return t.apply(this,arguments)}return s}var debugs={},debugEnviron;function debuglog(t){if(isUndefined(debugEnviron)&&(debugEnviron=process$1.env.NODE_DEBUG||""),t=t.toUpperCase(),!debugs[t])if(new RegExp("\\b"+t+"\\b","i").test(debugEnviron)){var n=0;debugs[t]=function(){var o=format.apply(null,arguments);console.error("%s %d: %s",t,n,o)}}else debugs[t]=function(){};return debugs[t]}function inspect(t,n){var o={seen:[],stylize:stylizeNoColor};return arguments.length>=3&&(o.depth=arguments[2]),arguments.length>=4&&(o.colors=arguments[3]),isBoolean(n)?o.showHidden=n:n&&_extend(o,n),isUndefined(o.showHidden)&&(o.showHidden=!1),isUndefined(o.depth)&&(o.depth=2),isUndefined(o.colors)&&(o.colors=!1),isUndefined(o.customInspect)&&(o.customInspect=!0),o.colors&&(o.stylize=stylizeWithColor),formatValue(o,t,o.depth)}inspect.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},inspect.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function stylizeWithColor(t,n){var o=inspect.styles[n];return o?"\x1B["+inspect.colors[o][0]+"m"+t+"\x1B["+inspect.colors[o][1]+"m":t}function stylizeNoColor(t,n){return t}function arrayToHash(t){var n={};return t.forEach(function(o,s){n[o]=!0}),n}function formatValue(t,n,o){if(t.customInspect&&n&&isFunction(n.inspect)&&n.inspect!==inspect&&!(n.constructor&&n.constructor.prototype===n)){var s=n.inspect(o,t);return isString(s)||(s=formatValue(t,s,o)),s}var c=formatPrimitive(t,n);if(c)return c;var d=Object.keys(n),h=arrayToHash(d);if(t.showHidden&&(d=Object.getOwnPropertyNames(n)),isError(n)&&(d.indexOf("message")>=0||d.indexOf("description")>=0))return formatError(n);if(d.length===0){if(isFunction(n)){var p=n.name?": "+n.name:"";return t.stylize("[Function"+p+"]","special")}if(isRegExp(n))return t.stylize(RegExp.prototype.toString.call(n),"regexp");if(isDate(n))return t.stylize(Date.prototype.toString.call(n),"date");if(isError(n))return formatError(n)}var y="",S=!1,P=["{","}"];if(isArray(n)&&(S=!0,P=["[","]"]),isFunction(n)){var L=n.name?": "+n.name:"";y=" [Function"+L+"]"}if(isRegExp(n)&&(y=" "+RegExp.prototype.toString.call(n)),isDate(n)&&(y=" "+Date.prototype.toUTCString.call(n)),isError(n)&&(y=" "+formatError(n)),d.length===0&&(!S||n.length==0))return P[0]+y+P[1];if(o<0)return isRegExp(n)?t.stylize(RegExp.prototype.toString.call(n),"regexp"):t.stylize("[Object]","special");t.seen.push(n);var F;return S?F=formatArray(t,n,o,h,d):F=d.map(function(N){return formatProperty(t,n,o,h,N,S)}),t.seen.pop(),reduceToSingleString(F,y,P)}function formatPrimitive(t,n){if(isUndefined(n))return t.stylize("undefined","undefined");if(isString(n)){var o="'"+JSON.stringify(n).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(o,"string")}if(isNumber(n))return t.stylize(""+n,"number");if(isBoolean(n))return t.stylize(""+n,"boolean");if(isNull(n))return t.stylize("null","null")}function formatError(t){return"["+Error.prototype.toString.call(t)+"]"}function formatArray(t,n,o,s,c){for(var d=[],h=0,p=n.length;h<p;++h)hasOwnProperty(n,String(h))?d.push(formatProperty(t,n,o,s,String(h),!0)):d.push("");return c.forEach(function(y){y.match(/^\d+$/)||d.push(formatProperty(t,n,o,s,y,!0))}),d}function formatProperty(t,n,o,s,c,d){var h,p,y;if(y=Object.getOwnPropertyDescriptor(n,c)||{value:n[c]},y.get?y.set?p=t.stylize("[Getter/Setter]","special"):p=t.stylize("[Getter]","special"):y.set&&(p=t.stylize("[Setter]","special")),hasOwnProperty(s,c)||(h="["+c+"]"),p||(t.seen.indexOf(y.value)<0?(isNull(o)?p=formatValue(t,y.value,null):p=formatValue(t,y.value,o-1),p.indexOf(`
|
|
6745
|
+
`,uniforms:{...pick(P,["color","frustumLength","blackPoint","whitePoint","gamma"]),globeDepthTexture:()=>(y==null?void 0:y())??F._depthTexture}});if(c){const N=createBilateralFilterStage({prefix:t,outputType:h,useGlobeDepth:p,getGlobeDepthTexture:y,uniforms:{textureScale:n,...pick(P,["frustumLength","normalExponent","depthExponent"])}}),z=new Cesium$1.PostProcessStageComposite({name:`${t}_ambient_occlusion_generate_and_filter`,stages:[L,N]});return F.uniforms.ambientOcclusionTexture=z.name,new Cesium$1.PostProcessStageComposite({name:`${t}_ambient_occlusion`,stages:[z,F],inputPreviousStageTexture:!1,uniforms:createUniforms([{stage:L,uniforms:["intensity","maxRadius","bias","frustumLength","focalLength"]},{stage:N,uniforms:["frustumLength","normalExponent","depthExponent"]},{stage:F,uniforms:["color","blackPoint","whitePoint","gamma"]}])})}else return F.uniforms.ambientOcclusionTexture=L.name,new Cesium$1.PostProcessStageComposite({name:`${t}_ambient_occlusion`,stages:[L,F],inputPreviousStageTexture:!1,uniforms:createUniforms([{stage:L,uniforms:["intensity","maxRadius","bias","frustumLength","focalLength"]},{stage:F,uniforms:["color","blackPoint","whitePoint","gamma"]}])})}const AmbientOcclusionStage=({enabled:t=!0,textureScale:n,directions:o,steps:s,denoise:c,accurateNormalReconstruction:d,outputType:h,useGlobeDepth:p,...y})=>{const{viewer:S}=$e$1(),P=S==null?void 0:S.scene,L=useInstance({owner:P==null?void 0:P.postProcessStages,keys:[n,s,o,c,d,h,p],create:()=>{const F=createAmbientOcclusionStage({textureScale:n,steps:s,directions:o,denoise:c,accurateNormalReconstruction:d,outputType:h,useGlobeDepth:p,getGlobeDepthTexture:()=>P.context.uniformState.globeDepthTexture,uniforms:y});return F.enabled=t,F},transferOwnership:(F,N)=>(N==null||N.add(F),()=>{N==null||N.remove(F)})});return L.enabled=t,Object.assign(L.uniforms,y),P==null||P.requestRender(),usePreRender(()=>{const F=P==null?void 0:P.camera.frustum;if(F instanceof Cesium$1.PerspectiveFrustum){const N=1/Math.tan(F.fovy/2);L.uniforms.focalLength.x=N*F.aspectRatio,L.uniforms.focalLength.y=N}}),null},AmbientOcclusion=t=>{const n=$e$1(),[o,s]=React.useState(!1);return usePreRender(()=>{const c=n.scene;s(!(c!=null&&c.globe.depthTestAgainstTerrain));const{globeHeight:d}=c;if(!c||d==null)return;const h=c.camera.positionCartographic.height-d,p=c==null?void 0:c.camera.frustum;p instanceof Cesium$1.PerspectiveFrustum&&(c.camera.frustum.near=Cesium$1.Math.clamp(h-1,1,5)/Math.tan(p.fov/2))}),jsxRuntimeExports.jsx(AmbientOcclusionStage,{...t,useGlobeDepth:o})};var AmbientOcclusionOutputType=(t=>(t[t.Occlusion=1]="Occlusion",t[t.Normal=2]="Normal",t[t.Depth=3]="Depth",t[t.Weight=4]="Weight",t[t.Shade=5]="Shade",t))(AmbientOcclusionOutputType||{});const AMBIENT_OCCLUSION_QUALITY={low:{directions:4,steps:4,textureScale:.5,maxRadius:30},medium:{directions:4,steps:8,textureScale:.5,maxRadius:40},high:{directions:8,steps:8,textureScale:1,maxRadius:40},extreme:{directions:16,steps:16,textureScale:1,maxRadius:40}},DEFAULT_SKETCH_COLOR="#00bebe",DEFAULT_EDIT_COLOR="#3B3CD0",SELECTED_EDIT_COLOR="#FF9900",ADDING_POINT_COLOR="#3B3CD0";let drawPointImage,editPointImage,selectedPointImage,addingPointImage;const ControlPoint=({position:t,clampToGround:n=!1,index:o,isEditing:s,isSelected:c,isAddingPoint:d,isExtrudedControlPoint:h,handleControlPointMouseEvent:p})=>{const y=React.useRef(t);y.current=t;const S=useConstant$2(()=>new CallbackProperty((N,z)=>"getValue"in y.current?y.current.getValue(N,z):y.current,!1)),P=React.useMemo(()=>({position:S,billboard:{image:s?d?getAddingPointImage():c?getSelectedPointImage():getEditPointImage():getDrawPointImage(),width:s?16:8,height:s?16:8,heightReference:n?HeightReference$1.CLAMP_TO_GROUND:HeightReference$1.NONE,disableDepthTestDistance:1/0}}),[n,S,d,s,c]),L=React.useCallback(()=>{p==null||p(o,!!h,"mousedown")},[o,h,p]),F=React.useCallback(()=>{p==null||p(o,!!h,"click")},[o,h,p]);return jsxRuntimeExports.jsx(Is$1,{...P,onMouseDown:L,onClick:F})};function getDrawPointImage(){if(drawPointImage!=null)return drawPointImage;drawPointImage=document.createElement("canvas"),drawPointImage.width=16,drawPointImage.height=16;const t=drawPointImage.getContext("2d");return invariant$1(t!=null),t.fillStyle="white",t.fillRect(3,3,10,10),t.strokeStyle="black",t.lineWidth=2,t.strokeRect(3,3,10,10),drawPointImage}function getEditPointImage(){return getImage(editPointImage,{size:32,color:"white",strokeColor:DEFAULT_EDIT_COLOR})}function getSelectedPointImage(){return getImage(selectedPointImage,{size:32,color:"white",strokeColor:SELECTED_EDIT_COLOR})}function getAddingPointImage(){if(addingPointImage!=null)return addingPointImage;addingPointImage=document.createElement("canvas"),addingPointImage.width=32,addingPointImage.height=32;const t=addingPointImage.getContext("2d");return invariant$1(t!=null),t.beginPath(),t.arc(16,16,12,0,2*Math.PI),t.fillStyle="white",t.fill(),t.strokeStyle=ADDING_POINT_COLOR,t.lineWidth=4,t.stroke(),t.beginPath(),t.moveTo(16,8),t.lineTo(16,24),t.stroke(),t.moveTo(8,16),t.lineTo(24,16),t.stroke(),addingPointImage}function getImage(t,n){if(t!=null)return t;t=document.createElement("canvas"),t.width=n.size,t.height=n.size;const o=t.getContext("2d");return invariant$1(o!=null),o.beginPath(),o.arc(n.size/2,n.size/2,n.size/2-4,0,2*Math.PI),o.fillStyle=n.color,o.fill(),o.strokeStyle=n.strokeColor,o.lineWidth=4,o.stroke(),t}function assignForwardedRef(t,n){if(typeof t=="function")return t(n),()=>{t(null)};if(t!=null)return t.current=n,()=>{t.current=null}}const Entity=React.memo(React.forwardRef(({entities:t,...n},o)=>{const{viewer:s}=$e$1(),c=s==null?void 0:s.scene,d=s==null?void 0:s.entities,h=t??d,[p,y]=React.useState(()=>new Entity$1(n));return React.useEffect(()=>{y(new Entity$1(n))},[n.id]),React.useEffect(()=>(h==null||h.add(p),()=>{h==null||h.remove(p),c==null||c.requestRender()}),[c,h,p]),React.useEffect(()=>assignForwardedRef(o,p),[o,p]),Object.assign(p,omit(n,"id")),c==null||c.requestRender(),null})),textStyle={padding:"5px",color:"#fff",backgroundColor:"#000",borderRadius:"5px",lineHeight:1},MeasurementText=({children:t})=>jsxRuntimeExports.jsx("div",{style:textStyle,children:t}),MotionConfigContext=React.createContext({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"}),MotionContext=React.createContext({}),PresenceContext=React.createContext(null),isBrowser=typeof document<"u",useIsomorphicLayoutEffect$1=isBrowser?React.useLayoutEffect:React.useEffect,LazyContext=React.createContext({strict:!1}),camelToDash=t=>t.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),optimizedAppearDataId="framerAppearId",optimizedAppearDataAttribute="data-"+camelToDash(optimizedAppearDataId),MotionGlobalConfig={skipAnimations:!1,useManualTiming:!1};class Queue{constructor(){this.order=[],this.scheduled=new Set}add(n){if(!this.scheduled.has(n))return this.scheduled.add(n),this.order.push(n),!0}remove(n){const o=this.order.indexOf(n);o!==-1&&(this.order.splice(o,1),this.scheduled.delete(n))}clear(){this.order.length=0,this.scheduled.clear()}}function createRenderStep(t){let n=new Queue,o=new Queue,s=0,c=!1,d=!1;const h=new WeakSet,p={schedule:(y,S=!1,P=!1)=>{const L=P&&c,F=L?n:o;return S&&h.add(y),F.add(y)&&L&&c&&(s=n.order.length),y},cancel:y=>{o.remove(y),h.delete(y)},process:y=>{if(c){d=!0;return}if(c=!0,[n,o]=[o,n],o.clear(),s=n.order.length,s)for(let S=0;S<s;S++){const P=n.order[S];h.has(P)&&(p.schedule(P),t()),P(y)}c=!1,d&&(d=!1,p.process(y))}};return p}const stepsOrder=["read","resolveKeyframes","update","preRender","render","postRender"],maxElapsed=40;function createRenderBatcher(t,n){let o=!1,s=!0;const c={delta:0,timestamp:0,isProcessing:!1},d=stepsOrder.reduce((L,F)=>(L[F]=createRenderStep(()=>o=!0),L),{}),h=L=>{d[L].process(c)},p=()=>{const L=performance.now();o=!1,c.delta=s?1e3/60:Math.max(Math.min(L-c.timestamp,maxElapsed),1),c.timestamp=L,c.isProcessing=!0,stepsOrder.forEach(h),c.isProcessing=!1,o&&n&&(s=!1,t(p))},y=()=>{o=!0,s=!0,c.isProcessing||t(p)};return{schedule:stepsOrder.reduce((L,F)=>{const N=d[F];return L[F]=(z,W=!1,nt=!1)=>(o||y(),N.schedule(z,W,nt)),L},{}),cancel:L=>stepsOrder.forEach(F=>d[F].cancel(L)),state:c,steps:d}}const{schedule:microtask,cancel:cancelMicrotask}=createRenderBatcher(queueMicrotask,!1);function useVisualElement(t,n,o,s){const{visualElement:c}=React.useContext(MotionContext),d=React.useContext(LazyContext),h=React.useContext(PresenceContext),p=React.useContext(MotionConfigContext).reducedMotion,y=React.useRef();s=s||d.renderer,!y.current&&s&&(y.current=s(t,{visualState:n,parent:c,props:o,presenceContext:h,blockInitialAnimation:h?h.initial===!1:!1,reducedMotionConfig:p}));const S=y.current;React.useInsertionEffect(()=>{S&&S.update(o,h)});const P=React.useRef(!!(o[optimizedAppearDataAttribute]&&!window.HandoffComplete));return useIsomorphicLayoutEffect$1(()=>{S&&(microtask.postRender(S.render),P.current&&S.animationState&&S.animationState.animateChanges())}),React.useEffect(()=>{S&&(S.updateFeatures(),!P.current&&S.animationState&&S.animationState.animateChanges(),P.current&&(P.current=!1,window.HandoffComplete=!0))}),S}function isRefObject(t){return t&&typeof t=="object"&&Object.prototype.hasOwnProperty.call(t,"current")}function useMotionRef(t,n,o){return React.useCallback(s=>{s&&t.mount&&t.mount(s),n&&(s?n.mount(s):n.unmount()),o&&(typeof o=="function"?o(s):isRefObject(o)&&(o.current=s))},[n])}function isVariantLabel(t){return typeof t=="string"||Array.isArray(t)}function isAnimationControls(t){return t!==null&&typeof t=="object"&&typeof t.start=="function"}const variantPriorityOrder=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],variantProps=["initial",...variantPriorityOrder];function isControllingVariants(t){return isAnimationControls(t.animate)||variantProps.some(n=>isVariantLabel(t[n]))}function isVariantNode(t){return!!(isControllingVariants(t)||t.variants)}function getCurrentTreeVariants(t,n){if(isControllingVariants(t)){const{initial:o,animate:s}=t;return{initial:o===!1||isVariantLabel(o)?o:void 0,animate:isVariantLabel(s)?s:void 0}}return t.inherit!==!1?n:{}}function useCreateMotionContext(t){const{initial:n,animate:o}=getCurrentTreeVariants(t,React.useContext(MotionContext));return React.useMemo(()=>({initial:n,animate:o}),[variantLabelsAsDependency(n),variantLabelsAsDependency(o)])}function variantLabelsAsDependency(t){return Array.isArray(t)?t.join(" "):t}const featureProps={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"]},featureDefinitions={};for(const t in featureProps)featureDefinitions[t]={isEnabled:n=>featureProps[t].some(o=>!!n[o])};function loadFeatures(t){for(const n in t)featureDefinitions[n]={...featureDefinitions[n],...t[n]}}const LayoutGroupContext=React.createContext({}),SwitchLayoutGroupContext=React.createContext({}),motionComponentSymbol=Symbol.for("motionComponentSymbol");function createMotionComponent({preloadedFeatures:t,createVisualElement:n,useRender:o,useVisualState:s,Component:c}){t&&loadFeatures(t);function d(p,y){let S;const P={...React.useContext(MotionConfigContext),...p,layoutId:useLayoutId(p)},{isStatic:L}=P,F=useCreateMotionContext(p),N=s(p,L);if(!L&&isBrowser){F.visualElement=useVisualElement(c,N,P,n);const z=React.useContext(SwitchLayoutGroupContext),W=React.useContext(LazyContext).strict;F.visualElement&&(S=F.visualElement.loadFeatures(P,W,t,z))}return React__namespace.createElement(MotionContext.Provider,{value:F},S&&F.visualElement?React__namespace.createElement(S,{visualElement:F.visualElement,...P}):null,o(c,p,useMotionRef(N,F.visualElement,y),N,L,F.visualElement))}const h=React.forwardRef(d);return h[motionComponentSymbol]=c,h}function useLayoutId({layoutId:t}){const n=React.useContext(LayoutGroupContext).id;return n&&t!==void 0?n+"-"+t:t}function createMotionProxy(t){function n(s,c={}){return createMotionComponent(t(s,c))}if(typeof Proxy>"u")return n;const o=new Map;return new Proxy(n,{get:(s,c)=>(o.has(c)||o.set(c,n(c)),o.get(c))})}const lowercaseSVGElements=["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 isSVGComponent(t){return typeof t!="string"||t.includes("-")?!1:!!(lowercaseSVGElements.indexOf(t)>-1||/[A-Z]/u.test(t))}const scaleCorrectors={};function addScaleCorrector(t){Object.assign(scaleCorrectors,t)}const transformPropOrder=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],transformProps=new Set(transformPropOrder);function isForcedMotionValue(t,{layout:n,layoutId:o}){return transformProps.has(t)||t.startsWith("origin")||(n||o!==void 0)&&(!!scaleCorrectors[t]||t==="opacity")}const isMotionValue=t=>!!(t&&t.getVelocity),translateAlias={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},numTransforms=transformPropOrder.length;function buildTransform(t,{enableHardwareAcceleration:n=!0,allowTransformNone:o=!0},s,c){let d="";for(let h=0;h<numTransforms;h++){const p=transformPropOrder[h];if(t[p]!==void 0){const y=translateAlias[p]||p;d+=`${y}(${t[p]}) `}}return n&&!t.z&&(d+="translateZ(0)"),d=d.trim(),c?d=c(t,s?"":d):o&&s&&(d="none"),d}const checkStringStartsWith=t=>n=>typeof n=="string"&&n.startsWith(t),isCSSVariableName=checkStringStartsWith("--"),startsAsVariableToken=checkStringStartsWith("var(--"),isCSSVariableToken=t=>startsAsVariableToken(t)?singleCssVariableRegex.test(t.split("/*")[0].trim()):!1,singleCssVariableRegex=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,getValueAsType=(t,n)=>n&&typeof t=="number"?n.transform(t):t,clamp=(t,n,o)=>o>n?n:o<t?t:o,number={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},alpha={...number,transform:t=>clamp(0,1,t)},scale={...number,default:1},sanitize=t=>Math.round(t*1e5)/1e5,floatRegex=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu,colorRegex=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu,singleColorRegex=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu;function isString$1(t){return typeof t=="string"}const createUnitType=t=>({test:n=>isString$1(n)&&n.endsWith(t)&&n.split(" ").length===1,parse:parseFloat,transform:n=>`${n}${t}`}),degrees=createUnitType("deg"),percent=createUnitType("%"),px=createUnitType("px"),vh=createUnitType("vh"),vw=createUnitType("vw"),progressPercentage={...percent,parse:t=>percent.parse(t)/100,transform:t=>percent.transform(t*100)},int={...number,transform:Math.round},numberValueTypes={borderWidth:px,borderTopWidth:px,borderRightWidth:px,borderBottomWidth:px,borderLeftWidth:px,borderRadius:px,radius:px,borderTopLeftRadius:px,borderTopRightRadius:px,borderBottomRightRadius:px,borderBottomLeftRadius:px,width:px,maxWidth:px,height:px,maxHeight:px,size:px,top:px,right:px,bottom:px,left:px,padding:px,paddingTop:px,paddingRight:px,paddingBottom:px,paddingLeft:px,margin:px,marginTop:px,marginRight:px,marginBottom:px,marginLeft:px,rotate:degrees,rotateX:degrees,rotateY:degrees,rotateZ:degrees,scale,scaleX:scale,scaleY:scale,scaleZ:scale,skew:degrees,skewX:degrees,skewY:degrees,distance:px,translateX:px,translateY:px,translateZ:px,x:px,y:px,z:px,perspective:px,transformPerspective:px,opacity:alpha,originX:progressPercentage,originY:progressPercentage,originZ:px,zIndex:int,backgroundPositionX:px,backgroundPositionY:px,fillOpacity:alpha,strokeOpacity:alpha,numOctaves:int};function buildHTMLStyles(t,n,o,s){const{style:c,vars:d,transform:h,transformOrigin:p}=t;let y=!1,S=!1,P=!0;for(const L in n){const F=n[L];if(isCSSVariableName(L)){d[L]=F;continue}const N=numberValueTypes[L],z=getValueAsType(F,N);if(transformProps.has(L)){if(y=!0,h[L]=z,!P)continue;F!==(N.default||0)&&(P=!1)}else L.startsWith("origin")?(S=!0,p[L]=z):c[L]=z}if(n.transform||(y||s?c.transform=buildTransform(t.transform,o,P,s):c.transform&&(c.transform="none")),S){const{originX:L="50%",originY:F="50%",originZ:N=0}=p;c.transformOrigin=`${L} ${F} ${N}`}}const createHtmlRenderState=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function copyRawValuesOnly(t,n,o){for(const s in n)!isMotionValue(n[s])&&!isForcedMotionValue(s,o)&&(t[s]=n[s])}function useInitialMotionValues({transformTemplate:t},n,o){return React.useMemo(()=>{const s=createHtmlRenderState();return buildHTMLStyles(s,n,{enableHardwareAcceleration:!o},t),Object.assign({},s.vars,s.style)},[n])}function useStyle(t,n,o){const s=t.style||{},c={};return copyRawValuesOnly(c,s,t),Object.assign(c,useInitialMotionValues(t,n,o)),c}function useHTMLProps(t,n,o){const s={},c=useStyle(t,n,o);return t.drag&&t.dragListener!==!1&&(s.draggable=!1,c.userSelect=c.WebkitUserSelect=c.WebkitTouchCallout="none",c.touchAction=t.drag===!0?"none":`pan-${t.drag==="x"?"y":"x"}`),t.tabIndex===void 0&&(t.onTap||t.onTapStart||t.whileTap)&&(s.tabIndex=0),s.style=c,s}const validMotionProps=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","ignoreStrict","viewport"]);function isValidMotionProp(t){return t.startsWith("while")||t.startsWith("drag")&&t!=="draggable"||t.startsWith("layout")||t.startsWith("onTap")||t.startsWith("onPan")||t.startsWith("onLayout")||validMotionProps.has(t)}let shouldForward=t=>!isValidMotionProp(t);function loadExternalIsValidProp(t){t&&(shouldForward=n=>n.startsWith("on")?!isValidMotionProp(n):t(n))}try{loadExternalIsValidProp(require("@emotion/is-prop-valid").default)}catch(t){}function filterProps(t,n,o){const s={};for(const c in t)c==="values"&&typeof t.values=="object"||(shouldForward(c)||o===!0&&isValidMotionProp(c)||!n&&!isValidMotionProp(c)||t.draggable&&c.startsWith("onDrag"))&&(s[c]=t[c]);return s}function calcOrigin$1(t,n,o){return typeof t=="string"?t:px.transform(n+o*t)}function calcSVGTransformOrigin(t,n,o){const s=calcOrigin$1(n,t.x,t.width),c=calcOrigin$1(o,t.y,t.height);return`${s} ${c}`}const dashKeys={offset:"stroke-dashoffset",array:"stroke-dasharray"},camelKeys={offset:"strokeDashoffset",array:"strokeDasharray"};function buildSVGPath(t,n,o=1,s=0,c=!0){t.pathLength=1;const d=c?dashKeys:camelKeys;t[d.offset]=px.transform(-s);const h=px.transform(n),p=px.transform(o);t[d.array]=`${h} ${p}`}function buildSVGAttrs(t,{attrX:n,attrY:o,attrScale:s,originX:c,originY:d,pathLength:h,pathSpacing:p=1,pathOffset:y=0,...S},P,L,F){if(buildHTMLStyles(t,S,P,F),L){t.style.viewBox&&(t.attrs.viewBox=t.style.viewBox);return}t.attrs=t.style,t.style={};const{attrs:N,style:z,dimensions:W}=t;N.transform&&(W&&(z.transform=N.transform),delete N.transform),W&&(c!==void 0||d!==void 0||z.transform)&&(z.transformOrigin=calcSVGTransformOrigin(W,c!==void 0?c:.5,d!==void 0?d:.5)),n!==void 0&&(N.x=n),o!==void 0&&(N.y=o),s!==void 0&&(N.scale=s),h!==void 0&&buildSVGPath(N,h,p,y,!1)}const createSvgRenderState=()=>({...createHtmlRenderState(),attrs:{}}),isSVGTag=t=>typeof t=="string"&&t.toLowerCase()==="svg";function useSVGProps(t,n,o,s){const c=React.useMemo(()=>{const d=createSvgRenderState();return buildSVGAttrs(d,n,{enableHardwareAcceleration:!1},isSVGTag(s),t.transformTemplate),{...d.attrs,style:{...d.style}}},[n]);if(t.style){const d={};copyRawValuesOnly(d,t.style,t),c.style={...d,...c.style}}return c}function createUseRender(t=!1){return(o,s,c,{latestValues:d},h)=>{const y=(isSVGComponent(o)?useSVGProps:useHTMLProps)(s,d,h,o),S=filterProps(s,typeof o=="string",t),P=o!==React.Fragment?{...S,...y,ref:c}:{},{children:L}=s,F=React.useMemo(()=>isMotionValue(L)?L.get():L,[L]);return React.createElement(o,{...P,children:F})}}function renderHTML(t,{style:n,vars:o},s,c){Object.assign(t.style,n,c&&c.getProjectionStyles(s));for(const d in o)t.style.setProperty(d,o[d])}const camelCaseAttributes=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"]);function renderSVG(t,n,o,s){renderHTML(t,n,void 0,s);for(const c in n.attrs)t.setAttribute(camelCaseAttributes.has(c)?c:camelToDash(c),n.attrs[c])}function scrapeMotionValuesFromProps$1(t,n,o){var s;const{style:c}=t,d={};for(const h in c)(isMotionValue(c[h])||n.style&&isMotionValue(n.style[h])||isForcedMotionValue(h,t)||((s=o==null?void 0:o.getValue(h))===null||s===void 0?void 0:s.liveStyle)!==void 0)&&(d[h]=c[h]);return d}function scrapeMotionValuesFromProps(t,n,o){const s=scrapeMotionValuesFromProps$1(t,n,o);for(const c in t)if(isMotionValue(t[c])||isMotionValue(n[c])){const d=transformPropOrder.indexOf(c)!==-1?"attr"+c.charAt(0).toUpperCase()+c.substring(1):c;s[d]=t[c]}return s}function resolveVariantFromProps(t,n,o,s={},c={}){return typeof n=="function"&&(n=n(o!==void 0?o:t.custom,s,c)),typeof n=="string"&&(n=t.variants&&t.variants[n]),typeof n=="function"&&(n=n(o!==void 0?o:t.custom,s,c)),n}function useConstant(t){const n=React.useRef(null);return n.current===null&&(n.current=t()),n.current}const isKeyframesTarget=t=>Array.isArray(t),isCustomValue=t=>!!(t&&typeof t=="object"&&t.mix&&t.toValue),resolveFinalValueInKeyframes=t=>isKeyframesTarget(t)?t[t.length-1]||0:t;function resolveMotionValue(t){const n=isMotionValue(t)?t.get():t;return isCustomValue(n)?n.toValue():n}function makeState({scrapeMotionValuesFromProps:t,createRenderState:n,onMount:o},s,c,d){const h={latestValues:makeLatestValues(s,c,d,t),renderState:n()};return o&&(h.mount=p=>o(s,p,h)),h}const makeUseVisualState=t=>(n,o)=>{const s=React.useContext(MotionContext),c=React.useContext(PresenceContext),d=()=>makeState(t,n,s,c);return o?d():useConstant(d)};function makeLatestValues(t,n,o,s){const c={},d=s(t,{});for(const F in d)c[F]=resolveMotionValue(d[F]);let{initial:h,animate:p}=t;const y=isControllingVariants(t),S=isVariantNode(t);n&&S&&!y&&t.inherit!==!1&&(h===void 0&&(h=n.initial),p===void 0&&(p=n.animate));let P=o?o.initial===!1:!1;P=P||h===!1;const L=P?p:h;return L&&typeof L!="boolean"&&!isAnimationControls(L)&&(Array.isArray(L)?L:[L]).forEach(N=>{const z=resolveVariantFromProps(t,N);if(!z)return;const{transitionEnd:W,transition:nt,...Pe}=z;for(const se in Pe){let mt=Pe[se];if(Array.isArray(mt)){const kt=P?mt.length-1:0;mt=mt[kt]}mt!==null&&(c[se]=mt)}for(const se in W)c[se]=W[se]}),c}const noop$1=t=>t,{schedule:frame,cancel:cancelFrame,state:frameData,steps}=createRenderBatcher(typeof requestAnimationFrame<"u"?requestAnimationFrame:noop$1,!0),svgMotionConfig={useVisualState:makeUseVisualState({scrapeMotionValuesFromProps,createRenderState:createSvgRenderState,onMount:(t,n,{renderState:o,latestValues:s})=>{frame.read(()=>{try{o.dimensions=typeof n.getBBox=="function"?n.getBBox():n.getBoundingClientRect()}catch{o.dimensions={x:0,y:0,width:0,height:0}}}),frame.render(()=>{buildSVGAttrs(o,s,{enableHardwareAcceleration:!1},isSVGTag(n.tagName),t.transformTemplate),renderSVG(n,o)})}})},htmlMotionConfig={useVisualState:makeUseVisualState({scrapeMotionValuesFromProps:scrapeMotionValuesFromProps$1,createRenderState:createHtmlRenderState})};function createDomMotionConfig(t,{forwardMotionProps:n=!1},o,s){return{...isSVGComponent(t)?svgMotionConfig:htmlMotionConfig,preloadedFeatures:o,useRender:createUseRender(n),createVisualElement:s,Component:t}}function addDomEvent(t,n,o,s={passive:!0}){return t.addEventListener(n,o,s),()=>t.removeEventListener(n,o)}const isPrimaryPointer=t=>t.pointerType==="mouse"?typeof t.button!="number"||t.button<=0:t.isPrimary!==!1;function extractEventInfo(t,n="page"){return{point:{x:t[n+"X"],y:t[n+"Y"]}}}const addPointerInfo=t=>n=>isPrimaryPointer(n)&&t(n,extractEventInfo(n));function addPointerEvent(t,n,o,s){return addDomEvent(t,n,addPointerInfo(o),s)}const combineFunctions=(t,n)=>o=>n(t(o)),pipe=(...t)=>t.reduce(combineFunctions);function createLock(t){let n=null;return()=>{const o=()=>{n=null};return n===null?(n=t,o):!1}}const globalHorizontalLock=createLock("dragHorizontal"),globalVerticalLock=createLock("dragVertical");function getGlobalLock(t){let n=!1;if(t==="y")n=globalVerticalLock();else if(t==="x")n=globalHorizontalLock();else{const o=globalHorizontalLock(),s=globalVerticalLock();o&&s?n=()=>{o(),s()}:(o&&o(),s&&s())}return n}function isDragActive(){const t=getGlobalLock(!0);return t?(t(),!1):!0}class Feature{constructor(n){this.isMounted=!1,this.node=n}update(){}}function addHoverEvent(t,n){const o="pointer"+(n?"enter":"leave"),s="onHover"+(n?"Start":"End"),c=(d,h)=>{if(d.pointerType==="touch"||isDragActive())return;const p=t.getProps();t.animationState&&p.whileHover&&t.animationState.setActive("whileHover",n),p[s]&&p[s](d,h)};return addPointerEvent(t.current,o,c,{passive:!t.getProps()[s]})}class HoverGesture extends Feature{mount(){this.unmount=pipe(addHoverEvent(this.node,!0),addHoverEvent(this.node,!1))}unmount(){}}class FocusGesture extends Feature{constructor(){super(...arguments),this.isActive=!1}onFocus(){let n=!1;try{n=this.node.current.matches(":focus-visible")}catch{n=!0}!n||!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=pipe(addDomEvent(this.node.current,"focus",()=>this.onFocus()),addDomEvent(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}const isNodeOrChild=(t,n)=>n?t===n?!0:isNodeOrChild(t,n.parentElement):!1;function fireSyntheticPointerEvent(t,n){if(!n)return;const o=new PointerEvent("pointer"+t);n(o,extractEventInfo(o))}class PressGesture extends Feature{constructor(){super(...arguments),this.removeStartListeners=noop$1,this.removeEndListeners=noop$1,this.removeAccessibleListeners=noop$1,this.startPointerPress=(n,o)=>{if(this.isPressing)return;this.removeEndListeners();const s=this.node.getProps(),d=addPointerEvent(window,"pointerup",(p,y)=>{if(!this.checkPressEnd())return;const{onTap:S,onTapCancel:P,globalTapTarget:L}=this.node.getProps();!L&&!isNodeOrChild(this.node.current,p.target)?P&&P(p,y):S&&S(p,y)},{passive:!(s.onTap||s.onPointerUp)}),h=addPointerEvent(window,"pointercancel",(p,y)=>this.cancelPress(p,y),{passive:!(s.onTapCancel||s.onPointerCancel)});this.removeEndListeners=pipe(d,h),this.startPress(n,o)},this.startAccessiblePress=()=>{const n=d=>{if(d.key!=="Enter"||this.isPressing)return;const h=p=>{p.key!=="Enter"||!this.checkPressEnd()||fireSyntheticPointerEvent("up",(y,S)=>{const{onTap:P}=this.node.getProps();P&&P(y,S)})};this.removeEndListeners(),this.removeEndListeners=addDomEvent(this.node.current,"keyup",h),fireSyntheticPointerEvent("down",(p,y)=>{this.startPress(p,y)})},o=addDomEvent(this.node.current,"keydown",n),s=()=>{this.isPressing&&fireSyntheticPointerEvent("cancel",(d,h)=>this.cancelPress(d,h))},c=addDomEvent(this.node.current,"blur",s);this.removeAccessibleListeners=pipe(o,c)}}startPress(n,o){this.isPressing=!0;const{onTapStart:s,whileTap:c}=this.node.getProps();c&&this.node.animationState&&this.node.animationState.setActive("whileTap",!0),s&&s(n,o)}checkPressEnd(){return this.removeEndListeners(),this.isPressing=!1,this.node.getProps().whileTap&&this.node.animationState&&this.node.animationState.setActive("whileTap",!1),!isDragActive()}cancelPress(n,o){if(!this.checkPressEnd())return;const{onTapCancel:s}=this.node.getProps();s&&s(n,o)}mount(){const n=this.node.getProps(),o=addPointerEvent(n.globalTapTarget?window:this.node.current,"pointerdown",this.startPointerPress,{passive:!(n.onTapStart||n.onPointerStart)}),s=addDomEvent(this.node.current,"focus",this.startAccessiblePress);this.removeStartListeners=pipe(o,s)}unmount(){this.removeStartListeners(),this.removeEndListeners(),this.removeAccessibleListeners()}}const observerCallbacks=new WeakMap,observers=new WeakMap,fireObserverCallback=t=>{const n=observerCallbacks.get(t.target);n&&n(t)},fireAllObserverCallbacks=t=>{t.forEach(fireObserverCallback)};function initIntersectionObserver({root:t,...n}){const o=t||document;observers.has(o)||observers.set(o,{});const s=observers.get(o),c=JSON.stringify(n);return s[c]||(s[c]=new IntersectionObserver(fireAllObserverCallbacks,{root:t,...n})),s[c]}function observeIntersection(t,n,o){const s=initIntersectionObserver(n);return observerCallbacks.set(t,o),s.observe(t),()=>{observerCallbacks.delete(t),s.unobserve(t)}}const thresholdNames={some:0,all:1};class InViewFeature extends Feature{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:n={}}=this.node.getProps(),{root:o,margin:s,amount:c="some",once:d}=n,h={root:o?o.current:void 0,rootMargin:s,threshold:typeof c=="number"?c:thresholdNames[c]},p=y=>{const{isIntersecting:S}=y;if(this.isInView===S||(this.isInView=S,d&&!S&&this.hasEnteredView))return;S&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",S);const{onViewportEnter:P,onViewportLeave:L}=this.node.getProps(),F=S?P:L;F&&F(y)};return observeIntersection(this.node.current,h,p)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:n,prevProps:o}=this.node;["amount","margin","root"].some(hasViewportOptionChanged(n,o))&&this.startObserver()}unmount(){}}function hasViewportOptionChanged({viewport:t={}},{viewport:n={}}={}){return o=>t[o]!==n[o]}const gestureAnimations={inView:{Feature:InViewFeature},tap:{Feature:PressGesture},focus:{Feature:FocusGesture},hover:{Feature:HoverGesture}};function shallowCompare(t,n){if(!Array.isArray(n))return!1;const o=n.length;if(o!==t.length)return!1;for(let s=0;s<o;s++)if(n[s]!==t[s])return!1;return!0}function getCurrent(t){const n={};return t.values.forEach((o,s)=>n[s]=o.get()),n}function getVelocity$1(t){const n={};return t.values.forEach((o,s)=>n[s]=o.getVelocity()),n}function resolveVariant(t,n,o){const s=t.getProps();return resolveVariantFromProps(s,n,o!==void 0?o:s.custom,getCurrent(t),getVelocity$1(t))}const secondsToMilliseconds=t=>t*1e3,millisecondsToSeconds=t=>t/1e3,underDampedSpring={type:"spring",stiffness:500,damping:25,restSpeed:10},criticallyDampedSpring=t=>({type:"spring",stiffness:550,damping:t===0?2*Math.sqrt(550):30,restSpeed:10}),keyframesTransition={type:"keyframes",duration:.8},ease={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},getDefaultTransition=(t,{keyframes:n})=>n.length>2?keyframesTransition:transformProps.has(t)?t.startsWith("scale")?criticallyDampedSpring(n[1]):underDampedSpring:ease;function isTransitionDefined({when:t,delay:n,delayChildren:o,staggerChildren:s,staggerDirection:c,repeat:d,repeatType:h,repeatDelay:p,from:y,elapsed:S,...P}){return!!Object.keys(P).length}function getValueTransition(t,n){return t[n]||t.default||t}const isNotNull=t=>t!==null;function getFinalKeyframe(t,{repeat:n,repeatType:o="loop"},s){const c=t.filter(isNotNull),d=n&&o!=="loop"&&n%2===1?0:c.length-1;return!d||s===void 0?c[d]:s}let now;function clearTime(){now=void 0}const time={now:()=>(now===void 0&&time.set(frameData.isProcessing||MotionGlobalConfig.useManualTiming?frameData.timestamp:performance.now()),now),set:t=>{now=t,queueMicrotask(clearTime)}},isZeroValueString=t=>/^0[^.\s]+$/u.test(t);function isNone(t){return typeof t=="number"?t===0:t!==null?t==="none"||t==="0"||isZeroValueString(t):!0}let warning=noop$1,invariant=noop$1;process.env.NODE_ENV!=="production"&&(warning=(t,n)=>{!t&&typeof console<"u"&&console.warn(n)},invariant=(t,n)=>{if(!t)throw new Error(n)});const isNumericalString=t=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(t),splitCSSVariableRegex=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function parseCSSVariable(t){const n=splitCSSVariableRegex.exec(t);if(!n)return[,];const[,o,s,c]=n;return[`--${o??s}`,c]}const maxDepth=4;function getVariableValue(t,n,o=1){invariant(o<=maxDepth,`Max CSS variable fallback depth detected in property "${t}". This may indicate a circular fallback dependency.`);const[s,c]=parseCSSVariable(t);if(!s)return;const d=window.getComputedStyle(n).getPropertyValue(s);if(d){const h=d.trim();return isNumericalString(h)?parseFloat(h):h}return isCSSVariableToken(c)?getVariableValue(c,n,o+1):c}const positionalKeys=new Set(["width","height","top","left","right","bottom","x","y","translateX","translateY"]),isNumOrPxType=t=>t===number||t===px,getPosFromMatrix=(t,n)=>parseFloat(t.split(", ")[n]),getTranslateFromMatrix=(t,n)=>(o,{transform:s})=>{if(s==="none"||!s)return 0;const c=s.match(/^matrix3d\((.+)\)$/u);if(c)return getPosFromMatrix(c[1],n);{const d=s.match(/^matrix\((.+)\)$/u);return d?getPosFromMatrix(d[1],t):0}},transformKeys=new Set(["x","y","z"]),nonTranslationalTransformKeys=transformPropOrder.filter(t=>!transformKeys.has(t));function removeNonTranslationalTransform(t){const n=[];return nonTranslationalTransformKeys.forEach(o=>{const s=t.getValue(o);s!==void 0&&(n.push([o,s.get()]),s.set(o.startsWith("scale")?1:0))}),n}const positionalValues={width:({x:t},{paddingLeft:n="0",paddingRight:o="0"})=>t.max-t.min-parseFloat(n)-parseFloat(o),height:({y:t},{paddingTop:n="0",paddingBottom:o="0"})=>t.max-t.min-parseFloat(n)-parseFloat(o),top:(t,{top:n})=>parseFloat(n),left:(t,{left:n})=>parseFloat(n),bottom:({y:t},{top:n})=>parseFloat(n)+(t.max-t.min),right:({x:t},{left:n})=>parseFloat(n)+(t.max-t.min),x:getTranslateFromMatrix(4,13),y:getTranslateFromMatrix(5,14)};positionalValues.translateX=positionalValues.x,positionalValues.translateY=positionalValues.y;const testValueType=t=>n=>n.test(t),auto={test:t=>t==="auto",parse:t=>t},dimensionValueTypes=[number,px,percent,degrees,vw,vh,auto],findDimensionValueType=t=>dimensionValueTypes.find(testValueType(t)),toResolve=new Set;let isScheduled=!1,anyNeedsMeasurement=!1;function measureAllKeyframes(){if(anyNeedsMeasurement){const t=Array.from(toResolve).filter(s=>s.needsMeasurement),n=new Set(t.map(s=>s.element)),o=new Map;n.forEach(s=>{removeNonTranslationalTransform(s).length&&(o.set(s,removeNonTranslationalTransform(s)),s.render())}),t.forEach(s=>s.measureInitialState()),n.forEach(s=>{s.render()}),t.forEach(s=>s.measureEndState()),t.forEach(s=>{s.suspendedScrollY!==void 0&&window.scrollTo(0,s.suspendedScrollY)})}anyNeedsMeasurement=!1,isScheduled=!1,toResolve.forEach(t=>t.complete()),toResolve.clear()}function readAllKeyframes(){toResolve.forEach(t=>{t.readKeyframes(),t.needsMeasurement&&(anyNeedsMeasurement=!0)})}function flushKeyframeResolvers(){readAllKeyframes(),measureAllKeyframes()}class KeyframeResolver{constructor(n,o,s,c,d,h=!1){this.isComplete=!1,this.isAsync=!1,this.needsMeasurement=!1,this.isScheduled=!1,this.unresolvedKeyframes=[...n],this.onComplete=o,this.name=s,this.motionValue=c,this.element=d,this.isAsync=h}scheduleResolve(){this.isScheduled=!0,this.isAsync?(toResolve.add(this),isScheduled||(isScheduled=!0,frame.read(readAllKeyframes),frame.resolveKeyframes(measureAllKeyframes))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:n,name:o,element:s,motionValue:c}=this;for(let d=0;d<n.length;d++)if(n[d]===null)if(d===0){const h=c==null?void 0:c.get(),p=n[n.length-1];if(h!==void 0)n[0]=h;else if(s&&o){const y=s.readValue(o,p);y!=null&&(n[0]=y)}n[0]===void 0&&(n[0]=p),c&&h===void 0&&c.set(n[0])}else n[d]=n[d-1]}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(){this.isComplete=!0,this.onComplete(this.unresolvedKeyframes,this.finalKeyframe),toResolve.delete(this)}cancel(){this.isComplete||(this.isScheduled=!1,toResolve.delete(this))}resume(){this.isComplete||this.scheduleResolve()}}const isColorString=(t,n)=>o=>!!(isString$1(o)&&singleColorRegex.test(o)&&o.startsWith(t)||n&&Object.prototype.hasOwnProperty.call(o,n)),splitColor=(t,n,o)=>s=>{if(!isString$1(s))return s;const[c,d,h,p]=s.match(floatRegex);return{[t]:parseFloat(c),[n]:parseFloat(d),[o]:parseFloat(h),alpha:p!==void 0?parseFloat(p):1}},clampRgbUnit=t=>clamp(0,255,t),rgbUnit={...number,transform:t=>Math.round(clampRgbUnit(t))},rgba={test:isColorString("rgb","red"),parse:splitColor("red","green","blue"),transform:({red:t,green:n,blue:o,alpha:s=1})=>"rgba("+rgbUnit.transform(t)+", "+rgbUnit.transform(n)+", "+rgbUnit.transform(o)+", "+sanitize(alpha.transform(s))+")"};function parseHex(t){let n="",o="",s="",c="";return t.length>5?(n=t.substring(1,3),o=t.substring(3,5),s=t.substring(5,7),c=t.substring(7,9)):(n=t.substring(1,2),o=t.substring(2,3),s=t.substring(3,4),c=t.substring(4,5),n+=n,o+=o,s+=s,c+=c),{red:parseInt(n,16),green:parseInt(o,16),blue:parseInt(s,16),alpha:c?parseInt(c,16)/255:1}}const hex={test:isColorString("#"),parse:parseHex,transform:rgba.transform},hsla={test:isColorString("hsl","hue"),parse:splitColor("hue","saturation","lightness"),transform:({hue:t,saturation:n,lightness:o,alpha:s=1})=>"hsla("+Math.round(t)+", "+percent.transform(sanitize(n))+", "+percent.transform(sanitize(o))+", "+sanitize(alpha.transform(s))+")"},color={test:t=>rgba.test(t)||hex.test(t)||hsla.test(t),parse:t=>rgba.test(t)?rgba.parse(t):hsla.test(t)?hsla.parse(t):hex.parse(t),transform:t=>isString$1(t)?t:t.hasOwnProperty("red")?rgba.transform(t):hsla.transform(t)};function test(t){var n,o;return isNaN(t)&&isString$1(t)&&(((n=t.match(floatRegex))===null||n===void 0?void 0:n.length)||0)+(((o=t.match(colorRegex))===null||o===void 0?void 0:o.length)||0)>0}const NUMBER_TOKEN="number",COLOR_TOKEN="color",VAR_TOKEN="var",VAR_FUNCTION_TOKEN="var(",SPLIT_TOKEN="${}",complexRegex=/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 analyseComplexValue(t){const n=t.toString(),o=[],s={color:[],number:[],var:[]},c=[];let d=0;const p=n.replace(complexRegex,y=>(color.test(y)?(s.color.push(d),c.push(COLOR_TOKEN),o.push(color.parse(y))):y.startsWith(VAR_FUNCTION_TOKEN)?(s.var.push(d),c.push(VAR_TOKEN),o.push(y)):(s.number.push(d),c.push(NUMBER_TOKEN),o.push(parseFloat(y))),++d,SPLIT_TOKEN)).split(SPLIT_TOKEN);return{values:o,split:p,indexes:s,types:c}}function parseComplexValue(t){return analyseComplexValue(t).values}function createTransformer(t){const{split:n,types:o}=analyseComplexValue(t),s=n.length;return c=>{let d="";for(let h=0;h<s;h++)if(d+=n[h],c[h]!==void 0){const p=o[h];p===NUMBER_TOKEN?d+=sanitize(c[h]):p===COLOR_TOKEN?d+=color.transform(c[h]):d+=c[h]}return d}}const convertNumbersToZero=t=>typeof t=="number"?0:t;function getAnimatableNone$1(t){const n=parseComplexValue(t);return createTransformer(t)(n.map(convertNumbersToZero))}const complex={test,parse:parseComplexValue,createTransformer,getAnimatableNone:getAnimatableNone$1},maxDefaults=new Set(["brightness","contrast","saturate","opacity"]);function applyDefaultFilter(t){const[n,o]=t.slice(0,-1).split("(");if(n==="drop-shadow")return t;const[s]=o.match(floatRegex)||[];if(!s)return t;const c=o.replace(s,"");let d=maxDefaults.has(n)?1:0;return s!==o&&(d*=100),n+"("+d+c+")"}const functionRegex=/\b([a-z-]*)\(.*?\)/gu,filter={...complex,getAnimatableNone:t=>{const n=t.match(functionRegex);return n?n.map(applyDefaultFilter).join(" "):t}},defaultValueTypes={...numberValueTypes,color,backgroundColor:color,outlineColor:color,fill:color,stroke:color,borderColor:color,borderTopColor:color,borderRightColor:color,borderBottomColor:color,borderLeftColor:color,filter,WebkitFilter:filter},getDefaultValueType=t=>defaultValueTypes[t];function getAnimatableNone(t,n){let o=getDefaultValueType(t);return o!==filter&&(o=complex),o.getAnimatableNone?o.getAnimatableNone(n):void 0}function makeNoneKeyframesAnimatable(t,n,o){let s=0,c;for(;s<t.length&&!c;)typeof t[s]=="string"&&t[s]!=="none"&&t[s]!=="0"&&(c=t[s]),s++;if(c&&o)for(const d of n)t[d]=getAnimatableNone(o,c)}class DOMKeyframesResolver extends KeyframeResolver{constructor(n,o,s,c){super(n,o,s,c,c==null?void 0:c.owner,!0)}readKeyframes(){const{unresolvedKeyframes:n,element:o,name:s}=this;if(!o.current)return;super.readKeyframes();for(let y=0;y<n.length;y++){const S=n[y];if(typeof S=="string"&&isCSSVariableToken(S)){const P=getVariableValue(S,o.current);P!==void 0&&(n[y]=P)}}if(!positionalKeys.has(s)||n.length!==2)return this.resolveNoneKeyframes();const[c,d]=n,h=findDimensionValueType(c),p=findDimensionValueType(d);if(h!==p)if(isNumOrPxType(h)&&isNumOrPxType(p))for(let y=0;y<n.length;y++){const S=n[y];typeof S=="string"&&(n[y]=parseFloat(S))}else this.needsMeasurement=!0}resolveNoneKeyframes(){const{unresolvedKeyframes:n,name:o}=this,s=[];for(let c=0;c<n.length;c++)isNone(n[c])&&s.push(c);s.length&&makeNoneKeyframesAnimatable(n,s,o)}measureInitialState(){const{element:n,unresolvedKeyframes:o,name:s}=this;if(!n.current)return;s==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=positionalValues[s](n.measureViewportBox(),window.getComputedStyle(n.current)),o[0]=this.measuredOrigin;const c=o[o.length-1];c!==void 0&&n.getValue(s,c).jump(c,!1)}measureEndState(){var n;const{element:o,name:s,unresolvedKeyframes:c}=this;if(!o.current)return;const d=o.getValue(s);d&&d.jump(this.measuredOrigin,!1);const h=c.length-1,p=c[h];c[h]=positionalValues[s](o.measureViewportBox(),window.getComputedStyle(o.current)),p!==null&&(this.finalKeyframe=p),!((n=this.removedTransforms)===null||n===void 0)&&n.length&&this.removedTransforms.forEach(([y,S])=>{o.getValue(y).set(S)}),this.resolveNoneKeyframes()}}function memo(t){let n;return()=>(n===void 0&&(n=t()),n)}const isAnimatable=(t,n)=>n==="zIndex"?!1:!!(typeof t=="number"||Array.isArray(t)||typeof t=="string"&&(complex.test(t)||t==="0")&&!t.startsWith("url("));function hasKeyframesChanged(t){const n=t[0];if(t.length===1)return!0;for(let o=0;o<t.length;o++)if(t[o]!==n)return!0}function canAnimate(t,n,o,s){const c=t[0];if(c===null)return!1;const d=t[t.length-1],h=isAnimatable(c,n),p=isAnimatable(d,n);return warning(h===p,`You are trying to animate ${n} from "${c}" to "${d}". ${c} is not an animatable value - to enable this animation set ${c} to a value animatable to ${d} via the \`style\` property.`),!h||!p?!1:hasKeyframesChanged(t)||o==="spring"&&s}class BaseAnimation{constructor({autoplay:n=!0,delay:o=0,type:s="keyframes",repeat:c=0,repeatDelay:d=0,repeatType:h="loop",...p}){this.isStopped=!1,this.hasAttemptedResolve=!1,this.options={autoplay:n,delay:o,type:s,repeat:c,repeatDelay:d,repeatType:h,...p},this.updateFinishedPromise()}get resolved(){return!this._resolved&&!this.hasAttemptedResolve&&flushKeyframeResolvers(),this._resolved}onKeyframesResolved(n,o){this.hasAttemptedResolve=!0;const{name:s,type:c,velocity:d,delay:h,onComplete:p,onUpdate:y,isGenerator:S}=this.options;if(!S&&!canAnimate(n,s,c,d))if(h)this.options.duration=0;else{y==null||y(getFinalKeyframe(n,this.options,o)),p==null||p(),this.resolveFinishedPromise();return}const P=this.initPlayback(n,o);P!==!1&&(this._resolved={keyframes:n,finalKeyframe:o,...P},this.onPostResolved())}onPostResolved(){}then(n,o){return this.currentFinishedPromise.then(n,o)}updateFinishedPromise(){this.currentFinishedPromise=new Promise(n=>{this.resolveFinishedPromise=n})}}function velocityPerSecond(t,n){return n?t*(1e3/n):0}const velocitySampleDuration=5;function calcGeneratorVelocity(t,n,o){const s=Math.max(n-velocitySampleDuration,0);return velocityPerSecond(o-t(s),n-s)}const safeMin=.001,minDuration=.01,maxDuration$1=10,minDamping=.05,maxDamping=1;function findSpring({duration:t=800,bounce:n=.25,velocity:o=0,mass:s=1}){let c,d;warning(t<=secondsToMilliseconds(maxDuration$1),"Spring duration must be 10 seconds or less");let h=1-n;h=clamp(minDamping,maxDamping,h),t=clamp(minDuration,maxDuration$1,millisecondsToSeconds(t)),h<1?(c=S=>{const P=S*h,L=P*t,F=P-o,N=calcAngularFreq(S,h),z=Math.exp(-L);return safeMin-F/N*z},d=S=>{const L=S*h*t,F=L*o+o,N=Math.pow(h,2)*Math.pow(S,2)*t,z=Math.exp(-L),W=calcAngularFreq(Math.pow(S,2),h);return(-c(S)+safeMin>0?-1:1)*((F-N)*z)/W}):(c=S=>{const P=Math.exp(-S*t),L=(S-o)*t+1;return-.001+P*L},d=S=>{const P=Math.exp(-S*t),L=(o-S)*(t*t);return P*L});const p=5/t,y=approximateRoot(c,d,p);if(t=secondsToMilliseconds(t),isNaN(y))return{stiffness:100,damping:10,duration:t};{const S=Math.pow(y,2)*s;return{stiffness:S,damping:h*2*Math.sqrt(s*S),duration:t}}}const rootIterations=12;function approximateRoot(t,n,o){let s=o;for(let c=1;c<rootIterations;c++)s=s-t(s)/n(s);return s}function calcAngularFreq(t,n){return t*Math.sqrt(1-n*n)}const durationKeys=["duration","bounce"],physicsKeys=["stiffness","damping","mass"];function isSpringType(t,n){return n.some(o=>t[o]!==void 0)}function getSpringOptions(t){let n={velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1,...t};if(!isSpringType(t,physicsKeys)&&isSpringType(t,durationKeys)){const o=findSpring(t);n={...n,...o,mass:1},n.isResolvedFromDuration=!0}return n}function spring({keyframes:t,restDelta:n,restSpeed:o,...s}){const c=t[0],d=t[t.length-1],h={done:!1,value:c},{stiffness:p,damping:y,mass:S,duration:P,velocity:L,isResolvedFromDuration:F}=getSpringOptions({...s,velocity:-millisecondsToSeconds(s.velocity||0)}),N=L||0,z=y/(2*Math.sqrt(p*S)),W=d-c,nt=millisecondsToSeconds(Math.sqrt(p/S)),Pe=Math.abs(W)<5;o||(o=Pe?.01:2),n||(n=Pe?.005:.5);let se;if(z<1){const mt=calcAngularFreq(nt,z);se=kt=>{const mn=Math.exp(-z*nt*kt);return d-mn*((N+z*nt*W)/mt*Math.sin(mt*kt)+W*Math.cos(mt*kt))}}else if(z===1)se=mt=>d-Math.exp(-nt*mt)*(W+(N+nt*W)*mt);else{const mt=nt*Math.sqrt(z*z-1);se=kt=>{const mn=Math.exp(-z*nt*kt),_i=Math.min(mt*kt,300);return d-mn*((N+z*nt*W)*Math.sinh(_i)+mt*W*Math.cosh(_i))/mt}}return{calculatedDuration:F&&P||null,next:mt=>{const kt=se(mt);if(F)h.done=mt>=P;else{let mn=N;mt!==0&&(z<1?mn=calcGeneratorVelocity(se,mt,kt):mn=0);const _i=Math.abs(mn)<=o,zi=Math.abs(d-kt)<=n;h.done=_i&&zi}return h.value=h.done?d:kt,h}}}function inertia({keyframes:t,velocity:n=0,power:o=.8,timeConstant:s=325,bounceDamping:c=10,bounceStiffness:d=500,modifyTarget:h,min:p,max:y,restDelta:S=.5,restSpeed:P}){const L=t[0],F={done:!1,value:L},N=Sa=>p!==void 0&&Sa<p||y!==void 0&&Sa>y,z=Sa=>p===void 0?y:y===void 0||Math.abs(p-Sa)<Math.abs(y-Sa)?p:y;let W=o*n;const nt=L+W,Pe=h===void 0?nt:h(nt);Pe!==nt&&(W=Pe-L);const se=Sa=>-W*Math.exp(-Sa/s),mt=Sa=>Pe+se(Sa),kt=Sa=>{const fa=se(Sa),La=mt(Sa);F.done=Math.abs(fa)<=S,F.value=F.done?Pe:La};let mn,_i;const zi=Sa=>{N(F.value)&&(mn=Sa,_i=spring({keyframes:[F.value,z(F.value)],velocity:calcGeneratorVelocity(mt,Sa,F.value),damping:c,stiffness:d,restDelta:S,restSpeed:P}))};return zi(0),{calculatedDuration:null,next:Sa=>{let fa=!1;return!_i&&mn===void 0&&(fa=!0,kt(Sa),zi(Sa)),mn!==void 0&&Sa>=mn?_i.next(Sa-mn):(!fa&&kt(Sa),F)}}}const calcBezier=(t,n,o)=>(((1-3*o+3*n)*t+(3*o-6*n))*t+3*n)*t,subdivisionPrecision=1e-7,subdivisionMaxIterations=12;function binarySubdivide(t,n,o,s,c){let d,h,p=0;do h=n+(o-n)/2,d=calcBezier(h,s,c)-t,d>0?o=h:n=h;while(Math.abs(d)>subdivisionPrecision&&++p<subdivisionMaxIterations);return h}function cubicBezier(t,n,o,s){if(t===n&&o===s)return noop$1;const c=d=>binarySubdivide(d,0,1,t,o);return d=>d===0||d===1?d:calcBezier(c(d),n,s)}const easeIn=cubicBezier(.42,0,1,1),easeOut=cubicBezier(0,0,.58,1),easeInOut=cubicBezier(.42,0,.58,1),isEasingArray=t=>Array.isArray(t)&&typeof t[0]!="number",mirrorEasing=t=>n=>n<=.5?t(2*n)/2:(2-t(2*(1-n)))/2,reverseEasing=t=>n=>1-t(1-n),circIn=t=>1-Math.sin(Math.acos(t)),circOut=reverseEasing(circIn),circInOut=mirrorEasing(circIn),backOut=cubicBezier(.33,1.53,.69,.99),backIn=reverseEasing(backOut),backInOut=mirrorEasing(backIn),anticipate=t=>(t*=2)<1?.5*backIn(t):.5*(2-Math.pow(2,-10*(t-1))),easingLookup={linear:noop$1,easeIn,easeInOut,easeOut,circIn,circInOut,circOut,backIn,backInOut,backOut,anticipate},easingDefinitionToFunction=t=>{if(Array.isArray(t)){invariant(t.length===4,"Cubic bezier arrays must contain four numerical values.");const[n,o,s,c]=t;return cubicBezier(n,o,s,c)}else if(typeof t=="string")return invariant(easingLookup[t]!==void 0,`Invalid easing type '${t}'`),easingLookup[t];return t},progress=(t,n,o)=>{const s=n-t;return s===0?1:(o-t)/s},mixNumber$1=(t,n,o)=>t+(n-t)*o;function hueToRgb(t,n,o){return o<0&&(o+=1),o>1&&(o-=1),o<1/6?t+(n-t)*6*o:o<1/2?n:o<2/3?t+(n-t)*(2/3-o)*6:t}function hslaToRgba({hue:t,saturation:n,lightness:o,alpha:s}){t/=360,n/=100,o/=100;let c=0,d=0,h=0;if(!n)c=d=h=o;else{const p=o<.5?o*(1+n):o+n-o*n,y=2*o-p;c=hueToRgb(y,p,t+1/3),d=hueToRgb(y,p,t),h=hueToRgb(y,p,t-1/3)}return{red:Math.round(c*255),green:Math.round(d*255),blue:Math.round(h*255),alpha:s}}const mixLinearColor=(t,n,o)=>{const s=t*t,c=o*(n*n-s)+s;return c<0?0:Math.sqrt(c)},colorTypes=[hex,rgba,hsla],getColorType=t=>colorTypes.find(n=>n.test(t));function asRGBA(t){const n=getColorType(t);invariant(!!n,`'${t}' is not an animatable color. Use the equivalent color code instead.`);let o=n.parse(t);return n===hsla&&(o=hslaToRgba(o)),o}const mixColor=(t,n)=>{const o=asRGBA(t),s=asRGBA(n),c={...o};return d=>(c.red=mixLinearColor(o.red,s.red,d),c.green=mixLinearColor(o.green,s.green,d),c.blue=mixLinearColor(o.blue,s.blue,d),c.alpha=mixNumber$1(o.alpha,s.alpha,d),rgba.transform(c))};function mixImmediate(t,n){return o=>o>0?n:t}function mixNumber(t,n){return o=>mixNumber$1(t,n,o)}function getMixer(t){return typeof t=="number"?mixNumber:typeof t=="string"?isCSSVariableToken(t)?mixImmediate:color.test(t)?mixColor:mixComplex:Array.isArray(t)?mixArray:typeof t=="object"?color.test(t)?mixColor:mixObject:mixImmediate}function mixArray(t,n){const o=[...t],s=o.length,c=t.map((d,h)=>getMixer(d)(d,n[h]));return d=>{for(let h=0;h<s;h++)o[h]=c[h](d);return o}}function mixObject(t,n){const o={...t,...n},s={};for(const c in o)t[c]!==void 0&&n[c]!==void 0&&(s[c]=getMixer(t[c])(t[c],n[c]));return c=>{for(const d in s)o[d]=s[d](c);return o}}function matchOrder(t,n){var o;const s=[],c={color:0,var:0,number:0};for(let d=0;d<n.values.length;d++){const h=n.types[d],p=t.indexes[h][c[h]],y=(o=t.values[p])!==null&&o!==void 0?o:0;s[d]=y,c[h]++}return s}const mixComplex=(t,n)=>{const o=complex.createTransformer(n),s=analyseComplexValue(t),c=analyseComplexValue(n);return s.indexes.var.length===c.indexes.var.length&&s.indexes.color.length===c.indexes.color.length&&s.indexes.number.length>=c.indexes.number.length?pipe(mixArray(matchOrder(s,c),c.values),o):(warning(!0,`Complex values '${t}' and '${n}' 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.`),mixImmediate(t,n))};function mix(t,n,o){return typeof t=="number"&&typeof n=="number"&&typeof o=="number"?mixNumber$1(t,n,o):getMixer(t)(t,n)}function createMixers(t,n,o){const s=[],c=o||mix,d=t.length-1;for(let h=0;h<d;h++){let p=c(t[h],t[h+1]);if(n){const y=Array.isArray(n)?n[h]||noop$1:n;p=pipe(y,p)}s.push(p)}return s}function interpolate(t,n,{clamp:o=!0,ease:s,mixer:c}={}){const d=t.length;if(invariant(d===n.length,"Both input and output ranges must be the same length"),d===1)return()=>n[0];if(d===2&&t[0]===t[1])return()=>n[1];t[0]>t[d-1]&&(t=[...t].reverse(),n=[...n].reverse());const h=createMixers(n,s,c),p=h.length,y=S=>{let P=0;if(p>1)for(;P<t.length-2&&!(S<t[P+1]);P++);const L=progress(t[P],t[P+1],S);return h[P](L)};return o?S=>y(clamp(t[0],t[d-1],S)):y}function fillOffset(t,n){const o=t[t.length-1];for(let s=1;s<=n;s++){const c=progress(0,n,s);t.push(mixNumber$1(o,1,c))}}function defaultOffset(t){const n=[0];return fillOffset(n,t.length-1),n}function convertOffsetToTimes(t,n){return t.map(o=>o*n)}function defaultEasing(t,n){return t.map(()=>n||easeInOut).splice(0,t.length-1)}function keyframes({duration:t=300,keyframes:n,times:o,ease:s="easeInOut"}){const c=isEasingArray(s)?s.map(easingDefinitionToFunction):easingDefinitionToFunction(s),d={done:!1,value:n[0]},h=convertOffsetToTimes(o&&o.length===n.length?o:defaultOffset(n),t),p=interpolate(h,n,{ease:Array.isArray(c)?c:defaultEasing(n,c)});return{calculatedDuration:t,next:y=>(d.value=p(y),d.done=y>=t,d)}}const maxGeneratorDuration=2e4;function calcGeneratorDuration(t){let n=0;const o=50;let s=t.next(n);for(;!s.done&&n<maxGeneratorDuration;)n+=o,s=t.next(n);return n>=maxGeneratorDuration?1/0:n}const frameloopDriver=t=>{const n=({timestamp:o})=>t(o);return{start:()=>frame.update(n,!0),stop:()=>cancelFrame(n),now:()=>frameData.isProcessing?frameData.timestamp:time.now()}},generators={decay:inertia,inertia,tween:keyframes,keyframes,spring},percentToProgress=t=>t/100;class MainThreadAnimation extends BaseAnimation{constructor({KeyframeResolver:n=KeyframeResolver,...o}){super(o),this.holdTime=null,this.startTime=null,this.cancelTime=null,this.currentTime=0,this.playbackSpeed=1,this.pendingPlayState="running",this.state="idle";const{name:s,motionValue:c,keyframes:d}=this.options,h=(p,y)=>this.onKeyframesResolved(p,y);s&&c&&c.owner?this.resolver=c.owner.resolveKeyframes(d,h,s,c):this.resolver=new n(d,h,s,c),this.resolver.scheduleResolve()}initPlayback(n){const{type:o="keyframes",repeat:s=0,repeatDelay:c=0,repeatType:d,velocity:h=0}=this.options,p=generators[o]||keyframes;let y,S;p!==keyframes&&typeof n[0]!="number"&&(process.env.NODE_ENV!=="production"&&invariant(n.length===2,`Only two keyframes currently supported with spring and inertia animations. Trying to animate ${n}`),y=pipe(percentToProgress,mix(n[0],n[1])),n=[0,100]);const P=p({...this.options,keyframes:n});d==="mirror"&&(S=p({...this.options,keyframes:[...n].reverse(),velocity:-h})),P.calculatedDuration===null&&(P.calculatedDuration=calcGeneratorDuration(P));const{calculatedDuration:L}=P,F=L+c,N=F*(s+1)-c;return{generator:P,mirroredGenerator:S,mapPercentToKeyframes:y,calculatedDuration:L,resolvedDuration:F,totalDuration:N}}onPostResolved(){const{autoplay:n=!0}=this.options;this.play(),this.pendingPlayState==="paused"||!n?this.pause():this.state=this.pendingPlayState}tick(n,o=!1){const{resolved:s}=this;if(!s){const{keyframes:Sa}=this.options;return{done:!0,value:Sa[Sa.length-1]}}const{finalKeyframe:c,generator:d,mirroredGenerator:h,mapPercentToKeyframes:p,keyframes:y,calculatedDuration:S,totalDuration:P,resolvedDuration:L}=s;if(this.startTime===null)return d.next(0);const{delay:F,repeat:N,repeatType:z,repeatDelay:W,onUpdate:nt}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,n):this.speed<0&&(this.startTime=Math.min(n-P/this.speed,this.startTime)),o?this.currentTime=n:this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=Math.round(n-this.startTime)*this.speed;const Pe=this.currentTime-F*(this.speed>=0?1:-1),se=this.speed>=0?Pe<0:Pe>P;this.currentTime=Math.max(Pe,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=P);let mt=this.currentTime,kt=d;if(N){const Sa=Math.min(this.currentTime,P)/L;let fa=Math.floor(Sa),La=Sa%1;!La&&Sa>=1&&(La=1),La===1&&fa--,fa=Math.min(fa,N+1),!!(fa%2)&&(z==="reverse"?(La=1-La,W&&(La-=W/L)):z==="mirror"&&(kt=h)),mt=clamp(0,1,La)*L}const mn=se?{done:!1,value:y[0]}:kt.next(mt);p&&(mn.value=p(mn.value));let{done:_i}=mn;!se&&S!==null&&(_i=this.speed>=0?this.currentTime>=P:this.currentTime<=0);const zi=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&_i);return zi&&c!==void 0&&(mn.value=getFinalKeyframe(y,this.options,c)),nt&&nt(mn.value),zi&&this.finish(),mn}get duration(){const{resolved:n}=this;return n?millisecondsToSeconds(n.calculatedDuration):0}get time(){return millisecondsToSeconds(this.currentTime)}set time(n){n=secondsToMilliseconds(n),this.currentTime=n,this.holdTime!==null||this.speed===0?this.holdTime=n:this.driver&&(this.startTime=this.driver.now()-n/this.speed)}get speed(){return this.playbackSpeed}set speed(n){const o=this.playbackSpeed!==n;this.playbackSpeed=n,o&&(this.time=millisecondsToSeconds(this.currentTime))}play(){if(this.resolver.isScheduled||this.resolver.resume(),!this._resolved){this.pendingPlayState="running";return}if(this.isStopped)return;const{driver:n=frameloopDriver,onPlay:o}=this.options;this.driver||(this.driver=n(c=>this.tick(c))),o&&o();const s=this.driver.now();this.holdTime!==null?this.startTime=s-this.holdTime:(!this.startTime||this.state==="finished")&&(this.startTime=s),this.state==="finished"&&this.updateFinishedPromise(),this.cancelTime=this.startTime,this.holdTime=null,this.state="running",this.driver.start()}pause(){var n;if(!this._resolved){this.pendingPlayState="paused";return}this.state="paused",this.holdTime=(n=this.currentTime)!==null&&n!==void 0?n:0}stop(){if(this.resolver.cancel(),this.isStopped=!0,this.state==="idle")return;this.teardown();const{onStop:n}=this.options;n&&n()}complete(){this.state!=="running"&&this.play(),this.pendingPlayState=this.state="finished",this.holdTime=null}finish(){this.teardown(),this.state="finished";const{onComplete:n}=this.options;n&&n()}cancel(){this.cancelTime!==null&&this.tick(this.cancelTime),this.teardown(),this.updateFinishedPromise()}teardown(){this.state="idle",this.stopDriver(),this.resolveFinishedPromise(),this.updateFinishedPromise(),this.startTime=this.cancelTime=null,this.resolver.cancel()}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(n){return this.startTime=0,this.tick(n,!0)}}const isBezierDefinition=t=>Array.isArray(t)&&typeof t[0]=="number";function isWaapiSupportedEasing(t){return!!(!t||typeof t=="string"&&supportedWaapiEasing[t]||isBezierDefinition(t)||Array.isArray(t)&&t.every(isWaapiSupportedEasing))}const cubicBezierAsString=([t,n,o,s])=>`cubic-bezier(${t}, ${n}, ${o}, ${s})`,supportedWaapiEasing={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:cubicBezierAsString([0,.65,.55,1]),circOut:cubicBezierAsString([.55,0,1,.45]),backIn:cubicBezierAsString([.31,.01,.66,-.59]),backOut:cubicBezierAsString([.33,1.53,.69,.99])};function mapEasingToNativeEasing(t){if(t)return isBezierDefinition(t)?cubicBezierAsString(t):Array.isArray(t)?t.map(mapEasingToNativeEasing):supportedWaapiEasing[t]}function animateStyle(t,n,o,{delay:s=0,duration:c=300,repeat:d=0,repeatType:h="loop",ease:p,times:y}={}){const S={[n]:o};y&&(S.offset=y);const P=mapEasingToNativeEasing(p);return Array.isArray(P)&&(S.easing=P),t.animate(S,{delay:s,duration:c,easing:Array.isArray(P)?"linear":P,fill:"both",iterations:d+1,direction:h==="reverse"?"alternate":"normal"})}const supportsWaapi=memo(()=>Object.hasOwnProperty.call(Element.prototype,"animate")),acceleratedValues=new Set(["opacity","clipPath","filter","transform"]),sampleDelta=10,maxDuration=2e4;function requiresPregeneratedKeyframes(t){return t.type==="spring"||t.name==="backgroundColor"||!isWaapiSupportedEasing(t.ease)}function pregenerateKeyframes(t,n){const o=new MainThreadAnimation({...n,keyframes:t,repeat:0,delay:0,isGenerator:!0});let s={done:!1,value:t[0]};const c=[];let d=0;for(;!s.done&&d<maxDuration;)s=o.sample(d),c.push(s.value),d+=sampleDelta;return{times:void 0,keyframes:c,duration:d-sampleDelta,ease:"linear"}}class AcceleratedAnimation extends BaseAnimation{constructor(n){super(n);const{name:o,motionValue:s,keyframes:c}=this.options;this.resolver=new DOMKeyframesResolver(c,(d,h)=>this.onKeyframesResolved(d,h),o,s),this.resolver.scheduleResolve()}initPlayback(n,o){var s;let{duration:c=300,times:d,ease:h,type:p,motionValue:y,name:S}=this.options;if(!(!((s=y.owner)===null||s===void 0)&&s.current))return!1;if(requiresPregeneratedKeyframes(this.options)){const{onComplete:L,onUpdate:F,motionValue:N,...z}=this.options,W=pregenerateKeyframes(n,z);n=W.keyframes,n.length===1&&(n[1]=n[0]),c=W.duration,d=W.times,h=W.ease,p="keyframes"}const P=animateStyle(y.owner.current,S,n,{...this.options,duration:c,times:d,ease:h});return P.startTime=time.now(),this.pendingTimeline?(P.timeline=this.pendingTimeline,this.pendingTimeline=void 0):P.onfinish=()=>{const{onComplete:L}=this.options;y.set(getFinalKeyframe(n,this.options,o)),L&&L(),this.cancel(),this.resolveFinishedPromise()},{animation:P,duration:c,times:d,type:p,ease:h,keyframes:n}}get duration(){const{resolved:n}=this;if(!n)return 0;const{duration:o}=n;return millisecondsToSeconds(o)}get time(){const{resolved:n}=this;if(!n)return 0;const{animation:o}=n;return millisecondsToSeconds(o.currentTime||0)}set time(n){const{resolved:o}=this;if(!o)return;const{animation:s}=o;s.currentTime=secondsToMilliseconds(n)}get speed(){const{resolved:n}=this;if(!n)return 1;const{animation:o}=n;return o.playbackRate}set speed(n){const{resolved:o}=this;if(!o)return;const{animation:s}=o;s.playbackRate=n}get state(){const{resolved:n}=this;if(!n)return"idle";const{animation:o}=n;return o.playState}attachTimeline(n){if(!this._resolved)this.pendingTimeline=n;else{const{resolved:o}=this;if(!o)return noop$1;const{animation:s}=o;s.timeline=n,s.onfinish=null}return noop$1}play(){if(this.isStopped)return;const{resolved:n}=this;if(!n)return;const{animation:o}=n;o.playState==="finished"&&this.updateFinishedPromise(),o.play()}pause(){const{resolved:n}=this;if(!n)return;const{animation:o}=n;o.pause()}stop(){if(this.resolver.cancel(),this.isStopped=!0,this.state==="idle")return;const{resolved:n}=this;if(!n)return;const{animation:o,keyframes:s,duration:c,type:d,ease:h,times:p}=n;if(!(o.playState==="idle"||o.playState==="finished")){if(this.time){const{motionValue:y,onUpdate:S,onComplete:P,...L}=this.options,F=new MainThreadAnimation({...L,keyframes:s,duration:c,type:d,ease:h,times:p,isGenerator:!0}),N=secondsToMilliseconds(this.time);y.setWithVelocity(F.sample(N-sampleDelta).value,F.sample(N).value,sampleDelta)}this.cancel()}}complete(){const{resolved:n}=this;n&&n.animation.finish()}cancel(){const{resolved:n}=this;n&&n.animation.cancel()}static supports(n){const{motionValue:o,name:s,repeatDelay:c,repeatType:d,damping:h,type:p}=n;return supportsWaapi()&&s&&acceleratedValues.has(s)&&o&&o.owner&&o.owner.current instanceof HTMLElement&&!o.owner.getProps().onUpdate&&!c&&d!=="mirror"&&h!==0&&p!=="inertia"}}const animateMotionValue=(t,n,o,s={},c,d)=>h=>{const p=getValueTransition(s,t)||{},y=p.delay||s.delay||0;let{elapsed:S=0}=s;S=S-secondsToMilliseconds(y);let P={keyframes:Array.isArray(o)?o:[null,o],ease:"easeOut",velocity:n.getVelocity(),...p,delay:-S,onUpdate:F=>{n.set(F),p.onUpdate&&p.onUpdate(F)},onComplete:()=>{h(),p.onComplete&&p.onComplete()},name:t,motionValue:n,element:d?void 0:c};isTransitionDefined(p)||(P={...P,...getDefaultTransition(t,P)}),P.duration&&(P.duration=secondsToMilliseconds(P.duration)),P.repeatDelay&&(P.repeatDelay=secondsToMilliseconds(P.repeatDelay)),P.from!==void 0&&(P.keyframes[0]=P.from);let L=!1;if((P.type===!1||P.duration===0&&!P.repeatDelay)&&(P.duration=0,P.delay===0&&(L=!0)),L&&!d&&n.get()!==void 0){const F=getFinalKeyframe(P.keyframes,p);if(F!==void 0){frame.update(()=>{P.onUpdate(F),P.onComplete()});return}}return!d&&AcceleratedAnimation.supports(P)?new AcceleratedAnimation(P):new MainThreadAnimation(P)};function isWillChangeMotionValue(t){return!!(isMotionValue(t)&&t.add)}function addUniqueItem(t,n){t.indexOf(n)===-1&&t.push(n)}function removeItem(t,n){const o=t.indexOf(n);o>-1&&t.splice(o,1)}class SubscriptionManager{constructor(){this.subscriptions=[]}add(n){return addUniqueItem(this.subscriptions,n),()=>removeItem(this.subscriptions,n)}notify(n,o,s){const c=this.subscriptions.length;if(c)if(c===1)this.subscriptions[0](n,o,s);else for(let d=0;d<c;d++){const h=this.subscriptions[d];h&&h(n,o,s)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const warned=new Set;function warnOnce(t,n,o){t||warned.has(n)||(console.warn(n),warned.add(n))}const MAX_VELOCITY_DELTA=30,isFloat=t=>!isNaN(parseFloat(t));class MotionValue{constructor(n,o={}){this.version="11.0.27",this.canTrackVelocity=!1,this.events={},this.updateAndNotify=(s,c=!0)=>{const d=time.now();this.updatedAt!==d&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(s),this.current!==this.prev&&this.events.change&&this.events.change.notify(this.current),c&&this.events.renderRequest&&this.events.renderRequest.notify(this.current)},this.hasAnimated=!1,this.setCurrent(n),this.canTrackVelocity=isFloat(this.current),this.owner=o.owner}setCurrent(n){this.current=n,this.updatedAt=time.now()}setPrevFrameValue(n=this.current){this.prevFrameValue=n,this.prevUpdatedAt=this.updatedAt}onChange(n){return process.env.NODE_ENV!=="production"&&warnOnce(!1,'value.onChange(callback) is deprecated. Switch to value.on("change", callback).'),this.on("change",n)}on(n,o){this.events[n]||(this.events[n]=new SubscriptionManager);const s=this.events[n].add(o);return n==="change"?()=>{s(),frame.read(()=>{this.events.change.getSize()||this.stop()})}:s}clearListeners(){for(const n in this.events)this.events[n].clear()}attach(n,o){this.passiveEffect=n,this.stopPassiveEffect=o}set(n,o=!0){!o||!this.passiveEffect?this.updateAndNotify(n,o):this.passiveEffect(n,this.updateAndNotify)}setWithVelocity(n,o,s){this.set(o),this.prev=void 0,this.prevFrameValue=n,this.prevUpdatedAt=this.updatedAt-s}jump(n,o=!0){this.updateAndNotify(n),this.prev=n,this.prevUpdatedAt=this.prevFrameValue=void 0,o&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const n=time.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||n-this.updatedAt>MAX_VELOCITY_DELTA)return 0;const o=Math.min(this.updatedAt-this.prevUpdatedAt,MAX_VELOCITY_DELTA);return velocityPerSecond(parseFloat(this.current)-parseFloat(this.prevFrameValue),o)}start(n){return this.stop(),new Promise(o=>{this.hasAnimated=!0,this.animation=n(o),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.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function motionValue(t,n){return new MotionValue(t,n)}function setMotionValue(t,n,o){t.hasValue(n)?t.getValue(n).set(o):t.addValue(n,motionValue(o))}function setTarget(t,n){const o=resolveVariant(t,n);let{transitionEnd:s={},transition:c={},...d}=o||{};d={...d,...s};for(const h in d){const p=resolveFinalValueInKeyframes(d[h]);setMotionValue(t,h,p)}}function shouldBlockAnimation({protectedKeys:t,needsAnimating:n},o){const s=t.hasOwnProperty(o)&&n[o]!==!0;return n[o]=!1,s}function animateTarget(t,n,{delay:o=0,transitionOverride:s,type:c}={}){var d;let{transition:h=t.getDefaultTransition(),transitionEnd:p,...y}=n;const S=t.getValue("willChange");s&&(h=s);const P=[],L=c&&t.animationState&&t.animationState.getState()[c];for(const F in y){const N=t.getValue(F,(d=t.latestValues[F])!==null&&d!==void 0?d:null),z=y[F];if(z===void 0||L&&shouldBlockAnimation(L,F))continue;const W={delay:o,elapsed:0,...getValueTransition(h||{},F)};let nt=!1;if(window.HandoffAppearAnimations){const se=t.getProps()[optimizedAppearDataAttribute];if(se){const mt=window.HandoffAppearAnimations(se,F);mt!==null&&(W.elapsed=mt,nt=!0)}}N.start(animateMotionValue(F,N,z,t.shouldReduceMotion&&transformProps.has(F)?{type:!1}:W,t,nt));const Pe=N.animation;Pe&&(isWillChangeMotionValue(S)&&(S.add(F),Pe.then(()=>S.remove(F))),P.push(Pe))}return p&&Promise.all(P).then(()=>{frame.update(()=>{p&&setTarget(t,p)})}),P}function animateVariant(t,n,o={}){var s;const c=resolveVariant(t,n,o.type==="exit"?(s=t.presenceContext)===null||s===void 0?void 0:s.custom:void 0);let{transition:d=t.getDefaultTransition()||{}}=c||{};o.transitionOverride&&(d=o.transitionOverride);const h=c?()=>Promise.all(animateTarget(t,c,o)):()=>Promise.resolve(),p=t.variantChildren&&t.variantChildren.size?(S=0)=>{const{delayChildren:P=0,staggerChildren:L,staggerDirection:F}=d;return animateChildren(t,n,P+S,L,F,o)}:()=>Promise.resolve(),{when:y}=d;if(y){const[S,P]=y==="beforeChildren"?[h,p]:[p,h];return S().then(()=>P())}else return Promise.all([h(),p(o.delay)])}function animateChildren(t,n,o=0,s=0,c=1,d){const h=[],p=(t.variantChildren.size-1)*s,y=c===1?(S=0)=>S*s:(S=0)=>p-S*s;return Array.from(t.variantChildren).sort(sortByTreeOrder).forEach((S,P)=>{S.notify("AnimationStart",n),h.push(animateVariant(S,n,{...d,delay:o+y(P)}).then(()=>S.notify("AnimationComplete",n)))}),Promise.all(h)}function sortByTreeOrder(t,n){return t.sortNodePosition(n)}function animateVisualElement(t,n,o={}){t.notify("AnimationStart",n);let s;if(Array.isArray(n)){const c=n.map(d=>animateVariant(t,d,o));s=Promise.all(c)}else if(typeof n=="string")s=animateVariant(t,n,o);else{const c=typeof n=="function"?resolveVariant(t,n,o.custom):n;s=Promise.all(animateTarget(t,c,o))}return s.then(()=>{frame.postRender(()=>{t.notify("AnimationComplete",n)})})}const reversePriorityOrder=[...variantPriorityOrder].reverse(),numAnimationTypes=variantPriorityOrder.length;function animateList(t){return n=>Promise.all(n.map(({animation:o,options:s})=>animateVisualElement(t,o,s)))}function createAnimationState(t){let n=animateList(t);const o=createState();let s=!0;const c=y=>(S,P)=>{var L;const F=resolveVariant(t,P,y==="exit"?(L=t.presenceContext)===null||L===void 0?void 0:L.custom:void 0);if(F){const{transition:N,transitionEnd:z,...W}=F;S={...S,...W,...z}}return S};function d(y){n=y(t)}function h(y){const S=t.getProps(),P=t.getVariantContext(!0)||{},L=[],F=new Set;let N={},z=1/0;for(let nt=0;nt<numAnimationTypes;nt++){const Pe=reversePriorityOrder[nt],se=o[Pe],mt=S[Pe]!==void 0?S[Pe]:P[Pe],kt=isVariantLabel(mt),mn=Pe===y?se.isActive:null;mn===!1&&(z=nt);let _i=mt===P[Pe]&&mt!==S[Pe]&&kt;if(_i&&s&&t.manuallyAnimateOnMount&&(_i=!1),se.protectedKeys={...N},!se.isActive&&mn===null||!mt&&!se.prevProp||isAnimationControls(mt)||typeof mt=="boolean")continue;let Sa=checkVariantsDidChange(se.prevProp,mt)||Pe===y&&se.isActive&&!_i&&kt||nt>z&&kt,fa=!1;const La=Array.isArray(mt)?mt:[mt];let Ra=La.reduce(c(Pe),{});mn===!1&&(Ra={});const{prevResolvedValues:ma={}}=se,yt={...ma,...Ra},lt=pi=>{Sa=!0,F.has(pi)&&(fa=!0,F.delete(pi)),se.needsAnimating[pi]=!0;const ba=t.getValue(pi);ba&&(ba.liveStyle=!1)};for(const pi in yt){const ba=Ra[pi],Sc=ma[pi];if(N.hasOwnProperty(pi))continue;let ms=!1;isKeyframesTarget(ba)&&isKeyframesTarget(Sc)?ms=!shallowCompare(ba,Sc):ms=ba!==Sc,ms?ba!=null?lt(pi):F.add(pi):ba!==void 0&&F.has(pi)?lt(pi):se.protectedKeys[pi]=!0}se.prevProp=mt,se.prevResolvedValues=Ra,se.isActive&&(N={...N,...Ra}),s&&t.blockInitialAnimation&&(Sa=!1),Sa&&(!_i||fa)&&L.push(...La.map(pi=>({animation:pi,options:{type:Pe}})))}if(F.size){const nt={};F.forEach(Pe=>{const se=t.getBaseTarget(Pe),mt=t.getValue(Pe);mt&&(mt.liveStyle=!0),nt[Pe]=se===void 0?null:se}),L.push({animation:nt})}let W=!!L.length;return s&&(S.initial===!1||S.initial===S.animate)&&!t.manuallyAnimateOnMount&&(W=!1),s=!1,W?n(L):Promise.resolve()}function p(y,S){var P;if(o[y].isActive===S)return Promise.resolve();(P=t.variantChildren)===null||P===void 0||P.forEach(F=>{var N;return(N=F.animationState)===null||N===void 0?void 0:N.setActive(y,S)}),o[y].isActive=S;const L=h(y);for(const F in o)o[F].protectedKeys={};return L}return{animateChanges:h,setActive:p,setAnimateFunction:d,getState:()=>o}}function checkVariantsDidChange(t,n){return typeof n=="string"?n!==t:Array.isArray(n)?!shallowCompare(n,t):!1}function createTypeState(t=!1){return{isActive:t,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function createState(){return{animate:createTypeState(!0),whileInView:createTypeState(),whileHover:createTypeState(),whileTap:createTypeState(),whileDrag:createTypeState(),whileFocus:createTypeState(),exit:createTypeState()}}class AnimationFeature extends Feature{constructor(n){super(n),n.animationState||(n.animationState=createAnimationState(n))}updateAnimationControlsSubscription(){const{animate:n}=this.node.getProps();this.unmount(),isAnimationControls(n)&&(this.unmount=n.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:n}=this.node.getProps(),{animate:o}=this.node.prevProps||{};n!==o&&this.updateAnimationControlsSubscription()}unmount(){}}let id$1=0;class ExitAnimationFeature extends Feature{constructor(){super(...arguments),this.id=id$1++}update(){if(!this.node.presenceContext)return;const{isPresent:n,onExitComplete:o}=this.node.presenceContext,{isPresent:s}=this.node.prevPresenceContext||{};if(!this.node.animationState||n===s)return;const c=this.node.animationState.setActive("exit",!n);o&&!n&&c.then(()=>o(this.id))}mount(){const{register:n}=this.node.presenceContext||{};n&&(this.unmount=n(this.id))}unmount(){}}const animations={animation:{Feature:AnimationFeature},exit:{Feature:ExitAnimationFeature}},distance=(t,n)=>Math.abs(t-n);function distance2D(t,n){const o=distance(t.x,n.x),s=distance(t.y,n.y);return Math.sqrt(o**2+s**2)}class PanSession{constructor(n,o,{transformPagePoint:s,contextWindow:c,dragSnapToOrigin:d=!1}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const L=getPanInfo(this.lastMoveEventInfo,this.history),F=this.startEvent!==null,N=distance2D(L.offset,{x:0,y:0})>=3;if(!F&&!N)return;const{point:z}=L,{timestamp:W}=frameData;this.history.push({...z,timestamp:W});const{onStart:nt,onMove:Pe}=this.handlers;F||(nt&&nt(this.lastMoveEvent,L),this.startEvent=this.lastMoveEvent),Pe&&Pe(this.lastMoveEvent,L)},this.handlePointerMove=(L,F)=>{this.lastMoveEvent=L,this.lastMoveEventInfo=transformPoint(F,this.transformPagePoint),frame.update(this.updatePoint,!0)},this.handlePointerUp=(L,F)=>{this.end();const{onEnd:N,onSessionEnd:z,resumeAnimation:W}=this.handlers;if(this.dragSnapToOrigin&&W&&W(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const nt=getPanInfo(L.type==="pointercancel"?this.lastMoveEventInfo:transformPoint(F,this.transformPagePoint),this.history);this.startEvent&&N&&N(L,nt),z&&z(L,nt)},!isPrimaryPointer(n))return;this.dragSnapToOrigin=d,this.handlers=o,this.transformPagePoint=s,this.contextWindow=c||window;const h=extractEventInfo(n),p=transformPoint(h,this.transformPagePoint),{point:y}=p,{timestamp:S}=frameData;this.history=[{...y,timestamp:S}];const{onSessionStart:P}=o;P&&P(n,getPanInfo(p,this.history)),this.removeListeners=pipe(addPointerEvent(this.contextWindow,"pointermove",this.handlePointerMove),addPointerEvent(this.contextWindow,"pointerup",this.handlePointerUp),addPointerEvent(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(n){this.handlers=n}end(){this.removeListeners&&this.removeListeners(),cancelFrame(this.updatePoint)}}function transformPoint(t,n){return n?{point:n(t.point)}:t}function subtractPoint(t,n){return{x:t.x-n.x,y:t.y-n.y}}function getPanInfo({point:t},n){return{point:t,delta:subtractPoint(t,lastDevicePoint(n)),offset:subtractPoint(t,startDevicePoint(n)),velocity:getVelocity(n,.1)}}function startDevicePoint(t){return t[0]}function lastDevicePoint(t){return t[t.length-1]}function getVelocity(t,n){if(t.length<2)return{x:0,y:0};let o=t.length-1,s=null;const c=lastDevicePoint(t);for(;o>=0&&(s=t[o],!(c.timestamp-s.timestamp>secondsToMilliseconds(n)));)o--;if(!s)return{x:0,y:0};const d=millisecondsToSeconds(c.timestamp-s.timestamp);if(d===0)return{x:0,y:0};const h={x:(c.x-s.x)/d,y:(c.y-s.y)/d};return h.x===1/0&&(h.x=0),h.y===1/0&&(h.y=0),h}function calcLength(t){return t.max-t.min}function isNear(t,n=0,o=.01){return Math.abs(t-n)<=o}function calcAxisDelta(t,n,o,s=.5){t.origin=s,t.originPoint=mixNumber$1(n.min,n.max,t.origin),t.scale=calcLength(o)/calcLength(n),(isNear(t.scale,1,1e-4)||isNaN(t.scale))&&(t.scale=1),t.translate=mixNumber$1(o.min,o.max,t.origin)-t.originPoint,(isNear(t.translate)||isNaN(t.translate))&&(t.translate=0)}function calcBoxDelta(t,n,o,s){calcAxisDelta(t.x,n.x,o.x,s?s.originX:void 0),calcAxisDelta(t.y,n.y,o.y,s?s.originY:void 0)}function calcRelativeAxis(t,n,o){t.min=o.min+n.min,t.max=t.min+calcLength(n)}function calcRelativeBox(t,n,o){calcRelativeAxis(t.x,n.x,o.x),calcRelativeAxis(t.y,n.y,o.y)}function calcRelativeAxisPosition(t,n,o){t.min=n.min-o.min,t.max=t.min+calcLength(n)}function calcRelativePosition(t,n,o){calcRelativeAxisPosition(t.x,n.x,o.x),calcRelativeAxisPosition(t.y,n.y,o.y)}function applyConstraints(t,{min:n,max:o},s){return n!==void 0&&t<n?t=s?mixNumber$1(n,t,s.min):Math.max(t,n):o!==void 0&&t>o&&(t=s?mixNumber$1(o,t,s.max):Math.min(t,o)),t}function calcRelativeAxisConstraints(t,n,o){return{min:n!==void 0?t.min+n:void 0,max:o!==void 0?t.max+o-(t.max-t.min):void 0}}function calcRelativeConstraints(t,{top:n,left:o,bottom:s,right:c}){return{x:calcRelativeAxisConstraints(t.x,o,c),y:calcRelativeAxisConstraints(t.y,n,s)}}function calcViewportAxisConstraints(t,n){let o=n.min-t.min,s=n.max-t.max;return n.max-n.min<t.max-t.min&&([o,s]=[s,o]),{min:o,max:s}}function calcViewportConstraints(t,n){return{x:calcViewportAxisConstraints(t.x,n.x),y:calcViewportAxisConstraints(t.y,n.y)}}function calcOrigin(t,n){let o=.5;const s=calcLength(t),c=calcLength(n);return c>s?o=progress(n.min,n.max-s,t.min):s>c&&(o=progress(t.min,t.max-c,n.min)),clamp(0,1,o)}function rebaseAxisConstraints(t,n){const o={};return n.min!==void 0&&(o.min=n.min-t.min),n.max!==void 0&&(o.max=n.max-t.min),o}const defaultElastic=.35;function resolveDragElastic(t=defaultElastic){return t===!1?t=0:t===!0&&(t=defaultElastic),{x:resolveAxisElastic(t,"left","right"),y:resolveAxisElastic(t,"top","bottom")}}function resolveAxisElastic(t,n,o){return{min:resolvePointElastic(t,n),max:resolvePointElastic(t,o)}}function resolvePointElastic(t,n){return typeof t=="number"?t:t[n]||0}const createAxisDelta=()=>({translate:0,scale:1,origin:0,originPoint:0}),createDelta=()=>({x:createAxisDelta(),y:createAxisDelta()}),createAxis=()=>({min:0,max:0}),createBox=()=>({x:createAxis(),y:createAxis()});function eachAxis(t){return[t("x"),t("y")]}function convertBoundingBoxToBox({top:t,left:n,right:o,bottom:s}){return{x:{min:n,max:o},y:{min:t,max:s}}}function convertBoxToBoundingBox({x:t,y:n}){return{top:n.min,right:t.max,bottom:n.max,left:t.min}}function transformBoxPoints(t,n){if(!n)return t;const o=n({x:t.left,y:t.top}),s=n({x:t.right,y:t.bottom});return{top:o.y,left:o.x,bottom:s.y,right:s.x}}function isIdentityScale(t){return t===void 0||t===1}function hasScale({scale:t,scaleX:n,scaleY:o}){return!isIdentityScale(t)||!isIdentityScale(n)||!isIdentityScale(o)}function hasTransform(t){return hasScale(t)||has2DTranslate(t)||t.z||t.rotate||t.rotateX||t.rotateY||t.skewX||t.skewY}function has2DTranslate(t){return is2DTranslate(t.x)||is2DTranslate(t.y)}function is2DTranslate(t){return t&&t!=="0%"}function scalePoint(t,n,o){const s=t-o,c=n*s;return o+c}function applyPointDelta(t,n,o,s,c){return c!==void 0&&(t=scalePoint(t,c,s)),scalePoint(t,o,s)+n}function applyAxisDelta(t,n=0,o=1,s,c){t.min=applyPointDelta(t.min,n,o,s,c),t.max=applyPointDelta(t.max,n,o,s,c)}function applyBoxDelta(t,{x:n,y:o}){applyAxisDelta(t.x,n.translate,n.scale,n.originPoint),applyAxisDelta(t.y,o.translate,o.scale,o.originPoint)}function applyTreeDeltas(t,n,o,s=!1){const c=o.length;if(!c)return;n.x=n.y=1;let d,h;for(let p=0;p<c;p++){d=o[p],h=d.projectionDelta;const y=d.instance;y&&y.style&&y.style.display==="contents"||(s&&d.options.layoutScroll&&d.scroll&&d!==d.root&&transformBox(t,{x:-d.scroll.offset.x,y:-d.scroll.offset.y}),h&&(n.x*=h.x.scale,n.y*=h.y.scale,applyBoxDelta(t,h)),s&&hasTransform(d.latestValues)&&transformBox(t,d.latestValues))}n.x=snapToDefault(n.x),n.y=snapToDefault(n.y)}function snapToDefault(t){return Number.isInteger(t)||t>1.0000000000001||t<.999999999999?t:1}function translateAxis(t,n){t.min=t.min+n,t.max=t.max+n}function transformAxis(t,n,[o,s,c]){const d=n[c]!==void 0?n[c]:.5,h=mixNumber$1(t.min,t.max,d);applyAxisDelta(t,n[o],n[s],h,n.scale)}const xKeys$1=["x","scaleX","originX"],yKeys$1=["y","scaleY","originY"];function transformBox(t,n){transformAxis(t.x,n,xKeys$1),transformAxis(t.y,n,yKeys$1)}function measureViewportBox(t,n){return convertBoundingBoxToBox(transformBoxPoints(t.getBoundingClientRect(),n))}function measurePageBox(t,n,o){const s=measureViewportBox(t,o),{scroll:c}=n;return c&&(translateAxis(s.x,c.offset.x),translateAxis(s.y,c.offset.y)),s}const getContextWindow=({current:t})=>t?t.ownerDocument.defaultView:null,elementDragControls=new WeakMap;class VisualElementDragControls{constructor(n){this.openGlobalLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=createBox(),this.visualElement=n}start(n,{snapToCursor:o=!1}={}){const{presenceContext:s}=this.visualElement;if(s&&s.isPresent===!1)return;const c=P=>{const{dragSnapToOrigin:L}=this.getProps();L?this.pauseAnimation():this.stopAnimation(),o&&this.snapToCursor(extractEventInfo(P,"page").point)},d=(P,L)=>{const{drag:F,dragPropagation:N,onDragStart:z}=this.getProps();if(F&&!N&&(this.openGlobalLock&&this.openGlobalLock(),this.openGlobalLock=getGlobalLock(F),!this.openGlobalLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),eachAxis(nt=>{let Pe=this.getAxisMotionValue(nt).get()||0;if(percent.test(Pe)){const{projection:se}=this.visualElement;if(se&&se.layout){const mt=se.layout.layoutBox[nt];mt&&(Pe=calcLength(mt)*(parseFloat(Pe)/100))}}this.originPoint[nt]=Pe}),z&&z(P,L);const{animationState:W}=this.visualElement;W&&W.setActive("whileDrag",!0)},h=(P,L)=>{const{dragPropagation:F,dragDirectionLock:N,onDirectionLock:z,onDrag:W}=this.getProps();if(!F&&!this.openGlobalLock)return;const{offset:nt}=L;if(N&&this.currentDirection===null){this.currentDirection=getCurrentDirection(nt),this.currentDirection!==null&&z&&z(this.currentDirection);return}this.updateAxis("x",L.point,nt),this.updateAxis("y",L.point,nt),this.visualElement.render(),W&&W(P,L)},p=(P,L)=>this.stop(P,L),y=()=>eachAxis(P=>{var L;return this.getAnimationState(P)==="paused"&&((L=this.getAxisMotionValue(P).animation)===null||L===void 0?void 0:L.play())}),{dragSnapToOrigin:S}=this.getProps();this.panSession=new PanSession(n,{onSessionStart:c,onStart:d,onMove:h,onSessionEnd:p,resumeAnimation:y},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:S,contextWindow:getContextWindow(this.visualElement)})}stop(n,o){const s=this.isDragging;if(this.cancel(),!s)return;const{velocity:c}=o;this.startAnimation(c);const{onDragEnd:d}=this.getProps();d&&d(n,o)}cancel(){this.isDragging=!1;const{projection:n,animationState:o}=this.visualElement;n&&(n.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:s}=this.getProps();!s&&this.openGlobalLock&&(this.openGlobalLock(),this.openGlobalLock=null),o&&o.setActive("whileDrag",!1)}updateAxis(n,o,s){const{drag:c}=this.getProps();if(!s||!shouldDrag(n,c,this.currentDirection))return;const d=this.getAxisMotionValue(n);let h=this.originPoint[n]+s[n];this.constraints&&this.constraints[n]&&(h=applyConstraints(h,this.constraints[n],this.elastic[n])),d.set(h)}resolveConstraints(){var n;const{dragConstraints:o,dragElastic:s}=this.getProps(),c=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(n=this.visualElement.projection)===null||n===void 0?void 0:n.layout,d=this.constraints;o&&isRefObject(o)?this.constraints||(this.constraints=this.resolveRefConstraints()):o&&c?this.constraints=calcRelativeConstraints(c.layoutBox,o):this.constraints=!1,this.elastic=resolveDragElastic(s),d!==this.constraints&&c&&this.constraints&&!this.hasMutatedConstraints&&eachAxis(h=>{this.getAxisMotionValue(h)&&(this.constraints[h]=rebaseAxisConstraints(c.layoutBox[h],this.constraints[h]))})}resolveRefConstraints(){const{dragConstraints:n,onMeasureDragConstraints:o}=this.getProps();if(!n||!isRefObject(n))return!1;const s=n.current;invariant(s!==null,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.");const{projection:c}=this.visualElement;if(!c||!c.layout)return!1;const d=measurePageBox(s,c.root,this.visualElement.getTransformPagePoint());let h=calcViewportConstraints(c.layout.layoutBox,d);if(o){const p=o(convertBoxToBoundingBox(h));this.hasMutatedConstraints=!!p,p&&(h=convertBoundingBoxToBox(p))}return h}startAnimation(n){const{drag:o,dragMomentum:s,dragElastic:c,dragTransition:d,dragSnapToOrigin:h,onDragTransitionEnd:p}=this.getProps(),y=this.constraints||{},S=eachAxis(P=>{if(!shouldDrag(P,o,this.currentDirection))return;let L=y[P]||{};h&&(L={min:0,max:0});const F=c?200:1e6,N=c?40:1e7,z={type:"inertia",velocity:s?n[P]:0,bounceStiffness:F,bounceDamping:N,timeConstant:750,restDelta:1,restSpeed:10,...d,...L};return this.startAxisValueAnimation(P,z)});return Promise.all(S).then(p)}startAxisValueAnimation(n,o){const s=this.getAxisMotionValue(n);return s.start(animateMotionValue(n,s,0,o,this.visualElement))}stopAnimation(){eachAxis(n=>this.getAxisMotionValue(n).stop())}pauseAnimation(){eachAxis(n=>{var o;return(o=this.getAxisMotionValue(n).animation)===null||o===void 0?void 0:o.pause()})}getAnimationState(n){var o;return(o=this.getAxisMotionValue(n).animation)===null||o===void 0?void 0:o.state}getAxisMotionValue(n){const o="_drag"+n.toUpperCase(),s=this.visualElement.getProps(),c=s[o];return c||this.visualElement.getValue(n,(s.initial?s.initial[n]:void 0)||0)}snapToCursor(n){eachAxis(o=>{const{drag:s}=this.getProps();if(!shouldDrag(o,s,this.currentDirection))return;const{projection:c}=this.visualElement,d=this.getAxisMotionValue(o);if(c&&c.layout){const{min:h,max:p}=c.layout.layoutBox[o];d.set(n[o]-mixNumber$1(h,p,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:n,dragConstraints:o}=this.getProps(),{projection:s}=this.visualElement;if(!isRefObject(o)||!s||!this.constraints)return;this.stopAnimation();const c={x:0,y:0};eachAxis(h=>{const p=this.getAxisMotionValue(h);if(p){const y=p.get();c[h]=calcOrigin({min:y,max:y},this.constraints[h])}});const{transformTemplate:d}=this.visualElement.getProps();this.visualElement.current.style.transform=d?d({},""):"none",s.root&&s.root.updateScroll(),s.updateLayout(),this.resolveConstraints(),eachAxis(h=>{if(!shouldDrag(h,n,null))return;const p=this.getAxisMotionValue(h),{min:y,max:S}=this.constraints[h];p.set(mixNumber$1(y,S,c[h]))})}addListeners(){if(!this.visualElement.current)return;elementDragControls.set(this.visualElement,this);const n=this.visualElement.current,o=addPointerEvent(n,"pointerdown",y=>{const{drag:S,dragListener:P=!0}=this.getProps();S&&P&&this.start(y)}),s=()=>{const{dragConstraints:y}=this.getProps();isRefObject(y)&&(this.constraints=this.resolveRefConstraints())},{projection:c}=this.visualElement,d=c.addEventListener("measure",s);c&&!c.layout&&(c.root&&c.root.updateScroll(),c.updateLayout()),s();const h=addDomEvent(window,"resize",()=>this.scalePositionWithinConstraints()),p=c.addEventListener("didUpdate",({delta:y,hasLayoutChanged:S})=>{this.isDragging&&S&&(eachAxis(P=>{const L=this.getAxisMotionValue(P);L&&(this.originPoint[P]+=y[P].translate,L.set(L.get()+y[P].translate))}),this.visualElement.render())});return()=>{h(),o(),d(),p&&p()}}getProps(){const n=this.visualElement.getProps(),{drag:o=!1,dragDirectionLock:s=!1,dragPropagation:c=!1,dragConstraints:d=!1,dragElastic:h=defaultElastic,dragMomentum:p=!0}=n;return{...n,drag:o,dragDirectionLock:s,dragPropagation:c,dragConstraints:d,dragElastic:h,dragMomentum:p}}}function shouldDrag(t,n,o){return(n===!0||n===t)&&(o===null||o===t)}function getCurrentDirection(t,n=10){let o=null;return Math.abs(t.y)>n?o="y":Math.abs(t.x)>n&&(o="x"),o}class DragGesture extends Feature{constructor(n){super(n),this.removeGroupControls=noop$1,this.removeListeners=noop$1,this.controls=new VisualElementDragControls(n)}mount(){const{dragControls:n}=this.node.getProps();n&&(this.removeGroupControls=n.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||noop$1}unmount(){this.removeGroupControls(),this.removeListeners()}}const asyncHandler=t=>(n,o)=>{t&&t(n,o)};class PanGesture extends Feature{constructor(){super(...arguments),this.removePointerDownListener=noop$1}onPointerDown(n){this.session=new PanSession(n,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:getContextWindow(this.node)})}createPanHandlers(){const{onPanSessionStart:n,onPanStart:o,onPan:s,onPanEnd:c}=this.node.getProps();return{onSessionStart:asyncHandler(n),onStart:asyncHandler(o),onMove:s,onEnd:(d,h)=>{delete this.session,c&&c(d,h)}}}mount(){this.removePointerDownListener=addPointerEvent(this.node.current,"pointerdown",n=>this.onPointerDown(n))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}function usePresence(){const t=React.useContext(PresenceContext);if(t===null)return[!0,null];const{isPresent:n,onExitComplete:o,register:s}=t,c=React.useId();return React.useEffect(()=>s(c),[]),!n&&o?[!1,()=>o&&o(c)]:[!0]}const globalProjectionState={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function pixelsToPercent(t,n){return n.max===n.min?0:t/(n.max-n.min)*100}const correctBorderRadius={correct:(t,n)=>{if(!n.target)return t;if(typeof t=="string")if(px.test(t))t=parseFloat(t);else return t;const o=pixelsToPercent(t,n.target.x),s=pixelsToPercent(t,n.target.y);return`${o}% ${s}%`}},correctBoxShadow={correct:(t,{treeScale:n,projectionDelta:o})=>{const s=t,c=complex.parse(t);if(c.length>5)return s;const d=complex.createTransformer(t),h=typeof c[0]!="number"?1:0,p=o.x.scale*n.x,y=o.y.scale*n.y;c[0+h]/=p,c[1+h]/=y;const S=mixNumber$1(p,y,.5);return typeof c[2+h]=="number"&&(c[2+h]/=S),typeof c[3+h]=="number"&&(c[3+h]/=S),d(c)}};class MeasureLayoutWithContext extends React.Component{componentDidMount(){const{visualElement:n,layoutGroup:o,switchLayoutGroup:s,layoutId:c}=this.props,{projection:d}=n;addScaleCorrector(defaultScaleCorrectors),d&&(o.group&&o.group.add(d),s&&s.register&&c&&s.register(d),d.root.didUpdate(),d.addEventListener("animationComplete",()=>{this.safeToRemove()}),d.setOptions({...d.options,onExitComplete:()=>this.safeToRemove()})),globalProjectionState.hasEverUpdated=!0}getSnapshotBeforeUpdate(n){const{layoutDependency:o,visualElement:s,drag:c,isPresent:d}=this.props,h=s.projection;return h&&(h.isPresent=d,c||n.layoutDependency!==o||o===void 0?h.willUpdate():this.safeToRemove(),n.isPresent!==d&&(d?h.promote():h.relegate()||frame.postRender(()=>{const p=h.getStack();(!p||!p.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:n}=this.props.visualElement;n&&(n.root.didUpdate(),microtask.postRender(()=>{!n.currentAnimation&&n.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:n,layoutGroup:o,switchLayoutGroup:s}=this.props,{projection:c}=n;c&&(c.scheduleCheckAfterUnmount(),o&&o.group&&o.group.remove(c),s&&s.deregister&&s.deregister(c))}safeToRemove(){const{safeToRemove:n}=this.props;n&&n()}render(){return null}}function MeasureLayout(t){const[n,o]=usePresence(),s=React.useContext(LayoutGroupContext);return React.createElement(MeasureLayoutWithContext,{...t,layoutGroup:s,switchLayoutGroup:React.useContext(SwitchLayoutGroupContext),isPresent:n,safeToRemove:o})}const defaultScaleCorrectors={borderRadius:{...correctBorderRadius,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:correctBorderRadius,borderTopRightRadius:correctBorderRadius,borderBottomLeftRadius:correctBorderRadius,borderBottomRightRadius:correctBorderRadius,boxShadow:correctBoxShadow},borders=["TopLeft","TopRight","BottomLeft","BottomRight"],numBorders=borders.length,asNumber=t=>typeof t=="string"?parseFloat(t):t,isPx=t=>typeof t=="number"||px.test(t);function mixValues(t,n,o,s,c,d){c?(t.opacity=mixNumber$1(0,o.opacity!==void 0?o.opacity:1,easeCrossfadeIn(s)),t.opacityExit=mixNumber$1(n.opacity!==void 0?n.opacity:1,0,easeCrossfadeOut(s))):d&&(t.opacity=mixNumber$1(n.opacity!==void 0?n.opacity:1,o.opacity!==void 0?o.opacity:1,s));for(let h=0;h<numBorders;h++){const p=`border${borders[h]}Radius`;let y=getRadius(n,p),S=getRadius(o,p);if(y===void 0&&S===void 0)continue;y||(y=0),S||(S=0),y===0||S===0||isPx(y)===isPx(S)?(t[p]=Math.max(mixNumber$1(asNumber(y),asNumber(S),s),0),(percent.test(S)||percent.test(y))&&(t[p]+="%")):t[p]=S}(n.rotate||o.rotate)&&(t.rotate=mixNumber$1(n.rotate||0,o.rotate||0,s))}function getRadius(t,n){return t[n]!==void 0?t[n]:t.borderRadius}const easeCrossfadeIn=compress(0,.5,circOut),easeCrossfadeOut=compress(.5,.95,noop$1);function compress(t,n,o){return s=>s<t?0:s>n?1:o(progress(t,n,s))}function copyAxisInto(t,n){t.min=n.min,t.max=n.max}function copyBoxInto(t,n){copyAxisInto(t.x,n.x),copyAxisInto(t.y,n.y)}function removePointDelta(t,n,o,s,c){return t-=n,t=scalePoint(t,1/o,s),c!==void 0&&(t=scalePoint(t,1/c,s)),t}function removeAxisDelta(t,n=0,o=1,s=.5,c,d=t,h=t){if(percent.test(n)&&(n=parseFloat(n),n=mixNumber$1(h.min,h.max,n/100)-h.min),typeof n!="number")return;let p=mixNumber$1(d.min,d.max,s);t===d&&(p-=n),t.min=removePointDelta(t.min,n,o,p,c),t.max=removePointDelta(t.max,n,o,p,c)}function removeAxisTransforms(t,n,[o,s,c],d,h){removeAxisDelta(t,n[o],n[s],n[c],n.scale,d,h)}const xKeys=["x","scaleX","originX"],yKeys=["y","scaleY","originY"];function removeBoxTransforms(t,n,o,s){removeAxisTransforms(t.x,n,xKeys,o?o.x:void 0,s?s.x:void 0),removeAxisTransforms(t.y,n,yKeys,o?o.y:void 0,s?s.y:void 0)}function isAxisDeltaZero(t){return t.translate===0&&t.scale===1}function isDeltaZero(t){return isAxisDeltaZero(t.x)&&isAxisDeltaZero(t.y)}function boxEquals(t,n){return t.x.min===n.x.min&&t.x.max===n.x.max&&t.y.min===n.y.min&&t.y.max===n.y.max}function boxEqualsRounded(t,n){return Math.round(t.x.min)===Math.round(n.x.min)&&Math.round(t.x.max)===Math.round(n.x.max)&&Math.round(t.y.min)===Math.round(n.y.min)&&Math.round(t.y.max)===Math.round(n.y.max)}function aspectRatio(t){return calcLength(t.x)/calcLength(t.y)}class NodeStack{constructor(){this.members=[]}add(n){addUniqueItem(this.members,n),n.scheduleRender()}remove(n){if(removeItem(this.members,n),n===this.prevLead&&(this.prevLead=void 0),n===this.lead){const o=this.members[this.members.length-1];o&&this.promote(o)}}relegate(n){const o=this.members.findIndex(c=>n===c);if(o===0)return!1;let s;for(let c=o;c>=0;c--){const d=this.members[c];if(d.isPresent!==!1){s=d;break}}return s?(this.promote(s),!0):!1}promote(n,o){const s=this.lead;if(n!==s&&(this.prevLead=s,this.lead=n,n.show(),s)){s.instance&&s.scheduleRender(),n.scheduleRender(),n.resumeFrom=s,o&&(n.resumeFrom.preserveOpacity=!0),s.snapshot&&(n.snapshot=s.snapshot,n.snapshot.latestValues=s.animationValues||s.latestValues),n.root&&n.root.isUpdating&&(n.isLayoutDirty=!0);const{crossfade:c}=n.options;c===!1&&s.hide()}}exitAnimationComplete(){this.members.forEach(n=>{const{options:o,resumingFrom:s}=n;o.onExitComplete&&o.onExitComplete(),s&&s.options.onExitComplete&&s.options.onExitComplete()})}scheduleRender(){this.members.forEach(n=>{n.instance&&n.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function buildProjectionTransform(t,n,o){let s="";const c=t.x.translate/n.x,d=t.y.translate/n.y,h=(o==null?void 0:o.z)||0;if((c||d||h)&&(s=`translate3d(${c}px, ${d}px, ${h}px) `),(n.x!==1||n.y!==1)&&(s+=`scale(${1/n.x}, ${1/n.y}) `),o){const{transformPerspective:S,rotate:P,rotateX:L,rotateY:F,skewX:N,skewY:z}=o;S&&(s=`perspective(${S}px) ${s}`),P&&(s+=`rotate(${P}deg) `),L&&(s+=`rotateX(${L}deg) `),F&&(s+=`rotateY(${F}deg) `),N&&(s+=`skewX(${N}deg) `),z&&(s+=`skewY(${z}deg) `)}const p=t.x.scale*n.x,y=t.y.scale*n.y;return(p!==1||y!==1)&&(s+=`scale(${p}, ${y})`),s||"none"}const compareByDepth=(t,n)=>t.depth-n.depth;class FlatTree{constructor(){this.children=[],this.isDirty=!1}add(n){addUniqueItem(this.children,n),this.isDirty=!0}remove(n){removeItem(this.children,n),this.isDirty=!0}forEach(n){this.isDirty&&this.children.sort(compareByDepth),this.isDirty=!1,this.children.forEach(n)}}function delay(t,n){const o=time.now(),s=({timestamp:c})=>{const d=c-o;d>=n&&(cancelFrame(s),t(d-n))};return frame.read(s,!0),()=>cancelFrame(s)}function record(t){window.MotionDebug&&window.MotionDebug.record(t)}function isSVGElement(t){return t instanceof SVGElement&&t.tagName!=="svg"}function animateSingleValue(t,n,o){const s=isMotionValue(t)?t:motionValue(t);return s.start(animateMotionValue("",s,n,o)),s.animation}const transformAxes=["","X","Y","Z"],hiddenVisibility={visibility:"hidden"},animationTarget=1e3;let id=0;const projectionFrameData={type:"projectionFrame",totalNodes:0,resolvedTargetDeltas:0,recalculatedProjection:0};function resetDistortingTransform(t,n,o,s){const{latestValues:c}=n;c[t]&&(o[t]=c[t],n.setStaticValue(t,0),s&&(s[t]=0))}function createProjectionNode({attachResizeListener:t,defaultParent:n,measureScroll:o,checkIsScrollRoot:s,resetTransform:c}){return class{constructor(h={},p=n==null?void 0:n()){this.id=id++,this.animationId=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.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.updateScheduled=!1,this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,projectionFrameData.totalNodes=projectionFrameData.resolvedTargetDeltas=projectionFrameData.recalculatedProjection=0,this.nodes.forEach(propagateDirtyNodes),this.nodes.forEach(resolveTargetDelta),this.nodes.forEach(calcProjection),this.nodes.forEach(cleanDirtyNodes),record(projectionFrameData)},this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=h,this.root=p?p.root||p:this,this.path=p?[...p.path,p]:[],this.parent=p,this.depth=p?p.depth+1:0;for(let y=0;y<this.path.length;y++)this.path[y].shouldResetTransform=!0;this.root===this&&(this.nodes=new FlatTree)}addEventListener(h,p){return this.eventHandlers.has(h)||this.eventHandlers.set(h,new SubscriptionManager),this.eventHandlers.get(h).add(p)}notifyListeners(h,...p){const y=this.eventHandlers.get(h);y&&y.notify(...p)}hasListeners(h){return this.eventHandlers.has(h)}mount(h,p=this.root.hasTreeAnimated){if(this.instance)return;this.isSVG=isSVGElement(h),this.instance=h;const{layoutId:y,layout:S,visualElement:P}=this.options;if(P&&!P.current&&P.mount(h),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),p&&(S||y)&&(this.isLayoutDirty=!0),t){let L;const F=()=>this.root.updateBlockedByResize=!1;t(h,()=>{this.root.updateBlockedByResize=!0,L&&L(),L=delay(F,250),globalProjectionState.hasAnimatedSinceResize&&(globalProjectionState.hasAnimatedSinceResize=!1,this.nodes.forEach(finishAnimation))})}y&&this.root.registerSharedNode(y,this),this.options.animate!==!1&&P&&(y||S)&&this.addEventListener("didUpdate",({delta:L,hasLayoutChanged:F,hasRelativeTargetChanged:N,layout:z})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const W=this.options.transition||P.getDefaultTransition()||defaultLayoutTransition,{onLayoutAnimationStart:nt,onLayoutAnimationComplete:Pe}=P.getProps(),se=!this.targetLayout||!boxEqualsRounded(this.targetLayout,z)||N,mt=!F&&N;if(this.options.layoutRoot||this.resumeFrom&&this.resumeFrom.instance||mt||F&&(se||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0),this.setAnimationOrigin(L,mt);const kt={...getValueTransition(W,"layout"),onPlay:nt,onComplete:Pe};(P.shouldReduceMotion||this.options.layoutRoot)&&(kt.delay=0,kt.type=!1),this.startAnimation(kt)}else F||finishAnimation(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=z})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const h=this.getStack();h&&h.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,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.forEach(resetSkewAndRotation),this.animationId++)}getTransformTemplate(){const{visualElement:h}=this.options;return h&&h.getProps().transformTemplate}willUpdate(h=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let P=0;P<this.path.length;P++){const L=this.path[P];L.shouldResetTransform=!0,L.updateScroll("snapshot"),L.options.layoutRoot&&L.willUpdate(!1)}const{layoutId:p,layout:y}=this.options;if(p===void 0&&!y)return;const S=this.getTransformTemplate();this.prevTransformTemplateValue=S?S(this.latestValues,""):void 0,this.updateSnapshot(),h&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(clearMeasurements);return}this.isUpdating||this.nodes.forEach(clearIsLayoutDirty),this.isUpdating=!1,window.HandoffCancelAllAnimations&&window.HandoffCancelAllAnimations(),this.nodes.forEach(resetTransformStyle),this.nodes.forEach(updateLayout),this.nodes.forEach(notifyLayoutUpdate),this.clearAllSnapshots();const p=time.now();frameData.delta=clamp(0,1e3/60,p-frameData.timestamp),frameData.timestamp=p,frameData.isProcessing=!0,steps.update.process(frameData),steps.preRender.process(frameData),steps.render.process(frameData),frameData.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,microtask.read(()=>this.update()))}clearAllSnapshots(){this.nodes.forEach(clearSnapshot),this.sharedNodes.forEach(removeLeadSnapshots)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,frame.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){frame.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure())}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let y=0;y<this.path.length;y++)this.path[y].updateScroll();const h=this.layout;this.layout=this.measure(!1),this.layoutCorrected=createBox(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:p}=this.options;p&&p.notify("LayoutMeasure",this.layout.layoutBox,h?h.layoutBox:void 0)}updateScroll(h="measure"){let p=!!(this.options.layoutScroll&&this.instance);this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===h&&(p=!1),p&&(this.scroll={animationId:this.root.animationId,phase:h,isRoot:s(this.instance),offset:o(this.instance)})}resetTransform(){if(!c)return;const h=this.isLayoutDirty||this.shouldResetTransform,p=this.projectionDelta&&!isDeltaZero(this.projectionDelta),y=this.getTransformTemplate(),S=y?y(this.latestValues,""):void 0,P=S!==this.prevTransformTemplateValue;h&&(p||hasTransform(this.latestValues)||P)&&(c(this.instance,S),this.shouldResetTransform=!1,this.scheduleRender())}measure(h=!0){const p=this.measurePageBox();let y=this.removeElementScroll(p);return h&&(y=this.removeTransform(y)),roundBox(y),{animationId:this.root.animationId,measuredBox:p,layoutBox:y,latestValues:{},source:this.id}}measurePageBox(){const{visualElement:h}=this.options;if(!h)return createBox();const p=h.measureViewportBox(),{scroll:y}=this.root;return y&&(translateAxis(p.x,y.offset.x),translateAxis(p.y,y.offset.y)),p}removeElementScroll(h){const p=createBox();copyBoxInto(p,h);for(let y=0;y<this.path.length;y++){const S=this.path[y],{scroll:P,options:L}=S;if(S!==this.root&&P&&L.layoutScroll){if(P.isRoot){copyBoxInto(p,h);const{scroll:F}=this.root;F&&(translateAxis(p.x,-F.offset.x),translateAxis(p.y,-F.offset.y))}translateAxis(p.x,P.offset.x),translateAxis(p.y,P.offset.y)}}return p}applyTransform(h,p=!1){const y=createBox();copyBoxInto(y,h);for(let S=0;S<this.path.length;S++){const P=this.path[S];!p&&P.options.layoutScroll&&P.scroll&&P!==P.root&&transformBox(y,{x:-P.scroll.offset.x,y:-P.scroll.offset.y}),hasTransform(P.latestValues)&&transformBox(y,P.latestValues)}return hasTransform(this.latestValues)&&transformBox(y,this.latestValues),y}removeTransform(h){const p=createBox();copyBoxInto(p,h);for(let y=0;y<this.path.length;y++){const S=this.path[y];if(!S.instance||!hasTransform(S.latestValues))continue;hasScale(S.latestValues)&&S.updateSnapshot();const P=createBox(),L=S.measurePageBox();copyBoxInto(P,L),removeBoxTransforms(p,S.latestValues,S.snapshot?S.snapshot.layoutBox:void 0,P)}return hasTransform(this.latestValues)&&removeBoxTransforms(p,this.latestValues),p}setTargetDelta(h){this.targetDelta=h,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(h){this.options={...this.options,...h,crossfade:h.crossfade!==void 0?h.crossfade:!0}}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!==frameData.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(h=!1){var p;const y=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=y.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=y.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=y.isSharedProjectionDirty);const S=!!this.resumingFrom||this!==y;if(!(h||S&&this.isSharedProjectionDirty||this.isProjectionDirty||!((p=this.parent)===null||p===void 0)&&p.isProjectionDirty||this.attemptToResolveRelativeTarget))return;const{layout:L,layoutId:F}=this.options;if(!(!this.layout||!(L||F))){if(this.resolvedRelativeTargetAt=frameData.timestamp,!this.targetDelta&&!this.relativeTarget){const N=this.getClosestProjectingParent();N&&N.layout&&this.animationProgress!==1?(this.relativeParent=N,this.forceRelativeParentToResolveTarget(),this.relativeTarget=createBox(),this.relativeTargetOrigin=createBox(),calcRelativePosition(this.relativeTargetOrigin,this.layout.layoutBox,N.layout.layoutBox),copyBoxInto(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}if(!(!this.relativeTarget&&!this.targetDelta)){if(this.target||(this.target=createBox(),this.targetWithTransforms=createBox()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),calcRelativeBox(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):copyBoxInto(this.target,this.layout.layoutBox),applyBoxDelta(this.target,this.targetDelta)):copyBoxInto(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget){this.attemptToResolveRelativeTarget=!1;const N=this.getClosestProjectingParent();N&&!!N.resumingFrom==!!this.resumingFrom&&!N.options.layoutScroll&&N.target&&this.animationProgress!==1?(this.relativeParent=N,this.forceRelativeParentToResolveTarget(),this.relativeTarget=createBox(),this.relativeTargetOrigin=createBox(),calcRelativePosition(this.relativeTargetOrigin,this.target,N.target),copyBoxInto(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}projectionFrameData.resolvedTargetDeltas++}}}getClosestProjectingParent(){if(!(!this.parent||hasScale(this.parent.latestValues)||has2DTranslate(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}calcProjection(){var h;const p=this.getLead(),y=!!this.resumingFrom||this!==p;let S=!0;if((this.isProjectionDirty||!((h=this.parent)===null||h===void 0)&&h.isProjectionDirty)&&(S=!1),y&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(S=!1),this.resolvedRelativeTargetAt===frameData.timestamp&&(S=!1),S)return;const{layout:P,layoutId:L}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(P||L))return;copyBoxInto(this.layoutCorrected,this.layout.layoutBox);const F=this.treeScale.x,N=this.treeScale.y;applyTreeDeltas(this.layoutCorrected,this.treeScale,this.path,y),p.layout&&!p.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(p.target=p.layout.layoutBox,p.targetWithTransforms=createBox());const{target:z}=p;if(!z){this.projectionTransform&&(this.projectionDelta=createDelta(),this.projectionTransform="none",this.scheduleRender());return}this.projectionDelta||(this.projectionDelta=createDelta(),this.projectionDeltaWithTransform=createDelta());const W=this.projectionTransform;calcBoxDelta(this.projectionDelta,this.layoutCorrected,z,this.latestValues),this.projectionTransform=buildProjectionTransform(this.projectionDelta,this.treeScale),(this.projectionTransform!==W||this.treeScale.x!==F||this.treeScale.y!==N)&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",z)),projectionFrameData.recalculatedProjection++}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(h=!0){if(this.options.scheduleRender&&this.options.scheduleRender(),h){const p=this.getStack();p&&p.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}setAnimationOrigin(h,p=!1){const y=this.snapshot,S=y?y.latestValues:{},P={...this.latestValues},L=createDelta();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!p;const F=createBox(),N=y?y.source:void 0,z=this.layout?this.layout.source:void 0,W=N!==z,nt=this.getStack(),Pe=!nt||nt.members.length<=1,se=!!(W&&!Pe&&this.options.crossfade===!0&&!this.path.some(hasOpacityCrossfade));this.animationProgress=0;let mt;this.mixTargetDelta=kt=>{const mn=kt/1e3;mixAxisDelta(L.x,h.x,mn),mixAxisDelta(L.y,h.y,mn),this.setTargetDelta(L),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(calcRelativePosition(F,this.layout.layoutBox,this.relativeParent.layout.layoutBox),mixBox(this.relativeTarget,this.relativeTargetOrigin,F,mn),mt&&boxEquals(this.relativeTarget,mt)&&(this.isProjectionDirty=!1),mt||(mt=createBox()),copyBoxInto(mt,this.relativeTarget)),W&&(this.animationValues=P,mixValues(P,S,this.latestValues,mn,se,Pe)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=mn},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(h){this.notifyListeners("animationStart"),this.currentAnimation&&this.currentAnimation.stop(),this.resumingFrom&&this.resumingFrom.currentAnimation&&this.resumingFrom.currentAnimation.stop(),this.pendingAnimation&&(cancelFrame(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=frame.update(()=>{globalProjectionState.hasAnimatedSinceResize=!0,this.currentAnimation=animateSingleValue(0,animationTarget,{...h,onUpdate:p=>{this.mixTargetDelta(p),h.onUpdate&&h.onUpdate(p)},onComplete:()=>{h.onComplete&&h.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const h=this.getStack();h&&h.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(animationTarget),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const h=this.getLead();let{targetWithTransforms:p,target:y,layout:S,latestValues:P}=h;if(!(!p||!y||!S)){if(this!==h&&this.layout&&S&&shouldAnimatePositionOnly(this.options.animationType,this.layout.layoutBox,S.layoutBox)){y=this.target||createBox();const L=calcLength(this.layout.layoutBox.x);y.x.min=h.target.x.min,y.x.max=y.x.min+L;const F=calcLength(this.layout.layoutBox.y);y.y.min=h.target.y.min,y.y.max=y.y.min+F}copyBoxInto(p,y),transformBox(p,P),calcBoxDelta(this.projectionDeltaWithTransform,this.layoutCorrected,p,P)}}registerSharedNode(h,p){this.sharedNodes.has(h)||this.sharedNodes.set(h,new NodeStack),this.sharedNodes.get(h).add(p);const S=p.options.initialPromotionConfig;p.promote({transition:S?S.transition:void 0,preserveFollowOpacity:S&&S.shouldPreserveFollowOpacity?S.shouldPreserveFollowOpacity(p):void 0})}isLead(){const h=this.getStack();return h?h.lead===this:!0}getLead(){var h;const{layoutId:p}=this.options;return p?((h=this.getStack())===null||h===void 0?void 0:h.lead)||this:this}getPrevLead(){var h;const{layoutId:p}=this.options;return p?(h=this.getStack())===null||h===void 0?void 0:h.prevLead:void 0}getStack(){const{layoutId:h}=this.options;if(h)return this.root.sharedNodes.get(h)}promote({needsReset:h,transition:p,preserveFollowOpacity:y}={}){const S=this.getStack();S&&S.promote(this,y),h&&(this.projectionDelta=void 0,this.needsReset=!0),p&&this.setOptions({transition:p})}relegate(){const h=this.getStack();return h?h.relegate(this):!1}resetSkewAndRotation(){const{visualElement:h}=this.options;if(!h)return;let p=!1;const{latestValues:y}=h;if((y.z||y.rotate||y.rotateX||y.rotateY||y.rotateZ||y.skewX||y.skewY)&&(p=!0),!p)return;const S={};y.z&&resetDistortingTransform("z",h,S,this.animationValues);for(let P=0;P<transformAxes.length;P++)resetDistortingTransform(`rotate${transformAxes[P]}`,h,S,this.animationValues),resetDistortingTransform(`skew${transformAxes[P]}`,h,S,this.animationValues);h.render();for(const P in S)h.setStaticValue(P,S[P]),this.animationValues&&(this.animationValues[P]=S[P]);h.scheduleRender()}getProjectionStyles(h){var p,y;if(!this.instance||this.isSVG)return;if(!this.isVisible)return hiddenVisibility;const S={visibility:""},P=this.getTransformTemplate();if(this.needsReset)return this.needsReset=!1,S.opacity="",S.pointerEvents=resolveMotionValue(h==null?void 0:h.pointerEvents)||"",S.transform=P?P(this.latestValues,""):"none",S;const L=this.getLead();if(!this.projectionDelta||!this.layout||!L.target){const W={};return this.options.layoutId&&(W.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,W.pointerEvents=resolveMotionValue(h==null?void 0:h.pointerEvents)||""),this.hasProjected&&!hasTransform(this.latestValues)&&(W.transform=P?P({},""):"none",this.hasProjected=!1),W}const F=L.animationValues||L.latestValues;this.applyTransformsToTarget(),S.transform=buildProjectionTransform(this.projectionDeltaWithTransform,this.treeScale,F),P&&(S.transform=P(F,S.transform));const{x:N,y:z}=this.projectionDelta;S.transformOrigin=`${N.origin*100}% ${z.origin*100}% 0`,L.animationValues?S.opacity=L===this?(y=(p=F.opacity)!==null&&p!==void 0?p:this.latestValues.opacity)!==null&&y!==void 0?y:1:this.preserveOpacity?this.latestValues.opacity:F.opacityExit:S.opacity=L===this?F.opacity!==void 0?F.opacity:"":F.opacityExit!==void 0?F.opacityExit:0;for(const W in scaleCorrectors){if(F[W]===void 0)continue;const{correct:nt,applyTo:Pe}=scaleCorrectors[W],se=S.transform==="none"?F[W]:nt(F[W],L);if(Pe){const mt=Pe.length;for(let kt=0;kt<mt;kt++)S[Pe[kt]]=se}else S[W]=se}return this.options.layoutId&&(S.pointerEvents=L===this?resolveMotionValue(h==null?void 0:h.pointerEvents)||"":"none"),S}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(h=>{var p;return(p=h.currentAnimation)===null||p===void 0?void 0:p.stop()}),this.root.nodes.forEach(clearMeasurements),this.root.sharedNodes.clear()}}}function updateLayout(t){t.updateLayout()}function notifyLayoutUpdate(t){var n;const o=((n=t.resumeFrom)===null||n===void 0?void 0:n.snapshot)||t.snapshot;if(t.isLead()&&t.layout&&o&&t.hasListeners("didUpdate")){const{layoutBox:s,measuredBox:c}=t.layout,{animationType:d}=t.options,h=o.source!==t.layout.source;d==="size"?eachAxis(L=>{const F=h?o.measuredBox[L]:o.layoutBox[L],N=calcLength(F);F.min=s[L].min,F.max=F.min+N}):shouldAnimatePositionOnly(d,o.layoutBox,s)&&eachAxis(L=>{const F=h?o.measuredBox[L]:o.layoutBox[L],N=calcLength(s[L]);F.max=F.min+N,t.relativeTarget&&!t.currentAnimation&&(t.isProjectionDirty=!0,t.relativeTarget[L].max=t.relativeTarget[L].min+N)});const p=createDelta();calcBoxDelta(p,s,o.layoutBox);const y=createDelta();h?calcBoxDelta(y,t.applyTransform(c,!0),o.measuredBox):calcBoxDelta(y,s,o.layoutBox);const S=!isDeltaZero(p);let P=!1;if(!t.resumeFrom){const L=t.getClosestProjectingParent();if(L&&!L.resumeFrom){const{snapshot:F,layout:N}=L;if(F&&N){const z=createBox();calcRelativePosition(z,o.layoutBox,F.layoutBox);const W=createBox();calcRelativePosition(W,s,N.layoutBox),boxEqualsRounded(z,W)||(P=!0),L.options.layoutRoot&&(t.relativeTarget=W,t.relativeTargetOrigin=z,t.relativeParent=L)}}}t.notifyListeners("didUpdate",{layout:s,snapshot:o,delta:y,layoutDelta:p,hasLayoutChanged:S,hasRelativeTargetChanged:P})}else if(t.isLead()){const{onExitComplete:s}=t.options;s&&s()}t.options.transition=void 0}function propagateDirtyNodes(t){projectionFrameData.totalNodes++,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 cleanDirtyNodes(t){t.isProjectionDirty=t.isSharedProjectionDirty=t.isTransformDirty=!1}function clearSnapshot(t){t.clearSnapshot()}function clearMeasurements(t){t.clearMeasurements()}function clearIsLayoutDirty(t){t.isLayoutDirty=!1}function resetTransformStyle(t){const{visualElement:n}=t.options;n&&n.getProps().onBeforeLayoutMeasure&&n.notify("BeforeLayoutMeasure"),t.resetTransform()}function finishAnimation(t){t.finishAnimation(),t.targetDelta=t.relativeTarget=t.target=void 0,t.isProjectionDirty=!0}function resolveTargetDelta(t){t.resolveTargetDelta()}function calcProjection(t){t.calcProjection()}function resetSkewAndRotation(t){t.resetSkewAndRotation()}function removeLeadSnapshots(t){t.removeLeadSnapshot()}function mixAxisDelta(t,n,o){t.translate=mixNumber$1(n.translate,0,o),t.scale=mixNumber$1(n.scale,1,o),t.origin=n.origin,t.originPoint=n.originPoint}function mixAxis(t,n,o,s){t.min=mixNumber$1(n.min,o.min,s),t.max=mixNumber$1(n.max,o.max,s)}function mixBox(t,n,o,s){mixAxis(t.x,n.x,o.x,s),mixAxis(t.y,n.y,o.y,s)}function hasOpacityCrossfade(t){return t.animationValues&&t.animationValues.opacityExit!==void 0}const defaultLayoutTransition={duration:.45,ease:[.4,0,.1,1]},userAgentContains=t=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(t),roundPoint=userAgentContains("applewebkit/")&&!userAgentContains("chrome/")?Math.round:noop$1;function roundAxis(t){t.min=roundPoint(t.min),t.max=roundPoint(t.max)}function roundBox(t){roundAxis(t.x),roundAxis(t.y)}function shouldAnimatePositionOnly(t,n,o){return t==="position"||t==="preserve-aspect"&&!isNear(aspectRatio(n),aspectRatio(o),.2)}const DocumentProjectionNode=createProjectionNode({attachResizeListener:(t,n)=>addDomEvent(t,"resize",n),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),rootProjectionNode={current:void 0},HTMLProjectionNode=createProjectionNode({measureScroll:t=>({x:t.scrollLeft,y:t.scrollTop}),defaultParent:()=>{if(!rootProjectionNode.current){const t=new DocumentProjectionNode({});t.mount(window),t.setOptions({layoutScroll:!0}),rootProjectionNode.current=t}return rootProjectionNode.current},resetTransform:(t,n)=>{t.style.transform=n!==void 0?n:"none"},checkIsScrollRoot:t=>window.getComputedStyle(t).position==="fixed"}),drag={pan:{Feature:PanGesture},drag:{Feature:DragGesture,ProjectionNode:HTMLProjectionNode,MeasureLayout}},prefersReducedMotion={current:null},hasReducedMotionListener={current:!1};function initPrefersReducedMotion(){if(hasReducedMotionListener.current=!0,!!isBrowser)if(window.matchMedia){const t=window.matchMedia("(prefers-reduced-motion)"),n=()=>prefersReducedMotion.current=t.matches;t.addListener(n),n()}else prefersReducedMotion.current=!1}function updateMotionValuesFromProps(t,n,o){const{willChange:s}=n;for(const c in n){const d=n[c],h=o[c];if(isMotionValue(d))t.addValue(c,d),isWillChangeMotionValue(s)&&s.add(c),process.env.NODE_ENV==="development"&&warnOnce(d.version==="11.0.27",`Attempting to mix Framer Motion versions ${d.version} with 11.0.27 may not work as expected.`);else if(isMotionValue(h))t.addValue(c,motionValue(d,{owner:t})),isWillChangeMotionValue(s)&&s.remove(c);else if(h!==d)if(t.hasValue(c)){const p=t.getValue(c);p.liveStyle===!0?p.jump(d):p.hasAnimated||p.set(d)}else{const p=t.getStaticValue(c);t.addValue(c,motionValue(p!==void 0?p:d,{owner:t}))}}for(const c in o)n[c]===void 0&&t.removeValue(c);return n}const visualElementStore=new WeakMap,valueTypes=[...dimensionValueTypes,color,complex],findValueType=t=>valueTypes.find(testValueType(t)),featureNames=Object.keys(featureDefinitions),numFeatures=featureNames.length,propEventHandlers=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"],numVariantProps=variantProps.length;function getClosestProjectingNode(t){if(t)return t.options.allowProjection!==!1?t.projection:getClosestProjectingNode(t.parent)}class VisualElement{constructor({parent:n,props:o,presenceContext:s,reducedMotionConfig:c,blockInitialAnimation:d,visualState:h},p={}){this.resolveKeyframes=(F,N,z,W)=>new this.KeyframeResolver(F,N,z,W,this),this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=KeyframeResolver,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},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.scheduleRender=()=>frame.render(this.render,!1,!0);const{latestValues:y,renderState:S}=h;this.latestValues=y,this.baseTarget={...y},this.initialValues=o.initial?{...y}:{},this.renderState=S,this.parent=n,this.props=o,this.presenceContext=s,this.depth=n?n.depth+1:0,this.reducedMotionConfig=c,this.options=p,this.blockInitialAnimation=!!d,this.isControllingVariants=isControllingVariants(o),this.isVariantNode=isVariantNode(o),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(n&&n.current);const{willChange:P,...L}=this.scrapeMotionValuesFromProps(o,{},this);for(const F in L){const N=L[F];y[F]!==void 0&&isMotionValue(N)&&(N.set(y[F],!1),isWillChangeMotionValue(P)&&P.add(F))}}scrapeMotionValuesFromProps(n,o,s){return{}}mount(n){this.current=n,visualElementStore.set(n,this),this.projection&&!this.projection.instance&&this.projection.mount(n),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((o,s)=>this.bindToMotionValue(s,o)),hasReducedMotionListener.current||initPrefersReducedMotion(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:prefersReducedMotion.current,process.env.NODE_ENV!=="production"&&warnOnce(this.shouldReduceMotion!==!0,"You have Reduced Motion enabled on your device. Animations may not appear as expected."),this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){visualElementStore.delete(this.current),this.projection&&this.projection.unmount(),cancelFrame(this.notifyUpdate),cancelFrame(this.render),this.valueSubscriptions.forEach(n=>n()),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const n in this.events)this.events[n].clear();for(const n in this.features)this.features[n].unmount();this.current=null}bindToMotionValue(n,o){const s=transformProps.has(n),c=o.on("change",h=>{this.latestValues[n]=h,this.props.onUpdate&&frame.preRender(this.notifyUpdate),s&&this.projection&&(this.projection.isTransformDirty=!0)}),d=o.on("renderRequest",this.scheduleRender);this.valueSubscriptions.set(n,()=>{c(),d(),o.owner&&o.stop()})}sortNodePosition(n){return!this.current||!this.sortInstanceNodePosition||this.type!==n.type?0:this.sortInstanceNodePosition(this.current,n.current)}loadFeatures({children:n,...o},s,c,d){let h,p;if(process.env.NODE_ENV!=="production"&&c&&s){const y="You have rendered a `motion` component within a `LazyMotion` component. This will break tree shaking. Import and render a `m` component instead.";o.ignoreStrict?warning(!1,y):invariant(!1,y)}for(let y=0;y<numFeatures;y++){const S=featureNames[y],{isEnabled:P,Feature:L,ProjectionNode:F,MeasureLayout:N}=featureDefinitions[S];F&&(h=F),P(o)&&(!this.features[S]&&L&&(this.features[S]=new L(this)),N&&(p=N))}if((this.type==="html"||this.type==="svg")&&!this.projection&&h){this.projection=new h(this.latestValues,getClosestProjectingNode(this.parent));const{layoutId:y,layout:S,drag:P,dragConstraints:L,layoutScroll:F,layoutRoot:N}=o;this.projection.setOptions({layoutId:y,layout:S,alwaysMeasureLayout:!!P||L&&isRefObject(L),visualElement:this,scheduleRender:()=>this.scheduleRender(),animationType:typeof S=="string"?S:"both",initialPromotionConfig:d,layoutScroll:F,layoutRoot:N})}return p}updateFeatures(){for(const n in this.features){const o=this.features[n];o.isMounted?o.update():(o.mount(),o.isMounted=!0)}}triggerBuild(){this.build(this.renderState,this.latestValues,this.options,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):createBox()}getStaticValue(n){return this.latestValues[n]}setStaticValue(n,o){this.latestValues[n]=o}update(n,o){(n.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=n,this.prevPresenceContext=this.presenceContext,this.presenceContext=o;for(let s=0;s<propEventHandlers.length;s++){const c=propEventHandlers[s];this.propEventSubscriptions[c]&&(this.propEventSubscriptions[c](),delete this.propEventSubscriptions[c]);const d=n["on"+c];d&&(this.propEventSubscriptions[c]=this.on(c,d))}this.prevMotionValues=updateMotionValuesFromProps(this,this.scrapeMotionValuesFromProps(n,this.prevProps,this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(n){return this.props.variants?this.props.variants[n]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}getVariantContext(n=!1){if(n)return this.parent?this.parent.getVariantContext():void 0;if(!this.isControllingVariants){const s=this.parent?this.parent.getVariantContext()||{}:{};return this.props.initial!==void 0&&(s.initial=this.props.initial),s}const o={};for(let s=0;s<numVariantProps;s++){const c=variantProps[s],d=this.props[c];(isVariantLabel(d)||d===!1)&&(o[c]=d)}return o}addVariantChild(n){const o=this.getClosestVariantNode();if(o)return o.variantChildren&&o.variantChildren.add(n),()=>o.variantChildren.delete(n)}addValue(n,o){o!==this.values.get(n)&&(this.removeValue(n),this.bindToMotionValue(n,o)),this.values.set(n,o),this.latestValues[n]=o.get()}removeValue(n){this.values.delete(n);const o=this.valueSubscriptions.get(n);o&&(o(),this.valueSubscriptions.delete(n)),delete this.latestValues[n],this.removeValueFromRenderState(n,this.renderState)}hasValue(n){return this.values.has(n)}getValue(n,o){if(this.props.values&&this.props.values[n])return this.props.values[n];let s=this.values.get(n);return s===void 0&&o!==void 0&&(s=motionValue(o===null?void 0:o,{owner:this}),this.addValue(n,s)),s}readValue(n,o){var s;let c=this.latestValues[n]!==void 0||!this.current?this.latestValues[n]:(s=this.getBaseTargetFromProps(this.props,n))!==null&&s!==void 0?s:this.readValueFromInstance(this.current,n,this.options);return c!=null&&(typeof c=="string"&&(isNumericalString(c)||isZeroValueString(c))?c=parseFloat(c):!findValueType(c)&&complex.test(o)&&(c=getAnimatableNone(n,o)),this.setBaseTarget(n,isMotionValue(c)?c.get():c)),isMotionValue(c)?c.get():c}setBaseTarget(n,o){this.baseTarget[n]=o}getBaseTarget(n){var o,s;const{initial:c}=this.props,d=typeof c=="string"||typeof c=="object"?(s=resolveVariantFromProps(this.props,c,(o=this.presenceContext)===null||o===void 0?void 0:o.custom))===null||s===void 0?void 0:s[n]:void 0;if(c&&d!==void 0)return d;const h=this.getBaseTargetFromProps(this.props,n);return h!==void 0&&!isMotionValue(h)?h:this.initialValues[n]!==void 0&&d===void 0?void 0:this.baseTarget[n]}on(n,o){return this.events[n]||(this.events[n]=new SubscriptionManager),this.events[n].add(o)}notify(n,...o){this.events[n]&&this.events[n].notify(...o)}}class DOMVisualElement extends VisualElement{constructor(){super(...arguments),this.KeyframeResolver=DOMKeyframesResolver}sortInstanceNodePosition(n,o){return n.compareDocumentPosition(o)&2?1:-1}getBaseTargetFromProps(n,o){return n.style?n.style[o]:void 0}removeValueFromRenderState(n,{vars:o,style:s}){delete o[n],delete s[n]}}function getComputedStyle(t){return window.getComputedStyle(t)}class HTMLVisualElement extends DOMVisualElement{constructor(){super(...arguments),this.type="html"}readValueFromInstance(n,o){if(transformProps.has(o)){const s=getDefaultValueType(o);return s&&s.default||0}else{const s=getComputedStyle(n),c=(isCSSVariableName(o)?s.getPropertyValue(o):s[o])||0;return typeof c=="string"?c.trim():c}}measureInstanceViewportBox(n,{transformPagePoint:o}){return measureViewportBox(n,o)}build(n,o,s,c){buildHTMLStyles(n,o,s,c.transformTemplate)}scrapeMotionValuesFromProps(n,o,s){return scrapeMotionValuesFromProps$1(n,o,s)}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:n}=this.props;isMotionValue(n)&&(this.childSubscription=n.on("change",o=>{this.current&&(this.current.textContent=`${o}`)}))}renderInstance(n,o,s,c){renderHTML(n,o,s,c)}}class SVGVisualElement extends DOMVisualElement{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1}getBaseTargetFromProps(n,o){return n[o]}readValueFromInstance(n,o){if(transformProps.has(o)){const s=getDefaultValueType(o);return s&&s.default||0}return o=camelCaseAttributes.has(o)?o:camelToDash(o),n.getAttribute(o)}measureInstanceViewportBox(){return createBox()}scrapeMotionValuesFromProps(n,o){return scrapeMotionValuesFromProps(n,o,this)}build(n,o,s,c){buildSVGAttrs(n,o,s,this.isSVGTag,c.transformTemplate)}renderInstance(n,o,s,c){renderSVG(n,o,s,c)}mount(n){this.isSVGTag=isSVGTag(n.tagName),super.mount(n)}}const createDomVisualElement=(t,n)=>isSVGComponent(t)?new SVGVisualElement(n,{enableHardwareAcceleration:!1}):new HTMLVisualElement(n,{allowProjection:t!==React.Fragment,enableHardwareAcceleration:!0}),layout={layout:{ProjectionNode:HTMLProjectionNode,MeasureLayout}},preloadedFeatures={...animations,...gestureAnimations,...drag,...layout},motion=createMotionProxy((t,n)=>createDomMotionConfig(t,n,preloadedFeatures,createDomVisualElement));function useMotionValue(t){const n=useConstant(()=>motionValue(t)),{isStatic:o}=React.useContext(MotionConfigContext);if(o){const[,s]=React.useState(t);React.useEffect(()=>n.on("change",s),[])}return n}function assignRef(t,n){return typeof t=="function"?t(n):t&&(t.current=n),t}function useCallbackRef(t,n){var o=React.useState(function(){return{value:t,callback:n,facade:{get current(){return o.value},set current(s){var c=o.value;c!==s&&(o.value=s,o.callback(s,c))}}}})[0];return o.callback=n,o.facade}var useIsomorphicLayoutEffect=typeof window<"u"?React__namespace.useLayoutEffect:React__namespace.useEffect,currentValues=new WeakMap;function useMergeRefs(t,n){var o=useCallbackRef(null,function(s){return t.forEach(function(c){return assignRef(c,s)})});return useIsomorphicLayoutEffect(function(){var s=currentValues.get(o);if(s){var c=new Set(s),d=new Set(t),h=o.current;c.forEach(function(p){d.has(p)||assignRef(p,null)}),d.forEach(function(p){c.has(p)||assignRef(p,h)})}currentValues.set(o,t)},[t]),o}const occluder=new EllipsoidalOccluder(Ellipsoid$1.WGS84,Cartesian3.ZERO),ScreenSpaceElement=React.forwardRef(({position:t,children:n,...o},s)=>{const c=useConstant$2(()=>new Cartesian3);t==null||t.clone(c);const d=useMotionValue(""),h=useMotionValue("none"),{toWindowPosition:p,getCamera:y,toXYZ:S,isPositionVisible:P}=useContext(),L=React.useRef(null);usePreRender(()=>{if(L.current==null)return;let N;try{const se=p==null?void 0:p([c.x,c.y,c.z]);N=new Cartesian2(se==null?void 0:se[0],se==null?void 0:se[1])}catch{h.set("none");return}const z=y==null?void 0:y();if(!z)return;const W=S==null?void 0:S(z==null?void 0:z.lng,z==null?void 0:z.lat,z==null?void 0:z.height);if(!W)return;if(occluder.cameraPosition=new Cartesian3(W[0],W[1],W[2]),N==null||N.x<0||N.y<0||N.x>window.innerWidth||N.y>window.innerHeight||!(P!=null&&P([c.x,c.y,c.z]))){h.set("none");return}const nt=`calc(${N.x}px - 50%)`,Pe=`calc(${N.y}px - 50%)`;d.set(`translate(${nt}, ${Pe})`),h.set("block")});const F=useMergeRefs([L,s]);return jsxRuntimeExports.jsx(motion.div,{ref:F,...o,style:{...o.style,transform:d,display:h,position:"absolute",pointerEvents:"none",left:0,top:0},children:n})});ScreenSpaceElement.displayName="ScreenSpaceElement";const MeasurementLine$1=({a:t,b:n,color:o})=>{const s=React.useRef([t,n]);s.current=[t,n];const c=useConstant$2(()=>new CallbackProperty(()=>s.current,!1)),d=React.useMemo(()=>({polyline:{positions:c,width:1.5,material:new PolylineDashMaterialProperty({color:o,dashLength:8})}}),[o,c]);return jsxRuntimeExports.jsx(Entity,{...d})},ExtrudedMeasurement=({a:t,b:n,extrudedHeight:o,color:s,showLine:c})=>{const d=useConstant$2(()=>new Cartesian3);return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(ScreenSpaceElement,{position:Cartesian3.midpoint(t,n,d),children:jsxRuntimeExports.jsx(MeasurementText,{children:o<1e3?`${o.toFixed(1)} m`:`${(o/1e3).toFixed(1)} km`})}),c&&jsxRuntimeExports.jsx(MeasurementLine$1,{a:t,b:n,color:s})]})},ExtrudedControlPoints=React.memo(({geometryOptions:{controlPoints:t,type:n},extrudedHeight:o,color:s,isEditing:c,extrudedPoint:d,centroidBasePoint:h,centroidExtrudedPoint:p,catchedExtrudedPoint:y,handleControlPointMouseEvent:S})=>{const P=t[t.length-1],L=d?new Cartesian3(...d):void 0,F=h?new Cartesian3(...h):void 0,N=p?new Cartesian3(...p):void 0;return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[L&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(ControlPoint,{index:-1,position:L,isEditing:c,isExtrudedControlPoint:!0,handleControlPointMouseEvent:S}),(!c||y)&&jsxRuntimeExports.jsx(ExtrudedMeasurement,{a:P,b:L,extrudedHeight:o,color:c?Color$1.fromCssColorString(DEFAULT_EDIT_COLOR):s,showLine:n!=="extrudedPolygon"})]}),F&&jsxRuntimeExports.jsx(ControlPoint,{index:-1,position:F,isEditing:c,isExtrudedControlPoint:!0}),N&&jsxRuntimeExports.jsx(ControlPoint,{index:-1,position:N,isEditing:c,isExtrudedControlPoint:!0})]})});ExtrudedControlPoints.displayName="ExtrudedControlPoints";const ExtrudedPolygonEntity=({id:t,hierarchy:n,extrudedHeight:o,color:s,disableShadow:c=!1,isEditing:d})=>{const h=React.useRef(n);h.current=n;const y=useConstant$2(()=>new CallbackProperty(()=>h.current,!1)),S=React.useRef(o);S.current=o;const L=useConstant$2(()=>new CallbackProperty(()=>S.current,!1)),F=React.useMemo(()=>({polygon:{hierarchy:y,heightReference:HeightReference$1.RELATIVE_TO_TERRAIN,extrudedHeight:L,extrudedHeightReference:HeightReference$1.RELATIVE_TO_TERRAIN,fill:!0,outline:!0,outlineWidth:1,outlineColor:d?Color$1.fromCssColorString(DEFAULT_EDIT_COLOR):s==null?void 0:s.withAlpha(1),material:new ColorMaterialProperty(d?s==null?void 0:s.withAlpha(.2):s),classificationType:ClassificationType$1.TERRAIN,shadows:c?ShadowMode$1.DISABLED:ShadowMode$1.ENABLED}}),[L,c,y,s,d]),{requestRender:N}=useContext();return N==null||N(),jsxRuntimeExports.jsx(Entity,{id:t,...F})},PolygonEntity=({dynamic:t=!1,hierarchy:n,color:o})=>{const s=React.useRef(n);s.current=n;const c=useConstant$2(()=>new CallbackProperty(()=>s.current,!1)),d=t?c:n,h=React.useMemo(()=>({polygon:{hierarchy:d,fill:!0,material:o==null?void 0:o.withAlpha(.5),classificationType:ClassificationType$1.TERRAIN}}),[o,d]),{requestRender:p}=useContext();return p==null||p(),jsxRuntimeExports.jsx(Entity,{...h})},PolylineEntity=({dynamic:t=!1,positions:n,color:o,isEditing:s})=>{const c=React.useRef(n);c.current=n;const d=useConstant$2(()=>new CallbackProperty(()=>c.current,!t)),h=t?d:n,p=React.useMemo(()=>({polyline:{positions:h,width:1.5,material:s?Color$1.fromCssColorString(DEFAULT_EDIT_COLOR):o,classificationType:ClassificationType$1.TERRAIN,clampToGround:!0}}),[o,h,s]),{requestRender:y}=useContext();return y==null||y(),jsxRuntimeExports.jsx(Entity,{...p})},cartesianScratch1$1=new Cartesian3,SurfaceAddingPoints=React.memo(({geometryOptions:{type:t,controlPoints:n},isEditing:o,handleAddControlPoint:s})=>{if(!["polyline","polygon","extrudedPolygon"].includes(t))return null;const c=[];for(let d=0;d<n.length-1;d++){const h=n[d+1],p=Cartesian3.midpoint(n[d],h,cartesianScratch1$1);c.push(p.clone())}if(t==="polygon"||t==="extrudedPolygon"){const d=Cartesian3.midpoint(n[n.length-1],n[0],cartesianScratch1$1);c.push(d.clone())}return jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:c.map((d,h)=>jsxRuntimeExports.jsx(ControlPoint,{position:d,isAddingPoint:!0,index:h,clampToGround:!0,isEditing:o,handleControlPointMouseEvent:()=>s==null?void 0:s([d.x,d.y,d.z],h)},h))})});SurfaceAddingPoints.displayName="SurfaceAddingPoints";const MeasurementLine=({a:t,b:n,color:o})=>{const s=React.useRef([t,n]);s.current=[t,n];const c=useConstant$2(()=>new CallbackProperty(()=>s.current,!1)),d=React.useMemo(()=>({polyline:{positions:c,width:1.5,material:new PolylineDashMaterialProperty({color:o,dashLength:8}),classificationType:ClassificationType$1.TERRAIN,clampToGround:!0}}),[o,c]),{requestRender:h}=useContext();return h==null||h(),jsxRuntimeExports.jsx(Entity,{...d})},SurfaceMeasurement=({a:t,b:n,color:o,showLine:s=!1})=>{const c=useConstant$2(()=>new Cartesian3),{getSurfaceDistance:d}=useContext(),h=d==null?void 0:d(t,n);return h!==void 0?jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(ScreenSpaceElement,{position:Cartesian3.midpoint(t,n,c),children:jsxRuntimeExports.jsx(MeasurementText,{children:h<1e3?`${h.toFixed(1)} m`:`${(h/1e3).toFixed(1)} km`})}),s&&jsxRuntimeExports.jsx(MeasurementLine,{a:t,b:n,color:o})]}):null},cartesianScratch1=new Cartesian3,SurfaceControlPoints=React.memo(({geometryOptions:{type:t,controlPoints:n},color:o,isEditing:s,catchedControlPointIndex:c,selectedControlPointIndex:d,handleControlPointMouseEvent:h})=>{const p=[];if(n.length>=2)if(s){if(c!==void 0&&c!==-1)switch(t){case"polyline":c>0&&p.push({points:[n[c-1],n[c]],showLine:!1}),c<n.length-1&&p.push({points:[n[c],n[c+1]],showLine:!1});break;case"circle":case"extrudedCircle":c!==2&&p.push({points:[n[0],n[1]],showLine:!0});break;case"rectangle":case"extrudedRectangle":if(c<=1)p.push({points:[n[0],n[1]],showLine:!1});else if(c===2){const[y,S,P]=n,L=Cartesian3.midpoint(y,S,cartesianScratch1);p.push({points:[L,P],showLine:!0})}break;case"polygon":case"extrudedPolygon":p.push({points:[n[c],c===0?n[n.length-1]:n[c-1]],showLine:!1}),p.push({points:[n[c],c===n.length-1?n[0]:n[c+1]],showLine:!1});break}}else switch(t){case"rectangle":if(n.length===2)p.push({points:n,showLine:!0});else if(n.length===3){const[y,S,P]=n,L=Cartesian3.midpoint(y,S,cartesianScratch1);p.push({points:[L,P],showLine:!0})}break;default:p.push({points:n.slice(-2),showLine:t==="circle"});break}return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[n.map((y,S)=>jsxRuntimeExports.jsx(ControlPoint,{position:y,index:S,isSelected:d===S,clampToGround:!0,isEditing:s,handleControlPointMouseEvent:h},S)),p.map(({points:y,showLine:S},P)=>jsxRuntimeExports.jsx(SurfaceMeasurement,{a:y[0],b:y[1],color:s?Color$1.fromCssColorString(DEFAULT_EDIT_COLOR):o,showLine:S},P))]})});SurfaceControlPoints.displayName="SurfaceControlPoints";const SketchComponent=React.memo(({geometryOptions:t,extrudedHeight:n,disableShadow:o,color:s,isEditing:c,extrudedPoint:d,centroidBasePoint:h,centroidExtrudedPoint:p,catchedControlPointIndex:y,catchedExtrudedPoint:S,selectedControlPointIndex:P,handleControlPointMouseEvent:L,handleAddControlPoint:F})=>{const N=React.useMemo(()=>t?{...t,controlPoints:t==null?void 0:t.controlPoints.map(se=>new Cesium$1.Cartesian3(...se))}:null,[t]),z=React.useMemo(()=>N?createGeometry(N):null,[N]),{positionsArray:W,hierarchyArray:nt}=React.useMemo(()=>(z==null?void 0:z.type)==="Point"?{}:(z==null?void 0:z.type)==="LineString"?{positionsArray:convertGeometryToPositionsArray(z)}:z!=null?{positionsArray:convertGeometryToPositionsArray(z),hierarchyArray:convertPolygonToHierarchyArray(z)}:{},[z]),Pe=React.useMemo(()=>Color$1.fromCssColorString(s??DEFAULT_SKETCH_COLOR),[s]);return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[W==null?void 0:W.map((se,mt)=>jsxRuntimeExports.jsx(PolylineEntity,{dynamic:!0,positions:se,color:Pe,isEditing:c},mt)),nt==null?void 0:nt.map((se,mt)=>jsxRuntimeExports.jsx(PolygonEntity,{dynamic:!0,hierarchy:se,color:Pe},mt)),N!=null&&(!n||c)&&jsxRuntimeExports.jsx(SurfaceControlPoints,{geometryOptions:N,color:Pe,isEditing:c,catchedControlPointIndex:y,selectedControlPointIndex:P,handleControlPointMouseEvent:L}),N!=null&&c&&jsxRuntimeExports.jsx(SurfaceAddingPoints,{geometryOptions:N,isEditing:c,handleAddControlPoint:F}),N!=null&&n&&jsxRuntimeExports.jsx(ExtrudedControlPoints,{geometryOptions:N,extrudedHeight:n,extrudedPoint:d,centroidBasePoint:h,centroidExtrudedPoint:p,catchedExtrudedPoint:S,color:Pe,isEditing:c,handleControlPointMouseEvent:L}),n&&(nt==null?void 0:nt.map((se,mt)=>jsxRuntimeExports.jsx(ExtrudedPolygonEntity,{hierarchy:se,extrudedHeight:n,disableShadow:o,color:Pe,isEditing:c},mt)))]})});SketchComponent.displayName="SketchComponent";const Cesium=({className:t,style:n,property:o,time:s,camera:c,small:d,ready:h,children:p,selectedLayerId:y,isLayerDraggable:S,isLayerDragging:P,shouldRender:L,layerSelectionReason:F,meta:N,displayCredits:z,layersRef:W,featureFlags:nt,requestingRenderMode:Pe,timelineManagerRef:se,cameraForceHorizontalRoll:mt,onLayerSelect:kt,onCameraChange:mn,onLayerDrag:_i,onLayerDrop:zi,onLayerEdit:Sa,onLayerSelectWithRectStart:fa,onLayerSelectWithRectMove:La,onLayerSelectWithRectEnd:Ra,onMount:ma,onLayerVisibility:yt,onLayerLoad:lt,onCreditsUpdate:pi},ba)=>{var gd,pd,Zd,cf,sf,nf,df,Cf,mf,Sf,Pf,Af,Hf,_f,wf,Yf,Nf,vf,Ff,Xf,Wf,Qf,_m,Bf,$m,qf,qm,ep,Tf,rf,bf,If,Uf,jf,jm,sp,cp,fp,mp,al,tf,lf;const{cesium:Sc,mouseEventHandles:ms,cesiumIonAccessToken:Xs,context:Nl,layerSelectWithRectEventHandlers:pu,sceneLight:yu,sceneBackgroundColor:Ru,sceneMsaaSamples:Vd,sceneMode:Gd,cameraViewBoundaries:uf,cameraViewOuterBoundaries:ff,cameraViewBoundariesMaterial:pf,handleCameraChange:hf,handleCameraMoveEnd:of,handleUpdate:gf,handleClick:Ef,handleMount:xf,handleUnmount:Wa,handleTilesChange:af,handleTerrainProviderChange:Xd}=useHooks$1({ref:ba,property:o,time:s,selectedLayerId:y,selectionReason:F,meta:N,layersRef:W,featureFlags:nt,timelineManagerRef:se,isLayerDraggable:S,isLayerDragging:P,shouldRender:L,requestingRenderMode:Pe,camera:c,cameraForceHorizontalRoll:mt,onLayerDrag:_i,onLayerDrop:zi,onLayerSelect:kt,onLayerEdit:Sa,onLayerSelectWithRectStart:fa,onLayerSelectWithRectMove:La,onLayerSelectWithRectEnd:Ra,onLayerVisibility:yt,onLayerLoad:lt,onCameraChange:mn,onMount:ma,onCreditsUpdate:pi});return jsxRuntimeExports.jsxs(Aa$1,{ref:Sc,onUpdate:gf,className:t,requestRenderMode:!0,animation:!1,timeline:!1,baseLayer:!1,fullscreenButton:!1,homeButton:!1,geocoder:!1,infoBox:!1,baseLayerPicker:!1,navigationHelpButton:!1,projectionPicker:!1,sceneModePicker:!1,creditContainer:z?void 0:creditContainer,style:{width:d?"300px":"auto",height:d?"300px":"100%",display:h?void 0:"none",cursor:P?"grab":void 0,...n},shadows:!!((pd=(gd=o==null?void 0:o.scene)==null?void 0:gd.shadow)!=null&&pd.enabled),onClick:Ef,onDoubleClick:ms.doubleClick,onMouseDown:ms.mouseDown,onMouseUp:ms.mouseUp,onRightClick:ms.rightClick,onRightDown:ms.rightDown,onRightUp:ms.rightUp,onMiddleClick:ms.middleClick,onMiddleDown:ms.middleDown,onMiddleUp:ms.middleUp,onMouseMove:ms.mouseMove,onMouseEnter:ms.mouseEnter,onMouseLeave:ms.mouseLeave,onWheel:ms.wheel,children:[jsxRuntimeExports.jsx(Event,{onMount:xf,onUnmount:Wa}),jsxRuntimeExports.jsx(ReearthClock,{timelineManagerRef:se}),jsxRuntimeExports.jsx(ImageryLayers,{tiles:o==null?void 0:o.tiles,cesiumIonAccessToken:Xs,onTilesChange:af}),jsxRuntimeExports.jsx(LabelImageryLayers,{tileLabels:o==null?void 0:o.tileLabels}),jsxRuntimeExports.jsx(Indicator,{property:o,timelineManagerRef:se}),jsxRuntimeExports.jsxs(ka$1,{useDefault:!0,children:[jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_CLICK}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_DOUBLE_CLICK})]}),jsxRuntimeExports.jsxs(ka$1,{children:[jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_DOWN,action:pu.start.handler}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_DOWN,modifier:Cesium$1.KeyboardEventModifier.SHIFT,action:pu.start.shift}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE,action:pu.move.handler}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE,modifier:Cesium$1.KeyboardEventModifier.SHIFT,action:pu.move.shift}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_UP,action:pu.end.handler}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_UP,modifier:Cesium$1.KeyboardEventModifier.SHIFT,action:pu.end.shift})]}),jsxRuntimeExports.jsx(Ta$1,{maximumZoomDistance:(cf=(Zd=o==null?void 0:o.camera)==null?void 0:Zd.limiter)!=null&&cf.enabled?((df=(nf=(sf=o.camera)==null?void 0:sf.limiter)==null?void 0:nf.targetArea)==null?void 0:df.height)??Number.POSITIVE_INFINITY:Number.POSITIVE_INFINITY,enableCollisionDetection:!((Cf=o==null?void 0:o.camera)!=null&&Cf.allowEnterGround)}),jsxRuntimeExports.jsx(Ps$1,{percentageChanged:.2,onChange:hf,onMoveEnd:of}),uf&&((Sf=(mf=o==null?void 0:o.camera)==null?void 0:mf.limiter)==null?void 0:Sf.showHelper)&&jsxRuntimeExports.jsx(Is$1,{children:jsxRuntimeExports.jsx(ua$1,{positions:uf,width:1,material:Cesium$1.Color.RED,arcType:Cesium$1.ArcType.RHUMB})}),ff&&((Af=(Pf=o==null?void 0:o.camera)==null?void 0:Pf.limiter)==null?void 0:Af.showHelper)&&jsxRuntimeExports.jsx(Is$1,{children:jsxRuntimeExports.jsx(ua$1,{positions:ff,width:1,material:pf,arcType:Cesium$1.ArcType.RHUMB})}),jsxRuntimeExports.jsx($a$1,{backgroundColor:Ru,light:yu,mode:Gd,msaaSamples:Vd,useDepthPicking:!1,useWebVR:!!((Hf=o==null?void 0:o.scene)!=null&&Hf.vr)||void 0,debugShowFramesPerSecond:!!((_f=o==null?void 0:o.debug)!=null&&_f.showFramesPerSecond),verticalExaggerationRelativeHeight:(wf=o==null?void 0:o.scene)==null?void 0:wf.verticalExaggerationRelativeHeight,verticalExaggeration:(Yf=o==null?void 0:o.scene)==null?void 0:Yf.verticalExaggeration}),jsxRuntimeExports.jsx(Oa$1,{show:((vf=(Nf=o==null?void 0:o.sky)==null?void 0:Nf.skyBox)==null?void 0:vf.show)??!0}),jsxRuntimeExports.jsx(Vs,{enabled:((Xf=(Ff=o==null?void 0:o.sky)==null?void 0:Ff.fog)==null?void 0:Xf.enabled)??!0,density:(Qf=(Wf=o==null?void 0:o.sky)==null?void 0:Wf.fog)==null?void 0:Qf.density}),jsxRuntimeExports.jsx(Ga$1,{show:((Bf=(_m=o==null?void 0:o.sky)==null?void 0:_m.sun)==null?void 0:Bf.show)??!0}),jsxRuntimeExports.jsx(ea,{show:((qf=($m=o==null?void 0:o.sky)==null?void 0:$m.moon)==null?void 0:qf.show)??!0}),jsxRuntimeExports.jsx(_a$2,{show:((ep=(qm=o==null?void 0:o.sky)==null?void 0:qm.skyAtmosphere)==null?void 0:ep.show)??!0,atmosphereLightIntensity:(rf=(Tf=o==null?void 0:o.sky)==null?void 0:Tf.skyAtmosphere)==null?void 0:rf.lightIntensity,saturationShift:(If=(bf=o==null?void 0:o.sky)==null?void 0:bf.skyAtmosphere)==null?void 0:If.saturationShift,brightnessShift:(jf=(Uf=o==null?void 0:o.sky)==null?void 0:Uf.skyAtmosphere)==null?void 0:jf.brightnessShift}),jsxRuntimeExports.jsx(Globe,{property:o,cesiumIonAccessToken:Xs,onTerrainProviderChange:Xd}),jsxRuntimeExports.jsx(context.Provider,{value:Nl,children:h?p:null}),jsxRuntimeExports.jsx(AmbientOcclusion,{...AMBIENT_OCCLUSION_QUALITY[((sp=(jm=o==null?void 0:o.render)==null?void 0:jm.ambientOcclusion)==null?void 0:sp.quality)||"low"],enabled:!!((fp=(cp=o==null?void 0:o.render)==null?void 0:cp.ambientOcclusion)!=null&&fp.enabled),intensity:((al=(mp=o==null?void 0:o.render)==null?void 0:mp.ambientOcclusion)==null?void 0:al.intensity)??100,outputType:(lf=(tf=o==null?void 0:o.render)==null?void 0:tf.ambientOcclusion)!=null&&lf.ambientOcclusionOnly?AmbientOcclusionOutputType.Occlusion:null})]})},creditContainer=document.createElement("div"),Component=React.forwardRef(Cesium),engine={component:Component,featureComponent:Feature$1,clusterComponent:Cluster,sketchComponent:SketchComponent,delegatedDataTypes:["czml","wms","mvt","3dtiles","osm-buildings","kml"]},engines={cesium:engine};function Error$1({error:t,resetErrorBoundary:n}){return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx("h1",{children:"Oops! An Error Occurred"}),jsxRuntimeExports.jsx("p",{children:t.message}),jsxRuntimeExports.jsx("p",{children:jsxRuntimeExports.jsx("button",{style:{color:"#fff"},onClick:n,children:"Retry"})})]})}const version$1="0.0.7-alpha.35",useCoreAPI=({viewerProperty:t})=>{const n=React.useRef(t);n.current=t;const o=React.useMemo(()=>({get version(){return version$1},get viewerProperty(){return n.current}}),[]);React.useEffect(()=>{window.reearth_core=o},[o])},viewportMobileMaxWidth=768,useViewport=({wrapperRef:t})=>{const n=React.useMemo(()=>paramsToObject(new URLSearchParams(window.location.search)),[]),[o,s]=React.useState({width:void 0,height:void 0,isMobile:void 0,query:n});return React.useEffect(()=>{const c=new ResizeObserver(d=>{var S,P;const[h]=d;let p,y;if(h.contentBoxSize){const L=Array.isArray(h.contentBoxSize)?h.contentBoxSize[0]:h.contentBoxSize;p=L.inlineSize,y=L.blockSize}else h.contentRect?(p=h.contentRect.width,y=h.contentRect.height):(p=(S=t.current)==null?void 0:S.clientWidth,y=(P=t.current)==null?void 0:P.clientHeight);s(L=>({width:p,height:y,isMobile:p?p<=viewportMobileMaxWidth:void 0,query:L.query}))});return t.current&&c.observe(t.current),()=>{c.disconnect()}},[t]),o};function paramsToObject(t){const n={};for(const[o,s]of t)n[o]=s;return n}function useHooks({camera:t,interactionMode:n,zoomedLayerId:o,viewerProperty:s,onLayerSelect:c,onCameraChange:d,onInteractionModeChange:h,onZoomToLayer:p,onLayerDrop:y,onSketchTypeChangeProp:S},P){const L=React.useRef(null);React.useImperativeHandle(P,()=>L.current,[]);const F=React.useRef(null),N=useViewport({wrapperRef:F}),[z,W]=React.useState({}),[nt,Pe]=React.useState(),[se,mt]=React.useState(),kt=React.useCallback(async(_f,wf,Yf,Nf,vf)=>{var Qf,_m,Bf,$m,qf,qm,ep,Tf,rf,bf,If;const Ff=((Qf=z.layer)==null?void 0:Qf.layer.type)==="simple"&&(($m=(Bf=(_m=z.layer)==null?void 0:_m.layer)==null?void 0:Bf.data)==null?void 0:$m.isSketchLayer);if(z.layerId===_f&&z.featureId===wf&&!Ff)return;const Xf=await(Yf==null?void 0:Yf()),Wf=_f&&wf?(Ff?(qf=Xf==null?void 0:Xf.features)==null?void 0:qf.find(Uf=>Uf.id===wf):(Tf=(qm=L.current)==null?void 0:(ep=qm.engine).findComputedFeatureById)==null?void 0:Tf.call(ep,_f,wf))??(vf==null?void 0:vf.feature):void 0;Pe(_f&&wf?(If=(rf=L.current)==null?void 0:(bf=rf.engine).findFeatureById)==null?void 0:If.call(bf,_f,wf):void 0),mt(Wf),W(Uf=>Uf.layerId===_f&&Uf.featureId===wf?Uf:{layerId:_f,featureId:wf,layer:Xf,reason:Nf}),c==null||c(_f,Yf,Wf,Nf)},[z,c]),mn=React.useRef(),[_i,zi]=useValue(t,d),[Sa,fa]=React.useState(!1),La=React.useCallback(_f=>{fa(!!_f)},[]),[Ra,ma]=useValue(n||"default",h);React.useEffect(()=>{var _f,wf;Ra==="default"&&((wf=(_f=L==null?void 0:L.current)==null?void 0:_f.engine)==null||wf.setCursor("auto"))},[Ra]);const yt=INTERACTION_MODES[Ra??"default"],lt=React.useRef(),pi=React.useCallback(_f=>{lt.current=_f},[]),ba=React.useCallback(_f=>{var wf;(wf=lt.current)==null||wf.call(lt,_f)},[]),Sc=React.useRef(),ms=React.useCallback(_f=>{Sc.current=_f},[]),Xs=React.useCallback(_f=>{var wf;(wf=Sc.current)==null||wf.call(Sc,_f)},[]),Nl=React.useRef(),pu=React.useCallback(_f=>{Nl.current=_f},[]),yu=React.useCallback(_f=>{var wf;(wf=Nl.current)==null||wf.call(Nl,_f)},[]),Ru=React.useRef(),Vd=React.useCallback(_f=>{Ru.current=_f},[]),Gd=React.useCallback(_f=>{var wf;(wf=Ru.current)==null||wf.call(Ru,_f)},[]),uf=React.useRef(),ff=React.useCallback(_f=>{uf.current=_f},[]),pf=React.useCallback(_f=>{var wf;(wf=uf.current)==null||wf.call(uf,_f)},[]),hf=React.useRef(),of=React.useCallback(_f=>{hf.current=_f},[]),gf=React.useCallback(_f=>{var wf;(wf=hf.current)==null||wf.call(hf,_f)},[]),Ef=React.useRef([]),xf=React.useCallback(_f=>{Ef.current.push(_f)},[]),Wa=React.useCallback(_f=>{Ef.current.forEach(wf=>wf(_f))},[]),af=React.useRef([]),Xd=React.useCallback(_f=>{af.current.push(_f)},[]),gd=React.useCallback(_f=>{af.current.forEach(wf=>wf(_f))},[]),pd=React.useRef([]),Zd=React.useCallback(_f=>{pd.current.push(_f)},[]),cf=React.useCallback(_f=>{pd.current.forEach(wf=>wf(_f))},[]),sf=React.useRef([]),nf=React.useCallback(_f=>{sf.current.push(_f)},[]),df=React.useCallback((_f,wf)=>{sf.current.forEach(Yf=>Yf(_f)),S==null||S(_f,wf)},[S]);React.useEffect(()=>{var _f,wf;o&&((wf=(_f=L.current)==null?void 0:_f.engine)==null||wf.lookAtLayer(o),p==null||p(void 0))},[o,p]);const[Cf,mf]=React.useState(!1),Sf=React.useCallback(()=>{mf(!0)},[]),Pf=React.useCallback((_f,wf,Yf)=>{var Ff;mf(!1);const Nf=(Ff=L.current)==null?void 0:Ff.layers.findById(_f),vf=Nf!=null&&Nf.property.default.location?"default.location":Nf!=null&&Nf.property.default.position?"default.position":void 0;Yf&&Nf&&Nf.propertyId&&vf&&(y==null||y(Nf.propertyId,vf,Yf))},[y,L]),Af=React.useMemo(()=>({interactionMode:Ra,selectedLayer:z,selectedComputedFeature:se,viewport:N,handleCameraForceHorizontalRollChange:La,handleInteractionModeChange:ma,onSketchPluginFeatureCreate:xf,onSketchPluginFeatureUpdate:Xd,onSketchPluginFeatureDelete:Zd,onSketchTypeChange:nf,onLayerVisibility:ms,onLayerLoad:pu,onLayerEdit:pi,onLayerSelectWithRectStart:Vd,onLayerSelectWithRectMove:ff,onLayerSelectWithRectEnd:of}),[Ra,z,se,N,ma,La,pi,xf,Xd,Zd,nf,ms,pu,Vd,ff,of]),Hf=React.useMemo(()=>({position:"relative",width:"100%",height:"100%",overflow:"hidden"}),[]);return useCoreAPI({viewerProperty:s}),{mapRef:L,wrapperRef:F,selectedFeature:nt,camera:_i,featureFlags:yt,isLayerDragging:Cf,timelineManagerRef:mn,cameraForceHorizontalRoll:Sa,coreContextValue:Af,containerStyle:Hf,overriddenInteractionMode:Ra,handleLayerSelect:kt,handleLayerDrag:Sf,handleLayerDrop:Pf,handleLayerEdit:ba,handleCameraChange:zi,handleInteractionModeChange:ma,handleSketchPluginFeatureCreate:Wa,handleSketchPluginFeatureUpdate:gd,handleSketchPluginFeatureDelete:cf,handleSketchTypeChange:df,handleLayerVisibility:Xs,handleLayerLoad:yu,handleLayerSelectWithRectStart:Gd,handleLayerSelectWithRectMove:pf,handleLayerSelectWithRectEnd:gf}}function useValue(t,n){const[o,s]=React.useState(t),c=React.useCallback(d=>{d&&(s(d),n==null||n(d))},[n]);return React.useEffect(()=>{s(t)},[t]),[o,c]}const CoreVisualizer=React.memo(React.forwardRef(({engine:t,isBuilt:n,isEditable:o,viewerProperty:s,layers:c,clusters:d,small:h,ready:p,hiddenLayers:y,camera:S,time:P,interactionMode:L,shouldRender:F,meta:N,displayCredits:z=!0,style:W,zoomedLayerId:nt,children:Pe,onLayerDrop:se,onLayerSelect:mt,onCameraChange:kt,onZoomToLayer:mn,onInteractionModeChange:_i,onMount:zi,onSketchTypeChangeProp:Sa,onSketchFeatureCreate:fa,onSketchFeatureUpdate:La,onSketchFeatureDelete:Ra,onAPIReady:ma,onCreditsUpdate:yt},lt)=>{const{mapRef:pi,wrapperRef:ba,selectedFeature:Sc,camera:ms,featureFlags:Xs,isLayerDragging:Nl,timelineManagerRef:pu,cameraForceHorizontalRoll:yu,coreContextValue:Ru,containerStyle:Vd,overriddenInteractionMode:Gd,handleLayerSelect:uf,handleLayerDrag:ff,handleLayerDrop:pf,handleLayerEdit:hf,handleCameraChange:of,handleInteractionModeChange:gf,handleSketchPluginFeatureCreate:Ef,handleSketchPluginFeatureUpdate:xf,handleSketchPluginFeatureDelete:Wa,handleSketchTypeChange:af,handleLayerVisibility:Xd,handleLayerLoad:gd,handleLayerSelectWithRectStart:pd,handleLayerSelectWithRectMove:Zd,handleLayerSelectWithRectEnd:cf}=useHooks({camera:S,interactionMode:L,zoomedLayerId:nt,viewerProperty:s,onLayerSelect:mt,onCameraChange:kt,onZoomToLayer:mn,onLayerDrop:se,onInteractionModeChange:_i,onSketchTypeChangeProp:Sa},lt);return jsxRuntimeExports.jsx(ErrorBoundary,{FallbackComponent:Error$1,children:jsxRuntimeExports.jsx(VisualizerProvider,{mapRef:pi,children:jsxRuntimeExports.jsxs("div",{ref:ba,style:Vd,children:[jsxRuntimeExports.jsx(Map$1,{ref:pi,isBuilt:n,isEditable:o,engine:t,layers:c,engines,camera:ms,cameraForceHorizontalRoll:yu,clusters:d,hiddenLayers:y,isLayerDragging:Nl,isLayerDraggable:o,meta:N,displayCredits:z,style:W,featureFlags:Xs,shouldRender:F,property:s,time:P,small:h,ready:p,timelineManagerRef:pu,interactionMode:Gd,selectedFeature:Sc,onCameraChange:of,onLayerDrag:ff,onLayerDrop:pf,onLayerSelect:uf,onLayerEdit:hf,overrideInteractionMode:gf,onSketchFeatureCreate:fa,onSketchPluginFeatureCreate:Ef,onSketchFeatureUpdate:La,onSketchPluginFeatureUpdate:xf,onSketchFeatureDelete:Ra,onSketchPluginFeatureDelete:Wa,onSketchTypeChange:af,onMount:zi,onLayerVisibility:Xd,onLayerLoad:gd,onLayerSelectWithRectStart:pd,onLayerSelectWithRectMove:Zd,onLayerSelectWithRectEnd:cf,onAPIReady:ma,onCreditsUpdate:yt}),jsxRuntimeExports.jsx(coreContext.Provider,{value:Ru,children:Pe})]})})})}));var global$1=typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{},lookup=[],revLookup=[],Arr=typeof Uint8Array<"u"?Uint8Array:Array,inited=!1;function init(){inited=!0;for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n=0,o=t.length;n<o;++n)lookup[n]=t[n],revLookup[t.charCodeAt(n)]=n;revLookup[45]=62,revLookup[95]=63}function toByteArray(t){inited||init();var n,o,s,c,d,h,p=t.length;if(p%4>0)throw new Error("Invalid string. Length must be a multiple of 4");d=t[p-2]==="="?2:t[p-1]==="="?1:0,h=new Arr(p*3/4-d),s=d>0?p-4:p;var y=0;for(n=0,o=0;n<s;n+=4,o+=3)c=revLookup[t.charCodeAt(n)]<<18|revLookup[t.charCodeAt(n+1)]<<12|revLookup[t.charCodeAt(n+2)]<<6|revLookup[t.charCodeAt(n+3)],h[y++]=c>>16&255,h[y++]=c>>8&255,h[y++]=c&255;return d===2?(c=revLookup[t.charCodeAt(n)]<<2|revLookup[t.charCodeAt(n+1)]>>4,h[y++]=c&255):d===1&&(c=revLookup[t.charCodeAt(n)]<<10|revLookup[t.charCodeAt(n+1)]<<4|revLookup[t.charCodeAt(n+2)]>>2,h[y++]=c>>8&255,h[y++]=c&255),h}function tripletToBase64(t){return lookup[t>>18&63]+lookup[t>>12&63]+lookup[t>>6&63]+lookup[t&63]}function encodeChunk(t,n,o){for(var s,c=[],d=n;d<o;d+=3)s=(t[d]<<16)+(t[d+1]<<8)+t[d+2],c.push(tripletToBase64(s));return c.join("")}function fromByteArray(t){inited||init();for(var n,o=t.length,s=o%3,c="",d=[],h=16383,p=0,y=o-s;p<y;p+=h)d.push(encodeChunk(t,p,p+h>y?y:p+h));return s===1?(n=t[o-1],c+=lookup[n>>2],c+=lookup[n<<4&63],c+="=="):s===2&&(n=(t[o-2]<<8)+t[o-1],c+=lookup[n>>10],c+=lookup[n>>4&63],c+=lookup[n<<2&63],c+="="),d.push(c),d.join("")}function read(t,n,o,s,c){var d,h,p=c*8-s-1,y=(1<<p)-1,S=y>>1,P=-7,L=o?c-1:0,F=o?-1:1,N=t[n+L];for(L+=F,d=N&(1<<-P)-1,N>>=-P,P+=p;P>0;d=d*256+t[n+L],L+=F,P-=8);for(h=d&(1<<-P)-1,d>>=-P,P+=s;P>0;h=h*256+t[n+L],L+=F,P-=8);if(d===0)d=1-S;else{if(d===y)return h?NaN:(N?-1:1)*(1/0);h=h+Math.pow(2,s),d=d-S}return(N?-1:1)*h*Math.pow(2,d-s)}function write(t,n,o,s,c,d){var h,p,y,S=d*8-c-1,P=(1<<S)-1,L=P>>1,F=c===23?Math.pow(2,-24)-Math.pow(2,-77):0,N=s?0:d-1,z=s?1:-1,W=n<0||n===0&&1/n<0?1:0;for(n=Math.abs(n),isNaN(n)||n===1/0?(p=isNaN(n)?1:0,h=P):(h=Math.floor(Math.log(n)/Math.LN2),n*(y=Math.pow(2,-h))<1&&(h--,y*=2),h+L>=1?n+=F/y:n+=F*Math.pow(2,1-L),n*y>=2&&(h++,y/=2),h+L>=P?(p=0,h=P):h+L>=1?(p=(n*y-1)*Math.pow(2,c),h=h+L):(p=n*Math.pow(2,L-1)*Math.pow(2,c),h=0));c>=8;t[o+N]=p&255,N+=z,p/=256,c-=8);for(h=h<<c|p,S+=c;S>0;t[o+N]=h&255,N+=z,h/=256,S-=8);t[o+N-z]|=W*128}var toString={}.toString,isArray$1=Array.isArray||function(t){return toString.call(t)=="[object Array]"},INSPECT_MAX_BYTES=50;Buffer$1.TYPED_ARRAY_SUPPORT=global$1.TYPED_ARRAY_SUPPORT!==void 0?global$1.TYPED_ARRAY_SUPPORT:!0,kMaxLength();function kMaxLength(){return Buffer$1.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function createBuffer(t,n){if(kMaxLength()<n)throw new RangeError("Invalid typed array length");return Buffer$1.TYPED_ARRAY_SUPPORT?(t=new Uint8Array(n),t.__proto__=Buffer$1.prototype):(t===null&&(t=new Buffer$1(n)),t.length=n),t}function Buffer$1(t,n,o){if(!Buffer$1.TYPED_ARRAY_SUPPORT&&!(this instanceof Buffer$1))return new Buffer$1(t,n,o);if(typeof t=="number"){if(typeof n=="string")throw new Error("If encoding is specified then the first argument must be a string");return allocUnsafe(this,t)}return from(this,t,n,o)}Buffer$1.poolSize=8192,Buffer$1._augment=function(t){return t.__proto__=Buffer$1.prototype,t};function from(t,n,o,s){if(typeof n=="number")throw new TypeError('"value" argument must not be a number');return typeof ArrayBuffer<"u"&&n instanceof ArrayBuffer?fromArrayBuffer(t,n,o,s):typeof n=="string"?fromString(t,n,o):fromObject(t,n)}Buffer$1.from=function(t,n,o){return from(null,t,n,o)},Buffer$1.TYPED_ARRAY_SUPPORT&&(Buffer$1.prototype.__proto__=Uint8Array.prototype,Buffer$1.__proto__=Uint8Array,typeof Symbol<"u"&&Symbol.species&&Buffer$1[Symbol.species]);function assertSize(t){if(typeof t!="number")throw new TypeError('"size" argument must be a number');if(t<0)throw new RangeError('"size" argument must not be negative')}function alloc(t,n,o,s){return assertSize(n),n<=0?createBuffer(t,n):o!==void 0?typeof s=="string"?createBuffer(t,n).fill(o,s):createBuffer(t,n).fill(o):createBuffer(t,n)}Buffer$1.alloc=function(t,n,o){return alloc(null,t,n,o)};function allocUnsafe(t,n){if(assertSize(n),t=createBuffer(t,n<0?0:checked(n)|0),!Buffer$1.TYPED_ARRAY_SUPPORT)for(var o=0;o<n;++o)t[o]=0;return t}Buffer$1.allocUnsafe=function(t){return allocUnsafe(null,t)},Buffer$1.allocUnsafeSlow=function(t){return allocUnsafe(null,t)};function fromString(t,n,o){if((typeof o!="string"||o==="")&&(o="utf8"),!Buffer$1.isEncoding(o))throw new TypeError('"encoding" must be a valid string encoding');var s=byteLength(n,o)|0;t=createBuffer(t,s);var c=t.write(n,o);return c!==s&&(t=t.slice(0,c)),t}function fromArrayLike(t,n){var o=n.length<0?0:checked(n.length)|0;t=createBuffer(t,o);for(var s=0;s<o;s+=1)t[s]=n[s]&255;return t}function fromArrayBuffer(t,n,o,s){if(n.byteLength,o<0||n.byteLength<o)throw new RangeError("'offset' is out of bounds");if(n.byteLength<o+(s||0))throw new RangeError("'length' is out of bounds");return o===void 0&&s===void 0?n=new Uint8Array(n):s===void 0?n=new Uint8Array(n,o):n=new Uint8Array(n,o,s),Buffer$1.TYPED_ARRAY_SUPPORT?(t=n,t.__proto__=Buffer$1.prototype):t=fromArrayLike(t,n),t}function fromObject(t,n){if(internalIsBuffer(n)){var o=checked(n.length)|0;return t=createBuffer(t,o),t.length===0||n.copy(t,0,0,o),t}if(n){if(typeof ArrayBuffer<"u"&&n.buffer instanceof ArrayBuffer||"length"in n)return typeof n.length!="number"||isnan(n.length)?createBuffer(t,0):fromArrayLike(t,n);if(n.type==="Buffer"&&isArray$1(n.data))return fromArrayLike(t,n.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}function checked(t){if(t>=kMaxLength())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+kMaxLength().toString(16)+" bytes");return t|0}Buffer$1.isBuffer=isBuffer;function internalIsBuffer(t){return!!(t!=null&&t._isBuffer)}Buffer$1.compare=function t(n,o){if(!internalIsBuffer(n)||!internalIsBuffer(o))throw new TypeError("Arguments must be Buffers");if(n===o)return 0;for(var s=n.length,c=o.length,d=0,h=Math.min(s,c);d<h;++d)if(n[d]!==o[d]){s=n[d],c=o[d];break}return s<c?-1:c<s?1:0},Buffer$1.isEncoding=function t(n){switch(String(n).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},Buffer$1.concat=function t(n,o){if(!isArray$1(n))throw new TypeError('"list" argument must be an Array of Buffers');if(n.length===0)return Buffer$1.alloc(0);var s;if(o===void 0)for(o=0,s=0;s<n.length;++s)o+=n[s].length;var c=Buffer$1.allocUnsafe(o),d=0;for(s=0;s<n.length;++s){var h=n[s];if(!internalIsBuffer(h))throw new TypeError('"list" argument must be an Array of Buffers');h.copy(c,d),d+=h.length}return c};function byteLength(t,n){if(internalIsBuffer(t))return t.length;if(typeof ArrayBuffer<"u"&&typeof ArrayBuffer.isView=="function"&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;typeof t!="string"&&(t=""+t);var o=t.length;if(o===0)return 0;for(var s=!1;;)switch(n){case"ascii":case"latin1":case"binary":return o;case"utf8":case"utf-8":case void 0:return utf8ToBytes(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return o*2;case"hex":return o>>>1;case"base64":return base64ToBytes(t).length;default:if(s)return utf8ToBytes(t).length;n=(""+n).toLowerCase(),s=!0}}Buffer$1.byteLength=byteLength;function slowToString(t,n,o){var s=!1;if((n===void 0||n<0)&&(n=0),n>this.length||((o===void 0||o>this.length)&&(o=this.length),o<=0)||(o>>>=0,n>>>=0,o<=n))return"";for(t||(t="utf8");;)switch(t){case"hex":return hexSlice(this,n,o);case"utf8":case"utf-8":return utf8Slice(this,n,o);case"ascii":return asciiSlice(this,n,o);case"latin1":case"binary":return latin1Slice(this,n,o);case"base64":return base64Slice(this,n,o);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return utf16leSlice(this,n,o);default:if(s)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),s=!0}}Buffer$1.prototype._isBuffer=!0;function swap(t,n,o){var s=t[n];t[n]=t[o],t[o]=s}Buffer$1.prototype.swap16=function t(){var n=this.length;if(n%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var o=0;o<n;o+=2)swap(this,o,o+1);return this},Buffer$1.prototype.swap32=function t(){var n=this.length;if(n%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var o=0;o<n;o+=4)swap(this,o,o+3),swap(this,o+1,o+2);return this},Buffer$1.prototype.swap64=function t(){var n=this.length;if(n%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var o=0;o<n;o+=8)swap(this,o,o+7),swap(this,o+1,o+6),swap(this,o+2,o+5),swap(this,o+3,o+4);return this},Buffer$1.prototype.toString=function t(){var n=this.length|0;return n===0?"":arguments.length===0?utf8Slice(this,0,n):slowToString.apply(this,arguments)},Buffer$1.prototype.equals=function t(n){if(!internalIsBuffer(n))throw new TypeError("Argument must be a Buffer");return this===n?!0:Buffer$1.compare(this,n)===0},Buffer$1.prototype.inspect=function t(){var n="",o=INSPECT_MAX_BYTES;return this.length>0&&(n=this.toString("hex",0,o).match(/.{2}/g).join(" "),this.length>o&&(n+=" ... ")),"<Buffer "+n+">"},Buffer$1.prototype.compare=function t(n,o,s,c,d){if(!internalIsBuffer(n))throw new TypeError("Argument must be a Buffer");if(o===void 0&&(o=0),s===void 0&&(s=n?n.length:0),c===void 0&&(c=0),d===void 0&&(d=this.length),o<0||s>n.length||c<0||d>this.length)throw new RangeError("out of range index");if(c>=d&&o>=s)return 0;if(c>=d)return-1;if(o>=s)return 1;if(o>>>=0,s>>>=0,c>>>=0,d>>>=0,this===n)return 0;for(var h=d-c,p=s-o,y=Math.min(h,p),S=this.slice(c,d),P=n.slice(o,s),L=0;L<y;++L)if(S[L]!==P[L]){h=S[L],p=P[L];break}return h<p?-1:p<h?1:0};function bidirectionalIndexOf(t,n,o,s,c){if(t.length===0)return-1;if(typeof o=="string"?(s=o,o=0):o>2147483647?o=2147483647:o<-2147483648&&(o=-2147483648),o=+o,isNaN(o)&&(o=c?0:t.length-1),o<0&&(o=t.length+o),o>=t.length){if(c)return-1;o=t.length-1}else if(o<0)if(c)o=0;else return-1;if(typeof n=="string"&&(n=Buffer$1.from(n,s)),internalIsBuffer(n))return n.length===0?-1:arrayIndexOf(t,n,o,s,c);if(typeof n=="number")return n=n&255,Buffer$1.TYPED_ARRAY_SUPPORT&&typeof Uint8Array.prototype.indexOf=="function"?c?Uint8Array.prototype.indexOf.call(t,n,o):Uint8Array.prototype.lastIndexOf.call(t,n,o):arrayIndexOf(t,[n],o,s,c);throw new TypeError("val must be string, number or Buffer")}function arrayIndexOf(t,n,o,s,c){var d=1,h=t.length,p=n.length;if(s!==void 0&&(s=String(s).toLowerCase(),s==="ucs2"||s==="ucs-2"||s==="utf16le"||s==="utf-16le")){if(t.length<2||n.length<2)return-1;d=2,h/=2,p/=2,o/=2}function y(N,z){return d===1?N[z]:N.readUInt16BE(z*d)}var S;if(c){var P=-1;for(S=o;S<h;S++)if(y(t,S)===y(n,P===-1?0:S-P)){if(P===-1&&(P=S),S-P+1===p)return P*d}else P!==-1&&(S-=S-P),P=-1}else for(o+p>h&&(o=h-p),S=o;S>=0;S--){for(var L=!0,F=0;F<p;F++)if(y(t,S+F)!==y(n,F)){L=!1;break}if(L)return S}return-1}Buffer$1.prototype.includes=function t(n,o,s){return this.indexOf(n,o,s)!==-1},Buffer$1.prototype.indexOf=function t(n,o,s){return bidirectionalIndexOf(this,n,o,s,!0)},Buffer$1.prototype.lastIndexOf=function t(n,o,s){return bidirectionalIndexOf(this,n,o,s,!1)};function hexWrite(t,n,o,s){o=Number(o)||0;var c=t.length-o;s?(s=Number(s),s>c&&(s=c)):s=c;var d=n.length;if(d%2!==0)throw new TypeError("Invalid hex string");s>d/2&&(s=d/2);for(var h=0;h<s;++h){var p=parseInt(n.substr(h*2,2),16);if(isNaN(p))return h;t[o+h]=p}return h}function utf8Write(t,n,o,s){return blitBuffer(utf8ToBytes(n,t.length-o),t,o,s)}function asciiWrite(t,n,o,s){return blitBuffer(asciiToBytes(n),t,o,s)}function latin1Write(t,n,o,s){return asciiWrite(t,n,o,s)}function base64Write(t,n,o,s){return blitBuffer(base64ToBytes(n),t,o,s)}function ucs2Write(t,n,o,s){return blitBuffer(utf16leToBytes(n,t.length-o),t,o,s)}Buffer$1.prototype.write=function t(n,o,s,c){if(o===void 0)c="utf8",s=this.length,o=0;else if(s===void 0&&typeof o=="string")c=o,s=this.length,o=0;else if(isFinite(o))o=o|0,isFinite(s)?(s=s|0,c===void 0&&(c="utf8")):(c=s,s=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var d=this.length-o;if((s===void 0||s>d)&&(s=d),n.length>0&&(s<0||o<0)||o>this.length)throw new RangeError("Attempt to write outside buffer bounds");c||(c="utf8");for(var h=!1;;)switch(c){case"hex":return hexWrite(this,n,o,s);case"utf8":case"utf-8":return utf8Write(this,n,o,s);case"ascii":return asciiWrite(this,n,o,s);case"latin1":case"binary":return latin1Write(this,n,o,s);case"base64":return base64Write(this,n,o,s);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ucs2Write(this,n,o,s);default:if(h)throw new TypeError("Unknown encoding: "+c);c=(""+c).toLowerCase(),h=!0}},Buffer$1.prototype.toJSON=function t(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function base64Slice(t,n,o){return n===0&&o===t.length?fromByteArray(t):fromByteArray(t.slice(n,o))}function utf8Slice(t,n,o){o=Math.min(t.length,o);for(var s=[],c=n;c<o;){var d=t[c],h=null,p=d>239?4:d>223?3:d>191?2:1;if(c+p<=o){var y,S,P,L;switch(p){case 1:d<128&&(h=d);break;case 2:y=t[c+1],(y&192)===128&&(L=(d&31)<<6|y&63,L>127&&(h=L));break;case 3:y=t[c+1],S=t[c+2],(y&192)===128&&(S&192)===128&&(L=(d&15)<<12|(y&63)<<6|S&63,L>2047&&(L<55296||L>57343)&&(h=L));break;case 4:y=t[c+1],S=t[c+2],P=t[c+3],(y&192)===128&&(S&192)===128&&(P&192)===128&&(L=(d&15)<<18|(y&63)<<12|(S&63)<<6|P&63,L>65535&&L<1114112&&(h=L))}}h===null?(h=65533,p=1):h>65535&&(h-=65536,s.push(h>>>10&1023|55296),h=56320|h&1023),s.push(h),c+=p}return decodeCodePointsArray(s)}var MAX_ARGUMENTS_LENGTH=4096;function decodeCodePointsArray(t){var n=t.length;if(n<=MAX_ARGUMENTS_LENGTH)return String.fromCharCode.apply(String,t);for(var o="",s=0;s<n;)o+=String.fromCharCode.apply(String,t.slice(s,s+=MAX_ARGUMENTS_LENGTH));return o}function asciiSlice(t,n,o){var s="";o=Math.min(t.length,o);for(var c=n;c<o;++c)s+=String.fromCharCode(t[c]&127);return s}function latin1Slice(t,n,o){var s="";o=Math.min(t.length,o);for(var c=n;c<o;++c)s+=String.fromCharCode(t[c]);return s}function hexSlice(t,n,o){var s=t.length;(!n||n<0)&&(n=0),(!o||o<0||o>s)&&(o=s);for(var c="",d=n;d<o;++d)c+=toHex(t[d]);return c}function utf16leSlice(t,n,o){for(var s=t.slice(n,o),c="",d=0;d<s.length;d+=2)c+=String.fromCharCode(s[d]+s[d+1]*256);return c}Buffer$1.prototype.slice=function t(n,o){var s=this.length;n=~~n,o=o===void 0?s:~~o,n<0?(n+=s,n<0&&(n=0)):n>s&&(n=s),o<0?(o+=s,o<0&&(o=0)):o>s&&(o=s),o<n&&(o=n);var c;if(Buffer$1.TYPED_ARRAY_SUPPORT)c=this.subarray(n,o),c.__proto__=Buffer$1.prototype;else{var d=o-n;c=new Buffer$1(d,void 0);for(var h=0;h<d;++h)c[h]=this[h+n]}return c};function checkOffset(t,n,o){if(t%1!==0||t<0)throw new RangeError("offset is not uint");if(t+n>o)throw new RangeError("Trying to access beyond buffer length")}Buffer$1.prototype.readUIntLE=function t(n,o,s){n=n|0,o=o|0,s||checkOffset(n,o,this.length);for(var c=this[n],d=1,h=0;++h<o&&(d*=256);)c+=this[n+h]*d;return c},Buffer$1.prototype.readUIntBE=function t(n,o,s){n=n|0,o=o|0,s||checkOffset(n,o,this.length);for(var c=this[n+--o],d=1;o>0&&(d*=256);)c+=this[n+--o]*d;return c},Buffer$1.prototype.readUInt8=function t(n,o){return o||checkOffset(n,1,this.length),this[n]},Buffer$1.prototype.readUInt16LE=function t(n,o){return o||checkOffset(n,2,this.length),this[n]|this[n+1]<<8},Buffer$1.prototype.readUInt16BE=function t(n,o){return o||checkOffset(n,2,this.length),this[n]<<8|this[n+1]},Buffer$1.prototype.readUInt32LE=function t(n,o){return o||checkOffset(n,4,this.length),(this[n]|this[n+1]<<8|this[n+2]<<16)+this[n+3]*16777216},Buffer$1.prototype.readUInt32BE=function t(n,o){return o||checkOffset(n,4,this.length),this[n]*16777216+(this[n+1]<<16|this[n+2]<<8|this[n+3])},Buffer$1.prototype.readIntLE=function t(n,o,s){n=n|0,o=o|0,s||checkOffset(n,o,this.length);for(var c=this[n],d=1,h=0;++h<o&&(d*=256);)c+=this[n+h]*d;return d*=128,c>=d&&(c-=Math.pow(2,8*o)),c},Buffer$1.prototype.readIntBE=function t(n,o,s){n=n|0,o=o|0,s||checkOffset(n,o,this.length);for(var c=o,d=1,h=this[n+--c];c>0&&(d*=256);)h+=this[n+--c]*d;return d*=128,h>=d&&(h-=Math.pow(2,8*o)),h},Buffer$1.prototype.readInt8=function t(n,o){return o||checkOffset(n,1,this.length),this[n]&128?(255-this[n]+1)*-1:this[n]},Buffer$1.prototype.readInt16LE=function t(n,o){o||checkOffset(n,2,this.length);var s=this[n]|this[n+1]<<8;return s&32768?s|4294901760:s},Buffer$1.prototype.readInt16BE=function t(n,o){o||checkOffset(n,2,this.length);var s=this[n+1]|this[n]<<8;return s&32768?s|4294901760:s},Buffer$1.prototype.readInt32LE=function t(n,o){return o||checkOffset(n,4,this.length),this[n]|this[n+1]<<8|this[n+2]<<16|this[n+3]<<24},Buffer$1.prototype.readInt32BE=function t(n,o){return o||checkOffset(n,4,this.length),this[n]<<24|this[n+1]<<16|this[n+2]<<8|this[n+3]},Buffer$1.prototype.readFloatLE=function t(n,o){return o||checkOffset(n,4,this.length),read(this,n,!0,23,4)},Buffer$1.prototype.readFloatBE=function t(n,o){return o||checkOffset(n,4,this.length),read(this,n,!1,23,4)},Buffer$1.prototype.readDoubleLE=function t(n,o){return o||checkOffset(n,8,this.length),read(this,n,!0,52,8)},Buffer$1.prototype.readDoubleBE=function t(n,o){return o||checkOffset(n,8,this.length),read(this,n,!1,52,8)};function checkInt(t,n,o,s,c,d){if(!internalIsBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(n>c||n<d)throw new RangeError('"value" argument is out of bounds');if(o+s>t.length)throw new RangeError("Index out of range")}Buffer$1.prototype.writeUIntLE=function t(n,o,s,c){if(n=+n,o=o|0,s=s|0,!c){var d=Math.pow(2,8*s)-1;checkInt(this,n,o,s,d,0)}var h=1,p=0;for(this[o]=n&255;++p<s&&(h*=256);)this[o+p]=n/h&255;return o+s},Buffer$1.prototype.writeUIntBE=function t(n,o,s,c){if(n=+n,o=o|0,s=s|0,!c){var d=Math.pow(2,8*s)-1;checkInt(this,n,o,s,d,0)}var h=s-1,p=1;for(this[o+h]=n&255;--h>=0&&(p*=256);)this[o+h]=n/p&255;return o+s},Buffer$1.prototype.writeUInt8=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,1,255,0),Buffer$1.TYPED_ARRAY_SUPPORT||(n=Math.floor(n)),this[o]=n&255,o+1};function objectWriteUInt16(t,n,o,s){n<0&&(n=65535+n+1);for(var c=0,d=Math.min(t.length-o,2);c<d;++c)t[o+c]=(n&255<<8*(s?c:1-c))>>>(s?c:1-c)*8}Buffer$1.prototype.writeUInt16LE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,2,65535,0),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n&255,this[o+1]=n>>>8):objectWriteUInt16(this,n,o,!0),o+2},Buffer$1.prototype.writeUInt16BE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,2,65535,0),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n>>>8,this[o+1]=n&255):objectWriteUInt16(this,n,o,!1),o+2};function objectWriteUInt32(t,n,o,s){n<0&&(n=4294967295+n+1);for(var c=0,d=Math.min(t.length-o,4);c<d;++c)t[o+c]=n>>>(s?c:3-c)*8&255}Buffer$1.prototype.writeUInt32LE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,4,4294967295,0),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o+3]=n>>>24,this[o+2]=n>>>16,this[o+1]=n>>>8,this[o]=n&255):objectWriteUInt32(this,n,o,!0),o+4},Buffer$1.prototype.writeUInt32BE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,4,4294967295,0),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n>>>24,this[o+1]=n>>>16,this[o+2]=n>>>8,this[o+3]=n&255):objectWriteUInt32(this,n,o,!1),o+4},Buffer$1.prototype.writeIntLE=function t(n,o,s,c){if(n=+n,o=o|0,!c){var d=Math.pow(2,8*s-1);checkInt(this,n,o,s,d-1,-d)}var h=0,p=1,y=0;for(this[o]=n&255;++h<s&&(p*=256);)n<0&&y===0&&this[o+h-1]!==0&&(y=1),this[o+h]=(n/p>>0)-y&255;return o+s},Buffer$1.prototype.writeIntBE=function t(n,o,s,c){if(n=+n,o=o|0,!c){var d=Math.pow(2,8*s-1);checkInt(this,n,o,s,d-1,-d)}var h=s-1,p=1,y=0;for(this[o+h]=n&255;--h>=0&&(p*=256);)n<0&&y===0&&this[o+h+1]!==0&&(y=1),this[o+h]=(n/p>>0)-y&255;return o+s},Buffer$1.prototype.writeInt8=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,1,127,-128),Buffer$1.TYPED_ARRAY_SUPPORT||(n=Math.floor(n)),n<0&&(n=255+n+1),this[o]=n&255,o+1},Buffer$1.prototype.writeInt16LE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,2,32767,-32768),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n&255,this[o+1]=n>>>8):objectWriteUInt16(this,n,o,!0),o+2},Buffer$1.prototype.writeInt16BE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,2,32767,-32768),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n>>>8,this[o+1]=n&255):objectWriteUInt16(this,n,o,!1),o+2},Buffer$1.prototype.writeInt32LE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,4,2147483647,-2147483648),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n&255,this[o+1]=n>>>8,this[o+2]=n>>>16,this[o+3]=n>>>24):objectWriteUInt32(this,n,o,!0),o+4},Buffer$1.prototype.writeInt32BE=function t(n,o,s){return n=+n,o=o|0,s||checkInt(this,n,o,4,2147483647,-2147483648),n<0&&(n=4294967295+n+1),Buffer$1.TYPED_ARRAY_SUPPORT?(this[o]=n>>>24,this[o+1]=n>>>16,this[o+2]=n>>>8,this[o+3]=n&255):objectWriteUInt32(this,n,o,!1),o+4};function checkIEEE754(t,n,o,s,c,d){if(o+s>t.length)throw new RangeError("Index out of range");if(o<0)throw new RangeError("Index out of range")}function writeFloat(t,n,o,s,c){return c||checkIEEE754(t,n,o,4),write(t,n,o,s,23,4),o+4}Buffer$1.prototype.writeFloatLE=function t(n,o,s){return writeFloat(this,n,o,!0,s)},Buffer$1.prototype.writeFloatBE=function t(n,o,s){return writeFloat(this,n,o,!1,s)};function writeDouble(t,n,o,s,c){return c||checkIEEE754(t,n,o,8),write(t,n,o,s,52,8),o+8}Buffer$1.prototype.writeDoubleLE=function t(n,o,s){return writeDouble(this,n,o,!0,s)},Buffer$1.prototype.writeDoubleBE=function t(n,o,s){return writeDouble(this,n,o,!1,s)},Buffer$1.prototype.copy=function t(n,o,s,c){if(s||(s=0),!c&&c!==0&&(c=this.length),o>=n.length&&(o=n.length),o||(o=0),c>0&&c<s&&(c=s),c===s||n.length===0||this.length===0)return 0;if(o<0)throw new RangeError("targetStart out of bounds");if(s<0||s>=this.length)throw new RangeError("sourceStart out of bounds");if(c<0)throw new RangeError("sourceEnd out of bounds");c>this.length&&(c=this.length),n.length-o<c-s&&(c=n.length-o+s);var d=c-s,h;if(this===n&&s<o&&o<c)for(h=d-1;h>=0;--h)n[h+o]=this[h+s];else if(d<1e3||!Buffer$1.TYPED_ARRAY_SUPPORT)for(h=0;h<d;++h)n[h+o]=this[h+s];else Uint8Array.prototype.set.call(n,this.subarray(s,s+d),o);return d},Buffer$1.prototype.fill=function t(n,o,s,c){if(typeof n=="string"){if(typeof o=="string"?(c=o,o=0,s=this.length):typeof s=="string"&&(c=s,s=this.length),n.length===1){var d=n.charCodeAt(0);d<256&&(n=d)}if(c!==void 0&&typeof c!="string")throw new TypeError("encoding must be a string");if(typeof c=="string"&&!Buffer$1.isEncoding(c))throw new TypeError("Unknown encoding: "+c)}else typeof n=="number"&&(n=n&255);if(o<0||this.length<o||this.length<s)throw new RangeError("Out of range index");if(s<=o)return this;o=o>>>0,s=s===void 0?this.length:s>>>0,n||(n=0);var h;if(typeof n=="number")for(h=o;h<s;++h)this[h]=n;else{var p=internalIsBuffer(n)?n:utf8ToBytes(new Buffer$1(n,c).toString()),y=p.length;for(h=0;h<s-o;++h)this[h+o]=p[h%y]}return this};var INVALID_BASE64_RE=/[^+\/0-9A-Za-z-_]/g;function base64clean(t){if(t=stringtrim(t).replace(INVALID_BASE64_RE,""),t.length<2)return"";for(;t.length%4!==0;)t=t+"=";return t}function stringtrim(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function toHex(t){return t<16?"0"+t.toString(16):t.toString(16)}function utf8ToBytes(t,n){n=n||1/0;for(var o,s=t.length,c=null,d=[],h=0;h<s;++h){if(o=t.charCodeAt(h),o>55295&&o<57344){if(!c){if(o>56319){(n-=3)>-1&&d.push(239,191,189);continue}else if(h+1===s){(n-=3)>-1&&d.push(239,191,189);continue}c=o;continue}if(o<56320){(n-=3)>-1&&d.push(239,191,189),c=o;continue}o=(c-55296<<10|o-56320)+65536}else c&&(n-=3)>-1&&d.push(239,191,189);if(c=null,o<128){if((n-=1)<0)break;d.push(o)}else if(o<2048){if((n-=2)<0)break;d.push(o>>6|192,o&63|128)}else if(o<65536){if((n-=3)<0)break;d.push(o>>12|224,o>>6&63|128,o&63|128)}else if(o<1114112){if((n-=4)<0)break;d.push(o>>18|240,o>>12&63|128,o>>6&63|128,o&63|128)}else throw new Error("Invalid code point")}return d}function asciiToBytes(t){for(var n=[],o=0;o<t.length;++o)n.push(t.charCodeAt(o)&255);return n}function utf16leToBytes(t,n){for(var o,s,c,d=[],h=0;h<t.length&&!((n-=2)<0);++h)o=t.charCodeAt(h),s=o>>8,c=o%256,d.push(c),d.push(s);return d}function base64ToBytes(t){return toByteArray(base64clean(t))}function blitBuffer(t,n,o,s){for(var c=0;c<s&&!(c+o>=n.length||c>=t.length);++c)n[c+o]=t[c];return c}function isnan(t){return t!==t}function isBuffer(t){return t!=null&&(!!t._isBuffer||isFastBuffer(t)||isSlowBuffer(t))}function isFastBuffer(t){return!!t.constructor&&typeof t.constructor.isBuffer=="function"&&t.constructor.isBuffer(t)}function isSlowBuffer(t){return typeof t.readFloatLE=="function"&&typeof t.slice=="function"&&isFastBuffer(t.slice(0,0))}var domain;function EventHandlers(){}EventHandlers.prototype=Object.create(null);function EventEmitter(){EventEmitter.init.call(this)}EventEmitter.EventEmitter=EventEmitter,EventEmitter.usingDomains=!1,EventEmitter.prototype.domain=void 0,EventEmitter.prototype._events=void 0,EventEmitter.prototype._maxListeners=void 0,EventEmitter.defaultMaxListeners=10,EventEmitter.init=function(){this.domain=null,EventEmitter.usingDomains&&domain.active,(!this._events||this._events===Object.getPrototypeOf(this)._events)&&(this._events=new EventHandlers,this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},EventEmitter.prototype.setMaxListeners=function t(n){if(typeof n!="number"||n<0||isNaN(n))throw new TypeError('"n" argument must be a positive number');return this._maxListeners=n,this};function $getMaxListeners(t){return t._maxListeners===void 0?EventEmitter.defaultMaxListeners:t._maxListeners}EventEmitter.prototype.getMaxListeners=function t(){return $getMaxListeners(this)};function emitNone(t,n,o){if(n)t.call(o);else for(var s=t.length,c=arrayClone(t,s),d=0;d<s;++d)c[d].call(o)}function emitOne(t,n,o,s){if(n)t.call(o,s);else for(var c=t.length,d=arrayClone(t,c),h=0;h<c;++h)d[h].call(o,s)}function emitTwo(t,n,o,s,c){if(n)t.call(o,s,c);else for(var d=t.length,h=arrayClone(t,d),p=0;p<d;++p)h[p].call(o,s,c)}function emitThree(t,n,o,s,c,d){if(n)t.call(o,s,c,d);else for(var h=t.length,p=arrayClone(t,h),y=0;y<h;++y)p[y].call(o,s,c,d)}function emitMany(t,n,o,s){if(n)t.apply(o,s);else for(var c=t.length,d=arrayClone(t,c),h=0;h<c;++h)d[h].apply(o,s)}EventEmitter.prototype.emit=function t(n){var o,s,c,d,h,p,y,S=n==="error";if(p=this._events,p)S=S&&p.error==null;else if(!S)return!1;if(y=this.domain,S){if(o=arguments[1],y)o||(o=new Error('Uncaught, unspecified "error" event')),o.domainEmitter=this,o.domain=y,o.domainThrown=!1,y.emit("error",o);else{if(o instanceof Error)throw o;var P=new Error('Uncaught, unspecified "error" event. ('+o+")");throw P.context=o,P}return!1}if(s=p[n],!s)return!1;var L=typeof s=="function";switch(c=arguments.length,c){case 1:emitNone(s,L,this);break;case 2:emitOne(s,L,this,arguments[1]);break;case 3:emitTwo(s,L,this,arguments[1],arguments[2]);break;case 4:emitThree(s,L,this,arguments[1],arguments[2],arguments[3]);break;default:for(d=new Array(c-1),h=1;h<c;h++)d[h-1]=arguments[h];emitMany(s,L,this,d)}return!0};function _addListener(t,n,o,s){var c,d,h;if(typeof o!="function")throw new TypeError('"listener" argument must be a function');if(d=t._events,d?(d.newListener&&(t.emit("newListener",n,o.listener?o.listener:o),d=t._events),h=d[n]):(d=t._events=new EventHandlers,t._eventsCount=0),!h)h=d[n]=o,++t._eventsCount;else if(typeof h=="function"?h=d[n]=s?[o,h]:[h,o]:s?h.unshift(o):h.push(o),!h.warned&&(c=$getMaxListeners(t),c&&c>0&&h.length>c)){h.warned=!0;var p=new Error("Possible EventEmitter memory leak detected. "+h.length+" "+n+" listeners added. Use emitter.setMaxListeners() to increase limit");p.name="MaxListenersExceededWarning",p.emitter=t,p.type=n,p.count=h.length,emitWarning(p)}return t}function emitWarning(t){typeof console.warn=="function"?console.warn(t):console.log(t)}EventEmitter.prototype.addListener=function t(n,o){return _addListener(this,n,o,!1)},EventEmitter.prototype.on=EventEmitter.prototype.addListener,EventEmitter.prototype.prependListener=function t(n,o){return _addListener(this,n,o,!0)};function _onceWrap(t,n,o){var s=!1;function c(){t.removeListener(n,c),s||(s=!0,o.apply(t,arguments))}return c.listener=o,c}EventEmitter.prototype.once=function t(n,o){if(typeof o!="function")throw new TypeError('"listener" argument must be a function');return this.on(n,_onceWrap(this,n,o)),this},EventEmitter.prototype.prependOnceListener=function t(n,o){if(typeof o!="function")throw new TypeError('"listener" argument must be a function');return this.prependListener(n,_onceWrap(this,n,o)),this},EventEmitter.prototype.removeListener=function t(n,o){var s,c,d,h,p;if(typeof o!="function")throw new TypeError('"listener" argument must be a function');if(c=this._events,!c)return this;if(s=c[n],!s)return this;if(s===o||s.listener&&s.listener===o)--this._eventsCount===0?this._events=new EventHandlers:(delete c[n],c.removeListener&&this.emit("removeListener",n,s.listener||o));else if(typeof s!="function"){for(d=-1,h=s.length;h-- >0;)if(s[h]===o||s[h].listener&&s[h].listener===o){p=s[h].listener,d=h;break}if(d<0)return this;if(s.length===1){if(s[0]=void 0,--this._eventsCount===0)return this._events=new EventHandlers,this;delete c[n]}else spliceOne(s,d);c.removeListener&&this.emit("removeListener",n,p||o)}return this},EventEmitter.prototype.removeAllListeners=function t(n){var o,s;if(s=this._events,!s)return this;if(!s.removeListener)return arguments.length===0?(this._events=new EventHandlers,this._eventsCount=0):s[n]&&(--this._eventsCount===0?this._events=new EventHandlers:delete s[n]),this;if(arguments.length===0){for(var c=Object.keys(s),d=0,h;d<c.length;++d)h=c[d],h!=="removeListener"&&this.removeAllListeners(h);return this.removeAllListeners("removeListener"),this._events=new EventHandlers,this._eventsCount=0,this}if(o=s[n],typeof o=="function")this.removeListener(n,o);else if(o)do this.removeListener(n,o[o.length-1]);while(o[0]);return this},EventEmitter.prototype.listeners=function t(n){var o,s,c=this._events;return c?(o=c[n],o?typeof o=="function"?s=[o.listener||o]:s=unwrapListeners(o):s=[]):s=[],s},EventEmitter.listenerCount=function(t,n){return typeof t.listenerCount=="function"?t.listenerCount(n):listenerCount$1.call(t,n)},EventEmitter.prototype.listenerCount=listenerCount$1;function listenerCount$1(t){var n=this._events;if(n){var o=n[t];if(typeof o=="function")return 1;if(o)return o.length}return 0}EventEmitter.prototype.eventNames=function t(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};function spliceOne(t,n){for(var o=n,s=o+1,c=t.length;s<c;o+=1,s+=1)t[o]=t[s];t.pop()}function arrayClone(t,n){for(var o=new Array(n);n--;)o[n]=t[n];return o}function unwrapListeners(t){for(var n=new Array(t.length),o=0;o<n.length;++o)n[o]=t[o].listener||t[o];return n}function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}var cachedSetTimeout=defaultSetTimout,cachedClearTimeout=defaultClearTimeout;typeof global$1.setTimeout=="function"&&(cachedSetTimeout=setTimeout),typeof global$1.clearTimeout=="function"&&(cachedClearTimeout=clearTimeout);function runTimeout(t){if(cachedSetTimeout===setTimeout)return setTimeout(t,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(t,0);try{return cachedSetTimeout(t,0)}catch{try{return cachedSetTimeout.call(null,t,0)}catch{return cachedSetTimeout.call(this,t,0)}}}function runClearTimeout(t){if(cachedClearTimeout===clearTimeout)return clearTimeout(t);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(t);try{return cachedClearTimeout(t)}catch{try{return cachedClearTimeout.call(null,t)}catch{return cachedClearTimeout.call(this,t)}}}var queue=[],draining=!1,currentQueue,queueIndex=-1;function cleanUpNextTick(){!draining||!currentQueue||(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var t=runTimeout(cleanUpNextTick);draining=!0;for(var n=queue.length;n;){for(currentQueue=queue,queue=[];++queueIndex<n;)currentQueue&¤tQueue[queueIndex].run();queueIndex=-1,n=queue.length}currentQueue=null,draining=!1,runClearTimeout(t)}}function nextTick(t){var n=new Array(arguments.length-1);if(arguments.length>1)for(var o=1;o<arguments.length;o++)n[o-1]=arguments[o];queue.push(new Item(t,n)),queue.length===1&&!draining&&runTimeout(drainQueue)}function Item(t,n){this.fun=t,this.array=n}Item.prototype.run=function(){this.fun.apply(null,this.array)};var title="browser",platform="browser",browser=!0,env={},argv=[],version="",versions={},release={},config={};function noop(){}var on=noop,addListener=noop,once=noop,off=noop,removeListener=noop,removeAllListeners=noop,emit=noop;function binding(t){throw new Error("process.binding is not supported")}function cwd(){return"/"}function chdir(t){throw new Error("process.chdir is not supported")}function umask(){return 0}var performance$1=global$1.performance||{},performanceNow=performance$1.now||performance$1.mozNow||performance$1.msNow||performance$1.oNow||performance$1.webkitNow||function(){return new Date().getTime()};function hrtime(t){var n=performanceNow.call(performance$1)*.001,o=Math.floor(n),s=Math.floor(n%1*1e9);return t&&(o=o-t[0],s=s-t[1],s<0&&(o--,s+=1e9)),[o,s]}var startTime=new Date;function uptime(){var t=new Date,n=t-startTime;return n/1e3}var process$1={nextTick,title,browser,env,argv,version,versions,on,addListener,once,off,removeListener,removeAllListeners,emit,binding,cwd,chdir,umask,hrtime,platform,release,config,uptime},inherits;typeof Object.create=="function"?inherits=function(n,o){n.super_=o,n.prototype=Object.create(o.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}})}:inherits=function(n,o){n.super_=o;var s=function(){};s.prototype=o.prototype,n.prototype=new s,n.prototype.constructor=n};var inherits$1=inherits,formatRegExp=/%[sdj%]/g;function format(t){if(!isString(t)){for(var n=[],o=0;o<arguments.length;o++)n.push(inspect(arguments[o]));return n.join(" ")}for(var o=1,s=arguments,c=s.length,d=String(t).replace(formatRegExp,function(p){if(p==="%%")return"%";if(o>=c)return p;switch(p){case"%s":return String(s[o++]);case"%d":return Number(s[o++]);case"%j":try{return JSON.stringify(s[o++])}catch{return"[Circular]"}default:return p}}),h=s[o];o<c;h=s[++o])isNull(h)||!isObject(h)?d+=" "+h:d+=" "+inspect(h);return d}function deprecate(t,n){if(isUndefined(global$1.process))return function(){return deprecate(t,n).apply(this,arguments)};if(process$1.noDeprecation===!0)return t;var o=!1;function s(){if(!o){if(process$1.throwDeprecation)throw new Error(n);process$1.traceDeprecation?console.trace(n):console.error(n),o=!0}return t.apply(this,arguments)}return s}var debugs={},debugEnviron;function debuglog(t){if(isUndefined(debugEnviron)&&(debugEnviron=process$1.env.NODE_DEBUG||""),t=t.toUpperCase(),!debugs[t])if(new RegExp("\\b"+t+"\\b","i").test(debugEnviron)){var n=0;debugs[t]=function(){var o=format.apply(null,arguments);console.error("%s %d: %s",t,n,o)}}else debugs[t]=function(){};return debugs[t]}function inspect(t,n){var o={seen:[],stylize:stylizeNoColor};return arguments.length>=3&&(o.depth=arguments[2]),arguments.length>=4&&(o.colors=arguments[3]),isBoolean(n)?o.showHidden=n:n&&_extend(o,n),isUndefined(o.showHidden)&&(o.showHidden=!1),isUndefined(o.depth)&&(o.depth=2),isUndefined(o.colors)&&(o.colors=!1),isUndefined(o.customInspect)&&(o.customInspect=!0),o.colors&&(o.stylize=stylizeWithColor),formatValue(o,t,o.depth)}inspect.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},inspect.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function stylizeWithColor(t,n){var o=inspect.styles[n];return o?"\x1B["+inspect.colors[o][0]+"m"+t+"\x1B["+inspect.colors[o][1]+"m":t}function stylizeNoColor(t,n){return t}function arrayToHash(t){var n={};return t.forEach(function(o,s){n[o]=!0}),n}function formatValue(t,n,o){if(t.customInspect&&n&&isFunction(n.inspect)&&n.inspect!==inspect&&!(n.constructor&&n.constructor.prototype===n)){var s=n.inspect(o,t);return isString(s)||(s=formatValue(t,s,o)),s}var c=formatPrimitive(t,n);if(c)return c;var d=Object.keys(n),h=arrayToHash(d);if(t.showHidden&&(d=Object.getOwnPropertyNames(n)),isError(n)&&(d.indexOf("message")>=0||d.indexOf("description")>=0))return formatError(n);if(d.length===0){if(isFunction(n)){var p=n.name?": "+n.name:"";return t.stylize("[Function"+p+"]","special")}if(isRegExp(n))return t.stylize(RegExp.prototype.toString.call(n),"regexp");if(isDate(n))return t.stylize(Date.prototype.toString.call(n),"date");if(isError(n))return formatError(n)}var y="",S=!1,P=["{","}"];if(isArray(n)&&(S=!0,P=["[","]"]),isFunction(n)){var L=n.name?": "+n.name:"";y=" [Function"+L+"]"}if(isRegExp(n)&&(y=" "+RegExp.prototype.toString.call(n)),isDate(n)&&(y=" "+Date.prototype.toUTCString.call(n)),isError(n)&&(y=" "+formatError(n)),d.length===0&&(!S||n.length==0))return P[0]+y+P[1];if(o<0)return isRegExp(n)?t.stylize(RegExp.prototype.toString.call(n),"regexp"):t.stylize("[Object]","special");t.seen.push(n);var F;return S?F=formatArray(t,n,o,h,d):F=d.map(function(N){return formatProperty(t,n,o,h,N,S)}),t.seen.pop(),reduceToSingleString(F,y,P)}function formatPrimitive(t,n){if(isUndefined(n))return t.stylize("undefined","undefined");if(isString(n)){var o="'"+JSON.stringify(n).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(o,"string")}if(isNumber(n))return t.stylize(""+n,"number");if(isBoolean(n))return t.stylize(""+n,"boolean");if(isNull(n))return t.stylize("null","null")}function formatError(t){return"["+Error.prototype.toString.call(t)+"]"}function formatArray(t,n,o,s,c){for(var d=[],h=0,p=n.length;h<p;++h)hasOwnProperty(n,String(h))?d.push(formatProperty(t,n,o,s,String(h),!0)):d.push("");return c.forEach(function(y){y.match(/^\d+$/)||d.push(formatProperty(t,n,o,s,y,!0))}),d}function formatProperty(t,n,o,s,c,d){var h,p,y;if(y=Object.getOwnPropertyDescriptor(n,c)||{value:n[c]},y.get?y.set?p=t.stylize("[Getter/Setter]","special"):p=t.stylize("[Getter]","special"):y.set&&(p=t.stylize("[Setter]","special")),hasOwnProperty(s,c)||(h="["+c+"]"),p||(t.seen.indexOf(y.value)<0?(isNull(o)?p=formatValue(t,y.value,null):p=formatValue(t,y.value,o-1),p.indexOf(`
|
|
6746
6746
|
`)>-1&&(d?p=p.split(`
|
|
6747
6747
|
`).map(function(S){return" "+S}).join(`
|
|
6748
6748
|
`).substr(2):p=`
|