@reearth/core 0.0.7-alpha.28 → 0.0.7-alpha.29

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
@@ -1,4 +1,4 @@
1
- (function(_m,Om){typeof exports=="object"&&typeof module<"u"?Om(exports,require("react"),require("cesium"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react","cesium","react-dom"],Om):(_m=typeof globalThis<"u"?globalThis:_m||self,Om(_m["@reearth/core"]={},_m.React,_m.Cesium))})(this,function(exports,React,Cesium$1){"use strict";var ug=Object.defineProperty;var dg=(_m,Om,$m)=>Om in _m?ug(_m,Om,{enumerable:!0,configurable:!0,writable:!0,value:$m}):_m[Om]=$m;var Ef=(_m,Om,$m)=>(dg(_m,typeof Om!="symbol"?Om+"":Om,$m),$m),ng=(_m,Om,$m)=>{if(!Om.has(_m))throw TypeError("Cannot "+$m)};var ef=(_m,Om,$m)=>(ng(_m,Om,"read from private field"),$m?$m.call(_m):Om.get(_m)),Kf=(_m,Om,$m)=>{if(Om.has(_m))throw TypeError("Cannot add the same private member more than once");Om instanceof WeakSet?Om.add(_m):Om.set(_m,$m)},zf=(_m,Om,$m,up)=>(ng(_m,Om,"write to private field"),up?up.call(_m,$m):Om.set(_m,$m),$m);var Qp=(_m,Om,$m,up)=>({set _(Sp){zf(_m,Om,Sp,$m)},get _(){return ef(_m,Om,up)}}),Nf=(_m,Om,$m)=>(ng(_m,Om,"access private method"),$m);var _m,$m,up,Sp,Ep,zp,cp,Tp,lp,rp,$f,bp,_p,gp,dp,wp,mp,Vp,Lp,Rp,Mp,Fp,vp,Bp,ig,Dp,Op,$p,xp,Jp,cg,Np,Up,Hp,Pp,Ap,Ip,Gp,Yp,rg,Xp,qp,Wp,eg,ip,ap,jp,ag,kp,Kp;var _documentCurrentScript=typeof document<"u"?document.currentScript:null;function _interopNamespaceDefault(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const o in t)if(o!=="default"){const s=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(n,o,s.get?s:{enumerable:!0,get:()=>t[o]})}}return n.default=t,Object.freeze(n)}const React__namespace=_interopNamespaceDefault(React),Cesium__namespace=_interopNamespaceDefault(Cesium$1);var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function getDefaultExportFromCjs(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var jsxRuntime$1={exports:{}},reactJsxRuntime_production_min={};/**
1
+ (function(_m,Om){typeof exports=="object"&&typeof module<"u"?Om(exports,require("react"),require("cesium"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react","cesium","react-dom"],Om):(_m=typeof globalThis<"u"?globalThis:_m||self,Om(_m["@reearth/core"]={},_m.React,_m.Cesium))})(this,function(exports,React,Cesium$1){"use strict";var ug=Object.defineProperty;var dg=(_m,Om,$m)=>Om in _m?ug(_m,Om,{enumerable:!0,configurable:!0,writable:!0,value:$m}):_m[Om]=$m;var Ef=(_m,Om,$m)=>(dg(_m,typeof Om!="symbol"?Om+"":Om,$m),$m),ng=(_m,Om,$m)=>{if(!Om.has(_m))throw TypeError("Cannot "+$m)};var ef=(_m,Om,$m)=>(ng(_m,Om,"read from private field"),$m?$m.call(_m):Om.get(_m)),Kf=(_m,Om,$m)=>{if(Om.has(_m))throw TypeError("Cannot add the same private member more than once");Om instanceof WeakSet?Om.add(_m):Om.set(_m,$m)},zf=(_m,Om,$m,dp)=>(ng(_m,Om,"write to private field"),dp?dp.call(_m,$m):Om.set(_m,$m),$m);var Qp=(_m,Om,$m,dp)=>({set _(Sp){zf(_m,Om,Sp,$m)},get _(){return ef(_m,Om,dp)}}),Nf=(_m,Om,$m)=>(ng(_m,Om,"access private method"),$m);var _m,$m,dp,Sp,Ep,zp,cp,Tp,lp,rp,$f,bp,_p,gp,hp,wp,pp,Vp,Lp,Rp,Mp,Fp,vp,Bp,ig,Dp,Op,$p,xp,Jp,cg,Np,Up,Hp,Pp,Ap,Ip,Gp,Yp,rg,Xp,qp,Wp,eg,ip,ap,jp,ag,kp,Kp;var _documentCurrentScript=typeof document<"u"?document.currentScript:null;function _interopNamespaceDefault(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const o in t)if(o!=="default"){const s=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(n,o,s.get?s:{enumerable:!0,get:()=>t[o]})}}return n.default=t,Object.freeze(n)}const React__namespace=_interopNamespaceDefault(React),Cesium__namespace=_interopNamespaceDefault(Cesium$1);var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function getDefaultExportFromCjs(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var jsxRuntime$1={exports:{}},reactJsxRuntime_production_min={};/**
2
2
  * @license React
3
3
  * react-jsx-runtime.production.min.js
4
4
  *
@@ -18,11 +18,11 @@
18
18
  `+uf+al}}var hf=!1,pf;{var _f=typeof WeakMap=="function"?WeakMap:Map;pf=new _f}function Vf(al,tf){if(!al||hf)return"";{var lf=pf.get(al);if(lf!==void 0)return lf}var yf;hf=!0;var If=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var Of;Of=cf.current,cf.current=null,Vd();try{if(tf){var Tf=function(){throw Error()};if(Object.defineProperty(Tf.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(Tf,[])}catch(op){yf=op}Reflect.construct(al,[],Tf)}else{try{Tf.call()}catch(op){yf=op}al.call(Tf.prototype)}}else{try{throw Error()}catch(op){yf=op}al()}}catch(op){if(op&&yf&&typeof op.stack=="string"){for(var Mf=op.stack.split(`
19
19
  `),Af=yf.stack.split(`
20
20
  `),Gf=Mf.length-1,Uf=Af.length-1;Gf>=1&&Uf>=0&&Mf[Gf]!==Af[Uf];)Uf--;for(;Gf>=1&&Uf>=0;Gf--,Uf--)if(Mf[Gf]!==Af[Uf]){if(Gf!==1||Uf!==1)do if(Gf--,Uf--,Uf<0||Mf[Gf]!==Af[Uf]){var jf=`
21
- `+Mf[Gf].replace(" at new "," at ");return al.displayName&&jf.includes("<anonymous>")&&(jf=jf.replace("<anonymous>",al.displayName)),typeof al=="function"&&pf.set(al,jf),jf}while(Gf>=1&&Uf>=0);break}}}finally{hf=!1,cf.current=Of,Gd(),Error.prepareStackTrace=If}var yp=al?al.displayName||al.name:"",pp=yp?gf(yp):"";return typeof al=="function"&&pf.set(al,pp),pp}function Rf(al,tf,lf){return Vf(al,!1)}function Wa(al){var tf=al.prototype;return!!(tf&&tf.isReactComponent)}function af(al,tf,lf){if(al==null)return"";if(typeof al=="function")return Vf(al,Wa(al));if(typeof al=="string")return gf(al);switch(al){case S:return gf("Suspense");case P:return gf("SuspenseList")}if(typeof al=="object")switch(al.$$typeof){case y:return Rf(al.render);case L:return af(al.type,tf,lf);case F:{var yf=al,If=yf._payload,Of=yf._init;try{return af(Of(If),tf,lf)}catch{}}}return""}var Xd=Object.prototype.hasOwnProperty,gd={},pd=Pe.ReactDebugCurrentFrame;function Zd(al){if(al){var tf=al._owner,lf=af(al.type,al._source,tf?tf.type:null);pd.setExtraStackFrame(lf)}else pd.setExtraStackFrame(null)}function sf(al,tf,lf,yf,If){{var Of=Function.call.bind(Xd);for(var Tf in al)if(Of(al,Tf)){var Mf=void 0;try{if(typeof al[Tf]!="function"){var Af=Error((yf||"React class")+": "+lf+" type `"+Tf+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof al[Tf]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw Af.name="Invariant Violation",Af}Mf=al[Tf](tf,Tf,yf,lf,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(Gf){Mf=Gf}Mf&&!(Mf instanceof Error)&&(Zd(If),se("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",yf||"React class",lf,Tf,typeof Mf),Zd(null)),Mf instanceof Error&&!(Mf.message in gd)&&(gd[Mf.message]=!0,Zd(If),se("Failed %s type: %s",lf,Mf.message),Zd(null))}}}var of=Array.isArray;function nf(al){return of(al)}function df(al){{var tf=typeof Symbol=="function"&&Symbol.toStringTag,lf=tf&&al[Symbol.toStringTag]||al.constructor.name||"Object";return lf}}function Cf(al){try{return ff(al),!1}catch{return!0}}function ff(al){return""+al}function xf(al){if(Cf(al))return se("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",df(al)),ff(al)}var wf=Pe.ReactCurrentOwner,Ff={key:!0,ref:!0,__self:!0,__source:!0},Hf,Jf;function Wf(al){if(Xd.call(al,"ref")){var tf=Object.getOwnPropertyDescriptor(al,"ref").get;if(tf&&tf.isReactWarning)return!1}return al.ref!==void 0}function Dm(al){if(Xd.call(al,"key")){var tf=Object.getOwnPropertyDescriptor(al,"key").get;if(tf&&tf.isReactWarning)return!1}return al.key!==void 0}function vf(al,tf){typeof al.ref=="string"&&wf.current}function mf(al,tf){{var lf=function(){Hf||(Hf=!0,se("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",tf))};lf.isReactWarning=!0,Object.defineProperty(al,"key",{get:lf,configurable:!0})}}function Lf(al,tf){{var lf=function(){Jf||(Jf=!0,se("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",tf))};lf.isReactWarning=!0,Object.defineProperty(al,"ref",{get:lf,configurable:!0})}}var Df=function(al,tf,lf,yf,If,Of,Tf){var Mf={$$typeof:n,type:al,key:tf,ref:lf,props:Tf,_owner:Of};return Mf._store={},Object.defineProperty(Mf._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(Mf,"_self",{configurable:!1,enumerable:!1,writable:!1,value:yf}),Object.defineProperty(Mf,"_source",{configurable:!1,enumerable:!1,writable:!1,value:If}),Object.freeze&&(Object.freeze(Mf.props),Object.freeze(Mf)),Mf};function kf(al,tf,lf,yf,If){{var Of,Tf={},Mf=null,Af=null;lf!==void 0&&(xf(lf),Mf=""+lf),Dm(tf)&&(xf(tf.key),Mf=""+tf.key),Wf(tf)&&(Af=tf.ref,vf(tf,If));for(Of in tf)Xd.call(tf,Of)&&!Ff.hasOwnProperty(Of)&&(Tf[Of]=tf[Of]);if(al&&al.defaultProps){var Gf=al.defaultProps;for(Of in Gf)Tf[Of]===void 0&&(Tf[Of]=Gf[Of])}if(Mf||Af){var Uf=typeof al=="function"?al.displayName||al.name||"Unknown":al;Mf&&mf(Tf,Uf),Af&&Lf(Tf,Uf)}return Df(al,Mf,Af,If,yf,wf.current,Tf)}}var Yf=Pe.ReactCurrentOwner,Qf=Pe.ReactDebugCurrentFrame;function Zf(al){if(al){var tf=al._owner,lf=af(al.type,al._source,tf?tf.type:null);Qf.setExtraStackFrame(lf)}else Qf.setExtraStackFrame(null)}var jm;jm=!1;function qf(al){return typeof al=="object"&&al!==null&&al.$$typeof===n}function qm(){{if(Yf.current){var al=yt(Yf.current.type);if(al)return`
21
+ `+Mf[Gf].replace(" at new "," at ");return al.displayName&&jf.includes("<anonymous>")&&(jf=jf.replace("<anonymous>",al.displayName)),typeof al=="function"&&pf.set(al,jf),jf}while(Gf>=1&&Uf>=0);break}}}finally{hf=!1,cf.current=Of,Gd(),Error.prepareStackTrace=If}var yp=al?al.displayName||al.name:"",up=yp?gf(yp):"";return typeof al=="function"&&pf.set(al,up),up}function Rf(al,tf,lf){return Vf(al,!1)}function Wa(al){var tf=al.prototype;return!!(tf&&tf.isReactComponent)}function af(al,tf,lf){if(al==null)return"";if(typeof al=="function")return Vf(al,Wa(al));if(typeof al=="string")return gf(al);switch(al){case S:return gf("Suspense");case P:return gf("SuspenseList")}if(typeof al=="object")switch(al.$$typeof){case y:return Rf(al.render);case L:return af(al.type,tf,lf);case F:{var yf=al,If=yf._payload,Of=yf._init;try{return af(Of(If),tf,lf)}catch{}}}return""}var Xd=Object.prototype.hasOwnProperty,gd={},pd=Pe.ReactDebugCurrentFrame;function Zd(al){if(al){var tf=al._owner,lf=af(al.type,al._source,tf?tf.type:null);pd.setExtraStackFrame(lf)}else pd.setExtraStackFrame(null)}function sf(al,tf,lf,yf,If){{var Of=Function.call.bind(Xd);for(var Tf in al)if(Of(al,Tf)){var Mf=void 0;try{if(typeof al[Tf]!="function"){var Af=Error((yf||"React class")+": "+lf+" type `"+Tf+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof al[Tf]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw Af.name="Invariant Violation",Af}Mf=al[Tf](tf,Tf,yf,lf,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(Gf){Mf=Gf}Mf&&!(Mf instanceof Error)&&(Zd(If),se("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",yf||"React class",lf,Tf,typeof Mf),Zd(null)),Mf instanceof Error&&!(Mf.message in gd)&&(gd[Mf.message]=!0,Zd(If),se("Failed %s type: %s",lf,Mf.message),Zd(null))}}}var of=Array.isArray;function nf(al){return of(al)}function df(al){{var tf=typeof Symbol=="function"&&Symbol.toStringTag,lf=tf&&al[Symbol.toStringTag]||al.constructor.name||"Object";return lf}}function Cf(al){try{return ff(al),!1}catch{return!0}}function ff(al){return""+al}function xf(al){if(Cf(al))return se("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",df(al)),ff(al)}var wf=Pe.ReactCurrentOwner,Ff={key:!0,ref:!0,__self:!0,__source:!0},Hf,Jf;function Wf(al){if(Xd.call(al,"ref")){var tf=Object.getOwnPropertyDescriptor(al,"ref").get;if(tf&&tf.isReactWarning)return!1}return al.ref!==void 0}function Dm(al){if(Xd.call(al,"key")){var tf=Object.getOwnPropertyDescriptor(al,"key").get;if(tf&&tf.isReactWarning)return!1}return al.key!==void 0}function vf(al,tf){typeof al.ref=="string"&&wf.current}function mf(al,tf){{var lf=function(){Hf||(Hf=!0,se("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",tf))};lf.isReactWarning=!0,Object.defineProperty(al,"key",{get:lf,configurable:!0})}}function Lf(al,tf){{var lf=function(){Jf||(Jf=!0,se("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",tf))};lf.isReactWarning=!0,Object.defineProperty(al,"ref",{get:lf,configurable:!0})}}var Df=function(al,tf,lf,yf,If,Of,Tf){var Mf={$$typeof:n,type:al,key:tf,ref:lf,props:Tf,_owner:Of};return Mf._store={},Object.defineProperty(Mf._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(Mf,"_self",{configurable:!1,enumerable:!1,writable:!1,value:yf}),Object.defineProperty(Mf,"_source",{configurable:!1,enumerable:!1,writable:!1,value:If}),Object.freeze&&(Object.freeze(Mf.props),Object.freeze(Mf)),Mf};function kf(al,tf,lf,yf,If){{var Of,Tf={},Mf=null,Af=null;lf!==void 0&&(xf(lf),Mf=""+lf),Dm(tf)&&(xf(tf.key),Mf=""+tf.key),Wf(tf)&&(Af=tf.ref,vf(tf,If));for(Of in tf)Xd.call(tf,Of)&&!Ff.hasOwnProperty(Of)&&(Tf[Of]=tf[Of]);if(al&&al.defaultProps){var Gf=al.defaultProps;for(Of in Gf)Tf[Of]===void 0&&(Tf[Of]=Gf[Of])}if(Mf||Af){var Uf=typeof al=="function"?al.displayName||al.name||"Unknown":al;Mf&&mf(Tf,Uf),Af&&Lf(Tf,Uf)}return Df(al,Mf,Af,If,yf,wf.current,Tf)}}var Yf=Pe.ReactCurrentOwner,Qf=Pe.ReactDebugCurrentFrame;function Zf(al){if(al){var tf=al._owner,lf=af(al.type,al._source,tf?tf.type:null);Qf.setExtraStackFrame(lf)}else Qf.setExtraStackFrame(null)}var jm;jm=!1;function qf(al){return typeof al=="object"&&al!==null&&al.$$typeof===n}function qm(){{if(Yf.current){var al=yt(Yf.current.type);if(al)return`
22
22
 
23
23
  Check the render method of \``+al+"`."}return""}}function ep(al){return""}var Sf={};function rf(al){{var tf=qm();if(!tf){var lf=typeof al=="string"?al:al.displayName||al.name;lf&&(tf=`
24
24
 
25
- Check the top-level render call using <`+lf+">.")}return tf}}function bf(al,tf){{if(!al._store||al._store.validated||al.key!=null)return;al._store.validated=!0;var lf=rf(tf);if(Sf[lf])return;Sf[lf]=!0;var yf="";al&&al._owner&&al._owner!==Yf.current&&(yf=" It was passed a child from "+yt(al._owner.type)+"."),Zf(al),se('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',lf,yf),Zf(null)}}function Pf(al,tf){{if(typeof al!="object")return;if(nf(al))for(var lf=0;lf<al.length;lf++){var yf=al[lf];qf(yf)&&bf(yf,tf)}else if(qf(al))al._store&&(al._store.validated=!0);else if(al){var If=lt(al);if(typeof If=="function"&&If!==al.entries)for(var Of=If.call(al),Tf;!(Tf=Of.next()).done;)qf(Tf.value)&&bf(Tf.value,tf)}}}function Xf(al){{var tf=al.type;if(tf==null||typeof tf=="string")return;var lf;if(typeof tf=="function")lf=tf.propTypes;else if(typeof tf=="object"&&(tf.$$typeof===y||tf.$$typeof===L))lf=tf.propTypes;else return;if(lf){var yf=yt(tf);sf(lf,al.props,"prop",yf,al)}else if(tf.PropTypes!==void 0&&!jm){jm=!0;var If=yt(tf);se("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",If||"Unknown")}typeof tf.getDefaultProps=="function"&&!tf.getDefaultProps.isReactClassApproved&&se("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Bf(al){{for(var tf=Object.keys(al.props),lf=0;lf<tf.length;lf++){var yf=tf[lf];if(yf!=="children"&&yf!=="key"){Zf(al),se("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",yf),Zf(null);break}}al.ref!==null&&(Zf(al),se("Invalid attribute `ref` supplied to `React.Fragment`."),Zf(null))}}function Am(al,tf,lf,yf,If,Of){{var Tf=La(al);if(!Tf){var Mf="";(al===void 0||typeof al=="object"&&al!==null&&Object.keys(al).length===0)&&(Mf+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var Af=ep();Af?Mf+=Af:Mf+=qm();var Gf;al===null?Gf="null":nf(al)?Gf="array":al!==void 0&&al.$$typeof===n?(Gf="<"+(yt(al.type)||"Unknown")+" />",Mf=" Did you accidentally export a JSX literal instead of a component?"):Gf=typeof al,se("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",Gf,Mf)}var Uf=kf(al,tf,lf,If,Of);if(Uf==null)return Uf;if(Tf){var jf=tf.children;if(jf!==void 0)if(yf)if(nf(jf)){for(var yp=0;yp<jf.length;yp++)Pf(jf[yp],al);Object.freeze&&Object.freeze(jf)}else se("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Pf(jf,al)}return al===s?Bf(Uf):Xf(Uf),Uf}}function tp(al,tf,lf){return Am(al,tf,lf,!0)}function sp(al,tf,lf){return Am(al,tf,lf,!1)}var hp=sp,fp=tp;reactJsxRuntime_development.Fragment=s,reactJsxRuntime_development.jsx=hp,reactJsxRuntime_development.jsxs=fp}()),reactJsxRuntime_development}process.env.NODE_ENV==="production"?jsxRuntime$1.exports=requireReactJsxRuntime_production_min():jsxRuntime$1.exports=requireReactJsxRuntime_development();var jsxRuntimeExports=jsxRuntime$1.exports;const FEATURE_FLAGS={CAMERA_MOVE:1,CAMERA_ZOOM:2,CAMERA_TILT:4,CAMERA_LOOK:8,SINGLE_SELECTION:16,MULTIPLE_SELECTION:32,SKETCH:64},INTERACTION_MODES={default:FEATURE_FLAGS.CAMERA_MOVE|FEATURE_FLAGS.CAMERA_ZOOM|FEATURE_FLAGS.CAMERA_LOOK|FEATURE_FLAGS.CAMERA_TILT|FEATURE_FLAGS.SINGLE_SELECTION,move:FEATURE_FLAGS.CAMERA_MOVE|FEATURE_FLAGS.CAMERA_ZOOM|FEATURE_FLAGS.CAMERA_LOOK|FEATURE_FLAGS.CAMERA_TILT,selection:FEATURE_FLAGS.SINGLE_SELECTION|FEATURE_FLAGS.MULTIPLE_SELECTION|FEATURE_FLAGS.CAMERA_ZOOM|FEATURE_FLAGS.CAMERA_TILT,sketch:FEATURE_FLAGS.SKETCH|FEATURE_FLAGS.CAMERA_ZOOM|FEATURE_FLAGS.CAMERA_TILT,spatialId:FEATURE_FLAGS.CAMERA_ZOOM|FEATURE_FLAGS.CAMERA_TILT};function useGet(t){const n=React.useRef(t);return n.current=t,React.useCallback(()=>n.current,[])}function wrapRef(t,n){return Object.fromEntries(Object.keys(n).map(o=>[o,(...s)=>{var c,d;return(d=(c=t.current)==null?void 0:c[o])==null?void 0:d.call(c,...s)}]))}const engineRefKeys={captureScreen:1,changeSceneMode:1,changeSpeed:1,changeTime:1,enableScreenSpaceCameraController:1,flyTo:1,flyToGround:1,getCamera:1,getCameraFovInfo:1,getClock:1,getLocationFromScreen:1,sampleTerrainHeight:1,computeGlobeHeight:1,getGlobeHeight:1,toXYZ:1,toLngLatHeight:1,convertScreenToPositionOffset:1,isPositionVisible:1,setView:1,toWindowPosition:1,getViewport:1,flyToBBox:1,rotateOnCenter:1,overrideScreenSpaceController:1,lookAt:1,lookAtLayer:1,lookHorizontal:1,lookVertical:1,moveBackward:1,moveDown:1,moveForward:1,moveLeft:1,moveOverTerrain:1,moveRight:1,moveUp:1,onClick:1,onDoubleClick:1,onMiddleClick:1,onMiddleDown:1,onMiddleUp:1,onMouseDown:1,onMouseEnter:1,onMouseLeave:1,onMouseMove:1,onMouseUp:1,onRightClick:1,onRightDown:1,onRightUp:1,onWheel:1,orbit:1,pause:1,play:1,requestRender:1,rotateRight:1,tick:1,zoomIn:1,zoomOut:1,changeStart:1,changeStop:1,inViewport:1,onTick:1,removeTickEventListener:1,findFeaturesByIds:1,findFeatureById:1,findComputedFeatureById:1,findComputedFeaturesByIds:1,selectFeatures:1,unselectFeatures:1,pickManyFromViewport:1,getExtrudedHeight:1,getExtrudedPoint:1,getSurfaceDistance:1,equalsEpsilon2d:1,equalsEpsilon3d:1,createGeometry:1,setCursor:1,bringToFront:1,sendToBack:1,calcRectangleControlPoint:1,getCredits:1},layersRefKeys={add:1,addAll:1,deleteLayer:1,find:1,findAll:1,findById:1,findByIds:1,findByTagLabels:1,findByTags:1,hide:1,isLayer:1,isComputedLayer:1,isTempLayer:1,layers:1,override:1,replace:1,select:1,selectFeature:1,selectFeatures:1,selectedLayer:1,selectedFeature:1,show:1,walk:1,overriddenLayers:1},sketchRefKeys={getType:1,setType:1,getOptions:1,overrideOptions:1,editFeature:1,applyEdit:1,cancelEdit:1,deleteFeature:1,onEditFeatureChange:1},spatialIdRefKeys={pickSpace:1,exitPickSpace:1,onSpacePick:1};function mapRef({engineRef:t,layersRef:n,sketchRef:o,spatialIdRef:s,timelineManagerRef:c}){return{engine:wrapRef(t,engineRefKeys),layers:wrapRef(n,layersRefKeys),sketch:wrapRef(o,sketchRefKeys),spatialId:wrapRef(s,spatialIdRefKeys),timeline:c}}var escapeStringRegexp=t=>{if(typeof t!="string")throw new TypeError("Expected a string");return t.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")};const escapeStringRegexp$1=getDefaultExportFromCjs(escapeStringRegexp);class StringMatcher{constructor(){Ef(this,"commands",[])}concat(...n){const o=new StringMatcher;return o.commands.push(...this.commands),n.forEach(s=>{o.commands.push(...s.commands)}),o}static match(n,o,s=!1){const c=Array.isArray(o)?new RegExp(o.map(h=>escapeStringRegexp$1(h)).join("\\s*"),"g"):new RegExp(escapeStringRegexp$1(o),"g"),d=[...n.matchAll(c)].filter(h=>h.index!=null);if(d==null||d.length===0)throw new Error(`No matching codes found for: "${o}"`);if(!s&&d.length>1)throw new Error(`Multiple codes found for: "${o}"`);return d}replace(n,o,s=!1){return this.commands.push(c=>{const d=StringMatcher.match(c,n,s),h=[0,...d.flatMap(y=>[y.index,y.index+y[0].length]),c.length],p=[];return h.reduce((y,S,P)=>(p.push(d[(P-2)/2]!=null?o:c.slice(y,S)),S),0),p.join("")}),this}insertBefore(n,o,s){return this.commands.push(c=>{const d=StringMatcher.match(c,n,s),h=[0,...d.flatMap(y=>[y.index,y.index+y[0].length]),c.length],p=[];return h.reduce((y,S,P)=>{const L=c.slice(y,S);return p.push(d[(P-2)/2]!=null?`${o}
25
+ Check the top-level render call using <`+lf+">.")}return tf}}function bf(al,tf){{if(!al._store||al._store.validated||al.key!=null)return;al._store.validated=!0;var lf=rf(tf);if(Sf[lf])return;Sf[lf]=!0;var yf="";al&&al._owner&&al._owner!==Yf.current&&(yf=" It was passed a child from "+yt(al._owner.type)+"."),Zf(al),se('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',lf,yf),Zf(null)}}function Pf(al,tf){{if(typeof al!="object")return;if(nf(al))for(var lf=0;lf<al.length;lf++){var yf=al[lf];qf(yf)&&bf(yf,tf)}else if(qf(al))al._store&&(al._store.validated=!0);else if(al){var If=lt(al);if(typeof If=="function"&&If!==al.entries)for(var Of=If.call(al),Tf;!(Tf=Of.next()).done;)qf(Tf.value)&&bf(Tf.value,tf)}}}function Xf(al){{var tf=al.type;if(tf==null||typeof tf=="string")return;var lf;if(typeof tf=="function")lf=tf.propTypes;else if(typeof tf=="object"&&(tf.$$typeof===y||tf.$$typeof===L))lf=tf.propTypes;else return;if(lf){var yf=yt(tf);sf(lf,al.props,"prop",yf,al)}else if(tf.PropTypes!==void 0&&!jm){jm=!0;var If=yt(tf);se("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",If||"Unknown")}typeof tf.getDefaultProps=="function"&&!tf.getDefaultProps.isReactClassApproved&&se("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Bf(al){{for(var tf=Object.keys(al.props),lf=0;lf<tf.length;lf++){var yf=tf[lf];if(yf!=="children"&&yf!=="key"){Zf(al),se("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",yf),Zf(null);break}}al.ref!==null&&(Zf(al),se("Invalid attribute `ref` supplied to `React.Fragment`."),Zf(null))}}function Am(al,tf,lf,yf,If,Of){{var Tf=La(al);if(!Tf){var Mf="";(al===void 0||typeof al=="object"&&al!==null&&Object.keys(al).length===0)&&(Mf+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var Af=ep();Af?Mf+=Af:Mf+=qm();var Gf;al===null?Gf="null":nf(al)?Gf="array":al!==void 0&&al.$$typeof===n?(Gf="<"+(yt(al.type)||"Unknown")+" />",Mf=" Did you accidentally export a JSX literal instead of a component?"):Gf=typeof al,se("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",Gf,Mf)}var Uf=kf(al,tf,lf,If,Of);if(Uf==null)return Uf;if(Tf){var jf=tf.children;if(jf!==void 0)if(yf)if(nf(jf)){for(var yp=0;yp<jf.length;yp++)Pf(jf[yp],al);Object.freeze&&Object.freeze(jf)}else se("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Pf(jf,al)}return al===s?Bf(Uf):Xf(Uf),Uf}}function tp(al,tf,lf){return Am(al,tf,lf,!0)}function sp(al,tf,lf){return Am(al,tf,lf,!1)}var fp=sp,mp=tp;reactJsxRuntime_development.Fragment=s,reactJsxRuntime_development.jsx=fp,reactJsxRuntime_development.jsxs=mp}()),reactJsxRuntime_development}process.env.NODE_ENV==="production"?jsxRuntime$1.exports=requireReactJsxRuntime_production_min():jsxRuntime$1.exports=requireReactJsxRuntime_development();var jsxRuntimeExports=jsxRuntime$1.exports;const FEATURE_FLAGS={CAMERA_MOVE:1,CAMERA_ZOOM:2,CAMERA_TILT:4,CAMERA_LOOK:8,SINGLE_SELECTION:16,MULTIPLE_SELECTION:32,SKETCH:64},INTERACTION_MODES={default:FEATURE_FLAGS.CAMERA_MOVE|FEATURE_FLAGS.CAMERA_ZOOM|FEATURE_FLAGS.CAMERA_LOOK|FEATURE_FLAGS.CAMERA_TILT|FEATURE_FLAGS.SINGLE_SELECTION,move:FEATURE_FLAGS.CAMERA_MOVE|FEATURE_FLAGS.CAMERA_ZOOM|FEATURE_FLAGS.CAMERA_LOOK|FEATURE_FLAGS.CAMERA_TILT,selection:FEATURE_FLAGS.SINGLE_SELECTION|FEATURE_FLAGS.MULTIPLE_SELECTION|FEATURE_FLAGS.CAMERA_ZOOM|FEATURE_FLAGS.CAMERA_TILT,sketch:FEATURE_FLAGS.SKETCH|FEATURE_FLAGS.CAMERA_ZOOM|FEATURE_FLAGS.CAMERA_TILT,spatialId:FEATURE_FLAGS.CAMERA_ZOOM|FEATURE_FLAGS.CAMERA_TILT};function useGet(t){const n=React.useRef(t);return n.current=t,React.useCallback(()=>n.current,[])}function wrapRef(t,n){return Object.fromEntries(Object.keys(n).map(o=>[o,(...s)=>{var c,d;return(d=(c=t.current)==null?void 0:c[o])==null?void 0:d.call(c,...s)}]))}const engineRefKeys={captureScreen:1,changeSceneMode:1,changeSpeed:1,changeTime:1,enableScreenSpaceCameraController:1,flyTo:1,flyToGround:1,getCamera:1,getCameraFovInfo:1,getClock:1,getLocationFromScreen:1,sampleTerrainHeight:1,computeGlobeHeight:1,getGlobeHeight:1,toXYZ:1,toLngLatHeight:1,convertScreenToPositionOffset:1,isPositionVisible:1,setView:1,toWindowPosition:1,getViewport:1,flyToBBox:1,rotateOnCenter:1,overrideScreenSpaceController:1,lookAt:1,lookAtLayer:1,lookHorizontal:1,lookVertical:1,moveBackward:1,moveDown:1,moveForward:1,moveLeft:1,moveOverTerrain:1,moveRight:1,moveUp:1,onClick:1,onDoubleClick:1,onMiddleClick:1,onMiddleDown:1,onMiddleUp:1,onMouseDown:1,onMouseEnter:1,onMouseLeave:1,onMouseMove:1,onMouseUp:1,onRightClick:1,onRightDown:1,onRightUp:1,onWheel:1,orbit:1,pause:1,play:1,requestRender:1,rotateRight:1,tick:1,zoomIn:1,zoomOut:1,changeStart:1,changeStop:1,inViewport:1,onTick:1,removeTickEventListener:1,findFeaturesByIds:1,findFeatureById:1,findComputedFeatureById:1,findComputedFeaturesByIds:1,selectFeatures:1,unselectFeatures:1,pickManyFromViewport:1,getExtrudedHeight:1,getExtrudedPoint:1,getSurfaceDistance:1,equalsEpsilon2d:1,equalsEpsilon3d:1,createGeometry:1,setCursor:1,bringToFront:1,sendToBack:1,calcRectangleControlPoint:1,getCredits:1},layersRefKeys={add:1,addAll:1,deleteLayer:1,find:1,findAll:1,findById:1,findByIds:1,findByTagLabels:1,findByTags:1,hide:1,isLayer:1,isComputedLayer:1,isTempLayer:1,layers:1,override:1,replace:1,select:1,selectFeature:1,selectFeatures:1,selectedLayer:1,selectedFeature:1,show:1,walk:1,overriddenLayers:1},sketchRefKeys={getType:1,setType:1,getOptions:1,overrideOptions:1,editFeature:1,applyEdit:1,cancelEdit:1,deleteFeature:1,onEditFeatureChange:1},spatialIdRefKeys={pickSpace:1,exitPickSpace:1,onSpacePick:1};function mapRef({engineRef:t,layersRef:n,sketchRef:o,spatialIdRef:s,timelineManagerRef:c}){return{engine:wrapRef(t,engineRefKeys),layers:wrapRef(n,layersRefKeys),sketch:wrapRef(o,sketchRefKeys),spatialId:wrapRef(s,spatialIdRefKeys),timeline:c}}var escapeStringRegexp=t=>{if(typeof t!="string")throw new TypeError("Expected a string");return t.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")};const escapeStringRegexp$1=getDefaultExportFromCjs(escapeStringRegexp);class StringMatcher{constructor(){Ef(this,"commands",[])}concat(...n){const o=new StringMatcher;return o.commands.push(...this.commands),n.forEach(s=>{o.commands.push(...s.commands)}),o}static match(n,o,s=!1){const c=Array.isArray(o)?new RegExp(o.map(h=>escapeStringRegexp$1(h)).join("\\s*"),"g"):new RegExp(escapeStringRegexp$1(o),"g"),d=[...n.matchAll(c)].filter(h=>h.index!=null);if(d==null||d.length===0)throw new Error(`No matching codes found for: "${o}"`);if(!s&&d.length>1)throw new Error(`Multiple codes found for: "${o}"`);return d}replace(n,o,s=!1){return this.commands.push(c=>{const d=StringMatcher.match(c,n,s),h=[0,...d.flatMap(y=>[y.index,y.index+y[0].length]),c.length],p=[];return h.reduce((y,S,P)=>(p.push(d[(P-2)/2]!=null?o:c.slice(y,S)),S),0),p.join("")}),this}insertBefore(n,o,s){return this.commands.push(c=>{const d=StringMatcher.match(c,n,s),h=[0,...d.flatMap(y=>[y.index,y.index+y[0].length]),c.length],p=[];return h.reduce((y,S,P)=>{const L=c.slice(y,S);return p.push(d[(P-2)/2]!=null?`${o}
26
26
  ${L}`:L),S},0),p.join("")}),this}insertAfter(n,o,s){return this.commands.push(c=>{const d=StringMatcher.match(c,n,s),h=[0,...d.flatMap(y=>[y.index,y.index+y[0].length]),c.length],p=[];return h.reduce((y,S,P)=>{const L=c.slice(y,S);return p.push(d[(P-2)/2]!=null?`${L}
27
27
  ${o}`:L),S},0),p.join("")}),this}erase(n,o){return this.replace(n,"",o)}execute(n){return this.commands.reduce((o,s)=>s(o),n)}}function useConstant$2(t){const n=React.useRef();return n.current==null&&(n.current={value:t()}),n.current.value}const ctx=typeof window<"u"?window:global,requestIdleCallbackShim=(t,n)=>{const o=Date.now();return ctx.setTimeout(function(){t({didTimeout:!1,timeRemaining:function(){return Math.max(0,12-(Date.now()-o))}})})},requestIdleCallback=ctx.requestIdleCallback||requestIdleCallbackShim,requestIdleCallbackWithRequiredWork=t=>{requestIdleCallback(t,{timeout:1})},usableChars$1="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",generateRandomString$1=t=>Array.from(window.crypto.getRandomValues(new Uint8Array(t))).map(n=>usableChars$1[n%t]).join("").toLowerCase();function objectFromGetter(t,n){const o={},s=t.reduce((c,d)=>({...c,[d]:{get(){return n.call(this,d)},configurable:!1,enumerable:!0}}),{});return Object.defineProperties(o,s),o}const convertTime=t=>{if(t){if(t instanceof Date)return isNaN(t.getTime())?void 0:t;try{const n=new Date(t);return isNaN(n.getTime())?void 0:n}catch{return}}};var ValueType=(t=>(t.Array="ARRAY",t.Bool="BOOL",t.Camera="CAMERA",t.Coordinates="COORDINATES",t.Latlng="LATLNG",t.Latlngheight="LATLNGHEIGHT",t.Number="NUMBER",t.Polygon="POLYGON",t.Rect="RECT",t.Ref="REF",t.Spacing="SPACING",t.String="STRING",t.Timeline="TIMELINE",t.Typography="TYPOGRAPHY",t.Url="URL",t))(ValueType||{});ValueType.Bool+"",ValueType.Number+"",ValueType.String+"",ValueType.Url+"",ValueType.Latlng+"",ValueType.Latlngheight+"",ValueType.Camera+"",ValueType.Typography+"",ValueType.Coordinates+"",ValueType.Polygon+"",ValueType.Rect+"",ValueType.Ref+"",ValueType.Spacing+"",ValueType.Array+"",ValueType.Timeline+"";const getCSSFontFamily=t=>t?t==="YuGothic"?'"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic"':t:void 0,toCSSFont=(t,n)=>{var s;const o=(s=getCSSFontFamily((t==null?void 0:t.fontFamily)??(n==null?void 0:n.fontFamily)))==null?void 0:s.replace("'",'"').trim();return`${(t==null?void 0:t.italic)??(n==null?void 0:n.italic)?"italic ":""}${(t==null?void 0:t.bold)??(n==null?void 0:n.bold)?"bold ":((t==null?void 0:t.fontWeight)??(n==null?void 0:n.fontWeight)??"")+" "}${(t==null?void 0:t.fontSize)??(n==null?void 0:n.fontSize)??16}px ${o?o.includes('"')?o:`"${o}"`:"sans-serif"}`},toColor$2=t=>{if(!t||typeof t!="string")return;const n=t.match(/^#([A-Fa-f0-9]{6})([A-Fa-f0-9]{2})$|^#([A-Fa-f0-9]{3})([A-Fa-f0-9])$/);if(!n)return Cesium$1.Color.fromCssColorString(t);const o=parseInt(n[4]?n[4].repeat(2):n[2],16)/255;return Cesium$1.Color.fromCssColorString(`#${n[1]??n[3]}`).withAlpha(o)};var lib={};Object.defineProperty(lib,"__esModule",{value:!0});var easing=lib.easing={linear:function(t){return t},quadratic:function(t){return t*(-(t*t)*t+4*t*t-6*t+4)},cubic:function(t){return t*(4*t*t-9*t+6)},elastic:function(t){return t*(33*t*t*t*t-106*t*t*t+126*t*t-67*t+15)},inQuad:function(t){return t*t},outQuad:function(t){return t*(2-t)},inOutQuad:function(t){return t<.5?2*t*t:-1+(4-2*t)*t},inCubic:function(t){return t*t*t},outCubic:function(t){return--t*t*t+1},inOutCubic:function(t){return t<.5?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1},inQuart:function(t){return t*t*t*t},outQuart:function(t){return 1- --t*t*t*t},inOutQuart:function(t){return t<.5?8*t*t*t*t:1-8*--t*t*t*t},inQuint:function(t){return t*t*t*t*t},outQuint:function(t){return 1+--t*t*t*t*t},inOutQuint:function(t){return t<.5?16*t*t*t*t*t:1+16*--t*t*t*t*t},inSine:function(t){return-Math.cos(t*(Math.PI/2))+1},outSine:function(t){return Math.sin(t*(Math.PI/2))},inOutSine:function(t){return-(Math.cos(Math.PI*t)-1)/2},inExpo:function(t){return Math.pow(2,10*(t-1))},outExpo:function(t){return-Math.pow(2,-10*t)+1},inOutExpo:function(t){return t/=.5,t<1?Math.pow(2,10*(t-1))/2:(t--,(-Math.pow(2,-10*t)+2)/2)},inCirc:function(t){return-Math.sqrt(1-t*t)+1},outCirc:function(t){return Math.sqrt(1-(t=t-1)*t)},inOutCirc:function(t){return t/=.5,t<1?-(Math.sqrt(1-t*t)-1)/2:(t-=2,(Math.sqrt(1-t*t)+1)/2)}};function interval$1(t,n){let o=0,s=0,c=0;const d=()=>{t(o===0?0:Date.now()-o)&&(s=window.requestAnimationFrame(d)),o===0&&(o=Date.now())};return s=window.requestAnimationFrame(d),()=>{window.clearTimeout(c),window.cancelAnimationFrame(s)}}function intervalDuring(t,n,o){return n<0?()=>{}:interval$1(s=>{const c=Math.min(1,n===0?1:s/n);return t(c),c<1})}function tweenInterval(t,n,o,s){const c=typeof n=="function"?n:easing[n];return intervalDuring(d=>{t(c(d),d)},o)}const useImage=t=>{const n=React.useRef(),[o,s]=React.useState();return React.useEffect(()=>{if(!t){s(void 0),n.current&&(n.current.src="");return}const c=new Image;c.crossOrigin="anonymous",c.onload=()=>{s(n.current)},c.src=t,n.current=c},[t]),o};function useFirstMountState(){var t=React.useRef(!0);return t.current?(t.current=!1,!0):t.current}var __assign$2=function(){return __assign$2=Object.assign||function(n){for(var o,s=1,c=arguments.length;s<c;s++){o=arguments[s];for(var d in o)Object.prototype.hasOwnProperty.call(o,d)&&(n[d]=o[d])}return n},__assign$2.apply(this,arguments)};function __spreadArrays(){for(var t=0,n=0,o=arguments.length;n<o;n++)t+=arguments[n].length;for(var s=Array(t),c=0,n=0;n<o;n++)for(var d=arguments[n],h=0,p=d.length;h<p;h++,c++)s[c]=d[h];return s}typeof SuppressedError=="function"&&SuppressedError;var strictEquals=function(t,n){return t===n};function usePreviousDistinct(t,n){n===void 0&&(n=strictEquals);var o=React.useRef(),s=React.useRef(t),c=useFirstMountState();return!c&&!n(s.current,t)&&(o.current=s.current,s.current=t),o.current}var useSet=function(t){t===void 0&&(t=new Set);var n=React.useState(t),o=n[0],s=n[1],c=React.useMemo(function(){var h=function(S){return s(function(P){return new Set(__spreadArrays(Array.from(P),[S]))})},p=function(S){return s(function(P){return new Set(Array.from(P).filter(function(L){return L!==S}))})},y=function(S){return s(function(P){return P.has(S)?new Set(Array.from(P).filter(function(L){return L!==S})):new Set(__spreadArrays(Array.from(P),[S]))})};return{add:h,remove:p,toggle:y,reset:function(){return s(t)},clear:function(){return s(new Set)}}},[s]),d=__assign$2({has:React.useCallback(function(h){return o.has(h)},[o])},c);return[o,d]};const useDelayedCount=(t=[])=>{const[n,o]=React.useState(0),s=usePreviousDistinct(n),c=React.useRef(!1),d=React.useRef(),h=React.useCallback(()=>{o(y=>Math.max(0,Math.min(t.length+1,y+(c.current?-1:1))))},[t.length]),p=React.useCallback((y,S)=>{if(d.current&&(clearTimeout(d.current),d.current=void 0),S){o(y?0:t.length+1);return}c.current=y,h()},[h,t.length]);return React.useEffect(()=>{if(d.current!==void 0&&(clearTimeout(d.current),d.current=void 0),n<=0||n>=t.length+1)return;const y=t==null?void 0:t[n-1],S=Array.isArray(y)?y[c.current?1:0]:y;d.current=window.setTimeout(()=>{d.current=void 0,h()},S??0)},[h,t,n]),React.useEffect(()=>()=>{d.current&&(clearTimeout(d.current),d.current=void 0)},[]),[n,s,p]},DEFAULT_RANGE=864e5,useTimelineManager=({init:t,engineRef:n,timelineManagerRef:o})=>{const[s,c]=React.useState({start:convertTime(t==null?void 0:t.start)??new Date,stop:convertTime(t==null?void 0:t.stop)??new Date,current:convertTime(t==null?void 0:t.current)??new Date}),[d,h]=React.useState({animation:(t==null?void 0:t.animation)??!1,stepType:(t==null?void 0:t.stepType)??"rate",multiplier:(t==null?void 0:t.stepType)==="fixed"?(t==null?void 0:t.step)??1:(t==null?void 0:t.multiplier)??1,rangeType:(t==null?void 0:t.rangeType)??"unbounded"}),p=React.useMemo(()=>{const{start:Pe,stop:se,current:mt}=s,kt=Pe.getTime(),mn=se.getTime(),pi=mt.getTime(),zi=kt>pi?pi:kt,Sa=mn<=pi?pi+DEFAULT_RANGE:mn;return{start:new Date(zi),stop:new Date(Sa),current:new Date(pi)}},[s]),y=React.useCallback(Pe=>{Pe.cmd&&(Pe.cmd==="PLAY"?h(se=>({...se,animation:!0})):Pe.cmd==="PAUSE"?h(se=>({...se,animation:!1})):Pe.cmd==="SET_TIME"?c(se=>({start:convertTime(Pe.payload.start)??se.start,stop:convertTime(Pe.payload.stop)??se.stop,current:convertTime(Pe.payload.current)??se.current})):Pe.cmd==="SET_OPTIONS"&&h(se=>{var mt,kt,mn;return{...se,stepType:((mt=Pe.payload)==null?void 0:mt.stepType)===void 0?se.stepType:Pe.payload.stepType,multiplier:((kt=Pe.payload)==null?void 0:kt.multiplier)===void 0?se.multiplier:Pe.payload.multiplier,rangeType:((mn=Pe.payload)==null?void 0:mn.rangeType)===void 0?se.rangeType:Pe.payload.rangeType}}),F.current.forEach(se=>se(Pe.committer)))},[]),S=React.useRef([]),P=React.useCallback(Pe=>{S.current.push(Pe)},[]),L=React.useCallback(Pe=>{S.current=S.current.filter(se=>se!==Pe)},[]),F=React.useRef([]),N=React.useCallback(Pe=>{F.current.push(Pe)},[]),z=React.useCallback(Pe=>{F.current=F.current.filter(se=>se!==Pe)},[]),W=React.useCallback(()=>{S.current.forEach(Pe=>{var mt;const se=(mt=n==null?void 0:n.current)==null?void 0:mt.getClock();se!=null&&se.current&&(se!=null&&se.start)&&(se!=null&&se.stop)&&Pe(se.current,{start:se==null?void 0:se.start,stop:se==null?void 0:se.stop})})},[n]),lt=React.useMemo(()=>({timeline:{get start(){var Pe,se;return(se=(Pe=n==null?void 0:n.current)==null?void 0:Pe.getClock())==null?void 0:se.start},get stop(){var Pe,se;return(se=(Pe=n==null?void 0:n.current)==null?void 0:Pe.getClock())==null?void 0:se.stop},get current(){var Pe,se;return(se=(Pe=n==null?void 0:n.current)==null?void 0:Pe.getClock())==null?void 0:se.current}},options:d,computedTimeline:p,commit:y,onTick:P,offTick:L,onCommit:N,offCommit:z,handleTick:W,get tick(){var Pe;return(Pe=n==null?void 0:n.current)==null?void 0:Pe.tick}}),[d,p,n,y,P,L,N,z,W]);return o&&(o.current=lt),null},FORCE_REQUEST_RENDER=-1,NO_REQUEST_RENDER=0,REQUEST_RENDER_ONCE=1;function useHooks$c({ref:t,timelineManagerRef:n,cursor:o,onLayerSelect:s,onMount:c,onAPIReady:d}){const[h,p]=React.useState({engine:!1,layers:!1,sketch:!1,spatialId:!1}),y=React.useRef(null),S=React.useRef(null),P=React.useRef(null),L=React.useRef(null),F=React.useRef(NO_REQUEST_RENDER);React.useImperativeHandle(t,()=>mapRef({engineRef:y,layersRef:S,sketchRef:P,spatialIdRef:L,timelineManagerRef:n}),[n]),React.useEffect(()=>{d&&h.engine&&h.layers&&h.sketch&&h.spatialId&&(d==null||d())},[d,h]);const[N,z]=React.useState({}),W=React.useCallback(async(zi,Sa,fa,La,Ra)=>{z({layerId:zi,featureId:Sa,reason:La}),s==null||s(zi,Sa,fa,La,Ra)},[s]),lt=React.useCallback((zi,Sa,fa,La)=>{var Ra;(Ra=S.current)==null||Ra.selectFeatures([{layerId:zi,featureId:Sa?[Sa]:void 0}],fa,La)},[]);useTimelineManager({engineRef:y,timelineManagerRef:n}),React.useEffect(()=>{var zi;o&&((zi=y.current)==null||zi.setCursor(o))},[o]);const[Pe,se]=React.useState(),mt=React.useCallback(()=>{p(zi=>({...zi,engine:!0})),c==null||c()},[c]),kt=React.useCallback(()=>{p(zi=>({...zi,layers:!0}))},[]),mn=React.useCallback(()=>{p(zi=>({...zi,sketch:!0}))},[]),pi=React.useCallback(()=>{p(zi=>({...zi,spatialId:!0}))},[]);return{engineRef:y,layersRef:S,sketchRef:P,spatialIdRef:L,selectedLayer:N,requestingRenderMode:F,handleLayerSelect:W,handleEngineLayerSelect:lt,sketchEditingFeature:Pe,setSketchEditingFeature:se,handleEngineMount:mt,handleLayersMount:kt,handleSketchMount:mn,handleSpatialIdMount:pi}}let keyCount=0;function atom$1(t,n){const o=`atom${++keyCount}`,s={toString:()=>o};return typeof t=="function"?s.read=t:(s.init=t,s.read=c=>c(s),s.write=(c,d,h)=>d(s,typeof h=="function"?h(c(s)):h)),n&&(s.write=n),s}const SUSPENSE_PROMISE=Symbol(),isSuspensePromise=t=>!!t[SUSPENSE_PROMISE],isSuspensePromiseAlreadyCancelled=t=>!t[SUSPENSE_PROMISE].c,cancelSuspensePromise=t=>{var n;const{b:o,c:s}=t[SUSPENSE_PROMISE];s&&(s(),(n=promiseAbortMap.get(o))==null||n())},isEqualSuspensePromise=(t,n)=>{const o=t[SUSPENSE_PROMISE].o,s=n[SUSPENSE_PROMISE].o;return o===s||t===s||isSuspensePromise(o)&&isEqualSuspensePromise(o,n)},createSuspensePromise=(t,n)=>{const o={b:t,o:n,c:null},s=new Promise(c=>{o.c=()=>{o.c=null,c()},n.finally(o.c)});return s[SUSPENSE_PROMISE]=o,s},copySuspensePromise=t=>createSuspensePromise(t[SUSPENSE_PROMISE].b,t[SUSPENSE_PROMISE].o),promiseAbortMap=new WeakMap,hasInitialValue=t=>"init"in t,READ_ATOM="r",WRITE_ATOM="w",COMMIT_ATOM="c",SUBSCRIBE_ATOM="s",RESTORE_ATOMS="h",createStore=t=>{const n=new WeakMap,o=new WeakMap,s=new Map,c=new WeakMap,d=(ms,Xs,pu)=>{let yu=c.get(Xs);yu||(yu=new Map,c.set(Xs,yu)),pu.then(()=>{yu.get(ms)===pu&&(yu.delete(ms),yu.size||c.delete(Xs))}),yu.set(ms,pu)},h=ms=>{const Xs=new Set,pu=c.get(ms);return pu&&(c.delete(ms),pu.forEach((yu,Nl)=>{cancelSuspensePromise(yu),Xs.add(Nl)})),Xs},p=new WeakMap,y=ms=>{let Xs=p.get(ms);return Xs||(Xs=new Map,p.set(ms,Xs)),Xs},S=(ms,Xs)=>{if(ms){const pu=y(ms);let yu=pu.get(Xs);return yu||(yu=S(ms.p,Xs),yu&&"p"in yu&&isSuspensePromiseAlreadyCancelled(yu.p)&&(yu=void 0),yu&&pu.set(Xs,yu)),yu}return n.get(Xs)},P=(ms,Xs,pu)=>{if(ms)y(ms).set(Xs,pu);else{const yu=n.get(Xs);n.set(Xs,pu),s.has(Xs)||s.set(Xs,yu)}},L=(ms,Xs=new Map,pu)=>{if(!pu)return Xs;const yu=new Map;let Nl=!1;return pu.forEach(Ru=>{var Vd;const Gd=((Vd=S(ms,Ru))==null?void 0:Vd.r)||0;yu.set(Ru,Gd),Xs.get(Ru)!==Gd&&(Nl=!0)}),Xs.size===yu.size&&!Nl?Xs:yu},F=(ms,Xs,pu,yu,Nl)=>{const Ru=S(ms,Xs);if(Ru){if(Nl&&(!("p"in Ru)||!isEqualSuspensePromise(Ru.p,Nl)))return Ru;"p"in Ru&&cancelSuspensePromise(Ru.p)}const Vd={v:pu,r:(Ru==null?void 0:Ru.r)||0,y:!0,d:L(ms,Ru==null?void 0:Ru.d,yu)};let Gd=!(Ru!=null&&Ru.y);return!Ru||!("v"in Ru)||!Object.is(Ru.v,pu)?(Gd=!0,++Vd.r,Vd.d.has(Xs)&&(Vd.d=new Map(Vd.d).set(Xs,Vd.r))):Vd.d!==Ru.d&&(Vd.d.size!==Ru.d.size||!Array.from(Vd.d.keys()).every(cf=>Ru.d.has(cf)))&&(Gd=!0,Promise.resolve().then(()=>{yt(ms)})),Ru&&!Gd?Ru:(P(ms,Xs,Vd),Vd)},N=(ms,Xs,pu,yu,Nl)=>{const Ru=S(ms,Xs);if(Ru){if(Nl&&(!("p"in Ru)||!isEqualSuspensePromise(Ru.p,Nl)))return Ru;"p"in Ru&&cancelSuspensePromise(Ru.p)}const Vd={e:pu,r:((Ru==null?void 0:Ru.r)||0)+1,y:!0,d:L(ms,Ru==null?void 0:Ru.d,yu)};return P(ms,Xs,Vd),Vd},z=(ms,Xs,pu,yu)=>{const Nl=S(ms,Xs);if(Nl&&"p"in Nl){if(isEqualSuspensePromise(Nl.p,pu)&&!isSuspensePromiseAlreadyCancelled(Nl.p))return Nl.y?Nl:{...Nl,y:!0};cancelSuspensePromise(Nl.p)}d(ms,Xs,pu);const Ru={p:pu,r:((Nl==null?void 0:Nl.r)||0)+1,y:!0,d:L(ms,Nl==null?void 0:Nl.d,yu)};return P(ms,Xs,Ru),Ru},W=(ms,Xs,pu,yu)=>{if(pu instanceof Promise){const Nl=createSuspensePromise(pu,pu.then(Ru=>{F(ms,Xs,Ru,yu,Nl)}).catch(Ru=>{if(Ru instanceof Promise)return isSuspensePromise(Ru)?Ru.then(()=>{Pe(ms,Xs,!0)}):Ru;N(ms,Xs,Ru,yu,Nl)}));return z(ms,Xs,Nl,yu)}return F(ms,Xs,pu,yu)},lt=(ms,Xs)=>{const pu=S(ms,Xs);if(pu){const yu={...pu,y:!1};P(ms,Xs,yu)}},Pe=(ms,Xs,pu)=>{if(!pu){const Nl=S(ms,Xs);if(Nl){if(Nl.y&&"p"in Nl&&!isSuspensePromiseAlreadyCancelled(Nl.p))return Nl;if(Nl.d.forEach((Ru,Vd)=>{if(Vd!==Xs)if(!o.has(Vd))Pe(ms,Vd);else{const Gd=S(ms,Vd);Gd&&!Gd.y&&Pe(ms,Vd)}}),Array.from(Nl.d).every(([Ru,Vd])=>{const Gd=S(ms,Ru);return Gd&&!("p"in Gd)&&Gd.r===Vd}))return Nl.y?Nl:{...Nl,y:!0}}}const yu=new Set;try{const Nl=Xs.read(Ru=>{yu.add(Ru);const Vd=Ru===Xs?S(ms,Ru):Pe(ms,Ru);if(Vd){if("e"in Vd)throw Vd.e;if("p"in Vd)throw Vd.p;return Vd.v}if(hasInitialValue(Ru))return Ru.init;throw new Error("no atom init")});return W(ms,Xs,Nl,yu)}catch(Nl){if(Nl instanceof Promise){const Ru=isSuspensePromise(Nl)&&isSuspensePromiseAlreadyCancelled(Nl)?copySuspensePromise(Nl):createSuspensePromise(Nl,Nl);return z(ms,Xs,Ru,yu)}return N(ms,Xs,Nl,yu)}},se=(ms,Xs)=>Pe(Xs,ms),mt=(ms,Xs)=>{let pu=o.get(Xs);return pu||(pu=La(ms,Xs)),pu},kt=(ms,Xs)=>!Xs.l.size&&(!Xs.t.size||Xs.t.size===1&&Xs.t.has(ms)),mn=(ms,Xs)=>{const pu=o.get(Xs);pu&&kt(Xs,pu)&&Ra(ms,Xs)},pi=(ms,Xs)=>{const pu=o.get(Xs);pu==null||pu.t.forEach(yu=>{yu!==Xs&&(lt(ms,yu),pi(ms,yu))})},zi=(ms,Xs,pu)=>{let yu=!0;const Nl=(Gd,cf)=>{const uf=Pe(ms,Gd);if("e"in uf)throw uf.e;if("p"in uf){if(cf!=null&&cf.unstable_promise)return uf.p.then(()=>{const gf=S(ms,Gd);return gf&&"p"in gf&&gf.p===uf.p?new Promise(hf=>setTimeout(hf)).then(()=>Nl(Gd,cf)):Nl(Gd,cf)});throw uf.p}if("v"in uf)return uf.v;throw new Error("no value found")},Ru=(Gd,cf)=>{let uf;if(Gd===Xs){if(!hasInitialValue(Gd))throw new Error("atom not writable");h(Gd).forEach(_f=>{_f!==ms&&W(_f,Gd,cf)});const hf=S(ms,Gd),pf=W(ms,Gd,cf);hf!==pf&&pi(ms,Gd)}else uf=zi(ms,Gd,cf);return yu||yt(ms),uf},Vd=Xs.write(Nl,Ru,pu);return yu=!1,Vd},Sa=(ms,Xs,pu)=>{const yu=zi(pu,ms,Xs);return yt(pu),yu},fa=ms=>!!ms.write,La=(ms,Xs,pu)=>{const yu={t:new Set(pu&&[pu]),l:new Set};if(o.set(Xs,yu),Pe(void 0,Xs).d.forEach((Ru,Vd)=>{const Gd=o.get(Vd);Gd?Gd.t.add(Xs):Vd!==Xs&&La(ms,Vd,Xs)}),fa(Xs)&&Xs.onMount){const Ru=Gd=>Sa(Xs,Gd,ms),Vd=Xs.onMount(Ru);ms=void 0,Vd&&(yu.u=Vd)}return yu},Ra=(ms,Xs)=>{var pu;const yu=(pu=o.get(Xs))==null?void 0:pu.u;yu&&yu(),o.delete(Xs);const Nl=S(ms,Xs);Nl&&("p"in Nl&&cancelSuspensePromise(Nl.p),Nl.d.forEach((Ru,Vd)=>{if(Vd!==Xs){const Gd=o.get(Vd);Gd&&(Gd.t.delete(Xs),kt(Vd,Gd)&&Ra(ms,Vd))}}))},ma=(ms,Xs,pu,yu)=>{const Nl=new Set(pu.d.keys());yu==null||yu.forEach((Ru,Vd)=>{if(Nl.has(Vd)){Nl.delete(Vd);return}const Gd=o.get(Vd);Gd&&(Gd.t.delete(Xs),kt(Vd,Gd)&&Ra(ms,Vd))}),Nl.forEach(Ru=>{const Vd=o.get(Ru);Vd?Vd.t.add(Xs):o.has(Xs)&&La(ms,Ru,Xs)})},yt=ms=>{if(ms){y(ms).forEach((pu,yu)=>{const Nl=n.get(yu);if(pu!==Nl){const Ru=o.get(yu);Ru==null||Ru.l.forEach(Vd=>Vd(ms))}});return}for(;s.size;){const Xs=Array.from(s);s.clear(),Xs.forEach(([pu,yu])=>{const Nl=S(void 0,pu);if(Nl&&Nl.d!==(yu==null?void 0:yu.d)&&ma(void 0,pu,Nl,yu==null?void 0:yu.d),yu&&!yu.y&&(Nl!=null&&Nl.y))return;const Ru=o.get(pu);Ru==null||Ru.l.forEach(Vd=>Vd())})}},nt=ms=>{y(ms).forEach((pu,yu)=>{const Nl=n.get(yu);(!Nl||pu.r>Nl.r||pu.y!==Nl.y||pu.r===Nl.r&&pu.d!==Nl.d)&&(n.set(yu,pu),pu.d!==(Nl==null?void 0:Nl.d)&&ma(ms,yu,pu,Nl==null?void 0:Nl.d))})},_i=(ms,Xs)=>{Xs&&nt(Xs),yt(void 0)},ba=(ms,Xs,pu)=>{const Nl=mt(pu,ms).l;return Nl.add(Xs),()=>{Nl.delete(Xs),mn(pu,ms)}},Sc=(ms,Xs)=>{for(const[pu,yu]of ms)hasInitialValue(pu)&&(W(Xs,pu,yu),pi(Xs,pu));yt(Xs)};return{[READ_ATOM]:se,[WRITE_ATOM]:Sa,[COMMIT_ATOM]:_i,[SUBSCRIBE_ATOM]:ba,[RESTORE_ATOMS]:Sc}},createScopeContainer=(t,n)=>({s:n?n(t).SECRET_INTERNAL_store:createStore()}),ScopeContextMap=new Map,getScopeContext=t=>(ScopeContextMap.has(t)||ScopeContextMap.set(t,React.createContext(createScopeContainer())),ScopeContextMap.get(t));function atom(t,n){return atom$1(t,n)}function useAtomValue(t,n){const o=getScopeContext(n),s=React.useContext(o),{s:c,v:d}=s,h=F=>{const N=c[READ_ATOM](t,F);if("e"in N)throw N.e;if("p"in N)throw N.p;if("v"in N)return N.v;throw new Error("no atom value")},[[p,y,S],P]=React.useReducer((F,N)=>{const z=h(N);return Object.is(F[1],z)&&F[2]===t?F:[N,z,t]},d,F=>{const N=h(F);return[F,N,t]});let L=y;return S!==t&&(P(p),L=h(p)),React.useEffect(()=>{const{v:F}=s;F&&c[COMMIT_ATOM](t,F);const N=c[SUBSCRIBE_ATOM](t,P,F);return P(F),N},[c,t,s]),React.useEffect(()=>{c[COMMIT_ATOM](t,p)}),React.useDebugValue(L),L}function useSetAtom(t,n){const o=getScopeContext(n),{s,w:c}=React.useContext(o);return React.useCallback(h=>{const p=y=>s[WRITE_ATOM](t,h,y);return c?c(p):p()},[s,c,t])}function useAtom(t,n){return"scope"in t&&(console.warn("atom.scope is deprecated. Please do useAtom(atom, scope) instead."),n=t.scope),[useAtomValue(t,n),useSetAtom(t,n)]}var freeGlobal=typeof global=="object"&&global&&global.Object===Object&&global,freeSelf=typeof self=="object"&&self&&self.Object===Object&&self,root$1=freeGlobal||freeSelf||Function("return this")(),Symbol$1=root$1.Symbol,objectProto$h=Object.prototype,hasOwnProperty$f=objectProto$h.hasOwnProperty,nativeObjectToString$1=objectProto$h.toString,symToStringTag$1=Symbol$1?Symbol$1.toStringTag:void 0;function getRawTag(t){var n=hasOwnProperty$f.call(t,symToStringTag$1),o=t[symToStringTag$1];try{t[symToStringTag$1]=void 0;var s=!0}catch{}var c=nativeObjectToString$1.call(t);return s&&(n?t[symToStringTag$1]=o:delete t[symToStringTag$1]),c}var objectProto$g=Object.prototype,nativeObjectToString=objectProto$g.toString;function objectToString$1(t){return nativeObjectToString.call(t)}var nullTag="[object Null]",undefinedTag="[object Undefined]",symToStringTag=Symbol$1?Symbol$1.toStringTag:void 0;function baseGetTag(t){return t==null?t===void 0?undefinedTag:nullTag:symToStringTag&&symToStringTag in Object(t)?getRawTag(t):objectToString$1(t)}function isObjectLike(t){return t!=null&&typeof t=="object"}var symbolTag$3="[object Symbol]";function isSymbol(t){return typeof t=="symbol"||isObjectLike(t)&&baseGetTag(t)==symbolTag$3}function arrayMap(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 isArray$4=Array.isArray,symbolProto$2=Symbol$1?Symbol$1.prototype:void 0,symbolToString=symbolProto$2?symbolProto$2.toString:void 0;function baseToString(t){if(typeof t=="string")return t;if(isArray$4(t))return arrayMap(t,baseToString)+"";if(isSymbol(t))return symbolToString?symbolToString.call(t):"";var n=t+"";return n=="0"&&1/t==-1/0?"-0":n}function isObject$2(t){var n=typeof t;return t!=null&&(n=="object"||n=="function")}function identity$3(t){return t}var asyncTag="[object AsyncFunction]",funcTag$2="[object Function]",genTag$1="[object GeneratorFunction]",proxyTag="[object Proxy]";function isFunction$2(t){if(!isObject$2(t))return!1;var n=baseGetTag(t);return n==funcTag$2||n==genTag$1||n==asyncTag||n==proxyTag}var coreJsData=root$1["__core-js_shared__"],maskSrcKey=function(){var t=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function isMasked(t){return!!maskSrcKey&&maskSrcKey in t}var funcProto$2=Function.prototype,funcToString$2=funcProto$2.toString;function toSource(t){if(t!=null){try{return funcToString$2.call(t)}catch{}try{return t+""}catch{}}return""}var reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,funcProto$1=Function.prototype,objectProto$f=Object.prototype,funcToString$1=funcProto$1.toString,hasOwnProperty$e=objectProto$f.hasOwnProperty,reIsNative=RegExp("^"+funcToString$1.call(hasOwnProperty$e).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function baseIsNative(t){if(!isObject$2(t)||isMasked(t))return!1;var n=isFunction$2(t)?reIsNative:reIsHostCtor;return n.test(toSource(t))}function getValue$1(t,n){return t==null?void 0:t[n]}function getNative(t,n){var o=getValue$1(t,n);return baseIsNative(o)?o:void 0}var WeakMap$1=getNative(root$1,"WeakMap"),objectCreate=Object.create,baseCreate=function(){function t(){}return function(n){if(!isObject$2(n))return{};if(objectCreate)return objectCreate(n);t.prototype=n;var o=new t;return t.prototype=void 0,o}}();function apply(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)}function noop$3(){}function copyArray(t,n){var o=-1,s=t.length;for(n||(n=Array(s));++o<s;)n[o]=t[o];return n}var HOT_COUNT=800,HOT_SPAN=16,nativeNow=Date.now;function shortOut(t){var n=0,o=0;return function(){var s=nativeNow(),c=HOT_SPAN-(s-o);if(o=s,c>0){if(++n>=HOT_COUNT)return arguments[0]}else n=0;return t.apply(void 0,arguments)}}function constant$2(t){return function(){return t}}var defineProperty=function(){try{var t=getNative(Object,"defineProperty");return t({},"",{}),t}catch{}}(),baseSetToString=defineProperty?function(t,n){return defineProperty(t,"toString",{configurable:!0,enumerable:!1,value:constant$2(n),writable:!0})}:identity$3,setToString=shortOut(baseSetToString);function arrayEach(t,n){for(var o=-1,s=t==null?0:t.length;++o<s&&n(t[o],o,t)!==!1;);return t}function baseFindIndex(t,n,o,s){for(var c=t.length,d=o+-1;++d<c;)if(n(t[d],d,t))return d;return-1}function baseIsNaN(t){return t!==t}function strictIndexOf(t,n,o){for(var s=o-1,c=t.length;++s<c;)if(t[s]===n)return s;return-1}function baseIndexOf(t,n,o){return n===n?strictIndexOf(t,n,o):baseFindIndex(t,baseIsNaN,o)}function arrayIncludes(t,n){var o=t==null?0:t.length;return!!o&&baseIndexOf(t,n,0)>-1}var MAX_SAFE_INTEGER$1=9007199254740991,reIsUint=/^(?:0|[1-9]\d*)$/;function isIndex(t,n){var o=typeof t;return n=n??MAX_SAFE_INTEGER$1,!!n&&(o=="number"||o!="symbol"&&reIsUint.test(t))&&t>-1&&t%1==0&&t<n}function baseAssignValue(t,n,o){n=="__proto__"&&defineProperty?defineProperty(t,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):t[n]=o}function eq(t,n){return t===n||t!==t&&n!==n}var objectProto$e=Object.prototype,hasOwnProperty$d=objectProto$e.hasOwnProperty;function assignValue(t,n,o){var s=t[n];(!(hasOwnProperty$d.call(t,n)&&eq(s,o))||o===void 0&&!(n in t))&&baseAssignValue(t,n,o)}function copyObject(t,n,o,s){var c=!o;o||(o={});for(var d=-1,h=n.length;++d<h;){var p=n[d],y=void 0;y===void 0&&(y=t[p]),c?baseAssignValue(o,p,y):assignValue(o,p,y)}return o}var nativeMax=Math.max;function overRest(t,n,o){return n=nativeMax(n===void 0?t.length-1:n,0),function(){for(var s=arguments,c=-1,d=nativeMax(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),apply(t,this,p)}}function baseRest(t,n){return setToString(overRest(t,n,identity$3),t+"")}var MAX_SAFE_INTEGER=9007199254740991;function isLength(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=MAX_SAFE_INTEGER}function isArrayLike(t){return t!=null&&isLength(t.length)&&!isFunction$2(t)}function isIterateeCall(t,n,o){if(!isObject$2(o))return!1;var s=typeof n;return(s=="number"?isArrayLike(o)&&isIndex(n,o.length):s=="string"&&n in o)?eq(o[n],t):!1}function createAssigner(t){return baseRest(function(n,o){var s=-1,c=o.length,d=c>1?o[c-1]:void 0,h=c>2?o[2]:void 0;for(d=t.length>3&&typeof d=="function"?(c--,d):void 0,h&&isIterateeCall(o[0],o[1],h)&&(d=c<3?void 0:d,c=1),n=Object(n);++s<c;){var p=o[s];p&&t(n,p,s,d)}return n})}var objectProto$d=Object.prototype;function isPrototype(t){var n=t&&t.constructor,o=typeof n=="function"&&n.prototype||objectProto$d;return t===o}function baseTimes(t,n){for(var o=-1,s=Array(t);++o<t;)s[o]=n(o);return s}var argsTag$3="[object Arguments]";function baseIsArguments(t){return isObjectLike(t)&&baseGetTag(t)==argsTag$3}var objectProto$c=Object.prototype,hasOwnProperty$c=objectProto$c.hasOwnProperty,propertyIsEnumerable$1=objectProto$c.propertyIsEnumerable,isArguments=baseIsArguments(function(){return arguments}())?baseIsArguments:function(t){return isObjectLike(t)&&hasOwnProperty$c.call(t,"callee")&&!propertyIsEnumerable$1.call(t,"callee")};function stubFalse(){return!1}var freeExports$2=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule$2=freeExports$2&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports$2=freeModule$2&&freeModule$2.exports===freeExports$2,Buffer$4=moduleExports$2?root$1.Buffer:void 0,nativeIsBuffer=Buffer$4?Buffer$4.isBuffer:void 0,isBuffer$1=nativeIsBuffer||stubFalse,argsTag$2="[object Arguments]",arrayTag$2="[object Array]",boolTag$3="[object Boolean]",dateTag$3="[object Date]",errorTag$2="[object Error]",funcTag$1="[object Function]",mapTag$5="[object Map]",numberTag$3="[object Number]",objectTag$4="[object Object]",regexpTag$3="[object RegExp]",setTag$5="[object Set]",stringTag$3="[object String]",weakMapTag$2="[object WeakMap]",arrayBufferTag$3="[object ArrayBuffer]",dataViewTag$4="[object DataView]",float32Tag$2="[object Float32Array]",float64Tag$2="[object Float64Array]",int8Tag$2="[object Int8Array]",int16Tag$2="[object Int16Array]",int32Tag$2="[object Int32Array]",uint8Tag$2="[object Uint8Array]",uint8ClampedTag$2="[object Uint8ClampedArray]",uint16Tag$2="[object Uint16Array]",uint32Tag$2="[object Uint32Array]",typedArrayTags={};typedArrayTags[float32Tag$2]=typedArrayTags[float64Tag$2]=typedArrayTags[int8Tag$2]=typedArrayTags[int16Tag$2]=typedArrayTags[int32Tag$2]=typedArrayTags[uint8Tag$2]=typedArrayTags[uint8ClampedTag$2]=typedArrayTags[uint16Tag$2]=typedArrayTags[uint32Tag$2]=!0,typedArrayTags[argsTag$2]=typedArrayTags[arrayTag$2]=typedArrayTags[arrayBufferTag$3]=typedArrayTags[boolTag$3]=typedArrayTags[dataViewTag$4]=typedArrayTags[dateTag$3]=typedArrayTags[errorTag$2]=typedArrayTags[funcTag$1]=typedArrayTags[mapTag$5]=typedArrayTags[numberTag$3]=typedArrayTags[objectTag$4]=typedArrayTags[regexpTag$3]=typedArrayTags[setTag$5]=typedArrayTags[stringTag$3]=typedArrayTags[weakMapTag$2]=!1;function baseIsTypedArray(t){return isObjectLike(t)&&isLength(t.length)&&!!typedArrayTags[baseGetTag(t)]}function baseUnary(t){return function(n){return t(n)}}var freeExports$1=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule$1=freeExports$1&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports$1=freeModule$1&&freeModule$1.exports===freeExports$1,freeProcess=moduleExports$1&&freeGlobal.process,nodeUtil=function(){try{var t=freeModule$1&&freeModule$1.require&&freeModule$1.require("util").types;return t||freeProcess&&freeProcess.binding&&freeProcess.binding("util")}catch{}}(),nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,isTypedArray=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray,objectProto$b=Object.prototype,hasOwnProperty$b=objectProto$b.hasOwnProperty;function arrayLikeKeys(t,n){var o=isArray$4(t),s=!o&&isArguments(t),c=!o&&!s&&isBuffer$1(t),d=!o&&!s&&!c&&isTypedArray(t),h=o||s||c||d,p=h?baseTimes(t.length,String):[],y=p.length;for(var S in t)(n||hasOwnProperty$b.call(t,S))&&!(h&&(S=="length"||c&&(S=="offset"||S=="parent")||d&&(S=="buffer"||S=="byteLength"||S=="byteOffset")||isIndex(S,y)))&&p.push(S);return p}function overArg(t,n){return function(o){return t(n(o))}}var nativeKeys=overArg(Object.keys,Object),objectProto$a=Object.prototype,hasOwnProperty$a=objectProto$a.hasOwnProperty;function baseKeys(t){if(!isPrototype(t))return nativeKeys(t);var n=[];for(var o in Object(t))hasOwnProperty$a.call(t,o)&&o!="constructor"&&n.push(o);return n}function keys$1(t){return isArrayLike(t)?arrayLikeKeys(t):baseKeys(t)}function nativeKeysIn(t){var n=[];if(t!=null)for(var o in Object(t))n.push(o);return n}var objectProto$9=Object.prototype,hasOwnProperty$9=objectProto$9.hasOwnProperty;function baseKeysIn(t){if(!isObject$2(t))return nativeKeysIn(t);var n=isPrototype(t),o=[];for(var s in t)s=="constructor"&&(n||!hasOwnProperty$9.call(t,s))||o.push(s);return o}function keysIn(t){return isArrayLike(t)?arrayLikeKeys(t,!0):baseKeysIn(t)}var reIsDeepProp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,reIsPlainProp=/^\w*$/;function isKey(t,n){if(isArray$4(t))return!1;var o=typeof t;return o=="number"||o=="symbol"||o=="boolean"||t==null||isSymbol(t)?!0:reIsPlainProp.test(t)||!reIsDeepProp.test(t)||n!=null&&t in Object(n)}var nativeCreate=getNative(Object,"create");function hashClear(){this.__data__=nativeCreate?nativeCreate(null):{},this.size=0}function hashDelete(t){var n=this.has(t)&&delete this.__data__[t];return this.size-=n?1:0,n}var HASH_UNDEFINED$2="__lodash_hash_undefined__",objectProto$8=Object.prototype,hasOwnProperty$8=objectProto$8.hasOwnProperty;function hashGet(t){var n=this.__data__;if(nativeCreate){var o=n[t];return o===HASH_UNDEFINED$2?void 0:o}return hasOwnProperty$8.call(n,t)?n[t]:void 0}var objectProto$7=Object.prototype,hasOwnProperty$7=objectProto$7.hasOwnProperty;function hashHas(t){var n=this.__data__;return nativeCreate?n[t]!==void 0:hasOwnProperty$7.call(n,t)}var HASH_UNDEFINED$1="__lodash_hash_undefined__";function hashSet(t,n){var o=this.__data__;return this.size+=this.has(t)?0:1,o[t]=nativeCreate&&n===void 0?HASH_UNDEFINED$1:n,this}function Hash(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])}}Hash.prototype.clear=hashClear,Hash.prototype.delete=hashDelete,Hash.prototype.get=hashGet,Hash.prototype.has=hashHas,Hash.prototype.set=hashSet;function listCacheClear(){this.__data__=[],this.size=0}function assocIndexOf(t,n){for(var o=t.length;o--;)if(eq(t[o][0],n))return o;return-1}var arrayProto=Array.prototype,splice=arrayProto.splice;function listCacheDelete(t){var n=this.__data__,o=assocIndexOf(n,t);if(o<0)return!1;var s=n.length-1;return o==s?n.pop():splice.call(n,o,1),--this.size,!0}function listCacheGet(t){var n=this.__data__,o=assocIndexOf(n,t);return o<0?void 0:n[o][1]}function listCacheHas(t){return assocIndexOf(this.__data__,t)>-1}function listCacheSet(t,n){var o=this.__data__,s=assocIndexOf(o,t);return s<0?(++this.size,o.push([t,n])):o[s][1]=n,this}function ListCache(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])}}ListCache.prototype.clear=listCacheClear,ListCache.prototype.delete=listCacheDelete,ListCache.prototype.get=listCacheGet,ListCache.prototype.has=listCacheHas,ListCache.prototype.set=listCacheSet;var Map$2=getNative(root$1,"Map");function mapCacheClear(){this.size=0,this.__data__={hash:new Hash,map:new(Map$2||ListCache),string:new Hash}}function isKeyable(t){var n=typeof t;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?t!=="__proto__":t===null}function getMapData(t,n){var o=t.__data__;return isKeyable(n)?o[typeof n=="string"?"string":"hash"]:o.map}function mapCacheDelete(t){var n=getMapData(this,t).delete(t);return this.size-=n?1:0,n}function mapCacheGet(t){return getMapData(this,t).get(t)}function mapCacheHas(t){return getMapData(this,t).has(t)}function mapCacheSet(t,n){var o=getMapData(this,t),s=o.size;return o.set(t,n),this.size+=o.size==s?0:1,this}function MapCache(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])}}MapCache.prototype.clear=mapCacheClear,MapCache.prototype.delete=mapCacheDelete,MapCache.prototype.get=mapCacheGet,MapCache.prototype.has=mapCacheHas,MapCache.prototype.set=mapCacheSet;var FUNC_ERROR_TEXT$1="Expected a function";function memoize(t,n){if(typeof t!="function"||n!=null&&typeof n!="function")throw new TypeError(FUNC_ERROR_TEXT$1);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(memoize.Cache||MapCache),o}memoize.Cache=MapCache;var MAX_MEMOIZE_SIZE=500;function memoizeCapped(t){var n=memoize(t,function(s){return o.size===MAX_MEMOIZE_SIZE&&o.clear(),s}),o=n.cache;return n}var rePropName=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,reEscapeChar=/\\(\\)?/g,stringToPath=memoizeCapped(function(t){var n=[];return t.charCodeAt(0)===46&&n.push(""),t.replace(rePropName,function(o,s,c,d){n.push(c?d.replace(reEscapeChar,"$1"):s||o)}),n});function toString$1(t){return t==null?"":baseToString(t)}function castPath(t,n){return isArray$4(t)?t:isKey(t,n)?[t]:stringToPath(toString$1(t))}function toKey(t){if(typeof t=="string"||isSymbol(t))return t;var n=t+"";return n=="0"&&1/t==-1/0?"-0":n}function baseGet(t,n){n=castPath(n,t);for(var o=0,s=n.length;t!=null&&o<s;)t=t[toKey(n[o++])];return o&&o==s?t:void 0}function get$3(t,n,o){var s=t==null?void 0:baseGet(t,n);return s===void 0?o:s}function arrayPush(t,n){for(var o=-1,s=n.length,c=t.length;++o<s;)t[c+o]=n[o];return t}var spreadableSymbol=Symbol$1?Symbol$1.isConcatSpreadable:void 0;function isFlattenable(t){return isArray$4(t)||isArguments(t)||!!(spreadableSymbol&&t&&t[spreadableSymbol])}function baseFlatten(t,n,o,s,c){var d=-1,h=t.length;for(o||(o=isFlattenable),c||(c=[]);++d<h;){var p=t[d];o(p)?arrayPush(c,p):c[c.length]=p}return c}function flatten$1(t){var n=t==null?0:t.length;return n?baseFlatten(t):[]}function flatRest(t){return setToString(overRest(t,void 0,flatten$1),t+"")}var getPrototype=overArg(Object.getPrototypeOf,Object),objectTag$3="[object Object]",funcProto=Function.prototype,objectProto$6=Object.prototype,funcToString=funcProto.toString,hasOwnProperty$6=objectProto$6.hasOwnProperty,objectCtorString=funcToString.call(Object);function isPlainObject(t){if(!isObjectLike(t)||baseGetTag(t)!=objectTag$3)return!1;var n=getPrototype(t);if(n===null)return!0;var o=hasOwnProperty$6.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&funcToString.call(o)==objectCtorString}function baseSlice(t,n,o){var s=-1,c=t.length;n<0&&(n=-n>c?0:c+n),o=o>c?c:o,o<0&&(o+=c),c=n>o?0:o-n>>>0,n>>>=0;for(var d=Array(c);++s<c;)d[s]=t[s+n];return d}function stackClear(){this.__data__=new ListCache,this.size=0}function stackDelete(t){var n=this.__data__,o=n.delete(t);return this.size=n.size,o}function stackGet(t){return this.__data__.get(t)}function stackHas(t){return this.__data__.has(t)}var LARGE_ARRAY_SIZE$2=200;function stackSet(t,n){var o=this.__data__;if(o instanceof ListCache){var s=o.__data__;if(!Map$2||s.length<LARGE_ARRAY_SIZE$2-1)return s.push([t,n]),this.size=++o.size,this;o=this.__data__=new MapCache(s)}return o.set(t,n),this.size=o.size,this}function Stack$1(t){var n=this.__data__=new ListCache(t);this.size=n.size}Stack$1.prototype.clear=stackClear,Stack$1.prototype.delete=stackDelete,Stack$1.prototype.get=stackGet,Stack$1.prototype.has=stackHas,Stack$1.prototype.set=stackSet;function baseAssign(t,n){return t&&copyObject(n,keys$1(n),t)}function baseAssignIn(t,n){return t&&copyObject(n,keysIn(n),t)}var freeExports=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule=freeExports&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports=freeModule&&freeModule.exports===freeExports,Buffer$3=moduleExports?root$1.Buffer:void 0,allocUnsafe$1=Buffer$3?Buffer$3.allocUnsafe:void 0;function cloneBuffer(t,n){if(n)return t.slice();var o=t.length,s=allocUnsafe$1?allocUnsafe$1(o):new t.constructor(o);return t.copy(s),s}function arrayFilter(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 stubArray(){return[]}var objectProto$5=Object.prototype,propertyIsEnumerable=objectProto$5.propertyIsEnumerable,nativeGetSymbols$1=Object.getOwnPropertySymbols,getSymbols=nativeGetSymbols$1?function(t){return t==null?[]:(t=Object(t),arrayFilter(nativeGetSymbols$1(t),function(n){return propertyIsEnumerable.call(t,n)}))}:stubArray;function copySymbols(t,n){return copyObject(t,getSymbols(t),n)}var nativeGetSymbols=Object.getOwnPropertySymbols,getSymbolsIn=nativeGetSymbols?function(t){for(var n=[];t;)arrayPush(n,getSymbols(t)),t=getPrototype(t);return n}:stubArray;function copySymbolsIn(t,n){return copyObject(t,getSymbolsIn(t),n)}function baseGetAllKeys(t,n,o){var s=n(t);return isArray$4(t)?s:arrayPush(s,o(t))}function getAllKeys(t){return baseGetAllKeys(t,keys$1,getSymbols)}function getAllKeysIn(t){return baseGetAllKeys(t,keysIn,getSymbolsIn)}var DataView$1=getNative(root$1,"DataView"),Promise$1=getNative(root$1,"Promise"),Set$1=getNative(root$1,"Set"),mapTag$4="[object Map]",objectTag$2="[object Object]",promiseTag="[object Promise]",setTag$4="[object Set]",weakMapTag$1="[object WeakMap]",dataViewTag$3="[object DataView]",dataViewCtorString=toSource(DataView$1),mapCtorString=toSource(Map$2),promiseCtorString=toSource(Promise$1),setCtorString=toSource(Set$1),weakMapCtorString=toSource(WeakMap$1),getTag$1=baseGetTag;(DataView$1&&getTag$1(new DataView$1(new ArrayBuffer(1)))!=dataViewTag$3||Map$2&&getTag$1(new Map$2)!=mapTag$4||Promise$1&&getTag$1(Promise$1.resolve())!=promiseTag||Set$1&&getTag$1(new Set$1)!=setTag$4||WeakMap$1&&getTag$1(new WeakMap$1)!=weakMapTag$1)&&(getTag$1=function(t){var n=baseGetTag(t),o=n==objectTag$2?t.constructor:void 0,s=o?toSource(o):"";if(s)switch(s){case dataViewCtorString:return dataViewTag$3;case mapCtorString:return mapTag$4;case promiseCtorString:return promiseTag;case setCtorString:return setTag$4;case weakMapCtorString:return weakMapTag$1}return n});var objectProto$4=Object.prototype,hasOwnProperty$5=objectProto$4.hasOwnProperty;function initCloneArray(t){var n=t.length,o=new t.constructor(n);return n&&typeof t[0]=="string"&&hasOwnProperty$5.call(t,"index")&&(o.index=t.index,o.input=t.input),o}var Uint8Array$1=root$1.Uint8Array;function cloneArrayBuffer(t){var n=new t.constructor(t.byteLength);return new Uint8Array$1(n).set(new Uint8Array$1(t)),n}function cloneDataView(t,n){var o=n?cloneArrayBuffer(t.buffer):t.buffer;return new t.constructor(o,t.byteOffset,t.byteLength)}var reFlags=/\w*$/;function cloneRegExp(t){var n=new t.constructor(t.source,reFlags.exec(t));return n.lastIndex=t.lastIndex,n}var symbolProto$1=Symbol$1?Symbol$1.prototype:void 0,symbolValueOf$1=symbolProto$1?symbolProto$1.valueOf:void 0;function cloneSymbol(t){return symbolValueOf$1?Object(symbolValueOf$1.call(t)):{}}function cloneTypedArray(t,n){var o=n?cloneArrayBuffer(t.buffer):t.buffer;return new t.constructor(o,t.byteOffset,t.length)}var boolTag$2="[object Boolean]",dateTag$2="[object Date]",mapTag$3="[object Map]",numberTag$2="[object Number]",regexpTag$2="[object RegExp]",setTag$3="[object Set]",stringTag$2="[object String]",symbolTag$2="[object Symbol]",arrayBufferTag$2="[object ArrayBuffer]",dataViewTag$2="[object DataView]",float32Tag$1="[object Float32Array]",float64Tag$1="[object Float64Array]",int8Tag$1="[object Int8Array]",int16Tag$1="[object Int16Array]",int32Tag$1="[object Int32Array]",uint8Tag$1="[object Uint8Array]",uint8ClampedTag$1="[object Uint8ClampedArray]",uint16Tag$1="[object Uint16Array]",uint32Tag$1="[object Uint32Array]";function initCloneByTag(t,n,o){var s=t.constructor;switch(n){case arrayBufferTag$2:return cloneArrayBuffer(t);case boolTag$2:case dateTag$2:return new s(+t);case dataViewTag$2:return cloneDataView(t,o);case float32Tag$1:case float64Tag$1:case int8Tag$1:case int16Tag$1:case int32Tag$1:case uint8Tag$1:case uint8ClampedTag$1:case uint16Tag$1:case uint32Tag$1:return cloneTypedArray(t,o);case mapTag$3:return new s;case numberTag$2:case stringTag$2:return new s(t);case regexpTag$2:return cloneRegExp(t);case setTag$3:return new s;case symbolTag$2:return cloneSymbol(t)}}function initCloneObject(t){return typeof t.constructor=="function"&&!isPrototype(t)?baseCreate(getPrototype(t)):{}}var mapTag$2="[object Map]";function baseIsMap(t){return isObjectLike(t)&&getTag$1(t)==mapTag$2}var nodeIsMap=nodeUtil&&nodeUtil.isMap,isMap=nodeIsMap?baseUnary(nodeIsMap):baseIsMap,setTag$2="[object Set]";function baseIsSet(t){return isObjectLike(t)&&getTag$1(t)==setTag$2}var nodeIsSet=nodeUtil&&nodeUtil.isSet,isSet=nodeIsSet?baseUnary(nodeIsSet):baseIsSet,CLONE_DEEP_FLAG$2=1,CLONE_FLAT_FLAG$1=2,CLONE_SYMBOLS_FLAG$2=4,argsTag$1="[object Arguments]",arrayTag$1="[object Array]",boolTag$1="[object Boolean]",dateTag$1="[object Date]",errorTag$1="[object Error]",funcTag="[object Function]",genTag="[object GeneratorFunction]",mapTag$1="[object Map]",numberTag$1="[object Number]",objectTag$1="[object Object]",regexpTag$1="[object RegExp]",setTag$1="[object Set]",stringTag$1="[object String]",symbolTag$1="[object Symbol]",weakMapTag="[object WeakMap]",arrayBufferTag$1="[object ArrayBuffer]",dataViewTag$1="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",cloneableTags={};cloneableTags[argsTag$1]=cloneableTags[arrayTag$1]=cloneableTags[arrayBufferTag$1]=cloneableTags[dataViewTag$1]=cloneableTags[boolTag$1]=cloneableTags[dateTag$1]=cloneableTags[float32Tag]=cloneableTags[float64Tag]=cloneableTags[int8Tag]=cloneableTags[int16Tag]=cloneableTags[int32Tag]=cloneableTags[mapTag$1]=cloneableTags[numberTag$1]=cloneableTags[objectTag$1]=cloneableTags[regexpTag$1]=cloneableTags[setTag$1]=cloneableTags[stringTag$1]=cloneableTags[symbolTag$1]=cloneableTags[uint8Tag]=cloneableTags[uint8ClampedTag]=cloneableTags[uint16Tag]=cloneableTags[uint32Tag]=!0,cloneableTags[errorTag$1]=cloneableTags[funcTag]=cloneableTags[weakMapTag]=!1;function baseClone(t,n,o,s,c,d){var h,p=n&CLONE_DEEP_FLAG$2,y=n&CLONE_FLAT_FLAG$1,S=n&CLONE_SYMBOLS_FLAG$2;if(o&&(h=c?o(t,s,c,d):o(t)),h!==void 0)return h;if(!isObject$2(t))return t;var P=isArray$4(t);if(P){if(h=initCloneArray(t),!p)return copyArray(t,h)}else{var L=getTag$1(t),F=L==funcTag||L==genTag;if(isBuffer$1(t))return cloneBuffer(t,p);if(L==objectTag$1||L==argsTag$1||F&&!c){if(h=y||F?{}:initCloneObject(t),!p)return y?copySymbolsIn(t,baseAssignIn(h,t)):copySymbols(t,baseAssign(h,t))}else{if(!cloneableTags[L])return c?t:{};h=initCloneByTag(t,L,p)}}d||(d=new Stack$1);var N=d.get(t);if(N)return N;d.set(t,h),isSet(t)?t.forEach(function(lt){h.add(baseClone(lt,n,o,lt,t,d))}):isMap(t)&&t.forEach(function(lt,Pe){h.set(Pe,baseClone(lt,n,o,Pe,t,d))});var z=S?y?getAllKeysIn:getAllKeys:y?keysIn:keys$1,W=P?void 0:z(t);return arrayEach(W||t,function(lt,Pe){W&&(Pe=lt,lt=t[Pe]),assignValue(h,Pe,baseClone(lt,n,o,Pe,t,d))}),h}var CLONE_DEEP_FLAG$1=1,CLONE_SYMBOLS_FLAG$1=4;function cloneDeep(t){return baseClone(t,CLONE_DEEP_FLAG$1|CLONE_SYMBOLS_FLAG$1)}var HASH_UNDEFINED="__lodash_hash_undefined__";function setCacheAdd(t){return this.__data__.set(t,HASH_UNDEFINED),this}function setCacheHas(t){return this.__data__.has(t)}function SetCache(t){var n=-1,o=t==null?0:t.length;for(this.__data__=new MapCache;++n<o;)this.add(t[n])}SetCache.prototype.add=SetCache.prototype.push=setCacheAdd,SetCache.prototype.has=setCacheHas;function arraySome(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 cacheHas(t,n){return t.has(n)}var COMPARE_PARTIAL_FLAG$5=1,COMPARE_UNORDERED_FLAG$3=2;function equalArrays$2(t,n,o,s,c,d){var h=o&COMPARE_PARTIAL_FLAG$5,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&COMPARE_UNORDERED_FLAG$3?new SetCache:void 0;for(d.set(t,n),d.set(n,t);++L<p;){var z=t[L],W=n[L];if(s)var lt=h?s(W,z,L,n,t,d):s(z,W,L,t,n,d);if(lt!==void 0){if(lt)continue;F=!1;break}if(N){if(!arraySome(n,function(Pe,se){if(!cacheHas(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 mapToArray(t){var n=-1,o=Array(t.size);return t.forEach(function(s,c){o[++n]=[c,s]}),o}function setToArray(t){var n=-1,o=Array(t.size);return t.forEach(function(s){o[++n]=s}),o}var COMPARE_PARTIAL_FLAG$4=1,COMPARE_UNORDERED_FLAG$2=2,boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",mapTag="[object Map]",numberTag="[object Number]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",symbolTag="[object Symbol]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",symbolProto=Symbol$1?Symbol$1.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0;function equalByTag(t,n,o,s,c,d,h){switch(o){case dataViewTag:if(t.byteLength!=n.byteLength||t.byteOffset!=n.byteOffset)return!1;t=t.buffer,n=n.buffer;case arrayBufferTag:return!(t.byteLength!=n.byteLength||!d(new Uint8Array$1(t),new Uint8Array$1(n)));case boolTag:case dateTag:case numberTag:return eq(+t,+n);case errorTag:return t.name==n.name&&t.message==n.message;case regexpTag:case stringTag:return t==n+"";case mapTag:var p=mapToArray;case setTag:var y=s&COMPARE_PARTIAL_FLAG$4;if(p||(p=setToArray),t.size!=n.size&&!y)return!1;var S=h.get(t);if(S)return S==n;s|=COMPARE_UNORDERED_FLAG$2,h.set(t,n);var P=equalArrays$2(p(t),p(n),s,c,d,h);return h.delete(t),P;case symbolTag:if(symbolValueOf)return symbolValueOf.call(t)==symbolValueOf.call(n)}return!1}var COMPARE_PARTIAL_FLAG$3=1,objectProto$3=Object.prototype,hasOwnProperty$4=objectProto$3.hasOwnProperty;function equalObjects(t,n,o,s,c,d){var h=o&COMPARE_PARTIAL_FLAG$3,p=getAllKeys(t),y=p.length,S=getAllKeys(n),P=S.length;if(y!=P&&!h)return!1;for(var L=y;L--;){var F=p[L];if(!(h?F in n:hasOwnProperty$4.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 lt=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}lt||(lt=F=="constructor")}if(W&&!lt){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 COMPARE_PARTIAL_FLAG$2=1,argsTag="[object Arguments]",arrayTag="[object Array]",objectTag="[object Object]",objectProto$2=Object.prototype,hasOwnProperty$3=objectProto$2.hasOwnProperty;function baseIsEqualDeep(t,n,o,s,c,d){var h=isArray$4(t),p=isArray$4(n),y=h?arrayTag:getTag$1(t),S=p?arrayTag:getTag$1(n);y=y==argsTag?objectTag:y,S=S==argsTag?objectTag:S;var P=y==objectTag,L=S==objectTag,F=y==S;if(F&&isBuffer$1(t)){if(!isBuffer$1(n))return!1;h=!0,P=!1}if(F&&!P)return d||(d=new Stack$1),h||isTypedArray(t)?equalArrays$2(t,n,o,s,c,d):equalByTag(t,n,y,o,s,c,d);if(!(o&COMPARE_PARTIAL_FLAG$2)){var N=P&&hasOwnProperty$3.call(t,"__wrapped__"),z=L&&hasOwnProperty$3.call(n,"__wrapped__");if(N||z){var W=N?t.value():t,lt=z?n.value():n;return d||(d=new Stack$1),c(W,lt,o,s,d)}}return F?(d||(d=new Stack$1),equalObjects(t,n,o,s,c,d)):!1}function baseIsEqual(t,n,o,s,c){return t===n?!0:t==null||n==null||!isObjectLike(t)&&!isObjectLike(n)?t!==t&&n!==n:baseIsEqualDeep(t,n,o,s,baseIsEqual,c)}var COMPARE_PARTIAL_FLAG$1=1,COMPARE_UNORDERED_FLAG$1=2;function baseIsMatch(t,n,o,s){var c=o.length,d=c;if(t==null)return!d;for(t=Object(t);c--;){var h=o[c];if(h[2]?h[1]!==t[h[0]]:!(h[0]in t))return!1}for(;++c<d;){h=o[c];var p=h[0],y=t[p],S=h[1];if(h[2]){if(y===void 0&&!(p in t))return!1}else{var P=new Stack$1,L;if(!(L===void 0?baseIsEqual(S,y,COMPARE_PARTIAL_FLAG$1|COMPARE_UNORDERED_FLAG$1,s,P):L))return!1}}return!0}function isStrictComparable(t){return t===t&&!isObject$2(t)}function getMatchData(t){for(var n=keys$1(t),o=n.length;o--;){var s=n[o],c=t[s];n[o]=[s,c,isStrictComparable(c)]}return n}function matchesStrictComparable(t,n){return function(o){return o==null?!1:o[t]===n&&(n!==void 0||t in Object(o))}}function baseMatches(t){var n=getMatchData(t);return n.length==1&&n[0][2]?matchesStrictComparable(n[0][0],n[0][1]):function(o){return o===t||baseIsMatch(o,t,n)}}function baseHasIn(t,n){return t!=null&&n in Object(t)}function hasPath(t,n,o){n=castPath(n,t);for(var s=-1,c=n.length,d=!1;++s<c;){var h=toKey(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&&isLength(c)&&isIndex(h,c)&&(isArray$4(t)||isArguments(t)))}function hasIn(t,n){return t!=null&&hasPath(t,n,baseHasIn)}var COMPARE_PARTIAL_FLAG=1,COMPARE_UNORDERED_FLAG=2;function baseMatchesProperty(t,n){return isKey(t)&&isStrictComparable(n)?matchesStrictComparable(toKey(t),n):function(o){var s=get$3(o,t);return s===void 0&&s===n?hasIn(o,t):baseIsEqual(n,s,COMPARE_PARTIAL_FLAG|COMPARE_UNORDERED_FLAG)}}function baseProperty(t){return function(n){return n==null?void 0:n[t]}}function basePropertyDeep(t){return function(n){return baseGet(n,t)}}function property(t){return isKey(t)?baseProperty(toKey(t)):basePropertyDeep(t)}function baseIteratee(t){return typeof t=="function"?t:t==null?identity$3:typeof t=="object"?isArray$4(t)?baseMatchesProperty(t[0],t[1]):baseMatches(t):property(t)}function arrayAggregator(t,n,o,s){for(var c=-1,d=t==null?0:t.length;++c<d;){var h=t[c];n(s,h,o(h),t)}return s}function createBaseFor(t){return function(n,o,s){for(var c=-1,d=Object(n),h=s(n),p=h.length;p--;){var y=h[++c];if(o(d[y],y,d)===!1)break}return n}}var baseFor=createBaseFor();function baseForOwn(t,n){return t&&baseFor(t,n,keys$1)}function createBaseEach(t,n){return function(o,s){if(o==null)return o;if(!isArrayLike(o))return t(o,s);for(var c=o.length,d=-1,h=Object(o);++d<c&&s(h[d],d,h)!==!1;);return o}}var baseEach=createBaseEach(baseForOwn);function baseAggregator(t,n,o,s){return baseEach(t,function(c,d,h){n(s,c,o(c),h)}),s}function createAggregator(t,n){return function(o,s){var c=isArray$4(o)?arrayAggregator:baseAggregator,d={};return c(o,t,baseIteratee(s),d)}}var objectProto$1=Object.prototype,hasOwnProperty$2=objectProto$1.hasOwnProperty,defaults=baseRest(function(t,n){t=Object(t);var o=-1,s=n.length,c=s>2?n[2]:void 0;for(c&&isIterateeCall(n[0],n[1],c)&&(s=1);++o<s;)for(var d=n[o],h=keysIn(d),p=-1,y=h.length;++p<y;){var S=h[p],P=t[S];(P===void 0||eq(P,objectProto$1[S])&&!hasOwnProperty$2.call(t,S))&&(t[S]=d[S])}return t});function assignMergeValue(t,n,o){(o!==void 0&&!eq(t[n],o)||o===void 0&&!(n in t))&&baseAssignValue(t,n,o)}function isArrayLikeObject(t){return isObjectLike(t)&&isArrayLike(t)}function safeGet(t,n){if(!(n==="constructor"&&typeof t[n]=="function")&&n!="__proto__")return t[n]}function toPlainObject(t){return copyObject(t,keysIn(t))}function baseMergeDeep(t,n,o,s,c,d,h){var p=safeGet(t,o),y=safeGet(n,o),S=h.get(y);if(S){assignMergeValue(t,o,S);return}var P=d?d(p,y,o+"",t,n,h):void 0,L=P===void 0;if(L){var F=isArray$4(y),N=!F&&isBuffer$1(y),z=!F&&!N&&isTypedArray(y);P=y,F||N||z?isArray$4(p)?P=p:isArrayLikeObject(p)?P=copyArray(p):N?(L=!1,P=cloneBuffer(y,!0)):z?(L=!1,P=cloneTypedArray(y,!0)):P=[]:isPlainObject(y)||isArguments(y)?(P=p,isArguments(p)?P=toPlainObject(p):(!isObject$2(p)||isFunction$2(p))&&(P=initCloneObject(y))):L=!1}L&&(h.set(y,P),c(P,y,s,d,h),h.delete(y)),assignMergeValue(t,o,P)}function baseMerge(t,n,o,s,c){t!==n&&baseFor(n,function(d,h){if(c||(c=new Stack$1),isObject$2(d))baseMergeDeep(t,n,h,o,baseMerge,s,c);else{var p=s?s(safeGet(t,h),d,h+"",t,n,c):void 0;p===void 0&&(p=d),assignMergeValue(t,h,p)}},keysIn)}var LARGE_ARRAY_SIZE$1=200;function baseDifference(t,n,o,s){var c=-1,d=arrayIncludes,h=!0,p=t.length,y=[],S=n.length;if(!p)return y;o&&(n=arrayMap(n,baseUnary(o))),n.length>=LARGE_ARRAY_SIZE$1&&(d=cacheHas,h=!1,n=new SetCache(n));e:for(;++c<p;){var P=t[c],L=o==null?P:o(P);if(P=P!==0?P:0,h&&L===L){for(var F=S;F--;)if(n[F]===L)continue e;y.push(P)}else d(n,L,s)||y.push(P)}return y}function last(t){var n=t==null?0:t.length;return n?t[n-1]:void 0}function fromPairs(t){for(var n=-1,o=t==null?0:t.length,s={};++n<o;){var c=t[n];s[c[0]]=c[1]}return s}var objectProto=Object.prototype,hasOwnProperty$1=objectProto.hasOwnProperty,groupBy=createAggregator(function(t,n,o){hasOwnProperty$1.call(t,o)?t[o].push(n):baseAssignValue(t,o,[n])});function parent(t,n){return n.length<2?t:baseGet(t,baseSlice(n,0,-1))}function isEqual(t,n){return baseIsEqual(t,n)}var merge=createAssigner(function(t,n,o){baseMerge(t,n,o)}),FUNC_ERROR_TEXT="Expected a function";function negate(t){if(typeof t!="function")throw new TypeError(FUNC_ERROR_TEXT);return function(){var n=arguments;switch(n.length){case 0:return!t.call(this);case 1:return!t.call(this,n[0]);case 2:return!t.call(this,n[0],n[1]);case 3:return!t.call(this,n[0],n[1],n[2])}return!t.apply(this,n)}}function baseUnset(t,n){return n=castPath(n,t),t=parent(t,n),t==null||delete t[toKey(last(n))]}function customOmitClone(t){return isPlainObject(t)?void 0:t}var CLONE_DEEP_FLAG=1,CLONE_FLAT_FLAG=2,CLONE_SYMBOLS_FLAG=4,omit=flatRest(function(t,n){var o={};if(t==null)return o;var s=!1;n=arrayMap(n,function(d){return d=castPath(d,t),s||(s=d.length>1),d}),copyObject(t,getAllKeysIn(t),o),s&&(o=baseClone(o,CLONE_DEEP_FLAG|CLONE_FLAT_FLAG|CLONE_SYMBOLS_FLAG,customOmitClone));for(var c=n.length;c--;)baseUnset(o,n[c]);return o});function baseSet(t,n,o,s){if(!isObject$2(t))return t;n=castPath(n,t);for(var c=-1,d=n.length,h=d-1,p=t;p!=null&&++c<d;){var y=toKey(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=isObject$2(P)?P:isIndex(n[c+1])?[]:{})}assignValue(p,y,S),p=p[y]}return t}function basePickBy(t,n,o){for(var s=-1,c=n.length,d={};++s<c;){var h=n[s],p=baseGet(t,h);o(p,h)&&baseSet(d,castPath(h,t),p)}return d}function pickBy(t,n){if(t==null)return{};var o=arrayMap(getAllKeysIn(t),function(s){return[s]});return n=baseIteratee(n),basePickBy(t,o,function(s,c){return n(s,c[0])})}function omitBy(t,n){return pickBy(t,negate(baseIteratee(n)))}function basePick(t,n){return basePickBy(t,n,function(o,s){return hasIn(t,s)})}var pick=flatRest(function(t,n){return t==null?{}:basePick(t,n)}),INFINITY=1/0,createSet=Set$1&&1/setToArray(new Set$1([,-0]))[1]==INFINITY?function(t){return new Set$1(t)}:noop$3,LARGE_ARRAY_SIZE=200;function baseUniq(t,n,o){var s=-1,c=arrayIncludes,d=t.length,h=!0,p=[],y=p;if(d>=LARGE_ARRAY_SIZE){var S=n?null:createSet(t);if(S)return setToArray(S);h=!1,c=cacheHas,y=new SetCache}else y=n?[]:p;e:for(;++s<d;){var P=t[s],L=n?n(P):P;if(P=P!==0?P:0,h&&L===L){for(var F=y.length;F--;)if(y[F]===L)continue e;n&&y.push(L),p.push(P)}else c(y,L,o)||(y!==p&&y.push(L),p.push(P))}return p}function uniqBy(t,n){return t&&t.length?baseUniq(t,baseIteratee(n)):[]}function baseXor(t,n,o){var s=t.length;if(s<2)return s?baseUniq(t[0]):[];for(var c=-1,d=Array(s);++c<s;)for(var h=t[c],p=-1;++p<s;)p!=c&&(d[c]=baseDifference(d[c]||h,t[p],n,o));return baseUniq(baseFlatten(d),n,o)}var xorBy=baseRest(function(t){var n=last(t);return isArrayLikeObject(n)&&(n=void 0),baseXor(arrayFilter(t,isArrayLikeObject),baseIteratee(n))}),earthRadius=63710088e-1,factors={centimeters:earthRadius*100,centimetres:earthRadius*100,degrees:earthRadius/111325,feet:earthRadius*3.28084,inches:earthRadius*39.37,kilometers:earthRadius/1e3,kilometres:earthRadius/1e3,meters:earthRadius,metres:earthRadius,miles:earthRadius/1609.344,millimeters:earthRadius*1e3,millimetres:earthRadius*1e3,nauticalmiles:earthRadius/1852,radians:1,yards:earthRadius*1.0936};function feature$1(t,n,o){o===void 0&&(o={});var s={type:"Feature"};return(o.id===0||o.id)&&(s.id=o.id),o.bbox&&(s.bbox=o.bbox),s.properties=n||{},s.geometry=t,s}function point$1(t,n,o){if(o===void 0&&(o={}),!t)throw new Error("coordinates is required");if(!Array.isArray(t))throw new Error("coordinates must be an Array");if(t.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!isNumber$2(t[0])||!isNumber$2(t[1]))throw new Error("coordinates must contain numbers");var s={type:"Point",coordinates:t};return feature$1(s,n,o)}function polygon(t,n,o){o===void 0&&(o={});for(var s=0,c=t;s<c.length;s++){var d=c[s];if(d.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(var h=0;h<d[d.length-1].length;h++)if(d[d.length-1][h]!==d[0][h])throw new Error("First and last Position are not equivalent.")}var p={type:"Polygon",coordinates:t};return feature$1(p,n,o)}function lineString$1(t,n,o){if(o===void 0&&(o={}),t.length<2)throw new Error("coordinates must be an array of two or more positions");var s={type:"LineString",coordinates:t};return feature$1(s,n,o)}function featureCollection$2(t,n){n===void 0&&(n={});var o={type:"FeatureCollection"};return n.id&&(o.id=n.id),n.bbox&&(o.bbox=n.bbox),o.features=t,o}function radiansToLength(t,n){n===void 0&&(n="kilometers");var o=factors[n];if(!o)throw new Error(n+" units is invalid");return t*o}function lengthToRadians(t,n){n===void 0&&(n="kilometers");var o=factors[n];if(!o)throw new Error(n+" units is invalid");return t/o}function radiansToDegrees(t){var n=t%(2*Math.PI);return n*180/Math.PI}function degreesToRadians(t){var n=t%360;return n*Math.PI/180}function convertLength(t,n,o){if(n===void 0&&(n="kilometers"),o===void 0&&(o="kilometers"),!(t>=0))throw new Error("length must be a positive number");return radiansToLength(lengthToRadians(t,n),o)}function isNumber$2(t){return!isNaN(t)&&t!==null&&!Array.isArray(t)}function isObject$1(t){return!!t&&t.constructor===Object}function getCoord$2(t){if(!t)throw new Error("coord is required");if(!Array.isArray(t)){if(t.type==="Feature"&&t.geometry!==null&&t.geometry.type==="Point")return t.geometry.coordinates;if(t.type==="Point")return t.coordinates}if(Array.isArray(t)&&t.length>=2&&!Array.isArray(t[0])&&!Array.isArray(t[1]))return t;throw new Error("coord must be GeoJSON Point or an Array of numbers")}function getCoords$2(t){if(Array.isArray(t))return t;if(t.type==="Feature"){if(t.geometry!==null)return t.geometry.coordinates}else if(t.coordinates)return t.coordinates;throw new Error("coords must be GeoJSON Feature, Geometry Object or an Array")}function getGeom$2(t){return t.type==="Feature"?t.geometry:t}const getCoord$1=wrap(getCoord$2),getCoords$1=wrap(getCoords$2),getGeom$1=t=>{if(!(typeof t!="object"||!t||!("type"in t))){if(t.type==="Feature")return getGeom$1(t.geometry);if(!(t.type!=="Point"&&t.type!=="MultiPoint"&&t.type!=="LineString"&&t.type!=="MultiLineString"&&t.type!=="Polygon"&&t.type!=="MultiPolygon"))return t}};function wrap(t){return n=>{try{return t(n)}catch{return}}}function objKeys$1(t){return Object.keys(t)}function defaultValue$1(t,n){return t??n}const appearanceKeyObj={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},appearanceKeys=objKeys$1(appearanceKeyObj);function convertLayer(t){return convertLayerGroup(t)??convertLayerItem(t)}function convertLayerCommon(t){var n,o,s,c;return omitBy({id:t.id,isVisible:t.visible,title:t.title,creator:t.creator,infobox:t.infobox,tags:t.tags,property:(n=t.compat)==null?void 0:n.property,propertyId:(o=t.compat)==null?void 0:o.propertyId,pluginId:(s=t.compat)!=null&&s.extensionId?"reearth":void 0,extensionId:(c=t.compat)==null?void 0:c.extensionId},d=>typeof d>"u"||d===null)}function convertLayerGroup(t){var n;if(t.type==="group")return{...convertLayerCommon(t),children:((n=t.children)==null?void 0:n.map(convertLayer).filter(o=>!!o))??[]}}function convertLayerItem(t){if(t.type==="simple")return convertLayerCommon(t)}function getCompat(t){var c,d,h,p;if(!t||typeof t!="object"||t.type!=="simple")return;const n=((c=t.data)==null?void 0:c.type)==="geojson"?t.data.value:void 0;let o,s;if("marker"in t){const y=getCoord$1(n);s="marker",o={default:{...t.marker,...y&&y.length>=2?{location:{lng:y[0],lat:y[1]},height:y[2]}:{}}}}else if("polyline"in t){const y=getCoords$1(n);s="polyline",o={default:{...t.polyline,...y?{coordinates:y.map(S=>({lng:S[0],lat:S[1],height:S[2]}))}:{}}}}else if("polygon"in t){const y=getGeom$1(n);s="polygon",o={default:{...t.polygon,...(y==null?void 0:y.type)==="Polygon"?{polygon:y.coordinates.map(S=>S.map(P=>({lng:P[0],lat:P[1],height:P[2]})))}:{}}}}else if("photooverlay"in t){const y=getCoord$1(n);s="photooverlay",o={default:{...t.photooverlay,...y&&y.length>=2?{location:{lng:y[0],lat:y[1]},height:y[2]}:{}}}}else if("ellipsoid"in t){const y=getCoord$1(n);s="ellipsoid",o={default:{...t.ellipsoid,...y&&y.length>=2?{position:{lng:y[0],lat:y[1]},height:y[2]}:{}}}}else if("model"in t){const y=["shadows","colorBlend","color","colorBlendAmount","lightColor","silhouette","silhouetteColor","silhouetteSize"],S=omit(t.model,...y),P=omitBy(pick(t.model,...y),F=>typeof F>"u"||F===null),L=getCoord$1(n);s="model",o={default:{...S,...L&&L.length>=2?{location:{lng:L[0],lat:L[1]},height:L[2]}:{}},...Object.keys(P).length?{appearance:P}:{}}}else"3dtiles"in t?(s="tileset",o={default:{...t["3dtiles"],...((d=t.data)==null?void 0:d.type)==="3dtiles"&&t.data.url?{tileset:t.data.url}:{}}}):"resource"in t&&(s="resource",o={default:{...t.resource}});return{extensionId:s,property:o,...(h=t.compat)!=null&&h.propertyId?{propertyId:(p=t.compat)==null?void 0:p.propertyId}:{}}}function convertLegacyLayer(t){return t?convertLegacyLayerGroup(t)??convertLegacyLayerItem(t):void 0}function convertLegacyLayerCommon(t){const n=omitBy({extensionId:t.extensionId,property:t.property,propertyId:t.propertyId},o=>typeof o>"u"||o===null);return omitBy({id:t.id,title:t.title,visible:t.isVisible,creator:t.creator,infobox:t.infobox,tags:t.tags,...Object.keys(n).length?{compat:n}:{}},o=>typeof o>"u"||o===null)}function convertLegacyLayerGroup(t){var n;if(Array.isArray(t.children))return{type:"group",...convertLegacyLayerCommon(t),children:((n=t.children)==null?void 0:n.map(convertLegacyLayer).filter(o=>!!o))??[]}}function convertLegacyLayerItem(t){var d,h,p,y,S,P,L,F,N,z,W,lt,Pe,se,mt,kt,mn,pi,zi,Sa,fa,La,Ra,ma,yt,nt,_i,ba;if(Array.isArray(t.children))return;let n,o,s;if(t.extensionId==="marker")n="marker",s=["location","height"],(h=(d=t.property)==null?void 0:d.default)!=null&&h.location&&(o={type:"geojson",value:{type:"Feature",geometry:{type:"Point",coordinates:[t.property.default.location.lng,t.property.default.location.lat,...t.property.default.height?[t.property.default.height]:[]]}}});else if(t.extensionId==="polyline")n="polyline",s=["coordinates"],(y=(p=t.property)==null?void 0:p.default)!=null&&y.coordinates&&(o={type:"geojson",value:{type:"Feature",geometry:{type:"LineString",coordinates:t.property.default.coordinates.map(Sc=>[Sc.lng,Sc.lat,Sc.height])}}});else if(t.extensionId==="polygon")n="polygon",s=["polygon"],(P=(S=t.property)==null?void 0:S.default)!=null&&P.polygon&&(o={type:"geojson",value:{type:"Feature",geometry:{type:"Polygon",coordinates:t.property.default.polygon.map(Sc=>Sc.map(ms=>[ms.lng,ms.lat,ms.height]))}}});else if(t.extensionId==="rect"){if(n="polygon",s=["rect","height"],(F=(L=t.property)==null?void 0:L.default)!=null&&F.rect){const Sc=(z=(N=t.property)==null?void 0:N.default)==null?void 0:z.rect,ms=t.property.default.height;o={type:"geojson",value:{type:"Feature",geometry:{type:"Polygon",coordinates:[[[Sc.west,Sc.north,ms],[Sc.east,Sc.north,ms],[Sc.east,Sc.south,ms],[Sc.west,Sc.south,ms],[Sc.west,Sc.north,ms]]]}}}}}else if(t.extensionId==="photooverlay")n="photooverlay",s=["location","height"],(lt=(W=t.property)==null?void 0:W.default)!=null&&lt.location&&(o={type:"geojson",value:{type:"Feature",geometry:{type:"Point",coordinates:[t.property.default.location.lng,t.property.default.location.lat,...t.property.default.height?[t.property.default.height]:[]]}}});else if(t.extensionId==="ellipsoid")n="ellipsoid",s=["position","height"],(se=(Pe=t.property)==null?void 0:Pe.default)!=null&&se.position&&(o={type:"geojson",value:{type:"Feature",geometry:{type:"Point",coordinates:[t.property.default.position.lng,t.property.default.position.lat,...typeof t.property.default.height=="number"?[t.property.default.height]:[]]}}});else if(t.extensionId==="model")n="model",s=["location","height"],(kt=(mt=t.property)==null?void 0:mt.default)!=null&&kt.location&&(o={type:"geojson",value:{type:"Feature",geometry:{type:"Point",coordinates:[t.property.default.location.lng,t.property.default.location.lat,...typeof t.property.default.height=="number"?[t.property.default.height]:[]]}}});else if(t.extensionId==="tileset")n="3dtiles",s=["tileset","sourceType"],((pi=(mn=t.property)==null?void 0:mn.default)==null?void 0:pi.sourceType)==="osm"?o={type:"osm-buildings"}:(Sa=(zi=t.property)==null?void 0:zi.default)!=null&&Sa.tileset&&(o={type:"3dtiles",url:t.property.default.tileset});else if(t.extensionId==="resource")if(n="resource",(La=(fa=t.property)==null?void 0:fa.default)!=null&&La.url&&typeof t.property.default.url=="object"){const Sc=t.property.default.url;o={type:t.property.default.type,value:Sc}}else o={type:((ma=(Ra=t.property)==null?void 0:Ra.default)==null?void 0:ma.type)||"auto",url:(nt=(yt=t.property)==null?void 0:yt.default)==null?void 0:nt.url};else t.extensionId==="box"&&(n="box",s=["location","height"],(ba=(_i=t.property)==null?void 0:_i.default)!=null&&ba.location&&(o={type:"geojson",value:{type:"Feature",geometry:{type:"Point",coordinates:[t.property.default.location.lng,t.property.default.location.lat,...typeof t.property.default.location.height=="number"?[t.property.default.location.height]:[]]}}}));const c=n&&t.property?Object.fromEntries(Object.entries(t.property).flatMap(([Sc,ms])=>{if(!(Array.isArray(ms)||Sc==="id"||!ms||typeof ms!="object"))return Object.entries(ms).filter(([Xs])=>!(s!=null&&s.includes(Xs)))}).filter(Sc=>!!Sc)):void 0;return omitBy({type:"simple",...convertLegacyLayerCommon(t),data:o,...n&&c?{[n]:c}:{}},Sc=>typeof Sc>"u"||Sc===null)}function convertLegacyCluster(t){return t.map(n=>{var o;return{id:n.id,property:{default:n.default,layers:n.layers},layers:(o=n.layers)==null?void 0:o.map(s=>s.layer).filter(s=>!!s)}})}class Hooks{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 Plugins{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 Jsep{static get version(){return"1.3.8"}static toString(){return"JavaScript Expression Parser (JSEP) v"+Jsep.version}static addUnaryOp(n){return Jsep.max_unop_len=Math.max(n.length,Jsep.max_unop_len),Jsep.unary_ops[n]=1,Jsep}static addBinaryOp(n,o,s){return Jsep.max_binop_len=Math.max(n.length,Jsep.max_binop_len),Jsep.binary_ops[n]=o,s?Jsep.right_associative.add(n):Jsep.right_associative.delete(n),Jsep}static addIdentifierChar(n){return Jsep.additional_identifier_chars.add(n),Jsep}static addLiteral(n,o){return Jsep.literals[n]=o,Jsep}static removeUnaryOp(n){return delete Jsep.unary_ops[n],n.length===Jsep.max_unop_len&&(Jsep.max_unop_len=Jsep.getMaxKeyLen(Jsep.unary_ops)),Jsep}static removeAllUnaryOps(){return Jsep.unary_ops={},Jsep.max_unop_len=0,Jsep}static removeIdentifierChar(n){return Jsep.additional_identifier_chars.delete(n),Jsep}static removeBinaryOp(n){return delete Jsep.binary_ops[n],n.length===Jsep.max_binop_len&&(Jsep.max_binop_len=Jsep.getMaxKeyLen(Jsep.binary_ops)),Jsep.right_associative.delete(n),Jsep}static removeAllBinaryOps(){return Jsep.binary_ops={},Jsep.max_binop_len=0,Jsep}static removeLiteral(n){return delete Jsep.literals[n],Jsep}static removeAllLiterals(){return Jsep.literals={},Jsep}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 Jsep(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 Jsep.binary_ops[n]||0}static isIdentifierStart(n){return n>=65&&n<=90||n>=97&&n<=122||n>=128&&!Jsep.binary_ops[String.fromCharCode(n)]||Jsep.additional_identifier_chars.has(String.fromCharCode(n))}static isIdentifierPart(n){return Jsep.isIdentifierStart(n)||Jsep.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(Jsep.hooks[n]){const s={context:this,node:o};return Jsep.hooks.run(n,s),s.node}return o}searchHook(n){if(Jsep.hooks[n]){const o={context:this};return Jsep.hooks[n].find(function(s){return s.call(o.context,o),o.node}),o.node}}gobbleSpaces(){let n=this.code;for(;n===Jsep.SPACE_CODE||n===Jsep.TAB_CODE||n===Jsep.LF_CODE||n===Jsep.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:Jsep.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===Jsep.SEMCOL_CODE||s===Jsep.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,Jsep.max_binop_len),o=n.length;for(;o>0;){if(Jsep.binary_ops.hasOwnProperty(n)&&(!Jsep.isIdentifierStart(this.code)||this.index+n.length<this.expr.length&&!Jsep.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:Jsep.binaryPrecedence(o),right_a:Jsep.right_associative.has(o)},p=this.gobbleToken(),p||this.throwError("Expected expression after "+o),c=[h,d,p];o=this.gobbleBinaryOp();){if(s=Jsep.binaryPrecedence(o),s===0){this.index-=o.length;break}d={value:o,prec:s,right_a:Jsep.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:Jsep.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:Jsep.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,Jsep.isDecimalDigit(n)||n===Jsep.PERIOD_CODE)return this.gobbleNumericLiteral();if(n===Jsep.SQUOTE_CODE||n===Jsep.DQUOTE_CODE)c=this.gobbleStringLiteral();else if(n===Jsep.OBRACK_CODE)c=this.gobbleArray();else{for(o=this.expr.substr(this.index,Jsep.max_unop_len),s=o.length;s>0;){if(Jsep.unary_ops.hasOwnProperty(o)&&(!Jsep.isIdentifierStart(this.code)||this.index+o.length<this.expr.length&&!Jsep.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:Jsep.UNARY_EXP,operator:o,argument:d,prefix:!0})}o=o.substr(0,--s)}Jsep.isIdentifierStart(n)?(c=this.gobbleIdentifier(),Jsep.literals.hasOwnProperty(c.name)?c={type:Jsep.LITERAL,value:Jsep.literals[c.name],raw:c.name}:c.name===Jsep.this_str&&(c={type:Jsep.THIS_EXP})):n===Jsep.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===Jsep.PERIOD_CODE||o===Jsep.OBRACK_CODE||o===Jsep.OPAREN_CODE||o===Jsep.QUMARK_CODE;){let s;if(o===Jsep.QUMARK_CODE){if(this.expr.charCodeAt(this.index+1)!==Jsep.PERIOD_CODE)break;s=!0,this.index+=2,this.gobbleSpaces(),o=this.code}this.index++,o===Jsep.OBRACK_CODE?(n={type:Jsep.MEMBER_EXP,computed:!0,object:n,property:this.gobbleExpression()},this.gobbleSpaces(),o=this.code,o!==Jsep.CBRACK_CODE&&this.throwError("Unclosed ["),this.index++):o===Jsep.OPAREN_CODE?n={type:Jsep.CALL_EXP,arguments:this.gobbleArguments(Jsep.CPAREN_CODE),callee:n}:(o===Jsep.PERIOD_CODE||s)&&(s&&this.index--,this.gobbleSpaces(),n={type:Jsep.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(;Jsep.isDecimalDigit(this.code);)n+=this.expr.charAt(this.index++);if(this.code===Jsep.PERIOD_CODE)for(n+=this.expr.charAt(this.index++);Jsep.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++));Jsep.isDecimalDigit(this.code);)n+=this.expr.charAt(this.index++);Jsep.isDecimalDigit(this.expr.charCodeAt(this.index-1))||this.throwError("Expected exponent ("+n+this.char+")")}return s=this.code,Jsep.isIdentifierStart(s)?this.throwError("Variable names cannot start with a number ("+n+this.char+")"):(s===Jsep.PERIOD_CODE||n.length===1&&n.charCodeAt(0)===Jsep.PERIOD_CODE)&&this.throwError("Unexpected period"),{type:Jsep.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+=`
28
28
  `;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:Jsep.LITERAL,value:n,raw:this.expr.substring(o,this.index)}}gobbleIdentifier(){let n=this.code,o=this.index;for(Jsep.isIdentifierStart(n)?this.index++:this.throwError("Unexpected "+this.char);this.index<this.expr.length&&(n=this.code,Jsep.isIdentifierPart(n));)this.index++;return{type:Jsep.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===Jsep.CPAREN_CODE&&c&&c>=o.length&&this.throwError("Unexpected token "+String.fromCharCode(n));break}else if(d===Jsep.COMMA_CODE){if(this.index++,c++,c!==o.length){if(n===Jsep.CPAREN_CODE)this.throwError("Unexpected token ,");else if(n===Jsep.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===Jsep.COMPOUND)&&this.throwError("Expected comma"),o.push(h)}}return s||this.throwError("Expected "+String.fromCharCode(n)),o}gobbleGroup(){this.index++;let n=this.gobbleExpressions(Jsep.CPAREN_CODE);if(this.code===Jsep.CPAREN_CODE)return this.index++,n.length===1?n[0]:n.length?{type:Jsep.SEQUENCE_EXP,expressions:n}:!1;this.throwError("Unclosed (")}gobbleArray(){return this.index++,{type:Jsep.ARRAY_EXP,elements:this.gobbleArguments(Jsep.CBRACK_CODE)}}}const hooks=new Hooks;Object.assign(Jsep,{hooks,plugins:new Plugins(Jsep),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"}),Jsep.max_unop_len=Jsep.getMaxKeyLen(Jsep.unary_ops),Jsep.max_binop_len=Jsep.getMaxKeyLen(Jsep.binary_ops);const jsep=t=>new Jsep(t).parse(),staticMethods=Object.getOwnPropertyNames(Jsep);staticMethods.forEach(t=>{jsep[t]===void 0&&t!=="prototype"&&(jsep[t]=Jsep[t])}),jsep.Jsep=Jsep;const CONDITIONAL_EXP="ConditionalExpression";var ternary={name:"ternary",init(t){t.hooks.add("after-expression",function(o){if(o.node&&this.code===t.QUMARK_CODE){this.index++;const s=o.node,c=this.gobbleExpression();if(c||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===t.COLON_CODE){this.index++;const d=this.gobbleExpression();if(d||this.throwError("Expected expression"),o.node={type:CONDITIONAL_EXP,test:s,consequent:c,alternate:d},s.operator&&t.binary_ops[s.operator]<=.9){let h=s;for(;h.right.operator&&t.binary_ops[h.right.operator]<=.9;)h=h.right;o.node.test=h.right,h.right=o.node,o.node=s}}else this.throwError("Expected :")}})}};jsep.plugins.register(ternary);var ExpressionNodeType=(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))(ExpressionNodeType||{});const unaryOperators=["!","-","+"],binaryOperators=["+","-","*","/","%","===","!==",">",">=","<","<=","&&","||","!~","=~","==","!="],backslashRegex=/\\/g,backslashReplacement="@#%",replacementRegex=/@#%/g,rgbaMatcher$1=/^#([0-9a-f])([0-9a-f])([0-9a-f])([0-9a-f])?$/i,rrggbbaaMatcher$1=/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})?$/i,builtInColor={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 getEvaluateBinaryFunction(t){const n=binaryFunctions[t];return function(o){const s=this._left.evaluate(o),c=this._right.evaluate(o);return n(t,s,c)}}const binaryFunctions={atan2:getEvaluateBinaryComponentwise(Math.atan2,!1),pow:getEvaluateBinaryComponentwise(Math.pow,!1),min:getEvaluateBinaryComponentwise(Math.min,!0),max:getEvaluateBinaryComponentwise(Math.max,!0),startsWith:getEvaluateBinaryComponentwise(startsWith,!1)};function getEvaluateBinaryComponentwise(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 startsWith(t,n){return t.startsWith(n)}function getEvaluateUnaryFunction(t){const n=unaryFunctions[t];return function(o){const s=this._left.evaluate(o);return n(t,s)}}const unaryFunctions={abs:getEvaluateUnaryComponentwise(Math.abs),sqrt:getEvaluateUnaryComponentwise(Math.sqrt),cos:getEvaluateUnaryComponentwise(Math.cos),sin:getEvaluateUnaryComponentwise(Math.sin),tan:getEvaluateUnaryComponentwise(Math.tan),acos:getEvaluateUnaryComponentwise(Math.acos),asin:getEvaluateUnaryComponentwise(Math.asin),atan:getEvaluateUnaryComponentwise(Math.atan),radians:getEvaluateUnaryComponentwise(Cesium$1.Math.toRadians),degrees:getEvaluateUnaryComponentwise(Cesium$1.Math.toDegrees),sign:getEvaluateUnaryComponentwise(Cesium$1.Math.sign),floor:getEvaluateUnaryComponentwise(Math.floor),ceil:getEvaluateUnaryComponentwise(Math.ceil),round:getEvaluateUnaryComponentwise(Math.round),exp2:getEvaluateUnaryComponentwise(exp2),log:getEvaluateUnaryComponentwise(Math.log),log2:getEvaluateUnaryComponentwise(log2),fract:getEvaluateUnaryComponentwise(fract)};function getEvaluateUnaryComponentwise(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 fract(t){return t-Math.floor(t)}function exp2(t){return Math.pow(2,t)}function log2(t){return Cesium$1.Math.log2(t)}const rgbParenthesesMatcher$1=/^rgba?\(\s*([0-9.]+%?)\s*,\s*([0-9.]+%?)\s*,\s*([0-9.]+%?)(?:\s*,\s*([0-9.]+))?\s*\)$/i,hslParenthesesMatcher$1=/^hsla?\(\s*([0-9.]+)\s*,\s*([0-9.]+%)\s*,\s*([0-9.]+%)(?:\s*,\s*([0-9.]+))?\s*\)$/i;let Color$2=class Cp{constructor(n,o,s,c){Ef(this,"red");Ef(this,"green");Ef(this,"blue");Ef(this,"alpha");this.red=defaultValue$1(n,1),this.green=defaultValue$1(o,1),this.blue=defaultValue$1(s,1),this.alpha=defaultValue$1(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=getColor(n);if(typeof o<"u")return o;let s=rgbaMatcher$1.exec(n);if(s!==null){const c=new Cp;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(defaultValue$1(s[4],"f"),16)/15,c}if(s=rrggbbaaMatcher$1.exec(n),s!==null){const c=new Cp;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(defaultValue$1(s[4],"ff"),16)/255,c}if(s=rgbParenthesesMatcher$1.exec(n),s!==null){const c=new Cp;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(defaultValue$1(s[4],"1.0")),c}if(s=hslParenthesesMatcher$1.exec(n),s!==null)return Cp.fromHsl(parseFloat(s[1])/360,parseFloat(s[2])/100,parseFloat(s[3])/100,parseFloat(defaultValue$1(s[4],"1.0")))}static fromHsl(n,o,s,c){if(n=defaultValue$1(n,0)%1,o=defaultValue$1(o,0),s=defaultValue$1(s,0),c=defaultValue$1(c,1),n&&o&&s&&c){let d=s,h=s,p=s;const y=new Cp;if(o!==0){let S;s<.5?S=s*(1+o):S=s+o-s*o;const P=2*s-S;d=hue2rgb$1(P,S,n+1/3),h=hue2rgb$1(P,S,n),p=hue2rgb$1(P,S,n-1/3)}return typeof y>"u"?new Cp(d,h,p,c):(y.red=d,y.green=h,y.blue=p,y.alpha=c,y)}}toCssHexString(){let n=Cp.floatToByte(this.red).toString(16);n.length<2&&(n=`0${n}`);let o=Cp.floatToByte(this.green).toString(16);o.length<2&&(o=`0${o}`);let s=Cp.floatToByte(this.blue).toString(16);if(s.length<2&&(s=`0${s}`),this.alpha<1){let c=Cp.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(defaultValue$1(n,255)),o=Cp.byteToFloat(defaultValue$1(o,255)),s=Cp.byteToFloat(defaultValue$1(s,255)),c=Cp.byteToFloat(defaultValue$1(c,255)),new Cp(n,o,s,c)}};function getColor(t){if(t=t.toUpperCase(),builtInColor[t])return Color$2.fromCssColorString(builtInColor[t]);switch(t){case"TRANSPARENT":return new Color$2(0,0,0,0);default:return}}function hue2rgb$1(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 Node{constructor(n,o,s,c,d){Ef(this,"_type");Ef(this,"_value");Ef(this,"_left");Ef(this,"_right");Ef(this,"_test");Ef(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 ExpressionNodeType.CONDITIONAL:this.evaluate=this._evaluateConditional;break;case ExpressionNodeType.FUNCTION_CALL:switch(o){case"toString":this.evaluate=this._evaluateToString;break}break;case ExpressionNodeType.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 unaryFunctions[o]<"u"&&(this.evaluate=getEvaluateUnaryFunction(o));break}break;case ExpressionNodeType.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 binaryFunctions[o]<"u"&&(this.evaluate=getEvaluateBinaryFunction(o));break}break;case ExpressionNodeType.MEMBER:o==="brackets"?this.evaluate=this._evaluateMemberBrackets:this.evaluate=this._evaluateMemberDot;break;case ExpressionNodeType.ARRAY:this.evaluate=this._evaluateArray;break;case ExpressionNodeType.VARIABLE:this.evaluate=this._evaluateVariable;break;case ExpressionNodeType.VARIABLE_IN_STRING:this.evaluate=this._evaluateVariableString;break;case ExpressionNodeType.LITERAL_COLOR:this.evaluate=this._evaluateLiteralColor;break;case ExpressionNodeType.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(checkFeature(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(checkFeature(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=cleanseNumberStringInput(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 Color$2;if(this._value==="color")if(typeof o>"u")s=Color$2.fromBytes(255,255,255,255);else if(o.length>1){const c=Color$2.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=Color$2.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=Color$2.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=Color$2.fromBytes(o[0].evaluate(n),o[1].evaluate(n),o[2].evaluate(n),c)}else if(this._value==="hsl"){const c=Color$2.fromHsl(o[0].evaluate(n),o[1].evaluate(n),o[2].evaluate(n),1);c&&(s=c)}else if(this._value==="hsla"){const c=Color$2.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 isArray$3(o)&&!isArray$3(s)?o.includes(s):isArray$3(s)&&!isArray$3(o)?s.includes(o):(isArray$3(s)&&isArray$3(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 isArray$3(o)&&!isArray$3(s)?!o.includes(s):isArray$3(s)&&!isArray$3(o)?!s.includes(o):(isArray$3(s)&&isArray$3(o)&&console.error("NotEquals left and right both can't be array at the same time"),o!=s)}}function cleanseNumberStringInput(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 checkFeature(t){return t._value==="feature"}function isArray$3(t){return Array.isArray(t)}function _typeof(t){"@babel/helpers - typeof";return _typeof=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},_typeof(t)}function _classCallCheck(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}function _defineProperties(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,s.key,s)}}function _createClass(t,n,o){return n&&_defineProperties(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),t}function _inherits(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&&_setPrototypeOf(t,n)}function _getPrototypeOf(t){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(o){return o.__proto__||Object.getPrototypeOf(o)},_getPrototypeOf(t)}function _setPrototypeOf(t,n){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(s,c){return s.__proto__=c,s},_setPrototypeOf(t,n)}function _isNativeReflectConstruct(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function _construct(t,n,o){return _isNativeReflectConstruct()?_construct=Reflect.construct.bind():_construct=function(c,d,h){var p=[null];p.push.apply(p,d);var y=Function.bind.apply(c,p),S=new y;return h&&_setPrototypeOf(S,h.prototype),S},_construct.apply(null,arguments)}function _isNativeFunction(t){return Function.toString.call(t).indexOf("[native code]")!==-1}function _wrapNativeSuper(t){var n=typeof Map=="function"?new Map:void 0;return _wrapNativeSuper=function(s){if(s===null||!_isNativeFunction(s))return s;if(typeof s!="function")throw new TypeError("Super expression must either be null or a function");if(typeof n<"u"){if(n.has(s))return n.get(s);n.set(s,c)}function c(){return _construct(s,arguments,_getPrototypeOf(this).constructor)}return c.prototype=Object.create(s.prototype,{constructor:{value:c,enumerable:!1,writable:!0,configurable:!0}}),_setPrototypeOf(c,s)},_wrapNativeSuper(t)}function _assertThisInitialized(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function _possibleConstructorReturn(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 _assertThisInitialized(t)}function _createSuper(t){var n=_isNativeReflectConstruct();return function(){var s=_getPrototypeOf(t),c;if(n){var d=_getPrototypeOf(this).constructor;c=Reflect.construct(s,arguments,d)}else c=s.apply(this,arguments);return _possibleConstructorReturn(this,c)}}function _toConsumableArray(t){return _arrayWithoutHoles(t)||_iterableToArray(t)||_unsupportedIterableToArray(t)||_nonIterableSpread()}function _arrayWithoutHoles(t){if(Array.isArray(t))return _arrayLikeToArray(t)}function _iterableToArray(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function _unsupportedIterableToArray(t,n){if(t){if(typeof t=="string")return _arrayLikeToArray(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 _arrayLikeToArray(t,n)}}function _arrayLikeToArray(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 _nonIterableSpread(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
@@ -97,7 +97,7 @@ Event: `).concat(JSON.stringify(F.data))),s.state;if(s.status!==InterpreterStatu
97
97
  Event: `).concat(JSON.stringify(F.data)));return s.scheduler.schedule(function(){s.forward(F);var N=s._nextState(F);s.update(N,F)}),s._state},this.sendTo=function(P,L,F){var N=s.parent&&(L===SpecialTargets.Parent||s.parent.id===L),z=N?s.parent:isString$2(L)?L===SpecialTargets.Internal?s:s.children.get(L)||registry.get(L):isActor$1(L)?L:void 0;if(!z){if(!N)throw new Error("Unable to send event to child '".concat(L,"' from service '").concat(s.id,"'."));IS_PRODUCTION||warn(!1,"Service '".concat(s.id,"' has no parent: unable to send event ").concat(P.type));return}if("machine"in z){if(s.status!==InterpreterStatus.Stopped||s.parent!==z||s.state.done){var W=__assign$1(__assign$1({},P),{name:P.name===error$1?"".concat(error(s.id)):P.name,origin:s.sessionId});!F&&s.machine.config.predictableActionArguments?s._outgoingQueue.push([z,W]):z.send(W)}}else!F&&s.machine.config.predictableActionArguments?s._outgoingQueue.push([z,P.data]):z.send(P.data)},this._exec=function(P,L,F,N){N===void 0&&(N=s.machine.options.actions);var z=P.exec||getActionFunction(P.type,N),W=isFunction$1(z)?z:z?z.exec:P.exec;if(W)try{return W(L,F.data,s.machine.config.predictableActionArguments?{action:P,_event:F}:{action:P,state:s.state,_event:F})}catch(nt){throw s.parent&&s.parent.send({type:"xstate.error",data:nt}),nt}switch(P.type){case raise$2:{var lt=P;s.defer(lt);break}case send$1:var Pe=P;if(typeof Pe.delay=="number"){s.defer(Pe);return}else Pe.to?s.sendTo(Pe._event,Pe.to,F===initEvent):s.send(Pe._event);break;case cancel$1:s.cancel(P.sendId);break;case start$2:{if(s.status!==InterpreterStatus.Running)return;var se=P.activity;if(!s.machine.config.predictableActionArguments&&!s.state.activities[se.id||se.type])break;if(se.type===ActionTypes.Invoke){var mt=toInvokeSource$1(se.src),kt=s.machine.options.services?s.machine.options.services[mt.type]:void 0,mn=se.id,pi=se.data;IS_PRODUCTION||warn(!("forward"in se),"`forward` property is deprecated (found in invocation of '".concat(se.src,"' in in machine '").concat(s.machine.id,"'). ")+"Please use `autoForward` instead.");var zi="autoForward"in se?se.autoForward:!!se.forward;if(!kt){IS_PRODUCTION||warn(!1,"No service found for invocation '".concat(se.src,"' in machine '").concat(s.machine.id,"'."));return}var Sa=pi?mapContext(pi,L,F):void 0;if(typeof kt=="string")return;var fa=isFunction$1(kt)?kt(L,F.data,{data:Sa,src:mt,meta:se.meta}):kt;if(!fa)return;var La=void 0;isMachine(fa)&&(fa=Sa?fa.withContext(Sa):fa,La={autoForward:zi}),s.spawn(fa,mn,La)}else s.spawnActivity(se);break}case stop$1:{s.stopChild(P.activity.id);break}case log:var Ra=P,ma=Ra.label,yt=Ra.value;ma?s.logger(ma,yt):s.logger(yt);break;default:IS_PRODUCTION||warn(!1,"No implementation found for action type '".concat(P.type,"'"));break}};var c=__assign$1(__assign$1({},t.defaultOptions),o),d=c.clock,h=c.logger,p=c.parent,y=c.id,S=y!==void 0?y:n.id;this.id=S,this.logger=h,this.clock=d,this.parent=p,this.options=c,this.scheduler=new Scheduler({deferEvents:this.options.deferEvents}),this.sessionId=registry.bookId()}return Object.defineProperty(t.prototype,"initialState",{get:function(){var n=this;return this._initialState?this._initialState:provide(this,function(){return n._initialState=n.machine.initialState,n._initialState})},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"state",{get:function(){return IS_PRODUCTION||warn(this.status!==InterpreterStatus.NotStarted,"Attempted to read state from uninitialized service '".concat(this.id,"'. Make sure the service is started first.")),this._state},enumerable:!1,configurable:!0}),t.prototype.execute=function(n,o){var s,c;try{for(var d=__values$1(n.actions),h=d.next();!h.done;h=d.next()){var p=h.value;this.exec(p,n,o)}}catch(y){s={error:y}}finally{try{h&&!h.done&&(c=d.return)&&c.call(d)}finally{if(s)throw s.error}}},t.prototype.update=function(n,o){var s,c,d,h,p,y,S,P,L=this;if(n._sessionid=this.sessionId,this._state=n,(!this.machine.config.predictableActionArguments||o===initEvent)&&this.options.execute)this.execute(this.state);else for(var F=void 0;F=this._outgoingQueue.shift();)F[0].send(F[1]);if(this.children.forEach(function(fa){L.state.children[fa.id]=fa}),this.devTools&&this.devTools.send(o.data,n),n.event)try{for(var N=__values$1(this.eventListeners),z=N.next();!z.done;z=N.next()){var W=z.value;W(n.event)}}catch(fa){s={error:fa}}finally{try{z&&!z.done&&(c=N.return)&&c.call(N)}finally{if(s)throw s.error}}try{for(var lt=__values$1(this.listeners),Pe=lt.next();!Pe.done;Pe=lt.next()){var W=Pe.value;W(n,n.event)}}catch(fa){d={error:fa}}finally{try{Pe&&!Pe.done&&(h=lt.return)&&h.call(lt)}finally{if(d)throw d.error}}try{for(var se=__values$1(this.contextListeners),mt=se.next();!mt.done;mt=se.next()){var kt=mt.value;kt(this.state.context,this.state.history?this.state.history.context:void 0)}}catch(fa){p={error:fa}}finally{try{mt&&!mt.done&&(y=se.return)&&y.call(se)}finally{if(p)throw p.error}}if(this.state.done){var mn=n.configuration.find(function(fa){return fa.type==="final"&&fa.parent===L.machine}),pi=mn&&mn.doneData?mapContext(mn.doneData,n.context,o):void 0;this._doneEvent=doneInvoke(this.id,pi);try{for(var zi=__values$1(this.doneListeners),Sa=zi.next();!Sa.done;Sa=zi.next()){var W=Sa.value;W(this._doneEvent)}}catch(fa){S={error:fa}}finally{try{Sa&&!Sa.done&&(P=zi.return)&&P.call(zi)}finally{if(S)throw S.error}}this._stop(),this._stopChildren(),registry.free(this.sessionId)}},t.prototype.onTransition=function(n){return this.listeners.add(n),this.status===InterpreterStatus.Running&&n(this.state,this.state.event),this},t.prototype.subscribe=function(n,o,s){var c=this,d=toObserver(n,o,s);this.listeners.add(d.next),this.status!==InterpreterStatus.NotStarted&&d.next(this.state);var h=function(){c.doneListeners.delete(h),c.stopListeners.delete(h),d.complete()};return this.status===InterpreterStatus.Stopped?d.complete():(this.onDone(h),this.onStop(h)),{unsubscribe:function(){c.listeners.delete(d.next),c.doneListeners.delete(h),c.stopListeners.delete(h)}}},t.prototype.onEvent=function(n){return this.eventListeners.add(n),this},t.prototype.onSend=function(n){return this.sendListeners.add(n),this},t.prototype.onChange=function(n){return this.contextListeners.add(n),this},t.prototype.onStop=function(n){return this.stopListeners.add(n),this},t.prototype.onDone=function(n){return this.status===InterpreterStatus.Stopped&&this._doneEvent?n(this._doneEvent):this.doneListeners.add(n),this},t.prototype.off=function(n){return this.listeners.delete(n),this.eventListeners.delete(n),this.sendListeners.delete(n),this.stopListeners.delete(n),this.doneListeners.delete(n),this.contextListeners.delete(n),this},t.prototype.start=function(n){var o=this;if(this.status===InterpreterStatus.Running)return this;this.machine._init(),registry.register(this.sessionId,this),this.initialized=!0,this.status=InterpreterStatus.Running;var s=n===void 0?this.initialState:provide(this,function(){return isStateConfig(n)?o.machine.resolveState(n):o.machine.resolveState(State.from(n,o.machine.context))});return this.options.devTools&&this.attachDev(),this.scheduler.initialize(function(){o.update(s,initEvent)}),this},t.prototype._stopChildren=function(){this.children.forEach(function(n){isFunction$1(n.stop)&&n.stop()}),this.children.clear()},t.prototype._stop=function(){var n,o,s,c,d,h,p,y,S,P;try{for(var L=__values$1(this.listeners),F=L.next();!F.done;F=L.next()){var N=F.value;this.listeners.delete(N)}}catch(zi){n={error:zi}}finally{try{F&&!F.done&&(o=L.return)&&o.call(L)}finally{if(n)throw n.error}}try{for(var z=__values$1(this.stopListeners),W=z.next();!W.done;W=z.next()){var N=W.value;N(),this.stopListeners.delete(N)}}catch(zi){s={error:zi}}finally{try{W&&!W.done&&(c=z.return)&&c.call(z)}finally{if(s)throw s.error}}try{for(var lt=__values$1(this.contextListeners),Pe=lt.next();!Pe.done;Pe=lt.next()){var N=Pe.value;this.contextListeners.delete(N)}}catch(zi){d={error:zi}}finally{try{Pe&&!Pe.done&&(h=lt.return)&&h.call(lt)}finally{if(d)throw d.error}}try{for(var se=__values$1(this.doneListeners),mt=se.next();!mt.done;mt=se.next()){var N=mt.value;this.doneListeners.delete(N)}}catch(zi){p={error:zi}}finally{try{mt&&!mt.done&&(y=se.return)&&y.call(se)}finally{if(p)throw p.error}}if(!this.initialized)return this;this.initialized=!1,this.status=InterpreterStatus.Stopped,this._initialState=void 0;try{for(var kt=__values$1(Object.keys(this.delayedEventsMap)),mn=kt.next();!mn.done;mn=kt.next()){var pi=mn.value;this.clock.clearTimeout(this.delayedEventsMap[pi])}}catch(zi){S={error:zi}}finally{try{mn&&!mn.done&&(P=kt.return)&&P.call(kt)}finally{if(S)throw S.error}}this.scheduler.clear(),this.scheduler=new Scheduler({deferEvents:this.options.deferEvents})},t.prototype.stop=function(){var n=this,o=this.scheduler;return this._stop(),o.schedule(function(){var s=toSCXMLEvent({type:"xstate.stop"}),c=provide(n,function(){var d=flatten(__spreadArray([],__read$2(n.state.configuration),!1).sort(function(P,L){return L.order-P.order}).map(function(P){return toActionObjects(P.onExit,n.machine.options.actions)})),h=__read$2(resolveActions(n.machine,n.state,n.state.context,s,[{type:"exit",actions:d}],n.machine.config.predictableActionArguments?n._exec:void 0,n.machine.config.predictableActionArguments||n.machine.config.preserveActionOrder),2),p=h[0],y=h[1],S=new State({value:n.state.value,context:y,_event:s,_sessionid:n.sessionId,historyValue:void 0,history:n.state,actions:p.filter(function(P){return!isRaisableAction(P)}),activities:{},events:[],configuration:[],transitions:[],children:{},done:n.state.done,tags:n.state.tags,machine:n.machine});return S.changed=!0,S});n.update(c,s),n._stopChildren(),registry.free(n.sessionId)}),this},t.prototype.batch=function(n){var o=this;if(this.status===InterpreterStatus.NotStarted&&this.options.deferEvents)IS_PRODUCTION||warn(!1,"".concat(n.length,' event(s) were sent to uninitialized service "').concat(this.machine.id,`" and are deferred. Make sure .start() is called for this service.
98
98
  Event: `).concat(JSON.stringify(event)));else if(this.status!==InterpreterStatus.Running)throw new Error("".concat(n.length,' event(s) were sent to uninitialized service "').concat(this.machine.id,'". Make sure .start() is called for this service, or set { deferEvents: true } in the service options.'));if(n.length){var s=!!this.machine.config.predictableActionArguments&&this._exec;this.scheduler.schedule(function(){var c,d,h=o.state,p=!1,y=[],S=function(N){var z=toSCXMLEvent(N);o.forward(z),h=provide(o,function(){return o.machine.transition(h,z,void 0,s||void 0)}),y.push.apply(y,__spreadArray([],__read$2(o.machine.config.predictableActionArguments?h.actions:h.actions.map(function(W){return bindActionToState(W,h)})),!1)),p=p||!!h.changed};try{for(var P=__values$1(n),L=P.next();!L.done;L=P.next()){var F=L.value;S(F)}}catch(N){c={error:N}}finally{try{L&&!L.done&&(d=P.return)&&d.call(P)}finally{if(c)throw c.error}}h.changed=p,h.actions=y,o.update(h,toSCXMLEvent(n[n.length-1]))})}},t.prototype.sender=function(n){return this.send.bind(this,n)},t.prototype._nextState=function(n,o){var s=this;o===void 0&&(o=!!this.machine.config.predictableActionArguments&&this._exec);var c=toSCXMLEvent(n);if(c.name.indexOf(errorPlatform)===0&&!this.state.nextEvents.some(function(h){return h.indexOf(errorPlatform)===0}))throw c.data.data;var d=provide(this,function(){return s.machine.transition(s.state,c,void 0,o||void 0)});return d},t.prototype.nextState=function(n){return this._nextState(n,!1)},t.prototype.forward=function(n){var o,s;try{for(var c=__values$1(this.forwardTo),d=c.next();!d.done;d=c.next()){var h=d.value,p=this.children.get(h);if(!p)throw new Error("Unable to forward event '".concat(n,"' from interpreter '").concat(this.id,"' to nonexistant child '").concat(h,"'."));p.send(n)}}catch(y){o={error:y}}finally{try{d&&!d.done&&(s=c.return)&&s.call(c)}finally{if(o)throw o.error}}},t.prototype.defer=function(n){var o=this,s=this.clock.setTimeout(function(){"to"in n&&n.to?o.sendTo(n._event,n.to,!0):o.send(n._event)},n.delay);n.id&&(this.delayedEventsMap[n.id]=s)},t.prototype.cancel=function(n){this.clock.clearTimeout(this.delayedEventsMap[n]),delete this.delayedEventsMap[n]},t.prototype.exec=function(n,o,s){s===void 0&&(s=this.machine.options.actions),this._exec(n,o.context,o._event,s)},t.prototype.removeChild=function(n){var o;this.children.delete(n),this.forwardTo.delete(n),(o=this.state)===null||o===void 0||delete o.children[n]},t.prototype.stopChild=function(n){var o=this.children.get(n);o&&(this.removeChild(n),isFunction$1(o.stop)&&o.stop())},t.prototype.spawn=function(n,o,s){if(this.status!==InterpreterStatus.Running)return createDeferredActor(n,o);if(isPromiseLike(n))return this.spawnPromise(Promise.resolve(n),o);if(isFunction$1(n))return this.spawnCallback(n,o);if(isSpawnedActor(n))return this.spawnActor(n,o);if(isObservable(n))return this.spawnObservable(n,o);if(isMachine(n))return this.spawnMachine(n,__assign$1(__assign$1({},s),{id:o}));if(isBehavior(n))return this.spawnBehavior(n,o);throw new Error('Unable to spawn entity "'.concat(o,'" of type "').concat(typeof n,'".'))},t.prototype.spawnMachine=function(n,o){var s=this;o===void 0&&(o={});var c=new t(n,__assign$1(__assign$1({},this.options),{parent:this,id:o.id||n.id})),d=__assign$1(__assign$1({},DEFAULT_SPAWN_OPTIONS),o);d.sync&&c.onTransition(function(p){s.send(update$2,{state:p,id:c.id})});var h=c;return this.children.set(c.id,h),d.autoForward&&this.forwardTo.add(c.id),c.onDone(function(p){s.removeChild(c.id),s.send(toSCXMLEvent(p,{origin:c.id}))}).start(),h},t.prototype.spawnBehavior=function(n,o){var s=spawnBehavior(n,{id:o,parent:this});return this.children.set(o,s),s},t.prototype.spawnPromise=function(n,o){var s,c=this,d=!1,h;n.then(function(y){d||(h=y,c.removeChild(o),c.send(toSCXMLEvent(doneInvoke(o,y),{origin:o})))},function(y){if(!d){c.removeChild(o);var S=error(o,y);try{c.send(toSCXMLEvent(S,{origin:o}))}catch(P){reportUnhandledExceptionOnInvocation(y,P,o),c.devTools&&c.devTools.send(S,c.state),c.machine.strict&&c.stop()}}});var p=(s={id:o,send:function(){},subscribe:function(y,S,P){var L=toObserver(y,S,P),F=!1;return n.then(function(N){F||(L.next(N),!F&&L.complete())},function(N){F||L.error(N)}),{unsubscribe:function(){return F=!0}}},stop:function(){d=!0},toJSON:function(){return{id:o}},getSnapshot:function(){return h}},s[symbolObservable]=function(){return this},s);return this.children.set(o,p),p},t.prototype.spawnCallback=function(n,o){var s,c=this,d=!1,h=new Set,p=new Set,y,S=function(F){y=F,p.forEach(function(N){return N(F)}),!d&&c.send(toSCXMLEvent(F,{origin:o}))},P;try{P=n(S,function(F){h.add(F)})}catch(F){this.send(error(o,F))}if(isPromiseLike(P))return this.spawnPromise(P,o);var L=(s={id:o,send:function(F){return h.forEach(function(N){return N(F)})},subscribe:function(F){var N=toObserver(F);return p.add(N.next),{unsubscribe:function(){p.delete(N.next)}}},stop:function(){d=!0,isFunction$1(P)&&P()},toJSON:function(){return{id:o}},getSnapshot:function(){return y}},s[symbolObservable]=function(){return this},s);return this.children.set(o,L),L},t.prototype.spawnObservable=function(n,o){var s,c=this,d,h=n.subscribe(function(y){d=y,c.send(toSCXMLEvent(y,{origin:o}))},function(y){c.removeChild(o),c.send(toSCXMLEvent(error(o,y),{origin:o}))},function(){c.removeChild(o),c.send(toSCXMLEvent(doneInvoke(o),{origin:o}))}),p=(s={id:o,send:function(){},subscribe:function(y,S,P){return n.subscribe(y,S,P)},stop:function(){return h.unsubscribe()},getSnapshot:function(){return d},toJSON:function(){return{id:o}}},s[symbolObservable]=function(){return this},s);return this.children.set(o,p),p},t.prototype.spawnActor=function(n,o){return this.children.set(o,n),n},t.prototype.spawnActivity=function(n){var o=this.machine.options&&this.machine.options.activities?this.machine.options.activities[n.type]:void 0;if(!o){IS_PRODUCTION||warn(!1,"No implementation found for activity '".concat(n.type,"'"));return}var s=o(this.state.context,n);this.spawnEffect(n.id,s)},t.prototype.spawnEffect=function(n,o){var s;this.children.set(n,(s={id:n,send:function(){},subscribe:function(){return{unsubscribe:function(){}}},stop:o||void 0,getSnapshot:function(){},toJSON:function(){return{id:n}}},s[symbolObservable]=function(){return this},s))},t.prototype.attachDev=function(){var n=getGlobal();if(this.options.devTools&&n){if(n.__REDUX_DEVTOOLS_EXTENSION__){var o=typeof this.options.devTools=="object"?this.options.devTools:void 0;this.devTools=n.__REDUX_DEVTOOLS_EXTENSION__.connect(__assign$1(__assign$1({name:this.id,autoPause:!0,stateSanitizer:function(s){return{value:s.value,context:s.context,actions:s.actions}}},o),{features:__assign$1({jump:!1,skip:!1},o?o.features:void 0)}),this.machine),this.devTools.init(this.state)}registerService(this)}},t.prototype.toJSON=function(){return{id:this.id}},t.prototype[symbolObservable]=function(){return this},t.prototype.getSnapshot=function(){return this.status===InterpreterStatus.NotStarted?this.initialState:this._state},t.defaultOptions={execute:!0,deferEvents:!0,clock:{setTimeout:function(n,o){return setTimeout(n,o)},clearTimeout:function(n){return clearTimeout(n)}},logger:console.log.bind(console),devTools:!1},t.interpret=interpret,t}();function interpret(t,n){var o=new Interpreter(t,n);return o}function toInvokeSource(t){if(typeof t=="string"){var n={type:t};return n.toString=function(){return t},n}return t}function toInvokeDefinition(t){return __assign$1(__assign$1({type:invoke},t),{toJSON:function(){t.onDone,t.onError;var n=__rest$1(t,["onDone","onError"]);return __assign$1(__assign$1({},n),{type:invoke,src:toInvokeSource(t.src)})}})}var NULL_EVENT="",STATE_IDENTIFIER="#",WILDCARD="*",EMPTY_OBJECT={},isStateId=function(t){return t[0]===STATE_IDENTIFIER},createDefaultOptions=function(){return{actions:{},guards:{},services:{},activities:{},delays:{}}},validateArrayifiedTransitions=function(t,n,o){var s=o.slice(0,-1).some(function(d){return!("cond"in d)&&!("in"in d)&&(isString$2(d.target)||isMachine(d.target))}),c=n===NULL_EVENT?"the transient event":"event '".concat(n,"'");warn(!s,"One or more transitions for ".concat(c," on state '").concat(t.id,"' are unreachable. ")+"Make sure that the default transition is the last one defined.")},StateNode=function(){function t(n,o,s,c){s===void 0&&(s="context"in n?n.context:void 0);var d=this,h;this.config=n,this._context=s,this.order=-1,this.__xstatenode=!0,this.__cache={events:void 0,relativeValue:new Map,initialStateValue:void 0,initialState:void 0,on:void 0,transitions:void 0,candidates:{},delayedTransitions:void 0},this.idMap={},this.tags=[],this.options=Object.assign(createDefaultOptions(),o),this.parent=c==null?void 0:c.parent,this.key=this.config.key||(c==null?void 0:c.key)||this.config.id||"(machine)",this.machine=this.parent?this.parent.machine:this,this.path=this.parent?this.parent.path.concat(this.key):[],this.delimiter=this.config.delimiter||(this.parent?this.parent.delimiter:STATE_DELIMITER),this.id=this.config.id||__spreadArray([this.machine.key],__read$2(this.path),!1).join(this.delimiter),this.version=this.parent?this.parent.version:this.config.version,this.type=this.config.type||(this.config.parallel?"parallel":this.config.states&&Object.keys(this.config.states).length?"compound":this.config.history?"history":"atomic"),this.schema=this.parent?this.machine.schema:(h=this.config.schema)!==null&&h!==void 0?h:{},this.description=this.config.description,IS_PRODUCTION||warn(!("parallel"in this.config),'The "parallel" property is deprecated and will be removed in version 4.1. '.concat(this.config.parallel?"Replace with `type: 'parallel'`":"Use `type: '".concat(this.type,"'`")," in the config for state node '").concat(this.id,"' instead.")),this.initial=this.config.initial,this.states=this.config.states?mapValues(this.config.states,function(S,P){var L,F=new t(S,{},void 0,{parent:d,key:P});return Object.assign(d.idMap,__assign$1((L={},L[F.id]=F,L),F.idMap)),F}):EMPTY_OBJECT;var p=0;function y(S){var P,L;S.order=p++;try{for(var F=__values$1(getAllChildren(S)),N=F.next();!N.done;N=F.next()){var z=N.value;y(z)}}catch(W){P={error:W}}finally{try{N&&!N.done&&(L=F.return)&&L.call(F)}finally{if(P)throw P.error}}}y(this),this.history=this.config.history===!0?"shallow":this.config.history||!1,this._transient=!!this.config.always||(this.config.on?Array.isArray(this.config.on)?this.config.on.some(function(S){var P=S.event;return P===NULL_EVENT}):NULL_EVENT in this.config.on:!1),this.strict=!!this.config.strict,this.onEntry=toArray(this.config.entry||this.config.onEntry).map(function(S){return toActionObject(S)}),this.onExit=toArray(this.config.exit||this.config.onExit).map(function(S){return toActionObject(S)}),this.meta=this.config.meta,this.doneData=this.type==="final"?this.config.data:void 0,this.invoke=toArray(this.config.invoke).map(function(S,P){var L,F;if(isMachine(S)){var N=createInvokeId(d.id,P);return d.machine.options.services=__assign$1((L={},L[N]=S,L),d.machine.options.services),toInvokeDefinition({src:N,id:N})}else if(isString$2(S.src)){var N=S.id||createInvokeId(d.id,P);return toInvokeDefinition(__assign$1(__assign$1({},S),{id:N,src:S.src}))}else if(isMachine(S.src)||isFunction$1(S.src)){var N=S.id||createInvokeId(d.id,P);return d.machine.options.services=__assign$1((F={},F[N]=S.src,F),d.machine.options.services),toInvokeDefinition(__assign$1(__assign$1({id:N},S),{src:N}))}else{var z=S.src;return toInvokeDefinition(__assign$1(__assign$1({id:createInvokeId(d.id,P)},S),{src:z}))}}),this.activities=toArray(this.config.activities).concat(this.invoke).map(function(S){return toActivityDefinition(S)}),this.transition=this.transition.bind(this),this.tags=toArray(this.config.tags)}return t.prototype._init=function(){this.__cache.transitions||getAllStateNodes(this).forEach(function(n){return n.on})},t.prototype.withConfig=function(n,o){var s=this.options,c=s.actions,d=s.activities,h=s.guards,p=s.services,y=s.delays;return new t(this.config,{actions:__assign$1(__assign$1({},c),n.actions),activities:__assign$1(__assign$1({},d),n.activities),guards:__assign$1(__assign$1({},h),n.guards),services:__assign$1(__assign$1({},p),n.services),delays:__assign$1(__assign$1({},y),n.delays)},o??this.context)},t.prototype.withContext=function(n){return new t(this.config,this.options,n)},Object.defineProperty(t.prototype,"context",{get:function(){return isFunction$1(this._context)?this._context():this._context},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"definition",{get:function(){return{id:this.id,key:this.key,version:this.version,context:this.context,type:this.type,initial:this.initial,history:this.history,states:mapValues(this.states,function(n){return n.definition}),on:this.on,transitions:this.transitions,entry:this.onEntry,exit:this.onExit,activities:this.activities||[],meta:this.meta,order:this.order||-1,data:this.doneData,invoke:this.invoke,description:this.description,tags:this.tags}},enumerable:!1,configurable:!0}),t.prototype.toJSON=function(){return this.definition},Object.defineProperty(t.prototype,"on",{get:function(){if(this.__cache.on)return this.__cache.on;var n=this.transitions;return this.__cache.on=n.reduce(function(o,s){return o[s.eventType]=o[s.eventType]||[],o[s.eventType].push(s),o},{})},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"after",{get:function(){return this.__cache.delayedTransitions||(this.__cache.delayedTransitions=this.getDelayedTransitions(),this.__cache.delayedTransitions)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"transitions",{get:function(){return this.__cache.transitions||(this.__cache.transitions=this.formatTransitions(),this.__cache.transitions)},enumerable:!1,configurable:!0}),t.prototype.getCandidates=function(n){if(this.__cache.candidates[n])return this.__cache.candidates[n];var o=n===NULL_EVENT,s=this.transitions.filter(function(c){var d=c.eventType===n;return o?d:d||c.eventType===WILDCARD});return this.__cache.candidates[n]=s,s},t.prototype.getDelayedTransitions=function(){var n=this,o=this.config.after;if(!o)return[];var s=function(d,h){var p=isFunction$1(d)?"".concat(n.id,":delay[").concat(h,"]"):d,y=after(p,n.id);return n.onEntry.push(send(y,{delay:d})),n.onExit.push(cancel(y)),y},c=isArray$2(o)?o.map(function(d,h){var p=s(d.delay,h);return __assign$1(__assign$1({},d),{event:p})}):flatten(Object.keys(o).map(function(d,h){var p=o[d],y=isString$2(p)?{target:p}:p,S=isNaN(+d)?d:+d,P=s(S,h);return toArray(y).map(function(L){return __assign$1(__assign$1({},L),{event:P,delay:S})})}));return c.map(function(d){var h=d.delay;return __assign$1(__assign$1({},n.formatTransition(d)),{delay:h})})},t.prototype.getStateNodes=function(n){var o,s=this;if(!n)return[];var c=n instanceof State?n.value:toStateValue(n,this.delimiter);if(isString$2(c)){var d=this.getStateNode(c).initial;return d!==void 0?this.getStateNodes((o={},o[c]=d,o)):[this,this.states[c]]}var h=Object.keys(c),p=[this];return p.push.apply(p,__spreadArray([],__read$2(flatten(h.map(function(y){return s.getStateNode(y).getStateNodes(c[y])}))),!1)),p},t.prototype.handles=function(n){var o=getEventType(n);return this.events.includes(o)},t.prototype.resolveState=function(n){var o=n instanceof State?n:State.create(n),s=Array.from(getConfiguration([],this.getStateNodes(o.value)));return new State(__assign$1(__assign$1({},o),{value:this.resolve(o.value),configuration:s,done:isInFinalState(s,this),tags:getTagsFromConfiguration(s),machine:this.machine}))},t.prototype.transitionLeafNode=function(n,o,s){var c=this.getStateNode(n),d=c.next(o,s);return!d||!d.transitions.length?this.next(o,s):d},t.prototype.transitionCompoundNode=function(n,o,s){var c=Object.keys(n),d=this.getStateNode(c[0]),h=d._transition(n[c[0]],o,s);return!h||!h.transitions.length?this.next(o,s):h},t.prototype.transitionParallelNode=function(n,o,s){var c,d,h={};try{for(var p=__values$1(Object.keys(n)),y=p.next();!y.done;y=p.next()){var S=y.value,P=n[S];if(P){var L=this.getStateNode(S),F=L._transition(P,o,s);F&&(h[S]=F)}}}catch(Pe){c={error:Pe}}finally{try{y&&!y.done&&(d=p.return)&&d.call(p)}finally{if(c)throw c.error}}var N=Object.keys(h).map(function(Pe){return h[Pe]}),z=flatten(N.map(function(Pe){return Pe.transitions})),W=N.some(function(Pe){return Pe.transitions.length>0});if(!W)return this.next(o,s);var lt=flatten(Object.keys(h).map(function(Pe){return h[Pe].configuration}));return{transitions:z,exitSet:flatten(N.map(function(Pe){return Pe.exitSet})),configuration:lt,source:o,actions:flatten(Object.keys(h).map(function(Pe){return h[Pe].actions}))}},t.prototype._transition=function(n,o,s){return isString$2(n)?this.transitionLeafNode(n,o,s):Object.keys(n).length===1?this.transitionCompoundNode(n,o,s):this.transitionParallelNode(n,o,s)},t.prototype.getTransitionData=function(n,o){return this._transition(n.value,n,toSCXMLEvent(o))},t.prototype.next=function(n,o){var s,c,d=this,h=o.name,p=[],y=[],S;try{for(var P=__values$1(this.getCandidates(h)),L=P.next();!L.done;L=P.next()){var F=L.value,N=F.cond,z=F.in,W=n.context,lt=z?isString$2(z)&&isStateId(z)?n.matches(toStateValue(this.getStateNodeById(z).path,this.delimiter)):matchesState(toStateValue(z,this.delimiter),path(this.path.slice(0,-2))(n.value)):!0,Pe=!1;try{Pe=!N||evaluateGuard(this.machine,N,W,o,n)}catch(kt){throw new Error("Unable to evaluate guard '".concat(N.name||N.type,"' in transition for event '").concat(h,"' in state node '").concat(this.id,`':
99
99
  `).concat(kt.message))}if(Pe&&lt){F.target!==void 0&&(y=F.target),p.push.apply(p,__spreadArray([],__read$2(F.actions),!1)),S=F;break}}}catch(kt){s={error:kt}}finally{try{L&&!L.done&&(c=P.return)&&c.call(P)}finally{if(s)throw s.error}}if(S){if(!y.length)return{transitions:[S],exitSet:[],configuration:n.value?[this]:[],source:n,actions:p};var se=flatten(y.map(function(kt){return d.getRelativeStateNodes(kt,n.historyValue)})),mt=!!S.internal;return{transitions:[S],exitSet:mt?[]:flatten(y.map(function(kt){return d.getPotentiallyReenteringNodes(kt)})),configuration:se,source:n,actions:p}}},t.prototype.getPotentiallyReenteringNodes=function(n){if(this.order<n.order)return[this];for(var o=[],s=this,c=n;s&&s!==c;)o.push(s),s=s.parent;return s!==c?[]:(o.push(c),o)},t.prototype.getActions=function(n,o,s,c,d,h,p){var y,S,P,L,F=this,N=h?getConfiguration([],this.getStateNodes(h.value)):[],z=new Set;try{for(var W=__values$1(Array.from(n).sort(function(Ra,ma){return Ra.order-ma.order})),lt=W.next();!lt.done;lt=W.next()){var Pe=lt.value;(!has(N,Pe)||has(s.exitSet,Pe)||Pe.parent&&z.has(Pe.parent))&&z.add(Pe)}}catch(Ra){y={error:Ra}}finally{try{lt&&!lt.done&&(S=W.return)&&S.call(W)}finally{if(y)throw y.error}}try{for(var se=__values$1(N),mt=se.next();!mt.done;mt=se.next()){var Pe=mt.value;(!has(n,Pe)||has(s.exitSet,Pe.parent))&&s.exitSet.push(Pe)}}catch(Ra){P={error:Ra}}finally{try{mt&&!mt.done&&(L=se.return)&&L.call(se)}finally{if(P)throw P.error}}s.exitSet.sort(function(Ra,ma){return ma.order-Ra.order});var kt=Array.from(z).sort(function(Ra,ma){return Ra.order-ma.order}),mn=new Set(s.exitSet),pi=flatten(kt.map(function(Ra){var ma=[];if(Ra.type!=="final")return ma;var yt=Ra.parent;if(!yt.parent)return ma;ma.push(done$1(Ra.id,Ra.doneData),done$1(yt.id,Ra.doneData?mapContext(Ra.doneData,c,d):void 0));var nt=yt.parent;return nt.type==="parallel"&&getChildren$1(nt).every(function(_i){return isInFinalState(s.configuration,_i)})&&ma.push(done$1(nt.id)),ma})),zi=kt.map(function(Ra){var ma=Ra.onEntry,yt=Ra.activities.map(function(nt){return start$1(nt)});return{type:"entry",actions:toActionObjects(p?__spreadArray(__spreadArray([],__read$2(ma),!1),__read$2(yt),!1):__spreadArray(__spreadArray([],__read$2(yt),!1),__read$2(ma),!1),F.machine.options.actions)}}).concat({type:"state_done",actions:pi.map(function(Ra){return raise$1(Ra)})}),Sa=Array.from(mn).map(function(Ra){return{type:"exit",actions:toActionObjects(__spreadArray(__spreadArray([],__read$2(Ra.onExit),!1),__read$2(Ra.activities.map(function(ma){return stop(ma)})),!1),F.machine.options.actions)}}),fa=Sa.concat({type:"transition",actions:toActionObjects(s.actions,this.machine.options.actions)}).concat(zi);if(o){var La=toActionObjects(flatten(__spreadArray([],__read$2(n),!1).sort(function(Ra,ma){return ma.order-Ra.order}).map(function(Ra){return Ra.onExit})),this.machine.options.actions).filter(function(Ra){return!isRaisableAction(Ra)});return fa.concat({type:"stop",actions:La})}return fa},t.prototype.transition=function(n,o,s,c){n===void 0&&(n=this.initialState);var d=toSCXMLEvent(o),h;if(n instanceof State)h=s===void 0?n:this.resolveState(State.from(n,s));else{var p=isString$2(n)?this.resolve(pathToStateValue(this.getResolvedPath(n))):this.resolve(n),y=s??this.machine.context;h=this.resolveState(State.from(p,y))}if(!IS_PRODUCTION&&d.name===WILDCARD)throw new Error("An event cannot have the wildcard type ('".concat(WILDCARD,"')"));if(this.strict&&!this.events.includes(d.name)&&!isBuiltInEvent(d.name))throw new Error("Machine '".concat(this.id,"' does not accept event '").concat(d.name,"'"));var S=this._transition(h.value,h,d)||{transitions:[],configuration:[],exitSet:[],source:h,actions:[]},P=getConfiguration([],this.getStateNodes(h.value)),L=S.configuration.length?getConfiguration(P,S.configuration):P;return S.configuration=__spreadArray([],__read$2(L),!1),this.resolveTransition(S,h,h.context,c,d)},t.prototype.resolveRaisedTransition=function(n,o,s,c){var d,h=n.actions;return n=this.transition(n,o,void 0,c),n._event=s,n.event=s.data,(d=n.actions).unshift.apply(d,__spreadArray([],__read$2(h),!1)),n},t.prototype.resolveTransition=function(n,o,s,c,d){var h,p,y,S,P=this;d===void 0&&(d=initEvent);var L=n.configuration,F=!o||n.transitions.length>0,N=F?n.configuration:o?o.configuration:[],z=isInFinalState(N,this),W=F?getValue(this.machine,L):void 0,lt=o?o.historyValue?o.historyValue:n.source?this.machine.historyValue(o.value):void 0:void 0,Pe=this.getActions(new Set(N),z,n,s,d,o,c),se=o?__assign$1({},o.activities):{};try{for(var mt=__values$1(Pe),kt=mt.next();!kt.done;kt=mt.next()){var mn=kt.value;try{for(var pi=(y=void 0,__values$1(mn.actions)),zi=pi.next();!zi.done;zi=pi.next()){var Sa=zi.value;Sa.type===start$2?se[Sa.activity.id||Sa.activity.type]=Sa:Sa.type===stop$1&&(se[Sa.activity.id||Sa.activity.type]=!1)}}catch(Vd){y={error:Vd}}finally{try{zi&&!zi.done&&(S=pi.return)&&S.call(pi)}finally{if(y)throw y.error}}}}catch(Vd){h={error:Vd}}finally{try{kt&&!kt.done&&(p=mt.return)&&p.call(mt)}finally{if(h)throw h.error}}var fa=__read$2(resolveActions(this,o,s,d,Pe,c,this.machine.config.predictableActionArguments||this.machine.config.preserveActionOrder),2),La=fa[0],Ra=fa[1],ma=__read$2(partition(La,isRaisableAction),2),yt=ma[0],nt=ma[1],_i=La.filter(function(Vd){var Gd;return Vd.type===start$2&&((Gd=Vd.activity)===null||Gd===void 0?void 0:Gd.type)===invoke}),ba=_i.reduce(function(Vd,Gd){return Vd[Gd.activity.id]=createInvocableActor(Gd.activity,P.machine,Ra,d),Vd},o?__assign$1({},o.children):{}),Sc=new State({value:W||o.value,context:Ra,_event:d,_sessionid:o?o._sessionid:null,historyValue:W?lt?updateHistoryValue(lt,W):void 0:o?o.historyValue:void 0,history:!W||n.source?o:void 0,actions:W?nt:[],activities:W?se:o?o.activities:{},events:[],configuration:N,transitions:n.transitions,children:ba,done:z,tags:getTagsFromConfiguration(N),machine:this}),ms=s!==Ra;Sc.changed=d.name===update$2||ms;var Xs=Sc.history;Xs&&delete Xs.history;var pu=!z&&(this._transient||L.some(function(Vd){return Vd._transient}));if(!F&&(!pu||d.name===NULL_EVENT))return Sc;var yu=Sc;if(!z)for(pu&&(yu=this.resolveRaisedTransition(yu,{type:nullEvent},d,c));yt.length;){var Nl=yt.shift();yu=this.resolveRaisedTransition(yu,Nl._event,d,c)}var Ru=yu.changed||(Xs?!!yu.actions.length||ms||typeof Xs.value!=typeof yu.value||!stateValuesEqual(yu.value,Xs.value):void 0);return yu.changed=Ru,yu.history=Xs,yu},t.prototype.getStateNode=function(n){if(isStateId(n))return this.machine.getStateNodeById(n);if(!this.states)throw new Error("Unable to retrieve child state '".concat(n,"' from '").concat(this.id,"'; no child states exist."));var o=this.states[n];if(!o)throw new Error("Child state '".concat(n,"' does not exist on '").concat(this.id,"'"));return o},t.prototype.getStateNodeById=function(n){var o=isStateId(n)?n.slice(STATE_IDENTIFIER.length):n;if(o===this.id)return this;var s=this.machine.idMap[o];if(!s)throw new Error("Child state node '#".concat(o,"' does not exist on machine '").concat(this.id,"'"));return s},t.prototype.getStateNodeByPath=function(n){if(typeof n=="string"&&isStateId(n))try{return this.getStateNodeById(n.slice(1))}catch{}for(var o=toStatePath(n,this.delimiter).slice(),s=this;o.length;){var c=o.shift();if(!c.length)break;s=s.getStateNode(c)}return s},t.prototype.resolve=function(n){var o,s=this;if(!n)return this.initialStateValue||EMPTY_OBJECT;switch(this.type){case"parallel":return mapValues(this.initialStateValue,function(d,h){return d?s.getStateNode(h).resolve(n[h]||d):EMPTY_OBJECT});case"compound":if(isString$2(n)){var c=this.getStateNode(n);return c.type==="parallel"||c.type==="compound"?(o={},o[n]=c.initialStateValue,o):n}return Object.keys(n).length?mapValues(n,function(d,h){return d?s.getStateNode(h).resolve(d):EMPTY_OBJECT}):this.initialStateValue||{};default:return n||EMPTY_OBJECT}},t.prototype.getResolvedPath=function(n){if(isStateId(n)){var o=this.machine.idMap[n.slice(STATE_IDENTIFIER.length)];if(!o)throw new Error("Unable to find state node '".concat(n,"'"));return o.path}return toStatePath(n,this.delimiter)},Object.defineProperty(t.prototype,"initialStateValue",{get:function(){var n;if(this.__cache.initialStateValue)return this.__cache.initialStateValue;var o;if(this.type==="parallel")o=mapFilterValues(this.states,function(s){return s.initialStateValue||EMPTY_OBJECT},function(s){return s.type!=="history"});else if(this.initial!==void 0){if(!this.states[this.initial])throw new Error("Initial state '".concat(this.initial,"' not found on '").concat(this.key,"'"));o=isLeafNode(this.states[this.initial])?this.initial:(n={},n[this.initial]=this.states[this.initial].initialStateValue,n)}else o={};return this.__cache.initialStateValue=o,this.__cache.initialStateValue},enumerable:!1,configurable:!0}),t.prototype.getInitialState=function(n,o){this._init();var s=this.getStateNodes(n);return this.resolveTransition({configuration:s,exitSet:[],transitions:[],source:void 0,actions:[]},void 0,o??this.machine.context,void 0)},Object.defineProperty(t.prototype,"initialState",{get:function(){var n=this.initialStateValue;if(!n)throw new Error("Cannot retrieve initial state from simple state '".concat(this.id,"'."));return this.getInitialState(n)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"target",{get:function(){var n;if(this.type==="history"){var o=this.config;isString$2(o.target)?n=isStateId(o.target)?pathToStateValue(this.machine.getStateNodeById(o.target).path.slice(this.path.length-1)):o.target:n=o.target}return n},enumerable:!1,configurable:!0}),t.prototype.getRelativeStateNodes=function(n,o,s){return s===void 0&&(s=!0),s?n.type==="history"?n.resolveHistory(o):n.initialStateNodes:[n]},Object.defineProperty(t.prototype,"initialStateNodes",{get:function(){var n=this;if(isLeafNode(this))return[this];if(this.type==="compound"&&!this.initial)return IS_PRODUCTION||warn(!1,"Compound state node '".concat(this.id,"' has no initial state.")),[this];var o=toStatePaths(this.initialStateValue);return flatten(o.map(function(s){return n.getFromRelativePath(s)}))},enumerable:!1,configurable:!0}),t.prototype.getFromRelativePath=function(n){if(!n.length)return[this];var o=__read$2(n),s=o[0],c=o.slice(1);if(!this.states)throw new Error("Cannot retrieve subPath '".concat(s,"' from node with no states"));var d=this.getStateNode(s);if(d.type==="history")return d.resolveHistory();if(!this.states[s])throw new Error("Child state '".concat(s,"' does not exist on '").concat(this.id,"'"));return this.states[s].getFromRelativePath(c)},t.prototype.historyValue=function(n){if(Object.keys(this.states).length)return{current:n||this.initialStateValue,states:mapFilterValues(this.states,function(o,s){if(!n)return o.historyValue();var c=isString$2(n)?void 0:n[s];return o.historyValue(c||o.initialStateValue)},function(o){return!o.history})}},t.prototype.resolveHistory=function(n){var o=this;if(this.type!=="history")return[this];var s=this.parent;if(!n){var c=this.target;return c?flatten(toStatePaths(c).map(function(h){return s.getFromRelativePath(h)})):s.initialStateNodes}var d=nestedPath(s.path,"states")(n).current;return isString$2(d)?[s.getStateNode(d)]:flatten(toStatePaths(d).map(function(h){return o.history==="deep"?s.getFromRelativePath(h):[s.states[h[0]]]}))},Object.defineProperty(t.prototype,"stateIds",{get:function(){var n=this,o=flatten(Object.keys(this.states).map(function(s){return n.states[s].stateIds}));return[this.id].concat(o)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"events",{get:function(){var n,o,s,c;if(this.__cache.events)return this.__cache.events;var d=this.states,h=new Set(this.ownEvents);if(d)try{for(var p=__values$1(Object.keys(d)),y=p.next();!y.done;y=p.next()){var S=y.value,P=d[S];if(P.states)try{for(var L=(s=void 0,__values$1(P.events)),F=L.next();!F.done;F=L.next()){var N=F.value;h.add("".concat(N))}}catch(z){s={error:z}}finally{try{F&&!F.done&&(c=L.return)&&c.call(L)}finally{if(s)throw s.error}}}}catch(z){n={error:z}}finally{try{y&&!y.done&&(o=p.return)&&o.call(p)}finally{if(n)throw n.error}}return this.__cache.events=Array.from(h)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"ownEvents",{get:function(){var n=new Set(this.transitions.filter(function(o){return!(!o.target&&!o.actions.length&&o.internal)}).map(function(o){return o.eventType}));return Array.from(n)},enumerable:!1,configurable:!0}),t.prototype.resolveTarget=function(n){var o=this;if(n!==void 0)return n.map(function(s){if(!isString$2(s))return s;var c=s[0]===o.delimiter;if(c&&!o.parent)return o.getStateNodeByPath(s.slice(1));var d=c?o.key+s:s;if(o.parent)try{var h=o.parent.getStateNodeByPath(d);return h}catch(p){throw new Error("Invalid transition definition for state node '".concat(o.id,`':
100
- `).concat(p.message))}else return o.getStateNodeByPath(d)})},t.prototype.formatTransition=function(n){var o=this,s=normalizeTarget(n.target),c="internal"in n?n.internal:s?s.some(function(y){return isString$2(y)&&y[0]===o.delimiter}):!0,d=this.machine.options.guards,h=this.resolveTarget(s),p=__assign$1(__assign$1({},n),{actions:toActionObjects(toArray(n.actions)),cond:toGuard(n.cond,d),target:h,source:this,internal:c,eventType:n.event,toJSON:function(){return __assign$1(__assign$1({},p),{target:p.target?p.target.map(function(y){return"#".concat(y.id)}):void 0,source:"#".concat(o.id)})}});return p},t.prototype.formatTransitions=function(){var n,o,s=this,c;if(!this.config.on)c=[];else if(Array.isArray(this.config.on))c=this.config.on;else{var d=this.config.on,h=WILDCARD,p=d[h],y=p===void 0?[]:p,S=__rest$1(d,[typeof h=="symbol"?h:h+""]);c=flatten(Object.keys(S).map(function(se){!IS_PRODUCTION&&se===NULL_EVENT&&warn(!1,"Empty string transition configs (e.g., `{ on: { '': ... }}`) for transient transitions are deprecated. Specify the transition in the `{ always: ... }` property instead. "+'Please check the `on` configuration for "#'.concat(s.id,'".'));var mt=toTransitionConfigArray(se,S[se]);return IS_PRODUCTION||validateArrayifiedTransitions(s,se,mt),mt}).concat(toTransitionConfigArray(WILDCARD,y)))}var P=this.config.always?toTransitionConfigArray("",this.config.always):[],L=this.config.onDone?toTransitionConfigArray(String(done$1(this.id)),this.config.onDone):[];IS_PRODUCTION||warn(!(this.config.onDone&&!this.parent),'Root nodes cannot have an ".onDone" transition. Please check the config of "'.concat(this.id,'".'));var F=flatten(this.invoke.map(function(se){var mt=[];return se.onDone&&mt.push.apply(mt,__spreadArray([],__read$2(toTransitionConfigArray(String(doneInvoke(se.id)),se.onDone)),!1)),se.onError&&mt.push.apply(mt,__spreadArray([],__read$2(toTransitionConfigArray(String(error(se.id)),se.onError)),!1)),mt})),N=this.after,z=flatten(__spreadArray(__spreadArray(__spreadArray(__spreadArray([],__read$2(L),!1),__read$2(F),!1),__read$2(c),!1),__read$2(P),!1).map(function(se){return toArray(se).map(function(mt){return s.formatTransition(mt)})}));try{for(var W=__values$1(N),lt=W.next();!lt.done;lt=W.next()){var Pe=lt.value;z.push(Pe)}}catch(se){n={error:se}}finally{try{lt&&!lt.done&&(o=W.return)&&o.call(W)}finally{if(n)throw n.error}}return z},t}(),warned$2=!1;function createMachine(t,n){return!IS_PRODUCTION&&!("predictableActionArguments"in t)&&!warned$2&&(warned$2=!0,console.warn("It is highly recommended to set `predictableActionArguments` to `true` when using `createMachine`. https://xstate.js.org/docs/guides/actions.html")),new StateNode(t,n)}var index$1=React.useLayoutEffect;function useConstant$1(t){var n=React__namespace.useRef();return n.current||(n.current={v:t()}),n.current.v}var __assign=function(){return __assign=Object.assign||function(t){for(var n,o=1,s=arguments.length;o<s;o++){n=arguments[o];for(var c in n)Object.prototype.hasOwnProperty.call(n,c)&&(t[c]=n[c])}return t},__assign.apply(this,arguments)},__rest=function(t,n){var o={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&n.indexOf(s)<0&&(o[s]=t[s]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var c=0,s=Object.getOwnPropertySymbols(t);c<s.length;c++)n.indexOf(s[c])<0&&Object.prototype.propertyIsEnumerable.call(t,s[c])&&(o[s[c]]=t[s[c]]);return o},__read$1=function(t,n){var o=typeof Symbol=="function"&&t[Symbol.iterator];if(!o)return t;var s=o.call(t),c,d=[],h;try{for(;(n===void 0||n-- >0)&&!(c=s.next()).done;)d.push(c.value)}catch(p){h={error:p}}finally{try{c&&!c.done&&(o=s.return)&&o.call(s)}finally{if(h)throw h.error}}return d};function useIdleInterpreter(t,n){var o=useConstant$1(function(){return typeof t=="function"?t():t});if(process.env.NODE_ENV!=="production"&&typeof t!="function"){var s=__read$1(React.useState(o),1),c=s[0];t!==c&&console.warn("Machine given to `useMachine` has changed between renders. This is not supported and might lead to unexpected results.\nPlease make sure that you pass the same Machine as argument each time.")}var d=n.context,h=n.guards,p=n.actions,y=n.activities,S=n.services,P=n.delays;n.state;var L=__rest(n,["context","guards","actions","activities","services","delays","state"]),F=useConstant$1(function(){var N={context:d,guards:h,actions:p,activities:y,services:S,delays:P},z=o.withConfig(N,function(){return __assign(__assign({},o.context),d)});return interpret(z,L)});return index$1(function(){Object.assign(F.machine.options.actions,p),Object.assign(F.machine.options.guards,h),Object.assign(F.machine.options.activities,y),Object.assign(F.machine.options.services,S),Object.assign(F.machine.options.delays,P)},[p,h,y,S,P]),F}function isInterpreterStateEqual(t,n,o){if(t.status===InterpreterStatus.NotStarted)return!0;var s=o.changed===void 0&&(Object.keys(o.children).length>0||typeof n.changed=="boolean");return!(o.changed||s)}var __read=function(t,n){var o=typeof Symbol=="function"&&t[Symbol.iterator];if(!o)return t;var s=o.call(t),c,d=[],h;try{for(;(n===void 0||n-- >0)&&!(c=s.next()).done;)d.push(c.value)}catch(p){h={error:p}}finally{try{c&&!c.done&&(o=s.return)&&o.call(s)}finally{if(h)throw h.error}}return d};function identity$1(t){return t}function useMachine(t){for(var n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];var s=__read(n,1),c=s[0],d=c===void 0?{}:c,h=useIdleInterpreter(t,d),p=React.useCallback(function(){return h.status===InterpreterStatus.NotStarted?d.state?State.create(d.state):h.machine.initialState:h.getSnapshot()},[h]),y=React.useCallback(function(L,F){return isInterpreterStateEqual(h,L,F)},[h]),S=React.useCallback(function(L){var F=h.subscribe(L).unsubscribe;return F},[h]),P=withSelectorExports.useSyncExternalStoreWithSelector(S,p,p,identity$1,y);return React.useEffect(function(){var L=d.state;return h.start(L?State.create(L):void 0),function(){h.stop(),h.status=InterpreterStatus.NotStarted}},[]),[P,h.send,h]}const PRESET_APPEARANCE={marker:{height:0,heightReference:"clamp",hideIndicator:!0,selectedFeatureColor:"#00bebe"},polygon:{classificationType:"terrain",extrudedHeight:{expression:"${extrudedHeight}"},fillColor:"#FFFFFF",heightReference:"clamp",hideIndicator:!0,selectedFeatureColor:"#00bebe",shadows:"enabled"},polyline:{clampToGround:!0,hideIndicator:!0,selectedFeatureColor:"#00bebe",shadows:"enabled",strokeColor:"#FFFFFF",strokeWidth:2}},PRESET_COLOR="#FFFFFF";var isProduction=process.env.NODE_ENV==="production",prefix="Invariant failed";function invariant$1(t,n){if(!t){if(isProduction)throw new Error(prefix);var o=typeof n=="function"?n():n,s=o?"".concat(prefix,": ").concat(o):prefix;throw new Error(s)}}function createSketchMachine(){return createMachine({id:"sketch",initial:"idle",context:{},states:{idle:{on:{MARKER:{target:"drawing.marker",actions:["createMarker"]},POLYLINE:{target:"drawing.polyline",actions:["createPolyline"]},CIRCLE:{target:"drawing.circle",actions:["createCircle"]},RECTANGLE:{target:"drawing.rectangle",actions:["createRectangle"]},POLYGON:{target:"drawing.polygon",actions:["createPolygon"]},EXTRUDED_CIRCLE:{target:"drawing.circle",actions:["createExtrudedCircle"]},EXTRUDED_RECTANGLE:{target:"drawing.extrudedRectangle",actions:["createExtrudedRectangle"]},EXTRUDED_POLYGON:{target:"drawing.extrudedPolygon",actions:["createExtrudedPolygon"]},EDIT_MARKER:{target:"editing.marker",actions:["editMarker"]},EDIT_POLYLINE:{target:"editing.polyline",actions:["editPolyline"]},EDIT_CIRCLE:{target:"editing.circle",actions:["editCircle"]},EDIT_RECTANGLE:{target:"editing.rectangle",actions:["editRectangle"]},EDIT_POLYGON:{target:"editing.polygon",actions:["editPolygon"]},EDIT_EXTRUDED_CIRCLE:{target:"editing.circle",actions:["editExtrudedCircle"]},EDIT_EXTRUDED_RECTANGLE:{target:"editing.extrudedRectangle",actions:["editExtrudedRectangle"]},EDIT_EXTRUDED_POLYGON:{target:"editing.extrudedPolygon",actions:["editExtrudedPolygon"]}}},drawing:{states:{marker:{initial:"vertex",states:{vertex:{}}},polyline:{initial:"vertex",states:{vertex:{on:{NEXT:{target:"vertex",internal:!0,actions:["pushPosition"]}}}}},circle:{initial:"vertex",states:{vertex:{on:{NEXT:{target:"#sketch.extruding",actions:["pushPosition"]}}}}},rectangle:{initial:"vertex",states:{vertex:{on:{NEXT:[{target:"vertex",internal:!0,actions:["pushPosition"]}]}}}},extrudedRectangle:{initial:"vertex",states:{vertex:{on:{NEXT:[{target:"#sketch.extruding",cond:"willRectangleComplete",actions:["pushPosition","recordOriginalControlPoint"]},{target:"vertex",internal:!0,actions:["pushPosition"]}]}}}},polygon:{initial:"vertex",states:{vertex:{on:{NEXT:{target:"vertex",internal:!0,actions:["pushPosition"]}}}}},extrudedPolygon:{initial:"vertex",states:{vertex:{on:{NEXT:{target:"vertex",internal:!0,actions:["pushPosition"]},EXTRUDE:{target:"#sketch.extruding",actions:["pushPosition"]}}}}},history:{type:"history"}},on:{CANCEL:[{target:".history",cond:"canPopPosition",actions:["popPosition"]},{target:"idle",actions:["clearDrawing"]}],ABORT:{target:"idle",actions:["clearDrawing"]},CREATE:{target:"idle",actions:["clearDrawing"]}}},extruding:{on:{CREATE:{target:"idle",actions:["clearDrawing"]},CANCEL:{target:"drawing.history",actions:["popPosition"]},ABORT:{target:"idle",actions:["clearDrawing"]}}},editing:{states:{marker:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},polyline:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]},UPDATE:{target:"waiting",internal:!0,actions:["updateControlPoints"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},circle:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},rectangle:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},polygon:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]},UPDATE:{target:"waiting",internal:!0,actions:["updateControlPoints"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},extrudedCircle:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},extrudedRectangle:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},extrudedPolygon:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]},UPDATE:{target:"waiting",internal:!0,actions:["updateControlPoints"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}}},on:{EXIT_EDIT:{target:"idle",actions:["clearDrawing"]}}}},schema:{events:{}},predictableActionArguments:!0,preserveActionOrder:!0,tsTypes:{}},{guards:{canPopPosition:t=>t.controlPoints!=null&&t.controlPoints.length>1,willRectangleComplete:t=>t.controlPoints!=null&&t.controlPoints.length===2},actions:{createMarker:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="marker",t.controlPoints=[o]},editMarker:(t,n)=>{t.lastControlPoint=void 0,t.type="marker",t.controlPoints=n.controlPoints},createPolyline:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="polyline",t.controlPoints=[o]},editPolyline:(t,n)=>{t.lastControlPoint=void 0,t.type="polyline",t.controlPoints=n.controlPoints},createCircle:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="circle",t.controlPoints=[o]},editCircle:(t,n)=>{t.lastControlPoint=void 0,t.type="circle",t.controlPoints=n.controlPoints},createRectangle:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="rectangle",t.controlPoints=[o]},editRectangle:(t,n)=>{t.lastControlPoint=void 0,t.type="rectangle",t.controlPoints=n.controlPoints},createPolygon:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="polygon",t.controlPoints=[o]},editPolygon:(t,n)=>{t.lastControlPoint=void 0,t.type="polygon",t.controlPoints=n.controlPoints},createExtrudedCircle:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="extrudedCircle",t.controlPoints=[o]},editExtrudedCircle:(t,n)=>{t.lastControlPoint=void 0,t.type="extrudedCircle",t.controlPoints=n.controlPoints},createExtrudedRectangle:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="extrudedRectangle",t.controlPoints=[o]},editExtrudedRectangle:(t,n)=>{t.lastControlPoint=void 0,t.type="extrudedRectangle",t.controlPoints=n.controlPoints},createExtrudedPolygon:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="extrudedPolygon",t.controlPoints=[o]},editExtrudedPolygon:(t,n)=>{t.lastControlPoint=void 0,t.type="extrudedPolygon",t.controlPoints=n.controlPoints},pushPosition:(t,n)=>{var s;t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,(s=t.controlPoints)==null||s.push(o)},popPosition:t=>{invariant$1(t.controlPoints!=null),invariant$1(t.controlPoints.length>1),t.controlPoints.pop()},clearDrawing:t=>{delete t.lastControlPoint,delete t.type,delete t.controlPoints,delete t.catchedControlPointIndex,delete t.catchedExtrudedPoint,delete t.originalControlPoint},catchControlPoint:(t,n)=>{t.catchedControlPointIndex=n.catchedControlPointIndex,t.catchedExtrudedPoint=n.catchedExtrudedPoint},moveControlPoint:(t,n)=>{t.controlPoints=n.controlPoints},releaseControlPoint:t=>{delete t.catchedControlPointIndex,delete t.catchedExtrudedPoint},updateControlPoints:(t,n)=>{t.controlPoints=n.controlPoints},recordOriginalControlPoint:(t,n)=>{t.originalControlPoint=[...n.controlPoint]}}})}const usePluginSketchLayer=({layersRef:t,sketchOptions:n})=>{const o=React.useCallback(h=>{var y;const p=(y=t.current)==null?void 0:y.add({type:"simple",data:{type:"geojson",isSketchLayer:!0,value:{type:"FeatureCollection",features:[{...h,id:h.properties.id}]},idProperty:"id"},...n.appearance});return{layerId:p==null?void 0:p.id,featureId:h.properties.id}},[t,n.appearance]),s=React.useCallback((h,p)=>{var y,S,P,L,F;return h.type!=="simple"?{}:((F=t.current)==null||F.override(h.id,{data:{...h.data,type:"geojson",value:{type:"FeatureCollection",features:[...((L=(P=(S=(y=h.computed)==null?void 0:y.layer)==null?void 0:S.data)==null?void 0:P.value)==null?void 0:L.features)??[],{...p,id:p.properties.id}]}}}),{layerId:h.id,featureId:p.properties.id})},[t]),c=React.useCallback((h,p)=>{var y,S,P,L,F,N;return h.type!=="simple"?{}:((N=t.current)==null||N.override(h.id,{data:{...h.data,type:"geojson",value:{type:"FeatureCollection",features:(F=(L=(P=(S=(y=h.computed)==null?void 0:y.layer)==null?void 0:S.data)==null?void 0:P.value)==null?void 0:L.features)==null?void 0:F.map(z=>z.id===p.id?p:z)}}}),{layerId:h.id,featureId:p.properties.id})},[t]),d=React.useCallback((h,p)=>{var y,S,P,L,F,N;h.type!=="simple"||((y=h.computed)==null?void 0:y.layer.type)!=="simple"||(N=t.current)==null||N.override(h.id,{data:{...h.data,type:"geojson",value:{type:"FeatureCollection",features:[...(((F=(L=(P=(S=h.computed)==null?void 0:S.layer)==null?void 0:P.data)==null?void 0:L.value)==null?void 0:F.features)??[]).filter(z=>z.id!==p)]}}})},[t]);return{pluginSketchLayerCreate:o,pluginSketchLayerFeatureAdd:s,pluginSketchLayerFeatureUpdate:c,pluginSketchLayerFeatureRemove:d}},movingStatus=["editing.marker.moving","editing.polyline.moving","editing.polygon.moving","editing.circle.moving","editing.rectangle.moving","editing.extrudedCircle.moving","editing.extrudedRectangle.moving","editing.extrudedPolygon.moving"],useSketch=({state:t,engineRef:n,disableInteraction:o,type:s,updateType:c,sketchEditingFeature:d,setSelectedControlPointIndex:h,send:p,setGeometryOptions:y,markerGeometryRef:S,pointerLocationRef:P,geometryOptions:L,updateGeometryOptions:F,extrudedHeight:N,setExtrudedHeight:z,setExtrudedPoint:W,updateCentroidPoints:lt,createFeature:Pe,handleFeatureCreate:se,applyEdit:mt,cancelEdit:kt,isEditing:mn,sketchOptions:pi})=>{const zi=React.useCallback(Ru=>{var Vd;if(h(void 0),!(o||!s&&!d||Ru.lng===void 0||Ru.lat===void 0||Ru.height===void 0||Ru.x===void 0||Ru.y===void 0)&&t.matches("idle")&&s){invariant$1(t.context.lastControlPoint==null);const Gd=(Vd=n.current)==null?void 0:Vd.toXYZ(Ru.lng,Ru.lat,Ru.height);if(Gd==null)return;p({type:{marker:"MARKER",polyline:"POLYLINE",circle:"CIRCLE",rectangle:"RECTANGLE",polygon:"POLYGON",extrudedCircle:"EXTRUDED_CIRCLE",extrudedRectangle:"EXTRUDED_RECTANGLE",extrudedPolygon:"EXTRUDED_POLYGON"}[s],pointerPosition:[Ru.x,Ru.y],controlPoint:Gd}),y(null),S.current=null}},[t,o,s,d,n,p,y,h,S]),Sa=React.useCallback(Ru=>{var Vd,Gd,cf,uf,gf,hf,pf,_f,Vf,Rf;if(!(o||Ru.lng===void 0||Ru.lat===void 0||Ru.height===void 0||Ru.x===void 0||Ru.y===void 0||!n.current)){if(P.current=[Ru.lng,Ru.lat,Ru.height],t.matches("drawing")){invariant$1(t.context.type!=null),invariant$1(t.context.controlPoints!=null);let Wa=(Vd=n.current)==null?void 0:Vd.toXYZ(Ru.lng,Ru.lat,Ru.height);if(Wa==null||hasDuplicate(n.current.equalsEpsilon3d,Wa,t.context.controlPoints))return;(t.context.type==="rectangle"||t.context.type==="extrudedRectangle")&&t.context.controlPoints.length===2&&Wa&&(Wa=n.current.calcRectangleControlPoint(t.context.controlPoints[0],t.context.controlPoints[1],Wa)[2]),F(Wa)}else if(t.matches("extruding")){invariant$1((L==null?void 0:L.controlPoints)!=null);let Wa;if(t.context.type!=="extrudedRectangle"?Wa=(cf=n.current)==null?void 0:cf.getExtrudedHeight(L==null?void 0:L.controlPoints[((Gd=L==null?void 0:L.controlPoints)==null?void 0:Gd.length)-1],[Ru.x,Ru.y]):t.context.originalControlPoint&&(Wa=(uf=n.current)==null?void 0:uf.getExtrudedHeight(t.context.originalControlPoint,[Ru.x,Ru.y])),Wa!=null&&(z(Wa),t.context.controlPoints)){const af=(hf=n.current)==null?void 0:hf.getExtrudedPoint(L==null?void 0:L.controlPoints[((gf=L==null?void 0:L.controlPoints)==null?void 0:gf.length)-1],Wa);W(af)}}else if(movingStatus.some(t.matches))if(t.context.catchedExtrudedPoint){invariant$1((L==null?void 0:L.controlPoints)!=null);const Wa=(_f=n.current)==null?void 0:_f.getExtrudedHeight(L==null?void 0:L.controlPoints[((pf=L==null?void 0:L.controlPoints)==null?void 0:pf.length)-1],[Ru.x,Ru.y]);if(Wa!=null&&(z(Wa),t.context.controlPoints)){const af=(Rf=n.current)==null?void 0:Rf.getExtrudedPoint(L==null?void 0:L.controlPoints[((Vf=L==null?void 0:L.controlPoints)==null?void 0:Vf.length)-1],Wa);W(af)}}else{const Wa=n.current.toXYZ(Ru.lng,Ru.lat,Ru.height);if(Wa==null||!t.context.controlPoints||t.context.catchedControlPointIndex===-1||t.context.catchedControlPointIndex===void 0)return;let af=t.context.controlPoints.toSpliced(t.context.catchedControlPointIndex,1,Wa);if((t.context.type==="rectangle"||t.context.type==="extrudedRectangle")&&t.context.controlPoints.length===3&&(af=n.current.calcRectangleControlPoint(af[0],af[1],af[2])),["extrudedCircle","extrudedRectangle","extrudedPolygon"].includes(t.context.type??"")){const Xd=n.current.getExtrudedPoint(af[af.length-1],N);W(Xd),pi.useCentroidExtrudedHeight&&lt(t.context.controlPoints)}p({type:"MOVE",controlPoints:af}),y(Xd=>Xd?{type:Xd.type,controlPoints:af}:null)}}},[L,o,t,n,N,p,F,lt,z,W,P,y,pi.useCentroidExtrudedHeight]),fa=React.useCallback(Ru=>{var Vd,Gd,cf,uf,gf;if(!(o||Ru.lng===void 0||Ru.lat===void 0||Ru.height===void 0||Ru.x===void 0||Ru.y===void 0||!n.current)&&(movingStatus.some(t.matches)&&(p({type:"RELEASE",controlPoints:t.context.controlPoints??[],catchedControlPointIndex:-1,catchedExtrudedPoint:!1}),y(hf=>hf?{type:hf.type,controlPoints:t.context.controlPoints??[]}:null)),!(((Vd=t.context.controlPoints)==null?void 0:Vd.length)===1&&t.context.lastPointerPosition!=null&&t.context.type!=="marker"&&((Gd=n.current)!=null&&Gd.equalsEpsilon2d([Ru.x,Ru.y],t.context.lastPointerPosition,0,5))))){if(t.matches("drawing")){const hf=(cf=n.current)==null?void 0:cf.toXYZ(Ru.lng,Ru.lat,Ru.height);if(hf==null)return;if(t.context.type==="marker"){S.current={type:t.context.type,controlPoints:[hf]};const pf=Pe();if(S.current=null,pf==null)return;se(pf),p({type:"CREATE"}),y(null);return}if(hasDuplicate((uf=n.current)==null?void 0:uf.equalsEpsilon3d,hf,t.context.controlPoints))return;if(t.context.type==="circle"||t.context.type==="rectangle"&&((gf=t.context.controlPoints)==null?void 0:gf.length)===2){const pf=Pe();if(pf==null)return;se(pf),p({type:"CREATE"}),y(null);return}else{if(Ru.x===void 0||Ru.y===void 0)return;p({type:"NEXT",pointerPosition:[Ru.x,Ru.y],controlPoint:hf})}}else if(t.matches("extruding")){const hf=Pe();if(hf==null)return;se(hf),p({type:"CREATE"}),y(null)}}},[o,t,n,p,y,Pe,se,S]),La=React.useCallback(Ru=>{var Vd;if(mn){mt();return}if(!(o||Ru.lng===void 0||Ru.lat===void 0||Ru.height===void 0||Ru.x===void 0||Ru.y===void 0)){if(t.matches("drawing.extrudedPolygon")){const Gd=(Vd=n.current)==null?void 0:Vd.toXYZ(Ru.lng,Ru.lat,Ru.height);if(Gd==null)return;p({type:"EXTRUDE",pointerPosition:[Ru.x,Ru.y],controlPoint:Gd})}else if(t.matches("drawing.polyline")||t.matches("drawing.polygon")){const Gd=Pe();if(Gd==null)return;se(Gd),p({type:"CREATE"}),y(null)}}},[mn,mt,o,t,n,p,se,Pe,y]),Ra=React.useCallback(()=>{if(mn){kt();return}pi.rightClickToAbort&&(s!==void 0&&c(void 0),!t.matches("idle")&&(p({type:"ABORT"}),F(void 0)))},[mn,kt,s,t,pi.rightClickToAbort,p,F,c]),ma=React.useRef(zi);ma.current=zi;const yt=React.useRef(Sa);yt.current=Sa;const nt=React.useRef(fa);nt.current=fa;const _i=React.useRef(La);_i.current=La;const ba=React.useRef(Ra);ba.current=Ra;const Sc=React.useCallback(Ru=>{var Vd;(Vd=ma.current)==null||Vd.call(ma,Ru)},[ma]),ms=React.useCallback(Ru=>{var Vd;(Vd=yt.current)==null||Vd.call(yt,Ru)},[yt]),Xs=React.useCallback(Ru=>{var Vd;(Vd=nt.current)==null||Vd.call(nt,Ru)},[nt]),pu=React.useCallback(Ru=>{var Vd;(Vd=_i.current)==null||Vd.call(_i,Ru)},[_i]),yu=React.useCallback(()=>{var Ru;(Ru=ba.current)==null||Ru.call(ba)},[ba]),Nl=React.useRef(!1);return React.useEffect(()=>{var Ru,Vd,Gd,cf,uf;Nl.current||!n.current||(Nl.current=!0,(Ru=n.current)==null||Ru.onMouseDown(Sc),(Vd=n.current)==null||Vd.onMouseMove(ms),(Gd=n.current)==null||Gd.onMouseUp(Xs),(cf=n.current)==null||cf.onDoubleClick(pu),(uf=n.current)==null||uf.onRightClick(yu))},[n,Sc,ms,Xs,pu,yu]),{}};function hasDuplicate(t,n,o){return(o==null?void 0:o.some(s=>t(n,s,0,1e-7)))===!0}const useSketchFeature=({sketchOptions:t,from:n,updateType:o,layersRef:s,onSketchFeatureCreate:c,pluginSketchLayerCreate:d,pluginSketchLayerFeatureAdd:h,pluginSketchLayerFeatureUpdate:p,pluginSketchLayerFeatureRemove:y,onSketchPluginFeatureCreate:S,onSketchPluginFeatureUpdate:P,onSketchPluginFeatureDelete:L,onSketchFeatureUpdate:F,onSketchFeatureDelete:N,onLayerSelect:z})=>{const W=React.useCallback(se=>{var mt,kt,mn;if(t.autoResetInteractionMode&&o(void 0),n==="editor"&&t.dataOnly){c==null||c(se);return}if(t.dataOnly)S==null||S({feature:se});else{const pi=(mt=s.current)==null?void 0:mt.selectedLayer(),{layerId:zi,featureId:Sa}=!((kt=s==null?void 0:s.current)!=null&&kt.isTempLayer(pi==null?void 0:pi.id))||(pi==null?void 0:pi.type)!=="simple"||((mn=pi.computed)==null?void 0:mn.layer.type)!=="simple"?d(se):h(pi,se);zi&&Sa&&(requestAnimationFrame(()=>{z==null||z(zi,Sa,zi?()=>new Promise(fa=>{queueMicrotask(()=>{var La,Ra,ma;fa((ma=(Ra=(La=s.current)==null?void 0:La.findById)==null?void 0:Ra.call(La,zi))==null?void 0:ma.computed)})}):void 0,void 0,void 0)}),S==null||S({layerId:zi,featureId:Sa,feature:se}))}},[s,n,t.dataOnly,t.autoResetInteractionMode,d,h,c,S,z,o]),lt=React.useCallback(se=>{var mt;if(n==="editor"&&t.dataOnly){F==null||F(se);return}if(t.dataOnly)P==null||P({feature:se});else{const kt=(mt=s.current)==null?void 0:mt.selectedLayer();if(!kt)return;const{layerId:mn,featureId:pi}=p(kt,se);mn&&pi&&(setTimeout(()=>{var zi;(zi=s.current)==null||zi.selectFeatures([{layerId:mn,featureId:[pi]}])},20),P==null||P({layerId:mn,featureId:pi,feature:se}))}},[n,t.dataOnly,s,p,F,P]),Pe=React.useCallback((se,mt)=>{var kt,mn;if(n==="editor"&&t.dataOnly){N==null||N(se,mt);return}if(!t.dataOnly){const pi=(kt=s.current)==null?void 0:kt.findById(se);if(!pi)return;y(pi,mt),(mn=s.current)==null||mn.selectFeatures([])}L==null||L({layerId:se,featureId:mt})},[n,t.dataOnly,s,y,N,L]);return{handleFeatureCreate:W,handleFeatureUpdate:lt,handleFeatureDelete:Pe}};function useWindowEvent(t,n,o){const s=React.useRef(n);s.current=n;const c=React.useRef(o);React.useEffect(()=>{if(typeof window>"u")return;const d=p=>{var y;(y=s.current)==null||y.call(s,p)},h=c.current;return window.addEventListener(t,d,h),()=>{window.removeEventListener(t,d,h)}},[t])}const sketchMachine=createSketchMachine();function useHooks$9({ref:t,engineRef:n,layersRef:o,interactionMode:s,selectedFeature:c,overrideInteractionMode:d,onSketchTypeChange:h,onSketchFeatureCreate:p,onSketchPluginFeatureCreate:y,onSketchFeatureUpdate:S,onSketchPluginFeatureUpdate:P,onSketchFeatureDelete:L,onSketchPluginFeatureDelete:F,onLayerSelect:N,sketchEditingFeature:z,onSketchEditFeature:W,onMount:lt}){const[Pe,se]=useMachine(sketchMachine),[mt,kt]=React.useState(),[mn,pi]=React.useState("editor"),zi=React.useCallback((rf,bf)=>{kt(rf),pi(bf??"editor")},[]),[Sa,fa]=React.useState(!1),[La,Ra]=React.useState({color:PRESET_COLOR,appearance:PRESET_APPEARANCE,dataOnly:!1,disableShadow:!1,rightClickToAbort:!0,autoResetInteractionMode:!0,useCentroidExtrudedHeight:!1}),ma=React.useCallback(rf=>{Ra(bf=>({...bf,...rf,appearance:merge(cloneDeep(bf.appearance),rf.appearance)}))},[]),[yt,nt]=React.useState(null),[_i,ba]=React.useState(0),[Sc,ms]=React.useState(),[Xs,pu]=React.useState(),[yu,Nl]=React.useState(),[Ru,Vd]=React.useState(),Gd=React.useRef(null),cf=React.useRef(),uf=React.useMemo(()=>Pe.matches("editing"),[Pe]),gf=React.useCallback(()=>{var Pf;const rf=mt==="marker"?Gd.current:yt;if(rf==null)return null;const bf=(Pf=n.current)==null?void 0:Pf.createGeometry(rf);return bf==null||mt!=="polyline"&&bf.type==="LineString"?null:feature$1(bf,{id:v4(),type:rf.type,positions:rf.controlPoints,extrudedHeight:_i})},[_i,yt,Gd,mt,n]),hf=React.useCallback(()=>{var bf;if(yt==null||!(c!=null&&c.id))return null;const rf=(bf=n.current)==null?void 0:bf.createGeometry(yt);return rf==null?null:feature$1(rf,{id:c==null?void 0:c.id,type:yt==null?void 0:yt.type,positions:yt==null?void 0:yt.controlPoints,extrudedHeight:_i})},[_i,yt,c,n]),pf=React.useCallback(rf=>{if(ba(0),ms(void 0),Pe.context.type==null||Pe.context.controlPoints==null){nt(null);return}nt({type:Pe.context.type,controlPoints:rf!=null?[...Pe.context.controlPoints,rf]:Pe.context.controlPoints})},[Pe,nt,ba]),_f=React.useRef(pf);_f.current=pf;const Vf=React.useCallback(async rf=>{var Xf;const bf=await getCentroid(rf,n);if(pu(bf),!bf)return;const Pf=(Xf=n.current)==null?void 0:Xf.getExtrudedPoint(bf,_i);Nl(Pf)},[n,_i]),{pluginSketchLayerCreate:Rf,pluginSketchLayerFeatureAdd:Wa,pluginSketchLayerFeatureUpdate:af,pluginSketchLayerFeatureRemove:Xd}=usePluginSketchLayer({layersRef:o,sketchOptions:La}),{handleFeatureCreate:gd,handleFeatureUpdate:pd,handleFeatureDelete:Zd}=useSketchFeature({layersRef:o,sketchOptions:La,from:mn,updateType:kt,onSketchFeatureCreate:p,pluginSketchLayerCreate:Rf,pluginSketchLayerFeatureAdd:Wa,pluginSketchLayerFeatureUpdate:af,pluginSketchLayerFeatureRemove:Xd,onSketchPluginFeatureCreate:y,onSketchPluginFeatureUpdate:P,onSketchPluginFeatureDelete:F,onSketchFeatureUpdate:S,onSketchFeatureDelete:L,onLayerSelect:N}),sf=React.useCallback(rf=>{var Pf,Xf,Bf,Am,tp,sp,hp,fp,al,tf,lf,yf,If,Of,Tf;if(W==null||W(rf),!Pe.matches("idle")||!rf)return;const bf=(Xf=(Pf=rf==null?void 0:rf.feature)==null?void 0:Pf.properties)==null?void 0:Xf.type;se({type:{marker:"EDIT_MARKER",polyline:"EDIT_POLYLINE",circle:"EDIT_CIRCLE",rectangle:"EDIT_RECTANGLE",polygon:"EDIT_POLYGON",extrudedCircle:"EDIT_EXTRUDED_CIRCLE",extrudedRectangle:"EDIT_EXTRUDED_RECTANGLE",extrudedPolygon:"EDIT_EXTRUDED_POLYGON"}[bf],controlPoints:(Am=(Bf=rf==null?void 0:rf.feature)==null?void 0:Bf.properties)==null?void 0:Am.positions,extrudedHeight:(sp=(tp=rf==null?void 0:rf.feature)==null?void 0:tp.properties)==null?void 0:sp.extrudedHeight}),nt({type:bf,controlPoints:(fp=(hp=rf==null?void 0:rf.feature)==null?void 0:hp.properties)==null?void 0:fp.positions}),(tf=(al=rf==null?void 0:rf.feature)==null?void 0:al.properties)!=null&&tf.extrudedHeight&&(ba(rf.feature.properties.extrudedHeight),ms((Tf=n.current)==null?void 0:Tf.getExtrudedPoint((Of=(lf=rf==null?void 0:rf.feature)==null?void 0:lf.properties)==null?void 0:Of.positions[((If=(yf=rf==null?void 0:rf.feature)==null?void 0:yf.properties)==null?void 0:If.positions.length)-1],rf.feature.properties.extrudedHeight)))},[n,Pe,W,se]),of=React.useCallback(rf=>{se({type:"EXIT_EDIT"}),pf(void 0),W==null||W(void 0),rf&&(kf.current=!0)},[W,se,pf]),nf=React.useCallback(()=>{if(z){const rf=hf();rf&&pd({...rf,id:rf.properties.id})}se({type:"EXIT_EDIT"}),pf(void 0),W==null||W(void 0)},[z,se,pf,pd,hf,W]),df=React.useCallback((rf,bf)=>{Zd(rf,bf)},[Zd]);useSketch({state:Pe,engineRef:n,disableInteraction:Sa,type:mt,updateType:kt,sketchEditingFeature:z,setSelectedControlPointIndex:Vd,send:se,setGeometryOptions:nt,markerGeometryRef:Gd,pointerLocationRef:cf,geometryOptions:yt,updateGeometryOptions:pf,extrudedHeight:_i,setExtrudedHeight:ba,setExtrudedPoint:ms,updateCentroidPoints:Vf,createFeature:gf,handleFeatureCreate:gd,applyEdit:nf,cancelEdit:of,isEditing:uf,sketchOptions:La}),useWindowEvent("keydown",rf=>{var bf,Pf,Xf;if(mt!==void 0)if(rf.code==="Space")ep.current=!0,fa(!0),d==null||d("move");else{if(Sa)return;if(rf.key==="Escape"){se({type:"CANCEL"});const Bf=cf.current!=null?(bf=n.current)==null?void 0:bf.toXYZ(...cf.current):void 0;pf(Bf)}else if(rf.key==="Delete"&&Pe.matches("idle")&&(c!=null&&c.id)){const Bf=(Pf=o.current)==null?void 0:Pf.selectedLayer();Bf&&((Xf=o.current)!=null&&Xf.isTempLayer(Bf==null?void 0:Bf.id))&&Xd(Bf,c.id)}}}),useWindowEvent("keyup",rf=>{mt!==void 0&&rf.code==="Space"&&(d==null||d("sketch"),fa(!1),ep.current&&(ep.current=!1))}),React.useEffect(()=>{var rf;mt===void 0&&!z&&(se({type:"ABORT"}),(rf=_f.current)==null||rf.call(_f,void 0))},[mt,z,se]);const Cf=React.useRef(mn);Cf.current=mn;const ff=React.useRef(d);ff.current=d;const xf=React.useRef(h);xf.current=h;const wf=React.useRef(s);wf.current=s,React.useEffect(()=>{var rf;(z||mt)&&wf.current!=="sketch"&&((rf=ff.current)==null||rf.call(ff,"sketch"))},[mt,z]);const Ff=React.useRef(uf);Ff.current=uf;const Hf=React.useRef(of);Hf.current=of,React.useEffect(()=>{var rf,bf;(rf=xf.current)==null||rf.call(xf,mt,Cf.current),Ff.current&&Hf.current(),mt===void 0&&((bf=ff.current)==null||bf.call(ff,wf.current==="sketch"?"default":wf.current))},[mt]);const Jf=React.useRef(mt);Jf.current=mt,React.useEffect(()=>{ep.current||s!=="sketch"&&Ff.current&&Hf.current()},[s,kt]);const Wf=React.useRef([]),Dm=React.useCallback(rf=>{Wf.current.push(rf)},[]),vf=React.useRef(Dm);vf.current=Dm;const mf=React.useRef(void 0),Lf=React.useMemo(()=>Pe.context.catchedControlPointIndex,[Pe.context.catchedControlPointIndex]),Df=React.useMemo(()=>!!Pe.context.catchedExtrudedPoint,[Pe.context.catchedExtrudedPoint]),kf=React.useRef(!1);React.useEffect(()=>{var rf;if(Wf.current.forEach(bf=>{bf(z)}),z)mf.current=z;else{if(kf.current){kf.current=!1;return}(rf=o.current)==null||rf.selectFeatures([{layerId:void 0,featureId:[]}]),setTimeout(()=>{var bf,Pf,Xf;mf.current&&((Xf=o.current)==null||Xf.selectFeatures([{layerId:(bf=mf.current)==null?void 0:bf.layerId,featureId:[(Pf=mf.current)==null?void 0:Pf.feature.id]}])),mf.current=void 0},50)}},[o,z,Wf]);const Yf=React.useCallback((rf,bf,Pf)=>{!Pe.matches("editing")||!Pe.context.controlPoints||(Pf==="mousedown"?se(bf?{type:"CATCH",catchedControlPointIndex:-1,controlPoints:Pe.context.controlPoints,catchedExtrudedPoint:!0}:{type:"CATCH",catchedControlPointIndex:rf,controlPoints:Pe.context.controlPoints,catchedExtrudedPoint:!1}):!bf&&((Pe.context.type==="polygon"||Pe.context.type==="extrudedPolygon")&&Pe.context.controlPoints.length>3||Pe.context.type==="polyline"&&Pe.context.controlPoints.length>2)&&Vd(rf))},[Pe,se]),Qf=useGet(mt),Zf=useGet(La);React.useImperativeHandle(t,()=>({getType:Qf,setType:zi,getOptions:Zf,overrideOptions:ma,editFeature:sf,cancelEdit:of,applyEdit:nf,deleteFeature:df,onEditFeatureChange:vf.current}),[Qf,zi,Zf,ma,sf,df,of,nf]),React.useEffect(()=>{lt==null||lt()},[lt]);const jm=React.useCallback(()=>{var rf;if(Ru!==void 0){const bf=(rf=Pe.context.controlPoints)==null?void 0:rf.toSpliced(Ru,1);if(!bf)return;se({type:"UPDATE",controlPoints:bf}),nt(Pf=>Pf?{type:Pf.type,controlPoints:bf}:null),Vd(void 0)}},[Ru,Pe.context.controlPoints,se,nt]),qf=React.useRef(jm);qf.current=jm;const qm=React.useCallback((rf,bf)=>{if(Pe.context.controlPoints==null)return;const Pf=bf+1,Xf=Pe.context.controlPoints.toSpliced(Pf,0,rf);se({type:"UPDATE",controlPoints:Xf}),nt(Bf=>Bf?{type:Bf.type,controlPoints:Xf}:null)},[Pe.context.controlPoints,se,nt]),ep=React.useRef(!1),Sf=React.useRef(Pe);return Sf.current=Pe,React.useEffect(()=>window.addEventListener("keydown",rf=>{rf.code==="Space"&&Sf.current.matches("editing")?(ep.current=!0,d==null||d("move")):rf.code==="Delete"&&Sf.current.matches("editing")&&qf.current()}),[d]),React.useEffect(()=>window.addEventListener("keyup",rf=>{rf.code==="Space"&&ep.current&&(d==null||d("sketch"),ep.current=!1)}),[d]),{state:Pe,isEditing:uf,catchedControlPointIndex:Lf,catchedExtrudedPoint:Df,extrudedHeight:_i,extrudedPoint:Sc,centroidBasePoint:Xs,centroidExtrudedPoint:yu,geometryOptions:yt,color:La.color,disableShadow:La.disableShadow,selectedControlPointIndex:Ru,handleControlPointMouseEvent:Yf,handleAddControlPoint:qm}}async function getCentroid(t,n){var p,y;let o=0,s=0;t.forEach(S=>{var L;const P=(L=n.current)==null?void 0:L.toLngLatHeight(...S);P&&(s+=P[0],o+=P[1])});const c=o/t.length,d=s/t.length,h=await((p=n.current)==null?void 0:p.sampleTerrainHeight(d,c))??0;return(y=n.current)==null?void 0:y.toXYZ(d,c,h)}function isSketchType(t){return t==="marker"||t==="polyline"||t==="circle"||t==="rectangle"||t==="polygon"||t==="extrudedCircle"||t==="extrudedRectangle"||t==="extrudedPolygon"}const Sketch=({layersRef:t,engineRef:n,interactionMode:o="default",selectedFeature:s,SketchComponent:c,overrideInteractionMode:d,onSketchTypeChange:h,onSketchFeatureCreate:p,onSketchPluginFeatureCreate:y,onSketchFeatureUpdate:S,onSketchPluginFeatureUpdate:P,onSketchFeatureDelete:L,onSketchPluginFeatureDelete:F,onLayerSelect:N,sketchEditingFeature:z,onSketchEditFeature:W,onMount:lt},Pe)=>{const{state:se,isEditing:mt,catchedControlPointIndex:kt,catchedExtrudedPoint:mn,extrudedHeight:pi,extrudedPoint:zi,centroidBasePoint:Sa,centroidExtrudedPoint:fa,geometryOptions:La,color:Ra,disableShadow:ma,handleControlPointMouseEvent:yt,handleAddControlPoint:nt,selectedControlPointIndex:_i}=useHooks$9({ref:Pe,layersRef:t,engineRef:n,interactionMode:o,selectedFeature:s,overrideInteractionMode:d,onSketchTypeChange:h,onSketchFeatureCreate:p,onSketchPluginFeatureCreate:y,onSketchFeatureUpdate:S,onSketchPluginFeatureUpdate:P,onSketchFeatureDelete:L,onSketchPluginFeatureDelete:F,onLayerSelect:N,sketchEditingFeature:z,onSketchEditFeature:W,onMount:lt});return se.matches("idle")?null:c?jsxRuntimeExports.jsx(c,{geometryOptions:La,color:Ra,disableShadow:ma,isEditing:mt,catchedControlPointIndex:kt,catchedExtrudedPoint:mn,extrudedHeight:pi,extrudedPoint:zi,centroidBasePoint:Sa,centroidExtrudedPoint:fa,handleControlPointMouseEvent:yt,handleAddControlPoint:nt,selectedControlPointIndex:_i}):null},Sketch$1=React.forwardRef(Sketch);var Ii$1=Object.defineProperty,Wi$1=(t,n,o)=>n in t?Ii$1(t,n,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[n]=o,K$1=(t,n,o)=>(Wi$1(t,typeof n!="symbol"?n+"":n,o),o);const We$1=React.createContext({}),$e$1=()=>React.useContext(We$1)||{};var Ae$1={exports:{}},ye$1={};/**
100
+ `).concat(p.message))}else return o.getStateNodeByPath(d)})},t.prototype.formatTransition=function(n){var o=this,s=normalizeTarget(n.target),c="internal"in n?n.internal:s?s.some(function(y){return isString$2(y)&&y[0]===o.delimiter}):!0,d=this.machine.options.guards,h=this.resolveTarget(s),p=__assign$1(__assign$1({},n),{actions:toActionObjects(toArray(n.actions)),cond:toGuard(n.cond,d),target:h,source:this,internal:c,eventType:n.event,toJSON:function(){return __assign$1(__assign$1({},p),{target:p.target?p.target.map(function(y){return"#".concat(y.id)}):void 0,source:"#".concat(o.id)})}});return p},t.prototype.formatTransitions=function(){var n,o,s=this,c;if(!this.config.on)c=[];else if(Array.isArray(this.config.on))c=this.config.on;else{var d=this.config.on,h=WILDCARD,p=d[h],y=p===void 0?[]:p,S=__rest$1(d,[typeof h=="symbol"?h:h+""]);c=flatten(Object.keys(S).map(function(se){!IS_PRODUCTION&&se===NULL_EVENT&&warn(!1,"Empty string transition configs (e.g., `{ on: { '': ... }}`) for transient transitions are deprecated. Specify the transition in the `{ always: ... }` property instead. "+'Please check the `on` configuration for "#'.concat(s.id,'".'));var mt=toTransitionConfigArray(se,S[se]);return IS_PRODUCTION||validateArrayifiedTransitions(s,se,mt),mt}).concat(toTransitionConfigArray(WILDCARD,y)))}var P=this.config.always?toTransitionConfigArray("",this.config.always):[],L=this.config.onDone?toTransitionConfigArray(String(done$1(this.id)),this.config.onDone):[];IS_PRODUCTION||warn(!(this.config.onDone&&!this.parent),'Root nodes cannot have an ".onDone" transition. Please check the config of "'.concat(this.id,'".'));var F=flatten(this.invoke.map(function(se){var mt=[];return se.onDone&&mt.push.apply(mt,__spreadArray([],__read$2(toTransitionConfigArray(String(doneInvoke(se.id)),se.onDone)),!1)),se.onError&&mt.push.apply(mt,__spreadArray([],__read$2(toTransitionConfigArray(String(error(se.id)),se.onError)),!1)),mt})),N=this.after,z=flatten(__spreadArray(__spreadArray(__spreadArray(__spreadArray([],__read$2(L),!1),__read$2(F),!1),__read$2(c),!1),__read$2(P),!1).map(function(se){return toArray(se).map(function(mt){return s.formatTransition(mt)})}));try{for(var W=__values$1(N),lt=W.next();!lt.done;lt=W.next()){var Pe=lt.value;z.push(Pe)}}catch(se){n={error:se}}finally{try{lt&&!lt.done&&(o=W.return)&&o.call(W)}finally{if(n)throw n.error}}return z},t}(),warned$2=!1;function createMachine(t,n){return!IS_PRODUCTION&&!("predictableActionArguments"in t)&&!warned$2&&(warned$2=!0,console.warn("It is highly recommended to set `predictableActionArguments` to `true` when using `createMachine`. https://xstate.js.org/docs/guides/actions.html")),new StateNode(t,n)}var index$1=React.useLayoutEffect;function useConstant$1(t){var n=React__namespace.useRef();return n.current||(n.current={v:t()}),n.current.v}var __assign=function(){return __assign=Object.assign||function(t){for(var n,o=1,s=arguments.length;o<s;o++){n=arguments[o];for(var c in n)Object.prototype.hasOwnProperty.call(n,c)&&(t[c]=n[c])}return t},__assign.apply(this,arguments)},__rest=function(t,n){var o={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&n.indexOf(s)<0&&(o[s]=t[s]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var c=0,s=Object.getOwnPropertySymbols(t);c<s.length;c++)n.indexOf(s[c])<0&&Object.prototype.propertyIsEnumerable.call(t,s[c])&&(o[s[c]]=t[s[c]]);return o},__read$1=function(t,n){var o=typeof Symbol=="function"&&t[Symbol.iterator];if(!o)return t;var s=o.call(t),c,d=[],h;try{for(;(n===void 0||n-- >0)&&!(c=s.next()).done;)d.push(c.value)}catch(p){h={error:p}}finally{try{c&&!c.done&&(o=s.return)&&o.call(s)}finally{if(h)throw h.error}}return d};function useIdleInterpreter(t,n){var o=useConstant$1(function(){return typeof t=="function"?t():t});if(process.env.NODE_ENV!=="production"&&typeof t!="function"){var s=__read$1(React.useState(o),1),c=s[0];t!==c&&console.warn("Machine given to `useMachine` has changed between renders. This is not supported and might lead to unexpected results.\nPlease make sure that you pass the same Machine as argument each time.")}var d=n.context,h=n.guards,p=n.actions,y=n.activities,S=n.services,P=n.delays;n.state;var L=__rest(n,["context","guards","actions","activities","services","delays","state"]),F=useConstant$1(function(){var N={context:d,guards:h,actions:p,activities:y,services:S,delays:P},z=o.withConfig(N,function(){return __assign(__assign({},o.context),d)});return interpret(z,L)});return index$1(function(){Object.assign(F.machine.options.actions,p),Object.assign(F.machine.options.guards,h),Object.assign(F.machine.options.activities,y),Object.assign(F.machine.options.services,S),Object.assign(F.machine.options.delays,P)},[p,h,y,S,P]),F}function isInterpreterStateEqual(t,n,o){if(t.status===InterpreterStatus.NotStarted)return!0;var s=o.changed===void 0&&(Object.keys(o.children).length>0||typeof n.changed=="boolean");return!(o.changed||s)}var __read=function(t,n){var o=typeof Symbol=="function"&&t[Symbol.iterator];if(!o)return t;var s=o.call(t),c,d=[],h;try{for(;(n===void 0||n-- >0)&&!(c=s.next()).done;)d.push(c.value)}catch(p){h={error:p}}finally{try{c&&!c.done&&(o=s.return)&&o.call(s)}finally{if(h)throw h.error}}return d};function identity$1(t){return t}function useMachine(t){for(var n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];var s=__read(n,1),c=s[0],d=c===void 0?{}:c,h=useIdleInterpreter(t,d),p=React.useCallback(function(){return h.status===InterpreterStatus.NotStarted?d.state?State.create(d.state):h.machine.initialState:h.getSnapshot()},[h]),y=React.useCallback(function(L,F){return isInterpreterStateEqual(h,L,F)},[h]),S=React.useCallback(function(L){var F=h.subscribe(L).unsubscribe;return F},[h]),P=withSelectorExports.useSyncExternalStoreWithSelector(S,p,p,identity$1,y);return React.useEffect(function(){var L=d.state;return h.start(L?State.create(L):void 0),function(){h.stop(),h.status=InterpreterStatus.NotStarted}},[]),[P,h.send,h]}const PRESET_APPEARANCE={marker:{height:0,heightReference:"clamp",hideIndicator:!0,selectedFeatureColor:"#00bebe"},polygon:{classificationType:"terrain",extrudedHeight:{expression:"${extrudedHeight}"},fillColor:"#FFFFFF",heightReference:"clamp",hideIndicator:!0,selectedFeatureColor:"#00bebe",shadows:"enabled"},polyline:{clampToGround:!0,hideIndicator:!0,selectedFeatureColor:"#00bebe",shadows:"enabled",strokeColor:"#FFFFFF",strokeWidth:2}},PRESET_COLOR="#FFFFFF";var isProduction=process.env.NODE_ENV==="production",prefix="Invariant failed";function invariant$1(t,n){if(!t){if(isProduction)throw new Error(prefix);var o=typeof n=="function"?n():n,s=o?"".concat(prefix,": ").concat(o):prefix;throw new Error(s)}}function createSketchMachine(){return createMachine({id:"sketch",initial:"idle",context:{},states:{idle:{on:{MARKER:{target:"drawing.marker",actions:["createMarker"]},POLYLINE:{target:"drawing.polyline",actions:["createPolyline"]},CIRCLE:{target:"drawing.circle",actions:["createCircle"]},RECTANGLE:{target:"drawing.rectangle",actions:["createRectangle"]},POLYGON:{target:"drawing.polygon",actions:["createPolygon"]},EXTRUDED_CIRCLE:{target:"drawing.circle",actions:["createExtrudedCircle"]},EXTRUDED_RECTANGLE:{target:"drawing.extrudedRectangle",actions:["createExtrudedRectangle"]},EXTRUDED_POLYGON:{target:"drawing.extrudedPolygon",actions:["createExtrudedPolygon"]},EDIT_MARKER:{target:"editing.marker",actions:["editMarker"]},EDIT_POLYLINE:{target:"editing.polyline",actions:["editPolyline"]},EDIT_CIRCLE:{target:"editing.circle",actions:["editCircle"]},EDIT_RECTANGLE:{target:"editing.rectangle",actions:["editRectangle"]},EDIT_POLYGON:{target:"editing.polygon",actions:["editPolygon"]},EDIT_EXTRUDED_CIRCLE:{target:"editing.circle",actions:["editExtrudedCircle"]},EDIT_EXTRUDED_RECTANGLE:{target:"editing.extrudedRectangle",actions:["editExtrudedRectangle"]},EDIT_EXTRUDED_POLYGON:{target:"editing.extrudedPolygon",actions:["editExtrudedPolygon"]}}},drawing:{states:{marker:{initial:"vertex",states:{vertex:{}}},polyline:{initial:"vertex",states:{vertex:{on:{NEXT:{target:"vertex",internal:!0,actions:["pushPosition"]}}}}},circle:{initial:"vertex",states:{vertex:{on:{NEXT:{target:"#sketch.extruding",actions:["pushPosition"]}}}}},rectangle:{initial:"vertex",states:{vertex:{on:{NEXT:[{target:"vertex",internal:!0,actions:["pushPosition"]}]}}}},extrudedRectangle:{initial:"vertex",states:{vertex:{on:{NEXT:[{target:"#sketch.extruding",cond:"willRectangleComplete",actions:["pushPosition","recordOriginalControlPoint"]},{target:"vertex",internal:!0,actions:["pushPosition"]}]}}}},polygon:{initial:"vertex",states:{vertex:{on:{NEXT:{target:"vertex",internal:!0,actions:["pushPosition"]}}}}},extrudedPolygon:{initial:"vertex",states:{vertex:{on:{NEXT:{target:"vertex",internal:!0,actions:["pushPosition"]},EXTRUDE:{target:"#sketch.extruding",actions:["pushPosition"]}}}}},history:{type:"history"}},on:{CANCEL:[{target:".history",cond:"canPopPosition",actions:["popPosition"]},{target:"idle",actions:["clearDrawing"]}],ABORT:{target:"idle",actions:["clearDrawing"]},CREATE:{target:"idle",actions:["clearDrawing"]}}},extruding:{on:{CREATE:{target:"idle",actions:["clearDrawing"]},CANCEL:{target:"drawing.history",actions:["popPosition"]},ABORT:{target:"idle",actions:["clearDrawing"]}}},editing:{states:{marker:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},polyline:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]},UPDATE:{target:"waiting",internal:!0,actions:["updateControlPoints"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},circle:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},rectangle:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},polygon:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]},UPDATE:{target:"waiting",internal:!0,actions:["updateControlPoints"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},extrudedCircle:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},extrudedRectangle:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}},extrudedPolygon:{initial:"waiting",states:{waiting:{on:{CATCH:{target:"moving",internal:!0,actions:["catchControlPoint"]},UPDATE:{target:"waiting",internal:!0,actions:["updateControlPoints"]}}},moving:{on:{MOVE:{target:"moving",internal:!0,actions:["moveControlPoint"]},RELEASE:{target:"waiting",actions:["releaseControlPoint"]}}}}}},on:{EXIT_EDIT:{target:"idle",actions:["clearDrawing"]}}}},schema:{events:{}},predictableActionArguments:!0,preserveActionOrder:!0,tsTypes:{}},{guards:{canPopPosition:t=>t.controlPoints!=null&&t.controlPoints.length>1,willRectangleComplete:t=>t.controlPoints!=null&&t.controlPoints.length===2},actions:{createMarker:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="marker",t.controlPoints=[o]},editMarker:(t,n)=>{t.lastControlPoint=void 0,t.type="marker",t.controlPoints=n.controlPoints},createPolyline:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="polyline",t.controlPoints=[o]},editPolyline:(t,n)=>{t.lastControlPoint=void 0,t.type="polyline",t.controlPoints=n.controlPoints},createCircle:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="circle",t.controlPoints=[o]},editCircle:(t,n)=>{t.lastControlPoint=void 0,t.type="circle",t.controlPoints=n.controlPoints},createRectangle:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="rectangle",t.controlPoints=[o]},editRectangle:(t,n)=>{t.lastControlPoint=void 0,t.type="rectangle",t.controlPoints=n.controlPoints},createPolygon:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="polygon",t.controlPoints=[o]},editPolygon:(t,n)=>{t.lastControlPoint=void 0,t.type="polygon",t.controlPoints=n.controlPoints},createExtrudedCircle:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="extrudedCircle",t.controlPoints=[o]},editExtrudedCircle:(t,n)=>{t.lastControlPoint=void 0,t.type="extrudedCircle",t.controlPoints=n.controlPoints},createExtrudedRectangle:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="extrudedRectangle",t.controlPoints=[o]},editExtrudedRectangle:(t,n)=>{t.lastControlPoint=void 0,t.type="extrudedRectangle",t.controlPoints=n.controlPoints},createExtrudedPolygon:(t,n)=>{t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,t.type="extrudedPolygon",t.controlPoints=[o]},editExtrudedPolygon:(t,n)=>{t.lastControlPoint=void 0,t.type="extrudedPolygon",t.controlPoints=n.controlPoints},pushPosition:(t,n)=>{var s;t.lastPointerPosition=[...n.pointerPosition];const o=[...n.controlPoint];t.lastControlPoint=o,(s=t.controlPoints)==null||s.push(o)},popPosition:t=>{invariant$1(t.controlPoints!=null),invariant$1(t.controlPoints.length>1),t.controlPoints.pop()},clearDrawing:t=>{delete t.lastControlPoint,delete t.type,delete t.controlPoints,delete t.catchedControlPointIndex,delete t.catchedExtrudedPoint,delete t.originalControlPoint},catchControlPoint:(t,n)=>{t.catchedControlPointIndex=n.catchedControlPointIndex,t.catchedExtrudedPoint=n.catchedExtrudedPoint},moveControlPoint:(t,n)=>{t.controlPoints=n.controlPoints},releaseControlPoint:t=>{delete t.catchedControlPointIndex,delete t.catchedExtrudedPoint},updateControlPoints:(t,n)=>{t.controlPoints=n.controlPoints},recordOriginalControlPoint:(t,n)=>{t.originalControlPoint=[...n.controlPoint]}}})}const usePluginSketchLayer=({layersRef:t,sketchOptions:n})=>{const o=React.useCallback(h=>{var y;const p=(y=t.current)==null?void 0:y.add({type:"simple",data:{type:"geojson",isSketchLayer:!0,value:{type:"FeatureCollection",features:[{...h,id:h.properties.id}]},idProperty:"id"},...n.appearance});return{layerId:p==null?void 0:p.id,featureId:h.properties.id}},[t,n.appearance]),s=React.useCallback((h,p)=>{var y,S,P,L,F;return h.type!=="simple"?{}:((F=t.current)==null||F.override(h.id,{data:{...h.data,type:"geojson",value:{type:"FeatureCollection",features:[...((L=(P=(S=(y=h.computed)==null?void 0:y.layer)==null?void 0:S.data)==null?void 0:P.value)==null?void 0:L.features)??[],{...p,id:p.properties.id}]}}}),{layerId:h.id,featureId:p.properties.id})},[t]),c=React.useCallback((h,p)=>{var y,S,P,L,F,N;return h.type!=="simple"?{}:((N=t.current)==null||N.override(h.id,{data:{...h.data,type:"geojson",value:{type:"FeatureCollection",features:(F=(L=(P=(S=(y=h.computed)==null?void 0:y.layer)==null?void 0:S.data)==null?void 0:P.value)==null?void 0:L.features)==null?void 0:F.map(z=>z.id===p.id?p:z)}}}),{layerId:h.id,featureId:p.properties.id})},[t]),d=React.useCallback((h,p)=>{var y,S,P,L,F,N;h.type!=="simple"||((y=h.computed)==null?void 0:y.layer.type)!=="simple"||(N=t.current)==null||N.override(h.id,{data:{...h.data,type:"geojson",value:{type:"FeatureCollection",features:[...(((F=(L=(P=(S=h.computed)==null?void 0:S.layer)==null?void 0:P.data)==null?void 0:L.value)==null?void 0:F.features)??[]).filter(z=>z.id!==p)]}}})},[t]);return{pluginSketchLayerCreate:o,pluginSketchLayerFeatureAdd:s,pluginSketchLayerFeatureUpdate:c,pluginSketchLayerFeatureRemove:d}},movingStatus=["editing.marker.moving","editing.polyline.moving","editing.polygon.moving","editing.circle.moving","editing.rectangle.moving","editing.extrudedCircle.moving","editing.extrudedRectangle.moving","editing.extrudedPolygon.moving"],useSketch=({state:t,engineRef:n,disableInteraction:o,type:s,updateType:c,sketchEditingFeature:d,setSelectedControlPointIndex:h,send:p,setGeometryOptions:y,markerGeometryRef:S,pointerLocationRef:P,geometryOptions:L,updateGeometryOptions:F,extrudedHeight:N,setExtrudedHeight:z,setExtrudedPoint:W,updateCentroidPoints:lt,createFeature:Pe,handleFeatureCreate:se,applyEdit:mt,cancelEdit:kt,isEditing:mn,sketchOptions:pi})=>{const zi=React.useCallback(Ru=>{var Vd;if(h(void 0),!(o||!s&&!d||Ru.lng===void 0||Ru.lat===void 0||Ru.height===void 0||Ru.x===void 0||Ru.y===void 0)&&t.matches("idle")&&s){invariant$1(t.context.lastControlPoint==null);const Gd=(Vd=n.current)==null?void 0:Vd.toXYZ(Ru.lng,Ru.lat,Ru.height);if(Gd==null)return;p({type:{marker:"MARKER",polyline:"POLYLINE",circle:"CIRCLE",rectangle:"RECTANGLE",polygon:"POLYGON",extrudedCircle:"EXTRUDED_CIRCLE",extrudedRectangle:"EXTRUDED_RECTANGLE",extrudedPolygon:"EXTRUDED_POLYGON"}[s],pointerPosition:[Ru.x,Ru.y],controlPoint:Gd}),y(null),S.current=null}},[t,o,s,d,n,p,y,h,S]),Sa=React.useCallback(Ru=>{var Vd,Gd,cf,uf,gf,hf,pf,_f,Vf,Rf;if(!(o||Ru.lng===void 0||Ru.lat===void 0||Ru.height===void 0||Ru.x===void 0||Ru.y===void 0||!n.current)){if(P.current=[Ru.lng,Ru.lat,Ru.height],t.matches("drawing")){invariant$1(t.context.type!=null),invariant$1(t.context.controlPoints!=null);let Wa=(Vd=n.current)==null?void 0:Vd.toXYZ(Ru.lng,Ru.lat,Ru.height);if(Wa==null||hasDuplicate(n.current.equalsEpsilon3d,Wa,t.context.controlPoints))return;(t.context.type==="rectangle"||t.context.type==="extrudedRectangle")&&t.context.controlPoints.length===2&&Wa&&(Wa=n.current.calcRectangleControlPoint(t.context.controlPoints[0],t.context.controlPoints[1],Wa)[2]),F(Wa)}else if(t.matches("extruding")){invariant$1((L==null?void 0:L.controlPoints)!=null);let Wa;if(t.context.type!=="extrudedRectangle"?Wa=(cf=n.current)==null?void 0:cf.getExtrudedHeight(L==null?void 0:L.controlPoints[((Gd=L==null?void 0:L.controlPoints)==null?void 0:Gd.length)-1],[Ru.x,Ru.y]):t.context.originalControlPoint&&(Wa=(uf=n.current)==null?void 0:uf.getExtrudedHeight(t.context.originalControlPoint,[Ru.x,Ru.y])),Wa!=null&&(z(Wa),t.context.controlPoints)){const af=(hf=n.current)==null?void 0:hf.getExtrudedPoint(L==null?void 0:L.controlPoints[((gf=L==null?void 0:L.controlPoints)==null?void 0:gf.length)-1],Wa);W(af)}}else if(movingStatus.some(t.matches))if(t.context.catchedExtrudedPoint){invariant$1((L==null?void 0:L.controlPoints)!=null);const Wa=(_f=n.current)==null?void 0:_f.getExtrudedHeight(L==null?void 0:L.controlPoints[((pf=L==null?void 0:L.controlPoints)==null?void 0:pf.length)-1],[Ru.x,Ru.y]);if(Wa!=null&&(z(Wa),t.context.controlPoints)){const af=(Rf=n.current)==null?void 0:Rf.getExtrudedPoint(L==null?void 0:L.controlPoints[((Vf=L==null?void 0:L.controlPoints)==null?void 0:Vf.length)-1],Wa);W(af)}}else{const Wa=n.current.toXYZ(Ru.lng,Ru.lat,Ru.height);if(Wa==null||!t.context.controlPoints||t.context.catchedControlPointIndex===-1||t.context.catchedControlPointIndex===void 0)return;let af=t.context.controlPoints.toSpliced(t.context.catchedControlPointIndex,1,Wa);if((t.context.type==="rectangle"||t.context.type==="extrudedRectangle")&&t.context.controlPoints.length===3&&(af=n.current.calcRectangleControlPoint(af[0],af[1],af[2])),["extrudedCircle","extrudedRectangle","extrudedPolygon"].includes(t.context.type??"")){const Xd=n.current.getExtrudedPoint(af[af.length-1],N);W(Xd),pi.useCentroidExtrudedHeight&&lt(t.context.controlPoints)}p({type:"MOVE",controlPoints:af}),y(Xd=>Xd?{type:Xd.type,controlPoints:af}:null)}}},[L,o,t,n,N,p,F,lt,z,W,P,y,pi.useCentroidExtrudedHeight]),fa=React.useCallback(Ru=>{var Vd,Gd,cf,uf,gf;if(!(o||Ru.lng===void 0||Ru.lat===void 0||Ru.height===void 0||Ru.x===void 0||Ru.y===void 0||!n.current)&&(movingStatus.some(t.matches)&&(p({type:"RELEASE",controlPoints:t.context.controlPoints??[],catchedControlPointIndex:-1,catchedExtrudedPoint:!1}),y(hf=>hf?{type:hf.type,controlPoints:t.context.controlPoints??[]}:null)),!(((Vd=t.context.controlPoints)==null?void 0:Vd.length)===1&&t.context.lastPointerPosition!=null&&t.context.type!=="marker"&&((Gd=n.current)!=null&&Gd.equalsEpsilon2d([Ru.x,Ru.y],t.context.lastPointerPosition,0,5))))){if(t.matches("drawing")){const hf=(cf=n.current)==null?void 0:cf.toXYZ(Ru.lng,Ru.lat,Ru.height);if(hf==null)return;if(t.context.type==="marker"){S.current={type:t.context.type,controlPoints:[hf]};const pf=Pe();if(S.current=null,pf==null)return;se(pf),p({type:"CREATE"}),y(null);return}if(hasDuplicate((uf=n.current)==null?void 0:uf.equalsEpsilon3d,hf,t.context.controlPoints))return;if(t.context.type==="circle"||t.context.type==="rectangle"&&((gf=t.context.controlPoints)==null?void 0:gf.length)===2){const pf=Pe();if(pf==null)return;se(pf),p({type:"CREATE"}),y(null);return}else{if(Ru.x===void 0||Ru.y===void 0)return;p({type:"NEXT",pointerPosition:[Ru.x,Ru.y],controlPoint:hf})}}else if(t.matches("extruding")){const hf=Pe();if(hf==null)return;se(hf),p({type:"CREATE"}),y(null)}}},[o,t,n,p,y,Pe,se,S]),La=React.useCallback(Ru=>{var Vd;if(mn){mt();return}if(!(o||Ru.lng===void 0||Ru.lat===void 0||Ru.height===void 0||Ru.x===void 0||Ru.y===void 0)){if(t.matches("drawing.extrudedPolygon")){const Gd=(Vd=n.current)==null?void 0:Vd.toXYZ(Ru.lng,Ru.lat,Ru.height);if(Gd==null)return;p({type:"EXTRUDE",pointerPosition:[Ru.x,Ru.y],controlPoint:Gd})}else if(t.matches("drawing.polyline")||t.matches("drawing.polygon")){const Gd=Pe();if(Gd==null)return;se(Gd),p({type:"CREATE"}),y(null)}}},[mn,mt,o,t,n,p,se,Pe,y]),Ra=React.useCallback(()=>{if(mn){kt();return}pi.rightClickToAbort&&(s!==void 0&&c(void 0),!t.matches("idle")&&(p({type:"ABORT"}),F(void 0)))},[mn,kt,s,t,pi.rightClickToAbort,p,F,c]),ma=React.useRef(zi);ma.current=zi;const yt=React.useRef(Sa);yt.current=Sa;const nt=React.useRef(fa);nt.current=fa;const _i=React.useRef(La);_i.current=La;const ba=React.useRef(Ra);ba.current=Ra;const Sc=React.useCallback(Ru=>{var Vd;(Vd=ma.current)==null||Vd.call(ma,Ru)},[ma]),ms=React.useCallback(Ru=>{var Vd;(Vd=yt.current)==null||Vd.call(yt,Ru)},[yt]),Xs=React.useCallback(Ru=>{var Vd;(Vd=nt.current)==null||Vd.call(nt,Ru)},[nt]),pu=React.useCallback(Ru=>{var Vd;(Vd=_i.current)==null||Vd.call(_i,Ru)},[_i]),yu=React.useCallback(()=>{var Ru;(Ru=ba.current)==null||Ru.call(ba)},[ba]),Nl=React.useRef(!1);return React.useEffect(()=>{var Ru,Vd,Gd,cf,uf;Nl.current||!n.current||(Nl.current=!0,(Ru=n.current)==null||Ru.onMouseDown(Sc),(Vd=n.current)==null||Vd.onMouseMove(ms),(Gd=n.current)==null||Gd.onMouseUp(Xs),(cf=n.current)==null||cf.onDoubleClick(pu),(uf=n.current)==null||uf.onRightClick(yu))},[n,Sc,ms,Xs,pu,yu]),{}};function hasDuplicate(t,n,o){return(o==null?void 0:o.some(s=>t(n,s,0,1e-7)))===!0}const useSketchFeature=({sketchOptions:t,from:n,updateType:o,layersRef:s,onSketchFeatureCreate:c,pluginSketchLayerCreate:d,pluginSketchLayerFeatureAdd:h,pluginSketchLayerFeatureUpdate:p,pluginSketchLayerFeatureRemove:y,onSketchPluginFeatureCreate:S,onSketchPluginFeatureUpdate:P,onSketchPluginFeatureDelete:L,onSketchFeatureUpdate:F,onSketchFeatureDelete:N,onLayerSelect:z})=>{const W=React.useCallback(se=>{var mt,kt,mn;if(t.autoResetInteractionMode&&o(void 0),n==="editor"&&t.dataOnly){c==null||c(se);return}if(t.dataOnly)S==null||S({feature:se});else{const pi=(mt=s.current)==null?void 0:mt.selectedLayer(),{layerId:zi,featureId:Sa}=!((kt=s==null?void 0:s.current)!=null&&kt.isTempLayer(pi==null?void 0:pi.id))||(pi==null?void 0:pi.type)!=="simple"||((mn=pi.computed)==null?void 0:mn.layer.type)!=="simple"?d(se):h(pi,se);zi&&Sa&&(requestAnimationFrame(()=>{z==null||z(zi,Sa,zi?()=>new Promise(fa=>{queueMicrotask(()=>{var La,Ra,ma;fa((ma=(Ra=(La=s.current)==null?void 0:La.findById)==null?void 0:Ra.call(La,zi))==null?void 0:ma.computed)})}):void 0,void 0,void 0)}),S==null||S({layerId:zi,featureId:Sa,feature:se}))}},[s,n,t.dataOnly,t.autoResetInteractionMode,d,h,c,S,z,o]),lt=React.useCallback(se=>{var mt;if(n==="editor"&&t.dataOnly){F==null||F(se);return}if(t.dataOnly)P==null||P({feature:se});else{const kt=(mt=s.current)==null?void 0:mt.selectedLayer();if(!kt)return;const{layerId:mn,featureId:pi}=p(kt,se);mn&&pi&&(setTimeout(()=>{var zi;(zi=s.current)==null||zi.selectFeatures([{layerId:mn,featureId:[pi]}])},20),P==null||P({layerId:mn,featureId:pi,feature:se}))}},[n,t.dataOnly,s,p,F,P]),Pe=React.useCallback((se,mt)=>{var kt,mn;if(n==="editor"&&t.dataOnly){N==null||N(se,mt);return}if(!t.dataOnly){const pi=(kt=s.current)==null?void 0:kt.findById(se);if(!pi)return;y(pi,mt),(mn=s.current)==null||mn.selectFeatures([])}L==null||L({layerId:se,featureId:mt})},[n,t.dataOnly,s,y,N,L]);return{handleFeatureCreate:W,handleFeatureUpdate:lt,handleFeatureDelete:Pe}};function useWindowEvent(t,n,o){const s=React.useRef(n);s.current=n;const c=React.useRef(o);React.useEffect(()=>{if(typeof window>"u")return;const d=p=>{var y;(y=s.current)==null||y.call(s,p)},h=c.current;return window.addEventListener(t,d,h),()=>{window.removeEventListener(t,d,h)}},[t])}const sketchMachine=createSketchMachine();function useHooks$9({ref:t,engineRef:n,layersRef:o,interactionMode:s,selectedFeature:c,overrideInteractionMode:d,onSketchTypeChange:h,onSketchFeatureCreate:p,onSketchPluginFeatureCreate:y,onSketchFeatureUpdate:S,onSketchPluginFeatureUpdate:P,onSketchFeatureDelete:L,onSketchPluginFeatureDelete:F,onLayerSelect:N,sketchEditingFeature:z,onSketchEditFeature:W,onMount:lt}){const[Pe,se]=useMachine(sketchMachine),[mt,kt]=React.useState(),[mn,pi]=React.useState("editor"),zi=React.useCallback((rf,bf)=>{kt(rf),pi(bf??"editor")},[]),[Sa,fa]=React.useState(!1),[La,Ra]=React.useState({color:PRESET_COLOR,appearance:PRESET_APPEARANCE,dataOnly:!1,disableShadow:!1,rightClickToAbort:!0,autoResetInteractionMode:!0,useCentroidExtrudedHeight:!1}),ma=React.useCallback(rf=>{Ra(bf=>({...bf,...rf,appearance:merge(cloneDeep(bf.appearance),rf.appearance)}))},[]),[yt,nt]=React.useState(null),[_i,ba]=React.useState(0),[Sc,ms]=React.useState(),[Xs,pu]=React.useState(),[yu,Nl]=React.useState(),[Ru,Vd]=React.useState(),Gd=React.useRef(null),cf=React.useRef(),uf=React.useMemo(()=>Pe.matches("editing"),[Pe]),gf=React.useCallback(()=>{var Pf;const rf=mt==="marker"?Gd.current:yt;if(rf==null)return null;const bf=(Pf=n.current)==null?void 0:Pf.createGeometry(rf);return bf==null||mt!=="polyline"&&bf.type==="LineString"?null:feature$1(bf,{id:v4(),type:rf.type,positions:rf.controlPoints,extrudedHeight:_i})},[_i,yt,Gd,mt,n]),hf=React.useCallback(()=>{var bf;if(yt==null||!(c!=null&&c.id))return null;const rf=(bf=n.current)==null?void 0:bf.createGeometry(yt);return rf==null?null:feature$1(rf,{id:c==null?void 0:c.id,type:yt==null?void 0:yt.type,positions:yt==null?void 0:yt.controlPoints,extrudedHeight:_i})},[_i,yt,c,n]),pf=React.useCallback(rf=>{if(ba(0),ms(void 0),Pe.context.type==null||Pe.context.controlPoints==null){nt(null);return}nt({type:Pe.context.type,controlPoints:rf!=null?[...Pe.context.controlPoints,rf]:Pe.context.controlPoints})},[Pe,nt,ba]),_f=React.useRef(pf);_f.current=pf;const Vf=React.useCallback(async rf=>{var Xf;const bf=await getCentroid(rf,n);if(pu(bf),!bf)return;const Pf=(Xf=n.current)==null?void 0:Xf.getExtrudedPoint(bf,_i);Nl(Pf)},[n,_i]),{pluginSketchLayerCreate:Rf,pluginSketchLayerFeatureAdd:Wa,pluginSketchLayerFeatureUpdate:af,pluginSketchLayerFeatureRemove:Xd}=usePluginSketchLayer({layersRef:o,sketchOptions:La}),{handleFeatureCreate:gd,handleFeatureUpdate:pd,handleFeatureDelete:Zd}=useSketchFeature({layersRef:o,sketchOptions:La,from:mn,updateType:kt,onSketchFeatureCreate:p,pluginSketchLayerCreate:Rf,pluginSketchLayerFeatureAdd:Wa,pluginSketchLayerFeatureUpdate:af,pluginSketchLayerFeatureRemove:Xd,onSketchPluginFeatureCreate:y,onSketchPluginFeatureUpdate:P,onSketchPluginFeatureDelete:F,onSketchFeatureUpdate:S,onSketchFeatureDelete:L,onLayerSelect:N}),sf=React.useCallback(rf=>{var Pf,Xf,Bf,Am,tp,sp,fp,mp,al,tf,lf,yf,If,Of,Tf;if(W==null||W(rf),!Pe.matches("idle")||!rf)return;const bf=(Xf=(Pf=rf==null?void 0:rf.feature)==null?void 0:Pf.properties)==null?void 0:Xf.type;se({type:{marker:"EDIT_MARKER",polyline:"EDIT_POLYLINE",circle:"EDIT_CIRCLE",rectangle:"EDIT_RECTANGLE",polygon:"EDIT_POLYGON",extrudedCircle:"EDIT_EXTRUDED_CIRCLE",extrudedRectangle:"EDIT_EXTRUDED_RECTANGLE",extrudedPolygon:"EDIT_EXTRUDED_POLYGON"}[bf],controlPoints:(Am=(Bf=rf==null?void 0:rf.feature)==null?void 0:Bf.properties)==null?void 0:Am.positions,extrudedHeight:(sp=(tp=rf==null?void 0:rf.feature)==null?void 0:tp.properties)==null?void 0:sp.extrudedHeight}),nt({type:bf,controlPoints:(mp=(fp=rf==null?void 0:rf.feature)==null?void 0:fp.properties)==null?void 0:mp.positions}),(tf=(al=rf==null?void 0:rf.feature)==null?void 0:al.properties)!=null&&tf.extrudedHeight&&(ba(rf.feature.properties.extrudedHeight),ms((Tf=n.current)==null?void 0:Tf.getExtrudedPoint((Of=(lf=rf==null?void 0:rf.feature)==null?void 0:lf.properties)==null?void 0:Of.positions[((If=(yf=rf==null?void 0:rf.feature)==null?void 0:yf.properties)==null?void 0:If.positions.length)-1],rf.feature.properties.extrudedHeight)))},[n,Pe,W,se]),of=React.useCallback(rf=>{se({type:"EXIT_EDIT"}),pf(void 0),W==null||W(void 0),rf&&(kf.current=!0)},[W,se,pf]),nf=React.useCallback(()=>{if(z){const rf=hf();rf&&pd({...rf,id:rf.properties.id})}se({type:"EXIT_EDIT"}),pf(void 0),W==null||W(void 0)},[z,se,pf,pd,hf,W]),df=React.useCallback((rf,bf)=>{Zd(rf,bf)},[Zd]);useSketch({state:Pe,engineRef:n,disableInteraction:Sa,type:mt,updateType:kt,sketchEditingFeature:z,setSelectedControlPointIndex:Vd,send:se,setGeometryOptions:nt,markerGeometryRef:Gd,pointerLocationRef:cf,geometryOptions:yt,updateGeometryOptions:pf,extrudedHeight:_i,setExtrudedHeight:ba,setExtrudedPoint:ms,updateCentroidPoints:Vf,createFeature:gf,handleFeatureCreate:gd,applyEdit:nf,cancelEdit:of,isEditing:uf,sketchOptions:La}),useWindowEvent("keydown",rf=>{var bf,Pf,Xf;if(mt!==void 0)if(rf.code==="Space")ep.current=!0,fa(!0),d==null||d("move");else{if(Sa)return;if(rf.key==="Escape"){se({type:"CANCEL"});const Bf=cf.current!=null?(bf=n.current)==null?void 0:bf.toXYZ(...cf.current):void 0;pf(Bf)}else if(rf.key==="Delete"&&Pe.matches("idle")&&(c!=null&&c.id)){const Bf=(Pf=o.current)==null?void 0:Pf.selectedLayer();Bf&&((Xf=o.current)!=null&&Xf.isTempLayer(Bf==null?void 0:Bf.id))&&Xd(Bf,c.id)}}}),useWindowEvent("keyup",rf=>{mt!==void 0&&rf.code==="Space"&&(d==null||d("sketch"),fa(!1),ep.current&&(ep.current=!1))}),React.useEffect(()=>{var rf;mt===void 0&&!z&&(se({type:"ABORT"}),(rf=_f.current)==null||rf.call(_f,void 0))},[mt,z,se]);const Cf=React.useRef(mn);Cf.current=mn;const ff=React.useRef(d);ff.current=d;const xf=React.useRef(h);xf.current=h;const wf=React.useRef(s);wf.current=s,React.useEffect(()=>{var rf;(z||mt)&&wf.current!=="sketch"&&((rf=ff.current)==null||rf.call(ff,"sketch"))},[mt,z]);const Ff=React.useRef(uf);Ff.current=uf;const Hf=React.useRef(of);Hf.current=of,React.useEffect(()=>{var rf,bf;(rf=xf.current)==null||rf.call(xf,mt,Cf.current),Ff.current&&Hf.current(),mt===void 0&&((bf=ff.current)==null||bf.call(ff,wf.current==="sketch"?"default":wf.current))},[mt]);const Jf=React.useRef(mt);Jf.current=mt,React.useEffect(()=>{ep.current||s!=="sketch"&&Ff.current&&Hf.current()},[s,kt]);const Wf=React.useRef([]),Dm=React.useCallback(rf=>{Wf.current.push(rf)},[]),vf=React.useRef(Dm);vf.current=Dm;const mf=React.useRef(void 0),Lf=React.useMemo(()=>Pe.context.catchedControlPointIndex,[Pe.context.catchedControlPointIndex]),Df=React.useMemo(()=>!!Pe.context.catchedExtrudedPoint,[Pe.context.catchedExtrudedPoint]),kf=React.useRef(!1);React.useEffect(()=>{var rf;if(Wf.current.forEach(bf=>{bf(z)}),z)mf.current=z;else{if(kf.current){kf.current=!1;return}(rf=o.current)==null||rf.selectFeatures([{layerId:void 0,featureId:[]}]),setTimeout(()=>{var bf,Pf,Xf;mf.current&&((Xf=o.current)==null||Xf.selectFeatures([{layerId:(bf=mf.current)==null?void 0:bf.layerId,featureId:[(Pf=mf.current)==null?void 0:Pf.feature.id]}])),mf.current=void 0},50)}},[o,z,Wf]);const Yf=React.useCallback((rf,bf,Pf)=>{!Pe.matches("editing")||!Pe.context.controlPoints||(Pf==="mousedown"?se(bf?{type:"CATCH",catchedControlPointIndex:-1,controlPoints:Pe.context.controlPoints,catchedExtrudedPoint:!0}:{type:"CATCH",catchedControlPointIndex:rf,controlPoints:Pe.context.controlPoints,catchedExtrudedPoint:!1}):!bf&&((Pe.context.type==="polygon"||Pe.context.type==="extrudedPolygon")&&Pe.context.controlPoints.length>3||Pe.context.type==="polyline"&&Pe.context.controlPoints.length>2)&&Vd(rf))},[Pe,se]),Qf=useGet(mt),Zf=useGet(La);React.useImperativeHandle(t,()=>({getType:Qf,setType:zi,getOptions:Zf,overrideOptions:ma,editFeature:sf,cancelEdit:of,applyEdit:nf,deleteFeature:df,onEditFeatureChange:vf.current}),[Qf,zi,Zf,ma,sf,df,of,nf]),React.useEffect(()=>{lt==null||lt()},[lt]);const jm=React.useCallback(()=>{var rf;if(Ru!==void 0){const bf=(rf=Pe.context.controlPoints)==null?void 0:rf.toSpliced(Ru,1);if(!bf)return;se({type:"UPDATE",controlPoints:bf}),nt(Pf=>Pf?{type:Pf.type,controlPoints:bf}:null),Vd(void 0)}},[Ru,Pe.context.controlPoints,se,nt]),qf=React.useRef(jm);qf.current=jm;const qm=React.useCallback((rf,bf)=>{if(Pe.context.controlPoints==null)return;const Pf=bf+1,Xf=Pe.context.controlPoints.toSpliced(Pf,0,rf);se({type:"UPDATE",controlPoints:Xf}),nt(Bf=>Bf?{type:Bf.type,controlPoints:Xf}:null)},[Pe.context.controlPoints,se,nt]),ep=React.useRef(!1),Sf=React.useRef(Pe);return Sf.current=Pe,React.useEffect(()=>window.addEventListener("keydown",rf=>{rf.code==="Space"&&Sf.current.matches("editing")?(ep.current=!0,d==null||d("move")):rf.code==="Delete"&&Sf.current.matches("editing")&&qf.current()}),[d]),React.useEffect(()=>window.addEventListener("keyup",rf=>{rf.code==="Space"&&ep.current&&(d==null||d("sketch"),ep.current=!1)}),[d]),{state:Pe,isEditing:uf,catchedControlPointIndex:Lf,catchedExtrudedPoint:Df,extrudedHeight:_i,extrudedPoint:Sc,centroidBasePoint:Xs,centroidExtrudedPoint:yu,geometryOptions:yt,color:La.color,disableShadow:La.disableShadow,selectedControlPointIndex:Ru,handleControlPointMouseEvent:Yf,handleAddControlPoint:qm}}async function getCentroid(t,n){var p,y;let o=0,s=0;t.forEach(S=>{var L;const P=(L=n.current)==null?void 0:L.toLngLatHeight(...S);P&&(s+=P[0],o+=P[1])});const c=o/t.length,d=s/t.length,h=await((p=n.current)==null?void 0:p.sampleTerrainHeight(d,c))??0;return(y=n.current)==null?void 0:y.toXYZ(d,c,h)}function isSketchType(t){return t==="marker"||t==="polyline"||t==="circle"||t==="rectangle"||t==="polygon"||t==="extrudedCircle"||t==="extrudedRectangle"||t==="extrudedPolygon"}const Sketch=({layersRef:t,engineRef:n,interactionMode:o="default",selectedFeature:s,SketchComponent:c,overrideInteractionMode:d,onSketchTypeChange:h,onSketchFeatureCreate:p,onSketchPluginFeatureCreate:y,onSketchFeatureUpdate:S,onSketchPluginFeatureUpdate:P,onSketchFeatureDelete:L,onSketchPluginFeatureDelete:F,onLayerSelect:N,sketchEditingFeature:z,onSketchEditFeature:W,onMount:lt},Pe)=>{const{state:se,isEditing:mt,catchedControlPointIndex:kt,catchedExtrudedPoint:mn,extrudedHeight:pi,extrudedPoint:zi,centroidBasePoint:Sa,centroidExtrudedPoint:fa,geometryOptions:La,color:Ra,disableShadow:ma,handleControlPointMouseEvent:yt,handleAddControlPoint:nt,selectedControlPointIndex:_i}=useHooks$9({ref:Pe,layersRef:t,engineRef:n,interactionMode:o,selectedFeature:s,overrideInteractionMode:d,onSketchTypeChange:h,onSketchFeatureCreate:p,onSketchPluginFeatureCreate:y,onSketchFeatureUpdate:S,onSketchPluginFeatureUpdate:P,onSketchFeatureDelete:L,onSketchPluginFeatureDelete:F,onLayerSelect:N,sketchEditingFeature:z,onSketchEditFeature:W,onMount:lt});return se.matches("idle")?null:c?jsxRuntimeExports.jsx(c,{geometryOptions:La,color:Ra,disableShadow:ma,isEditing:mt,catchedControlPointIndex:kt,catchedExtrudedPoint:mn,extrudedHeight:pi,extrudedPoint:zi,centroidBasePoint:Sa,centroidExtrudedPoint:fa,handleControlPointMouseEvent:yt,handleAddControlPoint:nt,selectedControlPointIndex:_i}):null},Sketch$1=React.forwardRef(Sketch);var Ii$1=Object.defineProperty,Wi$1=(t,n,o)=>n in t?Ii$1(t,n,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[n]=o,K$1=(t,n,o)=>(Wi$1(t,typeof n!="symbol"?n+"":n,o),o);const We$1=React.createContext({}),$e$1=()=>React.useContext(We$1)||{};var Ae$1={exports:{}},ye$1={};/**
101
101
  * @license React
102
102
  * react-jsx-runtime.production.min.js
103
103
  *
@@ -117,11 +117,11 @@ Event: `).concat(JSON.stringify(event)));else if(this.status!==InterpreterStatus
117
117
  `+uf+al}}var hf=!1,pf;{var _f=typeof WeakMap=="function"?WeakMap:Map;pf=new _f}function Vf(al,tf){if(!al||hf)return"";{var lf=pf.get(al);if(lf!==void 0)return lf}var yf;hf=!0;var If=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var Of;Of=cf.current,cf.current=null,Vd();try{if(tf){var Tf=function(){throw Error()};if(Object.defineProperty(Tf.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(Tf,[])}catch(op){yf=op}Reflect.construct(al,[],Tf)}else{try{Tf.call()}catch(op){yf=op}al.call(Tf.prototype)}}else{try{throw Error()}catch(op){yf=op}al()}}catch(op){if(op&&yf&&typeof op.stack=="string"){for(var Mf=op.stack.split(`
118
118
  `),Af=yf.stack.split(`
119
119
  `),Gf=Mf.length-1,Uf=Af.length-1;Gf>=1&&Uf>=0&&Mf[Gf]!==Af[Uf];)Uf--;for(;Gf>=1&&Uf>=0;Gf--,Uf--)if(Mf[Gf]!==Af[Uf]){if(Gf!==1||Uf!==1)do if(Gf--,Uf--,Uf<0||Mf[Gf]!==Af[Uf]){var jf=`
120
- `+Mf[Gf].replace(" at new "," at ");return al.displayName&&jf.includes("<anonymous>")&&(jf=jf.replace("<anonymous>",al.displayName)),typeof al=="function"&&pf.set(al,jf),jf}while(Gf>=1&&Uf>=0);break}}}finally{hf=!1,cf.current=Of,Gd(),Error.prepareStackTrace=If}var yp=al?al.displayName||al.name:"",pp=yp?gf(yp):"";return typeof al=="function"&&pf.set(al,pp),pp}function Rf(al,tf,lf){return Vf(al,!1)}function Wa(al){var tf=al.prototype;return!!(tf&&tf.isReactComponent)}function af(al,tf,lf){if(al==null)return"";if(typeof al=="function")return Vf(al,Wa(al));if(typeof al=="string")return gf(al);switch(al){case S:return gf("Suspense");case P:return gf("SuspenseList")}if(typeof al=="object")switch(al.$$typeof){case y:return Rf(al.render);case L:return af(al.type,tf,lf);case F:{var yf=al,If=yf._payload,Of=yf._init;try{return af(Of(If),tf,lf)}catch{}}}return""}var Xd=Object.prototype.hasOwnProperty,gd={},pd=Pe.ReactDebugCurrentFrame;function Zd(al){if(al){var tf=al._owner,lf=af(al.type,al._source,tf?tf.type:null);pd.setExtraStackFrame(lf)}else pd.setExtraStackFrame(null)}function sf(al,tf,lf,yf,If){{var Of=Function.call.bind(Xd);for(var Tf in al)if(Of(al,Tf)){var Mf=void 0;try{if(typeof al[Tf]!="function"){var Af=Error((yf||"React class")+": "+lf+" type `"+Tf+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof al[Tf]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw Af.name="Invariant Violation",Af}Mf=al[Tf](tf,Tf,yf,lf,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(Gf){Mf=Gf}Mf&&!(Mf instanceof Error)&&(Zd(If),se("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",yf||"React class",lf,Tf,typeof Mf),Zd(null)),Mf instanceof Error&&!(Mf.message in gd)&&(gd[Mf.message]=!0,Zd(If),se("Failed %s type: %s",lf,Mf.message),Zd(null))}}}var of=Array.isArray;function nf(al){return of(al)}function df(al){{var tf=typeof Symbol=="function"&&Symbol.toStringTag,lf=tf&&al[Symbol.toStringTag]||al.constructor.name||"Object";return lf}}function Cf(al){try{return ff(al),!1}catch{return!0}}function ff(al){return""+al}function xf(al){if(Cf(al))return se("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",df(al)),ff(al)}var wf=Pe.ReactCurrentOwner,Ff={key:!0,ref:!0,__self:!0,__source:!0},Hf,Jf;function Wf(al){if(Xd.call(al,"ref")){var tf=Object.getOwnPropertyDescriptor(al,"ref").get;if(tf&&tf.isReactWarning)return!1}return al.ref!==void 0}function Dm(al){if(Xd.call(al,"key")){var tf=Object.getOwnPropertyDescriptor(al,"key").get;if(tf&&tf.isReactWarning)return!1}return al.key!==void 0}function vf(al,tf){typeof al.ref=="string"&&wf.current}function mf(al,tf){{var lf=function(){Hf||(Hf=!0,se("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",tf))};lf.isReactWarning=!0,Object.defineProperty(al,"key",{get:lf,configurable:!0})}}function Lf(al,tf){{var lf=function(){Jf||(Jf=!0,se("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",tf))};lf.isReactWarning=!0,Object.defineProperty(al,"ref",{get:lf,configurable:!0})}}var Df=function(al,tf,lf,yf,If,Of,Tf){var Mf={$$typeof:n,type:al,key:tf,ref:lf,props:Tf,_owner:Of};return Mf._store={},Object.defineProperty(Mf._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(Mf,"_self",{configurable:!1,enumerable:!1,writable:!1,value:yf}),Object.defineProperty(Mf,"_source",{configurable:!1,enumerable:!1,writable:!1,value:If}),Object.freeze&&(Object.freeze(Mf.props),Object.freeze(Mf)),Mf};function kf(al,tf,lf,yf,If){{var Of,Tf={},Mf=null,Af=null;lf!==void 0&&(xf(lf),Mf=""+lf),Dm(tf)&&(xf(tf.key),Mf=""+tf.key),Wf(tf)&&(Af=tf.ref,vf(tf,If));for(Of in tf)Xd.call(tf,Of)&&!Ff.hasOwnProperty(Of)&&(Tf[Of]=tf[Of]);if(al&&al.defaultProps){var Gf=al.defaultProps;for(Of in Gf)Tf[Of]===void 0&&(Tf[Of]=Gf[Of])}if(Mf||Af){var Uf=typeof al=="function"?al.displayName||al.name||"Unknown":al;Mf&&mf(Tf,Uf),Af&&Lf(Tf,Uf)}return Df(al,Mf,Af,If,yf,wf.current,Tf)}}var Yf=Pe.ReactCurrentOwner,Qf=Pe.ReactDebugCurrentFrame;function Zf(al){if(al){var tf=al._owner,lf=af(al.type,al._source,tf?tf.type:null);Qf.setExtraStackFrame(lf)}else Qf.setExtraStackFrame(null)}var jm;jm=!1;function qf(al){return typeof al=="object"&&al!==null&&al.$$typeof===n}function qm(){{if(Yf.current){var al=yt(Yf.current.type);if(al)return`
120
+ `+Mf[Gf].replace(" at new "," at ");return al.displayName&&jf.includes("<anonymous>")&&(jf=jf.replace("<anonymous>",al.displayName)),typeof al=="function"&&pf.set(al,jf),jf}while(Gf>=1&&Uf>=0);break}}}finally{hf=!1,cf.current=Of,Gd(),Error.prepareStackTrace=If}var yp=al?al.displayName||al.name:"",up=yp?gf(yp):"";return typeof al=="function"&&pf.set(al,up),up}function Rf(al,tf,lf){return Vf(al,!1)}function Wa(al){var tf=al.prototype;return!!(tf&&tf.isReactComponent)}function af(al,tf,lf){if(al==null)return"";if(typeof al=="function")return Vf(al,Wa(al));if(typeof al=="string")return gf(al);switch(al){case S:return gf("Suspense");case P:return gf("SuspenseList")}if(typeof al=="object")switch(al.$$typeof){case y:return Rf(al.render);case L:return af(al.type,tf,lf);case F:{var yf=al,If=yf._payload,Of=yf._init;try{return af(Of(If),tf,lf)}catch{}}}return""}var Xd=Object.prototype.hasOwnProperty,gd={},pd=Pe.ReactDebugCurrentFrame;function Zd(al){if(al){var tf=al._owner,lf=af(al.type,al._source,tf?tf.type:null);pd.setExtraStackFrame(lf)}else pd.setExtraStackFrame(null)}function sf(al,tf,lf,yf,If){{var Of=Function.call.bind(Xd);for(var Tf in al)if(Of(al,Tf)){var Mf=void 0;try{if(typeof al[Tf]!="function"){var Af=Error((yf||"React class")+": "+lf+" type `"+Tf+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof al[Tf]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw Af.name="Invariant Violation",Af}Mf=al[Tf](tf,Tf,yf,lf,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(Gf){Mf=Gf}Mf&&!(Mf instanceof Error)&&(Zd(If),se("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",yf||"React class",lf,Tf,typeof Mf),Zd(null)),Mf instanceof Error&&!(Mf.message in gd)&&(gd[Mf.message]=!0,Zd(If),se("Failed %s type: %s",lf,Mf.message),Zd(null))}}}var of=Array.isArray;function nf(al){return of(al)}function df(al){{var tf=typeof Symbol=="function"&&Symbol.toStringTag,lf=tf&&al[Symbol.toStringTag]||al.constructor.name||"Object";return lf}}function Cf(al){try{return ff(al),!1}catch{return!0}}function ff(al){return""+al}function xf(al){if(Cf(al))return se("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",df(al)),ff(al)}var wf=Pe.ReactCurrentOwner,Ff={key:!0,ref:!0,__self:!0,__source:!0},Hf,Jf;function Wf(al){if(Xd.call(al,"ref")){var tf=Object.getOwnPropertyDescriptor(al,"ref").get;if(tf&&tf.isReactWarning)return!1}return al.ref!==void 0}function Dm(al){if(Xd.call(al,"key")){var tf=Object.getOwnPropertyDescriptor(al,"key").get;if(tf&&tf.isReactWarning)return!1}return al.key!==void 0}function vf(al,tf){typeof al.ref=="string"&&wf.current}function mf(al,tf){{var lf=function(){Hf||(Hf=!0,se("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",tf))};lf.isReactWarning=!0,Object.defineProperty(al,"key",{get:lf,configurable:!0})}}function Lf(al,tf){{var lf=function(){Jf||(Jf=!0,se("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",tf))};lf.isReactWarning=!0,Object.defineProperty(al,"ref",{get:lf,configurable:!0})}}var Df=function(al,tf,lf,yf,If,Of,Tf){var Mf={$$typeof:n,type:al,key:tf,ref:lf,props:Tf,_owner:Of};return Mf._store={},Object.defineProperty(Mf._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(Mf,"_self",{configurable:!1,enumerable:!1,writable:!1,value:yf}),Object.defineProperty(Mf,"_source",{configurable:!1,enumerable:!1,writable:!1,value:If}),Object.freeze&&(Object.freeze(Mf.props),Object.freeze(Mf)),Mf};function kf(al,tf,lf,yf,If){{var Of,Tf={},Mf=null,Af=null;lf!==void 0&&(xf(lf),Mf=""+lf),Dm(tf)&&(xf(tf.key),Mf=""+tf.key),Wf(tf)&&(Af=tf.ref,vf(tf,If));for(Of in tf)Xd.call(tf,Of)&&!Ff.hasOwnProperty(Of)&&(Tf[Of]=tf[Of]);if(al&&al.defaultProps){var Gf=al.defaultProps;for(Of in Gf)Tf[Of]===void 0&&(Tf[Of]=Gf[Of])}if(Mf||Af){var Uf=typeof al=="function"?al.displayName||al.name||"Unknown":al;Mf&&mf(Tf,Uf),Af&&Lf(Tf,Uf)}return Df(al,Mf,Af,If,yf,wf.current,Tf)}}var Yf=Pe.ReactCurrentOwner,Qf=Pe.ReactDebugCurrentFrame;function Zf(al){if(al){var tf=al._owner,lf=af(al.type,al._source,tf?tf.type:null);Qf.setExtraStackFrame(lf)}else Qf.setExtraStackFrame(null)}var jm;jm=!1;function qf(al){return typeof al=="object"&&al!==null&&al.$$typeof===n}function qm(){{if(Yf.current){var al=yt(Yf.current.type);if(al)return`
121
121
 
122
122
  Check the render method of \``+al+"`."}return""}}function ep(al){return""}var Sf={};function rf(al){{var tf=qm();if(!tf){var lf=typeof al=="string"?al:al.displayName||al.name;lf&&(tf=`
123
123
 
124
- Check the top-level render call using <`+lf+">.")}return tf}}function bf(al,tf){{if(!al._store||al._store.validated||al.key!=null)return;al._store.validated=!0;var lf=rf(tf);if(Sf[lf])return;Sf[lf]=!0;var yf="";al&&al._owner&&al._owner!==Yf.current&&(yf=" It was passed a child from "+yt(al._owner.type)+"."),Zf(al),se('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',lf,yf),Zf(null)}}function Pf(al,tf){{if(typeof al!="object")return;if(nf(al))for(var lf=0;lf<al.length;lf++){var yf=al[lf];qf(yf)&&bf(yf,tf)}else if(qf(al))al._store&&(al._store.validated=!0);else if(al){var If=lt(al);if(typeof If=="function"&&If!==al.entries)for(var Of=If.call(al),Tf;!(Tf=Of.next()).done;)qf(Tf.value)&&bf(Tf.value,tf)}}}function Xf(al){{var tf=al.type;if(tf==null||typeof tf=="string")return;var lf;if(typeof tf=="function")lf=tf.propTypes;else if(typeof tf=="object"&&(tf.$$typeof===y||tf.$$typeof===L))lf=tf.propTypes;else return;if(lf){var yf=yt(tf);sf(lf,al.props,"prop",yf,al)}else if(tf.PropTypes!==void 0&&!jm){jm=!0;var If=yt(tf);se("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",If||"Unknown")}typeof tf.getDefaultProps=="function"&&!tf.getDefaultProps.isReactClassApproved&&se("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Bf(al){{for(var tf=Object.keys(al.props),lf=0;lf<tf.length;lf++){var yf=tf[lf];if(yf!=="children"&&yf!=="key"){Zf(al),se("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",yf),Zf(null);break}}al.ref!==null&&(Zf(al),se("Invalid attribute `ref` supplied to `React.Fragment`."),Zf(null))}}function Am(al,tf,lf,yf,If,Of){{var Tf=La(al);if(!Tf){var Mf="";(al===void 0||typeof al=="object"&&al!==null&&Object.keys(al).length===0)&&(Mf+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var Af=ep();Af?Mf+=Af:Mf+=qm();var Gf;al===null?Gf="null":nf(al)?Gf="array":al!==void 0&&al.$$typeof===n?(Gf="<"+(yt(al.type)||"Unknown")+" />",Mf=" Did you accidentally export a JSX literal instead of a component?"):Gf=typeof al,se("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",Gf,Mf)}var Uf=kf(al,tf,lf,If,Of);if(Uf==null)return Uf;if(Tf){var jf=tf.children;if(jf!==void 0)if(yf)if(nf(jf)){for(var yp=0;yp<jf.length;yp++)Pf(jf[yp],al);Object.freeze&&Object.freeze(jf)}else se("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Pf(jf,al)}return al===s?Bf(Uf):Xf(Uf),Uf}}function tp(al,tf,lf){return Am(al,tf,lf,!0)}function sp(al,tf,lf){return Am(al,tf,lf,!1)}var hp=sp,fp=tp;pe$1.Fragment=s,pe$1.jsx=hp,pe$1.jsxs=fp}()),pe$1}process.env.NODE_ENV==="production"?Ae$1.exports=Ot$1():Ae$1.exports=Gt$1();var H$1=Ae$1.exports;function Bt$1(t,n){return n?Fe$1(t).reduce((o,[s,c])=>(ve$1(n,s)&&(o[s]=c),o),{}):{}}function Fe$1(t){return Object.keys(t).map(n=>[n,t[n]])}function ve$1(t,n){return!!t&&t.indexOf(n)!==-1}function At$1(t,n){return!!t&&!!n&&[...Object.keys(t),...Object.keys(n)].every(o=>t[o]===n[o])}function Ft$1(t){return t&&typeof t.isDestroyed=="function"&&typeof t.destroy=="function"}function It$1(t){return Ft$1(t)&&t.isDestroyed()}function J(t){return t&&typeof t=="object"&&"then"in t&&typeof t.then=="function"}const ce$1="__RESIUM_EVENT_MANAGER",Ie$1=["onClick","onDoubleClick","onMouseDown","onMouseUp","onMiddleClick","onMiddleDown","onMiddleUp","onMouseMove","onPinchEnd","onPinchMove","onPinchStart","onRightClick","onRightDown","onRightUp","onWheel","onMouseEnter","onMouseLeave"],Re$1=class sg{constructor(n){K$1(this,"scene"),K$1(this,"sshe"),K$1(this,"events",{onClick:new Map,onDoubleClick:new Map,onMouseDown:new Map,onMouseUp:new Map,onMiddleClick:new Map,onMiddleDown:new Map,onMiddleUp:new Map,onMouseMove:new Map,onPinchEnd:new Map,onPinchMove:new Map,onPinchStart:new Map,onRightClick:new Map,onRightDown:new Map,onRightUp:new Map,onWheel:new Map,onMouseEnter:new Map,onMouseLeave:new Map}),K$1(this,"hovered"),K$1(this,"onMouseMove",o=>{var s,c,d,h,p,y;const S=this.pick(o.endPosition);this.hovered!==S&&(this.hovered&&((s=this.getEventCallback("onMouseLeave",this.hovered))==null||s(o,this.hovered),(c=this.getEventCallback("onMouseLeave",null))==null||c(o,this.hovered)),S&&((d=this.getEventCallback("onMouseEnter",S))==null||d(o,S),(h=this.getEventCallback("onMouseEnter",null))==null||h(o,S))),S&&((p=this.getEventCallback("onMouseMove",S))==null||p(o,S)),(y=this.getEventCallback("onMouseMove",null))==null||y(o,S),this.hovered=S}),K$1(this,"eventCallback",o=>s=>{var c,d;const h=this.pick(s==null?void 0:s.position);h&&((c=this.getEventCallback(o,h))==null||c(s,h)),(d=this.getEventCallback(o,null))==null||d(s,h)}),this.scene=n,this.sshe=new Cesium$1.ScreenSpaceEventHandler(n==null?void 0:n.canvas)}destroy(){this.hovered=void 0,this.sshe.isDestroyed()||this.sshe.destroy()}isDestroyed(){return this.sshe.isDestroyed()}on(n,o,s){n&&o==="onWheel"||this.events[o].set(n,s)}off(n,o){this.events[o].delete(n),this.hovered===n&&(this.hovered=void 0)}setEvents(n,o){Fe$1(o).forEach(([s,c])=>{const d=s;ve$1(Ie$1,d)&&(c?this.on(n,d,c):this.off(n,d))}),this.commit()}clearEvents(n){this.hovered=void 0,Ie$1.forEach(o=>{this.off(n,o)}),this.commit()}commit(){const n=this.sshe,o=this.sshe.isDestroyed();o||(this.events.onMouseEnter.size===0&&this.events.onMouseLeave.size===0&&this.events.onMouseMove.size===0?this.sshe.removeInputAction(Cesium$1.ScreenSpaceEventType.MOUSE_MOVE):this.sshe.getInputAction(Cesium$1.ScreenSpaceEventType.MOUSE_MOVE)||this.sshe.setInputAction(this.onMouseMove,Cesium$1.ScreenSpaceEventType.MOUSE_MOVE)),Fe$1(this.events).forEach(([s,c])=>{if(s==="onMouseEnter"||s==="onMouseLeave"||s==="onMouseMove")return;const d=sg.eventTypeMap[s];o||(c.size===0?n.removeInputAction(d):n.getInputAction(d)||n.setInputAction(this.eventCallback(s),d))})}getScreenSpaceEventHandler(){return this.sshe}getEventCallback(n,o){var s,c;return o===null?this.events[n].get(null):this.events[n].get(o.id)||this.events[n].get((c=(s=o.id)==null?void 0:s.entityCollection)==null?void 0:c.owner)||this.events[n].get(o.primitive)||this.events[n].get(o.tileset)}pick(n){var o;if(n)return(o=this.scene)==null?void 0:o.pick(n)}};K$1(Re$1,"eventTypeMap",{onClick:Cesium$1.ScreenSpaceEventType.LEFT_CLICK,onDoubleClick:Cesium$1.ScreenSpaceEventType.LEFT_DOUBLE_CLICK,onMouseDown:Cesium$1.ScreenSpaceEventType.LEFT_DOWN,onMouseUp:Cesium$1.ScreenSpaceEventType.LEFT_UP,onMiddleClick:Cesium$1.ScreenSpaceEventType.MIDDLE_CLICK,onMiddleDown:Cesium$1.ScreenSpaceEventType.MIDDLE_DOWN,onMiddleUp:Cesium$1.ScreenSpaceEventType.MIDDLE_UP,onMouseMove:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE,onPinchEnd:Cesium$1.ScreenSpaceEventType.PINCH_END,onPinchMove:Cesium$1.ScreenSpaceEventType.PINCH_MOVE,onPinchStart:Cesium$1.ScreenSpaceEventType.PINCH_START,onRightClick:Cesium$1.ScreenSpaceEventType.RIGHT_CLICK,onRightDown:Cesium$1.ScreenSpaceEventType.RIGHT_DOWN,onRightUp:Cesium$1.ScreenSpaceEventType.RIGHT_UP,onWheel:Cesium$1.ScreenSpaceEventType.WHEEL,onMouseEnter:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE,onMouseLeave:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE});let De$1=Re$1;const Wt$1=({name:t,create:n,destroy:o,provide:s,update:c,cesiumReadonlyProps:d,cesiumEventProps:h,otherProps:p,setCesiumPropsAfterCreate:y,useCommonEvent:S,useRootEvent:P},L,F)=>{const N=React.useRef(),z=$e$1(),W=React.useRef(s?{}:void 0),lt=React.useRef({}),Pe=React.useRef(si$1(L)),se=React.useRef({}),[mt,kt]=React.useState(!1),mn=React.useRef(!1),pi=React.useRef(null),zi=React.useRef(),Sa=z==null?void 0:z[ce$1],fa=React.useRef(),La=React.useRef(),Ra=React.useCallback(async _i=>{var ba;if(!N.current)return;const Sc=N.current,ms=Object.keys(_i),Xs=Object.keys(h||[]),pu=ms.concat(Object.keys(se.current).filter(Ru=>!ms.includes(Ru))).filter(Ru=>se.current[Ru]!==_i[Ru]).map(Ru=>[Ru,se.current[Ru],_i[Ru]]),yu=[];for(const[Ru,Vd,Gd]of pu)if(d!=null&&d.includes(Ru))yu.push(Ru);else if(ve$1(Xs,Ru)){const cf=h==null?void 0:h[Ru],uf=Sc[cf];uf instanceof Cesium$1.Event&&(typeof Vd>"u"?(uf.addEventListener(Gd),lt.current[cf]=Gd):typeof Gd>"u"?(uf.removeEventListener(Vd),delete lt.current[cf]):(uf.removeEventListener(Vd),uf.addEventListener(Gd)))}else Ru!=="children"&&!Ie$1.includes(Ru)&&!(p!=null&&p.includes(Ru))&&(Sc[Ru]=Gd);const Nl=P?(ba=W.current)==null?void 0:ba[ce$1]:Sa;if(S&&Nl&&N.current&&Nl.setEvents(P?null:N.current,_i),c&&mn.current){const Ru=c(N.current,_i,se.current,z);J(Ru)&&await Ru}se.current=_i,Pe.current=_i,mn.current&&yu.length>0&&(process.env.NODE_ENV!=="production"&&console.warn(`Warning: <${t}> is recreated because following read-only props have been updated: ${yu.join(", ")}`),yt(),await nt(),fa.current=ma())},[]),ma=React.useCallback(async()=>{var _i;await new Promise(Xs=>queueMicrotask(()=>Xs(void 0)));const ba=n==null?void 0:n(z,Pe.current,pi.current);let Sc;if(J(ba)?Sc=await ba:Sc=ba,Array.isArray(Sc)?(N.current=Sc[0],zi.current=Sc[1]):N.current=Sc,y)await Ra(Pe.current);else{if(N.current&&h){const Xs=N.current;for(const pu of Object.keys(Pe.current)){const yu=h[pu];if(yu){const Nl=Pe.current[pu],Ru=Xs[yu];Nl&&Ru instanceof Cesium$1.Event&&Ru.addEventListener(Nl)}}}se.current=Pe.current}s&&N.current&&(W.current={...z,...s(N.current,z,L,zi.current)});const ms=P?(_i=W.current)==null?void 0:_i[ce$1]:Sa;S&&ms&&N.current&&ms.setEvents(P?null:N.current,Pe.current),La.current||kt(!0)},[]),yt=React.useCallback(()=>{kt(!1),mn.current=!1},[]),nt=React.useCallback(async()=>{var _i,ba;await new Promise(ms=>queueMicrotask(()=>ms(void 0))),fa.current&&(await fa.current,fa.current=void 0),N.current&&o&&o(N.current,z,pi.current,zi.current);const Sc=P?(_i=W.current)==null?void 0:_i[ce$1]:Sa;if(S&&Sc&&N.current&&Sc.clearEvents(P?null:N.current),N.current&&!It$1(N.current)){const ms=Object.keys(lt.current);for(const Xs of ms){const pu=N.current[Xs];(ba=pu==null?void 0:pu.removeEventListener)==null||ba.call(pu,lt.current[Xs])}}lt.current={},W.current=void 0,zi.current=void 0,N.current=void 0},[]);return React.useLayoutEffect(()=>((async()=>(La.current&&(await La.current,La.current=void 0),fa.current=ma()))(),()=>{yt(),La.current=nt()}),[ma,nt,yt]),React.useEffect(()=>{(async()=>{var _i,ba;fa.current&&await fa.current;const Sc=si$1(L);mt?At$1(Sc,se.current)||(await Ra(Sc),(ba=(_i=z.__$internal)==null?void 0:_i.onUpdate)==null||ba.call(_i)):(se.current=Sc,Pe.current=Sc,mn.current=!0)})()},[z.__$internal,mt,L,Ra]),React.useImperativeHandle(F,()=>({cesiumElement:mt?N.current:null}),[mt]),[W.current,mt,pi]};function si$1(t){const{children:n,...o}=t;return o}const l=({renderContainer:t,noChildren:n,containerProps:o,defaultProps:s,...c})=>{const d=(h,p)=>{const y={...s,...h},[S,P,L]=Wt$1(c,y,p);if(n)return null;const F=P&&"children"in y?y.children:null,N=t?H$1.jsx("div",{"data-testid":"resium-container",ref:L,...typeof o=="function"?o(y):Bt$1(y,o),children:F}):F?H$1.jsx(H$1.Fragment,{children:F}):null;return S?H$1.jsx(We$1.Provider,{value:S,children:N}):N};return d.displayName=c.name,React.forwardRef(d)},Vt$1=["enabled","selected"],U$1=t=>l({name:t.name,create(n,o){if(!n.scene)return;const s=t.create(o,n.scene.postProcessStages);return typeof o.enabled=="boolean"&&(s.enabled=o.enabled),o.selected&&"selected"in s&&(s.selected=o.selected),t.props.forEach(c=>{!ve$1(t.readonlyProps,c)&&typeof o[c]<"u"&&(s.uniforms[c]=o[c])}),!t.noMount&&n.scene&&!n.scene.isDestroyed()&&n.scene.postProcessStages.add(s),s},destroy(n,o){t.noMount?n.enabled=!1:(o.scene&&!o.scene.isDestroyed()&&o.scene.postProcessStages.remove(n),n.isDestroyed()||n.destroy())},update(n,o,s){t.props.forEach(c=>{!ve$1(t.readonlyProps,c)&&o[c]!==s[c]&&(n.uniforms[c]=o[c])})},cesiumProps:Vt$1,cesiumReadonlyProps:t.readonlyProps,defaultProps:{enabled:!0}}),Ut$1=["alignedAxis","color","disableDepthTestDistance","distanceDisplayCondition","eyeOffset","height","heightReference","horizontalOrigin","image","pixelOffset","pixelOffsetScaleByDistance","position","rotation","scale","scaleByDistance","show","sizeInMeters","translucencyByDistance","verticalOrigin","width","id"];l({name:"Billboard",create(t,n){var o;return(o=t.billboardCollection)==null?void 0:o.add(n)},destroy(t,n){n.billboardCollection&&!n.billboardCollection.isDestroyed()&&n.billboardCollection.remove(t)},cesiumProps:Ut$1,useCommonEvent:!0});const Ht$1=["blendOption","debugShowBoundingVolume","debugShowTextureAtlas","modelMatrix","show"];l({name:"BillboardCollection",create(t,n){if(!t.primitiveCollection)return;const o=new Cesium$1.BillboardCollection({modelMatrix:n.modelMatrix,debugShowBoundingVolume:n.debugShowBoundingVolume,scene:t.scene,blendOption:n.blendOption});return t.primitiveCollection.add(o),o},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},provide(t){return{billboardCollection:t}},cesiumProps:Ht$1});const xt$1=["image","show","scale","horizontalOrigin","verticalOrigin","eyeOffset","pixelOffset","rotation","alignedAxis","width","height","color","scaleByDistance","translucencyByDistance","pixelOffsetScaleByDistance","imageSubRegion","sizeInMeters","heightReference","distanceDisplayCondition","disableDepthTestDistance"],Nt$1={onDefinitionChange:"definitionChanged"},qt$1=l({name:"BillboardGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.BillboardGraphics(n);return t.entity.billboard=o,o},destroy(t,n){n.entity&&(n.entity.billboard=void 0)},cesiumProps:xt$1,cesiumEventProps:Nt$1}),gs$1=qt$1,Yt$1=["heightReference","dimensions","show","fill","material","outline","outlineColor","outlineWidth","shadows","distanceDisplayCondition"],Kt$1={onDefinitionChange:"definitionChanged"},Jt$1=l({name:"BoxGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.BoxGraphics(n);return t.entity.box=o,o},destroy(t,n){n.entity&&(n.entity.box=void 0)},cesiumProps:Yt$1,cesiumEventProps:Kt$1}),Cs$1=Jt$1,Zt$1=["position","direction","up","right","frustum","defaultMoveAmount","defaultLookAmount","defaultRotateAmount","defaultZoomAmount","constrainedAxis","maximumZoomFactor","percentageChanged"],Xt$1={onChange:"changed",onMoveEnd:"moveEnd",onMoveStart:"moveStart"},Qt$1=l({name:"Camera",create:t=>{var n;return(n=t.scene)==null?void 0:n.camera},cesiumProps:Zt$1,cesiumEventProps:Xt$1,setCesiumPropsAfterCreate:!0}),Ps$1=Qt$1,rn$1=["show","modelMatrix","shadows","maximumScreenSpaceError","cullRequestsWhileMoving","cullRequestsWhileMovingMultiplier","preloadWhenHidden","preloadFlightDestinations","preferLeaves","progressiveResolutionHeightFraction","foveatedScreenSpaceError","foveatedConeSize","foveatedMinimumScreenSpaceErrorRelaxation","foveatedInterpolationCallback","foveatedTimeDelay","dynamicScreenSpaceError","dynamicScreenSpaceErrorDensity","dynamicScreenSpaceErrorFactor","dynamicScreenSpaceErrorHeightFalloff","skipLevelOfDetail","baseScreenSpaceError","skipScreenSpaceErrorFactor","skipLevels","immediatelyLoadDesiredLevelOfDetail","loadSiblings","clippingPlanes","classificationType","ellipsoid","lightColor","colorBlendAmount","colorBlendMode","debugFreezeFrame","debugColorizeTiles","debugWireframe","debugShowBoundingVolume","debugShowContentBoundingVolume","debugShowViewerRequestVolume","debugShowGeometricError","debugShowRenderingStatistics","debugShowMemoryUsage","debugShowUrl","style","backFaceCulling","vectorClassificationOnly","vectorKeepDecodedPositions","splitDirection","customShader","imageBasedLighting","showCreditsOnScreen","featureIdLabel","instanceFeatureIdLabel","imageBasedLighting","outlineColor","cacheBytes","maximumCacheOverflowBytes","enableCollision"],sn$1=["showOutline","cullWithChildrenBounds","debugHeatmapTilePropertyName","enableDebugWireframe","modelUpAxis","modelForwardAxis","projectTo2D","enableShowOutline","enablePick"],an$1={onAllTilesLoad:"allTilesLoaded",onInitialTilesLoad:"initialTilesLoaded",onLoadProgress:"loadProgress",onTileFailed:"tileFailed",onTileLoad:"tileLoad",onTileUnload:"tileUnload",onTileVisible:"tileVisible"},cn$1=["onReady","onError","url"],ln$1=l({name:"Cesium3DTileset",async create(t,n){var o,s;if(!t.primitiveCollection)return;const c=n.url;let d;J(c)?d=await c:d=c;let h;try{h=await Cesium$1.Cesium3DTileset.fromUrl(d,n),(o=n.onReady)==null||o.call(n,h)}catch(p){(s=n.onError)==null||s.call(n,p);return}return n.colorBlendAmount&&(h.colorBlendAmount=n.colorBlendAmount),n.colorBlendMode&&(h.colorBlendMode=n.colorBlendMode),n.style&&(h.style=n.style),t.primitiveCollection.add(h),h},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:rn$1,cesiumReadonlyProps:sn$1,cesiumEventProps:an$1,otherProps:cn$1,useCommonEvent:!0}),Ds$1=ln$1,un$1=["show","uri","maximumScreenSpaceError"],dn$1={onDefinitionChange:"definitionChanged"};l({name:"Cesium3DTilesetGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.Cesium3DTilesetGraphics(n);return t.entity.tileset=o,o},destroy(t,n){n.entity&&(n.entity.tileset=void 0)},cesiumProps:un$1,cesiumEventProps:dn$1});const fn$1=["resolutionScale","useDefaultRenderLoop","targetFrameRate","useBrowserRecommendedResolution","creditDisplay"],hn$1=["clock","baseLayer","terrainProvider","skyBox","skyAtmosphere","sceneMode","scene3DOnly","orderIndependentTranslucency","mapMode2D","mapProjection","globe","showRenderLoopErrors","contextOptions","creditContainer","creditViewport","shadows","terrainShadows","terrain","requestRenderMode","maximumRenderTimeChange","msaaSamples","blurActiveElementOnCanvasFocus"],yn$1=["className","id","style","full","containerProps"];l({name:"CesiumWidget",create(t,n,o){if(!o)return;const s=new Cesium$1.CesiumWidget(o,n);if(!s)return;typeof n.resolutionScale=="number"&&(s.resolutionScale=n.resolutionScale);const c=new De$1(s.scene);return[s,c]},destroy(t,n,o,s){s&&!s.isDestroyed()&&s.destroy(),t.isDestroyed()||t.destroy()},provide(t,n,o,s){return{cesiumWidget:t,scene:t.scene,camera:t.scene.camera,imageryLayerCollection:t.scene.globe.imageryLayers,primitiveCollection:t.scene.primitives,globe:t.scene.globe,__$internal:{onUpdate:o==null?void 0:o.onUpdate},[ce$1]:s}},containerProps:({id:t,className:n,style:o,full:s,containerProps:c})=>({className:n,id:t,style:{...s?{position:"absolute",bottom:"0",left:"0",right:"0",top:"0"}:{},...o},...c}),cesiumProps:fn$1,cesiumReadonlyProps:hn$1,otherProps:yn$1,renderContainer:!0,useCommonEvent:!0,useRootEvent:!0});const vn$1=["classificationType","debugShowBoundingVolume","debugShowShadowVolume","show"],gn$1=["allowPicking","asynchronous","compressVertices","geometryInstances","interleave","releaseGeometryInstances","vertexCacheOptimize","appearance"],Cn$1=["onReady"];l({name:"ClassificationPrimitive",async create(t,n){var o;if(!t.primitiveCollection)return;const s=new Cesium$1.ClassificationPrimitive(n);if(n.onReady){const c=()=>{var d,h;s.ready&&((d=n.onReady)==null||d.call(n,s),(h=t.scene)==null||h.postRender.removeEventListener(c))};(o=t.scene)==null||o.postRender.addEventListener(c)}return t.primitiveCollection.add(s),s},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:vn$1,cesiumReadonlyProps:gn$1,otherProps:Cn$1,useCommonEvent:!0});const Sn$1={onStop:"onStop",onTick:"onTick"},En$1=["canAnimate","clockRange","clockStep","currentTime","multiplier","shouldAnimate","startTime","stopTime"],bn$1=l({name:"Clock",create:t=>{var n;return(n=t.cesiumWidget)==null?void 0:n.clock},cesiumProps:En$1,cesiumEventProps:Sn$1,setCesiumPropsAfterCreate:!0}),Ms$1=bn$1,wn$1=["noiseDetail","noiseOffset","show","debugBillboards","debugEllipsoids"];l({name:"CloudCollection",create:t=>{if(!t.primitiveCollection)return;const n=new Cesium$1.CloudCollection;return t.primitiveCollection.add(n),n},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},provide:t=>({cloudCollection:t}),cesiumProps:wn$1,setCesiumPropsAfterCreate:!0});const Rn$1=["positions","width","cornerType","height","heightReference","extrudedHeight","extrudedHeightReference","show","fill","material","outline","outlineColor","outlineWidth","granularity","shadows","distanceDisplayCondition","zIndex","classificationType"],$n$1={onDefinitionChange:"definitionChanged"};l({name:"CorridorGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.CorridorGraphics(n);return n.classificationType&&(o.classificationType=n.classificationType),t.entity.corridor=o,o},destroy(t,n){n.entity&&(n.entity.corridor=void 0)},cesiumProps:Rn$1,cesiumEventProps:$n$1});const Mn$1=["show","position","scale","maximumSize","slice","brightness","color"];l({name:"CumulusCloud",create:(t,n)=>{var o;return(o=t.cloudCollection)==null?void 0:o.add(n)},destroy(t,n){n.cloudCollection&&!n.cloudCollection.isDestroyed()&&n.cloudCollection.remove(t)},cesiumProps:Mn$1});const Ln$1=["clustering","name","show","clock","isLoading"],_n$1={onChange:"changedEvent",onError:"errorEvent",onLoading:"loadingEvent"},On$1=l({name:"CustomDataSource",create(t,n){if(!t.dataSourceCollection)return;const o=new Cesium$1.CustomDataSource(n.name);return n.clustering&&(o.clustering=n.clustering),typeof n.show=="boolean"&&(o.show=n.show),typeof n.clock<"u"&&(o.clock=n.clock),t.dataSourceCollection.add(o),o},destroy(t,n){n.dataSourceCollection&&!n.dataSourceCollection.isDestroyed()&&n.dataSourceCollection.remove(t)},provide(t){return{entityCollection:t.entities,dataSource:t}},cesiumProps:Ln$1,cesiumEventProps:_n$1,useCommonEvent:!0}),Os$1=On$1,Gn$1=["heightReference","length","topRadius","bottomRadius","show","fill","material","outline","outlineColor","outlineWidth","numberOfVerticalLines","slices","distanceDisplayCondition","shadows"],Bn$1={onDefinitionChange:"definitionChanged"};l({name:"CylinderGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.CylinderGraphics(n);return t.entity.cylinder=o,o},destroy(t,n){n.entity&&(n.entity.cylinder=void 0)},cesiumProps:Gn$1,cesiumEventProps:Bn$1});const Fn$1=["clustering","show"],In$1=["name","sourceUri","credit"],Wn$1={onChange:"changedEvent",onError:"errorEvent",onLoading:"loadingEvent"},Vn$1=["onLoad","data"],ai=(t,{data:n,onLoad:o,...s})=>{n&&t.load(n,s).then(c=>{o&&o(c)})},Un$1=l({name:"CzmlDataSource",create(t,n){if(!t.dataSourceCollection)return;const o=new Cesium$1.CzmlDataSource(n.name);return n.clustering&&(o.clustering=n.clustering),typeof n.show=="boolean"&&(o.show=n.show),t.dataSourceCollection.add(o),n.data&&ai(o,n),o},update(t,n,o){n.data?o.show!==n.show&&(t.show=typeof n.show=="boolean"?n.show:!0):t.show=!1,n.data&&(o.data!==n.data||o.sourceUri!==n.sourceUri||o.credit!==n.credit)&&ai(t,n)},destroy(t,n){n.dataSourceCollection&&!n.dataSourceCollection.isDestroyed()&&n.dataSourceCollection.remove(t)},provide(t){return{dataSource:t}},cesiumProps:Fn$1,cesiumReadonlyProps:In$1,cesiumEventProps:Wn$1,otherProps:Vn$1,useCommonEvent:!0}),Bs$1=Un$1,jn$1=["semiMajorAxis","semiMinorAxis","height","heightReference","extrudedHeight","show","fill","material","outline","outlineColor","outlineWidth","numberOfVerticalLines","rotation","stRotation","granularity","shadows","distanceDisplayCondition","zIndex","classificationType","extrudedHeightReference"],Hn$1={onDefinitionChange:"definitionChanged"},zn$1=l({name:"EllipseGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.EllipseGraphics(n);return t.entity.ellipse=o,o},destroy(t,n){n.entity&&(n.entity.ellipse=void 0)},cesiumProps:jn$1,cesiumEventProps:Hn$1}),As$1=zn$1,xn$1=["heightReference","radii","show","fill","innerRadii","material","maximumClock","maximumCone","minimumClock","minimumCone","outline","outlineColor","outlineWidth","subdivisions","stackPartitions","slicePartitions","shadows","distanceDisplayCondition"],Nn$1={onDefinitionChange:"definitionChanged"},qn$1=l({name:"EllipsoidGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.EllipsoidGraphics(n);return t.entity.ellipsoid=o,o},destroy(t,n){n.entity&&(n.entity.ellipsoid=void 0)},cesiumProps:xn$1,cesiumEventProps:Nn$1}),Fs$1=qn$1,Yn$1=["availability","billboard","box","corridor","cylinder","description","ellipse","ellipsoid","entityCollection","label","model","name","orientation","path","plane","parent","point","polygon","polyline","polylineVolume","position","properties","rectangle","show","tileset","viewFrom","wall"],Kn$1=["id"],Jn$1={onDefinitionChange:"definitionChanged"},Zn$1=["selected","tracked"],Xn$1=l({name:"Entity",create(t,n){if(!t.entityCollection)return;const o=new Cesium$1.Entity(n);return t.viewer&&n.selected&&(t.viewer.selectedEntity=o),t.viewer&&n.tracked&&(t.viewer.trackedEntity=o),t.entityCollection.add(o),o},destroy(t,n){n.entityCollection&&n.entityCollection.remove(t)},update(t,n,o,s){s.viewer&&(n.selected!==o.selected&&(n.selected?s.viewer.selectedEntity=t:s.viewer.selectedEntity===t&&(s.viewer.selectedEntity=void 0)),n.tracked!==o.tracked&&(n.tracked?s.viewer.trackedEntity=t:s.viewer.trackedEntity===t&&(s.viewer.trackedEntity=void 0)))},provide(t,n,o){return{entity:t,__$internal:{onUpdate:o==null?void 0:o.onUpdate}}},cesiumProps:Yn$1,cesiumReadonlyProps:Kn$1,cesiumEventProps:Jn$1,otherProps:Zn$1,useCommonEvent:!0}),Is$1=Xn$1,eo$1=["density","enabled","minimumBrightness","screenSpaceErrorFactor","renderable"],io$1=l({name:"Fog",create(t){if(!t.scene)return;const n=new Cesium$1.Fog;return t.scene.fog=n,n},destroy(t,n){n.scene&&!n.scene.isDestroyed()&&(n.scene.fog=new Cesium$1.Fog)},cesiumProps:eo$1,setCesiumPropsAfterCreate:!0}),Vs=io$1,to$1=["clustering","name","show"],no=["clampToGround","sourceUri","credit","markerSize","markerSymbol","markerColor","stroke","strokeWidth","fill","describe"],oo$1={onChange:"changedEvent",onError:"errorEvent",onLoading:"loadingEvent"},ro$1=["onLoad","data"],ci$1=(t,{data:n,onLoad:o,...s})=>{n&&t.load(n,s).then(c=>{o&&o(c)})},so$1=l({name:"GeoJsonDataSource",create(t,n){if(!t.dataSourceCollection)return;const o=new Cesium$1.GeoJsonDataSource(n.name);return n.clustering&&(o.clustering=n.clustering),typeof n.show=="boolean"&&(o.show=n.show),t.dataSourceCollection.add(o),n.data&&ci$1(o,n),o},update(t,n,o){n.data?o.show!==n.show&&(t.show=typeof n.show=="boolean"?n.show:!0):t.show=!1,n.data&&(o.data!==n.data||o.clampToGround!==n.clampToGround||o.sourceUri!==n.sourceUri||o.credit!==n.credit||o.markerSize!==n.markerSize||o.markerSymbol!==n.markerSymbol||o.markerColor!==n.markerColor||o.stroke!==n.stroke||o.strokeWidth!==n.strokeWidth||o.fill!==n.fill)&&ci$1(t,n)},destroy(t,n){n.dataSourceCollection&&!n.dataSourceCollection.isDestroyed()&&n.dataSourceCollection.remove(t)},provide(t){return{dataSource:t}},cesiumProps:to$1,cesiumReadonlyProps:no,cesiumEventProps:oo$1,otherProps:ro$1,useCommonEvent:!0}),Us$1=so$1,ao$1={onImageryLayersUpdate:"imageryLayersUpdatedEvent",onTerrainProviderChange:"terrainProviderChanged",onTileLoadProgress:"tileLoadProgressEvent"},co$1=["atmosphereBrightnessShift","atmosphereHueShift","atmosphereSaturationShift","backFaceCulling","baseColor","clippingPlanes","depthTestAgainstTerrain","enableLighting","lightingFadeInDistance","lightingFadeOutDistance","material","maximumScreenSpaceError","nightFadeInDistance","nightFadeOutDistance","oceanNormalMapUrl","shadows","show","showGroundAtmosphere","showWaterEffect","tileCacheSize","loadingDescendantLimit","preloadAncestors","preloadSiblings","fillHighlightColor","dynamicAtmosphereLighting","dynamicAtmosphereLightingFromSun","showSkirts","cartographicLimitRectangle","translucency","undergroundColor","undergroundColorAlphaByDistance","lambertDiffuseMultiplier","atmosphereLightIntensity","atmosphereRayleighCoefficient","atmosphereMieCoefficient","atmosphereRayleighScaleHeight","atmosphereMieScaleHeight","atmosphereMieAnisotropy","vertexShadowDarkness"],lo$1=["terrainProvider"],uo$1=l({name:"Globe",create:t=>{var n;return(n=t.scene)==null?void 0:n.globe},update:async(t,n)=>{const o=n.terrainProvider;let s;J(o)?s=await o:s=o,t.terrainProvider=s},cesiumProps:co$1,cesiumEventProps:ao$1,otherProps:lo$1,setCesiumPropsAfterCreate:!0}),js$4=uo$1,mo$1=["appearance","classificationType","debugShowBoundingVolume","debugShowShadowVolume","show"],fo$1=["allowPicking","asynchronous","geometryInstances","interleave","releaseGeometryInstances"],ho$2=["onReady"];l({name:"GroundPolylinePrimitive",create(t,n){var o;if(!t.primitiveCollection)return;const s=new Cesium$1.GroundPolylinePrimitive(n);if(n.onReady){const c=()=>{var d,h;s.ready&&((d=n.onReady)==null||d.call(n,s),(h=t.scene)==null||h.postRender.removeEventListener(c))};(o=t.scene)==null||o.postRender.addEventListener(c)}return t.primitiveCollection.add(s),s},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:mo$1,cesiumReadonlyProps:fo$1,otherProps:ho$2,useCommonEvent:!0});const po$1=["appearance","classificationType","debugShowBoundingVolume","debugShowShadowVolume","show"],vo$2=["allowPicking","asynchronous","compressVertices","geometryInstances","interleave","releaseGeometryInstances","vertexCacheOptimize"],go$1=["onReady"];l({name:"GroundPrimitive",create(t,n){var o;if(!t.primitiveCollection)return;const s=new Cesium$1.GroundPrimitive(n);if(n.onReady){const c=()=>{var d,h;s.ready&&((d=n.onReady)==null||d.call(n,s),(h=t.scene)==null||h.postRender.removeEventListener(c))};(o=t.scene)==null||o.postRender.addEventListener(c)}return t.primitiveCollection.add(s),s},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:po$1,cesiumReadonlyProps:vo$2,otherProps:go$1,useCommonEvent:!0});const Po$1=["show","destroyPrimitives","primitiveAdded","primitiveRemoved"];l({name:"GroundPrimitiveCollection",create:t=>{var n;return(n=t.scene)==null?void 0:n.groundPrimitives},provide:t=>({primitiveCollection:t}),cesiumProps:Po$1,setCesiumPropsAfterCreate:!0});const Eo$1=["alpha","brightness","contrast","hue","saturation","gamma","splitDirection","minificationFilter","magnificationFilter","cutoutRectangle","show","nightAlpha","dayAlpha","colorToAlpha","colorToAlphaThreshold","index"],bo$1=["rectangle","maximumAnisotropy","minimumTerrainLevel","maximumTerrainLevel","readyEvent","imageryProvider"],wo$1=l({name:"ImageryLayer",async create(t,n){var o,s,c,d;if(!t.imageryLayerCollection)return;const h=J(n.imageryProvider)?n.imageryProvider:new Promise(P=>queueMicrotask(()=>P(n.imageryProvider))),p=(s=(o=t.__$internal)==null?void 0:o.imageryLayerWaitingList)==null?void 0:s.slice();(c=t.__$internal)!=null&&c.imageryLayerWaitingList&&t.__$internal.imageryLayerWaitingList.push(h),p&&await Promise.all(p.filter(P=>J(P)));const y=await h;if((d=t.__$internal)!=null&&d.imageryLayerWaitingList&&(t.__$internal.imageryLayerWaitingList=t.__$internal.imageryLayerWaitingList.filter(P=>P!==h)),!y)return;const S=new Cesium$1.ImageryLayer(y,n);return t.imageryLayerCollection.add(S,n.index),S},destroy(t,n){n.imageryLayerCollection&&n.imageryLayerCollection.remove(t)},cesiumProps:Eo$1,cesiumReadonlyProps:bo$1}),Ns$1=wo$1,Do$1={onLayerAdd:"layerAdded",onLayerMove:"layerMoved",onLayerRemove:"layerRemoved",onLayerShowOrHide:"layerShownOrHidden"};l({name:"ImageryLayerCollection",create:t=>{var n;return(n=t.globe)==null?void 0:n.imageryLayers},cesiumEventProps:Do$1});const $o$1=["clustering","name","show"],To$1=["canvas","camera","ellipsoid","clampToGround","sourceUri","credit","screenOverlayContainer"],Mo$1={onChange:"changedEvent",onError:"errorEvent",onLoading:"loadingEvent",onRefresh:"refreshEvent",onUnsupportedNode:"unsupportedNodeEvent"},ko$1=["onLoad","data"],li$1=(t,{data:n,onLoad:o,...s})=>{n&&t.load(n,s).then(c=>{o&&o(c)})},Lo$1=l({name:"KmlDataSource",create(t,n){if(!t.scene||!t.dataSourceCollection||!t.scene)return;const o=new Cesium$1.KmlDataSource({camera:n.camera||t.scene.camera,canvas:n.canvas||t.scene.canvas,ellipsoid:n.ellipsoid,credit:n.credit});return n.clustering&&(o.clustering=n.clustering),typeof n.show=="boolean"&&(o.show=n.show),typeof n.name<"u"&&(o.name=n.name),t.dataSourceCollection.add(o),n.data&&li$1(o,n),o},update(t,n,o){n.data?o.show!==n.show&&(t.show=typeof n.show=="boolean"?n.show:!0):t.show=!1,n.data&&(o.data!==n.data||o.clampToGround!==n.clampToGround||o.ellipsoid!==n.ellipsoid||o.sourceUri!==n.sourceUri||o.credit!==n.credit)&&li$1(t,n)},destroy(t,n){n.dataSourceCollection&&!n.dataSourceCollection.isDestroyed()&&n.dataSourceCollection.remove(t)},provide(t){return{dataSource:t}},cesiumProps:$o$1,cesiumReadonlyProps:To$1,cesiumEventProps:Mo$1,otherProps:ko$1,useCommonEvent:!0}),Ys$1=Lo$1,_o$1=["backgroundColor","backgroundPadding","disableDepthTestDistance","distanceDisplayCondition","eyeOffset","fillColor","font","heightReference","horizontalOrigin","id","outlineColor","outlineWidth","pixelOffset","pixelOffsetScaleByDistance","position","scale","scaleByDistance","show","showBackground","style","text","translucencyByDistance","verticalOrigin"];l({name:"Label",create:(t,n)=>{var o;return(o=t.labelCollection)==null?void 0:o.add(n)},destroy(t,n){n.labelCollection&&!n.labelCollection.isDestroyed()&&n.labelCollection.remove(t)},cesiumProps:_o$1,useCommonEvent:!0});const Go$1=["blendOption","debugShowBoundingVolume","modelMatrix","show"];l({name:"LabelCollection",create(t,n){if(!t.scene||!t.primitiveCollection)return;const o=new Cesium$1.LabelCollection({scene:t.scene,modelMatrix:n.modelMatrix,blendOption:n.blendOption,debugShowBoundingVolume:n.debugShowBoundingVolume});return t.primitiveCollection.add(o),o},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},provide(t){return{labelCollection:t}},cesiumProps:Go$1});const Ao$1=["text","font","style","fillColor","outlineColor","outlineWidth","show","showBackground","backgroundColor","backgroundPadding","scale","horizontalOrigin","verticalOrigin","eyeOffset","pixelOffset","translucencyByDistance","pixelOffsetScaleByDistance","scaleByDistance","heightReference","distanceDisplayCondition","disableDepthTestDistance"],Fo$1={onDefinitionChange:"definitionChanged"},Io$1=l({name:"LabelGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.LabelGraphics(n);return t.entity.label=o,o},destroy(t,n){n.entity&&(n.entity.label=void 0)},cesiumProps:Ao$1,cesiumEventProps:Fo$1}),Zs=Io$1,Wo$1=["backFaceCulling","clampAnimations","clippingPlanes","color","colorBlendAmount","colorBlendMode","customShader","debugShowBoundingVolume","debugWireframe","distanceDisplayCondition","featureIdLabel","heightReference","id","imageBasedLighting","instanceFeatureIdLabel","lightColor","maximumScale","minimumPixelSize","modelMatrix","outlineColor","scale","shadows","show","showCreditsOnScreen","showOutline","silhouetteColor","silhouetteSize","splitDirection","style"],Vo$1=["allowPicking","asynchronous","basePath","credit","enableDebugWireframe","gltf","heightReference","incrementallyLoadTextures","scene","releaseGltfJson","cull","opaquePass","upAxis","forwardAxis","content","scene","enableShowOutline","projectTo2D","classificationType","errorEvent","readyEvent","texturesReadyEvent","gltfCallback","enablePick"],Uo$1=["onReady","onError","url"];l({name:"Model",async create(t,{scene:n,url:o,colorBlendMode:s,...c}){var d;if(!t.scene||!t.primitiveCollection||!o)return;const h=o;let p;J(h)?p=await h:p=h;let y;try{y=await Cesium$1.Model.fromGltfAsync({...c,url:p,colorBlendMode:s,scene:n||t.scene})}catch(S){(d=c.onError)==null||d.call(c,S);return}return t.primitiveCollection.add(y),y},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumEventProps:{onReady:"readyEvent"},cesiumProps:Wo$1,cesiumReadonlyProps:Vo$1,otherProps:Uo$1,useCommonEvent:!0});const Ho$1=["uri","show","scale","minimumPixelSize","maximumScale","incrementallyLoadTextures","runAnimations","clampAnimations","nodeTransformations","shadows","heightReference","distanceDisplayCondition","silhouetteColor","silhouetteSize","color","colorBlendMode","colorBlendAmount","clippingPlanes","imageBasedLightingFactor","lightColor","articulations","customShader"],zo$1={onDefinitionChange:"definitionChanged"},xo$1=l({name:"ModelGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.ModelGraphics(n);return t.entity.model=o,o},destroy(t,n){n.entity&&(n.entity.model=void 0)},cesiumProps:Ho$1,cesiumEventProps:zo$1}),Qs$1=xo$1,No$1=["onlySunLighting","show","textureUrl"],qo$1=["ellipsoid"],Yo$1=l({name:"Moon",create(t,n){if(!t.scene)return;const o=new Cesium$1.Moon(n);return t.scene.moon=o,o},destroy(t,n){n.scene&&!n.scene.isDestroyed()&&(n.scene.moon=new Cesium$1.Moon)},cesiumProps:No$1,cesiumReadonlyProps:qo$1}),ea=Yo$1,Ko$1=["show","emitter","modelMatrix","emitterModelMatrix","emissionRate","bursts","loop","startScale","endScale","startColor","endColor","image","imageSize","minimumImageSize","maximumImageSize","speed","minimumSpeed","maximumSpeed","lifetime","particleLife","minimumParticleLife","maximumParticleLife","mass","minimumMass","maximumMass","sizeInMeters"],Jo$1={onComplete:"complete",onUpdate:"updateCallback"};l({name:"ParticleSystem",create(t,n){if(!t.primitiveCollection)return;const o=new Cesium$1.ParticleSystem({...n,updateCallback:n.onUpdate});return t.primitiveCollection.add(o),o},update(t,n,o){n.onUpdate!==o.onUpdate&&(t.updateCallback=n.onUpdate)},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t)},cesiumProps:Ko$1,cesiumEventProps:Jo$1});const Xo$1=["leadTime","trailTime","show","width","material","resolution","distanceDisplayCondition"],Qo$1={onDefinitionChange:"definitionChanged"};l({name:"PathGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.PathGraphics(n);return t.entity.path=o,o},destroy(t,n){n.entity&&(n.entity.path=void 0)},cesiumProps:Xo$1,cesiumEventProps:Qo$1});const ir$1=["plane","dimensions","show","fill","material","outline","outlineColor","outlineWidth","shadows","distanceDisplayCondition"],tr$1={onDefinitionChange:"definitionChanged"},nr$1=l({name:"PlaneGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.PlaneGraphics(n);return t.entity.plane=o,o},destroy(t,n){n.entity&&(n.entity.plane=void 0)},cesiumProps:ir$1,cesiumEventProps:tr$1}),na$1=nr$1,or$1=["color","pixelSize","outlineColor","outlineWidth","show","scaleByDistance","translucencyByDistance","heightReference","distanceDisplayCondition","disableDepthTestDistance"],rr$1={onDefinitionChange:"definitionChanged"},sr$1=l({name:"PointGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.PointGraphics(n);return t.entity.point=o,o},destroy(t,n){n.entity&&(n.entity.point=void 0)},cesiumProps:or$1,cesiumEventProps:rr$1}),oa$1=sr$1,ar$1=["color","disableDepthTestDistance","distanceDisplayCondition","id","outlineColor","outlineWidth","pixelSize","position","scaleByDistance","show","translucencyByDistance"];l({name:"PointPrimitive",create:(t,n)=>{var o;return(o=t.pointPrimitiveCollection)==null?void 0:o.add(n)},destroy(t,n){n.pointPrimitiveCollection&&!n.pointPrimitiveCollection.isDestroyed()&&n.pointPrimitiveCollection.remove(t)},cesiumProps:ar$1,useCommonEvent:!0});const lr$1=["blendOption","debugShowBoundingVolume","modelMatrix","show"];l({name:"PointPrimitveCollection",create(t,n){if(!t.primitiveCollection)return;const o=new Cesium$1.PointPrimitiveCollection(n);return t.primitiveCollection.add(o),o},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},provide(t){return{pointPrimitiveCollection:t}},cesiumProps:lr$1});const dr$1=["arcType","hierarchy","height","heightReference","extrudedHeight","extrudedHeightReference","show","fill","material","outline","outlineColor","outlineWidth","stRotation","granularity","perPositionHeight","closeTop","closeBottom","shadows","distanceDisplayCondition","zIndex","classificationType","textureCoordinates"],mr$1={onDefinitionChange:"definitionChanged"},fr$1=l({name:"PolygonGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.PolygonGraphics(n);return t.entity.polygon=o,o},destroy(t,n){n.entity&&(n.entity.polygon=void 0)},cesiumProps:dr$1,cesiumEventProps:mr$1}),aa$1=fr$1,hr$1=["distanceDisplayCondition","id","loop","material","positions","show","width"];l({name:"Polyline",create:(t,n)=>{var o;return(o=t.polylineCollection)==null?void 0:o.add(n)},destroy(t,n){n.polylineCollection&&!n.polylineCollection.isDestroyed()&&n.polylineCollection.remove(t)},cesiumProps:hr$1,useCommonEvent:!0});const pr$1=["debugShowBoundingVolume","length","modelMatrix","show"];l({name:"PolylineCollection",create(t,n){if(!t.primitiveCollection)return;const o=new Cesium$1.PolylineCollection({modelMatrix:n.modelMatrix,debugShowBoundingVolume:n.debugShowBoundingVolume,length:n.length,scene:t.scene});return t.primitiveCollection.add(o),o},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},provide(t){return{polylineCollection:t}},cesiumProps:pr$1});const gr$1=["arcType","classificationType","positions","clampToGround","width","show","material","depthFailMaterial","granularity","shadows","distanceDisplayCondition","zIndex"],Cr$1={onDefinitionChange:"definitionChanged"},Pr$1=l({name:"PolylineGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.PolylineGraphics(n);return t.entity.polyline=o,o},destroy(t,n){n.entity&&(n.entity.polyline=void 0)},cesiumProps:gr$1,cesiumEventProps:Cr$1}),ua$1=Pr$1,Sr$1=["positions","shape","cornerType","show","fill","material","outline","outlineColor","outlineWidth","granularity","shadows","distanceDisplayCondition"],Er$1={onDefinitionChange:"definitionChanged"};l({name:"PolylineVolumeGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.PolylineVolumeGraphics(n);return t.entity.polylineVolume=o,o},destroy(t,n){n.entity&&(n.entity.polylineVolume=void 0)},cesiumProps:Sr$1,cesiumEventProps:Er$1});const wr$1=["enabled","selected"],Dr$1=["clearColor","forcePowerOfTwo","fragmentShader","name","pixelDatatype","pixelFormat","sampleMode","scissorRectangle","textureScale","uniforms"];l({name:"PostProcessStage",create(t,n){if(!t.scene)return;const o=new Cesium$1.PostProcessStage(n);return typeof n.enabled=="boolean"&&(o.enabled=n.enabled),n.selected&&(o.selected=n.selected),t.scene.postProcessStages.add(o),o},destroy(t,n){n.scene&&!n.scene.isDestroyed()&&n.scene.postProcessStages.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:wr$1,cesiumReadonlyProps:Dr$1}),U$1({name:"BlackAndWhiteStage",props:["gradations"],create:()=>Cesium$1.PostProcessStageLibrary.createBlackAndWhiteStage()}),U$1({name:"BrightnessStage",props:["brightness"],create:()=>Cesium$1.PostProcessStageLibrary.createBrightnessStage()}),U$1({name:"LensFlareStage",props:["dirtTexture","starTexture","intensity","distortion","ghostDispersal","haloWidth","earthRadius"],create:()=>Cesium$1.PostProcessStageLibrary.createLensFlareStage()}),U$1({name:"Fxaa",create:(t,n)=>n.fxaa,props:[]}),U$1({name:"NightVisionStage",props:[],create:()=>Cesium$1.PostProcessStageLibrary.createNightVisionStage()});const Rr$1=["enabled","selected"],$r$1=["inputPreviousStageTexture","name","stages","uniforms"];l({name:"PostProcessStageComposite",create(t,n){if(!t.scene)return;const o=new Cesium$1.PostProcessStageComposite(n);return typeof n.enabled=="boolean"&&(o.enabled=n.enabled),n.selected&&(o.selected=n.selected),t.scene.postProcessStages.add(o),o},destroy(t,n){n.scene&&!n.scene.isDestroyed()&&n.scene.postProcessStages.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:Rr$1,cesiumReadonlyProps:$r$1}),U$1({name:"AmbientOcclusion",create:(t,n)=>n.ambientOcclusion,props:["ambientOcclusionOnly","bias","delta","frustumLength","intensity","lengthCap","sigma","stepSize"],noMount:!0}),U$1({name:"Bloom",create:(t,n)=>n.bloom,props:["brightness","contrast","delta","glowOnly","sigma","stepSize"],noMount:!0}),U$1({name:"BlurStage",props:["delta","sigma","stepSize"],create:()=>Cesium$1.PostProcessStageLibrary.createBlurStage()}),U$1({name:"DepthOfFieldStage",props:["delta","focalDistance","sigma","stepSize"],create:()=>Cesium$1.PostProcessStageLibrary.createDepthOfFieldStage()}),U$1({name:"EdgeDetectionStage",props:["color","length"],create:()=>Cesium$1.PostProcessStageLibrary.createEdgeDetectionStage()}),U$1({name:"SilhouetteStage",props:["color","length"],create:()=>Cesium$1.PostProcessStageLibrary.createSilhouetteStage()});const Tr$1=["appearance","cull","debugShowBoundingVolume","depthFailAppearance","modelMatrix","shadows","show"],Mr$1=["allowPicking","asynchronous","compressVertices","geometryInstances","interleave","releaseGeometryInstances","vertexCacheOptimize"],kr$1=["onReady"],Lr$1=l({name:"Primitive",create(t,n){var o;if(!t.primitiveCollection)return;const s=new Cesium$1.Primitive(n);if(n.onReady){const c=()=>{var d,h;s.ready&&((d=n.onReady)==null||d.call(n,s),(h=t.scene)==null||h.postRender.removeEventListener(c))};(o=t.scene)==null||o.postRender.addEventListener(c)}return t.primitiveCollection.add(s),s},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:Tr$1,cesiumReadonlyProps:Mr$1,otherProps:kr$1,useCommonEvent:!0}),Da$1=Lr$1,_r$1=["classificationType","coordinates","height","heightReference","extrudedHeight","extrudedHeightReference","show","fill","material","outline","outlineColor","outlineWidth","rotation","stRotation","granularity","shadows","distanceDisplayCondition","zIndex"],Or$1={onDefinitionChange:"definitionChanged"};l({name:"RectangleGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.RectangleGraphics(n);return t.entity.rectangle=o,o},destroy(t,n){n.entity&&(n.entity.rectangle=void 0)},cesiumProps:_r$1,cesiumEventProps:Or$1});const Br$1=["backgroundColor","completeMorphOnUserInput","debugCommandFilter","debugShowCommands","debugShowDepthFrustum","debugShowFramesPerSecond","debugShowFrustumPlanes","debugShowFrustums","eyeSeparation","farToNearRatio","focalLength","fog","gamma","globe","highDynamicRange","invertClassification","invertClassificationColor","light","logarithmicDepthBuffer","logarithmicDepthFarToNearRatio","maximumRenderTimeChange","minimumDisableDepthTestDistance","moon","morphTime","nearToFarDistance2D","pickTranslucentDepth","requestRenderMode","rethrowRenderErrors","shadowMap","skyAtmosphere","skyBox","specularEnvironmentMaps","sphericalHarmonicCoefficients","sun","sunBloom","terrainProvider","useDepthPicking","useWebVR","postProcessStages","msaaSamples","splitPosition","debugCommandFilter","verticalExaggeration","verticalExaggerationRelativeHeight","atmosphere"],Ar$1={onMorphComplete:"morphComplete",onMorphStart:"morphStart",onPostRender:"postRender",onPreRender:"preRender",onPreUpdate:"preUpdate",onPostUpdate:"postUpdate",onRenderError:"renderError",onTerrainProviderChange:"terrainProviderChanged"},Fr$1=["mode","morphDuration"],ui=(t,n,o)=>{switch(n){case Cesium$1.SceneMode.SCENE2D:t.morphTo2D(o);break;case Cesium$1.SceneMode.COLUMBUS_VIEW:t.morphToColumbusView(o);break;case Cesium$1.SceneMode.SCENE3D:t.morphTo3D(o);break}},Ir$1=l({name:"Scene",create(t,n){return t.scene&&n.mode&&ui(t.scene,n.mode,n.morphDuration),t.scene},update(t,n,o){n.mode!==o.mode&&n.mode&&ui(t,n.mode,n.morphDuration)},cesiumProps:Br$1,cesiumEventProps:Ar$1,otherProps:Fr$1,setCesiumPropsAfterCreate:!0}),$a$1=Ir$1,Wr$1=["bounceAnimationTime","enableCollisionDetection","enableInputs","enableLook","enableRotate","enableTilt","enableTranslate","enableZoom","inertiaSpin","inertiaTranslate","inertiaZoom","lookEventTypes","maximumMovementRatio","maximumZoomDistance","minimumCollisionTerrainHeight","minimumPickingTerrainHeight","minimumTrackBallHeight","minimumZoomDistance","rotateEventTypes","tiltEventTypes","translateEventTypes","zoomEventTypes","minimumPickingTerrainDistanceWithInertia"],Vr$1=l({name:"ScreenSpaceCameraController",create:t=>{var n;return(n=t.scene)==null?void 0:n.screenSpaceCameraController},cesiumProps:Wr$1,setCesiumPropsAfterCreate:!0}),Ta$1=Vr$1,Ur$1=({action:t,modifier:n,type:o})=>{const s=$e$1();return React.useEffect(()=>{if(!(!s.screenSpaceEventHandler||s.screenSpaceEventHandler.isDestroyed())){if(t)return s.screenSpaceEventHandler.setInputAction(t,o,n),()=>{!s.screenSpaceEventHandler||s.screenSpaceEventHandler.isDestroyed()||s.screenSpaceEventHandler.removeInputAction(o,n)};s.screenSpaceEventHandler.removeInputAction(o,n)}},[t,s.screenSpaceEventHandler,n,o]),null},Ma$1=Ur$1,jr$1=l({name:"ScreenSpaceEventHandler",create(t,n){var o;return n.useDefault?(o=t.cesiumWidget)==null?void 0:o.screenSpaceEventHandler:t.scene?new Cesium$1.ScreenSpaceEventHandler(t.scene.canvas):void 0},destroy(t){t.isDestroyed()||t.destroy()},provide(t){return{screenSpaceEventHandler:t}}}),ka$1=jr$1,Hr$1=["darkness","fadingEnabled","maximumDistance","enabled","normalOffset","softShadows","size"];l({name:"ShadowMap",create:t=>{var n;return(n=t.scene)==null?void 0:n.shadowMap},cesiumProps:Hr$1});const xr$1=["brightnessShift","hueShift","saturationShift","show","perFragmentAtmosphere","atmosphereLightIntensity","atmosphereRayleighCoefficient","atmosphereMieCoefficient","atmosphereRayleighScaleHeight","atmosphereMieScaleHeight","atmosphereMieAnisotropy"],Nr$1=l({name:"SkyAtmosphere",create:t=>{var n;return(n=t.scene)==null?void 0:n.skyAtmosphere},cesiumProps:xr$1,setCesiumPropsAfterCreate:!0}),_a$2=Nr$1,qr$1=["sources","show"],Yr$1=l({name:"SkyBox",create:t=>{var n;return(n=t.scene)==null?void 0:n.skyBox},cesiumProps:qr$1,setCesiumPropsAfterCreate:!0}),Oa$1=Yr$1,Kr$1=["glowFactor","show"],Jr$1=l({name:"Sun",create(t){if(!t.scene)return;const n=new Cesium$1.Sun;return t.scene.sun=n,n},destroy(t,n){n.scene&&!n.scene.isDestroyed()&&(n.scene.sun=new Cesium$1.Sun)},cesiumProps:Kr$1,setCesiumPropsAfterCreate:!0}),Ga$1=Jr$1,Zr$1=["clippingPlanes","maximumMemoryUsage","modelMatrix","shadows","show","style","intervals"],Xr$1=["clock","shading"],Qr$1=["onReady"],es$1={onFrameChange:"frameChanged"};l({name:"TimeDynamicPointCloud",create(t,n){var o;if(!t.cesiumWidget||!t.primitiveCollection||!((o=t.cesiumWidget)!=null&&o.clock))return;const s=new Cesium$1.TimeDynamicPointCloud({...n,clock:n.clock??t.cesiumWidget.clock});if(n.onReady){const c=()=>{var d;(d=n.onReady)==null||d.call(n,s),s.frameChanged.removeEventListener(c)};s.frameChanged.addEventListener(c)}return t.primitiveCollection.add(s),s},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:Zr$1,cesiumReadonlyProps:Xr$1,cesiumEventProps:es$1,otherProps:Qr$1,useCommonEvent:!0});const ts$1=["terrainShadows","clockTrackedDataSource","targetFrameRate","useDefaultRenderLoop","resolutionScale","allowDataSourcesToSuspendAnimation","trackedEntity","selectedEntity","shadows","useBrowserRecommendedResolution","creditDisplay"],ns$1=["baseLayer","animation","baseLayerPicker","fullscreenButton","vrButton","geocoder","homeButton","infoBox","sceneModePicker","selectionIndicator","timeline","navigationHelpButton","navigationInstructionsInitiallyVisible","scene3DOnly","shouldAnimate","clockViewModel","selectedImageryProviderViewModel","imageryProviderViewModels","selectedTerrainProviderViewModel","terrainProviderViewModels","skyBox","skyAtmosphere","fullscreenElement","showRenderLoopErrors","automaticallyTrackDataSourceClocks","contextOptions","sceneMode","mapProjection","globe","orderIndependentTranslucency","creditContainer","creditViewport","dataSources","mapMode2D","projectionPicker","requestRenderMode","maximumRenderTimeChange","depthPlaneEllipsoidOffset","msaaSamples","blurActiveElementOnCanvasFocus","terrain"],os$1={onSelectedEntityChange:"selectedEntityChanged",onTrackedEntityChange:"trackedEntityChanged"},rs$1=["className","id","style","full","containerProps","extend","terrainProvider"],ss$1=l({name:"Viewer",async create(t,{baseLayer:n,terrainProvider:o,...s},c){if(!c)return;let d;J(o)?d=await o:d=o;const h=new Cesium$1.Viewer(c,{...s,terrainProvider:d,baseLayer:n===!1?void 0:n});if(!h)return;n===!1&&h.imageryLayers.removeAll(),h&&s.extend&&(Array.isArray(s.extend)?s.extend.forEach(y=>{h.extend(y,{})}):h.extend(s.extend,{}));const p=new De$1(h.scene);return[h,p]},destroy(t,n,o,s){s&&!s.isDestroyed()&&s.destroy(),t.isDestroyed()||t.destroy()},provide(t,n,o,s){return{viewer:t,cesiumWidget:t.cesiumWidget,dataSourceCollection:t.dataSources,entityCollection:t.entities,scene:t.scene,camera:t.scene.camera,imageryLayerCollection:t.scene.globe.imageryLayers,primitiveCollection:t.scene.primitives,globe:t.scene.globe,__$internal:{onUpdate:o==null?void 0:o.onUpdate,imageryLayerWaitingList:[]},[ce$1]:s}},containerProps:({id:t,className:n,style:o,full:s,containerProps:c})=>({className:n,id:t,style:{...s?{position:"absolute",bottom:"0",left:"0",right:"0",top:"0"}:{},...o},...c}),cesiumProps:ts$1,cesiumReadonlyProps:ns$1,cesiumEventProps:os$1,otherProps:rs$1,renderContainer:!0,useCommonEvent:!0,useRootEvent:!0}),Aa$1=ss$1,as$1=["positions","maximumHeights","minimumHeights","show","fill","material","outline","outlineColor","outlineWidth","granularity","shadows","distanceDisplayCondition"],cs$1={onDefinitionChange:"definitionChanged"};l({name:"WallGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.WallGraphics(n);return t.entity.wall=o,o},destroy(t,n){n.entity&&(n.entity.wall=void 0)},cesiumProps:as$1,cesiumEventProps:cs$1});const DEFAULT_COLOR="#00bebe",SpatialIdSpace=React.memo(({space:t})=>{const n=React.useMemo(()=>({rectangle:{coordinates:Cesium$1.Rectangle.fromDegrees(...t.wsen),height:t.type==="coordinate"?void 0:t.height,heightReference:t.type==="coordinate"?void 0:Cesium$1.HeightReference.NONE,extrudedHeight:t.type==="coordinate"?void 0:t.extrudedHeight,clampToGround:t.type==="coordinate",fill:!0,outline:t.type!=="coordinate",outlineColor:Cesium$1.Color.fromCssColorString(t.color??DEFAULT_COLOR).withAlpha(t.type==="floor"?.5:1),material:Cesium$1.Color.fromCssColorString(t.color??DEFAULT_COLOR).withAlpha(t.type==="floor"?.05:.2),classificationType:t.type==="coordinate"?Cesium$1.ClassificationType.BOTH:Cesium$1.ClassificationType.TERRAIN}}),[t]);return jsxRuntimeExports.jsx(Is$1,{id:t.id,...n})});SpatialIdSpace.displayName="SpatialIdSpace";function isZFXYTile(t){return"z"in t&&"f"in t&&"x"in t&&"y"in t}const ZFXY_1M_ZOOM_BASE=25,ZFXY_ROOT_TILE={f:0,x:0,y:0,z:0},rad2deg=180/Math.PI;function getParent(t,n=1){const{f:o,x:s,y:c,z:d}=t;if(n<=0)throw new Error("steps must be greater than 0");if(n>d)throw new Error(`Getting parent tile of ${t}, ${n} steps is not possible because it would go beyond the root tile (z=0)`);return{f:o>>n,x:s>>n,y:c>>n,z:d-n}}function getChildren(t=ZFXY_ROOT_TILE){const{f:n,x:o,y:s,z:c}=t;return[{f:n*2,x:o*2,y:s*2,z:c+1},{f:n*2,x:o*2+1,y:s*2,z:c+1},{f:n*2,x:o*2,y:s*2+1,z:c+1},{f:n*2,x:o*2+1,y:s*2+1,z:c+1},{f:n*2+1,x:o*2,y:s*2,z:c+1},{f:n*2+1,x:o*2+1,y:s*2,z:c+1},{f:n*2+1,x:o*2,y:s*2+1,z:c+1},{f:n*2+1,x:o*2+1,y:s*2+1,z:c+1}]}function getSurrounding(t=ZFXY_ROOT_TILE){const{f:n,x:o,y:s,z:c}=t;return[zfxyWraparound({f:n,x:o,y:s,z:c}),zfxyWraparound({f:n,x:o+1,y:s,z:c}),zfxyWraparound({f:n,x:o,y:s+1,z:c}),zfxyWraparound({f:n,x:o+1,y:s+1,z:c}),zfxyWraparound({f:n,x:o-1,y:s,z:c}),zfxyWraparound({f:n,x:o,y:s-1,z:c}),zfxyWraparound({f:n,x:o-1,y:s-1,z:c}),zfxyWraparound({f:n,x:o+1,y:s-1,z:c}),zfxyWraparound({f:n,x:o-1,y:s+1,z:c})]}function parseZFXYString(t){const n=t.match(/^\/?(\d+)\/(?:(\d+)\/)?(\d+)\/(\d+)$/);if(n)return{z:parseInt(n[1],10),f:parseInt(n[2]||"0",10),x:parseInt(n[3],10),y:parseInt(n[4],10)}}function getLngLat(t){const n=Math.PI-2*Math.PI*t.y/Math.pow(2,t.z);return{lng:t.x/Math.pow(2,t.z)*360-180,lat:rad2deg*Math.atan(.5*(Math.exp(n)-Math.exp(-n)))}}function getCenterLngLat(t){const n=t.x*2+1,o=t.y*2+1,s=t.z+1;return getLngLat({x:n,y:o,z:s,f:0})}function getCenterLngLatAlt(t){return{...getCenterLngLat(t),alt:getFloor(t)+2**ZFXY_1M_ZOOM_BASE/2**(t.z+1)}}function getBBox(t){const n=getLngLat(t),o=getLngLat({...t,y:t.y+1,x:t.x+1});return[n,o]}function getFloor(t){return t.f*2**ZFXY_1M_ZOOM_BASE/2**t.z}function calculateZFXY(t){const n=typeof t.alt<"u"?t.alt:0;if(n<=-33554432||n>=2**ZFXY_1M_ZOOM_BASE)throw new Error(`ZFXY only supports altitude between -2^${ZFXY_1M_ZOOM_BASE} and +2^${ZFXY_1M_ZOOM_BASE}.`);const o=Math.floor(2**t.zoom*n/2**ZFXY_1M_ZOOM_BASE),s=Math.PI/180,c=Math.sin(t.lat*s),d=2**t.zoom;let h=d*(t.lng/360+.5);const p=d*(.5-.25*Math.log((1+c)/(1-c))/Math.PI);return h=h%d,h<0&&(h=h+d),{f:o,x:Math.floor(h),y:Math.floor(p),z:t.zoom}}function zfxyWraparound(t){const{z:n,f:o,x:s,y:c}=t;return{z:n,f:Math.max(Math.min(o,2**n),-(2**n)),x:s<0?s+2**n:s%2**n,y:c<0?c+2**n:c%2**n}}function parseZFXYTilehash(t){let n=!1;t[0]==="-"&&(n=!0,t=t.substring(1));let o=getChildren(),s;for(const c of t)s={...o[parseInt(c,10)-1]},o=getChildren(s);return n&&(s.f=-s.f),s}function generateTilehash(t){let{f:n,x:o,y:s,z:c}=t;const d=n;let h="";for(;c>0;){const p={f:Math.abs(n),x:o,y:s,z:c},y=getParent(p);h=(getChildren(y).findIndex(L=>L.f===Math.abs(n)&&L.x===o&&L.y===s&&L.z===c)+1).toString()+h,n=y.f,o=y.x,s=y.y,c=y.z}return(d<0?"-":"")+h}function feature(t,n,o){o===void 0&&(o={});var s={type:"Feature"};return(o.id===0||o.id)&&(s.id=o.id),o.bbox&&(s.bbox=o.bbox),s.properties=n||{},s.geometry=t,s}function point(t,n,o){if(o===void 0&&(o={}),!t)throw new Error("coordinates is required");if(!Array.isArray(t))throw new Error("coordinates must be an Array");if(t.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!isNumber$1(t[0])||!isNumber$1(t[1]))throw new Error("coordinates must contain numbers");var s={type:"Point",coordinates:t};return feature(s,n,o)}function lineString(t,n,o){if(o===void 0&&(o={}),t.length<2)throw new Error("coordinates must be an array of two or more positions");var s={type:"LineString",coordinates:t};return feature(s,n,o)}function featureCollection$1(t,n){n===void 0&&(n={});var o={type:"FeatureCollection"};return n.id&&(o.id=n.id),n.bbox&&(o.bbox=n.bbox),o.features=t,o}function multiLineString(t,n,o){o===void 0&&(o={});var s={type:"MultiLineString",coordinates:t};return feature(s,n,o)}function isNumber$1(t){return!isNaN(t)&&t!==null&&!Array.isArray(t)}function coordEach$1(t,n,o){if(t!==null)for(var s,c,d,h,p,y,S,P=0,L=0,F,N=t.type,z=N==="FeatureCollection",W=N==="Feature",lt=z?t.features.length:1,Pe=0;Pe<lt;Pe++){S=z?t.features[Pe].geometry:W?t.geometry:t,F=S?S.type==="GeometryCollection":!1,p=F?S.geometries.length:1;for(var se=0;se<p;se++){var mt=0,kt=0;if(h=F?S.geometries[se]:S,h!==null){y=h.coordinates;var mn=h.type;switch(P=0,mn){case null:break;case"Point":if(n(y,L,Pe,mt,kt)===!1)return!1;L++,mt++;break;case"LineString":case"MultiPoint":for(s=0;s<y.length;s++){if(n(y[s],L,Pe,mt,kt)===!1)return!1;L++,mn==="MultiPoint"&&mt++}mn==="LineString"&&mt++;break;case"Polygon":case"MultiLineString":for(s=0;s<y.length;s++){for(c=0;c<y[s].length-P;c++){if(n(y[s][c],L,Pe,mt,kt)===!1)return!1;L++}mn==="MultiLineString"&&mt++,mn==="Polygon"&&kt++}mn==="Polygon"&&mt++;break;case"MultiPolygon":for(s=0;s<y.length;s++){for(kt=0,c=0;c<y[s].length;c++){for(d=0;d<y[s][c].length-P;d++){if(n(y[s][c][d],L,Pe,mt,kt)===!1)return!1;L++}kt++}mt++}break;case"GeometryCollection":for(s=0;s<h.geometries.length;s++)if(coordEach$1(h.geometries[s],n)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function featureEach$2(t,n){if(t.type==="Feature")n(t,0);else if(t.type==="FeatureCollection")for(var o=0;o<t.features.length&&n(t.features[o],o)!==!1;o++);}function geomEach$1(t,n){var o,s,c,d,h,p,y,S,P,L,F=0,N=t.type==="FeatureCollection",z=t.type==="Feature",W=N?t.features.length:1;for(o=0;o<W;o++){for(p=N?t.features[o].geometry:z?t.geometry:t,S=N?t.features[o].properties:z?t.properties:{},P=N?t.features[o].bbox:z?t.bbox:void 0,L=N?t.features[o].id:z?t.id:void 0,y=p?p.type==="GeometryCollection":!1,h=y?p.geometries.length:1,c=0;c<h;c++){if(d=y?p.geometries[c]:p,d===null){if(n(null,F,S,P,L)===!1)return!1;continue}switch(d.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(n(d,F,S,P,L)===!1)return!1;break}case"GeometryCollection":{for(s=0;s<d.geometries.length;s++)if(n(d.geometries[s],F,S,P,L)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}F++}}function flattenEach$1(t,n){geomEach$1(t,function(o,s,c,d,h){var p=o===null?null:o.type;switch(p){case null:case"Point":case"LineString":case"Polygon":return n(feature(o,c,{bbox:d,id:h}),s,0)===!1?!1:void 0}var y;switch(p){case"MultiPoint":y="Point";break;case"MultiLineString":y="LineString";break;case"MultiPolygon":y="Polygon";break}for(var S=0;S<o.coordinates.length;S++){var P=o.coordinates[S],L={type:y,coordinates:P};if(n(feature(L,c),s,S)===!1)return!1}})}function bbox$2(t){var n=[1/0,1/0,-1/0,-1/0];return coordEach$1(t,function(o){n[0]>o[0]&&(n[0]=o[0]),n[1]>o[1]&&(n[1]=o[1]),n[2]<o[0]&&(n[2]=o[0]),n[3]<o[1]&&(n[3]=o[1])}),n}bbox$2.default=bbox$2;function getCoord(t){if(!t)throw new Error("coord is required");if(!Array.isArray(t)){if(t.type==="Feature"&&t.geometry!==null&&t.geometry.type==="Point")return t.geometry.coordinates;if(t.type==="Point")return t.coordinates}if(Array.isArray(t)&&t.length>=2&&!Array.isArray(t[0])&&!Array.isArray(t[1]))return t;throw new Error("coord must be GeoJSON Point or an Array of numbers")}function getCoords(t){if(Array.isArray(t))return t;if(t.type==="Feature"){if(t.geometry!==null)return t.geometry.coordinates}else if(t.coordinates)return t.coordinates;throw new Error("coords must be GeoJSON Feature, Geometry Object or an Array")}function getGeom(t){return t.type==="Feature"?t.geometry:t}function booleanPointInPolygon$1(t,n,o){if(o===void 0&&(o={}),!t)throw new Error("point is required");if(!n)throw new Error("polygon is required");var s=getCoord(t),c=getGeom(n),d=c.type,h=n.bbox,p=c.coordinates;if(h&&inBBox$1(s,h)===!1)return!1;d==="Polygon"&&(p=[p]);for(var y=!1,S=0;S<p.length&&!y;S++)if(inRing$1(s,p[S][0],o.ignoreBoundary)){for(var P=!1,L=1;L<p[S].length&&!P;)inRing$1(s,p[S][L],!o.ignoreBoundary)&&(P=!0),L++;P||(y=!0)}return y}function inRing$1(t,n,o){var s=!1;n[0][0]===n[n.length-1][0]&&n[0][1]===n[n.length-1][1]&&(n=n.slice(0,n.length-1));for(var c=0,d=n.length-1;c<n.length;d=c++){var h=n[c][0],p=n[c][1],y=n[d][0],S=n[d][1],P=t[1]*(h-y)+p*(y-t[0])+S*(t[0]-h)===0&&(h-t[0])*(y-t[0])<=0&&(p-t[1])*(S-t[1])<=0;if(P)return!o;var L=p>t[1]!=S>t[1]&&t[0]<(y-h)*(t[1]-p)/(S-p)+h;L&&(s=!s)}return s}function inBBox$1(t,n){return n[0]<=t[0]&&n[1]<=t[1]&&n[2]>=t[0]&&n[3]>=t[1]}function lineSegment(t){if(!t)throw new Error("geojson is required");var n=[];return flattenEach$1(t,function(o){lineSegmentFeature(o,n)}),featureCollection$1(n)}function lineSegmentFeature(t,n){var o=[],s=t.geometry;if(s!==null){switch(s.type){case"Polygon":o=getCoords(s);break;case"LineString":o=[getCoords(s)]}o.forEach(function(c){var d=createSegments(c,t.properties);d.forEach(function(h){h.id=n.length,n.push(h)})})}}function createSegments(t,n){var o=[];return t.reduce(function(s,c){var d=lineString([s,c],n);return d.bbox=bbox$1(s,c),o.push(d),c}),o}function bbox$1(t,n){var o=t[0],s=t[1],c=n[0],d=n[1],h=o<c?o:c,p=s<d?s:d,y=o>c?o:c,S=s>d?s:d;return[h,p,y,S]}var geojsonRbush$1={exports:{}};function quickselect$3(t,n,o,s,c){quickselectStep(t,n,o||0,s||t.length-1,c||defaultCompare)}function quickselectStep(t,n,o,s,c){for(;s>o;){if(s-o>600){var d=s-o+1,h=n-o+1,p=Math.log(d),y=.5*Math.exp(2*p/3),S=.5*Math.sqrt(p*y*(d-y)/d)*(h-d/2<0?-1:1),P=Math.max(o,Math.floor(n-h*y/d+S)),L=Math.min(s,Math.floor(n+(d-h)*y/d+S));quickselectStep(t,n,P,L,c)}var F=t[n],N=o,z=s;for(swap$3(t,o,n),c(t[s],F)>0&&swap$3(t,o,s);N<z;){for(swap$3(t,N,z),N++,z--;c(t[N],F)<0;)N++;for(;c(t[z],F)>0;)z--}c(t[o],F)===0?swap$3(t,o,z):(z++,swap$3(t,z,s)),z<=n&&(o=z+1),n<=z&&(s=z-1)}}function swap$3(t,n,o){var s=t[n];t[n]=t[o],t[o]=s}function defaultCompare(t,n){return t<n?-1:t>n?1:0}class RBush{constructor(n=9){this._maxEntries=Math.max(4,n),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),this.clear()}all(){return this._all(this.data,[])}search(n){let o=this.data;const s=[];if(!intersects$1(n,o))return s;const c=this.toBBox,d=[];for(;o;){for(let h=0;h<o.children.length;h++){const p=o.children[h],y=o.leaf?c(p):p;intersects$1(n,y)&&(o.leaf?s.push(p):contains$1(n,y)?this._all(p,s):d.push(p))}o=d.pop()}return s}collides(n){let o=this.data;if(!intersects$1(n,o))return!1;const s=[];for(;o;){for(let c=0;c<o.children.length;c++){const d=o.children[c],h=o.leaf?this.toBBox(d):d;if(intersects$1(n,h)){if(o.leaf||contains$1(n,h))return!0;s.push(d)}}o=s.pop()}return!1}load(n){if(!(n&&n.length))return this;if(n.length<this._minEntries){for(let s=0;s<n.length;s++)this.insert(n[s]);return this}let o=this._build(n.slice(),0,n.length-1,0);if(!this.data.children.length)this.data=o;else if(this.data.height===o.height)this._splitRoot(this.data,o);else{if(this.data.height<o.height){const s=this.data;this.data=o,o=s}this._insert(o,this.data.height-o.height-1,!0)}return this}insert(n){return n&&this._insert(n,this.data.height-1),this}clear(){return this.data=createNode$1([]),this}remove(n,o){if(!n)return this;let s=this.data;const c=this.toBBox(n),d=[],h=[];let p,y,S;for(;s||d.length;){if(s||(s=d.pop(),y=d[d.length-1],p=h.pop(),S=!0),s.leaf){const P=findItem$1(n,s.children,o);if(P!==-1)return s.children.splice(P,1),d.push(s),this._condense(d),this}!S&&!s.leaf&&contains$1(s,c)?(d.push(s),h.push(p),p=0,y=s,s=s.children[0]):y?(p++,s=y.children[p],S=!1):s=null}return this}toBBox(n){return n}compareMinX(n,o){return n.minX-o.minX}compareMinY(n,o){return n.minY-o.minY}toJSON(){return this.data}fromJSON(n){return this.data=n,this}_all(n,o){const s=[];for(;n;)n.leaf?o.push(...n.children):s.push(...n.children),n=s.pop();return o}_build(n,o,s,c){const d=s-o+1;let h=this._maxEntries,p;if(d<=h)return p=createNode$1(n.slice(o,s+1)),calcBBox$1(p,this.toBBox),p;c||(c=Math.ceil(Math.log(d)/Math.log(h)),h=Math.ceil(d/Math.pow(h,c-1))),p=createNode$1([]),p.leaf=!1,p.height=c;const y=Math.ceil(d/h),S=y*Math.ceil(Math.sqrt(h));multiSelect$1(n,o,s,S,this.compareMinX);for(let P=o;P<=s;P+=S){const L=Math.min(P+S-1,s);multiSelect$1(n,P,L,y,this.compareMinY);for(let F=P;F<=L;F+=y){const N=Math.min(F+y-1,L);p.children.push(this._build(n,F,N,c-1))}}return calcBBox$1(p,this.toBBox),p}_chooseSubtree(n,o,s,c){for(;c.push(o),!(o.leaf||c.length-1===s);){let d=1/0,h=1/0,p;for(let y=0;y<o.children.length;y++){const S=o.children[y],P=bboxArea$1(S),L=enlargedArea$1(n,S)-P;L<h?(h=L,d=P<d?P:d,p=S):L===h&&P<d&&(d=P,p=S)}o=p||o.children[0]}return o}_insert(n,o,s){const c=s?n:this.toBBox(n),d=[],h=this._chooseSubtree(c,this.data,o,d);for(h.children.push(n),extend$2(h,c);o>=0&&d[o].children.length>this._maxEntries;)this._split(d,o),o--;this._adjustParentBBoxes(c,d,o)}_split(n,o){const s=n[o],c=s.children.length,d=this._minEntries;this._chooseSplitAxis(s,d,c);const h=this._chooseSplitIndex(s,d,c),p=createNode$1(s.children.splice(h,s.children.length-h));p.height=s.height,p.leaf=s.leaf,calcBBox$1(s,this.toBBox),calcBBox$1(p,this.toBBox),o?n[o-1].children.push(p):this._splitRoot(s,p)}_splitRoot(n,o){this.data=createNode$1([n,o]),this.data.height=n.height+1,this.data.leaf=!1,calcBBox$1(this.data,this.toBBox)}_chooseSplitIndex(n,o,s){let c,d=1/0,h=1/0;for(let p=o;p<=s-o;p++){const y=distBBox$1(n,0,p,this.toBBox),S=distBBox$1(n,p,s,this.toBBox),P=intersectionArea$1(y,S),L=bboxArea$1(y)+bboxArea$1(S);P<d?(d=P,c=p,h=L<h?L:h):P===d&&L<h&&(h=L,c=p)}return c||s-o}_chooseSplitAxis(n,o,s){const c=n.leaf?this.compareMinX:compareNodeMinX$1,d=n.leaf?this.compareMinY:compareNodeMinY$1,h=this._allDistMargin(n,o,s,c),p=this._allDistMargin(n,o,s,d);h<p&&n.children.sort(c)}_allDistMargin(n,o,s,c){n.children.sort(c);const d=this.toBBox,h=distBBox$1(n,0,o,d),p=distBBox$1(n,s-o,s,d);let y=bboxMargin$1(h)+bboxMargin$1(p);for(let S=o;S<s-o;S++){const P=n.children[S];extend$2(h,n.leaf?d(P):P),y+=bboxMargin$1(h)}for(let S=s-o-1;S>=o;S--){const P=n.children[S];extend$2(p,n.leaf?d(P):P),y+=bboxMargin$1(p)}return y}_adjustParentBBoxes(n,o,s){for(let c=s;c>=0;c--)extend$2(o[c],n)}_condense(n){for(let o=n.length-1,s;o>=0;o--)n[o].children.length===0?o>0?(s=n[o-1].children,s.splice(s.indexOf(n[o]),1)):this.clear():calcBBox$1(n[o],this.toBBox)}}function findItem$1(t,n,o){if(!o)return n.indexOf(t);for(let s=0;s<n.length;s++)if(o(t,n[s]))return s;return-1}function calcBBox$1(t,n){distBBox$1(t,0,t.children.length,n,t)}function distBBox$1(t,n,o,s,c){c||(c=createNode$1(null)),c.minX=1/0,c.minY=1/0,c.maxX=-1/0,c.maxY=-1/0;for(let d=n;d<o;d++){const h=t.children[d];extend$2(c,t.leaf?s(h):h)}return c}function extend$2(t,n){return t.minX=Math.min(t.minX,n.minX),t.minY=Math.min(t.minY,n.minY),t.maxX=Math.max(t.maxX,n.maxX),t.maxY=Math.max(t.maxY,n.maxY),t}function compareNodeMinX$1(t,n){return t.minX-n.minX}function compareNodeMinY$1(t,n){return t.minY-n.minY}function bboxArea$1(t){return(t.maxX-t.minX)*(t.maxY-t.minY)}function bboxMargin$1(t){return t.maxX-t.minX+(t.maxY-t.minY)}function enlargedArea$1(t,n){return(Math.max(n.maxX,t.maxX)-Math.min(n.minX,t.minX))*(Math.max(n.maxY,t.maxY)-Math.min(n.minY,t.minY))}function intersectionArea$1(t,n){const o=Math.max(t.minX,n.minX),s=Math.max(t.minY,n.minY),c=Math.min(t.maxX,n.maxX),d=Math.min(t.maxY,n.maxY);return Math.max(0,c-o)*Math.max(0,d-s)}function contains$1(t,n){return t.minX<=n.minX&&t.minY<=n.minY&&n.maxX<=t.maxX&&n.maxY<=t.maxY}function intersects$1(t,n){return n.minX<=t.maxX&&n.minY<=t.maxY&&n.maxX>=t.minX&&n.maxY>=t.minY}function createNode$1(t){return{children:t,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function multiSelect$1(t,n,o,s,c){const d=[n,o];for(;d.length;){if(o=d.pop(),n=d.pop(),o-n<=s)continue;const h=n+Math.ceil((o-n)/s/2)*s;quickselect$3(t,h,n,o,c),d.push(n,h,h,o)}}var js$2={};(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.earthRadius=63710088e-1,t.factors={centimeters:t.earthRadius*100,centimetres:t.earthRadius*100,degrees:t.earthRadius/111325,feet:t.earthRadius*3.28084,inches:t.earthRadius*39.37,kilometers:t.earthRadius/1e3,kilometres:t.earthRadius/1e3,meters:t.earthRadius,metres:t.earthRadius,miles:t.earthRadius/1609.344,millimeters:t.earthRadius*1e3,millimetres:t.earthRadius*1e3,nauticalmiles:t.earthRadius/1852,radians:1,yards:t.earthRadius*1.0936},t.unitsFactors={centimeters:100,centimetres:100,degrees:1/111325,feet:3.28084,inches:39.37,kilometers:1/1e3,kilometres:1/1e3,meters:1,metres:1,miles:1/1609.344,millimeters:1e3,millimetres:1e3,nauticalmiles:1/1852,radians:1/t.earthRadius,yards:1.0936133},t.areaFactors={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,millimeters:1e6,millimetres:1e6,yards:1.195990046};function n(Ra,ma,yt){yt===void 0&&(yt={});var nt={type:"Feature"};return(yt.id===0||yt.id)&&(nt.id=yt.id),yt.bbox&&(nt.bbox=yt.bbox),nt.properties=ma||{},nt.geometry=Ra,nt}t.feature=n;function o(Ra,ma,yt){switch(Ra){case"Point":return s(ma).geometry;case"LineString":return p(ma).geometry;case"Polygon":return d(ma).geometry;case"MultiPoint":return L(ma).geometry;case"MultiLineString":return P(ma).geometry;case"MultiPolygon":return F(ma).geometry;default:throw new Error(Ra+" is invalid")}}t.geometry=o;function s(Ra,ma,yt){if(yt===void 0&&(yt={}),!Ra)throw new Error("coordinates is required");if(!Array.isArray(Ra))throw new Error("coordinates must be an Array");if(Ra.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!zi(Ra[0])||!zi(Ra[1]))throw new Error("coordinates must contain numbers");var nt={type:"Point",coordinates:Ra};return n(nt,ma,yt)}t.point=s;function c(Ra,ma,yt){return yt===void 0&&(yt={}),S(Ra.map(function(nt){return s(nt,ma)}),yt)}t.points=c;function d(Ra,ma,yt){yt===void 0&&(yt={});for(var nt=0,_i=Ra;nt<_i.length;nt++){var ba=_i[nt];if(ba.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(var Sc=0;Sc<ba[ba.length-1].length;Sc++)if(ba[ba.length-1][Sc]!==ba[0][Sc])throw new Error("First and last Position are not equivalent.")}var ms={type:"Polygon",coordinates:Ra};return n(ms,ma,yt)}t.polygon=d;function h(Ra,ma,yt){return yt===void 0&&(yt={}),S(Ra.map(function(nt){return d(nt,ma)}),yt)}t.polygons=h;function p(Ra,ma,yt){if(yt===void 0&&(yt={}),Ra.length<2)throw new Error("coordinates must be an array of two or more positions");var nt={type:"LineString",coordinates:Ra};return n(nt,ma,yt)}t.lineString=p;function y(Ra,ma,yt){return yt===void 0&&(yt={}),S(Ra.map(function(nt){return p(nt,ma)}),yt)}t.lineStrings=y;function S(Ra,ma){ma===void 0&&(ma={});var yt={type:"FeatureCollection"};return ma.id&&(yt.id=ma.id),ma.bbox&&(yt.bbox=ma.bbox),yt.features=Ra,yt}t.featureCollection=S;function P(Ra,ma,yt){yt===void 0&&(yt={});var nt={type:"MultiLineString",coordinates:Ra};return n(nt,ma,yt)}t.multiLineString=P;function L(Ra,ma,yt){yt===void 0&&(yt={});var nt={type:"MultiPoint",coordinates:Ra};return n(nt,ma,yt)}t.multiPoint=L;function F(Ra,ma,yt){yt===void 0&&(yt={});var nt={type:"MultiPolygon",coordinates:Ra};return n(nt,ma,yt)}t.multiPolygon=F;function N(Ra,ma,yt){yt===void 0&&(yt={});var nt={type:"GeometryCollection",geometries:Ra};return n(nt,ma,yt)}t.geometryCollection=N;function z(Ra,ma){if(ma===void 0&&(ma=0),ma&&!(ma>=0))throw new Error("precision must be a positive number");var yt=Math.pow(10,ma||0);return Math.round(Ra*yt)/yt}t.round=z;function W(Ra,ma){ma===void 0&&(ma="kilometers");var yt=t.factors[ma];if(!yt)throw new Error(ma+" units is invalid");return Ra*yt}t.radiansToLength=W;function lt(Ra,ma){ma===void 0&&(ma="kilometers");var yt=t.factors[ma];if(!yt)throw new Error(ma+" units is invalid");return Ra/yt}t.lengthToRadians=lt;function Pe(Ra,ma){return mt(lt(Ra,ma))}t.lengthToDegrees=Pe;function se(Ra){var ma=Ra%360;return ma<0&&(ma+=360),ma}t.bearingToAzimuth=se;function mt(Ra){var ma=Ra%(2*Math.PI);return ma*180/Math.PI}t.radiansToDegrees=mt;function kt(Ra){var ma=Ra%360;return ma*Math.PI/180}t.degreesToRadians=kt;function mn(Ra,ma,yt){if(ma===void 0&&(ma="kilometers"),yt===void 0&&(yt="kilometers"),!(Ra>=0))throw new Error("length must be a positive number");return W(lt(Ra,ma),yt)}t.convertLength=mn;function pi(Ra,ma,yt){if(ma===void 0&&(ma="meters"),yt===void 0&&(yt="kilometers"),!(Ra>=0))throw new Error("area must be a positive number");var nt=t.areaFactors[ma];if(!nt)throw new Error("invalid original units");var _i=t.areaFactors[yt];if(!_i)throw new Error("invalid final units");return Ra/nt*_i}t.convertArea=pi;function zi(Ra){return!isNaN(Ra)&&Ra!==null&&!Array.isArray(Ra)}t.isNumber=zi;function Sa(Ra){return!!Ra&&Ra.constructor===Object}t.isObject=Sa;function fa(Ra){if(!Ra)throw new Error("bbox is required");if(!Array.isArray(Ra))throw new Error("bbox must be an Array");if(Ra.length!==4&&Ra.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");Ra.forEach(function(ma){if(!zi(ma))throw new Error("bbox must only contain numbers")})}t.validateBBox=fa;function La(Ra){if(!Ra)throw new Error("id is required");if(["string","number"].indexOf(typeof Ra)===-1)throw new Error("id must be a number or a string")}t.validateId=La})(js$2);var js$1={};Object.defineProperty(js$1,"__esModule",{value:!0});var helpers$1=js$2;function coordEach$2(t,n,o){if(t!==null)for(var s,c,d,h,p,y,S,P=0,L=0,F,N=t.type,z=N==="FeatureCollection",W=N==="Feature",lt=z?t.features.length:1,Pe=0;Pe<lt;Pe++){S=z?t.features[Pe].geometry:W?t.geometry:t,F=S?S.type==="GeometryCollection":!1,p=F?S.geometries.length:1;for(var se=0;se<p;se++){var mt=0,kt=0;if(h=F?S.geometries[se]:S,h!==null){y=h.coordinates;var mn=h.type;switch(P=o&&(mn==="Polygon"||mn==="MultiPolygon")?1:0,mn){case null:break;case"Point":if(n(y,L,Pe,mt,kt)===!1)return!1;L++,mt++;break;case"LineString":case"MultiPoint":for(s=0;s<y.length;s++){if(n(y[s],L,Pe,mt,kt)===!1)return!1;L++,mn==="MultiPoint"&&mt++}mn==="LineString"&&mt++;break;case"Polygon":case"MultiLineString":for(s=0;s<y.length;s++){for(c=0;c<y[s].length-P;c++){if(n(y[s][c],L,Pe,mt,kt)===!1)return!1;L++}mn==="MultiLineString"&&mt++,mn==="Polygon"&&kt++}mn==="Polygon"&&mt++;break;case"MultiPolygon":for(s=0;s<y.length;s++){for(kt=0,c=0;c<y[s].length;c++){for(d=0;d<y[s][c].length-P;d++){if(n(y[s][c][d],L,Pe,mt,kt)===!1)return!1;L++}kt++}mt++}break;case"GeometryCollection":for(s=0;s<h.geometries.length;s++)if(coordEach$2(h.geometries[s],n,o)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function coordReduce(t,n,o,s){var c=o;return coordEach$2(t,function(d,h,p,y,S){h===0&&o===void 0?c=d:c=n(c,d,h,p,y,S)},s),c}function propEach(t,n){var o;switch(t.type){case"FeatureCollection":for(o=0;o<t.features.length&&n(t.features[o].properties,o)!==!1;o++);break;case"Feature":n(t.properties,0);break}}function propReduce(t,n,o){var s=o;return propEach(t,function(c,d){d===0&&o===void 0?s=c:s=n(s,c,d)}),s}function featureEach$1(t,n){if(t.type==="Feature")n(t,0);else if(t.type==="FeatureCollection")for(var o=0;o<t.features.length&&n(t.features[o],o)!==!1;o++);}function featureReduce(t,n,o){var s=o;return featureEach$1(t,function(c,d){d===0&&o===void 0?s=c:s=n(s,c,d)}),s}function coordAll(t){var n=[];return coordEach$2(t,function(o){n.push(o)}),n}function geomEach$2(t,n){var o,s,c,d,h,p,y,S,P,L,F=0,N=t.type==="FeatureCollection",z=t.type==="Feature",W=N?t.features.length:1;for(o=0;o<W;o++){for(p=N?t.features[o].geometry:z?t.geometry:t,S=N?t.features[o].properties:z?t.properties:{},P=N?t.features[o].bbox:z?t.bbox:void 0,L=N?t.features[o].id:z?t.id:void 0,y=p?p.type==="GeometryCollection":!1,h=y?p.geometries.length:1,c=0;c<h;c++){if(d=y?p.geometries[c]:p,d===null){if(n(null,F,S,P,L)===!1)return!1;continue}switch(d.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(n(d,F,S,P,L)===!1)return!1;break}case"GeometryCollection":{for(s=0;s<d.geometries.length;s++)if(n(d.geometries[s],F,S,P,L)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}F++}}function geomReduce$1(t,n,o){var s=o;return geomEach$2(t,function(c,d,h,p,y){d===0&&o===void 0?s=c:s=n(s,c,d,h,p,y)}),s}function flattenEach$2(t,n){geomEach$2(t,function(o,s,c,d,h){var p=o===null?null:o.type;switch(p){case null:case"Point":case"LineString":case"Polygon":return n(helpers$1.feature(o,c,{bbox:d,id:h}),s,0)===!1?!1:void 0}var y;switch(p){case"MultiPoint":y="Point";break;case"MultiLineString":y="LineString";break;case"MultiPolygon":y="Polygon";break}for(var S=0;S<o.coordinates.length;S++){var P=o.coordinates[S],L={type:y,coordinates:P};if(n(helpers$1.feature(L,c),s,S)===!1)return!1}})}function flattenReduce(t,n,o){var s=o;return flattenEach$2(t,function(c,d,h){d===0&&h===0&&o===void 0?s=c:s=n(s,c,d,h)}),s}function segmentEach(t,n){flattenEach$2(t,function(o,s,c){var d=0;if(o.geometry){var h=o.geometry.type;if(!(h==="Point"||h==="MultiPoint")){var p,y=0,S=0,P=0;if(coordEach$2(o,function(L,F,N,z,W){if(p===void 0||s>y||z>S||W>P){p=L,y=s,S=z,P=W,d=0;return}var lt=helpers$1.lineString([p,L],o.properties);if(n(lt,s,c,W,d)===!1)return!1;d++,p=L})===!1)return!1}}})}function segmentReduce(t,n,o){var s=o,c=!1;return segmentEach(t,function(d,h,p,y,S){c===!1&&o===void 0?s=d:s=n(s,d,h,p,y,S),c=!0}),s}function lineEach(t,n){if(!t)throw new Error("geojson is required");flattenEach$2(t,function(o,s,c){if(o.geometry!==null){var d=o.geometry.type,h=o.geometry.coordinates;switch(d){case"LineString":if(n(o,s,c,0,0)===!1)return!1;break;case"Polygon":for(var p=0;p<h.length;p++)if(n(helpers$1.lineString(h[p],o.properties),s,c,p)===!1)return!1;break}}})}function lineReduce(t,n,o){var s=o;return lineEach(t,function(c,d,h,p){d===0&&o===void 0?s=c:s=n(s,c,d,h,p)}),s}function findSegment(t,n){if(n=n||{},!helpers$1.isObject(n))throw new Error("options is invalid");var o=n.featureIndex||0,s=n.multiFeatureIndex||0,c=n.geometryIndex||0,d=n.segmentIndex||0,h=n.properties,p;switch(t.type){case"FeatureCollection":o<0&&(o=t.features.length+o),h=h||t.features[o].properties,p=t.features[o].geometry;break;case"Feature":h=h||t.properties,p=t.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":p=t;break;default:throw new Error("geojson is invalid")}if(p===null)return null;var y=p.coordinates;switch(p.type){case"Point":case"MultiPoint":return null;case"LineString":return d<0&&(d=y.length+d-1),helpers$1.lineString([y[d],y[d+1]],h,n);case"Polygon":return c<0&&(c=y.length+c),d<0&&(d=y[c].length+d-1),helpers$1.lineString([y[c][d],y[c][d+1]],h,n);case"MultiLineString":return s<0&&(s=y.length+s),d<0&&(d=y[s].length+d-1),helpers$1.lineString([y[s][d],y[s][d+1]],h,n);case"MultiPolygon":return s<0&&(s=y.length+s),c<0&&(c=y[s].length+c),d<0&&(d=y[s][c].length-d-1),helpers$1.lineString([y[s][c][d],y[s][c][d+1]],h,n)}throw new Error("geojson is invalid")}function findPoint(t,n){if(n=n||{},!helpers$1.isObject(n))throw new Error("options is invalid");var o=n.featureIndex||0,s=n.multiFeatureIndex||0,c=n.geometryIndex||0,d=n.coordIndex||0,h=n.properties,p;switch(t.type){case"FeatureCollection":o<0&&(o=t.features.length+o),h=h||t.features[o].properties,p=t.features[o].geometry;break;case"Feature":h=h||t.properties,p=t.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":p=t;break;default:throw new Error("geojson is invalid")}if(p===null)return null;var y=p.coordinates;switch(p.type){case"Point":return helpers$1.point(y,h,n);case"MultiPoint":return s<0&&(s=y.length+s),helpers$1.point(y[s],h,n);case"LineString":return d<0&&(d=y.length+d),helpers$1.point(y[d],h,n);case"Polygon":return c<0&&(c=y.length+c),d<0&&(d=y[c].length+d),helpers$1.point(y[c][d],h,n);case"MultiLineString":return s<0&&(s=y.length+s),d<0&&(d=y[s].length+d),helpers$1.point(y[s][d],h,n);case"MultiPolygon":return s<0&&(s=y.length+s),c<0&&(c=y[s].length+c),d<0&&(d=y[s][c].length-d),helpers$1.point(y[s][c][d],h,n)}throw new Error("geojson is invalid")}js$1.coordAll=coordAll,js$1.coordEach=coordEach$2,js$1.coordReduce=coordReduce,js$1.featureEach=featureEach$1,js$1.featureReduce=featureReduce,js$1.findPoint=findPoint,js$1.findSegment=findSegment,js$1.flattenEach=flattenEach$2,js$1.flattenReduce=flattenReduce,js$1.geomEach=geomEach$2,js$1.geomReduce=geomReduce$1,js$1.lineEach=lineEach,js$1.lineReduce=lineReduce,js$1.propEach=propEach,js$1.propReduce=propReduce,js$1.segmentEach=segmentEach,js$1.segmentReduce=segmentReduce;var js$3={};Object.defineProperty(js$3,"__esModule",{value:!0});var meta_1=js$1;function bbox(t){var n=[1/0,1/0,-1/0,-1/0];return meta_1.coordEach(t,function(o){n[0]>o[0]&&(n[0]=o[0]),n[1]>o[1]&&(n[1]=o[1]),n[2]<o[0]&&(n[2]=o[0]),n[3]<o[1]&&(n[3]=o[1])}),n}bbox.default=bbox,js$3.default=bbox;var rbush$3=RBush,helpers=js$2,meta=js$1,turfBBox=js$3.default,featureEach$3=meta.featureEach;meta.coordEach,helpers.polygon;var featureCollection=helpers.featureCollection;function geojsonRbush(t){var n=new rbush$3(t);return n.insert=function(o){if(o.type!=="Feature")throw new Error("invalid feature");return o.bbox=o.bbox?o.bbox:turfBBox(o),rbush$3.prototype.insert.call(this,o)},n.load=function(o){var s=[];return Array.isArray(o)?o.forEach(function(c){if(c.type!=="Feature")throw new Error("invalid features");c.bbox=c.bbox?c.bbox:turfBBox(c),s.push(c)}):featureEach$3(o,function(c){if(c.type!=="Feature")throw new Error("invalid features");c.bbox=c.bbox?c.bbox:turfBBox(c),s.push(c)}),rbush$3.prototype.load.call(this,s)},n.remove=function(o,s){if(o.type!=="Feature")throw new Error("invalid feature");return o.bbox=o.bbox?o.bbox:turfBBox(o),rbush$3.prototype.remove.call(this,o,s)},n.clear=function(){return rbush$3.prototype.clear.call(this)},n.search=function(o){var s=rbush$3.prototype.search.call(this,this.toBBox(o));return featureCollection(s)},n.collides=function(o){return rbush$3.prototype.collides.call(this,this.toBBox(o))},n.all=function(){var o=rbush$3.prototype.all.call(this);return featureCollection(o)},n.toJSON=function(){return rbush$3.prototype.toJSON.call(this)},n.fromJSON=function(o){return rbush$3.prototype.fromJSON.call(this,o)},n.toBBox=function(o){var s;if(o.bbox)s=o.bbox;else if(Array.isArray(o)&&o.length===4)s=o;else if(Array.isArray(o)&&o.length===6)s=[o[0],o[1],o[3],o[4]];else if(o.type==="Feature")s=turfBBox(o);else if(o.type==="FeatureCollection")s=turfBBox(o);else throw new Error("invalid geojson");return{minX:s[0],minY:s[1],maxX:s[2],maxY:s[3]}},n}geojsonRbush$1.exports=geojsonRbush,geojsonRbush$1.exports.default=geojsonRbush;function lineIntersect(t,n){var o={},s=[];if(t.type==="LineString"&&(t=feature(t)),n.type==="LineString"&&(n=feature(n)),t.type==="Feature"&&n.type==="Feature"&&t.geometry!==null&&n.geometry!==null&&t.geometry.type==="LineString"&&n.geometry.type==="LineString"&&t.geometry.coordinates.length===2&&n.geometry.coordinates.length===2){var c=intersects$2(t,n);return c&&s.push(c),featureCollection$1(s)}var d=geojsonRbush$1.exports();return d.load(lineSegment(n)),featureEach$2(lineSegment(t),function(h){featureEach$2(d.search(h),function(p){var y=intersects$2(h,p);if(y){var S=getCoords(y).join(",");o[S]||(o[S]=!0,s.push(y))}})}),featureCollection$1(s)}function intersects$2(t,n){var o=getCoords(t),s=getCoords(n);if(o.length!==2)throw new Error("<intersects> line1 must only contain 2 coordinates");if(s.length!==2)throw new Error("<intersects> line2 must only contain 2 coordinates");var c=o[0][0],d=o[0][1],h=o[1][0],p=o[1][1],y=s[0][0],S=s[0][1],P=s[1][0],L=s[1][1],F=(L-S)*(h-c)-(P-y)*(p-d),N=(P-y)*(d-S)-(L-S)*(c-y),z=(h-c)*(d-S)-(p-d)*(c-y);if(F===0)return null;var W=N/F,lt=z/F;if(W>=0&&W<=1&&lt>=0&&lt<=1){var Pe=c+W*(h-c),se=d+W*(p-d);return point([Pe,se])}return null}function polygonToLine(t,n){n===void 0&&(n={});var o=getGeom(t);switch(!n.properties&&t.type==="Feature"&&(n.properties=t.properties),o.type){case"Polygon":return polygonToLine$1(o,n);case"MultiPolygon":return multiPolygonToLine(o,n);default:throw new Error("invalid poly")}}function polygonToLine$1(t,n){n===void 0&&(n={});var o=getGeom(t),s=o.coordinates,c=n.properties?n.properties:t.type==="Feature"?t.properties:{};return coordsToLine(s,c)}function multiPolygonToLine(t,n){n===void 0&&(n={});var o=getGeom(t),s=o.coordinates,c=n.properties?n.properties:t.type==="Feature"?t.properties:{},d=[];return s.forEach(function(h){d.push(coordsToLine(h,c))}),featureCollection$1(d)}function coordsToLine(t,n){return t.length>1?multiLineString(t,n):lineString(t[0],n)}function booleanDisjoint(t,n){var o=!0;return flattenEach$1(t,function(s){flattenEach$1(n,function(c){if(o===!1)return!1;o=disjoint(s.geometry,c.geometry)})}),o}function disjoint(t,n){switch(t.type){case"Point":switch(n.type){case"Point":return!compareCoords(t.coordinates,n.coordinates);case"LineString":return!isPointOnLine(n,t);case"Polygon":return!booleanPointInPolygon$1(t,n)}break;case"LineString":switch(n.type){case"Point":return!isPointOnLine(t,n);case"LineString":return!isLineOnLine(t,n);case"Polygon":return!isLineInPoly(n,t)}break;case"Polygon":switch(n.type){case"Point":return!booleanPointInPolygon$1(n,t);case"LineString":return!isLineInPoly(t,n);case"Polygon":return!isPolyInPoly(n,t)}}return!1}function isPointOnLine(t,n){for(var o=0;o<t.coordinates.length-1;o++)if(isPointOnLineSegment(t.coordinates[o],t.coordinates[o+1],n.coordinates))return!0;return!1}function isLineOnLine(t,n){var o=lineIntersect(t,n);return o.features.length>0}function isLineInPoly(t,n){for(var o=0,s=n.coordinates;o<s.length;o++){var c=s[o];if(booleanPointInPolygon$1(c,t))return!0}var d=lineIntersect(n,polygonToLine(t));return d.features.length>0}function isPolyInPoly(t,n){for(var o=0,s=t.coordinates[0];o<s.length;o++){var c=s[o];if(booleanPointInPolygon$1(c,n))return!0}for(var d=0,h=n.coordinates[0];d<h.length;d++){var p=h[d];if(booleanPointInPolygon$1(p,t))return!0}var y=lineIntersect(polygonToLine(t),polygonToLine(n));return y.features.length>0}function isPointOnLineSegment(t,n,o){var s=o[0]-t[0],c=o[1]-t[1],d=n[0]-t[0],h=n[1]-t[1],p=s*h-c*d;return p!==0?!1:Math.abs(d)>=Math.abs(h)?d>0?t[0]<=o[0]&&o[0]<=n[0]:n[0]<=o[0]&&o[0]<=t[0]:h>0?t[1]<=o[1]&&o[1]<=n[1]:n[1]<=o[1]&&o[1]<=t[1]}function compareCoords(t,n){return t[0]===n[0]&&t[1]===n[1]}function booleanIntersects(t,n){var o=!1;return flattenEach$1(t,function(s){flattenEach$1(n,function(c){if(o===!0)return!0;o=!booleanDisjoint(s.geometry,c.geometry)})}),o}const d2r=Math.PI/180,MAX_ZOOM=28;function getBboxZoom(t){for(let n=0;n<MAX_ZOOM;n++){const o=1<<32-(n+1);if((t[0]&o)!==(t[2]&o)||(t[1]&o)!==(t[3]&o))return n}return MAX_ZOOM}function bboxToTile(t,n){const o=pointToTile(t[0],t[1],32),s=pointToTile(t[2],t[3],32),c=[o[0],o[1],s[0],s[1]],d=Math.min(getBboxZoom(c),typeof n<"u"?n:MAX_ZOOM);if(d===0)return[0,0,0];const h=c[0]>>>32-d,p=c[1]>>>32-d;return[h,p,d]}function pointToTile(t,n,o){var s=pointToTileFraction(t,n,o);return s[0]=Math.floor(s[0]),s[1]=Math.floor(s[1]),s}function pointToTileFraction(t,n,o){var s=Math.sin(n*d2r),c=Math.pow(2,o),d=c*(t/360+.5),h=c*(.5-.25*Math.log((1+s)/(1-s))/Math.PI);return d=d%c,d<0&&(d=d+c),[d,h,o]}function encodeHilbert3D(t,n,o,s){let c=encodeMorton3D(t,n,o);return mortonToHilbertN(c,s)}function decodeHilbert3D(t,n){const o=hilbertToMortonN(t,n);return decodeMorton3D(o)}function encodeMorton3D(t,n,o){let s=0n;return s=splitBy3(t)|splitBy3(n)<<1n|splitBy3(o)<<2n,s}function decodeMorton3D(t){let n=compactBy3(t),o=compactBy3(t>>1n),s=compactBy3(t>>2n);return[n,o,s]}function splitBy3(t){let n=BigInt(t)&BigInt("0x3ffffffffff");return n=(n|n<<64n)&BigInt("0x3ff0000000000000000ffffffff"),n=(n|n<<32n)&BigInt("0x3ff00000000ffff00000000ffff"),n=(n|n<<16n)&BigInt("0x30000ff0000ff0000ff0000ff0000ff"),n=(n|n<<8n)&BigInt("0x300f00f00f00f00f00f00f00f00f00f"),n=(n|n<<4n)&BigInt("0x30c30c30c30c30c30c30c30c30c30c3"),n=(n|n<<2n)&BigInt("0x9249249249249249249249249249249"),n}function compactBy3(t){let n=t&BigInt("0x9249249249249249249249249249249");return n=(n|n>>2n)&BigInt("0x30c30c30c30c30c30c30c30c30c30c3"),n=(n|n>>4n)&BigInt("0x300f00f00f00f00f00f00f00f00f00f"),n=(n|n>>8n)&BigInt("0x30000ff0000ff0000ff0000ff0000ff"),n=(n|n>>16n)&BigInt("0x3ff00000000ffff00000000ffff"),n=(n|n>>32n)&BigInt("0x3ff0000000000000000ffffffff"),n=(n|n>>64n)&BigInt("0x3ffffffffff"),Number(n)}const mortonToHilbertTable=[48,33,27,34,47,78,28,77,66,29,51,52,65,30,72,63,76,95,75,24,53,54,82,81,18,3,17,80,61,4,62,15,0,59,71,60,49,50,86,85,84,83,5,90,79,56,6,89,32,23,1,94,11,12,2,93,42,41,13,14,35,88,36,31,92,37,87,38,91,74,8,73,46,45,9,10,7,20,64,19,70,25,39,16,69,26,44,43,22,55,21,68,57,40,58,67],hilbertToMortonTable=[48,33,35,26,30,79,77,44,78,68,64,50,51,25,29,63,27,87,86,74,72,52,53,89,83,18,16,1,5,60,62,15,0,52,53,57,59,87,86,66,61,95,91,81,80,2,6,76,32,2,6,12,13,95,91,17,93,41,40,36,38,10,11,31,14,79,77,92,88,33,35,82,70,10,11,23,21,41,40,4,19,25,29,47,46,68,64,34,45,60,62,71,67,18,16,49];function transformCurve(t,n,o){let s=0,c=0n;for(let d=3*(n-1);d>=0;d-=3)s=o[s|Number(t>>BigInt(d)&7n)],c=c<<3n|BigInt(s&7),s&=-8;return c}function mortonToHilbertN(t,n){return transformCurve(t,n,mortonToHilbertTable)}function hilbertToMortonN(t,n){return transformCurve(t,n,hilbertToMortonTable)}function generateHilbertIndex(t){const n=t.z>0?t.f+2**(t.z-1):0;return encodeHilbert3D(t.x,t.y,n,t.z)}function parseHilbertIndex(t,n){if(n===0)return{z:0,f:0,x:0,y:0};const[o,s,c]=decodeHilbert3D(t,n);return{f:c-2**(n-1),x:o,y:s,z:n}}function generateHilbertTilehash(t,n){return"H"+t.toString(8).padStart(n,"0").split("").map(o=>(parseInt(o)+1).toString()).join("")}function parseHilbertTilehash(t){if(t[0]!=="H")return;const n=t.substring(1).split("").map(s=>(parseInt(s)-1).toString()).join(""),o=BigInt("0o"+n);return parseHilbertIndex(o,n.length)}const DEFAULT_ZOOM=25;class Space{constructor(n,o){if(typeof n=="string"){let s=parseZFXYString(n)||parseHilbertTilehash(n)||parseZFXYTilehash(n);if(s)this.zfxy=s,this._regenerateAttributesFromZFXY();else throw new Error(`parse ZFXY failed with input: ${n}`);return}else if(isZFXYTile(n)){this.zfxy=n,this._regenerateAttributesFromZFXY();return}else this.zfxy=calculateZFXY({...n,zoom:typeof o<"u"?o:DEFAULT_ZOOM});this._regenerateAttributesFromZFXY()}up(n=1){return this.move({f:n})}down(n=1){return this.move({f:-n})}north(n=1){return this.move({y:n})}south(n=1){return this.move({y:-n})}east(n=1){return this.move({x:n})}west(n=1){return this.move({x:-n})}move(n){const o=new Space(this.zfxy);return o.zfxy=zfxyWraparound({z:o.zfxy.z,f:o.zfxy.f+(n.f||0),x:o.zfxy.x+(n.x||0),y:o.zfxy.y+(n.y||0)}),o._regenerateAttributesFromZFXY(),o}parent(n){const o=typeof n>"u"?1:this.zfxy.z-n;return new Space(getParent(this.zfxy,o))}children(){return getChildren(this.zfxy).map(n=>new Space(n))}surroundings(){return[...getSurrounding(this.zfxy).filter(({z:n,f:o,x:s,y:c})=>`/${n}/${o}/${s}/${c}`!==this.zfxyStr).map(n=>new Space(n)),...getSurrounding(this.up().zfxy).map(n=>new Space(n)),...getSurrounding(this.down().zfxy).map(n=>new Space(n))]}contains(n){const o=this.toGeoJSON(),s={type:"Point",coordinates:[n.lng,n.lat]},c=this.alt,d=getFloor({...this.zfxy,f:this.zfxy.f+1});return booleanIntersects(o,s)&&(typeof n.alt<"u"?n.alt>=c&&n.alt<d:!0)}toGeoJSON(){const[n,o]=getBBox(this.zfxy);return{type:"Polygon",coordinates:[[[n.lng,n.lat],[n.lng,o.lat],[o.lng,o.lat],[o.lng,n.lat],[n.lng,n.lat]]]}}vertices3d(){const[n,o]=getBBox(this.zfxy),s=getFloor(this.zfxy),c=getFloor({...this.zfxy,f:this.zfxy.f+1});return[[n.lng,n.lat,s],[n.lng,o.lat,s],[o.lng,o.lat,s],[o.lng,n.lat,s],[n.lng,n.lat,c],[n.lng,o.lat,c],[o.lng,o.lat,c],[o.lng,n.lat,c]]}static getSpaceById(n,o){return new Space(n,o)}static getSpaceByLocation(n,o){return new Space(n,o)}static getSpaceByZFXY(n){return new Space(n)}static boundingSpaceForGeometry(n,o){o=o||25;const s=bbox$2(n),c=bboxToTile(s,o),[d,h,p]=c;return new Space({x:d,y:h,z:p,f:0})}static spacesForGeometry(n,o){const s=o;if(s===0)return[new Space("0/0/0/0")];if(n.type==="GeometryCollection")throw new Error("GeometryCollection not supported");const c=bbox$2(n),d=pointToTile(c[0],c[1],32),h=pointToTile(c[2],c[3],32),p=Math.min(d[0],h[0])>>>32-s,y=Math.min(d[1],h[1])>>>32-s,S=(Math.max(h[0],d[0])>>>32-s)+1,P=(Math.max(h[1],d[1])>>>32-s)+1,L=[];for(let F=p;F<=S;F++)for(let N=y;N<=P;N++){const z=new Space({x:F,y:N,z:s,f:0});booleanIntersects(n,z.toGeoJSON())&&L.push(z)}return L}_regenerateAttributesFromZFXY(){this.alt=getFloor(this.zfxy),this.center=getCenterLngLatAlt(this.zfxy),this.zoom=this.zfxy.z,this.id=this.tilehash=generateTilehash(this.zfxy),this.zfxyStr=`/${this.zfxy.z}/${this.zfxy.f}/${this.zfxy.x}/${this.zfxy.y}`,this.hilbertIndex=generateHilbertIndex(this.zfxy),this.hilbertTilehash=generateHilbertTilehash(this.hilbertIndex,this.zfxy.z)}}const getRectangeParamsFromSpace=t=>{const n=t.vertices3d(),o=[n[0][0],n[1][1],n[2][0],n[3][1]],s=n[0][2],c=n[4][2];return{wsen:o,height:s,extrudedHeight:c}},createSpatialIdSpace=(t,n,o,s)=>{const c=new Space({lat:n,lng:t,alt:o},s),{wsen:d,height:h,extrudedHeight:p}=getRectangeParamsFromSpace(c);return{id:v4(),space:c,wsen:d,height:h,extrudedHeight:p}},createSpatialIdFloorSpaces=(t,n=SPATIALID_DEFAULT_MAX_HEIGHT,o=SPATIALID_DEFAULT_COLOR)=>{const s=[],{height:c,extrudedHeight:d}=getRectangeParamsFromSpace(t),h=d-c;for(let p=0;p<n;p+=h){const y=new Space({lat:t.center.lat,lng:t.center.lng,alt:p},t.zoom),{wsen:S,height:P,extrudedHeight:L}=getRectangeParamsFromSpace(y);s.push({id:v4(),space:y,wsen:S,height:P,extrudedHeight:L,type:"floor",color:o})}return s},getSpaceData=t=>({id:t.id,center:t.center,alt:t.alt,zoom:t.zoom,zfxy:t.zfxy,zfxyStr:t.zfxyStr,tilehash:t.tilehash,hilbertTilehash:t.hilbertTilehash,hilbertIndex:t.hilbertIndex.toString(),vertices:t.vertices3d()}),SPATIALID_DEFAULT_ZOOM=20,SPATIALID_DEFAULT_MAX_HEIGHT=1e3,SPATIALID_DEFAULT_COLOR="#00bebe",SPATIALID_DEFAULT_DATA_ONLY=!1,SPATIALID_DEFAULT_RIGHT_CLICK_TO_EXIT=!0,useHooks$8=({ref:t,engineRef:n,terrainEnabled:o,interactionMode:s,overrideInteractionMode:c,onMount:d})=>{const[h,p]=React.useState("idle"),[y,S]=React.useState([]),[P,L]=React.useState([]),[F,N]=React.useState(null),z=React.useMemo(()=>[...y,...P,...F?[F]:[]],[y,P,F]),[W,lt]=React.useState(null),[Pe,se]=React.useState(null),[mt,kt]=React.useState({zoom:SPATIALID_DEFAULT_ZOOM,maxHeight:SPATIALID_DEFAULT_MAX_HEIGHT,color:SPATIALID_DEFAULT_COLOR,dataOnly:SPATIALID_DEFAULT_DATA_ONLY,rightClickToExit:SPATIALID_DEFAULT_RIGHT_CLICK_TO_EXIT}),mn=React.useCallback(Ru=>{p("coordinate"),kt(Vd=>({...Vd,...Ru})),c==null||c("spatialId")},[c]),pi=React.useRef(s);pi.current=s;const zi=React.useCallback(()=>{var Ru;p("idle"),N(null),lt(null),se(null),L([]),c==null||c(pi.current==="spatialId"?"default":pi.current??"default"),(Ru=n.current)==null||Ru.requestRender()},[c,n]),Sa=React.useCallback(Ru=>{var Vd;if(h!=="idle"&&!Nl.current){if(h==="coordinate"){if(!F||Ru.lat===void 0||Ru.lng===void 0)return;p("floor"),se([Ru.lng,Ru.lat,o?Ru.height??0:0]),lt(((Vd=n.current)==null?void 0:Vd.toXYZ(Ru.lng,Ru.lat,Ru.height??0,{useGlobeEllipsoid:!o}))??null),N(cf=>cf?{...cf,type:"selector",color:mt.color}:null);const Gd=createSpatialIdFloorSpaces(F.space,mt.maxHeight,mt.color);L(Gd)}else if(h==="floor"){if(!F)return;const Gd={...F,type:"confirmed",color:mt.color};mt.dataOnly||S(uf=>[...uf,Gd]),zi();const cf=getSpaceData(Gd.space);pu.current.forEach(uf=>uf(cf))}}},[h,o,n,F,mt,zi]),fa=React.useCallback(Ru=>{var Vd;if(h!=="idle"&&!Nl.current){if(h==="coordinate"){if(Ru.lat===void 0||Ru.lng===void 0)return;const Gd=createSpatialIdSpace(Ru.lng,Ru.lat,o?Ru.height??0:0,mt.zoom);if(Gd.space.id===(F==null?void 0:F.space.id))return;N({...Gd,type:"coordinate",color:mt.color})}else if(h==="floor"){if(Ru.x===void 0||Ru.y===void 0||W===null||Pe===null)return;const Gd=((Vd=n.current)==null?void 0:Vd.getExtrudedHeight(W,[Ru.x,Ru.y],!0))??0;if(Pe[2]+Gd>mt.maxHeight)return;const cf=createSpatialIdSpace(Pe[0],Pe[1],Pe[2]+Gd,mt.zoom);if(cf.space.id===(F==null?void 0:F.space.id)||cf.space.zfxy.f<0)return;N({...cf,type:"selector",color:mt.color})}}},[h,F,W,Pe,n,o,mt]),La=React.useCallback(()=>{var Ru;h!=="idle"&&(h==="coordinate"&&mt.rightClickToExit?zi():h==="floor"&&(N(null),lt(null),se(null),L([]),p("coordinate")),(Ru=n.current)==null||Ru.requestRender())},[h,mt,n,zi]),Ra=React.useRef(!1),ma=React.useRef(Sa);ma.current=Sa;const yt=React.useCallback(Ru=>{ma.current(Ru)},[]),nt=React.useRef(fa);nt.current=fa;const _i=React.useCallback(Ru=>{nt.current(Ru)},[]),ba=React.useRef(La);ba.current=La;const Sc=React.useCallback(()=>{ba.current()},[]);React.useEffect(()=>{Ra.current||!n.current||(Ra.current=!0,n.current.onMouseUp(yt),n.current.onMouseMove(_i),n.current.onRightClick(Sc))},[n,yt,_i,Sc]);const ms=React.useRef(h);ms.current=h;const Xs=React.useRef(zi);Xs.current=zi,React.useEffect(()=>{Nl.current||s!=="spatialId"&&ms.current!=="idle"&&Xs.current()},[s]);const pu=React.useRef([]),yu=React.useCallback(Ru=>{pu.current.push(Ru)},[]);React.useImperativeHandle(t,()=>({pickSpace:mn,onSpacePick:yu,exitPickSpace:zi}),[mn,yu,zi]);const Nl=React.useRef(!1);return React.useEffect(()=>{const Ru=Vd=>{Vd.code==="Space"&&ms.current!=="idle"&&(Nl.current=!0,c==null||c("move"))};return window.addEventListener("keydown",Ru),()=>{window.removeEventListener("keydown",Ru)}},[c]),React.useEffect(()=>window.addEventListener("keyup",Ru=>{Ru.code==="Space"&&Nl.current&&(Nl.current=!1,c==null||c("spatialId"))}),[c]),React.useEffect(()=>{d==null||d()},[d]),{spaces:z}},SpatialId=({engineRef:t,terrainEnabled:n,interactionMode:o,overrideInteractionMode:s,onMount:c},d)=>{const{spaces:h}=useHooks$8({ref:d,engineRef:t,terrainEnabled:n,interactionMode:o,overrideInteractionMode:s,onMount:c});return h.length>0?h.map(p=>jsxRuntimeExports.jsx(SpatialIdSpace,{space:p},p.id)):null},SpatialId$1=React.forwardRef(SpatialId);/*! (c) Andrea Giammarchi - ISC */var self$1={};try{self$1.EventTarget=new EventTarget().constructor}catch(t){(function(n,o){var s=n.create,c=n.defineProperty,d=h.prototype;p(d,"addEventListener",function(S,P,L){for(var F=o.get(this),N=F[S]||(F[S]=[]),z=0,W=N.length;z<W;z++)if(N[z].listener===P)return;N.push({target:this,listener:P,options:L})}),p(d,"dispatchEvent",function(S){var P=o.get(this),L=P[S.type];return L&&(p(S,"target",this),p(S,"currentTarget",this),L.slice(0).some(y,S),delete S.currentTarget,delete S.target),!0}),p(d,"removeEventListener",function(S,P){for(var L=o.get(this),F=L[S]||(L[S]=[]),N=0,z=F.length;N<z;N++)if(F[N].listener===P){F.splice(N,1);return}}),self$1.EventTarget=h;function h(){o.set(this,s(null))}function p(S,P,L){c(S,P,{configurable:!0,writable:!0,value:L})}function y(S){var P=S.options;return P&&P.once&&S.target.removeEventListener(this.type,S.listener),typeof S.listener=="function"?S.listener.call(S.target,this):S.listener.handleEvent(this),this._stopImmediatePropagationFlag}})(Object,new WeakMap)}const EventTarget$1=self$1.EventTarget;function events(){const t=new EventTarget$1,n=new Map,o=(y,S)=>{let P=n.get(y);P||(P=new Map,n.set(y,P));let L=P.get(S);return L||(L=F=>{S(...F.detail)},P.set(S,L)),L},s=(y,S)=>{var P;(P=n.get(y))==null||P.delete(S)},c=(y,S)=>{const P=o(y,S);t.addEventListener(String(y),P)},d=(y,S)=>{const P=o(y,S);t.removeEventListener(String(y),P),s(y,P)},h=(y,S)=>{const P=o(y,S);t.addEventListener(String(y),P,{once:!0})};return[{get on(){return c},get off(){return d},get once(){return h}},(y,...S)=>t.dispatchEvent(new CustomEvent(String(y),{detail:S}))]}function mergeEvents(t,n,o){const s=o.reduce((c,d)=>({...c,[d]:(...h)=>{n(d,...h)}}),{});for(const c of Object.keys(s))t.on(c,s[c]);return()=>{for(const c of Object.keys(s))t.off(c,s[c])}}function MapFn({engines:t,engine:n,isBuilt:o,isEditable:s,clusters:c,hiddenLayers:d,layers:h,overrides:p,timelineManagerRef:y,interactionMode:S,selectedFeature:P,cursor:L,onLayerSelect:F,overrideInteractionMode:N,onSketchTypeChange:z,onSketchFeatureCreate:W,onSketchPluginFeatureCreate:lt,onSketchFeatureUpdate:Pe,onSketchPluginFeatureUpdate:se,onSketchFeatureDelete:mt,onSketchPluginFeatureDelete:kt,featureFlags:mn=INTERACTION_MODES.default,onMount:pi,onAPIReady:zi,...Sa},fa){var gf,hf;const La=n?t==null?void 0:t[n]:void 0,Ra=La==null?void 0:La.component,{engineRef:ma,layersRef:yt,sketchRef:nt,spatialIdRef:_i,selectedLayer:ba,requestingRenderMode:Sc,handleLayerSelect:ms,handleEngineLayerSelect:Xs,sketchEditingFeature:pu,setSketchEditingFeature:yu,handleEngineMount:Nl,handleLayersMount:Ru,handleSketchMount:Vd,handleSpatialIdMount:Gd}=useHooks$c({ref:fa,timelineManagerRef:y,cursor:L,onLayerSelect:F,onMount:pi,onAPIReady:zi}),cf=React.useMemo(()=>({layerId:ba.layerId,featureId:ba.featureId}),[ba.layerId,ba.featureId]),uf=React.useMemo(()=>ba.reason,[ba.reason]);return Ra?jsxRuntimeExports.jsxs(Ra,{ref:ma,isBuilt:o,isEditable:s,selectedLayerId:cf,layerSelectionReason:uf,layersRef:yt,requestingRenderMode:Sc,timelineManagerRef:y,onLayerSelect:Xs,featureFlags:mn,onMount:Nl,...Sa,children:[jsxRuntimeExports.jsx(Layers$1,{ref:yt,engineRef:ma,clusters:c,hiddenLayers:d,isBuilt:o,isEditable:s,layers:h,overrides:p,selectedLayer:ba,Feature:La==null?void 0:La.featureComponent,clusterComponent:La==null?void 0:La.clusterComponent,delegatedDataTypes:La.delegatedDataTypes,meta:Sa.meta,viewerProperty:Sa.property,requestingRenderMode:Sc,sketchEditingFeature:pu,onLayerSelect:ms,onMount:Ru}),jsxRuntimeExports.jsx(Sketch$1,{ref:nt,layersRef:yt,engineRef:ma,interactionMode:S,selectedFeature:P,SketchComponent:La==null?void 0:La.sketchComponent,onLayerSelect:ms,overrideInteractionMode:N,onSketchTypeChange:z,onSketchFeatureCreate:W,onSketchPluginFeatureCreate:lt,onSketchFeatureUpdate:Pe,onSketchPluginFeatureUpdate:se,onSketchFeatureDelete:mt,onSketchPluginFeatureDelete:kt,sketchEditingFeature:pu,onSketchEditFeature:yu,onMount:Vd}),jsxRuntimeExports.jsx(SpatialId$1,{ref:_i,engineRef:ma,interactionMode:S,terrainEnabled:!!((hf=(gf=Sa.property)==null?void 0:gf.terrain)!=null&&hf.enabled),overrideInteractionMode:N,onMount:Gd})]}):null}const Map$1=React.forwardRef(MapFn),ErrorBoundaryContext=React.createContext(null),initialState={didCatch:!1,error:null};class ErrorBoundary extends React.Component{constructor(n){super(n),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=initialState}static getDerivedStateFromError(n){return{didCatch:!0,error:n}}resetErrorBoundary(){const{error:n}=this.state;if(n!==null){for(var o,s,c=arguments.length,d=new Array(c),h=0;h<c;h++)d[h]=arguments[h];(o=(s=this.props).onReset)===null||o===void 0||o.call(s,{args:d,reason:"imperative-api"}),this.setState(initialState)}}componentDidCatch(n,o){var s,c;(s=(c=this.props).onError)===null||s===void 0||s.call(c,n,o)}componentDidUpdate(n,o){const{didCatch:s}=this.state,{resetKeys:c}=this.props;if(s&&o.error!==null&&hasArrayChanged(n.resetKeys,c)){var d,h;(d=(h=this.props).onReset)===null||d===void 0||d.call(h,{next:c,prev:n.resetKeys,reason:"keys"}),this.setState(initialState)}}render(){const{children:n,fallbackRender:o,FallbackComponent:s,fallback:c}=this.props,{didCatch:d,error:h}=this.state;let p=n;if(d){const y={error:h,resetErrorBoundary:this.resetErrorBoundary};if(React.isValidElement(c))p=c;else if(typeof o=="function")p=o(y);else if(s)p=React.createElement(s,y);else throw h}return React.createElement(ErrorBoundaryContext.Provider,{value:{didCatch:d,error:h,resetErrorBoundary:this.resetErrorBoundary}},p)}}function hasArrayChanged(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return t.length!==n.length||t.some((o,s)=>!Object.is(o,n[s]))}const context$1=React.createContext(void 0),useVisualizer=()=>{const t=React.useContext(context$1);if(!t)throw new Error("Visualizer is not declared. You have to use this hook inside of Visualizer");return t},filterMapRefToContext=t=>t,VisualizerProvider=({mapRef:t,children:n})=>{const o=React.useMemo(()=>filterMapRefToContext(t),[t]);return jsxRuntimeExports.jsx(context$1.Provider,{value:o,children:n})},coreContext=React.createContext({}),Cluster=({property:t,children:n})=>{const{clusterPixelRange:o=15,clusterMinSize:s=3,clusterLabelTypography:c={fontFamily:"sans-serif",fontSize:30,fontWeight:400,color:"#FFF",textAlign:"center",bold:!1,italic:!1,underline:!1},clusterImage:d,clusterImageWidth:h,clusterImageHeight:p}=(t==null?void 0:t.default)??{},y=React.useMemo(()=>new Cesium$1.EntityCluster({enabled:!0,pixelRange:15,minimumClusterSize:2,clusterBillboards:!0,clusterLabels:!0,clusterPoints:!0}),[]);return React.useEffect(()=>{const S=React.Children.count(n)<s,P=y==null?void 0:y.clusterEvent.addEventListener((L,F)=>{F.label.font=toCSSFont(c,{fontSize:30}),F.label.horizontalOrigin=c.textAlign==="right"?Cesium$1.HorizontalOrigin.LEFT:c.textAlign==="left"?Cesium$1.HorizontalOrigin.RIGHT:Cesium$1.HorizontalOrigin.CENTER,F.label.verticalOrigin=Cesium$1.VerticalOrigin.CENTER,F.label.fillColor=Cesium$1.Color.fromCssColorString(c.color??"#FFF"),F.label.eyeOffset=new Cesium$1.Cartesian3(0,0,-5),F.billboard.show=!0,F.billboard.image=d,F.billboard.height=p,F.billboard.width=h,y.minimumClusterSize=S?React.Children.count(n):s});return y.enabled=!S,y.pixelRange=0,y.pixelRange=o,()=>{P()}},[s,o,c,d,p,h,n,y]),y?jsxRuntimeExports.jsx(Os$1,{show:!0,clustering:y,children:n}):null};function ReearthClock({timelineManagerRef:t}){var z,W;const{start:n,stop:o,current:s}=((z=t==null?void 0:t.current)==null?void 0:z.computedTimeline)??{},{animation:c,stepType:d,rangeType:h,multiplier:p}=((W=t==null?void 0:t.current)==null?void 0:W.options)??{},y=React.useMemo(()=>n?Cesium$1.JulianDate.fromDate(n):void 0,[n]),S=React.useMemo(()=>o?Cesium$1.JulianDate.fromDate(o):void 0,[o]),P=React.useMemo(()=>s?Cesium$1.JulianDate.fromDate(s):void 0,[s]),L=d==="fixed"?Cesium$1.ClockStep.TICK_DEPENDENT:Cesium$1.ClockStep.SYSTEM_CLOCK_MULTIPLIER,F=p??1,N=React.useCallback(lt=>{var mt,kt;const Pe=Cesium$1.JulianDate.toDate(lt.startTime),se=Cesium$1.JulianDate.toDate(lt.stopTime);(kt=(mt=t==null?void 0:t.current)==null?void 0:mt.handleTick)==null||kt.call(mt,Cesium$1.JulianDate.toDate(lt.currentTime),{start:Pe,stop:se})},[t]);return jsxRuntimeExports.jsx(Ms$1,{shouldAnimate:c,canAnimate:c,startTime:y,stopTime:S,currentTime:P,clockStep:L,multiplier:F,clockRange:h?rangeTypes[h]:void 0,onTick:N})}const rangeTypes={unbounded:Cesium$1.ClockRange.UNBOUNDED,clamped:Cesium$1.ClockRange.CLAMPED,bounced:Cesium$1.ClockRange.LOOP_STOP},DEFAULT_SCREEN_SPACE_CAMERA_ASSIGNMENTS={translateEventTypes:Cesium$1.CameraEventType.LEFT_DRAG,zoomEventTypes:[Cesium$1.CameraEventType.RIGHT_DRAG,Cesium$1.CameraEventType.WHEEL,Cesium$1.CameraEventType.PINCH],rotateEventTypes:Cesium$1.CameraEventType.LEFT_DRAG,tiltEventTypes:[Cesium$1.CameraEventType.MIDDLE_DRAG,Cesium$1.CameraEventType.PINCH,{eventType:Cesium$1.CameraEventType.LEFT_DRAG,modifier:Cesium$1.KeyboardEventModifier.CTRL},{eventType:Cesium$1.CameraEventType.RIGHT_DRAG,modifier:Cesium$1.KeyboardEventModifier.CTRL}],lookEventTypes:[{eventType:Cesium$1.CameraEventType.LEFT_DRAG,modifier:Cesium$1.KeyboardEventModifier.SHIFT}]},layerIdField="__reearth_layer_id",defaultImageSize=50,drawIcon=(t,n,o,s="none",c=!1,d="rgba(0, 0, 0, 0.7)",h=3,p=0,y=0)=>{const S=document.createElement("canvas"),P=S.getContext("2d");if(!(!t||!P))return P.save(),S.width=n+h,S.height=o+h,P.shadowBlur=h,P.shadowOffsetX=p,P.shadowOffsetY=y,P.globalCompositeOperation="source-over",P.clearRect(0,0,S.width,S.height),P.drawImage(t,(S.width-n)/2,(S.height-o)/2,n,o),s==="circle"?(P.fillStyle="black",P.globalCompositeOperation="destination-in",P.arc(n/2,o/2,Math.min(n,o)/2,0,2*Math.PI),P.fill(),c&&(P.shadowColor=d,P.globalCompositeOperation="destination-over",P.fillStyle="black",P.arc(n/2,o/2,Math.min(n,o)/2,0,2*Math.PI),P.fill())):c&&(P.shadowColor=d,P.globalCompositeOperation="destination-over",P.fillStyle="black",P.rect((S.width-n)/2,(S.height-o)/2,n,o),P.fill()),P.restore(),S.toDataURL()},useIcon=({image:t,imageSize:n,crop:o,shadow:s,shadowColor:c,shadowBlur:d,shadowOffsetX:h,shadowOffsetY:p})=>{const y=useImage(t),S=y?typeof n=="number"?Math.floor(y.width*n):Math.min(defaultImageSize,y.width):0,P=y?Math.floor(typeof n=="number"?y.height*n:S/y.width*y.height):0;return[React.useMemo(()=>drawIcon(y,S,P,o,s,c,d,h,p),[o,P,y,s,d,c,h,p,S])??"",S,P]},ho$1=t=>({left:Cesium$1.HorizontalOrigin.LEFT,center:Cesium$1.HorizontalOrigin.CENTER,right:Cesium$1.HorizontalOrigin.RIGHT,"":void 0})[t||""],vo$1=t=>({top:Cesium$1.VerticalOrigin.TOP,center:Cesium$1.VerticalOrigin.CENTER,baseline:Cesium$1.VerticalOrigin.BASELINE,bottom:Cesium$1.VerticalOrigin.BOTTOM,"":void 0})[t||""],getLocationFromScreen=(t,n,o,s=!1)=>{if(!t)return;const c=t.camera,d=t.globe.ellipsoid;let h;if(s){const P=c.getPickRay(new Cesium$1.Cartesian2(n,o));P&&(h=t.globe.pick(P,t))}if(h||(h=c==null?void 0:c.pickEllipsoid(new Cesium$1.Cartesian2(n,o),d)),!h)return;const{latitude:p,longitude:y,height:S}=d.cartesianToCartographic(h);return{lat:Cesium$1.Math.toDegrees(p),lng:Cesium$1.Math.toDegrees(y),height:S}},getRayEllipsoidIntersection=(t,n,o)=>{const s=Cesium$1.IntersectionTests.rayEllipsoid(t,n);if(!s){const c=Cesium$1.IntersectionTests.grazingAltitudeLocation(t,n);return o?c.clone(o):c}return Cesium$1.Ray.getPoint(t,s.start,o)},createRayFromCamera=t=>{const n=new Cesium$1.Ray;return t.positionWC.clone(n.origin),t.directionWC.clone(n.direction),n},getCameraEllipsoidIntersection=(t,n,o)=>{let s;const{camera:c,globe:d}=t;if(n instanceof Cesium$1.Cartesian2){if(s=c.getPickRay(n,new Cesium$1.Ray),!s)return}else s=createRayFromCamera(c),o=n;return getRayEllipsoidIntersection(s,d.ellipsoid,o)},getCameraTerrainIntersection=t=>{const n=createRayFromCamera(t.camera);return t.globe.pick(n,t)},cartesianToLatLngHeight=(t,n)=>{const o=Cesium$1.Cartographic.fromCartesian(t,n.globe.ellipsoid);return{lng:Cesium$1.Math.toDegrees(o.longitude),lat:Cesium$1.Math.toDegrees(o.latitude),height:o.height}},flyTo=(t,n,o)=>{if(!t||!n)return()=>{};const s=animateFOV({fov:n.fov,camera:t,duration:o==null?void 0:o.duration,easing:o==null?void 0:o.easing}),c=typeof n.lat=="number"&&typeof n.lng=="number"&&typeof n.height=="number"?Cesium$1.Cartesian3.fromDegrees(n.lng,n.lat,n.height):void 0;return c&&t.flyTo({destination:c,orientation:{heading:n.heading,pitch:n.pitch,roll:n.roll},duration:(o==null?void 0:o.duration)??0,easingFunction:o==null?void 0:o.easing}),()=>{s==null||s(),t==null||t.cancelFlight()}},lookAt=(t,n,o)=>{if(!t||!n)return()=>{};const s=animateFOV({fov:n.fov,camera:t,duration:o==null?void 0:o.duration,easing:o==null?void 0:o.easing}),c=typeof n.lat=="number"&&typeof n.lng=="number"&&typeof n.height=="number"?Cesium$1.Cartesian3.fromDegrees(n.lng,n.lat,n.height):void 0;return c&&t.flyToBoundingSphere(new Cesium$1.BoundingSphere(c,n.radius),{offset:n.heading!==void 0||n.pitch!==void 0||n.range!==void 0?new Cesium$1.HeadingPitchRange(n.heading,n.pitch,n.range):void 0,duration:o==null?void 0:o.duration,easingFunction:o==null?void 0:o.easing}),()=>{s==null||s(),t==null||t.cancelFlight()}},lookAtWithoutAnimation=(t,n)=>{if(!n)return;const o=typeof n.lat=="number"&&typeof n.lng=="number"?Cesium$1.Cartesian3.fromDegrees(n.lng,n.lat,n.height):void 0;o&&t.camera.lookAtTransform(Cesium$1.Matrix4.fromTranslation(o))},animateFOV=({fov:t,camera:n,easing:o,duration:s})=>{if(typeof t=="number"&&n.frustum instanceof Cesium$1.PerspectiveFrustum&&typeof n.frustum.fov=="number"&&n.frustum.fov!==t){const c=n.frustum.fov;return tweenInterval(d=>{n.frustum instanceof Cesium$1.PerspectiveFrustum&&(n.frustum.fov=(t-c)*d+c)},o||"inOutCubic",(s??0)*1e3)}},getCenterCamera=({camera:t,scene:n})=>{const o=new Cesium$1.Cartesian3,s=t.getPickRay(t.positionWC);if(s)return s.origin=t.positionWC,s.direction=t.directionWC,n.globe.pick(s,n,o)},zoom=({viewer:t,relativeAmount:n},o)=>{const{camera:s,scene:c}=t;if(c.mode!==Cesium$1.SceneMode.SCENE3D){const F=getCamera(t);flyTo(s,{...F,height:((F==null?void 0:F.height)||1)*n},{duration:.5});return}const h=getCenterCamera({camera:s,scene:c})||Cesium$1.IntersectionTests.grazingAltitudeLocation(new Cesium$1.Ray(c.globe.ellipsoid.cartographicToCartesian(s.positionCartographic),s.directionWC),c.globe.ellipsoid);if(!h)return;const p={heading:s.heading,pitch:s.pitch,roll:s.roll},y=new Cesium$1.Cartesian3,S=Cesium$1.Cartesian3.subtract(s.position,h,y),P=Cesium$1.Cartesian3.multiplyByScalar(S,n,S),L=Cesium$1.Cartesian3.add(h,P,h);s.flyTo({destination:L,orientation:p,duration:(o==null?void 0:o.duration)||.5,convert:!1})},getCamera=t=>{if(!t||t.isDestroyed()||!t.camera||!t.scene)return;const{camera:n}=t;if(!(n.frustum instanceof Cesium$1.PerspectiveFrustum||n.frustum instanceof Cesium$1.OrthographicOffCenterFrustum))return;const{latitude:o,longitude:s,height:c}=n.positionCartographic,d=Cesium$1.Math.toDegrees(o),h=Cesium$1.Math.toDegrees(s),{heading:p,pitch:y,roll:S}=n,P=n.frustum instanceof Cesium$1.PerspectiveFrustum?n.frustum.fov:1,L=n.frustum instanceof Cesium$1.PerspectiveFrustum?n.frustum.aspectRatio:1;return{lng:h,lat:d,height:c,heading:p,pitch:y,roll:S,fov:P,aspectRatio:L}},getClock=t=>{if(t)return{get start(){return Cesium$1.JulianDate.toDate(t.startTime)},get stop(){return Cesium$1.JulianDate.toDate(t.stopTime)},get current(){return Cesium$1.JulianDate.toDate(t.currentTime)},get playing(){return t.shouldAnimate},get speed(){return t.multiplier}}},colorBlendMode=t=>({highlight:Cesium$1.ColorBlendMode.HIGHLIGHT,replace:Cesium$1.ColorBlendMode.REPLACE,mix:Cesium$1.ColorBlendMode.MIX})[t||""],colorBlendModeFor3DTile=(t="highlight")=>({highlight:Cesium$1.Cesium3DTileColorBlendMode.HIGHLIGHT,replace:Cesium$1.Cesium3DTileColorBlendMode.REPLACE,mix:Cesium$1.Cesium3DTileColorBlendMode.MIX})[t],heightReference=t=>({clamp:Cesium$1.HeightReference.CLAMP_TO_GROUND,relative:Cesium$1.HeightReference.RELATIVE_TO_GROUND,none:Cesium$1.HeightReference.NONE})[t||""],getOverriddenScreenSpaceCameraOptions=t=>{if(!t)return;const n=new Map([["left_drag",Cesium$1.CameraEventType.LEFT_DRAG],["right_drag",Cesium$1.CameraEventType.RIGHT_DRAG],["middle_drag",Cesium$1.CameraEventType.MIDDLE_DRAG],["wheel",Cesium$1.CameraEventType.WHEEL],["pinch",Cesium$1.CameraEventType.PINCH]]),o=new Map([["ctrl",Cesium$1.KeyboardEventModifier.CTRL],["shift",Cesium$1.KeyboardEventModifier.SHIFT],["alt",Cesium$1.KeyboardEventModifier.ALT]]),s=S=>{if(S)return S.map(P=>typeof P=="string"?n.get(P):{eventType:n.get(P.eventType),modifier:o.get(P.modifier)})},c=s(t.translateEventTypes),d=s(t.zoomEventTypes),h=s(t.rotateEventTypes),p=s(t.tiltEventTypes),y=s(t.lookEventTypes);return{...DEFAULT_SCREEN_SPACE_CAMERA_ASSIGNMENTS,...c&&{translateEventTypes:c},...d&&{zoomEventTypes:d},...h&&{rotateEventTypes:h},...p&&{tiltEventTypes:p},...y&&{lookEventTypes:y},...t.minimumZoomDistance!==void 0&&{minimumZoomDistance:t.minimumZoomDistance},...t.maximumZoomDistance!==void 0&&{maximumZoomDistance:t.maximumZoomDistance},...t.enableCollisionDetection!==void 0&&{enableCollisionDetection:t.enableCollisionDetection}}},classificationType=t=>({both:Cesium$1.ClassificationType.BOTH,"3dtiles":Cesium$1.ClassificationType.CESIUM_3D_TILE,terrain:Cesium$1.ClassificationType.TERRAIN})[t||""],shadowMode=t=>({enabled:Cesium$1.ShadowMode.ENABLED,cast_only:Cesium$1.ShadowMode.CAST_ONLY,receive_only:Cesium$1.ShadowMode.RECEIVE_ONLY,disabled:Cesium$1.ShadowMode.DISABLED})[t||""],unselectableTag="reearth_unselectable",draggableTag="reearth_draggable";function isSelectable(t){var n;return!((n=t==null?void 0:t.properties)!=null&&n.hasProperty(unselectableTag))}function isDraggable(t){var n;return(n=t.properties)==null?void 0:n[draggableTag]}function lookHorizontal(t,n){const o=t.camera,c=t.globe.ellipsoid.geodeticSurfaceNormal(o.position,new Cesium$1.Cartesian3);o.look(c,n)}function lookVertical(t,n){const o=t.camera,s=t.globe.ellipsoid,c=projectVectorToSurface(o.right,o.position,s),d=s.geodeticSurfaceNormal(o.position,new Cesium$1.Cartesian3),h=Cesium$1.Math.toDegrees(Cesium$1.Cartesian3.angleBetween(d,o.up)),p=rotateVectorAboutAxis(o.up,c,n),S=Cesium$1.Math.toDegrees(Cesium$1.Cartesian3.angleBetween(d,p))<h?1:(90-h)/90;o.look(c,n*S)}function moveForward(t,n){const o=projectVectorToSurface(t.camera.direction,t.camera.position,t.globe.ellipsoid);t.camera.move(o,n)}function moveBackward(t,n){const o=projectVectorToSurface(t.camera.direction,t.camera.position,t.globe.ellipsoid);t.camera.move(o,-n)}function moveUp(t,n){const o=t.globe.ellipsoid.geodeticSurfaceNormal(t.camera.position,new Cesium$1.Cartesian3);t.camera.move(o,n)}function moveDown(t,n){const o=t.globe.ellipsoid.geodeticSurfaceNormal(t.camera.position,new Cesium$1.Cartesian3);t.camera.move(o,-n)}function moveLeft(t,n){const o=projectVectorToSurface(t.camera.right,t.camera.position,t.globe.ellipsoid);t.camera.move(o,-n)}function moveRight(t,n){const o=projectVectorToSurface(t.camera.right,t.camera.position,t.globe.ellipsoid);t.camera.move(o,n)}async function moveOverTerrain(t,n=0){const o=getCamera(t);if((o==null?void 0:o.lng)===void 0||(o==null?void 0:o.lat)===void 0)return;const s=await sampleTerrainHeight(t.scene,o.lng,o.lat);if(s&&s!==0){const c=getCamera(t);c&&(c==null?void 0:c.height)<s+n&&t.scene.camera.moveUp(s+n-c.height)}}async function flyToGround(t,n,o,s,c=0){var p,y;if(o.lng===void 0||o.lat===void 0)return;const d=await sampleTerrainHeight(t.scene,o.lng,o.lat),h=d?d+c:c;(p=n.current)==null||p.call(n),n.current=flyTo((y=t.scene)==null?void 0:y.camera,{...getCamera(t),...o,height:h},s)}function projectVectorToSurface(t,n,o){const s=o.geodeticSurfaceNormal(n,new Cesium$1.Cartesian3),c=Cesium$1.Cartesian3.dot(t,s),d=Cesium$1.Cartesian3.multiplyByScalar(s,c,new Cesium$1.Cartesian3);return Cesium$1.Cartesian3.subtract(t,d,new Cesium$1.Cartesian3)}function rotateVectorAboutAxis(t,n,o){const s=Cesium$1.Quaternion.fromAxisAngle(n,-o,new Cesium$1.Quaternion),c=Cesium$1.Matrix3.fromQuaternion(s,new Cesium$1.Matrix3);return Cesium$1.Matrix3.multiplyByVector(c,t,t.clone())}async function sampleTerrainHeight(t,n,o){const s=t.terrainProvider;if(s instanceof Cesium$1.EllipsoidTerrainProvider)return 0;const[c]=await Cesium$1.sampleTerrainMostDetailed(s,[Cesium$1.Cartographic.fromDegrees(n,o)]);return c.height}async function sampleTerrainHeightFromCartesian(t,n){const o=Cesium$1.Cartographic.fromCartesian(n),[s,c]=[Cesium$1.Math.toDegrees((o==null?void 0:o.longitude)||0),Cesium$1.Math.toDegrees((o==null?void 0:o.latitude)||0)];if(!(!s||!c))return await sampleTerrainHeight(t,s,c)}const isColor=t=>t==null?void 0:t.match(/^#[A-Fa-f0-9]|^rgba?/),toColor$1=t=>{if(!t||typeof t!="string")return;const n=t.match(/^#([A-Fa-f0-9]{6})([A-Fa-f0-9]{2})$|^#([A-Fa-f0-9]{3})([A-Fa-f0-9])$/);if(!n)return Cesium$1.Color.fromCssColorString(t);const o=parseInt(n[4]?n[4].repeat(2):n[2],16)/255;return Cesium$1.Color.fromCssColorString(`#${n[1]??n[3]}`).withAlpha(o)},updateMapController=(t,n)=>{t.scene.screenSpaceCameraController.enableTranslate=n,t.scene.screenSpaceCameraController.enableRotate=n,t.scene.screenSpaceCameraController.enableLook=n,t.scene.screenSpaceCameraController.enableTilt=n,t.scene.screenSpaceCameraController.enableZoom=n};function getExtrudedHeight(t,n,o,s=!1){const c=new Cesium$1.Cartesian3,d=new Cesium$1.Cartesian3,h=new Cesium$1.Ray,p=new Cesium$1.Plane(Cesium$1.Cartesian3.UNIT_X,0),y=new Cesium$1.Cartographic;let S;try{const P=t.globe.ellipsoid.geodeticSurfaceNormal(n,d),L=t.camera.getPickRay(o,h);if(L==null)return;const F=Cesium$1.Plane.fromPointNormal(n,Cesium$1.Cartesian3.normalize(Cesium$1.Cartesian3.cross(P,Cesium$1.Cartesian3.cross(P,L.direction,c),c),c),p);if(S=Cesium$1.IntersectionTests.rayPlane(L,F,c),S==null)return;const N=Cesium$1.Cartographic.fromCartesian(S,t.globe.ellipsoid,y).height,z=Cesium$1.Cartographic.fromCartesian(n,t.globe.ellipsoid,y).height;return s?N-z:Math.max(0,N-z)}catch(P){console.error(P)}}function getCredits(t){if(!t)return;const n=t.creditDisplay;if(!n)return;const{lightboxCredits:o,screenCredits:s}=(n==null?void 0:n._currentFrameCredits)||{},c=n._currentCesiumCredit;return[...c!=null&&c.html?[{html:c.html}]:[],...Array.from((o==null?void 0:o._array)??[]).map(h=>{var p;return{html:(p=h==null?void 0:h.credit)==null?void 0:p.html}}),...Array.from((s==null?void 0:s._array)??[]).map(h=>{var p;return{html:(p=h==null?void 0:h.credit)==null?void 0:p.html}})]}function Globe({property:t,cesiumIonAccessToken:n,onTerrainProviderChange:o}){var h,p,y,S,P,L,F,N,z,W,lt,Pe,se,mt,kt,mn,pi,zi,Sa,fa,La,Ra;const s=React.useMemo(()=>({...t==null?void 0:t.terrain}),[t==null?void 0:t.terrain]),c=React.useMemo(()=>{var nt,_i,ba,Sc,ms,Xs,pu,yu,Nl;const ma={terrain:s==null?void 0:s.enabled,terrainType:s==null?void 0:s.type,normal:s==null?void 0:s.normal,ionAccessToken:((ba=(_i=(nt=t==null?void 0:t.assets)==null?void 0:nt.cesium)==null?void 0:_i.terrain)==null?void 0:ba.ionAccessToken)||n,ionAsset:(Xs=(ms=(Sc=t==null?void 0:t.assets)==null?void 0:Sc.cesium)==null?void 0:ms.terrain)==null?void 0:Xs.ionAsset,ionUrl:(Nl=(yu=(pu=t==null?void 0:t.assets)==null?void 0:pu.cesium)==null?void 0:yu.terrain)==null?void 0:Nl.ionUrl},yt=ma.terrain?terrainProviders[ma.terrainType||"cesium"]:void 0;return(typeof yt=="function"?yt(ma):yt)??defaultTerrainProvider},[s==null?void 0:s.enabled,s==null?void 0:s.type,s==null?void 0:s.normal,(y=(p=(h=t==null?void 0:t.assets)==null?void 0:h.cesium)==null?void 0:p.terrain)==null?void 0:y.ionAccessToken,(L=(P=(S=t==null?void 0:t.assets)==null?void 0:S.cesium)==null?void 0:P.terrain)==null?void 0:L.ionAsset,(z=(N=(F=t==null?void 0:t.assets)==null?void 0:F.cesium)==null?void 0:N.terrain)==null?void 0:z.ionUrl,n]),d=React.useMemo(()=>{var ma;return toColor$1((ma=t==null?void 0:t.globe)==null?void 0:ma.baseColor)},[(W=t==null?void 0:t.globe)==null?void 0:W.baseColor]);return React.useEffect(()=>{o==null||o()},[c,o]),jsxRuntimeExports.jsx(js$4,{baseColor:d,enableLighting:!!((lt=t==null?void 0:t.globe)!=null&&lt.enableLighting),showGroundAtmosphere:((se=(Pe=t==null?void 0:t.globe)==null?void 0:Pe.atmosphere)==null?void 0:se.enabled)??!0,atmosphereLightIntensity:(kt=(mt=t==null?void 0:t.globe)==null?void 0:mt.atmosphere)==null?void 0:kt.lightIntensity,atmosphereSaturationShift:(pi=(mn=t==null?void 0:t.globe)==null?void 0:mn.atmosphere)==null?void 0:pi.saturationShift,atmosphereHueShift:(Sa=(zi=t==null?void 0:t.globe)==null?void 0:zi.atmosphere)==null?void 0:Sa.hueShift,atmosphereBrightnessShift:(La=(fa=t==null?void 0:t.globe)==null?void 0:fa.atmosphere)==null?void 0:La.brightnessShift,terrainProvider:c,depthTestAgainstTerrain:!!((Ra=t==null?void 0:t.globe)!=null&&Ra.depthTestAgainstTerrain)})}const defaultTerrainProvider=new Cesium$1.EllipsoidTerrainProvider,terrainProviders={cesium:({ionAccessToken:t,normal:n})=>Cesium$1.CesiumTerrainProvider.fromUrl(Cesium$1.IonResource.fromAssetId(1,{accessToken:t}),{requestVertexNormals:n,requestWaterMask:!1}),arcgis:()=>Cesium$1.ArcGISTiledElevationTerrainProvider.fromUrl("https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer"),cesiumion:({ionAccessToken:t,ionAsset:n,ionUrl:o,normal:s})=>n?Cesium$1.CesiumTerrainProvider.fromUrl(o||Cesium$1.IonResource.fromAssetId(parseInt(n,10),{accessToken:t}),{requestVertexNormals:s}):null};function defined(t){return t!=null}function DeveloperError(t){this.name="DeveloperError",this.message=t;let n;try{throw new Error}catch(o){n=o.stack}this.stack=n}defined(Object.create)&&(DeveloperError.prototype=Object.create(Error.prototype),DeveloperError.prototype.constructor=DeveloperError),DeveloperError.prototype.toString=function(){let t=`${this.name}: ${this.message}`;return defined(this.stack)&&(t+=`
124
+ Check the top-level render call using <`+lf+">.")}return tf}}function bf(al,tf){{if(!al._store||al._store.validated||al.key!=null)return;al._store.validated=!0;var lf=rf(tf);if(Sf[lf])return;Sf[lf]=!0;var yf="";al&&al._owner&&al._owner!==Yf.current&&(yf=" It was passed a child from "+yt(al._owner.type)+"."),Zf(al),se('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',lf,yf),Zf(null)}}function Pf(al,tf){{if(typeof al!="object")return;if(nf(al))for(var lf=0;lf<al.length;lf++){var yf=al[lf];qf(yf)&&bf(yf,tf)}else if(qf(al))al._store&&(al._store.validated=!0);else if(al){var If=lt(al);if(typeof If=="function"&&If!==al.entries)for(var Of=If.call(al),Tf;!(Tf=Of.next()).done;)qf(Tf.value)&&bf(Tf.value,tf)}}}function Xf(al){{var tf=al.type;if(tf==null||typeof tf=="string")return;var lf;if(typeof tf=="function")lf=tf.propTypes;else if(typeof tf=="object"&&(tf.$$typeof===y||tf.$$typeof===L))lf=tf.propTypes;else return;if(lf){var yf=yt(tf);sf(lf,al.props,"prop",yf,al)}else if(tf.PropTypes!==void 0&&!jm){jm=!0;var If=yt(tf);se("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",If||"Unknown")}typeof tf.getDefaultProps=="function"&&!tf.getDefaultProps.isReactClassApproved&&se("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Bf(al){{for(var tf=Object.keys(al.props),lf=0;lf<tf.length;lf++){var yf=tf[lf];if(yf!=="children"&&yf!=="key"){Zf(al),se("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",yf),Zf(null);break}}al.ref!==null&&(Zf(al),se("Invalid attribute `ref` supplied to `React.Fragment`."),Zf(null))}}function Am(al,tf,lf,yf,If,Of){{var Tf=La(al);if(!Tf){var Mf="";(al===void 0||typeof al=="object"&&al!==null&&Object.keys(al).length===0)&&(Mf+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var Af=ep();Af?Mf+=Af:Mf+=qm();var Gf;al===null?Gf="null":nf(al)?Gf="array":al!==void 0&&al.$$typeof===n?(Gf="<"+(yt(al.type)||"Unknown")+" />",Mf=" Did you accidentally export a JSX literal instead of a component?"):Gf=typeof al,se("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",Gf,Mf)}var Uf=kf(al,tf,lf,If,Of);if(Uf==null)return Uf;if(Tf){var jf=tf.children;if(jf!==void 0)if(yf)if(nf(jf)){for(var yp=0;yp<jf.length;yp++)Pf(jf[yp],al);Object.freeze&&Object.freeze(jf)}else se("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Pf(jf,al)}return al===s?Bf(Uf):Xf(Uf),Uf}}function tp(al,tf,lf){return Am(al,tf,lf,!0)}function sp(al,tf,lf){return Am(al,tf,lf,!1)}var fp=sp,mp=tp;pe$1.Fragment=s,pe$1.jsx=fp,pe$1.jsxs=mp}()),pe$1}process.env.NODE_ENV==="production"?Ae$1.exports=Ot$1():Ae$1.exports=Gt$1();var H$1=Ae$1.exports;function Bt$1(t,n){return n?Fe$1(t).reduce((o,[s,c])=>(ve$1(n,s)&&(o[s]=c),o),{}):{}}function Fe$1(t){return Object.keys(t).map(n=>[n,t[n]])}function ve$1(t,n){return!!t&&t.indexOf(n)!==-1}function At$1(t,n){return!!t&&!!n&&[...Object.keys(t),...Object.keys(n)].every(o=>t[o]===n[o])}function Ft$1(t){return t&&typeof t.isDestroyed=="function"&&typeof t.destroy=="function"}function It$1(t){return Ft$1(t)&&t.isDestroyed()}function J(t){return t&&typeof t=="object"&&"then"in t&&typeof t.then=="function"}const ce$1="__RESIUM_EVENT_MANAGER",Ie$1=["onClick","onDoubleClick","onMouseDown","onMouseUp","onMiddleClick","onMiddleDown","onMiddleUp","onMouseMove","onPinchEnd","onPinchMove","onPinchStart","onRightClick","onRightDown","onRightUp","onWheel","onMouseEnter","onMouseLeave"],Re$1=class sg{constructor(n){K$1(this,"scene"),K$1(this,"sshe"),K$1(this,"events",{onClick:new Map,onDoubleClick:new Map,onMouseDown:new Map,onMouseUp:new Map,onMiddleClick:new Map,onMiddleDown:new Map,onMiddleUp:new Map,onMouseMove:new Map,onPinchEnd:new Map,onPinchMove:new Map,onPinchStart:new Map,onRightClick:new Map,onRightDown:new Map,onRightUp:new Map,onWheel:new Map,onMouseEnter:new Map,onMouseLeave:new Map}),K$1(this,"hovered"),K$1(this,"onMouseMove",o=>{var s,c,d,h,p,y;const S=this.pick(o.endPosition);this.hovered!==S&&(this.hovered&&((s=this.getEventCallback("onMouseLeave",this.hovered))==null||s(o,this.hovered),(c=this.getEventCallback("onMouseLeave",null))==null||c(o,this.hovered)),S&&((d=this.getEventCallback("onMouseEnter",S))==null||d(o,S),(h=this.getEventCallback("onMouseEnter",null))==null||h(o,S))),S&&((p=this.getEventCallback("onMouseMove",S))==null||p(o,S)),(y=this.getEventCallback("onMouseMove",null))==null||y(o,S),this.hovered=S}),K$1(this,"eventCallback",o=>s=>{var c,d;const h=this.pick(s==null?void 0:s.position);h&&((c=this.getEventCallback(o,h))==null||c(s,h)),(d=this.getEventCallback(o,null))==null||d(s,h)}),this.scene=n,this.sshe=new Cesium$1.ScreenSpaceEventHandler(n==null?void 0:n.canvas)}destroy(){this.hovered=void 0,this.sshe.isDestroyed()||this.sshe.destroy()}isDestroyed(){return this.sshe.isDestroyed()}on(n,o,s){n&&o==="onWheel"||this.events[o].set(n,s)}off(n,o){this.events[o].delete(n),this.hovered===n&&(this.hovered=void 0)}setEvents(n,o){Fe$1(o).forEach(([s,c])=>{const d=s;ve$1(Ie$1,d)&&(c?this.on(n,d,c):this.off(n,d))}),this.commit()}clearEvents(n){this.hovered=void 0,Ie$1.forEach(o=>{this.off(n,o)}),this.commit()}commit(){const n=this.sshe,o=this.sshe.isDestroyed();o||(this.events.onMouseEnter.size===0&&this.events.onMouseLeave.size===0&&this.events.onMouseMove.size===0?this.sshe.removeInputAction(Cesium$1.ScreenSpaceEventType.MOUSE_MOVE):this.sshe.getInputAction(Cesium$1.ScreenSpaceEventType.MOUSE_MOVE)||this.sshe.setInputAction(this.onMouseMove,Cesium$1.ScreenSpaceEventType.MOUSE_MOVE)),Fe$1(this.events).forEach(([s,c])=>{if(s==="onMouseEnter"||s==="onMouseLeave"||s==="onMouseMove")return;const d=sg.eventTypeMap[s];o||(c.size===0?n.removeInputAction(d):n.getInputAction(d)||n.setInputAction(this.eventCallback(s),d))})}getScreenSpaceEventHandler(){return this.sshe}getEventCallback(n,o){var s,c;return o===null?this.events[n].get(null):this.events[n].get(o.id)||this.events[n].get((c=(s=o.id)==null?void 0:s.entityCollection)==null?void 0:c.owner)||this.events[n].get(o.primitive)||this.events[n].get(o.tileset)}pick(n){var o;if(n)return(o=this.scene)==null?void 0:o.pick(n)}};K$1(Re$1,"eventTypeMap",{onClick:Cesium$1.ScreenSpaceEventType.LEFT_CLICK,onDoubleClick:Cesium$1.ScreenSpaceEventType.LEFT_DOUBLE_CLICK,onMouseDown:Cesium$1.ScreenSpaceEventType.LEFT_DOWN,onMouseUp:Cesium$1.ScreenSpaceEventType.LEFT_UP,onMiddleClick:Cesium$1.ScreenSpaceEventType.MIDDLE_CLICK,onMiddleDown:Cesium$1.ScreenSpaceEventType.MIDDLE_DOWN,onMiddleUp:Cesium$1.ScreenSpaceEventType.MIDDLE_UP,onMouseMove:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE,onPinchEnd:Cesium$1.ScreenSpaceEventType.PINCH_END,onPinchMove:Cesium$1.ScreenSpaceEventType.PINCH_MOVE,onPinchStart:Cesium$1.ScreenSpaceEventType.PINCH_START,onRightClick:Cesium$1.ScreenSpaceEventType.RIGHT_CLICK,onRightDown:Cesium$1.ScreenSpaceEventType.RIGHT_DOWN,onRightUp:Cesium$1.ScreenSpaceEventType.RIGHT_UP,onWheel:Cesium$1.ScreenSpaceEventType.WHEEL,onMouseEnter:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE,onMouseLeave:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE});let De$1=Re$1;const Wt$1=({name:t,create:n,destroy:o,provide:s,update:c,cesiumReadonlyProps:d,cesiumEventProps:h,otherProps:p,setCesiumPropsAfterCreate:y,useCommonEvent:S,useRootEvent:P},L,F)=>{const N=React.useRef(),z=$e$1(),W=React.useRef(s?{}:void 0),lt=React.useRef({}),Pe=React.useRef(si$1(L)),se=React.useRef({}),[mt,kt]=React.useState(!1),mn=React.useRef(!1),pi=React.useRef(null),zi=React.useRef(),Sa=z==null?void 0:z[ce$1],fa=React.useRef(),La=React.useRef(),Ra=React.useCallback(async _i=>{var ba;if(!N.current)return;const Sc=N.current,ms=Object.keys(_i),Xs=Object.keys(h||[]),pu=ms.concat(Object.keys(se.current).filter(Ru=>!ms.includes(Ru))).filter(Ru=>se.current[Ru]!==_i[Ru]).map(Ru=>[Ru,se.current[Ru],_i[Ru]]),yu=[];for(const[Ru,Vd,Gd]of pu)if(d!=null&&d.includes(Ru))yu.push(Ru);else if(ve$1(Xs,Ru)){const cf=h==null?void 0:h[Ru],uf=Sc[cf];uf instanceof Cesium$1.Event&&(typeof Vd>"u"?(uf.addEventListener(Gd),lt.current[cf]=Gd):typeof Gd>"u"?(uf.removeEventListener(Vd),delete lt.current[cf]):(uf.removeEventListener(Vd),uf.addEventListener(Gd)))}else Ru!=="children"&&!Ie$1.includes(Ru)&&!(p!=null&&p.includes(Ru))&&(Sc[Ru]=Gd);const Nl=P?(ba=W.current)==null?void 0:ba[ce$1]:Sa;if(S&&Nl&&N.current&&Nl.setEvents(P?null:N.current,_i),c&&mn.current){const Ru=c(N.current,_i,se.current,z);J(Ru)&&await Ru}se.current=_i,Pe.current=_i,mn.current&&yu.length>0&&(process.env.NODE_ENV!=="production"&&console.warn(`Warning: <${t}> is recreated because following read-only props have been updated: ${yu.join(", ")}`),yt(),await nt(),fa.current=ma())},[]),ma=React.useCallback(async()=>{var _i;await new Promise(Xs=>queueMicrotask(()=>Xs(void 0)));const ba=n==null?void 0:n(z,Pe.current,pi.current);let Sc;if(J(ba)?Sc=await ba:Sc=ba,Array.isArray(Sc)?(N.current=Sc[0],zi.current=Sc[1]):N.current=Sc,y)await Ra(Pe.current);else{if(N.current&&h){const Xs=N.current;for(const pu of Object.keys(Pe.current)){const yu=h[pu];if(yu){const Nl=Pe.current[pu],Ru=Xs[yu];Nl&&Ru instanceof Cesium$1.Event&&Ru.addEventListener(Nl)}}}se.current=Pe.current}s&&N.current&&(W.current={...z,...s(N.current,z,L,zi.current)});const ms=P?(_i=W.current)==null?void 0:_i[ce$1]:Sa;S&&ms&&N.current&&ms.setEvents(P?null:N.current,Pe.current),La.current||kt(!0)},[]),yt=React.useCallback(()=>{kt(!1),mn.current=!1},[]),nt=React.useCallback(async()=>{var _i,ba;await new Promise(ms=>queueMicrotask(()=>ms(void 0))),fa.current&&(await fa.current,fa.current=void 0),N.current&&o&&o(N.current,z,pi.current,zi.current);const Sc=P?(_i=W.current)==null?void 0:_i[ce$1]:Sa;if(S&&Sc&&N.current&&Sc.clearEvents(P?null:N.current),N.current&&!It$1(N.current)){const ms=Object.keys(lt.current);for(const Xs of ms){const pu=N.current[Xs];(ba=pu==null?void 0:pu.removeEventListener)==null||ba.call(pu,lt.current[Xs])}}lt.current={},W.current=void 0,zi.current=void 0,N.current=void 0},[]);return React.useLayoutEffect(()=>((async()=>(La.current&&(await La.current,La.current=void 0),fa.current=ma()))(),()=>{yt(),La.current=nt()}),[ma,nt,yt]),React.useEffect(()=>{(async()=>{var _i,ba;fa.current&&await fa.current;const Sc=si$1(L);mt?At$1(Sc,se.current)||(await Ra(Sc),(ba=(_i=z.__$internal)==null?void 0:_i.onUpdate)==null||ba.call(_i)):(se.current=Sc,Pe.current=Sc,mn.current=!0)})()},[z.__$internal,mt,L,Ra]),React.useImperativeHandle(F,()=>({cesiumElement:mt?N.current:null}),[mt]),[W.current,mt,pi]};function si$1(t){const{children:n,...o}=t;return o}const l=({renderContainer:t,noChildren:n,containerProps:o,defaultProps:s,...c})=>{const d=(h,p)=>{const y={...s,...h},[S,P,L]=Wt$1(c,y,p);if(n)return null;const F=P&&"children"in y?y.children:null,N=t?H$1.jsx("div",{"data-testid":"resium-container",ref:L,...typeof o=="function"?o(y):Bt$1(y,o),children:F}):F?H$1.jsx(H$1.Fragment,{children:F}):null;return S?H$1.jsx(We$1.Provider,{value:S,children:N}):N};return d.displayName=c.name,React.forwardRef(d)},Vt$1=["enabled","selected"],U$1=t=>l({name:t.name,create(n,o){if(!n.scene)return;const s=t.create(o,n.scene.postProcessStages);return typeof o.enabled=="boolean"&&(s.enabled=o.enabled),o.selected&&"selected"in s&&(s.selected=o.selected),t.props.forEach(c=>{!ve$1(t.readonlyProps,c)&&typeof o[c]<"u"&&(s.uniforms[c]=o[c])}),!t.noMount&&n.scene&&!n.scene.isDestroyed()&&n.scene.postProcessStages.add(s),s},destroy(n,o){t.noMount?n.enabled=!1:(o.scene&&!o.scene.isDestroyed()&&o.scene.postProcessStages.remove(n),n.isDestroyed()||n.destroy())},update(n,o,s){t.props.forEach(c=>{!ve$1(t.readonlyProps,c)&&o[c]!==s[c]&&(n.uniforms[c]=o[c])})},cesiumProps:Vt$1,cesiumReadonlyProps:t.readonlyProps,defaultProps:{enabled:!0}}),Ut$1=["alignedAxis","color","disableDepthTestDistance","distanceDisplayCondition","eyeOffset","height","heightReference","horizontalOrigin","image","pixelOffset","pixelOffsetScaleByDistance","position","rotation","scale","scaleByDistance","show","sizeInMeters","translucencyByDistance","verticalOrigin","width","id"];l({name:"Billboard",create(t,n){var o;return(o=t.billboardCollection)==null?void 0:o.add(n)},destroy(t,n){n.billboardCollection&&!n.billboardCollection.isDestroyed()&&n.billboardCollection.remove(t)},cesiumProps:Ut$1,useCommonEvent:!0});const Ht$1=["blendOption","debugShowBoundingVolume","debugShowTextureAtlas","modelMatrix","show"];l({name:"BillboardCollection",create(t,n){if(!t.primitiveCollection)return;const o=new Cesium$1.BillboardCollection({modelMatrix:n.modelMatrix,debugShowBoundingVolume:n.debugShowBoundingVolume,scene:t.scene,blendOption:n.blendOption});return t.primitiveCollection.add(o),o},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},provide(t){return{billboardCollection:t}},cesiumProps:Ht$1});const xt$1=["image","show","scale","horizontalOrigin","verticalOrigin","eyeOffset","pixelOffset","rotation","alignedAxis","width","height","color","scaleByDistance","translucencyByDistance","pixelOffsetScaleByDistance","imageSubRegion","sizeInMeters","heightReference","distanceDisplayCondition","disableDepthTestDistance"],Nt$1={onDefinitionChange:"definitionChanged"},qt$1=l({name:"BillboardGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.BillboardGraphics(n);return t.entity.billboard=o,o},destroy(t,n){n.entity&&(n.entity.billboard=void 0)},cesiumProps:xt$1,cesiumEventProps:Nt$1}),gs$1=qt$1,Yt$1=["heightReference","dimensions","show","fill","material","outline","outlineColor","outlineWidth","shadows","distanceDisplayCondition"],Kt$1={onDefinitionChange:"definitionChanged"},Jt$1=l({name:"BoxGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.BoxGraphics(n);return t.entity.box=o,o},destroy(t,n){n.entity&&(n.entity.box=void 0)},cesiumProps:Yt$1,cesiumEventProps:Kt$1}),Cs$1=Jt$1,Zt$1=["position","direction","up","right","frustum","defaultMoveAmount","defaultLookAmount","defaultRotateAmount","defaultZoomAmount","constrainedAxis","maximumZoomFactor","percentageChanged"],Xt$1={onChange:"changed",onMoveEnd:"moveEnd",onMoveStart:"moveStart"},Qt$1=l({name:"Camera",create:t=>{var n;return(n=t.scene)==null?void 0:n.camera},cesiumProps:Zt$1,cesiumEventProps:Xt$1,setCesiumPropsAfterCreate:!0}),Ps$1=Qt$1,rn$1=["show","modelMatrix","shadows","maximumScreenSpaceError","cullRequestsWhileMoving","cullRequestsWhileMovingMultiplier","preloadWhenHidden","preloadFlightDestinations","preferLeaves","progressiveResolutionHeightFraction","foveatedScreenSpaceError","foveatedConeSize","foveatedMinimumScreenSpaceErrorRelaxation","foveatedInterpolationCallback","foveatedTimeDelay","dynamicScreenSpaceError","dynamicScreenSpaceErrorDensity","dynamicScreenSpaceErrorFactor","dynamicScreenSpaceErrorHeightFalloff","skipLevelOfDetail","baseScreenSpaceError","skipScreenSpaceErrorFactor","skipLevels","immediatelyLoadDesiredLevelOfDetail","loadSiblings","clippingPlanes","classificationType","ellipsoid","lightColor","colorBlendAmount","colorBlendMode","debugFreezeFrame","debugColorizeTiles","debugWireframe","debugShowBoundingVolume","debugShowContentBoundingVolume","debugShowViewerRequestVolume","debugShowGeometricError","debugShowRenderingStatistics","debugShowMemoryUsage","debugShowUrl","style","backFaceCulling","vectorClassificationOnly","vectorKeepDecodedPositions","splitDirection","customShader","imageBasedLighting","showCreditsOnScreen","featureIdLabel","instanceFeatureIdLabel","imageBasedLighting","outlineColor","cacheBytes","maximumCacheOverflowBytes","enableCollision"],sn$1=["showOutline","cullWithChildrenBounds","debugHeatmapTilePropertyName","enableDebugWireframe","modelUpAxis","modelForwardAxis","projectTo2D","enableShowOutline","enablePick"],an$1={onAllTilesLoad:"allTilesLoaded",onInitialTilesLoad:"initialTilesLoaded",onLoadProgress:"loadProgress",onTileFailed:"tileFailed",onTileLoad:"tileLoad",onTileUnload:"tileUnload",onTileVisible:"tileVisible"},cn$1=["onReady","onError","url"],ln$1=l({name:"Cesium3DTileset",async create(t,n){var o,s;if(!t.primitiveCollection)return;const c=n.url;let d;J(c)?d=await c:d=c;let h;try{h=await Cesium$1.Cesium3DTileset.fromUrl(d,n),(o=n.onReady)==null||o.call(n,h)}catch(p){(s=n.onError)==null||s.call(n,p);return}return n.colorBlendAmount&&(h.colorBlendAmount=n.colorBlendAmount),n.colorBlendMode&&(h.colorBlendMode=n.colorBlendMode),n.style&&(h.style=n.style),t.primitiveCollection.add(h),h},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:rn$1,cesiumReadonlyProps:sn$1,cesiumEventProps:an$1,otherProps:cn$1,useCommonEvent:!0}),Ds$1=ln$1,un$1=["show","uri","maximumScreenSpaceError"],dn$1={onDefinitionChange:"definitionChanged"};l({name:"Cesium3DTilesetGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.Cesium3DTilesetGraphics(n);return t.entity.tileset=o,o},destroy(t,n){n.entity&&(n.entity.tileset=void 0)},cesiumProps:un$1,cesiumEventProps:dn$1});const fn$1=["resolutionScale","useDefaultRenderLoop","targetFrameRate","useBrowserRecommendedResolution","creditDisplay"],hn$1=["clock","baseLayer","terrainProvider","skyBox","skyAtmosphere","sceneMode","scene3DOnly","orderIndependentTranslucency","mapMode2D","mapProjection","globe","showRenderLoopErrors","contextOptions","creditContainer","creditViewport","shadows","terrainShadows","terrain","requestRenderMode","maximumRenderTimeChange","msaaSamples","blurActiveElementOnCanvasFocus"],yn$1=["className","id","style","full","containerProps"];l({name:"CesiumWidget",create(t,n,o){if(!o)return;const s=new Cesium$1.CesiumWidget(o,n);if(!s)return;typeof n.resolutionScale=="number"&&(s.resolutionScale=n.resolutionScale);const c=new De$1(s.scene);return[s,c]},destroy(t,n,o,s){s&&!s.isDestroyed()&&s.destroy(),t.isDestroyed()||t.destroy()},provide(t,n,o,s){return{cesiumWidget:t,scene:t.scene,camera:t.scene.camera,imageryLayerCollection:t.scene.globe.imageryLayers,primitiveCollection:t.scene.primitives,globe:t.scene.globe,__$internal:{onUpdate:o==null?void 0:o.onUpdate},[ce$1]:s}},containerProps:({id:t,className:n,style:o,full:s,containerProps:c})=>({className:n,id:t,style:{...s?{position:"absolute",bottom:"0",left:"0",right:"0",top:"0"}:{},...o},...c}),cesiumProps:fn$1,cesiumReadonlyProps:hn$1,otherProps:yn$1,renderContainer:!0,useCommonEvent:!0,useRootEvent:!0});const vn$1=["classificationType","debugShowBoundingVolume","debugShowShadowVolume","show"],gn$1=["allowPicking","asynchronous","compressVertices","geometryInstances","interleave","releaseGeometryInstances","vertexCacheOptimize","appearance"],Cn$1=["onReady"];l({name:"ClassificationPrimitive",async create(t,n){var o;if(!t.primitiveCollection)return;const s=new Cesium$1.ClassificationPrimitive(n);if(n.onReady){const c=()=>{var d,h;s.ready&&((d=n.onReady)==null||d.call(n,s),(h=t.scene)==null||h.postRender.removeEventListener(c))};(o=t.scene)==null||o.postRender.addEventListener(c)}return t.primitiveCollection.add(s),s},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:vn$1,cesiumReadonlyProps:gn$1,otherProps:Cn$1,useCommonEvent:!0});const Sn$1={onStop:"onStop",onTick:"onTick"},En$1=["canAnimate","clockRange","clockStep","currentTime","multiplier","shouldAnimate","startTime","stopTime"],bn$1=l({name:"Clock",create:t=>{var n;return(n=t.cesiumWidget)==null?void 0:n.clock},cesiumProps:En$1,cesiumEventProps:Sn$1,setCesiumPropsAfterCreate:!0}),Ms$1=bn$1,wn$1=["noiseDetail","noiseOffset","show","debugBillboards","debugEllipsoids"];l({name:"CloudCollection",create:t=>{if(!t.primitiveCollection)return;const n=new Cesium$1.CloudCollection;return t.primitiveCollection.add(n),n},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},provide:t=>({cloudCollection:t}),cesiumProps:wn$1,setCesiumPropsAfterCreate:!0});const Rn$1=["positions","width","cornerType","height","heightReference","extrudedHeight","extrudedHeightReference","show","fill","material","outline","outlineColor","outlineWidth","granularity","shadows","distanceDisplayCondition","zIndex","classificationType"],$n$1={onDefinitionChange:"definitionChanged"};l({name:"CorridorGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.CorridorGraphics(n);return n.classificationType&&(o.classificationType=n.classificationType),t.entity.corridor=o,o},destroy(t,n){n.entity&&(n.entity.corridor=void 0)},cesiumProps:Rn$1,cesiumEventProps:$n$1});const Mn$1=["show","position","scale","maximumSize","slice","brightness","color"];l({name:"CumulusCloud",create:(t,n)=>{var o;return(o=t.cloudCollection)==null?void 0:o.add(n)},destroy(t,n){n.cloudCollection&&!n.cloudCollection.isDestroyed()&&n.cloudCollection.remove(t)},cesiumProps:Mn$1});const Ln$1=["clustering","name","show","clock","isLoading"],_n$1={onChange:"changedEvent",onError:"errorEvent",onLoading:"loadingEvent"},On$1=l({name:"CustomDataSource",create(t,n){if(!t.dataSourceCollection)return;const o=new Cesium$1.CustomDataSource(n.name);return n.clustering&&(o.clustering=n.clustering),typeof n.show=="boolean"&&(o.show=n.show),typeof n.clock<"u"&&(o.clock=n.clock),t.dataSourceCollection.add(o),o},destroy(t,n){n.dataSourceCollection&&!n.dataSourceCollection.isDestroyed()&&n.dataSourceCollection.remove(t)},provide(t){return{entityCollection:t.entities,dataSource:t}},cesiumProps:Ln$1,cesiumEventProps:_n$1,useCommonEvent:!0}),Os$1=On$1,Gn$1=["heightReference","length","topRadius","bottomRadius","show","fill","material","outline","outlineColor","outlineWidth","numberOfVerticalLines","slices","distanceDisplayCondition","shadows"],Bn$1={onDefinitionChange:"definitionChanged"};l({name:"CylinderGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.CylinderGraphics(n);return t.entity.cylinder=o,o},destroy(t,n){n.entity&&(n.entity.cylinder=void 0)},cesiumProps:Gn$1,cesiumEventProps:Bn$1});const Fn$1=["clustering","show"],In$1=["name","sourceUri","credit"],Wn$1={onChange:"changedEvent",onError:"errorEvent",onLoading:"loadingEvent"},Vn$1=["onLoad","data"],ai=(t,{data:n,onLoad:o,...s})=>{n&&t.load(n,s).then(c=>{o&&o(c)})},Un$1=l({name:"CzmlDataSource",create(t,n){if(!t.dataSourceCollection)return;const o=new Cesium$1.CzmlDataSource(n.name);return n.clustering&&(o.clustering=n.clustering),typeof n.show=="boolean"&&(o.show=n.show),t.dataSourceCollection.add(o),n.data&&ai(o,n),o},update(t,n,o){n.data?o.show!==n.show&&(t.show=typeof n.show=="boolean"?n.show:!0):t.show=!1,n.data&&(o.data!==n.data||o.sourceUri!==n.sourceUri||o.credit!==n.credit)&&ai(t,n)},destroy(t,n){n.dataSourceCollection&&!n.dataSourceCollection.isDestroyed()&&n.dataSourceCollection.remove(t)},provide(t){return{dataSource:t}},cesiumProps:Fn$1,cesiumReadonlyProps:In$1,cesiumEventProps:Wn$1,otherProps:Vn$1,useCommonEvent:!0}),Bs$1=Un$1,jn$1=["semiMajorAxis","semiMinorAxis","height","heightReference","extrudedHeight","show","fill","material","outline","outlineColor","outlineWidth","numberOfVerticalLines","rotation","stRotation","granularity","shadows","distanceDisplayCondition","zIndex","classificationType","extrudedHeightReference"],Hn$1={onDefinitionChange:"definitionChanged"},zn$1=l({name:"EllipseGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.EllipseGraphics(n);return t.entity.ellipse=o,o},destroy(t,n){n.entity&&(n.entity.ellipse=void 0)},cesiumProps:jn$1,cesiumEventProps:Hn$1}),As$1=zn$1,xn$1=["heightReference","radii","show","fill","innerRadii","material","maximumClock","maximumCone","minimumClock","minimumCone","outline","outlineColor","outlineWidth","subdivisions","stackPartitions","slicePartitions","shadows","distanceDisplayCondition"],Nn$1={onDefinitionChange:"definitionChanged"},qn$1=l({name:"EllipsoidGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.EllipsoidGraphics(n);return t.entity.ellipsoid=o,o},destroy(t,n){n.entity&&(n.entity.ellipsoid=void 0)},cesiumProps:xn$1,cesiumEventProps:Nn$1}),Fs$1=qn$1,Yn$1=["availability","billboard","box","corridor","cylinder","description","ellipse","ellipsoid","entityCollection","label","model","name","orientation","path","plane","parent","point","polygon","polyline","polylineVolume","position","properties","rectangle","show","tileset","viewFrom","wall"],Kn$1=["id"],Jn$1={onDefinitionChange:"definitionChanged"},Zn$1=["selected","tracked"],Xn$1=l({name:"Entity",create(t,n){if(!t.entityCollection)return;const o=new Cesium$1.Entity(n);return t.viewer&&n.selected&&(t.viewer.selectedEntity=o),t.viewer&&n.tracked&&(t.viewer.trackedEntity=o),t.entityCollection.add(o),o},destroy(t,n){n.entityCollection&&n.entityCollection.remove(t)},update(t,n,o,s){s.viewer&&(n.selected!==o.selected&&(n.selected?s.viewer.selectedEntity=t:s.viewer.selectedEntity===t&&(s.viewer.selectedEntity=void 0)),n.tracked!==o.tracked&&(n.tracked?s.viewer.trackedEntity=t:s.viewer.trackedEntity===t&&(s.viewer.trackedEntity=void 0)))},provide(t,n,o){return{entity:t,__$internal:{onUpdate:o==null?void 0:o.onUpdate}}},cesiumProps:Yn$1,cesiumReadonlyProps:Kn$1,cesiumEventProps:Jn$1,otherProps:Zn$1,useCommonEvent:!0}),Is$1=Xn$1,eo$1=["density","enabled","minimumBrightness","screenSpaceErrorFactor","renderable"],io$1=l({name:"Fog",create(t){if(!t.scene)return;const n=new Cesium$1.Fog;return t.scene.fog=n,n},destroy(t,n){n.scene&&!n.scene.isDestroyed()&&(n.scene.fog=new Cesium$1.Fog)},cesiumProps:eo$1,setCesiumPropsAfterCreate:!0}),Vs=io$1,to$1=["clustering","name","show"],no=["clampToGround","sourceUri","credit","markerSize","markerSymbol","markerColor","stroke","strokeWidth","fill","describe"],oo$1={onChange:"changedEvent",onError:"errorEvent",onLoading:"loadingEvent"},ro$1=["onLoad","data"],ci$1=(t,{data:n,onLoad:o,...s})=>{n&&t.load(n,s).then(c=>{o&&o(c)})},so$1=l({name:"GeoJsonDataSource",create(t,n){if(!t.dataSourceCollection)return;const o=new Cesium$1.GeoJsonDataSource(n.name);return n.clustering&&(o.clustering=n.clustering),typeof n.show=="boolean"&&(o.show=n.show),t.dataSourceCollection.add(o),n.data&&ci$1(o,n),o},update(t,n,o){n.data?o.show!==n.show&&(t.show=typeof n.show=="boolean"?n.show:!0):t.show=!1,n.data&&(o.data!==n.data||o.clampToGround!==n.clampToGround||o.sourceUri!==n.sourceUri||o.credit!==n.credit||o.markerSize!==n.markerSize||o.markerSymbol!==n.markerSymbol||o.markerColor!==n.markerColor||o.stroke!==n.stroke||o.strokeWidth!==n.strokeWidth||o.fill!==n.fill)&&ci$1(t,n)},destroy(t,n){n.dataSourceCollection&&!n.dataSourceCollection.isDestroyed()&&n.dataSourceCollection.remove(t)},provide(t){return{dataSource:t}},cesiumProps:to$1,cesiumReadonlyProps:no,cesiumEventProps:oo$1,otherProps:ro$1,useCommonEvent:!0}),Us$1=so$1,ao$1={onImageryLayersUpdate:"imageryLayersUpdatedEvent",onTerrainProviderChange:"terrainProviderChanged",onTileLoadProgress:"tileLoadProgressEvent"},co$1=["atmosphereBrightnessShift","atmosphereHueShift","atmosphereSaturationShift","backFaceCulling","baseColor","clippingPlanes","depthTestAgainstTerrain","enableLighting","lightingFadeInDistance","lightingFadeOutDistance","material","maximumScreenSpaceError","nightFadeInDistance","nightFadeOutDistance","oceanNormalMapUrl","shadows","show","showGroundAtmosphere","showWaterEffect","tileCacheSize","loadingDescendantLimit","preloadAncestors","preloadSiblings","fillHighlightColor","dynamicAtmosphereLighting","dynamicAtmosphereLightingFromSun","showSkirts","cartographicLimitRectangle","translucency","undergroundColor","undergroundColorAlphaByDistance","lambertDiffuseMultiplier","atmosphereLightIntensity","atmosphereRayleighCoefficient","atmosphereMieCoefficient","atmosphereRayleighScaleHeight","atmosphereMieScaleHeight","atmosphereMieAnisotropy","vertexShadowDarkness"],lo$1=["terrainProvider"],uo$1=l({name:"Globe",create:t=>{var n;return(n=t.scene)==null?void 0:n.globe},update:async(t,n)=>{const o=n.terrainProvider;let s;J(o)?s=await o:s=o,t.terrainProvider=s},cesiumProps:co$1,cesiumEventProps:ao$1,otherProps:lo$1,setCesiumPropsAfterCreate:!0}),js$4=uo$1,mo$1=["appearance","classificationType","debugShowBoundingVolume","debugShowShadowVolume","show"],fo$1=["allowPicking","asynchronous","geometryInstances","interleave","releaseGeometryInstances"],ho$2=["onReady"];l({name:"GroundPolylinePrimitive",create(t,n){var o;if(!t.primitiveCollection)return;const s=new Cesium$1.GroundPolylinePrimitive(n);if(n.onReady){const c=()=>{var d,h;s.ready&&((d=n.onReady)==null||d.call(n,s),(h=t.scene)==null||h.postRender.removeEventListener(c))};(o=t.scene)==null||o.postRender.addEventListener(c)}return t.primitiveCollection.add(s),s},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:mo$1,cesiumReadonlyProps:fo$1,otherProps:ho$2,useCommonEvent:!0});const po$1=["appearance","classificationType","debugShowBoundingVolume","debugShowShadowVolume","show"],vo$2=["allowPicking","asynchronous","compressVertices","geometryInstances","interleave","releaseGeometryInstances","vertexCacheOptimize"],go$1=["onReady"];l({name:"GroundPrimitive",create(t,n){var o;if(!t.primitiveCollection)return;const s=new Cesium$1.GroundPrimitive(n);if(n.onReady){const c=()=>{var d,h;s.ready&&((d=n.onReady)==null||d.call(n,s),(h=t.scene)==null||h.postRender.removeEventListener(c))};(o=t.scene)==null||o.postRender.addEventListener(c)}return t.primitiveCollection.add(s),s},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:po$1,cesiumReadonlyProps:vo$2,otherProps:go$1,useCommonEvent:!0});const Po$1=["show","destroyPrimitives","primitiveAdded","primitiveRemoved"];l({name:"GroundPrimitiveCollection",create:t=>{var n;return(n=t.scene)==null?void 0:n.groundPrimitives},provide:t=>({primitiveCollection:t}),cesiumProps:Po$1,setCesiumPropsAfterCreate:!0});const Eo$1=["alpha","brightness","contrast","hue","saturation","gamma","splitDirection","minificationFilter","magnificationFilter","cutoutRectangle","show","nightAlpha","dayAlpha","colorToAlpha","colorToAlphaThreshold","index"],bo$1=["rectangle","maximumAnisotropy","minimumTerrainLevel","maximumTerrainLevel","readyEvent","imageryProvider"],wo$1=l({name:"ImageryLayer",async create(t,n){var o,s,c,d;if(!t.imageryLayerCollection)return;const h=J(n.imageryProvider)?n.imageryProvider:new Promise(P=>queueMicrotask(()=>P(n.imageryProvider))),p=(s=(o=t.__$internal)==null?void 0:o.imageryLayerWaitingList)==null?void 0:s.slice();(c=t.__$internal)!=null&&c.imageryLayerWaitingList&&t.__$internal.imageryLayerWaitingList.push(h),p&&await Promise.all(p.filter(P=>J(P)));const y=await h;if((d=t.__$internal)!=null&&d.imageryLayerWaitingList&&(t.__$internal.imageryLayerWaitingList=t.__$internal.imageryLayerWaitingList.filter(P=>P!==h)),!y)return;const S=new Cesium$1.ImageryLayer(y,n);return t.imageryLayerCollection.add(S,n.index),S},destroy(t,n){n.imageryLayerCollection&&n.imageryLayerCollection.remove(t)},cesiumProps:Eo$1,cesiumReadonlyProps:bo$1}),Ns$1=wo$1,Do$1={onLayerAdd:"layerAdded",onLayerMove:"layerMoved",onLayerRemove:"layerRemoved",onLayerShowOrHide:"layerShownOrHidden"};l({name:"ImageryLayerCollection",create:t=>{var n;return(n=t.globe)==null?void 0:n.imageryLayers},cesiumEventProps:Do$1});const $o$1=["clustering","name","show"],To$1=["canvas","camera","ellipsoid","clampToGround","sourceUri","credit","screenOverlayContainer"],Mo$1={onChange:"changedEvent",onError:"errorEvent",onLoading:"loadingEvent",onRefresh:"refreshEvent",onUnsupportedNode:"unsupportedNodeEvent"},ko$1=["onLoad","data"],li$1=(t,{data:n,onLoad:o,...s})=>{n&&t.load(n,s).then(c=>{o&&o(c)})},Lo$1=l({name:"KmlDataSource",create(t,n){if(!t.scene||!t.dataSourceCollection||!t.scene)return;const o=new Cesium$1.KmlDataSource({camera:n.camera||t.scene.camera,canvas:n.canvas||t.scene.canvas,ellipsoid:n.ellipsoid,credit:n.credit});return n.clustering&&(o.clustering=n.clustering),typeof n.show=="boolean"&&(o.show=n.show),typeof n.name<"u"&&(o.name=n.name),t.dataSourceCollection.add(o),n.data&&li$1(o,n),o},update(t,n,o){n.data?o.show!==n.show&&(t.show=typeof n.show=="boolean"?n.show:!0):t.show=!1,n.data&&(o.data!==n.data||o.clampToGround!==n.clampToGround||o.ellipsoid!==n.ellipsoid||o.sourceUri!==n.sourceUri||o.credit!==n.credit)&&li$1(t,n)},destroy(t,n){n.dataSourceCollection&&!n.dataSourceCollection.isDestroyed()&&n.dataSourceCollection.remove(t)},provide(t){return{dataSource:t}},cesiumProps:$o$1,cesiumReadonlyProps:To$1,cesiumEventProps:Mo$1,otherProps:ko$1,useCommonEvent:!0}),Ys$1=Lo$1,_o$1=["backgroundColor","backgroundPadding","disableDepthTestDistance","distanceDisplayCondition","eyeOffset","fillColor","font","heightReference","horizontalOrigin","id","outlineColor","outlineWidth","pixelOffset","pixelOffsetScaleByDistance","position","scale","scaleByDistance","show","showBackground","style","text","translucencyByDistance","verticalOrigin"];l({name:"Label",create:(t,n)=>{var o;return(o=t.labelCollection)==null?void 0:o.add(n)},destroy(t,n){n.labelCollection&&!n.labelCollection.isDestroyed()&&n.labelCollection.remove(t)},cesiumProps:_o$1,useCommonEvent:!0});const Go$1=["blendOption","debugShowBoundingVolume","modelMatrix","show"];l({name:"LabelCollection",create(t,n){if(!t.scene||!t.primitiveCollection)return;const o=new Cesium$1.LabelCollection({scene:t.scene,modelMatrix:n.modelMatrix,blendOption:n.blendOption,debugShowBoundingVolume:n.debugShowBoundingVolume});return t.primitiveCollection.add(o),o},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},provide(t){return{labelCollection:t}},cesiumProps:Go$1});const Ao$1=["text","font","style","fillColor","outlineColor","outlineWidth","show","showBackground","backgroundColor","backgroundPadding","scale","horizontalOrigin","verticalOrigin","eyeOffset","pixelOffset","translucencyByDistance","pixelOffsetScaleByDistance","scaleByDistance","heightReference","distanceDisplayCondition","disableDepthTestDistance"],Fo$1={onDefinitionChange:"definitionChanged"},Io$1=l({name:"LabelGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.LabelGraphics(n);return t.entity.label=o,o},destroy(t,n){n.entity&&(n.entity.label=void 0)},cesiumProps:Ao$1,cesiumEventProps:Fo$1}),Zs=Io$1,Wo$1=["backFaceCulling","clampAnimations","clippingPlanes","color","colorBlendAmount","colorBlendMode","customShader","debugShowBoundingVolume","debugWireframe","distanceDisplayCondition","featureIdLabel","heightReference","id","imageBasedLighting","instanceFeatureIdLabel","lightColor","maximumScale","minimumPixelSize","modelMatrix","outlineColor","scale","shadows","show","showCreditsOnScreen","showOutline","silhouetteColor","silhouetteSize","splitDirection","style"],Vo$1=["allowPicking","asynchronous","basePath","credit","enableDebugWireframe","gltf","heightReference","incrementallyLoadTextures","scene","releaseGltfJson","cull","opaquePass","upAxis","forwardAxis","content","scene","enableShowOutline","projectTo2D","classificationType","errorEvent","readyEvent","texturesReadyEvent","gltfCallback","enablePick"],Uo$1=["onReady","onError","url"];l({name:"Model",async create(t,{scene:n,url:o,colorBlendMode:s,...c}){var d;if(!t.scene||!t.primitiveCollection||!o)return;const h=o;let p;J(h)?p=await h:p=h;let y;try{y=await Cesium$1.Model.fromGltfAsync({...c,url:p,colorBlendMode:s,scene:n||t.scene})}catch(S){(d=c.onError)==null||d.call(c,S);return}return t.primitiveCollection.add(y),y},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumEventProps:{onReady:"readyEvent"},cesiumProps:Wo$1,cesiumReadonlyProps:Vo$1,otherProps:Uo$1,useCommonEvent:!0});const Ho$1=["uri","show","scale","minimumPixelSize","maximumScale","incrementallyLoadTextures","runAnimations","clampAnimations","nodeTransformations","shadows","heightReference","distanceDisplayCondition","silhouetteColor","silhouetteSize","color","colorBlendMode","colorBlendAmount","clippingPlanes","imageBasedLightingFactor","lightColor","articulations","customShader"],zo$1={onDefinitionChange:"definitionChanged"},xo$1=l({name:"ModelGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.ModelGraphics(n);return t.entity.model=o,o},destroy(t,n){n.entity&&(n.entity.model=void 0)},cesiumProps:Ho$1,cesiumEventProps:zo$1}),Qs$1=xo$1,No$1=["onlySunLighting","show","textureUrl"],qo$1=["ellipsoid"],Yo$1=l({name:"Moon",create(t,n){if(!t.scene)return;const o=new Cesium$1.Moon(n);return t.scene.moon=o,o},destroy(t,n){n.scene&&!n.scene.isDestroyed()&&(n.scene.moon=new Cesium$1.Moon)},cesiumProps:No$1,cesiumReadonlyProps:qo$1}),ea=Yo$1,Ko$1=["show","emitter","modelMatrix","emitterModelMatrix","emissionRate","bursts","loop","startScale","endScale","startColor","endColor","image","imageSize","minimumImageSize","maximumImageSize","speed","minimumSpeed","maximumSpeed","lifetime","particleLife","minimumParticleLife","maximumParticleLife","mass","minimumMass","maximumMass","sizeInMeters"],Jo$1={onComplete:"complete",onUpdate:"updateCallback"};l({name:"ParticleSystem",create(t,n){if(!t.primitiveCollection)return;const o=new Cesium$1.ParticleSystem({...n,updateCallback:n.onUpdate});return t.primitiveCollection.add(o),o},update(t,n,o){n.onUpdate!==o.onUpdate&&(t.updateCallback=n.onUpdate)},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t)},cesiumProps:Ko$1,cesiumEventProps:Jo$1});const Xo$1=["leadTime","trailTime","show","width","material","resolution","distanceDisplayCondition"],Qo$1={onDefinitionChange:"definitionChanged"};l({name:"PathGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.PathGraphics(n);return t.entity.path=o,o},destroy(t,n){n.entity&&(n.entity.path=void 0)},cesiumProps:Xo$1,cesiumEventProps:Qo$1});const ir$1=["plane","dimensions","show","fill","material","outline","outlineColor","outlineWidth","shadows","distanceDisplayCondition"],tr$1={onDefinitionChange:"definitionChanged"},nr$1=l({name:"PlaneGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.PlaneGraphics(n);return t.entity.plane=o,o},destroy(t,n){n.entity&&(n.entity.plane=void 0)},cesiumProps:ir$1,cesiumEventProps:tr$1}),na$1=nr$1,or$1=["color","pixelSize","outlineColor","outlineWidth","show","scaleByDistance","translucencyByDistance","heightReference","distanceDisplayCondition","disableDepthTestDistance"],rr$1={onDefinitionChange:"definitionChanged"},sr$1=l({name:"PointGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.PointGraphics(n);return t.entity.point=o,o},destroy(t,n){n.entity&&(n.entity.point=void 0)},cesiumProps:or$1,cesiumEventProps:rr$1}),oa$1=sr$1,ar$1=["color","disableDepthTestDistance","distanceDisplayCondition","id","outlineColor","outlineWidth","pixelSize","position","scaleByDistance","show","translucencyByDistance"];l({name:"PointPrimitive",create:(t,n)=>{var o;return(o=t.pointPrimitiveCollection)==null?void 0:o.add(n)},destroy(t,n){n.pointPrimitiveCollection&&!n.pointPrimitiveCollection.isDestroyed()&&n.pointPrimitiveCollection.remove(t)},cesiumProps:ar$1,useCommonEvent:!0});const lr$1=["blendOption","debugShowBoundingVolume","modelMatrix","show"];l({name:"PointPrimitveCollection",create(t,n){if(!t.primitiveCollection)return;const o=new Cesium$1.PointPrimitiveCollection(n);return t.primitiveCollection.add(o),o},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},provide(t){return{pointPrimitiveCollection:t}},cesiumProps:lr$1});const dr$1=["arcType","hierarchy","height","heightReference","extrudedHeight","extrudedHeightReference","show","fill","material","outline","outlineColor","outlineWidth","stRotation","granularity","perPositionHeight","closeTop","closeBottom","shadows","distanceDisplayCondition","zIndex","classificationType","textureCoordinates"],mr$1={onDefinitionChange:"definitionChanged"},fr$1=l({name:"PolygonGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.PolygonGraphics(n);return t.entity.polygon=o,o},destroy(t,n){n.entity&&(n.entity.polygon=void 0)},cesiumProps:dr$1,cesiumEventProps:mr$1}),aa$1=fr$1,hr$1=["distanceDisplayCondition","id","loop","material","positions","show","width"];l({name:"Polyline",create:(t,n)=>{var o;return(o=t.polylineCollection)==null?void 0:o.add(n)},destroy(t,n){n.polylineCollection&&!n.polylineCollection.isDestroyed()&&n.polylineCollection.remove(t)},cesiumProps:hr$1,useCommonEvent:!0});const pr$1=["debugShowBoundingVolume","length","modelMatrix","show"];l({name:"PolylineCollection",create(t,n){if(!t.primitiveCollection)return;const o=new Cesium$1.PolylineCollection({modelMatrix:n.modelMatrix,debugShowBoundingVolume:n.debugShowBoundingVolume,length:n.length,scene:t.scene});return t.primitiveCollection.add(o),o},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},provide(t){return{polylineCollection:t}},cesiumProps:pr$1});const gr$1=["arcType","classificationType","positions","clampToGround","width","show","material","depthFailMaterial","granularity","shadows","distanceDisplayCondition","zIndex"],Cr$1={onDefinitionChange:"definitionChanged"},Pr$1=l({name:"PolylineGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.PolylineGraphics(n);return t.entity.polyline=o,o},destroy(t,n){n.entity&&(n.entity.polyline=void 0)},cesiumProps:gr$1,cesiumEventProps:Cr$1}),ua$1=Pr$1,Sr$1=["positions","shape","cornerType","show","fill","material","outline","outlineColor","outlineWidth","granularity","shadows","distanceDisplayCondition"],Er$1={onDefinitionChange:"definitionChanged"};l({name:"PolylineVolumeGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.PolylineVolumeGraphics(n);return t.entity.polylineVolume=o,o},destroy(t,n){n.entity&&(n.entity.polylineVolume=void 0)},cesiumProps:Sr$1,cesiumEventProps:Er$1});const wr$1=["enabled","selected"],Dr$1=["clearColor","forcePowerOfTwo","fragmentShader","name","pixelDatatype","pixelFormat","sampleMode","scissorRectangle","textureScale","uniforms"];l({name:"PostProcessStage",create(t,n){if(!t.scene)return;const o=new Cesium$1.PostProcessStage(n);return typeof n.enabled=="boolean"&&(o.enabled=n.enabled),n.selected&&(o.selected=n.selected),t.scene.postProcessStages.add(o),o},destroy(t,n){n.scene&&!n.scene.isDestroyed()&&n.scene.postProcessStages.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:wr$1,cesiumReadonlyProps:Dr$1}),U$1({name:"BlackAndWhiteStage",props:["gradations"],create:()=>Cesium$1.PostProcessStageLibrary.createBlackAndWhiteStage()}),U$1({name:"BrightnessStage",props:["brightness"],create:()=>Cesium$1.PostProcessStageLibrary.createBrightnessStage()}),U$1({name:"LensFlareStage",props:["dirtTexture","starTexture","intensity","distortion","ghostDispersal","haloWidth","earthRadius"],create:()=>Cesium$1.PostProcessStageLibrary.createLensFlareStage()}),U$1({name:"Fxaa",create:(t,n)=>n.fxaa,props:[]}),U$1({name:"NightVisionStage",props:[],create:()=>Cesium$1.PostProcessStageLibrary.createNightVisionStage()});const Rr$1=["enabled","selected"],$r$1=["inputPreviousStageTexture","name","stages","uniforms"];l({name:"PostProcessStageComposite",create(t,n){if(!t.scene)return;const o=new Cesium$1.PostProcessStageComposite(n);return typeof n.enabled=="boolean"&&(o.enabled=n.enabled),n.selected&&(o.selected=n.selected),t.scene.postProcessStages.add(o),o},destroy(t,n){n.scene&&!n.scene.isDestroyed()&&n.scene.postProcessStages.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:Rr$1,cesiumReadonlyProps:$r$1}),U$1({name:"AmbientOcclusion",create:(t,n)=>n.ambientOcclusion,props:["ambientOcclusionOnly","bias","delta","frustumLength","intensity","lengthCap","sigma","stepSize"],noMount:!0}),U$1({name:"Bloom",create:(t,n)=>n.bloom,props:["brightness","contrast","delta","glowOnly","sigma","stepSize"],noMount:!0}),U$1({name:"BlurStage",props:["delta","sigma","stepSize"],create:()=>Cesium$1.PostProcessStageLibrary.createBlurStage()}),U$1({name:"DepthOfFieldStage",props:["delta","focalDistance","sigma","stepSize"],create:()=>Cesium$1.PostProcessStageLibrary.createDepthOfFieldStage()}),U$1({name:"EdgeDetectionStage",props:["color","length"],create:()=>Cesium$1.PostProcessStageLibrary.createEdgeDetectionStage()}),U$1({name:"SilhouetteStage",props:["color","length"],create:()=>Cesium$1.PostProcessStageLibrary.createSilhouetteStage()});const Tr$1=["appearance","cull","debugShowBoundingVolume","depthFailAppearance","modelMatrix","shadows","show"],Mr$1=["allowPicking","asynchronous","compressVertices","geometryInstances","interleave","releaseGeometryInstances","vertexCacheOptimize"],kr$1=["onReady"],Lr$1=l({name:"Primitive",create(t,n){var o;if(!t.primitiveCollection)return;const s=new Cesium$1.Primitive(n);if(n.onReady){const c=()=>{var d,h;s.ready&&((d=n.onReady)==null||d.call(n,s),(h=t.scene)==null||h.postRender.removeEventListener(c))};(o=t.scene)==null||o.postRender.addEventListener(c)}return t.primitiveCollection.add(s),s},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:Tr$1,cesiumReadonlyProps:Mr$1,otherProps:kr$1,useCommonEvent:!0}),Da$1=Lr$1,_r$1=["classificationType","coordinates","height","heightReference","extrudedHeight","extrudedHeightReference","show","fill","material","outline","outlineColor","outlineWidth","rotation","stRotation","granularity","shadows","distanceDisplayCondition","zIndex"],Or$1={onDefinitionChange:"definitionChanged"};l({name:"RectangleGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.RectangleGraphics(n);return t.entity.rectangle=o,o},destroy(t,n){n.entity&&(n.entity.rectangle=void 0)},cesiumProps:_r$1,cesiumEventProps:Or$1});const Br$1=["backgroundColor","completeMorphOnUserInput","debugCommandFilter","debugShowCommands","debugShowDepthFrustum","debugShowFramesPerSecond","debugShowFrustumPlanes","debugShowFrustums","eyeSeparation","farToNearRatio","focalLength","fog","gamma","globe","highDynamicRange","invertClassification","invertClassificationColor","light","logarithmicDepthBuffer","logarithmicDepthFarToNearRatio","maximumRenderTimeChange","minimumDisableDepthTestDistance","moon","morphTime","nearToFarDistance2D","pickTranslucentDepth","requestRenderMode","rethrowRenderErrors","shadowMap","skyAtmosphere","skyBox","specularEnvironmentMaps","sphericalHarmonicCoefficients","sun","sunBloom","terrainProvider","useDepthPicking","useWebVR","postProcessStages","msaaSamples","splitPosition","debugCommandFilter","verticalExaggeration","verticalExaggerationRelativeHeight","atmosphere"],Ar$1={onMorphComplete:"morphComplete",onMorphStart:"morphStart",onPostRender:"postRender",onPreRender:"preRender",onPreUpdate:"preUpdate",onPostUpdate:"postUpdate",onRenderError:"renderError",onTerrainProviderChange:"terrainProviderChanged"},Fr$1=["mode","morphDuration"],ui=(t,n,o)=>{switch(n){case Cesium$1.SceneMode.SCENE2D:t.morphTo2D(o);break;case Cesium$1.SceneMode.COLUMBUS_VIEW:t.morphToColumbusView(o);break;case Cesium$1.SceneMode.SCENE3D:t.morphTo3D(o);break}},Ir$1=l({name:"Scene",create(t,n){return t.scene&&n.mode&&ui(t.scene,n.mode,n.morphDuration),t.scene},update(t,n,o){n.mode!==o.mode&&n.mode&&ui(t,n.mode,n.morphDuration)},cesiumProps:Br$1,cesiumEventProps:Ar$1,otherProps:Fr$1,setCesiumPropsAfterCreate:!0}),$a$1=Ir$1,Wr$1=["bounceAnimationTime","enableCollisionDetection","enableInputs","enableLook","enableRotate","enableTilt","enableTranslate","enableZoom","inertiaSpin","inertiaTranslate","inertiaZoom","lookEventTypes","maximumMovementRatio","maximumZoomDistance","minimumCollisionTerrainHeight","minimumPickingTerrainHeight","minimumTrackBallHeight","minimumZoomDistance","rotateEventTypes","tiltEventTypes","translateEventTypes","zoomEventTypes","minimumPickingTerrainDistanceWithInertia"],Vr$1=l({name:"ScreenSpaceCameraController",create:t=>{var n;return(n=t.scene)==null?void 0:n.screenSpaceCameraController},cesiumProps:Wr$1,setCesiumPropsAfterCreate:!0}),Ta$1=Vr$1,Ur$1=({action:t,modifier:n,type:o})=>{const s=$e$1();return React.useEffect(()=>{if(!(!s.screenSpaceEventHandler||s.screenSpaceEventHandler.isDestroyed())){if(t)return s.screenSpaceEventHandler.setInputAction(t,o,n),()=>{!s.screenSpaceEventHandler||s.screenSpaceEventHandler.isDestroyed()||s.screenSpaceEventHandler.removeInputAction(o,n)};s.screenSpaceEventHandler.removeInputAction(o,n)}},[t,s.screenSpaceEventHandler,n,o]),null},Ma$1=Ur$1,jr$1=l({name:"ScreenSpaceEventHandler",create(t,n){var o;return n.useDefault?(o=t.cesiumWidget)==null?void 0:o.screenSpaceEventHandler:t.scene?new Cesium$1.ScreenSpaceEventHandler(t.scene.canvas):void 0},destroy(t){t.isDestroyed()||t.destroy()},provide(t){return{screenSpaceEventHandler:t}}}),ka$1=jr$1,Hr$1=["darkness","fadingEnabled","maximumDistance","enabled","normalOffset","softShadows","size"];l({name:"ShadowMap",create:t=>{var n;return(n=t.scene)==null?void 0:n.shadowMap},cesiumProps:Hr$1});const xr$1=["brightnessShift","hueShift","saturationShift","show","perFragmentAtmosphere","atmosphereLightIntensity","atmosphereRayleighCoefficient","atmosphereMieCoefficient","atmosphereRayleighScaleHeight","atmosphereMieScaleHeight","atmosphereMieAnisotropy"],Nr$1=l({name:"SkyAtmosphere",create:t=>{var n;return(n=t.scene)==null?void 0:n.skyAtmosphere},cesiumProps:xr$1,setCesiumPropsAfterCreate:!0}),_a$2=Nr$1,qr$1=["sources","show"],Yr$1=l({name:"SkyBox",create:t=>{var n;return(n=t.scene)==null?void 0:n.skyBox},cesiumProps:qr$1,setCesiumPropsAfterCreate:!0}),Oa$1=Yr$1,Kr$1=["glowFactor","show"],Jr$1=l({name:"Sun",create(t){if(!t.scene)return;const n=new Cesium$1.Sun;return t.scene.sun=n,n},destroy(t,n){n.scene&&!n.scene.isDestroyed()&&(n.scene.sun=new Cesium$1.Sun)},cesiumProps:Kr$1,setCesiumPropsAfterCreate:!0}),Ga$1=Jr$1,Zr$1=["clippingPlanes","maximumMemoryUsage","modelMatrix","shadows","show","style","intervals"],Xr$1=["clock","shading"],Qr$1=["onReady"],es$1={onFrameChange:"frameChanged"};l({name:"TimeDynamicPointCloud",create(t,n){var o;if(!t.cesiumWidget||!t.primitiveCollection||!((o=t.cesiumWidget)!=null&&o.clock))return;const s=new Cesium$1.TimeDynamicPointCloud({...n,clock:n.clock??t.cesiumWidget.clock});if(n.onReady){const c=()=>{var d;(d=n.onReady)==null||d.call(n,s),s.frameChanged.removeEventListener(c)};s.frameChanged.addEventListener(c)}return t.primitiveCollection.add(s),s},destroy(t,n){n.primitiveCollection&&!n.primitiveCollection.isDestroyed()&&n.primitiveCollection.remove(t),t.isDestroyed()||t.destroy()},cesiumProps:Zr$1,cesiumReadonlyProps:Xr$1,cesiumEventProps:es$1,otherProps:Qr$1,useCommonEvent:!0});const ts$1=["terrainShadows","clockTrackedDataSource","targetFrameRate","useDefaultRenderLoop","resolutionScale","allowDataSourcesToSuspendAnimation","trackedEntity","selectedEntity","shadows","useBrowserRecommendedResolution","creditDisplay"],ns$1=["baseLayer","animation","baseLayerPicker","fullscreenButton","vrButton","geocoder","homeButton","infoBox","sceneModePicker","selectionIndicator","timeline","navigationHelpButton","navigationInstructionsInitiallyVisible","scene3DOnly","shouldAnimate","clockViewModel","selectedImageryProviderViewModel","imageryProviderViewModels","selectedTerrainProviderViewModel","terrainProviderViewModels","skyBox","skyAtmosphere","fullscreenElement","showRenderLoopErrors","automaticallyTrackDataSourceClocks","contextOptions","sceneMode","mapProjection","globe","orderIndependentTranslucency","creditContainer","creditViewport","dataSources","mapMode2D","projectionPicker","requestRenderMode","maximumRenderTimeChange","depthPlaneEllipsoidOffset","msaaSamples","blurActiveElementOnCanvasFocus","terrain"],os$1={onSelectedEntityChange:"selectedEntityChanged",onTrackedEntityChange:"trackedEntityChanged"},rs$1=["className","id","style","full","containerProps","extend","terrainProvider"],ss$1=l({name:"Viewer",async create(t,{baseLayer:n,terrainProvider:o,...s},c){if(!c)return;let d;J(o)?d=await o:d=o;const h=new Cesium$1.Viewer(c,{...s,terrainProvider:d,baseLayer:n===!1?void 0:n});if(!h)return;n===!1&&h.imageryLayers.removeAll(),h&&s.extend&&(Array.isArray(s.extend)?s.extend.forEach(y=>{h.extend(y,{})}):h.extend(s.extend,{}));const p=new De$1(h.scene);return[h,p]},destroy(t,n,o,s){s&&!s.isDestroyed()&&s.destroy(),t.isDestroyed()||t.destroy()},provide(t,n,o,s){return{viewer:t,cesiumWidget:t.cesiumWidget,dataSourceCollection:t.dataSources,entityCollection:t.entities,scene:t.scene,camera:t.scene.camera,imageryLayerCollection:t.scene.globe.imageryLayers,primitiveCollection:t.scene.primitives,globe:t.scene.globe,__$internal:{onUpdate:o==null?void 0:o.onUpdate,imageryLayerWaitingList:[]},[ce$1]:s}},containerProps:({id:t,className:n,style:o,full:s,containerProps:c})=>({className:n,id:t,style:{...s?{position:"absolute",bottom:"0",left:"0",right:"0",top:"0"}:{},...o},...c}),cesiumProps:ts$1,cesiumReadonlyProps:ns$1,cesiumEventProps:os$1,otherProps:rs$1,renderContainer:!0,useCommonEvent:!0,useRootEvent:!0}),Aa$1=ss$1,as$1=["positions","maximumHeights","minimumHeights","show","fill","material","outline","outlineColor","outlineWidth","granularity","shadows","distanceDisplayCondition"],cs$1={onDefinitionChange:"definitionChanged"};l({name:"WallGraphics",create(t,n){if(!t.entity)return;const o=new Cesium$1.WallGraphics(n);return t.entity.wall=o,o},destroy(t,n){n.entity&&(n.entity.wall=void 0)},cesiumProps:as$1,cesiumEventProps:cs$1});const DEFAULT_COLOR="#00bebe",SpatialIdSpace=React.memo(({space:t})=>{const n=React.useMemo(()=>({rectangle:{coordinates:Cesium$1.Rectangle.fromDegrees(...t.wsen),height:t.type==="coordinate"?void 0:t.height,heightReference:t.type==="coordinate"?void 0:Cesium$1.HeightReference.NONE,extrudedHeight:t.type==="coordinate"?void 0:t.extrudedHeight,clampToGround:t.type==="coordinate",fill:!0,outline:t.type!=="coordinate",outlineColor:Cesium$1.Color.fromCssColorString(t.color??DEFAULT_COLOR).withAlpha(t.type==="floor"?.5:1),material:Cesium$1.Color.fromCssColorString(t.color??DEFAULT_COLOR).withAlpha(t.type==="floor"?.05:.2),classificationType:t.type==="coordinate"?Cesium$1.ClassificationType.BOTH:Cesium$1.ClassificationType.TERRAIN}}),[t]);return jsxRuntimeExports.jsx(Is$1,{id:t.id,...n})});SpatialIdSpace.displayName="SpatialIdSpace";function isZFXYTile(t){return"z"in t&&"f"in t&&"x"in t&&"y"in t}const ZFXY_1M_ZOOM_BASE=25,ZFXY_ROOT_TILE={f:0,x:0,y:0,z:0},rad2deg=180/Math.PI;function getParent(t,n=1){const{f:o,x:s,y:c,z:d}=t;if(n<=0)throw new Error("steps must be greater than 0");if(n>d)throw new Error(`Getting parent tile of ${t}, ${n} steps is not possible because it would go beyond the root tile (z=0)`);return{f:o>>n,x:s>>n,y:c>>n,z:d-n}}function getChildren(t=ZFXY_ROOT_TILE){const{f:n,x:o,y:s,z:c}=t;return[{f:n*2,x:o*2,y:s*2,z:c+1},{f:n*2,x:o*2+1,y:s*2,z:c+1},{f:n*2,x:o*2,y:s*2+1,z:c+1},{f:n*2,x:o*2+1,y:s*2+1,z:c+1},{f:n*2+1,x:o*2,y:s*2,z:c+1},{f:n*2+1,x:o*2+1,y:s*2,z:c+1},{f:n*2+1,x:o*2,y:s*2+1,z:c+1},{f:n*2+1,x:o*2+1,y:s*2+1,z:c+1}]}function getSurrounding(t=ZFXY_ROOT_TILE){const{f:n,x:o,y:s,z:c}=t;return[zfxyWraparound({f:n,x:o,y:s,z:c}),zfxyWraparound({f:n,x:o+1,y:s,z:c}),zfxyWraparound({f:n,x:o,y:s+1,z:c}),zfxyWraparound({f:n,x:o+1,y:s+1,z:c}),zfxyWraparound({f:n,x:o-1,y:s,z:c}),zfxyWraparound({f:n,x:o,y:s-1,z:c}),zfxyWraparound({f:n,x:o-1,y:s-1,z:c}),zfxyWraparound({f:n,x:o+1,y:s-1,z:c}),zfxyWraparound({f:n,x:o-1,y:s+1,z:c})]}function parseZFXYString(t){const n=t.match(/^\/?(\d+)\/(?:(\d+)\/)?(\d+)\/(\d+)$/);if(n)return{z:parseInt(n[1],10),f:parseInt(n[2]||"0",10),x:parseInt(n[3],10),y:parseInt(n[4],10)}}function getLngLat(t){const n=Math.PI-2*Math.PI*t.y/Math.pow(2,t.z);return{lng:t.x/Math.pow(2,t.z)*360-180,lat:rad2deg*Math.atan(.5*(Math.exp(n)-Math.exp(-n)))}}function getCenterLngLat(t){const n=t.x*2+1,o=t.y*2+1,s=t.z+1;return getLngLat({x:n,y:o,z:s,f:0})}function getCenterLngLatAlt(t){return{...getCenterLngLat(t),alt:getFloor(t)+2**ZFXY_1M_ZOOM_BASE/2**(t.z+1)}}function getBBox(t){const n=getLngLat(t),o=getLngLat({...t,y:t.y+1,x:t.x+1});return[n,o]}function getFloor(t){return t.f*2**ZFXY_1M_ZOOM_BASE/2**t.z}function calculateZFXY(t){const n=typeof t.alt<"u"?t.alt:0;if(n<=-33554432||n>=2**ZFXY_1M_ZOOM_BASE)throw new Error(`ZFXY only supports altitude between -2^${ZFXY_1M_ZOOM_BASE} and +2^${ZFXY_1M_ZOOM_BASE}.`);const o=Math.floor(2**t.zoom*n/2**ZFXY_1M_ZOOM_BASE),s=Math.PI/180,c=Math.sin(t.lat*s),d=2**t.zoom;let h=d*(t.lng/360+.5);const p=d*(.5-.25*Math.log((1+c)/(1-c))/Math.PI);return h=h%d,h<0&&(h=h+d),{f:o,x:Math.floor(h),y:Math.floor(p),z:t.zoom}}function zfxyWraparound(t){const{z:n,f:o,x:s,y:c}=t;return{z:n,f:Math.max(Math.min(o,2**n),-(2**n)),x:s<0?s+2**n:s%2**n,y:c<0?c+2**n:c%2**n}}function parseZFXYTilehash(t){let n=!1;t[0]==="-"&&(n=!0,t=t.substring(1));let o=getChildren(),s;for(const c of t)s={...o[parseInt(c,10)-1]},o=getChildren(s);return n&&(s.f=-s.f),s}function generateTilehash(t){let{f:n,x:o,y:s,z:c}=t;const d=n;let h="";for(;c>0;){const p={f:Math.abs(n),x:o,y:s,z:c},y=getParent(p);h=(getChildren(y).findIndex(L=>L.f===Math.abs(n)&&L.x===o&&L.y===s&&L.z===c)+1).toString()+h,n=y.f,o=y.x,s=y.y,c=y.z}return(d<0?"-":"")+h}function feature(t,n,o){o===void 0&&(o={});var s={type:"Feature"};return(o.id===0||o.id)&&(s.id=o.id),o.bbox&&(s.bbox=o.bbox),s.properties=n||{},s.geometry=t,s}function point(t,n,o){if(o===void 0&&(o={}),!t)throw new Error("coordinates is required");if(!Array.isArray(t))throw new Error("coordinates must be an Array");if(t.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!isNumber$1(t[0])||!isNumber$1(t[1]))throw new Error("coordinates must contain numbers");var s={type:"Point",coordinates:t};return feature(s,n,o)}function lineString(t,n,o){if(o===void 0&&(o={}),t.length<2)throw new Error("coordinates must be an array of two or more positions");var s={type:"LineString",coordinates:t};return feature(s,n,o)}function featureCollection$1(t,n){n===void 0&&(n={});var o={type:"FeatureCollection"};return n.id&&(o.id=n.id),n.bbox&&(o.bbox=n.bbox),o.features=t,o}function multiLineString(t,n,o){o===void 0&&(o={});var s={type:"MultiLineString",coordinates:t};return feature(s,n,o)}function isNumber$1(t){return!isNaN(t)&&t!==null&&!Array.isArray(t)}function coordEach$1(t,n,o){if(t!==null)for(var s,c,d,h,p,y,S,P=0,L=0,F,N=t.type,z=N==="FeatureCollection",W=N==="Feature",lt=z?t.features.length:1,Pe=0;Pe<lt;Pe++){S=z?t.features[Pe].geometry:W?t.geometry:t,F=S?S.type==="GeometryCollection":!1,p=F?S.geometries.length:1;for(var se=0;se<p;se++){var mt=0,kt=0;if(h=F?S.geometries[se]:S,h!==null){y=h.coordinates;var mn=h.type;switch(P=0,mn){case null:break;case"Point":if(n(y,L,Pe,mt,kt)===!1)return!1;L++,mt++;break;case"LineString":case"MultiPoint":for(s=0;s<y.length;s++){if(n(y[s],L,Pe,mt,kt)===!1)return!1;L++,mn==="MultiPoint"&&mt++}mn==="LineString"&&mt++;break;case"Polygon":case"MultiLineString":for(s=0;s<y.length;s++){for(c=0;c<y[s].length-P;c++){if(n(y[s][c],L,Pe,mt,kt)===!1)return!1;L++}mn==="MultiLineString"&&mt++,mn==="Polygon"&&kt++}mn==="Polygon"&&mt++;break;case"MultiPolygon":for(s=0;s<y.length;s++){for(kt=0,c=0;c<y[s].length;c++){for(d=0;d<y[s][c].length-P;d++){if(n(y[s][c][d],L,Pe,mt,kt)===!1)return!1;L++}kt++}mt++}break;case"GeometryCollection":for(s=0;s<h.geometries.length;s++)if(coordEach$1(h.geometries[s],n)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function featureEach$2(t,n){if(t.type==="Feature")n(t,0);else if(t.type==="FeatureCollection")for(var o=0;o<t.features.length&&n(t.features[o],o)!==!1;o++);}function geomEach$1(t,n){var o,s,c,d,h,p,y,S,P,L,F=0,N=t.type==="FeatureCollection",z=t.type==="Feature",W=N?t.features.length:1;for(o=0;o<W;o++){for(p=N?t.features[o].geometry:z?t.geometry:t,S=N?t.features[o].properties:z?t.properties:{},P=N?t.features[o].bbox:z?t.bbox:void 0,L=N?t.features[o].id:z?t.id:void 0,y=p?p.type==="GeometryCollection":!1,h=y?p.geometries.length:1,c=0;c<h;c++){if(d=y?p.geometries[c]:p,d===null){if(n(null,F,S,P,L)===!1)return!1;continue}switch(d.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(n(d,F,S,P,L)===!1)return!1;break}case"GeometryCollection":{for(s=0;s<d.geometries.length;s++)if(n(d.geometries[s],F,S,P,L)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}F++}}function flattenEach$1(t,n){geomEach$1(t,function(o,s,c,d,h){var p=o===null?null:o.type;switch(p){case null:case"Point":case"LineString":case"Polygon":return n(feature(o,c,{bbox:d,id:h}),s,0)===!1?!1:void 0}var y;switch(p){case"MultiPoint":y="Point";break;case"MultiLineString":y="LineString";break;case"MultiPolygon":y="Polygon";break}for(var S=0;S<o.coordinates.length;S++){var P=o.coordinates[S],L={type:y,coordinates:P};if(n(feature(L,c),s,S)===!1)return!1}})}function bbox$2(t){var n=[1/0,1/0,-1/0,-1/0];return coordEach$1(t,function(o){n[0]>o[0]&&(n[0]=o[0]),n[1]>o[1]&&(n[1]=o[1]),n[2]<o[0]&&(n[2]=o[0]),n[3]<o[1]&&(n[3]=o[1])}),n}bbox$2.default=bbox$2;function getCoord(t){if(!t)throw new Error("coord is required");if(!Array.isArray(t)){if(t.type==="Feature"&&t.geometry!==null&&t.geometry.type==="Point")return t.geometry.coordinates;if(t.type==="Point")return t.coordinates}if(Array.isArray(t)&&t.length>=2&&!Array.isArray(t[0])&&!Array.isArray(t[1]))return t;throw new Error("coord must be GeoJSON Point or an Array of numbers")}function getCoords(t){if(Array.isArray(t))return t;if(t.type==="Feature"){if(t.geometry!==null)return t.geometry.coordinates}else if(t.coordinates)return t.coordinates;throw new Error("coords must be GeoJSON Feature, Geometry Object or an Array")}function getGeom(t){return t.type==="Feature"?t.geometry:t}function booleanPointInPolygon$1(t,n,o){if(o===void 0&&(o={}),!t)throw new Error("point is required");if(!n)throw new Error("polygon is required");var s=getCoord(t),c=getGeom(n),d=c.type,h=n.bbox,p=c.coordinates;if(h&&inBBox$1(s,h)===!1)return!1;d==="Polygon"&&(p=[p]);for(var y=!1,S=0;S<p.length&&!y;S++)if(inRing$1(s,p[S][0],o.ignoreBoundary)){for(var P=!1,L=1;L<p[S].length&&!P;)inRing$1(s,p[S][L],!o.ignoreBoundary)&&(P=!0),L++;P||(y=!0)}return y}function inRing$1(t,n,o){var s=!1;n[0][0]===n[n.length-1][0]&&n[0][1]===n[n.length-1][1]&&(n=n.slice(0,n.length-1));for(var c=0,d=n.length-1;c<n.length;d=c++){var h=n[c][0],p=n[c][1],y=n[d][0],S=n[d][1],P=t[1]*(h-y)+p*(y-t[0])+S*(t[0]-h)===0&&(h-t[0])*(y-t[0])<=0&&(p-t[1])*(S-t[1])<=0;if(P)return!o;var L=p>t[1]!=S>t[1]&&t[0]<(y-h)*(t[1]-p)/(S-p)+h;L&&(s=!s)}return s}function inBBox$1(t,n){return n[0]<=t[0]&&n[1]<=t[1]&&n[2]>=t[0]&&n[3]>=t[1]}function lineSegment(t){if(!t)throw new Error("geojson is required");var n=[];return flattenEach$1(t,function(o){lineSegmentFeature(o,n)}),featureCollection$1(n)}function lineSegmentFeature(t,n){var o=[],s=t.geometry;if(s!==null){switch(s.type){case"Polygon":o=getCoords(s);break;case"LineString":o=[getCoords(s)]}o.forEach(function(c){var d=createSegments(c,t.properties);d.forEach(function(h){h.id=n.length,n.push(h)})})}}function createSegments(t,n){var o=[];return t.reduce(function(s,c){var d=lineString([s,c],n);return d.bbox=bbox$1(s,c),o.push(d),c}),o}function bbox$1(t,n){var o=t[0],s=t[1],c=n[0],d=n[1],h=o<c?o:c,p=s<d?s:d,y=o>c?o:c,S=s>d?s:d;return[h,p,y,S]}var geojsonRbush$1={exports:{}};function quickselect$3(t,n,o,s,c){quickselectStep(t,n,o||0,s||t.length-1,c||defaultCompare)}function quickselectStep(t,n,o,s,c){for(;s>o;){if(s-o>600){var d=s-o+1,h=n-o+1,p=Math.log(d),y=.5*Math.exp(2*p/3),S=.5*Math.sqrt(p*y*(d-y)/d)*(h-d/2<0?-1:1),P=Math.max(o,Math.floor(n-h*y/d+S)),L=Math.min(s,Math.floor(n+(d-h)*y/d+S));quickselectStep(t,n,P,L,c)}var F=t[n],N=o,z=s;for(swap$3(t,o,n),c(t[s],F)>0&&swap$3(t,o,s);N<z;){for(swap$3(t,N,z),N++,z--;c(t[N],F)<0;)N++;for(;c(t[z],F)>0;)z--}c(t[o],F)===0?swap$3(t,o,z):(z++,swap$3(t,z,s)),z<=n&&(o=z+1),n<=z&&(s=z-1)}}function swap$3(t,n,o){var s=t[n];t[n]=t[o],t[o]=s}function defaultCompare(t,n){return t<n?-1:t>n?1:0}class RBush{constructor(n=9){this._maxEntries=Math.max(4,n),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),this.clear()}all(){return this._all(this.data,[])}search(n){let o=this.data;const s=[];if(!intersects$1(n,o))return s;const c=this.toBBox,d=[];for(;o;){for(let h=0;h<o.children.length;h++){const p=o.children[h],y=o.leaf?c(p):p;intersects$1(n,y)&&(o.leaf?s.push(p):contains$1(n,y)?this._all(p,s):d.push(p))}o=d.pop()}return s}collides(n){let o=this.data;if(!intersects$1(n,o))return!1;const s=[];for(;o;){for(let c=0;c<o.children.length;c++){const d=o.children[c],h=o.leaf?this.toBBox(d):d;if(intersects$1(n,h)){if(o.leaf||contains$1(n,h))return!0;s.push(d)}}o=s.pop()}return!1}load(n){if(!(n&&n.length))return this;if(n.length<this._minEntries){for(let s=0;s<n.length;s++)this.insert(n[s]);return this}let o=this._build(n.slice(),0,n.length-1,0);if(!this.data.children.length)this.data=o;else if(this.data.height===o.height)this._splitRoot(this.data,o);else{if(this.data.height<o.height){const s=this.data;this.data=o,o=s}this._insert(o,this.data.height-o.height-1,!0)}return this}insert(n){return n&&this._insert(n,this.data.height-1),this}clear(){return this.data=createNode$1([]),this}remove(n,o){if(!n)return this;let s=this.data;const c=this.toBBox(n),d=[],h=[];let p,y,S;for(;s||d.length;){if(s||(s=d.pop(),y=d[d.length-1],p=h.pop(),S=!0),s.leaf){const P=findItem$1(n,s.children,o);if(P!==-1)return s.children.splice(P,1),d.push(s),this._condense(d),this}!S&&!s.leaf&&contains$1(s,c)?(d.push(s),h.push(p),p=0,y=s,s=s.children[0]):y?(p++,s=y.children[p],S=!1):s=null}return this}toBBox(n){return n}compareMinX(n,o){return n.minX-o.minX}compareMinY(n,o){return n.minY-o.minY}toJSON(){return this.data}fromJSON(n){return this.data=n,this}_all(n,o){const s=[];for(;n;)n.leaf?o.push(...n.children):s.push(...n.children),n=s.pop();return o}_build(n,o,s,c){const d=s-o+1;let h=this._maxEntries,p;if(d<=h)return p=createNode$1(n.slice(o,s+1)),calcBBox$1(p,this.toBBox),p;c||(c=Math.ceil(Math.log(d)/Math.log(h)),h=Math.ceil(d/Math.pow(h,c-1))),p=createNode$1([]),p.leaf=!1,p.height=c;const y=Math.ceil(d/h),S=y*Math.ceil(Math.sqrt(h));multiSelect$1(n,o,s,S,this.compareMinX);for(let P=o;P<=s;P+=S){const L=Math.min(P+S-1,s);multiSelect$1(n,P,L,y,this.compareMinY);for(let F=P;F<=L;F+=y){const N=Math.min(F+y-1,L);p.children.push(this._build(n,F,N,c-1))}}return calcBBox$1(p,this.toBBox),p}_chooseSubtree(n,o,s,c){for(;c.push(o),!(o.leaf||c.length-1===s);){let d=1/0,h=1/0,p;for(let y=0;y<o.children.length;y++){const S=o.children[y],P=bboxArea$1(S),L=enlargedArea$1(n,S)-P;L<h?(h=L,d=P<d?P:d,p=S):L===h&&P<d&&(d=P,p=S)}o=p||o.children[0]}return o}_insert(n,o,s){const c=s?n:this.toBBox(n),d=[],h=this._chooseSubtree(c,this.data,o,d);for(h.children.push(n),extend$2(h,c);o>=0&&d[o].children.length>this._maxEntries;)this._split(d,o),o--;this._adjustParentBBoxes(c,d,o)}_split(n,o){const s=n[o],c=s.children.length,d=this._minEntries;this._chooseSplitAxis(s,d,c);const h=this._chooseSplitIndex(s,d,c),p=createNode$1(s.children.splice(h,s.children.length-h));p.height=s.height,p.leaf=s.leaf,calcBBox$1(s,this.toBBox),calcBBox$1(p,this.toBBox),o?n[o-1].children.push(p):this._splitRoot(s,p)}_splitRoot(n,o){this.data=createNode$1([n,o]),this.data.height=n.height+1,this.data.leaf=!1,calcBBox$1(this.data,this.toBBox)}_chooseSplitIndex(n,o,s){let c,d=1/0,h=1/0;for(let p=o;p<=s-o;p++){const y=distBBox$1(n,0,p,this.toBBox),S=distBBox$1(n,p,s,this.toBBox),P=intersectionArea$1(y,S),L=bboxArea$1(y)+bboxArea$1(S);P<d?(d=P,c=p,h=L<h?L:h):P===d&&L<h&&(h=L,c=p)}return c||s-o}_chooseSplitAxis(n,o,s){const c=n.leaf?this.compareMinX:compareNodeMinX$1,d=n.leaf?this.compareMinY:compareNodeMinY$1,h=this._allDistMargin(n,o,s,c),p=this._allDistMargin(n,o,s,d);h<p&&n.children.sort(c)}_allDistMargin(n,o,s,c){n.children.sort(c);const d=this.toBBox,h=distBBox$1(n,0,o,d),p=distBBox$1(n,s-o,s,d);let y=bboxMargin$1(h)+bboxMargin$1(p);for(let S=o;S<s-o;S++){const P=n.children[S];extend$2(h,n.leaf?d(P):P),y+=bboxMargin$1(h)}for(let S=s-o-1;S>=o;S--){const P=n.children[S];extend$2(p,n.leaf?d(P):P),y+=bboxMargin$1(p)}return y}_adjustParentBBoxes(n,o,s){for(let c=s;c>=0;c--)extend$2(o[c],n)}_condense(n){for(let o=n.length-1,s;o>=0;o--)n[o].children.length===0?o>0?(s=n[o-1].children,s.splice(s.indexOf(n[o]),1)):this.clear():calcBBox$1(n[o],this.toBBox)}}function findItem$1(t,n,o){if(!o)return n.indexOf(t);for(let s=0;s<n.length;s++)if(o(t,n[s]))return s;return-1}function calcBBox$1(t,n){distBBox$1(t,0,t.children.length,n,t)}function distBBox$1(t,n,o,s,c){c||(c=createNode$1(null)),c.minX=1/0,c.minY=1/0,c.maxX=-1/0,c.maxY=-1/0;for(let d=n;d<o;d++){const h=t.children[d];extend$2(c,t.leaf?s(h):h)}return c}function extend$2(t,n){return t.minX=Math.min(t.minX,n.minX),t.minY=Math.min(t.minY,n.minY),t.maxX=Math.max(t.maxX,n.maxX),t.maxY=Math.max(t.maxY,n.maxY),t}function compareNodeMinX$1(t,n){return t.minX-n.minX}function compareNodeMinY$1(t,n){return t.minY-n.minY}function bboxArea$1(t){return(t.maxX-t.minX)*(t.maxY-t.minY)}function bboxMargin$1(t){return t.maxX-t.minX+(t.maxY-t.minY)}function enlargedArea$1(t,n){return(Math.max(n.maxX,t.maxX)-Math.min(n.minX,t.minX))*(Math.max(n.maxY,t.maxY)-Math.min(n.minY,t.minY))}function intersectionArea$1(t,n){const o=Math.max(t.minX,n.minX),s=Math.max(t.minY,n.minY),c=Math.min(t.maxX,n.maxX),d=Math.min(t.maxY,n.maxY);return Math.max(0,c-o)*Math.max(0,d-s)}function contains$1(t,n){return t.minX<=n.minX&&t.minY<=n.minY&&n.maxX<=t.maxX&&n.maxY<=t.maxY}function intersects$1(t,n){return n.minX<=t.maxX&&n.minY<=t.maxY&&n.maxX>=t.minX&&n.maxY>=t.minY}function createNode$1(t){return{children:t,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function multiSelect$1(t,n,o,s,c){const d=[n,o];for(;d.length;){if(o=d.pop(),n=d.pop(),o-n<=s)continue;const h=n+Math.ceil((o-n)/s/2)*s;quickselect$3(t,h,n,o,c),d.push(n,h,h,o)}}var js$2={};(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.earthRadius=63710088e-1,t.factors={centimeters:t.earthRadius*100,centimetres:t.earthRadius*100,degrees:t.earthRadius/111325,feet:t.earthRadius*3.28084,inches:t.earthRadius*39.37,kilometers:t.earthRadius/1e3,kilometres:t.earthRadius/1e3,meters:t.earthRadius,metres:t.earthRadius,miles:t.earthRadius/1609.344,millimeters:t.earthRadius*1e3,millimetres:t.earthRadius*1e3,nauticalmiles:t.earthRadius/1852,radians:1,yards:t.earthRadius*1.0936},t.unitsFactors={centimeters:100,centimetres:100,degrees:1/111325,feet:3.28084,inches:39.37,kilometers:1/1e3,kilometres:1/1e3,meters:1,metres:1,miles:1/1609.344,millimeters:1e3,millimetres:1e3,nauticalmiles:1/1852,radians:1/t.earthRadius,yards:1.0936133},t.areaFactors={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,millimeters:1e6,millimetres:1e6,yards:1.195990046};function n(Ra,ma,yt){yt===void 0&&(yt={});var nt={type:"Feature"};return(yt.id===0||yt.id)&&(nt.id=yt.id),yt.bbox&&(nt.bbox=yt.bbox),nt.properties=ma||{},nt.geometry=Ra,nt}t.feature=n;function o(Ra,ma,yt){switch(Ra){case"Point":return s(ma).geometry;case"LineString":return p(ma).geometry;case"Polygon":return d(ma).geometry;case"MultiPoint":return L(ma).geometry;case"MultiLineString":return P(ma).geometry;case"MultiPolygon":return F(ma).geometry;default:throw new Error(Ra+" is invalid")}}t.geometry=o;function s(Ra,ma,yt){if(yt===void 0&&(yt={}),!Ra)throw new Error("coordinates is required");if(!Array.isArray(Ra))throw new Error("coordinates must be an Array");if(Ra.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!zi(Ra[0])||!zi(Ra[1]))throw new Error("coordinates must contain numbers");var nt={type:"Point",coordinates:Ra};return n(nt,ma,yt)}t.point=s;function c(Ra,ma,yt){return yt===void 0&&(yt={}),S(Ra.map(function(nt){return s(nt,ma)}),yt)}t.points=c;function d(Ra,ma,yt){yt===void 0&&(yt={});for(var nt=0,_i=Ra;nt<_i.length;nt++){var ba=_i[nt];if(ba.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(var Sc=0;Sc<ba[ba.length-1].length;Sc++)if(ba[ba.length-1][Sc]!==ba[0][Sc])throw new Error("First and last Position are not equivalent.")}var ms={type:"Polygon",coordinates:Ra};return n(ms,ma,yt)}t.polygon=d;function h(Ra,ma,yt){return yt===void 0&&(yt={}),S(Ra.map(function(nt){return d(nt,ma)}),yt)}t.polygons=h;function p(Ra,ma,yt){if(yt===void 0&&(yt={}),Ra.length<2)throw new Error("coordinates must be an array of two or more positions");var nt={type:"LineString",coordinates:Ra};return n(nt,ma,yt)}t.lineString=p;function y(Ra,ma,yt){return yt===void 0&&(yt={}),S(Ra.map(function(nt){return p(nt,ma)}),yt)}t.lineStrings=y;function S(Ra,ma){ma===void 0&&(ma={});var yt={type:"FeatureCollection"};return ma.id&&(yt.id=ma.id),ma.bbox&&(yt.bbox=ma.bbox),yt.features=Ra,yt}t.featureCollection=S;function P(Ra,ma,yt){yt===void 0&&(yt={});var nt={type:"MultiLineString",coordinates:Ra};return n(nt,ma,yt)}t.multiLineString=P;function L(Ra,ma,yt){yt===void 0&&(yt={});var nt={type:"MultiPoint",coordinates:Ra};return n(nt,ma,yt)}t.multiPoint=L;function F(Ra,ma,yt){yt===void 0&&(yt={});var nt={type:"MultiPolygon",coordinates:Ra};return n(nt,ma,yt)}t.multiPolygon=F;function N(Ra,ma,yt){yt===void 0&&(yt={});var nt={type:"GeometryCollection",geometries:Ra};return n(nt,ma,yt)}t.geometryCollection=N;function z(Ra,ma){if(ma===void 0&&(ma=0),ma&&!(ma>=0))throw new Error("precision must be a positive number");var yt=Math.pow(10,ma||0);return Math.round(Ra*yt)/yt}t.round=z;function W(Ra,ma){ma===void 0&&(ma="kilometers");var yt=t.factors[ma];if(!yt)throw new Error(ma+" units is invalid");return Ra*yt}t.radiansToLength=W;function lt(Ra,ma){ma===void 0&&(ma="kilometers");var yt=t.factors[ma];if(!yt)throw new Error(ma+" units is invalid");return Ra/yt}t.lengthToRadians=lt;function Pe(Ra,ma){return mt(lt(Ra,ma))}t.lengthToDegrees=Pe;function se(Ra){var ma=Ra%360;return ma<0&&(ma+=360),ma}t.bearingToAzimuth=se;function mt(Ra){var ma=Ra%(2*Math.PI);return ma*180/Math.PI}t.radiansToDegrees=mt;function kt(Ra){var ma=Ra%360;return ma*Math.PI/180}t.degreesToRadians=kt;function mn(Ra,ma,yt){if(ma===void 0&&(ma="kilometers"),yt===void 0&&(yt="kilometers"),!(Ra>=0))throw new Error("length must be a positive number");return W(lt(Ra,ma),yt)}t.convertLength=mn;function pi(Ra,ma,yt){if(ma===void 0&&(ma="meters"),yt===void 0&&(yt="kilometers"),!(Ra>=0))throw new Error("area must be a positive number");var nt=t.areaFactors[ma];if(!nt)throw new Error("invalid original units");var _i=t.areaFactors[yt];if(!_i)throw new Error("invalid final units");return Ra/nt*_i}t.convertArea=pi;function zi(Ra){return!isNaN(Ra)&&Ra!==null&&!Array.isArray(Ra)}t.isNumber=zi;function Sa(Ra){return!!Ra&&Ra.constructor===Object}t.isObject=Sa;function fa(Ra){if(!Ra)throw new Error("bbox is required");if(!Array.isArray(Ra))throw new Error("bbox must be an Array");if(Ra.length!==4&&Ra.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");Ra.forEach(function(ma){if(!zi(ma))throw new Error("bbox must only contain numbers")})}t.validateBBox=fa;function La(Ra){if(!Ra)throw new Error("id is required");if(["string","number"].indexOf(typeof Ra)===-1)throw new Error("id must be a number or a string")}t.validateId=La})(js$2);var js$1={};Object.defineProperty(js$1,"__esModule",{value:!0});var helpers$1=js$2;function coordEach$2(t,n,o){if(t!==null)for(var s,c,d,h,p,y,S,P=0,L=0,F,N=t.type,z=N==="FeatureCollection",W=N==="Feature",lt=z?t.features.length:1,Pe=0;Pe<lt;Pe++){S=z?t.features[Pe].geometry:W?t.geometry:t,F=S?S.type==="GeometryCollection":!1,p=F?S.geometries.length:1;for(var se=0;se<p;se++){var mt=0,kt=0;if(h=F?S.geometries[se]:S,h!==null){y=h.coordinates;var mn=h.type;switch(P=o&&(mn==="Polygon"||mn==="MultiPolygon")?1:0,mn){case null:break;case"Point":if(n(y,L,Pe,mt,kt)===!1)return!1;L++,mt++;break;case"LineString":case"MultiPoint":for(s=0;s<y.length;s++){if(n(y[s],L,Pe,mt,kt)===!1)return!1;L++,mn==="MultiPoint"&&mt++}mn==="LineString"&&mt++;break;case"Polygon":case"MultiLineString":for(s=0;s<y.length;s++){for(c=0;c<y[s].length-P;c++){if(n(y[s][c],L,Pe,mt,kt)===!1)return!1;L++}mn==="MultiLineString"&&mt++,mn==="Polygon"&&kt++}mn==="Polygon"&&mt++;break;case"MultiPolygon":for(s=0;s<y.length;s++){for(kt=0,c=0;c<y[s].length;c++){for(d=0;d<y[s][c].length-P;d++){if(n(y[s][c][d],L,Pe,mt,kt)===!1)return!1;L++}kt++}mt++}break;case"GeometryCollection":for(s=0;s<h.geometries.length;s++)if(coordEach$2(h.geometries[s],n,o)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function coordReduce(t,n,o,s){var c=o;return coordEach$2(t,function(d,h,p,y,S){h===0&&o===void 0?c=d:c=n(c,d,h,p,y,S)},s),c}function propEach(t,n){var o;switch(t.type){case"FeatureCollection":for(o=0;o<t.features.length&&n(t.features[o].properties,o)!==!1;o++);break;case"Feature":n(t.properties,0);break}}function propReduce(t,n,o){var s=o;return propEach(t,function(c,d){d===0&&o===void 0?s=c:s=n(s,c,d)}),s}function featureEach$1(t,n){if(t.type==="Feature")n(t,0);else if(t.type==="FeatureCollection")for(var o=0;o<t.features.length&&n(t.features[o],o)!==!1;o++);}function featureReduce(t,n,o){var s=o;return featureEach$1(t,function(c,d){d===0&&o===void 0?s=c:s=n(s,c,d)}),s}function coordAll(t){var n=[];return coordEach$2(t,function(o){n.push(o)}),n}function geomEach$2(t,n){var o,s,c,d,h,p,y,S,P,L,F=0,N=t.type==="FeatureCollection",z=t.type==="Feature",W=N?t.features.length:1;for(o=0;o<W;o++){for(p=N?t.features[o].geometry:z?t.geometry:t,S=N?t.features[o].properties:z?t.properties:{},P=N?t.features[o].bbox:z?t.bbox:void 0,L=N?t.features[o].id:z?t.id:void 0,y=p?p.type==="GeometryCollection":!1,h=y?p.geometries.length:1,c=0;c<h;c++){if(d=y?p.geometries[c]:p,d===null){if(n(null,F,S,P,L)===!1)return!1;continue}switch(d.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(n(d,F,S,P,L)===!1)return!1;break}case"GeometryCollection":{for(s=0;s<d.geometries.length;s++)if(n(d.geometries[s],F,S,P,L)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}F++}}function geomReduce$1(t,n,o){var s=o;return geomEach$2(t,function(c,d,h,p,y){d===0&&o===void 0?s=c:s=n(s,c,d,h,p,y)}),s}function flattenEach$2(t,n){geomEach$2(t,function(o,s,c,d,h){var p=o===null?null:o.type;switch(p){case null:case"Point":case"LineString":case"Polygon":return n(helpers$1.feature(o,c,{bbox:d,id:h}),s,0)===!1?!1:void 0}var y;switch(p){case"MultiPoint":y="Point";break;case"MultiLineString":y="LineString";break;case"MultiPolygon":y="Polygon";break}for(var S=0;S<o.coordinates.length;S++){var P=o.coordinates[S],L={type:y,coordinates:P};if(n(helpers$1.feature(L,c),s,S)===!1)return!1}})}function flattenReduce(t,n,o){var s=o;return flattenEach$2(t,function(c,d,h){d===0&&h===0&&o===void 0?s=c:s=n(s,c,d,h)}),s}function segmentEach(t,n){flattenEach$2(t,function(o,s,c){var d=0;if(o.geometry){var h=o.geometry.type;if(!(h==="Point"||h==="MultiPoint")){var p,y=0,S=0,P=0;if(coordEach$2(o,function(L,F,N,z,W){if(p===void 0||s>y||z>S||W>P){p=L,y=s,S=z,P=W,d=0;return}var lt=helpers$1.lineString([p,L],o.properties);if(n(lt,s,c,W,d)===!1)return!1;d++,p=L})===!1)return!1}}})}function segmentReduce(t,n,o){var s=o,c=!1;return segmentEach(t,function(d,h,p,y,S){c===!1&&o===void 0?s=d:s=n(s,d,h,p,y,S),c=!0}),s}function lineEach(t,n){if(!t)throw new Error("geojson is required");flattenEach$2(t,function(o,s,c){if(o.geometry!==null){var d=o.geometry.type,h=o.geometry.coordinates;switch(d){case"LineString":if(n(o,s,c,0,0)===!1)return!1;break;case"Polygon":for(var p=0;p<h.length;p++)if(n(helpers$1.lineString(h[p],o.properties),s,c,p)===!1)return!1;break}}})}function lineReduce(t,n,o){var s=o;return lineEach(t,function(c,d,h,p){d===0&&o===void 0?s=c:s=n(s,c,d,h,p)}),s}function findSegment(t,n){if(n=n||{},!helpers$1.isObject(n))throw new Error("options is invalid");var o=n.featureIndex||0,s=n.multiFeatureIndex||0,c=n.geometryIndex||0,d=n.segmentIndex||0,h=n.properties,p;switch(t.type){case"FeatureCollection":o<0&&(o=t.features.length+o),h=h||t.features[o].properties,p=t.features[o].geometry;break;case"Feature":h=h||t.properties,p=t.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":p=t;break;default:throw new Error("geojson is invalid")}if(p===null)return null;var y=p.coordinates;switch(p.type){case"Point":case"MultiPoint":return null;case"LineString":return d<0&&(d=y.length+d-1),helpers$1.lineString([y[d],y[d+1]],h,n);case"Polygon":return c<0&&(c=y.length+c),d<0&&(d=y[c].length+d-1),helpers$1.lineString([y[c][d],y[c][d+1]],h,n);case"MultiLineString":return s<0&&(s=y.length+s),d<0&&(d=y[s].length+d-1),helpers$1.lineString([y[s][d],y[s][d+1]],h,n);case"MultiPolygon":return s<0&&(s=y.length+s),c<0&&(c=y[s].length+c),d<0&&(d=y[s][c].length-d-1),helpers$1.lineString([y[s][c][d],y[s][c][d+1]],h,n)}throw new Error("geojson is invalid")}function findPoint(t,n){if(n=n||{},!helpers$1.isObject(n))throw new Error("options is invalid");var o=n.featureIndex||0,s=n.multiFeatureIndex||0,c=n.geometryIndex||0,d=n.coordIndex||0,h=n.properties,p;switch(t.type){case"FeatureCollection":o<0&&(o=t.features.length+o),h=h||t.features[o].properties,p=t.features[o].geometry;break;case"Feature":h=h||t.properties,p=t.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":p=t;break;default:throw new Error("geojson is invalid")}if(p===null)return null;var y=p.coordinates;switch(p.type){case"Point":return helpers$1.point(y,h,n);case"MultiPoint":return s<0&&(s=y.length+s),helpers$1.point(y[s],h,n);case"LineString":return d<0&&(d=y.length+d),helpers$1.point(y[d],h,n);case"Polygon":return c<0&&(c=y.length+c),d<0&&(d=y[c].length+d),helpers$1.point(y[c][d],h,n);case"MultiLineString":return s<0&&(s=y.length+s),d<0&&(d=y[s].length+d),helpers$1.point(y[s][d],h,n);case"MultiPolygon":return s<0&&(s=y.length+s),c<0&&(c=y[s].length+c),d<0&&(d=y[s][c].length-d),helpers$1.point(y[s][c][d],h,n)}throw new Error("geojson is invalid")}js$1.coordAll=coordAll,js$1.coordEach=coordEach$2,js$1.coordReduce=coordReduce,js$1.featureEach=featureEach$1,js$1.featureReduce=featureReduce,js$1.findPoint=findPoint,js$1.findSegment=findSegment,js$1.flattenEach=flattenEach$2,js$1.flattenReduce=flattenReduce,js$1.geomEach=geomEach$2,js$1.geomReduce=geomReduce$1,js$1.lineEach=lineEach,js$1.lineReduce=lineReduce,js$1.propEach=propEach,js$1.propReduce=propReduce,js$1.segmentEach=segmentEach,js$1.segmentReduce=segmentReduce;var js$3={};Object.defineProperty(js$3,"__esModule",{value:!0});var meta_1=js$1;function bbox(t){var n=[1/0,1/0,-1/0,-1/0];return meta_1.coordEach(t,function(o){n[0]>o[0]&&(n[0]=o[0]),n[1]>o[1]&&(n[1]=o[1]),n[2]<o[0]&&(n[2]=o[0]),n[3]<o[1]&&(n[3]=o[1])}),n}bbox.default=bbox,js$3.default=bbox;var rbush$3=RBush,helpers=js$2,meta=js$1,turfBBox=js$3.default,featureEach$3=meta.featureEach;meta.coordEach,helpers.polygon;var featureCollection=helpers.featureCollection;function geojsonRbush(t){var n=new rbush$3(t);return n.insert=function(o){if(o.type!=="Feature")throw new Error("invalid feature");return o.bbox=o.bbox?o.bbox:turfBBox(o),rbush$3.prototype.insert.call(this,o)},n.load=function(o){var s=[];return Array.isArray(o)?o.forEach(function(c){if(c.type!=="Feature")throw new Error("invalid features");c.bbox=c.bbox?c.bbox:turfBBox(c),s.push(c)}):featureEach$3(o,function(c){if(c.type!=="Feature")throw new Error("invalid features");c.bbox=c.bbox?c.bbox:turfBBox(c),s.push(c)}),rbush$3.prototype.load.call(this,s)},n.remove=function(o,s){if(o.type!=="Feature")throw new Error("invalid feature");return o.bbox=o.bbox?o.bbox:turfBBox(o),rbush$3.prototype.remove.call(this,o,s)},n.clear=function(){return rbush$3.prototype.clear.call(this)},n.search=function(o){var s=rbush$3.prototype.search.call(this,this.toBBox(o));return featureCollection(s)},n.collides=function(o){return rbush$3.prototype.collides.call(this,this.toBBox(o))},n.all=function(){var o=rbush$3.prototype.all.call(this);return featureCollection(o)},n.toJSON=function(){return rbush$3.prototype.toJSON.call(this)},n.fromJSON=function(o){return rbush$3.prototype.fromJSON.call(this,o)},n.toBBox=function(o){var s;if(o.bbox)s=o.bbox;else if(Array.isArray(o)&&o.length===4)s=o;else if(Array.isArray(o)&&o.length===6)s=[o[0],o[1],o[3],o[4]];else if(o.type==="Feature")s=turfBBox(o);else if(o.type==="FeatureCollection")s=turfBBox(o);else throw new Error("invalid geojson");return{minX:s[0],minY:s[1],maxX:s[2],maxY:s[3]}},n}geojsonRbush$1.exports=geojsonRbush,geojsonRbush$1.exports.default=geojsonRbush;function lineIntersect(t,n){var o={},s=[];if(t.type==="LineString"&&(t=feature(t)),n.type==="LineString"&&(n=feature(n)),t.type==="Feature"&&n.type==="Feature"&&t.geometry!==null&&n.geometry!==null&&t.geometry.type==="LineString"&&n.geometry.type==="LineString"&&t.geometry.coordinates.length===2&&n.geometry.coordinates.length===2){var c=intersects$2(t,n);return c&&s.push(c),featureCollection$1(s)}var d=geojsonRbush$1.exports();return d.load(lineSegment(n)),featureEach$2(lineSegment(t),function(h){featureEach$2(d.search(h),function(p){var y=intersects$2(h,p);if(y){var S=getCoords(y).join(",");o[S]||(o[S]=!0,s.push(y))}})}),featureCollection$1(s)}function intersects$2(t,n){var o=getCoords(t),s=getCoords(n);if(o.length!==2)throw new Error("<intersects> line1 must only contain 2 coordinates");if(s.length!==2)throw new Error("<intersects> line2 must only contain 2 coordinates");var c=o[0][0],d=o[0][1],h=o[1][0],p=o[1][1],y=s[0][0],S=s[0][1],P=s[1][0],L=s[1][1],F=(L-S)*(h-c)-(P-y)*(p-d),N=(P-y)*(d-S)-(L-S)*(c-y),z=(h-c)*(d-S)-(p-d)*(c-y);if(F===0)return null;var W=N/F,lt=z/F;if(W>=0&&W<=1&&lt>=0&&lt<=1){var Pe=c+W*(h-c),se=d+W*(p-d);return point([Pe,se])}return null}function polygonToLine(t,n){n===void 0&&(n={});var o=getGeom(t);switch(!n.properties&&t.type==="Feature"&&(n.properties=t.properties),o.type){case"Polygon":return polygonToLine$1(o,n);case"MultiPolygon":return multiPolygonToLine(o,n);default:throw new Error("invalid poly")}}function polygonToLine$1(t,n){n===void 0&&(n={});var o=getGeom(t),s=o.coordinates,c=n.properties?n.properties:t.type==="Feature"?t.properties:{};return coordsToLine(s,c)}function multiPolygonToLine(t,n){n===void 0&&(n={});var o=getGeom(t),s=o.coordinates,c=n.properties?n.properties:t.type==="Feature"?t.properties:{},d=[];return s.forEach(function(h){d.push(coordsToLine(h,c))}),featureCollection$1(d)}function coordsToLine(t,n){return t.length>1?multiLineString(t,n):lineString(t[0],n)}function booleanDisjoint(t,n){var o=!0;return flattenEach$1(t,function(s){flattenEach$1(n,function(c){if(o===!1)return!1;o=disjoint(s.geometry,c.geometry)})}),o}function disjoint(t,n){switch(t.type){case"Point":switch(n.type){case"Point":return!compareCoords(t.coordinates,n.coordinates);case"LineString":return!isPointOnLine(n,t);case"Polygon":return!booleanPointInPolygon$1(t,n)}break;case"LineString":switch(n.type){case"Point":return!isPointOnLine(t,n);case"LineString":return!isLineOnLine(t,n);case"Polygon":return!isLineInPoly(n,t)}break;case"Polygon":switch(n.type){case"Point":return!booleanPointInPolygon$1(n,t);case"LineString":return!isLineInPoly(t,n);case"Polygon":return!isPolyInPoly(n,t)}}return!1}function isPointOnLine(t,n){for(var o=0;o<t.coordinates.length-1;o++)if(isPointOnLineSegment(t.coordinates[o],t.coordinates[o+1],n.coordinates))return!0;return!1}function isLineOnLine(t,n){var o=lineIntersect(t,n);return o.features.length>0}function isLineInPoly(t,n){for(var o=0,s=n.coordinates;o<s.length;o++){var c=s[o];if(booleanPointInPolygon$1(c,t))return!0}var d=lineIntersect(n,polygonToLine(t));return d.features.length>0}function isPolyInPoly(t,n){for(var o=0,s=t.coordinates[0];o<s.length;o++){var c=s[o];if(booleanPointInPolygon$1(c,n))return!0}for(var d=0,h=n.coordinates[0];d<h.length;d++){var p=h[d];if(booleanPointInPolygon$1(p,t))return!0}var y=lineIntersect(polygonToLine(t),polygonToLine(n));return y.features.length>0}function isPointOnLineSegment(t,n,o){var s=o[0]-t[0],c=o[1]-t[1],d=n[0]-t[0],h=n[1]-t[1],p=s*h-c*d;return p!==0?!1:Math.abs(d)>=Math.abs(h)?d>0?t[0]<=o[0]&&o[0]<=n[0]:n[0]<=o[0]&&o[0]<=t[0]:h>0?t[1]<=o[1]&&o[1]<=n[1]:n[1]<=o[1]&&o[1]<=t[1]}function compareCoords(t,n){return t[0]===n[0]&&t[1]===n[1]}function booleanIntersects(t,n){var o=!1;return flattenEach$1(t,function(s){flattenEach$1(n,function(c){if(o===!0)return!0;o=!booleanDisjoint(s.geometry,c.geometry)})}),o}const d2r=Math.PI/180,MAX_ZOOM=28;function getBboxZoom(t){for(let n=0;n<MAX_ZOOM;n++){const o=1<<32-(n+1);if((t[0]&o)!==(t[2]&o)||(t[1]&o)!==(t[3]&o))return n}return MAX_ZOOM}function bboxToTile(t,n){const o=pointToTile(t[0],t[1],32),s=pointToTile(t[2],t[3],32),c=[o[0],o[1],s[0],s[1]],d=Math.min(getBboxZoom(c),typeof n<"u"?n:MAX_ZOOM);if(d===0)return[0,0,0];const h=c[0]>>>32-d,p=c[1]>>>32-d;return[h,p,d]}function pointToTile(t,n,o){var s=pointToTileFraction(t,n,o);return s[0]=Math.floor(s[0]),s[1]=Math.floor(s[1]),s}function pointToTileFraction(t,n,o){var s=Math.sin(n*d2r),c=Math.pow(2,o),d=c*(t/360+.5),h=c*(.5-.25*Math.log((1+s)/(1-s))/Math.PI);return d=d%c,d<0&&(d=d+c),[d,h,o]}function encodeHilbert3D(t,n,o,s){let c=encodeMorton3D(t,n,o);return mortonToHilbertN(c,s)}function decodeHilbert3D(t,n){const o=hilbertToMortonN(t,n);return decodeMorton3D(o)}function encodeMorton3D(t,n,o){let s=0n;return s=splitBy3(t)|splitBy3(n)<<1n|splitBy3(o)<<2n,s}function decodeMorton3D(t){let n=compactBy3(t),o=compactBy3(t>>1n),s=compactBy3(t>>2n);return[n,o,s]}function splitBy3(t){let n=BigInt(t)&BigInt("0x3ffffffffff");return n=(n|n<<64n)&BigInt("0x3ff0000000000000000ffffffff"),n=(n|n<<32n)&BigInt("0x3ff00000000ffff00000000ffff"),n=(n|n<<16n)&BigInt("0x30000ff0000ff0000ff0000ff0000ff"),n=(n|n<<8n)&BigInt("0x300f00f00f00f00f00f00f00f00f00f"),n=(n|n<<4n)&BigInt("0x30c30c30c30c30c30c30c30c30c30c3"),n=(n|n<<2n)&BigInt("0x9249249249249249249249249249249"),n}function compactBy3(t){let n=t&BigInt("0x9249249249249249249249249249249");return n=(n|n>>2n)&BigInt("0x30c30c30c30c30c30c30c30c30c30c3"),n=(n|n>>4n)&BigInt("0x300f00f00f00f00f00f00f00f00f00f"),n=(n|n>>8n)&BigInt("0x30000ff0000ff0000ff0000ff0000ff"),n=(n|n>>16n)&BigInt("0x3ff00000000ffff00000000ffff"),n=(n|n>>32n)&BigInt("0x3ff0000000000000000ffffffff"),n=(n|n>>64n)&BigInt("0x3ffffffffff"),Number(n)}const mortonToHilbertTable=[48,33,27,34,47,78,28,77,66,29,51,52,65,30,72,63,76,95,75,24,53,54,82,81,18,3,17,80,61,4,62,15,0,59,71,60,49,50,86,85,84,83,5,90,79,56,6,89,32,23,1,94,11,12,2,93,42,41,13,14,35,88,36,31,92,37,87,38,91,74,8,73,46,45,9,10,7,20,64,19,70,25,39,16,69,26,44,43,22,55,21,68,57,40,58,67],hilbertToMortonTable=[48,33,35,26,30,79,77,44,78,68,64,50,51,25,29,63,27,87,86,74,72,52,53,89,83,18,16,1,5,60,62,15,0,52,53,57,59,87,86,66,61,95,91,81,80,2,6,76,32,2,6,12,13,95,91,17,93,41,40,36,38,10,11,31,14,79,77,92,88,33,35,82,70,10,11,23,21,41,40,4,19,25,29,47,46,68,64,34,45,60,62,71,67,18,16,49];function transformCurve(t,n,o){let s=0,c=0n;for(let d=3*(n-1);d>=0;d-=3)s=o[s|Number(t>>BigInt(d)&7n)],c=c<<3n|BigInt(s&7),s&=-8;return c}function mortonToHilbertN(t,n){return transformCurve(t,n,mortonToHilbertTable)}function hilbertToMortonN(t,n){return transformCurve(t,n,hilbertToMortonTable)}function generateHilbertIndex(t){const n=t.z>0?t.f+2**(t.z-1):0;return encodeHilbert3D(t.x,t.y,n,t.z)}function parseHilbertIndex(t,n){if(n===0)return{z:0,f:0,x:0,y:0};const[o,s,c]=decodeHilbert3D(t,n);return{f:c-2**(n-1),x:o,y:s,z:n}}function generateHilbertTilehash(t,n){return"H"+t.toString(8).padStart(n,"0").split("").map(o=>(parseInt(o)+1).toString()).join("")}function parseHilbertTilehash(t){if(t[0]!=="H")return;const n=t.substring(1).split("").map(s=>(parseInt(s)-1).toString()).join(""),o=BigInt("0o"+n);return parseHilbertIndex(o,n.length)}const DEFAULT_ZOOM=25;class Space{constructor(n,o){if(typeof n=="string"){let s=parseZFXYString(n)||parseHilbertTilehash(n)||parseZFXYTilehash(n);if(s)this.zfxy=s,this._regenerateAttributesFromZFXY();else throw new Error(`parse ZFXY failed with input: ${n}`);return}else if(isZFXYTile(n)){this.zfxy=n,this._regenerateAttributesFromZFXY();return}else this.zfxy=calculateZFXY({...n,zoom:typeof o<"u"?o:DEFAULT_ZOOM});this._regenerateAttributesFromZFXY()}up(n=1){return this.move({f:n})}down(n=1){return this.move({f:-n})}north(n=1){return this.move({y:n})}south(n=1){return this.move({y:-n})}east(n=1){return this.move({x:n})}west(n=1){return this.move({x:-n})}move(n){const o=new Space(this.zfxy);return o.zfxy=zfxyWraparound({z:o.zfxy.z,f:o.zfxy.f+(n.f||0),x:o.zfxy.x+(n.x||0),y:o.zfxy.y+(n.y||0)}),o._regenerateAttributesFromZFXY(),o}parent(n){const o=typeof n>"u"?1:this.zfxy.z-n;return new Space(getParent(this.zfxy,o))}children(){return getChildren(this.zfxy).map(n=>new Space(n))}surroundings(){return[...getSurrounding(this.zfxy).filter(({z:n,f:o,x:s,y:c})=>`/${n}/${o}/${s}/${c}`!==this.zfxyStr).map(n=>new Space(n)),...getSurrounding(this.up().zfxy).map(n=>new Space(n)),...getSurrounding(this.down().zfxy).map(n=>new Space(n))]}contains(n){const o=this.toGeoJSON(),s={type:"Point",coordinates:[n.lng,n.lat]},c=this.alt,d=getFloor({...this.zfxy,f:this.zfxy.f+1});return booleanIntersects(o,s)&&(typeof n.alt<"u"?n.alt>=c&&n.alt<d:!0)}toGeoJSON(){const[n,o]=getBBox(this.zfxy);return{type:"Polygon",coordinates:[[[n.lng,n.lat],[n.lng,o.lat],[o.lng,o.lat],[o.lng,n.lat],[n.lng,n.lat]]]}}vertices3d(){const[n,o]=getBBox(this.zfxy),s=getFloor(this.zfxy),c=getFloor({...this.zfxy,f:this.zfxy.f+1});return[[n.lng,n.lat,s],[n.lng,o.lat,s],[o.lng,o.lat,s],[o.lng,n.lat,s],[n.lng,n.lat,c],[n.lng,o.lat,c],[o.lng,o.lat,c],[o.lng,n.lat,c]]}static getSpaceById(n,o){return new Space(n,o)}static getSpaceByLocation(n,o){return new Space(n,o)}static getSpaceByZFXY(n){return new Space(n)}static boundingSpaceForGeometry(n,o){o=o||25;const s=bbox$2(n),c=bboxToTile(s,o),[d,h,p]=c;return new Space({x:d,y:h,z:p,f:0})}static spacesForGeometry(n,o){const s=o;if(s===0)return[new Space("0/0/0/0")];if(n.type==="GeometryCollection")throw new Error("GeometryCollection not supported");const c=bbox$2(n),d=pointToTile(c[0],c[1],32),h=pointToTile(c[2],c[3],32),p=Math.min(d[0],h[0])>>>32-s,y=Math.min(d[1],h[1])>>>32-s,S=(Math.max(h[0],d[0])>>>32-s)+1,P=(Math.max(h[1],d[1])>>>32-s)+1,L=[];for(let F=p;F<=S;F++)for(let N=y;N<=P;N++){const z=new Space({x:F,y:N,z:s,f:0});booleanIntersects(n,z.toGeoJSON())&&L.push(z)}return L}_regenerateAttributesFromZFXY(){this.alt=getFloor(this.zfxy),this.center=getCenterLngLatAlt(this.zfxy),this.zoom=this.zfxy.z,this.id=this.tilehash=generateTilehash(this.zfxy),this.zfxyStr=`/${this.zfxy.z}/${this.zfxy.f}/${this.zfxy.x}/${this.zfxy.y}`,this.hilbertIndex=generateHilbertIndex(this.zfxy),this.hilbertTilehash=generateHilbertTilehash(this.hilbertIndex,this.zfxy.z)}}const getRectangeParamsFromSpace=t=>{const n=t.vertices3d(),o=[n[0][0],n[1][1],n[2][0],n[3][1]],s=n[0][2],c=n[4][2];return{wsen:o,height:s,extrudedHeight:c}},createSpatialIdSpace=(t,n,o,s)=>{const c=new Space({lat:n,lng:t,alt:o},s),{wsen:d,height:h,extrudedHeight:p}=getRectangeParamsFromSpace(c);return{id:v4(),space:c,wsen:d,height:h,extrudedHeight:p}},createSpatialIdFloorSpaces=(t,n=SPATIALID_DEFAULT_MAX_HEIGHT,o=SPATIALID_DEFAULT_COLOR)=>{const s=[],{height:c,extrudedHeight:d}=getRectangeParamsFromSpace(t),h=d-c;for(let p=0;p<n;p+=h){const y=new Space({lat:t.center.lat,lng:t.center.lng,alt:p},t.zoom),{wsen:S,height:P,extrudedHeight:L}=getRectangeParamsFromSpace(y);s.push({id:v4(),space:y,wsen:S,height:P,extrudedHeight:L,type:"floor",color:o})}return s},getSpaceData=t=>({id:t.id,center:t.center,alt:t.alt,zoom:t.zoom,zfxy:t.zfxy,zfxyStr:t.zfxyStr,tilehash:t.tilehash,hilbertTilehash:t.hilbertTilehash,hilbertIndex:t.hilbertIndex.toString(),vertices:t.vertices3d()}),SPATIALID_DEFAULT_ZOOM=20,SPATIALID_DEFAULT_MAX_HEIGHT=1e3,SPATIALID_DEFAULT_COLOR="#00bebe",SPATIALID_DEFAULT_DATA_ONLY=!1,SPATIALID_DEFAULT_RIGHT_CLICK_TO_EXIT=!0,useHooks$8=({ref:t,engineRef:n,terrainEnabled:o,interactionMode:s,overrideInteractionMode:c,onMount:d})=>{const[h,p]=React.useState("idle"),[y,S]=React.useState([]),[P,L]=React.useState([]),[F,N]=React.useState(null),z=React.useMemo(()=>[...y,...P,...F?[F]:[]],[y,P,F]),[W,lt]=React.useState(null),[Pe,se]=React.useState(null),[mt,kt]=React.useState({zoom:SPATIALID_DEFAULT_ZOOM,maxHeight:SPATIALID_DEFAULT_MAX_HEIGHT,color:SPATIALID_DEFAULT_COLOR,dataOnly:SPATIALID_DEFAULT_DATA_ONLY,rightClickToExit:SPATIALID_DEFAULT_RIGHT_CLICK_TO_EXIT}),mn=React.useCallback(Ru=>{p("coordinate"),kt(Vd=>({...Vd,...Ru})),c==null||c("spatialId")},[c]),pi=React.useRef(s);pi.current=s;const zi=React.useCallback(()=>{var Ru;p("idle"),N(null),lt(null),se(null),L([]),c==null||c(pi.current==="spatialId"?"default":pi.current??"default"),(Ru=n.current)==null||Ru.requestRender()},[c,n]),Sa=React.useCallback(Ru=>{var Vd;if(h!=="idle"&&!Nl.current){if(h==="coordinate"){if(!F||Ru.lat===void 0||Ru.lng===void 0)return;p("floor"),se([Ru.lng,Ru.lat,o?Ru.height??0:0]),lt(((Vd=n.current)==null?void 0:Vd.toXYZ(Ru.lng,Ru.lat,Ru.height??0,{useGlobeEllipsoid:!o}))??null),N(cf=>cf?{...cf,type:"selector",color:mt.color}:null);const Gd=createSpatialIdFloorSpaces(F.space,mt.maxHeight,mt.color);L(Gd)}else if(h==="floor"){if(!F)return;const Gd={...F,type:"confirmed",color:mt.color};mt.dataOnly||S(uf=>[...uf,Gd]),zi();const cf=getSpaceData(Gd.space);pu.current.forEach(uf=>uf(cf))}}},[h,o,n,F,mt,zi]),fa=React.useCallback(Ru=>{var Vd;if(h!=="idle"&&!Nl.current){if(h==="coordinate"){if(Ru.lat===void 0||Ru.lng===void 0)return;const Gd=createSpatialIdSpace(Ru.lng,Ru.lat,o?Ru.height??0:0,mt.zoom);if(Gd.space.id===(F==null?void 0:F.space.id))return;N({...Gd,type:"coordinate",color:mt.color})}else if(h==="floor"){if(Ru.x===void 0||Ru.y===void 0||W===null||Pe===null)return;const Gd=((Vd=n.current)==null?void 0:Vd.getExtrudedHeight(W,[Ru.x,Ru.y],!0))??0;if(Pe[2]+Gd>mt.maxHeight)return;const cf=createSpatialIdSpace(Pe[0],Pe[1],Pe[2]+Gd,mt.zoom);if(cf.space.id===(F==null?void 0:F.space.id)||cf.space.zfxy.f<0)return;N({...cf,type:"selector",color:mt.color})}}},[h,F,W,Pe,n,o,mt]),La=React.useCallback(()=>{var Ru;h!=="idle"&&(h==="coordinate"&&mt.rightClickToExit?zi():h==="floor"&&(N(null),lt(null),se(null),L([]),p("coordinate")),(Ru=n.current)==null||Ru.requestRender())},[h,mt,n,zi]),Ra=React.useRef(!1),ma=React.useRef(Sa);ma.current=Sa;const yt=React.useCallback(Ru=>{ma.current(Ru)},[]),nt=React.useRef(fa);nt.current=fa;const _i=React.useCallback(Ru=>{nt.current(Ru)},[]),ba=React.useRef(La);ba.current=La;const Sc=React.useCallback(()=>{ba.current()},[]);React.useEffect(()=>{Ra.current||!n.current||(Ra.current=!0,n.current.onMouseUp(yt),n.current.onMouseMove(_i),n.current.onRightClick(Sc))},[n,yt,_i,Sc]);const ms=React.useRef(h);ms.current=h;const Xs=React.useRef(zi);Xs.current=zi,React.useEffect(()=>{Nl.current||s!=="spatialId"&&ms.current!=="idle"&&Xs.current()},[s]);const pu=React.useRef([]),yu=React.useCallback(Ru=>{pu.current.push(Ru)},[]);React.useImperativeHandle(t,()=>({pickSpace:mn,onSpacePick:yu,exitPickSpace:zi}),[mn,yu,zi]);const Nl=React.useRef(!1);return React.useEffect(()=>{const Ru=Vd=>{Vd.code==="Space"&&ms.current!=="idle"&&(Nl.current=!0,c==null||c("move"))};return window.addEventListener("keydown",Ru),()=>{window.removeEventListener("keydown",Ru)}},[c]),React.useEffect(()=>window.addEventListener("keyup",Ru=>{Ru.code==="Space"&&Nl.current&&(Nl.current=!1,c==null||c("spatialId"))}),[c]),React.useEffect(()=>{d==null||d()},[d]),{spaces:z}},SpatialId=({engineRef:t,terrainEnabled:n,interactionMode:o,overrideInteractionMode:s,onMount:c},d)=>{const{spaces:h}=useHooks$8({ref:d,engineRef:t,terrainEnabled:n,interactionMode:o,overrideInteractionMode:s,onMount:c});return h.length>0?h.map(p=>jsxRuntimeExports.jsx(SpatialIdSpace,{space:p},p.id)):null},SpatialId$1=React.forwardRef(SpatialId);/*! (c) Andrea Giammarchi - ISC */var self$1={};try{self$1.EventTarget=new EventTarget().constructor}catch(t){(function(n,o){var s=n.create,c=n.defineProperty,d=h.prototype;p(d,"addEventListener",function(S,P,L){for(var F=o.get(this),N=F[S]||(F[S]=[]),z=0,W=N.length;z<W;z++)if(N[z].listener===P)return;N.push({target:this,listener:P,options:L})}),p(d,"dispatchEvent",function(S){var P=o.get(this),L=P[S.type];return L&&(p(S,"target",this),p(S,"currentTarget",this),L.slice(0).some(y,S),delete S.currentTarget,delete S.target),!0}),p(d,"removeEventListener",function(S,P){for(var L=o.get(this),F=L[S]||(L[S]=[]),N=0,z=F.length;N<z;N++)if(F[N].listener===P){F.splice(N,1);return}}),self$1.EventTarget=h;function h(){o.set(this,s(null))}function p(S,P,L){c(S,P,{configurable:!0,writable:!0,value:L})}function y(S){var P=S.options;return P&&P.once&&S.target.removeEventListener(this.type,S.listener),typeof S.listener=="function"?S.listener.call(S.target,this):S.listener.handleEvent(this),this._stopImmediatePropagationFlag}})(Object,new WeakMap)}const EventTarget$1=self$1.EventTarget;function events(){const t=new EventTarget$1,n=new Map,o=(y,S)=>{let P=n.get(y);P||(P=new Map,n.set(y,P));let L=P.get(S);return L||(L=F=>{S(...F.detail)},P.set(S,L)),L},s=(y,S)=>{var P;(P=n.get(y))==null||P.delete(S)},c=(y,S)=>{const P=o(y,S);t.addEventListener(String(y),P)},d=(y,S)=>{const P=o(y,S);t.removeEventListener(String(y),P),s(y,P)},h=(y,S)=>{const P=o(y,S);t.addEventListener(String(y),P,{once:!0})};return[{get on(){return c},get off(){return d},get once(){return h}},(y,...S)=>t.dispatchEvent(new CustomEvent(String(y),{detail:S}))]}function mergeEvents(t,n,o){const s=o.reduce((c,d)=>({...c,[d]:(...h)=>{n(d,...h)}}),{});for(const c of Object.keys(s))t.on(c,s[c]);return()=>{for(const c of Object.keys(s))t.off(c,s[c])}}function MapFn({engines:t,engine:n,isBuilt:o,isEditable:s,clusters:c,hiddenLayers:d,layers:h,overrides:p,timelineManagerRef:y,interactionMode:S,selectedFeature:P,cursor:L,onLayerSelect:F,overrideInteractionMode:N,onSketchTypeChange:z,onSketchFeatureCreate:W,onSketchPluginFeatureCreate:lt,onSketchFeatureUpdate:Pe,onSketchPluginFeatureUpdate:se,onSketchFeatureDelete:mt,onSketchPluginFeatureDelete:kt,featureFlags:mn=INTERACTION_MODES.default,onMount:pi,onAPIReady:zi,...Sa},fa){var gf,hf;const La=n?t==null?void 0:t[n]:void 0,Ra=La==null?void 0:La.component,{engineRef:ma,layersRef:yt,sketchRef:nt,spatialIdRef:_i,selectedLayer:ba,requestingRenderMode:Sc,handleLayerSelect:ms,handleEngineLayerSelect:Xs,sketchEditingFeature:pu,setSketchEditingFeature:yu,handleEngineMount:Nl,handleLayersMount:Ru,handleSketchMount:Vd,handleSpatialIdMount:Gd}=useHooks$c({ref:fa,timelineManagerRef:y,cursor:L,onLayerSelect:F,onMount:pi,onAPIReady:zi}),cf=React.useMemo(()=>({layerId:ba.layerId,featureId:ba.featureId}),[ba.layerId,ba.featureId]),uf=React.useMemo(()=>ba.reason,[ba.reason]);return Ra?jsxRuntimeExports.jsxs(Ra,{ref:ma,isBuilt:o,isEditable:s,selectedLayerId:cf,layerSelectionReason:uf,layersRef:yt,requestingRenderMode:Sc,timelineManagerRef:y,onLayerSelect:Xs,featureFlags:mn,onMount:Nl,...Sa,children:[jsxRuntimeExports.jsx(Layers$1,{ref:yt,engineRef:ma,clusters:c,hiddenLayers:d,isBuilt:o,isEditable:s,layers:h,overrides:p,selectedLayer:ba,Feature:La==null?void 0:La.featureComponent,clusterComponent:La==null?void 0:La.clusterComponent,delegatedDataTypes:La.delegatedDataTypes,meta:Sa.meta,viewerProperty:Sa.property,requestingRenderMode:Sc,sketchEditingFeature:pu,onLayerSelect:ms,onMount:Ru}),jsxRuntimeExports.jsx(Sketch$1,{ref:nt,layersRef:yt,engineRef:ma,interactionMode:S,selectedFeature:P,SketchComponent:La==null?void 0:La.sketchComponent,onLayerSelect:ms,overrideInteractionMode:N,onSketchTypeChange:z,onSketchFeatureCreate:W,onSketchPluginFeatureCreate:lt,onSketchFeatureUpdate:Pe,onSketchPluginFeatureUpdate:se,onSketchFeatureDelete:mt,onSketchPluginFeatureDelete:kt,sketchEditingFeature:pu,onSketchEditFeature:yu,onMount:Vd}),jsxRuntimeExports.jsx(SpatialId$1,{ref:_i,engineRef:ma,interactionMode:S,terrainEnabled:!!((hf=(gf=Sa.property)==null?void 0:gf.terrain)!=null&&hf.enabled),overrideInteractionMode:N,onMount:Gd})]}):null}const Map$1=React.forwardRef(MapFn),ErrorBoundaryContext=React.createContext(null),initialState={didCatch:!1,error:null};class ErrorBoundary extends React.Component{constructor(n){super(n),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=initialState}static getDerivedStateFromError(n){return{didCatch:!0,error:n}}resetErrorBoundary(){const{error:n}=this.state;if(n!==null){for(var o,s,c=arguments.length,d=new Array(c),h=0;h<c;h++)d[h]=arguments[h];(o=(s=this.props).onReset)===null||o===void 0||o.call(s,{args:d,reason:"imperative-api"}),this.setState(initialState)}}componentDidCatch(n,o){var s,c;(s=(c=this.props).onError)===null||s===void 0||s.call(c,n,o)}componentDidUpdate(n,o){const{didCatch:s}=this.state,{resetKeys:c}=this.props;if(s&&o.error!==null&&hasArrayChanged(n.resetKeys,c)){var d,h;(d=(h=this.props).onReset)===null||d===void 0||d.call(h,{next:c,prev:n.resetKeys,reason:"keys"}),this.setState(initialState)}}render(){const{children:n,fallbackRender:o,FallbackComponent:s,fallback:c}=this.props,{didCatch:d,error:h}=this.state;let p=n;if(d){const y={error:h,resetErrorBoundary:this.resetErrorBoundary};if(React.isValidElement(c))p=c;else if(typeof o=="function")p=o(y);else if(s)p=React.createElement(s,y);else throw h}return React.createElement(ErrorBoundaryContext.Provider,{value:{didCatch:d,error:h,resetErrorBoundary:this.resetErrorBoundary}},p)}}function hasArrayChanged(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return t.length!==n.length||t.some((o,s)=>!Object.is(o,n[s]))}const context$1=React.createContext(void 0),useVisualizer=()=>{const t=React.useContext(context$1);if(!t)throw new Error("Visualizer is not declared. You have to use this hook inside of Visualizer");return t},filterMapRefToContext=t=>t,VisualizerProvider=({mapRef:t,children:n})=>{const o=React.useMemo(()=>filterMapRefToContext(t),[t]);return jsxRuntimeExports.jsx(context$1.Provider,{value:o,children:n})},coreContext=React.createContext({}),Cluster=({property:t,children:n})=>{const{clusterPixelRange:o=15,clusterMinSize:s=3,clusterLabelTypography:c={fontFamily:"sans-serif",fontSize:30,fontWeight:400,color:"#FFF",textAlign:"center",bold:!1,italic:!1,underline:!1},clusterImage:d,clusterImageWidth:h,clusterImageHeight:p}=(t==null?void 0:t.default)??{},y=React.useMemo(()=>new Cesium$1.EntityCluster({enabled:!0,pixelRange:15,minimumClusterSize:2,clusterBillboards:!0,clusterLabels:!0,clusterPoints:!0}),[]);return React.useEffect(()=>{const S=React.Children.count(n)<s,P=y==null?void 0:y.clusterEvent.addEventListener((L,F)=>{F.label.font=toCSSFont(c,{fontSize:30}),F.label.horizontalOrigin=c.textAlign==="right"?Cesium$1.HorizontalOrigin.LEFT:c.textAlign==="left"?Cesium$1.HorizontalOrigin.RIGHT:Cesium$1.HorizontalOrigin.CENTER,F.label.verticalOrigin=Cesium$1.VerticalOrigin.CENTER,F.label.fillColor=Cesium$1.Color.fromCssColorString(c.color??"#FFF"),F.label.eyeOffset=new Cesium$1.Cartesian3(0,0,-5),F.billboard.show=!0,F.billboard.image=d,F.billboard.height=p,F.billboard.width=h,y.minimumClusterSize=S?React.Children.count(n):s});return y.enabled=!S,y.pixelRange=0,y.pixelRange=o,()=>{P()}},[s,o,c,d,p,h,n,y]),y?jsxRuntimeExports.jsx(Os$1,{show:!0,clustering:y,children:n}):null};function ReearthClock({timelineManagerRef:t}){var z,W;const{start:n,stop:o,current:s}=((z=t==null?void 0:t.current)==null?void 0:z.computedTimeline)??{},{animation:c,stepType:d,rangeType:h,multiplier:p}=((W=t==null?void 0:t.current)==null?void 0:W.options)??{},y=React.useMemo(()=>n?Cesium$1.JulianDate.fromDate(n):void 0,[n]),S=React.useMemo(()=>o?Cesium$1.JulianDate.fromDate(o):void 0,[o]),P=React.useMemo(()=>s?Cesium$1.JulianDate.fromDate(s):void 0,[s]),L=d==="fixed"?Cesium$1.ClockStep.TICK_DEPENDENT:Cesium$1.ClockStep.SYSTEM_CLOCK_MULTIPLIER,F=p??1,N=React.useCallback(lt=>{var mt,kt;const Pe=Cesium$1.JulianDate.toDate(lt.startTime),se=Cesium$1.JulianDate.toDate(lt.stopTime);(kt=(mt=t==null?void 0:t.current)==null?void 0:mt.handleTick)==null||kt.call(mt,Cesium$1.JulianDate.toDate(lt.currentTime),{start:Pe,stop:se})},[t]);return jsxRuntimeExports.jsx(Ms$1,{shouldAnimate:c,canAnimate:c,startTime:y,stopTime:S,currentTime:P,clockStep:L,multiplier:F,clockRange:h?rangeTypes[h]:void 0,onTick:N})}const rangeTypes={unbounded:Cesium$1.ClockRange.UNBOUNDED,clamped:Cesium$1.ClockRange.CLAMPED,bounced:Cesium$1.ClockRange.LOOP_STOP},DEFAULT_SCREEN_SPACE_CAMERA_ASSIGNMENTS={translateEventTypes:Cesium$1.CameraEventType.LEFT_DRAG,zoomEventTypes:[Cesium$1.CameraEventType.RIGHT_DRAG,Cesium$1.CameraEventType.WHEEL,Cesium$1.CameraEventType.PINCH],rotateEventTypes:Cesium$1.CameraEventType.LEFT_DRAG,tiltEventTypes:[Cesium$1.CameraEventType.MIDDLE_DRAG,Cesium$1.CameraEventType.PINCH,{eventType:Cesium$1.CameraEventType.LEFT_DRAG,modifier:Cesium$1.KeyboardEventModifier.CTRL},{eventType:Cesium$1.CameraEventType.RIGHT_DRAG,modifier:Cesium$1.KeyboardEventModifier.CTRL}],lookEventTypes:[{eventType:Cesium$1.CameraEventType.LEFT_DRAG,modifier:Cesium$1.KeyboardEventModifier.SHIFT}]},layerIdField="__reearth_layer_id",defaultImageSize=50,drawIcon=(t,n,o,s="none",c=!1,d="rgba(0, 0, 0, 0.7)",h=3,p=0,y=0)=>{const S=document.createElement("canvas"),P=S.getContext("2d");if(!(!t||!P))return P.save(),S.width=n+h,S.height=o+h,P.shadowBlur=h,P.shadowOffsetX=p,P.shadowOffsetY=y,P.globalCompositeOperation="source-over",P.clearRect(0,0,S.width,S.height),P.drawImage(t,(S.width-n)/2,(S.height-o)/2,n,o),s==="circle"?(P.fillStyle="black",P.globalCompositeOperation="destination-in",P.arc(n/2,o/2,Math.min(n,o)/2,0,2*Math.PI),P.fill(),c&&(P.shadowColor=d,P.globalCompositeOperation="destination-over",P.fillStyle="black",P.arc(n/2,o/2,Math.min(n,o)/2,0,2*Math.PI),P.fill())):c&&(P.shadowColor=d,P.globalCompositeOperation="destination-over",P.fillStyle="black",P.rect((S.width-n)/2,(S.height-o)/2,n,o),P.fill()),P.restore(),S.toDataURL()},useIcon=({image:t,imageSize:n,crop:o,shadow:s,shadowColor:c,shadowBlur:d,shadowOffsetX:h,shadowOffsetY:p})=>{const y=useImage(t),S=y?typeof n=="number"?Math.floor(y.width*n):Math.min(defaultImageSize,y.width):0,P=y?Math.floor(typeof n=="number"?y.height*n:S/y.width*y.height):0;return[React.useMemo(()=>drawIcon(y,S,P,o,s,c,d,h,p),[o,P,y,s,d,c,h,p,S])??"",S,P]},ho$1=t=>({left:Cesium$1.HorizontalOrigin.LEFT,center:Cesium$1.HorizontalOrigin.CENTER,right:Cesium$1.HorizontalOrigin.RIGHT,"":void 0})[t||""],vo$1=t=>({top:Cesium$1.VerticalOrigin.TOP,center:Cesium$1.VerticalOrigin.CENTER,baseline:Cesium$1.VerticalOrigin.BASELINE,bottom:Cesium$1.VerticalOrigin.BOTTOM,"":void 0})[t||""],getLocationFromScreen=(t,n,o,s=!1)=>{if(!t)return;const c=t.camera,d=t.globe.ellipsoid;let h;if(s){const P=c.getPickRay(new Cesium$1.Cartesian2(n,o));P&&(h=t.globe.pick(P,t))}if(h||(h=c==null?void 0:c.pickEllipsoid(new Cesium$1.Cartesian2(n,o),d)),!h)return;const{latitude:p,longitude:y,height:S}=d.cartesianToCartographic(h);return{lat:Cesium$1.Math.toDegrees(p),lng:Cesium$1.Math.toDegrees(y),height:S}},getRayEllipsoidIntersection=(t,n,o)=>{const s=Cesium$1.IntersectionTests.rayEllipsoid(t,n);if(!s){const c=Cesium$1.IntersectionTests.grazingAltitudeLocation(t,n);return o?c.clone(o):c}return Cesium$1.Ray.getPoint(t,s.start,o)},createRayFromCamera=t=>{const n=new Cesium$1.Ray;return t.positionWC.clone(n.origin),t.directionWC.clone(n.direction),n},getCameraEllipsoidIntersection=(t,n,o)=>{let s;const{camera:c,globe:d}=t;if(n instanceof Cesium$1.Cartesian2){if(s=c.getPickRay(n,new Cesium$1.Ray),!s)return}else s=createRayFromCamera(c),o=n;return getRayEllipsoidIntersection(s,d.ellipsoid,o)},getCameraTerrainIntersection=t=>{const n=createRayFromCamera(t.camera);return t.globe.pick(n,t)},cartesianToLatLngHeight=(t,n)=>{const o=Cesium$1.Cartographic.fromCartesian(t,n.globe.ellipsoid);return{lng:Cesium$1.Math.toDegrees(o.longitude),lat:Cesium$1.Math.toDegrees(o.latitude),height:o.height}},flyTo=(t,n,o)=>{if(!t||!n)return()=>{};const s=animateFOV({fov:n.fov,camera:t,duration:o==null?void 0:o.duration,easing:o==null?void 0:o.easing}),c=typeof n.lat=="number"&&typeof n.lng=="number"&&typeof n.height=="number"?Cesium$1.Cartesian3.fromDegrees(n.lng,n.lat,n.height):void 0;return c&&t.flyTo({destination:c,orientation:{heading:n.heading,pitch:n.pitch,roll:n.roll},duration:(o==null?void 0:o.duration)??0,easingFunction:o==null?void 0:o.easing}),()=>{s==null||s(),t==null||t.cancelFlight()}},lookAt=(t,n,o)=>{if(!t||!n)return()=>{};const s=animateFOV({fov:n.fov,camera:t,duration:o==null?void 0:o.duration,easing:o==null?void 0:o.easing}),c=typeof n.lat=="number"&&typeof n.lng=="number"&&typeof n.height=="number"?Cesium$1.Cartesian3.fromDegrees(n.lng,n.lat,n.height):void 0;return c&&t.flyToBoundingSphere(new Cesium$1.BoundingSphere(c,n.radius),{offset:n.heading!==void 0||n.pitch!==void 0||n.range!==void 0?new Cesium$1.HeadingPitchRange(n.heading,n.pitch,n.range):void 0,duration:o==null?void 0:o.duration,easingFunction:o==null?void 0:o.easing}),()=>{s==null||s(),t==null||t.cancelFlight()}},lookAtWithoutAnimation=(t,n)=>{if(!n)return;const o=typeof n.lat=="number"&&typeof n.lng=="number"?Cesium$1.Cartesian3.fromDegrees(n.lng,n.lat,n.height):void 0;o&&t.camera.lookAtTransform(Cesium$1.Matrix4.fromTranslation(o))},animateFOV=({fov:t,camera:n,easing:o,duration:s})=>{if(typeof t=="number"&&n.frustum instanceof Cesium$1.PerspectiveFrustum&&typeof n.frustum.fov=="number"&&n.frustum.fov!==t){const c=n.frustum.fov;return tweenInterval(d=>{n.frustum instanceof Cesium$1.PerspectiveFrustum&&(n.frustum.fov=(t-c)*d+c)},o||"inOutCubic",(s??0)*1e3)}},getCenterCamera=({camera:t,scene:n})=>{const o=new Cesium$1.Cartesian3,s=t.getPickRay(t.positionWC);if(s)return s.origin=t.positionWC,s.direction=t.directionWC,n.globe.pick(s,n,o)},zoom=({viewer:t,relativeAmount:n},o)=>{const{camera:s,scene:c}=t;if(c.mode!==Cesium$1.SceneMode.SCENE3D){const F=getCamera(t);flyTo(s,{...F,height:((F==null?void 0:F.height)||1)*n},{duration:.5});return}const h=getCenterCamera({camera:s,scene:c})||Cesium$1.IntersectionTests.grazingAltitudeLocation(new Cesium$1.Ray(c.globe.ellipsoid.cartographicToCartesian(s.positionCartographic),s.directionWC),c.globe.ellipsoid);if(!h)return;const p={heading:s.heading,pitch:s.pitch,roll:s.roll},y=new Cesium$1.Cartesian3,S=Cesium$1.Cartesian3.subtract(s.position,h,y),P=Cesium$1.Cartesian3.multiplyByScalar(S,n,S),L=Cesium$1.Cartesian3.add(h,P,h);s.flyTo({destination:L,orientation:p,duration:(o==null?void 0:o.duration)||.5,convert:!1})},getCamera=t=>{if(!t||t.isDestroyed()||!t.camera||!t.scene)return;const{camera:n}=t;if(!(n.frustum instanceof Cesium$1.PerspectiveFrustum||n.frustum instanceof Cesium$1.OrthographicOffCenterFrustum))return;const{latitude:o,longitude:s,height:c}=n.positionCartographic,d=Cesium$1.Math.toDegrees(o),h=Cesium$1.Math.toDegrees(s),{heading:p,pitch:y,roll:S}=n,P=n.frustum instanceof Cesium$1.PerspectiveFrustum?n.frustum.fov:1,L=n.frustum instanceof Cesium$1.PerspectiveFrustum?n.frustum.aspectRatio:1;return{lng:h,lat:d,height:c,heading:p,pitch:y,roll:S,fov:P,aspectRatio:L}},getClock=t=>{if(t)return{get start(){return Cesium$1.JulianDate.toDate(t.startTime)},get stop(){return Cesium$1.JulianDate.toDate(t.stopTime)},get current(){return Cesium$1.JulianDate.toDate(t.currentTime)},get playing(){return t.shouldAnimate},get speed(){return t.multiplier}}},colorBlendMode=t=>({highlight:Cesium$1.ColorBlendMode.HIGHLIGHT,replace:Cesium$1.ColorBlendMode.REPLACE,mix:Cesium$1.ColorBlendMode.MIX})[t||""],colorBlendModeFor3DTile=(t="highlight")=>({highlight:Cesium$1.Cesium3DTileColorBlendMode.HIGHLIGHT,replace:Cesium$1.Cesium3DTileColorBlendMode.REPLACE,mix:Cesium$1.Cesium3DTileColorBlendMode.MIX})[t],heightReference=t=>({clamp:Cesium$1.HeightReference.CLAMP_TO_GROUND,relative:Cesium$1.HeightReference.RELATIVE_TO_GROUND,none:Cesium$1.HeightReference.NONE})[t||""],getOverriddenScreenSpaceCameraOptions=t=>{if(!t)return;const n=new Map([["left_drag",Cesium$1.CameraEventType.LEFT_DRAG],["right_drag",Cesium$1.CameraEventType.RIGHT_DRAG],["middle_drag",Cesium$1.CameraEventType.MIDDLE_DRAG],["wheel",Cesium$1.CameraEventType.WHEEL],["pinch",Cesium$1.CameraEventType.PINCH]]),o=new Map([["ctrl",Cesium$1.KeyboardEventModifier.CTRL],["shift",Cesium$1.KeyboardEventModifier.SHIFT],["alt",Cesium$1.KeyboardEventModifier.ALT]]),s=S=>{if(S)return S.map(P=>typeof P=="string"?n.get(P):{eventType:n.get(P.eventType),modifier:o.get(P.modifier)})},c=s(t.translateEventTypes),d=s(t.zoomEventTypes),h=s(t.rotateEventTypes),p=s(t.tiltEventTypes),y=s(t.lookEventTypes);return{...DEFAULT_SCREEN_SPACE_CAMERA_ASSIGNMENTS,...c&&{translateEventTypes:c},...d&&{zoomEventTypes:d},...h&&{rotateEventTypes:h},...p&&{tiltEventTypes:p},...y&&{lookEventTypes:y},...t.minimumZoomDistance!==void 0&&{minimumZoomDistance:t.minimumZoomDistance},...t.maximumZoomDistance!==void 0&&{maximumZoomDistance:t.maximumZoomDistance},...t.enableCollisionDetection!==void 0&&{enableCollisionDetection:t.enableCollisionDetection}}},classificationType=t=>({both:Cesium$1.ClassificationType.BOTH,"3dtiles":Cesium$1.ClassificationType.CESIUM_3D_TILE,terrain:Cesium$1.ClassificationType.TERRAIN})[t||""],shadowMode=t=>({enabled:Cesium$1.ShadowMode.ENABLED,cast_only:Cesium$1.ShadowMode.CAST_ONLY,receive_only:Cesium$1.ShadowMode.RECEIVE_ONLY,disabled:Cesium$1.ShadowMode.DISABLED})[t||""],unselectableTag="reearth_unselectable",draggableTag="reearth_draggable";function isSelectable(t){var n;return!((n=t==null?void 0:t.properties)!=null&&n.hasProperty(unselectableTag))}function isDraggable(t){var n;return(n=t.properties)==null?void 0:n[draggableTag]}function lookHorizontal(t,n){const o=t.camera,c=t.globe.ellipsoid.geodeticSurfaceNormal(o.position,new Cesium$1.Cartesian3);o.look(c,n)}function lookVertical(t,n){const o=t.camera,s=t.globe.ellipsoid,c=projectVectorToSurface(o.right,o.position,s),d=s.geodeticSurfaceNormal(o.position,new Cesium$1.Cartesian3),h=Cesium$1.Math.toDegrees(Cesium$1.Cartesian3.angleBetween(d,o.up)),p=rotateVectorAboutAxis(o.up,c,n),S=Cesium$1.Math.toDegrees(Cesium$1.Cartesian3.angleBetween(d,p))<h?1:(90-h)/90;o.look(c,n*S)}function moveForward(t,n){const o=projectVectorToSurface(t.camera.direction,t.camera.position,t.globe.ellipsoid);t.camera.move(o,n)}function moveBackward(t,n){const o=projectVectorToSurface(t.camera.direction,t.camera.position,t.globe.ellipsoid);t.camera.move(o,-n)}function moveUp(t,n){const o=t.globe.ellipsoid.geodeticSurfaceNormal(t.camera.position,new Cesium$1.Cartesian3);t.camera.move(o,n)}function moveDown(t,n){const o=t.globe.ellipsoid.geodeticSurfaceNormal(t.camera.position,new Cesium$1.Cartesian3);t.camera.move(o,-n)}function moveLeft(t,n){const o=projectVectorToSurface(t.camera.right,t.camera.position,t.globe.ellipsoid);t.camera.move(o,-n)}function moveRight(t,n){const o=projectVectorToSurface(t.camera.right,t.camera.position,t.globe.ellipsoid);t.camera.move(o,n)}async function moveOverTerrain(t,n=0){const o=getCamera(t);if((o==null?void 0:o.lng)===void 0||(o==null?void 0:o.lat)===void 0)return;const s=await sampleTerrainHeight(t.scene,o.lng,o.lat);if(s&&s!==0){const c=getCamera(t);c&&(c==null?void 0:c.height)<s+n&&t.scene.camera.moveUp(s+n-c.height)}}async function flyToGround(t,n,o,s,c=0){var p,y;if(o.lng===void 0||o.lat===void 0)return;const d=await sampleTerrainHeight(t.scene,o.lng,o.lat),h=d?d+c:c;(p=n.current)==null||p.call(n),n.current=flyTo((y=t.scene)==null?void 0:y.camera,{...getCamera(t),...o,height:h},s)}function projectVectorToSurface(t,n,o){const s=o.geodeticSurfaceNormal(n,new Cesium$1.Cartesian3),c=Cesium$1.Cartesian3.dot(t,s),d=Cesium$1.Cartesian3.multiplyByScalar(s,c,new Cesium$1.Cartesian3);return Cesium$1.Cartesian3.subtract(t,d,new Cesium$1.Cartesian3)}function rotateVectorAboutAxis(t,n,o){const s=Cesium$1.Quaternion.fromAxisAngle(n,-o,new Cesium$1.Quaternion),c=Cesium$1.Matrix3.fromQuaternion(s,new Cesium$1.Matrix3);return Cesium$1.Matrix3.multiplyByVector(c,t,t.clone())}async function sampleTerrainHeight(t,n,o){const s=t.terrainProvider;if(s instanceof Cesium$1.EllipsoidTerrainProvider)return 0;const[c]=await Cesium$1.sampleTerrainMostDetailed(s,[Cesium$1.Cartographic.fromDegrees(n,o)]);return c.height}async function sampleTerrainHeightFromCartesian(t,n){const o=Cesium$1.Cartographic.fromCartesian(n),[s,c]=[Cesium$1.Math.toDegrees((o==null?void 0:o.longitude)||0),Cesium$1.Math.toDegrees((o==null?void 0:o.latitude)||0)];if(!(!s||!c))return await sampleTerrainHeight(t,s,c)}const isColor=t=>t==null?void 0:t.match(/^#[A-Fa-f0-9]|^rgba?/),toColor$1=t=>{if(!t||typeof t!="string")return;const n=t.match(/^#([A-Fa-f0-9]{6})([A-Fa-f0-9]{2})$|^#([A-Fa-f0-9]{3})([A-Fa-f0-9])$/);if(!n)return Cesium$1.Color.fromCssColorString(t);const o=parseInt(n[4]?n[4].repeat(2):n[2],16)/255;return Cesium$1.Color.fromCssColorString(`#${n[1]??n[3]}`).withAlpha(o)},updateMapController=(t,n)=>{t.scene.screenSpaceCameraController.enableTranslate=n,t.scene.screenSpaceCameraController.enableRotate=n,t.scene.screenSpaceCameraController.enableLook=n,t.scene.screenSpaceCameraController.enableTilt=n,t.scene.screenSpaceCameraController.enableZoom=n};function getExtrudedHeight(t,n,o,s=!1){const c=new Cesium$1.Cartesian3,d=new Cesium$1.Cartesian3,h=new Cesium$1.Ray,p=new Cesium$1.Plane(Cesium$1.Cartesian3.UNIT_X,0),y=new Cesium$1.Cartographic;let S;try{const P=t.globe.ellipsoid.geodeticSurfaceNormal(n,d),L=t.camera.getPickRay(o,h);if(L==null)return;const F=Cesium$1.Plane.fromPointNormal(n,Cesium$1.Cartesian3.normalize(Cesium$1.Cartesian3.cross(P,Cesium$1.Cartesian3.cross(P,L.direction,c),c),c),p);if(S=Cesium$1.IntersectionTests.rayPlane(L,F,c),S==null)return;const N=Cesium$1.Cartographic.fromCartesian(S,t.globe.ellipsoid,y).height,z=Cesium$1.Cartographic.fromCartesian(n,t.globe.ellipsoid,y).height;return s?N-z:Math.max(0,N-z)}catch(P){console.error(P)}}function getCredits(t){if(!t)return;const n=t.creditDisplay;if(!n)return;const{lightboxCredits:o,screenCredits:s}=(n==null?void 0:n._currentFrameCredits)||{},c=n._currentCesiumCredit;return[...c!=null&&c.html?[{html:c.html}]:[],...Array.from((o==null?void 0:o._array)??[]).map(h=>{var p;return{html:(p=h==null?void 0:h.credit)==null?void 0:p.html}}),...Array.from((s==null?void 0:s._array)??[]).map(h=>{var p;return{html:(p=h==null?void 0:h.credit)==null?void 0:p.html}})]}function Globe({property:t,cesiumIonAccessToken:n,onTerrainProviderChange:o}){var h,p,y,S,P,L,F,N,z,W,lt,Pe,se,mt,kt,mn,pi,zi,Sa,fa,La,Ra;const s=React.useMemo(()=>({...t==null?void 0:t.terrain}),[t==null?void 0:t.terrain]),c=React.useMemo(()=>{var nt,_i,ba,Sc,ms,Xs,pu,yu,Nl;const ma={terrain:s==null?void 0:s.enabled,terrainType:s==null?void 0:s.type,normal:s==null?void 0:s.normal,ionAccessToken:((ba=(_i=(nt=t==null?void 0:t.assets)==null?void 0:nt.cesium)==null?void 0:_i.terrain)==null?void 0:ba.ionAccessToken)||n,ionAsset:(Xs=(ms=(Sc=t==null?void 0:t.assets)==null?void 0:Sc.cesium)==null?void 0:ms.terrain)==null?void 0:Xs.ionAsset,ionUrl:(Nl=(yu=(pu=t==null?void 0:t.assets)==null?void 0:pu.cesium)==null?void 0:yu.terrain)==null?void 0:Nl.ionUrl},yt=ma.terrain?terrainProviders[ma.terrainType||"cesium"]:void 0;return(typeof yt=="function"?yt(ma):yt)??defaultTerrainProvider},[s==null?void 0:s.enabled,s==null?void 0:s.type,s==null?void 0:s.normal,(y=(p=(h=t==null?void 0:t.assets)==null?void 0:h.cesium)==null?void 0:p.terrain)==null?void 0:y.ionAccessToken,(L=(P=(S=t==null?void 0:t.assets)==null?void 0:S.cesium)==null?void 0:P.terrain)==null?void 0:L.ionAsset,(z=(N=(F=t==null?void 0:t.assets)==null?void 0:F.cesium)==null?void 0:N.terrain)==null?void 0:z.ionUrl,n]),d=React.useMemo(()=>{var ma;return toColor$1((ma=t==null?void 0:t.globe)==null?void 0:ma.baseColor)},[(W=t==null?void 0:t.globe)==null?void 0:W.baseColor]);return React.useEffect(()=>{o==null||o()},[c,o]),jsxRuntimeExports.jsx(js$4,{baseColor:d,enableLighting:!!((lt=t==null?void 0:t.globe)!=null&&lt.enableLighting),showGroundAtmosphere:((se=(Pe=t==null?void 0:t.globe)==null?void 0:Pe.atmosphere)==null?void 0:se.enabled)??!0,atmosphereLightIntensity:(kt=(mt=t==null?void 0:t.globe)==null?void 0:mt.atmosphere)==null?void 0:kt.lightIntensity,atmosphereSaturationShift:(pi=(mn=t==null?void 0:t.globe)==null?void 0:mn.atmosphere)==null?void 0:pi.saturationShift,atmosphereHueShift:(Sa=(zi=t==null?void 0:t.globe)==null?void 0:zi.atmosphere)==null?void 0:Sa.hueShift,atmosphereBrightnessShift:(La=(fa=t==null?void 0:t.globe)==null?void 0:fa.atmosphere)==null?void 0:La.brightnessShift,terrainProvider:c,depthTestAgainstTerrain:!!((Ra=t==null?void 0:t.globe)!=null&&Ra.depthTestAgainstTerrain)})}const defaultTerrainProvider=new Cesium$1.EllipsoidTerrainProvider,terrainProviders={cesium:({ionAccessToken:t,normal:n})=>Cesium$1.CesiumTerrainProvider.fromUrl(Cesium$1.IonResource.fromAssetId(1,{accessToken:t}),{requestVertexNormals:n,requestWaterMask:!1}),arcgis:()=>Cesium$1.ArcGISTiledElevationTerrainProvider.fromUrl("https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer"),cesiumion:({ionAccessToken:t,ionAsset:n,ionUrl:o,normal:s})=>n?Cesium$1.CesiumTerrainProvider.fromUrl(o||Cesium$1.IonResource.fromAssetId(parseInt(n,10),{accessToken:t}),{requestVertexNormals:s}):null};function defined(t){return t!=null}function DeveloperError(t){this.name="DeveloperError",this.message=t;let n;try{throw new Error}catch(o){n=o.stack}this.stack=n}defined(Object.create)&&(DeveloperError.prototype=Object.create(Error.prototype),DeveloperError.prototype.constructor=DeveloperError),DeveloperError.prototype.toString=function(){let t=`${this.name}: ${this.message}`;return defined(this.stack)&&(t+=`
125
125
  ${this.stack.toString()}`),t},DeveloperError.throwInstantiationError=function(){throw new DeveloperError("This function defines an interface and should not be called directly.")};const Check={};Check.typeOf={};function getUndefinedErrorMessage(t){return`${t} is required, actual value was undefined`}function getFailedTypeErrorMessage(t,n,o){return`Expected ${o} to be typeof ${n}, actual typeof was ${t}`}Check.defined=function(t,n){if(!defined(n))throw new DeveloperError(getUndefinedErrorMessage(t))},Check.typeOf.func=function(t,n){if(typeof n!="function")throw new DeveloperError(getFailedTypeErrorMessage(typeof n,"function",t))},Check.typeOf.string=function(t,n){if(typeof n!="string")throw new DeveloperError(getFailedTypeErrorMessage(typeof n,"string",t))},Check.typeOf.number=function(t,n){if(typeof n!="number")throw new DeveloperError(getFailedTypeErrorMessage(typeof n,"number",t))},Check.typeOf.number.lessThan=function(t,n,o){if(Check.typeOf.number(t,n),n>=o)throw new DeveloperError(`Expected ${t} to be less than ${o}, actual value was ${n}`)},Check.typeOf.number.lessThanOrEquals=function(t,n,o){if(Check.typeOf.number(t,n),n>o)throw new DeveloperError(`Expected ${t} to be less than or equal to ${o}, actual value was ${n}`)},Check.typeOf.number.greaterThan=function(t,n,o){if(Check.typeOf.number(t,n),n<=o)throw new DeveloperError(`Expected ${t} to be greater than ${o}, actual value was ${n}`)},Check.typeOf.number.greaterThanOrEquals=function(t,n,o){if(Check.typeOf.number(t,n),n<o)throw new DeveloperError(`Expected ${t} to be greater than or equal to ${o}, actual value was ${n}`)},Check.typeOf.object=function(t,n){if(typeof n!="object")throw new DeveloperError(getFailedTypeErrorMessage(typeof n,"object",t))},Check.typeOf.bool=function(t,n){if(typeof n!="boolean")throw new DeveloperError(getFailedTypeErrorMessage(typeof n,"boolean",t))},Check.typeOf.bigint=function(t,n){if(typeof n!="bigint")throw new DeveloperError(getFailedTypeErrorMessage(typeof n,"bigint",t))},Check.typeOf.number.equals=function(t,n,o,s){if(Check.typeOf.number(t,o),Check.typeOf.number(n,s),o!==s)throw new DeveloperError(`${t} must be equal to ${n}, the actual values are ${o} and ${s}`)};function defaultValue(t,n){return t??n}defaultValue.EMPTY_OBJECT=Object.freeze({});var MersenneTwister=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)};MersenneTwister.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}},MersenneTwister.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},MersenneTwister.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},MersenneTwister.prototype.random_int31=function(){return this.random_int()>>>1},MersenneTwister.prototype.random_incl=function(){return this.random_int()*(1/4294967295)},MersenneTwister.prototype.random=function(){return this.random_int()*(1/4294967296)},MersenneTwister.prototype.random_excl=function(){return(this.random_int()+.5)*(1/4294967296)},MersenneTwister.prototype.random_long=function(){var t=this.random_int()>>>5,n=this.random_int()>>>6;return(t*67108864+n)*(1/9007199254740992)};var mersenneTwister=MersenneTwister;const MersenneTwister$1=getDefaultExportFromCjs(mersenneTwister),CesiumMath={};CesiumMath.EPSILON1=.1,CesiumMath.EPSILON2=.01,CesiumMath.EPSILON3=.001,CesiumMath.EPSILON4=1e-4,CesiumMath.EPSILON5=1e-5,CesiumMath.EPSILON6=1e-6,CesiumMath.EPSILON7=1e-7,CesiumMath.EPSILON8=1e-8,CesiumMath.EPSILON9=1e-9,CesiumMath.EPSILON10=1e-10,CesiumMath.EPSILON11=1e-11,CesiumMath.EPSILON12=1e-12,CesiumMath.EPSILON13=1e-13,CesiumMath.EPSILON14=1e-14,CesiumMath.EPSILON15=1e-15,CesiumMath.EPSILON16=1e-16,CesiumMath.EPSILON17=1e-17,CesiumMath.EPSILON18=1e-18,CesiumMath.EPSILON19=1e-19,CesiumMath.EPSILON20=1e-20,CesiumMath.EPSILON21=1e-21,CesiumMath.GRAVITATIONALPARAMETER=3986004418e5,CesiumMath.SOLAR_RADIUS=6955e5,CesiumMath.LUNAR_RADIUS=1737400,CesiumMath.SIXTY_FOUR_KILOBYTES=64*1024,CesiumMath.FOUR_GIGABYTES=4*1024*1024*1024,CesiumMath.sign=defaultValue(Math.sign,function(n){return n=+n,n===0||n!==n?n:n>0?1:-1}),CesiumMath.signNotZero=function(t){return t<0?-1:1},CesiumMath.toSNorm=function(t,n){return n=defaultValue(n,255),Math.round((CesiumMath.clamp(t,-1,1)*.5+.5)*n)},CesiumMath.fromSNorm=function(t,n){return n=defaultValue(n,255),CesiumMath.clamp(t,0,n)/n*2-1},CesiumMath.normalize=function(t,n,o){return o=Math.max(o-n,0),o===0?0:CesiumMath.clamp((t-n)/o,0,1)},CesiumMath.sinh=defaultValue(Math.sinh,function(n){return(Math.exp(n)-Math.exp(-n))/2}),CesiumMath.cosh=defaultValue(Math.cosh,function(n){return(Math.exp(n)+Math.exp(-n))/2}),CesiumMath.lerp=function(t,n,o){return(1-o)*t+o*n},CesiumMath.PI=Math.PI,CesiumMath.ONE_OVER_PI=1/Math.PI,CesiumMath.PI_OVER_TWO=Math.PI/2,CesiumMath.PI_OVER_THREE=Math.PI/3,CesiumMath.PI_OVER_FOUR=Math.PI/4,CesiumMath.PI_OVER_SIX=Math.PI/6,CesiumMath.THREE_PI_OVER_TWO=3*Math.PI/2,CesiumMath.TWO_PI=2*Math.PI,CesiumMath.ONE_OVER_TWO_PI=1/(2*Math.PI),CesiumMath.RADIANS_PER_DEGREE=Math.PI/180,CesiumMath.DEGREES_PER_RADIAN=180/Math.PI,CesiumMath.RADIANS_PER_ARCSECOND=CesiumMath.RADIANS_PER_DEGREE/3600,CesiumMath.toRadians=function(t){if(!defined(t))throw new DeveloperError("degrees is required.");return t*CesiumMath.RADIANS_PER_DEGREE},CesiumMath.toDegrees=function(t){if(!defined(t))throw new DeveloperError("radians is required.");return t*CesiumMath.DEGREES_PER_RADIAN},CesiumMath.convertLongitudeRange=function(t){if(!defined(t))throw new DeveloperError("angle is required.");const n=CesiumMath.TWO_PI,o=t-Math.floor(t/n)*n;return o<-Math.PI?o+n:o>=Math.PI?o-n:o},CesiumMath.clampToLatitudeRange=function(t){if(!defined(t))throw new DeveloperError("angle is required.");return CesiumMath.clamp(t,-1*CesiumMath.PI_OVER_TWO,CesiumMath.PI_OVER_TWO)},CesiumMath.negativePiToPi=function(t){if(!defined(t))throw new DeveloperError("angle is required.");return t>=-CesiumMath.PI&&t<=CesiumMath.PI?t:CesiumMath.zeroToTwoPi(t+CesiumMath.PI)-CesiumMath.PI},CesiumMath.zeroToTwoPi=function(t){if(!defined(t))throw new DeveloperError("angle is required.");if(t>=0&&t<=CesiumMath.TWO_PI)return t;const n=CesiumMath.mod(t,CesiumMath.TWO_PI);return Math.abs(n)<CesiumMath.EPSILON14&&Math.abs(t)>CesiumMath.EPSILON14?CesiumMath.TWO_PI:n},CesiumMath.mod=function(t,n){if(!defined(t))throw new DeveloperError("m is required.");if(!defined(n))throw new DeveloperError("n is required.");if(n===0)throw new DeveloperError("divisor cannot be 0.");return CesiumMath.sign(t)===CesiumMath.sign(n)&&Math.abs(t)<Math.abs(n)?t:(t%n+n)%n},CesiumMath.equalsEpsilon=function(t,n,o,s){if(!defined(t))throw new DeveloperError("left is required.");if(!defined(n))throw new DeveloperError("right is required.");o=defaultValue(o,0),s=defaultValue(s,o);const c=Math.abs(t-n);return c<=s||c<=o*Math.max(Math.abs(t),Math.abs(n))},CesiumMath.lessThan=function(t,n,o){if(!defined(t))throw new DeveloperError("first is required.");if(!defined(n))throw new DeveloperError("second is required.");if(!defined(o))throw new DeveloperError("absoluteEpsilon is required.");return t-n<-o},CesiumMath.lessThanOrEquals=function(t,n,o){if(!defined(t))throw new DeveloperError("first is required.");if(!defined(n))throw new DeveloperError("second is required.");if(!defined(o))throw new DeveloperError("absoluteEpsilon is required.");return t-n<o},CesiumMath.greaterThan=function(t,n,o){if(!defined(t))throw new DeveloperError("first is required.");if(!defined(n))throw new DeveloperError("second is required.");if(!defined(o))throw new DeveloperError("absoluteEpsilon is required.");return t-n>o},CesiumMath.greaterThanOrEquals=function(t,n,o){if(!defined(t))throw new DeveloperError("first is required.");if(!defined(n))throw new DeveloperError("second is required.");if(!defined(o))throw new DeveloperError("absoluteEpsilon is required.");return t-n>-o};const factorials=[1];CesiumMath.factorial=function(t){if(typeof t!="number"||t<0)throw new DeveloperError("A number greater than or equal to 0 is required.");const n=factorials.length;if(t>=n){let o=factorials[n-1];for(let s=n;s<=t;s++){const c=o*s;factorials.push(c),o=c}}return factorials[t]},CesiumMath.incrementWrap=function(t,n,o){if(o=defaultValue(o,0),!defined(t))throw new DeveloperError("n is required.");if(n<=o)throw new DeveloperError("maximumValue must be greater than minimumValue.");return++t,t>n&&(t=o),t},CesiumMath.isPowerOfTwo=function(t){if(typeof t!="number"||t<0||t>4294967295)throw new DeveloperError("A number between 0 and (2^32)-1 is required.");return t!==0&&(t&t-1)===0},CesiumMath.nextPowerOfTwo=function(t){if(typeof t!="number"||t<0||t>2147483648)throw new DeveloperError("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},CesiumMath.previousPowerOfTwo=function(t){if(typeof t!="number"||t<0||t>4294967295)throw new DeveloperError("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},CesiumMath.clamp=function(t,n,o){return Check.typeOf.number("value",t),Check.typeOf.number("min",n),Check.typeOf.number("max",o),t<n?n:t>o?o:t};let randomNumberGenerator=new MersenneTwister$1;CesiumMath.setRandomNumberSeed=function(t){if(!defined(t))throw new DeveloperError("seed is required.");randomNumberGenerator=new MersenneTwister$1(t)},CesiumMath.nextRandomNumber=function(){return randomNumberGenerator.random()},CesiumMath.randomBetween=function(t,n){return CesiumMath.nextRandomNumber()*(n-t)+t},CesiumMath.acosClamped=function(t){if(!defined(t))throw new DeveloperError("value is required.");return Math.acos(CesiumMath.clamp(t,-1,1))},CesiumMath.asinClamped=function(t){if(!defined(t))throw new DeveloperError("value is required.");return Math.asin(CesiumMath.clamp(t,-1,1))},CesiumMath.chordLength=function(t,n){if(!defined(t))throw new DeveloperError("angle is required.");if(!defined(n))throw new DeveloperError("radius is required.");return 2*n*Math.sin(t*.5)},CesiumMath.logBase=function(t,n){if(!defined(t))throw new DeveloperError("number is required.");if(!defined(n))throw new DeveloperError("base is required.");return Math.log(t)/Math.log(n)},CesiumMath.cbrt=defaultValue(Math.cbrt,function(n){const o=Math.pow(Math.abs(n),.3333333333333333);return n<0?-o:o}),CesiumMath.log2=defaultValue(Math.log2,function(n){return Math.log(n)*Math.LOG2E}),CesiumMath.fog=function(t,n){const o=t*n;return 1-Math.exp(-(o*o))},CesiumMath.fastApproximateAtan=function(t){return Check.typeOf.number("x",t),t*(-.1784*Math.abs(t)-.0663*t*t+1.0301)},CesiumMath.fastApproximateAtan2=function(t,n){Check.typeOf.number("x",t),Check.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 DeveloperError("either x or y must be nonzero");return s=CesiumMath.fastApproximateAtan(d),s=Math.abs(n)>Math.abs(t)?CesiumMath.PI_OVER_TWO-s:s,s=t<0?CesiumMath.PI-s:s,s=n<0?-s:s,s};function Cartesian3(t,n,o){this.x=defaultValue(t,0),this.y=defaultValue(n,0),this.z=defaultValue(o,0)}Cartesian3.fromSpherical=function(t,n){Check.typeOf.object("spherical",t),defined(n)||(n=new Cartesian3);const o=t.clock,s=t.cone,c=defaultValue(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},Cartesian3.fromElements=function(t,n,o,s){return defined(s)?(s.x=t,s.y=n,s.z=o,s):new Cartesian3(t,n,o)},Cartesian3.clone=function(t,n){if(defined(t))return defined(n)?(n.x=t.x,n.y=t.y,n.z=t.z,n):new Cartesian3(t.x,t.y,t.z)},Cartesian3.fromCartesian4=Cartesian3.clone,Cartesian3.packedLength=3,Cartesian3.pack=function(t,n,o){return Check.typeOf.object("value",t),Check.defined("array",n),o=defaultValue(o,0),n[o++]=t.x,n[o++]=t.y,n[o]=t.z,n},Cartesian3.unpack=function(t,n,o){return Check.defined("array",t),n=defaultValue(n,0),defined(o)||(o=new Cartesian3),o.x=t[n++],o.y=t[n++],o.z=t[n],o},Cartesian3.packArray=function(t,n){Check.defined("array",t);const o=t.length,s=o*3;if(!defined(n))n=new Array(s);else{if(!Array.isArray(n)&&n.length!==s)throw new DeveloperError("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)Cartesian3.pack(t[c],n,c*3);return n},Cartesian3.unpackArray=function(t,n){if(Check.defined("array",t),Check.typeOf.number.greaterThanOrEquals("array.length",t.length,3),t.length%3!==0)throw new DeveloperError("array length must be a multiple of 3.");const o=t.length;defined(n)?n.length=o/3:n=new Array(o/3);for(let s=0;s<o;s+=3){const c=s/3;n[c]=Cartesian3.unpack(t,s,n[c])}return n},Cartesian3.fromArray=Cartesian3.unpack,Cartesian3.maximumComponent=function(t){return Check.typeOf.object("cartesian",t),Math.max(t.x,t.y,t.z)},Cartesian3.minimumComponent=function(t){return Check.typeOf.object("cartesian",t),Math.min(t.x,t.y,t.z)},Cartesian3.minimumByComponent=function(t,n,o){return Check.typeOf.object("first",t),Check.typeOf.object("second",n),Check.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},Cartesian3.maximumByComponent=function(t,n,o){return Check.typeOf.object("first",t),Check.typeOf.object("second",n),Check.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},Cartesian3.clamp=function(t,n,o,s){Check.typeOf.object("value",t),Check.typeOf.object("min",n),Check.typeOf.object("max",o),Check.typeOf.object("result",s);const c=CesiumMath.clamp(t.x,n.x,o.x),d=CesiumMath.clamp(t.y,n.y,o.y),h=CesiumMath.clamp(t.z,n.z,o.z);return s.x=c,s.y=d,s.z=h,s},Cartesian3.magnitudeSquared=function(t){return Check.typeOf.object("cartesian",t),t.x*t.x+t.y*t.y+t.z*t.z},Cartesian3.magnitude=function(t){return Math.sqrt(Cartesian3.magnitudeSquared(t))};const distanceScratch$2=new Cartesian3;Cartesian3.distance=function(t,n){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Cartesian3.subtract(t,n,distanceScratch$2),Cartesian3.magnitude(distanceScratch$2)},Cartesian3.distanceSquared=function(t,n){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Cartesian3.subtract(t,n,distanceScratch$2),Cartesian3.magnitudeSquared(distanceScratch$2)},Cartesian3.normalize=function(t,n){Check.typeOf.object("cartesian",t),Check.typeOf.object("result",n);const o=Cartesian3.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 DeveloperError("normalized result is not a number");return n},Cartesian3.dot=function(t,n){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),t.x*n.x+t.y*n.y+t.z*n.z},Cartesian3.multiplyComponents=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o.x=t.x*n.x,o.y=t.y*n.y,o.z=t.z*n.z,o},Cartesian3.divideComponents=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o.x=t.x/n.x,o.y=t.y/n.y,o.z=t.z/n.z,o},Cartesian3.add=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o.x=t.x+n.x,o.y=t.y+n.y,o.z=t.z+n.z,o},Cartesian3.subtract=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o.x=t.x-n.x,o.y=t.y-n.y,o.z=t.z-n.z,o},Cartesian3.multiplyByScalar=function(t,n,o){return Check.typeOf.object("cartesian",t),Check.typeOf.number("scalar",n),Check.typeOf.object("result",o),o.x=t.x*n,o.y=t.y*n,o.z=t.z*n,o},Cartesian3.divideByScalar=function(t,n,o){return Check.typeOf.object("cartesian",t),Check.typeOf.number("scalar",n),Check.typeOf.object("result",o),o.x=t.x/n,o.y=t.y/n,o.z=t.z/n,o},Cartesian3.negate=function(t,n){return Check.typeOf.object("cartesian",t),Check.typeOf.object("result",n),n.x=-t.x,n.y=-t.y,n.z=-t.z,n},Cartesian3.abs=function(t,n){return Check.typeOf.object("cartesian",t),Check.typeOf.object("result",n),n.x=Math.abs(t.x),n.y=Math.abs(t.y),n.z=Math.abs(t.z),n};const lerpScratch$3=new Cartesian3;Cartesian3.lerp=function(t,n,o,s){return Check.typeOf.object("start",t),Check.typeOf.object("end",n),Check.typeOf.number("t",o),Check.typeOf.object("result",s),Cartesian3.multiplyByScalar(n,o,lerpScratch$3),s=Cartesian3.multiplyByScalar(t,1-o,s),Cartesian3.add(lerpScratch$3,s,s)};const angleBetweenScratch$1=new Cartesian3,angleBetweenScratch2$1=new Cartesian3;Cartesian3.angleBetween=function(t,n){Check.typeOf.object("left",t),Check.typeOf.object("right",n),Cartesian3.normalize(t,angleBetweenScratch$1),Cartesian3.normalize(n,angleBetweenScratch2$1);const o=Cartesian3.dot(angleBetweenScratch$1,angleBetweenScratch2$1),s=Cartesian3.magnitude(Cartesian3.cross(angleBetweenScratch$1,angleBetweenScratch2$1,angleBetweenScratch$1));return Math.atan2(s,o)};const mostOrthogonalAxisScratch$2=new Cartesian3;Cartesian3.mostOrthogonalAxis=function(t,n){Check.typeOf.object("cartesian",t),Check.typeOf.object("result",n);const o=Cartesian3.normalize(t,mostOrthogonalAxisScratch$2);return Cartesian3.abs(o,o),o.x<=o.y?o.x<=o.z?n=Cartesian3.clone(Cartesian3.UNIT_X,n):n=Cartesian3.clone(Cartesian3.UNIT_Z,n):o.y<=o.z?n=Cartesian3.clone(Cartesian3.UNIT_Y,n):n=Cartesian3.clone(Cartesian3.UNIT_Z,n),n},Cartesian3.projectVector=function(t,n,o){Check.defined("a",t),Check.defined("b",n),Check.defined("result",o);const s=Cartesian3.dot(t,n)/Cartesian3.dot(n,n);return Cartesian3.multiplyByScalar(n,s,o)},Cartesian3.equals=function(t,n){return t===n||defined(t)&&defined(n)&&t.x===n.x&&t.y===n.y&&t.z===n.z},Cartesian3.equalsArray=function(t,n,o){return t.x===n[o]&&t.y===n[o+1]&&t.z===n[o+2]},Cartesian3.equalsEpsilon=function(t,n,o,s){return t===n||defined(t)&&defined(n)&&CesiumMath.equalsEpsilon(t.x,n.x,o,s)&&CesiumMath.equalsEpsilon(t.y,n.y,o,s)&&CesiumMath.equalsEpsilon(t.z,n.z,o,s)},Cartesian3.cross=function(t,n,o){Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.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},Cartesian3.midpoint=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.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},Cartesian3.fromDegrees=function(t,n,o,s,c){return Check.typeOf.number("longitude",t),Check.typeOf.number("latitude",n),t=CesiumMath.toRadians(t),n=CesiumMath.toRadians(n),Cartesian3.fromRadians(t,n,o,s,c)};let scratchN=new Cartesian3,scratchK=new Cartesian3;const wgs84RadiiSquared=new Cartesian3(6378137*6378137,6378137*6378137,6356752314245179e-9*6356752314245179e-9);Cartesian3.fromRadians=function(t,n,o,s,c){Check.typeOf.number("longitude",t),Check.typeOf.number("latitude",n),o=defaultValue(o,0);const d=defined(s)?s.radiiSquared:wgs84RadiiSquared,h=Math.cos(n);scratchN.x=h*Math.cos(t),scratchN.y=h*Math.sin(t),scratchN.z=Math.sin(n),scratchN=Cartesian3.normalize(scratchN,scratchN),Cartesian3.multiplyComponents(d,scratchN,scratchK);const p=Math.sqrt(Cartesian3.dot(scratchN,scratchK));return scratchK=Cartesian3.divideByScalar(scratchK,p,scratchK),scratchN=Cartesian3.multiplyByScalar(scratchN,o,scratchN),defined(c)||(c=new Cartesian3),Cartesian3.add(scratchK,scratchN,c)},Cartesian3.fromDegreesArray=function(t,n,o){if(Check.defined("coordinates",t),t.length<2||t.length%2!==0)throw new DeveloperError("the number of coordinates must be a multiple of 2 and at least 2");const s=t.length;defined(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]=Cartesian3.fromDegrees(d,h,0,n,o[p])}return o},Cartesian3.fromRadiansArray=function(t,n,o){if(Check.defined("coordinates",t),t.length<2||t.length%2!==0)throw new DeveloperError("the number of coordinates must be a multiple of 2 and at least 2");const s=t.length;defined(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]=Cartesian3.fromRadians(d,h,0,n,o[p])}return o},Cartesian3.fromDegreesArrayHeights=function(t,n,o){if(Check.defined("coordinates",t),t.length<3||t.length%3!==0)throw new DeveloperError("the number of coordinates must be a multiple of 3 and at least 3");const s=t.length;defined(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]=Cartesian3.fromDegrees(d,h,p,n,o[y])}return o},Cartesian3.fromRadiansArrayHeights=function(t,n,o){if(Check.defined("coordinates",t),t.length<3||t.length%3!==0)throw new DeveloperError("the number of coordinates must be a multiple of 3 and at least 3");const s=t.length;defined(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]=Cartesian3.fromRadians(d,h,p,n,o[y])}return o},Cartesian3.ZERO=Object.freeze(new Cartesian3(0,0,0)),Cartesian3.ONE=Object.freeze(new Cartesian3(1,1,1)),Cartesian3.UNIT_X=Object.freeze(new Cartesian3(1,0,0)),Cartesian3.UNIT_Y=Object.freeze(new Cartesian3(0,1,0)),Cartesian3.UNIT_Z=Object.freeze(new Cartesian3(0,0,1)),Cartesian3.prototype.clone=function(t){return Cartesian3.clone(this,t)},Cartesian3.prototype.equals=function(t){return Cartesian3.equals(this,t)},Cartesian3.prototype.equalsEpsilon=function(t,n,o){return Cartesian3.equalsEpsilon(this,t,n,o)},Cartesian3.prototype.toString=function(){return`(${this.x}, ${this.y}, ${this.z})`};const scaleToGeodeticSurfaceIntersection=new Cartesian3,scaleToGeodeticSurfaceGradient=new Cartesian3;function scaleToGeodeticSurface(t,n,o,s,c){if(!defined(t))throw new DeveloperError("cartesian is required.");if(!defined(n))throw new DeveloperError("oneOverRadii is required.");if(!defined(o))throw new DeveloperError("oneOverRadiiSquared is required.");if(!defined(s))throw new DeveloperError("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),lt=Cartesian3.multiplyByScalar(t,W,scaleToGeodeticSurfaceIntersection);if(z<s)return isFinite(W)?Cartesian3.clone(lt,c):void 0;const Pe=o.x,se=o.y,mt=o.z,kt=scaleToGeodeticSurfaceGradient;kt.x=lt.x*Pe*2,kt.y=lt.y*se*2,kt.z=lt.z*mt*2;let mn=(1-W)*Cartesian3.magnitude(t)/(.5*Cartesian3.magnitude(kt)),pi=0,zi,Sa,fa,La,Ra,ma,yt,nt,_i,ba,Sc;do{mn-=pi,fa=1/(1+mn*Pe),La=1/(1+mn*se),Ra=1/(1+mn*mt),ma=fa*fa,yt=La*La,nt=Ra*Ra,_i=ma*fa,ba=yt*La,Sc=nt*Ra,zi=L*ma+F*yt+N*nt-1,Sa=L*_i*Pe+F*ba*se+N*Sc*mt;const ms=-2*Sa;pi=zi/ms}while(Math.abs(zi)>CesiumMath.EPSILON12);return defined(c)?(c.x=d*fa,c.y=h*La,c.z=p*Ra,c):new Cartesian3(d*fa,h*La,p*Ra)}function Cartographic(t,n,o){this.longitude=defaultValue(t,0),this.latitude=defaultValue(n,0),this.height=defaultValue(o,0)}Cartographic.fromRadians=function(t,n,o,s){return Check.typeOf.number("longitude",t),Check.typeOf.number("latitude",n),o=defaultValue(o,0),defined(s)?(s.longitude=t,s.latitude=n,s.height=o,s):new Cartographic(t,n,o)},Cartographic.fromDegrees=function(t,n,o,s){return Check.typeOf.number("longitude",t),Check.typeOf.number("latitude",n),t=CesiumMath.toRadians(t),n=CesiumMath.toRadians(n),Cartographic.fromRadians(t,n,o,s)};const cartesianToCartographicN$1=new Cartesian3,cartesianToCartographicP$1=new Cartesian3,cartesianToCartographicH$1=new Cartesian3,wgs84OneOverRadii=new Cartesian3(1/6378137,1/6378137,1/6356752314245179e-9),wgs84OneOverRadiiSquared=new Cartesian3(1/(6378137*6378137),1/(6378137*6378137),1/(6356752314245179e-9*6356752314245179e-9)),wgs84CenterToleranceSquared=CesiumMath.EPSILON1;Cartographic.fromCartesian=function(t,n,o){const s=defined(n)?n.oneOverRadii:wgs84OneOverRadii,c=defined(n)?n.oneOverRadiiSquared:wgs84OneOverRadiiSquared,d=defined(n)?n._centerToleranceSquared:wgs84CenterToleranceSquared,h=scaleToGeodeticSurface(t,s,c,d,cartesianToCartographicP$1);if(!defined(h))return;let p=Cartesian3.multiplyComponents(h,c,cartesianToCartographicN$1);p=Cartesian3.normalize(p,p);const y=Cartesian3.subtract(t,h,cartesianToCartographicH$1),S=Math.atan2(p.y,p.x),P=Math.asin(p.z),L=CesiumMath.sign(Cartesian3.dot(y,t))*Cartesian3.magnitude(y);return defined(o)?(o.longitude=S,o.latitude=P,o.height=L,o):new Cartographic(S,P,L)},Cartographic.toCartesian=function(t,n,o){return Check.defined("cartographic",t),Cartesian3.fromRadians(t.longitude,t.latitude,t.height,n,o)},Cartographic.clone=function(t,n){if(defined(t))return defined(n)?(n.longitude=t.longitude,n.latitude=t.latitude,n.height=t.height,n):new Cartographic(t.longitude,t.latitude,t.height)},Cartographic.equals=function(t,n){return t===n||defined(t)&&defined(n)&&t.longitude===n.longitude&&t.latitude===n.latitude&&t.height===n.height},Cartographic.equalsEpsilon=function(t,n,o){return o=defaultValue(o,0),t===n||defined(t)&&defined(n)&&Math.abs(t.longitude-n.longitude)<=o&&Math.abs(t.latitude-n.latitude)<=o&&Math.abs(t.height-n.height)<=o},Cartographic.ZERO=Object.freeze(new Cartographic(0,0,0)),Cartographic.prototype.clone=function(t){return Cartographic.clone(this,t)},Cartographic.prototype.equals=function(t){return Cartographic.equals(this,t)},Cartographic.prototype.equalsEpsilon=function(t,n){return Cartographic.equalsEpsilon(this,t,n)},Cartographic.prototype.toString=function(){return`(${this.longitude}, ${this.latitude}, ${this.height})`};function Cartesian2(t,n){this.x=defaultValue(t,0),this.y=defaultValue(n,0)}Cartesian2.fromElements=function(t,n,o){return defined(o)?(o.x=t,o.y=n,o):new Cartesian2(t,n)},Cartesian2.clone=function(t,n){if(defined(t))return defined(n)?(n.x=t.x,n.y=t.y,n):new Cartesian2(t.x,t.y)},Cartesian2.fromCartesian3=Cartesian2.clone,Cartesian2.fromCartesian4=Cartesian2.clone,Cartesian2.packedLength=2,Cartesian2.pack=function(t,n,o){return Check.typeOf.object("value",t),Check.defined("array",n),o=defaultValue(o,0),n[o++]=t.x,n[o]=t.y,n},Cartesian2.unpack=function(t,n,o){return Check.defined("array",t),n=defaultValue(n,0),defined(o)||(o=new Cartesian2),o.x=t[n++],o.y=t[n],o},Cartesian2.packArray=function(t,n){Check.defined("array",t);const o=t.length,s=o*2;if(!defined(n))n=new Array(s);else{if(!Array.isArray(n)&&n.length!==s)throw new DeveloperError("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)Cartesian2.pack(t[c],n,c*2);return n},Cartesian2.unpackArray=function(t,n){if(Check.defined("array",t),Check.typeOf.number.greaterThanOrEquals("array.length",t.length,2),t.length%2!==0)throw new DeveloperError("array length must be a multiple of 2.");const o=t.length;defined(n)?n.length=o/2:n=new Array(o/2);for(let s=0;s<o;s+=2){const c=s/2;n[c]=Cartesian2.unpack(t,s,n[c])}return n},Cartesian2.fromArray=Cartesian2.unpack,Cartesian2.maximumComponent=function(t){return Check.typeOf.object("cartesian",t),Math.max(t.x,t.y)},Cartesian2.minimumComponent=function(t){return Check.typeOf.object("cartesian",t),Math.min(t.x,t.y)},Cartesian2.minimumByComponent=function(t,n,o){return Check.typeOf.object("first",t),Check.typeOf.object("second",n),Check.typeOf.object("result",o),o.x=Math.min(t.x,n.x),o.y=Math.min(t.y,n.y),o},Cartesian2.maximumByComponent=function(t,n,o){return Check.typeOf.object("first",t),Check.typeOf.object("second",n),Check.typeOf.object("result",o),o.x=Math.max(t.x,n.x),o.y=Math.max(t.y,n.y),o},Cartesian2.clamp=function(t,n,o,s){Check.typeOf.object("value",t),Check.typeOf.object("min",n),Check.typeOf.object("max",o),Check.typeOf.object("result",s);const c=CesiumMath.clamp(t.x,n.x,o.x),d=CesiumMath.clamp(t.y,n.y,o.y);return s.x=c,s.y=d,s},Cartesian2.magnitudeSquared=function(t){return Check.typeOf.object("cartesian",t),t.x*t.x+t.y*t.y},Cartesian2.magnitude=function(t){return Math.sqrt(Cartesian2.magnitudeSquared(t))};const distanceScratch$1=new Cartesian2;Cartesian2.distance=function(t,n){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Cartesian2.subtract(t,n,distanceScratch$1),Cartesian2.magnitude(distanceScratch$1)},Cartesian2.distanceSquared=function(t,n){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Cartesian2.subtract(t,n,distanceScratch$1),Cartesian2.magnitudeSquared(distanceScratch$1)},Cartesian2.normalize=function(t,n){Check.typeOf.object("cartesian",t),Check.typeOf.object("result",n);const o=Cartesian2.magnitude(t);if(n.x=t.x/o,n.y=t.y/o,isNaN(n.x)||isNaN(n.y))throw new DeveloperError("normalized result is not a number");return n},Cartesian2.dot=function(t,n){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),t.x*n.x+t.y*n.y},Cartesian2.cross=function(t,n){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),t.x*n.y-t.y*n.x},Cartesian2.multiplyComponents=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o.x=t.x*n.x,o.y=t.y*n.y,o},Cartesian2.divideComponents=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o.x=t.x/n.x,o.y=t.y/n.y,o},Cartesian2.add=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o.x=t.x+n.x,o.y=t.y+n.y,o},Cartesian2.subtract=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o.x=t.x-n.x,o.y=t.y-n.y,o},Cartesian2.multiplyByScalar=function(t,n,o){return Check.typeOf.object("cartesian",t),Check.typeOf.number("scalar",n),Check.typeOf.object("result",o),o.x=t.x*n,o.y=t.y*n,o},Cartesian2.divideByScalar=function(t,n,o){return Check.typeOf.object("cartesian",t),Check.typeOf.number("scalar",n),Check.typeOf.object("result",o),o.x=t.x/n,o.y=t.y/n,o},Cartesian2.negate=function(t,n){return Check.typeOf.object("cartesian",t),Check.typeOf.object("result",n),n.x=-t.x,n.y=-t.y,n},Cartesian2.abs=function(t,n){return Check.typeOf.object("cartesian",t),Check.typeOf.object("result",n),n.x=Math.abs(t.x),n.y=Math.abs(t.y),n};const lerpScratch$2=new Cartesian2;Cartesian2.lerp=function(t,n,o,s){return Check.typeOf.object("start",t),Check.typeOf.object("end",n),Check.typeOf.number("t",o),Check.typeOf.object("result",s),Cartesian2.multiplyByScalar(n,o,lerpScratch$2),s=Cartesian2.multiplyByScalar(t,1-o,s),Cartesian2.add(lerpScratch$2,s,s)};const angleBetweenScratch=new Cartesian2,angleBetweenScratch2=new Cartesian2;Cartesian2.angleBetween=function(t,n){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Cartesian2.normalize(t,angleBetweenScratch),Cartesian2.normalize(n,angleBetweenScratch2),CesiumMath.acosClamped(Cartesian2.dot(angleBetweenScratch,angleBetweenScratch2))};const mostOrthogonalAxisScratch$1=new Cartesian2;Cartesian2.mostOrthogonalAxis=function(t,n){Check.typeOf.object("cartesian",t),Check.typeOf.object("result",n);const o=Cartesian2.normalize(t,mostOrthogonalAxisScratch$1);return Cartesian2.abs(o,o),o.x<=o.y?n=Cartesian2.clone(Cartesian2.UNIT_X,n):n=Cartesian2.clone(Cartesian2.UNIT_Y,n),n},Cartesian2.equals=function(t,n){return t===n||defined(t)&&defined(n)&&t.x===n.x&&t.y===n.y},Cartesian2.equalsArray=function(t,n,o){return t.x===n[o]&&t.y===n[o+1]},Cartesian2.equalsEpsilon=function(t,n,o,s){return t===n||defined(t)&&defined(n)&&CesiumMath.equalsEpsilon(t.x,n.x,o,s)&&CesiumMath.equalsEpsilon(t.y,n.y,o,s)},Cartesian2.ZERO=Object.freeze(new Cartesian2(0,0)),Cartesian2.ONE=Object.freeze(new Cartesian2(1,1)),Cartesian2.UNIT_X=Object.freeze(new Cartesian2(1,0)),Cartesian2.UNIT_Y=Object.freeze(new Cartesian2(0,1)),Cartesian2.prototype.clone=function(t){return Cartesian2.clone(this,t)},Cartesian2.prototype.equals=function(t){return Cartesian2.equals(this,t)},Cartesian2.prototype.equalsEpsilon=function(t,n,o){return Cartesian2.equalsEpsilon(this,t,n,o)},Cartesian2.prototype.toString=function(){return`(${this.x}, ${this.y})`};function initialize$1(t,n,o,s){n=defaultValue(n,0),o=defaultValue(o,0),s=defaultValue(s,0),Check.typeOf.number.greaterThanOrEquals("x",n,0),Check.typeOf.number.greaterThanOrEquals("y",o,0),Check.typeOf.number.greaterThanOrEquals("z",s,0),t._radii=new Cartesian3(n,o,s),t._radiiSquared=new Cartesian3(n*n,o*o,s*s),t._radiiToTheFourth=new Cartesian3(n*n*n*n,o*o*o*o,s*s*s*s),t._oneOverRadii=new Cartesian3(n===0?0:1/n,o===0?0:1/o,s===0?0:1/s),t._oneOverRadiiSquared=new Cartesian3(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=CesiumMath.EPSILON1,t._radiiSquared.z!==0&&(t._squaredXOverSquaredZ=t._radiiSquared.x/t._radiiSquared.z)}function Ellipsoid$1(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,initialize$1(this,t,n,o)}Object.defineProperties(Ellipsoid$1.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}}}),Ellipsoid$1.clone=function(t,n){if(!defined(t))return;const o=t._radii;return defined(n)?(Cartesian3.clone(o,n._radii),Cartesian3.clone(t._radiiSquared,n._radiiSquared),Cartesian3.clone(t._radiiToTheFourth,n._radiiToTheFourth),Cartesian3.clone(t._oneOverRadii,n._oneOverRadii),Cartesian3.clone(t._oneOverRadiiSquared,n._oneOverRadiiSquared),n._minimumRadius=t._minimumRadius,n._maximumRadius=t._maximumRadius,n._centerToleranceSquared=t._centerToleranceSquared,n):new Ellipsoid$1(o.x,o.y,o.z)},Ellipsoid$1.fromCartesian3=function(t,n){return defined(n)||(n=new Ellipsoid$1),defined(t)&&initialize$1(n,t.x,t.y,t.z),n},Ellipsoid$1.WGS84=Object.freeze(new Ellipsoid$1(6378137,6378137,6356752314245179e-9)),Ellipsoid$1.UNIT_SPHERE=Object.freeze(new Ellipsoid$1(1,1,1)),Ellipsoid$1.MOON=Object.freeze(new Ellipsoid$1(CesiumMath.LUNAR_RADIUS,CesiumMath.LUNAR_RADIUS,CesiumMath.LUNAR_RADIUS)),Ellipsoid$1.prototype.clone=function(t){return Ellipsoid$1.clone(this,t)},Ellipsoid$1.packedLength=Cartesian3.packedLength,Ellipsoid$1.pack=function(t,n,o){return Check.typeOf.object("value",t),Check.defined("array",n),o=defaultValue(o,0),Cartesian3.pack(t._radii,n,o),n},Ellipsoid$1.unpack=function(t,n,o){Check.defined("array",t),n=defaultValue(n,0);const s=Cartesian3.unpack(t,n);return Ellipsoid$1.fromCartesian3(s,o)},Ellipsoid$1.prototype.geocentricSurfaceNormal=Cartesian3.normalize,Ellipsoid$1.prototype.geodeticSurfaceNormalCartographic=function(t,n){Check.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 defined(n)||(n=new Cartesian3),n.x=d,n.y=h,n.z=p,Cartesian3.normalize(n,n)},Ellipsoid$1.prototype.geodeticSurfaceNormal=function(t,n){if(Check.typeOf.object("cartesian",t),isNaN(t.x)||isNaN(t.y)||isNaN(t.z))throw new DeveloperError("cartesian has a NaN component");if(!Cartesian3.equalsEpsilon(t,Cartesian3.ZERO,CesiumMath.EPSILON14))return defined(n)||(n=new Cartesian3),n=Cartesian3.multiplyComponents(t,this._oneOverRadiiSquared,n),Cartesian3.normalize(n,n)};const cartographicToCartesianNormal=new Cartesian3,cartographicToCartesianK=new Cartesian3;Ellipsoid$1.prototype.cartographicToCartesian=function(t,n){const o=cartographicToCartesianNormal,s=cartographicToCartesianK;this.geodeticSurfaceNormalCartographic(t,o),Cartesian3.multiplyComponents(this._radiiSquared,o,s);const c=Math.sqrt(Cartesian3.dot(o,s));return Cartesian3.divideByScalar(s,c,s),Cartesian3.multiplyByScalar(o,t.height,o),defined(n)||(n=new Cartesian3),Cartesian3.add(s,o,n)},Ellipsoid$1.prototype.cartographicArrayToCartesianArray=function(t,n){Check.defined("cartographics",t);const o=t.length;defined(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 cartesianToCartographicN=new Cartesian3,cartesianToCartographicP=new Cartesian3,cartesianToCartographicH=new Cartesian3;Ellipsoid$1.prototype.cartesianToCartographic=function(t,n){const o=this.scaleToGeodeticSurface(t,cartesianToCartographicP);if(!defined(o))return;const s=this.geodeticSurfaceNormal(o,cartesianToCartographicN),c=Cartesian3.subtract(t,o,cartesianToCartographicH),d=Math.atan2(s.y,s.x),h=Math.asin(s.z),p=CesiumMath.sign(Cartesian3.dot(c,t))*Cartesian3.magnitude(c);return defined(n)?(n.longitude=d,n.latitude=h,n.height=p,n):new Cartographic(d,h,p)},Ellipsoid$1.prototype.cartesianArrayToCartographicArray=function(t,n){Check.defined("cartesians",t);const o=t.length;defined(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},Ellipsoid$1.prototype.scaleToGeodeticSurface=function(t,n){return scaleToGeodeticSurface(t,this._oneOverRadii,this._oneOverRadiiSquared,this._centerToleranceSquared,n)},Ellipsoid$1.prototype.scaleToGeocentricSurface=function(t,n){Check.typeOf.object("cartesian",t),defined(n)||(n=new Cartesian3);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 Cartesian3.multiplyByScalar(t,h,n)},Ellipsoid$1.prototype.transformPositionToScaledSpace=function(t,n){return defined(n)||(n=new Cartesian3),Cartesian3.multiplyComponents(t,this._oneOverRadii,n)},Ellipsoid$1.prototype.transformPositionFromScaledSpace=function(t,n){return defined(n)||(n=new Cartesian3),Cartesian3.multiplyComponents(t,this._radii,n)},Ellipsoid$1.prototype.equals=function(t){return this===t||defined(t)&&Cartesian3.equals(this._radii,t._radii)},Ellipsoid$1.prototype.toString=function(){return this._radii.toString()},Ellipsoid$1.prototype.getSurfaceNormalIntersectionWithZAxis=function(t,n,o){if(Check.typeOf.object("position",t),!CesiumMath.equalsEpsilon(this._radii.x,this._radii.y,CesiumMath.EPSILON15))throw new DeveloperError("Ellipsoid must be an ellipsoid of revolution (radii.x == radii.y)");Check.typeOf.number.greaterThan("Ellipsoid.radii.z",this._radii.z,0),n=defaultValue(n,0);const s=this._squaredXOverSquaredZ;if(defined(o)||(o=new Cartesian3),o.x=0,o.y=0,o.z=t.z*(1-s),!(Math.abs(o.z)>=this._radii.z-n))return o};const scratchEndpoint=new Cartesian3;Ellipsoid$1.prototype.getLocalCurvature=function(t,n){Check.typeOf.object("surfacePosition",t),defined(n)||(n=new Cartesian2);const o=this.getSurfaceNormalIntersectionWithZAxis(t,0,scratchEndpoint),s=Cartesian3.distance(t,o),c=this.minimumRadius*s/this.maximumRadius**2,d=s*c**2;return Cartesian2.fromElements(1/s,1/d,n)};const abscissas=[.14887433898163,.43339539412925,.67940956829902,.86506336668898,.97390652851717,0],weights=[.29552422471475,.26926671930999,.21908636251598,.14945134915058,.066671344308684,0];function gaussLegendreQuadrature(t,n,o){Check.typeOf.number("a",t),Check.typeOf.number("b",n),Check.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*abscissas[h];d+=weights[h]*(o(s+p)+o(s-p))}return d*=c,d}Ellipsoid$1.prototype.surfaceArea=function(t){Check.typeOf.object("rectangle",t);const n=t.west;let o=t.east;const s=t.south,c=t.north;for(;o<n;)o+=CesiumMath.TWO_PI;const d=this._radiiSquared,h=d.x,p=d.y,y=d.z,S=h*p;return gaussLegendreQuadrature(s,c,function(P){const L=Math.cos(P),F=Math.sin(P);return Math.cos(P)*gaussLegendreQuadrature(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 GeographicProjection(t){this._ellipsoid=defaultValue(t,Ellipsoid$1.WGS84),this._semimajorAxis=this._ellipsoid.maximumRadius,this._oneOverSemimajorAxis=1/this._semimajorAxis}Object.defineProperties(GeographicProjection.prototype,{ellipsoid:{get:function(){return this._ellipsoid}}}),GeographicProjection.prototype.project=function(t,n){const o=this._semimajorAxis,s=t.longitude*o,c=t.latitude*o,d=t.height;return defined(n)?(n.x=s,n.y=c,n.z=d,n):new Cartesian3(s,c,d)},GeographicProjection.prototype.unproject=function(t,n){if(!defined(t))throw new DeveloperError("cartesian is required");const o=this._oneOverSemimajorAxis,s=t.x*o,c=t.y*o,d=t.z;return defined(n)?(n.longitude=s,n.latitude=c,n.height=d,n):new Cartographic(s,c,d)};const Intersect={OUTSIDE:-1,INTERSECTING:0,INSIDE:1},Intersect$1=Object.freeze(Intersect);function Interval(t,n){this.start=defaultValue(t,0),this.stop=defaultValue(n,0)}function Matrix3(t,n,o,s,c,d,h,p,y){this[0]=defaultValue(t,0),this[1]=defaultValue(s,0),this[2]=defaultValue(h,0),this[3]=defaultValue(n,0),this[4]=defaultValue(c,0),this[5]=defaultValue(p,0),this[6]=defaultValue(o,0),this[7]=defaultValue(d,0),this[8]=defaultValue(y,0)}Matrix3.packedLength=9,Matrix3.pack=function(t,n,o){return Check.typeOf.object("value",t),Check.defined("array",n),o=defaultValue(o,0),n[o++]=t[0],n[o++]=t[1],n[o++]=t[2],n[o++]=t[3],n[o++]=t[4],n[o++]=t[5],n[o++]=t[6],n[o++]=t[7],n[o++]=t[8],n},Matrix3.unpack=function(t,n,o){return Check.defined("array",t),n=defaultValue(n,0),defined(o)||(o=new Matrix3),o[0]=t[n++],o[1]=t[n++],o[2]=t[n++],o[3]=t[n++],o[4]=t[n++],o[5]=t[n++],o[6]=t[n++],o[7]=t[n++],o[8]=t[n++],o},Matrix3.packArray=function(t,n){Check.defined("array",t);const o=t.length,s=o*9;if(!defined(n))n=new Array(s);else{if(!Array.isArray(n)&&n.length!==s)throw new DeveloperError("If result is a typed array, it must have exactly array.length * 9 elements");n.length!==s&&(n.length=s)}for(let c=0;c<o;++c)Matrix3.pack(t[c],n,c*9);return n},Matrix3.unpackArray=function(t,n){if(Check.defined("array",t),Check.typeOf.number.greaterThanOrEquals("array.length",t.length,9),t.length%9!==0)throw new DeveloperError("array length must be a multiple of 9.");const o=t.length;defined(n)?n.length=o/9:n=new Array(o/9);for(let s=0;s<o;s+=9){const c=s/9;n[c]=Matrix3.unpack(t,s,n[c])}return n},Matrix3.clone=function(t,n){if(defined(t))return defined(n)?(n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n[4]=t[4],n[5]=t[5],n[6]=t[6],n[7]=t[7],n[8]=t[8],n):new Matrix3(t[0],t[3],t[6],t[1],t[4],t[7],t[2],t[5],t[8])},Matrix3.fromArray=Matrix3.unpack,Matrix3.fromColumnMajorArray=function(t,n){return Check.defined("values",t),Matrix3.clone(t,n)},Matrix3.fromRowMajorArray=function(t,n){return Check.defined("values",t),defined(n)?(n[0]=t[0],n[1]=t[3],n[2]=t[6],n[3]=t[1],n[4]=t[4],n[5]=t[7],n[6]=t[2],n[7]=t[5],n[8]=t[8],n):new Matrix3(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8])},Matrix3.fromQuaternion=function(t,n){Check.typeOf.object("quaternion",t);const o=t.x*t.x,s=t.x*t.y,c=t.x*t.z,d=t.x*t.w,h=t.y*t.y,p=t.y*t.z,y=t.y*t.w,S=t.z*t.z,P=t.z*t.w,L=t.w*t.w,F=o-h-S+L,N=2*(s-P),z=2*(c+y),W=2*(s+P),lt=-o+h-S+L,Pe=2*(p-d),se=2*(c-y),mt=2*(p+d),kt=-o-h+S+L;return defined(n)?(n[0]=F,n[1]=W,n[2]=se,n[3]=N,n[4]=lt,n[5]=mt,n[6]=z,n[7]=Pe,n[8]=kt,n):new Matrix3(F,N,z,W,lt,Pe,se,mt,kt)},Matrix3.fromHeadingPitchRoll=function(t,n){Check.typeOf.object("headingPitchRoll",t);const o=Math.cos(-t.pitch),s=Math.cos(-t.heading),c=Math.cos(t.roll),d=Math.sin(-t.pitch),h=Math.sin(-t.heading),p=Math.sin(t.roll),y=o*s,S=-c*h+p*d*s,P=p*h+c*d*s,L=o*h,F=c*s+p*d*h,N=-p*s+c*d*h,z=-d,W=p*o,lt=c*o;return defined(n)?(n[0]=y,n[1]=L,n[2]=z,n[3]=S,n[4]=F,n[5]=W,n[6]=P,n[7]=N,n[8]=lt,n):new Matrix3(y,S,P,L,F,N,z,W,lt)},Matrix3.fromScale=function(t,n){return Check.typeOf.object("scale",t),defined(n)?(n[0]=t.x,n[1]=0,n[2]=0,n[3]=0,n[4]=t.y,n[5]=0,n[6]=0,n[7]=0,n[8]=t.z,n):new Matrix3(t.x,0,0,0,t.y,0,0,0,t.z)},Matrix3.fromUniformScale=function(t,n){return Check.typeOf.number("scale",t),defined(n)?(n[0]=t,n[1]=0,n[2]=0,n[3]=0,n[4]=t,n[5]=0,n[6]=0,n[7]=0,n[8]=t,n):new Matrix3(t,0,0,0,t,0,0,0,t)},Matrix3.fromCrossProduct=function(t,n){return Check.typeOf.object("vector",t),defined(n)?(n[0]=0,n[1]=t.z,n[2]=-t.y,n[3]=-t.z,n[4]=0,n[5]=t.x,n[6]=t.y,n[7]=-t.x,n[8]=0,n):new Matrix3(0,-t.z,t.y,t.z,0,-t.x,-t.y,t.x,0)},Matrix3.fromRotationX=function(t,n){Check.typeOf.number("angle",t);const o=Math.cos(t),s=Math.sin(t);return defined(n)?(n[0]=1,n[1]=0,n[2]=0,n[3]=0,n[4]=o,n[5]=s,n[6]=0,n[7]=-s,n[8]=o,n):new Matrix3(1,0,0,0,o,-s,0,s,o)},Matrix3.fromRotationY=function(t,n){Check.typeOf.number("angle",t);const o=Math.cos(t),s=Math.sin(t);return defined(n)?(n[0]=o,n[1]=0,n[2]=-s,n[3]=0,n[4]=1,n[5]=0,n[6]=s,n[7]=0,n[8]=o,n):new Matrix3(o,0,s,0,1,0,-s,0,o)},Matrix3.fromRotationZ=function(t,n){Check.typeOf.number("angle",t);const o=Math.cos(t),s=Math.sin(t);return defined(n)?(n[0]=o,n[1]=s,n[2]=0,n[3]=-s,n[4]=o,n[5]=0,n[6]=0,n[7]=0,n[8]=1,n):new Matrix3(o,-s,0,s,o,0,0,0,1)},Matrix3.toArray=function(t,n){return Check.typeOf.object("matrix",t),defined(n)?(n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n[4]=t[4],n[5]=t[5],n[6]=t[6],n[7]=t[7],n[8]=t[8],n):[t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8]]},Matrix3.getElementIndex=function(t,n){return Check.typeOf.number.greaterThanOrEquals("row",n,0),Check.typeOf.number.lessThanOrEquals("row",n,2),Check.typeOf.number.greaterThanOrEquals("column",t,0),Check.typeOf.number.lessThanOrEquals("column",t,2),t*3+n},Matrix3.getColumn=function(t,n,o){Check.typeOf.object("matrix",t),Check.typeOf.number.greaterThanOrEquals("index",n,0),Check.typeOf.number.lessThanOrEquals("index",n,2),Check.typeOf.object("result",o);const s=n*3,c=t[s],d=t[s+1],h=t[s+2];return o.x=c,o.y=d,o.z=h,o},Matrix3.setColumn=function(t,n,o,s){Check.typeOf.object("matrix",t),Check.typeOf.number.greaterThanOrEquals("index",n,0),Check.typeOf.number.lessThanOrEquals("index",n,2),Check.typeOf.object("cartesian",o),Check.typeOf.object("result",s),s=Matrix3.clone(t,s);const c=n*3;return s[c]=o.x,s[c+1]=o.y,s[c+2]=o.z,s},Matrix3.getRow=function(t,n,o){Check.typeOf.object("matrix",t),Check.typeOf.number.greaterThanOrEquals("index",n,0),Check.typeOf.number.lessThanOrEquals("index",n,2),Check.typeOf.object("result",o);const s=t[n],c=t[n+3],d=t[n+6];return o.x=s,o.y=c,o.z=d,o},Matrix3.setRow=function(t,n,o,s){return Check.typeOf.object("matrix",t),Check.typeOf.number.greaterThanOrEquals("index",n,0),Check.typeOf.number.lessThanOrEquals("index",n,2),Check.typeOf.object("cartesian",o),Check.typeOf.object("result",s),s=Matrix3.clone(t,s),s[n]=o.x,s[n+3]=o.y,s[n+6]=o.z,s};const scaleScratch1$2=new Cartesian3;Matrix3.setScale=function(t,n,o){Check.typeOf.object("matrix",t),Check.typeOf.object("scale",n),Check.typeOf.object("result",o);const s=Matrix3.getScale(t,scaleScratch1$2),c=n.x/s.x,d=n.y/s.y,h=n.z/s.z;return o[0]=t[0]*c,o[1]=t[1]*c,o[2]=t[2]*c,o[3]=t[3]*d,o[4]=t[4]*d,o[5]=t[5]*d,o[6]=t[6]*h,o[7]=t[7]*h,o[8]=t[8]*h,o};const scaleScratch2$2=new Cartesian3;Matrix3.setUniformScale=function(t,n,o){Check.typeOf.object("matrix",t),Check.typeOf.number("scale",n),Check.typeOf.object("result",o);const s=Matrix3.getScale(t,scaleScratch2$2),c=n/s.x,d=n/s.y,h=n/s.z;return o[0]=t[0]*c,o[1]=t[1]*c,o[2]=t[2]*c,o[3]=t[3]*d,o[4]=t[4]*d,o[5]=t[5]*d,o[6]=t[6]*h,o[7]=t[7]*h,o[8]=t[8]*h,o};const scratchColumn$2=new Cartesian3;Matrix3.getScale=function(t,n){return Check.typeOf.object("matrix",t),Check.typeOf.object("result",n),n.x=Cartesian3.magnitude(Cartesian3.fromElements(t[0],t[1],t[2],scratchColumn$2)),n.y=Cartesian3.magnitude(Cartesian3.fromElements(t[3],t[4],t[5],scratchColumn$2)),n.z=Cartesian3.magnitude(Cartesian3.fromElements(t[6],t[7],t[8],scratchColumn$2)),n};const scaleScratch3$2=new Cartesian3;Matrix3.getMaximumScale=function(t){return Matrix3.getScale(t,scaleScratch3$2),Cartesian3.maximumComponent(scaleScratch3$2)};const scaleScratch4$2=new Cartesian3;Matrix3.setRotation=function(t,n,o){Check.typeOf.object("matrix",t),Check.typeOf.object("result",o);const s=Matrix3.getScale(t,scaleScratch4$2);return o[0]=n[0]*s.x,o[1]=n[1]*s.x,o[2]=n[2]*s.x,o[3]=n[3]*s.y,o[4]=n[4]*s.y,o[5]=n[5]*s.y,o[6]=n[6]*s.z,o[7]=n[7]*s.z,o[8]=n[8]*s.z,o};const scaleScratch5$2=new Cartesian3;Matrix3.getRotation=function(t,n){Check.typeOf.object("matrix",t),Check.typeOf.object("result",n);const o=Matrix3.getScale(t,scaleScratch5$2);return n[0]=t[0]/o.x,n[1]=t[1]/o.x,n[2]=t[2]/o.x,n[3]=t[3]/o.y,n[4]=t[4]/o.y,n[5]=t[5]/o.y,n[6]=t[6]/o.z,n[7]=t[7]/o.z,n[8]=t[8]/o.z,n},Matrix3.multiply=function(t,n,o){Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o);const s=t[0]*n[0]+t[3]*n[1]+t[6]*n[2],c=t[1]*n[0]+t[4]*n[1]+t[7]*n[2],d=t[2]*n[0]+t[5]*n[1]+t[8]*n[2],h=t[0]*n[3]+t[3]*n[4]+t[6]*n[5],p=t[1]*n[3]+t[4]*n[4]+t[7]*n[5],y=t[2]*n[3]+t[5]*n[4]+t[8]*n[5],S=t[0]*n[6]+t[3]*n[7]+t[6]*n[8],P=t[1]*n[6]+t[4]*n[7]+t[7]*n[8],L=t[2]*n[6]+t[5]*n[7]+t[8]*n[8];return o[0]=s,o[1]=c,o[2]=d,o[3]=h,o[4]=p,o[5]=y,o[6]=S,o[7]=P,o[8]=L,o},Matrix3.add=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o[0]=t[0]+n[0],o[1]=t[1]+n[1],o[2]=t[2]+n[2],o[3]=t[3]+n[3],o[4]=t[4]+n[4],o[5]=t[5]+n[5],o[6]=t[6]+n[6],o[7]=t[7]+n[7],o[8]=t[8]+n[8],o},Matrix3.subtract=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o[0]=t[0]-n[0],o[1]=t[1]-n[1],o[2]=t[2]-n[2],o[3]=t[3]-n[3],o[4]=t[4]-n[4],o[5]=t[5]-n[5],o[6]=t[6]-n[6],o[7]=t[7]-n[7],o[8]=t[8]-n[8],o},Matrix3.multiplyByVector=function(t,n,o){Check.typeOf.object("matrix",t),Check.typeOf.object("cartesian",n),Check.typeOf.object("result",o);const s=n.x,c=n.y,d=n.z,h=t[0]*s+t[3]*c+t[6]*d,p=t[1]*s+t[4]*c+t[7]*d,y=t[2]*s+t[5]*c+t[8]*d;return o.x=h,o.y=p,o.z=y,o},Matrix3.multiplyByScalar=function(t,n,o){return Check.typeOf.object("matrix",t),Check.typeOf.number("scalar",n),Check.typeOf.object("result",o),o[0]=t[0]*n,o[1]=t[1]*n,o[2]=t[2]*n,o[3]=t[3]*n,o[4]=t[4]*n,o[5]=t[5]*n,o[6]=t[6]*n,o[7]=t[7]*n,o[8]=t[8]*n,o},Matrix3.multiplyByScale=function(t,n,o){return Check.typeOf.object("matrix",t),Check.typeOf.object("scale",n),Check.typeOf.object("result",o),o[0]=t[0]*n.x,o[1]=t[1]*n.x,o[2]=t[2]*n.x,o[3]=t[3]*n.y,o[4]=t[4]*n.y,o[5]=t[5]*n.y,o[6]=t[6]*n.z,o[7]=t[7]*n.z,o[8]=t[8]*n.z,o},Matrix3.multiplyByUniformScale=function(t,n,o){return Check.typeOf.object("matrix",t),Check.typeOf.number("scale",n),Check.typeOf.object("result",o),o[0]=t[0]*n,o[1]=t[1]*n,o[2]=t[2]*n,o[3]=t[3]*n,o[4]=t[4]*n,o[5]=t[5]*n,o[6]=t[6]*n,o[7]=t[7]*n,o[8]=t[8]*n,o},Matrix3.negate=function(t,n){return Check.typeOf.object("matrix",t),Check.typeOf.object("result",n),n[0]=-t[0],n[1]=-t[1],n[2]=-t[2],n[3]=-t[3],n[4]=-t[4],n[5]=-t[5],n[6]=-t[6],n[7]=-t[7],n[8]=-t[8],n},Matrix3.transpose=function(t,n){Check.typeOf.object("matrix",t),Check.typeOf.object("result",n);const o=t[0],s=t[3],c=t[6],d=t[1],h=t[4],p=t[7],y=t[2],S=t[5],P=t[8];return n[0]=o,n[1]=s,n[2]=c,n[3]=d,n[4]=h,n[5]=p,n[6]=y,n[7]=S,n[8]=P,n};function computeFrobeniusNorm(t){let n=0;for(let o=0;o<9;++o){const s=t[o];n+=s*s}return Math.sqrt(n)}const rowVal=[1,0,0],colVal=[2,2,1];function offDiagonalFrobeniusNorm(t){let n=0;for(let o=0;o<3;++o){const s=t[Matrix3.getElementIndex(colVal[o],rowVal[o])];n+=2*s*s}return Math.sqrt(n)}function shurDecomposition(t,n){const o=CesiumMath.EPSILON15;let s=0,c=1;for(let S=0;S<3;++S){const P=Math.abs(t[Matrix3.getElementIndex(colVal[S],rowVal[S])]);P>s&&(c=S,s=P)}let d=1,h=0;const p=rowVal[c],y=colVal[c];if(Math.abs(t[Matrix3.getElementIndex(y,p)])>o){const S=t[Matrix3.getElementIndex(y,y)],P=t[Matrix3.getElementIndex(p,p)],L=t[Matrix3.getElementIndex(y,p)],F=(S-P)/2/L;let N;F<0?N=-1/(-F+Math.sqrt(1+F*F)):N=1/(F+Math.sqrt(1+F*F)),d=1/Math.sqrt(1+N*N),h=N*d}return n=Matrix3.clone(Matrix3.IDENTITY,n),n[Matrix3.getElementIndex(p,p)]=n[Matrix3.getElementIndex(y,y)]=d,n[Matrix3.getElementIndex(y,p)]=h,n[Matrix3.getElementIndex(p,y)]=-h,n}const jMatrix=new Matrix3,jMatrixTranspose=new Matrix3;Matrix3.computeEigenDecomposition=function(t,n){Check.typeOf.object("matrix",t);const o=CesiumMath.EPSILON20,s=10;let c=0,d=0;defined(n)||(n={});const h=n.unitary=Matrix3.clone(Matrix3.IDENTITY,n.unitary),p=n.diagonal=Matrix3.clone(t,n.diagonal),y=o*computeFrobeniusNorm(p);for(;d<s&&offDiagonalFrobeniusNorm(p)>y;)shurDecomposition(p,jMatrix),Matrix3.transpose(jMatrix,jMatrixTranspose),Matrix3.multiply(p,jMatrix,p),Matrix3.multiply(jMatrixTranspose,p,p),Matrix3.multiply(h,jMatrix,h),++c>2&&(++d,c=0);return n},Matrix3.abs=function(t,n){return Check.typeOf.object("matrix",t),Check.typeOf.object("result",n),n[0]=Math.abs(t[0]),n[1]=Math.abs(t[1]),n[2]=Math.abs(t[2]),n[3]=Math.abs(t[3]),n[4]=Math.abs(t[4]),n[5]=Math.abs(t[5]),n[6]=Math.abs(t[6]),n[7]=Math.abs(t[7]),n[8]=Math.abs(t[8]),n},Matrix3.determinant=function(t){Check.typeOf.object("matrix",t);const n=t[0],o=t[3],s=t[6],c=t[1],d=t[4],h=t[7],p=t[2],y=t[5],S=t[8];return n*(d*S-y*h)+c*(y*s-o*S)+p*(o*h-d*s)},Matrix3.inverse=function(t,n){Check.typeOf.object("matrix",t),Check.typeOf.object("result",n);const o=t[0],s=t[1],c=t[2],d=t[3],h=t[4],p=t[5],y=t[6],S=t[7],P=t[8],L=Matrix3.determinant(t);if(Math.abs(L)<=CesiumMath.EPSILON15)throw new DeveloperError("matrix is not invertible");n[0]=h*P-S*p,n[1]=S*c-s*P,n[2]=s*p-h*c,n[3]=y*p-d*P,n[4]=o*P-y*c,n[5]=d*c-o*p,n[6]=d*S-y*h,n[7]=y*s-o*S,n[8]=o*h-d*s;const F=1/L;return Matrix3.multiplyByScalar(n,F,n)};const scratchTransposeMatrix$1=new Matrix3;Matrix3.inverseTranspose=function(t,n){return Check.typeOf.object("matrix",t),Check.typeOf.object("result",n),Matrix3.inverse(Matrix3.transpose(t,scratchTransposeMatrix$1),n)},Matrix3.equals=function(t,n){return t===n||defined(t)&&defined(n)&&t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]&&t[4]===n[4]&&t[5]===n[5]&&t[6]===n[6]&&t[7]===n[7]&&t[8]===n[8]},Matrix3.equalsEpsilon=function(t,n,o){return o=defaultValue(o,0),t===n||defined(t)&&defined(n)&&Math.abs(t[0]-n[0])<=o&&Math.abs(t[1]-n[1])<=o&&Math.abs(t[2]-n[2])<=o&&Math.abs(t[3]-n[3])<=o&&Math.abs(t[4]-n[4])<=o&&Math.abs(t[5]-n[5])<=o&&Math.abs(t[6]-n[6])<=o&&Math.abs(t[7]-n[7])<=o&&Math.abs(t[8]-n[8])<=o},Matrix3.IDENTITY=Object.freeze(new Matrix3(1,0,0,0,1,0,0,0,1)),Matrix3.ZERO=Object.freeze(new Matrix3(0,0,0,0,0,0,0,0,0)),Matrix3.COLUMN0ROW0=0,Matrix3.COLUMN0ROW1=1,Matrix3.COLUMN0ROW2=2,Matrix3.COLUMN1ROW0=3,Matrix3.COLUMN1ROW1=4,Matrix3.COLUMN1ROW2=5,Matrix3.COLUMN2ROW0=6,Matrix3.COLUMN2ROW1=7,Matrix3.COLUMN2ROW2=8,Object.defineProperties(Matrix3.prototype,{length:{get:function(){return Matrix3.packedLength}}}),Matrix3.prototype.clone=function(t){return Matrix3.clone(this,t)},Matrix3.prototype.equals=function(t){return Matrix3.equals(this,t)},Matrix3.equalsArray=function(t,n,o){return t[0]===n[o]&&t[1]===n[o+1]&&t[2]===n[o+2]&&t[3]===n[o+3]&&t[4]===n[o+4]&&t[5]===n[o+5]&&t[6]===n[o+6]&&t[7]===n[o+7]&&t[8]===n[o+8]},Matrix3.prototype.equalsEpsilon=function(t,n){return Matrix3.equalsEpsilon(this,t,n)},Matrix3.prototype.toString=function(){return`(${this[0]}, ${this[3]}, ${this[6]})
126
126
  (${this[1]}, ${this[4]}, ${this[7]})
127
127
  (${this[2]}, ${this[5]}, ${this[8]})`};function Cartesian4(t,n,o,s){this.x=defaultValue(t,0),this.y=defaultValue(n,0),this.z=defaultValue(o,0),this.w=defaultValue(s,0)}Cartesian4.fromElements=function(t,n,o,s,c){return defined(c)?(c.x=t,c.y=n,c.z=o,c.w=s,c):new Cartesian4(t,n,o,s)},Cartesian4.fromColor=function(t,n){return Check.typeOf.object("color",t),defined(n)?(n.x=t.red,n.y=t.green,n.z=t.blue,n.w=t.alpha,n):new Cartesian4(t.red,t.green,t.blue,t.alpha)},Cartesian4.clone=function(t,n){if(defined(t))return defined(n)?(n.x=t.x,n.y=t.y,n.z=t.z,n.w=t.w,n):new Cartesian4(t.x,t.y,t.z,t.w)},Cartesian4.packedLength=4,Cartesian4.pack=function(t,n,o){return Check.typeOf.object("value",t),Check.defined("array",n),o=defaultValue(o,0),n[o++]=t.x,n[o++]=t.y,n[o++]=t.z,n[o]=t.w,n},Cartesian4.unpack=function(t,n,o){return Check.defined("array",t),n=defaultValue(n,0),defined(o)||(o=new Cartesian4),o.x=t[n++],o.y=t[n++],o.z=t[n++],o.w=t[n],o},Cartesian4.packArray=function(t,n){Check.defined("array",t);const o=t.length,s=o*4;if(!defined(n))n=new Array(s);else{if(!Array.isArray(n)&&n.length!==s)throw new DeveloperError("If result is a typed array, it must have exactly array.length * 4 elements");n.length!==s&&(n.length=s)}for(let c=0;c<o;++c)Cartesian4.pack(t[c],n,c*4);return n},Cartesian4.unpackArray=function(t,n){if(Check.defined("array",t),Check.typeOf.number.greaterThanOrEquals("array.length",t.length,4),t.length%4!==0)throw new DeveloperError("array length must be a multiple of 4.");const o=t.length;defined(n)?n.length=o/4:n=new Array(o/4);for(let s=0;s<o;s+=4){const c=s/4;n[c]=Cartesian4.unpack(t,s,n[c])}return n},Cartesian4.fromArray=Cartesian4.unpack,Cartesian4.maximumComponent=function(t){return Check.typeOf.object("cartesian",t),Math.max(t.x,t.y,t.z,t.w)},Cartesian4.minimumComponent=function(t){return Check.typeOf.object("cartesian",t),Math.min(t.x,t.y,t.z,t.w)},Cartesian4.minimumByComponent=function(t,n,o){return Check.typeOf.object("first",t),Check.typeOf.object("second",n),Check.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.w=Math.min(t.w,n.w),o},Cartesian4.maximumByComponent=function(t,n,o){return Check.typeOf.object("first",t),Check.typeOf.object("second",n),Check.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.w=Math.max(t.w,n.w),o},Cartesian4.clamp=function(t,n,o,s){Check.typeOf.object("value",t),Check.typeOf.object("min",n),Check.typeOf.object("max",o),Check.typeOf.object("result",s);const c=CesiumMath.clamp(t.x,n.x,o.x),d=CesiumMath.clamp(t.y,n.y,o.y),h=CesiumMath.clamp(t.z,n.z,o.z),p=CesiumMath.clamp(t.w,n.w,o.w);return s.x=c,s.y=d,s.z=h,s.w=p,s},Cartesian4.magnitudeSquared=function(t){return Check.typeOf.object("cartesian",t),t.x*t.x+t.y*t.y+t.z*t.z+t.w*t.w},Cartesian4.magnitude=function(t){return Math.sqrt(Cartesian4.magnitudeSquared(t))};const distanceScratch=new Cartesian4;Cartesian4.distance=function(t,n){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Cartesian4.subtract(t,n,distanceScratch),Cartesian4.magnitude(distanceScratch)},Cartesian4.distanceSquared=function(t,n){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Cartesian4.subtract(t,n,distanceScratch),Cartesian4.magnitudeSquared(distanceScratch)},Cartesian4.normalize=function(t,n){Check.typeOf.object("cartesian",t),Check.typeOf.object("result",n);const o=Cartesian4.magnitude(t);if(n.x=t.x/o,n.y=t.y/o,n.z=t.z/o,n.w=t.w/o,isNaN(n.x)||isNaN(n.y)||isNaN(n.z)||isNaN(n.w))throw new DeveloperError("normalized result is not a number");return n},Cartesian4.dot=function(t,n){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),t.x*n.x+t.y*n.y+t.z*n.z+t.w*n.w},Cartesian4.multiplyComponents=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o.x=t.x*n.x,o.y=t.y*n.y,o.z=t.z*n.z,o.w=t.w*n.w,o},Cartesian4.divideComponents=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o.x=t.x/n.x,o.y=t.y/n.y,o.z=t.z/n.z,o.w=t.w/n.w,o},Cartesian4.add=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o.x=t.x+n.x,o.y=t.y+n.y,o.z=t.z+n.z,o.w=t.w+n.w,o},Cartesian4.subtract=function(t,n,o){return Check.typeOf.object("left",t),Check.typeOf.object("right",n),Check.typeOf.object("result",o),o.x=t.x-n.x,o.y=t.y-n.y,o.z=t.z-n.z,o.w=t.w-n.w,o},Cartesian4.multiplyByScalar=function(t,n,o){return Check.typeOf.object("cartesian",t),Check.typeOf.number("scalar",n),Check.typeOf.object("result",o),o.x=t.x*n,o.y=t.y*n,o.z=t.z*n,o.w=t.w*n,o},Cartesian4.divideByScalar=function(t,n,o){return Check.typeOf.object("cartesian",t),Check.typeOf.number("scalar",n),Check.typeOf.object("result",o),o.x=t.x/n,o.y=t.y/n,o.z=t.z/n,o.w=t.w/n,o},Cartesian4.negate=function(t,n){return Check.typeOf.object("cartesian",t),Check.typeOf.object("result",n),n.x=-t.x,n.y=-t.y,n.z=-t.z,n.w=-t.w,n},Cartesian4.abs=function(t,n){return Check.typeOf.object("cartesian",t),Check.typeOf.object("result",n),n.x=Math.abs(t.x),n.y=Math.abs(t.y),n.z=Math.abs(t.z),n.w=Math.abs(t.w),n};const lerpScratch$1=new Cartesian4;Cartesian4.lerp=function(t,n,o,s){return Check.typeOf.object("start",t),Check.typeOf.object("end",n),Check.typeOf.number("t",o),Check.typeOf.object("result",s),Cartesian4.multiplyByScalar(n,o,lerpScratch$1),s=Cartesian4.multiplyByScalar(t,1-o,s),Cartesian4.add(lerpScratch$1,s,s)};const mostOrthogonalAxisScratch=new Cartesian4;Cartesian4.mostOrthogonalAxis=function(t,n){Check.typeOf.object("cartesian",t),Check.typeOf.object("result",n);const o=Cartesian4.normalize(t,mostOrthogonalAxisScratch);return Cartesian4.abs(o,o),o.x<=o.y?o.x<=o.z?o.x<=o.w?n=Cartesian4.clone(Cartesian4.UNIT_X,n):n=Cartesian4.clone(Cartesian4.UNIT_W,n):o.z<=o.w?n=Cartesian4.clone(Cartesian4.UNIT_Z,n):n=Cartesian4.clone(Cartesian4.UNIT_W,n):o.y<=o.z?o.y<=o.w?n=Cartesian4.clone(Cartesian4.UNIT_Y,n):n=Cartesian4.clone(Cartesian4.UNIT_W,n):o.z<=o.w?n=Cartesian4.clone(Cartesian4.UNIT_Z,n):n=Cartesian4.clone(Cartesian4.UNIT_W,n),n},Cartesian4.equals=function(t,n){return t===n||defined(t)&&defined(n)&&t.x===n.x&&t.y===n.y&&t.z===n.z&&t.w===n.w},Cartesian4.equalsArray=function(t,n,o){return t.x===n[o]&&t.y===n[o+1]&&t.z===n[o+2]&&t.w===n[o+3]},Cartesian4.equalsEpsilon=function(t,n,o,s){return t===n||defined(t)&&defined(n)&&CesiumMath.equalsEpsilon(t.x,n.x,o,s)&&CesiumMath.equalsEpsilon(t.y,n.y,o,s)&&CesiumMath.equalsEpsilon(t.z,n.z,o,s)&&CesiumMath.equalsEpsilon(t.w,n.w,o,s)},Cartesian4.ZERO=Object.freeze(new Cartesian4(0,0,0,0)),Cartesian4.ONE=Object.freeze(new Cartesian4(1,1,1,1)),Cartesian4.UNIT_X=Object.freeze(new Cartesian4(1,0,0,0)),Cartesian4.UNIT_Y=Object.freeze(new Cartesian4(0,1,0,0)),Cartesian4.UNIT_Z=Object.freeze(new Cartesian4(0,0,1,0)),Cartesian4.UNIT_W=Object.freeze(new Cartesian4(0,0,0,1)),Cartesian4.prototype.clone=function(t){return Cartesian4.clone(this,t)},Cartesian4.prototype.equals=function(t){return Cartesian4.equals(this,t)},Cartesian4.prototype.equalsEpsilon=function(t,n,o){return Cartesian4.equalsEpsilon(this,t,n,o)},Cartesian4.prototype.toString=function(){return`(${this.x}, ${this.y}, ${this.z}, ${this.w})`};const scratchF32Array=new Float32Array(1),scratchU8Array=new Uint8Array(scratchF32Array.buffer),testU32=new Uint32Array([287454020]),testU8=new Uint8Array(testU32.buffer),littleEndian=testU8[0]===68;Cartesian4.packFloat=function(t,n){return Check.typeOf.number("value",t),defined(n)||(n=new Cartesian4),scratchF32Array[0]=t,littleEndian?(n.x=scratchU8Array[0],n.y=scratchU8Array[1],n.z=scratchU8Array[2],n.w=scratchU8Array[3]):(n.x=scratchU8Array[3],n.y=scratchU8Array[2],n.z=scratchU8Array[1],n.w=scratchU8Array[0]),n},Cartesian4.unpackFloat=function(t){return Check.typeOf.object("packedFloat",t),littleEndian?(scratchU8Array[0]=t.x,scratchU8Array[1]=t.y,scratchU8Array[2]=t.z,scratchU8Array[3]=t.w):(scratchU8Array[0]=t.w,scratchU8Array[1]=t.z,scratchU8Array[2]=t.y,scratchU8Array[3]=t.x),scratchF32Array[0]};function RuntimeError(t){this.name="RuntimeError",this.message=t;let n;try{throw new Error}catch(o){n=o.stack}this.stack=n}defined(Object.create)&&(RuntimeError.prototype=Object.create(Error.prototype),RuntimeError.prototype.constructor=RuntimeError),RuntimeError.prototype.toString=function(){let t=`${this.name}: ${this.message}`;return defined(this.stack)&&(t+=`
@@ -5829,7 +5829,7 @@ void main()
5829
5829
  `;let defaultVertexShaderSource=`${PolylineCommon}
5830
5830
  ${PolylineMaterialAppearanceVS}`;const defaultFragmentShaderSource=PolylineFS;FeatureDetection.isInternetExplorer()||(defaultVertexShaderSource=`#define CLIP_POLYLINE
5831
5831
  ${defaultVertexShaderSource}`);function PolylineMaterialAppearance(t){t=defaultValue(t,defaultValue.EMPTY_OBJECT);const n=defaultValue(t.translucent,!0),o=!1,s=PolylineMaterialAppearance.VERTEX_FORMAT;this.material=defined(t.material)?t.material:Material.fromType(Material.ColorType),this.translucent=n,this._vertexShaderSource=defaultValue(t.vertexShaderSource,defaultVertexShaderSource),this._fragmentShaderSource=defaultValue(t.fragmentShaderSource,defaultFragmentShaderSource),this._renderState=Appearance.getDefaultRenderState(n,o,t.renderState),this._closed=o,this._vertexFormat=s}Object.defineProperties(PolylineMaterialAppearance.prototype,{vertexShaderSource:{get:function(){let t=this._vertexShaderSource;return this.material.shaderSource.search(/in\s+float\s+v_polylineAngle;/g)!==-1&&(t=`#define POLYLINE_DASH
5832
- ${t}`),t}},fragmentShaderSource:{get:function(){return this._fragmentShaderSource}},renderState:{get:function(){return this._renderState}},closed:{get:function(){return this._closed}},vertexFormat:{get:function(){return this._vertexFormat}}}),PolylineMaterialAppearance.VERTEX_FORMAT=VertexFormat.POSITION_AND_ST,PolylineMaterialAppearance.prototype.getFragmentShaderSource=Appearance.prototype.getFragmentShaderSource,PolylineMaterialAppearance.prototype.isTranslucent=Appearance.prototype.isTranslucent,PolylineMaterialAppearance.prototype.getRenderState=Appearance.prototype.getRenderState;function GroundPolylinePrimitive(t){t=defaultValue(t,defaultValue.EMPTY_OBJECT),this.geometryInstances=t.geometryInstances,this._hasPerInstanceColors=!0;let n=t.appearance;defined(n)||(n=new PolylineMaterialAppearance),this.appearance=n,this.show=defaultValue(t.show,!0),this.classificationType=defaultValue(t.classificationType,ClassificationType$1.BOTH),this.debugShowBoundingVolume=defaultValue(t.debugShowBoundingVolume,!1),this._debugShowShadowVolume=defaultValue(t.debugShowShadowVolume,!1),this._primitiveOptions={geometryInstances:void 0,appearance:void 0,vertexCacheOptimize:!1,interleave:defaultValue(t.interleave,!1),releaseGeometryInstances:defaultValue(t.releaseGeometryInstances,!0),allowPicking:defaultValue(t.allowPicking,!0),asynchronous:defaultValue(t.asynchronous,!0),compressVertices:!1,_createShaderProgramFunction:void 0,_createCommandsFunction:void 0,_updateAndQueueCommandsFunction:void 0},this._zIndex=void 0,this._ready=!1,this._primitive=void 0,this._sp=void 0,this._sp2D=void 0,this._spMorph=void 0,this._renderState=getRenderState(!1),this._renderState3DTiles=getRenderState(!0),this._renderStateMorph=RenderState.fromCache({cull:{enabled:!0,face:CullFace$1.FRONT},depthTest:{enabled:!0},blending:BlendingState$1.PRE_MULTIPLIED_ALPHA_BLEND,depthMask:!1})}Object.defineProperties(GroundPolylinePrimitive.prototype,{interleave:{get:function(){return this._primitiveOptions.interleave}},releaseGeometryInstances:{get:function(){return this._primitiveOptions.releaseGeometryInstances}},allowPicking:{get:function(){return this._primitiveOptions.allowPicking}},asynchronous:{get:function(){return this._primitiveOptions.asynchronous}},ready:{get:function(){return this._ready}},debugShowShadowVolume:{get:function(){return this._debugShowShadowVolume}}}),GroundPolylinePrimitive.initializeTerrainHeights=function(){return ApproximateTerrainHeights.initialize()};function createShaderProgram(t,n,o){const s=n.context,c=t._primitive,d=c._attributeLocations;let h=c._batchTable.getVertexShaderCallback()(PolylineShadowVolumeVS);h=Primitive._appendShowToShader(c,h),h=Primitive._appendDistanceDisplayConditionToShader(c,h),h=Primitive._modifyShaderPosition(t,h,n.scene3DOnly);let p=c._batchTable.getVertexShaderCallback()(PolylineShadowVolumeMorphVS);p=Primitive._appendShowToShader(c,p),p=Primitive._appendDistanceDisplayConditionToShader(c,p),p=Primitive._modifyShaderPosition(t,p,n.scene3DOnly);let y=c._batchTable.getVertexShaderCallback()(PolylineShadowVolumeFS);const S=[`GLOBE_MINIMUM_ALTITUDE ${n.mapProjection.ellipsoid.minimumRadius.toFixed(1)}`];let P="",L="";defined(o.material)?(L=defined(o.material)?o.material.shaderSource:"",L.search(/in\s+float\s+v_polylineAngle;/g)!==-1&&S.push("ANGLE_VARYING"),L.search(/in\s+float\s+v_width;/g)!==-1&&S.push("WIDTH_VARYING")):P="PER_INSTANCE_COLOR",S.push(P);const F=t.debugShowShadowVolume?["DEBUG_SHOW_VOLUME",P]:[P],N=new ShaderSource({defines:S,sources:[h]}),z=new ShaderSource({defines:F,sources:[L,y]});t._sp=ShaderProgram.replaceCache({context:s,shaderProgram:c._sp,vertexShaderSource:N,fragmentShaderSource:z,attributeLocations:d});let W=s.shaderCache.getDerivedShaderProgram(t._sp,"2dColor");if(!defined(W)){const Pe=new ShaderSource({defines:S.concat(["COLUMBUS_VIEW_2D"]),sources:[h]});W=s.shaderCache.createDerivedShaderProgram(t._sp,"2dColor",{context:s,shaderProgram:t._sp2D,vertexShaderSource:Pe,fragmentShaderSource:z,attributeLocations:d})}t._sp2D=W;let lt=s.shaderCache.getDerivedShaderProgram(t._sp,"MorphColor");if(!defined(lt)){const Pe=new ShaderSource({defines:S.concat([`MAX_TERRAIN_HEIGHT ${ApproximateTerrainHeights._defaultMaxTerrainHeight.toFixed(1)}`]),sources:[p]});y=c._batchTable.getVertexShaderCallback()(PolylineShadowVolumeMorphFS);const se=new ShaderSource({defines:F,sources:[L,y]});lt=s.shaderCache.createDerivedShaderProgram(t._sp,"MorphColor",{context:s,shaderProgram:t._spMorph,vertexShaderSource:Pe,fragmentShaderSource:se,attributeLocations:d})}t._spMorph=lt}function getRenderState(t){return RenderState.fromCache({cull:{enabled:!0},blending:BlendingState$1.PRE_MULTIPLIED_ALPHA_BLEND,depthMask:!1,stencilTest:{enabled:t,frontFunction:StencilFunction$1.EQUAL,frontOperation:{fail:StencilOperation$1.KEEP,zFail:StencilOperation$1.KEEP,zPass:StencilOperation$1.KEEP},backFunction:StencilFunction$1.EQUAL,backOperation:{fail:StencilOperation$1.KEEP,zFail:StencilOperation$1.KEEP,zPass:StencilOperation$1.KEEP},reference:StencilConstants$1.CESIUM_3D_TILE_MASK,mask:StencilConstants$1.CESIUM_3D_TILE_MASK}})}function createCommands(t,n,o,s,c,d){const h=t._primitive,p=h._va.length;c.length=p,d.length=p;const S=n instanceof PolylineColorAppearance?{}:o._uniforms,P=h._batchTable.getUniformMapCallback()(S);for(let L=0;L<p;L++){const F=h._va[L];let N=c[L];defined(N)||(N=c[L]=new DrawCommand({owner:t,primitiveType:h._primitiveType})),N.vertexArray=F,N.renderState=t._renderState,N.shaderProgram=t._sp,N.uniformMap=P,N.pass=Pass$1.TERRAIN_CLASSIFICATION,N.pickId="czm_batchTable_pickColor(v_endPlaneNormalEcAndBatchId.w)";const z=DrawCommand.shallowClone(N,N.derivedCommands.tileset);z.renderState=t._renderState3DTiles,z.pass=Pass$1.CESIUM_3D_TILE_CLASSIFICATION,N.derivedCommands.tileset=z;const W=DrawCommand.shallowClone(N,N.derivedCommands.color2D);W.shaderProgram=t._sp2D,N.derivedCommands.color2D=W;const lt=DrawCommand.shallowClone(z,z.derivedCommands.color2D);lt.shaderProgram=t._sp2D,z.derivedCommands.color2D=lt;const Pe=DrawCommand.shallowClone(N,N.derivedCommands.colorMorph);Pe.renderState=t._renderStateMorph,Pe.shaderProgram=t._spMorph,Pe.pickId="czm_batchTable_pickColor(v_batchId)",N.derivedCommands.colorMorph=Pe}}function updateAndQueueCommand(t,n,o,s,c,d,h){o.mode===SceneMode$1.MORPHING?n=n.derivedCommands.colorMorph:o.mode!==SceneMode$1.SCENE3D&&(n=n.derivedCommands.color2D),n.modelMatrix=s,n.boundingVolume=d,n.cull=c,n.debugShowBoundingVolume=h,o.commandList.push(n)}function updateAndQueueCommands(t,n,o,s,c,d,h){const p=t._primitive;Primitive._updateBoundingVolumes(p,n,c);let y;n.mode===SceneMode$1.SCENE3D?y=p._boundingSphereWC:n.mode===SceneMode$1.COLUMBUS_VIEW?y=p._boundingSphereCV:n.mode===SceneMode$1.SCENE2D&&defined(p._boundingSphere2D)?y=p._boundingSphere2D:defined(p._boundingSphereMorph)&&(y=p._boundingSphereMorph);const S=n.mode===SceneMode$1.MORPHING,P=t.classificationType,L=P!==ClassificationType$1.CESIUM_3D_TILE,F=P!==ClassificationType$1.TERRAIN&&!S;let N;const z=n.passes;if(z.render||z.pick&&p.allowPicking){const W=o.length;for(let lt=0;lt<W;++lt){const Pe=y[lt];L&&(N=o[lt],updateAndQueueCommand(t,N,n,c,d,Pe,h)),F&&(N=o[lt].derivedCommands.tileset,updateAndQueueCommand(t,N,n,c,d,Pe,h))}}}GroundPolylinePrimitive.prototype.update=function(t){if(!defined(this._primitive)&&!defined(this.geometryInstances))return;if(!ApproximateTerrainHeights.initialized){if(!this.asynchronous)throw new DeveloperError("For synchronous GroundPolylinePrimitives, you must call GroundPolylinePrimitives.initializeTerrainHeights() and wait for the returned promise to resolve.");GroundPolylinePrimitive.initializeTerrainHeights();return}let n;const o=this,s=this._primitiveOptions;if(!defined(this._primitive)){const c=Array.isArray(this.geometryInstances)?this.geometryInstances:[this.geometryInstances],d=c.length,h=new Array(d);let p;for(n=0;n<d;++n)if(p=c[n].attributes,!defined(p)||!defined(p.color)){this._hasPerInstanceColors=!1;break}for(n=0;n<d;++n){const y=c[n];p={};const S=y.attributes;for(const P in S)S.hasOwnProperty(P)&&(p[P]=S[P]);defined(p.width)||(p.width=new GeometryInstanceAttribute({componentDatatype:ComponentDatatype$1.UNSIGNED_BYTE,componentsPerAttribute:1,value:[y.geometry.width]})),y.geometry._scene3DOnly=t.scene3DOnly,GroundPolylineGeometry.setProjectionAndEllipsoid(y.geometry,t.mapProjection),h[n]=new GeometryInstance({geometry:y.geometry,attributes:p,id:y.id,pickPrimitive:o})}s.geometryInstances=h,s.appearance=this.appearance,s._createShaderProgramFunction=function(y,S,P){createShaderProgram(o,S,P)},s._createCommandsFunction=function(y,S,P,L,F,N,z){createCommands(o,S,P,L,N,z)},s._updateAndQueueCommandsFunction=function(y,S,P,L,F,N,z,W){updateAndQueueCommands(o,S,P,L,F,N,z)},this._primitive=new Primitive(s)}if(this.appearance instanceof PolylineColorAppearance&&!this._hasPerInstanceColors)throw new DeveloperError("All GeometryInstances must have color attributes to use PolylineColorAppearance with GroundPolylinePrimitive.");this._primitive.appearance=this.appearance,this._primitive.show=this.show,this._primitive.debugShowBoundingVolume=this.debugShowBoundingVolume,this._primitive.update(t),t.afterRender.push(()=>{!this._ready&&defined(this._primitive)&&this._primitive.ready&&(this._ready=!0,this.releaseGeometryInstances&&(this.geometryInstances=void 0))})},GroundPolylinePrimitive.prototype.getGeometryInstanceAttributes=function(t){if(!defined(this._primitive))throw new DeveloperError("must call update before calling getGeometryInstanceAttributes");return this._primitive.getGeometryInstanceAttributes(t)},GroundPolylinePrimitive.isSupported=function(t){return t.frameState.context.depthTexture},GroundPolylinePrimitive.prototype.isDestroyed=function(){return!1},GroundPolylinePrimitive.prototype.destroy=function(){return this._primitive=this._primitive&&this._primitive.destroy(),this._sp=this._sp&&this._sp.destroy(),this._sp2D=void 0,this._spMorph=void 0,destroyObject(this)};const defaultRepeat=new Cartesian2(1,1),defaultTransparent=!1,defaultColor$1=Color$1.WHITE;function ImageMaterialProperty(t){t=defaultValue(t,defaultValue.EMPTY_OBJECT),this._definitionChanged=new Event$1,this._image=void 0,this._imageSubscription=void 0,this._repeat=void 0,this._repeatSubscription=void 0,this._color=void 0,this._colorSubscription=void 0,this._transparent=void 0,this._transparentSubscription=void 0,this.image=t.image,this.repeat=t.repeat,this.color=t.color,this.transparent=t.transparent}Object.defineProperties(ImageMaterialProperty.prototype,{isConstant:{get:function(){return Property.isConstant(this._image)&&Property.isConstant(this._repeat)}},definitionChanged:{get:function(){return this._definitionChanged}},image:createPropertyDescriptor("image"),repeat:createPropertyDescriptor("repeat"),color:createPropertyDescriptor("color"),transparent:createPropertyDescriptor("transparent")}),ImageMaterialProperty.prototype.getType=function(t){return"Image"},ImageMaterialProperty.prototype.getValue=function(t,n){return defined(n)||(n={}),n.image=Property.getValueOrUndefined(this._image,t),n.repeat=Property.getValueOrClonedDefault(this._repeat,t,defaultRepeat,n.repeat),n.color=Property.getValueOrClonedDefault(this._color,t,defaultColor$1,n.color),Property.getValueOrDefault(this._transparent,t,defaultTransparent)&&(n.color.alpha=Math.min(.99,n.color.alpha)),n},ImageMaterialProperty.prototype.equals=function(t){return this===t||t instanceof ImageMaterialProperty&&Property.equals(this._image,t._image)&&Property.equals(this._repeat,t._repeat)&&Property.equals(this._color,t._color)&&Property.equals(this._transparent,t._transparent)};function createMaterialProperty(t){if(t instanceof Color$1)return new ColorMaterialProperty(t);if(typeof t=="string"||t instanceof Resource$1||t instanceof HTMLCanvasElement||t instanceof HTMLVideoElement){const n=new ImageMaterialProperty;return n.image=t,n}throw new DeveloperError(`Unable to infer material type: ${t}`)}function createMaterialPropertyDescriptor(t,n){return createPropertyDescriptor(t,n,createMaterialProperty)}function BoxGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._dimensions=void 0,this._dimensionsSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(BoxGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),dimensions:createPropertyDescriptor("dimensions"),heightReference:createPropertyDescriptor("heightReference"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),BoxGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.dimensions=this.dimensions,t.heightReference=this.heightReference,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new BoxGraphics(this)},BoxGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.dimensions=defaultValue(this.dimensions,t.dimensions),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};function PositionProperty(){DeveloperError.throwInstantiationError()}Object.defineProperties(PositionProperty.prototype,{isConstant:{get:DeveloperError.throwInstantiationError},definitionChanged:{get:DeveloperError.throwInstantiationError},referenceFrame:{get:DeveloperError.throwInstantiationError}}),PositionProperty.prototype.getValue=DeveloperError.throwInstantiationError,PositionProperty.prototype.getValueInReferenceFrame=DeveloperError.throwInstantiationError,PositionProperty.prototype.equals=DeveloperError.throwInstantiationError;const scratchMatrix3=new Matrix3;PositionProperty.convertToReferenceFrame=function(t,n,o,s,c){if(!defined(n))return n;if(defined(c)||(c=new Cartesian3),o===s)return Cartesian3.clone(n,c);let d=Transforms.computeIcrfToFixedMatrix(t,scratchMatrix3);if(defined(d)||(d=Transforms.computeTemeToPseudoFixedMatrix(t,scratchMatrix3)),o===ReferenceFrame$1.INERTIAL)return Matrix3.multiplyByVector(d,n,c);if(o===ReferenceFrame$1.FIXED)return Matrix3.multiplyByVector(Matrix3.transpose(d,scratchMatrix3),n,c)};function ConstantPositionProperty(t,n){this._definitionChanged=new Event$1,this._value=Cartesian3.clone(t),this._referenceFrame=defaultValue(n,ReferenceFrame$1.FIXED)}Object.defineProperties(ConstantPositionProperty.prototype,{isConstant:{get:function(){return!defined(this._value)||this._referenceFrame===ReferenceFrame$1.FIXED}},definitionChanged:{get:function(){return this._definitionChanged}},referenceFrame:{get:function(){return this._referenceFrame}}}),ConstantPositionProperty.prototype.getValue=function(t,n){return this.getValueInReferenceFrame(t,ReferenceFrame$1.FIXED,n)},ConstantPositionProperty.prototype.setValue=function(t,n){let o=!1;Cartesian3.equals(this._value,t)||(o=!0,this._value=Cartesian3.clone(t)),defined(n)&&this._referenceFrame!==n&&(o=!0,this._referenceFrame=n),o&&this._definitionChanged.raiseEvent(this)},ConstantPositionProperty.prototype.getValueInReferenceFrame=function(t,n,o){if(!defined(t))throw new DeveloperError("time is required.");if(!defined(n))throw new DeveloperError("referenceFrame is required.");return PositionProperty.convertToReferenceFrame(t,this._value,this._referenceFrame,n,o)},ConstantPositionProperty.prototype.equals=function(t){return this===t||t instanceof ConstantPositionProperty&&Cartesian3.equals(this._value,t._value)&&this._referenceFrame===t._referenceFrame};function CorridorGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._positions=void 0,this._positionsSubscription=void 0,this._width=void 0,this._widthSubscription=void 0,this._height=void 0,this._heightSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._extrudedHeight=void 0,this._extrudedHeightSubscription=void 0,this._extrudedHeightReference=void 0,this._extrudedHeightReferenceSubscription=void 0,this._cornerType=void 0,this._cornerTypeSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._classificationType=void 0,this._classificationTypeSubscription=void 0,this._zIndex=void 0,this._zIndexSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(CorridorGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),positions:createPropertyDescriptor("positions"),width:createPropertyDescriptor("width"),height:createPropertyDescriptor("height"),heightReference:createPropertyDescriptor("heightReference"),extrudedHeight:createPropertyDescriptor("extrudedHeight"),extrudedHeightReference:createPropertyDescriptor("extrudedHeightReference"),cornerType:createPropertyDescriptor("cornerType"),granularity:createPropertyDescriptor("granularity"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),classificationType:createPropertyDescriptor("classificationType"),zIndex:createPropertyDescriptor("zIndex")}),CorridorGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.positions=this.positions,t.width=this.width,t.height=this.height,t.heightReference=this.heightReference,t.extrudedHeight=this.extrudedHeight,t.extrudedHeightReference=this.extrudedHeightReference,t.cornerType=this.cornerType,t.granularity=this.granularity,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t.classificationType=this.classificationType,t.zIndex=this.zIndex,t):new CorridorGraphics(this)},CorridorGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.positions=defaultValue(this.positions,t.positions),this.width=defaultValue(this.width,t.width),this.height=defaultValue(this.height,t.height),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.extrudedHeight=defaultValue(this.extrudedHeight,t.extrudedHeight),this.extrudedHeightReference=defaultValue(this.extrudedHeightReference,t.extrudedHeightReference),this.cornerType=defaultValue(this.cornerType,t.cornerType),this.granularity=defaultValue(this.granularity,t.granularity),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.classificationType=defaultValue(this.classificationType,t.classificationType),this.zIndex=defaultValue(this.zIndex,t.zIndex)};function createRawProperty(t){return t}function createRawPropertyDescriptor(t,n){return createPropertyDescriptor(t,n,createRawProperty)}function CylinderGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._length=void 0,this._lengthSubscription=void 0,this._topRadius=void 0,this._topRadiusSubscription=void 0,this._bottomRadius=void 0,this._bottomRadiusSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._numberOfVerticalLines=void 0,this._numberOfVerticalLinesSubscription=void 0,this._slices=void 0,this._slicesSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(CylinderGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),length:createPropertyDescriptor("length"),topRadius:createPropertyDescriptor("topRadius"),bottomRadius:createPropertyDescriptor("bottomRadius"),heightReference:createPropertyDescriptor("heightReference"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),numberOfVerticalLines:createPropertyDescriptor("numberOfVerticalLines"),slices:createPropertyDescriptor("slices"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),CylinderGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.length=this.length,t.topRadius=this.topRadius,t.bottomRadius=this.bottomRadius,t.heightReference=this.heightReference,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.numberOfVerticalLines=this.numberOfVerticalLines,t.slices=this.slices,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new CylinderGraphics(this)},CylinderGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.length=defaultValue(this.length,t.length),this.topRadius=defaultValue(this.topRadius,t.topRadius),this.bottomRadius=defaultValue(this.bottomRadius,t.bottomRadius),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.numberOfVerticalLines=defaultValue(this.numberOfVerticalLines,t.numberOfVerticalLines),this.slices=defaultValue(this.slices,t.slices),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};function EllipseGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._semiMajorAxis=void 0,this._semiMajorAxisSubscription=void 0,this._semiMinorAxis=void 0,this._semiMinorAxisSubscription=void 0,this._height=void 0,this._heightSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._extrudedHeight=void 0,this._extrudedHeightSubscription=void 0,this._extrudedHeightReference=void 0,this._extrudedHeightReferenceSubscription=void 0,this._rotation=void 0,this._rotationSubscription=void 0,this._stRotation=void 0,this._stRotationSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._numberOfVerticalLines=void 0,this._numberOfVerticalLinesSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._classificationType=void 0,this._classificationTypeSubscription=void 0,this._zIndex=void 0,this._zIndexSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(EllipseGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),semiMajorAxis:createPropertyDescriptor("semiMajorAxis"),semiMinorAxis:createPropertyDescriptor("semiMinorAxis"),height:createPropertyDescriptor("height"),heightReference:createPropertyDescriptor("heightReference"),extrudedHeight:createPropertyDescriptor("extrudedHeight"),extrudedHeightReference:createPropertyDescriptor("extrudedHeightReference"),rotation:createPropertyDescriptor("rotation"),stRotation:createPropertyDescriptor("stRotation"),granularity:createPropertyDescriptor("granularity"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),numberOfVerticalLines:createPropertyDescriptor("numberOfVerticalLines"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),classificationType:createPropertyDescriptor("classificationType"),zIndex:createPropertyDescriptor("zIndex")}),EllipseGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.semiMajorAxis=this.semiMajorAxis,t.semiMinorAxis=this.semiMinorAxis,t.height=this.height,t.heightReference=this.heightReference,t.extrudedHeight=this.extrudedHeight,t.extrudedHeightReference=this.extrudedHeightReference,t.rotation=this.rotation,t.stRotation=this.stRotation,t.granularity=this.granularity,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.numberOfVerticalLines=this.numberOfVerticalLines,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t.classificationType=this.classificationType,t.zIndex=this.zIndex,t):new EllipseGraphics(this)},EllipseGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.semiMajorAxis=defaultValue(this.semiMajorAxis,t.semiMajorAxis),this.semiMinorAxis=defaultValue(this.semiMinorAxis,t.semiMinorAxis),this.height=defaultValue(this.height,t.height),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.extrudedHeight=defaultValue(this.extrudedHeight,t.extrudedHeight),this.extrudedHeightReference=defaultValue(this.extrudedHeightReference,t.extrudedHeightReference),this.rotation=defaultValue(this.rotation,t.rotation),this.stRotation=defaultValue(this.stRotation,t.stRotation),this.granularity=defaultValue(this.granularity,t.granularity),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.numberOfVerticalLines=defaultValue(this.numberOfVerticalLines,t.numberOfVerticalLines),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.classificationType=defaultValue(this.classificationType,t.classificationType),this.zIndex=defaultValue(this.zIndex,t.zIndex)};function EllipsoidGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._radii=void 0,this._radiiSubscription=void 0,this._innerRadii=void 0,this._innerRadiiSubscription=void 0,this._minimumClock=void 0,this._minimumClockSubscription=void 0,this._maximumClock=void 0,this._maximumClockSubscription=void 0,this._minimumCone=void 0,this._minimumConeSubscription=void 0,this._maximumCone=void 0,this._maximumConeSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._stackPartitions=void 0,this._stackPartitionsSubscription=void 0,this._slicePartitions=void 0,this._slicePartitionsSubscription=void 0,this._subdivisions=void 0,this._subdivisionsSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(EllipsoidGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),radii:createPropertyDescriptor("radii"),innerRadii:createPropertyDescriptor("innerRadii"),minimumClock:createPropertyDescriptor("minimumClock"),maximumClock:createPropertyDescriptor("maximumClock"),minimumCone:createPropertyDescriptor("minimumCone"),maximumCone:createPropertyDescriptor("maximumCone"),heightReference:createPropertyDescriptor("heightReference"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),stackPartitions:createPropertyDescriptor("stackPartitions"),slicePartitions:createPropertyDescriptor("slicePartitions"),subdivisions:createPropertyDescriptor("subdivisions"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),EllipsoidGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.radii=this.radii,t.innerRadii=this.innerRadii,t.minimumClock=this.minimumClock,t.maximumClock=this.maximumClock,t.minimumCone=this.minimumCone,t.maximumCone=this.maximumCone,t.heightReference=this.heightReference,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.stackPartitions=this.stackPartitions,t.slicePartitions=this.slicePartitions,t.subdivisions=this.subdivisions,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new EllipsoidGraphics(this)},EllipsoidGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.radii=defaultValue(this.radii,t.radii),this.innerRadii=defaultValue(this.innerRadii,t.innerRadii),this.minimumClock=defaultValue(this.minimumClock,t.minimumClock),this.maximumClock=defaultValue(this.maximumClock,t.maximumClock),this.minimumCone=defaultValue(this.minimumCone,t.minimumCone),this.maximumCone=defaultValue(this.maximumCone,t.maximumCone),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.stackPartitions=defaultValue(this.stackPartitions,t.stackPartitions),this.slicePartitions=defaultValue(this.slicePartitions,t.slicePartitions),this.subdivisions=defaultValue(this.subdivisions,t.subdivisions),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};function LabelGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._text=void 0,this._textSubscription=void 0,this._font=void 0,this._fontSubscription=void 0,this._style=void 0,this._styleSubscription=void 0,this._scale=void 0,this._scaleSubscription=void 0,this._showBackground=void 0,this._showBackgroundSubscription=void 0,this._backgroundColor=void 0,this._backgroundColorSubscription=void 0,this._backgroundPadding=void 0,this._backgroundPaddingSubscription=void 0,this._pixelOffset=void 0,this._pixelOffsetSubscription=void 0,this._eyeOffset=void 0,this._eyeOffsetSubscription=void 0,this._horizontalOrigin=void 0,this._horizontalOriginSubscription=void 0,this._verticalOrigin=void 0,this._verticalOriginSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._fillColor=void 0,this._fillColorSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._translucencyByDistance=void 0,this._translucencyByDistanceSubscription=void 0,this._pixelOffsetScaleByDistance=void 0,this._pixelOffsetScaleByDistanceSubscription=void 0,this._scaleByDistance=void 0,this._scaleByDistanceSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._disableDepthTestDistance=void 0,this._disableDepthTestDistanceSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(LabelGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),text:createPropertyDescriptor("text"),font:createPropertyDescriptor("font"),style:createPropertyDescriptor("style"),scale:createPropertyDescriptor("scale"),showBackground:createPropertyDescriptor("showBackground"),backgroundColor:createPropertyDescriptor("backgroundColor"),backgroundPadding:createPropertyDescriptor("backgroundPadding"),pixelOffset:createPropertyDescriptor("pixelOffset"),eyeOffset:createPropertyDescriptor("eyeOffset"),horizontalOrigin:createPropertyDescriptor("horizontalOrigin"),verticalOrigin:createPropertyDescriptor("verticalOrigin"),heightReference:createPropertyDescriptor("heightReference"),fillColor:createPropertyDescriptor("fillColor"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),translucencyByDistance:createPropertyDescriptor("translucencyByDistance"),pixelOffsetScaleByDistance:createPropertyDescriptor("pixelOffsetScaleByDistance"),scaleByDistance:createPropertyDescriptor("scaleByDistance"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),disableDepthTestDistance:createPropertyDescriptor("disableDepthTestDistance")}),LabelGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.text=this.text,t.font=this.font,t.style=this.style,t.scale=this.scale,t.showBackground=this.showBackground,t.backgroundColor=this.backgroundColor,t.backgroundPadding=this.backgroundPadding,t.pixelOffset=this.pixelOffset,t.eyeOffset=this.eyeOffset,t.horizontalOrigin=this.horizontalOrigin,t.verticalOrigin=this.verticalOrigin,t.heightReference=this.heightReference,t.fillColor=this.fillColor,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.translucencyByDistance=this.translucencyByDistance,t.pixelOffsetScaleByDistance=this.pixelOffsetScaleByDistance,t.scaleByDistance=this.scaleByDistance,t.distanceDisplayCondition=this.distanceDisplayCondition,t.disableDepthTestDistance=this.disableDepthTestDistance,t):new LabelGraphics(this)},LabelGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.text=defaultValue(this.text,t.text),this.font=defaultValue(this.font,t.font),this.style=defaultValue(this.style,t.style),this.scale=defaultValue(this.scale,t.scale),this.showBackground=defaultValue(this.showBackground,t.showBackground),this.backgroundColor=defaultValue(this.backgroundColor,t.backgroundColor),this.backgroundPadding=defaultValue(this.backgroundPadding,t.backgroundPadding),this.pixelOffset=defaultValue(this.pixelOffset,t.pixelOffset),this.eyeOffset=defaultValue(this.eyeOffset,t.eyeOffset),this.horizontalOrigin=defaultValue(this.horizontalOrigin,t.horizontalOrigin),this.verticalOrigin=defaultValue(this.verticalOrigin,t.verticalOrigin),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.fillColor=defaultValue(this.fillColor,t.fillColor),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.translucencyByDistance=defaultValue(this.translucencyByDistance,t.translucencyByDistance),this.pixelOffsetScaleByDistance=defaultValue(this.pixelOffsetScaleByDistance,t.pixelOffsetScaleByDistance),this.scaleByDistance=defaultValue(this.scaleByDistance,t.scaleByDistance),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.disableDepthTestDistance=defaultValue(this.disableDepthTestDistance,t.disableDepthTestDistance)};const defaultNodeTransformation=new TranslationRotationScale;function NodeTransformationProperty(t){t=defaultValue(t,defaultValue.EMPTY_OBJECT),this._definitionChanged=new Event$1,this._translation=void 0,this._translationSubscription=void 0,this._rotation=void 0,this._rotationSubscription=void 0,this._scale=void 0,this._scaleSubscription=void 0,this.translation=t.translation,this.rotation=t.rotation,this.scale=t.scale}Object.defineProperties(NodeTransformationProperty.prototype,{isConstant:{get:function(){return Property.isConstant(this._translation)&&Property.isConstant(this._rotation)&&Property.isConstant(this._scale)}},definitionChanged:{get:function(){return this._definitionChanged}},translation:createPropertyDescriptor("translation"),rotation:createPropertyDescriptor("rotation"),scale:createPropertyDescriptor("scale")}),NodeTransformationProperty.prototype.getValue=function(t,n){return defined(n)||(n=new TranslationRotationScale),n.translation=Property.getValueOrClonedDefault(this._translation,t,defaultNodeTransformation.translation,n.translation),n.rotation=Property.getValueOrClonedDefault(this._rotation,t,defaultNodeTransformation.rotation,n.rotation),n.scale=Property.getValueOrClonedDefault(this._scale,t,defaultNodeTransformation.scale,n.scale),n},NodeTransformationProperty.prototype.equals=function(t){return this===t||t instanceof NodeTransformationProperty&&Property.equals(this._translation,t._translation)&&Property.equals(this._rotation,t._rotation)&&Property.equals(this._scale,t._scale)};function PropertyBag(t,n){this._propertyNames=[],this._definitionChanged=new Event$1,defined(t)&&this.merge(t,n)}Object.defineProperties(PropertyBag.prototype,{propertyNames:{get:function(){return this._propertyNames}},isConstant:{get:function(){const t=this._propertyNames;for(let n=0,o=t.length;n<o;n++)if(!Property.isConstant(this[t[n]]))return!1;return!0}},definitionChanged:{get:function(){return this._definitionChanged}}}),PropertyBag.prototype.hasProperty=function(t){return this._propertyNames.indexOf(t)!==-1};function createConstantProperty(t){return new ConstantProperty(t)}PropertyBag.prototype.addProperty=function(t,n,o){const s=this._propertyNames;if(!defined(t))throw new DeveloperError("propertyName is required.");if(s.indexOf(t)!==-1)throw new DeveloperError(`${t} is already a registered property.`);s.push(t),Object.defineProperty(this,t,createPropertyDescriptor(t,!0,defaultValue(o,createConstantProperty))),defined(n)&&(this[t]=n),this._definitionChanged.raiseEvent(this)},PropertyBag.prototype.removeProperty=function(t){const o=this._propertyNames.indexOf(t);if(!defined(t))throw new DeveloperError("propertyName is required.");if(o===-1)throw new DeveloperError(`${t} is not a registered property.`);this._propertyNames.splice(o,1),delete this[t],this._definitionChanged.raiseEvent(this)},PropertyBag.prototype.getValue=function(t,n){if(!defined(t))throw new DeveloperError("time is required.");defined(n)||(n={});const o=this._propertyNames;for(let s=0,c=o.length;s<c;s++){const d=o[s];n[d]=Property.getValueOrUndefined(this[d],t,n[d])}return n},PropertyBag.prototype.merge=function(t,n){if(!defined(t))throw new DeveloperError("source is required.");const o=this._propertyNames,s=defined(t._propertyNames)?t._propertyNames:Object.keys(t);for(let c=0,d=s.length;c<d;c++){const h=s[c],p=this[h],y=t[h];p===void 0&&o.indexOf(h)===-1&&this.addProperty(h,void 0,n),y!==void 0&&(p!==void 0?defined(p)&&defined(p.merge)&&p.merge(y):defined(y)&&defined(y.merge)&&defined(y.clone)?this[h]=y.clone():this[h]=y)}};function propertiesEqual(t,n){const o=t._propertyNames,s=n._propertyNames,c=o.length;if(c!==s.length)return!1;for(let d=0;d<c;++d){const h=o[d];if(s.indexOf(h)===-1||!Property.equals(t[h],n[h]))return!1}return!0}PropertyBag.prototype.equals=function(t){return this===t||t instanceof PropertyBag&&propertiesEqual(this,t)};function createNodeTransformationProperty(t){return new NodeTransformationProperty(t)}function createNodeTransformationPropertyBag(t){return new PropertyBag(t,createNodeTransformationProperty)}function createArticulationStagePropertyBag(t){return new PropertyBag(t)}function ModelGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._uri=void 0,this._uriSubscription=void 0,this._scale=void 0,this._scaleSubscription=void 0,this._minimumPixelSize=void 0,this._minimumPixelSizeSubscription=void 0,this._maximumScale=void 0,this._maximumScaleSubscription=void 0,this._incrementallyLoadTextures=void 0,this._incrementallyLoadTexturesSubscription=void 0,this._runAnimations=void 0,this._runAnimationsSubscription=void 0,this._clampAnimations=void 0,this._clampAnimationsSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._silhouetteColor=void 0,this._silhouetteColorSubscription=void 0,this._silhouetteSize=void 0,this._silhouetteSizeSubscription=void 0,this._color=void 0,this._colorSubscription=void 0,this._colorBlendMode=void 0,this._colorBlendModeSubscription=void 0,this._colorBlendAmount=void 0,this._colorBlendAmountSubscription=void 0,this._imageBasedLightingFactor=void 0,this._imageBasedLightingFactorSubscription=void 0,this._lightColor=void 0,this._lightColorSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._nodeTransformations=void 0,this._nodeTransformationsSubscription=void 0,this._articulations=void 0,this._articulationsSubscription=void 0,this._clippingPlanes=void 0,this._clippingPlanesSubscription=void 0,this._customShader=void 0,this._customShaderSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(ModelGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),uri:createPropertyDescriptor("uri"),scale:createPropertyDescriptor("scale"),minimumPixelSize:createPropertyDescriptor("minimumPixelSize"),maximumScale:createPropertyDescriptor("maximumScale"),incrementallyLoadTextures:createPropertyDescriptor("incrementallyLoadTextures"),runAnimations:createPropertyDescriptor("runAnimations"),clampAnimations:createPropertyDescriptor("clampAnimations"),shadows:createPropertyDescriptor("shadows"),heightReference:createPropertyDescriptor("heightReference"),silhouetteColor:createPropertyDescriptor("silhouetteColor"),silhouetteSize:createPropertyDescriptor("silhouetteSize"),color:createPropertyDescriptor("color"),colorBlendMode:createPropertyDescriptor("colorBlendMode"),colorBlendAmount:createPropertyDescriptor("colorBlendAmount"),imageBasedLightingFactor:createPropertyDescriptor("imageBasedLightingFactor"),lightColor:createPropertyDescriptor("lightColor"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),nodeTransformations:createPropertyDescriptor("nodeTransformations",void 0,createNodeTransformationPropertyBag),articulations:createPropertyDescriptor("articulations",void 0,createArticulationStagePropertyBag),clippingPlanes:createPropertyDescriptor("clippingPlanes"),customShader:createPropertyDescriptor("customShader")}),ModelGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.uri=this.uri,t.scale=this.scale,t.minimumPixelSize=this.minimumPixelSize,t.maximumScale=this.maximumScale,t.incrementallyLoadTextures=this.incrementallyLoadTextures,t.runAnimations=this.runAnimations,t.clampAnimations=this.clampAnimations,t.heightReference=this._heightReference,t.silhouetteColor=this.silhouetteColor,t.silhouetteSize=this.silhouetteSize,t.color=this.color,t.colorBlendMode=this.colorBlendMode,t.colorBlendAmount=this.colorBlendAmount,t.imageBasedLightingFactor=this.imageBasedLightingFactor,t.lightColor=this.lightColor,t.distanceDisplayCondition=this.distanceDisplayCondition,t.nodeTransformations=this.nodeTransformations,t.articulations=this.articulations,t.clippingPlanes=this.clippingPlanes,t.customShader=this.customShader,t):new ModelGraphics(this)},ModelGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.uri=defaultValue(this.uri,t.uri),this.scale=defaultValue(this.scale,t.scale),this.minimumPixelSize=defaultValue(this.minimumPixelSize,t.minimumPixelSize),this.maximumScale=defaultValue(this.maximumScale,t.maximumScale),this.incrementallyLoadTextures=defaultValue(this.incrementallyLoadTextures,t.incrementallyLoadTextures),this.runAnimations=defaultValue(this.runAnimations,t.runAnimations),this.clampAnimations=defaultValue(this.clampAnimations,t.clampAnimations),this.shadows=defaultValue(this.shadows,t.shadows),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.silhouetteColor=defaultValue(this.silhouetteColor,t.silhouetteColor),this.silhouetteSize=defaultValue(this.silhouetteSize,t.silhouetteSize),this.color=defaultValue(this.color,t.color),this.colorBlendMode=defaultValue(this.colorBlendMode,t.colorBlendMode),this.colorBlendAmount=defaultValue(this.colorBlendAmount,t.colorBlendAmount),this.imageBasedLightingFactor=defaultValue(this.imageBasedLightingFactor,t.imageBasedLightingFactor),this.lightColor=defaultValue(this.lightColor,t.lightColor),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.clippingPlanes=defaultValue(this.clippingPlanes,t.clippingPlanes),this.customShader=defaultValue(this.customShader,t.customShader);const n=t.nodeTransformations;if(defined(n)){const s=this.nodeTransformations;defined(s)?s.merge(n):this.nodeTransformations=new PropertyBag(n,createNodeTransformationProperty)}const o=t.articulations;if(defined(o)){const s=this.articulations;defined(s)?s.merge(o):this.articulations=new PropertyBag(o)}};function Cesium3DTilesetGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._uri=void 0,this._uriSubscription=void 0,this._maximumScreenSpaceError=void 0,this._maximumScreenSpaceErrorSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(Cesium3DTilesetGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),uri:createPropertyDescriptor("uri"),maximumScreenSpaceError:createPropertyDescriptor("maximumScreenSpaceError")}),Cesium3DTilesetGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.uri=this.uri,t.maximumScreenSpaceError=this.maximumScreenSpaceError,t):new Cesium3DTilesetGraphics(this)},Cesium3DTilesetGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.uri=defaultValue(this.uri,t.uri),this.maximumScreenSpaceError=defaultValue(this.maximumScreenSpaceError,t.maximumScreenSpaceError)};function PathGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._leadTime=void 0,this._leadTimeSubscription=void 0,this._trailTime=void 0,this._trailTimeSubscription=void 0,this._width=void 0,this._widthSubscription=void 0,this._resolution=void 0,this._resolutionSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(PathGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),leadTime:createPropertyDescriptor("leadTime"),trailTime:createPropertyDescriptor("trailTime"),width:createPropertyDescriptor("width"),resolution:createPropertyDescriptor("resolution"),material:createMaterialPropertyDescriptor("material"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),PathGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.leadTime=this.leadTime,t.trailTime=this.trailTime,t.width=this.width,t.resolution=this.resolution,t.material=this.material,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new PathGraphics(this)},PathGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.leadTime=defaultValue(this.leadTime,t.leadTime),this.trailTime=defaultValue(this.trailTime,t.trailTime),this.width=defaultValue(this.width,t.width),this.resolution=defaultValue(this.resolution,t.resolution),this.material=defaultValue(this.material,t.material),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};function PlaneGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._plane=void 0,this._planeSubscription=void 0,this._dimensions=void 0,this._dimensionsSubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(PlaneGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),plane:createPropertyDescriptor("plane"),dimensions:createPropertyDescriptor("dimensions"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),PlaneGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.plane=this.plane,t.dimensions=this.dimensions,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new PlaneGraphics(this)},PlaneGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.plane=defaultValue(this.plane,t.plane),this.dimensions=defaultValue(this.dimensions,t.dimensions),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};function PointGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._pixelSize=void 0,this._pixelSizeSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._color=void 0,this._colorSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._scaleByDistance=void 0,this._scaleByDistanceSubscription=void 0,this._translucencyByDistance=void 0,this._translucencyByDistanceSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._disableDepthTestDistance=void 0,this._disableDepthTestDistanceSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(PointGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),pixelSize:createPropertyDescriptor("pixelSize"),heightReference:createPropertyDescriptor("heightReference"),color:createPropertyDescriptor("color"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),scaleByDistance:createPropertyDescriptor("scaleByDistance"),translucencyByDistance:createPropertyDescriptor("translucencyByDistance"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),disableDepthTestDistance:createPropertyDescriptor("disableDepthTestDistance")}),PointGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.pixelSize=this.pixelSize,t.heightReference=this.heightReference,t.color=this.color,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.scaleByDistance=this.scaleByDistance,t.translucencyByDistance=this._translucencyByDistance,t.distanceDisplayCondition=this.distanceDisplayCondition,t.disableDepthTestDistance=this.disableDepthTestDistance,t):new PointGraphics(this)},PointGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.pixelSize=defaultValue(this.pixelSize,t.pixelSize),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.color=defaultValue(this.color,t.color),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.scaleByDistance=defaultValue(this.scaleByDistance,t.scaleByDistance),this.translucencyByDistance=defaultValue(this._translucencyByDistance,t.translucencyByDistance),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.disableDepthTestDistance=defaultValue(this.disableDepthTestDistance,t.disableDepthTestDistance)};function createPolygonHierarchyProperty(t){return Array.isArray(t)&&(t=new PolygonHierarchy(t)),new ConstantProperty(t)}function PolygonGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._hierarchy=void 0,this._hierarchySubscription=void 0,this._height=void 0,this._heightSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._extrudedHeight=void 0,this._extrudedHeightSubscription=void 0,this._extrudedHeightReference=void 0,this._extrudedHeightReferenceSubscription=void 0,this._stRotation=void 0,this._stRotationSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._perPositionHeight=void 0,this._perPositionHeightSubscription=void 0,this._closeTop=void 0,this._closeTopSubscription=void 0,this._closeBottom=void 0,this._closeBottomSubscription=void 0,this._arcType=void 0,this._arcTypeSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._classificationType=void 0,this._classificationTypeSubscription=void 0,this._zIndex=void 0,this._zIndexSubscription=void 0,this._textureCoordinates=void 0,this._textureCoordinatesSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(PolygonGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),hierarchy:createPropertyDescriptor("hierarchy",void 0,createPolygonHierarchyProperty),height:createPropertyDescriptor("height"),heightReference:createPropertyDescriptor("heightReference"),extrudedHeight:createPropertyDescriptor("extrudedHeight"),extrudedHeightReference:createPropertyDescriptor("extrudedHeightReference"),stRotation:createPropertyDescriptor("stRotation"),granularity:createPropertyDescriptor("granularity"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),perPositionHeight:createPropertyDescriptor("perPositionHeight"),closeTop:createPropertyDescriptor("closeTop"),closeBottom:createPropertyDescriptor("closeBottom"),arcType:createPropertyDescriptor("arcType"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),classificationType:createPropertyDescriptor("classificationType"),zIndex:createPropertyDescriptor("zIndex"),textureCoordinates:createPropertyDescriptor("textureCoordinates")}),PolygonGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.hierarchy=this.hierarchy,t.height=this.height,t.heightReference=this.heightReference,t.extrudedHeight=this.extrudedHeight,t.extrudedHeightReference=this.extrudedHeightReference,t.stRotation=this.stRotation,t.granularity=this.granularity,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.perPositionHeight=this.perPositionHeight,t.closeTop=this.closeTop,t.closeBottom=this.closeBottom,t.arcType=this.arcType,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t.classificationType=this.classificationType,t.zIndex=this.zIndex,t.textureCoordinates=this.textureCoordinates,t):new PolygonGraphics(this)},PolygonGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.hierarchy=defaultValue(this.hierarchy,t.hierarchy),this.height=defaultValue(this.height,t.height),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.extrudedHeight=defaultValue(this.extrudedHeight,t.extrudedHeight),this.extrudedHeightReference=defaultValue(this.extrudedHeightReference,t.extrudedHeightReference),this.stRotation=defaultValue(this.stRotation,t.stRotation),this.granularity=defaultValue(this.granularity,t.granularity),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.perPositionHeight=defaultValue(this.perPositionHeight,t.perPositionHeight),this.closeTop=defaultValue(this.closeTop,t.closeTop),this.closeBottom=defaultValue(this.closeBottom,t.closeBottom),this.arcType=defaultValue(this.arcType,t.arcType),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.classificationType=defaultValue(this.classificationType,t.classificationType),this.zIndex=defaultValue(this.zIndex,t.zIndex),this.textureCoordinates=defaultValue(this.textureCoordinates,t.textureCoordinates)};function PolylineGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._positions=void 0,this._positionsSubscription=void 0,this._width=void 0,this._widthSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._depthFailMaterial=void 0,this._depthFailMaterialSubscription=void 0,this._arcType=void 0,this._arcTypeSubscription=void 0,this._clampToGround=void 0,this._clampToGroundSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._classificationType=void 0,this._classificationTypeSubscription=void 0,this._zIndex=void 0,this._zIndexSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(PolylineGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),positions:createPropertyDescriptor("positions"),width:createPropertyDescriptor("width"),granularity:createPropertyDescriptor("granularity"),material:createMaterialPropertyDescriptor("material"),depthFailMaterial:createMaterialPropertyDescriptor("depthFailMaterial"),arcType:createPropertyDescriptor("arcType"),clampToGround:createPropertyDescriptor("clampToGround"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),classificationType:createPropertyDescriptor("classificationType"),zIndex:createPropertyDescriptor("zIndex")}),PolylineGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.positions=this.positions,t.width=this.width,t.granularity=this.granularity,t.material=this.material,t.depthFailMaterial=this.depthFailMaterial,t.arcType=this.arcType,t.clampToGround=this.clampToGround,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t.classificationType=this.classificationType,t.zIndex=this.zIndex,t):new PolylineGraphics(this)},PolylineGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.positions=defaultValue(this.positions,t.positions),this.width=defaultValue(this.width,t.width),this.granularity=defaultValue(this.granularity,t.granularity),this.material=defaultValue(this.material,t.material),this.depthFailMaterial=defaultValue(this.depthFailMaterial,t.depthFailMaterial),this.arcType=defaultValue(this.arcType,t.arcType),this.clampToGround=defaultValue(this.clampToGround,t.clampToGround),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.classificationType=defaultValue(this.classificationType,t.classificationType),this.zIndex=defaultValue(this.zIndex,t.zIndex)};function PolylineVolumeGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._positions=void 0,this._positionsSubscription=void 0,this._shape=void 0,this._shapeSubscription=void 0,this._cornerType=void 0,this._cornerTypeSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubsription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(PolylineVolumeGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),positions:createPropertyDescriptor("positions"),shape:createPropertyDescriptor("shape"),cornerType:createPropertyDescriptor("cornerType"),granularity:createPropertyDescriptor("granularity"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),PolylineVolumeGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.positions=this.positions,t.shape=this.shape,t.cornerType=this.cornerType,t.granularity=this.granularity,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new PolylineVolumeGraphics(this)},PolylineVolumeGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.positions=defaultValue(this.positions,t.positions),this.shape=defaultValue(this.shape,t.shape),this.cornerType=defaultValue(this.cornerType,t.cornerType),this.granularity=defaultValue(this.granularity,t.granularity),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};function RectangleGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._coordinates=void 0,this._coordinatesSubscription=void 0,this._height=void 0,this._heightSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._extrudedHeight=void 0,this._extrudedHeightSubscription=void 0,this._extrudedHeightReference=void 0,this._extrudedHeightReferenceSubscription=void 0,this._rotation=void 0,this._rotationSubscription=void 0,this._stRotation=void 0,this._stRotationSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distancedisplayConditionSubscription=void 0,this._classificationType=void 0,this._classificationTypeSubscription=void 0,this._zIndex=void 0,this._zIndexSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(RectangleGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),coordinates:createPropertyDescriptor("coordinates"),height:createPropertyDescriptor("height"),heightReference:createPropertyDescriptor("heightReference"),extrudedHeight:createPropertyDescriptor("extrudedHeight"),extrudedHeightReference:createPropertyDescriptor("extrudedHeightReference"),rotation:createPropertyDescriptor("rotation"),stRotation:createPropertyDescriptor("stRotation"),granularity:createPropertyDescriptor("granularity"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),classificationType:createPropertyDescriptor("classificationType"),zIndex:createPropertyDescriptor("zIndex")}),RectangleGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.coordinates=this.coordinates,t.height=this.height,t.heightReference=this.heightReference,t.extrudedHeight=this.extrudedHeight,t.extrudedHeightReference=this.extrudedHeightReference,t.rotation=this.rotation,t.stRotation=this.stRotation,t.granularity=this.granularity,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t.classificationType=this.classificationType,t.zIndex=this.zIndex,t):new RectangleGraphics(this)},RectangleGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.coordinates=defaultValue(this.coordinates,t.coordinates),this.height=defaultValue(this.height,t.height),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.extrudedHeight=defaultValue(this.extrudedHeight,t.extrudedHeight),this.extrudedHeightReference=defaultValue(this.extrudedHeightReference,t.extrudedHeightReference),this.rotation=defaultValue(this.rotation,t.rotation),this.stRotation=defaultValue(this.stRotation,t.stRotation),this.granularity=defaultValue(this.granularity,t.granularity),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.classificationType=defaultValue(this.classificationType,t.classificationType),this.zIndex=defaultValue(this.zIndex,t.zIndex)};function WallGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._positions=void 0,this._positionsSubscription=void 0,this._minimumHeights=void 0,this._minimumHeightsSubscription=void 0,this._maximumHeights=void 0,this._maximumHeightsSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(WallGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),positions:createPropertyDescriptor("positions"),minimumHeights:createPropertyDescriptor("minimumHeights"),maximumHeights:createPropertyDescriptor("maximumHeights"),granularity:createPropertyDescriptor("granularity"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),WallGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.positions=this.positions,t.minimumHeights=this.minimumHeights,t.maximumHeights=this.maximumHeights,t.granularity=this.granularity,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new WallGraphics(this)},WallGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.positions=defaultValue(this.positions,t.positions),this.minimumHeights=defaultValue(this.minimumHeights,t.minimumHeights),this.maximumHeights=defaultValue(this.maximumHeights,t.maximumHeights),this.granularity=defaultValue(this.granularity,t.granularity),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};const cartoScratch=new Cartographic,ExtraPropertyNames=[];function createConstantPositionProperty(t){return new ConstantPositionProperty(t)}function createPositionPropertyDescriptor(t){return createPropertyDescriptor(t,void 0,createConstantPositionProperty)}function createPropertyTypeDescriptor(t,n){return createPropertyDescriptor(t,void 0,function(o){return o instanceof n?o:new n(o)})}function Entity$1(t){t=defaultValue(t,defaultValue.EMPTY_OBJECT);let n=t.id;defined(n)||(n=createGuid()),this._availability=void 0,this._id=n,this._definitionChanged=new Event$1,this._name=t.name,this._show=defaultValue(t.show,!0),this._parent=void 0,this._propertyNames=["billboard","box","corridor","cylinder","description","ellipse","ellipsoid","label","model","tileset","orientation","path","plane","point","polygon","polyline","polylineVolume","position","properties","rectangle","viewFrom","wall",...ExtraPropertyNames],this._billboard=void 0,this._billboardSubscription=void 0,this._box=void 0,this._boxSubscription=void 0,this._corridor=void 0,this._corridorSubscription=void 0,this._cylinder=void 0,this._cylinderSubscription=void 0,this._description=void 0,this._descriptionSubscription=void 0,this._ellipse=void 0,this._ellipseSubscription=void 0,this._ellipsoid=void 0,this._ellipsoidSubscription=void 0,this._label=void 0,this._labelSubscription=void 0,this._model=void 0,this._modelSubscription=void 0,this._tileset=void 0,this._tilesetSubscription=void 0,this._orientation=void 0,this._orientationSubscription=void 0,this._path=void 0,this._pathSubscription=void 0,this._plane=void 0,this._planeSubscription=void 0,this._point=void 0,this._pointSubscription=void 0,this._polygon=void 0,this._polygonSubscription=void 0,this._polyline=void 0,this._polylineSubscription=void 0,this._polylineVolume=void 0,this._polylineVolumeSubscription=void 0,this._position=void 0,this._positionSubscription=void 0,this._properties=void 0,this._propertiesSubscription=void 0,this._rectangle=void 0,this._rectangleSubscription=void 0,this._viewFrom=void 0,this._viewFromSubscription=void 0,this._wall=void 0,this._wallSubscription=void 0,this._children=[],this.entityCollection=void 0,this.parent=t.parent,this.merge(t)}function updateShow(t,n,o){const s=n.length;for(let c=0;c<s;c++){const d=n[c],h=d._show;(!o&&h)!==(o&&h)&&updateShow(d,d._children,o)}t._definitionChanged.raiseEvent(t,"isShowing",o,!o)}Object.defineProperties(Entity$1.prototype,{availability:createRawPropertyDescriptor("availability"),id:{get:function(){return this._id}},definitionChanged:{get:function(){return this._definitionChanged}},name:createRawPropertyDescriptor("name"),show:{get:function(){return this._show},set:function(t){if(!defined(t))throw new DeveloperError("value is required.");if(t===this._show)return;const n=this.isShowing;this._show=t;const o=this.isShowing;n!==o&&updateShow(this,this._children,o),this._definitionChanged.raiseEvent(this,"show",t,!t)}},isShowing:{get:function(){return this._show&&(!defined(this.entityCollection)||this.entityCollection.show)&&(!defined(this._parent)||this._parent.isShowing)}},parent:{get:function(){return this._parent},set:function(t){const n=this._parent;if(n===t)return;const o=this.isShowing;if(defined(n)){const c=n._children.indexOf(this);n._children.splice(c,1)}this._parent=t,defined(t)&&t._children.push(this);const s=this.isShowing;o!==s&&updateShow(this,this._children,s),this._definitionChanged.raiseEvent(this,"parent",t,n)}},propertyNames:{get:function(){return this._propertyNames}},billboard:createPropertyTypeDescriptor("billboard",BillboardGraphics),box:createPropertyTypeDescriptor("box",BoxGraphics),corridor:createPropertyTypeDescriptor("corridor",CorridorGraphics),cylinder:createPropertyTypeDescriptor("cylinder",CylinderGraphics),description:createPropertyDescriptor("description"),ellipse:createPropertyTypeDescriptor("ellipse",EllipseGraphics),ellipsoid:createPropertyTypeDescriptor("ellipsoid",EllipsoidGraphics),label:createPropertyTypeDescriptor("label",LabelGraphics),model:createPropertyTypeDescriptor("model",ModelGraphics),tileset:createPropertyTypeDescriptor("tileset",Cesium3DTilesetGraphics),orientation:createPropertyDescriptor("orientation"),path:createPropertyTypeDescriptor("path",PathGraphics),plane:createPropertyTypeDescriptor("plane",PlaneGraphics),point:createPropertyTypeDescriptor("point",PointGraphics),polygon:createPropertyTypeDescriptor("polygon",PolygonGraphics),polyline:createPropertyTypeDescriptor("polyline",PolylineGraphics),polylineVolume:createPropertyTypeDescriptor("polylineVolume",PolylineVolumeGraphics),properties:createPropertyTypeDescriptor("properties",PropertyBag),position:createPositionPropertyDescriptor("position"),rectangle:createPropertyTypeDescriptor("rectangle",RectangleGraphics),viewFrom:createPropertyDescriptor("viewFrom"),wall:createPropertyTypeDescriptor("wall",WallGraphics)}),Entity$1.registerEntityType=function(t,n){Object.defineProperties(Entity$1.prototype,{[t]:createPropertyTypeDescriptor(t,n)}),ExtraPropertyNames.includes(t)||ExtraPropertyNames.push(t)},Entity$1.prototype.isAvailable=function(t){if(!defined(t))throw new DeveloperError("time is required.");const n=this._availability;return!defined(n)||n.contains(t)},Entity$1.prototype.addProperty=function(t){const n=this._propertyNames;if(!defined(t))throw new DeveloperError("propertyName is required.");if(n.indexOf(t)!==-1)throw new DeveloperError(`${t} is already a registered property.`);if(t in this)throw new DeveloperError(`${t} is a reserved property name.`);n.push(t),Object.defineProperty(this,t,createRawPropertyDescriptor(t,!0))},Entity$1.prototype.removeProperty=function(t){const o=this._propertyNames.indexOf(t);if(!defined(t))throw new DeveloperError("propertyName is required.");if(o===-1)throw new DeveloperError(`${t} is not a registered property.`);this._propertyNames.splice(o,1),delete this[t]},Entity$1.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.name=defaultValue(this.name,t.name),this.availability=defaultValue(this.availability,t.availability);const n=this._propertyNames,o=defined(t._propertyNames)?t._propertyNames:Object.keys(t),s=o.length;for(let c=0;c<s;c++){const d=o[c];if(d==="parent"||d==="name"||d==="availability"||d==="children")continue;const h=this[d],p=t[d];!defined(h)&&n.indexOf(d)===-1&&this.addProperty(d),defined(p)&&(defined(h)?defined(h.merge)&&h.merge(p):defined(p.merge)&&defined(p.clone)?this[d]=p.clone():this[d]=p)}};const matrix3Scratch=new Matrix3,positionScratch$2=new Cartesian3,orientationScratch=new Quaternion;Entity$1.prototype.computeModelMatrix=function(t,n){Check.typeOf.object("time",t);const o=Property.getValueOrUndefined(this._position,t,positionScratch$2);if(!defined(o))return;const s=Property.getValueOrUndefined(this._orientation,t,orientationScratch);return defined(s)?n=Matrix4.fromRotationTranslation(Matrix3.fromQuaternion(s,matrix3Scratch),o,n):n=Transforms.eastNorthUpToFixedFrame(o,void 0,n),n},Entity$1.prototype.computeModelMatrixForHeightReference=function(t,n,o,s,c){Check.typeOf.object("time",t);const d=Property.getValueOrDefault(n,t,HeightReference$1.NONE);let h=Property.getValueOrUndefined(this._position,t,positionScratch$2);if(d===HeightReference$1.NONE||!defined(h)||Cartesian3.equalsEpsilon(h,Cartesian3.ZERO,CesiumMath.EPSILON8))return this.computeModelMatrix(t,c);const p=s.cartesianToCartographic(h,cartoScratch);isHeightReferenceClamp(d)?p.height=o:p.height+=o,h=s.cartographicToCartesian(p,h);const y=Property.getValueOrUndefined(this._orientation,t,orientationScratch);return defined(y)?c=Matrix4.fromRotationTranslation(Matrix3.fromQuaternion(y,matrix3Scratch),h,c):c=Transforms.eastNorthUpToFixedFrame(h,void 0,c),c},Entity$1.supportsMaterialsforEntitiesOnTerrain=function(t){return GroundPrimitive.supportsMaterials(t)},Entity$1.supportsPolylinesOnTerrain=function(t){return GroundPolylinePrimitive.isSupported(t)};function CallbackProperty(t,n){this._callback=void 0,this._isConstant=void 0,this._definitionChanged=new Event$1,this.setCallback(t,n)}Object.defineProperties(CallbackProperty.prototype,{isConstant:{get:function(){return this._isConstant}},definitionChanged:{get:function(){return this._definitionChanged}}}),CallbackProperty.prototype.getValue=function(t,n){return this._callback(t,n)},CallbackProperty.prototype.setCallback=function(t,n){if(!defined(t))throw new DeveloperError("callback is required.");if(!defined(n))throw new DeveloperError("isConstant is required.");const o=this._callback!==t||this._isConstant!==n;this._callback=t,this._isConstant=n,o&&this._definitionChanged.raiseEvent(this)},CallbackProperty.prototype.equals=function(t){return this===t||t instanceof CallbackProperty&&this._callback===t._callback&&this._isConstant===t._isConstant};const SceneTransforms={},actualPositionScratch=new Cartesian4(0,0,0,1);let positionCC=new Cartesian4;const scratchViewport=new BoundingRectangle,scratchWindowCoord0=new Cartesian2,scratchWindowCoord1=new Cartesian2;SceneTransforms.wgs84ToWindowCoordinates=function(t,n,o){return SceneTransforms.wgs84WithEyeOffsetToWindowCoordinates(t,n,Cartesian3.ZERO,o)};const scratchCartesian4=new Cartesian4,scratchEyeOffset=new Cartesian3;function worldToClip(t,n,o,s){const c=o.viewMatrix,d=Matrix4.multiplyByVector(c,Cartesian4.fromElements(t.x,t.y,t.z,1,scratchCartesian4),scratchCartesian4),h=Cartesian3.multiplyComponents(n,Cartesian3.normalize(d,scratchEyeOffset),scratchEyeOffset);return d.x+=n.x+h.x,d.y+=n.y+h.y,d.z+=h.z,Matrix4.multiplyByVector(o.frustum.projectionMatrix,d,s)}const scratchMaxCartographic=new Cartographic(Math.PI,CesiumMath.PI_OVER_TWO),scratchProjectedCartesian=new Cartesian3,scratchCameraPosition=new Cartesian3;SceneTransforms.wgs84WithEyeOffsetToWindowCoordinates=function(t,n,o,s){if(!defined(t))throw new DeveloperError("scene is required.");if(!defined(n))throw new DeveloperError("position is required.");const c=t.frameState,d=SceneTransforms.computeActualWgs84Position(c,n,actualPositionScratch);if(!defined(d))return;const h=t.canvas,p=scratchViewport;p.x=0,p.y=0,p.width=h.clientWidth,p.height=h.clientHeight;const y=t.camera;let S=!1;if(c.mode===SceneMode$1.SCENE2D){const P=t.mapProjection,L=scratchMaxCartographic,F=P.project(L,scratchProjectedCartesian),N=Cartesian3.clone(y.position,scratchCameraPosition),z=y.frustum.clone(),W=Matrix4.computeViewportTransformation(p,0,1,new Matrix4),lt=y.frustum.projectionMatrix,Pe=y.positionWC.y,se=Cartesian3.fromElements(CesiumMath.sign(Pe)*F.x-Pe,0,-y.positionWC.x),mt=Transforms.pointToGLWindowCoordinates(lt,W,se);if(Pe===0||mt.x<=0||mt.x>=h.clientWidth)S=!0;else{if(mt.x>h.clientWidth*.5){p.width=mt.x,y.frustum.right=F.x-Pe,positionCC=worldToClip(d,o,y,positionCC),SceneTransforms.clipToGLWindowCoordinates(p,positionCC,scratchWindowCoord0),p.x+=mt.x,y.position.x=-y.position.x;const kt=y.frustum.right;y.frustum.right=-y.frustum.left,y.frustum.left=-kt,positionCC=worldToClip(d,o,y,positionCC),SceneTransforms.clipToGLWindowCoordinates(p,positionCC,scratchWindowCoord1)}else{p.x+=mt.x,p.width-=mt.x,y.frustum.left=-F.x-Pe,positionCC=worldToClip(d,o,y,positionCC),SceneTransforms.clipToGLWindowCoordinates(p,positionCC,scratchWindowCoord0),p.x=p.x-p.width,y.position.x=-y.position.x;const kt=y.frustum.left;y.frustum.left=-y.frustum.right,y.frustum.right=-kt,positionCC=worldToClip(d,o,y,positionCC),SceneTransforms.clipToGLWindowCoordinates(p,positionCC,scratchWindowCoord1)}Cartesian3.clone(N,y.position),y.frustum=z.clone(),s=Cartesian2.clone(scratchWindowCoord0,s),(s.x<0||s.x>h.clientWidth)&&(s.x=scratchWindowCoord1.x)}}if(c.mode!==SceneMode$1.SCENE2D||S){if(positionCC=worldToClip(d,o,y,positionCC),positionCC.z<0&&!(y.frustum instanceof OrthographicFrustum)&&!(y.frustum instanceof OrthographicOffCenterFrustum))return;s=SceneTransforms.clipToGLWindowCoordinates(p,positionCC,s)}return s.y=h.clientHeight-s.y,s},SceneTransforms.wgs84ToDrawingBufferCoordinates=function(t,n,o){if(o=SceneTransforms.wgs84ToWindowCoordinates(t,n,o),!!defined(o))return SceneTransforms.transformWindowToDrawingBuffer(t,o,o)};const projectedPosition=new Cartesian3,positionInCartographic=new Cartographic;SceneTransforms.computeActualWgs84Position=function(t,n,o){const s=t.mode;if(s===SceneMode$1.SCENE3D)return Cartesian3.clone(n,o);const c=t.mapProjection,d=c.ellipsoid.cartesianToCartographic(n,positionInCartographic);if(!defined(d))return;if(c.project(d,projectedPosition),s===SceneMode$1.COLUMBUS_VIEW)return Cartesian3.fromElements(projectedPosition.z,projectedPosition.x,projectedPosition.y,o);if(s===SceneMode$1.SCENE2D)return Cartesian3.fromElements(0,projectedPosition.x,projectedPosition.y,o);const h=t.morphTime;return Cartesian3.fromElements(CesiumMath.lerp(projectedPosition.z,n.x,h),CesiumMath.lerp(projectedPosition.x,n.y,h),CesiumMath.lerp(projectedPosition.y,n.z,h),o)};const positionNDC=new Cartesian3,positionWC=new Cartesian3,viewportTransform=new Matrix4;SceneTransforms.clipToGLWindowCoordinates=function(t,n,o){return Cartesian3.divideByScalar(n,n.w,positionNDC),Matrix4.computeViewportTransformation(t,0,1,viewportTransform),Matrix4.multiplyByPoint(viewportTransform,positionNDC,positionWC),Cartesian2.fromCartesian3(positionWC,o)},SceneTransforms.transformWindowToDrawingBuffer=function(t,n,o){const s=t.canvas,c=t.drawingBufferWidth/s.clientWidth,d=t.drawingBufferHeight/s.clientHeight;return Cartesian2.fromElements(n.x*c,n.y*d,o)};const scratchNDC=new Cartesian4,scratchWorldCoords=new Cartesian4;SceneTransforms.drawingBufferToWgs84Coordinates=function(t,n,o,s){const d=t.context.uniformState,h=d.currentFrustum,p=h.x,y=h.y;if(t.frameState.useLogDepth){const N=o*d.log2FarDepthFromNearPlusOne,z=Math.pow(2,N)-1;o=y*(1-p/(z+p))/(y-p)}const S=t.view.passState.viewport,P=Cartesian4.clone(Cartesian4.UNIT_W,scratchNDC);P.x=(n.x-S.x)/S.width*2-1,P.y=(n.y-S.y)/S.height*2-1,P.z=o*2-1,P.w=1;let L,F=t.camera.frustum;if(defined(F.fovy)){L=Matrix4.multiplyByVector(d.inverseViewProjection,P,scratchWorldCoords);const N=1/L.w;Cartesian3.multiplyByScalar(L,N,L)}else{const N=F.offCenterFrustum;defined(N)&&(F=N),L=scratchWorldCoords,L.x=(P.x*(F.right-F.left)+F.left+F.right)*.5,L.y=(P.y*(F.top-F.bottom)+F.bottom+F.top)*.5,L.z=(P.z*(p-y)-p-y)*.5,L.w=1,L=Matrix4.multiplyByVector(d.inverseView,L,L)}return Cartesian3.fromCartesian4(L,s)};const LabelStyle={FILL:0,OUTLINE:1,FILL_AND_OUTLINE:2},LabelStyle$1=Object.freeze(LabelStyle),Cesium3DTilePass={RENDER:0,PICK:1,SHADOW:2,PRELOAD:3,PRELOAD_FLIGHT:4,REQUEST_RENDER_MODE_DEFER_CHECK:5,MOST_DETAILED_PRELOAD:6,MOST_DETAILED_PICK:7,NUMBER_OF_PASSES:8},passOptions=new Array(Cesium3DTilePass.NUMBER_OF_PASSES);passOptions[Cesium3DTilePass.RENDER]=Object.freeze({pass:Cesium3DTilePass.RENDER,isRender:!0,requestTiles:!0,ignoreCommands:!1}),passOptions[Cesium3DTilePass.PICK]=Object.freeze({pass:Cesium3DTilePass.PICK,isRender:!1,requestTiles:!1,ignoreCommands:!1}),passOptions[Cesium3DTilePass.SHADOW]=Object.freeze({pass:Cesium3DTilePass.SHADOW,isRender:!1,requestTiles:!0,ignoreCommands:!1}),passOptions[Cesium3DTilePass.PRELOAD]=Object.freeze({pass:Cesium3DTilePass.PRELOAD,isRender:!1,requestTiles:!0,ignoreCommands:!0}),passOptions[Cesium3DTilePass.PRELOAD_FLIGHT]=Object.freeze({pass:Cesium3DTilePass.PRELOAD_FLIGHT,isRender:!1,requestTiles:!0,ignoreCommands:!0}),passOptions[Cesium3DTilePass.REQUEST_RENDER_MODE_DEFER_CHECK]=Object.freeze({pass:Cesium3DTilePass.REQUEST_RENDER_MODE_DEFER_CHECK,isRender:!1,requestTiles:!0,ignoreCommands:!0}),passOptions[Cesium3DTilePass.MOST_DETAILED_PRELOAD]=Object.freeze({pass:Cesium3DTilePass.MOST_DETAILED_PRELOAD,isRender:!1,requestTiles:!0,ignoreCommands:!0}),passOptions[Cesium3DTilePass.MOST_DETAILED_PICK]=Object.freeze({pass:Cesium3DTilePass.MOST_DETAILED_PICK,isRender:!1,requestTiles:!1,ignoreCommands:!1}),Cesium3DTilePass.getPassOptions=function(t){return passOptions[t]};const Cesium3DTilePass$1=Object.freeze(Cesium3DTilePass),defaultColor=Color$1.WHITE,defaultGapColor=Color$1.TRANSPARENT,defaultDashLength=16,defaultDashPattern=255;function PolylineDashMaterialProperty(t){t=defaultValue(t,defaultValue.EMPTY_OBJECT),this._definitionChanged=new Event$1,this._color=void 0,this._colorSubscription=void 0,this._gapColor=void 0,this._gapColorSubscription=void 0,this._dashLength=void 0,this._dashLengthSubscription=void 0,this._dashPattern=void 0,this._dashPatternSubscription=void 0,this.color=t.color,this.gapColor=t.gapColor,this.dashLength=t.dashLength,this.dashPattern=t.dashPattern}Object.defineProperties(PolylineDashMaterialProperty.prototype,{isConstant:{get:function(){return Property.isConstant(this._color)&&Property.isConstant(this._gapColor)&&Property.isConstant(this._dashLength)&&Property.isConstant(this._dashPattern)}},definitionChanged:{get:function(){return this._definitionChanged}},color:createPropertyDescriptor("color"),gapColor:createPropertyDescriptor("gapColor"),dashLength:createPropertyDescriptor("dashLength"),dashPattern:createPropertyDescriptor("dashPattern")}),PolylineDashMaterialProperty.prototype.getType=function(t){return"PolylineDash"},PolylineDashMaterialProperty.prototype.getValue=function(t,n){return defined(n)||(n={}),n.color=Property.getValueOrClonedDefault(this._color,t,defaultColor,n.color),n.gapColor=Property.getValueOrClonedDefault(this._gapColor,t,defaultGapColor,n.gapColor),n.dashLength=Property.getValueOrDefault(this._dashLength,t,defaultDashLength,n.dashLength),n.dashPattern=Property.getValueOrDefault(this._dashPattern,t,defaultDashPattern,n.dashPattern),n},PolylineDashMaterialProperty.prototype.equals=function(t){return this===t||t instanceof PolylineDashMaterialProperty&&Property.equals(this._color,t._color)&&Property.equals(this._gapColor,t._gapColor)&&Property.equals(this._dashLength,t._dashLength)&&Property.equals(this._dashPattern,t._dashPattern)};function DiscardEmptyTileImagePolicy(t){}DiscardEmptyTileImagePolicy.prototype.isReady=function(){return!0},DiscardEmptyTileImagePolicy.prototype.shouldDiscardImage=function(t){return DiscardEmptyTileImagePolicy.EMPTY_IMAGE===t};let emptyImage;Object.defineProperties(DiscardEmptyTileImagePolicy,{EMPTY_IMAGE:{get:function(){return defined(emptyImage)||(emptyImage=new Image,emptyImage.src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),emptyImage}}});function Cesium3DTilePassState(t){Check.typeOf.object("options",t),Check.typeOf.number("options.pass",t.pass),this.pass=t.pass,this.commandList=t.commandList,this.camera=t.camera,this.cullingVolume=t.cullingVolume,this.ready=!1}var __create=Object.create,__defProp$1=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__getProtoOf=Object.getPrototypeOf,__hasOwnProp$1=Object.prototype.hasOwnProperty,__markAsModule=t=>__defProp$1(t,"__esModule",{value:!0}),__commonJS=(t,n)=>function(){return n||(0,t[Object.keys(t)[0]])((n={exports:{}}).exports,n),n.exports},__reExport=(t,n,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let s of __getOwnPropNames(n))!__hasOwnProp$1.call(t,s)&&s!=="default"&&__defProp$1(t,s,{get:()=>n[s],enumerable:!(o=__getOwnPropDesc(n,s))||o.enumerable});return t},__toModule=t=>__reExport(__markAsModule(__defProp$1(t!=null?__create(__getProtoOf(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t),__async=(t,n,o)=>new Promise((s,c)=>{var d=y=>{try{p(o.next(y))}catch(S){c(S)}},h=y=>{try{p(o.throw(y))}catch(S){c(S)}},p=y=>y.done?s(y.value):Promise.resolve(y.value).then(d,h);p((o=o.apply(t,n)).next())}),require_point_geometry=__commonJS({"node_modules/@mapbox/point-geometry/index.js"(t,n){n.exports=o;function o(s,c){this.x=s,this.y=c}o.prototype={clone:function(){return new o(this.x,this.y)},add:function(s){return this.clone()._add(s)},sub:function(s){return this.clone()._sub(s)},multByPoint:function(s){return this.clone()._multByPoint(s)},divByPoint:function(s){return this.clone()._divByPoint(s)},mult:function(s){return this.clone()._mult(s)},div:function(s){return this.clone()._div(s)},rotate:function(s){return this.clone()._rotate(s)},rotateAround:function(s,c){return this.clone()._rotateAround(s,c)},matMult:function(s){return this.clone()._matMult(s)},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(s){return this.x===s.x&&this.y===s.y},dist:function(s){return Math.sqrt(this.distSqr(s))},distSqr:function(s){var c=s.x-this.x,d=s.y-this.y;return c*c+d*d},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(s){return Math.atan2(this.y-s.y,this.x-s.x)},angleWith:function(s){return this.angleWithSep(s.x,s.y)},angleWithSep:function(s,c){return Math.atan2(this.x*c-this.y*s,this.x*s+this.y*c)},_matMult:function(s){var c=s[0]*this.x+s[1]*this.y,d=s[2]*this.x+s[3]*this.y;return this.x=c,this.y=d,this},_add:function(s){return this.x+=s.x,this.y+=s.y,this},_sub:function(s){return this.x-=s.x,this.y-=s.y,this},_mult:function(s){return this.x*=s,this.y*=s,this},_div:function(s){return this.x/=s,this.y/=s,this},_multByPoint:function(s){return this.x*=s.x,this.y*=s.y,this},_divByPoint:function(s){return this.x/=s.x,this.y/=s.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var s=this.y;return this.y=this.x,this.x=-s,this},_rotate:function(s){var c=Math.cos(s),d=Math.sin(s),h=c*this.x-d*this.y,p=d*this.x+c*this.y;return this.x=h,this.y=p,this},_rotateAround:function(s,c){var d=Math.cos(s),h=Math.sin(s),p=c.x+d*(this.x-c.x)-h*(this.y-c.y),y=c.y+h*(this.x-c.x)+d*(this.y-c.y);return this.x=p,this.y=y,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},o.convert=function(s){return s instanceof o?s:Array.isArray(s)?new o(s[0],s[1]):s}}}),require_vectortilefeature=__commonJS({"node_modules/@mapbox/vector-tile/lib/vectortilefeature.js"(t,n){var o=require_point_geometry();n.exports=s;function s(y,S,P,L,F){this.properties={},this.extent=P,this.type=0,this._pbf=y,this._geometry=-1,this._keys=L,this._values=F,y.readFields(c,this,S)}function c(y,S,P){y==1?S.id=P.readVarint():y==2?d(P,S):y==3?S.type=P.readVarint():y==4&&(S._geometry=P.pos)}function d(y,S){for(var P=y.readVarint()+y.pos;y.pos<P;){var L=S._keys[y.readVarint()],F=S._values[y.readVarint()];S.properties[L]=F}}s.types=["Unknown","Point","LineString","Polygon"],s.prototype.loadGeometry=function(){var y=this._pbf;y.pos=this._geometry;for(var S=y.readVarint()+y.pos,P=1,L=0,F=0,N=0,z=[],W;y.pos<S;){if(L<=0){var lt=y.readVarint();P=lt&7,L=lt>>3}if(L--,P===1||P===2)F+=y.readSVarint(),N+=y.readSVarint(),P===1&&(W&&z.push(W),W=[]),W.push(new o(F,N));else if(P===7)W&&W.push(W[0].clone());else throw new Error("unknown command "+P)}return W&&z.push(W),z},s.prototype.bbox=function(){var y=this._pbf;y.pos=this._geometry;for(var S=y.readVarint()+y.pos,P=1,L=0,F=0,N=0,z=1/0,W=-1/0,lt=1/0,Pe=-1/0;y.pos<S;){if(L<=0){var se=y.readVarint();P=se&7,L=se>>3}if(L--,P===1||P===2)F+=y.readSVarint(),N+=y.readSVarint(),F<z&&(z=F),F>W&&(W=F),N<lt&&(lt=N),N>Pe&&(Pe=N);else if(P!==7)throw new Error("unknown command "+P)}return[z,lt,W,Pe]},s.prototype.toGeoJSON=function(y,S,P){var L=this.extent*Math.pow(2,P),F=this.extent*y,N=this.extent*S,z=this.loadGeometry(),W=s.types[this.type],lt,Pe;function se(mn){for(var pi=0;pi<mn.length;pi++){var zi=mn[pi],Sa=180-(zi.y+N)*360/L;mn[pi]=[(zi.x+F)*360/L-180,360/Math.PI*Math.atan(Math.exp(Sa*Math.PI/180))-90]}}switch(this.type){case 1:var mt=[];for(lt=0;lt<z.length;lt++)mt[lt]=z[lt][0];z=mt,se(z);break;case 2:for(lt=0;lt<z.length;lt++)se(z[lt]);break;case 3:for(z=h(z),lt=0;lt<z.length;lt++)for(Pe=0;Pe<z[lt].length;Pe++)se(z[lt][Pe]);break}z.length===1?z=z[0]:W="Multi"+W;var kt={type:"Feature",geometry:{type:W,coordinates:z},properties:this.properties};return"id"in this&&(kt.id=this.id),kt};function h(y){var S=y.length;if(S<=1)return[y];for(var P=[],L,F,N=0;N<S;N++){var z=p(y[N]);z!==0&&(F===void 0&&(F=z<0),F===z<0?(L&&P.push(L),L=[y[N]]):L.push(y[N]))}return L&&P.push(L),P}function p(y){for(var S=0,P=0,L=y.length,F=L-1,N,z;P<L;F=P++)N=y[P],z=y[F],S+=(z.x-N.x)*(N.y+z.y);return S}}}),require_vectortilelayer=__commonJS({"node_modules/@mapbox/vector-tile/lib/vectortilelayer.js"(t,n){var o=require_vectortilefeature();n.exports=s;function s(h,p){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=h,this._keys=[],this._values=[],this._features=[],h.readFields(c,this,p),this.length=this._features.length}function c(h,p,y){h===15?p.version=y.readVarint():h===1?p.name=y.readString():h===5?p.extent=y.readVarint():h===2?p._features.push(y.pos):h===3?p._keys.push(y.readString()):h===4&&p._values.push(d(y))}function d(h){for(var p=null,y=h.readVarint()+h.pos;h.pos<y;){var S=h.readVarint()>>3;p=S===1?h.readString():S===2?h.readFloat():S===3?h.readDouble():S===4?h.readVarint64():S===5?h.readVarint():S===6?h.readSVarint():S===7?h.readBoolean():null}return p}s.prototype.feature=function(h){if(h<0||h>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[h];var p=this._pbf.readVarint()+this._pbf.pos;return new o(this._pbf,p,this.extent,this._keys,this._values)}}}),require_vectortile=__commonJS({"node_modules/@mapbox/vector-tile/lib/vectortile.js"(t,n){var o=require_vectortilelayer();n.exports=s;function s(d,h){this.layers=d.readFields(c,{},h)}function c(d,h,p){if(d===3){var y=new o(p,p.readVarint()+p.pos);y.length&&(h[y.name]=y)}}}}),require_vector_tile=__commonJS({"node_modules/@mapbox/vector-tile/index.js"(t,n){n.exports.VectorTile=require_vectortile(),n.exports.VectorTileFeature=require_vectortilefeature(),n.exports.VectorTileLayer=require_vectortilelayer()}}),require_ieee754=__commonJS({"node_modules/ieee754/index.js"(t){t.read=function(n,o,s,c,d){var h,p,y=d*8-c-1,S=(1<<y)-1,P=S>>1,L=-7,F=s?d-1:0,N=s?-1:1,z=n[o+F];for(F+=N,h=z&(1<<-L)-1,z>>=-L,L+=y;L>0;h=h*256+n[o+F],F+=N,L-=8);for(p=h&(1<<-L)-1,h>>=-L,L+=c;L>0;p=p*256+n[o+F],F+=N,L-=8);if(h===0)h=1-P;else{if(h===S)return p?NaN:(z?-1:1)*(1/0);p=p+Math.pow(2,c),h=h-P}return(z?-1:1)*p*Math.pow(2,h-c)},t.write=function(n,o,s,c,d,h){var p,y,S,P=h*8-d-1,L=(1<<P)-1,F=L>>1,N=d===23?Math.pow(2,-24)-Math.pow(2,-77):0,z=c?0:h-1,W=c?1:-1,lt=o<0||o===0&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(y=isNaN(o)?1:0,p=L):(p=Math.floor(Math.log(o)/Math.LN2),o*(S=Math.pow(2,-p))<1&&(p--,S*=2),p+F>=1?o+=N/S:o+=N*Math.pow(2,1-F),o*S>=2&&(p++,S/=2),p+F>=L?(y=0,p=L):p+F>=1?(y=(o*S-1)*Math.pow(2,d),p=p+F):(y=o*Math.pow(2,F-1)*Math.pow(2,d),p=0));d>=8;n[s+z]=y&255,z+=W,y/=256,d-=8);for(p=p<<d|y,P+=d;P>0;n[s+z]=p&255,z+=W,p/=256,P-=8);n[s+z-W]|=lt*128}}}),require_pbf=__commonJS({"node_modules/pbf/index.js"(t,n){n.exports=s;var o=require_ieee754();function s(nt){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(nt)?nt:new Uint8Array(nt||0),this.pos=0,this.type=0,this.length=this.buf.length}s.Varint=0,s.Fixed64=1,s.Bytes=2,s.Fixed32=5;var c=65536*65536,d=1/c,h=12,p=typeof TextDecoder>"u"?null:new TextDecoder("utf8");s.prototype={destroy:function(){this.buf=null},readFields:function(nt,_i,ba){for(ba=ba||this.length;this.pos<ba;){var Sc=this.readVarint(),ms=Sc>>3,Xs=this.pos;this.type=Sc&7,nt(ms,_i,this),this.pos===Xs&&this.skip(Sc)}return _i},readMessage:function(nt,_i){return this.readFields(nt,_i,this.readVarint()+this.pos)},readFixed32:function(){var nt=Sa(this.buf,this.pos);return this.pos+=4,nt},readSFixed32:function(){var nt=La(this.buf,this.pos);return this.pos+=4,nt},readFixed64:function(){var nt=Sa(this.buf,this.pos)+Sa(this.buf,this.pos+4)*c;return this.pos+=8,nt},readSFixed64:function(){var nt=Sa(this.buf,this.pos)+La(this.buf,this.pos+4)*c;return this.pos+=8,nt},readFloat:function(){var nt=o.read(this.buf,this.pos,!0,23,4);return this.pos+=4,nt},readDouble:function(){var nt=o.read(this.buf,this.pos,!0,52,8);return this.pos+=8,nt},readVarint:function(nt){var _i=this.buf,ba,Sc;return Sc=_i[this.pos++],ba=Sc&127,Sc<128||(Sc=_i[this.pos++],ba|=(Sc&127)<<7,Sc<128)||(Sc=_i[this.pos++],ba|=(Sc&127)<<14,Sc<128)||(Sc=_i[this.pos++],ba|=(Sc&127)<<21,Sc<128)?ba:(Sc=_i[this.pos],ba|=(Sc&15)<<28,y(ba,nt,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var nt=this.readVarint();return nt%2===1?(nt+1)/-2:nt/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var nt=this.readVarint()+this.pos,_i=this.pos;return this.pos=nt,nt-_i>=h&&p?ma(this.buf,_i,nt):Ra(this.buf,_i,nt)},readBytes:function(){var nt=this.readVarint()+this.pos,_i=this.buf.subarray(this.pos,nt);return this.pos=nt,_i},readPackedVarint:function(nt,_i){if(this.type!==s.Bytes)return nt.push(this.readVarint(_i));var ba=S(this);for(nt=nt||[];this.pos<ba;)nt.push(this.readVarint(_i));return nt},readPackedSVarint:function(nt){if(this.type!==s.Bytes)return nt.push(this.readSVarint());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readSVarint());return nt},readPackedBoolean:function(nt){if(this.type!==s.Bytes)return nt.push(this.readBoolean());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readBoolean());return nt},readPackedFloat:function(nt){if(this.type!==s.Bytes)return nt.push(this.readFloat());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readFloat());return nt},readPackedDouble:function(nt){if(this.type!==s.Bytes)return nt.push(this.readDouble());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readDouble());return nt},readPackedFixed32:function(nt){if(this.type!==s.Bytes)return nt.push(this.readFixed32());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readFixed32());return nt},readPackedSFixed32:function(nt){if(this.type!==s.Bytes)return nt.push(this.readSFixed32());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readSFixed32());return nt},readPackedFixed64:function(nt){if(this.type!==s.Bytes)return nt.push(this.readFixed64());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readFixed64());return nt},readPackedSFixed64:function(nt){if(this.type!==s.Bytes)return nt.push(this.readSFixed64());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readSFixed64());return nt},skip:function(nt){var _i=nt&7;if(_i===s.Varint)for(;this.buf[this.pos++]>127;);else if(_i===s.Bytes)this.pos=this.readVarint()+this.pos;else if(_i===s.Fixed32)this.pos+=4;else if(_i===s.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+_i)},writeTag:function(nt,_i){this.writeVarint(nt<<3|_i)},realloc:function(nt){for(var _i=this.length||16;_i<this.pos+nt;)_i*=2;if(_i!==this.length){var ba=new Uint8Array(_i);ba.set(this.buf),this.buf=ba,this.length=_i}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(nt){this.realloc(4),fa(this.buf,nt,this.pos),this.pos+=4},writeSFixed32:function(nt){this.realloc(4),fa(this.buf,nt,this.pos),this.pos+=4},writeFixed64:function(nt){this.realloc(8),fa(this.buf,nt&-1,this.pos),fa(this.buf,Math.floor(nt*d),this.pos+4),this.pos+=8},writeSFixed64:function(nt){this.realloc(8),fa(this.buf,nt&-1,this.pos),fa(this.buf,Math.floor(nt*d),this.pos+4),this.pos+=8},writeVarint:function(nt){if(nt=+nt||0,nt>268435455||nt<0){L(nt,this);return}this.realloc(4),this.buf[this.pos++]=nt&127|(nt>127?128:0),!(nt<=127)&&(this.buf[this.pos++]=(nt>>>=7)&127|(nt>127?128:0),!(nt<=127)&&(this.buf[this.pos++]=(nt>>>=7)&127|(nt>127?128:0),!(nt<=127)&&(this.buf[this.pos++]=nt>>>7&127)))},writeSVarint:function(nt){this.writeVarint(nt<0?-nt*2-1:nt*2)},writeBoolean:function(nt){this.writeVarint(!!nt)},writeString:function(nt){nt=String(nt),this.realloc(nt.length*4),this.pos++;var _i=this.pos;this.pos=yt(this.buf,nt,this.pos);var ba=this.pos-_i;ba>=128&&z(_i,ba,this),this.pos=_i-1,this.writeVarint(ba),this.pos+=ba},writeFloat:function(nt){this.realloc(4),o.write(this.buf,nt,this.pos,!0,23,4),this.pos+=4},writeDouble:function(nt){this.realloc(8),o.write(this.buf,nt,this.pos,!0,52,8),this.pos+=8},writeBytes:function(nt){var _i=nt.length;this.writeVarint(_i),this.realloc(_i);for(var ba=0;ba<_i;ba++)this.buf[this.pos++]=nt[ba]},writeRawMessage:function(nt,_i){this.pos++;var ba=this.pos;nt(_i,this);var Sc=this.pos-ba;Sc>=128&&z(ba,Sc,this),this.pos=ba-1,this.writeVarint(Sc),this.pos+=Sc},writeMessage:function(nt,_i,ba){this.writeTag(nt,s.Bytes),this.writeRawMessage(_i,ba)},writePackedVarint:function(nt,_i){_i.length&&this.writeMessage(nt,W,_i)},writePackedSVarint:function(nt,_i){_i.length&&this.writeMessage(nt,lt,_i)},writePackedBoolean:function(nt,_i){_i.length&&this.writeMessage(nt,mt,_i)},writePackedFloat:function(nt,_i){_i.length&&this.writeMessage(nt,Pe,_i)},writePackedDouble:function(nt,_i){_i.length&&this.writeMessage(nt,se,_i)},writePackedFixed32:function(nt,_i){_i.length&&this.writeMessage(nt,kt,_i)},writePackedSFixed32:function(nt,_i){_i.length&&this.writeMessage(nt,mn,_i)},writePackedFixed64:function(nt,_i){_i.length&&this.writeMessage(nt,pi,_i)},writePackedSFixed64:function(nt,_i){_i.length&&this.writeMessage(nt,zi,_i)},writeBytesField:function(nt,_i){this.writeTag(nt,s.Bytes),this.writeBytes(_i)},writeFixed32Field:function(nt,_i){this.writeTag(nt,s.Fixed32),this.writeFixed32(_i)},writeSFixed32Field:function(nt,_i){this.writeTag(nt,s.Fixed32),this.writeSFixed32(_i)},writeFixed64Field:function(nt,_i){this.writeTag(nt,s.Fixed64),this.writeFixed64(_i)},writeSFixed64Field:function(nt,_i){this.writeTag(nt,s.Fixed64),this.writeSFixed64(_i)},writeVarintField:function(nt,_i){this.writeTag(nt,s.Varint),this.writeVarint(_i)},writeSVarintField:function(nt,_i){this.writeTag(nt,s.Varint),this.writeSVarint(_i)},writeStringField:function(nt,_i){this.writeTag(nt,s.Bytes),this.writeString(_i)},writeFloatField:function(nt,_i){this.writeTag(nt,s.Fixed32),this.writeFloat(_i)},writeDoubleField:function(nt,_i){this.writeTag(nt,s.Fixed64),this.writeDouble(_i)},writeBooleanField:function(nt,_i){this.writeVarintField(nt,!!_i)}};function y(nt,_i,ba){var Sc=ba.buf,ms,Xs;if(Xs=Sc[ba.pos++],ms=(Xs&112)>>4,Xs<128||(Xs=Sc[ba.pos++],ms|=(Xs&127)<<3,Xs<128)||(Xs=Sc[ba.pos++],ms|=(Xs&127)<<10,Xs<128)||(Xs=Sc[ba.pos++],ms|=(Xs&127)<<17,Xs<128)||(Xs=Sc[ba.pos++],ms|=(Xs&127)<<24,Xs<128)||(Xs=Sc[ba.pos++],ms|=(Xs&1)<<31,Xs<128))return P(nt,ms,_i);throw new Error("Expected varint not more than 10 bytes")}function S(nt){return nt.type===s.Bytes?nt.readVarint()+nt.pos:nt.pos+1}function P(nt,_i,ba){return ba?_i*4294967296+(nt>>>0):(_i>>>0)*4294967296+(nt>>>0)}function L(nt,_i){var ba,Sc;if(nt>=0?(ba=nt%4294967296|0,Sc=nt/4294967296|0):(ba=~(-nt%4294967296),Sc=~(-nt/4294967296),ba^4294967295?ba=ba+1|0:(ba=0,Sc=Sc+1|0)),nt>=18446744073709552e3||nt<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");_i.realloc(10),F(ba,Sc,_i),N(Sc,_i)}function F(nt,_i,ba){ba.buf[ba.pos++]=nt&127|128,nt>>>=7,ba.buf[ba.pos++]=nt&127|128,nt>>>=7,ba.buf[ba.pos++]=nt&127|128,nt>>>=7,ba.buf[ba.pos++]=nt&127|128,nt>>>=7,ba.buf[ba.pos]=nt&127}function N(nt,_i){var ba=(nt&7)<<4;_i.buf[_i.pos++]|=ba|((nt>>>=3)?128:0),nt&&(_i.buf[_i.pos++]=nt&127|((nt>>>=7)?128:0),nt&&(_i.buf[_i.pos++]=nt&127|((nt>>>=7)?128:0),nt&&(_i.buf[_i.pos++]=nt&127|((nt>>>=7)?128:0),nt&&(_i.buf[_i.pos++]=nt&127|((nt>>>=7)?128:0),nt&&(_i.buf[_i.pos++]=nt&127)))))}function z(nt,_i,ba){var Sc=_i<=16383?1:_i<=2097151?2:_i<=268435455?3:Math.floor(Math.log(_i)/(Math.LN2*7));ba.realloc(Sc);for(var ms=ba.pos-1;ms>=nt;ms--)ba.buf[ms+Sc]=ba.buf[ms]}function W(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeVarint(nt[ba])}function lt(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeSVarint(nt[ba])}function Pe(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeFloat(nt[ba])}function se(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeDouble(nt[ba])}function mt(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeBoolean(nt[ba])}function kt(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeFixed32(nt[ba])}function mn(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeSFixed32(nt[ba])}function pi(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeFixed64(nt[ba])}function zi(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeSFixed64(nt[ba])}function Sa(nt,_i){return(nt[_i]|nt[_i+1]<<8|nt[_i+2]<<16)+nt[_i+3]*16777216}function fa(nt,_i,ba){nt[ba]=_i,nt[ba+1]=_i>>>8,nt[ba+2]=_i>>>16,nt[ba+3]=_i>>>24}function La(nt,_i){return(nt[_i]|nt[_i+1]<<8|nt[_i+2]<<16)+(nt[_i+3]<<24)}function Ra(nt,_i,ba){for(var Sc="",ms=_i;ms<ba;){var Xs=nt[ms],pu=null,yu=Xs>239?4:Xs>223?3:Xs>191?2:1;if(ms+yu>ba)break;var Nl,Ru,Vd;yu===1?Xs<128&&(pu=Xs):yu===2?(Nl=nt[ms+1],(Nl&192)===128&&(pu=(Xs&31)<<6|Nl&63,pu<=127&&(pu=null))):yu===3?(Nl=nt[ms+1],Ru=nt[ms+2],(Nl&192)===128&&(Ru&192)===128&&(pu=(Xs&15)<<12|(Nl&63)<<6|Ru&63,(pu<=2047||pu>=55296&&pu<=57343)&&(pu=null))):yu===4&&(Nl=nt[ms+1],Ru=nt[ms+2],Vd=nt[ms+3],(Nl&192)===128&&(Ru&192)===128&&(Vd&192)===128&&(pu=(Xs&15)<<18|(Nl&63)<<12|(Ru&63)<<6|Vd&63,(pu<=65535||pu>=1114112)&&(pu=null))),pu===null?(pu=65533,yu=1):pu>65535&&(pu-=65536,Sc+=String.fromCharCode(pu>>>10&1023|55296),pu=56320|pu&1023),Sc+=String.fromCharCode(pu),ms+=yu}return Sc}function ma(nt,_i,ba){return p.decode(nt.subarray(_i,ba))}function yt(nt,_i,ba){for(var Sc=0,ms,Xs;Sc<_i.length;Sc++){if(ms=_i.charCodeAt(Sc),ms>55295&&ms<57344)if(Xs)if(ms<56320){nt[ba++]=239,nt[ba++]=191,nt[ba++]=189,Xs=ms;continue}else ms=Xs-55296<<10|ms-56320|65536,Xs=null;else{ms>56319||Sc+1===_i.length?(nt[ba++]=239,nt[ba++]=191,nt[ba++]=189):Xs=ms;continue}else Xs&&(nt[ba++]=239,nt[ba++]=191,nt[ba++]=189,Xs=null);ms<128?nt[ba++]=ms:(ms<2048?nt[ba++]=ms>>6|192:(ms<65536?nt[ba++]=ms>>12|224:(nt[ba++]=ms>>18|240,nt[ba++]=ms>>12&63|128),nt[ba++]=ms>>6&63|128),nt[ba++]=ms&63|128)}return ba}}}),require_rbush_min=__commonJS({"node_modules/rbush/rbush.min.js"(t,n){(function(o,s){typeof t=="object"&&typeof n<"u"?n.exports=s():typeof define=="function"&&define.amd?define(s):(o=o||self).RBush=s()})(t,function(){function o(se,mt,kt,mn,pi){(function zi(Sa,fa,La,Ra,ma){for(;Ra>La;){if(Ra-La>600){var yt=Ra-La+1,nt=fa-La+1,_i=Math.log(yt),ba=.5*Math.exp(2*_i/3),Sc=.5*Math.sqrt(_i*ba*(yt-ba)/yt)*(nt-yt/2<0?-1:1),ms=Math.max(La,Math.floor(fa-nt*ba/yt+Sc)),Xs=Math.min(Ra,Math.floor(fa+(yt-nt)*ba/yt+Sc));zi(Sa,fa,ms,Xs,ma)}var pu=Sa[fa],yu=La,Nl=Ra;for(s(Sa,La,fa),ma(Sa[Ra],pu)>0&&s(Sa,La,Ra);yu<Nl;){for(s(Sa,yu,Nl),yu++,Nl--;ma(Sa[yu],pu)<0;)yu++;for(;ma(Sa[Nl],pu)>0;)Nl--}ma(Sa[La],pu)===0?s(Sa,La,Nl):s(Sa,++Nl,Ra),Nl<=fa&&(La=Nl+1),fa<=Nl&&(Ra=Nl-1)}})(se,mt,kt||0,mn||se.length-1,pi||c)}function s(se,mt,kt){var mn=se[mt];se[mt]=se[kt],se[kt]=mn}function c(se,mt){return se<mt?-1:se>mt?1:0}var d=function(se){se===void 0&&(se=9),this._maxEntries=Math.max(4,se),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),this.clear()};function h(se,mt,kt){if(!kt)return mt.indexOf(se);for(var mn=0;mn<mt.length;mn++)if(kt(se,mt[mn]))return mn;return-1}function p(se,mt){y(se,0,se.children.length,mt,se)}function y(se,mt,kt,mn,pi){pi||(pi=lt(null)),pi.minX=1/0,pi.minY=1/0,pi.maxX=-1/0,pi.maxY=-1/0;for(var zi=mt;zi<kt;zi++){var Sa=se.children[zi];S(pi,se.leaf?mn(Sa):Sa)}return pi}function S(se,mt){return se.minX=Math.min(se.minX,mt.minX),se.minY=Math.min(se.minY,mt.minY),se.maxX=Math.max(se.maxX,mt.maxX),se.maxY=Math.max(se.maxY,mt.maxY),se}function P(se,mt){return se.minX-mt.minX}function L(se,mt){return se.minY-mt.minY}function F(se){return(se.maxX-se.minX)*(se.maxY-se.minY)}function N(se){return se.maxX-se.minX+(se.maxY-se.minY)}function z(se,mt){return se.minX<=mt.minX&&se.minY<=mt.minY&&mt.maxX<=se.maxX&&mt.maxY<=se.maxY}function W(se,mt){return mt.minX<=se.maxX&&mt.minY<=se.maxY&&mt.maxX>=se.minX&&mt.maxY>=se.minY}function lt(se){return{children:se,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function Pe(se,mt,kt,mn,pi){for(var zi=[mt,kt];zi.length;)if(!((kt=zi.pop())-(mt=zi.pop())<=mn)){var Sa=mt+Math.ceil((kt-mt)/mn/2)*mn;o(se,Sa,mt,kt,pi),zi.push(mt,Sa,Sa,kt)}}return d.prototype.all=function(){return this._all(this.data,[])},d.prototype.search=function(se){var mt=this.data,kt=[];if(!W(se,mt))return kt;for(var mn=this.toBBox,pi=[];mt;){for(var zi=0;zi<mt.children.length;zi++){var Sa=mt.children[zi],fa=mt.leaf?mn(Sa):Sa;W(se,fa)&&(mt.leaf?kt.push(Sa):z(se,fa)?this._all(Sa,kt):pi.push(Sa))}mt=pi.pop()}return kt},d.prototype.collides=function(se){var mt=this.data;if(!W(se,mt))return!1;for(var kt=[];mt;){for(var mn=0;mn<mt.children.length;mn++){var pi=mt.children[mn],zi=mt.leaf?this.toBBox(pi):pi;if(W(se,zi)){if(mt.leaf||z(se,zi))return!0;kt.push(pi)}}mt=kt.pop()}return!1},d.prototype.load=function(se){if(!se||!se.length)return this;if(se.length<this._minEntries){for(var mt=0;mt<se.length;mt++)this.insert(se[mt]);return this}var kt=this._build(se.slice(),0,se.length-1,0);if(this.data.children.length)if(this.data.height===kt.height)this._splitRoot(this.data,kt);else{if(this.data.height<kt.height){var mn=this.data;this.data=kt,kt=mn}this._insert(kt,this.data.height-kt.height-1,!0)}else this.data=kt;return this},d.prototype.insert=function(se){return se&&this._insert(se,this.data.height-1),this},d.prototype.clear=function(){return this.data=lt([]),this},d.prototype.remove=function(se,mt){if(!se)return this;for(var kt,mn,pi,zi=this.data,Sa=this.toBBox(se),fa=[],La=[];zi||fa.length;){if(zi||(zi=fa.pop(),mn=fa[fa.length-1],kt=La.pop(),pi=!0),zi.leaf){var Ra=h(se,zi.children,mt);if(Ra!==-1)return zi.children.splice(Ra,1),fa.push(zi),this._condense(fa),this}pi||zi.leaf||!z(zi,Sa)?mn?(kt++,zi=mn.children[kt],pi=!1):zi=null:(fa.push(zi),La.push(kt),kt=0,mn=zi,zi=zi.children[0])}return this},d.prototype.toBBox=function(se){return se},d.prototype.compareMinX=function(se,mt){return se.minX-mt.minX},d.prototype.compareMinY=function(se,mt){return se.minY-mt.minY},d.prototype.toJSON=function(){return this.data},d.prototype.fromJSON=function(se){return this.data=se,this},d.prototype._all=function(se,mt){for(var kt=[];se;)se.leaf?mt.push.apply(mt,se.children):kt.push.apply(kt,se.children),se=kt.pop();return mt},d.prototype._build=function(se,mt,kt,mn){var pi,zi=kt-mt+1,Sa=this._maxEntries;if(zi<=Sa)return p(pi=lt(se.slice(mt,kt+1)),this.toBBox),pi;mn||(mn=Math.ceil(Math.log(zi)/Math.log(Sa)),Sa=Math.ceil(zi/Math.pow(Sa,mn-1))),(pi=lt([])).leaf=!1,pi.height=mn;var fa=Math.ceil(zi/Sa),La=fa*Math.ceil(Math.sqrt(Sa));Pe(se,mt,kt,La,this.compareMinX);for(var Ra=mt;Ra<=kt;Ra+=La){var ma=Math.min(Ra+La-1,kt);Pe(se,Ra,ma,fa,this.compareMinY);for(var yt=Ra;yt<=ma;yt+=fa){var nt=Math.min(yt+fa-1,ma);pi.children.push(this._build(se,yt,nt,mn-1))}}return p(pi,this.toBBox),pi},d.prototype._chooseSubtree=function(se,mt,kt,mn){for(;mn.push(mt),!mt.leaf&&mn.length-1!==kt;){for(var pi=1/0,zi=1/0,Sa=void 0,fa=0;fa<mt.children.length;fa++){var La=mt.children[fa],Ra=F(La),ma=(yt=se,nt=La,(Math.max(nt.maxX,yt.maxX)-Math.min(nt.minX,yt.minX))*(Math.max(nt.maxY,yt.maxY)-Math.min(nt.minY,yt.minY))-Ra);ma<zi?(zi=ma,pi=Ra<pi?Ra:pi,Sa=La):ma===zi&&Ra<pi&&(pi=Ra,Sa=La)}mt=Sa||mt.children[0]}var yt,nt;return mt},d.prototype._insert=function(se,mt,kt){var mn=kt?se:this.toBBox(se),pi=[],zi=this._chooseSubtree(mn,this.data,mt,pi);for(zi.children.push(se),S(zi,mn);mt>=0&&pi[mt].children.length>this._maxEntries;)this._split(pi,mt),mt--;this._adjustParentBBoxes(mn,pi,mt)},d.prototype._split=function(se,mt){var kt=se[mt],mn=kt.children.length,pi=this._minEntries;this._chooseSplitAxis(kt,pi,mn);var zi=this._chooseSplitIndex(kt,pi,mn),Sa=lt(kt.children.splice(zi,kt.children.length-zi));Sa.height=kt.height,Sa.leaf=kt.leaf,p(kt,this.toBBox),p(Sa,this.toBBox),mt?se[mt-1].children.push(Sa):this._splitRoot(kt,Sa)},d.prototype._splitRoot=function(se,mt){this.data=lt([se,mt]),this.data.height=se.height+1,this.data.leaf=!1,p(this.data,this.toBBox)},d.prototype._chooseSplitIndex=function(se,mt,kt){for(var mn,pi,zi,Sa,fa,La,Ra,ma=1/0,yt=1/0,nt=mt;nt<=kt-mt;nt++){var _i=y(se,0,nt,this.toBBox),ba=y(se,nt,kt,this.toBBox),Sc=(pi=_i,zi=ba,Sa=void 0,fa=void 0,La=void 0,Ra=void 0,Sa=Math.max(pi.minX,zi.minX),fa=Math.max(pi.minY,zi.minY),La=Math.min(pi.maxX,zi.maxX),Ra=Math.min(pi.maxY,zi.maxY),Math.max(0,La-Sa)*Math.max(0,Ra-fa)),ms=F(_i)+F(ba);Sc<ma?(ma=Sc,mn=nt,yt=ms<yt?ms:yt):Sc===ma&&ms<yt&&(yt=ms,mn=nt)}return mn||kt-mt},d.prototype._chooseSplitAxis=function(se,mt,kt){var mn=se.leaf?this.compareMinX:P,pi=se.leaf?this.compareMinY:L;this._allDistMargin(se,mt,kt,mn)<this._allDistMargin(se,mt,kt,pi)&&se.children.sort(mn)},d.prototype._allDistMargin=function(se,mt,kt,mn){se.children.sort(mn);for(var pi=this.toBBox,zi=y(se,0,mt,pi),Sa=y(se,kt-mt,kt,pi),fa=N(zi)+N(Sa),La=mt;La<kt-mt;La++){var Ra=se.children[La];S(zi,se.leaf?pi(Ra):Ra),fa+=N(zi)}for(var ma=kt-mt-1;ma>=mt;ma--){var yt=se.children[ma];S(Sa,se.leaf?pi(yt):yt),fa+=N(Sa)}return fa},d.prototype._adjustParentBBoxes=function(se,mt,kt){for(var mn=kt;mn>=0;mn--)S(mt[mn],se)},d.prototype._condense=function(se){for(var mt=se.length-1,kt=void 0;mt>=0;mt--)se[mt].children.length===0?mt>0?(kt=se[mt-1].children).splice(kt.indexOf(se[mt]),1):this.clear():p(se[mt],this.toBBox)},d})}}),require_unitbezier_d=__commonJS({"src/types/unitbezier.d.ts"(){}}),require_tinyqueue=__commonJS({"node_modules/tinyqueue/tinyqueue.js"(t,n){(function(o,s){typeof t=="object"&&typeof n<"u"?n.exports=s():typeof define=="function"&&define.amd?define(s):(o=o||self,o.TinyQueue=s())})(t,function(){var o=function(d,h){if(d===void 0&&(d=[]),h===void 0&&(h=s),this.data=d,this.length=this.data.length,this.compare=h,this.length>0)for(var p=(this.length>>1)-1;p>=0;p--)this._down(p)};o.prototype.push=function(d){this.data.push(d),this.length++,this._up(this.length-1)},o.prototype.pop=function(){if(this.length!==0){var d=this.data[0],h=this.data.pop();return this.length--,this.length>0&&(this.data[0]=h,this._down(0)),d}},o.prototype.peek=function(){return this.data[0]},o.prototype._up=function(d){for(var h=this,p=h.data,y=h.compare,S=p[d];d>0;){var P=d-1>>1,L=p[P];if(y(S,L)>=0)break;p[d]=L,d=P}p[d]=S},o.prototype._down=function(d){for(var h=this,p=h.data,y=h.compare,S=this.length>>1,P=p[d];d<S;){var L=(d<<1)+1,F=p[L],N=L+1;if(N<this.length&&y(p[N],F)<0&&(L=N,F=p[N]),y(F,P)>=0)break;p[d]=F,d=L}p[d]=P};function s(c,d){return c<d?-1:c>d?1:0}return o})}}),require_polylabel=__commonJS({"node_modules/polylabel/polylabel.js"(t,n){var o=require_tinyqueue();o.default&&(o=o.default),n.exports=s,n.exports.default=s;function s(S,P,L){P=P||1;for(var F,N,z,W,lt=0;lt<S[0].length;lt++){var Pe=S[0][lt];(!lt||Pe[0]<F)&&(F=Pe[0]),(!lt||Pe[1]<N)&&(N=Pe[1]),(!lt||Pe[0]>z)&&(z=Pe[0]),(!lt||Pe[1]>W)&&(W=Pe[1])}var se=z-F,mt=W-N,kt=Math.min(se,mt),mn=kt/2;if(kt===0){var pi=[F,N];return pi.distance=0,pi}for(var zi=new o(void 0,c),Sa=F;Sa<z;Sa+=kt)for(var fa=N;fa<W;fa+=kt)zi.push(new d(Sa+mn,fa+mn,mn,S));var La=p(S),Ra=new d(F+se/2,N+mt/2,0,S);Ra.d>La.d&&(La=Ra);for(var ma=zi.length;zi.length;){var yt=zi.pop();yt.d>La.d&&(La=yt,L&&console.log("found best %d after %d probes",Math.round(1e4*yt.d)/1e4,ma)),!(yt.max-La.d<=P)&&(mn=yt.h/2,zi.push(new d(yt.x-mn,yt.y-mn,mn,S)),zi.push(new d(yt.x+mn,yt.y-mn,mn,S)),zi.push(new d(yt.x-mn,yt.y+mn,mn,S)),zi.push(new d(yt.x+mn,yt.y+mn,mn,S)),ma+=4)}L&&(console.log("num probes: "+ma),console.log("best distance: "+La.d));var nt=[La.x,La.y];return nt.distance=La.d,nt}function c(S,P){return P.max-S.max}function d(S,P,L,F){this.x=S,this.y=P,this.h=L,this.d=h(S,P,F),this.max=this.d+this.h*Math.SQRT2}function h(S,P,L){for(var F=!1,N=1/0,z=0;z<L.length;z++)for(var W=L[z],lt=0,Pe=W.length,se=Pe-1;lt<Pe;se=lt++){var mt=W[lt],kt=W[se];mt[1]>P!=kt[1]>P&&S<(kt[0]-mt[0])*(P-mt[1])/(kt[1]-mt[1])+mt[0]&&(F=!F),N=Math.min(N,y(S,P,mt,kt))}return N===0?0:(F?1:-1)*Math.sqrt(N)}function p(S){for(var P=0,L=0,F=0,N=S[0],z=0,W=N.length,lt=W-1;z<W;lt=z++){var Pe=N[z],se=N[lt],mt=Pe[0]*se[1]-se[0]*Pe[1];L+=(Pe[0]+se[0])*mt,F+=(Pe[1]+se[1])*mt,P+=mt*3}return P===0?new d(N[0][0],N[0][1],0,S):new d(L/P,F/P,0,S)}function y(S,P,L,F){var N=L[0],z=L[1],W=F[0]-N,lt=F[1]-z;if(W!==0||lt!==0){var Pe=((S-N)*W+(P-z)*lt)/(W*W+lt*lt);Pe>1?(N=F[0],z=F[1]):Pe>0&&(N+=W*Pe,z+=lt*Pe)}return W=S-N,lt=P-z,W*W+lt*lt}}});__toModule(require_point_geometry()),__toModule(require_point_geometry());var import_point_geometry=__toModule(require_point_geometry()),import_vector_tile=__toModule(require_vector_tile()),import_pbf=__toModule(require_pbf()),u8=Uint8Array,u16=Uint16Array,u32=Uint32Array,fleb=new u8([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),fdeb=new u8([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),freb=function(t,n){for(var o=new u16(31),s=0;s<31;++s)o[s]=n+=1<<t[s-1];for(var c=new u32(o[30]),s=1;s<30;++s)for(var d=o[s];d<o[s+1];++d)c[d]=d-o[s]<<5|s;return[o,c]},_a$1=freb(fleb,2),fl$1=_a$1[0],revfl=_a$1[1];fl$1[28]=258,revfl[258]=28,freb(fdeb,0);var rev=new u16(32768);for(i=0;i<32768;++i)x=(i&43690)>>>1|(i&21845)<<1,x=(x&52428)>>>2|(x&13107)<<2,x=(x&61680)>>>4|(x&3855)<<4,rev[i]=((x&65280)>>>8|(x&255)<<8)>>>1;var x,i,flt=new u8(288);for(i=0;i<144;++i)flt[i]=8;var i;for(i=144;i<256;++i)flt[i]=9;var i;for(i=256;i<280;++i)flt[i]=7;var i;for(i=280;i<288;++i)flt[i]=8;var i,fdt=new u8(32);for(i=0;i<32;++i)fdt[i]=5;var i,et$1=new u8(0),td$1=typeof TextDecoder<"u"&&new TextDecoder,tds=0;try{td$1.decode(et$1,{stream:!0}),tds=1}catch(t){}var GeomType;(function(t){t[t.Point=1]="Point",t[t.Line=2]="Line",t[t.Polygon=3]="Polygon"})(GeomType||(GeomType={}));function toIndex(t){return t.x+":"+t.y+":"+t.z}var loadGeomAndBbox=(t,n,o)=>{t.pos=n;for(var s=t.readVarint()+t.pos,c=1,d=0,h=0,p=0,y=1/0,S=-1/0,P=1/0,L=-1/0,F=[],N=[];t.pos<s;){if(d<=0){var z=t.readVarint();c=z&7,d=z>>3}if(d--,c===1||c===2)h+=t.readSVarint()*o,p+=t.readSVarint()*o,h<y&&(y=h),h>S&&(S=h),p<P&&(P=p),p>L&&(L=p),c===1&&(N.length>0&&F.push(N),N=[]),N.push(new import_point_geometry.default(h,p));else if(c===7)N&&N.push(N[0].clone());else throw new Error("unknown command "+c)}return N&&F.push(N),{geom:F,bbox:{minX:y,minY:P,maxX:S,maxY:L}}};function parseTile(t,n){let o=new import_vector_tile.VectorTile(new import_pbf.default(t)),s=new Map;for(let[c,d]of Object.entries(o.layers)){let h=[],p=d;for(let y=0;y<p.length;y++){let S=loadGeomAndBbox(p.feature(y)._pbf,p.feature(y)._geometry,n/p.extent),P=0;for(let L of S.geom)P+=L.length;h.push({id:p.feature(y).id,geomType:p.feature(y).type,geom:S.geom,numVertices:P,bbox:S.bbox,props:p.feature(y).properties})}s.set(c,h)}return s}var ZxySource=class{constructor(t,n){this.url=t,this.controllers=[],this.shouldCancelZooms=n}get(t,n){return __async(this,null,function*(){this.shouldCancelZooms&&(this.controllers=this.controllers.filter(d=>d[0]!=t.z?(d[1].abort(),!1):!0));let o=this.url.replace("{z}",t.z.toString()).replace("{x}",t.x.toString()).replace("{y}",t.y.toString());const s=new AbortController;this.controllers.push([t.z,s]);const c=s.signal;return new Promise((d,h)=>{fetch(o,{signal:c}).then(p=>p.arrayBuffer()).then(p=>{let y=parseTile(p,n);d(y)}).catch(p=>{h(p)})})})}},R=6378137,MAX_LATITUDE=85.0511287798,MAXCOORD=R*Math.PI,project=t=>{let n=Math.PI/180,o=Math.max(Math.min(MAX_LATITUDE,t[0]),-85.0511287798),s=Math.sin(o*n);return new import_point_geometry.default(R*t[1]*n,R*Math.log((1+s)/(1-s))/2)};function sqr(t){return t*t}function dist2(t,n){return sqr(t.x-n.x)+sqr(t.y-n.y)}function distToSegmentSquared(t,n,o){var s=dist2(n,o);if(s===0)return dist2(t,n);var c=((t.x-n.x)*(o.x-n.x)+(t.y-n.y)*(o.y-n.y))/s;return c=Math.max(0,Math.min(1,c)),dist2(t,new import_point_geometry.default(n.x+c*(o.x-n.x),n.y+c*(o.y-n.y)))}function isInRing(t,n){for(var o=!1,s=0,c=n.length-1;s<n.length;c=s++){var d=n[s].x,h=n[s].y,p=n[c].x,y=n[c].y,S=h>t.y!=y>t.y&&t.x<(p-d)*(t.y-h)/(y-h)+d;S&&(o=!o)}return o}function isCCW(t){for(var n=0,o=0;o<t.length;o++){let s=(o+1)%t.length;n+=t[o].x*t[s].y,n-=t[s].x*t[o].y}return n<0}function pointInPolygon(t,n){var o=!1;for(let s of n)if(isCCW(s))isInRing(t,s)&&(o=!1);else{if(o)return!0;isInRing(t,s)&&(o=!0)}return o}function pointMinDistToPoints(t,n){let o=1/0;for(let s of n){let c=Math.sqrt(dist2(t,s[0]));c<o&&(o=c)}return o}function pointMinDistToLines(t,n){let o=1/0;for(let c of n)for(var s=0;s<c.length-1;s++){let d=Math.sqrt(distToSegmentSquared(t,c[s],c[s+1]));d<o&&(o=d)}return o}var TileCache=class{constructor(t,n){this.source=t,this.cache=new Map,this.inflight=new Map,this.tileSize=n}queryFeatures(t,n,o,s){let c=project([n,t]);var d=new import_point_geometry.default((c.x+MAXCOORD)/(MAXCOORD*2),1-(c.y+MAXCOORD)/(MAXCOORD*2));d.x>1&&(d.x=d.x-Math.floor(d.x));let h=d.mult(1<<o),p=Math.floor(h.x),y=Math.floor(h.y);const S=toIndex({z:o,x:p,y});let P=[],L=this.cache.get(S);if(L){const F=new import_point_geometry.default((h.x-p)*this.tileSize,(h.y-y)*this.tileSize);for(let[N,z]of L.data.entries())for(let W of z)W.geomType==1?pointMinDistToPoints(F,W.geom)<s&&P.push({feature:W,layerName:N}):W.geomType==2?pointMinDistToLines(F,W.geom)<s&&P.push({feature:W,layerName:N}):pointInPolygon(F,W.geom)&&P.push({feature:W,layerName:N})}return P}get(t){return __async(this,null,function*(){const n=toIndex(t);return new Promise((o,s)=>{let c=this.cache.get(n);if(c)c.used=performance.now(),o(c.data);else{let d=this.inflight.get(n);d?d.push([o,s]):(this.inflight.set(n,[]),this.source.get(t,this.tileSize).then(h=>{this.cache.set(n,{used:performance.now(),data:h});let p=this.inflight.get(n);if(p&&p.forEach(y=>y[0](h)),this.inflight.delete(n),o(h),this.cache.size>=64){let y=1/0,S;this.cache.forEach((P,L)=>{P.used<y&&(y=P.used,S=L)}),S&&this.cache.delete(S)}}).catch(h=>{let p=this.inflight.get(n);p&&p.forEach(y=>y[1](h)),this.inflight.delete(n),s(h)}))}})})}};__toModule(require_point_geometry()),__toModule(require_point_geometry()),__toModule(require_rbush_min());var e=t=>parseInt(t.replace(/_/g,""),36);"1q29ehhb 1n09sgk7 1kl1ekf_ _yl4zsno 16z9eiv3 1p29lhp8 _bd9zg04 17u0____ _iw9zhe5 _to73___ _r45e31e _7l6g016 _jh8ouiv _zn3qba8 1jy4zshs 11u87k0u 1ro9yvyo 1aj3xael 1gz9zjz0 _3w8l4xo 1bf1ekf_ _ke3v___ _4rrkb__ 13j776yz _646mbhl _nrjr4__ _le6mbhl 1n37ehkb _m75f91n _qj3bzfz 1939yygw 11i5z6x8 _1k5f8xs 1509441m 15t5lwgf _ae2th1n _tg1ugcv 1lp1ugcv 16e14up_ _h55rw7n _ny9yavn _7a11xb_ 1ih442g9 _pv442g9 1mv16xof 14e6y7tu 1oo9zkds 17d1cisi _4v9y70f _y98m8kc 1019pq0v 12o9zda8 _348j4f4 1et50i2o _8epa8__ _ts6senj 1o350i2o 1mi9eiuo 1259yrp0 1ln80gnw _632xcoy 1cn9zldc _f29edu4 1n490c8q _9f9ziet 1b94vk74 _m49zkct 1kz6s73a 1eu9dtog _q58s1rz 1dy9sjiq __u89jo3 _aj5nkwg _ld89jo3 13h9z6wx _qa9z2ii _l119xgq _bs5arju 1hj4nwk9 1qt4nwk9 1ge6wau6 14j9zlcw 11p1edc_ _ms1zcxe _439shk6 _jt9y70f _754zsow 1la40eju _oq5p___ _x279qkz 1fa5r3rv _yd2d9ip _424tcku _8y1di2_ _zi2uabw _yy7rn9h 12yz980_ __39ljp6 1b59zg0x _n39zfzp 1fy9zest _b33k___ _hp9wq92 1il50hz4 _io472ub _lj9z3eo 19z9ykg0 _8t8iu3a 12b9bl4a 1ak5yw0o _896v4ku _tb8k8lv _s59zi6t _c09ze0p 1lg80oqn 1id9z8wb _238nba5 1kq6wgdi _154zssg _tn3zk49 _da9y6tc 1sg7cv4f _r12jvtt 1gq5fmkz 1cs9rvci _lp9jn1c _xw1tdnb 13f9zje6 16f6973h _vo7ir40 _bt5arjf _rc45e4t _hr4e100 10v4e100 _hc9zke2 _w91egv_ _sj2r1kk 13c87yx8 _vqpds__ _ni8ggk8 _tj9yqfb 1ia2j4r4 _7x9b10u 1fc9ld4j 1eq9zldr _5j9lhpx _ez9zl6o _md61fzm".split(" ").reduce((t,n)=>{const o=e(n.substring(0,3)),s=e(n.substring(3)).toString(16);let c="";for(let d=0;d<6-s.length;d++)c+="0";return t[o]=`${c}${s}`,t},{});var _$1=(t,n)=>Array.from(Array(n)).map(()=>t).join("");new RegExp(`^#${_$1("([a-f0-9])",3)}([a-f0-9])?$`,"i"),new RegExp(`^#${_$1("([a-f0-9]{2})",3)}([a-f0-9]{2})?$`,"i"),new RegExp(`^rgba?\\(\\s*(\\d+)\\s*${_$1(",\\s*(\\d+)\\s*",2)}(?:,\\s*([\\d.]+))?\\s*\\)$`,"i"),__toModule(require_point_geometry()),__toModule(require_unitbezier_d()),__toModule(require_polylabel()),__toModule(require_point_geometry());var Justify;(function(t){t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"})(Justify||(Justify={}));var TextPlacements;(function(t){t[t.N=1]="N",t[t.NE=2]="NE",t[t.E=3]="E",t[t.SE=4]="SE",t[t.S=5]="S",t[t.SW=6]="SW",t[t.W=7]="W",t[t.NW=8]="NW"})(TextPlacements||(TextPlacements={}));var LineLabelPlacement;(function(t){t[t.Above=1]="Above",t[t.Center=2]="Center",t[t.Below=3]="Below"})(LineLabelPlacement||(LineLabelPlacement={})),__toModule(require_point_geometry());/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */function makeKey({x:t,y:n,level:o}){return`${o}:${t}:${n}`}function getTileCoords(t,n){if(n!=null&&t.level>n){const o=2**(t.level-n);return{x:Math.floor(t.x/o),y:Math.floor(t.y/o),z:n}}return{x:t.x,y:t.y,z:t.level}}class JapanGSIOptimalBVmapImageryProviderBase{constructor(n){Ef(this,"defaultAlpha");Ef(this,"defaultNightAlpha");Ef(this,"defaultDayAlpha");Ef(this,"defaultBrightness");Ef(this,"defaultContrast");Ef(this,"defaultHue");Ef(this,"defaultSaturation");Ef(this,"defaultGamma");Ef(this,"defaultMinificationFilter");Ef(this,"defaultMagnificationFilter");Ef(this,"ready",!0);Ef(this,"readyPromise",Promise.resolve(!0));Ef(this,"tileWidth",256);Ef(this,"tileHeight",256);Ef(this,"maximumLevel");Ef(this,"minimumLevel",0);Ef(this,"tilingScheme",new WebMercatorTilingScheme);Ef(this,"rectangle",this.tilingScheme.rectangle);Ef(this,"tileDiscardPolicy");Ef(this,"errorEvent",new Event$1);Ef(this,"credit");Ef(this,"proxy");Ef(this,"hasAlphaChannel",!0);(n==null?void 0:n.tilingScheme)!=null&&(this.tilingScheme=n.tilingScheme),(n==null?void 0:n.tileWidth)!=null&&(this.tileWidth=n.tileWidth),(n==null?void 0:n.tileHeight)!=null&&(this.tileHeight=n.tileHeight)}getTileCredits(n,o,s){}requestImage(n,o,s,c){}pickFeatures(n,o,s,c,d){}get _ready(){return this.ready}get _readyPromise(){return this.readyPromise}}class JapanGSIOptimalBVmapLabelImageryProvider extends JapanGSIOptimalBVmapImageryProviderBase{constructor(o){super(o);Ef(this,"minimumDataLevel");Ef(this,"maximumDataLevel");Ef(this,"tileCache");Ef(this,"image");Ef(this,"discardedTileCoords",new Set);this.tileDiscardPolicy=new DiscardEmptyTileImagePolicy,this.minimumDataLevel=o.minimumDataLevel,this.maximumDataLevel=o.maximumDataLevel;const s=new ZxySource(o.url,!1);this.tileCache=new TileCache(s,1024),this.image=document.createElement("canvas"),this.image.width=1,this.image.height=1}requestImage(o,s,c,d){const h=makeKey({x:o,y:s,level:c});return(async()=>c<this.minimumDataLevel||this.discardedTileCoords.has(h)?DiscardEmptyTileImagePolicy.EMPTY_IMAGE:(await this.tileCache.get(getTileCoords({x:o,y:s,level:c},this.maximumDataLevel)),this.image))().catch(()=>(this.discardedTileCoords.add(h),DiscardEmptyTileImagePolicy.EMPTY_IMAGE))}}const tiles={default:({cesiumIonAccessToken:t}={})=>Cesium$1.IonImageryProvider.fromAssetId(Cesium$1.IonWorldImageryStyle.AERIAL,{accessToken:t}).catch(console.error),default_label:({cesiumIonAccessToken:t}={})=>Cesium$1.IonImageryProvider.fromAssetId(Cesium$1.IonWorldImageryStyle.AERIAL_WITH_LABELS,{accessToken:t}).catch(console.error),default_road:({cesiumIonAccessToken:t}={})=>Cesium$1.IonImageryProvider.fromAssetId(Cesium$1.IonWorldImageryStyle.ROAD,{accessToken:t}).catch(console.error),open_street_map:()=>new Cesium$1.OpenStreetMapImageryProvider({url:"https://a.tile.openstreetmap.org/",credit:"Copyright: Tiles © Esri — Source: Esri, DeLorme, NAVTEQ, USGS, Intermap, iPC, NRCAN, Esri Japan, METI, Esri China (Hong Kong), Esri (Thailand), TomTom, 2012"}),esri_world_topo:()=>Cesium$1.ArcGisMapServerImageryProvider.fromUrl("https://services.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer",{credit:"Copyright: Tiles © Esri — Esri, DeLorme, NAVTEQ, TomTom, Intermap, iPC, USGS, FAO, NPS, NRCAN, GeoBase, Kadaster NL, Ordnance Survey, Esri Japan, METI, Esri China (Hong Kong), and the GIS User Communit",enablePickFeatures:!1}).catch(console.error),black_marble:({cesiumIonAccessToken:t}={})=>Cesium$1.IonImageryProvider.fromAssetId(3812,{accessToken:t}).catch(console.error),japan_gsi_standard:()=>new Cesium$1.OpenStreetMapImageryProvider({url:"https://cyberjapandata.gsi.go.jp/xyz/std/"}),url:({url:t,heatmap:n,tile_zoomLevel:o}={})=>t?new Cesium$1.UrlTemplateImageryProvider({url:t,tileDiscardPolicy:n?new Cesium$1.DiscardEmptyTileImagePolicy:void 0,minimumLevel:o==null?void 0:o[0],maximumLevel:o==null?void 0:o[1]}):null};function ImageryLayers({tiles:t,cesiumIonAccessToken:n,onTilesChange:o}){const{providers:s,updated:c}=useImageryProviders({tiles:t,cesiumIonAccessToken:n,presets:tiles}),[d,h]=React.useState(0);return React.useLayoutEffect(()=>{c&&h(p=>p+1)},[s,c]),React.useEffect(()=>{o==null||o()},[t,d,o]),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:t==null?void 0:t.map(({id:p,...y})=>{var S;return{...y,id:p,provider:(S=s[p])==null?void 0:S[2]}}).map(({id:p,opacity:y,zoomLevel:S,provider:P,heatmap:L},F)=>P?jsxRuntimeExports.jsx(Ns$1,{imageryProvider:P,minimumTerrainLevel:S==null?void 0:S[0],maximumTerrainLevel:S==null?void 0:S[1],alpha:y,index:F,colorToAlpha:L?Cesium$1.Color.WHITE:void 0,colorToAlphaThreshold:L?1:void 0,magnificationFilter:L?Cesium$1.TextureMagnificationFilter.LINEAR:void 0,minificationFilter:L?Cesium$1.TextureMinificationFilter.NEAREST:void 0},`${p}_${F}_${d}`):null)})}function useImageryProviders({tiles:t=[],cesiumIonAccessToken:n,presets:o}){const s=React.useCallback((F,N)=>o[F.type||"default"]({url:F.url,cesiumIonAccessToken:N,heatmap:F.heatmap,zoomLevel:F.zoomLevelForURL}),[o]),c=React.useRef(n),d=t.map(F=>F.id).join(","),h=React.useRef(d),p=React.useRef({}),y=React.useMemo(()=>t.map(F=>{if(F.id&&F.zoomLevel)return{[F.id]:F.zoomLevel}}),[t]),S=React.useRef(y),{providers:P,updated:L}=React.useMemo(()=>{const F=c.current!==n,N=Object.keys(p.current),z=t.map(se=>se.id).filter(se=>se&&!N.includes(se)),W=[...Object.entries(p.current),...z.map(se=>[se,void 0])].map(([se,mt])=>({key:se,added:z.includes(se),prevType:mt==null?void 0:mt[0],prevUrl:mt==null?void 0:mt[1],prevProvider:mt==null?void 0:mt[2],tile:t.find(kt=>kt.id===se)})),lt=Object.fromEntries(W.map(({key:se,added:mt,prevType:kt,prevUrl:mn,prevProvider:pi,tile:zi})=>zi?[se,mt||kt!==zi.type||mn!==zi.url||F&&(!zi.type||zi.type==="default")?[zi.type,zi.url,s(zi,n)]:[kt,mn,pi]]:null).filter(se=>!!(se!=null&&se[1][2]))),Pe=!!z.length||!!F||!isEqual(h.current,d)||!isEqual(S.current,y)||W.some(se=>se.tile&&(se.prevType!==se.tile.type||se.prevUrl!==se.tile.url));return h.current=d,S.current=y,c.current=n,{providers:lt,updated:Pe}},[n,t,d,s,y]);return p.current=P,{providers:P,updated:L}}const useTransition=(t,n,o)=>{const[s,c]=React.useState(t?"entered":o&&o.mountOnEnter?"unmounted":"exited"),d=React.useRef(),h=React.useRef(),p=React.useCallback(()=>{c(t?"entered":o&&o.unmountOnExit?"unmounted":"exited"),h.current=void 0},[t,!!o&&o.unmountOnExit,h]),y=React.useCallback(()=>{c("entered"),h.current=void 0},[h]),S=React.useCallback(()=>{c(t?"entered":o&&o.unmountOnExit?"unmounted":"exited"),h.current=void 0},[t,!!o&&o.unmountOnExit,h]),P=React.useCallback(()=>{c(t?"entering":"exiting"),d.current=setTimeout(S,n),h.current=Date.now()+n},[t,n,S,d,h]);return React.useEffect(()=>{if(t?s==="entered":s==="exited"||s==="unmounted"){h.current=void 0;return}const L=Date.now(),F=typeof h.current>"u"?n:n-(h.current-L);return!t&&(s==="entered"||s==="entering")?(c("exiting"),d.current=setTimeout(p,F)):t&&(s==="exited"||s==="exiting")?(c("entering"),d.current=setTimeout(y,F)):(c(t?"exited":"entered"),d.current=setTimeout(P,30)),h.current=L+F,()=>{clearTimeout(d.current)}},[t]),s},SvgCrosshair=t=>React__namespace.createElement("svg",{width:48,height:48,viewBox:"0 0 48 48",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...t},React__namespace.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M25 5.02586C34.6974 5.52871 42.4713 13.3026 42.9741 23H47C47.5523 23 48 23.4477 48 24C48 24.5523 47.5523 25 47 25H42.9741C42.4713 34.6974 34.6974 42.4713 25 42.9741V47C25 47.5523 24.5523 48 24 48C23.4477 48 23 47.5523 23 47V42.9741C13.3026 42.4713 5.52871 34.6974 5.02586 25H1C0.447715 25 0 24.5523 0 24C0 23.4477 0.447715 23 1 23H5.02586C5.52871 13.3026 13.3026 5.52871 23 5.02586V1C23 0.447715 23.4477 0 24 0C24.5523 0 25 0.447715 25 1V5.02586ZM41.5 24C41.5 33.665 33.665 41.5 24 41.5C14.335 41.5 6.5 33.665 6.5 24C6.5 14.335 14.335 6.5 24 6.5C33.665 6.5 41.5 14.335 41.5 24Z",fill:"white"}));function Indicator({className:t,property:n,timelineManagerRef:o}){const{viewer:s}=$e$1(),[c,d]=React.useState(!0),[h,p]=React.useState(),y=useTransition(!!h&&c,500,{mountOnEnter:!0,unmountOnExit:!0}),{type:S,image:P,imageScale:L}=(n==null?void 0:n.indicator)??{},[F,N,z]=useIcon({image:P,imageSize:L});return React.useEffect(()=>{!S||S==="default"?s==null||s.selectionIndicator.viewModel.selectionIndicatorElement.removeAttribute("hidden"):s==null||s.selectionIndicator.viewModel.selectionIndicatorElement.setAttribute("hidden","true")},[S,s,s==null?void 0:s.selectionIndicator]),React.useEffect(()=>{if(!s)return;const W=()=>{var pi,zi,Sa;if(s.isDestroyed())return;const Pe=s.selectedEntity,se=(zi=(pi=o==null?void 0:o.current)==null?void 0:pi.timeline)!=null&&zi.current?Cesium$1.JulianDate.fromDate((Sa=o==null?void 0:o.current)==null?void 0:Sa.timeline.current):void 0;if(!(Pe!=null&&Pe.isShowing)||se&&!Pe.isAvailable(se)||!Pe.position){d(!1);return}let mt;const kt=new Cesium$1.BoundingSphere;if(s.dataSourceDisplay.getBoundingSphere(Pe,!0,kt)!==2?mt=kt.center:Pe.position&&se&&(mt=Pe.position.getValue(se,mt)),mt){const fa=Cesium$1.SceneTransforms.wgs84ToWindowCoordinates(s.scene,mt);p(fa),d(!0)}else d(!1)},lt=o==null?void 0:o.current;return lt==null||lt.onTick(W),()=>{lt==null||lt.offTick(W)}},[s,o]),y!=="unmounted"&&h?S==="crosshair"?jsxRuntimeExports.jsx("div",{className:t,style:{width:48,height:48,fontSize:0,display:"inline-block",transitionProperty:"color, background",left:h.x+"px",top:h.y+"px",position:"absolute",transform:"translate(-50%, -50%)",transition:y==="entering"||y==="exiting"?"all 0.5s ease":"",opacity:y==="entering"||y==="entered"?1:0,pointerEvents:"none"},children:jsxRuntimeExports.jsx(SvgCrosshair,{})}):S==="custom"?jsxRuntimeExports.jsx("img",{src:F,width:N,height:z,style:{left:h.x+"px",top:h.y+"px",position:"absolute",transform:"translate(-50%, -50%)",transition:y==="entering"||y==="exiting"?"all 0.5s ease":"",opacity:y==="entering"||y==="entered"?1:0,pointerEvents:"none"}}):jsxRuntimeExports.jsx("div",{style:{left:h.x+"px",top:h.y+"px",position:"absolute",transform:"translate(-50%, -50%)",transition:y==="entering"||y==="exiting"?"all 0.5s ease":"",opacity:y==="entering"||y==="entered"?1:0,pointerEvents:"none"}}):null}const annotationTypes={municipalities:[110,140],towns:[120,130,210,220,800],roads:[411],railways:[421],stations:[422],landmarks:[412,413,423,431,432,441,511,521,522,523,531,532,533,534,611,612,613,615,621,631,632,633,634,651,653,661,662,671,673,681,860,870,880,881,882,883,884,885,886,887,888,889,890,899],topography:[311,312,313,314,315,316,321,322,323,331,332,333,341,342,343,344,345,346,347,348,351,352,353,361,810,820,822,830,831,832,840,841,842,843,850]},typeMap=fromPairs(Object.entries(annotationTypes).flatMap(([t,n])=>n.map(o=>[o,t])));function getAnnotationType(t){return typeMap[t]}function useSceneEvent(t,n){const{viewer:o}=$e$1(),s=o==null?void 0:o.scene,c=React.useRef(n);c.current=n,React.useLayoutEffect(()=>s==null?void 0:s[t].addEventListener((d,h)=>{try{c.current(d,h)}catch(p){console.error(p)}}),[t,s])}function usePreRender(t){useSceneEvent("preRender",t)}const isPromise=t=>typeof t=="object"&&typeof t.then=="function",globalCache=[];function shallowEqualArrays(t,n,o=(s,c)=>s===c){if(t===n)return!0;if(!t||!n)return!1;const s=t.length;if(n.length!==s)return!1;for(let c=0;c<s;c++)if(!o(t[c],n[c]))return!1;return!0}function query(t,n=null,o=!1,s={}){n===null&&(n=[t]);for(const d of globalCache)if(shallowEqualArrays(n,d.keys,d.equal)){if(o)return;if(Object.prototype.hasOwnProperty.call(d,"error"))throw d.error;if(Object.prototype.hasOwnProperty.call(d,"response"))return s.lifespan&&s.lifespan>0&&(d.timeout&&clearTimeout(d.timeout),d.timeout=setTimeout(d.remove,s.lifespan)),d.response;if(!o)throw d.promise}const c={keys:n,equal:s.equal,remove:()=>{const d=globalCache.indexOf(c);d!==-1&&globalCache.splice(d,1)},promise:(isPromise(t)?t:t(...n)).then(d=>{c.response=d,s.lifespan&&s.lifespan>0&&(c.timeout=setTimeout(c.remove,s.lifespan))}).catch(d=>c.error=d)};if(globalCache.push(c),!o)throw c.promise}const suspend=(t,n,o)=>query(t,n,!1,o);function coordEach(t,n,o){if(t!==null)for(var s,c,d,h,p,y,S,P=0,L=0,F,N=t.type,z=N==="FeatureCollection",W=N==="Feature",lt=z?t.features.length:1,Pe=0;Pe<lt;Pe++){S=z?t.features[Pe].geometry:W?t.geometry:t,F=S?S.type==="GeometryCollection":!1,p=F?S.geometries.length:1;for(var se=0;se<p;se++){var mt=0,kt=0;if(h=F?S.geometries[se]:S,h!==null){y=h.coordinates;var mn=h.type;switch(P=o&&(mn==="Polygon"||mn==="MultiPolygon")?1:0,mn){case null:break;case"Point":if(n(y,L,Pe,mt,kt)===!1)return!1;L++,mt++;break;case"LineString":case"MultiPoint":for(s=0;s<y.length;s++){if(n(y[s],L,Pe,mt,kt)===!1)return!1;L++,mn==="MultiPoint"&&mt++}mn==="LineString"&&mt++;break;case"Polygon":case"MultiLineString":for(s=0;s<y.length;s++){for(c=0;c<y[s].length-P;c++){if(n(y[s][c],L,Pe,mt,kt)===!1)return!1;L++}mn==="MultiLineString"&&mt++,mn==="Polygon"&&kt++}mn==="Polygon"&&mt++;break;case"MultiPolygon":for(s=0;s<y.length;s++){for(kt=0,c=0;c<y[s].length;c++){for(d=0;d<y[s][c].length-P;d++){if(n(y[s][c][d],L,Pe,mt,kt)===!1)return!1;L++}kt++}mt++}break;case"GeometryCollection":for(s=0;s<h.geometries.length;s++)if(coordEach(h.geometries[s],n,o)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function featureEach(t,n){if(t.type==="Feature")n(t,0);else if(t.type==="FeatureCollection")for(var o=0;o<t.features.length&&n(t.features[o],o)!==!1;o++);}function geomEach(t,n){var o,s,c,d,h,p,y,S,P,L,F=0,N=t.type==="FeatureCollection",z=t.type==="Feature",W=N?t.features.length:1;for(o=0;o<W;o++){for(p=N?t.features[o].geometry:z?t.geometry:t,S=N?t.features[o].properties:z?t.properties:{},P=N?t.features[o].bbox:z?t.bbox:void 0,L=N?t.features[o].id:z?t.id:void 0,y=p?p.type==="GeometryCollection":!1,h=y?p.geometries.length:1,c=0;c<h;c++){if(d=y?p.geometries[c]:p,d===null){if(n(null,F,S,P,L)===!1)return!1;continue}switch(d.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(n(d,F,S,P,L)===!1)return!1;break}case"GeometryCollection":{for(s=0;s<d.geometries.length;s++)if(n(d.geometries[s],F,S,P,L)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}F++}}function geomReduce(t,n,o){var s=o;return geomEach(t,function(c,d,h,p,y){s=n(s,c,d,h,p,y)}),s}function flattenEach(t,n){geomEach(t,function(o,s,c,d,h){var p=o===null?null:o.type;switch(p){case null:case"Point":case"LineString":case"Polygon":return n(feature$1(o,c,{bbox:d,id:h}),s,0)===!1?!1:void 0}var y;switch(p){case"MultiPoint":y="Point";break;case"MultiLineString":y="LineString";break;case"MultiPolygon":y="Polygon";break}for(var S=0;S<o.coordinates.length;S++){var P=o.coordinates[S],L={type:y,coordinates:P};if(n(feature$1(L,c),s,S)===!1)return!1}})}var rbush$2={exports:{}},quickselect$2={exports:{}};(function(t,n){(function(o,s){t.exports=s()})(commonjsGlobal,function(){function o(h,p,y,S,P){s(h,p,y||0,S||h.length-1,P||d)}function s(h,p,y,S,P){for(;S>y;){if(S-y>600){var L=S-y+1,F=p-y+1,N=Math.log(L),z=.5*Math.exp(2*N/3),W=.5*Math.sqrt(N*z*(L-z)/L)*(F-L/2<0?-1:1),lt=Math.max(y,Math.floor(p-F*z/L+W)),Pe=Math.min(S,Math.floor(p+(L-F)*z/L+W));s(h,p,lt,Pe,P)}var se=h[p],mt=y,kt=S;for(c(h,y,p),P(h[S],se)>0&&c(h,y,S);mt<kt;){for(c(h,mt,kt),mt++,kt--;P(h[mt],se)<0;)mt++;for(;P(h[kt],se)>0;)kt--}P(h[y],se)===0?c(h,y,kt):(kt++,c(h,kt,S)),kt<=p&&(y=kt+1),p<=kt&&(S=kt-1)}}function c(h,p,y){var S=h[p];h[p]=h[y],h[y]=S}function d(h,p){return h<p?-1:h>p?1:0}return o})})(quickselect$2);var quickselectExports=quickselect$2.exports;rbush$2.exports=rbush,rbush$2.exports.default=rbush;var quickselect$1=quickselectExports;function rbush(t,n){if(!(this instanceof rbush))return new rbush(t,n);this._maxEntries=Math.max(4,t||9),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),n&&this._initFormat(n),this.clear()}rbush.prototype={all:function(){return this._all(this.data,[])},search:function(t){var n=this.data,o=[],s=this.toBBox;if(!intersects(t,n))return o;for(var c=[],d,h,p,y;n;){for(d=0,h=n.children.length;d<h;d++)p=n.children[d],y=n.leaf?s(p):p,intersects(t,y)&&(n.leaf?o.push(p):contains(t,y)?this._all(p,o):c.push(p));n=c.pop()}return o},collides:function(t){var n=this.data,o=this.toBBox;if(!intersects(t,n))return!1;for(var s=[],c,d,h,p;n;){for(c=0,d=n.children.length;c<d;c++)if(h=n.children[c],p=n.leaf?o(h):h,intersects(t,p)){if(n.leaf||contains(t,p))return!0;s.push(h)}n=s.pop()}return!1},load:function(t){if(!(t&&t.length))return this;if(t.length<this._minEntries){for(var n=0,o=t.length;n<o;n++)this.insert(t[n]);return this}var s=this._build(t.slice(),0,t.length-1,0);if(!this.data.children.length)this.data=s;else if(this.data.height===s.height)this._splitRoot(this.data,s);else{if(this.data.height<s.height){var c=this.data;this.data=s,s=c}this._insert(s,this.data.height-s.height-1,!0)}return this},insert:function(t){return t&&this._insert(t,this.data.height-1),this},clear:function(){return this.data=createNode([]),this},remove:function(t,n){if(!t)return this;for(var o=this.data,s=this.toBBox(t),c=[],d=[],h,p,y,S;o||c.length;){if(o||(o=c.pop(),p=c[c.length-1],h=d.pop(),S=!0),o.leaf&&(y=findItem(t,o.children,n),y!==-1))return o.children.splice(y,1),c.push(o),this._condense(c),this;!S&&!o.leaf&&contains(o,s)?(c.push(o),d.push(h),h=0,p=o,o=o.children[0]):p?(h++,o=p.children[h],S=!1):o=null}return this},toBBox:function(t){return t},compareMinX:compareNodeMinX,compareMinY:compareNodeMinY,toJSON:function(){return this.data},fromJSON:function(t){return this.data=t,this},_all:function(t,n){for(var o=[];t;)t.leaf?n.push.apply(n,t.children):o.push.apply(o,t.children),t=o.pop();return n},_build:function(t,n,o,s){var c=o-n+1,d=this._maxEntries,h;if(c<=d)return h=createNode(t.slice(n,o+1)),calcBBox(h,this.toBBox),h;s||(s=Math.ceil(Math.log(c)/Math.log(d)),d=Math.ceil(c/Math.pow(d,s-1))),h=createNode([]),h.leaf=!1,h.height=s;var p=Math.ceil(c/d),y=p*Math.ceil(Math.sqrt(d)),S,P,L,F;for(multiSelect(t,n,o,y,this.compareMinX),S=n;S<=o;S+=y)for(L=Math.min(S+y-1,o),multiSelect(t,S,L,p,this.compareMinY),P=S;P<=L;P+=p)F=Math.min(P+p-1,L),h.children.push(this._build(t,P,F,s-1));return calcBBox(h,this.toBBox),h},_chooseSubtree:function(t,n,o,s){for(var c,d,h,p,y,S,P,L;s.push(n),!(n.leaf||s.length-1===o);){for(P=L=1/0,c=0,d=n.children.length;c<d;c++)h=n.children[c],y=bboxArea(h),S=enlargedArea(t,h)-y,S<L?(L=S,P=y<P?y:P,p=h):S===L&&y<P&&(P=y,p=h);n=p||n.children[0]}return n},_insert:function(t,n,o){var s=this.toBBox,c=o?t:s(t),d=[],h=this._chooseSubtree(c,this.data,n,d);for(h.children.push(t),extend$1(h,c);n>=0&&d[n].children.length>this._maxEntries;)this._split(d,n),n--;this._adjustParentBBoxes(c,d,n)},_split:function(t,n){var o=t[n],s=o.children.length,c=this._minEntries;this._chooseSplitAxis(o,c,s);var d=this._chooseSplitIndex(o,c,s),h=createNode(o.children.splice(d,o.children.length-d));h.height=o.height,h.leaf=o.leaf,calcBBox(o,this.toBBox),calcBBox(h,this.toBBox),n?t[n-1].children.push(h):this._splitRoot(o,h)},_splitRoot:function(t,n){this.data=createNode([t,n]),this.data.height=t.height+1,this.data.leaf=!1,calcBBox(this.data,this.toBBox)},_chooseSplitIndex:function(t,n,o){var s,c,d,h,p,y,S,P;for(y=S=1/0,s=n;s<=o-n;s++)c=distBBox(t,0,s,this.toBBox),d=distBBox(t,s,o,this.toBBox),h=intersectionArea(c,d),p=bboxArea(c)+bboxArea(d),h<y?(y=h,P=s,S=p<S?p:S):h===y&&p<S&&(S=p,P=s);return P},_chooseSplitAxis:function(t,n,o){var s=t.leaf?this.compareMinX:compareNodeMinX,c=t.leaf?this.compareMinY:compareNodeMinY,d=this._allDistMargin(t,n,o,s),h=this._allDistMargin(t,n,o,c);d<h&&t.children.sort(s)},_allDistMargin:function(t,n,o,s){t.children.sort(s);var c=this.toBBox,d=distBBox(t,0,n,c),h=distBBox(t,o-n,o,c),p=bboxMargin(d)+bboxMargin(h),y,S;for(y=n;y<o-n;y++)S=t.children[y],extend$1(d,t.leaf?c(S):S),p+=bboxMargin(d);for(y=o-n-1;y>=n;y--)S=t.children[y],extend$1(h,t.leaf?c(S):S),p+=bboxMargin(h);return p},_adjustParentBBoxes:function(t,n,o){for(var s=o;s>=0;s--)extend$1(n[s],t)},_condense:function(t){for(var n=t.length-1,o;n>=0;n--)t[n].children.length===0?n>0?(o=t[n-1].children,o.splice(o.indexOf(t[n]),1)):this.clear():calcBBox(t[n],this.toBBox)},_initFormat:function(t){var n=["return a"," - b",";"];this.compareMinX=new Function("a","b",n.join(t[0])),this.compareMinY=new Function("a","b",n.join(t[1])),this.toBBox=new Function("a","return {minX: a"+t[0]+", minY: a"+t[1]+", maxX: a"+t[2]+", maxY: a"+t[3]+"};")}};function findItem(t,n,o){if(!o)return n.indexOf(t);for(var s=0;s<n.length;s++)if(o(t,n[s]))return s;return-1}function calcBBox(t,n){distBBox(t,0,t.children.length,n,t)}function distBBox(t,n,o,s,c){c||(c=createNode(null)),c.minX=1/0,c.minY=1/0,c.maxX=-1/0,c.maxY=-1/0;for(var d=n,h;d<o;d++)h=t.children[d],extend$1(c,t.leaf?s(h):h);return c}function extend$1(t,n){return t.minX=Math.min(t.minX,n.minX),t.minY=Math.min(t.minY,n.minY),t.maxX=Math.max(t.maxX,n.maxX),t.maxY=Math.max(t.maxY,n.maxY),t}function compareNodeMinX(t,n){return t.minX-n.minX}function compareNodeMinY(t,n){return t.minY-n.minY}function bboxArea(t){return(t.maxX-t.minX)*(t.maxY-t.minY)}function bboxMargin(t){return t.maxX-t.minX+(t.maxY-t.minY)}function enlargedArea(t,n){return(Math.max(n.maxX,t.maxX)-Math.min(n.minX,t.minX))*(Math.max(n.maxY,t.maxY)-Math.min(n.minY,t.minY))}function intersectionArea(t,n){var o=Math.max(t.minX,n.minX),s=Math.max(t.minY,n.minY),c=Math.min(t.maxX,n.maxX),d=Math.min(t.maxY,n.maxY);return Math.max(0,c-o)*Math.max(0,d-s)}function contains(t,n){return t.minX<=n.minX&&t.minY<=n.minY&&n.maxX<=t.maxX&&n.maxY<=t.maxY}function intersects(t,n){return n.minX<=t.maxX&&n.minY<=t.maxY&&n.maxX>=t.minX&&n.maxY>=t.minY}function createNode(t){return{children:t,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function multiSelect(t,n,o,s,c){for(var d=[n,o],h;d.length;)o=d.pop(),n=d.pop(),!(o-n<=s)&&(h=n+Math.ceil((o-n)/s/2)*s,quickselect$1(t,h,n,o,c),d.push(n,h,h,o))}var rbushExports=rbush$2.exports;const rbush$1=getDefaultExportFromCjs(rbushExports);var RADIUS=6378137;function area(t){return geomReduce(t,function(n,o){return n+calculateArea(o)},0)}function calculateArea(t){var n=0,o;switch(t.type){case"Polygon":return polygonArea(t.coordinates);case"MultiPolygon":for(o=0;o<t.coordinates.length;o++)n+=polygonArea(t.coordinates[o]);return n;case"Point":case"MultiPoint":case"LineString":case"MultiLineString":return 0}return 0}function polygonArea(t){var n=0;if(t&&t.length>0){n+=Math.abs(ringArea(t[0]));for(var o=1;o<t.length;o++)n-=Math.abs(ringArea(t[o]))}return n}function ringArea(t){var n,o,s,c,d,h,p,y=0,S=t.length;if(S>2){for(p=0;p<S;p++)p===S-2?(c=S-2,d=S-1,h=0):p===S-1?(c=S-1,d=0,h=1):(c=p,d=p+1,h=p+2),n=t[c],o=t[d],s=t[h],y+=(rad(s[0])-rad(n[0]))*Math.sin(rad(o[1]));y=y*RADIUS*RADIUS/2}return y}function rad(t){return t*Math.PI/180}function booleanPointInPolygon(t,n,o){if(o===void 0&&(o={}),!t)throw new Error("point is required");if(!n)throw new Error("polygon is required");var s=getCoord$2(t),c=getGeom$2(n),d=c.type,h=n.bbox,p=c.coordinates;if(h&&inBBox(s,h)===!1)return!1;d==="Polygon"&&(p=[p]);for(var y=!1,S=0;S<p.length&&!y;S++)if(inRing(s,p[S][0],o.ignoreBoundary)){for(var P=!1,L=1;L<p[S].length&&!P;)inRing(s,p[S][L],!o.ignoreBoundary)&&(P=!0),L++;P||(y=!0)}return y}function inRing(t,n,o){var s=!1;n[0][0]===n[n.length-1][0]&&n[0][1]===n[n.length-1][1]&&(n=n.slice(0,n.length-1));for(var c=0,d=n.length-1;c<n.length;d=c++){var h=n[c][0],p=n[c][1],y=n[d][0],S=n[d][1],P=t[1]*(h-y)+p*(y-t[0])+S*(t[0]-h)===0&&(h-t[0])*(y-t[0])<=0&&(p-t[1])*(S-t[1])<=0;if(P)return!o;var L=p>t[1]!=S>t[1]&&t[0]<(y-h)*(t[1]-p)/(S-p)+h;L&&(s=!s)}return s}function inBBox(t,n){return n[0]<=t[0]&&n[1]<=t[1]&&n[2]>=t[0]&&n[3]>=t[1]}function isects(t,n,o){if(t.geometry.type!=="Polygon")throw new Error("The input feature must be a Polygon");o===void 0&&(o=1);var s=t.geometry.coordinates,c=[],d={};if(o){for(var h=[],p=0;p<s.length;p++)for(var y=0;y<s[p].length-1;y++)h.push(lt(p,y));var S=rbush$1();S.load(h)}for(var P=0;P<s.length;P++)for(var L=0;L<s[P].length-1;L++)if(o){var F=S.search(lt(P,L));F.forEach(function(Pe){var se=Pe.ring,mt=Pe.edge;W(P,L,se,mt)})}else for(var N=0;N<s.length;N++)for(var z=0;z<s[N].length-1;z++)W(P,L,N,z);return n||(c={type:"Feature",geometry:{type:"MultiPoint",coordinates:c}}),c;function W(Pe,se,mt,kt){var mn=s[Pe][se],pi=s[Pe][se+1],zi=s[mt][kt],Sa=s[mt][kt+1],fa=intersect(mn,pi,zi,Sa);if(fa!==null){var La,Ra;if(pi[0]!==mn[0]?La=(fa[0]-mn[0])/(pi[0]-mn[0]):La=(fa[1]-mn[1])/(pi[1]-mn[1]),Sa[0]!==zi[0]?Ra=(fa[0]-zi[0])/(Sa[0]-zi[0]):Ra=(fa[1]-zi[1])/(Sa[1]-zi[1]),!(La>=1||La<=0||Ra>=1||Ra<=0)){var ma=fa,yt=!d[ma];yt&&(d[ma]=!0),c.push(n(fa,Pe,se,mn,pi,La,mt,kt,zi,Sa,Ra,yt))}}}function lt(Pe,se){var mt=s[Pe][se],kt=s[Pe][se+1],mn,pi,zi,Sa;return mt[0]<kt[0]?(mn=mt[0],pi=kt[0]):(mn=kt[0],pi=mt[0]),mt[1]<kt[1]?(zi=mt[1],Sa=kt[1]):(zi=kt[1],Sa=mt[1]),{minX:mn,minY:zi,maxX:pi,maxY:Sa,ring:Pe,edge:se}}}function intersect(t,n,o,s){if(equalArrays(t,o)||equalArrays(t,s)||equalArrays(n,o)||equalArrays(s,o))return null;var c=t[0],d=t[1],h=n[0],p=n[1],y=o[0],S=o[1],P=s[0],L=s[1],F=(c-h)*(S-L)-(d-p)*(y-P);if(F===0)return null;var N=((c*p-d*h)*(y-P)-(c-h)*(y*L-S*P))/F,z=((c*p-d*h)*(S-L)-(d-p)*(y*L-S*P))/F;return[N,z]}function equalArrays(t,n){if(!t||!n||t.length!==n.length)return!1;for(var o=0,s=t.length;o<s;o++)if(t[o]instanceof Array&&n[o]instanceof Array){if(!equalArrays(t[o],n[o]))return!1}else if(t[o]!==n[o])return!1;return!0}function simplepolygon(t){if(t.type!="Feature")throw new Error("The input must a geojson object of type Feature");if(t.geometry===void 0||t.geometry==null)throw new Error("The input must a geojson object with a non-empty geometry");if(t.geometry.type!="Polygon")throw new Error("The input must be a geojson Polygon");for(var n=t.geometry.coordinates.length,o=[],se=0;se<n;se++){var s=t.geometry.coordinates[se];equalArrays$1(s[0],s[s.length-1])||s.push(s[0]),o.push.apply(o,s.slice(0,s.length-1))}if(!isUnique(o))throw new Error("The input polygon may not have duplicate vertices (except for the first and last vertex of each ring)");var c=o.length,d=isects(t,function(Vd,Gd,cf,uf,gf,hf,pf,_f,Vf,Rf,Wa,af){return[Vd,Gd,cf,uf,gf,hf,pf,_f,Vf,Rf,Wa,af]}),h=d.length;if(h==0){for(var zi=[],se=0;se<n;se++)zi.push(polygon([t.geometry.coordinates[se]],{parent:-1,winding:windingOfRing(t.geometry.coordinates[se])}));var Xs=featureCollection$2(zi);return pu(),yu(),Xs}for(var p=[],y=[],se=0;se<n;se++){p.push([]);for(var S=0;S<t.geometry.coordinates[se].length-1;S++)p[se].push([new PseudoVtx(t.geometry.coordinates[se][modulo(S+1,t.geometry.coordinates[se].length-1)],1,[se,S],[se,modulo(S+1,t.geometry.coordinates[se].length-1)],void 0)]),y.push(new Isect(t.geometry.coordinates[se][S],[se,modulo(S-1,t.geometry.coordinates[se].length-1)],[se,S],void 0,void 0,!1,!0))}for(var se=0;se<h;se++)p[d[se][1]][d[se][2]].push(new PseudoVtx(d[se][0],d[se][5],[d[se][1],d[se][2]],[d[se][6],d[se][7]],void 0)),d[se][11]&&y.push(new Isect(d[se][0],[d[se][1],d[se][2]],[d[se][6],d[se][7]],void 0,void 0,!0,!0));for(var P=y.length,se=0;se<p.length;se++)for(var S=0;S<p[se].length;S++)p[se][S].sort(function(Gd,cf){return Gd.param<cf.param?-1:1});for(var L=[],se=0;se<P;se++)L.push({minX:y[se].coord[0],minY:y[se].coord[1],maxX:y[se].coord[0],maxY:y[se].coord[1],index:se});var F=rbush$1();F.load(L);for(var se=0;se<p.length;se++)for(var S=0;S<p[se].length;S++)for(var N=0;N<p[se][S].length;N++){var z;N==p[se][S].length-1?z=p[se][modulo(S+1,t.geometry.coordinates[se].length-1)][0].coord:z=p[se][S][N+1].coord;var W=F.search({minX:z[0],minY:z[1],maxX:z[0],maxY:z[1]})[0];p[se][S][N].nxtIsectAlongEdgeIn=W.index}for(var se=0;se<p.length;se++)for(var S=0;S<p[se].length;S++)for(var N=0;N<p[se][S].length;N++){var z=p[se][S][N].coord,W=F.search({minX:z[0],minY:z[1],maxX:z[0],maxY:z[1]})[0],lt=W.index;lt<c?y[lt].nxtIsectAlongRingAndEdge2=p[se][S][N].nxtIsectAlongEdgeIn:equalArrays$1(y[lt].ringAndEdge1,p[se][S][N].ringAndEdgeIn)?y[lt].nxtIsectAlongRingAndEdge1=p[se][S][N].nxtIsectAlongEdgeIn:y[lt].nxtIsectAlongRingAndEdge2=p[se][S][N].nxtIsectAlongEdgeIn}for(var Pe=[],se=0,S=0;S<n;S++){for(var mt=se,N=0;N<t.geometry.coordinates[S].length-1;N++)y[se].coord[0]<y[mt].coord[0]&&(mt=se),se++;for(var kt=y[mt].nxtIsectAlongRingAndEdge2,N=0;N<y.length;N++)if(y[N].nxtIsectAlongRingAndEdge1==mt||y[N].nxtIsectAlongRingAndEdge2==mt){var mn=N;break}var pi=isConvex([y[mn].coord,y[mt].coord,y[kt].coord],!0)?1:-1;Pe.push({isect:mt,parent:-1,winding:pi})}Pe.sort(function(Ru,Vd){return y[Ru.isect].coord>y[Vd.isect].coord?-1:1});for(var zi=[];Pe.length>0;){var Sa=Pe.pop(),fa=Sa.isect,La=Sa.parent,Ra=Sa.winding,ma=zi.length,yt=[y[fa].coord],nt=fa;if(y[fa].ringAndEdge1Walkable)var _i=y[fa].ringAndEdge1,ba=y[fa].nxtIsectAlongRingAndEdge1;else var _i=y[fa].ringAndEdge2,ba=y[fa].nxtIsectAlongRingAndEdge2;for(;!equalArrays$1(y[fa].coord,y[ba].coord);){yt.push(y[ba].coord);for(var Sc=void 0,se=0;se<Pe.length;se++)if(Pe[se].isect==ba){Sc=se;break}if(Sc!=null&&Pe.splice(Sc,1),equalArrays$1(_i,y[ba].ringAndEdge1)){if(_i=y[ba].ringAndEdge2,y[ba].ringAndEdge2Walkable=!1,y[ba].ringAndEdge1Walkable){var ms={isect:ba};isConvex([y[nt].coord,y[ba].coord,y[y[ba].nxtIsectAlongRingAndEdge2].coord],Ra==1)?(ms.parent=La,ms.winding=-Ra):(ms.parent=ma,ms.winding=Ra),Pe.push(ms)}nt=ba,ba=y[ba].nxtIsectAlongRingAndEdge2}else{if(_i=y[ba].ringAndEdge1,y[ba].ringAndEdge1Walkable=!1,y[ba].ringAndEdge2Walkable){var ms={isect:ba};isConvex([y[nt].coord,y[ba].coord,y[y[ba].nxtIsectAlongRingAndEdge1].coord],Ra==1)?(ms.parent=La,ms.winding=-Ra):(ms.parent=ma,ms.winding=Ra),Pe.push(ms)}nt=ba,ba=y[ba].nxtIsectAlongRingAndEdge1}}yt.push(y[ba].coord),zi.push(polygon([yt],{index:ma,parent:La,winding:Ra,netWinding:void 0}))}var Xs=featureCollection$2(zi);pu(),yu();function pu(){for(var Ru=[],Vd=0;Vd<Xs.features.length;Vd++)Xs.features[Vd].properties.parent==-1&&Ru.push(Vd);if(Ru.length>1)for(var Vd=0;Vd<Ru.length;Vd++){for(var Gd=-1,cf=1/0,uf=0;uf<Xs.features.length;uf++)Ru[Vd]!=uf&&booleanPointInPolygon(Xs.features[Ru[Vd]].geometry.coordinates[0][0],Xs.features[uf],{ignoreBoundary:!0})&&area(Xs.features[uf])<cf&&(Gd=uf);Xs.features[Ru[Vd]].properties.parent=Gd}}function yu(){for(var Ru=0;Ru<Xs.features.length;Ru++)if(Xs.features[Ru].properties.parent==-1){var Vd=Xs.features[Ru].properties.winding;Xs.features[Ru].properties.netWinding=Vd,Nl(Ru,Vd)}}function Nl(Ru,Vd){for(var Gd=0;Gd<Xs.features.length;Gd++)if(Xs.features[Gd].properties.parent==Ru){var cf=Vd+Xs.features[Gd].properties.winding;Xs.features[Gd].properties.netWinding=cf,Nl(Gd,cf)}}return Xs}var PseudoVtx=function(t,n,o,s,c){this.coord=t,this.param=n,this.ringAndEdgeIn=o,this.ringAndEdgeOut=s,this.nxtIsectAlongEdgeIn=c},Isect=function(t,n,o,s,c,d,h){this.coord=t,this.ringAndEdge1=n,this.ringAndEdge2=o,this.nxtIsectAlongRingAndEdge1=s,this.nxtIsectAlongRingAndEdge2=c,this.ringAndEdge1Walkable=d,this.ringAndEdge2Walkable=h};function isConvex(t,n){if(typeof n>"u"&&(n=!0),t.length!=3)throw new Error("This function requires an array of three points [x,y]");var o=(t[1][0]-t[0][0])*(t[2][1]-t[0][1])-(t[1][1]-t[0][1])*(t[2][0]-t[0][0]);return o>=0==n}function windingOfRing(t){for(var n=0,o=0;o<t.length-1;o++)t[o][0]<t[n][0]&&(n=o);if(isConvex([t[modulo(n-1,t.length-1)],t[n],t[modulo(n+1,t.length-1)]],!0))var s=1;else var s=-1;return s}function equalArrays$1(t,n){if(!t||!n||t.length!=n.length)return!1;for(var o=0,s=t.length;o<s;o++)if(t[o]instanceof Array&&n[o]instanceof Array){if(!equalArrays$1(t[o],n[o]))return!1}else if(t[o]!=n[o])return!1;return!0}function modulo(t,n){return(t%n+n)%n}function isUnique(t){for(var n={},o=1,s=0,c=t.length;s<c;++s){if(Object.prototype.hasOwnProperty.call(n,t[s])){o=0;break}n[t[s]]=1}return o}function unkinkPolygon(t){var n=[];return flattenEach(t,function(o){o.geometry.type==="Polygon"&&featureEach(simplepolygon(o),function(s){n.push(polygon(s.geometry.coordinates,o.properties))})}),featureCollection$2(n)}function isNotNullish(t){return t!=null}function coordinatesToPositionsArray(t){return t.map(n=>n.map(([o,s])=>Cartesian3.fromDegrees(o,s,0)))}function convertGeometryToPositionsArray(t){return(t.type==="LineString"?coordinatesToPositionsArray([t.coordinates]):t.type==="Polygon"?coordinatesToPositionsArray(t.coordinates):t.coordinates.flatMap(n=>coordinatesToPositionsArray(n))).filter(({length:n})=>n>0)}function coordinatesToHierarchy(t){return t.length>0?{positions:t[0].map(([n,o])=>Cartesian3.fromDegrees(n,o,0)),holes:t.slice(1).map(n=>({positions:n.map(([o,s])=>Cartesian3.fromDegrees(o,s,0)),holes:[]}))}:void 0}function convertPolygonToHierarchyArray(t){return unkinkPolygon(t).features.map(o=>coordinatesToHierarchy(o.geometry.coordinates)).filter(isNotNullish)}const fontScale=5,scaleByDistance=new NearFarScalar(0,1/fontScale,Number.POSITIVE_INFINITY,1/fontScale),defaultStyle={default:{fontFamily:"sans-serif",fillColor:Color$1.BLACK,outlineColor:Color$1.WHITE.withAlpha(.8),outlineWidth:5},municipalities:{fontSize:12},towns:{fontSize:8,fillColor:Color$1.BLACK.withAlpha(.6)},roads:{fontSize:8},railways:{fontSize:8},stations:{fontSize:9},landmarks:{fontSize:8},topography:{fontSize:8,fillColor:Color$1.BLACK.withAlpha(.6)}};function resolveStyle(t,n){const o=getAnnotationType(t);if(o==null)return;const s=n==null?void 0:n[o];if(s===!1)return;const c=merge({},defaultStyle.default,defaultStyle[o],n==null?void 0:n.default,s),d=Object.fromEntries(Object.entries(c).map(([h,p])=>[h,typeof p=="string"&&isColor(p)?toColor$1(p):p]));return{scaleByDistance,...omit(d,["fontSize","fontFamily"]),font:(d==null?void 0:d.fontSize)!=null&&d.fontFamily!=null?`${d.fontSize*fontScale}pt ${d.fontFamily}`:void 0}}const positionScratch$1=new Cartesian3,cartographicScratch$1=new Cartographic;function getPosition(t,n,o,s,c,d,h,p=new Cartesian3){let y=n.geom[0][0].x/c,S=n.geom[0][0].y/c;if(t.level===17&&(y=y*2-t.x%2,S=S*2-t.y%2),y<0||y>1||S<0||S>1)return;const P=Cartographic.fromRadians(o.west+o.width*y,o.south+o.height*(1-S),d,cartographicScratch$1);if((s==null?void 0:s.some(L=>Rectangle.contains(L,P)))!==!0)return Cartographic.toCartesian(P,h,p)}const JapanGSIOptimalBVmapLabelImagery=React.memo(({imageryProvider:t,imagery:n,descendants:o,height:s=50,style:c=defaultStyle,labelCollection:d,near:h,far:p})=>{const y=$e$1(),S=suspend(async()=>await t.tileCache.get(getTileCoords(n,16)),[JapanGSIOptimalBVmapLabelImagery,n.key]),P=React.useMemo(()=>t.tilingScheme.tileXYToRectangle(n.x,n.y,n.level),[t,n]),L=React.useMemo(()=>o==null?void 0:o.map(Pe=>t.tilingScheme.tileXYToRectangle(Pe.x,Pe.y,Pe.level)),[t,o]),F=React.useMemo(()=>{const Pe=S.get("Anno");return Pe==null?[]:Pe.filter(se=>typeof se.props.vt_code=="number"&&`${se.props.vt_code}`.length===3&&typeof se.props.vt_text=="string"&&(se.props.vt_arrng==null||typeof se.props.vt_arrng=="number")&&(se.props.vt_arrngagl==null||typeof se.props.vt_arrngagl=="number")&&(n.level<16||n.level===16&&se.props.vt_flag17!==2||n.level===17&&se.props.vr_flag17!==0))},[S,n]),N=React.useRef(),z=y==null?void 0:y.scene,W=React.useCallback(()=>{const Pe=N.current;Pe!=null&&(Pe.forEach(([se,mt])=>{var mn;const kt=getPosition(n,se,P,L,t.tileCache.tileSize,s,(mn=z==null?void 0:z.globe)==null?void 0:mn.ellipsoid,positionScratch$1);kt!=null?(mt.position=kt,mt.show=!0):mt.show=!1}),z==null||z.requestRender())},[t,n,s,P,L,z]),lt=React.useRef(W);return lt.current=W,React.useEffect(()=>{if(!z||!d)return;const Pe=[],se=F.map(kt=>{const mn=resolveStyle(kt.props.vt_code,c);if(mn==null)return;const pi=kt.props.vt_text;if(Pe.includes(pi))return;Pe.push(pi);const zi={text:pi,style:LabelStyle$1.FILL_AND_OUTLINE,horizontalOrigin:HorizontalOrigin$1.CENTER,verticalOrigin:VerticalOrigin$1.BOTTOM,heightReference:HeightReference$1.CLAMP_TO_GROUND,distanceDisplayCondition:h||p?new Cesium$1.DistanceDisplayCondition(h,p):void 0,disableDepthTestDistance:1/0,...mn};return[kt,d.add(zi)]}).filter(isNotNullish);N.current=se,lt.current();const mt=()=>{d.isDestroyed()||se.forEach(([,kt])=>{d.remove(kt)}),z.isDestroyed()||z==null||z.postRender.removeEventListener(mt)};return()=>{N.current=void 0,z.isDestroyed()||z==null||z.postRender.addEventListener(mt)}},[c,F,z,d,h,p]),React.useEffect(()=>{W()},[W]),null});JapanGSIOptimalBVmapLabelImagery.displayName="JapanGSIOptimalBVmapLabelImagery";const hasMethod=t=>n=>n!=null&&typeof n=="object"&&t in n&&typeof n[t]=="function";function createDestructor(t,n){if(t.owner!=null){invariant$1(t.transferOwnership!=null);const o=t.owner,s=t.transferOwnership(n,t.owner);return()=>{(!hasMethod("isDestroyed")(o)||!o.isDestroyed())&&s()}}else{const o=t.destroy;return()=>{typeof o=="function"?o(n):o!==null&&hasMethod("destroy")(n)&&n.destroy()}}}function useInstance(t){const[n,o]=React.useState(),s=React.useRef();return s.current==null&&(s.current=t.create()),React.useEffect(()=>{s.current==null&&(s.current=t.create(),o(s.current));const c=s.current,d=createDestructor(t,c);return()=>{d(),s.current=void 0,o(void 0)}},[t.owner,...t.keys]),n??s.current}const LabelImageryLayer=React.forwardRef(function({url:n,tilingScheme:o,tileWidth:s,tileHeight:c,minimumLevel:d,maximumLevel:h,minimumDataLevel:p,maximumDataLevel:y,...S},P){const L=useInstance({keys:[n,o,s,c,p,y],create:()=>new JapanGSIOptimalBVmapLabelImageryProvider({url:n,tilingScheme:o??new Cesium$1.WebMercatorTilingScheme,tileWidth:s,tileHeight:c,minimumDataLevel:p,maximumDataLevel:y})});return Object.assign(L,{minimumLevel:d,maximumLevel:h}),jsxRuntimeExports.jsx(Ns$1,{ref:P,imageryProvider:L,...S})});function getAncestorKeys(t,n){if(t.level===n)return[];const o=2**t.level,s=t.x/o,c=t.y/o;return[...Array(t.level-n)].map((d,h)=>{const p=t.level-(h+1),y=2**p;return makeKey({x:Math.floor(s*y),y:Math.floor(c*y),level:p})})}function isEqualKeys(t,n){return n!=null&&t.length===n.length&&xorBy(t,n,"key").length===0}function getImageriesToRender(t,n){const o=t.globe;let s=1/0,c=-1/0;const d=uniqBy(o._surface._tilesToRender.flatMap(p=>{var y;return((y=p.data)==null?void 0:y.imagery.map(S=>S.readyImagery).filter(S=>(S==null?void 0:S.imageryLayer.imageryProvider)!==n?!1:(S.key=makeKey(S),S.level<s&&(s=S.level),S.level>c&&(c=S.level),!0)))??[]}),"key").sort((p,y)=>p.key.localeCompare(y.key));if(s===c||s===1/0||c===-1/0)return d;const h=fromPairs(d.map(p=>[p.key,{imagery:p,children:[],descendants:[]}]));return d.forEach(p=>{getAncestorKeys(p,s).forEach(S=>{const P=h[S];P!=null&&(P.descendants.push(p),p.level-P.imagery.level===1&&P.children.push(p))})}),Object.values(h).forEach(({imagery:p,children:y,descendants:S})=>{isEqualKeys(y,p.children)||(p.children=y),isEqualKeys(S,p.descendants)||(p.descendants=S)}),d.filter(p=>p.children!=null&&p.children.length<4)}const LabelImageryCollection=({imageryProvider:t,imageriesAtom:n,style:o,labelCollection:s,near:c,far:d})=>{const h=useAtomValue(n);return jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:h.map(p=>jsxRuntimeExports.jsx(React.Suspense,{children:jsxRuntimeExports.jsx(JapanGSIOptimalBVmapLabelImagery,{imageryProvider:t,imagery:p,descendants:p.descendants,style:o,labelCollection:s,near:c,far:d})},p.key))})},JapanGSIOptimalBVmapVectorMapLabel=({style:t,near:n,far:o})=>{const[s,c]=React.useState(),d=React.useCallback(N=>{var z;c(((z=N==null?void 0:N.cesiumElement)==null?void 0:z.imageryProvider)instanceof JapanGSIOptimalBVmapLabelImageryProvider?N.cesiumElement.imageryProvider:void 0)},[]),h=React.useMemo(()=>{const N=atom([]);return atom(z=>z(N),(z,W,lt)=>{const Pe=z(N),se=typeof lt=="function"?lt(Pe):lt;Pe.length!==se.length&&xorBy(Pe,se,"key").length>0&&W(N,se)})},[]),p=useSetAtom(h);usePreRender(N=>{if(s==null)return;const z=getImageriesToRender(N,s);p(z)});const{labelCollection:y,scene:S}=$e$1(),P=React.useRef(!1),L=React.useMemo(()=>y??(S?new Cesium$1.LabelCollection({scene:S}):void 0),[S,y]);React.useEffect(()=>{!y&&S&&!P.current&&(S.primitives.add(L),P.current=!0)},[y,L,S]);const F=React.useRef(0);return usePreRender(N=>{L&&F.current!==L._labelsToUpdate.length&&(N.requestRender(),F.current=L._labelsToUpdate.length)}),React.useEffect(()=>()=>{S!=null&&S.isDestroyed()||S==null||S.requestRender()},[S]),jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(LabelImageryLayer,{ref:d,url:"https://cyberjapandata.gsi.go.jp/xyz/optimal_bvmap-v1/{z}/{x}/{y}.pbf",tileWidth:1024,tileHeight:1024,maximumLevel:17,minimumDataLevel:4,maximumDataLevel:16}),s!=null&&jsxRuntimeExports.jsx(LabelImageryCollection,{imageryProvider:s,imageriesAtom:h,style:t,labelCollection:L,near:n,far:o})]})},LabelImageryLayers=React.memo(({tileLabels:t=[]})=>jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:t.map(n=>{if(!n)return null;switch(n.labelType){case"japan_gsi_optimal_bvmap":return jsxRuntimeExports.jsx(JapanGSIOptimalBVmapVectorMapLabel,{style:n.style,near:n.near,far:n.far},n.id);default:return null}})}),(t,n)=>isEqual(t.tileLabels,n.tileLabels));LabelImageryLayers.displayName="LabelImageryLayers";function Event({onMount:t,onUnmount:n}){return React.useEffect(()=>(t==null||t(),()=>n==null?void 0:n()),[t,n]),null}const perf=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,warned$1=new Set,emitWarning$1=(t,n,o,s)=>{typeof process=="object"&&process&&typeof process.emitWarning=="function"?process.emitWarning(t,n,o,s):console.error(`[${o}] ${n}: ${t}`)},shouldWarn=t=>!warned$1.has(t),isPosInt=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),getUintArray=t=>isPosInt(t)?t<=Math.pow(2,8)?Uint8Array:t<=Math.pow(2,16)?Uint16Array:t<=Math.pow(2,32)?Uint32Array:t<=Number.MAX_SAFE_INTEGER?ZeroArray:null:null;class ZeroArray extends Array{constructor(n){super(n),this.fill(0)}}const Om=class Om{constructor(n,o){Ef(this,"heap");Ef(this,"length");if(!ef(Om,_m))throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new o(n),this.length=0}static create(n){const o=getUintArray(n);if(!o)return[];zf(Om,_m,!0);const s=new Om(n,o);return zf(Om,_m,!1),s}push(n){this.heap[this.length++]=n}pop(){return this.heap[--this.length]}};_m=new WeakMap,Kf(Om,_m,!1);let Stack=Om;const tg=class tg{constructor(n){Kf(this,Bp);Kf(this,Jp);Kf(this,Pp);Kf(this,Ip);Kf(this,Yp);Kf(this,Xp);Kf(this,Wp);Kf(this,ip);Kf(this,jp);Kf(this,kp);Kf(this,$m,void 0);Kf(this,up,void 0);Kf(this,Sp,void 0);Kf(this,Ep,void 0);Kf(this,zp,void 0);Ef(this,"ttl");Ef(this,"ttlResolution");Ef(this,"ttlAutopurge");Ef(this,"updateAgeOnGet");Ef(this,"updateAgeOnHas");Ef(this,"allowStale");Ef(this,"noDisposeOnSet");Ef(this,"noUpdateTTL");Ef(this,"maxEntrySize");Ef(this,"sizeCalculation");Ef(this,"noDeleteOnFetchRejection");Ef(this,"noDeleteOnStaleGet");Ef(this,"allowStaleOnFetchAbort");Ef(this,"allowStaleOnFetchRejection");Ef(this,"ignoreFetchAbort");Kf(this,cp,void 0);Kf(this,Tp,void 0);Kf(this,lp,void 0);Kf(this,rp,void 0);Kf(this,$f,void 0);Kf(this,bp,void 0);Kf(this,_p,void 0);Kf(this,gp,void 0);Kf(this,dp,void 0);Kf(this,wp,void 0);Kf(this,mp,void 0);Kf(this,Vp,void 0);Kf(this,Lp,void 0);Kf(this,Rp,void 0);Kf(this,Mp,void 0);Kf(this,Fp,void 0);Kf(this,vp,void 0);Kf(this,Dp,()=>{});Kf(this,Op,()=>{});Kf(this,$p,()=>{});Kf(this,xp,()=>!1);Kf(this,Np,n=>{});Kf(this,Up,(n,o,s)=>{});Kf(this,Hp,(n,o,s,c)=>{if(s||c)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0});const{max:o=0,ttl:s,ttlResolution:c=1,ttlAutopurge:d,updateAgeOnGet:h,updateAgeOnHas:p,allowStale:y,dispose:S,disposeAfter:P,noDisposeOnSet:L,noUpdateTTL:F,maxSize:N=0,maxEntrySize:z=0,sizeCalculation:W,fetchMethod:lt,noDeleteOnFetchRejection:Pe,noDeleteOnStaleGet:se,allowStaleOnFetchRejection:mt,allowStaleOnFetchAbort:kt,ignoreFetchAbort:mn}=n;if(o!==0&&!isPosInt(o))throw new TypeError("max option must be a nonnegative integer");const pi=o?getUintArray(o):Array;if(!pi)throw new Error("invalid max value: "+o);if(zf(this,$m,o),zf(this,up,N),this.maxEntrySize=z||ef(this,up),this.sizeCalculation=W,this.sizeCalculation){if(!ef(this,up)&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(lt!==void 0&&typeof lt!="function")throw new TypeError("fetchMethod must be a function if specified");if(zf(this,zp,lt),zf(this,Fp,!!lt),zf(this,lp,new Map),zf(this,rp,new Array(o).fill(void 0)),zf(this,$f,new Array(o).fill(void 0)),zf(this,bp,new pi(o)),zf(this,_p,new pi(o)),zf(this,gp,0),zf(this,dp,0),zf(this,wp,Stack.create(o)),zf(this,cp,0),zf(this,Tp,0),typeof S=="function"&&zf(this,Sp,S),typeof P=="function"?(zf(this,Ep,P),zf(this,mp,[])):(zf(this,Ep,void 0),zf(this,mp,void 0)),zf(this,Mp,!!ef(this,Sp)),zf(this,vp,!!ef(this,Ep)),this.noDisposeOnSet=!!L,this.noUpdateTTL=!!F,this.noDeleteOnFetchRejection=!!Pe,this.allowStaleOnFetchRejection=!!mt,this.allowStaleOnFetchAbort=!!kt,this.ignoreFetchAbort=!!mn,this.maxEntrySize!==0){if(ef(this,up)!==0&&!isPosInt(ef(this,up)))throw new TypeError("maxSize must be a positive integer if specified");if(!isPosInt(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");Nf(this,Jp,cg).call(this)}if(this.allowStale=!!y,this.noDeleteOnStaleGet=!!se,this.updateAgeOnGet=!!h,this.updateAgeOnHas=!!p,this.ttlResolution=isPosInt(c)||c===0?c:1,this.ttlAutopurge=!!d,this.ttl=s||0,this.ttl){if(!isPosInt(this.ttl))throw new TypeError("ttl must be a positive integer if specified");Nf(this,Bp,ig).call(this)}if(ef(this,$m)===0&&this.ttl===0&&ef(this,up)===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!ef(this,$m)&&!ef(this,up)){const zi="LRU_CACHE_UNBOUNDED";shouldWarn(zi)&&(warned$1.add(zi),emitWarning$1("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",zi,tg))}}static unsafeExposeInternals(n){return{starts:ef(n,Lp),ttls:ef(n,Rp),sizes:ef(n,Vp),keyMap:ef(n,lp),keyList:ef(n,rp),valList:ef(n,$f),next:ef(n,bp),prev:ef(n,_p),get head(){return ef(n,gp)},get tail(){return ef(n,dp)},free:ef(n,wp),isBackgroundFetch:o=>{var s;return Nf(s=n,ip,ap).call(s,o)},backgroundFetch:(o,s,c,d)=>{var h;return Nf(h=n,Wp,eg).call(h,o,s,c,d)},moveToTail:o=>{var s;return Nf(s=n,kp,Kp).call(s,o)},indexes:o=>{var s;return Nf(s=n,Pp,Ap).call(s,o)},rindexes:o=>{var s;return Nf(s=n,Ip,Gp).call(s,o)},isStale:o=>{var s;return ef(s=n,xp).call(s,o)}}}get max(){return ef(this,$m)}get maxSize(){return ef(this,up)}get calculatedSize(){return ef(this,Tp)}get size(){return ef(this,cp)}get fetchMethod(){return ef(this,zp)}get dispose(){return ef(this,Sp)}get disposeAfter(){return ef(this,Ep)}getRemainingTTL(n){return ef(this,lp).has(n)?1/0:0}*entries(){for(const n of Nf(this,Pp,Ap).call(this))ef(this,$f)[n]!==void 0&&ef(this,rp)[n]!==void 0&&!Nf(this,ip,ap).call(this,ef(this,$f)[n])&&(yield[ef(this,rp)[n],ef(this,$f)[n]])}*rentries(){for(const n of Nf(this,Ip,Gp).call(this))ef(this,$f)[n]!==void 0&&ef(this,rp)[n]!==void 0&&!Nf(this,ip,ap).call(this,ef(this,$f)[n])&&(yield[ef(this,rp)[n],ef(this,$f)[n]])}*keys(){for(const n of Nf(this,Pp,Ap).call(this)){const o=ef(this,rp)[n];o!==void 0&&!Nf(this,ip,ap).call(this,ef(this,$f)[n])&&(yield o)}}*rkeys(){for(const n of Nf(this,Ip,Gp).call(this)){const o=ef(this,rp)[n];o!==void 0&&!Nf(this,ip,ap).call(this,ef(this,$f)[n])&&(yield o)}}*values(){for(const n of Nf(this,Pp,Ap).call(this))ef(this,$f)[n]!==void 0&&!Nf(this,ip,ap).call(this,ef(this,$f)[n])&&(yield ef(this,$f)[n])}*rvalues(){for(const n of Nf(this,Ip,Gp).call(this))ef(this,$f)[n]!==void 0&&!Nf(this,ip,ap).call(this,ef(this,$f)[n])&&(yield ef(this,$f)[n])}[Symbol.iterator](){return this.entries()}find(n,o={}){for(const s of Nf(this,Pp,Ap).call(this)){const c=ef(this,$f)[s],d=Nf(this,ip,ap).call(this,c)?c.__staleWhileFetching:c;if(d!==void 0&&n(d,ef(this,rp)[s],this))return this.get(ef(this,rp)[s],o)}}forEach(n,o=this){for(const s of Nf(this,Pp,Ap).call(this)){const c=ef(this,$f)[s],d=Nf(this,ip,ap).call(this,c)?c.__staleWhileFetching:c;d!==void 0&&n.call(o,d,ef(this,rp)[s],this)}}rforEach(n,o=this){for(const s of Nf(this,Ip,Gp).call(this)){const c=ef(this,$f)[s],d=Nf(this,ip,ap).call(this,c)?c.__staleWhileFetching:c;d!==void 0&&n.call(o,d,ef(this,rp)[s],this)}}purgeStale(){let n=!1;for(const o of Nf(this,Ip,Gp).call(this,{allowStale:!0}))ef(this,xp).call(this,o)&&(this.delete(ef(this,rp)[o]),n=!0);return n}dump(){const n=[];for(const o of Nf(this,Pp,Ap).call(this,{allowStale:!0})){const s=ef(this,rp)[o],c=ef(this,$f)[o],d=Nf(this,ip,ap).call(this,c)?c.__staleWhileFetching:c;if(d===void 0||s===void 0)continue;const h={value:d};if(ef(this,Rp)&&ef(this,Lp)){h.ttl=ef(this,Rp)[o];const p=perf.now()-ef(this,Lp)[o];h.start=Math.floor(Date.now()-p)}ef(this,Vp)&&(h.size=ef(this,Vp)[o]),n.unshift([s,h])}return n}load(n){this.clear();for(const[o,s]of n){if(s.start){const c=Date.now()-s.start;s.start=perf.now()-c}this.set(o,s.value,s)}}set(n,o,s={}){var F,N,z;const{ttl:c=this.ttl,start:d,noDisposeOnSet:h=this.noDisposeOnSet,sizeCalculation:p=this.sizeCalculation,status:y}=s;let{noUpdateTTL:S=this.noUpdateTTL}=s;const P=ef(this,Hp).call(this,n,o,s.size||0,p);if(this.maxEntrySize&&P>this.maxEntrySize)return y&&(y.set="miss",y.maxEntrySizeExceeded=!0),this.delete(n),this;let L=ef(this,cp)===0?void 0:ef(this,lp).get(n);if(L===void 0)L=ef(this,cp)===0?ef(this,dp):ef(this,wp).length!==0?ef(this,wp).pop():ef(this,cp)===ef(this,$m)?Nf(this,Xp,qp).call(this,!1):ef(this,cp),ef(this,rp)[L]=n,ef(this,$f)[L]=o,ef(this,lp).set(n,L),ef(this,bp)[ef(this,dp)]=L,ef(this,_p)[L]=ef(this,dp),zf(this,dp,L),Qp(this,cp)._++,ef(this,Up).call(this,L,P,y),y&&(y.set="add"),S=!1;else{Nf(this,kp,Kp).call(this,L);const W=ef(this,$f)[L];if(o!==W){if(ef(this,Fp)&&Nf(this,ip,ap).call(this,W)?W.__abortController.abort(new Error("replaced")):h||(ef(this,Mp)&&((F=ef(this,Sp))==null||F.call(this,W,n,"set")),ef(this,vp)&&((N=ef(this,mp))==null||N.push([W,n,"set"]))),ef(this,Np).call(this,L),ef(this,Up).call(this,L,P,y),ef(this,$f)[L]=o,y){y.set="replace";const lt=W&&Nf(this,ip,ap).call(this,W)?W.__staleWhileFetching:W;lt!==void 0&&(y.oldValue=lt)}}else y&&(y.set="update")}if(c!==0&&!ef(this,Rp)&&Nf(this,Bp,ig).call(this),ef(this,Rp)&&(S||ef(this,$p).call(this,L,c,d),y&&ef(this,Op).call(this,y,L)),!h&&ef(this,vp)&&ef(this,mp)){const W=ef(this,mp);let lt;for(;lt=W==null?void 0:W.shift();)(z=ef(this,Ep))==null||z.call(this,...lt)}return this}pop(){var n;try{for(;ef(this,cp);){const o=ef(this,$f)[ef(this,gp)];if(Nf(this,Xp,qp).call(this,!0),Nf(this,ip,ap).call(this,o)){if(o.__staleWhileFetching)return o.__staleWhileFetching}else if(o!==void 0)return o}}finally{if(ef(this,vp)&&ef(this,mp)){const o=ef(this,mp);let s;for(;s=o==null?void 0:o.shift();)(n=ef(this,Ep))==null||n.call(this,...s)}}}has(n,o={}){const{updateAgeOnHas:s=this.updateAgeOnHas,status:c}=o,d=ef(this,lp).get(n);if(d!==void 0){const h=ef(this,$f)[d];if(Nf(this,ip,ap).call(this,h)&&h.__staleWhileFetching===void 0)return!1;if(ef(this,xp).call(this,d))c&&(c.has="stale",ef(this,Op).call(this,c,d));else return s&&ef(this,Dp).call(this,d),c&&(c.has="hit",ef(this,Op).call(this,c,d)),!0}else c&&(c.has="miss");return!1}peek(n,o={}){const{allowStale:s=this.allowStale}=o,c=ef(this,lp).get(n);if(c!==void 0&&(s||!ef(this,xp).call(this,c))){const d=ef(this,$f)[c];return Nf(this,ip,ap).call(this,d)?d.__staleWhileFetching:d}}async fetch(n,o={}){const{allowStale:s=this.allowStale,updateAgeOnGet:c=this.updateAgeOnGet,noDeleteOnStaleGet:d=this.noDeleteOnStaleGet,ttl:h=this.ttl,noDisposeOnSet:p=this.noDisposeOnSet,size:y=0,sizeCalculation:S=this.sizeCalculation,noUpdateTTL:P=this.noUpdateTTL,noDeleteOnFetchRejection:L=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:F=this.allowStaleOnFetchRejection,ignoreFetchAbort:N=this.ignoreFetchAbort,allowStaleOnFetchAbort:z=this.allowStaleOnFetchAbort,context:W,forceRefresh:lt=!1,status:Pe,signal:se}=o;if(!ef(this,Fp))return Pe&&(Pe.fetch="get"),this.get(n,{allowStale:s,updateAgeOnGet:c,noDeleteOnStaleGet:d,status:Pe});const mt={allowStale:s,updateAgeOnGet:c,noDeleteOnStaleGet:d,ttl:h,noDisposeOnSet:p,size:y,sizeCalculation:S,noUpdateTTL:P,noDeleteOnFetchRejection:L,allowStaleOnFetchRejection:F,allowStaleOnFetchAbort:z,ignoreFetchAbort:N,status:Pe,signal:se};let kt=ef(this,lp).get(n);if(kt===void 0){Pe&&(Pe.fetch="miss");const mn=Nf(this,Wp,eg).call(this,n,kt,mt,W);return mn.__returned=mn}else{const mn=ef(this,$f)[kt];if(Nf(this,ip,ap).call(this,mn)){const La=s&&mn.__staleWhileFetching!==void 0;return Pe&&(Pe.fetch="inflight",La&&(Pe.returnedStale=!0)),La?mn.__staleWhileFetching:mn.__returned=mn}const pi=ef(this,xp).call(this,kt);if(!lt&&!pi)return Pe&&(Pe.fetch="hit"),Nf(this,kp,Kp).call(this,kt),c&&ef(this,Dp).call(this,kt),Pe&&ef(this,Op).call(this,Pe,kt),mn;const zi=Nf(this,Wp,eg).call(this,n,kt,mt,W),fa=zi.__staleWhileFetching!==void 0&&s;return Pe&&(Pe.fetch=pi?"stale":"refresh",fa&&pi&&(Pe.returnedStale=!0)),fa?zi.__staleWhileFetching:zi.__returned=zi}}get(n,o={}){const{allowStale:s=this.allowStale,updateAgeOnGet:c=this.updateAgeOnGet,noDeleteOnStaleGet:d=this.noDeleteOnStaleGet,status:h}=o,p=ef(this,lp).get(n);if(p!==void 0){const y=ef(this,$f)[p],S=Nf(this,ip,ap).call(this,y);return h&&ef(this,Op).call(this,h,p),ef(this,xp).call(this,p)?(h&&(h.get="stale"),S?(h&&s&&y.__staleWhileFetching!==void 0&&(h.returnedStale=!0),s?y.__staleWhileFetching:void 0):(d||this.delete(n),h&&s&&(h.returnedStale=!0),s?y:void 0)):(h&&(h.get="hit"),S?y.__staleWhileFetching:(Nf(this,kp,Kp).call(this,p),c&&ef(this,Dp).call(this,p),y))}else h&&(h.get="miss")}delete(n){var s,c,d,h;let o=!1;if(ef(this,cp)!==0){const p=ef(this,lp).get(n);if(p!==void 0)if(o=!0,ef(this,cp)===1)this.clear();else{ef(this,Np).call(this,p);const y=ef(this,$f)[p];Nf(this,ip,ap).call(this,y)?y.__abortController.abort(new Error("deleted")):(ef(this,Mp)||ef(this,vp))&&(ef(this,Mp)&&((s=ef(this,Sp))==null||s.call(this,y,n,"delete")),ef(this,vp)&&((c=ef(this,mp))==null||c.push([y,n,"delete"]))),ef(this,lp).delete(n),ef(this,rp)[p]=void 0,ef(this,$f)[p]=void 0,p===ef(this,dp)?zf(this,dp,ef(this,_p)[p]):p===ef(this,gp)?zf(this,gp,ef(this,bp)[p]):(ef(this,bp)[ef(this,_p)[p]]=ef(this,bp)[p],ef(this,_p)[ef(this,bp)[p]]=ef(this,_p)[p]),Qp(this,cp)._--,ef(this,wp).push(p)}}if(ef(this,vp)&&((d=ef(this,mp))!=null&&d.length)){const p=ef(this,mp);let y;for(;y=p==null?void 0:p.shift();)(h=ef(this,Ep))==null||h.call(this,...y)}return o}clear(){var n,o,s;for(const c of Nf(this,Ip,Gp).call(this,{allowStale:!0})){const d=ef(this,$f)[c];if(Nf(this,ip,ap).call(this,d))d.__abortController.abort(new Error("deleted"));else{const h=ef(this,rp)[c];ef(this,Mp)&&((n=ef(this,Sp))==null||n.call(this,d,h,"delete")),ef(this,vp)&&((o=ef(this,mp))==null||o.push([d,h,"delete"]))}}if(ef(this,lp).clear(),ef(this,$f).fill(void 0),ef(this,rp).fill(void 0),ef(this,Rp)&&ef(this,Lp)&&(ef(this,Rp).fill(0),ef(this,Lp).fill(0)),ef(this,Vp)&&ef(this,Vp).fill(0),zf(this,gp,0),zf(this,dp,0),ef(this,wp).length=0,zf(this,Tp,0),zf(this,cp,0),ef(this,vp)&&ef(this,mp)){const c=ef(this,mp);let d;for(;d=c==null?void 0:c.shift();)(s=ef(this,Ep))==null||s.call(this,...d)}}};$m=new WeakMap,up=new WeakMap,Sp=new WeakMap,Ep=new WeakMap,zp=new WeakMap,cp=new WeakMap,Tp=new WeakMap,lp=new WeakMap,rp=new WeakMap,$f=new WeakMap,bp=new WeakMap,_p=new WeakMap,gp=new WeakMap,dp=new WeakMap,wp=new WeakMap,mp=new WeakMap,Vp=new WeakMap,Lp=new WeakMap,Rp=new WeakMap,Mp=new WeakMap,Fp=new WeakMap,vp=new WeakMap,Bp=new WeakSet,ig=function(){const n=new ZeroArray(ef(this,$m)),o=new ZeroArray(ef(this,$m));zf(this,Rp,n),zf(this,Lp,o),zf(this,$p,(d,h,p=perf.now())=>{if(o[d]=h!==0?p:0,n[d]=h,h!==0&&this.ttlAutopurge){const y=setTimeout(()=>{ef(this,xp).call(this,d)&&this.delete(ef(this,rp)[d])},h+1);y.unref&&y.unref()}}),zf(this,Dp,d=>{o[d]=n[d]!==0?perf.now():0}),zf(this,Op,(d,h)=>{if(n[h]){const p=n[h],y=o[h];d.ttl=p,d.start=y,d.now=s||c(),d.remainingTTL=d.now+p-y}});let s=0;const c=()=>{const d=perf.now();if(this.ttlResolution>0){s=d;const h=setTimeout(()=>s=0,this.ttlResolution);h.unref&&h.unref()}return d};this.getRemainingTTL=d=>{const h=ef(this,lp).get(d);return h===void 0?0:n[h]===0||o[h]===0?1/0:o[h]+n[h]-(s||c())},zf(this,xp,d=>n[d]!==0&&o[d]!==0&&(s||c())-o[d]>n[d])},Dp=new WeakMap,Op=new WeakMap,$p=new WeakMap,xp=new WeakMap,Jp=new WeakSet,cg=function(){const n=new ZeroArray(ef(this,$m));zf(this,Tp,0),zf(this,Vp,n),zf(this,Np,o=>{zf(this,Tp,ef(this,Tp)-n[o]),n[o]=0}),zf(this,Hp,(o,s,c,d)=>{if(Nf(this,ip,ap).call(this,s))return 0;if(!isPosInt(c))if(d){if(typeof d!="function")throw new TypeError("sizeCalculation must be a function");if(c=d(s,o),!isPosInt(c))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return c}),zf(this,Up,(o,s,c)=>{if(n[o]=s,ef(this,up)){const d=ef(this,up)-n[o];for(;ef(this,Tp)>d;)Nf(this,Xp,qp).call(this,!0)}zf(this,Tp,ef(this,Tp)+n[o]),c&&(c.entrySize=s,c.totalCalculatedSize=ef(this,Tp))})},Np=new WeakMap,Up=new WeakMap,Hp=new WeakMap,Pp=new WeakSet,Ap=function*({allowStale:n=this.allowStale}={}){if(ef(this,cp))for(let o=ef(this,dp);!(!Nf(this,Yp,rg).call(this,o)||((n||!ef(this,xp).call(this,o))&&(yield o),o===ef(this,gp)));)o=ef(this,_p)[o]},Ip=new WeakSet,Gp=function*({allowStale:n=this.allowStale}={}){if(ef(this,cp))for(let o=ef(this,gp);!(!Nf(this,Yp,rg).call(this,o)||((n||!ef(this,xp).call(this,o))&&(yield o),o===ef(this,dp)));)o=ef(this,bp)[o]},Yp=new WeakSet,rg=function(n){return n!==void 0&&ef(this,lp).get(ef(this,rp)[n])===n},Xp=new WeakSet,qp=function(n){var d,h;const o=ef(this,gp),s=ef(this,rp)[o],c=ef(this,$f)[o];return ef(this,Fp)&&Nf(this,ip,ap).call(this,c)?c.__abortController.abort(new Error("evicted")):(ef(this,Mp)||ef(this,vp))&&(ef(this,Mp)&&((d=ef(this,Sp))==null||d.call(this,c,s,"evict")),ef(this,vp)&&((h=ef(this,mp))==null||h.push([c,s,"evict"]))),ef(this,Np).call(this,o),n&&(ef(this,rp)[o]=void 0,ef(this,$f)[o]=void 0,ef(this,wp).push(o)),ef(this,cp)===1?(zf(this,gp,zf(this,dp,0)),ef(this,wp).length=0):zf(this,gp,ef(this,bp)[o]),ef(this,lp).delete(s),Qp(this,cp)._--,o},Wp=new WeakSet,eg=function(n,o,s,c){const d=o===void 0?void 0:ef(this,$f)[o];if(Nf(this,ip,ap).call(this,d))return d;const h=new AbortController,{signal:p}=s;p==null||p.addEventListener("abort",()=>h.abort(p.reason),{signal:h.signal});const y={signal:h.signal,options:s,context:c},S=(W,lt=!1)=>{const{aborted:Pe}=h.signal,se=s.ignoreFetchAbort&&W!==void 0;if(s.status&&(Pe&&!lt?(s.status.fetchAborted=!0,s.status.fetchError=h.signal.reason,se&&(s.status.fetchAbortIgnored=!0)):s.status.fetchResolved=!0),Pe&&!se&&!lt)return L(h.signal.reason);const mt=N;return ef(this,$f)[o]===N&&(W===void 0?mt.__staleWhileFetching?ef(this,$f)[o]=mt.__staleWhileFetching:this.delete(n):(s.status&&(s.status.fetchUpdated=!0),this.set(n,W,y.options))),W},P=W=>(s.status&&(s.status.fetchRejected=!0,s.status.fetchError=W),L(W)),L=W=>{const{aborted:lt}=h.signal,Pe=lt&&s.allowStaleOnFetchAbort,se=Pe||s.allowStaleOnFetchRejection,mt=se||s.noDeleteOnFetchRejection,kt=N;if(ef(this,$f)[o]===N&&(!mt||kt.__staleWhileFetching===void 0?this.delete(n):Pe||(ef(this,$f)[o]=kt.__staleWhileFetching)),se)return s.status&&kt.__staleWhileFetching!==void 0&&(s.status.returnedStale=!0),kt.__staleWhileFetching;if(kt.__returned===kt)throw W},F=(W,lt)=>{var se;const Pe=(se=ef(this,zp))==null?void 0:se.call(this,n,d,y);Pe&&Pe instanceof Promise&&Pe.then(mt=>W(mt),lt),h.signal.addEventListener("abort",()=>{(!s.ignoreFetchAbort||s.allowStaleOnFetchAbort)&&(W(),s.allowStaleOnFetchAbort&&(W=mt=>S(mt,!0)))})};s.status&&(s.status.fetchDispatched=!0);const N=new Promise(F).then(S,P),z=Object.assign(N,{__abortController:h,__staleWhileFetching:d,__returned:void 0});return o===void 0?(this.set(n,z,{...y.options,status:void 0}),o=ef(this,lp).get(n)):ef(this,$f)[o]=z,z},ip=new WeakSet,ap=function(n){if(!ef(this,Fp))return!1;const o=n;return!!o&&o instanceof Promise&&o.hasOwnProperty("__staleWhileFetching")&&o.__abortController instanceof AbortController},jp=new WeakSet,ag=function(n,o){ef(this,_p)[o]=n,ef(this,bp)[n]=o},kp=new WeakSet,Kp=function(n){n!==ef(this,dp)&&(n===ef(this,gp)?zf(this,gp,ef(this,bp)[n]):Nf(this,jp,ag).call(this,ef(this,_p)[n],ef(this,bp)[n]),Nf(this,jp,ag).call(this,ef(this,dp),n),zf(this,dp,n))};let LRUCache=tg;const SIDE_PLANES=[new Cesium$1.Plane(new Cesium$1.Cartesian3(0,0,1),.5),new Cesium$1.Plane(new Cesium$1.Cartesian3(0,0,-1),.5),new Cesium$1.Plane(new Cesium$1.Cartesian3(0,1,0),.5),new Cesium$1.Plane(new Cesium$1.Cartesian3(0,-1,0),.5),new Cesium$1.Plane(new Cesium$1.Cartesian3(1,0,0),.5),new Cesium$1.Plane(new Cesium$1.Cartesian3(-1,0,0),.5)],CORNER_POINT_VECTORS=[new Cesium$1.Cartesian3(.5,.5,.5),new Cesium$1.Cartesian3(.5,-.5,.5),new Cesium$1.Cartesian3(-.5,-.5,.5),new Cesium$1.Cartesian3(-.5,.5,.5)],FACE_POINT_VECTORS=[new Cesium$1.Cartesian3(.5,0,0),new Cesium$1.Cartesian3(0,.5,0),new Cesium$1.Cartesian3(0,0,.5)],SCALE_POINT_VECTORS=[...CORNER_POINT_VECTORS,...FACE_POINT_VECTORS],SCALE_POINTS=SCALE_POINT_VECTORS.map(t=>({point:t,oppositePoint:Cesium$1.Cartesian3.multiplyByScalar(t,-1,new Cesium$1.Cartesian3)})),BOX_EDGES=CORNER_POINT_VECTORS.flatMap((t,n)=>{const o=t,s=Cesium$1.Cartesian3.clone(o,new Cesium$1.Cartesian3);s.z*=-1;const c=CORNER_POINT_VECTORS[(n+1)%4],d=Cesium$1.Cartesian3.clone(c,new Cesium$1.Cartesian3);return d.z*=-1,[{start:o,end:s,isDraggable:!0},{start:c,end:o},{start:d,end:s}]}),SIDE_PLANE_NAMES=["bottom","top","front","back","left","right"];var composeRefs$1={};Object.defineProperty(composeRefs$1,"__esModule",{value:!0});function composeRefs(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];if(t.length===2)return composeTwoRefs(t[0],t[1])||null;var o=t.slice(1).reduce(function(s,c){return composeTwoRefs(s,c)},t[0]);return o||null}var _default=composeRefs$1.default=composeRefs,composedRefCache=new WeakMap;function composeTwoRefs(t,n){if(t&&n){var o=composedRefCache.get(t)||new WeakMap;composedRefCache.set(t,o);var s=o.get(n)||function(c){updateRef(t,c),updateRef(n,c)};return o.set(n,s),s}return t||n}function updateRef(t,n){typeof t=="function"?t(n):t.current=n}var md5$1={exports:{}};/**
5832
+ ${t}`),t}},fragmentShaderSource:{get:function(){return this._fragmentShaderSource}},renderState:{get:function(){return this._renderState}},closed:{get:function(){return this._closed}},vertexFormat:{get:function(){return this._vertexFormat}}}),PolylineMaterialAppearance.VERTEX_FORMAT=VertexFormat.POSITION_AND_ST,PolylineMaterialAppearance.prototype.getFragmentShaderSource=Appearance.prototype.getFragmentShaderSource,PolylineMaterialAppearance.prototype.isTranslucent=Appearance.prototype.isTranslucent,PolylineMaterialAppearance.prototype.getRenderState=Appearance.prototype.getRenderState;function GroundPolylinePrimitive(t){t=defaultValue(t,defaultValue.EMPTY_OBJECT),this.geometryInstances=t.geometryInstances,this._hasPerInstanceColors=!0;let n=t.appearance;defined(n)||(n=new PolylineMaterialAppearance),this.appearance=n,this.show=defaultValue(t.show,!0),this.classificationType=defaultValue(t.classificationType,ClassificationType$1.BOTH),this.debugShowBoundingVolume=defaultValue(t.debugShowBoundingVolume,!1),this._debugShowShadowVolume=defaultValue(t.debugShowShadowVolume,!1),this._primitiveOptions={geometryInstances:void 0,appearance:void 0,vertexCacheOptimize:!1,interleave:defaultValue(t.interleave,!1),releaseGeometryInstances:defaultValue(t.releaseGeometryInstances,!0),allowPicking:defaultValue(t.allowPicking,!0),asynchronous:defaultValue(t.asynchronous,!0),compressVertices:!1,_createShaderProgramFunction:void 0,_createCommandsFunction:void 0,_updateAndQueueCommandsFunction:void 0},this._zIndex=void 0,this._ready=!1,this._primitive=void 0,this._sp=void 0,this._sp2D=void 0,this._spMorph=void 0,this._renderState=getRenderState(!1),this._renderState3DTiles=getRenderState(!0),this._renderStateMorph=RenderState.fromCache({cull:{enabled:!0,face:CullFace$1.FRONT},depthTest:{enabled:!0},blending:BlendingState$1.PRE_MULTIPLIED_ALPHA_BLEND,depthMask:!1})}Object.defineProperties(GroundPolylinePrimitive.prototype,{interleave:{get:function(){return this._primitiveOptions.interleave}},releaseGeometryInstances:{get:function(){return this._primitiveOptions.releaseGeometryInstances}},allowPicking:{get:function(){return this._primitiveOptions.allowPicking}},asynchronous:{get:function(){return this._primitiveOptions.asynchronous}},ready:{get:function(){return this._ready}},debugShowShadowVolume:{get:function(){return this._debugShowShadowVolume}}}),GroundPolylinePrimitive.initializeTerrainHeights=function(){return ApproximateTerrainHeights.initialize()};function createShaderProgram(t,n,o){const s=n.context,c=t._primitive,d=c._attributeLocations;let h=c._batchTable.getVertexShaderCallback()(PolylineShadowVolumeVS);h=Primitive._appendShowToShader(c,h),h=Primitive._appendDistanceDisplayConditionToShader(c,h),h=Primitive._modifyShaderPosition(t,h,n.scene3DOnly);let p=c._batchTable.getVertexShaderCallback()(PolylineShadowVolumeMorphVS);p=Primitive._appendShowToShader(c,p),p=Primitive._appendDistanceDisplayConditionToShader(c,p),p=Primitive._modifyShaderPosition(t,p,n.scene3DOnly);let y=c._batchTable.getVertexShaderCallback()(PolylineShadowVolumeFS);const S=[`GLOBE_MINIMUM_ALTITUDE ${n.mapProjection.ellipsoid.minimumRadius.toFixed(1)}`];let P="",L="";defined(o.material)?(L=defined(o.material)?o.material.shaderSource:"",L.search(/in\s+float\s+v_polylineAngle;/g)!==-1&&S.push("ANGLE_VARYING"),L.search(/in\s+float\s+v_width;/g)!==-1&&S.push("WIDTH_VARYING")):P="PER_INSTANCE_COLOR",S.push(P);const F=t.debugShowShadowVolume?["DEBUG_SHOW_VOLUME",P]:[P],N=new ShaderSource({defines:S,sources:[h]}),z=new ShaderSource({defines:F,sources:[L,y]});t._sp=ShaderProgram.replaceCache({context:s,shaderProgram:c._sp,vertexShaderSource:N,fragmentShaderSource:z,attributeLocations:d});let W=s.shaderCache.getDerivedShaderProgram(t._sp,"2dColor");if(!defined(W)){const Pe=new ShaderSource({defines:S.concat(["COLUMBUS_VIEW_2D"]),sources:[h]});W=s.shaderCache.createDerivedShaderProgram(t._sp,"2dColor",{context:s,shaderProgram:t._sp2D,vertexShaderSource:Pe,fragmentShaderSource:z,attributeLocations:d})}t._sp2D=W;let lt=s.shaderCache.getDerivedShaderProgram(t._sp,"MorphColor");if(!defined(lt)){const Pe=new ShaderSource({defines:S.concat([`MAX_TERRAIN_HEIGHT ${ApproximateTerrainHeights._defaultMaxTerrainHeight.toFixed(1)}`]),sources:[p]});y=c._batchTable.getVertexShaderCallback()(PolylineShadowVolumeMorphFS);const se=new ShaderSource({defines:F,sources:[L,y]});lt=s.shaderCache.createDerivedShaderProgram(t._sp,"MorphColor",{context:s,shaderProgram:t._spMorph,vertexShaderSource:Pe,fragmentShaderSource:se,attributeLocations:d})}t._spMorph=lt}function getRenderState(t){return RenderState.fromCache({cull:{enabled:!0},blending:BlendingState$1.PRE_MULTIPLIED_ALPHA_BLEND,depthMask:!1,stencilTest:{enabled:t,frontFunction:StencilFunction$1.EQUAL,frontOperation:{fail:StencilOperation$1.KEEP,zFail:StencilOperation$1.KEEP,zPass:StencilOperation$1.KEEP},backFunction:StencilFunction$1.EQUAL,backOperation:{fail:StencilOperation$1.KEEP,zFail:StencilOperation$1.KEEP,zPass:StencilOperation$1.KEEP},reference:StencilConstants$1.CESIUM_3D_TILE_MASK,mask:StencilConstants$1.CESIUM_3D_TILE_MASK}})}function createCommands(t,n,o,s,c,d){const h=t._primitive,p=h._va.length;c.length=p,d.length=p;const S=n instanceof PolylineColorAppearance?{}:o._uniforms,P=h._batchTable.getUniformMapCallback()(S);for(let L=0;L<p;L++){const F=h._va[L];let N=c[L];defined(N)||(N=c[L]=new DrawCommand({owner:t,primitiveType:h._primitiveType})),N.vertexArray=F,N.renderState=t._renderState,N.shaderProgram=t._sp,N.uniformMap=P,N.pass=Pass$1.TERRAIN_CLASSIFICATION,N.pickId="czm_batchTable_pickColor(v_endPlaneNormalEcAndBatchId.w)";const z=DrawCommand.shallowClone(N,N.derivedCommands.tileset);z.renderState=t._renderState3DTiles,z.pass=Pass$1.CESIUM_3D_TILE_CLASSIFICATION,N.derivedCommands.tileset=z;const W=DrawCommand.shallowClone(N,N.derivedCommands.color2D);W.shaderProgram=t._sp2D,N.derivedCommands.color2D=W;const lt=DrawCommand.shallowClone(z,z.derivedCommands.color2D);lt.shaderProgram=t._sp2D,z.derivedCommands.color2D=lt;const Pe=DrawCommand.shallowClone(N,N.derivedCommands.colorMorph);Pe.renderState=t._renderStateMorph,Pe.shaderProgram=t._spMorph,Pe.pickId="czm_batchTable_pickColor(v_batchId)",N.derivedCommands.colorMorph=Pe}}function updateAndQueueCommand(t,n,o,s,c,d,h){o.mode===SceneMode$1.MORPHING?n=n.derivedCommands.colorMorph:o.mode!==SceneMode$1.SCENE3D&&(n=n.derivedCommands.color2D),n.modelMatrix=s,n.boundingVolume=d,n.cull=c,n.debugShowBoundingVolume=h,o.commandList.push(n)}function updateAndQueueCommands(t,n,o,s,c,d,h){const p=t._primitive;Primitive._updateBoundingVolumes(p,n,c);let y;n.mode===SceneMode$1.SCENE3D?y=p._boundingSphereWC:n.mode===SceneMode$1.COLUMBUS_VIEW?y=p._boundingSphereCV:n.mode===SceneMode$1.SCENE2D&&defined(p._boundingSphere2D)?y=p._boundingSphere2D:defined(p._boundingSphereMorph)&&(y=p._boundingSphereMorph);const S=n.mode===SceneMode$1.MORPHING,P=t.classificationType,L=P!==ClassificationType$1.CESIUM_3D_TILE,F=P!==ClassificationType$1.TERRAIN&&!S;let N;const z=n.passes;if(z.render||z.pick&&p.allowPicking){const W=o.length;for(let lt=0;lt<W;++lt){const Pe=y[lt];L&&(N=o[lt],updateAndQueueCommand(t,N,n,c,d,Pe,h)),F&&(N=o[lt].derivedCommands.tileset,updateAndQueueCommand(t,N,n,c,d,Pe,h))}}}GroundPolylinePrimitive.prototype.update=function(t){if(!defined(this._primitive)&&!defined(this.geometryInstances))return;if(!ApproximateTerrainHeights.initialized){if(!this.asynchronous)throw new DeveloperError("For synchronous GroundPolylinePrimitives, you must call GroundPolylinePrimitives.initializeTerrainHeights() and wait for the returned promise to resolve.");GroundPolylinePrimitive.initializeTerrainHeights();return}let n;const o=this,s=this._primitiveOptions;if(!defined(this._primitive)){const c=Array.isArray(this.geometryInstances)?this.geometryInstances:[this.geometryInstances],d=c.length,h=new Array(d);let p;for(n=0;n<d;++n)if(p=c[n].attributes,!defined(p)||!defined(p.color)){this._hasPerInstanceColors=!1;break}for(n=0;n<d;++n){const y=c[n];p={};const S=y.attributes;for(const P in S)S.hasOwnProperty(P)&&(p[P]=S[P]);defined(p.width)||(p.width=new GeometryInstanceAttribute({componentDatatype:ComponentDatatype$1.UNSIGNED_BYTE,componentsPerAttribute:1,value:[y.geometry.width]})),y.geometry._scene3DOnly=t.scene3DOnly,GroundPolylineGeometry.setProjectionAndEllipsoid(y.geometry,t.mapProjection),h[n]=new GeometryInstance({geometry:y.geometry,attributes:p,id:y.id,pickPrimitive:o})}s.geometryInstances=h,s.appearance=this.appearance,s._createShaderProgramFunction=function(y,S,P){createShaderProgram(o,S,P)},s._createCommandsFunction=function(y,S,P,L,F,N,z){createCommands(o,S,P,L,N,z)},s._updateAndQueueCommandsFunction=function(y,S,P,L,F,N,z,W){updateAndQueueCommands(o,S,P,L,F,N,z)},this._primitive=new Primitive(s)}if(this.appearance instanceof PolylineColorAppearance&&!this._hasPerInstanceColors)throw new DeveloperError("All GeometryInstances must have color attributes to use PolylineColorAppearance with GroundPolylinePrimitive.");this._primitive.appearance=this.appearance,this._primitive.show=this.show,this._primitive.debugShowBoundingVolume=this.debugShowBoundingVolume,this._primitive.update(t),t.afterRender.push(()=>{!this._ready&&defined(this._primitive)&&this._primitive.ready&&(this._ready=!0,this.releaseGeometryInstances&&(this.geometryInstances=void 0))})},GroundPolylinePrimitive.prototype.getGeometryInstanceAttributes=function(t){if(!defined(this._primitive))throw new DeveloperError("must call update before calling getGeometryInstanceAttributes");return this._primitive.getGeometryInstanceAttributes(t)},GroundPolylinePrimitive.isSupported=function(t){return t.frameState.context.depthTexture},GroundPolylinePrimitive.prototype.isDestroyed=function(){return!1},GroundPolylinePrimitive.prototype.destroy=function(){return this._primitive=this._primitive&&this._primitive.destroy(),this._sp=this._sp&&this._sp.destroy(),this._sp2D=void 0,this._spMorph=void 0,destroyObject(this)};const defaultRepeat=new Cartesian2(1,1),defaultTransparent=!1,defaultColor$1=Color$1.WHITE;function ImageMaterialProperty(t){t=defaultValue(t,defaultValue.EMPTY_OBJECT),this._definitionChanged=new Event$1,this._image=void 0,this._imageSubscription=void 0,this._repeat=void 0,this._repeatSubscription=void 0,this._color=void 0,this._colorSubscription=void 0,this._transparent=void 0,this._transparentSubscription=void 0,this.image=t.image,this.repeat=t.repeat,this.color=t.color,this.transparent=t.transparent}Object.defineProperties(ImageMaterialProperty.prototype,{isConstant:{get:function(){return Property.isConstant(this._image)&&Property.isConstant(this._repeat)}},definitionChanged:{get:function(){return this._definitionChanged}},image:createPropertyDescriptor("image"),repeat:createPropertyDescriptor("repeat"),color:createPropertyDescriptor("color"),transparent:createPropertyDescriptor("transparent")}),ImageMaterialProperty.prototype.getType=function(t){return"Image"},ImageMaterialProperty.prototype.getValue=function(t,n){return defined(n)||(n={}),n.image=Property.getValueOrUndefined(this._image,t),n.repeat=Property.getValueOrClonedDefault(this._repeat,t,defaultRepeat,n.repeat),n.color=Property.getValueOrClonedDefault(this._color,t,defaultColor$1,n.color),Property.getValueOrDefault(this._transparent,t,defaultTransparent)&&(n.color.alpha=Math.min(.99,n.color.alpha)),n},ImageMaterialProperty.prototype.equals=function(t){return this===t||t instanceof ImageMaterialProperty&&Property.equals(this._image,t._image)&&Property.equals(this._repeat,t._repeat)&&Property.equals(this._color,t._color)&&Property.equals(this._transparent,t._transparent)};function createMaterialProperty(t){if(t instanceof Color$1)return new ColorMaterialProperty(t);if(typeof t=="string"||t instanceof Resource$1||t instanceof HTMLCanvasElement||t instanceof HTMLVideoElement){const n=new ImageMaterialProperty;return n.image=t,n}throw new DeveloperError(`Unable to infer material type: ${t}`)}function createMaterialPropertyDescriptor(t,n){return createPropertyDescriptor(t,n,createMaterialProperty)}function BoxGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._dimensions=void 0,this._dimensionsSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(BoxGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),dimensions:createPropertyDescriptor("dimensions"),heightReference:createPropertyDescriptor("heightReference"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),BoxGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.dimensions=this.dimensions,t.heightReference=this.heightReference,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new BoxGraphics(this)},BoxGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.dimensions=defaultValue(this.dimensions,t.dimensions),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};function PositionProperty(){DeveloperError.throwInstantiationError()}Object.defineProperties(PositionProperty.prototype,{isConstant:{get:DeveloperError.throwInstantiationError},definitionChanged:{get:DeveloperError.throwInstantiationError},referenceFrame:{get:DeveloperError.throwInstantiationError}}),PositionProperty.prototype.getValue=DeveloperError.throwInstantiationError,PositionProperty.prototype.getValueInReferenceFrame=DeveloperError.throwInstantiationError,PositionProperty.prototype.equals=DeveloperError.throwInstantiationError;const scratchMatrix3=new Matrix3;PositionProperty.convertToReferenceFrame=function(t,n,o,s,c){if(!defined(n))return n;if(defined(c)||(c=new Cartesian3),o===s)return Cartesian3.clone(n,c);let d=Transforms.computeIcrfToFixedMatrix(t,scratchMatrix3);if(defined(d)||(d=Transforms.computeTemeToPseudoFixedMatrix(t,scratchMatrix3)),o===ReferenceFrame$1.INERTIAL)return Matrix3.multiplyByVector(d,n,c);if(o===ReferenceFrame$1.FIXED)return Matrix3.multiplyByVector(Matrix3.transpose(d,scratchMatrix3),n,c)};function ConstantPositionProperty(t,n){this._definitionChanged=new Event$1,this._value=Cartesian3.clone(t),this._referenceFrame=defaultValue(n,ReferenceFrame$1.FIXED)}Object.defineProperties(ConstantPositionProperty.prototype,{isConstant:{get:function(){return!defined(this._value)||this._referenceFrame===ReferenceFrame$1.FIXED}},definitionChanged:{get:function(){return this._definitionChanged}},referenceFrame:{get:function(){return this._referenceFrame}}}),ConstantPositionProperty.prototype.getValue=function(t,n){return this.getValueInReferenceFrame(t,ReferenceFrame$1.FIXED,n)},ConstantPositionProperty.prototype.setValue=function(t,n){let o=!1;Cartesian3.equals(this._value,t)||(o=!0,this._value=Cartesian3.clone(t)),defined(n)&&this._referenceFrame!==n&&(o=!0,this._referenceFrame=n),o&&this._definitionChanged.raiseEvent(this)},ConstantPositionProperty.prototype.getValueInReferenceFrame=function(t,n,o){if(!defined(t))throw new DeveloperError("time is required.");if(!defined(n))throw new DeveloperError("referenceFrame is required.");return PositionProperty.convertToReferenceFrame(t,this._value,this._referenceFrame,n,o)},ConstantPositionProperty.prototype.equals=function(t){return this===t||t instanceof ConstantPositionProperty&&Cartesian3.equals(this._value,t._value)&&this._referenceFrame===t._referenceFrame};function CorridorGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._positions=void 0,this._positionsSubscription=void 0,this._width=void 0,this._widthSubscription=void 0,this._height=void 0,this._heightSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._extrudedHeight=void 0,this._extrudedHeightSubscription=void 0,this._extrudedHeightReference=void 0,this._extrudedHeightReferenceSubscription=void 0,this._cornerType=void 0,this._cornerTypeSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._classificationType=void 0,this._classificationTypeSubscription=void 0,this._zIndex=void 0,this._zIndexSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(CorridorGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),positions:createPropertyDescriptor("positions"),width:createPropertyDescriptor("width"),height:createPropertyDescriptor("height"),heightReference:createPropertyDescriptor("heightReference"),extrudedHeight:createPropertyDescriptor("extrudedHeight"),extrudedHeightReference:createPropertyDescriptor("extrudedHeightReference"),cornerType:createPropertyDescriptor("cornerType"),granularity:createPropertyDescriptor("granularity"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),classificationType:createPropertyDescriptor("classificationType"),zIndex:createPropertyDescriptor("zIndex")}),CorridorGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.positions=this.positions,t.width=this.width,t.height=this.height,t.heightReference=this.heightReference,t.extrudedHeight=this.extrudedHeight,t.extrudedHeightReference=this.extrudedHeightReference,t.cornerType=this.cornerType,t.granularity=this.granularity,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t.classificationType=this.classificationType,t.zIndex=this.zIndex,t):new CorridorGraphics(this)},CorridorGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.positions=defaultValue(this.positions,t.positions),this.width=defaultValue(this.width,t.width),this.height=defaultValue(this.height,t.height),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.extrudedHeight=defaultValue(this.extrudedHeight,t.extrudedHeight),this.extrudedHeightReference=defaultValue(this.extrudedHeightReference,t.extrudedHeightReference),this.cornerType=defaultValue(this.cornerType,t.cornerType),this.granularity=defaultValue(this.granularity,t.granularity),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.classificationType=defaultValue(this.classificationType,t.classificationType),this.zIndex=defaultValue(this.zIndex,t.zIndex)};function createRawProperty(t){return t}function createRawPropertyDescriptor(t,n){return createPropertyDescriptor(t,n,createRawProperty)}function CylinderGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._length=void 0,this._lengthSubscription=void 0,this._topRadius=void 0,this._topRadiusSubscription=void 0,this._bottomRadius=void 0,this._bottomRadiusSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._numberOfVerticalLines=void 0,this._numberOfVerticalLinesSubscription=void 0,this._slices=void 0,this._slicesSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(CylinderGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),length:createPropertyDescriptor("length"),topRadius:createPropertyDescriptor("topRadius"),bottomRadius:createPropertyDescriptor("bottomRadius"),heightReference:createPropertyDescriptor("heightReference"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),numberOfVerticalLines:createPropertyDescriptor("numberOfVerticalLines"),slices:createPropertyDescriptor("slices"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),CylinderGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.length=this.length,t.topRadius=this.topRadius,t.bottomRadius=this.bottomRadius,t.heightReference=this.heightReference,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.numberOfVerticalLines=this.numberOfVerticalLines,t.slices=this.slices,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new CylinderGraphics(this)},CylinderGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.length=defaultValue(this.length,t.length),this.topRadius=defaultValue(this.topRadius,t.topRadius),this.bottomRadius=defaultValue(this.bottomRadius,t.bottomRadius),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.numberOfVerticalLines=defaultValue(this.numberOfVerticalLines,t.numberOfVerticalLines),this.slices=defaultValue(this.slices,t.slices),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};function EllipseGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._semiMajorAxis=void 0,this._semiMajorAxisSubscription=void 0,this._semiMinorAxis=void 0,this._semiMinorAxisSubscription=void 0,this._height=void 0,this._heightSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._extrudedHeight=void 0,this._extrudedHeightSubscription=void 0,this._extrudedHeightReference=void 0,this._extrudedHeightReferenceSubscription=void 0,this._rotation=void 0,this._rotationSubscription=void 0,this._stRotation=void 0,this._stRotationSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._numberOfVerticalLines=void 0,this._numberOfVerticalLinesSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._classificationType=void 0,this._classificationTypeSubscription=void 0,this._zIndex=void 0,this._zIndexSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(EllipseGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),semiMajorAxis:createPropertyDescriptor("semiMajorAxis"),semiMinorAxis:createPropertyDescriptor("semiMinorAxis"),height:createPropertyDescriptor("height"),heightReference:createPropertyDescriptor("heightReference"),extrudedHeight:createPropertyDescriptor("extrudedHeight"),extrudedHeightReference:createPropertyDescriptor("extrudedHeightReference"),rotation:createPropertyDescriptor("rotation"),stRotation:createPropertyDescriptor("stRotation"),granularity:createPropertyDescriptor("granularity"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),numberOfVerticalLines:createPropertyDescriptor("numberOfVerticalLines"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),classificationType:createPropertyDescriptor("classificationType"),zIndex:createPropertyDescriptor("zIndex")}),EllipseGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.semiMajorAxis=this.semiMajorAxis,t.semiMinorAxis=this.semiMinorAxis,t.height=this.height,t.heightReference=this.heightReference,t.extrudedHeight=this.extrudedHeight,t.extrudedHeightReference=this.extrudedHeightReference,t.rotation=this.rotation,t.stRotation=this.stRotation,t.granularity=this.granularity,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.numberOfVerticalLines=this.numberOfVerticalLines,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t.classificationType=this.classificationType,t.zIndex=this.zIndex,t):new EllipseGraphics(this)},EllipseGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.semiMajorAxis=defaultValue(this.semiMajorAxis,t.semiMajorAxis),this.semiMinorAxis=defaultValue(this.semiMinorAxis,t.semiMinorAxis),this.height=defaultValue(this.height,t.height),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.extrudedHeight=defaultValue(this.extrudedHeight,t.extrudedHeight),this.extrudedHeightReference=defaultValue(this.extrudedHeightReference,t.extrudedHeightReference),this.rotation=defaultValue(this.rotation,t.rotation),this.stRotation=defaultValue(this.stRotation,t.stRotation),this.granularity=defaultValue(this.granularity,t.granularity),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.numberOfVerticalLines=defaultValue(this.numberOfVerticalLines,t.numberOfVerticalLines),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.classificationType=defaultValue(this.classificationType,t.classificationType),this.zIndex=defaultValue(this.zIndex,t.zIndex)};function EllipsoidGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._radii=void 0,this._radiiSubscription=void 0,this._innerRadii=void 0,this._innerRadiiSubscription=void 0,this._minimumClock=void 0,this._minimumClockSubscription=void 0,this._maximumClock=void 0,this._maximumClockSubscription=void 0,this._minimumCone=void 0,this._minimumConeSubscription=void 0,this._maximumCone=void 0,this._maximumConeSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._stackPartitions=void 0,this._stackPartitionsSubscription=void 0,this._slicePartitions=void 0,this._slicePartitionsSubscription=void 0,this._subdivisions=void 0,this._subdivisionsSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(EllipsoidGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),radii:createPropertyDescriptor("radii"),innerRadii:createPropertyDescriptor("innerRadii"),minimumClock:createPropertyDescriptor("minimumClock"),maximumClock:createPropertyDescriptor("maximumClock"),minimumCone:createPropertyDescriptor("minimumCone"),maximumCone:createPropertyDescriptor("maximumCone"),heightReference:createPropertyDescriptor("heightReference"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),stackPartitions:createPropertyDescriptor("stackPartitions"),slicePartitions:createPropertyDescriptor("slicePartitions"),subdivisions:createPropertyDescriptor("subdivisions"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),EllipsoidGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.radii=this.radii,t.innerRadii=this.innerRadii,t.minimumClock=this.minimumClock,t.maximumClock=this.maximumClock,t.minimumCone=this.minimumCone,t.maximumCone=this.maximumCone,t.heightReference=this.heightReference,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.stackPartitions=this.stackPartitions,t.slicePartitions=this.slicePartitions,t.subdivisions=this.subdivisions,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new EllipsoidGraphics(this)},EllipsoidGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.radii=defaultValue(this.radii,t.radii),this.innerRadii=defaultValue(this.innerRadii,t.innerRadii),this.minimumClock=defaultValue(this.minimumClock,t.minimumClock),this.maximumClock=defaultValue(this.maximumClock,t.maximumClock),this.minimumCone=defaultValue(this.minimumCone,t.minimumCone),this.maximumCone=defaultValue(this.maximumCone,t.maximumCone),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.stackPartitions=defaultValue(this.stackPartitions,t.stackPartitions),this.slicePartitions=defaultValue(this.slicePartitions,t.slicePartitions),this.subdivisions=defaultValue(this.subdivisions,t.subdivisions),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};function LabelGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._text=void 0,this._textSubscription=void 0,this._font=void 0,this._fontSubscription=void 0,this._style=void 0,this._styleSubscription=void 0,this._scale=void 0,this._scaleSubscription=void 0,this._showBackground=void 0,this._showBackgroundSubscription=void 0,this._backgroundColor=void 0,this._backgroundColorSubscription=void 0,this._backgroundPadding=void 0,this._backgroundPaddingSubscription=void 0,this._pixelOffset=void 0,this._pixelOffsetSubscription=void 0,this._eyeOffset=void 0,this._eyeOffsetSubscription=void 0,this._horizontalOrigin=void 0,this._horizontalOriginSubscription=void 0,this._verticalOrigin=void 0,this._verticalOriginSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._fillColor=void 0,this._fillColorSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._translucencyByDistance=void 0,this._translucencyByDistanceSubscription=void 0,this._pixelOffsetScaleByDistance=void 0,this._pixelOffsetScaleByDistanceSubscription=void 0,this._scaleByDistance=void 0,this._scaleByDistanceSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._disableDepthTestDistance=void 0,this._disableDepthTestDistanceSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(LabelGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),text:createPropertyDescriptor("text"),font:createPropertyDescriptor("font"),style:createPropertyDescriptor("style"),scale:createPropertyDescriptor("scale"),showBackground:createPropertyDescriptor("showBackground"),backgroundColor:createPropertyDescriptor("backgroundColor"),backgroundPadding:createPropertyDescriptor("backgroundPadding"),pixelOffset:createPropertyDescriptor("pixelOffset"),eyeOffset:createPropertyDescriptor("eyeOffset"),horizontalOrigin:createPropertyDescriptor("horizontalOrigin"),verticalOrigin:createPropertyDescriptor("verticalOrigin"),heightReference:createPropertyDescriptor("heightReference"),fillColor:createPropertyDescriptor("fillColor"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),translucencyByDistance:createPropertyDescriptor("translucencyByDistance"),pixelOffsetScaleByDistance:createPropertyDescriptor("pixelOffsetScaleByDistance"),scaleByDistance:createPropertyDescriptor("scaleByDistance"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),disableDepthTestDistance:createPropertyDescriptor("disableDepthTestDistance")}),LabelGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.text=this.text,t.font=this.font,t.style=this.style,t.scale=this.scale,t.showBackground=this.showBackground,t.backgroundColor=this.backgroundColor,t.backgroundPadding=this.backgroundPadding,t.pixelOffset=this.pixelOffset,t.eyeOffset=this.eyeOffset,t.horizontalOrigin=this.horizontalOrigin,t.verticalOrigin=this.verticalOrigin,t.heightReference=this.heightReference,t.fillColor=this.fillColor,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.translucencyByDistance=this.translucencyByDistance,t.pixelOffsetScaleByDistance=this.pixelOffsetScaleByDistance,t.scaleByDistance=this.scaleByDistance,t.distanceDisplayCondition=this.distanceDisplayCondition,t.disableDepthTestDistance=this.disableDepthTestDistance,t):new LabelGraphics(this)},LabelGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.text=defaultValue(this.text,t.text),this.font=defaultValue(this.font,t.font),this.style=defaultValue(this.style,t.style),this.scale=defaultValue(this.scale,t.scale),this.showBackground=defaultValue(this.showBackground,t.showBackground),this.backgroundColor=defaultValue(this.backgroundColor,t.backgroundColor),this.backgroundPadding=defaultValue(this.backgroundPadding,t.backgroundPadding),this.pixelOffset=defaultValue(this.pixelOffset,t.pixelOffset),this.eyeOffset=defaultValue(this.eyeOffset,t.eyeOffset),this.horizontalOrigin=defaultValue(this.horizontalOrigin,t.horizontalOrigin),this.verticalOrigin=defaultValue(this.verticalOrigin,t.verticalOrigin),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.fillColor=defaultValue(this.fillColor,t.fillColor),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.translucencyByDistance=defaultValue(this.translucencyByDistance,t.translucencyByDistance),this.pixelOffsetScaleByDistance=defaultValue(this.pixelOffsetScaleByDistance,t.pixelOffsetScaleByDistance),this.scaleByDistance=defaultValue(this.scaleByDistance,t.scaleByDistance),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.disableDepthTestDistance=defaultValue(this.disableDepthTestDistance,t.disableDepthTestDistance)};const defaultNodeTransformation=new TranslationRotationScale;function NodeTransformationProperty(t){t=defaultValue(t,defaultValue.EMPTY_OBJECT),this._definitionChanged=new Event$1,this._translation=void 0,this._translationSubscription=void 0,this._rotation=void 0,this._rotationSubscription=void 0,this._scale=void 0,this._scaleSubscription=void 0,this.translation=t.translation,this.rotation=t.rotation,this.scale=t.scale}Object.defineProperties(NodeTransformationProperty.prototype,{isConstant:{get:function(){return Property.isConstant(this._translation)&&Property.isConstant(this._rotation)&&Property.isConstant(this._scale)}},definitionChanged:{get:function(){return this._definitionChanged}},translation:createPropertyDescriptor("translation"),rotation:createPropertyDescriptor("rotation"),scale:createPropertyDescriptor("scale")}),NodeTransformationProperty.prototype.getValue=function(t,n){return defined(n)||(n=new TranslationRotationScale),n.translation=Property.getValueOrClonedDefault(this._translation,t,defaultNodeTransformation.translation,n.translation),n.rotation=Property.getValueOrClonedDefault(this._rotation,t,defaultNodeTransformation.rotation,n.rotation),n.scale=Property.getValueOrClonedDefault(this._scale,t,defaultNodeTransformation.scale,n.scale),n},NodeTransformationProperty.prototype.equals=function(t){return this===t||t instanceof NodeTransformationProperty&&Property.equals(this._translation,t._translation)&&Property.equals(this._rotation,t._rotation)&&Property.equals(this._scale,t._scale)};function PropertyBag(t,n){this._propertyNames=[],this._definitionChanged=new Event$1,defined(t)&&this.merge(t,n)}Object.defineProperties(PropertyBag.prototype,{propertyNames:{get:function(){return this._propertyNames}},isConstant:{get:function(){const t=this._propertyNames;for(let n=0,o=t.length;n<o;n++)if(!Property.isConstant(this[t[n]]))return!1;return!0}},definitionChanged:{get:function(){return this._definitionChanged}}}),PropertyBag.prototype.hasProperty=function(t){return this._propertyNames.indexOf(t)!==-1};function createConstantProperty(t){return new ConstantProperty(t)}PropertyBag.prototype.addProperty=function(t,n,o){const s=this._propertyNames;if(!defined(t))throw new DeveloperError("propertyName is required.");if(s.indexOf(t)!==-1)throw new DeveloperError(`${t} is already a registered property.`);s.push(t),Object.defineProperty(this,t,createPropertyDescriptor(t,!0,defaultValue(o,createConstantProperty))),defined(n)&&(this[t]=n),this._definitionChanged.raiseEvent(this)},PropertyBag.prototype.removeProperty=function(t){const o=this._propertyNames.indexOf(t);if(!defined(t))throw new DeveloperError("propertyName is required.");if(o===-1)throw new DeveloperError(`${t} is not a registered property.`);this._propertyNames.splice(o,1),delete this[t],this._definitionChanged.raiseEvent(this)},PropertyBag.prototype.getValue=function(t,n){if(!defined(t))throw new DeveloperError("time is required.");defined(n)||(n={});const o=this._propertyNames;for(let s=0,c=o.length;s<c;s++){const d=o[s];n[d]=Property.getValueOrUndefined(this[d],t,n[d])}return n},PropertyBag.prototype.merge=function(t,n){if(!defined(t))throw new DeveloperError("source is required.");const o=this._propertyNames,s=defined(t._propertyNames)?t._propertyNames:Object.keys(t);for(let c=0,d=s.length;c<d;c++){const h=s[c],p=this[h],y=t[h];p===void 0&&o.indexOf(h)===-1&&this.addProperty(h,void 0,n),y!==void 0&&(p!==void 0?defined(p)&&defined(p.merge)&&p.merge(y):defined(y)&&defined(y.merge)&&defined(y.clone)?this[h]=y.clone():this[h]=y)}};function propertiesEqual(t,n){const o=t._propertyNames,s=n._propertyNames,c=o.length;if(c!==s.length)return!1;for(let d=0;d<c;++d){const h=o[d];if(s.indexOf(h)===-1||!Property.equals(t[h],n[h]))return!1}return!0}PropertyBag.prototype.equals=function(t){return this===t||t instanceof PropertyBag&&propertiesEqual(this,t)};function createNodeTransformationProperty(t){return new NodeTransformationProperty(t)}function createNodeTransformationPropertyBag(t){return new PropertyBag(t,createNodeTransformationProperty)}function createArticulationStagePropertyBag(t){return new PropertyBag(t)}function ModelGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._uri=void 0,this._uriSubscription=void 0,this._scale=void 0,this._scaleSubscription=void 0,this._minimumPixelSize=void 0,this._minimumPixelSizeSubscription=void 0,this._maximumScale=void 0,this._maximumScaleSubscription=void 0,this._incrementallyLoadTextures=void 0,this._incrementallyLoadTexturesSubscription=void 0,this._runAnimations=void 0,this._runAnimationsSubscription=void 0,this._clampAnimations=void 0,this._clampAnimationsSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._silhouetteColor=void 0,this._silhouetteColorSubscription=void 0,this._silhouetteSize=void 0,this._silhouetteSizeSubscription=void 0,this._color=void 0,this._colorSubscription=void 0,this._colorBlendMode=void 0,this._colorBlendModeSubscription=void 0,this._colorBlendAmount=void 0,this._colorBlendAmountSubscription=void 0,this._imageBasedLightingFactor=void 0,this._imageBasedLightingFactorSubscription=void 0,this._lightColor=void 0,this._lightColorSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._nodeTransformations=void 0,this._nodeTransformationsSubscription=void 0,this._articulations=void 0,this._articulationsSubscription=void 0,this._clippingPlanes=void 0,this._clippingPlanesSubscription=void 0,this._customShader=void 0,this._customShaderSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(ModelGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),uri:createPropertyDescriptor("uri"),scale:createPropertyDescriptor("scale"),minimumPixelSize:createPropertyDescriptor("minimumPixelSize"),maximumScale:createPropertyDescriptor("maximumScale"),incrementallyLoadTextures:createPropertyDescriptor("incrementallyLoadTextures"),runAnimations:createPropertyDescriptor("runAnimations"),clampAnimations:createPropertyDescriptor("clampAnimations"),shadows:createPropertyDescriptor("shadows"),heightReference:createPropertyDescriptor("heightReference"),silhouetteColor:createPropertyDescriptor("silhouetteColor"),silhouetteSize:createPropertyDescriptor("silhouetteSize"),color:createPropertyDescriptor("color"),colorBlendMode:createPropertyDescriptor("colorBlendMode"),colorBlendAmount:createPropertyDescriptor("colorBlendAmount"),imageBasedLightingFactor:createPropertyDescriptor("imageBasedLightingFactor"),lightColor:createPropertyDescriptor("lightColor"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),nodeTransformations:createPropertyDescriptor("nodeTransformations",void 0,createNodeTransformationPropertyBag),articulations:createPropertyDescriptor("articulations",void 0,createArticulationStagePropertyBag),clippingPlanes:createPropertyDescriptor("clippingPlanes"),customShader:createPropertyDescriptor("customShader")}),ModelGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.uri=this.uri,t.scale=this.scale,t.minimumPixelSize=this.minimumPixelSize,t.maximumScale=this.maximumScale,t.incrementallyLoadTextures=this.incrementallyLoadTextures,t.runAnimations=this.runAnimations,t.clampAnimations=this.clampAnimations,t.heightReference=this._heightReference,t.silhouetteColor=this.silhouetteColor,t.silhouetteSize=this.silhouetteSize,t.color=this.color,t.colorBlendMode=this.colorBlendMode,t.colorBlendAmount=this.colorBlendAmount,t.imageBasedLightingFactor=this.imageBasedLightingFactor,t.lightColor=this.lightColor,t.distanceDisplayCondition=this.distanceDisplayCondition,t.nodeTransformations=this.nodeTransformations,t.articulations=this.articulations,t.clippingPlanes=this.clippingPlanes,t.customShader=this.customShader,t):new ModelGraphics(this)},ModelGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.uri=defaultValue(this.uri,t.uri),this.scale=defaultValue(this.scale,t.scale),this.minimumPixelSize=defaultValue(this.minimumPixelSize,t.minimumPixelSize),this.maximumScale=defaultValue(this.maximumScale,t.maximumScale),this.incrementallyLoadTextures=defaultValue(this.incrementallyLoadTextures,t.incrementallyLoadTextures),this.runAnimations=defaultValue(this.runAnimations,t.runAnimations),this.clampAnimations=defaultValue(this.clampAnimations,t.clampAnimations),this.shadows=defaultValue(this.shadows,t.shadows),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.silhouetteColor=defaultValue(this.silhouetteColor,t.silhouetteColor),this.silhouetteSize=defaultValue(this.silhouetteSize,t.silhouetteSize),this.color=defaultValue(this.color,t.color),this.colorBlendMode=defaultValue(this.colorBlendMode,t.colorBlendMode),this.colorBlendAmount=defaultValue(this.colorBlendAmount,t.colorBlendAmount),this.imageBasedLightingFactor=defaultValue(this.imageBasedLightingFactor,t.imageBasedLightingFactor),this.lightColor=defaultValue(this.lightColor,t.lightColor),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.clippingPlanes=defaultValue(this.clippingPlanes,t.clippingPlanes),this.customShader=defaultValue(this.customShader,t.customShader);const n=t.nodeTransformations;if(defined(n)){const s=this.nodeTransformations;defined(s)?s.merge(n):this.nodeTransformations=new PropertyBag(n,createNodeTransformationProperty)}const o=t.articulations;if(defined(o)){const s=this.articulations;defined(s)?s.merge(o):this.articulations=new PropertyBag(o)}};function Cesium3DTilesetGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._uri=void 0,this._uriSubscription=void 0,this._maximumScreenSpaceError=void 0,this._maximumScreenSpaceErrorSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(Cesium3DTilesetGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),uri:createPropertyDescriptor("uri"),maximumScreenSpaceError:createPropertyDescriptor("maximumScreenSpaceError")}),Cesium3DTilesetGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.uri=this.uri,t.maximumScreenSpaceError=this.maximumScreenSpaceError,t):new Cesium3DTilesetGraphics(this)},Cesium3DTilesetGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.uri=defaultValue(this.uri,t.uri),this.maximumScreenSpaceError=defaultValue(this.maximumScreenSpaceError,t.maximumScreenSpaceError)};function PathGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._leadTime=void 0,this._leadTimeSubscription=void 0,this._trailTime=void 0,this._trailTimeSubscription=void 0,this._width=void 0,this._widthSubscription=void 0,this._resolution=void 0,this._resolutionSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(PathGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),leadTime:createPropertyDescriptor("leadTime"),trailTime:createPropertyDescriptor("trailTime"),width:createPropertyDescriptor("width"),resolution:createPropertyDescriptor("resolution"),material:createMaterialPropertyDescriptor("material"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),PathGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.leadTime=this.leadTime,t.trailTime=this.trailTime,t.width=this.width,t.resolution=this.resolution,t.material=this.material,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new PathGraphics(this)},PathGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.leadTime=defaultValue(this.leadTime,t.leadTime),this.trailTime=defaultValue(this.trailTime,t.trailTime),this.width=defaultValue(this.width,t.width),this.resolution=defaultValue(this.resolution,t.resolution),this.material=defaultValue(this.material,t.material),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};function PlaneGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._plane=void 0,this._planeSubscription=void 0,this._dimensions=void 0,this._dimensionsSubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(PlaneGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),plane:createPropertyDescriptor("plane"),dimensions:createPropertyDescriptor("dimensions"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),PlaneGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.plane=this.plane,t.dimensions=this.dimensions,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new PlaneGraphics(this)},PlaneGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.plane=defaultValue(this.plane,t.plane),this.dimensions=defaultValue(this.dimensions,t.dimensions),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};function PointGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._pixelSize=void 0,this._pixelSizeSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._color=void 0,this._colorSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._scaleByDistance=void 0,this._scaleByDistanceSubscription=void 0,this._translucencyByDistance=void 0,this._translucencyByDistanceSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._disableDepthTestDistance=void 0,this._disableDepthTestDistanceSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(PointGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),pixelSize:createPropertyDescriptor("pixelSize"),heightReference:createPropertyDescriptor("heightReference"),color:createPropertyDescriptor("color"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),scaleByDistance:createPropertyDescriptor("scaleByDistance"),translucencyByDistance:createPropertyDescriptor("translucencyByDistance"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),disableDepthTestDistance:createPropertyDescriptor("disableDepthTestDistance")}),PointGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.pixelSize=this.pixelSize,t.heightReference=this.heightReference,t.color=this.color,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.scaleByDistance=this.scaleByDistance,t.translucencyByDistance=this._translucencyByDistance,t.distanceDisplayCondition=this.distanceDisplayCondition,t.disableDepthTestDistance=this.disableDepthTestDistance,t):new PointGraphics(this)},PointGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.pixelSize=defaultValue(this.pixelSize,t.pixelSize),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.color=defaultValue(this.color,t.color),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.scaleByDistance=defaultValue(this.scaleByDistance,t.scaleByDistance),this.translucencyByDistance=defaultValue(this._translucencyByDistance,t.translucencyByDistance),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.disableDepthTestDistance=defaultValue(this.disableDepthTestDistance,t.disableDepthTestDistance)};function createPolygonHierarchyProperty(t){return Array.isArray(t)&&(t=new PolygonHierarchy(t)),new ConstantProperty(t)}function PolygonGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._hierarchy=void 0,this._hierarchySubscription=void 0,this._height=void 0,this._heightSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._extrudedHeight=void 0,this._extrudedHeightSubscription=void 0,this._extrudedHeightReference=void 0,this._extrudedHeightReferenceSubscription=void 0,this._stRotation=void 0,this._stRotationSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._perPositionHeight=void 0,this._perPositionHeightSubscription=void 0,this._closeTop=void 0,this._closeTopSubscription=void 0,this._closeBottom=void 0,this._closeBottomSubscription=void 0,this._arcType=void 0,this._arcTypeSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._classificationType=void 0,this._classificationTypeSubscription=void 0,this._zIndex=void 0,this._zIndexSubscription=void 0,this._textureCoordinates=void 0,this._textureCoordinatesSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(PolygonGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),hierarchy:createPropertyDescriptor("hierarchy",void 0,createPolygonHierarchyProperty),height:createPropertyDescriptor("height"),heightReference:createPropertyDescriptor("heightReference"),extrudedHeight:createPropertyDescriptor("extrudedHeight"),extrudedHeightReference:createPropertyDescriptor("extrudedHeightReference"),stRotation:createPropertyDescriptor("stRotation"),granularity:createPropertyDescriptor("granularity"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),perPositionHeight:createPropertyDescriptor("perPositionHeight"),closeTop:createPropertyDescriptor("closeTop"),closeBottom:createPropertyDescriptor("closeBottom"),arcType:createPropertyDescriptor("arcType"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),classificationType:createPropertyDescriptor("classificationType"),zIndex:createPropertyDescriptor("zIndex"),textureCoordinates:createPropertyDescriptor("textureCoordinates")}),PolygonGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.hierarchy=this.hierarchy,t.height=this.height,t.heightReference=this.heightReference,t.extrudedHeight=this.extrudedHeight,t.extrudedHeightReference=this.extrudedHeightReference,t.stRotation=this.stRotation,t.granularity=this.granularity,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.perPositionHeight=this.perPositionHeight,t.closeTop=this.closeTop,t.closeBottom=this.closeBottom,t.arcType=this.arcType,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t.classificationType=this.classificationType,t.zIndex=this.zIndex,t.textureCoordinates=this.textureCoordinates,t):new PolygonGraphics(this)},PolygonGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.hierarchy=defaultValue(this.hierarchy,t.hierarchy),this.height=defaultValue(this.height,t.height),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.extrudedHeight=defaultValue(this.extrudedHeight,t.extrudedHeight),this.extrudedHeightReference=defaultValue(this.extrudedHeightReference,t.extrudedHeightReference),this.stRotation=defaultValue(this.stRotation,t.stRotation),this.granularity=defaultValue(this.granularity,t.granularity),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.perPositionHeight=defaultValue(this.perPositionHeight,t.perPositionHeight),this.closeTop=defaultValue(this.closeTop,t.closeTop),this.closeBottom=defaultValue(this.closeBottom,t.closeBottom),this.arcType=defaultValue(this.arcType,t.arcType),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.classificationType=defaultValue(this.classificationType,t.classificationType),this.zIndex=defaultValue(this.zIndex,t.zIndex),this.textureCoordinates=defaultValue(this.textureCoordinates,t.textureCoordinates)};function PolylineGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._positions=void 0,this._positionsSubscription=void 0,this._width=void 0,this._widthSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._depthFailMaterial=void 0,this._depthFailMaterialSubscription=void 0,this._arcType=void 0,this._arcTypeSubscription=void 0,this._clampToGround=void 0,this._clampToGroundSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this._classificationType=void 0,this._classificationTypeSubscription=void 0,this._zIndex=void 0,this._zIndexSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(PolylineGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),positions:createPropertyDescriptor("positions"),width:createPropertyDescriptor("width"),granularity:createPropertyDescriptor("granularity"),material:createMaterialPropertyDescriptor("material"),depthFailMaterial:createMaterialPropertyDescriptor("depthFailMaterial"),arcType:createPropertyDescriptor("arcType"),clampToGround:createPropertyDescriptor("clampToGround"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),classificationType:createPropertyDescriptor("classificationType"),zIndex:createPropertyDescriptor("zIndex")}),PolylineGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.positions=this.positions,t.width=this.width,t.granularity=this.granularity,t.material=this.material,t.depthFailMaterial=this.depthFailMaterial,t.arcType=this.arcType,t.clampToGround=this.clampToGround,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t.classificationType=this.classificationType,t.zIndex=this.zIndex,t):new PolylineGraphics(this)},PolylineGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.positions=defaultValue(this.positions,t.positions),this.width=defaultValue(this.width,t.width),this.granularity=defaultValue(this.granularity,t.granularity),this.material=defaultValue(this.material,t.material),this.depthFailMaterial=defaultValue(this.depthFailMaterial,t.depthFailMaterial),this.arcType=defaultValue(this.arcType,t.arcType),this.clampToGround=defaultValue(this.clampToGround,t.clampToGround),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.classificationType=defaultValue(this.classificationType,t.classificationType),this.zIndex=defaultValue(this.zIndex,t.zIndex)};function PolylineVolumeGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._positions=void 0,this._positionsSubscription=void 0,this._shape=void 0,this._shapeSubscription=void 0,this._cornerType=void 0,this._cornerTypeSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubsription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(PolylineVolumeGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),positions:createPropertyDescriptor("positions"),shape:createPropertyDescriptor("shape"),cornerType:createPropertyDescriptor("cornerType"),granularity:createPropertyDescriptor("granularity"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),PolylineVolumeGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.positions=this.positions,t.shape=this.shape,t.cornerType=this.cornerType,t.granularity=this.granularity,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new PolylineVolumeGraphics(this)},PolylineVolumeGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.positions=defaultValue(this.positions,t.positions),this.shape=defaultValue(this.shape,t.shape),this.cornerType=defaultValue(this.cornerType,t.cornerType),this.granularity=defaultValue(this.granularity,t.granularity),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};function RectangleGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._coordinates=void 0,this._coordinatesSubscription=void 0,this._height=void 0,this._heightSubscription=void 0,this._heightReference=void 0,this._heightReferenceSubscription=void 0,this._extrudedHeight=void 0,this._extrudedHeightSubscription=void 0,this._extrudedHeightReference=void 0,this._extrudedHeightReferenceSubscription=void 0,this._rotation=void 0,this._rotationSubscription=void 0,this._stRotation=void 0,this._stRotationSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distancedisplayConditionSubscription=void 0,this._classificationType=void 0,this._classificationTypeSubscription=void 0,this._zIndex=void 0,this._zIndexSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(RectangleGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),coordinates:createPropertyDescriptor("coordinates"),height:createPropertyDescriptor("height"),heightReference:createPropertyDescriptor("heightReference"),extrudedHeight:createPropertyDescriptor("extrudedHeight"),extrudedHeightReference:createPropertyDescriptor("extrudedHeightReference"),rotation:createPropertyDescriptor("rotation"),stRotation:createPropertyDescriptor("stRotation"),granularity:createPropertyDescriptor("granularity"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition"),classificationType:createPropertyDescriptor("classificationType"),zIndex:createPropertyDescriptor("zIndex")}),RectangleGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.coordinates=this.coordinates,t.height=this.height,t.heightReference=this.heightReference,t.extrudedHeight=this.extrudedHeight,t.extrudedHeightReference=this.extrudedHeightReference,t.rotation=this.rotation,t.stRotation=this.stRotation,t.granularity=this.granularity,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t.classificationType=this.classificationType,t.zIndex=this.zIndex,t):new RectangleGraphics(this)},RectangleGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.coordinates=defaultValue(this.coordinates,t.coordinates),this.height=defaultValue(this.height,t.height),this.heightReference=defaultValue(this.heightReference,t.heightReference),this.extrudedHeight=defaultValue(this.extrudedHeight,t.extrudedHeight),this.extrudedHeightReference=defaultValue(this.extrudedHeightReference,t.extrudedHeightReference),this.rotation=defaultValue(this.rotation,t.rotation),this.stRotation=defaultValue(this.stRotation,t.stRotation),this.granularity=defaultValue(this.granularity,t.granularity),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition),this.classificationType=defaultValue(this.classificationType,t.classificationType),this.zIndex=defaultValue(this.zIndex,t.zIndex)};function WallGraphics(t){this._definitionChanged=new Event$1,this._show=void 0,this._showSubscription=void 0,this._positions=void 0,this._positionsSubscription=void 0,this._minimumHeights=void 0,this._minimumHeightsSubscription=void 0,this._maximumHeights=void 0,this._maximumHeightsSubscription=void 0,this._granularity=void 0,this._granularitySubscription=void 0,this._fill=void 0,this._fillSubscription=void 0,this._material=void 0,this._materialSubscription=void 0,this._outline=void 0,this._outlineSubscription=void 0,this._outlineColor=void 0,this._outlineColorSubscription=void 0,this._outlineWidth=void 0,this._outlineWidthSubscription=void 0,this._shadows=void 0,this._shadowsSubscription=void 0,this._distanceDisplayCondition=void 0,this._distanceDisplayConditionSubscription=void 0,this.merge(defaultValue(t,defaultValue.EMPTY_OBJECT))}Object.defineProperties(WallGraphics.prototype,{definitionChanged:{get:function(){return this._definitionChanged}},show:createPropertyDescriptor("show"),positions:createPropertyDescriptor("positions"),minimumHeights:createPropertyDescriptor("minimumHeights"),maximumHeights:createPropertyDescriptor("maximumHeights"),granularity:createPropertyDescriptor("granularity"),fill:createPropertyDescriptor("fill"),material:createMaterialPropertyDescriptor("material"),outline:createPropertyDescriptor("outline"),outlineColor:createPropertyDescriptor("outlineColor"),outlineWidth:createPropertyDescriptor("outlineWidth"),shadows:createPropertyDescriptor("shadows"),distanceDisplayCondition:createPropertyDescriptor("distanceDisplayCondition")}),WallGraphics.prototype.clone=function(t){return defined(t)?(t.show=this.show,t.positions=this.positions,t.minimumHeights=this.minimumHeights,t.maximumHeights=this.maximumHeights,t.granularity=this.granularity,t.fill=this.fill,t.material=this.material,t.outline=this.outline,t.outlineColor=this.outlineColor,t.outlineWidth=this.outlineWidth,t.shadows=this.shadows,t.distanceDisplayCondition=this.distanceDisplayCondition,t):new WallGraphics(this)},WallGraphics.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.show=defaultValue(this.show,t.show),this.positions=defaultValue(this.positions,t.positions),this.minimumHeights=defaultValue(this.minimumHeights,t.minimumHeights),this.maximumHeights=defaultValue(this.maximumHeights,t.maximumHeights),this.granularity=defaultValue(this.granularity,t.granularity),this.fill=defaultValue(this.fill,t.fill),this.material=defaultValue(this.material,t.material),this.outline=defaultValue(this.outline,t.outline),this.outlineColor=defaultValue(this.outlineColor,t.outlineColor),this.outlineWidth=defaultValue(this.outlineWidth,t.outlineWidth),this.shadows=defaultValue(this.shadows,t.shadows),this.distanceDisplayCondition=defaultValue(this.distanceDisplayCondition,t.distanceDisplayCondition)};const cartoScratch=new Cartographic,ExtraPropertyNames=[];function createConstantPositionProperty(t){return new ConstantPositionProperty(t)}function createPositionPropertyDescriptor(t){return createPropertyDescriptor(t,void 0,createConstantPositionProperty)}function createPropertyTypeDescriptor(t,n){return createPropertyDescriptor(t,void 0,function(o){return o instanceof n?o:new n(o)})}function Entity$1(t){t=defaultValue(t,defaultValue.EMPTY_OBJECT);let n=t.id;defined(n)||(n=createGuid()),this._availability=void 0,this._id=n,this._definitionChanged=new Event$1,this._name=t.name,this._show=defaultValue(t.show,!0),this._parent=void 0,this._propertyNames=["billboard","box","corridor","cylinder","description","ellipse","ellipsoid","label","model","tileset","orientation","path","plane","point","polygon","polyline","polylineVolume","position","properties","rectangle","viewFrom","wall",...ExtraPropertyNames],this._billboard=void 0,this._billboardSubscription=void 0,this._box=void 0,this._boxSubscription=void 0,this._corridor=void 0,this._corridorSubscription=void 0,this._cylinder=void 0,this._cylinderSubscription=void 0,this._description=void 0,this._descriptionSubscription=void 0,this._ellipse=void 0,this._ellipseSubscription=void 0,this._ellipsoid=void 0,this._ellipsoidSubscription=void 0,this._label=void 0,this._labelSubscription=void 0,this._model=void 0,this._modelSubscription=void 0,this._tileset=void 0,this._tilesetSubscription=void 0,this._orientation=void 0,this._orientationSubscription=void 0,this._path=void 0,this._pathSubscription=void 0,this._plane=void 0,this._planeSubscription=void 0,this._point=void 0,this._pointSubscription=void 0,this._polygon=void 0,this._polygonSubscription=void 0,this._polyline=void 0,this._polylineSubscription=void 0,this._polylineVolume=void 0,this._polylineVolumeSubscription=void 0,this._position=void 0,this._positionSubscription=void 0,this._properties=void 0,this._propertiesSubscription=void 0,this._rectangle=void 0,this._rectangleSubscription=void 0,this._viewFrom=void 0,this._viewFromSubscription=void 0,this._wall=void 0,this._wallSubscription=void 0,this._children=[],this.entityCollection=void 0,this.parent=t.parent,this.merge(t)}function updateShow(t,n,o){const s=n.length;for(let c=0;c<s;c++){const d=n[c],h=d._show;(!o&&h)!==(o&&h)&&updateShow(d,d._children,o)}t._definitionChanged.raiseEvent(t,"isShowing",o,!o)}Object.defineProperties(Entity$1.prototype,{availability:createRawPropertyDescriptor("availability"),id:{get:function(){return this._id}},definitionChanged:{get:function(){return this._definitionChanged}},name:createRawPropertyDescriptor("name"),show:{get:function(){return this._show},set:function(t){if(!defined(t))throw new DeveloperError("value is required.");if(t===this._show)return;const n=this.isShowing;this._show=t;const o=this.isShowing;n!==o&&updateShow(this,this._children,o),this._definitionChanged.raiseEvent(this,"show",t,!t)}},isShowing:{get:function(){return this._show&&(!defined(this.entityCollection)||this.entityCollection.show)&&(!defined(this._parent)||this._parent.isShowing)}},parent:{get:function(){return this._parent},set:function(t){const n=this._parent;if(n===t)return;const o=this.isShowing;if(defined(n)){const c=n._children.indexOf(this);n._children.splice(c,1)}this._parent=t,defined(t)&&t._children.push(this);const s=this.isShowing;o!==s&&updateShow(this,this._children,s),this._definitionChanged.raiseEvent(this,"parent",t,n)}},propertyNames:{get:function(){return this._propertyNames}},billboard:createPropertyTypeDescriptor("billboard",BillboardGraphics),box:createPropertyTypeDescriptor("box",BoxGraphics),corridor:createPropertyTypeDescriptor("corridor",CorridorGraphics),cylinder:createPropertyTypeDescriptor("cylinder",CylinderGraphics),description:createPropertyDescriptor("description"),ellipse:createPropertyTypeDescriptor("ellipse",EllipseGraphics),ellipsoid:createPropertyTypeDescriptor("ellipsoid",EllipsoidGraphics),label:createPropertyTypeDescriptor("label",LabelGraphics),model:createPropertyTypeDescriptor("model",ModelGraphics),tileset:createPropertyTypeDescriptor("tileset",Cesium3DTilesetGraphics),orientation:createPropertyDescriptor("orientation"),path:createPropertyTypeDescriptor("path",PathGraphics),plane:createPropertyTypeDescriptor("plane",PlaneGraphics),point:createPropertyTypeDescriptor("point",PointGraphics),polygon:createPropertyTypeDescriptor("polygon",PolygonGraphics),polyline:createPropertyTypeDescriptor("polyline",PolylineGraphics),polylineVolume:createPropertyTypeDescriptor("polylineVolume",PolylineVolumeGraphics),properties:createPropertyTypeDescriptor("properties",PropertyBag),position:createPositionPropertyDescriptor("position"),rectangle:createPropertyTypeDescriptor("rectangle",RectangleGraphics),viewFrom:createPropertyDescriptor("viewFrom"),wall:createPropertyTypeDescriptor("wall",WallGraphics)}),Entity$1.registerEntityType=function(t,n){Object.defineProperties(Entity$1.prototype,{[t]:createPropertyTypeDescriptor(t,n)}),ExtraPropertyNames.includes(t)||ExtraPropertyNames.push(t)},Entity$1.prototype.isAvailable=function(t){if(!defined(t))throw new DeveloperError("time is required.");const n=this._availability;return!defined(n)||n.contains(t)},Entity$1.prototype.addProperty=function(t){const n=this._propertyNames;if(!defined(t))throw new DeveloperError("propertyName is required.");if(n.indexOf(t)!==-1)throw new DeveloperError(`${t} is already a registered property.`);if(t in this)throw new DeveloperError(`${t} is a reserved property name.`);n.push(t),Object.defineProperty(this,t,createRawPropertyDescriptor(t,!0))},Entity$1.prototype.removeProperty=function(t){const o=this._propertyNames.indexOf(t);if(!defined(t))throw new DeveloperError("propertyName is required.");if(o===-1)throw new DeveloperError(`${t} is not a registered property.`);this._propertyNames.splice(o,1),delete this[t]},Entity$1.prototype.merge=function(t){if(!defined(t))throw new DeveloperError("source is required.");this.name=defaultValue(this.name,t.name),this.availability=defaultValue(this.availability,t.availability);const n=this._propertyNames,o=defined(t._propertyNames)?t._propertyNames:Object.keys(t),s=o.length;for(let c=0;c<s;c++){const d=o[c];if(d==="parent"||d==="name"||d==="availability"||d==="children")continue;const h=this[d],p=t[d];!defined(h)&&n.indexOf(d)===-1&&this.addProperty(d),defined(p)&&(defined(h)?defined(h.merge)&&h.merge(p):defined(p.merge)&&defined(p.clone)?this[d]=p.clone():this[d]=p)}};const matrix3Scratch=new Matrix3,positionScratch$2=new Cartesian3,orientationScratch=new Quaternion;Entity$1.prototype.computeModelMatrix=function(t,n){Check.typeOf.object("time",t);const o=Property.getValueOrUndefined(this._position,t,positionScratch$2);if(!defined(o))return;const s=Property.getValueOrUndefined(this._orientation,t,orientationScratch);return defined(s)?n=Matrix4.fromRotationTranslation(Matrix3.fromQuaternion(s,matrix3Scratch),o,n):n=Transforms.eastNorthUpToFixedFrame(o,void 0,n),n},Entity$1.prototype.computeModelMatrixForHeightReference=function(t,n,o,s,c){Check.typeOf.object("time",t);const d=Property.getValueOrDefault(n,t,HeightReference$1.NONE);let h=Property.getValueOrUndefined(this._position,t,positionScratch$2);if(d===HeightReference$1.NONE||!defined(h)||Cartesian3.equalsEpsilon(h,Cartesian3.ZERO,CesiumMath.EPSILON8))return this.computeModelMatrix(t,c);const p=s.cartesianToCartographic(h,cartoScratch);isHeightReferenceClamp(d)?p.height=o:p.height+=o,h=s.cartographicToCartesian(p,h);const y=Property.getValueOrUndefined(this._orientation,t,orientationScratch);return defined(y)?c=Matrix4.fromRotationTranslation(Matrix3.fromQuaternion(y,matrix3Scratch),h,c):c=Transforms.eastNorthUpToFixedFrame(h,void 0,c),c},Entity$1.supportsMaterialsforEntitiesOnTerrain=function(t){return GroundPrimitive.supportsMaterials(t)},Entity$1.supportsPolylinesOnTerrain=function(t){return GroundPolylinePrimitive.isSupported(t)};function CallbackProperty(t,n){this._callback=void 0,this._isConstant=void 0,this._definitionChanged=new Event$1,this.setCallback(t,n)}Object.defineProperties(CallbackProperty.prototype,{isConstant:{get:function(){return this._isConstant}},definitionChanged:{get:function(){return this._definitionChanged}}}),CallbackProperty.prototype.getValue=function(t,n){return this._callback(t,n)},CallbackProperty.prototype.setCallback=function(t,n){if(!defined(t))throw new DeveloperError("callback is required.");if(!defined(n))throw new DeveloperError("isConstant is required.");const o=this._callback!==t||this._isConstant!==n;this._callback=t,this._isConstant=n,o&&this._definitionChanged.raiseEvent(this)},CallbackProperty.prototype.equals=function(t){return this===t||t instanceof CallbackProperty&&this._callback===t._callback&&this._isConstant===t._isConstant};const SceneTransforms={},actualPositionScratch=new Cartesian4(0,0,0,1);let positionCC=new Cartesian4;const scratchViewport=new BoundingRectangle,scratchWindowCoord0=new Cartesian2,scratchWindowCoord1=new Cartesian2;SceneTransforms.wgs84ToWindowCoordinates=function(t,n,o){return SceneTransforms.wgs84WithEyeOffsetToWindowCoordinates(t,n,Cartesian3.ZERO,o)};const scratchCartesian4=new Cartesian4,scratchEyeOffset=new Cartesian3;function worldToClip(t,n,o,s){const c=o.viewMatrix,d=Matrix4.multiplyByVector(c,Cartesian4.fromElements(t.x,t.y,t.z,1,scratchCartesian4),scratchCartesian4),h=Cartesian3.multiplyComponents(n,Cartesian3.normalize(d,scratchEyeOffset),scratchEyeOffset);return d.x+=n.x+h.x,d.y+=n.y+h.y,d.z+=h.z,Matrix4.multiplyByVector(o.frustum.projectionMatrix,d,s)}const scratchMaxCartographic=new Cartographic(Math.PI,CesiumMath.PI_OVER_TWO),scratchProjectedCartesian=new Cartesian3,scratchCameraPosition=new Cartesian3;SceneTransforms.wgs84WithEyeOffsetToWindowCoordinates=function(t,n,o,s){if(!defined(t))throw new DeveloperError("scene is required.");if(!defined(n))throw new DeveloperError("position is required.");const c=t.frameState,d=SceneTransforms.computeActualWgs84Position(c,n,actualPositionScratch);if(!defined(d))return;const h=t.canvas,p=scratchViewport;p.x=0,p.y=0,p.width=h.clientWidth,p.height=h.clientHeight;const y=t.camera;let S=!1;if(c.mode===SceneMode$1.SCENE2D){const P=t.mapProjection,L=scratchMaxCartographic,F=P.project(L,scratchProjectedCartesian),N=Cartesian3.clone(y.position,scratchCameraPosition),z=y.frustum.clone(),W=Matrix4.computeViewportTransformation(p,0,1,new Matrix4),lt=y.frustum.projectionMatrix,Pe=y.positionWC.y,se=Cartesian3.fromElements(CesiumMath.sign(Pe)*F.x-Pe,0,-y.positionWC.x),mt=Transforms.pointToGLWindowCoordinates(lt,W,se);if(Pe===0||mt.x<=0||mt.x>=h.clientWidth)S=!0;else{if(mt.x>h.clientWidth*.5){p.width=mt.x,y.frustum.right=F.x-Pe,positionCC=worldToClip(d,o,y,positionCC),SceneTransforms.clipToGLWindowCoordinates(p,positionCC,scratchWindowCoord0),p.x+=mt.x,y.position.x=-y.position.x;const kt=y.frustum.right;y.frustum.right=-y.frustum.left,y.frustum.left=-kt,positionCC=worldToClip(d,o,y,positionCC),SceneTransforms.clipToGLWindowCoordinates(p,positionCC,scratchWindowCoord1)}else{p.x+=mt.x,p.width-=mt.x,y.frustum.left=-F.x-Pe,positionCC=worldToClip(d,o,y,positionCC),SceneTransforms.clipToGLWindowCoordinates(p,positionCC,scratchWindowCoord0),p.x=p.x-p.width,y.position.x=-y.position.x;const kt=y.frustum.left;y.frustum.left=-y.frustum.right,y.frustum.right=-kt,positionCC=worldToClip(d,o,y,positionCC),SceneTransforms.clipToGLWindowCoordinates(p,positionCC,scratchWindowCoord1)}Cartesian3.clone(N,y.position),y.frustum=z.clone(),s=Cartesian2.clone(scratchWindowCoord0,s),(s.x<0||s.x>h.clientWidth)&&(s.x=scratchWindowCoord1.x)}}if(c.mode!==SceneMode$1.SCENE2D||S){if(positionCC=worldToClip(d,o,y,positionCC),positionCC.z<0&&!(y.frustum instanceof OrthographicFrustum)&&!(y.frustum instanceof OrthographicOffCenterFrustum))return;s=SceneTransforms.clipToGLWindowCoordinates(p,positionCC,s)}return s.y=h.clientHeight-s.y,s},SceneTransforms.wgs84ToDrawingBufferCoordinates=function(t,n,o){if(o=SceneTransforms.wgs84ToWindowCoordinates(t,n,o),!!defined(o))return SceneTransforms.transformWindowToDrawingBuffer(t,o,o)};const projectedPosition=new Cartesian3,positionInCartographic=new Cartographic;SceneTransforms.computeActualWgs84Position=function(t,n,o){const s=t.mode;if(s===SceneMode$1.SCENE3D)return Cartesian3.clone(n,o);const c=t.mapProjection,d=c.ellipsoid.cartesianToCartographic(n,positionInCartographic);if(!defined(d))return;if(c.project(d,projectedPosition),s===SceneMode$1.COLUMBUS_VIEW)return Cartesian3.fromElements(projectedPosition.z,projectedPosition.x,projectedPosition.y,o);if(s===SceneMode$1.SCENE2D)return Cartesian3.fromElements(0,projectedPosition.x,projectedPosition.y,o);const h=t.morphTime;return Cartesian3.fromElements(CesiumMath.lerp(projectedPosition.z,n.x,h),CesiumMath.lerp(projectedPosition.x,n.y,h),CesiumMath.lerp(projectedPosition.y,n.z,h),o)};const positionNDC=new Cartesian3,positionWC=new Cartesian3,viewportTransform=new Matrix4;SceneTransforms.clipToGLWindowCoordinates=function(t,n,o){return Cartesian3.divideByScalar(n,n.w,positionNDC),Matrix4.computeViewportTransformation(t,0,1,viewportTransform),Matrix4.multiplyByPoint(viewportTransform,positionNDC,positionWC),Cartesian2.fromCartesian3(positionWC,o)},SceneTransforms.transformWindowToDrawingBuffer=function(t,n,o){const s=t.canvas,c=t.drawingBufferWidth/s.clientWidth,d=t.drawingBufferHeight/s.clientHeight;return Cartesian2.fromElements(n.x*c,n.y*d,o)};const scratchNDC=new Cartesian4,scratchWorldCoords=new Cartesian4;SceneTransforms.drawingBufferToWgs84Coordinates=function(t,n,o,s){const d=t.context.uniformState,h=d.currentFrustum,p=h.x,y=h.y;if(t.frameState.useLogDepth){const N=o*d.log2FarDepthFromNearPlusOne,z=Math.pow(2,N)-1;o=y*(1-p/(z+p))/(y-p)}const S=t.view.passState.viewport,P=Cartesian4.clone(Cartesian4.UNIT_W,scratchNDC);P.x=(n.x-S.x)/S.width*2-1,P.y=(n.y-S.y)/S.height*2-1,P.z=o*2-1,P.w=1;let L,F=t.camera.frustum;if(defined(F.fovy)){L=Matrix4.multiplyByVector(d.inverseViewProjection,P,scratchWorldCoords);const N=1/L.w;Cartesian3.multiplyByScalar(L,N,L)}else{const N=F.offCenterFrustum;defined(N)&&(F=N),L=scratchWorldCoords,L.x=(P.x*(F.right-F.left)+F.left+F.right)*.5,L.y=(P.y*(F.top-F.bottom)+F.bottom+F.top)*.5,L.z=(P.z*(p-y)-p-y)*.5,L.w=1,L=Matrix4.multiplyByVector(d.inverseView,L,L)}return Cartesian3.fromCartesian4(L,s)};const LabelStyle={FILL:0,OUTLINE:1,FILL_AND_OUTLINE:2},LabelStyle$1=Object.freeze(LabelStyle),Cesium3DTilePass={RENDER:0,PICK:1,SHADOW:2,PRELOAD:3,PRELOAD_FLIGHT:4,REQUEST_RENDER_MODE_DEFER_CHECK:5,MOST_DETAILED_PRELOAD:6,MOST_DETAILED_PICK:7,NUMBER_OF_PASSES:8},passOptions=new Array(Cesium3DTilePass.NUMBER_OF_PASSES);passOptions[Cesium3DTilePass.RENDER]=Object.freeze({pass:Cesium3DTilePass.RENDER,isRender:!0,requestTiles:!0,ignoreCommands:!1}),passOptions[Cesium3DTilePass.PICK]=Object.freeze({pass:Cesium3DTilePass.PICK,isRender:!1,requestTiles:!1,ignoreCommands:!1}),passOptions[Cesium3DTilePass.SHADOW]=Object.freeze({pass:Cesium3DTilePass.SHADOW,isRender:!1,requestTiles:!0,ignoreCommands:!1}),passOptions[Cesium3DTilePass.PRELOAD]=Object.freeze({pass:Cesium3DTilePass.PRELOAD,isRender:!1,requestTiles:!0,ignoreCommands:!0}),passOptions[Cesium3DTilePass.PRELOAD_FLIGHT]=Object.freeze({pass:Cesium3DTilePass.PRELOAD_FLIGHT,isRender:!1,requestTiles:!0,ignoreCommands:!0}),passOptions[Cesium3DTilePass.REQUEST_RENDER_MODE_DEFER_CHECK]=Object.freeze({pass:Cesium3DTilePass.REQUEST_RENDER_MODE_DEFER_CHECK,isRender:!1,requestTiles:!0,ignoreCommands:!0}),passOptions[Cesium3DTilePass.MOST_DETAILED_PRELOAD]=Object.freeze({pass:Cesium3DTilePass.MOST_DETAILED_PRELOAD,isRender:!1,requestTiles:!0,ignoreCommands:!0}),passOptions[Cesium3DTilePass.MOST_DETAILED_PICK]=Object.freeze({pass:Cesium3DTilePass.MOST_DETAILED_PICK,isRender:!1,requestTiles:!1,ignoreCommands:!1}),Cesium3DTilePass.getPassOptions=function(t){return passOptions[t]};const Cesium3DTilePass$1=Object.freeze(Cesium3DTilePass),defaultColor=Color$1.WHITE,defaultGapColor=Color$1.TRANSPARENT,defaultDashLength=16,defaultDashPattern=255;function PolylineDashMaterialProperty(t){t=defaultValue(t,defaultValue.EMPTY_OBJECT),this._definitionChanged=new Event$1,this._color=void 0,this._colorSubscription=void 0,this._gapColor=void 0,this._gapColorSubscription=void 0,this._dashLength=void 0,this._dashLengthSubscription=void 0,this._dashPattern=void 0,this._dashPatternSubscription=void 0,this.color=t.color,this.gapColor=t.gapColor,this.dashLength=t.dashLength,this.dashPattern=t.dashPattern}Object.defineProperties(PolylineDashMaterialProperty.prototype,{isConstant:{get:function(){return Property.isConstant(this._color)&&Property.isConstant(this._gapColor)&&Property.isConstant(this._dashLength)&&Property.isConstant(this._dashPattern)}},definitionChanged:{get:function(){return this._definitionChanged}},color:createPropertyDescriptor("color"),gapColor:createPropertyDescriptor("gapColor"),dashLength:createPropertyDescriptor("dashLength"),dashPattern:createPropertyDescriptor("dashPattern")}),PolylineDashMaterialProperty.prototype.getType=function(t){return"PolylineDash"},PolylineDashMaterialProperty.prototype.getValue=function(t,n){return defined(n)||(n={}),n.color=Property.getValueOrClonedDefault(this._color,t,defaultColor,n.color),n.gapColor=Property.getValueOrClonedDefault(this._gapColor,t,defaultGapColor,n.gapColor),n.dashLength=Property.getValueOrDefault(this._dashLength,t,defaultDashLength,n.dashLength),n.dashPattern=Property.getValueOrDefault(this._dashPattern,t,defaultDashPattern,n.dashPattern),n},PolylineDashMaterialProperty.prototype.equals=function(t){return this===t||t instanceof PolylineDashMaterialProperty&&Property.equals(this._color,t._color)&&Property.equals(this._gapColor,t._gapColor)&&Property.equals(this._dashLength,t._dashLength)&&Property.equals(this._dashPattern,t._dashPattern)};function DiscardEmptyTileImagePolicy(t){}DiscardEmptyTileImagePolicy.prototype.isReady=function(){return!0},DiscardEmptyTileImagePolicy.prototype.shouldDiscardImage=function(t){return DiscardEmptyTileImagePolicy.EMPTY_IMAGE===t};let emptyImage;Object.defineProperties(DiscardEmptyTileImagePolicy,{EMPTY_IMAGE:{get:function(){return defined(emptyImage)||(emptyImage=new Image,emptyImage.src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),emptyImage}}});function Cesium3DTilePassState(t){Check.typeOf.object("options",t),Check.typeOf.number("options.pass",t.pass),this.pass=t.pass,this.commandList=t.commandList,this.camera=t.camera,this.cullingVolume=t.cullingVolume,this.ready=!1}var __create=Object.create,__defProp$1=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__getProtoOf=Object.getPrototypeOf,__hasOwnProp$1=Object.prototype.hasOwnProperty,__markAsModule=t=>__defProp$1(t,"__esModule",{value:!0}),__commonJS=(t,n)=>function(){return n||(0,t[Object.keys(t)[0]])((n={exports:{}}).exports,n),n.exports},__reExport=(t,n,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let s of __getOwnPropNames(n))!__hasOwnProp$1.call(t,s)&&s!=="default"&&__defProp$1(t,s,{get:()=>n[s],enumerable:!(o=__getOwnPropDesc(n,s))||o.enumerable});return t},__toModule=t=>__reExport(__markAsModule(__defProp$1(t!=null?__create(__getProtoOf(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t),__async=(t,n,o)=>new Promise((s,c)=>{var d=y=>{try{p(o.next(y))}catch(S){c(S)}},h=y=>{try{p(o.throw(y))}catch(S){c(S)}},p=y=>y.done?s(y.value):Promise.resolve(y.value).then(d,h);p((o=o.apply(t,n)).next())}),require_point_geometry=__commonJS({"node_modules/@mapbox/point-geometry/index.js"(t,n){n.exports=o;function o(s,c){this.x=s,this.y=c}o.prototype={clone:function(){return new o(this.x,this.y)},add:function(s){return this.clone()._add(s)},sub:function(s){return this.clone()._sub(s)},multByPoint:function(s){return this.clone()._multByPoint(s)},divByPoint:function(s){return this.clone()._divByPoint(s)},mult:function(s){return this.clone()._mult(s)},div:function(s){return this.clone()._div(s)},rotate:function(s){return this.clone()._rotate(s)},rotateAround:function(s,c){return this.clone()._rotateAround(s,c)},matMult:function(s){return this.clone()._matMult(s)},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(s){return this.x===s.x&&this.y===s.y},dist:function(s){return Math.sqrt(this.distSqr(s))},distSqr:function(s){var c=s.x-this.x,d=s.y-this.y;return c*c+d*d},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(s){return Math.atan2(this.y-s.y,this.x-s.x)},angleWith:function(s){return this.angleWithSep(s.x,s.y)},angleWithSep:function(s,c){return Math.atan2(this.x*c-this.y*s,this.x*s+this.y*c)},_matMult:function(s){var c=s[0]*this.x+s[1]*this.y,d=s[2]*this.x+s[3]*this.y;return this.x=c,this.y=d,this},_add:function(s){return this.x+=s.x,this.y+=s.y,this},_sub:function(s){return this.x-=s.x,this.y-=s.y,this},_mult:function(s){return this.x*=s,this.y*=s,this},_div:function(s){return this.x/=s,this.y/=s,this},_multByPoint:function(s){return this.x*=s.x,this.y*=s.y,this},_divByPoint:function(s){return this.x/=s.x,this.y/=s.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var s=this.y;return this.y=this.x,this.x=-s,this},_rotate:function(s){var c=Math.cos(s),d=Math.sin(s),h=c*this.x-d*this.y,p=d*this.x+c*this.y;return this.x=h,this.y=p,this},_rotateAround:function(s,c){var d=Math.cos(s),h=Math.sin(s),p=c.x+d*(this.x-c.x)-h*(this.y-c.y),y=c.y+h*(this.x-c.x)+d*(this.y-c.y);return this.x=p,this.y=y,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},o.convert=function(s){return s instanceof o?s:Array.isArray(s)?new o(s[0],s[1]):s}}}),require_vectortilefeature=__commonJS({"node_modules/@mapbox/vector-tile/lib/vectortilefeature.js"(t,n){var o=require_point_geometry();n.exports=s;function s(y,S,P,L,F){this.properties={},this.extent=P,this.type=0,this._pbf=y,this._geometry=-1,this._keys=L,this._values=F,y.readFields(c,this,S)}function c(y,S,P){y==1?S.id=P.readVarint():y==2?d(P,S):y==3?S.type=P.readVarint():y==4&&(S._geometry=P.pos)}function d(y,S){for(var P=y.readVarint()+y.pos;y.pos<P;){var L=S._keys[y.readVarint()],F=S._values[y.readVarint()];S.properties[L]=F}}s.types=["Unknown","Point","LineString","Polygon"],s.prototype.loadGeometry=function(){var y=this._pbf;y.pos=this._geometry;for(var S=y.readVarint()+y.pos,P=1,L=0,F=0,N=0,z=[],W;y.pos<S;){if(L<=0){var lt=y.readVarint();P=lt&7,L=lt>>3}if(L--,P===1||P===2)F+=y.readSVarint(),N+=y.readSVarint(),P===1&&(W&&z.push(W),W=[]),W.push(new o(F,N));else if(P===7)W&&W.push(W[0].clone());else throw new Error("unknown command "+P)}return W&&z.push(W),z},s.prototype.bbox=function(){var y=this._pbf;y.pos=this._geometry;for(var S=y.readVarint()+y.pos,P=1,L=0,F=0,N=0,z=1/0,W=-1/0,lt=1/0,Pe=-1/0;y.pos<S;){if(L<=0){var se=y.readVarint();P=se&7,L=se>>3}if(L--,P===1||P===2)F+=y.readSVarint(),N+=y.readSVarint(),F<z&&(z=F),F>W&&(W=F),N<lt&&(lt=N),N>Pe&&(Pe=N);else if(P!==7)throw new Error("unknown command "+P)}return[z,lt,W,Pe]},s.prototype.toGeoJSON=function(y,S,P){var L=this.extent*Math.pow(2,P),F=this.extent*y,N=this.extent*S,z=this.loadGeometry(),W=s.types[this.type],lt,Pe;function se(mn){for(var pi=0;pi<mn.length;pi++){var zi=mn[pi],Sa=180-(zi.y+N)*360/L;mn[pi]=[(zi.x+F)*360/L-180,360/Math.PI*Math.atan(Math.exp(Sa*Math.PI/180))-90]}}switch(this.type){case 1:var mt=[];for(lt=0;lt<z.length;lt++)mt[lt]=z[lt][0];z=mt,se(z);break;case 2:for(lt=0;lt<z.length;lt++)se(z[lt]);break;case 3:for(z=h(z),lt=0;lt<z.length;lt++)for(Pe=0;Pe<z[lt].length;Pe++)se(z[lt][Pe]);break}z.length===1?z=z[0]:W="Multi"+W;var kt={type:"Feature",geometry:{type:W,coordinates:z},properties:this.properties};return"id"in this&&(kt.id=this.id),kt};function h(y){var S=y.length;if(S<=1)return[y];for(var P=[],L,F,N=0;N<S;N++){var z=p(y[N]);z!==0&&(F===void 0&&(F=z<0),F===z<0?(L&&P.push(L),L=[y[N]]):L.push(y[N]))}return L&&P.push(L),P}function p(y){for(var S=0,P=0,L=y.length,F=L-1,N,z;P<L;F=P++)N=y[P],z=y[F],S+=(z.x-N.x)*(N.y+z.y);return S}}}),require_vectortilelayer=__commonJS({"node_modules/@mapbox/vector-tile/lib/vectortilelayer.js"(t,n){var o=require_vectortilefeature();n.exports=s;function s(h,p){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=h,this._keys=[],this._values=[],this._features=[],h.readFields(c,this,p),this.length=this._features.length}function c(h,p,y){h===15?p.version=y.readVarint():h===1?p.name=y.readString():h===5?p.extent=y.readVarint():h===2?p._features.push(y.pos):h===3?p._keys.push(y.readString()):h===4&&p._values.push(d(y))}function d(h){for(var p=null,y=h.readVarint()+h.pos;h.pos<y;){var S=h.readVarint()>>3;p=S===1?h.readString():S===2?h.readFloat():S===3?h.readDouble():S===4?h.readVarint64():S===5?h.readVarint():S===6?h.readSVarint():S===7?h.readBoolean():null}return p}s.prototype.feature=function(h){if(h<0||h>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[h];var p=this._pbf.readVarint()+this._pbf.pos;return new o(this._pbf,p,this.extent,this._keys,this._values)}}}),require_vectortile=__commonJS({"node_modules/@mapbox/vector-tile/lib/vectortile.js"(t,n){var o=require_vectortilelayer();n.exports=s;function s(d,h){this.layers=d.readFields(c,{},h)}function c(d,h,p){if(d===3){var y=new o(p,p.readVarint()+p.pos);y.length&&(h[y.name]=y)}}}}),require_vector_tile=__commonJS({"node_modules/@mapbox/vector-tile/index.js"(t,n){n.exports.VectorTile=require_vectortile(),n.exports.VectorTileFeature=require_vectortilefeature(),n.exports.VectorTileLayer=require_vectortilelayer()}}),require_ieee754=__commonJS({"node_modules/ieee754/index.js"(t){t.read=function(n,o,s,c,d){var h,p,y=d*8-c-1,S=(1<<y)-1,P=S>>1,L=-7,F=s?d-1:0,N=s?-1:1,z=n[o+F];for(F+=N,h=z&(1<<-L)-1,z>>=-L,L+=y;L>0;h=h*256+n[o+F],F+=N,L-=8);for(p=h&(1<<-L)-1,h>>=-L,L+=c;L>0;p=p*256+n[o+F],F+=N,L-=8);if(h===0)h=1-P;else{if(h===S)return p?NaN:(z?-1:1)*(1/0);p=p+Math.pow(2,c),h=h-P}return(z?-1:1)*p*Math.pow(2,h-c)},t.write=function(n,o,s,c,d,h){var p,y,S,P=h*8-d-1,L=(1<<P)-1,F=L>>1,N=d===23?Math.pow(2,-24)-Math.pow(2,-77):0,z=c?0:h-1,W=c?1:-1,lt=o<0||o===0&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(y=isNaN(o)?1:0,p=L):(p=Math.floor(Math.log(o)/Math.LN2),o*(S=Math.pow(2,-p))<1&&(p--,S*=2),p+F>=1?o+=N/S:o+=N*Math.pow(2,1-F),o*S>=2&&(p++,S/=2),p+F>=L?(y=0,p=L):p+F>=1?(y=(o*S-1)*Math.pow(2,d),p=p+F):(y=o*Math.pow(2,F-1)*Math.pow(2,d),p=0));d>=8;n[s+z]=y&255,z+=W,y/=256,d-=8);for(p=p<<d|y,P+=d;P>0;n[s+z]=p&255,z+=W,p/=256,P-=8);n[s+z-W]|=lt*128}}}),require_pbf=__commonJS({"node_modules/pbf/index.js"(t,n){n.exports=s;var o=require_ieee754();function s(nt){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(nt)?nt:new Uint8Array(nt||0),this.pos=0,this.type=0,this.length=this.buf.length}s.Varint=0,s.Fixed64=1,s.Bytes=2,s.Fixed32=5;var c=65536*65536,d=1/c,h=12,p=typeof TextDecoder>"u"?null:new TextDecoder("utf8");s.prototype={destroy:function(){this.buf=null},readFields:function(nt,_i,ba){for(ba=ba||this.length;this.pos<ba;){var Sc=this.readVarint(),ms=Sc>>3,Xs=this.pos;this.type=Sc&7,nt(ms,_i,this),this.pos===Xs&&this.skip(Sc)}return _i},readMessage:function(nt,_i){return this.readFields(nt,_i,this.readVarint()+this.pos)},readFixed32:function(){var nt=Sa(this.buf,this.pos);return this.pos+=4,nt},readSFixed32:function(){var nt=La(this.buf,this.pos);return this.pos+=4,nt},readFixed64:function(){var nt=Sa(this.buf,this.pos)+Sa(this.buf,this.pos+4)*c;return this.pos+=8,nt},readSFixed64:function(){var nt=Sa(this.buf,this.pos)+La(this.buf,this.pos+4)*c;return this.pos+=8,nt},readFloat:function(){var nt=o.read(this.buf,this.pos,!0,23,4);return this.pos+=4,nt},readDouble:function(){var nt=o.read(this.buf,this.pos,!0,52,8);return this.pos+=8,nt},readVarint:function(nt){var _i=this.buf,ba,Sc;return Sc=_i[this.pos++],ba=Sc&127,Sc<128||(Sc=_i[this.pos++],ba|=(Sc&127)<<7,Sc<128)||(Sc=_i[this.pos++],ba|=(Sc&127)<<14,Sc<128)||(Sc=_i[this.pos++],ba|=(Sc&127)<<21,Sc<128)?ba:(Sc=_i[this.pos],ba|=(Sc&15)<<28,y(ba,nt,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var nt=this.readVarint();return nt%2===1?(nt+1)/-2:nt/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var nt=this.readVarint()+this.pos,_i=this.pos;return this.pos=nt,nt-_i>=h&&p?ma(this.buf,_i,nt):Ra(this.buf,_i,nt)},readBytes:function(){var nt=this.readVarint()+this.pos,_i=this.buf.subarray(this.pos,nt);return this.pos=nt,_i},readPackedVarint:function(nt,_i){if(this.type!==s.Bytes)return nt.push(this.readVarint(_i));var ba=S(this);for(nt=nt||[];this.pos<ba;)nt.push(this.readVarint(_i));return nt},readPackedSVarint:function(nt){if(this.type!==s.Bytes)return nt.push(this.readSVarint());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readSVarint());return nt},readPackedBoolean:function(nt){if(this.type!==s.Bytes)return nt.push(this.readBoolean());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readBoolean());return nt},readPackedFloat:function(nt){if(this.type!==s.Bytes)return nt.push(this.readFloat());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readFloat());return nt},readPackedDouble:function(nt){if(this.type!==s.Bytes)return nt.push(this.readDouble());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readDouble());return nt},readPackedFixed32:function(nt){if(this.type!==s.Bytes)return nt.push(this.readFixed32());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readFixed32());return nt},readPackedSFixed32:function(nt){if(this.type!==s.Bytes)return nt.push(this.readSFixed32());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readSFixed32());return nt},readPackedFixed64:function(nt){if(this.type!==s.Bytes)return nt.push(this.readFixed64());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readFixed64());return nt},readPackedSFixed64:function(nt){if(this.type!==s.Bytes)return nt.push(this.readSFixed64());var _i=S(this);for(nt=nt||[];this.pos<_i;)nt.push(this.readSFixed64());return nt},skip:function(nt){var _i=nt&7;if(_i===s.Varint)for(;this.buf[this.pos++]>127;);else if(_i===s.Bytes)this.pos=this.readVarint()+this.pos;else if(_i===s.Fixed32)this.pos+=4;else if(_i===s.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+_i)},writeTag:function(nt,_i){this.writeVarint(nt<<3|_i)},realloc:function(nt){for(var _i=this.length||16;_i<this.pos+nt;)_i*=2;if(_i!==this.length){var ba=new Uint8Array(_i);ba.set(this.buf),this.buf=ba,this.length=_i}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(nt){this.realloc(4),fa(this.buf,nt,this.pos),this.pos+=4},writeSFixed32:function(nt){this.realloc(4),fa(this.buf,nt,this.pos),this.pos+=4},writeFixed64:function(nt){this.realloc(8),fa(this.buf,nt&-1,this.pos),fa(this.buf,Math.floor(nt*d),this.pos+4),this.pos+=8},writeSFixed64:function(nt){this.realloc(8),fa(this.buf,nt&-1,this.pos),fa(this.buf,Math.floor(nt*d),this.pos+4),this.pos+=8},writeVarint:function(nt){if(nt=+nt||0,nt>268435455||nt<0){L(nt,this);return}this.realloc(4),this.buf[this.pos++]=nt&127|(nt>127?128:0),!(nt<=127)&&(this.buf[this.pos++]=(nt>>>=7)&127|(nt>127?128:0),!(nt<=127)&&(this.buf[this.pos++]=(nt>>>=7)&127|(nt>127?128:0),!(nt<=127)&&(this.buf[this.pos++]=nt>>>7&127)))},writeSVarint:function(nt){this.writeVarint(nt<0?-nt*2-1:nt*2)},writeBoolean:function(nt){this.writeVarint(!!nt)},writeString:function(nt){nt=String(nt),this.realloc(nt.length*4),this.pos++;var _i=this.pos;this.pos=yt(this.buf,nt,this.pos);var ba=this.pos-_i;ba>=128&&z(_i,ba,this),this.pos=_i-1,this.writeVarint(ba),this.pos+=ba},writeFloat:function(nt){this.realloc(4),o.write(this.buf,nt,this.pos,!0,23,4),this.pos+=4},writeDouble:function(nt){this.realloc(8),o.write(this.buf,nt,this.pos,!0,52,8),this.pos+=8},writeBytes:function(nt){var _i=nt.length;this.writeVarint(_i),this.realloc(_i);for(var ba=0;ba<_i;ba++)this.buf[this.pos++]=nt[ba]},writeRawMessage:function(nt,_i){this.pos++;var ba=this.pos;nt(_i,this);var Sc=this.pos-ba;Sc>=128&&z(ba,Sc,this),this.pos=ba-1,this.writeVarint(Sc),this.pos+=Sc},writeMessage:function(nt,_i,ba){this.writeTag(nt,s.Bytes),this.writeRawMessage(_i,ba)},writePackedVarint:function(nt,_i){_i.length&&this.writeMessage(nt,W,_i)},writePackedSVarint:function(nt,_i){_i.length&&this.writeMessage(nt,lt,_i)},writePackedBoolean:function(nt,_i){_i.length&&this.writeMessage(nt,mt,_i)},writePackedFloat:function(nt,_i){_i.length&&this.writeMessage(nt,Pe,_i)},writePackedDouble:function(nt,_i){_i.length&&this.writeMessage(nt,se,_i)},writePackedFixed32:function(nt,_i){_i.length&&this.writeMessage(nt,kt,_i)},writePackedSFixed32:function(nt,_i){_i.length&&this.writeMessage(nt,mn,_i)},writePackedFixed64:function(nt,_i){_i.length&&this.writeMessage(nt,pi,_i)},writePackedSFixed64:function(nt,_i){_i.length&&this.writeMessage(nt,zi,_i)},writeBytesField:function(nt,_i){this.writeTag(nt,s.Bytes),this.writeBytes(_i)},writeFixed32Field:function(nt,_i){this.writeTag(nt,s.Fixed32),this.writeFixed32(_i)},writeSFixed32Field:function(nt,_i){this.writeTag(nt,s.Fixed32),this.writeSFixed32(_i)},writeFixed64Field:function(nt,_i){this.writeTag(nt,s.Fixed64),this.writeFixed64(_i)},writeSFixed64Field:function(nt,_i){this.writeTag(nt,s.Fixed64),this.writeSFixed64(_i)},writeVarintField:function(nt,_i){this.writeTag(nt,s.Varint),this.writeVarint(_i)},writeSVarintField:function(nt,_i){this.writeTag(nt,s.Varint),this.writeSVarint(_i)},writeStringField:function(nt,_i){this.writeTag(nt,s.Bytes),this.writeString(_i)},writeFloatField:function(nt,_i){this.writeTag(nt,s.Fixed32),this.writeFloat(_i)},writeDoubleField:function(nt,_i){this.writeTag(nt,s.Fixed64),this.writeDouble(_i)},writeBooleanField:function(nt,_i){this.writeVarintField(nt,!!_i)}};function y(nt,_i,ba){var Sc=ba.buf,ms,Xs;if(Xs=Sc[ba.pos++],ms=(Xs&112)>>4,Xs<128||(Xs=Sc[ba.pos++],ms|=(Xs&127)<<3,Xs<128)||(Xs=Sc[ba.pos++],ms|=(Xs&127)<<10,Xs<128)||(Xs=Sc[ba.pos++],ms|=(Xs&127)<<17,Xs<128)||(Xs=Sc[ba.pos++],ms|=(Xs&127)<<24,Xs<128)||(Xs=Sc[ba.pos++],ms|=(Xs&1)<<31,Xs<128))return P(nt,ms,_i);throw new Error("Expected varint not more than 10 bytes")}function S(nt){return nt.type===s.Bytes?nt.readVarint()+nt.pos:nt.pos+1}function P(nt,_i,ba){return ba?_i*4294967296+(nt>>>0):(_i>>>0)*4294967296+(nt>>>0)}function L(nt,_i){var ba,Sc;if(nt>=0?(ba=nt%4294967296|0,Sc=nt/4294967296|0):(ba=~(-nt%4294967296),Sc=~(-nt/4294967296),ba^4294967295?ba=ba+1|0:(ba=0,Sc=Sc+1|0)),nt>=18446744073709552e3||nt<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");_i.realloc(10),F(ba,Sc,_i),N(Sc,_i)}function F(nt,_i,ba){ba.buf[ba.pos++]=nt&127|128,nt>>>=7,ba.buf[ba.pos++]=nt&127|128,nt>>>=7,ba.buf[ba.pos++]=nt&127|128,nt>>>=7,ba.buf[ba.pos++]=nt&127|128,nt>>>=7,ba.buf[ba.pos]=nt&127}function N(nt,_i){var ba=(nt&7)<<4;_i.buf[_i.pos++]|=ba|((nt>>>=3)?128:0),nt&&(_i.buf[_i.pos++]=nt&127|((nt>>>=7)?128:0),nt&&(_i.buf[_i.pos++]=nt&127|((nt>>>=7)?128:0),nt&&(_i.buf[_i.pos++]=nt&127|((nt>>>=7)?128:0),nt&&(_i.buf[_i.pos++]=nt&127|((nt>>>=7)?128:0),nt&&(_i.buf[_i.pos++]=nt&127)))))}function z(nt,_i,ba){var Sc=_i<=16383?1:_i<=2097151?2:_i<=268435455?3:Math.floor(Math.log(_i)/(Math.LN2*7));ba.realloc(Sc);for(var ms=ba.pos-1;ms>=nt;ms--)ba.buf[ms+Sc]=ba.buf[ms]}function W(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeVarint(nt[ba])}function lt(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeSVarint(nt[ba])}function Pe(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeFloat(nt[ba])}function se(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeDouble(nt[ba])}function mt(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeBoolean(nt[ba])}function kt(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeFixed32(nt[ba])}function mn(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeSFixed32(nt[ba])}function pi(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeFixed64(nt[ba])}function zi(nt,_i){for(var ba=0;ba<nt.length;ba++)_i.writeSFixed64(nt[ba])}function Sa(nt,_i){return(nt[_i]|nt[_i+1]<<8|nt[_i+2]<<16)+nt[_i+3]*16777216}function fa(nt,_i,ba){nt[ba]=_i,nt[ba+1]=_i>>>8,nt[ba+2]=_i>>>16,nt[ba+3]=_i>>>24}function La(nt,_i){return(nt[_i]|nt[_i+1]<<8|nt[_i+2]<<16)+(nt[_i+3]<<24)}function Ra(nt,_i,ba){for(var Sc="",ms=_i;ms<ba;){var Xs=nt[ms],pu=null,yu=Xs>239?4:Xs>223?3:Xs>191?2:1;if(ms+yu>ba)break;var Nl,Ru,Vd;yu===1?Xs<128&&(pu=Xs):yu===2?(Nl=nt[ms+1],(Nl&192)===128&&(pu=(Xs&31)<<6|Nl&63,pu<=127&&(pu=null))):yu===3?(Nl=nt[ms+1],Ru=nt[ms+2],(Nl&192)===128&&(Ru&192)===128&&(pu=(Xs&15)<<12|(Nl&63)<<6|Ru&63,(pu<=2047||pu>=55296&&pu<=57343)&&(pu=null))):yu===4&&(Nl=nt[ms+1],Ru=nt[ms+2],Vd=nt[ms+3],(Nl&192)===128&&(Ru&192)===128&&(Vd&192)===128&&(pu=(Xs&15)<<18|(Nl&63)<<12|(Ru&63)<<6|Vd&63,(pu<=65535||pu>=1114112)&&(pu=null))),pu===null?(pu=65533,yu=1):pu>65535&&(pu-=65536,Sc+=String.fromCharCode(pu>>>10&1023|55296),pu=56320|pu&1023),Sc+=String.fromCharCode(pu),ms+=yu}return Sc}function ma(nt,_i,ba){return p.decode(nt.subarray(_i,ba))}function yt(nt,_i,ba){for(var Sc=0,ms,Xs;Sc<_i.length;Sc++){if(ms=_i.charCodeAt(Sc),ms>55295&&ms<57344)if(Xs)if(ms<56320){nt[ba++]=239,nt[ba++]=191,nt[ba++]=189,Xs=ms;continue}else ms=Xs-55296<<10|ms-56320|65536,Xs=null;else{ms>56319||Sc+1===_i.length?(nt[ba++]=239,nt[ba++]=191,nt[ba++]=189):Xs=ms;continue}else Xs&&(nt[ba++]=239,nt[ba++]=191,nt[ba++]=189,Xs=null);ms<128?nt[ba++]=ms:(ms<2048?nt[ba++]=ms>>6|192:(ms<65536?nt[ba++]=ms>>12|224:(nt[ba++]=ms>>18|240,nt[ba++]=ms>>12&63|128),nt[ba++]=ms>>6&63|128),nt[ba++]=ms&63|128)}return ba}}}),require_rbush_min=__commonJS({"node_modules/rbush/rbush.min.js"(t,n){(function(o,s){typeof t=="object"&&typeof n<"u"?n.exports=s():typeof define=="function"&&define.amd?define(s):(o=o||self).RBush=s()})(t,function(){function o(se,mt,kt,mn,pi){(function zi(Sa,fa,La,Ra,ma){for(;Ra>La;){if(Ra-La>600){var yt=Ra-La+1,nt=fa-La+1,_i=Math.log(yt),ba=.5*Math.exp(2*_i/3),Sc=.5*Math.sqrt(_i*ba*(yt-ba)/yt)*(nt-yt/2<0?-1:1),ms=Math.max(La,Math.floor(fa-nt*ba/yt+Sc)),Xs=Math.min(Ra,Math.floor(fa+(yt-nt)*ba/yt+Sc));zi(Sa,fa,ms,Xs,ma)}var pu=Sa[fa],yu=La,Nl=Ra;for(s(Sa,La,fa),ma(Sa[Ra],pu)>0&&s(Sa,La,Ra);yu<Nl;){for(s(Sa,yu,Nl),yu++,Nl--;ma(Sa[yu],pu)<0;)yu++;for(;ma(Sa[Nl],pu)>0;)Nl--}ma(Sa[La],pu)===0?s(Sa,La,Nl):s(Sa,++Nl,Ra),Nl<=fa&&(La=Nl+1),fa<=Nl&&(Ra=Nl-1)}})(se,mt,kt||0,mn||se.length-1,pi||c)}function s(se,mt,kt){var mn=se[mt];se[mt]=se[kt],se[kt]=mn}function c(se,mt){return se<mt?-1:se>mt?1:0}var d=function(se){se===void 0&&(se=9),this._maxEntries=Math.max(4,se),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),this.clear()};function h(se,mt,kt){if(!kt)return mt.indexOf(se);for(var mn=0;mn<mt.length;mn++)if(kt(se,mt[mn]))return mn;return-1}function p(se,mt){y(se,0,se.children.length,mt,se)}function y(se,mt,kt,mn,pi){pi||(pi=lt(null)),pi.minX=1/0,pi.minY=1/0,pi.maxX=-1/0,pi.maxY=-1/0;for(var zi=mt;zi<kt;zi++){var Sa=se.children[zi];S(pi,se.leaf?mn(Sa):Sa)}return pi}function S(se,mt){return se.minX=Math.min(se.minX,mt.minX),se.minY=Math.min(se.minY,mt.minY),se.maxX=Math.max(se.maxX,mt.maxX),se.maxY=Math.max(se.maxY,mt.maxY),se}function P(se,mt){return se.minX-mt.minX}function L(se,mt){return se.minY-mt.minY}function F(se){return(se.maxX-se.minX)*(se.maxY-se.minY)}function N(se){return se.maxX-se.minX+(se.maxY-se.minY)}function z(se,mt){return se.minX<=mt.minX&&se.minY<=mt.minY&&mt.maxX<=se.maxX&&mt.maxY<=se.maxY}function W(se,mt){return mt.minX<=se.maxX&&mt.minY<=se.maxY&&mt.maxX>=se.minX&&mt.maxY>=se.minY}function lt(se){return{children:se,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function Pe(se,mt,kt,mn,pi){for(var zi=[mt,kt];zi.length;)if(!((kt=zi.pop())-(mt=zi.pop())<=mn)){var Sa=mt+Math.ceil((kt-mt)/mn/2)*mn;o(se,Sa,mt,kt,pi),zi.push(mt,Sa,Sa,kt)}}return d.prototype.all=function(){return this._all(this.data,[])},d.prototype.search=function(se){var mt=this.data,kt=[];if(!W(se,mt))return kt;for(var mn=this.toBBox,pi=[];mt;){for(var zi=0;zi<mt.children.length;zi++){var Sa=mt.children[zi],fa=mt.leaf?mn(Sa):Sa;W(se,fa)&&(mt.leaf?kt.push(Sa):z(se,fa)?this._all(Sa,kt):pi.push(Sa))}mt=pi.pop()}return kt},d.prototype.collides=function(se){var mt=this.data;if(!W(se,mt))return!1;for(var kt=[];mt;){for(var mn=0;mn<mt.children.length;mn++){var pi=mt.children[mn],zi=mt.leaf?this.toBBox(pi):pi;if(W(se,zi)){if(mt.leaf||z(se,zi))return!0;kt.push(pi)}}mt=kt.pop()}return!1},d.prototype.load=function(se){if(!se||!se.length)return this;if(se.length<this._minEntries){for(var mt=0;mt<se.length;mt++)this.insert(se[mt]);return this}var kt=this._build(se.slice(),0,se.length-1,0);if(this.data.children.length)if(this.data.height===kt.height)this._splitRoot(this.data,kt);else{if(this.data.height<kt.height){var mn=this.data;this.data=kt,kt=mn}this._insert(kt,this.data.height-kt.height-1,!0)}else this.data=kt;return this},d.prototype.insert=function(se){return se&&this._insert(se,this.data.height-1),this},d.prototype.clear=function(){return this.data=lt([]),this},d.prototype.remove=function(se,mt){if(!se)return this;for(var kt,mn,pi,zi=this.data,Sa=this.toBBox(se),fa=[],La=[];zi||fa.length;){if(zi||(zi=fa.pop(),mn=fa[fa.length-1],kt=La.pop(),pi=!0),zi.leaf){var Ra=h(se,zi.children,mt);if(Ra!==-1)return zi.children.splice(Ra,1),fa.push(zi),this._condense(fa),this}pi||zi.leaf||!z(zi,Sa)?mn?(kt++,zi=mn.children[kt],pi=!1):zi=null:(fa.push(zi),La.push(kt),kt=0,mn=zi,zi=zi.children[0])}return this},d.prototype.toBBox=function(se){return se},d.prototype.compareMinX=function(se,mt){return se.minX-mt.minX},d.prototype.compareMinY=function(se,mt){return se.minY-mt.minY},d.prototype.toJSON=function(){return this.data},d.prototype.fromJSON=function(se){return this.data=se,this},d.prototype._all=function(se,mt){for(var kt=[];se;)se.leaf?mt.push.apply(mt,se.children):kt.push.apply(kt,se.children),se=kt.pop();return mt},d.prototype._build=function(se,mt,kt,mn){var pi,zi=kt-mt+1,Sa=this._maxEntries;if(zi<=Sa)return p(pi=lt(se.slice(mt,kt+1)),this.toBBox),pi;mn||(mn=Math.ceil(Math.log(zi)/Math.log(Sa)),Sa=Math.ceil(zi/Math.pow(Sa,mn-1))),(pi=lt([])).leaf=!1,pi.height=mn;var fa=Math.ceil(zi/Sa),La=fa*Math.ceil(Math.sqrt(Sa));Pe(se,mt,kt,La,this.compareMinX);for(var Ra=mt;Ra<=kt;Ra+=La){var ma=Math.min(Ra+La-1,kt);Pe(se,Ra,ma,fa,this.compareMinY);for(var yt=Ra;yt<=ma;yt+=fa){var nt=Math.min(yt+fa-1,ma);pi.children.push(this._build(se,yt,nt,mn-1))}}return p(pi,this.toBBox),pi},d.prototype._chooseSubtree=function(se,mt,kt,mn){for(;mn.push(mt),!mt.leaf&&mn.length-1!==kt;){for(var pi=1/0,zi=1/0,Sa=void 0,fa=0;fa<mt.children.length;fa++){var La=mt.children[fa],Ra=F(La),ma=(yt=se,nt=La,(Math.max(nt.maxX,yt.maxX)-Math.min(nt.minX,yt.minX))*(Math.max(nt.maxY,yt.maxY)-Math.min(nt.minY,yt.minY))-Ra);ma<zi?(zi=ma,pi=Ra<pi?Ra:pi,Sa=La):ma===zi&&Ra<pi&&(pi=Ra,Sa=La)}mt=Sa||mt.children[0]}var yt,nt;return mt},d.prototype._insert=function(se,mt,kt){var mn=kt?se:this.toBBox(se),pi=[],zi=this._chooseSubtree(mn,this.data,mt,pi);for(zi.children.push(se),S(zi,mn);mt>=0&&pi[mt].children.length>this._maxEntries;)this._split(pi,mt),mt--;this._adjustParentBBoxes(mn,pi,mt)},d.prototype._split=function(se,mt){var kt=se[mt],mn=kt.children.length,pi=this._minEntries;this._chooseSplitAxis(kt,pi,mn);var zi=this._chooseSplitIndex(kt,pi,mn),Sa=lt(kt.children.splice(zi,kt.children.length-zi));Sa.height=kt.height,Sa.leaf=kt.leaf,p(kt,this.toBBox),p(Sa,this.toBBox),mt?se[mt-1].children.push(Sa):this._splitRoot(kt,Sa)},d.prototype._splitRoot=function(se,mt){this.data=lt([se,mt]),this.data.height=se.height+1,this.data.leaf=!1,p(this.data,this.toBBox)},d.prototype._chooseSplitIndex=function(se,mt,kt){for(var mn,pi,zi,Sa,fa,La,Ra,ma=1/0,yt=1/0,nt=mt;nt<=kt-mt;nt++){var _i=y(se,0,nt,this.toBBox),ba=y(se,nt,kt,this.toBBox),Sc=(pi=_i,zi=ba,Sa=void 0,fa=void 0,La=void 0,Ra=void 0,Sa=Math.max(pi.minX,zi.minX),fa=Math.max(pi.minY,zi.minY),La=Math.min(pi.maxX,zi.maxX),Ra=Math.min(pi.maxY,zi.maxY),Math.max(0,La-Sa)*Math.max(0,Ra-fa)),ms=F(_i)+F(ba);Sc<ma?(ma=Sc,mn=nt,yt=ms<yt?ms:yt):Sc===ma&&ms<yt&&(yt=ms,mn=nt)}return mn||kt-mt},d.prototype._chooseSplitAxis=function(se,mt,kt){var mn=se.leaf?this.compareMinX:P,pi=se.leaf?this.compareMinY:L;this._allDistMargin(se,mt,kt,mn)<this._allDistMargin(se,mt,kt,pi)&&se.children.sort(mn)},d.prototype._allDistMargin=function(se,mt,kt,mn){se.children.sort(mn);for(var pi=this.toBBox,zi=y(se,0,mt,pi),Sa=y(se,kt-mt,kt,pi),fa=N(zi)+N(Sa),La=mt;La<kt-mt;La++){var Ra=se.children[La];S(zi,se.leaf?pi(Ra):Ra),fa+=N(zi)}for(var ma=kt-mt-1;ma>=mt;ma--){var yt=se.children[ma];S(Sa,se.leaf?pi(yt):yt),fa+=N(Sa)}return fa},d.prototype._adjustParentBBoxes=function(se,mt,kt){for(var mn=kt;mn>=0;mn--)S(mt[mn],se)},d.prototype._condense=function(se){for(var mt=se.length-1,kt=void 0;mt>=0;mt--)se[mt].children.length===0?mt>0?(kt=se[mt-1].children).splice(kt.indexOf(se[mt]),1):this.clear():p(se[mt],this.toBBox)},d})}}),require_unitbezier_d=__commonJS({"src/types/unitbezier.d.ts"(){}}),require_tinyqueue=__commonJS({"node_modules/tinyqueue/tinyqueue.js"(t,n){(function(o,s){typeof t=="object"&&typeof n<"u"?n.exports=s():typeof define=="function"&&define.amd?define(s):(o=o||self,o.TinyQueue=s())})(t,function(){var o=function(d,h){if(d===void 0&&(d=[]),h===void 0&&(h=s),this.data=d,this.length=this.data.length,this.compare=h,this.length>0)for(var p=(this.length>>1)-1;p>=0;p--)this._down(p)};o.prototype.push=function(d){this.data.push(d),this.length++,this._up(this.length-1)},o.prototype.pop=function(){if(this.length!==0){var d=this.data[0],h=this.data.pop();return this.length--,this.length>0&&(this.data[0]=h,this._down(0)),d}},o.prototype.peek=function(){return this.data[0]},o.prototype._up=function(d){for(var h=this,p=h.data,y=h.compare,S=p[d];d>0;){var P=d-1>>1,L=p[P];if(y(S,L)>=0)break;p[d]=L,d=P}p[d]=S},o.prototype._down=function(d){for(var h=this,p=h.data,y=h.compare,S=this.length>>1,P=p[d];d<S;){var L=(d<<1)+1,F=p[L],N=L+1;if(N<this.length&&y(p[N],F)<0&&(L=N,F=p[N]),y(F,P)>=0)break;p[d]=F,d=L}p[d]=P};function s(c,d){return c<d?-1:c>d?1:0}return o})}}),require_polylabel=__commonJS({"node_modules/polylabel/polylabel.js"(t,n){var o=require_tinyqueue();o.default&&(o=o.default),n.exports=s,n.exports.default=s;function s(S,P,L){P=P||1;for(var F,N,z,W,lt=0;lt<S[0].length;lt++){var Pe=S[0][lt];(!lt||Pe[0]<F)&&(F=Pe[0]),(!lt||Pe[1]<N)&&(N=Pe[1]),(!lt||Pe[0]>z)&&(z=Pe[0]),(!lt||Pe[1]>W)&&(W=Pe[1])}var se=z-F,mt=W-N,kt=Math.min(se,mt),mn=kt/2;if(kt===0){var pi=[F,N];return pi.distance=0,pi}for(var zi=new o(void 0,c),Sa=F;Sa<z;Sa+=kt)for(var fa=N;fa<W;fa+=kt)zi.push(new d(Sa+mn,fa+mn,mn,S));var La=p(S),Ra=new d(F+se/2,N+mt/2,0,S);Ra.d>La.d&&(La=Ra);for(var ma=zi.length;zi.length;){var yt=zi.pop();yt.d>La.d&&(La=yt,L&&console.log("found best %d after %d probes",Math.round(1e4*yt.d)/1e4,ma)),!(yt.max-La.d<=P)&&(mn=yt.h/2,zi.push(new d(yt.x-mn,yt.y-mn,mn,S)),zi.push(new d(yt.x+mn,yt.y-mn,mn,S)),zi.push(new d(yt.x-mn,yt.y+mn,mn,S)),zi.push(new d(yt.x+mn,yt.y+mn,mn,S)),ma+=4)}L&&(console.log("num probes: "+ma),console.log("best distance: "+La.d));var nt=[La.x,La.y];return nt.distance=La.d,nt}function c(S,P){return P.max-S.max}function d(S,P,L,F){this.x=S,this.y=P,this.h=L,this.d=h(S,P,F),this.max=this.d+this.h*Math.SQRT2}function h(S,P,L){for(var F=!1,N=1/0,z=0;z<L.length;z++)for(var W=L[z],lt=0,Pe=W.length,se=Pe-1;lt<Pe;se=lt++){var mt=W[lt],kt=W[se];mt[1]>P!=kt[1]>P&&S<(kt[0]-mt[0])*(P-mt[1])/(kt[1]-mt[1])+mt[0]&&(F=!F),N=Math.min(N,y(S,P,mt,kt))}return N===0?0:(F?1:-1)*Math.sqrt(N)}function p(S){for(var P=0,L=0,F=0,N=S[0],z=0,W=N.length,lt=W-1;z<W;lt=z++){var Pe=N[z],se=N[lt],mt=Pe[0]*se[1]-se[0]*Pe[1];L+=(Pe[0]+se[0])*mt,F+=(Pe[1]+se[1])*mt,P+=mt*3}return P===0?new d(N[0][0],N[0][1],0,S):new d(L/P,F/P,0,S)}function y(S,P,L,F){var N=L[0],z=L[1],W=F[0]-N,lt=F[1]-z;if(W!==0||lt!==0){var Pe=((S-N)*W+(P-z)*lt)/(W*W+lt*lt);Pe>1?(N=F[0],z=F[1]):Pe>0&&(N+=W*Pe,z+=lt*Pe)}return W=S-N,lt=P-z,W*W+lt*lt}}});__toModule(require_point_geometry()),__toModule(require_point_geometry());var import_point_geometry=__toModule(require_point_geometry()),import_vector_tile=__toModule(require_vector_tile()),import_pbf=__toModule(require_pbf()),u8=Uint8Array,u16=Uint16Array,u32=Uint32Array,fleb=new u8([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),fdeb=new u8([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),freb=function(t,n){for(var o=new u16(31),s=0;s<31;++s)o[s]=n+=1<<t[s-1];for(var c=new u32(o[30]),s=1;s<30;++s)for(var d=o[s];d<o[s+1];++d)c[d]=d-o[s]<<5|s;return[o,c]},_a$1=freb(fleb,2),fl$1=_a$1[0],revfl=_a$1[1];fl$1[28]=258,revfl[258]=28,freb(fdeb,0);var rev=new u16(32768);for(i=0;i<32768;++i)x=(i&43690)>>>1|(i&21845)<<1,x=(x&52428)>>>2|(x&13107)<<2,x=(x&61680)>>>4|(x&3855)<<4,rev[i]=((x&65280)>>>8|(x&255)<<8)>>>1;var x,i,flt=new u8(288);for(i=0;i<144;++i)flt[i]=8;var i;for(i=144;i<256;++i)flt[i]=9;var i;for(i=256;i<280;++i)flt[i]=7;var i;for(i=280;i<288;++i)flt[i]=8;var i,fdt=new u8(32);for(i=0;i<32;++i)fdt[i]=5;var i,et$1=new u8(0),td$1=typeof TextDecoder<"u"&&new TextDecoder,tds=0;try{td$1.decode(et$1,{stream:!0}),tds=1}catch(t){}var GeomType;(function(t){t[t.Point=1]="Point",t[t.Line=2]="Line",t[t.Polygon=3]="Polygon"})(GeomType||(GeomType={}));function toIndex(t){return t.x+":"+t.y+":"+t.z}var loadGeomAndBbox=(t,n,o)=>{t.pos=n;for(var s=t.readVarint()+t.pos,c=1,d=0,h=0,p=0,y=1/0,S=-1/0,P=1/0,L=-1/0,F=[],N=[];t.pos<s;){if(d<=0){var z=t.readVarint();c=z&7,d=z>>3}if(d--,c===1||c===2)h+=t.readSVarint()*o,p+=t.readSVarint()*o,h<y&&(y=h),h>S&&(S=h),p<P&&(P=p),p>L&&(L=p),c===1&&(N.length>0&&F.push(N),N=[]),N.push(new import_point_geometry.default(h,p));else if(c===7)N&&N.push(N[0].clone());else throw new Error("unknown command "+c)}return N&&F.push(N),{geom:F,bbox:{minX:y,minY:P,maxX:S,maxY:L}}};function parseTile(t,n){let o=new import_vector_tile.VectorTile(new import_pbf.default(t)),s=new Map;for(let[c,d]of Object.entries(o.layers)){let h=[],p=d;for(let y=0;y<p.length;y++){let S=loadGeomAndBbox(p.feature(y)._pbf,p.feature(y)._geometry,n/p.extent),P=0;for(let L of S.geom)P+=L.length;h.push({id:p.feature(y).id,geomType:p.feature(y).type,geom:S.geom,numVertices:P,bbox:S.bbox,props:p.feature(y).properties})}s.set(c,h)}return s}var ZxySource=class{constructor(t,n){this.url=t,this.controllers=[],this.shouldCancelZooms=n}get(t,n){return __async(this,null,function*(){this.shouldCancelZooms&&(this.controllers=this.controllers.filter(d=>d[0]!=t.z?(d[1].abort(),!1):!0));let o=this.url.replace("{z}",t.z.toString()).replace("{x}",t.x.toString()).replace("{y}",t.y.toString());const s=new AbortController;this.controllers.push([t.z,s]);const c=s.signal;return new Promise((d,h)=>{fetch(o,{signal:c}).then(p=>p.arrayBuffer()).then(p=>{let y=parseTile(p,n);d(y)}).catch(p=>{h(p)})})})}},R=6378137,MAX_LATITUDE=85.0511287798,MAXCOORD=R*Math.PI,project=t=>{let n=Math.PI/180,o=Math.max(Math.min(MAX_LATITUDE,t[0]),-85.0511287798),s=Math.sin(o*n);return new import_point_geometry.default(R*t[1]*n,R*Math.log((1+s)/(1-s))/2)};function sqr(t){return t*t}function dist2(t,n){return sqr(t.x-n.x)+sqr(t.y-n.y)}function distToSegmentSquared(t,n,o){var s=dist2(n,o);if(s===0)return dist2(t,n);var c=((t.x-n.x)*(o.x-n.x)+(t.y-n.y)*(o.y-n.y))/s;return c=Math.max(0,Math.min(1,c)),dist2(t,new import_point_geometry.default(n.x+c*(o.x-n.x),n.y+c*(o.y-n.y)))}function isInRing(t,n){for(var o=!1,s=0,c=n.length-1;s<n.length;c=s++){var d=n[s].x,h=n[s].y,p=n[c].x,y=n[c].y,S=h>t.y!=y>t.y&&t.x<(p-d)*(t.y-h)/(y-h)+d;S&&(o=!o)}return o}function isCCW(t){for(var n=0,o=0;o<t.length;o++){let s=(o+1)%t.length;n+=t[o].x*t[s].y,n-=t[s].x*t[o].y}return n<0}function pointInPolygon(t,n){var o=!1;for(let s of n)if(isCCW(s))isInRing(t,s)&&(o=!1);else{if(o)return!0;isInRing(t,s)&&(o=!0)}return o}function pointMinDistToPoints(t,n){let o=1/0;for(let s of n){let c=Math.sqrt(dist2(t,s[0]));c<o&&(o=c)}return o}function pointMinDistToLines(t,n){let o=1/0;for(let c of n)for(var s=0;s<c.length-1;s++){let d=Math.sqrt(distToSegmentSquared(t,c[s],c[s+1]));d<o&&(o=d)}return o}var TileCache=class{constructor(t,n){this.source=t,this.cache=new Map,this.inflight=new Map,this.tileSize=n}queryFeatures(t,n,o,s){let c=project([n,t]);var d=new import_point_geometry.default((c.x+MAXCOORD)/(MAXCOORD*2),1-(c.y+MAXCOORD)/(MAXCOORD*2));d.x>1&&(d.x=d.x-Math.floor(d.x));let h=d.mult(1<<o),p=Math.floor(h.x),y=Math.floor(h.y);const S=toIndex({z:o,x:p,y});let P=[],L=this.cache.get(S);if(L){const F=new import_point_geometry.default((h.x-p)*this.tileSize,(h.y-y)*this.tileSize);for(let[N,z]of L.data.entries())for(let W of z)W.geomType==1?pointMinDistToPoints(F,W.geom)<s&&P.push({feature:W,layerName:N}):W.geomType==2?pointMinDistToLines(F,W.geom)<s&&P.push({feature:W,layerName:N}):pointInPolygon(F,W.geom)&&P.push({feature:W,layerName:N})}return P}get(t){return __async(this,null,function*(){const n=toIndex(t);return new Promise((o,s)=>{let c=this.cache.get(n);if(c)c.used=performance.now(),o(c.data);else{let d=this.inflight.get(n);d?d.push([o,s]):(this.inflight.set(n,[]),this.source.get(t,this.tileSize).then(h=>{this.cache.set(n,{used:performance.now(),data:h});let p=this.inflight.get(n);if(p&&p.forEach(y=>y[0](h)),this.inflight.delete(n),o(h),this.cache.size>=64){let y=1/0,S;this.cache.forEach((P,L)=>{P.used<y&&(y=P.used,S=L)}),S&&this.cache.delete(S)}}).catch(h=>{let p=this.inflight.get(n);p&&p.forEach(y=>y[1](h)),this.inflight.delete(n),s(h)}))}})})}};__toModule(require_point_geometry()),__toModule(require_point_geometry()),__toModule(require_rbush_min());var e=t=>parseInt(t.replace(/_/g,""),36);"1q29ehhb 1n09sgk7 1kl1ekf_ _yl4zsno 16z9eiv3 1p29lhp8 _bd9zg04 17u0____ _iw9zhe5 _to73___ _r45e31e _7l6g016 _jh8ouiv _zn3qba8 1jy4zshs 11u87k0u 1ro9yvyo 1aj3xael 1gz9zjz0 _3w8l4xo 1bf1ekf_ _ke3v___ _4rrkb__ 13j776yz _646mbhl _nrjr4__ _le6mbhl 1n37ehkb _m75f91n _qj3bzfz 1939yygw 11i5z6x8 _1k5f8xs 1509441m 15t5lwgf _ae2th1n _tg1ugcv 1lp1ugcv 16e14up_ _h55rw7n _ny9yavn _7a11xb_ 1ih442g9 _pv442g9 1mv16xof 14e6y7tu 1oo9zkds 17d1cisi _4v9y70f _y98m8kc 1019pq0v 12o9zda8 _348j4f4 1et50i2o _8epa8__ _ts6senj 1o350i2o 1mi9eiuo 1259yrp0 1ln80gnw _632xcoy 1cn9zldc _f29edu4 1n490c8q _9f9ziet 1b94vk74 _m49zkct 1kz6s73a 1eu9dtog _q58s1rz 1dy9sjiq __u89jo3 _aj5nkwg _ld89jo3 13h9z6wx _qa9z2ii _l119xgq _bs5arju 1hj4nwk9 1qt4nwk9 1ge6wau6 14j9zlcw 11p1edc_ _ms1zcxe _439shk6 _jt9y70f _754zsow 1la40eju _oq5p___ _x279qkz 1fa5r3rv _yd2d9ip _424tcku _8y1di2_ _zi2uabw _yy7rn9h 12yz980_ __39ljp6 1b59zg0x _n39zfzp 1fy9zest _b33k___ _hp9wq92 1il50hz4 _io472ub _lj9z3eo 19z9ykg0 _8t8iu3a 12b9bl4a 1ak5yw0o _896v4ku _tb8k8lv _s59zi6t _c09ze0p 1lg80oqn 1id9z8wb _238nba5 1kq6wgdi _154zssg _tn3zk49 _da9y6tc 1sg7cv4f _r12jvtt 1gq5fmkz 1cs9rvci _lp9jn1c _xw1tdnb 13f9zje6 16f6973h _vo7ir40 _bt5arjf _rc45e4t _hr4e100 10v4e100 _hc9zke2 _w91egv_ _sj2r1kk 13c87yx8 _vqpds__ _ni8ggk8 _tj9yqfb 1ia2j4r4 _7x9b10u 1fc9ld4j 1eq9zldr _5j9lhpx _ez9zl6o _md61fzm".split(" ").reduce((t,n)=>{const o=e(n.substring(0,3)),s=e(n.substring(3)).toString(16);let c="";for(let d=0;d<6-s.length;d++)c+="0";return t[o]=`${c}${s}`,t},{});var _$1=(t,n)=>Array.from(Array(n)).map(()=>t).join("");new RegExp(`^#${_$1("([a-f0-9])",3)}([a-f0-9])?$`,"i"),new RegExp(`^#${_$1("([a-f0-9]{2})",3)}([a-f0-9]{2})?$`,"i"),new RegExp(`^rgba?\\(\\s*(\\d+)\\s*${_$1(",\\s*(\\d+)\\s*",2)}(?:,\\s*([\\d.]+))?\\s*\\)$`,"i"),__toModule(require_point_geometry()),__toModule(require_unitbezier_d()),__toModule(require_polylabel()),__toModule(require_point_geometry());var Justify;(function(t){t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"})(Justify||(Justify={}));var TextPlacements;(function(t){t[t.N=1]="N",t[t.NE=2]="NE",t[t.E=3]="E",t[t.SE=4]="SE",t[t.S=5]="S",t[t.SW=6]="SW",t[t.W=7]="W",t[t.NW=8]="NW"})(TextPlacements||(TextPlacements={}));var LineLabelPlacement;(function(t){t[t.Above=1]="Above",t[t.Center=2]="Center",t[t.Below=3]="Below"})(LineLabelPlacement||(LineLabelPlacement={})),__toModule(require_point_geometry());/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */function makeKey({x:t,y:n,level:o}){return`${o}:${t}:${n}`}function getTileCoords(t,n){if(n!=null&&t.level>n){const o=2**(t.level-n);return{x:Math.floor(t.x/o),y:Math.floor(t.y/o),z:n}}return{x:t.x,y:t.y,z:t.level}}class JapanGSIOptimalBVmapImageryProviderBase{constructor(n){Ef(this,"defaultAlpha");Ef(this,"defaultNightAlpha");Ef(this,"defaultDayAlpha");Ef(this,"defaultBrightness");Ef(this,"defaultContrast");Ef(this,"defaultHue");Ef(this,"defaultSaturation");Ef(this,"defaultGamma");Ef(this,"defaultMinificationFilter");Ef(this,"defaultMagnificationFilter");Ef(this,"ready",!0);Ef(this,"readyPromise",Promise.resolve(!0));Ef(this,"tileWidth",256);Ef(this,"tileHeight",256);Ef(this,"maximumLevel");Ef(this,"minimumLevel",0);Ef(this,"tilingScheme",new WebMercatorTilingScheme);Ef(this,"rectangle",this.tilingScheme.rectangle);Ef(this,"tileDiscardPolicy");Ef(this,"errorEvent",new Event$1);Ef(this,"credit");Ef(this,"proxy");Ef(this,"hasAlphaChannel",!0);(n==null?void 0:n.tilingScheme)!=null&&(this.tilingScheme=n.tilingScheme),(n==null?void 0:n.tileWidth)!=null&&(this.tileWidth=n.tileWidth),(n==null?void 0:n.tileHeight)!=null&&(this.tileHeight=n.tileHeight)}getTileCredits(n,o,s){}requestImage(n,o,s,c){}pickFeatures(n,o,s,c,d){}get _ready(){return this.ready}get _readyPromise(){return this.readyPromise}}class JapanGSIOptimalBVmapLabelImageryProvider extends JapanGSIOptimalBVmapImageryProviderBase{constructor(o){super(o);Ef(this,"minimumDataLevel");Ef(this,"maximumDataLevel");Ef(this,"tileCache");Ef(this,"image");Ef(this,"discardedTileCoords",new Set);this.tileDiscardPolicy=new DiscardEmptyTileImagePolicy,this.minimumDataLevel=o.minimumDataLevel,this.maximumDataLevel=o.maximumDataLevel;const s=new ZxySource(o.url,!1);this.tileCache=new TileCache(s,1024),this.image=document.createElement("canvas"),this.image.width=1,this.image.height=1}requestImage(o,s,c,d){const h=makeKey({x:o,y:s,level:c});return(async()=>c<this.minimumDataLevel||this.discardedTileCoords.has(h)?DiscardEmptyTileImagePolicy.EMPTY_IMAGE:(await this.tileCache.get(getTileCoords({x:o,y:s,level:c},this.maximumDataLevel)),this.image))().catch(()=>(this.discardedTileCoords.add(h),DiscardEmptyTileImagePolicy.EMPTY_IMAGE))}}const tiles={default:({cesiumIonAccessToken:t}={})=>Cesium$1.IonImageryProvider.fromAssetId(Cesium$1.IonWorldImageryStyle.AERIAL,{accessToken:t}).catch(console.error),default_label:({cesiumIonAccessToken:t}={})=>Cesium$1.IonImageryProvider.fromAssetId(Cesium$1.IonWorldImageryStyle.AERIAL_WITH_LABELS,{accessToken:t}).catch(console.error),default_road:({cesiumIonAccessToken:t}={})=>Cesium$1.IonImageryProvider.fromAssetId(Cesium$1.IonWorldImageryStyle.ROAD,{accessToken:t}).catch(console.error),open_street_map:()=>new Cesium$1.OpenStreetMapImageryProvider({url:"https://a.tile.openstreetmap.org/",credit:"Copyright: Tiles © Esri — Source: Esri, DeLorme, NAVTEQ, USGS, Intermap, iPC, NRCAN, Esri Japan, METI, Esri China (Hong Kong), Esri (Thailand), TomTom, 2012"}),esri_world_topo:()=>Cesium$1.ArcGisMapServerImageryProvider.fromUrl("https://services.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer",{credit:"Copyright: Tiles © Esri — Esri, DeLorme, NAVTEQ, TomTom, Intermap, iPC, USGS, FAO, NPS, NRCAN, GeoBase, Kadaster NL, Ordnance Survey, Esri Japan, METI, Esri China (Hong Kong), and the GIS User Communit",enablePickFeatures:!1}).catch(console.error),black_marble:({cesiumIonAccessToken:t}={})=>Cesium$1.IonImageryProvider.fromAssetId(3812,{accessToken:t}).catch(console.error),japan_gsi_standard:()=>new Cesium$1.OpenStreetMapImageryProvider({url:"https://cyberjapandata.gsi.go.jp/xyz/std/"}),url:({url:t,heatmap:n,tile_zoomLevel:o}={})=>t?new Cesium$1.UrlTemplateImageryProvider({url:t,tileDiscardPolicy:n?new Cesium$1.DiscardEmptyTileImagePolicy:void 0,minimumLevel:o==null?void 0:o[0],maximumLevel:o==null?void 0:o[1]}):null};function ImageryLayers({tiles:t,cesiumIonAccessToken:n,onTilesChange:o}){const{providers:s,updated:c}=useImageryProviders({tiles:t,cesiumIonAccessToken:n,presets:tiles}),[d,h]=React.useState(0);return React.useLayoutEffect(()=>{c&&h(p=>p+1)},[s,c]),React.useEffect(()=>{o==null||o()},[t,d,o]),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:t==null?void 0:t.map(({id:p,...y})=>{var S;return{...y,id:p,provider:(S=s[p])==null?void 0:S[2]}}).map(({id:p,opacity:y,zoomLevel:S,provider:P,heatmap:L},F)=>P?jsxRuntimeExports.jsx(Ns$1,{imageryProvider:P,minimumTerrainLevel:S==null?void 0:S[0],maximumTerrainLevel:S==null?void 0:S[1],alpha:y,index:F,colorToAlpha:L?Cesium$1.Color.WHITE:void 0,colorToAlphaThreshold:L?1:void 0,magnificationFilter:L?Cesium$1.TextureMagnificationFilter.LINEAR:void 0,minificationFilter:L?Cesium$1.TextureMinificationFilter.NEAREST:void 0},`${p}_${F}_${d}`):null)})}function useImageryProviders({tiles:t=[],cesiumIonAccessToken:n,presets:o}){const s=React.useCallback((F,N)=>o[F.type||"default"]({url:F.url,cesiumIonAccessToken:N,heatmap:F.heatmap,zoomLevel:F.zoomLevelForURL}),[o]),c=React.useRef(n),d=t.map(F=>F.id).join(","),h=React.useRef(d),p=React.useRef({}),y=React.useMemo(()=>t.map(F=>{if(F.id&&F.zoomLevel)return{[F.id]:F.zoomLevel}}),[t]),S=React.useRef(y),{providers:P,updated:L}=React.useMemo(()=>{const F=c.current!==n,N=Object.keys(p.current),z=t.map(se=>se.id).filter(se=>se&&!N.includes(se)),W=[...Object.entries(p.current),...z.map(se=>[se,void 0])].map(([se,mt])=>({key:se,added:z.includes(se),prevType:mt==null?void 0:mt[0],prevUrl:mt==null?void 0:mt[1],prevProvider:mt==null?void 0:mt[2],tile:t.find(kt=>kt.id===se)})),lt=Object.fromEntries(W.map(({key:se,added:mt,prevType:kt,prevUrl:mn,prevProvider:pi,tile:zi})=>zi?[se,mt||kt!==zi.type||mn!==zi.url||F&&(!zi.type||zi.type==="default")?[zi.type,zi.url,s(zi,n)]:[kt,mn,pi]]:null).filter(se=>!!(se!=null&&se[1][2]))),Pe=!!z.length||!!F||!isEqual(h.current,d)||!isEqual(S.current,y)||W.some(se=>se.tile&&(se.prevType!==se.tile.type||se.prevUrl!==se.tile.url));return h.current=d,S.current=y,c.current=n,{providers:lt,updated:Pe}},[n,t,d,s,y]);return p.current=P,{providers:P,updated:L}}const useTransition=(t,n,o)=>{const[s,c]=React.useState(t?"entered":o&&o.mountOnEnter?"unmounted":"exited"),d=React.useRef(),h=React.useRef(),p=React.useCallback(()=>{c(t?"entered":o&&o.unmountOnExit?"unmounted":"exited"),h.current=void 0},[t,!!o&&o.unmountOnExit,h]),y=React.useCallback(()=>{c("entered"),h.current=void 0},[h]),S=React.useCallback(()=>{c(t?"entered":o&&o.unmountOnExit?"unmounted":"exited"),h.current=void 0},[t,!!o&&o.unmountOnExit,h]),P=React.useCallback(()=>{c(t?"entering":"exiting"),d.current=setTimeout(S,n),h.current=Date.now()+n},[t,n,S,d,h]);return React.useEffect(()=>{if(t?s==="entered":s==="exited"||s==="unmounted"){h.current=void 0;return}const L=Date.now(),F=typeof h.current>"u"?n:n-(h.current-L);return!t&&(s==="entered"||s==="entering")?(c("exiting"),d.current=setTimeout(p,F)):t&&(s==="exited"||s==="exiting")?(c("entering"),d.current=setTimeout(y,F)):(c(t?"exited":"entered"),d.current=setTimeout(P,30)),h.current=L+F,()=>{clearTimeout(d.current)}},[t]),s},SvgCrosshair=t=>React__namespace.createElement("svg",{width:48,height:48,viewBox:"0 0 48 48",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...t},React__namespace.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M25 5.02586C34.6974 5.52871 42.4713 13.3026 42.9741 23H47C47.5523 23 48 23.4477 48 24C48 24.5523 47.5523 25 47 25H42.9741C42.4713 34.6974 34.6974 42.4713 25 42.9741V47C25 47.5523 24.5523 48 24 48C23.4477 48 23 47.5523 23 47V42.9741C13.3026 42.4713 5.52871 34.6974 5.02586 25H1C0.447715 25 0 24.5523 0 24C0 23.4477 0.447715 23 1 23H5.02586C5.52871 13.3026 13.3026 5.52871 23 5.02586V1C23 0.447715 23.4477 0 24 0C24.5523 0 25 0.447715 25 1V5.02586ZM41.5 24C41.5 33.665 33.665 41.5 24 41.5C14.335 41.5 6.5 33.665 6.5 24C6.5 14.335 14.335 6.5 24 6.5C33.665 6.5 41.5 14.335 41.5 24Z",fill:"white"}));function Indicator({className:t,property:n,timelineManagerRef:o}){const{viewer:s}=$e$1(),[c,d]=React.useState(!0),[h,p]=React.useState(),y=useTransition(!!h&&c,500,{mountOnEnter:!0,unmountOnExit:!0}),{type:S,image:P,imageScale:L}=(n==null?void 0:n.indicator)??{},[F,N,z]=useIcon({image:P,imageSize:L});return React.useEffect(()=>{!S||S==="default"?s==null||s.selectionIndicator.viewModel.selectionIndicatorElement.removeAttribute("hidden"):s==null||s.selectionIndicator.viewModel.selectionIndicatorElement.setAttribute("hidden","true")},[S,s,s==null?void 0:s.selectionIndicator]),React.useEffect(()=>{if(!s)return;const W=()=>{var pi,zi,Sa;if(s.isDestroyed())return;const Pe=s.selectedEntity,se=(zi=(pi=o==null?void 0:o.current)==null?void 0:pi.timeline)!=null&&zi.current?Cesium$1.JulianDate.fromDate((Sa=o==null?void 0:o.current)==null?void 0:Sa.timeline.current):void 0;if(!(Pe!=null&&Pe.isShowing)||se&&!Pe.isAvailable(se)||!Pe.position){d(!1);return}let mt;const kt=new Cesium$1.BoundingSphere;if(s.dataSourceDisplay.getBoundingSphere(Pe,!0,kt)!==2?mt=kt.center:Pe.position&&se&&(mt=Pe.position.getValue(se,mt)),mt){const fa=Cesium$1.SceneTransforms.wgs84ToWindowCoordinates(s.scene,mt);p(fa),d(!0)}else d(!1)},lt=o==null?void 0:o.current;return lt==null||lt.onTick(W),()=>{lt==null||lt.offTick(W)}},[s,o]),y!=="unmounted"&&h?S==="crosshair"?jsxRuntimeExports.jsx("div",{className:t,style:{width:48,height:48,fontSize:0,display:"inline-block",transitionProperty:"color, background",left:h.x+"px",top:h.y+"px",position:"absolute",transform:"translate(-50%, -50%)",transition:y==="entering"||y==="exiting"?"all 0.5s ease":"",opacity:y==="entering"||y==="entered"?1:0,pointerEvents:"none"},children:jsxRuntimeExports.jsx(SvgCrosshair,{})}):S==="custom"?jsxRuntimeExports.jsx("img",{src:F,width:N,height:z,style:{left:h.x+"px",top:h.y+"px",position:"absolute",transform:"translate(-50%, -50%)",transition:y==="entering"||y==="exiting"?"all 0.5s ease":"",opacity:y==="entering"||y==="entered"?1:0,pointerEvents:"none"}}):jsxRuntimeExports.jsx("div",{style:{left:h.x+"px",top:h.y+"px",position:"absolute",transform:"translate(-50%, -50%)",transition:y==="entering"||y==="exiting"?"all 0.5s ease":"",opacity:y==="entering"||y==="entered"?1:0,pointerEvents:"none"}}):null}const annotationTypes={municipalities:[110,140],towns:[120,130,210,220,800],roads:[411],railways:[421],stations:[422],landmarks:[412,413,423,431,432,441,511,521,522,523,531,532,533,534,611,612,613,615,621,631,632,633,634,651,653,661,662,671,673,681,860,870,880,881,882,883,884,885,886,887,888,889,890,899],topography:[311,312,313,314,315,316,321,322,323,331,332,333,341,342,343,344,345,346,347,348,351,352,353,361,810,820,822,830,831,832,840,841,842,843,850]},typeMap=fromPairs(Object.entries(annotationTypes).flatMap(([t,n])=>n.map(o=>[o,t])));function getAnnotationType(t){return typeMap[t]}function useSceneEvent(t,n){const{viewer:o}=$e$1(),s=o==null?void 0:o.scene,c=React.useRef(n);c.current=n,React.useLayoutEffect(()=>s==null?void 0:s[t].addEventListener((d,h)=>{try{c.current(d,h)}catch(p){console.error(p)}}),[t,s])}function usePreRender(t){useSceneEvent("preRender",t)}const isPromise=t=>typeof t=="object"&&typeof t.then=="function",globalCache=[];function shallowEqualArrays(t,n,o=(s,c)=>s===c){if(t===n)return!0;if(!t||!n)return!1;const s=t.length;if(n.length!==s)return!1;for(let c=0;c<s;c++)if(!o(t[c],n[c]))return!1;return!0}function query(t,n=null,o=!1,s={}){n===null&&(n=[t]);for(const d of globalCache)if(shallowEqualArrays(n,d.keys,d.equal)){if(o)return;if(Object.prototype.hasOwnProperty.call(d,"error"))throw d.error;if(Object.prototype.hasOwnProperty.call(d,"response"))return s.lifespan&&s.lifespan>0&&(d.timeout&&clearTimeout(d.timeout),d.timeout=setTimeout(d.remove,s.lifespan)),d.response;if(!o)throw d.promise}const c={keys:n,equal:s.equal,remove:()=>{const d=globalCache.indexOf(c);d!==-1&&globalCache.splice(d,1)},promise:(isPromise(t)?t:t(...n)).then(d=>{c.response=d,s.lifespan&&s.lifespan>0&&(c.timeout=setTimeout(c.remove,s.lifespan))}).catch(d=>c.error=d)};if(globalCache.push(c),!o)throw c.promise}const suspend=(t,n,o)=>query(t,n,!1,o);function coordEach(t,n,o){if(t!==null)for(var s,c,d,h,p,y,S,P=0,L=0,F,N=t.type,z=N==="FeatureCollection",W=N==="Feature",lt=z?t.features.length:1,Pe=0;Pe<lt;Pe++){S=z?t.features[Pe].geometry:W?t.geometry:t,F=S?S.type==="GeometryCollection":!1,p=F?S.geometries.length:1;for(var se=0;se<p;se++){var mt=0,kt=0;if(h=F?S.geometries[se]:S,h!==null){y=h.coordinates;var mn=h.type;switch(P=o&&(mn==="Polygon"||mn==="MultiPolygon")?1:0,mn){case null:break;case"Point":if(n(y,L,Pe,mt,kt)===!1)return!1;L++,mt++;break;case"LineString":case"MultiPoint":for(s=0;s<y.length;s++){if(n(y[s],L,Pe,mt,kt)===!1)return!1;L++,mn==="MultiPoint"&&mt++}mn==="LineString"&&mt++;break;case"Polygon":case"MultiLineString":for(s=0;s<y.length;s++){for(c=0;c<y[s].length-P;c++){if(n(y[s][c],L,Pe,mt,kt)===!1)return!1;L++}mn==="MultiLineString"&&mt++,mn==="Polygon"&&kt++}mn==="Polygon"&&mt++;break;case"MultiPolygon":for(s=0;s<y.length;s++){for(kt=0,c=0;c<y[s].length;c++){for(d=0;d<y[s][c].length-P;d++){if(n(y[s][c][d],L,Pe,mt,kt)===!1)return!1;L++}kt++}mt++}break;case"GeometryCollection":for(s=0;s<h.geometries.length;s++)if(coordEach(h.geometries[s],n,o)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function featureEach(t,n){if(t.type==="Feature")n(t,0);else if(t.type==="FeatureCollection")for(var o=0;o<t.features.length&&n(t.features[o],o)!==!1;o++);}function geomEach(t,n){var o,s,c,d,h,p,y,S,P,L,F=0,N=t.type==="FeatureCollection",z=t.type==="Feature",W=N?t.features.length:1;for(o=0;o<W;o++){for(p=N?t.features[o].geometry:z?t.geometry:t,S=N?t.features[o].properties:z?t.properties:{},P=N?t.features[o].bbox:z?t.bbox:void 0,L=N?t.features[o].id:z?t.id:void 0,y=p?p.type==="GeometryCollection":!1,h=y?p.geometries.length:1,c=0;c<h;c++){if(d=y?p.geometries[c]:p,d===null){if(n(null,F,S,P,L)===!1)return!1;continue}switch(d.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(n(d,F,S,P,L)===!1)return!1;break}case"GeometryCollection":{for(s=0;s<d.geometries.length;s++)if(n(d.geometries[s],F,S,P,L)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}F++}}function geomReduce(t,n,o){var s=o;return geomEach(t,function(c,d,h,p,y){s=n(s,c,d,h,p,y)}),s}function flattenEach(t,n){geomEach(t,function(o,s,c,d,h){var p=o===null?null:o.type;switch(p){case null:case"Point":case"LineString":case"Polygon":return n(feature$1(o,c,{bbox:d,id:h}),s,0)===!1?!1:void 0}var y;switch(p){case"MultiPoint":y="Point";break;case"MultiLineString":y="LineString";break;case"MultiPolygon":y="Polygon";break}for(var S=0;S<o.coordinates.length;S++){var P=o.coordinates[S],L={type:y,coordinates:P};if(n(feature$1(L,c),s,S)===!1)return!1}})}var rbush$2={exports:{}},quickselect$2={exports:{}};(function(t,n){(function(o,s){t.exports=s()})(commonjsGlobal,function(){function o(h,p,y,S,P){s(h,p,y||0,S||h.length-1,P||d)}function s(h,p,y,S,P){for(;S>y;){if(S-y>600){var L=S-y+1,F=p-y+1,N=Math.log(L),z=.5*Math.exp(2*N/3),W=.5*Math.sqrt(N*z*(L-z)/L)*(F-L/2<0?-1:1),lt=Math.max(y,Math.floor(p-F*z/L+W)),Pe=Math.min(S,Math.floor(p+(L-F)*z/L+W));s(h,p,lt,Pe,P)}var se=h[p],mt=y,kt=S;for(c(h,y,p),P(h[S],se)>0&&c(h,y,S);mt<kt;){for(c(h,mt,kt),mt++,kt--;P(h[mt],se)<0;)mt++;for(;P(h[kt],se)>0;)kt--}P(h[y],se)===0?c(h,y,kt):(kt++,c(h,kt,S)),kt<=p&&(y=kt+1),p<=kt&&(S=kt-1)}}function c(h,p,y){var S=h[p];h[p]=h[y],h[y]=S}function d(h,p){return h<p?-1:h>p?1:0}return o})})(quickselect$2);var quickselectExports=quickselect$2.exports;rbush$2.exports=rbush,rbush$2.exports.default=rbush;var quickselect$1=quickselectExports;function rbush(t,n){if(!(this instanceof rbush))return new rbush(t,n);this._maxEntries=Math.max(4,t||9),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),n&&this._initFormat(n),this.clear()}rbush.prototype={all:function(){return this._all(this.data,[])},search:function(t){var n=this.data,o=[],s=this.toBBox;if(!intersects(t,n))return o;for(var c=[],d,h,p,y;n;){for(d=0,h=n.children.length;d<h;d++)p=n.children[d],y=n.leaf?s(p):p,intersects(t,y)&&(n.leaf?o.push(p):contains(t,y)?this._all(p,o):c.push(p));n=c.pop()}return o},collides:function(t){var n=this.data,o=this.toBBox;if(!intersects(t,n))return!1;for(var s=[],c,d,h,p;n;){for(c=0,d=n.children.length;c<d;c++)if(h=n.children[c],p=n.leaf?o(h):h,intersects(t,p)){if(n.leaf||contains(t,p))return!0;s.push(h)}n=s.pop()}return!1},load:function(t){if(!(t&&t.length))return this;if(t.length<this._minEntries){for(var n=0,o=t.length;n<o;n++)this.insert(t[n]);return this}var s=this._build(t.slice(),0,t.length-1,0);if(!this.data.children.length)this.data=s;else if(this.data.height===s.height)this._splitRoot(this.data,s);else{if(this.data.height<s.height){var c=this.data;this.data=s,s=c}this._insert(s,this.data.height-s.height-1,!0)}return this},insert:function(t){return t&&this._insert(t,this.data.height-1),this},clear:function(){return this.data=createNode([]),this},remove:function(t,n){if(!t)return this;for(var o=this.data,s=this.toBBox(t),c=[],d=[],h,p,y,S;o||c.length;){if(o||(o=c.pop(),p=c[c.length-1],h=d.pop(),S=!0),o.leaf&&(y=findItem(t,o.children,n),y!==-1))return o.children.splice(y,1),c.push(o),this._condense(c),this;!S&&!o.leaf&&contains(o,s)?(c.push(o),d.push(h),h=0,p=o,o=o.children[0]):p?(h++,o=p.children[h],S=!1):o=null}return this},toBBox:function(t){return t},compareMinX:compareNodeMinX,compareMinY:compareNodeMinY,toJSON:function(){return this.data},fromJSON:function(t){return this.data=t,this},_all:function(t,n){for(var o=[];t;)t.leaf?n.push.apply(n,t.children):o.push.apply(o,t.children),t=o.pop();return n},_build:function(t,n,o,s){var c=o-n+1,d=this._maxEntries,h;if(c<=d)return h=createNode(t.slice(n,o+1)),calcBBox(h,this.toBBox),h;s||(s=Math.ceil(Math.log(c)/Math.log(d)),d=Math.ceil(c/Math.pow(d,s-1))),h=createNode([]),h.leaf=!1,h.height=s;var p=Math.ceil(c/d),y=p*Math.ceil(Math.sqrt(d)),S,P,L,F;for(multiSelect(t,n,o,y,this.compareMinX),S=n;S<=o;S+=y)for(L=Math.min(S+y-1,o),multiSelect(t,S,L,p,this.compareMinY),P=S;P<=L;P+=p)F=Math.min(P+p-1,L),h.children.push(this._build(t,P,F,s-1));return calcBBox(h,this.toBBox),h},_chooseSubtree:function(t,n,o,s){for(var c,d,h,p,y,S,P,L;s.push(n),!(n.leaf||s.length-1===o);){for(P=L=1/0,c=0,d=n.children.length;c<d;c++)h=n.children[c],y=bboxArea(h),S=enlargedArea(t,h)-y,S<L?(L=S,P=y<P?y:P,p=h):S===L&&y<P&&(P=y,p=h);n=p||n.children[0]}return n},_insert:function(t,n,o){var s=this.toBBox,c=o?t:s(t),d=[],h=this._chooseSubtree(c,this.data,n,d);for(h.children.push(t),extend$1(h,c);n>=0&&d[n].children.length>this._maxEntries;)this._split(d,n),n--;this._adjustParentBBoxes(c,d,n)},_split:function(t,n){var o=t[n],s=o.children.length,c=this._minEntries;this._chooseSplitAxis(o,c,s);var d=this._chooseSplitIndex(o,c,s),h=createNode(o.children.splice(d,o.children.length-d));h.height=o.height,h.leaf=o.leaf,calcBBox(o,this.toBBox),calcBBox(h,this.toBBox),n?t[n-1].children.push(h):this._splitRoot(o,h)},_splitRoot:function(t,n){this.data=createNode([t,n]),this.data.height=t.height+1,this.data.leaf=!1,calcBBox(this.data,this.toBBox)},_chooseSplitIndex:function(t,n,o){var s,c,d,h,p,y,S,P;for(y=S=1/0,s=n;s<=o-n;s++)c=distBBox(t,0,s,this.toBBox),d=distBBox(t,s,o,this.toBBox),h=intersectionArea(c,d),p=bboxArea(c)+bboxArea(d),h<y?(y=h,P=s,S=p<S?p:S):h===y&&p<S&&(S=p,P=s);return P},_chooseSplitAxis:function(t,n,o){var s=t.leaf?this.compareMinX:compareNodeMinX,c=t.leaf?this.compareMinY:compareNodeMinY,d=this._allDistMargin(t,n,o,s),h=this._allDistMargin(t,n,o,c);d<h&&t.children.sort(s)},_allDistMargin:function(t,n,o,s){t.children.sort(s);var c=this.toBBox,d=distBBox(t,0,n,c),h=distBBox(t,o-n,o,c),p=bboxMargin(d)+bboxMargin(h),y,S;for(y=n;y<o-n;y++)S=t.children[y],extend$1(d,t.leaf?c(S):S),p+=bboxMargin(d);for(y=o-n-1;y>=n;y--)S=t.children[y],extend$1(h,t.leaf?c(S):S),p+=bboxMargin(h);return p},_adjustParentBBoxes:function(t,n,o){for(var s=o;s>=0;s--)extend$1(n[s],t)},_condense:function(t){for(var n=t.length-1,o;n>=0;n--)t[n].children.length===0?n>0?(o=t[n-1].children,o.splice(o.indexOf(t[n]),1)):this.clear():calcBBox(t[n],this.toBBox)},_initFormat:function(t){var n=["return a"," - b",";"];this.compareMinX=new Function("a","b",n.join(t[0])),this.compareMinY=new Function("a","b",n.join(t[1])),this.toBBox=new Function("a","return {minX: a"+t[0]+", minY: a"+t[1]+", maxX: a"+t[2]+", maxY: a"+t[3]+"};")}};function findItem(t,n,o){if(!o)return n.indexOf(t);for(var s=0;s<n.length;s++)if(o(t,n[s]))return s;return-1}function calcBBox(t,n){distBBox(t,0,t.children.length,n,t)}function distBBox(t,n,o,s,c){c||(c=createNode(null)),c.minX=1/0,c.minY=1/0,c.maxX=-1/0,c.maxY=-1/0;for(var d=n,h;d<o;d++)h=t.children[d],extend$1(c,t.leaf?s(h):h);return c}function extend$1(t,n){return t.minX=Math.min(t.minX,n.minX),t.minY=Math.min(t.minY,n.minY),t.maxX=Math.max(t.maxX,n.maxX),t.maxY=Math.max(t.maxY,n.maxY),t}function compareNodeMinX(t,n){return t.minX-n.minX}function compareNodeMinY(t,n){return t.minY-n.minY}function bboxArea(t){return(t.maxX-t.minX)*(t.maxY-t.minY)}function bboxMargin(t){return t.maxX-t.minX+(t.maxY-t.minY)}function enlargedArea(t,n){return(Math.max(n.maxX,t.maxX)-Math.min(n.minX,t.minX))*(Math.max(n.maxY,t.maxY)-Math.min(n.minY,t.minY))}function intersectionArea(t,n){var o=Math.max(t.minX,n.minX),s=Math.max(t.minY,n.minY),c=Math.min(t.maxX,n.maxX),d=Math.min(t.maxY,n.maxY);return Math.max(0,c-o)*Math.max(0,d-s)}function contains(t,n){return t.minX<=n.minX&&t.minY<=n.minY&&n.maxX<=t.maxX&&n.maxY<=t.maxY}function intersects(t,n){return n.minX<=t.maxX&&n.minY<=t.maxY&&n.maxX>=t.minX&&n.maxY>=t.minY}function createNode(t){return{children:t,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function multiSelect(t,n,o,s,c){for(var d=[n,o],h;d.length;)o=d.pop(),n=d.pop(),!(o-n<=s)&&(h=n+Math.ceil((o-n)/s/2)*s,quickselect$1(t,h,n,o,c),d.push(n,h,h,o))}var rbushExports=rbush$2.exports;const rbush$1=getDefaultExportFromCjs(rbushExports);var RADIUS=6378137;function area(t){return geomReduce(t,function(n,o){return n+calculateArea(o)},0)}function calculateArea(t){var n=0,o;switch(t.type){case"Polygon":return polygonArea(t.coordinates);case"MultiPolygon":for(o=0;o<t.coordinates.length;o++)n+=polygonArea(t.coordinates[o]);return n;case"Point":case"MultiPoint":case"LineString":case"MultiLineString":return 0}return 0}function polygonArea(t){var n=0;if(t&&t.length>0){n+=Math.abs(ringArea(t[0]));for(var o=1;o<t.length;o++)n-=Math.abs(ringArea(t[o]))}return n}function ringArea(t){var n,o,s,c,d,h,p,y=0,S=t.length;if(S>2){for(p=0;p<S;p++)p===S-2?(c=S-2,d=S-1,h=0):p===S-1?(c=S-1,d=0,h=1):(c=p,d=p+1,h=p+2),n=t[c],o=t[d],s=t[h],y+=(rad(s[0])-rad(n[0]))*Math.sin(rad(o[1]));y=y*RADIUS*RADIUS/2}return y}function rad(t){return t*Math.PI/180}function booleanPointInPolygon(t,n,o){if(o===void 0&&(o={}),!t)throw new Error("point is required");if(!n)throw new Error("polygon is required");var s=getCoord$2(t),c=getGeom$2(n),d=c.type,h=n.bbox,p=c.coordinates;if(h&&inBBox(s,h)===!1)return!1;d==="Polygon"&&(p=[p]);for(var y=!1,S=0;S<p.length&&!y;S++)if(inRing(s,p[S][0],o.ignoreBoundary)){for(var P=!1,L=1;L<p[S].length&&!P;)inRing(s,p[S][L],!o.ignoreBoundary)&&(P=!0),L++;P||(y=!0)}return y}function inRing(t,n,o){var s=!1;n[0][0]===n[n.length-1][0]&&n[0][1]===n[n.length-1][1]&&(n=n.slice(0,n.length-1));for(var c=0,d=n.length-1;c<n.length;d=c++){var h=n[c][0],p=n[c][1],y=n[d][0],S=n[d][1],P=t[1]*(h-y)+p*(y-t[0])+S*(t[0]-h)===0&&(h-t[0])*(y-t[0])<=0&&(p-t[1])*(S-t[1])<=0;if(P)return!o;var L=p>t[1]!=S>t[1]&&t[0]<(y-h)*(t[1]-p)/(S-p)+h;L&&(s=!s)}return s}function inBBox(t,n){return n[0]<=t[0]&&n[1]<=t[1]&&n[2]>=t[0]&&n[3]>=t[1]}function isects(t,n,o){if(t.geometry.type!=="Polygon")throw new Error("The input feature must be a Polygon");o===void 0&&(o=1);var s=t.geometry.coordinates,c=[],d={};if(o){for(var h=[],p=0;p<s.length;p++)for(var y=0;y<s[p].length-1;y++)h.push(lt(p,y));var S=rbush$1();S.load(h)}for(var P=0;P<s.length;P++)for(var L=0;L<s[P].length-1;L++)if(o){var F=S.search(lt(P,L));F.forEach(function(Pe){var se=Pe.ring,mt=Pe.edge;W(P,L,se,mt)})}else for(var N=0;N<s.length;N++)for(var z=0;z<s[N].length-1;z++)W(P,L,N,z);return n||(c={type:"Feature",geometry:{type:"MultiPoint",coordinates:c}}),c;function W(Pe,se,mt,kt){var mn=s[Pe][se],pi=s[Pe][se+1],zi=s[mt][kt],Sa=s[mt][kt+1],fa=intersect(mn,pi,zi,Sa);if(fa!==null){var La,Ra;if(pi[0]!==mn[0]?La=(fa[0]-mn[0])/(pi[0]-mn[0]):La=(fa[1]-mn[1])/(pi[1]-mn[1]),Sa[0]!==zi[0]?Ra=(fa[0]-zi[0])/(Sa[0]-zi[0]):Ra=(fa[1]-zi[1])/(Sa[1]-zi[1]),!(La>=1||La<=0||Ra>=1||Ra<=0)){var ma=fa,yt=!d[ma];yt&&(d[ma]=!0),c.push(n(fa,Pe,se,mn,pi,La,mt,kt,zi,Sa,Ra,yt))}}}function lt(Pe,se){var mt=s[Pe][se],kt=s[Pe][se+1],mn,pi,zi,Sa;return mt[0]<kt[0]?(mn=mt[0],pi=kt[0]):(mn=kt[0],pi=mt[0]),mt[1]<kt[1]?(zi=mt[1],Sa=kt[1]):(zi=kt[1],Sa=mt[1]),{minX:mn,minY:zi,maxX:pi,maxY:Sa,ring:Pe,edge:se}}}function intersect(t,n,o,s){if(equalArrays(t,o)||equalArrays(t,s)||equalArrays(n,o)||equalArrays(s,o))return null;var c=t[0],d=t[1],h=n[0],p=n[1],y=o[0],S=o[1],P=s[0],L=s[1],F=(c-h)*(S-L)-(d-p)*(y-P);if(F===0)return null;var N=((c*p-d*h)*(y-P)-(c-h)*(y*L-S*P))/F,z=((c*p-d*h)*(S-L)-(d-p)*(y*L-S*P))/F;return[N,z]}function equalArrays(t,n){if(!t||!n||t.length!==n.length)return!1;for(var o=0,s=t.length;o<s;o++)if(t[o]instanceof Array&&n[o]instanceof Array){if(!equalArrays(t[o],n[o]))return!1}else if(t[o]!==n[o])return!1;return!0}function simplepolygon(t){if(t.type!="Feature")throw new Error("The input must a geojson object of type Feature");if(t.geometry===void 0||t.geometry==null)throw new Error("The input must a geojson object with a non-empty geometry");if(t.geometry.type!="Polygon")throw new Error("The input must be a geojson Polygon");for(var n=t.geometry.coordinates.length,o=[],se=0;se<n;se++){var s=t.geometry.coordinates[se];equalArrays$1(s[0],s[s.length-1])||s.push(s[0]),o.push.apply(o,s.slice(0,s.length-1))}if(!isUnique(o))throw new Error("The input polygon may not have duplicate vertices (except for the first and last vertex of each ring)");var c=o.length,d=isects(t,function(Vd,Gd,cf,uf,gf,hf,pf,_f,Vf,Rf,Wa,af){return[Vd,Gd,cf,uf,gf,hf,pf,_f,Vf,Rf,Wa,af]}),h=d.length;if(h==0){for(var zi=[],se=0;se<n;se++)zi.push(polygon([t.geometry.coordinates[se]],{parent:-1,winding:windingOfRing(t.geometry.coordinates[se])}));var Xs=featureCollection$2(zi);return pu(),yu(),Xs}for(var p=[],y=[],se=0;se<n;se++){p.push([]);for(var S=0;S<t.geometry.coordinates[se].length-1;S++)p[se].push([new PseudoVtx(t.geometry.coordinates[se][modulo(S+1,t.geometry.coordinates[se].length-1)],1,[se,S],[se,modulo(S+1,t.geometry.coordinates[se].length-1)],void 0)]),y.push(new Isect(t.geometry.coordinates[se][S],[se,modulo(S-1,t.geometry.coordinates[se].length-1)],[se,S],void 0,void 0,!1,!0))}for(var se=0;se<h;se++)p[d[se][1]][d[se][2]].push(new PseudoVtx(d[se][0],d[se][5],[d[se][1],d[se][2]],[d[se][6],d[se][7]],void 0)),d[se][11]&&y.push(new Isect(d[se][0],[d[se][1],d[se][2]],[d[se][6],d[se][7]],void 0,void 0,!0,!0));for(var P=y.length,se=0;se<p.length;se++)for(var S=0;S<p[se].length;S++)p[se][S].sort(function(Gd,cf){return Gd.param<cf.param?-1:1});for(var L=[],se=0;se<P;se++)L.push({minX:y[se].coord[0],minY:y[se].coord[1],maxX:y[se].coord[0],maxY:y[se].coord[1],index:se});var F=rbush$1();F.load(L);for(var se=0;se<p.length;se++)for(var S=0;S<p[se].length;S++)for(var N=0;N<p[se][S].length;N++){var z;N==p[se][S].length-1?z=p[se][modulo(S+1,t.geometry.coordinates[se].length-1)][0].coord:z=p[se][S][N+1].coord;var W=F.search({minX:z[0],minY:z[1],maxX:z[0],maxY:z[1]})[0];p[se][S][N].nxtIsectAlongEdgeIn=W.index}for(var se=0;se<p.length;se++)for(var S=0;S<p[se].length;S++)for(var N=0;N<p[se][S].length;N++){var z=p[se][S][N].coord,W=F.search({minX:z[0],minY:z[1],maxX:z[0],maxY:z[1]})[0],lt=W.index;lt<c?y[lt].nxtIsectAlongRingAndEdge2=p[se][S][N].nxtIsectAlongEdgeIn:equalArrays$1(y[lt].ringAndEdge1,p[se][S][N].ringAndEdgeIn)?y[lt].nxtIsectAlongRingAndEdge1=p[se][S][N].nxtIsectAlongEdgeIn:y[lt].nxtIsectAlongRingAndEdge2=p[se][S][N].nxtIsectAlongEdgeIn}for(var Pe=[],se=0,S=0;S<n;S++){for(var mt=se,N=0;N<t.geometry.coordinates[S].length-1;N++)y[se].coord[0]<y[mt].coord[0]&&(mt=se),se++;for(var kt=y[mt].nxtIsectAlongRingAndEdge2,N=0;N<y.length;N++)if(y[N].nxtIsectAlongRingAndEdge1==mt||y[N].nxtIsectAlongRingAndEdge2==mt){var mn=N;break}var pi=isConvex([y[mn].coord,y[mt].coord,y[kt].coord],!0)?1:-1;Pe.push({isect:mt,parent:-1,winding:pi})}Pe.sort(function(Ru,Vd){return y[Ru.isect].coord>y[Vd.isect].coord?-1:1});for(var zi=[];Pe.length>0;){var Sa=Pe.pop(),fa=Sa.isect,La=Sa.parent,Ra=Sa.winding,ma=zi.length,yt=[y[fa].coord],nt=fa;if(y[fa].ringAndEdge1Walkable)var _i=y[fa].ringAndEdge1,ba=y[fa].nxtIsectAlongRingAndEdge1;else var _i=y[fa].ringAndEdge2,ba=y[fa].nxtIsectAlongRingAndEdge2;for(;!equalArrays$1(y[fa].coord,y[ba].coord);){yt.push(y[ba].coord);for(var Sc=void 0,se=0;se<Pe.length;se++)if(Pe[se].isect==ba){Sc=se;break}if(Sc!=null&&Pe.splice(Sc,1),equalArrays$1(_i,y[ba].ringAndEdge1)){if(_i=y[ba].ringAndEdge2,y[ba].ringAndEdge2Walkable=!1,y[ba].ringAndEdge1Walkable){var ms={isect:ba};isConvex([y[nt].coord,y[ba].coord,y[y[ba].nxtIsectAlongRingAndEdge2].coord],Ra==1)?(ms.parent=La,ms.winding=-Ra):(ms.parent=ma,ms.winding=Ra),Pe.push(ms)}nt=ba,ba=y[ba].nxtIsectAlongRingAndEdge2}else{if(_i=y[ba].ringAndEdge1,y[ba].ringAndEdge1Walkable=!1,y[ba].ringAndEdge2Walkable){var ms={isect:ba};isConvex([y[nt].coord,y[ba].coord,y[y[ba].nxtIsectAlongRingAndEdge1].coord],Ra==1)?(ms.parent=La,ms.winding=-Ra):(ms.parent=ma,ms.winding=Ra),Pe.push(ms)}nt=ba,ba=y[ba].nxtIsectAlongRingAndEdge1}}yt.push(y[ba].coord),zi.push(polygon([yt],{index:ma,parent:La,winding:Ra,netWinding:void 0}))}var Xs=featureCollection$2(zi);pu(),yu();function pu(){for(var Ru=[],Vd=0;Vd<Xs.features.length;Vd++)Xs.features[Vd].properties.parent==-1&&Ru.push(Vd);if(Ru.length>1)for(var Vd=0;Vd<Ru.length;Vd++){for(var Gd=-1,cf=1/0,uf=0;uf<Xs.features.length;uf++)Ru[Vd]!=uf&&booleanPointInPolygon(Xs.features[Ru[Vd]].geometry.coordinates[0][0],Xs.features[uf],{ignoreBoundary:!0})&&area(Xs.features[uf])<cf&&(Gd=uf);Xs.features[Ru[Vd]].properties.parent=Gd}}function yu(){for(var Ru=0;Ru<Xs.features.length;Ru++)if(Xs.features[Ru].properties.parent==-1){var Vd=Xs.features[Ru].properties.winding;Xs.features[Ru].properties.netWinding=Vd,Nl(Ru,Vd)}}function Nl(Ru,Vd){for(var Gd=0;Gd<Xs.features.length;Gd++)if(Xs.features[Gd].properties.parent==Ru){var cf=Vd+Xs.features[Gd].properties.winding;Xs.features[Gd].properties.netWinding=cf,Nl(Gd,cf)}}return Xs}var PseudoVtx=function(t,n,o,s,c){this.coord=t,this.param=n,this.ringAndEdgeIn=o,this.ringAndEdgeOut=s,this.nxtIsectAlongEdgeIn=c},Isect=function(t,n,o,s,c,d,h){this.coord=t,this.ringAndEdge1=n,this.ringAndEdge2=o,this.nxtIsectAlongRingAndEdge1=s,this.nxtIsectAlongRingAndEdge2=c,this.ringAndEdge1Walkable=d,this.ringAndEdge2Walkable=h};function isConvex(t,n){if(typeof n>"u"&&(n=!0),t.length!=3)throw new Error("This function requires an array of three points [x,y]");var o=(t[1][0]-t[0][0])*(t[2][1]-t[0][1])-(t[1][1]-t[0][1])*(t[2][0]-t[0][0]);return o>=0==n}function windingOfRing(t){for(var n=0,o=0;o<t.length-1;o++)t[o][0]<t[n][0]&&(n=o);if(isConvex([t[modulo(n-1,t.length-1)],t[n],t[modulo(n+1,t.length-1)]],!0))var s=1;else var s=-1;return s}function equalArrays$1(t,n){if(!t||!n||t.length!=n.length)return!1;for(var o=0,s=t.length;o<s;o++)if(t[o]instanceof Array&&n[o]instanceof Array){if(!equalArrays$1(t[o],n[o]))return!1}else if(t[o]!=n[o])return!1;return!0}function modulo(t,n){return(t%n+n)%n}function isUnique(t){for(var n={},o=1,s=0,c=t.length;s<c;++s){if(Object.prototype.hasOwnProperty.call(n,t[s])){o=0;break}n[t[s]]=1}return o}function unkinkPolygon(t){var n=[];return flattenEach(t,function(o){o.geometry.type==="Polygon"&&featureEach(simplepolygon(o),function(s){n.push(polygon(s.geometry.coordinates,o.properties))})}),featureCollection$2(n)}function isNotNullish(t){return t!=null}function coordinatesToPositionsArray(t){return t.map(n=>n.map(([o,s])=>Cartesian3.fromDegrees(o,s,0)))}function convertGeometryToPositionsArray(t){return(t.type==="LineString"?coordinatesToPositionsArray([t.coordinates]):t.type==="Polygon"?coordinatesToPositionsArray(t.coordinates):t.coordinates.flatMap(n=>coordinatesToPositionsArray(n))).filter(({length:n})=>n>0)}function coordinatesToHierarchy(t){return t.length>0?{positions:t[0].map(([n,o])=>Cartesian3.fromDegrees(n,o,0)),holes:t.slice(1).map(n=>({positions:n.map(([o,s])=>Cartesian3.fromDegrees(o,s,0)),holes:[]}))}:void 0}function convertPolygonToHierarchyArray(t){return unkinkPolygon(t).features.map(o=>coordinatesToHierarchy(o.geometry.coordinates)).filter(isNotNullish)}const fontScale=5,scaleByDistance=new NearFarScalar(0,1/fontScale,Number.POSITIVE_INFINITY,1/fontScale),defaultStyle={default:{fontFamily:"sans-serif",fillColor:Color$1.BLACK,outlineColor:Color$1.WHITE.withAlpha(.8),outlineWidth:5},municipalities:{fontSize:12},towns:{fontSize:8,fillColor:Color$1.BLACK.withAlpha(.6)},roads:{fontSize:8},railways:{fontSize:8},stations:{fontSize:9},landmarks:{fontSize:8},topography:{fontSize:8,fillColor:Color$1.BLACK.withAlpha(.6)}};function resolveStyle(t,n){const o=getAnnotationType(t);if(o==null)return;const s=n==null?void 0:n[o];if(s===!1)return;const c=merge({},defaultStyle.default,defaultStyle[o],n==null?void 0:n.default,s),d=Object.fromEntries(Object.entries(c).map(([h,p])=>[h,typeof p=="string"&&isColor(p)?toColor$1(p):p]));return{scaleByDistance,...omit(d,["fontSize","fontFamily"]),font:(d==null?void 0:d.fontSize)!=null&&d.fontFamily!=null?`${d.fontSize*fontScale}pt ${d.fontFamily}`:void 0}}const positionScratch$1=new Cartesian3,cartographicScratch$1=new Cartographic;function getPosition(t,n,o,s,c,d,h,p=new Cartesian3){let y=n.geom[0][0].x/c,S=n.geom[0][0].y/c;if(t.level===17&&(y=y*2-t.x%2,S=S*2-t.y%2),y<0||y>1||S<0||S>1)return;const P=Cartographic.fromRadians(o.west+o.width*y,o.south+o.height*(1-S),d,cartographicScratch$1);if((s==null?void 0:s.some(L=>Rectangle.contains(L,P)))!==!0)return Cartographic.toCartesian(P,h,p)}const JapanGSIOptimalBVmapLabelImagery=React.memo(({imageryProvider:t,imagery:n,descendants:o,height:s=50,style:c=defaultStyle,labelCollection:d,near:h,far:p})=>{const y=$e$1(),S=suspend(async()=>await t.tileCache.get(getTileCoords(n,16)),[JapanGSIOptimalBVmapLabelImagery,n.key]),P=React.useMemo(()=>t.tilingScheme.tileXYToRectangle(n.x,n.y,n.level),[t,n]),L=React.useMemo(()=>o==null?void 0:o.map(Pe=>t.tilingScheme.tileXYToRectangle(Pe.x,Pe.y,Pe.level)),[t,o]),F=React.useMemo(()=>{const Pe=S.get("Anno");return Pe==null?[]:Pe.filter(se=>typeof se.props.vt_code=="number"&&`${se.props.vt_code}`.length===3&&typeof se.props.vt_text=="string"&&(se.props.vt_arrng==null||typeof se.props.vt_arrng=="number")&&(se.props.vt_arrngagl==null||typeof se.props.vt_arrngagl=="number")&&(n.level<16||n.level===16&&se.props.vt_flag17!==2||n.level===17&&se.props.vr_flag17!==0))},[S,n]),N=React.useRef(),z=y==null?void 0:y.scene,W=React.useCallback(()=>{const Pe=N.current;Pe!=null&&(Pe.forEach(([se,mt])=>{var mn;const kt=getPosition(n,se,P,L,t.tileCache.tileSize,s,(mn=z==null?void 0:z.globe)==null?void 0:mn.ellipsoid,positionScratch$1);kt!=null?(mt.position=kt,mt.show=!0):mt.show=!1}),z==null||z.requestRender())},[t,n,s,P,L,z]),lt=React.useRef(W);return lt.current=W,React.useEffect(()=>{if(!z||!d)return;const Pe=[],se=F.map(kt=>{const mn=resolveStyle(kt.props.vt_code,c);if(mn==null)return;const pi=kt.props.vt_text;if(Pe.includes(pi))return;Pe.push(pi);const zi={text:pi,style:LabelStyle$1.FILL_AND_OUTLINE,horizontalOrigin:HorizontalOrigin$1.CENTER,verticalOrigin:VerticalOrigin$1.BOTTOM,heightReference:HeightReference$1.CLAMP_TO_GROUND,distanceDisplayCondition:h||p?new Cesium$1.DistanceDisplayCondition(h,p):void 0,disableDepthTestDistance:1/0,...mn};return[kt,d.add(zi)]}).filter(isNotNullish);N.current=se,lt.current();const mt=()=>{d.isDestroyed()||se.forEach(([,kt])=>{d.remove(kt)}),z.isDestroyed()||z==null||z.postRender.removeEventListener(mt)};return()=>{N.current=void 0,z.isDestroyed()||z==null||z.postRender.addEventListener(mt)}},[c,F,z,d,h,p]),React.useEffect(()=>{W()},[W]),null});JapanGSIOptimalBVmapLabelImagery.displayName="JapanGSIOptimalBVmapLabelImagery";const hasMethod=t=>n=>n!=null&&typeof n=="object"&&t in n&&typeof n[t]=="function";function createDestructor(t,n){if(t.owner!=null){invariant$1(t.transferOwnership!=null);const o=t.owner,s=t.transferOwnership(n,t.owner);return()=>{(!hasMethod("isDestroyed")(o)||!o.isDestroyed())&&s()}}else{const o=t.destroy;return()=>{typeof o=="function"?o(n):o!==null&&hasMethod("destroy")(n)&&n.destroy()}}}function useInstance(t){const[n,o]=React.useState(),s=React.useRef();return s.current==null&&(s.current=t.create()),React.useEffect(()=>{s.current==null&&(s.current=t.create(),o(s.current));const c=s.current,d=createDestructor(t,c);return()=>{d(),s.current=void 0,o(void 0)}},[t.owner,...t.keys]),n??s.current}const LabelImageryLayer=React.forwardRef(function({url:n,tilingScheme:o,tileWidth:s,tileHeight:c,minimumLevel:d,maximumLevel:h,minimumDataLevel:p,maximumDataLevel:y,...S},P){const L=useInstance({keys:[n,o,s,c,p,y],create:()=>new JapanGSIOptimalBVmapLabelImageryProvider({url:n,tilingScheme:o??new Cesium$1.WebMercatorTilingScheme,tileWidth:s,tileHeight:c,minimumDataLevel:p,maximumDataLevel:y})});return Object.assign(L,{minimumLevel:d,maximumLevel:h}),jsxRuntimeExports.jsx(Ns$1,{ref:P,imageryProvider:L,...S})});function getAncestorKeys(t,n){if(t.level===n)return[];const o=2**t.level,s=t.x/o,c=t.y/o;return[...Array(t.level-n)].map((d,h)=>{const p=t.level-(h+1),y=2**p;return makeKey({x:Math.floor(s*y),y:Math.floor(c*y),level:p})})}function isEqualKeys(t,n){return n!=null&&t.length===n.length&&xorBy(t,n,"key").length===0}function getImageriesToRender(t,n){const o=t.globe;let s=1/0,c=-1/0;const d=uniqBy(o._surface._tilesToRender.flatMap(p=>{var y;return((y=p.data)==null?void 0:y.imagery.map(S=>S.readyImagery).filter(S=>(S==null?void 0:S.imageryLayer.imageryProvider)!==n?!1:(S.key=makeKey(S),S.level<s&&(s=S.level),S.level>c&&(c=S.level),!0)))??[]}),"key").sort((p,y)=>p.key.localeCompare(y.key));if(s===c||s===1/0||c===-1/0)return d;const h=fromPairs(d.map(p=>[p.key,{imagery:p,children:[],descendants:[]}]));return d.forEach(p=>{getAncestorKeys(p,s).forEach(S=>{const P=h[S];P!=null&&(P.descendants.push(p),p.level-P.imagery.level===1&&P.children.push(p))})}),Object.values(h).forEach(({imagery:p,children:y,descendants:S})=>{isEqualKeys(y,p.children)||(p.children=y),isEqualKeys(S,p.descendants)||(p.descendants=S)}),d.filter(p=>p.children!=null&&p.children.length<4)}const LabelImageryCollection=({imageryProvider:t,imageriesAtom:n,style:o,labelCollection:s,near:c,far:d})=>{const h=useAtomValue(n);return jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:h.map(p=>jsxRuntimeExports.jsx(React.Suspense,{children:jsxRuntimeExports.jsx(JapanGSIOptimalBVmapLabelImagery,{imageryProvider:t,imagery:p,descendants:p.descendants,style:o,labelCollection:s,near:c,far:d})},p.key))})},JapanGSIOptimalBVmapVectorMapLabel=({style:t,near:n,far:o})=>{const[s,c]=React.useState(),d=React.useCallback(N=>{var z;c(((z=N==null?void 0:N.cesiumElement)==null?void 0:z.imageryProvider)instanceof JapanGSIOptimalBVmapLabelImageryProvider?N.cesiumElement.imageryProvider:void 0)},[]),h=React.useMemo(()=>{const N=atom([]);return atom(z=>z(N),(z,W,lt)=>{const Pe=z(N),se=typeof lt=="function"?lt(Pe):lt;Pe.length!==se.length&&xorBy(Pe,se,"key").length>0&&W(N,se)})},[]),p=useSetAtom(h);usePreRender(N=>{if(s==null)return;const z=getImageriesToRender(N,s);p(z)});const{labelCollection:y,scene:S}=$e$1(),P=React.useRef(!1),L=React.useMemo(()=>y??(S?new Cesium$1.LabelCollection({scene:S}):void 0),[S,y]);React.useEffect(()=>{!y&&S&&!P.current&&(S.primitives.add(L),P.current=!0)},[y,L,S]);const F=React.useRef(0);return usePreRender(N=>{L&&F.current!==L._labelsToUpdate.length&&(N.requestRender(),F.current=L._labelsToUpdate.length)}),React.useEffect(()=>()=>{S!=null&&S.isDestroyed()||S==null||S.requestRender()},[S]),jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(LabelImageryLayer,{ref:d,url:"https://cyberjapandata.gsi.go.jp/xyz/optimal_bvmap-v1/{z}/{x}/{y}.pbf",tileWidth:1024,tileHeight:1024,maximumLevel:17,minimumDataLevel:4,maximumDataLevel:16}),s!=null&&jsxRuntimeExports.jsx(LabelImageryCollection,{imageryProvider:s,imageriesAtom:h,style:t,labelCollection:L,near:n,far:o})]})},LabelImageryLayers=React.memo(({tileLabels:t=[]})=>jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:t.map(n=>{if(!n)return null;switch(n.labelType){case"japan_gsi_optimal_bvmap":return jsxRuntimeExports.jsx(JapanGSIOptimalBVmapVectorMapLabel,{style:n.style,near:n.near,far:n.far},n.id);default:return null}})}),(t,n)=>isEqual(t.tileLabels,n.tileLabels));LabelImageryLayers.displayName="LabelImageryLayers";function Event({onMount:t,onUnmount:n}){return React.useEffect(()=>(t==null||t(),()=>n==null?void 0:n()),[t,n]),null}const perf=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,warned$1=new Set,emitWarning$1=(t,n,o,s)=>{typeof process=="object"&&process&&typeof process.emitWarning=="function"?process.emitWarning(t,n,o,s):console.error(`[${o}] ${n}: ${t}`)},shouldWarn=t=>!warned$1.has(t),isPosInt=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),getUintArray=t=>isPosInt(t)?t<=Math.pow(2,8)?Uint8Array:t<=Math.pow(2,16)?Uint16Array:t<=Math.pow(2,32)?Uint32Array:t<=Number.MAX_SAFE_INTEGER?ZeroArray:null:null;class ZeroArray extends Array{constructor(n){super(n),this.fill(0)}}const Om=class Om{constructor(n,o){Ef(this,"heap");Ef(this,"length");if(!ef(Om,_m))throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new o(n),this.length=0}static create(n){const o=getUintArray(n);if(!o)return[];zf(Om,_m,!0);const s=new Om(n,o);return zf(Om,_m,!1),s}push(n){this.heap[this.length++]=n}pop(){return this.heap[--this.length]}};_m=new WeakMap,Kf(Om,_m,!1);let Stack=Om;const tg=class tg{constructor(n){Kf(this,Bp);Kf(this,Jp);Kf(this,Pp);Kf(this,Ip);Kf(this,Yp);Kf(this,Xp);Kf(this,Wp);Kf(this,ip);Kf(this,jp);Kf(this,kp);Kf(this,$m,void 0);Kf(this,dp,void 0);Kf(this,Sp,void 0);Kf(this,Ep,void 0);Kf(this,zp,void 0);Ef(this,"ttl");Ef(this,"ttlResolution");Ef(this,"ttlAutopurge");Ef(this,"updateAgeOnGet");Ef(this,"updateAgeOnHas");Ef(this,"allowStale");Ef(this,"noDisposeOnSet");Ef(this,"noUpdateTTL");Ef(this,"maxEntrySize");Ef(this,"sizeCalculation");Ef(this,"noDeleteOnFetchRejection");Ef(this,"noDeleteOnStaleGet");Ef(this,"allowStaleOnFetchAbort");Ef(this,"allowStaleOnFetchRejection");Ef(this,"ignoreFetchAbort");Kf(this,cp,void 0);Kf(this,Tp,void 0);Kf(this,lp,void 0);Kf(this,rp,void 0);Kf(this,$f,void 0);Kf(this,bp,void 0);Kf(this,_p,void 0);Kf(this,gp,void 0);Kf(this,hp,void 0);Kf(this,wp,void 0);Kf(this,pp,void 0);Kf(this,Vp,void 0);Kf(this,Lp,void 0);Kf(this,Rp,void 0);Kf(this,Mp,void 0);Kf(this,Fp,void 0);Kf(this,vp,void 0);Kf(this,Dp,()=>{});Kf(this,Op,()=>{});Kf(this,$p,()=>{});Kf(this,xp,()=>!1);Kf(this,Np,n=>{});Kf(this,Up,(n,o,s)=>{});Kf(this,Hp,(n,o,s,c)=>{if(s||c)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0});const{max:o=0,ttl:s,ttlResolution:c=1,ttlAutopurge:d,updateAgeOnGet:h,updateAgeOnHas:p,allowStale:y,dispose:S,disposeAfter:P,noDisposeOnSet:L,noUpdateTTL:F,maxSize:N=0,maxEntrySize:z=0,sizeCalculation:W,fetchMethod:lt,noDeleteOnFetchRejection:Pe,noDeleteOnStaleGet:se,allowStaleOnFetchRejection:mt,allowStaleOnFetchAbort:kt,ignoreFetchAbort:mn}=n;if(o!==0&&!isPosInt(o))throw new TypeError("max option must be a nonnegative integer");const pi=o?getUintArray(o):Array;if(!pi)throw new Error("invalid max value: "+o);if(zf(this,$m,o),zf(this,dp,N),this.maxEntrySize=z||ef(this,dp),this.sizeCalculation=W,this.sizeCalculation){if(!ef(this,dp)&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(lt!==void 0&&typeof lt!="function")throw new TypeError("fetchMethod must be a function if specified");if(zf(this,zp,lt),zf(this,Fp,!!lt),zf(this,lp,new Map),zf(this,rp,new Array(o).fill(void 0)),zf(this,$f,new Array(o).fill(void 0)),zf(this,bp,new pi(o)),zf(this,_p,new pi(o)),zf(this,gp,0),zf(this,hp,0),zf(this,wp,Stack.create(o)),zf(this,cp,0),zf(this,Tp,0),typeof S=="function"&&zf(this,Sp,S),typeof P=="function"?(zf(this,Ep,P),zf(this,pp,[])):(zf(this,Ep,void 0),zf(this,pp,void 0)),zf(this,Mp,!!ef(this,Sp)),zf(this,vp,!!ef(this,Ep)),this.noDisposeOnSet=!!L,this.noUpdateTTL=!!F,this.noDeleteOnFetchRejection=!!Pe,this.allowStaleOnFetchRejection=!!mt,this.allowStaleOnFetchAbort=!!kt,this.ignoreFetchAbort=!!mn,this.maxEntrySize!==0){if(ef(this,dp)!==0&&!isPosInt(ef(this,dp)))throw new TypeError("maxSize must be a positive integer if specified");if(!isPosInt(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");Nf(this,Jp,cg).call(this)}if(this.allowStale=!!y,this.noDeleteOnStaleGet=!!se,this.updateAgeOnGet=!!h,this.updateAgeOnHas=!!p,this.ttlResolution=isPosInt(c)||c===0?c:1,this.ttlAutopurge=!!d,this.ttl=s||0,this.ttl){if(!isPosInt(this.ttl))throw new TypeError("ttl must be a positive integer if specified");Nf(this,Bp,ig).call(this)}if(ef(this,$m)===0&&this.ttl===0&&ef(this,dp)===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!ef(this,$m)&&!ef(this,dp)){const zi="LRU_CACHE_UNBOUNDED";shouldWarn(zi)&&(warned$1.add(zi),emitWarning$1("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",zi,tg))}}static unsafeExposeInternals(n){return{starts:ef(n,Lp),ttls:ef(n,Rp),sizes:ef(n,Vp),keyMap:ef(n,lp),keyList:ef(n,rp),valList:ef(n,$f),next:ef(n,bp),prev:ef(n,_p),get head(){return ef(n,gp)},get tail(){return ef(n,hp)},free:ef(n,wp),isBackgroundFetch:o=>{var s;return Nf(s=n,ip,ap).call(s,o)},backgroundFetch:(o,s,c,d)=>{var h;return Nf(h=n,Wp,eg).call(h,o,s,c,d)},moveToTail:o=>{var s;return Nf(s=n,kp,Kp).call(s,o)},indexes:o=>{var s;return Nf(s=n,Pp,Ap).call(s,o)},rindexes:o=>{var s;return Nf(s=n,Ip,Gp).call(s,o)},isStale:o=>{var s;return ef(s=n,xp).call(s,o)}}}get max(){return ef(this,$m)}get maxSize(){return ef(this,dp)}get calculatedSize(){return ef(this,Tp)}get size(){return ef(this,cp)}get fetchMethod(){return ef(this,zp)}get dispose(){return ef(this,Sp)}get disposeAfter(){return ef(this,Ep)}getRemainingTTL(n){return ef(this,lp).has(n)?1/0:0}*entries(){for(const n of Nf(this,Pp,Ap).call(this))ef(this,$f)[n]!==void 0&&ef(this,rp)[n]!==void 0&&!Nf(this,ip,ap).call(this,ef(this,$f)[n])&&(yield[ef(this,rp)[n],ef(this,$f)[n]])}*rentries(){for(const n of Nf(this,Ip,Gp).call(this))ef(this,$f)[n]!==void 0&&ef(this,rp)[n]!==void 0&&!Nf(this,ip,ap).call(this,ef(this,$f)[n])&&(yield[ef(this,rp)[n],ef(this,$f)[n]])}*keys(){for(const n of Nf(this,Pp,Ap).call(this)){const o=ef(this,rp)[n];o!==void 0&&!Nf(this,ip,ap).call(this,ef(this,$f)[n])&&(yield o)}}*rkeys(){for(const n of Nf(this,Ip,Gp).call(this)){const o=ef(this,rp)[n];o!==void 0&&!Nf(this,ip,ap).call(this,ef(this,$f)[n])&&(yield o)}}*values(){for(const n of Nf(this,Pp,Ap).call(this))ef(this,$f)[n]!==void 0&&!Nf(this,ip,ap).call(this,ef(this,$f)[n])&&(yield ef(this,$f)[n])}*rvalues(){for(const n of Nf(this,Ip,Gp).call(this))ef(this,$f)[n]!==void 0&&!Nf(this,ip,ap).call(this,ef(this,$f)[n])&&(yield ef(this,$f)[n])}[Symbol.iterator](){return this.entries()}find(n,o={}){for(const s of Nf(this,Pp,Ap).call(this)){const c=ef(this,$f)[s],d=Nf(this,ip,ap).call(this,c)?c.__staleWhileFetching:c;if(d!==void 0&&n(d,ef(this,rp)[s],this))return this.get(ef(this,rp)[s],o)}}forEach(n,o=this){for(const s of Nf(this,Pp,Ap).call(this)){const c=ef(this,$f)[s],d=Nf(this,ip,ap).call(this,c)?c.__staleWhileFetching:c;d!==void 0&&n.call(o,d,ef(this,rp)[s],this)}}rforEach(n,o=this){for(const s of Nf(this,Ip,Gp).call(this)){const c=ef(this,$f)[s],d=Nf(this,ip,ap).call(this,c)?c.__staleWhileFetching:c;d!==void 0&&n.call(o,d,ef(this,rp)[s],this)}}purgeStale(){let n=!1;for(const o of Nf(this,Ip,Gp).call(this,{allowStale:!0}))ef(this,xp).call(this,o)&&(this.delete(ef(this,rp)[o]),n=!0);return n}dump(){const n=[];for(const o of Nf(this,Pp,Ap).call(this,{allowStale:!0})){const s=ef(this,rp)[o],c=ef(this,$f)[o],d=Nf(this,ip,ap).call(this,c)?c.__staleWhileFetching:c;if(d===void 0||s===void 0)continue;const h={value:d};if(ef(this,Rp)&&ef(this,Lp)){h.ttl=ef(this,Rp)[o];const p=perf.now()-ef(this,Lp)[o];h.start=Math.floor(Date.now()-p)}ef(this,Vp)&&(h.size=ef(this,Vp)[o]),n.unshift([s,h])}return n}load(n){this.clear();for(const[o,s]of n){if(s.start){const c=Date.now()-s.start;s.start=perf.now()-c}this.set(o,s.value,s)}}set(n,o,s={}){var F,N,z;const{ttl:c=this.ttl,start:d,noDisposeOnSet:h=this.noDisposeOnSet,sizeCalculation:p=this.sizeCalculation,status:y}=s;let{noUpdateTTL:S=this.noUpdateTTL}=s;const P=ef(this,Hp).call(this,n,o,s.size||0,p);if(this.maxEntrySize&&P>this.maxEntrySize)return y&&(y.set="miss",y.maxEntrySizeExceeded=!0),this.delete(n),this;let L=ef(this,cp)===0?void 0:ef(this,lp).get(n);if(L===void 0)L=ef(this,cp)===0?ef(this,hp):ef(this,wp).length!==0?ef(this,wp).pop():ef(this,cp)===ef(this,$m)?Nf(this,Xp,qp).call(this,!1):ef(this,cp),ef(this,rp)[L]=n,ef(this,$f)[L]=o,ef(this,lp).set(n,L),ef(this,bp)[ef(this,hp)]=L,ef(this,_p)[L]=ef(this,hp),zf(this,hp,L),Qp(this,cp)._++,ef(this,Up).call(this,L,P,y),y&&(y.set="add"),S=!1;else{Nf(this,kp,Kp).call(this,L);const W=ef(this,$f)[L];if(o!==W){if(ef(this,Fp)&&Nf(this,ip,ap).call(this,W)?W.__abortController.abort(new Error("replaced")):h||(ef(this,Mp)&&((F=ef(this,Sp))==null||F.call(this,W,n,"set")),ef(this,vp)&&((N=ef(this,pp))==null||N.push([W,n,"set"]))),ef(this,Np).call(this,L),ef(this,Up).call(this,L,P,y),ef(this,$f)[L]=o,y){y.set="replace";const lt=W&&Nf(this,ip,ap).call(this,W)?W.__staleWhileFetching:W;lt!==void 0&&(y.oldValue=lt)}}else y&&(y.set="update")}if(c!==0&&!ef(this,Rp)&&Nf(this,Bp,ig).call(this),ef(this,Rp)&&(S||ef(this,$p).call(this,L,c,d),y&&ef(this,Op).call(this,y,L)),!h&&ef(this,vp)&&ef(this,pp)){const W=ef(this,pp);let lt;for(;lt=W==null?void 0:W.shift();)(z=ef(this,Ep))==null||z.call(this,...lt)}return this}pop(){var n;try{for(;ef(this,cp);){const o=ef(this,$f)[ef(this,gp)];if(Nf(this,Xp,qp).call(this,!0),Nf(this,ip,ap).call(this,o)){if(o.__staleWhileFetching)return o.__staleWhileFetching}else if(o!==void 0)return o}}finally{if(ef(this,vp)&&ef(this,pp)){const o=ef(this,pp);let s;for(;s=o==null?void 0:o.shift();)(n=ef(this,Ep))==null||n.call(this,...s)}}}has(n,o={}){const{updateAgeOnHas:s=this.updateAgeOnHas,status:c}=o,d=ef(this,lp).get(n);if(d!==void 0){const h=ef(this,$f)[d];if(Nf(this,ip,ap).call(this,h)&&h.__staleWhileFetching===void 0)return!1;if(ef(this,xp).call(this,d))c&&(c.has="stale",ef(this,Op).call(this,c,d));else return s&&ef(this,Dp).call(this,d),c&&(c.has="hit",ef(this,Op).call(this,c,d)),!0}else c&&(c.has="miss");return!1}peek(n,o={}){const{allowStale:s=this.allowStale}=o,c=ef(this,lp).get(n);if(c!==void 0&&(s||!ef(this,xp).call(this,c))){const d=ef(this,$f)[c];return Nf(this,ip,ap).call(this,d)?d.__staleWhileFetching:d}}async fetch(n,o={}){const{allowStale:s=this.allowStale,updateAgeOnGet:c=this.updateAgeOnGet,noDeleteOnStaleGet:d=this.noDeleteOnStaleGet,ttl:h=this.ttl,noDisposeOnSet:p=this.noDisposeOnSet,size:y=0,sizeCalculation:S=this.sizeCalculation,noUpdateTTL:P=this.noUpdateTTL,noDeleteOnFetchRejection:L=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:F=this.allowStaleOnFetchRejection,ignoreFetchAbort:N=this.ignoreFetchAbort,allowStaleOnFetchAbort:z=this.allowStaleOnFetchAbort,context:W,forceRefresh:lt=!1,status:Pe,signal:se}=o;if(!ef(this,Fp))return Pe&&(Pe.fetch="get"),this.get(n,{allowStale:s,updateAgeOnGet:c,noDeleteOnStaleGet:d,status:Pe});const mt={allowStale:s,updateAgeOnGet:c,noDeleteOnStaleGet:d,ttl:h,noDisposeOnSet:p,size:y,sizeCalculation:S,noUpdateTTL:P,noDeleteOnFetchRejection:L,allowStaleOnFetchRejection:F,allowStaleOnFetchAbort:z,ignoreFetchAbort:N,status:Pe,signal:se};let kt=ef(this,lp).get(n);if(kt===void 0){Pe&&(Pe.fetch="miss");const mn=Nf(this,Wp,eg).call(this,n,kt,mt,W);return mn.__returned=mn}else{const mn=ef(this,$f)[kt];if(Nf(this,ip,ap).call(this,mn)){const La=s&&mn.__staleWhileFetching!==void 0;return Pe&&(Pe.fetch="inflight",La&&(Pe.returnedStale=!0)),La?mn.__staleWhileFetching:mn.__returned=mn}const pi=ef(this,xp).call(this,kt);if(!lt&&!pi)return Pe&&(Pe.fetch="hit"),Nf(this,kp,Kp).call(this,kt),c&&ef(this,Dp).call(this,kt),Pe&&ef(this,Op).call(this,Pe,kt),mn;const zi=Nf(this,Wp,eg).call(this,n,kt,mt,W),fa=zi.__staleWhileFetching!==void 0&&s;return Pe&&(Pe.fetch=pi?"stale":"refresh",fa&&pi&&(Pe.returnedStale=!0)),fa?zi.__staleWhileFetching:zi.__returned=zi}}get(n,o={}){const{allowStale:s=this.allowStale,updateAgeOnGet:c=this.updateAgeOnGet,noDeleteOnStaleGet:d=this.noDeleteOnStaleGet,status:h}=o,p=ef(this,lp).get(n);if(p!==void 0){const y=ef(this,$f)[p],S=Nf(this,ip,ap).call(this,y);return h&&ef(this,Op).call(this,h,p),ef(this,xp).call(this,p)?(h&&(h.get="stale"),S?(h&&s&&y.__staleWhileFetching!==void 0&&(h.returnedStale=!0),s?y.__staleWhileFetching:void 0):(d||this.delete(n),h&&s&&(h.returnedStale=!0),s?y:void 0)):(h&&(h.get="hit"),S?y.__staleWhileFetching:(Nf(this,kp,Kp).call(this,p),c&&ef(this,Dp).call(this,p),y))}else h&&(h.get="miss")}delete(n){var s,c,d,h;let o=!1;if(ef(this,cp)!==0){const p=ef(this,lp).get(n);if(p!==void 0)if(o=!0,ef(this,cp)===1)this.clear();else{ef(this,Np).call(this,p);const y=ef(this,$f)[p];Nf(this,ip,ap).call(this,y)?y.__abortController.abort(new Error("deleted")):(ef(this,Mp)||ef(this,vp))&&(ef(this,Mp)&&((s=ef(this,Sp))==null||s.call(this,y,n,"delete")),ef(this,vp)&&((c=ef(this,pp))==null||c.push([y,n,"delete"]))),ef(this,lp).delete(n),ef(this,rp)[p]=void 0,ef(this,$f)[p]=void 0,p===ef(this,hp)?zf(this,hp,ef(this,_p)[p]):p===ef(this,gp)?zf(this,gp,ef(this,bp)[p]):(ef(this,bp)[ef(this,_p)[p]]=ef(this,bp)[p],ef(this,_p)[ef(this,bp)[p]]=ef(this,_p)[p]),Qp(this,cp)._--,ef(this,wp).push(p)}}if(ef(this,vp)&&((d=ef(this,pp))!=null&&d.length)){const p=ef(this,pp);let y;for(;y=p==null?void 0:p.shift();)(h=ef(this,Ep))==null||h.call(this,...y)}return o}clear(){var n,o,s;for(const c of Nf(this,Ip,Gp).call(this,{allowStale:!0})){const d=ef(this,$f)[c];if(Nf(this,ip,ap).call(this,d))d.__abortController.abort(new Error("deleted"));else{const h=ef(this,rp)[c];ef(this,Mp)&&((n=ef(this,Sp))==null||n.call(this,d,h,"delete")),ef(this,vp)&&((o=ef(this,pp))==null||o.push([d,h,"delete"]))}}if(ef(this,lp).clear(),ef(this,$f).fill(void 0),ef(this,rp).fill(void 0),ef(this,Rp)&&ef(this,Lp)&&(ef(this,Rp).fill(0),ef(this,Lp).fill(0)),ef(this,Vp)&&ef(this,Vp).fill(0),zf(this,gp,0),zf(this,hp,0),ef(this,wp).length=0,zf(this,Tp,0),zf(this,cp,0),ef(this,vp)&&ef(this,pp)){const c=ef(this,pp);let d;for(;d=c==null?void 0:c.shift();)(s=ef(this,Ep))==null||s.call(this,...d)}}};$m=new WeakMap,dp=new WeakMap,Sp=new WeakMap,Ep=new WeakMap,zp=new WeakMap,cp=new WeakMap,Tp=new WeakMap,lp=new WeakMap,rp=new WeakMap,$f=new WeakMap,bp=new WeakMap,_p=new WeakMap,gp=new WeakMap,hp=new WeakMap,wp=new WeakMap,pp=new WeakMap,Vp=new WeakMap,Lp=new WeakMap,Rp=new WeakMap,Mp=new WeakMap,Fp=new WeakMap,vp=new WeakMap,Bp=new WeakSet,ig=function(){const n=new ZeroArray(ef(this,$m)),o=new ZeroArray(ef(this,$m));zf(this,Rp,n),zf(this,Lp,o),zf(this,$p,(d,h,p=perf.now())=>{if(o[d]=h!==0?p:0,n[d]=h,h!==0&&this.ttlAutopurge){const y=setTimeout(()=>{ef(this,xp).call(this,d)&&this.delete(ef(this,rp)[d])},h+1);y.unref&&y.unref()}}),zf(this,Dp,d=>{o[d]=n[d]!==0?perf.now():0}),zf(this,Op,(d,h)=>{if(n[h]){const p=n[h],y=o[h];d.ttl=p,d.start=y,d.now=s||c(),d.remainingTTL=d.now+p-y}});let s=0;const c=()=>{const d=perf.now();if(this.ttlResolution>0){s=d;const h=setTimeout(()=>s=0,this.ttlResolution);h.unref&&h.unref()}return d};this.getRemainingTTL=d=>{const h=ef(this,lp).get(d);return h===void 0?0:n[h]===0||o[h]===0?1/0:o[h]+n[h]-(s||c())},zf(this,xp,d=>n[d]!==0&&o[d]!==0&&(s||c())-o[d]>n[d])},Dp=new WeakMap,Op=new WeakMap,$p=new WeakMap,xp=new WeakMap,Jp=new WeakSet,cg=function(){const n=new ZeroArray(ef(this,$m));zf(this,Tp,0),zf(this,Vp,n),zf(this,Np,o=>{zf(this,Tp,ef(this,Tp)-n[o]),n[o]=0}),zf(this,Hp,(o,s,c,d)=>{if(Nf(this,ip,ap).call(this,s))return 0;if(!isPosInt(c))if(d){if(typeof d!="function")throw new TypeError("sizeCalculation must be a function");if(c=d(s,o),!isPosInt(c))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return c}),zf(this,Up,(o,s,c)=>{if(n[o]=s,ef(this,dp)){const d=ef(this,dp)-n[o];for(;ef(this,Tp)>d;)Nf(this,Xp,qp).call(this,!0)}zf(this,Tp,ef(this,Tp)+n[o]),c&&(c.entrySize=s,c.totalCalculatedSize=ef(this,Tp))})},Np=new WeakMap,Up=new WeakMap,Hp=new WeakMap,Pp=new WeakSet,Ap=function*({allowStale:n=this.allowStale}={}){if(ef(this,cp))for(let o=ef(this,hp);!(!Nf(this,Yp,rg).call(this,o)||((n||!ef(this,xp).call(this,o))&&(yield o),o===ef(this,gp)));)o=ef(this,_p)[o]},Ip=new WeakSet,Gp=function*({allowStale:n=this.allowStale}={}){if(ef(this,cp))for(let o=ef(this,gp);!(!Nf(this,Yp,rg).call(this,o)||((n||!ef(this,xp).call(this,o))&&(yield o),o===ef(this,hp)));)o=ef(this,bp)[o]},Yp=new WeakSet,rg=function(n){return n!==void 0&&ef(this,lp).get(ef(this,rp)[n])===n},Xp=new WeakSet,qp=function(n){var d,h;const o=ef(this,gp),s=ef(this,rp)[o],c=ef(this,$f)[o];return ef(this,Fp)&&Nf(this,ip,ap).call(this,c)?c.__abortController.abort(new Error("evicted")):(ef(this,Mp)||ef(this,vp))&&(ef(this,Mp)&&((d=ef(this,Sp))==null||d.call(this,c,s,"evict")),ef(this,vp)&&((h=ef(this,pp))==null||h.push([c,s,"evict"]))),ef(this,Np).call(this,o),n&&(ef(this,rp)[o]=void 0,ef(this,$f)[o]=void 0,ef(this,wp).push(o)),ef(this,cp)===1?(zf(this,gp,zf(this,hp,0)),ef(this,wp).length=0):zf(this,gp,ef(this,bp)[o]),ef(this,lp).delete(s),Qp(this,cp)._--,o},Wp=new WeakSet,eg=function(n,o,s,c){const d=o===void 0?void 0:ef(this,$f)[o];if(Nf(this,ip,ap).call(this,d))return d;const h=new AbortController,{signal:p}=s;p==null||p.addEventListener("abort",()=>h.abort(p.reason),{signal:h.signal});const y={signal:h.signal,options:s,context:c},S=(W,lt=!1)=>{const{aborted:Pe}=h.signal,se=s.ignoreFetchAbort&&W!==void 0;if(s.status&&(Pe&&!lt?(s.status.fetchAborted=!0,s.status.fetchError=h.signal.reason,se&&(s.status.fetchAbortIgnored=!0)):s.status.fetchResolved=!0),Pe&&!se&&!lt)return L(h.signal.reason);const mt=N;return ef(this,$f)[o]===N&&(W===void 0?mt.__staleWhileFetching?ef(this,$f)[o]=mt.__staleWhileFetching:this.delete(n):(s.status&&(s.status.fetchUpdated=!0),this.set(n,W,y.options))),W},P=W=>(s.status&&(s.status.fetchRejected=!0,s.status.fetchError=W),L(W)),L=W=>{const{aborted:lt}=h.signal,Pe=lt&&s.allowStaleOnFetchAbort,se=Pe||s.allowStaleOnFetchRejection,mt=se||s.noDeleteOnFetchRejection,kt=N;if(ef(this,$f)[o]===N&&(!mt||kt.__staleWhileFetching===void 0?this.delete(n):Pe||(ef(this,$f)[o]=kt.__staleWhileFetching)),se)return s.status&&kt.__staleWhileFetching!==void 0&&(s.status.returnedStale=!0),kt.__staleWhileFetching;if(kt.__returned===kt)throw W},F=(W,lt)=>{var se;const Pe=(se=ef(this,zp))==null?void 0:se.call(this,n,d,y);Pe&&Pe instanceof Promise&&Pe.then(mt=>W(mt),lt),h.signal.addEventListener("abort",()=>{(!s.ignoreFetchAbort||s.allowStaleOnFetchAbort)&&(W(),s.allowStaleOnFetchAbort&&(W=mt=>S(mt,!0)))})};s.status&&(s.status.fetchDispatched=!0);const N=new Promise(F).then(S,P),z=Object.assign(N,{__abortController:h,__staleWhileFetching:d,__returned:void 0});return o===void 0?(this.set(n,z,{...y.options,status:void 0}),o=ef(this,lp).get(n)):ef(this,$f)[o]=z,z},ip=new WeakSet,ap=function(n){if(!ef(this,Fp))return!1;const o=n;return!!o&&o instanceof Promise&&o.hasOwnProperty("__staleWhileFetching")&&o.__abortController instanceof AbortController},jp=new WeakSet,ag=function(n,o){ef(this,_p)[o]=n,ef(this,bp)[n]=o},kp=new WeakSet,Kp=function(n){n!==ef(this,hp)&&(n===ef(this,gp)?zf(this,gp,ef(this,bp)[n]):Nf(this,jp,ag).call(this,ef(this,_p)[n],ef(this,bp)[n]),Nf(this,jp,ag).call(this,ef(this,hp),n),zf(this,hp,n))};let LRUCache=tg;const SIDE_PLANES=[new Cesium$1.Plane(new Cesium$1.Cartesian3(0,0,1),.5),new Cesium$1.Plane(new Cesium$1.Cartesian3(0,0,-1),.5),new Cesium$1.Plane(new Cesium$1.Cartesian3(0,1,0),.5),new Cesium$1.Plane(new Cesium$1.Cartesian3(0,-1,0),.5),new Cesium$1.Plane(new Cesium$1.Cartesian3(1,0,0),.5),new Cesium$1.Plane(new Cesium$1.Cartesian3(-1,0,0),.5)],CORNER_POINT_VECTORS=[new Cesium$1.Cartesian3(.5,.5,.5),new Cesium$1.Cartesian3(.5,-.5,.5),new Cesium$1.Cartesian3(-.5,-.5,.5),new Cesium$1.Cartesian3(-.5,.5,.5)],FACE_POINT_VECTORS=[new Cesium$1.Cartesian3(.5,0,0),new Cesium$1.Cartesian3(0,.5,0),new Cesium$1.Cartesian3(0,0,.5)],SCALE_POINT_VECTORS=[...CORNER_POINT_VECTORS,...FACE_POINT_VECTORS],SCALE_POINTS=SCALE_POINT_VECTORS.map(t=>({point:t,oppositePoint:Cesium$1.Cartesian3.multiplyByScalar(t,-1,new Cesium$1.Cartesian3)})),BOX_EDGES=CORNER_POINT_VECTORS.flatMap((t,n)=>{const o=t,s=Cesium$1.Cartesian3.clone(o,new Cesium$1.Cartesian3);s.z*=-1;const c=CORNER_POINT_VECTORS[(n+1)%4],d=Cesium$1.Cartesian3.clone(c,new Cesium$1.Cartesian3);return d.z*=-1,[{start:o,end:s,isDraggable:!0},{start:c,end:o},{start:d,end:s}]}),SIDE_PLANE_NAMES=["bottom","top","front","back","left","right"];var composeRefs$1={};Object.defineProperty(composeRefs$1,"__esModule",{value:!0});function composeRefs(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];if(t.length===2)return composeTwoRefs(t[0],t[1])||null;var o=t.slice(1).reduce(function(s,c){return composeTwoRefs(s,c)},t[0]);return o||null}var _default=composeRefs$1.default=composeRefs,composedRefCache=new WeakMap;function composeTwoRefs(t,n){if(t&&n){var o=composedRefCache.get(t)||new WeakMap;composedRefCache.set(t,o);var s=o.get(n)||function(c){updateRef(t,c),updateRef(n,c)};return o.set(n,s),s}return t||n}function updateRef(t,n){typeof t=="function"?t(n):t.current=n}var md5$1={exports:{}};/**
5833
5833
  * [js-md5]{@link https://github.com/emn178/js-md5}
5834
5834
  *
5835
5835
  * @namespace md5
@@ -6213,7 +6213,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput) {
6213
6213
  #else
6214
6214
  initialColor = u_initialColor;
6215
6215
  #endif
6216
- vec4 color = computeDayColor(initialColor`).erase(["#ifdef APPLY_MATERIAL","czm_materialInput materialInput;","materialInput.st = v_textureCoordinates.st;","materialInput.normalEC = normalize(v_normalEC);","materialInput.positionToEyeEC = -v_positionEC;","materialInput.tangentToEyeMatrix = czm_eastNorthUpToEyeCoordinates(v_positionMC, normalize(v_normalEC));","materialInput.slope = v_slope;","materialInput.height = v_height;","materialInput.aspect = v_aspect;","czm_material material = czm_getMaterial(materialInput);","vec4 materialColor = vec4(material.diffuse, material.alpha);","color = alphaBlend(materialColor, color);","#endif"]);function makeGlobeShadersDirty(t){const n=t.material;n==null?(t.material=Cesium$1.Material.fromType("Color"),t.material=void 0):(t.material=void 0,t.material=n)}const useIBL=({sphericalHarmonicCoefficients:t,globeImageBasedLighting:n,hasVertexNormals:o,enableLighting:s})=>{const c=React.useMemo(()=>o&&s,[o,s]),d=useImmutableFunction(t||[]),h=useImmutableFunction(n&&!!t),p=React.useMemo(()=>({u_reearth_sphericalHarmonicCoefficients:d,u_reearth_globeImageBasedLighting:h}),[d,h]),y=React.useMemo(()=>new StringMatcher().replace(["float diffuseIntensity = clamp(czm_getLambertDiffuse(czm_lightDirectionEC, normalize(v_normalEC)) * u_lambertDiffuseMultiplier + u_vertexShadowDarkness, 0.0, 1.0);","vec4 finalColor = vec4(color.rgb * czm_lightColor * diffuseIntensity, color.a);"],"vec4 finalColor = reearth_computeImageBasedLightingColor(color);"),[]);return{uniformMapForIBL:p,isIBLEnabled:c,shaderForIBL:y}},useTerrainHeatmap=({cesium:t,terrain:n})=>{const{type:o,maxHeight:s,minHeight:c,logarithmic:d,colorLUT:h}=(n==null?void 0:n.elevationHeatMap)??{},p=React.useMemo(()=>o==="custom",[o]),y=React.useMemo(()=>new StringMatcher().replace(["#ifdef APPLY_COLOR_TO_ALPHA","vec3 colorDiff = abs(color.rgb - colorToAlpha.rgb);","colorDiff.r = czm_maximumComponent(colorDiff);","alpha = czm_branchFreeTernary(colorDiff.r < colorToAlpha.a, 0.0, alpha);","#endif"],"color = reearth_calculateElevationMapForGlobe(colorToAlpha, color);"),[]);return React.useEffect(()=>{var P;if(!((P=t.current)!=null&&P.cesiumElement)||!p)return;const S=t.current.cesiumElement.scene.globe;return S.material=new VertexTerrainElevationMaterial,()=>{S.material=void 0}},[t,p]),React.useEffect(()=>{var P;if(!((P=t.current)!=null&&P.cesiumElement)||!p)return;const S=t.current.cesiumElement.scene.globe;S.material instanceof VertexTerrainElevationMaterial&&(S.material.uniforms.minHeight=c??S.material.uniforms.minHeight,S.material.uniforms.maxHeight=s??S.material.uniforms.maxHeight,S.material.uniforms.logarithmic=d??S.material.uniforms.logarithmic)},[t,p,s,c,d]),React.useEffect(()=>{var P;if(!((P=t.current)!=null&&P.cesiumElement)||!p||!h)return;const S=t.current.cesiumElement.scene.globe;S.material instanceof VertexTerrainElevationMaterial&&(S.material.uniforms.colorMap=createColorMapImage(h))},[t,p,h]),{isCustomHeatmapEnabled:p,shaderForTerrainHeatmap:y}},useOverrideGlobeShader=({cesium:t,sphericalHarmonicCoefficients:n,globeShadowDarkness:o,globeImageBasedLighting:s,hasVertexNormals:c,enableLighting:d,terrain:h})=>{const{uniformMapForIBL:p,isIBLEnabled:y,shaderForIBL:S}=useIBL({sphericalHarmonicCoefficients:n,globeImageBasedLighting:s,hasVertexNormals:c,enableLighting:d}),{isCustomHeatmapEnabled:P,shaderForTerrainHeatmap:L}=useTerrainHeatmap({cesium:t,terrain:h});React.useEffect(()=>{var W;if(!((W=t.current)!=null&&W.cesiumElement)||!c)return;const z=t.current.cesiumElement.scene.globe;z.vertexShadowDarkness=o??z.vertexShadowDarkness},[t,o,c]);const F=React.useRef(!1),N=React.useCallback(()=>{var mn,pi;if(!((mn=t.current)!=null&&mn.cesiumElement)||!F.current)return;const z=t.current.cesiumElement.scene.globe,W=z._surfaceShaderSet;if(!W)return;const lt=W.baseFragmentShaderSource,Pe=lt==null?void 0:lt.sources[lt.sources.length-1];if(!Pe||!lt)return;const se=[],mt=[];if(y&&z.enableLighting&&z.terrainProvider.hasVertexNormals&&(se.push(S),mt.push(IBLFS)),P&&(se.push(L),mt.push(HeatmapForTerrainFS)),!se.length||(F.current=!1,!((pi=z==null?void 0:z._surface)!=null&&pi._tileProvider)))return;makeGlobeShadersDirty(z);const kt=defaultMatcher.concat(...se).execute(Pe);z._surface._tileProvider.materialUniformMap={...z._surface._tileProvider.materialUniformMap??{},...p},W.baseFragmentShaderSource=new ShaderSource({sources:[...lt.sources.slice(0,-1),GlobeFSDefinitions+kt+mt.join("")],defines:lt.defines})},[t,P,y,S,L,p]);React.useEffect(()=>{var z;if((z=t.current)!=null&&z.cesiumElement)return t.current.cesiumElement.scene.postRender.addEventListener(N)},[t,N]),React.useEffect(()=>{var lt;if(!((lt=t.current)!=null&&lt.cesiumElement)||!y&&!P)return;const z=t.current.cesiumElement.scene,W=z.globe;return F.current=!0,z.requestRender(),()=>{W.isDestroyed()||makeGlobeShadersDirty(W)}},[t,P,y])},useViewerProperty=({cesium:t,property:n})=>{var h,p,y,S,P,L,F,N,z,W,lt;const o=React.useMemo(()=>{var se,mt,kt,mn,pi,zi,Sa,fa,La,Ra,ma,yt,nt,_i,ba,Sc,ms,Xs,pu,yu,Nl,Ru,Vd,Gd,cf,uf,gf;let Pe;return((mt=(se=n==null?void 0:n.scene)==null?void 0:se.light)==null?void 0:mt.type)==="sunLight"?Pe=new Cesium$1.SunLight({color:(mn=(kt=n.scene)==null?void 0:kt.light)!=null&&mn.color?Cesium$1.Color.fromCssColorString(n.scene.light.color):void 0,intensity:(zi=(pi=n.scene)==null?void 0:pi.light)==null?void 0:zi.intensity}):((fa=(Sa=n==null?void 0:n.scene)==null?void 0:Sa.light)==null?void 0:fa.type)==="directionalLight"?Pe=new Cesium$1.DirectionalLight({direction:new Cesium$1.Cartesian3(((ma=(Ra=(La=n==null?void 0:n.scene)==null?void 0:La.light)==null?void 0:Ra.direction)==null?void 0:ma[0])??1,((_i=(nt=(yt=n==null?void 0:n.scene)==null?void 0:yt.light)==null?void 0:nt.direction)==null?void 0:_i[1])??0,((ms=(Sc=(ba=n==null?void 0:n.scene)==null?void 0:ba.light)==null?void 0:Sc.direction)==null?void 0:ms[2])??0),color:(pu=(Xs=n.scene)==null?void 0:Xs.light)!=null&&pu.color?Cesium$1.Color.fromCssColorString(n.scene.light.color):void 0,intensity:(Nl=(yu=n.scene)==null?void 0:yu.light)==null?void 0:Nl.intensity}):(Pe=(Vd=(Ru=t.current)==null?void 0:Ru.cesiumElement)==null?void 0:Vd.scene.light,Pe&&(Pe.color=(cf=(Gd=n==null?void 0:n.scene)==null?void 0:Gd.light)!=null&&cf.color?Cesium$1.Color.fromCssColorString(n.scene.light.color):Pe.color,Pe.intensity=(gf=(uf=n==null?void 0:n.scene)==null?void 0:uf.light)!=null&&gf.intensity?n.scene.light.intensity:Pe.intensity)),Pe},[t,(p=(h=n==null?void 0:n.scene)==null?void 0:h.light)==null?void 0:p.type,(S=(y=n==null?void 0:n.scene)==null?void 0:y.light)==null?void 0:S.color,(L=(P=n==null?void 0:n.scene)==null?void 0:P.light)==null?void 0:L.direction,(N=(F=n==null?void 0:n.scene)==null?void 0:F.light)==null?void 0:N.intensity]),s=React.useMemo(()=>{var Pe;return(Pe=n==null?void 0:n.scene)!=null&&Pe.backgroundColor?Cesium$1.Color.fromCssColorString(n.scene.backgroundColor):void 0},[(z=n==null?void 0:n.scene)==null?void 0:z.backgroundColor]),c=React.useMemo(()=>{var Pe,se,mt;return((Pe=n==null?void 0:n.render)==null?void 0:Pe.antialias)==="extreme"?8:((se=n==null?void 0:n.render)==null?void 0:se.antialias)==="high"?6:((mt=n==null?void 0:n.render)==null?void 0:mt.antialias)==="medium"?4:1},[(W=n==null?void 0:n.render)==null?void 0:W.antialias]),d=React.useMemo(()=>{var Pe,se;return((Pe=n==null?void 0:n.scene)==null?void 0:Pe.mode)==="2d"?Cesium$1.SceneMode.SCENE2D:((se=n==null?void 0:n.scene)==null?void 0:se.mode)==="columbus"?Cesium$1.SceneMode.COLUMBUS_VIEW:Cesium$1.SceneMode.SCENE3D},[(lt=n==null?void 0:n.scene)==null?void 0:lt.mode]);return{sceneLight:o,sceneBackgroundColor:s,sceneMsaaSamples:c,sceneMode:d}},useHooks$1=({ref:t,property:n,time:o,selectedLayerId:s,selectionReason:c,meta:d,layersRef:h,featureFlags:p,timelineManagerRef:y,isLayerDraggable:S,isLayerDragging:P,shouldRender:L,requestingRenderMode:F,camera:N,cameraForceHorizontalRoll:z,onLayerSelect:W,onLayerDrag:lt,onLayerDrop:Pe,onLayerEdit:se,onLayerSelectWithRectStart:mt,onLayerSelectWithRectMove:kt,onLayerSelectWithRectEnd:mn,onLayerVisibility:pi,onLayerLoad:zi,onCameraChange:Sa,onMount:fa,onCreditsUpdate:La})=>{var of,nf,df,Cf,ff,xf,wf,Ff,Hf,Jf,Wf,Dm,vf,mf,Lf,Df,kf,Yf,Qf,Zf,jm,qf,qm,ep;const Ra=React.useRef(null),ma=typeof(d==null?void 0:d.cesiumIonAccessToken)=="string"&&d.cesiumIonAccessToken?d.cesiumIonAccessToken:Cesium$1.Ion.defaultAccessToken,yt=useEngineRef(t,Ra),nt=useLayerSelectWithRect({cesium:Ra,engineAPI:yt,onLayerSelectWithRectStart:mt,onLayerSelectWithRectMove:kt,onLayerSelectWithRectEnd:mn,featureFlags:p});React.useEffect(()=>{var Xf,Bf,Am,tp,sp,hp,fp,al,tf,lf,yf,If,Of,Tf;const Sf=(Bf=(Xf=Ra==null?void 0:Ra.current)==null?void 0:Xf.cesiumElement)==null?void 0:Bf.shadowMap;if(!Sf)return;Sf.softShadows=((sp=(tp=(Am=n==null?void 0:n.scene)==null?void 0:Am.shadow)==null?void 0:tp.shadowMap)==null?void 0:sp.softShadows)??!1,Sf.darkness=((al=(fp=(hp=n==null?void 0:n.scene)==null?void 0:hp.shadow)==null?void 0:fp.shadowMap)==null?void 0:al.darkness)??.3,Sf.size=((yf=(lf=(tf=n==null?void 0:n.scene)==null?void 0:tf.shadow)==null?void 0:lf.shadowMap)==null?void 0:yf.size)??2048,Sf.maximumDistance=((Tf=(Of=(If=n==null?void 0:n.scene)==null?void 0:If.shadow)==null?void 0:Of.shadowMap)==null?void 0:Tf.maximumDistance)??5e3,Sf.fadingEnabled=!0,Sf.normalOffset=!0;const rf={polygonOffsetFactor:1.1,polygonOffsetUnits:4,normalOffsetScale:.5,normalShading:!0,normalShadingSmooth:.3,depthBias:1e-4},bf={polygonOffsetFactor:1.1,polygonOffsetUnits:4,normalOffsetScale:.1*100,normalShading:!0,normalShadingSmooth:.05,depthBias:2e-5*10},Pf={polygonOffsetFactor:1.1,polygonOffsetUnits:4,normalOffsetScale:0,normalShading:!0,normalShadingSmooth:.1,depthBias:5e-4};Sf._terrainBias&&Object.assign(Sf._terrainBias,rf),Sf._primitiveBias&&Object.assign(Sf._primitiveBias,bf),Sf._pointBias&&Object.assign(Sf._pointBias,Pf)},[(df=(nf=(of=n==null?void 0:n.scene)==null?void 0:of.shadow)==null?void 0:nf.shadowMap)==null?void 0:df.softShadows,(xf=(ff=(Cf=n==null?void 0:n.scene)==null?void 0:Cf.shadow)==null?void 0:ff.shadowMap)==null?void 0:xf.darkness,(Hf=(Ff=(wf=n==null?void 0:n.scene)==null?void 0:wf.shadow)==null?void 0:Ff.shadowMap)==null?void 0:Hf.size,(Dm=(Wf=(Jf=n==null?void 0:n.scene)==null?void 0:Jf.shadow)==null?void 0:Wf.shadowMap)==null?void 0:Dm.maximumDistance]);const _i=React.useRef(),ba=React.useRef();React.useEffect(()=>{var Xf,Bf,Am,tp,sp,hp,fp,al;const Sf=(Xf=Ra.current)==null?void 0:Xf.cesiumElement;if(!Sf||Sf.isDestroyed()||ba.current===(s==null?void 0:s.featureId)&&(s==null?void 0:s.featureId)!==void 0)return;const rf=getTag(_i.current);if(!(rf!=null&&rf.featureId)&&(rf!=null&&rf.layerId)&&(s!=null&&s.layerId)&&(rf==null?void 0:rf.layerId)===s.layerId||rf!=null&&rf.featureId&&(s!=null&&s.featureId)&&(rf==null?void 0:rf.featureId)===s.featureId)return;const bf=findEntity(Sf,void 0,s==null?void 0:s.featureId)||findEntity(Sf,s==null?void 0:s.layerId);if(_i.current===bf)return;const Pf=getTag(bf);if(bf instanceof Cesium$1.Entity&&!(Pf!=null&&Pf.hideIndicator)?Sf.selectedEntity=bf:Sf.selectedEntity=void 0,_i.current=bf,!bf&&(s!=null&&s.featureId)){const tf=[],lf=(Bf=h==null?void 0:h.current)==null?void 0:Bf.findAll(yf=>{var If,Of;return yf.type==="simple"&&!!((If=yf.data)!=null&&If.type)&&tf.includes((Of=yf.data)==null?void 0:Of.type)});if(lf!=null&&lf.length){const[yf,If]=(()=>{var Of;for(const Tf of lf){const Mf=(Of=Tf.computed)==null?void 0:Of.features.find(Af=>Af.id!==(s==null?void 0:s.featureId));if(Mf)return[Mf,Tf.id]}})()||[];W==null||W(If,yf==null?void 0:yf.id)}}if(!(Pf!=null&&Pf.unselectable)){if(bf&&bf instanceof Cesium$1.Cesium3DTileFeature){const tf=getTag(bf);if(tf){const lf=tileProperties(bf);W==null||W(tf.layerId,String(tf.featureId),lf.length?{defaultInfobox:{title:bf.getProperty("name"),content:{type:"table",value:lf}}}:void 0,{feature:tf.computedFeature})}return}if(bf){const tf=Pf!=null&&Pf.layerId?((Am=h==null?void 0:h.current)==null?void 0:Am.overriddenLayers().find(lf=>lf.id===Pf.layerId))??((tp=h==null?void 0:h.current)==null?void 0:tp.findById(Pf.layerId)):void 0;W==null||W(Pf==null?void 0:Pf.layerId,Pf==null?void 0:Pf.featureId,bf instanceof Cesium$1.Entity&&(bf.description||bf.properties)?{defaultInfobox:{title:bf.name,content:getEntityContent(bf,((hp=(sp=Ra.current)==null?void 0:sp.cesiumElement)==null?void 0:hp.clock.currentTime)??new Cesium$1.JulianDate,Pf!=null&&Pf.layerId?(al=(fp=tf==null?void 0:tf.infobox)==null?void 0:fp.property)==null?void 0:al.defaultContent:void 0)}}:void 0)}}},[Ra,s,W,h,p]);const Sc=React.useMemo(()=>{var Sf,rf,bf,Pf,Xf,Bf;return(rf=(Sf=n==null?void 0:n.scene)==null?void 0:Sf.imageBasedLighting)!=null&&rf.sphericalHarmonicCoefficients?arrayToCartecian3((Pf=(bf=n==null?void 0:n.scene)==null?void 0:bf.imageBasedLighting)==null?void 0:Pf.sphericalHarmonicCoefficients,(Bf=(Xf=n==null?void 0:n.scene)==null?void 0:Xf.imageBasedLighting)==null?void 0:Bf.intensity):void 0},[(mf=(vf=n==null?void 0:n.scene)==null?void 0:vf.imageBasedLighting)==null?void 0:mf.sphericalHarmonicCoefficients,(Df=(Lf=n==null?void 0:n.scene)==null?void 0:Lf.imageBasedLighting)==null?void 0:Df.intensity]);useOverrideGlobeShader({cesium:Ra,sphericalHarmonicCoefficients:Sc,globeShadowDarkness:(Yf=(kf=n==null?void 0:n.scene)==null?void 0:kf.shadow)==null?void 0:Yf.darkness,globeImageBasedLighting:(Zf=(Qf=n==null?void 0:n.scene)==null?void 0:Qf.imageBasedLighting)==null?void 0:Zf.enabled,enableLighting:(jm=n==null?void 0:n.globe)==null?void 0:jm.enableLighting,hasVertexNormals:((qf=n==null?void 0:n.terrain)==null?void 0:qf.enabled)&&n.terrain.normal,terrain:n==null?void 0:n.terrain});const ms=React.useCallback((Sf,rf,bf)=>{var Pf,Xf;if(((Pf=yt.mouseEventCallbacks[Sf])==null?void 0:Pf.length)>0){const Bf=(Xf=Ra.current)==null?void 0:Xf.cesiumElement;if(!Bf||Bf.isDestroyed())return;const Am=makeMouseEventProps(Bf,rf);if(!Am)return;const tp=getLayerId(bf);tp&&(Am.layerId=tp),yt.mouseEventCallbacks[Sf].forEach(sp=>sp(Am))}},[yt]),Xs=React.useCallback(Sf=>{yt.mouseEventCallbacks.wheel.length>0&&yt.mouseEventCallbacks.wheel.forEach(rf=>rf({delta:Sf}))},[yt]),pu=React.useMemo(()=>{const Sf={click:void 0,doubleClick:void 0,mouseDown:void 0,mouseUp:void 0,rightClick:void 0,rightDown:void 0,rightUp:void 0,middleClick:void 0,middleDown:void 0,middleUp:void 0,mouseMove:void 0,mouseEnter:void 0,mouseLeave:void 0,wheel:rf=>{Xs(rf)}};return Object.keys(Sf).forEach(rf=>{rf!=="wheel"&&(Sf[rf]=(bf,Pf)=>{ms(rf,bf,Pf)})}),Sf},[ms,Xs]),yu=React.useCallback(async(Sf,rf)=>{var Bf,Am,tp,sp,hp,fp,al,tf,lf,yf,If,Of,Tf,Mf;if((Bf=pu.click)==null||Bf.call(pu,Sf,rf),!(p&FEATURE_FLAGS.SINGLE_SELECTION))return;const bf=(Am=Ra.current)==null?void 0:Am.cesiumElement;if(!bf||bf.isDestroyed())return;ba.current=void 0;const Pf=findEntity(bf,void 0,s==null?void 0:s.featureId)||findEntity(bf,s==null?void 0:s.layerId),Xf=getTag(Pf);if((!Pf||Pf instanceof Cesium$1.Entity&&(Xf!=null&&Xf.hideIndicator))&&(bf.selectedEntity=void 0),rf&&"id"in rf&&rf.id instanceof Cesium$1.Entity&&isSelectable(rf.id)){const Af=getTag(rf.id),Gf=Af!=null&&Af.layerId?((tp=h==null?void 0:h.current)==null?void 0:tp.overriddenLayers().find(Uf=>Uf.id===Af.layerId))??((sp=h==null?void 0:h.current)==null?void 0:sp.findById(Af.layerId)):void 0;W==null||W(Af==null?void 0:Af.layerId,Af==null?void 0:Af.featureId,rf.id.description||rf.id.properties?{defaultInfobox:{title:(Gf==null?void 0:Gf.title)??rf.id.name,content:getEntityContent(rf.id,bf.clock.currentTime??new Cesium$1.JulianDate,Af!=null&&Af.layerId?(fp=(hp=Gf==null?void 0:Gf.infobox)==null?void 0:hp.property)==null?void 0:fp.defaultContent:void 0)}}:void 0),_i.current=rf.id,rf.id instanceof Cesium$1.Entity&&!(Af!=null&&Af.hideIndicator)?bf.selectedEntity=rf.id:bf.selectedEntity=void 0;return}if(rf&&(rf instanceof Cesium$1.Cesium3DTileFeature||rf instanceof Cesium$1.Cesium3DTilePointFeature)){const Af=getTag(rf);if(Af){const Gf=tileProperties(rf);W==null||W(Af.layerId,String(Af.featureId),Gf.length?{defaultInfobox:{title:rf.getProperty("name"),content:{type:"table",value:tileProperties(rf)}}}:void 0,{feature:Af.computedFeature}),_i.current=rf}return}if(rf&&"content"in rf&&rf.content&&typeof rf.content=="object"&&"_model"in rf.content&&rf.content._model instanceof Cesium$1.Model){const Af=rf.content._model,Gf=getTag(Af);Gf&&(W==null||W(Gf.layerId,String(Gf.featureId)),_i.current=Af);return}if(rf!=null&&rf.primitive&&(rf.primitive instanceof Cesium$1.Primitive||rf.primitive instanceof Cesium$1.GroundPrimitive)){const Af=rf.primitive,Gf=getTag(Af);Gf&&(W==null||W(Gf.layerId,String(Gf.featureId)),_i.current=Af);return}if(rf===void 0&&Sf.position){const Af=bf.scene,Gf=Af.camera.getPickRay(Sf.position);if(Gf){const Uf=await Af.imageryLayers.pickImageryLayerFeatures(Gf,Af),jf=Uf==null?void 0:Uf[0],yp=(al=jf==null?void 0:jf.data)==null?void 0:al.appearanceType;if(yp&&((yf=(lf=(tf=jf==null?void 0:jf.data)==null?void 0:tf.feature)==null?void 0:lf[yp])==null?void 0:yf.show)!==!1){const pp=getTag(jf.imageryLayer),op=jf.position;op&&requestAnimationFrame(()=>{pp!=null&&pp.hideIndicator||(bf.selectedEntity=new Cesium$1.Entity({position:Cesium$1.Cartographic.toCartesian(op)}))});const Zp=pp!=null&&pp.layerId?((If=h==null?void 0:h.current)==null?void 0:If.overriddenLayers().find(lg=>lg.id===pp.layerId))??((Of=h==null?void 0:h.current)==null?void 0:Of.findById(pp.layerId)):void 0,og=getEntityContent(jf.data.feature??jf,bf.clock.currentTime??new Cesium$1.JulianDate,pp!=null&&pp.layerId?(Mf=(Tf=Zp==null?void 0:Zp.infobox)==null?void 0:Tf.property)==null?void 0:Mf.defaultContent:void 0);ba.current=jf.data.featureId,W==null||W(jf.data.layerId,jf.data.featureId,og.value.length?{defaultInfobox:{title:(Zp==null?void 0:Zp.title)??jf.name,content:og}}:void 0,{feature:jf.data.feature});return}}}bf.selectedEntity=void 0,W==null||W()},[W,pu,h,p,s==null?void 0:s.featureId,s==null?void 0:s.layerId]);React.useEffect(()=>{var Sf;if(e2eAccessToken())return setE2ECesiumViewer((Sf=Ra.current)==null?void 0:Sf.cesiumElement),()=>{setE2ECesiumViewer(void 0)}},[(qm=Ra.current)==null?void 0:qm.cesiumElement]),React.useEffect(()=>{var rf;const Sf=(rf=Ra.current)==null?void 0:rf.cesiumElement;!Sf||Sf.isDestroyed()||Sf.scene.requestRender()});const Nl=React.useCallback(()=>{var rf;const Sf=(rf=Ra.current)==null?void 0:rf.cesiumElement;!Sf||Sf.isDestroyed()||Sf.scene.requestRender()},[]),Ru=React.useRef(La);Ru.current=La;const Vd=React.useCallback(()=>{Ru.current&&setTimeout(()=>{var bf;if(!Ru.current)return;const Sf=(bf=Ra.current)==null?void 0:bf.cesiumElement;if(!Sf||Sf.isDestroyed())return;const rf=getCredits(Sf)??[];Ru.current(rf)},3e3)},[]),Gd=React.useMemo(()=>({selectionReason:c,timelineManagerRef:y,flyTo:yt.flyTo,getCamera:yt.getCamera,onLayerEdit:se,onLayerVisibility:pi,onLayerLoad:zi,requestRender:yt.requestRender,getSurfaceDistance:yt.getSurfaceDistance,toXYZ:yt.toXYZ,toWindowPosition:yt.toWindowPosition,isPositionVisible:yt.isPositionVisible,updateCredits:Vd}),[c,yt,se,pi,zi,y,Vd]);React.useEffect(()=>{var rf,bf,Pf;const Sf=(bf=(rf=Ra.current)==null?void 0:rf.cesiumElement)==null?void 0:bf.scene.globe;if(Sf){const Xf=Sf._surface;Xf&&(Xf.tileProvider._debug.wireframe=((Pf=n==null?void 0:n.debug)==null?void 0:Pf.showGlobeWireframe)??!1)}},[(ep=n==null?void 0:n.debug)==null?void 0:ep.showGlobeWireframe]),React.useEffect(()=>{var Sf;o&&((Sf=y==null?void 0:y.current)==null||Sf.commit({cmd:"SET_TIME",payload:{start:o,stop:o,current:o},committer:{source:"initialize",id:"reearth_core"}}))},[o,y]);const{sceneLight:cf,sceneBackgroundColor:uf,sceneMsaaSamples:gf,sceneMode:hf}=useViewerProperty({property:n,cesium:Ra});useLayerDragDrop({cesium:Ra,onLayerDrag:lt,onLayerDrop:Pe,isLayerDraggable:S}),useExplicitRender({cesium:Ra,requestingRenderMode:F,isLayerDragging:P,shouldRender:L,property:n});const{cameraViewBoundaries:pf,cameraViewOuterBoundaries:_f,cameraViewBoundariesMaterial:Vf,handleCameraChange:Rf,handleCameraMoveEnd:Wa,mountCamera:af,unmountCamera:Xd}=useCamera({cesium:Ra,property:n,camera:N,cameraForceHorizontalRoll:z,featureFlags:p,engineAPI:yt,onCameraChange:Sa}),gd=React.useCallback(()=>{af==null||af(),fa==null||fa()},[af,fa]),pd=React.useCallback(()=>{Xd==null||Xd()},[Xd]),Zd=React.useCallback(()=>{Vd()},[Vd]),sf=React.useCallback(()=>{Vd()},[Vd]);return{cesium:Ra,cesiumIonAccessToken:ma,mouseEventHandles:pu,layerSelectWithRectEventHandlers:nt,context:Gd,sceneLight:cf,sceneBackgroundColor:uf,sceneMsaaSamples:gf,sceneMode:hf,cameraViewBoundaries:pf,cameraViewOuterBoundaries:_f,cameraViewBoundariesMaterial:Vf,handleCameraChange:Rf,handleCameraMoveEnd:Wa,handleUpdate:Nl,handleClick:yu,handleMount:gd,handleUnmount:pd,handleTilesChange:Zd,handleTerrainProviderChange:sf}};function tileProperties(t){return t.getPropertyIds().reduce((n,o)=>[...n,{key:o,value:t.getProperty(o)}],[])}function getLayerId(t){var n,o;if(t&&"id"in t&&t.id instanceof Cesium$1.Entity)return(n=getTag(t.id))==null?void 0:n.layerId;if(t&&t instanceof Cesium$1.Cesium3DTileFeature)return(o=getTag(t.tileset))==null?void 0:o.layerId}function makeHandler(t,n,o){return{name:t,get:()=>o[0].uniforms[n],set:s=>{o.forEach(c=>{c.uniforms[n]=s})}}}function createUniforms(t){const n=groupBy(t.flatMap(({stage:s,stages:c,uniforms:d})=>d.flatMap(h=>typeof h=="string"?[makeHandler(h,h,s!=null?[s]:c)]:Object.entries(h).map(([p,y])=>makeHandler(p,y,s!=null?[s]:c)))),({name:s})=>s),o={};return Object.entries(n).forEach(([s,c])=>{Object.defineProperty(o,s,{get:()=>c[0].get(),set:d=>{c.forEach(h=>{h.set(d)})}})}),o}const crossBilateralFilter=`#define SAMPLES (8.0)
6216
+ vec4 color = computeDayColor(initialColor`).erase(["#ifdef APPLY_MATERIAL","czm_materialInput materialInput;","materialInput.st = v_textureCoordinates.st;","materialInput.normalEC = normalize(v_normalEC);","materialInput.positionToEyeEC = -v_positionEC;","materialInput.tangentToEyeMatrix = czm_eastNorthUpToEyeCoordinates(v_positionMC, normalize(v_normalEC));","materialInput.slope = v_slope;","materialInput.height = v_height;","materialInput.aspect = v_aspect;","czm_material material = czm_getMaterial(materialInput);","vec4 materialColor = vec4(material.diffuse, material.alpha);","color = alphaBlend(materialColor, color);","#endif"]);function makeGlobeShadersDirty(t){const n=t.material;n==null?(t.material=Cesium$1.Material.fromType("Color"),t.material=void 0):(t.material=void 0,t.material=n)}const useIBL=({sphericalHarmonicCoefficients:t,globeImageBasedLighting:n,hasVertexNormals:o,enableLighting:s})=>{const c=React.useMemo(()=>o&&s,[o,s]),d=useImmutableFunction(t||[]),h=useImmutableFunction(n&&!!t),p=React.useMemo(()=>({u_reearth_sphericalHarmonicCoefficients:d,u_reearth_globeImageBasedLighting:h}),[d,h]),y=React.useMemo(()=>new StringMatcher().replace(["float diffuseIntensity = clamp(czm_getLambertDiffuse(czm_lightDirectionEC, normalize(v_normalEC)) * u_lambertDiffuseMultiplier + u_vertexShadowDarkness, 0.0, 1.0);","vec4 finalColor = vec4(color.rgb * czm_lightColor * diffuseIntensity, color.a);"],"vec4 finalColor = reearth_computeImageBasedLightingColor(color);"),[]);return{uniformMapForIBL:p,isIBLEnabled:c,shaderForIBL:y}},useTerrainHeatmap=({cesium:t,terrain:n})=>{const{type:o,maxHeight:s,minHeight:c,logarithmic:d,colorLUT:h}=(n==null?void 0:n.elevationHeatMap)??{},p=React.useMemo(()=>o==="custom",[o]),y=React.useMemo(()=>new StringMatcher().replace(["#ifdef APPLY_COLOR_TO_ALPHA","vec3 colorDiff = abs(color.rgb - colorToAlpha.rgb);","colorDiff.r = czm_maximumComponent(colorDiff);","alpha = czm_branchFreeTernary(colorDiff.r < colorToAlpha.a, 0.0, alpha);","#endif"],"color = reearth_calculateElevationMapForGlobe(colorToAlpha, color);"),[]);return React.useEffect(()=>{var P;if(!((P=t.current)!=null&&P.cesiumElement)||!p)return;const S=t.current.cesiumElement.scene.globe;return S.material=new VertexTerrainElevationMaterial,()=>{S.material=void 0}},[t,p]),React.useEffect(()=>{var P;if(!((P=t.current)!=null&&P.cesiumElement)||!p)return;const S=t.current.cesiumElement.scene.globe;S.material instanceof VertexTerrainElevationMaterial&&(S.material.uniforms.minHeight=c??S.material.uniforms.minHeight,S.material.uniforms.maxHeight=s??S.material.uniforms.maxHeight,S.material.uniforms.logarithmic=d??S.material.uniforms.logarithmic)},[t,p,s,c,d]),React.useEffect(()=>{var P;if(!((P=t.current)!=null&&P.cesiumElement)||!p||!h)return;const S=t.current.cesiumElement.scene.globe;S.material instanceof VertexTerrainElevationMaterial&&(S.material.uniforms.colorMap=createColorMapImage(h))},[t,p,h]),{isCustomHeatmapEnabled:p,shaderForTerrainHeatmap:y}},useOverrideGlobeShader=({cesium:t,sphericalHarmonicCoefficients:n,globeShadowDarkness:o,globeImageBasedLighting:s,hasVertexNormals:c,enableLighting:d,terrain:h})=>{const{uniformMapForIBL:p,isIBLEnabled:y,shaderForIBL:S}=useIBL({sphericalHarmonicCoefficients:n,globeImageBasedLighting:s,hasVertexNormals:c,enableLighting:d}),{isCustomHeatmapEnabled:P,shaderForTerrainHeatmap:L}=useTerrainHeatmap({cesium:t,terrain:h});React.useEffect(()=>{var W;if(!((W=t.current)!=null&&W.cesiumElement)||!c)return;const z=t.current.cesiumElement.scene.globe;z.vertexShadowDarkness=o??z.vertexShadowDarkness},[t,o,c]);const F=React.useRef(!1),N=React.useCallback(()=>{var mn,pi;if(!((mn=t.current)!=null&&mn.cesiumElement)||!F.current)return;const z=t.current.cesiumElement.scene.globe,W=z._surfaceShaderSet;if(!W)return;const lt=W.baseFragmentShaderSource,Pe=lt==null?void 0:lt.sources[lt.sources.length-1];if(!Pe||!lt)return;const se=[],mt=[];if(y&&z.enableLighting&&z.terrainProvider.hasVertexNormals&&(se.push(S),mt.push(IBLFS)),P&&(se.push(L),mt.push(HeatmapForTerrainFS)),!se.length||(F.current=!1,!((pi=z==null?void 0:z._surface)!=null&&pi._tileProvider)))return;makeGlobeShadersDirty(z);const kt=defaultMatcher.concat(...se).execute(Pe);z._surface._tileProvider.materialUniformMap={...z._surface._tileProvider.materialUniformMap??{},...p},W.baseFragmentShaderSource=new ShaderSource({sources:[...lt.sources.slice(0,-1),GlobeFSDefinitions+kt+mt.join("")],defines:lt.defines})},[t,P,y,S,L,p]);React.useEffect(()=>{var z;if((z=t.current)!=null&&z.cesiumElement)return t.current.cesiumElement.scene.postRender.addEventListener(N)},[t,N]),React.useEffect(()=>{var lt;if(!((lt=t.current)!=null&&lt.cesiumElement)||!y&&!P)return;const z=t.current.cesiumElement.scene,W=z.globe;return F.current=!0,z.requestRender(),()=>{W.isDestroyed()||makeGlobeShadersDirty(W)}},[t,P,y])},useViewerProperty=({cesium:t,property:n})=>{var h,p,y,S,P,L,F,N,z,W,lt;const o=React.useMemo(()=>{var se,mt,kt,mn,pi,zi,Sa,fa,La,Ra,ma,yt,nt,_i,ba,Sc,ms,Xs,pu,yu,Nl,Ru,Vd,Gd,cf,uf,gf;let Pe;return((mt=(se=n==null?void 0:n.scene)==null?void 0:se.light)==null?void 0:mt.type)==="sunLight"?Pe=new Cesium$1.SunLight({color:(mn=(kt=n.scene)==null?void 0:kt.light)!=null&&mn.color?Cesium$1.Color.fromCssColorString(n.scene.light.color):void 0,intensity:(zi=(pi=n.scene)==null?void 0:pi.light)==null?void 0:zi.intensity}):((fa=(Sa=n==null?void 0:n.scene)==null?void 0:Sa.light)==null?void 0:fa.type)==="directionalLight"?Pe=new Cesium$1.DirectionalLight({direction:new Cesium$1.Cartesian3(((ma=(Ra=(La=n==null?void 0:n.scene)==null?void 0:La.light)==null?void 0:Ra.direction)==null?void 0:ma[0])??1,((_i=(nt=(yt=n==null?void 0:n.scene)==null?void 0:yt.light)==null?void 0:nt.direction)==null?void 0:_i[1])??0,((ms=(Sc=(ba=n==null?void 0:n.scene)==null?void 0:ba.light)==null?void 0:Sc.direction)==null?void 0:ms[2])??0),color:(pu=(Xs=n.scene)==null?void 0:Xs.light)!=null&&pu.color?Cesium$1.Color.fromCssColorString(n.scene.light.color):void 0,intensity:(Nl=(yu=n.scene)==null?void 0:yu.light)==null?void 0:Nl.intensity}):(Pe=(Vd=(Ru=t.current)==null?void 0:Ru.cesiumElement)==null?void 0:Vd.scene.light,Pe&&(Pe.color=(cf=(Gd=n==null?void 0:n.scene)==null?void 0:Gd.light)!=null&&cf.color?Cesium$1.Color.fromCssColorString(n.scene.light.color):Pe.color,Pe.intensity=(gf=(uf=n==null?void 0:n.scene)==null?void 0:uf.light)!=null&&gf.intensity?n.scene.light.intensity:Pe.intensity)),Pe},[t,(p=(h=n==null?void 0:n.scene)==null?void 0:h.light)==null?void 0:p.type,(S=(y=n==null?void 0:n.scene)==null?void 0:y.light)==null?void 0:S.color,(L=(P=n==null?void 0:n.scene)==null?void 0:P.light)==null?void 0:L.direction,(N=(F=n==null?void 0:n.scene)==null?void 0:F.light)==null?void 0:N.intensity]),s=React.useMemo(()=>{var Pe;return(Pe=n==null?void 0:n.scene)!=null&&Pe.backgroundColor?Cesium$1.Color.fromCssColorString(n.scene.backgroundColor):void 0},[(z=n==null?void 0:n.scene)==null?void 0:z.backgroundColor]),c=React.useMemo(()=>{var Pe,se,mt;return((Pe=n==null?void 0:n.render)==null?void 0:Pe.antialias)==="extreme"?8:((se=n==null?void 0:n.render)==null?void 0:se.antialias)==="high"?6:((mt=n==null?void 0:n.render)==null?void 0:mt.antialias)==="medium"?4:1},[(W=n==null?void 0:n.render)==null?void 0:W.antialias]),d=React.useMemo(()=>{var Pe,se;return((Pe=n==null?void 0:n.scene)==null?void 0:Pe.mode)==="2d"?Cesium$1.SceneMode.SCENE2D:((se=n==null?void 0:n.scene)==null?void 0:se.mode)==="columbus"?Cesium$1.SceneMode.COLUMBUS_VIEW:Cesium$1.SceneMode.SCENE3D},[(lt=n==null?void 0:n.scene)==null?void 0:lt.mode]);return{sceneLight:o,sceneBackgroundColor:s,sceneMsaaSamples:c,sceneMode:d}},useHooks$1=({ref:t,property:n,time:o,selectedLayerId:s,selectionReason:c,meta:d,layersRef:h,featureFlags:p,timelineManagerRef:y,isLayerDraggable:S,isLayerDragging:P,shouldRender:L,requestingRenderMode:F,camera:N,cameraForceHorizontalRoll:z,onLayerSelect:W,onLayerDrag:lt,onLayerDrop:Pe,onLayerEdit:se,onLayerSelectWithRectStart:mt,onLayerSelectWithRectMove:kt,onLayerSelectWithRectEnd:mn,onLayerVisibility:pi,onLayerLoad:zi,onCameraChange:Sa,onMount:fa,onCreditsUpdate:La})=>{var of,nf,df,Cf,ff,xf,wf,Ff,Hf,Jf,Wf,Dm,vf,mf,Lf,Df,kf,Yf,Qf,Zf,jm,qf,qm,ep;const Ra=React.useRef(null),ma=typeof(d==null?void 0:d.cesiumIonAccessToken)=="string"&&d.cesiumIonAccessToken?d.cesiumIonAccessToken:Cesium$1.Ion.defaultAccessToken,yt=useEngineRef(t,Ra),nt=useLayerSelectWithRect({cesium:Ra,engineAPI:yt,onLayerSelectWithRectStart:mt,onLayerSelectWithRectMove:kt,onLayerSelectWithRectEnd:mn,featureFlags:p});React.useEffect(()=>{var Xf,Bf,Am,tp,sp,fp,mp,al,tf,lf,yf,If,Of,Tf;const Sf=(Bf=(Xf=Ra==null?void 0:Ra.current)==null?void 0:Xf.cesiumElement)==null?void 0:Bf.shadowMap;if(!Sf)return;Sf.softShadows=((sp=(tp=(Am=n==null?void 0:n.scene)==null?void 0:Am.shadow)==null?void 0:tp.shadowMap)==null?void 0:sp.softShadows)??!1,Sf.darkness=((al=(mp=(fp=n==null?void 0:n.scene)==null?void 0:fp.shadow)==null?void 0:mp.shadowMap)==null?void 0:al.darkness)??.3,Sf.size=((yf=(lf=(tf=n==null?void 0:n.scene)==null?void 0:tf.shadow)==null?void 0:lf.shadowMap)==null?void 0:yf.size)??2048,Sf.maximumDistance=((Tf=(Of=(If=n==null?void 0:n.scene)==null?void 0:If.shadow)==null?void 0:Of.shadowMap)==null?void 0:Tf.maximumDistance)??5e3,Sf.fadingEnabled=!0,Sf.normalOffset=!0;const rf={polygonOffsetFactor:1.1,polygonOffsetUnits:4,normalOffsetScale:.5,normalShading:!0,normalShadingSmooth:.3,depthBias:1e-4},bf={polygonOffsetFactor:1.1,polygonOffsetUnits:4,normalOffsetScale:.1*100,normalShading:!0,normalShadingSmooth:.05,depthBias:2e-5*10},Pf={polygonOffsetFactor:1.1,polygonOffsetUnits:4,normalOffsetScale:0,normalShading:!0,normalShadingSmooth:.1,depthBias:5e-4};Sf._terrainBias&&Object.assign(Sf._terrainBias,rf),Sf._primitiveBias&&Object.assign(Sf._primitiveBias,bf),Sf._pointBias&&Object.assign(Sf._pointBias,Pf)},[(df=(nf=(of=n==null?void 0:n.scene)==null?void 0:of.shadow)==null?void 0:nf.shadowMap)==null?void 0:df.softShadows,(xf=(ff=(Cf=n==null?void 0:n.scene)==null?void 0:Cf.shadow)==null?void 0:ff.shadowMap)==null?void 0:xf.darkness,(Hf=(Ff=(wf=n==null?void 0:n.scene)==null?void 0:wf.shadow)==null?void 0:Ff.shadowMap)==null?void 0:Hf.size,(Dm=(Wf=(Jf=n==null?void 0:n.scene)==null?void 0:Jf.shadow)==null?void 0:Wf.shadowMap)==null?void 0:Dm.maximumDistance]);const _i=React.useRef(),ba=React.useRef();React.useEffect(()=>{var Xf,Bf,Am,tp,sp,fp,mp,al;const Sf=(Xf=Ra.current)==null?void 0:Xf.cesiumElement;if(!Sf||Sf.isDestroyed()||ba.current===(s==null?void 0:s.featureId)&&(s==null?void 0:s.featureId)!==void 0)return;const rf=getTag(_i.current);if(!(rf!=null&&rf.featureId)&&(rf!=null&&rf.layerId)&&(s!=null&&s.layerId)&&(rf==null?void 0:rf.layerId)===s.layerId||rf!=null&&rf.featureId&&(s!=null&&s.featureId)&&(rf==null?void 0:rf.featureId)===s.featureId)return;const bf=findEntity(Sf,void 0,s==null?void 0:s.featureId)||findEntity(Sf,s==null?void 0:s.layerId);if(_i.current===bf)return;const Pf=getTag(bf);if(bf instanceof Cesium$1.Entity&&!(Pf!=null&&Pf.hideIndicator)?Sf.selectedEntity=bf:Sf.selectedEntity=void 0,_i.current=bf,!bf&&(s!=null&&s.featureId)){const tf=[],lf=(Bf=h==null?void 0:h.current)==null?void 0:Bf.findAll(yf=>{var If,Of;return yf.type==="simple"&&!!((If=yf.data)!=null&&If.type)&&tf.includes((Of=yf.data)==null?void 0:Of.type)});if(lf!=null&&lf.length){const[yf,If]=(()=>{var Of;for(const Tf of lf){const Mf=(Of=Tf.computed)==null?void 0:Of.features.find(Af=>Af.id!==(s==null?void 0:s.featureId));if(Mf)return[Mf,Tf.id]}})()||[];W==null||W(If,yf==null?void 0:yf.id)}}if(!(Pf!=null&&Pf.unselectable)){if(bf&&bf instanceof Cesium$1.Cesium3DTileFeature){const tf=getTag(bf);if(tf){const lf=tileProperties(bf);W==null||W(tf.layerId,String(tf.featureId),lf.length?{defaultInfobox:{title:bf.getProperty("name"),content:{type:"table",value:lf}}}:void 0,{feature:tf.computedFeature})}return}if(bf){const tf=Pf!=null&&Pf.layerId?((Am=h==null?void 0:h.current)==null?void 0:Am.overriddenLayers().find(lf=>lf.id===Pf.layerId))??((tp=h==null?void 0:h.current)==null?void 0:tp.findById(Pf.layerId)):void 0;W==null||W(Pf==null?void 0:Pf.layerId,Pf==null?void 0:Pf.featureId,bf instanceof Cesium$1.Entity&&(bf.description||bf.properties)?{defaultInfobox:{title:bf.name,content:getEntityContent(bf,((fp=(sp=Ra.current)==null?void 0:sp.cesiumElement)==null?void 0:fp.clock.currentTime)??new Cesium$1.JulianDate,Pf!=null&&Pf.layerId?(al=(mp=tf==null?void 0:tf.infobox)==null?void 0:mp.property)==null?void 0:al.defaultContent:void 0)}}:void 0)}}},[Ra,s,W,h,p]);const Sc=React.useMemo(()=>{var Sf,rf,bf,Pf,Xf,Bf;return(rf=(Sf=n==null?void 0:n.scene)==null?void 0:Sf.imageBasedLighting)!=null&&rf.sphericalHarmonicCoefficients?arrayToCartecian3((Pf=(bf=n==null?void 0:n.scene)==null?void 0:bf.imageBasedLighting)==null?void 0:Pf.sphericalHarmonicCoefficients,(Bf=(Xf=n==null?void 0:n.scene)==null?void 0:Xf.imageBasedLighting)==null?void 0:Bf.intensity):void 0},[(mf=(vf=n==null?void 0:n.scene)==null?void 0:vf.imageBasedLighting)==null?void 0:mf.sphericalHarmonicCoefficients,(Df=(Lf=n==null?void 0:n.scene)==null?void 0:Lf.imageBasedLighting)==null?void 0:Df.intensity]);useOverrideGlobeShader({cesium:Ra,sphericalHarmonicCoefficients:Sc,globeShadowDarkness:(Yf=(kf=n==null?void 0:n.scene)==null?void 0:kf.shadow)==null?void 0:Yf.darkness,globeImageBasedLighting:(Zf=(Qf=n==null?void 0:n.scene)==null?void 0:Qf.imageBasedLighting)==null?void 0:Zf.enabled,enableLighting:(jm=n==null?void 0:n.globe)==null?void 0:jm.enableLighting,hasVertexNormals:((qf=n==null?void 0:n.terrain)==null?void 0:qf.enabled)&&n.terrain.normal,terrain:n==null?void 0:n.terrain});const ms=React.useCallback((Sf,rf,bf)=>{var Pf,Xf;if(((Pf=yt.mouseEventCallbacks[Sf])==null?void 0:Pf.length)>0){const Bf=(Xf=Ra.current)==null?void 0:Xf.cesiumElement;if(!Bf||Bf.isDestroyed())return;const Am=makeMouseEventProps(Bf,rf);if(!Am)return;const tp=getLayerId(bf);tp&&(Am.layerId=tp),yt.mouseEventCallbacks[Sf].forEach(sp=>sp(Am))}},[yt]),Xs=React.useCallback(Sf=>{yt.mouseEventCallbacks.wheel.length>0&&yt.mouseEventCallbacks.wheel.forEach(rf=>rf({delta:Sf}))},[yt]),pu=React.useMemo(()=>{const Sf={click:void 0,doubleClick:void 0,mouseDown:void 0,mouseUp:void 0,rightClick:void 0,rightDown:void 0,rightUp:void 0,middleClick:void 0,middleDown:void 0,middleUp:void 0,mouseMove:void 0,mouseEnter:void 0,mouseLeave:void 0,wheel:rf=>{Xs(rf)}};return Object.keys(Sf).forEach(rf=>{rf!=="wheel"&&(Sf[rf]=(bf,Pf)=>{ms(rf,bf,Pf)})}),Sf},[ms,Xs]),yu=React.useCallback(async(Sf,rf)=>{var Bf,Am,tp,sp,fp,mp,al,tf,lf,yf,If,Of,Tf,Mf;if((Bf=pu.click)==null||Bf.call(pu,Sf,rf),!(p&FEATURE_FLAGS.SINGLE_SELECTION))return;const bf=(Am=Ra.current)==null?void 0:Am.cesiumElement;if(!bf||bf.isDestroyed())return;ba.current=void 0;const Pf=findEntity(bf,void 0,s==null?void 0:s.featureId)||findEntity(bf,s==null?void 0:s.layerId),Xf=getTag(Pf);if((!Pf||Pf instanceof Cesium$1.Entity&&(Xf!=null&&Xf.hideIndicator))&&(bf.selectedEntity=void 0),rf&&"id"in rf&&rf.id instanceof Cesium$1.Entity&&isSelectable(rf.id)){const Af=getTag(rf.id),Gf=Af!=null&&Af.layerId?((tp=h==null?void 0:h.current)==null?void 0:tp.overriddenLayers().find(Uf=>Uf.id===Af.layerId))??((sp=h==null?void 0:h.current)==null?void 0:sp.findById(Af.layerId)):void 0;W==null||W(Af==null?void 0:Af.layerId,Af==null?void 0:Af.featureId,rf.id.description||rf.id.properties?{defaultInfobox:{title:(Gf==null?void 0:Gf.title)??rf.id.name,content:getEntityContent(rf.id,bf.clock.currentTime??new Cesium$1.JulianDate,Af!=null&&Af.layerId?(mp=(fp=Gf==null?void 0:Gf.infobox)==null?void 0:fp.property)==null?void 0:mp.defaultContent:void 0)}}:void 0),_i.current=rf.id,rf.id instanceof Cesium$1.Entity&&!(Af!=null&&Af.hideIndicator)?bf.selectedEntity=rf.id:bf.selectedEntity=void 0;return}if(rf&&(rf instanceof Cesium$1.Cesium3DTileFeature||rf instanceof Cesium$1.Cesium3DTilePointFeature)){const Af=getTag(rf);if(Af){const Gf=tileProperties(rf);W==null||W(Af.layerId,String(Af.featureId),Gf.length?{defaultInfobox:{title:rf.getProperty("name"),content:{type:"table",value:tileProperties(rf)}}}:void 0,{feature:Af.computedFeature}),_i.current=rf}return}if(rf&&"content"in rf&&rf.content&&typeof rf.content=="object"&&"_model"in rf.content&&rf.content._model instanceof Cesium$1.Model){const Af=rf.content._model,Gf=getTag(Af);Gf&&(W==null||W(Gf.layerId,String(Gf.featureId)),_i.current=Af);return}if(rf!=null&&rf.primitive&&(rf.primitive instanceof Cesium$1.Primitive||rf.primitive instanceof Cesium$1.GroundPrimitive)){const Af=rf.primitive,Gf=getTag(Af);Gf&&(W==null||W(Gf.layerId,String(Gf.featureId)),_i.current=Af);return}if(rf===void 0&&Sf.position){const Af=bf.scene,Gf=Af.camera.getPickRay(Sf.position);if(Gf){const Uf=await Af.imageryLayers.pickImageryLayerFeatures(Gf,Af),jf=Uf==null?void 0:Uf.findLast(up=>!!up.data),yp=(al=jf==null?void 0:jf.data)==null?void 0:al.appearanceType;if(yp&&((yf=(lf=(tf=jf==null?void 0:jf.data)==null?void 0:tf.feature)==null?void 0:lf[yp])==null?void 0:yf.show)!==!1){const up=getTag(jf.imageryLayer),op=jf.position;op&&requestAnimationFrame(()=>{up!=null&&up.hideIndicator||(bf.selectedEntity=new Cesium$1.Entity({position:Cesium$1.Cartographic.toCartesian(op)}))});const Zp=up!=null&&up.layerId?((If=h==null?void 0:h.current)==null?void 0:If.overriddenLayers().find(lg=>lg.id===up.layerId))??((Of=h==null?void 0:h.current)==null?void 0:Of.findById(up.layerId)):void 0,og=getEntityContent(jf.data.feature??jf,bf.clock.currentTime??new Cesium$1.JulianDate,up!=null&&up.layerId?(Mf=(Tf=Zp==null?void 0:Zp.infobox)==null?void 0:Tf.property)==null?void 0:Mf.defaultContent:void 0);ba.current=jf.data.featureId,W==null||W(jf.data.layerId,jf.data.featureId,og.value.length?{defaultInfobox:{title:(Zp==null?void 0:Zp.title)??jf.name,content:og}}:void 0,{feature:jf.data.feature});return}}}bf.selectedEntity=void 0,W==null||W()},[W,pu,h,p,s==null?void 0:s.featureId,s==null?void 0:s.layerId]);React.useEffect(()=>{var Sf;if(e2eAccessToken())return setE2ECesiumViewer((Sf=Ra.current)==null?void 0:Sf.cesiumElement),()=>{setE2ECesiumViewer(void 0)}},[(qm=Ra.current)==null?void 0:qm.cesiumElement]),React.useEffect(()=>{var rf;const Sf=(rf=Ra.current)==null?void 0:rf.cesiumElement;!Sf||Sf.isDestroyed()||Sf.scene.requestRender()});const Nl=React.useCallback(()=>{var rf;const Sf=(rf=Ra.current)==null?void 0:rf.cesiumElement;!Sf||Sf.isDestroyed()||Sf.scene.requestRender()},[]),Ru=React.useRef(La);Ru.current=La;const Vd=React.useCallback(()=>{Ru.current&&setTimeout(()=>{var bf;if(!Ru.current)return;const Sf=(bf=Ra.current)==null?void 0:bf.cesiumElement;if(!Sf||Sf.isDestroyed())return;const rf=getCredits(Sf)??[];Ru.current(rf)},3e3)},[]),Gd=React.useMemo(()=>({selectionReason:c,timelineManagerRef:y,flyTo:yt.flyTo,getCamera:yt.getCamera,onLayerEdit:se,onLayerVisibility:pi,onLayerLoad:zi,requestRender:yt.requestRender,getSurfaceDistance:yt.getSurfaceDistance,toXYZ:yt.toXYZ,toWindowPosition:yt.toWindowPosition,isPositionVisible:yt.isPositionVisible,updateCredits:Vd}),[c,yt,se,pi,zi,y,Vd]);React.useEffect(()=>{var rf,bf,Pf;const Sf=(bf=(rf=Ra.current)==null?void 0:rf.cesiumElement)==null?void 0:bf.scene.globe;if(Sf){const Xf=Sf._surface;Xf&&(Xf.tileProvider._debug.wireframe=((Pf=n==null?void 0:n.debug)==null?void 0:Pf.showGlobeWireframe)??!1)}},[(ep=n==null?void 0:n.debug)==null?void 0:ep.showGlobeWireframe]),React.useEffect(()=>{var Sf;o&&((Sf=y==null?void 0:y.current)==null||Sf.commit({cmd:"SET_TIME",payload:{start:o,stop:o,current:o},committer:{source:"initialize",id:"reearth_core"}}))},[o,y]);const{sceneLight:cf,sceneBackgroundColor:uf,sceneMsaaSamples:gf,sceneMode:hf}=useViewerProperty({property:n,cesium:Ra});useLayerDragDrop({cesium:Ra,onLayerDrag:lt,onLayerDrop:Pe,isLayerDraggable:S}),useExplicitRender({cesium:Ra,requestingRenderMode:F,isLayerDragging:P,shouldRender:L,property:n});const{cameraViewBoundaries:pf,cameraViewOuterBoundaries:_f,cameraViewBoundariesMaterial:Vf,handleCameraChange:Rf,handleCameraMoveEnd:Wa,mountCamera:af,unmountCamera:Xd}=useCamera({cesium:Ra,property:n,camera:N,cameraForceHorizontalRoll:z,featureFlags:p,engineAPI:yt,onCameraChange:Sa}),gd=React.useCallback(()=>{af==null||af(),fa==null||fa()},[af,fa]),pd=React.useCallback(()=>{Xd==null||Xd()},[Xd]),Zd=React.useCallback(()=>{Vd()},[Vd]),sf=React.useCallback(()=>{Vd()},[Vd]);return{cesium:Ra,cesiumIonAccessToken:ma,mouseEventHandles:pu,layerSelectWithRectEventHandlers:nt,context:Gd,sceneLight:cf,sceneBackgroundColor:uf,sceneMsaaSamples:gf,sceneMode:hf,cameraViewBoundaries:pf,cameraViewOuterBoundaries:_f,cameraViewBoundariesMaterial:Vf,handleCameraChange:Rf,handleCameraMoveEnd:Wa,handleUpdate:Nl,handleClick:yu,handleMount:gd,handleUnmount:pd,handleTilesChange:Zd,handleTerrainProviderChange:sf}};function tileProperties(t){return t.getPropertyIds().reduce((n,o)=>[...n,{key:o,value:t.getProperty(o)}],[])}function getLayerId(t){var n,o;if(t&&"id"in t&&t.id instanceof Cesium$1.Entity)return(n=getTag(t.id))==null?void 0:n.layerId;if(t&&t instanceof Cesium$1.Cesium3DTileFeature)return(o=getTag(t.tileset))==null?void 0:o.layerId}function makeHandler(t,n,o){return{name:t,get:()=>o[0].uniforms[n],set:s=>{o.forEach(c=>{c.uniforms[n]=s})}}}function createUniforms(t){const n=groupBy(t.flatMap(({stage:s,stages:c,uniforms:d})=>d.flatMap(h=>typeof h=="string"?[makeHandler(h,h,s!=null?[s]:c)]:Object.entries(h).map(([p,y])=>makeHandler(p,y,s!=null?[s]:c)))),({name:s})=>s),o={};return Object.entries(n).forEach(([s,c])=>{Object.defineProperty(o,s,{get:()=>c[0].get(),set:d=>{c.forEach(h=>{h.set(d)})}})}),o}const crossBilateralFilter=`#define SAMPLES (8.0)
6217
6217
 
6218
6218
  #ifndef OUTPUT_TYPE
6219
6219
  #define OUTPUT_TYPE (0)
@@ -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,lt=!1)=>(o||y(),N.schedule(z,W,lt)),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:lt,...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,lt=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(lt,z);se=kt=>{const mn=Math.exp(-z*lt*kt);return d-mn*((N+z*lt*W)/mt*Math.sin(mt*kt)+W*Math.cos(mt*kt))}}else if(z===1)se=mt=>d-Math.exp(-lt*mt)*(W+(N+lt*W)*mt);else{const mt=lt*Math.sqrt(z*z-1);se=kt=>{const mn=Math.exp(-z*lt*kt),pi=Math.min(mt*kt,300);return d-mn*((N+z*lt*W)*Math.sinh(pi)+mt*W*Math.cosh(pi))/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 pi=Math.abs(mn)<=o,zi=Math.abs(d-kt)<=n;h.done=pi&&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 lt=L+W,Pe=h===void 0?lt:h(lt);Pe!==lt&&(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,pi;const zi=Sa=>{N(F.value)&&(mn=Sa,pi=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!pi&&mn===void 0&&(fa=!0,kt(Sa),zi(Sa)),mn!==void 0&&Sa>=mn?pi.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:lt}=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:pi}=mn;!se&&S!==null&&(pi=this.speed>=0?this.currentTime>=P:this.currentTime<=0);const zi=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&pi);return zi&&c!==void 0&&(mn.value=getFinalKeyframe(y,this.options,c)),lt&&lt(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 lt=!1;if(window.HandoffAppearAnimations){const se=t.getProps()[optimizedAppearDataAttribute];if(se){const mt=window.HandoffAppearAnimations(se,F);mt!==null&&(W.elapsed=mt,lt=!0)}}N.start(animateMotionValue(F,N,z,t.shouldReduceMotion&&transformProps.has(F)?{type:!1}:W,t,lt));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 lt=0;lt<numAnimationTypes;lt++){const Pe=reversePriorityOrder[lt],se=o[Pe],mt=S[Pe]!==void 0?S[Pe]:P[Pe],kt=isVariantLabel(mt),mn=Pe===y?se.isActive:null;mn===!1&&(z=lt);let pi=mt===P[Pe]&&mt!==S[Pe]&&kt;if(pi&&s&&t.manuallyAnimateOnMount&&(pi=!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&&!pi&&kt||lt>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},nt=_i=>{Sa=!0,F.has(_i)&&(fa=!0,F.delete(_i)),se.needsAnimating[_i]=!0;const ba=t.getValue(_i);ba&&(ba.liveStyle=!1)};for(const _i in yt){const ba=Ra[_i],Sc=ma[_i];if(N.hasOwnProperty(_i))continue;let ms=!1;isKeyframesTarget(ba)&&isKeyframesTarget(Sc)?ms=!shallowCompare(ba,Sc):ms=ba!==Sc,ms?ba!=null?nt(_i):F.add(_i):ba!==void 0&&F.has(_i)?nt(_i):se.protectedKeys[_i]=!0}se.prevProp=mt,se.prevResolvedValues=Ra,se.isActive&&(N={...N,...Ra}),s&&t.blockInitialAnimation&&(Sa=!1),Sa&&(!pi||fa)&&L.push(...La.map(_i=>({animation:_i,options:{type:Pe}})))}if(F.size){const lt={};F.forEach(Pe=>{const se=t.getBaseTarget(Pe),mt=t.getValue(Pe);mt&&(mt.liveStyle=!0),lt[Pe]=se===void 0?null:se}),L.push({animation:lt})}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:lt,onMove:Pe}=this.handlers;F||(lt&&lt(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 lt=getPanInfo(L.type==="pointercancel"?this.lastMoveEventInfo:transformPoint(F,this.transformPagePoint),this.history);this.startEvent&&N&&N(L,lt),z&&z(L,lt)},!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(lt=>{let Pe=this.getAxisMotionValue(lt).get()||0;if(percent.test(Pe)){const{projection:se}=this.visualElement;if(se&&se.layout){const mt=se.layout.layoutBox[lt];mt&&(Pe=calcLength(mt)*(parseFloat(Pe)/100))}}this.originPoint[lt]=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:lt}=L;if(N&&this.currentDirection===null){this.currentDirection=getCurrentDirection(lt),this.currentDirection!==null&&z&&z(this.currentDirection);return}this.updateAxis("x",L.point,lt),this.updateAxis("y",L.point,lt),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:lt,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:lt,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,lt=this.getStack(),Pe=!lt||lt.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:lt,applyTo:Pe}=scaleCorrectors[W],se=S.transform==="none"?F[W]:lt(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 lt=`calc(${N.x}px - 50%)`,Pe=`calc(${N.y}px - 50%)`;d.set(`translate(${lt}, ${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:lt}=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)),lt==null?void 0:lt.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&&(lt==null?void 0:lt.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:lt,requestingRenderMode:Pe,timelineManagerRef:se,cameraForceHorizontalRoll:mt,onLayerSelect:kt,onCameraChange:mn,onLayerDrag:pi,onLayerDrop:zi,onLayerEdit:Sa,onLayerSelectWithRectStart:fa,onLayerSelectWithRectMove:La,onLayerSelectWithRectEnd:Ra,onMount:ma,onLayerVisibility:yt,onLayerLoad:nt,onCreditsUpdate:_i},ba)=>{var gd,pd,Zd,sf,of,nf,df,Cf,ff,xf,wf,Ff,Hf,Jf,Wf,Dm,vf,mf,Lf,Df,kf,Yf,Qf,Zf,jm,qf,qm,ep,Sf,rf,bf,Pf,Xf,Bf,Am,tp,sp,hp,fp,al,tf,lf;const{cesium:Sc,mouseEventHandles:ms,cesiumIonAccessToken:Xs,context:pu,layerSelectWithRectEventHandlers:yu,sceneLight:Nl,sceneBackgroundColor:Ru,sceneMsaaSamples:Vd,sceneMode:Gd,cameraViewBoundaries:cf,cameraViewOuterBoundaries:uf,cameraViewBoundariesMaterial:gf,handleCameraChange:hf,handleCameraMoveEnd:pf,handleUpdate:_f,handleClick:Vf,handleMount:Rf,handleUnmount:Wa,handleTilesChange:af,handleTerrainProviderChange:Xd}=useHooks$1({ref:ba,property:o,time:s,selectedLayerId:y,selectionReason:F,meta:N,layersRef:W,featureFlags:lt,timelineManagerRef:se,isLayerDraggable:S,isLayerDragging:P,shouldRender:L,requestingRenderMode:Pe,camera:c,cameraForceHorizontalRoll:mt,onLayerDrag:pi,onLayerDrop:zi,onLayerSelect:kt,onLayerEdit:Sa,onLayerSelectWithRectStart:fa,onLayerSelectWithRectMove:La,onLayerSelectWithRectEnd:Ra,onLayerVisibility:yt,onLayerLoad:nt,onCameraChange:mn,onMount:ma,onCreditsUpdate:_i});return jsxRuntimeExports.jsxs(Aa$1,{ref:Sc,onUpdate:_f,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:Vf,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:Rf,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:yu.start.handler}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_DOWN,modifier:Cesium$1.KeyboardEventModifier.SHIFT,action:yu.start.shift}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE,action:yu.move.handler}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE,modifier:Cesium$1.KeyboardEventModifier.SHIFT,action:yu.move.shift}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_UP,action:yu.end.handler}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_UP,modifier:Cesium$1.KeyboardEventModifier.SHIFT,action:yu.end.shift})]}),jsxRuntimeExports.jsx(Ta$1,{maximumZoomDistance:(sf=(Zd=o==null?void 0:o.camera)==null?void 0:Zd.limiter)!=null&&sf.enabled?((df=(nf=(of=o.camera)==null?void 0:of.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:pf}),cf&&((xf=(ff=o==null?void 0:o.camera)==null?void 0:ff.limiter)==null?void 0:xf.showHelper)&&jsxRuntimeExports.jsx(Is$1,{children:jsxRuntimeExports.jsx(ua$1,{positions:cf,width:1,material:Cesium$1.Color.RED,arcType:Cesium$1.ArcType.RHUMB})}),uf&&((Ff=(wf=o==null?void 0:o.camera)==null?void 0:wf.limiter)==null?void 0:Ff.showHelper)&&jsxRuntimeExports.jsx(Is$1,{children:jsxRuntimeExports.jsx(ua$1,{positions:uf,width:1,material:gf,arcType:Cesium$1.ArcType.RHUMB})}),jsxRuntimeExports.jsx($a$1,{backgroundColor:Ru,light:Nl,mode:Gd,msaaSamples:Vd,useDepthPicking:!1,useWebVR:!!((Hf=o==null?void 0:o.scene)!=null&&Hf.vr)||void 0,debugShowFramesPerSecond:!!((Jf=o==null?void 0:o.debug)!=null&&Jf.showFramesPerSecond),verticalExaggerationRelativeHeight:(Wf=o==null?void 0:o.scene)==null?void 0:Wf.verticalExaggerationRelativeHeight,verticalExaggeration:(Dm=o==null?void 0:o.scene)==null?void 0:Dm.verticalExaggeration}),jsxRuntimeExports.jsx(Oa$1,{show:((mf=(vf=o==null?void 0:o.sky)==null?void 0:vf.skyBox)==null?void 0:mf.show)??!0}),jsxRuntimeExports.jsx(Vs,{enabled:((Df=(Lf=o==null?void 0:o.sky)==null?void 0:Lf.fog)==null?void 0:Df.enabled)??!0,density:(Yf=(kf=o==null?void 0:o.sky)==null?void 0:kf.fog)==null?void 0:Yf.density}),jsxRuntimeExports.jsx(Ga$1,{show:((Zf=(Qf=o==null?void 0:o.sky)==null?void 0:Qf.sun)==null?void 0:Zf.show)??!0}),jsxRuntimeExports.jsx(ea,{show:((qf=(jm=o==null?void 0:o.sky)==null?void 0:jm.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=(Sf=o==null?void 0:o.sky)==null?void 0:Sf.skyAtmosphere)==null?void 0:rf.lightIntensity,saturationShift:(Pf=(bf=o==null?void 0:o.sky)==null?void 0:bf.skyAtmosphere)==null?void 0:Pf.saturationShift,brightnessShift:(Bf=(Xf=o==null?void 0:o.sky)==null?void 0:Xf.skyAtmosphere)==null?void 0:Bf.brightnessShift}),jsxRuntimeExports.jsx(Globe,{property:o,cesiumIonAccessToken:Xs,onTerrainProviderChange:Xd}),jsxRuntimeExports.jsx(context.Provider,{value:pu,children:h?p:null}),jsxRuntimeExports.jsx(AmbientOcclusion,{...AMBIENT_OCCLUSION_QUALITY[((tp=(Am=o==null?void 0:o.render)==null?void 0:Am.ambientOcclusion)==null?void 0:tp.quality)||"low"],enabled:!!((hp=(sp=o==null?void 0:o.render)==null?void 0:sp.ambientOcclusion)!=null&&hp.enabled),intensity:((al=(fp=o==null?void 0:o.render)==null?void 0:fp.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.28",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({}),[lt,Pe]=React.useState(),[se,mt]=React.useState(),kt=React.useCallback(async(vf,mf,Lf,Df,kf)=>{var jm,qf,qm,ep,Sf,rf,bf,Pf,Xf,Bf,Am;const Yf=((jm=z.layer)==null?void 0:jm.layer.type)==="simple"&&((ep=(qm=(qf=z.layer)==null?void 0:qf.layer)==null?void 0:qm.data)==null?void 0:ep.isSketchLayer);if(z.layerId===vf&&z.featureId===mf&&!Yf)return;const Qf=await(Lf==null?void 0:Lf()),Zf=vf&&mf?(Yf?(Sf=Qf==null?void 0:Qf.features)==null?void 0:Sf.find(tp=>tp.id===mf):(Pf=(rf=L.current)==null?void 0:(bf=rf.engine).findComputedFeatureById)==null?void 0:Pf.call(bf,vf,mf))??(kf==null?void 0:kf.feature):void 0;Pe(vf&&mf?(Am=(Xf=L.current)==null?void 0:(Bf=Xf.engine).findFeatureById)==null?void 0:Am.call(Bf,vf,mf):void 0),mt(Zf),W(tp=>tp.layerId===vf&&tp.featureId===mf?tp:{layerId:vf,featureId:mf,layer:Qf,reason:Df}),c==null||c(vf,Lf,Zf,Df)},[z,c]),mn=React.useRef(),[pi,zi]=useValue(t,d),[Sa,fa]=React.useState(!1),La=React.useCallback(vf=>{fa(!!vf)},[]),[Ra,ma]=useValue(n,h),yt=Ra||"default",[nt,_i]=React.useState("auto");React.useEffect(()=>{_i(yt==="sketch"?"crosshair":yt==="move"?"grab":"auto")},[yt]);const ba=INTERACTION_MODES[yt],Sc=React.useRef(),ms=React.useCallback(vf=>{Sc.current=vf},[]),Xs=React.useCallback(vf=>{var mf;(mf=Sc.current)==null||mf.call(Sc,vf)},[]),pu=React.useRef(),yu=React.useCallback(vf=>{pu.current=vf},[]),Nl=React.useCallback(vf=>{var mf;(mf=pu.current)==null||mf.call(pu,vf)},[]),Ru=React.useRef(),Vd=React.useCallback(vf=>{Ru.current=vf},[]),Gd=React.useCallback(vf=>{var mf;(mf=Ru.current)==null||mf.call(Ru,vf)},[]),cf=React.useRef(),uf=React.useCallback(vf=>{cf.current=vf},[]),gf=React.useCallback(vf=>{var mf;(mf=cf.current)==null||mf.call(cf,vf)},[]),hf=React.useRef(),pf=React.useCallback(vf=>{hf.current=vf},[]),_f=React.useCallback(vf=>{var mf;(mf=hf.current)==null||mf.call(hf,vf)},[]),Vf=React.useRef(),Rf=React.useCallback(vf=>{Vf.current=vf},[]),Wa=React.useCallback(vf=>{var mf;(mf=Vf.current)==null||mf.call(Vf,vf)},[]),af=React.useRef([]),Xd=React.useCallback(vf=>{af.current.push(vf)},[]),gd=React.useCallback(vf=>{af.current.forEach(mf=>mf(vf))},[]),pd=React.useRef([]),Zd=React.useCallback(vf=>{pd.current.push(vf)},[]),sf=React.useCallback(vf=>{pd.current.forEach(mf=>mf(vf))},[]),of=React.useRef([]),nf=React.useCallback(vf=>{of.current.push(vf)},[]),df=React.useCallback(vf=>{of.current.forEach(mf=>mf(vf))},[]),Cf=React.useRef([]),ff=React.useCallback(vf=>{Cf.current.push(vf)},[]),xf=React.useCallback((vf,mf)=>{Cf.current.forEach(Lf=>Lf(vf)),S==null||S(vf,mf)},[S]);React.useEffect(()=>{var vf,mf;o&&((mf=(vf=L.current)==null?void 0:vf.engine)==null||mf.lookAtLayer(o),p==null||p(void 0))},[o,p]);const[wf,Ff]=React.useState(!1),Hf=React.useCallback(()=>{Ff(!0)},[]),Jf=React.useCallback((vf,mf,Lf)=>{var Yf;Ff(!1);const Df=(Yf=L.current)==null?void 0:Yf.layers.findById(vf),kf=Df!=null&&Df.property.default.location?"default.location":Df!=null&&Df.property.default.position?"default.position":void 0;Lf&&Df&&Df.propertyId&&kf&&(y==null||y(Df.propertyId,kf,Lf))},[y,L]),Wf=React.useMemo(()=>({interactionMode:yt,selectedLayer:z,selectedComputedFeature:se,viewport:N,handleCameraForceHorizontalRollChange:La,handleInteractionModeChange:ma,onSketchPluginFeatureCreate:Xd,onSketchPluginFeatureUpdate:Zd,onSketchPluginFeatureDelete:nf,onSketchTypeChange:ff,onLayerVisibility:yu,onLayerLoad:Vd,onLayerEdit:ms,onLayerSelectWithRectStart:uf,onLayerSelectWithRectMove:pf,onLayerSelectWithRectEnd:Rf}),[yt,z,se,N,ma,La,ms,Xd,Zd,nf,ff,yu,Vd,uf,pf,Rf]),Dm=React.useMemo(()=>({position:"relative",width:"100%",height:"100%",overflow:"hidden"}),[]);return useCoreAPI({viewerProperty:s}),{mapRef:L,wrapperRef:F,selectedFeature:lt,camera:pi,featureFlags:ba,isLayerDragging:wf,timelineManagerRef:mn,cursor:nt,cameraForceHorizontalRoll:Sa,coreContextValue:Wf,containerStyle:Dm,overriddenInteractionMode:yt,handleLayerSelect:kt,handleLayerDrag:Hf,handleLayerDrop:Jf,handleLayerEdit:Xs,handleCameraChange:zi,handleInteractionModeChange:ma,handleSketchPluginFeatureCreate:gd,handleSketchPluginFeatureUpdate:sf,handleSketchPluginFeatureDelete:df,handleSketchTypeChange:xf,handleLayerVisibility:Nl,handleLayerLoad:Gd,handleLayerSelectWithRectStart:gf,handleLayerSelectWithRectMove:_f,handleLayerSelectWithRectEnd:Wa}}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:lt,children:Pe,onLayerDrop:se,onLayerSelect:mt,onCameraChange:kt,onZoomToLayer:mn,onInteractionModeChange:pi,onMount:zi,onSketchTypeChangeProp:Sa,onSketchFeatureCreate:fa,onSketchFeatureUpdate:La,onSketchFeatureDelete:Ra,onAPIReady:ma,onCreditsUpdate:yt},nt)=>{const{mapRef:_i,wrapperRef:ba,selectedFeature:Sc,camera:ms,featureFlags:Xs,isLayerDragging:pu,timelineManagerRef:yu,cursor:Nl,cameraForceHorizontalRoll:Ru,coreContextValue:Vd,containerStyle:Gd,overriddenInteractionMode:cf,handleLayerSelect:uf,handleLayerDrag:gf,handleLayerDrop:hf,handleLayerEdit:pf,handleCameraChange:_f,handleInteractionModeChange:Vf,handleSketchPluginFeatureCreate:Rf,handleSketchPluginFeatureUpdate:Wa,handleSketchPluginFeatureDelete:af,handleSketchTypeChange:Xd,handleLayerVisibility:gd,handleLayerLoad:pd,handleLayerSelectWithRectStart:Zd,handleLayerSelectWithRectMove:sf,handleLayerSelectWithRectEnd:of}=useHooks({camera:S,interactionMode:L,zoomedLayerId:lt,viewerProperty:s,onLayerSelect:mt,onCameraChange:kt,onZoomToLayer:mn,onLayerDrop:se,onInteractionModeChange:pi,onSketchTypeChangeProp:Sa},nt);return jsxRuntimeExports.jsx(ErrorBoundary,{FallbackComponent:Error$1,children:jsxRuntimeExports.jsx(VisualizerProvider,{mapRef:_i,children:jsxRuntimeExports.jsxs("div",{ref:ba,style:Gd,children:[jsxRuntimeExports.jsx(Map$1,{ref:_i,isBuilt:n,isEditable:o,engine:t,layers:c,engines,camera:ms,cameraForceHorizontalRoll:Ru,clusters:d,hiddenLayers:y,isLayerDragging:pu,isLayerDraggable:o,meta:N,displayCredits:z,style:W,featureFlags:Xs,shouldRender:F,property:s,time:P,small:h,ready:p,timelineManagerRef:yu,interactionMode:cf,selectedFeature:Sc,cursor:Nl,onCameraChange:_f,onLayerDrag:gf,onLayerDrop:hf,onLayerSelect:uf,onLayerEdit:pf,overrideInteractionMode:Vf,onSketchFeatureCreate:fa,onSketchPluginFeatureCreate:Rf,onSketchFeatureUpdate:La,onSketchPluginFeatureUpdate:Wa,onSketchFeatureDelete:Ra,onSketchPluginFeatureDelete:af,onSketchTypeChange:Xd,onMount:zi,onLayerVisibility:gd,onLayerLoad:pd,onLayerSelectWithRectStart:Zd,onLayerSelectWithRectMove:sf,onLayerSelectWithRectEnd:of,onAPIReady:ma,onCreditsUpdate:yt}),jsxRuntimeExports.jsx(coreContext.Provider,{value:Vd,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&&currentQueue[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,lt=!1)=>(o||y(),N.schedule(z,W,lt)),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:lt,...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,lt=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(lt,z);se=kt=>{const mn=Math.exp(-z*lt*kt);return d-mn*((N+z*lt*W)/mt*Math.sin(mt*kt)+W*Math.cos(mt*kt))}}else if(z===1)se=mt=>d-Math.exp(-lt*mt)*(W+(N+lt*W)*mt);else{const mt=lt*Math.sqrt(z*z-1);se=kt=>{const mn=Math.exp(-z*lt*kt),pi=Math.min(mt*kt,300);return d-mn*((N+z*lt*W)*Math.sinh(pi)+mt*W*Math.cosh(pi))/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 pi=Math.abs(mn)<=o,zi=Math.abs(d-kt)<=n;h.done=pi&&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 lt=L+W,Pe=h===void 0?lt:h(lt);Pe!==lt&&(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,pi;const zi=Sa=>{N(F.value)&&(mn=Sa,pi=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!pi&&mn===void 0&&(fa=!0,kt(Sa),zi(Sa)),mn!==void 0&&Sa>=mn?pi.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:lt}=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:pi}=mn;!se&&S!==null&&(pi=this.speed>=0?this.currentTime>=P:this.currentTime<=0);const zi=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&pi);return zi&&c!==void 0&&(mn.value=getFinalKeyframe(y,this.options,c)),lt&&lt(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 lt=!1;if(window.HandoffAppearAnimations){const se=t.getProps()[optimizedAppearDataAttribute];if(se){const mt=window.HandoffAppearAnimations(se,F);mt!==null&&(W.elapsed=mt,lt=!0)}}N.start(animateMotionValue(F,N,z,t.shouldReduceMotion&&transformProps.has(F)?{type:!1}:W,t,lt));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 lt=0;lt<numAnimationTypes;lt++){const Pe=reversePriorityOrder[lt],se=o[Pe],mt=S[Pe]!==void 0?S[Pe]:P[Pe],kt=isVariantLabel(mt),mn=Pe===y?se.isActive:null;mn===!1&&(z=lt);let pi=mt===P[Pe]&&mt!==S[Pe]&&kt;if(pi&&s&&t.manuallyAnimateOnMount&&(pi=!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&&!pi&&kt||lt>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},nt=_i=>{Sa=!0,F.has(_i)&&(fa=!0,F.delete(_i)),se.needsAnimating[_i]=!0;const ba=t.getValue(_i);ba&&(ba.liveStyle=!1)};for(const _i in yt){const ba=Ra[_i],Sc=ma[_i];if(N.hasOwnProperty(_i))continue;let ms=!1;isKeyframesTarget(ba)&&isKeyframesTarget(Sc)?ms=!shallowCompare(ba,Sc):ms=ba!==Sc,ms?ba!=null?nt(_i):F.add(_i):ba!==void 0&&F.has(_i)?nt(_i):se.protectedKeys[_i]=!0}se.prevProp=mt,se.prevResolvedValues=Ra,se.isActive&&(N={...N,...Ra}),s&&t.blockInitialAnimation&&(Sa=!1),Sa&&(!pi||fa)&&L.push(...La.map(_i=>({animation:_i,options:{type:Pe}})))}if(F.size){const lt={};F.forEach(Pe=>{const se=t.getBaseTarget(Pe),mt=t.getValue(Pe);mt&&(mt.liveStyle=!0),lt[Pe]=se===void 0?null:se}),L.push({animation:lt})}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:lt,onMove:Pe}=this.handlers;F||(lt&&lt(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 lt=getPanInfo(L.type==="pointercancel"?this.lastMoveEventInfo:transformPoint(F,this.transformPagePoint),this.history);this.startEvent&&N&&N(L,lt),z&&z(L,lt)},!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(lt=>{let Pe=this.getAxisMotionValue(lt).get()||0;if(percent.test(Pe)){const{projection:se}=this.visualElement;if(se&&se.layout){const mt=se.layout.layoutBox[lt];mt&&(Pe=calcLength(mt)*(parseFloat(Pe)/100))}}this.originPoint[lt]=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:lt}=L;if(N&&this.currentDirection===null){this.currentDirection=getCurrentDirection(lt),this.currentDirection!==null&&z&&z(this.currentDirection);return}this.updateAxis("x",L.point,lt),this.updateAxis("y",L.point,lt),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:lt,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:lt,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,lt=this.getStack(),Pe=!lt||lt.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:lt,applyTo:Pe}=scaleCorrectors[W],se=S.transform==="none"?F[W]:lt(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 lt=`calc(${N.x}px - 50%)`,Pe=`calc(${N.y}px - 50%)`;d.set(`translate(${lt}, ${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:lt}=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)),lt==null?void 0:lt.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&&(lt==null?void 0:lt.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:lt,requestingRenderMode:Pe,timelineManagerRef:se,cameraForceHorizontalRoll:mt,onLayerSelect:kt,onCameraChange:mn,onLayerDrag:pi,onLayerDrop:zi,onLayerEdit:Sa,onLayerSelectWithRectStart:fa,onLayerSelectWithRectMove:La,onLayerSelectWithRectEnd:Ra,onMount:ma,onLayerVisibility:yt,onLayerLoad:nt,onCreditsUpdate:_i},ba)=>{var gd,pd,Zd,sf,of,nf,df,Cf,ff,xf,wf,Ff,Hf,Jf,Wf,Dm,vf,mf,Lf,Df,kf,Yf,Qf,Zf,jm,qf,qm,ep,Sf,rf,bf,Pf,Xf,Bf,Am,tp,sp,fp,mp,al,tf,lf;const{cesium:Sc,mouseEventHandles:ms,cesiumIonAccessToken:Xs,context:pu,layerSelectWithRectEventHandlers:yu,sceneLight:Nl,sceneBackgroundColor:Ru,sceneMsaaSamples:Vd,sceneMode:Gd,cameraViewBoundaries:cf,cameraViewOuterBoundaries:uf,cameraViewBoundariesMaterial:gf,handleCameraChange:hf,handleCameraMoveEnd:pf,handleUpdate:_f,handleClick:Vf,handleMount:Rf,handleUnmount:Wa,handleTilesChange:af,handleTerrainProviderChange:Xd}=useHooks$1({ref:ba,property:o,time:s,selectedLayerId:y,selectionReason:F,meta:N,layersRef:W,featureFlags:lt,timelineManagerRef:se,isLayerDraggable:S,isLayerDragging:P,shouldRender:L,requestingRenderMode:Pe,camera:c,cameraForceHorizontalRoll:mt,onLayerDrag:pi,onLayerDrop:zi,onLayerSelect:kt,onLayerEdit:Sa,onLayerSelectWithRectStart:fa,onLayerSelectWithRectMove:La,onLayerSelectWithRectEnd:Ra,onLayerVisibility:yt,onLayerLoad:nt,onCameraChange:mn,onMount:ma,onCreditsUpdate:_i});return jsxRuntimeExports.jsxs(Aa$1,{ref:Sc,onUpdate:_f,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:Vf,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:Rf,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:yu.start.handler}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_DOWN,modifier:Cesium$1.KeyboardEventModifier.SHIFT,action:yu.start.shift}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE,action:yu.move.handler}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.MOUSE_MOVE,modifier:Cesium$1.KeyboardEventModifier.SHIFT,action:yu.move.shift}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_UP,action:yu.end.handler}),jsxRuntimeExports.jsx(Ma$1,{type:Cesium$1.ScreenSpaceEventType.LEFT_UP,modifier:Cesium$1.KeyboardEventModifier.SHIFT,action:yu.end.shift})]}),jsxRuntimeExports.jsx(Ta$1,{maximumZoomDistance:(sf=(Zd=o==null?void 0:o.camera)==null?void 0:Zd.limiter)!=null&&sf.enabled?((df=(nf=(of=o.camera)==null?void 0:of.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:pf}),cf&&((xf=(ff=o==null?void 0:o.camera)==null?void 0:ff.limiter)==null?void 0:xf.showHelper)&&jsxRuntimeExports.jsx(Is$1,{children:jsxRuntimeExports.jsx(ua$1,{positions:cf,width:1,material:Cesium$1.Color.RED,arcType:Cesium$1.ArcType.RHUMB})}),uf&&((Ff=(wf=o==null?void 0:o.camera)==null?void 0:wf.limiter)==null?void 0:Ff.showHelper)&&jsxRuntimeExports.jsx(Is$1,{children:jsxRuntimeExports.jsx(ua$1,{positions:uf,width:1,material:gf,arcType:Cesium$1.ArcType.RHUMB})}),jsxRuntimeExports.jsx($a$1,{backgroundColor:Ru,light:Nl,mode:Gd,msaaSamples:Vd,useDepthPicking:!1,useWebVR:!!((Hf=o==null?void 0:o.scene)!=null&&Hf.vr)||void 0,debugShowFramesPerSecond:!!((Jf=o==null?void 0:o.debug)!=null&&Jf.showFramesPerSecond),verticalExaggerationRelativeHeight:(Wf=o==null?void 0:o.scene)==null?void 0:Wf.verticalExaggerationRelativeHeight,verticalExaggeration:(Dm=o==null?void 0:o.scene)==null?void 0:Dm.verticalExaggeration}),jsxRuntimeExports.jsx(Oa$1,{show:((mf=(vf=o==null?void 0:o.sky)==null?void 0:vf.skyBox)==null?void 0:mf.show)??!0}),jsxRuntimeExports.jsx(Vs,{enabled:((Df=(Lf=o==null?void 0:o.sky)==null?void 0:Lf.fog)==null?void 0:Df.enabled)??!0,density:(Yf=(kf=o==null?void 0:o.sky)==null?void 0:kf.fog)==null?void 0:Yf.density}),jsxRuntimeExports.jsx(Ga$1,{show:((Zf=(Qf=o==null?void 0:o.sky)==null?void 0:Qf.sun)==null?void 0:Zf.show)??!0}),jsxRuntimeExports.jsx(ea,{show:((qf=(jm=o==null?void 0:o.sky)==null?void 0:jm.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=(Sf=o==null?void 0:o.sky)==null?void 0:Sf.skyAtmosphere)==null?void 0:rf.lightIntensity,saturationShift:(Pf=(bf=o==null?void 0:o.sky)==null?void 0:bf.skyAtmosphere)==null?void 0:Pf.saturationShift,brightnessShift:(Bf=(Xf=o==null?void 0:o.sky)==null?void 0:Xf.skyAtmosphere)==null?void 0:Bf.brightnessShift}),jsxRuntimeExports.jsx(Globe,{property:o,cesiumIonAccessToken:Xs,onTerrainProviderChange:Xd}),jsxRuntimeExports.jsx(context.Provider,{value:pu,children:h?p:null}),jsxRuntimeExports.jsx(AmbientOcclusion,{...AMBIENT_OCCLUSION_QUALITY[((tp=(Am=o==null?void 0:o.render)==null?void 0:Am.ambientOcclusion)==null?void 0:tp.quality)||"low"],enabled:!!((fp=(sp=o==null?void 0:o.render)==null?void 0:sp.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.29",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({}),[lt,Pe]=React.useState(),[se,mt]=React.useState(),kt=React.useCallback(async(vf,mf,Lf,Df,kf)=>{var jm,qf,qm,ep,Sf,rf,bf,Pf,Xf,Bf,Am;const Yf=((jm=z.layer)==null?void 0:jm.layer.type)==="simple"&&((ep=(qm=(qf=z.layer)==null?void 0:qf.layer)==null?void 0:qm.data)==null?void 0:ep.isSketchLayer);if(z.layerId===vf&&z.featureId===mf&&!Yf)return;const Qf=await(Lf==null?void 0:Lf()),Zf=vf&&mf?(Yf?(Sf=Qf==null?void 0:Qf.features)==null?void 0:Sf.find(tp=>tp.id===mf):(Pf=(rf=L.current)==null?void 0:(bf=rf.engine).findComputedFeatureById)==null?void 0:Pf.call(bf,vf,mf))??(kf==null?void 0:kf.feature):void 0;Pe(vf&&mf?(Am=(Xf=L.current)==null?void 0:(Bf=Xf.engine).findFeatureById)==null?void 0:Am.call(Bf,vf,mf):void 0),mt(Zf),W(tp=>tp.layerId===vf&&tp.featureId===mf?tp:{layerId:vf,featureId:mf,layer:Qf,reason:Df}),c==null||c(vf,Lf,Zf,Df)},[z,c]),mn=React.useRef(),[pi,zi]=useValue(t,d),[Sa,fa]=React.useState(!1),La=React.useCallback(vf=>{fa(!!vf)},[]),[Ra,ma]=useValue(n,h),yt=Ra||"default",[nt,_i]=React.useState("auto");React.useEffect(()=>{_i(yt==="sketch"?"crosshair":yt==="move"?"grab":"auto")},[yt]);const ba=INTERACTION_MODES[yt],Sc=React.useRef(),ms=React.useCallback(vf=>{Sc.current=vf},[]),Xs=React.useCallback(vf=>{var mf;(mf=Sc.current)==null||mf.call(Sc,vf)},[]),pu=React.useRef(),yu=React.useCallback(vf=>{pu.current=vf},[]),Nl=React.useCallback(vf=>{var mf;(mf=pu.current)==null||mf.call(pu,vf)},[]),Ru=React.useRef(),Vd=React.useCallback(vf=>{Ru.current=vf},[]),Gd=React.useCallback(vf=>{var mf;(mf=Ru.current)==null||mf.call(Ru,vf)},[]),cf=React.useRef(),uf=React.useCallback(vf=>{cf.current=vf},[]),gf=React.useCallback(vf=>{var mf;(mf=cf.current)==null||mf.call(cf,vf)},[]),hf=React.useRef(),pf=React.useCallback(vf=>{hf.current=vf},[]),_f=React.useCallback(vf=>{var mf;(mf=hf.current)==null||mf.call(hf,vf)},[]),Vf=React.useRef(),Rf=React.useCallback(vf=>{Vf.current=vf},[]),Wa=React.useCallback(vf=>{var mf;(mf=Vf.current)==null||mf.call(Vf,vf)},[]),af=React.useRef([]),Xd=React.useCallback(vf=>{af.current.push(vf)},[]),gd=React.useCallback(vf=>{af.current.forEach(mf=>mf(vf))},[]),pd=React.useRef([]),Zd=React.useCallback(vf=>{pd.current.push(vf)},[]),sf=React.useCallback(vf=>{pd.current.forEach(mf=>mf(vf))},[]),of=React.useRef([]),nf=React.useCallback(vf=>{of.current.push(vf)},[]),df=React.useCallback(vf=>{of.current.forEach(mf=>mf(vf))},[]),Cf=React.useRef([]),ff=React.useCallback(vf=>{Cf.current.push(vf)},[]),xf=React.useCallback((vf,mf)=>{Cf.current.forEach(Lf=>Lf(vf)),S==null||S(vf,mf)},[S]);React.useEffect(()=>{var vf,mf;o&&((mf=(vf=L.current)==null?void 0:vf.engine)==null||mf.lookAtLayer(o),p==null||p(void 0))},[o,p]);const[wf,Ff]=React.useState(!1),Hf=React.useCallback(()=>{Ff(!0)},[]),Jf=React.useCallback((vf,mf,Lf)=>{var Yf;Ff(!1);const Df=(Yf=L.current)==null?void 0:Yf.layers.findById(vf),kf=Df!=null&&Df.property.default.location?"default.location":Df!=null&&Df.property.default.position?"default.position":void 0;Lf&&Df&&Df.propertyId&&kf&&(y==null||y(Df.propertyId,kf,Lf))},[y,L]),Wf=React.useMemo(()=>({interactionMode:yt,selectedLayer:z,selectedComputedFeature:se,viewport:N,handleCameraForceHorizontalRollChange:La,handleInteractionModeChange:ma,onSketchPluginFeatureCreate:Xd,onSketchPluginFeatureUpdate:Zd,onSketchPluginFeatureDelete:nf,onSketchTypeChange:ff,onLayerVisibility:yu,onLayerLoad:Vd,onLayerEdit:ms,onLayerSelectWithRectStart:uf,onLayerSelectWithRectMove:pf,onLayerSelectWithRectEnd:Rf}),[yt,z,se,N,ma,La,ms,Xd,Zd,nf,ff,yu,Vd,uf,pf,Rf]),Dm=React.useMemo(()=>({position:"relative",width:"100%",height:"100%",overflow:"hidden"}),[]);return useCoreAPI({viewerProperty:s}),{mapRef:L,wrapperRef:F,selectedFeature:lt,camera:pi,featureFlags:ba,isLayerDragging:wf,timelineManagerRef:mn,cursor:nt,cameraForceHorizontalRoll:Sa,coreContextValue:Wf,containerStyle:Dm,overriddenInteractionMode:yt,handleLayerSelect:kt,handleLayerDrag:Hf,handleLayerDrop:Jf,handleLayerEdit:Xs,handleCameraChange:zi,handleInteractionModeChange:ma,handleSketchPluginFeatureCreate:gd,handleSketchPluginFeatureUpdate:sf,handleSketchPluginFeatureDelete:df,handleSketchTypeChange:xf,handleLayerVisibility:Nl,handleLayerLoad:Gd,handleLayerSelectWithRectStart:gf,handleLayerSelectWithRectMove:_f,handleLayerSelectWithRectEnd:Wa}}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:lt,children:Pe,onLayerDrop:se,onLayerSelect:mt,onCameraChange:kt,onZoomToLayer:mn,onInteractionModeChange:pi,onMount:zi,onSketchTypeChangeProp:Sa,onSketchFeatureCreate:fa,onSketchFeatureUpdate:La,onSketchFeatureDelete:Ra,onAPIReady:ma,onCreditsUpdate:yt},nt)=>{const{mapRef:_i,wrapperRef:ba,selectedFeature:Sc,camera:ms,featureFlags:Xs,isLayerDragging:pu,timelineManagerRef:yu,cursor:Nl,cameraForceHorizontalRoll:Ru,coreContextValue:Vd,containerStyle:Gd,overriddenInteractionMode:cf,handleLayerSelect:uf,handleLayerDrag:gf,handleLayerDrop:hf,handleLayerEdit:pf,handleCameraChange:_f,handleInteractionModeChange:Vf,handleSketchPluginFeatureCreate:Rf,handleSketchPluginFeatureUpdate:Wa,handleSketchPluginFeatureDelete:af,handleSketchTypeChange:Xd,handleLayerVisibility:gd,handleLayerLoad:pd,handleLayerSelectWithRectStart:Zd,handleLayerSelectWithRectMove:sf,handleLayerSelectWithRectEnd:of}=useHooks({camera:S,interactionMode:L,zoomedLayerId:lt,viewerProperty:s,onLayerSelect:mt,onCameraChange:kt,onZoomToLayer:mn,onLayerDrop:se,onInteractionModeChange:pi,onSketchTypeChangeProp:Sa},nt);return jsxRuntimeExports.jsx(ErrorBoundary,{FallbackComponent:Error$1,children:jsxRuntimeExports.jsx(VisualizerProvider,{mapRef:_i,children:jsxRuntimeExports.jsxs("div",{ref:ba,style:Gd,children:[jsxRuntimeExports.jsx(Map$1,{ref:_i,isBuilt:n,isEditable:o,engine:t,layers:c,engines,camera:ms,cameraForceHorizontalRoll:Ru,clusters:d,hiddenLayers:y,isLayerDragging:pu,isLayerDraggable:o,meta:N,displayCredits:z,style:W,featureFlags:Xs,shouldRender:F,property:s,time:P,small:h,ready:p,timelineManagerRef:yu,interactionMode:cf,selectedFeature:Sc,cursor:Nl,onCameraChange:_f,onLayerDrag:gf,onLayerDrop:hf,onLayerSelect:uf,onLayerEdit:pf,overrideInteractionMode:Vf,onSketchFeatureCreate:fa,onSketchPluginFeatureCreate:Rf,onSketchFeatureUpdate:La,onSketchPluginFeatureUpdate:Wa,onSketchFeatureDelete:Ra,onSketchPluginFeatureDelete:af,onSketchTypeChange:Xd,onMount:zi,onLayerVisibility:gd,onLayerLoad:pd,onLayerSelectWithRectStart:Zd,onLayerSelectWithRectMove:sf,onLayerSelectWithRectEnd:of,onAPIReady:ma,onCreditsUpdate:yt}),jsxRuntimeExports.jsx(coreContext.Provider,{value:Vd,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&&currentQueue[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=`