@aibee/crc-bmap 0.12.27 → 0.12.28
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/lib/index.cjs +2 -2
- package/lib/index.esm.min.js +2 -2
- package/lib/index.online.esm.min.js +2 -2
- package/lib/index.online.min.js +2 -2
- package/package.json +3 -5
package/lib/index.cjs
CHANGED
|
@@ -3975,7 +3975,7 @@ void main() {
|
|
|
3975
3975
|
}
|
|
3976
3976
|
|
|
3977
3977
|
}\`,uh=class{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(e,t,i){if(this.texture===null){let r=new $t,s=e.properties.get(r);s.__webglTexture=t.texture,(t.depthNear!=i.depthNear||t.depthFar!=i.depthFar)&&(this.depthNear=t.depthNear,this.depthFar=t.depthFar),this.texture=r}}render(e,t){if(this.texture!==null){if(this.mesh===null){let i=t.cameras[0].viewport,r=new xn({extensions:{fragDepth:!0},vertexShader:tN,fragmentShader:nN,uniforms:{depthColor:{value:this.texture},depthWidth:{value:i.z},depthHeight:{value:i.w}}});this.mesh=new on(new bo(20,20),r)}e.render(this.mesh,t)}}reset(){this.texture=null,this.mesh=null}},hh=class extends ai{constructor(e,t){super();let i=this,r=null,s=1,o=null,a="local-floor",c=1,l=null,u=null,h=null,f=null,m=null,g=null,_=new uh,d=t.getContextAttributes(),p=null,b=null,v=[],E=[],I=new ie,R=null,w=new Gt;w.layers.enable(1),w.viewport=new yt;let B=new Gt;B.layers.enable(2),B.viewport=new yt;let j=[w,B],x=new lh;x.layers.enable(1),x.layers.enable(2);let A=null,re=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(k){let Q=v[k];return Q===void 0&&(Q=new hs,v[k]=Q),Q.getTargetRaySpace()},this.getControllerGrip=function(k){let Q=v[k];return Q===void 0&&(Q=new hs,v[k]=Q),Q.getGripSpace()},this.getHand=function(k){let Q=v[k];return Q===void 0&&(Q=new hs,v[k]=Q),Q.getHandSpace()};function K(k){let Q=E.indexOf(k.inputSource);if(Q===-1)return;let me=v[Q];me!==void 0&&(me.update(k.inputSource,k.frame,l||o),me.dispatchEvent({type:k.type,data:k.inputSource}))}function C(){r.removeEventListener("select",K),r.removeEventListener("selectstart",K),r.removeEventListener("selectend",K),r.removeEventListener("squeeze",K),r.removeEventListener("squeezestart",K),r.removeEventListener("squeezeend",K),r.removeEventListener("end",C),r.removeEventListener("inputsourceschange",W);for(let k=0;k<v.length;k++){let Q=E[k];Q!==null&&(E[k]=null,v[k].disconnect(Q))}A=null,re=null,_.reset(),e.setRenderTarget(p),m=null,f=null,h=null,r=null,b=null,Ie.stop(),i.isPresenting=!1,e.setPixelRatio(R),e.setSize(I.width,I.height,!1),i.dispatchEvent({type:"sessionend"})}this.setFramebufferScaleFactor=function(k){s=k,i.isPresenting===!0&&console.warn("THREE.WebXRManager: Cannot change framebuffer scale while presenting.")},this.setReferenceSpaceType=function(k){a=k,i.isPresenting===!0&&console.warn("THREE.WebXRManager: Cannot change reference space type while presenting.")},this.getReferenceSpace=function(){return l||o},this.setReferenceSpace=function(k){l=k},this.getBaseLayer=function(){return f!==null?f:m},this.getBinding=function(){return h},this.getFrame=function(){return g},this.getSession=function(){return r},this.setSession=function(k){return Cs(this,null,function*(){if(r=k,r!==null){if(p=e.getRenderTarget(),r.addEventListener("select",K),r.addEventListener("selectstart",K),r.addEventListener("selectend",K),r.addEventListener("squeeze",K),r.addEventListener("squeezestart",K),r.addEventListener("squeezeend",K),r.addEventListener("end",C),r.addEventListener("inputsourceschange",W),d.xrCompatible!==!0&&(yield t.makeXRCompatible()),R=e.getPixelRatio(),e.getSize(I),r.renderState.layers===void 0||e.capabilities.isWebGL2===!1){let Q={antialias:r.renderState.layers===void 0?d.antialias:!0,alpha:!0,depth:d.depth,stencil:d.stencil,framebufferScaleFactor:s};m=new XRWebGLLayer(r,t,Q),r.updateRenderState({baseLayer:m}),e.setPixelRatio(1),e.setSize(m.framebufferWidth,m.framebufferHeight,!1),b=new Fn(m.framebufferWidth,m.framebufferHeight,{format:an,type:ii,colorSpace:e.outputColorSpace,stencilBuffer:d.stencil})}else{let Q=null,me=null,Ae=null;d.depth&&(Ae=d.stencil?t.DEPTH24_STENCIL8:t.DEPTH_COMPONENT24,Q=d.stencil?Tr:Ii,me=d.stencil?Pi:ei);let Me={colorFormat:t.RGBA8,depthFormat:Ae,scaleFactor:s};h=new XRWebGLBinding(r,t),f=h.createProjectionLayer(Me),r.updateRenderState({layers:[f]}),e.setPixelRatio(1),e.setSize(f.textureWidth,f.textureHeight,!1),b=new Fn(f.textureWidth,f.textureHeight,{format:an,type:ii,depthTexture:new Ao(f.textureWidth,f.textureHeight,me,void 0,void 0,void 0,void 0,void 0,void 0,Q),stencilBuffer:d.stencil,colorSpace:e.outputColorSpace,samples:d.antialias?4:0});let ye=e.properties.get(b);ye.__ignoreDepthValues=f.ignoreDepthValues}b.isXRRenderTarget=!0,this.setFoveation(c),l=null,o=yield r.requestReferenceSpace(a),Ie.setContext(r),Ie.start(),i.isPresenting=!0,i.dispatchEvent({type:"sessionstart"})}})},this.getEnvironmentBlendMode=function(){if(r!==null)return r.environmentBlendMode};function W(k){for(let Q=0;Q<k.removed.length;Q++){let me=k.removed[Q],Ae=E.indexOf(me);Ae>=0&&(E[Ae]=null,v[Ae].disconnect(me))}for(let Q=0;Q<k.added.length;Q++){let me=k.added[Q],Ae=E.indexOf(me);if(Ae===-1){for(let ye=0;ye<v.length;ye++)if(ye>=E.length){E.push(me),Ae=ye;break}else if(E[ye]===null){E[ye]=me,Ae=ye;break}if(Ae===-1)break}let Me=v[Ae];Me&&Me.connect(me)}}let G=new U,$=new U;function q(k,Q,me){G.setFromMatrixPosition(Q.matrixWorld),$.setFromMatrixPosition(me.matrixWorld);let Ae=G.distanceTo($),Me=Q.projectionMatrix.elements,ye=me.projectionMatrix.elements,ke=Me[14]/(Me[10]-1),Te=Me[14]/(Me[10]+1),T=(Me[9]+1)/Me[5],oe=(Me[9]-1)/Me[5],Y=(Me[8]-1)/Me[0],se=(ye[8]+1)/ye[0],Z=ke*Y,_e=ke*se,pe=Ae/(-Y+se),xe=pe*-Y;Q.matrixWorld.decompose(k.position,k.quaternion,k.scale),k.translateX(xe),k.translateZ(pe),k.matrixWorld.compose(k.position,k.quaternion,k.scale),k.matrixWorldInverse.copy(k.matrixWorld).invert();let Ge=ke+pe,S=Te+pe,y=Z-xe,V=_e+(Ae-xe),H=T*Te/S*Ge,ee=oe*Te/S*Ge;k.projectionMatrix.makePerspective(y,V,H,ee,Ge,S),k.projectionMatrixInverse.copy(k.projectionMatrix).invert()}function X(k,Q){Q===null?k.matrixWorld.copy(k.matrix):k.matrixWorld.multiplyMatrices(Q.matrixWorld,k.matrix),k.matrixWorldInverse.copy(k.matrixWorld).invert()}this.updateCamera=function(k){if(r===null)return;_.texture!==null&&(k.near=_.depthNear,k.far=_.depthFar),x.near=B.near=w.near=k.near,x.far=B.far=w.far=k.far,(A!==x.near||re!==x.far)&&(r.updateRenderState({depthNear:x.near,depthFar:x.far}),A=x.near,re=x.far,w.near=A,w.far=re,B.near=A,B.far=re,w.updateProjectionMatrix(),B.updateProjectionMatrix(),k.updateProjectionMatrix());let Q=k.parent,me=x.cameras;X(x,Q);for(let Ae=0;Ae<me.length;Ae++)X(me[Ae],Q);me.length===2?q(x,w,B):x.projectionMatrix.copy(w.projectionMatrix),ne(k,x,Q)};function ne(k,Q,me){me===null?k.matrix.copy(Q.matrixWorld):(k.matrix.copy(me.matrixWorld),k.matrix.invert(),k.matrix.multiply(Q.matrixWorld)),k.matrix.decompose(k.position,k.quaternion,k.scale),k.updateMatrixWorld(!0),k.projectionMatrix.copy(Q.projectionMatrix),k.projectionMatrixInverse.copy(Q.projectionMatrixInverse),k.isPerspectiveCamera&&(k.fov=Yu*2*Math.atan(1/k.projectionMatrix.elements[5]),k.zoom=1)}this.getCamera=function(){return x},this.getFoveation=function(){if(!(f===null&&m===null))return c},this.setFoveation=function(k){c=k,f!==null&&(f.fixedFoveation=k),m!==null&&m.fixedFoveation!==void 0&&(m.fixedFoveation=k)},this.hasDepthSensing=function(){return _.texture!==null};let te=null;function ve(k,Q){if(u=Q.getViewerPose(l||o),g=Q,u!==null){let me=u.views;m!==null&&(e.setRenderTargetFramebuffer(b,m.framebuffer),e.setRenderTarget(b));let Ae=!1;me.length!==x.cameras.length&&(x.cameras.length=0,Ae=!0);for(let ye=0;ye<me.length;ye++){let ke=me[ye],Te=null;if(m!==null)Te=m.getViewport(ke);else{let oe=h.getViewSubImage(f,ke);Te=oe.viewport,ye===0&&(e.setRenderTargetTextures(b,oe.colorTexture,f.ignoreDepthValues?void 0:oe.depthStencilTexture),e.setRenderTarget(b))}let T=j[ye];T===void 0&&(T=new Gt,T.layers.enable(ye),T.viewport=new yt,j[ye]=T),T.matrix.fromArray(ke.transform.matrix),T.matrix.decompose(T.position,T.quaternion,T.scale),T.projectionMatrix.fromArray(ke.projectionMatrix),T.projectionMatrixInverse.copy(T.projectionMatrix).invert(),T.viewport.set(Te.x,Te.y,Te.width,Te.height),ye===0&&(x.matrix.copy(T.matrix),x.matrix.decompose(x.position,x.quaternion,x.scale)),Ae===!0&&x.cameras.push(T)}let Me=r.enabledFeatures;if(Me&&Me.includes("depth-sensing")){let ye=h.getDepthInformation(me[0]);ye&&ye.isValid&&ye.texture&&_.init(e,ye,r.renderState)}}for(let me=0;me<v.length;me++){let Ae=E[me],Me=v[me];Ae!==null&&Me!==void 0&&Me.update(Ae,Q,l||o)}_.render(e,x),te&&te(k,Q),Q.detectedPlanes&&i.dispatchEvent({type:"planesdetected",data:Q}),g=null}let Ie=new hy;Ie.setAnimationLoop(ve),this.setAnimationLoop=function(k){te=k},this.dispose=function(){}}},bi=new Ui,iN=new ft;function rN(n,e){function t(d,p){d.matrixAutoUpdate===!0&&d.updateMatrix(),p.value.copy(d.matrix)}function i(d,p){p.color.getRGB(d.fogColor.value,uy(n)),p.isFog?(d.fogNear.value=p.near,d.fogFar.value=p.far):p.isFogExp2&&(d.fogDensity.value=p.density)}function r(d,p,b,v,E){p.isMeshBasicMaterial||p.isMeshLambertMaterial?s(d,p):p.isMeshToonMaterial?(s(d,p),h(d,p)):p.isMeshPhongMaterial?(s(d,p),u(d,p)):p.isMeshStandardMaterial?(s(d,p),f(d,p),p.isMeshPhysicalMaterial&&m(d,p,E)):p.isMeshMatcapMaterial?(s(d,p),g(d,p)):p.isMeshDepthMaterial?s(d,p):p.isMeshDistanceMaterial?(s(d,p),_(d,p)):p.isMeshNormalMaterial?s(d,p):p.isLineBasicMaterial?(o(d,p),p.isLineDashedMaterial&&a(d,p)):p.isPointsMaterial?c(d,p,b,v):p.isSpriteMaterial?l(d,p):p.isShadowMaterial?(d.color.value.copy(p.color),d.opacity.value=p.opacity):p.isShaderMaterial&&(p.uniformsNeedUpdate=!1)}function s(d,p){d.opacity.value=p.opacity,p.color&&d.diffuse.value.copy(p.color),p.emissive&&d.emissive.value.copy(p.emissive).multiplyScalar(p.emissiveIntensity),p.map&&(d.map.value=p.map,t(p.map,d.mapTransform)),p.alphaMap&&(d.alphaMap.value=p.alphaMap,t(p.alphaMap,d.alphaMapTransform)),p.bumpMap&&(d.bumpMap.value=p.bumpMap,t(p.bumpMap,d.bumpMapTransform),d.bumpScale.value=p.bumpScale,p.side===Dt&&(d.bumpScale.value*=-1)),p.normalMap&&(d.normalMap.value=p.normalMap,t(p.normalMap,d.normalMapTransform),d.normalScale.value.copy(p.normalScale),p.side===Dt&&d.normalScale.value.negate()),p.displacementMap&&(d.displacementMap.value=p.displacementMap,t(p.displacementMap,d.displacementMapTransform),d.displacementScale.value=p.displacementScale,d.displacementBias.value=p.displacementBias),p.emissiveMap&&(d.emissiveMap.value=p.emissiveMap,t(p.emissiveMap,d.emissiveMapTransform)),p.specularMap&&(d.specularMap.value=p.specularMap,t(p.specularMap,d.specularMapTransform)),p.alphaTest>0&&(d.alphaTest.value=p.alphaTest);let b=e.get(p),v=b.envMap,E=b.envMapRotation;if(v&&(d.envMap.value=v,bi.copy(E),bi.x*=-1,bi.y*=-1,bi.z*=-1,v.isCubeTexture&&v.isRenderTargetTexture===!1&&(bi.y*=-1,bi.z*=-1),d.envMapRotation.value.setFromMatrix4(iN.makeRotationFromEuler(bi)),d.flipEnvMap.value=v.isCubeTexture&&v.isRenderTargetTexture===!1?-1:1,d.reflectivity.value=p.reflectivity,d.ior.value=p.ior,d.refractionRatio.value=p.refractionRatio),p.lightMap){d.lightMap.value=p.lightMap;let I=n._useLegacyLights===!0?Math.PI:1;d.lightMapIntensity.value=p.lightMapIntensity*I,t(p.lightMap,d.lightMapTransform)}p.aoMap&&(d.aoMap.value=p.aoMap,d.aoMapIntensity.value=p.aoMapIntensity,t(p.aoMap,d.aoMapTransform))}function o(d,p){d.diffuse.value.copy(p.color),d.opacity.value=p.opacity,p.map&&(d.map.value=p.map,t(p.map,d.mapTransform))}function a(d,p){d.dashSize.value=p.dashSize,d.totalSize.value=p.dashSize+p.gapSize,d.scale.value=p.scale}function c(d,p,b,v){d.diffuse.value.copy(p.color),d.opacity.value=p.opacity,d.size.value=p.size*b,d.scale.value=v*.5,p.map&&(d.map.value=p.map,t(p.map,d.uvTransform)),p.alphaMap&&(d.alphaMap.value=p.alphaMap,t(p.alphaMap,d.alphaMapTransform)),p.alphaTest>0&&(d.alphaTest.value=p.alphaTest)}function l(d,p){d.diffuse.value.copy(p.color),d.opacity.value=p.opacity,d.rotation.value=p.rotation,p.map&&(d.map.value=p.map,t(p.map,d.mapTransform)),p.alphaMap&&(d.alphaMap.value=p.alphaMap,t(p.alphaMap,d.alphaMapTransform)),p.alphaTest>0&&(d.alphaTest.value=p.alphaTest)}function u(d,p){d.specular.value.copy(p.specular),d.shininess.value=Math.max(p.shininess,1e-4)}function h(d,p){p.gradientMap&&(d.gradientMap.value=p.gradientMap)}function f(d,p){d.metalness.value=p.metalness,p.metalnessMap&&(d.metalnessMap.value=p.metalnessMap,t(p.metalnessMap,d.metalnessMapTransform)),d.roughness.value=p.roughness,p.roughnessMap&&(d.roughnessMap.value=p.roughnessMap,t(p.roughnessMap,d.roughnessMapTransform)),e.get(p).envMap&&(d.envMapIntensity.value=p.envMapIntensity)}function m(d,p,b){d.ior.value=p.ior,p.sheen>0&&(d.sheenColor.value.copy(p.sheenColor).multiplyScalar(p.sheen),d.sheenRoughness.value=p.sheenRoughness,p.sheenColorMap&&(d.sheenColorMap.value=p.sheenColorMap,t(p.sheenColorMap,d.sheenColorMapTransform)),p.sheenRoughnessMap&&(d.sheenRoughnessMap.value=p.sheenRoughnessMap,t(p.sheenRoughnessMap,d.sheenRoughnessMapTransform))),p.clearcoat>0&&(d.clearcoat.value=p.clearcoat,d.clearcoatRoughness.value=p.clearcoatRoughness,p.clearcoatMap&&(d.clearcoatMap.value=p.clearcoatMap,t(p.clearcoatMap,d.clearcoatMapTransform)),p.clearcoatRoughnessMap&&(d.clearcoatRoughnessMap.value=p.clearcoatRoughnessMap,t(p.clearcoatRoughnessMap,d.clearcoatRoughnessMapTransform)),p.clearcoatNormalMap&&(d.clearcoatNormalMap.value=p.clearcoatNormalMap,t(p.clearcoatNormalMap,d.clearcoatNormalMapTransform),d.clearcoatNormalScale.value.copy(p.clearcoatNormalScale),p.side===Dt&&d.clearcoatNormalScale.value.negate())),p.iridescence>0&&(d.iridescence.value=p.iridescence,d.iridescenceIOR.value=p.iridescenceIOR,d.iridescenceThicknessMinimum.value=p.iridescenceThicknessRange[0],d.iridescenceThicknessMaximum.value=p.iridescenceThicknessRange[1],p.iridescenceMap&&(d.iridescenceMap.value=p.iridescenceMap,t(p.iridescenceMap,d.iridescenceMapTransform)),p.iridescenceThicknessMap&&(d.iridescenceThicknessMap.value=p.iridescenceThicknessMap,t(p.iridescenceThicknessMap,d.iridescenceThicknessMapTransform))),p.transmission>0&&(d.transmission.value=p.transmission,d.transmissionSamplerMap.value=b.texture,d.transmissionSamplerSize.value.set(b.width,b.height),p.transmissionMap&&(d.transmissionMap.value=p.transmissionMap,t(p.transmissionMap,d.transmissionMapTransform)),d.thickness.value=p.thickness,p.thicknessMap&&(d.thicknessMap.value=p.thicknessMap,t(p.thicknessMap,d.thicknessMapTransform)),d.attenuationDistance.value=p.attenuationDistance,d.attenuationColor.value.copy(p.attenuationColor)),p.anisotropy>0&&(d.anisotropyVector.value.set(p.anisotropy*Math.cos(p.anisotropyRotation),p.anisotropy*Math.sin(p.anisotropyRotation)),p.anisotropyMap&&(d.anisotropyMap.value=p.anisotropyMap,t(p.anisotropyMap,d.anisotropyMapTransform))),d.specularIntensity.value=p.specularIntensity,d.specularColor.value.copy(p.specularColor),p.specularColorMap&&(d.specularColorMap.value=p.specularColorMap,t(p.specularColorMap,d.specularColorMapTransform)),p.specularIntensityMap&&(d.specularIntensityMap.value=p.specularIntensityMap,t(p.specularIntensityMap,d.specularIntensityMapTransform))}function g(d,p){p.matcap&&(d.matcap.value=p.matcap)}function _(d,p){let b=e.get(p).light;d.referencePosition.value.setFromMatrixPosition(b.matrixWorld),d.nearDistance.value=b.shadow.camera.near,d.farDistance.value=b.shadow.camera.far}return{refreshFogUniforms:i,refreshMaterialUniforms:r}}function sN(n,e,t,i){let r={},s={},o=[],a=t.isWebGL2?n.getParameter(n.MAX_UNIFORM_BUFFER_BINDINGS):0;function c(b,v){let E=v.program;i.uniformBlockBinding(b,E)}function l(b,v){let E=r[b.id];E===void 0&&(g(b),E=u(b),r[b.id]=E,b.addEventListener("dispose",d));let I=v.program;i.updateUBOMapping(b,I);let R=e.render.frame;s[b.id]!==R&&(f(b),s[b.id]=R)}function u(b){let v=h();b.__bindingPointIndex=v;let E=n.createBuffer(),I=b.__size,R=b.usage;return n.bindBuffer(n.UNIFORM_BUFFER,E),n.bufferData(n.UNIFORM_BUFFER,I,R),n.bindBuffer(n.UNIFORM_BUFFER,null),n.bindBufferBase(n.UNIFORM_BUFFER,v,E),E}function h(){for(let b=0;b<a;b++)if(o.indexOf(b)===-1)return o.push(b),b;return console.error("THREE.WebGLRenderer: Maximum number of simultaneously usable uniforms groups reached."),0}function f(b){let v=r[b.id],E=b.uniforms,I=b.__cache;n.bindBuffer(n.UNIFORM_BUFFER,v);for(let R=0,w=E.length;R<w;R++){let B=Array.isArray(E[R])?E[R]:[E[R]];for(let j=0,x=B.length;j<x;j++){let A=B[j];if(m(A,R,j,I)===!0){let re=A.__offset,K=Array.isArray(A.value)?A.value:[A.value],C=0;for(let W=0;W<K.length;W++){let G=K[W],$=_(G);typeof G=="number"||typeof G=="boolean"?(A.__data[0]=G,n.bufferSubData(n.UNIFORM_BUFFER,re+C,A.__data)):G.isMatrix3?(A.__data[0]=G.elements[0],A.__data[1]=G.elements[1],A.__data[2]=G.elements[2],A.__data[3]=0,A.__data[4]=G.elements[3],A.__data[5]=G.elements[4],A.__data[6]=G.elements[5],A.__data[7]=0,A.__data[8]=G.elements[6],A.__data[9]=G.elements[7],A.__data[10]=G.elements[8],A.__data[11]=0):(G.toArray(A.__data,C),C+=$.storage/Float32Array.BYTES_PER_ELEMENT)}n.bufferSubData(n.UNIFORM_BUFFER,re,A.__data)}}}n.bindBuffer(n.UNIFORM_BUFFER,null)}function m(b,v,E,I){let R=b.value,w=v+"_"+E;if(I[w]===void 0)return typeof R=="number"||typeof R=="boolean"?I[w]=R:I[w]=R.clone(),!0;{let B=I[w];if(typeof R=="number"||typeof R=="boolean"){if(B!==R)return I[w]=R,!0}else if(B.equals(R)===!1)return B.copy(R),!0}return!1}function g(b){let v=b.uniforms,E=0,I=16;for(let w=0,B=v.length;w<B;w++){let j=Array.isArray(v[w])?v[w]:[v[w]];for(let x=0,A=j.length;x<A;x++){let re=j[x],K=Array.isArray(re.value)?re.value:[re.value];for(let C=0,W=K.length;C<W;C++){let G=K[C],$=_(G),q=E%I;q!==0&&I-q<$.boundary&&(E+=I-q),re.__data=new Float32Array($.storage/Float32Array.BYTES_PER_ELEMENT),re.__offset=E,E+=$.storage}}}let R=E%I;return R>0&&(E+=I-R),b.__size=E,b.__cache={},this}function _(b){let v={boundary:0,storage:0};return typeof b=="number"||typeof b=="boolean"?(v.boundary=4,v.storage=4):b.isVector2?(v.boundary=8,v.storage=8):b.isVector3||b.isColor?(v.boundary=16,v.storage=12):b.isVector4?(v.boundary=16,v.storage=16):b.isMatrix3?(v.boundary=48,v.storage=48):b.isMatrix4?(v.boundary=64,v.storage=64):b.isTexture?console.warn("THREE.WebGLRenderer: Texture samplers can not be part of an uniforms group."):console.warn("THREE.WebGLRenderer: Unsupported uniform value type.",b),v}function d(b){let v=b.target;v.removeEventListener("dispose",d);let E=o.indexOf(v.__bindingPointIndex);o.splice(E,1),n.deleteBuffer(r[v.id]),delete r[v.id],delete s[v.id]}function p(){for(let b in r)n.deleteBuffer(r[b]);o=[],r={},s={}}return{bind:c,update:l,dispose:p}}var fh=class{constructor(e={}){let{canvas:t=lP(),context:i=null,depth:r=!0,stencil:s=!0,alpha:o=!1,antialias:a=!1,premultipliedAlpha:c=!0,preserveDrawingBuffer:l=!1,powerPreference:u="default",failIfMajorPerformanceCaveat:h=!1}=e;this.isWebGLRenderer=!0;let f;i!==null?f=i.getContextAttributes().alpha:f=o;let m=new Uint32Array(4),g=new Int32Array(4),_=null,d=null,p=[],b=[];this.domElement=t,this.debug={checkShaderErrors:!0,onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this._outputColorSpace=vn,this._useLegacyLights=!1,this.toneMapping=ni,this.toneMappingExposure=1;let v=this,E=!1,I=0,R=0,w=null,B=-1,j=null,x=new yt,A=new yt,re=null,K=new Xe(0),C=0,W=t.width,G=t.height,$=1,q=null,X=null,ne=new yt(0,0,W,G),te=new yt(0,0,W,G),ve=!1,Ie=new So,k=!1,Q=!1,me=null,Ae=new ft,Me=new ie,ye=new U,ke={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};function Te(){return w===null?$:1}let T=i;function oe(M,N){for(let F=0;F<M.length;F++){let z=M[F],D=t.getContext(z,N);if(D!==null)return D}return null}try{let M={alpha:!0,depth:r,stencil:s,antialias:a,premultipliedAlpha:c,preserveDrawingBuffer:l,powerPreference:u,failIfMajorPerformanceCaveat:h};if("setAttribute"in t&&t.setAttribute("data-engine",\`three.js r\${Dh}\`),t.addEventListener("webglcontextlost",tt,!1),t.addEventListener("webglcontextrestored",P,!1),t.addEventListener("webglcontextcreationerror",fe,!1),T===null){let N=["webgl2","webgl","experimental-webgl"];if(v.isWebGL1Renderer===!0&&N.shift(),T=oe(N,M),T===null)throw oe(N)?new Error("Error creating WebGL context with your selected attributes."):new Error("Error creating WebGL context.")}typeof WebGLRenderingContext!="undefined"&&T instanceof WebGLRenderingContext&&console.warn("THREE.WebGLRenderer: WebGL 1 support was deprecated in r153 and will be removed in r163."),T.getShaderPrecisionFormat===void 0&&(T.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}})}catch(M){throw console.error("THREE.WebGLRenderer: "+M.message),M}let Y,se,Z,_e,pe,xe,Ge,S,y,V,H,ee,J,Le,Re,le,he,Ue,ae,lt,He,we,Se,be;function Ye(){Y=new ML(T),se=new mL(T,Y,e),Y.init(se),we=new QU(T,Y,se),Z=new KU(T,Y,se),_e=new EL(T),pe=new zU,xe=new jU(T,Y,Z,pe,se,we,_e),Ge=new vL(v),S=new xL(v),y=new PP(T,se),Se=new dL(T,Y,y,se),V=new SL(T,y,_e,Se),H=new RL(T,V,y,_e),ae=new wL(T,se,xe),le=new gL(pe),ee=new BU(v,Ge,S,Y,se,Se,le),J=new rN(v,pe),Le=new VU,Re=new YU(Y,se),Ue=new fL(v,Ge,S,Z,H,f,c),he=new JU(v,H,se),be=new sN(T,_e,se,Z),lt=new pL(T,Y,_e,se),He=new bL(T,Y,_e,se),_e.programs=ee.programs,v.capabilities=se,v.extensions=Y,v.properties=pe,v.renderLists=Le,v.shadowMap=he,v.state=Z,v.info=_e}Ye();let De=new hh(v,T);this.xr=De,this.getContext=function(){return T},this.getContextAttributes=function(){return T.getContextAttributes()},this.forceContextLoss=function(){let M=Y.get("WEBGL_lose_context");M&&M.loseContext()},this.forceContextRestore=function(){let M=Y.get("WEBGL_lose_context");M&&M.restoreContext()},this.getPixelRatio=function(){return $},this.setPixelRatio=function(M){M!==void 0&&($=M,this.setSize(W,G,!1))},this.getSize=function(M){return M.set(W,G)},this.setSize=function(M,N,F=!0){if(De.isPresenting){console.warn("THREE.WebGLRenderer: Can't change size while VR device is presenting.");return}W=M,G=N,t.width=Math.floor(M*$),t.height=Math.floor(N*$),F===!0&&(t.style.width=M+"px",t.style.height=N+"px"),this.setViewport(0,0,M,N)},this.getDrawingBufferSize=function(M){return M.set(W*$,G*$).floor()},this.setDrawingBufferSize=function(M,N,F){W=M,G=N,$=F,t.width=Math.floor(M*F),t.height=Math.floor(N*F),this.setViewport(0,0,M,N)},this.getCurrentViewport=function(M){return M.copy(x)},this.getViewport=function(M){return M.copy(ne)},this.setViewport=function(M,N,F,z){M.isVector4?ne.set(M.x,M.y,M.z,M.w):ne.set(M,N,F,z),Z.viewport(x.copy(ne).multiplyScalar($).round())},this.getScissor=function(M){return M.copy(te)},this.setScissor=function(M,N,F,z){M.isVector4?te.set(M.x,M.y,M.z,M.w):te.set(M,N,F,z),Z.scissor(A.copy(te).multiplyScalar($).round())},this.getScissorTest=function(){return ve},this.setScissorTest=function(M){Z.setScissorTest(ve=M)},this.setOpaqueSort=function(M){q=M},this.setTransparentSort=function(M){X=M},this.getClearColor=function(M){return M.copy(Ue.getClearColor())},this.setClearColor=function(){Ue.setClearColor.apply(Ue,arguments)},this.getClearAlpha=function(){return Ue.getClearAlpha()},this.setClearAlpha=function(){Ue.setClearAlpha.apply(Ue,arguments)},this.clear=function(M=!0,N=!0,F=!0){let z=0;if(M){let D=!1;if(w!==null){let ge=w.texture.format;D=ge===ry||ge===iy||ge===ny}if(D){let ge=w.texture.type,Ee=ge===ii||ge===ei||ge===Oh||ge===Pi||ge===ey||ge===ty,Ce=Ue.getClearColor(),Pe=Ue.getClearAlpha(),Ve=Ce.r,Ne=Ce.g,Oe=Ce.b;Ee?(m[0]=Ve,m[1]=Ne,m[2]=Oe,m[3]=Pe,T.clearBufferuiv(T.COLOR,0,m)):(g[0]=Ve,g[1]=Ne,g[2]=Oe,g[3]=Pe,T.clearBufferiv(T.COLOR,0,g))}else z|=T.COLOR_BUFFER_BIT}N&&(z|=T.DEPTH_BUFFER_BIT),F&&(z|=T.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(4294967295)),T.clear(z)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){t.removeEventListener("webglcontextlost",tt,!1),t.removeEventListener("webglcontextrestored",P,!1),t.removeEventListener("webglcontextcreationerror",fe,!1),Le.dispose(),Re.dispose(),pe.dispose(),Ge.dispose(),S.dispose(),H.dispose(),Se.dispose(),be.dispose(),ee.dispose(),he.dispose(),De.dispose(),De.removeEventListener("sessionstart",Ht),De.removeEventListener("sessionend",je),me&&(me.dispose(),me=null),Tt.stop()};function tt(M){M.preventDefault(),console.log("THREE.WebGLRenderer: Context Lost."),E=!0}function P(){console.log("THREE.WebGLRenderer: Context Restored."),E=!1;let M=_e.autoReset,N=he.enabled,F=he.autoUpdate,z=he.needsUpdate,D=he.type;Ye(),_e.autoReset=M,he.enabled=N,he.autoUpdate=F,he.needsUpdate=z,he.type=D}function fe(M){console.error("THREE.WebGLRenderer: A WebGL context could not be created. Reason: ",M.statusMessage)}function O(M){let N=M.target;N.removeEventListener("dispose",O),ce(N)}function ce(M){de(M),pe.remove(M)}function de(M){let N=pe.get(M).programs;N!==void 0&&(N.forEach(function(F){ee.releaseProgram(F)}),M.isShaderMaterial&&ee.releaseShaderCache(M))}this.renderBufferDirect=function(M,N,F,z,D,ge){N===null&&(N=ke);let Ee=D.isMesh&&D.matrixWorld.determinant()<0,Ce=Yx(M,N,F,z,D);Z.setMaterial(z,Ee);let Pe=F.index,Ve=1;if(z.wireframe===!0){if(Pe=V.getWireframeAttribute(F),Pe===void 0)return;Ve=2}let Ne=F.drawRange,Oe=F.attributes.position,ct=Ne.start*Ve,Ft=(Ne.start+Ne.count)*Ve;ge!==null&&(ct=Math.max(ct,ge.start*Ve),Ft=Math.min(Ft,(ge.start+ge.count)*Ve)),Pe!==null?(ct=Math.max(ct,0),Ft=Math.min(Ft,Pe.count)):Oe!=null&&(ct=Math.max(ct,0),Ft=Math.min(Ft,Oe.count));let mt=Ft-ct;if(mt<0||mt===1/0)return;Se.setup(D,z,Ce,F,Pe);let Mn,st=lt;if(Pe!==null&&(Mn=y.get(Pe),st=He,st.setIndex(Mn)),D.isMesh)z.wireframe===!0?(Z.setLineWidth(z.wireframeLinewidth*Te()),st.setMode(T.LINES)):st.setMode(T.TRIANGLES);else if(D.isLine){let Fe=z.linewidth;Fe===void 0&&(Fe=1),Z.setLineWidth(Fe*Te()),D.isLineSegments?st.setMode(T.LINES):D.isLineLoop?st.setMode(T.LINE_LOOP):st.setMode(T.LINE_STRIP)}else D.isPoints?st.setMode(T.POINTS):D.isSprite&&st.setMode(T.TRIANGLES);if(D.isBatchedMesh)st.renderMultiDraw(D._multiDrawStarts,D._multiDrawCounts,D._multiDrawCount);else if(D.isInstancedMesh)st.renderInstances(ct,mt,D.count);else if(F.isInstancedBufferGeometry){let Fe=F._maxInstanceCount!==void 0?F._maxInstanceCount:1/0,Wo=Math.min(F.instanceCount,Fe);st.renderInstances(ct,mt,Wo)}else st.render(ct,mt)};function qe(M,N,F){M.transparent===!0&&M.side===Un&&M.forceSinglePass===!1?(M.side=Dt,M.needsUpdate=!0,Rs(M,N,F),M.side=si,M.needsUpdate=!0,Rs(M,N,F),M.side=Un):Rs(M,N,F)}this.compile=function(M,N,F=null){F===null&&(F=M),d=Re.get(F),d.init(),b.push(d),F.traverseVisible(function(D){D.isLight&&D.layers.test(N.layers)&&(d.pushLight(D),D.castShadow&&d.pushShadow(D))}),M!==F&&M.traverseVisible(function(D){D.isLight&&D.layers.test(N.layers)&&(d.pushLight(D),D.castShadow&&d.pushShadow(D))}),d.setupLights(v._useLegacyLights);let z=new Set;return M.traverse(function(D){let ge=D.material;if(ge)if(Array.isArray(ge))for(let Ee=0;Ee<ge.length;Ee++){let Ce=ge[Ee];qe(Ce,F,D),z.add(Ce)}else qe(ge,F,D),z.add(ge)}),b.pop(),d=null,z},this.compileAsync=function(M,N,F=null){let z=this.compile(M,N,F);return new Promise(D=>{function ge(){if(z.forEach(function(Ee){pe.get(Ee).currentProgram.isReady()&&z.delete(Ee)}),z.size===0){D(M);return}setTimeout(ge,10)}Y.get("KHR_parallel_shader_compile")!==null?ge():setTimeout(ge,10)})};let Ke=null;function vt(M){Ke&&Ke(M)}function Ht(){Tt.stop()}function je(){Tt.start()}let Tt=new hy;Tt.setAnimationLoop(vt),typeof self!="undefined"&&Tt.setContext(self),this.setAnimationLoop=function(M){Ke=M,De.setAnimationLoop(M),M===null?Tt.stop():Tt.start()},De.addEventListener("sessionstart",Ht),De.addEventListener("sessionend",je),this.render=function(M,N){if(N!==void 0&&N.isCamera!==!0){console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.");return}if(E===!0)return;M.matrixWorldAutoUpdate===!0&&M.updateMatrixWorld(),N.parent===null&&N.matrixWorldAutoUpdate===!0&&N.updateMatrixWorld(),De.enabled===!0&&De.isPresenting===!0&&(De.cameraAutoUpdate===!0&&De.updateCamera(N),N=De.getCamera()),M.isScene===!0&&M.onBeforeRender(v,M,N,w),d=Re.get(M,b.length),d.init(),b.push(d),Ae.multiplyMatrices(N.projectionMatrix,N.matrixWorldInverse),Ie.setFromProjectionMatrix(Ae),Q=this.localClippingEnabled,k=le.init(this.clippingPlanes,Q),_=Le.get(M,p.length),_.init(),p.push(_),un(M,N,0,v.sortObjects),_.finish(),v.sortObjects===!0&&_.sort(q,X),this.info.render.frame++,k===!0&&le.beginShadows();let F=d.state.shadowsArray;if(he.render(F,M,N),k===!0&&le.endShadows(),this.info.autoReset===!0&&this.info.reset(),(De.enabled===!1||De.isPresenting===!1||De.hasDepthSensing()===!1)&&Ue.render(_,M),d.setupLights(v._useLegacyLights),N.isArrayCamera){let z=N.cameras;for(let D=0,ge=z.length;D<ge;D++){let Ee=z[D];mf(_,M,Ee,Ee.viewport)}}else mf(_,M,N);w!==null&&(xe.updateMultisampleRenderTarget(w),xe.updateRenderTargetMipmap(w)),M.isScene===!0&&M.onAfterRender(v,M,N),Se.resetDefaultState(),B=-1,j=null,b.pop(),b.length>0?d=b[b.length-1]:d=null,p.pop(),p.length>0?_=p[p.length-1]:_=null};function un(M,N,F,z){if(M.visible===!1)return;if(M.layers.test(N.layers)){if(M.isGroup)F=M.renderOrder;else if(M.isLOD)M.autoUpdate===!0&&M.update(N);else if(M.isLight)d.pushLight(M),M.castShadow&&d.pushShadow(M);else if(M.isSprite){if(!M.frustumCulled||Ie.intersectsSprite(M)){z&&ye.setFromMatrixPosition(M.matrixWorld).applyMatrix4(Ae);let Ee=H.update(M),Ce=M.material;Ce.visible&&_.push(M,Ee,Ce,F,ye.z,null)}}else if((M.isMesh||M.isLine||M.isPoints)&&(!M.frustumCulled||Ie.intersectsObject(M))){let Ee=H.update(M),Ce=M.material;if(z&&(M.boundingSphere!==void 0?(M.boundingSphere===null&&M.computeBoundingSphere(),ye.copy(M.boundingSphere.center)):(Ee.boundingSphere===null&&Ee.computeBoundingSphere(),ye.copy(Ee.boundingSphere.center)),ye.applyMatrix4(M.matrixWorld).applyMatrix4(Ae)),Array.isArray(Ce)){let Pe=Ee.groups;for(let Ve=0,Ne=Pe.length;Ve<Ne;Ve++){let Oe=Pe[Ve],ct=Ce[Oe.materialIndex];ct&&ct.visible&&_.push(M,Ee,ct,F,ye.z,Oe)}}else Ce.visible&&_.push(M,Ee,Ce,F,ye.z,null)}}let ge=M.children;for(let Ee=0,Ce=ge.length;Ee<Ce;Ee++)un(ge[Ee],N,F,z)}function mf(M,N,F,z){let D=M.opaque,ge=M.transmissive,Ee=M.transparent;d.setupLightsView(F),k===!0&&le.setGlobalState(v.clippingPlanes,F),ge.length>0&&Xx(D,ge,N,F),z&&Z.viewport(x.copy(z)),D.length>0&&ws(D,N,F),ge.length>0&&ws(ge,N,F),Ee.length>0&&ws(Ee,N,F),Z.buffers.depth.setTest(!0),Z.buffers.depth.setMask(!0),Z.buffers.color.setMask(!0),Z.setPolygonOffset(!1)}function Xx(M,N,F,z){if((F.isScene===!0?F.overrideMaterial:null)!==null)return;let ge=se.isWebGL2;me===null&&(me=new Fn(1,1,{generateMipmaps:!0,type:Y.has("EXT_color_buffer_half_float")?ps:ii,minFilter:wi,samples:ge?4:0})),v.getDrawingBufferSize(Me),ge?me.setSize(Me.x,Me.y):me.setSize($u(Me.x),$u(Me.y));let Ee=v.getRenderTarget();v.setRenderTarget(me),v.getClearColor(K),C=v.getClearAlpha(),C<1&&v.setClearColor(16777215,.5),v.clear();let Ce=v.toneMapping;v.toneMapping=ni,ws(M,F,z),xe.updateMultisampleRenderTarget(me),xe.updateRenderTargetMipmap(me);let Pe=!1;for(let Ve=0,Ne=N.length;Ve<Ne;Ve++){let Oe=N[Ve],ct=Oe.object,Ft=Oe.geometry,mt=Oe.material,Mn=Oe.group;if(mt.side===Un&&ct.layers.test(z.layers)){let st=mt.side;mt.side=Dt,mt.needsUpdate=!0,gf(ct,F,z,Ft,mt,Mn),mt.side=st,mt.needsUpdate=!0,Pe=!0}}Pe===!0&&(xe.updateMultisampleRenderTarget(me),xe.updateRenderTargetMipmap(me)),v.setRenderTarget(Ee),v.setClearColor(K,C),v.toneMapping=Ce}function ws(M,N,F){let z=N.isScene===!0?N.overrideMaterial:null;for(let D=0,ge=M.length;D<ge;D++){let Ee=M[D],Ce=Ee.object,Pe=Ee.geometry,Ve=z===null?Ee.material:z,Ne=Ee.group;Ce.layers.test(F.layers)&&gf(Ce,N,F,Pe,Ve,Ne)}}function gf(M,N,F,z,D,ge){M.onBeforeRender(v,N,F,z,D,ge),M.modelViewMatrix.multiplyMatrices(F.matrixWorldInverse,M.matrixWorld),M.normalMatrix.getNormalMatrix(M.modelViewMatrix),D.onBeforeRender(v,N,F,z,M,ge),D.transparent===!0&&D.side===Un&&D.forceSinglePass===!1?(D.side=Dt,D.needsUpdate=!0,v.renderBufferDirect(F,N,z,D,M,ge),D.side=si,D.needsUpdate=!0,v.renderBufferDirect(F,N,z,D,M,ge),D.side=Un):v.renderBufferDirect(F,N,z,D,M,ge),M.onAfterRender(v,N,F,z,D,ge)}function Rs(M,N,F){N.isScene!==!0&&(N=ke);let z=pe.get(M),D=d.state.lights,ge=d.state.shadowsArray,Ee=D.state.version,Ce=ee.getParameters(M,D.state,ge,N,F),Pe=ee.getProgramCacheKey(Ce),Ve=z.programs;z.environment=M.isMeshStandardMaterial?N.environment:null,z.fog=N.fog,z.envMap=(M.isMeshStandardMaterial?S:Ge).get(M.envMap||z.environment),z.envMapRotation=z.environment!==null&&M.envMap===null?N.environmentRotation:M.envMapRotation,Ve===void 0&&(M.addEventListener("dispose",O),Ve=new Map,z.programs=Ve);let Ne=Ve.get(Pe);if(Ne!==void 0){if(z.currentProgram===Ne&&z.lightsStateVersion===Ee)return _f(M,Ce),Ne}else Ce.uniforms=ee.getUniforms(M),M.onBuild(F,Ce,v),M.onBeforeCompile(Ce,v),Ne=ee.acquireProgram(Ce,Pe),Ve.set(Pe,Ne),z.uniforms=Ce.uniforms;let Oe=z.uniforms;return(!M.isShaderMaterial&&!M.isRawShaderMaterial||M.clipping===!0)&&(Oe.clippingPlanes=le.uniform),_f(M,Ce),z.needsLights=Zx(M),z.lightsStateVersion=Ee,z.needsLights&&(Oe.ambientLightColor.value=D.state.ambient,Oe.lightProbe.value=D.state.probe,Oe.directionalLights.value=D.state.directional,Oe.directionalLightShadows.value=D.state.directionalShadow,Oe.spotLights.value=D.state.spot,Oe.spotLightShadows.value=D.state.spotShadow,Oe.rectAreaLights.value=D.state.rectArea,Oe.ltc_1.value=D.state.rectAreaLTC1,Oe.ltc_2.value=D.state.rectAreaLTC2,Oe.pointLights.value=D.state.point,Oe.pointLightShadows.value=D.state.pointShadow,Oe.hemisphereLights.value=D.state.hemi,Oe.directionalShadowMap.value=D.state.directionalShadowMap,Oe.directionalShadowMatrix.value=D.state.directionalShadowMatrix,Oe.spotShadowMap.value=D.state.spotShadowMap,Oe.spotLightMatrix.value=D.state.spotLightMatrix,Oe.spotLightMap.value=D.state.spotLightMap,Oe.pointShadowMap.value=D.state.pointShadowMap,Oe.pointShadowMatrix.value=D.state.pointShadowMatrix),z.currentProgram=Ne,z.uniformsList=null,Ne}function vf(M){if(M.uniformsList===null){let N=M.currentProgram.getUniforms();M.uniformsList=br.seqWithValue(N.seq,M.uniforms)}return M.uniformsList}function _f(M,N){let F=pe.get(M);F.outputColorSpace=N.outputColorSpace,F.batching=N.batching,F.instancing=N.instancing,F.instancingColor=N.instancingColor,F.instancingMorph=N.instancingMorph,F.skinning=N.skinning,F.morphTargets=N.morphTargets,F.morphNormals=N.morphNormals,F.morphColors=N.morphColors,F.morphTargetsCount=N.morphTargetsCount,F.numClippingPlanes=N.numClippingPlanes,F.numIntersection=N.numClipIntersection,F.vertexAlphas=N.vertexAlphas,F.vertexTangents=N.vertexTangents,F.toneMapping=N.toneMapping}function Yx(M,N,F,z,D){N.isScene!==!0&&(N=ke),xe.resetTextureUnits();let ge=N.fog,Ee=z.isMeshStandardMaterial?N.environment:null,Ce=w===null?v.outputColorSpace:w.isXRRenderTarget===!0?w.texture.colorSpace:ci,Pe=(z.isMeshStandardMaterial?S:Ge).get(z.envMap||Ee),Ve=z.vertexColors===!0&&!!F.attributes.color&&F.attributes.color.itemSize===4,Ne=!!F.attributes.tangent&&(!!z.normalMap||z.anisotropy>0),Oe=!!F.morphAttributes.position,ct=!!F.morphAttributes.normal,Ft=!!F.morphAttributes.color,mt=ni;z.toneMapped&&(w===null||w.isXRRenderTarget===!0)&&(mt=v.toneMapping);let Mn=F.morphAttributes.position||F.morphAttributes.normal||F.morphAttributes.color,st=Mn!==void 0?Mn.length:0,Fe=pe.get(z),Wo=d.state.lights;if(k===!0&&(Q===!0||M!==j)){let Wt=M===j&&z.id===B;le.setState(z,M,Wt)}let nt=!1;z.version===Fe.__version?(Fe.needsLights&&Fe.lightsStateVersion!==Wo.state.version||Fe.outputColorSpace!==Ce||D.isBatchedMesh&&Fe.batching===!1||!D.isBatchedMesh&&Fe.batching===!0||D.isInstancedMesh&&Fe.instancing===!1||!D.isInstancedMesh&&Fe.instancing===!0||D.isSkinnedMesh&&Fe.skinning===!1||!D.isSkinnedMesh&&Fe.skinning===!0||D.isInstancedMesh&&Fe.instancingColor===!0&&D.instanceColor===null||D.isInstancedMesh&&Fe.instancingColor===!1&&D.instanceColor!==null||D.isInstancedMesh&&Fe.instancingMorph===!0&&D.morphTexture===null||D.isInstancedMesh&&Fe.instancingMorph===!1&&D.morphTexture!==null||Fe.envMap!==Pe||z.fog===!0&&Fe.fog!==ge||Fe.numClippingPlanes!==void 0&&(Fe.numClippingPlanes!==le.numPlanes||Fe.numIntersection!==le.numIntersection)||Fe.vertexAlphas!==Ve||Fe.vertexTangents!==Ne||Fe.morphTargets!==Oe||Fe.morphNormals!==ct||Fe.morphColors!==Ft||Fe.toneMapping!==mt||se.isWebGL2===!0&&Fe.morphTargetsCount!==st)&&(nt=!0):(nt=!0,Fe.__version=z.version);let li=Fe.currentProgram;nt===!0&&(li=Rs(z,N,D));let yf=!1,Fr=!1,qo=!1,Mt=li.getUniforms(),ui=Fe.uniforms;if(Z.useProgram(li.program)&&(yf=!0,Fr=!0,qo=!0),z.id!==B&&(B=z.id,Fr=!0),yf||j!==M){Mt.setValue(T,"projectionMatrix",M.projectionMatrix),Mt.setValue(T,"viewMatrix",M.matrixWorldInverse);let Wt=Mt.map.cameraPosition;Wt!==void 0&&Wt.setValue(T,ye.setFromMatrixPosition(M.matrixWorld)),se.logarithmicDepthBuffer&&Mt.setValue(T,"logDepthBufFC",2/(Math.log(M.far+1)/Math.LN2)),(z.isMeshPhongMaterial||z.isMeshToonMaterial||z.isMeshLambertMaterial||z.isMeshBasicMaterial||z.isMeshStandardMaterial||z.isShaderMaterial)&&Mt.setValue(T,"isOrthographic",M.isOrthographicCamera===!0),j!==M&&(j=M,Fr=!0,qo=!0)}if(D.isSkinnedMesh){Mt.setOptional(T,D,"bindMatrix"),Mt.setOptional(T,D,"bindMatrixInverse");let Wt=D.skeleton;Wt&&(se.floatVertexTextures?(Wt.boneTexture===null&&Wt.computeBoneTexture(),Mt.setValue(T,"boneTexture",Wt.boneTexture,xe)):console.warn("THREE.WebGLRenderer: SkinnedMesh can only be used with WebGL 2. With WebGL 1 OES_texture_float and vertex textures support is required."))}D.isBatchedMesh&&(Mt.setOptional(T,D,"batchingTexture"),Mt.setValue(T,"batchingTexture",D._matricesTexture,xe));let Xo=F.morphAttributes;if((Xo.position!==void 0||Xo.normal!==void 0||Xo.color!==void 0&&se.isWebGL2===!0)&&ae.update(D,F,li),(Fr||Fe.receiveShadow!==D.receiveShadow)&&(Fe.receiveShadow=D.receiveShadow,Mt.setValue(T,"receiveShadow",D.receiveShadow)),z.isMeshGouraudMaterial&&z.envMap!==null&&(ui.envMap.value=Pe,ui.flipEnvMap.value=Pe.isCubeTexture&&Pe.isRenderTargetTexture===!1?-1:1),Fr&&(Mt.setValue(T,"toneMappingExposure",v.toneMappingExposure),Fe.needsLights&&$x(ui,qo),ge&&z.fog===!0&&J.refreshFogUniforms(ui,ge),J.refreshMaterialUniforms(ui,z,$,G,me),br.upload(T,vf(Fe),ui,xe)),z.isShaderMaterial&&z.uniformsNeedUpdate===!0&&(br.upload(T,vf(Fe),ui,xe),z.uniformsNeedUpdate=!1),z.isSpriteMaterial&&Mt.setValue(T,"center",D.center),Mt.setValue(T,"modelViewMatrix",D.modelViewMatrix),Mt.setValue(T,"normalMatrix",D.normalMatrix),Mt.setValue(T,"modelMatrix",D.matrixWorld),z.isShaderMaterial||z.isRawShaderMaterial){let Wt=z.uniformsGroups;for(let Yo=0,Jx=Wt.length;Yo<Jx;Yo++)if(se.isWebGL2){let xf=Wt[Yo];be.update(xf,li),be.bind(xf,li)}else console.warn("THREE.WebGLRenderer: Uniform Buffer Objects can only be used with WebGL 2.")}return li}function $x(M,N){M.ambientLightColor.needsUpdate=N,M.lightProbe.needsUpdate=N,M.directionalLights.needsUpdate=N,M.directionalLightShadows.needsUpdate=N,M.pointLights.needsUpdate=N,M.pointLightShadows.needsUpdate=N,M.spotLights.needsUpdate=N,M.spotLightShadows.needsUpdate=N,M.rectAreaLights.needsUpdate=N,M.hemisphereLights.needsUpdate=N}function Zx(M){return M.isMeshLambertMaterial||M.isMeshToonMaterial||M.isMeshPhongMaterial||M.isMeshStandardMaterial||M.isShadowMaterial||M.isShaderMaterial&&M.lights===!0}this.getActiveCubeFace=function(){return I},this.getActiveMipmapLevel=function(){return R},this.getRenderTarget=function(){return w},this.setRenderTargetTextures=function(M,N,F){pe.get(M.texture).__webglTexture=N,pe.get(M.depthTexture).__webglTexture=F;let z=pe.get(M);z.__hasExternalTextures=!0,z.__autoAllocateDepthBuffer=F===void 0,z.__autoAllocateDepthBuffer||Y.has("WEBGL_multisampled_render_to_texture")===!0&&(console.warn("THREE.WebGLRenderer: Render-to-texture extension was disabled because an external texture was provided"),z.__useRenderToTexture=!1)},this.setRenderTargetFramebuffer=function(M,N){let F=pe.get(M);F.__webglFramebuffer=N,F.__useDefaultFramebuffer=N===void 0},this.setRenderTarget=function(M,N=0,F=0){w=M,I=N,R=F;let z=!0,D=null,ge=!1,Ee=!1;if(M){let Pe=pe.get(M);Pe.__useDefaultFramebuffer!==void 0?(Z.bindFramebuffer(T.FRAMEBUFFER,null),z=!1):Pe.__webglFramebuffer===void 0?xe.setupRenderTarget(M):Pe.__hasExternalTextures&&xe.rebindTextures(M,pe.get(M.texture).__webglTexture,pe.get(M.depthTexture).__webglTexture);let Ve=M.texture;(Ve.isData3DTexture||Ve.isDataArrayTexture||Ve.isCompressedArrayTexture)&&(Ee=!0);let Ne=pe.get(M).__webglFramebuffer;M.isWebGLCubeRenderTarget?(Array.isArray(Ne[N])?D=Ne[N][F]:D=Ne[N],ge=!0):se.isWebGL2&&M.samples>0&&xe.useMultisampledRTT(M)===!1?D=pe.get(M).__webglMultisampledFramebuffer:Array.isArray(Ne)?D=Ne[F]:D=Ne,x.copy(M.viewport),A.copy(M.scissor),re=M.scissorTest}else x.copy(ne).multiplyScalar($).floor(),A.copy(te).multiplyScalar($).floor(),re=ve;if(Z.bindFramebuffer(T.FRAMEBUFFER,D)&&se.drawBuffers&&z&&Z.drawBuffers(M,D),Z.viewport(x),Z.scissor(A),Z.setScissorTest(re),ge){let Pe=pe.get(M.texture);T.framebufferTexture2D(T.FRAMEBUFFER,T.COLOR_ATTACHMENT0,T.TEXTURE_CUBE_MAP_POSITIVE_X+N,Pe.__webglTexture,F)}else if(Ee){let Pe=pe.get(M.texture),Ve=N||0;T.framebufferTextureLayer(T.FRAMEBUFFER,T.COLOR_ATTACHMENT0,Pe.__webglTexture,F||0,Ve)}B=-1},this.readRenderTargetPixels=function(M,N,F,z,D,ge,Ee){if(!(M&&M.isWebGLRenderTarget)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");return}let Ce=pe.get(M).__webglFramebuffer;if(M.isWebGLCubeRenderTarget&&Ee!==void 0&&(Ce=Ce[Ee]),Ce){Z.bindFramebuffer(T.FRAMEBUFFER,Ce);try{let Pe=M.texture,Ve=Pe.format,Ne=Pe.type;if(Ve!==an&&we.convert(Ve)!==T.getParameter(T.IMPLEMENTATION_COLOR_READ_FORMAT)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");return}let Oe=Ne===ps&&(Y.has("EXT_color_buffer_half_float")||se.isWebGL2&&Y.has("EXT_color_buffer_float"));if(Ne!==ii&&we.convert(Ne)!==T.getParameter(T.IMPLEMENTATION_COLOR_READ_TYPE)&&!(Ne===Nn&&(se.isWebGL2||Y.has("OES_texture_float")||Y.has("WEBGL_color_buffer_float")))&&!Oe){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");return}N>=0&&N<=M.width-z&&F>=0&&F<=M.height-D&&T.readPixels(N,F,z,D,we.convert(Ve),we.convert(Ne),ge)}finally{let Pe=w!==null?pe.get(w).__webglFramebuffer:null;Z.bindFramebuffer(T.FRAMEBUFFER,Pe)}}},this.copyFramebufferToTexture=function(M,N,F=0){let z=Math.pow(2,-F),D=Math.floor(N.image.width*z),ge=Math.floor(N.image.height*z);xe.setTexture2D(N,0),T.copyTexSubImage2D(T.TEXTURE_2D,F,0,0,M.x,M.y,D,ge),Z.unbindTexture()},this.copyTextureToTexture=function(M,N,F,z=0){let D=N.image.width,ge=N.image.height,Ee=we.convert(F.format),Ce=we.convert(F.type);xe.setTexture2D(F,0),T.pixelStorei(T.UNPACK_FLIP_Y_WEBGL,F.flipY),T.pixelStorei(T.UNPACK_PREMULTIPLY_ALPHA_WEBGL,F.premultiplyAlpha),T.pixelStorei(T.UNPACK_ALIGNMENT,F.unpackAlignment),N.isDataTexture?T.texSubImage2D(T.TEXTURE_2D,z,M.x,M.y,D,ge,Ee,Ce,N.image.data):N.isCompressedTexture?T.compressedTexSubImage2D(T.TEXTURE_2D,z,M.x,M.y,N.mipmaps[0].width,N.mipmaps[0].height,Ee,N.mipmaps[0].data):T.texSubImage2D(T.TEXTURE_2D,z,M.x,M.y,Ee,Ce,N.image),z===0&&F.generateMipmaps&&T.generateMipmap(T.TEXTURE_2D),Z.unbindTexture()},this.copyTextureToTexture3D=function(M,N,F,z,D=0){if(v.isWebGL1Renderer){console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: can only be used with WebGL2.");return}let ge=Math.round(M.max.x-M.min.x),Ee=Math.round(M.max.y-M.min.y),Ce=M.max.z-M.min.z+1,Pe=we.convert(z.format),Ve=we.convert(z.type),Ne;if(z.isData3DTexture)xe.setTexture3D(z,0),Ne=T.TEXTURE_3D;else if(z.isDataArrayTexture||z.isCompressedArrayTexture)xe.setTexture2DArray(z,0),Ne=T.TEXTURE_2D_ARRAY;else{console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.");return}T.pixelStorei(T.UNPACK_FLIP_Y_WEBGL,z.flipY),T.pixelStorei(T.UNPACK_PREMULTIPLY_ALPHA_WEBGL,z.premultiplyAlpha),T.pixelStorei(T.UNPACK_ALIGNMENT,z.unpackAlignment);let Oe=T.getParameter(T.UNPACK_ROW_LENGTH),ct=T.getParameter(T.UNPACK_IMAGE_HEIGHT),Ft=T.getParameter(T.UNPACK_SKIP_PIXELS),mt=T.getParameter(T.UNPACK_SKIP_ROWS),Mn=T.getParameter(T.UNPACK_SKIP_IMAGES),st=F.isCompressedTexture?F.mipmaps[D]:F.image;T.pixelStorei(T.UNPACK_ROW_LENGTH,st.width),T.pixelStorei(T.UNPACK_IMAGE_HEIGHT,st.height),T.pixelStorei(T.UNPACK_SKIP_PIXELS,M.min.x),T.pixelStorei(T.UNPACK_SKIP_ROWS,M.min.y),T.pixelStorei(T.UNPACK_SKIP_IMAGES,M.min.z),F.isDataTexture||F.isData3DTexture?T.texSubImage3D(Ne,D,N.x,N.y,N.z,ge,Ee,Ce,Pe,Ve,st.data):z.isCompressedArrayTexture?T.compressedTexSubImage3D(Ne,D,N.x,N.y,N.z,ge,Ee,Ce,Pe,st.data):T.texSubImage3D(Ne,D,N.x,N.y,N.z,ge,Ee,Ce,Pe,Ve,st),T.pixelStorei(T.UNPACK_ROW_LENGTH,Oe),T.pixelStorei(T.UNPACK_IMAGE_HEIGHT,ct),T.pixelStorei(T.UNPACK_SKIP_PIXELS,Ft),T.pixelStorei(T.UNPACK_SKIP_ROWS,mt),T.pixelStorei(T.UNPACK_SKIP_IMAGES,Mn),D===0&&z.generateMipmaps&&T.generateMipmap(Ne),Z.unbindTexture()},this.initTexture=function(M){M.isCubeTexture?xe.setTextureCube(M,0):M.isData3DTexture?xe.setTexture3D(M,0):M.isDataArrayTexture||M.isCompressedArrayTexture?xe.setTexture2DArray(M,0):xe.setTexture2D(M,0),Z.unbindTexture()},this.resetState=function(){I=0,R=0,w=null,Z.reset(),Se.reset()},typeof __THREE_DEVTOOLS__!="undefined"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}get coordinateSystem(){return Dn}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(e){this._outputColorSpace=e;let t=this.getContext();t.drawingBufferColorSpace=e===Fh?"display-p3":"srgb",t.unpackColorSpace=Je.workingColorSpace===Lo?"display-p3":"srgb"}get useLegacyLights(){return console.warn("THREE.WebGLRenderer: The property .useLegacyLights has been deprecated. Migrate your lighting according to the following guide: https://discourse.threejs.org/t/updates-to-lighting-in-three-js-r155/53733."),this._useLegacyLights}set useLegacyLights(e){console.warn("THREE.WebGLRenderer: The property .useLegacyLights has been deprecated. Migrate your lighting according to the following guide: https://discourse.threejs.org/t/updates-to-lighting-in-three-js-r155/53733."),this._useLegacyLights=e}},dh=class extends fh{};dh.prototype.isWebGL1Renderer=!0;var To=class{constructor(e,t){this.isInterleavedBuffer=!0,this.array=e,this.stride=t,this.count=e!==void 0?e.length/t:0,this.usage=qu,this._updateRange={offset:0,count:-1},this.updateRanges=[],this.version=0,this.uuid=On()}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}get updateRange(){return cy("THREE.InterleavedBuffer: updateRange() is deprecated and will be removed in r169. Use addUpdateRange() instead."),this._updateRange}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.array=new e.array.constructor(e.array),this.count=e.count,this.stride=e.stride,this.usage=e.usage,this}copyAt(e,t,i){e*=this.stride,i*=t.stride;for(let r=0,s=this.stride;r<s;r++)this.array[e+r]=t.array[i+r];return this}set(e,t=0){return this.array.set(e,t),this}clone(e){e.arrayBuffers===void 0&&(e.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=On()),e.arrayBuffers[this.array.buffer._uuid]===void 0&&(e.arrayBuffers[this.array.buffer._uuid]=this.array.slice(0).buffer);let t=new this.array.constructor(e.arrayBuffers[this.array.buffer._uuid]),i=new this.constructor(t,this.stride);return i.setUsage(this.usage),i}onUpload(e){return this.onUploadCallback=e,this}toJSON(e){return e.arrayBuffers===void 0&&(e.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=On()),e.arrayBuffers[this.array.buffer._uuid]===void 0&&(e.arrayBuffers[this.array.buffer._uuid]=Array.from(new Uint32Array(this.array.buffer))),{uuid:this.uuid,buffer:this.array.buffer._uuid,type:this.array.constructor.name,stride:this.stride}}},Pt=new U,vs=class n{constructor(e,t,i,r=!1){this.isInterleavedBufferAttribute=!0,this.name="",this.data=e,this.itemSize=t,this.offset=i,this.normalized=r}get count(){return this.data.count}get array(){return this.data.array}set needsUpdate(e){this.data.needsUpdate=e}applyMatrix4(e){for(let t=0,i=this.data.count;t<i;t++)Pt.fromBufferAttribute(this,t),Pt.applyMatrix4(e),this.setXYZ(t,Pt.x,Pt.y,Pt.z);return this}applyNormalMatrix(e){for(let t=0,i=this.count;t<i;t++)Pt.fromBufferAttribute(this,t),Pt.applyNormalMatrix(e),this.setXYZ(t,Pt.x,Pt.y,Pt.z);return this}transformDirection(e){for(let t=0,i=this.count;t<i;t++)Pt.fromBufferAttribute(this,t),Pt.transformDirection(e),this.setXYZ(t,Pt.x,Pt.y,Pt.z);return this}getComponent(e,t){let i=this.array[e*this.data.stride+this.offset+t];return this.normalized&&(i=yn(i,this.array)),i}setComponent(e,t,i){return this.normalized&&(i=Ze(i,this.array)),this.data.array[e*this.data.stride+this.offset+t]=i,this}setX(e,t){return this.normalized&&(t=Ze(t,this.array)),this.data.array[e*this.data.stride+this.offset]=t,this}setY(e,t){return this.normalized&&(t=Ze(t,this.array)),this.data.array[e*this.data.stride+this.offset+1]=t,this}setZ(e,t){return this.normalized&&(t=Ze(t,this.array)),this.data.array[e*this.data.stride+this.offset+2]=t,this}setW(e,t){return this.normalized&&(t=Ze(t,this.array)),this.data.array[e*this.data.stride+this.offset+3]=t,this}getX(e){let t=this.data.array[e*this.data.stride+this.offset];return this.normalized&&(t=yn(t,this.array)),t}getY(e){let t=this.data.array[e*this.data.stride+this.offset+1];return this.normalized&&(t=yn(t,this.array)),t}getZ(e){let t=this.data.array[e*this.data.stride+this.offset+2];return this.normalized&&(t=yn(t,this.array)),t}getW(e){let t=this.data.array[e*this.data.stride+this.offset+3];return this.normalized&&(t=yn(t,this.array)),t}setXY(e,t,i){return e=e*this.data.stride+this.offset,this.normalized&&(t=Ze(t,this.array),i=Ze(i,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=i,this}setXYZ(e,t,i,r){return e=e*this.data.stride+this.offset,this.normalized&&(t=Ze(t,this.array),i=Ze(i,this.array),r=Ze(r,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=i,this.data.array[e+2]=r,this}setXYZW(e,t,i,r,s){return e=e*this.data.stride+this.offset,this.normalized&&(t=Ze(t,this.array),i=Ze(i,this.array),r=Ze(r,this.array),s=Ze(s,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=i,this.data.array[e+2]=r,this.data.array[e+3]=s,this}clone(e){if(e===void 0){console.log("THREE.InterleavedBufferAttribute.clone(): Cloning an interleaved buffer attribute will de-interleave buffer data.");let t=[];for(let i=0;i<this.count;i++){let r=i*this.data.stride+this.offset;for(let s=0;s<this.itemSize;s++)t.push(this.data.array[r+s])}return new rt(new this.array.constructor(t),this.itemSize,this.normalized)}else return e.interleavedBuffers===void 0&&(e.interleavedBuffers={}),e.interleavedBuffers[this.data.uuid]===void 0&&(e.interleavedBuffers[this.data.uuid]=this.data.clone(e)),new n(e.interleavedBuffers[this.data.uuid],this.itemSize,this.offset,this.normalized)}toJSON(e){if(e===void 0){console.log("THREE.InterleavedBufferAttribute.toJSON(): Serializing an interleaved buffer attribute will de-interleave buffer data.");let t=[];for(let i=0;i<this.count;i++){let r=i*this.data.stride+this.offset;for(let s=0;s<this.itemSize;s++)t.push(this.data.array[r+s])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:t,normalized:this.normalized}}else return e.interleavedBuffers===void 0&&(e.interleavedBuffers={}),e.interleavedBuffers[this.data.uuid]===void 0&&(e.interleavedBuffers[this.data.uuid]=this.data.toJSON(e)),{isInterleavedBufferAttribute:!0,itemSize:this.itemSize,data:this.data.uuid,offset:this.offset,normalized:this.normalized}}},ph=class extends Ni{constructor(e){super(),this.isSpriteMaterial=!0,this.type="SpriteMaterial",this.color=new Xe(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.alphaMap=e.alphaMap,this.rotation=e.rotation,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}},jn,cs=new U,mr=new U,gr=new U,vr=new ie,ls=new ie,vy=new ft,Ka=new U,us=new U,ja=new U,W0=new ie,Du=new ie,q0=new ie,mh=class extends cn{constructor(e=new ph){if(super(),this.isSprite=!0,this.type="Sprite",jn===void 0){jn=new Ot;let t=new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),i=new To(t,5);jn.setIndex([0,1,2,0,2,3]),jn.setAttribute("position",new vs(i,3,0,!1)),jn.setAttribute("uv",new vs(i,2,3,!1))}this.geometry=jn,this.material=e,this.center=new ie(.5,.5)}raycast(e,t){e.camera===null&&console.error('THREE.Sprite: "Raycaster.camera" needs to be set in order to raycast against sprites.'),mr.setFromMatrixScale(this.matrixWorld),vy.copy(e.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(e.camera.matrixWorldInverse,this.matrixWorld),gr.setFromMatrixPosition(this.modelViewMatrix),e.camera.isPerspectiveCamera&&this.material.sizeAttenuation===!1&&mr.multiplyScalar(-gr.z);let i=this.material.rotation,r,s;i!==0&&(s=Math.cos(i),r=Math.sin(i));let o=this.center;Qa(Ka.set(-.5,-.5,0),gr,o,mr,r,s),Qa(us.set(.5,-.5,0),gr,o,mr,r,s),Qa(ja.set(.5,.5,0),gr,o,mr,r,s),W0.set(0,0),Du.set(1,0),q0.set(1,1);let a=e.ray.intersectTriangle(Ka,us,ja,!1,cs);if(a===null&&(Qa(us.set(-.5,.5,0),gr,o,mr,r,s),Du.set(0,1),a=e.ray.intersectTriangle(Ka,ja,us,!1,cs),a===null))return;let c=e.ray.origin.distanceTo(cs);c<e.near||c>e.far||t.push({distance:c,point:cs.clone(),uv:Ri.getInterpolation(cs,Ka,us,ja,W0,Du,q0,new ie),face:null,object:this})}copy(e,t){return super.copy(e,t),e.center!==void 0&&this.center.copy(e.center),this.material=e.material,this}};mh.Dispose=function(){jn.dispose(),jn=void 0};function Qa(n,e,t,i,r,s){vr.subVectors(n,t).addScalar(.5).multiply(i),r!==void 0?(ls.x=s*vr.x-r*vr.y,ls.y=r*vr.x+s*vr.y):ls.copy(vr),n.copy(e),n.x+=ls.x,n.y+=ls.y,n.applyMatrix4(vy)}var Zt=class{constructor(){this.type="Curve",this.arcLengthDivisions=200}getPoint(){return console.warn("THREE.Curve: .getPoint() not implemented."),null}getPointAt(e,t){let i=this.getUtoTmapping(e);return this.getPoint(i,t)}getPoints(e=5){let t=[];for(let i=0;i<=e;i++)t.push(this.getPoint(i/e));return t}getSpacedPoints(e=5){let t=[];for(let i=0;i<=e;i++)t.push(this.getPointAt(i/e));return t}getLength(){let e=this.getLengths();return e[e.length-1]}getLengths(e=this.arcLengthDivisions){if(this.cacheArcLengths&&this.cacheArcLengths.length===e+1&&!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=!1;let t=[],i,r=this.getPoint(0),s=0;t.push(0);for(let o=1;o<=e;o++)i=this.getPoint(o/e),s+=i.distanceTo(r),t.push(s),r=i;return this.cacheArcLengths=t,t}updateArcLengths(){this.needsUpdate=!0,this.getLengths()}getUtoTmapping(e,t){let i=this.getLengths(),r=0,s=i.length,o;t?o=t:o=e*i[s-1];let a=0,c=s-1,l;for(;a<=c;)if(r=Math.floor(a+(c-a)/2),l=i[r]-o,l<0)a=r+1;else if(l>0)c=r-1;else{c=r;break}if(r=c,i[r]===o)return r/(s-1);let u=i[r],f=i[r+1]-u,m=(o-u)/f;return(r+m)/(s-1)}getTangent(e,t){let r=e-1e-4,s=e+1e-4;r<0&&(r=0),s>1&&(s=1);let o=this.getPoint(r),a=this.getPoint(s),c=t||(o.isVector2?new ie:new U);return c.copy(a).sub(o).normalize(),c}getTangentAt(e,t){let i=this.getUtoTmapping(e);return this.getTangent(i,t)}computeFrenetFrames(e,t){let i=new U,r=[],s=[],o=[],a=new U,c=new ft;for(let m=0;m<=e;m++){let g=m/e;r[m]=this.getTangentAt(g,new U)}s[0]=new U,o[0]=new U;let l=Number.MAX_VALUE,u=Math.abs(r[0].x),h=Math.abs(r[0].y),f=Math.abs(r[0].z);u<=l&&(l=u,i.set(1,0,0)),h<=l&&(l=h,i.set(0,1,0)),f<=l&&i.set(0,0,1),a.crossVectors(r[0],i).normalize(),s[0].crossVectors(r[0],a),o[0].crossVectors(r[0],s[0]);for(let m=1;m<=e;m++){if(s[m]=s[m-1].clone(),o[m]=o[m-1].clone(),a.crossVectors(r[m-1],r[m]),a.length()>Number.EPSILON){a.normalize();let g=Math.acos(At(r[m-1].dot(r[m]),-1,1));s[m].applyMatrix4(c.makeRotationAxis(a,g))}o[m].crossVectors(r[m],s[m])}if(t===!0){let m=Math.acos(At(s[0].dot(s[e]),-1,1));m/=e,r[0].dot(a.crossVectors(s[0],s[e]))>0&&(m=-m);for(let g=1;g<=e;g++)s[g].applyMatrix4(c.makeRotationAxis(r[g],m*g)),o[g].crossVectors(r[g],s[g])}return{tangents:r,normals:s,binormals:o}}clone(){return new this.constructor().copy(this)}copy(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}toJSON(){let e={metadata:{version:4.6,type:"Curve",generator:"Curve.toJSON"}};return e.arcLengthDivisions=this.arcLengthDivisions,e.type=this.type,e}fromJSON(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}},_s=class extends Zt{constructor(e=0,t=0,i=1,r=1,s=0,o=Math.PI*2,a=!1,c=0){super(),this.isEllipseCurve=!0,this.type="EllipseCurve",this.aX=e,this.aY=t,this.xRadius=i,this.yRadius=r,this.aStartAngle=s,this.aEndAngle=o,this.aClockwise=a,this.aRotation=c}getPoint(e,t=new ie){let i=t,r=Math.PI*2,s=this.aEndAngle-this.aStartAngle,o=Math.abs(s)<Number.EPSILON;for(;s<0;)s+=r;for(;s>r;)s-=r;s<Number.EPSILON&&(o?s=0:s=r),this.aClockwise===!0&&!o&&(s===r?s=-r:s=s-r);let a=this.aStartAngle+e*s,c=this.aX+this.xRadius*Math.cos(a),l=this.aY+this.yRadius*Math.sin(a);if(this.aRotation!==0){let u=Math.cos(this.aRotation),h=Math.sin(this.aRotation),f=c-this.aX,m=l-this.aY;c=f*u-m*h+this.aX,l=f*h+m*u+this.aY}return i.set(c,l)}copy(e){return super.copy(e),this.aX=e.aX,this.aY=e.aY,this.xRadius=e.xRadius,this.yRadius=e.yRadius,this.aStartAngle=e.aStartAngle,this.aEndAngle=e.aEndAngle,this.aClockwise=e.aClockwise,this.aRotation=e.aRotation,this}toJSON(){let e=super.toJSON();return e.aX=this.aX,e.aY=this.aY,e.xRadius=this.xRadius,e.yRadius=this.yRadius,e.aStartAngle=this.aStartAngle,e.aEndAngle=this.aEndAngle,e.aClockwise=this.aClockwise,e.aRotation=this.aRotation,e}fromJSON(e){return super.fromJSON(e),this.aX=e.aX,this.aY=e.aY,this.xRadius=e.xRadius,this.yRadius=e.yRadius,this.aStartAngle=e.aStartAngle,this.aEndAngle=e.aEndAngle,this.aClockwise=e.aClockwise,this.aRotation=e.aRotation,this}},gh=class extends _s{constructor(e,t,i,r,s,o){super(e,t,i,i,r,s,o),this.isArcCurve=!0,this.type="ArcCurve"}};function zh(){let n=0,e=0,t=0,i=0;function r(s,o,a,c){n=s,e=a,t=-3*s+3*o-2*a-c,i=2*s-2*o+a+c}return{initCatmullRom:function(s,o,a,c,l){r(o,a,l*(a-s),l*(c-o))},initNonuniformCatmullRom:function(s,o,a,c,l,u,h){let f=(o-s)/l-(a-s)/(l+u)+(a-o)/u,m=(a-o)/u-(c-o)/(u+h)+(c-a)/h;f*=u,m*=u,r(o,a,f,m)},calc:function(s){let o=s*s,a=o*s;return n+e*s+t*o+i*a}}}var eo=new U,Ou=new zh,Fu=new zh,Bu=new zh,vh=class extends Zt{constructor(e=[],t=!1,i="centripetal",r=.5){super(),this.isCatmullRomCurve3=!0,this.type="CatmullRomCurve3",this.points=e,this.closed=t,this.curveType=i,this.tension=r}getPoint(e,t=new U){let i=t,r=this.points,s=r.length,o=(s-(this.closed?0:1))*e,a=Math.floor(o),c=o-a;this.closed?a+=a>0?0:(Math.floor(Math.abs(a)/s)+1)*s:c===0&&a===s-1&&(a=s-2,c=1);let l,u;this.closed||a>0?l=r[(a-1)%s]:(eo.subVectors(r[0],r[1]).add(r[0]),l=eo);let h=r[a%s],f=r[(a+1)%s];if(this.closed||a+2<s?u=r[(a+2)%s]:(eo.subVectors(r[s-1],r[s-2]).add(r[s-1]),u=eo),this.curveType==="centripetal"||this.curveType==="chordal"){let m=this.curveType==="chordal"?.5:.25,g=Math.pow(l.distanceToSquared(h),m),_=Math.pow(h.distanceToSquared(f),m),d=Math.pow(f.distanceToSquared(u),m);_<1e-4&&(_=1),g<1e-4&&(g=_),d<1e-4&&(d=_),Ou.initNonuniformCatmullRom(l.x,h.x,f.x,u.x,g,_,d),Fu.initNonuniformCatmullRom(l.y,h.y,f.y,u.y,g,_,d),Bu.initNonuniformCatmullRom(l.z,h.z,f.z,u.z,g,_,d)}else this.curveType==="catmullrom"&&(Ou.initCatmullRom(l.x,h.x,f.x,u.x,this.tension),Fu.initCatmullRom(l.y,h.y,f.y,u.y,this.tension),Bu.initCatmullRom(l.z,h.z,f.z,u.z,this.tension));return i.set(Ou.calc(c),Fu.calc(c),Bu.calc(c)),i}copy(e){super.copy(e),this.points=[];for(let t=0,i=e.points.length;t<i;t++){let r=e.points[t];this.points.push(r.clone())}return this.closed=e.closed,this.curveType=e.curveType,this.tension=e.tension,this}toJSON(){let e=super.toJSON();e.points=[];for(let t=0,i=this.points.length;t<i;t++){let r=this.points[t];e.points.push(r.toArray())}return e.closed=this.closed,e.curveType=this.curveType,e.tension=this.tension,e}fromJSON(e){super.fromJSON(e),this.points=[];for(let t=0,i=e.points.length;t<i;t++){let r=e.points[t];this.points.push(new U().fromArray(r))}return this.closed=e.closed,this.curveType=e.curveType,this.tension=e.tension,this}};function X0(n,e,t,i,r){let s=(i-e)*.5,o=(r-t)*.5,a=n*n,c=n*a;return(2*t-2*i+s+o)*c+(-3*t+3*i-2*s-o)*a+s*n+t}function aN(n,e){let t=1-n;return t*t*e}function oN(n,e){return 2*(1-n)*n*e}function cN(n,e){return n*n*e}function fs(n,e,t,i){return aN(n,e)+oN(n,t)+cN(n,i)}function lN(n,e){let t=1-n;return t*t*t*e}function uN(n,e){let t=1-n;return 3*t*t*n*e}function hN(n,e){return 3*(1-n)*n*n*e}function fN(n,e){return n*n*n*e}function ds(n,e,t,i,r){return lN(n,e)+uN(n,t)+hN(n,i)+fN(n,r)}var wo=class extends Zt{constructor(e=new ie,t=new ie,i=new ie,r=new ie){super(),this.isCubicBezierCurve=!0,this.type="CubicBezierCurve",this.v0=e,this.v1=t,this.v2=i,this.v3=r}getPoint(e,t=new ie){let i=t,r=this.v0,s=this.v1,o=this.v2,a=this.v3;return i.set(ds(e,r.x,s.x,o.x,a.x),ds(e,r.y,s.y,o.y,a.y)),i}copy(e){return super.copy(e),this.v0.copy(e.v0),this.v1.copy(e.v1),this.v2.copy(e.v2),this.v3.copy(e.v3),this}toJSON(){let e=super.toJSON();return e.v0=this.v0.toArray(),e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e.v3=this.v3.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v0.fromArray(e.v0),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this.v3.fromArray(e.v3),this}},_h=class extends Zt{constructor(e=new U,t=new U,i=new U,r=new U){super(),this.isCubicBezierCurve3=!0,this.type="CubicBezierCurve3",this.v0=e,this.v1=t,this.v2=i,this.v3=r}getPoint(e,t=new U){let i=t,r=this.v0,s=this.v1,o=this.v2,a=this.v3;return i.set(ds(e,r.x,s.x,o.x,a.x),ds(e,r.y,s.y,o.y,a.y),ds(e,r.z,s.z,o.z,a.z)),i}copy(e){return super.copy(e),this.v0.copy(e.v0),this.v1.copy(e.v1),this.v2.copy(e.v2),this.v3.copy(e.v3),this}toJSON(){let e=super.toJSON();return e.v0=this.v0.toArray(),e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e.v3=this.v3.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v0.fromArray(e.v0),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this.v3.fromArray(e.v3),this}},Ro=class extends Zt{constructor(e=new ie,t=new ie){super(),this.isLineCurve=!0,this.type="LineCurve",this.v1=e,this.v2=t}getPoint(e,t=new ie){let i=t;return e===1?i.copy(this.v2):(i.copy(this.v2).sub(this.v1),i.multiplyScalar(e).add(this.v1)),i}getPointAt(e,t){return this.getPoint(e,t)}getTangent(e,t=new ie){return t.subVectors(this.v2,this.v1).normalize()}getTangentAt(e,t){return this.getTangent(e,t)}copy(e){return super.copy(e),this.v1.copy(e.v1),this.v2.copy(e.v2),this}toJSON(){let e=super.toJSON();return e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this}},yh=class extends Zt{constructor(e=new U,t=new U){super(),this.isLineCurve3=!0,this.type="LineCurve3",this.v1=e,this.v2=t}getPoint(e,t=new U){let i=t;return e===1?i.copy(this.v2):(i.copy(this.v2).sub(this.v1),i.multiplyScalar(e).add(this.v1)),i}getPointAt(e,t){return this.getPoint(e,t)}getTangent(e,t=new U){return t.subVectors(this.v2,this.v1).normalize()}getTangentAt(e,t){return this.getTangent(e,t)}copy(e){return super.copy(e),this.v1.copy(e.v1),this.v2.copy(e.v2),this}toJSON(){let e=super.toJSON();return e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this}},Co=class extends Zt{constructor(e=new ie,t=new ie,i=new ie){super(),this.isQuadraticBezierCurve=!0,this.type="QuadraticBezierCurve",this.v0=e,this.v1=t,this.v2=i}getPoint(e,t=new ie){let i=t,r=this.v0,s=this.v1,o=this.v2;return i.set(fs(e,r.x,s.x,o.x),fs(e,r.y,s.y,o.y)),i}copy(e){return super.copy(e),this.v0.copy(e.v0),this.v1.copy(e.v1),this.v2.copy(e.v2),this}toJSON(){let e=super.toJSON();return e.v0=this.v0.toArray(),e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v0.fromArray(e.v0),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this}},xh=class extends Zt{constructor(e=new U,t=new U,i=new U){super(),this.isQuadraticBezierCurve3=!0,this.type="QuadraticBezierCurve3",this.v0=e,this.v1=t,this.v2=i}getPoint(e,t=new U){let i=t,r=this.v0,s=this.v1,o=this.v2;return i.set(fs(e,r.x,s.x,o.x),fs(e,r.y,s.y,o.y),fs(e,r.z,s.z,o.z)),i}copy(e){return super.copy(e),this.v0.copy(e.v0),this.v1.copy(e.v1),this.v2.copy(e.v2),this}toJSON(){let e=super.toJSON();return e.v0=this.v0.toArray(),e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v0.fromArray(e.v0),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this}},Po=class extends Zt{constructor(e=[]){super(),this.isSplineCurve=!0,this.type="SplineCurve",this.points=e}getPoint(e,t=new ie){let i=t,r=this.points,s=(r.length-1)*e,o=Math.floor(s),a=s-o,c=r[o===0?o:o-1],l=r[o],u=r[o>r.length-2?r.length-1:o+1],h=r[o>r.length-3?r.length-1:o+2];return i.set(X0(a,c.x,l.x,u.x,h.x),X0(a,c.y,l.y,u.y,h.y)),i}copy(e){super.copy(e),this.points=[];for(let t=0,i=e.points.length;t<i;t++){let r=e.points[t];this.points.push(r.clone())}return this}toJSON(){let e=super.toJSON();e.points=[];for(let t=0,i=this.points.length;t<i;t++){let r=this.points[t];e.points.push(r.toArray())}return e}fromJSON(e){super.fromJSON(e),this.points=[];for(let t=0,i=e.points.length;t<i;t++){let r=e.points[t];this.points.push(new ie().fromArray(r))}return this}},Mh=Object.freeze({__proto__:null,ArcCurve:gh,CatmullRomCurve3:vh,CubicBezierCurve:wo,CubicBezierCurve3:_h,EllipseCurve:_s,LineCurve:Ro,LineCurve3:yh,QuadraticBezierCurve:Co,QuadraticBezierCurve3:xh,SplineCurve:Po}),Sh=class extends Zt{constructor(){super(),this.type="CurvePath",this.curves=[],this.autoClose=!1}add(e){this.curves.push(e)}closePath(){let e=this.curves[0].getPoint(0),t=this.curves[this.curves.length-1].getPoint(1);if(!e.equals(t)){let i=e.isVector2===!0?"LineCurve":"LineCurve3";this.curves.push(new Mh[i](t,e))}return this}getPoint(e,t){let i=e*this.getLength(),r=this.getCurveLengths(),s=0;for(;s<r.length;){if(r[s]>=i){let o=r[s]-i,a=this.curves[s],c=a.getLength(),l=c===0?0:1-o/c;return a.getPointAt(l,t)}s++}return null}getLength(){let e=this.getCurveLengths();return e[e.length-1]}updateArcLengths(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()}getCurveLengths(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;let e=[],t=0;for(let i=0,r=this.curves.length;i<r;i++)t+=this.curves[i].getLength(),e.push(t);return this.cacheLengths=e,e}getSpacedPoints(e=40){let t=[];for(let i=0;i<=e;i++)t.push(this.getPoint(i/e));return this.autoClose&&t.push(t[0]),t}getPoints(e=12){let t=[],i;for(let r=0,s=this.curves;r<s.length;r++){let o=s[r],a=o.isEllipseCurve?e*2:o.isLineCurve||o.isLineCurve3?1:o.isSplineCurve?e*o.points.length:e,c=o.getPoints(a);for(let l=0;l<c.length;l++){let u=c[l];i&&i.equals(u)||(t.push(u),i=u)}}return this.autoClose&&t.length>1&&!t[t.length-1].equals(t[0])&&t.push(t[0]),t}copy(e){super.copy(e),this.curves=[];for(let t=0,i=e.curves.length;t<i;t++){let r=e.curves[t];this.curves.push(r.clone())}return this.autoClose=e.autoClose,this}toJSON(){let e=super.toJSON();e.autoClose=this.autoClose,e.curves=[];for(let t=0,i=this.curves.length;t<i;t++){let r=this.curves[t];e.curves.push(r.toJSON())}return e}fromJSON(e){super.fromJSON(e),this.autoClose=e.autoClose,this.curves=[];for(let t=0,i=e.curves.length;t<i;t++){let r=e.curves[t];this.curves.push(new Mh[r.type]().fromJSON(r))}return this}},Rr=class extends Sh{constructor(e){super(),this.type="Path",this.currentPoint=new ie,e&&this.setFromPoints(e)}setFromPoints(e){this.moveTo(e[0].x,e[0].y);for(let t=1,i=e.length;t<i;t++)this.lineTo(e[t].x,e[t].y);return this}moveTo(e,t){return this.currentPoint.set(e,t),this}lineTo(e,t){let i=new Ro(this.currentPoint.clone(),new ie(e,t));return this.curves.push(i),this.currentPoint.set(e,t),this}quadraticCurveTo(e,t,i,r){let s=new Co(this.currentPoint.clone(),new ie(e,t),new ie(i,r));return this.curves.push(s),this.currentPoint.set(i,r),this}bezierCurveTo(e,t,i,r,s,o){let a=new wo(this.currentPoint.clone(),new ie(e,t),new ie(i,r),new ie(s,o));return this.curves.push(a),this.currentPoint.set(s,o),this}splineThru(e){let t=[this.currentPoint.clone()].concat(e),i=new Po(t);return this.curves.push(i),this.currentPoint.copy(e[e.length-1]),this}arc(e,t,i,r,s,o){let a=this.currentPoint.x,c=this.currentPoint.y;return this.absarc(e+a,t+c,i,r,s,o),this}absarc(e,t,i,r,s,o){return this.absellipse(e,t,i,i,r,s,o),this}ellipse(e,t,i,r,s,o,a,c){let l=this.currentPoint.x,u=this.currentPoint.y;return this.absellipse(e+l,t+u,i,r,s,o,a,c),this}absellipse(e,t,i,r,s,o,a,c){let l=new _s(e,t,i,r,s,o,a,c);if(this.curves.length>0){let h=l.getPoint(0);h.equals(this.currentPoint)||this.lineTo(h.x,h.y)}this.curves.push(l);let u=l.getPoint(1);return this.currentPoint.copy(u),this}copy(e){return super.copy(e),this.currentPoint.copy(e.currentPoint),this}toJSON(){let e=super.toJSON();return e.currentPoint=this.currentPoint.toArray(),e}fromJSON(e){return super.fromJSON(e),this.currentPoint.fromArray(e.currentPoint),this}};var Cr=class extends Rr{constructor(e){super(e),this.uuid=On(),this.type="Shape",this.holes=[]}getPointsHoles(e){let t=[];for(let i=0,r=this.holes.length;i<r;i++)t[i]=this.holes[i].getPoints(e);return t}extractPoints(e){return{shape:this.getPoints(e),holes:this.getPointsHoles(e)}}copy(e){super.copy(e),this.holes=[];for(let t=0,i=e.holes.length;t<i;t++){let r=e.holes[t];this.holes.push(r.clone())}return this}toJSON(){let e=super.toJSON();e.uuid=this.uuid,e.holes=[];for(let t=0,i=this.holes.length;t<i;t++){let r=this.holes[t];e.holes.push(r.toJSON())}return e}fromJSON(e){super.fromJSON(e),this.uuid=e.uuid,this.holes=[];for(let t=0,i=e.holes.length;t<i;t++){let r=e.holes[t];this.holes.push(new Rr().fromJSON(r))}return this}},dN={triangulate:function(n,e,t=2){let i=e&&e.length,r=i?e[0]*t:n.length,s=_y(n,0,r,t,!0),o=[];if(!s||s.next===s.prev)return o;let a,c,l,u,h,f,m;if(i&&(s=_N(n,e,s,t)),n.length>80*t){a=l=n[0],c=u=n[1];for(let g=t;g<r;g+=t)h=n[g],f=n[g+1],h<a&&(a=h),f<c&&(c=f),h>l&&(l=h),f>u&&(u=f);m=Math.max(l-a,u-c),m=m!==0?32767/m:0}return ys(s,o,t,a,c,m,0),o}};function _y(n,e,t,i,r){let s,o;if(r===CN(n,e,t,i)>0)for(s=e;s<t;s+=i)o=Y0(s,n[s],n[s+1],o);else for(s=t-i;s>=e;s-=i)o=Y0(s,n[s],n[s+1],o);return o&&No(o,o.next)&&(Ms(o),o=o.next),o}function Di(n,e){if(!n)return n;e||(e=n);let t=n,i;do if(i=!1,!t.steiner&&(No(t,t.next)||ot(t.prev,t,t.next)===0)){if(Ms(t),t=e=t.prev,t===t.next)break;i=!0}else t=t.next;while(i||t!==e);return e}function ys(n,e,t,i,r,s,o){if(!n)return;!o&&s&&bN(n,i,r,s);let a=n,c,l;for(;n.prev!==n.next;){if(c=n.prev,l=n.next,s?mN(n,i,r,s):pN(n)){e.push(c.i/t|0),e.push(n.i/t|0),e.push(l.i/t|0),Ms(n),n=l.next,a=l.next;continue}if(n=l,n===a){o?o===1?(n=gN(Di(n),e,t),ys(n,e,t,i,r,s,2)):o===2&&vN(n,e,t,i,r,s):ys(Di(n),e,t,i,r,s,1);break}}}function pN(n){let e=n.prev,t=n,i=n.next;if(ot(e,t,i)>=0)return!1;let r=e.x,s=t.x,o=i.x,a=e.y,c=t.y,l=i.y,u=r<s?r<o?r:o:s<o?s:o,h=a<c?a<l?a:l:c<l?c:l,f=r>s?r>o?r:o:s>o?s:o,m=a>c?a>l?a:l:c>l?c:l,g=i.next;for(;g!==e;){if(g.x>=u&&g.x<=f&&g.y>=h&&g.y<=m&&xr(r,a,s,c,o,l,g.x,g.y)&&ot(g.prev,g,g.next)>=0)return!1;g=g.next}return!0}function mN(n,e,t,i){let r=n.prev,s=n,o=n.next;if(ot(r,s,o)>=0)return!1;let a=r.x,c=s.x,l=o.x,u=r.y,h=s.y,f=o.y,m=a<c?a<l?a:l:c<l?c:l,g=u<h?u<f?u:f:h<f?h:f,_=a>c?a>l?a:l:c>l?c:l,d=u>h?u>f?u:f:h>f?h:f,p=bh(m,g,e,t,i),b=bh(_,d,e,t,i),v=n.prevZ,E=n.nextZ;for(;v&&v.z>=p&&E&&E.z<=b;){if(v.x>=m&&v.x<=_&&v.y>=g&&v.y<=d&&v!==r&&v!==o&&xr(a,u,c,h,l,f,v.x,v.y)&&ot(v.prev,v,v.next)>=0||(v=v.prevZ,E.x>=m&&E.x<=_&&E.y>=g&&E.y<=d&&E!==r&&E!==o&&xr(a,u,c,h,l,f,E.x,E.y)&&ot(E.prev,E,E.next)>=0))return!1;E=E.nextZ}for(;v&&v.z>=p;){if(v.x>=m&&v.x<=_&&v.y>=g&&v.y<=d&&v!==r&&v!==o&&xr(a,u,c,h,l,f,v.x,v.y)&&ot(v.prev,v,v.next)>=0)return!1;v=v.prevZ}for(;E&&E.z<=b;){if(E.x>=m&&E.x<=_&&E.y>=g&&E.y<=d&&E!==r&&E!==o&&xr(a,u,c,h,l,f,E.x,E.y)&&ot(E.prev,E,E.next)>=0)return!1;E=E.nextZ}return!0}function gN(n,e,t){let i=n;do{let r=i.prev,s=i.next.next;!No(r,s)&&yy(r,i,i.next,s)&&xs(r,s)&&xs(s,r)&&(e.push(r.i/t|0),e.push(i.i/t|0),e.push(s.i/t|0),Ms(i),Ms(i.next),i=n=s),i=i.next}while(i!==n);return Di(i)}function vN(n,e,t,i,r,s){let o=n;do{let a=o.next.next;for(;a!==o.prev;){if(o.i!==a.i&&TN(o,a)){let c=xy(o,a);o=Di(o,o.next),c=Di(c,c.next),ys(o,e,t,i,r,s,0),ys(c,e,t,i,r,s,0);return}a=a.next}o=o.next}while(o!==n)}function _N(n,e,t,i){let r=[],s,o,a,c,l;for(s=0,o=e.length;s<o;s++)a=e[s]*i,c=s<o-1?e[s+1]*i:n.length,l=_y(n,a,c,i,!1),l===l.next&&(l.steiner=!0),r.push(AN(l));for(r.sort(yN),s=0;s<r.length;s++)t=xN(r[s],t);return t}function yN(n,e){return n.x-e.x}function xN(n,e){let t=MN(n,e);if(!t)return e;let i=xy(t,n);return Di(i,i.next),Di(t,t.next)}function MN(n,e){let t=e,i=-1/0,r,s=n.x,o=n.y;do{if(o<=t.y&&o>=t.next.y&&t.next.y!==t.y){let f=t.x+(o-t.y)*(t.next.x-t.x)/(t.next.y-t.y);if(f<=s&&f>i&&(i=f,r=t.x<t.next.x?t:t.next,f===s))return r}t=t.next}while(t!==e);if(!r)return null;let a=r,c=r.x,l=r.y,u=1/0,h;t=r;do s>=t.x&&t.x>=c&&s!==t.x&&xr(o<l?s:i,o,c,l,o<l?i:s,o,t.x,t.y)&&(h=Math.abs(o-t.y)/(s-t.x),xs(t,n)&&(h<u||h===u&&(t.x>r.x||t.x===r.x&&SN(r,t)))&&(r=t,u=h)),t=t.next;while(t!==a);return r}function SN(n,e){return ot(n.prev,n,e.prev)<0&&ot(e.next,n,n.next)<0}function bN(n,e,t,i){let r=n;do r.z===0&&(r.z=bh(r.x,r.y,e,t,i)),r.prevZ=r.prev,r.nextZ=r.next,r=r.next;while(r!==n);r.prevZ.nextZ=null,r.prevZ=null,EN(r)}function EN(n){let e,t,i,r,s,o,a,c,l=1;do{for(t=n,n=null,s=null,o=0;t;){for(o++,i=t,a=0,e=0;e<l&&(a++,i=i.nextZ,!!i);e++);for(c=l;a>0||c>0&&i;)a!==0&&(c===0||!i||t.z<=i.z)?(r=t,t=t.nextZ,a--):(r=i,i=i.nextZ,c--),s?s.nextZ=r:n=r,r.prevZ=s,s=r;t=i}s.nextZ=null,l*=2}while(o>1);return n}function bh(n,e,t,i,r){return n=(n-t)*r|0,e=(e-i)*r|0,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,n|e<<1}function AN(n){let e=n,t=n;do(e.x<t.x||e.x===t.x&&e.y<t.y)&&(t=e),e=e.next;while(e!==n);return t}function xr(n,e,t,i,r,s,o,a){return(r-o)*(e-a)>=(n-o)*(s-a)&&(n-o)*(i-a)>=(t-o)*(e-a)&&(t-o)*(s-a)>=(r-o)*(i-a)}function TN(n,e){return n.next.i!==e.i&&n.prev.i!==e.i&&!wN(n,e)&&(xs(n,e)&&xs(e,n)&&RN(n,e)&&(ot(n.prev,n,e.prev)||ot(n,e.prev,e))||No(n,e)&&ot(n.prev,n,n.next)>0&&ot(e.prev,e,e.next)>0)}function ot(n,e,t){return(e.y-n.y)*(t.x-e.x)-(e.x-n.x)*(t.y-e.y)}function No(n,e){return n.x===e.x&&n.y===e.y}function yy(n,e,t,i){let r=no(ot(n,e,t)),s=no(ot(n,e,i)),o=no(ot(t,i,n)),a=no(ot(t,i,e));return!!(r!==s&&o!==a||r===0&&to(n,t,e)||s===0&&to(n,i,e)||o===0&&to(t,n,i)||a===0&&to(t,e,i))}function to(n,e,t){return e.x<=Math.max(n.x,t.x)&&e.x>=Math.min(n.x,t.x)&&e.y<=Math.max(n.y,t.y)&&e.y>=Math.min(n.y,t.y)}function no(n){return n>0?1:n<0?-1:0}function wN(n,e){let t=n;do{if(t.i!==n.i&&t.next.i!==n.i&&t.i!==e.i&&t.next.i!==e.i&&yy(t,t.next,n,e))return!0;t=t.next}while(t!==n);return!1}function xs(n,e){return ot(n.prev,n,n.next)<0?ot(n,e,n.next)>=0&&ot(n,n.prev,e)>=0:ot(n,e,n.prev)<0||ot(n,n.next,e)<0}function RN(n,e){let t=n,i=!1,r=(n.x+e.x)/2,s=(n.y+e.y)/2;do t.y>s!=t.next.y>s&&t.next.y!==t.y&&r<(t.next.x-t.x)*(s-t.y)/(t.next.y-t.y)+t.x&&(i=!i),t=t.next;while(t!==n);return i}function xy(n,e){let t=new Eh(n.i,n.x,n.y),i=new Eh(e.i,e.x,e.y),r=n.next,s=e.prev;return n.next=e,e.prev=n,t.next=r,r.prev=t,i.next=t,t.prev=i,s.next=i,i.prev=s,i}function Y0(n,e,t,i){let r=new Eh(n,e,t);return i?(r.next=i.next,r.prev=i,i.next.prev=r,i.next=r):(r.prev=r,r.next=r),r}function Ms(n){n.next.prev=n.prev,n.prev.next=n.next,n.prevZ&&(n.prevZ.nextZ=n.nextZ),n.nextZ&&(n.nextZ.prevZ=n.prevZ)}function Eh(n,e,t){this.i=n,this.x=e,this.y=t,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}function CN(n,e,t,i){let r=0;for(let s=e,o=t-i;s<t;s+=i)r+=(n[o]-n[s])*(n[s+1]+n[o+1]),o=s;return r}var ri=class n{static area(e){let t=e.length,i=0;for(let r=t-1,s=0;s<t;r=s++)i+=e[r].x*e[s].y-e[s].x*e[r].y;return i*.5}static isClockWise(e){return n.area(e)<0}static triangulateShape(e,t){let i=[],r=[],s=[];$0(e),Z0(i,e);let o=e.length;t.forEach($0);for(let c=0;c<t.length;c++)r.push(o),o+=t[c].length,Z0(i,t[c]);let a=dN.triangulate(i,r);for(let c=0;c<a.length;c+=3)s.push(a.slice(c,c+3));return s}};function $0(n){let e=n.length;e>2&&n[e-1].equals(n[0])&&n.pop()}function Z0(n,e){for(let t=0;t<e.length;t++)n.push(e[t].x),n.push(e[t].y)}var Pr=class n extends Ot{constructor(e=new Cr([new ie(.5,.5),new ie(-.5,.5),new ie(-.5,-.5),new ie(.5,-.5)]),t={}){super(),this.type="ExtrudeGeometry",this.parameters={shapes:e,options:t},e=Array.isArray(e)?e:[e];let i=this,r=[],s=[];for(let a=0,c=e.length;a<c;a++){let l=e[a];o(l)}this.setAttribute("position",new xt(r,3)),this.setAttribute("uv",new xt(s,2)),this.computeVertexNormals();function o(a){let c=[],l=t.curveSegments!==void 0?t.curveSegments:12,u=t.steps!==void 0?t.steps:1,h=t.depth!==void 0?t.depth:1,f=t.bevelEnabled!==void 0?t.bevelEnabled:!0,m=t.bevelThickness!==void 0?t.bevelThickness:.2,g=t.bevelSize!==void 0?t.bevelSize:m-.1,_=t.bevelOffset!==void 0?t.bevelOffset:0,d=t.bevelSegments!==void 0?t.bevelSegments:3,p=t.extrudePath,b=t.UVGenerator!==void 0?t.UVGenerator:PN,v,E=!1,I,R,w,B;p&&(v=p.getSpacedPoints(u),E=!0,f=!1,I=p.computeFrenetFrames(u,!1),R=new U,w=new U,B=new U),f||(d=0,m=0,g=0,_=0);let j=a.extractPoints(l),x=j.shape,A=j.holes;if(!ri.isClockWise(x)){x=x.reverse();for(let T=0,oe=A.length;T<oe;T++){let Y=A[T];ri.isClockWise(Y)&&(A[T]=Y.reverse())}}let K=ri.triangulateShape(x,A),C=x;for(let T=0,oe=A.length;T<oe;T++){let Y=A[T];x=x.concat(Y)}function W(T,oe,Y){return oe||console.error("THREE.ExtrudeGeometry: vec does not exist"),T.clone().addScaledVector(oe,Y)}let G=x.length,$=K.length;function q(T,oe,Y){let se,Z,_e,pe=T.x-oe.x,xe=T.y-oe.y,Ge=Y.x-T.x,S=Y.y-T.y,y=pe*pe+xe*xe,V=pe*S-xe*Ge;if(Math.abs(V)>Number.EPSILON){let H=Math.sqrt(y),ee=Math.sqrt(Ge*Ge+S*S),J=oe.x-xe/H,Le=oe.y+pe/H,Re=Y.x-S/ee,le=Y.y+Ge/ee,he=((Re-J)*S-(le-Le)*Ge)/(pe*S-xe*Ge);se=J+pe*he-T.x,Z=Le+xe*he-T.y;let Ue=se*se+Z*Z;if(Ue<=2)return new ie(se,Z);_e=Math.sqrt(Ue/2)}else{let H=!1;pe>Number.EPSILON?Ge>Number.EPSILON&&(H=!0):pe<-Number.EPSILON?Ge<-Number.EPSILON&&(H=!0):Math.sign(xe)===Math.sign(S)&&(H=!0),H?(se=-xe,Z=pe,_e=Math.sqrt(y)):(se=pe,Z=xe,_e=Math.sqrt(y/2))}return new ie(se/_e,Z/_e)}let X=[];for(let T=0,oe=C.length,Y=oe-1,se=T+1;T<oe;T++,Y++,se++)Y===oe&&(Y=0),se===oe&&(se=0),X[T]=q(C[T],C[Y],C[se]);let ne=[],te,ve=X.concat();for(let T=0,oe=A.length;T<oe;T++){let Y=A[T];te=[];for(let se=0,Z=Y.length,_e=Z-1,pe=se+1;se<Z;se++,_e++,pe++)_e===Z&&(_e=0),pe===Z&&(pe=0),te[se]=q(Y[se],Y[_e],Y[pe]);ne.push(te),ve=ve.concat(te)}for(let T=0;T<d;T++){let oe=T/d,Y=m*Math.cos(oe*Math.PI/2),se=g*Math.sin(oe*Math.PI/2)+_;for(let Z=0,_e=C.length;Z<_e;Z++){let pe=W(C[Z],X[Z],se);Ae(pe.x,pe.y,-Y)}for(let Z=0,_e=A.length;Z<_e;Z++){let pe=A[Z];te=ne[Z];for(let xe=0,Ge=pe.length;xe<Ge;xe++){let S=W(pe[xe],te[xe],se);Ae(S.x,S.y,-Y)}}}let Ie=g+_;for(let T=0;T<G;T++){let oe=f?W(x[T],ve[T],Ie):x[T];E?(w.copy(I.normals[0]).multiplyScalar(oe.x),R.copy(I.binormals[0]).multiplyScalar(oe.y),B.copy(v[0]).add(w).add(R),Ae(B.x,B.y,B.z)):Ae(oe.x,oe.y,0)}for(let T=1;T<=u;T++)for(let oe=0;oe<G;oe++){let Y=f?W(x[oe],ve[oe],Ie):x[oe];E?(w.copy(I.normals[T]).multiplyScalar(Y.x),R.copy(I.binormals[T]).multiplyScalar(Y.y),B.copy(v[T]).add(w).add(R),Ae(B.x,B.y,B.z)):Ae(Y.x,Y.y,h/u*T)}for(let T=d-1;T>=0;T--){let oe=T/d,Y=m*Math.cos(oe*Math.PI/2),se=g*Math.sin(oe*Math.PI/2)+_;for(let Z=0,_e=C.length;Z<_e;Z++){let pe=W(C[Z],X[Z],se);Ae(pe.x,pe.y,h+Y)}for(let Z=0,_e=A.length;Z<_e;Z++){let pe=A[Z];te=ne[Z];for(let xe=0,Ge=pe.length;xe<Ge;xe++){let S=W(pe[xe],te[xe],se);E?Ae(S.x,S.y+v[u-1].y,v[u-1].x+Y):Ae(S.x,S.y,h+Y)}}}k(),Q();function k(){let T=r.length/3;if(f){let oe=0,Y=G*oe;for(let se=0;se<$;se++){let Z=K[se];Me(Z[2]+Y,Z[1]+Y,Z[0]+Y)}oe=u+d*2,Y=G*oe;for(let se=0;se<$;se++){let Z=K[se];Me(Z[0]+Y,Z[1]+Y,Z[2]+Y)}}else{for(let oe=0;oe<$;oe++){let Y=K[oe];Me(Y[2],Y[1],Y[0])}for(let oe=0;oe<$;oe++){let Y=K[oe];Me(Y[0]+G*u,Y[1]+G*u,Y[2]+G*u)}}i.addGroup(T,r.length/3-T,0)}function Q(){let T=r.length/3,oe=0;me(C,oe),oe+=C.length;for(let Y=0,se=A.length;Y<se;Y++){let Z=A[Y];me(Z,oe),oe+=Z.length}i.addGroup(T,r.length/3-T,1)}function me(T,oe){let Y=T.length;for(;--Y>=0;){let se=Y,Z=Y-1;Z<0&&(Z=T.length-1);for(let _e=0,pe=u+d*2;_e<pe;_e++){let xe=G*_e,Ge=G*(_e+1),S=oe+se+xe,y=oe+Z+xe,V=oe+Z+Ge,H=oe+se+Ge;ye(S,y,V,H)}}}function Ae(T,oe,Y){c.push(T),c.push(oe),c.push(Y)}function Me(T,oe,Y){ke(T),ke(oe),ke(Y);let se=r.length/3,Z=b.generateTopUV(i,r,se-3,se-2,se-1);Te(Z[0]),Te(Z[1]),Te(Z[2])}function ye(T,oe,Y,se){ke(T),ke(oe),ke(se),ke(oe),ke(Y),ke(se);let Z=r.length/3,_e=b.generateSideWallUV(i,r,Z-6,Z-3,Z-2,Z-1);Te(_e[0]),Te(_e[1]),Te(_e[3]),Te(_e[1]),Te(_e[2]),Te(_e[3])}function ke(T){r.push(c[T*3+0]),r.push(c[T*3+1]),r.push(c[T*3+2])}function Te(T){s.push(T.x),s.push(T.y)}}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){let e=super.toJSON(),t=this.parameters.shapes,i=this.parameters.options;return IN(t,i,e)}static fromJSON(e,t){let i=[];for(let s=0,o=e.shapes.length;s<o;s++){let a=t[e.shapes[s]];i.push(a)}let r=e.options.extrudePath;return r!==void 0&&(e.options.extrudePath=new Mh[r.type]().fromJSON(r)),new n(i,e.options)}},PN={generateTopUV:function(n,e,t,i,r){let s=e[t*3],o=e[t*3+1],a=e[i*3],c=e[i*3+1],l=e[r*3],u=e[r*3+1];return[new ie(s,o),new ie(a,c),new ie(l,u)]},generateSideWallUV:function(n,e,t,i,r,s){let o=e[t*3],a=e[t*3+1],c=e[t*3+2],l=e[i*3],u=e[i*3+1],h=e[i*3+2],f=e[r*3],m=e[r*3+1],g=e[r*3+2],_=e[s*3],d=e[s*3+1],p=e[s*3+2];return Math.abs(a-u)<Math.abs(o-l)?[new ie(o,1-c),new ie(l,1-h),new ie(f,1-g),new ie(_,1-p)]:[new ie(a,1-c),new ie(u,1-h),new ie(m,1-g),new ie(d,1-p)]}};function IN(n,e,t){if(t.shapes=[],Array.isArray(n))for(let i=0,r=n.length;i<r;i++){let s=n[i];t.shapes.push(s.uuid)}else t.shapes.push(n.uuid);return t.options=Object.assign({},e),e.extrudePath!==void 0&&(t.options.extrudePath=e.extrudePath.toJSON()),t}var Ss=class n extends Ot{constructor(e=new Cr([new ie(0,.5),new ie(-.5,-.5),new ie(.5,-.5)]),t=12){super(),this.type="ShapeGeometry",this.parameters={shapes:e,curveSegments:t};let i=[],r=[],s=[],o=[],a=0,c=0;if(Array.isArray(e)===!1)l(e);else for(let u=0;u<e.length;u++)l(e[u]),this.addGroup(a,c,u),a+=c,c=0;this.setIndex(i),this.setAttribute("position",new xt(r,3)),this.setAttribute("normal",new xt(s,3)),this.setAttribute("uv",new xt(o,2));function l(u){let h=r.length/3,f=u.extractPoints(t),m=f.shape,g=f.holes;ri.isClockWise(m)===!1&&(m=m.reverse());for(let d=0,p=g.length;d<p;d++){let b=g[d];ri.isClockWise(b)===!0&&(g[d]=b.reverse())}let _=ri.triangulateShape(m,g);for(let d=0,p=g.length;d<p;d++){let b=g[d];m=m.concat(b)}for(let d=0,p=m.length;d<p;d++){let b=m[d];r.push(b.x,b.y,0),s.push(0,0,1),o.push(b.x,b.y)}for(let d=0,p=_.length;d<p;d++){let b=_[d],v=b[0]+h,E=b[1]+h,I=b[2]+h;i.push(v,E,I),c+=3}}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){let e=super.toJSON(),t=this.parameters.shapes;return LN(t,e)}static fromJSON(e,t){let i=[];for(let r=0,s=e.shapes.length;r<s;r++){let o=t[e.shapes[r]];i.push(o)}return new n(i,e.curveSegments)}};function LN(n,e){if(e.shapes=[],Array.isArray(n))for(let t=0,i=n.length;t<i;t++){let r=n[t];e.shapes.push(r.uuid)}else e.shapes.push(n.uuid);return e}function io(n,e,t){return!n||!t&&n.constructor===e?n:typeof e.BYTES_PER_ELEMENT=="number"?new e(n):Array.prototype.slice.call(n)}function UN(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)}var Ir=class{constructor(e,t,i,r){this.parameterPositions=e,this._cachedIndex=0,this.resultBuffer=r!==void 0?r:new t.constructor(i),this.sampleValues=t,this.valueSize=i,this.settings=null,this.DefaultSettings_={}}evaluate(e){let t=this.parameterPositions,i=this._cachedIndex,r=t[i],s=t[i-1];n:{e:{let o;t:{i:if(!(e<r)){for(let a=i+2;;){if(r===void 0){if(e<s)break i;return i=t.length,this._cachedIndex=i,this.copySampleValue_(i-1)}if(i===a)break;if(s=r,r=t[++i],e<r)break e}o=t.length;break t}if(!(e>=s)){let a=t[1];e<a&&(i=2,s=a);for(let c=i-2;;){if(s===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(i===c)break;if(r=s,s=t[--i-1],e>=s)break e}o=i,i=0;break t}break n}for(;i<o;){let a=i+o>>>1;e<t[a]?o=a:i=a+1}if(r=t[i],s=t[i-1],s===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(r===void 0)return i=t.length,this._cachedIndex=i,this.copySampleValue_(i-1)}this._cachedIndex=i,this.intervalChanged_(i,s,r)}return this.interpolate_(i,s,e,r)}getSettings_(){return this.settings||this.DefaultSettings_}copySampleValue_(e){let t=this.resultBuffer,i=this.sampleValues,r=this.valueSize,s=e*r;for(let o=0;o!==r;++o)t[o]=i[s+o];return t}interpolate_(){throw new Error("call to abstract method")}intervalChanged_(){}},Ah=class extends Ir{constructor(e,t,i,r){super(e,t,i,r),this._weightPrev=-0,this._offsetPrev=-0,this._weightNext=-0,this._offsetNext=-0,this.DefaultSettings_={endingStart:Q_,endingEnd:Q_}}intervalChanged_(e,t,i){let r=this.parameterPositions,s=e-2,o=e+1,a=r[s],c=r[o];if(a===void 0)switch(this.getSettings_().endingStart){case e0:s=e,a=2*t-i;break;case t0:s=r.length-2,a=t+r[s]-r[s+1];break;default:s=e,a=i}if(c===void 0)switch(this.getSettings_().endingEnd){case e0:o=e,c=2*i-t;break;case t0:o=1,c=i+r[1]-r[0];break;default:o=e-1,c=t}let l=(i-t)*.5,u=this.valueSize;this._weightPrev=l/(t-a),this._weightNext=l/(c-i),this._offsetPrev=s*u,this._offsetNext=o*u}interpolate_(e,t,i,r){let s=this.resultBuffer,o=this.sampleValues,a=this.valueSize,c=e*a,l=c-a,u=this._offsetPrev,h=this._offsetNext,f=this._weightPrev,m=this._weightNext,g=(i-t)/(r-t),_=g*g,d=_*g,p=-f*d+2*f*_-f*g,b=(1+f)*d+(-1.5-2*f)*_+(-.5+f)*g+1,v=(-1-m)*d+(1.5+m)*_+.5*g,E=m*d-m*_;for(let I=0;I!==a;++I)s[I]=p*o[u+I]+b*o[l+I]+v*o[c+I]+E*o[h+I];return s}},Th=class extends Ir{constructor(e,t,i,r){super(e,t,i,r)}interpolate_(e,t,i,r){let s=this.resultBuffer,o=this.sampleValues,a=this.valueSize,c=e*a,l=c-a,u=(i-t)/(r-t),h=1-u;for(let f=0;f!==a;++f)s[f]=o[l+f]*h+o[c+f]*u;return s}},wh=class extends Ir{constructor(e,t,i,r){super(e,t,i,r)}interpolate_(e){return this.copySampleValue_(e-1)}},ln=class{constructor(e,t,i,r){if(e===void 0)throw new Error("THREE.KeyframeTrack: track name is undefined");if(t===void 0||t.length===0)throw new Error("THREE.KeyframeTrack: no keyframes in track named "+e);this.name=e,this.times=io(t,this.TimeBufferType),this.values=io(i,this.ValueBufferType),this.setInterpolation(r||this.DefaultInterpolation)}static toJSON(e){let t=e.constructor,i;if(t.toJSON!==this.toJSON)i=t.toJSON(e);else{i={name:e.name,times:io(e.times,Array),values:io(e.values,Array)};let r=e.getInterpolation();r!==e.DefaultInterpolation&&(i.interpolation=r)}return i.type=e.ValueTypeName,i}InterpolantFactoryMethodDiscrete(e){return new wh(this.times,this.values,this.getValueSize(),e)}InterpolantFactoryMethodLinear(e){return new Th(this.times,this.values,this.getValueSize(),e)}InterpolantFactoryMethodSmooth(e){return new Ah(this.times,this.values,this.getValueSize(),e)}setInterpolation(e){let t;switch(e){case so:t=this.InterpolantFactoryMethodDiscrete;break;case ao:t=this.InterpolantFactoryMethodLinear;break;case cu:t=this.InterpolantFactoryMethodSmooth;break}if(t===void 0){let i="unsupported interpolation for "+this.ValueTypeName+" keyframe track named "+this.name;if(this.createInterpolant===void 0)if(e!==this.DefaultInterpolation)this.setInterpolation(this.DefaultInterpolation);else throw new Error(i);return console.warn("THREE.KeyframeTrack:",i),this}return this.createInterpolant=t,this}getInterpolation(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return so;case this.InterpolantFactoryMethodLinear:return ao;case this.InterpolantFactoryMethodSmooth:return cu}}getValueSize(){return this.values.length/this.times.length}shift(e){if(e!==0){let t=this.times;for(let i=0,r=t.length;i!==r;++i)t[i]+=e}return this}scale(e){if(e!==1){let t=this.times;for(let i=0,r=t.length;i!==r;++i)t[i]*=e}return this}trim(e,t){let i=this.times,r=i.length,s=0,o=r-1;for(;s!==r&&i[s]<e;)++s;for(;o!==-1&&i[o]>t;)--o;if(++o,s!==0||o!==r){s>=o&&(o=Math.max(o,1),s=o-1);let a=this.getValueSize();this.times=i.slice(s,o),this.values=this.values.slice(s*a,o*a)}return this}validate(){let e=!0,t=this.getValueSize();t-Math.floor(t)!==0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),e=!1);let i=this.times,r=this.values,s=i.length;s===0&&(console.error("THREE.KeyframeTrack: Track is empty.",this),e=!1);let o=null;for(let a=0;a!==s;a++){let c=i[a];if(typeof c=="number"&&isNaN(c)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,a,c),e=!1;break}if(o!==null&&o>c){console.error("THREE.KeyframeTrack: Out of order keys.",this,a,c,o),e=!1;break}o=c}if(r!==void 0&&UN(r))for(let a=0,c=r.length;a!==c;++a){let l=r[a];if(isNaN(l)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,a,l),e=!1;break}}return e}optimize(){let e=this.times.slice(),t=this.values.slice(),i=this.getValueSize(),r=this.getInterpolation()===cu,s=e.length-1,o=1;for(let a=1;a<s;++a){let c=!1,l=e[a],u=e[a+1];if(l!==u&&(a!==1||l!==e[0]))if(r)c=!0;else{let h=a*i,f=h-i,m=h+i;for(let g=0;g!==i;++g){let _=t[h+g];if(_!==t[f+g]||_!==t[m+g]){c=!0;break}}}if(c){if(a!==o){e[o]=e[a];let h=a*i,f=o*i;for(let m=0;m!==i;++m)t[f+m]=t[h+m]}++o}}if(s>0){e[o]=e[s];for(let a=s*i,c=o*i,l=0;l!==i;++l)t[c+l]=t[a+l];++o}return o!==e.length?(this.times=e.slice(0,o),this.values=t.slice(0,o*i)):(this.times=e,this.values=t),this}clone(){let e=this.times.slice(),t=this.values.slice(),i=this.constructor,r=new i(this.name,e,t);return r.createInterpolant=this.createInterpolant,r}};ln.prototype.TimeBufferType=Float32Array;ln.prototype.ValueBufferType=Float32Array;ln.prototype.DefaultInterpolation=ao;var Oi=class extends ln{};Oi.prototype.ValueTypeName="bool";Oi.prototype.ValueBufferType=Array;Oi.prototype.DefaultInterpolation=so;Oi.prototype.InterpolantFactoryMethodLinear=void 0;Oi.prototype.InterpolantFactoryMethodSmooth=void 0;var Rh=class extends ln{};Rh.prototype.ValueTypeName="color";var Ch=class extends ln{};Ch.prototype.ValueTypeName="number";var Ph=class extends Ir{constructor(e,t,i,r){super(e,t,i,r)}interpolate_(e,t,i,r){let s=this.resultBuffer,o=this.sampleValues,a=this.valueSize,c=(i-t)/(r-t),l=e*a;for(let u=l+a;l!==u;l+=4)oi.slerpFlat(s,0,o,l-a,o,l,c);return s}},bs=class extends ln{InterpolantFactoryMethodLinear(e){return new Ph(this.times,this.values,this.getValueSize(),e)}};bs.prototype.ValueTypeName="quaternion";bs.prototype.DefaultInterpolation=ao;bs.prototype.InterpolantFactoryMethodSmooth=void 0;var Fi=class extends ln{};Fi.prototype.ValueTypeName="string";Fi.prototype.ValueBufferType=Array;Fi.prototype.DefaultInterpolation=so;Fi.prototype.InterpolantFactoryMethodLinear=void 0;Fi.prototype.InterpolantFactoryMethodSmooth=void 0;var Ih=class extends ln{};Ih.prototype.ValueTypeName="vector";var Lh=class{constructor(e,t,i){let r=this,s=!1,o=0,a=0,c,l=[];this.onStart=void 0,this.onLoad=e,this.onProgress=t,this.onError=i,this.itemStart=function(u){a++,s===!1&&r.onStart!==void 0&&r.onStart(u,o,a),s=!0},this.itemEnd=function(u){o++,r.onProgress!==void 0&&r.onProgress(u,o,a),o===a&&(s=!1,r.onLoad!==void 0&&r.onLoad())},this.itemError=function(u){r.onError!==void 0&&r.onError(u)},this.resolveURL=function(u){return c?c(u):u},this.setURLModifier=function(u){return c=u,this},this.addHandler=function(u,h){return l.push(u,h),this},this.removeHandler=function(u){let h=l.indexOf(u);return h!==-1&&l.splice(h,2),this},this.getHandler=function(u){for(let h=0,f=l.length;h<f;h+=2){let m=l[h],g=l[h+1];if(m.global&&(m.lastIndex=0),m.test(u))return g}return null}}},NN=new Lh,Uh=class{constructor(e){this.manager=e!==void 0?e:NN,this.crossOrigin="anonymous",this.withCredentials=!1,this.path="",this.resourcePath="",this.requestHeader={}}load(){}loadAsync(e,t){let i=this;return new Promise(function(r,s){i.load(e,r,t,s)})}parse(){}setCrossOrigin(e){return this.crossOrigin=e,this}setWithCredentials(e){return this.withCredentials=e,this}setPath(e){return this.path=e,this}setResourcePath(e){return this.resourcePath=e,this}setRequestHeader(e){return this.requestHeader=e,this}};Uh.DEFAULT_MATERIAL_NAME="__DEFAULT";var kh="\\\\[\\\\]\\\\.:\\\\/",DN=new RegExp("["+kh+"]","g"),Vh="[^"+kh+"]",ON="[^"+kh.replace("\\\\.","")+"]",FN=/((?:WC+[\\/:])*)/.source.replace("WC",Vh),BN=/(WCOD+)?/.source.replace("WCOD",ON),zN=/(?:\\.(WC+)(?:\\[(.+)\\])?)?/.source.replace("WC",Vh),kN=/\\.(WC+)(?:\\[(.+)\\])?/.source.replace("WC",Vh),VN=new RegExp("^"+FN+BN+zN+kN+"$"),GN=["material","materials","bones","map"],Nh=class{constructor(e,t,i){let r=i||it.parseTrackName(t);this._targetGroup=e,this._bindings=e.subscribe_(t,r)}getValue(e,t){this.bind();let i=this._targetGroup.nCachedObjects_,r=this._bindings[i];r!==void 0&&r.getValue(e,t)}setValue(e,t){let i=this._bindings;for(let r=this._targetGroup.nCachedObjects_,s=i.length;r!==s;++r)i[r].setValue(e,t)}bind(){let e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,i=e.length;t!==i;++t)e[t].bind()}unbind(){let e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,i=e.length;t!==i;++t)e[t].unbind()}},it=class n{constructor(e,t,i){this.path=t,this.parsedPath=i||n.parseTrackName(t),this.node=n.findNode(e,this.parsedPath.nodeName),this.rootNode=e,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(e,t,i){return e&&e.isAnimationObjectGroup?new n.Composite(e,t,i):new n(e,t,i)}static sanitizeNodeName(e){return e.replace(/\\s/g,"_").replace(DN,"")}static parseTrackName(e){let t=VN.exec(e);if(t===null)throw new Error("PropertyBinding: Cannot parse trackName: "+e);let i={nodeName:t[2],objectName:t[3],objectIndex:t[4],propertyName:t[5],propertyIndex:t[6]},r=i.nodeName&&i.nodeName.lastIndexOf(".");if(r!==void 0&&r!==-1){let s=i.nodeName.substring(r+1);GN.indexOf(s)!==-1&&(i.nodeName=i.nodeName.substring(0,r),i.objectName=s)}if(i.propertyName===null||i.propertyName.length===0)throw new Error("PropertyBinding: can not parse propertyName from trackName: "+e);return i}static findNode(e,t){if(t===void 0||t===""||t==="."||t===-1||t===e.name||t===e.uuid)return e;if(e.skeleton){let i=e.skeleton.getBoneByName(t);if(i!==void 0)return i}if(e.children){let i=function(s){for(let o=0;o<s.length;o++){let a=s[o];if(a.name===t||a.uuid===t)return a;let c=i(a.children);if(c)return c}return null},r=i(e.children);if(r)return r}return null}_getValue_unavailable(){}_setValue_unavailable(){}_getValue_direct(e,t){e[t]=this.targetObject[this.propertyName]}_getValue_array(e,t){let i=this.resolvedProperty;for(let r=0,s=i.length;r!==s;++r)e[t++]=i[r]}_getValue_arrayElement(e,t){e[t]=this.resolvedProperty[this.propertyIndex]}_getValue_toArray(e,t){this.resolvedProperty.toArray(e,t)}_setValue_direct(e,t){this.targetObject[this.propertyName]=e[t]}_setValue_direct_setNeedsUpdate(e,t){this.targetObject[this.propertyName]=e[t],this.targetObject.needsUpdate=!0}_setValue_direct_setMatrixWorldNeedsUpdate(e,t){this.targetObject[this.propertyName]=e[t],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_array(e,t){let i=this.resolvedProperty;for(let r=0,s=i.length;r!==s;++r)i[r]=e[t++]}_setValue_array_setNeedsUpdate(e,t){let i=this.resolvedProperty;for(let r=0,s=i.length;r!==s;++r)i[r]=e[t++];this.targetObject.needsUpdate=!0}_setValue_array_setMatrixWorldNeedsUpdate(e,t){let i=this.resolvedProperty;for(let r=0,s=i.length;r!==s;++r)i[r]=e[t++];this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_arrayElement(e,t){this.resolvedProperty[this.propertyIndex]=e[t]}_setValue_arrayElement_setNeedsUpdate(e,t){this.resolvedProperty[this.propertyIndex]=e[t],this.targetObject.needsUpdate=!0}_setValue_arrayElement_setMatrixWorldNeedsUpdate(e,t){this.resolvedProperty[this.propertyIndex]=e[t],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_fromArray(e,t){this.resolvedProperty.fromArray(e,t)}_setValue_fromArray_setNeedsUpdate(e,t){this.resolvedProperty.fromArray(e,t),this.targetObject.needsUpdate=!0}_setValue_fromArray_setMatrixWorldNeedsUpdate(e,t){this.resolvedProperty.fromArray(e,t),this.targetObject.matrixWorldNeedsUpdate=!0}_getValue_unbound(e,t){this.bind(),this.getValue(e,t)}_setValue_unbound(e,t){this.bind(),this.setValue(e,t)}bind(){let e=this.node,t=this.parsedPath,i=t.objectName,r=t.propertyName,s=t.propertyIndex;if(e||(e=n.findNode(this.rootNode,t.nodeName),this.node=e),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,!e){console.warn("THREE.PropertyBinding: No target node found for track: "+this.path+".");return}if(i){let l=t.objectIndex;switch(i){case"materials":if(!e.material){console.error("THREE.PropertyBinding: Can not bind to material as node does not have a material.",this);return}if(!e.material.materials){console.error("THREE.PropertyBinding: Can not bind to material.materials as node.material does not have a materials array.",this);return}e=e.material.materials;break;case"bones":if(!e.skeleton){console.error("THREE.PropertyBinding: Can not bind to bones as node does not have a skeleton.",this);return}e=e.skeleton.bones;for(let u=0;u<e.length;u++)if(e[u].name===l){l=u;break}break;case"map":if("map"in e){e=e.map;break}if(!e.material){console.error("THREE.PropertyBinding: Can not bind to material as node does not have a material.",this);return}if(!e.material.map){console.error("THREE.PropertyBinding: Can not bind to material.map as node.material does not have a map.",this);return}e=e.material.map;break;default:if(e[i]===void 0){console.error("THREE.PropertyBinding: Can not bind to objectName of node undefined.",this);return}e=e[i]}if(l!==void 0){if(e[l]===void 0){console.error("THREE.PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.",this,e);return}e=e[l]}}let o=e[r];if(o===void 0){let l=t.nodeName;console.error("THREE.PropertyBinding: Trying to update property for track: "+l+"."+r+" but it wasn't found.",e);return}let a=this.Versioning.None;this.targetObject=e,e.needsUpdate!==void 0?a=this.Versioning.NeedsUpdate:e.matrixWorldNeedsUpdate!==void 0&&(a=this.Versioning.MatrixWorldNeedsUpdate);let c=this.BindingType.Direct;if(s!==void 0){if(r==="morphTargetInfluences"){if(!e.geometry){console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.",this);return}if(!e.geometry.morphAttributes){console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.",this);return}e.morphTargetDictionary[s]!==void 0&&(s=e.morphTargetDictionary[s])}c=this.BindingType.ArrayElement,this.resolvedProperty=o,this.propertyIndex=s}else o.fromArray!==void 0&&o.toArray!==void 0?(c=this.BindingType.HasFromToArray,this.resolvedProperty=o):Array.isArray(o)?(c=this.BindingType.EntireArray,this.resolvedProperty=o):this.propertyName=r;this.getValue=this.GetterByBindingType[c],this.setValue=this.SetterByBindingTypeAndVersioning[c][a]}unbind(){this.node=null,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}};it.Composite=Nh;it.prototype.BindingType={Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3};it.prototype.Versioning={None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2};it.prototype.GetterByBindingType=[it.prototype._getValue_direct,it.prototype._getValue_array,it.prototype._getValue_arrayElement,it.prototype._getValue_toArray];it.prototype.SetterByBindingTypeAndVersioning=[[it.prototype._setValue_direct,it.prototype._setValue_direct_setNeedsUpdate,it.prototype._setValue_direct_setMatrixWorldNeedsUpdate],[it.prototype._setValue_array,it.prototype._setValue_array_setNeedsUpdate,it.prototype._setValue_array_setMatrixWorldNeedsUpdate],[it.prototype._setValue_arrayElement,it.prototype._setValue_arrayElement_setNeedsUpdate,it.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate],[it.prototype._setValue_fromArray,it.prototype._setValue_fromArray_setNeedsUpdate,it.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate]];var ZB=new Float32Array(1);typeof __THREE_DEVTOOLS__!="undefined"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("register",{detail:{revision:Dh}}));typeof window!="undefined"&&(window.__THREE__?console.warn("WARNING: Multiple instances of Three.js being imported."):window.__THREE__=Dh);var uz=We(nx(),1),hz=We(ta(),1);function Ur(n,e){e===void 0&&(e=[]);let t=new Cr(n.map(i=>new ie(...i)));return e.length&&e.forEach(i=>{var r=new Rr(i.map(s=>new ie(...s)));t.holes.push(r)}),t}var Pz=We(Vx(),1),Iz=We(of(),1);function Gx(n){return n.replace(/[A-Z]/g,e=>"_"+e.toLowerCase()).replace(/^_/,"")}function Hx(n){let e={};for(let i in n)i.startsWith("on")&&(e[Gx(i.slice(2))]=n[i]);let t=i=>Cs(this,null,function*(){let{data:r}=i;if(e[r.type])try{let s=yield e[r.type](r.data);if(s!=null&&s.$transfer&&Array.isArray(s.$transfer)){let o=s.$transfer;delete s.$transfer,self.postMessage({type:""+r.type+"_result",key:r.key,data:s},o)}else self.postMessage({type:""+r.type+"_result",key:r.key,data:s})}catch(s){self.postMessage({type:""+r.type+"_result",key:r.key,error:s})}else self.postMessage({type:""+r.type+"_result",key:r.key,error:"no_event"})});return self.addEventListener("message",t),()=>{self.removeEventListener("message",t)}}var Gz=We(dl(),1),Hz=We(pl(),1),Wz=We(ml(),1),qz=We(vl(),1),Xz=We(_l(),1),Yz=We(Sl(),1),$z=We(Al(),1),Zz=We(wl(),1),Jz=We(Rl(),1),Kz=We(Pl(),1),jz=We(Ll(),1),Qz=We(Ol(),1),ek=We(zl(),1),tk=We(eu(),1),nk=We(tu(),1),ik=We(ta(),1);function Or(n,e=!1){let t=n[0].index!==null,i=new Set(Object.keys(n[0].attributes)),r=new Set(Object.keys(n[0].morphAttributes)),s={},o={},a=n[0].morphTargetsRelative,c=new Ot,l=0;for(let u=0;u<n.length;++u){let h=n[u],f=0;if(t!==(h.index!==null))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+u+". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them."),null;for(let m in h.attributes){if(!i.has(m))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+u+'. All geometries must have compatible attributes; make sure "'+m+'" attribute exists among all geometries, or in none of them.'),null;s[m]===void 0&&(s[m]=[]),s[m].push(h.attributes[m]),f++}if(f!==i.size)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+u+". Make sure all geometries have the same number of attributes."),null;if(a!==h.morphTargetsRelative)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+u+". .morphTargetsRelative must be consistent throughout all geometries."),null;for(let m in h.morphAttributes){if(!r.has(m))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+u+". .morphAttributes must be consistent throughout all geometries."),null;o[m]===void 0&&(o[m]=[]),o[m].push(h.morphAttributes[m])}if(e){let m;if(t)m=h.index.count;else if(h.attributes.position!==void 0)m=h.attributes.position.count;else return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+u+". The geometry must have either an index or a position attribute"),null;c.addGroup(l,m,u),l+=m}}if(t){let u=0,h=[];for(let f=0;f<n.length;++f){let m=n[f].index;for(let g=0;g<m.count;++g)h.push(m.getX(g)+u);u+=n[f].attributes.position.count}c.setIndex(h)}for(let u in s){let h=Wx(s[u]);if(!h)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+u+" attribute."),null;c.setAttribute(u,h)}for(let u in o){let h=o[u][0].length;if(h===0)break;c.morphAttributes=c.morphAttributes||{},c.morphAttributes[u]=[];for(let f=0;f<h;++f){let m=[];for(let _=0;_<o[u].length;++_)m.push(o[u][_][f]);let g=Wx(m);if(!g)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+u+" morphAttribute."),null;c.morphAttributes[u].push(g)}}return c}function Wx(n){let e,t,i,r=-1,s=0;for(let l=0;l<n.length;++l){let u=n[l];if(e===void 0&&(e=u.array.constructor),e!==u.array.constructor)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.array must be of consistent array types across matching attributes."),null;if(t===void 0&&(t=u.itemSize),t!==u.itemSize)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes."),null;if(i===void 0&&(i=u.normalized),i!==u.normalized)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes."),null;if(r===-1&&(r=u.gpuType),r!==u.gpuType)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.gpuType must be consistent across matching attributes."),null;s+=u.count*t}let o=new e(s),a=new rt(o,t,i),c=0;for(let l=0;l<n.length;++l){let u=n[l];if(u.isInterleavedBufferAttribute){let h=c/t;for(let f=0,m=u.count;f<m;f++)for(let g=0;g<t;g++){let _=u.getComponent(f,g);a.setComponent(f+h,g,_)}}else o.set(u.array,c);c+=u.count*t}return r!==void 0&&(a.gpuType=r),a}function qx(n,e,t){e===void 0&&(e=!0),t===void 0&&(t=!1);let i=n.filter(a=>a.geometry.type==="polygon");if(!i.length)return null;let r=i.map(a=>{var c;let l=a.geometry.coords,u=Ur(l[0],l.slice(1)),h=new Pr(u,{steps:1,bevelEnabled:!1,depth:a.height,curveSegments:4});(c=a).deltaHeight||(c.deltaHeight=0),h.translate(0,0,a.airHeight+a.deltaHeight);let f=h.attributes.position.count,m=new Float32Array(f).fill(a.height+a.airHeight+a.deltaHeight);if(h.setAttribute("maxZ",new rt(m,1)),h.setAttribute("opacity",new rt(new Float32Array(f).fill(a.fillOpacity),1)),t){let d=new Float32Array(f).fill(a.airHeight+a.deltaHeight);h.setAttribute("minZ",new rt(d,1))}let g=new Xe(a.fillColor).convertLinearToSRGB(),_=new Float32Array(f*3);for(let d=0;d<f;d++)_[d*3]=g.r,_[d*3+1]=g.g,_[d*3+2]=g.b;return h.setAttribute("color",new rt(_,3)),h}),s=Or(r);r.forEach(a=>a.dispose());let o={geometry:s};return s.dispose(),e&&(o.lineGeometry=BO(i)||void 0),o}function BO(n){let{points:e,colors:t,opacities:i}=zO(n);if(!e.length)return null;let r=new Ot().setFromPoints(e);return r.setAttribute("color",new rt(new Float32Array(t),3)),r.setAttribute("opacity",new rt(new Float32Array(i),1)),r}function zO(n){let e=[],t=[],i=[];return n.filter(r=>r.strokeOpacity>0).map(r=>{let s=r.height+(r.deltaHeight||0)+r.airHeight,{coords:o}=r.geometry,{strokeColor:a,strokeOpacity:c}=r,l=new Xe(a).convertLinearToSRGB();for(let u=0;u<o.length;u++){let h=o[u];for(let f=0;f<h.length;f++){let m=h[f],g=f+1===h.length?h[0]:h[f+1];e.push(new U(m[0],m[1],s)),e.push(new U(g[0],g[1],s)),t.push(l.r,l.g,l.b),t.push(l.r,l.g,l.b),i.push(c),i.push(c)}}}),{points:e,colors:t,opacities:i}}Hx({onGetMergedGeometryAttributes(n){let{data:e}=n,t=e.map(s=>{let o=s.geometry.coords,a=Ur(o[0],o.slice(1));return new Pr(a,{steps:1,bevelEnabled:!1,depth:s.height,curveSegments:4})}),i=Or(t);t.forEach(s=>s.dispose());let r={attributes:i.attributes,index:i.index,morphAttributes:i.morphAttributes,morphTargetsRelative:i.morphTargetsRelative,groups:i.groups,boundingSphere:i.boundingSphere};return i.dispose(),r},onGetMergedShapeGeometryAttributes(n){let{data:e}=n,t=e.map(s=>{let o=Ur(s.geometry.coords[0].slice(0,-1),s.geometry.coords.slice(1)),a=new Ss(o,4),c=a.getAttribute("position"),l=[],u=new Xe(s.fillColor);for(let f=0;f<c.count;f++){c.setZ(f,s.airHeight+(s.deltaHeight||0));var h;l.push(u.r,u.g,u.b,(h=s.fillOpacity)!=null?h:1)}return a.setAttribute("color",new rt(new Float32Array(l),4)),a}),i=Or(t);t.forEach(s=>s.dispose());let r={attributes:i.attributes,index:i.index,morphAttributes:i.morphAttributes,morphTargetsRelative:i.morphTargetsRelative,groups:i.groups,boundingSphere:i.boundingSphere};return i.dispose(),r},onGetMergedTexture2dShapeGeometryAttributes(n){let{data:e}=n,t=e.map(s=>{let o=Ur(s.geometry.coords[0].slice(0,-1),s.geometry.coords.slice(1)),a=new Ss(o,4),c=a.getAttribute("position"),l=[1,1,1,0,0,0,0,1];a.setAttribute("uv",new xt(l,2));let u=s.height+(s.deltaHeight||0)+s.airHeight;for(let h=0;h<c.count;h++)c.setZ(h,u);return a}),i=Or(t);t.forEach(s=>s.dispose());let r={attributes:i.attributes,index:i.index,morphAttributes:i.morphAttributes,morphTargetsRelative:i.morphTargetsRelative,groups:i.groups,boundingSphere:i.boundingSphere};return i.dispose(),r},onGetMergedGeometriesJson(n){let{data:e}=n,t=qx(e);if(t){var i;return{mergedGeometry:t.geometry.toJSON(),lineGeometry:(i=t.lineGeometry)==null?void 0:i.toJSON()}}else return null}});
|
|
3978
|
-
`],{type:"text/javascript"}),g=URL.createObjectURL(t),I=new Worker(g);return URL.revokeObjectURL(g),I}var je=require("three");var VI=class{static GetMergeGeometry(g){return m(this,null,function*(){let I=yield this.WorkerPool.getWorker(),A=yield ng(I,"get_merged_geometry_attributes",{data:g}),C=this.GetBufferGeometryByData(A);return this.WorkerPool.releaseWorker(I),C})}static GetMergedShapeGeometry(g){return m(this,null,function*(){let I=yield this.WorkerPool.getWorker(),A=yield ng(I,"get_merged_shape_geometry_attributes",{data:g}),C=this.GetBufferGeometryByData(A);return this.WorkerPool.releaseWorker(I),C})}static GetMergedTexture2dGeometry(g){return m(this,null,function*(){let I=yield this.WorkerPool.getWorker(),A=yield ng(I,"get_merged_texture2d_shape_geometry_attributes",{data:g}),C=this.GetBufferGeometryByData(A);return this.WorkerPool.releaseWorker(I),C})}static GetBufferGeometryByData(g){let I=new je.BufferGeometry;return Object.keys(g.attributes).forEach(A=>{I.setAttribute(A,new je.BufferAttribute(g.attributes[A].array,g.attributes[A].itemSize))}),g.index&&I.setIndex(new je.BufferAttribute(g.index.array,g.index.itemSize)),I.morphAttributes=g.morphAttributes,I.morphTargetsRelative=g.morphTargetsRelative,I.groups=g.groups,I.boundingSphere=g.boundingSphere,I}static GetMergedGeometry(g){return m(this,null,function*(){let I=yield this.WorkerPool.getWorker(),A=yield ng(I,"get_merged_geometries_json",{data:g});return this.WorkerPool.releaseWorker(I),A?D({},g[0],A):null})}static dispose(){this.WorkerPool.dispose()}};VI.WorkerPool=new ce(10,zu);var l2=require("lodash"),rC={id:"",height:.1,airHeight:0,area:0,group:"",fillColor:"#EFF4FB",strokeColor:"#ffffff",fillOpacity:1,strokeOpacity:1,strokeWidth:1,doors:[],visible:!0,geometry:{type:"polygon",cds:[],coords:[],curveCpt:[],curveIndex:[]},layerType:"",zIndex:0,stroke:!0,deltaHeight:0,userData:{},gradualColor:[],renderType:"single",colorFactor:.9,center_x:0,center_y:0,center_coord_x:0,center_coord_y:0,dashed:!1},Bg=class extends T.Object3D{getCenter(){if(this.options.geometry.type==="point")return this.position.clone();let g=new T.Vector3,I=new T.Box3;return I.setFromObject(this),I.getCenter(g),g}getSize(){if(this.options.geometry.type==="point")return new T.Vector3(0,0,0);let g=new T.Box3,I=new T.Vector3;return g.setFromObject(this),g.getSize(I),I}getPosition(){let{center_coord_x:g,center_coord_y:I}=this.options,A=this.getCenter();return A.setZ(A.z+this.options.height/2),new T.Vector3(g,I,A.z+this.options.height/2)}init(){this.geometry=this.initGeometry(),this.initMaterial(),this.initMesh(),this.mesh.position.z=this.options.airHeight+this.options.deltaHeight,this.options.stroke&&this.options.strokeOpacity!==0&&(this.initLineMaterial(),this.initLineGeometry(),this.createBorder())}initDoor(){var g;if((g=this.options.doors)!=null&&g.length&&this.options.geometry.type==="polygon"){let I=this.options.geometry.coords[0];this.options.doors.forEach(A=>{let C=A.type==="single"?.5:1,e=.5,i=qI(I,A.coord),n=new T.Vector2(...A.coord),r=new T.Vector2(...I[i]).sub(new T.Vector2(...A.coord)).normalize(),o=new T.Vector2().addVectors(n,r.clone().multiplyScalar(C)),s=new T.Vector2().addVectors(n,r.clone().multiplyScalar(-C)),a=new T.Vector2(-r.y,r.x),u=new T.Vector2().addVectors(o,a.clone().multiplyScalar(e));ls([u.x,u.y],I)||(a.multiplyScalar(-1),u=new T.Vector2().addVectors(o,a.clone().multiplyScalar(e)));let c=new T.Vector2().addVectors(s,a.clone().multiplyScalar(e)),h=[[o.x,o.y],[u.x,u.y],[c.x,c.y],[s.x,s.y]];I=this.options.geometry.coords[0]=[...I.slice(0,i+1),...h,...I.slice(i+1)]})}}initGeometry(){let g=te(this.options.geometry.coords[0],this.options.geometry.coords.slice(1));return new T.ExtrudeGeometry(g,{steps:1,bevelEnabled:!1,depth:this.options.height,curveSegments:4})}initSingleMaterial(){let g=R.createMeshBasicMaterial({color:this.options.fillColor,opacity:this.options.fillOpacity});if(this.options.secondUrl&&wg.getTextureByUrl(this.options.secondUrl).then(A=>{A.wrapS=T.RepeatWrapping,A.wrapT=T.RepeatWrapping,A.needsUpdate=!0,g.map=A,g.side=T.DoubleSide}),this.options.height<=.1)return this.material=g,g;let I=R.createMeshBasicMaterial({color:gA(this.options.fillColor),opacity:this.options.fillOpacity});return this.material=[g,I],[g,I]}getMaxAndMin(g,I){let A=new T.Box3().setFromObject(this),C=g.clone().add(I.clone().multiplyScalar(1e3)),e=new T.Ray(C,I.clone().multiplyScalar(-1)),i=new T.Vector3;e.intersectBox(A,i);let n=g.clone().add(I.clone().multiplyScalar(-1e3)),r=new T.Ray(n,I.clone()),o=new T.Vector3;return r.intersectBox(A,o),{max:o,min:i}}initGradualMaterial(){let{max:g,min:I}=new T.Box3().setFromObject(this),A=g.clone().sub(I),C=Math.max(A.x,A.y,A.z)/2,e=this.getPosition(),i=new T.Vector3(-1,.2,0).normalize(),{max:n,min:r}=this.getMaxAndMin(e,i),o=R.createShaderMaterial({gradualColor:this.options.gradualColor,center:this.getPosition(),maxValue:C,opacity:this.options.fillOpacity,direction:new T.Vector3(-1,.2,0),max:n,min:r});if(this.options.height<=.1)return this.material=o,o;let s=this.getCenter(),a=new T.Vector3(-1,.2,1).normalize(),{max:u,min:c}=this.getMaxAndMin(s,a),h=R.createShaderMaterial({gradualColor:[gA(this.options.gradualColor[0],this.options.colorFactor),gA(this.options.gradualColor[1],this.options.colorFactor)],center:this.getCenter(),maxValue:C,opacity:this.options.fillOpacity,direction:new T.Vector3(-1,.2,1),max:u,min:c});return this.material=[o,h],[o,h]}initMaterial(){return this.options.renderType==="gradual"?this.initGradualMaterial():this.initSingleMaterial()}initLineMaterial(){if(this.options.dashed){let g=R.createLineDashedMaterial({color:this.options.strokeColor,opacity:this.options.strokeOpacity});return this.lineMaterial=g,g}else{let g=R.createLineMaterial({color:this.options.strokeColor,opacity:this.options.strokeOpacity});return this.lineMaterial=g,g}}initMesh(){this.mesh&&this.remove(this.mesh),this.mesh=new T.Mesh(this.geometry,this.material),this.add(this.mesh)}getBorderPoints(){let g=[],I=this.options.height+this.options.deltaHeight,{coords:A}=this.options.geometry;for(let C=0;C<A.length;C++){let e=A[C];for(let i=0;i<e.length;i++){let n=e[i],r=i+1===e.length?e[0]:e[i+1];g.push(new T.Vector3(n[0],n[1],I)),g.push(new T.Vector3(r[0],r[1],I))}}return g}initLineGeometry(){this.lineGeometry&&this.lineGeometry.dispose();let g=this.getBorderPoints(),I=new T.BufferGeometry().setFromPoints(g);this.lineGeometry=I}createBorder(){this.line&&this.remove(this.line);let g=new T.LineSegments(this.lineGeometry,this.lineMaterial);return g.position.z=this.options.airHeight+.01,this.options.dashed&&g.computeLineDistances(),this.line=g,this.add(g),g}setOpacity(g,I){if(I===void 0&&(I=!1),I)this.options.fillOpacity=g,this.options.strokeOpacity=g;else{let{fillOpacity:A,strokeOpacity:C}=this.originOptions;this.options.fillOpacity=Math.min(A,g),this.options.strokeOpacity=Math.min(C,g)}}raycast(g){if(!this.visible||this.options.geometry.type==="point")return!1;this.mesh.updateMatrixWorld(!0);let I=g.intersectObject(this.mesh);if(I[0]){let{point:A,distance:C}=I[0];return{position:A,distance:C}}return!1}dispose(){var g,I;(g=this.geometry)==null||g.dispose(),(I=this.line)==null||I.geometry.dispose(),this.clear()}constructor(g,I){if(super(),this.context=g,this.line=null,this.options=wC((0,l2.cloneDeep)(D({},rC,I)),this),this.originOptions={fillOpacity:this.options.fillOpacity,strokeOpacity:this.options.strokeOpacity},this.options.geometry.type==="point"){let[A,C]=this.options.geometry.coords;return this.position.set(A,C,this.options.height+this.options.airHeight),this}this.initDoor(),this.init(),this.visible=this.options.visible,this.addEventListener("change-fillColor",A=>{let{value:C}=A;this.initMaterial(),this.initMesh()}),this.addEventListener("change-fillOpacity",A=>{let{value:C}=A;this.initMaterial(),this.initMesh()}),this.addEventListener("change-height",A=>{let{value:C}=A;this.dispose(),this.init()}),this.addEventListener("change-strokeColor",A=>{let{value:C}=A;!this.options.stroke||!this.options.strokeOpacity||(this.initLineMaterial(),this.createBorder())}),this.addEventListener("change-strokeOpacity",A=>{let{value:C}=A;if(this.options.stroke)if(C)this.lineGeometry||this.initLineGeometry(),this.initLineMaterial(),this.createBorder();else{var e;this.line&&(this.remove(this.line),this.line=null),(e=this.lineGeometry)==null||e.dispose(),this.lineGeometry=void 0}}),this.addEventListener("change-airHeight",A=>{let{value:C}=A;this.position.z=C}),this.addEventListener("change-visible",A=>{let{value:C}=A;this.visible=C}),this.addEventListener("change-stroke",A=>{let{value:C}=A;if(C){if(this.line)return;this.initLineGeometry(),this.initLineMaterial(),this.createBorder()}else if(this.line){var e;this.remove(this.line),(e=this.lineGeometry)==null||e.dispose()}}),this.addEventListener("change-dashed",()=>{!this.options.stroke||!this.options.strokeOpacity||(this.lineGeometry||this.initLineGeometry(),this.initLineMaterial(),this.createBorder())}),this.addEventListener("change-renderType",()=>{this.initMaterial(),this.initMesh()}),this.addEventListener("change-gradualColor",()=>{this.initMaterial(),this.initMesh()})}};var _I=require("three");var Re=class extends _I.Object3D{initLight(){let g=ts(16777215,.5);return g.position.set(0,0,100),this.add(g),g}changeLightCamera(g){let I=g.x,A=g.y;this.directionalLight.shadow.camera.left=-I,this.directionalLight.shadow.camera.right=I,this.directionalLight.shadow.camera.top=A,this.directionalLight.shadow.camera.bottom=-A,this.directionalLight.shadow.camera.near=.5,this.directionalLight.shadow.camera.far=Math.max(I,A)}changeLightColor(g){this.directionalLight.color=new _I.Color(g)}setPosition(g){this.position.copy(g),this.directionalLight.position.set(-g.x/2,-g.y/2,100)}initPlane(g,I){g===void 0&&(g=1e3),I===void 0&&(I=1e3);let A=new _I.PlaneGeometry(g,I),C=new _I.ShadowMaterial({transparent:!0,opacity:0,side:_I.DoubleSide}),e=new _I.Mesh(A,C);return e.receiveShadow=!0,e.position.z=-10,this.add(e),this.plane=e,e}setTarget(g){this.directionalLight.target=g}transformOpacity(g){return g*this.basicOpacity}setOpacity(g){this.plane.material.opacity=this.transformOpacity(g)}dispose(){U(this,!0)}constructor(){super(),this.basicOpacity=.07,this.directionalLight=this.initLight(),this.initPlane()}};var mV=l(_(),1);var sr=require("three");var rg=require("three");var c2=require("lodash");var XR={autoUpdate:!0,appendToBody:!1,autoChangePlacement:!1},RC=class extends hg{initObserver(){let g=new MutationObserver((0,c2.debounce)(()=>{this.div&&this.usePlacement()},100));g.observe(this.div,{childList:!0,subtree:!0,attributes:!0}),this.observer=g}getPlacementPosition(){var g,I;if(this.element instanceof Bg&&this.element.options.geometry.type==="polygon"){let{max:i,min:n}=new rg.Box3().setFromObject(this.element),r=(i.x+n.x)/2,o=(i.y+n.y)/2;return{left:new rg.Vector3(n.x,o,i.z),leftTop:new rg.Vector3(n.x,i.y,i.z),top:new rg.Vector3(r,i.y,i.z),rightTop:new rg.Vector3(i.x,i.y,i.z),right:new rg.Vector3(i.x,o,i.z),rightBottom:new rg.Vector3(i.x,n.y,i.z),bottom:new rg.Vector3(r,n.y,i.z),leftBottom:new rg.Vector3(n.x,n.y,i.z),center:new rg.Vector3(r,o,i.z)}}let{x:A,y:C,z:e}=((I=this.element)==null||(g=I.getPosition)==null?void 0:g.call(I))||this.position;return{left:new rg.Vector3(A,C,e),leftTop:new rg.Vector3(A,C,e),top:new rg.Vector3(A,C,e),rightTop:new rg.Vector3(A,C,e),right:new rg.Vector3(A,C,e),rightBottom:new rg.Vector3(A,C,e),bottom:new rg.Vector3(A,C,e),leftBottom:new rg.Vector3(A,C,e),center:new rg.Vector3(A,C,e)}}getPlacementScreenPosition(){let{width:g,height:I}=this.context.clientSize,A=this.getPlacementPosition();return Object.keys(A).reduce((C,e)=>{let{x:i,y:n}=j(A[e],this.context.camera,g,I);return C[e]={x:i,y:n},C},{})}checkOverflow(g,I){let{width:A,height:C}=this.context.clientSize;return I.x>0&&g.x<A&&I.y<C&&g.y>0}getPlacement(){let{clientWidth:g,clientHeight:I}=this.div,A=this.getPlacementScreenPosition(),C=g/2,e=I/2,i=[{type:"center",getBox(n,r){return{max:{x:C+n,y:r-I},min:{x:n-C,y:r}}}},{type:"left",getBox(n,r){return{max:{x:n,y:r-e},min:{x:n-g,y:r+e}}}},{type:"leftTop",getBox(n,r){return{max:{x:n,y:r-I},min:{x:n-g,y:r}}}},{type:"top",getBox(n,r){return{max:{x:n+C,y:r-I},min:{x:n-C,y:r}}}},{type:"rightTop",getBox(n,r){return{max:{x:n+g,y:r-I},min:{x:n,y:r}}}},{type:"right",getBox(n,r){return{max:{x:n+g,y:r-e},min:{x:n,y:r+e}}}},{type:"rightBottom",getBox(n,r){return{max:{x:n+g,y:r},min:{x:n,y:r+I}}}},{type:"bottom",getBox(n,r){return{max:{x:n+C,y:r},min:{x:n-C,y:r+I}}}},{type:"leftBottom",getBox(n,r){return{max:{x:n,y:r},min:{x:n-g,y:r+e}}}}];for(let n=0;n<i.length;n++){let r=i[n],o=A[r.type],{max:s,min:a}=r.getBox(o.x,o.y);if(this.checkOverflow(s,a))return{type:r.type,position:o}}return{type:"center",position:A.center}}initDiv(){let g=document.createElement("div");return g.style.position="absolute",g}usePlacement(){let g=this.getPlacement();this.div.className="overlay_"+g.type,this._updatePosition(g.position.x,g.position.y)}bindElement(g){this.element=g,this.options.autoChangePlacement&&this.initObserver(),this.onUpdate()}unBindElement(){this.element=void 0}setVisible(g,I){I===void 0&&(I="block"),g!==this.visible&&(this.div.style.display=g?I:"none",this.visible=g)}setOpacity(g){this.div.style.opacity=""+g}getPosition(){return this.element?typeof this.element.getPosition=="function"?this.element.getPosition():new rg.Box3().setFromObject(this.element).getCenter(new rg.Vector3):this.position}get withinDisplayRange(){let{x:g,y:I}=this.clientPos,{width:A,height:C}=this.context.clientSize;return g>=0&&g<=A&&I>=0&&I<=C}_updatePosition(g,I){this.clientPos={x:g,y:I};let{width:A,height:C,x:e,y:i}=this.context.clientSize;if(this.div){if(this.options.appendToBody){this.div.style.left=""+e+"px",this.div.style.top=""+(i+C)+"px";return}this.options.autoUpdate?(this.div.style.left=""+g+"px",this.div.style.bottom=""+(C-I)+"px"):this.dispatchEvent({type:"update-position",x:g,y:I,width:A,height:C})}}updatePosition(g){g===void 0&&(g=!1);let I=this.getPosition(),{width:A,height:C}=this.context.clientSize,{x:e,y:i}=j(I,this.context.camera,A,C);this.clientPos.x===e&&this.clientPos.y===i&&!g||this._updatePosition(e,i)}registryEvent(){this.context.addEventListener("update",this.onUpdate)}unRegistryEvent(){this.context.removeEventListener("update",this.onUpdate)}dispose(){var g,I;super.dispose(),this.unRegistryEvent(),this.unBindElement(),(g=this.observer)==null||g.disconnect(),(I=this.div)==null||I.remove(),this.div=null}constructor(g,I={}){super(),this.context=g,this.position=new rg.Vector3,this.clientPos={x:0,y:0},this.visible=!0,this.placement="top",this.observer=null,this.onUpdate=()=>{this.options.autoChangePlacement?this.usePlacement():this.updatePosition()},this.options=D({},XR,I),this.registryEvent(),this.div=this.initDiv(),this.options.appendToBody?document.body.appendChild(this.div):this.context.container.appendChild(this.div)}};var VR={texts:[{text:""}],level:1,icon_position:"bottom",collision_enable:!0,opacity:1,id:"",position:{x:0,y:0,z:0},icon_opacity:1,icon_border:{color:"#586EE0",width:0},background:"",collision_hide_icon:!0,built_in:!1,box_only_icon:!1},oC=class extends sr.EventDispatcher{get withinDisplayRange(){return this.overlay.withinDisplayRange}resetSize(){return m(this,null,function*(){if(yield ds(),!this.disposed)if(this.options.box_only_icon){if(!this.img)return;let{width:g,height:I}=this.img.getBoundingClientRect();this.size={width:g+2,height:I+2}}else{let{width:g,height:I}=this.div.getBoundingClientRect();this.size={width:g+2,height:I+2}}})}renderHelperBox(){}get clientPos(){return this.overlay.clientPos}initDiv(){let g=document.createElement("div");return this.div=g,this.addText(),this.options.icon&&this.addIcon(),g.style.fontSize="12px",g.style.textShadow="#fff 1px 0 0, #fff 0 1px 0, #fff -1px 0 0, #fff 0 -1px 0",g.style.display="flex",g.style.flexDirection="column",g.style.justifyContent="center",g.style.alignItems="center",g.style.padding="4px",this.overlay.setOpacity(this.options.opacity),this.overlay.div.style.pointerEvents="none",this.overlay.div.style.userSelect="none",this.overlay.div.appendChild(g),this.resetSize(),g}addIcon(){if(!this.img){let g=this.initIcon();this.options.icon_position==="top"?this.div.firstChild?this.div.insertBefore(g,this.div.firstChild):this.div.appendChild(g):this.div.appendChild(g)}}addText(){let g=this.initText();this.options.icon_position==="top"?this.div.appendChild(g):this.div.firstChild?this.div.insertBefore(g,this.div.firstChild):this.div.appendChild(g)}getPosition(){return this.position}initText(){let g=document.createElement("div");return g.appendChild(this.createTextFragment()),g.style.textAlign="center",this.textDiv=g,g}createTextFragment(){let g=document.createDocumentFragment();return this.options.texts.forEach(I=>{let A=document.createElement("div");if(A.style.whiteSpace="nowrap",I.styles)for(let[C,e]of Object.entries(I.styles))A.style[C]=e;A.textContent=I.text,g.appendChild(A)}),g}initIcon(){var g,I;let A=document.createElement("img");return A.setAttribute("src",this.options.icon),A.style.width=""+(((g=this.options.icon_size)==null?void 0:g[0])||32)+"px",A.style.height=""+(((I=this.options.icon_size)==null?void 0:I[1])||32)+"px",A.style.opacity=""+this.options.icon_opacity+"px",A.style.borderRadius="50%",this.options.icon_border.width&&(A.style.border=this.options.icon_border.width+"px solid "+this.options.icon_border.color),A.onload=()=>{this.resetSize()},this.img=A,A}registryEvent(){}unRegistryEvent(){}setVisible(g){g!==this.visible&&(this.visible=g,this.changeOverlayVisible(g))}changeOverlayVisible(g){if(!(g===this.overlay.visible&&this.options.collision_hide_icon))if(this.options.collision_hide_icon)this.overlay.visible=g,this.overlay.div.style.visibility=g?"visible":"hidden";else{if(this.showTextStatus===g)return;this.textDiv.style.visibility=g?"visible":"hidden",this.showTextStatus=g}}parentSetVisible(g){this.visible&&this.changeOverlayVisible(g)}getBox(g){g===void 0&&(g=this.context.config.poi.boxScale);let{width:I,height:A}=this.size,C=I*g,e=A*g,{x:i,y:n}=this.overlay.clientPos;return{left:i-C/2,right:i+C/2,top:this.options.icon?n-e:n-e/2,bottom:this.options.icon?n:n+e/2}}getOriginBox(){return this.getBox(1)}isContain(g,I){if(!this.overlay.visible||!this.visible)return!1;let A=this.getOriginBox();return g>=A.left&&g<=A.right&&I>=A.top&&I<=A.bottom}dispose(){this.unRegistryEvent(),this.div=null,this.textDiv=null,this.img=void 0,this.overlay.dispose(),this.disposed=!0}constructor(g,I){var A,C,e;super(),this.context=g,this.visible=!0,this.size={width:0,height:0},this.position=new sr.Vector3,this.userData={},this.showTextStatus=!0,this.disposed=!1,this._changePosition=()=>{this.overlay.updatePosition(!0)},this.options=wC(D({},VR,I),this),this.position.set(((A=I.position)==null?void 0:A.x)||0,((C=I.position)==null?void 0:C.y)||0,((e=I.position)==null?void 0:e.z)||0),this.overlay=new RC(this.context,{autoUpdate:!1}),this.overlay.addEventListener("update-position",i=>{let{x:n,y:r,height:o}=i;this.overlay.div.style.transform="translate3d(calc("+n+"px - 50%), calc("+(-o+r)+"px - "+(this.options.icon&&this.options.icon_position!=="center"?"100%":"50%")+"), 0)"}),this.overlay.bindElement(this),this.registryEvent(),this.initDiv(),this.addEventListener("change-icon",i=>{let{value:n}=i;n?this.img?this.img.setAttribute("src",n):(this.addIcon(),this._changePosition()):(this.img&&this.div.removeChild(this.img),this.img=void 0,this._changePosition(),this.resetSize())}),this.addEventListener("change-texts",i=>{let{value:n}=i,r=this.textDiv;if(r){let o=this.initText();this.div.replaceChild(o,r)}else this.addText();this.resetSize()}),this.addEventListener("change-opacity",i=>{let{value:n}=i;this.overlay.setOpacity(n)}),this.addEventListener("change-icon_size",i=>{let{value:n}=i;this.img&&(this.img.style.width=""+((n==null?void 0:n[0])||32)+"px",this.img.style.height=""+((n==null?void 0:n[1])||32)+"px",this.resetSize())}),this.addEventListener("change-icon_opacity",i=>{let{value:n}=i;this.img&&(this.img.style.opacity=""+n)}),this.addEventListener("change-icon_border",i=>{let{value:n}=i;this.img&&(this.img.style.border=n.width+"px solid "+n.color)}),this.addEventListener("change-background",i=>{let{value:n}=i;this.div.style.background=n})}};var F7=l(_(),1),Z7=l(OI(),1),k7=l(YI(),1),H7=l(jI(),1),L7=l(RI(),1),U7=l(NI(),1),X7=l(WI(),1),V7=l(FI(),1),gI=require("three");var Og=require("three"),h2=require("@mars3d/heatmap.js"),ar=require("@turf/turf");var Ne=class extends Og.Object3D{clearHeatmap(){this.div.firstChild&&this.div.removeChild(this.div.firstChild),this.heatmap=void 0}loadData(g){var I;this.clearHeatmap();let{width:A,height:C,leftTop:e,center:i,scale:n}=this.box,o=(((I=this.context.config.heatMap)==null?void 0:I.radius)||1)*n,s=D({width:A,height:C,container:this.div},this.context.config.heatMap,{radius:o});this.heatmap=(0,h2.create)(s);let a=this.transformData(g,e,n);g.maxValue!==void 0&&(a.max=g.maxValue),g.minValue!==void 0&&(a.min=g.minValue),this.heatmap.setData(a),this.initPlane(A/n,C/n);let u=this.context.center;this.position.set(i[0]-u[0],i[1]-u[1],this.position.z)}initPlane(g,I){this.plane&&this.remove(this.plane);let A=new Og.PlaneGeometry(g,I),C=new Og.Texture(this.div.firstChild);C.needsUpdate=!0;let e=new Og.MeshBasicMaterial({transparent:!0,side:Og.FrontSide,map:C});e.needsUpdate=!0,this.plane=new Og.Mesh(A,e),this.plane.renderOrder=1e5,this.add(this.plane)}getTransMatrix(g){let{x:I,y:A}=g;return new Og.Matrix3().makeScale(this.box.scale,-this.box.scale).multiply(new Og.Matrix3().makeTranslation(-I,-A))}transformData(g,I,A){var C,e;let i=this.getTransMatrix(I);var n;let r=(n=(C=g.data[0])==null?void 0:C.value)!=null?n:0;var o;let s=(o=(e=g.data[0])==null?void 0:e.value)!=null?o:0;return{data:g.data.map(u=>{let c=new Og.Vector2(u.x,u.y).applyMatrix3(i);return u.value>r&&(r=u.value),u.value<s&&(s=u.value),{x:Math.ceil(c.x),y:Math.ceil(c.y),value:u.value}}),max:r,min:s}}getBox(){let g=this.context.range,I=(0,ar.bbox)(g),A=Math.ceil(I[2]-I[0]),C=Math.ceil(I[3]-I[1]),e=this.context.clientSize.width,i=this.context.clientSize.height,n=e/A,r=i/C,o=Math.min(n,r);this.scaleRatio=o;let s=A*o,a=C*o,u={x:Math.ceil(I[0]),y:Math.ceil(I[3])},c=(0,ar.center)(g).geometry.coordinates;return{width:s,height:a,leftTop:u,center:c,scale:o}}dispose(){this.clearHeatmap(),this.div.remove(),this.div=null,this.plane&&(this.remove(this.plane),U(this.plane))}constructor(g){super(),this.context=g,this.scaleRatio=1,this.div=document.createElement("div"),this.box=this.getBox()}};var ur=require("three");var We=class extends ur.Object3D{loadModel(){return m(this,null,function*(){let g=yield Fg.loadModel(this.options.modelUrl);g.scene.rotation.set(Math.PI/2,Math.PI/2,0),this.add(g.scene),this.model=g})}dispose(){U(this),this.model=null}constructor(g,I){super(),this.context=g,this.options=I,this.model=null,this.position.copy(I.position||new ur.Vector3(0,0,0)),this.loadModel()}};var TV=l(_(),1);var lr=require("three");var p2=require("three");var pg=class extends p2.Object3D{setOpacity(g,I){I===void 0&&(I=!1),this.children.forEach(A=>{A.setOpacity==null||A.setOpacity.call(A,g,I)})}dispose(){U(this),this.children.forEach(g=>g.dispose==null?void 0:g.dispose.call(g)),this.clear()}constructor(g){super(),this.context=g}};var Fe=class extends pg{getCenter(){return new lr.Box3().setFromObject(this).getCenter(new lr.Vector3)}createGraphic(g){let I=new Bg(this.context,g);return I.userData.data=g,this.add(I),this.graphicMap.set(g.id,I),I}removeGraphic(g){this.remove(g),this.graphicMap.delete(g.options.id),g.dispose()}removeGraphicById(g){this.graphicMap.has(g)&&this.removeGraphic(this.graphicMap.get(g))}getGraphicByNodeId(g){return this.graphicMap.get(g)||null}getGraphicByRaycaster(g){let I={distance:1e4,graphic:null,position:null},A=this.children.reduce((C,e)=>{if(e instanceof Bg){let i=e.raycast(g);if(i){let{distance:n}=i;if(n<C.distance)return{distance:i.distance,position:i.position,graphic:e}}return C}else return C},I);return A===I?{graphics:[],position:null}:{graphics:[A.graphic],position:A.position}}setGraphicOptions(g,I){let A,C=this.graphicMap.get(g);C&&(typeof I=="function"?A=I(C.options):A=D({},C.options,I),Object.keys(A).forEach(e=>{C.options[e]=A[e]}))}getGraphicPosition(g){let I=this.graphicMap.get(g);return I?[I.options.center_x,I.options.center_y]:null}setOpacity(g,I){I===void 0&&(I=!1),this.graphicMap.forEach(A=>{A.setOpacity(g,I)})}constructor(g){super(g),this.graphicMap=new Map}};var WV=l(cr(),1),FV=l(W(),1);var f2=require("lodash");var Ze=class extends pg{clear(g){return g===void 0&&(g=!1),this.pois.forEach(I=>{I.options.built_in&&!g||I.dispose()}),this.pois=g?[]:this.pois.filter(I=>I.options.built_in),this}createPoi(g){let I=new oC(this.context,g);return this.pushPoi(I),I.addEventListener("change-level",()=>this.changePoiLevelOrCollisionEnable(I)),I.addEventListener("change-collision_enable",()=>this.changePoiLevelOrCollisionEnable(I)),Promise.resolve().then(()=>{this.debounceCollisionDetection()}),I}changePoiLevelOrCollisionEnable(g){let I=this.pois.findIndex(A=>A===g);I!==-1&&(this.pois.splice(I,1),this.pushPoi(g))}removePoi(g){let I=this.pois.findIndex(A=>A===g);I!==-1&&(this.pois.splice(I,1),g.dispose())}removePoiById(g){let I=this.pois.find(A=>A.options.id===g);I&&this.removePoi(I)}getPoiById(g){return this.pois.find(A=>A.options.id===g)||null}pushPoi(g){if(!g.options.collision_enable){this.pois.unshift(g);return}if(g.options.level===0){this.pois.push(g);return}for(let I=0;I<this.pois.length;I++){let A=this.pois[I];if(A.options.collision_enable&&A.options.level<=g.options.level){this.pois.splice(I,0,g);return}}this.pois.push(g)}getPoiByDeviceXy(g,I){return this.pois.filter(C=>C instanceof oC&&C.isContain(g,I))}collisionDetection(){let g=[];this.pois.filter(A=>A.visible&&A.withinDisplayRange).forEach((A,C)=>{let{left:e,right:i,top:n,bottom:r}=A.getBox();if(C===0||!A.options.collision_enable){g.push({left:e,right:i,top:n,bottom:r}),A.parentSetVisible(!0);return}let o=g.some(s=>s.left<i&&s.right>e&&s.top<r&&s.bottom>n);A.parentSetVisible(!o),o||g.push({left:e,right:i,top:n,bottom:r})})}registryEvent(){this.context.addEventListener("update",this.onUpdate)}unRegistryEvent(){this.context.removeEventListener("update",this.onUpdate)}dispose(){this.timer.dispose(),this.pois.forEach(g=>g.dispose()),this.pois.length=0,this.debounceCollisionDetection=()=>{},super.dispose(),this.unRegistryEvent()}constructor(g){super(g),this.pois=[],this.timer=new tg,this.onUpdate=()=>{this.timer.requestAnimationFrame(()=>{this.collisionDetection()})},this.registryEvent(),this.debounceCollisionDetection=(0,f2.debounce)(this.collisionDetection,10)}};var UV=l(cr(),1),XV=l(W(),1);var hr=require("three"),NC=class extends pg{clear(){return this.pois.forEach(g=>{g.dispose()}),this.pois=[],this}createPoi(g){let I=new ug(this.context,g);return this.pushPoi(I),I}changePoiLevelOrCollisionEnable(g){let I=this.pois.findIndex(A=>A===g);I!==-1&&(this.pois.splice(I,1),this.pushPoi(g))}removePoi(g){let I=this.pois.findIndex(A=>A===g);I!==-1&&(this.remove(g),this.pois.splice(I,1),g.dispose())}removePoiById(g){let I=this.pois.find(A=>A.options.id===g);I&&this.removePoi(I)}getPoiById(g){return this.pois.find(A=>A.options.id===g)||null}add(g){return this.children.some(I=>I.options.id===g.options.id)||(g.addEventListener("change-level",()=>this.changePoiLevelOrCollisionEnable(g)),g.addEventListener("change-collision_enable",()=>this.changePoiLevelOrCollisionEnable(g))),super.add(g),this}pushPoi(g){if(g.parentSetVisible(!1),g.userData.type==="parkingSpace"&&(this.needChangeParkingSpaceVisibleByZoom=!0),this.add(g),!g.options.collision_enable){this.pois.unshift(g);return}if(g.options.level===0){this.pois.push(g);return}for(let I=0;I<this.pois.length;I++){let A=this.pois[I];if(A.options.collision_enable&&A.options.level<=g.options.level){this.pois.splice(I,0,g);return}}this.pois.push(g)}getPoiByDeviceXy(g,I){let A=new hr.Vector2(g,I);return this.pois.filter(e=>e instanceof ug&&e.canSelect&&e.box.containsPoint(A))}collisionDetection(){let g=[],{camera:I}=this.context;I.updateMatrixWorld();let A=o=>o<=1&&o>=-1,C=I.projectionMatrix.clone();C.multiply(I.matrixWorldInverse);let e=I.zoom/this.context.basicZoom,i=25/30,n=Math.min(25,Math.max(1,e*i));this.pois.filter(o=>{if(o.visible){var s,a;if(!(n<=o.options.maxWeight&&n>=o.options.minWeight))return o.parentSetVisible(!1),!1;let u=o.spriteIcon?(s=o.spriteIcon)==null?void 0:s.matrixWorld:((a=o.spriteText)==null?void 0:a.matrixWorld)||o.matrixWorld,c=new hr.Vector3().setFromMatrixPosition(u);return c.applyMatrix4(C),o.screenPosition=c,A(c.x)&&A(c.y)&&A(c.z)?!0:(o.parentSetVisible(!1),!1)}return!1}).forEach((o,s)=>{let a=o.getBox(o.screenPosition);if(s===0||!o.options.collision_enable){g.push(a),o.parentSetVisible(!0);return}let u=g.some(c=>c.intersectsBox(a));o.parentSetVisible(!u),u||g.push(a)})}setOpacity(g){this.pois.forEach(I=>{I.options.icon_opacity=g,I.options.text_opacity=g})}registryEvent(){this.context.addEventListener("update",this.onUpdate),this.context.addEventListener("control-zoom-change",this.changeParkingSpaceVisibleByZoom)}unRegistryEvent(){this.context.removeEventListener("update",this.onUpdate),this.context.removeEventListener("control-zoom-change",this.changeParkingSpaceVisibleByZoom)}onAddToScene(){this.registryEvent()}onRemoveFromScene(){this.unRegistryEvent()}dispose(){this.timer.dispose(),this.pois.forEach(g=>g.dispose()),this.pois.length=0,super.dispose(),this.unRegistryEvent()}constructor(g){super(g),this.pois=[],this.needChangeParkingSpaceVisibleByZoom=!1,this.timer=new tg,this.changeParkingSpaceVisibleByZoom=()=>{var I;let A=(I=this.parent)==null?void 0:I.parent;if(A&&A instanceof sI){let{clientSize:{width:C,height:e}}=this.context,{max:i,min:n}=A.box,o=Math.min(C/(i.x-n.x),e/(i.y-n.y))*(i.x-n.x)/60,s=this.context.camera.zoom>=o;this.pois.filter(a=>a.userData.type==="parkingSpace").map(a=>{a.visible=s,s||a.parentSetVisible(s)})}},this.onUpdate=()=>{this.needChangeParkingSpaceVisibleByZoom&&(this.changeParkingSpaceVisibleByZoom(),this.needChangeParkingSpaceVisibleByZoom=!1),this.timer.requestAnimationFrame(()=>{this.collisionDetection()})}}};var qV=l(nI(),1),$V=l(_(),1);var pr=require("three"),d2=require("lodash");var ke=class extends pg{createParkings(g,I,A){I===void 0&&(I=!0),this.parkingOptions=g,this.merged=I,I?(A?this.createMergedParkingByMergedElements(A):this.createMergedParking(g),g.map((C,e)=>{var i;(i=C.texts[0])==null||i.split(/[,,]/).map(n=>{this.parkingNoIndexMap.set(n,e)}),this.nodeIdIndexMap.set(C.id,e)})):this.createIndependentParking(g)}load(g,I){I===void 0&&(I=!0);var A;this.createParkings(g.elements,I,g.mergedElements),(A=g.mergedParkingTexture)!=null&&A.length?this.createMergedParkingTexture(g.mergedParkingTexture):this.createParkingTexture(g.elements)}createMergedParking(g){return m(this,null,function*(){let I=new pt(this.context,g);this.mergedParkingSpace=I,this.add(I)})}createMergedParkingByMergedElements(g){let I=new He(this.context,g);this.mergedParkingSpace=I,this.add(I)}createIndependentParking(g){g.forEach(I=>{var A;let C=new Bg(this.context,I);this.add(C),(A=I.texts[0])==null||A.split(/[,,]/).map(e=>{this.parkingNoGraphicMap.set(e,C)}),this.graphicMap.set(C.options.id,C)})}createParkingTexture(g){let I=g.filter(A=>nr[A.parkingType]).map(A=>{let C=new pr.Vector2(...A.geometry.coords[0][0]),e=new pr.Vector2(...A.geometry.coords[0][1]),i=new pr.Vector2(...A.geometry.coords[0][2]),n=Math.min(C.distanceTo(e),e.distanceTo(i)),r=0;return n===C.distanceTo(e)?r=e.sub(C).angle()-Math.PI/2:r=i.sub(e).angle()-Math.PI/2,{uuid:A.id,iconUrl:nr[A.parkingType],name:A.texts[0],deltaHeight:(A.deltaHeight||0)+.001,airHeight:A.airHeight,height:A.height,geometry:A.geometry,opacity:A.fillOpacity,visible:!0,secondWidth:n-1,secondHeight:n-1,secondRotate:r,centerCoords:[A.center_coord_x,A.center_coord_y]}});if(I.length){let A=new sC(this.context,I);this.add(A)}}createMergedParkingTexture(g){g.map(I=>{I.iconUrl=nr[I.iconUrl];let A=new aC(this.context,I);this.add(A)})}changeParkingColor(g){this.merged?Object.keys(g).map(I=>{let A=this.parkingNoIndexMap.get(I);if(!(0,d2.isNil)(A)){var C;(C=this.mergedParkingSpace)==null||C.setParkingColorByIndex(A,g[I])}}):Object.keys(g).map(I=>{let A=this.parkingNoGraphicMap.get(I);A&&(A.options.fillColor=g[I])})}setOpacity(g,I){if(I===void 0&&(I=!1),this.parkingOptions.forEach(C=>{if(I)C.fillOpacity=g,C.strokeOpacity=g;else{let n=this.parkingOriginOptions.get(C.id);var e;C.fillOpacity=Math.min(g,(e=n==null?void 0:n.fillOpacity)!=null?e:1);var i;C.strokeOpacity=Math.min(g,(i=n==null?void 0:n.strokeOpacity)!=null?i:1)}}),this.merged)if(this.mergedParkingSpace instanceof pt)this.mergedParkingSpace.setOpacity(g,I);else{var A;(A=this.mergedParkingSpace)==null||A.setOpacity(g,I)}else this.graphicMap.forEach(C=>{C.setOpacity(g,I)});this.children.filter(C=>C instanceof sC||C instanceof aC).map(C=>C.setOpacity(g))}getParkingOptionsByParkingNo(g){return this.parkingOptions.find(A=>A.texts[0]===g)||null}getGraphicPosition(g){if(this.merged){let I=this.parkingOptions.find(A=>A.id===g);return I?[I.center_x,I.center_y]:null}}dispose(){var g;(g=this.mergedParkingSpace)==null||g.dispose(),this.mergedParkingSpace=null,U(this),this.graphicMap.clear(),this.parkingNoGraphicMap.clear(),this.parkingNoIndexMap.clear(),this.nodeIdIndexMap.clear(),this.parkingOptions=[],super.dispose()}constructor(g){super(g),this.graphicMap=new Map,this.parkingNoGraphicMap=new Map,this.parkingOriginOptions=new Map,this.parkingOptions=[],this.merged=!1,this.parkingNoIndexMap=new Map,this.nodeIdIndexMap=new Map,this.mergedParkingSpace=null}};var i7=l(W(),1);var Le=class extends pg{addModels(g){let I=g.reduce((A,C)=>{let{url:e}=C;return A[e]?A[e].push(C):A[e]=[C],A},{});Object.values(I).forEach(A=>{let C=new Ue(this.context,A);this.add(C)})}constructor(g){super(g)}};var P7=l(_(),1);var dt=require("three");var y2=require("three/examples/jsm/lines/LineMaterial.js"),lg=require("three");function m2(t){return`${t.x}-${t.y}-${t.z}`}var $g=class{static generateLineMaterialKey({color:g,opacity:I}){return`${g}-${I}`}static createLineMaterial({color:g,opacity:I,vertexColors:A}){let C=this.generateLineMaterialKey({color:g,opacity:I,vertexColors:A});if(this.lineMaterialMap.has(C))return this.lineMaterialMap.get(C);let e=new lg.LineBasicMaterial({color:new lg.Color(g).convertLinearToSRGB(),transparent:!0,opacity:I,vertexColors:A!=null?A:!1});return this.lineMaterialMap.set(C,e),e}static createMeshStandardMaterial({color:g,opacity:I}){let A=`${g}-${I}`;if(this.meshStandardMaterialMap.has(A))return this.meshStandardMaterialMap.get(A);let C=new lg.MeshStandardMaterial({color:new lg.Color(g).convertLinearToSRGB(),roughness:1,transparent:!0,opacity:I,depthWrite:!0});return this.meshStandardMaterialMap.set(A,C),C}static createMeshBasicMaterial({color:g,opacity:I,vertexColors:A}){let C=`${g}-${I}-${A}`;if(this.meshBasicMaterialMap.has(C))return this.meshBasicMaterialMap.get(C);let e=new lg.MeshBasicMaterial({color:g,transparent:!0,opacity:I,depthWrite:!0,vertexColors:A!=null?A:!1});return this.meshBasicMaterialMap.set(C,e),e}static createShaderMaterial({gradualColor:g,center:I,maxValue:A,opacity:C,direction:e,max:i,min:n}){let r=`${g.toString()}-${m2(I)}-${A}-${C}-${m2(e)}`;if(this.shaderMaterialMap.has(r))return this.shaderMaterialMap.get(r);let o=`
|
|
3978
|
+
`],{type:"text/javascript"}),g=URL.createObjectURL(t),I=new Worker(g);return URL.revokeObjectURL(g),I}var je=require("three");var VI=class{static GetMergeGeometry(g){return m(this,null,function*(){let I=yield this.WorkerPool.getWorker(),A=yield ng(I,"get_merged_geometry_attributes",{data:g}),C=this.GetBufferGeometryByData(A);return this.WorkerPool.releaseWorker(I),C})}static GetMergedShapeGeometry(g){return m(this,null,function*(){let I=yield this.WorkerPool.getWorker(),A=yield ng(I,"get_merged_shape_geometry_attributes",{data:g}),C=this.GetBufferGeometryByData(A);return this.WorkerPool.releaseWorker(I),C})}static GetMergedTexture2dGeometry(g){return m(this,null,function*(){let I=yield this.WorkerPool.getWorker(),A=yield ng(I,"get_merged_texture2d_shape_geometry_attributes",{data:g}),C=this.GetBufferGeometryByData(A);return this.WorkerPool.releaseWorker(I),C})}static GetBufferGeometryByData(g){let I=new je.BufferGeometry;return Object.keys(g.attributes).forEach(A=>{I.setAttribute(A,new je.BufferAttribute(g.attributes[A].array,g.attributes[A].itemSize))}),g.index&&I.setIndex(new je.BufferAttribute(g.index.array,g.index.itemSize)),I.morphAttributes=g.morphAttributes,I.morphTargetsRelative=g.morphTargetsRelative,I.groups=g.groups,I.boundingSphere=g.boundingSphere,I}static GetMergedGeometry(g){return m(this,null,function*(){let I=yield this.WorkerPool.getWorker(),A=yield ng(I,"get_merged_geometries_json",{data:g});return this.WorkerPool.releaseWorker(I),A?D({},g[0],A):null})}static dispose(){this.WorkerPool.dispose()}};VI.WorkerPool=new ce(10,zu);var l2=require("lodash"),rC={id:"",height:.1,airHeight:0,area:0,group:"",fillColor:"#EFF4FB",strokeColor:"#ffffff",fillOpacity:1,strokeOpacity:1,strokeWidth:1,doors:[],visible:!0,geometry:{type:"polygon",cds:[],coords:[],curveCpt:[],curveIndex:[]},layerType:"",zIndex:0,stroke:!0,deltaHeight:0,userData:{},gradualColor:[],renderType:"single",colorFactor:.9,center_x:0,center_y:0,center_coord_x:0,center_coord_y:0,dashed:!1},Bg=class extends T.Object3D{getCenter(){if(this.options.geometry.type==="point")return this.position.clone();let g=new T.Vector3,I=new T.Box3;return I.setFromObject(this),I.getCenter(g),g}getSize(){if(this.options.geometry.type==="point")return new T.Vector3(0,0,0);let g=new T.Box3,I=new T.Vector3;return g.setFromObject(this),g.getSize(I),I}getPosition(){let{center_coord_x:g,center_coord_y:I}=this.options,A=this.getCenter();return A.setZ(A.z+this.options.height/2),new T.Vector3(g,I,A.z+this.options.height/2)}init(){this.geometry=this.initGeometry(),this.initMaterial(),this.initMesh(),this.mesh.position.z=this.options.airHeight+this.options.deltaHeight,this.options.stroke&&this.options.strokeOpacity!==0&&(this.initLineMaterial(),this.initLineGeometry(),this.createBorder())}initDoor(){var g;if((g=this.options.doors)!=null&&g.length&&this.options.geometry.type==="polygon"){let I=this.options.geometry.coords[0];this.options.doors.forEach(A=>{let C=A.type==="single"?.5:1,e=.5,i=qI(I,A.coord),n=new T.Vector2(...A.coord),r=new T.Vector2(...I[i]).sub(new T.Vector2(...A.coord)).normalize(),o=new T.Vector2().addVectors(n,r.clone().multiplyScalar(C)),s=new T.Vector2().addVectors(n,r.clone().multiplyScalar(-C)),a=new T.Vector2(-r.y,r.x),u=new T.Vector2().addVectors(o,a.clone().multiplyScalar(e));ls([u.x,u.y],I)||(a.multiplyScalar(-1),u=new T.Vector2().addVectors(o,a.clone().multiplyScalar(e)));let c=new T.Vector2().addVectors(s,a.clone().multiplyScalar(e)),h=[[o.x,o.y],[u.x,u.y],[c.x,c.y],[s.x,s.y]];I=this.options.geometry.coords[0]=[...I.slice(0,i+1),...h,...I.slice(i+1)]})}}initGeometry(){let g=te(this.options.geometry.coords[0],this.options.geometry.coords.slice(1));return new T.ExtrudeGeometry(g,{steps:1,bevelEnabled:!1,depth:this.options.height,curveSegments:4})}initSingleMaterial(){let g=R.createMeshBasicMaterial({color:this.options.fillColor,opacity:this.options.fillOpacity});if(this.options.secondUrl&&wg.getTextureByUrl(this.options.secondUrl).then(A=>{A.wrapS=T.RepeatWrapping,A.wrapT=T.RepeatWrapping,A.needsUpdate=!0,g.map=A,g.side=T.DoubleSide}),this.options.height<=.1)return this.material=g,g;let I=R.createMeshBasicMaterial({color:gA(this.options.fillColor),opacity:this.options.fillOpacity});return this.material=[g,I],[g,I]}getMaxAndMin(g,I){let A=new T.Box3().setFromObject(this),C=g.clone().add(I.clone().multiplyScalar(1e3)),e=new T.Ray(C,I.clone().multiplyScalar(-1)),i=new T.Vector3;e.intersectBox(A,i);let n=g.clone().add(I.clone().multiplyScalar(-1e3)),r=new T.Ray(n,I.clone()),o=new T.Vector3;return r.intersectBox(A,o),{max:o,min:i}}initGradualMaterial(){let{max:g,min:I}=new T.Box3().setFromObject(this),A=g.clone().sub(I),C=Math.max(A.x,A.y,A.z)/2,e=this.getPosition(),i=new T.Vector3(-1,.2,0).normalize(),{max:n,min:r}=this.getMaxAndMin(e,i),o=R.createShaderMaterial({gradualColor:this.options.gradualColor,center:this.getPosition(),maxValue:C,opacity:this.options.fillOpacity,direction:new T.Vector3(-1,.2,0),max:n,min:r});if(this.options.height<=.1)return this.material=o,o;let s=this.getCenter(),a=new T.Vector3(-1,.2,1).normalize(),{max:u,min:c}=this.getMaxAndMin(s,a),h=R.createShaderMaterial({gradualColor:[gA(this.options.gradualColor[0],this.options.colorFactor),gA(this.options.gradualColor[1],this.options.colorFactor)],center:this.getCenter(),maxValue:C,opacity:this.options.fillOpacity,direction:new T.Vector3(-1,.2,1),max:u,min:c});return this.material=[o,h],[o,h]}initMaterial(){return this.options.renderType==="gradual"?this.initGradualMaterial():this.initSingleMaterial()}initLineMaterial(){if(this.options.dashed){let g=R.createLineDashedMaterial({color:this.options.strokeColor,opacity:this.options.strokeOpacity});return this.lineMaterial=g,g}else{let g=R.createLineMaterial({color:this.options.strokeColor,opacity:this.options.strokeOpacity});return this.lineMaterial=g,g}}initMesh(){this.mesh&&this.remove(this.mesh),this.mesh=new T.Mesh(this.geometry,this.material),this.add(this.mesh)}getBorderPoints(){let g=[],I=this.options.height+this.options.deltaHeight,{coords:A}=this.options.geometry;for(let C=0;C<A.length;C++){let e=A[C];for(let i=0;i<e.length;i++){let n=e[i],r=i+1===e.length?e[0]:e[i+1];g.push(new T.Vector3(n[0],n[1],I)),g.push(new T.Vector3(r[0],r[1],I))}}return g}initLineGeometry(){this.lineGeometry&&this.lineGeometry.dispose();let g=this.getBorderPoints(),I=new T.BufferGeometry().setFromPoints(g);this.lineGeometry=I}createBorder(){this.line&&this.remove(this.line);let g=new T.LineSegments(this.lineGeometry,this.lineMaterial);return g.position.z=this.options.airHeight+.01,this.options.dashed&&g.computeLineDistances(),this.line=g,this.add(g),g}setOpacity(g,I){if(I===void 0&&(I=!1),I)this.options.fillOpacity=g,this.options.strokeOpacity=g;else{let{fillOpacity:A,strokeOpacity:C}=this.originOptions;this.options.fillOpacity=Math.min(A,g),this.options.strokeOpacity=Math.min(C,g)}}raycast(g){if(!this.visible||this.options.geometry.type==="point")return!1;this.mesh.updateMatrixWorld(!0);let I=g.intersectObject(this.mesh);if(I[0]){let{point:A,distance:C}=I[0];return{position:A,distance:C}}return!1}dispose(){var g,I;(g=this.geometry)==null||g.dispose(),(I=this.line)==null||I.geometry.dispose(),this.clear()}constructor(g,I){if(super(),this.context=g,this.line=null,this.options=wC((0,l2.cloneDeep)(D({},rC,I)),this),this.originOptions={fillOpacity:this.options.fillOpacity,strokeOpacity:this.options.strokeOpacity},this.options.geometry.type==="point"){let[A,C]=this.options.geometry.coords;return this.position.set(A,C,this.options.height+this.options.airHeight),this}this.initDoor(),this.init(),this.visible=this.options.visible,this.addEventListener("change-fillColor",A=>{let{value:C}=A;this.initMaterial(),this.initMesh()}),this.addEventListener("change-fillOpacity",A=>{let{value:C}=A;this.initMaterial(),this.initMesh()}),this.addEventListener("change-height",A=>{let{value:C}=A;this.dispose(),this.init()}),this.addEventListener("change-strokeColor",A=>{let{value:C}=A;!this.options.stroke||!this.options.strokeOpacity||(this.initLineMaterial(),this.createBorder())}),this.addEventListener("change-strokeOpacity",A=>{let{value:C}=A;if(this.options.stroke)if(C)this.lineGeometry||this.initLineGeometry(),this.initLineMaterial(),this.createBorder();else{var e;this.line&&(this.remove(this.line),this.line=null),(e=this.lineGeometry)==null||e.dispose(),this.lineGeometry=void 0}}),this.addEventListener("change-airHeight",A=>{let{value:C}=A;this.position.z=C}),this.addEventListener("change-visible",A=>{let{value:C}=A;this.visible=C}),this.addEventListener("change-stroke",A=>{let{value:C}=A;if(C){if(this.line)return;this.initLineGeometry(),this.initLineMaterial(),this.createBorder()}else if(this.line){var e;this.remove(this.line),(e=this.lineGeometry)==null||e.dispose()}}),this.addEventListener("change-dashed",()=>{!this.options.stroke||!this.options.strokeOpacity||(this.lineGeometry||this.initLineGeometry(),this.initLineMaterial(),this.createBorder())}),this.addEventListener("change-renderType",()=>{this.initMaterial(),this.initMesh()}),this.addEventListener("change-gradualColor",()=>{this.initMaterial(),this.initMesh()})}};var _I=require("three");var Re=class extends _I.Object3D{initLight(){let g=ts(16777215,.5);return g.position.set(0,0,100),this.add(g),g}changeLightCamera(g){let I=g.x,A=g.y;this.directionalLight.shadow.camera.left=-I,this.directionalLight.shadow.camera.right=I,this.directionalLight.shadow.camera.top=A,this.directionalLight.shadow.camera.bottom=-A,this.directionalLight.shadow.camera.near=.5,this.directionalLight.shadow.camera.far=Math.max(I,A)}changeLightColor(g){this.directionalLight.color=new _I.Color(g)}setPosition(g){this.position.copy(g),this.directionalLight.position.set(-g.x/2,-g.y/2,100)}initPlane(g,I){g===void 0&&(g=1e3),I===void 0&&(I=1e3);let A=new _I.PlaneGeometry(g,I),C=new _I.ShadowMaterial({transparent:!0,opacity:0,side:_I.DoubleSide}),e=new _I.Mesh(A,C);return e.receiveShadow=!0,e.position.z=-10,this.add(e),this.plane=e,e}setTarget(g){this.directionalLight.target=g}transformOpacity(g){return g*this.basicOpacity}setOpacity(g){this.plane.material.opacity=this.transformOpacity(g)}dispose(){U(this,!0)}constructor(){super(),this.basicOpacity=.07,this.directionalLight=this.initLight(),this.initPlane()}};var mV=l(_(),1);var sr=require("three");var rg=require("three");var c2=require("lodash");var XR={autoUpdate:!0,appendToBody:!1,autoChangePlacement:!1},RC=class extends hg{initObserver(){let g=new MutationObserver((0,c2.debounce)(()=>{this.div&&this.usePlacement()},100));g.observe(this.div,{childList:!0,subtree:!0,attributes:!0}),this.observer=g}getPlacementPosition(){var g,I;if(this.element instanceof Bg&&this.element.options.geometry.type==="polygon"){let{max:i,min:n}=new rg.Box3().setFromObject(this.element),r=(i.x+n.x)/2,o=(i.y+n.y)/2;return{left:new rg.Vector3(n.x,o,i.z),leftTop:new rg.Vector3(n.x,i.y,i.z),top:new rg.Vector3(r,i.y,i.z),rightTop:new rg.Vector3(i.x,i.y,i.z),right:new rg.Vector3(i.x,o,i.z),rightBottom:new rg.Vector3(i.x,n.y,i.z),bottom:new rg.Vector3(r,n.y,i.z),leftBottom:new rg.Vector3(n.x,n.y,i.z),center:new rg.Vector3(r,o,i.z)}}let{x:A,y:C,z:e}=((I=this.element)==null||(g=I.getPosition)==null?void 0:g.call(I))||this.position;return{left:new rg.Vector3(A,C,e),leftTop:new rg.Vector3(A,C,e),top:new rg.Vector3(A,C,e),rightTop:new rg.Vector3(A,C,e),right:new rg.Vector3(A,C,e),rightBottom:new rg.Vector3(A,C,e),bottom:new rg.Vector3(A,C,e),leftBottom:new rg.Vector3(A,C,e),center:new rg.Vector3(A,C,e)}}getPlacementScreenPosition(){let{width:g,height:I}=this.context.clientSize,A=this.getPlacementPosition();return Object.keys(A).reduce((C,e)=>{let{x:i,y:n}=j(A[e],this.context.camera,g,I);return C[e]={x:i,y:n},C},{})}checkOverflow(g,I){let{width:A,height:C}=this.context.clientSize;return I.x>0&&g.x<A&&I.y<C&&g.y>0}getPlacement(){let{clientWidth:g,clientHeight:I}=this.div,A=this.getPlacementScreenPosition(),C=g/2,e=I/2,i=[{type:"center",getBox(n,r){return{max:{x:C+n,y:r-I},min:{x:n-C,y:r}}}},{type:"left",getBox(n,r){return{max:{x:n,y:r-e},min:{x:n-g,y:r+e}}}},{type:"leftTop",getBox(n,r){return{max:{x:n,y:r-I},min:{x:n-g,y:r}}}},{type:"top",getBox(n,r){return{max:{x:n+C,y:r-I},min:{x:n-C,y:r}}}},{type:"rightTop",getBox(n,r){return{max:{x:n+g,y:r-I},min:{x:n,y:r}}}},{type:"right",getBox(n,r){return{max:{x:n+g,y:r-e},min:{x:n,y:r+e}}}},{type:"rightBottom",getBox(n,r){return{max:{x:n+g,y:r},min:{x:n,y:r+I}}}},{type:"bottom",getBox(n,r){return{max:{x:n+C,y:r},min:{x:n-C,y:r+I}}}},{type:"leftBottom",getBox(n,r){return{max:{x:n,y:r},min:{x:n-g,y:r+e}}}}];for(let n=0;n<i.length;n++){let r=i[n],o=A[r.type],{max:s,min:a}=r.getBox(o.x,o.y);if(this.checkOverflow(s,a))return{type:r.type,position:o}}return{type:"center",position:A.center}}initDiv(){let g=document.createElement("div");return g.style.position="absolute",g}usePlacement(){let g=this.getPlacement();this.div.className="overlay_"+g.type,this._updatePosition(g.position.x,g.position.y)}bindElement(g){this.element=g,this.options.autoChangePlacement&&this.initObserver(),this.onUpdate()}unBindElement(){this.element=void 0}setVisible(g,I){I===void 0&&(I="block"),g!==this.visible&&(this.div.style.display=g?I:"none",this.visible=g)}setOpacity(g){this.div.style.opacity=""+g}getPosition(){return this.element?typeof this.element.getPosition=="function"?this.element.getPosition():new rg.Box3().setFromObject(this.element).getCenter(new rg.Vector3):this.position}get withinDisplayRange(){let{x:g,y:I}=this.clientPos,{width:A,height:C}=this.context.clientSize;return g>=0&&g<=A&&I>=0&&I<=C}_updatePosition(g,I){this.clientPos={x:g,y:I};let{width:A,height:C,x:e,y:i}=this.context.clientSize;if(this.div){if(this.options.appendToBody){this.div.style.left=""+e+"px",this.div.style.top=""+(i+C)+"px";return}this.options.autoUpdate?(this.div.style.left=""+g+"px",this.div.style.bottom=""+(C-I)+"px"):this.dispatchEvent({type:"update-position",x:g,y:I,width:A,height:C})}}updatePosition(g){g===void 0&&(g=!1);let I=this.getPosition(),{width:A,height:C}=this.context.clientSize,{x:e,y:i}=j(I,this.context.camera,A,C);this.clientPos.x===e&&this.clientPos.y===i&&!g||this._updatePosition(e,i)}registryEvent(){this.context.addEventListener("update",this.onUpdate)}unRegistryEvent(){this.context.removeEventListener("update",this.onUpdate)}dispose(){var g,I;super.dispose(),this.unRegistryEvent(),this.unBindElement(),(g=this.observer)==null||g.disconnect(),(I=this.div)==null||I.remove(),this.div=null}constructor(g,I={}){super(),this.context=g,this.position=new rg.Vector3,this.clientPos={x:0,y:0},this.visible=!0,this.placement="top",this.observer=null,this.onUpdate=()=>{this.options.autoChangePlacement?this.usePlacement():this.updatePosition()},this.options=D({},XR,I),this.registryEvent(),this.div=this.initDiv(),this.options.appendToBody?document.body.appendChild(this.div):this.context.container.appendChild(this.div)}};var VR={texts:[{text:""}],level:1,icon_position:"bottom",collision_enable:!0,opacity:1,id:"",position:{x:0,y:0,z:0},icon_opacity:1,icon_border:{color:"#586EE0",width:0},background:"",collision_hide_icon:!0,built_in:!1,box_only_icon:!1},oC=class extends sr.EventDispatcher{get withinDisplayRange(){return this.overlay.withinDisplayRange}resetSize(){return m(this,null,function*(){if(yield ds(),!this.disposed)if(this.options.box_only_icon){if(!this.img)return;let{width:g,height:I}=this.img.getBoundingClientRect();this.size={width:g+2,height:I+2}}else{let{width:g,height:I}=this.div.getBoundingClientRect();this.size={width:g+2,height:I+2}}})}renderHelperBox(){}get clientPos(){return this.overlay.clientPos}initDiv(){let g=document.createElement("div");return this.div=g,this.addText(),this.options.icon&&this.addIcon(),g.style.fontSize="12px",g.style.textShadow="#fff 1px 0 0, #fff 0 1px 0, #fff -1px 0 0, #fff 0 -1px 0",g.style.display="flex",g.style.flexDirection="column",g.style.justifyContent="center",g.style.alignItems="center",g.style.padding="4px",this.overlay.setOpacity(this.options.opacity),this.overlay.div.style.pointerEvents="none",this.overlay.div.style.userSelect="none",this.overlay.div.appendChild(g),this.resetSize(),g}addIcon(){if(!this.img){let g=this.initIcon();this.options.icon_position==="top"?this.div.firstChild?this.div.insertBefore(g,this.div.firstChild):this.div.appendChild(g):this.div.appendChild(g)}}addText(){let g=this.initText();this.options.icon_position==="top"?this.div.appendChild(g):this.div.firstChild?this.div.insertBefore(g,this.div.firstChild):this.div.appendChild(g)}getPosition(){return this.position}initText(){let g=document.createElement("div");return g.appendChild(this.createTextFragment()),g.style.textAlign="center",this.textDiv=g,g}createTextFragment(){let g=document.createDocumentFragment();return this.options.texts.forEach(I=>{let A=document.createElement("div");if(A.style.whiteSpace="nowrap",I.styles)for(let[C,e]of Object.entries(I.styles))A.style[C]=e;A.textContent=I.text,g.appendChild(A)}),g}initIcon(){var g,I;let A=document.createElement("img");return A.setAttribute("src",this.options.icon),A.style.width=""+(((g=this.options.icon_size)==null?void 0:g[0])||32)+"px",A.style.height=""+(((I=this.options.icon_size)==null?void 0:I[1])||32)+"px",A.style.opacity=""+this.options.icon_opacity+"px",A.style.borderRadius="50%",this.options.icon_border.width&&(A.style.border=this.options.icon_border.width+"px solid "+this.options.icon_border.color),A.onload=()=>{this.resetSize()},this.img=A,A}registryEvent(){}unRegistryEvent(){}setVisible(g){g!==this.visible&&(this.visible=g,this.changeOverlayVisible(g))}changeOverlayVisible(g){if(!(g===this.overlay.visible&&this.options.collision_hide_icon))if(this.options.collision_hide_icon)this.overlay.visible=g,this.overlay.div.style.visibility=g?"visible":"hidden";else{if(this.showTextStatus===g)return;this.textDiv.style.visibility=g?"visible":"hidden",this.showTextStatus=g}}parentSetVisible(g){this.visible&&this.changeOverlayVisible(g)}getBox(g){g===void 0&&(g=this.context.config.poi.boxScale);let{width:I,height:A}=this.size,C=I*g,e=A*g,{x:i,y:n}=this.overlay.clientPos;return{left:i-C/2,right:i+C/2,top:this.options.icon?n-e:n-e/2,bottom:this.options.icon?n:n+e/2}}getOriginBox(){return this.getBox(1)}isContain(g,I){if(!this.overlay.visible||!this.visible)return!1;let A=this.getOriginBox();return g>=A.left&&g<=A.right&&I>=A.top&&I<=A.bottom}dispose(){this.unRegistryEvent(),this.div=null,this.textDiv=null,this.img=void 0,this.overlay.dispose(),this.disposed=!0}constructor(g,I){var A,C,e;super(),this.context=g,this.visible=!0,this.size={width:0,height:0},this.position=new sr.Vector3,this.userData={},this.showTextStatus=!0,this.disposed=!1,this._changePosition=()=>{this.overlay.updatePosition(!0)},this.options=wC(D({},VR,I),this),this.position.set(((A=I.position)==null?void 0:A.x)||0,((C=I.position)==null?void 0:C.y)||0,((e=I.position)==null?void 0:e.z)||0),this.overlay=new RC(this.context,{autoUpdate:!1}),this.overlay.addEventListener("update-position",i=>{let{x:n,y:r,height:o}=i;this.overlay.div.style.transform="translate3d(calc("+n+"px - 50%), calc("+(-o+r)+"px - "+(this.options.icon&&this.options.icon_position!=="center"?"100%":"50%")+"), 0)"}),this.overlay.bindElement(this),this.registryEvent(),this.initDiv(),this.addEventListener("change-icon",i=>{let{value:n}=i;n?this.img?this.img.setAttribute("src",n):(this.addIcon(),this._changePosition()):(this.img&&this.div.removeChild(this.img),this.img=void 0,this._changePosition(),this.resetSize())}),this.addEventListener("change-texts",i=>{let{value:n}=i,r=this.textDiv;if(r){let o=this.initText();this.div.replaceChild(o,r)}else this.addText();this.resetSize()}),this.addEventListener("change-opacity",i=>{let{value:n}=i;this.overlay.setOpacity(n)}),this.addEventListener("change-icon_size",i=>{let{value:n}=i;this.img&&(this.img.style.width=""+((n==null?void 0:n[0])||32)+"px",this.img.style.height=""+((n==null?void 0:n[1])||32)+"px",this.resetSize())}),this.addEventListener("change-icon_opacity",i=>{let{value:n}=i;this.img&&(this.img.style.opacity=""+n)}),this.addEventListener("change-icon_border",i=>{let{value:n}=i;this.img&&(this.img.style.border=n.width+"px solid "+n.color)}),this.addEventListener("change-background",i=>{let{value:n}=i;this.div.style.background=n})}};var F7=l(_(),1),Z7=l(OI(),1),k7=l(YI(),1),H7=l(jI(),1),L7=l(RI(),1),U7=l(NI(),1),X7=l(WI(),1),V7=l(FI(),1),gI=require("three");var Og=require("three"),h2=require("@mars3d/heatmap.js"),ar=require("@turf/turf");var Ne=class extends Og.Object3D{clearHeatmap(){this.div.firstChild&&this.div.removeChild(this.div.firstChild),this.heatmap=void 0}loadData(g){var I;this.clearHeatmap();let{width:A,height:C,leftTop:e,center:i,scale:n}=this.box,r=((I=this.context.config.heatMap)==null?void 0:I.radius)||1,o=D({width:A,height:C,container:this.div},this.context.config.heatMap,{radius:r});this.heatmap=(0,h2.create)(o);let s=this.transformData(g,e,n);g.maxValue!==void 0&&(s.max=g.maxValue),g.minValue!==void 0&&(s.min=g.minValue),this.heatmap.setData(s),this.initPlane(A/n,C/n);let a=this.context.center;this.position.set(i[0]-a[0],i[1]-a[1],this.position.z)}initPlane(g,I){this.plane&&this.remove(this.plane);let A=new Og.PlaneGeometry(g,I),C=new Og.Texture(this.div.firstChild);C.needsUpdate=!0;let e=new Og.MeshBasicMaterial({transparent:!0,side:Og.FrontSide,map:C});e.needsUpdate=!0,this.plane=new Og.Mesh(A,e),this.plane.renderOrder=1e5,this.add(this.plane)}getTransMatrix(g){let{x:I,y:A}=g;return new Og.Matrix3().makeScale(this.box.scale,-this.box.scale).multiply(new Og.Matrix3().makeTranslation(-I,-A))}transformData(g,I,A){var C,e;let i=this.getTransMatrix(I);var n;let r=(n=(C=g.data[0])==null?void 0:C.value)!=null?n:0;var o;let s=(o=(e=g.data[0])==null?void 0:e.value)!=null?o:0;return{data:g.data.map(u=>{let c=new Og.Vector2(u.x,u.y).applyMatrix3(i);return u.value>r&&(r=u.value),u.value<s&&(s=u.value),{x:Math.ceil(c.x),y:Math.ceil(c.y),value:u.value}}),max:r,min:s}}getBox(){let g=this.context.range,I=(0,ar.bbox)(g),A=Math.ceil(I[2]-I[0]),C=Math.ceil(I[3]-I[1]),e=4e3,i=4e3,n=e/A,r=i/C,o=Math.min(n,r);this.scaleRatio=o;let s=A*o,a=C*o,u={x:Math.ceil(I[0]),y:Math.ceil(I[3])},c=(0,ar.center)(g).geometry.coordinates;return{width:s,height:a,leftTop:u,center:c,scale:o}}dispose(){this.clearHeatmap(),this.div.remove(),this.div=null,this.plane&&(this.remove(this.plane),U(this.plane))}constructor(g){super(),this.context=g,this.scaleRatio=1,this.div=document.createElement("div"),this.box=this.getBox()}};var ur=require("three");var We=class extends ur.Object3D{loadModel(){return m(this,null,function*(){let g=yield Fg.loadModel(this.options.modelUrl);g.scene.rotation.set(Math.PI/2,Math.PI/2,0),this.add(g.scene),this.model=g})}dispose(){U(this),this.model=null}constructor(g,I){super(),this.context=g,this.options=I,this.model=null,this.position.copy(I.position||new ur.Vector3(0,0,0)),this.loadModel()}};var TV=l(_(),1);var lr=require("three");var p2=require("three");var pg=class extends p2.Object3D{setOpacity(g,I){I===void 0&&(I=!1),this.children.forEach(A=>{A.setOpacity==null||A.setOpacity.call(A,g,I)})}dispose(){U(this),this.children.forEach(g=>g.dispose==null?void 0:g.dispose.call(g)),this.clear()}constructor(g){super(),this.context=g}};var Fe=class extends pg{getCenter(){return new lr.Box3().setFromObject(this).getCenter(new lr.Vector3)}createGraphic(g){let I=new Bg(this.context,g);return I.userData.data=g,this.add(I),this.graphicMap.set(g.id,I),I}removeGraphic(g){this.remove(g),this.graphicMap.delete(g.options.id),g.dispose()}removeGraphicById(g){this.graphicMap.has(g)&&this.removeGraphic(this.graphicMap.get(g))}getGraphicByNodeId(g){return this.graphicMap.get(g)||null}getGraphicByRaycaster(g){let I={distance:1e4,graphic:null,position:null},A=this.children.reduce((C,e)=>{if(e instanceof Bg){let i=e.raycast(g);if(i){let{distance:n}=i;if(n<C.distance)return{distance:i.distance,position:i.position,graphic:e}}return C}else return C},I);return A===I?{graphics:[],position:null}:{graphics:[A.graphic],position:A.position}}setGraphicOptions(g,I){let A,C=this.graphicMap.get(g);C&&(typeof I=="function"?A=I(C.options):A=D({},C.options,I),Object.keys(A).forEach(e=>{C.options[e]=A[e]}))}getGraphicPosition(g){let I=this.graphicMap.get(g);return I?[I.options.center_x,I.options.center_y]:null}setOpacity(g,I){I===void 0&&(I=!1),this.graphicMap.forEach(A=>{A.setOpacity(g,I)})}constructor(g){super(g),this.graphicMap=new Map}};var WV=l(cr(),1),FV=l(W(),1);var f2=require("lodash");var Ze=class extends pg{clear(g){return g===void 0&&(g=!1),this.pois.forEach(I=>{I.options.built_in&&!g||I.dispose()}),this.pois=g?[]:this.pois.filter(I=>I.options.built_in),this}createPoi(g){let I=new oC(this.context,g);return this.pushPoi(I),I.addEventListener("change-level",()=>this.changePoiLevelOrCollisionEnable(I)),I.addEventListener("change-collision_enable",()=>this.changePoiLevelOrCollisionEnable(I)),Promise.resolve().then(()=>{this.debounceCollisionDetection()}),I}changePoiLevelOrCollisionEnable(g){let I=this.pois.findIndex(A=>A===g);I!==-1&&(this.pois.splice(I,1),this.pushPoi(g))}removePoi(g){let I=this.pois.findIndex(A=>A===g);I!==-1&&(this.pois.splice(I,1),g.dispose())}removePoiById(g){let I=this.pois.find(A=>A.options.id===g);I&&this.removePoi(I)}getPoiById(g){return this.pois.find(A=>A.options.id===g)||null}pushPoi(g){if(!g.options.collision_enable){this.pois.unshift(g);return}if(g.options.level===0){this.pois.push(g);return}for(let I=0;I<this.pois.length;I++){let A=this.pois[I];if(A.options.collision_enable&&A.options.level<=g.options.level){this.pois.splice(I,0,g);return}}this.pois.push(g)}getPoiByDeviceXy(g,I){return this.pois.filter(C=>C instanceof oC&&C.isContain(g,I))}collisionDetection(){let g=[];this.pois.filter(A=>A.visible&&A.withinDisplayRange).forEach((A,C)=>{let{left:e,right:i,top:n,bottom:r}=A.getBox();if(C===0||!A.options.collision_enable){g.push({left:e,right:i,top:n,bottom:r}),A.parentSetVisible(!0);return}let o=g.some(s=>s.left<i&&s.right>e&&s.top<r&&s.bottom>n);A.parentSetVisible(!o),o||g.push({left:e,right:i,top:n,bottom:r})})}registryEvent(){this.context.addEventListener("update",this.onUpdate)}unRegistryEvent(){this.context.removeEventListener("update",this.onUpdate)}dispose(){this.timer.dispose(),this.pois.forEach(g=>g.dispose()),this.pois.length=0,this.debounceCollisionDetection=()=>{},super.dispose(),this.unRegistryEvent()}constructor(g){super(g),this.pois=[],this.timer=new tg,this.onUpdate=()=>{this.timer.requestAnimationFrame(()=>{this.collisionDetection()})},this.registryEvent(),this.debounceCollisionDetection=(0,f2.debounce)(this.collisionDetection,10)}};var UV=l(cr(),1),XV=l(W(),1);var hr=require("three"),NC=class extends pg{clear(){return this.pois.forEach(g=>{g.dispose()}),this.pois=[],this}createPoi(g){let I=new ug(this.context,g);return this.pushPoi(I),I}changePoiLevelOrCollisionEnable(g){let I=this.pois.findIndex(A=>A===g);I!==-1&&(this.pois.splice(I,1),this.pushPoi(g))}removePoi(g){let I=this.pois.findIndex(A=>A===g);I!==-1&&(this.remove(g),this.pois.splice(I,1),g.dispose())}removePoiById(g){let I=this.pois.find(A=>A.options.id===g);I&&this.removePoi(I)}getPoiById(g){return this.pois.find(A=>A.options.id===g)||null}add(g){return this.children.some(I=>I.options.id===g.options.id)||(g.addEventListener("change-level",()=>this.changePoiLevelOrCollisionEnable(g)),g.addEventListener("change-collision_enable",()=>this.changePoiLevelOrCollisionEnable(g))),super.add(g),this}pushPoi(g){if(g.parentSetVisible(!1),g.userData.type==="parkingSpace"&&(this.needChangeParkingSpaceVisibleByZoom=!0),this.add(g),!g.options.collision_enable){this.pois.unshift(g);return}if(g.options.level===0){this.pois.push(g);return}for(let I=0;I<this.pois.length;I++){let A=this.pois[I];if(A.options.collision_enable&&A.options.level<=g.options.level){this.pois.splice(I,0,g);return}}this.pois.push(g)}getPoiByDeviceXy(g,I){let A=new hr.Vector2(g,I);return this.pois.filter(e=>e instanceof ug&&e.canSelect&&e.box.containsPoint(A))}collisionDetection(){let g=[],{camera:I}=this.context;I.updateMatrixWorld();let A=o=>o<=1&&o>=-1,C=I.projectionMatrix.clone();C.multiply(I.matrixWorldInverse);let e=I.zoom/this.context.basicZoom,i=25/30,n=Math.min(25,Math.max(1,e*i));this.pois.filter(o=>{if(o.visible){var s,a;if(!(n<=o.options.maxWeight&&n>=o.options.minWeight))return o.parentSetVisible(!1),!1;let u=o.spriteIcon?(s=o.spriteIcon)==null?void 0:s.matrixWorld:((a=o.spriteText)==null?void 0:a.matrixWorld)||o.matrixWorld,c=new hr.Vector3().setFromMatrixPosition(u);return c.applyMatrix4(C),o.screenPosition=c,A(c.x)&&A(c.y)&&A(c.z)?!0:(o.parentSetVisible(!1),!1)}return!1}).forEach((o,s)=>{let a=o.getBox(o.screenPosition);if(s===0||!o.options.collision_enable){g.push(a),o.parentSetVisible(!0);return}let u=g.some(c=>c.intersectsBox(a));o.parentSetVisible(!u),u||g.push(a)})}setOpacity(g){this.pois.forEach(I=>{I.options.icon_opacity=g,I.options.text_opacity=g})}registryEvent(){this.context.addEventListener("update",this.onUpdate),this.context.addEventListener("control-zoom-change",this.changeParkingSpaceVisibleByZoom)}unRegistryEvent(){this.context.removeEventListener("update",this.onUpdate),this.context.removeEventListener("control-zoom-change",this.changeParkingSpaceVisibleByZoom)}onAddToScene(){this.registryEvent()}onRemoveFromScene(){this.unRegistryEvent()}dispose(){this.timer.dispose(),this.pois.forEach(g=>g.dispose()),this.pois.length=0,super.dispose(),this.unRegistryEvent()}constructor(g){super(g),this.pois=[],this.needChangeParkingSpaceVisibleByZoom=!1,this.timer=new tg,this.changeParkingSpaceVisibleByZoom=()=>{var I;let A=(I=this.parent)==null?void 0:I.parent;if(A&&A instanceof sI){let{clientSize:{width:C,height:e}}=this.context,{max:i,min:n}=A.box,o=Math.min(C/(i.x-n.x),e/(i.y-n.y))*(i.x-n.x)/60,s=this.context.camera.zoom>=o;this.pois.filter(a=>a.userData.type==="parkingSpace").map(a=>{a.visible=s,s||a.parentSetVisible(s)})}},this.onUpdate=()=>{this.needChangeParkingSpaceVisibleByZoom&&(this.changeParkingSpaceVisibleByZoom(),this.needChangeParkingSpaceVisibleByZoom=!1),this.timer.requestAnimationFrame(()=>{this.collisionDetection()})}}};var qV=l(nI(),1),$V=l(_(),1);var pr=require("three"),d2=require("lodash");var ke=class extends pg{createParkings(g,I,A){I===void 0&&(I=!0),this.parkingOptions=g,this.merged=I,I?(A?this.createMergedParkingByMergedElements(A):this.createMergedParking(g),g.map((C,e)=>{var i;(i=C.texts[0])==null||i.split(/[,,]/).map(n=>{this.parkingNoIndexMap.set(n,e)}),this.nodeIdIndexMap.set(C.id,e)})):this.createIndependentParking(g)}load(g,I){I===void 0&&(I=!0);var A;this.createParkings(g.elements,I,g.mergedElements),(A=g.mergedParkingTexture)!=null&&A.length?this.createMergedParkingTexture(g.mergedParkingTexture):this.createParkingTexture(g.elements)}createMergedParking(g){return m(this,null,function*(){let I=new pt(this.context,g);this.mergedParkingSpace=I,this.add(I)})}createMergedParkingByMergedElements(g){let I=new He(this.context,g);this.mergedParkingSpace=I,this.add(I)}createIndependentParking(g){g.forEach(I=>{var A;let C=new Bg(this.context,I);this.add(C),(A=I.texts[0])==null||A.split(/[,,]/).map(e=>{this.parkingNoGraphicMap.set(e,C)}),this.graphicMap.set(C.options.id,C)})}createParkingTexture(g){let I=g.filter(A=>nr[A.parkingType]).map(A=>{let C=new pr.Vector2(...A.geometry.coords[0][0]),e=new pr.Vector2(...A.geometry.coords[0][1]),i=new pr.Vector2(...A.geometry.coords[0][2]),n=Math.min(C.distanceTo(e),e.distanceTo(i)),r=0;return n===C.distanceTo(e)?r=e.sub(C).angle()-Math.PI/2:r=i.sub(e).angle()-Math.PI/2,{uuid:A.id,iconUrl:nr[A.parkingType],name:A.texts[0],deltaHeight:(A.deltaHeight||0)+.001,airHeight:A.airHeight,height:A.height,geometry:A.geometry,opacity:A.fillOpacity,visible:!0,secondWidth:n-1,secondHeight:n-1,secondRotate:r,centerCoords:[A.center_coord_x,A.center_coord_y]}});if(I.length){let A=new sC(this.context,I);this.add(A)}}createMergedParkingTexture(g){g.map(I=>{I.iconUrl=nr[I.iconUrl];let A=new aC(this.context,I);this.add(A)})}changeParkingColor(g){this.merged?Object.keys(g).map(I=>{let A=this.parkingNoIndexMap.get(I);if(!(0,d2.isNil)(A)){var C;(C=this.mergedParkingSpace)==null||C.setParkingColorByIndex(A,g[I])}}):Object.keys(g).map(I=>{let A=this.parkingNoGraphicMap.get(I);A&&(A.options.fillColor=g[I])})}setOpacity(g,I){if(I===void 0&&(I=!1),this.parkingOptions.forEach(C=>{if(I)C.fillOpacity=g,C.strokeOpacity=g;else{let n=this.parkingOriginOptions.get(C.id);var e;C.fillOpacity=Math.min(g,(e=n==null?void 0:n.fillOpacity)!=null?e:1);var i;C.strokeOpacity=Math.min(g,(i=n==null?void 0:n.strokeOpacity)!=null?i:1)}}),this.merged)if(this.mergedParkingSpace instanceof pt)this.mergedParkingSpace.setOpacity(g,I);else{var A;(A=this.mergedParkingSpace)==null||A.setOpacity(g,I)}else this.graphicMap.forEach(C=>{C.setOpacity(g,I)});this.children.filter(C=>C instanceof sC||C instanceof aC).map(C=>C.setOpacity(g))}getParkingOptionsByParkingNo(g){return this.parkingOptions.find(A=>A.texts[0]===g)||null}getGraphicPosition(g){if(this.merged){let I=this.parkingOptions.find(A=>A.id===g);return I?[I.center_x,I.center_y]:null}}dispose(){var g;(g=this.mergedParkingSpace)==null||g.dispose(),this.mergedParkingSpace=null,U(this),this.graphicMap.clear(),this.parkingNoGraphicMap.clear(),this.parkingNoIndexMap.clear(),this.nodeIdIndexMap.clear(),this.parkingOptions=[],super.dispose()}constructor(g){super(g),this.graphicMap=new Map,this.parkingNoGraphicMap=new Map,this.parkingOriginOptions=new Map,this.parkingOptions=[],this.merged=!1,this.parkingNoIndexMap=new Map,this.nodeIdIndexMap=new Map,this.mergedParkingSpace=null}};var i7=l(W(),1);var Le=class extends pg{addModels(g){let I=g.reduce((A,C)=>{let{url:e}=C;return A[e]?A[e].push(C):A[e]=[C],A},{});Object.values(I).forEach(A=>{let C=new Ue(this.context,A);this.add(C)})}constructor(g){super(g)}};var P7=l(_(),1);var dt=require("three");var y2=require("three/examples/jsm/lines/LineMaterial.js"),lg=require("three");function m2(t){return`${t.x}-${t.y}-${t.z}`}var $g=class{static generateLineMaterialKey({color:g,opacity:I}){return`${g}-${I}`}static createLineMaterial({color:g,opacity:I,vertexColors:A}){let C=this.generateLineMaterialKey({color:g,opacity:I,vertexColors:A});if(this.lineMaterialMap.has(C))return this.lineMaterialMap.get(C);let e=new lg.LineBasicMaterial({color:new lg.Color(g).convertLinearToSRGB(),transparent:!0,opacity:I,vertexColors:A!=null?A:!1});return this.lineMaterialMap.set(C,e),e}static createMeshStandardMaterial({color:g,opacity:I}){let A=`${g}-${I}`;if(this.meshStandardMaterialMap.has(A))return this.meshStandardMaterialMap.get(A);let C=new lg.MeshStandardMaterial({color:new lg.Color(g).convertLinearToSRGB(),roughness:1,transparent:!0,opacity:I,depthWrite:!0});return this.meshStandardMaterialMap.set(A,C),C}static createMeshBasicMaterial({color:g,opacity:I,vertexColors:A}){let C=`${g}-${I}-${A}`;if(this.meshBasicMaterialMap.has(C))return this.meshBasicMaterialMap.get(C);let e=new lg.MeshBasicMaterial({color:g,transparent:!0,opacity:I,depthWrite:!0,vertexColors:A!=null?A:!1});return this.meshBasicMaterialMap.set(C,e),e}static createShaderMaterial({gradualColor:g,center:I,maxValue:A,opacity:C,direction:e,max:i,min:n}){let r=`${g.toString()}-${m2(I)}-${A}-${C}-${m2(e)}`;if(this.shaderMaterialMap.has(r))return this.shaderMaterialMap.get(r);let o=`
|
|
3979
3979
|
uniform vec3 uColor;
|
|
3980
3980
|
uniform vec3 uGradualColor;
|
|
3981
3981
|
uniform vec3 center;
|
|
@@ -8005,7 +8005,7 @@ void main() {
|
|
|
8005
8005
|
gl_FragColor = vec4(uColor2, uOpacity); // \u5176\u4ED6\u9762\u989C\u8272\uFF09
|
|
8006
8006
|
}
|
|
8007
8007
|
}
|
|
8008
|
-
`,A=-1/0,C=this.geometry.getAttribute("position");if(C)for(let i=0;i<C.count;i++){let n=C.getZ(i);n>A&&(A=n)}let e=new vg.ShaderMaterial({uniforms:{maxZ:{value:A},uColor:{value:new vg.Color(this.options[0].fillColor).convertLinearToSRGB()},uColor2:{value:new vg.Color(gA(this.options[0].fillColor)).convertLinearToSRGB()},uOpacity:{value:this.options[0].fillOpacity}},vertexShader:g,fragmentShader:I,transparent:!0});this.material=e}initLineMaterial(){let g=R.createLineMaterial({color:this.options[0].strokeColor,opacity:this.options[0].strokeOpacity});return this.lineMaterial=g,g}initMesh(){this.mesh&&this.remove(this.mesh),this.mesh=new vg.Mesh(this.geometry,this.material),this.add(this.mesh)}getBorderPoints(){let g=[],I=this.options[0].height+this.options[0].deltaHeight;return this.options.map(A=>{let{coords:C}=A.geometry;for(let e=0;e<C.length;e++){let i=C[e];for(let n=0;n<i.length;n++){let r=i[n],o=n+1===i.length?i[0]:i[n+1];g.push(new vg.Vector3(r[0],r[1],I)),g.push(new vg.Vector3(o[0],o[1],I))}}}),g}initLineGeometry(){this.lineGeometry&&this.lineGeometry.dispose();let g=this.getBorderPoints(),I=new vg.BufferGeometry().setFromPoints(g);this.lineGeometry=I}createBorder(){this.line&&this.remove(this.line);let g=new vg.LineSegments(this.lineGeometry,this.lineMaterial);return g.position.z=.01,this.line=g,this.add(g),g}dispose(){var g,I;this.geometry?(this.geometry.dispose(),this._listeners={}):this.addEventListener("init-geometry",()=>{var A;(A=this.geometry)==null||A.dispose(),this._listeners={}}),(g=this.material)==null||g.dispose(),(I=this.line)==null||I.geometry.dispose(),this.clear()}constructor(g,I,A){super(),this.context=g,this.mergedElement=A,this.options=[],A?(this.options=[A],this.initMergedElement()):(this.options=I.map(C=>D({},rC,C)),this.init())}};var Hz=l(_(),1),Lz=l(rn(),1);var uI=require("three"),P2=require("three/examples/jsm/utils/BufferGeometryUtils.js");var _2={airHeight:0,deltaHeight:0,height:0,geometry:{cds:[],type:"polygon",coords:[],curveCpt:[],curveIndex:[]},texts:[],fillColor:"#ffffff",fillOpacity:0,strokeColor:"#ffffff",strokeOpacity:0,secondHeight:0,secondRotate:0,center_x:0,center_y:0},Ii=class extends uI.Object3D{init(){return m(this,null,function*(){let g=yield Promise.all(this.options.map(i=>ag.getTextureByText(i.texts[0],{fillStyle:on(i.fillColor,i.fillOpacity),strokeStyle:on(i.strokeColor,i.strokeOpacity),lineWidth:6,font:"bold 54px sans-serif",maxWidth:2048}))),I=g.map((i,n)=>{let r=this.options[n],{width:o,height:s}=i.texture.image,a=o/s,u=r.secondHeight*a,c=new uI.PlaneGeometry(u,r.secondHeight),h=new uI.Matrix4().makeTranslation(r.center_x,r.center_y,r.airHeight+r.deltaHeight+r.height).multiply(new uI.Matrix4().makeRotationZ(r.secondRotate));return c.applyMatrix4(h),c}),A=(0,P2.mergeGeometries)(I,!0);I.forEach(i=>i.dispose());let C=g.map(i=>{let{texture:n}=i,r=new uI.MeshBasicMaterial({map:n,alphaTest:1,side:uI.DoubleSide});return n.needsUpdate=!0,r}),e=new uI.Mesh(A,C);this.mesh=e,this.position.z+=.04,this.add(e)})}setOpacity(g){var I,A;(A=this.mesh)==null||(I=A.material)==null||I.forEach(C=>{C.opacity=g,C.needsUpdate=!0})}dispose(){var g,I,A;(g=this.mesh)==null||g.geometry.dispose(),(A=this.mesh)==null||(I=A.material)==null||I.forEach(C=>C.dispose()),this.clear()}constructor(g,I){super(),this.context=g,this.options=I.map(A=>D({},_2,A)).filter(A=>A.texts[0].trim()),this.options.length&&this.init()}};var E2=require("three"),b2=require("three/examples/jsm/lines/Line2.js"),x2=require("three/examples/jsm/lines/LineGeometry.js"),K2=require("three/examples/jsm/lines/LineMaterial.js"),yt=class extends E2.Object3D{registryEvent(){this.context.addEventListener("resize",this.onResize)}unRegistryEvent(){this.context.removeEventListener("resize",this.onResize)}setPosition(g,I){this.lineGeometry.setPositions([g.x,g.y,g.z,I.x,I.y,I.z]),this.line||this.createLine()}createLine(){this.line=new b2.Line2(this.lineGeometry,this.lineMaterial),this.line.renderOrder=100003,this.add(this.line)}dispose(){var g;this.unRegistryEvent(),this.line&&U(this.line),this.lineGeometry=null,this.lineMaterial=null,this.clear(),(g=this.line)==null||g.clear(),this.line=null}constructor(g,I,A){super(),this.context=g,this.lineGeometry=new x2.LineGeometry,this.lineMaterial=new K2.LineMaterial({color:0,transparent:!0,depthTest:!1,linewidth:2}),this.line=null,this.onResize=()=>{let{width:C,height:e}=this.context.clientSize;this.lineMaterial.resolution.set(C,e)},this.onResize(),this.registryEvent(),I&&A&&this.setPosition(I,A)}};var qz=l(W(),1),$z=l(_(),1),cC=require("three");var St=require("three");var Ue=class extends cC.Object3D{loadModel(){return m(this,null,function*(){let g=yield Fg.loadModel(this.options[0].url);g.scene.updateMatrixWorld(!0);let I=g.scene.matrixWorld.clone().invert();g.scene.traverse(r=>{if(r.isMesh){let o=I.clone().multiply(r.matrixWorld),s=r.material;this.subMeshes.push({geometry:r.geometry,material:r.material,initialMatrix:o}),Array.isArray(s)?s.forEach(a=>{a.transparent=!0,this.materialOriginParams.set(a,{opacity:a.opacity})}):(s.transparent=!0,this.materialOriginParams.set(s,{opacity:s.opacity}))}});let A=this.subMeshes.map(r=>{let{geometry:o,material:s}=r;return new cC.InstancedMesh(o,s,this.options.length)});g.scene.rotation.set(Math.PI/2,0,0);let e=new cC.Box3().setFromObject(g.scene).getSize(new cC.Vector3),i=Math.max(e.x,e.y);this.options.map(r=>{let o=new St.Matrix4,s=r.width/i;return o.multiply(new St.Matrix4().makeTranslation(r.center_x,r.center_y,r.airHeight+r.deltaHeight)).multiply(new St.Matrix4().makeScale(s,s,s)).multiply(new St.Matrix4().makeRotationZ(r.rotate)).multiply(new St.Matrix4().makeRotationX(Math.PI/2)),r.url==="https://robot-vr-public.cdn.bcebos.com/ai-map-resource/757/1865371442288267264/smzsdrc.glb"&&console.log(r,o),o}).forEach((r,o)=>{A.forEach((s,a)=>{let u=r.clone().multiply(this.subMeshes[a].initialMatrix);s.setMatrixAt(o,u)})}),A.forEach(r=>{r.instanceMatrix.needsUpdate=!0,this.meshSetMaterial(r),this.add(r)})})}meshSetMaterial(g){g.isMesh&&(g.frustumCulled=!1,g.castShadow=!0,Array.isArray(g.material)?g.material.map(I=>{I.emissiveIntensity*=.95,I.emissive=I.color,I.emissiveMap=I.map}):(g.material.emissiveIntensity*=.95,g.material.emissive=g.material.color,g.material.emissiveMap=g.material.map))}setOpacity(g,I){I===void 0&&(I=!1),this.subMeshes.forEach(A=>{let{material:C}=A;if(Array.isArray(C))C.forEach(e=>{if(I)e.opacity=g;else{let i=this.materialOriginParams.get(e)||{opacity:1};g>i.opacity?e.opacity=i.opacity:e.opacity=g}e.needsUpdate=!0});else{let e=this.materialOriginParams.get(C)||{opacity:1};g>e.opacity?C.opacity=e.opacity:C.opacity=g,C.needsUpdate=!0}}),this.children.forEach(A=>{A.instanceMatrix.needsUpdate=!0})}dispose(){this.children.forEach(g=>g.dispose()),U(this),this.clear()}constructor(g,I){super(),this.context=g,this.options=I,this.subMeshes=[],this.materialOriginParams=new Map,this.loadModel()}};var hC=require("three");var uC=class extends hC.Object3D{init(){return m(this,null,function*(){this.geometry=this.initGeometry(),this.initMaterial(),this.initMesh(),this.mesh.position.z=this.options.deltaHeight+this.options.airHeight,this.options.lineGeometry&&(this.initLineMaterial(),this.initLineGeometry(),this.createBorder())})}initGeometry(){return this.loader.parseGeometries([this.options.mergedGeometry])[this.options.mergedGeometry.uuid]}initMaterial(){this.material=R.GetMergeAttributeGraphicMaterial()}initLineMaterial(){return this.lineMaterial=R.GetMergeAttributeGraphicLineMaterial()}initMesh(){this.mesh&&this.remove(this.mesh),this.mesh=new hC.Mesh(this.geometry,this.material),this.add(this.mesh)}initLineGeometry(){this.lineGeometry&&this.lineGeometry.dispose();let g=this.loader.parseGeometries([this.options.lineGeometry]);this.lineGeometry=g[this.options.lineGeometry.uuid]}createBorder(){this.line&&this.remove(this.line);let g=new hC.LineSegments(this.lineGeometry,this.lineMaterial);return g.position.z=.01,this.line=g,this.add(g),g}dispose(){var g;this.geometry&&this.geometry.dispose(),(g=this.line)==null||g.geometry.dispose(),this.clear()}constructor(g,I){super(),this.context=g,this.loader=new hC.ObjectLoader,this.options=D({},rC,I),this.init()}};var Dt=require("three");var Ai=class extends Dt.Object3D{initGeometry(){return m(this,null,function*(){let g=new Dt.ObjectLoader().parseGeometries([this.options.mergedGeometry]);this.geometry=g[this.options.mergedGeometry.uuid]})}init(){return m(this,null,function*(){var g;yield this.initGeometry();let I=new Dt.Mesh(this.geometry,$g.GetMergeAttributeWallMaterial());this.add(I);let A=(g=this.geometry)==null?void 0:g.getAttribute("opacity");A&&(this.originOpacities=Array.from(A.array))})}setOpacity(g,I){I===void 0&&(I=!1);var A;let C=(A=this.geometry)==null?void 0:A.getAttribute("opacity");if(C){for(let i=0;i<C.count;i++)if(I)C.setX(i,g);else{var e;C.setX(i,Math.min(g,(e=this.originOpacities[i])!=null?e:1))}C.needsUpdate=!0}}dispose(){var g;(g=this.geometry)==null||g.dispose(),this.clear()}constructor(g,I){super(),this.context=g,this.options=I,this.originOpacities=[],this.init()}};var lJ=l(TC(),1),cJ=l(yA(),1),hJ=l(SA(),1),pJ=l(DA(),1),fJ=l(wA(),1),dJ=l(BA(),1),mJ=l(MA(),1),yJ=l(vA(),1),SJ=l(PA(),1),DJ=l(_A(),1),wJ=l(EA(),1),BJ=l(bA(),1),MJ=l(xA(),1),vJ=l(KA(),1),PJ=l(GA(),1);var fg=require("three");var aC=class extends fg.Object3D{init(){return m(this,null,function*(){let g=this.options.iconUrl,I=yield wg.getTextureByUrl(g),A=new fg.MeshBasicMaterial({map:I,transparent:!0,alphaTest:.2,side:fg.FrontSide}),C=new fg.InstancedMesh(this.geometry,A,this.options.mergedMatrixes.size);C.instanceMatrix=new fg.InstancedBufferAttribute(new Float32Array(this.options.mergedMatrixes.array),16),this.add(C),this.mesh=C,this.position.z+=.004})}setOpacity(g){this.mesh&&(this.mesh.material.opacity=g,this.mesh.material.needsUpdate=!0,this.mesh.instanceMatrix.needsUpdate=!0)}dispose(){var g;this.mesh&&U(this.mesh),(g=this.mesh)==null||g.dispose(),this.clear()}constructor(g,I){super(),this.context=g,this.geometry=new fg.ShapeGeometry(new fg.Shape([new fg.Vector2(-.5,-.5),new fg.Vector2(-.5,.5),new fg.Vector2(.5,.5),new fg.Vector2(.5,-.5)])),this.options=D({},mr,I);let A=new fg.Float32BufferAttribute([0,0,0,1,1,1,1,0],2);this.geometry.setAttribute("uv",A),this.init()}};var GJ=l(W(),1),jA=require("three");var g0=require("three/examples/jsm/lines/LineSegments2.js"),I0=require("three/examples/jsm/lines/LineSegmentsGeometry.js");var Ci=class extends jA.Object3D{initGeometry(){return m(this,null,function*(){let g=this.loader.parseGeometries([this.options.mergedGeometry]);this.geometry=g[this.options.mergedGeometry.uuid]})}initMaterial(){let g=R.createMeshBasicMaterial({color:"#ffffff",opacity:1,vertexColors:!0});return this.material=g,g}initDoubleLine(){if(this.options.dashedLineGeometry){let g=R.createLine2MaterialMap({color:"#ffffff",width:.2,dashed:!0,resolution:new jA.Vector2(this.context.clientSize.width,this.context.clientSize.height),vertexColors:!0});g.transparent=!0,g.needsUpdate=!0;let I=new I0.LineSegmentsGeometry;I.setPositions(this.options.dashedLineGeometry.positions),I.setColors(this.options.dashedLineGeometry.colors);let A=new g0.LineSegments2(I,g);A.computeLineDistances(),A.position.z+=.01,this.add(A),this.doubleLines.push(A)}if(this.options.lineGeometry){let g=R.createLine2MaterialMap({color:"#ffffff",width:.2,dashed:!1,resolution:new jA.Vector2(this.context.clientSize.width,this.context.clientSize.height),vertexColors:!0}),I=new I0.LineSegmentsGeometry;I.setPositions(this.options.lineGeometry.positions),I.setColors(this.options.lineGeometry.colors);let A=new g0.LineSegments2(I,g);A.position.z+=.01,this.add(A),this.doubleLines.push(A)}}init(){return m(this,null,function*(){yield this.initGeometry(),this.initMaterial();let g=new jA.Mesh(this.geometry,this.material);this.add(g),this.initDoubleLine(),this.position.z+=.02})}setOpacity(g){this.material.opacity=g,this.material.needsUpdate=!0,this.doubleLines.forEach(I=>{I.material.opacity=g,I.material.needsUpdate=!0})}dispose(){var g,I;(g=this.geometry)==null||g.dispose(),(I=this.lineGeometry)==null||I.dispose(),this.doubleLines.map(A=>A.geometry.dispose()),this.clear()}constructor(g,I){super(),this.context=g,this.options=I,this.doubleLines=[],this.loader=new jA.ObjectLoader,this.init()}};var RJ=l(TC(),1),NJ=l(yA(),1),WJ=l(SA(),1),FJ=l(DA(),1),ZJ=l(wA(),1),kJ=l(BA(),1),HJ=l(MA(),1),LJ=l(vA(),1),UJ=l(PA(),1),XJ=l(_A(),1),VJ=l(EA(),1),zJ=l(bA(),1),JJ=l(xA(),1),QJ=l(KA(),1),qJ=l(GA(),1),$J=l(_(),1),Ig=require("three");var pt=class extends Ig.Object3D{setParkingColorByIndex(g,I){this.mesh&&(this.mesh.setColorAt(g,new Ig.Color(I).convertLinearToSRGB()),this.mesh.instanceColor.needsUpdate=!0)}init(){return m(this,null,function*(){this.initMaterial(),this.initMesh(),this.mesh.position.z=this.options[0].deltaHeight+this.options[0].airHeight,this.options[0].strokeOpacity!==0&&(this.initLineMaterial(),this.initLineGeometry(),this.createBorder())})}initMaterial(){this.material=R.GetInstancedParkingSpaceMaterial()}initLineMaterial(){let g=R.GetMergeAttributeGraphicLineMaterial();this.lineMaterial=g}initMesh(){this.mesh&&this.remove(this.mesh),this.mesh=new Ig.InstancedMesh(this.geometry,this.material,this.options.length);let g=new Ig.InstancedBufferAttribute(new Float32Array(this.options.length),1),I=new Ig.InstancedBufferAttribute(new Float32Array(this.options.length),1);this.options.forEach((A,C)=>{let e=A.geometry.coords[0],[i,n,r]=e.slice(0,3),o=Math.sqrt((n[0]-i[0])**2+(n[1]-i[1])**2),s=Math.sqrt((r[0]-n[0])**2+(r[1]-n[1])**2),a=[o,s],u=Math.max(...a),c=Math.min(...a),h;u===o?h=[n[0]-i[0],n[1]-i[1]]:h=[r[0]-n[0],r[1]-n[1]];let[f,d]=h,S=Math.atan2(d,f)-Math.PI/2,w=new Ig.Matrix4().compose(new Ig.Vector3(A.center_coord_x,A.center_coord_y,(A.deltaHeight||0)+A.airHeight+A.height/2),new Ig.Quaternion().setFromAxisAngle(new Ig.Vector3(0,0,1),S),new Ig.Vector3(c,u,A.height));this.mesh.setMatrixAt(C,w),this.mesh.setColorAt(C,new Ig.Color(A.fillColor).convertLinearToSRGB()),g.array[C]=A.fillOpacity||1,I.array[C]=(A.deltaHeight||0)+A.airHeight+A.height}),this.originOpacity=[...g.array],this.geometry.setAttribute("opacity",g),this.geometry.setAttribute("maxZ",I),this.add(this.mesh),this.mesh.instanceMatrix.needsUpdate=!0}initLineGeometry(){this.lineGeometry&&this.lineGeometry.dispose();let{points:g,colors:I,opacities:A}=Fn(this.options),C=new Ig.BufferGeometry().setFromPoints(g);C.setAttribute("color",new Ig.BufferAttribute(new Float32Array(I),3)),C.setAttribute("opacity",new Ig.BufferAttribute(new Float32Array(A),1)),this.lineOriginOpacity=[...A],this.lineGeometry=C}createBorder(){this.line&&this.remove(this.line);let g=new Ig.LineSegments(this.lineGeometry,this.lineMaterial);return g.position.z=.01,this.line=g,this.add(g),g}setOpacity(g,I){I===void 0&&(I=!1);let A=this.geometry.getAttribute("opacity");for(let i=0;i<A.count;i++)if(I)A.array[i]=g;else{var C;A.array[i]=Math.min(g,(C=this.originOpacity[i])!=null?C:1)}if(A.needsUpdate=!0,this.lineGeometry){let i=this.lineGeometry.getAttribute("opacity");for(let n=0;n<i.count;n++)if(I)i.array[n]=g;else{var e;i.array[n]=Math.min(g,(e=this.lineOriginOpacity[n])!=null?e:1)}i.needsUpdate=!0}}dispose(){var g,I;this.geometry.dispose(),(g=this.mesh)==null||g.dispose(),(I=this.line)==null||I.geometry.dispose(),this.clear()}constructor(g,I){super(),this.context=g,this.geometry=new Ig.BoxGeometry(1,1,1),this.options=[],this.originOpacity=[],this.lineOriginOpacity=[],this.options=I.map(A=>D({},rC,A)),this.init()}};var eQ=l(TC(),1),iQ=l(yA(),1),nQ=l(SA(),1),rQ=l(DA(),1),oQ=l(wA(),1),sQ=l(BA(),1),aQ=l(MA(),1),uQ=l(vA(),1),lQ=l(PA(),1),cQ=l(_A(),1),hQ=l(EA(),1),pQ=l(bA(),1),fQ=l(xA(),1),dQ=l(KA(),1),mQ=l(GA(),1),yQ=l(_(),1),Rg=require("three");var He=class extends Rg.Object3D{init(){return m(this,null,function*(){this.initMaterial(),this.initMesh(),this.option.lineGeometry&&(this.initLineMaterial(),this.initLineGeometry(),this.createBorder())})}setParkingColorByIndex(g,I){this.mesh&&(this.mesh.setColorAt(g,new Rg.Color(I).convertLinearToSRGB()),this.mesh.instanceColor.needsUpdate=!0)}initMaterial(){this.material=R.GetInstancedParkingSpaceMaterial()}initLineMaterial(){return this.lineMaterial=R.GetMergeAttributeGraphicLineMaterial()}initMesh(){this.mesh&&this.remove(this.mesh),this.mesh=new Rg.InstancedMesh(this.geometry,this.material,this.option.size);let g=new Rg.InstancedBufferAttribute(new Float32Array(this.option.opacities),1),I=new Rg.InstancedBufferAttribute(new Float32Array(this.option.maxZ),1);this.mesh.instanceMatrix=new Rg.InstancedBufferAttribute(new Float32Array(this.option.matrixes),16),this.mesh.instanceColor=new Rg.InstancedBufferAttribute(new Float32Array(this.option.colors),3),this.geometry.setAttribute("opacity",g),this.geometry.setAttribute("maxZ",I),this.mesh.instanceMatrix.needsUpdate=!0,this.originOpacity=[...this.option.opacities],this.add(this.mesh)}initLineGeometry(){if(this.lineGeometry&&this.lineGeometry.dispose(),this.option.lineGeometry){let g=new Rg.ObjectLoader().parseGeometries([this.option.lineGeometry]);this.lineGeometry=g[this.option.lineGeometry.uuid];let I=this.lineGeometry.getAttribute("opacity");this.lineOriginOpacity=[...I.array]}}createBorder(){this.line&&this.remove(this.line);let g=new Rg.LineSegments(this.lineGeometry,this.lineMaterial);return g.position.z=.01,this.line=g,this.add(g),g}setOpacity(g,I){I===void 0&&(I=!1);let A=this.geometry.getAttribute("opacity");for(let i=0;i<A.count;i++)if(I)A.array[i]=g;else{var C;A.array[i]=Math.min(g,(C=this.originOpacity[i])!=null?C:1)}if(A.needsUpdate=!0,this.lineGeometry){let i=this.lineGeometry.getAttribute("opacity");for(let n=0;n<i.count;n++)if(I)i.array[n]=g;else{var e;i.array[n]=Math.min(g,(e=this.lineOriginOpacity[n])!=null?e:1)}i.needsUpdate=!0}}dispose(){var g,I;this.geometry.dispose(),(g=this.mesh)==null||g.dispose(),(I=this.line)==null||I.geometry.dispose(),this.clear()}constructor(g,I){super(),this.context=g,this.geometry=new Rg.BoxGeometry(1,1,1),this.originOpacity=[],this.lineOriginOpacity=[],this.option=I,this.init()}};var G2=require("three"),yr=class extends aI{setEnable(g){super.setEnable(g),Wg(this.rect,0,0,0,0),g?this.registryEvent():(this.startPoint=void 0,this.unRegistryEvent())}registryEvent(){this.context.container.addEventListener("pointerdown",this.onPointerDown),this.context.container.addEventListener("pointermove",this.onPointerMove),this.context.container.addEventListener("pointerup",this.onPointerUp),this.context.addEventListener("update",this.onUpdate)}unRegistryEvent(){this.context.container.removeEventListener("pointerdown",this.onPointerDown),this.context.container.removeEventListener("pointermove",this.onPointerMove),this.context.container.removeEventListener("pointerup",this.onPointerUp),this.context.removeEventListener("update",this.onUpdate)}doSelect(){if(this.startPoint&&this.endPoint){if(this.startPoint.distanceTo(this.endPoint)<.1)return;let{context:{camera:I,container:{clientWidth:A,clientHeight:C}}}=this,e=j(this.startPoint,I,A,C),i=j(this.endPoint,I,A,C),n={x:Math.min(e.x,i.x),y:Math.min(e.y,i.y)},r={x:Math.max(e.x,i.x),y:Math.max(e.y,i.y)},o=this.searchMapInFrustum(n,r);this.dispatchEvent({type:"selected",list:o})}}searchMapInFrustum(g,I){var A;let{context:C}=this;return((A=C.currentFloor)==null?void 0:A.graphicLayer.children.filter(e=>e instanceof Bg&&this.searchChildInFrustum(e,g,I)))||[]}searchChildInFrustum(g,I,A){let{context:{camera:C,container:{clientWidth:e,clientHeight:i}}}=this;if(!g)return!1;if(!g.mesh){let u=g.getPosition();if(u){let c=j(u,C,e,i);return lA(c,I,A)}return!1}g.mesh.geometry.boundingBox||g.mesh.geometry.computeBoundingBox();let n=g.mesh.geometry.boundingBox;if(!n)return!1;let{min:r,max:o}=n,s=j(r,C,e,i),a=j(o,C,e,i);return!(!lA(s,I,A)||!lA(a,I,A))}dispose(){super.dispose(),this.rect=null,this.unRegistryEvent()}constructor(g){super(g),this.frustum=new G2.Frustum,this.onPointerDown=C=>{if(!this.enable)return;let e=this.getIntersectByPointerEvent(C);e&&(this.startPoint=e),this.endPoint=void 0},this.onPointerMove=C=>{if(!this.enable||!this.startPoint)return;let e=this.getIntersectByPointerEvent(C);e&&(this.endPoint=e)},this.onPointerUp=C=>{if(!this.enable)return;let e=this.getIntersectByPointerEvent(C);e&&(this.endPoint=e),this.doSelect(),this.startPoint=void 0},this.onUpdate=()=>{if(this.startPoint){let C=this.getSvgCoordinate(this.startPoint),e=D({},C);this.endPoint&&(e=this.getSvgCoordinate(this.endPoint));let i={x:Math.min(C.x,e.x),y:Math.min(C.y,e.y)},n=Math.abs(e.x-C.x),r=Math.abs(e.y-C.y);Wg(this.rect,i.x,i.y,n,r)}else Wg(this.rect,0,0,0,0)};let{config:{selectBox:{fill:I,stroke:A}}}=g;this.rect=cA(A,I),this.svg.appendChild(this.rect),this.registryEvent()}};var ti=class extends T2.EventDispatcher{get list(){return this._list}enableBoxSelection(){this.isMultipleSelect||!this.context.config.enableBoxSelect||(this.isMultipleSelect=!0,this.boxSelection.setEnable(!0),this.prevPanStatus=this.context.control.enablePan,this.prevRotateStatus=this.context.control.enableRotate,this.context.control.enablePan=!1,this.context.control.enableRotate=!1)}disableBoxSelection(){this.isMultipleSelect&&(this.isMultipleSelect=!1,this.boxSelection.setEnable(!1),this.context.control.enablePan=!!this.prevPanStatus,this.context.control.enableRotate=!!this.prevRotateStatus)}selectEnd(){this.dispatchEvent({type:"select",graphics:[...this._list],isMultipleSelect:this.isMultipleSelect})}registryEvent(){this.context.container.addEventListener("pointerdown",this.onPointerDown),this.context.container.addEventListener("pointerup",this.onPointerUp),this.context.container.addEventListener("pointerout",this.onPointerOut),this.context.container.addEventListener("pointercancel",this.onPointerOut),window.addEventListener("keydown",this.onKeyDown),window.addEventListener("keyup",this.onKeyUp),this.boxSelection.addEventListener("selected",this.onBoxSelected)}unRegistryEvent(){this.context.container.removeEventListener("pointerdown",this.onPointerDown),this.context.container.removeEventListener("pointerup",this.onPointerUp),this.context.container.removeEventListener("pointerout",this.onPointerOut),this.context.container.removeEventListener("pointercancel",this.onPointerOut),window.removeEventListener("keydown",this.onKeyDown),window.removeEventListener("keyup",this.onKeyUp),this.boxSelection.removeEventListener("selected",this.onBoxSelected)}clear(){this._list.clear()}remove(g){this._list.delete(g)}dispose(){this.unRegistryEvent()}constructor(g){super(),this.context=g,this._list=new Set,this.downPoint=null,this.downTime=0,this.isMultipleSelect=!1,this.onPointerDown=I=>{Date.now()-this.downTime<200||(this.downPoint={x:I.offsetX,y:I.offsetY},this.downTime=Date.now())},this.onPointerUp=I=>{if(!this.downPoint)return;let{offsetX:A,offsetY:C}=I,{x:e,y:i}=this.downPoint;if(Math.sqrt((e-A)**2+(i-C)**2)>3)return;let{graphics:n}=this.context.getGraphicsByDeviceXy(A,C),r=new Set(n.map(s=>s.options.id));this.context.getPoisByDeviceXy(A,C).forEach(s=>{if(!r.has(s.options.id)){var a;let u=((a=this.context.currentFloor)==null?void 0:a.graphicLayer.graphicMap.get(s.options.id))||null;u&&u.options.geometry.type==="point"&&(n.push(u),r.add(s.options.id))}}),(MC?I.metaKey:I.ctrlKey)||this._list.clear(),n.forEach(s=>this._list.add(s)),this.selectEnd(),this.downPoint=null},this.onPointerOut=I=>{this.disableBoxSelection()},this.onKeyDown=I=>{vC(I.key)&&this.enableBoxSelection()},this.onKeyUp=I=>{vC(I.key)&&this.disableBoxSelection()},this.onBoxSelected=I=>{let{list:A}=I;this._list.clear(),A.forEach(C=>{this._list.add(C)}),this.selectEnd()},this.boxSelection=new yr(g),this.boxSelection.setEnable(!1),this.registryEvent()}};var WQ=l(OI(),1),FQ=l(YI(),1),ZQ=l(jI(),1),kQ=l(RI(),1),HQ=l(NI(),1),LQ=l(WI(),1),UQ=l(FI(),1),XQ=l(_(),1);var Sr=require("three");var ei=class extends Sr.EventDispatcher{handleHoverGraphicsChange(g){g===void 0&&(g=this.curGraphics),this.dispatchEvent({type:"hover-change",graphics:Array.from(g)})}registryEvent(){this.context.addEventListener("pointer-over",this.onPointerMove),this.context.addEventListener("pointer-move",this.onPointerMove),this.context.addEventListener("pointer-level",this.onPointerLevel),document.body.addEventListener("pointermove",this.onBodyPointerMove)}unRegistryEvent(){this.context.removeEventListener("pointer-over",this.onPointerMove),this.context.removeEventListener("pointer-move",this.onPointerMove),this.context.removeEventListener("pointer-level",this.onPointerLevel),document.body.removeEventListener("pointermove",this.onBodyPointerMove)}dispose(){this.unRegistryEvent(),this.timer.dispose()}constructor(g){super(),this.context=g,this.curGraphics=new Set,this.timer=new tg,this.graphicTimerMap=new Map,this.onPointerMove=I=>{let{graphics:A,pois:C,e}=I,i=C.map(s=>{var a;return(a=this.context.currentFloor)==null?void 0:a.graphicLayer.graphicMap.get(s.options.id)}).filter(s=>s&&s.options.geometry.type==="point");if(!A.length&&!i.length&&this.curGraphics.size){this.curGraphics.clear(),this.handleHoverGraphicsChange();return}let{time:n}=this.context.config.hover,r=new Set;if(i.length){let s,a=1e4;i.forEach(u=>{let c=C.find(h=>h.options.id===u.options.id);if(c instanceof oC){let{x:h,y:f}=c.clientPos,d=Math.sqrt((h-e.offsetX)**2+(f-e.offsetY)**2);d<a&&(a=d,s=u)}else if(c instanceof ug){let{x:h,y:f}=c.box.getCenter(new Sr.Vector2),d=Math.sqrt((h-e.offsetX)**2+(f-e.offsetY)**2);d<a&&(a=d,s=u)}}),r.add(s)}r.size||A.forEach(s=>r.add(s)),r.forEach(s=>{if(this.graphicTimerMap.get(s)||this.curGraphics.has(s))return;let a=this.timer.setTimeout(()=>{this.curGraphics.add(s),this.graphicTimerMap.delete(s),this.timer.clearTimeout(a),this.handleHoverGraphicsChange()},n);this.graphicTimerMap.set(s,a)}),this.graphicTimerMap.forEach((s,a)=>{r.has(a)||(this.timer.clearTimeout(s),this.graphicTimerMap.delete(a))});let o=this.curGraphics.size;this.curGraphics.forEach(s=>{r.has(s)||this.curGraphics.delete(s)}),o!==this.curGraphics.size&&this.handleHoverGraphicsChange()},this.onPointerLevel=()=>{this.curGraphics.clear(),this.handleHoverGraphicsChange()},this.onBodyPointerMove=I=>{if(this.curGraphics.size){let A=this.context.container.getBoundingClientRect();(I.clientX<A.left||I.clientX>A.right||I.clientY<A.top||I.clientY>A.bottom)&&this.onPointerLevel()}},this.registryEvent()}};var QQ=l(_(),1),lI=require("three");var ii=require("@turf/turf"),Dr=class{updateBox(){this.box.setFromObject(this.context.scene)}setEnable(g){this.enable=g,g?this.registryEvent():this.unRegistryEvent()}changePrevCamera(){this.prevCamera={position:this.context.camera.position.clone(),zoom:this.context.camera.zoom,target:this.context.control.target.clone()}}backToPrevCamera(){this.setEnable(!1),this.context.camera.position.copy(this.prevCamera.position),this.context.camera.zoom=this.prevCamera.zoom,this.context.control.target.copy(this.prevCamera.target),this.context.control.update(),this.setEnable(!0)}registryEvent(){this.context.addEventListener("control-change",this.onCameraChange)}unRegistryEvent(){this.context.removeEventListener("control-change",this.onCameraChange)}getCurFloorScreenPosition(){if(!this.context.scene.children.filter(h=>h instanceof sI).length)return null;let I=this.box,{camera:A,clientSize:{width:C,height:e}}=this.context,{min:i,max:n}=I,o=[new lI.Vector3(i.x,i.y,i.z),new lI.Vector3(n.x,i.y,i.z),new lI.Vector3(i.x,n.y,i.z),new lI.Vector3(n.x,n.y,i.z),new lI.Vector3(i.x,i.y,n.z),new lI.Vector3(n.x,i.y,n.z),new lI.Vector3(i.x,n.y,n.z),new lI.Vector3(n.x,n.y,n.z)].map(h=>j(h,A,C,e)),s=Math.min(...o.map(h=>h.x)),a=Math.max(...o.map(h=>h.x)),u=Math.min(...o.map(h=>h.y)),c=Math.max(...o.map(h=>h.y));return{left:s,right:a,top:u,bottom:c}}checkDistanceToScreenEdge(g){let{left:I,right:A,top:C,bottom:e}=g,{width:i,height:n}=this.context.clientSize,[r,o,s,a]=this.context.config.cameraBound.padding,u=(0,ii.polygon)([[[I,C],[A,C],[A,e],[I,e],[I,C]]]),c=(0,ii.polygon)([[[a,r],[i-o,r],[i-o,n-s],[a,n-s],[a,r]]]);try{return(0,ii.intersect)(u,c)!==null}catch(h){return console.warn("\u8BA1\u7B97\u4EA4\u96C6\u51FA\u9519:",h),!1}}dispose(){this.unRegistryEvent()}constructor(g){this.context=g,this.prevCamera={position:new lI.Vector3,zoom:1,target:new lI.Vector3},this.enable=!0,this.box=new lI.Box3,this.onCameraChange=()=>{let I=this.getCurFloorScreenPosition();if(I){let{left:A,right:C,top:e,bottom:i}=I;this.checkDistanceToScreenEdge({left:A,right:C,top:e,bottom:i})?this.changePrevCamera():this.backToPrevCamera()}},this.registryEvent(),this.changePrevCamera()}};var s8=l(t0(),1),e0=require("three"),WC=require("@tweenjs/tween.js");var n8=l(_(),1),r8=l(W(),1),P=require("three"),Br=new P.Ray,V2=new P.Plane,D4=Math.cos(70*P.MathUtils.DEG2RAD),Mr=class extends P.EventDispatcher{dispose(){this.domElement.removeEventListener("contextmenu",this.onContextMenu),this.domElement.removeEventListener("pointerdown",this.onPointerDown),this.domElement.removeEventListener("pointercancel",this.onPointerUp),this.domElement.removeEventListener("wheel",this.onMouseWheel),this.domElement.removeEventListener("pointermove",this.onPointerMove),this.domElement.removeEventListener("pointerup",this.onPointerUp),this._domElementKeyEvents!==null&&(this._domElementKeyEvents.removeEventListener("keydown",this.onKeyDown),this._domElementKeyEvents=null)}constructor(g,I){super(),this.rotateLineStart=new P.Vector2,this.rotateLineEnd=new P.Vector2,this.spherical=new P.Spherical,this.sphericalDelta=new P.Spherical,this.object=g,this.domElement=I,this.domElement.style.touchAction="none",this.enabled=!0,this.target=new P.Vector3,this.minDistance=0,this.maxDistance=1/0,this.minZoom=0,this.maxZoom=1/0,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.minAzimuthAngle=-1/0,this.maxAzimuthAngle=1/0,this.enableDamping=!1,this.dampingFactor=.05,this.enableZoom=!0,this.zoomSpeed=1,this.enableRotate=!0,this.rotateSpeed=1,this.enablePan=!0,this.panSpeed=1,this.keyPanSpeed=7,this.zoomToCursor=!1,this.autoRotate=!1,this.autoRotateSpeed=2,this.keys={LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",BOTTOM:"ArrowDown"},this.screenSpacePanning=!1,this.mouseButtons={LEFT:P.MOUSE.PAN,MIDDLE:P.MOUSE.DOLLY,RIGHT:P.MOUSE.ROTATE},this.touches={ONE:P.TOUCH.PAN,TWO:P.TOUCH.DOLLY_ROTATE},this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this._domElementKeyEvents=null,this.getPolarAngle=function(){return n.phi},this.getAzimuthalAngle=function(){return n.theta},this.getDistance=function(){return this.object.position.distanceTo(this.target)},this.listenToKeyEvents=function(y){y.addEventListener("keydown",this.onKeyDown),this._domElementKeyEvents=y},this.stopListenToKeyEvents=function(){var y;(y=this._domElementKeyEvents)==null||y.removeEventListener("keydown",this.onKeyDown),this._domElementKeyEvents=null},this.saveState=function(){A.target0.copy(A.target),A.position0.copy(A.object.position),A.zoom0=A.object.zoom},this.reset=function(){A.target.copy(A.target0),A.object.position.copy(A.position0),A.object.zoom=A.zoom0,A.object.updateProjectionMatrix(),A.dispatchEvent({type:"change"}),A.update(),e=C.NONE},this.update=function(){let y=new P.Vector3,B=new P.Quaternion().setFromUnitVectors(g.up,new P.Vector3(0,1,0)),Ag=B.clone().invert(),cg=new P.Vector3,CI=new P.Quaternion,zI=new P.Vector3,bI=2*Math.PI;return function(Tt){Tt===void 0&&(Tt=null);let nA=A.object.position;y.copy(nA).sub(A.target),y.applyQuaternion(B),n.setFromVector3(y),A.autoRotate&&e===C.NONE&&E(b(Tt)),A.enableDamping?(n.theta+=r.theta*A.dampingFactor,n.phi+=r.phi*A.dampingFactor):(n.theta+=r.theta,n.phi+=r.phi);let rA=A.minAzimuthAngle,oA=A.maxAzimuthAngle;isFinite(rA)&&isFinite(oA)&&(rA<-Math.PI?rA+=bI:rA>Math.PI&&(rA-=bI),oA<-Math.PI?oA+=bI:oA>Math.PI&&(oA-=bI),rA<=oA?n.theta=Math.max(rA,Math.min(oA,n.theta)):n.theta=n.theta>(rA+oA)/2?Math.max(rA,n.theta):Math.min(oA,n.theta)),n.phi=Math.max(A.minPolarAngle,Math.min(A.maxPolarAngle,n.phi)),n.makeSafe(),A.enableDamping===!0?A.target.addScaledVector(s,A.dampingFactor):A.target.add(s),A.zoomToCursor&&N||A.object.isOrthographicCamera?n.radius=Vr(n.radius):n.radius=Vr(n.radius*o),y.setFromSpherical(n),y.applyQuaternion(Ag),nA.copy(A.target).add(y),A.object.lookAt(A.target),A.enableDamping===!0?(r.theta*=1-A.dampingFactor,r.phi*=1-A.dampingFactor,s.multiplyScalar(1-A.dampingFactor)):(r.set(0,0,0),s.set(0,0,0));let fi=!1;if(A.zoomToCursor&&N){let Ot=null;if(A.object.isPerspectiveCamera){let Yt=y.length();Ot=Vr(Yt*o);let di=Yt-Ot;A.object.position.addScaledVector(K,di),A.object.updateMatrixWorld()}else if(A.object.isOrthographicCamera){let Yt=new P.Vector3(O.x,O.y,0);Yt.unproject(A.object),A.object.zoom=Math.max(A.minZoom,Math.min(A.maxZoom,A.object.zoom/o)),A.object.updateProjectionMatrix(),fi=!0;let di=new P.Vector3(O.x,O.y,0);di.unproject(A.object),A.object.position.sub(di).add(Yt),A.object.updateMatrixWorld(),Ot=y.length()}else console.warn("WARNING: OrbitControls.js encountered an unknown camera type - zoom to cursor disabled."),A.zoomToCursor=!1;Ot!==null&&(A.screenSpacePanning?A.target.set(0,0,-1).transformDirection(A.object.matrix).multiplyScalar(Ot).add(A.object.position):(Br.origin.copy(A.object.position),Br.direction.set(0,0,-1).transformDirection(A.object.matrix),Math.abs(A.object.up.dot(Br.direction))<D4?g.lookAt(A.target):(V2.setFromNormalAndCoplanarPoint(A.object.up,A.target),Br.intersectPlane(V2,A.target))))}else A.object.isOrthographicCamera&&(A.object.zoom=Math.max(A.minZoom,Math.min(A.maxZoom,A.object.zoom/o)),A.object.updateProjectionMatrix(),fi=!0);return o=1,N=!1,fi||cg.distanceToSquared(A.object.position)>i||8*(1-CI.dot(A.object.quaternion))>i||zI.distanceToSquared(A.target)>0?(A.dispatchEvent({type:"change"}),cg.copy(A.object.position),CI.copy(A.object.quaternion),zI.copy(A.target),fi=!1,!0):!1}}();let A=this,C={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6},e=C.NONE,i=1e-6,n=new P.Spherical,r=new P.Spherical,o=1,s=new P.Vector3,a=new P.Vector2,u=new P.Vector2,c=new P.Vector2,h=new P.Vector2,f=new P.Vector2,d=new P.Vector2,S=new P.Vector2,w=new P.Vector2,M=new P.Vector2,K=new P.Vector3,O=new P.Vector2,N=!1,v=[],Y={};function b(y){return y!==null?2*Math.PI/60*A.autoRotateSpeed*y:2*Math.PI/60/60*A.autoRotateSpeed}function G(){return Math.pow(.95,A.zoomSpeed)}function E(y){r.theta-=y}function Q(y){r.phi-=y}let Cg=function(){let y=new P.Vector3;return function(Ag,cg){y.setFromMatrixColumn(cg,0),y.multiplyScalar(-Ag),s.add(y)}}(),$=function(){let y=new P.Vector3;return function(Ag,cg){A.screenSpacePanning===!0?y.setFromMatrixColumn(cg,1):(y.setFromMatrixColumn(cg,0),y.crossVectors(A.object.up,y)),y.multiplyScalar(Ag),s.add(y)}}(),L=function(){let y=new P.Vector3;return function(Ag,cg){let CI=A.domElement;if(A.object.isPerspectiveCamera){let zI=A.object.position;y.copy(zI).sub(A.target);let bI=y.length();bI*=Math.tan(A.object.fov/2*Math.PI/180),Cg(2*Ag*bI/CI.clientHeight,A.object.matrix),$(2*cg*bI/CI.clientHeight,A.object.matrix)}else A.object.isOrthographicCamera?(Cg(Ag*(A.object.right-A.object.left)/A.object.zoom/CI.clientWidth,A.object.matrix),$(cg*(A.object.top-A.object.bottom)/A.object.zoom/CI.clientHeight,A.object.matrix)):(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - pan disabled."),A.enablePan=!1)}}();function NA(y){A.object.isPerspectiveCamera||A.object.isOrthographicCamera?o/=y:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),A.enableZoom=!1)}function Gt(y){A.object.isPerspectiveCamera||A.object.isOrthographicCamera?o*=y:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),A.enableZoom=!1)}function Xr(y){if(!A.zoomToCursor)return;N=!0;let B=A.domElement.getBoundingClientRect(),Ag=y.clientX-B.left,cg=y.clientY-B.top,CI=B.width,zI=B.height;O.x=Ag/CI*2-1,O.y=-(cg/zI)*2+1,K.set(O.x,O.y,1).unproject(A.object).sub(A.object.position).normalize()}function Vr(y){return Math.max(A.minDistance,Math.min(A.maxDistance,y))}function G0(y){a.set(y.clientX,y.clientY)}function mB(y){Xr(y),S.set(y.clientX,y.clientY)}function T0(y){h.set(y.clientX,y.clientY)}function yB(y){u.set(y.clientX,y.clientY),c.subVectors(u,a).multiplyScalar(A.rotateSpeed);let B=A.domElement;E(2*Math.PI*c.x/B.clientHeight),Q(2*Math.PI*c.y/B.clientHeight),a.copy(u),A.update()}function SB(y){w.set(y.clientX,y.clientY),M.subVectors(w,S),M.y>0?NA(G()):M.y<0&&Gt(G()),S.copy(w),A.update()}function DB(y){f.set(y.clientX,y.clientY),d.subVectors(f,h).multiplyScalar(A.panSpeed),L(d.x,d.y),h.copy(f),A.update()}function wB(y){Xr(y),y.deltaY<0?Gt(G()):y.deltaY>0&&NA(G()),A.update()}function BB(y){let B=!1;switch(y.code){case A.keys.UP:y.ctrlKey||y.metaKey||y.shiftKey?Q(2*Math.PI*A.rotateSpeed/A.domElement.clientHeight):L(0,A.keyPanSpeed),B=!0;break;case A.keys.BOTTOM:y.ctrlKey||y.metaKey||y.shiftKey?Q(-2*Math.PI*A.rotateSpeed/A.domElement.clientHeight):L(0,-A.keyPanSpeed),B=!0;break;case A.keys.LEFT:y.ctrlKey||y.metaKey||y.shiftKey?E(2*Math.PI*A.rotateSpeed/A.domElement.clientHeight):L(A.keyPanSpeed,0),B=!0;break;case A.keys.RIGHT:y.ctrlKey||y.metaKey||y.shiftKey?E(-2*Math.PI*A.rotateSpeed/A.domElement.clientHeight):L(-A.keyPanSpeed,0),B=!0;break}B&&(y.preventDefault(),A.update())}function O0(){if(v.length===1)a.set(v[0].pageX,v[0].pageY);else{let y=(v[0].pageX-v[0].pageY)/(v[1].pageX-v[1].pageY),B=v[0].pageY-y*v[0].pageX;A.rotateLineStart.set(y,B);let Ag=.5*(v[0].pageX+v[1].pageX),cg=.5*(v[0].pageY+v[1].pageY);a.set(Ag,cg)}}function Y0(){if(v.length===1)h.set(v[0].pageX,v[0].pageY);else{let y=.5*(v[0].pageX+v[1].pageX),B=.5*(v[0].pageY+v[1].pageY);h.set(y,B)}}function j0(){let y=v[0].pageX-v[1].pageX,B=v[0].pageY-v[1].pageY,Ag=Math.sqrt(y*y+B*B);S.set(0,Ag)}function MB(){A.enableZoom&&j0(),A.enablePan&&Y0()}function vB(){A.enableZoom&&j0(),A.enableRotate&&O0()}function R0(y){if(v.length==1)u.set(y.pageX,y.pageY);else{let Ag=zr(y),cg=.5*(y.pageX+Ag.x),CI=.5*(y.pageY+Ag.y);u.set(cg,CI);let zI=(y.pageY-Ag.y)/(y.pageX-Ag.x),bI=Ag.y-zI*Ag.x;if(A.rotateLineEnd.set(zI,bI),Number.isFinite(A.rotateLineEnd.x)&&Number.isFinite(A.rotateLineStart.x)){let Jr=(A.rotateLineStart.y-A.rotateLineEnd.y)/(A.rotateLineEnd.x-A.rotateLineStart.x),Tt=zI*Jr+bI;if(Number.isFinite(Jr)&&Number.isFinite(Tt)){let nA=Math.atan(A.rotateLineEnd.x)-Math.atan(A.rotateLineStart.x);Math.PI-Math.abs(nA)<.5&&(nA=-Math.sign(nA)*(Math.PI-Math.abs(nA))),Math.abs(nA)<.1&&(r.theta+=nA)}}A.rotateLineStart.copy(A.rotateLineEnd)}c.subVectors(u,a).multiplyScalar(A.rotateSpeed);let B=A.domElement;Q(2*Math.PI*c.y/B.clientHeight),a.copy(u)}function N0(y){if(v.length===1)f.set(y.pageX,y.pageY);else{let B=zr(y),Ag=.5*(y.pageX+B.x),cg=.5*(y.pageY+B.y);f.set(Ag,cg)}d.subVectors(f,h).multiplyScalar(A.panSpeed),L(d.x,d.y),h.copy(f)}function W0(y){let B=zr(y),Ag=y.pageX-B.x,cg=y.pageY-B.y,CI=Math.sqrt(Ag*Ag+cg*cg);w.set(0,CI),M.set(0,Math.pow(w.y/S.y,A.zoomSpeed)),NA(M.y),S.copy(w)}function PB(y){A.enableZoom&&W0(y),A.enablePan&&N0(y)}function _B(y){A.enableZoom&&W0(y),A.enableRotate&&R0(y)}this.onPointerDown=function(B){A.enabled!==!1&&(v.length===0&&(A.domElement.setPointerCapture(B.pointerId),A.domElement.addEventListener("pointermove",A.onPointerMove),A.domElement.addEventListener("pointerup",A.onPointerUp)),GB(B),B.pointerType==="touch"?xB(B):EB(B))},this.onPointerMove=function(B){A.enabled!==!1&&(B.pointerType==="touch"?KB(B):bB(B))},this.onPointerUp=function(B){TB(B),v.length===0&&(A.domElement.releasePointerCapture(B.pointerId),A.domElement.removeEventListener("pointermove",A.onPointerMove),A.domElement.removeEventListener("pointerup",A.onPointerUp)),A.dispatchEvent({type:"end"}),e=C.NONE};function EB(y){let B;switch(y.button){case 0:B=A.mouseButtons.LEFT;break;case 1:B=A.mouseButtons.MIDDLE;break;case 2:B=A.mouseButtons.RIGHT;break;default:B=-1}switch(B){case P.MOUSE.DOLLY:if(A.enableZoom===!1)return;mB(y),e=C.DOLLY;break;case P.MOUSE.ROTATE:if(y.ctrlKey||y.metaKey||y.shiftKey){if(A.enablePan===!1)return;T0(y),e=C.PAN}else{if(A.enableRotate===!1)return;G0(y),e=C.ROTATE}break;case P.MOUSE.PAN:if(y.ctrlKey||y.metaKey||y.shiftKey){if(A.enableRotate===!1)return;G0(y),e=C.ROTATE}else{if(A.enablePan===!1)return;T0(y),e=C.PAN}break;default:e=C.NONE}e!==C.NONE&&A.dispatchEvent({type:"start"})}function bB(y){switch(e){case C.ROTATE:if(A.enableRotate===!1)return;yB(y);break;case C.DOLLY:if(A.enableZoom===!1)return;SB(y);break;case C.PAN:if(A.enablePan===!1)return;DB(y);break}}this.onMouseWheel=function(B){A.enabled===!1||A.enableZoom===!1||e!==C.NONE||(B.preventDefault(),A.dispatchEvent({type:"start"}),wB(B),A.dispatchEvent({type:"end"}))},this.onKeyDown=function(B){A.enabled===!1||A.enablePan===!1||BB(B)};function xB(y){switch(F0(y),v.length){case 1:switch(A.touches.ONE){case P.TOUCH.ROTATE:if(A.enableRotate===!1)return;O0(),e=C.TOUCH_ROTATE;break;case P.TOUCH.PAN:if(A.enablePan===!1)return;Y0(),e=C.TOUCH_PAN;break;default:e=C.NONE}break;case 2:switch(A.touches.TWO){case P.TOUCH.DOLLY_PAN:if(A.enableZoom===!1&&A.enablePan===!1)return;MB(),e=C.TOUCH_DOLLY_PAN;break;case P.TOUCH.DOLLY_ROTATE:if(A.enableZoom===!1&&A.enableRotate===!1)return;vB(),e=C.TOUCH_DOLLY_ROTATE;break;default:e=C.NONE}break;default:e=C.NONE}e!==C.NONE&&A.dispatchEvent({type:"start"})}function KB(y){switch(F0(y),e){case C.TOUCH_ROTATE:if(A.enableRotate===!1)return;R0(y),A.update();break;case C.TOUCH_PAN:if(A.enablePan===!1)return;N0(y),A.update();break;case C.TOUCH_DOLLY_PAN:if(A.enableZoom===!1&&A.enablePan===!1)return;PB(y),A.update();break;case C.TOUCH_DOLLY_ROTATE:if(A.enableZoom===!1&&A.enableRotate===!1)return;_B(y),A.update();break;default:e=C.NONE}}this.onContextMenu=function(B){A.enabled!==!1&&B.preventDefault()};function GB(y){v.push(y)}function TB(y){delete Y[y.pointerId];for(let B=0;B<v.length;B++)if(v[B].pointerId==y.pointerId){v.splice(B,1);return}}function F0(y){let B=Y[y.pointerId];B===void 0&&(B=new P.Vector2,Y[y.pointerId]=B),B.set(y.pageX,y.pageY)}function zr(y){let B=y.pointerId===v[0].pointerId?v[1]:v[0];return Y[B.pointerId]}A.domElement.addEventListener("contextmenu",this.onContextMenu),A.domElement.addEventListener("pointerdown",this.onPointerDown),A.domElement.addEventListener("pointercancel",this.onPointerUp),A.domElement.addEventListener("wheel",this.onMouseWheel,{passive:!1}),this.update()}};var vr=class extends Mr{registryEvent(){this.addEventListener("change",this.onChange),this.context.addEventListener("update",this.tweenUpdate)}unRegistryEvent(){this.removeEventListener("change",this.onChange),this.context.removeEventListener("update",this.tweenUpdate)}setPolarAngle(g,I){I===void 0&&(I=!1);let{maxPolarAngle:A,minPolarAngle:C}=this,e=A===C;(I||g<=A&&g>=C)&&(this.maxPolarAngle=g,this.minPolarAngle=g,this.update()),e||(this.maxPolarAngle=A,this.minPolarAngle=C)}setPolarAngleByDuration(g,I,A){return m(this,null,function*(){return I===void 0&&(I=!1),A===void 0&&(A=500),A<=0?this.setPolarAngle(g,I):rI(new Promise(C=>{let e={polar:this.getPolarAngle()},i={polar:g},n=new WC.Tween(e,this.tweenGroup).to(i,A).onUpdate(()=>{this.setPolarAngle(e.polar,I)}).onComplete(()=>{this.enabled=!0,this.tweenGroup.remove(n),C(!0)}).onStart(()=>{this.enabled=!1}).start()}),A+500)})}setAzimuthalAngle(g,I){let{maxAzimuthAngle:A,minAzimuthAngle:C}=this,e=A===C;(I||g<=A&&g>=C)&&(this.maxAzimuthAngle=g,this.minAzimuthAngle=g,this.update()),e||(this.maxAzimuthAngle=A,this.minAzimuthAngle=C)}setAzimuthalAngleDuration(g,I,A){return I===void 0&&(I=!1),A===void 0&&(A=500),A<=0?this.setAzimuthalAngle(g,I):rI(new Promise(C=>{let e={azimuthal:this.getAzimuthalAngle()},i={azimuthal:g},n=new WC.Tween(e,this.tweenGroup).to(i,A).onUpdate(()=>{this.setAzimuthalAngle(e.azimuthal,I)}).onComplete(()=>{this.enabled=!0,this.tweenGroup.remove(n),C(!0)}).onStart(()=>{this.enabled=!1}).start()}),A+500)}getCameraLookAt(){return new e0.Vector3().subVectors(this.target,this.camera.position)}setCameraPositionByTarget(g,I){return m(this,null,function*(){let A=this.target.clone(),C=this.getCameraLookAt();if(!I){this.camera.position.copy(g.clone().sub(C)),this.target.copy(g.clone()),this.update();return}return rI(new Promise(e=>{let i=new WC.Tween(A,this.tweenGroup).to(g,I).onUpdate(()=>{this.camera.position.copy(A.clone().sub(C)),this.target.copy(A.clone()),this.update()}).onComplete(()=>{this.tweenGroup.remove(i),this.enabled=!0,e(!0)}).onStart(()=>{this.enabled=!1}).start()}),I+500)})}setZoom(g,I,A){A===void 0&&(A=!1);let{minZoom:C,maxZoom:e}=this;(A||g>=C&&g<=e)&&(this.camera.position.copy(I.clone().sub(this.getCameraLookAt())),this.target.copy(I),this.camera.zoom=g,this.update())}setZoomByDuration(g,I,A,C){return m(this,null,function*(){A===void 0&&(A=!1),C===void 0&&(C=500);let e={zoom:this.camera.zoom,target:this.target.clone()};if(g!==this.camera.zoom)return C?rI(new Promise(i=>{let n=new WC.Tween(e,this.tweenGroup).to({zoom:g,target:I},C).onUpdate(()=>{this.setZoom(e.zoom,e.target,A)}).onComplete(()=>{this.tweenGroup.remove(n),this.enabled=!0,i(!0)}).onStart(()=>{this.enabled=!1}).start()}),C+500).finally(()=>{this.enabled=!0}):this.setZoom(g,I,A)})}setTargetByOffset(g,I){if(I===void 0&&(I=this.target.clone()),this.camera.updateMatrix(),g){let A=new e0.Vector3;A.setFromMatrixColumn(this.camera.matrix,1),A.normalize(),A.multiplyScalar(g/this.camera.zoom),I.add(A)}this.setCameraPositionByTarget(I,0)}clearTween(){this.tweenGroup.getAll().forEach(g=>g.stop()),this.tweenGroup.removeAll()}dispose(){super.dispose(),this.unRegistryEvent(),this.clearTween()}constructor(g,I,A){super(I,A),this.context=g,this.camera=I,this.domElement=A,this.prevCameraZoom=1,this.tweenGroup=new WC.Group,this.offsetY=0,this.onChange=()=>{let C=this.camera.zoom;C!==this.prevCameraZoom&&(this.prevCameraZoom=C,this.dispatchEvent({type:"change-zoom",zoom:C}))},this.tweenUpdate=()=>{this.tweenGroup.update()},this.enableDamping=!1,this.zoomSpeed=.5,this.prevCameraZoom=I.zoom,this.registryEvent()}};var wt=require("three");var Pr=class extends wt.WebGLRenderer{setCameraAndScene(g,I){this.scene=g,this.camera=I}autoRender(){this.scene&&this.camera&&this.enable&&(this.event.dispatchEvent({type:"update"}),this.render(this.scene,this.camera)),this.timer.requestAnimationFrame(()=>{this.autoRender()})}pauseRender(){this.enable=!1}continueRender(){this.enable=!0}addEventListener(g,I){this.event.addEventListener(g,I)}removeEventListener(g,I){this.event.removeEventListener(g,I)}constructor(g){super(D({antialias:!0,alpha:!0},g)),this.event=new wt.EventDispatcher,this.enable=!0,this.timer=new tg,this.autoClear=!0,this.setPixelRatio(window.devicePixelRatio),this.shadowMap.enabled=!0,this.shadowMap.autoUpdate=!0,this.shadowMap.type=wt.PCFSoftShadowMap;let I=this.dispose;this.dispose=()=>{this.timer.dispose(),this.enable=!1,I.call(this),this.domElement.remove(),this.domElement=null,this.shadowMap=null,this.info.programs&&(this.info.programs.length=0),this.info=null}}};var pC=require("three"),z2=require("three/examples/jsm/loaders/RGBELoader.js");var _r=class extends pC.Scene{dispose(){var g;(g=this.environment)==null||g.dispose(),this.environment=null,U(this),this.clear()}constructor(){super(),new z2.RGBELoader().load(a2,g=>{g.mapping=pC.EquirectangularReflectionMapping,this.environment=g;let I=new pC.Matrix4;I.makeRotationX(Math.PI/2),this.environmentRotation=new pC.Euler().setFromRotationMatrix(I)})}};var J2=require("three"),Er=class extends J2.OrthographicCamera{constructor(g,I){super(-g/2,g/2,I/2,-I/2,-1e4,5e4),this.up.set(0,0,1),this.position.set(0,0,100),this.lookAt(0,0,0)}};var i0=require("@turf/turf");var ni=class extends q.EventDispatcher{get config(){return this.bmap.config}get center(){return this.bmap.buildingCenter}setRange(g){this.range=(0,i0.polygon)([g])}resizeClientSize(){let{x:g,y:I,width:A,height:C}=this.container.getBoundingClientRect();this.clientSize={width:A||this.container.clientWidth,height:C||this.container.clientHeight,x:g,y:I}}init(){let{clientWidth:g,clientHeight:I}=this.container;this.camera=new Er(g,I),this.renderer.setSize(g,I),this.renderer.setCameraAndScene(this.scene,this.camera),this.renderer.autoRender(),this.control=new vr(this,this.camera,this.renderer.domElement),this.control.maxPolarAngle=this.config.control.maxPolar,this.container.appendChild(this.renderer.domElement),this.scene.add(this.lights),this.basicRatio=this.getRatio(),this.control.addEventListener("change",this.onControlChange),this.control.addEventListener("change-zoom",this.onControlChangeZoom),this.renderer.addEventListener("update",this.onRendererUpdate),this.cameraBound=new Dr(this)}getRatio(g,I){g===void 0&&(g=new q.Vector3(0,0,0)),I===void 0&&(I=new q.Vector3(100,0,0));let{clientWidth:A,clientHeight:C}=this.container,e=j(g,this.camera,A,C),i=j(I,this.camera,A,C);return Math.ceil(Math.sqrt((i.x-e.x)**2+(i.y-e.y)**2))}changeAmbientLightColor(g){this.lights.children.forEach(I=>{I instanceof q.AmbientLight&&(I.color=new q.Color(g))})}switchFloor(g,I){I===void 0&&(I=!0),console.log("switchFloor",I),this.currentFloor&&(this.currentFloor.onRemoveFromScene(),this.scene.remove(this.currentFloor),I&&this.currentFloor.dispose()),this.currentFloor=g,this.setRange(g.userData.range||[]),this.scene.add(g),g.onAddToScene();let A=g.getCenter();A&&(this.lights.position.x=A.x,this.lights.position.y=A.y),this.cameraBound.updateBox()}getGraphicsByDeviceXy(g,I){var A;let C=new q.Vector2;C.x=g/this.clientSize.width*2-1,C.y=I/this.clientSize.height*-2+1;let e=new q.Raycaster;return e.setFromCamera(C,this.camera),e.ray.origin.sub(e.ray.direction.clone().multiplyScalar(100)),((A=this.currentFloor)==null?void 0:A.graphicLayer.getGraphicByRaycaster(e))||{graphics:[],position:null}}getPoisByDeviceXy(g,I){var A,C;let e=(A=this.currentFloor)==null?void 0:A.poiLayer.getPoiByDeviceXy(g,I),i=(C=this.currentFloor)==null?void 0:C.poiLayer2.getPoiByDeviceXy(g,I);return(e||[]).concat(i||[])}registryEvent(){window.addEventListener("resize",this.onWindowResize),this.container.addEventListener("click",this.onClick),this.container.addEventListener("pointerover",this.onPointerover),this.container.addEventListener("pointermove",this.onPointermove),this.container.addEventListener("pointerleave",this.onPointerleave),this.container.addEventListener("pointercancel",this.onPointerleave),this.container.addEventListener("pointerout",this.onPointerleave),this.selection.addEventListener("select",this.onSelectionSelect),this.hoverHelper.addEventListener("hover-change",this.onHoverChange)}unRegistryEvent(){window.removeEventListener("resize",this.onWindowResize),this.container.removeEventListener("click",this.onClick),this.container.removeEventListener("pointerover",this.onPointerover),this.container.removeEventListener("pointermove",this.onPointermove),this.container.removeEventListener("pointerleave",this.onPointerleave),this.container.removeEventListener("pointercancel",this.onPointerleave),this.container.removeEventListener("pointerout",this.onPointerleave),this.selection.removeEventListener("select",this.onSelectionSelect),this.hoverHelper.removeEventListener("hover-change",this.onHoverChange),this.control.removeEventListener("change",this.onControlChange),this.control.removeEventListener("change-zoom",this.onControlChangeZoom),this.renderer.removeEventListener("update",this.onRendererUpdate)}setPolarAngle(g,I){return I===void 0&&(I=500),this.control.setPolarAngleByDuration(g,!0,I)}setAzimuthalAngle(g,I){return I===void 0&&(I=500),this.control.setAzimuthalAngleDuration(g,!0,I)}getCameraLookAt(){return this.control.getCameraLookAt()}setZoom(g,I,A){return A===void 0&&(A=500),this.control.setZoomByDuration(g,I,!0,A)}getFitCameraToObjectZoom(g,I,A){return I===void 0&&(I=[20,20,20,20]),A===void 0&&(A=!0),this.getFitCameraToBoxZoom(new q.Box3().setFromObject(g),I,A)}getFitCameraToBoxZoom(g,I,A){I===void 0&&(I=[20,20,20,20]),A===void 0&&(A=!0);let[C,e,i,n]=I,{clientSize:{width:r,height:o}}=this,s=this.control.getPolarAngle();A&&this.setPolarAngle(0,0),this.setPolarAngle(s,0);let{max:a,min:u}=g,c=new q.Vector3(u.x,a.y,a.z),h=new q.Vector3(a.x,a.y,a.z),f=new q.Vector3(a.x,u.y,u.z),d=new q.Vector3(u.x,u.y,u.z),S=j(c,this.camera,r,o),w=j(h,this.camera,r,o),M=j(d,this.camera,r,o),K=j(f,this.camera,r,o),N=new q.Box2().setFromPoints([new q.Vector2(S.x,S.y),new q.Vector2(w.x,w.y),new q.Vector2(M.x,M.y),new q.Vector2(K.x,K.y)]).getSize(new q.Vector2),v=(r-e-n)/N.x,Y=(o-C-i)/N.y,b=Math.min(v,Y),G=new q.Vector3((a.x+u.x)/2,(a.y+u.y)/2,(a.z+u.z)/2),E=b*this.camera.zoom,Q=this.camera.clone();Q.zoom=E,Q.updateMatrix();let Cg=(e-n)/2,$=(C-i)/2;if(Cg){let L=new q.Vector3;L.setFromMatrixColumn(Q.matrix,0),L.normalize(),L.multiplyScalar(Cg/E),G.add(L)}if($){let L=new q.Vector3;L.setFromMatrixColumn(Q.matrix,1),L.normalize(),L.multiplyScalar($/E),G.add(L)}return{zoom:b*this.camera.zoom,center:G}}fitCameraToObject(g,I,A,C){I===void 0&&(I=[20,20,20,20]),A===void 0&&(A=500),C===void 0&&(C=!0);let{zoom:e,center:i}=this.getFitCameraToObjectZoom(g,I,C);return this.setZoom(e,i,A)}fitCameraToBox(g,I,A,C){I===void 0&&(I=[20,20,20,20]),A===void 0&&(A=500),C===void 0&&(C=!0);let{zoom:e,center:i}=this.getFitCameraToBoxZoom(g,I,C);return this.setZoom(e,i,A)}getFitCameraToGroundZoom(g,I,A){if(g===void 0&&(g=[20,20,20,20]),I===void 0&&(I=500),A===void 0&&(A=!0),this.currentFloor&&this.currentFloor.hasElement)return this.getFitCameraToObjectZoom(this.currentFloor.groundUpper,g,A).zoom}fitCameraToGround(g,I,A){return g===void 0&&(g=[20,20,20,20]),I===void 0&&(I=500),A===void 0&&(A=!0),this.currentFloor&&this.currentFloor.hasElement?this.fitCameraToObject(this.currentFloor.groundLayer,g,I,A):Promise.resolve(!1)}setCameraPosition(g,I){return m(this,null,function*(){return this.control.setCameraPositionByTarget(g,I)})}pauseRender(){this.renderer.pauseRender()}continueRender(){this.renderer.continueRender()}dispose(){var g;(g=this.currentFloor)==null||g.dispose(),this.control.dispose(),this.cameraBound.dispose(),this.selection.dispose(),this.hoverHelper.dispose(),this.unRegistryEvent(),this.renderer.dispose(),this.lights.children.forEach(I=>I.dispose()),this.scene.dispose(),this.container=null,this.renderer=null}constructor(g,I){super(),this.container=g,this.scene=new _r,this.renderer=new Pr,this.lights=Cs(),this.range=(0,i0.polygon)([]),this.clientSize={width:0,height:0,x:0,y:0},this.renderRf=0,this.basicZoom=1,this.onControlChange=()=>{this.dispatchEvent({type:"change-ratio",px:(this.basicRatio||0)*this.camera.zoom}),this.dispatchEvent({type:"control-change"})},this.onControlChangeZoom=A=>{let{zoom:C}=A;this.dispatchEvent({type:"control-zoom-change",zoom:C})},this.onRendererUpdate=()=>{this.dispatchEvent({type:"update"})},this.onWindowResize=()=>{let{container:A,camera:C,renderer:e}=this,{clientWidth:i,clientHeight:n}=A;i=Math.max(1,i),n=Math.max(1,n),C.left=-i/2,C.right=i/2,C.top=n/2,C.bottom=-n/2,C.updateProjectionMatrix(),e.setSize(i,n),this.resizeClientSize(),this.dispatchEvent({type:"resize",width:i,height:n})},this.onClick=A=>{let{graphics:C,position:e}=this.getGraphicsByDeviceXy(A.offsetX,A.offsetY);C.length&&this.dispatchEvent({type:"graphic-click",graphics:C,position:e});let i=this.getPoisByDeviceXy(A.offsetX,A.offsetY);i.length&&this.dispatchEvent({type:"poi-click",pois:i})},this.onPointerover=A=>{let{graphics:C,position:e}=this.getGraphicsByDeviceXy(A.offsetX,A.offsetY),i=this.getPoisByDeviceXy(A.offsetX,A.offsetY);this.dispatchEvent({type:"pointer-over",e:A,graphics:C,pois:i,position:e})},this.onPointermove=A=>{let{graphics:C,position:e}=this.getGraphicsByDeviceXy(A.offsetX,A.offsetY),i=this.getPoisByDeviceXy(A.offsetX,A.offsetY);this.dispatchEvent({type:"pointer-move",e:A,graphics:C,pois:i,position:e})},this.onPointerleave=A=>{this.dispatchEvent({type:"pointer-level"})},this.onSelectionSelect=A=>{let{graphics:C,isMultipleSelect:e}=A;this.dispatchEvent({type:"select-graphic",graphics:C,isMultipleSelect:e})},this.onHoverChange=A=>{let{graphics:C}=A;this.dispatchEvent({type:"hover",graphics:C})},this.bmap=I,this.container.style.position="relative",this.container.style.overflow="hidden",this.init(),this.selection=new ti(this),this.hoverHelper=new ei(this),this.resizeClientSize(),this.registryEvent()}};var Q2=require("lodash"),q2={placeId:0,apiDomain:"",apiInfo:{},apiPath:{floorGraphic:"/api/inception-map/floor/get",floorRange:"/api/inception-map/range/get",equipmentList:"/api/inception-map/equipment/get",roadNetwork:"/api/inception-map/road_network/get",loadPlaceInfo:"https://screen.aibee.cn/ai-map/map/get-floor-map"},enableBoxSelect:!0,resizeObserver:!1,initTransToMark:!1,heatMap:{radius:1,minOpacity:.5,maxOpacity:.9,gradient:{0:"#8F9FCD",.5:"#6284FF",1:"#F95D5D"}},useFloorCache:!0,control:{maxPolar:1.2,defaultPolar:1.1,defaultAzimuthal:0,maxZoomScale:30},defaultPadding:[20,20,20,20],svg:{circle:{radius:"2",fill:"#1CADFF"},line:{stroke:"#1CADFF"}},selectBox:{stroke:"#1CADFF",fill:"rgba(28, 173, 255, 0.3)"},hover:{time:100},ground:{color:"#F6F6F6",opacity:1,height:.001,stroke:!1,strokeColor:"#E6E6E6",strokeOpacity:1},markGraphic:{color:"#EEF0F3",opacity:1,height:.001,stroke:!1,strokeColor:"#000",strokeOpacity:1},graphic:{fillOpacity:1},cameraBound:{padding:[150,150,150,150]},poi:{boxScale:1},loaderPlaceConfig:{textFontSize:14}};function n0(t){return(0,Q2.merge)({},q2,t)}var AB=require("lodash");var X8=l(_(),1);var Gr=require("three");var R8=l(W(),1),N8=l(_(),1);var T8=l(PC(),1);var Bt=function(t){return t.LAYERED_RENDER_VERSION="layeredRender",t.MERGED_RENDER_VERSION="mergedRender",t}({});function br(t,g){let I=t.poi_info.showName||t.store_name||t.poi_info.text;switch(g){case"zh-cn":return I;case"en":var A;return((A=t.store_info_ext)==null?void 0:A.poi_name)||I;case"zh-hk":var C;return((C=t.store_info_ext)==null?void 0:C.traditional_name)||I}}function xr(t,g){let I=t.poi_info.showName||t.store_name||t.poi_info.text;switch(g){case"zh-cn":return I;case"en":var A;return((A=t.infra_info_ext)==null?void 0:A.poi_name)||I;case"zh-hk":var C;return((C=t.infra_info_ext)==null?void 0:C.traditional_name)||I}}var r0=["range","ground","store","facility","parkingSpace"];function $2(t){return r0.indexOf(t.l_type)===-1?r0.length:r0.indexOf(t.l_type)}function w4(t){t.layers.sort((g,I)=>$2(g)-$2(I))}function B4(t){let g=t.layers.find(A=>A.l_type==="range"),I=[g.elements[0].center_x,g.elements[0].center_y];t.layers.map(A=>{if(A.l_type!=="range")return ue(A.elements,I)})}function Kr(t){w4(t),B4(t)}function Mt(t,g){return g===void 0&&(g=4),t.floor_id+"_"+t.version_id+(g?"_"+g:"")}function gB(t,g,I){switch(t.l_type){case"ground":return o0(t,g);case"graph":return M4(t,g);case"wall":return v4(t,g);case"lane":return P4(t,g);case"texture2d":case"texture3d":return _4(t,g);case"glb":return E4(t,g);case"store":return b4(t,g,I);case"facility":return K4(t,g,I);case"parkingSpace":return T4(t,g,I);case"text":return Y4(t,g)}}function IB(t,g,I,A){switch(t.l_type){case"store":return x4(t,g,I,A);case"facility":return G4(t,g,I,A);case"parkingSpace":return O4(t,g,A)}}function M4(t,g){g.mergeGraphicLayer.addGraphics(t.elements,t.mergedElements)}function o0(t,g){if(t.mergedElements){let I=t.mergedElements.map(A=>new uC(g.context,D({},A,{dashed:!1})));g.addGrounds(I)}else{let I=t.elements.map(A=>new Bg(g.context,D({},A,{dashed:!1})));g.addGrounds(I)}}function v4(t,g){if(t.mergedElements)t.mergedElements.map(I=>{let A=new Ai(g.context,I);g.wallLayer.add(A)});else{let I=t.elements.reduce((A,C)=>{let{fillColor:e,fillOpacity:i,strokeColor:n,strokeOpacity:r,height:o}=C,s=e.toLowerCase()+"-"+i+"-"+n.toLowerCase()+"-"+r+"-"+o;return r===0&&(s=e.toLowerCase()+"-"+i+"-"+o),A[s]?A[s].push(C):A[s]=[C],A},{});Object.values(I).forEach(A=>{let C=new $e(g.context,A);g.wallLayer.add(C)})}}function P4(t,g){if(t.mergedElements){let I=new Ci(g.context,t.mergedElements);g.laneLayer.add(I)}else{let I=new gi(g.context,t.elements);g.laneLayer.add(I)}}function _4(t,g){if(t.mergedMatrixes)t.mergedMatrixes.map(I=>{let A=new aC(g.context,I);g.textureLayer.add(A)});else if(t.elements.length){let I=new sC(g.context,t.elements);g.textureLayer.add(I)}}function E4(t,g){g.glbModelLayer.addModels(t.elements.map(I=>D({},I,{url:I.secondUrl,rotate:I.secondRotate,width:I.secondWidth,center_x:I.center_coord_x,center_y:I.center_coord_y,deltaHeight:0})))}function b4(t,g,I){I.mergeGraphic?g.mergeGraphicLayer.addGraphics(t.elements,t.mergedElements):t.elements.map(A=>{let C=g.addGraphic(D({},A,{dashed:!1}));g.userData.graphics.push(C),g.userData.graphicMap.set(A.id,C)})}function x4(t,g,I,A){t.elements.map(C=>{try{let e=br(C,I),i=new ug(g.context,{id:C.id,icon:C.poi_info.showImageUrl||C.poi_info.icon,text:e,position:{x:C.center_coord_x,y:C.center_coord_y,z:C.airHeight+C.height},icon_size:[24,24],level:C.poi_info.level||0,hide_text:!A.showStoreName,maxWeight:C.poi_info.maxWeight||25,minWeight:C.poi_info.minWeight||1,text_font_size:A.textFontSize});g.poiLayer2.pushPoi(i),i&&(i.userData.type="store",i.userData.data=C,i.userData.floor=g.name)}catch(e){console.log("\u521B\u5EFA\u5E97\u94FApoi\u5931\u8D25",e,C)}})}function K4(t,g,I){I.mergeGraphic?g.mergeGraphicLayer.addGraphics(t.elements,t.mergedElements):t.elements.map(A=>{let C=g.addGraphic(D({},A,{dashed:!1}));g.userData.graphics.push(C),g.userData.graphicMap.set(A.id,C)})}function G4(t,g,I,A){t.elements.filter(e=>e.poi_info).map(e=>{try{let i=xr(e,I),n=new ug(g.context,{id:e.id,icon:e.poi_info.showImageUrl||e.poi_info.icon,text:i,position:{x:e.center_coord_x,y:e.center_coord_y,z:e.airHeight+e.height},icon_size:[24,24],level:e.poi_info.level||0,hide_text:!A.showFacilityName,maxWeight:e.poi_info.maxWeight||25,minWeight:e.poi_info.minWeight||1,text_font_size:A.textFontSize});g.poiLayer2.pushPoi(n),n.userData.type="facility",n.userData.data=e,n.userData.floor=g.name}catch(i){console.log("\u6DFB\u52A0facility\u5931\u8D25",i,e)}})}function T4(t,g,I){g.parkingSpaceLayer.load(t,I.mergeParkingSpace),g.userData.parkingSpaces=g.parkingSpaceLayer.graphicMap.values(),g.userData.parkingSpacesGraphicMap=g.parkingSpaceLayer.graphicMap}function O4(t,g,I){return m(this,null,function*(){let A=t.elements.filter(i=>i.texts[0]),C=A.map(i=>i.displayName||i.texts[0]),e=yield ag.lazyGetTextureByTexts(C,{height:64});A.forEach(i=>{try{let n=i.displayName||i.texts[0],r=new ug(g.context,{id:i.id,text:n,position:{x:i.center_coord_x,y:i.center_coord_y,z:i.airHeight+i.height},text_texture:e[n].texture,text_texture_width:e[n].width,text_texture_height:e[n].height,text_texture_offset_x:e[n].x,text_texture_offset_y:e[n].y,text_font_size:I.textFontSize});r&&(r.userData.type="parkingSpace",r.userData.data=i,r.userData.floor=g.name),g.poiLayer2.pushPoi(r)}catch(n){console.log("\u6DFB\u52A0\u8F66\u4F4Dpoi\u5931\u8D25",n,i)}}),Object.values(e).forEach(i=>{i.texture.dispose()})})}function Y4(t,g){let I=new Ii(g.context,t.elements.map(A=>D({},A,{center_x:A.center_coord_x,center_y:A.center_coord_y})));g.textTextureLayer.add(I)}function s0(){let t=new Blob([`var VD=Object.create;var D1=Object.defineProperty;var HD=Object.getOwnPropertyDescriptor;var WD=Object.getOwnPropertyNames;var XD=Object.getPrototypeOf,YD=Object.prototype.hasOwnProperty;var X=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports);var $D=(n,t,e,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of WD(t))!YD.call(n,s)&&s!==e&&D1(n,s,{get:()=>t[s],enumerable:!(i=HD(t,s))||i.enumerable});return n};var Qt=(n,t,e)=>(e=n!=null?VD(XD(n)):{},$D(t||!n||!n.__esModule?D1(e,"default",{value:n,enumerable:!0}):e,n));var Ri=(n,t,e)=>new Promise((i,s)=>{var u=p=>{try{f(e.next(p))}catch(d){s(d)}},c=p=>{try{f(e.throw(p))}catch(d){s(d)}},f=p=>p.done?i(p.value):Promise.resolve(p.value).then(u,c);f((e=e.apply(n,t)).next())});var Sn=X((Ug,F1)=>{"use strict";var Ec=function(n){return n&&n.Math===Math&&n};F1.exports=Ec(typeof globalThis=="object"&&globalThis)||Ec(typeof window=="object"&&window)||Ec(typeof self=="object"&&self)||Ec(typeof global=="object"&&global)||Ec(typeof Ug=="object"&&Ug)||function(){return this}()||Function("return this")()});var An=X((pet,U1)=>{"use strict";U1.exports=function(n){try{return!!n()}catch(t){return!0}}});var ri=X((det,B1)=>{"use strict";var ZD=An();B1.exports=!ZD(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7})});var Sc=X((get,z1)=>{"use strict";var JD=An();z1.exports=!JD(function(){var n=function(){}.bind();return typeof n!="function"||n.hasOwnProperty("prototype")})});var vr=X((met,G1)=>{"use strict";var jD=Sc(),Kf=Function.prototype.call;G1.exports=jD?Kf.bind(Kf):function(){return Kf.apply(Kf,arguments)}});var H1=X(V1=>{"use strict";var k1={}.propertyIsEnumerable,q1=Object.getOwnPropertyDescriptor,KD=q1&&!k1.call({1:2},1);V1.f=KD?function(t){var e=q1(this,t);return!!e&&e.enumerable}:k1});var wc=X((vet,W1)=>{"use strict";W1.exports=function(n,t){return{enumerable:!(n&1),configurable:!(n&2),writable:!(n&4),value:t}}});var In=X((_et,$1)=>{"use strict";var X1=Sc(),Y1=Function.prototype,Bg=Y1.call,QD=X1&&Y1.bind.bind(Bg,Bg);$1.exports=X1?QD:function(n){return function(){return Bg.apply(n,arguments)}}});var vs=X((xet,J1)=>{"use strict";var Z1=In(),t3=Z1({}.toString),e3=Z1("".slice);J1.exports=function(n){return e3(t3(n),8,-1)}});var Qf=X((Eet,j1)=>{"use strict";var n3=In(),r3=An(),i3=vs(),zg=Object,o3=n3("".split);j1.exports=r3(function(){return!zg("z").propertyIsEnumerable(0)})?function(n){return i3(n)==="String"?o3(n,""):zg(n)}:zg});var th=X((wet,K1)=>{"use strict";K1.exports=function(n){return n==null}});var Fu=X((Met,Q1)=>{"use strict";var s3=th(),a3=TypeError;Q1.exports=function(n){if(s3(n))throw new a3("Can't call method on "+n);return n}});var Uu=X((bet,tE)=>{"use strict";var u3=Qf(),l3=Fu();tE.exports=function(n){return u3(l3(n))}});var er=X((Aet,eE)=>{"use strict";var Gg=typeof document=="object"&&document.all;eE.exports=typeof Gg=="undefined"&&Gg!==void 0?function(n){return typeof n=="function"||n===Gg}:function(n){return typeof n=="function"}});var xi=X((Tet,nE)=>{"use strict";var c3=er();nE.exports=function(n){return typeof n=="object"?n!==null:c3(n)}});var $s=X((Cet,rE)=>{"use strict";var kg=Sn(),f3=er(),h3=function(n){return f3(n)?n:void 0};rE.exports=function(n,t){return arguments.length<2?h3(kg[n]):kg[n]&&kg[n][t]}});var Mc=X((Iet,iE)=>{"use strict";var p3=In();iE.exports=p3({}.isPrototypeOf)});var Bu=X((Pet,aE)=>{"use strict";var d3=Sn(),oE=d3.navigator,sE=oE&&oE.userAgent;aE.exports=sE?String(sE):""});var bc=X((Ret,pE)=>{"use strict";var hE=Sn(),qg=Bu(),uE=hE.process,lE=hE.Deno,cE=uE&&uE.versions||lE&&lE.version,fE=cE&&cE.v8,So,eh;fE&&(So=fE.split("."),eh=So[0]>0&&So[0]<4?1:+(So[0]+So[1]));!eh&&qg&&(So=qg.match(/Edge\\/(\\d+)/),(!So||So[1]>=74)&&(So=qg.match(/Chrome\\/(\\d+)/),So&&(eh=+So[1])));pE.exports=eh});var nh=X((Let,gE)=>{"use strict";var dE=bc(),g3=An(),m3=Sn(),y3=m3.String;gE.exports=!!Object.getOwnPropertySymbols&&!g3(function(){var n=Symbol("symbol detection");return!y3(n)||!(Object(n)instanceof Symbol)||!Symbol.sham&&dE&&dE<41})});var Vg=X((Net,mE)=>{"use strict";var v3=nh();mE.exports=v3&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var Ac=X((Oet,yE)=>{"use strict";var _3=$s(),x3=er(),E3=Mc(),S3=Vg(),w3=Object;yE.exports=S3?function(n){return typeof n=="symbol"}:function(n){var t=_3("Symbol");return x3(t)&&E3(t.prototype,w3(n))}});var zu=X((Det,vE)=>{"use strict";var M3=String;vE.exports=function(n){try{return M3(n)}catch(t){return"Object"}}});var _s=X((Fet,_E)=>{"use strict";var b3=er(),A3=zu(),T3=TypeError;_E.exports=function(n){if(b3(n))return n;throw new T3(A3(n)+" is not a function")}});var Tc=X((Uet,xE)=>{"use strict";var C3=_s(),I3=th();xE.exports=function(n,t){var e=n[t];return I3(e)?void 0:C3(e)}});var SE=X((Bet,EE)=>{"use strict";var Hg=vr(),Wg=er(),Xg=xi(),P3=TypeError;EE.exports=function(n,t){var e,i;if(t==="string"&&Wg(e=n.toString)&&!Xg(i=Hg(e,n))||Wg(e=n.valueOf)&&!Xg(i=Hg(e,n))||t!=="string"&&Wg(e=n.toString)&&!Xg(i=Hg(e,n)))return i;throw new P3("Can't convert object to primitive value")}});var Cc=X((zet,wE)=>{"use strict";wE.exports=!1});var rh=X((Get,bE)=>{"use strict";var ME=Sn(),R3=Object.defineProperty;bE.exports=function(n,t){try{R3(ME,n,{value:t,configurable:!0,writable:!0})}catch(e){ME[n]=t}return t}});var ih=X((ket,CE)=>{"use strict";var L3=Cc(),N3=Sn(),O3=rh(),AE="__core-js_shared__",TE=CE.exports=N3[AE]||O3(AE,{});(TE.versions||(TE.versions=[])).push({version:"3.42.0",mode:L3?"pure":"global",copyright:"\\xA9 2014-2025 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.42.0/LICENSE",source:"https://github.com/zloirock/core-js"})});var oh=X((qet,PE)=>{"use strict";var IE=ih();PE.exports=function(n,t){return IE[n]||(IE[n]=t||{})}});var Vi=X((Vet,RE)=>{"use strict";var D3=Fu(),F3=Object;RE.exports=function(n){return F3(D3(n))}});var oo=X((Het,LE)=>{"use strict";var U3=In(),B3=Vi(),z3=U3({}.hasOwnProperty);LE.exports=Object.hasOwn||function(t,e){return z3(B3(t),e)}});var sh=X((Wet,NE)=>{"use strict";var G3=In(),k3=0,q3=Math.random(),V3=G3(1 .toString);NE.exports=function(n){return"Symbol("+(n===void 0?"":n)+")_"+V3(++k3+q3,36)}});var Xr=X((Xet,DE)=>{"use strict";var H3=Sn(),W3=oh(),OE=oo(),X3=sh(),Y3=nh(),$3=Vg(),Gu=H3.Symbol,Yg=W3("wks"),Z3=$3?Gu.for||Gu:Gu&&Gu.withoutSetter||X3;DE.exports=function(n){return OE(Yg,n)||(Yg[n]=Y3&&OE(Gu,n)?Gu[n]:Z3("Symbol."+n)),Yg[n]}});var $g=X((Yet,BE)=>{"use strict";var J3=vr(),FE=xi(),UE=Ac(),j3=Tc(),K3=SE(),Q3=Xr(),tF=TypeError,eF=Q3("toPrimitive");BE.exports=function(n,t){if(!FE(n)||UE(n))return n;var e=j3(n,eF),i;if(e){if(t===void 0&&(t="default"),i=J3(e,n,t),!FE(i)||UE(i))return i;throw new tF("Can't convert object to primitive value")}return t===void 0&&(t="number"),K3(n,t)}});var ah=X(($et,zE)=>{"use strict";var nF=$g(),rF=Ac();zE.exports=function(n){var t=nF(n,"string");return rF(t)?t:t+""}});var uh=X((Zet,kE)=>{"use strict";var iF=Sn(),GE=xi(),Zg=iF.document,oF=GE(Zg)&&GE(Zg.createElement);kE.exports=function(n){return oF?Zg.createElement(n):{}}});var Jg=X((Jet,qE)=>{"use strict";var sF=ri(),aF=An(),uF=uh();qE.exports=!sF&&!aF(function(){return Object.defineProperty(uF("div"),"a",{get:function(){return 7}}).a!==7})});var lh=X(HE=>{"use strict";var lF=ri(),cF=vr(),fF=H1(),hF=wc(),pF=Uu(),dF=ah(),gF=oo(),mF=Jg(),VE=Object.getOwnPropertyDescriptor;HE.f=lF?VE:function(t,e){if(t=pF(t),e=dF(e),mF)try{return VE(t,e)}catch(i){}if(gF(t,e))return hF(!cF(fF.f,t,e),t[e])}});var jg=X((Ket,WE)=>{"use strict";var yF=ri(),vF=An();WE.exports=yF&&vF(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42})});var so=X((Qet,XE)=>{"use strict";var _F=xi(),xF=String,EF=TypeError;XE.exports=function(n){if(_F(n))return n;throw new EF(xF(n)+" is not an object")}});var Wo=X($E=>{"use strict";var SF=ri(),wF=Jg(),MF=jg(),ch=so(),YE=ah(),bF=TypeError,Kg=Object.defineProperty,AF=Object.getOwnPropertyDescriptor,Qg="enumerable",tm="configurable",em="writable";$E.f=SF?MF?function(t,e,i){if(ch(t),e=YE(e),ch(i),typeof t=="function"&&e==="prototype"&&"value"in i&&em in i&&!i[em]){var s=AF(t,e);s&&s[em]&&(t[e]=i.value,i={configurable:tm in i?i[tm]:s[tm],enumerable:Qg in i?i[Qg]:s[Qg],writable:!1})}return Kg(t,e,i)}:Kg:function(t,e,i){if(ch(t),e=YE(e),ch(i),wF)try{return Kg(t,e,i)}catch(s){}if("get"in i||"set"in i)throw new bF("Accessors not supported");return"value"in i&&(t[e]=i.value),t}});var xs=X((ent,ZE)=>{"use strict";var TF=ri(),CF=Wo(),IF=wc();ZE.exports=TF?function(n,t,e){return CF.f(n,t,IF(1,e))}:function(n,t,e){return n[t]=e,n}});var fh=X((nnt,jE)=>{"use strict";var nm=ri(),PF=oo(),JE=Function.prototype,RF=nm&&Object.getOwnPropertyDescriptor,rm=PF(JE,"name"),LF=rm&&function(){}.name==="something",NF=rm&&(!nm||nm&&RF(JE,"name").configurable);jE.exports={EXISTS:rm,PROPER:LF,CONFIGURABLE:NF}});var om=X((rnt,KE)=>{"use strict";var OF=In(),DF=er(),im=ih(),FF=OF(Function.toString);DF(im.inspectSource)||(im.inspectSource=function(n){return FF(n)});KE.exports=im.inspectSource});var eS=X((int,tS)=>{"use strict";var UF=Sn(),BF=er(),QE=UF.WeakMap;tS.exports=BF(QE)&&/native code/.test(String(QE))});var hh=X((ont,rS)=>{"use strict";var zF=oh(),GF=sh(),nS=zF("keys");rS.exports=function(n){return nS[n]||(nS[n]=GF(n))}});var ph=X((snt,iS)=>{"use strict";iS.exports={}});var Va=X((ant,aS)=>{"use strict";var kF=eS(),sS=Sn(),qF=xi(),VF=xs(),sm=oo(),am=ih(),HF=hh(),WF=ph(),oS="Object already initialized",um=sS.TypeError,XF=sS.WeakMap,dh,Ic,gh,YF=function(n){return gh(n)?Ic(n):dh(n,{})},$F=function(n){return function(t){var e;if(!qF(t)||(e=Ic(t)).type!==n)throw new um("Incompatible receiver, "+n+" required");return e}};kF||am.state?(wo=am.state||(am.state=new XF),wo.get=wo.get,wo.has=wo.has,wo.set=wo.set,dh=function(n,t){if(wo.has(n))throw new um(oS);return t.facade=n,wo.set(n,t),t},Ic=function(n){return wo.get(n)||{}},gh=function(n){return wo.has(n)}):(qa=HF("state"),WF[qa]=!0,dh=function(n,t){if(sm(n,qa))throw new um(oS);return t.facade=n,VF(n,qa,t),t},Ic=function(n){return sm(n,qa)?n[qa]:{}},gh=function(n){return sm(n,qa)});var wo,qa;aS.exports={set:dh,get:Ic,has:gh,enforce:YF,getterFor:$F}});var fm=X((unt,cS)=>{"use strict";var cm=In(),ZF=An(),JF=er(),mh=oo(),lm=ri(),jF=fh().CONFIGURABLE,KF=om(),lS=Va(),QF=lS.enforce,tU=lS.get,uS=String,yh=Object.defineProperty,eU=cm("".slice),nU=cm("".replace),rU=cm([].join),iU=lm&&!ZF(function(){return yh(function(){},"length",{value:8}).length!==8}),oU=String(String).split("String"),sU=cS.exports=function(n,t,e){eU(uS(t),0,7)==="Symbol("&&(t="["+nU(uS(t),/^Symbol\\(([^)]*)\\).*$/,"$1")+"]"),e&&e.getter&&(t="get "+t),e&&e.setter&&(t="set "+t),(!mh(n,"name")||jF&&n.name!==t)&&(lm?yh(n,"name",{value:t,configurable:!0}):n.name=t),iU&&e&&mh(e,"arity")&&n.length!==e.arity&&yh(n,"length",{value:e.arity});try{e&&mh(e,"constructor")&&e.constructor?lm&&yh(n,"prototype",{writable:!1}):n.prototype&&(n.prototype=void 0)}catch(s){}var i=QF(n);return mh(i,"source")||(i.source=rU(oU,typeof t=="string"?t:"")),n};Function.prototype.toString=sU(function(){return JF(this)&&tU(this).source||KF(this)},"toString")});var Ha=X((lnt,fS)=>{"use strict";var aU=er(),uU=Wo(),lU=fm(),cU=rh();fS.exports=function(n,t,e,i){i||(i={});var s=i.enumerable,u=i.name!==void 0?i.name:t;if(aU(e)&&lU(e,u,i),i.global)s?n[t]=e:cU(t,e);else{try{i.unsafe?n[t]&&(s=!0):delete n[t]}catch(c){}s?n[t]=e:uU.f(n,t,{value:e,enumerable:!1,configurable:!i.nonConfigurable,writable:!i.nonWritable})}return n}});var pS=X((cnt,hS)=>{"use strict";var fU=Math.ceil,hU=Math.floor;hS.exports=Math.trunc||function(t){var e=+t;return(e>0?hU:fU)(e)}});var Hi=X((fnt,dS)=>{"use strict";var pU=pS();dS.exports=function(n){var t=+n;return t!==t||t===0?0:pU(t)}});var vh=X((hnt,gS)=>{"use strict";var dU=Hi(),gU=Math.max,mU=Math.min;gS.exports=function(n,t){var e=dU(n);return e<0?gU(e+t,0):mU(e,t)}});var Wa=X((pnt,mS)=>{"use strict";var yU=Hi(),vU=Math.min;mS.exports=function(n){var t=yU(n);return t>0?vU(t,9007199254740991):0}});var ii=X((dnt,yS)=>{"use strict";var _U=Wa();yS.exports=function(n){return _U(n.length)}});var xS=X((gnt,_S)=>{"use strict";var xU=Uu(),EU=vh(),SU=ii(),vS=function(n){return function(t,e,i){var s=xU(t),u=SU(s);if(u===0)return!n&&-1;var c=EU(i,u),f;if(n&&e!==e){for(;u>c;)if(f=s[c++],f!==f)return!0}else for(;u>c;c++)if((n||c in s)&&s[c]===e)return n||c||0;return!n&&-1}};_S.exports={includes:vS(!0),indexOf:vS(!1)}});var pm=X((mnt,SS)=>{"use strict";var wU=In(),hm=oo(),MU=Uu(),bU=xS().indexOf,AU=ph(),ES=wU([].push);SS.exports=function(n,t){var e=MU(n),i=0,s=[],u;for(u in e)!hm(AU,u)&&hm(e,u)&&ES(s,u);for(;t.length>i;)hm(e,u=t[i++])&&(~bU(s,u)||ES(s,u));return s}});var _h=X((ynt,wS)=>{"use strict";wS.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var dm=X(MS=>{"use strict";var TU=pm(),CU=_h(),IU=CU.concat("length","prototype");MS.f=Object.getOwnPropertyNames||function(t){return TU(t,IU)}});var AS=X(bS=>{"use strict";bS.f=Object.getOwnPropertySymbols});var CS=X((xnt,TS)=>{"use strict";var PU=$s(),RU=In(),LU=dm(),NU=AS(),OU=so(),DU=RU([].concat);TS.exports=PU("Reflect","ownKeys")||function(t){var e=LU.f(OU(t)),i=NU.f;return i?DU(e,i(t)):e}});var gm=X((Ent,PS)=>{"use strict";var IS=oo(),FU=CS(),UU=lh(),BU=Wo();PS.exports=function(n,t,e){for(var i=FU(t),s=BU.f,u=UU.f,c=0;c<i.length;c++){var f=i[c];!IS(n,f)&&!(e&&IS(e,f))&&s(n,f,u(t,f))}}});var LS=X((Snt,RS)=>{"use strict";var zU=An(),GU=er(),kU=/#|\\.prototype\\./,Pc=function(n,t){var e=VU[qU(n)];return e===WU?!0:e===HU?!1:GU(t)?zU(t):!!t},qU=Pc.normalize=function(n){return String(n).replace(kU,".").toLowerCase()},VU=Pc.data={},HU=Pc.NATIVE="N",WU=Pc.POLYFILL="P";RS.exports=Pc});var sr=X((wnt,NS)=>{"use strict";var xh=Sn(),XU=lh().f,YU=xs(),$U=Ha(),ZU=rh(),JU=gm(),jU=LS();NS.exports=function(n,t){var e=n.target,i=n.global,s=n.stat,u,c,f,p,d,g;if(i?c=xh:s?c=xh[e]||ZU(e,{}):c=xh[e]&&xh[e].prototype,c)for(f in t){if(d=t[f],n.dontCallGetSet?(g=XU(c,f),p=g&&g.value):p=c[f],u=jU(i?f:e+(s?".":"#")+f,n.forced),!u&&p!==void 0){if(typeof d==typeof p)continue;JU(d,p)}(n.sham||p&&p.sham)&&YU(d,"sham",!0),$U(c,f,d,n)}}});var Rc=X((Mnt,OS)=>{"use strict";var KU=vs();OS.exports=Array.isArray||function(t){return KU(t)==="Array"}});var mm=X((bnt,DS)=>{"use strict";var QU=ri(),tB=Rc(),eB=TypeError,nB=Object.getOwnPropertyDescriptor,rB=QU&&!function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(n){return n instanceof TypeError}}();DS.exports=rB?function(n,t){if(tB(n)&&!nB(n,"length").writable)throw new eB("Cannot set read only .length");return n.length=t}:function(n,t){return n.length=t}});var Eh=X((Ant,FS)=>{"use strict";var iB=TypeError,oB=9007199254740991;FS.exports=function(n){if(n>oB)throw iB("Maximum allowed index exceeded");return n}});var Sh=X(()=>{"use strict";var sB=sr(),aB=Vi(),uB=ii(),lB=mm(),cB=Eh(),fB=An(),hB=fB(function(){return[].push.call({length:4294967296},1)!==4294967297}),pB=function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(n){return n instanceof TypeError}},dB=hB||!pB();sB({target:"Array",proto:!0,arity:1,forced:dB},{push:function(t){var e=aB(this),i=uB(e),s=arguments.length;cB(i+s);for(var u=0;u<s;u++)e[i]=arguments[u],i++;return lB(e,i),i}})});var US=X(()=>{"use strict";var gB=sr(),mB=vr();gB({target:"URL",proto:!0,enumerable:!0},{toJSON:function(){return mB(URL.prototype.toString,this)}})});var zS=X((Rnt,BS)=>{"use strict";BS.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}});var qS=X((Lnt,kS)=>{"use strict";var yB=uh(),ym=yB("span").classList,GS=ym&&ym.constructor&&ym.constructor.prototype;kS.exports=GS===Object.prototype?void 0:GS});var HS=X((Nnt,VS)=>{"use strict";var vB=pm(),_B=_h();VS.exports=Object.keys||function(t){return vB(t,_B)}});var XS=X(WS=>{"use strict";var xB=ri(),EB=jg(),SB=Wo(),wB=so(),MB=Uu(),bB=HS();WS.f=xB&&!EB?Object.defineProperties:function(t,e){wB(t);for(var i=MB(e),s=bB(e),u=s.length,c=0,f;u>c;)SB.f(t,f=s[c++],i[f]);return t}});var $S=X((Dnt,YS)=>{"use strict";var AB=$s();YS.exports=AB("document","documentElement")});var ku=X((Fnt,ew)=>{"use strict";var TB=so(),CB=XS(),ZS=_h(),IB=ph(),PB=$S(),RB=uh(),LB=hh(),JS=">",jS="<",_m="prototype",xm="script",QS=LB("IE_PROTO"),vm=function(){},tw=function(n){return jS+xm+JS+n+jS+"/"+xm+JS},KS=function(n){n.write(tw("")),n.close();var t=n.parentWindow.Object;return n=null,t},NB=function(){var n=RB("iframe"),t="java"+xm+":",e;return n.style.display="none",PB.appendChild(n),n.src=String(t),e=n.contentWindow.document,e.open(),e.write(tw("document.F=Object")),e.close(),e.F},wh,Mh=function(){try{wh=new ActiveXObject("htmlfile")}catch(t){}Mh=typeof document!="undefined"?document.domain&&wh?KS(wh):NB():KS(wh);for(var n=ZS.length;n--;)delete Mh[_m][ZS[n]];return Mh()};IB[QS]=!0;ew.exports=Object.create||function(t,e){var i;return t!==null?(vm[_m]=TB(t),i=new vm,vm[_m]=null,i[QS]=t):i=Mh(),e===void 0?i:CB.f(i,e)}});var wm=X((Unt,nw)=>{"use strict";var OB=Xr(),DB=ku(),FB=Wo().f,Em=OB("unscopables"),Sm=Array.prototype;Sm[Em]===void 0&&FB(Sm,Em,{configurable:!0,value:DB(null)});nw.exports=function(n){Sm[Em][n]=!0}});var qu=X((Bnt,rw)=>{"use strict";rw.exports={}});var ow=X((znt,iw)=>{"use strict";var UB=An();iw.exports=!UB(function(){function n(){}return n.prototype.constructor=null,Object.getPrototypeOf(new n)!==n.prototype})});var Lc=X((Gnt,aw)=>{"use strict";var BB=oo(),zB=er(),GB=Vi(),kB=hh(),qB=ow(),sw=kB("IE_PROTO"),Mm=Object,VB=Mm.prototype;aw.exports=qB?Mm.getPrototypeOf:function(n){var t=GB(n);if(BB(t,sw))return t[sw];var e=t.constructor;return zB(e)&&t instanceof e?e.prototype:t instanceof Mm?VB:null}});var Cm=X((knt,cw)=>{"use strict";var HB=An(),WB=er(),XB=xi(),YB=ku(),uw=Lc(),$B=Ha(),ZB=Xr(),JB=Cc(),Tm=ZB("iterator"),lw=!1,Es,bm,Am;[].keys&&(Am=[].keys(),"next"in Am?(bm=uw(uw(Am)),bm!==Object.prototype&&(Es=bm)):lw=!0);var jB=!XB(Es)||HB(function(){var n={};return Es[Tm].call(n)!==n});jB?Es={}:JB&&(Es=YB(Es));WB(Es[Tm])||$B(Es,Tm,function(){return this});cw.exports={IteratorPrototype:Es,BUGGY_SAFARI_ITERATORS:lw}});var Nc=X((qnt,hw)=>{"use strict";var KB=Wo().f,QB=oo(),tz=Xr(),fw=tz("toStringTag");hw.exports=function(n,t,e){n&&!e&&(n=n.prototype),n&&!QB(n,fw)&&KB(n,fw,{configurable:!0,value:t})}});var dw=X((Vnt,pw)=>{"use strict";var ez=Cm().IteratorPrototype,nz=ku(),rz=wc(),iz=Nc(),oz=qu(),sz=function(){return this};pw.exports=function(n,t,e,i){var s=t+" Iterator";return n.prototype=nz(ez,{next:rz(+!i,e)}),iz(n,s,!1,!0),oz[s]=sz,n}});var Oc=X((Hnt,gw)=>{"use strict";var az=In(),uz=_s();gw.exports=function(n,t,e){try{return az(uz(Object.getOwnPropertyDescriptor(n,t)[e]))}catch(i){}}});var yw=X((Wnt,mw)=>{"use strict";var lz=xi();mw.exports=function(n){return lz(n)||n===null}});var _w=X((Xnt,vw)=>{"use strict";var cz=yw(),fz=String,hz=TypeError;vw.exports=function(n){if(cz(n))return n;throw new hz("Can't set "+fz(n)+" as a prototype")}});var Vu=X((Ynt,xw)=>{"use strict";var pz=Oc(),dz=xi(),gz=Fu(),mz=_w();xw.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var n=!1,t={},e;try{e=pz(Object.prototype,"__proto__","set"),e(t,[]),n=t instanceof Array}catch(i){}return function(s,u){return gz(s),mz(u),dz(s)&&(n?e(s,u):s.__proto__=u),s}}():void 0)});var Rw=X(($nt,Pw)=>{"use strict";var yz=sr(),vz=vr(),bh=Cc(),Cw=fh(),_z=er(),xz=dw(),Ew=Lc(),Sw=Vu(),Ez=Nc(),Sz=xs(),Im=Ha(),wz=Xr(),ww=qu(),Iw=Cm(),Mz=Cw.PROPER,bz=Cw.CONFIGURABLE,Mw=Iw.IteratorPrototype,Ah=Iw.BUGGY_SAFARI_ITERATORS,Dc=wz("iterator"),bw="keys",Fc="values",Aw="entries",Tw=function(){return this};Pw.exports=function(n,t,e,i,s,u,c){xz(e,t,i);var f=function(x){if(x===s&&v)return v;if(!Ah&&x&&x in g)return g[x];switch(x){case bw:return function(){return new e(this,x)};case Fc:return function(){return new e(this,x)};case Aw:return function(){return new e(this,x)}}return function(){return new e(this)}},p=t+" Iterator",d=!1,g=n.prototype,y=g[Dc]||g["@@iterator"]||s&&g[s],v=!Ah&&y||f(s),E=t==="Array"&&g.entries||y,M,A,_;if(E&&(M=Ew(E.call(new n)),M!==Object.prototype&&M.next&&(!bh&&Ew(M)!==Mw&&(Sw?Sw(M,Mw):_z(M[Dc])||Im(M,Dc,Tw)),Ez(M,p,!0,!0),bh&&(ww[p]=Tw))),Mz&&s===Fc&&y&&y.name!==Fc&&(!bh&&bz?Sz(g,"name",Fc):(d=!0,v=function(){return vz(y,this)})),s)if(A={values:f(Fc),keys:u?v:f(bw),entries:f(Aw)},c)for(_ in A)(Ah||d||!(_ in g))&&Im(g,_,A[_]);else yz({target:t,proto:!0,forced:Ah||d},A);return(!bh||c)&&g[Dc]!==v&&Im(g,Dc,v,{name:s}),ww[t]=v,A}});var Nw=X((Znt,Lw)=>{"use strict";Lw.exports=function(n,t){return{value:n,done:t}}});var zw=X((Jnt,Bw)=>{"use strict";var Az=Uu(),Pm=wm(),Ow=qu(),Fw=Va(),Tz=Wo().f,Cz=Rw(),Th=Nw(),Iz=Cc(),Pz=ri(),Uw="Array Iterator",Rz=Fw.set,Lz=Fw.getterFor(Uw);Bw.exports=Cz(Array,"Array",function(n,t){Rz(this,{type:Uw,target:Az(n),index:0,kind:t})},function(){var n=Lz(this),t=n.target,e=n.index++;if(!t||e>=t.length)return n.target=null,Th(void 0,!0);switch(n.kind){case"keys":return Th(e,!1);case"values":return Th(t[e],!1)}return Th([e,t[e]],!1)},"values");var Dw=Ow.Arguments=Ow.Array;Pm("keys");Pm("values");Pm("entries");if(!Iz&&Pz&&Dw.name!=="values")try{Tz(Dw,"name",{value:"values"})}catch(n){}});var Bc=X(()=>{"use strict";var Gw=Sn(),qw=zS(),Nz=qS(),Uc=zw(),kw=xs(),Oz=Nc(),Dz=Xr(),Rm=Dz("iterator"),Lm=Uc.values,Vw=function(n,t){if(n){if(n[Rm]!==Lm)try{kw(n,Rm,Lm)}catch(i){n[Rm]=Lm}if(Oz(n,t,!0),qw[t]){for(var e in Uc)if(n[e]!==Uc[e])try{kw(n,e,Uc[e])}catch(i){n[e]=Uc[e]}}}};for(Ch in qw)Vw(Gw[Ch]&&Gw[Ch].prototype,Ch);var Ch;Vw(Nz,"DOMTokenList")});var Ih=X((Qnt,Hw)=>{"use strict";var Fz=vs(),Uz=In();Hw.exports=function(n){if(Fz(n)==="Function")return Uz(n)}});var zc=X((trt,Xw)=>{"use strict";var Ww=Ih(),Bz=_s(),zz=Sc(),Gz=Ww(Ww.bind);Xw.exports=function(n,t){return Bz(n),t===void 0?n:zz?Gz(n,t):function(){return n.apply(t,arguments)}}});var Zw=X((ert,$w)=>{"use strict";var kz=Rc(),qz=ii(),Vz=Eh(),Hz=zc(),Yw=function(n,t,e,i,s,u,c,f){for(var p=s,d=0,g=c?Hz(c,f):!1,y,v;d<i;)d in e&&(y=g?g(e[d],d,t):e[d],u>0&&kz(y)?(v=qz(y),p=Yw(n,t,y,v,p,u-1)-1):(Vz(p+1),n[p]=y),p++),d++;return p};$w.exports=Yw});var Kw=X((nrt,jw)=>{"use strict";var Wz=Xr(),Xz=Wz("toStringTag"),Jw={};Jw[Xz]="z";jw.exports=String(Jw)==="[object z]"});var Zs=X((rrt,Qw)=>{"use strict";var Yz=Kw(),$z=er(),Ph=vs(),Zz=Xr(),Jz=Zz("toStringTag"),jz=Object,Kz=Ph(function(){return arguments}())==="Arguments",Qz=function(n,t){try{return n[t]}catch(e){}};Qw.exports=Yz?Ph:function(n){var t,e,i;return n===void 0?"Undefined":n===null?"Null":typeof(e=Qz(t=jz(n),Jz))=="string"?e:Kz?Ph(t):(i=Ph(t))==="Object"&&$z(t.callee)?"Arguments":i}});var Om=X((irt,iM)=>{"use strict";var tG=In(),eG=An(),tM=er(),nG=Zs(),rG=$s(),iG=om(),eM=function(){},nM=rG("Reflect","construct"),Nm=/^\\s*(?:class|function)\\b/,oG=tG(Nm.exec),sG=!Nm.test(eM),Gc=function(t){if(!tM(t))return!1;try{return nM(eM,[],t),!0}catch(e){return!1}},rM=function(t){if(!tM(t))return!1;switch(nG(t)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return sG||!!oG(Nm,iG(t))}catch(e){return!0}};rM.sham=!0;iM.exports=!nM||eG(function(){var n;return Gc(Gc.call)||!Gc(Object)||!Gc(function(){n=!0})||n})?rM:Gc});var uM=X((ort,aM)=>{"use strict";var oM=Rc(),aG=Om(),uG=xi(),lG=Xr(),cG=lG("species"),sM=Array;aM.exports=function(n){var t;return oM(n)&&(t=n.constructor,aG(t)&&(t===sM||oM(t.prototype))?t=void 0:uG(t)&&(t=t[cG],t===null&&(t=void 0))),t===void 0?sM:t}});var Dm=X((srt,lM)=>{"use strict";var fG=uM();lM.exports=function(n,t){return new(fG(n))(t===0?0:t)}});var cM=X(()=>{"use strict";var hG=sr(),pG=Zw(),dG=Vi(),gG=ii(),mG=Hi(),yG=Dm();hG({target:"Array",proto:!0},{flat:function(){var t=arguments.length?arguments[0]:void 0,e=dG(this),i=gG(e),s=yG(e,0);return s.length=pG(s,e,e,i,0,t===void 0?1:mG(t)),s}})});var fM=X(()=>{"use strict";var vG=wm();vG("flat")});var mM=X((frt,gM)=>{"use strict";var _G=Xr(),pM=_G("iterator"),dM=!1;try{hM=0,Fm={next:function(){return{done:!!hM++}},return:function(){dM=!0}},Fm[pM]=function(){return this},Array.from(Fm,function(){throw 2})}catch(n){}var hM,Fm;gM.exports=function(n,t){try{if(!t&&!dM)return!1}catch(s){return!1}var e=!1;try{var i={};i[pM]=function(){return{next:function(){return{done:e=!0}}}},n(i)}catch(s){}return e}});var Rh=X((hrt,yM)=>{"use strict";yM.exports=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"});var Hu=X((prt,_M)=>{"use strict";var vM=fm(),xG=Wo();_M.exports=function(n,t,e){return e.get&&vM(e.get,t,{getter:!0}),e.set&&vM(e.set,t,{setter:!0}),xG.f(n,t,e)}});var Wi=X((drt,IM)=>{"use strict";var EG=Rh(),Gm=ri(),Ei=Sn(),wM=er(),Oh=xi(),js=oo(),km=Zs(),SG=zu(),wG=xs(),Um=Ha(),MG=Hu(),bG=Mc(),Dh=Lc(),Xu=Vu(),AG=Xr(),TG=sh(),MM=Va(),bM=MM.enforce,CG=MM.get,Lh=Ei.Int8Array,Bm=Lh&&Lh.prototype,xM=Ei.Uint8ClampedArray,EM=xM&&xM.prototype,Xo=Lh&&Dh(Lh),Mo=Bm&&Dh(Bm),IG=Object.prototype,qm=Ei.TypeError,SM=AG("toStringTag"),zm=TG("TYPED_ARRAY_TAG"),Nh="TypedArrayConstructor",Ss=EG&&!!Xu&&km(Ei.opera)!=="Opera",AM=!1,Li,Js,Wu,ws={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},Vm={BigInt64Array:8,BigUint64Array:8},PG=function(t){if(!Oh(t))return!1;var e=km(t);return e==="DataView"||js(ws,e)||js(Vm,e)},TM=function(n){var t=Dh(n);if(Oh(t)){var e=CG(t);return e&&js(e,Nh)?e[Nh]:TM(t)}},CM=function(n){if(!Oh(n))return!1;var t=km(n);return js(ws,t)||js(Vm,t)},RG=function(n){if(CM(n))return n;throw new qm("Target is not a typed array")},LG=function(n){if(wM(n)&&(!Xu||bG(Xo,n)))return n;throw new qm(SG(n)+" is not a typed array constructor")},NG=function(n,t,e,i){if(Gm){if(e)for(var s in ws){var u=Ei[s];if(u&&js(u.prototype,n))try{delete u.prototype[n]}catch(c){try{u.prototype[n]=t}catch(f){}}}(!Mo[n]||e)&&Um(Mo,n,e?t:Ss&&Bm[n]||t,i)}},OG=function(n,t,e){var i,s;if(Gm){if(Xu){if(e){for(i in ws)if(s=Ei[i],s&&js(s,n))try{delete s[n]}catch(u){}}if(!Xo[n]||e)try{return Um(Xo,n,e?t:Ss&&Xo[n]||t)}catch(u){}else return}for(i in ws)s=Ei[i],s&&(!s[n]||e)&&Um(s,n,t)}};for(Li in ws)Js=Ei[Li],Wu=Js&&Js.prototype,Wu?bM(Wu)[Nh]=Js:Ss=!1;for(Li in Vm)Js=Ei[Li],Wu=Js&&Js.prototype,Wu&&(bM(Wu)[Nh]=Js);if((!Ss||!wM(Xo)||Xo===Function.prototype)&&(Xo=function(){throw new qm("Incorrect invocation")},Ss))for(Li in ws)Ei[Li]&&Xu(Ei[Li],Xo);if((!Ss||!Mo||Mo===IG)&&(Mo=Xo.prototype,Ss))for(Li in ws)Ei[Li]&&Xu(Ei[Li].prototype,Mo);Ss&&Dh(EM)!==Mo&&Xu(EM,Mo);if(Gm&&!js(Mo,SM)){AM=!0,MG(Mo,SM,{configurable:!0,get:function(){return Oh(this)?this[zm]:void 0}});for(Li in ws)Ei[Li]&&wG(Ei[Li],zm,Li)}IM.exports={NATIVE_ARRAY_BUFFER_VIEWS:Ss,TYPED_ARRAY_TAG:AM&&zm,aTypedArray:RG,aTypedArrayConstructor:LG,exportTypedArrayMethod:NG,exportTypedArrayStaticMethod:OG,getTypedArrayConstructor:TM,isView:PG,isTypedArray:CM,TypedArray:Xo,TypedArrayPrototype:Mo}});var LM=X((grt,RM)=>{"use strict";var PM=Sn(),Hm=An(),DG=mM(),FG=Wi().NATIVE_ARRAY_BUFFER_VIEWS,UG=PM.ArrayBuffer,Xa=PM.Int8Array;RM.exports=!FG||!Hm(function(){Xa(1)})||!Hm(function(){new Xa(-1)})||!DG(function(n){new Xa,new Xa(null),new Xa(1.5),new Xa(n)},!0)||Hm(function(){return new Xa(new UG(2),1,void 0).length!==1})});var OM=X((mrt,NM)=>{"use strict";var BG=Ha();NM.exports=function(n,t,e){for(var i in t)BG(n,i,t[i],e);return n}});var Wm=X((yrt,DM)=>{"use strict";var zG=Mc(),GG=TypeError;DM.exports=function(n,t){if(zG(t,n))return n;throw new GG("Incorrect invocation")}});var Fh=X((vrt,FM)=>{"use strict";var kG=Hi(),qG=Wa(),VG=RangeError;FM.exports=function(n){if(n===void 0)return 0;var t=kG(n),e=qG(t);if(t!==e)throw new VG("Wrong length or index");return e}});var BM=X((_rt,UM)=>{"use strict";UM.exports=Math.sign||function(t){var e=+t;return e===0||e!==e?e:e<0?-1:1}});var kM=X((xrt,GM)=>{"use strict";var HG=2220446049250313e-31,zM=1/HG;GM.exports=function(n){return n+zM-zM}});var VM=X((Ert,qM)=>{"use strict";var WG=BM(),XG=kM(),YG=Math.abs,$G=2220446049250313e-31;qM.exports=function(n,t,e,i){var s=+n,u=YG(s),c=WG(s);if(u<i)return c*XG(u/i/t)*i*t;var f=(1+t/$G)*u,p=f-(f-u);return p>e||p!==p?c*(1/0):c*p}});var WM=X((Srt,HM)=>{"use strict";var ZG=VM(),JG=11920928955078125e-23,jG=34028234663852886e22,KG=11754943508222875e-54;HM.exports=Math.fround||function(t){return ZG(t,JG,jG,KG)}});var YM=X((wrt,XM)=>{"use strict";var QG=Array,t4=Math.abs,Ms=Math.pow,e4=Math.floor,n4=Math.log,r4=Math.LN2,i4=function(n,t,e){var i=QG(e),s=e*8-t-1,u=(1<<s)-1,c=u>>1,f=t===23?Ms(2,-24)-Ms(2,-77):0,p=n<0||n===0&&1/n<0?1:0,d=0,g,y,v;for(n=t4(n),n!==n||n===1/0?(y=n!==n?1:0,g=u):(g=e4(n4(n)/r4),v=Ms(2,-g),n*v<1&&(g--,v*=2),g+c>=1?n+=f/v:n+=f*Ms(2,1-c),n*v>=2&&(g++,v/=2),g+c>=u?(y=0,g=u):g+c>=1?(y=(n*v-1)*Ms(2,t),g+=c):(y=n*Ms(2,c-1)*Ms(2,t),g=0));t>=8;)i[d++]=y&255,y/=256,t-=8;for(g=g<<t|y,s+=t;s>0;)i[d++]=g&255,g/=256,s-=8;return i[d-1]|=p*128,i},o4=function(n,t){var e=n.length,i=e*8-t-1,s=(1<<i)-1,u=s>>1,c=i-7,f=e-1,p=n[f--],d=p&127,g;for(p>>=7;c>0;)d=d*256+n[f--],c-=8;for(g=d&(1<<-c)-1,d>>=-c,c+=t;c>0;)g=g*256+n[f--],c-=8;if(d===0)d=1-u;else{if(d===s)return g?NaN:p?-1/0:1/0;g+=Ms(2,t),d-=u}return(p?-1:1)*g*Ms(2,d-t)};XM.exports={pack:i4,unpack:o4}});var Xm=X((Mrt,ZM)=>{"use strict";var s4=Vi(),$M=vh(),a4=ii();ZM.exports=function(t){for(var e=s4(this),i=a4(e),s=arguments.length,u=$M(s>1?arguments[1]:void 0,i),c=s>2?arguments[2]:void 0,f=c===void 0?i:$M(c,i);f>u;)e[u++]=t;return e}});var Uh=X((brt,JM)=>{"use strict";var u4=In();JM.exports=u4([].slice)});var Ym=X((Art,KM)=>{"use strict";var l4=er(),c4=xi(),jM=Vu();KM.exports=function(n,t,e){var i,s;return jM&&l4(i=t.constructor)&&i!==e&&c4(s=i.prototype)&&s!==e.prototype&&jM(n,s),n}});var Hh=X((Trt,gb)=>{"use strict";var qh=Sn(),Km=In(),$m=ri(),f4=Rh(),cb=fh(),h4=xs(),p4=Hu(),QM=OM(),Zm=An(),Bh=Wm(),d4=Hi(),g4=Wa(),Gh=Fh(),m4=WM(),fb=YM(),y4=Lc(),tb=Vu(),v4=Xm(),_4=Uh(),x4=Ym(),E4=gm(),hb=Nc(),Qm=Va(),S4=cb.PROPER,eb=cb.CONFIGURABLE,$u="ArrayBuffer",Vh="DataView",Zu="prototype",w4="Wrong length",pb="Wrong index",nb=Qm.getterFor($u),qc=Qm.getterFor(Vh),rb=Qm.set,bo=qh[$u],Xi=bo,Yu=Xi&&Xi[Zu],Yo=qh[Vh],Ya=Yo&&Yo[Zu],ib=Object.prototype,M4=qh.Array,kh=qh.RangeError,b4=Km(v4),A4=Km([].reverse),db=fb.pack,ob=fb.unpack,sb=function(n){return[n&255]},ab=function(n){return[n&255,n>>8&255]},ub=function(n){return[n&255,n>>8&255,n>>16&255,n>>24&255]},lb=function(n){return n[3]<<24|n[2]<<16|n[1]<<8|n[0]},T4=function(n){return db(m4(n),23,4)},C4=function(n){return db(n,52,8)},zh=function(n,t,e){p4(n[Zu],t,{configurable:!0,get:function(){return e(this)[t]}})},Ks=function(n,t,e,i){var s=qc(n),u=Gh(e),c=!!i;if(u+t>s.byteLength)throw new kh(pb);var f=s.bytes,p=u+s.byteOffset,d=_4(f,p,p+t);return c?d:A4(d)},Qs=function(n,t,e,i,s,u){var c=qc(n),f=Gh(e),p=i(+s),d=!!u;if(f+t>c.byteLength)throw new kh(pb);for(var g=c.bytes,y=f+c.byteOffset,v=0;v<t;v++)g[y+v]=p[d?v:t-v-1]};f4?(Jm=S4&&bo.name!==$u,!Zm(function(){bo(1)})||!Zm(function(){new bo(-1)})||Zm(function(){return new bo,new bo(1.5),new bo(NaN),bo.length!==1||Jm&&!eb})?(Xi=function(t){return Bh(this,Yu),x4(new bo(Gh(t)),this,Xi)},Xi[Zu]=Yu,Yu.constructor=Xi,E4(Xi,bo)):Jm&&eb&&h4(bo,"name",$u),tb&&y4(Ya)!==ib&&tb(Ya,ib),kc=new Yo(new Xi(2)),jm=Km(Ya.setInt8),kc.setInt8(0,2147483648),kc.setInt8(1,2147483649),(kc.getInt8(0)||!kc.getInt8(1))&&QM(Ya,{setInt8:function(t,e){jm(this,t,e<<24>>24)},setUint8:function(t,e){jm(this,t,e<<24>>24)}},{unsafe:!0})):(Xi=function(t){Bh(this,Yu);var e=Gh(t);rb(this,{type:$u,bytes:b4(M4(e),0),byteLength:e}),$m||(this.byteLength=e,this.detached=!1)},Yu=Xi[Zu],Yo=function(t,e,i){Bh(this,Ya),Bh(t,Yu);var s=nb(t),u=s.byteLength,c=d4(e);if(c<0||c>u)throw new kh("Wrong offset");if(i=i===void 0?u-c:g4(i),c+i>u)throw new kh(w4);rb(this,{type:Vh,buffer:t,byteLength:i,byteOffset:c,bytes:s.bytes}),$m||(this.buffer=t,this.byteLength=i,this.byteOffset=c)},Ya=Yo[Zu],$m&&(zh(Xi,"byteLength",nb),zh(Yo,"buffer",qc),zh(Yo,"byteLength",qc),zh(Yo,"byteOffset",qc)),QM(Ya,{getInt8:function(t){return Ks(this,1,t)[0]<<24>>24},getUint8:function(t){return Ks(this,1,t)[0]},getInt16:function(t){var e=Ks(this,2,t,arguments.length>1?arguments[1]:!1);return(e[1]<<8|e[0])<<16>>16},getUint16:function(t){var e=Ks(this,2,t,arguments.length>1?arguments[1]:!1);return e[1]<<8|e[0]},getInt32:function(t){return lb(Ks(this,4,t,arguments.length>1?arguments[1]:!1))},getUint32:function(t){return lb(Ks(this,4,t,arguments.length>1?arguments[1]:!1))>>>0},getFloat32:function(t){return ob(Ks(this,4,t,arguments.length>1?arguments[1]:!1),23)},getFloat64:function(t){return ob(Ks(this,8,t,arguments.length>1?arguments[1]:!1),52)},setInt8:function(t,e){Qs(this,1,t,sb,e)},setUint8:function(t,e){Qs(this,1,t,sb,e)},setInt16:function(t,e){Qs(this,2,t,ab,e,arguments.length>2?arguments[2]:!1)},setUint16:function(t,e){Qs(this,2,t,ab,e,arguments.length>2?arguments[2]:!1)},setInt32:function(t,e){Qs(this,4,t,ub,e,arguments.length>2?arguments[2]:!1)},setUint32:function(t,e){Qs(this,4,t,ub,e,arguments.length>2?arguments[2]:!1)},setFloat32:function(t,e){Qs(this,4,t,T4,e,arguments.length>2?arguments[2]:!1)},setFloat64:function(t,e){Qs(this,8,t,C4,e,arguments.length>2?arguments[2]:!1)}}));var Jm,kc,jm;hb(Xi,$u);hb(Yo,Vh);gb.exports={ArrayBuffer:Xi,DataView:Yo}});var yb=X((Crt,mb)=>{"use strict";var I4=xi(),P4=Math.floor;mb.exports=Number.isInteger||function(t){return!I4(t)&&isFinite(t)&&P4(t)===t}});var _b=X((Irt,vb)=>{"use strict";var R4=Hi(),L4=RangeError;vb.exports=function(n){var t=R4(n);if(t<0)throw new L4("The argument can't be less than 0");return t}});var t0=X((Prt,xb)=>{"use strict";var N4=_b(),O4=RangeError;xb.exports=function(n,t){var e=N4(n);if(e%t)throw new O4("Wrong offset");return e}});var Sb=X((Rrt,Eb)=>{"use strict";var D4=Math.round;Eb.exports=function(n){var t=D4(n);return t<0?0:t>255?255:t&255}});var Mb=X((Lrt,wb)=>{"use strict";var F4=Om(),U4=zu(),B4=TypeError;wb.exports=function(n){if(F4(n))return n;throw new B4(U4(n)+" is not a constructor")}});var e0=X((Nrt,Ab)=>{"use strict";var z4=Zs(),bb=Tc(),G4=th(),k4=qu(),q4=Xr(),V4=q4("iterator");Ab.exports=function(n){if(!G4(n))return bb(n,V4)||bb(n,"@@iterator")||k4[z4(n)]}});var Cb=X((Ort,Tb)=>{"use strict";var H4=vr(),W4=_s(),X4=so(),Y4=zu(),$4=e0(),Z4=TypeError;Tb.exports=function(n,t){var e=arguments.length<2?$4(n):t;if(W4(e))return X4(H4(e,n));throw new Z4(Y4(n)+" is not iterable")}});var Pb=X((Drt,Ib)=>{"use strict";var J4=Xr(),j4=qu(),K4=J4("iterator"),Q4=Array.prototype;Ib.exports=function(n){return n!==void 0&&(j4.Array===n||Q4[K4]===n)}});var n0=X((Frt,Rb)=>{"use strict";var tk=Zs();Rb.exports=function(n){var t=tk(n);return t==="BigInt64Array"||t==="BigUint64Array"}});var Wh=X((Urt,Lb)=>{"use strict";var ek=$g(),nk=TypeError;Lb.exports=function(n){var t=ek(n,"number");if(typeof t=="number")throw new nk("Can't convert number to bigint");return BigInt(t)}});var Ob=X((Brt,Nb)=>{"use strict";var rk=zc(),ik=vr(),ok=Mb(),sk=Vi(),ak=ii(),uk=Cb(),lk=e0(),ck=Pb(),fk=n0(),hk=Wi().aTypedArrayConstructor,pk=Wh();Nb.exports=function(t){var e=ok(this),i=sk(t),s=arguments.length,u=s>1?arguments[1]:void 0,c=u!==void 0,f=lk(i),p,d,g,y,v,E,M,A;if(f&&!ck(f))for(M=uk(i,f),A=M.next,i=[];!(E=ik(A,M)).done;)i.push(E.value);for(c&&s>2&&(u=rk(u,arguments[2])),d=ak(i),g=new(hk(e))(d),y=fk(g),p=0;d>p;p++)v=c?u(i[p],p):i[p],g[p]=y?pk(v):+v;return g}});var Ub=X((zrt,Fb)=>{"use strict";var dk=zc(),gk=In(),mk=Qf(),yk=Vi(),vk=ii(),_k=Dm(),Db=gk([].push),ta=function(n){var t=n===1,e=n===2,i=n===3,s=n===4,u=n===6,c=n===7,f=n===5||u;return function(p,d,g,y){for(var v=yk(p),E=mk(v),M=vk(E),A=dk(d,g),_=0,x=y||_k,T=t?x(p,M):e||c?x(p,0):void 0,w,R;M>_;_++)if((f||_ in E)&&(w=E[_],R=A(w,_,v),n))if(t)T[_]=R;else if(R)switch(n){case 3:return!0;case 5:return w;case 6:return _;case 2:Db(T,w)}else switch(n){case 4:return!1;case 7:Db(T,w)}return u?-1:i||s?s:T}};Fb.exports={forEach:ta(0),map:ta(1),filter:ta(2),some:ta(3),every:ta(4),find:ta(5),findIndex:ta(6),filterReject:ta(7)}});var r0=X((Grt,zb)=>{"use strict";var xk=$s(),Ek=Hu(),Sk=Xr(),wk=ri(),Bb=Sk("species");zb.exports=function(n){var t=xk(n);wk&&t&&!t[Bb]&&Ek(t,Bb,{configurable:!0,get:function(){return this}})}});var i0=X((krt,Gb)=>{"use strict";var Mk=ii();Gb.exports=function(n,t,e){for(var i=0,s=arguments.length>2?e:Mk(t),u=new n(s);s>i;)u[i]=t[i++];return u}});var sA=X((qrt,f0)=>{"use strict";var kb=sr(),Kb=Sn(),qb=vr(),bk=ri(),Ak=LM(),Xc=Wi(),Qb=Hh(),Vb=Wm(),Tk=wc(),Vc=xs(),Ck=yb(),Ik=Wa(),Hb=Fh(),o0=t0(),Pk=Sb(),tA=ah(),Hc=oo(),Rk=Zs(),u0=xi(),Lk=Ac(),Nk=ku(),Ok=Mc(),Xh=Vu(),Dk=dm().f,Wb=Ob(),Fk=Ub().forEach,Uk=r0(),Bk=Hu(),eA=Wo(),nA=lh(),Xb=i0(),h0=Va(),zk=Ym(),l0=h0.get,Gk=h0.set,kk=h0.enforce,rA=eA.f,qk=nA.f,s0=Kb.RangeError,iA=Qb.ArrayBuffer,Vk=iA.prototype,Hk=Qb.DataView,Yh=Xc.NATIVE_ARRAY_BUFFER_VIEWS,Yb=Xc.TYPED_ARRAY_TAG,$b=Xc.TypedArray,Wc=Xc.TypedArrayPrototype,c0=Xc.isTypedArray,$h="BYTES_PER_ELEMENT",a0="Wrong length",Zh=function(n,t){Bk(n,t,{configurable:!0,get:function(){return l0(this)[t]}})},Zb=function(n){var t;return Ok(Vk,n)||(t=Rk(n))==="ArrayBuffer"||t==="SharedArrayBuffer"},oA=function(n,t){return c0(n)&&!Lk(t)&&t in n&&Ck(+t)&&t>=0},Jb=function(t,e){return e=tA(e),oA(t,e)?Tk(2,t[e]):qk(t,e)},jb=function(t,e,i){return e=tA(e),oA(t,e)&&u0(i)&&Hc(i,"value")&&!Hc(i,"get")&&!Hc(i,"set")&&!i.configurable&&(!Hc(i,"writable")||i.writable)&&(!Hc(i,"enumerable")||i.enumerable)?(t[e]=i.value,t):rA(t,e,i)};bk?(Yh||(nA.f=Jb,eA.f=jb,Zh(Wc,"buffer"),Zh(Wc,"byteOffset"),Zh(Wc,"byteLength"),Zh(Wc,"length")),kb({target:"Object",stat:!0,forced:!Yh},{getOwnPropertyDescriptor:Jb,defineProperty:jb}),f0.exports=function(n,t,e){var i=n.match(/\\d+/)[0]/8,s=n+(e?"Clamped":"")+"Array",u="get"+n,c="set"+n,f=Kb[s],p=f,d=p&&p.prototype,g={},y=function(A,_){var x=l0(A);return x.view[u](_*i+x.byteOffset,!0)},v=function(A,_,x){var T=l0(A);T.view[c](_*i+T.byteOffset,e?Pk(x):x,!0)},E=function(A,_){rA(A,_,{get:function(){return y(this,_)},set:function(x){return v(this,_,x)},enumerable:!0})};Yh?Ak&&(p=t(function(A,_,x,T){return Vb(A,d),zk(function(){return u0(_)?Zb(_)?T!==void 0?new f(_,o0(x,i),T):x!==void 0?new f(_,o0(x,i)):new f(_):c0(_)?Xb(p,_):qb(Wb,p,_):new f(Hb(_))}(),A,p)}),Xh&&Xh(p,$b),Fk(Dk(f),function(A){A in p||Vc(p,A,f[A])}),p.prototype=d):(p=t(function(A,_,x,T){Vb(A,d);var w=0,R=0,B,U,D;if(!u0(_))D=Hb(_),U=D*i,B=new iA(U);else if(Zb(_)){B=_,R=o0(x,i);var P=_.byteLength;if(T===void 0){if(P%i)throw new s0(a0);if(U=P-R,U<0)throw new s0(a0)}else if(U=Ik(T)*i,U+R>P)throw new s0(a0);D=U/i}else return c0(_)?Xb(p,_):qb(Wb,p,_);for(Gk(A,{buffer:B,byteOffset:R,byteLength:U,length:D,view:new Hk(B)});w<D;)E(A,w++)}),Xh&&Xh(p,$b),d=p.prototype=Nk(Wc)),d.constructor!==p&&Vc(d,"constructor",p),kk(d).TypedArrayConstructor=p,Yb&&Vc(d,Yb,s);var M=p!==f;g[s]=p,kb({global:!0,constructor:!0,forced:M,sham:!Yh},g),$h in p||Vc(p,$h,i),$h in d||Vc(d,$h,i),Uk(s)}):f0.exports=function(){}});var p0=X(()=>{"use strict";var Wk=sA();Wk("Float32",function(n){return function(e,i,s){return n(this,e,i,s)}})});var d0=X(()=>{"use strict";var aA=Wi(),Xk=ii(),Yk=Hi(),$k=aA.aTypedArray,Zk=aA.exportTypedArrayMethod;Zk("at",function(t){var e=$k(this),i=Xk(e),s=Yk(t),u=s>=0?s:i+s;return u<0||u>=i?void 0:e[u]})});var g0=X(()=>{"use strict";var uA=Wi(),Jk=Xm(),jk=Wh(),Kk=Zs(),Qk=vr(),tq=In(),eq=An(),nq=uA.aTypedArray,rq=uA.exportTypedArrayMethod,iq=tq("".slice),oq=eq(function(){var n=0;return new Int8Array(2).fill({valueOf:function(){return n++}}),n!==1});rq("fill",function(t){var e=arguments.length;nq(this);var i=iq(Kk(this),0,3)==="Big"?jk(t):+t;return Qk(Jk,this,i,e>1?arguments[1]:void 0,e>2?arguments[2]:void 0)},oq)});var m0=X((Zrt,cA)=>{"use strict";var sq=zc(),aq=Qf(),uq=Vi(),lq=ii(),lA=function(n){var t=n===1;return function(e,i,s){for(var u=uq(e),c=aq(u),f=lq(c),p=sq(i,s),d,g;f-- >0;)if(d=c[f],g=p(d,f,u),g)switch(n){case 0:return d;case 1:return f}return t?-1:void 0}};cA.exports={findLast:lA(0),findLastIndex:lA(1)}});var y0=X(()=>{"use strict";var fA=Wi(),cq=m0().findLast,fq=fA.aTypedArray,hq=fA.exportTypedArrayMethod;hq("findLast",function(t){return cq(fq(this),t,arguments.length>1?arguments[1]:void 0)})});var v0=X(()=>{"use strict";var hA=Wi(),pq=m0().findLastIndex,dq=hA.aTypedArray,gq=hA.exportTypedArrayMethod;gq("findLastIndex",function(t){return pq(dq(this),t,arguments.length>1?arguments[1]:void 0)})});var S0=X(()=>{"use strict";var dA=Sn(),gA=vr(),E0=Wi(),mq=ii(),yq=t0(),vq=Vi(),mA=An(),_q=dA.RangeError,_0=dA.Int8Array,pA=_0&&_0.prototype,yA=pA&&pA.set,xq=E0.aTypedArray,Eq=E0.exportTypedArrayMethod,x0=!mA(function(){var n=new Uint8ClampedArray(2);return gA(yA,n,{length:1,0:3},1),n[1]!==3}),Sq=x0&&E0.NATIVE_ARRAY_BUFFER_VIEWS&&mA(function(){var n=new _0(2);return n.set(1),n.set("2",1),n[0]!==0||n[1]!==2});Eq("set",function(t){xq(this);var e=yq(arguments.length>1?arguments[1]:void 0,1),i=vq(t);if(x0)return gA(yA,this,i,e);var s=this.length,u=mq(i),c=0;if(u+e>s)throw new _q("Wrong length");for(;c<u;)this[e+c]=i[c++]},!x0||Sq)});var M0=X((nit,_A)=>{"use strict";var vA=Uh(),wq=Math.floor,w0=function(n,t){var e=n.length;if(e<8)for(var i=1,s,u;i<e;){for(u=i,s=n[i];u&&t(n[u-1],s)>0;)n[u]=n[--u];u!==i++&&(n[u]=s)}else for(var c=wq(e/2),f=w0(vA(n,0,c),t),p=w0(vA(n,c),t),d=f.length,g=p.length,y=0,v=0;y<d||v<g;)n[y+v]=y<d&&v<g?t(f[y],p[v])<=0?f[y++]:p[v++]:y<d?f[y++]:p[v++];return n};_A.exports=w0});var b0=X((rit,EA)=>{"use strict";var Mq=Bu(),xA=Mq.match(/firefox\\/(\\d+)/i);EA.exports=!!xA&&+xA[1]});var A0=X((iit,SA)=>{"use strict";var bq=Bu();SA.exports=/MSIE|Trident/.test(bq)});var T0=X((oit,MA)=>{"use strict";var Aq=Bu(),wA=Aq.match(/AppleWebKit\\/(\\d+)\\./);MA.exports=!!wA&&+wA[1]});var I0=X(()=>{"use strict";var Tq=Sn(),Cq=Ih(),C0=An(),Iq=_s(),Pq=M0(),IA=Wi(),bA=b0(),Rq=A0(),AA=bc(),TA=T0(),Lq=IA.aTypedArray,Nq=IA.exportTypedArrayMethod,Yc=Tq.Uint16Array,Ju=Yc&&Cq(Yc.prototype.sort),Oq=!!Ju&&!(C0(function(){Ju(new Yc(2),null)})&&C0(function(){Ju(new Yc(2),{})})),CA=!!Ju&&!C0(function(){if(AA)return AA<74;if(bA)return bA<67;if(Rq)return!0;if(TA)return TA<602;var n=new Yc(516),t=Array(516),e,i;for(e=0;e<516;e++)i=e%4,n[e]=515-e,t[e]=e-2*i+3;for(Ju(n,function(s,u){return(s/4|0)-(u/4|0)}),e=0;e<516;e++)if(n[e]!==t[e])return!0}),Dq=function(n){return function(t,e){return n!==void 0?+n(t,e)||0:e!==e?-1:t!==t?1:t===0&&e===0?1/t>0&&1/e<0?1:-1:t>e}};Nq("sort",function(t){return t!==void 0&&Iq(t),CA?Ju(this,t):Pq(Lq(this),Dq(t))},!CA||Oq)});var RA=X((uit,PA)=>{"use strict";var Fq=ii();PA.exports=function(n,t){for(var e=Fq(n),i=new t(e),s=0;s<e;s++)i[s]=n[e-s-1];return i}});var R0=X(()=>{"use strict";var Uq=RA(),P0=Wi(),Bq=P0.aTypedArray,zq=P0.exportTypedArrayMethod,Gq=P0.getTypedArrayConstructor;zq("toReversed",function(){return Uq(Bq(this),Gq(this))})});var L0=X(()=>{"use strict";var Jh=Wi(),kq=In(),qq=_s(),Vq=i0(),Hq=Jh.aTypedArray,Wq=Jh.getTypedArrayConstructor,Xq=Jh.exportTypedArrayMethod,Yq=kq(Jh.TypedArrayPrototype.sort);Xq("toSorted",function(t){t!==void 0&&qq(t);var e=Hq(this),i=Vq(Wq(e),e);return Yq(i,t)})});var NA=X((pit,LA)=>{"use strict";var $q=ii(),Zq=Hi(),Jq=RangeError;LA.exports=function(n,t,e,i){var s=$q(n),u=Zq(e),c=u<0?s+u:u;if(c>=s||c<0)throw new Jq("Incorrect index");for(var f=new t(s),p=0;p<s;p++)f[p]=p===c?i:n[p];return f}});var O0=X(()=>{"use strict";var jq=NA(),N0=Wi(),Kq=n0(),Qq=Hi(),t5=Wh(),e5=N0.aTypedArray,n5=N0.getTypedArrayConstructor,r5=N0.exportTypedArrayMethod,i5=!!function(){try{new Int8Array(1).with(2,{valueOf:function(){throw 8}})}catch(n){return n===8}}();r5("with",function(n,t){var e=e5(this),i=Qq(n),s=Kq(e)?t5(t):+t;return jq(e,n5(e),i,s)},!i5)});var F0=X(()=>{"use strict";var o5=sr(),s5=Sn(),a5=Hh(),u5=r0(),D0="ArrayBuffer",OA=a5[D0],l5=s5[D0];o5({global:!0,constructor:!0,forced:l5!==OA},{ArrayBuffer:OA});u5(D0)});var G0=X(()=>{"use strict";var c5=sr(),B0=Ih(),f5=An(),BA=Hh(),DA=so(),FA=vh(),h5=Wa(),z0=BA.ArrayBuffer,U0=BA.DataView,zA=U0.prototype,UA=B0(z0.prototype.slice),p5=B0(zA.getUint8),d5=B0(zA.setUint8),g5=f5(function(){return!new z0(2).slice(1,void 0).byteLength});c5({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:g5},{slice:function(t,e){if(UA&&e===void 0)return UA(DA(this),t);for(var i=DA(this).byteLength,s=FA(t,i),u=FA(e===void 0?i:e,i),c=new z0(h5(u-s)),f=new U0(this),p=new U0(c),d=0;s<u;)d5(p,d++,p5(f,s++));return c}})});var k0=X((xit,qA)=>{"use strict";var kA=Sn(),m5=Oc(),y5=vs(),GA=kA.ArrayBuffer,v5=kA.TypeError;qA.exports=GA&&m5(GA.prototype,"byteLength","get")||function(n){if(y5(n)!=="ArrayBuffer")throw new v5("ArrayBuffer expected");return n.byteLength}});var q0=X((Eit,VA)=>{"use strict";var _5=Sn(),x5=Rh(),E5=k0(),S5=_5.DataView;VA.exports=function(n){if(!x5||E5(n)!==0)return!1;try{return new S5(n),!1}catch(t){return!0}}});var V0=X(()=>{"use strict";var w5=ri(),M5=Hu(),b5=q0(),HA=ArrayBuffer.prototype;w5&&!("detached"in HA)&&M5(HA,"detached",{configurable:!0,get:function(){return b5(this)}})});var XA=X((Mit,WA)=>{"use strict";var A5=q0(),T5=TypeError;WA.exports=function(n){if(A5(n))throw new T5("ArrayBuffer is detached");return n}});var H0=X((bit,YA)=>{"use strict";var $c=Sn(),C5=Bu(),I5=vs(),jh=function(n){return C5.slice(0,n.length)===n};YA.exports=function(){return jh("Bun/")?"BUN":jh("Cloudflare-Workers")?"CLOUDFLARE":jh("Deno/")?"DENO":jh("Node.js/")?"NODE":$c.Bun&&typeof Bun.version=="string"?"BUN":$c.Deno&&typeof Deno.version=="object"?"DENO":I5($c.process)==="process"?"NODE":$c.window&&$c.document?"BROWSER":"REST"}()});var ZA=X((Ait,$A)=>{"use strict";var P5=H0();$A.exports=P5==="NODE"});var jA=X((Tit,JA)=>{"use strict";var R5=Sn(),L5=ZA();JA.exports=function(n){if(L5){try{return R5.process.getBuiltinModule(n)}catch(t){}try{return Function('return require("'+n+'")')()}catch(t){}}}});var Y0=X((Cit,QA)=>{"use strict";var N5=Sn(),O5=An(),W0=bc(),X0=H0(),KA=N5.structuredClone;QA.exports=!!KA&&!O5(function(){if(X0==="DENO"&&W0>92||X0==="NODE"&&W0>94||X0==="BROWSER"&&W0>97)return!1;var n=new ArrayBuffer(8),t=KA(n,{transfer:[n]});return n.byteLength!==0||t.byteLength!==8})});var rT=X((Iit,nT)=>{"use strict";var j0=Sn(),D5=jA(),F5=Y0(),U5=j0.structuredClone,tT=j0.ArrayBuffer,Kh=j0.MessageChannel,J0=!1,$0,eT,Qh,Z0;if(F5)J0=function(n){U5(n,{transfer:[n]})};else if(tT)try{Kh||($0=D5("worker_threads"),$0&&(Kh=$0.MessageChannel)),Kh&&(eT=new Kh,Qh=new tT(2),Z0=function(n){eT.port1.postMessage(null,[n])},Qh.byteLength===2&&(Z0(Qh),Qh.byteLength===0&&(J0=Z0)))}catch(n){}nT.exports=J0});var ry=X((Pit,cT)=>{"use strict";var ty=Sn(),ey=In(),aT=Oc(),B5=Fh(),z5=XA(),G5=k0(),iT=rT(),K0=Y0(),k5=ty.structuredClone,uT=ty.ArrayBuffer,Q0=ty.DataView,q5=Math.min,ny=uT.prototype,lT=Q0.prototype,V5=ey(ny.slice),oT=aT(ny,"resizable","get"),sT=aT(ny,"maxByteLength","get"),H5=ey(lT.getInt8),W5=ey(lT.setInt8);cT.exports=(K0||iT)&&function(n,t,e){var i=G5(n),s=t===void 0?i:B5(t),u=!oT||!oT(n),c;if(z5(n),K0&&(n=k5(n,{transfer:[n]}),i===s&&(e||u)))return n;if(i>=s&&(!e||u))c=V5(n,0,s);else{var f=e&&!u&&sT?{maxByteLength:sT(n)}:void 0;c=new uT(s,f);for(var p=new Q0(n),d=new Q0(c),g=q5(s,i),y=0;y<g;y++)W5(d,y,H5(p,y))}return K0||iT(n),c}});var iy=X(()=>{"use strict";var X5=sr(),fT=ry();fT&&X5({target:"ArrayBuffer",proto:!0},{transfer:function(){return fT(this,arguments.length?arguments[0]:void 0,!0)}})});var oy=X(()=>{"use strict";var Y5=sr(),hT=ry();hT&&Y5({target:"ArrayBuffer",proto:!0},{transferToFixedLength:function(){return hT(this,arguments.length?arguments[0]:void 0,!1)}})});var Ao=X((Dit,pT)=>{"use strict";var sy=In(),tp=Set.prototype;pT.exports={Set,add:sy(tp.add),has:sy(tp.has),remove:sy(tp.delete),proto:tp}});var ea=X((Fit,dT)=>{"use strict";var $5=Ao().has;dT.exports=function(n){return $5(n),n}});var na=X((Uit,gT)=>{"use strict";var Z5=vr();gT.exports=function(n,t,e){for(var i=e?n:n.iterator,s=n.next,u,c;!(u=Z5(s,i)).done;)if(c=t(u.value),c!==void 0)return c}});var ju=X((Bit,xT)=>{"use strict";var mT=In(),J5=na(),yT=Ao(),j5=yT.Set,vT=yT.proto,K5=mT(vT.forEach),_T=mT(vT.keys),Q5=_T(new j5).next;xT.exports=function(n,t,e){return e?J5({iterator:_T(n),next:Q5},t):K5(n,t)}});var ep=X((zit,ST)=>{"use strict";var ET=Ao(),tV=ju(),eV=ET.Set,nV=ET.add;ST.exports=function(n){var t=new eV;return tV(n,function(e){nV(t,e)}),t}});var Ku=X((Git,wT)=>{"use strict";var rV=Oc(),iV=Ao();wT.exports=rV(iV.proto,"size","get")||function(n){return n.size}});var bT=X((kit,MT)=>{"use strict";MT.exports=function(n){return{iterator:n,next:n.next,done:!1}}});var ra=X((qit,RT)=>{"use strict";var AT=_s(),IT=so(),TT=vr(),oV=Hi(),sV=bT(),CT="Invalid size",aV=RangeError,uV=TypeError,lV=Math.max,PT=function(n,t){this.set=n,this.size=lV(t,0),this.has=AT(n.has),this.keys=AT(n.keys)};PT.prototype={getIterator:function(){return sV(IT(TT(this.keys,this.set)))},includes:function(n){return TT(this.has,this.set,n)}};RT.exports=function(n){IT(n);var t=+n.size;if(t!==t)throw new uV(CT);var e=oV(t);if(e<0)throw new aV(CT);return new PT(n,e)}});var DT=X((Vit,OT)=>{"use strict";var cV=ea(),NT=Ao(),fV=ep(),hV=Ku(),pV=ra(),dV=ju(),gV=na(),mV=NT.has,LT=NT.remove;OT.exports=function(t){var e=cV(this),i=pV(t),s=fV(e);return hV(e)<=i.size?dV(e,function(u){i.includes(u)&<(s,u)}):gV(i.getIterator(),function(u){mV(e,u)&<(s,u)}),s}});var ia=X((Hit,BT)=>{"use strict";var yV=$s(),FT=function(n){return{size:n,has:function(){return!1},keys:function(){return{next:function(){return{done:!0}}}}}},UT=function(n){return{size:n,has:function(){return!0},keys:function(){throw new Error("e")}}};BT.exports=function(n,t){var e=yV("Set");try{new e()[n](FT(0));try{return new e()[n](FT(-1)),!1}catch(s){if(!t)return!0;try{return new e()[n](UT(-1/0)),!1}catch(u){var i=new e;return i.add(1),i.add(2),t(i[n](UT(1/0)))}}}catch(s){return!1}}});var zT=X(()=>{"use strict";var vV=sr(),_V=DT(),xV=ia(),EV=!xV("difference",function(n){return n.size===0});vV({target:"Set",proto:!0,real:!0,forced:EV},{difference:_V})});var qT=X((Yit,kT)=>{"use strict";var SV=ea(),ay=Ao(),wV=Ku(),MV=ra(),bV=ju(),AV=na(),TV=ay.Set,GT=ay.add,CV=ay.has;kT.exports=function(t){var e=SV(this),i=MV(t),s=new TV;return wV(e)>i.size?AV(i.getIterator(),function(u){CV(e,u)&>(s,u)}):bV(e,function(u){i.includes(u)&>(s,u)}),s}});var VT=X(()=>{"use strict";var IV=sr(),PV=An(),RV=qT(),LV=ia(),NV=!LV("intersection",function(n){return n.size===2&&n.has(1)&&n.has(2)})||PV(function(){return String(Array.from(new Set([1,2,3]).intersection(new Set([3,2]))))!=="3,2"});IV({target:"Set",proto:!0,real:!0,forced:NV},{intersection:RV})});var uy=X((Jit,WT)=>{"use strict";var OV=vr(),HT=so(),DV=Tc();WT.exports=function(n,t,e){var i,s;HT(n);try{if(i=DV(n,"return"),!i){if(t==="throw")throw e;return e}i=OV(i,n)}catch(u){s=!0,i=u}if(t==="throw")throw e;if(s)throw i;return HT(i),e}});var YT=X((jit,XT)=>{"use strict";var FV=ea(),UV=Ao().has,BV=Ku(),zV=ra(),GV=ju(),kV=na(),qV=uy();XT.exports=function(t){var e=FV(this),i=zV(t);if(BV(e)<=i.size)return GV(e,function(u){if(i.includes(u))return!1},!0)!==!1;var s=i.getIterator();return kV(s,function(u){if(UV(e,u))return qV(s,"normal",!1)})!==!1}});var $T=X(()=>{"use strict";var VV=sr(),HV=YT(),WV=ia(),XV=!WV("isDisjointFrom",function(n){return!n});VV({target:"Set",proto:!0,real:!0,forced:XV},{isDisjointFrom:HV})});var JT=X((tot,ZT)=>{"use strict";var YV=ea(),$V=Ku(),ZV=ju(),JV=ra();ZT.exports=function(t){var e=YV(this),i=JV(t);return $V(e)>i.size?!1:ZV(e,function(s){if(!i.includes(s))return!1},!0)!==!1}});var jT=X(()=>{"use strict";var jV=sr(),KV=JT(),QV=ia(),tH=!QV("isSubsetOf",function(n){return n});jV({target:"Set",proto:!0,real:!0,forced:tH},{isSubsetOf:KV})});var QT=X((rot,KT)=>{"use strict";var eH=ea(),nH=Ao().has,rH=Ku(),iH=ra(),oH=na(),sH=uy();KT.exports=function(t){var e=eH(this),i=iH(t);if(rH(e)<i.size)return!1;var s=i.getIterator();return oH(s,function(u){if(!nH(e,u))return sH(s,"normal",!1)})!==!1}});var tC=X(()=>{"use strict";var aH=sr(),uH=QT(),lH=ia(),cH=!lH("isSupersetOf",function(n){return!n});aH({target:"Set",proto:!0,real:!0,forced:cH},{isSupersetOf:uH})});var nC=X((sot,eC)=>{"use strict";var fH=ea(),ly=Ao(),hH=ep(),pH=ra(),dH=na(),gH=ly.add,mH=ly.has,yH=ly.remove;eC.exports=function(t){var e=fH(this),i=pH(t).getIterator(),s=hH(e);return dH(i,function(u){mH(e,u)?yH(s,u):gH(s,u)}),s}});var rC=X(()=>{"use strict";var vH=sr(),_H=nC(),xH=ia();vH({target:"Set",proto:!0,real:!0,forced:!xH("symmetricDifference")},{symmetricDifference:_H})});var oC=X((lot,iC)=>{"use strict";var EH=ea(),SH=Ao().add,wH=ep(),MH=ra(),bH=na();iC.exports=function(t){var e=EH(this),i=MH(t).getIterator(),s=wH(e);return bH(i,function(u){SH(s,u)}),s}});var sC=X(()=>{"use strict";var AH=sr(),TH=oC(),CH=ia();AH({target:"Set",proto:!0,real:!0,forced:!CH("union")},{union:TH})});var cy=X((hot,uC)=>{"use strict";var aC=zu(),IH=TypeError;uC.exports=function(n,t){if(!delete n[t])throw new IH("Cannot delete property "+aC(t)+" of "+aC(n))}});var lC=X(()=>{"use strict";var PH=sr(),RH=Vi(),LH=ii(),NH=mm(),OH=cy(),DH=Eh(),FH=[].unshift(0)!==1,UH=function(){try{Object.defineProperty([],"length",{writable:!1}).unshift()}catch(n){return n instanceof TypeError}},BH=FH||!UH();PH({target:"Array",proto:!0,arity:1,forced:BH},{unshift:function(t){var e=RH(this),i=LH(e),s=arguments.length;if(s){DH(i+s);for(var u=i;u--;){var c=u+s;u in e?e[c]=e[u]:OH(e,c)}for(var f=0;f<s;f++)e[f]=arguments[f]}return NH(e,i+s)}})});var Ll=X((Cot,pP)=>{"use strict";var xY=Zs(),EY=String;pP.exports=function(n){if(xY(n)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return EY(n)}});var gP=X((Iot,dP)=>{"use strict";var SY=so();dP.exports=function(){var n=SY(this),t="";return n.hasIndices&&(t+="d"),n.global&&(t+="g"),n.ignoreCase&&(t+="i"),n.multiline&&(t+="m"),n.dotAll&&(t+="s"),n.unicode&&(t+="u"),n.unicodeSets&&(t+="v"),n.sticky&&(t+="y"),t}});var yP=X((Pot,mP)=>{"use strict";var Kv=An(),wY=Sn(),Qv=wY.RegExp,t_=Kv(function(){var n=Qv("a","y");return n.lastIndex=2,n.exec("abcd")!==null}),MY=t_||Kv(function(){return!Qv("a","y").sticky}),bY=t_||Kv(function(){var n=Qv("^r","gy");return n.lastIndex=2,n.exec("str")!==null});mP.exports={BROKEN_CARET:bY,MISSED_STICKY:MY,UNSUPPORTED_Y:t_}});var _P=X((Rot,vP)=>{"use strict";var AY=An(),TY=Sn(),CY=TY.RegExp;vP.exports=AY(function(){var n=CY(".","s");return!(n.dotAll&&n.test(\`
|
|
8008
|
+
`,A=-1/0,C=this.geometry.getAttribute("position");if(C)for(let i=0;i<C.count;i++){let n=C.getZ(i);n>A&&(A=n)}let e=new vg.ShaderMaterial({uniforms:{maxZ:{value:A},uColor:{value:new vg.Color(this.options[0].fillColor).convertLinearToSRGB()},uColor2:{value:new vg.Color(gA(this.options[0].fillColor)).convertLinearToSRGB()},uOpacity:{value:this.options[0].fillOpacity}},vertexShader:g,fragmentShader:I,transparent:!0});this.material=e}initLineMaterial(){let g=R.createLineMaterial({color:this.options[0].strokeColor,opacity:this.options[0].strokeOpacity});return this.lineMaterial=g,g}initMesh(){this.mesh&&this.remove(this.mesh),this.mesh=new vg.Mesh(this.geometry,this.material),this.add(this.mesh)}getBorderPoints(){let g=[],I=this.options[0].height+this.options[0].deltaHeight;return this.options.map(A=>{let{coords:C}=A.geometry;for(let e=0;e<C.length;e++){let i=C[e];for(let n=0;n<i.length;n++){let r=i[n],o=n+1===i.length?i[0]:i[n+1];g.push(new vg.Vector3(r[0],r[1],I)),g.push(new vg.Vector3(o[0],o[1],I))}}}),g}initLineGeometry(){this.lineGeometry&&this.lineGeometry.dispose();let g=this.getBorderPoints(),I=new vg.BufferGeometry().setFromPoints(g);this.lineGeometry=I}createBorder(){this.line&&this.remove(this.line);let g=new vg.LineSegments(this.lineGeometry,this.lineMaterial);return g.position.z=.01,this.line=g,this.add(g),g}dispose(){var g,I;this.geometry?(this.geometry.dispose(),this._listeners={}):this.addEventListener("init-geometry",()=>{var A;(A=this.geometry)==null||A.dispose(),this._listeners={}}),(g=this.material)==null||g.dispose(),(I=this.line)==null||I.geometry.dispose(),this.clear()}constructor(g,I,A){super(),this.context=g,this.mergedElement=A,this.options=[],A?(this.options=[A],this.initMergedElement()):(this.options=I.map(C=>D({},rC,C)),this.init())}};var Hz=l(_(),1),Lz=l(rn(),1);var uI=require("three"),P2=require("three/examples/jsm/utils/BufferGeometryUtils.js");var _2={airHeight:0,deltaHeight:0,height:0,geometry:{cds:[],type:"polygon",coords:[],curveCpt:[],curveIndex:[]},texts:[],fillColor:"#ffffff",fillOpacity:0,strokeColor:"#ffffff",strokeOpacity:0,secondHeight:0,secondRotate:0,center_x:0,center_y:0},Ii=class extends uI.Object3D{init(){return m(this,null,function*(){let g=yield Promise.all(this.options.map(i=>ag.getTextureByText(i.texts[0],{fillStyle:on(i.fillColor,i.fillOpacity),strokeStyle:on(i.strokeColor,i.strokeOpacity),lineWidth:6,font:"bold 54px sans-serif",maxWidth:2048}))),I=g.map((i,n)=>{let r=this.options[n],{width:o,height:s}=i.texture.image,a=o/s,u=r.secondHeight*a,c=new uI.PlaneGeometry(u,r.secondHeight),h=new uI.Matrix4().makeTranslation(r.center_x,r.center_y,r.airHeight+r.deltaHeight+r.height).multiply(new uI.Matrix4().makeRotationZ(r.secondRotate));return c.applyMatrix4(h),c}),A=(0,P2.mergeGeometries)(I,!0);I.forEach(i=>i.dispose());let C=g.map(i=>{let{texture:n}=i,r=new uI.MeshBasicMaterial({map:n,alphaTest:1,side:uI.DoubleSide});return n.needsUpdate=!0,r}),e=new uI.Mesh(A,C);this.mesh=e,this.position.z+=.04,this.add(e)})}setOpacity(g){var I,A;(A=this.mesh)==null||(I=A.material)==null||I.forEach(C=>{C.opacity=g,C.needsUpdate=!0})}dispose(){var g,I,A;(g=this.mesh)==null||g.geometry.dispose(),(A=this.mesh)==null||(I=A.material)==null||I.forEach(C=>C.dispose()),this.clear()}constructor(g,I){super(),this.context=g,this.options=I.map(A=>D({},_2,A)).filter(A=>A.texts[0].trim()),this.options.length&&this.init()}};var E2=require("three"),b2=require("three/examples/jsm/lines/Line2.js"),x2=require("three/examples/jsm/lines/LineGeometry.js"),K2=require("three/examples/jsm/lines/LineMaterial.js"),yt=class extends E2.Object3D{registryEvent(){this.context.addEventListener("resize",this.onResize)}unRegistryEvent(){this.context.removeEventListener("resize",this.onResize)}setPosition(g,I){this.lineGeometry.setPositions([g.x,g.y,g.z,I.x,I.y,I.z]),this.line||this.createLine()}createLine(){this.line=new b2.Line2(this.lineGeometry,this.lineMaterial),this.line.renderOrder=100003,this.add(this.line)}dispose(){var g;this.unRegistryEvent(),this.line&&U(this.line),this.lineGeometry=null,this.lineMaterial=null,this.clear(),(g=this.line)==null||g.clear(),this.line=null}constructor(g,I,A){super(),this.context=g,this.lineGeometry=new x2.LineGeometry,this.lineMaterial=new K2.LineMaterial({color:0,transparent:!0,depthTest:!1,linewidth:2}),this.line=null,this.onResize=()=>{let{width:C,height:e}=this.context.clientSize;this.lineMaterial.resolution.set(C,e)},this.onResize(),this.registryEvent(),I&&A&&this.setPosition(I,A)}};var qz=l(W(),1),$z=l(_(),1),cC=require("three");var St=require("three");var Ue=class extends cC.Object3D{loadModel(){return m(this,null,function*(){let g=yield Fg.loadModel(this.options[0].url);g.scene.updateMatrixWorld(!0);let I=g.scene.matrixWorld.clone().invert();g.scene.traverse(r=>{if(r.isMesh){let o=I.clone().multiply(r.matrixWorld),s=r.material;this.subMeshes.push({geometry:r.geometry,material:r.material,initialMatrix:o}),Array.isArray(s)?s.forEach(a=>{a.transparent=!0,this.materialOriginParams.set(a,{opacity:a.opacity})}):(s.transparent=!0,this.materialOriginParams.set(s,{opacity:s.opacity}))}});let A=this.subMeshes.map(r=>{let{geometry:o,material:s}=r;return new cC.InstancedMesh(o,s,this.options.length)});g.scene.rotation.set(Math.PI/2,0,0);let e=new cC.Box3().setFromObject(g.scene).getSize(new cC.Vector3),i=Math.max(e.x,e.y);this.options.map(r=>{let o=new St.Matrix4,s=r.width/i;return o.multiply(new St.Matrix4().makeTranslation(r.center_x,r.center_y,r.airHeight+r.deltaHeight)).multiply(new St.Matrix4().makeScale(s,s,s)).multiply(new St.Matrix4().makeRotationZ(r.rotate)).multiply(new St.Matrix4().makeRotationX(Math.PI/2)),r.url==="https://robot-vr-public.cdn.bcebos.com/ai-map-resource/757/1865371442288267264/smzsdrc.glb"&&console.log(r,o),o}).forEach((r,o)=>{A.forEach((s,a)=>{let u=r.clone().multiply(this.subMeshes[a].initialMatrix);s.setMatrixAt(o,u)})}),A.forEach(r=>{r.instanceMatrix.needsUpdate=!0,this.meshSetMaterial(r),this.add(r)})})}meshSetMaterial(g){g.isMesh&&(g.frustumCulled=!1,g.castShadow=!0,Array.isArray(g.material)?g.material.map(I=>{I.emissiveIntensity*=.95,I.emissive=I.color,I.emissiveMap=I.map}):(g.material.emissiveIntensity*=.95,g.material.emissive=g.material.color,g.material.emissiveMap=g.material.map))}setOpacity(g,I){I===void 0&&(I=!1),this.subMeshes.forEach(A=>{let{material:C}=A;if(Array.isArray(C))C.forEach(e=>{if(I)e.opacity=g;else{let i=this.materialOriginParams.get(e)||{opacity:1};g>i.opacity?e.opacity=i.opacity:e.opacity=g}e.needsUpdate=!0});else{let e=this.materialOriginParams.get(C)||{opacity:1};g>e.opacity?C.opacity=e.opacity:C.opacity=g,C.needsUpdate=!0}}),this.children.forEach(A=>{A.instanceMatrix.needsUpdate=!0})}dispose(){this.children.forEach(g=>g.dispose()),U(this),this.clear()}constructor(g,I){super(),this.context=g,this.options=I,this.subMeshes=[],this.materialOriginParams=new Map,this.loadModel()}};var hC=require("three");var uC=class extends hC.Object3D{init(){return m(this,null,function*(){this.geometry=this.initGeometry(),this.initMaterial(),this.initMesh(),this.mesh.position.z=this.options.deltaHeight+this.options.airHeight,this.options.lineGeometry&&(this.initLineMaterial(),this.initLineGeometry(),this.createBorder())})}initGeometry(){return this.loader.parseGeometries([this.options.mergedGeometry])[this.options.mergedGeometry.uuid]}initMaterial(){this.material=R.GetMergeAttributeGraphicMaterial()}initLineMaterial(){return this.lineMaterial=R.GetMergeAttributeGraphicLineMaterial()}initMesh(){this.mesh&&this.remove(this.mesh),this.mesh=new hC.Mesh(this.geometry,this.material),this.add(this.mesh)}initLineGeometry(){this.lineGeometry&&this.lineGeometry.dispose();let g=this.loader.parseGeometries([this.options.lineGeometry]);this.lineGeometry=g[this.options.lineGeometry.uuid]}createBorder(){this.line&&this.remove(this.line);let g=new hC.LineSegments(this.lineGeometry,this.lineMaterial);return g.position.z=.01,this.line=g,this.add(g),g}dispose(){var g;this.geometry&&this.geometry.dispose(),(g=this.line)==null||g.geometry.dispose(),this.clear()}constructor(g,I){super(),this.context=g,this.loader=new hC.ObjectLoader,this.options=D({},rC,I),this.init()}};var Dt=require("three");var Ai=class extends Dt.Object3D{initGeometry(){return m(this,null,function*(){let g=new Dt.ObjectLoader().parseGeometries([this.options.mergedGeometry]);this.geometry=g[this.options.mergedGeometry.uuid]})}init(){return m(this,null,function*(){var g;yield this.initGeometry();let I=new Dt.Mesh(this.geometry,$g.GetMergeAttributeWallMaterial());this.add(I);let A=(g=this.geometry)==null?void 0:g.getAttribute("opacity");A&&(this.originOpacities=Array.from(A.array))})}setOpacity(g,I){I===void 0&&(I=!1);var A;let C=(A=this.geometry)==null?void 0:A.getAttribute("opacity");if(C){for(let i=0;i<C.count;i++)if(I)C.setX(i,g);else{var e;C.setX(i,Math.min(g,(e=this.originOpacities[i])!=null?e:1))}C.needsUpdate=!0}}dispose(){var g;(g=this.geometry)==null||g.dispose(),this.clear()}constructor(g,I){super(),this.context=g,this.options=I,this.originOpacities=[],this.init()}};var lJ=l(TC(),1),cJ=l(yA(),1),hJ=l(SA(),1),pJ=l(DA(),1),fJ=l(wA(),1),dJ=l(BA(),1),mJ=l(MA(),1),yJ=l(vA(),1),SJ=l(PA(),1),DJ=l(_A(),1),wJ=l(EA(),1),BJ=l(bA(),1),MJ=l(xA(),1),vJ=l(KA(),1),PJ=l(GA(),1);var fg=require("three");var aC=class extends fg.Object3D{init(){return m(this,null,function*(){let g=this.options.iconUrl,I=yield wg.getTextureByUrl(g),A=new fg.MeshBasicMaterial({map:I,transparent:!0,alphaTest:.2,side:fg.FrontSide}),C=new fg.InstancedMesh(this.geometry,A,this.options.mergedMatrixes.size);C.instanceMatrix=new fg.InstancedBufferAttribute(new Float32Array(this.options.mergedMatrixes.array),16),this.add(C),this.mesh=C,this.position.z+=.004})}setOpacity(g){this.mesh&&(this.mesh.material.opacity=g,this.mesh.material.needsUpdate=!0,this.mesh.instanceMatrix.needsUpdate=!0)}dispose(){var g;this.mesh&&U(this.mesh),(g=this.mesh)==null||g.dispose(),this.clear()}constructor(g,I){super(),this.context=g,this.geometry=new fg.ShapeGeometry(new fg.Shape([new fg.Vector2(-.5,-.5),new fg.Vector2(-.5,.5),new fg.Vector2(.5,.5),new fg.Vector2(.5,-.5)])),this.options=D({},mr,I);let A=new fg.Float32BufferAttribute([0,0,0,1,1,1,1,0],2);this.geometry.setAttribute("uv",A),this.init()}};var GJ=l(W(),1),jA=require("three");var g0=require("three/examples/jsm/lines/LineSegments2.js"),I0=require("three/examples/jsm/lines/LineSegmentsGeometry.js");var Ci=class extends jA.Object3D{initGeometry(){return m(this,null,function*(){let g=this.loader.parseGeometries([this.options.mergedGeometry]);this.geometry=g[this.options.mergedGeometry.uuid]})}initMaterial(){let g=R.createMeshBasicMaterial({color:"#ffffff",opacity:1,vertexColors:!0});return this.material=g,g}initDoubleLine(){if(this.options.dashedLineGeometry){let g=R.createLine2MaterialMap({color:"#ffffff",width:.2,dashed:!0,resolution:new jA.Vector2(this.context.clientSize.width,this.context.clientSize.height),vertexColors:!0});g.transparent=!0,g.needsUpdate=!0;let I=new I0.LineSegmentsGeometry;I.setPositions(this.options.dashedLineGeometry.positions),I.setColors(this.options.dashedLineGeometry.colors);let A=new g0.LineSegments2(I,g);A.computeLineDistances(),A.position.z+=.01,this.add(A),this.doubleLines.push(A)}if(this.options.lineGeometry){let g=R.createLine2MaterialMap({color:"#ffffff",width:.2,dashed:!1,resolution:new jA.Vector2(this.context.clientSize.width,this.context.clientSize.height),vertexColors:!0}),I=new I0.LineSegmentsGeometry;I.setPositions(this.options.lineGeometry.positions),I.setColors(this.options.lineGeometry.colors);let A=new g0.LineSegments2(I,g);A.position.z+=.01,this.add(A),this.doubleLines.push(A)}}init(){return m(this,null,function*(){yield this.initGeometry(),this.initMaterial();let g=new jA.Mesh(this.geometry,this.material);this.add(g),this.initDoubleLine(),this.position.z+=.02})}setOpacity(g){this.material.opacity=g,this.material.needsUpdate=!0,this.doubleLines.forEach(I=>{I.material.opacity=g,I.material.needsUpdate=!0})}dispose(){var g,I;(g=this.geometry)==null||g.dispose(),(I=this.lineGeometry)==null||I.dispose(),this.doubleLines.map(A=>A.geometry.dispose()),this.clear()}constructor(g,I){super(),this.context=g,this.options=I,this.doubleLines=[],this.loader=new jA.ObjectLoader,this.init()}};var RJ=l(TC(),1),NJ=l(yA(),1),WJ=l(SA(),1),FJ=l(DA(),1),ZJ=l(wA(),1),kJ=l(BA(),1),HJ=l(MA(),1),LJ=l(vA(),1),UJ=l(PA(),1),XJ=l(_A(),1),VJ=l(EA(),1),zJ=l(bA(),1),JJ=l(xA(),1),QJ=l(KA(),1),qJ=l(GA(),1),$J=l(_(),1),Ig=require("three");var pt=class extends Ig.Object3D{setParkingColorByIndex(g,I){this.mesh&&(this.mesh.setColorAt(g,new Ig.Color(I).convertLinearToSRGB()),this.mesh.instanceColor.needsUpdate=!0)}init(){return m(this,null,function*(){this.initMaterial(),this.initMesh(),this.mesh.position.z=this.options[0].deltaHeight+this.options[0].airHeight,this.options[0].strokeOpacity!==0&&(this.initLineMaterial(),this.initLineGeometry(),this.createBorder())})}initMaterial(){this.material=R.GetInstancedParkingSpaceMaterial()}initLineMaterial(){let g=R.GetMergeAttributeGraphicLineMaterial();this.lineMaterial=g}initMesh(){this.mesh&&this.remove(this.mesh),this.mesh=new Ig.InstancedMesh(this.geometry,this.material,this.options.length);let g=new Ig.InstancedBufferAttribute(new Float32Array(this.options.length),1),I=new Ig.InstancedBufferAttribute(new Float32Array(this.options.length),1);this.options.forEach((A,C)=>{let e=A.geometry.coords[0],[i,n,r]=e.slice(0,3),o=Math.sqrt((n[0]-i[0])**2+(n[1]-i[1])**2),s=Math.sqrt((r[0]-n[0])**2+(r[1]-n[1])**2),a=[o,s],u=Math.max(...a),c=Math.min(...a),h;u===o?h=[n[0]-i[0],n[1]-i[1]]:h=[r[0]-n[0],r[1]-n[1]];let[f,d]=h,S=Math.atan2(d,f)-Math.PI/2,w=new Ig.Matrix4().compose(new Ig.Vector3(A.center_coord_x,A.center_coord_y,(A.deltaHeight||0)+A.airHeight+A.height/2),new Ig.Quaternion().setFromAxisAngle(new Ig.Vector3(0,0,1),S),new Ig.Vector3(c,u,A.height));this.mesh.setMatrixAt(C,w),this.mesh.setColorAt(C,new Ig.Color(A.fillColor).convertLinearToSRGB()),g.array[C]=A.fillOpacity||1,I.array[C]=(A.deltaHeight||0)+A.airHeight+A.height}),this.originOpacity=[...g.array],this.geometry.setAttribute("opacity",g),this.geometry.setAttribute("maxZ",I),this.add(this.mesh),this.mesh.instanceMatrix.needsUpdate=!0}initLineGeometry(){this.lineGeometry&&this.lineGeometry.dispose();let{points:g,colors:I,opacities:A}=Fn(this.options),C=new Ig.BufferGeometry().setFromPoints(g);C.setAttribute("color",new Ig.BufferAttribute(new Float32Array(I),3)),C.setAttribute("opacity",new Ig.BufferAttribute(new Float32Array(A),1)),this.lineOriginOpacity=[...A],this.lineGeometry=C}createBorder(){this.line&&this.remove(this.line);let g=new Ig.LineSegments(this.lineGeometry,this.lineMaterial);return g.position.z=.01,this.line=g,this.add(g),g}setOpacity(g,I){I===void 0&&(I=!1);let A=this.geometry.getAttribute("opacity");for(let i=0;i<A.count;i++)if(I)A.array[i]=g;else{var C;A.array[i]=Math.min(g,(C=this.originOpacity[i])!=null?C:1)}if(A.needsUpdate=!0,this.lineGeometry){let i=this.lineGeometry.getAttribute("opacity");for(let n=0;n<i.count;n++)if(I)i.array[n]=g;else{var e;i.array[n]=Math.min(g,(e=this.lineOriginOpacity[n])!=null?e:1)}i.needsUpdate=!0}}dispose(){var g,I;this.geometry.dispose(),(g=this.mesh)==null||g.dispose(),(I=this.line)==null||I.geometry.dispose(),this.clear()}constructor(g,I){super(),this.context=g,this.geometry=new Ig.BoxGeometry(1,1,1),this.options=[],this.originOpacity=[],this.lineOriginOpacity=[],this.options=I.map(A=>D({},rC,A)),this.init()}};var eQ=l(TC(),1),iQ=l(yA(),1),nQ=l(SA(),1),rQ=l(DA(),1),oQ=l(wA(),1),sQ=l(BA(),1),aQ=l(MA(),1),uQ=l(vA(),1),lQ=l(PA(),1),cQ=l(_A(),1),hQ=l(EA(),1),pQ=l(bA(),1),fQ=l(xA(),1),dQ=l(KA(),1),mQ=l(GA(),1),yQ=l(_(),1),Rg=require("three");var He=class extends Rg.Object3D{init(){return m(this,null,function*(){this.initMaterial(),this.initMesh(),this.option.lineGeometry&&(this.initLineMaterial(),this.initLineGeometry(),this.createBorder())})}setParkingColorByIndex(g,I){this.mesh&&(this.mesh.setColorAt(g,new Rg.Color(I).convertLinearToSRGB()),this.mesh.instanceColor.needsUpdate=!0)}initMaterial(){this.material=R.GetInstancedParkingSpaceMaterial()}initLineMaterial(){return this.lineMaterial=R.GetMergeAttributeGraphicLineMaterial()}initMesh(){this.mesh&&this.remove(this.mesh),this.mesh=new Rg.InstancedMesh(this.geometry,this.material,this.option.size);let g=new Rg.InstancedBufferAttribute(new Float32Array(this.option.opacities),1),I=new Rg.InstancedBufferAttribute(new Float32Array(this.option.maxZ),1);this.mesh.instanceMatrix=new Rg.InstancedBufferAttribute(new Float32Array(this.option.matrixes),16),this.mesh.instanceColor=new Rg.InstancedBufferAttribute(new Float32Array(this.option.colors),3),this.geometry.setAttribute("opacity",g),this.geometry.setAttribute("maxZ",I),this.mesh.instanceMatrix.needsUpdate=!0,this.originOpacity=[...this.option.opacities],this.add(this.mesh)}initLineGeometry(){if(this.lineGeometry&&this.lineGeometry.dispose(),this.option.lineGeometry){let g=new Rg.ObjectLoader().parseGeometries([this.option.lineGeometry]);this.lineGeometry=g[this.option.lineGeometry.uuid];let I=this.lineGeometry.getAttribute("opacity");this.lineOriginOpacity=[...I.array]}}createBorder(){this.line&&this.remove(this.line);let g=new Rg.LineSegments(this.lineGeometry,this.lineMaterial);return g.position.z=.01,this.line=g,this.add(g),g}setOpacity(g,I){I===void 0&&(I=!1);let A=this.geometry.getAttribute("opacity");for(let i=0;i<A.count;i++)if(I)A.array[i]=g;else{var C;A.array[i]=Math.min(g,(C=this.originOpacity[i])!=null?C:1)}if(A.needsUpdate=!0,this.lineGeometry){let i=this.lineGeometry.getAttribute("opacity");for(let n=0;n<i.count;n++)if(I)i.array[n]=g;else{var e;i.array[n]=Math.min(g,(e=this.lineOriginOpacity[n])!=null?e:1)}i.needsUpdate=!0}}dispose(){var g,I;this.geometry.dispose(),(g=this.mesh)==null||g.dispose(),(I=this.line)==null||I.geometry.dispose(),this.clear()}constructor(g,I){super(),this.context=g,this.geometry=new Rg.BoxGeometry(1,1,1),this.originOpacity=[],this.lineOriginOpacity=[],this.option=I,this.init()}};var G2=require("three"),yr=class extends aI{setEnable(g){super.setEnable(g),Wg(this.rect,0,0,0,0),g?this.registryEvent():(this.startPoint=void 0,this.unRegistryEvent())}registryEvent(){this.context.container.addEventListener("pointerdown",this.onPointerDown),this.context.container.addEventListener("pointermove",this.onPointerMove),this.context.container.addEventListener("pointerup",this.onPointerUp),this.context.addEventListener("update",this.onUpdate)}unRegistryEvent(){this.context.container.removeEventListener("pointerdown",this.onPointerDown),this.context.container.removeEventListener("pointermove",this.onPointerMove),this.context.container.removeEventListener("pointerup",this.onPointerUp),this.context.removeEventListener("update",this.onUpdate)}doSelect(){if(this.startPoint&&this.endPoint){if(this.startPoint.distanceTo(this.endPoint)<.1)return;let{context:{camera:I,container:{clientWidth:A,clientHeight:C}}}=this,e=j(this.startPoint,I,A,C),i=j(this.endPoint,I,A,C),n={x:Math.min(e.x,i.x),y:Math.min(e.y,i.y)},r={x:Math.max(e.x,i.x),y:Math.max(e.y,i.y)},o=this.searchMapInFrustum(n,r);this.dispatchEvent({type:"selected",list:o})}}searchMapInFrustum(g,I){var A;let{context:C}=this;return((A=C.currentFloor)==null?void 0:A.graphicLayer.children.filter(e=>e instanceof Bg&&this.searchChildInFrustum(e,g,I)))||[]}searchChildInFrustum(g,I,A){let{context:{camera:C,container:{clientWidth:e,clientHeight:i}}}=this;if(!g)return!1;if(!g.mesh){let u=g.getPosition();if(u){let c=j(u,C,e,i);return lA(c,I,A)}return!1}g.mesh.geometry.boundingBox||g.mesh.geometry.computeBoundingBox();let n=g.mesh.geometry.boundingBox;if(!n)return!1;let{min:r,max:o}=n,s=j(r,C,e,i),a=j(o,C,e,i);return!(!lA(s,I,A)||!lA(a,I,A))}dispose(){super.dispose(),this.rect=null,this.unRegistryEvent()}constructor(g){super(g),this.frustum=new G2.Frustum,this.onPointerDown=C=>{if(!this.enable)return;let e=this.getIntersectByPointerEvent(C);e&&(this.startPoint=e),this.endPoint=void 0},this.onPointerMove=C=>{if(!this.enable||!this.startPoint)return;let e=this.getIntersectByPointerEvent(C);e&&(this.endPoint=e)},this.onPointerUp=C=>{if(!this.enable)return;let e=this.getIntersectByPointerEvent(C);e&&(this.endPoint=e),this.doSelect(),this.startPoint=void 0},this.onUpdate=()=>{if(this.startPoint){let C=this.getSvgCoordinate(this.startPoint),e=D({},C);this.endPoint&&(e=this.getSvgCoordinate(this.endPoint));let i={x:Math.min(C.x,e.x),y:Math.min(C.y,e.y)},n=Math.abs(e.x-C.x),r=Math.abs(e.y-C.y);Wg(this.rect,i.x,i.y,n,r)}else Wg(this.rect,0,0,0,0)};let{config:{selectBox:{fill:I,stroke:A}}}=g;this.rect=cA(A,I),this.svg.appendChild(this.rect),this.registryEvent()}};var ti=class extends T2.EventDispatcher{get list(){return this._list}enableBoxSelection(){this.isMultipleSelect||!this.context.config.enableBoxSelect||(this.isMultipleSelect=!0,this.boxSelection.setEnable(!0),this.prevPanStatus=this.context.control.enablePan,this.prevRotateStatus=this.context.control.enableRotate,this.context.control.enablePan=!1,this.context.control.enableRotate=!1)}disableBoxSelection(){this.isMultipleSelect&&(this.isMultipleSelect=!1,this.boxSelection.setEnable(!1),this.context.control.enablePan=!!this.prevPanStatus,this.context.control.enableRotate=!!this.prevRotateStatus)}selectEnd(){this.dispatchEvent({type:"select",graphics:[...this._list],isMultipleSelect:this.isMultipleSelect})}registryEvent(){this.context.container.addEventListener("pointerdown",this.onPointerDown),this.context.container.addEventListener("pointerup",this.onPointerUp),this.context.container.addEventListener("pointerout",this.onPointerOut),this.context.container.addEventListener("pointercancel",this.onPointerOut),window.addEventListener("keydown",this.onKeyDown),window.addEventListener("keyup",this.onKeyUp),this.boxSelection.addEventListener("selected",this.onBoxSelected)}unRegistryEvent(){this.context.container.removeEventListener("pointerdown",this.onPointerDown),this.context.container.removeEventListener("pointerup",this.onPointerUp),this.context.container.removeEventListener("pointerout",this.onPointerOut),this.context.container.removeEventListener("pointercancel",this.onPointerOut),window.removeEventListener("keydown",this.onKeyDown),window.removeEventListener("keyup",this.onKeyUp),this.boxSelection.removeEventListener("selected",this.onBoxSelected)}clear(){this._list.clear()}remove(g){this._list.delete(g)}dispose(){this.unRegistryEvent()}constructor(g){super(),this.context=g,this._list=new Set,this.downPoint=null,this.downTime=0,this.isMultipleSelect=!1,this.onPointerDown=I=>{Date.now()-this.downTime<200||(this.downPoint={x:I.offsetX,y:I.offsetY},this.downTime=Date.now())},this.onPointerUp=I=>{if(!this.downPoint)return;let{offsetX:A,offsetY:C}=I,{x:e,y:i}=this.downPoint;if(Math.sqrt((e-A)**2+(i-C)**2)>3)return;let{graphics:n}=this.context.getGraphicsByDeviceXy(A,C),r=new Set(n.map(s=>s.options.id));this.context.getPoisByDeviceXy(A,C).forEach(s=>{if(!r.has(s.options.id)){var a;let u=((a=this.context.currentFloor)==null?void 0:a.graphicLayer.graphicMap.get(s.options.id))||null;u&&u.options.geometry.type==="point"&&(n.push(u),r.add(s.options.id))}}),(MC?I.metaKey:I.ctrlKey)||this._list.clear(),n.forEach(s=>this._list.add(s)),this.selectEnd(),this.downPoint=null},this.onPointerOut=I=>{this.disableBoxSelection()},this.onKeyDown=I=>{vC(I.key)&&this.enableBoxSelection()},this.onKeyUp=I=>{vC(I.key)&&this.disableBoxSelection()},this.onBoxSelected=I=>{let{list:A}=I;this._list.clear(),A.forEach(C=>{this._list.add(C)}),this.selectEnd()},this.boxSelection=new yr(g),this.boxSelection.setEnable(!1),this.registryEvent()}};var WQ=l(OI(),1),FQ=l(YI(),1),ZQ=l(jI(),1),kQ=l(RI(),1),HQ=l(NI(),1),LQ=l(WI(),1),UQ=l(FI(),1),XQ=l(_(),1);var Sr=require("three");var ei=class extends Sr.EventDispatcher{handleHoverGraphicsChange(g){g===void 0&&(g=this.curGraphics),this.dispatchEvent({type:"hover-change",graphics:Array.from(g)})}registryEvent(){this.context.addEventListener("pointer-over",this.onPointerMove),this.context.addEventListener("pointer-move",this.onPointerMove),this.context.addEventListener("pointer-level",this.onPointerLevel),document.body.addEventListener("pointermove",this.onBodyPointerMove)}unRegistryEvent(){this.context.removeEventListener("pointer-over",this.onPointerMove),this.context.removeEventListener("pointer-move",this.onPointerMove),this.context.removeEventListener("pointer-level",this.onPointerLevel),document.body.removeEventListener("pointermove",this.onBodyPointerMove)}dispose(){this.unRegistryEvent(),this.timer.dispose()}constructor(g){super(),this.context=g,this.curGraphics=new Set,this.timer=new tg,this.graphicTimerMap=new Map,this.onPointerMove=I=>{let{graphics:A,pois:C,e}=I,i=C.map(s=>{var a;return(a=this.context.currentFloor)==null?void 0:a.graphicLayer.graphicMap.get(s.options.id)}).filter(s=>s&&s.options.geometry.type==="point");if(!A.length&&!i.length&&this.curGraphics.size){this.curGraphics.clear(),this.handleHoverGraphicsChange();return}let{time:n}=this.context.config.hover,r=new Set;if(i.length){let s,a=1e4;i.forEach(u=>{let c=C.find(h=>h.options.id===u.options.id);if(c instanceof oC){let{x:h,y:f}=c.clientPos,d=Math.sqrt((h-e.offsetX)**2+(f-e.offsetY)**2);d<a&&(a=d,s=u)}else if(c instanceof ug){let{x:h,y:f}=c.box.getCenter(new Sr.Vector2),d=Math.sqrt((h-e.offsetX)**2+(f-e.offsetY)**2);d<a&&(a=d,s=u)}}),r.add(s)}r.size||A.forEach(s=>r.add(s)),r.forEach(s=>{if(this.graphicTimerMap.get(s)||this.curGraphics.has(s))return;let a=this.timer.setTimeout(()=>{this.curGraphics.add(s),this.graphicTimerMap.delete(s),this.timer.clearTimeout(a),this.handleHoverGraphicsChange()},n);this.graphicTimerMap.set(s,a)}),this.graphicTimerMap.forEach((s,a)=>{r.has(a)||(this.timer.clearTimeout(s),this.graphicTimerMap.delete(a))});let o=this.curGraphics.size;this.curGraphics.forEach(s=>{r.has(s)||this.curGraphics.delete(s)}),o!==this.curGraphics.size&&this.handleHoverGraphicsChange()},this.onPointerLevel=()=>{this.curGraphics.clear(),this.handleHoverGraphicsChange()},this.onBodyPointerMove=I=>{if(this.curGraphics.size){let A=this.context.container.getBoundingClientRect();(I.clientX<A.left||I.clientX>A.right||I.clientY<A.top||I.clientY>A.bottom)&&this.onPointerLevel()}},this.registryEvent()}};var QQ=l(_(),1),lI=require("three");var ii=require("@turf/turf"),Dr=class{updateBox(){this.box.setFromObject(this.context.scene)}setEnable(g){this.enable=g,g?this.registryEvent():this.unRegistryEvent()}changePrevCamera(){this.prevCamera={position:this.context.camera.position.clone(),zoom:this.context.camera.zoom,target:this.context.control.target.clone()}}backToPrevCamera(){this.setEnable(!1),this.context.camera.position.copy(this.prevCamera.position),this.context.camera.zoom=this.prevCamera.zoom,this.context.control.target.copy(this.prevCamera.target),this.context.control.update(),this.setEnable(!0)}registryEvent(){this.context.addEventListener("control-change",this.onCameraChange)}unRegistryEvent(){this.context.removeEventListener("control-change",this.onCameraChange)}getCurFloorScreenPosition(){if(!this.context.scene.children.filter(h=>h instanceof sI).length)return null;let I=this.box,{camera:A,clientSize:{width:C,height:e}}=this.context,{min:i,max:n}=I,o=[new lI.Vector3(i.x,i.y,i.z),new lI.Vector3(n.x,i.y,i.z),new lI.Vector3(i.x,n.y,i.z),new lI.Vector3(n.x,n.y,i.z),new lI.Vector3(i.x,i.y,n.z),new lI.Vector3(n.x,i.y,n.z),new lI.Vector3(i.x,n.y,n.z),new lI.Vector3(n.x,n.y,n.z)].map(h=>j(h,A,C,e)),s=Math.min(...o.map(h=>h.x)),a=Math.max(...o.map(h=>h.x)),u=Math.min(...o.map(h=>h.y)),c=Math.max(...o.map(h=>h.y));return{left:s,right:a,top:u,bottom:c}}checkDistanceToScreenEdge(g){let{left:I,right:A,top:C,bottom:e}=g,{width:i,height:n}=this.context.clientSize,[r,o,s,a]=this.context.config.cameraBound.padding,u=(0,ii.polygon)([[[I,C],[A,C],[A,e],[I,e],[I,C]]]),c=(0,ii.polygon)([[[a,r],[i-o,r],[i-o,n-s],[a,n-s],[a,r]]]);try{return(0,ii.intersect)(u,c)!==null}catch(h){return console.warn("\u8BA1\u7B97\u4EA4\u96C6\u51FA\u9519:",h),!1}}dispose(){this.unRegistryEvent()}constructor(g){this.context=g,this.prevCamera={position:new lI.Vector3,zoom:1,target:new lI.Vector3},this.enable=!0,this.box=new lI.Box3,this.onCameraChange=()=>{let I=this.getCurFloorScreenPosition();if(I){let{left:A,right:C,top:e,bottom:i}=I;this.checkDistanceToScreenEdge({left:A,right:C,top:e,bottom:i})?this.changePrevCamera():this.backToPrevCamera()}},this.registryEvent(),this.changePrevCamera()}};var s8=l(t0(),1),e0=require("three"),WC=require("@tweenjs/tween.js");var n8=l(_(),1),r8=l(W(),1),P=require("three"),Br=new P.Ray,V2=new P.Plane,D4=Math.cos(70*P.MathUtils.DEG2RAD),Mr=class extends P.EventDispatcher{dispose(){this.domElement.removeEventListener("contextmenu",this.onContextMenu),this.domElement.removeEventListener("pointerdown",this.onPointerDown),this.domElement.removeEventListener("pointercancel",this.onPointerUp),this.domElement.removeEventListener("wheel",this.onMouseWheel),this.domElement.removeEventListener("pointermove",this.onPointerMove),this.domElement.removeEventListener("pointerup",this.onPointerUp),this._domElementKeyEvents!==null&&(this._domElementKeyEvents.removeEventListener("keydown",this.onKeyDown),this._domElementKeyEvents=null)}constructor(g,I){super(),this.rotateLineStart=new P.Vector2,this.rotateLineEnd=new P.Vector2,this.spherical=new P.Spherical,this.sphericalDelta=new P.Spherical,this.object=g,this.domElement=I,this.domElement.style.touchAction="none",this.enabled=!0,this.target=new P.Vector3,this.minDistance=0,this.maxDistance=1/0,this.minZoom=0,this.maxZoom=1/0,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.minAzimuthAngle=-1/0,this.maxAzimuthAngle=1/0,this.enableDamping=!1,this.dampingFactor=.05,this.enableZoom=!0,this.zoomSpeed=1,this.enableRotate=!0,this.rotateSpeed=1,this.enablePan=!0,this.panSpeed=1,this.keyPanSpeed=7,this.zoomToCursor=!1,this.autoRotate=!1,this.autoRotateSpeed=2,this.keys={LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",BOTTOM:"ArrowDown"},this.screenSpacePanning=!1,this.mouseButtons={LEFT:P.MOUSE.PAN,MIDDLE:P.MOUSE.DOLLY,RIGHT:P.MOUSE.ROTATE},this.touches={ONE:P.TOUCH.PAN,TWO:P.TOUCH.DOLLY_ROTATE},this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this._domElementKeyEvents=null,this.getPolarAngle=function(){return n.phi},this.getAzimuthalAngle=function(){return n.theta},this.getDistance=function(){return this.object.position.distanceTo(this.target)},this.listenToKeyEvents=function(y){y.addEventListener("keydown",this.onKeyDown),this._domElementKeyEvents=y},this.stopListenToKeyEvents=function(){var y;(y=this._domElementKeyEvents)==null||y.removeEventListener("keydown",this.onKeyDown),this._domElementKeyEvents=null},this.saveState=function(){A.target0.copy(A.target),A.position0.copy(A.object.position),A.zoom0=A.object.zoom},this.reset=function(){A.target.copy(A.target0),A.object.position.copy(A.position0),A.object.zoom=A.zoom0,A.object.updateProjectionMatrix(),A.dispatchEvent({type:"change"}),A.update(),e=C.NONE},this.update=function(){let y=new P.Vector3,B=new P.Quaternion().setFromUnitVectors(g.up,new P.Vector3(0,1,0)),Ag=B.clone().invert(),cg=new P.Vector3,CI=new P.Quaternion,zI=new P.Vector3,bI=2*Math.PI;return function(Tt){Tt===void 0&&(Tt=null);let nA=A.object.position;y.copy(nA).sub(A.target),y.applyQuaternion(B),n.setFromVector3(y),A.autoRotate&&e===C.NONE&&E(b(Tt)),A.enableDamping?(n.theta+=r.theta*A.dampingFactor,n.phi+=r.phi*A.dampingFactor):(n.theta+=r.theta,n.phi+=r.phi);let rA=A.minAzimuthAngle,oA=A.maxAzimuthAngle;isFinite(rA)&&isFinite(oA)&&(rA<-Math.PI?rA+=bI:rA>Math.PI&&(rA-=bI),oA<-Math.PI?oA+=bI:oA>Math.PI&&(oA-=bI),rA<=oA?n.theta=Math.max(rA,Math.min(oA,n.theta)):n.theta=n.theta>(rA+oA)/2?Math.max(rA,n.theta):Math.min(oA,n.theta)),n.phi=Math.max(A.minPolarAngle,Math.min(A.maxPolarAngle,n.phi)),n.makeSafe(),A.enableDamping===!0?A.target.addScaledVector(s,A.dampingFactor):A.target.add(s),A.zoomToCursor&&N||A.object.isOrthographicCamera?n.radius=Vr(n.radius):n.radius=Vr(n.radius*o),y.setFromSpherical(n),y.applyQuaternion(Ag),nA.copy(A.target).add(y),A.object.lookAt(A.target),A.enableDamping===!0?(r.theta*=1-A.dampingFactor,r.phi*=1-A.dampingFactor,s.multiplyScalar(1-A.dampingFactor)):(r.set(0,0,0),s.set(0,0,0));let fi=!1;if(A.zoomToCursor&&N){let Ot=null;if(A.object.isPerspectiveCamera){let Yt=y.length();Ot=Vr(Yt*o);let di=Yt-Ot;A.object.position.addScaledVector(K,di),A.object.updateMatrixWorld()}else if(A.object.isOrthographicCamera){let Yt=new P.Vector3(O.x,O.y,0);Yt.unproject(A.object),A.object.zoom=Math.max(A.minZoom,Math.min(A.maxZoom,A.object.zoom/o)),A.object.updateProjectionMatrix(),fi=!0;let di=new P.Vector3(O.x,O.y,0);di.unproject(A.object),A.object.position.sub(di).add(Yt),A.object.updateMatrixWorld(),Ot=y.length()}else console.warn("WARNING: OrbitControls.js encountered an unknown camera type - zoom to cursor disabled."),A.zoomToCursor=!1;Ot!==null&&(A.screenSpacePanning?A.target.set(0,0,-1).transformDirection(A.object.matrix).multiplyScalar(Ot).add(A.object.position):(Br.origin.copy(A.object.position),Br.direction.set(0,0,-1).transformDirection(A.object.matrix),Math.abs(A.object.up.dot(Br.direction))<D4?g.lookAt(A.target):(V2.setFromNormalAndCoplanarPoint(A.object.up,A.target),Br.intersectPlane(V2,A.target))))}else A.object.isOrthographicCamera&&(A.object.zoom=Math.max(A.minZoom,Math.min(A.maxZoom,A.object.zoom/o)),A.object.updateProjectionMatrix(),fi=!0);return o=1,N=!1,fi||cg.distanceToSquared(A.object.position)>i||8*(1-CI.dot(A.object.quaternion))>i||zI.distanceToSquared(A.target)>0?(A.dispatchEvent({type:"change"}),cg.copy(A.object.position),CI.copy(A.object.quaternion),zI.copy(A.target),fi=!1,!0):!1}}();let A=this,C={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6},e=C.NONE,i=1e-6,n=new P.Spherical,r=new P.Spherical,o=1,s=new P.Vector3,a=new P.Vector2,u=new P.Vector2,c=new P.Vector2,h=new P.Vector2,f=new P.Vector2,d=new P.Vector2,S=new P.Vector2,w=new P.Vector2,M=new P.Vector2,K=new P.Vector3,O=new P.Vector2,N=!1,v=[],Y={};function b(y){return y!==null?2*Math.PI/60*A.autoRotateSpeed*y:2*Math.PI/60/60*A.autoRotateSpeed}function G(){return Math.pow(.95,A.zoomSpeed)}function E(y){r.theta-=y}function Q(y){r.phi-=y}let Cg=function(){let y=new P.Vector3;return function(Ag,cg){y.setFromMatrixColumn(cg,0),y.multiplyScalar(-Ag),s.add(y)}}(),$=function(){let y=new P.Vector3;return function(Ag,cg){A.screenSpacePanning===!0?y.setFromMatrixColumn(cg,1):(y.setFromMatrixColumn(cg,0),y.crossVectors(A.object.up,y)),y.multiplyScalar(Ag),s.add(y)}}(),L=function(){let y=new P.Vector3;return function(Ag,cg){let CI=A.domElement;if(A.object.isPerspectiveCamera){let zI=A.object.position;y.copy(zI).sub(A.target);let bI=y.length();bI*=Math.tan(A.object.fov/2*Math.PI/180),Cg(2*Ag*bI/CI.clientHeight,A.object.matrix),$(2*cg*bI/CI.clientHeight,A.object.matrix)}else A.object.isOrthographicCamera?(Cg(Ag*(A.object.right-A.object.left)/A.object.zoom/CI.clientWidth,A.object.matrix),$(cg*(A.object.top-A.object.bottom)/A.object.zoom/CI.clientHeight,A.object.matrix)):(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - pan disabled."),A.enablePan=!1)}}();function NA(y){A.object.isPerspectiveCamera||A.object.isOrthographicCamera?o/=y:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),A.enableZoom=!1)}function Gt(y){A.object.isPerspectiveCamera||A.object.isOrthographicCamera?o*=y:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),A.enableZoom=!1)}function Xr(y){if(!A.zoomToCursor)return;N=!0;let B=A.domElement.getBoundingClientRect(),Ag=y.clientX-B.left,cg=y.clientY-B.top,CI=B.width,zI=B.height;O.x=Ag/CI*2-1,O.y=-(cg/zI)*2+1,K.set(O.x,O.y,1).unproject(A.object).sub(A.object.position).normalize()}function Vr(y){return Math.max(A.minDistance,Math.min(A.maxDistance,y))}function G0(y){a.set(y.clientX,y.clientY)}function mB(y){Xr(y),S.set(y.clientX,y.clientY)}function T0(y){h.set(y.clientX,y.clientY)}function yB(y){u.set(y.clientX,y.clientY),c.subVectors(u,a).multiplyScalar(A.rotateSpeed);let B=A.domElement;E(2*Math.PI*c.x/B.clientHeight),Q(2*Math.PI*c.y/B.clientHeight),a.copy(u),A.update()}function SB(y){w.set(y.clientX,y.clientY),M.subVectors(w,S),M.y>0?NA(G()):M.y<0&&Gt(G()),S.copy(w),A.update()}function DB(y){f.set(y.clientX,y.clientY),d.subVectors(f,h).multiplyScalar(A.panSpeed),L(d.x,d.y),h.copy(f),A.update()}function wB(y){Xr(y),y.deltaY<0?Gt(G()):y.deltaY>0&&NA(G()),A.update()}function BB(y){let B=!1;switch(y.code){case A.keys.UP:y.ctrlKey||y.metaKey||y.shiftKey?Q(2*Math.PI*A.rotateSpeed/A.domElement.clientHeight):L(0,A.keyPanSpeed),B=!0;break;case A.keys.BOTTOM:y.ctrlKey||y.metaKey||y.shiftKey?Q(-2*Math.PI*A.rotateSpeed/A.domElement.clientHeight):L(0,-A.keyPanSpeed),B=!0;break;case A.keys.LEFT:y.ctrlKey||y.metaKey||y.shiftKey?E(2*Math.PI*A.rotateSpeed/A.domElement.clientHeight):L(A.keyPanSpeed,0),B=!0;break;case A.keys.RIGHT:y.ctrlKey||y.metaKey||y.shiftKey?E(-2*Math.PI*A.rotateSpeed/A.domElement.clientHeight):L(-A.keyPanSpeed,0),B=!0;break}B&&(y.preventDefault(),A.update())}function O0(){if(v.length===1)a.set(v[0].pageX,v[0].pageY);else{let y=(v[0].pageX-v[0].pageY)/(v[1].pageX-v[1].pageY),B=v[0].pageY-y*v[0].pageX;A.rotateLineStart.set(y,B);let Ag=.5*(v[0].pageX+v[1].pageX),cg=.5*(v[0].pageY+v[1].pageY);a.set(Ag,cg)}}function Y0(){if(v.length===1)h.set(v[0].pageX,v[0].pageY);else{let y=.5*(v[0].pageX+v[1].pageX),B=.5*(v[0].pageY+v[1].pageY);h.set(y,B)}}function j0(){let y=v[0].pageX-v[1].pageX,B=v[0].pageY-v[1].pageY,Ag=Math.sqrt(y*y+B*B);S.set(0,Ag)}function MB(){A.enableZoom&&j0(),A.enablePan&&Y0()}function vB(){A.enableZoom&&j0(),A.enableRotate&&O0()}function R0(y){if(v.length==1)u.set(y.pageX,y.pageY);else{let Ag=zr(y),cg=.5*(y.pageX+Ag.x),CI=.5*(y.pageY+Ag.y);u.set(cg,CI);let zI=(y.pageY-Ag.y)/(y.pageX-Ag.x),bI=Ag.y-zI*Ag.x;if(A.rotateLineEnd.set(zI,bI),Number.isFinite(A.rotateLineEnd.x)&&Number.isFinite(A.rotateLineStart.x)){let Jr=(A.rotateLineStart.y-A.rotateLineEnd.y)/(A.rotateLineEnd.x-A.rotateLineStart.x),Tt=zI*Jr+bI;if(Number.isFinite(Jr)&&Number.isFinite(Tt)){let nA=Math.atan(A.rotateLineEnd.x)-Math.atan(A.rotateLineStart.x);Math.PI-Math.abs(nA)<.5&&(nA=-Math.sign(nA)*(Math.PI-Math.abs(nA))),Math.abs(nA)<.1&&(r.theta+=nA)}}A.rotateLineStart.copy(A.rotateLineEnd)}c.subVectors(u,a).multiplyScalar(A.rotateSpeed);let B=A.domElement;Q(2*Math.PI*c.y/B.clientHeight),a.copy(u)}function N0(y){if(v.length===1)f.set(y.pageX,y.pageY);else{let B=zr(y),Ag=.5*(y.pageX+B.x),cg=.5*(y.pageY+B.y);f.set(Ag,cg)}d.subVectors(f,h).multiplyScalar(A.panSpeed),L(d.x,d.y),h.copy(f)}function W0(y){let B=zr(y),Ag=y.pageX-B.x,cg=y.pageY-B.y,CI=Math.sqrt(Ag*Ag+cg*cg);w.set(0,CI),M.set(0,Math.pow(w.y/S.y,A.zoomSpeed)),NA(M.y),S.copy(w)}function PB(y){A.enableZoom&&W0(y),A.enablePan&&N0(y)}function _B(y){A.enableZoom&&W0(y),A.enableRotate&&R0(y)}this.onPointerDown=function(B){A.enabled!==!1&&(v.length===0&&(A.domElement.setPointerCapture(B.pointerId),A.domElement.addEventListener("pointermove",A.onPointerMove),A.domElement.addEventListener("pointerup",A.onPointerUp)),GB(B),B.pointerType==="touch"?xB(B):EB(B))},this.onPointerMove=function(B){A.enabled!==!1&&(B.pointerType==="touch"?KB(B):bB(B))},this.onPointerUp=function(B){TB(B),v.length===0&&(A.domElement.releasePointerCapture(B.pointerId),A.domElement.removeEventListener("pointermove",A.onPointerMove),A.domElement.removeEventListener("pointerup",A.onPointerUp)),A.dispatchEvent({type:"end"}),e=C.NONE};function EB(y){let B;switch(y.button){case 0:B=A.mouseButtons.LEFT;break;case 1:B=A.mouseButtons.MIDDLE;break;case 2:B=A.mouseButtons.RIGHT;break;default:B=-1}switch(B){case P.MOUSE.DOLLY:if(A.enableZoom===!1)return;mB(y),e=C.DOLLY;break;case P.MOUSE.ROTATE:if(y.ctrlKey||y.metaKey||y.shiftKey){if(A.enablePan===!1)return;T0(y),e=C.PAN}else{if(A.enableRotate===!1)return;G0(y),e=C.ROTATE}break;case P.MOUSE.PAN:if(y.ctrlKey||y.metaKey||y.shiftKey){if(A.enableRotate===!1)return;G0(y),e=C.ROTATE}else{if(A.enablePan===!1)return;T0(y),e=C.PAN}break;default:e=C.NONE}e!==C.NONE&&A.dispatchEvent({type:"start"})}function bB(y){switch(e){case C.ROTATE:if(A.enableRotate===!1)return;yB(y);break;case C.DOLLY:if(A.enableZoom===!1)return;SB(y);break;case C.PAN:if(A.enablePan===!1)return;DB(y);break}}this.onMouseWheel=function(B){A.enabled===!1||A.enableZoom===!1||e!==C.NONE||(B.preventDefault(),A.dispatchEvent({type:"start"}),wB(B),A.dispatchEvent({type:"end"}))},this.onKeyDown=function(B){A.enabled===!1||A.enablePan===!1||BB(B)};function xB(y){switch(F0(y),v.length){case 1:switch(A.touches.ONE){case P.TOUCH.ROTATE:if(A.enableRotate===!1)return;O0(),e=C.TOUCH_ROTATE;break;case P.TOUCH.PAN:if(A.enablePan===!1)return;Y0(),e=C.TOUCH_PAN;break;default:e=C.NONE}break;case 2:switch(A.touches.TWO){case P.TOUCH.DOLLY_PAN:if(A.enableZoom===!1&&A.enablePan===!1)return;MB(),e=C.TOUCH_DOLLY_PAN;break;case P.TOUCH.DOLLY_ROTATE:if(A.enableZoom===!1&&A.enableRotate===!1)return;vB(),e=C.TOUCH_DOLLY_ROTATE;break;default:e=C.NONE}break;default:e=C.NONE}e!==C.NONE&&A.dispatchEvent({type:"start"})}function KB(y){switch(F0(y),e){case C.TOUCH_ROTATE:if(A.enableRotate===!1)return;R0(y),A.update();break;case C.TOUCH_PAN:if(A.enablePan===!1)return;N0(y),A.update();break;case C.TOUCH_DOLLY_PAN:if(A.enableZoom===!1&&A.enablePan===!1)return;PB(y),A.update();break;case C.TOUCH_DOLLY_ROTATE:if(A.enableZoom===!1&&A.enableRotate===!1)return;_B(y),A.update();break;default:e=C.NONE}}this.onContextMenu=function(B){A.enabled!==!1&&B.preventDefault()};function GB(y){v.push(y)}function TB(y){delete Y[y.pointerId];for(let B=0;B<v.length;B++)if(v[B].pointerId==y.pointerId){v.splice(B,1);return}}function F0(y){let B=Y[y.pointerId];B===void 0&&(B=new P.Vector2,Y[y.pointerId]=B),B.set(y.pageX,y.pageY)}function zr(y){let B=y.pointerId===v[0].pointerId?v[1]:v[0];return Y[B.pointerId]}A.domElement.addEventListener("contextmenu",this.onContextMenu),A.domElement.addEventListener("pointerdown",this.onPointerDown),A.domElement.addEventListener("pointercancel",this.onPointerUp),A.domElement.addEventListener("wheel",this.onMouseWheel,{passive:!1}),this.update()}};var vr=class extends Mr{registryEvent(){this.addEventListener("change",this.onChange),this.context.addEventListener("update",this.tweenUpdate)}unRegistryEvent(){this.removeEventListener("change",this.onChange),this.context.removeEventListener("update",this.tweenUpdate)}setPolarAngle(g,I){I===void 0&&(I=!1);let{maxPolarAngle:A,minPolarAngle:C}=this,e=A===C;(I||g<=A&&g>=C)&&(this.maxPolarAngle=g,this.minPolarAngle=g,this.update()),e||(this.maxPolarAngle=A,this.minPolarAngle=C)}setPolarAngleByDuration(g,I,A){return m(this,null,function*(){return I===void 0&&(I=!1),A===void 0&&(A=500),A<=0?this.setPolarAngle(g,I):rI(new Promise(C=>{let e={polar:this.getPolarAngle()},i={polar:g},n=new WC.Tween(e,this.tweenGroup).to(i,A).onUpdate(()=>{this.setPolarAngle(e.polar,I)}).onComplete(()=>{this.enabled=!0,this.tweenGroup.remove(n),C(!0)}).onStart(()=>{this.enabled=!1}).start()}),A+500)})}setAzimuthalAngle(g,I){let{maxAzimuthAngle:A,minAzimuthAngle:C}=this,e=A===C;(I||g<=A&&g>=C)&&(this.maxAzimuthAngle=g,this.minAzimuthAngle=g,this.update()),e||(this.maxAzimuthAngle=A,this.minAzimuthAngle=C)}setAzimuthalAngleDuration(g,I,A){return I===void 0&&(I=!1),A===void 0&&(A=500),A<=0?this.setAzimuthalAngle(g,I):rI(new Promise(C=>{let e={azimuthal:this.getAzimuthalAngle()},i={azimuthal:g},n=new WC.Tween(e,this.tweenGroup).to(i,A).onUpdate(()=>{this.setAzimuthalAngle(e.azimuthal,I)}).onComplete(()=>{this.enabled=!0,this.tweenGroup.remove(n),C(!0)}).onStart(()=>{this.enabled=!1}).start()}),A+500)}getCameraLookAt(){return new e0.Vector3().subVectors(this.target,this.camera.position)}setCameraPositionByTarget(g,I){return m(this,null,function*(){let A=this.target.clone(),C=this.getCameraLookAt();if(!I){this.camera.position.copy(g.clone().sub(C)),this.target.copy(g.clone()),this.update();return}return rI(new Promise(e=>{let i=new WC.Tween(A,this.tweenGroup).to(g,I).onUpdate(()=>{this.camera.position.copy(A.clone().sub(C)),this.target.copy(A.clone()),this.update()}).onComplete(()=>{this.tweenGroup.remove(i),this.enabled=!0,e(!0)}).onStart(()=>{this.enabled=!1}).start()}),I+500)})}setZoom(g,I,A){A===void 0&&(A=!1);let{minZoom:C,maxZoom:e}=this;(A||g>=C&&g<=e)&&(this.camera.position.copy(I.clone().sub(this.getCameraLookAt())),this.target.copy(I),this.camera.zoom=g,this.update())}setZoomByDuration(g,I,A,C){return m(this,null,function*(){A===void 0&&(A=!1),C===void 0&&(C=500);let e={zoom:this.camera.zoom,target:this.target.clone()};if(g!==this.camera.zoom)return C?rI(new Promise(i=>{let n=new WC.Tween(e,this.tweenGroup).to({zoom:g,target:I},C).onUpdate(()=>{this.setZoom(e.zoom,e.target,A)}).onComplete(()=>{this.tweenGroup.remove(n),this.enabled=!0,i(!0)}).onStart(()=>{this.enabled=!1}).start()}),C+500).finally(()=>{this.enabled=!0}):this.setZoom(g,I,A)})}setTargetByOffset(g,I){if(I===void 0&&(I=this.target.clone()),this.camera.updateMatrix(),g){let A=new e0.Vector3;A.setFromMatrixColumn(this.camera.matrix,1),A.normalize(),A.multiplyScalar(g/this.camera.zoom),I.add(A)}this.setCameraPositionByTarget(I,0)}clearTween(){this.tweenGroup.getAll().forEach(g=>g.stop()),this.tweenGroup.removeAll()}dispose(){super.dispose(),this.unRegistryEvent(),this.clearTween()}constructor(g,I,A){super(I,A),this.context=g,this.camera=I,this.domElement=A,this.prevCameraZoom=1,this.tweenGroup=new WC.Group,this.offsetY=0,this.onChange=()=>{let C=this.camera.zoom;C!==this.prevCameraZoom&&(this.prevCameraZoom=C,this.dispatchEvent({type:"change-zoom",zoom:C}))},this.tweenUpdate=()=>{this.tweenGroup.update()},this.enableDamping=!1,this.zoomSpeed=.5,this.prevCameraZoom=I.zoom,this.registryEvent()}};var wt=require("three");var Pr=class extends wt.WebGLRenderer{setCameraAndScene(g,I){this.scene=g,this.camera=I}autoRender(){this.scene&&this.camera&&this.enable&&(this.event.dispatchEvent({type:"update"}),this.render(this.scene,this.camera)),this.timer.requestAnimationFrame(()=>{this.autoRender()})}pauseRender(){this.enable=!1}continueRender(){this.enable=!0}addEventListener(g,I){this.event.addEventListener(g,I)}removeEventListener(g,I){this.event.removeEventListener(g,I)}constructor(g){super(D({antialias:!0,alpha:!0},g)),this.event=new wt.EventDispatcher,this.enable=!0,this.timer=new tg,this.autoClear=!0,this.setPixelRatio(window.devicePixelRatio),this.shadowMap.enabled=!0,this.shadowMap.autoUpdate=!0,this.shadowMap.type=wt.PCFSoftShadowMap;let I=this.dispose;this.dispose=()=>{this.timer.dispose(),this.enable=!1,I.call(this),this.domElement.remove(),this.domElement=null,this.shadowMap=null,this.info.programs&&(this.info.programs.length=0),this.info=null}}};var pC=require("three"),z2=require("three/examples/jsm/loaders/RGBELoader.js");var _r=class extends pC.Scene{dispose(){var g;(g=this.environment)==null||g.dispose(),this.environment=null,U(this),this.clear()}constructor(){super(),new z2.RGBELoader().load(a2,g=>{g.mapping=pC.EquirectangularReflectionMapping,this.environment=g;let I=new pC.Matrix4;I.makeRotationX(Math.PI/2),this.environmentRotation=new pC.Euler().setFromRotationMatrix(I)})}};var J2=require("three"),Er=class extends J2.OrthographicCamera{constructor(g,I){super(-g/2,g/2,I/2,-I/2,-1e4,5e4),this.up.set(0,0,1),this.position.set(0,0,100),this.lookAt(0,0,0)}};var i0=require("@turf/turf");var ni=class extends q.EventDispatcher{get config(){return this.bmap.config}get center(){return this.bmap.buildingCenter}setRange(g){this.range=(0,i0.polygon)([g])}resizeClientSize(){let{x:g,y:I,width:A,height:C}=this.container.getBoundingClientRect();this.clientSize={width:A||this.container.clientWidth,height:C||this.container.clientHeight,x:g,y:I}}init(){let{clientWidth:g,clientHeight:I}=this.container;this.camera=new Er(g,I),this.renderer.setSize(g,I),this.renderer.setCameraAndScene(this.scene,this.camera),this.renderer.autoRender(),this.control=new vr(this,this.camera,this.renderer.domElement),this.control.maxPolarAngle=this.config.control.maxPolar,this.container.appendChild(this.renderer.domElement),this.scene.add(this.lights),this.basicRatio=this.getRatio(),this.control.addEventListener("change",this.onControlChange),this.control.addEventListener("change-zoom",this.onControlChangeZoom),this.renderer.addEventListener("update",this.onRendererUpdate),this.cameraBound=new Dr(this)}getRatio(g,I){g===void 0&&(g=new q.Vector3(0,0,0)),I===void 0&&(I=new q.Vector3(100,0,0));let{clientWidth:A,clientHeight:C}=this.container,e=j(g,this.camera,A,C),i=j(I,this.camera,A,C);return Math.ceil(Math.sqrt((i.x-e.x)**2+(i.y-e.y)**2))}changeAmbientLightColor(g){this.lights.children.forEach(I=>{I instanceof q.AmbientLight&&(I.color=new q.Color(g))})}switchFloor(g,I){I===void 0&&(I=!0),console.log("switchFloor",I),this.currentFloor&&(this.currentFloor.onRemoveFromScene(),this.scene.remove(this.currentFloor),I&&this.currentFloor.dispose()),this.currentFloor=g,this.setRange(g.userData.range||[]),this.scene.add(g),g.onAddToScene();let A=g.getCenter();A&&(this.lights.position.x=A.x,this.lights.position.y=A.y),this.cameraBound.updateBox()}getGraphicsByDeviceXy(g,I){var A;let C=new q.Vector2;C.x=g/this.clientSize.width*2-1,C.y=I/this.clientSize.height*-2+1;let e=new q.Raycaster;return e.setFromCamera(C,this.camera),e.ray.origin.sub(e.ray.direction.clone().multiplyScalar(100)),((A=this.currentFloor)==null?void 0:A.graphicLayer.getGraphicByRaycaster(e))||{graphics:[],position:null}}getPoisByDeviceXy(g,I){var A,C;let e=(A=this.currentFloor)==null?void 0:A.poiLayer.getPoiByDeviceXy(g,I),i=(C=this.currentFloor)==null?void 0:C.poiLayer2.getPoiByDeviceXy(g,I);return(e||[]).concat(i||[])}registryEvent(){window.addEventListener("resize",this.onWindowResize),this.container.addEventListener("click",this.onClick),this.container.addEventListener("pointerover",this.onPointerover),this.container.addEventListener("pointermove",this.onPointermove),this.container.addEventListener("pointerleave",this.onPointerleave),this.container.addEventListener("pointercancel",this.onPointerleave),this.container.addEventListener("pointerout",this.onPointerleave),this.selection.addEventListener("select",this.onSelectionSelect),this.hoverHelper.addEventListener("hover-change",this.onHoverChange)}unRegistryEvent(){window.removeEventListener("resize",this.onWindowResize),this.container.removeEventListener("click",this.onClick),this.container.removeEventListener("pointerover",this.onPointerover),this.container.removeEventListener("pointermove",this.onPointermove),this.container.removeEventListener("pointerleave",this.onPointerleave),this.container.removeEventListener("pointercancel",this.onPointerleave),this.container.removeEventListener("pointerout",this.onPointerleave),this.selection.removeEventListener("select",this.onSelectionSelect),this.hoverHelper.removeEventListener("hover-change",this.onHoverChange),this.control.removeEventListener("change",this.onControlChange),this.control.removeEventListener("change-zoom",this.onControlChangeZoom),this.renderer.removeEventListener("update",this.onRendererUpdate)}setPolarAngle(g,I){return I===void 0&&(I=500),this.control.setPolarAngleByDuration(g,!0,I)}setAzimuthalAngle(g,I){return I===void 0&&(I=500),this.control.setAzimuthalAngleDuration(g,!0,I)}getCameraLookAt(){return this.control.getCameraLookAt()}setZoom(g,I,A){return A===void 0&&(A=500),this.control.setZoomByDuration(g,I,!0,A)}getFitCameraToObjectZoom(g,I,A){return I===void 0&&(I=[20,20,20,20]),A===void 0&&(A=!0),this.getFitCameraToBoxZoom(new q.Box3().setFromObject(g),I,A)}getFitCameraToBoxZoom(g,I,A){I===void 0&&(I=[20,20,20,20]),A===void 0&&(A=!0);let[C,e,i,n]=I,{clientSize:{width:r,height:o}}=this,s=this.control.getPolarAngle();A&&this.setPolarAngle(0,0),this.setPolarAngle(s,0);let{max:a,min:u}=g,c=new q.Vector3(u.x,a.y,a.z),h=new q.Vector3(a.x,a.y,a.z),f=new q.Vector3(a.x,u.y,u.z),d=new q.Vector3(u.x,u.y,u.z),S=j(c,this.camera,r,o),w=j(h,this.camera,r,o),M=j(d,this.camera,r,o),K=j(f,this.camera,r,o),N=new q.Box2().setFromPoints([new q.Vector2(S.x,S.y),new q.Vector2(w.x,w.y),new q.Vector2(M.x,M.y),new q.Vector2(K.x,K.y)]).getSize(new q.Vector2),v=(r-e-n)/N.x,Y=(o-C-i)/N.y,b=Math.min(v,Y),G=new q.Vector3((a.x+u.x)/2,(a.y+u.y)/2,(a.z+u.z)/2),E=b*this.camera.zoom,Q=this.camera.clone();Q.zoom=E,Q.updateMatrix();let Cg=(e-n)/2,$=(C-i)/2;if(Cg){let L=new q.Vector3;L.setFromMatrixColumn(Q.matrix,0),L.normalize(),L.multiplyScalar(Cg/E),G.add(L)}if($){let L=new q.Vector3;L.setFromMatrixColumn(Q.matrix,1),L.normalize(),L.multiplyScalar($/E),G.add(L)}return{zoom:b*this.camera.zoom,center:G}}fitCameraToObject(g,I,A,C){I===void 0&&(I=[20,20,20,20]),A===void 0&&(A=500),C===void 0&&(C=!0);let{zoom:e,center:i}=this.getFitCameraToObjectZoom(g,I,C);return this.setZoom(e,i,A)}fitCameraToBox(g,I,A,C){I===void 0&&(I=[20,20,20,20]),A===void 0&&(A=500),C===void 0&&(C=!0);let{zoom:e,center:i}=this.getFitCameraToBoxZoom(g,I,C);return this.setZoom(e,i,A)}getFitCameraToGroundZoom(g,I,A){if(g===void 0&&(g=[20,20,20,20]),I===void 0&&(I=500),A===void 0&&(A=!0),this.currentFloor&&this.currentFloor.hasElement)return this.getFitCameraToObjectZoom(this.currentFloor.groundUpper,g,A).zoom}fitCameraToGround(g,I,A){return g===void 0&&(g=[20,20,20,20]),I===void 0&&(I=500),A===void 0&&(A=!0),this.currentFloor&&this.currentFloor.hasElement?this.fitCameraToObject(this.currentFloor.groundLayer,g,I,A):Promise.resolve(!1)}setCameraPosition(g,I){return m(this,null,function*(){return this.control.setCameraPositionByTarget(g,I)})}pauseRender(){this.renderer.pauseRender()}continueRender(){this.renderer.continueRender()}dispose(){var g;(g=this.currentFloor)==null||g.dispose(),this.control.dispose(),this.cameraBound.dispose(),this.selection.dispose(),this.hoverHelper.dispose(),this.unRegistryEvent(),this.renderer.dispose(),this.lights.children.forEach(I=>I.dispose()),this.scene.dispose(),this.container=null,this.renderer=null}constructor(g,I){super(),this.container=g,this.scene=new _r,this.renderer=new Pr,this.lights=Cs(),this.range=(0,i0.polygon)([]),this.clientSize={width:0,height:0,x:0,y:0},this.renderRf=0,this.basicZoom=1,this.onControlChange=()=>{this.dispatchEvent({type:"change-ratio",px:(this.basicRatio||0)*this.camera.zoom}),this.dispatchEvent({type:"control-change"})},this.onControlChangeZoom=A=>{let{zoom:C}=A;this.dispatchEvent({type:"control-zoom-change",zoom:C})},this.onRendererUpdate=()=>{this.dispatchEvent({type:"update"})},this.onWindowResize=()=>{let{container:A,camera:C,renderer:e}=this,{clientWidth:i,clientHeight:n}=A;i=Math.max(1,i),n=Math.max(1,n),C.left=-i/2,C.right=i/2,C.top=n/2,C.bottom=-n/2,C.updateProjectionMatrix(),e.setSize(i,n),this.resizeClientSize(),this.dispatchEvent({type:"resize",width:i,height:n})},this.onClick=A=>{let{graphics:C,position:e}=this.getGraphicsByDeviceXy(A.offsetX,A.offsetY);C.length&&this.dispatchEvent({type:"graphic-click",graphics:C,position:e});let i=this.getPoisByDeviceXy(A.offsetX,A.offsetY);i.length&&this.dispatchEvent({type:"poi-click",pois:i})},this.onPointerover=A=>{let{graphics:C,position:e}=this.getGraphicsByDeviceXy(A.offsetX,A.offsetY),i=this.getPoisByDeviceXy(A.offsetX,A.offsetY);this.dispatchEvent({type:"pointer-over",e:A,graphics:C,pois:i,position:e})},this.onPointermove=A=>{let{graphics:C,position:e}=this.getGraphicsByDeviceXy(A.offsetX,A.offsetY),i=this.getPoisByDeviceXy(A.offsetX,A.offsetY);this.dispatchEvent({type:"pointer-move",e:A,graphics:C,pois:i,position:e})},this.onPointerleave=A=>{this.dispatchEvent({type:"pointer-level"})},this.onSelectionSelect=A=>{let{graphics:C,isMultipleSelect:e}=A;this.dispatchEvent({type:"select-graphic",graphics:C,isMultipleSelect:e})},this.onHoverChange=A=>{let{graphics:C}=A;this.dispatchEvent({type:"hover",graphics:C})},this.bmap=I,this.container.style.position="relative",this.container.style.overflow="hidden",this.init(),this.selection=new ti(this),this.hoverHelper=new ei(this),this.resizeClientSize(),this.registryEvent()}};var Q2=require("lodash"),q2={placeId:0,apiDomain:"",apiInfo:{},apiPath:{floorGraphic:"/api/inception-map/floor/get",floorRange:"/api/inception-map/range/get",equipmentList:"/api/inception-map/equipment/get",roadNetwork:"/api/inception-map/road_network/get",loadPlaceInfo:"https://screen.aibee.cn/ai-map/map/get-floor-map"},enableBoxSelect:!0,resizeObserver:!1,initTransToMark:!1,heatMap:{radius:50,minOpacity:.1,gradient:{0:"#8F9FCD",.5:"#6284FF",1:"#F95D5D"}},useFloorCache:!0,control:{maxPolar:1.2,defaultPolar:1.1,defaultAzimuthal:0,maxZoomScale:30},defaultPadding:[20,20,20,20],svg:{circle:{radius:"2",fill:"#1CADFF"},line:{stroke:"#1CADFF"}},selectBox:{stroke:"#1CADFF",fill:"rgba(28, 173, 255, 0.3)"},hover:{time:100},ground:{color:"#F6F6F6",opacity:1,height:.001,stroke:!1,strokeColor:"#E6E6E6",strokeOpacity:1},markGraphic:{color:"#EEF0F3",opacity:1,height:.001,stroke:!1,strokeColor:"#000",strokeOpacity:1},graphic:{fillOpacity:1},cameraBound:{padding:[150,150,150,150]},poi:{boxScale:1},loaderPlaceConfig:{textFontSize:14}};function n0(t){return(0,Q2.merge)({},q2,t)}var AB=require("lodash");var X8=l(_(),1);var Gr=require("three");var R8=l(W(),1),N8=l(_(),1);var T8=l(PC(),1);var Bt=function(t){return t.LAYERED_RENDER_VERSION="layeredRender",t.MERGED_RENDER_VERSION="mergedRender",t}({});function br(t,g){let I=t.poi_info.showName||t.store_name||t.poi_info.text;switch(g){case"zh-cn":return I;case"en":var A;return((A=t.store_info_ext)==null?void 0:A.poi_name)||I;case"zh-hk":var C;return((C=t.store_info_ext)==null?void 0:C.traditional_name)||I}}function xr(t,g){let I=t.poi_info.showName||t.store_name||t.poi_info.text;switch(g){case"zh-cn":return I;case"en":var A;return((A=t.infra_info_ext)==null?void 0:A.poi_name)||I;case"zh-hk":var C;return((C=t.infra_info_ext)==null?void 0:C.traditional_name)||I}}var r0=["range","ground","store","facility","parkingSpace"];function $2(t){return r0.indexOf(t.l_type)===-1?r0.length:r0.indexOf(t.l_type)}function w4(t){t.layers.sort((g,I)=>$2(g)-$2(I))}function B4(t){let g=t.layers.find(A=>A.l_type==="range"),I=[g.elements[0].center_x,g.elements[0].center_y];t.layers.map(A=>{if(A.l_type!=="range")return ue(A.elements,I)})}function Kr(t){w4(t),B4(t)}function Mt(t,g){return g===void 0&&(g=4),t.floor_id+"_"+t.version_id+(g?"_"+g:"")}function gB(t,g,I){switch(t.l_type){case"ground":return o0(t,g);case"graph":return M4(t,g);case"wall":return v4(t,g);case"lane":return P4(t,g);case"texture2d":case"texture3d":return _4(t,g);case"glb":return E4(t,g);case"store":return b4(t,g,I);case"facility":return K4(t,g,I);case"parkingSpace":return T4(t,g,I);case"text":return Y4(t,g)}}function IB(t,g,I,A){switch(t.l_type){case"store":return x4(t,g,I,A);case"facility":return G4(t,g,I,A);case"parkingSpace":return O4(t,g,A)}}function M4(t,g){g.mergeGraphicLayer.addGraphics(t.elements,t.mergedElements)}function o0(t,g){if(t.mergedElements){let I=t.mergedElements.map(A=>new uC(g.context,D({},A,{dashed:!1})));g.addGrounds(I)}else{let I=t.elements.map(A=>new Bg(g.context,D({},A,{dashed:!1})));g.addGrounds(I)}}function v4(t,g){if(t.mergedElements)t.mergedElements.map(I=>{let A=new Ai(g.context,I);g.wallLayer.add(A)});else{let I=t.elements.reduce((A,C)=>{let{fillColor:e,fillOpacity:i,strokeColor:n,strokeOpacity:r,height:o}=C,s=e.toLowerCase()+"-"+i+"-"+n.toLowerCase()+"-"+r+"-"+o;return r===0&&(s=e.toLowerCase()+"-"+i+"-"+o),A[s]?A[s].push(C):A[s]=[C],A},{});Object.values(I).forEach(A=>{let C=new $e(g.context,A);g.wallLayer.add(C)})}}function P4(t,g){if(t.mergedElements){let I=new Ci(g.context,t.mergedElements);g.laneLayer.add(I)}else{let I=new gi(g.context,t.elements);g.laneLayer.add(I)}}function _4(t,g){if(t.mergedMatrixes)t.mergedMatrixes.map(I=>{let A=new aC(g.context,I);g.textureLayer.add(A)});else if(t.elements.length){let I=new sC(g.context,t.elements);g.textureLayer.add(I)}}function E4(t,g){g.glbModelLayer.addModels(t.elements.map(I=>D({},I,{url:I.secondUrl,rotate:I.secondRotate,width:I.secondWidth,center_x:I.center_coord_x,center_y:I.center_coord_y,deltaHeight:0})))}function b4(t,g,I){I.mergeGraphic?g.mergeGraphicLayer.addGraphics(t.elements,t.mergedElements):t.elements.map(A=>{let C=g.addGraphic(D({},A,{dashed:!1}));g.userData.graphics.push(C),g.userData.graphicMap.set(A.id,C)})}function x4(t,g,I,A){t.elements.map(C=>{try{let e=br(C,I),i=new ug(g.context,{id:C.id,icon:C.poi_info.showImageUrl||C.poi_info.icon,text:e,position:{x:C.center_coord_x,y:C.center_coord_y,z:C.airHeight+C.height},icon_size:[24,24],level:C.poi_info.level||0,hide_text:!A.showStoreName,maxWeight:C.poi_info.maxWeight||25,minWeight:C.poi_info.minWeight||1,text_font_size:A.textFontSize});g.poiLayer2.pushPoi(i),i&&(i.userData.type="store",i.userData.data=C,i.userData.floor=g.name)}catch(e){console.log("\u521B\u5EFA\u5E97\u94FApoi\u5931\u8D25",e,C)}})}function K4(t,g,I){I.mergeGraphic?g.mergeGraphicLayer.addGraphics(t.elements,t.mergedElements):t.elements.map(A=>{let C=g.addGraphic(D({},A,{dashed:!1}));g.userData.graphics.push(C),g.userData.graphicMap.set(A.id,C)})}function G4(t,g,I,A){t.elements.filter(e=>e.poi_info).map(e=>{try{let i=xr(e,I),n=new ug(g.context,{id:e.id,icon:e.poi_info.showImageUrl||e.poi_info.icon,text:i,position:{x:e.center_coord_x,y:e.center_coord_y,z:e.airHeight+e.height},icon_size:[24,24],level:e.poi_info.level||0,hide_text:!A.showFacilityName,maxWeight:e.poi_info.maxWeight||25,minWeight:e.poi_info.minWeight||1,text_font_size:A.textFontSize});g.poiLayer2.pushPoi(n),n.userData.type="facility",n.userData.data=e,n.userData.floor=g.name}catch(i){console.log("\u6DFB\u52A0facility\u5931\u8D25",i,e)}})}function T4(t,g,I){g.parkingSpaceLayer.load(t,I.mergeParkingSpace),g.userData.parkingSpaces=g.parkingSpaceLayer.graphicMap.values(),g.userData.parkingSpacesGraphicMap=g.parkingSpaceLayer.graphicMap}function O4(t,g,I){return m(this,null,function*(){let A=t.elements.filter(i=>i.texts[0]),C=A.map(i=>i.displayName||i.texts[0]),e=yield ag.lazyGetTextureByTexts(C,{height:64});A.forEach(i=>{try{let n=i.displayName||i.texts[0],r=new ug(g.context,{id:i.id,text:n,position:{x:i.center_coord_x,y:i.center_coord_y,z:i.airHeight+i.height},text_texture:e[n].texture,text_texture_width:e[n].width,text_texture_height:e[n].height,text_texture_offset_x:e[n].x,text_texture_offset_y:e[n].y,text_font_size:I.textFontSize});r&&(r.userData.type="parkingSpace",r.userData.data=i,r.userData.floor=g.name),g.poiLayer2.pushPoi(r)}catch(n){console.log("\u6DFB\u52A0\u8F66\u4F4Dpoi\u5931\u8D25",n,i)}}),Object.values(e).forEach(i=>{i.texture.dispose()})})}function Y4(t,g){let I=new Ii(g.context,t.elements.map(A=>D({},A,{center_x:A.center_coord_x,center_y:A.center_coord_y})));g.textTextureLayer.add(I)}function s0(){let t=new Blob([`var VD=Object.create;var D1=Object.defineProperty;var HD=Object.getOwnPropertyDescriptor;var WD=Object.getOwnPropertyNames;var XD=Object.getPrototypeOf,YD=Object.prototype.hasOwnProperty;var X=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports);var $D=(n,t,e,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of WD(t))!YD.call(n,s)&&s!==e&&D1(n,s,{get:()=>t[s],enumerable:!(i=HD(t,s))||i.enumerable});return n};var Qt=(n,t,e)=>(e=n!=null?VD(XD(n)):{},$D(t||!n||!n.__esModule?D1(e,"default",{value:n,enumerable:!0}):e,n));var Ri=(n,t,e)=>new Promise((i,s)=>{var u=p=>{try{f(e.next(p))}catch(d){s(d)}},c=p=>{try{f(e.throw(p))}catch(d){s(d)}},f=p=>p.done?i(p.value):Promise.resolve(p.value).then(u,c);f((e=e.apply(n,t)).next())});var Sn=X((Ug,F1)=>{"use strict";var Ec=function(n){return n&&n.Math===Math&&n};F1.exports=Ec(typeof globalThis=="object"&&globalThis)||Ec(typeof window=="object"&&window)||Ec(typeof self=="object"&&self)||Ec(typeof global=="object"&&global)||Ec(typeof Ug=="object"&&Ug)||function(){return this}()||Function("return this")()});var An=X((pet,U1)=>{"use strict";U1.exports=function(n){try{return!!n()}catch(t){return!0}}});var ri=X((det,B1)=>{"use strict";var ZD=An();B1.exports=!ZD(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7})});var Sc=X((get,z1)=>{"use strict";var JD=An();z1.exports=!JD(function(){var n=function(){}.bind();return typeof n!="function"||n.hasOwnProperty("prototype")})});var vr=X((met,G1)=>{"use strict";var jD=Sc(),Kf=Function.prototype.call;G1.exports=jD?Kf.bind(Kf):function(){return Kf.apply(Kf,arguments)}});var H1=X(V1=>{"use strict";var k1={}.propertyIsEnumerable,q1=Object.getOwnPropertyDescriptor,KD=q1&&!k1.call({1:2},1);V1.f=KD?function(t){var e=q1(this,t);return!!e&&e.enumerable}:k1});var wc=X((vet,W1)=>{"use strict";W1.exports=function(n,t){return{enumerable:!(n&1),configurable:!(n&2),writable:!(n&4),value:t}}});var In=X((_et,$1)=>{"use strict";var X1=Sc(),Y1=Function.prototype,Bg=Y1.call,QD=X1&&Y1.bind.bind(Bg,Bg);$1.exports=X1?QD:function(n){return function(){return Bg.apply(n,arguments)}}});var vs=X((xet,J1)=>{"use strict";var Z1=In(),t3=Z1({}.toString),e3=Z1("".slice);J1.exports=function(n){return e3(t3(n),8,-1)}});var Qf=X((Eet,j1)=>{"use strict";var n3=In(),r3=An(),i3=vs(),zg=Object,o3=n3("".split);j1.exports=r3(function(){return!zg("z").propertyIsEnumerable(0)})?function(n){return i3(n)==="String"?o3(n,""):zg(n)}:zg});var th=X((wet,K1)=>{"use strict";K1.exports=function(n){return n==null}});var Fu=X((Met,Q1)=>{"use strict";var s3=th(),a3=TypeError;Q1.exports=function(n){if(s3(n))throw new a3("Can't call method on "+n);return n}});var Uu=X((bet,tE)=>{"use strict";var u3=Qf(),l3=Fu();tE.exports=function(n){return u3(l3(n))}});var er=X((Aet,eE)=>{"use strict";var Gg=typeof document=="object"&&document.all;eE.exports=typeof Gg=="undefined"&&Gg!==void 0?function(n){return typeof n=="function"||n===Gg}:function(n){return typeof n=="function"}});var xi=X((Tet,nE)=>{"use strict";var c3=er();nE.exports=function(n){return typeof n=="object"?n!==null:c3(n)}});var $s=X((Cet,rE)=>{"use strict";var kg=Sn(),f3=er(),h3=function(n){return f3(n)?n:void 0};rE.exports=function(n,t){return arguments.length<2?h3(kg[n]):kg[n]&&kg[n][t]}});var Mc=X((Iet,iE)=>{"use strict";var p3=In();iE.exports=p3({}.isPrototypeOf)});var Bu=X((Pet,aE)=>{"use strict";var d3=Sn(),oE=d3.navigator,sE=oE&&oE.userAgent;aE.exports=sE?String(sE):""});var bc=X((Ret,pE)=>{"use strict";var hE=Sn(),qg=Bu(),uE=hE.process,lE=hE.Deno,cE=uE&&uE.versions||lE&&lE.version,fE=cE&&cE.v8,So,eh;fE&&(So=fE.split("."),eh=So[0]>0&&So[0]<4?1:+(So[0]+So[1]));!eh&&qg&&(So=qg.match(/Edge\\/(\\d+)/),(!So||So[1]>=74)&&(So=qg.match(/Chrome\\/(\\d+)/),So&&(eh=+So[1])));pE.exports=eh});var nh=X((Let,gE)=>{"use strict";var dE=bc(),g3=An(),m3=Sn(),y3=m3.String;gE.exports=!!Object.getOwnPropertySymbols&&!g3(function(){var n=Symbol("symbol detection");return!y3(n)||!(Object(n)instanceof Symbol)||!Symbol.sham&&dE&&dE<41})});var Vg=X((Net,mE)=>{"use strict";var v3=nh();mE.exports=v3&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var Ac=X((Oet,yE)=>{"use strict";var _3=$s(),x3=er(),E3=Mc(),S3=Vg(),w3=Object;yE.exports=S3?function(n){return typeof n=="symbol"}:function(n){var t=_3("Symbol");return x3(t)&&E3(t.prototype,w3(n))}});var zu=X((Det,vE)=>{"use strict";var M3=String;vE.exports=function(n){try{return M3(n)}catch(t){return"Object"}}});var _s=X((Fet,_E)=>{"use strict";var b3=er(),A3=zu(),T3=TypeError;_E.exports=function(n){if(b3(n))return n;throw new T3(A3(n)+" is not a function")}});var Tc=X((Uet,xE)=>{"use strict";var C3=_s(),I3=th();xE.exports=function(n,t){var e=n[t];return I3(e)?void 0:C3(e)}});var SE=X((Bet,EE)=>{"use strict";var Hg=vr(),Wg=er(),Xg=xi(),P3=TypeError;EE.exports=function(n,t){var e,i;if(t==="string"&&Wg(e=n.toString)&&!Xg(i=Hg(e,n))||Wg(e=n.valueOf)&&!Xg(i=Hg(e,n))||t!=="string"&&Wg(e=n.toString)&&!Xg(i=Hg(e,n)))return i;throw new P3("Can't convert object to primitive value")}});var Cc=X((zet,wE)=>{"use strict";wE.exports=!1});var rh=X((Get,bE)=>{"use strict";var ME=Sn(),R3=Object.defineProperty;bE.exports=function(n,t){try{R3(ME,n,{value:t,configurable:!0,writable:!0})}catch(e){ME[n]=t}return t}});var ih=X((ket,CE)=>{"use strict";var L3=Cc(),N3=Sn(),O3=rh(),AE="__core-js_shared__",TE=CE.exports=N3[AE]||O3(AE,{});(TE.versions||(TE.versions=[])).push({version:"3.42.0",mode:L3?"pure":"global",copyright:"\\xA9 2014-2025 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.42.0/LICENSE",source:"https://github.com/zloirock/core-js"})});var oh=X((qet,PE)=>{"use strict";var IE=ih();PE.exports=function(n,t){return IE[n]||(IE[n]=t||{})}});var Vi=X((Vet,RE)=>{"use strict";var D3=Fu(),F3=Object;RE.exports=function(n){return F3(D3(n))}});var oo=X((Het,LE)=>{"use strict";var U3=In(),B3=Vi(),z3=U3({}.hasOwnProperty);LE.exports=Object.hasOwn||function(t,e){return z3(B3(t),e)}});var sh=X((Wet,NE)=>{"use strict";var G3=In(),k3=0,q3=Math.random(),V3=G3(1 .toString);NE.exports=function(n){return"Symbol("+(n===void 0?"":n)+")_"+V3(++k3+q3,36)}});var Xr=X((Xet,DE)=>{"use strict";var H3=Sn(),W3=oh(),OE=oo(),X3=sh(),Y3=nh(),$3=Vg(),Gu=H3.Symbol,Yg=W3("wks"),Z3=$3?Gu.for||Gu:Gu&&Gu.withoutSetter||X3;DE.exports=function(n){return OE(Yg,n)||(Yg[n]=Y3&&OE(Gu,n)?Gu[n]:Z3("Symbol."+n)),Yg[n]}});var $g=X((Yet,BE)=>{"use strict";var J3=vr(),FE=xi(),UE=Ac(),j3=Tc(),K3=SE(),Q3=Xr(),tF=TypeError,eF=Q3("toPrimitive");BE.exports=function(n,t){if(!FE(n)||UE(n))return n;var e=j3(n,eF),i;if(e){if(t===void 0&&(t="default"),i=J3(e,n,t),!FE(i)||UE(i))return i;throw new tF("Can't convert object to primitive value")}return t===void 0&&(t="number"),K3(n,t)}});var ah=X(($et,zE)=>{"use strict";var nF=$g(),rF=Ac();zE.exports=function(n){var t=nF(n,"string");return rF(t)?t:t+""}});var uh=X((Zet,kE)=>{"use strict";var iF=Sn(),GE=xi(),Zg=iF.document,oF=GE(Zg)&&GE(Zg.createElement);kE.exports=function(n){return oF?Zg.createElement(n):{}}});var Jg=X((Jet,qE)=>{"use strict";var sF=ri(),aF=An(),uF=uh();qE.exports=!sF&&!aF(function(){return Object.defineProperty(uF("div"),"a",{get:function(){return 7}}).a!==7})});var lh=X(HE=>{"use strict";var lF=ri(),cF=vr(),fF=H1(),hF=wc(),pF=Uu(),dF=ah(),gF=oo(),mF=Jg(),VE=Object.getOwnPropertyDescriptor;HE.f=lF?VE:function(t,e){if(t=pF(t),e=dF(e),mF)try{return VE(t,e)}catch(i){}if(gF(t,e))return hF(!cF(fF.f,t,e),t[e])}});var jg=X((Ket,WE)=>{"use strict";var yF=ri(),vF=An();WE.exports=yF&&vF(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42})});var so=X((Qet,XE)=>{"use strict";var _F=xi(),xF=String,EF=TypeError;XE.exports=function(n){if(_F(n))return n;throw new EF(xF(n)+" is not an object")}});var Wo=X($E=>{"use strict";var SF=ri(),wF=Jg(),MF=jg(),ch=so(),YE=ah(),bF=TypeError,Kg=Object.defineProperty,AF=Object.getOwnPropertyDescriptor,Qg="enumerable",tm="configurable",em="writable";$E.f=SF?MF?function(t,e,i){if(ch(t),e=YE(e),ch(i),typeof t=="function"&&e==="prototype"&&"value"in i&&em in i&&!i[em]){var s=AF(t,e);s&&s[em]&&(t[e]=i.value,i={configurable:tm in i?i[tm]:s[tm],enumerable:Qg in i?i[Qg]:s[Qg],writable:!1})}return Kg(t,e,i)}:Kg:function(t,e,i){if(ch(t),e=YE(e),ch(i),wF)try{return Kg(t,e,i)}catch(s){}if("get"in i||"set"in i)throw new bF("Accessors not supported");return"value"in i&&(t[e]=i.value),t}});var xs=X((ent,ZE)=>{"use strict";var TF=ri(),CF=Wo(),IF=wc();ZE.exports=TF?function(n,t,e){return CF.f(n,t,IF(1,e))}:function(n,t,e){return n[t]=e,n}});var fh=X((nnt,jE)=>{"use strict";var nm=ri(),PF=oo(),JE=Function.prototype,RF=nm&&Object.getOwnPropertyDescriptor,rm=PF(JE,"name"),LF=rm&&function(){}.name==="something",NF=rm&&(!nm||nm&&RF(JE,"name").configurable);jE.exports={EXISTS:rm,PROPER:LF,CONFIGURABLE:NF}});var om=X((rnt,KE)=>{"use strict";var OF=In(),DF=er(),im=ih(),FF=OF(Function.toString);DF(im.inspectSource)||(im.inspectSource=function(n){return FF(n)});KE.exports=im.inspectSource});var eS=X((int,tS)=>{"use strict";var UF=Sn(),BF=er(),QE=UF.WeakMap;tS.exports=BF(QE)&&/native code/.test(String(QE))});var hh=X((ont,rS)=>{"use strict";var zF=oh(),GF=sh(),nS=zF("keys");rS.exports=function(n){return nS[n]||(nS[n]=GF(n))}});var ph=X((snt,iS)=>{"use strict";iS.exports={}});var Va=X((ant,aS)=>{"use strict";var kF=eS(),sS=Sn(),qF=xi(),VF=xs(),sm=oo(),am=ih(),HF=hh(),WF=ph(),oS="Object already initialized",um=sS.TypeError,XF=sS.WeakMap,dh,Ic,gh,YF=function(n){return gh(n)?Ic(n):dh(n,{})},$F=function(n){return function(t){var e;if(!qF(t)||(e=Ic(t)).type!==n)throw new um("Incompatible receiver, "+n+" required");return e}};kF||am.state?(wo=am.state||(am.state=new XF),wo.get=wo.get,wo.has=wo.has,wo.set=wo.set,dh=function(n,t){if(wo.has(n))throw new um(oS);return t.facade=n,wo.set(n,t),t},Ic=function(n){return wo.get(n)||{}},gh=function(n){return wo.has(n)}):(qa=HF("state"),WF[qa]=!0,dh=function(n,t){if(sm(n,qa))throw new um(oS);return t.facade=n,VF(n,qa,t),t},Ic=function(n){return sm(n,qa)?n[qa]:{}},gh=function(n){return sm(n,qa)});var wo,qa;aS.exports={set:dh,get:Ic,has:gh,enforce:YF,getterFor:$F}});var fm=X((unt,cS)=>{"use strict";var cm=In(),ZF=An(),JF=er(),mh=oo(),lm=ri(),jF=fh().CONFIGURABLE,KF=om(),lS=Va(),QF=lS.enforce,tU=lS.get,uS=String,yh=Object.defineProperty,eU=cm("".slice),nU=cm("".replace),rU=cm([].join),iU=lm&&!ZF(function(){return yh(function(){},"length",{value:8}).length!==8}),oU=String(String).split("String"),sU=cS.exports=function(n,t,e){eU(uS(t),0,7)==="Symbol("&&(t="["+nU(uS(t),/^Symbol\\(([^)]*)\\).*$/,"$1")+"]"),e&&e.getter&&(t="get "+t),e&&e.setter&&(t="set "+t),(!mh(n,"name")||jF&&n.name!==t)&&(lm?yh(n,"name",{value:t,configurable:!0}):n.name=t),iU&&e&&mh(e,"arity")&&n.length!==e.arity&&yh(n,"length",{value:e.arity});try{e&&mh(e,"constructor")&&e.constructor?lm&&yh(n,"prototype",{writable:!1}):n.prototype&&(n.prototype=void 0)}catch(s){}var i=QF(n);return mh(i,"source")||(i.source=rU(oU,typeof t=="string"?t:"")),n};Function.prototype.toString=sU(function(){return JF(this)&&tU(this).source||KF(this)},"toString")});var Ha=X((lnt,fS)=>{"use strict";var aU=er(),uU=Wo(),lU=fm(),cU=rh();fS.exports=function(n,t,e,i){i||(i={});var s=i.enumerable,u=i.name!==void 0?i.name:t;if(aU(e)&&lU(e,u,i),i.global)s?n[t]=e:cU(t,e);else{try{i.unsafe?n[t]&&(s=!0):delete n[t]}catch(c){}s?n[t]=e:uU.f(n,t,{value:e,enumerable:!1,configurable:!i.nonConfigurable,writable:!i.nonWritable})}return n}});var pS=X((cnt,hS)=>{"use strict";var fU=Math.ceil,hU=Math.floor;hS.exports=Math.trunc||function(t){var e=+t;return(e>0?hU:fU)(e)}});var Hi=X((fnt,dS)=>{"use strict";var pU=pS();dS.exports=function(n){var t=+n;return t!==t||t===0?0:pU(t)}});var vh=X((hnt,gS)=>{"use strict";var dU=Hi(),gU=Math.max,mU=Math.min;gS.exports=function(n,t){var e=dU(n);return e<0?gU(e+t,0):mU(e,t)}});var Wa=X((pnt,mS)=>{"use strict";var yU=Hi(),vU=Math.min;mS.exports=function(n){var t=yU(n);return t>0?vU(t,9007199254740991):0}});var ii=X((dnt,yS)=>{"use strict";var _U=Wa();yS.exports=function(n){return _U(n.length)}});var xS=X((gnt,_S)=>{"use strict";var xU=Uu(),EU=vh(),SU=ii(),vS=function(n){return function(t,e,i){var s=xU(t),u=SU(s);if(u===0)return!n&&-1;var c=EU(i,u),f;if(n&&e!==e){for(;u>c;)if(f=s[c++],f!==f)return!0}else for(;u>c;c++)if((n||c in s)&&s[c]===e)return n||c||0;return!n&&-1}};_S.exports={includes:vS(!0),indexOf:vS(!1)}});var pm=X((mnt,SS)=>{"use strict";var wU=In(),hm=oo(),MU=Uu(),bU=xS().indexOf,AU=ph(),ES=wU([].push);SS.exports=function(n,t){var e=MU(n),i=0,s=[],u;for(u in e)!hm(AU,u)&&hm(e,u)&&ES(s,u);for(;t.length>i;)hm(e,u=t[i++])&&(~bU(s,u)||ES(s,u));return s}});var _h=X((ynt,wS)=>{"use strict";wS.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var dm=X(MS=>{"use strict";var TU=pm(),CU=_h(),IU=CU.concat("length","prototype");MS.f=Object.getOwnPropertyNames||function(t){return TU(t,IU)}});var AS=X(bS=>{"use strict";bS.f=Object.getOwnPropertySymbols});var CS=X((xnt,TS)=>{"use strict";var PU=$s(),RU=In(),LU=dm(),NU=AS(),OU=so(),DU=RU([].concat);TS.exports=PU("Reflect","ownKeys")||function(t){var e=LU.f(OU(t)),i=NU.f;return i?DU(e,i(t)):e}});var gm=X((Ent,PS)=>{"use strict";var IS=oo(),FU=CS(),UU=lh(),BU=Wo();PS.exports=function(n,t,e){for(var i=FU(t),s=BU.f,u=UU.f,c=0;c<i.length;c++){var f=i[c];!IS(n,f)&&!(e&&IS(e,f))&&s(n,f,u(t,f))}}});var LS=X((Snt,RS)=>{"use strict";var zU=An(),GU=er(),kU=/#|\\.prototype\\./,Pc=function(n,t){var e=VU[qU(n)];return e===WU?!0:e===HU?!1:GU(t)?zU(t):!!t},qU=Pc.normalize=function(n){return String(n).replace(kU,".").toLowerCase()},VU=Pc.data={},HU=Pc.NATIVE="N",WU=Pc.POLYFILL="P";RS.exports=Pc});var sr=X((wnt,NS)=>{"use strict";var xh=Sn(),XU=lh().f,YU=xs(),$U=Ha(),ZU=rh(),JU=gm(),jU=LS();NS.exports=function(n,t){var e=n.target,i=n.global,s=n.stat,u,c,f,p,d,g;if(i?c=xh:s?c=xh[e]||ZU(e,{}):c=xh[e]&&xh[e].prototype,c)for(f in t){if(d=t[f],n.dontCallGetSet?(g=XU(c,f),p=g&&g.value):p=c[f],u=jU(i?f:e+(s?".":"#")+f,n.forced),!u&&p!==void 0){if(typeof d==typeof p)continue;JU(d,p)}(n.sham||p&&p.sham)&&YU(d,"sham",!0),$U(c,f,d,n)}}});var Rc=X((Mnt,OS)=>{"use strict";var KU=vs();OS.exports=Array.isArray||function(t){return KU(t)==="Array"}});var mm=X((bnt,DS)=>{"use strict";var QU=ri(),tB=Rc(),eB=TypeError,nB=Object.getOwnPropertyDescriptor,rB=QU&&!function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(n){return n instanceof TypeError}}();DS.exports=rB?function(n,t){if(tB(n)&&!nB(n,"length").writable)throw new eB("Cannot set read only .length");return n.length=t}:function(n,t){return n.length=t}});var Eh=X((Ant,FS)=>{"use strict";var iB=TypeError,oB=9007199254740991;FS.exports=function(n){if(n>oB)throw iB("Maximum allowed index exceeded");return n}});var Sh=X(()=>{"use strict";var sB=sr(),aB=Vi(),uB=ii(),lB=mm(),cB=Eh(),fB=An(),hB=fB(function(){return[].push.call({length:4294967296},1)!==4294967297}),pB=function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(n){return n instanceof TypeError}},dB=hB||!pB();sB({target:"Array",proto:!0,arity:1,forced:dB},{push:function(t){var e=aB(this),i=uB(e),s=arguments.length;cB(i+s);for(var u=0;u<s;u++)e[i]=arguments[u],i++;return lB(e,i),i}})});var US=X(()=>{"use strict";var gB=sr(),mB=vr();gB({target:"URL",proto:!0,enumerable:!0},{toJSON:function(){return mB(URL.prototype.toString,this)}})});var zS=X((Rnt,BS)=>{"use strict";BS.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}});var qS=X((Lnt,kS)=>{"use strict";var yB=uh(),ym=yB("span").classList,GS=ym&&ym.constructor&&ym.constructor.prototype;kS.exports=GS===Object.prototype?void 0:GS});var HS=X((Nnt,VS)=>{"use strict";var vB=pm(),_B=_h();VS.exports=Object.keys||function(t){return vB(t,_B)}});var XS=X(WS=>{"use strict";var xB=ri(),EB=jg(),SB=Wo(),wB=so(),MB=Uu(),bB=HS();WS.f=xB&&!EB?Object.defineProperties:function(t,e){wB(t);for(var i=MB(e),s=bB(e),u=s.length,c=0,f;u>c;)SB.f(t,f=s[c++],i[f]);return t}});var $S=X((Dnt,YS)=>{"use strict";var AB=$s();YS.exports=AB("document","documentElement")});var ku=X((Fnt,ew)=>{"use strict";var TB=so(),CB=XS(),ZS=_h(),IB=ph(),PB=$S(),RB=uh(),LB=hh(),JS=">",jS="<",_m="prototype",xm="script",QS=LB("IE_PROTO"),vm=function(){},tw=function(n){return jS+xm+JS+n+jS+"/"+xm+JS},KS=function(n){n.write(tw("")),n.close();var t=n.parentWindow.Object;return n=null,t},NB=function(){var n=RB("iframe"),t="java"+xm+":",e;return n.style.display="none",PB.appendChild(n),n.src=String(t),e=n.contentWindow.document,e.open(),e.write(tw("document.F=Object")),e.close(),e.F},wh,Mh=function(){try{wh=new ActiveXObject("htmlfile")}catch(t){}Mh=typeof document!="undefined"?document.domain&&wh?KS(wh):NB():KS(wh);for(var n=ZS.length;n--;)delete Mh[_m][ZS[n]];return Mh()};IB[QS]=!0;ew.exports=Object.create||function(t,e){var i;return t!==null?(vm[_m]=TB(t),i=new vm,vm[_m]=null,i[QS]=t):i=Mh(),e===void 0?i:CB.f(i,e)}});var wm=X((Unt,nw)=>{"use strict";var OB=Xr(),DB=ku(),FB=Wo().f,Em=OB("unscopables"),Sm=Array.prototype;Sm[Em]===void 0&&FB(Sm,Em,{configurable:!0,value:DB(null)});nw.exports=function(n){Sm[Em][n]=!0}});var qu=X((Bnt,rw)=>{"use strict";rw.exports={}});var ow=X((znt,iw)=>{"use strict";var UB=An();iw.exports=!UB(function(){function n(){}return n.prototype.constructor=null,Object.getPrototypeOf(new n)!==n.prototype})});var Lc=X((Gnt,aw)=>{"use strict";var BB=oo(),zB=er(),GB=Vi(),kB=hh(),qB=ow(),sw=kB("IE_PROTO"),Mm=Object,VB=Mm.prototype;aw.exports=qB?Mm.getPrototypeOf:function(n){var t=GB(n);if(BB(t,sw))return t[sw];var e=t.constructor;return zB(e)&&t instanceof e?e.prototype:t instanceof Mm?VB:null}});var Cm=X((knt,cw)=>{"use strict";var HB=An(),WB=er(),XB=xi(),YB=ku(),uw=Lc(),$B=Ha(),ZB=Xr(),JB=Cc(),Tm=ZB("iterator"),lw=!1,Es,bm,Am;[].keys&&(Am=[].keys(),"next"in Am?(bm=uw(uw(Am)),bm!==Object.prototype&&(Es=bm)):lw=!0);var jB=!XB(Es)||HB(function(){var n={};return Es[Tm].call(n)!==n});jB?Es={}:JB&&(Es=YB(Es));WB(Es[Tm])||$B(Es,Tm,function(){return this});cw.exports={IteratorPrototype:Es,BUGGY_SAFARI_ITERATORS:lw}});var Nc=X((qnt,hw)=>{"use strict";var KB=Wo().f,QB=oo(),tz=Xr(),fw=tz("toStringTag");hw.exports=function(n,t,e){n&&!e&&(n=n.prototype),n&&!QB(n,fw)&&KB(n,fw,{configurable:!0,value:t})}});var dw=X((Vnt,pw)=>{"use strict";var ez=Cm().IteratorPrototype,nz=ku(),rz=wc(),iz=Nc(),oz=qu(),sz=function(){return this};pw.exports=function(n,t,e,i){var s=t+" Iterator";return n.prototype=nz(ez,{next:rz(+!i,e)}),iz(n,s,!1,!0),oz[s]=sz,n}});var Oc=X((Hnt,gw)=>{"use strict";var az=In(),uz=_s();gw.exports=function(n,t,e){try{return az(uz(Object.getOwnPropertyDescriptor(n,t)[e]))}catch(i){}}});var yw=X((Wnt,mw)=>{"use strict";var lz=xi();mw.exports=function(n){return lz(n)||n===null}});var _w=X((Xnt,vw)=>{"use strict";var cz=yw(),fz=String,hz=TypeError;vw.exports=function(n){if(cz(n))return n;throw new hz("Can't set "+fz(n)+" as a prototype")}});var Vu=X((Ynt,xw)=>{"use strict";var pz=Oc(),dz=xi(),gz=Fu(),mz=_w();xw.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var n=!1,t={},e;try{e=pz(Object.prototype,"__proto__","set"),e(t,[]),n=t instanceof Array}catch(i){}return function(s,u){return gz(s),mz(u),dz(s)&&(n?e(s,u):s.__proto__=u),s}}():void 0)});var Rw=X(($nt,Pw)=>{"use strict";var yz=sr(),vz=vr(),bh=Cc(),Cw=fh(),_z=er(),xz=dw(),Ew=Lc(),Sw=Vu(),Ez=Nc(),Sz=xs(),Im=Ha(),wz=Xr(),ww=qu(),Iw=Cm(),Mz=Cw.PROPER,bz=Cw.CONFIGURABLE,Mw=Iw.IteratorPrototype,Ah=Iw.BUGGY_SAFARI_ITERATORS,Dc=wz("iterator"),bw="keys",Fc="values",Aw="entries",Tw=function(){return this};Pw.exports=function(n,t,e,i,s,u,c){xz(e,t,i);var f=function(x){if(x===s&&v)return v;if(!Ah&&x&&x in g)return g[x];switch(x){case bw:return function(){return new e(this,x)};case Fc:return function(){return new e(this,x)};case Aw:return function(){return new e(this,x)}}return function(){return new e(this)}},p=t+" Iterator",d=!1,g=n.prototype,y=g[Dc]||g["@@iterator"]||s&&g[s],v=!Ah&&y||f(s),E=t==="Array"&&g.entries||y,M,A,_;if(E&&(M=Ew(E.call(new n)),M!==Object.prototype&&M.next&&(!bh&&Ew(M)!==Mw&&(Sw?Sw(M,Mw):_z(M[Dc])||Im(M,Dc,Tw)),Ez(M,p,!0,!0),bh&&(ww[p]=Tw))),Mz&&s===Fc&&y&&y.name!==Fc&&(!bh&&bz?Sz(g,"name",Fc):(d=!0,v=function(){return vz(y,this)})),s)if(A={values:f(Fc),keys:u?v:f(bw),entries:f(Aw)},c)for(_ in A)(Ah||d||!(_ in g))&&Im(g,_,A[_]);else yz({target:t,proto:!0,forced:Ah||d},A);return(!bh||c)&&g[Dc]!==v&&Im(g,Dc,v,{name:s}),ww[t]=v,A}});var Nw=X((Znt,Lw)=>{"use strict";Lw.exports=function(n,t){return{value:n,done:t}}});var zw=X((Jnt,Bw)=>{"use strict";var Az=Uu(),Pm=wm(),Ow=qu(),Fw=Va(),Tz=Wo().f,Cz=Rw(),Th=Nw(),Iz=Cc(),Pz=ri(),Uw="Array Iterator",Rz=Fw.set,Lz=Fw.getterFor(Uw);Bw.exports=Cz(Array,"Array",function(n,t){Rz(this,{type:Uw,target:Az(n),index:0,kind:t})},function(){var n=Lz(this),t=n.target,e=n.index++;if(!t||e>=t.length)return n.target=null,Th(void 0,!0);switch(n.kind){case"keys":return Th(e,!1);case"values":return Th(t[e],!1)}return Th([e,t[e]],!1)},"values");var Dw=Ow.Arguments=Ow.Array;Pm("keys");Pm("values");Pm("entries");if(!Iz&&Pz&&Dw.name!=="values")try{Tz(Dw,"name",{value:"values"})}catch(n){}});var Bc=X(()=>{"use strict";var Gw=Sn(),qw=zS(),Nz=qS(),Uc=zw(),kw=xs(),Oz=Nc(),Dz=Xr(),Rm=Dz("iterator"),Lm=Uc.values,Vw=function(n,t){if(n){if(n[Rm]!==Lm)try{kw(n,Rm,Lm)}catch(i){n[Rm]=Lm}if(Oz(n,t,!0),qw[t]){for(var e in Uc)if(n[e]!==Uc[e])try{kw(n,e,Uc[e])}catch(i){n[e]=Uc[e]}}}};for(Ch in qw)Vw(Gw[Ch]&&Gw[Ch].prototype,Ch);var Ch;Vw(Nz,"DOMTokenList")});var Ih=X((Qnt,Hw)=>{"use strict";var Fz=vs(),Uz=In();Hw.exports=function(n){if(Fz(n)==="Function")return Uz(n)}});var zc=X((trt,Xw)=>{"use strict";var Ww=Ih(),Bz=_s(),zz=Sc(),Gz=Ww(Ww.bind);Xw.exports=function(n,t){return Bz(n),t===void 0?n:zz?Gz(n,t):function(){return n.apply(t,arguments)}}});var Zw=X((ert,$w)=>{"use strict";var kz=Rc(),qz=ii(),Vz=Eh(),Hz=zc(),Yw=function(n,t,e,i,s,u,c,f){for(var p=s,d=0,g=c?Hz(c,f):!1,y,v;d<i;)d in e&&(y=g?g(e[d],d,t):e[d],u>0&&kz(y)?(v=qz(y),p=Yw(n,t,y,v,p,u-1)-1):(Vz(p+1),n[p]=y),p++),d++;return p};$w.exports=Yw});var Kw=X((nrt,jw)=>{"use strict";var Wz=Xr(),Xz=Wz("toStringTag"),Jw={};Jw[Xz]="z";jw.exports=String(Jw)==="[object z]"});var Zs=X((rrt,Qw)=>{"use strict";var Yz=Kw(),$z=er(),Ph=vs(),Zz=Xr(),Jz=Zz("toStringTag"),jz=Object,Kz=Ph(function(){return arguments}())==="Arguments",Qz=function(n,t){try{return n[t]}catch(e){}};Qw.exports=Yz?Ph:function(n){var t,e,i;return n===void 0?"Undefined":n===null?"Null":typeof(e=Qz(t=jz(n),Jz))=="string"?e:Kz?Ph(t):(i=Ph(t))==="Object"&&$z(t.callee)?"Arguments":i}});var Om=X((irt,iM)=>{"use strict";var tG=In(),eG=An(),tM=er(),nG=Zs(),rG=$s(),iG=om(),eM=function(){},nM=rG("Reflect","construct"),Nm=/^\\s*(?:class|function)\\b/,oG=tG(Nm.exec),sG=!Nm.test(eM),Gc=function(t){if(!tM(t))return!1;try{return nM(eM,[],t),!0}catch(e){return!1}},rM=function(t){if(!tM(t))return!1;switch(nG(t)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return sG||!!oG(Nm,iG(t))}catch(e){return!0}};rM.sham=!0;iM.exports=!nM||eG(function(){var n;return Gc(Gc.call)||!Gc(Object)||!Gc(function(){n=!0})||n})?rM:Gc});var uM=X((ort,aM)=>{"use strict";var oM=Rc(),aG=Om(),uG=xi(),lG=Xr(),cG=lG("species"),sM=Array;aM.exports=function(n){var t;return oM(n)&&(t=n.constructor,aG(t)&&(t===sM||oM(t.prototype))?t=void 0:uG(t)&&(t=t[cG],t===null&&(t=void 0))),t===void 0?sM:t}});var Dm=X((srt,lM)=>{"use strict";var fG=uM();lM.exports=function(n,t){return new(fG(n))(t===0?0:t)}});var cM=X(()=>{"use strict";var hG=sr(),pG=Zw(),dG=Vi(),gG=ii(),mG=Hi(),yG=Dm();hG({target:"Array",proto:!0},{flat:function(){var t=arguments.length?arguments[0]:void 0,e=dG(this),i=gG(e),s=yG(e,0);return s.length=pG(s,e,e,i,0,t===void 0?1:mG(t)),s}})});var fM=X(()=>{"use strict";var vG=wm();vG("flat")});var mM=X((frt,gM)=>{"use strict";var _G=Xr(),pM=_G("iterator"),dM=!1;try{hM=0,Fm={next:function(){return{done:!!hM++}},return:function(){dM=!0}},Fm[pM]=function(){return this},Array.from(Fm,function(){throw 2})}catch(n){}var hM,Fm;gM.exports=function(n,t){try{if(!t&&!dM)return!1}catch(s){return!1}var e=!1;try{var i={};i[pM]=function(){return{next:function(){return{done:e=!0}}}},n(i)}catch(s){}return e}});var Rh=X((hrt,yM)=>{"use strict";yM.exports=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"});var Hu=X((prt,_M)=>{"use strict";var vM=fm(),xG=Wo();_M.exports=function(n,t,e){return e.get&&vM(e.get,t,{getter:!0}),e.set&&vM(e.set,t,{setter:!0}),xG.f(n,t,e)}});var Wi=X((drt,IM)=>{"use strict";var EG=Rh(),Gm=ri(),Ei=Sn(),wM=er(),Oh=xi(),js=oo(),km=Zs(),SG=zu(),wG=xs(),Um=Ha(),MG=Hu(),bG=Mc(),Dh=Lc(),Xu=Vu(),AG=Xr(),TG=sh(),MM=Va(),bM=MM.enforce,CG=MM.get,Lh=Ei.Int8Array,Bm=Lh&&Lh.prototype,xM=Ei.Uint8ClampedArray,EM=xM&&xM.prototype,Xo=Lh&&Dh(Lh),Mo=Bm&&Dh(Bm),IG=Object.prototype,qm=Ei.TypeError,SM=AG("toStringTag"),zm=TG("TYPED_ARRAY_TAG"),Nh="TypedArrayConstructor",Ss=EG&&!!Xu&&km(Ei.opera)!=="Opera",AM=!1,Li,Js,Wu,ws={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},Vm={BigInt64Array:8,BigUint64Array:8},PG=function(t){if(!Oh(t))return!1;var e=km(t);return e==="DataView"||js(ws,e)||js(Vm,e)},TM=function(n){var t=Dh(n);if(Oh(t)){var e=CG(t);return e&&js(e,Nh)?e[Nh]:TM(t)}},CM=function(n){if(!Oh(n))return!1;var t=km(n);return js(ws,t)||js(Vm,t)},RG=function(n){if(CM(n))return n;throw new qm("Target is not a typed array")},LG=function(n){if(wM(n)&&(!Xu||bG(Xo,n)))return n;throw new qm(SG(n)+" is not a typed array constructor")},NG=function(n,t,e,i){if(Gm){if(e)for(var s in ws){var u=Ei[s];if(u&&js(u.prototype,n))try{delete u.prototype[n]}catch(c){try{u.prototype[n]=t}catch(f){}}}(!Mo[n]||e)&&Um(Mo,n,e?t:Ss&&Bm[n]||t,i)}},OG=function(n,t,e){var i,s;if(Gm){if(Xu){if(e){for(i in ws)if(s=Ei[i],s&&js(s,n))try{delete s[n]}catch(u){}}if(!Xo[n]||e)try{return Um(Xo,n,e?t:Ss&&Xo[n]||t)}catch(u){}else return}for(i in ws)s=Ei[i],s&&(!s[n]||e)&&Um(s,n,t)}};for(Li in ws)Js=Ei[Li],Wu=Js&&Js.prototype,Wu?bM(Wu)[Nh]=Js:Ss=!1;for(Li in Vm)Js=Ei[Li],Wu=Js&&Js.prototype,Wu&&(bM(Wu)[Nh]=Js);if((!Ss||!wM(Xo)||Xo===Function.prototype)&&(Xo=function(){throw new qm("Incorrect invocation")},Ss))for(Li in ws)Ei[Li]&&Xu(Ei[Li],Xo);if((!Ss||!Mo||Mo===IG)&&(Mo=Xo.prototype,Ss))for(Li in ws)Ei[Li]&&Xu(Ei[Li].prototype,Mo);Ss&&Dh(EM)!==Mo&&Xu(EM,Mo);if(Gm&&!js(Mo,SM)){AM=!0,MG(Mo,SM,{configurable:!0,get:function(){return Oh(this)?this[zm]:void 0}});for(Li in ws)Ei[Li]&&wG(Ei[Li],zm,Li)}IM.exports={NATIVE_ARRAY_BUFFER_VIEWS:Ss,TYPED_ARRAY_TAG:AM&&zm,aTypedArray:RG,aTypedArrayConstructor:LG,exportTypedArrayMethod:NG,exportTypedArrayStaticMethod:OG,getTypedArrayConstructor:TM,isView:PG,isTypedArray:CM,TypedArray:Xo,TypedArrayPrototype:Mo}});var LM=X((grt,RM)=>{"use strict";var PM=Sn(),Hm=An(),DG=mM(),FG=Wi().NATIVE_ARRAY_BUFFER_VIEWS,UG=PM.ArrayBuffer,Xa=PM.Int8Array;RM.exports=!FG||!Hm(function(){Xa(1)})||!Hm(function(){new Xa(-1)})||!DG(function(n){new Xa,new Xa(null),new Xa(1.5),new Xa(n)},!0)||Hm(function(){return new Xa(new UG(2),1,void 0).length!==1})});var OM=X((mrt,NM)=>{"use strict";var BG=Ha();NM.exports=function(n,t,e){for(var i in t)BG(n,i,t[i],e);return n}});var Wm=X((yrt,DM)=>{"use strict";var zG=Mc(),GG=TypeError;DM.exports=function(n,t){if(zG(t,n))return n;throw new GG("Incorrect invocation")}});var Fh=X((vrt,FM)=>{"use strict";var kG=Hi(),qG=Wa(),VG=RangeError;FM.exports=function(n){if(n===void 0)return 0;var t=kG(n),e=qG(t);if(t!==e)throw new VG("Wrong length or index");return e}});var BM=X((_rt,UM)=>{"use strict";UM.exports=Math.sign||function(t){var e=+t;return e===0||e!==e?e:e<0?-1:1}});var kM=X((xrt,GM)=>{"use strict";var HG=2220446049250313e-31,zM=1/HG;GM.exports=function(n){return n+zM-zM}});var VM=X((Ert,qM)=>{"use strict";var WG=BM(),XG=kM(),YG=Math.abs,$G=2220446049250313e-31;qM.exports=function(n,t,e,i){var s=+n,u=YG(s),c=WG(s);if(u<i)return c*XG(u/i/t)*i*t;var f=(1+t/$G)*u,p=f-(f-u);return p>e||p!==p?c*(1/0):c*p}});var WM=X((Srt,HM)=>{"use strict";var ZG=VM(),JG=11920928955078125e-23,jG=34028234663852886e22,KG=11754943508222875e-54;HM.exports=Math.fround||function(t){return ZG(t,JG,jG,KG)}});var YM=X((wrt,XM)=>{"use strict";var QG=Array,t4=Math.abs,Ms=Math.pow,e4=Math.floor,n4=Math.log,r4=Math.LN2,i4=function(n,t,e){var i=QG(e),s=e*8-t-1,u=(1<<s)-1,c=u>>1,f=t===23?Ms(2,-24)-Ms(2,-77):0,p=n<0||n===0&&1/n<0?1:0,d=0,g,y,v;for(n=t4(n),n!==n||n===1/0?(y=n!==n?1:0,g=u):(g=e4(n4(n)/r4),v=Ms(2,-g),n*v<1&&(g--,v*=2),g+c>=1?n+=f/v:n+=f*Ms(2,1-c),n*v>=2&&(g++,v/=2),g+c>=u?(y=0,g=u):g+c>=1?(y=(n*v-1)*Ms(2,t),g+=c):(y=n*Ms(2,c-1)*Ms(2,t),g=0));t>=8;)i[d++]=y&255,y/=256,t-=8;for(g=g<<t|y,s+=t;s>0;)i[d++]=g&255,g/=256,s-=8;return i[d-1]|=p*128,i},o4=function(n,t){var e=n.length,i=e*8-t-1,s=(1<<i)-1,u=s>>1,c=i-7,f=e-1,p=n[f--],d=p&127,g;for(p>>=7;c>0;)d=d*256+n[f--],c-=8;for(g=d&(1<<-c)-1,d>>=-c,c+=t;c>0;)g=g*256+n[f--],c-=8;if(d===0)d=1-u;else{if(d===s)return g?NaN:p?-1/0:1/0;g+=Ms(2,t),d-=u}return(p?-1:1)*g*Ms(2,d-t)};XM.exports={pack:i4,unpack:o4}});var Xm=X((Mrt,ZM)=>{"use strict";var s4=Vi(),$M=vh(),a4=ii();ZM.exports=function(t){for(var e=s4(this),i=a4(e),s=arguments.length,u=$M(s>1?arguments[1]:void 0,i),c=s>2?arguments[2]:void 0,f=c===void 0?i:$M(c,i);f>u;)e[u++]=t;return e}});var Uh=X((brt,JM)=>{"use strict";var u4=In();JM.exports=u4([].slice)});var Ym=X((Art,KM)=>{"use strict";var l4=er(),c4=xi(),jM=Vu();KM.exports=function(n,t,e){var i,s;return jM&&l4(i=t.constructor)&&i!==e&&c4(s=i.prototype)&&s!==e.prototype&&jM(n,s),n}});var Hh=X((Trt,gb)=>{"use strict";var qh=Sn(),Km=In(),$m=ri(),f4=Rh(),cb=fh(),h4=xs(),p4=Hu(),QM=OM(),Zm=An(),Bh=Wm(),d4=Hi(),g4=Wa(),Gh=Fh(),m4=WM(),fb=YM(),y4=Lc(),tb=Vu(),v4=Xm(),_4=Uh(),x4=Ym(),E4=gm(),hb=Nc(),Qm=Va(),S4=cb.PROPER,eb=cb.CONFIGURABLE,$u="ArrayBuffer",Vh="DataView",Zu="prototype",w4="Wrong length",pb="Wrong index",nb=Qm.getterFor($u),qc=Qm.getterFor(Vh),rb=Qm.set,bo=qh[$u],Xi=bo,Yu=Xi&&Xi[Zu],Yo=qh[Vh],Ya=Yo&&Yo[Zu],ib=Object.prototype,M4=qh.Array,kh=qh.RangeError,b4=Km(v4),A4=Km([].reverse),db=fb.pack,ob=fb.unpack,sb=function(n){return[n&255]},ab=function(n){return[n&255,n>>8&255]},ub=function(n){return[n&255,n>>8&255,n>>16&255,n>>24&255]},lb=function(n){return n[3]<<24|n[2]<<16|n[1]<<8|n[0]},T4=function(n){return db(m4(n),23,4)},C4=function(n){return db(n,52,8)},zh=function(n,t,e){p4(n[Zu],t,{configurable:!0,get:function(){return e(this)[t]}})},Ks=function(n,t,e,i){var s=qc(n),u=Gh(e),c=!!i;if(u+t>s.byteLength)throw new kh(pb);var f=s.bytes,p=u+s.byteOffset,d=_4(f,p,p+t);return c?d:A4(d)},Qs=function(n,t,e,i,s,u){var c=qc(n),f=Gh(e),p=i(+s),d=!!u;if(f+t>c.byteLength)throw new kh(pb);for(var g=c.bytes,y=f+c.byteOffset,v=0;v<t;v++)g[y+v]=p[d?v:t-v-1]};f4?(Jm=S4&&bo.name!==$u,!Zm(function(){bo(1)})||!Zm(function(){new bo(-1)})||Zm(function(){return new bo,new bo(1.5),new bo(NaN),bo.length!==1||Jm&&!eb})?(Xi=function(t){return Bh(this,Yu),x4(new bo(Gh(t)),this,Xi)},Xi[Zu]=Yu,Yu.constructor=Xi,E4(Xi,bo)):Jm&&eb&&h4(bo,"name",$u),tb&&y4(Ya)!==ib&&tb(Ya,ib),kc=new Yo(new Xi(2)),jm=Km(Ya.setInt8),kc.setInt8(0,2147483648),kc.setInt8(1,2147483649),(kc.getInt8(0)||!kc.getInt8(1))&&QM(Ya,{setInt8:function(t,e){jm(this,t,e<<24>>24)},setUint8:function(t,e){jm(this,t,e<<24>>24)}},{unsafe:!0})):(Xi=function(t){Bh(this,Yu);var e=Gh(t);rb(this,{type:$u,bytes:b4(M4(e),0),byteLength:e}),$m||(this.byteLength=e,this.detached=!1)},Yu=Xi[Zu],Yo=function(t,e,i){Bh(this,Ya),Bh(t,Yu);var s=nb(t),u=s.byteLength,c=d4(e);if(c<0||c>u)throw new kh("Wrong offset");if(i=i===void 0?u-c:g4(i),c+i>u)throw new kh(w4);rb(this,{type:Vh,buffer:t,byteLength:i,byteOffset:c,bytes:s.bytes}),$m||(this.buffer=t,this.byteLength=i,this.byteOffset=c)},Ya=Yo[Zu],$m&&(zh(Xi,"byteLength",nb),zh(Yo,"buffer",qc),zh(Yo,"byteLength",qc),zh(Yo,"byteOffset",qc)),QM(Ya,{getInt8:function(t){return Ks(this,1,t)[0]<<24>>24},getUint8:function(t){return Ks(this,1,t)[0]},getInt16:function(t){var e=Ks(this,2,t,arguments.length>1?arguments[1]:!1);return(e[1]<<8|e[0])<<16>>16},getUint16:function(t){var e=Ks(this,2,t,arguments.length>1?arguments[1]:!1);return e[1]<<8|e[0]},getInt32:function(t){return lb(Ks(this,4,t,arguments.length>1?arguments[1]:!1))},getUint32:function(t){return lb(Ks(this,4,t,arguments.length>1?arguments[1]:!1))>>>0},getFloat32:function(t){return ob(Ks(this,4,t,arguments.length>1?arguments[1]:!1),23)},getFloat64:function(t){return ob(Ks(this,8,t,arguments.length>1?arguments[1]:!1),52)},setInt8:function(t,e){Qs(this,1,t,sb,e)},setUint8:function(t,e){Qs(this,1,t,sb,e)},setInt16:function(t,e){Qs(this,2,t,ab,e,arguments.length>2?arguments[2]:!1)},setUint16:function(t,e){Qs(this,2,t,ab,e,arguments.length>2?arguments[2]:!1)},setInt32:function(t,e){Qs(this,4,t,ub,e,arguments.length>2?arguments[2]:!1)},setUint32:function(t,e){Qs(this,4,t,ub,e,arguments.length>2?arguments[2]:!1)},setFloat32:function(t,e){Qs(this,4,t,T4,e,arguments.length>2?arguments[2]:!1)},setFloat64:function(t,e){Qs(this,8,t,C4,e,arguments.length>2?arguments[2]:!1)}}));var Jm,kc,jm;hb(Xi,$u);hb(Yo,Vh);gb.exports={ArrayBuffer:Xi,DataView:Yo}});var yb=X((Crt,mb)=>{"use strict";var I4=xi(),P4=Math.floor;mb.exports=Number.isInteger||function(t){return!I4(t)&&isFinite(t)&&P4(t)===t}});var _b=X((Irt,vb)=>{"use strict";var R4=Hi(),L4=RangeError;vb.exports=function(n){var t=R4(n);if(t<0)throw new L4("The argument can't be less than 0");return t}});var t0=X((Prt,xb)=>{"use strict";var N4=_b(),O4=RangeError;xb.exports=function(n,t){var e=N4(n);if(e%t)throw new O4("Wrong offset");return e}});var Sb=X((Rrt,Eb)=>{"use strict";var D4=Math.round;Eb.exports=function(n){var t=D4(n);return t<0?0:t>255?255:t&255}});var Mb=X((Lrt,wb)=>{"use strict";var F4=Om(),U4=zu(),B4=TypeError;wb.exports=function(n){if(F4(n))return n;throw new B4(U4(n)+" is not a constructor")}});var e0=X((Nrt,Ab)=>{"use strict";var z4=Zs(),bb=Tc(),G4=th(),k4=qu(),q4=Xr(),V4=q4("iterator");Ab.exports=function(n){if(!G4(n))return bb(n,V4)||bb(n,"@@iterator")||k4[z4(n)]}});var Cb=X((Ort,Tb)=>{"use strict";var H4=vr(),W4=_s(),X4=so(),Y4=zu(),$4=e0(),Z4=TypeError;Tb.exports=function(n,t){var e=arguments.length<2?$4(n):t;if(W4(e))return X4(H4(e,n));throw new Z4(Y4(n)+" is not iterable")}});var Pb=X((Drt,Ib)=>{"use strict";var J4=Xr(),j4=qu(),K4=J4("iterator"),Q4=Array.prototype;Ib.exports=function(n){return n!==void 0&&(j4.Array===n||Q4[K4]===n)}});var n0=X((Frt,Rb)=>{"use strict";var tk=Zs();Rb.exports=function(n){var t=tk(n);return t==="BigInt64Array"||t==="BigUint64Array"}});var Wh=X((Urt,Lb)=>{"use strict";var ek=$g(),nk=TypeError;Lb.exports=function(n){var t=ek(n,"number");if(typeof t=="number")throw new nk("Can't convert number to bigint");return BigInt(t)}});var Ob=X((Brt,Nb)=>{"use strict";var rk=zc(),ik=vr(),ok=Mb(),sk=Vi(),ak=ii(),uk=Cb(),lk=e0(),ck=Pb(),fk=n0(),hk=Wi().aTypedArrayConstructor,pk=Wh();Nb.exports=function(t){var e=ok(this),i=sk(t),s=arguments.length,u=s>1?arguments[1]:void 0,c=u!==void 0,f=lk(i),p,d,g,y,v,E,M,A;if(f&&!ck(f))for(M=uk(i,f),A=M.next,i=[];!(E=ik(A,M)).done;)i.push(E.value);for(c&&s>2&&(u=rk(u,arguments[2])),d=ak(i),g=new(hk(e))(d),y=fk(g),p=0;d>p;p++)v=c?u(i[p],p):i[p],g[p]=y?pk(v):+v;return g}});var Ub=X((zrt,Fb)=>{"use strict";var dk=zc(),gk=In(),mk=Qf(),yk=Vi(),vk=ii(),_k=Dm(),Db=gk([].push),ta=function(n){var t=n===1,e=n===2,i=n===3,s=n===4,u=n===6,c=n===7,f=n===5||u;return function(p,d,g,y){for(var v=yk(p),E=mk(v),M=vk(E),A=dk(d,g),_=0,x=y||_k,T=t?x(p,M):e||c?x(p,0):void 0,w,R;M>_;_++)if((f||_ in E)&&(w=E[_],R=A(w,_,v),n))if(t)T[_]=R;else if(R)switch(n){case 3:return!0;case 5:return w;case 6:return _;case 2:Db(T,w)}else switch(n){case 4:return!1;case 7:Db(T,w)}return u?-1:i||s?s:T}};Fb.exports={forEach:ta(0),map:ta(1),filter:ta(2),some:ta(3),every:ta(4),find:ta(5),findIndex:ta(6),filterReject:ta(7)}});var r0=X((Grt,zb)=>{"use strict";var xk=$s(),Ek=Hu(),Sk=Xr(),wk=ri(),Bb=Sk("species");zb.exports=function(n){var t=xk(n);wk&&t&&!t[Bb]&&Ek(t,Bb,{configurable:!0,get:function(){return this}})}});var i0=X((krt,Gb)=>{"use strict";var Mk=ii();Gb.exports=function(n,t,e){for(var i=0,s=arguments.length>2?e:Mk(t),u=new n(s);s>i;)u[i]=t[i++];return u}});var sA=X((qrt,f0)=>{"use strict";var kb=sr(),Kb=Sn(),qb=vr(),bk=ri(),Ak=LM(),Xc=Wi(),Qb=Hh(),Vb=Wm(),Tk=wc(),Vc=xs(),Ck=yb(),Ik=Wa(),Hb=Fh(),o0=t0(),Pk=Sb(),tA=ah(),Hc=oo(),Rk=Zs(),u0=xi(),Lk=Ac(),Nk=ku(),Ok=Mc(),Xh=Vu(),Dk=dm().f,Wb=Ob(),Fk=Ub().forEach,Uk=r0(),Bk=Hu(),eA=Wo(),nA=lh(),Xb=i0(),h0=Va(),zk=Ym(),l0=h0.get,Gk=h0.set,kk=h0.enforce,rA=eA.f,qk=nA.f,s0=Kb.RangeError,iA=Qb.ArrayBuffer,Vk=iA.prototype,Hk=Qb.DataView,Yh=Xc.NATIVE_ARRAY_BUFFER_VIEWS,Yb=Xc.TYPED_ARRAY_TAG,$b=Xc.TypedArray,Wc=Xc.TypedArrayPrototype,c0=Xc.isTypedArray,$h="BYTES_PER_ELEMENT",a0="Wrong length",Zh=function(n,t){Bk(n,t,{configurable:!0,get:function(){return l0(this)[t]}})},Zb=function(n){var t;return Ok(Vk,n)||(t=Rk(n))==="ArrayBuffer"||t==="SharedArrayBuffer"},oA=function(n,t){return c0(n)&&!Lk(t)&&t in n&&Ck(+t)&&t>=0},Jb=function(t,e){return e=tA(e),oA(t,e)?Tk(2,t[e]):qk(t,e)},jb=function(t,e,i){return e=tA(e),oA(t,e)&&u0(i)&&Hc(i,"value")&&!Hc(i,"get")&&!Hc(i,"set")&&!i.configurable&&(!Hc(i,"writable")||i.writable)&&(!Hc(i,"enumerable")||i.enumerable)?(t[e]=i.value,t):rA(t,e,i)};bk?(Yh||(nA.f=Jb,eA.f=jb,Zh(Wc,"buffer"),Zh(Wc,"byteOffset"),Zh(Wc,"byteLength"),Zh(Wc,"length")),kb({target:"Object",stat:!0,forced:!Yh},{getOwnPropertyDescriptor:Jb,defineProperty:jb}),f0.exports=function(n,t,e){var i=n.match(/\\d+/)[0]/8,s=n+(e?"Clamped":"")+"Array",u="get"+n,c="set"+n,f=Kb[s],p=f,d=p&&p.prototype,g={},y=function(A,_){var x=l0(A);return x.view[u](_*i+x.byteOffset,!0)},v=function(A,_,x){var T=l0(A);T.view[c](_*i+T.byteOffset,e?Pk(x):x,!0)},E=function(A,_){rA(A,_,{get:function(){return y(this,_)},set:function(x){return v(this,_,x)},enumerable:!0})};Yh?Ak&&(p=t(function(A,_,x,T){return Vb(A,d),zk(function(){return u0(_)?Zb(_)?T!==void 0?new f(_,o0(x,i),T):x!==void 0?new f(_,o0(x,i)):new f(_):c0(_)?Xb(p,_):qb(Wb,p,_):new f(Hb(_))}(),A,p)}),Xh&&Xh(p,$b),Fk(Dk(f),function(A){A in p||Vc(p,A,f[A])}),p.prototype=d):(p=t(function(A,_,x,T){Vb(A,d);var w=0,R=0,B,U,D;if(!u0(_))D=Hb(_),U=D*i,B=new iA(U);else if(Zb(_)){B=_,R=o0(x,i);var P=_.byteLength;if(T===void 0){if(P%i)throw new s0(a0);if(U=P-R,U<0)throw new s0(a0)}else if(U=Ik(T)*i,U+R>P)throw new s0(a0);D=U/i}else return c0(_)?Xb(p,_):qb(Wb,p,_);for(Gk(A,{buffer:B,byteOffset:R,byteLength:U,length:D,view:new Hk(B)});w<D;)E(A,w++)}),Xh&&Xh(p,$b),d=p.prototype=Nk(Wc)),d.constructor!==p&&Vc(d,"constructor",p),kk(d).TypedArrayConstructor=p,Yb&&Vc(d,Yb,s);var M=p!==f;g[s]=p,kb({global:!0,constructor:!0,forced:M,sham:!Yh},g),$h in p||Vc(p,$h,i),$h in d||Vc(d,$h,i),Uk(s)}):f0.exports=function(){}});var p0=X(()=>{"use strict";var Wk=sA();Wk("Float32",function(n){return function(e,i,s){return n(this,e,i,s)}})});var d0=X(()=>{"use strict";var aA=Wi(),Xk=ii(),Yk=Hi(),$k=aA.aTypedArray,Zk=aA.exportTypedArrayMethod;Zk("at",function(t){var e=$k(this),i=Xk(e),s=Yk(t),u=s>=0?s:i+s;return u<0||u>=i?void 0:e[u]})});var g0=X(()=>{"use strict";var uA=Wi(),Jk=Xm(),jk=Wh(),Kk=Zs(),Qk=vr(),tq=In(),eq=An(),nq=uA.aTypedArray,rq=uA.exportTypedArrayMethod,iq=tq("".slice),oq=eq(function(){var n=0;return new Int8Array(2).fill({valueOf:function(){return n++}}),n!==1});rq("fill",function(t){var e=arguments.length;nq(this);var i=iq(Kk(this),0,3)==="Big"?jk(t):+t;return Qk(Jk,this,i,e>1?arguments[1]:void 0,e>2?arguments[2]:void 0)},oq)});var m0=X((Zrt,cA)=>{"use strict";var sq=zc(),aq=Qf(),uq=Vi(),lq=ii(),lA=function(n){var t=n===1;return function(e,i,s){for(var u=uq(e),c=aq(u),f=lq(c),p=sq(i,s),d,g;f-- >0;)if(d=c[f],g=p(d,f,u),g)switch(n){case 0:return d;case 1:return f}return t?-1:void 0}};cA.exports={findLast:lA(0),findLastIndex:lA(1)}});var y0=X(()=>{"use strict";var fA=Wi(),cq=m0().findLast,fq=fA.aTypedArray,hq=fA.exportTypedArrayMethod;hq("findLast",function(t){return cq(fq(this),t,arguments.length>1?arguments[1]:void 0)})});var v0=X(()=>{"use strict";var hA=Wi(),pq=m0().findLastIndex,dq=hA.aTypedArray,gq=hA.exportTypedArrayMethod;gq("findLastIndex",function(t){return pq(dq(this),t,arguments.length>1?arguments[1]:void 0)})});var S0=X(()=>{"use strict";var dA=Sn(),gA=vr(),E0=Wi(),mq=ii(),yq=t0(),vq=Vi(),mA=An(),_q=dA.RangeError,_0=dA.Int8Array,pA=_0&&_0.prototype,yA=pA&&pA.set,xq=E0.aTypedArray,Eq=E0.exportTypedArrayMethod,x0=!mA(function(){var n=new Uint8ClampedArray(2);return gA(yA,n,{length:1,0:3},1),n[1]!==3}),Sq=x0&&E0.NATIVE_ARRAY_BUFFER_VIEWS&&mA(function(){var n=new _0(2);return n.set(1),n.set("2",1),n[0]!==0||n[1]!==2});Eq("set",function(t){xq(this);var e=yq(arguments.length>1?arguments[1]:void 0,1),i=vq(t);if(x0)return gA(yA,this,i,e);var s=this.length,u=mq(i),c=0;if(u+e>s)throw new _q("Wrong length");for(;c<u;)this[e+c]=i[c++]},!x0||Sq)});var M0=X((nit,_A)=>{"use strict";var vA=Uh(),wq=Math.floor,w0=function(n,t){var e=n.length;if(e<8)for(var i=1,s,u;i<e;){for(u=i,s=n[i];u&&t(n[u-1],s)>0;)n[u]=n[--u];u!==i++&&(n[u]=s)}else for(var c=wq(e/2),f=w0(vA(n,0,c),t),p=w0(vA(n,c),t),d=f.length,g=p.length,y=0,v=0;y<d||v<g;)n[y+v]=y<d&&v<g?t(f[y],p[v])<=0?f[y++]:p[v++]:y<d?f[y++]:p[v++];return n};_A.exports=w0});var b0=X((rit,EA)=>{"use strict";var Mq=Bu(),xA=Mq.match(/firefox\\/(\\d+)/i);EA.exports=!!xA&&+xA[1]});var A0=X((iit,SA)=>{"use strict";var bq=Bu();SA.exports=/MSIE|Trident/.test(bq)});var T0=X((oit,MA)=>{"use strict";var Aq=Bu(),wA=Aq.match(/AppleWebKit\\/(\\d+)\\./);MA.exports=!!wA&&+wA[1]});var I0=X(()=>{"use strict";var Tq=Sn(),Cq=Ih(),C0=An(),Iq=_s(),Pq=M0(),IA=Wi(),bA=b0(),Rq=A0(),AA=bc(),TA=T0(),Lq=IA.aTypedArray,Nq=IA.exportTypedArrayMethod,Yc=Tq.Uint16Array,Ju=Yc&&Cq(Yc.prototype.sort),Oq=!!Ju&&!(C0(function(){Ju(new Yc(2),null)})&&C0(function(){Ju(new Yc(2),{})})),CA=!!Ju&&!C0(function(){if(AA)return AA<74;if(bA)return bA<67;if(Rq)return!0;if(TA)return TA<602;var n=new Yc(516),t=Array(516),e,i;for(e=0;e<516;e++)i=e%4,n[e]=515-e,t[e]=e-2*i+3;for(Ju(n,function(s,u){return(s/4|0)-(u/4|0)}),e=0;e<516;e++)if(n[e]!==t[e])return!0}),Dq=function(n){return function(t,e){return n!==void 0?+n(t,e)||0:e!==e?-1:t!==t?1:t===0&&e===0?1/t>0&&1/e<0?1:-1:t>e}};Nq("sort",function(t){return t!==void 0&&Iq(t),CA?Ju(this,t):Pq(Lq(this),Dq(t))},!CA||Oq)});var RA=X((uit,PA)=>{"use strict";var Fq=ii();PA.exports=function(n,t){for(var e=Fq(n),i=new t(e),s=0;s<e;s++)i[s]=n[e-s-1];return i}});var R0=X(()=>{"use strict";var Uq=RA(),P0=Wi(),Bq=P0.aTypedArray,zq=P0.exportTypedArrayMethod,Gq=P0.getTypedArrayConstructor;zq("toReversed",function(){return Uq(Bq(this),Gq(this))})});var L0=X(()=>{"use strict";var Jh=Wi(),kq=In(),qq=_s(),Vq=i0(),Hq=Jh.aTypedArray,Wq=Jh.getTypedArrayConstructor,Xq=Jh.exportTypedArrayMethod,Yq=kq(Jh.TypedArrayPrototype.sort);Xq("toSorted",function(t){t!==void 0&&qq(t);var e=Hq(this),i=Vq(Wq(e),e);return Yq(i,t)})});var NA=X((pit,LA)=>{"use strict";var $q=ii(),Zq=Hi(),Jq=RangeError;LA.exports=function(n,t,e,i){var s=$q(n),u=Zq(e),c=u<0?s+u:u;if(c>=s||c<0)throw new Jq("Incorrect index");for(var f=new t(s),p=0;p<s;p++)f[p]=p===c?i:n[p];return f}});var O0=X(()=>{"use strict";var jq=NA(),N0=Wi(),Kq=n0(),Qq=Hi(),t5=Wh(),e5=N0.aTypedArray,n5=N0.getTypedArrayConstructor,r5=N0.exportTypedArrayMethod,i5=!!function(){try{new Int8Array(1).with(2,{valueOf:function(){throw 8}})}catch(n){return n===8}}();r5("with",function(n,t){var e=e5(this),i=Qq(n),s=Kq(e)?t5(t):+t;return jq(e,n5(e),i,s)},!i5)});var F0=X(()=>{"use strict";var o5=sr(),s5=Sn(),a5=Hh(),u5=r0(),D0="ArrayBuffer",OA=a5[D0],l5=s5[D0];o5({global:!0,constructor:!0,forced:l5!==OA},{ArrayBuffer:OA});u5(D0)});var G0=X(()=>{"use strict";var c5=sr(),B0=Ih(),f5=An(),BA=Hh(),DA=so(),FA=vh(),h5=Wa(),z0=BA.ArrayBuffer,U0=BA.DataView,zA=U0.prototype,UA=B0(z0.prototype.slice),p5=B0(zA.getUint8),d5=B0(zA.setUint8),g5=f5(function(){return!new z0(2).slice(1,void 0).byteLength});c5({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:g5},{slice:function(t,e){if(UA&&e===void 0)return UA(DA(this),t);for(var i=DA(this).byteLength,s=FA(t,i),u=FA(e===void 0?i:e,i),c=new z0(h5(u-s)),f=new U0(this),p=new U0(c),d=0;s<u;)d5(p,d++,p5(f,s++));return c}})});var k0=X((xit,qA)=>{"use strict";var kA=Sn(),m5=Oc(),y5=vs(),GA=kA.ArrayBuffer,v5=kA.TypeError;qA.exports=GA&&m5(GA.prototype,"byteLength","get")||function(n){if(y5(n)!=="ArrayBuffer")throw new v5("ArrayBuffer expected");return n.byteLength}});var q0=X((Eit,VA)=>{"use strict";var _5=Sn(),x5=Rh(),E5=k0(),S5=_5.DataView;VA.exports=function(n){if(!x5||E5(n)!==0)return!1;try{return new S5(n),!1}catch(t){return!0}}});var V0=X(()=>{"use strict";var w5=ri(),M5=Hu(),b5=q0(),HA=ArrayBuffer.prototype;w5&&!("detached"in HA)&&M5(HA,"detached",{configurable:!0,get:function(){return b5(this)}})});var XA=X((Mit,WA)=>{"use strict";var A5=q0(),T5=TypeError;WA.exports=function(n){if(A5(n))throw new T5("ArrayBuffer is detached");return n}});var H0=X((bit,YA)=>{"use strict";var $c=Sn(),C5=Bu(),I5=vs(),jh=function(n){return C5.slice(0,n.length)===n};YA.exports=function(){return jh("Bun/")?"BUN":jh("Cloudflare-Workers")?"CLOUDFLARE":jh("Deno/")?"DENO":jh("Node.js/")?"NODE":$c.Bun&&typeof Bun.version=="string"?"BUN":$c.Deno&&typeof Deno.version=="object"?"DENO":I5($c.process)==="process"?"NODE":$c.window&&$c.document?"BROWSER":"REST"}()});var ZA=X((Ait,$A)=>{"use strict";var P5=H0();$A.exports=P5==="NODE"});var jA=X((Tit,JA)=>{"use strict";var R5=Sn(),L5=ZA();JA.exports=function(n){if(L5){try{return R5.process.getBuiltinModule(n)}catch(t){}try{return Function('return require("'+n+'")')()}catch(t){}}}});var Y0=X((Cit,QA)=>{"use strict";var N5=Sn(),O5=An(),W0=bc(),X0=H0(),KA=N5.structuredClone;QA.exports=!!KA&&!O5(function(){if(X0==="DENO"&&W0>92||X0==="NODE"&&W0>94||X0==="BROWSER"&&W0>97)return!1;var n=new ArrayBuffer(8),t=KA(n,{transfer:[n]});return n.byteLength!==0||t.byteLength!==8})});var rT=X((Iit,nT)=>{"use strict";var j0=Sn(),D5=jA(),F5=Y0(),U5=j0.structuredClone,tT=j0.ArrayBuffer,Kh=j0.MessageChannel,J0=!1,$0,eT,Qh,Z0;if(F5)J0=function(n){U5(n,{transfer:[n]})};else if(tT)try{Kh||($0=D5("worker_threads"),$0&&(Kh=$0.MessageChannel)),Kh&&(eT=new Kh,Qh=new tT(2),Z0=function(n){eT.port1.postMessage(null,[n])},Qh.byteLength===2&&(Z0(Qh),Qh.byteLength===0&&(J0=Z0)))}catch(n){}nT.exports=J0});var ry=X((Pit,cT)=>{"use strict";var ty=Sn(),ey=In(),aT=Oc(),B5=Fh(),z5=XA(),G5=k0(),iT=rT(),K0=Y0(),k5=ty.structuredClone,uT=ty.ArrayBuffer,Q0=ty.DataView,q5=Math.min,ny=uT.prototype,lT=Q0.prototype,V5=ey(ny.slice),oT=aT(ny,"resizable","get"),sT=aT(ny,"maxByteLength","get"),H5=ey(lT.getInt8),W5=ey(lT.setInt8);cT.exports=(K0||iT)&&function(n,t,e){var i=G5(n),s=t===void 0?i:B5(t),u=!oT||!oT(n),c;if(z5(n),K0&&(n=k5(n,{transfer:[n]}),i===s&&(e||u)))return n;if(i>=s&&(!e||u))c=V5(n,0,s);else{var f=e&&!u&&sT?{maxByteLength:sT(n)}:void 0;c=new uT(s,f);for(var p=new Q0(n),d=new Q0(c),g=q5(s,i),y=0;y<g;y++)W5(d,y,H5(p,y))}return K0||iT(n),c}});var iy=X(()=>{"use strict";var X5=sr(),fT=ry();fT&&X5({target:"ArrayBuffer",proto:!0},{transfer:function(){return fT(this,arguments.length?arguments[0]:void 0,!0)}})});var oy=X(()=>{"use strict";var Y5=sr(),hT=ry();hT&&Y5({target:"ArrayBuffer",proto:!0},{transferToFixedLength:function(){return hT(this,arguments.length?arguments[0]:void 0,!1)}})});var Ao=X((Dit,pT)=>{"use strict";var sy=In(),tp=Set.prototype;pT.exports={Set,add:sy(tp.add),has:sy(tp.has),remove:sy(tp.delete),proto:tp}});var ea=X((Fit,dT)=>{"use strict";var $5=Ao().has;dT.exports=function(n){return $5(n),n}});var na=X((Uit,gT)=>{"use strict";var Z5=vr();gT.exports=function(n,t,e){for(var i=e?n:n.iterator,s=n.next,u,c;!(u=Z5(s,i)).done;)if(c=t(u.value),c!==void 0)return c}});var ju=X((Bit,xT)=>{"use strict";var mT=In(),J5=na(),yT=Ao(),j5=yT.Set,vT=yT.proto,K5=mT(vT.forEach),_T=mT(vT.keys),Q5=_T(new j5).next;xT.exports=function(n,t,e){return e?J5({iterator:_T(n),next:Q5},t):K5(n,t)}});var ep=X((zit,ST)=>{"use strict";var ET=Ao(),tV=ju(),eV=ET.Set,nV=ET.add;ST.exports=function(n){var t=new eV;return tV(n,function(e){nV(t,e)}),t}});var Ku=X((Git,wT)=>{"use strict";var rV=Oc(),iV=Ao();wT.exports=rV(iV.proto,"size","get")||function(n){return n.size}});var bT=X((kit,MT)=>{"use strict";MT.exports=function(n){return{iterator:n,next:n.next,done:!1}}});var ra=X((qit,RT)=>{"use strict";var AT=_s(),IT=so(),TT=vr(),oV=Hi(),sV=bT(),CT="Invalid size",aV=RangeError,uV=TypeError,lV=Math.max,PT=function(n,t){this.set=n,this.size=lV(t,0),this.has=AT(n.has),this.keys=AT(n.keys)};PT.prototype={getIterator:function(){return sV(IT(TT(this.keys,this.set)))},includes:function(n){return TT(this.has,this.set,n)}};RT.exports=function(n){IT(n);var t=+n.size;if(t!==t)throw new uV(CT);var e=oV(t);if(e<0)throw new aV(CT);return new PT(n,e)}});var DT=X((Vit,OT)=>{"use strict";var cV=ea(),NT=Ao(),fV=ep(),hV=Ku(),pV=ra(),dV=ju(),gV=na(),mV=NT.has,LT=NT.remove;OT.exports=function(t){var e=cV(this),i=pV(t),s=fV(e);return hV(e)<=i.size?dV(e,function(u){i.includes(u)&<(s,u)}):gV(i.getIterator(),function(u){mV(e,u)&<(s,u)}),s}});var ia=X((Hit,BT)=>{"use strict";var yV=$s(),FT=function(n){return{size:n,has:function(){return!1},keys:function(){return{next:function(){return{done:!0}}}}}},UT=function(n){return{size:n,has:function(){return!0},keys:function(){throw new Error("e")}}};BT.exports=function(n,t){var e=yV("Set");try{new e()[n](FT(0));try{return new e()[n](FT(-1)),!1}catch(s){if(!t)return!0;try{return new e()[n](UT(-1/0)),!1}catch(u){var i=new e;return i.add(1),i.add(2),t(i[n](UT(1/0)))}}}catch(s){return!1}}});var zT=X(()=>{"use strict";var vV=sr(),_V=DT(),xV=ia(),EV=!xV("difference",function(n){return n.size===0});vV({target:"Set",proto:!0,real:!0,forced:EV},{difference:_V})});var qT=X((Yit,kT)=>{"use strict";var SV=ea(),ay=Ao(),wV=Ku(),MV=ra(),bV=ju(),AV=na(),TV=ay.Set,GT=ay.add,CV=ay.has;kT.exports=function(t){var e=SV(this),i=MV(t),s=new TV;return wV(e)>i.size?AV(i.getIterator(),function(u){CV(e,u)&>(s,u)}):bV(e,function(u){i.includes(u)&>(s,u)}),s}});var VT=X(()=>{"use strict";var IV=sr(),PV=An(),RV=qT(),LV=ia(),NV=!LV("intersection",function(n){return n.size===2&&n.has(1)&&n.has(2)})||PV(function(){return String(Array.from(new Set([1,2,3]).intersection(new Set([3,2]))))!=="3,2"});IV({target:"Set",proto:!0,real:!0,forced:NV},{intersection:RV})});var uy=X((Jit,WT)=>{"use strict";var OV=vr(),HT=so(),DV=Tc();WT.exports=function(n,t,e){var i,s;HT(n);try{if(i=DV(n,"return"),!i){if(t==="throw")throw e;return e}i=OV(i,n)}catch(u){s=!0,i=u}if(t==="throw")throw e;if(s)throw i;return HT(i),e}});var YT=X((jit,XT)=>{"use strict";var FV=ea(),UV=Ao().has,BV=Ku(),zV=ra(),GV=ju(),kV=na(),qV=uy();XT.exports=function(t){var e=FV(this),i=zV(t);if(BV(e)<=i.size)return GV(e,function(u){if(i.includes(u))return!1},!0)!==!1;var s=i.getIterator();return kV(s,function(u){if(UV(e,u))return qV(s,"normal",!1)})!==!1}});var $T=X(()=>{"use strict";var VV=sr(),HV=YT(),WV=ia(),XV=!WV("isDisjointFrom",function(n){return!n});VV({target:"Set",proto:!0,real:!0,forced:XV},{isDisjointFrom:HV})});var JT=X((tot,ZT)=>{"use strict";var YV=ea(),$V=Ku(),ZV=ju(),JV=ra();ZT.exports=function(t){var e=YV(this),i=JV(t);return $V(e)>i.size?!1:ZV(e,function(s){if(!i.includes(s))return!1},!0)!==!1}});var jT=X(()=>{"use strict";var jV=sr(),KV=JT(),QV=ia(),tH=!QV("isSubsetOf",function(n){return n});jV({target:"Set",proto:!0,real:!0,forced:tH},{isSubsetOf:KV})});var QT=X((rot,KT)=>{"use strict";var eH=ea(),nH=Ao().has,rH=Ku(),iH=ra(),oH=na(),sH=uy();KT.exports=function(t){var e=eH(this),i=iH(t);if(rH(e)<i.size)return!1;var s=i.getIterator();return oH(s,function(u){if(!nH(e,u))return sH(s,"normal",!1)})!==!1}});var tC=X(()=>{"use strict";var aH=sr(),uH=QT(),lH=ia(),cH=!lH("isSupersetOf",function(n){return!n});aH({target:"Set",proto:!0,real:!0,forced:cH},{isSupersetOf:uH})});var nC=X((sot,eC)=>{"use strict";var fH=ea(),ly=Ao(),hH=ep(),pH=ra(),dH=na(),gH=ly.add,mH=ly.has,yH=ly.remove;eC.exports=function(t){var e=fH(this),i=pH(t).getIterator(),s=hH(e);return dH(i,function(u){mH(e,u)?yH(s,u):gH(s,u)}),s}});var rC=X(()=>{"use strict";var vH=sr(),_H=nC(),xH=ia();vH({target:"Set",proto:!0,real:!0,forced:!xH("symmetricDifference")},{symmetricDifference:_H})});var oC=X((lot,iC)=>{"use strict";var EH=ea(),SH=Ao().add,wH=ep(),MH=ra(),bH=na();iC.exports=function(t){var e=EH(this),i=MH(t).getIterator(),s=wH(e);return bH(i,function(u){SH(s,u)}),s}});var sC=X(()=>{"use strict";var AH=sr(),TH=oC(),CH=ia();AH({target:"Set",proto:!0,real:!0,forced:!CH("union")},{union:TH})});var cy=X((hot,uC)=>{"use strict";var aC=zu(),IH=TypeError;uC.exports=function(n,t){if(!delete n[t])throw new IH("Cannot delete property "+aC(t)+" of "+aC(n))}});var lC=X(()=>{"use strict";var PH=sr(),RH=Vi(),LH=ii(),NH=mm(),OH=cy(),DH=Eh(),FH=[].unshift(0)!==1,UH=function(){try{Object.defineProperty([],"length",{writable:!1}).unshift()}catch(n){return n instanceof TypeError}},BH=FH||!UH();PH({target:"Array",proto:!0,arity:1,forced:BH},{unshift:function(t){var e=RH(this),i=LH(e),s=arguments.length;if(s){DH(i+s);for(var u=i;u--;){var c=u+s;u in e?e[c]=e[u]:OH(e,c)}for(var f=0;f<s;f++)e[f]=arguments[f]}return NH(e,i+s)}})});var Ll=X((Cot,pP)=>{"use strict";var xY=Zs(),EY=String;pP.exports=function(n){if(xY(n)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return EY(n)}});var gP=X((Iot,dP)=>{"use strict";var SY=so();dP.exports=function(){var n=SY(this),t="";return n.hasIndices&&(t+="d"),n.global&&(t+="g"),n.ignoreCase&&(t+="i"),n.multiline&&(t+="m"),n.dotAll&&(t+="s"),n.unicode&&(t+="u"),n.unicodeSets&&(t+="v"),n.sticky&&(t+="y"),t}});var yP=X((Pot,mP)=>{"use strict";var Kv=An(),wY=Sn(),Qv=wY.RegExp,t_=Kv(function(){var n=Qv("a","y");return n.lastIndex=2,n.exec("abcd")!==null}),MY=t_||Kv(function(){return!Qv("a","y").sticky}),bY=t_||Kv(function(){var n=Qv("^r","gy");return n.lastIndex=2,n.exec("str")!==null});mP.exports={BROKEN_CARET:bY,MISSED_STICKY:MY,UNSUPPORTED_Y:t_}});var _P=X((Rot,vP)=>{"use strict";var AY=An(),TY=Sn(),CY=TY.RegExp;vP.exports=AY(function(){var n=CY(".","s");return!(n.dotAll&&n.test(\`
|
|
8009
8009
|
\`)&&n.flags==="s")})});var EP=X((Lot,xP)=>{"use strict";var IY=An(),PY=Sn(),RY=PY.RegExp;xP.exports=IY(function(){var n=RY("(?<a>b)","g");return n.exec("b").groups.a!=="b"||"b".replace(n,"$<a>c")!=="bc"})});var dd=X((Not,wP)=>{"use strict";var Nl=vr(),pd=In(),LY=Ll(),NY=gP(),OY=yP(),DY=oh(),FY=ku(),UY=Va().get,BY=_P(),zY=EP(),GY=DY("native-string-replace",String.prototype.replace),hd=RegExp.prototype.exec,n_=hd,kY=pd("".charAt),qY=pd("".indexOf),VY=pd("".replace),e_=pd("".slice),r_=function(){var n=/a/,t=/b*/g;return Nl(hd,n,"a"),Nl(hd,t,"a"),n.lastIndex!==0||t.lastIndex!==0}(),SP=OY.BROKEN_CARET,i_=/()??/.exec("")[1]!==void 0,HY=r_||i_||SP||BY||zY;HY&&(n_=function(t){var e=this,i=UY(e),s=LY(t),u=i.raw,c,f,p,d,g,y,v;if(u)return u.lastIndex=e.lastIndex,c=Nl(n_,u,s),e.lastIndex=u.lastIndex,c;var E=i.groups,M=SP&&e.sticky,A=Nl(NY,e),_=e.source,x=0,T=s;if(M&&(A=VY(A,"y",""),qY(A,"g")===-1&&(A+="g"),T=e_(s,e.lastIndex),e.lastIndex>0&&(!e.multiline||e.multiline&&kY(s,e.lastIndex-1)!==\`
|
|
8010
8010
|
\`)&&(_="(?: "+_+")",T=" "+T,x++),f=new RegExp("^(?:"+_+")",A)),i_&&(f=new RegExp("^"+_+"$(?!\\\\s)",A)),r_&&(p=e.lastIndex),d=Nl(hd,M?f:e,T),M?d?(d.input=e_(d.input,x),d[0]=e_(d[0],x),d.index=e.lastIndex,e.lastIndex+=d[0].length):e.lastIndex=0:r_&&d&&(e.lastIndex=e.global?d.index+d[0].length:p),i_&&d&&d.length>1&&Nl(GY,d[0],f,function(){for(g=1;g<arguments.length-2;g++)arguments[g]===void 0&&(d[g]=void 0)}),d&&E)for(d.groups=y=FY(null),g=0;g<E.length;g++)v=E[g],y[v[0]]=d[v[1]];return d});wP.exports=n_});var o_=X(()=>{"use strict";var WY=sr(),MP=dd();WY({target:"RegExp",proto:!0,forced:/./.exec!==MP},{exec:MP})});var gd=X((qot,TP)=>{"use strict";var AP=Object.getOwnPropertySymbols,ZY=Object.prototype.hasOwnProperty,JY=Object.prototype.propertyIsEnumerable;function jY(n){if(n==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(n)}function KY(){try{if(!Object.assign)return!1;var n=new String("abc");if(n[5]="de",Object.getOwnPropertyNames(n)[0]==="5")return!1;for(var t={},e=0;e<10;e++)t["_"+String.fromCharCode(e)]=e;var i=Object.getOwnPropertyNames(t).map(function(u){return t[u]});if(i.join("")!=="0123456789")return!1;var s={};return"abcdefghijklmnopqrst".split("").forEach(function(u){s[u]=u}),Object.keys(Object.assign({},s)).join("")==="abcdefghijklmnopqrst"}catch(u){return!1}}TP.exports=KY()?Object.assign:function(n,t){for(var e,i=jY(n),s,u=1;u<arguments.length;u++){e=Object(arguments[u]);for(var c in e)ZY.call(e,c)&&(i[c]=e[c]);if(AP){s=AP(e);for(var f=0;f<s.length;f++)JY.call(e,s[f])&&(i[s[f]]=e[s[f]])}}return i}});var f_=X((l_,c_)=>{(function(n,t){typeof l_=="object"&&typeof c_!="undefined"?c_.exports=t():typeof define=="function"&&define.amd?define(t):(n=n||self).RBush=t()})(l_,function(){"use strict";function n(_,x,T,w,R){(function B(U,D,P,ct,L){for(;ct>P;){if(ct-P>600){var W=ct-P+1,V=D-P+1,Mt=Math.log(W),$=.5*Math.exp(2*Mt/3),gt=.5*Math.sqrt(Mt*$*(W-$)/W)*(V-W/2<0?-1:1),ft=Math.max(P,Math.floor(D-V*$/W+gt)),vt=Math.min(ct,Math.floor(D+(W-V)*$/W+gt));B(U,D,ft,vt,L)}var it=U[D],lt=P,H=ct;for(t(U,P,D),L(U[ct],it)>0&&t(U,P,ct);lt<H;){for(t(U,lt,H),lt++,H--;L(U[lt],it)<0;)lt++;for(;L(U[H],it)>0;)H--}L(U[P],it)===0?t(U,P,H):t(U,++H,ct),H<=D&&(P=H+1),D<=H&&(ct=H-1)}})(_,x,T||0,w||_.length-1,R||e)}function t(_,x,T){var w=_[x];_[x]=_[T],_[T]=w}function e(_,x){return _<x?-1:_>x?1:0}var i=function(_){_===void 0&&(_=9),this._maxEntries=Math.max(4,_),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),this.clear()};function s(_,x,T){if(!T)return x.indexOf(_);for(var w=0;w<x.length;w++)if(T(_,x[w]))return w;return-1}function u(_,x){c(_,0,_.children.length,x,_)}function c(_,x,T,w,R){R||(R=M(null)),R.minX=1/0,R.minY=1/0,R.maxX=-1/0,R.maxY=-1/0;for(var B=x;B<T;B++){var U=_.children[B];f(R,_.leaf?w(U):U)}return R}function f(_,x){return _.minX=Math.min(_.minX,x.minX),_.minY=Math.min(_.minY,x.minY),_.maxX=Math.max(_.maxX,x.maxX),_.maxY=Math.max(_.maxY,x.maxY),_}function p(_,x){return _.minX-x.minX}function d(_,x){return _.minY-x.minY}function g(_){return(_.maxX-_.minX)*(_.maxY-_.minY)}function y(_){return _.maxX-_.minX+(_.maxY-_.minY)}function v(_,x){return _.minX<=x.minX&&_.minY<=x.minY&&x.maxX<=_.maxX&&x.maxY<=_.maxY}function E(_,x){return x.minX<=_.maxX&&x.minY<=_.maxY&&x.maxX>=_.minX&&x.maxY>=_.minY}function M(_){return{children:_,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function A(_,x,T,w,R){for(var B=[x,T];B.length;)if(!((T=B.pop())-(x=B.pop())<=w)){var U=x+Math.ceil((T-x)/w/2)*w;n(_,U,x,T,R),B.push(x,U,U,T)}}return i.prototype.all=function(){return this._all(this.data,[])},i.prototype.search=function(_){var x=this.data,T=[];if(!E(_,x))return T;for(var w=this.toBBox,R=[];x;){for(var B=0;B<x.children.length;B++){var U=x.children[B],D=x.leaf?w(U):U;E(_,D)&&(x.leaf?T.push(U):v(_,D)?this._all(U,T):R.push(U))}x=R.pop()}return T},i.prototype.collides=function(_){var x=this.data;if(!E(_,x))return!1;for(var T=[];x;){for(var w=0;w<x.children.length;w++){var R=x.children[w],B=x.leaf?this.toBBox(R):R;if(E(_,B)){if(x.leaf||v(_,B))return!0;T.push(R)}}x=T.pop()}return!1},i.prototype.load=function(_){if(!_||!_.length)return this;if(_.length<this._minEntries){for(var x=0;x<_.length;x++)this.insert(_[x]);return this}var T=this._build(_.slice(),0,_.length-1,0);if(this.data.children.length)if(this.data.height===T.height)this._splitRoot(this.data,T);else{if(this.data.height<T.height){var w=this.data;this.data=T,T=w}this._insert(T,this.data.height-T.height-1,!0)}else this.data=T;return this},i.prototype.insert=function(_){return _&&this._insert(_,this.data.height-1),this},i.prototype.clear=function(){return this.data=M([]),this},i.prototype.remove=function(_,x){if(!_)return this;for(var T,w,R,B=this.data,U=this.toBBox(_),D=[],P=[];B||D.length;){if(B||(B=D.pop(),w=D[D.length-1],T=P.pop(),R=!0),B.leaf){var ct=s(_,B.children,x);if(ct!==-1)return B.children.splice(ct,1),D.push(B),this._condense(D),this}R||B.leaf||!v(B,U)?w?(T++,B=w.children[T],R=!1):B=null:(D.push(B),P.push(T),T=0,w=B,B=B.children[0])}return this},i.prototype.toBBox=function(_){return _},i.prototype.compareMinX=function(_,x){return _.minX-x.minX},i.prototype.compareMinY=function(_,x){return _.minY-x.minY},i.prototype.toJSON=function(){return this.data},i.prototype.fromJSON=function(_){return this.data=_,this},i.prototype._all=function(_,x){for(var T=[];_;)_.leaf?x.push.apply(x,_.children):T.push.apply(T,_.children),_=T.pop();return x},i.prototype._build=function(_,x,T,w){var R,B=T-x+1,U=this._maxEntries;if(B<=U)return u(R=M(_.slice(x,T+1)),this.toBBox),R;w||(w=Math.ceil(Math.log(B)/Math.log(U)),U=Math.ceil(B/Math.pow(U,w-1))),(R=M([])).leaf=!1,R.height=w;var D=Math.ceil(B/U),P=D*Math.ceil(Math.sqrt(U));A(_,x,T,P,this.compareMinX);for(var ct=x;ct<=T;ct+=P){var L=Math.min(ct+P-1,T);A(_,ct,L,D,this.compareMinY);for(var W=ct;W<=L;W+=D){var V=Math.min(W+D-1,L);R.children.push(this._build(_,W,V,w-1))}}return u(R,this.toBBox),R},i.prototype._chooseSubtree=function(_,x,T,w){for(;w.push(x),!x.leaf&&w.length-1!==T;){for(var R=1/0,B=1/0,U=void 0,D=0;D<x.children.length;D++){var P=x.children[D],ct=g(P),L=(W=_,V=P,(Math.max(V.maxX,W.maxX)-Math.min(V.minX,W.minX))*(Math.max(V.maxY,W.maxY)-Math.min(V.minY,W.minY))-ct);L<B?(B=L,R=ct<R?ct:R,U=P):L===B&&ct<R&&(R=ct,U=P)}x=U||x.children[0]}var W,V;return x},i.prototype._insert=function(_,x,T){var w=T?_:this.toBBox(_),R=[],B=this._chooseSubtree(w,this.data,x,R);for(B.children.push(_),f(B,w);x>=0&&R[x].children.length>this._maxEntries;)this._split(R,x),x--;this._adjustParentBBoxes(w,R,x)},i.prototype._split=function(_,x){var T=_[x],w=T.children.length,R=this._minEntries;this._chooseSplitAxis(T,R,w);var B=this._chooseSplitIndex(T,R,w),U=M(T.children.splice(B,T.children.length-B));U.height=T.height,U.leaf=T.leaf,u(T,this.toBBox),u(U,this.toBBox),x?_[x-1].children.push(U):this._splitRoot(T,U)},i.prototype._splitRoot=function(_,x){this.data=M([_,x]),this.data.height=_.height+1,this.data.leaf=!1,u(this.data,this.toBBox)},i.prototype._chooseSplitIndex=function(_,x,T){for(var w,R,B,U,D,P,ct,L=1/0,W=1/0,V=x;V<=T-x;V++){var Mt=c(_,0,V,this.toBBox),$=c(_,V,T,this.toBBox),gt=(R=Mt,B=$,U=void 0,D=void 0,P=void 0,ct=void 0,U=Math.max(R.minX,B.minX),D=Math.max(R.minY,B.minY),P=Math.min(R.maxX,B.maxX),ct=Math.min(R.maxY,B.maxY),Math.max(0,P-U)*Math.max(0,ct-D)),ft=g(Mt)+g($);gt<L?(L=gt,w=V,W=ft<W?ft:W):gt===L&&ft<W&&(W=ft,w=V)}return w||T-x},i.prototype._chooseSplitAxis=function(_,x,T){var w=_.leaf?this.compareMinX:p,R=_.leaf?this.compareMinY:d;this._allDistMargin(_,x,T,w)<this._allDistMargin(_,x,T,R)&&_.children.sort(w)},i.prototype._allDistMargin=function(_,x,T,w){_.children.sort(w);for(var R=this.toBBox,B=c(_,0,x,R),U=c(_,T-x,T,R),D=y(B)+y(U),P=x;P<T-x;P++){var ct=_.children[P];f(B,_.leaf?R(ct):ct),D+=y(B)}for(var L=T-x-1;L>=x;L--){var W=_.children[L];f(U,_.leaf?R(W):W),D+=y(U)}return D},i.prototype._adjustParentBBoxes=function(_,x,T){for(var w=T;w>=0;w--)f(x[w],_)},i.prototype._condense=function(_){for(var x=_.length-1,T=void 0;x>=0;x--)_[x].children.length===0?x>0?(T=_[x-1].children).splice(T.indexOf(_[x]),1):this.clear():u(_[x],this.toBBox)},i})});var CP=X((h_,p_)=>{(function(n,t){typeof h_=="object"&&typeof p_!="undefined"?p_.exports=t():typeof define=="function"&&define.amd?define(t):(n=n||self,n.TinyQueue=t())})(h_,function(){"use strict";var n=function(i,s){if(i===void 0&&(i=[]),s===void 0&&(s=t),this.data=i,this.length=this.data.length,this.compare=s,this.length>0)for(var u=(this.length>>1)-1;u>=0;u--)this._down(u)};n.prototype.push=function(i){this.data.push(i),this.length++,this._up(this.length-1)},n.prototype.pop=function(){if(this.length!==0){var i=this.data[0],s=this.data.pop();return this.length--,this.length>0&&(this.data[0]=s,this._down(0)),i}},n.prototype.peek=function(){return this.data[0]},n.prototype._up=function(i){for(var s=this,u=s.data,c=s.compare,f=u[i];i>0;){var p=i-1>>1,d=u[p];if(c(f,d)>=0)break;u[i]=d,i=p}u[i]=f},n.prototype._down=function(i){for(var s=this,u=s.data,c=s.compare,f=this.length>>1,p=u[i];i<f;){var d=(i<<1)+1,g=u[d],y=d+1;if(y<this.length&&c(u[y],g)<0&&(d=y,g=u[y]),c(g,p)>=0)break;u[i]=g,i=d}u[i]=p};function t(e,i){return e<i?-1:e>i?1:0}return n})});var PP=X(($ot,IP)=>{IP.exports=function(t,e,i,s){var u=t[0],c=t[1],f=!1;i===void 0&&(i=0),s===void 0&&(s=e.length);for(var p=(s-i)/2,d=0,g=p-1;d<p;g=d++){var y=e[i+d*2+0],v=e[i+d*2+1],E=e[i+g*2+0],M=e[i+g*2+1],A=v>c!=M>c&&u<(E-y)*(c-v)/(M-v)+y;A&&(f=!f)}return f}});var LP=X((Zot,RP)=>{RP.exports=function(t,e,i,s){var u=t[0],c=t[1],f=!1;i===void 0&&(i=0),s===void 0&&(s=e.length);for(var p=s-i,d=0,g=p-1;d<p;g=d++){var y=e[d+i][0],v=e[d+i][1],E=e[g+i][0],M=e[g+i][1],A=v>c!=M>c&&u<(E-y)*(c-v)/(M-v)+y;A&&(f=!f)}return f}});var DP=X((Jot,vd)=>{var NP=PP(),OP=LP();vd.exports=function(t,e,i,s){return e.length>0&&Array.isArray(e[0])?OP(t,e,i,s):NP(t,e,i,s)};vd.exports.nested=OP;vd.exports.flat=NP});var UP=X((_d,FP)=>{(function(n,t){typeof _d=="object"&&typeof FP!="undefined"?t(_d):typeof define=="function"&&define.amd?define(["exports"],t):t((n=n||self).predicates={})})(_d,function(n){"use strict";let e=33306690738754706e-32;function i(E,M,A,_,x){let T,w,R,B,U=M[0],D=_[0],P=0,ct=0;D>U==D>-U?(T=U,U=M[++P]):(T=D,D=_[++ct]);let L=0;if(P<E&&ct<A)for(D>U==D>-U?(R=T-((w=U+T)-U),U=M[++P]):(R=T-((w=D+T)-D),D=_[++ct]),T=w,R!==0&&(x[L++]=R);P<E&&ct<A;)D>U==D>-U?(R=T-((w=T+U)-(B=w-T))+(U-B),U=M[++P]):(R=T-((w=T+D)-(B=w-T))+(D-B),D=_[++ct]),T=w,R!==0&&(x[L++]=R);for(;P<E;)R=T-((w=T+U)-(B=w-T))+(U-B),U=M[++P],T=w,R!==0&&(x[L++]=R);for(;ct<A;)R=T-((w=T+D)-(B=w-T))+(D-B),D=_[++ct],T=w,R!==0&&(x[L++]=R);return T===0&&L!==0||(x[L++]=T),L}function s(E){return new Float64Array(E)}let u=33306690738754716e-32,c=22204460492503146e-32,f=11093356479670487e-47,p=s(4),d=s(8),g=s(12),y=s(16),v=s(4);n.orient2d=function(E,M,A,_,x,T){let w=(M-T)*(A-x),R=(E-x)*(_-T),B=w-R;if(w===0||R===0||w>0!=R>0)return B;let U=Math.abs(w+R);return Math.abs(B)>=u*U?B:-function(D,P,ct,L,W,V,Mt){let $,gt,ft,vt,it,lt,H,At,It,jt,nt,bt,Vt,$t,Ut,Gt,Ct,ee,Z=D-W,Ot=ct-W,_t=P-V,Nt=L-V;it=(Ut=(At=Z-(H=(lt=134217729*Z)-(lt-Z)))*(jt=Nt-(It=(lt=134217729*Nt)-(lt-Nt)))-(($t=Z*Nt)-H*It-At*It-H*jt))-(nt=Ut-(Ct=(At=_t-(H=(lt=134217729*_t)-(lt-_t)))*(jt=Ot-(It=(lt=134217729*Ot)-(lt-Ot)))-((Gt=_t*Ot)-H*It-At*It-H*jt))),p[0]=Ut-(nt+it)+(it-Ct),it=(Vt=$t-((bt=$t+nt)-(it=bt-$t))+(nt-it))-(nt=Vt-Gt),p[1]=Vt-(nt+it)+(it-Gt),it=(ee=bt+nt)-bt,p[2]=bt-(ee-it)+(nt-it),p[3]=ee;let wt=function(Y,N){let xt=N[0];for(let St=1;St<Y;St++)xt+=N[St];return xt}(4,p),Ht=c*Mt;if(wt>=Ht||-wt>=Ht||($=D-(Z+(it=D-Z))+(it-W),ft=ct-(Ot+(it=ct-Ot))+(it-W),gt=P-(_t+(it=P-_t))+(it-V),vt=L-(Nt+(it=L-Nt))+(it-V),$===0&>===0&&ft===0&&vt===0)||(Ht=f*Mt+e*Math.abs(wt),(wt+=Z*vt+Nt*$-(_t*ft+Ot*gt))>=Ht||-wt>=Ht))return wt;it=(Ut=(At=$-(H=(lt=134217729*$)-(lt-$)))*(jt=Nt-(It=(lt=134217729*Nt)-(lt-Nt)))-(($t=$*Nt)-H*It-At*It-H*jt))-(nt=Ut-(Ct=(At=gt-(H=(lt=134217729*gt)-(lt-gt)))*(jt=Ot-(It=(lt=134217729*Ot)-(lt-Ot)))-((Gt=gt*Ot)-H*It-At*It-H*jt))),v[0]=Ut-(nt+it)+(it-Ct),it=(Vt=$t-((bt=$t+nt)-(it=bt-$t))+(nt-it))-(nt=Vt-Gt),v[1]=Vt-(nt+it)+(it-Gt),it=(ee=bt+nt)-bt,v[2]=bt-(ee-it)+(nt-it),v[3]=ee;let Xt=i(4,p,4,v,d);it=(Ut=(At=Z-(H=(lt=134217729*Z)-(lt-Z)))*(jt=vt-(It=(lt=134217729*vt)-(lt-vt)))-(($t=Z*vt)-H*It-At*It-H*jt))-(nt=Ut-(Ct=(At=_t-(H=(lt=134217729*_t)-(lt-_t)))*(jt=ft-(It=(lt=134217729*ft)-(lt-ft)))-((Gt=_t*ft)-H*It-At*It-H*jt))),v[0]=Ut-(nt+it)+(it-Ct),it=(Vt=$t-((bt=$t+nt)-(it=bt-$t))+(nt-it))-(nt=Vt-Gt),v[1]=Vt-(nt+it)+(it-Gt),it=(ee=bt+nt)-bt,v[2]=bt-(ee-it)+(nt-it),v[3]=ee;let Pt=i(Xt,d,4,v,g);it=(Ut=(At=$-(H=(lt=134217729*$)-(lt-$)))*(jt=vt-(It=(lt=134217729*vt)-(lt-vt)))-(($t=$*vt)-H*It-At*It-H*jt))-(nt=Ut-(Ct=(At=gt-(H=(lt=134217729*gt)-(lt-gt)))*(jt=ft-(It=(lt=134217729*ft)-(lt-ft)))-((Gt=gt*ft)-H*It-At*It-H*jt))),v[0]=Ut-(nt+it)+(it-Ct),it=(Vt=$t-((bt=$t+nt)-(it=bt-$t))+(nt-it))-(nt=Vt-Gt),v[1]=Vt-(nt+it)+(it-Gt),it=(ee=bt+nt)-bt,v[2]=bt-(ee-it)+(nt-it),v[3]=ee;let ne=i(Pt,g,4,v,y);return y[ne-1]}(E,M,A,_,x,T,U)},n.orient2dfast=function(E,M,A,_,x,T){return(M-T)*(A-x)-(E-x)*(_-T)},Object.defineProperty(n,"__esModule",{value:!0})})});var VP=X((jot,y_)=>{"use strict";var BP=f_(),Ed=CP(),t$=DP(),e$=UP().orient2d;Ed.default&&(Ed=Ed.default);y_.exports=qP;y_.exports.default=qP;function qP(n,t,e){t=Math.max(0,t===void 0?2:t),e=e||0;var i=s$(n),s=new BP(16);s.toBBox=function(T){return{minX:T[0],minY:T[1],maxX:T[0],maxY:T[1]}},s.compareMinX=function(T,w){return T[0]-w[0]},s.compareMinY=function(T,w){return T[1]-w[1]},s.load(n);for(var u=[],c=0,f;c<i.length;c++){var p=i[c];s.remove(p),f=kP(p,f),u.push(f)}var d=new BP(16);for(c=0;c<u.length;c++)d.insert(d_(u[c]));for(var g=t*t,y=e*e;u.length;){var v=u.shift(),E=v.p,M=v.next.p,A=g_(E,M);if(!(A<y)){var _=A/g;p=n$(s,v.prev.p,E,M,v.next.next.p,_,d),p&&Math.min(g_(p,E),g_(p,M))<=_&&(u.push(v),u.push(kP(p,v)),s.remove(p),d.remove(v),d.insert(d_(v)),d.insert(d_(v.next)))}}v=f;var x=[];do x.push(v.p),v=v.next;while(v!==f);return x.push(v.p),x}function n$(n,t,e,i,s,u,c){for(var f=new Ed([],r$),p=n.data;p;){for(var d=0;d<p.children.length;d++){var g=p.children[d],y=p.leaf?m_(g,e,i):i$(e,i,g);y>u||f.push({node:g,dist:y})}for(;f.length&&!f.peek().node.children;){var v=f.pop(),E=v.node,M=m_(E,t,e),A=m_(E,i,s);if(v.dist<M&&v.dist<A&&GP(e,E,c)&&GP(i,E,c))return E}p=f.pop(),p&&(p=p.node)}return null}function r$(n,t){return n.dist-t.dist}function i$(n,t,e){if(zP(n,e)||zP(t,e))return 0;var i=xd(n[0],n[1],t[0],t[1],e.minX,e.minY,e.maxX,e.minY);if(i===0)return 0;var s=xd(n[0],n[1],t[0],t[1],e.minX,e.minY,e.minX,e.maxY);if(s===0)return 0;var u=xd(n[0],n[1],t[0],t[1],e.maxX,e.minY,e.maxX,e.maxY);if(u===0)return 0;var c=xd(n[0],n[1],t[0],t[1],e.minX,e.maxY,e.maxX,e.maxY);return c===0?0:Math.min(i,s,u,c)}function zP(n,t){return n[0]>=t.minX&&n[0]<=t.maxX&&n[1]>=t.minY&&n[1]<=t.maxY}function GP(n,t,e){for(var i=Math.min(n[0],t[0]),s=Math.min(n[1],t[1]),u=Math.max(n[0],t[0]),c=Math.max(n[1],t[1]),f=e.search({minX:i,minY:s,maxX:u,maxY:c}),p=0;p<f.length;p++)if(o$(f[p].p,f[p].next.p,n,t))return!1;return!0}function Ol(n,t,e){return e$(n[0],n[1],t[0],t[1],e[0],e[1])}function o$(n,t,e,i){return n!==i&&t!==e&&Ol(n,t,e)>0!=Ol(n,t,i)>0&&Ol(e,i,n)>0!=Ol(e,i,t)>0}function d_(n){var t=n.p,e=n.next.p;return n.minX=Math.min(t[0],e[0]),n.minY=Math.min(t[1],e[1]),n.maxX=Math.max(t[0],e[0]),n.maxY=Math.max(t[1],e[1]),n}function s$(n){for(var t=n[0],e=n[0],i=n[0],s=n[0],u=0;u<n.length;u++){var c=n[u];c[0]<t[0]&&(t=c),c[0]>i[0]&&(i=c),c[1]<e[1]&&(e=c),c[1]>s[1]&&(s=c)}var f=[t,e,i,s],p=f.slice();for(u=0;u<n.length;u++)t$(n[u],f)||p.push(n[u]);return u$(p)}function kP(n,t){var e={p:n,prev:null,next:null,minX:0,minY:0,maxX:0,maxY:0};return t?(e.next=t.next,e.prev=t,t.next.prev=e,t.next=e):(e.prev=e,e.next=e),e}function g_(n,t){var e=n[0]-t[0],i=n[1]-t[1];return e*e+i*i}function m_(n,t,e){var i=t[0],s=t[1],u=e[0]-i,c=e[1]-s;if(u!==0||c!==0){var f=((n[0]-i)*u+(n[1]-s)*c)/(u*u+c*c);f>1?(i=e[0],s=e[1]):f>0&&(i+=u*f,s+=c*f)}return u=n[0]-i,c=n[1]-s,u*u+c*c}function xd(n,t,e,i,s,u,c,f){var p=e-n,d=i-t,g=c-s,y=f-u,v=n-s,E=t-u,M=p*p+d*d,A=p*g+d*y,_=g*g+y*y,x=p*v+d*E,T=g*v+y*E,w=M*_-A*A,R,B,U,D,P=w,ct=w;w===0?(B=0,P=1,D=T,ct=_):(B=A*T-_*x,D=M*T-A*x,B<0?(B=0,D=T,ct=_):B>P&&(B=P,D=T+A,ct=_)),D<0?(D=0,-x<0?B=0:-x>M?B=P:(B=-x,P=M)):D>ct&&(D=ct,-x+A<0?B=0:-x+A>M?B=P:(B=-x+A,P=M)),R=B===0?0:B/P,U=D===0?0:D/ct;var L=(1-R)*n+R*e,W=(1-R)*t+R*i,V=(1-U)*s+U*c,Mt=(1-U)*u+U*f,$=V-L,gt=Mt-W;return $*$+gt*gt}function a$(n,t){return n[0]===t[0]?n[1]-t[1]:n[0]-t[0]}function u$(n){n.sort(a$);for(var t=[],e=0;e<n.length;e++){for(;t.length>=2&&Ol(t[t.length-2],t[t.length-1],n[e])<=0;)t.pop();t.push(n[e])}for(var i=[],s=n.length-1;s>=0;s--){for(;i.length>=2&&Ol(i[i.length-2],i[i.length-1],n[s])<=0;)i.pop();i.push(n[s])}return i.pop(),t.pop(),t.concat(i)}});var ZP=X((__,x_)=>{(function(n,t){typeof __=="object"&&typeof x_!="undefined"?x_.exports=t():typeof define=="function"&&define.amd?define(t):n.quickselect=t()})(__,function(){"use strict";function n(s,u,c,f,p){t(s,u,c||0,f||s.length-1,p||i)}function t(s,u,c,f,p){for(;f>c;){if(f-c>600){var d=f-c+1,g=u-c+1,y=Math.log(d),v=.5*Math.exp(2*y/3),E=.5*Math.sqrt(y*v*(d-v)/d)*(g-d/2<0?-1:1),M=Math.max(c,Math.floor(u-g*v/d+E)),A=Math.min(f,Math.floor(u+(d-g)*v/d+E));t(s,u,M,A,p)}var _=s[u],x=c,T=f;for(e(s,c,u),p(s[f],_)>0&&e(s,c,f);x<T;){for(e(s,x,T),x++,T--;p(s[x],_)<0;)x++;for(;p(s[T],_)>0;)T--}p(s[c],_)===0?e(s,c,T):(T++,e(s,T,f)),T<=u&&(c=T+1),u<=T&&(f=T-1)}}function e(s,u,c){var f=s[u];s[u]=s[c],s[c]=f}function i(s,u){return s<u?-1:s>u?1:0}return n})});var M_=X((wut,w_)=>{"use strict";w_.exports=vf;w_.exports.default=vf;var E$=ZP();function vf(n,t){if(!(this instanceof vf))return new vf(n,t);this._maxEntries=Math.max(4,n||9),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),t&&this._initFormat(t),this.clear()}vf.prototype={all:function(){return this._all(this.data,[])},search:function(n){var t=this.data,e=[],i=this.toBBox;if(!wd(n,t))return e;for(var s=[],u,c,f,p;t;){for(u=0,c=t.children.length;u<c;u++)f=t.children[u],p=t.leaf?i(f):f,wd(n,p)&&(t.leaf?e.push(f):S_(n,p)?this._all(f,e):s.push(f));t=s.pop()}return e},collides:function(n){var t=this.data,e=this.toBBox;if(!wd(n,t))return!1;for(var i=[],s,u,c,f;t;){for(s=0,u=t.children.length;s<u;s++)if(c=t.children[s],f=t.leaf?e(c):c,wd(n,f)){if(t.leaf||S_(n,f))return!0;i.push(c)}t=i.pop()}return!1},load:function(n){if(!(n&&n.length))return this;if(n.length<this._minEntries){for(var t=0,e=n.length;t<e;t++)this.insert(n[t]);return this}var i=this._build(n.slice(),0,n.length-1,0);if(!this.data.children.length)this.data=i;else if(this.data.height===i.height)this._splitRoot(this.data,i);else{if(this.data.height<i.height){var s=this.data;this.data=i,i=s}this._insert(i,this.data.height-i.height-1,!0)}return this},insert:function(n){return n&&this._insert(n,this.data.height-1),this},clear:function(){return this.data=Ul([]),this},remove:function(n,t){if(!n)return this;for(var e=this.data,i=this.toBBox(n),s=[],u=[],c,f,p,d;e||s.length;){if(e||(e=s.pop(),f=s[s.length-1],c=u.pop(),d=!0),e.leaf&&(p=S$(n,e.children,t),p!==-1))return e.children.splice(p,1),s.push(e),this._condense(s),this;!d&&!e.leaf&&S_(e,i)?(s.push(e),u.push(c),c=0,f=e,e=e.children[0]):f?(c++,e=f.children[c],d=!1):e=null}return this},toBBox:function(n){return n},compareMinX:JP,compareMinY:jP,toJSON:function(){return this.data},fromJSON:function(n){return this.data=n,this},_all:function(n,t){for(var e=[];n;)n.leaf?t.push.apply(t,n.children):e.push.apply(e,n.children),n=e.pop();return t},_build:function(n,t,e,i){var s=e-t+1,u=this._maxEntries,c;if(s<=u)return c=Ul(n.slice(t,e+1)),Fl(c,this.toBBox),c;i||(i=Math.ceil(Math.log(s)/Math.log(u)),u=Math.ceil(s/Math.pow(u,i-1))),c=Ul([]),c.leaf=!1,c.height=i;var f=Math.ceil(s/u),p=f*Math.ceil(Math.sqrt(u)),d,g,y,v;for(KP(n,t,e,p,this.compareMinX),d=t;d<=e;d+=p)for(y=Math.min(d+p-1,e),KP(n,d,y,f,this.compareMinY),g=d;g<=y;g+=f)v=Math.min(g+f-1,y),c.children.push(this._build(n,g,v,i-1));return Fl(c,this.toBBox),c},_chooseSubtree:function(n,t,e,i){for(var s,u,c,f,p,d,g,y;i.push(t),!(t.leaf||i.length-1===e);){for(g=y=1/0,s=0,u=t.children.length;s<u;s++)c=t.children[s],p=E_(c),d=w$(n,c)-p,d<y?(y=d,g=p<g?p:g,f=c):d===y&&p<g&&(g=p,f=c);t=f||t.children[0]}return t},_insert:function(n,t,e){var i=this.toBBox,s=e?n:i(n),u=[],c=this._chooseSubtree(s,this.data,t,u);for(c.children.push(n),yf(c,s);t>=0&&u[t].children.length>this._maxEntries;)this._split(u,t),t--;this._adjustParentBBoxes(s,u,t)},_split:function(n,t){var e=n[t],i=e.children.length,s=this._minEntries;this._chooseSplitAxis(e,s,i);var u=this._chooseSplitIndex(e,s,i),c=Ul(e.children.splice(u,e.children.length-u));c.height=e.height,c.leaf=e.leaf,Fl(e,this.toBBox),Fl(c,this.toBBox),t?n[t-1].children.push(c):this._splitRoot(e,c)},_splitRoot:function(n,t){this.data=Ul([n,t]),this.data.height=n.height+1,this.data.leaf=!1,Fl(this.data,this.toBBox)},_chooseSplitIndex:function(n,t,e){var i,s,u,c,f,p,d,g;for(p=d=1/0,i=t;i<=e-t;i++)s=mf(n,0,i,this.toBBox),u=mf(n,i,e,this.toBBox),c=M$(s,u),f=E_(s)+E_(u),c<p?(p=c,g=i,d=f<d?f:d):c===p&&f<d&&(d=f,g=i);return g},_chooseSplitAxis:function(n,t,e){var i=n.leaf?this.compareMinX:JP,s=n.leaf?this.compareMinY:jP,u=this._allDistMargin(n,t,e,i),c=this._allDistMargin(n,t,e,s);u<c&&n.children.sort(i)},_allDistMargin:function(n,t,e,i){n.children.sort(i);var s=this.toBBox,u=mf(n,0,t,s),c=mf(n,e-t,e,s),f=Sd(u)+Sd(c),p,d;for(p=t;p<e-t;p++)d=n.children[p],yf(u,n.leaf?s(d):d),f+=Sd(u);for(p=e-t-1;p>=t;p--)d=n.children[p],yf(c,n.leaf?s(d):d),f+=Sd(c);return f},_adjustParentBBoxes:function(n,t,e){for(var i=e;i>=0;i--)yf(t[i],n)},_condense:function(n){for(var t=n.length-1,e;t>=0;t--)n[t].children.length===0?t>0?(e=n[t-1].children,e.splice(e.indexOf(n[t]),1)):this.clear():Fl(n[t],this.toBBox)},_initFormat:function(n){var t=["return a"," - b",";"];this.compareMinX=new Function("a","b",t.join(n[0])),this.compareMinY=new Function("a","b",t.join(n[1])),this.toBBox=new Function("a","return {minX: a"+n[0]+", minY: a"+n[1]+", maxX: a"+n[2]+", maxY: a"+n[3]+"};")}};function S$(n,t,e){if(!e)return t.indexOf(n);for(var i=0;i<t.length;i++)if(e(n,t[i]))return i;return-1}function Fl(n,t){mf(n,0,n.children.length,t,n)}function mf(n,t,e,i,s){s||(s=Ul(null)),s.minX=1/0,s.minY=1/0,s.maxX=-1/0,s.maxY=-1/0;for(var u=t,c;u<e;u++)c=n.children[u],yf(s,n.leaf?i(c):c);return s}function yf(n,t){return n.minX=Math.min(n.minX,t.minX),n.minY=Math.min(n.minY,t.minY),n.maxX=Math.max(n.maxX,t.maxX),n.maxY=Math.max(n.maxY,t.maxY),n}function JP(n,t){return n.minX-t.minX}function jP(n,t){return n.minY-t.minY}function E_(n){return(n.maxX-n.minX)*(n.maxY-n.minY)}function Sd(n){return n.maxX-n.minX+(n.maxY-n.minY)}function w$(n,t){return(Math.max(t.maxX,n.maxX)-Math.min(t.minX,n.minX))*(Math.max(t.maxY,n.maxY)-Math.min(t.minY,n.minY))}function M$(n,t){var e=Math.max(n.minX,t.minX),i=Math.max(n.minY,t.minY),s=Math.min(n.maxX,t.maxX),u=Math.min(n.maxY,t.maxY);return Math.max(0,s-e)*Math.max(0,u-i)}function S_(n,t){return n.minX<=t.minX&&n.minY<=t.minY&&t.maxX<=n.maxX&&t.maxY<=n.maxY}function wd(n,t){return t.minX<=n.maxX&&t.minY<=n.maxY&&t.maxX>=n.minX&&t.maxY>=n.minY}function Ul(n){return{children:n,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function KP(n,t,e,i,s){for(var u=[t,e],c;u.length;)e=u.pop(),t=u.pop(),!(e-t<=i)&&(c=t+Math.ceil((e-t)/i/2)*i,E$(n,c,t,e,s),u.push(t,c,c,e))}});var iR=X((Flt,P_)=>{"use strict";P_.exports=Td;P_.exports.default=Td;function Td(n,t,e){e=e||2;var i=t&&t.length,s=i?t[0]*e:n.length,u=eR(n,0,s,e,!0),c=[];if(!u||u.next===u.prev)return c;var f,p,d,g,y,v,E;if(i&&(u=O$(n,t,u,e)),n.length>80*e){f=d=n[0],p=g=n[1];for(var M=e;M<s;M+=e)y=n[M],v=n[M+1],y<f&&(f=y),v<p&&(p=v),y>d&&(d=y),v>g&&(g=v);E=Math.max(d-f,g-p),E=E!==0?32767/E:0}return Ef(u,c,e,f,p,E,0),c}function eR(n,t,e,i,s){var u,c;if(s===I_(n,t,e,i)>0)for(u=t;u<e;u+=i)c=tR(u,n[u],n[u+1],c);else for(u=e-i;u>=t;u-=i)c=tR(u,n[u],n[u+1],c);return c&&Cd(c,c.next)&&(wf(c),c=c.next),c}function du(n,t){if(!n)return n;t||(t=n);var e=n,i;do if(i=!1,!e.steiner&&(Cd(e,e.next)||tr(e.prev,e,e.next)===0)){if(wf(e),e=t=e.prev,e===e.next)break;i=!0}else e=e.next;while(i||e!==t);return t}function Ef(n,t,e,i,s,u,c){if(n){!c&&u&&z$(n,i,s,u);for(var f=n,p,d;n.prev!==n.next;){if(p=n.prev,d=n.next,u?R$(n,i,s,u):P$(n)){t.push(p.i/e|0),t.push(n.i/e|0),t.push(d.i/e|0),wf(n),n=d.next,f=d.next;continue}if(n=d,n===f){c?c===1?(n=L$(du(n),t,e),Ef(n,t,e,i,s,u,2)):c===2&&N$(n,t,e,i,s,u):Ef(du(n),t,e,i,s,u,1);break}}}}function P$(n){var t=n.prev,e=n,i=n.next;if(tr(t,e,i)>=0)return!1;for(var s=t.x,u=e.x,c=i.x,f=t.y,p=e.y,d=i.y,g=s<u?s<c?s:c:u<c?u:c,y=f<p?f<d?f:d:p<d?p:d,v=s>u?s>c?s:c:u>c?u:c,E=f>p?f>d?f:d:p>d?p:d,M=i.next;M!==t;){if(M.x>=g&&M.x<=v&&M.y>=y&&M.y<=E&&Gl(s,f,u,p,c,d,M.x,M.y)&&tr(M.prev,M,M.next)>=0)return!1;M=M.next}return!0}function R$(n,t,e,i){var s=n.prev,u=n,c=n.next;if(tr(s,u,c)>=0)return!1;for(var f=s.x,p=u.x,d=c.x,g=s.y,y=u.y,v=c.y,E=f<p?f<d?f:d:p<d?p:d,M=g<y?g<v?g:v:y<v?y:v,A=f>p?f>d?f:d:p>d?p:d,_=g>y?g>v?g:v:y>v?y:v,x=T_(E,M,t,e,i),T=T_(A,_,t,e,i),w=n.prevZ,R=n.nextZ;w&&w.z>=x&&R&&R.z<=T;){if(w.x>=E&&w.x<=A&&w.y>=M&&w.y<=_&&w!==s&&w!==c&&Gl(f,g,p,y,d,v,w.x,w.y)&&tr(w.prev,w,w.next)>=0||(w=w.prevZ,R.x>=E&&R.x<=A&&R.y>=M&&R.y<=_&&R!==s&&R!==c&&Gl(f,g,p,y,d,v,R.x,R.y)&&tr(R.prev,R,R.next)>=0))return!1;R=R.nextZ}for(;w&&w.z>=x;){if(w.x>=E&&w.x<=A&&w.y>=M&&w.y<=_&&w!==s&&w!==c&&Gl(f,g,p,y,d,v,w.x,w.y)&&tr(w.prev,w,w.next)>=0)return!1;w=w.prevZ}for(;R&&R.z<=T;){if(R.x>=E&&R.x<=A&&R.y>=M&&R.y<=_&&R!==s&&R!==c&&Gl(f,g,p,y,d,v,R.x,R.y)&&tr(R.prev,R,R.next)>=0)return!1;R=R.nextZ}return!0}function L$(n,t,e){var i=n;do{var s=i.prev,u=i.next.next;!Cd(s,u)&&nR(s,i,i.next,u)&&Sf(s,u)&&Sf(u,s)&&(t.push(s.i/e|0),t.push(i.i/e|0),t.push(u.i/e|0),wf(i),wf(i.next),i=n=u),i=i.next}while(i!==n);return du(i)}function N$(n,t,e,i,s,u){var c=n;do{for(var f=c.next.next;f!==c.prev;){if(c.i!==f.i&&q$(c,f)){var p=rR(c,f);c=du(c,c.next),p=du(p,p.next),Ef(c,t,e,i,s,u,0),Ef(p,t,e,i,s,u,0);return}f=f.next}c=c.next}while(c!==n)}function O$(n,t,e,i){var s=[],u,c,f,p,d;for(u=0,c=t.length;u<c;u++)f=t[u]*i,p=u<c-1?t[u+1]*i:n.length,d=eR(n,f,p,i,!1),d===d.next&&(d.steiner=!0),s.push(k$(d));for(s.sort(D$),u=0;u<s.length;u++)e=F$(s[u],e);return e}function D$(n,t){return n.x-t.x}function F$(n,t){var e=U$(n,t);if(!e)return t;var i=rR(e,n);return du(i,i.next),du(e,e.next)}function U$(n,t){var e=t,i=n.x,s=n.y,u=-1/0,c;do{if(s<=e.y&&s>=e.next.y&&e.next.y!==e.y){var f=e.x+(s-e.y)*(e.next.x-e.x)/(e.next.y-e.y);if(f<=i&&f>u&&(u=f,c=e.x<e.next.x?e:e.next,f===i))return c}e=e.next}while(e!==t);if(!c)return null;var p=c,d=c.x,g=c.y,y=1/0,v;e=c;do i>=e.x&&e.x>=d&&i!==e.x&&Gl(s<g?i:u,s,d,g,s<g?u:i,s,e.x,e.y)&&(v=Math.abs(s-e.y)/(i-e.x),Sf(e,n)&&(v<y||v===y&&(e.x>c.x||e.x===c.x&&B$(c,e)))&&(c=e,y=v)),e=e.next;while(e!==p);return c}function B$(n,t){return tr(n.prev,n,t.prev)<0&&tr(t.next,n,n.next)<0}function z$(n,t,e,i){var s=n;do s.z===0&&(s.z=T_(s.x,s.y,t,e,i)),s.prevZ=s.prev,s.nextZ=s.next,s=s.next;while(s!==n);s.prevZ.nextZ=null,s.prevZ=null,G$(s)}function G$(n){var t,e,i,s,u,c,f,p,d=1;do{for(e=n,n=null,u=null,c=0;e;){for(c++,i=e,f=0,t=0;t<d&&(f++,i=i.nextZ,!!i);t++);for(p=d;f>0||p>0&&i;)f!==0&&(p===0||!i||e.z<=i.z)?(s=e,e=e.nextZ,f--):(s=i,i=i.nextZ,p--),u?u.nextZ=s:n=s,s.prevZ=u,u=s;e=i}u.nextZ=null,d*=2}while(c>1);return n}function T_(n,t,e,i,s){return n=(n-e)*s|0,t=(t-i)*s|0,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,n|t<<1}function k$(n){var t=n,e=n;do(t.x<e.x||t.x===e.x&&t.y<e.y)&&(e=t),t=t.next;while(t!==n);return e}function Gl(n,t,e,i,s,u,c,f){return(s-c)*(t-f)>=(n-c)*(u-f)&&(n-c)*(i-f)>=(e-c)*(t-f)&&(e-c)*(u-f)>=(s-c)*(i-f)}function q$(n,t){return n.next.i!==t.i&&n.prev.i!==t.i&&!V$(n,t)&&(Sf(n,t)&&Sf(t,n)&&H$(n,t)&&(tr(n.prev,n,t.prev)||tr(n,t.prev,t))||Cd(n,t)&&tr(n.prev,n,n.next)>0&&tr(t.prev,t,t.next)>0)}function tr(n,t,e){return(t.y-n.y)*(e.x-t.x)-(t.x-n.x)*(e.y-t.y)}function Cd(n,t){return n.x===t.x&&n.y===t.y}function nR(n,t,e,i){var s=Ad(tr(n,t,e)),u=Ad(tr(n,t,i)),c=Ad(tr(e,i,n)),f=Ad(tr(e,i,t));return!!(s!==u&&c!==f||s===0&&bd(n,e,t)||u===0&&bd(n,i,t)||c===0&&bd(e,n,i)||f===0&&bd(e,t,i))}function bd(n,t,e){return t.x<=Math.max(n.x,e.x)&&t.x>=Math.min(n.x,e.x)&&t.y<=Math.max(n.y,e.y)&&t.y>=Math.min(n.y,e.y)}function Ad(n){return n>0?1:n<0?-1:0}function V$(n,t){var e=n;do{if(e.i!==n.i&&e.next.i!==n.i&&e.i!==t.i&&e.next.i!==t.i&&nR(e,e.next,n,t))return!0;e=e.next}while(e!==n);return!1}function Sf(n,t){return tr(n.prev,n,n.next)<0?tr(n,t,n.next)>=0&&tr(n,n.prev,t)>=0:tr(n,t,n.prev)<0||tr(n,n.next,t)<0}function H$(n,t){var e=n,i=!1,s=(n.x+t.x)/2,u=(n.y+t.y)/2;do e.y>u!=e.next.y>u&&e.next.y!==e.y&&s<(e.next.x-e.x)*(u-e.y)/(e.next.y-e.y)+e.x&&(i=!i),e=e.next;while(e!==n);return i}function rR(n,t){var e=new C_(n.i,n.x,n.y),i=new C_(t.i,t.x,t.y),s=n.next,u=t.prev;return n.next=t,t.prev=n,e.next=s,s.prev=e,i.next=e,e.prev=i,u.next=i,i.prev=u,i}function tR(n,t,e,i){var s=new C_(n,t,e);return i?(s.next=i.next,s.prev=i,i.next.prev=s,i.next=s):(s.prev=s,s.next=s),s}function wf(n){n.next.prev=n.prev,n.prev.next=n.next,n.prevZ&&(n.prevZ.nextZ=n.nextZ),n.nextZ&&(n.nextZ.prevZ=n.prevZ)}function C_(n,t,e){this.i=n,this.x=t,this.y=e,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}Td.deviation=function(n,t,e,i){var s=t&&t.length,u=s?t[0]*e:n.length,c=Math.abs(I_(n,0,u,e));if(s)for(var f=0,p=t.length;f<p;f++){var d=t[f]*e,g=f<p-1?t[f+1]*e:n.length;c-=Math.abs(I_(n,d,g,e))}var y=0;for(f=0;f<i.length;f+=3){var v=i[f]*e,E=i[f+1]*e,M=i[f+2]*e;y+=Math.abs((n[v]-n[M])*(n[E+1]-n[v+1])-(n[v]-n[E])*(n[M+1]-n[v+1]))}return c===0&&y===0?0:Math.abs((y-c)/c)};function I_(n,t,e,i){for(var s=0,u=t,c=e-i;u<e;u+=i)s+=(n[c]-n[u])*(n[u+1]+n[c+1]),c=u;return s}Td.flatten=function(n){for(var t=n[0][0].length,e={vertices:[],holes:[],dimensions:t},i=0,s=0;s<n.length;s++){for(var u=0;u<n[s].length;u++)for(var c=0;c<t;c++)e.vertices.push(n[s][u][c]);s>0&&(i+=n[s-1].length,e.holes.push(i))}return e}});var D_=X(ge=>{"use strict";Object.defineProperty(ge,"__esModule",{value:!0});ge.earthRadius=63710088e-1;ge.factors={centimeters:ge.earthRadius*100,centimetres:ge.earthRadius*100,degrees:ge.earthRadius/111325,feet:ge.earthRadius*3.28084,inches:ge.earthRadius*39.37,kilometers:ge.earthRadius/1e3,kilometres:ge.earthRadius/1e3,meters:ge.earthRadius,metres:ge.earthRadius,miles:ge.earthRadius/1609.344,millimeters:ge.earthRadius*1e3,millimetres:ge.earthRadius*1e3,nauticalmiles:ge.earthRadius/1852,radians:1,yards:ge.earthRadius*1.0936};ge.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/ge.earthRadius,yards:1.0936133};ge.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 Sa(n,t,e){e===void 0&&(e={});var i={type:"Feature"};return(e.id===0||e.id)&&(i.id=e.id),e.bbox&&(i.bbox=e.bbox),i.properties=t||{},i.geometry=n,i}ge.feature=Sa;function X$(n,t,e){switch(e===void 0&&(e={}),n){case"Point":return R_(t).geometry;case"LineString":return N_(t).geometry;case"Polygon":return L_(t).geometry;case"MultiPoint":return sR(t).geometry;case"MultiLineString":return oR(t).geometry;case"MultiPolygon":return aR(t).geometry;default:throw new Error(n+" is invalid")}}ge.geometry=X$;function R_(n,t,e){if(e===void 0&&(e={}),!n)throw new Error("coordinates is required");if(!Array.isArray(n))throw new Error("coordinates must be an Array");if(n.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!Id(n[0])||!Id(n[1]))throw new Error("coordinates must contain numbers");var i={type:"Point",coordinates:n};return Sa(i,t,e)}ge.point=R_;function Y$(n,t,e){return e===void 0&&(e={}),Pd(n.map(function(i){return R_(i,t)}),e)}ge.points=Y$;function L_(n,t,e){e===void 0&&(e={});for(var i=0,s=n;i<s.length;i++){var u=s[i];if(u.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(var c=0;c<u[u.length-1].length;c++)if(u[u.length-1][c]!==u[0][c])throw new Error("First and last Position are not equivalent.")}var f={type:"Polygon",coordinates:n};return Sa(f,t,e)}ge.polygon=L_;function $$(n,t,e){return e===void 0&&(e={}),Pd(n.map(function(i){return L_(i,t)}),e)}ge.polygons=$$;function N_(n,t,e){if(e===void 0&&(e={}),n.length<2)throw new Error("coordinates must be an array of two or more positions");var i={type:"LineString",coordinates:n};return Sa(i,t,e)}ge.lineString=N_;function Z$(n,t,e){return e===void 0&&(e={}),Pd(n.map(function(i){return N_(i,t)}),e)}ge.lineStrings=Z$;function Pd(n,t){t===void 0&&(t={});var e={type:"FeatureCollection"};return t.id&&(e.id=t.id),t.bbox&&(e.bbox=t.bbox),e.features=n,e}ge.featureCollection=Pd;function oR(n,t,e){e===void 0&&(e={});var i={type:"MultiLineString",coordinates:n};return Sa(i,t,e)}ge.multiLineString=oR;function sR(n,t,e){e===void 0&&(e={});var i={type:"MultiPoint",coordinates:n};return Sa(i,t,e)}ge.multiPoint=sR;function aR(n,t,e){e===void 0&&(e={});var i={type:"MultiPolygon",coordinates:n};return Sa(i,t,e)}ge.multiPolygon=aR;function J$(n,t,e){e===void 0&&(e={});var i={type:"GeometryCollection",geometries:n};return Sa(i,t,e)}ge.geometryCollection=J$;function j$(n,t){if(t===void 0&&(t=0),t&&!(t>=0))throw new Error("precision must be a positive number");var e=Math.pow(10,t||0);return Math.round(n*e)/e}ge.round=j$;function uR(n,t){t===void 0&&(t="kilometers");var e=ge.factors[t];if(!e)throw new Error(t+" units is invalid");return n*e}ge.radiansToLength=uR;function O_(n,t){t===void 0&&(t="kilometers");var e=ge.factors[t];if(!e)throw new Error(t+" units is invalid");return n/e}ge.lengthToRadians=O_;function K$(n,t){return lR(O_(n,t))}ge.lengthToDegrees=K$;function Q$(n){var t=n%360;return t<0&&(t+=360),t}ge.bearingToAzimuth=Q$;function lR(n){var t=n%(2*Math.PI);return t*180/Math.PI}ge.radiansToDegrees=lR;function tZ(n){var t=n%360;return t*Math.PI/180}ge.degreesToRadians=tZ;function eZ(n,t,e){if(t===void 0&&(t="kilometers"),e===void 0&&(e="kilometers"),!(n>=0))throw new Error("length must be a positive number");return uR(O_(n,t),e)}ge.convertLength=eZ;function nZ(n,t,e){if(t===void 0&&(t="meters"),e===void 0&&(e="kilometers"),!(n>=0))throw new Error("area must be a positive number");var i=ge.areaFactors[t];if(!i)throw new Error("invalid original units");var s=ge.areaFactors[e];if(!s)throw new Error("invalid final units");return n/i*s}ge.convertArea=nZ;function Id(n){return!isNaN(n)&&n!==null&&!Array.isArray(n)}ge.isNumber=Id;function rZ(n){return!!n&&n.constructor===Object}ge.isObject=rZ;function iZ(n){if(!n)throw new Error("bbox is required");if(!Array.isArray(n))throw new Error("bbox must be an Array");if(n.length!==4&&n.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");n.forEach(function(t){if(!Id(t))throw new Error("bbox must only contain numbers")})}ge.validateBBox=iZ;function oZ(n){if(!n)throw new Error("id is required");if(["string","number"].indexOf(typeof n)===-1)throw new Error("id must be a number or a string")}ge.validateId=oZ});var U_=X(Mr=>{"use strict";Object.defineProperty(Mr,"__esModule",{value:!0});var ci=D_();function Mf(n,t,e){if(n!==null)for(var i,s,u,c,f,p,d,g=0,y=0,v,E=n.type,M=E==="FeatureCollection",A=E==="Feature",_=M?n.features.length:1,x=0;x<_;x++){d=M?n.features[x].geometry:A?n.geometry:n,v=d?d.type==="GeometryCollection":!1,f=v?d.geometries.length:1;for(var T=0;T<f;T++){var w=0,R=0;if(c=v?d.geometries[T]:d,c!==null){p=c.coordinates;var B=c.type;switch(g=e&&(B==="Polygon"||B==="MultiPolygon")?1:0,B){case null:break;case"Point":if(t(p,y,x,w,R)===!1)return!1;y++,w++;break;case"LineString":case"MultiPoint":for(i=0;i<p.length;i++){if(t(p[i],y,x,w,R)===!1)return!1;y++,B==="MultiPoint"&&w++}B==="LineString"&&w++;break;case"Polygon":case"MultiLineString":for(i=0;i<p.length;i++){for(s=0;s<p[i].length-g;s++){if(t(p[i][s],y,x,w,R)===!1)return!1;y++}B==="MultiLineString"&&w++,B==="Polygon"&&R++}B==="Polygon"&&w++;break;case"MultiPolygon":for(i=0;i<p.length;i++){for(R=0,s=0;s<p[i].length;s++){for(u=0;u<p[i][s].length-g;u++){if(t(p[i][s][u],y,x,w,R)===!1)return!1;y++}R++}w++}break;case"GeometryCollection":for(i=0;i<c.geometries.length;i++)if(Mf(c.geometries[i],t,e)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function sZ(n,t,e,i){var s=e;return Mf(n,function(u,c,f,p,d){c===0&&e===void 0?s=u:s=t(s,u,c,f,p,d)},i),s}function cR(n,t){var e;switch(n.type){case"FeatureCollection":for(e=0;e<n.features.length&&t(n.features[e].properties,e)!==!1;e++);break;case"Feature":t(n.properties,0);break}}function aZ(n,t,e){var i=e;return cR(n,function(s,u){u===0&&e===void 0?i=s:i=t(i,s,u)}),i}function fR(n,t){if(n.type==="Feature")t(n,0);else if(n.type==="FeatureCollection")for(var e=0;e<n.features.length&&t(n.features[e],e)!==!1;e++);}function uZ(n,t,e){var i=e;return fR(n,function(s,u){u===0&&e===void 0?i=s:i=t(i,s,u)}),i}function lZ(n){var t=[];return Mf(n,function(e){t.push(e)}),t}function F_(n,t){var e,i,s,u,c,f,p,d,g,y,v=0,E=n.type==="FeatureCollection",M=n.type==="Feature",A=E?n.features.length:1;for(e=0;e<A;e++){for(f=E?n.features[e].geometry:M?n.geometry:n,d=E?n.features[e].properties:M?n.properties:{},g=E?n.features[e].bbox:M?n.bbox:void 0,y=E?n.features[e].id:M?n.id:void 0,p=f?f.type==="GeometryCollection":!1,c=p?f.geometries.length:1,s=0;s<c;s++){if(u=p?f.geometries[s]:f,u===null){if(t(null,v,d,g,y)===!1)return!1;continue}switch(u.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(t(u,v,d,g,y)===!1)return!1;break}case"GeometryCollection":{for(i=0;i<u.geometries.length;i++)if(t(u.geometries[i],v,d,g,y)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}v++}}function cZ(n,t,e){var i=e;return F_(n,function(s,u,c,f,p){u===0&&e===void 0?i=s:i=t(i,s,u,c,f,p)}),i}function Rd(n,t){F_(n,function(e,i,s,u,c){var f=e===null?null:e.type;switch(f){case null:case"Point":case"LineString":case"Polygon":return t(ci.feature(e,s,{bbox:u,id:c}),i,0)===!1?!1:void 0}var p;switch(f){case"MultiPoint":p="Point";break;case"MultiLineString":p="LineString";break;case"MultiPolygon":p="Polygon";break}for(var d=0;d<e.coordinates.length;d++){var g=e.coordinates[d],y={type:p,coordinates:g};if(t(ci.feature(y,s),i,d)===!1)return!1}})}function fZ(n,t,e){var i=e;return Rd(n,function(s,u,c){u===0&&c===0&&e===void 0?i=s:i=t(i,s,u,c)}),i}function hR(n,t){Rd(n,function(e,i,s){var u=0;if(e.geometry){var c=e.geometry.type;if(!(c==="Point"||c==="MultiPoint")){var f,p=0,d=0,g=0;if(Mf(e,function(y,v,E,M,A){if(f===void 0||i>p||M>d||A>g){f=y,p=i,d=M,g=A,u=0;return}var _=ci.lineString([f,y],e.properties);if(t(_,i,s,A,u)===!1)return!1;u++,f=y})===!1)return!1}}})}function hZ(n,t,e){var i=e,s=!1;return hR(n,function(u,c,f,p,d){s===!1&&e===void 0?i=u:i=t(i,u,c,f,p,d),s=!0}),i}function pR(n,t){if(!n)throw new Error("geojson is required");Rd(n,function(e,i,s){if(e.geometry!==null){var u=e.geometry.type,c=e.geometry.coordinates;switch(u){case"LineString":if(t(e,i,s,0,0)===!1)return!1;break;case"Polygon":for(var f=0;f<c.length;f++)if(t(ci.lineString(c[f],e.properties),i,s,f)===!1)return!1;break}}})}function pZ(n,t,e){var i=e;return pR(n,function(s,u,c,f){u===0&&e===void 0?i=s:i=t(i,s,u,c,f)}),i}function dZ(n,t){if(t=t||{},!ci.isObject(t))throw new Error("options is invalid");var e=t.featureIndex||0,i=t.multiFeatureIndex||0,s=t.geometryIndex||0,u=t.segmentIndex||0,c=t.properties,f;switch(n.type){case"FeatureCollection":e<0&&(e=n.features.length+e),c=c||n.features[e].properties,f=n.features[e].geometry;break;case"Feature":c=c||n.properties,f=n.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":f=n;break;default:throw new Error("geojson is invalid")}if(f===null)return null;var p=f.coordinates;switch(f.type){case"Point":case"MultiPoint":return null;case"LineString":return u<0&&(u=p.length+u-1),ci.lineString([p[u],p[u+1]],c,t);case"Polygon":return s<0&&(s=p.length+s),u<0&&(u=p[s].length+u-1),ci.lineString([p[s][u],p[s][u+1]],c,t);case"MultiLineString":return i<0&&(i=p.length+i),u<0&&(u=p[i].length+u-1),ci.lineString([p[i][u],p[i][u+1]],c,t);case"MultiPolygon":return i<0&&(i=p.length+i),s<0&&(s=p[i].length+s),u<0&&(u=p[i][s].length-u-1),ci.lineString([p[i][s][u],p[i][s][u+1]],c,t)}throw new Error("geojson is invalid")}function gZ(n,t){if(t=t||{},!ci.isObject(t))throw new Error("options is invalid");var e=t.featureIndex||0,i=t.multiFeatureIndex||0,s=t.geometryIndex||0,u=t.coordIndex||0,c=t.properties,f;switch(n.type){case"FeatureCollection":e<0&&(e=n.features.length+e),c=c||n.features[e].properties,f=n.features[e].geometry;break;case"Feature":c=c||n.properties,f=n.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":f=n;break;default:throw new Error("geojson is invalid")}if(f===null)return null;var p=f.coordinates;switch(f.type){case"Point":return ci.point(p,c,t);case"MultiPoint":return i<0&&(i=p.length+i),ci.point(p[i],c,t);case"LineString":return u<0&&(u=p.length+u),ci.point(p[u],c,t);case"Polygon":return s<0&&(s=p.length+s),u<0&&(u=p[s].length+u),ci.point(p[s][u],c,t);case"MultiLineString":return i<0&&(i=p.length+i),u<0&&(u=p[i].length+u),ci.point(p[i][u],c,t);case"MultiPolygon":return i<0&&(i=p.length+i),s<0&&(s=p[i].length+s),u<0&&(u=p[i][s].length-u),ci.point(p[i][s][u],c,t)}throw new Error("geojson is invalid")}Mr.coordAll=lZ;Mr.coordEach=Mf;Mr.coordReduce=sZ;Mr.featureEach=fR;Mr.featureReduce=uZ;Mr.findPoint=gZ;Mr.findSegment=dZ;Mr.flattenEach=Rd;Mr.flattenReduce=fZ;Mr.geomEach=F_;Mr.geomReduce=cZ;Mr.lineEach=pR;Mr.lineReduce=pZ;Mr.propEach=cR;Mr.propReduce=aZ;Mr.segmentEach=hR;Mr.segmentReduce=hZ});var dR=X(z_=>{"use strict";Object.defineProperty(z_,"__esModule",{value:!0});var mZ=U_();function B_(n){var t=[1/0,1/0,-1/0,-1/0];return mZ.coordEach(n,function(e){t[0]>e[0]&&(t[0]=e[0]),t[1]>e[1]&&(t[1]=e[1]),t[2]<e[0]&&(t[2]=e[0]),t[3]<e[1]&&(t[3]=e[1])}),t}B_.default=B_;z_.default=B_});var Ld=X((Klt,G_)=>{var ns=f_(),mR=D_(),yR=U_(),kl=dR().default,yZ=yR.featureEach,Jlt=yR.coordEach,jlt=mR.polygon,gR=mR.featureCollection;function vR(n){var t=new ns(n);return t.insert=function(e){if(e.type!=="Feature")throw new Error("invalid feature");return e.bbox=e.bbox?e.bbox:kl(e),ns.prototype.insert.call(this,e)},t.load=function(e){var i=[];return Array.isArray(e)?e.forEach(function(s){if(s.type!=="Feature")throw new Error("invalid features");s.bbox=s.bbox?s.bbox:kl(s),i.push(s)}):yZ(e,function(s){if(s.type!=="Feature")throw new Error("invalid features");s.bbox=s.bbox?s.bbox:kl(s),i.push(s)}),ns.prototype.load.call(this,i)},t.remove=function(e,i){if(e.type!=="Feature")throw new Error("invalid feature");return e.bbox=e.bbox?e.bbox:kl(e),ns.prototype.remove.call(this,e,i)},t.clear=function(){return ns.prototype.clear.call(this)},t.search=function(e){var i=ns.prototype.search.call(this,this.toBBox(e));return gR(i)},t.collides=function(e){return ns.prototype.collides.call(this,this.toBBox(e))},t.all=function(){var e=ns.prototype.all.call(this);return gR(e)},t.toJSON=function(){return ns.prototype.toJSON.call(this)},t.fromJSON=function(e){return ns.prototype.fromJSON.call(this,e)},t.toBBox=function(e){var i;if(e.bbox)i=e.bbox;else if(Array.isArray(e)&&e.length===4)i=e;else if(Array.isArray(e)&&e.length===6)i=[e[0],e[1],e[3],e[4]];else if(e.type==="Feature")i=kl(e);else if(e.type==="FeatureCollection")i=kl(e);else throw new Error("invalid geojson");return{minX:i[0],minY:i[1],maxX:i[2],maxY:i[3]}},t}G_.exports=vR;G_.exports.default=vR});var X_=X((aht,CR)=>{"use strict";var TR=Object.prototype.toString;CR.exports=function(t){var e=TR.call(t),i=e==="[object Arguments]";return i||(i=e!=="[object Array]"&&t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&TR.call(t.callee)==="[object Function]"),i}});var UR=X((uht,FR)=>{"use strict";var DR;Object.keys||(Tf=Object.prototype.hasOwnProperty,Y_=Object.prototype.toString,IR=X_(),$_=Object.prototype.propertyIsEnumerable,PR=!$_.call({toString:null},"toString"),RR=$_.call(function(){},"prototype"),Cf=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],Ud=function(n){var t=n.constructor;return t&&t.prototype===n},LR={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},NR=function(){if(typeof window=="undefined")return!1;for(var n in window)try{if(!LR["$"+n]&&Tf.call(window,n)&&window[n]!==null&&typeof window[n]=="object")try{Ud(window[n])}catch(t){return!0}}catch(t){return!0}return!1}(),OR=function(n){if(typeof window=="undefined"||!NR)return Ud(n);try{return Ud(n)}catch(t){return!1}},DR=function(t){var e=t!==null&&typeof t=="object",i=Y_.call(t)==="[object Function]",s=IR(t),u=e&&Y_.call(t)==="[object String]",c=[];if(!e&&!i&&!s)throw new TypeError("Object.keys called on a non-object");var f=RR&&i;if(u&&t.length>0&&!Tf.call(t,0))for(var p=0;p<t.length;++p)c.push(String(p));if(s&&t.length>0)for(var d=0;d<t.length;++d)c.push(String(d));else for(var g in t)!(f&&g==="prototype")&&Tf.call(t,g)&&c.push(String(g));if(PR)for(var y=OR(t),v=0;v<Cf.length;++v)!(y&&Cf[v]==="constructor")&&Tf.call(t,Cf[v])&&c.push(Cf[v]);return c});var Tf,Y_,IR,$_,PR,RR,Cf,Ud,LR,NR,OR;FR.exports=DR});var Z_=X((lht,GR)=>{"use strict";var TZ=Array.prototype.slice,CZ=X_(),BR=Object.keys,Bd=BR?function(t){return BR(t)}:UR(),zR=Object.keys;Bd.shim=function(){if(Object.keys){var t=function(){var e=Object.keys(arguments);return e&&e.length===arguments.length}(1,2);t||(Object.keys=function(i){return CZ(i)?zR(TZ.call(i)):zR(i)})}else Object.keys=Bd;return Object.keys||Bd};GR.exports=Bd});var J_=X((cht,kR)=>{"use strict";kR.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var t={},e=Symbol("test"),i=Object(e);if(typeof e=="string"||Object.prototype.toString.call(e)!=="[object Symbol]"||Object.prototype.toString.call(i)!=="[object Symbol]")return!1;var s=42;t[e]=s;for(var u in t)return!1;if(typeof Object.keys=="function"&&Object.keys(t).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(t).length!==0)return!1;var c=Object.getOwnPropertySymbols(t);if(c.length!==1||c[0]!==e||!Object.prototype.propertyIsEnumerable.call(t,e))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var f=Object.getOwnPropertyDescriptor(t,e);if(f.value!==s||f.enumerable!==!0)return!1}return!0}});var zd=X((fht,qR)=>{"use strict";var IZ=J_();qR.exports=function(){return IZ()&&!!Symbol.toStringTag}});var j_=X((hht,VR)=>{"use strict";VR.exports=Object});var K_=X((pht,HR)=>{"use strict";HR.exports=Error});var XR=X((dht,WR)=>{"use strict";WR.exports=EvalError});var $R=X((ght,YR)=>{"use strict";YR.exports=RangeError});var JR=X((mht,ZR)=>{"use strict";ZR.exports=ReferenceError});var Q_=X((yht,jR)=>{"use strict";jR.exports=SyntaxError});var gu=X((vht,KR)=>{"use strict";KR.exports=TypeError});var tL=X((_ht,QR)=>{"use strict";QR.exports=URIError});var nL=X((xht,eL)=>{"use strict";eL.exports=Math.abs});var iL=X((Eht,rL)=>{"use strict";rL.exports=Math.floor});var sL=X((Sht,oL)=>{"use strict";oL.exports=Math.max});var uL=X((wht,aL)=>{"use strict";aL.exports=Math.min});var cL=X((Mht,lL)=>{"use strict";lL.exports=Math.pow});var hL=X((bht,fL)=>{"use strict";fL.exports=Math.round});var dL=X((Aht,pL)=>{"use strict";pL.exports=Number.isNaN||function(t){return t!==t}});var mL=X((Tht,gL)=>{"use strict";var PZ=dL();gL.exports=function(t){return PZ(t)||t===0?t:t<0?-1:1}});var vL=X((Cht,yL)=>{"use strict";yL.exports=Object.getOwnPropertyDescriptor});var mu=X((Iht,_L)=>{"use strict";var Gd=vL();if(Gd)try{Gd([],"length")}catch(n){Gd=null}_L.exports=Gd});var If=X((Pht,xL)=>{"use strict";var kd=Object.defineProperty||!1;if(kd)try{kd({},"a",{value:1})}catch(n){kd=!1}xL.exports=kd});var wL=X((Rht,SL)=>{"use strict";var EL=typeof Symbol!="undefined"&&Symbol,RZ=J_();SL.exports=function(){return typeof EL!="function"||typeof Symbol!="function"||typeof EL("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:RZ()}});var tx=X((Lht,ML)=>{"use strict";ML.exports=typeof Reflect!="undefined"&&Reflect.getPrototypeOf||null});var ex=X((Nht,bL)=>{"use strict";var LZ=j_();bL.exports=LZ.getPrototypeOf||null});var CL=X((Oht,TL)=>{"use strict";var NZ="Function.prototype.bind called on incompatible ",OZ=Object.prototype.toString,DZ=Math.max,FZ="[object Function]",AL=function(t,e){for(var i=[],s=0;s<t.length;s+=1)i[s]=t[s];for(var u=0;u<e.length;u+=1)i[u+t.length]=e[u];return i},UZ=function(t,e){for(var i=[],s=e||0,u=0;s<t.length;s+=1,u+=1)i[u]=t[s];return i},BZ=function(n,t){for(var e="",i=0;i<n.length;i+=1)e+=n[i],i+1<n.length&&(e+=t);return e};TL.exports=function(t){var e=this;if(typeof e!="function"||OZ.apply(e)!==FZ)throw new TypeError(NZ+e);for(var i=UZ(arguments,1),s,u=function(){if(this instanceof s){var g=e.apply(this,AL(i,arguments));return Object(g)===g?g:this}return e.apply(t,AL(i,arguments))},c=DZ(0,e.length-i.length),f=[],p=0;p<c;p++)f[p]="$"+p;if(s=Function("binder","return function ("+BZ(f,",")+"){ return binder.apply(this,arguments); }")(u),e.prototype){var d=function(){};d.prototype=e.prototype,s.prototype=new d,d.prototype=null}return s}});var ql=X((Dht,IL)=>{"use strict";var zZ=CL();IL.exports=Function.prototype.bind||zZ});var qd=X((Fht,PL)=>{"use strict";PL.exports=Function.prototype.call});var Vd=X((Uht,RL)=>{"use strict";RL.exports=Function.prototype.apply});var NL=X((Bht,LL)=>{"use strict";LL.exports=typeof Reflect!="undefined"&&Reflect&&Reflect.apply});var nx=X((zht,OL)=>{"use strict";var GZ=ql(),kZ=Vd(),qZ=qd(),VZ=NL();OL.exports=VZ||GZ.call(qZ,kZ)});var Hd=X((Ght,DL)=>{"use strict";var HZ=ql(),WZ=gu(),XZ=qd(),YZ=nx();DL.exports=function(t){if(t.length<1||typeof t[0]!="function")throw new WZ("a function is required");return YZ(HZ,XZ,t)}});var kL=X((kht,GL)=>{"use strict";var $Z=Hd(),FL=mu(),BL;try{BL=[].__proto__===Array.prototype}catch(n){if(!n||typeof n!="object"||!("code"in n)||n.code!=="ERR_PROTO_ACCESS")throw n}var rx=!!BL&&FL&&FL(Object.prototype,"__proto__"),zL=Object,UL=zL.getPrototypeOf;GL.exports=rx&&typeof rx.get=="function"?$Z([rx.get]):typeof UL=="function"?function(t){return UL(t==null?t:zL(t))}:!1});var ix=X((qht,WL)=>{"use strict";var qL=tx(),VL=ex(),HL=kL();WL.exports=qL?function(t){return qL(t)}:VL?function(t){if(!t||typeof t!="object"&&typeof t!="function")throw new TypeError("getProto: not an object");return VL(t)}:HL?function(t){return HL(t)}:null});var ox=X((Vht,XL)=>{"use strict";var ZZ=Function.prototype.call,JZ=Object.prototype.hasOwnProperty,jZ=ql();XL.exports=jZ.call(ZZ,JZ)});var ux=X((Hht,KL)=>{"use strict";var tn,KZ=j_(),QZ=K_(),tJ=XR(),eJ=$R(),nJ=JR(),Xl=Q_(),Wl=gu(),rJ=tL(),iJ=nL(),oJ=iL(),sJ=sL(),aJ=uL(),uJ=cL(),lJ=hL(),cJ=mL(),JL=Function,sx=function(n){try{return JL('"use strict"; return ('+n+").constructor;")()}catch(t){}},Pf=mu(),fJ=If(),ax=function(){throw new Wl},hJ=Pf?function(){try{return arguments.callee,ax}catch(n){try{return Pf(arguments,"callee").get}catch(t){return ax}}}():ax,Vl=wL()(),Gr=ix(),pJ=ex(),dJ=tx(),jL=Vd(),Rf=qd(),Hl={},gJ=typeof Uint8Array=="undefined"||!Gr?tn:Gr(Uint8Array),yu={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?tn:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?tn:ArrayBuffer,"%ArrayIteratorPrototype%":Vl&&Gr?Gr([][Symbol.iterator]()):tn,"%AsyncFromSyncIteratorPrototype%":tn,"%AsyncFunction%":Hl,"%AsyncGenerator%":Hl,"%AsyncGeneratorFunction%":Hl,"%AsyncIteratorPrototype%":Hl,"%Atomics%":typeof Atomics=="undefined"?tn:Atomics,"%BigInt%":typeof BigInt=="undefined"?tn:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?tn:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?tn:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?tn:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":QZ,"%eval%":eval,"%EvalError%":tJ,"%Float16Array%":typeof Float16Array=="undefined"?tn:Float16Array,"%Float32Array%":typeof Float32Array=="undefined"?tn:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?tn:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?tn:FinalizationRegistry,"%Function%":JL,"%GeneratorFunction%":Hl,"%Int8Array%":typeof Int8Array=="undefined"?tn:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?tn:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?tn:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":Vl&&Gr?Gr(Gr([][Symbol.iterator]())):tn,"%JSON%":typeof JSON=="object"?JSON:tn,"%Map%":typeof Map=="undefined"?tn:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!Vl||!Gr?tn:Gr(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":KZ,"%Object.getOwnPropertyDescriptor%":Pf,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?tn:Promise,"%Proxy%":typeof Proxy=="undefined"?tn:Proxy,"%RangeError%":eJ,"%ReferenceError%":nJ,"%Reflect%":typeof Reflect=="undefined"?tn:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?tn:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!Vl||!Gr?tn:Gr(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?tn:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":Vl&&Gr?Gr(""[Symbol.iterator]()):tn,"%Symbol%":Vl?Symbol:tn,"%SyntaxError%":Xl,"%ThrowTypeError%":hJ,"%TypedArray%":gJ,"%TypeError%":Wl,"%Uint8Array%":typeof Uint8Array=="undefined"?tn:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?tn:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?tn:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?tn:Uint32Array,"%URIError%":rJ,"%WeakMap%":typeof WeakMap=="undefined"?tn:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?tn:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?tn:WeakSet,"%Function.prototype.call%":Rf,"%Function.prototype.apply%":jL,"%Object.defineProperty%":fJ,"%Object.getPrototypeOf%":pJ,"%Math.abs%":iJ,"%Math.floor%":oJ,"%Math.max%":sJ,"%Math.min%":aJ,"%Math.pow%":uJ,"%Math.round%":lJ,"%Math.sign%":cJ,"%Reflect.getPrototypeOf%":dJ};if(Gr)try{null.error}catch(n){YL=Gr(Gr(n)),yu["%Error.prototype%"]=YL}var YL,mJ=function n(t){var e;if(t==="%AsyncFunction%")e=sx("async function () {}");else if(t==="%GeneratorFunction%")e=sx("function* () {}");else if(t==="%AsyncGeneratorFunction%")e=sx("async function* () {}");else if(t==="%AsyncGenerator%"){var i=n("%AsyncGeneratorFunction%");i&&(e=i.prototype)}else if(t==="%AsyncIteratorPrototype%"){var s=n("%AsyncGenerator%");s&&Gr&&(e=Gr(s.prototype))}return yu[t]=e,e},$L={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},Lf=ql(),Wd=ox(),yJ=Lf.call(Rf,Array.prototype.concat),vJ=Lf.call(jL,Array.prototype.splice),ZL=Lf.call(Rf,String.prototype.replace),Xd=Lf.call(Rf,String.prototype.slice),_J=Lf.call(Rf,RegExp.prototype.exec),xJ=/[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|(["'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g,EJ=/\\\\(\\\\)?/g,SJ=function(t){var e=Xd(t,0,1),i=Xd(t,-1);if(e==="%"&&i!=="%")throw new Xl("invalid intrinsic syntax, expected closing \`%\`");if(i==="%"&&e!=="%")throw new Xl("invalid intrinsic syntax, expected opening \`%\`");var s=[];return ZL(t,xJ,function(u,c,f,p){s[s.length]=f?ZL(p,EJ,"$1"):c||u}),s},wJ=function(t,e){var i=t,s;if(Wd($L,i)&&(s=$L[i],i="%"+s[0]+"%"),Wd(yu,i)){var u=yu[i];if(u===Hl&&(u=mJ(i)),typeof u=="undefined"&&!e)throw new Wl("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:s,name:i,value:u}}throw new Xl("intrinsic "+t+" does not exist!")};KL.exports=function(t,e){if(typeof t!="string"||t.length===0)throw new Wl("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof e!="boolean")throw new Wl('"allowMissing" argument must be a boolean');if(_J(/^%?[^%]*%?$/,t)===null)throw new Xl("\`%\` may not be present anywhere but at the beginning and end of the intrinsic name");var i=SJ(t),s=i.length>0?i[0]:"",u=wJ("%"+s+"%",e),c=u.name,f=u.value,p=!1,d=u.alias;d&&(s=d[0],vJ(i,yJ([0,1],d)));for(var g=1,y=!0;g<i.length;g+=1){var v=i[g],E=Xd(v,0,1),M=Xd(v,-1);if((E==='"'||E==="'"||E==="\`"||M==='"'||M==="'"||M==="\`")&&E!==M)throw new Xl("property names with quotes must have matching quotes");if((v==="constructor"||!y)&&(p=!0),s+="."+v,c="%"+s+"%",Wd(yu,c))f=yu[c];else if(f!=null){if(!(v in f)){if(!e)throw new Wl("base intrinsic for "+t+" exists, but the property is not available.");return}if(Pf&&g+1>=i.length){var A=Pf(f,v);y=!!A,y&&"get"in A&&!("originalValue"in A.get)?f=A.get:f=f[v]}else y=Wd(f,v),f=f[v];y&&!p&&(yu[c]=f)}}return f}});var Yd=X((Wht,eN)=>{"use strict";var QL=ux(),tN=Hd(),MJ=tN([QL("%String.prototype.indexOf%")]);eN.exports=function(t,e){var i=QL(t,!!e);return typeof i=="function"&&MJ(t,".prototype.")>-1?tN([i]):i}});var iN=X((Xht,rN)=>{"use strict";var bJ=zd()(),AJ=Yd(),lx=AJ("Object.prototype.toString"),$d=function(t){return bJ&&t&&typeof t=="object"&&Symbol.toStringTag in t?!1:lx(t)==="[object Arguments]"},nN=function(t){return $d(t)?!0:t!==null&&typeof t=="object"&&"length"in t&&typeof t.length=="number"&&t.length>=0&&lx(t)!=="[object Array]"&&"callee"in t&&lx(t.callee)==="[object Function]"},TJ=function(){return $d(arguments)}();$d.isLegacyArguments=nN;rN.exports=TJ?$d:nN});var Zd=X((Yht,aN)=>{"use strict";var oN=If(),CJ=Q_(),Yl=gu(),sN=mu();aN.exports=function(t,e,i){if(!t||typeof t!="object"&&typeof t!="function")throw new Yl("\`obj\` must be an object or a function\`");if(typeof e!="string"&&typeof e!="symbol")throw new Yl("\`property\` must be a string or a symbol\`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new Yl("\`nonEnumerable\`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new Yl("\`nonWritable\`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new Yl("\`nonConfigurable\`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new Yl("\`loose\`, if provided, must be a boolean");var s=arguments.length>3?arguments[3]:null,u=arguments.length>4?arguments[4]:null,c=arguments.length>5?arguments[5]:null,f=arguments.length>6?arguments[6]:!1,p=!!sN&&sN(t,e);if(oN)oN(t,e,{configurable:c===null&&p?p.configurable:!c,enumerable:s===null&&p?p.enumerable:!s,value:i,writable:u===null&&p?p.writable:!u});else if(f||!s&&!u&&!c)t[e]=i;else throw new CJ("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var Jd=X(($ht,lN)=>{"use strict";var cx=If(),uN=function(){return!!cx};uN.hasArrayLengthDefineBug=function(){if(!cx)return null;try{return cx([],"length",{value:1}).length!==1}catch(t){return!0}};lN.exports=uN});var $l=X((Zht,pN)=>{"use strict";var IJ=Z_(),PJ=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",RJ=Object.prototype.toString,LJ=Array.prototype.concat,cN=Zd(),NJ=function(n){return typeof n=="function"&&RJ.call(n)==="[object Function]"},fN=Jd()(),OJ=function(n,t,e,i){if(t in n){if(i===!0){if(n[t]===e)return}else if(!NJ(i)||!i())return}fN?cN(n,t,e,!0):cN(n,t,e)},hN=function(n,t){var e=arguments.length>2?arguments[2]:{},i=IJ(t);PJ&&(i=LJ.call(i,Object.getOwnPropertySymbols(t)));for(var s=0;s<i.length;s+=1)OJ(n,i[s],t[i[s]],e[i[s]])};hN.supportsDescriptors=!!fN;pN.exports=hN});var vN=X((Jht,yN)=>{"use strict";var DJ=ux(),dN=Zd(),FJ=Jd()(),gN=mu(),mN=gu(),UJ=DJ("%Math.floor%");yN.exports=function(t,e){if(typeof t!="function")throw new mN("\`fn\` is not a function");if(typeof e!="number"||e<0||e>4294967295||UJ(e)!==e)throw new mN("\`length\` must be a positive 32-bit integer");var i=arguments.length>2&&!!arguments[2],s=!0,u=!0;if("length"in t&&gN){var c=gN(t,"length");c&&!c.configurable&&(s=!1),c&&!c.writable&&(u=!1)}return(s||u||!i)&&(FJ?dN(t,"length",e,!0,!0):dN(t,"length",e)),t}});var xN=X((jht,_N)=>{"use strict";var BJ=ql(),zJ=Vd(),GJ=nx();_N.exports=function(){return GJ(BJ,zJ,arguments)}});var fx=X((Kht,jd)=>{"use strict";var kJ=vN(),EN=If(),qJ=Hd(),SN=xN();jd.exports=function(t){var e=qJ(arguments),i=t.length-(arguments.length-1);return kJ(e,1+(i>0?i:0),!0)};EN?EN(jd.exports,"apply",{value:SN}):jd.exports.apply=SN});var hx=X((Qht,MN)=>{"use strict";var wN=function(n){return n!==n};MN.exports=function(t,e){return t===0&&e===0?1/t===1/e:!!(t===e||wN(t)&&wN(e))}});var px=X((tpt,bN)=>{"use strict";var VJ=hx();bN.exports=function(){return typeof Object.is=="function"?Object.is:VJ}});var TN=X((ept,AN)=>{"use strict";var HJ=px(),WJ=$l();AN.exports=function(){var t=HJ();return WJ(Object,{is:t},{is:function(){return Object.is!==t}}),t}});var RN=X((npt,PN)=>{"use strict";var XJ=$l(),YJ=fx(),$J=hx(),CN=px(),ZJ=TN(),IN=YJ(CN(),Object);XJ(IN,{getPolyfill:CN,implementation:$J,shim:ZJ});PN.exports=IN});var UN=X((rpt,FN)=>{"use strict";var LN=Yd(),JJ=zd()(),jJ=ox(),KJ=mu(),mx;JJ?(NN=LN("RegExp.prototype.exec"),dx={},Kd=function(){throw dx},gx={toString:Kd,valueOf:Kd},typeof Symbol.toPrimitive=="symbol"&&(gx[Symbol.toPrimitive]=Kd),mx=function(t){if(!t||typeof t!="object")return!1;var e=KJ(t,"lastIndex"),i=e&&jJ(e,"value");if(!i)return!1;try{NN(t,gx)}catch(s){return s===dx}}):(ON=LN("Object.prototype.toString"),DN="[object RegExp]",mx=function(t){return!t||typeof t!="object"&&typeof t!="function"?!1:ON(t)===DN});var NN,dx,Kd,gx,ON,DN;FN.exports=mx});var zN=X((ipt,BN)=>{"use strict";var Of=function(){return typeof function(){}.name=="string"},Nf=Object.getOwnPropertyDescriptor;if(Nf)try{Nf([],"length")}catch(n){Nf=null}Of.functionsHaveConfigurableNames=function(){if(!Of()||!Nf)return!1;var t=Nf(function(){},"name");return!!t&&!!t.configurable};var QJ=Function.prototype.bind;Of.boundFunctionsHaveNames=function(){return Of()&&typeof QJ=="function"&&function(){}.bind().name!==""};BN.exports=Of});var qN=X((opt,kN)=>{"use strict";var GN=Zd(),tj=Jd()(),ej=zN().functionsHaveConfigurableNames(),nj=gu();kN.exports=function(t,e){if(typeof t!="function")throw new nj("\`fn\` is not a function");var i=arguments.length>2&&!!arguments[2];return(!i||ej)&&(tj?GN(t,"name",e,!0,!0):GN(t,"name",e)),t}});var yx=X((spt,VN)=>{"use strict";var rj=qN(),ij=gu(),oj=Object;VN.exports=rj(function(){if(this==null||this!==oj(this))throw new ij("RegExp.prototype.flags getter called on non-object");var t="";return this.hasIndices&&(t+="d"),this.global&&(t+="g"),this.ignoreCase&&(t+="i"),this.multiline&&(t+="m"),this.dotAll&&(t+="s"),this.unicode&&(t+="u"),this.unicodeSets&&(t+="v"),this.sticky&&(t+="y"),t},"get flags",!0)});var vx=X((apt,HN)=>{"use strict";var sj=yx(),aj=$l().supportsDescriptors,uj=Object.getOwnPropertyDescriptor;HN.exports=function(){if(aj&&/a/mig.flags==="gim"){var t=uj(RegExp.prototype,"flags");if(t&&typeof t.get=="function"&&"dotAll"in RegExp.prototype&&"hasIndices"in RegExp.prototype){var e="",i={};if(Object.defineProperty(i,"hasIndices",{get:function(){e+="d"}}),Object.defineProperty(i,"sticky",{get:function(){e+="y"}}),t.get.call(i),e==="dy")return t.get}}return sj}});var YN=X((upt,XN)=>{"use strict";var lj=$l().supportsDescriptors,cj=vx(),fj=mu(),hj=Object.defineProperty,pj=K_(),WN=ix(),dj=/a/;XN.exports=function(){if(!lj||!WN)throw new pj("RegExp.prototype.flags requires a true ES5 environment that supports property descriptors");var t=cj(),e=WN(dj),i=fj(e,"flags");return(!i||i.get!==t)&&hj(e,"flags",{configurable:!0,enumerable:!1,get:t}),t}});var jN=X((lpt,JN)=>{"use strict";var gj=$l(),mj=fx(),yj=yx(),$N=vx(),vj=YN(),ZN=mj($N());gj(ZN,{getPolyfill:$N,implementation:yj,shim:vj});JN.exports=ZN});var t2=X((cpt,QN)=>{"use strict";var KN=Yd(),_j=KN("Date.prototype.getDay"),xj=function(t){try{return _j(t),!0}catch(e){return!1}},Ej=KN("Object.prototype.toString"),Sj="[object Date]",wj=zd()();QN.exports=function(t){return typeof t!="object"||t===null?!1:wj?xj(t):Ej(t)===Sj}});var _x=X((fpt,f2)=>{var e2=Z_(),n2=iN(),r2=RN(),i2=UN(),o2=jN(),s2=t2(),a2=Date.prototype.getTime;function c2(n,t,e){var i=e||{};return(i.strict?r2(n,t):n===t)?!0:!n||!t||typeof n!="object"&&typeof t!="object"?i.strict?r2(n,t):n==t:Mj(n,t,i)}function u2(n){return n==null}function l2(n){return!(!n||typeof n!="object"||typeof n.length!="number"||typeof n.copy!="function"||typeof n.slice!="function"||n.length>0&&typeof n[0]!="number")}function Mj(n,t,e){var i,s;if(typeof n!=typeof t||u2(n)||u2(t)||n.prototype!==t.prototype||n2(n)!==n2(t))return!1;var u=i2(n),c=i2(t);if(u!==c)return!1;if(u||c)return n.source===t.source&&o2(n)===o2(t);if(s2(n)&&s2(t))return a2.call(n)===a2.call(t);var f=l2(n),p=l2(t);if(f!==p)return!1;if(f||p){if(n.length!==t.length)return!1;for(i=0;i<n.length;i++)if(n[i]!==t[i])return!1;return!0}if(typeof n!=typeof t)return!1;try{var d=e2(n),g=e2(t)}catch(y){return!1}if(d.length!==g.length)return!1;for(d.sort(),g.sort(),i=d.length-1;i>=0;i--)if(d[i]!=g[i])return!1;for(i=d.length-1;i>=0;i--)if(s=d[i],!c2(n[s],t[s],e))return!1;return!0}f2.exports=c2});var Rx=X((ygt,v2)=>{var dK=_x(),rs=function(n){this.precision=n&&n.precision?n.precision:17,this.direction=n&&n.direction?n.direction:!1,this.pseudoNode=n&&n.pseudoNode?n.pseudoNode:!1,this.objectComparator=n&&n.objectComparator?n.objectComparator:gK};rs.prototype.compare=function(n,t){if(n.type!==t.type||!y2(n,t))return!1;switch(n.type){case"Point":return this.compareCoord(n.coordinates,t.coordinates);case"LineString":return this.compareLine(n.coordinates,t.coordinates,0,!1);case"Polygon":return this.comparePolygon(n,t);case"Feature":return this.compareFeature(n,t);default:if(n.type.indexOf("Multi")===0){var e=this,i=m2(n),s=m2(t);return i.every(function(u){return this.some(function(c){return e.compare(u,c)})},s)}}return!1};function m2(n){return n.coordinates.map(function(t){return{type:n.type.replace("Multi",""),coordinates:t}})}function y2(n,t){return n.hasOwnProperty("coordinates")?n.coordinates.length===t.coordinates.length:n.length===t.length}rs.prototype.compareCoord=function(n,t){if(n.length!==t.length)return!1;for(var e=0;e<n.length;e++)if(n[e].toFixed(this.precision)!==t[e].toFixed(this.precision))return!1;return!0};rs.prototype.compareLine=function(n,t,e,i){if(!y2(n,t))return!1;var s=this.pseudoNode?n:this.removePseudo(n),u=this.pseudoNode?t:this.removePseudo(t);if(!(i&&!this.compareCoord(s[0],u[0])&&(u=this.fixStartIndex(u,s),!u))){var c=this.compareCoord(s[e],u[e]);return this.direction||c?this.comparePath(s,u):this.compareCoord(s[e],u[u.length-(1+e)])?this.comparePath(s.slice().reverse(),u):!1}};rs.prototype.fixStartIndex=function(n,t){for(var e,i=-1,s=0;s<n.length;s++)if(this.compareCoord(n[s],t[0])){i=s;break}return i>=0&&(e=[].concat(n.slice(i,n.length),n.slice(1,i+1))),e};rs.prototype.comparePath=function(n,t){var e=this;return n.every(function(i,s){return e.compareCoord(i,this[s])},t)};rs.prototype.comparePolygon=function(n,t){if(this.compareLine(n.coordinates[0],t.coordinates[0],1,!0)){var e=n.coordinates.slice(1,n.coordinates.length),i=t.coordinates.slice(1,t.coordinates.length),s=this;return e.every(function(u){return this.some(function(c){return s.compareLine(u,c,1,!0)})},i)}else return!1};rs.prototype.compareFeature=function(n,t){return n.id!==t.id||!this.objectComparator(n.properties,t.properties)||!this.compareBBox(n,t)?!1:this.compare(n.geometry,t.geometry)};rs.prototype.compareBBox=function(n,t){return!!(!n.bbox&&!t.bbox||n.bbox&&t.bbox&&this.compareCoord(n.bbox,t.bbox))};rs.prototype.removePseudo=function(n){return n};function gK(n,t){return dK(n,t,{strict:!0})}v2.exports=rs});var _2=X((Igt,eg)=>{function Ma(n,t,e,i){this.dataset=[],this.epsilon=1,this.minPts=2,this.distance=this._euclideanDistance,this.clusters=[],this.noise=[],this._visited=[],this._assigned=[],this._datasetLength=0,this._init(n,t,e,i)}Ma.prototype.run=function(n,t,e,i){this._init(n,t,e,i);for(var s=0;s<this._datasetLength;s++)if(this._visited[s]!==1){this._visited[s]=1;var u=this._regionQuery(s);if(u.length<this.minPts)this.noise.push(s);else{var c=this.clusters.length;this.clusters.push([]),this._addToCluster(s,c),this._expandCluster(c,u)}}return this.clusters};Ma.prototype._init=function(n,t,e,i){if(n){if(!(n instanceof Array))throw Error("Dataset must be of type array, "+typeof n+" given");this.dataset=n,this.clusters=[],this.noise=[],this._datasetLength=n.length,this._visited=new Array(this._datasetLength),this._assigned=new Array(this._datasetLength)}t&&(this.epsilon=t),e&&(this.minPts=e),i&&(this.distance=i)};Ma.prototype._expandCluster=function(n,t){for(var e=0;e<t.length;e++){var i=t[e];if(this._visited[i]!==1){this._visited[i]=1;var s=this._regionQuery(i);s.length>=this.minPts&&(t=this._mergeArrays(t,s))}this._assigned[i]!==1&&this._addToCluster(i,n)}};Ma.prototype._addToCluster=function(n,t){this.clusters[t].push(n),this._assigned[n]=1};Ma.prototype._regionQuery=function(n){for(var t=[],e=0;e<this._datasetLength;e++){var i=this.distance(this.dataset[n],this.dataset[e]);i<this.epsilon&&t.push(e)}return t};Ma.prototype._mergeArrays=function(n,t){for(var e=t.length,i=0;i<e;i++){var s=t[i];n.indexOf(s)<0&&n.push(s)}return n};Ma.prototype._euclideanDistance=function(n,t){for(var e=0,i=Math.min(n.length,t.length);i--;)e+=(n[i]-t[i])*(n[i]-t[i]);return Math.sqrt(e)};typeof eg!="undefined"&&eg.exports&&(eg.exports=Ma)});var x2=X((Pgt,ng)=>{function ba(n,t,e){this.k=3,this.dataset=[],this.assignments=[],this.centroids=[],this.init(n,t,e)}ba.prototype.init=function(n,t,e){this.assignments=[],this.centroids=[],typeof n!="undefined"&&(this.dataset=n),typeof t!="undefined"&&(this.k=t),typeof e!="undefined"&&(this.distance=e)};ba.prototype.run=function(n,t){this.init(n,t);for(var e=this.dataset.length,i=0;i<this.k;i++)this.centroids[i]=this.randomCentroid();for(var s=!0;s;){s=this.assign();for(var u=0;u<this.k;u++){for(var c=new Array(g),f=0,p=0;p<g;p++)c[p]=0;for(var d=0;d<e;d++){var g=this.dataset[d].length;if(u===this.assignments[d]){for(var p=0;p<g;p++)c[p]+=this.dataset[d][p];f++}}if(f>0){for(var p=0;p<g;p++)c[p]/=f;this.centroids[u]=c}else this.centroids[u]=this.randomCentroid(),s=!0}}return this.getClusters()};ba.prototype.randomCentroid=function(){var n=this.dataset.length-1,t,e;do e=Math.round(Math.random()*n),t=this.dataset[e];while(this.centroids.indexOf(t)>=0);return t};ba.prototype.assign=function(){for(var n=!1,t=this.dataset.length,e,i=0;i<t;i++)e=this.argmin(this.dataset[i],this.centroids,this.distance),e!=this.assignments[i]&&(this.assignments[i]=e,n=!0);return n};ba.prototype.getClusters=function(){for(var n=new Array(this.k),t,e=0;e<this.assignments.length;e++)t=this.assignments[e],typeof n[t]=="undefined"&&(n[t]=[]),n[t].push(e);return n};ba.prototype.argmin=function(n,t,e){for(var i=Number.MAX_VALUE,s=0,u=t.length,c,f=0;f<u;f++)c=e(n,t[f]),c<i&&(i=c,s=f);return s};ba.prototype.distance=function(n,t){for(var e=0,i=Math.min(n.length,t.length);i--;){var s=n[i]-t[i];e+=s*s}return Math.sqrt(e)};typeof ng!="undefined"&&ng.exports&&(ng.exports=ba)});var Lx=X((Rgt,rg)=>{function is(n,t,e){this._queue=[],this._priorities=[],this._sorting="desc",this._init(n,t,e)}is.prototype.insert=function(n,t){for(var e=this._queue.length,i=e;i--;){var s=this._priorities[i];this._sorting==="desc"?t>s&&(e=i):t<s&&(e=i)}this._insertAt(n,t,e)};is.prototype.remove=function(n){for(var t=this._queue.length;t--;){var e=this._queue[t];if(n===e){this._queue.splice(t,1),this._priorities.splice(t,1);break}}};is.prototype.forEach=function(n){this._queue.forEach(n)};is.prototype.getElements=function(){return this._queue};is.prototype.getElementPriority=function(n){return this._priorities[n]};is.prototype.getPriorities=function(){return this._priorities};is.prototype.getElementsWithPriorities=function(){for(var n=[],t=0,e=this._queue.length;t<e;t++)n.push([this._queue[t],this._priorities[t]]);return n};is.prototype._init=function(n,t,e){if(n&&t){if(this._queue=[],this._priorities=[],n.length!==t.length)throw new Error("Arrays must have the same length");for(var i=0;i<n.length;i++)this.insert(n[i],t[i])}e&&(this._sorting=e)};is.prototype._insertAt=function(n,t,e){this._queue.length===e?(this._queue.push(n),this._priorities.push(t)):(this._queue.splice(e,0,n),this._priorities.splice(e,0,t))};typeof rg!="undefined"&&rg.exports&&(rg.exports=is)});var S2=X((Lgt,Jl)=>{typeof Jl!="undefined"&&Jl.exports&&(E2=Lx());var E2;function Bs(n,t,e,i){this.epsilon=1,this.minPts=1,this.distance=this._euclideanDistance,this._reachability=[],this._processed=[],this._coreDistance=0,this._orderedList=[],this._init(n,t,e,i)}Bs.prototype.run=function(n,t,e,i){this._init(n,t,e,i);for(var s=0,u=this.dataset.length;s<u;s++)if(this._processed[s]!==1){this._processed[s]=1,this.clusters.push([s]);var c=this.clusters.length-1;this._orderedList.push(s);var f=new E2(null,null,"asc"),p=this._regionQuery(s);this._distanceToCore(s)!==void 0&&(this._updateQueue(s,p,f),this._expandCluster(c,f))}return this.clusters};Bs.prototype.getReachabilityPlot=function(){for(var n=[],t=0,e=this._orderedList.length;t<e;t++){var i=this._orderedList[t],s=this._reachability[i];n.push([i,s])}return n};Bs.prototype._init=function(n,t,e,i){if(n){if(!(n instanceof Array))throw Error("Dataset must be of type array, "+typeof n+" given");this.dataset=n,this.clusters=[],this._reachability=new Array(this.dataset.length),this._processed=new Array(this.dataset.length),this._coreDistance=0,this._orderedList=[]}t&&(this.epsilon=t),e&&(this.minPts=e),i&&(this.distance=i)};Bs.prototype._updateQueue=function(n,t,e){var i=this;this._coreDistance=this._distanceToCore(n),t.forEach(function(s){if(i._processed[s]===void 0){var u=i.distance(i.dataset[n],i.dataset[s]),c=Math.max(i._coreDistance,u);i._reachability[s]===void 0?(i._reachability[s]=c,e.insert(s,c)):c<i._reachability[s]&&(i._reachability[s]=c,e.remove(s),e.insert(s,c))}})};Bs.prototype._expandCluster=function(n,t){for(var e=t.getElements(),i=0,s=e.length;i<s;i++){var u=e[i];if(this._processed[u]===void 0){var c=this._regionQuery(u);this._processed[u]=1,this.clusters[n].push(u),this._orderedList.push(u),this._distanceToCore(u)!==void 0&&(this._updateQueue(u,c,t),this._expandCluster(n,t))}}};Bs.prototype._distanceToCore=function(n){for(var t=this.epsilon,e=0;e<t;e++){var i=this._regionQuery(n,e);if(i.length>=this.minPts)return e}};Bs.prototype._regionQuery=function(n,t){t=t||this.epsilon;for(var e=[],i=0,s=this.dataset.length;i<s;i++)this.distance(this.dataset[n],this.dataset[i])<t&&e.push(i);return e};Bs.prototype._euclideanDistance=function(n,t){for(var e=0,i=Math.min(n.length,t.length);i--;)e+=(n[i]-t[i])*(n[i]-t[i]);return Math.sqrt(e)};typeof Jl!="undefined"&&Jl.exports&&(Jl.exports=Bs)});var w2=X((Ngt,ig)=>{typeof ig!="undefined"&&ig.exports&&(ig.exports={DBSCAN:_2(),KMEANS:x2(),OPTICS:S2(),PriorityQueue:Lx()})});var Nx=X((zgt,b2)=>{"use strict";b2.exports={eudist:function(t,e,i){for(var s=t.length,u=0,c=0;c<s;c++){var f=(t[c]||0)-(e[c]||0);u+=f*f}return i?Math.sqrt(u):u},mandist:function(t,e,i){for(var s=t.length,u=0,c=0;c<s;c++)u+=Math.abs((t[c]||0)-(e[c]||0));return i?Math.sqrt(u):u},dist:function(t,e,i){var s=Math.abs(t-e);return i?s:s*s}}});var C2=X((Ggt,T2)=>{"use strict";var A2=Nx(),EK=A2.eudist,SK=A2.dist;T2.exports={kmrand:function(t,e){for(var i={},s=[],u=e<<2,c=t.length,f=t[0].length>0;s.length<e&&u-- >0;){var p=t[Math.floor(Math.random()*c)],d=f?p.join("_"):""+p;i[d]||(i[d]=!0,s.push(p))}if(s.length<e)throw new Error("Error initializating clusters");return s},kmpp:function(t,e){var i=t[0].length?EK:SK,s=[],u=t.length,c=t[0].length>0,f={},p=t[Math.floor(Math.random()*u)],d=c?p.join("_"):""+p;for(s.push(p),f[d]=!0;s.length<e;){for(var g=[],y=s.length,v=0,E=[],M=0;M<u;M++){for(var A=1/0,_=0;_<y;_++){var x=i(t[M],s[_]);x<=A&&(A=x)}g[M]=A}for(var T=0;T<u;T++)v+=g[T];for(var w=0;w<u;w++)E[w]={i:w,v:t[w],pr:g[w]/v,cs:0};E.sort(function(D,P){return D.pr-P.pr}),E[0].cs=E[0].pr;for(var R=1;R<u;R++)E[R].cs=E[R-1].cs+E[R].pr;for(var B=Math.random(),U=0;U<u-1&&E[U++].cs<B;);s.push(E[U-1].v)}return s}}});var N2=X((Vgt,L2)=>{"use strict";var Ox=Nx(),R2=C2(),wK=Ox.eudist,kgt=Ox.mandist,qgt=Ox.dist,MK=R2.kmrand,bK=R2.kmpp,I2=1e4;function P2(n,t,e){e=e||[];for(var i=0;i<n;i++)e[i]=t;return e}function AK(n,t,e,i){var s=[],u=[],c=[],f=[],p=!1,d=i||I2,g=n.length,y=n[0].length,v=y>0,E=[];if(e)e=="kmrand"?s=MK(n,t):e=="kmpp"?s=bK(n,t):s=e;else for(var M={};s.length<t;){var A=Math.floor(Math.random()*g);M[A]||(M[A]=!0,s.push(n[A]))}do{P2(t,0,E);for(var _=0;_<g;_++){for(var x=1/0,T=0,w=0;w<t;w++){var f=v?wK(n[_],s[w]):Math.abs(n[_]-s[w]);f<=x&&(x=f,T=w)}c[_]=T,E[T]++}for(var R=[],u=[],B=0,U=0;U<t;U++)R[U]=v?P2(y,0,R[U]):0,u[U]=s[U];if(v){for(var D=0;D<t;D++)s[D]=[];for(var P=0;P<g;P++)for(var ct=c[P],L=R[ct],W=n[P],V=0;V<y;V++)L[V]+=W[V];p=!0;for(var Mt=0;Mt<t;Mt++){for(var $=s[Mt],gt=R[Mt],ft=u[Mt],vt=E[Mt],it=0;it<y;it++)$[it]=gt[it]/vt||0;if(p){for(var lt=0;lt<y;lt++)if(ft[lt]!=$[lt]){p=!1;break}}}}else{for(var H=0;H<g;H++){var At=c[H];R[At]+=n[H]}for(var It=0;It<t;It++)s[It]=R[It]/E[It]||0;p=!0;for(var jt=0;jt<t;jt++)if(u[jt]!=s[jt]){p=!1;break}}p=p||--d<=0}while(!p);return{it:I2-d,k:t,idxs:c,centroids:s}}L2.exports=AK});var ec=X((Gx,kx)=>{(function(n,t){typeof Gx=="object"&&typeof kx!="undefined"?kx.exports=t():typeof define=="function"&&define.amd?define(t):(n=typeof globalThis!="undefined"?globalThis:n||self,n.polygonClipping=t())})(Gx,function(){"use strict";function n(j,b){var I={label:0,sent:function(){if(G[0]&1)throw G[1];return G[1]},trys:[],ops:[]},F,k,G,rt;return rt={next:tt(0),throw:tt(1),return:tt(2)},typeof Symbol=="function"&&(rt[Symbol.iterator]=function(){return this}),rt;function tt(ht){return function(O){return pt([ht,O])}}function pt(ht){if(F)throw new TypeError("Generator is already executing.");for(;I;)try{if(F=1,k&&(G=ht[0]&2?k.return:ht[0]?k.throw||((G=k.return)&&G.call(k),0):k.next)&&!(G=G.call(k,ht[1])).done)return G;switch(k=0,G&&(ht=[ht[0]&2,G.value]),ht[0]){case 0:case 1:G=ht;break;case 4:return I.label++,{value:ht[1],done:!1};case 5:I.label++,k=ht[1],ht=[0];continue;case 7:ht=I.ops.pop(),I.trys.pop();continue;default:if(G=I.trys,!(G=G.length>0&&G[G.length-1])&&(ht[0]===6||ht[0]===2)){I=0;continue}if(ht[0]===3&&(!G||ht[1]>G[0]&&ht[1]<G[3])){I.label=ht[1];break}if(ht[0]===6&&I.label<G[1]){I.label=G[1],G=ht;break}if(G&&I.label<G[2]){I.label=G[2],I.ops.push(ht);break}G[2]&&I.ops.pop(),I.trys.pop();continue}ht=b.call(j,I)}catch(O){ht=[6,O],k=0}finally{F=G=0}if(ht[0]&5)throw ht[1];return{value:ht[0]?ht[1]:void 0,done:!0}}}var t=function(){function j(b,I){this.next=null,this.key=b,this.data=I,this.left=null,this.right=null}return j}();function e(j,b){return j>b?1:j<b?-1:0}function i(j,b,I){for(var F=new t(null,null),k=F,G=F;;){var rt=I(j,b.key);if(rt<0){if(b.left===null)break;if(I(j,b.left.key)<0){var tt=b.left;if(b.left=tt.right,tt.right=b,b=tt,b.left===null)break}G.left=b,G=b,b=b.left}else if(rt>0){if(b.right===null)break;if(I(j,b.right.key)>0){var tt=b.right;if(b.right=tt.left,tt.left=b,b=tt,b.right===null)break}k.right=b,k=b,b=b.right}else break}return k.right=b.left,G.left=b.right,b.left=F.right,b.right=F.left,b}function s(j,b,I,F){var k=new t(j,b);if(I===null)return k.left=k.right=null,k;I=i(j,I,F);var G=F(j,I.key);return G<0?(k.left=I.left,k.right=I,I.left=null):G>=0&&(k.right=I.right,k.left=I,I.right=null),k}function u(j,b,I){var F=null,k=null;if(b){b=i(j,b,I);var G=I(b.key,j);G===0?(F=b.left,k=b.right):G<0?(k=b.right,b.right=null,F=b):(F=b.left,b.left=null,k=b)}return{left:F,right:k}}function c(j,b,I){return b===null?j:(j===null||(b=i(j.key,b,I),b.left=j),b)}function f(j,b,I,F,k){if(j){F(""+b+(I?"\\u2514\\u2500\\u2500 ":"\\u251C\\u2500\\u2500 ")+k(j)+\`
|
|
8011
8011
|
\`);var G=b+(I?" ":"\\u2502 ");j.left&&f(j.left,G,!1,F,k),j.right&&f(j.right,G,!0,F,k)}}var p=function(){function j(b){b===void 0&&(b=e),this._root=null,this._size=0,this._comparator=b}return j.prototype.insert=function(b,I){return this._size++,this._root=s(b,I,this._root,this._comparator)},j.prototype.add=function(b,I){var F=new t(b,I);this._root===null&&(F.left=F.right=null,this._size++,this._root=F);var k=this._comparator,G=i(b,this._root,k),rt=k(b,G.key);return rt===0?this._root=G:(rt<0?(F.left=G.left,F.right=G,G.left=null):rt>0&&(F.right=G.right,F.left=G,G.right=null),this._size++,this._root=F),this._root},j.prototype.remove=function(b){this._root=this._remove(b,this._root,this._comparator)},j.prototype._remove=function(b,I,F){var k;if(I===null)return null;I=i(b,I,F);var G=F(b,I.key);return G===0?(I.left===null?k=I.right:(k=i(b,I.left,F),k.right=I.right),this._size--,k):I},j.prototype.pop=function(){var b=this._root;if(b){for(;b.left;)b=b.left;return this._root=i(b.key,this._root,this._comparator),this._root=this._remove(b.key,this._root,this._comparator),{key:b.key,data:b.data}}return null},j.prototype.findStatic=function(b){for(var I=this._root,F=this._comparator;I;){var k=F(b,I.key);if(k===0)return I;k<0?I=I.left:I=I.right}return null},j.prototype.find=function(b){return this._root&&(this._root=i(b,this._root,this._comparator),this._comparator(b,this._root.key)!==0)?null:this._root},j.prototype.contains=function(b){for(var I=this._root,F=this._comparator;I;){var k=F(b,I.key);if(k===0)return!0;k<0?I=I.left:I=I.right}return!1},j.prototype.forEach=function(b,I){for(var F=this._root,k=[],G=!1;!G;)F!==null?(k.push(F),F=F.left):k.length!==0?(F=k.pop(),b.call(I,F),F=F.right):G=!0;return this},j.prototype.range=function(b,I,F,k){for(var G=[],rt=this._comparator,tt=this._root,pt;G.length!==0||tt;)if(tt)G.push(tt),tt=tt.left;else{if(tt=G.pop(),pt=rt(tt.key,I),pt>0)break;if(rt(tt.key,b)>=0&&F.call(k,tt))return this;tt=tt.right}return this},j.prototype.keys=function(){var b=[];return this.forEach(function(I){var F=I.key;return b.push(F)}),b},j.prototype.values=function(){var b=[];return this.forEach(function(I){var F=I.data;return b.push(F)}),b},j.prototype.min=function(){return this._root?this.minNode(this._root).key:null},j.prototype.max=function(){return this._root?this.maxNode(this._root).key:null},j.prototype.minNode=function(b){if(b===void 0&&(b=this._root),b)for(;b.left;)b=b.left;return b},j.prototype.maxNode=function(b){if(b===void 0&&(b=this._root),b)for(;b.right;)b=b.right;return b},j.prototype.at=function(b){for(var I=this._root,F=!1,k=0,G=[];!F;)if(I)G.push(I),I=I.left;else if(G.length>0){if(I=G.pop(),k===b)return I;k++,I=I.right}else F=!0;return null},j.prototype.next=function(b){var I=this._root,F=null;if(b.right){for(F=b.right;F.left;)F=F.left;return F}for(var k=this._comparator;I;){var G=k(b.key,I.key);if(G===0)break;G<0?(F=I,I=I.left):I=I.right}return F},j.prototype.prev=function(b){var I=this._root,F=null;if(b.left!==null){for(F=b.left;F.right;)F=F.right;return F}for(var k=this._comparator;I;){var G=k(b.key,I.key);if(G===0)break;G<0?I=I.left:(F=I,I=I.right)}return F},j.prototype.clear=function(){return this._root=null,this._size=0,this},j.prototype.toList=function(){return y(this._root)},j.prototype.load=function(b,I,F){I===void 0&&(I=[]),F===void 0&&(F=!1);var k=b.length,G=this._comparator;if(F&&M(b,I,0,k-1,G),this._root===null)this._root=d(b,I,0,k),this._size=k;else{var rt=E(this.toList(),g(b,I),G);k=this._size+k,this._root=v({head:rt},0,k)}return this},j.prototype.isEmpty=function(){return this._root===null},Object.defineProperty(j.prototype,"size",{get:function(){return this._size},enumerable:!0,configurable:!0}),Object.defineProperty(j.prototype,"root",{get:function(){return this._root},enumerable:!0,configurable:!0}),j.prototype.toString=function(b){b===void 0&&(b=function(F){return String(F.key)});var I=[];return f(this._root,"",!0,function(F){return I.push(F)},b),I.join("")},j.prototype.update=function(b,I,F){var k=this._comparator,G=u(b,this._root,k),rt=G.left,tt=G.right;k(b,I)<0?tt=s(I,F,tt,k):rt=s(I,F,rt,k),this._root=c(rt,tt,k)},j.prototype.split=function(b){return u(b,this._root,this._comparator)},j.prototype[Symbol.iterator]=function(){var b,I,F;return n(this,function(k){switch(k.label){case 0:b=this._root,I=[],F=!1,k.label=1;case 1:return F?[3,6]:b===null?[3,2]:(I.push(b),b=b.left,[3,5]);case 2:return I.length===0?[3,4]:(b=I.pop(),[4,b]);case 3:return k.sent(),b=b.right,[3,5];case 4:F=!0,k.label=5;case 5:return[3,1];case 6:return[2]}})},j}();function d(j,b,I,F){var k=F-I;if(k>0){var G=I+Math.floor(k/2),rt=j[G],tt=b[G],pt=new t(rt,tt);return pt.left=d(j,b,I,G),pt.right=d(j,b,G+1,F),pt}return null}function g(j,b){for(var I=new t(null,null),F=I,k=0;k<j.length;k++)F=F.next=new t(j[k],b[k]);return F.next=null,I.next}function y(j){for(var b=j,I=[],F=!1,k=new t(null,null),G=k;!F;)b?(I.push(b),b=b.left):I.length>0?(b=G=G.next=I.pop(),b=b.right):F=!0;return G.next=null,k.next}function v(j,b,I){var F=I-b;if(F>0){var k=b+Math.floor(F/2),G=v(j,b,k),rt=j.head;return rt.left=G,j.head=j.head.next,rt.right=v(j,k+1,I),rt}return null}function E(j,b,I){for(var F=new t(null,null),k=F,G=j,rt=b;G!==null&&rt!==null;)I(G.key,rt.key)<0?(k.next=G,G=G.next):(k.next=rt,rt=rt.next),k=k.next;return G!==null?k.next=G:rt!==null&&(k.next=rt),F.next}function M(j,b,I,F,k){if(!(I>=F)){for(var G=j[I+F>>1],rt=I-1,tt=F+1;;){do rt++;while(k(j[rt],G)<0);do tt--;while(k(j[tt],G)>0);if(rt>=tt)break;var pt=j[rt];j[rt]=j[tt],j[tt]=pt,pt=b[rt],b[rt]=b[tt],b[tt]=pt}M(j,b,I,tt,k),M(j,b,tt+1,F,k)}}let A=(j,b)=>j.ll.x<=b.x&&b.x<=j.ur.x&&j.ll.y<=b.y&&b.y<=j.ur.y,_=(j,b)=>{if(b.ur.x<j.ll.x||j.ur.x<b.ll.x||b.ur.y<j.ll.y||j.ur.y<b.ll.y)return null;let I=j.ll.x<b.ll.x?b.ll.x:j.ll.x,F=j.ur.x<b.ur.x?j.ur.x:b.ur.x,k=j.ll.y<b.ll.y?b.ll.y:j.ll.y,G=j.ur.y<b.ur.y?j.ur.y:b.ur.y;return{ll:{x:I,y:k},ur:{x:F,y:G}}},x=Number.EPSILON;x===void 0&&(x=Math.pow(2,-52));let T=x*x,w=(j,b)=>{if(-x<j&&j<x&&-x<b&&b<x)return 0;let I=j-b;return I*I<T*j*b?0:j<b?-1:1};class R{constructor(){this.reset()}reset(){this.xRounder=new B,this.yRounder=new B}round(b,I){return{x:this.xRounder.round(b),y:this.yRounder.round(I)}}}class B{constructor(){this.tree=new p,this.round(0)}round(b){let I=this.tree.add(b),F=this.tree.prev(I);if(F!==null&&w(I.key,F.key)===0)return this.tree.remove(b),F.key;let k=this.tree.next(I);return k!==null&&w(I.key,k.key)===0?(this.tree.remove(b),k.key):b}}let U=new R,D=11102230246251565e-32,P=134217729,ct=(3+8*D)*D;function L(j,b,I,F,k){let G,rt,tt,pt,ht=b[0],O=F[0],Q=0,J=0;O>ht==O>-ht?(G=ht,ht=b[++Q]):(G=O,O=F[++J]);let et=0;if(Q<j&&J<I)for(O>ht==O>-ht?(rt=ht+G,tt=G-(rt-ht),ht=b[++Q]):(rt=O+G,tt=G-(rt-O),O=F[++J]),G=rt,tt!==0&&(k[et++]=tt);Q<j&&J<I;)O>ht==O>-ht?(rt=G+ht,pt=rt-G,tt=G-(rt-pt)+(ht-pt),ht=b[++Q]):(rt=G+O,pt=rt-G,tt=G-(rt-pt)+(O-pt),O=F[++J]),G=rt,tt!==0&&(k[et++]=tt);for(;Q<j;)rt=G+ht,pt=rt-G,tt=G-(rt-pt)+(ht-pt),ht=b[++Q],G=rt,tt!==0&&(k[et++]=tt);for(;J<I;)rt=G+O,pt=rt-G,tt=G-(rt-pt)+(O-pt),O=F[++J],G=rt,tt!==0&&(k[et++]=tt);return(G!==0||et===0)&&(k[et++]=G),et}function W(j,b){let I=b[0];for(let F=1;F<j;F++)I+=b[F];return I}function V(j){return new Float64Array(j)}let Mt=(3+16*D)*D,$=(2+12*D)*D,gt=(9+64*D)*D*D,ft=V(4),vt=V(8),it=V(12),lt=V(16),H=V(4);function At(j,b,I,F,k,G,rt){let tt,pt,ht,O,Q,J,et,Tt,kt,ie,oe,we,ye,be,Ae,Un,dr,_n,pe=j-k,xn=I-k,Nn=b-G,Cn=F-G;be=pe*Cn,J=P*pe,et=J-(J-pe),Tt=pe-et,J=P*Cn,kt=J-(J-Cn),ie=Cn-kt,Ae=Tt*ie-(be-et*kt-Tt*kt-et*ie),Un=Nn*xn,J=P*Nn,et=J-(J-Nn),Tt=Nn-et,J=P*xn,kt=J-(J-xn),ie=xn-kt,dr=Tt*ie-(Un-et*kt-Tt*kt-et*ie),oe=Ae-dr,Q=Ae-oe,ft[0]=Ae-(oe+Q)+(Q-dr),we=be+oe,Q=we-be,ye=be-(we-Q)+(oe-Q),oe=ye-Un,Q=ye-oe,ft[1]=ye-(oe+Q)+(Q-Un),_n=we+oe,Q=_n-we,ft[2]=we-(_n-Q)+(oe-Q),ft[3]=_n;let En=W(4,ft),Kr=$*rt;if(En>=Kr||-En>=Kr||(Q=j-pe,tt=j-(pe+Q)+(Q-k),Q=I-xn,ht=I-(xn+Q)+(Q-k),Q=b-Nn,pt=b-(Nn+Q)+(Q-G),Q=F-Cn,O=F-(Cn+Q)+(Q-G),tt===0&&pt===0&&ht===0&&O===0)||(Kr=gt*rt+ct*Math.abs(En),En+=pe*O+Cn*tt-(Nn*ht+xn*pt),En>=Kr||-En>=Kr))return En;be=tt*Cn,J=P*tt,et=J-(J-tt),Tt=tt-et,J=P*Cn,kt=J-(J-Cn),ie=Cn-kt,Ae=Tt*ie-(be-et*kt-Tt*kt-et*ie),Un=pt*xn,J=P*pt,et=J-(J-pt),Tt=pt-et,J=P*xn,kt=J-(J-xn),ie=xn-kt,dr=Tt*ie-(Un-et*kt-Tt*kt-et*ie),oe=Ae-dr,Q=Ae-oe,H[0]=Ae-(oe+Q)+(Q-dr),we=be+oe,Q=we-be,ye=be-(we-Q)+(oe-Q),oe=ye-Un,Q=ye-oe,H[1]=ye-(oe+Q)+(Q-Un),_n=we+oe,Q=_n-we,H[2]=we-(_n-Q)+(oe-Q),H[3]=_n;let Ar=L(4,ft,4,H,vt);be=pe*O,J=P*pe,et=J-(J-pe),Tt=pe-et,J=P*O,kt=J-(J-O),ie=O-kt,Ae=Tt*ie-(be-et*kt-Tt*kt-et*ie),Un=Nn*ht,J=P*Nn,et=J-(J-Nn),Tt=Nn-et,J=P*ht,kt=J-(J-ht),ie=ht-kt,dr=Tt*ie-(Un-et*kt-Tt*kt-et*ie),oe=Ae-dr,Q=Ae-oe,H[0]=Ae-(oe+Q)+(Q-dr),we=be+oe,Q=we-be,ye=be-(we-Q)+(oe-Q),oe=ye-Un,Q=ye-oe,H[1]=ye-(oe+Q)+(Q-Un),_n=we+oe,Q=_n-we,H[2]=we-(_n-Q)+(oe-Q),H[3]=_n;let q=L(Ar,vt,4,H,it);be=tt*O,J=P*tt,et=J-(J-tt),Tt=tt-et,J=P*O,kt=J-(J-O),ie=O-kt,Ae=Tt*ie-(be-et*kt-Tt*kt-et*ie),Un=pt*ht,J=P*pt,et=J-(J-pt),Tt=pt-et,J=P*ht,kt=J-(J-ht),ie=ht-kt,dr=Tt*ie-(Un-et*kt-Tt*kt-et*ie),oe=Ae-dr,Q=Ae-oe,H[0]=Ae-(oe+Q)+(Q-dr),we=be+oe,Q=we-be,ye=be-(we-Q)+(oe-Q),oe=ye-Un,Q=ye-oe,H[1]=ye-(oe+Q)+(Q-Un),_n=we+oe,Q=_n-we,H[2]=we-(_n-Q)+(oe-Q),H[3]=_n;let at=L(q,it,4,H,lt);return lt[at-1]}function It(j,b,I,F,k,G){let rt=(b-G)*(I-k),tt=(j-k)*(F-G),pt=rt-tt,ht=Math.abs(rt+tt);return Math.abs(pt)>=Mt*ht?pt:-At(j,b,I,F,k,G,ht)}let jt=(j,b)=>j.x*b.y-j.y*b.x,nt=(j,b)=>j.x*b.x+j.y*b.y,bt=(j,b,I)=>{let F=It(j.x,j.y,b.x,b.y,I.x,I.y);return F>0?-1:F<0?1:0},Vt=j=>Math.sqrt(nt(j,j)),$t=(j,b,I)=>{let F={x:b.x-j.x,y:b.y-j.y},k={x:I.x-j.x,y:I.y-j.y};return jt(k,F)/Vt(k)/Vt(F)},Ut=(j,b,I)=>{let F={x:b.x-j.x,y:b.y-j.y},k={x:I.x-j.x,y:I.y-j.y};return nt(k,F)/Vt(k)/Vt(F)},Gt=(j,b,I)=>b.y===0?null:{x:j.x+b.x/b.y*(I-j.y),y:I},Ct=(j,b,I)=>b.x===0?null:{x:I,y:j.y+b.y/b.x*(I-j.x)},ee=(j,b,I,F)=>{if(b.x===0)return Ct(I,F,j.x);if(F.x===0)return Ct(j,b,I.x);if(b.y===0)return Gt(I,F,j.y);if(F.y===0)return Gt(j,b,I.y);let k=jt(b,F);if(k==0)return null;let G={x:I.x-j.x,y:I.y-j.y},rt=jt(G,b)/k,tt=jt(G,F)/k,pt=j.x+tt*b.x,ht=I.x+rt*F.x,O=j.y+tt*b.y,Q=I.y+rt*F.y,J=(pt+ht)/2,et=(O+Q)/2;return{x:J,y:et}};class Z{static compare(b,I){let F=Z.comparePoints(b.point,I.point);return F!==0?F:(b.point!==I.point&&b.link(I),b.isLeft!==I.isLeft?b.isLeft?1:-1:_t.compare(b.segment,I.segment))}static comparePoints(b,I){return b.x<I.x?-1:b.x>I.x?1:b.y<I.y?-1:b.y>I.y?1:0}constructor(b,I){b.events===void 0?b.events=[this]:b.events.push(this),this.point=b,this.isLeft=I}link(b){if(b.point===this.point)throw new Error("Tried to link already linked events");let I=b.point.events;for(let F=0,k=I.length;F<k;F++){let G=I[F];this.point.events.push(G),G.point=this.point}this.checkForConsuming()}checkForConsuming(){let b=this.point.events.length;for(let I=0;I<b;I++){let F=this.point.events[I];if(F.segment.consumedBy===void 0)for(let k=I+1;k<b;k++){let G=this.point.events[k];G.consumedBy===void 0&&F.otherSE.point.events===G.otherSE.point.events&&F.segment.consume(G.segment)}}}getAvailableLinkedEvents(){let b=[];for(let I=0,F=this.point.events.length;I<F;I++){let k=this.point.events[I];k!==this&&!k.segment.ringOut&&k.segment.isInResult()&&b.push(k)}return b}getLeftmostComparator(b){let I=new Map,F=k=>{let G=k.otherSE;I.set(k,{sine:$t(this.point,b.point,G.point),cosine:Ut(this.point,b.point,G.point)})};return(k,G)=>{I.has(k)||F(k),I.has(G)||F(G);let{sine:rt,cosine:tt}=I.get(k),{sine:pt,cosine:ht}=I.get(G);return rt>=0&&pt>=0?tt<ht?1:tt>ht?-1:0:rt<0&&pt<0?tt<ht?-1:tt>ht?1:0:pt<rt?-1:pt>rt?1:0}}}let Ot=0;class _t{static compare(b,I){let F=b.leftSE.point.x,k=I.leftSE.point.x,G=b.rightSE.point.x,rt=I.rightSE.point.x;if(rt<F)return 1;if(G<k)return-1;let tt=b.leftSE.point.y,pt=I.leftSE.point.y,ht=b.rightSE.point.y,O=I.rightSE.point.y;if(F<k){if(pt<tt&&pt<ht)return 1;if(pt>tt&&pt>ht)return-1;let Q=b.comparePoint(I.leftSE.point);if(Q<0)return 1;if(Q>0)return-1;let J=I.comparePoint(b.rightSE.point);return J!==0?J:-1}if(F>k){if(tt<pt&&tt<O)return-1;if(tt>pt&&tt>O)return 1;let Q=I.comparePoint(b.leftSE.point);if(Q!==0)return Q;let J=b.comparePoint(I.rightSE.point);return J<0?1:J>0?-1:1}if(tt<pt)return-1;if(tt>pt)return 1;if(G<rt){let Q=I.comparePoint(b.rightSE.point);if(Q!==0)return Q}if(G>rt){let Q=b.comparePoint(I.rightSE.point);if(Q<0)return 1;if(Q>0)return-1}if(G!==rt){let Q=ht-tt,J=G-F,et=O-pt,Tt=rt-k;if(Q>J&&et<Tt)return 1;if(Q<J&&et>Tt)return-1}return G>rt?1:G<rt||ht<O?-1:ht>O?1:b.id<I.id?-1:b.id>I.id?1:0}constructor(b,I,F,k){this.id=++Ot,this.leftSE=b,b.segment=this,b.otherSE=I,this.rightSE=I,I.segment=this,I.otherSE=b,this.rings=F,this.windings=k}static fromRing(b,I,F){let k,G,rt,tt=Z.comparePoints(b,I);if(tt<0)k=b,G=I,rt=1;else if(tt>0)k=I,G=b,rt=-1;else throw new Error(\`Tried to create degenerate segment at [\${b.x}, \${b.y}]\`);let pt=new Z(k,!0),ht=new Z(G,!1);return new _t(pt,ht,[F],[rt])}replaceRightSE(b){this.rightSE=b,this.rightSE.segment=this,this.rightSE.otherSE=this.leftSE,this.leftSE.otherSE=this.rightSE}bbox(){let b=this.leftSE.point.y,I=this.rightSE.point.y;return{ll:{x:this.leftSE.point.x,y:b<I?b:I},ur:{x:this.rightSE.point.x,y:b>I?b:I}}}vector(){return{x:this.rightSE.point.x-this.leftSE.point.x,y:this.rightSE.point.y-this.leftSE.point.y}}isAnEndpoint(b){return b.x===this.leftSE.point.x&&b.y===this.leftSE.point.y||b.x===this.rightSE.point.x&&b.y===this.rightSE.point.y}comparePoint(b){if(this.isAnEndpoint(b))return 0;let I=this.leftSE.point,F=this.rightSE.point,k=this.vector();if(I.x===F.x)return b.x===I.x?0:b.x<I.x?1:-1;let G=(b.y-I.y)/k.y,rt=I.x+G*k.x;if(b.x===rt)return 0;let tt=(b.x-I.x)/k.x,pt=I.y+tt*k.y;return b.y===pt?0:b.y<pt?-1:1}getIntersection(b){let I=this.bbox(),F=b.bbox(),k=_(I,F);if(k===null)return null;let G=this.leftSE.point,rt=this.rightSE.point,tt=b.leftSE.point,pt=b.rightSE.point,ht=A(I,tt)&&this.comparePoint(tt)===0,O=A(F,G)&&b.comparePoint(G)===0,Q=A(I,pt)&&this.comparePoint(pt)===0,J=A(F,rt)&&b.comparePoint(rt)===0;if(O&&ht)return J&&!Q?rt:!J&&Q?pt:null;if(O)return Q&&G.x===pt.x&&G.y===pt.y?null:G;if(ht)return J&&rt.x===tt.x&&rt.y===tt.y?null:tt;if(J&&Q)return null;if(J)return rt;if(Q)return pt;let et=ee(G,this.vector(),tt,b.vector());return et===null||!A(k,et)?null:U.round(et.x,et.y)}split(b){let I=[],F=b.events!==void 0,k=new Z(b,!0),G=new Z(b,!1),rt=this.rightSE;this.replaceRightSE(G),I.push(G),I.push(k);let tt=new _t(k,rt,this.rings.slice(),this.windings.slice());return Z.comparePoints(tt.leftSE.point,tt.rightSE.point)>0&&tt.swapEvents(),Z.comparePoints(this.leftSE.point,this.rightSE.point)>0&&this.swapEvents(),F&&(k.checkForConsuming(),G.checkForConsuming()),I}swapEvents(){let b=this.rightSE;this.rightSE=this.leftSE,this.leftSE=b,this.leftSE.isLeft=!0,this.rightSE.isLeft=!1;for(let I=0,F=this.windings.length;I<F;I++)this.windings[I]*=-1}consume(b){let I=this,F=b;for(;I.consumedBy;)I=I.consumedBy;for(;F.consumedBy;)F=F.consumedBy;let k=_t.compare(I,F);if(k!==0){if(k>0){let G=I;I=F,F=G}if(I.prev===F){let G=I;I=F,F=G}for(let G=0,rt=F.rings.length;G<rt;G++){let tt=F.rings[G],pt=F.windings[G],ht=I.rings.indexOf(tt);ht===-1?(I.rings.push(tt),I.windings.push(pt)):I.windings[ht]+=pt}F.rings=null,F.windings=null,F.consumedBy=I,F.leftSE.consumedBy=I.leftSE,F.rightSE.consumedBy=I.rightSE}}prevInResult(){return this._prevInResult!==void 0?this._prevInResult:(this.prev?this.prev.isInResult()?this._prevInResult=this.prev:this._prevInResult=this.prev.prevInResult():this._prevInResult=null,this._prevInResult)}beforeState(){if(this._beforeState!==void 0)return this._beforeState;if(!this.prev)this._beforeState={rings:[],windings:[],multiPolys:[]};else{let b=this.prev.consumedBy||this.prev;this._beforeState=b.afterState()}return this._beforeState}afterState(){if(this._afterState!==void 0)return this._afterState;let b=this.beforeState();this._afterState={rings:b.rings.slice(0),windings:b.windings.slice(0),multiPolys:[]};let I=this._afterState.rings,F=this._afterState.windings,k=this._afterState.multiPolys;for(let tt=0,pt=this.rings.length;tt<pt;tt++){let ht=this.rings[tt],O=this.windings[tt],Q=I.indexOf(ht);Q===-1?(I.push(ht),F.push(O)):F[Q]+=O}let G=[],rt=[];for(let tt=0,pt=I.length;tt<pt;tt++){if(F[tt]===0)continue;let ht=I[tt],O=ht.poly;if(rt.indexOf(O)===-1)if(ht.isExterior)G.push(O);else{rt.indexOf(O)===-1&&rt.push(O);let Q=G.indexOf(ht.poly);Q!==-1&&G.splice(Q,1)}}for(let tt=0,pt=G.length;tt<pt;tt++){let ht=G[tt].multiPoly;k.indexOf(ht)===-1&&k.push(ht)}return this._afterState}isInResult(){if(this.consumedBy)return!1;if(this._isInResult!==void 0)return this._isInResult;let b=this.beforeState().multiPolys,I=this.afterState().multiPolys;switch(ot.type){case"union":{let F=b.length===0,k=I.length===0;this._isInResult=F!==k;break}case"intersection":{let F,k;b.length<I.length?(F=b.length,k=I.length):(F=I.length,k=b.length),this._isInResult=k===ot.numMultiPolys&&F<k;break}case"xor":{let F=Math.abs(b.length-I.length);this._isInResult=F%2===1;break}case"difference":{let F=k=>k.length===1&&k[0].isSubject;this._isInResult=F(b)!==F(I);break}default:throw new Error(\`Unrecognized operation type found \${ot.type}\`)}return this._isInResult}}class Nt{constructor(b,I,F){if(!Array.isArray(b)||b.length===0)throw new Error("Input geometry is not a valid Polygon or MultiPolygon");if(this.poly=I,this.isExterior=F,this.segments=[],typeof b[0][0]!="number"||typeof b[0][1]!="number")throw new Error("Input geometry is not a valid Polygon or MultiPolygon");let k=U.round(b[0][0],b[0][1]);this.bbox={ll:{x:k.x,y:k.y},ur:{x:k.x,y:k.y}};let G=k;for(let rt=1,tt=b.length;rt<tt;rt++){if(typeof b[rt][0]!="number"||typeof b[rt][1]!="number")throw new Error("Input geometry is not a valid Polygon or MultiPolygon");let pt=U.round(b[rt][0],b[rt][1]);pt.x===G.x&&pt.y===G.y||(this.segments.push(_t.fromRing(G,pt,this)),pt.x<this.bbox.ll.x&&(this.bbox.ll.x=pt.x),pt.y<this.bbox.ll.y&&(this.bbox.ll.y=pt.y),pt.x>this.bbox.ur.x&&(this.bbox.ur.x=pt.x),pt.y>this.bbox.ur.y&&(this.bbox.ur.y=pt.y),G=pt)}(k.x!==G.x||k.y!==G.y)&&this.segments.push(_t.fromRing(G,k,this))}getSweepEvents(){let b=[];for(let I=0,F=this.segments.length;I<F;I++){let k=this.segments[I];b.push(k.leftSE),b.push(k.rightSE)}return b}}class wt{constructor(b,I){if(!Array.isArray(b))throw new Error("Input geometry is not a valid Polygon or MultiPolygon");this.exteriorRing=new Nt(b[0],this,!0),this.bbox={ll:{x:this.exteriorRing.bbox.ll.x,y:this.exteriorRing.bbox.ll.y},ur:{x:this.exteriorRing.bbox.ur.x,y:this.exteriorRing.bbox.ur.y}},this.interiorRings=[];for(let F=1,k=b.length;F<k;F++){let G=new Nt(b[F],this,!1);G.bbox.ll.x<this.bbox.ll.x&&(this.bbox.ll.x=G.bbox.ll.x),G.bbox.ll.y<this.bbox.ll.y&&(this.bbox.ll.y=G.bbox.ll.y),G.bbox.ur.x>this.bbox.ur.x&&(this.bbox.ur.x=G.bbox.ur.x),G.bbox.ur.y>this.bbox.ur.y&&(this.bbox.ur.y=G.bbox.ur.y),this.interiorRings.push(G)}this.multiPoly=I}getSweepEvents(){let b=this.exteriorRing.getSweepEvents();for(let I=0,F=this.interiorRings.length;I<F;I++){let k=this.interiorRings[I].getSweepEvents();for(let G=0,rt=k.length;G<rt;G++)b.push(k[G])}return b}}class Ht{constructor(b,I){if(!Array.isArray(b))throw new Error("Input geometry is not a valid Polygon or MultiPolygon");try{typeof b[0][0][0]=="number"&&(b=[b])}catch(F){}this.polys=[],this.bbox={ll:{x:Number.POSITIVE_INFINITY,y:Number.POSITIVE_INFINITY},ur:{x:Number.NEGATIVE_INFINITY,y:Number.NEGATIVE_INFINITY}};for(let F=0,k=b.length;F<k;F++){let G=new wt(b[F],this);G.bbox.ll.x<this.bbox.ll.x&&(this.bbox.ll.x=G.bbox.ll.x),G.bbox.ll.y<this.bbox.ll.y&&(this.bbox.ll.y=G.bbox.ll.y),G.bbox.ur.x>this.bbox.ur.x&&(this.bbox.ur.x=G.bbox.ur.x),G.bbox.ur.y>this.bbox.ur.y&&(this.bbox.ur.y=G.bbox.ur.y),this.polys.push(G)}this.isSubject=I}getSweepEvents(){let b=[];for(let I=0,F=this.polys.length;I<F;I++){let k=this.polys[I].getSweepEvents();for(let G=0,rt=k.length;G<rt;G++)b.push(k[G])}return b}}class Xt{static factory(b){let I=[];for(let F=0,k=b.length;F<k;F++){let G=b[F];if(!G.isInResult()||G.ringOut)continue;let rt=null,tt=G.leftSE,pt=G.rightSE,ht=[tt],O=tt.point,Q=[];for(;rt=tt,tt=pt,ht.push(tt),tt.point!==O;)for(;;){let J=tt.getAvailableLinkedEvents();if(J.length===0){let kt=ht[0].point,ie=ht[ht.length-1].point;throw new Error(\`Unable to complete output ring starting at [\${kt.x}, \${kt.y}]. Last matching segment found ends at [\${ie.x}, \${ie.y}].\`)}if(J.length===1){pt=J[0].otherSE;break}let et=null;for(let kt=0,ie=Q.length;kt<ie;kt++)if(Q[kt].point===tt.point){et=kt;break}if(et!==null){let kt=Q.splice(et)[0],ie=ht.splice(kt.index);ie.unshift(ie[0].otherSE),I.push(new Xt(ie.reverse()));continue}Q.push({index:ht.length,point:tt.point});let Tt=tt.getLeftmostComparator(rt);pt=J.sort(Tt)[0].otherSE;break}I.push(new Xt(ht))}return I}constructor(b){this.events=b;for(let I=0,F=b.length;I<F;I++)b[I].segment.ringOut=this;this.poly=null}getGeom(){let b=this.events[0].point,I=[b];for(let ht=1,O=this.events.length-1;ht<O;ht++){let Q=this.events[ht].point,J=this.events[ht+1].point;bt(Q,b,J)!==0&&(I.push(Q),b=Q)}if(I.length===1)return null;let F=I[0],k=I[1];bt(F,b,k)===0&&I.shift(),I.push(I[0]);let G=this.isExteriorRing()?1:-1,rt=this.isExteriorRing()?0:I.length-1,tt=this.isExteriorRing()?I.length:-1,pt=[];for(let ht=rt;ht!=tt;ht+=G)pt.push([I[ht].x,I[ht].y]);return pt}isExteriorRing(){if(this._isExteriorRing===void 0){let b=this.enclosingRing();this._isExteriorRing=b?!b.isExteriorRing():!0}return this._isExteriorRing}enclosingRing(){return this._enclosingRing===void 0&&(this._enclosingRing=this._calcEnclosingRing()),this._enclosingRing}_calcEnclosingRing(){let b=this.events[0];for(let k=1,G=this.events.length;k<G;k++){let rt=this.events[k];Z.compare(b,rt)>0&&(b=rt)}let I=b.segment.prevInResult(),F=I?I.prevInResult():null;for(;;){if(!I)return null;if(!F)return I.ringOut;if(F.ringOut!==I.ringOut)return F.ringOut.enclosingRing()!==I.ringOut?I.ringOut:I.ringOut.enclosingRing();I=F.prevInResult(),F=I?I.prevInResult():null}}}class Pt{constructor(b){this.exteriorRing=b,b.poly=this,this.interiorRings=[]}addInterior(b){this.interiorRings.push(b),b.poly=this}getGeom(){let b=[this.exteriorRing.getGeom()];if(b[0]===null)return null;for(let I=0,F=this.interiorRings.length;I<F;I++){let k=this.interiorRings[I].getGeom();k!==null&&b.push(k)}return b}}class ne{constructor(b){this.rings=b,this.polys=this._composePolys(b)}getGeom(){let b=[];for(let I=0,F=this.polys.length;I<F;I++){let k=this.polys[I].getGeom();k!==null&&b.push(k)}return b}_composePolys(b){let I=[];for(let F=0,k=b.length;F<k;F++){let G=b[F];if(!G.poly)if(G.isExteriorRing())I.push(new Pt(G));else{let rt=G.enclosingRing();rt.poly||I.push(new Pt(rt)),rt.poly.addInterior(G)}}return I}}class Y{constructor(b){let I=arguments.length>1&&arguments[1]!==void 0?arguments[1]:_t.compare;this.queue=b,this.tree=new p(I),this.segments=[]}process(b){let I=b.segment,F=[];if(b.consumedBy)return b.isLeft?this.queue.remove(b.otherSE):this.tree.remove(I),F;let k=b.isLeft?this.tree.add(I):this.tree.find(I);if(!k)throw new Error(\`Unable to find segment #\${I.id} [\${I.leftSE.point.x}, \${I.leftSE.point.y}] -> [\${I.rightSE.point.x}, \${I.rightSE.point.y}] in SweepLine tree.\`);let G=k,rt=k,tt,pt;for(;tt===void 0;)G=this.tree.prev(G),G===null?tt=null:G.key.consumedBy===void 0&&(tt=G.key);for(;pt===void 0;)rt=this.tree.next(rt),rt===null?pt=null:rt.key.consumedBy===void 0&&(pt=rt.key);if(b.isLeft){let ht=null;if(tt){let Q=tt.getIntersection(I);if(Q!==null&&(I.isAnEndpoint(Q)||(ht=Q),!tt.isAnEndpoint(Q))){let J=this._splitSafely(tt,Q);for(let et=0,Tt=J.length;et<Tt;et++)F.push(J[et])}}let O=null;if(pt){let Q=pt.getIntersection(I);if(Q!==null&&(I.isAnEndpoint(Q)||(O=Q),!pt.isAnEndpoint(Q))){let J=this._splitSafely(pt,Q);for(let et=0,Tt=J.length;et<Tt;et++)F.push(J[et])}}if(ht!==null||O!==null){let Q=null;ht===null?Q=O:O===null?Q=ht:Q=Z.comparePoints(ht,O)<=0?ht:O,this.queue.remove(I.rightSE),F.push(I.rightSE);let J=I.split(Q);for(let et=0,Tt=J.length;et<Tt;et++)F.push(J[et])}F.length>0?(this.tree.remove(I),F.push(b)):(this.segments.push(I),I.prev=tt)}else{if(tt&&pt){let ht=tt.getIntersection(pt);if(ht!==null){if(!tt.isAnEndpoint(ht)){let O=this._splitSafely(tt,ht);for(let Q=0,J=O.length;Q<J;Q++)F.push(O[Q])}if(!pt.isAnEndpoint(ht)){let O=this._splitSafely(pt,ht);for(let Q=0,J=O.length;Q<J;Q++)F.push(O[Q])}}}this.tree.remove(I)}return F}_splitSafely(b,I){this.tree.remove(b);let F=b.rightSE;this.queue.remove(F);let k=b.split(I);return k.push(F),b.consumedBy===void 0&&this.tree.add(b),k}}let N=typeof process!="undefined"&&process.env.POLYGON_CLIPPING_MAX_QUEUE_SIZE||1e6,xt=typeof process!="undefined"&&process.env.POLYGON_CLIPPING_MAX_SWEEPLINE_SEGMENTS||1e6;class St{run(b,I,F){ot.type=b,U.reset();let k=[new Ht(I,!0)];for(let Q=0,J=F.length;Q<J;Q++)k.push(new Ht(F[Q],!1));if(ot.numMultiPolys=k.length,ot.type==="difference"){let Q=k[0],J=1;for(;J<k.length;)_(k[J].bbox,Q.bbox)!==null?J++:k.splice(J,1)}if(ot.type==="intersection")for(let Q=0,J=k.length;Q<J;Q++){let et=k[Q];for(let Tt=Q+1,kt=k.length;Tt<kt;Tt++)if(_(et.bbox,k[Tt].bbox)===null)return[]}let G=new p(Z.compare);for(let Q=0,J=k.length;Q<J;Q++){let et=k[Q].getSweepEvents();for(let Tt=0,kt=et.length;Tt<kt;Tt++)if(G.insert(et[Tt]),G.size>N)throw new Error("Infinite loop when putting segment endpoints in a priority queue (queue size too big).")}let rt=new Y(G),tt=G.size,pt=G.pop();for(;pt;){let Q=pt.key;if(G.size===tt){let et=Q.segment;throw new Error(\`Unable to pop() \${Q.isLeft?"left":"right"} SweepEvent [\${Q.point.x}, \${Q.point.y}] from segment #\${et.id} [\${et.leftSE.point.x}, \${et.leftSE.point.y}] -> [\${et.rightSE.point.x}, \${et.rightSE.point.y}] from queue.\`)}if(G.size>N)throw new Error("Infinite loop when passing sweep line over endpoints (queue size too big).");if(rt.segments.length>xt)throw new Error("Infinite loop when passing sweep line over endpoints (too many sweep line segments).");let J=rt.process(Q);for(let et=0,Tt=J.length;et<Tt;et++){let kt=J[et];kt.consumedBy===void 0&&G.insert(kt)}tt=G.size,pt=G.pop()}U.reset();let ht=Xt.factory(rt.segments);return new ne(ht).getGeom()}}let ot=new St;var Wt={union:function(j){for(var b=arguments.length,I=new Array(b>1?b-1:0),F=1;F<b;F++)I[F-1]=arguments[F];return ot.run("union",j,I)},intersection:function(j){for(var b=arguments.length,I=new Array(b>1?b-1:0),F=1;F<b;F++)I[F-1]=arguments[F];return ot.run("intersection",j,I)},xor:function(j){for(var b=arguments.length,I=new Array(b>1?b-1:0),F=1;F<b;F++)I[F-1]=arguments[F];return ot.run("xor",j,I)},difference:function(j){for(var b=arguments.length,I=new Array(b>1?b-1:0),F=1;F<b;F++)I[F-1]=arguments[F];return ot.run("difference",j,I)}};return Wt})});var K2=X((ug,j2)=>{(function(n,t){typeof ug=="object"&&typeof j2!="undefined"?t(ug):typeof define=="function"&&define.amd?define(["exports"],t):t(n.jsts={})})(ug,function(n){"use strict";function t(){}function e(r){this.message=r||""}function i(r){this.message=r||""}function s(r){this.message=r||""}function u(){}function c(r){return r===null?Ae:r.color}function f(r){return r===null?null:r.parent}function p(r,o){r!==null&&(r.color=o)}function d(r){return r===null?null:r.left}function g(r){return r===null?null:r.right}function y(){this.root_=null,this.size_=0}function v(){}function E(){this.array_=[],arguments[0]instanceof tt&&this.addAll(arguments[0])}function M(){}function A(r){this.message=r||""}function _(){this.array_=[]}"fill"in Array.prototype||Object.defineProperty(Array.prototype,"fill",{configurable:!0,value:function(r){if(this===void 0||this===null)throw new TypeError(this+" is not an object");var o=Object(this),a=Math.max(Math.min(o.length,9007199254740991),0)||0,l=1 in arguments&&parseInt(Number(arguments[1]),10)||0;l=l<0?Math.max(a+l,0):Math.min(l,a);var h=2 in arguments&&arguments[2]!==void 0?parseInt(Number(arguments[2]),10)||0:a;for(h=h<0?Math.max(a+arguments[2],0):Math.min(h,a);l<h;)o[l]=r,++l;return o},writable:!0}),Number.isFinite=Number.isFinite||function(r){return typeof r=="number"&&isFinite(r)},Number.isInteger=Number.isInteger||function(r){return typeof r=="number"&&isFinite(r)&&Math.floor(r)===r},Number.parseFloat=Number.parseFloat||parseFloat,Number.isNaN=Number.isNaN||function(r){return r!=r},Math.trunc=Math.trunc||function(r){return r<0?Math.ceil(r):Math.floor(r)};var x=function(){};x.prototype.interfaces_=function(){return[]},x.prototype.getClass=function(){return x},x.prototype.equalsWithTolerance=function(r,o,a){return Math.abs(r-o)<=a};var T=function(r){function o(a){r.call(this,a),this.name="IllegalArgumentException",this.message=a,this.stack=new r().stack}return r&&(o.__proto__=r),o.prototype=Object.create(r&&r.prototype),o.prototype.constructor=o,o}(Error),w=function(){},R={MAX_VALUE:{configurable:!0}};w.isNaN=function(r){return Number.isNaN(r)},w.doubleToLongBits=function(r){return r},w.longBitsToDouble=function(r){return r},w.isInfinite=function(r){return!Number.isFinite(r)},R.MAX_VALUE.get=function(){return Number.MAX_VALUE},Object.defineProperties(w,R);var B=function(){},U=function(){},D=function(){},P=function r(){if(this.x=null,this.y=null,this.z=null,arguments.length===0)this.x=0,this.y=0,this.z=r.NULL_ORDINATE;else if(arguments.length===1){var o=arguments[0];this.x=o.x,this.y=o.y,this.z=o.z}else arguments.length===2?(this.x=arguments[0],this.y=arguments[1],this.z=r.NULL_ORDINATE):arguments.length===3&&(this.x=arguments[0],this.y=arguments[1],this.z=arguments[2])},ct={DimensionalComparator:{configurable:!0},serialVersionUID:{configurable:!0},NULL_ORDINATE:{configurable:!0},X:{configurable:!0},Y:{configurable:!0},Z:{configurable:!0}};P.prototype.setOrdinate=function(r,o){switch(r){case P.X:this.x=o;break;case P.Y:this.y=o;break;case P.Z:this.z=o;break;default:throw new T("Invalid ordinate index: "+r)}},P.prototype.equals2D=function(){if(arguments.length===1){var r=arguments[0];return this.x===r.x&&this.y===r.y}if(arguments.length===2){var o=arguments[0],a=arguments[1];return!!x.equalsWithTolerance(this.x,o.x,a)&&!!x.equalsWithTolerance(this.y,o.y,a)}},P.prototype.getOrdinate=function(r){switch(r){case P.X:return this.x;case P.Y:return this.y;case P.Z:return this.z}throw new T("Invalid ordinate index: "+r)},P.prototype.equals3D=function(r){return this.x===r.x&&this.y===r.y&&(this.z===r.z||w.isNaN(this.z))&&w.isNaN(r.z)},P.prototype.equals=function(r){return r instanceof P&&this.equals2D(r)},P.prototype.equalInZ=function(r,o){return x.equalsWithTolerance(this.z,r.z,o)},P.prototype.compareTo=function(r){var o=r;return this.x<o.x?-1:this.x>o.x?1:this.y<o.y?-1:this.y>o.y?1:0},P.prototype.clone=function(){},P.prototype.copy=function(){return new P(this)},P.prototype.toString=function(){return"("+this.x+", "+this.y+", "+this.z+")"},P.prototype.distance3D=function(r){var o=this.x-r.x,a=this.y-r.y,l=this.z-r.z;return Math.sqrt(o*o+a*a+l*l)},P.prototype.distance=function(r){var o=this.x-r.x,a=this.y-r.y;return Math.sqrt(o*o+a*a)},P.prototype.hashCode=function(){var r=17;return r=37*r+P.hashCode(this.x),r=37*r+P.hashCode(this.y)},P.prototype.setCoordinate=function(r){this.x=r.x,this.y=r.y,this.z=r.z},P.prototype.interfaces_=function(){return[B,U,t]},P.prototype.getClass=function(){return P},P.hashCode=function(){if(arguments.length===1){var r=arguments[0],o=w.doubleToLongBits(r);return Math.trunc((o^o)>>>32)}},ct.DimensionalComparator.get=function(){return L},ct.serialVersionUID.get=function(){return 6683108902428367e3},ct.NULL_ORDINATE.get=function(){return w.NaN},ct.X.get=function(){return 0},ct.Y.get=function(){return 1},ct.Z.get=function(){return 2},Object.defineProperties(P,ct);var L=function(r){if(this._dimensionsToTest=2,arguments.length!==0){if(arguments.length===1){var o=arguments[0];if(o!==2&&o!==3)throw new T("only 2 or 3 dimensions may be specified");this._dimensionsToTest=o}}};L.prototype.compare=function(r,o){var a=r,l=o,h=L.compare(a.x,l.x);if(h!==0)return h;var m=L.compare(a.y,l.y);return m!==0?m:this._dimensionsToTest<=2?0:L.compare(a.z,l.z)},L.prototype.interfaces_=function(){return[D]},L.prototype.getClass=function(){return L},L.compare=function(r,o){return r<o?-1:r>o?1:w.isNaN(r)?w.isNaN(o)?0:-1:w.isNaN(o)?1:0};var W=function(){};W.prototype.create=function(){},W.prototype.interfaces_=function(){return[]},W.prototype.getClass=function(){return W};var V=function(){},Mt={INTERIOR:{configurable:!0},BOUNDARY:{configurable:!0},EXTERIOR:{configurable:!0},NONE:{configurable:!0}};V.prototype.interfaces_=function(){return[]},V.prototype.getClass=function(){return V},V.toLocationSymbol=function(r){switch(r){case V.EXTERIOR:return"e";case V.BOUNDARY:return"b";case V.INTERIOR:return"i";case V.NONE:return"-"}throw new T("Unknown location value: "+r)},Mt.INTERIOR.get=function(){return 0},Mt.BOUNDARY.get=function(){return 1},Mt.EXTERIOR.get=function(){return 2},Mt.NONE.get=function(){return-1},Object.defineProperties(V,Mt);var $=function(r,o){return r.interfaces_&&r.interfaces_().indexOf(o)>-1},gt=function(){},ft={LOG_10:{configurable:!0}};gt.prototype.interfaces_=function(){return[]},gt.prototype.getClass=function(){return gt},gt.log10=function(r){var o=Math.log(r);return w.isInfinite(o)||w.isNaN(o)?o:o/gt.LOG_10},gt.min=function(r,o,a,l){var h=r;return o<h&&(h=o),a<h&&(h=a),l<h&&(h=l),h},gt.clamp=function(){if(typeof arguments[2]=="number"&&typeof arguments[0]=="number"&&typeof arguments[1]=="number"){var r=arguments[0],o=arguments[1],a=arguments[2];return r<o?o:r>a?a:r}if(Number.isInteger(arguments[2])&&Number.isInteger(arguments[0])&&Number.isInteger(arguments[1])){var l=arguments[0],h=arguments[1],m=arguments[2];return l<h?h:l>m?m:l}},gt.wrap=function(r,o){return r<0?o- -r%o:r%o},gt.max=function(){if(arguments.length===3){var r=arguments[0],o=arguments[1],a=arguments[2],l=r;return o>l&&(l=o),a>l&&(l=a),l}if(arguments.length===4){var h=arguments[0],m=arguments[1],S=arguments[2],C=arguments[3],z=h;return m>z&&(z=m),S>z&&(z=S),C>z&&(z=C),z}},gt.average=function(r,o){return(r+o)/2},ft.LOG_10.get=function(){return Math.log(10)},Object.defineProperties(gt,ft);var vt=function(r){this.str=r};vt.prototype.append=function(r){this.str+=r},vt.prototype.setCharAt=function(r,o){this.str=this.str.substr(0,r)+o+this.str.substr(r+1)},vt.prototype.toString=function(r){return this.str};var it=function(r){this.value=r};it.prototype.intValue=function(){return this.value},it.prototype.compareTo=function(r){return this.value<r?-1:this.value>r?1:0},it.isNaN=function(r){return Number.isNaN(r)};var lt=function(){};lt.isWhitespace=function(r){return r<=32&&r>=0||r===127},lt.toUpperCase=function(r){return r.toUpperCase()};var H=function r(){if(this._hi=0,this._lo=0,arguments.length===0)this.init(0);else if(arguments.length===1){if(typeof arguments[0]=="number"){var o=arguments[0];this.init(o)}else if(arguments[0]instanceof r){var a=arguments[0];this.init(a)}else if(typeof arguments[0]=="string"){var l=arguments[0];r.call(this,r.parse(l))}}else if(arguments.length===2){var h=arguments[0],m=arguments[1];this.init(h,m)}},At={PI:{configurable:!0},TWO_PI:{configurable:!0},PI_2:{configurable:!0},E:{configurable:!0},NaN:{configurable:!0},EPS:{configurable:!0},SPLIT:{configurable:!0},MAX_PRINT_DIGITS:{configurable:!0},TEN:{configurable:!0},ONE:{configurable:!0},SCI_NOT_EXPONENT_CHAR:{configurable:!0},SCI_NOT_ZERO:{configurable:!0}};H.prototype.le=function(r){return(this._hi<r._hi||this._hi===r._hi)&&this._lo<=r._lo},H.prototype.extractSignificantDigits=function(r,o){var a=this.abs(),l=H.magnitude(a._hi),h=H.TEN.pow(l);(a=a.divide(h)).gt(H.TEN)?(a=a.divide(H.TEN),l+=1):a.lt(H.ONE)&&(a=a.multiply(H.TEN),l-=1);for(var m=l+1,S=new vt,C=H.MAX_PRINT_DIGITS-1,z=0;z<=C;z++){r&&z===m&&S.append(".");var K=Math.trunc(a._hi);if(K<0)break;var mt=!1,yt=0;K>9?(mt=!0,yt="9"):yt="0"+K,S.append(yt),a=a.subtract(H.valueOf(K)).multiply(H.TEN),mt&&a.selfAdd(H.TEN);var zt=!0,qt=H.magnitude(a._hi);if(qt<0&&Math.abs(qt)>=C-z&&(zt=!1),!zt)break}return o[0]=l,S.toString()},H.prototype.sqr=function(){return this.multiply(this)},H.prototype.doubleValue=function(){return this._hi+this._lo},H.prototype.subtract=function(){if(arguments[0]instanceof H){var r=arguments[0];return this.add(r.negate())}if(typeof arguments[0]=="number"){var o=arguments[0];return this.add(-o)}},H.prototype.equals=function(){if(arguments.length===1){var r=arguments[0];return this._hi===r._hi&&this._lo===r._lo}},H.prototype.isZero=function(){return this._hi===0&&this._lo===0},H.prototype.selfSubtract=function(){if(arguments[0]instanceof H){var r=arguments[0];return this.isNaN()?this:this.selfAdd(-r._hi,-r._lo)}if(typeof arguments[0]=="number"){var o=arguments[0];return this.isNaN()?this:this.selfAdd(-o,0)}},H.prototype.getSpecialNumberString=function(){return this.isZero()?"0.0":this.isNaN()?"NaN ":null},H.prototype.min=function(r){return this.le(r)?this:r},H.prototype.selfDivide=function(){if(arguments.length===1){if(arguments[0]instanceof H){var r=arguments[0];return this.selfDivide(r._hi,r._lo)}if(typeof arguments[0]=="number"){var o=arguments[0];return this.selfDivide(o,0)}}else if(arguments.length===2){var a=arguments[0],l=arguments[1],h=null,m=null,S=null,C=null,z=null,K=null,mt=null,yt=null;return z=this._hi/a,K=H.SPLIT*z,h=K-z,yt=H.SPLIT*a,h=K-h,m=z-h,S=yt-a,mt=z*a,S=yt-S,C=a-S,yt=h*S-mt+h*C+m*S+m*C,K=(this._hi-mt-yt+this._lo-z*l)/a,yt=z+K,this._hi=yt,this._lo=z-yt+K,this}},H.prototype.dump=function(){return"DD<"+this._hi+", "+this._lo+">"},H.prototype.divide=function(){if(arguments[0]instanceof H){var r=arguments[0],o=null,a=null,l=null,h=null,m=null,S=null,C=null,z=null;return a=(m=this._hi/r._hi)-(o=(S=H.SPLIT*m)-(o=S-m)),z=o*(l=(z=H.SPLIT*r._hi)-(l=z-r._hi))-(C=m*r._hi)+o*(h=r._hi-l)+a*l+a*h,S=(this._hi-C-z+this._lo-m*r._lo)/r._hi,new H(z=m+S,m-z+S)}if(typeof arguments[0]=="number"){var K=arguments[0];return w.isNaN(K)?H.createNaN():H.copy(this).selfDivide(K,0)}},H.prototype.ge=function(r){return(this._hi>r._hi||this._hi===r._hi)&&this._lo>=r._lo},H.prototype.pow=function(r){if(r===0)return H.valueOf(1);var o=new H(this),a=H.valueOf(1),l=Math.abs(r);if(l>1)for(;l>0;)l%2==1&&a.selfMultiply(o),(l/=2)>0&&(o=o.sqr());else a=o;return r<0?a.reciprocal():a},H.prototype.ceil=function(){if(this.isNaN())return H.NaN;var r=Math.ceil(this._hi),o=0;return r===this._hi&&(o=Math.ceil(this._lo)),new H(r,o)},H.prototype.compareTo=function(r){var o=r;return this._hi<o._hi?-1:this._hi>o._hi?1:this._lo<o._lo?-1:this._lo>o._lo?1:0},H.prototype.rint=function(){return this.isNaN()?this:this.add(.5).floor()},H.prototype.setValue=function(){if(arguments[0]instanceof H){var r=arguments[0];return this.init(r),this}if(typeof arguments[0]=="number"){var o=arguments[0];return this.init(o),this}},H.prototype.max=function(r){return this.ge(r)?this:r},H.prototype.sqrt=function(){if(this.isZero())return H.valueOf(0);if(this.isNegative())return H.NaN;var r=1/Math.sqrt(this._hi),o=this._hi*r,a=H.valueOf(o),l=this.subtract(a.sqr())._hi*(.5*r);return a.add(l)},H.prototype.selfAdd=function(){if(arguments.length===1){if(arguments[0]instanceof H){var r=arguments[0];return this.selfAdd(r._hi,r._lo)}if(typeof arguments[0]=="number"){var o=arguments[0],a=null,l=null,h=null,m=null,S=null,C=null;return h=this._hi+o,S=h-this._hi,m=h-S,m=o-S+(this._hi-m),C=m+this._lo,a=h+C,l=C+(h-a),this._hi=a+l,this._lo=l+(a-this._hi),this}}else if(arguments.length===2){var z=arguments[0],K=arguments[1],mt=null,yt=null,zt=null,qt=null,Jt=null,ue=null,dn=null;qt=this._hi+z,yt=this._lo+K,Jt=qt-(ue=qt-this._hi),zt=yt-(dn=yt-this._lo);var Wn=(mt=qt+(ue=(Jt=z-ue+(this._hi-Jt))+yt))+(ue=(zt=K-dn+(this._lo-zt))+(ue+(qt-mt))),Dr=ue+(mt-Wn);return this._hi=Wn,this._lo=Dr,this}},H.prototype.selfMultiply=function(){if(arguments.length===1){if(arguments[0]instanceof H){var r=arguments[0];return this.selfMultiply(r._hi,r._lo)}if(typeof arguments[0]=="number"){var o=arguments[0];return this.selfMultiply(o,0)}}else if(arguments.length===2){var a=arguments[0],l=arguments[1],h=null,m=null,S=null,C=null,z=null,K=null;h=(z=H.SPLIT*this._hi)-this._hi,K=H.SPLIT*a,h=z-h,m=this._hi-h,S=K-a;var mt=(z=this._hi*a)+(K=h*(S=K-S)-z+h*(C=a-S)+m*S+m*C+(this._hi*l+this._lo*a)),yt=K+(h=z-mt);return this._hi=mt,this._lo=yt,this}},H.prototype.selfSqr=function(){return this.selfMultiply(this)},H.prototype.floor=function(){if(this.isNaN())return H.NaN;var r=Math.floor(this._hi),o=0;return r===this._hi&&(o=Math.floor(this._lo)),new H(r,o)},H.prototype.negate=function(){return this.isNaN()?this:new H(-this._hi,-this._lo)},H.prototype.clone=function(){},H.prototype.multiply=function(){if(arguments[0]instanceof H){var r=arguments[0];return r.isNaN()?H.createNaN():H.copy(this).selfMultiply(r)}if(typeof arguments[0]=="number"){var o=arguments[0];return w.isNaN(o)?H.createNaN():H.copy(this).selfMultiply(o,0)}},H.prototype.isNaN=function(){return w.isNaN(this._hi)},H.prototype.intValue=function(){return Math.trunc(this._hi)},H.prototype.toString=function(){var r=H.magnitude(this._hi);return r>=-3&&r<=20?this.toStandardNotation():this.toSciNotation()},H.prototype.toStandardNotation=function(){var r=this.getSpecialNumberString();if(r!==null)return r;var o=new Array(1).fill(null),a=this.extractSignificantDigits(!0,o),l=o[0]+1,h=a;if(a.charAt(0)===".")h="0"+a;else if(l<0)h="0."+H.stringOfChar("0",-l)+a;else if(a.indexOf(".")===-1){var m=l-a.length;h=a+H.stringOfChar("0",m)+".0"}return this.isNegative()?"-"+h:h},H.prototype.reciprocal=function(){var r=null,o=null,a=null,l=null,h=null,m=null,S=null,C=null;o=(h=1/this._hi)-(r=(m=H.SPLIT*h)-(r=m-h)),a=(C=H.SPLIT*this._hi)-this._hi;var z=h+(m=(1-(S=h*this._hi)-(C=r*(a=C-a)-S+r*(l=this._hi-a)+o*a+o*l)-h*this._lo)/this._hi);return new H(z,h-z+m)},H.prototype.toSciNotation=function(){if(this.isZero())return H.SCI_NOT_ZERO;var r=this.getSpecialNumberString();if(r!==null)return r;var o=new Array(1).fill(null),a=this.extractSignificantDigits(!1,o),l=H.SCI_NOT_EXPONENT_CHAR+o[0];if(a.charAt(0)==="0")throw new Error("Found leading zero: "+a);var h="";a.length>1&&(h=a.substring(1));var m=a.charAt(0)+"."+h;return this.isNegative()?"-"+m+l:m+l},H.prototype.abs=function(){return this.isNaN()?H.NaN:this.isNegative()?this.negate():new H(this)},H.prototype.isPositive=function(){return(this._hi>0||this._hi===0)&&this._lo>0},H.prototype.lt=function(r){return(this._hi<r._hi||this._hi===r._hi)&&this._lo<r._lo},H.prototype.add=function(){if(arguments[0]instanceof H){var r=arguments[0];return H.copy(this).selfAdd(r)}if(typeof arguments[0]=="number"){var o=arguments[0];return H.copy(this).selfAdd(o)}},H.prototype.init=function(){if(arguments.length===1){if(typeof arguments[0]=="number"){var r=arguments[0];this._hi=r,this._lo=0}else if(arguments[0]instanceof H){var o=arguments[0];this._hi=o._hi,this._lo=o._lo}}else if(arguments.length===2){var a=arguments[0],l=arguments[1];this._hi=a,this._lo=l}},H.prototype.gt=function(r){return(this._hi>r._hi||this._hi===r._hi)&&this._lo>r._lo},H.prototype.isNegative=function(){return(this._hi<0||this._hi===0)&&this._lo<0},H.prototype.trunc=function(){return this.isNaN()?H.NaN:this.isPositive()?this.floor():this.ceil()},H.prototype.signum=function(){return this._hi>0?1:this._hi<0?-1:this._lo>0?1:this._lo<0?-1:0},H.prototype.interfaces_=function(){return[t,B,U]},H.prototype.getClass=function(){return H},H.sqr=function(r){return H.valueOf(r).selfMultiply(r)},H.valueOf=function(){if(typeof arguments[0]=="string"){var r=arguments[0];return H.parse(r)}if(typeof arguments[0]=="number"){var o=arguments[0];return new H(o)}},H.sqrt=function(r){return H.valueOf(r).sqrt()},H.parse=function(r){for(var o=0,a=r.length;lt.isWhitespace(r.charAt(o));)o++;var l=!1;if(o<a){var h=r.charAt(o);h!=="-"&&h!=="+"||(o++,h==="-"&&(l=!0))}for(var m=new H,S=0,C=0,z=0;!(o>=a);){var K=r.charAt(o);if(o++,lt.isDigit(K)){var mt=K-"0";m.selfMultiply(H.TEN),m.selfAdd(mt),S++}else{if(K!=="."){if(K==="e"||K==="E"){var yt=r.substring(o);try{z=it.parseInt(yt)}catch(dn){throw dn instanceof Error?new Error("Invalid exponent "+yt+" in string "+r):dn}break}throw new Error("Unexpected character '"+K+"' at position "+o+" in string "+r)}C=S}}var zt=m,qt=S-C-z;if(qt===0)zt=m;else if(qt>0){var Jt=H.TEN.pow(qt);zt=m.divide(Jt)}else if(qt<0){var ue=H.TEN.pow(-qt);zt=m.multiply(ue)}return l?zt.negate():zt},H.createNaN=function(){return new H(w.NaN,w.NaN)},H.copy=function(r){return new H(r)},H.magnitude=function(r){var o=Math.abs(r),a=Math.log(o)/Math.log(10),l=Math.trunc(Math.floor(a));return 10*Math.pow(10,l)<=o&&(l+=1),l},H.stringOfChar=function(r,o){for(var a=new vt,l=0;l<o;l++)a.append(r);return a.toString()},At.PI.get=function(){return new H(3.141592653589793,12246467991473532e-32)},At.TWO_PI.get=function(){return new H(6.283185307179586,24492935982947064e-32)},At.PI_2.get=function(){return new H(1.5707963267948966,6123233995736766e-32)},At.E.get=function(){return new H(2.718281828459045,14456468917292502e-32)},At.NaN.get=function(){return new H(w.NaN,w.NaN)},At.EPS.get=function(){return 123259516440783e-46},At.SPLIT.get=function(){return 134217729},At.MAX_PRINT_DIGITS.get=function(){return 32},At.TEN.get=function(){return H.valueOf(10)},At.ONE.get=function(){return H.valueOf(1)},At.SCI_NOT_EXPONENT_CHAR.get=function(){return"E"},At.SCI_NOT_ZERO.get=function(){return"0.0E0"},Object.defineProperties(H,At);var It=function(){},jt={DP_SAFE_EPSILON:{configurable:!0}};It.prototype.interfaces_=function(){return[]},It.prototype.getClass=function(){return It},It.orientationIndex=function(r,o,a){var l=It.orientationIndexFilter(r,o,a);if(l<=1)return l;var h=H.valueOf(o.x).selfAdd(-r.x),m=H.valueOf(o.y).selfAdd(-r.y),S=H.valueOf(a.x).selfAdd(-o.x),C=H.valueOf(a.y).selfAdd(-o.y);return h.selfMultiply(C).selfSubtract(m.selfMultiply(S)).signum()},It.signOfDet2x2=function(r,o,a,l){return r.multiply(l).selfSubtract(o.multiply(a)).signum()},It.intersection=function(r,o,a,l){var h=H.valueOf(l.y).selfSubtract(a.y).selfMultiply(H.valueOf(o.x).selfSubtract(r.x)),m=H.valueOf(l.x).selfSubtract(a.x).selfMultiply(H.valueOf(o.y).selfSubtract(r.y)),S=h.subtract(m),C=H.valueOf(l.x).selfSubtract(a.x).selfMultiply(H.valueOf(r.y).selfSubtract(a.y)),z=H.valueOf(l.y).selfSubtract(a.y).selfMultiply(H.valueOf(r.x).selfSubtract(a.x)),K=C.subtract(z).selfDivide(S).doubleValue(),mt=H.valueOf(r.x).selfAdd(H.valueOf(o.x).selfSubtract(r.x).selfMultiply(K)).doubleValue(),yt=H.valueOf(o.x).selfSubtract(r.x).selfMultiply(H.valueOf(r.y).selfSubtract(a.y)),zt=H.valueOf(o.y).selfSubtract(r.y).selfMultiply(H.valueOf(r.x).selfSubtract(a.x)),qt=yt.subtract(zt).selfDivide(S).doubleValue(),Jt=H.valueOf(a.y).selfAdd(H.valueOf(l.y).selfSubtract(a.y).selfMultiply(qt)).doubleValue();return new P(mt,Jt)},It.orientationIndexFilter=function(r,o,a){var l=null,h=(r.x-a.x)*(o.y-a.y),m=(r.y-a.y)*(o.x-a.x),S=h-m;if(h>0){if(m<=0)return It.signum(S);l=h+m}else{if(!(h<0)||m>=0)return It.signum(S);l=-h-m}var C=It.DP_SAFE_EPSILON*l;return S>=C||-S>=C?It.signum(S):2},It.signum=function(r){return r>0?1:r<0?-1:0},jt.DP_SAFE_EPSILON.get=function(){return 1e-15},Object.defineProperties(It,jt);var nt=function(){},bt={X:{configurable:!0},Y:{configurable:!0},Z:{configurable:!0},M:{configurable:!0}};bt.X.get=function(){return 0},bt.Y.get=function(){return 1},bt.Z.get=function(){return 2},bt.M.get=function(){return 3},nt.prototype.setOrdinate=function(r,o,a){},nt.prototype.size=function(){},nt.prototype.getOrdinate=function(r,o){},nt.prototype.getCoordinate=function(){},nt.prototype.getCoordinateCopy=function(r){},nt.prototype.getDimension=function(){},nt.prototype.getX=function(r){},nt.prototype.clone=function(){},nt.prototype.expandEnvelope=function(r){},nt.prototype.copy=function(){},nt.prototype.getY=function(r){},nt.prototype.toCoordinateArray=function(){},nt.prototype.interfaces_=function(){return[U]},nt.prototype.getClass=function(){return nt},Object.defineProperties(nt,bt);var Vt=function(){},$t=function(r){function o(){r.call(this,"Projective point not representable on the Cartesian plane.")}return r&&(o.__proto__=r),o.prototype=Object.create(r&&r.prototype),o.prototype.constructor=o,o.prototype.interfaces_=function(){return[]},o.prototype.getClass=function(){return o},o}(Vt),Ut=function(){};Ut.arraycopy=function(r,o,a,l,h){for(var m=0,S=o;S<o+h;S++)a[l+m]=r[S],m++},Ut.getProperty=function(r){return{"line.separator":\`
|