s3m-three 0.3.6 → 0.3.7

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.
Files changed (43) hide show
  1. package/dist/browser/assets/{s3mWorker-hZY5KqWF.js → s3mWorker-D7AV6O30.js} +1 -1
  2. package/dist/browser/s3m-three.iife.ext-three.js +20 -20
  3. package/dist/browser/s3m-three.iife.js +20 -20
  4. package/dist/core/TextureDecode.d.ts +22 -1
  5. package/dist/core/TextureDecode.d.ts.map +1 -1
  6. package/dist/core/TextureDecode.js +47 -3
  7. package/dist/core/TextureDecode.js.map +1 -1
  8. package/dist/core/TileGeometry.d.ts +92 -0
  9. package/dist/core/TileGeometry.d.ts.map +1 -0
  10. package/dist/core/TileGeometry.js +607 -0
  11. package/dist/core/TileGeometry.js.map +1 -0
  12. package/dist/render/GeometryBuilder.d.ts +8 -10
  13. package/dist/render/GeometryBuilder.d.ts.map +1 -1
  14. package/dist/render/GeometryBuilder.js +77 -555
  15. package/dist/render/GeometryBuilder.js.map +1 -1
  16. package/dist/render/S3MViewer.d.ts +2 -0
  17. package/dist/render/S3MViewer.d.ts.map +1 -1
  18. package/dist/render/S3MViewer.js +9 -1
  19. package/dist/render/S3MViewer.js.map +1 -1
  20. package/dist/render/TextureFactory.d.ts +2 -1
  21. package/dist/render/TextureFactory.d.ts.map +1 -1
  22. package/dist/render/TextureFactory.js +30 -6
  23. package/dist/render/TextureFactory.js.map +1 -1
  24. package/dist/tileset/S3MTileset.d.ts +6 -2
  25. package/dist/tileset/S3MTileset.d.ts.map +1 -1
  26. package/dist/tileset/S3MTileset.js +14 -6
  27. package/dist/tileset/S3MTileset.js.map +1 -1
  28. package/dist/worker/S3MWorkerClient.d.ts +12 -4
  29. package/dist/worker/S3MWorkerClient.d.ts.map +1 -1
  30. package/dist/worker/S3MWorkerClient.js +12 -8
  31. package/dist/worker/S3MWorkerClient.js.map +1 -1
  32. package/dist/worker/s3mWorker.js +11 -3
  33. package/dist/worker/s3mWorker.js.map +1 -1
  34. package/docs/API.md +2 -0
  35. package/package.json +1 -1
  36. package/src/core/TextureDecode.ts +69 -3
  37. package/src/core/TileGeometry.ts +745 -0
  38. package/src/render/GeometryBuilder.ts +91 -617
  39. package/src/render/S3MViewer.ts +11 -3
  40. package/src/render/TextureFactory.ts +42 -8
  41. package/src/tileset/S3MTileset.ts +22 -8
  42. package/src/worker/S3MWorkerClient.ts +18 -9
  43. package/src/worker/s3mWorker.ts +24 -6
@@ -3832,12 +3832,12 @@ void main() {
3832
3832
 
3833
3833
  }
3834
3834
 
3835
- }`,Ll=class{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(e,t,n){if(this.texture===null){let r=new ro,i=e.properties.get(r);i.__webglTexture=t.texture,(t.depthNear!=n.depthNear||t.depthFar!=n.depthFar)&&(this.depthNear=t.depthNear,this.depthFar=t.depthFar),this.texture=r}}getMesh(e){if(this.texture!==null&&this.mesh===null){let t=e.cameras[0].viewport,n=new gc({vertexShader:Fl,fragmentShader:Il,uniforms:{depthColor:{value:this.texture},depthWidth:{value:t.z},depthHeight:{value:t.w}}});this.mesh=new dc(new Pc(20,20),n)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}},Rl=class extends Ra{constructor(e,t){super();let n=this,r=null,i=1,a=null,o=`local-floor`,s=1,c=null,l=null,u=null,d=null,f=null,p=null,m=new Ll,h=t.getContextAttributes(),g=null,_=null,v=[],y=[],b=new B,x=null,S=new xc;S.layers.enable(1),S.viewport=new io;let C=new xc;C.layers.enable(2),C.viewport=new io;let w=[S,C],T=new jl;T.layers.enable(1),T.layers.enable(2);let E=null,D=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(e){let t=v[e];return t===void 0&&(t=new Pl,v[e]=t),t.getTargetRaySpace()},this.getControllerGrip=function(e){let t=v[e];return t===void 0&&(t=new Pl,v[e]=t),t.getGripSpace()},this.getHand=function(e){let t=v[e];return t===void 0&&(t=new Pl,v[e]=t),t.getHandSpace()};function O(e){let t=y.indexOf(e.inputSource);if(t===-1)return;let n=v[t];n!==void 0&&(n.update(e.inputSource,e.frame,c||a),n.dispatchEvent({type:e.type,data:e.inputSource}))}function k(){r.removeEventListener(`select`,O),r.removeEventListener(`selectstart`,O),r.removeEventListener(`selectend`,O),r.removeEventListener(`squeeze`,O),r.removeEventListener(`squeezestart`,O),r.removeEventListener(`squeezeend`,O),r.removeEventListener(`end`,k),r.removeEventListener(`inputsourceschange`,A);for(let e=0;e<v.length;e++){let t=y[e];t!==null&&(y[e]=null,v[e].disconnect(t))}E=null,D=null,m.reset(),e.setRenderTarget(g),f=null,d=null,u=null,r=null,_=null,oe.stop(),n.isPresenting=!1,e.setPixelRatio(x),e.setSize(b.width,b.height,!1),n.dispatchEvent({type:`sessionend`})}this.setFramebufferScaleFactor=function(e){i=e,n.isPresenting===!0&&console.warn(`THREE.WebXRManager: Cannot change framebuffer scale while presenting.`)},this.setReferenceSpaceType=function(e){o=e,n.isPresenting===!0&&console.warn(`THREE.WebXRManager: Cannot change reference space type while presenting.`)},this.getReferenceSpace=function(){return c||a},this.setReferenceSpace=function(e){c=e},this.getBaseLayer=function(){return d===null?f:d},this.getBinding=function(){return u},this.getFrame=function(){return p},this.getSession=function(){return r},this.setSession=async function(l){if(r=l,r!==null){if(g=e.getRenderTarget(),r.addEventListener(`select`,O),r.addEventListener(`selectstart`,O),r.addEventListener(`selectend`,O),r.addEventListener(`squeeze`,O),r.addEventListener(`squeezestart`,O),r.addEventListener(`squeezeend`,O),r.addEventListener(`end`,k),r.addEventListener(`inputsourceschange`,A),h.xrCompatible!==!0&&await t.makeXRCompatible(),x=e.getPixelRatio(),e.getSize(b),r.renderState.layers===void 0){let n={antialias:h.antialias,alpha:!0,depth:h.depth,stencil:h.stencil,framebufferScaleFactor:i};f=new XRWebGLLayer(r,t,n),r.updateRenderState({baseLayer:f}),e.setPixelRatio(1),e.setSize(f.framebufferWidth,f.framebufferHeight,!1),_=new oo(f.framebufferWidth,f.framebufferHeight,{format:ci,type:Jr,colorSpace:e.outputColorSpace,stencilBuffer:h.stencil})}else{let n=null,a=null,o=null;h.depth&&(o=h.stencil?t.DEPTH24_STENCIL8:t.DEPTH_COMPONENT24,n=h.stencil?fi:di,a=h.stencil?ii:$r);let s={colorFormat:t.RGBA8,depthFormat:o,scaleFactor:i};u=new XRWebGLBinding(r,t),d=u.createProjectionLayer(s),r.updateRenderState({layers:[d]}),e.setPixelRatio(1),e.setSize(d.textureWidth,d.textureHeight,!1),_=new oo(d.textureWidth,d.textureHeight,{format:ci,type:Jr,depthTexture:new $c(d.textureWidth,d.textureHeight,a,void 0,void 0,void 0,void 0,void 0,void 0,n),stencilBuffer:h.stencil,colorSpace:e.outputColorSpace,samples:h.antialias?4:0,resolveDepthBuffer:d.ignoreDepthValues===!1})}_.isXRRenderTarget=!0,this.setFoveation(s),c=null,a=await r.requestReferenceSpace(o),oe.setContext(r),oe.start(),n.isPresenting=!0,n.dispatchEvent({type:`sessionstart`})}},this.getEnvironmentBlendMode=function(){if(r!==null)return r.environmentBlendMode},this.getDepthTexture=function(){return m.getDepthTexture()};function A(e){for(let t=0;t<e.removed.length;t++){let n=e.removed[t],r=y.indexOf(n);r>=0&&(y[r]=null,v[r].disconnect(n))}for(let t=0;t<e.added.length;t++){let n=e.added[t],r=y.indexOf(n);if(r===-1){for(let e=0;e<v.length;e++)if(e>=y.length){y.push(n),r=e;break}else if(y[e]===null){y[e]=n,r=e;break}if(r===-1)break}let i=v[r];i&&i.connect(n)}}let j=new H,ee=new H;function te(e,t,n){j.setFromMatrixPosition(t.matrixWorld),ee.setFromMatrixPosition(n.matrixWorld);let r=j.distanceTo(ee),i=t.projectionMatrix.elements,a=n.projectionMatrix.elements,o=i[14]/(i[10]-1),s=i[14]/(i[10]+1),c=(i[9]+1)/i[5],l=(i[9]-1)/i[5],u=(i[8]-1)/i[0],d=(a[8]+1)/a[0],f=o*u,p=o*d,m=r/(-u+d),h=m*-u;if(t.matrixWorld.decompose(e.position,e.quaternion,e.scale),e.translateX(h),e.translateZ(m),e.matrixWorld.compose(e.position,e.quaternion,e.scale),e.matrixWorldInverse.copy(e.matrixWorld).invert(),i[10]===-1)e.projectionMatrix.copy(t.projectionMatrix),e.projectionMatrixInverse.copy(t.projectionMatrixInverse);else{let t=o+m,n=s+m,i=f-h,a=p+(r-h),u=c*s/n*t,d=l*s/n*t;e.projectionMatrix.makePerspective(i,a,u,d,t,n),e.projectionMatrixInverse.copy(e.projectionMatrix).invert()}}function ne(e,t){t===null?e.matrixWorld.copy(e.matrix):e.matrixWorld.multiplyMatrices(t.matrixWorld,e.matrix),e.matrixWorldInverse.copy(e.matrixWorld).invert()}this.updateCamera=function(e){if(r===null)return;let t=e.near,n=e.far;m.texture!==null&&(m.depthNear>0&&(t=m.depthNear),m.depthFar>0&&(n=m.depthFar)),T.near=C.near=S.near=t,T.far=C.far=S.far=n,(E!==T.near||D!==T.far)&&(r.updateRenderState({depthNear:T.near,depthFar:T.far}),E=T.near,D=T.far);let i=e.parent,a=T.cameras;ne(T,i);for(let e=0;e<a.length;e++)ne(a[e],i);a.length===2?te(T,S,C):T.projectionMatrix.copy(S.projectionMatrix),re(e,T,i)};function re(e,t,n){n===null?e.matrix.copy(t.matrixWorld):(e.matrix.copy(n.matrixWorld),e.matrix.invert(),e.matrix.multiply(t.matrixWorld)),e.matrix.decompose(e.position,e.quaternion,e.scale),e.updateMatrixWorld(!0),e.projectionMatrix.copy(t.projectionMatrix),e.projectionMatrixInverse.copy(t.projectionMatrixInverse),e.isPerspectiveCamera&&(e.fov=Ha*2*Math.atan(1/e.projectionMatrix.elements[5]),e.zoom=1)}this.getCamera=function(){return T},this.getFoveation=function(){if(d!==null||f!==null)return s},this.setFoveation=function(e){s=e,d!==null&&(d.fixedFoveation=e),f!==null&&f.fixedFoveation!==void 0&&(f.fixedFoveation=e)},this.hasDepthSensing=function(){return m.texture!==null},this.getDepthSensingMesh=function(){return m.getMesh(T)};let ie=null;function ae(t,i){if(l=i.getViewerPose(c||a),p=i,l!==null){let t=l.views;f!==null&&(e.setRenderTargetFramebuffer(_,f.framebuffer),e.setRenderTarget(_));let n=!1;t.length!==T.cameras.length&&(T.cameras.length=0,n=!0);for(let r=0;r<t.length;r++){let i=t[r],a=null;if(f!==null)a=f.getViewport(i);else{let t=u.getViewSubImage(d,i);a=t.viewport,r===0&&(e.setRenderTargetTextures(_,t.colorTexture,d.ignoreDepthValues?void 0:t.depthStencilTexture),e.setRenderTarget(_))}let o=w[r];o===void 0&&(o=new xc,o.layers.enable(r),o.viewport=new io,w[r]=o),o.matrix.fromArray(i.transform.matrix),o.matrix.decompose(o.position,o.quaternion,o.scale),o.projectionMatrix.fromArray(i.projectionMatrix),o.projectionMatrixInverse.copy(o.projectionMatrix).invert(),o.viewport.set(a.x,a.y,a.width,a.height),r===0&&(T.matrix.copy(o.matrix),T.matrix.decompose(T.position,T.quaternion,T.scale)),n===!0&&T.cameras.push(o)}let i=r.enabledFeatures;if(i&&i.includes(`depth-sensing`)){let n=u.getDepthInformation(t[0]);n&&n.isValid&&n.texture&&m.init(e,n,r.renderState)}}for(let e=0;e<v.length;e++){let t=y[e],n=v[e];t!==null&&n!==void 0&&n.update(t,i,c||a)}ie&&ie(t,i),i.detectedPlanes&&n.dispatchEvent({type:`planesdetected`,data:i}),p=null}let oe=new ge;oe.setAnimationLoop(ae),this.setAnimationLoop=function(e){ie=e},this.dispose=function(){}}},zl=new Xo,Bl=new U,Vl=class{constructor(e={}){let{canvas:t=j(),context:n=null,depth:r=!0,stencil:i=!1,alpha:a=!1,antialias:o=!1,premultipliedAlpha:s=!0,preserveDrawingBuffer:c=!1,powerPreference:l=`default`,failIfMajorPerformanceCaveat:u=!1}=e;this.isWebGLRenderer=!0;let d;if(n!==null){if(typeof WebGLRenderingContext<`u`&&n instanceof WebGLRenderingContext)throw Error(`THREE.WebGLRenderer: WebGL 1 is not supported since r163.`);d=n.getContextAttributes().alpha}else d=a;let f=new Uint32Array(4),p=new Int32Array(4),m=null,h=null,g=[],_=[];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=fa,this.toneMapping=0,this.toneMappingExposure=1;let v=this,y=!1,b=0,x=0,S=null,C=-1,w=null,T=new io,E=new io,D=null,O=new W(0),k=0,A=t.width,ie=t.height,ae=1,oe=null,se=null,ce=new io(0,0,A,ie),le=new io(0,0,A,ie),M=!1,N=new Nc,ue=!1,de=!1,fe=new U,pe=new U,me=new H,he=new io,we={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0},Te=!1;function Ee(){return S===null?ae:1}let P=n;function De(e,n){return t.getContext(e,n)}try{let e={alpha:!0,depth:r,stencil:i,antialias:o,premultipliedAlpha:s,preserveDrawingBuffer:c,powerPreference:l,failIfMajorPerformanceCaveat:u};if(`setAttribute`in t&&t.setAttribute(`data-engine`,`three.js r169`),t.addEventListener(`webglcontextlost`,rt,!1),t.addEventListener(`webglcontextrestored`,it,!1),t.addEventListener(`webglcontextcreationerror`,at,!1),P===null){let t=`webgl2`;if(P=De(t,e),P===null)throw De(t)?Error(`Error creating WebGL context with your selected attributes.`):Error(`Error creating WebGL context.`)}}catch(e){throw console.error(`THREE.WebGLRenderer: `+e.message),e}let Oe,ke,F,I,L,R,Le,Re,ze,Be,Ve,He,Ue,We,Ge,Ke,qe,Je,Ye,Xe,Ze,Qe,$e,et;function tt(){Oe=new je(P),Oe.init(),Qe=new gn(P,Oe),ke=new xe(P,Oe,e,Qe),F=new ln(P),ke.reverseDepthBuffer&&F.buffers.depth.setReversed(!0),I=new Pe(P),L=new Xt,R=new hn(P,Oe,F,L,ke,Qe,I),Le=new Ce(v),Re=new Ae(v),ze=new _e(P),$e=new ye(P,ze),Be=new Me(P,ze,I,$e),Ve=new Ie(P,Be,ze,I),Ye=new Fe(P,ke,R),Ke=new Se(L),He=new Yt(v,Le,Re,Oe,ke,$e,Ke),Ue=new _n(v,L),We=new en,Ge=new sn(Oe),Je=new ve(v,Le,Re,F,Ve,d,s),qe=new cn(v,Ve,ke),et=new vn(P,I,ke,F),Xe=new be(P,Oe,I),Ze=new Ne(P,Oe,I),I.programs=He.programs,v.capabilities=ke,v.extensions=Oe,v.properties=L,v.renderLists=We,v.shadowMap=qe,v.state=F,v.info=I}tt();let nt=new Rl(v,P);this.xr=nt,this.getContext=function(){return P},this.getContextAttributes=function(){return P.getContextAttributes()},this.forceContextLoss=function(){let e=Oe.get(`WEBGL_lose_context`);e&&e.loseContext()},this.forceContextRestore=function(){let e=Oe.get(`WEBGL_lose_context`);e&&e.restoreContext()},this.getPixelRatio=function(){return ae},this.setPixelRatio=function(e){e!==void 0&&(ae=e,this.setSize(A,ie,!1))},this.getSize=function(e){return e.set(A,ie)},this.setSize=function(e,n,r=!0){nt.isPresenting?console.warn(`THREE.WebGLRenderer: Can't change size while VR device is presenting.`):(A=e,ie=n,t.width=Math.floor(e*ae),t.height=Math.floor(n*ae),r===!0&&(t.style.width=e+`px`,t.style.height=n+`px`),this.setViewport(0,0,e,n))},this.getDrawingBufferSize=function(e){return e.set(A*ae,ie*ae).floor()},this.setDrawingBufferSize=function(e,n,r){A=e,ie=n,ae=r,t.width=Math.floor(e*r),t.height=Math.floor(n*r),this.setViewport(0,0,e,n)},this.getCurrentViewport=function(e){return e.copy(T)},this.getViewport=function(e){return e.copy(ce)},this.setViewport=function(e,t,n,r){e.isVector4?ce.set(e.x,e.y,e.z,e.w):ce.set(e,t,n,r),F.viewport(T.copy(ce).multiplyScalar(ae).round())},this.getScissor=function(e){return e.copy(le)},this.setScissor=function(e,t,n,r){e.isVector4?le.set(e.x,e.y,e.z,e.w):le.set(e,t,n,r),F.scissor(E.copy(le).multiplyScalar(ae).round())},this.getScissorTest=function(){return M},this.setScissorTest=function(e){F.setScissorTest(M=e)},this.setOpaqueSort=function(e){oe=e},this.setTransparentSort=function(e){se=e},this.getClearColor=function(e){return e.copy(Je.getClearColor())},this.setClearColor=function(){Je.setClearColor.apply(Je,arguments)},this.getClearAlpha=function(){return Je.getClearAlpha()},this.setClearAlpha=function(){Je.setClearAlpha.apply(Je,arguments)},this.clear=function(e=!0,t=!0,n=!0){let r=0;if(e){let e=!1;if(S!==null){let t=S.texture.format;e=t===1033||t===1031||t===1029}if(e){let e=S.texture.type,t=e===1009||e===1014||e===1012||e===1020||e===1017||e===1018,n=Je.getClearColor(),r=Je.getClearAlpha(),i=n.r,a=n.g,o=n.b;t?(f[0]=i,f[1]=a,f[2]=o,f[3]=r,P.clearBufferuiv(P.COLOR,0,f)):(p[0]=i,p[1]=a,p[2]=o,p[3]=r,P.clearBufferiv(P.COLOR,0,p))}else r|=P.COLOR_BUFFER_BIT}t&&(r|=P.DEPTH_BUFFER_BIT,P.clearDepth(+!this.capabilities.reverseDepthBuffer)),n&&(r|=P.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(4294967295)),P.clear(r)},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`,rt,!1),t.removeEventListener(`webglcontextrestored`,it,!1),t.removeEventListener(`webglcontextcreationerror`,at,!1),We.dispose(),Ge.dispose(),L.dispose(),Le.dispose(),Re.dispose(),Ve.dispose(),$e.dispose(),et.dispose(),He.dispose(),nt.dispose(),nt.removeEventListener(`sessionstart`,ft),nt.removeEventListener(`sessionend`,pt),mt.stop()};function rt(e){e.preventDefault(),console.log(`THREE.WebGLRenderer: Context Lost.`),y=!0}function it(){console.log(`THREE.WebGLRenderer: Context Restored.`),y=!1;let e=I.autoReset,t=qe.enabled,n=qe.autoUpdate,r=qe.needsUpdate,i=qe.type;tt(),I.autoReset=e,qe.enabled=t,qe.autoUpdate=n,qe.needsUpdate=r,qe.type=i}function at(e){console.error(`THREE.WebGLRenderer: A WebGL context could not be created. Reason: `,e.statusMessage)}function ot(e){let t=e.target;t.removeEventListener(`dispose`,ot),st(t)}function st(e){ct(e),L.remove(e)}function ct(e){let t=L.get(e).programs;t!==void 0&&(t.forEach(function(e){He.releaseProgram(e)}),e.isShaderMaterial&&He.releaseShaderCache(e))}this.renderBufferDirect=function(e,t,n,r,i,a){t===null&&(t=we);let o=i.isMesh&&i.matrixWorld.determinant()<0,s=Ct(e,t,n,r,i);F.setMaterial(r,o);let c=n.index,l=1;if(r.wireframe===!0){if(c=Be.getWireframeAttribute(n),c===void 0)return;l=2}let u=n.drawRange,d=n.attributes.position,f=u.start*l,p=(u.start+u.count)*l;a!==null&&(f=Math.max(f,a.start*l),p=Math.min(p,(a.start+a.count)*l)),c===null?d!=null&&(f=Math.max(f,0),p=Math.min(p,d.count)):(f=Math.max(f,0),p=Math.min(p,c.count));let m=p-f;if(m<0||m===1/0)return;$e.setup(i,r,s,n,c);let h,g=Xe;if(c!==null&&(h=ze.get(c),g=Ze,g.setIndex(h)),i.isMesh)r.wireframe===!0?(F.setLineWidth(r.wireframeLinewidth*Ee()),g.setMode(P.LINES)):g.setMode(P.TRIANGLES);else if(i.isLine){let e=r.linewidth;e===void 0&&(e=1),F.setLineWidth(e*Ee()),i.isLineSegments?g.setMode(P.LINES):i.isLineLoop?g.setMode(P.LINE_LOOP):g.setMode(P.LINE_STRIP)}else i.isPoints?g.setMode(P.POINTS):i.isSprite&&g.setMode(P.TRIANGLES);if(i.isBatchedMesh){if(i._multiDrawInstances!==null)g.renderMultiDrawInstances(i._multiDrawStarts,i._multiDrawCounts,i._multiDrawCount,i._multiDrawInstances);else if(Oe.get(`WEBGL_multi_draw`))g.renderMultiDraw(i._multiDrawStarts,i._multiDrawCounts,i._multiDrawCount);else{let e=i._multiDrawStarts,t=i._multiDrawCounts,n=i._multiDrawCount,a=c?ze.get(c).bytesPerElement:1,o=L.get(r).currentProgram.getUniforms();for(let r=0;r<n;r++)o.setValue(P,`_gl_DrawID`,r),g.render(e[r]/a,t[r])}}else if(i.isInstancedMesh)g.renderInstances(f,m,i.count);else if(n.isInstancedBufferGeometry){let e=n._maxInstanceCount===void 0?1/0:n._maxInstanceCount,t=Math.min(n.instanceCount,e);g.renderInstances(f,m,t)}else g.render(f,m)};function lt(e,t,n){e.transparent===!0&&e.side===2&&e.forceSinglePass===!1?(e.side=1,e.needsUpdate=!0,bt(e,t,n),e.side=0,e.needsUpdate=!0,bt(e,t,n),e.side=2):bt(e,t,n)}this.compile=function(e,t,n=null){n===null&&(n=e),h=Ge.get(n),h.init(t),_.push(h),n.traverseVisible(function(e){e.isLight&&e.layers.test(t.layers)&&(h.pushLight(e),e.castShadow&&h.pushShadow(e))}),e!==n&&e.traverseVisible(function(e){e.isLight&&e.layers.test(t.layers)&&(h.pushLight(e),e.castShadow&&h.pushShadow(e))}),h.setupLights();let r=new Set;return e.traverse(function(e){if(!(e.isMesh||e.isPoints||e.isLine||e.isSprite))return;let t=e.material;if(t){if(Array.isArray(t))for(let i=0;i<t.length;i++){let a=t[i];lt(a,n,e),r.add(a)}else lt(t,n,e),r.add(t)}}),_.pop(),h=null,r},this.compileAsync=function(e,t,n=null){let r=this.compile(e,t,n);return new Promise(t=>{function n(){r.forEach(function(e){L.get(e).currentProgram.isReady()&&r.delete(e)}),r.size===0?t(e):setTimeout(n,10)}Oe.get(`KHR_parallel_shader_compile`)===null?setTimeout(n,10):n()})};let ut=null;function dt(e){ut&&ut(e)}function ft(){mt.stop()}function pt(){mt.start()}let mt=new ge;mt.setAnimationLoop(dt),typeof self<`u`&&mt.setContext(self),this.setAnimationLoop=function(e){ut=e,nt.setAnimationLoop(e),e===null?mt.stop():mt.start()},nt.addEventListener(`sessionstart`,ft),nt.addEventListener(`sessionend`,pt),this.render=function(e,t){if(t!==void 0&&t.isCamera!==!0){console.error(`THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.`);return}if(y===!0)return;if(e.matrixWorldAutoUpdate===!0&&e.updateMatrixWorld(),t.parent===null&&t.matrixWorldAutoUpdate===!0&&t.updateMatrixWorld(),nt.enabled===!0&&nt.isPresenting===!0&&(nt.cameraAutoUpdate===!0&&nt.updateCamera(t),t=nt.getCamera()),e.isScene===!0&&e.onBeforeRender(v,e,t,S),h=Ge.get(e,_.length),h.init(t),_.push(h),pe.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),N.setFromProjectionMatrix(pe),de=this.localClippingEnabled,ue=Ke.init(this.clippingPlanes,de),m=We.get(e,g.length),m.init(),g.push(m),nt.enabled===!0&&nt.isPresenting===!0){let e=v.xr.getDepthSensingMesh();e!==null&&ht(e,t,-1/0,v.sortObjects)}ht(e,t,0,v.sortObjects),m.finish(),v.sortObjects===!0&&m.sort(oe,se),Te=nt.enabled===!1||nt.isPresenting===!1||nt.hasDepthSensing()===!1,Te&&Je.addToRenderList(m,e),this.info.render.frame++,ue===!0&&Ke.beginShadows();let n=h.state.shadowsArray;qe.render(n,e,t),ue===!0&&Ke.endShadows(),this.info.autoReset===!0&&this.info.reset();let r=m.opaque,i=m.transmissive;if(h.setupLights(),t.isArrayCamera){let n=t.cameras;if(i.length>0)for(let t=0,a=n.length;t<a;t++){let a=n[t];_t(r,i,e,a)}Te&&Je.render(e);for(let t=0,r=n.length;t<r;t++){let r=n[t];gt(m,e,r,r.viewport)}}else i.length>0&&_t(r,i,e,t),Te&&Je.render(e),gt(m,e,t);S!==null&&(R.updateMultisampleRenderTarget(S),R.updateRenderTargetMipmap(S)),e.isScene===!0&&e.onAfterRender(v,e,t),$e.resetDefaultState(),C=-1,w=null,_.pop(),_.length>0?(h=_[_.length-1],ue===!0&&Ke.setGlobalState(v.clippingPlanes,h.state.camera)):h=null,g.pop(),m=g.length>0?g[g.length-1]:null};function ht(e,t,n,r){if(e.visible===!1)return;if(e.layers.test(t.layers)){if(e.isGroup)n=e.renderOrder;else if(e.isLOD)e.autoUpdate===!0&&e.update(t);else if(e.isLight)h.pushLight(e),e.castShadow&&h.pushShadow(e);else if(e.isSprite){if(!e.frustumCulled||N.intersectsSprite(e)){r&&he.setFromMatrixPosition(e.matrixWorld).applyMatrix4(pe);let t=Ve.update(e),i=e.material;i.visible&&m.push(e,t,i,n,he.z,null)}}else if((e.isMesh||e.isLine||e.isPoints)&&(!e.frustumCulled||N.intersectsObject(e))){let t=Ve.update(e),i=e.material;if(r&&(e.boundingSphere===void 0?(t.boundingSphere===null&&t.computeBoundingSphere(),he.copy(t.boundingSphere.center)):(e.boundingSphere===null&&e.computeBoundingSphere(),he.copy(e.boundingSphere.center)),he.applyMatrix4(e.matrixWorld).applyMatrix4(pe)),Array.isArray(i)){let r=t.groups;for(let a=0,o=r.length;a<o;a++){let o=r[a],s=i[o.materialIndex];s&&s.visible&&m.push(e,t,s,n,he.z,o)}}else i.visible&&m.push(e,t,i,n,he.z,null)}}let i=e.children;for(let e=0,a=i.length;e<a;e++)ht(i[e],t,n,r)}function gt(e,t,n,r){let i=e.opaque,a=e.transmissive,o=e.transparent;h.setupLightsView(n),ue===!0&&Ke.setGlobalState(v.clippingPlanes,n),r&&F.viewport(T.copy(r)),i.length>0&&vt(i,t,n),a.length>0&&vt(a,t,n),o.length>0&&vt(o,t,n),F.buffers.depth.setTest(!0),F.buffers.depth.setMask(!0),F.buffers.color.setMask(!0),F.setPolygonOffset(!1)}function _t(e,t,n,r){if((n.isScene===!0?n.overrideMaterial:null)!==null)return;h.state.transmissionRenderTarget[r.id]===void 0&&(h.state.transmissionRenderTarget[r.id]=new oo(1,1,{generateMipmaps:!0,type:Oe.has(`EXT_color_buffer_half_float`)||Oe.has(`EXT_color_buffer_float`)?ti:Jr,minFilter:Kr,samples:4,stencilBuffer:i,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:Za.workingColorSpace}));let a=h.state.transmissionRenderTarget[r.id],o=r.viewport||T;a.setSize(o.z,o.w);let s=v.getRenderTarget();v.setRenderTarget(a),v.getClearColor(O),k=v.getClearAlpha(),k<1&&v.setClearColor(16777215,.5),v.clear(),Te&&Je.render(n);let c=v.toneMapping;v.toneMapping=0;let l=r.viewport;if(r.viewport!==void 0&&(r.viewport=void 0),h.setupLightsView(r),ue===!0&&Ke.setGlobalState(v.clippingPlanes,r),vt(e,n,r),R.updateMultisampleRenderTarget(a),R.updateRenderTargetMipmap(a),Oe.has(`WEBGL_multisampled_render_to_texture`)===!1){let e=!1;for(let i=0,a=t.length;i<a;i++){let a=t[i],o=a.object,s=a.geometry,c=a.material,l=a.group;if(c.side===2&&o.layers.test(r.layers)){let t=c.side;c.side=1,c.needsUpdate=!0,yt(o,n,r,s,c,l),c.side=t,c.needsUpdate=!0,e=!0}}e===!0&&(R.updateMultisampleRenderTarget(a),R.updateRenderTargetMipmap(a))}v.setRenderTarget(s),v.setClearColor(O,k),l!==void 0&&(r.viewport=l),v.toneMapping=c}function vt(e,t,n){let r=t.isScene===!0?t.overrideMaterial:null;for(let i=0,a=e.length;i<a;i++){let a=e[i],o=a.object,s=a.geometry,c=r===null?a.material:r,l=a.group;o.layers.test(n.layers)&&yt(o,t,n,s,c,l)}}function yt(e,t,n,r,i,a){e.onBeforeRender(v,t,n,r,i,a),e.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse,e.matrixWorld),e.normalMatrix.getNormalMatrix(e.modelViewMatrix),i.onBeforeRender(v,t,n,r,e,a),i.transparent===!0&&i.side===2&&i.forceSinglePass===!1?(i.side=1,i.needsUpdate=!0,v.renderBufferDirect(n,t,r,i,e,a),i.side=0,i.needsUpdate=!0,v.renderBufferDirect(n,t,r,i,e,a),i.side=2):v.renderBufferDirect(n,t,r,i,e,a),e.onAfterRender(v,t,n,r,i,a)}function bt(e,t,n){t.isScene!==!0&&(t=we);let r=L.get(e),i=h.state.lights,a=h.state.shadowsArray,o=i.state.version,s=He.getParameters(e,i.state,a,t,n),c=He.getProgramCacheKey(s),l=r.programs;r.environment=e.isMeshStandardMaterial?t.environment:null,r.fog=t.fog,r.envMap=(e.isMeshStandardMaterial?Re:Le).get(e.envMap||r.environment),r.envMapRotation=r.environment!==null&&e.envMap===null?t.environmentRotation:e.envMapRotation,l===void 0&&(e.addEventListener(`dispose`,ot),l=new Map,r.programs=l);let u=l.get(c);if(u!==void 0){if(r.currentProgram===u&&r.lightsStateVersion===o)return St(e,s),u}else s.uniforms=He.getUniforms(e),e.onBeforeCompile(s,v),u=He.acquireProgram(s,c),l.set(c,u),r.uniforms=s.uniforms;let d=r.uniforms;return(!e.isShaderMaterial&&!e.isRawShaderMaterial||e.clipping===!0)&&(d.clippingPlanes=Ke.uniform),St(e,s),r.needsLights=Tt(e),r.lightsStateVersion=o,r.needsLights&&(d.ambientLightColor.value=i.state.ambient,d.lightProbe.value=i.state.probe,d.directionalLights.value=i.state.directional,d.directionalLightShadows.value=i.state.directionalShadow,d.spotLights.value=i.state.spot,d.spotLightShadows.value=i.state.spotShadow,d.rectAreaLights.value=i.state.rectArea,d.ltc_1.value=i.state.rectAreaLTC1,d.ltc_2.value=i.state.rectAreaLTC2,d.pointLights.value=i.state.point,d.pointLightShadows.value=i.state.pointShadow,d.hemisphereLights.value=i.state.hemi,d.directionalShadowMap.value=i.state.directionalShadowMap,d.directionalShadowMatrix.value=i.state.directionalShadowMatrix,d.spotShadowMap.value=i.state.spotShadowMap,d.spotLightMatrix.value=i.state.spotLightMatrix,d.spotLightMap.value=i.state.spotLightMap,d.pointShadowMap.value=i.state.pointShadowMap,d.pointShadowMatrix.value=i.state.pointShadowMatrix),r.currentProgram=u,r.uniformsList=null,u}function xt(e){if(e.uniformsList===null){let t=e.currentProgram.getUniforms();e.uniformsList=ml.seqWithValue(t.seq,e.uniforms)}return e.uniformsList}function St(e,t){let n=L.get(e);n.outputColorSpace=t.outputColorSpace,n.batching=t.batching,n.batchingColor=t.batchingColor,n.instancing=t.instancing,n.instancingColor=t.instancingColor,n.instancingMorph=t.instancingMorph,n.skinning=t.skinning,n.morphTargets=t.morphTargets,n.morphNormals=t.morphNormals,n.morphColors=t.morphColors,n.morphTargetsCount=t.morphTargetsCount,n.numClippingPlanes=t.numClippingPlanes,n.numIntersection=t.numClipIntersection,n.vertexAlphas=t.vertexAlphas,n.vertexTangents=t.vertexTangents,n.toneMapping=t.toneMapping}function Ct(e,t,n,r,i){t.isScene!==!0&&(t=we),R.resetTextureUnits();let a=t.fog,o=r.isMeshStandardMaterial?t.environment:null,s=S===null?v.outputColorSpace:S.isXRRenderTarget===!0?S.texture.colorSpace:pa,c=(r.isMeshStandardMaterial?Re:Le).get(r.envMap||o),l=r.vertexColors===!0&&!!n.attributes.color&&n.attributes.color.itemSize===4,u=!!n.attributes.tangent&&(!!r.normalMap||r.anisotropy>0),d=!!n.morphAttributes.position,f=!!n.morphAttributes.normal,p=!!n.morphAttributes.color,m=0;r.toneMapped&&(S===null||S.isXRRenderTarget===!0)&&(m=v.toneMapping);let g=n.morphAttributes.position||n.morphAttributes.normal||n.morphAttributes.color,_=g===void 0?0:g.length,y=L.get(r),b=h.state.lights;if(ue===!0&&(de===!0||e!==w)){let t=e===w&&r.id===C;Ke.setState(r,e,t)}let x=!1;r.version===y.__version?y.needsLights&&y.lightsStateVersion!==b.state.version?x=!0:y.outputColorSpace===s?i.isBatchedMesh&&y.batching===!1||!i.isBatchedMesh&&y.batching===!0||i.isBatchedMesh&&y.batchingColor===!0&&i.colorTexture===null||i.isBatchedMesh&&y.batchingColor===!1&&i.colorTexture!==null||i.isInstancedMesh&&y.instancing===!1||!i.isInstancedMesh&&y.instancing===!0||i.isSkinnedMesh&&y.skinning===!1||!i.isSkinnedMesh&&y.skinning===!0||i.isInstancedMesh&&y.instancingColor===!0&&i.instanceColor===null||i.isInstancedMesh&&y.instancingColor===!1&&i.instanceColor!==null||i.isInstancedMesh&&y.instancingMorph===!0&&i.morphTexture===null||i.isInstancedMesh&&y.instancingMorph===!1&&i.morphTexture!==null?x=!0:y.envMap===c?r.fog===!0&&y.fog!==a||y.numClippingPlanes!==void 0&&(y.numClippingPlanes!==Ke.numPlanes||y.numIntersection!==Ke.numIntersection)?x=!0:y.vertexAlphas===l&&y.vertexTangents===u&&y.morphTargets===d&&y.morphNormals===f&&y.morphColors===p&&y.toneMapping===m?y.morphTargetsCount!==_&&(x=!0):x=!0:x=!0:x=!0:(x=!0,y.__version=r.version);let T=y.currentProgram;x===!0&&(T=bt(r,t,i));let E=!1,D=!1,O=!1,k=T.getUniforms(),A=y.uniforms;if(F.useProgram(T.program)&&(E=!0,D=!0,O=!0),r.id!==C&&(C=r.id,D=!0),E||w!==e){ke.reverseDepthBuffer?(fe.copy(e.projectionMatrix),ne(fe),re(fe),k.setValue(P,`projectionMatrix`,fe)):k.setValue(P,`projectionMatrix`,e.projectionMatrix),k.setValue(P,`viewMatrix`,e.matrixWorldInverse);let t=k.map.cameraPosition;t!==void 0&&t.setValue(P,me.setFromMatrixPosition(e.matrixWorld)),ke.logarithmicDepthBuffer&&k.setValue(P,`logDepthBufFC`,2/(Math.log(e.far+1)/Math.LN2)),(r.isMeshPhongMaterial||r.isMeshToonMaterial||r.isMeshLambertMaterial||r.isMeshBasicMaterial||r.isMeshStandardMaterial||r.isShaderMaterial)&&k.setValue(P,`isOrthographic`,e.isOrthographicCamera===!0),w!==e&&(w=e,D=!0,O=!0)}if(i.isSkinnedMesh){k.setOptional(P,i,`bindMatrix`),k.setOptional(P,i,`bindMatrixInverse`);let e=i.skeleton;e&&(e.boneTexture===null&&e.computeBoneTexture(),k.setValue(P,`boneTexture`,e.boneTexture,R))}i.isBatchedMesh&&(k.setOptional(P,i,`batchingTexture`),k.setValue(P,`batchingTexture`,i._matricesTexture,R),k.setOptional(P,i,`batchingIdTexture`),k.setValue(P,`batchingIdTexture`,i._indirectTexture,R),k.setOptional(P,i,`batchingColorTexture`),i._colorsTexture!==null&&k.setValue(P,`batchingColorTexture`,i._colorsTexture,R));let j=n.morphAttributes;if((j.position!==void 0||j.normal!==void 0||j.color!==void 0)&&Ye.update(i,n,T),(D||y.receiveShadow!==i.receiveShadow)&&(y.receiveShadow=i.receiveShadow,k.setValue(P,`receiveShadow`,i.receiveShadow)),r.isMeshGouraudMaterial&&r.envMap!==null&&(A.envMap.value=c,A.flipEnvMap.value=c.isCubeTexture&&c.isRenderTargetTexture===!1?-1:1),r.isMeshStandardMaterial&&r.envMap===null&&t.environment!==null&&(A.envMapIntensity.value=t.environmentIntensity),D&&(k.setValue(P,`toneMappingExposure`,v.toneMappingExposure),y.needsLights&&wt(A,O),a&&r.fog===!0&&Ue.refreshFogUniforms(A,a),Ue.refreshMaterialUniforms(A,r,ae,ie,h.state.transmissionRenderTarget[e.id]),ml.upload(P,xt(y),A,R)),r.isShaderMaterial&&r.uniformsNeedUpdate===!0&&(ml.upload(P,xt(y),A,R),r.uniformsNeedUpdate=!1),r.isSpriteMaterial&&k.setValue(P,`center`,i.center),k.setValue(P,`modelViewMatrix`,i.modelViewMatrix),k.setValue(P,`normalMatrix`,i.normalMatrix),k.setValue(P,`modelMatrix`,i.matrixWorld),r.isShaderMaterial||r.isRawShaderMaterial){let e=r.uniformsGroups;for(let t=0,n=e.length;t<n;t++){let n=e[t];et.update(n,T),et.bind(n,T)}}return T}function wt(e,t){e.ambientLightColor.needsUpdate=t,e.lightProbe.needsUpdate=t,e.directionalLights.needsUpdate=t,e.directionalLightShadows.needsUpdate=t,e.pointLights.needsUpdate=t,e.pointLightShadows.needsUpdate=t,e.spotLights.needsUpdate=t,e.spotLightShadows.needsUpdate=t,e.rectAreaLights.needsUpdate=t,e.hemisphereLights.needsUpdate=t}function Tt(e){return e.isMeshLambertMaterial||e.isMeshToonMaterial||e.isMeshPhongMaterial||e.isMeshStandardMaterial||e.isShadowMaterial||e.isShaderMaterial&&e.lights===!0}this.getActiveCubeFace=function(){return b},this.getActiveMipmapLevel=function(){return x},this.getRenderTarget=function(){return S},this.setRenderTargetTextures=function(e,t,n){L.get(e.texture).__webglTexture=t,L.get(e.depthTexture).__webglTexture=n;let r=L.get(e);r.__hasExternalTextures=!0,r.__autoAllocateDepthBuffer=n===void 0,r.__autoAllocateDepthBuffer||Oe.has(`WEBGL_multisampled_render_to_texture`)===!0&&(console.warn(`THREE.WebGLRenderer: Render-to-texture extension was disabled because an external texture was provided`),r.__useRenderToTexture=!1)},this.setRenderTargetFramebuffer=function(e,t){let n=L.get(e);n.__webglFramebuffer=t,n.__useDefaultFramebuffer=t===void 0},this.setRenderTarget=function(e,t=0,n=0){S=e,b=t,x=n;let r=!0,i=null,a=!1,o=!1;if(e){let s=L.get(e);if(s.__useDefaultFramebuffer!==void 0)F.bindFramebuffer(P.FRAMEBUFFER,null),r=!1;else if(s.__webglFramebuffer===void 0)R.setupRenderTarget(e);else if(s.__hasExternalTextures)R.rebindTextures(e,L.get(e.texture).__webglTexture,L.get(e.depthTexture).__webglTexture);else if(e.depthBuffer){let t=e.depthTexture;if(s.__boundDepthTexture!==t){if(t!==null&&L.has(t)&&(e.width!==t.image.width||e.height!==t.image.height))throw Error(`WebGLRenderTarget: Attached DepthTexture is initialized to the incorrect size.`);R.setupDepthRenderbuffer(e)}}let c=e.texture;(c.isData3DTexture||c.isDataArrayTexture||c.isCompressedArrayTexture)&&(o=!0);let l=L.get(e).__webglFramebuffer;e.isWebGLCubeRenderTarget?(i=Array.isArray(l[t])?l[t][n]:l[t],a=!0):i=e.samples>0&&R.useMultisampledRTT(e)===!1?L.get(e).__webglMultisampledFramebuffer:Array.isArray(l)?l[n]:l,T.copy(e.viewport),E.copy(e.scissor),D=e.scissorTest}else T.copy(ce).multiplyScalar(ae).floor(),E.copy(le).multiplyScalar(ae).floor(),D=M;if(F.bindFramebuffer(P.FRAMEBUFFER,i)&&r&&F.drawBuffers(e,i),F.viewport(T),F.scissor(E),F.setScissorTest(D),a){let r=L.get(e.texture);P.framebufferTexture2D(P.FRAMEBUFFER,P.COLOR_ATTACHMENT0,P.TEXTURE_CUBE_MAP_POSITIVE_X+t,r.__webglTexture,n)}else if(o){let r=L.get(e.texture),i=t||0;P.framebufferTextureLayer(P.FRAMEBUFFER,P.COLOR_ATTACHMENT0,r.__webglTexture,n||0,i)}C=-1},this.readRenderTargetPixels=function(e,t,n,r,i,a,o){if(!(e&&e.isWebGLRenderTarget)){console.error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);return}let s=L.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&o!==void 0&&(s=s[o]),s){F.bindFramebuffer(P.FRAMEBUFFER,s);try{let o=e.texture,s=o.format,c=o.type;if(!ke.textureFormatReadable(s)){console.error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.`);return}if(!ke.textureTypeReadable(c)){console.error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.`);return}t>=0&&t<=e.width-r&&n>=0&&n<=e.height-i&&P.readPixels(t,n,r,i,Qe.convert(s),Qe.convert(c),a)}finally{let e=S===null?null:L.get(S).__webglFramebuffer;F.bindFramebuffer(P.FRAMEBUFFER,e)}}},this.readRenderTargetPixelsAsync=async function(e,t,n,r,i,a,o){if(!(e&&e.isWebGLRenderTarget))throw Error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);let s=L.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&o!==void 0&&(s=s[o]),s){let o=e.texture,c=o.format,l=o.type;if(!ke.textureFormatReadable(c))throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.`);if(!ke.textureTypeReadable(l))throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.`);if(t>=0&&t<=e.width-r&&n>=0&&n<=e.height-i){F.bindFramebuffer(P.FRAMEBUFFER,s);let e=P.createBuffer();P.bindBuffer(P.PIXEL_PACK_BUFFER,e),P.bufferData(P.PIXEL_PACK_BUFFER,a.byteLength,P.STREAM_READ),P.readPixels(t,n,r,i,Qe.convert(c),Qe.convert(l),0);let o=S===null?null:L.get(S).__webglFramebuffer;F.bindFramebuffer(P.FRAMEBUFFER,o);let u=P.fenceSync(P.SYNC_GPU_COMMANDS_COMPLETE,0);return P.flush(),await te(P,u,4),P.bindBuffer(P.PIXEL_PACK_BUFFER,e),P.getBufferSubData(P.PIXEL_PACK_BUFFER,0,a),P.deleteBuffer(e),P.deleteSync(u),a}throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.`)}},this.copyFramebufferToTexture=function(e,t=null,n=0){e.isTexture!==!0&&(ee(`WebGLRenderer: copyFramebufferToTexture function signature has changed.`),t=arguments[0]||null,e=arguments[1]);let r=2**-n,i=Math.floor(e.image.width*r),a=Math.floor(e.image.height*r),o=t===null?0:t.x,s=t===null?0:t.y;R.setTexture2D(e,0),P.copyTexSubImage2D(P.TEXTURE_2D,n,0,0,o,s,i,a),F.unbindTexture()},this.copyTextureToTexture=function(e,t,n=null,r=null,i=0){e.isTexture!==!0&&(ee(`WebGLRenderer: copyTextureToTexture function signature has changed.`),r=arguments[0]||null,e=arguments[1],t=arguments[2],i=arguments[3]||0,n=null);let a,o,s,c,l,u;n===null?(a=e.image.width,o=e.image.height,s=0,c=0):(a=n.max.x-n.min.x,o=n.max.y-n.min.y,s=n.min.x,c=n.min.y),r===null?(l=0,u=0):(l=r.x,u=r.y);let d=Qe.convert(t.format),f=Qe.convert(t.type);R.setTexture2D(t,0),P.pixelStorei(P.UNPACK_FLIP_Y_WEBGL,t.flipY),P.pixelStorei(P.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.premultiplyAlpha),P.pixelStorei(P.UNPACK_ALIGNMENT,t.unpackAlignment);let p=P.getParameter(P.UNPACK_ROW_LENGTH),m=P.getParameter(P.UNPACK_IMAGE_HEIGHT),h=P.getParameter(P.UNPACK_SKIP_PIXELS),g=P.getParameter(P.UNPACK_SKIP_ROWS),_=P.getParameter(P.UNPACK_SKIP_IMAGES),v=e.isCompressedTexture?e.mipmaps[i]:e.image;P.pixelStorei(P.UNPACK_ROW_LENGTH,v.width),P.pixelStorei(P.UNPACK_IMAGE_HEIGHT,v.height),P.pixelStorei(P.UNPACK_SKIP_PIXELS,s),P.pixelStorei(P.UNPACK_SKIP_ROWS,c),e.isDataTexture?P.texSubImage2D(P.TEXTURE_2D,i,l,u,a,o,d,f,v.data):e.isCompressedTexture?P.compressedTexSubImage2D(P.TEXTURE_2D,i,l,u,v.width,v.height,d,v.data):P.texSubImage2D(P.TEXTURE_2D,i,l,u,a,o,d,f,v),P.pixelStorei(P.UNPACK_ROW_LENGTH,p),P.pixelStorei(P.UNPACK_IMAGE_HEIGHT,m),P.pixelStorei(P.UNPACK_SKIP_PIXELS,h),P.pixelStorei(P.UNPACK_SKIP_ROWS,g),P.pixelStorei(P.UNPACK_SKIP_IMAGES,_),i===0&&t.generateMipmaps&&P.generateMipmap(P.TEXTURE_2D),F.unbindTexture()},this.copyTextureToTexture3D=function(e,t,n=null,r=null,i=0){e.isTexture!==!0&&(ee(`WebGLRenderer: copyTextureToTexture3D function signature has changed.`),n=arguments[0]||null,r=arguments[1]||null,e=arguments[2],t=arguments[3],i=arguments[4]||0);let a,o,s,c,l,u,d,f,p,m=e.isCompressedTexture?e.mipmaps[i]:e.image;n===null?(a=m.width,o=m.height,s=m.depth,c=0,l=0,u=0):(a=n.max.x-n.min.x,o=n.max.y-n.min.y,s=n.max.z-n.min.z,c=n.min.x,l=n.min.y,u=n.min.z),r===null?(d=0,f=0,p=0):(d=r.x,f=r.y,p=r.z);let h=Qe.convert(t.format),g=Qe.convert(t.type),_;if(t.isData3DTexture)R.setTexture3D(t,0),_=P.TEXTURE_3D;else if(t.isDataArrayTexture||t.isCompressedArrayTexture)R.setTexture2DArray(t,0),_=P.TEXTURE_2D_ARRAY;else{console.warn(`THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.`);return}P.pixelStorei(P.UNPACK_FLIP_Y_WEBGL,t.flipY),P.pixelStorei(P.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.premultiplyAlpha),P.pixelStorei(P.UNPACK_ALIGNMENT,t.unpackAlignment);let v=P.getParameter(P.UNPACK_ROW_LENGTH),y=P.getParameter(P.UNPACK_IMAGE_HEIGHT),b=P.getParameter(P.UNPACK_SKIP_PIXELS),x=P.getParameter(P.UNPACK_SKIP_ROWS),S=P.getParameter(P.UNPACK_SKIP_IMAGES);P.pixelStorei(P.UNPACK_ROW_LENGTH,m.width),P.pixelStorei(P.UNPACK_IMAGE_HEIGHT,m.height),P.pixelStorei(P.UNPACK_SKIP_PIXELS,c),P.pixelStorei(P.UNPACK_SKIP_ROWS,l),P.pixelStorei(P.UNPACK_SKIP_IMAGES,u),e.isDataTexture||e.isData3DTexture?P.texSubImage3D(_,i,d,f,p,a,o,s,h,g,m.data):t.isCompressedArrayTexture?P.compressedTexSubImage3D(_,i,d,f,p,a,o,s,h,m.data):P.texSubImage3D(_,i,d,f,p,a,o,s,h,g,m),P.pixelStorei(P.UNPACK_ROW_LENGTH,v),P.pixelStorei(P.UNPACK_IMAGE_HEIGHT,y),P.pixelStorei(P.UNPACK_SKIP_PIXELS,b),P.pixelStorei(P.UNPACK_SKIP_ROWS,x),P.pixelStorei(P.UNPACK_SKIP_IMAGES,S),i===0&&t.generateMipmaps&&P.generateMipmap(_),F.unbindTexture()},this.initRenderTarget=function(e){L.get(e).__webglFramebuffer===void 0&&R.setupRenderTarget(e)},this.initTexture=function(e){e.isCubeTexture?R.setTextureCube(e,0):e.isData3DTexture?R.setTexture3D(e,0):e.isDataArrayTexture||e.isCompressedArrayTexture?R.setTexture2DArray(e,0):R.setTexture2D(e,0),F.unbindTexture()},this.resetState=function(){b=0,x=0,S=null,F.reset(),$e.reset()},typeof __THREE_DEVTOOLS__<`u`&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(`observe`,{detail:this}))}get coordinateSystem(){return Ia}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(e){this._outputColorSpace=e;let t=this.getContext();t.drawingBufferColorSpace=e===`display-p3`?`display-p3`:`srgb`,t.unpackColorSpace=Za.workingColorSpace===`display-p3-linear`?`display-p3`:`srgb`}},Hl=class e{constructor(e,t=25e-5){this.isFogExp2=!0,this.name=``,this.color=new W(e),this.density=t}clone(){return new e(this.color,this.density)}toJSON(){return{type:`FogExp2`,name:this.name,color:this.color.getHex(),density:this.density}}},Ul=class e{constructor(e,t=1,n=1e3){this.isFog=!0,this.name=``,this.color=new W(e),this.near=t,this.far=n}clone(){return new e(this.color,this.near,this.far)}toJSON(){return{type:`Fog`,name:this.name,color:this.color.getHex(),near:this.near,far:this.far}}},Wl=class extends ps{constructor(){super(),this.isScene=!0,this.type=`Scene`,this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.backgroundRotation=new Xo,this.environmentIntensity=1,this.environmentRotation=new Xo,this.overrideMaterial=null,typeof __THREE_DEVTOOLS__<`u`&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(`observe`,{detail:this}))}copy(e,t){return super.copy(e,t),e.background!==null&&(this.background=e.background.clone()),e.environment!==null&&(this.environment=e.environment.clone()),e.fog!==null&&(this.fog=e.fog.clone()),this.backgroundBlurriness=e.backgroundBlurriness,this.backgroundIntensity=e.backgroundIntensity,this.backgroundRotation.copy(e.backgroundRotation),this.environmentIntensity=e.environmentIntensity,this.environmentRotation.copy(e.environmentRotation),e.overrideMaterial!==null&&(this.overrideMaterial=e.overrideMaterial.clone()),this.matrixAutoUpdate=e.matrixAutoUpdate,this}toJSON(e){let t=super.toJSON(e);return this.fog!==null&&(t.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(t.object.backgroundBlurriness=this.backgroundBlurriness),this.backgroundIntensity!==1&&(t.object.backgroundIntensity=this.backgroundIntensity),t.object.backgroundRotation=this.backgroundRotation.toArray(),this.environmentIntensity!==1&&(t.object.environmentIntensity=this.environmentIntensity),t.object.environmentRotation=this.environmentRotation.toArray(),t}},Gl=class{constructor(e,t){this.isInterleavedBuffer=!0,this.array=e,this.stride=t,this.count=e===void 0?0:e.length/t,this.usage=Ea,this.updateRanges=[],this.version=0,this.uuid=o()}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}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,n){e*=this.stride,n*=t.stride;for(let r=0,i=this.stride;r<i;r++)this.array[e+r]=t.array[n+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=o()),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]),n=new this.constructor(t,this.stride);return n.setUsage(this.usage),n}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=o()),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}}},Kl=new H,ql=class e{constructor(e,t,n,r=!1){this.isInterleavedBufferAttribute=!0,this.name=``,this.data=e,this.itemSize=t,this.offset=n,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,n=this.data.count;t<n;t++)Kl.fromBufferAttribute(this,t),Kl.applyMatrix4(e),this.setXYZ(t,Kl.x,Kl.y,Kl.z);return this}applyNormalMatrix(e){for(let t=0,n=this.count;t<n;t++)Kl.fromBufferAttribute(this,t),Kl.applyNormalMatrix(e),this.setXYZ(t,Kl.x,Kl.y,Kl.z);return this}transformDirection(e){for(let t=0,n=this.count;t<n;t++)Kl.fromBufferAttribute(this,t),Kl.transformDirection(e),this.setXYZ(t,Kl.x,Kl.y,Kl.z);return this}getComponent(e,t){let n=this.array[e*this.data.stride+this.offset+t];return this.normalized&&(n=E(n,this.array)),n}setComponent(e,t,n){return this.normalized&&(n=D(n,this.array)),this.data.array[e*this.data.stride+this.offset+t]=n,this}setX(e,t){return this.normalized&&(t=D(t,this.array)),this.data.array[e*this.data.stride+this.offset]=t,this}setY(e,t){return this.normalized&&(t=D(t,this.array)),this.data.array[e*this.data.stride+this.offset+1]=t,this}setZ(e,t){return this.normalized&&(t=D(t,this.array)),this.data.array[e*this.data.stride+this.offset+2]=t,this}setW(e,t){return this.normalized&&(t=D(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=E(t,this.array)),t}getY(e){let t=this.data.array[e*this.data.stride+this.offset+1];return this.normalized&&(t=E(t,this.array)),t}getZ(e){let t=this.data.array[e*this.data.stride+this.offset+2];return this.normalized&&(t=E(t,this.array)),t}getW(e){let t=this.data.array[e*this.data.stride+this.offset+3];return this.normalized&&(t=E(t,this.array)),t}setXY(e,t,n){return e=e*this.data.stride+this.offset,this.normalized&&(t=D(t,this.array),n=D(n,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this}setXYZ(e,t,n,r){return e=e*this.data.stride+this.offset,this.normalized&&(t=D(t,this.array),n=D(n,this.array),r=D(r,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this.data.array[e+2]=r,this}setXYZW(e,t,n,r,i){return e=e*this.data.stride+this.offset,this.normalized&&(t=D(t,this.array),n=D(n,this.array),r=D(r,this.array),i=D(i,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this.data.array[e+2]=r,this.data.array[e+3]=i,this}clone(t){if(t===void 0){console.log(`THREE.InterleavedBufferAttribute.clone(): Cloning an interleaved buffer attribute will de-interleave buffer data.`);let e=[];for(let t=0;t<this.count;t++){let n=t*this.data.stride+this.offset;for(let t=0;t<this.itemSize;t++)e.push(this.data.array[n+t])}return new G(new this.array.constructor(e),this.itemSize,this.normalized)}return t.interleavedBuffers===void 0&&(t.interleavedBuffers={}),t.interleavedBuffers[this.data.uuid]===void 0&&(t.interleavedBuffers[this.data.uuid]=this.data.clone(t)),new e(t.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 e=[];for(let t=0;t<this.count;t++){let n=t*this.data.stride+this.offset;for(let t=0;t<this.itemSize;t++)e.push(this.data.array[n+t])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:e,normalized:this.normalized}}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}}},Jl=class extends Ns{constructor(e){super(),this.isSpriteMaterial=!0,this.type=`SpriteMaterial`,this.color=new W(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}},Xl=new H,Zl=new H,Ql=new H,$l=new B,eu=new B,tu=new U,nu=new H,ru=new H,iu=new H,au=new B,ou=new B,su=new B,cu=class extends ps{constructor(e=new Jl){if(super(),this.isSprite=!0,this.type=`Sprite`,Yl===void 0){Yl=new q;let e=new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),t=new Gl(e,5);Yl.setIndex([0,1,2,0,2,3]),Yl.setAttribute(`position`,new ql(t,3,0,!1)),Yl.setAttribute(`uv`,new ql(t,2,3,!1))}this.geometry=Yl,this.material=e,this.center=new B(.5,.5)}raycast(e,t){e.camera===null&&console.error(`THREE.Sprite: "Raycaster.camera" needs to be set in order to raycast against sprites.`),Zl.setFromMatrixScale(this.matrixWorld),tu.copy(e.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(e.camera.matrixWorldInverse,this.matrixWorld),Ql.setFromMatrixPosition(this.modelViewMatrix),e.camera.isPerspectiveCamera&&this.material.sizeAttenuation===!1&&Zl.multiplyScalar(-Ql.z);let n=this.material.rotation,r,i;n!==0&&(i=Math.cos(n),r=Math.sin(n));let a=this.center;yn(nu.set(-.5,-.5,0),Ql,a,Zl,r,i),yn(ru.set(.5,-.5,0),Ql,a,Zl,r,i),yn(iu.set(.5,.5,0),Ql,a,Zl,r,i),au.set(0,0),ou.set(1,0),su.set(1,1);let o=e.ray.intersectTriangle(nu,ru,iu,!1,Xl);if(o===null&&(yn(ru.set(-.5,.5,0),Ql,a,Zl,r,i),ou.set(0,1),o=e.ray.intersectTriangle(nu,iu,ru,!1,Xl),o===null))return;let s=e.ray.origin.distanceTo(Xl);s<e.near||s>e.far||t.push({distance:s,point:Xl.clone(),uv:Ds.getInterpolation(Xl,nu,ru,iu,au,ou,su,new B),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}},lu=new H,uu=new H,du=class extends ps{constructor(){super(),this._currentLevel=0,this.type=`LOD`,Object.defineProperties(this,{levels:{enumerable:!0,value:[]},isLOD:{value:!0}}),this.autoUpdate=!0}copy(e){super.copy(e,!1);let t=e.levels;for(let e=0,n=t.length;e<n;e++){let n=t[e];this.addLevel(n.object.clone(),n.distance,n.hysteresis)}return this.autoUpdate=e.autoUpdate,this}addLevel(e,t=0,n=0){t=Math.abs(t);let r=this.levels,i=0;for(;i<r.length&&!(t<r[i].distance);i++);return r.splice(i,0,{distance:t,hysteresis:n,object:e}),this.add(e),this}removeLevel(e){let t=this.levels;for(let n=0;n<t.length;n++)if(t[n].distance===e){let e=t.splice(n,1);return this.remove(e[0].object),!0}return!1}getCurrentLevel(){return this._currentLevel}getObjectForDistance(e){let t=this.levels;if(t.length>0){let n,r;for(n=1,r=t.length;n<r;n++){let r=t[n].distance;if(t[n].object.visible&&(r-=r*t[n].hysteresis),e<r)break}return t[n-1].object}return null}raycast(e,t){if(this.levels.length>0){lu.setFromMatrixPosition(this.matrixWorld);let n=e.ray.origin.distanceTo(lu);this.getObjectForDistance(n).raycast(e,t)}}update(e){let t=this.levels;if(t.length>1){lu.setFromMatrixPosition(e.matrixWorld),uu.setFromMatrixPosition(this.matrixWorld);let n=lu.distanceTo(uu)/e.zoom;t[0].object.visible=!0;let r,i;for(r=1,i=t.length;r<i;r++){let e=t[r].distance;if(t[r].object.visible&&(e-=e*t[r].hysteresis),n>=e)t[r-1].object.visible=!1,t[r].object.visible=!0;else break}for(this._currentLevel=r-1;r<i;r++)t[r].object.visible=!1}}toJSON(e){let t=super.toJSON(e);this.autoUpdate===!1&&(t.object.autoUpdate=!1),t.object.levels=[];let n=this.levels;for(let e=0,r=n.length;e<r;e++){let r=n[e];t.object.levels.push({object:r.object.uuid,distance:r.distance,hysteresis:r.hysteresis})}return t}},fu=new H,pu=new io,mu=new io,hu=new H,gu=new U,_u=new H,vu=new Mo,yu=new U,bu=new Bo,xu=class extends dc{constructor(e,t){super(e,t),this.isSkinnedMesh=!0,this.type=`SkinnedMesh`,this.bindMode=Pr,this.bindMatrix=new U,this.bindMatrixInverse=new U,this.boundingBox=null,this.boundingSphere=null}computeBoundingBox(){let e=this.geometry;this.boundingBox===null&&(this.boundingBox=new ho),this.boundingBox.makeEmpty();let t=e.getAttribute(`position`);for(let e=0;e<t.count;e++)this.getVertexPosition(e,_u),this.boundingBox.expandByPoint(_u)}computeBoundingSphere(){let e=this.geometry;this.boundingSphere===null&&(this.boundingSphere=new Mo),this.boundingSphere.makeEmpty();let t=e.getAttribute(`position`);for(let e=0;e<t.count;e++)this.getVertexPosition(e,_u),this.boundingSphere.expandByPoint(_u)}copy(e,t){return super.copy(e,t),this.bindMode=e.bindMode,this.bindMatrix.copy(e.bindMatrix),this.bindMatrixInverse.copy(e.bindMatrixInverse),this.skeleton=e.skeleton,e.boundingBox!==null&&(this.boundingBox=e.boundingBox.clone()),e.boundingSphere!==null&&(this.boundingSphere=e.boundingSphere.clone()),this}raycast(e,t){let n=this.material,r=this.matrixWorld;n!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),vu.copy(this.boundingSphere),vu.applyMatrix4(r),e.ray.intersectsSphere(vu)!==!1&&(yu.copy(r).invert(),bu.copy(e.ray).applyMatrix4(yu),(this.boundingBox===null||bu.intersectsBox(this.boundingBox)!==!1)&&this._computeIntersections(e,t,bu)))}getVertexPosition(e,t){return super.getVertexPosition(e,t),this.applyBoneTransform(e,t),t}bind(e,t){this.skeleton=e,t===void 0&&(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),t=this.matrixWorld),this.bindMatrix.copy(t),this.bindMatrixInverse.copy(t).invert()}pose(){this.skeleton.pose()}normalizeSkinWeights(){let e=new io,t=this.geometry.attributes.skinWeight;for(let n=0,r=t.count;n<r;n++){e.fromBufferAttribute(t,n);let r=1/e.manhattanLength();r===1/0?e.set(1,0,0,0):e.multiplyScalar(r),t.setXYZW(n,e.x,e.y,e.z,e.w)}}updateMatrixWorld(e){super.updateMatrixWorld(e),this.bindMode===`attached`?this.bindMatrixInverse.copy(this.matrixWorld).invert():this.bindMode===`detached`?this.bindMatrixInverse.copy(this.bindMatrix).invert():console.warn(`THREE.SkinnedMesh: Unrecognized bindMode: `+this.bindMode)}applyBoneTransform(e,t){let n=this.skeleton,r=this.geometry;pu.fromBufferAttribute(r.attributes.skinIndex,e),mu.fromBufferAttribute(r.attributes.skinWeight,e),fu.copy(t).applyMatrix4(this.bindMatrix),t.set(0,0,0);for(let e=0;e<4;e++){let r=mu.getComponent(e);if(r!==0){let i=pu.getComponent(e);gu.multiplyMatrices(n.bones[i].matrixWorld,n.boneInverses[i]),t.addScaledVector(hu.copy(fu).applyMatrix4(gu),r)}}return t.applyMatrix4(this.bindMatrixInverse)}},Su=class extends ps{constructor(){super(),this.isBone=!0,this.type=`Bone`}},Cu=class extends ro{constructor(e=null,t=1,n=1,r,i,a,o,s,c=Rr,l=Rr,u,d){super(null,a,o,s,c,l,r,i,u,d),this.isDataTexture=!0,this.image={data:e,width:t,height:n},this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}},wu=new U,Tu=new U,Eu=class e{constructor(e=[],t=[]){this.uuid=o(),this.bones=e.slice(0),this.boneInverses=t,this.boneMatrices=null,this.boneTexture=null,this.init()}init(){let e=this.bones,t=this.boneInverses;if(this.boneMatrices=new Float32Array(e.length*16),t.length===0)this.calculateInverses();else if(e.length!==t.length){console.warn(`THREE.Skeleton: Number of inverse bone matrices does not match amount of bones.`),this.boneInverses=[];for(let e=0,t=this.bones.length;e<t;e++)this.boneInverses.push(new U)}}calculateInverses(){this.boneInverses.length=0;for(let e=0,t=this.bones.length;e<t;e++){let t=new U;this.bones[e]&&t.copy(this.bones[e].matrixWorld).invert(),this.boneInverses.push(t)}}pose(){for(let e=0,t=this.bones.length;e<t;e++){let t=this.bones[e];t&&t.matrixWorld.copy(this.boneInverses[e]).invert()}for(let e=0,t=this.bones.length;e<t;e++){let t=this.bones[e];t&&(t.parent&&t.parent.isBone?(t.matrix.copy(t.parent.matrixWorld).invert(),t.matrix.multiply(t.matrixWorld)):t.matrix.copy(t.matrixWorld),t.matrix.decompose(t.position,t.quaternion,t.scale))}}update(){let e=this.bones,t=this.boneInverses,n=this.boneMatrices,r=this.boneTexture;for(let r=0,i=e.length;r<i;r++){let i=e[r]?e[r].matrixWorld:Tu;wu.multiplyMatrices(i,t[r]),wu.toArray(n,r*16)}r!==null&&(r.needsUpdate=!0)}clone(){return new e(this.bones,this.boneInverses)}computeBoneTexture(){let e=Math.sqrt(this.bones.length*4);e=Math.ceil(e/4)*4,e=Math.max(e,4);let t=new Float32Array(e*e*4);t.set(this.boneMatrices);let n=new Cu(t,e,e,ci,ei);return n.needsUpdate=!0,this.boneMatrices=t,this.boneTexture=n,this}getBoneByName(e){for(let t=0,n=this.bones.length;t<n;t++){let n=this.bones[t];if(n.name===e)return n}}dispose(){this.boneTexture!==null&&(this.boneTexture.dispose(),this.boneTexture=null)}fromJSON(e,t){this.uuid=e.uuid;for(let n=0,r=e.bones.length;n<r;n++){let r=e.bones[n],i=t[r];i===void 0&&(console.warn(`THREE.Skeleton: No bone found with UUID:`,r),i=new Su),this.bones.push(i),this.boneInverses.push(new U().fromArray(e.boneInverses[n]))}return this.init(),this}toJSON(){let e={metadata:{version:4.6,type:`Skeleton`,generator:`Skeleton.toJSON`},bones:[],boneInverses:[]};e.uuid=this.uuid;let t=this.bones,n=this.boneInverses;for(let r=0,i=t.length;r<i;r++){let i=t[r];e.bones.push(i.uuid);let a=n[r];e.boneInverses.push(a.toArray())}return e}},Du=class extends G{constructor(e,t,n,r=1){super(e,t,n),this.isInstancedBufferAttribute=!0,this.meshPerAttribute=r}copy(e){return super.copy(e),this.meshPerAttribute=e.meshPerAttribute,this}toJSON(){let e=super.toJSON();return e.meshPerAttribute=this.meshPerAttribute,e.isInstancedBufferAttribute=!0,e}},Ou=new U,ku=new U,Au=[],ju=new ho,Mu=new U,Nu=new dc,Pu=new Mo,Fu=class extends dc{constructor(e,t,n){super(e,t),this.isInstancedMesh=!0,this.instanceMatrix=new Du(new Float32Array(n*16),16),this.instanceColor=null,this.morphTexture=null,this.count=n,this.boundingBox=null,this.boundingSphere=null;for(let e=0;e<n;e++)this.setMatrixAt(e,Mu)}computeBoundingBox(){let e=this.geometry,t=this.count;this.boundingBox===null&&(this.boundingBox=new ho),e.boundingBox===null&&e.computeBoundingBox(),this.boundingBox.makeEmpty();for(let n=0;n<t;n++)this.getMatrixAt(n,Ou),ju.copy(e.boundingBox).applyMatrix4(Ou),this.boundingBox.union(ju)}computeBoundingSphere(){let e=this.geometry,t=this.count;this.boundingSphere===null&&(this.boundingSphere=new Mo),e.boundingSphere===null&&e.computeBoundingSphere(),this.boundingSphere.makeEmpty();for(let n=0;n<t;n++)this.getMatrixAt(n,Ou),Pu.copy(e.boundingSphere).applyMatrix4(Ou),this.boundingSphere.union(Pu)}copy(e,t){return super.copy(e,t),this.instanceMatrix.copy(e.instanceMatrix),e.morphTexture!==null&&(this.morphTexture=e.morphTexture.clone()),e.instanceColor!==null&&(this.instanceColor=e.instanceColor.clone()),this.count=e.count,e.boundingBox!==null&&(this.boundingBox=e.boundingBox.clone()),e.boundingSphere!==null&&(this.boundingSphere=e.boundingSphere.clone()),this}getColorAt(e,t){t.fromArray(this.instanceColor.array,e*3)}getMatrixAt(e,t){t.fromArray(this.instanceMatrix.array,e*16)}getMorphAt(e,t){let n=t.morphTargetInfluences,r=this.morphTexture.source.data.data,i=e*(n.length+1)+1;for(let e=0;e<n.length;e++)n[e]=r[i+e]}raycast(e,t){let n=this.matrixWorld,r=this.count;if(Nu.geometry=this.geometry,Nu.material=this.material,Nu.material!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),Pu.copy(this.boundingSphere),Pu.applyMatrix4(n),e.ray.intersectsSphere(Pu)!==!1))for(let i=0;i<r;i++){this.getMatrixAt(i,Ou),ku.multiplyMatrices(n,Ou),Nu.matrixWorld=ku,Nu.raycast(e,Au);for(let e=0,n=Au.length;e<n;e++){let n=Au[e];n.instanceId=i,n.object=this,t.push(n)}Au.length=0}}setColorAt(e,t){this.instanceColor===null&&(this.instanceColor=new Du(new Float32Array(this.instanceMatrix.count*3).fill(1),3)),t.toArray(this.instanceColor.array,e*3)}setMatrixAt(e,t){t.toArray(this.instanceMatrix.array,e*16)}setMorphAt(e,t){let n=t.morphTargetInfluences,r=n.length+1;this.morphTexture===null&&(this.morphTexture=new Cu(new Float32Array(r*this.count),r,this.count,pi,ei));let i=this.morphTexture.source.data.data,a=0;for(let e=0;e<n.length;e++)a+=n[e];let o=this.geometry.morphTargetsRelative?1:1-a,s=r*e;i[s]=o,i.set(n,s+1)}updateMorphTargets(){}dispose(){return this.dispatchEvent({type:`dispose`}),this.morphTexture!==null&&(this.morphTexture.dispose(),this.morphTexture=null),this}},Iu=class{constructor(){this.index=0,this.pool=[],this.list=[]}push(e,t,n){let r=this.pool,i=this.list;this.index>=r.length&&r.push({start:-1,count:-1,z:-1,index:-1});let a=r[this.index];i.push(a),this.index++,a.start=e.start,a.count=e.count,a.z=t,a.index=n}reset(){this.list.length=0,this.index=0}},Lu=new U,Ru=new U,zu=new U,Bu=new W(1,1,1),Vu=new U,Hu=new Nc,Uu=new ho,Wu=new Mo,Gu=new H,Ku=new H,qu=new H,Ju=new Iu,Yu=new dc,Xu=[],Zu=class extends dc{get maxInstanceCount(){return this._maxInstanceCount}constructor(e,t,n=t*2,r){super(new q,r),this.isBatchedMesh=!0,this.perObjectFrustumCulled=!0,this.sortObjects=!0,this.boundingBox=null,this.boundingSphere=null,this.customSort=null,this._drawInfo=[],this._availableInstanceIds=[],this._drawRanges=[],this._reservedRanges=[],this._bounds=[],this._maxInstanceCount=e,this._maxVertexCount=t,this._maxIndexCount=n,this._geometryInitialized=!1,this._geometryCount=0,this._multiDrawCounts=new Int32Array(e),this._multiDrawStarts=new Int32Array(e),this._multiDrawCount=0,this._multiDrawInstances=null,this._visibilityChanged=!0,this._matricesTexture=null,this._indirectTexture=null,this._colorsTexture=null,this._initMatricesTexture(),this._initIndirectTexture()}_initMatricesTexture(){let e=Math.sqrt(this._maxInstanceCount*4);e=Math.ceil(e/4)*4,e=Math.max(e,4);let t=new Float32Array(e*e*4),n=new Cu(t,e,e,ci,ei);this._matricesTexture=n}_initIndirectTexture(){let e=Math.sqrt(this._maxInstanceCount);e=Math.ceil(e);let t=new Uint32Array(e*e),n=new Cu(t,e,e,mi,$r);this._indirectTexture=n}_initColorsTexture(){let e=Math.sqrt(this._maxInstanceCount);e=Math.ceil(e);let t=new Float32Array(e*e*4).fill(1),n=new Cu(t,e,e,ci,ei);n.colorSpace=Za.workingColorSpace,this._colorsTexture=n}_initializeGeometry(e){let t=this.geometry,n=this._maxVertexCount,r=this._maxIndexCount;if(this._geometryInitialized===!1){for(let r in e.attributes){let{array:i,itemSize:a,normalized:o}=e.getAttribute(r),s=new i.constructor(n*a),c=new G(s,a,o);t.setAttribute(r,c)}if(e.getIndex()!==null){let e=n>65535?new Uint32Array(r):new Uint16Array(r);t.setIndex(new G(e,1))}this._geometryInitialized=!0}}_validateGeometry(e){let t=this.geometry;if(!!e.getIndex()!=!!t.getIndex())throw Error(`BatchedMesh: All geometries must consistently have "index".`);for(let n in t.attributes){if(!e.hasAttribute(n))throw Error(`BatchedMesh: Added geometry missing "${n}". All geometries must have consistent attributes.`);let r=e.getAttribute(n),i=t.getAttribute(n);if(r.itemSize!==i.itemSize||r.normalized!==i.normalized)throw Error(`BatchedMesh: All attributes must have a consistent itemSize and normalized value.`)}}setCustomSort(e){return this.customSort=e,this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new ho);let e=this.boundingBox,t=this._drawInfo;e.makeEmpty();for(let n=0,r=t.length;n<r;n++){if(t[n].active===!1)continue;let r=t[n].geometryIndex;this.getMatrixAt(n,Lu),this.getBoundingBoxAt(r,Uu).applyMatrix4(Lu),e.union(Uu)}}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new Mo);let e=this.boundingSphere,t=this._drawInfo;e.makeEmpty();for(let n=0,r=t.length;n<r;n++){if(t[n].active===!1)continue;let r=t[n].geometryIndex;this.getMatrixAt(n,Lu),this.getBoundingSphereAt(r,Wu).applyMatrix4(Lu),e.union(Wu)}}addInstance(e){if(this._drawInfo.length>=this.maxInstanceCount&&this._availableInstanceIds.length===0)throw Error(`BatchedMesh: Maximum item count reached.`);let t={visible:!0,active:!0,geometryIndex:e},n=null;this._availableInstanceIds.length>0?(n=this._availableInstanceIds.pop(),this._drawInfo[n]=t):(n=this._drawInfo.length,this._drawInfo.push(t));let r=this._matricesTexture,i=r.image.data;zu.toArray(i,n*16),r.needsUpdate=!0;let a=this._colorsTexture;return a&&(Bu.toArray(a.image.data,n*4),a.needsUpdate=!0),n}addGeometry(e,t=-1,n=-1){if(this._initializeGeometry(e),this._validateGeometry(e),this._drawInfo.length>=this._maxInstanceCount)throw Error(`BatchedMesh: Maximum item count reached.`);let r={vertexStart:-1,vertexCount:-1,indexStart:-1,indexCount:-1},i=null,a=this._reservedRanges,o=this._drawRanges,s=this._bounds;this._geometryCount!==0&&(i=a[a.length-1]),r.vertexCount=t===-1?e.getAttribute(`position`).count:t,r.vertexStart=i===null?0:i.vertexStart+i.vertexCount;let c=e.getIndex(),l=c!==null;if(l&&(r.indexCount=n===-1?c.count:n,r.indexStart=i===null?0:i.indexStart+i.indexCount),r.indexStart!==-1&&r.indexStart+r.indexCount>this._maxIndexCount||r.vertexStart+r.vertexCount>this._maxVertexCount)throw Error(`BatchedMesh: Reserved space request exceeds the maximum buffer size.`);let u=this._geometryCount;return this._geometryCount++,a.push(r),o.push({start:l?r.indexStart:r.vertexStart,count:-1}),s.push({boxInitialized:!1,box:new ho,sphereInitialized:!1,sphere:new Mo}),this.setGeometryAt(u,e),u}setGeometryAt(e,t){if(e>=this._geometryCount)throw Error(`BatchedMesh: Maximum geometry count reached.`);this._validateGeometry(t);let n=this.geometry,r=n.getIndex()!==null,i=n.getIndex(),a=t.getIndex(),o=this._reservedRanges[e];if(r&&a.count>o.indexCount||t.attributes.position.count>o.vertexCount)throw Error(`BatchedMesh: Reserved space not large enough for provided geometry.`);let s=o.vertexStart,c=o.vertexCount;for(let e in n.attributes){let r=t.getAttribute(e),i=n.getAttribute(e);Sn(r,i,s);let a=r.itemSize;for(let e=r.count,t=c;e<t;e++){let t=s+e;for(let e=0;e<a;e++)i.setComponent(t,e,0)}i.needsUpdate=!0,i.addUpdateRange(s*a,c*a)}if(r){let e=o.indexStart;for(let t=0;t<a.count;t++)i.setX(e+t,s+a.getX(t));for(let t=a.count,n=o.indexCount;t<n;t++)i.setX(e+t,s);i.needsUpdate=!0,i.addUpdateRange(e,o.indexCount)}let l=this._bounds[e];t.boundingBox===null?l.boxInitialized=!1:(l.box.copy(t.boundingBox),l.boxInitialized=!0),t.boundingSphere===null?l.sphereInitialized=!1:(l.sphere.copy(t.boundingSphere),l.sphereInitialized=!0);let u=this._drawRanges[e],d=t.getAttribute(`position`);return u.count=r?a.count:d.count,this._visibilityChanged=!0,e}deleteInstance(e){let t=this._drawInfo;return e>=t.length||t[e].active===!1||(t[e].active=!1,this._availableInstanceIds.push(e),this._visibilityChanged=!0),this}getBoundingBoxAt(e,t){if(e>=this._geometryCount)return null;let n=this._bounds[e],r=n.box,i=this.geometry;if(n.boxInitialized===!1){r.makeEmpty();let t=i.index,a=i.attributes.position,o=this._drawRanges[e];for(let e=o.start,n=o.start+o.count;e<n;e++){let n=e;t&&(n=t.getX(n)),r.expandByPoint(Gu.fromBufferAttribute(a,n))}n.boxInitialized=!0}return t.copy(r),t}getBoundingSphereAt(e,t){if(e>=this._geometryCount)return null;let n=this._bounds[e],r=n.sphere,i=this.geometry;if(n.sphereInitialized===!1){r.makeEmpty(),this.getBoundingBoxAt(e,Uu),Uu.getCenter(r.center);let t=i.index,a=i.attributes.position,o=this._drawRanges[e],s=0;for(let e=o.start,n=o.start+o.count;e<n;e++){let n=e;t&&(n=t.getX(n)),Gu.fromBufferAttribute(a,n),s=Math.max(s,r.center.distanceToSquared(Gu))}r.radius=Math.sqrt(s),n.sphereInitialized=!0}return t.copy(r),t}setMatrixAt(e,t){let n=this._drawInfo,r=this._matricesTexture,i=this._matricesTexture.image.data;return e>=n.length||n[e].active===!1||(t.toArray(i,e*16),r.needsUpdate=!0),this}getMatrixAt(e,t){let n=this._drawInfo,r=this._matricesTexture.image.data;return e>=n.length||n[e].active===!1?null:t.fromArray(r,e*16)}setColorAt(e,t){this._colorsTexture===null&&this._initColorsTexture();let n=this._colorsTexture,r=this._colorsTexture.image.data,i=this._drawInfo;return e>=i.length||i[e].active===!1||(t.toArray(r,e*4),n.needsUpdate=!0),this}getColorAt(e,t){let n=this._colorsTexture.image.data,r=this._drawInfo;return e>=r.length||r[e].active===!1?null:t.fromArray(n,e*4)}setVisibleAt(e,t){let n=this._drawInfo;return e>=n.length||n[e].active===!1||n[e].visible===t||(n[e].visible=t,this._visibilityChanged=!0),this}getVisibleAt(e){let t=this._drawInfo;return e>=t.length||t[e].active===!1?!1:t[e].visible}setGeometryIdAt(e,t){let n=this._drawInfo;return e>=n.length||n[e].active===!1||t<0||t>=this._geometryCount?null:(n[e].geometryIndex=t,this)}getGeometryIdAt(e){let t=this._drawInfo;return e>=t.length||t[e].active===!1?-1:t[e].geometryIndex}getGeometryRangeAt(e,t={}){if(e<0||e>=this._geometryCount)return null;let n=this._drawRanges[e];return t.start=n.start,t.count=n.count,t}raycast(e,t){let n=this._drawInfo,r=this._drawRanges,i=this.matrixWorld,a=this.geometry;Yu.material=this.material,Yu.geometry.index=a.index,Yu.geometry.attributes=a.attributes,Yu.geometry.boundingBox===null&&(Yu.geometry.boundingBox=new ho),Yu.geometry.boundingSphere===null&&(Yu.geometry.boundingSphere=new Mo);for(let a=0,o=n.length;a<o;a++){if(!n[a].visible||!n[a].active)continue;let o=n[a].geometryIndex,s=r[o];Yu.geometry.setDrawRange(s.start,s.count),this.getMatrixAt(a,Yu.matrixWorld).premultiply(i),this.getBoundingBoxAt(o,Yu.geometry.boundingBox),this.getBoundingSphereAt(o,Yu.geometry.boundingSphere),Yu.raycast(e,Xu);for(let e=0,n=Xu.length;e<n;e++){let n=Xu[e];n.object=this,n.batchId=a,t.push(n)}Xu.length=0}Yu.material=null,Yu.geometry.index=null,Yu.geometry.attributes={},Yu.geometry.setDrawRange(0,1/0)}copy(e){return super.copy(e),this.geometry=e.geometry.clone(),this.perObjectFrustumCulled=e.perObjectFrustumCulled,this.sortObjects=e.sortObjects,this.boundingBox=e.boundingBox===null?null:e.boundingBox.clone(),this.boundingSphere=e.boundingSphere===null?null:e.boundingSphere.clone(),this._drawRanges=e._drawRanges.map(e=>({...e})),this._reservedRanges=e._reservedRanges.map(e=>({...e})),this._drawInfo=e._drawInfo.map(e=>({...e})),this._bounds=e._bounds.map(e=>({boxInitialized:e.boxInitialized,box:e.box.clone(),sphereInitialized:e.sphereInitialized,sphere:e.sphere.clone()})),this._maxInstanceCount=e._maxInstanceCount,this._maxVertexCount=e._maxVertexCount,this._maxIndexCount=e._maxIndexCount,this._geometryInitialized=e._geometryInitialized,this._geometryCount=e._geometryCount,this._multiDrawCounts=e._multiDrawCounts.slice(),this._multiDrawStarts=e._multiDrawStarts.slice(),this._matricesTexture=e._matricesTexture.clone(),this._matricesTexture.image.data=this._matricesTexture.image.data.slice(),this._colorsTexture!==null&&(this._colorsTexture=e._colorsTexture.clone(),this._colorsTexture.image.data=this._colorsTexture.image.data.slice()),this}dispose(){return this.geometry.dispose(),this._matricesTexture.dispose(),this._matricesTexture=null,this._indirectTexture.dispose(),this._indirectTexture=null,this._colorsTexture!==null&&(this._colorsTexture.dispose(),this._colorsTexture=null),this}onBeforeRender(e,t,n,r,i){if(!this._visibilityChanged&&!this.perObjectFrustumCulled&&!this.sortObjects)return;let a=r.getIndex(),o=a===null?1:a.array.BYTES_PER_ELEMENT,s=this._drawInfo,c=this._multiDrawStarts,l=this._multiDrawCounts,u=this._drawRanges,d=this.perObjectFrustumCulled,f=this._indirectTexture,p=f.image.data;d&&(Vu.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse).multiply(this.matrixWorld),Hu.setFromProjectionMatrix(Vu,e.coordinateSystem));let m=0;if(this.sortObjects){Ru.copy(this.matrixWorld).invert(),Gu.setFromMatrixPosition(n.matrixWorld).applyMatrix4(Ru),Ku.set(0,0,-1).transformDirection(n.matrixWorld).transformDirection(Ru);for(let e=0,t=s.length;e<t;e++)if(s[e].visible&&s[e].active){let t=s[e].geometryIndex;this.getMatrixAt(e,Lu),this.getBoundingSphereAt(t,Wu).applyMatrix4(Lu);let n=!1;if(d&&(n=!Hu.intersectsSphere(Wu)),!n){let n=qu.subVectors(Wu.center,Gu).dot(Ku);Ju.push(u[t],n,e)}}let e=Ju.list,t=this.customSort;t===null?e.sort(i.transparent?xn:bn):t.call(this,e,n);for(let t=0,n=e.length;t<n;t++){let n=e[t];c[m]=n.start*o,l[m]=n.count,p[m]=n.index,m++}Ju.reset()}else for(let e=0,t=s.length;e<t;e++)if(s[e].visible&&s[e].active){let t=s[e].geometryIndex,n=!1;if(d&&(this.getMatrixAt(e,Lu),this.getBoundingSphereAt(t,Wu).applyMatrix4(Lu),n=!Hu.intersectsSphere(Wu)),!n){let n=u[t];c[m]=n.start*o,l[m]=n.count,p[m]=e,m++}}f.needsUpdate=!0,this._multiDrawCount=m,this._visibilityChanged=!1}onBeforeShadow(e,t,n,r,i,a){this.onBeforeRender(e,null,r,i,a)}},Qu=class extends Ns{constructor(e){super(),this.isLineBasicMaterial=!0,this.type=`LineBasicMaterial`,this.color=new W(16777215),this.map=null,this.linewidth=1,this.linecap=`round`,this.linejoin=`round`,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.linewidth=e.linewidth,this.linecap=e.linecap,this.linejoin=e.linejoin,this.fog=e.fog,this}},$u=new H,ed=new H,td=new U,nd=new Bo,rd=new Mo,id=new H,ad=new H,od=class extends ps{constructor(e=new q,t=new Qu){super(),this.isLine=!0,this.type=`Line`,this.geometry=e,this.material=t,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}computeLineDistances(){let e=this.geometry;if(e.index===null){let t=e.attributes.position,n=[0];for(let e=1,r=t.count;e<r;e++)$u.fromBufferAttribute(t,e-1),ed.fromBufferAttribute(t,e),n[e]=n[e-1],n[e]+=$u.distanceTo(ed);e.setAttribute(`lineDistance`,new K(n,1))}else console.warn(`THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.`);return this}raycast(e,t){let n=this.geometry,r=this.matrixWorld,i=e.params.Line.threshold,a=n.drawRange;if(n.boundingSphere===null&&n.computeBoundingSphere(),rd.copy(n.boundingSphere),rd.applyMatrix4(r),rd.radius+=i,e.ray.intersectsSphere(rd)===!1)return;td.copy(r).invert(),nd.copy(e.ray).applyMatrix4(td);let o=i/((this.scale.x+this.scale.y+this.scale.z)/3),s=o*o,c=this.isLineSegments?2:1,l=n.index,u=n.attributes.position;if(l!==null){let n=Math.max(0,a.start),r=Math.min(l.count,a.start+a.count);for(let i=n,a=r-1;i<a;i+=c){let n=l.getX(i),r=l.getX(i+1),a=Cn(this,e,nd,s,n,r);a&&t.push(a)}if(this.isLineLoop){let i=l.getX(r-1),a=l.getX(n),o=Cn(this,e,nd,s,i,a);o&&t.push(o)}}else{let n=Math.max(0,a.start),r=Math.min(u.count,a.start+a.count);for(let i=n,a=r-1;i<a;i+=c){let n=Cn(this,e,nd,s,i,i+1);n&&t.push(n)}if(this.isLineLoop){let i=Cn(this,e,nd,s,r-1,n);i&&t.push(i)}}}updateMorphTargets(){let e=this.geometry.morphAttributes,t=Object.keys(e);if(t.length>0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;e<t;e++){let t=n[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[t]=e}}}}},sd=new H,cd=new H,ld=class extends od{constructor(e,t){super(e,t),this.isLineSegments=!0,this.type=`LineSegments`}computeLineDistances(){let e=this.geometry;if(e.index===null){let t=e.attributes.position,n=[];for(let e=0,r=t.count;e<r;e+=2)sd.fromBufferAttribute(t,e),cd.fromBufferAttribute(t,e+1),n[e]=e===0?0:n[e-1],n[e+1]=n[e]+sd.distanceTo(cd);e.setAttribute(`lineDistance`,new K(n,1))}else console.warn(`THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.`);return this}},ud=class extends od{constructor(e,t){super(e,t),this.isLineLoop=!0,this.type=`LineLoop`}},dd=class extends Ns{constructor(e){super(),this.isPointsMaterial=!0,this.type=`PointsMaterial`,this.color=new W(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!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.size=e.size,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}},fd=new U,pd=new Bo,md=new Mo,hd=new H,gd=class extends ps{constructor(e=new q,t=new dd){super(),this.isPoints=!0,this.type=`Points`,this.geometry=e,this.material=t,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}raycast(e,t){let n=this.geometry,r=this.matrixWorld,i=e.params.Points.threshold,a=n.drawRange;if(n.boundingSphere===null&&n.computeBoundingSphere(),md.copy(n.boundingSphere),md.applyMatrix4(r),md.radius+=i,e.ray.intersectsSphere(md)===!1)return;fd.copy(r).invert(),pd.copy(e.ray).applyMatrix4(fd);let o=i/((this.scale.x+this.scale.y+this.scale.z)/3),s=o*o,c=n.index,l=n.attributes.position;if(c!==null){let n=Math.max(0,a.start),i=Math.min(c.count,a.start+a.count);for(let a=n,o=i;a<o;a++){let n=c.getX(a);hd.fromBufferAttribute(l,n),wn(hd,n,s,r,e,t,this)}}else{let n=Math.max(0,a.start),i=Math.min(l.count,a.start+a.count);for(let a=n,o=i;a<o;a++)hd.fromBufferAttribute(l,a),wn(hd,a,s,r,e,t,this)}}updateMorphTargets(){let e=this.geometry.morphAttributes,t=Object.keys(e);if(t.length>0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;e<t;e++){let t=n[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[t]=e}}}}},_d=class extends ro{constructor(e,t,n,r,i,a,o,s,c){super(e,t,n,r,i,a,o,s,c),this.isVideoTexture=!0,this.minFilter=a===void 0?Ur:a,this.magFilter=i===void 0?Ur:i,this.generateMipmaps=!1;let l=this;function u(){l.needsUpdate=!0,e.requestVideoFrameCallback(u)}`requestVideoFrameCallback`in e&&e.requestVideoFrameCallback(u)}clone(){return new this.constructor(this.image).copy(this)}update(){let e=this.image;!(`requestVideoFrameCallback`in e)&&e.readyState>=e.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}},vd=class extends ro{constructor(e,t){super({width:e,height:t}),this.isFramebufferTexture=!0,this.magFilter=Rr,this.minFilter=Rr,this.generateMipmaps=!1,this.needsUpdate=!0}},yd=class extends ro{constructor(e,t,n,r,i,a,o,s,c,l,u,d){super(null,a,o,s,c,l,r,i,u,d),this.isCompressedTexture=!0,this.image={width:t,height:n},this.mipmaps=e,this.flipY=!1,this.generateMipmaps=!1}},bd=class extends yd{constructor(e,t,n,r,i,a){super(e,t,n,i,a),this.isCompressedArrayTexture=!0,this.image.depth=r,this.wrapR=z,this.layerUpdates=new Set}addLayerUpdate(e){this.layerUpdates.add(e)}clearLayerUpdates(){this.layerUpdates.clear()}},xd=class extends yd{constructor(e,t,n){super(void 0,e[0].width,e[0].height,t,n,301),this.isCompressedCubeTexture=!0,this.isCubeTexture=!0,this.image=e}},Sd=class extends ro{constructor(e,t,n,r,i,a,o,s,c){super(e,t,n,r,i,a,o,s,c),this.isCanvasTexture=!0,this.needsUpdate=!0}},Cd=class{constructor(){this.type=`Curve`,this.arcLengthDivisions=200}getPoint(){return console.warn(`THREE.Curve: .getPoint() not implemented.`),null}getPointAt(e,t){let n=this.getUtoTmapping(e);return this.getPoint(n,t)}getPoints(e=5){let t=[];for(let n=0;n<=e;n++)t.push(this.getPoint(n/e));return t}getSpacedPoints(e=5){let t=[];for(let n=0;n<=e;n++)t.push(this.getPointAt(n/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=[],n,r=this.getPoint(0),i=0;t.push(0);for(let a=1;a<=e;a++)n=this.getPoint(a/e),i+=n.distanceTo(r),t.push(i),r=n;return this.cacheArcLengths=t,t}updateArcLengths(){this.needsUpdate=!0,this.getLengths()}getUtoTmapping(e,t){let n=this.getLengths(),r=0,i=n.length,a;a=t||e*n[i-1];let o=0,s=i-1,c;for(;o<=s;)if(r=Math.floor(o+(s-o)/2),c=n[r]-a,c<0)o=r+1;else if(c>0)s=r-1;else{s=r;break}if(r=s,n[r]===a)return r/(i-1);let l=n[r],u=n[r+1]-l,d=(a-l)/u;return(r+d)/(i-1)}getTangent(e,t){let n=1e-4,r=e-n,i=e+n;r<0&&(r=0),i>1&&(i=1);let a=this.getPoint(r),o=this.getPoint(i),s=t||(a.isVector2?new B:new H);return s.copy(o).sub(a).normalize(),s}getTangentAt(e,t){let n=this.getUtoTmapping(e);return this.getTangent(n,t)}computeFrenetFrames(e,t){let n=new H,r=[],i=[],a=[],o=new H,c=new U;for(let t=0;t<=e;t++){let n=t/e;r[t]=this.getTangentAt(n,new H)}i[0]=new H,a[0]=new H;let l=Number.MAX_VALUE,u=Math.abs(r[0].x),d=Math.abs(r[0].y),f=Math.abs(r[0].z);u<=l&&(l=u,n.set(1,0,0)),d<=l&&(l=d,n.set(0,1,0)),f<=l&&n.set(0,0,1),o.crossVectors(r[0],n).normalize(),i[0].crossVectors(r[0],o),a[0].crossVectors(r[0],i[0]);for(let t=1;t<=e;t++){if(i[t]=i[t-1].clone(),a[t]=a[t-1].clone(),o.crossVectors(r[t-1],r[t]),o.length()>2**-52){o.normalize();let e=Math.acos(s(r[t-1].dot(r[t]),-1,1));i[t].applyMatrix4(c.makeRotationAxis(o,e))}a[t].crossVectors(r[t],i[t])}if(t===!0){let t=Math.acos(s(i[0].dot(i[e]),-1,1));t/=e,r[0].dot(o.crossVectors(i[0],i[e]))>0&&(t=-t);for(let n=1;n<=e;n++)i[n].applyMatrix4(c.makeRotationAxis(r[n],t*n)),a[n].crossVectors(r[n],i[n])}return{tangents:r,normals:i,binormals:a}}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}},wd=class extends Cd{constructor(e=0,t=0,n=1,r=1,i=0,a=Math.PI*2,o=!1,s=0){super(),this.isEllipseCurve=!0,this.type=`EllipseCurve`,this.aX=e,this.aY=t,this.xRadius=n,this.yRadius=r,this.aStartAngle=i,this.aEndAngle=a,this.aClockwise=o,this.aRotation=s}getPoint(e,t=new B){let n=t,r=Math.PI*2,i=this.aEndAngle-this.aStartAngle,a=Math.abs(i)<2**-52;for(;i<0;)i+=r;for(;i>r;)i-=r;i<2**-52&&(i=a?0:r),this.aClockwise===!0&&!a&&(i===r?i=-r:i-=r);let o=this.aStartAngle+e*i,s=this.aX+this.xRadius*Math.cos(o),c=this.aY+this.yRadius*Math.sin(o);if(this.aRotation!==0){let e=Math.cos(this.aRotation),t=Math.sin(this.aRotation),n=s-this.aX,r=c-this.aY;s=n*e-r*t+this.aX,c=n*t+r*e+this.aY}return n.set(s,c)}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}},Td=class extends wd{constructor(e,t,n,r,i,a){super(e,t,n,n,r,i,a),this.isArcCurve=!0,this.type=`ArcCurve`}},Ed=new H,Dd=new Tn,Od=new Tn,kd=new Tn,Ad=class extends Cd{constructor(e=[],t=!1,n=`centripetal`,r=.5){super(),this.isCatmullRomCurve3=!0,this.type=`CatmullRomCurve3`,this.points=e,this.closed=t,this.curveType=n,this.tension=r}getPoint(e,t=new H){let n=t,r=this.points,i=r.length,a=(i-+!this.closed)*e,o=Math.floor(a),s=a-o;this.closed?o+=o>0?0:(Math.floor(Math.abs(o)/i)+1)*i:s===0&&o===i-1&&(o=i-2,s=1);let c,l;this.closed||o>0?c=r[(o-1)%i]:(Ed.subVectors(r[0],r[1]).add(r[0]),c=Ed);let u=r[o%i],d=r[(o+1)%i];if(this.closed||o+2<i?l=r[(o+2)%i]:(Ed.subVectors(r[i-1],r[i-2]).add(r[i-1]),l=Ed),this.curveType===`centripetal`||this.curveType===`chordal`){let e=this.curveType===`chordal`?.5:.25,t=c.distanceToSquared(u)**+e,n=u.distanceToSquared(d)**+e,r=d.distanceToSquared(l)**+e;n<1e-4&&(n=1),t<1e-4&&(t=n),r<1e-4&&(r=n),Dd.initNonuniformCatmullRom(c.x,u.x,d.x,l.x,t,n,r),Od.initNonuniformCatmullRom(c.y,u.y,d.y,l.y,t,n,r),kd.initNonuniformCatmullRom(c.z,u.z,d.z,l.z,t,n,r)}else this.curveType===`catmullrom`&&(Dd.initCatmullRom(c.x,u.x,d.x,l.x,this.tension),Od.initCatmullRom(c.y,u.y,d.y,l.y,this.tension),kd.initCatmullRom(c.z,u.z,d.z,l.z,this.tension));return n.set(Dd.calc(s),Od.calc(s),kd.calc(s)),n}copy(e){super.copy(e),this.points=[];for(let t=0,n=e.points.length;t<n;t++){let n=e.points[t];this.points.push(n.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,n=this.points.length;t<n;t++){let n=this.points[t];e.points.push(n.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,n=e.points.length;t<n;t++){let n=e.points[t];this.points.push(new H().fromArray(n))}return this.closed=e.closed,this.curveType=e.curveType,this.tension=e.tension,this}},jd=class extends Cd{constructor(e=new B,t=new B,n=new B,r=new B){super(),this.isCubicBezierCurve=!0,this.type=`CubicBezierCurve`,this.v0=e,this.v1=t,this.v2=n,this.v3=r}getPoint(e,t=new B){let n=t,r=this.v0,i=this.v1,a=this.v2,o=this.v3;return n.set(Fn(e,r.x,i.x,a.x,o.x),Fn(e,r.y,i.y,a.y,o.y)),n}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}},Md=class extends Cd{constructor(e=new H,t=new H,n=new H,r=new H){super(),this.isCubicBezierCurve3=!0,this.type=`CubicBezierCurve3`,this.v0=e,this.v1=t,this.v2=n,this.v3=r}getPoint(e,t=new H){let n=t,r=this.v0,i=this.v1,a=this.v2,o=this.v3;return n.set(Fn(e,r.x,i.x,a.x,o.x),Fn(e,r.y,i.y,a.y,o.y),Fn(e,r.z,i.z,a.z,o.z)),n}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}},Nd=class extends Cd{constructor(e=new B,t=new B){super(),this.isLineCurve=!0,this.type=`LineCurve`,this.v1=e,this.v2=t}getPoint(e,t=new B){let n=t;return e===1?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(e).add(this.v1)),n}getPointAt(e,t){return this.getPoint(e,t)}getTangent(e,t=new B){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}},Pd=class extends Cd{constructor(e=new H,t=new H){super(),this.isLineCurve3=!0,this.type=`LineCurve3`,this.v1=e,this.v2=t}getPoint(e,t=new H){let n=t;return e===1?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(e).add(this.v1)),n}getPointAt(e,t){return this.getPoint(e,t)}getTangent(e,t=new H){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}},Fd=class extends Cd{constructor(e=new B,t=new B,n=new B){super(),this.isQuadraticBezierCurve=!0,this.type=`QuadraticBezierCurve`,this.v0=e,this.v1=t,this.v2=n}getPoint(e,t=new B){let n=t,r=this.v0,i=this.v1,a=this.v2;return n.set(An(e,r.x,i.x,a.x),An(e,r.y,i.y,a.y)),n}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}},Id=class extends Cd{constructor(e=new H,t=new H,n=new H){super(),this.isQuadraticBezierCurve3=!0,this.type=`QuadraticBezierCurve3`,this.v0=e,this.v1=t,this.v2=n}getPoint(e,t=new H){let n=t,r=this.v0,i=this.v1,a=this.v2;return n.set(An(e,r.x,i.x,a.x),An(e,r.y,i.y,a.y),An(e,r.z,i.z,a.z)),n}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}},Ld=class extends Cd{constructor(e=[]){super(),this.isSplineCurve=!0,this.type=`SplineCurve`,this.points=e}getPoint(e,t=new B){let n=t,r=this.points,i=(r.length-1)*e,a=Math.floor(i),o=i-a,s=r[a===0?a:a-1],c=r[a],l=r[a>r.length-2?r.length-1:a+1],u=r[a>r.length-3?r.length-1:a+2];return n.set(En(o,s.x,c.x,l.x,u.x),En(o,s.y,c.y,l.y,u.y)),n}copy(e){super.copy(e),this.points=[];for(let t=0,n=e.points.length;t<n;t++){let n=e.points[t];this.points.push(n.clone())}return this}toJSON(){let e=super.toJSON();e.points=[];for(let t=0,n=this.points.length;t<n;t++){let n=this.points[t];e.points.push(n.toArray())}return e}fromJSON(e){super.fromJSON(e),this.points=[];for(let t=0,n=e.points.length;t<n;t++){let n=e.points[t];this.points.push(new B().fromArray(n))}return this}},Rd=Object.freeze({__proto__:null,ArcCurve:Td,CatmullRomCurve3:Ad,CubicBezierCurve:jd,CubicBezierCurve3:Md,EllipseCurve:wd,LineCurve:Nd,LineCurve3:Pd,QuadraticBezierCurve:Fd,QuadraticBezierCurve3:Id,SplineCurve:Ld}),zd=class extends Cd{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 n=e.isVector2===!0?`LineCurve`:`LineCurve3`;this.curves.push(new Rd[n](t,e))}return this}getPoint(e,t){let n=e*this.getLength(),r=this.getCurveLengths(),i=0;for(;i<r.length;){if(r[i]>=n){let e=r[i]-n,a=this.curves[i],o=a.getLength(),s=o===0?0:1-e/o;return a.getPointAt(s,t)}i++}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 n=0,r=this.curves.length;n<r;n++)t+=this.curves[n].getLength(),e.push(t);return this.cacheLengths=e,e}getSpacedPoints(e=40){let t=[];for(let n=0;n<=e;n++)t.push(this.getPoint(n/e));return this.autoClose&&t.push(t[0]),t}getPoints(e=12){let t=[],n;for(let r=0,i=this.curves;r<i.length;r++){let a=i[r],o=a.isEllipseCurve?e*2:a.isLineCurve||a.isLineCurve3?1:a.isSplineCurve?e*a.points.length:e,s=a.getPoints(o);for(let e=0;e<s.length;e++){let r=s[e];n&&n.equals(r)||(t.push(r),n=r)}}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,n=e.curves.length;t<n;t++){let n=e.curves[t];this.curves.push(n.clone())}return this.autoClose=e.autoClose,this}toJSON(){let e=super.toJSON();e.autoClose=this.autoClose,e.curves=[];for(let t=0,n=this.curves.length;t<n;t++){let n=this.curves[t];e.curves.push(n.toJSON())}return e}fromJSON(e){super.fromJSON(e),this.autoClose=e.autoClose,this.curves=[];for(let t=0,n=e.curves.length;t<n;t++){let n=e.curves[t];this.curves.push(new Rd[n.type]().fromJSON(n))}return this}},Bd=class extends zd{constructor(e){super(),this.type=`Path`,this.currentPoint=new B,e&&this.setFromPoints(e)}setFromPoints(e){this.moveTo(e[0].x,e[0].y);for(let t=1,n=e.length;t<n;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 n=new Nd(this.currentPoint.clone(),new B(e,t));return this.curves.push(n),this.currentPoint.set(e,t),this}quadraticCurveTo(e,t,n,r){let i=new Fd(this.currentPoint.clone(),new B(e,t),new B(n,r));return this.curves.push(i),this.currentPoint.set(n,r),this}bezierCurveTo(e,t,n,r,i,a){let o=new jd(this.currentPoint.clone(),new B(e,t),new B(n,r),new B(i,a));return this.curves.push(o),this.currentPoint.set(i,a),this}splineThru(e){let t=[this.currentPoint.clone()].concat(e),n=new Ld(t);return this.curves.push(n),this.currentPoint.copy(e[e.length-1]),this}arc(e,t,n,r,i,a){let o=this.currentPoint.x,s=this.currentPoint.y;return this.absarc(e+o,t+s,n,r,i,a),this}absarc(e,t,n,r,i,a){return this.absellipse(e,t,n,n,r,i,a),this}ellipse(e,t,n,r,i,a,o,s){let c=this.currentPoint.x,l=this.currentPoint.y;return this.absellipse(e+c,t+l,n,r,i,a,o,s),this}absellipse(e,t,n,r,i,a,o,s){let c=new wd(e,t,n,r,i,a,o,s);if(this.curves.length>0){let e=c.getPoint(0);e.equals(this.currentPoint)||this.lineTo(e.x,e.y)}this.curves.push(c);let l=c.getPoint(1);return this.currentPoint.copy(l),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}},Vd=class e extends q{constructor(e=[new B(0,-.5),new B(.5,0),new B(0,.5)],t=12,n=0,r=Math.PI*2){super(),this.type=`LatheGeometry`,this.parameters={points:e,segments:t,phiStart:n,phiLength:r},t=Math.floor(t),r=s(r,0,Math.PI*2);let i=[],a=[],o=[],c=[],l=[],u=1/t,d=new H,f=new B,p=new H,m=new H,h=new H,g=0,_=0;for(let t=0;t<=e.length-1;t++)switch(t){case 0:g=e[t+1].x-e[t].x,_=e[t+1].y-e[t].y,p.x=_*1,p.y=-g,p.z=_*0,h.copy(p),p.normalize(),c.push(p.x,p.y,p.z);break;case e.length-1:c.push(h.x,h.y,h.z);break;default:g=e[t+1].x-e[t].x,_=e[t+1].y-e[t].y,p.x=_*1,p.y=-g,p.z=_*0,m.copy(p),p.x+=h.x,p.y+=h.y,p.z+=h.z,p.normalize(),c.push(p.x,p.y,p.z),h.copy(m)}for(let i=0;i<=t;i++){let s=n+i*u*r,p=Math.sin(s),m=Math.cos(s);for(let n=0;n<=e.length-1;n++){d.x=e[n].x*p,d.y=e[n].y,d.z=e[n].x*m,a.push(d.x,d.y,d.z),f.x=i/t,f.y=n/(e.length-1),o.push(f.x,f.y);let r=c[3*n+0]*p,s=c[3*n+1],u=c[3*n+0]*m;l.push(r,s,u)}}for(let n=0;n<t;n++)for(let t=0;t<e.length-1;t++){let r=t+n*e.length,a=r,o=r+e.length,s=r+e.length+1,c=r+1;i.push(a,o,c),i.push(s,c,o)}this.setIndex(i),this.setAttribute(`position`,new K(a,3)),this.setAttribute(`uv`,new K(o,2)),this.setAttribute(`normal`,new K(l,3))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.points,t.segments,t.phiStart,t.phiLength)}},Hd=class e extends Vd{constructor(e=1,t=1,n=4,r=8){let i=new Bd;i.absarc(0,-t/2,e,Math.PI*1.5,0),i.absarc(0,t/2,e,0,Math.PI*.5),super(i.getPoints(n),r),this.type=`CapsuleGeometry`,this.parameters={radius:e,length:t,capSegments:n,radialSegments:r}}static fromJSON(t){return new e(t.radius,t.length,t.capSegments,t.radialSegments)}},Ud=class e extends q{constructor(e=1,t=32,n=0,r=Math.PI*2){super(),this.type=`CircleGeometry`,this.parameters={radius:e,segments:t,thetaStart:n,thetaLength:r},t=Math.max(3,t);let i=[],a=[],o=[],s=[],c=new H,l=new B;a.push(0,0,0),o.push(0,0,1),s.push(.5,.5);for(let i=0,u=3;i<=t;i++,u+=3){let d=n+i/t*r;c.x=e*Math.cos(d),c.y=e*Math.sin(d),a.push(c.x,c.y,c.z),o.push(0,0,1),l.x=(a[u]/e+1)/2,l.y=(a[u+1]/e+1)/2,s.push(l.x,l.y)}for(let e=1;e<=t;e++)i.push(e,e+1,0);this.setIndex(i),this.setAttribute(`position`,new K(a,3)),this.setAttribute(`normal`,new K(o,3)),this.setAttribute(`uv`,new K(s,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.radius,t.segments,t.thetaStart,t.thetaLength)}},Wd=class e extends q{constructor(e=1,t=1,n=1,r=32,i=1,a=!1,o=0,s=Math.PI*2){super(),this.type=`CylinderGeometry`,this.parameters={radiusTop:e,radiusBottom:t,height:n,radialSegments:r,heightSegments:i,openEnded:a,thetaStart:o,thetaLength:s};let c=this;r=Math.floor(r),i=Math.floor(i);let l=[],u=[],d=[],f=[],p=0,m=[],h=n/2,g=0;_(),a===!1&&(e>0&&v(!0),t>0&&v(!1)),this.setIndex(l),this.setAttribute(`position`,new K(u,3)),this.setAttribute(`normal`,new K(d,3)),this.setAttribute(`uv`,new K(f,2));function _(){let a=new H,_=new H,v=0,y=(t-e)/n;for(let c=0;c<=i;c++){let l=[],g=c/i,v=g*(t-e)+e;for(let e=0;e<=r;e++){let t=e/r,i=t*s+o,c=Math.sin(i),m=Math.cos(i);_.x=v*c,_.y=-g*n+h,_.z=v*m,u.push(_.x,_.y,_.z),a.set(c,y,m).normalize(),d.push(a.x,a.y,a.z),f.push(t,1-g),l.push(p++)}m.push(l)}for(let n=0;n<r;n++)for(let r=0;r<i;r++){let i=m[r][n],a=m[r+1][n],o=m[r+1][n+1],s=m[r][n+1];e>0&&(l.push(i,a,s),v+=3),t>0&&(l.push(a,o,s),v+=3)}c.addGroup(g,v,0),g+=v}function v(n){let i=p,a=new B,m=new H,_=0,v=n===!0?e:t,y=n===!0?1:-1;for(let e=1;e<=r;e++)u.push(0,h*y,0),d.push(0,y,0),f.push(.5,.5),p++;let b=p;for(let e=0;e<=r;e++){let t=e/r*s+o,n=Math.cos(t),i=Math.sin(t);m.x=v*i,m.y=h*y,m.z=v*n,u.push(m.x,m.y,m.z),d.push(0,y,0),a.x=n*.5+.5,a.y=i*.5*y+.5,f.push(a.x,a.y),p++}for(let e=0;e<r;e++){let t=i+e,r=b+e;n===!0?l.push(r,r+1,t):l.push(r+1,r,t),_+=3}c.addGroup(g,_,n===!0?1:2),g+=_}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.radiusTop,t.radiusBottom,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}},Gd=class e extends Wd{constructor(e=1,t=1,n=32,r=1,i=!1,a=0,o=Math.PI*2){super(0,e,t,n,r,i,a,o),this.type=`ConeGeometry`,this.parameters={radius:e,height:t,radialSegments:n,heightSegments:r,openEnded:i,thetaStart:a,thetaLength:o}}static fromJSON(t){return new e(t.radius,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}},Kd=class e extends q{constructor(e=[],t=[],n=1,r=0){super(),this.type=`PolyhedronGeometry`,this.parameters={vertices:e,indices:t,radius:n,detail:r};let i=[],a=[];o(r),c(n),l(),this.setAttribute(`position`,new K(i,3)),this.setAttribute(`normal`,new K(i.slice(),3)),this.setAttribute(`uv`,new K(a,2)),r===0?this.computeVertexNormals():this.normalizeNormals();function o(e){let n=new H,r=new H,i=new H;for(let a=0;a<t.length;a+=3)f(t[a+0],n),f(t[a+1],r),f(t[a+2],i),s(n,r,i,e)}function s(e,t,n,r){let i=r+1,a=[];for(let r=0;r<=i;r++){a[r]=[];let o=e.clone().lerp(n,r/i),s=t.clone().lerp(n,r/i),c=i-r;for(let e=0;e<=c;e++)e===0&&r===i?a[r][e]=o:a[r][e]=o.clone().lerp(s,e/c)}for(let e=0;e<i;e++)for(let t=0;t<2*(i-e)-1;t++){let n=Math.floor(t/2);t%2==0?(d(a[e][n+1]),d(a[e+1][n]),d(a[e][n])):(d(a[e][n+1]),d(a[e+1][n+1]),d(a[e+1][n]))}}function c(e){let t=new H;for(let n=0;n<i.length;n+=3)t.x=i[n+0],t.y=i[n+1],t.z=i[n+2],t.normalize().multiplyScalar(e),i[n+0]=t.x,i[n+1]=t.y,i[n+2]=t.z}function l(){let e=new H;for(let t=0;t<i.length;t+=3){e.x=i[t+0],e.y=i[t+1],e.z=i[t+2];let n=h(e)/2/Math.PI+.5,r=g(e)/Math.PI+.5;a.push(n,1-r)}p(),u()}function u(){for(let e=0;e<a.length;e+=6){let t=a[e+0],n=a[e+2],r=a[e+4];Math.max(t,n,r)>.9&&Math.min(t,n,r)<.1&&(t<.2&&(a[e+0]+=1),n<.2&&(a[e+2]+=1),r<.2&&(a[e+4]+=1))}}function d(e){i.push(e.x,e.y,e.z)}function f(t,n){let r=t*3;n.x=e[r+0],n.y=e[r+1],n.z=e[r+2]}function p(){let e=new H,t=new H,n=new H,r=new H,o=new B,s=new B,c=new B;for(let l=0,u=0;l<i.length;l+=9,u+=6){e.set(i[l+0],i[l+1],i[l+2]),t.set(i[l+3],i[l+4],i[l+5]),n.set(i[l+6],i[l+7],i[l+8]),o.set(a[u+0],a[u+1]),s.set(a[u+2],a[u+3]),c.set(a[u+4],a[u+5]),r.copy(e).add(t).add(n).divideScalar(3);let d=h(r);m(o,u+0,e,d),m(s,u+2,t,d),m(c,u+4,n,d)}}function m(e,t,n,r){r<0&&e.x===1&&(a[t]=e.x-1),n.x===0&&n.z===0&&(a[t]=r/2/Math.PI+.5)}function h(e){return Math.atan2(e.z,-e.x)}function g(e){return Math.atan2(-e.y,Math.sqrt(e.x*e.x+e.z*e.z))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.vertices,t.indices,t.radius,t.details)}},qd=class e extends Kd{constructor(e=1,t=0){let n=(1+Math.sqrt(5))/2,r=1/n,i=[-1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,0,-r,-n,0,-r,n,0,r,-n,0,r,n,-r,-n,0,-r,n,0,r,-n,0,r,n,0,-n,0,-r,n,0,-r,-n,0,r,n,0,r];super(i,[3,11,7,3,7,15,3,15,13,7,19,17,7,17,6,7,6,15,17,4,8,17,8,10,17,10,6,8,0,16,8,16,2,8,2,10,0,12,1,0,1,18,0,18,16,6,10,2,6,2,13,6,13,15,2,16,18,2,18,3,2,3,13,18,1,9,18,9,11,18,11,3,4,14,12,4,12,0,4,0,8,11,9,5,11,5,19,11,19,7,19,5,14,19,14,4,19,4,17,1,12,14,1,14,5,1,5,9],e,t),this.type=`DodecahedronGeometry`,this.parameters={radius:e,detail:t}}static fromJSON(t){return new e(t.radius,t.detail)}},Jd=new H,Yd=new H,Xd=new H,Zd=new Ds,Qd=class extends q{constructor(e=null,t=1){if(super(),this.type=`EdgesGeometry`,this.parameters={geometry:e,thresholdAngle:t},e!==null){let n=1e4,r=Math.cos(Va*t),i=e.getIndex(),a=e.getAttribute(`position`),o=i?i.count:a.count,s=[0,0,0],c=[`a`,`b`,`c`],l=[,,,],u={},d=[];for(let e=0;e<o;e+=3){i?(s[0]=i.getX(e),s[1]=i.getX(e+1),s[2]=i.getX(e+2)):(s[0]=e,s[1]=e+1,s[2]=e+2);let{a:t,b:o,c:f}=Zd;if(t.fromBufferAttribute(a,s[0]),o.fromBufferAttribute(a,s[1]),f.fromBufferAttribute(a,s[2]),Zd.getNormal(Xd),l[0]=`${Math.round(t.x*n)},${Math.round(t.y*n)},${Math.round(t.z*n)}`,l[1]=`${Math.round(o.x*n)},${Math.round(o.y*n)},${Math.round(o.z*n)}`,l[2]=`${Math.round(f.x*n)},${Math.round(f.y*n)},${Math.round(f.z*n)}`,l[0]!==l[1]&&l[1]!==l[2]&&l[2]!==l[0])for(let e=0;e<3;e++){let t=(e+1)%3,n=l[e],i=l[t],a=Zd[c[e]],o=Zd[c[t]],f=`${n}_${i}`,p=`${i}_${n}`;p in u&&u[p]?(Xd.dot(u[p].normal)<=r&&(d.push(a.x,a.y,a.z),d.push(o.x,o.y,o.z)),u[p]=null):f in u||(u[f]={index0:s[e],index1:s[t],normal:Xd.clone()})}}for(let e in u)if(u[e]){let{index0:t,index1:n}=u[e];Jd.fromBufferAttribute(a,t),Yd.fromBufferAttribute(a,n),d.push(Jd.x,Jd.y,Jd.z),d.push(Yd.x,Yd.y,Yd.z)}this.setAttribute(`position`,new K(d,3))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}},$d=class extends Bd{constructor(e){super(e),this.uuid=o(),this.type=`Shape`,this.holes=[]}getPointsHoles(e){let t=[];for(let n=0,r=this.holes.length;n<r;n++)t[n]=this.holes[n].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,n=e.holes.length;t<n;t++){let n=e.holes[t];this.holes.push(n.clone())}return this}toJSON(){let e=super.toJSON();e.uuid=this.uuid,e.holes=[];for(let t=0,n=this.holes.length;t<n;t++){let n=this.holes[t];e.holes.push(n.toJSON())}return e}fromJSON(e){super.fromJSON(e),this.uuid=e.uuid,this.holes=[];for(let t=0,n=e.holes.length;t<n;t++){let n=e.holes[t];this.holes.push(new Bd().fromJSON(n))}return this}},ef={triangulate:function(e,t,n=2){let r=t&&t.length,i=r?t[0]*n:e.length,a=In(e,0,i,n,!0),o=[];if(!a||a.next===a.prev)return o;let s,c,l,u,d,f,p;if(r&&(a=Un(e,t,a,n)),e.length>80*n){s=l=e[0],c=u=e[1];for(let t=n;t<i;t+=n)d=e[t],f=e[t+1],d<s&&(s=d),f<c&&(c=f),d>l&&(l=d),f>u&&(u=f);p=Math.max(l-s,u-c),p=p===0?0:32767/p}return Rn(a,o,n,s,c,p,0),o}},tf=class e{static area(e){let t=e.length,n=0;for(let r=t-1,i=0;i<t;r=i++)n+=e[r].x*e[i].y-e[i].x*e[r].y;return n*.5}static isClockWise(t){return e.area(t)<0}static triangulateShape(e,t){let n=[],r=[],i=[];pr(e),mr(n,e);let a=e.length;t.forEach(pr);for(let e=0;e<t.length;e++)r.push(a),a+=t[e].length,mr(n,t[e]);let o=ef.triangulate(n,r);for(let e=0;e<o.length;e+=3)i.push(o.slice(e,e+3));return i}},nf=class e extends q{constructor(e=new $d([new B(.5,.5),new B(-.5,.5),new B(-.5,-.5),new B(.5,-.5)]),t={}){super(),this.type=`ExtrudeGeometry`,this.parameters={shapes:e,options:t},e=Array.isArray(e)?e:[e];let n=this,r=[],i=[];for(let t=0,n=e.length;t<n;t++){let n=e[t];a(n)}this.setAttribute(`position`,new K(r,3)),this.setAttribute(`uv`,new K(i,2)),this.computeVertexNormals();function a(e){let a=[],o=t.curveSegments===void 0?12:t.curveSegments,s=t.steps===void 0?1:t.steps,c=t.depth===void 0?1:t.depth,l=t.bevelEnabled===void 0||t.bevelEnabled,u=t.bevelThickness===void 0?.2:t.bevelThickness,d=t.bevelSize===void 0?u-.1:t.bevelSize,f=t.bevelOffset===void 0?0:t.bevelOffset,p=t.bevelSegments===void 0?3:t.bevelSegments,m=t.extrudePath,h=t.UVGenerator===void 0?rf:t.UVGenerator,g,_=!1,v,y,b,x;m&&(g=m.getSpacedPoints(s),_=!0,l=!1,v=m.computeFrenetFrames(s,!1),y=new H,b=new H,x=new H),l||(p=0,u=0,d=0,f=0);let S=e.extractPoints(o),C=S.shape,w=S.holes;if(!tf.isClockWise(C)){C=C.reverse();for(let e=0,t=w.length;e<t;e++){let t=w[e];tf.isClockWise(t)&&(w[e]=t.reverse())}}let T=tf.triangulateShape(C,w),E=C;for(let e=0,t=w.length;e<t;e++){let t=w[e];C=C.concat(t)}function D(e,t,n){return t||console.error(`THREE.ExtrudeGeometry: vec does not exist`),e.clone().addScaledVector(t,n)}let O=C.length,k=T.length;function A(e,t,n){let r,i,a,o=e.x-t.x,s=e.y-t.y,c=n.x-e.x,l=n.y-e.y,u=o*o+s*s,d=o*l-s*c;if(Math.abs(d)>2**-52){let d=Math.sqrt(u),f=Math.sqrt(c*c+l*l),p=t.x-s/d,m=t.y+o/d,h=n.x-l/f,g=n.y+c/f,_=((h-p)*l-(g-m)*c)/(o*l-s*c);r=p+o*_-e.x,i=m+s*_-e.y;let v=r*r+i*i;if(v<=2)return new B(r,i);a=Math.sqrt(v/2)}else{let e=!1;o>2**-52?c>2**-52&&(e=!0):o<-(2**-52)?c<-(2**-52)&&(e=!0):Math.sign(s)===Math.sign(l)&&(e=!0),e?(r=-s,i=o,a=Math.sqrt(u)):(r=o,i=s,a=Math.sqrt(u/2))}return new B(r/a,i/a)}let j=[];for(let e=0,t=E.length,n=t-1,r=e+1;e<t;e++,n++,r++)n===t&&(n=0),r===t&&(r=0),j[e]=A(E[e],E[n],E[r]);let ee=[],te,ne=j.concat();for(let e=0,t=w.length;e<t;e++){let t=w[e];te=[];for(let e=0,n=t.length,r=n-1,i=e+1;e<n;e++,r++,i++)r===n&&(r=0),i===n&&(i=0),te[e]=A(t[e],t[r],t[i]);ee.push(te),ne=ne.concat(te)}for(let e=0;e<p;e++){let t=e/p,n=u*Math.cos(t*Math.PI/2),r=d*Math.sin(t*Math.PI/2)+f;for(let e=0,t=E.length;e<t;e++){let t=D(E[e],j[e],r);se(t.x,t.y,-n)}for(let e=0,t=w.length;e<t;e++){let t=w[e];te=ee[e];for(let e=0,i=t.length;e<i;e++){let i=D(t[e],te[e],r);se(i.x,i.y,-n)}}}let re=d+f;for(let e=0;e<O;e++){let t=l?D(C[e],ne[e],re):C[e];_?(b.copy(v.normals[0]).multiplyScalar(t.x),y.copy(v.binormals[0]).multiplyScalar(t.y),x.copy(g[0]).add(b).add(y),se(x.x,x.y,x.z)):se(t.x,t.y,0)}for(let e=1;e<=s;e++)for(let t=0;t<O;t++){let n=l?D(C[t],ne[t],re):C[t];_?(b.copy(v.normals[e]).multiplyScalar(n.x),y.copy(v.binormals[e]).multiplyScalar(n.y),x.copy(g[e]).add(b).add(y),se(x.x,x.y,x.z)):se(n.x,n.y,c/s*e)}for(let e=p-1;e>=0;e--){let t=e/p,n=u*Math.cos(t*Math.PI/2),r=d*Math.sin(t*Math.PI/2)+f;for(let e=0,t=E.length;e<t;e++){let t=D(E[e],j[e],r);se(t.x,t.y,c+n)}for(let e=0,t=w.length;e<t;e++){let t=w[e];te=ee[e];for(let e=0,i=t.length;e<i;e++){let i=D(t[e],te[e],r);_?se(i.x,i.y+g[s-1].y,g[s-1].x+n):se(i.x,i.y,c+n)}}}ie(),ae();function ie(){let e=r.length/3;if(l){let e=0,t=O*e;for(let e=0;e<k;e++){let n=T[e];ce(n[2]+t,n[1]+t,n[0]+t)}e=s+p*2,t=O*e;for(let e=0;e<k;e++){let n=T[e];ce(n[0]+t,n[1]+t,n[2]+t)}}else{for(let e=0;e<k;e++){let t=T[e];ce(t[2],t[1],t[0])}for(let e=0;e<k;e++){let t=T[e];ce(t[0]+O*s,t[1]+O*s,t[2]+O*s)}}n.addGroup(e,r.length/3-e,0)}function ae(){let e=r.length/3,t=0;oe(E,t),t+=E.length;for(let e=0,n=w.length;e<n;e++){let n=w[e];oe(n,t),t+=n.length}n.addGroup(e,r.length/3-e,1)}function oe(e,t){let n=e.length;for(;--n>=0;){let r=n,i=n-1;i<0&&(i=e.length-1);for(let e=0,n=s+p*2;e<n;e++){let n=O*e,a=O*(e+1);le(t+r+n,t+i+n,t+i+a,t+r+a)}}}function se(e,t,n){a.push(e),a.push(t),a.push(n)}function ce(e,t,i){M(e),M(t),M(i);let a=r.length/3,o=h.generateTopUV(n,r,a-3,a-2,a-1);N(o[0]),N(o[1]),N(o[2])}function le(e,t,i,a){M(e),M(t),M(a),M(t),M(i),M(a);let o=r.length/3,s=h.generateSideWallUV(n,r,o-6,o-3,o-2,o-1);N(s[0]),N(s[1]),N(s[3]),N(s[1]),N(s[2]),N(s[3])}function M(e){r.push(a[e*3+0]),r.push(a[e*3+1]),r.push(a[e*3+2])}function N(e){i.push(e.x),i.push(e.y)}}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){let e=super.toJSON(),t=this.parameters.shapes,n=this.parameters.options;return hr(t,n,e)}static fromJSON(t,n){let r=[];for(let e=0,i=t.shapes.length;e<i;e++){let i=n[t.shapes[e]];r.push(i)}let i=t.options.extrudePath;return i!==void 0&&(t.options.extrudePath=new Rd[i.type]().fromJSON(i)),new e(r,t.options)}},rf={generateTopUV:function(e,t,n,r,i){let a=t[n*3],o=t[n*3+1],s=t[r*3],c=t[r*3+1],l=t[i*3],u=t[i*3+1];return[new B(a,o),new B(s,c),new B(l,u)]},generateSideWallUV:function(e,t,n,r,i,a){let o=t[n*3],s=t[n*3+1],c=t[n*3+2],l=t[r*3],u=t[r*3+1],d=t[r*3+2],f=t[i*3],p=t[i*3+1],m=t[i*3+2],h=t[a*3],g=t[a*3+1],_=t[a*3+2];return Math.abs(s-u)<Math.abs(o-l)?[new B(o,1-c),new B(l,1-d),new B(f,1-m),new B(h,1-_)]:[new B(s,1-c),new B(u,1-d),new B(p,1-m),new B(g,1-_)]}},af=class e extends Kd{constructor(e=1,t=0){let n=(1+Math.sqrt(5))/2,r=[-1,n,0,1,n,0,-1,-n,0,1,-n,0,0,-1,n,0,1,n,0,-1,-n,0,1,-n,n,0,-1,n,0,1,-n,0,-1,-n,0,1];super(r,[0,11,5,0,5,1,0,1,7,0,7,10,0,10,11,1,5,9,5,11,4,11,10,2,10,7,6,7,1,8,3,9,4,3,4,2,3,2,6,3,6,8,3,8,9,4,9,5,2,4,11,6,2,10,8,6,7,9,8,1],e,t),this.type=`IcosahedronGeometry`,this.parameters={radius:e,detail:t}}static fromJSON(t){return new e(t.radius,t.detail)}},of=class e extends Kd{constructor(e=1,t=0){super([1,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1],[0,2,4,0,4,3,0,3,5,0,5,2,1,2,5,1,5,3,1,3,4,1,4,2],e,t),this.type=`OctahedronGeometry`,this.parameters={radius:e,detail:t}}static fromJSON(t){return new e(t.radius,t.detail)}},sf=class e extends q{constructor(e=.5,t=1,n=32,r=1,i=0,a=Math.PI*2){super(),this.type=`RingGeometry`,this.parameters={innerRadius:e,outerRadius:t,thetaSegments:n,phiSegments:r,thetaStart:i,thetaLength:a},n=Math.max(3,n),r=Math.max(1,r);let o=[],s=[],c=[],l=[],u=e,d=(t-e)/r,f=new H,p=new B;for(let e=0;e<=r;e++){for(let e=0;e<=n;e++){let r=i+e/n*a;f.x=u*Math.cos(r),f.y=u*Math.sin(r),s.push(f.x,f.y,f.z),c.push(0,0,1),p.x=(f.x/t+1)/2,p.y=(f.y/t+1)/2,l.push(p.x,p.y)}u+=d}for(let e=0;e<r;e++){let t=e*(n+1);for(let e=0;e<n;e++){let r=e+t,i=r,a=r+n+1,s=r+n+2,c=r+1;o.push(i,a,c),o.push(a,s,c)}}this.setIndex(o),this.setAttribute(`position`,new K(s,3)),this.setAttribute(`normal`,new K(c,3)),this.setAttribute(`uv`,new K(l,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.innerRadius,t.outerRadius,t.thetaSegments,t.phiSegments,t.thetaStart,t.thetaLength)}},cf=class e extends q{constructor(e=new $d([new B(0,.5),new B(-.5,-.5),new B(.5,-.5)]),t=12){super(),this.type=`ShapeGeometry`,this.parameters={shapes:e,curveSegments:t};let n=[],r=[],i=[],a=[],o=0,s=0;if(Array.isArray(e)===!1)c(e);else for(let t=0;t<e.length;t++)c(e[t]),this.addGroup(o,s,t),o+=s,s=0;this.setIndex(n),this.setAttribute(`position`,new K(r,3)),this.setAttribute(`normal`,new K(i,3)),this.setAttribute(`uv`,new K(a,2));function c(e){let o=r.length/3,c=e.extractPoints(t),l=c.shape,u=c.holes;tf.isClockWise(l)===!1&&(l=l.reverse());for(let e=0,t=u.length;e<t;e++){let t=u[e];tf.isClockWise(t)===!0&&(u[e]=t.reverse())}let d=tf.triangulateShape(l,u);for(let e=0,t=u.length;e<t;e++){let t=u[e];l=l.concat(t)}for(let e=0,t=l.length;e<t;e++){let t=l[e];r.push(t.x,t.y,0),i.push(0,0,1),a.push(t.x,t.y)}for(let e=0,t=d.length;e<t;e++){let t=d[e],r=t[0]+o,i=t[1]+o,a=t[2]+o;n.push(r,i,a),s+=3}}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){let e=super.toJSON(),t=this.parameters.shapes;return gr(t,e)}static fromJSON(t,n){let r=[];for(let e=0,i=t.shapes.length;e<i;e++){let i=n[t.shapes[e]];r.push(i)}return new e(r,t.curveSegments)}},lf=class e extends q{constructor(e=1,t=32,n=16,r=0,i=Math.PI*2,a=0,o=Math.PI){super(),this.type=`SphereGeometry`,this.parameters={radius:e,widthSegments:t,heightSegments:n,phiStart:r,phiLength:i,thetaStart:a,thetaLength:o},t=Math.max(3,Math.floor(t)),n=Math.max(2,Math.floor(n));let s=Math.min(a+o,Math.PI),c=0,l=[],u=new H,d=new H,f=[],p=[],m=[],h=[];for(let f=0;f<=n;f++){let g=[],_=f/n,v=0;f===0&&a===0?v=.5/t:f===n&&s===Math.PI&&(v=-.5/t);for(let n=0;n<=t;n++){let s=n/t;u.x=-e*Math.cos(r+s*i)*Math.sin(a+_*o),u.y=e*Math.cos(a+_*o),u.z=e*Math.sin(r+s*i)*Math.sin(a+_*o),p.push(u.x,u.y,u.z),d.copy(u).normalize(),m.push(d.x,d.y,d.z),h.push(s+v,1-_),g.push(c++)}l.push(g)}for(let e=0;e<n;e++)for(let r=0;r<t;r++){let t=l[e][r+1],i=l[e][r],o=l[e+1][r],c=l[e+1][r+1];(e!==0||a>0)&&f.push(t,i,c),(e!==n-1||s<Math.PI)&&f.push(i,o,c)}this.setIndex(f),this.setAttribute(`position`,new K(p,3)),this.setAttribute(`normal`,new K(m,3)),this.setAttribute(`uv`,new K(h,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.radius,t.widthSegments,t.heightSegments,t.phiStart,t.phiLength,t.thetaStart,t.thetaLength)}},uf=class e extends Kd{constructor(e=1,t=0){super([1,1,1,-1,-1,1,-1,1,-1,1,-1,-1],[2,1,0,0,3,2,1,3,0,2,3,1],e,t),this.type=`TetrahedronGeometry`,this.parameters={radius:e,detail:t}}static fromJSON(t){return new e(t.radius,t.detail)}},df=class e extends q{constructor(e=1,t=.4,n=12,r=48,i=Math.PI*2){super(),this.type=`TorusGeometry`,this.parameters={radius:e,tube:t,radialSegments:n,tubularSegments:r,arc:i},n=Math.floor(n),r=Math.floor(r);let a=[],o=[],s=[],c=[],l=new H,u=new H,d=new H;for(let a=0;a<=n;a++)for(let f=0;f<=r;f++){let p=f/r*i,m=a/n*Math.PI*2;u.x=(e+t*Math.cos(m))*Math.cos(p),u.y=(e+t*Math.cos(m))*Math.sin(p),u.z=t*Math.sin(m),o.push(u.x,u.y,u.z),l.x=e*Math.cos(p),l.y=e*Math.sin(p),d.subVectors(u,l).normalize(),s.push(d.x,d.y,d.z),c.push(f/r),c.push(a/n)}for(let e=1;e<=n;e++)for(let t=1;t<=r;t++){let n=(r+1)*e+t-1,i=(r+1)*(e-1)+t-1,o=(r+1)*(e-1)+t,s=(r+1)*e+t;a.push(n,i,s),a.push(i,o,s)}this.setIndex(a),this.setAttribute(`position`,new K(o,3)),this.setAttribute(`normal`,new K(s,3)),this.setAttribute(`uv`,new K(c,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.radius,t.tube,t.radialSegments,t.tubularSegments,t.arc)}},ff=class e extends q{constructor(e=1,t=.4,n=64,r=8,i=2,a=3){super(),this.type=`TorusKnotGeometry`,this.parameters={radius:e,tube:t,tubularSegments:n,radialSegments:r,p:i,q:a},n=Math.floor(n),r=Math.floor(r);let o=[],s=[],c=[],l=[],u=new H,d=new H,f=new H,p=new H,m=new H,h=new H,g=new H;for(let o=0;o<=n;++o){let v=o/n*i*Math.PI*2;_(v,i,a,e,f),_(v+.01,i,a,e,p),h.subVectors(p,f),g.addVectors(p,f),m.crossVectors(h,g),g.crossVectors(m,h),m.normalize(),g.normalize();for(let e=0;e<=r;++e){let i=e/r*Math.PI*2,a=-t*Math.cos(i),p=t*Math.sin(i);u.x=f.x+(a*g.x+p*m.x),u.y=f.y+(a*g.y+p*m.y),u.z=f.z+(a*g.z+p*m.z),s.push(u.x,u.y,u.z),d.subVectors(u,f).normalize(),c.push(d.x,d.y,d.z),l.push(o/n),l.push(e/r)}}for(let e=1;e<=n;e++)for(let t=1;t<=r;t++){let n=(r+1)*(e-1)+(t-1),i=(r+1)*e+(t-1),a=(r+1)*e+t,s=(r+1)*(e-1)+t;o.push(n,i,s),o.push(i,a,s)}this.setIndex(o),this.setAttribute(`position`,new K(s,3)),this.setAttribute(`normal`,new K(c,3)),this.setAttribute(`uv`,new K(l,2));function _(e,t,n,r,i){let a=Math.cos(e),o=Math.sin(e),s=n/t*e,c=Math.cos(s);i.x=r*(2+c)*.5*a,i.y=r*(2+c)*o*.5,i.z=r*Math.sin(s)*.5}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.radius,t.tube,t.tubularSegments,t.radialSegments,t.p,t.q)}},pf=class e extends q{constructor(e=new Id(new H(-1,-1,0),new H(-1,1,0),new H(1,1,0)),t=64,n=1,r=8,i=!1){super(),this.type=`TubeGeometry`,this.parameters={path:e,tubularSegments:t,radius:n,radialSegments:r,closed:i};let a=e.computeFrenetFrames(t,i);this.tangents=a.tangents,this.normals=a.normals,this.binormals=a.binormals;let o=new H,s=new H,c=new B,l=new H,u=[],d=[],f=[],p=[];m(),this.setIndex(p),this.setAttribute(`position`,new K(u,3)),this.setAttribute(`normal`,new K(d,3)),this.setAttribute(`uv`,new K(f,2));function m(){for(let e=0;e<t;e++)h(e);h(i===!1?t:0),_(),g()}function h(i){l=e.getPointAt(i/t,l);let c=a.normals[i],f=a.binormals[i];for(let e=0;e<=r;e++){let t=e/r*Math.PI*2,i=Math.sin(t),a=-Math.cos(t);s.x=a*c.x+i*f.x,s.y=a*c.y+i*f.y,s.z=a*c.z+i*f.z,s.normalize(),d.push(s.x,s.y,s.z),o.x=l.x+n*s.x,o.y=l.y+n*s.y,o.z=l.z+n*s.z,u.push(o.x,o.y,o.z)}}function g(){for(let e=1;e<=t;e++)for(let t=1;t<=r;t++){let n=(r+1)*(e-1)+(t-1),i=(r+1)*e+(t-1),a=(r+1)*e+t,o=(r+1)*(e-1)+t;p.push(n,i,o),p.push(i,a,o)}}function _(){for(let e=0;e<=t;e++)for(let n=0;n<=r;n++)c.x=e/t,c.y=n/r,f.push(c.x,c.y)}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){let e=super.toJSON();return e.path=this.parameters.path.toJSON(),e}static fromJSON(t){return new e(new Rd[t.path.type]().fromJSON(t.path),t.tubularSegments,t.radius,t.radialSegments,t.closed)}},mf=class extends q{constructor(e=null){if(super(),this.type=`WireframeGeometry`,this.parameters={geometry:e},e!==null){let t=[],n=new Set,r=new H,i=new H;if(e.index!==null){let a=e.attributes.position,o=e.index,s=e.groups;s.length===0&&(s=[{start:0,count:o.count,materialIndex:0}]);for(let e=0,c=s.length;e<c;++e){let c=s[e],l=c.start,u=c.count;for(let e=l,s=l+u;e<s;e+=3)for(let s=0;s<3;s++){let c=o.getX(e+s),l=o.getX(e+(s+1)%3);r.fromBufferAttribute(a,c),i.fromBufferAttribute(a,l),_r(r,i,n)===!0&&(t.push(r.x,r.y,r.z),t.push(i.x,i.y,i.z))}}}else{let a=e.attributes.position;for(let e=0,o=a.count/3;e<o;e++)for(let o=0;o<3;o++){let s=3*e+o,c=3*e+(o+1)%3;r.fromBufferAttribute(a,s),i.fromBufferAttribute(a,c),_r(r,i,n)===!0&&(t.push(r.x,r.y,r.z),t.push(i.x,i.y,i.z))}}this.setAttribute(`position`,new K(t,3))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}},hf=Object.freeze({__proto__:null,BoxGeometry:fc,CapsuleGeometry:Hd,CircleGeometry:Ud,ConeGeometry:Gd,CylinderGeometry:Wd,DodecahedronGeometry:qd,EdgesGeometry:Qd,ExtrudeGeometry:nf,IcosahedronGeometry:af,LatheGeometry:Vd,OctahedronGeometry:of,PlaneGeometry:Pc,PolyhedronGeometry:Kd,RingGeometry:sf,ShapeGeometry:cf,SphereGeometry:lf,TetrahedronGeometry:uf,TorusGeometry:df,TorusKnotGeometry:ff,TubeGeometry:pf,WireframeGeometry:mf}),gf=class extends Ns{constructor(e){super(),this.isShadowMaterial=!0,this.type=`ShadowMaterial`,this.color=new W(0),this.transparent=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.fog=e.fog,this}},_f=class extends gc{constructor(e){super(e),this.isRawShaderMaterial=!0,this.type=`RawShaderMaterial`}},vf=class extends Ns{constructor(e){super(),this.isMeshStandardMaterial=!0,this.defines={STANDARD:``},this.type=`MeshStandardMaterial`,this.color=new W(16777215),this.roughness=1,this.metalness=0,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new W(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new B(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Xo,this.envMapIntensity=1,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.defines={STANDARD:``},this.color.copy(e.color),this.roughness=e.roughness,this.metalness=e.metalness,this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.roughnessMap=e.roughnessMap,this.metalnessMap=e.metalnessMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.envMapIntensity=e.envMapIntensity,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}},yf=class extends vf{constructor(e){super(),this.isMeshPhysicalMaterial=!0,this.defines={STANDARD:``,PHYSICAL:``},this.type=`MeshPhysicalMaterial`,this.anisotropyRotation=0,this.anisotropyMap=null,this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new B(1,1),this.clearcoatNormalMap=null,this.ior=1.5,Object.defineProperty(this,"reflectivity",{get:function(){return s(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(e){this.ior=(1+.4*e)/(1-.4*e)}}),this.iridescenceMap=null,this.iridescenceIOR=1.3,this.iridescenceThicknessRange=[100,400],this.iridescenceThicknessMap=null,this.sheenColor=new W(0),this.sheenColorMap=null,this.sheenRoughness=1,this.sheenRoughnessMap=null,this.transmissionMap=null,this.thickness=0,this.thicknessMap=null,this.attenuationDistance=1/0,this.attenuationColor=new W(1,1,1),this.specularIntensity=1,this.specularIntensityMap=null,this.specularColor=new W(1,1,1),this.specularColorMap=null,this._anisotropy=0,this._clearcoat=0,this._dispersion=0,this._iridescence=0,this._sheen=0,this._transmission=0,this.setValues(e)}get anisotropy(){return this._anisotropy}set anisotropy(e){this._anisotropy>0!=e>0&&this.version++,this._anisotropy=e}get clearcoat(){return this._clearcoat}set clearcoat(e){this._clearcoat>0!=e>0&&this.version++,this._clearcoat=e}get iridescence(){return this._iridescence}set iridescence(e){this._iridescence>0!=e>0&&this.version++,this._iridescence=e}get dispersion(){return this._dispersion}set dispersion(e){this._dispersion>0!=e>0&&this.version++,this._dispersion=e}get sheen(){return this._sheen}set sheen(e){this._sheen>0!=e>0&&this.version++,this._sheen=e}get transmission(){return this._transmission}set transmission(e){this._transmission>0!=e>0&&this.version++,this._transmission=e}copy(e){return super.copy(e),this.defines={STANDARD:``,PHYSICAL:``},this.anisotropy=e.anisotropy,this.anisotropyRotation=e.anisotropyRotation,this.anisotropyMap=e.anisotropyMap,this.clearcoat=e.clearcoat,this.clearcoatMap=e.clearcoatMap,this.clearcoatRoughness=e.clearcoatRoughness,this.clearcoatRoughnessMap=e.clearcoatRoughnessMap,this.clearcoatNormalMap=e.clearcoatNormalMap,this.clearcoatNormalScale.copy(e.clearcoatNormalScale),this.dispersion=e.dispersion,this.ior=e.ior,this.iridescence=e.iridescence,this.iridescenceMap=e.iridescenceMap,this.iridescenceIOR=e.iridescenceIOR,this.iridescenceThicknessRange=[...e.iridescenceThicknessRange],this.iridescenceThicknessMap=e.iridescenceThicknessMap,this.sheen=e.sheen,this.sheenColor.copy(e.sheenColor),this.sheenColorMap=e.sheenColorMap,this.sheenRoughness=e.sheenRoughness,this.sheenRoughnessMap=e.sheenRoughnessMap,this.transmission=e.transmission,this.transmissionMap=e.transmissionMap,this.thickness=e.thickness,this.thicknessMap=e.thicknessMap,this.attenuationDistance=e.attenuationDistance,this.attenuationColor.copy(e.attenuationColor),this.specularIntensity=e.specularIntensity,this.specularIntensityMap=e.specularIntensityMap,this.specularColor.copy(e.specularColor),this.specularColorMap=e.specularColorMap,this}},bf=class extends Ns{constructor(e){super(),this.isMeshPhongMaterial=!0,this.type=`MeshPhongMaterial`,this.color=new W(16777215),this.specular=new W(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new W(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new B(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Xo,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.specular.copy(e.specular),this.shininess=e.shininess,this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}},xf=class extends Ns{constructor(e){super(),this.isMeshToonMaterial=!0,this.defines={TOON:``},this.type=`MeshToonMaterial`,this.color=new W(16777215),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new W(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new B(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.gradientMap=e.gradientMap,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.alphaMap=e.alphaMap,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}},Sf=class extends Ns{constructor(e){super(),this.isMeshNormalMaterial=!0,this.type=`MeshNormalMaterial`,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new B(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.flatShading=!1,this.setValues(e)}copy(e){return super.copy(e),this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.flatShading=e.flatShading,this}},Cf=class extends Ns{constructor(e){super(),this.isMeshLambertMaterial=!0,this.type=`MeshLambertMaterial`,this.color=new W(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new W(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new B(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Xo,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}},wf=class extends Ns{constructor(e){super(),this.isMeshMatcapMaterial=!0,this.defines={MATCAP:``},this.type=`MeshMatcapMaterial`,this.color=new W(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new B(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.defines={MATCAP:``},this.color.copy(e.color),this.matcap=e.matcap,this.map=e.map,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.alphaMap=e.alphaMap,this.flatShading=e.flatShading,this.fog=e.fog,this}},Tf=class extends Qu{constructor(e){super(),this.isLineDashedMaterial=!0,this.type=`LineDashedMaterial`,this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(e)}copy(e){return super.copy(e),this.scale=e.scale,this.dashSize=e.dashSize,this.gapSize=e.gapSize,this}},Ef={convertArray:vr,isTypedArray:yr,getKeyframeOrder:br,sortedArray:xr,flattenJSON:Sr,subclip:Cr,makeClipAdditive:wr},Df=class{constructor(e,t,n,r){this.parameterPositions=e,this._cachedIndex=0,this.resultBuffer=r===void 0?new t.constructor(n):r,this.sampleValues=t,this.valueSize=n,this.settings=null,this.DefaultSettings_={}}evaluate(e){let t=this.parameterPositions,n=this._cachedIndex,r=t[n],i=t[n-1];validate_interval:{seek:{let a;linear_scan:{forward_scan:if(!(e<r)){for(let a=n+2;;){if(r===void 0){if(e<i)break forward_scan;return n=t.length,this._cachedIndex=n,this.copySampleValue_(n-1)}if(n===a)break;if(i=r,r=t[++n],e<r)break seek}a=t.length;break linear_scan}if(!(e>=i)){let o=t[1];e<o&&(n=2,i=o);for(let a=n-2;;){if(i===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(n===a)break;if(r=i,i=t[--n-1],e>=i)break seek}a=n,n=0;break linear_scan}break validate_interval}for(;n<a;){let r=n+a>>>1;e<t[r]?a=r:n=r+1}if(r=t[n],i=t[n-1],i===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(r===void 0)return n=t.length,this._cachedIndex=n,this.copySampleValue_(n-1)}this._cachedIndex=n,this.intervalChanged_(n,i,r)}return this.interpolate_(n,i,e,r)}getSettings_(){return this.settings||this.DefaultSettings_}copySampleValue_(e){let t=this.resultBuffer,n=this.sampleValues,r=this.valueSize,i=e*r;for(let e=0;e!==r;++e)t[e]=n[i+e];return t}interpolate_(){throw Error(`call to abstract method`)}intervalChanged_(){}},Of=class extends Df{constructor(e,t,n,r){super(e,t,n,r),this._weightPrev=-0,this._offsetPrev=-0,this._weightNext=-0,this._offsetNext=-0,this.DefaultSettings_={endingStart:ra,endingEnd:ra}}intervalChanged_(e,t,n){let r=this.parameterPositions,i=e-2,a=e+1,o=r[i],s=r[a];if(o===void 0)switch(this.getSettings_().endingStart){case ia:i=e,o=2*t-n;break;case aa:i=r.length-2,o=t+r[i]-r[i+1];break;default:i=e,o=n}if(s===void 0)switch(this.getSettings_().endingEnd){case ia:a=e,s=2*n-t;break;case aa:a=1,s=n+r[1]-r[0];break;default:a=e-1,s=t}let c=(n-t)*.5,l=this.valueSize;this._weightPrev=c/(t-o),this._weightNext=c/(s-n),this._offsetPrev=i*l,this._offsetNext=a*l}interpolate_(e,t,n,r){let i=this.resultBuffer,a=this.sampleValues,o=this.valueSize,s=e*o,c=s-o,l=this._offsetPrev,u=this._offsetNext,d=this._weightPrev,f=this._weightNext,p=(n-t)/(r-t),m=p*p,h=m*p,g=-d*h+2*d*m-d*p,_=(1+d)*h+(-1.5-2*d)*m+(-.5+d)*p+1,v=(-1-f)*h+(1.5+f)*m+.5*p,y=f*h-f*m;for(let e=0;e!==o;++e)i[e]=g*a[l+e]+_*a[c+e]+v*a[s+e]+y*a[u+e];return i}},kf=class extends Df{constructor(e,t,n,r){super(e,t,n,r)}interpolate_(e,t,n,r){let i=this.resultBuffer,a=this.sampleValues,o=this.valueSize,s=e*o,c=s-o,l=(n-t)/(r-t),u=1-l;for(let e=0;e!==o;++e)i[e]=a[c+e]*u+a[s+e]*l;return i}},Af=class extends Df{constructor(e,t,n,r){super(e,t,n,r)}interpolate_(e){return this.copySampleValue_(e-1)}},jf=class{constructor(e,t,n,r){if(e===void 0)throw Error(`THREE.KeyframeTrack: track name is undefined`);if(t===void 0||t.length===0)throw Error(`THREE.KeyframeTrack: no keyframes in track named `+e);this.name=e,this.times=vr(t,this.TimeBufferType),this.values=vr(n,this.ValueBufferType),this.setInterpolation(r||this.DefaultInterpolation)}static toJSON(e){let t=e.constructor,n;if(t.toJSON!==this.toJSON)n=t.toJSON(e);else{n={name:e.name,times:vr(e.times,Array),values:vr(e.values,Array)};let t=e.getInterpolation();t!==e.DefaultInterpolation&&(n.interpolation=t)}return n.type=e.ValueTypeName,n}InterpolantFactoryMethodDiscrete(e){return new Af(this.times,this.values,this.getValueSize(),e)}InterpolantFactoryMethodLinear(e){return new kf(this.times,this.values,this.getValueSize(),e)}InterpolantFactoryMethodSmooth(e){return new Of(this.times,this.values,this.getValueSize(),e)}setInterpolation(e){let t;switch(e){case ea:t=this.InterpolantFactoryMethodDiscrete;break;case ta:t=this.InterpolantFactoryMethodLinear;break;case na:t=this.InterpolantFactoryMethodSmooth}if(t===void 0){let t=`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 Error(t)}return console.warn(`THREE.KeyframeTrack:`,t),this}return this.createInterpolant=t,this}getInterpolation(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return ea;case this.InterpolantFactoryMethodLinear:return ta;case this.InterpolantFactoryMethodSmooth:return na}}getValueSize(){return this.values.length/this.times.length}shift(e){if(e!==0){let t=this.times;for(let n=0,r=t.length;n!==r;++n)t[n]+=e}return this}scale(e){if(e!==1){let t=this.times;for(let n=0,r=t.length;n!==r;++n)t[n]*=e}return this}trim(e,t){let n=this.times,r=n.length,i=0,a=r-1;for(;i!==r&&n[i]<e;)++i;for(;a!==-1&&n[a]>t;)--a;if(++a,i!==0||a!==r){i>=a&&(a=Math.max(a,1),i=a-1);let e=this.getValueSize();this.times=n.slice(i,a),this.values=this.values.slice(i*e,a*e)}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 n=this.times,r=this.values,i=n.length;i===0&&(console.error(`THREE.KeyframeTrack: Track is empty.`,this),e=!1);let a=null;for(let t=0;t!==i;t++){let r=n[t];if(typeof r==`number`&&isNaN(r)){console.error(`THREE.KeyframeTrack: Time is not a valid number.`,this,t,r),e=!1;break}if(a!==null&&a>r){console.error(`THREE.KeyframeTrack: Out of order keys.`,this,t,r,a),e=!1;break}a=r}if(r!==void 0&&yr(r))for(let t=0,n=r.length;t!==n;++t){let n=r[t];if(isNaN(n)){console.error(`THREE.KeyframeTrack: Value is not a valid number.`,this,t,n),e=!1;break}}return e}optimize(){let e=this.times.slice(),t=this.values.slice(),n=this.getValueSize(),r=this.getInterpolation()===na,i=e.length-1,a=1;for(let o=1;o<i;++o){let i=!1,s=e[o];if(s!==e[o+1]&&(o!==1||s!==e[0])){if(r)i=!0;else{let e=o*n,r=e-n,a=e+n;for(let o=0;o!==n;++o){let n=t[e+o];if(n!==t[r+o]||n!==t[a+o]){i=!0;break}}}}if(i){if(o!==a){e[a]=e[o];let r=o*n,i=a*n;for(let e=0;e!==n;++e)t[i+e]=t[r+e]}++a}}if(i>0){e[a]=e[i];for(let e=i*n,r=a*n,o=0;o!==n;++o)t[r+o]=t[e+o];++a}return a===e.length?(this.times=e,this.values=t):(this.times=e.slice(0,a),this.values=t.slice(0,a*n)),this}clone(){let e=this.times.slice(),t=this.values.slice(),n=this.constructor,r=new n(this.name,e,t);return r.createInterpolant=this.createInterpolant,r}},jf.prototype.TimeBufferType=Float32Array,jf.prototype.ValueBufferType=Float32Array,jf.prototype.DefaultInterpolation=ta,Mf=class extends jf{constructor(e,t,n){super(e,t,n)}},Mf.prototype.ValueTypeName=`bool`,Mf.prototype.ValueBufferType=Array,Mf.prototype.DefaultInterpolation=ea,Mf.prototype.InterpolantFactoryMethodLinear=void 0,Mf.prototype.InterpolantFactoryMethodSmooth=void 0,Nf=class extends jf{},Nf.prototype.ValueTypeName=`color`,Pf=class extends jf{},Pf.prototype.ValueTypeName=`number`,Ff=class extends Df{constructor(e,t,n,r){super(e,t,n,r)}interpolate_(e,t,n,r){let i=this.resultBuffer,a=this.sampleValues,o=this.valueSize,s=(n-t)/(r-t),c=e*o;for(let e=c+o;c!==e;c+=4)fo.slerpFlat(i,0,a,c-o,a,c,s);return i}},If=class extends jf{InterpolantFactoryMethodLinear(e){return new Ff(this.times,this.values,this.getValueSize(),e)}},If.prototype.ValueTypeName=`quaternion`,If.prototype.InterpolantFactoryMethodSmooth=void 0,Lf=class extends jf{constructor(e,t,n){super(e,t,n)}},Lf.prototype.ValueTypeName=`string`,Lf.prototype.ValueBufferType=Array,Lf.prototype.DefaultInterpolation=ea,Lf.prototype.InterpolantFactoryMethodLinear=void 0,Lf.prototype.InterpolantFactoryMethodSmooth=void 0,Rf=class extends jf{},Rf.prototype.ValueTypeName=`vector`,zf=class{constructor(e=``,t=-1,n=[],r=oa){this.name=e,this.tracks=n,this.duration=t,this.blendMode=r,this.uuid=o(),this.duration<0&&this.resetDuration()}static parse(e){let t=[],n=e.tracks,r=1/(e.fps||1);for(let e=0,i=n.length;e!==i;++e)t.push(Er(n[e]).scale(r));let i=new this(e.name,e.duration,t,e.blendMode);return i.uuid=e.uuid,i}static toJSON(e){let t=[],n=e.tracks,r={name:e.name,duration:e.duration,tracks:t,uuid:e.uuid,blendMode:e.blendMode};for(let e=0,r=n.length;e!==r;++e)t.push(jf.toJSON(n[e]));return r}static CreateFromMorphTargetSequence(e,t,n,r){let i=t.length,a=[];for(let e=0;e<i;e++){let o=[],s=[];o.push((e+i-1)%i,e,(e+1)%i),s.push(0,1,0);let c=br(o);o=xr(o,1,c),s=xr(s,1,c),!r&&o[0]===0&&(o.push(i),s.push(s[0])),a.push(new Pf(`.morphTargetInfluences[`+t[e].name+`]`,o,s).scale(1/n))}return new this(e,-1,a)}static findByName(e,t){let n=e;if(!Array.isArray(e)){let t=e;n=t.geometry&&t.geometry.animations||t.animations}for(let e=0;e<n.length;e++)if(n[e].name===t)return n[e];return null}static CreateClipsFromMorphTargetSequences(e,t,n){let r={},i=/^([\w-]*?)([\d]+)$/;for(let t=0,n=e.length;t<n;t++){let n=e[t],a=n.name.match(i);if(a&&a.length>1){let e=a[1],t=r[e];t||(r[e]=t=[]),t.push(n)}}let a=[];for(let e in r)a.push(this.CreateFromMorphTargetSequence(e,r[e],t,n));return a}static parseAnimation(e,t){if(!e)return console.error(`THREE.AnimationClip: No animation in JSONLoader data.`),null;let n=function(e,t,n,r,i){if(n.length!==0){let a=[],o=[];Sr(n,a,o,r),a.length!==0&&i.push(new e(t,a,o))}},r=[],i=e.name||`default`,a=e.fps||30,o=e.blendMode,s=e.length||-1,c=e.hierarchy||[];for(let e=0;e<c.length;e++){let i=c[e].keys;if(i&&i.length!==0){if(i[0].morphTargets){let e={},t=0;for(;t<i.length;t++)if(i[t].morphTargets)for(let n=0;n<i[t].morphTargets.length;n++)e[i[t].morphTargets[n]]=-1;for(let n in e){let e=[],a=[];for(let r=0;r!==i[t].morphTargets.length;++r){let r=i[t];e.push(r.time),a.push(+(r.morphTarget===n))}r.push(new Pf(`.morphTargetInfluence[`+n+`]`,e,a))}s=e.length*a}else{let a=`.bones[`+t[e].name+`]`;n(Rf,a+`.position`,i,`pos`,r),n(If,a+`.quaternion`,i,`rot`,r),n(Rf,a+`.scale`,i,`scl`,r)}}}return r.length===0?null:new this(i,s,r,o)}resetDuration(){let e=this.tracks,t=0;for(let n=0,r=e.length;n!==r;++n){let e=this.tracks[n];t=Math.max(t,e.times[e.times.length-1])}return this.duration=t,this}trim(){for(let e=0;e<this.tracks.length;e++)this.tracks[e].trim(0,this.duration);return this}validate(){let e=!0;for(let t=0;t<this.tracks.length;t++)e=e&&this.tracks[t].validate();return e}optimize(){for(let e=0;e<this.tracks.length;e++)this.tracks[e].optimize();return this}clone(){let e=[];for(let t=0;t<this.tracks.length;t++)e.push(this.tracks[t].clone());return new this.constructor(this.name,this.duration,e,this.blendMode)}toJSON(){return this.constructor.toJSON(this)}},Bf={enabled:!1,files:{},add:function(e,t){this.enabled!==!1&&(this.files[e]=t)},get:function(e){if(this.enabled!==!1)return this.files[e]},remove:function(e){delete this.files[e]},clear:function(){this.files={}}},Vf=class{constructor(e,t,n){let r=this,i=!1,a=0,o=0,s,c=[];this.onStart=void 0,this.onLoad=e,this.onProgress=t,this.onError=n,this.itemStart=function(e){o++,i===!1&&r.onStart!==void 0&&r.onStart(e,a,o),i=!0},this.itemEnd=function(e){a++,r.onProgress!==void 0&&r.onProgress(e,a,o),a===o&&(i=!1,r.onLoad!==void 0&&r.onLoad())},this.itemError=function(e){r.onError!==void 0&&r.onError(e)},this.resolveURL=function(e){return s?s(e):e},this.setURLModifier=function(e){return s=e,this},this.addHandler=function(e,t){return c.push(e,t),this},this.removeHandler=function(e){let t=c.indexOf(e);return t!==-1&&c.splice(t,2),this},this.getHandler=function(e){for(let t=0,n=c.length;t<n;t+=2){let n=c[t],r=c[t+1];if(n.global&&(n.lastIndex=0),n.test(e))return r}return null}}},Hf=new Vf,Uf=class{constructor(e){this.manager=e===void 0?Hf:e,this.crossOrigin=`anonymous`,this.withCredentials=!1,this.path=``,this.resourcePath=``,this.requestHeader={}}load(){}loadAsync(e,t){let n=this;return new Promise(function(r,i){n.load(e,r,t,i)})}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}},Uf.DEFAULT_MATERIAL_NAME=`__DEFAULT`,Wf={},Gf=class extends Error{constructor(e,t){super(e),this.response=t}},Kf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){e===void 0&&(e=``),this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);let i=Bf.get(e);if(i!==void 0)return this.manager.itemStart(e),setTimeout(()=>{t&&t(i),this.manager.itemEnd(e)},0),i;if(Wf[e]!==void 0){Wf[e].push({onLoad:t,onProgress:n,onError:r});return}Wf[e]=[],Wf[e].push({onLoad:t,onProgress:n,onError:r});let a=new Request(e,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?`include`:`same-origin`}),o=this.mimeType,s=this.responseType;fetch(a).then(t=>{if(t.status===200||t.status===0){if(t.status===0&&console.warn(`THREE.FileLoader: HTTP Status 0 received.`),typeof ReadableStream>`u`||t.body===void 0||t.body.getReader===void 0)return t;let n=Wf[e],r=t.body.getReader(),i=t.headers.get(`X-File-Size`)||t.headers.get(`Content-Length`),a=i?parseInt(i):0,o=a!==0,s=0,c=new ReadableStream({start(e){t();function t(){r.read().then(({done:r,value:i})=>{if(r)e.close();else{s+=i.byteLength;let r=new ProgressEvent(`progress`,{lengthComputable:o,loaded:s,total:a});for(let e=0,t=n.length;e<t;e++){let t=n[e];t.onProgress&&t.onProgress(r)}e.enqueue(i),t()}},t=>{e.error(t)})}}});return new Response(c)}throw new Gf(`fetch for "${t.url}" responded with ${t.status}: ${t.statusText}`,t)}).then(e=>{switch(s){case`arraybuffer`:return e.arrayBuffer();case`blob`:return e.blob();case`document`:return e.text().then(e=>new DOMParser().parseFromString(e,o));case`json`:return e.json();default:if(o===void 0)return e.text();{let t=/charset="?([^;"\s]*)"?/i.exec(o),n=t&&t[1]?t[1].toLowerCase():void 0,r=new TextDecoder(n);return e.arrayBuffer().then(e=>r.decode(e))}}}).then(t=>{Bf.add(e,t);let n=Wf[e];delete Wf[e];for(let e=0,r=n.length;e<r;e++){let r=n[e];r.onLoad&&r.onLoad(t)}}).catch(t=>{let n=Wf[e];if(n===void 0)throw this.manager.itemError(e),t;delete Wf[e];for(let e=0,r=n.length;e<r;e++){let r=n[e];r.onError&&r.onError(t)}this.manager.itemError(e)}).finally(()=>{this.manager.itemEnd(e)}),this.manager.itemStart(e)}setResponseType(e){return this.responseType=e,this}setMimeType(e){return this.mimeType=e,this}},qf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=this,a=new Kf(this.manager);a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(e,function(n){try{t(i.parse(JSON.parse(n)))}catch(t){r?r(t):console.error(t),i.manager.itemError(e)}},n,r)}parse(e){let t=[];for(let n=0;n<e.length;n++){let r=zf.parse(e[n]);t.push(r)}return t}},Jf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=this,a=[],o=new yd,s=new Kf(this.manager);s.setPath(this.path),s.setResponseType(`arraybuffer`),s.setRequestHeader(this.requestHeader),s.setWithCredentials(i.withCredentials);let c=0;function l(l){s.load(e[l],function(e){let n=i.parse(e,!0);a[l]={width:n.width,height:n.height,format:n.format,mipmaps:n.mipmaps},c+=1,c===6&&(n.mipmapCount===1&&(o.minFilter=Ur),o.image=a,o.format=n.format,o.needsUpdate=!0,t&&t(o))},n,r)}if(Array.isArray(e))for(let t=0,n=e.length;t<n;++t)l(t);else s.load(e,function(e){let n=i.parse(e,!0);if(n.isCubemap){let e=n.mipmaps.length/n.mipmapCount;for(let t=0;t<e;t++){a[t]={mipmaps:[]};for(let e=0;e<n.mipmapCount;e++)a[t].mipmaps.push(n.mipmaps[t*n.mipmapCount+e]),a[t].format=n.format,a[t].width=n.width,a[t].height=n.height}o.image=a}else o.image.width=n.width,o.image.height=n.height,o.mipmaps=n.mipmaps;n.mipmapCount===1&&(o.minFilter=Ur),o.format=n.format,o.needsUpdate=!0,t&&t(o)},n,r);return o}},Yf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);let i=this,a=Bf.get(e);if(a!==void 0)return i.manager.itemStart(e),setTimeout(function(){t&&t(a),i.manager.itemEnd(e)},0),a;let o=A(`img`);function s(){l(),Bf.add(e,this),t&&t(this),i.manager.itemEnd(e)}function c(t){l(),r&&r(t),i.manager.itemError(e),i.manager.itemEnd(e)}function l(){o.removeEventListener(`load`,s,!1),o.removeEventListener(`error`,c,!1)}return o.addEventListener(`load`,s,!1),o.addEventListener(`error`,c,!1),e.slice(0,5)!==`data:`&&this.crossOrigin!==void 0&&(o.crossOrigin=this.crossOrigin),i.manager.itemStart(e),o.src=e,o}},Xf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=new Tc;i.colorSpace=fa;let a=new Yf(this.manager);a.setCrossOrigin(this.crossOrigin),a.setPath(this.path);let o=0;function s(n){a.load(e[n],function(e){i.images[n]=e,o++,o===6&&(i.needsUpdate=!0,t&&t(i))},void 0,r)}for(let t=0;t<e.length;++t)s(t);return i}},Zf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=this,a=new Cu,o=new Kf(this.manager);return o.setResponseType(`arraybuffer`),o.setRequestHeader(this.requestHeader),o.setPath(this.path),o.setWithCredentials(i.withCredentials),o.load(e,function(e){let n;try{n=i.parse(e)}catch(e){if(r!==void 0)r(e);else{console.error(e);return}}n.image===void 0?n.data!==void 0&&(a.image.width=n.width,a.image.height=n.height,a.image.data=n.data):a.image=n.image,a.wrapS=n.wrapS===void 0?z:n.wrapS,a.wrapT=n.wrapT===void 0?z:n.wrapT,a.magFilter=n.magFilter===void 0?Ur:n.magFilter,a.minFilter=n.minFilter===void 0?Ur:n.minFilter,a.anisotropy=n.anisotropy===void 0?1:n.anisotropy,n.colorSpace!==void 0&&(a.colorSpace=n.colorSpace),n.flipY!==void 0&&(a.flipY=n.flipY),n.format!==void 0&&(a.format=n.format),n.type!==void 0&&(a.type=n.type),n.mipmaps!==void 0&&(a.mipmaps=n.mipmaps,a.minFilter=Kr),n.mipmapCount===1&&(a.minFilter=Ur),n.generateMipmaps!==void 0&&(a.generateMipmaps=n.generateMipmaps),a.needsUpdate=!0,t&&t(a,n)},n,r),a}},Qf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=new ro,a=new Yf(this.manager);return a.setCrossOrigin(this.crossOrigin),a.setPath(this.path),a.load(e,function(e){i.image=e,i.needsUpdate=!0,t!==void 0&&t(i)},n,r),i}},$f=class extends ps{constructor(e,t=1){super(),this.isLight=!0,this.type=`Light`,this.color=new W(e),this.intensity=t}dispose(){}copy(e,t){return super.copy(e,t),this.color.copy(e.color),this.intensity=e.intensity,this}toJSON(e){let t=super.toJSON(e);return t.object.color=this.color.getHex(),t.object.intensity=this.intensity,this.groundColor!==void 0&&(t.object.groundColor=this.groundColor.getHex()),this.distance!==void 0&&(t.object.distance=this.distance),this.angle!==void 0&&(t.object.angle=this.angle),this.decay!==void 0&&(t.object.decay=this.decay),this.penumbra!==void 0&&(t.object.penumbra=this.penumbra),this.shadow!==void 0&&(t.object.shadow=this.shadow.toJSON()),this.target!==void 0&&(t.object.target=this.target.uuid),t}},ep=class extends $f{constructor(e,t,n){super(e,n),this.isHemisphereLight=!0,this.type=`HemisphereLight`,this.position.copy(ps.DEFAULT_UP),this.updateMatrix(),this.groundColor=new W(t)}copy(e,t){return super.copy(e,t),this.groundColor.copy(e.groundColor),this}},tp=new U,np=new H,rp=new H,ip=class{constructor(e){this.camera=e,this.intensity=1,this.bias=0,this.normalBias=0,this.radius=1,this.blurSamples=8,this.mapSize=new B(512,512),this.map=null,this.mapPass=null,this.matrix=new U,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new Nc,this._frameExtents=new B(1,1),this._viewportCount=1,this._viewports=[new io(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(e){let t=this.camera,n=this.matrix;np.setFromMatrixPosition(e.matrixWorld),t.position.copy(np),rp.setFromMatrixPosition(e.target.matrixWorld),t.lookAt(rp),t.updateMatrixWorld(),tp.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),this._frustum.setFromProjectionMatrix(tp),n.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),n.multiply(tp)}getViewport(e){return this._viewports[e]}getFrameExtents(){return this._frameExtents}dispose(){this.map&&this.map.dispose(),this.mapPass&&this.mapPass.dispose()}copy(e){return this.camera=e.camera.clone(),this.intensity=e.intensity,this.bias=e.bias,this.radius=e.radius,this.mapSize.copy(e.mapSize),this}clone(){return new this.constructor().copy(this)}toJSON(){let e={};return this.intensity!==1&&(e.intensity=this.intensity),this.bias!==0&&(e.bias=this.bias),this.normalBias!==0&&(e.normalBias=this.normalBias),this.radius!==1&&(e.radius=this.radius),(this.mapSize.x!==512||this.mapSize.y!==512)&&(e.mapSize=this.mapSize.toArray()),e.camera=this.camera.toJSON(!1).object,delete e.camera.matrix,e}},ap=class extends ip{constructor(){super(new xc(50,1,.5,500)),this.isSpotLightShadow=!0,this.focus=1}updateMatrices(e){let t=this.camera,n=Ha*2*e.angle*this.focus,r=this.mapSize.width/this.mapSize.height,i=e.distance||t.far;(n!==t.fov||r!==t.aspect||i!==t.far)&&(t.fov=n,t.aspect=r,t.far=i,t.updateProjectionMatrix()),super.updateMatrices(e)}copy(e){return super.copy(e),this.focus=e.focus,this}},op=class extends $f{constructor(e,t,n=0,r=Math.PI/3,i=0,a=2){super(e,t),this.isSpotLight=!0,this.type=`SpotLight`,this.position.copy(ps.DEFAULT_UP),this.updateMatrix(),this.target=new ps,this.distance=n,this.angle=r,this.penumbra=i,this.decay=a,this.map=null,this.shadow=new ap}get power(){return this.intensity*Math.PI}set power(e){this.intensity=e/Math.PI}dispose(){this.shadow.dispose()}copy(e,t){return super.copy(e,t),this.distance=e.distance,this.angle=e.angle,this.penumbra=e.penumbra,this.decay=e.decay,this.target=e.target.clone(),this.shadow=e.shadow.clone(),this}},sp=new U,cp=new H,lp=new H,up=class extends ip{constructor(){super(new xc(90,1,.5,500)),this.isPointLightShadow=!0,this._frameExtents=new B(4,2),this._viewportCount=6,this._viewports=[new io(2,1,1,1),new io(0,1,1,1),new io(3,1,1,1),new io(1,1,1,1),new io(3,0,1,1),new io(1,0,1,1)],this._cubeDirections=[new H(1,0,0),new H(-1,0,0),new H(0,0,1),new H(0,0,-1),new H(0,1,0),new H(0,-1,0)],this._cubeUps=[new H(0,1,0),new H(0,1,0),new H(0,1,0),new H(0,1,0),new H(0,0,1),new H(0,0,-1)]}updateMatrices(e,t=0){let n=this.camera,r=this.matrix,i=e.distance||n.far;i!==n.far&&(n.far=i,n.updateProjectionMatrix()),cp.setFromMatrixPosition(e.matrixWorld),n.position.copy(cp),lp.copy(n.position),lp.add(this._cubeDirections[t]),n.up.copy(this._cubeUps[t]),n.lookAt(lp),n.updateMatrixWorld(),r.makeTranslation(-cp.x,-cp.y,-cp.z),sp.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse),this._frustum.setFromProjectionMatrix(sp)}},dp=class extends $f{constructor(e,t,n=0,r=2){super(e,t),this.isPointLight=!0,this.type=`PointLight`,this.distance=n,this.decay=r,this.shadow=new up}get power(){return this.intensity*4*Math.PI}set power(e){this.intensity=e/(4*Math.PI)}dispose(){this.shadow.dispose()}copy(e,t){return super.copy(e,t),this.distance=e.distance,this.decay=e.decay,this.shadow=e.shadow.clone(),this}},fp=class extends ip{constructor(){super(new zc(-5,5,5,-5,.5,500)),this.isDirectionalLightShadow=!0}},pp=class extends $f{constructor(e,t){super(e,t),this.isDirectionalLight=!0,this.type=`DirectionalLight`,this.position.copy(ps.DEFAULT_UP),this.updateMatrix(),this.target=new ps,this.shadow=new fp}dispose(){this.shadow.dispose()}copy(e){return super.copy(e),this.target=e.target.clone(),this.shadow=e.shadow.clone(),this}},mp=class extends $f{constructor(e,t){super(e,t),this.isAmbientLight=!0,this.type=`AmbientLight`}},hp=class extends $f{constructor(e,t,n=10,r=10){super(e,t),this.isRectAreaLight=!0,this.type=`RectAreaLight`,this.width=n,this.height=r}get power(){return this.intensity*this.width*this.height*Math.PI}set power(e){this.intensity=e/(this.width*this.height*Math.PI)}copy(e){return super.copy(e),this.width=e.width,this.height=e.height,this}toJSON(e){let t=super.toJSON(e);return t.object.width=this.width,t.object.height=this.height,t}},gp=class{constructor(){this.isSphericalHarmonics3=!0,this.coefficients=[];for(let e=0;e<9;e++)this.coefficients.push(new H)}set(e){for(let t=0;t<9;t++)this.coefficients[t].copy(e[t]);return this}zero(){for(let e=0;e<9;e++)this.coefficients[e].set(0,0,0);return this}getAt(e,t){let n=e.x,r=e.y,i=e.z,a=this.coefficients;return t.copy(a[0]).multiplyScalar(.282095),t.addScaledVector(a[1],.488603*r),t.addScaledVector(a[2],.488603*i),t.addScaledVector(a[3],.488603*n),t.addScaledVector(a[4],n*r*1.092548),t.addScaledVector(a[5],r*i*1.092548),t.addScaledVector(a[6],.315392*(3*i*i-1)),t.addScaledVector(a[7],n*i*1.092548),t.addScaledVector(a[8],.546274*(n*n-r*r)),t}getIrradianceAt(e,t){let n=e.x,r=e.y,i=e.z,a=this.coefficients;return t.copy(a[0]).multiplyScalar(.886227),t.addScaledVector(a[1],1.023328*r),t.addScaledVector(a[2],1.023328*i),t.addScaledVector(a[3],1.023328*n),t.addScaledVector(a[4],.858086*n*r),t.addScaledVector(a[5],.858086*r*i),t.addScaledVector(a[6],.743125*i*i-.247708),t.addScaledVector(a[7],.858086*n*i),t.addScaledVector(a[8],.429043*(n*n-r*r)),t}add(e){for(let t=0;t<9;t++)this.coefficients[t].add(e.coefficients[t]);return this}addScaledSH(e,t){for(let n=0;n<9;n++)this.coefficients[n].addScaledVector(e.coefficients[n],t);return this}scale(e){for(let t=0;t<9;t++)this.coefficients[t].multiplyScalar(e);return this}lerp(e,t){for(let n=0;n<9;n++)this.coefficients[n].lerp(e.coefficients[n],t);return this}equals(e){for(let t=0;t<9;t++)if(!this.coefficients[t].equals(e.coefficients[t]))return!1;return!0}copy(e){return this.set(e.coefficients)}clone(){return new this.constructor().copy(this)}fromArray(e,t=0){let n=this.coefficients;for(let r=0;r<9;r++)n[r].fromArray(e,t+r*3);return this}toArray(e=[],t=0){let n=this.coefficients;for(let r=0;r<9;r++)n[r].toArray(e,t+r*3);return e}static getBasisAt(e,t){let n=e.x,r=e.y,i=e.z;t[0]=.282095,t[1]=.488603*r,t[2]=.488603*i,t[3]=.488603*n,t[4]=1.092548*n*r,t[5]=1.092548*r*i,t[6]=.315392*(3*i*i-1),t[7]=1.092548*n*i,t[8]=.546274*(n*n-r*r)}},_p=class extends $f{constructor(e=new gp,t=1){super(void 0,t),this.isLightProbe=!0,this.sh=e}copy(e){return super.copy(e),this.sh.copy(e.sh),this}fromJSON(e){return this.intensity=e.intensity,this.sh.fromArray(e.sh),this}toJSON(e){let t=super.toJSON(e);return t.object.sh=this.sh.toArray(),t}},vp=class e extends Uf{constructor(e){super(e),this.textures={}}load(e,t,n,r){let i=this,a=new Kf(i.manager);a.setPath(i.path),a.setRequestHeader(i.requestHeader),a.setWithCredentials(i.withCredentials),a.load(e,function(n){try{t(i.parse(JSON.parse(n)))}catch(t){r?r(t):console.error(t),i.manager.itemError(e)}},n,r)}parse(e){let t=this.textures;function n(e){return t[e]===void 0&&console.warn(`THREE.MaterialLoader: Undefined texture`,e),t[e]}let r=this.createMaterialFromType(e.type);if(e.uuid!==void 0&&(r.uuid=e.uuid),e.name!==void 0&&(r.name=e.name),e.color!==void 0&&r.color!==void 0&&r.color.setHex(e.color),e.roughness!==void 0&&(r.roughness=e.roughness),e.metalness!==void 0&&(r.metalness=e.metalness),e.sheen!==void 0&&(r.sheen=e.sheen),e.sheenColor!==void 0&&(r.sheenColor=new W().setHex(e.sheenColor)),e.sheenRoughness!==void 0&&(r.sheenRoughness=e.sheenRoughness),e.emissive!==void 0&&r.emissive!==void 0&&r.emissive.setHex(e.emissive),e.specular!==void 0&&r.specular!==void 0&&r.specular.setHex(e.specular),e.specularIntensity!==void 0&&(r.specularIntensity=e.specularIntensity),e.specularColor!==void 0&&r.specularColor!==void 0&&r.specularColor.setHex(e.specularColor),e.shininess!==void 0&&(r.shininess=e.shininess),e.clearcoat!==void 0&&(r.clearcoat=e.clearcoat),e.clearcoatRoughness!==void 0&&(r.clearcoatRoughness=e.clearcoatRoughness),e.dispersion!==void 0&&(r.dispersion=e.dispersion),e.iridescence!==void 0&&(r.iridescence=e.iridescence),e.iridescenceIOR!==void 0&&(r.iridescenceIOR=e.iridescenceIOR),e.iridescenceThicknessRange!==void 0&&(r.iridescenceThicknessRange=e.iridescenceThicknessRange),e.transmission!==void 0&&(r.transmission=e.transmission),e.thickness!==void 0&&(r.thickness=e.thickness),e.attenuationDistance!==void 0&&(r.attenuationDistance=e.attenuationDistance),e.attenuationColor!==void 0&&r.attenuationColor!==void 0&&r.attenuationColor.setHex(e.attenuationColor),e.anisotropy!==void 0&&(r.anisotropy=e.anisotropy),e.anisotropyRotation!==void 0&&(r.anisotropyRotation=e.anisotropyRotation),e.fog!==void 0&&(r.fog=e.fog),e.flatShading!==void 0&&(r.flatShading=e.flatShading),e.blending!==void 0&&(r.blending=e.blending),e.combine!==void 0&&(r.combine=e.combine),e.side!==void 0&&(r.side=e.side),e.shadowSide!==void 0&&(r.shadowSide=e.shadowSide),e.opacity!==void 0&&(r.opacity=e.opacity),e.transparent!==void 0&&(r.transparent=e.transparent),e.alphaTest!==void 0&&(r.alphaTest=e.alphaTest),e.alphaHash!==void 0&&(r.alphaHash=e.alphaHash),e.depthFunc!==void 0&&(r.depthFunc=e.depthFunc),e.depthTest!==void 0&&(r.depthTest=e.depthTest),e.depthWrite!==void 0&&(r.depthWrite=e.depthWrite),e.colorWrite!==void 0&&(r.colorWrite=e.colorWrite),e.blendSrc!==void 0&&(r.blendSrc=e.blendSrc),e.blendDst!==void 0&&(r.blendDst=e.blendDst),e.blendEquation!==void 0&&(r.blendEquation=e.blendEquation),e.blendSrcAlpha!==void 0&&(r.blendSrcAlpha=e.blendSrcAlpha),e.blendDstAlpha!==void 0&&(r.blendDstAlpha=e.blendDstAlpha),e.blendEquationAlpha!==void 0&&(r.blendEquationAlpha=e.blendEquationAlpha),e.blendColor!==void 0&&r.blendColor!==void 0&&r.blendColor.setHex(e.blendColor),e.blendAlpha!==void 0&&(r.blendAlpha=e.blendAlpha),e.stencilWriteMask!==void 0&&(r.stencilWriteMask=e.stencilWriteMask),e.stencilFunc!==void 0&&(r.stencilFunc=e.stencilFunc),e.stencilRef!==void 0&&(r.stencilRef=e.stencilRef),e.stencilFuncMask!==void 0&&(r.stencilFuncMask=e.stencilFuncMask),e.stencilFail!==void 0&&(r.stencilFail=e.stencilFail),e.stencilZFail!==void 0&&(r.stencilZFail=e.stencilZFail),e.stencilZPass!==void 0&&(r.stencilZPass=e.stencilZPass),e.stencilWrite!==void 0&&(r.stencilWrite=e.stencilWrite),e.wireframe!==void 0&&(r.wireframe=e.wireframe),e.wireframeLinewidth!==void 0&&(r.wireframeLinewidth=e.wireframeLinewidth),e.wireframeLinecap!==void 0&&(r.wireframeLinecap=e.wireframeLinecap),e.wireframeLinejoin!==void 0&&(r.wireframeLinejoin=e.wireframeLinejoin),e.rotation!==void 0&&(r.rotation=e.rotation),e.linewidth!==void 0&&(r.linewidth=e.linewidth),e.dashSize!==void 0&&(r.dashSize=e.dashSize),e.gapSize!==void 0&&(r.gapSize=e.gapSize),e.scale!==void 0&&(r.scale=e.scale),e.polygonOffset!==void 0&&(r.polygonOffset=e.polygonOffset),e.polygonOffsetFactor!==void 0&&(r.polygonOffsetFactor=e.polygonOffsetFactor),e.polygonOffsetUnits!==void 0&&(r.polygonOffsetUnits=e.polygonOffsetUnits),e.dithering!==void 0&&(r.dithering=e.dithering),e.alphaToCoverage!==void 0&&(r.alphaToCoverage=e.alphaToCoverage),e.premultipliedAlpha!==void 0&&(r.premultipliedAlpha=e.premultipliedAlpha),e.forceSinglePass!==void 0&&(r.forceSinglePass=e.forceSinglePass),e.visible!==void 0&&(r.visible=e.visible),e.toneMapped!==void 0&&(r.toneMapped=e.toneMapped),e.userData!==void 0&&(r.userData=e.userData),e.vertexColors!==void 0&&(r.vertexColors=typeof e.vertexColors==`number`?e.vertexColors>0:e.vertexColors),e.uniforms!==void 0)for(let t in e.uniforms){let i=e.uniforms[t];switch(r.uniforms[t]={},i.type){case`t`:r.uniforms[t].value=n(i.value);break;case`c`:r.uniforms[t].value=new W().setHex(i.value);break;case`v2`:r.uniforms[t].value=new B().fromArray(i.value);break;case`v3`:r.uniforms[t].value=new H().fromArray(i.value);break;case`v4`:r.uniforms[t].value=new io().fromArray(i.value);break;case`m3`:r.uniforms[t].value=new V().fromArray(i.value);break;case`m4`:r.uniforms[t].value=new U().fromArray(i.value);break;default:r.uniforms[t].value=i.value}}if(e.defines!==void 0&&(r.defines=e.defines),e.vertexShader!==void 0&&(r.vertexShader=e.vertexShader),e.fragmentShader!==void 0&&(r.fragmentShader=e.fragmentShader),e.glslVersion!==void 0&&(r.glslVersion=e.glslVersion),e.extensions!==void 0)for(let t in e.extensions)r.extensions[t]=e.extensions[t];if(e.lights!==void 0&&(r.lights=e.lights),e.clipping!==void 0&&(r.clipping=e.clipping),e.size!==void 0&&(r.size=e.size),e.sizeAttenuation!==void 0&&(r.sizeAttenuation=e.sizeAttenuation),e.map!==void 0&&(r.map=n(e.map)),e.matcap!==void 0&&(r.matcap=n(e.matcap)),e.alphaMap!==void 0&&(r.alphaMap=n(e.alphaMap)),e.bumpMap!==void 0&&(r.bumpMap=n(e.bumpMap)),e.bumpScale!==void 0&&(r.bumpScale=e.bumpScale),e.normalMap!==void 0&&(r.normalMap=n(e.normalMap)),e.normalMapType!==void 0&&(r.normalMapType=e.normalMapType),e.normalScale!==void 0){let t=e.normalScale;Array.isArray(t)===!1&&(t=[t,t]),r.normalScale=new B().fromArray(t)}return e.displacementMap!==void 0&&(r.displacementMap=n(e.displacementMap)),e.displacementScale!==void 0&&(r.displacementScale=e.displacementScale),e.displacementBias!==void 0&&(r.displacementBias=e.displacementBias),e.roughnessMap!==void 0&&(r.roughnessMap=n(e.roughnessMap)),e.metalnessMap!==void 0&&(r.metalnessMap=n(e.metalnessMap)),e.emissiveMap!==void 0&&(r.emissiveMap=n(e.emissiveMap)),e.emissiveIntensity!==void 0&&(r.emissiveIntensity=e.emissiveIntensity),e.specularMap!==void 0&&(r.specularMap=n(e.specularMap)),e.specularIntensityMap!==void 0&&(r.specularIntensityMap=n(e.specularIntensityMap)),e.specularColorMap!==void 0&&(r.specularColorMap=n(e.specularColorMap)),e.envMap!==void 0&&(r.envMap=n(e.envMap)),e.envMapRotation!==void 0&&r.envMapRotation.fromArray(e.envMapRotation),e.envMapIntensity!==void 0&&(r.envMapIntensity=e.envMapIntensity),e.reflectivity!==void 0&&(r.reflectivity=e.reflectivity),e.refractionRatio!==void 0&&(r.refractionRatio=e.refractionRatio),e.lightMap!==void 0&&(r.lightMap=n(e.lightMap)),e.lightMapIntensity!==void 0&&(r.lightMapIntensity=e.lightMapIntensity),e.aoMap!==void 0&&(r.aoMap=n(e.aoMap)),e.aoMapIntensity!==void 0&&(r.aoMapIntensity=e.aoMapIntensity),e.gradientMap!==void 0&&(r.gradientMap=n(e.gradientMap)),e.clearcoatMap!==void 0&&(r.clearcoatMap=n(e.clearcoatMap)),e.clearcoatRoughnessMap!==void 0&&(r.clearcoatRoughnessMap=n(e.clearcoatRoughnessMap)),e.clearcoatNormalMap!==void 0&&(r.clearcoatNormalMap=n(e.clearcoatNormalMap)),e.clearcoatNormalScale!==void 0&&(r.clearcoatNormalScale=new B().fromArray(e.clearcoatNormalScale)),e.iridescenceMap!==void 0&&(r.iridescenceMap=n(e.iridescenceMap)),e.iridescenceThicknessMap!==void 0&&(r.iridescenceThicknessMap=n(e.iridescenceThicknessMap)),e.transmissionMap!==void 0&&(r.transmissionMap=n(e.transmissionMap)),e.thicknessMap!==void 0&&(r.thicknessMap=n(e.thicknessMap)),e.anisotropyMap!==void 0&&(r.anisotropyMap=n(e.anisotropyMap)),e.sheenColorMap!==void 0&&(r.sheenColorMap=n(e.sheenColorMap)),e.sheenRoughnessMap!==void 0&&(r.sheenRoughnessMap=n(e.sheenRoughnessMap)),r}setTextures(e){return this.textures=e,this}createMaterialFromType(t){return e.createMaterialFromType(t)}static createMaterialFromType(e){return new{ShadowMaterial:gf,SpriteMaterial:Jl,RawShaderMaterial:_f,ShaderMaterial:gc,PointsMaterial:dd,MeshPhysicalMaterial:yf,MeshStandardMaterial:vf,MeshPhongMaterial:bf,MeshToonMaterial:xf,MeshNormalMaterial:Sf,MeshLambertMaterial:Cf,MeshDepthMaterial:Tl,MeshDistanceMaterial:El,MeshBasicMaterial:Ps,MeshMatcapMaterial:wf,LineDashedMaterial:Tf,LineBasicMaterial:Qu,Material:Ns}[e]}},yp=class{static decodeText(e){if(console.warn(`THREE.LoaderUtils: decodeText() has been deprecated with r165 and will be removed with r175. Use TextDecoder instead.`),typeof TextDecoder<`u`)return new TextDecoder().decode(e);let t=``;for(let n=0,r=e.length;n<r;n++)t+=String.fromCharCode(e[n]);try{return decodeURIComponent(escape(t))}catch{return t}}static extractUrlBase(e){let t=e.lastIndexOf(`/`);return t===-1?`./`:e.slice(0,t+1)}static resolveURL(e,t){return typeof e!=`string`||e===``?``:(/^https?:\/\//i.test(t)&&/^\//.test(e)&&(t=t.replace(/(^https?:\/\/[^\/]+).*/i,`$1`)),/^(https?:)?\/\//i.test(e)||/^data:.*,.*$/i.test(e)||/^blob:.*$/i.test(e)?e:t+e)}},bp=class extends q{constructor(){super(),this.isInstancedBufferGeometry=!0,this.type=`InstancedBufferGeometry`,this.instanceCount=1/0}copy(e){return super.copy(e),this.instanceCount=e.instanceCount,this}toJSON(){let e=super.toJSON();return e.instanceCount=this.instanceCount,e.isInstancedBufferGeometry=!0,e}},xp=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=this,a=new Kf(i.manager);a.setPath(i.path),a.setRequestHeader(i.requestHeader),a.setWithCredentials(i.withCredentials),a.load(e,function(n){try{t(i.parse(JSON.parse(n)))}catch(t){r?r(t):console.error(t),i.manager.itemError(e)}},n,r)}parse(e){let t={},n={};function r(e,n){if(t[n]!==void 0)return t[n];let r=e.interleavedBuffers[n],a=i(e,r.buffer),o=k(r.type,a),s=new Gl(o,r.stride);return s.uuid=r.uuid,t[n]=s,s}function i(e,t){if(n[t]!==void 0)return n[t];let r=e.arrayBuffers[t],i=new Uint32Array(r).buffer;return n[t]=i,i}let a=e.isInstancedBufferGeometry?new bp:new q,o=e.data.index;if(o!==void 0){let e=k(o.type,o.array);a.setIndex(new G(e,1))}let s=e.data.attributes;for(let t in s){let n=s[t],i;if(n.isInterleavedBufferAttribute){let t=r(e.data,n.data);i=new ql(t,n.itemSize,n.offset,n.normalized)}else{let e=k(n.type,n.array);i=new(n.isInstancedBufferAttribute?Du:G)(e,n.itemSize,n.normalized)}n.name!==void 0&&(i.name=n.name),n.usage!==void 0&&i.setUsage(n.usage),a.setAttribute(t,i)}let c=e.data.morphAttributes;if(c)for(let t in c){let n=c[t],i=[];for(let t=0,a=n.length;t<a;t++){let a=n[t],o;if(a.isInterleavedBufferAttribute){let t=r(e.data,a.data);o=new ql(t,a.itemSize,a.offset,a.normalized)}else{let e=k(a.type,a.array);o=new G(e,a.itemSize,a.normalized)}a.name!==void 0&&(o.name=a.name),i.push(o)}a.morphAttributes[t]=i}e.data.morphTargetsRelative&&(a.morphTargetsRelative=!0);let l=e.data.groups||e.data.drawcalls||e.data.offsets;if(l!==void 0)for(let e=0,t=l.length;e!==t;++e){let t=l[e];a.addGroup(t.start,t.count,t.materialIndex)}let u=e.data.boundingSphere;if(u!==void 0){let e=new H;u.center!==void 0&&e.fromArray(u.center),a.boundingSphere=new Mo(e,u.radius)}return e.name&&(a.name=e.name),e.userData&&(a.userData=e.userData),a}},Sp=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=this,a=this.path===``?yp.extractUrlBase(e):this.path;this.resourcePath=this.resourcePath||a;let o=new Kf(this.manager);o.setPath(this.path),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(e,function(n){let a=null;try{a=JSON.parse(n)}catch(t){r!==void 0&&r(t),console.error(`THREE:ObjectLoader: Can't parse `+e+`.`,t.message);return}let o=a.metadata;o===void 0||o.type===void 0||o.type.toLowerCase()===`geometry`?(r!==void 0&&r(Error(`THREE.ObjectLoader: Can't load `+e)),console.error(`THREE.ObjectLoader: Can't load `+e)):i.parse(a,t)},n,r)}async loadAsync(e,t){let n=this,r=this.path===``?yp.extractUrlBase(e):this.path;this.resourcePath=this.resourcePath||r;let i=new Kf(this.manager);i.setPath(this.path),i.setRequestHeader(this.requestHeader),i.setWithCredentials(this.withCredentials);let a=await i.loadAsync(e,t),o=JSON.parse(a),s=o.metadata;if(s===void 0||s.type===void 0||s.type.toLowerCase()===`geometry`)throw Error(`THREE.ObjectLoader: Can't load `+e);return await n.parseAsync(o)}parse(e,t){let n=this.parseAnimations(e.animations),r=this.parseShapes(e.shapes),i=this.parseGeometries(e.geometries,r),a=this.parseImages(e.images,function(){t!==void 0&&t(c)}),o=this.parseTextures(e.textures,a),s=this.parseMaterials(e.materials,o),c=this.parseObject(e.object,i,s,o,n),l=this.parseSkeletons(e.skeletons,c);if(this.bindSkeletons(c,l),this.bindLightTargets(c),t!==void 0){let e=!1;for(let t in a)if(a[t].data instanceof HTMLImageElement){e=!0;break}e===!1&&t(c)}return c}async parseAsync(e){let t=this.parseAnimations(e.animations),n=this.parseShapes(e.shapes),r=this.parseGeometries(e.geometries,n),i=await this.parseImagesAsync(e.images),a=this.parseTextures(e.textures,i),o=this.parseMaterials(e.materials,a),s=this.parseObject(e.object,r,o,a,t),c=this.parseSkeletons(e.skeletons,s);return this.bindSkeletons(s,c),this.bindLightTargets(s),s}parseShapes(e){let t={};if(e!==void 0)for(let n=0,r=e.length;n<r;n++){let r=new $d().fromJSON(e[n]);t[r.uuid]=r}return t}parseSkeletons(e,t){let n={},r={};if(t.traverse(function(e){e.isBone&&(r[e.uuid]=e)}),e!==void 0)for(let t=0,i=e.length;t<i;t++){let i=new Eu().fromJSON(e[t],r);n[i.uuid]=i}return n}parseGeometries(e,t){let n={};if(e!==void 0){let r=new xp;for(let i=0,a=e.length;i<a;i++){let a,o=e[i];switch(o.type){case`BufferGeometry`:case`InstancedBufferGeometry`:a=r.parse(o);break;default:o.type in hf?a=hf[o.type].fromJSON(o,t):console.warn(`THREE.ObjectLoader: Unsupported geometry type "${o.type}"`)}a.uuid=o.uuid,o.name!==void 0&&(a.name=o.name),o.userData!==void 0&&(a.userData=o.userData),n[o.uuid]=a}}return n}parseMaterials(e,t){let n={},r={};if(e!==void 0){let i=new vp;i.setTextures(t);for(let t=0,a=e.length;t<a;t++){let a=e[t];n[a.uuid]===void 0&&(n[a.uuid]=i.parse(a)),r[a.uuid]=n[a.uuid]}}return r}parseAnimations(e){let t={};if(e!==void 0)for(let n=0;n<e.length;n++){let r=e[n],i=zf.parse(r);t[i.uuid]=i}return t}parseImages(e,t){let n=this,r={},i;function a(e){return n.manager.itemStart(e),i.load(e,function(){n.manager.itemEnd(e)},void 0,function(){n.manager.itemError(e),n.manager.itemEnd(e)})}function o(e){if(typeof e==`string`){let t=e;return a(/^(\/\/)|([a-z]+:(\/\/)?)/i.test(t)?t:n.resourcePath+t)}return e.data?{data:k(e.type,e.data),width:e.width,height:e.height}:null}if(e!==void 0&&e.length>0){let n=new Vf(t);i=new Yf(n),i.setCrossOrigin(this.crossOrigin);for(let t=0,n=e.length;t<n;t++){let n=e[t],i=n.url;if(Array.isArray(i)){let e=[];for(let t=0,n=i.length;t<n;t++){let n=i[t],r=o(n);r!==null&&(r instanceof HTMLImageElement?e.push(r):e.push(new Cu(r.data,r.width,r.height)))}r[n.uuid]=new to(e)}else{let e=o(n.url);r[n.uuid]=new to(e)}}}return r}async parseImagesAsync(e){let t=this,n={},r;async function i(e){if(typeof e==`string`){let n=e,i=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(n)?n:t.resourcePath+n;return await r.loadAsync(i)}return e.data?{data:k(e.type,e.data),width:e.width,height:e.height}:null}if(e!==void 0&&e.length>0){r=new Yf(this.manager),r.setCrossOrigin(this.crossOrigin);for(let t=0,r=e.length;t<r;t++){let r=e[t],a=r.url;if(Array.isArray(a)){let e=[];for(let t=0,n=a.length;t<n;t++){let n=a[t],r=await i(n);r!==null&&(r instanceof HTMLImageElement?e.push(r):e.push(new Cu(r.data,r.width,r.height)))}n[r.uuid]=new to(e)}else{let e=await i(r.url);n[r.uuid]=new to(e)}}}return n}parseTextures(e,t){function n(e,t){return typeof e==`number`?e:(console.warn(`THREE.ObjectLoader.parseTexture: Constant should be in numeric form.`,e),t[e])}let r={};if(e!==void 0)for(let i=0,a=e.length;i<a;i++){let a=e[i];a.image===void 0&&console.warn(`THREE.ObjectLoader: No "image" specified for`,a.uuid),t[a.image]===void 0&&console.warn(`THREE.ObjectLoader: Undefined image`,a.image);let o=t[a.image],s=o.data,c;Array.isArray(s)?(c=new Tc,s.length===6&&(c.needsUpdate=!0)):(c=s&&s.data?new Cu:new ro,s&&(c.needsUpdate=!0)),c.source=o,c.uuid=a.uuid,a.name!==void 0&&(c.name=a.name),a.mapping!==void 0&&(c.mapping=n(a.mapping,Cp)),a.channel!==void 0&&(c.channel=a.channel),a.offset!==void 0&&c.offset.fromArray(a.offset),a.repeat!==void 0&&c.repeat.fromArray(a.repeat),a.center!==void 0&&c.center.fromArray(a.center),a.rotation!==void 0&&(c.rotation=a.rotation),a.wrap!==void 0&&(c.wrapS=n(a.wrap[0],wp),c.wrapT=n(a.wrap[1],wp)),a.format!==void 0&&(c.format=a.format),a.internalFormat!==void 0&&(c.internalFormat=a.internalFormat),a.type!==void 0&&(c.type=a.type),a.colorSpace!==void 0&&(c.colorSpace=a.colorSpace),a.minFilter!==void 0&&(c.minFilter=n(a.minFilter,Tp)),a.magFilter!==void 0&&(c.magFilter=n(a.magFilter,Tp)),a.anisotropy!==void 0&&(c.anisotropy=a.anisotropy),a.flipY!==void 0&&(c.flipY=a.flipY),a.generateMipmaps!==void 0&&(c.generateMipmaps=a.generateMipmaps),a.premultiplyAlpha!==void 0&&(c.premultiplyAlpha=a.premultiplyAlpha),a.unpackAlignment!==void 0&&(c.unpackAlignment=a.unpackAlignment),a.compareFunction!==void 0&&(c.compareFunction=a.compareFunction),a.userData!==void 0&&(c.userData=a.userData),r[a.uuid]=c}return r}parseObject(e,t,n,r,i){let a;function o(e){return t[e]===void 0&&console.warn(`THREE.ObjectLoader: Undefined geometry`,e),t[e]}function s(e){if(e!==void 0){if(Array.isArray(e)){let t=[];for(let r=0,i=e.length;r<i;r++){let i=e[r];n[i]===void 0&&console.warn(`THREE.ObjectLoader: Undefined material`,i),t.push(n[i])}return t}return n[e]===void 0&&console.warn(`THREE.ObjectLoader: Undefined material`,e),n[e]}}function c(e){return r[e]===void 0&&console.warn(`THREE.ObjectLoader: Undefined texture`,e),r[e]}let l,u;switch(e.type){case`Scene`:a=new Wl,e.background!==void 0&&(Number.isInteger(e.background)?a.background=new W(e.background):a.background=c(e.background)),e.environment!==void 0&&(a.environment=c(e.environment)),e.fog!==void 0&&(e.fog.type===`Fog`?a.fog=new Ul(e.fog.color,e.fog.near,e.fog.far):e.fog.type===`FogExp2`&&(a.fog=new Hl(e.fog.color,e.fog.density)),e.fog.name!==``&&(a.fog.name=e.fog.name)),e.backgroundBlurriness!==void 0&&(a.backgroundBlurriness=e.backgroundBlurriness),e.backgroundIntensity!==void 0&&(a.backgroundIntensity=e.backgroundIntensity),e.backgroundRotation!==void 0&&a.backgroundRotation.fromArray(e.backgroundRotation),e.environmentIntensity!==void 0&&(a.environmentIntensity=e.environmentIntensity),e.environmentRotation!==void 0&&a.environmentRotation.fromArray(e.environmentRotation);break;case`PerspectiveCamera`:a=new xc(e.fov,e.aspect,e.near,e.far),e.focus!==void 0&&(a.focus=e.focus),e.zoom!==void 0&&(a.zoom=e.zoom),e.filmGauge!==void 0&&(a.filmGauge=e.filmGauge),e.filmOffset!==void 0&&(a.filmOffset=e.filmOffset),e.view!==void 0&&(a.view=Object.assign({},e.view));break;case`OrthographicCamera`:a=new zc(e.left,e.right,e.top,e.bottom,e.near,e.far),e.zoom!==void 0&&(a.zoom=e.zoom),e.view!==void 0&&(a.view=Object.assign({},e.view));break;case`AmbientLight`:a=new mp(e.color,e.intensity);break;case`DirectionalLight`:a=new pp(e.color,e.intensity),a.target=e.target||``;break;case`PointLight`:a=new dp(e.color,e.intensity,e.distance,e.decay);break;case`RectAreaLight`:a=new hp(e.color,e.intensity,e.width,e.height);break;case`SpotLight`:a=new op(e.color,e.intensity,e.distance,e.angle,e.penumbra,e.decay),a.target=e.target||``;break;case`HemisphereLight`:a=new ep(e.color,e.groundColor,e.intensity);break;case`LightProbe`:a=new _p().fromJSON(e);break;case`SkinnedMesh`:l=o(e.geometry),u=s(e.material),a=new xu(l,u),e.bindMode!==void 0&&(a.bindMode=e.bindMode),e.bindMatrix!==void 0&&a.bindMatrix.fromArray(e.bindMatrix),e.skeleton!==void 0&&(a.skeleton=e.skeleton);break;case`Mesh`:l=o(e.geometry),u=s(e.material),a=new dc(l,u);break;case`InstancedMesh`:l=o(e.geometry),u=s(e.material);let t=e.count,n=e.instanceMatrix,r=e.instanceColor;a=new Fu(l,u,t),a.instanceMatrix=new Du(new Float32Array(n.array),16),r!==void 0&&(a.instanceColor=new Du(new Float32Array(r.array),r.itemSize));break;case`BatchedMesh`:l=o(e.geometry),u=s(e.material),a=new Zu(e.maxInstanceCount,e.maxVertexCount,e.maxIndexCount,u),a.geometry=l,a.perObjectFrustumCulled=e.perObjectFrustumCulled,a.sortObjects=e.sortObjects,a._drawRanges=e.drawRanges,a._reservedRanges=e.reservedRanges,a._visibility=e.visibility,a._active=e.active,a._bounds=e.bounds.map(e=>{let t=new ho;t.min.fromArray(e.boxMin),t.max.fromArray(e.boxMax);let n=new Mo;return n.radius=e.sphereRadius,n.center.fromArray(e.sphereCenter),{boxInitialized:e.boxInitialized,box:t,sphereInitialized:e.sphereInitialized,sphere:n}}),a._maxInstanceCount=e.maxInstanceCount,a._maxVertexCount=e.maxVertexCount,a._maxIndexCount=e.maxIndexCount,a._geometryInitialized=e.geometryInitialized,a._geometryCount=e.geometryCount,a._matricesTexture=c(e.matricesTexture.uuid),e.colorsTexture!==void 0&&(a._colorsTexture=c(e.colorsTexture.uuid));break;case`LOD`:a=new du;break;case`Line`:a=new od(o(e.geometry),s(e.material));break;case`LineLoop`:a=new ud(o(e.geometry),s(e.material));break;case`LineSegments`:a=new ld(o(e.geometry),s(e.material));break;case`PointCloud`:case`Points`:a=new gd(o(e.geometry),s(e.material));break;case`Sprite`:a=new cu(s(e.material));break;case`Group`:a=new Ml;break;case`Bone`:a=new Su;break;default:a=new ps}if(a.uuid=e.uuid,e.name!==void 0&&(a.name=e.name),e.matrix===void 0?(e.position!==void 0&&a.position.fromArray(e.position),e.rotation!==void 0&&a.rotation.fromArray(e.rotation),e.quaternion!==void 0&&a.quaternion.fromArray(e.quaternion),e.scale!==void 0&&a.scale.fromArray(e.scale)):(a.matrix.fromArray(e.matrix),e.matrixAutoUpdate!==void 0&&(a.matrixAutoUpdate=e.matrixAutoUpdate),a.matrixAutoUpdate&&a.matrix.decompose(a.position,a.quaternion,a.scale)),e.up!==void 0&&a.up.fromArray(e.up),e.castShadow!==void 0&&(a.castShadow=e.castShadow),e.receiveShadow!==void 0&&(a.receiveShadow=e.receiveShadow),e.shadow&&(e.shadow.intensity!==void 0&&(a.shadow.intensity=e.shadow.intensity),e.shadow.bias!==void 0&&(a.shadow.bias=e.shadow.bias),e.shadow.normalBias!==void 0&&(a.shadow.normalBias=e.shadow.normalBias),e.shadow.radius!==void 0&&(a.shadow.radius=e.shadow.radius),e.shadow.mapSize!==void 0&&a.shadow.mapSize.fromArray(e.shadow.mapSize),e.shadow.camera!==void 0&&(a.shadow.camera=this.parseObject(e.shadow.camera))),e.visible!==void 0&&(a.visible=e.visible),e.frustumCulled!==void 0&&(a.frustumCulled=e.frustumCulled),e.renderOrder!==void 0&&(a.renderOrder=e.renderOrder),e.userData!==void 0&&(a.userData=e.userData),e.layers!==void 0&&(a.layers.mask=e.layers),e.children!==void 0){let o=e.children;for(let e=0;e<o.length;e++)a.add(this.parseObject(o[e],t,n,r,i))}if(e.animations!==void 0){let t=e.animations;for(let e=0;e<t.length;e++){let n=t[e];a.animations.push(i[n])}}if(e.type===`LOD`){e.autoUpdate!==void 0&&(a.autoUpdate=e.autoUpdate);let t=e.levels;for(let e=0;e<t.length;e++){let n=t[e],r=a.getObjectByProperty(`uuid`,n.object);r!==void 0&&a.addLevel(r,n.distance,n.hysteresis)}}return a}bindSkeletons(e,t){Object.keys(t).length!==0&&e.traverse(function(e){if(e.isSkinnedMesh===!0&&e.skeleton!==void 0){let n=t[e.skeleton];n===void 0?console.warn(`THREE.ObjectLoader: No skeleton found with UUID:`,e.skeleton):e.bind(n,e.bindMatrix)}})}bindLightTargets(e){e.traverse(function(t){if(t.isDirectionalLight||t.isSpotLight){let n=t.target,r=e.getObjectByProperty(`uuid`,n);t.target=r===void 0?new ps:r}})}},Cp={UVMapping:300,CubeReflectionMapping:301,CubeRefractionMapping:302,EquirectangularReflectionMapping:303,EquirectangularRefractionMapping:304,CubeUVReflectionMapping:306},wp={RepeatWrapping:Ir,ClampToEdgeWrapping:z,MirroredRepeatWrapping:Lr},Tp={NearestFilter:Rr,NearestMipmapNearestFilter:zr,NearestMipmapLinearFilter:Vr,LinearFilter:Ur,LinearMipmapNearestFilter:Wr,LinearMipmapLinearFilter:Kr},Ep=class extends Uf{constructor(e){super(e),this.isImageBitmapLoader=!0,typeof createImageBitmap>`u`&&console.warn(`THREE.ImageBitmapLoader: createImageBitmap() not supported.`),typeof fetch>`u`&&console.warn(`THREE.ImageBitmapLoader: fetch() not supported.`),this.options={premultiplyAlpha:`none`}}setOptions(e){return this.options=e,this}load(e,t,n,r){e===void 0&&(e=``),this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);let i=this,a=Bf.get(e);if(a!==void 0){if(i.manager.itemStart(e),a.then){a.then(n=>{t&&t(n),i.manager.itemEnd(e)}).catch(e=>{r&&r(e)});return}return setTimeout(function(){t&&t(a),i.manager.itemEnd(e)},0),a}let o={};o.credentials=this.crossOrigin===`anonymous`?`same-origin`:`include`,o.headers=this.requestHeader;let s=fetch(e,o).then(function(e){return e.blob()}).then(function(e){return createImageBitmap(e,Object.assign(i.options,{colorSpaceConversion:`none`}))}).then(function(n){return Bf.add(e,n),t&&t(n),i.manager.itemEnd(e),n}).catch(function(t){r&&r(t),Bf.remove(e),i.manager.itemError(e),i.manager.itemEnd(e)});Bf.add(e,s),i.manager.itemStart(e)}},Op=class{static getContext(){return Dp===void 0&&(Dp=new(window.AudioContext||window.webkitAudioContext)),Dp}static setContext(e){Dp=e}},kp=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=this,a=new Kf(this.manager);a.setResponseType(`arraybuffer`),a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(e,function(e){try{let n=e.slice(0);Op.getContext().decodeAudioData(n,function(e){t(e)}).catch(o)}catch(e){o(e)}},n,r);function o(t){r?r(t):console.error(t),i.manager.itemError(e)}}},Ap=new U,jp=new U,Mp=new U,Np=class{constructor(){this.type=`StereoCamera`,this.aspect=1,this.eyeSep=.064,this.cameraL=new xc,this.cameraL.layers.enable(1),this.cameraL.matrixAutoUpdate=!1,this.cameraR=new xc,this.cameraR.layers.enable(2),this.cameraR.matrixAutoUpdate=!1,this._cache={focus:null,fov:null,aspect:null,near:null,far:null,zoom:null,eyeSep:null}}update(e){let t=this._cache;if(t.focus!==e.focus||t.fov!==e.fov||t.aspect!==e.aspect*this.aspect||t.near!==e.near||t.far!==e.far||t.zoom!==e.zoom||t.eyeSep!==this.eyeSep){t.focus=e.focus,t.fov=e.fov,t.aspect=e.aspect*this.aspect,t.near=e.near,t.far=e.far,t.zoom=e.zoom,t.eyeSep=this.eyeSep,Mp.copy(e.projectionMatrix);let n=t.eyeSep/2,r=n*t.near/t.focus,i=t.near*Math.tan(Va*t.fov*.5)/t.zoom,a,o;jp.elements[12]=-n,Ap.elements[12]=n,a=-i*t.aspect+r,o=i*t.aspect+r,Mp.elements[0]=2*t.near/(o-a),Mp.elements[8]=(o+a)/(o-a),this.cameraL.projectionMatrix.copy(Mp),a=-i*t.aspect-r,o=i*t.aspect-r,Mp.elements[0]=2*t.near/(o-a),Mp.elements[8]=(o+a)/(o-a),this.cameraR.projectionMatrix.copy(Mp)}this.cameraL.matrixWorld.copy(e.matrixWorld).multiply(jp),this.cameraR.matrixWorld.copy(e.matrixWorld).multiply(Ap)}},Pp=class{constructor(e=!0){this.autoStart=e,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}start(){this.startTime=Dr(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0}stop(){this.getElapsedTime(),this.running=!1,this.autoStart=!1}getElapsedTime(){return this.getDelta(),this.elapsedTime}getDelta(){let e=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){let t=Dr();e=(t-this.oldTime)/1e3,this.oldTime=t,this.elapsedTime+=e}return e}},Fp=new H,Ip=new fo,Lp=new H,Rp=new H,zp=class extends ps{constructor(){super(),this.type=`AudioListener`,this.context=Op.getContext(),this.gain=this.context.createGain(),this.gain.connect(this.context.destination),this.filter=null,this.timeDelta=0,this._clock=new Pp}getInput(){return this.gain}removeFilter(){return this.filter!==null&&(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination),this.gain.connect(this.context.destination),this.filter=null),this}getFilter(){return this.filter}setFilter(e){return this.filter===null?this.gain.disconnect(this.context.destination):(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination)),this.filter=e,this.gain.connect(this.filter),this.filter.connect(this.context.destination),this}getMasterVolume(){return this.gain.gain.value}setMasterVolume(e){return this.gain.gain.setTargetAtTime(e,this.context.currentTime,.01),this}updateMatrixWorld(e){super.updateMatrixWorld(e);let t=this.context.listener,n=this.up;if(this.timeDelta=this._clock.getDelta(),this.matrixWorld.decompose(Fp,Ip,Lp),Rp.set(0,0,-1).applyQuaternion(Ip),t.positionX){let e=this.context.currentTime+this.timeDelta;t.positionX.linearRampToValueAtTime(Fp.x,e),t.positionY.linearRampToValueAtTime(Fp.y,e),t.positionZ.linearRampToValueAtTime(Fp.z,e),t.forwardX.linearRampToValueAtTime(Rp.x,e),t.forwardY.linearRampToValueAtTime(Rp.y,e),t.forwardZ.linearRampToValueAtTime(Rp.z,e),t.upX.linearRampToValueAtTime(n.x,e),t.upY.linearRampToValueAtTime(n.y,e),t.upZ.linearRampToValueAtTime(n.z,e)}else t.setPosition(Fp.x,Fp.y,Fp.z),t.setOrientation(Rp.x,Rp.y,Rp.z,n.x,n.y,n.z)}},Bp=class extends ps{constructor(e){super(),this.type=`Audio`,this.listener=e,this.context=e.context,this.gain=this.context.createGain(),this.gain.connect(e.getInput()),this.autoplay=!1,this.buffer=null,this.detune=0,this.loop=!1,this.loopStart=0,this.loopEnd=0,this.offset=0,this.duration=void 0,this.playbackRate=1,this.isPlaying=!1,this.hasPlaybackControl=!0,this.source=null,this.sourceType=`empty`,this._startedAt=0,this._progress=0,this._connected=!1,this.filters=[]}getOutput(){return this.gain}setNodeSource(e){return this.hasPlaybackControl=!1,this.sourceType=`audioNode`,this.source=e,this.connect(),this}setMediaElementSource(e){return this.hasPlaybackControl=!1,this.sourceType=`mediaNode`,this.source=this.context.createMediaElementSource(e),this.connect(),this}setMediaStreamSource(e){return this.hasPlaybackControl=!1,this.sourceType=`mediaStreamNode`,this.source=this.context.createMediaStreamSource(e),this.connect(),this}setBuffer(e){return this.buffer=e,this.sourceType=`buffer`,this.autoplay&&this.play(),this}play(e=0){if(this.isPlaying===!0){console.warn(`THREE.Audio: Audio is already playing.`);return}if(this.hasPlaybackControl===!1){console.warn(`THREE.Audio: this Audio has no playback control.`);return}this._startedAt=this.context.currentTime+e;let t=this.context.createBufferSource();return t.buffer=this.buffer,t.loop=this.loop,t.loopStart=this.loopStart,t.loopEnd=this.loopEnd,t.onended=this.onEnded.bind(this),t.start(this._startedAt,this._progress+this.offset,this.duration),this.isPlaying=!0,this.source=t,this.setDetune(this.detune),this.setPlaybackRate(this.playbackRate),this.connect()}pause(){if(this.hasPlaybackControl===!1)console.warn(`THREE.Audio: this Audio has no playback control.`);else return this.isPlaying===!0&&(this._progress+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate,this.loop===!0&&(this._progress%=this.duration||this.buffer.duration),this.source.stop(),this.source.onended=null,this.isPlaying=!1),this}stop(e=0){if(this.hasPlaybackControl===!1)console.warn(`THREE.Audio: this Audio has no playback control.`);else return this._progress=0,this.source!==null&&(this.source.stop(this.context.currentTime+e),this.source.onended=null),this.isPlaying=!1,this}connect(){if(this.filters.length>0){this.source.connect(this.filters[0]);for(let e=1,t=this.filters.length;e<t;e++)this.filters[e-1].connect(this.filters[e]);this.filters[this.filters.length-1].connect(this.getOutput())}else this.source.connect(this.getOutput());return this._connected=!0,this}disconnect(){if(this._connected!==!1){if(this.filters.length>0){this.source.disconnect(this.filters[0]);for(let e=1,t=this.filters.length;e<t;e++)this.filters[e-1].disconnect(this.filters[e]);this.filters[this.filters.length-1].disconnect(this.getOutput())}else this.source.disconnect(this.getOutput());return this._connected=!1,this}}getFilters(){return this.filters}setFilters(e){return e||(e=[]),this._connected===!0?(this.disconnect(),this.filters=e.slice(),this.connect()):this.filters=e.slice(),this}setDetune(e){return this.detune=e,this.isPlaying===!0&&this.source.detune!==void 0&&this.source.detune.setTargetAtTime(this.detune,this.context.currentTime,.01),this}getDetune(){return this.detune}getFilter(){return this.getFilters()[0]}setFilter(e){return this.setFilters(e?[e]:[])}setPlaybackRate(e){if(this.hasPlaybackControl===!1)console.warn(`THREE.Audio: this Audio has no playback control.`);else return this.playbackRate=e,this.isPlaying===!0&&this.source.playbackRate.setTargetAtTime(this.playbackRate,this.context.currentTime,.01),this}getPlaybackRate(){return this.playbackRate}onEnded(){this.isPlaying=!1}getLoop(){return this.hasPlaybackControl===!1?(console.warn(`THREE.Audio: this Audio has no playback control.`),!1):this.loop}setLoop(e){if(this.hasPlaybackControl===!1)console.warn(`THREE.Audio: this Audio has no playback control.`);else return this.loop=e,this.isPlaying===!0&&(this.source.loop=this.loop),this}setLoopStart(e){return this.loopStart=e,this}setLoopEnd(e){return this.loopEnd=e,this}getVolume(){return this.gain.gain.value}setVolume(e){return this.gain.gain.setTargetAtTime(e,this.context.currentTime,.01),this}},Vp=new H,Hp=new fo,Up=new H,Wp=new H,Gp=class extends Bp{constructor(e){super(e),this.panner=this.context.createPanner(),this.panner.panningModel=`HRTF`,this.panner.connect(this.gain)}connect(){super.connect(),this.panner.connect(this.gain)}disconnect(){super.disconnect(),this.panner.disconnect(this.gain)}getOutput(){return this.panner}getRefDistance(){return this.panner.refDistance}setRefDistance(e){return this.panner.refDistance=e,this}getRolloffFactor(){return this.panner.rolloffFactor}setRolloffFactor(e){return this.panner.rolloffFactor=e,this}getDistanceModel(){return this.panner.distanceModel}setDistanceModel(e){return this.panner.distanceModel=e,this}getMaxDistance(){return this.panner.maxDistance}setMaxDistance(e){return this.panner.maxDistance=e,this}setDirectionalCone(e,t,n){return this.panner.coneInnerAngle=e,this.panner.coneOuterAngle=t,this.panner.coneOuterGain=n,this}updateMatrixWorld(e){if(super.updateMatrixWorld(e),this.hasPlaybackControl===!0&&this.isPlaying===!1)return;this.matrixWorld.decompose(Vp,Hp,Up),Wp.set(0,0,1).applyQuaternion(Hp);let t=this.panner;if(t.positionX){let e=this.context.currentTime+this.listener.timeDelta;t.positionX.linearRampToValueAtTime(Vp.x,e),t.positionY.linearRampToValueAtTime(Vp.y,e),t.positionZ.linearRampToValueAtTime(Vp.z,e),t.orientationX.linearRampToValueAtTime(Wp.x,e),t.orientationY.linearRampToValueAtTime(Wp.y,e),t.orientationZ.linearRampToValueAtTime(Wp.z,e)}else t.setPosition(Vp.x,Vp.y,Vp.z),t.setOrientation(Wp.x,Wp.y,Wp.z)}},Kp=class{constructor(e,t=2048){this.analyser=e.context.createAnalyser(),this.analyser.fftSize=t,this.data=new Uint8Array(this.analyser.frequencyBinCount),e.getOutput().connect(this.analyser)}getFrequencyData(){return this.analyser.getByteFrequencyData(this.data),this.data}getAverageFrequency(){let e=0,t=this.getFrequencyData();for(let n=0;n<t.length;n++)e+=t[n];return e/t.length}},qp=class{constructor(e,t,n){this.binding=e,this.valueSize=n;let r,i,a;switch(t){case`quaternion`:r=this._slerp,i=this._slerpAdditive,a=this._setAdditiveIdentityQuaternion,this.buffer=new Float64Array(n*6),this._workIndex=5;break;case`string`:case`bool`:r=this._select,i=this._select,a=this._setAdditiveIdentityOther,this.buffer=Array(n*5);break;default:r=this._lerp,i=this._lerpAdditive,a=this._setAdditiveIdentityNumeric,this.buffer=new Float64Array(n*5)}this._mixBufferRegion=r,this._mixBufferRegionAdditive=i,this._setIdentity=a,this._origIndex=3,this._addIndex=4,this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,this.useCount=0,this.referenceCount=0}accumulate(e,t){let n=this.buffer,r=this.valueSize,i=e*r+r,a=this.cumulativeWeight;if(a===0){for(let e=0;e!==r;++e)n[i+e]=n[e];a=t}else{a+=t;let e=t/a;this._mixBufferRegion(n,i,0,e,r)}this.cumulativeWeight=a}accumulateAdditive(e){let t=this.buffer,n=this.valueSize,r=n*this._addIndex;this.cumulativeWeightAdditive===0&&this._setIdentity(),this._mixBufferRegionAdditive(t,r,0,e,n),this.cumulativeWeightAdditive+=e}apply(e){let t=this.valueSize,n=this.buffer,r=e*t+t,i=this.cumulativeWeight,a=this.cumulativeWeightAdditive,o=this.binding;if(this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,i<1){let e=t*this._origIndex;this._mixBufferRegion(n,r,e,1-i,t)}a>0&&this._mixBufferRegionAdditive(n,r,this._addIndex*t,1,t);for(let e=t,i=t+t;e!==i;++e)if(n[e]!==n[e+t]){o.setValue(n,r);break}}saveOriginalState(){let e=this.binding,t=this.buffer,n=this.valueSize,r=n*this._origIndex;e.getValue(t,r);for(let e=n,i=r;e!==i;++e)t[e]=t[r+e%n];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){let e=this.valueSize*3;this.binding.setValue(this.buffer,e)}_setAdditiveIdentityNumeric(){let e=this._addIndex*this.valueSize,t=e+this.valueSize;for(let n=e;n<t;n++)this.buffer[n]=0}_setAdditiveIdentityQuaternion(){this._setAdditiveIdentityNumeric(),this.buffer[this._addIndex*this.valueSize+3]=1}_setAdditiveIdentityOther(){let e=this._origIndex*this.valueSize,t=this._addIndex*this.valueSize;for(let n=0;n<this.valueSize;n++)this.buffer[t+n]=this.buffer[e+n]}_select(e,t,n,r,i){if(r>=.5)for(let r=0;r!==i;++r)e[t+r]=e[n+r]}_slerp(e,t,n,r){fo.slerpFlat(e,t,e,t,e,n,r)}_slerpAdditive(e,t,n,r,i){let a=this._workIndex*i;fo.multiplyQuaternionsFlat(e,a,e,t,e,n),fo.slerpFlat(e,t,e,t,e,a,r)}_lerp(e,t,n,r,i){let a=1-r;for(let o=0;o!==i;++o){let i=t+o;e[i]=e[i]*a+e[n+o]*r}}_lerpAdditive(e,t,n,r,i){for(let a=0;a!==i;++a){let i=t+a;e[i]=e[i]+e[n+a]*r}}},Jp=`\\[\\]\\.:\\/`,Yp=RegExp(`[\\[\\]\\.:\\/]`,`g`),Xp=`[^\\[\\]\\.:\\/]`,Zp=`[^`+Jp.replace(`\\.`,``)+`]`,Qp=`((?:WC+[\\/:])*)`.replace(`WC`,Xp),$p=`(WCOD+)?`.replace(`WCOD`,Zp),em=`(?:\\.(WC+)(?:\\[(.+)\\])?)?`.replace(`WC`,Xp),tm=`\\.(WC+)(?:\\[(.+)\\])?`.replace(`WC`,Xp),nm=RegExp(`^`+Qp+$p+em+tm+`$`),rm=[`material`,`materials`,`bones`,`map`],im=class{constructor(e,t,n){let r=n||am.parseTrackName(t);this._targetGroup=e,this._bindings=e.subscribe_(t,r)}getValue(e,t){this.bind();let n=this._targetGroup.nCachedObjects_,r=this._bindings[n];r!==void 0&&r.getValue(e,t)}setValue(e,t){let n=this._bindings;for(let r=this._targetGroup.nCachedObjects_,i=n.length;r!==i;++r)n[r].setValue(e,t)}bind(){let e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,n=e.length;t!==n;++t)e[t].bind()}unbind(){let e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,n=e.length;t!==n;++t)e[t].unbind()}},am=class e{constructor(t,n,r){this.path=n,this.parsedPath=r||e.parseTrackName(n),this.node=e.findNode(t,this.parsedPath.nodeName),this.rootNode=t,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(t,n,r){return t&&t.isAnimationObjectGroup?new e.Composite(t,n,r):new e(t,n,r)}static sanitizeNodeName(e){return e.replace(/\s/g,`_`).replace(Yp,``)}static parseTrackName(e){let t=nm.exec(e);if(t===null)throw Error(`PropertyBinding: Cannot parse trackName: `+e);let n={nodeName:t[2],objectName:t[3],objectIndex:t[4],propertyName:t[5],propertyIndex:t[6]},r=n.nodeName&&n.nodeName.lastIndexOf(`.`);if(r!==void 0&&r!==-1){let e=n.nodeName.substring(r+1);rm.indexOf(e)!==-1&&(n.nodeName=n.nodeName.substring(0,r),n.objectName=e)}if(n.propertyName===null||n.propertyName.length===0)throw Error(`PropertyBinding: can not parse propertyName from trackName: `+e);return n}static findNode(e,t){if(t===void 0||t===``||t===`.`||t===-1||t===e.name||t===e.uuid)return e;if(e.skeleton){let n=e.skeleton.getBoneByName(t);if(n!==void 0)return n}if(e.children){let n=function(e){for(let r=0;r<e.length;r++){let i=e[r];if(i.name===t||i.uuid===t)return i;let a=n(i.children);if(a)return a}return null},r=n(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 n=this.resolvedProperty;for(let r=0,i=n.length;r!==i;++r)e[t++]=n[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 n=this.resolvedProperty;for(let r=0,i=n.length;r!==i;++r)n[r]=e[t++]}_setValue_array_setNeedsUpdate(e,t){let n=this.resolvedProperty;for(let r=0,i=n.length;r!==i;++r)n[r]=e[t++];this.targetObject.needsUpdate=!0}_setValue_array_setMatrixWorldNeedsUpdate(e,t){let n=this.resolvedProperty;for(let r=0,i=n.length;r!==i;++r)n[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 t=this.node,n=this.parsedPath,r=n.objectName,i=n.propertyName,a=n.propertyIndex;if(t||(t=e.findNode(this.rootNode,n.nodeName),this.node=t),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,!t){console.warn(`THREE.PropertyBinding: No target node found for track: `+this.path+`.`);return}if(r){let e=n.objectIndex;switch(r){case`materials`:if(!t.material){console.error(`THREE.PropertyBinding: Can not bind to material as node does not have a material.`,this);return}if(!t.material.materials){console.error(`THREE.PropertyBinding: Can not bind to material.materials as node.material does not have a materials array.`,this);return}t=t.material.materials;break;case`bones`:if(!t.skeleton){console.error(`THREE.PropertyBinding: Can not bind to bones as node does not have a skeleton.`,this);return}t=t.skeleton.bones;for(let n=0;n<t.length;n++)if(t[n].name===e){e=n;break}break;case`map`:if(`map`in t){t=t.map;break}if(!t.material){console.error(`THREE.PropertyBinding: Can not bind to material as node does not have a material.`,this);return}if(!t.material.map){console.error(`THREE.PropertyBinding: Can not bind to material.map as node.material does not have a map.`,this);return}t=t.material.map;break;default:if(t[r]===void 0){console.error(`THREE.PropertyBinding: Can not bind to objectName of node undefined.`,this);return}t=t[r]}if(e!==void 0){if(t[e]===void 0){console.error(`THREE.PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.`,this,t);return}t=t[e]}}let o=t[i];if(o===void 0){let e=n.nodeName;console.error(`THREE.PropertyBinding: Trying to update property for track: `+e+`.`+i+` but it wasn't found.`,t);return}let s=this.Versioning.None;this.targetObject=t,t.needsUpdate===void 0?t.matrixWorldNeedsUpdate!==void 0&&(s=this.Versioning.MatrixWorldNeedsUpdate):s=this.Versioning.NeedsUpdate;let c=this.BindingType.Direct;if(a!==void 0){if(i===`morphTargetInfluences`){if(!t.geometry){console.error(`THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.`,this);return}if(!t.geometry.morphAttributes){console.error(`THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.`,this);return}t.morphTargetDictionary[a]!==void 0&&(a=t.morphTargetDictionary[a])}c=this.BindingType.ArrayElement,this.resolvedProperty=o,this.propertyIndex=a}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=i;this.getValue=this.GetterByBindingType[c],this.setValue=this.SetterByBindingTypeAndVersioning[c][s]}unbind(){this.node=null,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}},am.Composite=im,am.prototype.BindingType={Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3},am.prototype.Versioning={None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2},am.prototype.GetterByBindingType=[am.prototype._getValue_direct,am.prototype._getValue_array,am.prototype._getValue_arrayElement,am.prototype._getValue_toArray],am.prototype.SetterByBindingTypeAndVersioning=[[am.prototype._setValue_direct,am.prototype._setValue_direct_setNeedsUpdate,am.prototype._setValue_direct_setMatrixWorldNeedsUpdate],[am.prototype._setValue_array,am.prototype._setValue_array_setNeedsUpdate,am.prototype._setValue_array_setMatrixWorldNeedsUpdate],[am.prototype._setValue_arrayElement,am.prototype._setValue_arrayElement_setNeedsUpdate,am.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate],[am.prototype._setValue_fromArray,am.prototype._setValue_fromArray_setNeedsUpdate,am.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate]],om=class{constructor(){this.isAnimationObjectGroup=!0,this.uuid=o(),this._objects=Array.prototype.slice.call(arguments),this.nCachedObjects_=0;let e={};this._indicesByUUID=e;for(let t=0,n=arguments.length;t!==n;++t)e[arguments[t].uuid]=t;this._paths=[],this._parsedPaths=[],this._bindings=[],this._bindingsIndicesByPath={};let t=this;this.stats={objects:{get total(){return t._objects.length},get inUse(){return this.total-t.nCachedObjects_}},get bindingsPerObject(){return t._bindings.length}}}add(){let e=this._objects,t=this._indicesByUUID,n=this._paths,r=this._parsedPaths,i=this._bindings,a=i.length,o,s=e.length,c=this.nCachedObjects_;for(let l=0,u=arguments.length;l!==u;++l){let u=arguments[l],d=u.uuid,f=t[d];if(f===void 0){f=s++,t[d]=f,e.push(u);for(let e=0,t=a;e!==t;++e)i[e].push(new am(u,n[e],r[e]))}else if(f<c){o=e[f];let s=--c,l=e[s];t[l.uuid]=f,e[f]=l,t[d]=s,e[s]=u;for(let e=0,t=a;e!==t;++e){let t=i[e],a=t[s],o=t[f];t[f]=a,o===void 0&&(o=new am(u,n[e],r[e])),t[s]=o}}else e[f]!==o&&console.error(`THREE.AnimationObjectGroup: Different objects with the same UUID detected. Clean the caches or recreate your infrastructure when reloading scenes.`)}this.nCachedObjects_=c}remove(){let e=this._objects,t=this._indicesByUUID,n=this._bindings,r=n.length,i=this.nCachedObjects_;for(let a=0,o=arguments.length;a!==o;++a){let o=arguments[a],s=o.uuid,c=t[s];if(c!==void 0&&c>=i){let a=i++,l=e[a];t[l.uuid]=c,e[c]=l,t[s]=a,e[a]=o;for(let e=0,t=r;e!==t;++e){let t=n[e],r=t[a],i=t[c];t[c]=r,t[a]=i}}}this.nCachedObjects_=i}uncache(){let e=this._objects,t=this._indicesByUUID,n=this._bindings,r=n.length,i=this.nCachedObjects_,a=e.length;for(let o=0,s=arguments.length;o!==s;++o){let s=arguments[o].uuid,c=t[s];if(c!==void 0){if(delete t[s],c<i){let o=--i,s=e[o],l=--a,u=e[l];t[s.uuid]=c,e[c]=s,t[u.uuid]=o,e[o]=u,e.pop();for(let e=0,t=r;e!==t;++e){let t=n[e],r=t[o],i=t[l];t[c]=r,t[o]=i,t.pop()}}else{let i=--a,o=e[i];i>0&&(t[o.uuid]=c),e[c]=o,e.pop();for(let e=0,t=r;e!==t;++e){let t=n[e];t[c]=t[i],t.pop()}}}}this.nCachedObjects_=i}subscribe_(e,t){let n=this._bindingsIndicesByPath,r=n[e],i=this._bindings;if(r!==void 0)return i[r];let a=this._paths,o=this._parsedPaths,s=this._objects,c=s.length,l=this.nCachedObjects_,u=Array(c);r=i.length,n[e]=r,a.push(e),o.push(t),i.push(u);for(let n=l,r=s.length;n!==r;++n){let r=s[n];u[n]=new am(r,e,t)}return u}unsubscribe_(e){let t=this._bindingsIndicesByPath,n=t[e];if(n!==void 0){let r=this._paths,i=this._parsedPaths,a=this._bindings,o=a.length-1,s=a[o],c=e[o];t[c]=n,a[n]=s,a.pop(),i[n]=i[o],i.pop(),r[n]=r[o],r.pop()}}},sm=class{constructor(e,t,n=null,r=t.blendMode){this._mixer=e,this._clip=t,this._localRoot=n,this.blendMode=r;let i=t.tracks,a=i.length,o=Array(a),s={endingStart:ra,endingEnd:ra};for(let e=0;e!==a;++e){let t=i[e].createInterpolant(null);o[e]=t,t.settings=s}this._interpolantSettings=s,this._interpolants=o,this._propertyBindings=Array(a),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=Qi,this._loopCount=-1,this._startTime=null,this.time=0,this.timeScale=1,this._effectiveTimeScale=1,this.weight=1,this._effectiveWeight=1,this.repetitions=1/0,this.paused=!1,this.enabled=!0,this.clampWhenFinished=!1,this.zeroSlopeAtStart=!0,this.zeroSlopeAtEnd=!0}play(){return this._mixer._activateAction(this),this}stop(){return this._mixer._deactivateAction(this),this.reset()}reset(){return this.paused=!1,this.enabled=!0,this.time=0,this._loopCount=-1,this._startTime=null,this.stopFading().stopWarping()}isRunning(){return this.enabled&&!this.paused&&this.timeScale!==0&&this._startTime===null&&this._mixer._isActiveAction(this)}isScheduled(){return this._mixer._isActiveAction(this)}startAt(e){return this._startTime=e,this}setLoop(e,t){return this.loop=e,this.repetitions=t,this}setEffectiveWeight(e){return this.weight=e,this._effectiveWeight=this.enabled?e:0,this.stopFading()}getEffectiveWeight(){return this._effectiveWeight}fadeIn(e){return this._scheduleFading(e,0,1)}fadeOut(e){return this._scheduleFading(e,1,0)}crossFadeFrom(e,t,n){if(e.fadeOut(t),this.fadeIn(t),n){let n=this._clip.duration,r=e._clip.duration,i=r/n,a=n/r;e.warp(1,i,t),this.warp(a,1,t)}return this}crossFadeTo(e,t,n){return e.crossFadeFrom(this,t,n)}stopFading(){let e=this._weightInterpolant;return e!==null&&(this._weightInterpolant=null,this._mixer._takeBackControlInterpolant(e)),this}setEffectiveTimeScale(e){return this.timeScale=e,this._effectiveTimeScale=this.paused?0:e,this.stopWarping()}getEffectiveTimeScale(){return this._effectiveTimeScale}setDuration(e){return this.timeScale=this._clip.duration/e,this.stopWarping()}syncWith(e){return this.time=e.time,this.timeScale=e.timeScale,this.stopWarping()}halt(e){return this.warp(this._effectiveTimeScale,0,e)}warp(e,t,n){let r=this._mixer,i=r.time,a=this.timeScale,o=this._timeScaleInterpolant;o===null&&(o=r._lendControlInterpolant(),this._timeScaleInterpolant=o);let s=o.parameterPositions,c=o.sampleValues;return s[0]=i,s[1]=i+n,c[0]=e/a,c[1]=t/a,this}stopWarping(){let e=this._timeScaleInterpolant;return e!==null&&(this._timeScaleInterpolant=null,this._mixer._takeBackControlInterpolant(e)),this}getMixer(){return this._mixer}getClip(){return this._clip}getRoot(){return this._localRoot||this._mixer._root}_update(e,t,n,r){if(!this.enabled){this._updateWeight(e);return}let i=this._startTime;if(i!==null){let r=(e-i)*n;r<0||n===0?t=0:(this._startTime=null,t=n*r)}t*=this._updateTimeScale(e);let a=this._updateTime(t),o=this._updateWeight(e);if(o>0){let e=this._interpolants,t=this._propertyBindings;switch(this.blendMode){case sa:for(let n=0,r=e.length;n!==r;++n)e[n].evaluate(a),t[n].accumulateAdditive(o);break;case oa:default:for(let n=0,i=e.length;n!==i;++n)e[n].evaluate(a),t[n].accumulate(r,o)}}}_updateWeight(e){let t=0;if(this.enabled){t=this.weight;let n=this._weightInterpolant;if(n!==null){let r=n.evaluate(e)[0];t*=r,e>n.parameterPositions[1]&&(this.stopFading(),r===0&&(this.enabled=!1))}}return this._effectiveWeight=t,t}_updateTimeScale(e){let t=0;if(!this.paused){t=this.timeScale;let n=this._timeScaleInterpolant;if(n!==null){let r=n.evaluate(e)[0];t*=r,e>n.parameterPositions[1]&&(this.stopWarping(),t===0?this.paused=!0:this.timeScale=t)}}return this._effectiveTimeScale=t,t}_updateTime(e){let t=this._clip.duration,n=this.loop,r=this.time+e,i=this._loopCount,a=n===$i;if(e===0)return i===-1?r:a&&(i&1)==1?t-r:r;if(n===2200){i===-1&&(this._loopCount=0,this._setEndings(!0,!0,!1));handle_stop:{if(r>=t)r=t;else if(r<0)r=0;else{this.time=r;break handle_stop}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=r,this._mixer.dispatchEvent({type:`finished`,action:this,direction:e<0?-1:1})}}else{if(i===-1&&(e>=0?(i=0,this._setEndings(!0,this.repetitions===0,a)):this._setEndings(this.repetitions===0,!0,a)),r>=t||r<0){let n=Math.floor(r/t);r-=t*n,i+=Math.abs(n);let o=this.repetitions-i;if(o<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,r=e>0?t:0,this.time=r,this._mixer.dispatchEvent({type:`finished`,action:this,direction:e>0?1:-1});else{if(o===1){let t=e<0;this._setEndings(t,!t,a)}else this._setEndings(!1,!1,a);this._loopCount=i,this.time=r,this._mixer.dispatchEvent({type:`loop`,action:this,loopDelta:n})}}else this.time=r;if(a&&(i&1)==1)return t-r}return r}_setEndings(e,t,n){let r=this._interpolantSettings;n?(r.endingStart=ia,r.endingEnd=ia):(r.endingStart=e?this.zeroSlopeAtStart?ia:ra:aa,r.endingEnd=t?this.zeroSlopeAtEnd?ia:ra:aa)}_scheduleFading(e,t,n){let r=this._mixer,i=r.time,a=this._weightInterpolant;a===null&&(a=r._lendControlInterpolant(),this._weightInterpolant=a);let o=a.parameterPositions,s=a.sampleValues;return o[0]=i,s[0]=t,o[1]=i+e,s[1]=n,this}},cm=new Float32Array(1),lm=class extends Ra{constructor(e){super(),this._root=e,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}_bindAction(e,t){let n=e._localRoot||this._root,r=e._clip.tracks,i=r.length,a=e._propertyBindings,o=e._interpolants,s=n.uuid,c=this._bindingsByRootAndName,l=c[s];l===void 0&&(l={},c[s]=l);for(let e=0;e!==i;++e){let i=r[e],c=i.name,u=l[c];if(u!==void 0)++u.referenceCount,a[e]=u;else{if(u=a[e],u!==void 0){u._cacheIndex===null&&(++u.referenceCount,this._addInactiveBinding(u,s,c));continue}let r=t&&t._propertyBindings[e].binding.parsedPath;u=new qp(am.create(n,c,r),i.ValueTypeName,i.getValueSize()),++u.referenceCount,this._addInactiveBinding(u,s,c),a[e]=u}o[e].resultBuffer=u.buffer}}_activateAction(e){if(!this._isActiveAction(e)){if(e._cacheIndex===null){let t=(e._localRoot||this._root).uuid,n=e._clip.uuid,r=this._actionsByClip[n];this._bindAction(e,r&&r.knownActions[0]),this._addInactiveAction(e,n,t)}let t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){let n=t[e];n.useCount++===0&&(this._lendBinding(n),n.saveOriginalState())}this._lendAction(e)}}_deactivateAction(e){if(this._isActiveAction(e)){let t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){let n=t[e];--n.useCount===0&&(n.restoreOriginalState(),this._takeBackBinding(n))}this._takeBackAction(e)}}_initMemoryManager(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;let e=this;this.stats={actions:{get total(){return e._actions.length},get inUse(){return e._nActiveActions}},bindings:{get total(){return e._bindings.length},get inUse(){return e._nActiveBindings}},controlInterpolants:{get total(){return e._controlInterpolants.length},get inUse(){return e._nActiveControlInterpolants}}}}_isActiveAction(e){let t=e._cacheIndex;return t!==null&&t<this._nActiveActions}_addInactiveAction(e,t,n){let r=this._actions,i=this._actionsByClip,a=i[t];if(a===void 0)a={knownActions:[e],actionByRoot:{}},e._byClipCacheIndex=0,i[t]=a;else{let t=a.knownActions;e._byClipCacheIndex=t.length,t.push(e)}e._cacheIndex=r.length,r.push(e),a.actionByRoot[n]=e}_removeInactiveAction(e){let t=this._actions,n=t[t.length-1],r=e._cacheIndex;n._cacheIndex=r,t[r]=n,t.pop(),e._cacheIndex=null;let i=e._clip.uuid,a=this._actionsByClip,o=a[i],s=o.knownActions,c=s[s.length-1],l=e._byClipCacheIndex;c._byClipCacheIndex=l,s[l]=c,s.pop(),e._byClipCacheIndex=null;let u=o.actionByRoot,d=(e._localRoot||this._root).uuid;delete u[d],s.length===0&&delete a[i],this._removeInactiveBindingsForAction(e)}_removeInactiveBindingsForAction(e){let t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){let n=t[e];--n.referenceCount===0&&this._removeInactiveBinding(n)}}_lendAction(e){let t=this._actions,n=e._cacheIndex,r=this._nActiveActions++,i=t[r];e._cacheIndex=r,t[r]=e,i._cacheIndex=n,t[n]=i}_takeBackAction(e){let t=this._actions,n=e._cacheIndex,r=--this._nActiveActions,i=t[r];e._cacheIndex=r,t[r]=e,i._cacheIndex=n,t[n]=i}_addInactiveBinding(e,t,n){let r=this._bindingsByRootAndName,i=this._bindings,a=r[t];a===void 0&&(a={},r[t]=a),a[n]=e,e._cacheIndex=i.length,i.push(e)}_removeInactiveBinding(e){let t=this._bindings,n=e.binding,r=n.rootNode.uuid,i=n.path,a=this._bindingsByRootAndName,o=a[r],s=t[t.length-1],c=e._cacheIndex;s._cacheIndex=c,t[c]=s,t.pop(),delete o[i],Object.keys(o).length===0&&delete a[r]}_lendBinding(e){let t=this._bindings,n=e._cacheIndex,r=this._nActiveBindings++,i=t[r];e._cacheIndex=r,t[r]=e,i._cacheIndex=n,t[n]=i}_takeBackBinding(e){let t=this._bindings,n=e._cacheIndex,r=--this._nActiveBindings,i=t[r];e._cacheIndex=r,t[r]=e,i._cacheIndex=n,t[n]=i}_lendControlInterpolant(){let e=this._controlInterpolants,t=this._nActiveControlInterpolants++,n=e[t];return n===void 0&&(n=new kf(new Float32Array(2),new Float32Array(2),1,cm),n.__cacheIndex=t,e[t]=n),n}_takeBackControlInterpolant(e){let t=this._controlInterpolants,n=e.__cacheIndex,r=--this._nActiveControlInterpolants,i=t[r];e.__cacheIndex=r,t[r]=e,i.__cacheIndex=n,t[n]=i}clipAction(e,t,n){let r=t||this._root,i=r.uuid,a=typeof e==`string`?zf.findByName(r,e):e,o=a===null?e:a.uuid,s=this._actionsByClip[o],c=null;if(n===void 0&&(n=a===null?oa:a.blendMode),s!==void 0){let e=s.actionByRoot[i];if(e!==void 0&&e.blendMode===n)return e;c=s.knownActions[0],a===null&&(a=c._clip)}if(a===null)return null;let l=new sm(this,a,t,n);return this._bindAction(l,c),this._addInactiveAction(l,o,i),l}existingAction(e,t){let n=t||this._root,r=n.uuid,i=typeof e==`string`?zf.findByName(n,e):e,a=i?i.uuid:e,o=this._actionsByClip[a];return o===void 0?null:o.actionByRoot[r]||null}stopAllAction(){let e=this._actions,t=this._nActiveActions;for(let n=t-1;n>=0;--n)e[n].stop();return this}update(e){e*=this.timeScale;let t=this._actions,n=this._nActiveActions,r=this.time+=e,i=Math.sign(e),a=this._accuIndex^=1;for(let o=0;o!==n;++o)t[o]._update(r,e,i,a);let o=this._bindings,s=this._nActiveBindings;for(let e=0;e!==s;++e)o[e].apply(a);return this}setTime(e){this.time=0;for(let e=0;e<this._actions.length;e++)this._actions[e].time=0;return this.update(e)}getRoot(){return this._root}uncacheClip(e){let t=this._actions,n=e.uuid,r=this._actionsByClip,i=r[n];if(i!==void 0){let e=i.knownActions;for(let n=0,r=e.length;n!==r;++n){let r=e[n];this._deactivateAction(r);let i=r._cacheIndex,a=t[t.length-1];r._cacheIndex=null,r._byClipCacheIndex=null,a._cacheIndex=i,t[i]=a,t.pop(),this._removeInactiveBindingsForAction(r)}delete r[n]}}uncacheRoot(e){let t=e.uuid,n=this._actionsByClip;for(let e in n){let r=n[e].actionByRoot[t];r!==void 0&&(this._deactivateAction(r),this._removeInactiveAction(r))}let r=this._bindingsByRootAndName[t];if(r!==void 0)for(let e in r){let t=r[e];t.restoreOriginalState(),this._removeInactiveBinding(t)}}uncacheAction(e,t){let n=this.existingAction(e,t);n!==null&&(this._deactivateAction(n),this._removeInactiveAction(n))}},um=class e{constructor(e){this.value=e}clone(){return new e(this.value.clone===void 0?this.value:this.value.clone())}},dm=0,fm=class extends Ra{constructor(){super(),this.isUniformsGroup=!0,Object.defineProperty(this,"id",{value:dm++}),this.name=``,this.usage=Ea,this.uniforms=[]}add(e){return this.uniforms.push(e),this}remove(e){let t=this.uniforms.indexOf(e);return t!==-1&&this.uniforms.splice(t,1),this}setName(e){return this.name=e,this}setUsage(e){return this.usage=e,this}dispose(){return this.dispatchEvent({type:`dispose`}),this}copy(e){this.name=e.name,this.usage=e.usage;let t=e.uniforms;this.uniforms.length=0;for(let e=0,n=t.length;e<n;e++){let n=Array.isArray(t[e])?t[e]:[t[e]];for(let e=0;e<n.length;e++)this.uniforms.push(n[e].clone())}return this}clone(){return new this.constructor().copy(this)}},pm=class extends Gl{constructor(e,t,n=1){super(e,t),this.isInstancedInterleavedBuffer=!0,this.meshPerAttribute=n}copy(e){return super.copy(e),this.meshPerAttribute=e.meshPerAttribute,this}clone(e){let t=super.clone(e);return t.meshPerAttribute=this.meshPerAttribute,t}toJSON(e){let t=super.toJSON(e);return t.isInstancedInterleavedBuffer=!0,t.meshPerAttribute=this.meshPerAttribute,t}},mm=class{constructor(e,t,n,r,i){this.isGLBufferAttribute=!0,this.name=``,this.buffer=e,this.type=t,this.itemSize=n,this.elementSize=r,this.count=i,this.version=0}set needsUpdate(e){e===!0&&this.version++}setBuffer(e){return this.buffer=e,this}setType(e,t){return this.type=e,this.elementSize=t,this}setItemSize(e){return this.itemSize=e,this}setCount(e){return this.count=e,this}},hm=new U,gm=class{constructor(e,t,n=0,r=1/0){this.ray=new Bo(e,t),this.near=n,this.far=r,this.camera=null,this.layers=new Zo,this.params={Mesh:{},Line:{threshold:1},LOD:{},Points:{threshold:1},Sprite:{}}}set(e,t){this.ray.set(e,t)}setFromCamera(e,t){t.isPerspectiveCamera?(this.ray.origin.setFromMatrixPosition(t.matrixWorld),this.ray.direction.set(e.x,e.y,.5).unproject(t).sub(this.ray.origin).normalize(),this.camera=t):t.isOrthographicCamera?(this.ray.origin.set(e.x,e.y,(t.near+t.far)/(t.near-t.far)).unproject(t),this.ray.direction.set(0,0,-1).transformDirection(t.matrixWorld),this.camera=t):console.error(`THREE.Raycaster: Unsupported camera type: `+t.type)}setFromXRController(e){return hm.identity().extractRotation(e.matrixWorld),this.ray.origin.setFromMatrixPosition(e.matrixWorld),this.ray.direction.set(0,0,-1).applyMatrix4(hm),this}intersectObject(e,t=!0,n=[]){return kr(e,this,n,t),n.sort(Or),n}intersectObjects(e,t=!0,n=[]){for(let r=0,i=e.length;r<i;r++)kr(e[r],this,n,t);return n.sort(Or),n}},_m=class{constructor(e=1,t=0,n=0){return this.radius=e,this.phi=t,this.theta=n,this}set(e,t,n){return this.radius=e,this.phi=t,this.theta=n,this}copy(e){return this.radius=e.radius,this.phi=e.phi,this.theta=e.theta,this}makeSafe(){let e=1e-6;return this.phi=Math.max(e,Math.min(Math.PI-e,this.phi)),this}setFromVector3(e){return this.setFromCartesianCoords(e.x,e.y,e.z)}setFromCartesianCoords(e,t,n){return this.radius=Math.sqrt(e*e+t*t+n*n),this.radius===0?(this.theta=0,this.phi=0):(this.theta=Math.atan2(e,n),this.phi=Math.acos(s(t/this.radius,-1,1))),this}clone(){return new this.constructor().copy(this)}},vm=class{constructor(e=1,t=0,n=0){return this.radius=e,this.theta=t,this.y=n,this}set(e,t,n){return this.radius=e,this.theta=t,this.y=n,this}copy(e){return this.radius=e.radius,this.theta=e.theta,this.y=e.y,this}setFromVector3(e){return this.setFromCartesianCoords(e.x,e.y,e.z)}setFromCartesianCoords(e,t,n){return this.radius=Math.sqrt(e*e+n*n),this.theta=Math.atan2(e,n),this.y=t,this}clone(){return new this.constructor().copy(this)}},ym=class e{constructor(t,n,r,i){e.prototype.isMatrix2=!0,this.elements=[1,0,0,1],t!==void 0&&this.set(t,n,r,i)}identity(){return this.set(1,0,0,1),this}fromArray(e,t=0){for(let n=0;n<4;n++)this.elements[n]=e[n+t];return this}set(e,t,n,r){let i=this.elements;return i[0]=e,i[2]=t,i[1]=n,i[3]=r,this}},bm=new B,xm=class{constructor(e=new B(1/0,1/0),t=new B(-1/0,-1/0)){this.isBox2=!0,this.min=e,this.max=t}set(e,t){return this.min.copy(e),this.max.copy(t),this}setFromPoints(e){this.makeEmpty();for(let t=0,n=e.length;t<n;t++)this.expandByPoint(e[t]);return this}setFromCenterAndSize(e,t){let n=bm.copy(t).multiplyScalar(.5);return this.min.copy(e).sub(n),this.max.copy(e).add(n),this}clone(){return new this.constructor().copy(this)}copy(e){return this.min.copy(e.min),this.max.copy(e.max),this}makeEmpty(){return this.min.x=this.min.y=1/0,this.max.x=this.max.y=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y}getCenter(e){return this.isEmpty()?e.set(0,0):e.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(e){return this.isEmpty()?e.set(0,0):e.subVectors(this.max,this.min)}expandByPoint(e){return this.min.min(e),this.max.max(e),this}expandByVector(e){return this.min.sub(e),this.max.add(e),this}expandByScalar(e){return this.min.addScalar(-e),this.max.addScalar(e),this}containsPoint(e){return e.x>=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y))}intersectsBox(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,bm).distanceTo(e)}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}},Sm=new H,Cm=new H,wm=class{constructor(e=new H,t=new H){this.start=e,this.end=t}set(e,t){return this.start.copy(e),this.end.copy(t),this}copy(e){return this.start.copy(e.start),this.end.copy(e.end),this}getCenter(e){return e.addVectors(this.start,this.end).multiplyScalar(.5)}delta(e){return e.subVectors(this.end,this.start)}distanceSq(){return this.start.distanceToSquared(this.end)}distance(){return this.start.distanceTo(this.end)}at(e,t){return this.delta(t).multiplyScalar(e).add(this.start)}closestPointToPointParameter(e,t){Sm.subVectors(e,this.start),Cm.subVectors(this.end,this.start);let n=Cm.dot(Cm),r=Cm.dot(Sm)/n;return t&&(r=s(r,0,1)),r}closestPointToPoint(e,t,n){let r=this.closestPointToPointParameter(e,t);return this.delta(n).multiplyScalar(r).add(this.start)}applyMatrix4(e){return this.start.applyMatrix4(e),this.end.applyMatrix4(e),this}equals(e){return e.start.equals(this.start)&&e.end.equals(this.end)}clone(){return new this.constructor().copy(this)}},Tm=new H,Em=class extends ps{constructor(e,t){super(),this.light=e,this.matrixAutoUpdate=!1,this.color=t,this.type=`SpotLightHelper`;let n=new q,r=[0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,-1,0,1,0,0,0,0,1,1,0,0,0,0,-1,1];for(let e=0,t=1;e<32;e++,t++){let n=e/32*Math.PI*2,i=t/32*Math.PI*2;r.push(Math.cos(n),Math.sin(n),1,Math.cos(i),Math.sin(i),1)}n.setAttribute(`position`,new K(r,3));let i=new Qu({fog:!1,toneMapped:!1});this.cone=new ld(n,i),this.add(this.cone),this.update()}dispose(){this.cone.geometry.dispose(),this.cone.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1),this.parent?(this.parent.updateWorldMatrix(!0),this.matrix.copy(this.parent.matrixWorld).invert().multiply(this.light.matrixWorld)):this.matrix.copy(this.light.matrixWorld),this.matrixWorld.copy(this.light.matrixWorld);let e=this.light.distance?this.light.distance:1e3,t=e*Math.tan(this.light.angle);this.cone.scale.set(t,t,e),Tm.setFromMatrixPosition(this.light.target.matrixWorld),this.cone.lookAt(Tm),this.color===void 0?this.cone.material.color.copy(this.light.color):this.cone.material.color.set(this.color)}},Dm=new H,Om=new U,km=new U,Am=class extends ld{constructor(e){let t=Ar(e),n=new q,r=[],i=[],a=new W(0,0,1),o=new W(0,1,0);for(let e=0;e<t.length;e++){let n=t[e];n.parent&&n.parent.isBone&&(r.push(0,0,0),r.push(0,0,0),i.push(a.r,a.g,a.b),i.push(o.r,o.g,o.b))}n.setAttribute(`position`,new K(r,3)),n.setAttribute(`color`,new K(i,3));let s=new Qu({vertexColors:!0,depthTest:!1,depthWrite:!1,toneMapped:!1,transparent:!0});super(n,s),this.isSkeletonHelper=!0,this.type=`SkeletonHelper`,this.root=e,this.bones=t,this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1}updateMatrixWorld(e){let t=this.bones,n=this.geometry,r=n.getAttribute(`position`);km.copy(this.root.matrixWorld).invert();for(let e=0,n=0;e<t.length;e++){let i=t[e];i.parent&&i.parent.isBone&&(Om.multiplyMatrices(km,i.matrixWorld),Dm.setFromMatrixPosition(Om),r.setXYZ(n,Dm.x,Dm.y,Dm.z),Om.multiplyMatrices(km,i.parent.matrixWorld),Dm.setFromMatrixPosition(Om),r.setXYZ(n+1,Dm.x,Dm.y,Dm.z),n+=2)}n.getAttribute(`position`).needsUpdate=!0,super.updateMatrixWorld(e)}dispose(){this.geometry.dispose(),this.material.dispose()}},jm=class extends dc{constructor(e,t,n){let r=new lf(t,4,2),i=new Ps({wireframe:!0,fog:!1,toneMapped:!1});super(r,i),this.light=e,this.color=n,this.type=`PointLightHelper`,this.matrix=this.light.matrixWorld,this.matrixAutoUpdate=!1,this.update()}dispose(){this.geometry.dispose(),this.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.color===void 0?this.material.color.copy(this.light.color):this.material.color.set(this.color)}},Mm=new H,Nm=new W,Pm=new W,Fm=class extends ps{constructor(e,t,n){super(),this.light=e,this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.color=n,this.type=`HemisphereLightHelper`;let r=new of(t);r.rotateY(Math.PI*.5),this.material=new Ps({wireframe:!0,fog:!1,toneMapped:!1}),this.color===void 0&&(this.material.vertexColors=!0);let i=r.getAttribute(`position`),a=new Float32Array(i.count*3);r.setAttribute(`color`,new G(a,3)),this.add(new dc(r,this.material)),this.update()}dispose(){this.children[0].geometry.dispose(),this.children[0].material.dispose()}update(){let e=this.children[0];if(this.color!==void 0)this.material.color.set(this.color);else{let t=e.geometry.getAttribute(`color`);Nm.copy(this.light.color),Pm.copy(this.light.groundColor);for(let e=0,n=t.count;e<n;e++){let r=e<n/2?Nm:Pm;t.setXYZ(e,r.r,r.g,r.b)}t.needsUpdate=!0}this.light.updateWorldMatrix(!0,!1),e.lookAt(Mm.setFromMatrixPosition(this.light.matrixWorld).negate())}},Im=class extends ld{constructor(e=10,t=10,n=4473924,r=8947848){n=new W(n),r=new W(r);let i=t/2,a=e/t,o=e/2,s=[],c=[];for(let e=0,l=0,u=-o;e<=t;e++,u+=a){s.push(-o,0,u,o,0,u),s.push(u,0,-o,u,0,o);let t=e===i?n:r;t.toArray(c,l),l+=3,t.toArray(c,l),l+=3,t.toArray(c,l),l+=3,t.toArray(c,l),l+=3}let l=new q;l.setAttribute(`position`,new K(s,3)),l.setAttribute(`color`,new K(c,3));let u=new Qu({vertexColors:!0,toneMapped:!1});super(l,u),this.type=`GridHelper`}dispose(){this.geometry.dispose(),this.material.dispose()}},Lm=class extends ld{constructor(e=10,t=16,n=8,r=64,i=4473924,a=8947848){i=new W(i),a=new W(a);let o=[],s=[];if(t>1)for(let n=0;n<t;n++){let r=n/t*(Math.PI*2),c=Math.sin(r)*e,l=Math.cos(r)*e;o.push(0,0,0),o.push(c,0,l);let u=n&1?i:a;s.push(u.r,u.g,u.b),s.push(u.r,u.g,u.b)}for(let t=0;t<n;t++){let c=t&1?i:a,l=e-e/n*t;for(let e=0;e<r;e++){let t=e/r*(Math.PI*2),n=Math.sin(t)*l,i=Math.cos(t)*l;o.push(n,0,i),s.push(c.r,c.g,c.b),t=(e+1)/r*(Math.PI*2),n=Math.sin(t)*l,i=Math.cos(t)*l,o.push(n,0,i),s.push(c.r,c.g,c.b)}}let c=new q;c.setAttribute(`position`,new K(o,3)),c.setAttribute(`color`,new K(s,3));let l=new Qu({vertexColors:!0,toneMapped:!1});super(c,l),this.type=`PolarGridHelper`}dispose(){this.geometry.dispose(),this.material.dispose()}},Rm=new H,zm=new H,Bm=new H,Vm=class extends ps{constructor(e,t,n){super(),this.light=e,this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.color=n,this.type=`DirectionalLightHelper`,t===void 0&&(t=1);let r=new q;r.setAttribute(`position`,new K([-t,t,0,t,t,0,t,-t,0,-t,-t,0,-t,t,0],3));let i=new Qu({fog:!1,toneMapped:!1});this.lightPlane=new od(r,i),this.add(this.lightPlane),r=new q,r.setAttribute(`position`,new K([0,0,0,0,0,1],3)),this.targetLine=new od(r,i),this.add(this.targetLine),this.update()}dispose(){this.lightPlane.geometry.dispose(),this.lightPlane.material.dispose(),this.targetLine.geometry.dispose(),this.targetLine.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1),Rm.setFromMatrixPosition(this.light.matrixWorld),zm.setFromMatrixPosition(this.light.target.matrixWorld),Bm.subVectors(zm,Rm),this.lightPlane.lookAt(zm),this.color===void 0?(this.lightPlane.material.color.copy(this.light.color),this.targetLine.material.color.copy(this.light.color)):(this.lightPlane.material.color.set(this.color),this.targetLine.material.color.set(this.color)),this.targetLine.lookAt(zm),this.targetLine.scale.z=Bm.length()}},Hm=new H,Um=new _c,Wm=class extends ld{constructor(e){let t=new q,n=new Qu({color:16777215,vertexColors:!0,toneMapped:!1}),r=[],i=[],a={};o(`n1`,`n2`),o(`n2`,`n4`),o(`n4`,`n3`),o(`n3`,`n1`),o(`f1`,`f2`),o(`f2`,`f4`),o(`f4`,`f3`),o(`f3`,`f1`),o(`n1`,`f1`),o(`n2`,`f2`),o(`n3`,`f3`),o(`n4`,`f4`),o(`p`,`n1`),o(`p`,`n2`),o(`p`,`n3`),o(`p`,`n4`),o(`u1`,`u2`),o(`u2`,`u3`),o(`u3`,`u1`),o(`c`,`t`),o(`p`,`c`),o(`cn1`,`cn2`),o(`cn3`,`cn4`),o(`cf1`,`cf2`),o(`cf3`,`cf4`);function o(e,t){s(e),s(t)}function s(e){r.push(0,0,0),i.push(0,0,0),a[e]===void 0&&(a[e]=[]),a[e].push(r.length/3-1)}t.setAttribute(`position`,new K(r,3)),t.setAttribute(`color`,new K(i,3)),super(t,n),this.type=`CameraHelper`,this.camera=e,this.camera.updateProjectionMatrix&&this.camera.updateProjectionMatrix(),this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.pointMap=a,this.update();let c=new W(16755200),l=new W(16711680),u=new W(43775),d=new W(16777215),f=new W(3355443);this.setColors(c,l,u,d,f)}setColors(e,t,n,r,i){let a=this.geometry.getAttribute(`color`);a.setXYZ(0,e.r,e.g,e.b),a.setXYZ(1,e.r,e.g,e.b),a.setXYZ(2,e.r,e.g,e.b),a.setXYZ(3,e.r,e.g,e.b),a.setXYZ(4,e.r,e.g,e.b),a.setXYZ(5,e.r,e.g,e.b),a.setXYZ(6,e.r,e.g,e.b),a.setXYZ(7,e.r,e.g,e.b),a.setXYZ(8,e.r,e.g,e.b),a.setXYZ(9,e.r,e.g,e.b),a.setXYZ(10,e.r,e.g,e.b),a.setXYZ(11,e.r,e.g,e.b),a.setXYZ(12,e.r,e.g,e.b),a.setXYZ(13,e.r,e.g,e.b),a.setXYZ(14,e.r,e.g,e.b),a.setXYZ(15,e.r,e.g,e.b),a.setXYZ(16,e.r,e.g,e.b),a.setXYZ(17,e.r,e.g,e.b),a.setXYZ(18,e.r,e.g,e.b),a.setXYZ(19,e.r,e.g,e.b),a.setXYZ(20,e.r,e.g,e.b),a.setXYZ(21,e.r,e.g,e.b),a.setXYZ(22,e.r,e.g,e.b),a.setXYZ(23,e.r,e.g,e.b),a.setXYZ(24,t.r,t.g,t.b),a.setXYZ(25,t.r,t.g,t.b),a.setXYZ(26,t.r,t.g,t.b),a.setXYZ(27,t.r,t.g,t.b),a.setXYZ(28,t.r,t.g,t.b),a.setXYZ(29,t.r,t.g,t.b),a.setXYZ(30,t.r,t.g,t.b),a.setXYZ(31,t.r,t.g,t.b),a.setXYZ(32,n.r,n.g,n.b),a.setXYZ(33,n.r,n.g,n.b),a.setXYZ(34,n.r,n.g,n.b),a.setXYZ(35,n.r,n.g,n.b),a.setXYZ(36,n.r,n.g,n.b),a.setXYZ(37,n.r,n.g,n.b),a.setXYZ(38,r.r,r.g,r.b),a.setXYZ(39,r.r,r.g,r.b),a.setXYZ(40,i.r,i.g,i.b),a.setXYZ(41,i.r,i.g,i.b),a.setXYZ(42,i.r,i.g,i.b),a.setXYZ(43,i.r,i.g,i.b),a.setXYZ(44,i.r,i.g,i.b),a.setXYZ(45,i.r,i.g,i.b),a.setXYZ(46,i.r,i.g,i.b),a.setXYZ(47,i.r,i.g,i.b),a.setXYZ(48,i.r,i.g,i.b),a.setXYZ(49,i.r,i.g,i.b),a.needsUpdate=!0}update(){let e=this.geometry,t=this.pointMap;Um.projectionMatrixInverse.copy(this.camera.projectionMatrixInverse),jr(`c`,t,e,Um,0,0,-1),jr(`t`,t,e,Um,0,0,1),jr(`n1`,t,e,Um,-1,-1,-1),jr(`n2`,t,e,Um,1,-1,-1),jr(`n3`,t,e,Um,-1,1,-1),jr(`n4`,t,e,Um,1,1,-1),jr(`f1`,t,e,Um,-1,-1,1),jr(`f2`,t,e,Um,1,-1,1),jr(`f3`,t,e,Um,-1,1,1),jr(`f4`,t,e,Um,1,1,1),jr(`u1`,t,e,Um,.7,1.1,-1),jr(`u2`,t,e,Um,-.7,1.1,-1),jr(`u3`,t,e,Um,0,2,-1),jr(`cf1`,t,e,Um,-1,0,1),jr(`cf2`,t,e,Um,1,0,1),jr(`cf3`,t,e,Um,0,-1,1),jr(`cf4`,t,e,Um,0,1,1),jr(`cn1`,t,e,Um,-1,0,-1),jr(`cn2`,t,e,Um,1,0,-1),jr(`cn3`,t,e,Um,0,-1,-1),jr(`cn4`,t,e,Um,0,1,-1),e.getAttribute(`position`).needsUpdate=!0}dispose(){this.geometry.dispose(),this.material.dispose()}},Gm=new ho,Km=class extends ld{constructor(e,t=16776960){let n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),r=new Float32Array(24),i=new q;i.setIndex(new G(n,1)),i.setAttribute(`position`,new G(r,3)),super(i,new Qu({color:t,toneMapped:!1})),this.object=e,this.type=`BoxHelper`,this.matrixAutoUpdate=!1,this.update()}update(e){if(e!==void 0&&console.warn(`THREE.BoxHelper: .update() has no longer arguments.`),this.object!==void 0&&Gm.setFromObject(this.object),Gm.isEmpty())return;let t=Gm.min,n=Gm.max,r=this.geometry.attributes.position,i=r.array;i[0]=n.x,i[1]=n.y,i[2]=n.z,i[3]=t.x,i[4]=n.y,i[5]=n.z,i[6]=t.x,i[7]=t.y,i[8]=n.z,i[9]=n.x,i[10]=t.y,i[11]=n.z,i[12]=n.x,i[13]=n.y,i[14]=t.z,i[15]=t.x,i[16]=n.y,i[17]=t.z,i[18]=t.x,i[19]=t.y,i[20]=t.z,i[21]=n.x,i[22]=t.y,i[23]=t.z,r.needsUpdate=!0,this.geometry.computeBoundingSphere()}setFromObject(e){return this.object=e,this.update(),this}copy(e,t){return super.copy(e,t),this.object=e.object,this}dispose(){this.geometry.dispose(),this.material.dispose()}},qm=class extends ld{constructor(e,t=16776960){let n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),r=[1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1],i=new q;i.setIndex(new G(n,1)),i.setAttribute(`position`,new K(r,3)),super(i,new Qu({color:t,toneMapped:!1})),this.box=e,this.type=`Box3Helper`,this.geometry.computeBoundingSphere()}updateMatrixWorld(e){let t=this.box;t.isEmpty()||(t.getCenter(this.position),t.getSize(this.scale),this.scale.multiplyScalar(.5),super.updateMatrixWorld(e))}dispose(){this.geometry.dispose(),this.material.dispose()}},Jm=class extends od{constructor(e,t=1,n=16776960){let r=n,i=[1,-1,0,-1,1,0,-1,-1,0,1,1,0,-1,1,0,-1,-1,0,1,-1,0,1,1,0],a=new q;a.setAttribute(`position`,new K(i,3)),a.computeBoundingSphere(),super(a,new Qu({color:r,toneMapped:!1})),this.type=`PlaneHelper`,this.plane=e,this.size=t;let o=[1,1,0,-1,1,0,-1,-1,0,1,1,0,-1,-1,0,1,-1,0],s=new q;s.setAttribute(`position`,new K(o,3)),s.computeBoundingSphere(),this.add(new dc(s,new Ps({color:r,opacity:.2,transparent:!0,depthWrite:!1,toneMapped:!1})))}updateMatrixWorld(e){this.position.set(0,0,0),this.scale.set(.5*this.size,.5*this.size,1),this.lookAt(this.plane.normal),this.translateZ(-this.plane.constant),super.updateMatrixWorld(e)}dispose(){this.geometry.dispose(),this.material.dispose(),this.children[0].geometry.dispose(),this.children[0].material.dispose()}},Ym=new H,Qm=class extends ps{constructor(e=new H(0,0,1),t=new H(0,0,0),n=1,r=16776960,i=n*.2,a=i*.2){super(),this.type=`ArrowHelper`,Xm===void 0&&(Xm=new q,Xm.setAttribute(`position`,new K([0,0,0,0,1,0],3)),Zm=new Wd(0,.5,1,5,1),Zm.translate(0,-.5,0)),this.position.copy(t),this.line=new od(Xm,new Qu({color:r,toneMapped:!1})),this.line.matrixAutoUpdate=!1,this.add(this.line),this.cone=new dc(Zm,new Ps({color:r,toneMapped:!1})),this.cone.matrixAutoUpdate=!1,this.add(this.cone),this.setDirection(e),this.setLength(n,i,a)}setDirection(e){if(e.y>.99999)this.quaternion.set(0,0,0,1);else if(e.y<-.99999)this.quaternion.set(1,0,0,0);else{Ym.set(e.z,0,-e.x).normalize();let t=Math.acos(e.y);this.quaternion.setFromAxisAngle(Ym,t)}}setLength(e,t=e*.2,n=t*.2){this.line.scale.set(1,Math.max(1e-4,e-t),1),this.line.updateMatrix(),this.cone.scale.set(n,t,n),this.cone.position.y=e,this.cone.updateMatrix()}setColor(e){this.line.material.color.set(e),this.cone.material.color.set(e)}copy(e){return super.copy(e,!1),this.line.copy(e.line),this.cone.copy(e.cone),this}dispose(){this.line.geometry.dispose(),this.line.material.dispose(),this.cone.geometry.dispose(),this.cone.material.dispose()}},$m=class extends ld{constructor(e=1){let t=[0,0,0,e,0,0,0,0,0,0,e,0,0,0,0,0,0,e],n=[1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],r=new q;r.setAttribute(`position`,new K(t,3)),r.setAttribute(`color`,new K(n,3));let i=new Qu({vertexColors:!0,toneMapped:!1});super(r,i),this.type=`AxesHelper`}setColors(e,t,n){let r=new W,i=this.geometry.attributes.color.array;return r.set(e),r.toArray(i,0),r.toArray(i,3),r.set(t),r.toArray(i,6),r.toArray(i,9),r.set(n),r.toArray(i,12),r.toArray(i,15),this.geometry.attributes.color.needsUpdate=!0,this}dispose(){this.geometry.dispose(),this.material.dispose()}},eh=class{constructor(){this.type=`ShapePath`,this.color=new W,this.subPaths=[],this.currentPath=null}moveTo(e,t){return this.currentPath=new Bd,this.subPaths.push(this.currentPath),this.currentPath.moveTo(e,t),this}lineTo(e,t){return this.currentPath.lineTo(e,t),this}quadraticCurveTo(e,t,n,r){return this.currentPath.quadraticCurveTo(e,t,n,r),this}bezierCurveTo(e,t,n,r,i,a){return this.currentPath.bezierCurveTo(e,t,n,r,i,a),this}splineThru(e){return this.currentPath.splineThru(e),this}toShapes(e){function t(e){let t=[];for(let n=0,r=e.length;n<r;n++){let r=e[n],i=new $d;i.curves=r.curves,t.push(i)}return t}function n(e,t){let n=t.length,r=!1;for(let i=n-1,a=0;a<n;i=a++){let n=t[i],o=t[a],s=o.x-n.x,c=o.y-n.y;if(Math.abs(c)>2**-52){if(c<0&&(n=t[a],s=-s,o=t[i],c=-c),e.y<n.y||e.y>o.y)continue;if(e.y===n.y){if(e.x===n.x)return!0}else{let t=c*(e.x-n.x)-s*(e.y-n.y);if(t===0)return!0;if(t<0)continue;r=!r}}else{if(e.y!==n.y)continue;if(o.x<=e.x&&e.x<=n.x||n.x<=e.x&&e.x<=o.x)return!0}}return r}let r=tf.isClockWise,i=this.subPaths;if(i.length===0)return[];let a,o,s,c=[];if(i.length===1)return o=i[0],s=new $d,s.curves=o.curves,c.push(s),c;let l=!r(i[0].getPoints());l=e?!l:l;let u=[],d=[],f=[],p=0,m;d[p]=void 0,f[p]=[];for(let t=0,n=i.length;t<n;t++)o=i[t],m=o.getPoints(),a=r(m),a=e?!a:a,a?(!l&&d[p]&&p++,d[p]={s:new $d,p:m},d[p].s.curves=o.curves,l&&p++,f[p]=[]):f[p].push({h:o,p:m[0]});if(!d[0])return t(i);if(d.length>1){let e=!1,t=0;for(let e=0,t=d.length;e<t;e++)u[e]=[];for(let r=0,i=d.length;r<i;r++){let i=f[r];for(let a=0;a<i.length;a++){let o=i[a],s=!0;for(let i=0;i<d.length;i++)n(o.p,d[i].p)&&(r!==i&&t++,s?(s=!1,u[i].push(o)):e=!0);s&&u[r].push(o)}}t>0&&e===!1&&(f=u)}let h;for(let e=0,t=d.length;e<t;e++){s=d[e].s,c.push(s),h=f[e];for(let e=0,t=h.length;e<t;e++)s.holes.push(h[e].h)}return c}},th=class extends Ra{constructor(e,t=null){super(),this.object=e,this.domElement=t,this.enabled=!0,this.state=-1,this.keys={},this.mouseButtons={LEFT:null,MIDDLE:null,RIGHT:null},this.touches={ONE:null,TWO:null}}connect(){}disconnect(){}dispose(){}update(){}},nh=class extends oo{constructor(e=1,t=1,n=1,r={}){console.warn(`THREE.WebGLMultipleRenderTargets has been deprecated and will be removed in r172. Use THREE.WebGLRenderTarget and set the "count" parameter to enable MRT.`),super(e,t,{...r,count:n}),this.isWebGLMultipleRenderTargets=!0}get texture(){return this.textures}},typeof __THREE_DEVTOOLS__<`u`&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(`register`,{detail:{revision:`169`}})),typeof window<`u`&&(window.__THREE__?console.warn(`WARNING: Multiple instances of Three.js being imported.`):window.__THREE__=`169`)}));rh();function ih(e){"@babel/helpers - typeof";return ih=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},ih(e)}function ah(e,t){if(ih(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(ih(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function oh(e){var t=ah(e,`string`);return ih(t)==`symbol`?t:t+``}function X(e,t,n){return(t=oh(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var sh=class{constructor(e,t=0,n){X(this,`buffer`,void 0),X(this,`base`,void 0),X(this,`view`,void 0),X(this,`offset`,void 0),X(this,`_decoder`,new TextDecoder(`utf-8`)),this.buffer=e,this.base=t,this.view=new DataView(e,t,n===void 0?e.byteLength-t:n),this.offset=0}get remaining(){return this.view.byteLength-this.offset}u8(){let e=this.view.getUint8(this.offset);return this.offset+=1,e}u16(){let e=this.view.getUint16(this.offset,!0);return this.offset+=2,e}u32(){let e=this.view.getUint32(this.offset,!0);return this.offset+=4,e}i32(){let e=this.view.getInt32(this.offset,!0);return this.offset+=4,e}f32(){let e=this.view.getFloat32(this.offset,!0);return this.offset+=4,e}f64(){let e=this.view.getFloat64(this.offset,!0);return this.offset+=8,e}bytes(e){let t=new Uint8Array(this.buffer,this.base+this.offset,e);return this.offset+=e,t}bytesCopy(e){let t=new Uint8Array(this.buffer,this.base+this.offset,e);return this.offset+=e,t.slice()}string(){let e=this.u32(),t=new Uint8Array(this.buffer,this.base+this.offset,e);return this.offset+=e,this._decoder.decode(t)}skip(e){this.offset+=e}align4(e=0){let t=(this.offset-e)%4;t!==0&&this.skip(4-t)}vec3f64(){return{x:this.f64(),y:this.f64(),z:this.f64()}}boundingBox(){return{center:this.vec3f64(),xExtent:this.vec3f64(),yExtent:this.vec3f64(),zExtent:this.vec3f64()}}},ch=r(((e,t)=>{t.exports={}})),lh=i({default:()=>dh});function uh(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}function dh(){return mh||(mh=fh({wasmBinary:uh(ph)})),mh}var Z,fh,ph,mh,hh=n((()=>{Z=Z||{},Z.scope={},Z.ASSUME_ES2020=!1,Z.ASSUME_ES6=Z.ASSUME_ES2020,Z.ASSUME_ES5=Z.ASSUME_ES6,Z.ASSUME_NO_NATIVE_MAP=!1,Z.ASSUME_NO_NATIVE_SET=!1,Z.ISOLATE_POLYFILLS=!1,Z.FORCE_POLYFILL_PROMISE=!1,Z.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION=!1,Z.INSTRUMENT_ASYNC_CONTEXT=!0,Z.objectCreate=Z.ASSUME_ES5||typeof Object.create==`function`?Object.create:function(e){var t=function(){};return t.prototype=e,new t},Z.defineProperty=Z.ASSUME_ES5||typeof Object.defineProperties==`function`?Object.defineProperty:function(e,t,n){return e==Array.prototype||e==Object.prototype||(e[t]=n.value),e},Z.getGlobal=function(e){e=[typeof globalThis==`object`&&globalThis,e,typeof window==`object`&&window,typeof self==`object`&&self,typeof global==`object`&&global];for(var t=0;t<e.length;++t){var n=e[t];if(n&&n.Math==Math)return n}throw Error(`Cannot find global object`)},Z.global=Z.ASSUME_ES2020?globalThis:Z.getGlobal(void 0),Z.IS_SYMBOL_NATIVE=typeof Symbol==`function`&&typeof Symbol(`x`)==`symbol`,Z.TRUST_ES6_POLYFILLS=!Z.ISOLATE_POLYFILLS||Z.IS_SYMBOL_NATIVE,Z.polyfills={},Z.propertyToPolyfillSymbol={},Z.POLYFILL_PREFIX=`$jscp$`,Z.TYPED_ARRAY_CLASSES=function(){var e=`Int8 Uint8 Uint8Clamped Int16 Uint16 Int32 Uint32 Float32 Float64`.split(` `);return Z.global.BigInt64Array&&(e.push(`BigInt64`),e.push(`BigUint64`)),e}(),Z.polyfillTypedArrayMethod=function(e,t,n,r){if(t)for(var i=0;i<Z.TYPED_ARRAY_CLASSES.length;i++){var a=Z.TYPED_ARRAY_CLASSES[i]+`Array.prototype.`+e;Z.ISOLATE_POLYFILLS?Z.polyfillIsolated(a,t,n,r):Z.polyfillUnisolated(a,t,n,r)}},Z.polyfill=function(e,t,n,r){t&&(Z.ISOLATE_POLYFILLS?Z.polyfillIsolated(e,t,n,r):Z.polyfillUnisolated(e,t,n,r))},Z.polyfillUnisolated=function(e,t,n,r){for(n=Z.global,e=e.split(`.`),r=0;r<e.length-1;r++){var i=e[r];if(!(i in n))return;n=n[i]}e=e[e.length-1],r=n[e],t=t(r),t!=r&&t!=null&&Z.defineProperty(n,e,{configurable:!0,writable:!0,value:t})},Z.polyfillIsolated=function(e,t,n,r){var i=e.split(`.`);e=i.length===1,r=i[0],r=!e&&r in Z.polyfills?Z.polyfills:Z.global;for(var a=0;a<i.length-1;a++){var o=i[a];if(!(o in r))return;r=r[o]}i=i[i.length-1],n=Z.IS_SYMBOL_NATIVE&&n===`es6`?r[i]:null,t=t(n),t!=null&&(e?Z.defineProperty(Z.polyfills,i,{configurable:!0,writable:!0,value:t}):t!==n&&(Z.propertyToPolyfillSymbol[i]===void 0&&(n=Math.random()*1e9>>>0,Z.propertyToPolyfillSymbol[i]=Z.IS_SYMBOL_NATIVE?Z.global.Symbol(i):Z.POLYFILL_PREFIX+n+`$`+i),Z.defineProperty(r,Z.propertyToPolyfillSymbol[i],{configurable:!0,writable:!0,value:t})))},Z.getConstructImplementation=function(){function e(){function e(){}return new e,Reflect.construct(e,[],function(){}),new e instanceof e}if(Z.TRUST_ES6_POLYFILLS&&typeof Reflect<`u`&&Reflect.construct){if(e())return Reflect.construct;var t=Reflect.construct;return function(e,n,r){return e=t(e,n),r&&Reflect.setPrototypeOf(e,r.prototype),e}}return function(e,t,n){return n===void 0&&(n=e),n=Z.objectCreate(n.prototype||Object.prototype),Function.prototype.apply.call(e,n,t)||n}},Z.construct={valueOf:Z.getConstructImplementation}.valueOf(),Z.underscoreProtoCanBeSet=function(){var e={a:!0},t={};try{return t.__proto__=e,t.a}catch{}return!1},Z.setPrototypeOf=Z.ASSUME_ES6||Z.TRUST_ES6_POLYFILLS&&typeof Object.setPrototypeOf==`function`?Object.setPrototypeOf:Z.underscoreProtoCanBeSet()?function(e,t){if(e.__proto__=t,e.__proto__!==t)throw TypeError(e+` is not extensible`);return e}:null,Z.inherits=function(e,t){if(e.prototype=Z.objectCreate(t.prototype),e.prototype.constructor=e,Z.ASSUME_ES6||Z.setPrototypeOf){var n=Z.setPrototypeOf;n(e,t)}else for(n in t)if(n!=`prototype`){if(Object.defineProperties){var r=Object.getOwnPropertyDescriptor(t,n);r&&Object.defineProperty(e,n,r)}else e[n]=t[n]}e.superClass_=t.prototype},Z.arrayIteratorImpl=function(e){var t=0;return function(){return t<e.length?{done:!1,value:e[t++]}:{done:!0}}},Z.arrayIterator=function(e){return{next:Z.arrayIteratorImpl(e)}},Z.makeIterator=function(e){var t=typeof Symbol<`u`&&Symbol.iterator&&e[Symbol.iterator];if(t)return t.call(e);if(typeof e.length==`number`)return Z.arrayIterator(e);throw Error(String(e)+` is not an iterable or ArrayLike`)},Z.arrayFromIterator=function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n},Z.arrayFromIterable=function(e){return e instanceof Array?e:Z.arrayFromIterator(Z.makeIterator(e))},Z.createTemplateTagFirstArg=function(e){return Z.createTemplateTagFirstArgWithRaw(e,e)},Z.createTemplateTagFirstArgWithRaw=function(e,t){return e.raw=t,Object.freeze&&(Object.freeze(e),Object.freeze(t)),e},Z.generator={},Z.generator.ensureIteratorResultIsObject_=function(e){if(!(e instanceof Object))throw TypeError(`Iterator result `+e+` is not an object`)},Z.generator.Context=function(){this.isRunning_=!1,this.yieldAllIterator_=null,this.yieldResult=void 0,this.nextAddress=1,this.finallyAddress_=this.catchAddress_=0,this.finallyContexts_=this.abruptCompletion_=null},Z.generator.Context.prototype.start_=function(){if(this.isRunning_)throw TypeError(`Generator is already running`);this.isRunning_=!0},Z.generator.Context.prototype.stop_=function(){this.isRunning_=!1},Z.generator.Context.prototype.jumpToErrorHandler_=function(){this.nextAddress=this.catchAddress_||this.finallyAddress_},Z.generator.Context.prototype.next_=function(e){this.yieldResult=e},Z.generator.Context.prototype.throw_=function(e){this.abruptCompletion_={exception:e,isException:!0},this.jumpToErrorHandler_()},Z.generator.Context.prototype.getNextAddressJsc=function(){return this.nextAddress},Z.generator.Context.prototype.getNextAddressJsc=function(){return this.nextAddress},Z.generator.Context.prototype.getYieldResultJsc=function(){return this.yieldResult},Z.generator.Context.prototype.getYieldResultJsc=function(){return this.yieldResult},Z.generator.Context.prototype.return=function(e){this.abruptCompletion_={return:e},this.nextAddress=this.finallyAddress_},Z.generator.Context.prototype.return=Z.generator.Context.prototype.return,Z.generator.Context.prototype.jumpThroughFinallyBlocks=function(e){this.abruptCompletion_={jumpTo:e},this.nextAddress=this.finallyAddress_},Z.generator.Context.prototype.jumpThroughFinallyBlocks=Z.generator.Context.prototype.jumpThroughFinallyBlocks,Z.generator.Context.prototype.yield=function(e,t){return this.nextAddress=t,{value:e}},Z.generator.Context.prototype.yield=Z.generator.Context.prototype.yield,Z.generator.Context.prototype.yieldAll=function(e,t){e=Z.makeIterator(e);var n=e.next();if(Z.generator.ensureIteratorResultIsObject_(n),n.done)this.yieldResult=n.value,this.nextAddress=t;else return this.yieldAllIterator_=e,this.yield(n.value,t)},Z.generator.Context.prototype.yieldAll=Z.generator.Context.prototype.yieldAll,Z.generator.Context.prototype.jumpTo=function(e){this.nextAddress=e},Z.generator.Context.prototype.jumpTo=Z.generator.Context.prototype.jumpTo,Z.generator.Context.prototype.jumpToEnd=function(){this.nextAddress=0},Z.generator.Context.prototype.jumpToEnd=Z.generator.Context.prototype.jumpToEnd,Z.generator.Context.prototype.setCatchFinallyBlocks=function(e,t){this.catchAddress_=e,t!=null&&(this.finallyAddress_=t)},Z.generator.Context.prototype.setCatchFinallyBlocks=Z.generator.Context.prototype.setCatchFinallyBlocks,Z.generator.Context.prototype.setFinallyBlock=function(e){this.catchAddress_=0,this.finallyAddress_=e||0},Z.generator.Context.prototype.setFinallyBlock=Z.generator.Context.prototype.setFinallyBlock,Z.generator.Context.prototype.leaveTryBlock=function(e,t){this.nextAddress=e,this.catchAddress_=t||0},Z.generator.Context.prototype.leaveTryBlock=Z.generator.Context.prototype.leaveTryBlock,Z.generator.Context.prototype.enterCatchBlock=function(e){return this.catchAddress_=e||0,e=this.abruptCompletion_.exception,this.abruptCompletion_=null,e},Z.generator.Context.prototype.enterCatchBlock=Z.generator.Context.prototype.enterCatchBlock,Z.generator.Context.prototype.enterFinallyBlock=function(e,t,n){n?this.finallyContexts_[n]=this.abruptCompletion_:this.finallyContexts_=[this.abruptCompletion_],this.catchAddress_=e||0,this.finallyAddress_=t||0},Z.generator.Context.prototype.enterFinallyBlock=Z.generator.Context.prototype.enterFinallyBlock,Z.generator.Context.prototype.leaveFinallyBlock=function(e,t){if(t=this.finallyContexts_.splice(t||0)[0],t=this.abruptCompletion_=this.abruptCompletion_||t){if(t.isException)return this.jumpToErrorHandler_();t.jumpTo!=null&&this.finallyAddress_<t.jumpTo?(this.nextAddress=t.jumpTo,this.abruptCompletion_=null):this.nextAddress=this.finallyAddress_}else this.nextAddress=e},Z.generator.Context.prototype.leaveFinallyBlock=Z.generator.Context.prototype.leaveFinallyBlock,Z.generator.Context.prototype.forIn=function(e){return new Z.generator.Context.PropertyIterator(e)},Z.generator.Context.prototype.forIn=Z.generator.Context.prototype.forIn,Z.generator.Context.PropertyIterator=function(e){for(var t in this.object_=e,this.properties_=[],e)this.properties_.push(t);this.properties_.reverse()},Z.generator.Context.PropertyIterator.prototype.getNext=function(){for(;this.properties_.length>0;){var e=this.properties_.pop();if(e in this.object_)return e}return null},Z.generator.Context.PropertyIterator.prototype.getNext=Z.generator.Context.PropertyIterator.prototype.getNext,Z.generator.Engine_=function(e){this.context_=new Z.generator.Context,this.program_=e},Z.generator.Engine_.prototype.next_=function(e){return this.context_.start_(),this.context_.yieldAllIterator_?this.yieldAllStep_(this.context_.yieldAllIterator_.next,e,this.context_.next_):(this.context_.next_(e),this.nextStep_())},Z.generator.Engine_.prototype.return_=function(e){this.context_.start_();var t=this.context_.yieldAllIterator_;return t?this.yieldAllStep_(`return`in t?t.return:function(e){return{value:e,done:!0}},e,this.context_.return):(this.context_.return(e),this.nextStep_())},Z.generator.Engine_.prototype.throw_=function(e){return this.context_.start_(),this.context_.yieldAllIterator_?this.yieldAllStep_(this.context_.yieldAllIterator_.throw,e,this.context_.next_):(this.context_.throw_(e),this.nextStep_())},Z.generator.Engine_.prototype.yieldAllStep_=function(e,t,n){try{var r=e.call(this.context_.yieldAllIterator_,t);if(Z.generator.ensureIteratorResultIsObject_(r),!r.done)return this.context_.stop_(),r;var i=r.value}catch(e){return this.context_.yieldAllIterator_=null,this.context_.throw_(e),this.nextStep_()}return this.context_.yieldAllIterator_=null,n.call(this.context_,i),this.nextStep_()},Z.generator.Engine_.prototype.nextStep_=function(){for(;this.context_.nextAddress;)try{var e=this.program_(this.context_);if(e)return this.context_.stop_(),{value:e.value,done:!1}}catch(e){this.context_.yieldResult=void 0,this.context_.throw_(e)}if(this.context_.stop_(),this.context_.abruptCompletion_){if(e=this.context_.abruptCompletion_,this.context_.abruptCompletion_=null,e.isException)throw e.exception;return{value:e.return,done:!0}}return{value:void 0,done:!0}},Z.generator.Generator_=function(e){this.next=function(t){return e.next_(t)},this.throw=function(t){return e.throw_(t)},this.return=function(t){return e.return_(t)},this[Symbol.iterator]=function(){return this}},Z.generator.createGenerator=function(e,t){return t=new Z.generator.Generator_(new Z.generator.Engine_(t)),Z.setPrototypeOf&&e.prototype&&Z.setPrototypeOf(t,e.prototype),t},Z.asyncExecutePromiseGenerator=function(e){function t(t){return e.next(t)}function n(t){return e.throw(t)}return new Promise(function(r,i){function a(e){e.done?r(e.value):Promise.resolve(e.value).then(t,n).then(a,i)}a(e.next())})},Z.asyncExecutePromiseGeneratorFunction=function(e){return Z.asyncExecutePromiseGenerator(e())},Z.asyncExecutePromiseGeneratorProgram=function(e){return Z.asyncExecutePromiseGenerator(new Z.generator.Generator_(new Z.generator.Engine_(e)))},Z.polyfill(`globalThis`,function(e){return e||Z.global},`es_2020`,`es3`),Z.polyfill(`Reflect`,function(e){return e||{}},`es6`,`es3`),Z.polyfill(`Reflect.construct`,function(e){return Z.construct},`es6`,`es3`),Z.polyfill(`Reflect.setPrototypeOf`,function(e){if(e)return e;if(Z.setPrototypeOf){var t=Z.setPrototypeOf;return function(e,n){try{return t(e,n),!0}catch{return!1}}}return null},`es6`,`es5`),Z.initSymbol=function(){},Z.polyfill(`Symbol`,function(e){if(e)return e;var t=function(e,t){this.$jscomp$symbol$id_=e,Z.defineProperty(this,`description`,{configurable:!0,writable:!0,value:t})};t.prototype.toString=function(){return this.$jscomp$symbol$id_};var n=`jscomp_symbol_`+(Math.random()*1e9>>>0)+`_`,r=0,i=function(e){if(this instanceof i)throw TypeError(`Symbol is not a constructor`);return new t(n+(e||``)+`_`+r++,e)};return i},`es6`,`es3`),Z.polyfill(`Symbol.iterator`,function(e){return e||(e=Symbol(`Symbol.iterator`),Z.defineProperty(Array.prototype,e,{configurable:!0,writable:!0,value:function(){return Z.iteratorPrototype(Z.arrayIteratorImpl(this))}}),e)},`es6`,`es3`),Z.iteratorPrototype=function(e){return e={next:e},e[Symbol.iterator]=function(){return this},e},Z.polyfill(`Promise`,function(e){function t(){this.batch_=null}function n(e){return e instanceof i?e:new i(function(t,n){t(e)})}if(e&&(!(Z.FORCE_POLYFILL_PROMISE||Z.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION&&Z.global.PromiseRejectionEvent===void 0)||!Z.global.Promise||Z.global.Promise.toString().indexOf(`[native code]`)===-1))return e;t.prototype.asyncExecute=function(e){if(this.batch_==null){this.batch_=[];var t=this;this.asyncExecuteFunction(function(){t.executeBatch_()})}this.batch_.push(e)};var r=Z.global.setTimeout;t.prototype.asyncExecuteFunction=function(e){r(e,0)},t.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var e=this.batch_;this.batch_=[];for(var t=0;t<e.length;++t){var n=e[t];e[t]=null;try{n()}catch(e){this.asyncThrow_(e)}}}this.batch_=null},t.prototype.asyncThrow_=function(e){this.asyncExecuteFunction(function(){throw e})};var i=function(e){this.state_=0,this.result_=void 0,this.onSettledCallbacks_=[],this.isRejectionHandled_=!1;var t=this.createResolveAndReject_();try{e(t.resolve,t.reject)}catch(e){t.reject(e)}};i.prototype.createResolveAndReject_=function(){function e(e){return function(r){n||(n=!0,e.call(t,r))}}var t=this,n=!1;return{resolve:e(this.resolveTo_),reject:e(this.reject_)}},i.prototype.resolveTo_=function(e){if(e===this)this.reject_(TypeError(`A Promise cannot resolve to itself`));else if(e instanceof i)this.settleSameAsPromise_(e);else{a:switch(typeof e){case`object`:var t=e!=null;break a;case`function`:t=!0;break a;default:t=!1}t?this.resolveToNonPromiseObj_(e):this.fulfill_(e)}},i.prototype.resolveToNonPromiseObj_=function(e){var t=void 0;try{t=e.then}catch(e){this.reject_(e);return}typeof t==`function`?this.settleSameAsThenable_(t,e):this.fulfill_(e)},i.prototype.reject_=function(e){this.settle_(2,e)},i.prototype.fulfill_=function(e){this.settle_(1,e)},i.prototype.settle_=function(e,t){if(this.state_!=0)throw Error(`Cannot settle(`+e+`, `+t+`): Promise already settled in state`+this.state_);this.state_=e,this.result_=t,this.state_===2&&this.scheduleUnhandledRejectionCheck_(),this.executeOnSettledCallbacks_()},i.prototype.scheduleUnhandledRejectionCheck_=function(){var e=this;r(function(){if(e.notifyUnhandledRejection_()){var t=Z.global.console;t!==void 0&&t.error(e.result_)}},1)},i.prototype.notifyUnhandledRejection_=function(){if(this.isRejectionHandled_)return!1;var e=Z.global.CustomEvent,t=Z.global.Event,n=Z.global.dispatchEvent;return n===void 0||(typeof e==`function`?e=new e(`unhandledrejection`,{cancelable:!0}):typeof t==`function`?e=new t(`unhandledrejection`,{cancelable:!0}):(e=Z.global.document.createEvent(`CustomEvent`),e.initCustomEvent(`unhandledrejection`,!1,!0,e)),e.promise=this,e.reason=this.result_,n(e))},i.prototype.executeOnSettledCallbacks_=function(){if(this.onSettledCallbacks_!=null){for(var e=0;e<this.onSettledCallbacks_.length;++e)a.asyncExecute(this.onSettledCallbacks_[e]);this.onSettledCallbacks_=null}};var a=new t;return i.prototype.settleSameAsPromise_=function(e){var t=this.createResolveAndReject_();e.callWhenSettled_(t.resolve,t.reject)},i.prototype.settleSameAsThenable_=function(e,t){var n=this.createResolveAndReject_();try{e.call(t,n.resolve,n.reject)}catch(e){n.reject(e)}},i.prototype.then=function(e,t){function n(e,t){return typeof e==`function`?function(t){try{r(e(t))}catch(e){a(e)}}:t}var r,a,o=new i(function(e,t){r=e,a=t});return this.callWhenSettled_(n(e,r),n(t,a)),o},i.prototype.catch=function(e){return this.then(void 0,e)},i.prototype.callWhenSettled_=function(e,t){function n(){switch(r.state_){case 1:e(r.result_);break;case 2:t(r.result_);break;default:throw Error(`Unexpected state: `+r.state_)}}var r=this;this.onSettledCallbacks_==null?a.asyncExecute(n):this.onSettledCallbacks_.push(n),this.isRejectionHandled_=!0},i.resolve=n,i.reject=function(e){return new i(function(t,n){n(e)})},i.race=function(e){return new i(function(t,r){for(var i=Z.makeIterator(e),a=i.next();!a.done;a=i.next())n(a.value).callWhenSettled_(t,r)})},i.all=function(e){var t=Z.makeIterator(e),r=t.next();return r.done?n([]):new i(function(e,i){function a(t){return function(n){o[t]=n,s--,s==0&&e(o)}}var o=[],s=0;do o.push(void 0),s++,n(r.value).callWhenSettled_(a(o.length-1),i),r=t.next();while(!r.done)})},i},`es6`,`es3`),Z.checkStringArgs=function(e,t,n){if(e==null)throw TypeError(`The 'this' value for String.prototype.`+n+` must not be null or undefined`);if(t instanceof RegExp)throw TypeError(`First argument to String.prototype.`+n+` must not be a regular expression`);return e+``},Z.polyfill(`String.prototype.startsWith`,function(e){return e||function(e,t){var n=Z.checkStringArgs(this,e,`startsWith`);e+=``;var r=n.length,i=e.length;t=Math.max(0,Math.min(t|0,n.length));for(var a=0;a<i&&t<r;)if(n[t++]!=e[a++])return!1;return a>=i}},`es6`,`es3`),Z.polyfill(`String.prototype.codePointAt`,function(e){return e||function(e){var t=Z.checkStringArgs(this,null,`codePointAt`),n=t.length;if(e=Number(e)||0,e>=0&&e<n){e|=0;var r=t.charCodeAt(e);return r<55296||r>56319||e+1===n?r:(e=t.charCodeAt(e+1),e<56320||e>57343?r:(r-55296)*1024+e+9216)}}},`es6`,`es3`),fh=function(){var e=globalThis.document?.currentScript?.src;return function(t){function n(){this.ptr=Dn(),A(n)[this.ptr]=this}function r(){this.ptr=vn(),A(r)[this.ptr]=this}function i(){this.ptr=mn(),A(i)[this.ptr]=this}function a(){this.ptr=un(),A(a)[this.ptr]=this}function o(){this.ptr=on(),A(o)[this.ptr]=this}function s(){this.ptr=tn(),A(s)[this.ptr]=this}function c(){this.ptr=Zt(),A(c)[this.ptr]=this}function l(){this.ptr=qt(),A(l)[this.ptr]=this}function u(){this.ptr=Ut(),A(u)[this.ptr]=this}function d(){throw`cannot construct a Status, no constructor in IDL`}function f(){this.ptr=Lt(),A(f)[this.ptr]=this}function p(){this.ptr=Mt(),A(p)[this.ptr]=this}function m(){this.ptr=Ot(),A(m)[this.ptr]=this}function h(){this.ptr=wt(),A(h)[this.ptr]=this}function g(){this.ptr=vt(),A(g)[this.ptr]=this}function _(){this.ptr=st(),A(_)[this.ptr]=this}function v(){this.ptr=at(),A(v)[this.ptr]=this}function y(){this.ptr=nt(),A(y)[this.ptr]=this}function b(){this.ptr=$e(),A(b)[this.ptr]=this}function x(){throw`cannot construct a VoidPtr, no constructor in IDL`}function S(e){if(typeof e==`object`){for(var t=z.alloc(e,De),n=0;n<e.length;n++)De[t+n]=e[n];return t}return e}function C(e){if(typeof e==`string`){e=Je(e);for(var t=z.alloc(e,De),n=0;n<e.length;n++)De[t+n]=e[n];return t}return e}function w(e){return e.__class__}function T(e){return e.ptr}function E(e,t){return e.ptr===t.ptr}function D(e){if(!e.__destroy__)throw`Error: Cannot destroy object. (Did you create it yourself?)`;e.__destroy__(),delete A(e.__class__)[e.ptr]}function O(e,t){return k(e.ptr,t)}function k(e,t){var n=A(t),r=n[e];return r||(r=Object.create((t||j).prototype),r.ptr=e,n[e]=r)}function A(e){return(e||j).__cache__}function j(){}function ee(){var e,t,n;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(r){if(r.getNextAddressJsc()==1)return se(),e=N.setStatus,e?(e(`Running...`),r.yield(new Promise(function(e){return setTimeout(e,1)}),3)):r.jumpTo(2);if(r.getNextAddressJsc()!=2&&setTimeout(e,1,``),Se)return r.return();Ee=!0,Oe(Ye),Ir.g(),(n=(t=N).onRuntimeInitialized)==null||n.call(t),oe(),r.jumpToEnd()})}function te(){function e(e){return e=Ir=e.exports,N._webidl_free=e.h,N._free=e.i,N._webidl_malloc=e.j,N._malloc=e.k,Qe=N._emscripten_bind_VoidPtr___destroy___0=e.l,$e=N._emscripten_bind_DecoderBuffer_DecoderBuffer_0=e.m,et=N._emscripten_bind_DecoderBuffer_Init_2=e.n,tt=N._emscripten_bind_DecoderBuffer___destroy___0=e.o,nt=N._emscripten_bind_AttributeTransformData_AttributeTransformData_0=e.p,rt=N._emscripten_bind_AttributeTransformData_transform_type_0=e.q,it=N._emscripten_bind_AttributeTransformData___destroy___0=e.r,at=N._emscripten_bind_GeometryAttribute_GeometryAttribute_0=e.s,ot=N._emscripten_bind_GeometryAttribute___destroy___0=e.t,st=N._emscripten_bind_PointAttribute_PointAttribute_0=e.u,ct=N._emscripten_bind_PointAttribute_size_0=e.v,lt=N._emscripten_bind_PointAttribute_GetAttributeTransformData_0=e.w,ut=N._emscripten_bind_PointAttribute_attribute_type_0=e.x,dt=N._emscripten_bind_PointAttribute_data_type_0=e.y,ft=N._emscripten_bind_PointAttribute_num_components_0=e.z,pt=N._emscripten_bind_PointAttribute_normalized_0=e.A,mt=N._emscripten_bind_PointAttribute_byte_stride_0=e.B,ht=N._emscripten_bind_PointAttribute_byte_offset_0=e.C,gt=N._emscripten_bind_PointAttribute_unique_id_0=e.D,_t=N._emscripten_bind_PointAttribute___destroy___0=e.E,vt=N._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=e.F,yt=N._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=e.G,bt=N._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=e.H,xt=N._emscripten_bind_AttributeQuantizationTransform_min_value_1=e.I,St=N._emscripten_bind_AttributeQuantizationTransform_range_0=e.J,Ct=N._emscripten_bind_AttributeQuantizationTransform___destroy___0=e.K,wt=N._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=e.L,Tt=N._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=e.M,Et=N._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=e.N,Dt=N._emscripten_bind_AttributeOctahedronTransform___destroy___0=e.O,Ot=N._emscripten_bind_PointCloud_PointCloud_0=e.P,kt=N._emscripten_bind_PointCloud_num_attributes_0=e.Q,At=N._emscripten_bind_PointCloud_num_points_0=e.R,jt=N._emscripten_bind_PointCloud___destroy___0=e.S,Mt=N._emscripten_bind_Mesh_Mesh_0=e.T,Nt=N._emscripten_bind_Mesh_num_faces_0=e.U,Pt=N._emscripten_bind_Mesh_num_attributes_0=e.V,Ft=N._emscripten_bind_Mesh_num_points_0=e.W,It=N._emscripten_bind_Mesh___destroy___0=e.X,Lt=N._emscripten_bind_Metadata_Metadata_0=e.Y,Rt=N._emscripten_bind_Metadata___destroy___0=e.Z,zt=N._emscripten_bind_Status_code_0=e._,Bt=N._emscripten_bind_Status_ok_0=e.$,Vt=N._emscripten_bind_Status_error_msg_0=e.aa,Ht=N._emscripten_bind_Status___destroy___0=e.ba,Ut=N._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=e.ca,Wt=N._emscripten_bind_DracoFloat32Array_GetValue_1=e.da,Gt=N._emscripten_bind_DracoFloat32Array_size_0=e.ea,Kt=N._emscripten_bind_DracoFloat32Array___destroy___0=e.fa,qt=N._emscripten_bind_DracoInt8Array_DracoInt8Array_0=e.ga,Jt=N._emscripten_bind_DracoInt8Array_GetValue_1=e.ha,Yt=N._emscripten_bind_DracoInt8Array_size_0=e.ia,Xt=N._emscripten_bind_DracoInt8Array___destroy___0=e.ja,Zt=N._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=e.ka,Qt=N._emscripten_bind_DracoUInt8Array_GetValue_1=e.la,$t=N._emscripten_bind_DracoUInt8Array_size_0=e.ma,en=N._emscripten_bind_DracoUInt8Array___destroy___0=e.na,tn=N._emscripten_bind_DracoInt16Array_DracoInt16Array_0=e.oa,nn=N._emscripten_bind_DracoInt16Array_GetValue_1=e.pa,rn=N._emscripten_bind_DracoInt16Array_size_0=e.qa,an=N._emscripten_bind_DracoInt16Array___destroy___0=e.ra,on=N._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=e.sa,sn=N._emscripten_bind_DracoUInt16Array_GetValue_1=e.ta,cn=N._emscripten_bind_DracoUInt16Array_size_0=e.ua,ln=N._emscripten_bind_DracoUInt16Array___destroy___0=e.va,un=N._emscripten_bind_DracoInt32Array_DracoInt32Array_0=e.wa,dn=N._emscripten_bind_DracoInt32Array_GetValue_1=e.xa,fn=N._emscripten_bind_DracoInt32Array_size_0=e.ya,pn=N._emscripten_bind_DracoInt32Array___destroy___0=e.za,mn=N._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=e.Aa,hn=N._emscripten_bind_DracoUInt32Array_GetValue_1=e.Ba,gn=N._emscripten_bind_DracoUInt32Array_size_0=e.Ca,_n=N._emscripten_bind_DracoUInt32Array___destroy___0=e.Da,vn=N._emscripten_bind_MetadataQuerier_MetadataQuerier_0=e.Ea,yn=N._emscripten_bind_MetadataQuerier_HasEntry_2=e.Fa,bn=N._emscripten_bind_MetadataQuerier_GetIntEntry_2=e.Ga,xn=N._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=e.Ha,Sn=N._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=e.Ia,Cn=N._emscripten_bind_MetadataQuerier_GetStringEntry_2=e.Ja,wn=N._emscripten_bind_MetadataQuerier_NumEntries_1=e.Ka,Tn=N._emscripten_bind_MetadataQuerier_GetEntryName_2=e.La,En=N._emscripten_bind_MetadataQuerier___destroy___0=e.Ma,Dn=N._emscripten_bind_Decoder_Decoder_0=e.Na,On=N._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=e.Oa,kn=N._emscripten_bind_Decoder_DecodeArrayToMesh_3=e.Pa,An=N._emscripten_bind_Decoder_GetAttributeId_2=e.Qa,jn=N._emscripten_bind_Decoder_GetAttributeIdByName_2=e.Ra,Mn=N._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=e.Sa,Nn=N._emscripten_bind_Decoder_GetAttribute_2=e.Ta,Pn=N._emscripten_bind_Decoder_GetAttributeByUniqueId_2=e.Ua,Fn=N._emscripten_bind_Decoder_GetMetadata_1=e.Va,In=N._emscripten_bind_Decoder_GetAttributeMetadata_2=e.Wa,Ln=N._emscripten_bind_Decoder_GetFaceFromMesh_3=e.Xa,Rn=N._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=e.Ya,zn=N._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=e.Za,Bn=N._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=e._a,Vn=N._emscripten_bind_Decoder_GetAttributeFloat_3=e.$a,Hn=N._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=e.ab,Un=N._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=e.bb,Wn=N._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=e.cb,Gn=N._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=e.db,Kn=N._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=e.eb,qn=N._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=e.fb,Jn=N._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=e.gb,Yn=N._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=e.hb,Xn=N._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=e.ib,Zn=N._emscripten_bind_Decoder_SkipAttributeTransform_1=e.jb,Qn=N._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=e.kb,$n=N._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=e.lb,er=N._emscripten_bind_Decoder_DecodeBufferToMesh_2=e.mb,tr=N._emscripten_bind_Decoder___destroy___0=e.nb,nr=N._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=e.ob,rr=N._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=e.pb,ir=N._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=e.qb,ar=N._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=e.rb,or=N._emscripten_enum_draco_GeometryAttribute_Type_INVALID=e.sb,sr=N._emscripten_enum_draco_GeometryAttribute_Type_POSITION=e.tb,cr=N._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=e.ub,lr=N._emscripten_enum_draco_GeometryAttribute_Type_COLOR=e.vb,ur=N._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=e.wb,dr=N._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=e.xb,fr=N._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=e.yb,pr=N._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=e.zb,mr=N._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=e.Ab,hr=N._emscripten_enum_draco_DataType_DT_INVALID=e.Bb,gr=N._emscripten_enum_draco_DataType_DT_INT8=e.Cb,_r=N._emscripten_enum_draco_DataType_DT_UINT8=e.Db,vr=N._emscripten_enum_draco_DataType_DT_INT16=e.Eb,yr=N._emscripten_enum_draco_DataType_DT_UINT16=e.Fb,br=N._emscripten_enum_draco_DataType_DT_INT32=e.Gb,xr=N._emscripten_enum_draco_DataType_DT_UINT32=e.Hb,Sr=N._emscripten_enum_draco_DataType_DT_INT64=e.Ib,Cr=N._emscripten_enum_draco_DataType_DT_UINT64=e.Jb,wr=N._emscripten_enum_draco_DataType_DT_FLOAT32=e.Kb,Tr=N._emscripten_enum_draco_DataType_DT_FLOAT64=e.Lb,Er=N._emscripten_enum_draco_DataType_DT_BOOL=e.Mb,Dr=N._emscripten_enum_draco_DataType_DT_TYPES_COUNT=e.Nb,Or=N._emscripten_enum_draco_StatusCode_OK=e.Ob,kr=N._emscripten_enum_draco_StatusCode_DRACO_ERROR=e.Pb,Ar=N._emscripten_enum_draco_StatusCode_IO_ERROR=e.Qb,jr=N._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=e.Rb,Mr=N._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=e.Sb,Nr=N._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=e.Tb,Pr=e.f,ce(),Ir}var t,n,r,i;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(a){return a.getNextAddressJsc()==1?(t={a:Fr},(n=N.instantiateWasm)?a.return(new Promise(function(r){n(t,function(t){return r(e(t))})})):(P??(P=le(`draco_decoder.wasm`)),a.yield(ne(xe,P,t),2))):(r=a.getYieldResultJsc(),i=e(r.instance),a.return(i))})}function ne(e,t,n){var r,i,a;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(o){switch(o.getNextAddressJsc()){case 1:if(e||Ce(t)||fe){o.jumpTo(2);break}return o.setCatchFinallyBlocks(3),r=fetch(t,{credentials:`same-origin`}),o.yield(WebAssembly.instantiateStreaming(r,n),5);case 5:return i=o.getYieldResultJsc(),o.return(i);case 3:a=o.enterCatchBlock(),be(`wasm streaming compile failed: `+a),be(`falling back to ArrayBuffer instantiation`);case 2:return o.return(re(t,n))}})}function re(e,t){var n,r,i;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(a){switch(a.getNextAddressJsc()){case 1:return a.setCatchFinallyBlocks(2),a.yield(ie(e),4);case 4:return n=a.getYieldResultJsc(),a.yield(WebAssembly.instantiate(n,t),5);case 5:return r=a.getYieldResultJsc(),a.return(r);case 2:i=a.enterCatchBlock(),be(`failed to asynchronously prepare wasm: `+i),ae(i),a.jumpToEnd()}})}function ie(e){var t;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(n){switch(n.getNextAddressJsc()){case 1:if(xe){n.jumpTo(2);break}return n.setCatchFinallyBlocks(3),n.yield(ge(e),5);case 5:return t=n.getYieldResultJsc(),n.return(new Uint8Array(t));case 3:n.enterCatchBlock();case 2:var r=n.return;if(e==P&&xe)var i=new Uint8Array(xe);else if(_e)i=_e(e);else throw`both async and sync fetching of the wasm failed`;return r.call(n,i)}})}function ae(e){var t,n;throw(n=(t=N).onAbort)==null||n.call(t,e),e=`Aborted(`+e+`)`,be(e),Se=!0,new WebAssembly.RuntimeError(e+`. Build with -sASSERTIONS for more info.`)}function oe(){var e=N.postRun;e&&(typeof e==`function`&&(e=[e]),ke.push.apply(ke,(0,Z.arrayFromIterable)(e))),Oe(ke)}function se(){var e=N.preRun;e&&(typeof e==`function`&&(e=[e]),Ae.push.apply(Ae,(0,Z.arrayFromIterable)(e))),Oe(Ae)}function ce(){var e,t;(e=De)!=null&&(t=e.buffer)!=null&&t.resizable||(e=Pr.buffer,N.HEAP8=De=new Int8Array(e),N.HEAP16=new Int16Array(e),N.HEAPU8=R=new Uint8Array(e),N.HEAPU16=new Uint16Array(e),N.HEAP32=new Int32Array(e),N.HEAPU32=je=new Uint32Array(e),N.HEAPF32=new Float32Array(e),N.HEAPF64=new Float64Array(e))}function le(e){return N.locateFile?N.locateFile(e,he):he+e}function M(e){return typeof e==`string`&&(e=e.split(`.`),e.length<2||e.length>3?!1:e[0]==1&&e[1]>=0&&e[1]<=5||!(e[0]!=0||e[1]>10))}t=t===void 0?{}:t;var N,ue,de,fe,pe,me,he,ge,_e,ve,ye,be,xe,Se,Ce,we,Te,Ee,P,De,Oe,ke,Ae,je,Me,Ne,Pe,Fe,Ie,F,I,L,R,Le,Re,ze,Be,Ve,He,Ue,We,Ge,Ke,qe,Je,Ye,Xe,Ze,Qe,$e,et,tt,nt,rt,it,at,ot,st,ct,lt,ut,dt,ft,pt,mt,ht,gt,_t,vt,yt,bt,xt,St,Ct,wt,Tt,Et,Dt,Ot,kt,At,jt,Mt,Nt,Pt,Ft,It,Lt,Rt,zt,Bt,Vt,Ht,Ut,Wt,Gt,Kt,qt,Jt,Yt,Xt,Zt,Qt,$t,en,tn,nn,rn,an,on,sn,cn,ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn,xn,Sn,Cn,wn,Tn,En,Dn,On,kn,An,jn,Mn,Nn,Pn,Fn,In,Ln,Rn,zn,Bn,Vn,Hn,Un,Wn,Gn,Kn,qn,Jn,Yn,Xn,Zn,Qn,$n,er,tr,nr,rr,ir,ar,or,sr,cr,lr,ur,dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr,Sr,Cr,wr,Tr,Er,Dr,Or,kr,Ar,jr,Mr,Nr,Pr,Fr,Ir,z;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(ne){if(ne.getNextAddressJsc()==1){if(N=t,ue=!!globalThis.window,de=!!globalThis.WorkerGlobalScope,fe=globalThis.process?.versions?.node&&globalThis.process?.type!=`renderer`,me=pe=!1,N.onRuntimeInitialized=function(){pe=!0,me&&typeof N.onModuleLoaded==`function`&&N.onModuleLoaded(N)},N.onModuleParsed=function(){me=!0,pe&&typeof N.onModuleLoaded==`function`&&N.onModuleLoaded(N)},N.isVersionSupported=M,typeof __filename<`u`?e=__filename:de&&(e=self.location.href),he=``,fe)ve=ch(),he=__dirname+`/`,_e=function(e){return e=Ce(e)?new URL(e):e,ve.readFileSync(e)},ge=function(e,t){t=t===void 0||t;var n;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(r){return e=Ce(e)?new URL(e):e,n=ve.readFileSync(e,t?void 0:`utf8`),r.return(n)})},process.argv.length>1&&process.argv[1].replace(/\\/g,`/`),process.argv.slice(2);else if(ue||de){try{he=new URL(`.`,e).href}catch{}de&&(_e=function(e){var t=new XMLHttpRequest;return t.open(`GET`,e,!1),t.responseType=`arraybuffer`,t.send(null),new Uint8Array(t.response)}),ge=function(e){var t;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(n){if(n.getNextAddressJsc()==1)return Ce(e)?n.return(new Promise(function(t,n){var r=new XMLHttpRequest;r.open(`GET`,e,!0),r.responseType=`arraybuffer`,r.onload=function(){r.status==200||r.status==0&&r.response?t(r.response):n(r.status)},r.onerror=n,r.send(null)})):n.yield(fetch(e,{credentials:`same-origin`}),2);if(t=n.getYieldResultJsc(),t.ok)return n.return(t.arrayBuffer());throw Error(t.status+` : `+t.url)})}}if(ye=console.log.bind(console),be=console.error.bind(console),Se=!1,Ce=function(e){return e.startsWith(`file://`)},we=function(){},Te=function(){return we.apply(this,arguments)||this},Z.inherits(Te,we),Ee=!1,Oe=function(e){for(;e.length>0;)e.shift()(N)},ke=[],Ae=[],Me=function(e){this.excPtr=e,this.ptr=e-24},Me.prototype.set_type=function(e){je[this.ptr+4>>2]=e},Me.prototype.get_type=function(){return je[this.ptr+4>>2]},Me.prototype.set_destructor=function(e){je[this.ptr+8>>2]=e},Me.prototype.get_destructor=function(){return je[this.ptr+8>>2]},Me.prototype.set_caught=function(e){De[this.ptr+12]=+!!e},Me.prototype.get_caught=function(){return De[this.ptr+12]!=0},Me.prototype.set_rethrown=function(e){De[this.ptr+13]=+!!e},Me.prototype.get_rethrown=function(){return De[this.ptr+13]!=0},Me.prototype.init=function(e,t){this.set_adjusted_ptr(0),this.set_type(e),this.set_destructor(t)},Me.prototype.set_adjusted_ptr=function(e){je[this.ptr+16>>2]=e},Me.prototype.get_adjusted_ptr=function(){return je[this.ptr+16>>2]},Ne=0,Pe=function(e){ae()},Fe=function(e,t,n){new Me(e).init(t,n),Ne++,Pe(e)},Ie=function(){return ae(``)},F=function(){return 2147483648},I=function(e,t){return Math.ceil(e/t)*t},L=function(e){var t=Pr.buffer.byteLength;try{return Pr.grow((e-t+65535)/65536|0),ce(),1}catch{}},Le=function(e){var t=R.length;e>>>=0;var n=F();if(e>n)return!1;for(var r=1;r<=4;r*=2){var i=t*(1+.2/r);if(i=Math.min(i,e+100663296),i=Math.min(n,I(Math.max(e,i),65536)),L(i))return!0}return!1},Re=function(e){return 52},ze=[null,[],[]],Be=globalThis.TextDecoder&&new TextDecoder,Ve=function(e,t,n,r){if(n=t+n,r)return n;for(;e[t]&&!(t>=n);)++t;return t},He=function(e,t,n,r){if(t=t===void 0?0:t,n=Ve(e,t,n,r),n-t>16&&e.buffer&&Be)return Be.decode(e.subarray(t,n));for(r=``;t<n;){var i=e[t++];if(i&128){var a=e[t++]&63;if((i&224)==192)r+=String.fromCharCode((i&31)<<6|a);else{var o=e[t++]&63;i=(i&240)==224?(i&15)<<12|a<<6|o:(i&7)<<18|a<<12|o<<6|e[t++]&63,i<65536?r+=String.fromCharCode(i):(i-=65536,r+=String.fromCharCode(55296|i>>10,56320|i&1023))}}else r+=String.fromCharCode(i)}return r},Ue=function(e,t){var n=ze[e];t&&t!==10?n.push(t):((e===1?ye:be)(He(n)),n.length=0)},We=function(e,t,n){return e?He(R,e,t,n):``},Ge=function(e,t,n,r){for(var i=0,a=0;a<n;a++){var o=je[t>>2],s=je[t+4>>2];t+=8;for(var c=0;c<s;c++)Ue(e,R[o+c]);i+=s}return je[r>>2]=i,0},Ke=function(e){for(var t=0,n=0;n<e.length;++n){var r=e.charCodeAt(n);r<=127?t++:r<=2047?t+=2:r>=55296&&r<=57343?(t+=4,++n):t+=3}return t},qe=function(e,t,n,r){if(!(r>0))return 0;var i=n;r=n+r-1;for(var a=0;a<e.length;++a){var o=e.codePointAt(a);if(o<=127){if(n>=r)break;t[n++]=o}else if(o<=2047){if(n+1>=r)break;t[n++]=192|o>>6,t[n++]=128|o&63}else if(o<=65535){if(n+2>=r)break;t[n++]=224|o>>12,t[n++]=128|o>>6&63,t[n++]=128|o&63}else{if(n+3>=r)break;t[n++]=240|o>>18,t[n++]=128|o>>12&63,t[n++]=128|o>>6&63,t[n++]=128|o&63,a++}}return t[n]=0,n-i},Je=function(e,t,n){return n=n>0?n:Ke(e)+1,n=Array(n),e=qe(e,n,0,n.length),t&&(n.length=e),n},Ye=[],Xe=function(e){return Ye.push(e)},N.print&&(ye=N.print),N.printErr&&(be=N.printErr),N.wasmBinary&&(xe=N.wasmBinary),Ze=N.preInit)for(typeof Ze==`function`&&(N.preInit=Ze=[Ze]);Ze.length>0;)Ze.shift()();return Fr={a:Fe,e:Ie,c:Le,d:Re,b:Ge},ne.yield(te(),2)}return ne.getNextAddressJsc()==3?(j.prototype=Object.create(j.prototype),j.prototype.constructor=j,j.prototype.__class__=j,j.__cache__={},N.WrapperObject=j,N.getCache=A,N.wrapPointer=k,N.castObject=O,N.NULL=k(0),N.destroy=D,N.compare=E,N.getPointer=T,N.getClass=w,z={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(z.needed){for(var e=0;e<z.temps.length;e++)N._webidl_free(z.temps[e]);z.temps.length=0,N._webidl_free(z.buffer),z.buffer=0,z.size+=z.needed,z.needed=0}z.buffer||(z.size+=128,z.buffer=N._webidl_malloc(z.size),z.buffer||ae(void 0)),z.pos=0},alloc:function(e,t){return z.buffer||ae(void 0),e=e.length*t.BYTES_PER_ELEMENT,e=I(e,8),z.pos+e>=z.size?(e>0||ae(void 0),z.needed+=e,t=N._webidl_malloc(e),z.temps.push(t)):(t=z.buffer+z.pos,z.pos+=e),t}},x.prototype=Object.create(j.prototype),x.prototype.constructor=x,x.prototype.__class__=x,x.__cache__={},N.VoidPtr=x,x.prototype.__destroy__=x.prototype.__destroy__=function(){Qe(this.ptr)},b.prototype=Object.create(j.prototype),b.prototype.constructor=b,b.prototype.__class__=b,b.__cache__={},N.DecoderBuffer=b,b.prototype.Init=b.prototype.Init=function(e,t){var n=this.ptr;z.prepare(),typeof e==`object`&&(e=S(e)),t&&typeof t==`object`&&(t=t.ptr),et(n,e,t)},b.prototype.__destroy__=b.prototype.__destroy__=function(){tt(this.ptr)},y.prototype=Object.create(j.prototype),y.prototype.constructor=y,y.prototype.__class__=y,y.__cache__={},N.AttributeTransformData=y,y.prototype.transform_type=y.prototype.transform_type=function(){return rt(this.ptr)},y.prototype.__destroy__=y.prototype.__destroy__=function(){it(this.ptr)},v.prototype=Object.create(j.prototype),v.prototype.constructor=v,v.prototype.__class__=v,v.__cache__={},N.GeometryAttribute=v,v.prototype.__destroy__=v.prototype.__destroy__=function(){ot(this.ptr)},_.prototype=Object.create(j.prototype),_.prototype.constructor=_,_.prototype.__class__=_,_.__cache__={},N.PointAttribute=_,_.prototype.size=_.prototype.size=function(){return ct(this.ptr)},_.prototype.GetAttributeTransformData=_.prototype.GetAttributeTransformData=function(){return k(lt(this.ptr),y)},_.prototype.attribute_type=_.prototype.attribute_type=function(){return ut(this.ptr)},_.prototype.data_type=_.prototype.data_type=function(){return dt(this.ptr)},_.prototype.num_components=_.prototype.num_components=function(){return ft(this.ptr)},_.prototype.normalized=_.prototype.normalized=function(){return!!pt(this.ptr)},_.prototype.byte_stride=_.prototype.byte_stride=function(){return mt(this.ptr)},_.prototype.byte_offset=_.prototype.byte_offset=function(){return ht(this.ptr)},_.prototype.unique_id=_.prototype.unique_id=function(){return gt(this.ptr)},_.prototype.__destroy__=_.prototype.__destroy__=function(){_t(this.ptr)},g.prototype=Object.create(j.prototype),g.prototype.constructor=g,g.prototype.__class__=g,g.__cache__={},N.AttributeQuantizationTransform=g,g.prototype.InitFromAttribute=g.prototype.InitFromAttribute=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),!!yt(t,e)},g.prototype.quantization_bits=g.prototype.quantization_bits=function(){return bt(this.ptr)},g.prototype.min_value=g.prototype.min_value=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),xt(t,e)},g.prototype.range=g.prototype.range=function(){return St(this.ptr)},g.prototype.__destroy__=g.prototype.__destroy__=function(){Ct(this.ptr)},h.prototype=Object.create(j.prototype),h.prototype.constructor=h,h.prototype.__class__=h,h.__cache__={},N.AttributeOctahedronTransform=h,h.prototype.InitFromAttribute=h.prototype.InitFromAttribute=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),!!Tt(t,e)},h.prototype.quantization_bits=h.prototype.quantization_bits=function(){return Et(this.ptr)},h.prototype.__destroy__=h.prototype.__destroy__=function(){Dt(this.ptr)},m.prototype=Object.create(j.prototype),m.prototype.constructor=m,m.prototype.__class__=m,m.__cache__={},N.PointCloud=m,m.prototype.num_attributes=m.prototype.num_attributes=function(){return kt(this.ptr)},m.prototype.num_points=m.prototype.num_points=function(){return At(this.ptr)},m.prototype.__destroy__=m.prototype.__destroy__=function(){jt(this.ptr)},p.prototype=Object.create(j.prototype),p.prototype.constructor=p,p.prototype.__class__=p,p.__cache__={},N.Mesh=p,p.prototype.num_faces=p.prototype.num_faces=function(){return Nt(this.ptr)},p.prototype.num_attributes=p.prototype.num_attributes=function(){return Pt(this.ptr)},p.prototype.num_points=p.prototype.num_points=function(){return Ft(this.ptr)},p.prototype.__destroy__=p.prototype.__destroy__=function(){It(this.ptr)},f.prototype=Object.create(j.prototype),f.prototype.constructor=f,f.prototype.__class__=f,f.__cache__={},N.Metadata=f,f.prototype.__destroy__=f.prototype.__destroy__=function(){Rt(this.ptr)},d.prototype=Object.create(j.prototype),d.prototype.constructor=d,d.prototype.__class__=d,d.__cache__={},N.Status=d,d.prototype.code=d.prototype.code=function(){return zt(this.ptr)},d.prototype.ok=d.prototype.ok=function(){return!!Bt(this.ptr)},d.prototype.error_msg=d.prototype.error_msg=function(){return We(Vt(this.ptr))},d.prototype.__destroy__=d.prototype.__destroy__=function(){Ht(this.ptr)},u.prototype=Object.create(j.prototype),u.prototype.constructor=u,u.prototype.__class__=u,u.__cache__={},N.DracoFloat32Array=u,u.prototype.GetValue=u.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),Wt(t,e)},u.prototype.size=u.prototype.size=function(){return Gt(this.ptr)},u.prototype.__destroy__=u.prototype.__destroy__=function(){Kt(this.ptr)},l.prototype=Object.create(j.prototype),l.prototype.constructor=l,l.prototype.__class__=l,l.__cache__={},N.DracoInt8Array=l,l.prototype.GetValue=l.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),Jt(t,e)},l.prototype.size=l.prototype.size=function(){return Yt(this.ptr)},l.prototype.__destroy__=l.prototype.__destroy__=function(){Xt(this.ptr)},c.prototype=Object.create(j.prototype),c.prototype.constructor=c,c.prototype.__class__=c,c.__cache__={},N.DracoUInt8Array=c,c.prototype.GetValue=c.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),Qt(t,e)},c.prototype.size=c.prototype.size=function(){return $t(this.ptr)},c.prototype.__destroy__=c.prototype.__destroy__=function(){en(this.ptr)},s.prototype=Object.create(j.prototype),s.prototype.constructor=s,s.prototype.__class__=s,s.__cache__={},N.DracoInt16Array=s,s.prototype.GetValue=s.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),nn(t,e)},s.prototype.size=s.prototype.size=function(){return rn(this.ptr)},s.prototype.__destroy__=s.prototype.__destroy__=function(){an(this.ptr)},o.prototype=Object.create(j.prototype),o.prototype.constructor=o,o.prototype.__class__=o,o.__cache__={},N.DracoUInt16Array=o,o.prototype.GetValue=o.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),sn(t,e)},o.prototype.size=o.prototype.size=function(){return cn(this.ptr)},o.prototype.__destroy__=o.prototype.__destroy__=function(){ln(this.ptr)},a.prototype=Object.create(j.prototype),a.prototype.constructor=a,a.prototype.__class__=a,a.__cache__={},N.DracoInt32Array=a,a.prototype.GetValue=a.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),dn(t,e)},a.prototype.size=a.prototype.size=function(){return fn(this.ptr)},a.prototype.__destroy__=a.prototype.__destroy__=function(){pn(this.ptr)},i.prototype=Object.create(j.prototype),i.prototype.constructor=i,i.prototype.__class__=i,i.__cache__={},N.DracoUInt32Array=i,i.prototype.GetValue=i.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),hn(t,e)},i.prototype.size=i.prototype.size=function(){return gn(this.ptr)},i.prototype.__destroy__=i.prototype.__destroy__=function(){_n(this.ptr)},r.prototype=Object.create(j.prototype),r.prototype.constructor=r,r.prototype.__class__=r,r.__cache__={},N.MetadataQuerier=r,r.prototype.HasEntry=r.prototype.HasEntry=function(e,t){var n=this.ptr;return z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),!!yn(n,e,t)},r.prototype.GetIntEntry=r.prototype.GetIntEntry=function(e,t){var n=this.ptr;return z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),bn(n,e,t)},r.prototype.GetIntEntryArray=r.prototype.GetIntEntryArray=function(e,t,n){var r=this.ptr;z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),n&&typeof n==`object`&&(n=n.ptr),xn(r,e,t,n)},r.prototype.GetDoubleEntry=r.prototype.GetDoubleEntry=function(e,t){var n=this.ptr;return z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),Sn(n,e,t)},r.prototype.GetStringEntry=r.prototype.GetStringEntry=function(e,t){var n=this.ptr;return z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),We(Cn(n,e,t))},r.prototype.NumEntries=r.prototype.NumEntries=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),wn(t,e)},r.prototype.GetEntryName=r.prototype.GetEntryName=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),We(Tn(n,e,t))},r.prototype.__destroy__=r.prototype.__destroy__=function(){En(this.ptr)},n.prototype=Object.create(j.prototype),n.prototype.constructor=n,n.prototype.__class__=n,n.__cache__={},N.Decoder=n,n.prototype.DecodeArrayToPointCloud=n.prototype.DecodeArrayToPointCloud=function(e,t,n){var r=this.ptr;return z.prepare(),typeof e==`object`&&(e=S(e)),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),k(On(r,e,t,n),d)},n.prototype.DecodeArrayToMesh=n.prototype.DecodeArrayToMesh=function(e,t,n){var r=this.ptr;return z.prepare(),typeof e==`object`&&(e=S(e)),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),k(kn(r,e,t,n),d)},n.prototype.GetAttributeId=n.prototype.GetAttributeId=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),An(n,e,t)},n.prototype.GetAttributeIdByName=n.prototype.GetAttributeIdByName=function(e,t){var n=this.ptr;return z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),jn(n,e,t)},n.prototype.GetAttributeIdByMetadataEntry=n.prototype.GetAttributeIdByMetadataEntry=function(e,t,n){var r=this.ptr;return z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),n=n&&typeof n==`object`?n.ptr:C(n),Mn(r,e,t,n)},n.prototype.GetAttribute=n.prototype.GetAttribute=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),k(Nn(n,e,t),_)},n.prototype.GetAttributeByUniqueId=n.prototype.GetAttributeByUniqueId=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),k(Pn(n,e,t),_)},n.prototype.GetMetadata=n.prototype.GetMetadata=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),k(Fn(t,e),f)},n.prototype.GetAttributeMetadata=n.prototype.GetAttributeMetadata=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),k(In(n,e,t),f)},n.prototype.GetFaceFromMesh=n.prototype.GetFaceFromMesh=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Ln(r,e,t,n)},n.prototype.GetTriangleStripsFromMesh=n.prototype.GetTriangleStripsFromMesh=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),Rn(n,e,t)},n.prototype.GetTrianglesUInt16Array=n.prototype.GetTrianglesUInt16Array=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!zn(r,e,t,n)},n.prototype.GetTrianglesUInt32Array=n.prototype.GetTrianglesUInt32Array=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Bn(r,e,t,n)},n.prototype.GetAttributeFloat=n.prototype.GetAttributeFloat=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Vn(r,e,t,n)},n.prototype.GetAttributeFloatForAllPoints=n.prototype.GetAttributeFloatForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Hn(r,e,t,n)},n.prototype.GetAttributeIntForAllPoints=n.prototype.GetAttributeIntForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Un(r,e,t,n)},n.prototype.GetAttributeInt8ForAllPoints=n.prototype.GetAttributeInt8ForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Wn(r,e,t,n)},n.prototype.GetAttributeUInt8ForAllPoints=n.prototype.GetAttributeUInt8ForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Gn(r,e,t,n)},n.prototype.GetAttributeInt16ForAllPoints=n.prototype.GetAttributeInt16ForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Kn(r,e,t,n)},n.prototype.GetAttributeUInt16ForAllPoints=n.prototype.GetAttributeUInt16ForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!qn(r,e,t,n)},n.prototype.GetAttributeInt32ForAllPoints=n.prototype.GetAttributeInt32ForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Jn(r,e,t,n)},n.prototype.GetAttributeUInt32ForAllPoints=n.prototype.GetAttributeUInt32ForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Yn(r,e,t,n)},n.prototype.GetAttributeDataArrayForAllPoints=n.prototype.GetAttributeDataArrayForAllPoints=function(e,t,n,r,i){var a=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),r&&typeof r==`object`&&(r=r.ptr),i&&typeof i==`object`&&(i=i.ptr),!!Xn(a,e,t,n,r,i)},n.prototype.SkipAttributeTransform=n.prototype.SkipAttributeTransform=function(e){var t=this.ptr;e&&typeof e==`object`&&(e=e.ptr),Zn(t,e)},n.prototype.GetEncodedGeometryType_Deprecated=n.prototype.GetEncodedGeometryType_Deprecated=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),Qn(t,e)},n.prototype.DecodeBufferToPointCloud=n.prototype.DecodeBufferToPointCloud=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),k($n(n,e,t),d)},n.prototype.DecodeBufferToMesh=n.prototype.DecodeBufferToMesh=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),k(er(n,e,t),d)},n.prototype.__destroy__=n.prototype.__destroy__=function(){tr(this.ptr)},(function(){function e(){N.ATTRIBUTE_INVALID_TRANSFORM=nr(),N.ATTRIBUTE_NO_TRANSFORM=rr(),N.ATTRIBUTE_QUANTIZATION_TRANSFORM=ir(),N.ATTRIBUTE_OCTAHEDRON_TRANSFORM=ar(),N.INVALID=or(),N.POSITION=sr(),N.NORMAL=cr(),N.COLOR=lr(),N.TEX_COORD=ur(),N.GENERIC=dr(),N.INVALID_GEOMETRY_TYPE=fr(),N.POINT_CLOUD=pr(),N.TRIANGULAR_MESH=mr(),N.DT_INVALID=hr(),N.DT_INT8=gr(),N.DT_UINT8=_r(),N.DT_INT16=vr(),N.DT_UINT16=yr(),N.DT_INT32=br(),N.DT_UINT32=xr(),N.DT_INT64=Sr(),N.DT_UINT64=Cr(),N.DT_FLOAT32=wr(),N.DT_FLOAT64=Tr(),N.DT_BOOL=Er(),N.DT_TYPES_COUNT=Dr(),N.OK=Or(),N.DRACO_ERROR=kr(),N.IO_ERROR=Ar(),N.INVALID_PARAMETER=jr(),N.UNSUPPORTED_VERSION=Mr(),N.UNKNOWN_VERSION=Nr()}Ee?e():Xe(e)})(),N.Decoder.prototype.GetEncodedGeometryType=function(e){if(e.__class__&&e.__class__===N.DecoderBuffer)return N.Decoder.prototype.GetEncodedGeometryType_Deprecated(e);if(e.byteLength<8)return N.INVALID_GEOMETRY_TYPE;switch(e[7]){case 0:return N.POINT_CLOUD;case 1:return N.TRIANGULAR_MESH;default:return N.INVALID_GEOMETRY_TYPE}},typeof N.onModuleParsed==`function`&&N.onModuleParsed(),ne.return(N)):(Ir=ne.getYieldResultJsc(),ne.yield(ee(),3))})}}(),ph=`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ACACKQMQIgUgAikDCFkNACACKAIAIAWnaiwAACEDIAIgBUIBfDcDECABIANBAEgEfyAAQQFqIAEgAhAkRQ0BIANB/wBxIAEoAgBBB3RyBSADCzYCAEEBIQQLIAQLJwEBfyAAQQA2AhAgACAAKAIAIgE2AgwgAQRAIAAgATYCBCABEAULCwQAQQALywcBA38gACABNgIMIABBADYCCCAAQgA3AgAgAEEQaiIDQgA3AAUgA0IANwIAIANBEGoiAkIANwAFIAJCADcCACADQSBqIgJCADcABSACQgA3AgAgA0EwaiICQgA3AAUgAkIANwIAIANBQGsiAkIANwAFIAJCADcCACADQdAAaiICQgA3AAUgAkIANwIAIANB4ABqIgJCADcABSACQgA3AgAgA0HwAGoiAkIANwAFIAJCADcCACADQYABaiICQgA3AAUgAkIANwIAIANBkAFqIgJCADcABSACQgA3AgAgA0GgAWoiAkIANwAFIAJCADcCACADQbABaiICQgA3AAUgAkIANwIAIANBwAFqIgJCADcABSACQgA3AgAgA0HQAWoiAkIANwAFIAJCADcCACADQeABaiICQgA3AAUgAkIANwIAIANB8AFqIgJCADcABSACQgA3AgAgA0GAAmoiAkIANwAFIAJCADcCACADQZACaiICQgA3AAUgAkIANwIAIANBoAJqIgJCADcABSACQgA3AgAgA0GwAmoiAkIANwAFIAJCADcCACADQcACaiICQgA3AAUgAkIANwIAIANB0AJqIgJCADcABSACQgA3AgAgA0HgAmoiAkIANwAFIAJCADcCACADQfACaiICQgA3AAUgAkIANwIAIANBgANqIgJCADcABSACQgA3AgAgA0GQA2oiAkIANwAFIAJCADcCACADQaADaiICQgA3AAUgAkIANwIAIANBsANqIgJCADcABSACQgA3AgAgA0HAA2oiAkIANwAFIAJCADcCACADQdADaiICQgA3AAUgAkIANwIAIANB4ANqIgJCADcABSACQgA3AgAgA0HwA2oiA0IANwAFIANCADcCACAAQgA3AJUEIABCADcCkAQgAEEANgKwBCAAQgA3AqgEIABCADcCoAQgAEEANgLEBCAAQgA3ArwEIABCADcCtAQgAEEANgLYBCAAQgA3AtAEIABCADcCyAQgAEEANgLkBCAAQgA3AtwEAkACQCABRQRAIABBADYC8AQgAEIANwLoBAwBCyABQYCAgIAETw0BIAAgAUECdCIBEAYiAzYC3AQgACABIANqIgI2AuQEIAFFIgRFBEAgA0EAIAH8CwALIABBADYC8AQgAEIANwLoBCAAIAI2AuAEIAAgARAGIgM2AugEIAAgASADaiICNgLwBCAERQRAIANBACAB/AsACyAAIAI2AuwECyAAQQA2ApQFIABCADcCjAUgAEIANwKEBSAAQgA3AvwEIABCADcC9AQgAA8LEAcAC48BAQF/IAAoAowFIgEEQCAAIAE2ApAFIAEQBQsgACgCgAUiAQRAIAAgATYChAUgARAFCyAAKAL0BCIBBEAgACABNgL4BCABEAULIAAoAugEIgEEQCAAIAE2AuwEIAEQBQsgACgC3AQiAQRAIAAgATYC4AQgARAFCyAAQcgEahAlIABBtARqECUgAEGgBGoQJQsJAEH0CRD3AQALiwEBAX8gAARAIAAoAkwiAQRAIAAgATYCUCABEAULIAAoAkAiAQRAIAAgATYCRCABEAULIAAoAjAiAQRAIAAgATYCNCABEAULIAAoAhgiAQRAIAAgATYCHCABEAULIAAoAgwiAQRAIAAgATYCECABEAULIAAoAgAiAQRAIAAgATYCBCABEAULIAAQBQsLBwAgACgCBAsHACAAKAIcC3cCAX4CfwJAIABBCksNACACKQMQIgMgAikDCFkNACACKAIAIAOnaiwAACEFIAIgA0IBfDcDECAFrSEDIAECfiAFQQBIBEAgAEEBaiABIAIQLUUNAiADQv8AgyABKQMAQgeGhAwBCyADQv8Bgws3AwBBASEECyAEC2oCAn8BfgJAIABBBUsNACACKQMQIgUgAikDCFkNACACKAIAIAWnaiwAACEDIAIgBUIBfDcDECABIANBAEgEfyAAQQFqIAEgAhAuRQ0BIANB/wBxIAEoAgBBB3RyBSADCzYCAEEBIQQLIAQLcgEBfyMAQYACayIFJAACQCACIANMDQAgBEGAwARxDQAgAiADayIDQYACIANBgAJJIgIbIgQEQCAFIAEgBPwLAAsgAkUEQANAIAAgBUGAAhA+IANBgAJrIgNB/wFLDQALCyAAIAUgAxA+CyAFQYACaiQACyIBAX8gAARAIAAoAgAiAQRAIAAgATYCBCABEAULIAAQBQsLGAEBf0EMEAYiAEEANgIIIABCADcCACAAC8wBAgJ/An4CQCAAKAJADQBBIBAGIgJCADcDECACQQA2AgggAkIANwMAIAJCADcDGCAAKAJAIQMgACACNgJAIANFDQAgAygCACICBEAgAyACNgIEIAIQBQsgAxAFCyAAKAJAQQAgACgCHEEBayICQQpNBH8gAi0AkGoFQX8LIAAtABhsrCIEIAGtfhDYASIDBEAgACAAKAJAIgI2AgAgACACKQMQNwMIIAIpAxghBSAAQgA3AzAgACAENwMoIAAgBTcDECAAIAE2AlALIAMLkQIBBn8CQAJAAkAgACgCBCICIAAoAgAiBGsiBkEDdSIDIAFJBEAgACgCCCAEayIFQQN1IAFPBEAgASADa0EDdCIBBEAgAkEAIAH8CwALIAAgASACajYCBA8LIAFBgICAgAJPDQJB/////wEgBUECdSICIAEgASACSRsgBUH4////B08bIgJBgICAgAJPDQMgAkEDdCIFEAYiByAGaiECIAEgA2tBA3QiAQRAIAJBACAB/AsACyACIANBA3RrIQMgBgRAIAMgBCAG/AoAAAsgACAFIAdqNgIIIAAgASACajYCBCAAIAM2AgAgBEUNASAEEAUPCyABIANPDQAgACAEIAFBA3RqNgIECw8LEAcACxAOAAvXAgEHfwJAAkACQCAAKAIEIgQgACgCACIFayIGQQJ1IgcgAUkEQCAAKAIIIAVrIgNBAnUgAU8EQCAEIAEgB2tBAnRqIQEgAigCACECA0AgBCACNgIAIARBBGoiBCABRw0ACyAAIAE2AgQPCyABQYCAgIAETw0CQf////8DIANBAXUiCCABIAEgCEkbIANB/P///wdPGyIIQYCAgIAETw0DIAhBAnQQBiIJIAZqIgMgASAHa0ECdGohBiACKAIAIQIgAyEBA0AgASACNgIAIAFBBGoiASAGRw0ACyADIAdBAnRrIQMgBCAFRwRAIAUhASADIQIDQCACIAEoAgA2AgAgAkEEaiECIAFBBGoiASAERw0ACwsgACAJIAhBAnRqNgIIIAAgBjYCBCAAIAM2AgAgBUUNASAFEAUPCyABIAdPDQAgACAFIAFBAnRqNgIECw8LEAcACxAOAAuvAQEFfwJAIAAoAggiAS0AVA0AIAAoAhAiAkUNACACLQBUQQFHDQAgASgCRCEDIAEoAkghASACQQA6AFQgAkHEAGogASADa0ECdUHAEhA0IAAoAggiAi0AVA0AIAIoAkQiAyACKAJIRg0AIAAoAhAoAkQhBEEAIQEDQCAEIAFBAnQiBWogAyAFaigCADYCACABQQFqIgEgAigCSCACKAJEIgNrQQJ1SQ0ACwsgACgCEAutAwEBfwJAIAAgARAIRQ0AIABBEGogARAIRQ0AIABBIGogARAIRQ0AIABBMGogARAIRQ0AIABBQGsgARAIRQ0AIABB0ABqIAEQCEUNACAAQeAAaiABEAhFDQAgAEHwAGogARAIRQ0AIABBgAFqIAEQCEUNACAAQZABaiABEAhFDQAgAEGgAWogARAIRQ0AIABBsAFqIAEQCEUNACAAQcABaiABEAhFDQAgAEHQAWogARAIRQ0AIABB4AFqIAEQCEUNACAAQfABaiABEAhFDQAgAEGAAmogARAIRQ0AIABBkAJqIAEQCEUNACAAQaACaiABEAhFDQAgAEGwAmogARAIRQ0AIABBwAJqIAEQCEUNACAAQdACaiABEAhFDQAgAEHgAmogARAIRQ0AIABB8AJqIAEQCEUNACAAQYADaiABEAhFDQAgAEGQA2ogARAIRQ0AIABBoANqIAEQCEUNACAAQbADaiABEAhFDQAgAEHAA2ogARAIRQ0AIABB0ANqIAEQCEUNACAAQeADaiABEAhFDQAgAEHwA2ogARAIRQ0AIABBgARqIAEQCCECCyACC7wCAQN/IAAgATYCDCAAQQA2AgggAEIANwIAIABBEGoiAkIANwAFIAJCADcCACAAQQA2AjAgAEIANwIoIABCADcCICAAQQA2AkQgAEIANwI8IABCADcCNCAAQQA2AlggAEIANwJQIABCADcCSCAAQQA2AmQgAEIANwJcAkACQCABRQRAIABBADYCcCAAQgA3AmgMAQsgAUGAgICABE8NASAAIAFBAnQiARAGIgI2AlwgACABIAJqIgM2AmQgAUUiBEUEQCACQQAgAfwLAAsgAEEANgJwIABCADcCaCAAIAM2AmAgACABEAYiAjYCaCAAIAEgAmoiAzYCcCAERQRAIAJBACAB/AsACyAAIAM2AmwLIABBADYClAEgAEIANwKMASAAQgA3AoQBIABCADcCfCAAQgA3AnQgAA8LEAcAC4cBAQF/IAAoAowBIgEEQCAAIAE2ApABIAEQBQsgACgCgAEiAQRAIAAgATYChAEgARAFCyAAKAJ0IgEEQCAAIAE2AnggARAFCyAAKAJoIgEEQCAAIAE2AmwgARAFCyAAKAJcIgEEQCAAIAE2AmAgARAFCyAAQcgAahAlIABBNGoQJSAAQSBqECULvwIBA38gACABNgIMIABBADYCCCAAQgA3AgAgAEEANgIgIABCADcCGCAAQgA3AhAgAEEANgI0IABCADcCLCAAQgA3AiQgAEEANgJIIABCADcCQCAAQgA3AjggAEEANgJcIABCADcCVCAAQgA3AkwgAEEANgJoIABCADcCYAJAAkAgAUUEQCAAQQA2AnQgAEIANwJsDAELIAFBgICAgARPDQEgACABQQJ0IgEQBiICNgJgIAAgASACaiIDNgJoIAFFIgRFBEAgAkEAIAH8CwALIABBADYCdCAAQgA3AmwgACADNgJkIAAgARAGIgI2AmwgACABIAJqIgM2AnQgBEUEQCACQQAgAfwLAAsgACADNgJwCyAAQQA2ApgBIABCADcCkAEgAEIANwKIASAAQgA3AoABIABCADcCeCAADwsQBwALjgEBAX8gACgCkAEiAQRAIAAgATYClAEgARAFCyAAKAKEASIBBEAgACABNgKIASABEAULIAAoAngiAQRAIAAgATYCfCABEAULIAAoAmwiAQRAIAAgATYCcCABEAULIAAoAmAiAQRAIAAgATYCZCABEAULIABBzABqECUgAEE4ahAlIABBJGoQJSAAQRBqECULdAEBfyACRQRAIAAoAgQgASgCBEYPCyAAIAFGBEBBAQ8LIAEoAgQiAi0AACEBAkAgACgCBCIDLQAAIgBFDQAgACABRw0AA0AgAi0AASEBIAMtAAEiAEUNASACQQFqIQIgA0EBaiEDIAAgAUYNAAsLIAAgAUYLBgAQvQEAC1cCAX8BfgJAQbT6ACgCACIBrSAArUIHfEL4////H4N8IgJC/////w9YBEAgAqciAD8AQRB0TQ0BIAAQAg0BC0GA+wBBMDYCAEF/DwtBtPoAIAA2AgAgAQsYACAALQAAQSBxRQRAIAEgAiAAEMABGgsLagICfwF+AkAgAEEFSw0AIAIpAxAiBSACKQMIWQ0AIAIoAgAgBadqLAAAIQMgAiAFQgF8NwMQIAEgA0EASAR/IABBAWogASACED9FDQEgA0H/AHEg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AgAgAkUNACACEAULDwsQBwAL6gcCBH8IfiMAQeAAayIDJAAgACgCECEFIAEoAgAhBCADQQE6AFggAyAENgJUIAMgBDYCUCADIAU2AkwCQCAEQX9GDQAgBSgCACAEQQJ0aigCACIFIAAoAhQiBigCBCAGKAIAIgZrQQJ1Tw0AIAAoAgggBiAFQQJ0aigCAEECdGooAgAhBiAAKAIEIgUtAFRFBEAgBSgCRCAGQQJ0aigCACEGCyADQgA3A0AgA0IANwM4IANCADcDMCADIAY2AhggBSADQRhqIAUsABggA0EwahAfA0ACfyAAKAIcRQRAIAEoAgAiBEF/Rg0DIARBAWoiBSAEQQJrIAVBA3AbIQUgBEEBayAEQQNwDQEaIARBAmoMAQsgBEEBaiIFIARBAmsgBUEDcBshBSAEQQFrIARBA3ANABogBEECagshBiAFQX9GDQEgACgCECgCACAFQQJ0aigCACIFIAAoAhQiBCgCBCAEKAIAIgRrQQJ1Tw0BIAAoAgggBCAFQQJ0aigCAEECdGooAgAhBSAAKAIEIgQtAFRFBEAgBCgCRCAFQQJ0aigCACEFCyADQgA3AyggA0IANwMgIANCADcDGCADIAU2AgAgBCADIAQsABggA0EYahAfIAZBf0YNASAAKAIQKAIAIAZBAnRqKAIAIgUgACgCFCIEKAIEIAQoAgAiBGtBAnVPDQEgACgCCCAEIAVBAnRqKAIAQQJ0aigCACEFIAAoAgQiBC0AVEUEQCAEKAJEIAVBAnRqKAIAIQULIANCADcDECADQgA3AwggA0IANwMAIAMgBTYCXCAEIANB3ABqIAQsABggAxAfIAkgAykDACADKQMwIgl9IgcgAykDICADKQM4Igh9Igp+fSADKQMIIAh9IgggAykDGCAJfSINfnwhCSALIAcgAykDKCADKQNAIgt9Ig5+fCADKQMQIAt9IgcgDX59IQsgDCAIIA5+fSAHIAp+fCEMIANBzABqEG8gAygCVCIEQX9HDQALIAwgDEI/hyIHhSAHfSEHQv///////////wAhCCALIAtCP4ciCoUgCn0iCkL///////////8AhSENAkACQCAAKAIcRQRAIAcgDVYNAkJ/IAcgCnwiByAJIAlCP4ciCIUgCH0iCHzEIAcgCEL///////////8AhVYbIghCgICAgAJVDQEMAgsg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QCAAIAEoAgAQTyABKAIEIAEsACdBAEgEQCABKAIcEAULIAEsABtBAEgEQCABKAIQEAULIAEQBSIBDQALCwsEAEECCyUBAX8gAEHMGTYCACAAKAIgIgEEQCAAIAE2AiQgARAFCyAAEAULygIBBn8CQAJAAkAgACgCBCICIAAoAgAiA2siBkECdSIEIAFJBEAgACgCCCADayIFQQJ1IAFPBEAgASAEa0ECdCIBBEAgAkEAIAH8CwALIAAgASACajYCBA8LIAFBgICAgARPDQJB/////wMgBUEBdSICIAEgASACSRsgBUH8////B08bIgJBgICAgARPDQMgAkECdCIFEAYiByAGaiECIAEgBGtBAnQiAQRAIAJBACAB/AsACyACIARBAnRrIQQgBgRAIAQgAyAG/AoAAAsgACAFIAdqNgIIIAAgASACajYCBCAAIAQ2AgAgA0UNASADEAUPCyABIARPDQAgAiADIAFBAnRqIgNHBEADQCACQQRrIgIoAgAhASACQQA2AgAgAQRAIAEgASgCACgCBBECAAsgAiADRw0ACwsgACADNgIECw8LEAcACxAOAAvpCAEHfwJAIARBAEwNACAAKAIIIgcgACgCBCIIayAETgRAIAggAWsiByAESARAAkAgAyACIAdqIgVGBEAgCCEGDAELIAghBgNAIAYgBS0AADoAACAGQQFqIQYgBUEBaiIFIANHDQALCyAAIAY2AgQgB0EATA0CIAYgASAEamshCQJAIAggBiAEayIDTQRAIAYhBQwBCwJAIAQgCGoiCiAGa0EHcSILRQRAIAYhBQwBC0EAIQQgBiEFA0AgBSADLQAAOgAAIAVBAWohBSADQQFqIQMgBEEBaiIEIAtHDQALCyAGIAprQXhLDQADQCAFIAMtAAA6AAAgBSADLQABOgABIAUgAy0AAjoAAiAFIAMtAAM6AAMgBSADLQAEOgAEIAUgAy0ABToABSAFIAMtAAY6AAYgBSADLQAHOgAHIAVBCGohBSADQQhqIgMgCEcNAAsLIAAgBTYCBCAJBEAgBiAJayABIAn8CgAACwJAIAdBB3EiAEUEQCABIQUMAQtBACEDIAEhBQNAIAUgAi0AADoAACACQQFqIQIgBUEBaiEFIANBAWoiAyAARw0ACwsgASAIa0F4Sw0CIAEgB2ohAANAIAUgAi0AADoAACAFIAIt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DQEgAkEEaiICIAhJDQALDAELQQEhBSABIARPDQAgBCABa0H/AXFBAnQiAEUNACADIAFBAnRqQQAgAPwLAAsgBSEIDAILIAkgASgCADYCCAJAAkAgAkH/AXEiBCAALQAYIgEgASAESxtFDQAgACgCACIBKAIAIAApAzAgACkDKCAJNQIIfnynaiECIAEoAgQhCCAALQAgQQFxBEAgAiAITw0CA0AgAisDACINvSIKQv///////////wCDIgtQIApCAX1C/////////wdUciALQoCAgICAgIAIfUKAgICAgICA8P8AVCAKQgBZcXJFDQMgDUQAAAAAAADwP2QNAyADIAZBAnRqIA1EAADg////70GiRAAAAAAAAOA/oJz8AzYCACAGQQFqIgYgBCAALQAYIgEgASAESxtPDQIgAkEIaiICIAhJDQALDAILIAIgCE8NAQNAIAIrAwAiDb0iCkL///////////8AgyILUCAKQgF9Qv////////8HVHIgC0KAgICAgICACH1CgICAgICAgPD/AFQgCkIAWXFyRQ0CIA1EAADg////70FmDQIgAyAGQQJ0aiAN/AM2AgAgBkEBaiIGIAQgAC0AGCIBIAEgBEsbTw0BIAJBCGoiAiAISQ0ACwwBC0EBIQUgASAETw0AIAQgAWtB/wFxQQJ0IgBFDQAgAyABQQJ0akEAIAD8CwALIAUhCAwBCwJAIAJB/wFxIgUgAC0AGCIEIAQgBUsbRQ0AIAAoAgAiBCgCBCIHIAQoAgAgACkDMCAAKQMoIAE1AgB+fKdqIgZNDQFBACEBA0AgAyABQQJ0aiAGLQAANgIAIAFBAWoiASAFIAAtABgiBCAEIAVLG08NASAGQQFqIgYgB0kNAAsMAQtBASEIIAQgBU8NACACIARrQf8BcUECdCIARQ0AIAMgBEECdGpBACAA/AsACyAJQRBqJAAgCAuREwQGfwF9AXwBfiMAQRBrIgkkAAJAIANFDQACQAJAAkACQAJAAkACQAJAAkACQAJAIAAoAhxBAWsOCwABAgMEBQYHCAkKCwsCQCACQf8BcSIFIAAtABgiBCAEIAVLG0UNACAAKAIAIgQoAgQiCCAEKAIAIAApAzAgACkDKCABNQIAfnynaiIGTQ0LQQAhAQNAIAMgAUECdGogBiwAADYCACABQQFqIgEgBSAALQAYIgQgBCAF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ACIEKAIAIAApAzAgACkDKCABNQIAfnynaiEBIAQoAgQhBwNAIAEgB08NBSABKQMAIgtC//8DVg0FIAMgBkEBdGogCz0BACABQQhqIQEgBkEBaiIGIAUgAC0AGCIEIAQgBUsbSQ0ACwtBASEIIAQgBU8NAyACIARrQf8BcUEBdCIARQ0DIAMgBEEBdGpBACAA/AsADAMLIAkgASgCADYCDAJAAkAgAkH/AXEiBCAALQAYIgEgASAESxtFDQAgACgCACIBKAIAIAApAzAgACkDKCAJNQIMfnynaiECIAEoAgQhCCAALQAgQQFxBEAgAiAITw0CA0AgAioCACINvCIBQf////8HcSIHRSABQQFrQf///wNJciAHQYCAgARrQYCAgPgHSSABQQBOcXJFDQMgDUMAAIA/Xg0DIAMgBkEBdGogDbtEAAAAAOD/70CiRAAAAAAAAOA/oJz8AzsBACAGQQFqIgYgBCAALQAYIgEgASAESxtPDQIgAkEEaiICIAhJDQALDAILIAIgCE8NAQNAIAIqAgAiDbwiAUH/////B3EiB0UgAUEBa0H///8DSXIgB0GAgIAEa0GAgID4B0kgAUEATnFyRQ0CIA1DAP9/R2ANAiADIAZBAXRqIA38ATsBACAGQQFqIgYgBCAALQAYIgEgASAESxtPDQEgAkEEaiICIAhJDQALDAELQQEhBSABIARPDQAgBCABa0H/AXFBAXQiAEUNACADIAFBAXRqQQAgAPwLAAsgBSEIDAILIAkgASgCADYCCAJAAkAgAkH/AXEiBCAALQAYIgEgASAESxtFDQAgACgCACIBKAIAIAApAzAgACkDKCAJNQIIfnynaiECIAEoAgQhCCAALQAgQQFxBEAgAiAITw0CA0AgAisDACIOvSILQv///////////wCDIgxQIAtCAX1C/////////wdUciAMQoCAgICAgIAIfUKAgICAgICA8P8AVCALQgBZcXJFDQMgDkQAAAAAAADwP2QNAyADIAZBAXRqIA5EAAAAAOD/70CiRAAAAAAAAOA/oJz8AzsBACAGQQFqIgYgBCAALQAYIgEgASAESxtPDQIgAkEIaiICIAhJDQALDAILIAIgCE8NAQNAIAIrAwAiDr0iC0L///////////8AgyIMUCALQgF9Qv////////8HVHIgDEKAgICAgICACH1CgICA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IQIMAQsgAUH4////B3EiBEEIahAGIQIgAyAEQfj///8HazYCDCADIAE2AgggAyACNgIECyABBEAgAiADQRBqIAH8CgAACyABIAJqQQA6AAAgAEF+NgIAIABBBGohACADLAAPQQBOBEAgACADKAIMNgIIIAAgAykCBDcCAAwCCyAAIAMoAgQiACADKAIIEA0gABAFDAELIAIgASgCACAFp2oiBC0ABDoABCACIAQoAAA2AAAgASABKQMQQgV8IgU3AxAgAigAAEHEpIWaBHMgAi0ABEHPAHNyBEBBGBAGIgFBADoAESABQYsMLQAAOgAQIAFBgwwpAAA3AAggAUH7CykAADcAACAAQX82AgAgAEEEaiABQREQDSABEAUMAQsgBSABKQMIWQRAIANBEGoQGSIBQff///8HTw0CAkAgAUEKTQRAIAMgAToADyADQQRqIQIMAQsgAUH4////B3EiBEEIahAGIQIgAyAEQfj///8HazYCDCADIAE2AgggAyACNgIECyABBEAgAiADQRBqIAH8CgAACyABIAJqQQA6AAAgAEF+NgIAIABBBGohACADLAAPQQBOBEAgACADKAIMNgIIIAAgAykCBDcCAAwCCyAAIAMoAgQiACADKAIIEA0gABAFDAELIAIgASgCACAFp2otAAA6AAUgASABKQMQQgF8IgU3AxAgBSABKQMIWQRAIANBEGoQGSIBQff///8HTw0CAkAgAUEKTQRAIAMgAToADyADQQRqIQIMAQsgAUH4////B3EiBEEIahAGIQIgAyAEQfj///8HazYCDCADIAE2AgggAyACNgIECyABBEAgAiADQRBqIAH8CgAACyABIAJqQQA6AAAgAEF+NgIAIABBBGohACADLAAPQQBOBEAgACADKAIMNgIIIAAgAykCBDcCAAwCCyAAIAMoAgQiACADKAIIEA0gABAFDAELIAIgASgCACAFp2otAAA6AAYgASABKQMQQgF8IgU3AxAgBSABKQMIWQRAIANBEGoQGSIBQff///8HTw0CAkAgAUEKTQRAIAMgAToADyADQQRqIQIMAQsgAUH4////B3EiBEEIahAGIQIgAyAEQfj///8HazYCDCADIAE2AgggAyACNgIECyABBEAgAiADQRBqIAH8CgAACyABIAJqQQA6AAAgAEF+NgIAIABBBGohACADLAAPQQBOBEAgACADKAIMNgIIIAAgAykCBDcCAAwCCyAAIAMoAgQiACADKAIIEA0gABAFDAELIAIgASgCACAFp2otAAA6AAcgASABKQMQQgF8IgU3AxAgBSABKQMIWQRAIANBBGogA0EQahBlIQEgAEF+NgIAIABBBGohACABLAALQQBOBEAgACABKAIINgIIIAAgASkCADcCAAwCCyAAIAEoAgAgASgCBBANIAEsAAtBAE4NASABKAIAEAUMAQsgAiABKAIAIAWnai0AADoACCABIAEpAxAiBUIBfCIGNwMQIAEpAwggBUIDfFMEQCADQQRqIANBEGoQZSEBIABBfjYCACAAQQRqIQAgASwAC0EATgRAIAAgASgCCDYCCCAAIAEpAgA3AgAMAgsgACABKAIAIAEoAgQQDSABLAALQQBODQEgASgCABAFDAELIAIgASgCACAGp2ovAAA7AQogASABKQMQQgJ8NwMQIABCADcCCCAAQgA3AgALIANBMGokAA8LECkACzMAIABBADYCACAAIAE2AjggAEIANwMwIAAgBTcDKCAAIAQ6ACAgACADNgIcIAAgAjoAGAvCAQECfwJAIAAgAUcEQCAAIAEoAgQiAgR/IAAoAgAhAyAAKAIIQQV0IAJJBEAgAwRAIAMQBSAAQQA2AgggAEIANwIAIAEoAgQhAgsgAkEASA0DIAJBAWtBBXZBAWpBACACGyICQQJ0EAYhAyAAIAI2AgggAEEANgIEIAAgAzYCACABKAIEIQILIAJBAWtBA3ZB/P///wFxQQRqQQAgAhsiAARAIAMgASgCACAA/AoAAAsgASgCBAVBAAs2AgQLDwsQBwAL0gQBBH8gASAAIAFGIgQ6AAwCQCAEDQADQCABKAIIIgQtAAwNAQJAAkAgBCgCCCICKAIAIgMgBEYEQAJAIAIoAgQiBUUNACAFLQAMDQAgBEEBOgAMIAIgACACRjoADCAFQQE6AAwMAgsCQCAEKAIAIAFGBEAgBCEBDAELIAQgBCgCBCIBKAIAIgA2AgQCQCAARQRAIAEgAjYCCCACIAE2AgAMAQsgACAENgIIIAQoAggiAygCACABIAM2AgggBEYEQCADIAE2AgAMAQsgAyABNgIECyABIAQ2AgAgBCABNgIIIAEoAggiAigCACEDCyABQQE6AAwgAkEAOgAMIAIgAygCBCIANgIAIAAE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DQAgARAFCyAGDwsQBwALWAAgAEEANgI4IABCADcCMCAAQgA3AiggAEIANwIgIABCADcCGCAAQgA3AhAgAEIANwIIIABCADcCACAAQgA3AkAgAEIANwJIIABCADcCUCAAIAA2AjwgAAsEAEECC08BA38jAEEQayICJAAgAQRAIAAgASgCABCAASABKAIEIQMgASgCGCEEIAIgAUEUajYCDCACQQxqIAQQTyABEAUgACADEIABCyACQRBqJAALawICfwF+AkAgAEEFSw0AIAIpAxAiBSACKQMIWQ0AIAIoAgAgBadqLAAAIQMgAiAFQgF8NwMQIAEgA0EASAR/IABBAWogASACEIEBRQ0BIANB/wBxIAEoAgBBB3RyBSADCzYCAEEBIQQLIAQLEAAgACgCBCAAKAIAa0ECdQsHACAAKAJQCwsAIAAEQCAAEAULC8cBAQZ/IwBBEGsiAiQAIAAoAhgiAwRAIAMiASAAKAIcIgRHBEADQCAEQQRrIgQoAgAhASAEQQA2AgAgAQRAIAEoAhAhBSACIAFBDGo2AgwgAkEMaiIGIAUQHiABKAIEIQUgAiABNgIMIAYgBRAhIAEQBQsgAyAERw0ACyAAKAIYIQELIAAgAzYCHCABEAULIAAoAhAhAyACIABBDGo2AgwgAkEMaiIBIAMQHiAAKAIEIQMgAiAANgIMIAEgAxAhIAJBEGokACAACzcAIABBADYCKCAAQeDnADYCACAAQgA3AgQgAEIANwIMIABCADcCFCAAQgA3AhwgAEEAOwEkIAALgAEBA38gAEHg5wA2AgAgACgCFCICBEAgACACNgIYIAIQBQsgACgCCCICBEAgAiIBIAAoAgwiA0cEQANAIANBBGsiAygCACEBIANBADYCACABBEAgASABKAIAKAIEEQIACyACIANHDQALIAAoAgghAQsgACACNgIMIAEQBQsgABAFC20BAn9BKBAGIgJBfzYCACACQQhqIgNCADcDECADQQA2AgggA0IANwMAIANCADcDGCAAIAIgACgCACgCEBEEACABKAJYIQAgASACNgJYIAAEQCAAKAIIIgEEQCAAIAE2AgwgARAFCyAAEAULQQELpAEBBH8gACgCACIEKAIAIgMEQCADIgEgBCgCBCICRwRAA0AgAkEMaygCACIBBEAgAkEIayABNgIAIAEQBQsgAkEcaygC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A0EgahAcIAMoAhwLIgk2AhQgACgCCCEBAkAgBEEDcARAIARBAWshAgwBCyAEQQJqIgJBf0YNAQsgASgCDCACQQJ0aigCACICQX9GDQAgAkF/QQIgAkEDcBtqIgJBf0YNACAEIQYgAiAERg0AA0AgAiEFAkACQCAAKALcASICIAAoAtgBIgdGDQBBASACIAdrQZABbSICIAJBAU0bIQhBACECA0AgByACQZABbGooAiAiCyAFQQJ0IgxqKAIAIAsgBkECdGooAgBGBEAgCCACQQFqIgJHDQEMAgsLIAogDGogCSADKAIQa0ECdTYCACADIAU2AgwgAyAJNgIcIAMoAhghASADIANBEGo2AiggAyADQQxqNgIkIAMgA0EcajYCICADAn8gASAJSwRAIAkgBTYCACAJQQRqDAELIANBIGoQHCADKAIcCyIJNgIUIAAoAgghAQwBCyAKIAVBAnRqIAogBkECdGooAgA2AgALAkAgBUEDcARAIAVBAWshAgwBCyAFQQJqIgJBf0YNAgsgASgCDCACQQJ0aigCACICQX9GDQEgAkF/QQIgAkEDcBtqIgJBf0YNASAFIQYgAiAERw0ACwsgDkEBaiIOIAEoAhwgASgCGCICa0ECdUgNAAsMAQsQBwALAkAgACgCBCIGKAIsIgAoAmQiASAAKAJgIgBGDQBBACECIAEgAGtBDG0iAUECTwRAIAFBAXEgAUF+cSEBQQAhBANAIAogAkEMbCIHaiIIKQIAIRIgACAHaiIHIAgoAgg2AgggByASNwIAIAogAkEBckEMbCIHaiIIKQIAIRIgACAHaiIHIAgoAgg2AgggByASNwIAIAJBAmohAiAEQQJqIgQgAUcNAAtFDQELIAogAkEMbCIBaiICKQIAIRIgACABaiIAIAIoAgg2AgggACASNwIACyAGKAIEIAkgAygCEGtBAnU2AlBBAQshAiAKBEAgChAFCyADKAIQIgBFDQAgAyAANgIUIAAQBQsgA0EwaiQAIAILVQAgAC0ATEEBRgRAIABBADoATCAAIAApAzggADUCSEIHfEIDiHw3AzgLIAAvASZBgQRNBEAgAEEAOgCEASAAIAApA3AgADUCgAFCB3xCA4h8NwNwCwuZBgEMfyMAQRBrIgokACAKIAEoAgAiCDYCBEF/IQECQCAIQX9GBEAgCkF/NgIIDAELIAog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aiEFIAAgB0cEQCAAIQIgBSEBA0AgASACKAIANgIAIAEgAigCBDYCBCABIAIoAgg2AgggASACKAIMNgIMIAJBADYCDCACQgA3AgQgASACKAIQNgIQIAEgAigCFDYCFCABIAIoAhg2AhggAkEANgIYIAJCADcCECACLQAcIQYgAUEANgIoIAFCADcCICABIAY6ABwgASACKAIgNgIgIAEgAigCJDYCJCABIAIoAig2AiggAkEANgIoIAJCADcCICABQQA2AjQgAUIANwIsIAEgAigCLDYCLCABIAIoAjA2AjAgASACKAI0NgI0IAJBADYCNCACQgA3AiwgAUEANgJAIAFCADcCOCABIAIoAjg2AjggASACKAI8NgI8IAEgAigCQDYCQCACQQA2AkAgAkIANwI4IAEgAigCRDYCRCACKAJIIQYgAUEANgJUIAFCADcCTCABIAY2AkggASACKAJMNgJMIAEgAigCUDYCUCABIAIoAlQ2AlQgAkEANgJUIAJCADcCTCABQQA2AmAgAUIANwJYIAEgAigCWDYCWCABIAIoAlw2AlwgASACKAJgNgJgIAJBADYCYCACQgA3AlggAi0AZCEGIAFBADYCcCABQgA3AmggASAGOgBkIAEgAigCaDYCaCABIAIoAmw2AmwgASACKAJwNgJwIAJBADYCcCACQgA3AmggAUEANgJ8IAFCADcCdCABIAIoAnQ2AnQgASACKAJ4NgJ4IAEgAigCfDYCfCACQQA2AnwgAkIANwJ0IAIoAoABIQYgAUEANgKMASABQgA3AoQBIAEgBjYCgAEgASACKAKEATYChAEgASACKAKIATYCiAEgASACKAKMATYCjAEgAkEANgKMASACQgA3AoQBIAFBkAFqIQEgAkGQAWoiAiAHRw0ACwNAIAAoAoQBIgEEQCAAIAE2AogBIAEQBQsgACgCdCIBBEAgACABNgJ4IAEQBQsgACgCaCIBBEAgACABNgJsIAEQBQsgAEEEahBOIABBkAFqIgAgB0cNAAsgAygCACEACyADKAIIIQEgBCgCCCECIAMgBCgCDDYCCCADIAI2AgQgAyAFNgIAIAQgATYCDCAEIAA2AgggBCAANgIEIAQgADYCAAJAIAQoAgQiAyAEKAIIIgJGBEAgAiEBDAELA0AgAkEMaygCACIABEAgAkEIayAANgIAIAAQBQsg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DwsQDgALnQIBCX8CQAJAIAAoAgwiAiAAKAIIIgZHDQAgACgCBCIEIAAoAgAiB0cEQCAEIAQgB2tBAnVBAWpBfm1BAnQiAmohAyAGIARrIgUEQCADIAQgBfwKAAALIAAgACgCBCACajYCBCADIAVqIQYMAQtBASACIAdrQQF1IAQgBkYiBRsiA0GAgICABE8NASADQQJ0IgIQBiIJIAJqIQogCSADQXxxaiIDIQggBUUEQCADIAYgBGtqIQggAyEFIAQhAgNAIAUgAigCADYCACACQQRqIQIgBUEEaiIFIAhHDQALCyAAIAo2AgwgACADNgIEIAAgCTYCACAAIAg2AgggBEUNACAHEAULIAYgASgCADYCACAAIAZBBGo2AggPCxAOAAvuAQEDfyAAQYQRNgIAIAAoAjwiAwRAIAMiASAAKAJAIgJHBEADQCACQQRrIgIoAgAhASACQQA2AgAgAQRAIAEQFwsgAiADRw0ACyAAKAI8IQELIAAgAzYCQCABEAULIAAoAjAiAQRAIAAgATYCNCABEAULIAAoAiQiAwRAIAMiASAAKAIoIgJHBEADQCACQRhrIgIgAigCACgCABEAABogAiADRw0ACyAAKAIkIQELIAAgAzYCKCABEAULIABB9A82AgAgACgCECIBBEAgACABNgIUIAEQBQsgACgCBCIBBEAgACABNgIIIAEQBQsgAAuFAgEIfwJAIAAoAhAiA0UNACAAQRBqIQUgASgCACEBA0AgAygCECIEIAFKBEAgAygCACIDDQEMAgsgASAESgRAIAMoAgQiAw0BDAILCyADIAVGDQAgAygCGCIBRQ0AIANBFGohByACKAIAIAIgAiwACyIDQQBIIgQbIQUgAigCBCADIAQbIQMDQCAFIAEoAhAgAUEQaiABLAAbIgRBAEgiBhsiCCABKAIUIAQgBhsiBCADIAMgBEsiBhsiCRATIgpBAEggAyAESSAKGwR/IAEFIAggBSAJEBMiBEEASCAGIAQbQQFHBEAgByACENYBDwsgAUEEagsoAgAiAQ0ACwsgACACENYBC2sCAn8BfgJAIABBBUsNACACKQMQIgUgAikDCFkNACACKAIAIAWnaiwAACEDIAIgBUIBfDcDECABIANBAEgEfyAAQQFqIAEgAhCiAUUNASADQf8AcSABKAIAQQd0cgUgAws2AgBBASEE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98awPmNFBEAgBEMAAIA/IAeRlSIDlCEKIAUgA5QhCSAGIAOUIQMLIABBCGohACACIAo4AAggAiAJOAAEIAIgAzgAACACQQxqIQIgAUEBaiIBIA1HDQALCyAMC5oBACAAQQE6ADUCQCACIAAoAgRHDQAgAEEBOgA0AkAgACgCECICRQRAIABBATYCJCAAIAM2AhggACABNgIQIANBAUcNAiAAKAIwQQFGDQEMAgsgASACRgRAIAAoAhgiAkECRgRAIAAgAzYCGCADIQILIAAoAjBBAUcNAiACQQFGDQEMAgsgACAAKAIkQQFqNgIkCyAAQQE6ADYLC3YBAX8gACgCJCIDRQRAIAAgAjYCGCAAIAE2AhAgAEEBNgIkIAAgACgCODYCFA8LAkACQCAAKAIUIAAoAjhHDQAgACgCECABRw0AIAAoAhhBAkcNASAAIAI2AhgPCyAAQQE6ADYgAEECNgIYIAAgA0EBajYCJAsLAgALsgEBAX8jAEEgayIHJAAgB0EUaiAAIAEgAmoQswEQeCAAKAIAIAAgACwAC0EASBshAgJAIAVFIgENACABDQAgBygCFCAGIAX8CgAACyADIARrIQECQCADIARGDQAgAUUNACAHKAIUIAVqIAIgBGogAfwKAAALIAcgASAFaiIBNgIYIAcoAhQgAWpBADoAACAHIAcoAhw2AhAgByAHKQIUNwMIIAAgB0EIahC1ASAHQSBqJAALUQECfyAAQeT2ADYCACABEBkiA0ENahAGIgJBADYCCCACIAM2AgQgAiADNgIAIAJBDGohAiADQQFqIgMEQCACIAEgA/wKAAALIAAgAjYCBCAAC0wBAX8gAUH3////B08EQBA8AAtB9v///wcgAUEKIAAoAghB/////wdxQQFrIAAsAAtBAE4bIgBBAXQiAiABIAJLGyAAQfP///8DSxsLXgEBfyMAQRBrIgIkACABQff///8HSQRAAkAgAUEKTQRAIAAgAToACwwBCyACQQRqIAEQeCAAIAIoAgw2AgggACACKQIENwIAIAAoAgAhAAsgAkEQaiQAIAAPCxA8AAsuACAALAALQQBIBEAgACgCCBogACgCABAFCyAAIAEoAgg2AgggACABKQIANwIAC2gBA38jAEEQayIDJAAgA0EAOgAOIAEgAGtBAnUhASACKAIAIQQDQCABBEAgASABQQF2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IAIoAgAgAiAGGyAIEBNFDQILIABBAEgEQCADKAIAEAULIARBBGoiBCAHRw0AC0EAIQQMAQsgBCgCACEEIABBAE4NACADKAIAEAULIANBEGokACAEC5UhAhV/A34jAEEgayIMJABBDBAGIg5BADYCCCAOIAE2AgQgDkEANgIAIA5BDGoiASESAkACQAJAA0AgAUEEaygCACEWAkACQAJAAkACQAJAIAFBDGsiECgCACIRBEBBACEFIBZB6AdKDQggDEEANgIYIAxCADcDECAAKAIAIgIpAwggAikDECIXVw0IIAIoAgAgF6dqLQAAIQEgAiAXQgF8NwMQIAxBEGoiAyABEHcgAQRAIAAoAgAhAiADEHYhAyACKQMIIAIpAxAiFyABrSIYfFMNAyABBEAgAyACKAIAIBenaiAB/AoAAAsgAiACKQMQIBh8NwMQC0EYEAYiCkIANwIQIApCADcCBCAKIApBBGo2AgAgCiAKQRBqNgIMIAxBEGohAiMAQSBrIgQkAAJAAn8CQAJAIBEoAhAiAUUNACARQRBqIQkgAigCACACIAIsAAsiA0EASCIIGyEHIAIoAgQgAyAIGyEDA0AgByABKAIQIAFBEGogASwAGyIIQQBIIgsbIgYgASgCFCAIIAsbIgggAyADIAhLIgsbIg0QEyITQQBIIAMgCEkgExtBAUYEQCABKAIAIgENAQwCCyAGIAcgDRATIghBAEggCyAIG0EBRgRAIAEoAgQiAQ0BDAILCyABIAlHDQELIAQgAjYCECAEIBFBDGo2AhwgAiEBAkACQCAEKAIcIgcoAgQiAkUEQCAHQQRqIgMhAQwBCyABKAIAIAEgASwACyIDQQBIIggbIQkgASgCBCADIAgbIQgDQCAJIAIiASgCECACQRBqIAIsABsiAkEASCIDGyILIAEoAhQgAiADGyICIAggAiAISSIGGyINEBMiA0EASCACIAhLIAMbQQFGBEAgASIDKAIAIgINAQwCC0EAIQMgCyAJIA0QEyICQQBIIAYgAhtBAUcEQCABIQIMAwsgASgCBCICDQALIAFBBGohAwtBIBAGIgJBADYCACACQRBqIQkCQCAEKAIQIggsAAtBAE4EQCAJIAgoAgg2AgggCSAIKQIANwIADAELIAkgCCgCACAIKAIEEA0LIAIgATYCCCACQgA3AgAgAkEANgIcIAMg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IAAoAgQiAkUNACAAQQRqIQYgASgCACABIAEsAAsiAEEASCIEGyEFIAEoAgQgACAEGyEAA0AgBSACKAIQIAJBEGogAiwAGyIBQQBIIgQbIgcgAigCFCABIAQbIgEgACAAIAFLIgQbIggQEyIJQQBIIAAgAUkgCRtBAUYEQCACKAIAIgINAQwCCyAHIAUgCBATIgFBAEggBCABG0EBRgRAIAIoAgQiAg0BDAILCyACIAZGDQAgAigCHCACQRxqIAIsACdBAEgbIQADQCAAIgFBAWohACABLAAAIgJBIEYgAkEJa0EFSXINAAtBASEDAkACQAJAIAJB/wFxQStrDgMBAgACC0EAIQMLIAAsAAAhAiAAIQELQQAhACACQTBrIgJBCU0EQANAIABBCmwgAmshACABLAABIAFBAWohAUEwayICQQpJDQALC0EAIABrIAAgAxshAwsgA0EARyADQX9HcQt4AgF+An8CQCAAQQpLDQAgAikDECIDIAIpAwhZDQAgAigCACADp2osAAAhBSACIANCAXw3AxAgBa0hAyABAn4gBUEASARAIABBAWogASACENcBRQ0CIANC/wCDIAEpAwBCB4aEDAELIANC/wGDCzcDAEEBIQQLIAQL/QMBBn8CQAJAIAFFBEAgAkIAUwRAQQAPCyACpyIBIAAoAgQiBCAAKAIAIgZrIgNLBEAgASAAKAIIIAZrIgVNBEAgASADayIBBEAgBEEAIAH8CwALIAAgASAEajYCBAwDCyABQQBIDQNB/////wcgBUEBdCIEIAEgASAESRsgBUH/////A08bIgUQBiEEIAEgA2siBwRAIAMgBGpBACAH/AsACyADBEAgBCAGIAP8CgAACyAAIAQgBWo2AgggACABIARqNgIEIAAgBDYCACAGRQ0CIAYQBQwCCyABIANPDQEgACABIAZqNgIEDAELIAJCAFMEQEEADwsCQCAAKAIEIgUgACgCACIEayIGrSACWQ0AIAYgAqciA0kEQCADIAAoAgggBGsiB00EQCADIAZrIgMEQCAFQQAgA/wLAAsgACADIAVqNgIEDAILIANBAEgNA0H/////ByAHQQF0IgUgAyADIAVJGyAHQf////8DTxsiBxAGIQUgAyAGayIIBEAgBSAGakEAIAj8CwALIAYEQCAFIAQgBvwKAAALIAAgBSAHajYCCCAAIAMgBWo2AgQgACAFNgIAIARFDQEgBBAFDAELIAMgBk8NACAAIAMgBGo2AgQLIAKnIgNFDQAgACgCACABIAP8CgAACyAAIAApAxhCAXw3AxhBAQ8LEAcAC1ACAn8CfgJ/QQAgACgCICIBKQMIIAEpAxAiA0IEfCIEUw0AGiABKAIAIAOnaigAACECIAEgBDcDEEEAIAJBAEgNABogACgCBCACNgJQQQELC8ILAQh/IwBBIGsiBiQAIAEgAzYCICABIAI2AiggASAENgIEIAAgAyAGQRRqEGYCQCAAKAIADQAgACwAD0EASARAIAAoAgQQBQsgBi0AGyIEIAEgASgCACgCCBEAAEcEQEE4EAYiAUEAOgAyIAFB1QovAAA7ADAgAUHNCikAADcAKCABQcUKKQAANwAgIAFBvQopAAA3ABggAUG1CikAADcAECABQa0KKQAANwAIIAFBpQopAAA3AAAgAEF/NgIAIABBBGogAUEyEA0gARAFDAELIAEgBi0AGSICOgAkIAEgBi0AGiIDOgAlIAJBA2tB/wFxQf0BTQRAQRgQBiIBQQA6ABYgAUHCCykAADcADiABQbwLKQAANwAIIAFBtAspAAA3AAAgAEF7NgIAIABBBGogAUEWEA0gARAFDAELAkAgAkECRw0AQQJBAyAEGyADTw0AQRgQBiIBQQA6ABYgAUGrCykAADcADiABQaULKQAANwAIIAFBnQspAAA3AAAgAEF7NgIAIABBBGogAUEWEA0gARAFDAELIAEoAiAgAkEIdCADciICOwEmAkAgAkH//wNxQYMCSQ0AIAYuAR5BAE4NACMAQRBrIgskAEEkEAYiA0IANwIQIANCADcCBCADQQA2AiAgA0IANwIYIAMgA0EEajYCACADIANBEGo2AgwgC0EMaiIIQQA2AgAgASgCICECIwBBEGsiBSQAAn8CQCADRQ0AIAggAjYCACAFQQA2AghBAEEBIAVBCGogAhA/RQ0BGgJAIAUoAggiDARAA0BBASAFQQRqIAgoAgAQP0UNA0EcEAYiBEIANwIQIARCADcCBCAEIARBBGo2AgAgBCAEQRBqNgIMIAQgBSgCBDYCGCAIIAQQygFFDQIjAEEgayICJAAgAiAENgIIAkAgBEUNACACIAMoAhwiBzYCDCADKAIgIQkgAiADQRhqNgIYIAIgAkEIajYCFCACIAJBDGo2AhAgAwJ/IAcgCUkEQCACQQA2AgggByAENgIAIAdBBGoMAQsgAkEQahCsASACKAIMCzYCHCACKAIIIQQgAkEANgIIIARFDQAgBCgCECEHIAIgBEEMajYCECACQRBqIgkgBxAeIAQoAgQhByACIAQ2AhAgCSAHECEgBBAFCyACQSBqJAAgCkEBaiIKIAxHDQALCyAIIAMQygEMAgsgBCgCECECIAUgBEEMajYCDCAFQQxqIgggAhAeIAQoAgQhAiAFIAQ2AgwgCCACECEgBBAFC0EACyECIAVBEGokAAJAIAIEQCABKAIEIgQoAgQhAiAEIAM2AgQgAgRAIAIQhQEQBQsgAEIANwIIIABCADcCAAwBC0EgEAYiAkEAOgAaIAJB3gwvAAA7ABggAkHWDCkAADcAECACQc4MKQAANwAIIAJBxgwpAAA3AAAgAEF/NgIAIABBBGogAkEaEA0gAhAFIAMQhQEQBQsgC0EQaiQAIAAoAgANASAALAAPQQBODQAgACgCBBAFCyABIAEoAgAoAgwRAABFBEBBKBAGIgFBADoAISABQZsLLQAAOgAgIAFBkwspAAA3ABggAUGLCykAADcAECABQYMLKQAANwAIIAFB+wopAAA3AAAgAEF/NgIAIABBBGogAUEhEA0gARAFDAELIAEgASgCACgCFBEAAEUEQCAGQQhqQeEMEGUhASAAQX82AgAgAEEEaiEAIAEsAAtBAE4EQCAAIAEoAgg2AgggACABKQIANwIADAILIAAgASgCACABKAIEEA0gASwAC0EATg0BIAEoAgAQBQwBCyABIAEoAgAoAhgRAABFBEAgBkEIakHYChBlIQEgAEF/NgIAIABBBGohACABLAALQQBOBEAgACABKAIINgIIIAAgASkCADcCAAwCCyAAIAEoAgAgASgCBBANIAEsAAtBAE4NASABKAIAEAUMAQsgAEIANwIIIABCADcCAAsgBkEgaiQAC7ICAQh/AkACQAJAIAAoAgQiBiAAKAIAIgRrIgVBAnUiAiABSQRAIAAoAgggBGsiA0ECdSABTwRAIAEgAmtBAnQiAQRAIAZBACAB/AsACyAAIAEgBmo2AgQPCyABQYCAgIAETw0CQf////8DIANBAXUiByABIAEgB0kbIANB/P///wdPGyIDQYCAgIAETw0DIANBAnQiCBAGIgkgBWohBSABIAJrQQJ0IgcEQCAFQQAgB/wLAAsgBSACQQJ0ayEDIAQgBkcEQCAEIQEgAyECA0AgAiABKAIANgIAIAJBBGohAiABQQRqIgEgBkcNAAsLIAAgCCAJajYCCCAAIAUgB2o2AgQgACADNgIAIARFDQEgBBAFDwsgASACTw0AIAAgBCABQQJ0ajYCBAsPCxAHAAsQDgALnQEBAn9BwAAQBkEMEAYiAiAAKAIEKAJQNgIIIAJBoOcANgIAIAJBADYCBCACEJwBIQMCQAJAIAFBAEgEQCADIQIMAQsgACgCDCAAKAIIIgJrQQJ1IAFMBH8gAEEIaiABQQFqEFIgACgCCAUgAgsgAUECdGoiACgCACECIAAgAzYCACACRQ0BCyACIAIoAgAoAgQRAgALIAFBf3NBH3YLtRIBC38jAEEwayIDJAACQCABKAIAIgVBf0YEQEEBIQIMAQtBASECIAAoAhggBUEDbiIEQQN2Qfz///8AcWooAgAgBHZBAXENACAAIAAoAjAiAjYCNCADIAI2AhwgACgCOCEEIAMgAEEwaiIKNgIoIAMgATYCJCADIANBHGo2AiAgAAJ/IAIgBEkEQCACIAU2AgAgAkEEagwBCyADQSBqEAkgAygCHAs2AjRBfyEFIAAoAgQhBAJAIAEoAgAiAkF/RgRAIAQoAhwiBigC/P///w8hBAwBCyAEKAIcIgYgAkEBaiIFIAJBAmsgBUEDcBtBAnRqKAIAIQQgAkEDcARAIAJBAWshBQwBCyACQQJqIQULIARBf0YEQEEAIQIMAQsgBiAFQQJ0aigCACIFQX9GBEBBACECDAELIAAoAiQiBiAEQQN2Qfz///8BcWoiBygCACIIQQEgBHQiCXEEfyAGBSAHIAggCXI2AgBBfyEGIAJBf0cEQCACQQFqIgYgAkECayAGQQNwGyEGCyADIAY2AhQgACgCFCECIAMgACgCECgCYCAGQQNuIgdBDGxqIAYgB0EDbGtBAnRqKAIAIgc2AhggAyACKAIEIgIoAgQiBjYCHCACKAIIIQggAyACNgIoIAMgA0EYajYCJCADIANBHGo2AiAgAgJ/IAYgCEkEQCAGIAc2AgAgBkEEagwBCyADQSBqEAkgAygCHAs2AgQgAyAAKAIMIgIoAgQiBjYCHCACKAIIIQcgAyACNgIoIAMgA0EUajYCJCADIANBHGo2AiAgAgJ/IAYgB0kEQCAGIAMoAhQ2AgAgBkEEagwBCyADQSBqEAkgAygCHAs2AgQgACgCDCICKAIMIARBAnRqIAIoAhgiBDYCACACIARBAWo2AhggACgCJAsgBUEDdkH8////AXFqIgIoAgAiBEEBIAV0IgZxRQRAIAIgBCAGcjYCACADAn9BfyABKAIAIgRBf0YNABogBEEBayAEQQNwDQAaIARBAmoLIgI2AhAgACgCFCEEIAMgACgCECgCYCACQQNuIgZBDGxqIAIgBkEDbGtBAnRqKAIAIgY2AhggAyAEKAIEIgIoAgQiBDYCHCACKAIIIQcgAyACNgIoIAMgA0EYajYCJCADIANBHGo2AiAgAgJ/IAQgB0kEQCAEIAY2AgAgBEEEagwBCyADQSBqEAkgAygCHAs2AgQgAyAAKAIMIgIoAgQiBDYCHCACKAIIIQYgAyACNgIoIAMgA0EQajYCJCADIANBHGo2AiAgAgJ/IAQgBkkEQCAEIAMoAhA2AgAgBEEEagwBCyADQSBqEAkgAygCHAs2AgQgACgCDCICKAIMIAVBAnRqIAIoAhgiBTYCACACIAVBAWo2AhgLIAAoAjAiBSAAKAI0IgRGBEBBASECDAELA0AgASAEQQRrIgQoAgAiAjYCAAJAAkACQCACQX9GDQAgAkEDbiICQQN2Qfz///8AcSIGIAAoAhgiB2ooAgAgAnZBAXENACAGIAdqIgUgBSgCAEEBIAJ0cjYCACAAKAIEIgUoAhwgASgCACICQQJ0aigCACIEQX9HDQFBACECDAQLIAAgBDYCNAwBCwNAAkACQCAAKAIkIARBA3ZB/P///wFxaiIHKAIAIghBASAEdCIJcQ0AAkAgBEECdCILIAUoAihqKAIAIgRBf0YEQEEBIQYMAQtBASEGIARBAWoiDCAEQQJrIAxBA3AbIgRBf0YNACAFKAIAIARBA3ZB/P///wFxaigCACAEdkEBcQ0AIAUoAkAoAgwgBEECdGooAgAiBUF/Rg0AIAVBAWoiBCAFQQJrIARBA3AbQX9GIQYLIAcgCCAJcjYCACADIAI2AgwgACgCFCEFIAMgACgCECgCYCACQQNuIgRBDGxqIAIgBEEDbGtBAnRqKAIAIgQ2AhggAyAFKAIEIgIoAgQiBTYCHCACKAIIIQcgAyACNgIoIAMgA0EYajYCJCADIANBHGo2AiAgAgJ/IAUgB0kEQCAFIAQ2AgAgBUEEagwBCyADQSBqEAkgAygCHAs2AgQgAyAAKAIMIgIoAgQiBTYCHCACKAIIIQQgAyACNgIoIAMgA0EMajYCJCADIANBHGo2AiAgAgJ/IAQgBUsEQCAFIAMoAgw2AgAgBUEEagwBCyADQSBqEAkgAygCHAs2AgQgACgCDCICKAIMIAtqIAIoAhgiBTYCACACIAVBAWo2AhggASgCACECIAAoAgQhBSAGDQBBfyEEAkAgAkF/Rg0AIAJBAWoiBiACQQJrIAZBA3AbIgJBf0YNACAFKAIAIAJBA3ZB/P///wFxaigCACACdkEBcQ0AIAUoAkAoAgwgAkECdGooAgAhBAsgASAENgIAIARBA24hAgwBCwJAAkACQAJAIAJBf0YNAEF/IQQCQCACQQFqIgYgAkECayAGQQNwGyIGQX9GDQAgBSgCACAGQQN2Qfz///8BcWooAgAgBnZBAXENACAFKAJAKAIMIAZBAnRqKAIAIQQLIAMgBDYCGAJ/AkAgAkEDcARAIAJBAWshAgwBC0F/IAJBAmoiAkF/Rg0BGgtBfyAFKAIAIAJBA3ZB/P///wFxaigCACACdkEBcQ0AGiAFKAJAKAIMIAJBAnRqKAIACyIGQQNuIQIgBEEDbiEFIARBf0cEQCAAKAIYIgcgBUEDdkH8////AHFqKAIAIAV2QQFxRQ0CCyAGQX9GDQAgBiEEIAAoAhggAkEDdkH8////AHFqKAIAIAJ2QQFxRQ0DCyAAIAAoAjRBBGs2AjQMAQsgBkF/RgRAIAUhAgwCCyAHIAJBA3ZB/P///wBxaigCACACdiAFIQJBAXENASAAKAI0IgJBBGsgBjYCACADIAI2AhwgACgCOCEFIAMgCjYCKCADIANBGGo2AiQgAyADQRxqNgIgIAIgBUkEQCACIAMoAhg2AgAgACACQQRqNgI0DAELIANBIGoQCSAAIAMoAhw2AjQLIAAoAjQhBCAAKAIwIQUMAwsgASAENgIACyAAKAIYIAJBA3ZB/P///wBxaiIFIAUoAgBBASACdHI2AgAgACgCBCIFKAIcIAEoAgAiAkECdGooAgAiBEF/Rw0AC0EAIQIMAgtBASECIAQgBUcNAAsLIANBMGokACACC5YRAQt/IwBBMGsiAyQAAkAgASgCACIEQX9GBEBBASECDAELQQEhAiAAKAIYIARBA24iBUEDdkH8////AHFqKAIAIAV2QQFxDQAgACAAKAIwIgI2AjQgAyACNgIcIAAoAjghBSADIABBMGoiCjYCKCADIAE2AiQgAyADQRxqNgIgIAACfyACIAVJBEAgAiAENgIAIAJBBGoMAQsgA0EgahAJIAMoAhwLNgI0QX8hBSABKAIAIgJBf0YEQEEAIQIMAQsgACgCBCEGIAJBAWoiBCACQQJrIARBA3AbIgRBf0cEQCAGKAIAIARBAnRqKAIAIQULAkAgAkEDcARAIAJBAWshAgwBCyACQQJqIgJBf0cNAEEAIQIMAQsgBUF/RgRAQQAhAgwBCyAGKAIAIAJBAnRqKAIAIgJBf0YEQEEAIQIMAQsgACgCJCIGIAVBA3ZB/P///wFxaiIHKAIAIghBASAFdCIJcQR/IAYFIAcgCCAJcjYCACADIAQ2AhQgACgCFCEGIAMgACgCECgCYCAEQQNuIgdBDGxqIAQgB0EDbGtBAnRqKAIAIgc2AhggAyAGKAIEIgYoAgQiBDYCHCAGKAIIIQggAyAGNgIoIAMgA0EYajYCJCADIANBHGo2AiAgBgJ/IAQgCEkEQCAEIAc2AgAgBEEEagwBCyADQSBqEAkgAygCHAs2AgQgAyAAKAIMIgYoAgQiBDYCHCAGKAIIIQcgAyAGNgIoIAMgA0EUajYCJCADIANBHGo2AiAgBgJ/IAQgB0kEQCAEIAMoAhQ2AgAgBEEEagwBCyADQSBqEAkgAygCHAs2AgQgACgCDCIEKAIMIAVBAnRqIAQoAhgiBTYCACAEIAVBAWo2AhggACgCJAsgAkEDdkH8////AXFqIgQoAgAiBUEBIAJ0IgZxRQRAIAQgBSAGcjYCACADAn9BfyABKAIAIgRBf0YNABogBEEBayAEQQNwDQAaIARBAmoLIgU2AhAgACgCFCEEIAMgACgCECgCYCAFQQNuIgZBDGxqIAUgBkEDbGtBAnRqKAIAIgY2AhggAyAEKAIEIgQoAgQiBTYCHCAEKAIIIQcgAyAENgIoIAMgA0EYajYCJCADIANBHGo2AiAgBAJ/IAUgB0kEQCAFIAY2AgAgBUEEagwBCyADQSBqEAkgAygCHAs2AgQgAyAAKAIMIgQoAgQiBTYCHCAEKAIIIQYgAyAENgIoIAMgA0EQajYCJCADIANBHGo2AiAgBAJ/IAUgBkkEQCAFIAMoAhA2AgAgBUEEagwBCyADQSBqEAkgAygCHAs2AgQgACgCDCIEKAIMIAJBAnRqIAQoAhgiAjYCACAEIAJBAWo2AhgLIAAoAjAiBiAAKAI0IgVGBEBBASECDAELA0AgASAFQQRrIgUoAgAiAjYCAAJAAkACQCACQX9GDQAgAkEDbiICQQN2Qfz///8AcSIEIAAoAhgiB2ooAgAgAnZBAXENACAEIAdqIgQgBCgCAEEBIAJ0cjYCACABKAIAIgJBf0cNAUEAIQIMBAsgACAFNgI0DAELA0AgACgCBCIEKAIAIAJBAnRqKAIAIgVBf0YEQEEAIQIMBAsCQAJAAkACQAJAIAAoAiQgBUEDdkH8////AXFqIgcoAgAiCEEBIAV0IglxRQRAAkAgBUECdCILIAQoAhhqKAIAIgVBf0YEQEEBIQYMAQtBASEGIAVBAWoiDCAFQQJrIAxBA3AbIgVBf0YNACAEKAIMIAVBAnRqKAIAIgRBf0YNACAEQQFqIgUgBEECayAFQQNwG0F/RiEGCyAHIAggCXI2AgAgAyACNgIMIAAoAhQhBCADIAAoAhAoAmAgAkEDbiIFQQxsaiACIAVBA2xrQQJ0aigCACIFNgIYIAMgBCgCBCICKAIEIgQ2AhwgAigCCCEHIAMgAjYCKCADIANBGGo2AiQgAyADQRxqNgIgIAICfyAEIAdJBEAgBCAFNgIAIARBBGoMAQsgA0EgahAJIAMoAhwLNgIEIAMgACgCDCICKAIEIgQ2AhwgAigCCCEFIAMgAjYCKCADIANBDGo2AiQgAyADQRxqNgIgIAICfyAEIAVJBEAgBCADKAIMNgIAIARBBGoMAQsgA0EgahAJIAMoAhwLNgIEIAAoAgwiAigCDCALaiACKAIYIgQ2AgAgAiAEQQFqNgIYIAEoAgAhAiAAKAIEIQQgBkUEQCABAn9BfyACQX9GDQAaQX8gAkEBaiIGIAJBAmsgBkEDcBsiAkF/Rg0AGiAEKAIMIAJBAnRqKAIACyIFNgIAIAVBA24hAgwGCyACQX9GDQELQX8hBSACQQFqIgYgAkECayAGQQNwGyIGQX9HBEAgBCgCDCAGQQJ0aigCACEFCyADIAU2AhgCfwJAIAJBA3AEQCACQQFrIQIMAQtBfyACQQJqIgJBf0YNARoLIAQoAgwgAkECdGooAgALIgZBA24hAiAFQQNuIQQgBUF/RwRAIAAoAhgiByAEQQN2Qfz///8AcWooAgAgBHZBAXFFDQILIAZBf0YNACAGIQUgACgCGCACQQN2Qfz///8AcWooAgAgAnZBAXFFDQMLIAAgACgCNEEEazYCNAwBCyAGQX9GBEAgBCECDAILIAcgAkEDdkH8////AHFqKAIAIAJ2IAQhAkEBcQ0BIAAoAjQiAkEEayAGNgIAIAMgAjYCHCAAKAI4IQQgAyAKNgIoIAMgA0EYajYCJCADIANBHGo2AiAgAiAESQRAIAIgAygCGDYCACAAIAJBBGo2AjQMAQsgA0EgahAJIAAgAygCHDYCNAsgACgCNCEFIAAoAjAhBgwDCyABIAU2AgALIAAoAhggAkEDdkH8////AHFqIgQgBCgCAEEBIAJ0cjYCACABKAIAIgJBf0cNAAtBACECDAILQQEhAiAFIAZHDQALCyADQTBqJAAgAguGGAEPfyMAQTBrIgQkAAJAAkACQCAAKAJcIAAoAlhGDQAgBCAAKAI0IgY2AhwgACgCOCEDIAQgAEEwaiIPNgIoIAQgATYCJCAEIARBHGo2AiAgAAJ/IAMgBksEQCAGIAEoAgA2AgAgBkEEagwBCyAEQSBqEAkgBCgCHAs2AjQgAEEANgJUQX8hBgJ/QX8gASgCACICQX9GDQAaIAAoAgQhAyACQQFqIgUgAkECayAFQQNwGyIFQX9HBEAgAygCACAFQQJ0aigCACEGCwJAIAJBA3AEQCACQQFrIQUMAQtBfyACQQJqIgVBf0YNARoLIAMoAgAgBUECdGooAgALIQMgACgCJCIIIAZBA3ZB/P///wFxaiIFKAIAIgdBASAGdCIJcUUEQCAFIAcgCXI2AgBBfyEIIAJBf0cEQCACQQFqIgUgAkECayAFQQNwGyEICyAEIAg2AhQgACgCFCECIAQgACgCECgCYCAIQQNuIgVBDGxqIAggBUEDbGtBAnRqKAIAIgc2AhggBCACKAIEIgIoAgQiBTYCHCACKAIIIQggBCACNgIoIAQgBEEYajYCJCAEIARBHGo2AiAgAgJ/IAUgCEkEQCAFIAc2AgAgBUEEagwBCyAEQSBqEAkgBCgCHAs2AgQgBCAAKAIMIgIoAgQiBTYCHCACKAIIIQcgBCACNgIoIAQgBEEUajYCJCAEIARBHGo2AiAgAgJ/IAUgB0kEQCAFIAQoAhQ2AgAgBUEEagwBCyAEQSBqEAkgBCgCHAs2AgQgACgCDCICKAIMIAZBAnRqIAIoAhgiBjYCACACIAZBAWo2AhggACgCJCEIIAEoAgAhAgsgCCADQQN2Qfz///8BcWoiBigCACIFQQEgA3QiB3FFBEAgBiAFIAdyNgIAIAQCf0F/IAJBf0YNABogAkEBayACQQNwDQAaIAJBAmoLIgY2AhAgACgCFCECIAQgACgCECgCYCAGQQNuIgVBDGxqIAYgBUEDbGtBAnRqKAIAIgU2AhggBCACKAIEIgYoAgQiAjYCHCAGKAIIIQcgBCAGNgIoIAQgBEEYajYCJCAEIARBHGo2AiAgBgJ/IAIgB0kEQCACIAU2AgAgAkEEagwBCyAEQSBqEAkgBCgCHAs2AgQgBCAAKAIMIgYoAgQiAjYCHCAGKAIIIQUgBCAGNgIoIAQgBEEQajYCJCAEIARBHGo2AiAgBgJ/IAIgBUkEQCACIAQoAhA2AgAgAkEEagwBCyAEQSBqEAkgBCgCHAs2AgQgACgCDCIGKAIMIANBAnRqIAYoAhgiAzYCACAGIANBAWo2AhggASgCACECC0F/IQYgAkF/RwRAIAAoAgQoAgAgAkECdGooAgAhBgsgACgCJCAGQQN2Qfz///8BcWoiAygCACIFQQEgBnQiB3FFBEAgAyAFIAdyNgIAIAQgAjYCDCAAKAIUIQMgBCAAKAIQKAJgIAJBA24iBUEMbGogAiAFQQNsa0ECdGooAgAiBTYCGCAEIAMoAgQiAygCBCICNgIcIAMoAgghByAEIAM2AiggBCAEQRhqNgIkIAQgBEEcajYCICADAn8gAiAHSQRAIAIgBTYCACACQQRqDAELIARBIGoQCSAEKAIcCzYCBCAEIAAoAgwiAygCBCICNgIcIAMoAgghBSAEIAM2AiggBCAEQQxqNgIkIAQgBEEcajYCICADAn8gAiAFSQRAIAIgBCgCDDYCACACQQRqDAELIARBIGoQCSAEKAIcCzYCBCAAKAIMIgMoAgwgBkECdGogAygCGCIGNgIAIAMgBkEBajYCGAsgACgCVCIGQQJKDQADQCAPIAZBDGxqIgMoAgAgAygCBCICRgRAIAZBAWoiBkEDRw0BDAILIAJBBGsiBSgCACECIAMgBTYCBCAAIAY2AlQgASACNgIAIAJBf0YNAQJAAkAgACgCGCIGIAJBA24iA0EDdkH8////AHFqKAIAIAN2QQFxDQADQCAGIAJBA24iA0EDdkH8////AHFqIgYgBigCAEEBIAN0cjYCAEF/IQYCQAJAAn8gAkF/RwRAIAAoAgQoAgAgAkECdGooAgAhBgsCQAJAAkACQCAAKAIkIAZBA3ZB/P///wFxaiIFKAIAIgdBASAGdCIIcUUEQCAFIAcgCHI2AgAgACgCECgCYCADQQxsaiACIANBA2xrQQJ0aigCACEDAkAgACgCFCgCBCIJKAIEIgsgCSgCCCIHSQRAIAsgAzYCACALQQRqIQUMAQsgCyAJKAIAIghrIgpBAnUiDEEBaiIFQYCAgIAETw0CQf////8DIAcgCGsiB0EBdSINIAUgBSANSRsgB0H8////B08bIgVBgICAgARPDQ4gCiAFQQJ0Ig0QBiIOaiIHIAM2AgAgB0EEaiEFIAcgDEECdGsiCiEHIAgiAyALRwRAA0AgByADKAIANgIAIAdBBGohByADQQRqIgMgC0cNAAsLIAkgDSAOajYCCCAJIAU2AgQgCSAKNgIAIAhFDQAgCBAFCyAJIAU2AgQCQCAAKAIMIggoAgQiCSAIKAIIIgVJBEAgCSACNgIAIAlBBGohAgwBCyAJIAgoAgAiB2siC0ECdSIKQQFqIgNBgICAgARPDQ9B/////wMgBSAHayIFQQF1IgwgAyADIAxJGyAFQfz///8HTxsiA0GAgICABE8NDiALIANBAnQiDBAGIg1qIgMgAjYCACADQQRqIQIgAyAKQQJ0ayILIQMgByIFIAlHBEADQCADIAUoAgA2AgAgA0EEaiEDIAVBBGoiBSAJRw0ACwsgCCAMIA1qNgIIIAggAjYCBCAIIAs2AgAgB0UNACAHEAULIAggAjYCBCAAKAIMIgMoAgwgBkECdGogAygCGCIGNgIAIAMgBkEBajYCGCABKAIAIQILIAJBf0YNCCAAKAIEIQNBfyEGIAJBAWoiBSACQQJrIAVBA3AbIgVBf0cEQCADKAIMIAVBAnRqKAIAIQYLAn8CQCACQQNwBEAgAkEBayEIDAELQX8gAkECaiIIQX9GDQEaCyADKAIMIAhBAnRqKAIACyICQQNuIQcgBkF/RwRAIAAoAhggBkEDbiIFQQN2Qfz///8AcWooAgBBASAFdHEhBSACQX9GDQIgBUEARyEFDAMLQQEhBSACQX9HDQIMCAsQBwALIAVFDQEMBgsCQCAAKAIYIAdBA3ZB/P///wBxaigCACAHdkEBcQ0AQQAhCCAAKAIkIAMoAgAgAkECdGooAgAiA0EDdkH8////AXFqKAIAIAN2QQFxRQRAIAAoAlggA0ECdGoiAyADKAIAIgNBAWo2AgBBAkEBIANBAEwbIQgLIAUEQCAIIAAoAlRMDQQLAkAgDyAIQQxsaiIJKAIEIgsgCSgCCCIKSQRAIAsgAjYCACALQQRqIQIMAQsgCyAJKAIAIgNrIgxBAnUiDUEBaiIHQYCAgIAETw0MQf////8DIAogA2siCkEBdSIOIAcgByAOSRsgCkH8////B08bIgdBgICAgARPDQsgDCAHQQJ0Ig4QBiIQaiIKIAI2AgAgCkEEaiECIAMhByAKIA1BAnRrIgwhCiADIAtHBEADQCAKIAcoAgA2AgAgCkEEaiEKIAdBBGoiByALRw0ACwsgCSAOIBBqNgIIIAkgAjYCBCAJIAw2AgAgA0UNACADEAULIAkgAjYCBCAIIAAoAlRODQAgACAINgJUCyAFDQVBfyAGQX9GDQEaCyAAKAIEKAIAIAZBAnRqKAIACyECQQAhAyAAKAIkIAJBA3ZB/P///wFxaigCACACdkEBcUUEQCAAKAJYIAJBAnRqIgMgAygCACIDQQFqNgIAQQJBASADQQBMGyEDCyADIAAoAlRKDQEgBiECCyABIAI2AgAgACgCGCEGDAELCyAEIAY2AgggBCAPIANBDGxqIgIoAgQiBTYCHCACKAIIIQcgBCACNgIoIAQgBEEIajYCJCAEIARBHGo2AiAgAgJ/IAUgB0kEQCAFIAY2AgAgBUEEagwBCyAEQSBqEAkgBCgCHAs2AgQgAyAAKAJUIgZODQEgACADNgJUIAMhBgwBCyAAKAJUIQYLIAZBA0gNAAsLIARBMGokAEEBDwsQDgALEAcAC8cEAQZ/IwBBEGsiBSQAIABB2NkANgIAIABB6AFqIgMoAsQBIgEEQCADIAE2AsgBIAEQBQsgAygCuAEiAgRAIAIiASADKAK8ASIERwRAA0AgBEEMayIBKAIAIgYEQCAEQQhrIAY2AgAgBhAFCyABIgQgAkcNAAsgAygCuAEhAQsgAyACNgK8ASABEAULIAMoApwBIgEEQCADIAE2AqABIAEQBQsgAygCiAEhAiADQQA2AogBIAIEQCACQQRrIgQoAgAiAQRAIAIgAUEEdGohAQNAIAFBEGsiASACRw0ACwsgBBAFCyAFIABB2AFqNgIMIAVBDGoQiQEgACgCxAEiAQRAIAAgATYCyAEgARAFCyAAKAK4ASIBBEAgACABNgK8ASABEAULIAAoAqwBIgEEQCAAIAE2ArABIAEQBQsgACgCoAEiAQRAIAAgATYCpAEgARAFCyAAKAKQASIBBEADQCABKAIAIAEQBSIBDQALCyAAKAKIASEBIABBADYCiAEgAQRAIAEQBQsgACgCeCIBBEAgARAFCyAAKAJsIgEEQCABEAULIAAoAmAiAQRAIAEQBQsgACgCSCIBBEAgACABNgJMIAEQBQsgACgCPCIBBEAgARAFCyAAKAIwIgEEQCAAIAE2AjQgARAFCyAAKAIkIgEEQCAAIAE2AiggARAFCyAAKAIYIgEEQCAAIAE2AhwgARAFCyAAKAIMIgEEQCAAIAE2AhAgARAFCyAAKAIIIQEgAEEANgIIIAEEQCABECoLIAVBEGokACAAC9IDAQV/IwBBEGsiBCQAIABBqNkANgIAIAAoAoQDIgEEQCAAIAE2AogDIAEQBQsgACgC8AIhAyAAQQA2AvACIAMEQCADQQRrIgUoAgAiAQRAIAMgAUEEdGohAgNAIAJBEGsiAiADRw0ACwsgBRAFCyAEIABB2AFqNgIMIARBDGoQiQEgACgCxAEiAQRAIAAgATYCyAEgARAFCyAAKAK4ASIBBEAgACABNgK8ASABEAULIAAoAqwBIgEEQCAAIAE2ArABIAEQBQsgACgCoAEiAQRAIAAgATYCpAEgARAFCyAAKAKQASICBEADQCACKAIAIAIQBSICDQALCyAAKAKIASEBIABBADYCiAEgAQRAIAEQBQsgACgCeCIBBEAgARAFCyAAKAJsIgEEQCABEAULIAAoAmAiAQRAIAEQBQsgACgCSCIBBEAgACABNgJMIAEQBQsgACgCPCIBBEAgARAFCyAAKAIwIgEEQCAAIAE2AjQgARAFCyAAKAIkIgEEQCAAIAE2AiggARAFCyAAKAIYIgEEQCAAIAE2AhwgARAFCyAAKAIMIgEEQCAAIAE2AhAgARAFCyAAKAIIIQEgAEEANgIIIAEEQCABECoLIARBEGokACAAC7sDAQV/IwBBEGsiBCQAIABB9NgANgIAIAAoAvACIQMgAEEANgLwAiADBEAgA0EEayIFKAIAIgEEQCADIAFBBHRqIQIDQCACQRBrIgIgA0cNAAsLIAUQBQsgBCAAQdgBajYCDCAEQQxqEIkBIAAoAsQBIgEEQCAAIAE2AsgBIAEQBQsgACgCuAEiAQRAIAAgATYCvAEgARAFCyAAKAKsASIBBEAgACABNgKwASABEAULIAAoAqABIgEEQCAAIAE2AqQBIAEQBQsgACgCkAEiAgRAA0AgAigCACACEAUiAg0ACwsgACgCiAEhASAAQQA2AogBIAEEQCABEAULIAAoAngiAQRAIAEQBQsgACgCbCIBBEAgARAFCyAAKAJgIgEEQCABEAULIAAoAkgiAQRAIAAgATYCTCABEAULIAAoAjwiAQRAIAEQBQsgACgCMCIBBEAgACABNgI0IAEQBQsgACgCJCIBBEAgACABNgIoIAEQBQsgACgCGCIBBEAgACABNgIcIAEQBQsgACgCDCIBBEAgACABNgIQIAEQBQsgACgCCCEBIABBADYCCCABBEAgARAqCyAEQRBqJAAgAAuQBgEFf0F/IQQCf0F/IAEoAgAiAkF/Rg0AGiACQQFqIgEgAkECayABQQNwGyEEIAJBAWsgAkEDcA0AGiACQQJqCyEGAkACQAJAAkACQCAAKAKoAQ4IAAAEAgQBBAMEC0F/IQEgACgClAEhAkF/IQMgACgCnAEiBSAEQX9HBH8gAigCACAEQQJ0aigCAAVBfwtBAnRqIgMgAygCAEEBajYCACAFIAZBf0cEfyACKAIAIAZBAnRqKAIABUF/C0ECdGoiASABKAIAQQFqNgIADAMLQX8hASAAKAKUASEFQX8hAyACQX9HBEAgBSgCACACQQJ0aigCACEDCyAAKAKcASICIANBAnRqIgMgAygCAEEBajYCACACIARBf0cEfyAFKAIAIARBAnRqKAIABUF/C0ECdGoiASABKAIAQQFqNgIAQX8hASACIAZBf0cEfyAFKAIAIAZBAnRqKAIABUF/C0ECdGoiASABKAIAQQJqNgIADAILQX8hASAAKAKUASEFQX8hAyACQX9HBEAgBSgCACACQQJ0aigCACEDCyAAKAKcASICIANBAnRqIgMgAygCAEEBajYCACACIARBf0cEfyAFKAIAIARB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KAJcIARrIgJBAnUgA08EQCABIAMgBWtBAnRqIQIDQCABQQE2AgAgAUEEaiIBIAJHDQALIAAgAjYCWAwECyADQYCAgIAETw0BQf////8DIAJBAXUiASADIAEgA0sbIAJB/P///wdPGyIHQYCAgIAETw0CIAdBAnQQBiIIIAZqIgIgAyAFa0ECdGohAyACIQEDQCABQQE2AgAgAUEEaiIBIANHDQALIAIgBUECdGshASAGBEAgASAEIAb8CgAACyAAIAggB0ECdGo2AlwgACADNgJYIAAgATYCVCAERQ0DIAQQBQwDCyADIAVPDQIgACAEIANBAnRqNgJYDAILEAcACxAOAAsLCz0BAX8gAEHA6gA2AgAgACgCYCIBBEAgACABNgJkIAEQBQsgACgCVCIBBEAgACABNgJYIAEQBQsgABBXEAULOwEBfyAAQcDqADYCACAAKAJgIgEEQCAAIAE2AmQgARAFCyAAKAJUIgEEQCAAIAE2AlggARAFCyAAEFcLBABBewsEAEF8CwQAQX0LBABBfgsQACAAKAIEIAFBAnRqKAIACwQAQQwLBABBCwsEAEEKCwQAQQkLBABBCAsEAEEHCwQAQQYLBABBBQs8AQF/AkAgACABIAAoAgAoAiQRAQBFDQAgACABIAAoAgAoAigRAQBFDQAgACAAKAIAKAIsEQAAIQILIAILYQECfyMAQRBrIgEkACAABEAgACwAJ0EASARAIAAoAhwQBQsgACgCECECIAEgAEEMajYCCCABQQhqIAIQgAEgACgCBCECIAEgADYCDCABQQxqIAIQTyAAEAULIAFBEGokAAuyAQEDfyMAQRBrIgMkACADIAAgASACEPEBIAAgAygCADYCGCAAQRxqIQEgAEEYaiADQQRqIQIgAywADyEEAkACQAJAIAAsACdBAEgEQCABIAMoAgQgAiAEQQBIIgAbIAMoAgggBCAAGxBVDAELIARBAE4NASABIAMoAgQgAygCCBBUCyADLAAPQQBODQEgAygCBBAFDAELIAEgAigCCDYCCCABIAIpAgA3AgALIANBEGokAAuyAQEDfyMAQRBrIgMkACADIAAgASACEPIBIAAgAygCADYCGCAAQRxqIQEgAEEYaiADQQRqIQIgAywADyEEAkACQAJAIAAsACdBAEgEQCABIAMoAgQgAiAEQQBIIgAbIAMoAgggBCAAGxBVDAELIARBAE4NASABIAMoAgQgAygCCBBUCyADLAAPQQBODQEgAygCBBAFDAELIAEgAigCCDYCCCABIAIpAgA3AgALIANBEGokAAu9AwEDfyMAQSBrIgMkACADQQxqIQIjAEHQAGsiACQAIAAgASkDIDcDSCAAIAEpAxg3A0AgACABKQMQNwM4IAAgASkDCDcDMCAAIAEpAwA3AyggAEEMaiAAQShqIABBHGoQZgJAIAAoAgwiAQRAIAIgATYCACACQQRqIQEgACwAG0EATgRAIAEgACgCGDYCCCABIAApAhA3AgAMAgsgASAAKAIQIAAoAhQQDSAALAAbQQBODQEgACgCEBAFDAELIAAsABtBAEgEQCAAKAIQEAULIAAtACMiAUECTwRAQSAQBiIBQQA6ABogAUH4Cy8AADsAGCABQfALKQAANwAQIAFB6AspAAA3AAggAUHgCykAADcAACAAQX82AgwgAEEQaiABQRoQDSAALAAbIAIgACgCDDYCACACQQRqIQJBAE4EQCACIAAoAhg2AgggAiAAKQIQNwIAIAEQBQwCCyACIAAoAhAgACgCFBANIAAsABtBAEgEQCAAKAIQEAULIAEQBQwBCyACQgA3AgggAkIANwIAIAIgATYCEAsgAEHQAGokACADKAIcIAMsABtBAEgEQCADKAIQEAULIANBIGokAAvRCQEJfyMAQRBrIgckACAHIAE2AgxBIBAGIQEgB0KYgICAgISAgIB/NwIEIAcgATYCACABQdYJKQAANwAQIAFBzgkpAAA3AAggAUHGCSkAADcAACABQQA6ABgjAEEwayIDJAAgBygCDCECAkACQCAAKAIQIgFFDQAgAEEQaiEFA0AgASgCECIEIAJKBEAgASgCACIBDQEMAgsgAiAESgRAIAEoAgQiAQ0BDAILCyABIAVHDQELIANCADcCICADIANBIGo2AhwgA0IANwIUIAMgA0EUajYCECADIAI2AgwgA0EMaiIIKAIAIQQgA0EoaiIJAn8CQCAAQQxqIgYoAgQiAUUEQCAGQQRqIgUhAAwBCwNAIAEiACgCECIBIARKBEAgACIFKAIAIgENAQwCCyABIAROBEAgACECQQAMAwsgACgCBCIBDQALIABBBGohBQtBIBAGIgJCADcCGCACIAQ2AhAgAkEANgIAIAIgAkEYaiIENgIU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cBsgAGoiA0EASA0AGiALKAIAKAJgIANBA24iAkEMbGogAyACQQNsa0ECdGooAgALIgM2AkwgByADNgIIIAcgCDYCDCAKKAIMIAcgBDYCGCAHIAdBCGo2AhQgByAHQQxqNgIQIAhLBEAgCCADNgIAIAogCEEEajYCCAwCCyAHQRBqEBwgCiAHKAIMNgIIDAELIAsgAEEASAR/QX8FIAsoAgAoAmAgDEEMbGogAEEDcEECdGooAgALIgM2AkwgByADNgIIIAcgCigCCCIINgIMIAooAgwhAiAHIAQ2AhggByAHQQhqNgIUIAcgB0EMajYCECAKAn8gAiAISwRAIAggAzYCACAIQQRqDAELIAdBEGoQHCAHKAIMCzYCCCAFQQFxBEBBfyAAQX9GDQMaIAxBA2wgAEcEQCAAQQFrIQAMAwsgAEECaiEADAELQX8gAEF/Rg0CGiAAQQFqIgIgAEECayACQQNwGyEAC0F/IABBf0YNARoLIAsoAgQoAgwgAEECdGooAgALIQAgBUEBaiIFIAlHDQALCyAHQSBqJAAgGCgCYCECIBgoAmQhAAsgBkEBaiIGIAAgAmtBDG1JDQALCyANQSBqJAACQCABBEAgHSgCACIABEAgHSAANgIEIAAQBQsgHSAKKAIENgIAIB0gCigCCDYCBCAdIAooAgw2AgggCigCVCEgDAELIAooAgQiAEUNACAKIAA2AgggABAFCyAKKAJIIgAEQCAAEAULIAooAjAiAARAIAogADYCNCAAEAULIAooAiQiAARAIAogADYCKCAAEAULIAooAhgiAARAIAogADYCHCAAEAULIAooAhQhACAKQQA2AhQgAARAIAAQKgsgCkHgAGokACAgC1oAIAEoAmAhAUEMEAYiACABIAJBDGxqIgEoAgg2AgggACABKQIANwIAIAMoAgAiAQRAIAMgATYCBCABEAULIAMgADYCACADIABBDGoiADYCCCADIAA2AgRBAQtqAQF/An9BACABKAIEIgNFDQAaQQAgASgCCCACQQJ0aigCACgCPCIBQQBIDQAaQQAgAygCGCIAIAMoAhwiAkYNABoCQANAIAAoAgAiAygCGCABRg0BIABBBGoiACACRw0AC0EADAELIAMLCwcAIAEoAgQLaAECfwJ/QQAgASgCDCIAIAEoAggiAUYNABpBASAAIAFrQQJ1IgAgAEEBTRshA0EAIQACQANAIAEgAEECdGooAgAiBCgCPCACRg0BIABBAWoiACADRw0AC0EADAELIARBACAAQX9HGwsLEAAgASgCCCACQQJ0aigCAAvWAgEDfwJ/IwBBIGsiACQAAkAgAhAZIgRB9////wdPDQACQCAEQQpNBEAgACAEOgAfIABBFGohBQwBCyAEQfj///8HcSIGQQhqEAYhBSAAIAZB+P///wdrNgIcIAAgBDYCGCAAIAU2AhQLIAQEQCAFIAIgBPwKAAALIAQgBWpBADoAACADEBkiAkH3////B08NAAJAIAJBCk0EQCAAIAI6ABMgAEEIaiEFDAELIAJB+P///wdxIgRBCGoQBiEFIAAgBEH4////B2s2AhAgACACNgIMIAAgBTYCCAsgAgRAIAUgAyAC/AoAAAsgAiAFakEAOgAAAn9BfyABKAIEIgJFDQAaQX8gAiAAQRRqIABBCGoQyQEiAkUNABogASACKAIYEMYBCyAALAATQQBIBEAgACgCCBAFCyAALAAfQQBIBEAgACgCFBAFCyAAQSBqJAAMAQsQKQALC/wBAQN/An8jAEEgayIAJAAgAhAZIgNB9////wdJBEACQCADQQpNBEAgACADOgAfIABBFGohBAwBCyADQfj///8HcSIFQQhqEAYhBCAAIAVB+P///wdrNgIcIAAgAzYCGCAAIAQ2AhQLIAMEQCAEIAIgA/wKAAALIAMgBGpBADoAACAAQQA6AAwgAEHuwrWrBjYCCCAAQQQ6ABMCf0F/IAEoAgQiAkUNABpBfyACIABBCGogAEEUahDJASICRQ0AGiABIAIoAhgQxgELIAAsABNBAEgEQCAAKAIIEAULIAAsAB9BAEgEQCAAKAIUEAULIABBIGokAAwBCxApAAsLCQAgASACEMcBC/oBAQJ/IwBBQGoiBCQAIARBCGoiBUEAOwEmIAVBADYCACAFQgA3AwggBUIANwMQIAVCADcDGCAFQgA3AB0gBUIANwMQIAUgATYCACAFIAKtNwMIIARBMGogACAFIAMQ8QEgACAEKAIwNgIYIABBHGohASAAQRhqIARBNGohAiAELAA/IQMCQAJAAkAgACwAJ0EASARAIAEgBCgCNCACIANBAEgiABsgBCgCOCADIAAbEFUMAQsgA0EATg0BIAEgBCgCNCAEKAI4EFQLIAQsAD9B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AgggAEEUaiEEIABBCGohBQJAIAEoAgQiAkUNACABQQRqIQggBCgCACAEIAQsAAsiAUEASCIGGyEHIAQoAgQgASAGGyEBAkADQCAHIAIoAhAgAkEQaiACLAAbIgRBAEgiBhsiCSACKAIUIAQgBhsiBCABIAEgBEsiBhsiChATIgtBAEggASAESSALG0EBRgRAIAIoAgAiAg0BDAMLIAkgByAKEBMiBEEASCAGIAQbQQFHDQEgAigCBCICDQALDAELIAIgCEYNACACKAIcIgEgAigCICIERg0AIAQgAWsiAUEDcQ0AIAUgAUECdhAMIAUoAgAiASAFKAIERwRAIAIoAiAgAigCHCICayIEBEAgASACIAT8CgAACwwBCxAVAAsgAygCACIBBEAgAyABNgIEIAEQBQsgAyAAKAIINgIAIAMgACgCDDYCBCADIAAoAhA2AgggACwAH0EASARAIAAoAhQQBQsgAEEgaiQADAELECkACwuAAwEHfwJ/IwBBEGsiAyQAIANBADYCDCACEBkiBUH3////B0kEQAJAIAVBCk0EQCADIAU6AAsgAyEADAELIAVB+P///wdxIgZBCGoQBiEAIAMgBkH4////B2s2AgggAyAFNgIEIAMgADYCAAsgBQRAIAAgAiAF/AoAAAsgACAFakEAOgAAAkAgASgCBCIERQ0AIAFBBGohBSADKAIAIAMgAywACyIBQQBIIgAbIQggAygCBCABIAAbIQcCQANAIAggBCgCECAEQRBqIAQsABsiAUEASCIAGyIGIAQoAhQgASAAGyIJIAcgByAJSyICGyIBEBMiAEEASCAHIAlJIAAbQQFGBEAgBCgCACIEDQEMAwsgBiAIIAEQEyIAQQBIIAIgABtBAUcNASAEKAIEIgQNAAsMAQsCQCAEIAVGDQAgBCgCICAEKAIcIgBrQQRHDQAgAyAAKAAANgIMCwsgAygCDCADLAALQQBIBEAgAygCABAFCyADQRBqJAAMAQsQKQALC8cCAQd/An8jAEEQayIAJAAgAhAZIgNB9////wdJBEACQCADQQpNBEAgACADOgAPIABBBGohBAwBCyADQfj///8HcSIFQQhqEAYhBCAAIAVB+P///wdrNgIMIAAgAzYCCCAAIAQ2AgQLIAMEQCAEIAIgA/wKAAALIAMgBGpBADoAACAALAAPIQICf0EAIAEoAgQiAUUNABogACgCCCACIAJBAEgiBBshAyAAKAIEIABBBGogBBshBANAIAQgASgCECABQRBqIAEsABsiBUEASCIGGyIHIAEoAhQgBSAGGyIFIAMgAyAFSyIGGyIIEBMiCUEASCADIAVJIAkbBH8gAQVBASAHIAQgCBATIgVBAEggBiAFG0EBRw0CGiABQQRqCygCACIBDQALQQALIAJBAEgEQCAAKAIEEAULIABBEGokAAwBCxApAAsLJgEBf0EcEAYiAEEANgIYIABCADcCECAAQgA3AgggAEIANwIAIAALEAAgACgCACABQQF0ai8BAAsQACAAKAIAIAFBAXRqLgEACw0AIAAoAgAgAWotAAALDQAgACgCACABaiwAAAsQACAAKAIAIAFBAnRqKgIACx0AIAAEQCAALAAPQQBIBEAgACgCBBAFCyAAEAULCxUAIAAoAgQgAEEEaiAALAAPQQBIGwsIACAAKAIARQtOAQJ/IwBBEGsiASQAIAAEQCAAKAIQIQIgASAAQQxqNgIMIAFBDGogAhAeIAAoAgQhAiABIAA2AgggAUEIaiACECEgABAFCyABQRBqJAALLAEBf0EYEAYiAEIANwIQIABCADcCBCAAIABBBGo2AgAgACAAQRBqNgIMIAALEAAgACgCZCAAKAJga0EMbQs/AQF/QewAEAYiAEH86gA2AgAgAEEEakEAQdAA/AsAIABCADcCVCAAQcDqADYCACAAQgA3AlwgAEIANwJkIAALEgAgACACNgIgIAAgATYCHEEBCyEBAX9B1AAQBiIAQfzqADYCACAAQQRqQQBB0AD8CwAgAAsZAQF/QQgQBiIAQX82AgQgAEGICDYCACAACwcAIAAqAhQLEAAgACgCCCABQQJ0aioCAAsnAQF/QRgQBiIAQgA3AgggAEF/NgIEIABB3A42AgAgAEIANwIQIAALBwAgACgCPAsHACAAKAIwCwcAIAAoAigLBwAgAC0AIAsHACAALAAYCwcAIAAoAjgLBwAgACgCWAspAQF/QeAAEAYQQyIAQgA3A0AgAEEANgJYIABCADcDSCAAQgA3AE0gAAsJAEHAABAGEEMLIgEBfyAABEAgACgCCCIBBEAgACABNgIMIAEQBQsgABAFCwsyAQJ/QSgQBiIBQX82AgAgAUEIaiIAQgA3AxAgAEEANgIIIABCADcDACAA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AWo2AgAgCUEBaiIEQX9GDQELIAAgBEECdGogAygCWEECajYCAAsgAyADKAJMIgA2AlwgAygCUCECIAMgA0HIAGo2AhAgAyADQdgAajYCDCADIANB3ABqNgIIIAMCfyAAIAJJBEAgACADKAJYNgIAIABBBGoMAQsgA0EIahAJIAMoAlwLIgA2AkwgAEEEaygCACEACyADIAA2AiAgECADQSBqEOQBIAUoAigiASAFKAIkRg0GIAsgCEF/c2ohAgNAIAIgAUEIaygCACIASQRAQX8hAgwLCyAAIAJHDQcgAUEEay0AACEEIAFBDGsiACgCACEBIAUgADYCKCABQQBIBEBBfyECDAsLIAMoAkxBBGsoAgAhACADIAsgAUF/c2o2AhwgAyADQRxqIgE2AlggAyADQTBqNgJcIANBCGogA0HcAGogASADQdgAahCMASADKAIIAn8gBEEBcQRAQX8gAEF/Rg0BGiAAQQFqIgEgAEECayABQQNwGwwBC0F/IABBf0YNABogAEEBayAAQQNwDQAaIABBAmoLNgIMIAUoAigiASAFKAIkRw0ACwwGC0F/IQYgBygCACICIAlBAnRqQX82AgBBfwwDC0F/IQIMBwsgBygCACICIAZBAnRqKAIACyEGIAIgCUECdGogBjYCAEF/IAFBAWoiEiABQQJrIBJBA3AbIgFBf0YNABogAiABQQJ0aigCAAshASACIBhqIAE2AgACfyAEQX9GBEAgAiANakF/NgIAQX8hAUF/DAELAkACQAJAIARBA3AEQCAEQQFrIQEMAQsgBEECaiIBQX9GDQELIAIgDWogAiABQQJ0aigCACICNgIAIAJBf0YNASAHKAIYIAJBAnRqIA82AgAMAQsgAiANakF/NgIAC0F/IQFBfyAEQQFqIgIgBEECayACQQNwGyICQX9GDQAaIAcoAgAgAkECdGooAgAhASACCyECIAMgATYCWCAFKAKEAyIEIAZBAnQiDWoiDyAPKAIAIAQgAUECdGooAgBqNgIAIAcoAhghBCAGQX9HBEAgBCANaiAEIAMoAlhBAnRqKAIANgIACyACIQECQANAIAFBf0YNASAHKAIAIAFBAnRqIAY2AgAgAgJ/QX8gAUEBaiINIAFBAmsgDUEDcBsiAUF/Rg0AGkF/IAcoAgwgAUECdGooAgAiAUF/Rg0AGiABQQFqIg0g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AgALIAEgA0cNAAsgACgCCCECCyAAIAE2AgwgAhAFCyAAEAULpwEBA38gAEGI2AA2AgAgACgCMCEBIABBADYCMCABBEAgASABKAIAKAIEEQIACyAAQeDnADYCACAAKAIUIgEEQCAAIAE2AhggARAFCyAAKAIIIgEEQCABIgIgACgCDCIDRwRAA0AgA0EEayIDKAIAIQIgA0EANgIAIAIEQCACIAIoAgAoAgQRAgALIAEgA0cNAAsgACgCCCECCyAAIAE2AgwgAhAFCyAACxQAIAAoAjAiACAAKAIAKAIcEQAACxQAIAAoAjAiACAAKAIAKAIYEQAAC9sKAgJ/AX4gACgCICIBKQMIIAEpAxAiA1cEQEEADwsgASgCACADp2otAAAhAiABIANCAXw3AxAgACgCMCEBIABBADYCMCABBEAgASABKAIAKAIEEQIACwJAAkACfwJAAkACQCACDgMAAQIEC0GAAxAGIgFB9NgANgIAIAFBBGpBAEHQAPwLACABQgA3A2AgAUF/NgJcIAFCfzcCVCABQgA3A2ggAUIANwNwIAFCADcDeCABQgA3A4ABIAFCADcDiAEgAUIANwOQASABQgA3ApwBIAFBgICA/AM2ApgBIAFCADcCpAEgAUIANwKsASABQgA3ArQBIAFCADcCvAEgAUIANwLEASABQgA3AswBIAFC/////w83AtQBIAFCADcC3AEgAUHoAWoiAkEAOwEmIAJBADYCACACQgA3AwggAkIANwMQIAJCADcDGCACQgA3AB0gAUGQAmoiAkEAOwEmIAJBADYCACACQgA3AwggAkIANwMQIAJCADcDGCACQgA3AB0gAUG4AmoiAkIANwAFIAJCADcCACABQcgCaiICQQA7ASYgAkEANgIAIAJCADcDCCACQgA3AxAgAkIANwMYIAJCADcAHSABQQA2AvgCIAFCADcD8AIgAQwCC0GoAxAGIgFBqNkANgIAIAFBBGpBAEHQAPwLACABQgA3A2AgAUF/NgJcIAFCfzcCVCABQgA3A2ggAUIANwNwIAFCADcDeCABQgA3A4ABIAFCADcDiAEgAUIANwOQASABQgA3ApwBIAFBgICA/AM2ApgBIAFCADcCpAEgAUIANwKsASABQgA3ArQBIAFCADcCvAEgAUIANwLEASABQgA3AswBIAFC/////w83AtQBIAFCADcC3AEgAUHoAWoiAkEAOwEmIAJBADYCACACQgA3AwggAkIANwMQIAJCADcDGCACQgA3AB0gAUGQAmoiAkEAOwEmIAJBADYCACACQgA3AwggAkIANwMQIAJCADcDGCACQgA3AB0gAUG4AmoiAkIANwAFIAJCADcCACABQcgCaiICQQA7ASYgAkEANgIAIAJCADcDCCACQgA3AxAgAkIANwMYIAJCADcAHSABQgA3A4gDIAFCADcDgAMgAUIANwP4AiABQgA3A/ACIAFBkANqIgJCADcABSACQgA3AgAgAUJ/NwOgAyABDAELQbgDEAYiAUHY2QA2AgAgAUEEakEAQdAA/AsAIAFCADcDYCABQX82AlwgAUJ/NwJUIAFCADcDaCABQgA3A3AgAUIANwN4IAFCADcDgAEgAUIANwOIASABQgA3A5ABIAFCADcCnAEgAUGAgID8AzYCmAEgAUIANwKkASABQgA3AqwBIAFCADcCtAEgAUIANwK8ASABQgA3AsQBIAFCADcCzAEgAUL/////DzcC1AEgAUIANwLcASABQegBaiICQQA7ASYgAkEANgIAIAJCADcDCCACQgA3AxAgAkIANwMYIAJCADcAHSABQZACaiICQQA7ASYgAkEANgIAIAJCADcDCCACQgA3AxAgAkIANwMYIAJCADcAHSABQbgCaiICQgA3AAUgAkIANwIAIAFByAJqIgJBADsBJiACQQA2AgAgAkIANwMIIAJCADcDECACQgA3AxggAkIANwAdIAFCADcDiAMgAUIANwOAAyABQgA3A/gCIAFCADcD8AIgAUIANwOgAyABQoKAgIDwADcDmAMgAUJ/NwOQAyABQgA3A6gDIAFCADcDsAMgAQshASAAKAIwIQIgACABNgIwIAJFDQEgAiACKAIAKAIEEQIACyAAKAIwIgENAEEADwsgASAAIAEoAgAoAggRAQALFgAgACgCMCIAIAEgACgCACgCFBEBAAt+AQN/IABB4OcANgIAIAAoAhQiAgRAIAAgAjYCGCACEAULIAAoAggiAgRAIAIiASAAKAIMIgNHBEADQCADQQRrIgMoAgAhASADQQA2AgAgAQRAIAEgASgCACgCBBECAAsgAiADRw0ACyAAKAIIIQELIAAgAjYCDCABEAULIAALGwAgACgCLEUEQEEADwsgACAAKAIAKAIwEQAAC5gB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Cy4BAX8CQCABKAJYIgFFDQAgASgCAEECRw0AIAAgASgCCCgAADYCBEEBIQILIAILAgALC+5vGwBBhAgL5FA4BAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACAAAAAkAAAAKAAAACwAAAAwAAAANAAAAmDoAAEQEAADEBwAATjVkcmFjbzI4QXR0cmlidXRlT2N0YWhlZHJvblRyYW5zZm9ybUUALSsgICAwWDB4ACVzOiVkOiAlcwB2ZWN0b3IAL2Vtc2RrL2Vtc2NyaXB0ZW4vc3lzdGVtL2xpYi9saWJjeHhhYmkvc3JjL3ByaXZhdGVfdHlwZWluZm8uY3BwAHNraXBfYXR0cmlidXRlX3RyYW5zZm9ybQBiYWRfYXJyYXlfbmV3X2xlbmd0aABiYXNpY19zdHJpbmcAY2F0Y2hpbmcgYSBjbGFzcyB3aXRob3V0IGFuIG9iamVjdD8AVXNpbmcgaW5jb21wYXRpYmxlIGRlY29kZXIgZm9yIHRoZSBpbnB1dCBnZW9tZXRyeS4ARmFpbGVkIHRvIGRlY29kZSBwb2ludCBhdHRyaWJ1dGVzLgBGYWlsZWQgdG8gaW5pdGlhbGl6ZSB0aGUgZGVjb2Rlci4AVW5rbm93biBtaW5vciB2ZXJzaW9uLgBVbmtub3duIG1ham9yIHZlcnNpb24uAElucHV0IGlzIG5vdCBhIG1lc2guAFVuc3VwcG9ydGVkIGdlb21ldHJ5IHR5cGUuAE5vdCBhIERyYWNvIGZpbGUuAElucHV0IGlzIG5vdCBhIHBvaW50IGNsb3VkLgBVbnN1cHBvcnRlZCBlbmNvZGluZyBtZXRob2QuAEZhaWxlZCB0byBkZWNvZGUgbWV0YWRhdGEuAEZhaWxlZCB0byBkZWNvZGUgZ2VvbWV0cnkgZGF0YS4AKG51bGwpAFB1cmUgdmlydHVhbCBmdW5jdGlvbiBjYWxsZWQhAEtkVHJlZUF0dHJpYnV0ZXNEZWNvZGVyOiBjb21wcmVzc2lvbiBsZXZlbCAlaSBub3Qgc3VwcG9ydGVkLgoARmxvYXRQb2ludHNUcmVlRGVjb2RlcjogY29tcHJlc3Npb24gbGV2ZWwgJWkgbm90IHN1cHBvcnRlZC4KAFZlcnNpb24gbm90IHN1cHBvcnRlZC4gCgBNZXRob2Qgbm90IHN1cHBvcnRlZC4gCgAAAAAAAACMBwAADwAAABAAAAARAAAAEgAAABMAAAAUAAAAFQAAABYAAAAXAAAACwAAABgAAAAZAAAAmDoAAJgHAADEBwAATjVkcmFjbzMwQXR0cmlidXRlUXVhbnRpemF0aW9uVHJhbnNmb3JtRQAAAABwOgAAzAcAAE41ZHJhY28xOEF0dHJpYnV0ZVRyYW5zZm9ybUUAAAAAAAAAACQIAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAJAAAACUAAACYOgAAMAgAAEwIAABONWRyYWNvMTdBdHRyaWJ1dGVzRGVjb2RlckUAcDoAAFQIAABONWRyYWNvMjZBdHRyaWJ1dGVzRGVjb2RlckludGVyZmFjZUUAAAAAAAAAALQIAAAmAAAAJwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAoAAAAKQAAACoAAACYOgAAwAgAACQIAABONWRyYWNvMjNLZFRyZWVBdHRyaWJ1dGVzRGVjb2RlckUAAAAAAAAAEAkAACsAAAAsAAAALQAAAC4AAAAvAAAAMAAAADEAAAAyAAAAMwAAAHA6AAAYCQAATjVkcmFjbzI2U2VxdWVudGlhbEF0dHJpYnV0ZURlY29kZXJFAAAAAP////8AAAAAgAkAADQAAAA1AAAAHAAAADYAAAA3AAAAHwAAACAAAAAhAAAAOAAAADkAAAA6AAAAOwAAADwAAACYOgAAjAkAACQIAABONWRyYWNvMzdTZXF1ZW50aWFsQXR0cmlidXRlRGVjb2RlcnNDb250cm9sbGVyRQAAAAAA+AkAAD0AAAA+AAAAPwAAAC4AAAAvAAAAMAAAAEAAAAAyAAAAQQAAAEIAAABDAAAARAAAAEUAAACYOgAABAoAABAJAABONWRyYWNvMzNTZXF1ZW50aWFsSW50ZWdlckF0dHJpYnV0ZURlY29kZXJFAAAAAABsCgAARgAAAEcAAABIAAAASQAAAEoAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAUgAAAJg6AAB4CgAAHAsAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAmDoAACgLAADACwAATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAACYOgAAzAsAACAMAABONWRyYWNvMjNQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVFRQCYOgAALAwAAGAMAABONWRyYWNvMzdQcmVkaWN0aW9uU2NoZW1lVHlwZWREZWNvZGVySW50ZXJmYWNlSWlpRUUAmDoAAGwMAACYDAAATjVkcmFjbzMyUHJlZGljdGlvblNjaGVtZURlY29kZXJJbnRlcmZhY2VFAABwOgAAoAwAAE41ZHJhY28yNVByZWRpY3Rpb25TY2hlbWVJbnRlcmZhY2VFAAAAAADACwAARgAAAFMAAAAjAAAASQAAACMAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAIwAAAAAAAAA8DQAARgAAAFQAAABVAAAASQAAAFYAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAVwAAAJg6AABIDQAAHAsAAE41ZHJhY280NU1lc2hQcmVkaWN0aW9uU2NoZW1lTXVsdGlQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAAAAAsDgAAWAAAAFkAAABaAAAASQAAAFsAAABLAAAATAAAAE0AAABOAAAATwAAAFwAAABRAAAAXQAAAJg6AAA4DgAAHAsAAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAAAAAAAoDwAAXgAAAF8AAABgAAAASQAAAGEAAABiAAAAYwAAAGQAAABOAAAATwAAAGUAAABRAAAAZgAAAJg6AAA0DwAAHAsAAE41ZHJhY28zNk1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAAAAAAEBAAAGcAAABoAAAAaQAAAEkAAABqAAAAawAAAGwAAABtAAAATgAAAE8AAABuAAAAbwAAAHAAAACYOgAAHBAAABwLAABONWRyYWNvNDRNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc1BvcnRhYmxlRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAAAAAAABEAAHEAAAByAAAAcwAAAEkAAAB0AAAAdQAAAHYAAAB3AAAATgAAAE8AAAB4AAAAUQAAAHkAAACYOgAADBEAABwLAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAAAAAAAAA0BEAAHoAAAB7AAAAfAAAAH0AAAB+AAAAmDoAANwRAACIEgAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAHA6AACQEgAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAAAAAAB4EwAARgAAAH8AAACAAAAASQAAAIEAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAggAAAJg6AACEEwAAHBQAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAmDoAACgUAADACwAATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAAAAAAAA8BQAAEYAAACDAAAAhAAAAEkAAACFAAAASwAAAEwAAABNAAAATgAAAE8AAABQAAAAUQAAAIYAAACYOgAA/BQAABwUAABONWRyYWNvNDVNZXNoUHJlZGljdGlvblNjaGVtZU11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAAAA1BUAAIcAAACIAAAAiQAAAEkAAACKAAAASwAAAEwAAABNAAAATgAAAE8AAACLAAAAUQAAAIwAAACYOgAA4BUAABwUAABONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAAAAAAAAxBYAAI0AAACOAAAAjwAAAEkAAACQAAAAkQAAAJIAAACTAAAATgAAAE8AAACUAAAAUQAAAJUAAACYOgAA0BYAABwUAABONWRyYWNvMzZNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc0RlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAAAAAKAXAACWAAAAlwAAAJgAAABJAAAAmQAAAJoAAACbAAAAnAAAAE4AAABPAAAAnQAAAJ4AAACfAAAAmDoAAKwXAAAcFAAATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAAAAAIQYAACgAAAAoQAAAKIAAABJAAAAowAAAKQAAAClAAAApgAAAE4AAABPAAAApwAAAFEAAACoAAAAmDoAAJAYAAAcFAAATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAAAARBkAAKkAAACqAAAAqwAAAKwAAACtAAAAmDoAAFAZAADwGQAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAHA6AAD4GQAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAAAAAADUGgAARgAAAK4AAACvAAAASQAAALAAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAsQAAAJg6AADgGgAAwAsAAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFRUUAAAAAAAAAAHgbAACyAAAAswAAALQAAAAuAAAALwAAALUAAABAAAAAMgAAAEEAAAC2AAAAtwAAALgAAAC5AAAAmDoAAIQbAAD4CQAATjVkcmFjbzMyU2VxdWVudGlhbE5vcm1hbEF0dHJpYnV0ZURlY29kZXJFAAAAAAAA7BsAALoAAAC7AAAAvAAAAL0AAAC+AAAAvwAAAMAAAADBAAAAwgAAAMMAAADEAAAAUQAAAMUAAACYOgAA+BsAAKgcAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAJg6AAC0HAAAWB0AAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAAAAmDoAAGQdAAAgDAAATjVkcmFjbzIzUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQAAAAAAAOAdAADGAAAAxwAAAMgAAADJAAAAygAAAJg6AADsHQAApB4AAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAABwOgAArB4AAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAAAAAAAAoB8AAMsAAADMAAAAzQAAAL0AAADOAAAAzwAAANAAAADRAAAAwgAAAMMAAADSAAAAUQAAANMAAACYOgAArB8AAFAgAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAJg6AABcIAAAWB0AAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAAAADCEAANQAAADVAAAA1gAAANcAAADYAAAAmDoAABghAADEIQAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAHA6AADMIQAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAAAAAAC0IgAA2QAAANoAAADbAAAAvQAAANwAAADdAAAA3gAAAN8AAADCAAAAwwAAAOAAAABRAAAA4QAAAJg6AADAIgAAWB0AAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQAAAAAAYCMAAOIAAADjAAAA5AAAAOUAAADmAAAA5wAAAOgAAADpAAAA6gAAAOsAAADsAAAAUQAAAO0AAACYOgAAbCMAACwkAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAAACYOgAAOCQAAOgkAABONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAAJg6AAD0JAAAIAwAAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRUVFAAAAAAB8JQAA7gAAAO8AAADwAAAA8QAAAPIAAACYOgAAiCUAAEwmAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAcDoAAFQmAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAAAAAAFQnAADzAAAA9AAAAPUAAADlAAAA9gAAAPcAAAD4AAAA+QAAAOoAAADrAAAA+gAAAFEAAAD7AAAAmDoAAGAnAAAQKAAATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQCYOgAAHCgAAOgkAABONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAAAAAADcKAAA/AAAAP0AAAD+AAAA/wAAAAABAACYOgAA6CgAAKApAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAcDoAAKgpAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAAAAAJwqAADZAAAAAQEAAAIBAADlAAAAAwEAAAQBAAAFAQAABgEAAOoAAADrAAAABwEAAFEAAAAIAQAAmDoAAKgqAADoJAAATjVkcmFjbzI4UHJlZGljdGlvblNjaGVtZURlbHRhRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQAAAAAAAAAAYCsAAAkBAAAKAQAACwEAAC4AAAAvAAAADAEAAEAAAAAyAAAAQQAAAA0BAABDAAAARAAAAA4BAAAPAQAAEAEAAJg6AABsKwAA+AkAAE41ZHJhY28zOFNlcXVlbnRpYWxRdWFudGl6YXRpb25BdHRyaWJ1dGVEZWNvZGVyRQAAAAAAAAAA3CsAABEBAAASAQAAEwEAABQBAAAjAAAAFQEAABYBAAAXAQAAGAEAABkBAAAaAQAAGwEAACMAAACYOgAA6CsAADA0AABONWRyYWNvMTFNZXNoRGVjb2RlckUAAAAAAAAAPCwAABwBAAAdAQAAEwEAAB4BAAAfAQAAFQEAABYBAAAXAQAAIAEAACEBAAAiAQAAIwEAACQBAACYOgAASCwAANwrAABONWRyYWNvMjJNZXNoRWRnZWJyZWFrZXJEZWNvZGVyRQBB8dgAC/UFLQAAJQEAACYBAAAnAQAAKAEAACkBAAAqAQAAKwEAACwBAAAtAQAALgEAAP////8AAAAAkC0AAC8BAAAwAQAAMQEAADIBAAAzAQAANAEAADUBAAA2AQAANwEAADgBAAAAAAAA9C0AADkBAAA6AQAAOwEAADwBAAA9AQAAPgEAAD8BAABAAQAAQQEAAEIBAACYOgAADC0AAFgtAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbElOU18zMU1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbERlY29kZXJFRUUAcDoAAGAtAABONWRyYWNvMzVNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbEludGVyZmFjZUUAAACYOgAAnC0AAFgtAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbElOU180MU1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbFByZWRpY3RpdmVEZWNvZGVyRUVFAAAAmDoAAAAuAABYLQAATjVkcmFjbzI2TWVzaEVkZ2VicmVha2VyRGVjb2RlckltcGxJTlNfMzhNZXNoRWRnZWJyZWFrZXJUcmF2ZXJzYWxWYWxlbmNlRGVjb2RlckVFRQAAAAAAAGguAABDAQAARAEAAEUBAACYOgAAdC4AAOQuAABONWRyYWNvMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMxX0VFRUUAAAAAcDoAAOwuAABONWRyYWNvMTNUcmF2ZXJzZXJCYXNlSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMxX0VFRUUAAAAAAADkLgAARgEAAEcBAABFAQBB9N4AC44JAQAAAAMAAAAFAAAABwAAAAAAAACcLwAASAEAAEkBAABKAQAASwEAAJg6AACoLwAAMDAAAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMjhNYXhQcmVkaWN0aW9uRGVncmVlVHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzJfRUVFRUVFAABwOgAAODAAAE41ZHJhY28xNVBvaW50c1NlcXVlbmNlckUAAAD/////AAAAAGwwAABMAQAATQEAAE4BAACYOgAAeDAAAOQwAABONWRyYWNvMjhNYXhQcmVkaWN0aW9uRGVncmVlVHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQAAAABwOgAA7DAAAE41ZHJhY28xM1RyYXZlcnNlckJhc2VJTlNfMTFDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMV9FRUVFAAAAAAAAAOQwAABPAQAAUAEAAE4BAAAAAAAAdDEAAFEBAABSAQAAUwEAAFQBAACYOgAAgDEAADAwAABONWRyYWNvMjJNZXNoVHJhdmVyc2FsU2VxdWVuY2VySU5TXzE5RGVwdGhGaXJzdFRyYXZlcnNlcklOU18xMUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMyX0VFRUVFRQAAAAAAAAAUMgAAVQEAAFYBAABOAQAAmDoAACAyAADkMAAATjVkcmFjbzE5RGVwdGhGaXJzdFRyYXZlcnNlcklOU18xMUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMxX0VFRUUAAAAAAJgyAABXAQAAWAEAAFkBAABaAQAAmDoAAKQyAAAwMAAATjVkcmFjbzIyTWVzaFRyYXZlcnNhbFNlcXVlbmNlcklOU18xOURlcHRoRmlyc3RUcmF2ZXJzZXJJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzJfRUVFRUVFAAAAAAAAbDMAABEBAABbAQAAEwEAABQBAABcAQAAFQEAABYBAAAXAQAAGAEAABkBAAAaAQAAGwEAAF0BAACYOgAAeDMAANwrAABONWRyYWNvMjFNZXNoU2VxdWVudGlhbERlY29kZXJFAAAAAACwMwAAXgEAAF8BAABgAQAAYQEAAJg6AAC8MwAAMDAAAE41ZHJhY28xNUxpbmVhclNlcXVlbmNlckUAAAAAAAAAMDQAABEBAABiAQAAYwEAABQBAAAjAAAAZAEAABYBAAAXAQAAGAEAQZDoAAvhA0ZhaWxlZCB0byBwYXJzZSBEcmFjbyBoZWFkZXIuAAAAcDoAADg0AABONWRyYWNvMTdQb2ludENsb3VkRGVjb2RlckUAAAAAAIA0AAARAQAAZQEAAGMBAAAUAQAAZgEAAGcBAAAWAQAAFwEAABgBAACYOgAAjDQAADA0AABONWRyYWNvMjNQb2ludENsb3VkS2RUcmVlRGVjb2RlckUAAAAAAAAA3DQAABEBAABoAQAAYwEAABQBAABpAQAAagEAABYBAAAXAQAAGAEAAJg6AADoNAAAMDQAAE41ZHJhY28yN1BvaW50Q2xvdWRTZXF1ZW50aWFsRGVjb2Rl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`,mh=null})),gh=0,_h=1,vh=2,yh=2,bh=4,xh=6,Sh=9,Ch=0,wh=1,Th=`DRACO`,Eh=1,Dh=67108864,Oh=null;function kh(){return Oh||(Oh=Promise.resolve().then(()=>(hh(),lh)).then(e=>e.default())),Oh}function Ah(e,t,n,r){let i=Math.max(1,r.num_components()),a=n.num_points()*i,o;switch(r.data_type()){case Sh:if(o=new e.DracoFloat32Array,!t.GetAttributeFloatForAllPoints(n,r,o))return null;break;case yh:if(o=new e.DracoUInt8Array,!t.GetAttributeUInt8ForAllPoints(n,r,o))return null;break;case bh:if(o=new e.DracoUInt16Array,!t.GetAttributeUInt16ForAllPoints(n,r,o))return null;break;case xh:if(o=new e.DracoUInt32Array,!t.GetAttributeUInt32ForAllPoints(n,r,o))return null;break;default:return null}let s=o.size(),c=r.data_type()===Sh,l;l=c?new Float32Array(a):r.data_type()===bh?new Uint16Array(a):r.data_type()===xh?new Uint32Array(a):new Uint8Array(a);for(let e=0;e<s&&e<a;e++)l[e]=o.GetValue(e);return e.destroy(o),l}var jh=[[190,190,190],[166,166,166],[139,119,101],[35,190,35],[60,179,60],[30,160,30],[255,170,60],[255,110,190],[190,190,190],[60,120,255],[255,235,80],[255,200,120],[200,120,255],[255,120,255],[255,235,60],[255,200,40],[120,200,255],[200,160,255],[255,60,60]];async function Mh(e,t){let n=await kh(),r=e.u32(),i=e.offset;e.u32();let a=e.i32(),o=e.i32(),s=e.i32();e.i32();let c=e.u32();if(c>16)throw Error(`[s3m] Draco 自定义属性个数异常:texCoordCount=${c}`);let l=[];for(let t=0;t<c;t++)l.push(e.i32());e.u32();let u=e.u32();if(u<16||u>e.remaining)throw Error(`[s3m] Draco 流长度异常:dracoSize=${u},剩余 ${e.remaining} 字节`);let d=e.bytes(u);if(String.fromCharCode(...d.subarray(0,5))!==Th)throw Error(`[s3m] Draco 流缺少 "DRACO" magic,容器头解析错位`);e.align4();let f=e.string();e.align4();let p=new Map;try{let e=JSON.parse(f);for(let[t,n]of Object.entries(e)){let e=l[n];e!==void 0&&p.set(e,t)}}catch{}if(t.customVertexAttribute=f?Ih(f):void 0,r>0){let t=e.offset-i;t!==r&&console.warn(`[s3m] Draco 载荷长度不符:声明 ${r},实读 ${t}`)}let m=new n.Decoder,h=new n.PointCloud;try{let e=m.GetEncodedGeometryType(d);if(e!==Ch)throw Error(`[s3m] Draco ${e===wh?`三角网格`:`未知`} 几何暂未实现(仅支持点云)`);let r=m.DecodeArrayToPointCloud(d,d.length,h);if(!r.ok())throw Error(`[s3m] Draco 解码失败:${r.error_msg()}`);let i=h.num_points();if(!Number.isInteger(i)||i<0||i>Dh)throw Error(`[s3m] Draco 点数异常:${i}`);if(i===0)return t.verticesCount=0,[Nh()];let c=null;for(let e=0;e<h.num_attributes();e++){let r=m.GetAttribute(h,e),l=r.unique_id(),u=Math.max(1,r.num_components());if(l===a||r.attribute_type()===gh){if(r.data_type()!==Sh)throw Error(`[s3m] Draco 位置属性不是 float32(dt=${r.data_type()})`);let e=Ah(n,m,h,r);if(!e)throw Error(`[s3m] Draco 位置属性读取失败`);let a=new Float32Array(i*3);for(let t=0;t<i;t++)a[t*3]=e[t*u]??0,a[t*3+1]=e[t*u+1]??0,a[t*3+2]=e[t*u+2]??0;Ph(t,`position`,new Uint8Array(a.buffer),3,12,0,void 0,`f32`)}else if(l===s||r.attribute_type()===vh){let e=Ah(n,m,h,r);if(e){let n=new Uint8Array(i*4),r=e instanceof Float32Array;for(let t=0;t<i;t++){let i=t*u;r?(n[t*4]=Fh(e[i]??1),n[t*4+1]=Fh(e[i+1]??1),n[t*4+2]=Fh(e[i+2]??1)):(n[t*4]=e[i]??255,n[t*4+1]=e[i+1]??255,n[t*4+2]=e[i+2]??255),n[t*4+3]=u>=4&&!r?e[i+3]??255:255}Ph(t,`color`,n,4,4,0,void 0,`u8`)}}else if(l!==o&&r.attribute_type()!==_h&&p.get(l)===`PointCloudClassCode`&&u===1){let e=Ah(n,m,h,r);if(e&&!(e instanceof Float32Array)){c=new Uint8Array(i);for(let t=0;t<i;t++)c[t]=e[t]??0}}}if(t.attrLocation.position===void 0)throw Error(`[s3m] Draco 点云缺少 position 属性`);if(t.attrLocation.color===void 0&&c){let e=new Uint8Array(i*4);for(let t=0;t<i;t++){let n=jh[c[t]]??jh[0];e[t*4]=n[0],e[t*4+1]=n[1],e[t*4+2]=n[2],e[t*4+3]=255}Ph(t,`color`,e,4,4,0,void 0,`u8`)}return t.verticesCount=i,[Nh()]}finally{try{n.destroy(m),n.destroy(h)}catch{}}}function Nh(){return{indexCount:0,indexType:0,useIndex:0,primitiveType:Eh,indices:null,passNames:[]}}function Ph(e,t,n,r,i,a=0,o,s=`f32`){e.attrLocation[t]=e.vertexAttributes.length,e.vertexAttributes.push({semantic:t,data:n,components:r,stride:i,offsetInBytes:a,divisor:o,dtype:s})}function Fh(e){return e<=0?0:e>=1?255:Math.round(e*255)}function Ih(e){try{return JSON.parse(e)}catch{return e}}var Lh=i({default:()=>Rh}),Rh,zh=n((()=>{Rh=(function(){"use strict";var e=`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`,t=`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`,n=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),r=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=`object`)return{supported:!1};var i=e;WebAssembly.validate(n)&&(i=t);var a,o=WebAssembly.instantiate(s(i),{}).then(function(e){a=e.instance,a.exports.__wasm_call_ctors()});function s(e){for(var t=new Uint8Array(e.length),n=0;n<e.length;++n){var i=e.charCodeAt(n);t[n]=i>96?i-71:i>64?i-65:i>47?i+4:i>46?63:62}for(var a=0,n=0;n<e.length;++n)t[a++]=t[n]<60?r[t[n]]:(t[n]-60)*64+t[++n];return t.buffer.slice(0,a)}function c(e,t,n,r,i,o){var s=a.exports.sbrk,c=n+3&-4,l=s(c*r),u=s(i.length),d=new Uint8Array(a.exports.memory.buffer);d.set(i,u);var f=e(l,n,r,u,i.length);if(f==0&&o&&o(l,c,r),t.set(d.subarray(l,l+n*r)),s(l-s(0)),f!=0)throw Error(`Malformed buffer data: `+f)}var l={0:``,1:`meshopt_decodeFilterOct`,2:`meshopt_decodeFilterQuat`,3:`meshopt_decodeFilterExp`,NONE:``,OCTAHEDRAL:`meshopt_decodeFilterOct`,QUATERNION:`meshopt_decodeFilterQuat`,EXPONENTIAL:`meshopt_decodeFilterExp`},u={0:`meshopt_decodeVertexBuffer`,1:`meshopt_decodeIndexBuffer`,2:`meshopt_decodeIndexSequence`,ATTRIBUTES:`meshopt_decodeVertexBuffer`,TRIANGLES:`meshopt_decodeIndexBuffer`,INDICES:`meshopt_decodeIndexSequence`};return{ready:o,supported:!0,decodeVertexBuffer:function(e,t,n,r,i){c(a.exports.meshopt_decodeVertexBuffer,e,t,n,r,a.exports[l[i]])},decodeIndexBuffer:function(e,t,n,r){c(a.exports.meshopt_decodeIndexBuffer,e,t,n,r)},decodeIndexSequence:function(e,t,n,r){c(a.exports.meshopt_decodeIndexSequence,e,t,n,r)},decodeGltfBuffer:function(e,t,n,r,i,o){c(a.exports[u[i]],e,t,n,r,a.exports[l[o]])}}})()})),Q={POSITION:1,POSITION_W:2,NORMAL:4,TANGENT:8,TEXCOORD0:16,TEXCOORD1:32,COLOR:64,COLOR1:128,CUSTOM0:512,CUSTOM1:1024,GS_SCALE:131073,GS_ROTATION:131074},Bh=13,Vh=null;function Hh(){return Vh||(Vh=Promise.resolve().then(()=>(zh(),Lh)).then(async e=>{let t=e.default;if(!t?.supported)throw Error(`[s3m] 当前环境不支持 WebAssembly,无法解码 MeshOpt 几何`);return await t.ready,t})),Vh}function Uh(e){return e<0?-1:1}function Wh(e,t,n,r){let i=e,a=t,o=1-Math.abs(i)-Math.abs(a);if(o<0){let e=(1-Math.abs(a))*Uh(i);a=(1-Math.abs(i))*Uh(a),i=e}let s=Math.hypot(i,a,o)||1;n[r]=i/s,n[r+1]=a/s,n[r+2]=o/s}function Gh(e,t,n){return{semantic:e,data:new Uint8Array(t.buffer,t.byteOffset,t.byteLength),components:n,stride:n*4,offsetInBytes:0,dtype:`f32`}}function Kh(e,t,n){return{semantic:e,data:t,components:n,stride:n,offsetInBytes:0,dtype:`u8`}}function qh(e,t,n){switch(e){case Q.NORMAL:case Q.TEXCOORD0:case Q.TEXCOORD1:return 4;case Q.COLOR:case Q.COLOR1:return 4;case Q.CUSTOM0:case Q.CUSTOM1:return 4*Math.max(1,n);case Q.GS_SCALE:case Q.GS_ROTATION:return t&64?4:4*Math.max(1,n);default:return 8}}function Jh(e,t,n,r){let i=t*n;if(!Number.isSafeInteger(i)||i>67108864)throw Error(`[s3m] MeshOpt 流尺寸异常:${t} 顶点 × ${n}B = ${i}B`);let a=new Uint8Array(i);return e.decodeVertexBuffer(a,t,n,r,r.length),a}var Yh={[Q.POSITION]:`position`,[Q.POSITION_W]:`positionW`,[Q.NORMAL]:`normal`,[Q.TANGENT]:`tangent`,[Q.TEXCOORD0]:`uv`,[Q.TEXCOORD1]:`uv2`,[Q.COLOR]:`color`,[Q.COLOR1]:`color2`,[Q.CUSTOM0]:`custom0`,[Q.CUSTOM1]:`custom1`,[Q.GS_SCALE]:`gsScale`,[Q.GS_ROTATION]:`gsRotation`};function Xh(e,t,n,r,i){let a=e.get(t);a||(a={dtype:n,components:r,chunks:[],length:0},e.set(t,a)),a.chunks.push(i),a.length+=i.length}function Zh(e,t){for(let n of e){let e=n.indices;if(!e||n.indexCount<=0||e.byteLength<n.indexCount*4)continue;let r=new DataView(e.buffer,e.byteOffset,e.byteLength);for(let e=0;e<n.indexCount;e++)r.setUint32(e*4,r.getUint32(e*4,!0)+t,!0)}}async function Qh(e,t){let n=await Hh(),r=e.u32();t.compressOptions=r;let i=e.u32();if(i>64)throw Error(`[s3m] MeshOpt 块数异常:blockCount=${i}`);let a={vertexCount:0,compressOptions:r,minVertices:[0,0,0],vertScale:1,texCoordScale:[[0,0],[0,0]],texCoordOffset:[[0,0],[0,0]],streams:[]},o=new Map,s=[],c=0,l=!1;for(let u=0;u<i;u++){let i=e.u32(),d=e.f32(),f=e.f64(),p=e.f64(),m=e.f64(),h=[],g=[];for(let t=0;t<4;t++){let n=e.f64(),r=e.f64();t%2==0?h.push([n,r]):g.push([n,r])}let _=e.i32();u===0&&(a.minVertices=[f,p,m],a.vertScale=d,a.texCoordScale=h,a.texCoordOffset=g);for(let t=0;t<_;t++){let t=e.i32(),s=0;(t===Q.CUSTOM0||t===Q.CUSTOM1||t===Q.GS_SCALE||t===Q.GS_ROTATION)&&(s=e.i32());let c=e.i32(),l=e.bytes(c);if(e.align4(),t===Q.TANGENT){a.streams.push({semantic:`tangent`,bytes:c,stride:0});continue}let u=qh(t,r,s),_;try{_=Jh(n,i,u,l)}catch{if(t===Q.TEXCOORD0||t===Q.TEXCOORD1)_=Jh(n,i,8,l);else throw Error(`[s3m] MeshOpt 属性解码失败(semantic=0x${t.toString(16)})`)}let v=Yh[t]??`semantic_0x${t.toString(16)}`;if(a.streams.push({semantic:v,bytes:c,stride:i>0?_.byteLength/i:0}),t===Q.POSITION){let e=new Uint16Array(_.buffer,_.byteOffset,i*4),t=new Float32Array(i*3);for(let n=0;n<i;n++)t[n*3]=f+e[n*4]*d,t[n*3+1]=p+e[n*4+1]*d,t[n*3+2]=m+e[n*4+2]*d;Xh(o,`position`,`f32`,3,t)}else if(t===Q.NORMAL){let e=new Int16Array(_.buffer,_.byteOffset,i*2),t=new Float32Array(i*3);for(let n=0;n<i;n++)Wh(e[n*2]/32767,e[n*2+1]/32767,t,n*3);Xh(o,`normal`,`f32`,3,t)}else if(t===Q.COLOR)Xh(o,`color`,`u8`,4,_);else if(t===Q.COLOR1)Xh(o,`color2`,`u8`,4,_);else if(t===Q.TEXCOORD0||t===Q.TEXCOORD1){let e=t===Q.TEXCOORD0?0:1,n=h[e]??[0,0],r=g[e]??[0,0],a=new Float32Array(i*2);if(_.byteLength===i*8){let e=new Float32Array(_.buffer,_.byteOffset,i*2);a.set(e)}else{let e=new Uint16Array(_.buffer,_.byteOffset,i*2);for(let t=0;t<i;t++)a[t*2]=r[0]+e[t*2]*n[0],a[t*2+1]=r[1]+e[t*2+1]*n[1]}Xh(o,e===0?`uv`:`uv2`,`f32`,2,a)}else(t===Q.CUSTOM0||t===Q.CUSTOM1||t===Q.GS_SCALE||t===Q.GS_ROTATION)&&Xh(o,Yh[t],`u8`,u,_)}let v=e.string();if(e.align4(),v&&!l){l=!0;try{t.customVertexAttribute=JSON.parse(v)}catch{t.customVertexAttribute=v}}let y=await $h(e);c>0&&Zh(y,c),s.push(...y),c+=i}i===0&&s.push(...await $h(e)),a.vertexCount=c,t.verticesCount=c,t.meshOptInfo=a;for(let[e,n]of o){let r=c*n.components;if(n.dtype===`f32`){let i=new Float32Array(r),a=0;for(let e of n.chunks)i.set(e,a),a+=e.length;t.vertexAttributes.push(Gh(e,i,n.components))}else{let i=new Uint8Array(r),a=0;for(let e of n.chunks)i.set(e,a),a+=e.length;t.vertexAttributes.push(Kh(e,i,n.components))}}for(let e=0;e<t.vertexAttributes.length;e++)t.attrLocation[`a${t.vertexAttributes[e].semantic}`]=e;return{info:a,indexPackages:s}}async function $h(e){let t=await Hh(),n=e.i32(),r=[];for(let i=0;i<n;i++){let n=e.i32();if(n<1)continue;let i=e.u8(),a=e.u8(),o=e.u8();e.skip(1);let s=e.i32(),c;if(o===Bh)c=e.bytes(s*4),e.align4();else{let r=e.bytes(s);e.align4(),c=new Uint8Array(n*4),t.decodeIndexBuffer(c,n,4,r)}let l=e.i32(),u=[];for(let t=0;t<l;t++)u.push(e.string());e.align4();let d=n>0?c.byteLength/n:0,f=d===2?0:d===4?3:i===1||i===3?i:0;r.push({indexCount:n,indexType:f,useIndex:a,primitiveType:o,indices:c,passNames:u})}return r}var eg=7156595;function tg(e){return e.byteLength<8?!1:new DataView(e,0,8).getUint32(0,!0)===eg}async function ng(e){let t=globalThis.DecompressionStream;if(!t)throw Error(`[s3m] 当前环境无 DecompressionStream,请通过 options.inflate 注入解压实现`);let n=new Blob([e]).stream().pipeThrough(new t(`deflate`)),r=await new Response(n).arrayBuffer();return new Uint8Array(r)}var rg=e=>e%4==0?e:e+(4-e%4);function ig(e,t=0){let n=parseFloat(e??``);return Number.isFinite(n)?n:t}function ag(e,t){let n=RegExp(`<(?:[A-Za-z0-9_-]+:)?${t}[^>]*>([^<]*)<\\/(?:[A-Za-z0-9_-]+:)?${t}>`,`i`).exec(e);return n?n[1].trim():null}function og(e,t){let n=RegExp(`<(?:[A-Za-z0-9_-]+:)?${t}[^>]*>([^<]*)<\\/(?:[A-Za-z0-9_-]+:)?${t}>`,`gi`);return[...e.matchAll(n)].map(e=>e[1].trim())}function sg(e){let t=(e??``).toUpperCase();return t.includes(`DISTANCE`)?0:t.includes(`GEOMETRIC`)||t===`2`?2:1}function cg(e){let t=[...e.matchAll(/<(?:[A-Za-z0-9_-]+:)?PagedLOD[^>]*>([\s\S]*?)<\/(?:[A-Za-z0-9_-]+:)?PagedLOD>/gi)],n=[];for(let e of t){let t=e[1],r=(ag(t,`GeoDeModMatrix`)??`1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1`).split(`,`).map(e=>parseFloat(e.trim())).filter(e=>Number.isFinite(e)),i=/<(?:[A-Za-z0-9_-]+:)?BoundingSphere[^>]*>([\s\S]*?)<\/(?:[A-Za-z0-9_-]+:)?BoundingSphere>/i.exec(t)?.[1]??``;n.push({geoNames:og(t,`GeoName`),matrix:r.length===16?r:[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],childTile:ag(t,`RangeDataList`)??``,rangeMode:sg(ag(t,`RangeMode`)),rangeValue:ig(ag(t,`RangeList`)),center:{x:ig(ag(i,`x`)),y:ig(ag(i,`y`)),z:ig(ag(i,`z`))},radius:ig(ag(i,`radius`))})}return n}function lg(e){let t=[...e.matchAll(/<(?:[A-Za-z0-9_-]+:)?material[^>]*>([\s\S]*?)<\/(?:[A-Za-z0-9_-]+:)?material>/gi)],n=[];for(let e of t){let t=e[1];n.push({name:ag(t,`name`)??``,diffuse:(e=>{let n=RegExp(`<(?:[A-Za-z0-9_-]+:)?${e}[^>]*>([\\s\\S]*?)<\\/(?:[A-Za-z0-9_-]+:)?${e}>`,`i`).exec(t);if(!n)return{r:1,g:1,b:1,a:1};let r=n[1];return{r:ig(ag(r,`r`),1),g:ig(ag(r,`g`),1),b:ig(ag(r,`b`),1),a:ig(ag(r,`a`),1)}})(`Diffuse`),shininess:ig(ag(t,`Shininess`)),cullMode:ag(t,`CullMode`)??ag(t,`cullmode`)??`none`,transparentSorting:(ag(t,`TransparentSorting`)??`false`).toLowerCase()===`true`,textureName:void 0,addressMode:void 0});let r=/<(?:[A-Za-z0-9_-]+:)?texture[^>]*>([\s\S]*?)<\/(?:[A-Za-z0-9_-]+:)?texture>/i.exec(t);if(r){let e=r[1],t=n[n.length-1];t.textureName=ag(e,`name`)??void 0;let i=/<(?:[A-Za-z0-9_-]+:)?AddressMode[^>]*>([\s\S]*?)<\/(?:[A-Za-z0-9_-]+:)?AddressMode>/i.exec(e);i&&(t.addressMode={u:ig(ag(i[1],`u`)),v:ig(ag(i[1],`v`))})}}return n}function ug(e,t){let n=e.u32();if(n>4096)throw Error(`[s3m] S3M 1.x 网格数异常:${n}`);let r=[];for(let i=0;i<n;i++){let n=String(e.u32()),i=e.u32(),a=e.u32(),o=e.u32();if(e.u32(),!(o>0&&o<=8e6))throw Error(`[s3m] S3M 1.x 顶点数异常:网格 ${n} V=${o}(字段 7=${i} 772=${a})`);let s=new Float32Array(o*3);for(let t=0;t<o;t++){let n=e.f32(),r=e.f32(),i=e.f32();e.f32(),s[t*3]=n,s[t*3+1]=r,s[t*3+2]=i}e.u32(),e.u32(),e.u32();let c=e.u32(),l=e.u32();if(e.u32(),c!==1||l!==o)throw Error(`[s3m] S3M 1.x UV 头不符:网格 ${n} kind=${c} count=${l} 期望 1/${o}`);let u=new Float32Array(o*2);for(let t=0;t<o;t++)u[t*2]=e.f32(),u[t*2+1]=e.f32();let d=e.u32(),f=e.u32();if(e.u32(),d!==1||f===0||f%3!=0)throw Error(`[s3m] S3M 1.x 索引头不符:网格 ${n} kind=${d} count=${f}`);let p=new Uint16Array(f);for(let t=0;t<f;t++)p[t]=e.u16();if(e.offset>t)throw Error(`[s3m] S3M 1.x 索引越界:网格 ${n}`);e.align4();let m=e.u32(),h=String(e.u32());if(m!==1)throw Error(`[s3m] S3M 1.x 记录尾标记异常:网格 ${n} 期望 1 实得 ${m}`);r.push({geoName:n,vertexCount:o,position:s,uv:u,indexCount:f,indices:p,materialId:h})}return r}function dg(e,t){return!Number.isFinite(e)||e<=0?t:Math.abs(e-.5)<.02?17:Math.abs(e-1)<.02?21:Math.abs(e-4)<.02?14:Math.abs(e-3)<.02?10:(console.warn(`[s3m] S3M 1.x 纹理密度 ${e.toFixed(3)} B/px 不在已知档位,按原 format=${t} 交给上层判定`),t)}function fg(e,t){let n=e.u32(),r={};if(n>1024)throw Error(`[s3m] S3M 1.x 纹理数异常:${n}`);for(let i=0;i<n;i++){let n=String(e.u32()),i=e.u32(),a=e.u32(),o=e.u32(),s=e.u32();if(e.u32(),e.offset+s>t+4)throw Error(`[s3m] S3M 1.x 纹理越界:${n}`);r[n]={code:n,level:0,width:i,height:a,compressType:0,pixelFormat:dg(s/(i*a),o),flipY:!0,data:e.bytesCopy(s)}}return r}async function pg(e,t={}){let n=t.inflate??ng,r=new sh(e);r.skip(4);let i=await n(new Uint8Array(e,r.base+r.offset,e.byteLength-r.base-r.offset)),a=i instanceof Uint8Array?i:new Uint8Array(i),o=new sh(a.buffer.slice(a.byteOffset,a.byteOffset+a.byteLength)),s=o.u32();if(s<=0||s>a.byteLength)throw Error(`[s3m] S3M 1.x XML 段长度异常:${s}`);let c=new TextDecoder(`utf-8`).decode(o.bytes(s));o.offset=rg(o.offset);let l=o.u32(),u=o.offset,d=ug(new sh(o.buffer,o.base+u,l),l);o.offset=u+l;let f=o.u32();o.skip(f);let p=o.u32(),m=fg(new sh(o.buffer,o.base+o.offset,p),p),h={};for(let e of d){let t=`SuperMapCache#${e.geoName}`,n={semantic:`position`,data:new Uint8Array(e.position.buffer,e.position.byteOffset,e.position.byteLength),components:3,stride:12,offsetInBytes:0,dtype:`f32`},r={semantic:`uv`,data:new Uint8Array(e.uv.buffer,e.uv.byteOffset,e.uv.byteLength),components:2,stride:8,offsetInBytes:0,dtype:`f32`};h[t]={name:t,vertexPackage:{verticesCount:e.vertexCount,vertexAttributes:[n,r],attrLocation:{aposition:0,auv:1},instanceCount:0,instanceMode:0,instanceIndex:-1},indexPackages:[{indexCount:e.indexCount,indexType:0,useIndex:1,primitiveType:4,indices:new Uint8Array(e.indices.buffer,e.indices.byteOffset,e.indices.byteLength),passNames:[e.materialId]}]}}let g=new Map(d.map(e=>[e.geoName,`SuperMapCache#${e.geoName}`])),_=cg(c),v=[];return _.forEach((e,t)=>{let n=e.geoNames.map(e=>g.get(e)).filter(e=>!!e),r=d[t]?[`SuperMapCache#${d[t].geoName}`]:[],i=n.length?[...new Set(n)]:r;i.length&&v.push({rangeValue:e.rangeValue,rangeMode:e.rangeMode,boundingSphere:{center:{...e.center},radius:e.radius},childTile:e.childTile,geodes:[{matrix:e.matrix,skeletonNames:i}]})}),{version:1,compressedType:1,options:0,groupNode:{pageLods:v},geoPackage:h,textures:m,materials:lg(c).map(e=>({material:{name:e.name,diffuse:e.diffuse,shininess:e.shininess,cullMode:e.cullMode,transparentsorting:e.transparentSorting,textureStates:e.textureName?[{textureunitstate:{name:e.textureName,...e.addressMode?{addressmode:e.addressMode}:{}}}]:[]}})),pickInfo:null,extensions:{s3m1:!0},bytesRead:o.offset+p,bytesTotal:a.byteLength}}var mg={V1:1,V2:2,V3:3},hg={UNKNOWN:0,STANDARD:1,COMPRESSED:2,DRACO:3},gg={STANDARD:0,DRACO:1,MESHOPT:2},_g={VERTEX:1,NORMAL:2,VERTEX_COLOR:4,SECOND_COLOR:8,TEXCOORD:16,TEXCOORD_IS_W:32},vg={0:4,1:4,2:8,3:2};async function yg(e){if(typeof DecompressionStream>`u`)throw Error(`[s3m] 当前环境无 DecompressionStream,请通过 options.inflate 注入解压实现`);let t=new Blob([e]).stream().pipeThrough(new DecompressionStream(`deflate`));return new Uint8Array(await new Response(t).arrayBuffer())}function bg(e,t,n,r,i,a=0,o,s=`f32`){e.attrLocation[t]=e.vertexAttributes.length,e.vertexAttributes.push({semantic:t,data:n,components:r,stride:i||r*4,offsetInBytes:a,divisor:o,dtype:s})}function xg(){return{vertexAttributes:[],attrLocation:{},instanceCount:0,instanceMode:0,instanceIndex:-1,verticesCount:0}}function Sg(e){let t=Array(16);for(let n=0;n<16;n++)t[n]=e.f64();let n=e.u32(),r=[];for(let t=0;t<n;t++)r.push(e.string());return{matrix:t,skeletonNames:r}}function Cg(e,t){let n={rangeValue:e.f32(),rangeMode:e.u16(),boundingSphere:{center:e.vec3f64(),radius:e.f64()},childTile:``,geodes:[]};t>=3&&(n.obb={center:e.vec3f64(),xExtent:e.vec3f64(),yExtent:e.vec3f64(),zExtent:e.vec3f64()});let r=e.string(),i=r.indexOf(`Geometry`);i!==-1&&(r=r.substring(0,i)),n.childTile=r;let a=e.u32();for(let t=0;t<a;t++)n.geodes.push(Sg(e));return t>=3&&e.string(),n}function wg(e,t){let n=e.u32(),r=[];for(let i=0;i<n;i++)r.push(Cg(e,t));return e.align4(),{pageLods:r}}function Tg(e,t){return e.u32(),wg(e,t)}function Eg(e,t){let n=e.u32();if(t.verticesCount=n,n===0)return;let r=e.u16();e.u16(),bg(t,`position`,e.bytes(n*r*4),r,r*4)}function Dg(e,t){let n=e.u32();if(n<=0)return;let r=e.u16(),i=e.u16();bg(t,`normal`,e.bytes(n*r*4),r,i||r*4)}function Og(e,t){let n=e.u32(),r;n>0?(e.u16(),e.skip(2),r=e.bytes(n*4)):r=new Uint8Array((t.verticesCount||0)*4).fill(255),bg(t,`color`,r,4,4,0,void 0,`u8`)}function kg(e,t){let n=e.u32();n<=0||(e.u16(),e.skip(2),bg(t,`secondColor`,e.bytes(n*4),4,4,0,void 0,`u8`))}function Ag(e,t){let n=e.u16();e.skip(2);for(let r=0;r<n;r++){let n=e.u32(),i=e.u16(),a=e.u16();bg(t,r===0?`uv`:`uv${r+1}`,e.bytes(n*i*4),i,a||i*4)}}function jg(e,t,n){let r=e.u16();e.skip(2);for(let i=0;i<r;i++){let r=e.u32(),i=e.u16();if(i===16){e.offset-=2;let a=n===3?2:4,o=i*4+a,s=r*o,c=e.bytes(s),l=new Uint8Array(r*i*4);for(let e=0;e<r;e++)l.set(c.subarray(e*o+a,e*o+o),e*i*4);t.instanceCount=r,t.instanceMode=i,t.instanceBuffer=l,t.instanceIndex=1,bg(t,`instanceMatrix0`,l,4,64,0,1),bg(t,`instanceMatrix1`,l,4,64,16,1),bg(t,`instanceMatrix2`,l,4,64,32,1),bg(t,`instanceColor`,l,4,64,48,1)}else{e.u16();let n=r*i*4;i===17||i===29?(t.instanceCount=r,t.instanceMode=i,t.instanceBuffer=e.bytesCopy(n),t.instanceIndex=1):e.skip(n)}}}function Mg(e,t){let n=e.u32();for(let r=0;r<n;r++){let n=e.u32(),i=e.u16(),a=vg[e.u16()]??4;bg(t,`custom${r}`,e.bytes(n*i*a),i,i*a)}}function Ng(e){let t=e.u32();if(t<=0)return;let n=e.u16();e.u16(),e.skip(t*n*4)}function Pg(e,t,n){if(n>=3&&e.u32(),Eg(e,t),Dg(e,t),Og(e,t),n<3&&kg(e,t),Ag(e,t),jg(e,t,n),n>=3){Mg(e,t);let n=e.string();t.customVertexAttribute=n?JSON.parse(n):void 0,e.align4(),Ng(e)}}function Fg(e,t,n){let r=e.u32();if(t.compressOptions=r,r&_g.VERTEX)throw Error(`[s3m] 顶点量化压缩(v2 旧式)暂未实现`);if(Eg(e,t),r&_g.NORMAL)throw Error(`[s3m] 法线压缩(v2 旧式)暂未实现`);if(Dg(e,t),Og(e,t),kg(e,t),r&_g.TEXCOORD)throw Error(`[s3m] 纹理坐标压缩(v2 旧式)暂未实现`);Ag(e,t),r&_g.TEXCOORD_IS_W&&(t.textureCoordIsW=!0),jg(e,t,n)}function Ig(e,t){let n=e.u32(),r=[];for(let i=0;i<n;i++){t>=3&&e.u32();let n=e.u32(),i=e.u8(),a=e.u8(),o=e.u8();e.skip(1);let s=null;if(n>0){let t=i===1||i===3,r=t?4:2;s=e.bytes(n*r),!t&&n%2!=0&&e.skip(2)}let c=[],l=e.u32();for(let t=0;t<l;t++)c.push(e.string());e.align4(),r.push({indexCount:n,indexType:i,useIndex:a,primitiveType:o,indices:s,passNames:c})}return r}var Lg=96;function Rg(e){let t=e.offset,n=e.boundingBox();return zg(n)?n:(e.offset=t+4,e.boundingBox())}function zg(e){let t=[e.center,e.xExtent,e.yExtent,e.zExtent];for(let e of t)if(!Number.isFinite(e.x)||!Number.isFinite(e.y)||!Number.isFinite(e.z)||Math.abs(e.x)>1e7||Math.abs(e.y)>1e7||Math.abs(e.z)>1e7)return!1;return!0}async function Bg(e,t,n){let r=e.u32(),i={};for(let a=0;a<r;a++){let r=-1;if(t>=3){let t=e.u32(),n=e.offset+t;t>=Lg&&n<=e.view.byteLength&&(r=n)}let a=e.string();e.align4();let o=e.u32();t>=3&&(o=o===gg.STANDARD?hg.STANDARD:o===gg.DRACO?hg.DRACO:o===gg.MESHOPT?hg.COMPRESSED:hg.UNKNOWN);let s=xg(),c=[];if(o===hg.STANDARD)Pg(e,s,t),c=Ig(e,t);else if(o===hg.COMPRESSED)t>=3?c=(await Qh(e,s)).indexPackages:(Fg(e,s,t),c=Ig(e,t));else if(o===hg.DRACO)c=await Mh(e,s);else throw Error(`[s3m] 未知骨架标记 ${o}(${a})`);let l;if(t>=3){if(r>=0&&r-e.offset>=Lg){let t=r-e.offset-Lg;t>0&&n?.(` skelPad`,t,e.offset),e.offset=r-Lg,l=Rg(e),e.offset=r}else l=Rg(e)}n?.(` skel`,a,e.offset),i[a]={name:a,vertexPackage:s,indexPackages:c,obb:l}}return i}async function Vg(e,t,n){e.u32();let r=await Bg(e,t,n);if(t<3){let t=e.u32();e.skip(t)}return r}function Hg(e){let t=e.u32(),n=e.offset,r=n+t,i=e.u32(),a={};for(let t=0;t<i;t++){let t=e.string();e.align4(n);let r=e.u32(),i=e.u32(),o=e.u32(),s=e.u32(),c=e.u32();a[t]={code:t,level:r,width:i,height:o,compressType:s,pixelFormat:e.u32(),data:e.bytesCopy(c)}}return e.offset=r,a}function Ug(e){let t=e.u32(),n=new TextDecoder(`utf-8`).decode(e.bytes(t));return n?JSON.parse(n):[]}function Wg(e,t,n,r){let i=t;return(i&1)!=1||(r>=3&&(i=e.u32()),(i&1)!=1)?null:(e.u32(),Gg(e,n,r))}function Gg(e,t,n){let r=e.u32(),i={};for(let a=0;a<r;a++){let r=e.string(),a=t[r],o=e.u32(),s={};if(!a)continue;let c=a.vertexPackage;if(c.instanceIndex===-1){let t=new Float32Array(c.verticesCount||0);for(let n=0;n<o;n++){let r=e.u32(),i=e.u32(),a={batchId:n,segments:[]};s[r]=a;for(let r=0;r<i;r++){let r=e.u32(),i=e.u32();a.segments.push({vertexOffset:r,vertexCount:i}),t.fill(n,r,r+i)}}bg(c,`batchId`,new Uint8Array(t.buffer),1,4,0,void 0,`f32`)}else{let t=c.instanceCount,r=new Float32Array(t).fill(-1);for(let i=0;i<o;i++){let a=e.u32(),o=e.u32(),c={instanceIds:[],instanceBatchId:i};s[a]=c;for(let a=0;a<o;a++){let a=e.u32();n>=3&&e.u32(),a>=0&&a<t&&(c.instanceIds.push(a),r[a]=i)}}c.instanceBatchIds=r}a.pickInfo=s,i[r]=s}return i}var Kg=class extends Error{constructor(e){super(e),X(this,`permanent`,!0),this.name=`S3MFormatError`}};async function qg(e,t={}){if(tg(e))return pg(e,t);let n=t.inflate??yg,r=t.trace,i=new sh(e),a=Number(i.f32().toFixed(2)),o=0;a>=3&&(o=i.u32()),a>=2&&i.u32();let s=i.u32(),c=new Uint8Array(e,i.base+i.offset,s),l;l=a>=3&&o===0?c:await n(c);let u=new sh(l.buffer,l.byteOffset??0,l.byteLength),d=u.u32();r?.(`fileOptions`,d,u.offset);let f=Tg(u,a);r?.(`groupNode`,f.pageLods.length,u.offset);let p=await Vg(u,a,r);r?.(`skeletons`,Object.keys(p).length,u.offset);let m=Hg(u);r?.(`textures`,Object.keys(m).length,u.offset);let h=Ug(u);r?.(`materials`,u.offset);let g=Wg(u,d,p,a);r?.(`pickInfo`,u.offset);let _;if(a>=3){let e=u.string();_=e?JSON.parse(e):void 0}return{version:a,compressedType:o,options:d,groupNode:f,geoPackage:p,textures:m,materials:h,pickInfo:g,extensions:_,bytesRead:u.offset,bytesTotal:u.view.byteLength}}function Jg(e){return e?e.batchId==null?e.instanceBatchId==null?-1:e.instanceBatchId:e.batchId:-1}function Yg(e){let t=new Map;if(!e)return t;for(let[n,r]of Object.entries(e)){if(!r?.instanceIds?.length)continue;let e=Number(n);if(!Number.isFinite(e))continue;let i=Jg(r);for(let n of r.instanceIds)t.set(n,{smid:e,batchId:i})}return t}function Xg(e,t){let n=e?.pickInfo;if(!n||t<0)return{smid:null,segments:[]};for(let[e,r]of Object.entries(n))if(Jg(r)===t)return{smid:Number(e),segments:r.segments??[]};return{smid:null,segments:[]}}function Zg(e,t){let n=e?.getAttribute(`position`);if(!n||!t.length)return null;let r=1/0,i=1/0,a=1/0,o=-1/0,s=-1/0,c=-1/0,l=0;for(let e of t){let t=Math.min(e.vertexOffset+e.vertexCount,n.count);for(let u=e.vertexOffset;u<t;u++){let e=n.getX(u),t=n.getY(u),d=n.getZ(u);e<r&&(r=e),e>o&&(o=e),t<i&&(i=t),t>s&&(s=t),d<a&&(a=d),d>c&&(c=d),l++}}if(!l)return null;let u=0,d=e.index;if(d){let e=new Uint8Array(n.count);for(let r of t){let t=Math.min(r.vertexOffset+r.vertexCount,n.count);e.fill(1,r.vertexOffset,t)}let r=d.array;for(let t=0;t<r.length;t+=3)e[r[t]]&&e[r[t+1]]&&e[r[t+2]]&&u++}return{minX:r,minY:i,minZ:a,maxX:o,maxY:s,maxZ:c,count:l,triangles:u}}function Qg(e){let{smid:t,box:n,triangles:r,floorHeight:i=e_}=e;if(!n)return{smid:t,triangles:r};let a=n.maxZ-n.minZ;return{smid:t,height:$g(a,1),baseElevation:$g(n.minZ,1),size:[$g(n.maxX-n.minX,1),$g(n.maxY-n.minY,1)],bboxArea:$g((n.maxX-n.minX)*(n.maxY-n.minY),1),floors:Math.max(1,Math.round(a/i)),triangles:n.triangles??r,vertices:n.count,bbox:[[$g(n.minX,1),$g(n.minY,1),$g(n.minZ,1)],[$g(n.maxX,1),$g(n.maxY,1),$g(n.maxZ,1)]]}}function $g(e,t){let n=10**t;return Math.round(e*n)/n}var e_,t_=n((()=>{e_=3.2}));t_();var n_=`SmID`,r_=200,i_=new Set([`smgeometry`,`smindexkey`,`smgeoposition`]);function a_(e){return e.replace(/x'[0-9A-Fa-f]*'/g,`null`).replace(/(\d)[dDlLfF](?=\s*[,}\]])/g,`$1`)}var o_=class{constructor(e){if(X(this,`dataServiceUrl`,void 0),X(this,`datasourceName`,void 0),X(this,`datasetName`,void 0),X(this,`idField`,void 0),X(this,`_fields`,void 0),X(this,`_chunkSize`,void 0),X(this,`_formatOption`,void 0),X(this,`_fetch`,void 0),X(this,`_cache`,new Map),X(this,`_schema`,null),X(this,`_resolvedFields`,null),X(this,`_format`,null),X(this,`_stats`,{requests:0,bytes:0,ms:0}),!e?.dataServiceUrl)throw Error(`[s3m] AttributeQuery 缺少 dataServiceUrl`);let[t,n]=(e.datasetName?.includes(`:`)?e.datasetName:`DataSource:${e.datasetName??``}`).split(`:`);if(!n)throw Error(`[s3m] datasetName 格式应为 "数据源:数据集",收到 "${e.datasetName}"`);this.dataServiceUrl=e.dataServiceUrl.replace(/\/+$/,``),this.datasourceName=t,this.datasetName=n,this.idField=e.idField??n_,this._fields=e.fields?.length?e.fields:null,this._chunkSize=Math.max(1,e.chunkSize??r_),this._formatOption=e.format??`auto`,this._fetch=e.fetchImpl??globalThis.fetch.bind(globalThis)}get datasetPath(){return`${this.dataServiceUrl}/datasources/name/${encodeURIComponent(this.datasourceName)}/datasets/name/${encodeURIComponent(this.datasetName)}`}get stats(){return{...this._stats}}async loadSchema(){if(this._schema)return this._schema;let e=await this._fetch(`${this.datasetPath}/fields.json`);if(this._stats.requests++,!e.ok)throw Error(`[s3m] 读取字段表失败 ${e.status}:${this.datasetPath}/fields.json`);let t=await e.json();return this._schema=(t.fieldNames??[]).map(e=>({name:e})),this._schema}hasCached(e){return this._cache.has(e)}clearCache(){this._cache.clear(),this._stats={requests:0,bytes:0,ms:0}}async queryBySmids(e){let t=[...new Set(e.filter(e=>Number.isFinite(e)))],n=new Map;for(let e of t){let t=this._cache.get(e);t&&n.set(e,t)}let r=t.filter(e=>!this._cache.has(e));if(!r.length)return n;let i=await this._resolveFields();for(let e=0;e<r.length;e+=this._chunkSize){let t=r.slice(e,e+this._chunkSize),a=await this._queryChunk(t,i);for(let[e,t]of a)this._cache.set(e,t),n.set(e,t)}return n}async _resolveFields(){if(this._resolvedFields)return this._resolvedFields;if(this._fields)return this._resolvedFields=this._fields,this._resolvedFields;let e=(await this.loadSchema()).map(e=>e.name).filter(e=>!i_.has(e.toLowerCase()));return this._resolvedFields=e.length?e:[this.idField],this._resolvedFields}async _resolveFormat(){if(this._format)return this._format;if(this._formatOption!==`auto`)return this._format=this._formatOption;try{let e=await this._fetch(`${this.datasetPath}/features.json?fromIndex=0&toIndex=1`);this._stats.requests++;let t=await e.json(),n=String(t.geometryType??``).toUpperCase().includes(`MODEL`);this._format=n?`fastjson`:`json`}catch{this._format=`fastjson`}return this._format}async _queryChunk(e,t){let n={getFeatureMode:`SQL`,datasetNames:[`${this.datasourceName}:${this.datasetName}`],queryOption:`ATTRIBUTE`,queryParameter:{attributeFilter:`${this.idField} IN (${e.join(`,`)})`,fields:t}},r=await this._resolveFormat(),i=await this._post(n,r),a;try{a=this._parse(i)}catch(e){if(r!==`fastjson`)throw e;a=this._parse(await this._post(n,`json`))}if(a.error)throw Error(`[s3m] 属性查询失败:${a.error.errorMsg??`未知错误`}`);let o=new Map;for(let e of a.features??[]){let t=e.fieldNames??[],n=e.fieldValues??[],r={};for(let e=0;e<t.length;e++)r[t[e]]=n[e];let i=r[this.idField]??e.ID,a=Number(i);Number.isFinite(a)&&o.set(a,r)}return o}async _post(e,t){let n=performance.now(),r=await this._fetch(`${this.dataServiceUrl}/featureResults.${t}?returnContent=true`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)}),i=await r.text();if(this._stats.requests++,this._stats.bytes+=i.length,this._stats.ms+=Math.round(performance.now()-n),!r.ok)throw Error(`[s3m] 属性查询失败 ${r.status}:${i.slice(0,200)}`);return i}_parse(e){return JSON.parse(e.includes(`x'`)||/\d[dDlL](?=\s*[,}\]])/.test(e)?a_(e):e)}},s_=6378137;function c_(e,t,n=0){let r=Math.sin(t*Math.PI/180),i=(180+e)/360,a=.5-.25*Math.log((1+r)/(1-r))/Math.PI,o=1/(2*Math.PI*s_)/Math.cos(t*Math.PI/180);return{x:i,y:a,z:n*o,meterInMercator:o,altitude:n}}function l_(e,t){return[e*360-180,Math.atan(Math.sinh(Math.PI*(1-2*t)))*180/Math.PI]}function u_(e,t,n,r=0){return e?e.worldFromLngLat(t,n,r):c_(t,n,r)}function d_(e,t,n){return e?e.lngLatFromWorld(t,n):l_(t,n)}var f_=class extends Error{constructor(e){super(e),this.name=`WorkerDeadError`}},p_=class e{static create(){if(typeof Worker>`u`)return null;try{let t=new Worker(new URL(`/assets/s3mWorker-hZY5KqWF.js`,``+{}.url),{type:`module`});return new e(t)}catch{return null}}constructor(e){X(this,`_worker`,void 0),X(this,`_seq`,0),X(this,`_pending`,new Map),X(this,`dead`,!1),this._worker=e,e.onmessage=e=>{let t=e.data,n=this._pending.get(t.id);if(n){if(this._pending.delete(t.id),t.ok)`tile`in t?n.resolve(t.tile):n.resolve(t.data);else{let e=Error(t.message);e.permanent=t.permanent,n.reject(e)}}},e.onerror=()=>this._die(`s3m 解析 Worker 加载失败/崩溃`),e.onmessageerror=()=>this._die(`s3m 解析 Worker 消息无法反序列化`)}parseTile(e){if(this.dead)return Promise.reject(new f_(`s3m 解析 Worker 已终止`));let t=++this._seq;return new Promise((n,r)=>{this._pending.set(t,{resolve:n,reject:r}),this._worker.postMessage({type:`parse`,id:t,buffer:e})})}decodeTexture(e){if(this.dead)return Promise.reject(new f_(`s3m 解析 Worker 已终止`));let t=++this._seq;return new Promise((n,r)=>{this._pending.set(t,{resolve:n,reject:r}),this._worker.postMessage({type:`tex`,id:t,tex:e})})}dispose(){this._die(`dispose`)}_die(e){if(this.dead)return;this.dead=!0;try{this._worker.terminate()}catch{}let t=new f_(`${e},退回主线程解析`);for(let e of this._pending.values())e.reject(t);this._pending.clear()}},m_;function h_(){return m_===void 0&&(m_=p_.create()),m_&&m_.dead?null:m_}async function g_(e){let t=h_();if(!t)return null;try{return await t.decodeTexture(e)}catch{return null}}function __(e,t,n,r){let i=e|t<<8,a=i>>11&31,o=i>>5&63,s=i&31;return n[r+0]=a<<3|a>>2,n[r+1]=o<<2|o>>4,n[r+2]=s<<3|s>>2,n[r+3]=255,i}function v_(e,t,n,r){let i=new Uint8Array(16),a=__(t[n+0],t[n+1],i,0),o=__(t[n+2],t[n+3],i,4);for(let e=0;e<3;e++){let t=i[e],n=i[4+e];r&&a<=o?(i[8+e]=(t+n)/2,i[12+e]=0):(i[8+e]=(2*t+n)/3,i[12+e]=(t+2*n)/3)}i[11]=255,i[15]=r&&a<=o?0:255;let s=new Uint8Array(16);for(let e=0;e<4;++e){let r=t[n+4+e];s[4*e+0]=r&3,s[4*e+1]=r>>2&3,s[4*e+2]=r>>4&3,s[4*e+3]=r>>6&3}for(let t=0;t<16;++t){let n=4*s[t];for(let r=0;r<4;++r)e[4*t+r]=i[n+r]}}function y_(e,t,n){for(let r=0;r<8;++r){let i=t[n+r],a=i&15,o=i&240;e[8*r+3]=a|a<<4,e[8*r+7]=o|o>>4}}function b_(e,t,n){let r=t[n+0],i=t[n+1],a=new Uint8Array(8);if(a[0]=r,a[1]=i,r<=i){for(let e=1;e<5;++e)a[1+e]=((5-e)*r+e*i)/5;a[6]=0,a[7]=255}else for(let e=1;e<7;++e)a[1+e]=((7-e)*r+e*i)/7;let o=new Uint8Array(16),s=n+2,c=0;for(let e=0;e<2;++e){let e=0;for(let n=0;n<3;++n){let r=t[s++];e|=r<<8*n}for(let t=0;t<8;++t){let n=e>>3*t&7;o[c++]=n}}for(let t=0;t<16;++t)e[4*t+3]=a[o[t]]}function x_(e,t,n,r){let i=0;r&6&&(i=8),v_(e,t,n+i,(r&T_)!==0),(r&E_)===0?(r&D_)!==0&&b_(e,t,n):y_(e,t,n)}function S_(e){let t=e.byteOffset&-2,n=e.byteLength+(e.byteOffset&1)>>1;return new Uint16Array(e.buffer,t,n)}function C_(e,t,n,r){let i=new Uint16Array(4),a=e,o=0,s=0,c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=t/4,g=n/4;for(let e=0;e<g;e++)for(let n=0;n<h;n++)c=4*((g-e)*h+n),i[0]=r[c],i[1]=r[c+1],l=i[0]&31,u=i[0]&2016,d=i[0]&63488,f=i[1]&31,p=i[1]&2016,m=i[1]&63488,i[2]=5*l+3*f>>3|5*u+3*p>>3&2016|5*d+3*m>>3&63488,i[3]=5*f+3*l>>3|5*p+3*u>>3&2016|5*m+3*d>>3&63488,o=r[c+2],s=e*4*t+n*4,a[s]=i[o&3],a[s+1]=i[o>>2&3],a[s+2]=i[o>>4&3],a[s+3]=i[o>>6&3],s+=t,a[s]=i[o>>8&3],a[s+1]=i[o>>10&3],a[s+2]=i[o>>12&3],a[s+3]=i[o>>14&3],o=r[c+3],s+=t,a[s]=i[o&3],a[s+1]=i[o>>2&3],a[s+2]=i[o>>4&3],a[s+3]=i[o>>6&3],s+=t,a[s]=i[o>>8&3],a[s+1]=i[o>>10&3],a[s+2]=i[o>>12&3],a[s+3]=i[o>>14&3];return a}function w_(e,t,n,r,i){let a=(i&T_)===0?16:8,o=0;for(let s=0;s<n;s+=4)for(let c=0;c<t;c+=4){let l=new Uint8Array(64);x_(l,r,o,i);let u=0;for(let r=0;r<4;++r)for(let i=0;i<4;++i){let a=c+i,o=s+r;if(a<t&&o<n){let r=4*(t*(n-1-o)+a);for(let t=0;t<4;++t)e[r++]=l[u++]}else u+=4}o+=a}}var T_,E_,D_,O_,k_,A_=n((()=>{T_=1,E_=2,D_=4,O_=32,k_={decode(e,t,n,r,i){if(e==null||r==null||n===0||t===0)return;let a;switch(i){case 17:a=T_;break;case 18:case 19:a=E_;break;case 20:case 21:a=D_;break;default:a=i>11||i===5?D_:33}(a&T_)!==0&&(a&O_)!==0?C_(S_(e),t,n,S_(r)):w_(e,t,n,r,a)}}}));A_();function j_(e){if(!e.data||!e.width||!e.height)return null;let t=e.compressType;if((t===0||t===void 0)&&e.pixelFormat===28&&e.data.length===e.width*e.height*4)return{rgba:e.data,topDown:!0};if(!(t===12||t===13||t===14||t===17||t===19||t===20||t===21||e.pixelFormat>=17))return null;let n=new Uint8Array(e.width*e.height*4);try{k_.decode(n,e.width,e.height,e.data,e.pixelFormat)}catch{return null}return{rgba:n,topDown:!1}}function M_(e){let t=Object.entries(e).filter(([,e])=>e.data&&e.width>0&&e.height>0);if(t.length<2)return null;let n=new Map;for(let[e,r]of t){let t=j_(r);if(!t)return null;n.set(e,{w:r.width,h:r.height,rgba:t.rgba,topDown:t.topDown})}let r=0,i=0,a=0,o=0,s=new Map;for(let[e,t]of n)r>0&&r+t.w>1024&&(r=0,i+=a,a=0),s.set(e,{x:r,y:i}),r+=t.w,a=Math.max(a,t.h),o=Math.max(o,r);let c=Math.max(1,o),l=Math.max(1,i+a),u=new Uint8Array(c*l*4);for(let[e,t]of n){let n=s.get(e);for(let e=0;e<t.h;e++){let r=(t.topDown?e:t.h-1-e)*t.w*4;u.set(t.rgba.subarray(r,r+t.w*4),((n.y+e)*c+n.x)*4)}}return{width:c,height:l,data:u,offsets:s}}async function N_(e){if(typeof DecompressionStream>`u`)throw Error(`[s3m] 当前环境无 DecompressionStream,请通过 options.inflate 注入解压实现`);let t=new Blob([e]).stream().pipeThrough(new DecompressionStream(`deflate`));return new Uint8Array(await new Response(t).arrayBuffer())}function P_(e){let t=e.u32(),n={};for(let r=0;r<t;r++){let t=e.string();e.align4();let r=e.u32(),i=e.u8(),a=e.u32(),o=e.u32(),s=e.u32(),c=e.u32(),l=e.u32(),u=i?e.bytesCopy(c):null,d=e.u32(),f=[];for(let t=0;t<d;t++)f.push(e.string());let p=e.u32(),m=[];for(let t=0;t<p;t++)m.push(e.string());let h=e.u32(),g=[];for(let t=0;t<h;t++){let t=e.string(),n=e.u32(),r=e.u32(),i=e.u32(),a=e.u32(),o=e.u32(),s=[];for(let t=0;t<o;t++){let t=e.string(),n=e.u32(),r=e.u32(),i=e.u32();s.push({geoName:t,vertexOffset:n,vertexCount:r,texUnitIndex:i})}g.push({subName:t,offsetX:n,offsetY:r,width:i,height:a,bindings:s})}n[t]={id:t,level:r,width:a,height:o,compressType:s,pixelFormat:l,data:u,childTexNames:f,requestNames:m,subTexInfos:g}}return n}function F_(e){let t=Object.values(e);if(t.some(e=>e.packed))return null;let n=M_(e);if(!n)return null;let r=t.filter(e=>e.leafSig).map(e=>`${e.id}=${e.leafSig}`),i=`${n.width}x${n.height}#${[...n.offsets.keys()].sort().join(`,`)}`+(r.length?`@${[...r].sort().join(`,`)}`:``);for(let e of t){let t=e;t.origin={width:e.width,height:e.height,pixelFormat:e.pixelFormat,compressType:e.compressType,dataLength:e.data?.length??0,data:e.data??void 0},e.width=n.width,e.height=n.height,e.data=n.data,e.compressType=0,e.pixelFormat=28,t.flipY=!1,t.packed=!0,t.packKey=i}return n}function I_(e){let t=e.texturePackage;if(!t)return!1;let n=!1;for(let e of Object.values(t)){let t=e;t.packed&&t.origin?.data&&(e.width=t.origin.width,e.height=t.origin.height,e.pixelFormat=t.origin.pixelFormat,e.compressType=t.origin.compressType,e.data=t.origin.data,t.flipY=!t.composed,t.packed=!1,t.rectScale=1,delete t.packKey,n=!0)}return n&&(e.textures={},e.atlasRects={}),n}function L_(e){let t=F_(e.texturePackage??{});e.atlasRects=z_(e.geoPackage,e.texturePackage??{},t),e.textures=R_(e.texturePackage??{})}function R_(e){let t={};for(let n of Object.values(e)){if(!n.data)continue;let e=n.packed===!0,r=n.composed===!0,i=e||r;t[n.id]={code:n.id,level:n.level,width:n.width,height:n.height,compressType:n.compressType,pixelFormat:n.pixelFormat,data:n.data,flipY:!i,packed:e,composed:r,packKey:n.packKey}}return t}function z_(e,t,n){let r={},i=(t,n)=>{let i=e[t];if(!i)return new Float32Array;let a=r[t]??(r[t]={}),o=a[n];if(!o){let e=i.vertexPackage.verticesCount;o=a[n]=new Float32Array(e*4)}return o},a=new Map;for(let[e,n]of Object.entries(t)){if(!n.width||!n.height)continue;let t=n.rectScale??1;a.set(e,n.subTexInfos.map(e=>({x:e.offsetX*t,y:e.offsetY*t,w:e.width*t,h:e.height*t})))}let o=0;for(let[s,c]of Object.entries(t)){if(!c.width||!c.height)continue;let t=n?n.offsets.get(s)??{x:0,y:0}:{x:0,y:0},l=a.get(s)??[];c.subTexInfos.forEach((n,a)=>{o++;let s=l[a]??{x:n.offsetX,y:n.offsetY,w:n.width,h:n.height},u=c.origin,d=u?u.width*u.height:c.width*c.height,f=d>0&&n.width*n.height/d>=.5,p={x:(t.x+s.x)/c.width,y:(t.y+s.y)/c.height,w:s.w/c.width,h:s.h/c.height};for(let t of n.bindings){var m,h;let a=e[t.geoName];if(!a)continue;let s=t.texUnitIndex===0?`uv`:`uv2`,c=i(t.geoName,s),l=t.texUnitIndex===0?(m=r[t.geoName]).group??(m.group=new Float32Array(a.vertexPackage.verticesCount)):null,u=t.texUnitIndex===0?(h=r[t.geoName]).groupDim??(h.groupDim=new Float32Array(a.vertexPackage.verticesCount*3)):null,d=Math.min(t.vertexOffset+t.vertexCount,a.vertexPackage.verticesCount);for(let e=t.vertexOffset;e<d;e++)c[e*4]=p.x,c[e*4+1]=p.y,c[e*4+2]=p.w,c[e*4+3]=p.h,l&&u&&(l[e]=o,u[e*3]=n.width,u[e*3+1]=n.height,u[e*3+2]=+!!f)}})}return r}async function B_(e,t={}){let n=t.inflate??N_,r=new Uint8Array(e),i=await W_(r,n);if(i)return i;let a=await G_(r,n);if(a)return a;let o=await H_(r,n);if(o)return[o];throw Error(`[s3m] .texblock 无法识别的外层格式(动态 pack / 静态 pack / 容器均不成立)`)}function V_(e,t){let n=new sh(e.buffer,e.byteOffset,e.byteLength),r=[];for(;n.remaining>=20;){let e=n.u32(),i=n.u32(),a=n.u32(),o=n.u32(),s=n.u32();if(!i||!a||s>n.remaining)break;r.push({id:t,width:i,height:a,compressType:e,pixelFormat:o,data:n.bytesCopy(s)})}return r}async function H_(e,t){if(e.byteLength<8)return null;try{let n=new sh(e.buffer,e.byteOffset,e.byteLength),r=n.u32();if(r<1||r>4096)return null;let i=[];for(let e=0;e<r;e++){let e=n.offset,r=n.u32();if(r<1||r>4096||n.remaining<r+8)return null;n.offset=e;let a=n.string(),o=n.u32(),s=n.u32();if(s>n.remaining)return null;let c=await t(n.bytesCopy(s));if(c.length!==o)return null;i.push(...V_(c,a))}return i.length?i:null}catch{return null}}async function U_(e,t){if(e.byteLength<16)return null;try{let n=new sh(e.buffer,e.byteOffset,e.byteLength),r=n.offset,i=n.u32();if(i<1||i>4096||n.remaining<i+8)return null;n.offset=r;let a=n.string(),o=n.u32(),s=n.u32();if(s!==n.remaining)return null;let c=await t(n.bytesCopy(s));if(c.length!==o)return null;let l=V_(c,a);return l.length?l:null}catch{return null}}async function W_(e,t){if(e.byteLength<8)return null;try{let n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=n.getUint32(0,!0);if(r<1||r>256)return null;let i=4+4*r;if(i>e.byteLength)return null;let a=i,o=[];for(let e=0;e<r;e++){let t=n.getUint32(4+e*4,!0);if(t<8)return null;o.push(t),a+=t}if(a!==e.byteLength)return null;let s=[],c=i;for(let n of o){let r=await H_(e.subarray(c,c+n),t);if(!r)return null;s.push(r),c+=n}return s}catch{return null}}async function G_(e,t){if(e.byteLength<12)return null;try{let n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=n.getUint32(0,!0);if(r<1||r>4096)return null;let i=4+8*r;if(i>e.byteLength)return null;let a=[];for(let o=0;o<r;o++){let r=n.getUint32(4+o*8,!0),s=n.getUint32(8+o*8,!0);if(r<i||s<8||r>e.byteLength-s)return null;let c=await U_(e.subarray(r,r+s),t);if(!c)return null;a.push(c)}return a}catch{return null}}function K_(e){let t=e=>{let t=e.indexOf(`.`);return t>=0?e.slice(0,t):e},n=new Map,r=[];for(let i of e??[]){let e=t(i);if(e.split(`_`)[0]===`Tex`){let e=i.indexOf(`#`);if(e<0)continue;let r=t(i.slice(0,e)),a=i.slice(e+1),o=n.get(r)??[];for(let e=0;e+3<=a.length;e+=3){let t=`${r}_${a.slice(e,e+3)}`;o.includes(t)||o.push(t)}n.set(r,o)}else r.includes(e)||r.push(e)}let i=[];for(let e of n.values())for(let t of e)i.includes(t)||i.push(t);for(let e of r)i.includes(e)||i.push(e);return{packGroups:n,plain:r,names:i}}function q_(e,t){let n=e.subTexInfos??[];if(!n.length||!e.width||!e.height)return null;let r=[];for(let e of n){let n=t.get(e.subName);n&&r.push({sub:e,sprite:n})}if(!r.length)return null;let i=e.width,a=e.height;for(let{sub:e,sprite:t}of r)i=Math.max(i,e.offsetX+t.image.width),a=Math.max(a,e.offsetY+t.image.height);let o=new Uint8Array(i*a*4),s=[],c=[],l=[],u=[],d=0;for(let e of n){let n=t.get(e.subName);if(!n){c.push(e.subName);continue}let r=n.image;(r.width!==e.width||r.height!==e.height)&&l.push(e.subName);let f=j_({id:r.id,width:r.width,height:r.height,compressType:r.compressType,pixelFormat:r.pixelFormat,data:r.data});if(!f)c.push(e.subName);else{for(let t=0;t<r.height;t++){let n=f.topDown?t:r.height-1-t,s=e.offsetY+t;if(s>=a)break;let c=n*r.width*4;o.set(f.rgba.subarray(c,c+r.width*4),(s*i+e.offsetX)*4)}d++,s.push(e.subName),u.push(`${n.source}#${e.subName}`)}}return d?{width:i,height:a,data:o,matched:s,missing:c,mismatched:l,sig:u.sort().join(`,`)}:null}async function J_(e,t={}){let n=t.inflate??N_,r=new sh(e),i=r.f32(),a=r.u32();if(a<1||a>4096)throw Error(`[s3m] S3MBLOCK 组数异常:${a}`);let o=[],s=[];for(let e=0;e<a;e++){let e=r.string().replace(/\.s3mblock$/i,``);s.push(e);let t=[];if(i<=3){let e=r.u32();for(let n=0;n<e;n++){let e=r.f32(),n=r.u16(),i={center:{x:r.f64(),y:r.f64(),z:r.f64()},radius:r.f64()},a=r.string();t.push({rangeValue:e,rangeMode:n,boundingSphere:i,childTile:a})}}let a=Number(r.f32().toFixed(2)),c=0;a>=3&&(c=r.u32());let l=r.u32(),u=r.u32(),d=await n(r.bytesCopy(u));if(d.length!==l)throw Error(`[s3m] S3MBLOCK 解压长度不符:声明 ${l},实际 ${d.length}`);let f=new sh(d.buffer,d.byteOffset,d.byteLength),p=f.u32(),m=f.u32(),h=wg(new sh(f.buffer,f.base+f.offset,m),a);f.skip(m),m=f.u32();let g=await Bg(new sh(f.buffer,f.base+f.offset,m),a);f.skip(m),a<3&&(m=f.u32(),f.skip(m)),m=f.u32();let _=P_(new sh(f.buffer,f.base+f.offset,m));f.skip(m);let v=f.string(),y=[];if(v)try{y=JSON.parse(v.replace(/\n\0/,``))}catch{y=v}let b=null,x;if((p&1)==1&&(a>=3&&f.u32(),m=f.u32(),b=Gg(new sh(f.buffer,f.base+f.offset,m),g,a),f.skip(m)),a>=3){let e=f.string();x=e?JSON.parse(e):void 0}let S=z_(g,_,F_(_)),C=R_(_),w=h.pageLods,T=t.map((e,t)=>{let n=w[t];return{rangeValue:e.rangeValue,rangeMode:e.rangeMode,boundingSphere:e.boundingSphere,childTile:e.childTile,geodes:n?.geodes??[],...n?.obb?{obb:n.obb}:{}}});o.push({version:a,compressedType:c,options:p,groupNode:{pageLods:T},geoPackage:g,textures:C,materials:y,pickInfo:b,extensions:x,bytesRead:f.offset,bytesTotal:d.byteLength,blockVersion:i,blockName:e,texturePackage:_,atlasRects:S})}return{tiles:o,names:s}}function Y_(e){switch(e){case 17:return`dxt1`;case 18:case 19:return`dxt3`;case 20:return`dxt4`;case 21:return`dxt5`;case 25:return`webp`;case 12:case 13:case 10:case 11:case 14:case 28:return`raw`;default:return null}}function X_(e){switch(e){case 14:return`dxt5`;case ev.DXT1_RGB:case ev.DXT1_RGBA:return`dxt1`;case ev.DXT3:return`dxt3`;case ev.DXT5:return`dxt5`;case ev.WEBP:return`webp`;case ev.CRN:case ev.CRN_DXT5:return`crn`;case ev.KTX2:return`ktx2`;default:return null}}function Z_(e,t){return tv.has(e)?`crn`:X_(e)||(Y_(t)??`unknown`)}function Q_(e){return nv[e]??21}var $_,ev,tv,nv,rv=n((()=>{$_={RGB:10,BGR:11,ARGB:12,ABGR:13,BGRA:14,RGBA:28,WEBP:25,DXT1:17,DXT3:19,DXT4:20,DXT5:21,CRN_DXT5:26,STANDARD_CRN:27},ev={NONE:0,DXT1_RGB:33776,DXT1_RGBA:33777,DXT3:33778,DXT5:33779,WEBP:38e3,CRN:38001,KTX2:38002,CRN_DXT5:5e4},tv=new Set([26,27]),nv={dxt1:17,dxt3:19,dxt4:20,dxt5:21}}));A_(),rv();function iv(e){if(!e.data?.length||!e.width||!e.height)return null;let t=e.width*e.height*4;if(e.compressType===0&&e.pixelFormat===28&&e.data.length>=t)return e.data.subarray(0,t);let n=Z_(e.compressType,e.pixelFormat);if(!n.startsWith(`dxt`))return null;let r=new Uint8Array(e.width*e.height*4);try{k_.decode(r,e.width,e.height,e.data,Q_(n))}catch{return null}return r}function av(e,t,n,r,i){let a=new Uint8Array(r*i*4);for(let o=0;o<i;o++){let s=o*n/i,c=(o+1)*n/i;for(let i=0;i<r;i++){let l=i*t/r,u=(i+1)*t/r,d=0,f=0,p=0,m=0,h=0;for(let r=Math.floor(s);r<Math.ceil(c);r++)for(let i=Math.floor(l);i<Math.ceil(u);i++){let a=Math.min(t-1,i),o=(Math.min(n-1,r)*t+a)*4;d+=e[o],f+=e[o+1],p+=e[o+2],m+=e[o+3],h++}let g=(o*r+i)*4;a[g]=d/h,a[g+1]=f/h,a[g+2]=p/h,a[g+3]=m/h}}return a}function ov(e,t,n={}){let r=n.maxAspectDelta??.02,i=n.maxMeanError??24,a=e.width/e.height,o=t.width/t.height,s=Math.abs(o/a-1),c=t.width/e.width,l=t.height/e.height,u=e=>({ok:!1,reason:e,aspectDelta:s,scale:c,meanAbsError:NaN});if(!Number.isFinite(s)||s>r)return u(`aspect`);if(t.width*t.height<=e.width*e.height)return u(`content`);if(c!==l||!Number.isInteger(c))return u(`scale`);let d=iv(e),f=iv(t);if(!d||!f)return u(`undecodable`);let p=av(f,t.width,t.height,e.width,e.height),m=0,h=0;for(let t=0;t<e.width*e.height;t++)if(!(d[t*4+3]<8)){for(let e=0;e<3;e++)m+=Math.abs(d[t*4+e]-p[t*4+e]);h+=3}if(h===0)return u(`empty`);let g=m/h;return{ok:g<=i,reason:g<=i?`ok`:`content`,aspectDelta:s,scale:c,meanAbsError:g}}var sv=i({default:()=>$});function cv(){let e=lv;if(typeof atob==`function`){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}return Uint8Array.from(Buffer.from(e,`base64`))}var lv,uv,dv,$,fv,pv,mv,hv,gv,_v,vv,yv,bv,xv,Sv,Cv,wv,Tv,Ev,Dv,Ov,kv,Av,jv,Mv,Nv,Pv,Fv,Iv,Lv,Rv,zv,Bv,Vv,Hv,Uv,Wv,Gv,Kv,qv,Jv,Yv,Xv,Zv,Qv,$v=n((()=>{if(lv=`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aigCACICDQALIAcgADYCECAAIAQ2AhgLIAAgADYCDCAAIAA2AggPCyAEKAIIIgEgADYCDCAEIAA2AgggAEEANgIYIAAgBDYCDCAAIAE2AggLCzABAX8CQCAARQ0AIABBfGooAgAiAEEDcSIBQQFGDQAgAEF4cUEEQQggARtrDwtBAAtZAQF/IAAgAC0ASiIBQX9qIAFyOgBKIAAoAgAiAUEIcQRAIAAgAUEgcjYCAEF/DwsgAEIANwIEIAAgACgCLCIBNgIcIAAgATYCFCAAIAEgACgCMGo2AhBBAAujAgACQAJAIAFBFEsNACABQXdqIgFBCUsNAAJAAkACQAJAAkACQAJAAkAgAUEBaw4JAQIJAwQFBgkHAAsgAiACKAIAIgFBBGo2AgAgACABKAIANgIADwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAIgFBBGo2AgAgACABMgEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMwEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMAAANwMADwsgAiACKAIAIgFBBGo2AgAgACABMQAANwMADwsgACACQQARDwALDwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC0oBA38gACgCACwAAEFQakEKSQRAA0AgACgCACIBLAAAIQMgACABQQFqNgIAIAMgAkEKbGpBUGohAiABLAABQVBqQQpJDQALCyACCxEAIABFBEBBAA8LIAAgARAsC7QKARx/IwBB8ARrIgUkACAAQeABaiEOIAAoAqQBIQ8CQCAAKALkASIMIANBAWpBfnEiFkEBdCIGTw0AAkAgACgC6AEgBk8NACAOIAYgDEEBaiAGRkEIEAYNACAAQQE6AOwBDAELIAAgBjYC5AELIAAoAgwtABEEQCAEQQFqQX5xIRcgAEHwAGohGiAAQUBrIRggAEEoaiEbIABBEGohECACQQJ2IAZrQQJ0IRxBACEGQQAhDANAIBcEQCABIBRBAnRqKAIAIQtBACERA0AgFgRAIBFBAXEhHSARIARJIRVBACESA0AgACgC5AEgEkEBdCIITQRAIAVBtgg2AlAgBUHOBDYCVCAFQasNNgJYIAVB8ABqIAVB0ABqEAMgBUHwAGoQBAsgDigCACAIQQN0aiEHAkACQAJ/IB0EQCAHLwEADAELIAcgECAbEAUiAkECdiIJQQNxIAJBBHZBDHFyOwEAIAlBDHEgAkEDcXILIgJBA3EiCUEDSw0AAkACQAJAIAlBAWsOAwEDAgALIBAgGBAFIAZqIgZBACAPIAYgD0kbayEGCyAHIAY7AQIMAgsgByAMOwECIAwhBgwBCyAHLwECIQYLIAAoAqQBIAZNBEAgBUG2CDYCQCAFQc4ENgJEIAVBqw02AkggBUHwAGogBUFAaxADIAVB8ABqEAQLIAUgACgCoAEgBkECdGooAgAiCTYCaCAQIBoQBSEeIAJBAnZBP3EiCgRAIBAgGBAFIAZqIgJBACAPIAIgD0kbayEGCyAAKALkASIHIAhBAXIiAk0EQCAFQbYINgIwIAVBzgQ2AjQgBUGrDTYCOCAFQfAAaiAFQTBqEAMgBUHwAGoQBCAAKALkASEHCyAOKAIAIgggAkEDdCINai8BAiEMIBIgA0kgFXEhFSAHIAJNBH8gBUG2CDYCICAFQc4ENgIkIAVBqw02AiggBUHwAGogBUEgahADIAVB8ABqEAQgDigCAAUgCAsgDWogBjsBAiAAKAKkASAGTQRAIAVBtgg2AhAgBUHOBDYCFCAFQasNNgIYIAVB8ABqIAVBEGoQAyAFQfAAahAECyAFIAAoAqABIAZBAnRqKAIAIgg2AmQgFQRAIApBAXYhEyAIQf8BcSICQQRqIAlB/wFxIgdPIAdBA2ogAk9xIgIhB0EBIQoCQCACRQ0AA0BBAEEAIAIgBUHkAGogCmotAAAiAkEEaiAFQegAaiAKai0AACIHSRsgB0EDaiACSRsiAkEARyEHIAJFDQEgCkEBaiIKQQNJDQALCyAJQRh2IR8gCUEQdiEKIAlBCHYhDSAIQRh2ISAgE0EBcyETIAlBA3QhGQJ/IAdFBEAgBSANQQN0QfABcSAIQQl2Qf8AcXI6AG0gBSAZQfABcSAIQf4BcUEBdnI6AGwgCEERdkH/AHEhByAKQQN0QfABcQwBCyAFIAhBCHYgDWtBB3EgDUEDdHI6AG0gBSAIIAlrQQdxIBlyOgBsIApBA3QhByAIQRB2IAprQQdxCyEIIAUgByAIcjoAbiAFIBMgH0EFdCACQQF0ciAgQQJ0cnI6AG8gCyAFKAJsNgIAIAAoArQBIB5BAXQgE3IiAk0EQCAFQbYINgIAIAVBzgQ2AgQgBUGrDTYCCCAFQfAAaiAFEAMgBUHwAGoQBAsgCyAAKAKwASACQQJ0aigCADYCBAsgC0EIaiELIBJBAWoiEiAWRw0ACwsgCyAcaiELIBFBAWoiESAXRw0ACwsgFEEBaiIUIAAoAgwtABFJDQALCyAFQfAEaiQAQQELiQUBAn8jAEHQBGsiASQAIABBADYCACAAKALgASICBEACQCACQQdxBEAgAUG2CDYCQCABQckPNgJEIAFBwgs2AkggAUHQAGogAUFAaxADIAFB0ABqEAQMAQsgAkEAQQBBAUHgFigCAEHQEygCABEAABoLIABCADcC4AEgAEEANgLoAQsgAEEAOgDsASAAKALQASICBEACQCACQQdxBEAgAUG2CDYCMCABQckPNgI0IAFBwgs2AjggAUHQAGogAUEwahADIAFB0ABqEAQMAQsgAkEAQQBBAUHgFigCAEHQEygCABEAABoLIABCADcC0AEgAEEANgLYAQsgAEEAOgDcASAAKALAASICBEACQCACQQdxBEAgAUG2CDYCICABQckPNgIkIAFBwgs2AiggAUHQAGogAUEgahADIAFB0ABqEAQMAQsgAkEAQQBBAUHgFigCAEHQEygCABEAABoLIABCADcCwAEgAEEANgLIAQsgAEEAOgDMASAAKAKwASICBEACQCACQQdxBEAgAUG2CDYCECABQckPNgIUIAFBwgs2AhggAUHQAGogAUEQahADIAFB0ABqEAQMAQsgAkEAQQBBAUHgFigCAEHQEygCABEAABoLIABCADcCsAEgAEEANgK4AQsgAEEAOgC8ASAAKAKgASICBEACQCACQQdxBEAgAUG2CDYCACABQckPNgIEIAFBwgs2AgggAUHQAGogARADIAFB0ABqEAQMAQsgAkEAQQBBAUHgFigCAEHQEygCABEAABoLIABCADcCoAEgAEEANgKoAQsgAEEAOgCsASAAQYgBahAHIABB8ABqEAcgAEHYAGoQByAAQUBrEAcgAEEoahAHIAFB0ARqJAALrQIBBX8jAEGgBGsiASQAIAAoAggiBEF/akGAwABPBEAgAUG2CDYCECABQaQTNgIUIAFB2ws2AhggAUEgaiABQRBqEAMgAUEgahAECyAAIAQ2AgAgACgCFCIDRQRAQQAhA0G0ARAQIgIEQCAC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hHhxDQIgAEEEaiEAIAFBfGoiAUEDSw0ACyACIQEgAyEACyABRQ0BCwNAIAAtAABFDQIgAEEBaiEAIAFBf2oiAQ0ACwtBAA8LIAALxgIBBn8jAEEgayIDJAAgAyAAKAIcIgU2AhAgACgCFCEEIAMgAjYCHCADIAE2AhggAyAEIAVrIgE2AhQgASACaiEGQQIhBSADQRBqIQEDQAJAAn8gBgJ/An9BACAAKAI8IAEgBSADQQxqEAIiBEUNABpB+B4gBDYCAEF/CwRAIANBfzYCDEF/DAELIAMoAgwLIgRGBEAgACAAKAIsIgE2AhwgACABNgIUIAAgASAAKAIwajYCECACDAELIARBf0oNASAAQQA2AhwgAEIANwMQIAAgACgCAEEgcjYCAEEAIAVBAkYNABogAiABKAIEawshACADQSBqJAAgAA8LIAFBCGogASAEIAEoAgQiB0siCBsiASAEIAdBACAIG2siByABKAIAajYCACABIAEoAgQgB2s2AgQgBiAEayEGIAUgCGshBQwAAAsAC34BA38jAEEQayIBJAAgAUEKOgAPAkAgACgCECICRQRAIAAQFw0BIAAoAhAhAgsCQCAAKAIUIgMgAk8NACAALABLQQpGDQAgACADQQFqNgIUIANBCjoAAAwBCyAAIAFBD2pBASAAKAIkEQEAQQFHDQAgAS0ADxoLIAFBEGokAAuFAQECfyMAQaABayICJAAgAkEIakHAEkGQARAOIAIgADYCNCACIAA2AhwgAkF+IABrIgNB/////wdB/////wcgA0sbIgM2AjggAiAAIANqIgA2AiQgAiAANgIYIAJBCGogARArIAMEQCACKAIcIgAgACACKAIYRmtBADoAAAsgAkGgAWokAAsyAQF/IAAoAhQiAyABIAIgACgCECADayIBIAEgAksbIgEQDiAAIAAoAhQgAWo2AhQgAguDAQIDfwF+AkAgAEKAgICAEFQEQCAAIQUMAQsDQCABQX9qIgEgACAAQgqAIgVCCn59p0EwcjoAACAAQv////+fAVYhAiAFIQAgAg0ACwsgBaciAgRAA0AgAUF/aiIBIAIgAkEKbiIDQQpsa0EwcjoAACACQQlLIQQgAyECIAQNAAsLIAELNAAgAFBFBEADQCABQX9qIgEgAKdBD3FBsBJqLQAAIAJyOgAAIABCBIgiAEIAUg0ACwsg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`,dv=function(e){return typeof document>`u`?e:(uv||(uv=document.createElement(`a`)),uv.href=e,uv.href=uv.href,uv.href)},typeof WebAssembly<`u`){for(pv in $=$===void 0?{}:$,fv={},$)$.hasOwnProperty(pv)&&(fv[pv]=$[pv]);for(pv in mv=[],hv=!1,gv=!1,_v=!1,vv=!1,yv=!1,hv=typeof window==`object`,gv=typeof importScripts==`function`,vv=typeof process==`object`&&typeof process.versions==`object`&&typeof process.versions.node==`string`,_v=vv&&!hv&&!gv,yv=!hv&&!_v&&!gv,bv=``,_v?(bv=typeof __dirname<`u`?__dirname+`/`:``,xv=function(e,t){throw Error(`crunch_decoder: wasm 已内联,不支持按路径读取(`+e+`)`)},Sv=function(e){return xv(e,!0)},process.argv.length>1&&process.argv[1].replace(/\\/g,`/`),mv=process.argv.slice(2),process.on(`uncaughtException`,function(e){if(!(e instanceof w))throw e}),process.on(`unhandledRejection`,m),$.inspect=function(){return`[Emscripten Module object]`}):yv?(typeof read<`u`&&(xv=function(e){return read(e)}),Sv=function(t){var n;return typeof readbuffer==`function`?new Uint8Array(readbuffer(t)):(n=read(t,`binary`),e(typeof n==`object`),n)},typeof scriptArgs<`u`?mv=scriptArgs:typeof arguments<`u`&&(mv=arguments),typeof print<`u`&&(typeof console>`u`&&(console={}),console.log=print,console.warn=console.error=typeof printErr<`u`?printErr:print)):(hv||gv)&&(gv?bv=self.location.href:document.currentScript&&(bv=document.currentScript.src),bv=bv.indexOf(`blob:`)===0?``:bv.substr(0,bv.lastIndexOf(`/`)+1),xv=function(e){var t=new XMLHttpRequest;return t.open(`GET`,e,!1),t.send(null),t.responseText},gv&&(Sv=function(e){var t=new XMLHttpRequest;return t.open(`GET`,e,!1),t.responseType=`arraybuffer`,t.send(null),new Uint8Array(t.response)})),Cv=$.print||console.log.bind(console),wv=$.printErr||console.warn.bind(console),fv)fv.hasOwnProperty(pv)&&($[pv]=fv[pv]);fv=null,$.arguments&&(mv=$.arguments),$.thisProgram&&$.thisProgram,$.quit&&$.quit,Tv=cv(),$.noExitRuntime&&$.noExitRuntime,typeof WebAssembly!=`object`&&wv(`no native wasm support detected`),Dv=new WebAssembly.Table({initial:6,maximum:6,element:`anyfunc`}),Ov=!1;function e(e,t){e||m(`Assertion failed: `+t)}kv=typeof TextDecoder<`u`?new TextDecoder(`utf8`):void 0;function t(e,t,n){for(var r=t+n,i=t;e[i]&&!(i>=r);)++i;if(i-t>16&&e.subarray&&kv)return kv.decode(e.subarray(t,i));for(var a=``;t<i;){var o=e[t++];if(!(o&128))a+=String.fromCharCode(o);else{var s=e[t++]&63;if((o&224)==192)a+=String.fromCharCode((o&31)<<6|s);else{var c=e[t++]&63;if(o=(o&240)==224?(o&15)<<12|s<<6|c:(o&7)<<18|s<<12|c<<6|e[t++]&63,o<65536)a+=String.fromCharCode(o);else{var l=o-65536;a+=String.fromCharCode(55296|l>>10,56320|l&1023)}}}}return a}function n(e,n){return e?t(Nv,e,n):``}typeof TextDecoder<`u`&&new TextDecoder(`utf-16le`),Av=65536;function r(e,t){return e%t>0&&(e+=t-e%t),e}function i(e){jv=e,$.HEAP8=Mv=new Int8Array(e),$.HEAP16=new Int16Array(e),$.HEAP32=Pv=new Int32Array(e),$.HEAPU8=Nv=new Uint8Array(e),$.HEAPU16=new Uint16Array(e),$.HEAPU32=new Uint32Array(e),$.HEAPF32=new Float32Array(e),$.HEAPF64=new Float64Array(e)}Fv=5247584,Iv=4544,Lv=$.TOTAL_MEMORY||16777216,Ev=$.wasmMemory?$.wasmMemory:new WebAssembly.Memory({initial:Lv/Av}),Ev&&(jv=Ev.buffer),Lv=jv.byteLength,i(jv),Pv[Iv>>2]=Fv;function a(e){for(;e.length>0;){var t=e.shift();if(typeof t==`function`)t();else{var n=t.func;typeof n==`number`?t.arg===void 0?$.dynCall_v(n):$.dynCall_vi(n,t.arg):n(t.arg===void 0?null:t.arg)}}}Rv=[],zv=[],Bv=[],Vv=[];function o(){if($.preRun)for(typeof $.preRun==`function`&&($.preRun=[$.preRun]);$.preRun.length;)u($.preRun.shift());a(Rv)}function s(){a(zv)}function c(){a(Bv)}function l(){if($.postRun)for(typeof $.postRun==`function`&&($.postRun=[$.postRun]);$.postRun.length;)d($.postRun.shift());a(Vv)}function u(e){Rv.unshift(e)}function d(e){Vv.unshift(e)}Hv=0,Uv=null,Wv=null;function f(e){Hv++,$.monitorRunDependencies&&$.monitorRunDependencies(Hv)}function p(e){if(Hv--,$.monitorRunDependencies&&$.monitorRunDependencies(Hv),Hv==0&&(Uv!==null&&(clearInterval(Uv),Uv=null),Wv)){var t=Wv;Wv=null,t()}}$.preloadedImages={},$.preloadedAudios={};function m(e){throw $.onAbort&&$.onAbort(e),e+=``,Cv(e),wv(e),Ov=!0,e=`abort(`+e+`). Build with -s ASSERTIONS=1 for more info.`,new WebAssembly.RuntimeError(e)}Gv=`data:application/octet-stream;base64,`;function h(e){return String.prototype.startsWith?e.startsWith(Gv):e.indexOf(Gv)===0}Kv=`crunch.wasm`,h(Kv)||(Kv=dv(`./S3M_module/S3MTiles/ThirdParty/crunch.wasm`));function g(){try{if(Tv)return new Uint8Array(Tv);if(Sv)return Sv(Kv);throw`both async and sync fetching of the wasm failed`}catch(e){m(e)}}function _(){return!Tv&&(hv||gv)&&typeof fetch==`function`?fetch(Kv,{credentials:`same-origin`}).then(function(e){if(!e.ok)throw`failed to load wasm binary file at '`+Kv+`'`;return e.arrayBuffer()}).catch(function(){return g()}):new Promise(function(e,t){e(g())})}function v(){var e={env:Yv,wasi_unstable:Yv};function t(e,t){$.asm=e.exports,p(`wasm-instantiate`)}f(`wasm-instantiate`);function n(e){t(e.instance)}function r(t){return _().then(function(t){return WebAssembly.instantiate(t,e)}).then(t,function(e){wv(`failed to asynchronously prepare wasm: `+e),m(e)})}function i(){if(!Tv&&typeof WebAssembly.instantiateStreaming==`function`&&!h(Kv)&&typeof fetch==`function`)fetch(Kv,{credentials:`same-origin`}).then(function(t){return WebAssembly.instantiateStreaming(t,e).then(n,function(e){wv(`wasm streaming compile failed: `+e),wv(`falling back to ArrayBuffer instantiation`),r(n)})});else return r(n)}if($.instantiateWasm)try{return $.instantiateWasm(e,t)}catch(e){return wv(`Module.instantiateWasm callback failed with error: `+e),!1}return i(),{}}zv.push({func:function(){Zv()}});function y(){return Mv.length}function b(e,t,n){Nv.set(Nv.subarray(t,t+n),e)}function x(e){try{return Ev.grow(e-jv.byteLength+65535>>16),i(Ev.buffer),1}catch{}}function S(e){var t=y(),n=65536,i=2147483648-n;if(e>i)return!1;for(var a=Math.max(t,16777216);a<e;)a=a<=536870912?r(2*a,n):Math.min(r((3*a+2147483648)/4,n),i);return!!x(a)}qv={splitPath:function(e){return/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1)},normalizeArray:function(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];i===`.`?e.splice(r,1):i===`..`?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n;n--)e.unshift(`..`);return e},normalize:function(e){var t=e.charAt(0)===`/`,n=e.substr(-1)===`/`;return e=qv.normalizeArray(e.split(`/`).filter(function(e){return!!e}),!t).join(`/`),!e&&!t&&(e=`.`),e&&n&&(e+=`/`),(t?`/`:``)+e},dirname:function(e){var t=qv.splitPath(e),n=t[0],r=t[1];return!n&&!r?`.`:(r&&(r=r.substr(0,r.length-1)),n+r)},basename:function(e){if(e===`/`)return`/`;var t=e.lastIndexOf(`/`);return t===-1?e:e.substr(t+1)},extname:function(e){return qv.splitPath(e)[3]},join:function(){var e=Array.prototype.slice.call(arguments,0);return qv.normalize(e.join(`/`))},join2:function(e,t){return qv.normalize(e+`/`+t)}},Jv={buffers:[null,[],[]],printChar:function(e,n){var r=Jv.buffers[e];n===0||n===10?((e===1?Cv:wv)(t(r,0)),r.length=0):r.push(n)},varargs:0,get:function(e){return Jv.varargs+=4,Pv[Jv.varargs-4>>2]},getStr:function(){return n(Jv.get())},get64:function(){var e=Jv.get();return Jv.get(),e},getZero:function(){Jv.get()}};function C(e,t,n,r){try{for(var i=0,a=0;a<n;a++){for(var o=Pv[t+a*8>>2],s=Pv[t+(a*8+4)>>2],c=0;c<s;c++)Jv.printChar(e,Nv[o+c]);i+=s}return Pv[r>>2]=i,0}catch(e){return typeof FS<`u`&&e instanceof FS.ErrnoError||m(e),e.errno}}Yv={a:b,b:S,c:C,memory:Ev,table:Dv},Xv=v(),$.asm=Xv,Zv=$.___wasm_call_ctors=function(){return $.asm.d.apply(null,arguments)},$._malloc=function(){return $.asm.e.apply(null,arguments)},$._free=function(){return $.asm.f.apply(null,arguments)},$._crn_get_width=function(){return $.asm.g.apply(null,arguments)},$._crn_get_height=function(){return $.asm.h.apply(null,arguments)},$._crn_get_levels=function(){return $.asm.i.apply(null,arguments)},$._crn_get_dxt_format=function(){return $.asm.j.apply(null,arguments)},$._crn_get_bytes_per_block=function(){return $.asm.k.apply(null,arguments)},$._crn_get_uncompressed_size=function(){return $.asm.l.apply(null,arguments)},$._crn_decompress=function(){return $.asm.m.apply(null,arguments)},$.asm=Xv;function w(e){this.name=`ExitStatus`,this.message=`Program terminated with exit(`+e+`)`,this.status=e}Wv=function e(){Qv||T(),Qv||(Wv=e)};function T(e){if(e=e||mv,Hv>0||(o(),Hv>0))return;function t(){Qv||(Qv=!0,!Ov&&(s(),c(),$.onRuntimeInitialized&&$.onRuntimeInitialized(),l()))}$.setStatus?($.setStatus(`Running...`),setTimeout(function(){setTimeout(function(){$.setStatus(``)},1),t()},1)):t()}if($.run=T,$.preInit)for(typeof $.preInit==`function`&&($.preInit=[$.preInit]);$.preInit.length>0;)$.preInit.pop()();T()}}));function ey(e){return!!e.asm&&Object.keys(e.asm).length>0}async function ty(){return iy||(iy=(async()=>{let e=(await Promise.resolve().then(()=>($v(),sv))).default;return ey(e)||await new Promise(t=>{e.onRuntimeInitialized=()=>t();let n=()=>{ey(e)?t():setTimeout(n,8)};n()}),e})()),iy}function ny(e){return e.length>=2&&e[0]===ay[0]&&e[1]===ay[1]}async function ry(e){let t=e.byteLength;if(!t)throw Error(`[s3m] CRN 数据为空`);if(!ny(e))throw Error(`[s3m] 数据没有 CRN 头(Hx),不是 crunch 负载`);let n=await ty(),r=n._malloc(t);if(!r)throw Error(`[s3m] crunch 分配源数据失败`);try{n.HEAPU8.set(e,r);let i=n._crn_get_dxt_format(r,t),a=i===0?1:i===1?3:i===2?5:0;if(!a)throw Error(`[s3m] 不是可识别的 CRN 数据(dxtFormat=${i})`);let o=n._crn_get_width(r,t),s=n._crn_get_height(r,t),c=n._crn_get_levels(r,t);if(!(o>0)||!(s>0))throw Error(`[s3m] CRN 尺寸异常:${o}×${s}`);let l=a===1?8:16,u=Math.max(1,o>>2)*Math.max(1,s>>2)*l,d=n._malloc(u);if(!d)throw Error(`[s3m] crunch 分配输出缓冲失败`);try{return n._crn_decompress(r,t,d,u,0,1),{width:o,height:s,levels:c,dxtFormat:a,data:new Uint8Array(n.HEAPU8.subarray(d,d+u))}}finally{n._free(d)}}finally{n._free(r)}}var iy,ay,oy=n((()=>{iy=null,ay=[72,120]}));function sy(e,t,n){let r=t*4,i=new Uint8Array(r);for(let t=0;t<n>>1;t++){let a=t*r,o=(n-1-t)*r;i.set(e.subarray(a,a+r)),e.copyWithin(a,o,o+r),e.set(i,o)}}function cy(e){return e===$_.DXT3||e===$_.DXT4||e===$_.DXT5||e===$_.ARGB||e===$_.ABGR||e===$_.BGRA||e===$_.RGBA}function ly(e){let{width:t,height:n,pixelFormat:r,data:i}=e,a=new Uint8Array(t*n*4);return k_.decode(a,t,n,i,r),e.flipY&&sy(a,t,n),{rgba:a,hasAlpha:cy(r)}}function uy(e){let{width:t,height:n,pixelFormat:r,data:i}=e,a=new Uint8Array(t*n*4),o=r===$_.RGBA||r===$_.BGRA||r===$_.ARGB||r===$_.ABGR,s=r===$_.BGR||r===$_.BGRA,c=r===$_.ARGB||r===$_.ABGR,l=o?4:3;for(let e=0,r=0,u=0;e<t*n;e++,r+=l,u+=4){let e=c?r+1:r;a[u]=s?i[e+2]:i[e],a[u+1]=i[e+1],a[u+2]=s?i[e]:i[e+2],a[u+3]=o?i[c?r:r+3]:255}return e.flipY&&sy(a,t,n),{rgba:a,hasAlpha:cy(r)}}async function dy(e){let t={kind:`unsupported(0/0)`,width:0,height:0,rgba:null,bitmap:null,hasAlpha:!1};if(!e||!e.width||!e.height)return t;let n=Z_(e.compressType??0,e.pixelFormat);if(n===`crn`)try{let t=await ry(e.data),n=ly({width:t.width,height:t.height,pixelFormat:t.dxtFormat===1?$_.DXT1:$_.DXT5,data:t.data});return{kind:`crn->dxt${t.dxtFormat}`,width:t.width,height:t.height,rgba:n.rgba,bitmap:null,hasAlpha:n.hasAlpha}}catch(t){return{kind:`crn(failed)`,width:e.width,height:e.height,rgba:null,bitmap:null,hasAlpha:!1,error:String(t?.message??t)}}if(n===`dxt1`||n===`dxt3`||n===`dxt4`||n===`dxt5`){let t=ly({...e,pixelFormat:Q_(n)});return{kind:n,width:e.width,height:e.height,rgba:t.rgba,bitmap:null,hasAlpha:t.hasAlpha}}if(n===`webp`){let t=new Blob([e.data],{type:`image/webp`}),r=await createImageBitmap(t);return{kind:n,width:r.width,height:r.height,rgba:null,bitmap:r,hasAlpha:!0}}if(n===`raw`){let t=uy(e);return{kind:n,width:e.width,height:e.height,rgba:t.rgba,bitmap:null,hasAlpha:t.hasAlpha}}return{...t,kind:`unsupported(${e.compressType}/${e.pixelFormat})`}}var fy=n((()=>{A_(),oy(),rv()}));function py(e){yy=Math.max(1,e|0)}function my(e){by=e}async function hy(e){if(by){let t=await by(e);if(t)return t}return dy(e)}function gy(e,t=!0){return e.wrapS=Ir,e.wrapT=Ir,e.magFilter=Ur,e.minFilter=Kr,e.generateMipmaps=!0,e.anisotropy=yy,t&&(e.colorSpace=fa),e.flipY=!1,e.needsUpdate=!0,e}function _y(e){return gy(e),e.wrapS=z,e.wrapT=z,e.minFilter=Ur,e.generateMipmaps=!1,e.anisotropy=1,e.needsUpdate=!0,e}async function vy(e){if(!e||!e.width||!e.height)return{texture:null,decoded:`empty`};let t=e.packed===!0||e.flipY===!0||e.composed===!0,n=await hy(e);if(!n.rgba&&!n.bitmap)return n.error&&console.warn(`[s3m] CRN 转码失败:`,n.error),{texture:null,decoded:n.kind};let r;if(n.bitmap)r=new ro(n.bitmap);else{let e=new Cu(n.rgba,n.width,n.height,ci,Jr);n.hasAlpha&&(e.userData.s3mHasAlpha=!0),r=e}return r.needsUpdate=!0,{texture:t?_y(r):gy(r),decoded:n.kind}}var yy,by,xy=n((()=>{fy(),rv(),yy=1,by=null}));function Sy(){return{uMode:{value:Ty.TEXTURE},uColorA:{value:new W(`#dfe6ee`)},uColorB:{value:new W(`#1d4ed8`)},uColorC:{value:new W(`#fbbf24`)},uTime:{value:0},uHeightMin:{value:0},uHeightMax:{value:120},uFloorHeight:{value:3.2},uDim:{value:0},uDimFactor:{value:.42},uSelColor:{value:new W(`#22d3ee`)},uSelMix:{value:0},uSelMode:{value:1},uSelOpacity:{value:.65},uSelEmissive:{value:.35},uSelElevation:{value:0},uFilterMinZ:{value:-99999},uFilterMaxZ:{value:99999},uFilterHeightActive:{value:0},uRoofThreshold:{value:.65},uTexMix:{value:0}}}function Cy(e){let t=e.uniforms,n=new vf({color:e.color??new W(16777215),map:e.map??null,roughness:e.roughness??.95,metalness:0,side:e.side??2,transparent:!!e.transparent,opacity:e.opacity??1,depthWrite:!e.transparent,flatShading:e.flatShading!==!1,vertexColors:!1,alphaTest:e.alphaTest??0}),r={value:-1},i={value:0},a={value:jy},o={value:1},s={value:0},c=!!e.atlas&&!!e.map,l=c?e.secMap??null:null;c&&(n.defines={...n.defines,S3M_ATLAS:``}),l&&(n.defines={...n.defines,S3M_ATLAS_SEC:``});let u={value:new B(e.map?.image?.width||1,e.map?.image?.height||1)},d={value:new B(l?.image?.width||1,l?.image?.height||1)};return n.onBeforeCompile=e=>{Object.assign(e.uniforms,t,{uSelBatch:r,uSelWhole:i,uBatchTex:a,uBatchTexWidth:o,uBatchTexActive:s,uSecMap:{value:l},uAtlasDim:u,uAtlasDim1:d}),e.vertexShader=e.vertexShader.replace(`#include <common>`,`#include <common>\n${My}`).replace(`#include <begin_vertex>`,`#include <begin_vertex>\n${Ny}`).replace(`#include <worldpos_vertex>`,Py),e.fragmentShader=e.fragmentShader.replace(`#include <common>`,`#include <common>\n${Fy}`).replace(`#include <color_fragment>`,`#include <color_fragment>\n${Iy}`).replace(`#include <emissivemap_fragment>`,`#include <emissivemap_fragment>\n${Ly}`),c?e.fragmentShader=e.fragmentShader.replace(`#include <map_fragment>`,`
3835
+ }`,Ll=class{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(e,t,n){if(this.texture===null){let r=new ro,i=e.properties.get(r);i.__webglTexture=t.texture,(t.depthNear!=n.depthNear||t.depthFar!=n.depthFar)&&(this.depthNear=t.depthNear,this.depthFar=t.depthFar),this.texture=r}}getMesh(e){if(this.texture!==null&&this.mesh===null){let t=e.cameras[0].viewport,n=new gc({vertexShader:Fl,fragmentShader:Il,uniforms:{depthColor:{value:this.texture},depthWidth:{value:t.z},depthHeight:{value:t.w}}});this.mesh=new dc(new Pc(20,20),n)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}},Rl=class extends Ra{constructor(e,t){super();let n=this,r=null,i=1,a=null,o=`local-floor`,s=1,c=null,l=null,u=null,d=null,f=null,p=null,m=new Ll,h=t.getContextAttributes(),g=null,_=null,v=[],y=[],b=new B,x=null,S=new xc;S.layers.enable(1),S.viewport=new io;let C=new xc;C.layers.enable(2),C.viewport=new io;let w=[S,C],T=new jl;T.layers.enable(1),T.layers.enable(2);let E=null,D=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(e){let t=v[e];return t===void 0&&(t=new Pl,v[e]=t),t.getTargetRaySpace()},this.getControllerGrip=function(e){let t=v[e];return t===void 0&&(t=new Pl,v[e]=t),t.getGripSpace()},this.getHand=function(e){let t=v[e];return t===void 0&&(t=new Pl,v[e]=t),t.getHandSpace()};function O(e){let t=y.indexOf(e.inputSource);if(t===-1)return;let n=v[t];n!==void 0&&(n.update(e.inputSource,e.frame,c||a),n.dispatchEvent({type:e.type,data:e.inputSource}))}function k(){r.removeEventListener(`select`,O),r.removeEventListener(`selectstart`,O),r.removeEventListener(`selectend`,O),r.removeEventListener(`squeeze`,O),r.removeEventListener(`squeezestart`,O),r.removeEventListener(`squeezeend`,O),r.removeEventListener(`end`,k),r.removeEventListener(`inputsourceschange`,A);for(let e=0;e<v.length;e++){let t=y[e];t!==null&&(y[e]=null,v[e].disconnect(t))}E=null,D=null,m.reset(),e.setRenderTarget(g),f=null,d=null,u=null,r=null,_=null,oe.stop(),n.isPresenting=!1,e.setPixelRatio(x),e.setSize(b.width,b.height,!1),n.dispatchEvent({type:`sessionend`})}this.setFramebufferScaleFactor=function(e){i=e,n.isPresenting===!0&&console.warn(`THREE.WebXRManager: Cannot change framebuffer scale while presenting.`)},this.setReferenceSpaceType=function(e){o=e,n.isPresenting===!0&&console.warn(`THREE.WebXRManager: Cannot change reference space type while presenting.`)},this.getReferenceSpace=function(){return c||a},this.setReferenceSpace=function(e){c=e},this.getBaseLayer=function(){return d===null?f:d},this.getBinding=function(){return u},this.getFrame=function(){return p},this.getSession=function(){return r},this.setSession=async function(l){if(r=l,r!==null){if(g=e.getRenderTarget(),r.addEventListener(`select`,O),r.addEventListener(`selectstart`,O),r.addEventListener(`selectend`,O),r.addEventListener(`squeeze`,O),r.addEventListener(`squeezestart`,O),r.addEventListener(`squeezeend`,O),r.addEventListener(`end`,k),r.addEventListener(`inputsourceschange`,A),h.xrCompatible!==!0&&await t.makeXRCompatible(),x=e.getPixelRatio(),e.getSize(b),r.renderState.layers===void 0){let n={antialias:h.antialias,alpha:!0,depth:h.depth,stencil:h.stencil,framebufferScaleFactor:i};f=new XRWebGLLayer(r,t,n),r.updateRenderState({baseLayer:f}),e.setPixelRatio(1),e.setSize(f.framebufferWidth,f.framebufferHeight,!1),_=new oo(f.framebufferWidth,f.framebufferHeight,{format:ci,type:Jr,colorSpace:e.outputColorSpace,stencilBuffer:h.stencil})}else{let n=null,a=null,o=null;h.depth&&(o=h.stencil?t.DEPTH24_STENCIL8:t.DEPTH_COMPONENT24,n=h.stencil?fi:di,a=h.stencil?ii:$r);let s={colorFormat:t.RGBA8,depthFormat:o,scaleFactor:i};u=new XRWebGLBinding(r,t),d=u.createProjectionLayer(s),r.updateRenderState({layers:[d]}),e.setPixelRatio(1),e.setSize(d.textureWidth,d.textureHeight,!1),_=new oo(d.textureWidth,d.textureHeight,{format:ci,type:Jr,depthTexture:new $c(d.textureWidth,d.textureHeight,a,void 0,void 0,void 0,void 0,void 0,void 0,n),stencilBuffer:h.stencil,colorSpace:e.outputColorSpace,samples:h.antialias?4:0,resolveDepthBuffer:d.ignoreDepthValues===!1})}_.isXRRenderTarget=!0,this.setFoveation(s),c=null,a=await r.requestReferenceSpace(o),oe.setContext(r),oe.start(),n.isPresenting=!0,n.dispatchEvent({type:`sessionstart`})}},this.getEnvironmentBlendMode=function(){if(r!==null)return r.environmentBlendMode},this.getDepthTexture=function(){return m.getDepthTexture()};function A(e){for(let t=0;t<e.removed.length;t++){let n=e.removed[t],r=y.indexOf(n);r>=0&&(y[r]=null,v[r].disconnect(n))}for(let t=0;t<e.added.length;t++){let n=e.added[t],r=y.indexOf(n);if(r===-1){for(let e=0;e<v.length;e++)if(e>=y.length){y.push(n),r=e;break}else if(y[e]===null){y[e]=n,r=e;break}if(r===-1)break}let i=v[r];i&&i.connect(n)}}let j=new H,ee=new H;function te(e,t,n){j.setFromMatrixPosition(t.matrixWorld),ee.setFromMatrixPosition(n.matrixWorld);let r=j.distanceTo(ee),i=t.projectionMatrix.elements,a=n.projectionMatrix.elements,o=i[14]/(i[10]-1),s=i[14]/(i[10]+1),c=(i[9]+1)/i[5],l=(i[9]-1)/i[5],u=(i[8]-1)/i[0],d=(a[8]+1)/a[0],f=o*u,p=o*d,m=r/(-u+d),h=m*-u;if(t.matrixWorld.decompose(e.position,e.quaternion,e.scale),e.translateX(h),e.translateZ(m),e.matrixWorld.compose(e.position,e.quaternion,e.scale),e.matrixWorldInverse.copy(e.matrixWorld).invert(),i[10]===-1)e.projectionMatrix.copy(t.projectionMatrix),e.projectionMatrixInverse.copy(t.projectionMatrixInverse);else{let t=o+m,n=s+m,i=f-h,a=p+(r-h),u=c*s/n*t,d=l*s/n*t;e.projectionMatrix.makePerspective(i,a,u,d,t,n),e.projectionMatrixInverse.copy(e.projectionMatrix).invert()}}function ne(e,t){t===null?e.matrixWorld.copy(e.matrix):e.matrixWorld.multiplyMatrices(t.matrixWorld,e.matrix),e.matrixWorldInverse.copy(e.matrixWorld).invert()}this.updateCamera=function(e){if(r===null)return;let t=e.near,n=e.far;m.texture!==null&&(m.depthNear>0&&(t=m.depthNear),m.depthFar>0&&(n=m.depthFar)),T.near=C.near=S.near=t,T.far=C.far=S.far=n,(E!==T.near||D!==T.far)&&(r.updateRenderState({depthNear:T.near,depthFar:T.far}),E=T.near,D=T.far);let i=e.parent,a=T.cameras;ne(T,i);for(let e=0;e<a.length;e++)ne(a[e],i);a.length===2?te(T,S,C):T.projectionMatrix.copy(S.projectionMatrix),re(e,T,i)};function re(e,t,n){n===null?e.matrix.copy(t.matrixWorld):(e.matrix.copy(n.matrixWorld),e.matrix.invert(),e.matrix.multiply(t.matrixWorld)),e.matrix.decompose(e.position,e.quaternion,e.scale),e.updateMatrixWorld(!0),e.projectionMatrix.copy(t.projectionMatrix),e.projectionMatrixInverse.copy(t.projectionMatrixInverse),e.isPerspectiveCamera&&(e.fov=Ha*2*Math.atan(1/e.projectionMatrix.elements[5]),e.zoom=1)}this.getCamera=function(){return T},this.getFoveation=function(){if(d!==null||f!==null)return s},this.setFoveation=function(e){s=e,d!==null&&(d.fixedFoveation=e),f!==null&&f.fixedFoveation!==void 0&&(f.fixedFoveation=e)},this.hasDepthSensing=function(){return m.texture!==null},this.getDepthSensingMesh=function(){return m.getMesh(T)};let ie=null;function ae(t,i){if(l=i.getViewerPose(c||a),p=i,l!==null){let t=l.views;f!==null&&(e.setRenderTargetFramebuffer(_,f.framebuffer),e.setRenderTarget(_));let n=!1;t.length!==T.cameras.length&&(T.cameras.length=0,n=!0);for(let r=0;r<t.length;r++){let i=t[r],a=null;if(f!==null)a=f.getViewport(i);else{let t=u.getViewSubImage(d,i);a=t.viewport,r===0&&(e.setRenderTargetTextures(_,t.colorTexture,d.ignoreDepthValues?void 0:t.depthStencilTexture),e.setRenderTarget(_))}let o=w[r];o===void 0&&(o=new xc,o.layers.enable(r),o.viewport=new io,w[r]=o),o.matrix.fromArray(i.transform.matrix),o.matrix.decompose(o.position,o.quaternion,o.scale),o.projectionMatrix.fromArray(i.projectionMatrix),o.projectionMatrixInverse.copy(o.projectionMatrix).invert(),o.viewport.set(a.x,a.y,a.width,a.height),r===0&&(T.matrix.copy(o.matrix),T.matrix.decompose(T.position,T.quaternion,T.scale)),n===!0&&T.cameras.push(o)}let i=r.enabledFeatures;if(i&&i.includes(`depth-sensing`)){let n=u.getDepthInformation(t[0]);n&&n.isValid&&n.texture&&m.init(e,n,r.renderState)}}for(let e=0;e<v.length;e++){let t=y[e],n=v[e];t!==null&&n!==void 0&&n.update(t,i,c||a)}ie&&ie(t,i),i.detectedPlanes&&n.dispatchEvent({type:`planesdetected`,data:i}),p=null}let oe=new ge;oe.setAnimationLoop(ae),this.setAnimationLoop=function(e){ie=e},this.dispose=function(){}}},zl=new Xo,Bl=new U,Vl=class{constructor(e={}){let{canvas:t=j(),context:n=null,depth:r=!0,stencil:i=!1,alpha:a=!1,antialias:o=!1,premultipliedAlpha:s=!0,preserveDrawingBuffer:c=!1,powerPreference:l=`default`,failIfMajorPerformanceCaveat:u=!1}=e;this.isWebGLRenderer=!0;let d;if(n!==null){if(typeof WebGLRenderingContext<`u`&&n instanceof WebGLRenderingContext)throw Error(`THREE.WebGLRenderer: WebGL 1 is not supported since r163.`);d=n.getContextAttributes().alpha}else d=a;let f=new Uint32Array(4),p=new Int32Array(4),m=null,h=null,g=[],_=[];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=fa,this.toneMapping=0,this.toneMappingExposure=1;let v=this,y=!1,b=0,x=0,S=null,C=-1,w=null,T=new io,E=new io,D=null,O=new W(0),k=0,A=t.width,ie=t.height,ae=1,oe=null,se=null,ce=new io(0,0,A,ie),le=new io(0,0,A,ie),M=!1,N=new Nc,ue=!1,de=!1,fe=new U,pe=new U,me=new H,he=new io,we={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0},Te=!1;function Ee(){return S===null?ae:1}let P=n;function De(e,n){return t.getContext(e,n)}try{let e={alpha:!0,depth:r,stencil:i,antialias:o,premultipliedAlpha:s,preserveDrawingBuffer:c,powerPreference:l,failIfMajorPerformanceCaveat:u};if(`setAttribute`in t&&t.setAttribute(`data-engine`,`three.js r169`),t.addEventListener(`webglcontextlost`,rt,!1),t.addEventListener(`webglcontextrestored`,it,!1),t.addEventListener(`webglcontextcreationerror`,at,!1),P===null){let t=`webgl2`;if(P=De(t,e),P===null)throw De(t)?Error(`Error creating WebGL context with your selected attributes.`):Error(`Error creating WebGL context.`)}}catch(e){throw console.error(`THREE.WebGLRenderer: `+e.message),e}let Oe,ke,F,I,L,R,Le,Re,ze,Be,Ve,He,Ue,We,Ge,Ke,qe,Je,Ye,Xe,Ze,Qe,$e,et;function tt(){Oe=new je(P),Oe.init(),Qe=new gn(P,Oe),ke=new xe(P,Oe,e,Qe),F=new ln(P),ke.reverseDepthBuffer&&F.buffers.depth.setReversed(!0),I=new Pe(P),L=new Xt,R=new hn(P,Oe,F,L,ke,Qe,I),Le=new Ce(v),Re=new Ae(v),ze=new _e(P),$e=new ye(P,ze),Be=new Me(P,ze,I,$e),Ve=new Ie(P,Be,ze,I),Ye=new Fe(P,ke,R),Ke=new Se(L),He=new Yt(v,Le,Re,Oe,ke,$e,Ke),Ue=new _n(v,L),We=new en,Ge=new sn(Oe),Je=new ve(v,Le,Re,F,Ve,d,s),qe=new cn(v,Ve,ke),et=new vn(P,I,ke,F),Xe=new be(P,Oe,I),Ze=new Ne(P,Oe,I),I.programs=He.programs,v.capabilities=ke,v.extensions=Oe,v.properties=L,v.renderLists=We,v.shadowMap=qe,v.state=F,v.info=I}tt();let nt=new Rl(v,P);this.xr=nt,this.getContext=function(){return P},this.getContextAttributes=function(){return P.getContextAttributes()},this.forceContextLoss=function(){let e=Oe.get(`WEBGL_lose_context`);e&&e.loseContext()},this.forceContextRestore=function(){let e=Oe.get(`WEBGL_lose_context`);e&&e.restoreContext()},this.getPixelRatio=function(){return ae},this.setPixelRatio=function(e){e!==void 0&&(ae=e,this.setSize(A,ie,!1))},this.getSize=function(e){return e.set(A,ie)},this.setSize=function(e,n,r=!0){nt.isPresenting?console.warn(`THREE.WebGLRenderer: Can't change size while VR device is presenting.`):(A=e,ie=n,t.width=Math.floor(e*ae),t.height=Math.floor(n*ae),r===!0&&(t.style.width=e+`px`,t.style.height=n+`px`),this.setViewport(0,0,e,n))},this.getDrawingBufferSize=function(e){return e.set(A*ae,ie*ae).floor()},this.setDrawingBufferSize=function(e,n,r){A=e,ie=n,ae=r,t.width=Math.floor(e*r),t.height=Math.floor(n*r),this.setViewport(0,0,e,n)},this.getCurrentViewport=function(e){return e.copy(T)},this.getViewport=function(e){return e.copy(ce)},this.setViewport=function(e,t,n,r){e.isVector4?ce.set(e.x,e.y,e.z,e.w):ce.set(e,t,n,r),F.viewport(T.copy(ce).multiplyScalar(ae).round())},this.getScissor=function(e){return e.copy(le)},this.setScissor=function(e,t,n,r){e.isVector4?le.set(e.x,e.y,e.z,e.w):le.set(e,t,n,r),F.scissor(E.copy(le).multiplyScalar(ae).round())},this.getScissorTest=function(){return M},this.setScissorTest=function(e){F.setScissorTest(M=e)},this.setOpaqueSort=function(e){oe=e},this.setTransparentSort=function(e){se=e},this.getClearColor=function(e){return e.copy(Je.getClearColor())},this.setClearColor=function(){Je.setClearColor.apply(Je,arguments)},this.getClearAlpha=function(){return Je.getClearAlpha()},this.setClearAlpha=function(){Je.setClearAlpha.apply(Je,arguments)},this.clear=function(e=!0,t=!0,n=!0){let r=0;if(e){let e=!1;if(S!==null){let t=S.texture.format;e=t===1033||t===1031||t===1029}if(e){let e=S.texture.type,t=e===1009||e===1014||e===1012||e===1020||e===1017||e===1018,n=Je.getClearColor(),r=Je.getClearAlpha(),i=n.r,a=n.g,o=n.b;t?(f[0]=i,f[1]=a,f[2]=o,f[3]=r,P.clearBufferuiv(P.COLOR,0,f)):(p[0]=i,p[1]=a,p[2]=o,p[3]=r,P.clearBufferiv(P.COLOR,0,p))}else r|=P.COLOR_BUFFER_BIT}t&&(r|=P.DEPTH_BUFFER_BIT,P.clearDepth(+!this.capabilities.reverseDepthBuffer)),n&&(r|=P.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(4294967295)),P.clear(r)},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`,rt,!1),t.removeEventListener(`webglcontextrestored`,it,!1),t.removeEventListener(`webglcontextcreationerror`,at,!1),We.dispose(),Ge.dispose(),L.dispose(),Le.dispose(),Re.dispose(),Ve.dispose(),$e.dispose(),et.dispose(),He.dispose(),nt.dispose(),nt.removeEventListener(`sessionstart`,ft),nt.removeEventListener(`sessionend`,pt),mt.stop()};function rt(e){e.preventDefault(),console.log(`THREE.WebGLRenderer: Context Lost.`),y=!0}function it(){console.log(`THREE.WebGLRenderer: Context Restored.`),y=!1;let e=I.autoReset,t=qe.enabled,n=qe.autoUpdate,r=qe.needsUpdate,i=qe.type;tt(),I.autoReset=e,qe.enabled=t,qe.autoUpdate=n,qe.needsUpdate=r,qe.type=i}function at(e){console.error(`THREE.WebGLRenderer: A WebGL context could not be created. Reason: `,e.statusMessage)}function ot(e){let t=e.target;t.removeEventListener(`dispose`,ot),st(t)}function st(e){ct(e),L.remove(e)}function ct(e){let t=L.get(e).programs;t!==void 0&&(t.forEach(function(e){He.releaseProgram(e)}),e.isShaderMaterial&&He.releaseShaderCache(e))}this.renderBufferDirect=function(e,t,n,r,i,a){t===null&&(t=we);let o=i.isMesh&&i.matrixWorld.determinant()<0,s=Ct(e,t,n,r,i);F.setMaterial(r,o);let c=n.index,l=1;if(r.wireframe===!0){if(c=Be.getWireframeAttribute(n),c===void 0)return;l=2}let u=n.drawRange,d=n.attributes.position,f=u.start*l,p=(u.start+u.count)*l;a!==null&&(f=Math.max(f,a.start*l),p=Math.min(p,(a.start+a.count)*l)),c===null?d!=null&&(f=Math.max(f,0),p=Math.min(p,d.count)):(f=Math.max(f,0),p=Math.min(p,c.count));let m=p-f;if(m<0||m===1/0)return;$e.setup(i,r,s,n,c);let h,g=Xe;if(c!==null&&(h=ze.get(c),g=Ze,g.setIndex(h)),i.isMesh)r.wireframe===!0?(F.setLineWidth(r.wireframeLinewidth*Ee()),g.setMode(P.LINES)):g.setMode(P.TRIANGLES);else if(i.isLine){let e=r.linewidth;e===void 0&&(e=1),F.setLineWidth(e*Ee()),i.isLineSegments?g.setMode(P.LINES):i.isLineLoop?g.setMode(P.LINE_LOOP):g.setMode(P.LINE_STRIP)}else i.isPoints?g.setMode(P.POINTS):i.isSprite&&g.setMode(P.TRIANGLES);if(i.isBatchedMesh){if(i._multiDrawInstances!==null)g.renderMultiDrawInstances(i._multiDrawStarts,i._multiDrawCounts,i._multiDrawCount,i._multiDrawInstances);else if(Oe.get(`WEBGL_multi_draw`))g.renderMultiDraw(i._multiDrawStarts,i._multiDrawCounts,i._multiDrawCount);else{let e=i._multiDrawStarts,t=i._multiDrawCounts,n=i._multiDrawCount,a=c?ze.get(c).bytesPerElement:1,o=L.get(r).currentProgram.getUniforms();for(let r=0;r<n;r++)o.setValue(P,`_gl_DrawID`,r),g.render(e[r]/a,t[r])}}else if(i.isInstancedMesh)g.renderInstances(f,m,i.count);else if(n.isInstancedBufferGeometry){let e=n._maxInstanceCount===void 0?1/0:n._maxInstanceCount,t=Math.min(n.instanceCount,e);g.renderInstances(f,m,t)}else g.render(f,m)};function lt(e,t,n){e.transparent===!0&&e.side===2&&e.forceSinglePass===!1?(e.side=1,e.needsUpdate=!0,bt(e,t,n),e.side=0,e.needsUpdate=!0,bt(e,t,n),e.side=2):bt(e,t,n)}this.compile=function(e,t,n=null){n===null&&(n=e),h=Ge.get(n),h.init(t),_.push(h),n.traverseVisible(function(e){e.isLight&&e.layers.test(t.layers)&&(h.pushLight(e),e.castShadow&&h.pushShadow(e))}),e!==n&&e.traverseVisible(function(e){e.isLight&&e.layers.test(t.layers)&&(h.pushLight(e),e.castShadow&&h.pushShadow(e))}),h.setupLights();let r=new Set;return e.traverse(function(e){if(!(e.isMesh||e.isPoints||e.isLine||e.isSprite))return;let t=e.material;if(t){if(Array.isArray(t))for(let i=0;i<t.length;i++){let a=t[i];lt(a,n,e),r.add(a)}else lt(t,n,e),r.add(t)}}),_.pop(),h=null,r},this.compileAsync=function(e,t,n=null){let r=this.compile(e,t,n);return new Promise(t=>{function n(){r.forEach(function(e){L.get(e).currentProgram.isReady()&&r.delete(e)}),r.size===0?t(e):setTimeout(n,10)}Oe.get(`KHR_parallel_shader_compile`)===null?setTimeout(n,10):n()})};let ut=null;function dt(e){ut&&ut(e)}function ft(){mt.stop()}function pt(){mt.start()}let mt=new ge;mt.setAnimationLoop(dt),typeof self<`u`&&mt.setContext(self),this.setAnimationLoop=function(e){ut=e,nt.setAnimationLoop(e),e===null?mt.stop():mt.start()},nt.addEventListener(`sessionstart`,ft),nt.addEventListener(`sessionend`,pt),this.render=function(e,t){if(t!==void 0&&t.isCamera!==!0){console.error(`THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.`);return}if(y===!0)return;if(e.matrixWorldAutoUpdate===!0&&e.updateMatrixWorld(),t.parent===null&&t.matrixWorldAutoUpdate===!0&&t.updateMatrixWorld(),nt.enabled===!0&&nt.isPresenting===!0&&(nt.cameraAutoUpdate===!0&&nt.updateCamera(t),t=nt.getCamera()),e.isScene===!0&&e.onBeforeRender(v,e,t,S),h=Ge.get(e,_.length),h.init(t),_.push(h),pe.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),N.setFromProjectionMatrix(pe),de=this.localClippingEnabled,ue=Ke.init(this.clippingPlanes,de),m=We.get(e,g.length),m.init(),g.push(m),nt.enabled===!0&&nt.isPresenting===!0){let e=v.xr.getDepthSensingMesh();e!==null&&ht(e,t,-1/0,v.sortObjects)}ht(e,t,0,v.sortObjects),m.finish(),v.sortObjects===!0&&m.sort(oe,se),Te=nt.enabled===!1||nt.isPresenting===!1||nt.hasDepthSensing()===!1,Te&&Je.addToRenderList(m,e),this.info.render.frame++,ue===!0&&Ke.beginShadows();let n=h.state.shadowsArray;qe.render(n,e,t),ue===!0&&Ke.endShadows(),this.info.autoReset===!0&&this.info.reset();let r=m.opaque,i=m.transmissive;if(h.setupLights(),t.isArrayCamera){let n=t.cameras;if(i.length>0)for(let t=0,a=n.length;t<a;t++){let a=n[t];_t(r,i,e,a)}Te&&Je.render(e);for(let t=0,r=n.length;t<r;t++){let r=n[t];gt(m,e,r,r.viewport)}}else i.length>0&&_t(r,i,e,t),Te&&Je.render(e),gt(m,e,t);S!==null&&(R.updateMultisampleRenderTarget(S),R.updateRenderTargetMipmap(S)),e.isScene===!0&&e.onAfterRender(v,e,t),$e.resetDefaultState(),C=-1,w=null,_.pop(),_.length>0?(h=_[_.length-1],ue===!0&&Ke.setGlobalState(v.clippingPlanes,h.state.camera)):h=null,g.pop(),m=g.length>0?g[g.length-1]:null};function ht(e,t,n,r){if(e.visible===!1)return;if(e.layers.test(t.layers)){if(e.isGroup)n=e.renderOrder;else if(e.isLOD)e.autoUpdate===!0&&e.update(t);else if(e.isLight)h.pushLight(e),e.castShadow&&h.pushShadow(e);else if(e.isSprite){if(!e.frustumCulled||N.intersectsSprite(e)){r&&he.setFromMatrixPosition(e.matrixWorld).applyMatrix4(pe);let t=Ve.update(e),i=e.material;i.visible&&m.push(e,t,i,n,he.z,null)}}else if((e.isMesh||e.isLine||e.isPoints)&&(!e.frustumCulled||N.intersectsObject(e))){let t=Ve.update(e),i=e.material;if(r&&(e.boundingSphere===void 0?(t.boundingSphere===null&&t.computeBoundingSphere(),he.copy(t.boundingSphere.center)):(e.boundingSphere===null&&e.computeBoundingSphere(),he.copy(e.boundingSphere.center)),he.applyMatrix4(e.matrixWorld).applyMatrix4(pe)),Array.isArray(i)){let r=t.groups;for(let a=0,o=r.length;a<o;a++){let o=r[a],s=i[o.materialIndex];s&&s.visible&&m.push(e,t,s,n,he.z,o)}}else i.visible&&m.push(e,t,i,n,he.z,null)}}let i=e.children;for(let e=0,a=i.length;e<a;e++)ht(i[e],t,n,r)}function gt(e,t,n,r){let i=e.opaque,a=e.transmissive,o=e.transparent;h.setupLightsView(n),ue===!0&&Ke.setGlobalState(v.clippingPlanes,n),r&&F.viewport(T.copy(r)),i.length>0&&vt(i,t,n),a.length>0&&vt(a,t,n),o.length>0&&vt(o,t,n),F.buffers.depth.setTest(!0),F.buffers.depth.setMask(!0),F.buffers.color.setMask(!0),F.setPolygonOffset(!1)}function _t(e,t,n,r){if((n.isScene===!0?n.overrideMaterial:null)!==null)return;h.state.transmissionRenderTarget[r.id]===void 0&&(h.state.transmissionRenderTarget[r.id]=new oo(1,1,{generateMipmaps:!0,type:Oe.has(`EXT_color_buffer_half_float`)||Oe.has(`EXT_color_buffer_float`)?ti:Jr,minFilter:Kr,samples:4,stencilBuffer:i,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:Za.workingColorSpace}));let a=h.state.transmissionRenderTarget[r.id],o=r.viewport||T;a.setSize(o.z,o.w);let s=v.getRenderTarget();v.setRenderTarget(a),v.getClearColor(O),k=v.getClearAlpha(),k<1&&v.setClearColor(16777215,.5),v.clear(),Te&&Je.render(n);let c=v.toneMapping;v.toneMapping=0;let l=r.viewport;if(r.viewport!==void 0&&(r.viewport=void 0),h.setupLightsView(r),ue===!0&&Ke.setGlobalState(v.clippingPlanes,r),vt(e,n,r),R.updateMultisampleRenderTarget(a),R.updateRenderTargetMipmap(a),Oe.has(`WEBGL_multisampled_render_to_texture`)===!1){let e=!1;for(let i=0,a=t.length;i<a;i++){let a=t[i],o=a.object,s=a.geometry,c=a.material,l=a.group;if(c.side===2&&o.layers.test(r.layers)){let t=c.side;c.side=1,c.needsUpdate=!0,yt(o,n,r,s,c,l),c.side=t,c.needsUpdate=!0,e=!0}}e===!0&&(R.updateMultisampleRenderTarget(a),R.updateRenderTargetMipmap(a))}v.setRenderTarget(s),v.setClearColor(O,k),l!==void 0&&(r.viewport=l),v.toneMapping=c}function vt(e,t,n){let r=t.isScene===!0?t.overrideMaterial:null;for(let i=0,a=e.length;i<a;i++){let a=e[i],o=a.object,s=a.geometry,c=r===null?a.material:r,l=a.group;o.layers.test(n.layers)&&yt(o,t,n,s,c,l)}}function yt(e,t,n,r,i,a){e.onBeforeRender(v,t,n,r,i,a),e.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse,e.matrixWorld),e.normalMatrix.getNormalMatrix(e.modelViewMatrix),i.onBeforeRender(v,t,n,r,e,a),i.transparent===!0&&i.side===2&&i.forceSinglePass===!1?(i.side=1,i.needsUpdate=!0,v.renderBufferDirect(n,t,r,i,e,a),i.side=0,i.needsUpdate=!0,v.renderBufferDirect(n,t,r,i,e,a),i.side=2):v.renderBufferDirect(n,t,r,i,e,a),e.onAfterRender(v,t,n,r,i,a)}function bt(e,t,n){t.isScene!==!0&&(t=we);let r=L.get(e),i=h.state.lights,a=h.state.shadowsArray,o=i.state.version,s=He.getParameters(e,i.state,a,t,n),c=He.getProgramCacheKey(s),l=r.programs;r.environment=e.isMeshStandardMaterial?t.environment:null,r.fog=t.fog,r.envMap=(e.isMeshStandardMaterial?Re:Le).get(e.envMap||r.environment),r.envMapRotation=r.environment!==null&&e.envMap===null?t.environmentRotation:e.envMapRotation,l===void 0&&(e.addEventListener(`dispose`,ot),l=new Map,r.programs=l);let u=l.get(c);if(u!==void 0){if(r.currentProgram===u&&r.lightsStateVersion===o)return St(e,s),u}else s.uniforms=He.getUniforms(e),e.onBeforeCompile(s,v),u=He.acquireProgram(s,c),l.set(c,u),r.uniforms=s.uniforms;let d=r.uniforms;return(!e.isShaderMaterial&&!e.isRawShaderMaterial||e.clipping===!0)&&(d.clippingPlanes=Ke.uniform),St(e,s),r.needsLights=Tt(e),r.lightsStateVersion=o,r.needsLights&&(d.ambientLightColor.value=i.state.ambient,d.lightProbe.value=i.state.probe,d.directionalLights.value=i.state.directional,d.directionalLightShadows.value=i.state.directionalShadow,d.spotLights.value=i.state.spot,d.spotLightShadows.value=i.state.spotShadow,d.rectAreaLights.value=i.state.rectArea,d.ltc_1.value=i.state.rectAreaLTC1,d.ltc_2.value=i.state.rectAreaLTC2,d.pointLights.value=i.state.point,d.pointLightShadows.value=i.state.pointShadow,d.hemisphereLights.value=i.state.hemi,d.directionalShadowMap.value=i.state.directionalShadowMap,d.directionalShadowMatrix.value=i.state.directionalShadowMatrix,d.spotShadowMap.value=i.state.spotShadowMap,d.spotLightMatrix.value=i.state.spotLightMatrix,d.spotLightMap.value=i.state.spotLightMap,d.pointShadowMap.value=i.state.pointShadowMap,d.pointShadowMatrix.value=i.state.pointShadowMatrix),r.currentProgram=u,r.uniformsList=null,u}function xt(e){if(e.uniformsList===null){let t=e.currentProgram.getUniforms();e.uniformsList=ml.seqWithValue(t.seq,e.uniforms)}return e.uniformsList}function St(e,t){let n=L.get(e);n.outputColorSpace=t.outputColorSpace,n.batching=t.batching,n.batchingColor=t.batchingColor,n.instancing=t.instancing,n.instancingColor=t.instancingColor,n.instancingMorph=t.instancingMorph,n.skinning=t.skinning,n.morphTargets=t.morphTargets,n.morphNormals=t.morphNormals,n.morphColors=t.morphColors,n.morphTargetsCount=t.morphTargetsCount,n.numClippingPlanes=t.numClippingPlanes,n.numIntersection=t.numClipIntersection,n.vertexAlphas=t.vertexAlphas,n.vertexTangents=t.vertexTangents,n.toneMapping=t.toneMapping}function Ct(e,t,n,r,i){t.isScene!==!0&&(t=we),R.resetTextureUnits();let a=t.fog,o=r.isMeshStandardMaterial?t.environment:null,s=S===null?v.outputColorSpace:S.isXRRenderTarget===!0?S.texture.colorSpace:pa,c=(r.isMeshStandardMaterial?Re:Le).get(r.envMap||o),l=r.vertexColors===!0&&!!n.attributes.color&&n.attributes.color.itemSize===4,u=!!n.attributes.tangent&&(!!r.normalMap||r.anisotropy>0),d=!!n.morphAttributes.position,f=!!n.morphAttributes.normal,p=!!n.morphAttributes.color,m=0;r.toneMapped&&(S===null||S.isXRRenderTarget===!0)&&(m=v.toneMapping);let g=n.morphAttributes.position||n.morphAttributes.normal||n.morphAttributes.color,_=g===void 0?0:g.length,y=L.get(r),b=h.state.lights;if(ue===!0&&(de===!0||e!==w)){let t=e===w&&r.id===C;Ke.setState(r,e,t)}let x=!1;r.version===y.__version?y.needsLights&&y.lightsStateVersion!==b.state.version?x=!0:y.outputColorSpace===s?i.isBatchedMesh&&y.batching===!1||!i.isBatchedMesh&&y.batching===!0||i.isBatchedMesh&&y.batchingColor===!0&&i.colorTexture===null||i.isBatchedMesh&&y.batchingColor===!1&&i.colorTexture!==null||i.isInstancedMesh&&y.instancing===!1||!i.isInstancedMesh&&y.instancing===!0||i.isSkinnedMesh&&y.skinning===!1||!i.isSkinnedMesh&&y.skinning===!0||i.isInstancedMesh&&y.instancingColor===!0&&i.instanceColor===null||i.isInstancedMesh&&y.instancingColor===!1&&i.instanceColor!==null||i.isInstancedMesh&&y.instancingMorph===!0&&i.morphTexture===null||i.isInstancedMesh&&y.instancingMorph===!1&&i.morphTexture!==null?x=!0:y.envMap===c?r.fog===!0&&y.fog!==a||y.numClippingPlanes!==void 0&&(y.numClippingPlanes!==Ke.numPlanes||y.numIntersection!==Ke.numIntersection)?x=!0:y.vertexAlphas===l&&y.vertexTangents===u&&y.morphTargets===d&&y.morphNormals===f&&y.morphColors===p&&y.toneMapping===m?y.morphTargetsCount!==_&&(x=!0):x=!0:x=!0:x=!0:(x=!0,y.__version=r.version);let T=y.currentProgram;x===!0&&(T=bt(r,t,i));let E=!1,D=!1,O=!1,k=T.getUniforms(),A=y.uniforms;if(F.useProgram(T.program)&&(E=!0,D=!0,O=!0),r.id!==C&&(C=r.id,D=!0),E||w!==e){ke.reverseDepthBuffer?(fe.copy(e.projectionMatrix),ne(fe),re(fe),k.setValue(P,`projectionMatrix`,fe)):k.setValue(P,`projectionMatrix`,e.projectionMatrix),k.setValue(P,`viewMatrix`,e.matrixWorldInverse);let t=k.map.cameraPosition;t!==void 0&&t.setValue(P,me.setFromMatrixPosition(e.matrixWorld)),ke.logarithmicDepthBuffer&&k.setValue(P,`logDepthBufFC`,2/(Math.log(e.far+1)/Math.LN2)),(r.isMeshPhongMaterial||r.isMeshToonMaterial||r.isMeshLambertMaterial||r.isMeshBasicMaterial||r.isMeshStandardMaterial||r.isShaderMaterial)&&k.setValue(P,`isOrthographic`,e.isOrthographicCamera===!0),w!==e&&(w=e,D=!0,O=!0)}if(i.isSkinnedMesh){k.setOptional(P,i,`bindMatrix`),k.setOptional(P,i,`bindMatrixInverse`);let e=i.skeleton;e&&(e.boneTexture===null&&e.computeBoneTexture(),k.setValue(P,`boneTexture`,e.boneTexture,R))}i.isBatchedMesh&&(k.setOptional(P,i,`batchingTexture`),k.setValue(P,`batchingTexture`,i._matricesTexture,R),k.setOptional(P,i,`batchingIdTexture`),k.setValue(P,`batchingIdTexture`,i._indirectTexture,R),k.setOptional(P,i,`batchingColorTexture`),i._colorsTexture!==null&&k.setValue(P,`batchingColorTexture`,i._colorsTexture,R));let j=n.morphAttributes;if((j.position!==void 0||j.normal!==void 0||j.color!==void 0)&&Ye.update(i,n,T),(D||y.receiveShadow!==i.receiveShadow)&&(y.receiveShadow=i.receiveShadow,k.setValue(P,`receiveShadow`,i.receiveShadow)),r.isMeshGouraudMaterial&&r.envMap!==null&&(A.envMap.value=c,A.flipEnvMap.value=c.isCubeTexture&&c.isRenderTargetTexture===!1?-1:1),r.isMeshStandardMaterial&&r.envMap===null&&t.environment!==null&&(A.envMapIntensity.value=t.environmentIntensity),D&&(k.setValue(P,`toneMappingExposure`,v.toneMappingExposure),y.needsLights&&wt(A,O),a&&r.fog===!0&&Ue.refreshFogUniforms(A,a),Ue.refreshMaterialUniforms(A,r,ae,ie,h.state.transmissionRenderTarget[e.id]),ml.upload(P,xt(y),A,R)),r.isShaderMaterial&&r.uniformsNeedUpdate===!0&&(ml.upload(P,xt(y),A,R),r.uniformsNeedUpdate=!1),r.isSpriteMaterial&&k.setValue(P,`center`,i.center),k.setValue(P,`modelViewMatrix`,i.modelViewMatrix),k.setValue(P,`normalMatrix`,i.normalMatrix),k.setValue(P,`modelMatrix`,i.matrixWorld),r.isShaderMaterial||r.isRawShaderMaterial){let e=r.uniformsGroups;for(let t=0,n=e.length;t<n;t++){let n=e[t];et.update(n,T),et.bind(n,T)}}return T}function wt(e,t){e.ambientLightColor.needsUpdate=t,e.lightProbe.needsUpdate=t,e.directionalLights.needsUpdate=t,e.directionalLightShadows.needsUpdate=t,e.pointLights.needsUpdate=t,e.pointLightShadows.needsUpdate=t,e.spotLights.needsUpdate=t,e.spotLightShadows.needsUpdate=t,e.rectAreaLights.needsUpdate=t,e.hemisphereLights.needsUpdate=t}function Tt(e){return e.isMeshLambertMaterial||e.isMeshToonMaterial||e.isMeshPhongMaterial||e.isMeshStandardMaterial||e.isShadowMaterial||e.isShaderMaterial&&e.lights===!0}this.getActiveCubeFace=function(){return b},this.getActiveMipmapLevel=function(){return x},this.getRenderTarget=function(){return S},this.setRenderTargetTextures=function(e,t,n){L.get(e.texture).__webglTexture=t,L.get(e.depthTexture).__webglTexture=n;let r=L.get(e);r.__hasExternalTextures=!0,r.__autoAllocateDepthBuffer=n===void 0,r.__autoAllocateDepthBuffer||Oe.has(`WEBGL_multisampled_render_to_texture`)===!0&&(console.warn(`THREE.WebGLRenderer: Render-to-texture extension was disabled because an external texture was provided`),r.__useRenderToTexture=!1)},this.setRenderTargetFramebuffer=function(e,t){let n=L.get(e);n.__webglFramebuffer=t,n.__useDefaultFramebuffer=t===void 0},this.setRenderTarget=function(e,t=0,n=0){S=e,b=t,x=n;let r=!0,i=null,a=!1,o=!1;if(e){let s=L.get(e);if(s.__useDefaultFramebuffer!==void 0)F.bindFramebuffer(P.FRAMEBUFFER,null),r=!1;else if(s.__webglFramebuffer===void 0)R.setupRenderTarget(e);else if(s.__hasExternalTextures)R.rebindTextures(e,L.get(e.texture).__webglTexture,L.get(e.depthTexture).__webglTexture);else if(e.depthBuffer){let t=e.depthTexture;if(s.__boundDepthTexture!==t){if(t!==null&&L.has(t)&&(e.width!==t.image.width||e.height!==t.image.height))throw Error(`WebGLRenderTarget: Attached DepthTexture is initialized to the incorrect size.`);R.setupDepthRenderbuffer(e)}}let c=e.texture;(c.isData3DTexture||c.isDataArrayTexture||c.isCompressedArrayTexture)&&(o=!0);let l=L.get(e).__webglFramebuffer;e.isWebGLCubeRenderTarget?(i=Array.isArray(l[t])?l[t][n]:l[t],a=!0):i=e.samples>0&&R.useMultisampledRTT(e)===!1?L.get(e).__webglMultisampledFramebuffer:Array.isArray(l)?l[n]:l,T.copy(e.viewport),E.copy(e.scissor),D=e.scissorTest}else T.copy(ce).multiplyScalar(ae).floor(),E.copy(le).multiplyScalar(ae).floor(),D=M;if(F.bindFramebuffer(P.FRAMEBUFFER,i)&&r&&F.drawBuffers(e,i),F.viewport(T),F.scissor(E),F.setScissorTest(D),a){let r=L.get(e.texture);P.framebufferTexture2D(P.FRAMEBUFFER,P.COLOR_ATTACHMENT0,P.TEXTURE_CUBE_MAP_POSITIVE_X+t,r.__webglTexture,n)}else if(o){let r=L.get(e.texture),i=t||0;P.framebufferTextureLayer(P.FRAMEBUFFER,P.COLOR_ATTACHMENT0,r.__webglTexture,n||0,i)}C=-1},this.readRenderTargetPixels=function(e,t,n,r,i,a,o){if(!(e&&e.isWebGLRenderTarget)){console.error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);return}let s=L.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&o!==void 0&&(s=s[o]),s){F.bindFramebuffer(P.FRAMEBUFFER,s);try{let o=e.texture,s=o.format,c=o.type;if(!ke.textureFormatReadable(s)){console.error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.`);return}if(!ke.textureTypeReadable(c)){console.error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.`);return}t>=0&&t<=e.width-r&&n>=0&&n<=e.height-i&&P.readPixels(t,n,r,i,Qe.convert(s),Qe.convert(c),a)}finally{let e=S===null?null:L.get(S).__webglFramebuffer;F.bindFramebuffer(P.FRAMEBUFFER,e)}}},this.readRenderTargetPixelsAsync=async function(e,t,n,r,i,a,o){if(!(e&&e.isWebGLRenderTarget))throw Error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);let s=L.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&o!==void 0&&(s=s[o]),s){let o=e.texture,c=o.format,l=o.type;if(!ke.textureFormatReadable(c))throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.`);if(!ke.textureTypeReadable(l))throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.`);if(t>=0&&t<=e.width-r&&n>=0&&n<=e.height-i){F.bindFramebuffer(P.FRAMEBUFFER,s);let e=P.createBuffer();P.bindBuffer(P.PIXEL_PACK_BUFFER,e),P.bufferData(P.PIXEL_PACK_BUFFER,a.byteLength,P.STREAM_READ),P.readPixels(t,n,r,i,Qe.convert(c),Qe.convert(l),0);let o=S===null?null:L.get(S).__webglFramebuffer;F.bindFramebuffer(P.FRAMEBUFFER,o);let u=P.fenceSync(P.SYNC_GPU_COMMANDS_COMPLETE,0);return P.flush(),await te(P,u,4),P.bindBuffer(P.PIXEL_PACK_BUFFER,e),P.getBufferSubData(P.PIXEL_PACK_BUFFER,0,a),P.deleteBuffer(e),P.deleteSync(u),a}throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.`)}},this.copyFramebufferToTexture=function(e,t=null,n=0){e.isTexture!==!0&&(ee(`WebGLRenderer: copyFramebufferToTexture function signature has changed.`),t=arguments[0]||null,e=arguments[1]);let r=2**-n,i=Math.floor(e.image.width*r),a=Math.floor(e.image.height*r),o=t===null?0:t.x,s=t===null?0:t.y;R.setTexture2D(e,0),P.copyTexSubImage2D(P.TEXTURE_2D,n,0,0,o,s,i,a),F.unbindTexture()},this.copyTextureToTexture=function(e,t,n=null,r=null,i=0){e.isTexture!==!0&&(ee(`WebGLRenderer: copyTextureToTexture function signature has changed.`),r=arguments[0]||null,e=arguments[1],t=arguments[2],i=arguments[3]||0,n=null);let a,o,s,c,l,u;n===null?(a=e.image.width,o=e.image.height,s=0,c=0):(a=n.max.x-n.min.x,o=n.max.y-n.min.y,s=n.min.x,c=n.min.y),r===null?(l=0,u=0):(l=r.x,u=r.y);let d=Qe.convert(t.format),f=Qe.convert(t.type);R.setTexture2D(t,0),P.pixelStorei(P.UNPACK_FLIP_Y_WEBGL,t.flipY),P.pixelStorei(P.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.premultiplyAlpha),P.pixelStorei(P.UNPACK_ALIGNMENT,t.unpackAlignment);let p=P.getParameter(P.UNPACK_ROW_LENGTH),m=P.getParameter(P.UNPACK_IMAGE_HEIGHT),h=P.getParameter(P.UNPACK_SKIP_PIXELS),g=P.getParameter(P.UNPACK_SKIP_ROWS),_=P.getParameter(P.UNPACK_SKIP_IMAGES),v=e.isCompressedTexture?e.mipmaps[i]:e.image;P.pixelStorei(P.UNPACK_ROW_LENGTH,v.width),P.pixelStorei(P.UNPACK_IMAGE_HEIGHT,v.height),P.pixelStorei(P.UNPACK_SKIP_PIXELS,s),P.pixelStorei(P.UNPACK_SKIP_ROWS,c),e.isDataTexture?P.texSubImage2D(P.TEXTURE_2D,i,l,u,a,o,d,f,v.data):e.isCompressedTexture?P.compressedTexSubImage2D(P.TEXTURE_2D,i,l,u,v.width,v.height,d,v.data):P.texSubImage2D(P.TEXTURE_2D,i,l,u,a,o,d,f,v),P.pixelStorei(P.UNPACK_ROW_LENGTH,p),P.pixelStorei(P.UNPACK_IMAGE_HEIGHT,m),P.pixelStorei(P.UNPACK_SKIP_PIXELS,h),P.pixelStorei(P.UNPACK_SKIP_ROWS,g),P.pixelStorei(P.UNPACK_SKIP_IMAGES,_),i===0&&t.generateMipmaps&&P.generateMipmap(P.TEXTURE_2D),F.unbindTexture()},this.copyTextureToTexture3D=function(e,t,n=null,r=null,i=0){e.isTexture!==!0&&(ee(`WebGLRenderer: copyTextureToTexture3D function signature has changed.`),n=arguments[0]||null,r=arguments[1]||null,e=arguments[2],t=arguments[3],i=arguments[4]||0);let a,o,s,c,l,u,d,f,p,m=e.isCompressedTexture?e.mipmaps[i]:e.image;n===null?(a=m.width,o=m.height,s=m.depth,c=0,l=0,u=0):(a=n.max.x-n.min.x,o=n.max.y-n.min.y,s=n.max.z-n.min.z,c=n.min.x,l=n.min.y,u=n.min.z),r===null?(d=0,f=0,p=0):(d=r.x,f=r.y,p=r.z);let h=Qe.convert(t.format),g=Qe.convert(t.type),_;if(t.isData3DTexture)R.setTexture3D(t,0),_=P.TEXTURE_3D;else if(t.isDataArrayTexture||t.isCompressedArrayTexture)R.setTexture2DArray(t,0),_=P.TEXTURE_2D_ARRAY;else{console.warn(`THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.`);return}P.pixelStorei(P.UNPACK_FLIP_Y_WEBGL,t.flipY),P.pixelStorei(P.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.premultiplyAlpha),P.pixelStorei(P.UNPACK_ALIGNMENT,t.unpackAlignment);let v=P.getParameter(P.UNPACK_ROW_LENGTH),y=P.getParameter(P.UNPACK_IMAGE_HEIGHT),b=P.getParameter(P.UNPACK_SKIP_PIXELS),x=P.getParameter(P.UNPACK_SKIP_ROWS),S=P.getParameter(P.UNPACK_SKIP_IMAGES);P.pixelStorei(P.UNPACK_ROW_LENGTH,m.width),P.pixelStorei(P.UNPACK_IMAGE_HEIGHT,m.height),P.pixelStorei(P.UNPACK_SKIP_PIXELS,c),P.pixelStorei(P.UNPACK_SKIP_ROWS,l),P.pixelStorei(P.UNPACK_SKIP_IMAGES,u),e.isDataTexture||e.isData3DTexture?P.texSubImage3D(_,i,d,f,p,a,o,s,h,g,m.data):t.isCompressedArrayTexture?P.compressedTexSubImage3D(_,i,d,f,p,a,o,s,h,m.data):P.texSubImage3D(_,i,d,f,p,a,o,s,h,g,m),P.pixelStorei(P.UNPACK_ROW_LENGTH,v),P.pixelStorei(P.UNPACK_IMAGE_HEIGHT,y),P.pixelStorei(P.UNPACK_SKIP_PIXELS,b),P.pixelStorei(P.UNPACK_SKIP_ROWS,x),P.pixelStorei(P.UNPACK_SKIP_IMAGES,S),i===0&&t.generateMipmaps&&P.generateMipmap(_),F.unbindTexture()},this.initRenderTarget=function(e){L.get(e).__webglFramebuffer===void 0&&R.setupRenderTarget(e)},this.initTexture=function(e){e.isCubeTexture?R.setTextureCube(e,0):e.isData3DTexture?R.setTexture3D(e,0):e.isDataArrayTexture||e.isCompressedArrayTexture?R.setTexture2DArray(e,0):R.setTexture2D(e,0),F.unbindTexture()},this.resetState=function(){b=0,x=0,S=null,F.reset(),$e.reset()},typeof __THREE_DEVTOOLS__<`u`&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(`observe`,{detail:this}))}get coordinateSystem(){return Ia}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(e){this._outputColorSpace=e;let t=this.getContext();t.drawingBufferColorSpace=e===`display-p3`?`display-p3`:`srgb`,t.unpackColorSpace=Za.workingColorSpace===`display-p3-linear`?`display-p3`:`srgb`}},Hl=class e{constructor(e,t=25e-5){this.isFogExp2=!0,this.name=``,this.color=new W(e),this.density=t}clone(){return new e(this.color,this.density)}toJSON(){return{type:`FogExp2`,name:this.name,color:this.color.getHex(),density:this.density}}},Ul=class e{constructor(e,t=1,n=1e3){this.isFog=!0,this.name=``,this.color=new W(e),this.near=t,this.far=n}clone(){return new e(this.color,this.near,this.far)}toJSON(){return{type:`Fog`,name:this.name,color:this.color.getHex(),near:this.near,far:this.far}}},Wl=class extends ps{constructor(){super(),this.isScene=!0,this.type=`Scene`,this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.backgroundRotation=new Xo,this.environmentIntensity=1,this.environmentRotation=new Xo,this.overrideMaterial=null,typeof __THREE_DEVTOOLS__<`u`&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(`observe`,{detail:this}))}copy(e,t){return super.copy(e,t),e.background!==null&&(this.background=e.background.clone()),e.environment!==null&&(this.environment=e.environment.clone()),e.fog!==null&&(this.fog=e.fog.clone()),this.backgroundBlurriness=e.backgroundBlurriness,this.backgroundIntensity=e.backgroundIntensity,this.backgroundRotation.copy(e.backgroundRotation),this.environmentIntensity=e.environmentIntensity,this.environmentRotation.copy(e.environmentRotation),e.overrideMaterial!==null&&(this.overrideMaterial=e.overrideMaterial.clone()),this.matrixAutoUpdate=e.matrixAutoUpdate,this}toJSON(e){let t=super.toJSON(e);return this.fog!==null&&(t.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(t.object.backgroundBlurriness=this.backgroundBlurriness),this.backgroundIntensity!==1&&(t.object.backgroundIntensity=this.backgroundIntensity),t.object.backgroundRotation=this.backgroundRotation.toArray(),this.environmentIntensity!==1&&(t.object.environmentIntensity=this.environmentIntensity),t.object.environmentRotation=this.environmentRotation.toArray(),t}},Gl=class{constructor(e,t){this.isInterleavedBuffer=!0,this.array=e,this.stride=t,this.count=e===void 0?0:e.length/t,this.usage=Ea,this.updateRanges=[],this.version=0,this.uuid=o()}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}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,n){e*=this.stride,n*=t.stride;for(let r=0,i=this.stride;r<i;r++)this.array[e+r]=t.array[n+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=o()),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]),n=new this.constructor(t,this.stride);return n.setUsage(this.usage),n}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=o()),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}}},Kl=new H,ql=class e{constructor(e,t,n,r=!1){this.isInterleavedBufferAttribute=!0,this.name=``,this.data=e,this.itemSize=t,this.offset=n,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,n=this.data.count;t<n;t++)Kl.fromBufferAttribute(this,t),Kl.applyMatrix4(e),this.setXYZ(t,Kl.x,Kl.y,Kl.z);return this}applyNormalMatrix(e){for(let t=0,n=this.count;t<n;t++)Kl.fromBufferAttribute(this,t),Kl.applyNormalMatrix(e),this.setXYZ(t,Kl.x,Kl.y,Kl.z);return this}transformDirection(e){for(let t=0,n=this.count;t<n;t++)Kl.fromBufferAttribute(this,t),Kl.transformDirection(e),this.setXYZ(t,Kl.x,Kl.y,Kl.z);return this}getComponent(e,t){let n=this.array[e*this.data.stride+this.offset+t];return this.normalized&&(n=E(n,this.array)),n}setComponent(e,t,n){return this.normalized&&(n=D(n,this.array)),this.data.array[e*this.data.stride+this.offset+t]=n,this}setX(e,t){return this.normalized&&(t=D(t,this.array)),this.data.array[e*this.data.stride+this.offset]=t,this}setY(e,t){return this.normalized&&(t=D(t,this.array)),this.data.array[e*this.data.stride+this.offset+1]=t,this}setZ(e,t){return this.normalized&&(t=D(t,this.array)),this.data.array[e*this.data.stride+this.offset+2]=t,this}setW(e,t){return this.normalized&&(t=D(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=E(t,this.array)),t}getY(e){let t=this.data.array[e*this.data.stride+this.offset+1];return this.normalized&&(t=E(t,this.array)),t}getZ(e){let t=this.data.array[e*this.data.stride+this.offset+2];return this.normalized&&(t=E(t,this.array)),t}getW(e){let t=this.data.array[e*this.data.stride+this.offset+3];return this.normalized&&(t=E(t,this.array)),t}setXY(e,t,n){return e=e*this.data.stride+this.offset,this.normalized&&(t=D(t,this.array),n=D(n,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this}setXYZ(e,t,n,r){return e=e*this.data.stride+this.offset,this.normalized&&(t=D(t,this.array),n=D(n,this.array),r=D(r,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this.data.array[e+2]=r,this}setXYZW(e,t,n,r,i){return e=e*this.data.stride+this.offset,this.normalized&&(t=D(t,this.array),n=D(n,this.array),r=D(r,this.array),i=D(i,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this.data.array[e+2]=r,this.data.array[e+3]=i,this}clone(t){if(t===void 0){console.log(`THREE.InterleavedBufferAttribute.clone(): Cloning an interleaved buffer attribute will de-interleave buffer data.`);let e=[];for(let t=0;t<this.count;t++){let n=t*this.data.stride+this.offset;for(let t=0;t<this.itemSize;t++)e.push(this.data.array[n+t])}return new G(new this.array.constructor(e),this.itemSize,this.normalized)}return t.interleavedBuffers===void 0&&(t.interleavedBuffers={}),t.interleavedBuffers[this.data.uuid]===void 0&&(t.interleavedBuffers[this.data.uuid]=this.data.clone(t)),new e(t.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 e=[];for(let t=0;t<this.count;t++){let n=t*this.data.stride+this.offset;for(let t=0;t<this.itemSize;t++)e.push(this.data.array[n+t])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:e,normalized:this.normalized}}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}}},Jl=class extends Ns{constructor(e){super(),this.isSpriteMaterial=!0,this.type=`SpriteMaterial`,this.color=new W(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}},Xl=new H,Zl=new H,Ql=new H,$l=new B,eu=new B,tu=new U,nu=new H,ru=new H,iu=new H,au=new B,ou=new B,su=new B,cu=class extends ps{constructor(e=new Jl){if(super(),this.isSprite=!0,this.type=`Sprite`,Yl===void 0){Yl=new q;let e=new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),t=new Gl(e,5);Yl.setIndex([0,1,2,0,2,3]),Yl.setAttribute(`position`,new ql(t,3,0,!1)),Yl.setAttribute(`uv`,new ql(t,2,3,!1))}this.geometry=Yl,this.material=e,this.center=new B(.5,.5)}raycast(e,t){e.camera===null&&console.error(`THREE.Sprite: "Raycaster.camera" needs to be set in order to raycast against sprites.`),Zl.setFromMatrixScale(this.matrixWorld),tu.copy(e.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(e.camera.matrixWorldInverse,this.matrixWorld),Ql.setFromMatrixPosition(this.modelViewMatrix),e.camera.isPerspectiveCamera&&this.material.sizeAttenuation===!1&&Zl.multiplyScalar(-Ql.z);let n=this.material.rotation,r,i;n!==0&&(i=Math.cos(n),r=Math.sin(n));let a=this.center;yn(nu.set(-.5,-.5,0),Ql,a,Zl,r,i),yn(ru.set(.5,-.5,0),Ql,a,Zl,r,i),yn(iu.set(.5,.5,0),Ql,a,Zl,r,i),au.set(0,0),ou.set(1,0),su.set(1,1);let o=e.ray.intersectTriangle(nu,ru,iu,!1,Xl);if(o===null&&(yn(ru.set(-.5,.5,0),Ql,a,Zl,r,i),ou.set(0,1),o=e.ray.intersectTriangle(nu,iu,ru,!1,Xl),o===null))return;let s=e.ray.origin.distanceTo(Xl);s<e.near||s>e.far||t.push({distance:s,point:Xl.clone(),uv:Ds.getInterpolation(Xl,nu,ru,iu,au,ou,su,new B),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}},lu=new H,uu=new H,du=class extends ps{constructor(){super(),this._currentLevel=0,this.type=`LOD`,Object.defineProperties(this,{levels:{enumerable:!0,value:[]},isLOD:{value:!0}}),this.autoUpdate=!0}copy(e){super.copy(e,!1);let t=e.levels;for(let e=0,n=t.length;e<n;e++){let n=t[e];this.addLevel(n.object.clone(),n.distance,n.hysteresis)}return this.autoUpdate=e.autoUpdate,this}addLevel(e,t=0,n=0){t=Math.abs(t);let r=this.levels,i=0;for(;i<r.length&&!(t<r[i].distance);i++);return r.splice(i,0,{distance:t,hysteresis:n,object:e}),this.add(e),this}removeLevel(e){let t=this.levels;for(let n=0;n<t.length;n++)if(t[n].distance===e){let e=t.splice(n,1);return this.remove(e[0].object),!0}return!1}getCurrentLevel(){return this._currentLevel}getObjectForDistance(e){let t=this.levels;if(t.length>0){let n,r;for(n=1,r=t.length;n<r;n++){let r=t[n].distance;if(t[n].object.visible&&(r-=r*t[n].hysteresis),e<r)break}return t[n-1].object}return null}raycast(e,t){if(this.levels.length>0){lu.setFromMatrixPosition(this.matrixWorld);let n=e.ray.origin.distanceTo(lu);this.getObjectForDistance(n).raycast(e,t)}}update(e){let t=this.levels;if(t.length>1){lu.setFromMatrixPosition(e.matrixWorld),uu.setFromMatrixPosition(this.matrixWorld);let n=lu.distanceTo(uu)/e.zoom;t[0].object.visible=!0;let r,i;for(r=1,i=t.length;r<i;r++){let e=t[r].distance;if(t[r].object.visible&&(e-=e*t[r].hysteresis),n>=e)t[r-1].object.visible=!1,t[r].object.visible=!0;else break}for(this._currentLevel=r-1;r<i;r++)t[r].object.visible=!1}}toJSON(e){let t=super.toJSON(e);this.autoUpdate===!1&&(t.object.autoUpdate=!1),t.object.levels=[];let n=this.levels;for(let e=0,r=n.length;e<r;e++){let r=n[e];t.object.levels.push({object:r.object.uuid,distance:r.distance,hysteresis:r.hysteresis})}return t}},fu=new H,pu=new io,mu=new io,hu=new H,gu=new U,_u=new H,vu=new Mo,yu=new U,bu=new Bo,xu=class extends dc{constructor(e,t){super(e,t),this.isSkinnedMesh=!0,this.type=`SkinnedMesh`,this.bindMode=Pr,this.bindMatrix=new U,this.bindMatrixInverse=new U,this.boundingBox=null,this.boundingSphere=null}computeBoundingBox(){let e=this.geometry;this.boundingBox===null&&(this.boundingBox=new ho),this.boundingBox.makeEmpty();let t=e.getAttribute(`position`);for(let e=0;e<t.count;e++)this.getVertexPosition(e,_u),this.boundingBox.expandByPoint(_u)}computeBoundingSphere(){let e=this.geometry;this.boundingSphere===null&&(this.boundingSphere=new Mo),this.boundingSphere.makeEmpty();let t=e.getAttribute(`position`);for(let e=0;e<t.count;e++)this.getVertexPosition(e,_u),this.boundingSphere.expandByPoint(_u)}copy(e,t){return super.copy(e,t),this.bindMode=e.bindMode,this.bindMatrix.copy(e.bindMatrix),this.bindMatrixInverse.copy(e.bindMatrixInverse),this.skeleton=e.skeleton,e.boundingBox!==null&&(this.boundingBox=e.boundingBox.clone()),e.boundingSphere!==null&&(this.boundingSphere=e.boundingSphere.clone()),this}raycast(e,t){let n=this.material,r=this.matrixWorld;n!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),vu.copy(this.boundingSphere),vu.applyMatrix4(r),e.ray.intersectsSphere(vu)!==!1&&(yu.copy(r).invert(),bu.copy(e.ray).applyMatrix4(yu),(this.boundingBox===null||bu.intersectsBox(this.boundingBox)!==!1)&&this._computeIntersections(e,t,bu)))}getVertexPosition(e,t){return super.getVertexPosition(e,t),this.applyBoneTransform(e,t),t}bind(e,t){this.skeleton=e,t===void 0&&(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),t=this.matrixWorld),this.bindMatrix.copy(t),this.bindMatrixInverse.copy(t).invert()}pose(){this.skeleton.pose()}normalizeSkinWeights(){let e=new io,t=this.geometry.attributes.skinWeight;for(let n=0,r=t.count;n<r;n++){e.fromBufferAttribute(t,n);let r=1/e.manhattanLength();r===1/0?e.set(1,0,0,0):e.multiplyScalar(r),t.setXYZW(n,e.x,e.y,e.z,e.w)}}updateMatrixWorld(e){super.updateMatrixWorld(e),this.bindMode===`attached`?this.bindMatrixInverse.copy(this.matrixWorld).invert():this.bindMode===`detached`?this.bindMatrixInverse.copy(this.bindMatrix).invert():console.warn(`THREE.SkinnedMesh: Unrecognized bindMode: `+this.bindMode)}applyBoneTransform(e,t){let n=this.skeleton,r=this.geometry;pu.fromBufferAttribute(r.attributes.skinIndex,e),mu.fromBufferAttribute(r.attributes.skinWeight,e),fu.copy(t).applyMatrix4(this.bindMatrix),t.set(0,0,0);for(let e=0;e<4;e++){let r=mu.getComponent(e);if(r!==0){let i=pu.getComponent(e);gu.multiplyMatrices(n.bones[i].matrixWorld,n.boneInverses[i]),t.addScaledVector(hu.copy(fu).applyMatrix4(gu),r)}}return t.applyMatrix4(this.bindMatrixInverse)}},Su=class extends ps{constructor(){super(),this.isBone=!0,this.type=`Bone`}},Cu=class extends ro{constructor(e=null,t=1,n=1,r,i,a,o,s,c=Rr,l=Rr,u,d){super(null,a,o,s,c,l,r,i,u,d),this.isDataTexture=!0,this.image={data:e,width:t,height:n},this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}},wu=new U,Tu=new U,Eu=class e{constructor(e=[],t=[]){this.uuid=o(),this.bones=e.slice(0),this.boneInverses=t,this.boneMatrices=null,this.boneTexture=null,this.init()}init(){let e=this.bones,t=this.boneInverses;if(this.boneMatrices=new Float32Array(e.length*16),t.length===0)this.calculateInverses();else if(e.length!==t.length){console.warn(`THREE.Skeleton: Number of inverse bone matrices does not match amount of bones.`),this.boneInverses=[];for(let e=0,t=this.bones.length;e<t;e++)this.boneInverses.push(new U)}}calculateInverses(){this.boneInverses.length=0;for(let e=0,t=this.bones.length;e<t;e++){let t=new U;this.bones[e]&&t.copy(this.bones[e].matrixWorld).invert(),this.boneInverses.push(t)}}pose(){for(let e=0,t=this.bones.length;e<t;e++){let t=this.bones[e];t&&t.matrixWorld.copy(this.boneInverses[e]).invert()}for(let e=0,t=this.bones.length;e<t;e++){let t=this.bones[e];t&&(t.parent&&t.parent.isBone?(t.matrix.copy(t.parent.matrixWorld).invert(),t.matrix.multiply(t.matrixWorld)):t.matrix.copy(t.matrixWorld),t.matrix.decompose(t.position,t.quaternion,t.scale))}}update(){let e=this.bones,t=this.boneInverses,n=this.boneMatrices,r=this.boneTexture;for(let r=0,i=e.length;r<i;r++){let i=e[r]?e[r].matrixWorld:Tu;wu.multiplyMatrices(i,t[r]),wu.toArray(n,r*16)}r!==null&&(r.needsUpdate=!0)}clone(){return new e(this.bones,this.boneInverses)}computeBoneTexture(){let e=Math.sqrt(this.bones.length*4);e=Math.ceil(e/4)*4,e=Math.max(e,4);let t=new Float32Array(e*e*4);t.set(this.boneMatrices);let n=new Cu(t,e,e,ci,ei);return n.needsUpdate=!0,this.boneMatrices=t,this.boneTexture=n,this}getBoneByName(e){for(let t=0,n=this.bones.length;t<n;t++){let n=this.bones[t];if(n.name===e)return n}}dispose(){this.boneTexture!==null&&(this.boneTexture.dispose(),this.boneTexture=null)}fromJSON(e,t){this.uuid=e.uuid;for(let n=0,r=e.bones.length;n<r;n++){let r=e.bones[n],i=t[r];i===void 0&&(console.warn(`THREE.Skeleton: No bone found with UUID:`,r),i=new Su),this.bones.push(i),this.boneInverses.push(new U().fromArray(e.boneInverses[n]))}return this.init(),this}toJSON(){let e={metadata:{version:4.6,type:`Skeleton`,generator:`Skeleton.toJSON`},bones:[],boneInverses:[]};e.uuid=this.uuid;let t=this.bones,n=this.boneInverses;for(let r=0,i=t.length;r<i;r++){let i=t[r];e.bones.push(i.uuid);let a=n[r];e.boneInverses.push(a.toArray())}return e}},Du=class extends G{constructor(e,t,n,r=1){super(e,t,n),this.isInstancedBufferAttribute=!0,this.meshPerAttribute=r}copy(e){return super.copy(e),this.meshPerAttribute=e.meshPerAttribute,this}toJSON(){let e=super.toJSON();return e.meshPerAttribute=this.meshPerAttribute,e.isInstancedBufferAttribute=!0,e}},Ou=new U,ku=new U,Au=[],ju=new ho,Mu=new U,Nu=new dc,Pu=new Mo,Fu=class extends dc{constructor(e,t,n){super(e,t),this.isInstancedMesh=!0,this.instanceMatrix=new Du(new Float32Array(n*16),16),this.instanceColor=null,this.morphTexture=null,this.count=n,this.boundingBox=null,this.boundingSphere=null;for(let e=0;e<n;e++)this.setMatrixAt(e,Mu)}computeBoundingBox(){let e=this.geometry,t=this.count;this.boundingBox===null&&(this.boundingBox=new ho),e.boundingBox===null&&e.computeBoundingBox(),this.boundingBox.makeEmpty();for(let n=0;n<t;n++)this.getMatrixAt(n,Ou),ju.copy(e.boundingBox).applyMatrix4(Ou),this.boundingBox.union(ju)}computeBoundingSphere(){let e=this.geometry,t=this.count;this.boundingSphere===null&&(this.boundingSphere=new Mo),e.boundingSphere===null&&e.computeBoundingSphere(),this.boundingSphere.makeEmpty();for(let n=0;n<t;n++)this.getMatrixAt(n,Ou),Pu.copy(e.boundingSphere).applyMatrix4(Ou),this.boundingSphere.union(Pu)}copy(e,t){return super.copy(e,t),this.instanceMatrix.copy(e.instanceMatrix),e.morphTexture!==null&&(this.morphTexture=e.morphTexture.clone()),e.instanceColor!==null&&(this.instanceColor=e.instanceColor.clone()),this.count=e.count,e.boundingBox!==null&&(this.boundingBox=e.boundingBox.clone()),e.boundingSphere!==null&&(this.boundingSphere=e.boundingSphere.clone()),this}getColorAt(e,t){t.fromArray(this.instanceColor.array,e*3)}getMatrixAt(e,t){t.fromArray(this.instanceMatrix.array,e*16)}getMorphAt(e,t){let n=t.morphTargetInfluences,r=this.morphTexture.source.data.data,i=e*(n.length+1)+1;for(let e=0;e<n.length;e++)n[e]=r[i+e]}raycast(e,t){let n=this.matrixWorld,r=this.count;if(Nu.geometry=this.geometry,Nu.material=this.material,Nu.material!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),Pu.copy(this.boundingSphere),Pu.applyMatrix4(n),e.ray.intersectsSphere(Pu)!==!1))for(let i=0;i<r;i++){this.getMatrixAt(i,Ou),ku.multiplyMatrices(n,Ou),Nu.matrixWorld=ku,Nu.raycast(e,Au);for(let e=0,n=Au.length;e<n;e++){let n=Au[e];n.instanceId=i,n.object=this,t.push(n)}Au.length=0}}setColorAt(e,t){this.instanceColor===null&&(this.instanceColor=new Du(new Float32Array(this.instanceMatrix.count*3).fill(1),3)),t.toArray(this.instanceColor.array,e*3)}setMatrixAt(e,t){t.toArray(this.instanceMatrix.array,e*16)}setMorphAt(e,t){let n=t.morphTargetInfluences,r=n.length+1;this.morphTexture===null&&(this.morphTexture=new Cu(new Float32Array(r*this.count),r,this.count,pi,ei));let i=this.morphTexture.source.data.data,a=0;for(let e=0;e<n.length;e++)a+=n[e];let o=this.geometry.morphTargetsRelative?1:1-a,s=r*e;i[s]=o,i.set(n,s+1)}updateMorphTargets(){}dispose(){return this.dispatchEvent({type:`dispose`}),this.morphTexture!==null&&(this.morphTexture.dispose(),this.morphTexture=null),this}},Iu=class{constructor(){this.index=0,this.pool=[],this.list=[]}push(e,t,n){let r=this.pool,i=this.list;this.index>=r.length&&r.push({start:-1,count:-1,z:-1,index:-1});let a=r[this.index];i.push(a),this.index++,a.start=e.start,a.count=e.count,a.z=t,a.index=n}reset(){this.list.length=0,this.index=0}},Lu=new U,Ru=new U,zu=new U,Bu=new W(1,1,1),Vu=new U,Hu=new Nc,Uu=new ho,Wu=new Mo,Gu=new H,Ku=new H,qu=new H,Ju=new Iu,Yu=new dc,Xu=[],Zu=class extends dc{get maxInstanceCount(){return this._maxInstanceCount}constructor(e,t,n=t*2,r){super(new q,r),this.isBatchedMesh=!0,this.perObjectFrustumCulled=!0,this.sortObjects=!0,this.boundingBox=null,this.boundingSphere=null,this.customSort=null,this._drawInfo=[],this._availableInstanceIds=[],this._drawRanges=[],this._reservedRanges=[],this._bounds=[],this._maxInstanceCount=e,this._maxVertexCount=t,this._maxIndexCount=n,this._geometryInitialized=!1,this._geometryCount=0,this._multiDrawCounts=new Int32Array(e),this._multiDrawStarts=new Int32Array(e),this._multiDrawCount=0,this._multiDrawInstances=null,this._visibilityChanged=!0,this._matricesTexture=null,this._indirectTexture=null,this._colorsTexture=null,this._initMatricesTexture(),this._initIndirectTexture()}_initMatricesTexture(){let e=Math.sqrt(this._maxInstanceCount*4);e=Math.ceil(e/4)*4,e=Math.max(e,4);let t=new Float32Array(e*e*4),n=new Cu(t,e,e,ci,ei);this._matricesTexture=n}_initIndirectTexture(){let e=Math.sqrt(this._maxInstanceCount);e=Math.ceil(e);let t=new Uint32Array(e*e),n=new Cu(t,e,e,mi,$r);this._indirectTexture=n}_initColorsTexture(){let e=Math.sqrt(this._maxInstanceCount);e=Math.ceil(e);let t=new Float32Array(e*e*4).fill(1),n=new Cu(t,e,e,ci,ei);n.colorSpace=Za.workingColorSpace,this._colorsTexture=n}_initializeGeometry(e){let t=this.geometry,n=this._maxVertexCount,r=this._maxIndexCount;if(this._geometryInitialized===!1){for(let r in e.attributes){let{array:i,itemSize:a,normalized:o}=e.getAttribute(r),s=new i.constructor(n*a),c=new G(s,a,o);t.setAttribute(r,c)}if(e.getIndex()!==null){let e=n>65535?new Uint32Array(r):new Uint16Array(r);t.setIndex(new G(e,1))}this._geometryInitialized=!0}}_validateGeometry(e){let t=this.geometry;if(!!e.getIndex()!=!!t.getIndex())throw Error(`BatchedMesh: All geometries must consistently have "index".`);for(let n in t.attributes){if(!e.hasAttribute(n))throw Error(`BatchedMesh: Added geometry missing "${n}". All geometries must have consistent attributes.`);let r=e.getAttribute(n),i=t.getAttribute(n);if(r.itemSize!==i.itemSize||r.normalized!==i.normalized)throw Error(`BatchedMesh: All attributes must have a consistent itemSize and normalized value.`)}}setCustomSort(e){return this.customSort=e,this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new ho);let e=this.boundingBox,t=this._drawInfo;e.makeEmpty();for(let n=0,r=t.length;n<r;n++){if(t[n].active===!1)continue;let r=t[n].geometryIndex;this.getMatrixAt(n,Lu),this.getBoundingBoxAt(r,Uu).applyMatrix4(Lu),e.union(Uu)}}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new Mo);let e=this.boundingSphere,t=this._drawInfo;e.makeEmpty();for(let n=0,r=t.length;n<r;n++){if(t[n].active===!1)continue;let r=t[n].geometryIndex;this.getMatrixAt(n,Lu),this.getBoundingSphereAt(r,Wu).applyMatrix4(Lu),e.union(Wu)}}addInstance(e){if(this._drawInfo.length>=this.maxInstanceCount&&this._availableInstanceIds.length===0)throw Error(`BatchedMesh: Maximum item count reached.`);let t={visible:!0,active:!0,geometryIndex:e},n=null;this._availableInstanceIds.length>0?(n=this._availableInstanceIds.pop(),this._drawInfo[n]=t):(n=this._drawInfo.length,this._drawInfo.push(t));let r=this._matricesTexture,i=r.image.data;zu.toArray(i,n*16),r.needsUpdate=!0;let a=this._colorsTexture;return a&&(Bu.toArray(a.image.data,n*4),a.needsUpdate=!0),n}addGeometry(e,t=-1,n=-1){if(this._initializeGeometry(e),this._validateGeometry(e),this._drawInfo.length>=this._maxInstanceCount)throw Error(`BatchedMesh: Maximum item count reached.`);let r={vertexStart:-1,vertexCount:-1,indexStart:-1,indexCount:-1},i=null,a=this._reservedRanges,o=this._drawRanges,s=this._bounds;this._geometryCount!==0&&(i=a[a.length-1]),r.vertexCount=t===-1?e.getAttribute(`position`).count:t,r.vertexStart=i===null?0:i.vertexStart+i.vertexCount;let c=e.getIndex(),l=c!==null;if(l&&(r.indexCount=n===-1?c.count:n,r.indexStart=i===null?0:i.indexStart+i.indexCount),r.indexStart!==-1&&r.indexStart+r.indexCount>this._maxIndexCount||r.vertexStart+r.vertexCount>this._maxVertexCount)throw Error(`BatchedMesh: Reserved space request exceeds the maximum buffer size.`);let u=this._geometryCount;return this._geometryCount++,a.push(r),o.push({start:l?r.indexStart:r.vertexStart,count:-1}),s.push({boxInitialized:!1,box:new ho,sphereInitialized:!1,sphere:new Mo}),this.setGeometryAt(u,e),u}setGeometryAt(e,t){if(e>=this._geometryCount)throw Error(`BatchedMesh: Maximum geometry count reached.`);this._validateGeometry(t);let n=this.geometry,r=n.getIndex()!==null,i=n.getIndex(),a=t.getIndex(),o=this._reservedRanges[e];if(r&&a.count>o.indexCount||t.attributes.position.count>o.vertexCount)throw Error(`BatchedMesh: Reserved space not large enough for provided geometry.`);let s=o.vertexStart,c=o.vertexCount;for(let e in n.attributes){let r=t.getAttribute(e),i=n.getAttribute(e);Sn(r,i,s);let a=r.itemSize;for(let e=r.count,t=c;e<t;e++){let t=s+e;for(let e=0;e<a;e++)i.setComponent(t,e,0)}i.needsUpdate=!0,i.addUpdateRange(s*a,c*a)}if(r){let e=o.indexStart;for(let t=0;t<a.count;t++)i.setX(e+t,s+a.getX(t));for(let t=a.count,n=o.indexCount;t<n;t++)i.setX(e+t,s);i.needsUpdate=!0,i.addUpdateRange(e,o.indexCount)}let l=this._bounds[e];t.boundingBox===null?l.boxInitialized=!1:(l.box.copy(t.boundingBox),l.boxInitialized=!0),t.boundingSphere===null?l.sphereInitialized=!1:(l.sphere.copy(t.boundingSphere),l.sphereInitialized=!0);let u=this._drawRanges[e],d=t.getAttribute(`position`);return u.count=r?a.count:d.count,this._visibilityChanged=!0,e}deleteInstance(e){let t=this._drawInfo;return e>=t.length||t[e].active===!1||(t[e].active=!1,this._availableInstanceIds.push(e),this._visibilityChanged=!0),this}getBoundingBoxAt(e,t){if(e>=this._geometryCount)return null;let n=this._bounds[e],r=n.box,i=this.geometry;if(n.boxInitialized===!1){r.makeEmpty();let t=i.index,a=i.attributes.position,o=this._drawRanges[e];for(let e=o.start,n=o.start+o.count;e<n;e++){let n=e;t&&(n=t.getX(n)),r.expandByPoint(Gu.fromBufferAttribute(a,n))}n.boxInitialized=!0}return t.copy(r),t}getBoundingSphereAt(e,t){if(e>=this._geometryCount)return null;let n=this._bounds[e],r=n.sphere,i=this.geometry;if(n.sphereInitialized===!1){r.makeEmpty(),this.getBoundingBoxAt(e,Uu),Uu.getCenter(r.center);let t=i.index,a=i.attributes.position,o=this._drawRanges[e],s=0;for(let e=o.start,n=o.start+o.count;e<n;e++){let n=e;t&&(n=t.getX(n)),Gu.fromBufferAttribute(a,n),s=Math.max(s,r.center.distanceToSquared(Gu))}r.radius=Math.sqrt(s),n.sphereInitialized=!0}return t.copy(r),t}setMatrixAt(e,t){let n=this._drawInfo,r=this._matricesTexture,i=this._matricesTexture.image.data;return e>=n.length||n[e].active===!1||(t.toArray(i,e*16),r.needsUpdate=!0),this}getMatrixAt(e,t){let n=this._drawInfo,r=this._matricesTexture.image.data;return e>=n.length||n[e].active===!1?null:t.fromArray(r,e*16)}setColorAt(e,t){this._colorsTexture===null&&this._initColorsTexture();let n=this._colorsTexture,r=this._colorsTexture.image.data,i=this._drawInfo;return e>=i.length||i[e].active===!1||(t.toArray(r,e*4),n.needsUpdate=!0),this}getColorAt(e,t){let n=this._colorsTexture.image.data,r=this._drawInfo;return e>=r.length||r[e].active===!1?null:t.fromArray(n,e*4)}setVisibleAt(e,t){let n=this._drawInfo;return e>=n.length||n[e].active===!1||n[e].visible===t||(n[e].visible=t,this._visibilityChanged=!0),this}getVisibleAt(e){let t=this._drawInfo;return e>=t.length||t[e].active===!1?!1:t[e].visible}setGeometryIdAt(e,t){let n=this._drawInfo;return e>=n.length||n[e].active===!1||t<0||t>=this._geometryCount?null:(n[e].geometryIndex=t,this)}getGeometryIdAt(e){let t=this._drawInfo;return e>=t.length||t[e].active===!1?-1:t[e].geometryIndex}getGeometryRangeAt(e,t={}){if(e<0||e>=this._geometryCount)return null;let n=this._drawRanges[e];return t.start=n.start,t.count=n.count,t}raycast(e,t){let n=this._drawInfo,r=this._drawRanges,i=this.matrixWorld,a=this.geometry;Yu.material=this.material,Yu.geometry.index=a.index,Yu.geometry.attributes=a.attributes,Yu.geometry.boundingBox===null&&(Yu.geometry.boundingBox=new ho),Yu.geometry.boundingSphere===null&&(Yu.geometry.boundingSphere=new Mo);for(let a=0,o=n.length;a<o;a++){if(!n[a].visible||!n[a].active)continue;let o=n[a].geometryIndex,s=r[o];Yu.geometry.setDrawRange(s.start,s.count),this.getMatrixAt(a,Yu.matrixWorld).premultiply(i),this.getBoundingBoxAt(o,Yu.geometry.boundingBox),this.getBoundingSphereAt(o,Yu.geometry.boundingSphere),Yu.raycast(e,Xu);for(let e=0,n=Xu.length;e<n;e++){let n=Xu[e];n.object=this,n.batchId=a,t.push(n)}Xu.length=0}Yu.material=null,Yu.geometry.index=null,Yu.geometry.attributes={},Yu.geometry.setDrawRange(0,1/0)}copy(e){return super.copy(e),this.geometry=e.geometry.clone(),this.perObjectFrustumCulled=e.perObjectFrustumCulled,this.sortObjects=e.sortObjects,this.boundingBox=e.boundingBox===null?null:e.boundingBox.clone(),this.boundingSphere=e.boundingSphere===null?null:e.boundingSphere.clone(),this._drawRanges=e._drawRanges.map(e=>({...e})),this._reservedRanges=e._reservedRanges.map(e=>({...e})),this._drawInfo=e._drawInfo.map(e=>({...e})),this._bounds=e._bounds.map(e=>({boxInitialized:e.boxInitialized,box:e.box.clone(),sphereInitialized:e.sphereInitialized,sphere:e.sphere.clone()})),this._maxInstanceCount=e._maxInstanceCount,this._maxVertexCount=e._maxVertexCount,this._maxIndexCount=e._maxIndexCount,this._geometryInitialized=e._geometryInitialized,this._geometryCount=e._geometryCount,this._multiDrawCounts=e._multiDrawCounts.slice(),this._multiDrawStarts=e._multiDrawStarts.slice(),this._matricesTexture=e._matricesTexture.clone(),this._matricesTexture.image.data=this._matricesTexture.image.data.slice(),this._colorsTexture!==null&&(this._colorsTexture=e._colorsTexture.clone(),this._colorsTexture.image.data=this._colorsTexture.image.data.slice()),this}dispose(){return this.geometry.dispose(),this._matricesTexture.dispose(),this._matricesTexture=null,this._indirectTexture.dispose(),this._indirectTexture=null,this._colorsTexture!==null&&(this._colorsTexture.dispose(),this._colorsTexture=null),this}onBeforeRender(e,t,n,r,i){if(!this._visibilityChanged&&!this.perObjectFrustumCulled&&!this.sortObjects)return;let a=r.getIndex(),o=a===null?1:a.array.BYTES_PER_ELEMENT,s=this._drawInfo,c=this._multiDrawStarts,l=this._multiDrawCounts,u=this._drawRanges,d=this.perObjectFrustumCulled,f=this._indirectTexture,p=f.image.data;d&&(Vu.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse).multiply(this.matrixWorld),Hu.setFromProjectionMatrix(Vu,e.coordinateSystem));let m=0;if(this.sortObjects){Ru.copy(this.matrixWorld).invert(),Gu.setFromMatrixPosition(n.matrixWorld).applyMatrix4(Ru),Ku.set(0,0,-1).transformDirection(n.matrixWorld).transformDirection(Ru);for(let e=0,t=s.length;e<t;e++)if(s[e].visible&&s[e].active){let t=s[e].geometryIndex;this.getMatrixAt(e,Lu),this.getBoundingSphereAt(t,Wu).applyMatrix4(Lu);let n=!1;if(d&&(n=!Hu.intersectsSphere(Wu)),!n){let n=qu.subVectors(Wu.center,Gu).dot(Ku);Ju.push(u[t],n,e)}}let e=Ju.list,t=this.customSort;t===null?e.sort(i.transparent?xn:bn):t.call(this,e,n);for(let t=0,n=e.length;t<n;t++){let n=e[t];c[m]=n.start*o,l[m]=n.count,p[m]=n.index,m++}Ju.reset()}else for(let e=0,t=s.length;e<t;e++)if(s[e].visible&&s[e].active){let t=s[e].geometryIndex,n=!1;if(d&&(this.getMatrixAt(e,Lu),this.getBoundingSphereAt(t,Wu).applyMatrix4(Lu),n=!Hu.intersectsSphere(Wu)),!n){let n=u[t];c[m]=n.start*o,l[m]=n.count,p[m]=e,m++}}f.needsUpdate=!0,this._multiDrawCount=m,this._visibilityChanged=!1}onBeforeShadow(e,t,n,r,i,a){this.onBeforeRender(e,null,r,i,a)}},Qu=class extends Ns{constructor(e){super(),this.isLineBasicMaterial=!0,this.type=`LineBasicMaterial`,this.color=new W(16777215),this.map=null,this.linewidth=1,this.linecap=`round`,this.linejoin=`round`,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.linewidth=e.linewidth,this.linecap=e.linecap,this.linejoin=e.linejoin,this.fog=e.fog,this}},$u=new H,ed=new H,td=new U,nd=new Bo,rd=new Mo,id=new H,ad=new H,od=class extends ps{constructor(e=new q,t=new Qu){super(),this.isLine=!0,this.type=`Line`,this.geometry=e,this.material=t,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}computeLineDistances(){let e=this.geometry;if(e.index===null){let t=e.attributes.position,n=[0];for(let e=1,r=t.count;e<r;e++)$u.fromBufferAttribute(t,e-1),ed.fromBufferAttribute(t,e),n[e]=n[e-1],n[e]+=$u.distanceTo(ed);e.setAttribute(`lineDistance`,new K(n,1))}else console.warn(`THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.`);return this}raycast(e,t){let n=this.geometry,r=this.matrixWorld,i=e.params.Line.threshold,a=n.drawRange;if(n.boundingSphere===null&&n.computeBoundingSphere(),rd.copy(n.boundingSphere),rd.applyMatrix4(r),rd.radius+=i,e.ray.intersectsSphere(rd)===!1)return;td.copy(r).invert(),nd.copy(e.ray).applyMatrix4(td);let o=i/((this.scale.x+this.scale.y+this.scale.z)/3),s=o*o,c=this.isLineSegments?2:1,l=n.index,u=n.attributes.position;if(l!==null){let n=Math.max(0,a.start),r=Math.min(l.count,a.start+a.count);for(let i=n,a=r-1;i<a;i+=c){let n=l.getX(i),r=l.getX(i+1),a=Cn(this,e,nd,s,n,r);a&&t.push(a)}if(this.isLineLoop){let i=l.getX(r-1),a=l.getX(n),o=Cn(this,e,nd,s,i,a);o&&t.push(o)}}else{let n=Math.max(0,a.start),r=Math.min(u.count,a.start+a.count);for(let i=n,a=r-1;i<a;i+=c){let n=Cn(this,e,nd,s,i,i+1);n&&t.push(n)}if(this.isLineLoop){let i=Cn(this,e,nd,s,r-1,n);i&&t.push(i)}}}updateMorphTargets(){let e=this.geometry.morphAttributes,t=Object.keys(e);if(t.length>0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;e<t;e++){let t=n[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[t]=e}}}}},sd=new H,cd=new H,ld=class extends od{constructor(e,t){super(e,t),this.isLineSegments=!0,this.type=`LineSegments`}computeLineDistances(){let e=this.geometry;if(e.index===null){let t=e.attributes.position,n=[];for(let e=0,r=t.count;e<r;e+=2)sd.fromBufferAttribute(t,e),cd.fromBufferAttribute(t,e+1),n[e]=e===0?0:n[e-1],n[e+1]=n[e]+sd.distanceTo(cd);e.setAttribute(`lineDistance`,new K(n,1))}else console.warn(`THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.`);return this}},ud=class extends od{constructor(e,t){super(e,t),this.isLineLoop=!0,this.type=`LineLoop`}},dd=class extends Ns{constructor(e){super(),this.isPointsMaterial=!0,this.type=`PointsMaterial`,this.color=new W(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!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.size=e.size,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}},fd=new U,pd=new Bo,md=new Mo,hd=new H,gd=class extends ps{constructor(e=new q,t=new dd){super(),this.isPoints=!0,this.type=`Points`,this.geometry=e,this.material=t,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}raycast(e,t){let n=this.geometry,r=this.matrixWorld,i=e.params.Points.threshold,a=n.drawRange;if(n.boundingSphere===null&&n.computeBoundingSphere(),md.copy(n.boundingSphere),md.applyMatrix4(r),md.radius+=i,e.ray.intersectsSphere(md)===!1)return;fd.copy(r).invert(),pd.copy(e.ray).applyMatrix4(fd);let o=i/((this.scale.x+this.scale.y+this.scale.z)/3),s=o*o,c=n.index,l=n.attributes.position;if(c!==null){let n=Math.max(0,a.start),i=Math.min(c.count,a.start+a.count);for(let a=n,o=i;a<o;a++){let n=c.getX(a);hd.fromBufferAttribute(l,n),wn(hd,n,s,r,e,t,this)}}else{let n=Math.max(0,a.start),i=Math.min(l.count,a.start+a.count);for(let a=n,o=i;a<o;a++)hd.fromBufferAttribute(l,a),wn(hd,a,s,r,e,t,this)}}updateMorphTargets(){let e=this.geometry.morphAttributes,t=Object.keys(e);if(t.length>0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;e<t;e++){let t=n[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[t]=e}}}}},_d=class extends ro{constructor(e,t,n,r,i,a,o,s,c){super(e,t,n,r,i,a,o,s,c),this.isVideoTexture=!0,this.minFilter=a===void 0?Ur:a,this.magFilter=i===void 0?Ur:i,this.generateMipmaps=!1;let l=this;function u(){l.needsUpdate=!0,e.requestVideoFrameCallback(u)}`requestVideoFrameCallback`in e&&e.requestVideoFrameCallback(u)}clone(){return new this.constructor(this.image).copy(this)}update(){let e=this.image;!(`requestVideoFrameCallback`in e)&&e.readyState>=e.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}},vd=class extends ro{constructor(e,t){super({width:e,height:t}),this.isFramebufferTexture=!0,this.magFilter=Rr,this.minFilter=Rr,this.generateMipmaps=!1,this.needsUpdate=!0}},yd=class extends ro{constructor(e,t,n,r,i,a,o,s,c,l,u,d){super(null,a,o,s,c,l,r,i,u,d),this.isCompressedTexture=!0,this.image={width:t,height:n},this.mipmaps=e,this.flipY=!1,this.generateMipmaps=!1}},bd=class extends yd{constructor(e,t,n,r,i,a){super(e,t,n,i,a),this.isCompressedArrayTexture=!0,this.image.depth=r,this.wrapR=z,this.layerUpdates=new Set}addLayerUpdate(e){this.layerUpdates.add(e)}clearLayerUpdates(){this.layerUpdates.clear()}},xd=class extends yd{constructor(e,t,n){super(void 0,e[0].width,e[0].height,t,n,301),this.isCompressedCubeTexture=!0,this.isCubeTexture=!0,this.image=e}},Sd=class extends ro{constructor(e,t,n,r,i,a,o,s,c){super(e,t,n,r,i,a,o,s,c),this.isCanvasTexture=!0,this.needsUpdate=!0}},Cd=class{constructor(){this.type=`Curve`,this.arcLengthDivisions=200}getPoint(){return console.warn(`THREE.Curve: .getPoint() not implemented.`),null}getPointAt(e,t){let n=this.getUtoTmapping(e);return this.getPoint(n,t)}getPoints(e=5){let t=[];for(let n=0;n<=e;n++)t.push(this.getPoint(n/e));return t}getSpacedPoints(e=5){let t=[];for(let n=0;n<=e;n++)t.push(this.getPointAt(n/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=[],n,r=this.getPoint(0),i=0;t.push(0);for(let a=1;a<=e;a++)n=this.getPoint(a/e),i+=n.distanceTo(r),t.push(i),r=n;return this.cacheArcLengths=t,t}updateArcLengths(){this.needsUpdate=!0,this.getLengths()}getUtoTmapping(e,t){let n=this.getLengths(),r=0,i=n.length,a;a=t||e*n[i-1];let o=0,s=i-1,c;for(;o<=s;)if(r=Math.floor(o+(s-o)/2),c=n[r]-a,c<0)o=r+1;else if(c>0)s=r-1;else{s=r;break}if(r=s,n[r]===a)return r/(i-1);let l=n[r],u=n[r+1]-l,d=(a-l)/u;return(r+d)/(i-1)}getTangent(e,t){let n=1e-4,r=e-n,i=e+n;r<0&&(r=0),i>1&&(i=1);let a=this.getPoint(r),o=this.getPoint(i),s=t||(a.isVector2?new B:new H);return s.copy(o).sub(a).normalize(),s}getTangentAt(e,t){let n=this.getUtoTmapping(e);return this.getTangent(n,t)}computeFrenetFrames(e,t){let n=new H,r=[],i=[],a=[],o=new H,c=new U;for(let t=0;t<=e;t++){let n=t/e;r[t]=this.getTangentAt(n,new H)}i[0]=new H,a[0]=new H;let l=Number.MAX_VALUE,u=Math.abs(r[0].x),d=Math.abs(r[0].y),f=Math.abs(r[0].z);u<=l&&(l=u,n.set(1,0,0)),d<=l&&(l=d,n.set(0,1,0)),f<=l&&n.set(0,0,1),o.crossVectors(r[0],n).normalize(),i[0].crossVectors(r[0],o),a[0].crossVectors(r[0],i[0]);for(let t=1;t<=e;t++){if(i[t]=i[t-1].clone(),a[t]=a[t-1].clone(),o.crossVectors(r[t-1],r[t]),o.length()>2**-52){o.normalize();let e=Math.acos(s(r[t-1].dot(r[t]),-1,1));i[t].applyMatrix4(c.makeRotationAxis(o,e))}a[t].crossVectors(r[t],i[t])}if(t===!0){let t=Math.acos(s(i[0].dot(i[e]),-1,1));t/=e,r[0].dot(o.crossVectors(i[0],i[e]))>0&&(t=-t);for(let n=1;n<=e;n++)i[n].applyMatrix4(c.makeRotationAxis(r[n],t*n)),a[n].crossVectors(r[n],i[n])}return{tangents:r,normals:i,binormals:a}}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}},wd=class extends Cd{constructor(e=0,t=0,n=1,r=1,i=0,a=Math.PI*2,o=!1,s=0){super(),this.isEllipseCurve=!0,this.type=`EllipseCurve`,this.aX=e,this.aY=t,this.xRadius=n,this.yRadius=r,this.aStartAngle=i,this.aEndAngle=a,this.aClockwise=o,this.aRotation=s}getPoint(e,t=new B){let n=t,r=Math.PI*2,i=this.aEndAngle-this.aStartAngle,a=Math.abs(i)<2**-52;for(;i<0;)i+=r;for(;i>r;)i-=r;i<2**-52&&(i=a?0:r),this.aClockwise===!0&&!a&&(i===r?i=-r:i-=r);let o=this.aStartAngle+e*i,s=this.aX+this.xRadius*Math.cos(o),c=this.aY+this.yRadius*Math.sin(o);if(this.aRotation!==0){let e=Math.cos(this.aRotation),t=Math.sin(this.aRotation),n=s-this.aX,r=c-this.aY;s=n*e-r*t+this.aX,c=n*t+r*e+this.aY}return n.set(s,c)}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}},Td=class extends wd{constructor(e,t,n,r,i,a){super(e,t,n,n,r,i,a),this.isArcCurve=!0,this.type=`ArcCurve`}},Ed=new H,Dd=new Tn,Od=new Tn,kd=new Tn,Ad=class extends Cd{constructor(e=[],t=!1,n=`centripetal`,r=.5){super(),this.isCatmullRomCurve3=!0,this.type=`CatmullRomCurve3`,this.points=e,this.closed=t,this.curveType=n,this.tension=r}getPoint(e,t=new H){let n=t,r=this.points,i=r.length,a=(i-+!this.closed)*e,o=Math.floor(a),s=a-o;this.closed?o+=o>0?0:(Math.floor(Math.abs(o)/i)+1)*i:s===0&&o===i-1&&(o=i-2,s=1);let c,l;this.closed||o>0?c=r[(o-1)%i]:(Ed.subVectors(r[0],r[1]).add(r[0]),c=Ed);let u=r[o%i],d=r[(o+1)%i];if(this.closed||o+2<i?l=r[(o+2)%i]:(Ed.subVectors(r[i-1],r[i-2]).add(r[i-1]),l=Ed),this.curveType===`centripetal`||this.curveType===`chordal`){let e=this.curveType===`chordal`?.5:.25,t=c.distanceToSquared(u)**+e,n=u.distanceToSquared(d)**+e,r=d.distanceToSquared(l)**+e;n<1e-4&&(n=1),t<1e-4&&(t=n),r<1e-4&&(r=n),Dd.initNonuniformCatmullRom(c.x,u.x,d.x,l.x,t,n,r),Od.initNonuniformCatmullRom(c.y,u.y,d.y,l.y,t,n,r),kd.initNonuniformCatmullRom(c.z,u.z,d.z,l.z,t,n,r)}else this.curveType===`catmullrom`&&(Dd.initCatmullRom(c.x,u.x,d.x,l.x,this.tension),Od.initCatmullRom(c.y,u.y,d.y,l.y,this.tension),kd.initCatmullRom(c.z,u.z,d.z,l.z,this.tension));return n.set(Dd.calc(s),Od.calc(s),kd.calc(s)),n}copy(e){super.copy(e),this.points=[];for(let t=0,n=e.points.length;t<n;t++){let n=e.points[t];this.points.push(n.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,n=this.points.length;t<n;t++){let n=this.points[t];e.points.push(n.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,n=e.points.length;t<n;t++){let n=e.points[t];this.points.push(new H().fromArray(n))}return this.closed=e.closed,this.curveType=e.curveType,this.tension=e.tension,this}},jd=class extends Cd{constructor(e=new B,t=new B,n=new B,r=new B){super(),this.isCubicBezierCurve=!0,this.type=`CubicBezierCurve`,this.v0=e,this.v1=t,this.v2=n,this.v3=r}getPoint(e,t=new B){let n=t,r=this.v0,i=this.v1,a=this.v2,o=this.v3;return n.set(Fn(e,r.x,i.x,a.x,o.x),Fn(e,r.y,i.y,a.y,o.y)),n}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}},Md=class extends Cd{constructor(e=new H,t=new H,n=new H,r=new H){super(),this.isCubicBezierCurve3=!0,this.type=`CubicBezierCurve3`,this.v0=e,this.v1=t,this.v2=n,this.v3=r}getPoint(e,t=new H){let n=t,r=this.v0,i=this.v1,a=this.v2,o=this.v3;return n.set(Fn(e,r.x,i.x,a.x,o.x),Fn(e,r.y,i.y,a.y,o.y),Fn(e,r.z,i.z,a.z,o.z)),n}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}},Nd=class extends Cd{constructor(e=new B,t=new B){super(),this.isLineCurve=!0,this.type=`LineCurve`,this.v1=e,this.v2=t}getPoint(e,t=new B){let n=t;return e===1?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(e).add(this.v1)),n}getPointAt(e,t){return this.getPoint(e,t)}getTangent(e,t=new B){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}},Pd=class extends Cd{constructor(e=new H,t=new H){super(),this.isLineCurve3=!0,this.type=`LineCurve3`,this.v1=e,this.v2=t}getPoint(e,t=new H){let n=t;return e===1?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(e).add(this.v1)),n}getPointAt(e,t){return this.getPoint(e,t)}getTangent(e,t=new H){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}},Fd=class extends Cd{constructor(e=new B,t=new B,n=new B){super(),this.isQuadraticBezierCurve=!0,this.type=`QuadraticBezierCurve`,this.v0=e,this.v1=t,this.v2=n}getPoint(e,t=new B){let n=t,r=this.v0,i=this.v1,a=this.v2;return n.set(An(e,r.x,i.x,a.x),An(e,r.y,i.y,a.y)),n}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}},Id=class extends Cd{constructor(e=new H,t=new H,n=new H){super(),this.isQuadraticBezierCurve3=!0,this.type=`QuadraticBezierCurve3`,this.v0=e,this.v1=t,this.v2=n}getPoint(e,t=new H){let n=t,r=this.v0,i=this.v1,a=this.v2;return n.set(An(e,r.x,i.x,a.x),An(e,r.y,i.y,a.y),An(e,r.z,i.z,a.z)),n}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}},Ld=class extends Cd{constructor(e=[]){super(),this.isSplineCurve=!0,this.type=`SplineCurve`,this.points=e}getPoint(e,t=new B){let n=t,r=this.points,i=(r.length-1)*e,a=Math.floor(i),o=i-a,s=r[a===0?a:a-1],c=r[a],l=r[a>r.length-2?r.length-1:a+1],u=r[a>r.length-3?r.length-1:a+2];return n.set(En(o,s.x,c.x,l.x,u.x),En(o,s.y,c.y,l.y,u.y)),n}copy(e){super.copy(e),this.points=[];for(let t=0,n=e.points.length;t<n;t++){let n=e.points[t];this.points.push(n.clone())}return this}toJSON(){let e=super.toJSON();e.points=[];for(let t=0,n=this.points.length;t<n;t++){let n=this.points[t];e.points.push(n.toArray())}return e}fromJSON(e){super.fromJSON(e),this.points=[];for(let t=0,n=e.points.length;t<n;t++){let n=e.points[t];this.points.push(new B().fromArray(n))}return this}},Rd=Object.freeze({__proto__:null,ArcCurve:Td,CatmullRomCurve3:Ad,CubicBezierCurve:jd,CubicBezierCurve3:Md,EllipseCurve:wd,LineCurve:Nd,LineCurve3:Pd,QuadraticBezierCurve:Fd,QuadraticBezierCurve3:Id,SplineCurve:Ld}),zd=class extends Cd{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 n=e.isVector2===!0?`LineCurve`:`LineCurve3`;this.curves.push(new Rd[n](t,e))}return this}getPoint(e,t){let n=e*this.getLength(),r=this.getCurveLengths(),i=0;for(;i<r.length;){if(r[i]>=n){let e=r[i]-n,a=this.curves[i],o=a.getLength(),s=o===0?0:1-e/o;return a.getPointAt(s,t)}i++}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 n=0,r=this.curves.length;n<r;n++)t+=this.curves[n].getLength(),e.push(t);return this.cacheLengths=e,e}getSpacedPoints(e=40){let t=[];for(let n=0;n<=e;n++)t.push(this.getPoint(n/e));return this.autoClose&&t.push(t[0]),t}getPoints(e=12){let t=[],n;for(let r=0,i=this.curves;r<i.length;r++){let a=i[r],o=a.isEllipseCurve?e*2:a.isLineCurve||a.isLineCurve3?1:a.isSplineCurve?e*a.points.length:e,s=a.getPoints(o);for(let e=0;e<s.length;e++){let r=s[e];n&&n.equals(r)||(t.push(r),n=r)}}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,n=e.curves.length;t<n;t++){let n=e.curves[t];this.curves.push(n.clone())}return this.autoClose=e.autoClose,this}toJSON(){let e=super.toJSON();e.autoClose=this.autoClose,e.curves=[];for(let t=0,n=this.curves.length;t<n;t++){let n=this.curves[t];e.curves.push(n.toJSON())}return e}fromJSON(e){super.fromJSON(e),this.autoClose=e.autoClose,this.curves=[];for(let t=0,n=e.curves.length;t<n;t++){let n=e.curves[t];this.curves.push(new Rd[n.type]().fromJSON(n))}return this}},Bd=class extends zd{constructor(e){super(),this.type=`Path`,this.currentPoint=new B,e&&this.setFromPoints(e)}setFromPoints(e){this.moveTo(e[0].x,e[0].y);for(let t=1,n=e.length;t<n;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 n=new Nd(this.currentPoint.clone(),new B(e,t));return this.curves.push(n),this.currentPoint.set(e,t),this}quadraticCurveTo(e,t,n,r){let i=new Fd(this.currentPoint.clone(),new B(e,t),new B(n,r));return this.curves.push(i),this.currentPoint.set(n,r),this}bezierCurveTo(e,t,n,r,i,a){let o=new jd(this.currentPoint.clone(),new B(e,t),new B(n,r),new B(i,a));return this.curves.push(o),this.currentPoint.set(i,a),this}splineThru(e){let t=[this.currentPoint.clone()].concat(e),n=new Ld(t);return this.curves.push(n),this.currentPoint.copy(e[e.length-1]),this}arc(e,t,n,r,i,a){let o=this.currentPoint.x,s=this.currentPoint.y;return this.absarc(e+o,t+s,n,r,i,a),this}absarc(e,t,n,r,i,a){return this.absellipse(e,t,n,n,r,i,a),this}ellipse(e,t,n,r,i,a,o,s){let c=this.currentPoint.x,l=this.currentPoint.y;return this.absellipse(e+c,t+l,n,r,i,a,o,s),this}absellipse(e,t,n,r,i,a,o,s){let c=new wd(e,t,n,r,i,a,o,s);if(this.curves.length>0){let e=c.getPoint(0);e.equals(this.currentPoint)||this.lineTo(e.x,e.y)}this.curves.push(c);let l=c.getPoint(1);return this.currentPoint.copy(l),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}},Vd=class e extends q{constructor(e=[new B(0,-.5),new B(.5,0),new B(0,.5)],t=12,n=0,r=Math.PI*2){super(),this.type=`LatheGeometry`,this.parameters={points:e,segments:t,phiStart:n,phiLength:r},t=Math.floor(t),r=s(r,0,Math.PI*2);let i=[],a=[],o=[],c=[],l=[],u=1/t,d=new H,f=new B,p=new H,m=new H,h=new H,g=0,_=0;for(let t=0;t<=e.length-1;t++)switch(t){case 0:g=e[t+1].x-e[t].x,_=e[t+1].y-e[t].y,p.x=_*1,p.y=-g,p.z=_*0,h.copy(p),p.normalize(),c.push(p.x,p.y,p.z);break;case e.length-1:c.push(h.x,h.y,h.z);break;default:g=e[t+1].x-e[t].x,_=e[t+1].y-e[t].y,p.x=_*1,p.y=-g,p.z=_*0,m.copy(p),p.x+=h.x,p.y+=h.y,p.z+=h.z,p.normalize(),c.push(p.x,p.y,p.z),h.copy(m)}for(let i=0;i<=t;i++){let s=n+i*u*r,p=Math.sin(s),m=Math.cos(s);for(let n=0;n<=e.length-1;n++){d.x=e[n].x*p,d.y=e[n].y,d.z=e[n].x*m,a.push(d.x,d.y,d.z),f.x=i/t,f.y=n/(e.length-1),o.push(f.x,f.y);let r=c[3*n+0]*p,s=c[3*n+1],u=c[3*n+0]*m;l.push(r,s,u)}}for(let n=0;n<t;n++)for(let t=0;t<e.length-1;t++){let r=t+n*e.length,a=r,o=r+e.length,s=r+e.length+1,c=r+1;i.push(a,o,c),i.push(s,c,o)}this.setIndex(i),this.setAttribute(`position`,new K(a,3)),this.setAttribute(`uv`,new K(o,2)),this.setAttribute(`normal`,new K(l,3))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.points,t.segments,t.phiStart,t.phiLength)}},Hd=class e extends Vd{constructor(e=1,t=1,n=4,r=8){let i=new Bd;i.absarc(0,-t/2,e,Math.PI*1.5,0),i.absarc(0,t/2,e,0,Math.PI*.5),super(i.getPoints(n),r),this.type=`CapsuleGeometry`,this.parameters={radius:e,length:t,capSegments:n,radialSegments:r}}static fromJSON(t){return new e(t.radius,t.length,t.capSegments,t.radialSegments)}},Ud=class e extends q{constructor(e=1,t=32,n=0,r=Math.PI*2){super(),this.type=`CircleGeometry`,this.parameters={radius:e,segments:t,thetaStart:n,thetaLength:r},t=Math.max(3,t);let i=[],a=[],o=[],s=[],c=new H,l=new B;a.push(0,0,0),o.push(0,0,1),s.push(.5,.5);for(let i=0,u=3;i<=t;i++,u+=3){let d=n+i/t*r;c.x=e*Math.cos(d),c.y=e*Math.sin(d),a.push(c.x,c.y,c.z),o.push(0,0,1),l.x=(a[u]/e+1)/2,l.y=(a[u+1]/e+1)/2,s.push(l.x,l.y)}for(let e=1;e<=t;e++)i.push(e,e+1,0);this.setIndex(i),this.setAttribute(`position`,new K(a,3)),this.setAttribute(`normal`,new K(o,3)),this.setAttribute(`uv`,new K(s,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.radius,t.segments,t.thetaStart,t.thetaLength)}},Wd=class e extends q{constructor(e=1,t=1,n=1,r=32,i=1,a=!1,o=0,s=Math.PI*2){super(),this.type=`CylinderGeometry`,this.parameters={radiusTop:e,radiusBottom:t,height:n,radialSegments:r,heightSegments:i,openEnded:a,thetaStart:o,thetaLength:s};let c=this;r=Math.floor(r),i=Math.floor(i);let l=[],u=[],d=[],f=[],p=0,m=[],h=n/2,g=0;_(),a===!1&&(e>0&&v(!0),t>0&&v(!1)),this.setIndex(l),this.setAttribute(`position`,new K(u,3)),this.setAttribute(`normal`,new K(d,3)),this.setAttribute(`uv`,new K(f,2));function _(){let a=new H,_=new H,v=0,y=(t-e)/n;for(let c=0;c<=i;c++){let l=[],g=c/i,v=g*(t-e)+e;for(let e=0;e<=r;e++){let t=e/r,i=t*s+o,c=Math.sin(i),m=Math.cos(i);_.x=v*c,_.y=-g*n+h,_.z=v*m,u.push(_.x,_.y,_.z),a.set(c,y,m).normalize(),d.push(a.x,a.y,a.z),f.push(t,1-g),l.push(p++)}m.push(l)}for(let n=0;n<r;n++)for(let r=0;r<i;r++){let i=m[r][n],a=m[r+1][n],o=m[r+1][n+1],s=m[r][n+1];e>0&&(l.push(i,a,s),v+=3),t>0&&(l.push(a,o,s),v+=3)}c.addGroup(g,v,0),g+=v}function v(n){let i=p,a=new B,m=new H,_=0,v=n===!0?e:t,y=n===!0?1:-1;for(let e=1;e<=r;e++)u.push(0,h*y,0),d.push(0,y,0),f.push(.5,.5),p++;let b=p;for(let e=0;e<=r;e++){let t=e/r*s+o,n=Math.cos(t),i=Math.sin(t);m.x=v*i,m.y=h*y,m.z=v*n,u.push(m.x,m.y,m.z),d.push(0,y,0),a.x=n*.5+.5,a.y=i*.5*y+.5,f.push(a.x,a.y),p++}for(let e=0;e<r;e++){let t=i+e,r=b+e;n===!0?l.push(r,r+1,t):l.push(r+1,r,t),_+=3}c.addGroup(g,_,n===!0?1:2),g+=_}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.radiusTop,t.radiusBottom,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}},Gd=class e extends Wd{constructor(e=1,t=1,n=32,r=1,i=!1,a=0,o=Math.PI*2){super(0,e,t,n,r,i,a,o),this.type=`ConeGeometry`,this.parameters={radius:e,height:t,radialSegments:n,heightSegments:r,openEnded:i,thetaStart:a,thetaLength:o}}static fromJSON(t){return new e(t.radius,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}},Kd=class e extends q{constructor(e=[],t=[],n=1,r=0){super(),this.type=`PolyhedronGeometry`,this.parameters={vertices:e,indices:t,radius:n,detail:r};let i=[],a=[];o(r),c(n),l(),this.setAttribute(`position`,new K(i,3)),this.setAttribute(`normal`,new K(i.slice(),3)),this.setAttribute(`uv`,new K(a,2)),r===0?this.computeVertexNormals():this.normalizeNormals();function o(e){let n=new H,r=new H,i=new H;for(let a=0;a<t.length;a+=3)f(t[a+0],n),f(t[a+1],r),f(t[a+2],i),s(n,r,i,e)}function s(e,t,n,r){let i=r+1,a=[];for(let r=0;r<=i;r++){a[r]=[];let o=e.clone().lerp(n,r/i),s=t.clone().lerp(n,r/i),c=i-r;for(let e=0;e<=c;e++)e===0&&r===i?a[r][e]=o:a[r][e]=o.clone().lerp(s,e/c)}for(let e=0;e<i;e++)for(let t=0;t<2*(i-e)-1;t++){let n=Math.floor(t/2);t%2==0?(d(a[e][n+1]),d(a[e+1][n]),d(a[e][n])):(d(a[e][n+1]),d(a[e+1][n+1]),d(a[e+1][n]))}}function c(e){let t=new H;for(let n=0;n<i.length;n+=3)t.x=i[n+0],t.y=i[n+1],t.z=i[n+2],t.normalize().multiplyScalar(e),i[n+0]=t.x,i[n+1]=t.y,i[n+2]=t.z}function l(){let e=new H;for(let t=0;t<i.length;t+=3){e.x=i[t+0],e.y=i[t+1],e.z=i[t+2];let n=h(e)/2/Math.PI+.5,r=g(e)/Math.PI+.5;a.push(n,1-r)}p(),u()}function u(){for(let e=0;e<a.length;e+=6){let t=a[e+0],n=a[e+2],r=a[e+4];Math.max(t,n,r)>.9&&Math.min(t,n,r)<.1&&(t<.2&&(a[e+0]+=1),n<.2&&(a[e+2]+=1),r<.2&&(a[e+4]+=1))}}function d(e){i.push(e.x,e.y,e.z)}function f(t,n){let r=t*3;n.x=e[r+0],n.y=e[r+1],n.z=e[r+2]}function p(){let e=new H,t=new H,n=new H,r=new H,o=new B,s=new B,c=new B;for(let l=0,u=0;l<i.length;l+=9,u+=6){e.set(i[l+0],i[l+1],i[l+2]),t.set(i[l+3],i[l+4],i[l+5]),n.set(i[l+6],i[l+7],i[l+8]),o.set(a[u+0],a[u+1]),s.set(a[u+2],a[u+3]),c.set(a[u+4],a[u+5]),r.copy(e).add(t).add(n).divideScalar(3);let d=h(r);m(o,u+0,e,d),m(s,u+2,t,d),m(c,u+4,n,d)}}function m(e,t,n,r){r<0&&e.x===1&&(a[t]=e.x-1),n.x===0&&n.z===0&&(a[t]=r/2/Math.PI+.5)}function h(e){return Math.atan2(e.z,-e.x)}function g(e){return Math.atan2(-e.y,Math.sqrt(e.x*e.x+e.z*e.z))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.vertices,t.indices,t.radius,t.details)}},qd=class e extends Kd{constructor(e=1,t=0){let n=(1+Math.sqrt(5))/2,r=1/n,i=[-1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,0,-r,-n,0,-r,n,0,r,-n,0,r,n,-r,-n,0,-r,n,0,r,-n,0,r,n,0,-n,0,-r,n,0,-r,-n,0,r,n,0,r];super(i,[3,11,7,3,7,15,3,15,13,7,19,17,7,17,6,7,6,15,17,4,8,17,8,10,17,10,6,8,0,16,8,16,2,8,2,10,0,12,1,0,1,18,0,18,16,6,10,2,6,2,13,6,13,15,2,16,18,2,18,3,2,3,13,18,1,9,18,9,11,18,11,3,4,14,12,4,12,0,4,0,8,11,9,5,11,5,19,11,19,7,19,5,14,19,14,4,19,4,17,1,12,14,1,14,5,1,5,9],e,t),this.type=`DodecahedronGeometry`,this.parameters={radius:e,detail:t}}static fromJSON(t){return new e(t.radius,t.detail)}},Jd=new H,Yd=new H,Xd=new H,Zd=new Ds,Qd=class extends q{constructor(e=null,t=1){if(super(),this.type=`EdgesGeometry`,this.parameters={geometry:e,thresholdAngle:t},e!==null){let n=1e4,r=Math.cos(Va*t),i=e.getIndex(),a=e.getAttribute(`position`),o=i?i.count:a.count,s=[0,0,0],c=[`a`,`b`,`c`],l=[,,,],u={},d=[];for(let e=0;e<o;e+=3){i?(s[0]=i.getX(e),s[1]=i.getX(e+1),s[2]=i.getX(e+2)):(s[0]=e,s[1]=e+1,s[2]=e+2);let{a:t,b:o,c:f}=Zd;if(t.fromBufferAttribute(a,s[0]),o.fromBufferAttribute(a,s[1]),f.fromBufferAttribute(a,s[2]),Zd.getNormal(Xd),l[0]=`${Math.round(t.x*n)},${Math.round(t.y*n)},${Math.round(t.z*n)}`,l[1]=`${Math.round(o.x*n)},${Math.round(o.y*n)},${Math.round(o.z*n)}`,l[2]=`${Math.round(f.x*n)},${Math.round(f.y*n)},${Math.round(f.z*n)}`,l[0]!==l[1]&&l[1]!==l[2]&&l[2]!==l[0])for(let e=0;e<3;e++){let t=(e+1)%3,n=l[e],i=l[t],a=Zd[c[e]],o=Zd[c[t]],f=`${n}_${i}`,p=`${i}_${n}`;p in u&&u[p]?(Xd.dot(u[p].normal)<=r&&(d.push(a.x,a.y,a.z),d.push(o.x,o.y,o.z)),u[p]=null):f in u||(u[f]={index0:s[e],index1:s[t],normal:Xd.clone()})}}for(let e in u)if(u[e]){let{index0:t,index1:n}=u[e];Jd.fromBufferAttribute(a,t),Yd.fromBufferAttribute(a,n),d.push(Jd.x,Jd.y,Jd.z),d.push(Yd.x,Yd.y,Yd.z)}this.setAttribute(`position`,new K(d,3))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}},$d=class extends Bd{constructor(e){super(e),this.uuid=o(),this.type=`Shape`,this.holes=[]}getPointsHoles(e){let t=[];for(let n=0,r=this.holes.length;n<r;n++)t[n]=this.holes[n].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,n=e.holes.length;t<n;t++){let n=e.holes[t];this.holes.push(n.clone())}return this}toJSON(){let e=super.toJSON();e.uuid=this.uuid,e.holes=[];for(let t=0,n=this.holes.length;t<n;t++){let n=this.holes[t];e.holes.push(n.toJSON())}return e}fromJSON(e){super.fromJSON(e),this.uuid=e.uuid,this.holes=[];for(let t=0,n=e.holes.length;t<n;t++){let n=e.holes[t];this.holes.push(new Bd().fromJSON(n))}return this}},ef={triangulate:function(e,t,n=2){let r=t&&t.length,i=r?t[0]*n:e.length,a=In(e,0,i,n,!0),o=[];if(!a||a.next===a.prev)return o;let s,c,l,u,d,f,p;if(r&&(a=Un(e,t,a,n)),e.length>80*n){s=l=e[0],c=u=e[1];for(let t=n;t<i;t+=n)d=e[t],f=e[t+1],d<s&&(s=d),f<c&&(c=f),d>l&&(l=d),f>u&&(u=f);p=Math.max(l-s,u-c),p=p===0?0:32767/p}return Rn(a,o,n,s,c,p,0),o}},tf=class e{static area(e){let t=e.length,n=0;for(let r=t-1,i=0;i<t;r=i++)n+=e[r].x*e[i].y-e[i].x*e[r].y;return n*.5}static isClockWise(t){return e.area(t)<0}static triangulateShape(e,t){let n=[],r=[],i=[];pr(e),mr(n,e);let a=e.length;t.forEach(pr);for(let e=0;e<t.length;e++)r.push(a),a+=t[e].length,mr(n,t[e]);let o=ef.triangulate(n,r);for(let e=0;e<o.length;e+=3)i.push(o.slice(e,e+3));return i}},nf=class e extends q{constructor(e=new $d([new B(.5,.5),new B(-.5,.5),new B(-.5,-.5),new B(.5,-.5)]),t={}){super(),this.type=`ExtrudeGeometry`,this.parameters={shapes:e,options:t},e=Array.isArray(e)?e:[e];let n=this,r=[],i=[];for(let t=0,n=e.length;t<n;t++){let n=e[t];a(n)}this.setAttribute(`position`,new K(r,3)),this.setAttribute(`uv`,new K(i,2)),this.computeVertexNormals();function a(e){let a=[],o=t.curveSegments===void 0?12:t.curveSegments,s=t.steps===void 0?1:t.steps,c=t.depth===void 0?1:t.depth,l=t.bevelEnabled===void 0||t.bevelEnabled,u=t.bevelThickness===void 0?.2:t.bevelThickness,d=t.bevelSize===void 0?u-.1:t.bevelSize,f=t.bevelOffset===void 0?0:t.bevelOffset,p=t.bevelSegments===void 0?3:t.bevelSegments,m=t.extrudePath,h=t.UVGenerator===void 0?rf:t.UVGenerator,g,_=!1,v,y,b,x;m&&(g=m.getSpacedPoints(s),_=!0,l=!1,v=m.computeFrenetFrames(s,!1),y=new H,b=new H,x=new H),l||(p=0,u=0,d=0,f=0);let S=e.extractPoints(o),C=S.shape,w=S.holes;if(!tf.isClockWise(C)){C=C.reverse();for(let e=0,t=w.length;e<t;e++){let t=w[e];tf.isClockWise(t)&&(w[e]=t.reverse())}}let T=tf.triangulateShape(C,w),E=C;for(let e=0,t=w.length;e<t;e++){let t=w[e];C=C.concat(t)}function D(e,t,n){return t||console.error(`THREE.ExtrudeGeometry: vec does not exist`),e.clone().addScaledVector(t,n)}let O=C.length,k=T.length;function A(e,t,n){let r,i,a,o=e.x-t.x,s=e.y-t.y,c=n.x-e.x,l=n.y-e.y,u=o*o+s*s,d=o*l-s*c;if(Math.abs(d)>2**-52){let d=Math.sqrt(u),f=Math.sqrt(c*c+l*l),p=t.x-s/d,m=t.y+o/d,h=n.x-l/f,g=n.y+c/f,_=((h-p)*l-(g-m)*c)/(o*l-s*c);r=p+o*_-e.x,i=m+s*_-e.y;let v=r*r+i*i;if(v<=2)return new B(r,i);a=Math.sqrt(v/2)}else{let e=!1;o>2**-52?c>2**-52&&(e=!0):o<-(2**-52)?c<-(2**-52)&&(e=!0):Math.sign(s)===Math.sign(l)&&(e=!0),e?(r=-s,i=o,a=Math.sqrt(u)):(r=o,i=s,a=Math.sqrt(u/2))}return new B(r/a,i/a)}let j=[];for(let e=0,t=E.length,n=t-1,r=e+1;e<t;e++,n++,r++)n===t&&(n=0),r===t&&(r=0),j[e]=A(E[e],E[n],E[r]);let ee=[],te,ne=j.concat();for(let e=0,t=w.length;e<t;e++){let t=w[e];te=[];for(let e=0,n=t.length,r=n-1,i=e+1;e<n;e++,r++,i++)r===n&&(r=0),i===n&&(i=0),te[e]=A(t[e],t[r],t[i]);ee.push(te),ne=ne.concat(te)}for(let e=0;e<p;e++){let t=e/p,n=u*Math.cos(t*Math.PI/2),r=d*Math.sin(t*Math.PI/2)+f;for(let e=0,t=E.length;e<t;e++){let t=D(E[e],j[e],r);se(t.x,t.y,-n)}for(let e=0,t=w.length;e<t;e++){let t=w[e];te=ee[e];for(let e=0,i=t.length;e<i;e++){let i=D(t[e],te[e],r);se(i.x,i.y,-n)}}}let re=d+f;for(let e=0;e<O;e++){let t=l?D(C[e],ne[e],re):C[e];_?(b.copy(v.normals[0]).multiplyScalar(t.x),y.copy(v.binormals[0]).multiplyScalar(t.y),x.copy(g[0]).add(b).add(y),se(x.x,x.y,x.z)):se(t.x,t.y,0)}for(let e=1;e<=s;e++)for(let t=0;t<O;t++){let n=l?D(C[t],ne[t],re):C[t];_?(b.copy(v.normals[e]).multiplyScalar(n.x),y.copy(v.binormals[e]).multiplyScalar(n.y),x.copy(g[e]).add(b).add(y),se(x.x,x.y,x.z)):se(n.x,n.y,c/s*e)}for(let e=p-1;e>=0;e--){let t=e/p,n=u*Math.cos(t*Math.PI/2),r=d*Math.sin(t*Math.PI/2)+f;for(let e=0,t=E.length;e<t;e++){let t=D(E[e],j[e],r);se(t.x,t.y,c+n)}for(let e=0,t=w.length;e<t;e++){let t=w[e];te=ee[e];for(let e=0,i=t.length;e<i;e++){let i=D(t[e],te[e],r);_?se(i.x,i.y+g[s-1].y,g[s-1].x+n):se(i.x,i.y,c+n)}}}ie(),ae();function ie(){let e=r.length/3;if(l){let e=0,t=O*e;for(let e=0;e<k;e++){let n=T[e];ce(n[2]+t,n[1]+t,n[0]+t)}e=s+p*2,t=O*e;for(let e=0;e<k;e++){let n=T[e];ce(n[0]+t,n[1]+t,n[2]+t)}}else{for(let e=0;e<k;e++){let t=T[e];ce(t[2],t[1],t[0])}for(let e=0;e<k;e++){let t=T[e];ce(t[0]+O*s,t[1]+O*s,t[2]+O*s)}}n.addGroup(e,r.length/3-e,0)}function ae(){let e=r.length/3,t=0;oe(E,t),t+=E.length;for(let e=0,n=w.length;e<n;e++){let n=w[e];oe(n,t),t+=n.length}n.addGroup(e,r.length/3-e,1)}function oe(e,t){let n=e.length;for(;--n>=0;){let r=n,i=n-1;i<0&&(i=e.length-1);for(let e=0,n=s+p*2;e<n;e++){let n=O*e,a=O*(e+1);le(t+r+n,t+i+n,t+i+a,t+r+a)}}}function se(e,t,n){a.push(e),a.push(t),a.push(n)}function ce(e,t,i){M(e),M(t),M(i);let a=r.length/3,o=h.generateTopUV(n,r,a-3,a-2,a-1);N(o[0]),N(o[1]),N(o[2])}function le(e,t,i,a){M(e),M(t),M(a),M(t),M(i),M(a);let o=r.length/3,s=h.generateSideWallUV(n,r,o-6,o-3,o-2,o-1);N(s[0]),N(s[1]),N(s[3]),N(s[1]),N(s[2]),N(s[3])}function M(e){r.push(a[e*3+0]),r.push(a[e*3+1]),r.push(a[e*3+2])}function N(e){i.push(e.x),i.push(e.y)}}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){let e=super.toJSON(),t=this.parameters.shapes,n=this.parameters.options;return hr(t,n,e)}static fromJSON(t,n){let r=[];for(let e=0,i=t.shapes.length;e<i;e++){let i=n[t.shapes[e]];r.push(i)}let i=t.options.extrudePath;return i!==void 0&&(t.options.extrudePath=new Rd[i.type]().fromJSON(i)),new e(r,t.options)}},rf={generateTopUV:function(e,t,n,r,i){let a=t[n*3],o=t[n*3+1],s=t[r*3],c=t[r*3+1],l=t[i*3],u=t[i*3+1];return[new B(a,o),new B(s,c),new B(l,u)]},generateSideWallUV:function(e,t,n,r,i,a){let o=t[n*3],s=t[n*3+1],c=t[n*3+2],l=t[r*3],u=t[r*3+1],d=t[r*3+2],f=t[i*3],p=t[i*3+1],m=t[i*3+2],h=t[a*3],g=t[a*3+1],_=t[a*3+2];return Math.abs(s-u)<Math.abs(o-l)?[new B(o,1-c),new B(l,1-d),new B(f,1-m),new B(h,1-_)]:[new B(s,1-c),new B(u,1-d),new B(p,1-m),new B(g,1-_)]}},af=class e extends Kd{constructor(e=1,t=0){let n=(1+Math.sqrt(5))/2,r=[-1,n,0,1,n,0,-1,-n,0,1,-n,0,0,-1,n,0,1,n,0,-1,-n,0,1,-n,n,0,-1,n,0,1,-n,0,-1,-n,0,1];super(r,[0,11,5,0,5,1,0,1,7,0,7,10,0,10,11,1,5,9,5,11,4,11,10,2,10,7,6,7,1,8,3,9,4,3,4,2,3,2,6,3,6,8,3,8,9,4,9,5,2,4,11,6,2,10,8,6,7,9,8,1],e,t),this.type=`IcosahedronGeometry`,this.parameters={radius:e,detail:t}}static fromJSON(t){return new e(t.radius,t.detail)}},of=class e extends Kd{constructor(e=1,t=0){super([1,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1],[0,2,4,0,4,3,0,3,5,0,5,2,1,2,5,1,5,3,1,3,4,1,4,2],e,t),this.type=`OctahedronGeometry`,this.parameters={radius:e,detail:t}}static fromJSON(t){return new e(t.radius,t.detail)}},sf=class e extends q{constructor(e=.5,t=1,n=32,r=1,i=0,a=Math.PI*2){super(),this.type=`RingGeometry`,this.parameters={innerRadius:e,outerRadius:t,thetaSegments:n,phiSegments:r,thetaStart:i,thetaLength:a},n=Math.max(3,n),r=Math.max(1,r);let o=[],s=[],c=[],l=[],u=e,d=(t-e)/r,f=new H,p=new B;for(let e=0;e<=r;e++){for(let e=0;e<=n;e++){let r=i+e/n*a;f.x=u*Math.cos(r),f.y=u*Math.sin(r),s.push(f.x,f.y,f.z),c.push(0,0,1),p.x=(f.x/t+1)/2,p.y=(f.y/t+1)/2,l.push(p.x,p.y)}u+=d}for(let e=0;e<r;e++){let t=e*(n+1);for(let e=0;e<n;e++){let r=e+t,i=r,a=r+n+1,s=r+n+2,c=r+1;o.push(i,a,c),o.push(a,s,c)}}this.setIndex(o),this.setAttribute(`position`,new K(s,3)),this.setAttribute(`normal`,new K(c,3)),this.setAttribute(`uv`,new K(l,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.innerRadius,t.outerRadius,t.thetaSegments,t.phiSegments,t.thetaStart,t.thetaLength)}},cf=class e extends q{constructor(e=new $d([new B(0,.5),new B(-.5,-.5),new B(.5,-.5)]),t=12){super(),this.type=`ShapeGeometry`,this.parameters={shapes:e,curveSegments:t};let n=[],r=[],i=[],a=[],o=0,s=0;if(Array.isArray(e)===!1)c(e);else for(let t=0;t<e.length;t++)c(e[t]),this.addGroup(o,s,t),o+=s,s=0;this.setIndex(n),this.setAttribute(`position`,new K(r,3)),this.setAttribute(`normal`,new K(i,3)),this.setAttribute(`uv`,new K(a,2));function c(e){let o=r.length/3,c=e.extractPoints(t),l=c.shape,u=c.holes;tf.isClockWise(l)===!1&&(l=l.reverse());for(let e=0,t=u.length;e<t;e++){let t=u[e];tf.isClockWise(t)===!0&&(u[e]=t.reverse())}let d=tf.triangulateShape(l,u);for(let e=0,t=u.length;e<t;e++){let t=u[e];l=l.concat(t)}for(let e=0,t=l.length;e<t;e++){let t=l[e];r.push(t.x,t.y,0),i.push(0,0,1),a.push(t.x,t.y)}for(let e=0,t=d.length;e<t;e++){let t=d[e],r=t[0]+o,i=t[1]+o,a=t[2]+o;n.push(r,i,a),s+=3}}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){let e=super.toJSON(),t=this.parameters.shapes;return gr(t,e)}static fromJSON(t,n){let r=[];for(let e=0,i=t.shapes.length;e<i;e++){let i=n[t.shapes[e]];r.push(i)}return new e(r,t.curveSegments)}},lf=class e extends q{constructor(e=1,t=32,n=16,r=0,i=Math.PI*2,a=0,o=Math.PI){super(),this.type=`SphereGeometry`,this.parameters={radius:e,widthSegments:t,heightSegments:n,phiStart:r,phiLength:i,thetaStart:a,thetaLength:o},t=Math.max(3,Math.floor(t)),n=Math.max(2,Math.floor(n));let s=Math.min(a+o,Math.PI),c=0,l=[],u=new H,d=new H,f=[],p=[],m=[],h=[];for(let f=0;f<=n;f++){let g=[],_=f/n,v=0;f===0&&a===0?v=.5/t:f===n&&s===Math.PI&&(v=-.5/t);for(let n=0;n<=t;n++){let s=n/t;u.x=-e*Math.cos(r+s*i)*Math.sin(a+_*o),u.y=e*Math.cos(a+_*o),u.z=e*Math.sin(r+s*i)*Math.sin(a+_*o),p.push(u.x,u.y,u.z),d.copy(u).normalize(),m.push(d.x,d.y,d.z),h.push(s+v,1-_),g.push(c++)}l.push(g)}for(let e=0;e<n;e++)for(let r=0;r<t;r++){let t=l[e][r+1],i=l[e][r],o=l[e+1][r],c=l[e+1][r+1];(e!==0||a>0)&&f.push(t,i,c),(e!==n-1||s<Math.PI)&&f.push(i,o,c)}this.setIndex(f),this.setAttribute(`position`,new K(p,3)),this.setAttribute(`normal`,new K(m,3)),this.setAttribute(`uv`,new K(h,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.radius,t.widthSegments,t.heightSegments,t.phiStart,t.phiLength,t.thetaStart,t.thetaLength)}},uf=class e extends Kd{constructor(e=1,t=0){super([1,1,1,-1,-1,1,-1,1,-1,1,-1,-1],[2,1,0,0,3,2,1,3,0,2,3,1],e,t),this.type=`TetrahedronGeometry`,this.parameters={radius:e,detail:t}}static fromJSON(t){return new e(t.radius,t.detail)}},df=class e extends q{constructor(e=1,t=.4,n=12,r=48,i=Math.PI*2){super(),this.type=`TorusGeometry`,this.parameters={radius:e,tube:t,radialSegments:n,tubularSegments:r,arc:i},n=Math.floor(n),r=Math.floor(r);let a=[],o=[],s=[],c=[],l=new H,u=new H,d=new H;for(let a=0;a<=n;a++)for(let f=0;f<=r;f++){let p=f/r*i,m=a/n*Math.PI*2;u.x=(e+t*Math.cos(m))*Math.cos(p),u.y=(e+t*Math.cos(m))*Math.sin(p),u.z=t*Math.sin(m),o.push(u.x,u.y,u.z),l.x=e*Math.cos(p),l.y=e*Math.sin(p),d.subVectors(u,l).normalize(),s.push(d.x,d.y,d.z),c.push(f/r),c.push(a/n)}for(let e=1;e<=n;e++)for(let t=1;t<=r;t++){let n=(r+1)*e+t-1,i=(r+1)*(e-1)+t-1,o=(r+1)*(e-1)+t,s=(r+1)*e+t;a.push(n,i,s),a.push(i,o,s)}this.setIndex(a),this.setAttribute(`position`,new K(o,3)),this.setAttribute(`normal`,new K(s,3)),this.setAttribute(`uv`,new K(c,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.radius,t.tube,t.radialSegments,t.tubularSegments,t.arc)}},ff=class e extends q{constructor(e=1,t=.4,n=64,r=8,i=2,a=3){super(),this.type=`TorusKnotGeometry`,this.parameters={radius:e,tube:t,tubularSegments:n,radialSegments:r,p:i,q:a},n=Math.floor(n),r=Math.floor(r);let o=[],s=[],c=[],l=[],u=new H,d=new H,f=new H,p=new H,m=new H,h=new H,g=new H;for(let o=0;o<=n;++o){let v=o/n*i*Math.PI*2;_(v,i,a,e,f),_(v+.01,i,a,e,p),h.subVectors(p,f),g.addVectors(p,f),m.crossVectors(h,g),g.crossVectors(m,h),m.normalize(),g.normalize();for(let e=0;e<=r;++e){let i=e/r*Math.PI*2,a=-t*Math.cos(i),p=t*Math.sin(i);u.x=f.x+(a*g.x+p*m.x),u.y=f.y+(a*g.y+p*m.y),u.z=f.z+(a*g.z+p*m.z),s.push(u.x,u.y,u.z),d.subVectors(u,f).normalize(),c.push(d.x,d.y,d.z),l.push(o/n),l.push(e/r)}}for(let e=1;e<=n;e++)for(let t=1;t<=r;t++){let n=(r+1)*(e-1)+(t-1),i=(r+1)*e+(t-1),a=(r+1)*e+t,s=(r+1)*(e-1)+t;o.push(n,i,s),o.push(i,a,s)}this.setIndex(o),this.setAttribute(`position`,new K(s,3)),this.setAttribute(`normal`,new K(c,3)),this.setAttribute(`uv`,new K(l,2));function _(e,t,n,r,i){let a=Math.cos(e),o=Math.sin(e),s=n/t*e,c=Math.cos(s);i.x=r*(2+c)*.5*a,i.y=r*(2+c)*o*.5,i.z=r*Math.sin(s)*.5}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.radius,t.tube,t.tubularSegments,t.radialSegments,t.p,t.q)}},pf=class e extends q{constructor(e=new Id(new H(-1,-1,0),new H(-1,1,0),new H(1,1,0)),t=64,n=1,r=8,i=!1){super(),this.type=`TubeGeometry`,this.parameters={path:e,tubularSegments:t,radius:n,radialSegments:r,closed:i};let a=e.computeFrenetFrames(t,i);this.tangents=a.tangents,this.normals=a.normals,this.binormals=a.binormals;let o=new H,s=new H,c=new B,l=new H,u=[],d=[],f=[],p=[];m(),this.setIndex(p),this.setAttribute(`position`,new K(u,3)),this.setAttribute(`normal`,new K(d,3)),this.setAttribute(`uv`,new K(f,2));function m(){for(let e=0;e<t;e++)h(e);h(i===!1?t:0),_(),g()}function h(i){l=e.getPointAt(i/t,l);let c=a.normals[i],f=a.binormals[i];for(let e=0;e<=r;e++){let t=e/r*Math.PI*2,i=Math.sin(t),a=-Math.cos(t);s.x=a*c.x+i*f.x,s.y=a*c.y+i*f.y,s.z=a*c.z+i*f.z,s.normalize(),d.push(s.x,s.y,s.z),o.x=l.x+n*s.x,o.y=l.y+n*s.y,o.z=l.z+n*s.z,u.push(o.x,o.y,o.z)}}function g(){for(let e=1;e<=t;e++)for(let t=1;t<=r;t++){let n=(r+1)*(e-1)+(t-1),i=(r+1)*e+(t-1),a=(r+1)*e+t,o=(r+1)*(e-1)+t;p.push(n,i,o),p.push(i,a,o)}}function _(){for(let e=0;e<=t;e++)for(let n=0;n<=r;n++)c.x=e/t,c.y=n/r,f.push(c.x,c.y)}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){let e=super.toJSON();return e.path=this.parameters.path.toJSON(),e}static fromJSON(t){return new e(new Rd[t.path.type]().fromJSON(t.path),t.tubularSegments,t.radius,t.radialSegments,t.closed)}},mf=class extends q{constructor(e=null){if(super(),this.type=`WireframeGeometry`,this.parameters={geometry:e},e!==null){let t=[],n=new Set,r=new H,i=new H;if(e.index!==null){let a=e.attributes.position,o=e.index,s=e.groups;s.length===0&&(s=[{start:0,count:o.count,materialIndex:0}]);for(let e=0,c=s.length;e<c;++e){let c=s[e],l=c.start,u=c.count;for(let e=l,s=l+u;e<s;e+=3)for(let s=0;s<3;s++){let c=o.getX(e+s),l=o.getX(e+(s+1)%3);r.fromBufferAttribute(a,c),i.fromBufferAttribute(a,l),_r(r,i,n)===!0&&(t.push(r.x,r.y,r.z),t.push(i.x,i.y,i.z))}}}else{let a=e.attributes.position;for(let e=0,o=a.count/3;e<o;e++)for(let o=0;o<3;o++){let s=3*e+o,c=3*e+(o+1)%3;r.fromBufferAttribute(a,s),i.fromBufferAttribute(a,c),_r(r,i,n)===!0&&(t.push(r.x,r.y,r.z),t.push(i.x,i.y,i.z))}}this.setAttribute(`position`,new K(t,3))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}},hf=Object.freeze({__proto__:null,BoxGeometry:fc,CapsuleGeometry:Hd,CircleGeometry:Ud,ConeGeometry:Gd,CylinderGeometry:Wd,DodecahedronGeometry:qd,EdgesGeometry:Qd,ExtrudeGeometry:nf,IcosahedronGeometry:af,LatheGeometry:Vd,OctahedronGeometry:of,PlaneGeometry:Pc,PolyhedronGeometry:Kd,RingGeometry:sf,ShapeGeometry:cf,SphereGeometry:lf,TetrahedronGeometry:uf,TorusGeometry:df,TorusKnotGeometry:ff,TubeGeometry:pf,WireframeGeometry:mf}),gf=class extends Ns{constructor(e){super(),this.isShadowMaterial=!0,this.type=`ShadowMaterial`,this.color=new W(0),this.transparent=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.fog=e.fog,this}},_f=class extends gc{constructor(e){super(e),this.isRawShaderMaterial=!0,this.type=`RawShaderMaterial`}},vf=class extends Ns{constructor(e){super(),this.isMeshStandardMaterial=!0,this.defines={STANDARD:``},this.type=`MeshStandardMaterial`,this.color=new W(16777215),this.roughness=1,this.metalness=0,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new W(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new B(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Xo,this.envMapIntensity=1,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.defines={STANDARD:``},this.color.copy(e.color),this.roughness=e.roughness,this.metalness=e.metalness,this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.roughnessMap=e.roughnessMap,this.metalnessMap=e.metalnessMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.envMapIntensity=e.envMapIntensity,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}},yf=class extends vf{constructor(e){super(),this.isMeshPhysicalMaterial=!0,this.defines={STANDARD:``,PHYSICAL:``},this.type=`MeshPhysicalMaterial`,this.anisotropyRotation=0,this.anisotropyMap=null,this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new B(1,1),this.clearcoatNormalMap=null,this.ior=1.5,Object.defineProperty(this,"reflectivity",{get:function(){return s(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(e){this.ior=(1+.4*e)/(1-.4*e)}}),this.iridescenceMap=null,this.iridescenceIOR=1.3,this.iridescenceThicknessRange=[100,400],this.iridescenceThicknessMap=null,this.sheenColor=new W(0),this.sheenColorMap=null,this.sheenRoughness=1,this.sheenRoughnessMap=null,this.transmissionMap=null,this.thickness=0,this.thicknessMap=null,this.attenuationDistance=1/0,this.attenuationColor=new W(1,1,1),this.specularIntensity=1,this.specularIntensityMap=null,this.specularColor=new W(1,1,1),this.specularColorMap=null,this._anisotropy=0,this._clearcoat=0,this._dispersion=0,this._iridescence=0,this._sheen=0,this._transmission=0,this.setValues(e)}get anisotropy(){return this._anisotropy}set anisotropy(e){this._anisotropy>0!=e>0&&this.version++,this._anisotropy=e}get clearcoat(){return this._clearcoat}set clearcoat(e){this._clearcoat>0!=e>0&&this.version++,this._clearcoat=e}get iridescence(){return this._iridescence}set iridescence(e){this._iridescence>0!=e>0&&this.version++,this._iridescence=e}get dispersion(){return this._dispersion}set dispersion(e){this._dispersion>0!=e>0&&this.version++,this._dispersion=e}get sheen(){return this._sheen}set sheen(e){this._sheen>0!=e>0&&this.version++,this._sheen=e}get transmission(){return this._transmission}set transmission(e){this._transmission>0!=e>0&&this.version++,this._transmission=e}copy(e){return super.copy(e),this.defines={STANDARD:``,PHYSICAL:``},this.anisotropy=e.anisotropy,this.anisotropyRotation=e.anisotropyRotation,this.anisotropyMap=e.anisotropyMap,this.clearcoat=e.clearcoat,this.clearcoatMap=e.clearcoatMap,this.clearcoatRoughness=e.clearcoatRoughness,this.clearcoatRoughnessMap=e.clearcoatRoughnessMap,this.clearcoatNormalMap=e.clearcoatNormalMap,this.clearcoatNormalScale.copy(e.clearcoatNormalScale),this.dispersion=e.dispersion,this.ior=e.ior,this.iridescence=e.iridescence,this.iridescenceMap=e.iridescenceMap,this.iridescenceIOR=e.iridescenceIOR,this.iridescenceThicknessRange=[...e.iridescenceThicknessRange],this.iridescenceThicknessMap=e.iridescenceThicknessMap,this.sheen=e.sheen,this.sheenColor.copy(e.sheenColor),this.sheenColorMap=e.sheenColorMap,this.sheenRoughness=e.sheenRoughness,this.sheenRoughnessMap=e.sheenRoughnessMap,this.transmission=e.transmission,this.transmissionMap=e.transmissionMap,this.thickness=e.thickness,this.thicknessMap=e.thicknessMap,this.attenuationDistance=e.attenuationDistance,this.attenuationColor.copy(e.attenuationColor),this.specularIntensity=e.specularIntensity,this.specularIntensityMap=e.specularIntensityMap,this.specularColor.copy(e.specularColor),this.specularColorMap=e.specularColorMap,this}},bf=class extends Ns{constructor(e){super(),this.isMeshPhongMaterial=!0,this.type=`MeshPhongMaterial`,this.color=new W(16777215),this.specular=new W(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new W(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new B(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Xo,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.specular.copy(e.specular),this.shininess=e.shininess,this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}},xf=class extends Ns{constructor(e){super(),this.isMeshToonMaterial=!0,this.defines={TOON:``},this.type=`MeshToonMaterial`,this.color=new W(16777215),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new W(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new B(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.gradientMap=e.gradientMap,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.alphaMap=e.alphaMap,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}},Sf=class extends Ns{constructor(e){super(),this.isMeshNormalMaterial=!0,this.type=`MeshNormalMaterial`,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new B(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.flatShading=!1,this.setValues(e)}copy(e){return super.copy(e),this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.flatShading=e.flatShading,this}},Cf=class extends Ns{constructor(e){super(),this.isMeshLambertMaterial=!0,this.type=`MeshLambertMaterial`,this.color=new W(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new W(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new B(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Xo,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}},wf=class extends Ns{constructor(e){super(),this.isMeshMatcapMaterial=!0,this.defines={MATCAP:``},this.type=`MeshMatcapMaterial`,this.color=new W(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new B(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.defines={MATCAP:``},this.color.copy(e.color),this.matcap=e.matcap,this.map=e.map,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.alphaMap=e.alphaMap,this.flatShading=e.flatShading,this.fog=e.fog,this}},Tf=class extends Qu{constructor(e){super(),this.isLineDashedMaterial=!0,this.type=`LineDashedMaterial`,this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(e)}copy(e){return super.copy(e),this.scale=e.scale,this.dashSize=e.dashSize,this.gapSize=e.gapSize,this}},Ef={convertArray:vr,isTypedArray:yr,getKeyframeOrder:br,sortedArray:xr,flattenJSON:Sr,subclip:Cr,makeClipAdditive:wr},Df=class{constructor(e,t,n,r){this.parameterPositions=e,this._cachedIndex=0,this.resultBuffer=r===void 0?new t.constructor(n):r,this.sampleValues=t,this.valueSize=n,this.settings=null,this.DefaultSettings_={}}evaluate(e){let t=this.parameterPositions,n=this._cachedIndex,r=t[n],i=t[n-1];validate_interval:{seek:{let a;linear_scan:{forward_scan:if(!(e<r)){for(let a=n+2;;){if(r===void 0){if(e<i)break forward_scan;return n=t.length,this._cachedIndex=n,this.copySampleValue_(n-1)}if(n===a)break;if(i=r,r=t[++n],e<r)break seek}a=t.length;break linear_scan}if(!(e>=i)){let o=t[1];e<o&&(n=2,i=o);for(let a=n-2;;){if(i===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(n===a)break;if(r=i,i=t[--n-1],e>=i)break seek}a=n,n=0;break linear_scan}break validate_interval}for(;n<a;){let r=n+a>>>1;e<t[r]?a=r:n=r+1}if(r=t[n],i=t[n-1],i===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(r===void 0)return n=t.length,this._cachedIndex=n,this.copySampleValue_(n-1)}this._cachedIndex=n,this.intervalChanged_(n,i,r)}return this.interpolate_(n,i,e,r)}getSettings_(){return this.settings||this.DefaultSettings_}copySampleValue_(e){let t=this.resultBuffer,n=this.sampleValues,r=this.valueSize,i=e*r;for(let e=0;e!==r;++e)t[e]=n[i+e];return t}interpolate_(){throw Error(`call to abstract method`)}intervalChanged_(){}},Of=class extends Df{constructor(e,t,n,r){super(e,t,n,r),this._weightPrev=-0,this._offsetPrev=-0,this._weightNext=-0,this._offsetNext=-0,this.DefaultSettings_={endingStart:ra,endingEnd:ra}}intervalChanged_(e,t,n){let r=this.parameterPositions,i=e-2,a=e+1,o=r[i],s=r[a];if(o===void 0)switch(this.getSettings_().endingStart){case ia:i=e,o=2*t-n;break;case aa:i=r.length-2,o=t+r[i]-r[i+1];break;default:i=e,o=n}if(s===void 0)switch(this.getSettings_().endingEnd){case ia:a=e,s=2*n-t;break;case aa:a=1,s=n+r[1]-r[0];break;default:a=e-1,s=t}let c=(n-t)*.5,l=this.valueSize;this._weightPrev=c/(t-o),this._weightNext=c/(s-n),this._offsetPrev=i*l,this._offsetNext=a*l}interpolate_(e,t,n,r){let i=this.resultBuffer,a=this.sampleValues,o=this.valueSize,s=e*o,c=s-o,l=this._offsetPrev,u=this._offsetNext,d=this._weightPrev,f=this._weightNext,p=(n-t)/(r-t),m=p*p,h=m*p,g=-d*h+2*d*m-d*p,_=(1+d)*h+(-1.5-2*d)*m+(-.5+d)*p+1,v=(-1-f)*h+(1.5+f)*m+.5*p,y=f*h-f*m;for(let e=0;e!==o;++e)i[e]=g*a[l+e]+_*a[c+e]+v*a[s+e]+y*a[u+e];return i}},kf=class extends Df{constructor(e,t,n,r){super(e,t,n,r)}interpolate_(e,t,n,r){let i=this.resultBuffer,a=this.sampleValues,o=this.valueSize,s=e*o,c=s-o,l=(n-t)/(r-t),u=1-l;for(let e=0;e!==o;++e)i[e]=a[c+e]*u+a[s+e]*l;return i}},Af=class extends Df{constructor(e,t,n,r){super(e,t,n,r)}interpolate_(e){return this.copySampleValue_(e-1)}},jf=class{constructor(e,t,n,r){if(e===void 0)throw Error(`THREE.KeyframeTrack: track name is undefined`);if(t===void 0||t.length===0)throw Error(`THREE.KeyframeTrack: no keyframes in track named `+e);this.name=e,this.times=vr(t,this.TimeBufferType),this.values=vr(n,this.ValueBufferType),this.setInterpolation(r||this.DefaultInterpolation)}static toJSON(e){let t=e.constructor,n;if(t.toJSON!==this.toJSON)n=t.toJSON(e);else{n={name:e.name,times:vr(e.times,Array),values:vr(e.values,Array)};let t=e.getInterpolation();t!==e.DefaultInterpolation&&(n.interpolation=t)}return n.type=e.ValueTypeName,n}InterpolantFactoryMethodDiscrete(e){return new Af(this.times,this.values,this.getValueSize(),e)}InterpolantFactoryMethodLinear(e){return new kf(this.times,this.values,this.getValueSize(),e)}InterpolantFactoryMethodSmooth(e){return new Of(this.times,this.values,this.getValueSize(),e)}setInterpolation(e){let t;switch(e){case ea:t=this.InterpolantFactoryMethodDiscrete;break;case ta:t=this.InterpolantFactoryMethodLinear;break;case na:t=this.InterpolantFactoryMethodSmooth}if(t===void 0){let t=`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 Error(t)}return console.warn(`THREE.KeyframeTrack:`,t),this}return this.createInterpolant=t,this}getInterpolation(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return ea;case this.InterpolantFactoryMethodLinear:return ta;case this.InterpolantFactoryMethodSmooth:return na}}getValueSize(){return this.values.length/this.times.length}shift(e){if(e!==0){let t=this.times;for(let n=0,r=t.length;n!==r;++n)t[n]+=e}return this}scale(e){if(e!==1){let t=this.times;for(let n=0,r=t.length;n!==r;++n)t[n]*=e}return this}trim(e,t){let n=this.times,r=n.length,i=0,a=r-1;for(;i!==r&&n[i]<e;)++i;for(;a!==-1&&n[a]>t;)--a;if(++a,i!==0||a!==r){i>=a&&(a=Math.max(a,1),i=a-1);let e=this.getValueSize();this.times=n.slice(i,a),this.values=this.values.slice(i*e,a*e)}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 n=this.times,r=this.values,i=n.length;i===0&&(console.error(`THREE.KeyframeTrack: Track is empty.`,this),e=!1);let a=null;for(let t=0;t!==i;t++){let r=n[t];if(typeof r==`number`&&isNaN(r)){console.error(`THREE.KeyframeTrack: Time is not a valid number.`,this,t,r),e=!1;break}if(a!==null&&a>r){console.error(`THREE.KeyframeTrack: Out of order keys.`,this,t,r,a),e=!1;break}a=r}if(r!==void 0&&yr(r))for(let t=0,n=r.length;t!==n;++t){let n=r[t];if(isNaN(n)){console.error(`THREE.KeyframeTrack: Value is not a valid number.`,this,t,n),e=!1;break}}return e}optimize(){let e=this.times.slice(),t=this.values.slice(),n=this.getValueSize(),r=this.getInterpolation()===na,i=e.length-1,a=1;for(let o=1;o<i;++o){let i=!1,s=e[o];if(s!==e[o+1]&&(o!==1||s!==e[0])){if(r)i=!0;else{let e=o*n,r=e-n,a=e+n;for(let o=0;o!==n;++o){let n=t[e+o];if(n!==t[r+o]||n!==t[a+o]){i=!0;break}}}}if(i){if(o!==a){e[a]=e[o];let r=o*n,i=a*n;for(let e=0;e!==n;++e)t[i+e]=t[r+e]}++a}}if(i>0){e[a]=e[i];for(let e=i*n,r=a*n,o=0;o!==n;++o)t[r+o]=t[e+o];++a}return a===e.length?(this.times=e,this.values=t):(this.times=e.slice(0,a),this.values=t.slice(0,a*n)),this}clone(){let e=this.times.slice(),t=this.values.slice(),n=this.constructor,r=new n(this.name,e,t);return r.createInterpolant=this.createInterpolant,r}},jf.prototype.TimeBufferType=Float32Array,jf.prototype.ValueBufferType=Float32Array,jf.prototype.DefaultInterpolation=ta,Mf=class extends jf{constructor(e,t,n){super(e,t,n)}},Mf.prototype.ValueTypeName=`bool`,Mf.prototype.ValueBufferType=Array,Mf.prototype.DefaultInterpolation=ea,Mf.prototype.InterpolantFactoryMethodLinear=void 0,Mf.prototype.InterpolantFactoryMethodSmooth=void 0,Nf=class extends jf{},Nf.prototype.ValueTypeName=`color`,Pf=class extends jf{},Pf.prototype.ValueTypeName=`number`,Ff=class extends Df{constructor(e,t,n,r){super(e,t,n,r)}interpolate_(e,t,n,r){let i=this.resultBuffer,a=this.sampleValues,o=this.valueSize,s=(n-t)/(r-t),c=e*o;for(let e=c+o;c!==e;c+=4)fo.slerpFlat(i,0,a,c-o,a,c,s);return i}},If=class extends jf{InterpolantFactoryMethodLinear(e){return new Ff(this.times,this.values,this.getValueSize(),e)}},If.prototype.ValueTypeName=`quaternion`,If.prototype.InterpolantFactoryMethodSmooth=void 0,Lf=class extends jf{constructor(e,t,n){super(e,t,n)}},Lf.prototype.ValueTypeName=`string`,Lf.prototype.ValueBufferType=Array,Lf.prototype.DefaultInterpolation=ea,Lf.prototype.InterpolantFactoryMethodLinear=void 0,Lf.prototype.InterpolantFactoryMethodSmooth=void 0,Rf=class extends jf{},Rf.prototype.ValueTypeName=`vector`,zf=class{constructor(e=``,t=-1,n=[],r=oa){this.name=e,this.tracks=n,this.duration=t,this.blendMode=r,this.uuid=o(),this.duration<0&&this.resetDuration()}static parse(e){let t=[],n=e.tracks,r=1/(e.fps||1);for(let e=0,i=n.length;e!==i;++e)t.push(Er(n[e]).scale(r));let i=new this(e.name,e.duration,t,e.blendMode);return i.uuid=e.uuid,i}static toJSON(e){let t=[],n=e.tracks,r={name:e.name,duration:e.duration,tracks:t,uuid:e.uuid,blendMode:e.blendMode};for(let e=0,r=n.length;e!==r;++e)t.push(jf.toJSON(n[e]));return r}static CreateFromMorphTargetSequence(e,t,n,r){let i=t.length,a=[];for(let e=0;e<i;e++){let o=[],s=[];o.push((e+i-1)%i,e,(e+1)%i),s.push(0,1,0);let c=br(o);o=xr(o,1,c),s=xr(s,1,c),!r&&o[0]===0&&(o.push(i),s.push(s[0])),a.push(new Pf(`.morphTargetInfluences[`+t[e].name+`]`,o,s).scale(1/n))}return new this(e,-1,a)}static findByName(e,t){let n=e;if(!Array.isArray(e)){let t=e;n=t.geometry&&t.geometry.animations||t.animations}for(let e=0;e<n.length;e++)if(n[e].name===t)return n[e];return null}static CreateClipsFromMorphTargetSequences(e,t,n){let r={},i=/^([\w-]*?)([\d]+)$/;for(let t=0,n=e.length;t<n;t++){let n=e[t],a=n.name.match(i);if(a&&a.length>1){let e=a[1],t=r[e];t||(r[e]=t=[]),t.push(n)}}let a=[];for(let e in r)a.push(this.CreateFromMorphTargetSequence(e,r[e],t,n));return a}static parseAnimation(e,t){if(!e)return console.error(`THREE.AnimationClip: No animation in JSONLoader data.`),null;let n=function(e,t,n,r,i){if(n.length!==0){let a=[],o=[];Sr(n,a,o,r),a.length!==0&&i.push(new e(t,a,o))}},r=[],i=e.name||`default`,a=e.fps||30,o=e.blendMode,s=e.length||-1,c=e.hierarchy||[];for(let e=0;e<c.length;e++){let i=c[e].keys;if(i&&i.length!==0){if(i[0].morphTargets){let e={},t=0;for(;t<i.length;t++)if(i[t].morphTargets)for(let n=0;n<i[t].morphTargets.length;n++)e[i[t].morphTargets[n]]=-1;for(let n in e){let e=[],a=[];for(let r=0;r!==i[t].morphTargets.length;++r){let r=i[t];e.push(r.time),a.push(+(r.morphTarget===n))}r.push(new Pf(`.morphTargetInfluence[`+n+`]`,e,a))}s=e.length*a}else{let a=`.bones[`+t[e].name+`]`;n(Rf,a+`.position`,i,`pos`,r),n(If,a+`.quaternion`,i,`rot`,r),n(Rf,a+`.scale`,i,`scl`,r)}}}return r.length===0?null:new this(i,s,r,o)}resetDuration(){let e=this.tracks,t=0;for(let n=0,r=e.length;n!==r;++n){let e=this.tracks[n];t=Math.max(t,e.times[e.times.length-1])}return this.duration=t,this}trim(){for(let e=0;e<this.tracks.length;e++)this.tracks[e].trim(0,this.duration);return this}validate(){let e=!0;for(let t=0;t<this.tracks.length;t++)e=e&&this.tracks[t].validate();return e}optimize(){for(let e=0;e<this.tracks.length;e++)this.tracks[e].optimize();return this}clone(){let e=[];for(let t=0;t<this.tracks.length;t++)e.push(this.tracks[t].clone());return new this.constructor(this.name,this.duration,e,this.blendMode)}toJSON(){return this.constructor.toJSON(this)}},Bf={enabled:!1,files:{},add:function(e,t){this.enabled!==!1&&(this.files[e]=t)},get:function(e){if(this.enabled!==!1)return this.files[e]},remove:function(e){delete this.files[e]},clear:function(){this.files={}}},Vf=class{constructor(e,t,n){let r=this,i=!1,a=0,o=0,s,c=[];this.onStart=void 0,this.onLoad=e,this.onProgress=t,this.onError=n,this.itemStart=function(e){o++,i===!1&&r.onStart!==void 0&&r.onStart(e,a,o),i=!0},this.itemEnd=function(e){a++,r.onProgress!==void 0&&r.onProgress(e,a,o),a===o&&(i=!1,r.onLoad!==void 0&&r.onLoad())},this.itemError=function(e){r.onError!==void 0&&r.onError(e)},this.resolveURL=function(e){return s?s(e):e},this.setURLModifier=function(e){return s=e,this},this.addHandler=function(e,t){return c.push(e,t),this},this.removeHandler=function(e){let t=c.indexOf(e);return t!==-1&&c.splice(t,2),this},this.getHandler=function(e){for(let t=0,n=c.length;t<n;t+=2){let n=c[t],r=c[t+1];if(n.global&&(n.lastIndex=0),n.test(e))return r}return null}}},Hf=new Vf,Uf=class{constructor(e){this.manager=e===void 0?Hf:e,this.crossOrigin=`anonymous`,this.withCredentials=!1,this.path=``,this.resourcePath=``,this.requestHeader={}}load(){}loadAsync(e,t){let n=this;return new Promise(function(r,i){n.load(e,r,t,i)})}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}},Uf.DEFAULT_MATERIAL_NAME=`__DEFAULT`,Wf={},Gf=class extends Error{constructor(e,t){super(e),this.response=t}},Kf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){e===void 0&&(e=``),this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);let i=Bf.get(e);if(i!==void 0)return this.manager.itemStart(e),setTimeout(()=>{t&&t(i),this.manager.itemEnd(e)},0),i;if(Wf[e]!==void 0){Wf[e].push({onLoad:t,onProgress:n,onError:r});return}Wf[e]=[],Wf[e].push({onLoad:t,onProgress:n,onError:r});let a=new Request(e,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?`include`:`same-origin`}),o=this.mimeType,s=this.responseType;fetch(a).then(t=>{if(t.status===200||t.status===0){if(t.status===0&&console.warn(`THREE.FileLoader: HTTP Status 0 received.`),typeof ReadableStream>`u`||t.body===void 0||t.body.getReader===void 0)return t;let n=Wf[e],r=t.body.getReader(),i=t.headers.get(`X-File-Size`)||t.headers.get(`Content-Length`),a=i?parseInt(i):0,o=a!==0,s=0,c=new ReadableStream({start(e){t();function t(){r.read().then(({done:r,value:i})=>{if(r)e.close();else{s+=i.byteLength;let r=new ProgressEvent(`progress`,{lengthComputable:o,loaded:s,total:a});for(let e=0,t=n.length;e<t;e++){let t=n[e];t.onProgress&&t.onProgress(r)}e.enqueue(i),t()}},t=>{e.error(t)})}}});return new Response(c)}throw new Gf(`fetch for "${t.url}" responded with ${t.status}: ${t.statusText}`,t)}).then(e=>{switch(s){case`arraybuffer`:return e.arrayBuffer();case`blob`:return e.blob();case`document`:return e.text().then(e=>new DOMParser().parseFromString(e,o));case`json`:return e.json();default:if(o===void 0)return e.text();{let t=/charset="?([^;"\s]*)"?/i.exec(o),n=t&&t[1]?t[1].toLowerCase():void 0,r=new TextDecoder(n);return e.arrayBuffer().then(e=>r.decode(e))}}}).then(t=>{Bf.add(e,t);let n=Wf[e];delete Wf[e];for(let e=0,r=n.length;e<r;e++){let r=n[e];r.onLoad&&r.onLoad(t)}}).catch(t=>{let n=Wf[e];if(n===void 0)throw this.manager.itemError(e),t;delete Wf[e];for(let e=0,r=n.length;e<r;e++){let r=n[e];r.onError&&r.onError(t)}this.manager.itemError(e)}).finally(()=>{this.manager.itemEnd(e)}),this.manager.itemStart(e)}setResponseType(e){return this.responseType=e,this}setMimeType(e){return this.mimeType=e,this}},qf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=this,a=new Kf(this.manager);a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(e,function(n){try{t(i.parse(JSON.parse(n)))}catch(t){r?r(t):console.error(t),i.manager.itemError(e)}},n,r)}parse(e){let t=[];for(let n=0;n<e.length;n++){let r=zf.parse(e[n]);t.push(r)}return t}},Jf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=this,a=[],o=new yd,s=new Kf(this.manager);s.setPath(this.path),s.setResponseType(`arraybuffer`),s.setRequestHeader(this.requestHeader),s.setWithCredentials(i.withCredentials);let c=0;function l(l){s.load(e[l],function(e){let n=i.parse(e,!0);a[l]={width:n.width,height:n.height,format:n.format,mipmaps:n.mipmaps},c+=1,c===6&&(n.mipmapCount===1&&(o.minFilter=Ur),o.image=a,o.format=n.format,o.needsUpdate=!0,t&&t(o))},n,r)}if(Array.isArray(e))for(let t=0,n=e.length;t<n;++t)l(t);else s.load(e,function(e){let n=i.parse(e,!0);if(n.isCubemap){let e=n.mipmaps.length/n.mipmapCount;for(let t=0;t<e;t++){a[t]={mipmaps:[]};for(let e=0;e<n.mipmapCount;e++)a[t].mipmaps.push(n.mipmaps[t*n.mipmapCount+e]),a[t].format=n.format,a[t].width=n.width,a[t].height=n.height}o.image=a}else o.image.width=n.width,o.image.height=n.height,o.mipmaps=n.mipmaps;n.mipmapCount===1&&(o.minFilter=Ur),o.format=n.format,o.needsUpdate=!0,t&&t(o)},n,r);return o}},Yf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);let i=this,a=Bf.get(e);if(a!==void 0)return i.manager.itemStart(e),setTimeout(function(){t&&t(a),i.manager.itemEnd(e)},0),a;let o=A(`img`);function s(){l(),Bf.add(e,this),t&&t(this),i.manager.itemEnd(e)}function c(t){l(),r&&r(t),i.manager.itemError(e),i.manager.itemEnd(e)}function l(){o.removeEventListener(`load`,s,!1),o.removeEventListener(`error`,c,!1)}return o.addEventListener(`load`,s,!1),o.addEventListener(`error`,c,!1),e.slice(0,5)!==`data:`&&this.crossOrigin!==void 0&&(o.crossOrigin=this.crossOrigin),i.manager.itemStart(e),o.src=e,o}},Xf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=new Tc;i.colorSpace=fa;let a=new Yf(this.manager);a.setCrossOrigin(this.crossOrigin),a.setPath(this.path);let o=0;function s(n){a.load(e[n],function(e){i.images[n]=e,o++,o===6&&(i.needsUpdate=!0,t&&t(i))},void 0,r)}for(let t=0;t<e.length;++t)s(t);return i}},Zf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=this,a=new Cu,o=new Kf(this.manager);return o.setResponseType(`arraybuffer`),o.setRequestHeader(this.requestHeader),o.setPath(this.path),o.setWithCredentials(i.withCredentials),o.load(e,function(e){let n;try{n=i.parse(e)}catch(e){if(r!==void 0)r(e);else{console.error(e);return}}n.image===void 0?n.data!==void 0&&(a.image.width=n.width,a.image.height=n.height,a.image.data=n.data):a.image=n.image,a.wrapS=n.wrapS===void 0?z:n.wrapS,a.wrapT=n.wrapT===void 0?z:n.wrapT,a.magFilter=n.magFilter===void 0?Ur:n.magFilter,a.minFilter=n.minFilter===void 0?Ur:n.minFilter,a.anisotropy=n.anisotropy===void 0?1:n.anisotropy,n.colorSpace!==void 0&&(a.colorSpace=n.colorSpace),n.flipY!==void 0&&(a.flipY=n.flipY),n.format!==void 0&&(a.format=n.format),n.type!==void 0&&(a.type=n.type),n.mipmaps!==void 0&&(a.mipmaps=n.mipmaps,a.minFilter=Kr),n.mipmapCount===1&&(a.minFilter=Ur),n.generateMipmaps!==void 0&&(a.generateMipmaps=n.generateMipmaps),a.needsUpdate=!0,t&&t(a,n)},n,r),a}},Qf=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=new ro,a=new Yf(this.manager);return a.setCrossOrigin(this.crossOrigin),a.setPath(this.path),a.load(e,function(e){i.image=e,i.needsUpdate=!0,t!==void 0&&t(i)},n,r),i}},$f=class extends ps{constructor(e,t=1){super(),this.isLight=!0,this.type=`Light`,this.color=new W(e),this.intensity=t}dispose(){}copy(e,t){return super.copy(e,t),this.color.copy(e.color),this.intensity=e.intensity,this}toJSON(e){let t=super.toJSON(e);return t.object.color=this.color.getHex(),t.object.intensity=this.intensity,this.groundColor!==void 0&&(t.object.groundColor=this.groundColor.getHex()),this.distance!==void 0&&(t.object.distance=this.distance),this.angle!==void 0&&(t.object.angle=this.angle),this.decay!==void 0&&(t.object.decay=this.decay),this.penumbra!==void 0&&(t.object.penumbra=this.penumbra),this.shadow!==void 0&&(t.object.shadow=this.shadow.toJSON()),this.target!==void 0&&(t.object.target=this.target.uuid),t}},ep=class extends $f{constructor(e,t,n){super(e,n),this.isHemisphereLight=!0,this.type=`HemisphereLight`,this.position.copy(ps.DEFAULT_UP),this.updateMatrix(),this.groundColor=new W(t)}copy(e,t){return super.copy(e,t),this.groundColor.copy(e.groundColor),this}},tp=new U,np=new H,rp=new H,ip=class{constructor(e){this.camera=e,this.intensity=1,this.bias=0,this.normalBias=0,this.radius=1,this.blurSamples=8,this.mapSize=new B(512,512),this.map=null,this.mapPass=null,this.matrix=new U,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new Nc,this._frameExtents=new B(1,1),this._viewportCount=1,this._viewports=[new io(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(e){let t=this.camera,n=this.matrix;np.setFromMatrixPosition(e.matrixWorld),t.position.copy(np),rp.setFromMatrixPosition(e.target.matrixWorld),t.lookAt(rp),t.updateMatrixWorld(),tp.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),this._frustum.setFromProjectionMatrix(tp),n.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),n.multiply(tp)}getViewport(e){return this._viewports[e]}getFrameExtents(){return this._frameExtents}dispose(){this.map&&this.map.dispose(),this.mapPass&&this.mapPass.dispose()}copy(e){return this.camera=e.camera.clone(),this.intensity=e.intensity,this.bias=e.bias,this.radius=e.radius,this.mapSize.copy(e.mapSize),this}clone(){return new this.constructor().copy(this)}toJSON(){let e={};return this.intensity!==1&&(e.intensity=this.intensity),this.bias!==0&&(e.bias=this.bias),this.normalBias!==0&&(e.normalBias=this.normalBias),this.radius!==1&&(e.radius=this.radius),(this.mapSize.x!==512||this.mapSize.y!==512)&&(e.mapSize=this.mapSize.toArray()),e.camera=this.camera.toJSON(!1).object,delete e.camera.matrix,e}},ap=class extends ip{constructor(){super(new xc(50,1,.5,500)),this.isSpotLightShadow=!0,this.focus=1}updateMatrices(e){let t=this.camera,n=Ha*2*e.angle*this.focus,r=this.mapSize.width/this.mapSize.height,i=e.distance||t.far;(n!==t.fov||r!==t.aspect||i!==t.far)&&(t.fov=n,t.aspect=r,t.far=i,t.updateProjectionMatrix()),super.updateMatrices(e)}copy(e){return super.copy(e),this.focus=e.focus,this}},op=class extends $f{constructor(e,t,n=0,r=Math.PI/3,i=0,a=2){super(e,t),this.isSpotLight=!0,this.type=`SpotLight`,this.position.copy(ps.DEFAULT_UP),this.updateMatrix(),this.target=new ps,this.distance=n,this.angle=r,this.penumbra=i,this.decay=a,this.map=null,this.shadow=new ap}get power(){return this.intensity*Math.PI}set power(e){this.intensity=e/Math.PI}dispose(){this.shadow.dispose()}copy(e,t){return super.copy(e,t),this.distance=e.distance,this.angle=e.angle,this.penumbra=e.penumbra,this.decay=e.decay,this.target=e.target.clone(),this.shadow=e.shadow.clone(),this}},sp=new U,cp=new H,lp=new H,up=class extends ip{constructor(){super(new xc(90,1,.5,500)),this.isPointLightShadow=!0,this._frameExtents=new B(4,2),this._viewportCount=6,this._viewports=[new io(2,1,1,1),new io(0,1,1,1),new io(3,1,1,1),new io(1,1,1,1),new io(3,0,1,1),new io(1,0,1,1)],this._cubeDirections=[new H(1,0,0),new H(-1,0,0),new H(0,0,1),new H(0,0,-1),new H(0,1,0),new H(0,-1,0)],this._cubeUps=[new H(0,1,0),new H(0,1,0),new H(0,1,0),new H(0,1,0),new H(0,0,1),new H(0,0,-1)]}updateMatrices(e,t=0){let n=this.camera,r=this.matrix,i=e.distance||n.far;i!==n.far&&(n.far=i,n.updateProjectionMatrix()),cp.setFromMatrixPosition(e.matrixWorld),n.position.copy(cp),lp.copy(n.position),lp.add(this._cubeDirections[t]),n.up.copy(this._cubeUps[t]),n.lookAt(lp),n.updateMatrixWorld(),r.makeTranslation(-cp.x,-cp.y,-cp.z),sp.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse),this._frustum.setFromProjectionMatrix(sp)}},dp=class extends $f{constructor(e,t,n=0,r=2){super(e,t),this.isPointLight=!0,this.type=`PointLight`,this.distance=n,this.decay=r,this.shadow=new up}get power(){return this.intensity*4*Math.PI}set power(e){this.intensity=e/(4*Math.PI)}dispose(){this.shadow.dispose()}copy(e,t){return super.copy(e,t),this.distance=e.distance,this.decay=e.decay,this.shadow=e.shadow.clone(),this}},fp=class extends ip{constructor(){super(new zc(-5,5,5,-5,.5,500)),this.isDirectionalLightShadow=!0}},pp=class extends $f{constructor(e,t){super(e,t),this.isDirectionalLight=!0,this.type=`DirectionalLight`,this.position.copy(ps.DEFAULT_UP),this.updateMatrix(),this.target=new ps,this.shadow=new fp}dispose(){this.shadow.dispose()}copy(e){return super.copy(e),this.target=e.target.clone(),this.shadow=e.shadow.clone(),this}},mp=class extends $f{constructor(e,t){super(e,t),this.isAmbientLight=!0,this.type=`AmbientLight`}},hp=class extends $f{constructor(e,t,n=10,r=10){super(e,t),this.isRectAreaLight=!0,this.type=`RectAreaLight`,this.width=n,this.height=r}get power(){return this.intensity*this.width*this.height*Math.PI}set power(e){this.intensity=e/(this.width*this.height*Math.PI)}copy(e){return super.copy(e),this.width=e.width,this.height=e.height,this}toJSON(e){let t=super.toJSON(e);return t.object.width=this.width,t.object.height=this.height,t}},gp=class{constructor(){this.isSphericalHarmonics3=!0,this.coefficients=[];for(let e=0;e<9;e++)this.coefficients.push(new H)}set(e){for(let t=0;t<9;t++)this.coefficients[t].copy(e[t]);return this}zero(){for(let e=0;e<9;e++)this.coefficients[e].set(0,0,0);return this}getAt(e,t){let n=e.x,r=e.y,i=e.z,a=this.coefficients;return t.copy(a[0]).multiplyScalar(.282095),t.addScaledVector(a[1],.488603*r),t.addScaledVector(a[2],.488603*i),t.addScaledVector(a[3],.488603*n),t.addScaledVector(a[4],n*r*1.092548),t.addScaledVector(a[5],r*i*1.092548),t.addScaledVector(a[6],.315392*(3*i*i-1)),t.addScaledVector(a[7],n*i*1.092548),t.addScaledVector(a[8],.546274*(n*n-r*r)),t}getIrradianceAt(e,t){let n=e.x,r=e.y,i=e.z,a=this.coefficients;return t.copy(a[0]).multiplyScalar(.886227),t.addScaledVector(a[1],1.023328*r),t.addScaledVector(a[2],1.023328*i),t.addScaledVector(a[3],1.023328*n),t.addScaledVector(a[4],.858086*n*r),t.addScaledVector(a[5],.858086*r*i),t.addScaledVector(a[6],.743125*i*i-.247708),t.addScaledVector(a[7],.858086*n*i),t.addScaledVector(a[8],.429043*(n*n-r*r)),t}add(e){for(let t=0;t<9;t++)this.coefficients[t].add(e.coefficients[t]);return this}addScaledSH(e,t){for(let n=0;n<9;n++)this.coefficients[n].addScaledVector(e.coefficients[n],t);return this}scale(e){for(let t=0;t<9;t++)this.coefficients[t].multiplyScalar(e);return this}lerp(e,t){for(let n=0;n<9;n++)this.coefficients[n].lerp(e.coefficients[n],t);return this}equals(e){for(let t=0;t<9;t++)if(!this.coefficients[t].equals(e.coefficients[t]))return!1;return!0}copy(e){return this.set(e.coefficients)}clone(){return new this.constructor().copy(this)}fromArray(e,t=0){let n=this.coefficients;for(let r=0;r<9;r++)n[r].fromArray(e,t+r*3);return this}toArray(e=[],t=0){let n=this.coefficients;for(let r=0;r<9;r++)n[r].toArray(e,t+r*3);return e}static getBasisAt(e,t){let n=e.x,r=e.y,i=e.z;t[0]=.282095,t[1]=.488603*r,t[2]=.488603*i,t[3]=.488603*n,t[4]=1.092548*n*r,t[5]=1.092548*r*i,t[6]=.315392*(3*i*i-1),t[7]=1.092548*n*i,t[8]=.546274*(n*n-r*r)}},_p=class extends $f{constructor(e=new gp,t=1){super(void 0,t),this.isLightProbe=!0,this.sh=e}copy(e){return super.copy(e),this.sh.copy(e.sh),this}fromJSON(e){return this.intensity=e.intensity,this.sh.fromArray(e.sh),this}toJSON(e){let t=super.toJSON(e);return t.object.sh=this.sh.toArray(),t}},vp=class e extends Uf{constructor(e){super(e),this.textures={}}load(e,t,n,r){let i=this,a=new Kf(i.manager);a.setPath(i.path),a.setRequestHeader(i.requestHeader),a.setWithCredentials(i.withCredentials),a.load(e,function(n){try{t(i.parse(JSON.parse(n)))}catch(t){r?r(t):console.error(t),i.manager.itemError(e)}},n,r)}parse(e){let t=this.textures;function n(e){return t[e]===void 0&&console.warn(`THREE.MaterialLoader: Undefined texture`,e),t[e]}let r=this.createMaterialFromType(e.type);if(e.uuid!==void 0&&(r.uuid=e.uuid),e.name!==void 0&&(r.name=e.name),e.color!==void 0&&r.color!==void 0&&r.color.setHex(e.color),e.roughness!==void 0&&(r.roughness=e.roughness),e.metalness!==void 0&&(r.metalness=e.metalness),e.sheen!==void 0&&(r.sheen=e.sheen),e.sheenColor!==void 0&&(r.sheenColor=new W().setHex(e.sheenColor)),e.sheenRoughness!==void 0&&(r.sheenRoughness=e.sheenRoughness),e.emissive!==void 0&&r.emissive!==void 0&&r.emissive.setHex(e.emissive),e.specular!==void 0&&r.specular!==void 0&&r.specular.setHex(e.specular),e.specularIntensity!==void 0&&(r.specularIntensity=e.specularIntensity),e.specularColor!==void 0&&r.specularColor!==void 0&&r.specularColor.setHex(e.specularColor),e.shininess!==void 0&&(r.shininess=e.shininess),e.clearcoat!==void 0&&(r.clearcoat=e.clearcoat),e.clearcoatRoughness!==void 0&&(r.clearcoatRoughness=e.clearcoatRoughness),e.dispersion!==void 0&&(r.dispersion=e.dispersion),e.iridescence!==void 0&&(r.iridescence=e.iridescence),e.iridescenceIOR!==void 0&&(r.iridescenceIOR=e.iridescenceIOR),e.iridescenceThicknessRange!==void 0&&(r.iridescenceThicknessRange=e.iridescenceThicknessRange),e.transmission!==void 0&&(r.transmission=e.transmission),e.thickness!==void 0&&(r.thickness=e.thickness),e.attenuationDistance!==void 0&&(r.attenuationDistance=e.attenuationDistance),e.attenuationColor!==void 0&&r.attenuationColor!==void 0&&r.attenuationColor.setHex(e.attenuationColor),e.anisotropy!==void 0&&(r.anisotropy=e.anisotropy),e.anisotropyRotation!==void 0&&(r.anisotropyRotation=e.anisotropyRotation),e.fog!==void 0&&(r.fog=e.fog),e.flatShading!==void 0&&(r.flatShading=e.flatShading),e.blending!==void 0&&(r.blending=e.blending),e.combine!==void 0&&(r.combine=e.combine),e.side!==void 0&&(r.side=e.side),e.shadowSide!==void 0&&(r.shadowSide=e.shadowSide),e.opacity!==void 0&&(r.opacity=e.opacity),e.transparent!==void 0&&(r.transparent=e.transparent),e.alphaTest!==void 0&&(r.alphaTest=e.alphaTest),e.alphaHash!==void 0&&(r.alphaHash=e.alphaHash),e.depthFunc!==void 0&&(r.depthFunc=e.depthFunc),e.depthTest!==void 0&&(r.depthTest=e.depthTest),e.depthWrite!==void 0&&(r.depthWrite=e.depthWrite),e.colorWrite!==void 0&&(r.colorWrite=e.colorWrite),e.blendSrc!==void 0&&(r.blendSrc=e.blendSrc),e.blendDst!==void 0&&(r.blendDst=e.blendDst),e.blendEquation!==void 0&&(r.blendEquation=e.blendEquation),e.blendSrcAlpha!==void 0&&(r.blendSrcAlpha=e.blendSrcAlpha),e.blendDstAlpha!==void 0&&(r.blendDstAlpha=e.blendDstAlpha),e.blendEquationAlpha!==void 0&&(r.blendEquationAlpha=e.blendEquationAlpha),e.blendColor!==void 0&&r.blendColor!==void 0&&r.blendColor.setHex(e.blendColor),e.blendAlpha!==void 0&&(r.blendAlpha=e.blendAlpha),e.stencilWriteMask!==void 0&&(r.stencilWriteMask=e.stencilWriteMask),e.stencilFunc!==void 0&&(r.stencilFunc=e.stencilFunc),e.stencilRef!==void 0&&(r.stencilRef=e.stencilRef),e.stencilFuncMask!==void 0&&(r.stencilFuncMask=e.stencilFuncMask),e.stencilFail!==void 0&&(r.stencilFail=e.stencilFail),e.stencilZFail!==void 0&&(r.stencilZFail=e.stencilZFail),e.stencilZPass!==void 0&&(r.stencilZPass=e.stencilZPass),e.stencilWrite!==void 0&&(r.stencilWrite=e.stencilWrite),e.wireframe!==void 0&&(r.wireframe=e.wireframe),e.wireframeLinewidth!==void 0&&(r.wireframeLinewidth=e.wireframeLinewidth),e.wireframeLinecap!==void 0&&(r.wireframeLinecap=e.wireframeLinecap),e.wireframeLinejoin!==void 0&&(r.wireframeLinejoin=e.wireframeLinejoin),e.rotation!==void 0&&(r.rotation=e.rotation),e.linewidth!==void 0&&(r.linewidth=e.linewidth),e.dashSize!==void 0&&(r.dashSize=e.dashSize),e.gapSize!==void 0&&(r.gapSize=e.gapSize),e.scale!==void 0&&(r.scale=e.scale),e.polygonOffset!==void 0&&(r.polygonOffset=e.polygonOffset),e.polygonOffsetFactor!==void 0&&(r.polygonOffsetFactor=e.polygonOffsetFactor),e.polygonOffsetUnits!==void 0&&(r.polygonOffsetUnits=e.polygonOffsetUnits),e.dithering!==void 0&&(r.dithering=e.dithering),e.alphaToCoverage!==void 0&&(r.alphaToCoverage=e.alphaToCoverage),e.premultipliedAlpha!==void 0&&(r.premultipliedAlpha=e.premultipliedAlpha),e.forceSinglePass!==void 0&&(r.forceSinglePass=e.forceSinglePass),e.visible!==void 0&&(r.visible=e.visible),e.toneMapped!==void 0&&(r.toneMapped=e.toneMapped),e.userData!==void 0&&(r.userData=e.userData),e.vertexColors!==void 0&&(r.vertexColors=typeof e.vertexColors==`number`?e.vertexColors>0:e.vertexColors),e.uniforms!==void 0)for(let t in e.uniforms){let i=e.uniforms[t];switch(r.uniforms[t]={},i.type){case`t`:r.uniforms[t].value=n(i.value);break;case`c`:r.uniforms[t].value=new W().setHex(i.value);break;case`v2`:r.uniforms[t].value=new B().fromArray(i.value);break;case`v3`:r.uniforms[t].value=new H().fromArray(i.value);break;case`v4`:r.uniforms[t].value=new io().fromArray(i.value);break;case`m3`:r.uniforms[t].value=new V().fromArray(i.value);break;case`m4`:r.uniforms[t].value=new U().fromArray(i.value);break;default:r.uniforms[t].value=i.value}}if(e.defines!==void 0&&(r.defines=e.defines),e.vertexShader!==void 0&&(r.vertexShader=e.vertexShader),e.fragmentShader!==void 0&&(r.fragmentShader=e.fragmentShader),e.glslVersion!==void 0&&(r.glslVersion=e.glslVersion),e.extensions!==void 0)for(let t in e.extensions)r.extensions[t]=e.extensions[t];if(e.lights!==void 0&&(r.lights=e.lights),e.clipping!==void 0&&(r.clipping=e.clipping),e.size!==void 0&&(r.size=e.size),e.sizeAttenuation!==void 0&&(r.sizeAttenuation=e.sizeAttenuation),e.map!==void 0&&(r.map=n(e.map)),e.matcap!==void 0&&(r.matcap=n(e.matcap)),e.alphaMap!==void 0&&(r.alphaMap=n(e.alphaMap)),e.bumpMap!==void 0&&(r.bumpMap=n(e.bumpMap)),e.bumpScale!==void 0&&(r.bumpScale=e.bumpScale),e.normalMap!==void 0&&(r.normalMap=n(e.normalMap)),e.normalMapType!==void 0&&(r.normalMapType=e.normalMapType),e.normalScale!==void 0){let t=e.normalScale;Array.isArray(t)===!1&&(t=[t,t]),r.normalScale=new B().fromArray(t)}return e.displacementMap!==void 0&&(r.displacementMap=n(e.displacementMap)),e.displacementScale!==void 0&&(r.displacementScale=e.displacementScale),e.displacementBias!==void 0&&(r.displacementBias=e.displacementBias),e.roughnessMap!==void 0&&(r.roughnessMap=n(e.roughnessMap)),e.metalnessMap!==void 0&&(r.metalnessMap=n(e.metalnessMap)),e.emissiveMap!==void 0&&(r.emissiveMap=n(e.emissiveMap)),e.emissiveIntensity!==void 0&&(r.emissiveIntensity=e.emissiveIntensity),e.specularMap!==void 0&&(r.specularMap=n(e.specularMap)),e.specularIntensityMap!==void 0&&(r.specularIntensityMap=n(e.specularIntensityMap)),e.specularColorMap!==void 0&&(r.specularColorMap=n(e.specularColorMap)),e.envMap!==void 0&&(r.envMap=n(e.envMap)),e.envMapRotation!==void 0&&r.envMapRotation.fromArray(e.envMapRotation),e.envMapIntensity!==void 0&&(r.envMapIntensity=e.envMapIntensity),e.reflectivity!==void 0&&(r.reflectivity=e.reflectivity),e.refractionRatio!==void 0&&(r.refractionRatio=e.refractionRatio),e.lightMap!==void 0&&(r.lightMap=n(e.lightMap)),e.lightMapIntensity!==void 0&&(r.lightMapIntensity=e.lightMapIntensity),e.aoMap!==void 0&&(r.aoMap=n(e.aoMap)),e.aoMapIntensity!==void 0&&(r.aoMapIntensity=e.aoMapIntensity),e.gradientMap!==void 0&&(r.gradientMap=n(e.gradientMap)),e.clearcoatMap!==void 0&&(r.clearcoatMap=n(e.clearcoatMap)),e.clearcoatRoughnessMap!==void 0&&(r.clearcoatRoughnessMap=n(e.clearcoatRoughnessMap)),e.clearcoatNormalMap!==void 0&&(r.clearcoatNormalMap=n(e.clearcoatNormalMap)),e.clearcoatNormalScale!==void 0&&(r.clearcoatNormalScale=new B().fromArray(e.clearcoatNormalScale)),e.iridescenceMap!==void 0&&(r.iridescenceMap=n(e.iridescenceMap)),e.iridescenceThicknessMap!==void 0&&(r.iridescenceThicknessMap=n(e.iridescenceThicknessMap)),e.transmissionMap!==void 0&&(r.transmissionMap=n(e.transmissionMap)),e.thicknessMap!==void 0&&(r.thicknessMap=n(e.thicknessMap)),e.anisotropyMap!==void 0&&(r.anisotropyMap=n(e.anisotropyMap)),e.sheenColorMap!==void 0&&(r.sheenColorMap=n(e.sheenColorMap)),e.sheenRoughnessMap!==void 0&&(r.sheenRoughnessMap=n(e.sheenRoughnessMap)),r}setTextures(e){return this.textures=e,this}createMaterialFromType(t){return e.createMaterialFromType(t)}static createMaterialFromType(e){return new{ShadowMaterial:gf,SpriteMaterial:Jl,RawShaderMaterial:_f,ShaderMaterial:gc,PointsMaterial:dd,MeshPhysicalMaterial:yf,MeshStandardMaterial:vf,MeshPhongMaterial:bf,MeshToonMaterial:xf,MeshNormalMaterial:Sf,MeshLambertMaterial:Cf,MeshDepthMaterial:Tl,MeshDistanceMaterial:El,MeshBasicMaterial:Ps,MeshMatcapMaterial:wf,LineDashedMaterial:Tf,LineBasicMaterial:Qu,Material:Ns}[e]}},yp=class{static decodeText(e){if(console.warn(`THREE.LoaderUtils: decodeText() has been deprecated with r165 and will be removed with r175. Use TextDecoder instead.`),typeof TextDecoder<`u`)return new TextDecoder().decode(e);let t=``;for(let n=0,r=e.length;n<r;n++)t+=String.fromCharCode(e[n]);try{return decodeURIComponent(escape(t))}catch{return t}}static extractUrlBase(e){let t=e.lastIndexOf(`/`);return t===-1?`./`:e.slice(0,t+1)}static resolveURL(e,t){return typeof e!=`string`||e===``?``:(/^https?:\/\//i.test(t)&&/^\//.test(e)&&(t=t.replace(/(^https?:\/\/[^\/]+).*/i,`$1`)),/^(https?:)?\/\//i.test(e)||/^data:.*,.*$/i.test(e)||/^blob:.*$/i.test(e)?e:t+e)}},bp=class extends q{constructor(){super(),this.isInstancedBufferGeometry=!0,this.type=`InstancedBufferGeometry`,this.instanceCount=1/0}copy(e){return super.copy(e),this.instanceCount=e.instanceCount,this}toJSON(){let e=super.toJSON();return e.instanceCount=this.instanceCount,e.isInstancedBufferGeometry=!0,e}},xp=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=this,a=new Kf(i.manager);a.setPath(i.path),a.setRequestHeader(i.requestHeader),a.setWithCredentials(i.withCredentials),a.load(e,function(n){try{t(i.parse(JSON.parse(n)))}catch(t){r?r(t):console.error(t),i.manager.itemError(e)}},n,r)}parse(e){let t={},n={};function r(e,n){if(t[n]!==void 0)return t[n];let r=e.interleavedBuffers[n],a=i(e,r.buffer),o=k(r.type,a),s=new Gl(o,r.stride);return s.uuid=r.uuid,t[n]=s,s}function i(e,t){if(n[t]!==void 0)return n[t];let r=e.arrayBuffers[t],i=new Uint32Array(r).buffer;return n[t]=i,i}let a=e.isInstancedBufferGeometry?new bp:new q,o=e.data.index;if(o!==void 0){let e=k(o.type,o.array);a.setIndex(new G(e,1))}let s=e.data.attributes;for(let t in s){let n=s[t],i;if(n.isInterleavedBufferAttribute){let t=r(e.data,n.data);i=new ql(t,n.itemSize,n.offset,n.normalized)}else{let e=k(n.type,n.array);i=new(n.isInstancedBufferAttribute?Du:G)(e,n.itemSize,n.normalized)}n.name!==void 0&&(i.name=n.name),n.usage!==void 0&&i.setUsage(n.usage),a.setAttribute(t,i)}let c=e.data.morphAttributes;if(c)for(let t in c){let n=c[t],i=[];for(let t=0,a=n.length;t<a;t++){let a=n[t],o;if(a.isInterleavedBufferAttribute){let t=r(e.data,a.data);o=new ql(t,a.itemSize,a.offset,a.normalized)}else{let e=k(a.type,a.array);o=new G(e,a.itemSize,a.normalized)}a.name!==void 0&&(o.name=a.name),i.push(o)}a.morphAttributes[t]=i}e.data.morphTargetsRelative&&(a.morphTargetsRelative=!0);let l=e.data.groups||e.data.drawcalls||e.data.offsets;if(l!==void 0)for(let e=0,t=l.length;e!==t;++e){let t=l[e];a.addGroup(t.start,t.count,t.materialIndex)}let u=e.data.boundingSphere;if(u!==void 0){let e=new H;u.center!==void 0&&e.fromArray(u.center),a.boundingSphere=new Mo(e,u.radius)}return e.name&&(a.name=e.name),e.userData&&(a.userData=e.userData),a}},Sp=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=this,a=this.path===``?yp.extractUrlBase(e):this.path;this.resourcePath=this.resourcePath||a;let o=new Kf(this.manager);o.setPath(this.path),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(e,function(n){let a=null;try{a=JSON.parse(n)}catch(t){r!==void 0&&r(t),console.error(`THREE:ObjectLoader: Can't parse `+e+`.`,t.message);return}let o=a.metadata;o===void 0||o.type===void 0||o.type.toLowerCase()===`geometry`?(r!==void 0&&r(Error(`THREE.ObjectLoader: Can't load `+e)),console.error(`THREE.ObjectLoader: Can't load `+e)):i.parse(a,t)},n,r)}async loadAsync(e,t){let n=this,r=this.path===``?yp.extractUrlBase(e):this.path;this.resourcePath=this.resourcePath||r;let i=new Kf(this.manager);i.setPath(this.path),i.setRequestHeader(this.requestHeader),i.setWithCredentials(this.withCredentials);let a=await i.loadAsync(e,t),o=JSON.parse(a),s=o.metadata;if(s===void 0||s.type===void 0||s.type.toLowerCase()===`geometry`)throw Error(`THREE.ObjectLoader: Can't load `+e);return await n.parseAsync(o)}parse(e,t){let n=this.parseAnimations(e.animations),r=this.parseShapes(e.shapes),i=this.parseGeometries(e.geometries,r),a=this.parseImages(e.images,function(){t!==void 0&&t(c)}),o=this.parseTextures(e.textures,a),s=this.parseMaterials(e.materials,o),c=this.parseObject(e.object,i,s,o,n),l=this.parseSkeletons(e.skeletons,c);if(this.bindSkeletons(c,l),this.bindLightTargets(c),t!==void 0){let e=!1;for(let t in a)if(a[t].data instanceof HTMLImageElement){e=!0;break}e===!1&&t(c)}return c}async parseAsync(e){let t=this.parseAnimations(e.animations),n=this.parseShapes(e.shapes),r=this.parseGeometries(e.geometries,n),i=await this.parseImagesAsync(e.images),a=this.parseTextures(e.textures,i),o=this.parseMaterials(e.materials,a),s=this.parseObject(e.object,r,o,a,t),c=this.parseSkeletons(e.skeletons,s);return this.bindSkeletons(s,c),this.bindLightTargets(s),s}parseShapes(e){let t={};if(e!==void 0)for(let n=0,r=e.length;n<r;n++){let r=new $d().fromJSON(e[n]);t[r.uuid]=r}return t}parseSkeletons(e,t){let n={},r={};if(t.traverse(function(e){e.isBone&&(r[e.uuid]=e)}),e!==void 0)for(let t=0,i=e.length;t<i;t++){let i=new Eu().fromJSON(e[t],r);n[i.uuid]=i}return n}parseGeometries(e,t){let n={};if(e!==void 0){let r=new xp;for(let i=0,a=e.length;i<a;i++){let a,o=e[i];switch(o.type){case`BufferGeometry`:case`InstancedBufferGeometry`:a=r.parse(o);break;default:o.type in hf?a=hf[o.type].fromJSON(o,t):console.warn(`THREE.ObjectLoader: Unsupported geometry type "${o.type}"`)}a.uuid=o.uuid,o.name!==void 0&&(a.name=o.name),o.userData!==void 0&&(a.userData=o.userData),n[o.uuid]=a}}return n}parseMaterials(e,t){let n={},r={};if(e!==void 0){let i=new vp;i.setTextures(t);for(let t=0,a=e.length;t<a;t++){let a=e[t];n[a.uuid]===void 0&&(n[a.uuid]=i.parse(a)),r[a.uuid]=n[a.uuid]}}return r}parseAnimations(e){let t={};if(e!==void 0)for(let n=0;n<e.length;n++){let r=e[n],i=zf.parse(r);t[i.uuid]=i}return t}parseImages(e,t){let n=this,r={},i;function a(e){return n.manager.itemStart(e),i.load(e,function(){n.manager.itemEnd(e)},void 0,function(){n.manager.itemError(e),n.manager.itemEnd(e)})}function o(e){if(typeof e==`string`){let t=e;return a(/^(\/\/)|([a-z]+:(\/\/)?)/i.test(t)?t:n.resourcePath+t)}return e.data?{data:k(e.type,e.data),width:e.width,height:e.height}:null}if(e!==void 0&&e.length>0){let n=new Vf(t);i=new Yf(n),i.setCrossOrigin(this.crossOrigin);for(let t=0,n=e.length;t<n;t++){let n=e[t],i=n.url;if(Array.isArray(i)){let e=[];for(let t=0,n=i.length;t<n;t++){let n=i[t],r=o(n);r!==null&&(r instanceof HTMLImageElement?e.push(r):e.push(new Cu(r.data,r.width,r.height)))}r[n.uuid]=new to(e)}else{let e=o(n.url);r[n.uuid]=new to(e)}}}return r}async parseImagesAsync(e){let t=this,n={},r;async function i(e){if(typeof e==`string`){let n=e,i=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(n)?n:t.resourcePath+n;return await r.loadAsync(i)}return e.data?{data:k(e.type,e.data),width:e.width,height:e.height}:null}if(e!==void 0&&e.length>0){r=new Yf(this.manager),r.setCrossOrigin(this.crossOrigin);for(let t=0,r=e.length;t<r;t++){let r=e[t],a=r.url;if(Array.isArray(a)){let e=[];for(let t=0,n=a.length;t<n;t++){let n=a[t],r=await i(n);r!==null&&(r instanceof HTMLImageElement?e.push(r):e.push(new Cu(r.data,r.width,r.height)))}n[r.uuid]=new to(e)}else{let e=await i(r.url);n[r.uuid]=new to(e)}}}return n}parseTextures(e,t){function n(e,t){return typeof e==`number`?e:(console.warn(`THREE.ObjectLoader.parseTexture: Constant should be in numeric form.`,e),t[e])}let r={};if(e!==void 0)for(let i=0,a=e.length;i<a;i++){let a=e[i];a.image===void 0&&console.warn(`THREE.ObjectLoader: No "image" specified for`,a.uuid),t[a.image]===void 0&&console.warn(`THREE.ObjectLoader: Undefined image`,a.image);let o=t[a.image],s=o.data,c;Array.isArray(s)?(c=new Tc,s.length===6&&(c.needsUpdate=!0)):(c=s&&s.data?new Cu:new ro,s&&(c.needsUpdate=!0)),c.source=o,c.uuid=a.uuid,a.name!==void 0&&(c.name=a.name),a.mapping!==void 0&&(c.mapping=n(a.mapping,Cp)),a.channel!==void 0&&(c.channel=a.channel),a.offset!==void 0&&c.offset.fromArray(a.offset),a.repeat!==void 0&&c.repeat.fromArray(a.repeat),a.center!==void 0&&c.center.fromArray(a.center),a.rotation!==void 0&&(c.rotation=a.rotation),a.wrap!==void 0&&(c.wrapS=n(a.wrap[0],wp),c.wrapT=n(a.wrap[1],wp)),a.format!==void 0&&(c.format=a.format),a.internalFormat!==void 0&&(c.internalFormat=a.internalFormat),a.type!==void 0&&(c.type=a.type),a.colorSpace!==void 0&&(c.colorSpace=a.colorSpace),a.minFilter!==void 0&&(c.minFilter=n(a.minFilter,Tp)),a.magFilter!==void 0&&(c.magFilter=n(a.magFilter,Tp)),a.anisotropy!==void 0&&(c.anisotropy=a.anisotropy),a.flipY!==void 0&&(c.flipY=a.flipY),a.generateMipmaps!==void 0&&(c.generateMipmaps=a.generateMipmaps),a.premultiplyAlpha!==void 0&&(c.premultiplyAlpha=a.premultiplyAlpha),a.unpackAlignment!==void 0&&(c.unpackAlignment=a.unpackAlignment),a.compareFunction!==void 0&&(c.compareFunction=a.compareFunction),a.userData!==void 0&&(c.userData=a.userData),r[a.uuid]=c}return r}parseObject(e,t,n,r,i){let a;function o(e){return t[e]===void 0&&console.warn(`THREE.ObjectLoader: Undefined geometry`,e),t[e]}function s(e){if(e!==void 0){if(Array.isArray(e)){let t=[];for(let r=0,i=e.length;r<i;r++){let i=e[r];n[i]===void 0&&console.warn(`THREE.ObjectLoader: Undefined material`,i),t.push(n[i])}return t}return n[e]===void 0&&console.warn(`THREE.ObjectLoader: Undefined material`,e),n[e]}}function c(e){return r[e]===void 0&&console.warn(`THREE.ObjectLoader: Undefined texture`,e),r[e]}let l,u;switch(e.type){case`Scene`:a=new Wl,e.background!==void 0&&(Number.isInteger(e.background)?a.background=new W(e.background):a.background=c(e.background)),e.environment!==void 0&&(a.environment=c(e.environment)),e.fog!==void 0&&(e.fog.type===`Fog`?a.fog=new Ul(e.fog.color,e.fog.near,e.fog.far):e.fog.type===`FogExp2`&&(a.fog=new Hl(e.fog.color,e.fog.density)),e.fog.name!==``&&(a.fog.name=e.fog.name)),e.backgroundBlurriness!==void 0&&(a.backgroundBlurriness=e.backgroundBlurriness),e.backgroundIntensity!==void 0&&(a.backgroundIntensity=e.backgroundIntensity),e.backgroundRotation!==void 0&&a.backgroundRotation.fromArray(e.backgroundRotation),e.environmentIntensity!==void 0&&(a.environmentIntensity=e.environmentIntensity),e.environmentRotation!==void 0&&a.environmentRotation.fromArray(e.environmentRotation);break;case`PerspectiveCamera`:a=new xc(e.fov,e.aspect,e.near,e.far),e.focus!==void 0&&(a.focus=e.focus),e.zoom!==void 0&&(a.zoom=e.zoom),e.filmGauge!==void 0&&(a.filmGauge=e.filmGauge),e.filmOffset!==void 0&&(a.filmOffset=e.filmOffset),e.view!==void 0&&(a.view=Object.assign({},e.view));break;case`OrthographicCamera`:a=new zc(e.left,e.right,e.top,e.bottom,e.near,e.far),e.zoom!==void 0&&(a.zoom=e.zoom),e.view!==void 0&&(a.view=Object.assign({},e.view));break;case`AmbientLight`:a=new mp(e.color,e.intensity);break;case`DirectionalLight`:a=new pp(e.color,e.intensity),a.target=e.target||``;break;case`PointLight`:a=new dp(e.color,e.intensity,e.distance,e.decay);break;case`RectAreaLight`:a=new hp(e.color,e.intensity,e.width,e.height);break;case`SpotLight`:a=new op(e.color,e.intensity,e.distance,e.angle,e.penumbra,e.decay),a.target=e.target||``;break;case`HemisphereLight`:a=new ep(e.color,e.groundColor,e.intensity);break;case`LightProbe`:a=new _p().fromJSON(e);break;case`SkinnedMesh`:l=o(e.geometry),u=s(e.material),a=new xu(l,u),e.bindMode!==void 0&&(a.bindMode=e.bindMode),e.bindMatrix!==void 0&&a.bindMatrix.fromArray(e.bindMatrix),e.skeleton!==void 0&&(a.skeleton=e.skeleton);break;case`Mesh`:l=o(e.geometry),u=s(e.material),a=new dc(l,u);break;case`InstancedMesh`:l=o(e.geometry),u=s(e.material);let t=e.count,n=e.instanceMatrix,r=e.instanceColor;a=new Fu(l,u,t),a.instanceMatrix=new Du(new Float32Array(n.array),16),r!==void 0&&(a.instanceColor=new Du(new Float32Array(r.array),r.itemSize));break;case`BatchedMesh`:l=o(e.geometry),u=s(e.material),a=new Zu(e.maxInstanceCount,e.maxVertexCount,e.maxIndexCount,u),a.geometry=l,a.perObjectFrustumCulled=e.perObjectFrustumCulled,a.sortObjects=e.sortObjects,a._drawRanges=e.drawRanges,a._reservedRanges=e.reservedRanges,a._visibility=e.visibility,a._active=e.active,a._bounds=e.bounds.map(e=>{let t=new ho;t.min.fromArray(e.boxMin),t.max.fromArray(e.boxMax);let n=new Mo;return n.radius=e.sphereRadius,n.center.fromArray(e.sphereCenter),{boxInitialized:e.boxInitialized,box:t,sphereInitialized:e.sphereInitialized,sphere:n}}),a._maxInstanceCount=e.maxInstanceCount,a._maxVertexCount=e.maxVertexCount,a._maxIndexCount=e.maxIndexCount,a._geometryInitialized=e.geometryInitialized,a._geometryCount=e.geometryCount,a._matricesTexture=c(e.matricesTexture.uuid),e.colorsTexture!==void 0&&(a._colorsTexture=c(e.colorsTexture.uuid));break;case`LOD`:a=new du;break;case`Line`:a=new od(o(e.geometry),s(e.material));break;case`LineLoop`:a=new ud(o(e.geometry),s(e.material));break;case`LineSegments`:a=new ld(o(e.geometry),s(e.material));break;case`PointCloud`:case`Points`:a=new gd(o(e.geometry),s(e.material));break;case`Sprite`:a=new cu(s(e.material));break;case`Group`:a=new Ml;break;case`Bone`:a=new Su;break;default:a=new ps}if(a.uuid=e.uuid,e.name!==void 0&&(a.name=e.name),e.matrix===void 0?(e.position!==void 0&&a.position.fromArray(e.position),e.rotation!==void 0&&a.rotation.fromArray(e.rotation),e.quaternion!==void 0&&a.quaternion.fromArray(e.quaternion),e.scale!==void 0&&a.scale.fromArray(e.scale)):(a.matrix.fromArray(e.matrix),e.matrixAutoUpdate!==void 0&&(a.matrixAutoUpdate=e.matrixAutoUpdate),a.matrixAutoUpdate&&a.matrix.decompose(a.position,a.quaternion,a.scale)),e.up!==void 0&&a.up.fromArray(e.up),e.castShadow!==void 0&&(a.castShadow=e.castShadow),e.receiveShadow!==void 0&&(a.receiveShadow=e.receiveShadow),e.shadow&&(e.shadow.intensity!==void 0&&(a.shadow.intensity=e.shadow.intensity),e.shadow.bias!==void 0&&(a.shadow.bias=e.shadow.bias),e.shadow.normalBias!==void 0&&(a.shadow.normalBias=e.shadow.normalBias),e.shadow.radius!==void 0&&(a.shadow.radius=e.shadow.radius),e.shadow.mapSize!==void 0&&a.shadow.mapSize.fromArray(e.shadow.mapSize),e.shadow.camera!==void 0&&(a.shadow.camera=this.parseObject(e.shadow.camera))),e.visible!==void 0&&(a.visible=e.visible),e.frustumCulled!==void 0&&(a.frustumCulled=e.frustumCulled),e.renderOrder!==void 0&&(a.renderOrder=e.renderOrder),e.userData!==void 0&&(a.userData=e.userData),e.layers!==void 0&&(a.layers.mask=e.layers),e.children!==void 0){let o=e.children;for(let e=0;e<o.length;e++)a.add(this.parseObject(o[e],t,n,r,i))}if(e.animations!==void 0){let t=e.animations;for(let e=0;e<t.length;e++){let n=t[e];a.animations.push(i[n])}}if(e.type===`LOD`){e.autoUpdate!==void 0&&(a.autoUpdate=e.autoUpdate);let t=e.levels;for(let e=0;e<t.length;e++){let n=t[e],r=a.getObjectByProperty(`uuid`,n.object);r!==void 0&&a.addLevel(r,n.distance,n.hysteresis)}}return a}bindSkeletons(e,t){Object.keys(t).length!==0&&e.traverse(function(e){if(e.isSkinnedMesh===!0&&e.skeleton!==void 0){let n=t[e.skeleton];n===void 0?console.warn(`THREE.ObjectLoader: No skeleton found with UUID:`,e.skeleton):e.bind(n,e.bindMatrix)}})}bindLightTargets(e){e.traverse(function(t){if(t.isDirectionalLight||t.isSpotLight){let n=t.target,r=e.getObjectByProperty(`uuid`,n);t.target=r===void 0?new ps:r}})}},Cp={UVMapping:300,CubeReflectionMapping:301,CubeRefractionMapping:302,EquirectangularReflectionMapping:303,EquirectangularRefractionMapping:304,CubeUVReflectionMapping:306},wp={RepeatWrapping:Ir,ClampToEdgeWrapping:z,MirroredRepeatWrapping:Lr},Tp={NearestFilter:Rr,NearestMipmapNearestFilter:zr,NearestMipmapLinearFilter:Vr,LinearFilter:Ur,LinearMipmapNearestFilter:Wr,LinearMipmapLinearFilter:Kr},Ep=class extends Uf{constructor(e){super(e),this.isImageBitmapLoader=!0,typeof createImageBitmap>`u`&&console.warn(`THREE.ImageBitmapLoader: createImageBitmap() not supported.`),typeof fetch>`u`&&console.warn(`THREE.ImageBitmapLoader: fetch() not supported.`),this.options={premultiplyAlpha:`none`}}setOptions(e){return this.options=e,this}load(e,t,n,r){e===void 0&&(e=``),this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);let i=this,a=Bf.get(e);if(a!==void 0){if(i.manager.itemStart(e),a.then){a.then(n=>{t&&t(n),i.manager.itemEnd(e)}).catch(e=>{r&&r(e)});return}return setTimeout(function(){t&&t(a),i.manager.itemEnd(e)},0),a}let o={};o.credentials=this.crossOrigin===`anonymous`?`same-origin`:`include`,o.headers=this.requestHeader;let s=fetch(e,o).then(function(e){return e.blob()}).then(function(e){return createImageBitmap(e,Object.assign(i.options,{colorSpaceConversion:`none`}))}).then(function(n){return Bf.add(e,n),t&&t(n),i.manager.itemEnd(e),n}).catch(function(t){r&&r(t),Bf.remove(e),i.manager.itemError(e),i.manager.itemEnd(e)});Bf.add(e,s),i.manager.itemStart(e)}},Op=class{static getContext(){return Dp===void 0&&(Dp=new(window.AudioContext||window.webkitAudioContext)),Dp}static setContext(e){Dp=e}},kp=class extends Uf{constructor(e){super(e)}load(e,t,n,r){let i=this,a=new Kf(this.manager);a.setResponseType(`arraybuffer`),a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(e,function(e){try{let n=e.slice(0);Op.getContext().decodeAudioData(n,function(e){t(e)}).catch(o)}catch(e){o(e)}},n,r);function o(t){r?r(t):console.error(t),i.manager.itemError(e)}}},Ap=new U,jp=new U,Mp=new U,Np=class{constructor(){this.type=`StereoCamera`,this.aspect=1,this.eyeSep=.064,this.cameraL=new xc,this.cameraL.layers.enable(1),this.cameraL.matrixAutoUpdate=!1,this.cameraR=new xc,this.cameraR.layers.enable(2),this.cameraR.matrixAutoUpdate=!1,this._cache={focus:null,fov:null,aspect:null,near:null,far:null,zoom:null,eyeSep:null}}update(e){let t=this._cache;if(t.focus!==e.focus||t.fov!==e.fov||t.aspect!==e.aspect*this.aspect||t.near!==e.near||t.far!==e.far||t.zoom!==e.zoom||t.eyeSep!==this.eyeSep){t.focus=e.focus,t.fov=e.fov,t.aspect=e.aspect*this.aspect,t.near=e.near,t.far=e.far,t.zoom=e.zoom,t.eyeSep=this.eyeSep,Mp.copy(e.projectionMatrix);let n=t.eyeSep/2,r=n*t.near/t.focus,i=t.near*Math.tan(Va*t.fov*.5)/t.zoom,a,o;jp.elements[12]=-n,Ap.elements[12]=n,a=-i*t.aspect+r,o=i*t.aspect+r,Mp.elements[0]=2*t.near/(o-a),Mp.elements[8]=(o+a)/(o-a),this.cameraL.projectionMatrix.copy(Mp),a=-i*t.aspect-r,o=i*t.aspect-r,Mp.elements[0]=2*t.near/(o-a),Mp.elements[8]=(o+a)/(o-a),this.cameraR.projectionMatrix.copy(Mp)}this.cameraL.matrixWorld.copy(e.matrixWorld).multiply(jp),this.cameraR.matrixWorld.copy(e.matrixWorld).multiply(Ap)}},Pp=class{constructor(e=!0){this.autoStart=e,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}start(){this.startTime=Dr(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0}stop(){this.getElapsedTime(),this.running=!1,this.autoStart=!1}getElapsedTime(){return this.getDelta(),this.elapsedTime}getDelta(){let e=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){let t=Dr();e=(t-this.oldTime)/1e3,this.oldTime=t,this.elapsedTime+=e}return e}},Fp=new H,Ip=new fo,Lp=new H,Rp=new H,zp=class extends ps{constructor(){super(),this.type=`AudioListener`,this.context=Op.getContext(),this.gain=this.context.createGain(),this.gain.connect(this.context.destination),this.filter=null,this.timeDelta=0,this._clock=new Pp}getInput(){return this.gain}removeFilter(){return this.filter!==null&&(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination),this.gain.connect(this.context.destination),this.filter=null),this}getFilter(){return this.filter}setFilter(e){return this.filter===null?this.gain.disconnect(this.context.destination):(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination)),this.filter=e,this.gain.connect(this.filter),this.filter.connect(this.context.destination),this}getMasterVolume(){return this.gain.gain.value}setMasterVolume(e){return this.gain.gain.setTargetAtTime(e,this.context.currentTime,.01),this}updateMatrixWorld(e){super.updateMatrixWorld(e);let t=this.context.listener,n=this.up;if(this.timeDelta=this._clock.getDelta(),this.matrixWorld.decompose(Fp,Ip,Lp),Rp.set(0,0,-1).applyQuaternion(Ip),t.positionX){let e=this.context.currentTime+this.timeDelta;t.positionX.linearRampToValueAtTime(Fp.x,e),t.positionY.linearRampToValueAtTime(Fp.y,e),t.positionZ.linearRampToValueAtTime(Fp.z,e),t.forwardX.linearRampToValueAtTime(Rp.x,e),t.forwardY.linearRampToValueAtTime(Rp.y,e),t.forwardZ.linearRampToValueAtTime(Rp.z,e),t.upX.linearRampToValueAtTime(n.x,e),t.upY.linearRampToValueAtTime(n.y,e),t.upZ.linearRampToValueAtTime(n.z,e)}else t.setPosition(Fp.x,Fp.y,Fp.z),t.setOrientation(Rp.x,Rp.y,Rp.z,n.x,n.y,n.z)}},Bp=class extends ps{constructor(e){super(),this.type=`Audio`,this.listener=e,this.context=e.context,this.gain=this.context.createGain(),this.gain.connect(e.getInput()),this.autoplay=!1,this.buffer=null,this.detune=0,this.loop=!1,this.loopStart=0,this.loopEnd=0,this.offset=0,this.duration=void 0,this.playbackRate=1,this.isPlaying=!1,this.hasPlaybackControl=!0,this.source=null,this.sourceType=`empty`,this._startedAt=0,this._progress=0,this._connected=!1,this.filters=[]}getOutput(){return this.gain}setNodeSource(e){return this.hasPlaybackControl=!1,this.sourceType=`audioNode`,this.source=e,this.connect(),this}setMediaElementSource(e){return this.hasPlaybackControl=!1,this.sourceType=`mediaNode`,this.source=this.context.createMediaElementSource(e),this.connect(),this}setMediaStreamSource(e){return this.hasPlaybackControl=!1,this.sourceType=`mediaStreamNode`,this.source=this.context.createMediaStreamSource(e),this.connect(),this}setBuffer(e){return this.buffer=e,this.sourceType=`buffer`,this.autoplay&&this.play(),this}play(e=0){if(this.isPlaying===!0){console.warn(`THREE.Audio: Audio is already playing.`);return}if(this.hasPlaybackControl===!1){console.warn(`THREE.Audio: this Audio has no playback control.`);return}this._startedAt=this.context.currentTime+e;let t=this.context.createBufferSource();return t.buffer=this.buffer,t.loop=this.loop,t.loopStart=this.loopStart,t.loopEnd=this.loopEnd,t.onended=this.onEnded.bind(this),t.start(this._startedAt,this._progress+this.offset,this.duration),this.isPlaying=!0,this.source=t,this.setDetune(this.detune),this.setPlaybackRate(this.playbackRate),this.connect()}pause(){if(this.hasPlaybackControl===!1)console.warn(`THREE.Audio: this Audio has no playback control.`);else return this.isPlaying===!0&&(this._progress+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate,this.loop===!0&&(this._progress%=this.duration||this.buffer.duration),this.source.stop(),this.source.onended=null,this.isPlaying=!1),this}stop(e=0){if(this.hasPlaybackControl===!1)console.warn(`THREE.Audio: this Audio has no playback control.`);else return this._progress=0,this.source!==null&&(this.source.stop(this.context.currentTime+e),this.source.onended=null),this.isPlaying=!1,this}connect(){if(this.filters.length>0){this.source.connect(this.filters[0]);for(let e=1,t=this.filters.length;e<t;e++)this.filters[e-1].connect(this.filters[e]);this.filters[this.filters.length-1].connect(this.getOutput())}else this.source.connect(this.getOutput());return this._connected=!0,this}disconnect(){if(this._connected!==!1){if(this.filters.length>0){this.source.disconnect(this.filters[0]);for(let e=1,t=this.filters.length;e<t;e++)this.filters[e-1].disconnect(this.filters[e]);this.filters[this.filters.length-1].disconnect(this.getOutput())}else this.source.disconnect(this.getOutput());return this._connected=!1,this}}getFilters(){return this.filters}setFilters(e){return e||(e=[]),this._connected===!0?(this.disconnect(),this.filters=e.slice(),this.connect()):this.filters=e.slice(),this}setDetune(e){return this.detune=e,this.isPlaying===!0&&this.source.detune!==void 0&&this.source.detune.setTargetAtTime(this.detune,this.context.currentTime,.01),this}getDetune(){return this.detune}getFilter(){return this.getFilters()[0]}setFilter(e){return this.setFilters(e?[e]:[])}setPlaybackRate(e){if(this.hasPlaybackControl===!1)console.warn(`THREE.Audio: this Audio has no playback control.`);else return this.playbackRate=e,this.isPlaying===!0&&this.source.playbackRate.setTargetAtTime(this.playbackRate,this.context.currentTime,.01),this}getPlaybackRate(){return this.playbackRate}onEnded(){this.isPlaying=!1}getLoop(){return this.hasPlaybackControl===!1?(console.warn(`THREE.Audio: this Audio has no playback control.`),!1):this.loop}setLoop(e){if(this.hasPlaybackControl===!1)console.warn(`THREE.Audio: this Audio has no playback control.`);else return this.loop=e,this.isPlaying===!0&&(this.source.loop=this.loop),this}setLoopStart(e){return this.loopStart=e,this}setLoopEnd(e){return this.loopEnd=e,this}getVolume(){return this.gain.gain.value}setVolume(e){return this.gain.gain.setTargetAtTime(e,this.context.currentTime,.01),this}},Vp=new H,Hp=new fo,Up=new H,Wp=new H,Gp=class extends Bp{constructor(e){super(e),this.panner=this.context.createPanner(),this.panner.panningModel=`HRTF`,this.panner.connect(this.gain)}connect(){super.connect(),this.panner.connect(this.gain)}disconnect(){super.disconnect(),this.panner.disconnect(this.gain)}getOutput(){return this.panner}getRefDistance(){return this.panner.refDistance}setRefDistance(e){return this.panner.refDistance=e,this}getRolloffFactor(){return this.panner.rolloffFactor}setRolloffFactor(e){return this.panner.rolloffFactor=e,this}getDistanceModel(){return this.panner.distanceModel}setDistanceModel(e){return this.panner.distanceModel=e,this}getMaxDistance(){return this.panner.maxDistance}setMaxDistance(e){return this.panner.maxDistance=e,this}setDirectionalCone(e,t,n){return this.panner.coneInnerAngle=e,this.panner.coneOuterAngle=t,this.panner.coneOuterGain=n,this}updateMatrixWorld(e){if(super.updateMatrixWorld(e),this.hasPlaybackControl===!0&&this.isPlaying===!1)return;this.matrixWorld.decompose(Vp,Hp,Up),Wp.set(0,0,1).applyQuaternion(Hp);let t=this.panner;if(t.positionX){let e=this.context.currentTime+this.listener.timeDelta;t.positionX.linearRampToValueAtTime(Vp.x,e),t.positionY.linearRampToValueAtTime(Vp.y,e),t.positionZ.linearRampToValueAtTime(Vp.z,e),t.orientationX.linearRampToValueAtTime(Wp.x,e),t.orientationY.linearRampToValueAtTime(Wp.y,e),t.orientationZ.linearRampToValueAtTime(Wp.z,e)}else t.setPosition(Vp.x,Vp.y,Vp.z),t.setOrientation(Wp.x,Wp.y,Wp.z)}},Kp=class{constructor(e,t=2048){this.analyser=e.context.createAnalyser(),this.analyser.fftSize=t,this.data=new Uint8Array(this.analyser.frequencyBinCount),e.getOutput().connect(this.analyser)}getFrequencyData(){return this.analyser.getByteFrequencyData(this.data),this.data}getAverageFrequency(){let e=0,t=this.getFrequencyData();for(let n=0;n<t.length;n++)e+=t[n];return e/t.length}},qp=class{constructor(e,t,n){this.binding=e,this.valueSize=n;let r,i,a;switch(t){case`quaternion`:r=this._slerp,i=this._slerpAdditive,a=this._setAdditiveIdentityQuaternion,this.buffer=new Float64Array(n*6),this._workIndex=5;break;case`string`:case`bool`:r=this._select,i=this._select,a=this._setAdditiveIdentityOther,this.buffer=Array(n*5);break;default:r=this._lerp,i=this._lerpAdditive,a=this._setAdditiveIdentityNumeric,this.buffer=new Float64Array(n*5)}this._mixBufferRegion=r,this._mixBufferRegionAdditive=i,this._setIdentity=a,this._origIndex=3,this._addIndex=4,this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,this.useCount=0,this.referenceCount=0}accumulate(e,t){let n=this.buffer,r=this.valueSize,i=e*r+r,a=this.cumulativeWeight;if(a===0){for(let e=0;e!==r;++e)n[i+e]=n[e];a=t}else{a+=t;let e=t/a;this._mixBufferRegion(n,i,0,e,r)}this.cumulativeWeight=a}accumulateAdditive(e){let t=this.buffer,n=this.valueSize,r=n*this._addIndex;this.cumulativeWeightAdditive===0&&this._setIdentity(),this._mixBufferRegionAdditive(t,r,0,e,n),this.cumulativeWeightAdditive+=e}apply(e){let t=this.valueSize,n=this.buffer,r=e*t+t,i=this.cumulativeWeight,a=this.cumulativeWeightAdditive,o=this.binding;if(this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,i<1){let e=t*this._origIndex;this._mixBufferRegion(n,r,e,1-i,t)}a>0&&this._mixBufferRegionAdditive(n,r,this._addIndex*t,1,t);for(let e=t,i=t+t;e!==i;++e)if(n[e]!==n[e+t]){o.setValue(n,r);break}}saveOriginalState(){let e=this.binding,t=this.buffer,n=this.valueSize,r=n*this._origIndex;e.getValue(t,r);for(let e=n,i=r;e!==i;++e)t[e]=t[r+e%n];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){let e=this.valueSize*3;this.binding.setValue(this.buffer,e)}_setAdditiveIdentityNumeric(){let e=this._addIndex*this.valueSize,t=e+this.valueSize;for(let n=e;n<t;n++)this.buffer[n]=0}_setAdditiveIdentityQuaternion(){this._setAdditiveIdentityNumeric(),this.buffer[this._addIndex*this.valueSize+3]=1}_setAdditiveIdentityOther(){let e=this._origIndex*this.valueSize,t=this._addIndex*this.valueSize;for(let n=0;n<this.valueSize;n++)this.buffer[t+n]=this.buffer[e+n]}_select(e,t,n,r,i){if(r>=.5)for(let r=0;r!==i;++r)e[t+r]=e[n+r]}_slerp(e,t,n,r){fo.slerpFlat(e,t,e,t,e,n,r)}_slerpAdditive(e,t,n,r,i){let a=this._workIndex*i;fo.multiplyQuaternionsFlat(e,a,e,t,e,n),fo.slerpFlat(e,t,e,t,e,a,r)}_lerp(e,t,n,r,i){let a=1-r;for(let o=0;o!==i;++o){let i=t+o;e[i]=e[i]*a+e[n+o]*r}}_lerpAdditive(e,t,n,r,i){for(let a=0;a!==i;++a){let i=t+a;e[i]=e[i]+e[n+a]*r}}},Jp=`\\[\\]\\.:\\/`,Yp=RegExp(`[\\[\\]\\.:\\/]`,`g`),Xp=`[^\\[\\]\\.:\\/]`,Zp=`[^`+Jp.replace(`\\.`,``)+`]`,Qp=`((?:WC+[\\/:])*)`.replace(`WC`,Xp),$p=`(WCOD+)?`.replace(`WCOD`,Zp),em=`(?:\\.(WC+)(?:\\[(.+)\\])?)?`.replace(`WC`,Xp),tm=`\\.(WC+)(?:\\[(.+)\\])?`.replace(`WC`,Xp),nm=RegExp(`^`+Qp+$p+em+tm+`$`),rm=[`material`,`materials`,`bones`,`map`],im=class{constructor(e,t,n){let r=n||am.parseTrackName(t);this._targetGroup=e,this._bindings=e.subscribe_(t,r)}getValue(e,t){this.bind();let n=this._targetGroup.nCachedObjects_,r=this._bindings[n];r!==void 0&&r.getValue(e,t)}setValue(e,t){let n=this._bindings;for(let r=this._targetGroup.nCachedObjects_,i=n.length;r!==i;++r)n[r].setValue(e,t)}bind(){let e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,n=e.length;t!==n;++t)e[t].bind()}unbind(){let e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,n=e.length;t!==n;++t)e[t].unbind()}},am=class e{constructor(t,n,r){this.path=n,this.parsedPath=r||e.parseTrackName(n),this.node=e.findNode(t,this.parsedPath.nodeName),this.rootNode=t,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(t,n,r){return t&&t.isAnimationObjectGroup?new e.Composite(t,n,r):new e(t,n,r)}static sanitizeNodeName(e){return e.replace(/\s/g,`_`).replace(Yp,``)}static parseTrackName(e){let t=nm.exec(e);if(t===null)throw Error(`PropertyBinding: Cannot parse trackName: `+e);let n={nodeName:t[2],objectName:t[3],objectIndex:t[4],propertyName:t[5],propertyIndex:t[6]},r=n.nodeName&&n.nodeName.lastIndexOf(`.`);if(r!==void 0&&r!==-1){let e=n.nodeName.substring(r+1);rm.indexOf(e)!==-1&&(n.nodeName=n.nodeName.substring(0,r),n.objectName=e)}if(n.propertyName===null||n.propertyName.length===0)throw Error(`PropertyBinding: can not parse propertyName from trackName: `+e);return n}static findNode(e,t){if(t===void 0||t===``||t===`.`||t===-1||t===e.name||t===e.uuid)return e;if(e.skeleton){let n=e.skeleton.getBoneByName(t);if(n!==void 0)return n}if(e.children){let n=function(e){for(let r=0;r<e.length;r++){let i=e[r];if(i.name===t||i.uuid===t)return i;let a=n(i.children);if(a)return a}return null},r=n(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 n=this.resolvedProperty;for(let r=0,i=n.length;r!==i;++r)e[t++]=n[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 n=this.resolvedProperty;for(let r=0,i=n.length;r!==i;++r)n[r]=e[t++]}_setValue_array_setNeedsUpdate(e,t){let n=this.resolvedProperty;for(let r=0,i=n.length;r!==i;++r)n[r]=e[t++];this.targetObject.needsUpdate=!0}_setValue_array_setMatrixWorldNeedsUpdate(e,t){let n=this.resolvedProperty;for(let r=0,i=n.length;r!==i;++r)n[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 t=this.node,n=this.parsedPath,r=n.objectName,i=n.propertyName,a=n.propertyIndex;if(t||(t=e.findNode(this.rootNode,n.nodeName),this.node=t),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,!t){console.warn(`THREE.PropertyBinding: No target node found for track: `+this.path+`.`);return}if(r){let e=n.objectIndex;switch(r){case`materials`:if(!t.material){console.error(`THREE.PropertyBinding: Can not bind to material as node does not have a material.`,this);return}if(!t.material.materials){console.error(`THREE.PropertyBinding: Can not bind to material.materials as node.material does not have a materials array.`,this);return}t=t.material.materials;break;case`bones`:if(!t.skeleton){console.error(`THREE.PropertyBinding: Can not bind to bones as node does not have a skeleton.`,this);return}t=t.skeleton.bones;for(let n=0;n<t.length;n++)if(t[n].name===e){e=n;break}break;case`map`:if(`map`in t){t=t.map;break}if(!t.material){console.error(`THREE.PropertyBinding: Can not bind to material as node does not have a material.`,this);return}if(!t.material.map){console.error(`THREE.PropertyBinding: Can not bind to material.map as node.material does not have a map.`,this);return}t=t.material.map;break;default:if(t[r]===void 0){console.error(`THREE.PropertyBinding: Can not bind to objectName of node undefined.`,this);return}t=t[r]}if(e!==void 0){if(t[e]===void 0){console.error(`THREE.PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.`,this,t);return}t=t[e]}}let o=t[i];if(o===void 0){let e=n.nodeName;console.error(`THREE.PropertyBinding: Trying to update property for track: `+e+`.`+i+` but it wasn't found.`,t);return}let s=this.Versioning.None;this.targetObject=t,t.needsUpdate===void 0?t.matrixWorldNeedsUpdate!==void 0&&(s=this.Versioning.MatrixWorldNeedsUpdate):s=this.Versioning.NeedsUpdate;let c=this.BindingType.Direct;if(a!==void 0){if(i===`morphTargetInfluences`){if(!t.geometry){console.error(`THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.`,this);return}if(!t.geometry.morphAttributes){console.error(`THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.`,this);return}t.morphTargetDictionary[a]!==void 0&&(a=t.morphTargetDictionary[a])}c=this.BindingType.ArrayElement,this.resolvedProperty=o,this.propertyIndex=a}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=i;this.getValue=this.GetterByBindingType[c],this.setValue=this.SetterByBindingTypeAndVersioning[c][s]}unbind(){this.node=null,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}},am.Composite=im,am.prototype.BindingType={Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3},am.prototype.Versioning={None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2},am.prototype.GetterByBindingType=[am.prototype._getValue_direct,am.prototype._getValue_array,am.prototype._getValue_arrayElement,am.prototype._getValue_toArray],am.prototype.SetterByBindingTypeAndVersioning=[[am.prototype._setValue_direct,am.prototype._setValue_direct_setNeedsUpdate,am.prototype._setValue_direct_setMatrixWorldNeedsUpdate],[am.prototype._setValue_array,am.prototype._setValue_array_setNeedsUpdate,am.prototype._setValue_array_setMatrixWorldNeedsUpdate],[am.prototype._setValue_arrayElement,am.prototype._setValue_arrayElement_setNeedsUpdate,am.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate],[am.prototype._setValue_fromArray,am.prototype._setValue_fromArray_setNeedsUpdate,am.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate]],om=class{constructor(){this.isAnimationObjectGroup=!0,this.uuid=o(),this._objects=Array.prototype.slice.call(arguments),this.nCachedObjects_=0;let e={};this._indicesByUUID=e;for(let t=0,n=arguments.length;t!==n;++t)e[arguments[t].uuid]=t;this._paths=[],this._parsedPaths=[],this._bindings=[],this._bindingsIndicesByPath={};let t=this;this.stats={objects:{get total(){return t._objects.length},get inUse(){return this.total-t.nCachedObjects_}},get bindingsPerObject(){return t._bindings.length}}}add(){let e=this._objects,t=this._indicesByUUID,n=this._paths,r=this._parsedPaths,i=this._bindings,a=i.length,o,s=e.length,c=this.nCachedObjects_;for(let l=0,u=arguments.length;l!==u;++l){let u=arguments[l],d=u.uuid,f=t[d];if(f===void 0){f=s++,t[d]=f,e.push(u);for(let e=0,t=a;e!==t;++e)i[e].push(new am(u,n[e],r[e]))}else if(f<c){o=e[f];let s=--c,l=e[s];t[l.uuid]=f,e[f]=l,t[d]=s,e[s]=u;for(let e=0,t=a;e!==t;++e){let t=i[e],a=t[s],o=t[f];t[f]=a,o===void 0&&(o=new am(u,n[e],r[e])),t[s]=o}}else e[f]!==o&&console.error(`THREE.AnimationObjectGroup: Different objects with the same UUID detected. Clean the caches or recreate your infrastructure when reloading scenes.`)}this.nCachedObjects_=c}remove(){let e=this._objects,t=this._indicesByUUID,n=this._bindings,r=n.length,i=this.nCachedObjects_;for(let a=0,o=arguments.length;a!==o;++a){let o=arguments[a],s=o.uuid,c=t[s];if(c!==void 0&&c>=i){let a=i++,l=e[a];t[l.uuid]=c,e[c]=l,t[s]=a,e[a]=o;for(let e=0,t=r;e!==t;++e){let t=n[e],r=t[a],i=t[c];t[c]=r,t[a]=i}}}this.nCachedObjects_=i}uncache(){let e=this._objects,t=this._indicesByUUID,n=this._bindings,r=n.length,i=this.nCachedObjects_,a=e.length;for(let o=0,s=arguments.length;o!==s;++o){let s=arguments[o].uuid,c=t[s];if(c!==void 0){if(delete t[s],c<i){let o=--i,s=e[o],l=--a,u=e[l];t[s.uuid]=c,e[c]=s,t[u.uuid]=o,e[o]=u,e.pop();for(let e=0,t=r;e!==t;++e){let t=n[e],r=t[o],i=t[l];t[c]=r,t[o]=i,t.pop()}}else{let i=--a,o=e[i];i>0&&(t[o.uuid]=c),e[c]=o,e.pop();for(let e=0,t=r;e!==t;++e){let t=n[e];t[c]=t[i],t.pop()}}}}this.nCachedObjects_=i}subscribe_(e,t){let n=this._bindingsIndicesByPath,r=n[e],i=this._bindings;if(r!==void 0)return i[r];let a=this._paths,o=this._parsedPaths,s=this._objects,c=s.length,l=this.nCachedObjects_,u=Array(c);r=i.length,n[e]=r,a.push(e),o.push(t),i.push(u);for(let n=l,r=s.length;n!==r;++n){let r=s[n];u[n]=new am(r,e,t)}return u}unsubscribe_(e){let t=this._bindingsIndicesByPath,n=t[e];if(n!==void 0){let r=this._paths,i=this._parsedPaths,a=this._bindings,o=a.length-1,s=a[o],c=e[o];t[c]=n,a[n]=s,a.pop(),i[n]=i[o],i.pop(),r[n]=r[o],r.pop()}}},sm=class{constructor(e,t,n=null,r=t.blendMode){this._mixer=e,this._clip=t,this._localRoot=n,this.blendMode=r;let i=t.tracks,a=i.length,o=Array(a),s={endingStart:ra,endingEnd:ra};for(let e=0;e!==a;++e){let t=i[e].createInterpolant(null);o[e]=t,t.settings=s}this._interpolantSettings=s,this._interpolants=o,this._propertyBindings=Array(a),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=Qi,this._loopCount=-1,this._startTime=null,this.time=0,this.timeScale=1,this._effectiveTimeScale=1,this.weight=1,this._effectiveWeight=1,this.repetitions=1/0,this.paused=!1,this.enabled=!0,this.clampWhenFinished=!1,this.zeroSlopeAtStart=!0,this.zeroSlopeAtEnd=!0}play(){return this._mixer._activateAction(this),this}stop(){return this._mixer._deactivateAction(this),this.reset()}reset(){return this.paused=!1,this.enabled=!0,this.time=0,this._loopCount=-1,this._startTime=null,this.stopFading().stopWarping()}isRunning(){return this.enabled&&!this.paused&&this.timeScale!==0&&this._startTime===null&&this._mixer._isActiveAction(this)}isScheduled(){return this._mixer._isActiveAction(this)}startAt(e){return this._startTime=e,this}setLoop(e,t){return this.loop=e,this.repetitions=t,this}setEffectiveWeight(e){return this.weight=e,this._effectiveWeight=this.enabled?e:0,this.stopFading()}getEffectiveWeight(){return this._effectiveWeight}fadeIn(e){return this._scheduleFading(e,0,1)}fadeOut(e){return this._scheduleFading(e,1,0)}crossFadeFrom(e,t,n){if(e.fadeOut(t),this.fadeIn(t),n){let n=this._clip.duration,r=e._clip.duration,i=r/n,a=n/r;e.warp(1,i,t),this.warp(a,1,t)}return this}crossFadeTo(e,t,n){return e.crossFadeFrom(this,t,n)}stopFading(){let e=this._weightInterpolant;return e!==null&&(this._weightInterpolant=null,this._mixer._takeBackControlInterpolant(e)),this}setEffectiveTimeScale(e){return this.timeScale=e,this._effectiveTimeScale=this.paused?0:e,this.stopWarping()}getEffectiveTimeScale(){return this._effectiveTimeScale}setDuration(e){return this.timeScale=this._clip.duration/e,this.stopWarping()}syncWith(e){return this.time=e.time,this.timeScale=e.timeScale,this.stopWarping()}halt(e){return this.warp(this._effectiveTimeScale,0,e)}warp(e,t,n){let r=this._mixer,i=r.time,a=this.timeScale,o=this._timeScaleInterpolant;o===null&&(o=r._lendControlInterpolant(),this._timeScaleInterpolant=o);let s=o.parameterPositions,c=o.sampleValues;return s[0]=i,s[1]=i+n,c[0]=e/a,c[1]=t/a,this}stopWarping(){let e=this._timeScaleInterpolant;return e!==null&&(this._timeScaleInterpolant=null,this._mixer._takeBackControlInterpolant(e)),this}getMixer(){return this._mixer}getClip(){return this._clip}getRoot(){return this._localRoot||this._mixer._root}_update(e,t,n,r){if(!this.enabled){this._updateWeight(e);return}let i=this._startTime;if(i!==null){let r=(e-i)*n;r<0||n===0?t=0:(this._startTime=null,t=n*r)}t*=this._updateTimeScale(e);let a=this._updateTime(t),o=this._updateWeight(e);if(o>0){let e=this._interpolants,t=this._propertyBindings;switch(this.blendMode){case sa:for(let n=0,r=e.length;n!==r;++n)e[n].evaluate(a),t[n].accumulateAdditive(o);break;case oa:default:for(let n=0,i=e.length;n!==i;++n)e[n].evaluate(a),t[n].accumulate(r,o)}}}_updateWeight(e){let t=0;if(this.enabled){t=this.weight;let n=this._weightInterpolant;if(n!==null){let r=n.evaluate(e)[0];t*=r,e>n.parameterPositions[1]&&(this.stopFading(),r===0&&(this.enabled=!1))}}return this._effectiveWeight=t,t}_updateTimeScale(e){let t=0;if(!this.paused){t=this.timeScale;let n=this._timeScaleInterpolant;if(n!==null){let r=n.evaluate(e)[0];t*=r,e>n.parameterPositions[1]&&(this.stopWarping(),t===0?this.paused=!0:this.timeScale=t)}}return this._effectiveTimeScale=t,t}_updateTime(e){let t=this._clip.duration,n=this.loop,r=this.time+e,i=this._loopCount,a=n===$i;if(e===0)return i===-1?r:a&&(i&1)==1?t-r:r;if(n===2200){i===-1&&(this._loopCount=0,this._setEndings(!0,!0,!1));handle_stop:{if(r>=t)r=t;else if(r<0)r=0;else{this.time=r;break handle_stop}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=r,this._mixer.dispatchEvent({type:`finished`,action:this,direction:e<0?-1:1})}}else{if(i===-1&&(e>=0?(i=0,this._setEndings(!0,this.repetitions===0,a)):this._setEndings(this.repetitions===0,!0,a)),r>=t||r<0){let n=Math.floor(r/t);r-=t*n,i+=Math.abs(n);let o=this.repetitions-i;if(o<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,r=e>0?t:0,this.time=r,this._mixer.dispatchEvent({type:`finished`,action:this,direction:e>0?1:-1});else{if(o===1){let t=e<0;this._setEndings(t,!t,a)}else this._setEndings(!1,!1,a);this._loopCount=i,this.time=r,this._mixer.dispatchEvent({type:`loop`,action:this,loopDelta:n})}}else this.time=r;if(a&&(i&1)==1)return t-r}return r}_setEndings(e,t,n){let r=this._interpolantSettings;n?(r.endingStart=ia,r.endingEnd=ia):(r.endingStart=e?this.zeroSlopeAtStart?ia:ra:aa,r.endingEnd=t?this.zeroSlopeAtEnd?ia:ra:aa)}_scheduleFading(e,t,n){let r=this._mixer,i=r.time,a=this._weightInterpolant;a===null&&(a=r._lendControlInterpolant(),this._weightInterpolant=a);let o=a.parameterPositions,s=a.sampleValues;return o[0]=i,s[0]=t,o[1]=i+e,s[1]=n,this}},cm=new Float32Array(1),lm=class extends Ra{constructor(e){super(),this._root=e,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}_bindAction(e,t){let n=e._localRoot||this._root,r=e._clip.tracks,i=r.length,a=e._propertyBindings,o=e._interpolants,s=n.uuid,c=this._bindingsByRootAndName,l=c[s];l===void 0&&(l={},c[s]=l);for(let e=0;e!==i;++e){let i=r[e],c=i.name,u=l[c];if(u!==void 0)++u.referenceCount,a[e]=u;else{if(u=a[e],u!==void 0){u._cacheIndex===null&&(++u.referenceCount,this._addInactiveBinding(u,s,c));continue}let r=t&&t._propertyBindings[e].binding.parsedPath;u=new qp(am.create(n,c,r),i.ValueTypeName,i.getValueSize()),++u.referenceCount,this._addInactiveBinding(u,s,c),a[e]=u}o[e].resultBuffer=u.buffer}}_activateAction(e){if(!this._isActiveAction(e)){if(e._cacheIndex===null){let t=(e._localRoot||this._root).uuid,n=e._clip.uuid,r=this._actionsByClip[n];this._bindAction(e,r&&r.knownActions[0]),this._addInactiveAction(e,n,t)}let t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){let n=t[e];n.useCount++===0&&(this._lendBinding(n),n.saveOriginalState())}this._lendAction(e)}}_deactivateAction(e){if(this._isActiveAction(e)){let t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){let n=t[e];--n.useCount===0&&(n.restoreOriginalState(),this._takeBackBinding(n))}this._takeBackAction(e)}}_initMemoryManager(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;let e=this;this.stats={actions:{get total(){return e._actions.length},get inUse(){return e._nActiveActions}},bindings:{get total(){return e._bindings.length},get inUse(){return e._nActiveBindings}},controlInterpolants:{get total(){return e._controlInterpolants.length},get inUse(){return e._nActiveControlInterpolants}}}}_isActiveAction(e){let t=e._cacheIndex;return t!==null&&t<this._nActiveActions}_addInactiveAction(e,t,n){let r=this._actions,i=this._actionsByClip,a=i[t];if(a===void 0)a={knownActions:[e],actionByRoot:{}},e._byClipCacheIndex=0,i[t]=a;else{let t=a.knownActions;e._byClipCacheIndex=t.length,t.push(e)}e._cacheIndex=r.length,r.push(e),a.actionByRoot[n]=e}_removeInactiveAction(e){let t=this._actions,n=t[t.length-1],r=e._cacheIndex;n._cacheIndex=r,t[r]=n,t.pop(),e._cacheIndex=null;let i=e._clip.uuid,a=this._actionsByClip,o=a[i],s=o.knownActions,c=s[s.length-1],l=e._byClipCacheIndex;c._byClipCacheIndex=l,s[l]=c,s.pop(),e._byClipCacheIndex=null;let u=o.actionByRoot,d=(e._localRoot||this._root).uuid;delete u[d],s.length===0&&delete a[i],this._removeInactiveBindingsForAction(e)}_removeInactiveBindingsForAction(e){let t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){let n=t[e];--n.referenceCount===0&&this._removeInactiveBinding(n)}}_lendAction(e){let t=this._actions,n=e._cacheIndex,r=this._nActiveActions++,i=t[r];e._cacheIndex=r,t[r]=e,i._cacheIndex=n,t[n]=i}_takeBackAction(e){let t=this._actions,n=e._cacheIndex,r=--this._nActiveActions,i=t[r];e._cacheIndex=r,t[r]=e,i._cacheIndex=n,t[n]=i}_addInactiveBinding(e,t,n){let r=this._bindingsByRootAndName,i=this._bindings,a=r[t];a===void 0&&(a={},r[t]=a),a[n]=e,e._cacheIndex=i.length,i.push(e)}_removeInactiveBinding(e){let t=this._bindings,n=e.binding,r=n.rootNode.uuid,i=n.path,a=this._bindingsByRootAndName,o=a[r],s=t[t.length-1],c=e._cacheIndex;s._cacheIndex=c,t[c]=s,t.pop(),delete o[i],Object.keys(o).length===0&&delete a[r]}_lendBinding(e){let t=this._bindings,n=e._cacheIndex,r=this._nActiveBindings++,i=t[r];e._cacheIndex=r,t[r]=e,i._cacheIndex=n,t[n]=i}_takeBackBinding(e){let t=this._bindings,n=e._cacheIndex,r=--this._nActiveBindings,i=t[r];e._cacheIndex=r,t[r]=e,i._cacheIndex=n,t[n]=i}_lendControlInterpolant(){let e=this._controlInterpolants,t=this._nActiveControlInterpolants++,n=e[t];return n===void 0&&(n=new kf(new Float32Array(2),new Float32Array(2),1,cm),n.__cacheIndex=t,e[t]=n),n}_takeBackControlInterpolant(e){let t=this._controlInterpolants,n=e.__cacheIndex,r=--this._nActiveControlInterpolants,i=t[r];e.__cacheIndex=r,t[r]=e,i.__cacheIndex=n,t[n]=i}clipAction(e,t,n){let r=t||this._root,i=r.uuid,a=typeof e==`string`?zf.findByName(r,e):e,o=a===null?e:a.uuid,s=this._actionsByClip[o],c=null;if(n===void 0&&(n=a===null?oa:a.blendMode),s!==void 0){let e=s.actionByRoot[i];if(e!==void 0&&e.blendMode===n)return e;c=s.knownActions[0],a===null&&(a=c._clip)}if(a===null)return null;let l=new sm(this,a,t,n);return this._bindAction(l,c),this._addInactiveAction(l,o,i),l}existingAction(e,t){let n=t||this._root,r=n.uuid,i=typeof e==`string`?zf.findByName(n,e):e,a=i?i.uuid:e,o=this._actionsByClip[a];return o===void 0?null:o.actionByRoot[r]||null}stopAllAction(){let e=this._actions,t=this._nActiveActions;for(let n=t-1;n>=0;--n)e[n].stop();return this}update(e){e*=this.timeScale;let t=this._actions,n=this._nActiveActions,r=this.time+=e,i=Math.sign(e),a=this._accuIndex^=1;for(let o=0;o!==n;++o)t[o]._update(r,e,i,a);let o=this._bindings,s=this._nActiveBindings;for(let e=0;e!==s;++e)o[e].apply(a);return this}setTime(e){this.time=0;for(let e=0;e<this._actions.length;e++)this._actions[e].time=0;return this.update(e)}getRoot(){return this._root}uncacheClip(e){let t=this._actions,n=e.uuid,r=this._actionsByClip,i=r[n];if(i!==void 0){let e=i.knownActions;for(let n=0,r=e.length;n!==r;++n){let r=e[n];this._deactivateAction(r);let i=r._cacheIndex,a=t[t.length-1];r._cacheIndex=null,r._byClipCacheIndex=null,a._cacheIndex=i,t[i]=a,t.pop(),this._removeInactiveBindingsForAction(r)}delete r[n]}}uncacheRoot(e){let t=e.uuid,n=this._actionsByClip;for(let e in n){let r=n[e].actionByRoot[t];r!==void 0&&(this._deactivateAction(r),this._removeInactiveAction(r))}let r=this._bindingsByRootAndName[t];if(r!==void 0)for(let e in r){let t=r[e];t.restoreOriginalState(),this._removeInactiveBinding(t)}}uncacheAction(e,t){let n=this.existingAction(e,t);n!==null&&(this._deactivateAction(n),this._removeInactiveAction(n))}},um=class e{constructor(e){this.value=e}clone(){return new e(this.value.clone===void 0?this.value:this.value.clone())}},dm=0,fm=class extends Ra{constructor(){super(),this.isUniformsGroup=!0,Object.defineProperty(this,"id",{value:dm++}),this.name=``,this.usage=Ea,this.uniforms=[]}add(e){return this.uniforms.push(e),this}remove(e){let t=this.uniforms.indexOf(e);return t!==-1&&this.uniforms.splice(t,1),this}setName(e){return this.name=e,this}setUsage(e){return this.usage=e,this}dispose(){return this.dispatchEvent({type:`dispose`}),this}copy(e){this.name=e.name,this.usage=e.usage;let t=e.uniforms;this.uniforms.length=0;for(let e=0,n=t.length;e<n;e++){let n=Array.isArray(t[e])?t[e]:[t[e]];for(let e=0;e<n.length;e++)this.uniforms.push(n[e].clone())}return this}clone(){return new this.constructor().copy(this)}},pm=class extends Gl{constructor(e,t,n=1){super(e,t),this.isInstancedInterleavedBuffer=!0,this.meshPerAttribute=n}copy(e){return super.copy(e),this.meshPerAttribute=e.meshPerAttribute,this}clone(e){let t=super.clone(e);return t.meshPerAttribute=this.meshPerAttribute,t}toJSON(e){let t=super.toJSON(e);return t.isInstancedInterleavedBuffer=!0,t.meshPerAttribute=this.meshPerAttribute,t}},mm=class{constructor(e,t,n,r,i){this.isGLBufferAttribute=!0,this.name=``,this.buffer=e,this.type=t,this.itemSize=n,this.elementSize=r,this.count=i,this.version=0}set needsUpdate(e){e===!0&&this.version++}setBuffer(e){return this.buffer=e,this}setType(e,t){return this.type=e,this.elementSize=t,this}setItemSize(e){return this.itemSize=e,this}setCount(e){return this.count=e,this}},hm=new U,gm=class{constructor(e,t,n=0,r=1/0){this.ray=new Bo(e,t),this.near=n,this.far=r,this.camera=null,this.layers=new Zo,this.params={Mesh:{},Line:{threshold:1},LOD:{},Points:{threshold:1},Sprite:{}}}set(e,t){this.ray.set(e,t)}setFromCamera(e,t){t.isPerspectiveCamera?(this.ray.origin.setFromMatrixPosition(t.matrixWorld),this.ray.direction.set(e.x,e.y,.5).unproject(t).sub(this.ray.origin).normalize(),this.camera=t):t.isOrthographicCamera?(this.ray.origin.set(e.x,e.y,(t.near+t.far)/(t.near-t.far)).unproject(t),this.ray.direction.set(0,0,-1).transformDirection(t.matrixWorld),this.camera=t):console.error(`THREE.Raycaster: Unsupported camera type: `+t.type)}setFromXRController(e){return hm.identity().extractRotation(e.matrixWorld),this.ray.origin.setFromMatrixPosition(e.matrixWorld),this.ray.direction.set(0,0,-1).applyMatrix4(hm),this}intersectObject(e,t=!0,n=[]){return kr(e,this,n,t),n.sort(Or),n}intersectObjects(e,t=!0,n=[]){for(let r=0,i=e.length;r<i;r++)kr(e[r],this,n,t);return n.sort(Or),n}},_m=class{constructor(e=1,t=0,n=0){return this.radius=e,this.phi=t,this.theta=n,this}set(e,t,n){return this.radius=e,this.phi=t,this.theta=n,this}copy(e){return this.radius=e.radius,this.phi=e.phi,this.theta=e.theta,this}makeSafe(){let e=1e-6;return this.phi=Math.max(e,Math.min(Math.PI-e,this.phi)),this}setFromVector3(e){return this.setFromCartesianCoords(e.x,e.y,e.z)}setFromCartesianCoords(e,t,n){return this.radius=Math.sqrt(e*e+t*t+n*n),this.radius===0?(this.theta=0,this.phi=0):(this.theta=Math.atan2(e,n),this.phi=Math.acos(s(t/this.radius,-1,1))),this}clone(){return new this.constructor().copy(this)}},vm=class{constructor(e=1,t=0,n=0){return this.radius=e,this.theta=t,this.y=n,this}set(e,t,n){return this.radius=e,this.theta=t,this.y=n,this}copy(e){return this.radius=e.radius,this.theta=e.theta,this.y=e.y,this}setFromVector3(e){return this.setFromCartesianCoords(e.x,e.y,e.z)}setFromCartesianCoords(e,t,n){return this.radius=Math.sqrt(e*e+n*n),this.theta=Math.atan2(e,n),this.y=t,this}clone(){return new this.constructor().copy(this)}},ym=class e{constructor(t,n,r,i){e.prototype.isMatrix2=!0,this.elements=[1,0,0,1],t!==void 0&&this.set(t,n,r,i)}identity(){return this.set(1,0,0,1),this}fromArray(e,t=0){for(let n=0;n<4;n++)this.elements[n]=e[n+t];return this}set(e,t,n,r){let i=this.elements;return i[0]=e,i[2]=t,i[1]=n,i[3]=r,this}},bm=new B,xm=class{constructor(e=new B(1/0,1/0),t=new B(-1/0,-1/0)){this.isBox2=!0,this.min=e,this.max=t}set(e,t){return this.min.copy(e),this.max.copy(t),this}setFromPoints(e){this.makeEmpty();for(let t=0,n=e.length;t<n;t++)this.expandByPoint(e[t]);return this}setFromCenterAndSize(e,t){let n=bm.copy(t).multiplyScalar(.5);return this.min.copy(e).sub(n),this.max.copy(e).add(n),this}clone(){return new this.constructor().copy(this)}copy(e){return this.min.copy(e.min),this.max.copy(e.max),this}makeEmpty(){return this.min.x=this.min.y=1/0,this.max.x=this.max.y=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y}getCenter(e){return this.isEmpty()?e.set(0,0):e.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(e){return this.isEmpty()?e.set(0,0):e.subVectors(this.max,this.min)}expandByPoint(e){return this.min.min(e),this.max.max(e),this}expandByVector(e){return this.min.sub(e),this.max.add(e),this}expandByScalar(e){return this.min.addScalar(-e),this.max.addScalar(e),this}containsPoint(e){return e.x>=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y))}intersectsBox(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,bm).distanceTo(e)}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}},Sm=new H,Cm=new H,wm=class{constructor(e=new H,t=new H){this.start=e,this.end=t}set(e,t){return this.start.copy(e),this.end.copy(t),this}copy(e){return this.start.copy(e.start),this.end.copy(e.end),this}getCenter(e){return e.addVectors(this.start,this.end).multiplyScalar(.5)}delta(e){return e.subVectors(this.end,this.start)}distanceSq(){return this.start.distanceToSquared(this.end)}distance(){return this.start.distanceTo(this.end)}at(e,t){return this.delta(t).multiplyScalar(e).add(this.start)}closestPointToPointParameter(e,t){Sm.subVectors(e,this.start),Cm.subVectors(this.end,this.start);let n=Cm.dot(Cm),r=Cm.dot(Sm)/n;return t&&(r=s(r,0,1)),r}closestPointToPoint(e,t,n){let r=this.closestPointToPointParameter(e,t);return this.delta(n).multiplyScalar(r).add(this.start)}applyMatrix4(e){return this.start.applyMatrix4(e),this.end.applyMatrix4(e),this}equals(e){return e.start.equals(this.start)&&e.end.equals(this.end)}clone(){return new this.constructor().copy(this)}},Tm=new H,Em=class extends ps{constructor(e,t){super(),this.light=e,this.matrixAutoUpdate=!1,this.color=t,this.type=`SpotLightHelper`;let n=new q,r=[0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,-1,0,1,0,0,0,0,1,1,0,0,0,0,-1,1];for(let e=0,t=1;e<32;e++,t++){let n=e/32*Math.PI*2,i=t/32*Math.PI*2;r.push(Math.cos(n),Math.sin(n),1,Math.cos(i),Math.sin(i),1)}n.setAttribute(`position`,new K(r,3));let i=new Qu({fog:!1,toneMapped:!1});this.cone=new ld(n,i),this.add(this.cone),this.update()}dispose(){this.cone.geometry.dispose(),this.cone.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1),this.parent?(this.parent.updateWorldMatrix(!0),this.matrix.copy(this.parent.matrixWorld).invert().multiply(this.light.matrixWorld)):this.matrix.copy(this.light.matrixWorld),this.matrixWorld.copy(this.light.matrixWorld);let e=this.light.distance?this.light.distance:1e3,t=e*Math.tan(this.light.angle);this.cone.scale.set(t,t,e),Tm.setFromMatrixPosition(this.light.target.matrixWorld),this.cone.lookAt(Tm),this.color===void 0?this.cone.material.color.copy(this.light.color):this.cone.material.color.set(this.color)}},Dm=new H,Om=new U,km=new U,Am=class extends ld{constructor(e){let t=Ar(e),n=new q,r=[],i=[],a=new W(0,0,1),o=new W(0,1,0);for(let e=0;e<t.length;e++){let n=t[e];n.parent&&n.parent.isBone&&(r.push(0,0,0),r.push(0,0,0),i.push(a.r,a.g,a.b),i.push(o.r,o.g,o.b))}n.setAttribute(`position`,new K(r,3)),n.setAttribute(`color`,new K(i,3));let s=new Qu({vertexColors:!0,depthTest:!1,depthWrite:!1,toneMapped:!1,transparent:!0});super(n,s),this.isSkeletonHelper=!0,this.type=`SkeletonHelper`,this.root=e,this.bones=t,this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1}updateMatrixWorld(e){let t=this.bones,n=this.geometry,r=n.getAttribute(`position`);km.copy(this.root.matrixWorld).invert();for(let e=0,n=0;e<t.length;e++){let i=t[e];i.parent&&i.parent.isBone&&(Om.multiplyMatrices(km,i.matrixWorld),Dm.setFromMatrixPosition(Om),r.setXYZ(n,Dm.x,Dm.y,Dm.z),Om.multiplyMatrices(km,i.parent.matrixWorld),Dm.setFromMatrixPosition(Om),r.setXYZ(n+1,Dm.x,Dm.y,Dm.z),n+=2)}n.getAttribute(`position`).needsUpdate=!0,super.updateMatrixWorld(e)}dispose(){this.geometry.dispose(),this.material.dispose()}},jm=class extends dc{constructor(e,t,n){let r=new lf(t,4,2),i=new Ps({wireframe:!0,fog:!1,toneMapped:!1});super(r,i),this.light=e,this.color=n,this.type=`PointLightHelper`,this.matrix=this.light.matrixWorld,this.matrixAutoUpdate=!1,this.update()}dispose(){this.geometry.dispose(),this.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.color===void 0?this.material.color.copy(this.light.color):this.material.color.set(this.color)}},Mm=new H,Nm=new W,Pm=new W,Fm=class extends ps{constructor(e,t,n){super(),this.light=e,this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.color=n,this.type=`HemisphereLightHelper`;let r=new of(t);r.rotateY(Math.PI*.5),this.material=new Ps({wireframe:!0,fog:!1,toneMapped:!1}),this.color===void 0&&(this.material.vertexColors=!0);let i=r.getAttribute(`position`),a=new Float32Array(i.count*3);r.setAttribute(`color`,new G(a,3)),this.add(new dc(r,this.material)),this.update()}dispose(){this.children[0].geometry.dispose(),this.children[0].material.dispose()}update(){let e=this.children[0];if(this.color!==void 0)this.material.color.set(this.color);else{let t=e.geometry.getAttribute(`color`);Nm.copy(this.light.color),Pm.copy(this.light.groundColor);for(let e=0,n=t.count;e<n;e++){let r=e<n/2?Nm:Pm;t.setXYZ(e,r.r,r.g,r.b)}t.needsUpdate=!0}this.light.updateWorldMatrix(!0,!1),e.lookAt(Mm.setFromMatrixPosition(this.light.matrixWorld).negate())}},Im=class extends ld{constructor(e=10,t=10,n=4473924,r=8947848){n=new W(n),r=new W(r);let i=t/2,a=e/t,o=e/2,s=[],c=[];for(let e=0,l=0,u=-o;e<=t;e++,u+=a){s.push(-o,0,u,o,0,u),s.push(u,0,-o,u,0,o);let t=e===i?n:r;t.toArray(c,l),l+=3,t.toArray(c,l),l+=3,t.toArray(c,l),l+=3,t.toArray(c,l),l+=3}let l=new q;l.setAttribute(`position`,new K(s,3)),l.setAttribute(`color`,new K(c,3));let u=new Qu({vertexColors:!0,toneMapped:!1});super(l,u),this.type=`GridHelper`}dispose(){this.geometry.dispose(),this.material.dispose()}},Lm=class extends ld{constructor(e=10,t=16,n=8,r=64,i=4473924,a=8947848){i=new W(i),a=new W(a);let o=[],s=[];if(t>1)for(let n=0;n<t;n++){let r=n/t*(Math.PI*2),c=Math.sin(r)*e,l=Math.cos(r)*e;o.push(0,0,0),o.push(c,0,l);let u=n&1?i:a;s.push(u.r,u.g,u.b),s.push(u.r,u.g,u.b)}for(let t=0;t<n;t++){let c=t&1?i:a,l=e-e/n*t;for(let e=0;e<r;e++){let t=e/r*(Math.PI*2),n=Math.sin(t)*l,i=Math.cos(t)*l;o.push(n,0,i),s.push(c.r,c.g,c.b),t=(e+1)/r*(Math.PI*2),n=Math.sin(t)*l,i=Math.cos(t)*l,o.push(n,0,i),s.push(c.r,c.g,c.b)}}let c=new q;c.setAttribute(`position`,new K(o,3)),c.setAttribute(`color`,new K(s,3));let l=new Qu({vertexColors:!0,toneMapped:!1});super(c,l),this.type=`PolarGridHelper`}dispose(){this.geometry.dispose(),this.material.dispose()}},Rm=new H,zm=new H,Bm=new H,Vm=class extends ps{constructor(e,t,n){super(),this.light=e,this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.color=n,this.type=`DirectionalLightHelper`,t===void 0&&(t=1);let r=new q;r.setAttribute(`position`,new K([-t,t,0,t,t,0,t,-t,0,-t,-t,0,-t,t,0],3));let i=new Qu({fog:!1,toneMapped:!1});this.lightPlane=new od(r,i),this.add(this.lightPlane),r=new q,r.setAttribute(`position`,new K([0,0,0,0,0,1],3)),this.targetLine=new od(r,i),this.add(this.targetLine),this.update()}dispose(){this.lightPlane.geometry.dispose(),this.lightPlane.material.dispose(),this.targetLine.geometry.dispose(),this.targetLine.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1),Rm.setFromMatrixPosition(this.light.matrixWorld),zm.setFromMatrixPosition(this.light.target.matrixWorld),Bm.subVectors(zm,Rm),this.lightPlane.lookAt(zm),this.color===void 0?(this.lightPlane.material.color.copy(this.light.color),this.targetLine.material.color.copy(this.light.color)):(this.lightPlane.material.color.set(this.color),this.targetLine.material.color.set(this.color)),this.targetLine.lookAt(zm),this.targetLine.scale.z=Bm.length()}},Hm=new H,Um=new _c,Wm=class extends ld{constructor(e){let t=new q,n=new Qu({color:16777215,vertexColors:!0,toneMapped:!1}),r=[],i=[],a={};o(`n1`,`n2`),o(`n2`,`n4`),o(`n4`,`n3`),o(`n3`,`n1`),o(`f1`,`f2`),o(`f2`,`f4`),o(`f4`,`f3`),o(`f3`,`f1`),o(`n1`,`f1`),o(`n2`,`f2`),o(`n3`,`f3`),o(`n4`,`f4`),o(`p`,`n1`),o(`p`,`n2`),o(`p`,`n3`),o(`p`,`n4`),o(`u1`,`u2`),o(`u2`,`u3`),o(`u3`,`u1`),o(`c`,`t`),o(`p`,`c`),o(`cn1`,`cn2`),o(`cn3`,`cn4`),o(`cf1`,`cf2`),o(`cf3`,`cf4`);function o(e,t){s(e),s(t)}function s(e){r.push(0,0,0),i.push(0,0,0),a[e]===void 0&&(a[e]=[]),a[e].push(r.length/3-1)}t.setAttribute(`position`,new K(r,3)),t.setAttribute(`color`,new K(i,3)),super(t,n),this.type=`CameraHelper`,this.camera=e,this.camera.updateProjectionMatrix&&this.camera.updateProjectionMatrix(),this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.pointMap=a,this.update();let c=new W(16755200),l=new W(16711680),u=new W(43775),d=new W(16777215),f=new W(3355443);this.setColors(c,l,u,d,f)}setColors(e,t,n,r,i){let a=this.geometry.getAttribute(`color`);a.setXYZ(0,e.r,e.g,e.b),a.setXYZ(1,e.r,e.g,e.b),a.setXYZ(2,e.r,e.g,e.b),a.setXYZ(3,e.r,e.g,e.b),a.setXYZ(4,e.r,e.g,e.b),a.setXYZ(5,e.r,e.g,e.b),a.setXYZ(6,e.r,e.g,e.b),a.setXYZ(7,e.r,e.g,e.b),a.setXYZ(8,e.r,e.g,e.b),a.setXYZ(9,e.r,e.g,e.b),a.setXYZ(10,e.r,e.g,e.b),a.setXYZ(11,e.r,e.g,e.b),a.setXYZ(12,e.r,e.g,e.b),a.setXYZ(13,e.r,e.g,e.b),a.setXYZ(14,e.r,e.g,e.b),a.setXYZ(15,e.r,e.g,e.b),a.setXYZ(16,e.r,e.g,e.b),a.setXYZ(17,e.r,e.g,e.b),a.setXYZ(18,e.r,e.g,e.b),a.setXYZ(19,e.r,e.g,e.b),a.setXYZ(20,e.r,e.g,e.b),a.setXYZ(21,e.r,e.g,e.b),a.setXYZ(22,e.r,e.g,e.b),a.setXYZ(23,e.r,e.g,e.b),a.setXYZ(24,t.r,t.g,t.b),a.setXYZ(25,t.r,t.g,t.b),a.setXYZ(26,t.r,t.g,t.b),a.setXYZ(27,t.r,t.g,t.b),a.setXYZ(28,t.r,t.g,t.b),a.setXYZ(29,t.r,t.g,t.b),a.setXYZ(30,t.r,t.g,t.b),a.setXYZ(31,t.r,t.g,t.b),a.setXYZ(32,n.r,n.g,n.b),a.setXYZ(33,n.r,n.g,n.b),a.setXYZ(34,n.r,n.g,n.b),a.setXYZ(35,n.r,n.g,n.b),a.setXYZ(36,n.r,n.g,n.b),a.setXYZ(37,n.r,n.g,n.b),a.setXYZ(38,r.r,r.g,r.b),a.setXYZ(39,r.r,r.g,r.b),a.setXYZ(40,i.r,i.g,i.b),a.setXYZ(41,i.r,i.g,i.b),a.setXYZ(42,i.r,i.g,i.b),a.setXYZ(43,i.r,i.g,i.b),a.setXYZ(44,i.r,i.g,i.b),a.setXYZ(45,i.r,i.g,i.b),a.setXYZ(46,i.r,i.g,i.b),a.setXYZ(47,i.r,i.g,i.b),a.setXYZ(48,i.r,i.g,i.b),a.setXYZ(49,i.r,i.g,i.b),a.needsUpdate=!0}update(){let e=this.geometry,t=this.pointMap;Um.projectionMatrixInverse.copy(this.camera.projectionMatrixInverse),jr(`c`,t,e,Um,0,0,-1),jr(`t`,t,e,Um,0,0,1),jr(`n1`,t,e,Um,-1,-1,-1),jr(`n2`,t,e,Um,1,-1,-1),jr(`n3`,t,e,Um,-1,1,-1),jr(`n4`,t,e,Um,1,1,-1),jr(`f1`,t,e,Um,-1,-1,1),jr(`f2`,t,e,Um,1,-1,1),jr(`f3`,t,e,Um,-1,1,1),jr(`f4`,t,e,Um,1,1,1),jr(`u1`,t,e,Um,.7,1.1,-1),jr(`u2`,t,e,Um,-.7,1.1,-1),jr(`u3`,t,e,Um,0,2,-1),jr(`cf1`,t,e,Um,-1,0,1),jr(`cf2`,t,e,Um,1,0,1),jr(`cf3`,t,e,Um,0,-1,1),jr(`cf4`,t,e,Um,0,1,1),jr(`cn1`,t,e,Um,-1,0,-1),jr(`cn2`,t,e,Um,1,0,-1),jr(`cn3`,t,e,Um,0,-1,-1),jr(`cn4`,t,e,Um,0,1,-1),e.getAttribute(`position`).needsUpdate=!0}dispose(){this.geometry.dispose(),this.material.dispose()}},Gm=new ho,Km=class extends ld{constructor(e,t=16776960){let n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),r=new Float32Array(24),i=new q;i.setIndex(new G(n,1)),i.setAttribute(`position`,new G(r,3)),super(i,new Qu({color:t,toneMapped:!1})),this.object=e,this.type=`BoxHelper`,this.matrixAutoUpdate=!1,this.update()}update(e){if(e!==void 0&&console.warn(`THREE.BoxHelper: .update() has no longer arguments.`),this.object!==void 0&&Gm.setFromObject(this.object),Gm.isEmpty())return;let t=Gm.min,n=Gm.max,r=this.geometry.attributes.position,i=r.array;i[0]=n.x,i[1]=n.y,i[2]=n.z,i[3]=t.x,i[4]=n.y,i[5]=n.z,i[6]=t.x,i[7]=t.y,i[8]=n.z,i[9]=n.x,i[10]=t.y,i[11]=n.z,i[12]=n.x,i[13]=n.y,i[14]=t.z,i[15]=t.x,i[16]=n.y,i[17]=t.z,i[18]=t.x,i[19]=t.y,i[20]=t.z,i[21]=n.x,i[22]=t.y,i[23]=t.z,r.needsUpdate=!0,this.geometry.computeBoundingSphere()}setFromObject(e){return this.object=e,this.update(),this}copy(e,t){return super.copy(e,t),this.object=e.object,this}dispose(){this.geometry.dispose(),this.material.dispose()}},qm=class extends ld{constructor(e,t=16776960){let n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),r=[1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1],i=new q;i.setIndex(new G(n,1)),i.setAttribute(`position`,new K(r,3)),super(i,new Qu({color:t,toneMapped:!1})),this.box=e,this.type=`Box3Helper`,this.geometry.computeBoundingSphere()}updateMatrixWorld(e){let t=this.box;t.isEmpty()||(t.getCenter(this.position),t.getSize(this.scale),this.scale.multiplyScalar(.5),super.updateMatrixWorld(e))}dispose(){this.geometry.dispose(),this.material.dispose()}},Jm=class extends od{constructor(e,t=1,n=16776960){let r=n,i=[1,-1,0,-1,1,0,-1,-1,0,1,1,0,-1,1,0,-1,-1,0,1,-1,0,1,1,0],a=new q;a.setAttribute(`position`,new K(i,3)),a.computeBoundingSphere(),super(a,new Qu({color:r,toneMapped:!1})),this.type=`PlaneHelper`,this.plane=e,this.size=t;let o=[1,1,0,-1,1,0,-1,-1,0,1,1,0,-1,-1,0,1,-1,0],s=new q;s.setAttribute(`position`,new K(o,3)),s.computeBoundingSphere(),this.add(new dc(s,new Ps({color:r,opacity:.2,transparent:!0,depthWrite:!1,toneMapped:!1})))}updateMatrixWorld(e){this.position.set(0,0,0),this.scale.set(.5*this.size,.5*this.size,1),this.lookAt(this.plane.normal),this.translateZ(-this.plane.constant),super.updateMatrixWorld(e)}dispose(){this.geometry.dispose(),this.material.dispose(),this.children[0].geometry.dispose(),this.children[0].material.dispose()}},Ym=new H,Qm=class extends ps{constructor(e=new H(0,0,1),t=new H(0,0,0),n=1,r=16776960,i=n*.2,a=i*.2){super(),this.type=`ArrowHelper`,Xm===void 0&&(Xm=new q,Xm.setAttribute(`position`,new K([0,0,0,0,1,0],3)),Zm=new Wd(0,.5,1,5,1),Zm.translate(0,-.5,0)),this.position.copy(t),this.line=new od(Xm,new Qu({color:r,toneMapped:!1})),this.line.matrixAutoUpdate=!1,this.add(this.line),this.cone=new dc(Zm,new Ps({color:r,toneMapped:!1})),this.cone.matrixAutoUpdate=!1,this.add(this.cone),this.setDirection(e),this.setLength(n,i,a)}setDirection(e){if(e.y>.99999)this.quaternion.set(0,0,0,1);else if(e.y<-.99999)this.quaternion.set(1,0,0,0);else{Ym.set(e.z,0,-e.x).normalize();let t=Math.acos(e.y);this.quaternion.setFromAxisAngle(Ym,t)}}setLength(e,t=e*.2,n=t*.2){this.line.scale.set(1,Math.max(1e-4,e-t),1),this.line.updateMatrix(),this.cone.scale.set(n,t,n),this.cone.position.y=e,this.cone.updateMatrix()}setColor(e){this.line.material.color.set(e),this.cone.material.color.set(e)}copy(e){return super.copy(e,!1),this.line.copy(e.line),this.cone.copy(e.cone),this}dispose(){this.line.geometry.dispose(),this.line.material.dispose(),this.cone.geometry.dispose(),this.cone.material.dispose()}},$m=class extends ld{constructor(e=1){let t=[0,0,0,e,0,0,0,0,0,0,e,0,0,0,0,0,0,e],n=[1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],r=new q;r.setAttribute(`position`,new K(t,3)),r.setAttribute(`color`,new K(n,3));let i=new Qu({vertexColors:!0,toneMapped:!1});super(r,i),this.type=`AxesHelper`}setColors(e,t,n){let r=new W,i=this.geometry.attributes.color.array;return r.set(e),r.toArray(i,0),r.toArray(i,3),r.set(t),r.toArray(i,6),r.toArray(i,9),r.set(n),r.toArray(i,12),r.toArray(i,15),this.geometry.attributes.color.needsUpdate=!0,this}dispose(){this.geometry.dispose(),this.material.dispose()}},eh=class{constructor(){this.type=`ShapePath`,this.color=new W,this.subPaths=[],this.currentPath=null}moveTo(e,t){return this.currentPath=new Bd,this.subPaths.push(this.currentPath),this.currentPath.moveTo(e,t),this}lineTo(e,t){return this.currentPath.lineTo(e,t),this}quadraticCurveTo(e,t,n,r){return this.currentPath.quadraticCurveTo(e,t,n,r),this}bezierCurveTo(e,t,n,r,i,a){return this.currentPath.bezierCurveTo(e,t,n,r,i,a),this}splineThru(e){return this.currentPath.splineThru(e),this}toShapes(e){function t(e){let t=[];for(let n=0,r=e.length;n<r;n++){let r=e[n],i=new $d;i.curves=r.curves,t.push(i)}return t}function n(e,t){let n=t.length,r=!1;for(let i=n-1,a=0;a<n;i=a++){let n=t[i],o=t[a],s=o.x-n.x,c=o.y-n.y;if(Math.abs(c)>2**-52){if(c<0&&(n=t[a],s=-s,o=t[i],c=-c),e.y<n.y||e.y>o.y)continue;if(e.y===n.y){if(e.x===n.x)return!0}else{let t=c*(e.x-n.x)-s*(e.y-n.y);if(t===0)return!0;if(t<0)continue;r=!r}}else{if(e.y!==n.y)continue;if(o.x<=e.x&&e.x<=n.x||n.x<=e.x&&e.x<=o.x)return!0}}return r}let r=tf.isClockWise,i=this.subPaths;if(i.length===0)return[];let a,o,s,c=[];if(i.length===1)return o=i[0],s=new $d,s.curves=o.curves,c.push(s),c;let l=!r(i[0].getPoints());l=e?!l:l;let u=[],d=[],f=[],p=0,m;d[p]=void 0,f[p]=[];for(let t=0,n=i.length;t<n;t++)o=i[t],m=o.getPoints(),a=r(m),a=e?!a:a,a?(!l&&d[p]&&p++,d[p]={s:new $d,p:m},d[p].s.curves=o.curves,l&&p++,f[p]=[]):f[p].push({h:o,p:m[0]});if(!d[0])return t(i);if(d.length>1){let e=!1,t=0;for(let e=0,t=d.length;e<t;e++)u[e]=[];for(let r=0,i=d.length;r<i;r++){let i=f[r];for(let a=0;a<i.length;a++){let o=i[a],s=!0;for(let i=0;i<d.length;i++)n(o.p,d[i].p)&&(r!==i&&t++,s?(s=!1,u[i].push(o)):e=!0);s&&u[r].push(o)}}t>0&&e===!1&&(f=u)}let h;for(let e=0,t=d.length;e<t;e++){s=d[e].s,c.push(s),h=f[e];for(let e=0,t=h.length;e<t;e++)s.holes.push(h[e].h)}return c}},th=class extends Ra{constructor(e,t=null){super(),this.object=e,this.domElement=t,this.enabled=!0,this.state=-1,this.keys={},this.mouseButtons={LEFT:null,MIDDLE:null,RIGHT:null},this.touches={ONE:null,TWO:null}}connect(){}disconnect(){}dispose(){}update(){}},nh=class extends oo{constructor(e=1,t=1,n=1,r={}){console.warn(`THREE.WebGLMultipleRenderTargets has been deprecated and will be removed in r172. Use THREE.WebGLRenderTarget and set the "count" parameter to enable MRT.`),super(e,t,{...r,count:n}),this.isWebGLMultipleRenderTargets=!0}get texture(){return this.textures}},typeof __THREE_DEVTOOLS__<`u`&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(`register`,{detail:{revision:`169`}})),typeof window<`u`&&(window.__THREE__?console.warn(`WARNING: Multiple instances of Three.js being imported.`):window.__THREE__=`169`)}));rh();function ih(e){"@babel/helpers - typeof";return ih=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},ih(e)}function ah(e,t){if(ih(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(ih(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function oh(e){var t=ah(e,`string`);return ih(t)==`symbol`?t:t+``}function X(e,t,n){return(t=oh(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var sh=class{constructor(e,t=0,n){X(this,`buffer`,void 0),X(this,`base`,void 0),X(this,`view`,void 0),X(this,`offset`,void 0),X(this,`_decoder`,new TextDecoder(`utf-8`)),this.buffer=e,this.base=t,this.view=new DataView(e,t,n===void 0?e.byteLength-t:n),this.offset=0}get remaining(){return this.view.byteLength-this.offset}u8(){let e=this.view.getUint8(this.offset);return this.offset+=1,e}u16(){let e=this.view.getUint16(this.offset,!0);return this.offset+=2,e}u32(){let e=this.view.getUint32(this.offset,!0);return this.offset+=4,e}i32(){let e=this.view.getInt32(this.offset,!0);return this.offset+=4,e}f32(){let e=this.view.getFloat32(this.offset,!0);return this.offset+=4,e}f64(){let e=this.view.getFloat64(this.offset,!0);return this.offset+=8,e}bytes(e){let t=new Uint8Array(this.buffer,this.base+this.offset,e);return this.offset+=e,t}bytesCopy(e){let t=new Uint8Array(this.buffer,this.base+this.offset,e);return this.offset+=e,t.slice()}string(){let e=this.u32(),t=new Uint8Array(this.buffer,this.base+this.offset,e);return this.offset+=e,this._decoder.decode(t)}skip(e){this.offset+=e}align4(e=0){let t=(this.offset-e)%4;t!==0&&this.skip(4-t)}vec3f64(){return{x:this.f64(),y:this.f64(),z:this.f64()}}boundingBox(){return{center:this.vec3f64(),xExtent:this.vec3f64(),yExtent:this.vec3f64(),zExtent:this.vec3f64()}}},ch=r(((e,t)=>{t.exports={}})),lh=i({default:()=>dh});function uh(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}function dh(){return mh||(mh=fh({wasmBinary:uh(ph)})),mh}var Z,fh,ph,mh,hh=n((()=>{Z=Z||{},Z.scope={},Z.ASSUME_ES2020=!1,Z.ASSUME_ES6=Z.ASSUME_ES2020,Z.ASSUME_ES5=Z.ASSUME_ES6,Z.ASSUME_NO_NATIVE_MAP=!1,Z.ASSUME_NO_NATIVE_SET=!1,Z.ISOLATE_POLYFILLS=!1,Z.FORCE_POLYFILL_PROMISE=!1,Z.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION=!1,Z.INSTRUMENT_ASYNC_CONTEXT=!0,Z.objectCreate=Z.ASSUME_ES5||typeof Object.create==`function`?Object.create:function(e){var t=function(){};return t.prototype=e,new t},Z.defineProperty=Z.ASSUME_ES5||typeof Object.defineProperties==`function`?Object.defineProperty:function(e,t,n){return e==Array.prototype||e==Object.prototype||(e[t]=n.value),e},Z.getGlobal=function(e){e=[typeof globalThis==`object`&&globalThis,e,typeof window==`object`&&window,typeof self==`object`&&self,typeof global==`object`&&global];for(var t=0;t<e.length;++t){var n=e[t];if(n&&n.Math==Math)return n}throw Error(`Cannot find global object`)},Z.global=Z.ASSUME_ES2020?globalThis:Z.getGlobal(void 0),Z.IS_SYMBOL_NATIVE=typeof Symbol==`function`&&typeof Symbol(`x`)==`symbol`,Z.TRUST_ES6_POLYFILLS=!Z.ISOLATE_POLYFILLS||Z.IS_SYMBOL_NATIVE,Z.polyfills={},Z.propertyToPolyfillSymbol={},Z.POLYFILL_PREFIX=`$jscp$`,Z.TYPED_ARRAY_CLASSES=function(){var e=`Int8 Uint8 Uint8Clamped Int16 Uint16 Int32 Uint32 Float32 Float64`.split(` `);return Z.global.BigInt64Array&&(e.push(`BigInt64`),e.push(`BigUint64`)),e}(),Z.polyfillTypedArrayMethod=function(e,t,n,r){if(t)for(var i=0;i<Z.TYPED_ARRAY_CLASSES.length;i++){var a=Z.TYPED_ARRAY_CLASSES[i]+`Array.prototype.`+e;Z.ISOLATE_POLYFILLS?Z.polyfillIsolated(a,t,n,r):Z.polyfillUnisolated(a,t,n,r)}},Z.polyfill=function(e,t,n,r){t&&(Z.ISOLATE_POLYFILLS?Z.polyfillIsolated(e,t,n,r):Z.polyfillUnisolated(e,t,n,r))},Z.polyfillUnisolated=function(e,t,n,r){for(n=Z.global,e=e.split(`.`),r=0;r<e.length-1;r++){var i=e[r];if(!(i in n))return;n=n[i]}e=e[e.length-1],r=n[e],t=t(r),t!=r&&t!=null&&Z.defineProperty(n,e,{configurable:!0,writable:!0,value:t})},Z.polyfillIsolated=function(e,t,n,r){var i=e.split(`.`);e=i.length===1,r=i[0],r=!e&&r in Z.polyfills?Z.polyfills:Z.global;for(var a=0;a<i.length-1;a++){var o=i[a];if(!(o in r))return;r=r[o]}i=i[i.length-1],n=Z.IS_SYMBOL_NATIVE&&n===`es6`?r[i]:null,t=t(n),t!=null&&(e?Z.defineProperty(Z.polyfills,i,{configurable:!0,writable:!0,value:t}):t!==n&&(Z.propertyToPolyfillSymbol[i]===void 0&&(n=Math.random()*1e9>>>0,Z.propertyToPolyfillSymbol[i]=Z.IS_SYMBOL_NATIVE?Z.global.Symbol(i):Z.POLYFILL_PREFIX+n+`$`+i),Z.defineProperty(r,Z.propertyToPolyfillSymbol[i],{configurable:!0,writable:!0,value:t})))},Z.getConstructImplementation=function(){function e(){function e(){}return new e,Reflect.construct(e,[],function(){}),new e instanceof e}if(Z.TRUST_ES6_POLYFILLS&&typeof Reflect<`u`&&Reflect.construct){if(e())return Reflect.construct;var t=Reflect.construct;return function(e,n,r){return e=t(e,n),r&&Reflect.setPrototypeOf(e,r.prototype),e}}return function(e,t,n){return n===void 0&&(n=e),n=Z.objectCreate(n.prototype||Object.prototype),Function.prototype.apply.call(e,n,t)||n}},Z.construct={valueOf:Z.getConstructImplementation}.valueOf(),Z.underscoreProtoCanBeSet=function(){var e={a:!0},t={};try{return t.__proto__=e,t.a}catch{}return!1},Z.setPrototypeOf=Z.ASSUME_ES6||Z.TRUST_ES6_POLYFILLS&&typeof Object.setPrototypeOf==`function`?Object.setPrototypeOf:Z.underscoreProtoCanBeSet()?function(e,t){if(e.__proto__=t,e.__proto__!==t)throw TypeError(e+` is not extensible`);return e}:null,Z.inherits=function(e,t){if(e.prototype=Z.objectCreate(t.prototype),e.prototype.constructor=e,Z.ASSUME_ES6||Z.setPrototypeOf){var n=Z.setPrototypeOf;n(e,t)}else for(n in t)if(n!=`prototype`){if(Object.defineProperties){var r=Object.getOwnPropertyDescriptor(t,n);r&&Object.defineProperty(e,n,r)}else e[n]=t[n]}e.superClass_=t.prototype},Z.arrayIteratorImpl=function(e){var t=0;return function(){return t<e.length?{done:!1,value:e[t++]}:{done:!0}}},Z.arrayIterator=function(e){return{next:Z.arrayIteratorImpl(e)}},Z.makeIterator=function(e){var t=typeof Symbol<`u`&&Symbol.iterator&&e[Symbol.iterator];if(t)return t.call(e);if(typeof e.length==`number`)return Z.arrayIterator(e);throw Error(String(e)+` is not an iterable or ArrayLike`)},Z.arrayFromIterator=function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n},Z.arrayFromIterable=function(e){return e instanceof Array?e:Z.arrayFromIterator(Z.makeIterator(e))},Z.createTemplateTagFirstArg=function(e){return Z.createTemplateTagFirstArgWithRaw(e,e)},Z.createTemplateTagFirstArgWithRaw=function(e,t){return e.raw=t,Object.freeze&&(Object.freeze(e),Object.freeze(t)),e},Z.generator={},Z.generator.ensureIteratorResultIsObject_=function(e){if(!(e instanceof Object))throw TypeError(`Iterator result `+e+` is not an object`)},Z.generator.Context=function(){this.isRunning_=!1,this.yieldAllIterator_=null,this.yieldResult=void 0,this.nextAddress=1,this.finallyAddress_=this.catchAddress_=0,this.finallyContexts_=this.abruptCompletion_=null},Z.generator.Context.prototype.start_=function(){if(this.isRunning_)throw TypeError(`Generator is already running`);this.isRunning_=!0},Z.generator.Context.prototype.stop_=function(){this.isRunning_=!1},Z.generator.Context.prototype.jumpToErrorHandler_=function(){this.nextAddress=this.catchAddress_||this.finallyAddress_},Z.generator.Context.prototype.next_=function(e){this.yieldResult=e},Z.generator.Context.prototype.throw_=function(e){this.abruptCompletion_={exception:e,isException:!0},this.jumpToErrorHandler_()},Z.generator.Context.prototype.getNextAddressJsc=function(){return this.nextAddress},Z.generator.Context.prototype.getNextAddressJsc=function(){return this.nextAddress},Z.generator.Context.prototype.getYieldResultJsc=function(){return this.yieldResult},Z.generator.Context.prototype.getYieldResultJsc=function(){return this.yieldResult},Z.generator.Context.prototype.return=function(e){this.abruptCompletion_={return:e},this.nextAddress=this.finallyAddress_},Z.generator.Context.prototype.return=Z.generator.Context.prototype.return,Z.generator.Context.prototype.jumpThroughFinallyBlocks=function(e){this.abruptCompletion_={jumpTo:e},this.nextAddress=this.finallyAddress_},Z.generator.Context.prototype.jumpThroughFinallyBlocks=Z.generator.Context.prototype.jumpThroughFinallyBlocks,Z.generator.Context.prototype.yield=function(e,t){return this.nextAddress=t,{value:e}},Z.generator.Context.prototype.yield=Z.generator.Context.prototype.yield,Z.generator.Context.prototype.yieldAll=function(e,t){e=Z.makeIterator(e);var n=e.next();if(Z.generator.ensureIteratorResultIsObject_(n),n.done)this.yieldResult=n.value,this.nextAddress=t;else return this.yieldAllIterator_=e,this.yield(n.value,t)},Z.generator.Context.prototype.yieldAll=Z.generator.Context.prototype.yieldAll,Z.generator.Context.prototype.jumpTo=function(e){this.nextAddress=e},Z.generator.Context.prototype.jumpTo=Z.generator.Context.prototype.jumpTo,Z.generator.Context.prototype.jumpToEnd=function(){this.nextAddress=0},Z.generator.Context.prototype.jumpToEnd=Z.generator.Context.prototype.jumpToEnd,Z.generator.Context.prototype.setCatchFinallyBlocks=function(e,t){this.catchAddress_=e,t!=null&&(this.finallyAddress_=t)},Z.generator.Context.prototype.setCatchFinallyBlocks=Z.generator.Context.prototype.setCatchFinallyBlocks,Z.generator.Context.prototype.setFinallyBlock=function(e){this.catchAddress_=0,this.finallyAddress_=e||0},Z.generator.Context.prototype.setFinallyBlock=Z.generator.Context.prototype.setFinallyBlock,Z.generator.Context.prototype.leaveTryBlock=function(e,t){this.nextAddress=e,this.catchAddress_=t||0},Z.generator.Context.prototype.leaveTryBlock=Z.generator.Context.prototype.leaveTryBlock,Z.generator.Context.prototype.enterCatchBlock=function(e){return this.catchAddress_=e||0,e=this.abruptCompletion_.exception,this.abruptCompletion_=null,e},Z.generator.Context.prototype.enterCatchBlock=Z.generator.Context.prototype.enterCatchBlock,Z.generator.Context.prototype.enterFinallyBlock=function(e,t,n){n?this.finallyContexts_[n]=this.abruptCompletion_:this.finallyContexts_=[this.abruptCompletion_],this.catchAddress_=e||0,this.finallyAddress_=t||0},Z.generator.Context.prototype.enterFinallyBlock=Z.generator.Context.prototype.enterFinallyBlock,Z.generator.Context.prototype.leaveFinallyBlock=function(e,t){if(t=this.finallyContexts_.splice(t||0)[0],t=this.abruptCompletion_=this.abruptCompletion_||t){if(t.isException)return this.jumpToErrorHandler_();t.jumpTo!=null&&this.finallyAddress_<t.jumpTo?(this.nextAddress=t.jumpTo,this.abruptCompletion_=null):this.nextAddress=this.finallyAddress_}else this.nextAddress=e},Z.generator.Context.prototype.leaveFinallyBlock=Z.generator.Context.prototype.leaveFinallyBlock,Z.generator.Context.prototype.forIn=function(e){return new Z.generator.Context.PropertyIterator(e)},Z.generator.Context.prototype.forIn=Z.generator.Context.prototype.forIn,Z.generator.Context.PropertyIterator=function(e){for(var t in this.object_=e,this.properties_=[],e)this.properties_.push(t);this.properties_.reverse()},Z.generator.Context.PropertyIterator.prototype.getNext=function(){for(;this.properties_.length>0;){var e=this.properties_.pop();if(e in this.object_)return e}return null},Z.generator.Context.PropertyIterator.prototype.getNext=Z.generator.Context.PropertyIterator.prototype.getNext,Z.generator.Engine_=function(e){this.context_=new Z.generator.Context,this.program_=e},Z.generator.Engine_.prototype.next_=function(e){return this.context_.start_(),this.context_.yieldAllIterator_?this.yieldAllStep_(this.context_.yieldAllIterator_.next,e,this.context_.next_):(this.context_.next_(e),this.nextStep_())},Z.generator.Engine_.prototype.return_=function(e){this.context_.start_();var t=this.context_.yieldAllIterator_;return t?this.yieldAllStep_(`return`in t?t.return:function(e){return{value:e,done:!0}},e,this.context_.return):(this.context_.return(e),this.nextStep_())},Z.generator.Engine_.prototype.throw_=function(e){return this.context_.start_(),this.context_.yieldAllIterator_?this.yieldAllStep_(this.context_.yieldAllIterator_.throw,e,this.context_.next_):(this.context_.throw_(e),this.nextStep_())},Z.generator.Engine_.prototype.yieldAllStep_=function(e,t,n){try{var r=e.call(this.context_.yieldAllIterator_,t);if(Z.generator.ensureIteratorResultIsObject_(r),!r.done)return this.context_.stop_(),r;var i=r.value}catch(e){return this.context_.yieldAllIterator_=null,this.context_.throw_(e),this.nextStep_()}return this.context_.yieldAllIterator_=null,n.call(this.context_,i),this.nextStep_()},Z.generator.Engine_.prototype.nextStep_=function(){for(;this.context_.nextAddress;)try{var e=this.program_(this.context_);if(e)return this.context_.stop_(),{value:e.value,done:!1}}catch(e){this.context_.yieldResult=void 0,this.context_.throw_(e)}if(this.context_.stop_(),this.context_.abruptCompletion_){if(e=this.context_.abruptCompletion_,this.context_.abruptCompletion_=null,e.isException)throw e.exception;return{value:e.return,done:!0}}return{value:void 0,done:!0}},Z.generator.Generator_=function(e){this.next=function(t){return e.next_(t)},this.throw=function(t){return e.throw_(t)},this.return=function(t){return e.return_(t)},this[Symbol.iterator]=function(){return this}},Z.generator.createGenerator=function(e,t){return t=new Z.generator.Generator_(new Z.generator.Engine_(t)),Z.setPrototypeOf&&e.prototype&&Z.setPrototypeOf(t,e.prototype),t},Z.asyncExecutePromiseGenerator=function(e){function t(t){return e.next(t)}function n(t){return e.throw(t)}return new Promise(function(r,i){function a(e){e.done?r(e.value):Promise.resolve(e.value).then(t,n).then(a,i)}a(e.next())})},Z.asyncExecutePromiseGeneratorFunction=function(e){return Z.asyncExecutePromiseGenerator(e())},Z.asyncExecutePromiseGeneratorProgram=function(e){return Z.asyncExecutePromiseGenerator(new Z.generator.Generator_(new Z.generator.Engine_(e)))},Z.polyfill(`globalThis`,function(e){return e||Z.global},`es_2020`,`es3`),Z.polyfill(`Reflect`,function(e){return e||{}},`es6`,`es3`),Z.polyfill(`Reflect.construct`,function(e){return Z.construct},`es6`,`es3`),Z.polyfill(`Reflect.setPrototypeOf`,function(e){if(e)return e;if(Z.setPrototypeOf){var t=Z.setPrototypeOf;return function(e,n){try{return t(e,n),!0}catch{return!1}}}return null},`es6`,`es5`),Z.initSymbol=function(){},Z.polyfill(`Symbol`,function(e){if(e)return e;var t=function(e,t){this.$jscomp$symbol$id_=e,Z.defineProperty(this,`description`,{configurable:!0,writable:!0,value:t})};t.prototype.toString=function(){return this.$jscomp$symbol$id_};var n=`jscomp_symbol_`+(Math.random()*1e9>>>0)+`_`,r=0,i=function(e){if(this instanceof i)throw TypeError(`Symbol is not a constructor`);return new t(n+(e||``)+`_`+r++,e)};return i},`es6`,`es3`),Z.polyfill(`Symbol.iterator`,function(e){return e||(e=Symbol(`Symbol.iterator`),Z.defineProperty(Array.prototype,e,{configurable:!0,writable:!0,value:function(){return Z.iteratorPrototype(Z.arrayIteratorImpl(this))}}),e)},`es6`,`es3`),Z.iteratorPrototype=function(e){return e={next:e},e[Symbol.iterator]=function(){return this},e},Z.polyfill(`Promise`,function(e){function t(){this.batch_=null}function n(e){return e instanceof i?e:new i(function(t,n){t(e)})}if(e&&(!(Z.FORCE_POLYFILL_PROMISE||Z.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION&&Z.global.PromiseRejectionEvent===void 0)||!Z.global.Promise||Z.global.Promise.toString().indexOf(`[native code]`)===-1))return e;t.prototype.asyncExecute=function(e){if(this.batch_==null){this.batch_=[];var t=this;this.asyncExecuteFunction(function(){t.executeBatch_()})}this.batch_.push(e)};var r=Z.global.setTimeout;t.prototype.asyncExecuteFunction=function(e){r(e,0)},t.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var e=this.batch_;this.batch_=[];for(var t=0;t<e.length;++t){var n=e[t];e[t]=null;try{n()}catch(e){this.asyncThrow_(e)}}}this.batch_=null},t.prototype.asyncThrow_=function(e){this.asyncExecuteFunction(function(){throw e})};var i=function(e){this.state_=0,this.result_=void 0,this.onSettledCallbacks_=[],this.isRejectionHandled_=!1;var t=this.createResolveAndReject_();try{e(t.resolve,t.reject)}catch(e){t.reject(e)}};i.prototype.createResolveAndReject_=function(){function e(e){return function(r){n||(n=!0,e.call(t,r))}}var t=this,n=!1;return{resolve:e(this.resolveTo_),reject:e(this.reject_)}},i.prototype.resolveTo_=function(e){if(e===this)this.reject_(TypeError(`A Promise cannot resolve to itself`));else if(e instanceof i)this.settleSameAsPromise_(e);else{a:switch(typeof e){case`object`:var t=e!=null;break a;case`function`:t=!0;break a;default:t=!1}t?this.resolveToNonPromiseObj_(e):this.fulfill_(e)}},i.prototype.resolveToNonPromiseObj_=function(e){var t=void 0;try{t=e.then}catch(e){this.reject_(e);return}typeof t==`function`?this.settleSameAsThenable_(t,e):this.fulfill_(e)},i.prototype.reject_=function(e){this.settle_(2,e)},i.prototype.fulfill_=function(e){this.settle_(1,e)},i.prototype.settle_=function(e,t){if(this.state_!=0)throw Error(`Cannot settle(`+e+`, `+t+`): Promise already settled in state`+this.state_);this.state_=e,this.result_=t,this.state_===2&&this.scheduleUnhandledRejectionCheck_(),this.executeOnSettledCallbacks_()},i.prototype.scheduleUnhandledRejectionCheck_=function(){var e=this;r(function(){if(e.notifyUnhandledRejection_()){var t=Z.global.console;t!==void 0&&t.error(e.result_)}},1)},i.prototype.notifyUnhandledRejection_=function(){if(this.isRejectionHandled_)return!1;var e=Z.global.CustomEvent,t=Z.global.Event,n=Z.global.dispatchEvent;return n===void 0||(typeof e==`function`?e=new e(`unhandledrejection`,{cancelable:!0}):typeof t==`function`?e=new t(`unhandledrejection`,{cancelable:!0}):(e=Z.global.document.createEvent(`CustomEvent`),e.initCustomEvent(`unhandledrejection`,!1,!0,e)),e.promise=this,e.reason=this.result_,n(e))},i.prototype.executeOnSettledCallbacks_=function(){if(this.onSettledCallbacks_!=null){for(var e=0;e<this.onSettledCallbacks_.length;++e)a.asyncExecute(this.onSettledCallbacks_[e]);this.onSettledCallbacks_=null}};var a=new t;return i.prototype.settleSameAsPromise_=function(e){var t=this.createResolveAndReject_();e.callWhenSettled_(t.resolve,t.reject)},i.prototype.settleSameAsThenable_=function(e,t){var n=this.createResolveAndReject_();try{e.call(t,n.resolve,n.reject)}catch(e){n.reject(e)}},i.prototype.then=function(e,t){function n(e,t){return typeof e==`function`?function(t){try{r(e(t))}catch(e){a(e)}}:t}var r,a,o=new i(function(e,t){r=e,a=t});return this.callWhenSettled_(n(e,r),n(t,a)),o},i.prototype.catch=function(e){return this.then(void 0,e)},i.prototype.callWhenSettled_=function(e,t){function n(){switch(r.state_){case 1:e(r.result_);break;case 2:t(r.result_);break;default:throw Error(`Unexpected state: `+r.state_)}}var r=this;this.onSettledCallbacks_==null?a.asyncExecute(n):this.onSettledCallbacks_.push(n),this.isRejectionHandled_=!0},i.resolve=n,i.reject=function(e){return new i(function(t,n){n(e)})},i.race=function(e){return new i(function(t,r){for(var i=Z.makeIterator(e),a=i.next();!a.done;a=i.next())n(a.value).callWhenSettled_(t,r)})},i.all=function(e){var t=Z.makeIterator(e),r=t.next();return r.done?n([]):new i(function(e,i){function a(t){return function(n){o[t]=n,s--,s==0&&e(o)}}var o=[],s=0;do o.push(void 0),s++,n(r.value).callWhenSettled_(a(o.length-1),i),r=t.next();while(!r.done)})},i},`es6`,`es3`),Z.checkStringArgs=function(e,t,n){if(e==null)throw TypeError(`The 'this' value for String.prototype.`+n+` must not be null or undefined`);if(t instanceof RegExp)throw TypeError(`First argument to String.prototype.`+n+` must not be a regular expression`);return e+``},Z.polyfill(`String.prototype.startsWith`,function(e){return e||function(e,t){var n=Z.checkStringArgs(this,e,`startsWith`);e+=``;var r=n.length,i=e.length;t=Math.max(0,Math.min(t|0,n.length));for(var a=0;a<i&&t<r;)if(n[t++]!=e[a++])return!1;return a>=i}},`es6`,`es3`),Z.polyfill(`String.prototype.codePointAt`,function(e){return e||function(e){var t=Z.checkStringArgs(this,null,`codePointAt`),n=t.length;if(e=Number(e)||0,e>=0&&e<n){e|=0;var r=t.charCodeAt(e);return r<55296||r>56319||e+1===n?r:(e=t.charCodeAt(e+1),e<56320||e>57343?r:(r-55296)*1024+e+9216)}}},`es6`,`es3`),fh=function(){var e=globalThis.document?.currentScript?.src;return function(t){function n(){this.ptr=Dn(),A(n)[this.ptr]=this}function r(){this.ptr=vn(),A(r)[this.ptr]=this}function i(){this.ptr=mn(),A(i)[this.ptr]=this}function a(){this.ptr=un(),A(a)[this.ptr]=this}function o(){this.ptr=on(),A(o)[this.ptr]=this}function s(){this.ptr=tn(),A(s)[this.ptr]=this}function c(){this.ptr=Zt(),A(c)[this.ptr]=this}function l(){this.ptr=qt(),A(l)[this.ptr]=this}function u(){this.ptr=Ut(),A(u)[this.ptr]=this}function d(){throw`cannot construct a Status, no constructor in IDL`}function f(){this.ptr=Lt(),A(f)[this.ptr]=this}function p(){this.ptr=Mt(),A(p)[this.ptr]=this}function m(){this.ptr=Ot(),A(m)[this.ptr]=this}function h(){this.ptr=wt(),A(h)[this.ptr]=this}function g(){this.ptr=vt(),A(g)[this.ptr]=this}function _(){this.ptr=st(),A(_)[this.ptr]=this}function v(){this.ptr=at(),A(v)[this.ptr]=this}function y(){this.ptr=nt(),A(y)[this.ptr]=this}function b(){this.ptr=$e(),A(b)[this.ptr]=this}function x(){throw`cannot construct a VoidPtr, no constructor in IDL`}function S(e){if(typeof e==`object`){for(var t=z.alloc(e,De),n=0;n<e.length;n++)De[t+n]=e[n];return t}return e}function C(e){if(typeof e==`string`){e=Je(e);for(var t=z.alloc(e,De),n=0;n<e.length;n++)De[t+n]=e[n];return t}return e}function w(e){return e.__class__}function T(e){return e.ptr}function E(e,t){return e.ptr===t.ptr}function D(e){if(!e.__destroy__)throw`Error: Cannot destroy object. (Did you create it yourself?)`;e.__destroy__(),delete A(e.__class__)[e.ptr]}function O(e,t){return k(e.ptr,t)}function k(e,t){var n=A(t),r=n[e];return r||(r=Object.create((t||j).prototype),r.ptr=e,n[e]=r)}function A(e){return(e||j).__cache__}function j(){}function ee(){var e,t,n;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(r){if(r.getNextAddressJsc()==1)return se(),e=N.setStatus,e?(e(`Running...`),r.yield(new Promise(function(e){return setTimeout(e,1)}),3)):r.jumpTo(2);if(r.getNextAddressJsc()!=2&&setTimeout(e,1,``),Se)return r.return();Ee=!0,Oe(Ye),Ir.g(),(n=(t=N).onRuntimeInitialized)==null||n.call(t),oe(),r.jumpToEnd()})}function te(){function e(e){return e=Ir=e.exports,N._webidl_free=e.h,N._free=e.i,N._webidl_malloc=e.j,N._malloc=e.k,Qe=N._emscripten_bind_VoidPtr___destroy___0=e.l,$e=N._emscripten_bind_DecoderBuffer_DecoderBuffer_0=e.m,et=N._emscripten_bind_DecoderBuffer_Init_2=e.n,tt=N._emscripten_bind_DecoderBuffer___destroy___0=e.o,nt=N._emscripten_bind_AttributeTransformData_AttributeTransformData_0=e.p,rt=N._emscripten_bind_AttributeTransformData_transform_type_0=e.q,it=N._emscripten_bind_AttributeTransformData___destroy___0=e.r,at=N._emscripten_bind_GeometryAttribute_GeometryAttribute_0=e.s,ot=N._emscripten_bind_GeometryAttribute___destroy___0=e.t,st=N._emscripten_bind_PointAttribute_PointAttribute_0=e.u,ct=N._emscripten_bind_PointAttribute_size_0=e.v,lt=N._emscripten_bind_PointAttribute_GetAttributeTransformData_0=e.w,ut=N._emscripten_bind_PointAttribute_attribute_type_0=e.x,dt=N._emscripten_bind_PointAttribute_data_type_0=e.y,ft=N._emscripten_bind_PointAttribute_num_components_0=e.z,pt=N._emscripten_bind_PointAttribute_normalized_0=e.A,mt=N._emscripten_bind_PointAttribute_byte_stride_0=e.B,ht=N._emscripten_bind_PointAttribute_byte_offset_0=e.C,gt=N._emscripten_bind_PointAttribute_unique_id_0=e.D,_t=N._emscripten_bind_PointAttribute___destroy___0=e.E,vt=N._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=e.F,yt=N._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=e.G,bt=N._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=e.H,xt=N._emscripten_bind_AttributeQuantizationTransform_min_value_1=e.I,St=N._emscripten_bind_AttributeQuantizationTransform_range_0=e.J,Ct=N._emscripten_bind_AttributeQuantizationTransform___destroy___0=e.K,wt=N._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=e.L,Tt=N._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=e.M,Et=N._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=e.N,Dt=N._emscripten_bind_AttributeOctahedronTransform___destroy___0=e.O,Ot=N._emscripten_bind_PointCloud_PointCloud_0=e.P,kt=N._emscripten_bind_PointCloud_num_attributes_0=e.Q,At=N._emscripten_bind_PointCloud_num_points_0=e.R,jt=N._emscripten_bind_PointCloud___destroy___0=e.S,Mt=N._emscripten_bind_Mesh_Mesh_0=e.T,Nt=N._emscripten_bind_Mesh_num_faces_0=e.U,Pt=N._emscripten_bind_Mesh_num_attributes_0=e.V,Ft=N._emscripten_bind_Mesh_num_points_0=e.W,It=N._emscripten_bind_Mesh___destroy___0=e.X,Lt=N._emscripten_bind_Metadata_Metadata_0=e.Y,Rt=N._emscripten_bind_Metadata___destroy___0=e.Z,zt=N._emscripten_bind_Status_code_0=e._,Bt=N._emscripten_bind_Status_ok_0=e.$,Vt=N._emscripten_bind_Status_error_msg_0=e.aa,Ht=N._emscripten_bind_Status___destroy___0=e.ba,Ut=N._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=e.ca,Wt=N._emscripten_bind_DracoFloat32Array_GetValue_1=e.da,Gt=N._emscripten_bind_DracoFloat32Array_size_0=e.ea,Kt=N._emscripten_bind_DracoFloat32Array___destroy___0=e.fa,qt=N._emscripten_bind_DracoInt8Array_DracoInt8Array_0=e.ga,Jt=N._emscripten_bind_DracoInt8Array_GetValue_1=e.ha,Yt=N._emscripten_bind_DracoInt8Array_size_0=e.ia,Xt=N._emscripten_bind_DracoInt8Array___destroy___0=e.ja,Zt=N._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=e.ka,Qt=N._emscripten_bind_DracoUInt8Array_GetValue_1=e.la,$t=N._emscripten_bind_DracoUInt8Array_size_0=e.ma,en=N._emscripten_bind_DracoUInt8Array___destroy___0=e.na,tn=N._emscripten_bind_DracoInt16Array_DracoInt16Array_0=e.oa,nn=N._emscripten_bind_DracoInt16Array_GetValue_1=e.pa,rn=N._emscripten_bind_DracoInt16Array_size_0=e.qa,an=N._emscripten_bind_DracoInt16Array___destroy___0=e.ra,on=N._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=e.sa,sn=N._emscripten_bind_DracoUInt16Array_GetValue_1=e.ta,cn=N._emscripten_bind_DracoUInt16Array_size_0=e.ua,ln=N._emscripten_bind_DracoUInt16Array___destroy___0=e.va,un=N._emscripten_bind_DracoInt32Array_DracoInt32Array_0=e.wa,dn=N._emscripten_bind_DracoInt32Array_GetValue_1=e.xa,fn=N._emscripten_bind_DracoInt32Array_size_0=e.ya,pn=N._emscripten_bind_DracoInt32Array___destroy___0=e.za,mn=N._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=e.Aa,hn=N._emscripten_bind_DracoUInt32Array_GetValue_1=e.Ba,gn=N._emscripten_bind_DracoUInt32Array_size_0=e.Ca,_n=N._emscripten_bind_DracoUInt32Array___destroy___0=e.Da,vn=N._emscripten_bind_MetadataQuerier_MetadataQuerier_0=e.Ea,yn=N._emscripten_bind_MetadataQuerier_HasEntry_2=e.Fa,bn=N._emscripten_bind_MetadataQuerier_GetIntEntry_2=e.Ga,xn=N._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=e.Ha,Sn=N._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=e.Ia,Cn=N._emscripten_bind_MetadataQuerier_GetStringEntry_2=e.Ja,wn=N._emscripten_bind_MetadataQuerier_NumEntries_1=e.Ka,Tn=N._emscripten_bind_MetadataQuerier_GetEntryName_2=e.La,En=N._emscripten_bind_MetadataQuerier___destroy___0=e.Ma,Dn=N._emscripten_bind_Decoder_Decoder_0=e.Na,On=N._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=e.Oa,kn=N._emscripten_bind_Decoder_DecodeArrayToMesh_3=e.Pa,An=N._emscripten_bind_Decoder_GetAttributeId_2=e.Qa,jn=N._emscripten_bind_Decoder_GetAttributeIdByName_2=e.Ra,Mn=N._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=e.Sa,Nn=N._emscripten_bind_Decoder_GetAttribute_2=e.Ta,Pn=N._emscripten_bind_Decoder_GetAttributeByUniqueId_2=e.Ua,Fn=N._emscripten_bind_Decoder_GetMetadata_1=e.Va,In=N._emscripten_bind_Decoder_GetAttributeMetadata_2=e.Wa,Ln=N._emscripten_bind_Decoder_GetFaceFromMesh_3=e.Xa,Rn=N._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=e.Ya,zn=N._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=e.Za,Bn=N._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=e._a,Vn=N._emscripten_bind_Decoder_GetAttributeFloat_3=e.$a,Hn=N._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=e.ab,Un=N._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=e.bb,Wn=N._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=e.cb,Gn=N._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=e.db,Kn=N._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=e.eb,qn=N._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=e.fb,Jn=N._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=e.gb,Yn=N._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=e.hb,Xn=N._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=e.ib,Zn=N._emscripten_bind_Decoder_SkipAttributeTransform_1=e.jb,Qn=N._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=e.kb,$n=N._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=e.lb,er=N._emscripten_bind_Decoder_DecodeBufferToMesh_2=e.mb,tr=N._emscripten_bind_Decoder___destroy___0=e.nb,nr=N._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=e.ob,rr=N._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=e.pb,ir=N._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=e.qb,ar=N._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=e.rb,or=N._emscripten_enum_draco_GeometryAttribute_Type_INVALID=e.sb,sr=N._emscripten_enum_draco_GeometryAttribute_Type_POSITION=e.tb,cr=N._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=e.ub,lr=N._emscripten_enum_draco_GeometryAttribute_Type_COLOR=e.vb,ur=N._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=e.wb,dr=N._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=e.xb,fr=N._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=e.yb,pr=N._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=e.zb,mr=N._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=e.Ab,hr=N._emscripten_enum_draco_DataType_DT_INVALID=e.Bb,gr=N._emscripten_enum_draco_DataType_DT_INT8=e.Cb,_r=N._emscripten_enum_draco_DataType_DT_UINT8=e.Db,vr=N._emscripten_enum_draco_DataType_DT_INT16=e.Eb,yr=N._emscripten_enum_draco_DataType_DT_UINT16=e.Fb,br=N._emscripten_enum_draco_DataType_DT_INT32=e.Gb,xr=N._emscripten_enum_draco_DataType_DT_UINT32=e.Hb,Sr=N._emscripten_enum_draco_DataType_DT_INT64=e.Ib,Cr=N._emscripten_enum_draco_DataType_DT_UINT64=e.Jb,wr=N._emscripten_enum_draco_DataType_DT_FLOAT32=e.Kb,Tr=N._emscripten_enum_draco_DataType_DT_FLOAT64=e.Lb,Er=N._emscripten_enum_draco_DataType_DT_BOOL=e.Mb,Dr=N._emscripten_enum_draco_DataType_DT_TYPES_COUNT=e.Nb,Or=N._emscripten_enum_draco_StatusCode_OK=e.Ob,kr=N._emscripten_enum_draco_StatusCode_DRACO_ERROR=e.Pb,Ar=N._emscripten_enum_draco_StatusCode_IO_ERROR=e.Qb,jr=N._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=e.Rb,Mr=N._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=e.Sb,Nr=N._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=e.Tb,Pr=e.f,ce(),Ir}var t,n,r,i;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(a){return a.getNextAddressJsc()==1?(t={a:Fr},(n=N.instantiateWasm)?a.return(new Promise(function(r){n(t,function(t){return r(e(t))})})):(P??(P=le(`draco_decoder.wasm`)),a.yield(ne(xe,P,t),2))):(r=a.getYieldResultJsc(),i=e(r.instance),a.return(i))})}function ne(e,t,n){var r,i,a;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(o){switch(o.getNextAddressJsc()){case 1:if(e||Ce(t)||fe){o.jumpTo(2);break}return o.setCatchFinallyBlocks(3),r=fetch(t,{credentials:`same-origin`}),o.yield(WebAssembly.instantiateStreaming(r,n),5);case 5:return i=o.getYieldResultJsc(),o.return(i);case 3:a=o.enterCatchBlock(),be(`wasm streaming compile failed: `+a),be(`falling back to ArrayBuffer instantiation`);case 2:return o.return(re(t,n))}})}function re(e,t){var n,r,i;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(a){switch(a.getNextAddressJsc()){case 1:return a.setCatchFinallyBlocks(2),a.yield(ie(e),4);case 4:return n=a.getYieldResultJsc(),a.yield(WebAssembly.instantiate(n,t),5);case 5:return r=a.getYieldResultJsc(),a.return(r);case 2:i=a.enterCatchBlock(),be(`failed to asynchronously prepare wasm: `+i),ae(i),a.jumpToEnd()}})}function ie(e){var t;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(n){switch(n.getNextAddressJsc()){case 1:if(xe){n.jumpTo(2);break}return n.setCatchFinallyBlocks(3),n.yield(ge(e),5);case 5:return t=n.getYieldResultJsc(),n.return(new Uint8Array(t));case 3:n.enterCatchBlock();case 2:var r=n.return;if(e==P&&xe)var i=new Uint8Array(xe);else if(_e)i=_e(e);else throw`both async and sync fetching of the wasm failed`;return r.call(n,i)}})}function ae(e){var t,n;throw(n=(t=N).onAbort)==null||n.call(t,e),e=`Aborted(`+e+`)`,be(e),Se=!0,new WebAssembly.RuntimeError(e+`. Build with -sASSERTIONS for more info.`)}function oe(){var e=N.postRun;e&&(typeof e==`function`&&(e=[e]),ke.push.apply(ke,(0,Z.arrayFromIterable)(e))),Oe(ke)}function se(){var e=N.preRun;e&&(typeof e==`function`&&(e=[e]),Ae.push.apply(Ae,(0,Z.arrayFromIterable)(e))),Oe(Ae)}function ce(){var e,t;(e=De)!=null&&(t=e.buffer)!=null&&t.resizable||(e=Pr.buffer,N.HEAP8=De=new Int8Array(e),N.HEAP16=new Int16Array(e),N.HEAPU8=R=new Uint8Array(e),N.HEAPU16=new Uint16Array(e),N.HEAP32=new Int32Array(e),N.HEAPU32=je=new Uint32Array(e),N.HEAPF32=new Float32Array(e),N.HEAPF64=new Float64Array(e))}function le(e){return N.locateFile?N.locateFile(e,he):he+e}function M(e){return typeof e==`string`&&(e=e.split(`.`),e.length<2||e.length>3?!1:e[0]==1&&e[1]>=0&&e[1]<=5||!(e[0]!=0||e[1]>10))}t=t===void 0?{}:t;var N,ue,de,fe,pe,me,he,ge,_e,ve,ye,be,xe,Se,Ce,we,Te,Ee,P,De,Oe,ke,Ae,je,Me,Ne,Pe,Fe,Ie,F,I,L,R,Le,Re,ze,Be,Ve,He,Ue,We,Ge,Ke,qe,Je,Ye,Xe,Ze,Qe,$e,et,tt,nt,rt,it,at,ot,st,ct,lt,ut,dt,ft,pt,mt,ht,gt,_t,vt,yt,bt,xt,St,Ct,wt,Tt,Et,Dt,Ot,kt,At,jt,Mt,Nt,Pt,Ft,It,Lt,Rt,zt,Bt,Vt,Ht,Ut,Wt,Gt,Kt,qt,Jt,Yt,Xt,Zt,Qt,$t,en,tn,nn,rn,an,on,sn,cn,ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn,xn,Sn,Cn,wn,Tn,En,Dn,On,kn,An,jn,Mn,Nn,Pn,Fn,In,Ln,Rn,zn,Bn,Vn,Hn,Un,Wn,Gn,Kn,qn,Jn,Yn,Xn,Zn,Qn,$n,er,tr,nr,rr,ir,ar,or,sr,cr,lr,ur,dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr,Sr,Cr,wr,Tr,Er,Dr,Or,kr,Ar,jr,Mr,Nr,Pr,Fr,Ir,z;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(ne){if(ne.getNextAddressJsc()==1){if(N=t,ue=!!globalThis.window,de=!!globalThis.WorkerGlobalScope,fe=globalThis.process?.versions?.node&&globalThis.process?.type!=`renderer`,me=pe=!1,N.onRuntimeInitialized=function(){pe=!0,me&&typeof N.onModuleLoaded==`function`&&N.onModuleLoaded(N)},N.onModuleParsed=function(){me=!0,pe&&typeof N.onModuleLoaded==`function`&&N.onModuleLoaded(N)},N.isVersionSupported=M,typeof __filename<`u`?e=__filename:de&&(e=self.location.href),he=``,fe)ve=ch(),he=__dirname+`/`,_e=function(e){return e=Ce(e)?new URL(e):e,ve.readFileSync(e)},ge=function(e,t){t=t===void 0||t;var n;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(r){return e=Ce(e)?new URL(e):e,n=ve.readFileSync(e,t?void 0:`utf8`),r.return(n)})},process.argv.length>1&&process.argv[1].replace(/\\/g,`/`),process.argv.slice(2);else if(ue||de){try{he=new URL(`.`,e).href}catch{}de&&(_e=function(e){var t=new XMLHttpRequest;return t.open(`GET`,e,!1),t.responseType=`arraybuffer`,t.send(null),new Uint8Array(t.response)}),ge=function(e){var t;return(0,Z.asyncExecutePromiseGeneratorProgram)(function(n){if(n.getNextAddressJsc()==1)return Ce(e)?n.return(new Promise(function(t,n){var r=new XMLHttpRequest;r.open(`GET`,e,!0),r.responseType=`arraybuffer`,r.onload=function(){r.status==200||r.status==0&&r.response?t(r.response):n(r.status)},r.onerror=n,r.send(null)})):n.yield(fetch(e,{credentials:`same-origin`}),2);if(t=n.getYieldResultJsc(),t.ok)return n.return(t.arrayBuffer());throw Error(t.status+` : `+t.url)})}}if(ye=console.log.bind(console),be=console.error.bind(console),Se=!1,Ce=function(e){return e.startsWith(`file://`)},we=function(){},Te=function(){return we.apply(this,arguments)||this},Z.inherits(Te,we),Ee=!1,Oe=function(e){for(;e.length>0;)e.shift()(N)},ke=[],Ae=[],Me=function(e){this.excPtr=e,this.ptr=e-24},Me.prototype.set_type=function(e){je[this.ptr+4>>2]=e},Me.prototype.get_type=function(){return je[this.ptr+4>>2]},Me.prototype.set_destructor=function(e){je[this.ptr+8>>2]=e},Me.prototype.get_destructor=function(){return je[this.ptr+8>>2]},Me.prototype.set_caught=function(e){De[this.ptr+12]=+!!e},Me.prototype.get_caught=function(){return De[this.ptr+12]!=0},Me.prototype.set_rethrown=function(e){De[this.ptr+13]=+!!e},Me.prototype.get_rethrown=function(){return De[this.ptr+13]!=0},Me.prototype.init=function(e,t){this.set_adjusted_ptr(0),this.set_type(e),this.set_destructor(t)},Me.prototype.set_adjusted_ptr=function(e){je[this.ptr+16>>2]=e},Me.prototype.get_adjusted_ptr=function(){return je[this.ptr+16>>2]},Ne=0,Pe=function(e){ae()},Fe=function(e,t,n){new Me(e).init(t,n),Ne++,Pe(e)},Ie=function(){return ae(``)},F=function(){return 2147483648},I=function(e,t){return Math.ceil(e/t)*t},L=function(e){var t=Pr.buffer.byteLength;try{return Pr.grow((e-t+65535)/65536|0),ce(),1}catch{}},Le=function(e){var t=R.length;e>>>=0;var n=F();if(e>n)return!1;for(var r=1;r<=4;r*=2){var i=t*(1+.2/r);if(i=Math.min(i,e+100663296),i=Math.min(n,I(Math.max(e,i),65536)),L(i))return!0}return!1},Re=function(e){return 52},ze=[null,[],[]],Be=globalThis.TextDecoder&&new TextDecoder,Ve=function(e,t,n,r){if(n=t+n,r)return n;for(;e[t]&&!(t>=n);)++t;return t},He=function(e,t,n,r){if(t=t===void 0?0:t,n=Ve(e,t,n,r),n-t>16&&e.buffer&&Be)return Be.decode(e.subarray(t,n));for(r=``;t<n;){var i=e[t++];if(i&128){var a=e[t++]&63;if((i&224)==192)r+=String.fromCharCode((i&31)<<6|a);else{var o=e[t++]&63;i=(i&240)==224?(i&15)<<12|a<<6|o:(i&7)<<18|a<<12|o<<6|e[t++]&63,i<65536?r+=String.fromCharCode(i):(i-=65536,r+=String.fromCharCode(55296|i>>10,56320|i&1023))}}else r+=String.fromCharCode(i)}return r},Ue=function(e,t){var n=ze[e];t&&t!==10?n.push(t):((e===1?ye:be)(He(n)),n.length=0)},We=function(e,t,n){return e?He(R,e,t,n):``},Ge=function(e,t,n,r){for(var i=0,a=0;a<n;a++){var o=je[t>>2],s=je[t+4>>2];t+=8;for(var c=0;c<s;c++)Ue(e,R[o+c]);i+=s}return je[r>>2]=i,0},Ke=function(e){for(var t=0,n=0;n<e.length;++n){var r=e.charCodeAt(n);r<=127?t++:r<=2047?t+=2:r>=55296&&r<=57343?(t+=4,++n):t+=3}return t},qe=function(e,t,n,r){if(!(r>0))return 0;var i=n;r=n+r-1;for(var a=0;a<e.length;++a){var o=e.codePointAt(a);if(o<=127){if(n>=r)break;t[n++]=o}else if(o<=2047){if(n+1>=r)break;t[n++]=192|o>>6,t[n++]=128|o&63}else if(o<=65535){if(n+2>=r)break;t[n++]=224|o>>12,t[n++]=128|o>>6&63,t[n++]=128|o&63}else{if(n+3>=r)break;t[n++]=240|o>>18,t[n++]=128|o>>12&63,t[n++]=128|o>>6&63,t[n++]=128|o&63,a++}}return t[n]=0,n-i},Je=function(e,t,n){return n=n>0?n:Ke(e)+1,n=Array(n),e=qe(e,n,0,n.length),t&&(n.length=e),n},Ye=[],Xe=function(e){return Ye.push(e)},N.print&&(ye=N.print),N.printErr&&(be=N.printErr),N.wasmBinary&&(xe=N.wasmBinary),Ze=N.preInit)for(typeof Ze==`function`&&(N.preInit=Ze=[Ze]);Ze.length>0;)Ze.shift()();return Fr={a:Fe,e:Ie,c:Le,d:Re,b:Ge},ne.yield(te(),2)}return ne.getNextAddressJsc()==3?(j.prototype=Object.create(j.prototype),j.prototype.constructor=j,j.prototype.__class__=j,j.__cache__={},N.WrapperObject=j,N.getCache=A,N.wrapPointer=k,N.castObject=O,N.NULL=k(0),N.destroy=D,N.compare=E,N.getPointer=T,N.getClass=w,z={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(z.needed){for(var e=0;e<z.temps.length;e++)N._webidl_free(z.temps[e]);z.temps.length=0,N._webidl_free(z.buffer),z.buffer=0,z.size+=z.needed,z.needed=0}z.buffer||(z.size+=128,z.buffer=N._webidl_malloc(z.size),z.buffer||ae(void 0)),z.pos=0},alloc:function(e,t){return z.buffer||ae(void 0),e=e.length*t.BYTES_PER_ELEMENT,e=I(e,8),z.pos+e>=z.size?(e>0||ae(void 0),z.needed+=e,t=N._webidl_malloc(e),z.temps.push(t)):(t=z.buffer+z.pos,z.pos+=e),t}},x.prototype=Object.create(j.prototype),x.prototype.constructor=x,x.prototype.__class__=x,x.__cache__={},N.VoidPtr=x,x.prototype.__destroy__=x.prototype.__destroy__=function(){Qe(this.ptr)},b.prototype=Object.create(j.prototype),b.prototype.constructor=b,b.prototype.__class__=b,b.__cache__={},N.DecoderBuffer=b,b.prototype.Init=b.prototype.Init=function(e,t){var n=this.ptr;z.prepare(),typeof e==`object`&&(e=S(e)),t&&typeof t==`object`&&(t=t.ptr),et(n,e,t)},b.prototype.__destroy__=b.prototype.__destroy__=function(){tt(this.ptr)},y.prototype=Object.create(j.prototype),y.prototype.constructor=y,y.prototype.__class__=y,y.__cache__={},N.AttributeTransformData=y,y.prototype.transform_type=y.prototype.transform_type=function(){return rt(this.ptr)},y.prototype.__destroy__=y.prototype.__destroy__=function(){it(this.ptr)},v.prototype=Object.create(j.prototype),v.prototype.constructor=v,v.prototype.__class__=v,v.__cache__={},N.GeometryAttribute=v,v.prototype.__destroy__=v.prototype.__destroy__=function(){ot(this.ptr)},_.prototype=Object.create(j.prototype),_.prototype.constructor=_,_.prototype.__class__=_,_.__cache__={},N.PointAttribute=_,_.prototype.size=_.prototype.size=function(){return ct(this.ptr)},_.prototype.GetAttributeTransformData=_.prototype.GetAttributeTransformData=function(){return k(lt(this.ptr),y)},_.prototype.attribute_type=_.prototype.attribute_type=function(){return ut(this.ptr)},_.prototype.data_type=_.prototype.data_type=function(){return dt(this.ptr)},_.prototype.num_components=_.prototype.num_components=function(){return ft(this.ptr)},_.prototype.normalized=_.prototype.normalized=function(){return!!pt(this.ptr)},_.prototype.byte_stride=_.prototype.byte_stride=function(){return mt(this.ptr)},_.prototype.byte_offset=_.prototype.byte_offset=function(){return ht(this.ptr)},_.prototype.unique_id=_.prototype.unique_id=function(){return gt(this.ptr)},_.prototype.__destroy__=_.prototype.__destroy__=function(){_t(this.ptr)},g.prototype=Object.create(j.prototype),g.prototype.constructor=g,g.prototype.__class__=g,g.__cache__={},N.AttributeQuantizationTransform=g,g.prototype.InitFromAttribute=g.prototype.InitFromAttribute=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),!!yt(t,e)},g.prototype.quantization_bits=g.prototype.quantization_bits=function(){return bt(this.ptr)},g.prototype.min_value=g.prototype.min_value=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),xt(t,e)},g.prototype.range=g.prototype.range=function(){return St(this.ptr)},g.prototype.__destroy__=g.prototype.__destroy__=function(){Ct(this.ptr)},h.prototype=Object.create(j.prototype),h.prototype.constructor=h,h.prototype.__class__=h,h.__cache__={},N.AttributeOctahedronTransform=h,h.prototype.InitFromAttribute=h.prototype.InitFromAttribute=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),!!Tt(t,e)},h.prototype.quantization_bits=h.prototype.quantization_bits=function(){return Et(this.ptr)},h.prototype.__destroy__=h.prototype.__destroy__=function(){Dt(this.ptr)},m.prototype=Object.create(j.prototype),m.prototype.constructor=m,m.prototype.__class__=m,m.__cache__={},N.PointCloud=m,m.prototype.num_attributes=m.prototype.num_attributes=function(){return kt(this.ptr)},m.prototype.num_points=m.prototype.num_points=function(){return At(this.ptr)},m.prototype.__destroy__=m.prototype.__destroy__=function(){jt(this.ptr)},p.prototype=Object.create(j.prototype),p.prototype.constructor=p,p.prototype.__class__=p,p.__cache__={},N.Mesh=p,p.prototype.num_faces=p.prototype.num_faces=function(){return Nt(this.ptr)},p.prototype.num_attributes=p.prototype.num_attributes=function(){return Pt(this.ptr)},p.prototype.num_points=p.prototype.num_points=function(){return Ft(this.ptr)},p.prototype.__destroy__=p.prototype.__destroy__=function(){It(this.ptr)},f.prototype=Object.create(j.prototype),f.prototype.constructor=f,f.prototype.__class__=f,f.__cache__={},N.Metadata=f,f.prototype.__destroy__=f.prototype.__destroy__=function(){Rt(this.ptr)},d.prototype=Object.create(j.prototype),d.prototype.constructor=d,d.prototype.__class__=d,d.__cache__={},N.Status=d,d.prototype.code=d.prototype.code=function(){return zt(this.ptr)},d.prototype.ok=d.prototype.ok=function(){return!!Bt(this.ptr)},d.prototype.error_msg=d.prototype.error_msg=function(){return We(Vt(this.ptr))},d.prototype.__destroy__=d.prototype.__destroy__=function(){Ht(this.ptr)},u.prototype=Object.create(j.prototype),u.prototype.constructor=u,u.prototype.__class__=u,u.__cache__={},N.DracoFloat32Array=u,u.prototype.GetValue=u.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),Wt(t,e)},u.prototype.size=u.prototype.size=function(){return Gt(this.ptr)},u.prototype.__destroy__=u.prototype.__destroy__=function(){Kt(this.ptr)},l.prototype=Object.create(j.prototype),l.prototype.constructor=l,l.prototype.__class__=l,l.__cache__={},N.DracoInt8Array=l,l.prototype.GetValue=l.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),Jt(t,e)},l.prototype.size=l.prototype.size=function(){return Yt(this.ptr)},l.prototype.__destroy__=l.prototype.__destroy__=function(){Xt(this.ptr)},c.prototype=Object.create(j.prototype),c.prototype.constructor=c,c.prototype.__class__=c,c.__cache__={},N.DracoUInt8Array=c,c.prototype.GetValue=c.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),Qt(t,e)},c.prototype.size=c.prototype.size=function(){return $t(this.ptr)},c.prototype.__destroy__=c.prototype.__destroy__=function(){en(this.ptr)},s.prototype=Object.create(j.prototype),s.prototype.constructor=s,s.prototype.__class__=s,s.__cache__={},N.DracoInt16Array=s,s.prototype.GetValue=s.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),nn(t,e)},s.prototype.size=s.prototype.size=function(){return rn(this.ptr)},s.prototype.__destroy__=s.prototype.__destroy__=function(){an(this.ptr)},o.prototype=Object.create(j.prototype),o.prototype.constructor=o,o.prototype.__class__=o,o.__cache__={},N.DracoUInt16Array=o,o.prototype.GetValue=o.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),sn(t,e)},o.prototype.size=o.prototype.size=function(){return cn(this.ptr)},o.prototype.__destroy__=o.prototype.__destroy__=function(){ln(this.ptr)},a.prototype=Object.create(j.prototype),a.prototype.constructor=a,a.prototype.__class__=a,a.__cache__={},N.DracoInt32Array=a,a.prototype.GetValue=a.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),dn(t,e)},a.prototype.size=a.prototype.size=function(){return fn(this.ptr)},a.prototype.__destroy__=a.prototype.__destroy__=function(){pn(this.ptr)},i.prototype=Object.create(j.prototype),i.prototype.constructor=i,i.prototype.__class__=i,i.__cache__={},N.DracoUInt32Array=i,i.prototype.GetValue=i.prototype.GetValue=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),hn(t,e)},i.prototype.size=i.prototype.size=function(){return gn(this.ptr)},i.prototype.__destroy__=i.prototype.__destroy__=function(){_n(this.ptr)},r.prototype=Object.create(j.prototype),r.prototype.constructor=r,r.prototype.__class__=r,r.__cache__={},N.MetadataQuerier=r,r.prototype.HasEntry=r.prototype.HasEntry=function(e,t){var n=this.ptr;return z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),!!yn(n,e,t)},r.prototype.GetIntEntry=r.prototype.GetIntEntry=function(e,t){var n=this.ptr;return z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),bn(n,e,t)},r.prototype.GetIntEntryArray=r.prototype.GetIntEntryArray=function(e,t,n){var r=this.ptr;z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),n&&typeof n==`object`&&(n=n.ptr),xn(r,e,t,n)},r.prototype.GetDoubleEntry=r.prototype.GetDoubleEntry=function(e,t){var n=this.ptr;return z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),Sn(n,e,t)},r.prototype.GetStringEntry=r.prototype.GetStringEntry=function(e,t){var n=this.ptr;return z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),We(Cn(n,e,t))},r.prototype.NumEntries=r.prototype.NumEntries=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),wn(t,e)},r.prototype.GetEntryName=r.prototype.GetEntryName=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),We(Tn(n,e,t))},r.prototype.__destroy__=r.prototype.__destroy__=function(){En(this.ptr)},n.prototype=Object.create(j.prototype),n.prototype.constructor=n,n.prototype.__class__=n,n.__cache__={},N.Decoder=n,n.prototype.DecodeArrayToPointCloud=n.prototype.DecodeArrayToPointCloud=function(e,t,n){var r=this.ptr;return z.prepare(),typeof e==`object`&&(e=S(e)),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),k(On(r,e,t,n),d)},n.prototype.DecodeArrayToMesh=n.prototype.DecodeArrayToMesh=function(e,t,n){var r=this.ptr;return z.prepare(),typeof e==`object`&&(e=S(e)),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),k(kn(r,e,t,n),d)},n.prototype.GetAttributeId=n.prototype.GetAttributeId=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),An(n,e,t)},n.prototype.GetAttributeIdByName=n.prototype.GetAttributeIdByName=function(e,t){var n=this.ptr;return z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),jn(n,e,t)},n.prototype.GetAttributeIdByMetadataEntry=n.prototype.GetAttributeIdByMetadataEntry=function(e,t,n){var r=this.ptr;return z.prepare(),e&&typeof e==`object`&&(e=e.ptr),t=t&&typeof t==`object`?t.ptr:C(t),n=n&&typeof n==`object`?n.ptr:C(n),Mn(r,e,t,n)},n.prototype.GetAttribute=n.prototype.GetAttribute=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),k(Nn(n,e,t),_)},n.prototype.GetAttributeByUniqueId=n.prototype.GetAttributeByUniqueId=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),k(Pn(n,e,t),_)},n.prototype.GetMetadata=n.prototype.GetMetadata=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),k(Fn(t,e),f)},n.prototype.GetAttributeMetadata=n.prototype.GetAttributeMetadata=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),k(In(n,e,t),f)},n.prototype.GetFaceFromMesh=n.prototype.GetFaceFromMesh=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Ln(r,e,t,n)},n.prototype.GetTriangleStripsFromMesh=n.prototype.GetTriangleStripsFromMesh=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),Rn(n,e,t)},n.prototype.GetTrianglesUInt16Array=n.prototype.GetTrianglesUInt16Array=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!zn(r,e,t,n)},n.prototype.GetTrianglesUInt32Array=n.prototype.GetTrianglesUInt32Array=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Bn(r,e,t,n)},n.prototype.GetAttributeFloat=n.prototype.GetAttributeFloat=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Vn(r,e,t,n)},n.prototype.GetAttributeFloatForAllPoints=n.prototype.GetAttributeFloatForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Hn(r,e,t,n)},n.prototype.GetAttributeIntForAllPoints=n.prototype.GetAttributeIntForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Un(r,e,t,n)},n.prototype.GetAttributeInt8ForAllPoints=n.prototype.GetAttributeInt8ForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Wn(r,e,t,n)},n.prototype.GetAttributeUInt8ForAllPoints=n.prototype.GetAttributeUInt8ForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Gn(r,e,t,n)},n.prototype.GetAttributeInt16ForAllPoints=n.prototype.GetAttributeInt16ForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Kn(r,e,t,n)},n.prototype.GetAttributeUInt16ForAllPoints=n.prototype.GetAttributeUInt16ForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!qn(r,e,t,n)},n.prototype.GetAttributeInt32ForAllPoints=n.prototype.GetAttributeInt32ForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Jn(r,e,t,n)},n.prototype.GetAttributeUInt32ForAllPoints=n.prototype.GetAttributeUInt32ForAllPoints=function(e,t,n){var r=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),!!Yn(r,e,t,n)},n.prototype.GetAttributeDataArrayForAllPoints=n.prototype.GetAttributeDataArrayForAllPoints=function(e,t,n,r,i){var a=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),n&&typeof n==`object`&&(n=n.ptr),r&&typeof r==`object`&&(r=r.ptr),i&&typeof i==`object`&&(i=i.ptr),!!Xn(a,e,t,n,r,i)},n.prototype.SkipAttributeTransform=n.prototype.SkipAttributeTransform=function(e){var t=this.ptr;e&&typeof e==`object`&&(e=e.ptr),Zn(t,e)},n.prototype.GetEncodedGeometryType_Deprecated=n.prototype.GetEncodedGeometryType_Deprecated=function(e){var t=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),Qn(t,e)},n.prototype.DecodeBufferToPointCloud=n.prototype.DecodeBufferToPointCloud=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),k($n(n,e,t),d)},n.prototype.DecodeBufferToMesh=n.prototype.DecodeBufferToMesh=function(e,t){var n=this.ptr;return e&&typeof e==`object`&&(e=e.ptr),t&&typeof t==`object`&&(t=t.ptr),k(er(n,e,t),d)},n.prototype.__destroy__=n.prototype.__destroy__=function(){tr(this.ptr)},(function(){function e(){N.ATTRIBUTE_INVALID_TRANSFORM=nr(),N.ATTRIBUTE_NO_TRANSFORM=rr(),N.ATTRIBUTE_QUANTIZATION_TRANSFORM=ir(),N.ATTRIBUTE_OCTAHEDRON_TRANSFORM=ar(),N.INVALID=or(),N.POSITION=sr(),N.NORMAL=cr(),N.COLOR=lr(),N.TEX_COORD=ur(),N.GENERIC=dr(),N.INVALID_GEOMETRY_TYPE=fr(),N.POINT_CLOUD=pr(),N.TRIANGULAR_MESH=mr(),N.DT_INVALID=hr(),N.DT_INT8=gr(),N.DT_UINT8=_r(),N.DT_INT16=vr(),N.DT_UINT16=yr(),N.DT_INT32=br(),N.DT_UINT32=xr(),N.DT_INT64=Sr(),N.DT_UINT64=Cr(),N.DT_FLOAT32=wr(),N.DT_FLOAT64=Tr(),N.DT_BOOL=Er(),N.DT_TYPES_COUNT=Dr(),N.OK=Or(),N.DRACO_ERROR=kr(),N.IO_ERROR=Ar(),N.INVALID_PARAMETER=jr(),N.UNSUPPORTED_VERSION=Mr(),N.UNKNOWN_VERSION=Nr()}Ee?e():Xe(e)})(),N.Decoder.prototype.GetEncodedGeometryType=function(e){if(e.__class__&&e.__class__===N.DecoderBuffer)return N.Decoder.prototype.GetEncodedGeometryType_Deprecated(e);if(e.byteLength<8)return N.INVALID_GEOMETRY_TYPE;switch(e[7]){case 0:return N.POINT_CLOUD;case 1:return N.TRIANGULAR_MESH;default:return N.INVALID_GEOMETRY_TYPE}},typeof N.onModuleParsed==`function`&&N.onModuleParsed(),ne.return(N)):(Ir=ne.getYieldResultJsc(),ne.yield(ee(),3))})}}(),ph=`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ACACKQMQIgUgAikDCFkNACACKAIAIAWnaiwAACEDIAIgBUIBfDcDECABIANBAEgEfyAAQQFqIAEgAhAkRQ0BIANB/wBxIAEoAgBBB3RyBSADCzYCAEEBIQQLIAQLJwEBfyAAQQA2AhAgACAAKAIAIgE2AgwgAQRAIAAgATYCBCABEAULCwQAQQALywcBA38gACABNgIMIABBADYCCCAAQgA3AgAgAEEQaiIDQgA3AAUgA0IANwIAIANBEGoiAkIANwAFIAJCADcCACADQSBqIgJCADcABSACQgA3AgAgA0EwaiICQgA3AAUgAkIANwIAIANBQGsiAkIANwAFIAJCADcCACADQdAAaiICQgA3AAUgAkIANwIAIANB4ABqIgJCADcABSACQgA3AgAgA0HwAGoiAkIANwAFIAJCADcCACADQYABaiICQgA3AAUgAkIANwIAIANBkAFqIgJCADcABSACQgA3AgAgA0GgAWoiAkIANwAFIAJCADcCACADQbABaiICQgA3AAUgAkIANwIAIANBwAFqIgJCADcABSACQgA3AgAgA0HQAWoiAkIANwAFIAJCADcCACADQeABaiICQgA3AAUgAkIANwIAIANB8AFqIgJCADcABSACQgA3AgAgA0GAAmoiAkIANwAFIAJCADcCACADQZACaiICQgA3AAUgAkIANwIAIANBoAJqIgJCADcABSACQgA3AgAgA0GwAmoiAkIANwAFIAJCADcCACADQcACaiICQgA3AAUgAkIANwIAIANB0AJqIgJCADcABSACQgA3AgAgA0HgAmoiAkIANwAFIAJCADcCACADQfACaiICQgA3AAUgAkIANwIAIANBgANqIgJCADcABSACQgA3AgAgA0GQA2oiAkIANwAFIAJCADcCACADQaADaiICQgA3AAUgAkIANwIAIANBsANqIgJCADcABSACQgA3AgAgA0HAA2oiAkIANwAFIAJCADcCACADQdADaiICQgA3AAUgAkIANwIAIANB4ANqIgJCADcABSACQgA3AgAgA0HwA2oiA0IANwAFIANCADcCACAAQgA3AJUEIABCADcCkAQgAEEANgKwBCAAQgA3AqgEIABCADcCoAQgAEEANgLEBCAAQgA3ArwEIABCADcCtAQgAEEANgLYBCAAQgA3AtAEIABCADcCyAQgAEEANgLkBCAAQgA3AtwEAkACQCABRQRAIABBADYC8AQgAEIANwLoBAwBCyABQYCAgIAETw0BIAAgAUECdCIBEAYiAzYC3AQgACABIANqIgI2AuQEIAFFIgRFBEAgA0EAIAH8CwALIABBADYC8AQgAEIANwLoBCAAIAI2AuAEIAAgARAGIgM2AugEIAAgASADaiICNgLwBCAERQRAIANBACAB/AsACyAAIAI2AuwECyAAQQA2ApQFIABCADcCjAUgAEIANwKEBSAAQgA3AvwEIABCADcC9AQgAA8LEAcAC48BAQF/IAAoAowFIgEEQCAAIAE2ApAFIAEQBQsgACgCgAUiAQRAIAAgATYChAUgARAFCyAAKAL0BCIBBEAgACABNgL4BCABEAULIAAoAugEIgEEQCAAIAE2AuwEIAEQBQsgACgC3AQiAQRAIAAgATYC4AQgARAFCyAAQcgEahAlIABBtARqECUgAEGgBGoQJQsJAEH0CRD3AQALiwEBAX8gAARAIAAoAkwiAQRAIAAgATYCUCABEAULIAAoAkAiAQRAIAAgATYCRCABEAULIAAoAjAiAQRAIAAgATYCNCABEAULIAAoAhgiAQRAIAAgATYCHCABEAULIAAoAgwiAQRAIAAgATYCECABEAULIAAoAgAiAQRAIAAgATYCBCABEAULIAAQBQsLBwAgACgCBAsHACAAKAIcC3cCAX4CfwJAIABBCksNACACKQMQIgMgAikDCFkNACACKAIAIAOnaiwAACEFIAIgA0IBfDcDECAFrSEDIAECfiAFQQBIBEAgAEEBaiABIAIQLUUNAiADQv8AgyABKQMAQgeGhAwBCyADQv8Bgws3AwBBASEECyAEC2oCAn8BfgJAIABBBUsNACACKQMQIgUgAikDCFkNACACKAIAIAWnaiwAACEDIAIgBUIBfDcDECABIANBAEgEfyAAQQFqIAEgAhAuRQ0BIANB/wBxIAEoAgBBB3RyBSADCzYCAEEBIQQLIAQLcgEBfyMAQYACayIFJAACQCACIANMDQAgBEGAwARxDQAgAiADayIDQYACIANBgAJJIgIbIgQEQCAFIAEgBPwLAAsgAkUEQANAIAAgBUGAAhA+IANBgAJrIgNB/wFLDQALCyAAIAUgAxA+CyAFQYACaiQACyIBAX8gAARAIAAoAgAiAQRAIAAgATYCBCABEAULIAAQBQsLGAEBf0EMEAYiAEEANgIIIABCADcCACAAC8wBAgJ/An4CQCAAKAJADQBBIBAGIgJCADcDECACQQA2AgggAkIANwMAIAJCADcDGCAAKAJAIQMgACACNgJAIANFDQAgAygCACICBEAgAyACNgIEIAIQBQsgAxAFCyAAKAJAQQAgACgCHEEBayICQQpNBH8gAi0AkGoFQX8LIAAtABhsrCIEIAGtfhDYASIDBEAgACAAKAJAIgI2AgAgACACKQMQNwMIIAIpAxghBSAAQgA3AzAgACAENwMoIAAgBTcDECAAIAE2AlALIAMLkQIBBn8CQAJAAkAgACgCBCICIAAoAgAiBGsiBkEDdSIDIAFJBEAgACgCCCAEayIFQQN1IAFPBEAgASADa0EDdCIBBEAgAkEAIAH8CwALIAAgASACajYCBA8LIAFBgICAgAJPDQJB/////wEgBUECdSICIAEgASACSRsgBUH4////B08bIgJBgICAgAJPDQMgAkEDdCIFEAYiByAGaiECIAEgA2tBA3QiAQRAIAJBACAB/AsACyACIANBA3RrIQMgBgRAIAMgBCAG/AoAAAsgACAFIAdqNgIIIAAgASACajYCBCAAIAM2AgAgBEUNASAEEAUPCyABIANPDQAgACAEIAFBA3RqNgIECw8LEAcACxAOAAvXAgEHfwJAAkACQCAAKAIEIgQgACgCACIFayIGQQJ1IgcgAUkEQCAAKAIIIAVrIgNBAnUgAU8EQCAEIAEgB2tBAnRqIQEgAigCACECA0AgBCACNgIAIARBBGoiBCABRw0ACyAAIAE2AgQPCyABQYCAgIAETw0CQf////8DIANBAXUiCCABIAEgCEkbIANB/P///wdPGyIIQYCAgIAETw0DIAhBAnQQBiIJIAZqIgMgASAHa0ECdGohBiACKAIAIQIgAyEBA0AgASACNgIAIAFBBGoiASAGRw0ACyADIAdBAnRrIQMgBCAFRwRAIAUhASADIQIDQCACIAEoAgA2AgAgAkEEaiECIAFBBGoiASAERw0ACwsgACAJIAhBAnRqNgIIIAAgBjYCBCAAIAM2AgAgBUUNASAFEAUPCyABIAdPDQAgACAFIAFBAnRqNgIECw8LEAcACxAOAAuvAQEFfwJAIAAoAggiAS0AVA0AIAAoAhAiAkUNACACLQBUQQFHDQAgASgCRCEDIAEoAkghASACQQA6AFQgAkHEAGogASADa0ECdUHAEhA0IAAoAggiAi0AVA0AIAIoAkQiAyACKAJIRg0AIAAoAhAoAkQhBEEAIQEDQCAEIAFBAnQiBWogAyAFaigCADYCACABQQFqIgEgAigCSCACKAJEIgNrQQJ1SQ0ACwsgACgCEAutAwEBfwJAIAAgARAIRQ0AIABBEGogARAIRQ0AIABBIGogARAIRQ0AIABBMGogARAIRQ0AIABBQGsgARAIRQ0AIABB0ABqIAEQCEUNACAAQeAAaiABEAhFDQAgAEHwAGogARAIRQ0AIABBgAFqIAEQCEUNACAAQZABaiABEAhFDQAgAEGgAWogARAIRQ0AIABBsAFqIAEQCEUNACAAQcABaiABEAhFDQAgAEHQAWogARAIRQ0AIABB4AFqIAEQCEUNACAAQfABaiABEAhFDQAgAEGAAmogARAIRQ0AIABBkAJqIAEQCEUNACAAQaACaiABEAhFDQAgAEGwAmogARAIRQ0AIABBwAJqIAEQCEUNACAAQdACaiABEAhFDQAgAEHgAmogARAIRQ0AIABB8AJqIAEQCEUNACAAQYADaiABEAhFDQAgAEGQA2ogARAIRQ0AIABBoANqIAEQCEUNACAAQbADaiABEAhFDQAgAEHAA2ogARAIRQ0AIABB0ANqIAEQCEUNACAAQeADaiABEAhFDQAgAEHwA2ogARAIRQ0AIABBgARqIAEQCCECCyACC7wCAQN/IAAgATYCDCAAQQA2AgggAEIANwIAIABBEGoiAkIANwAFIAJCADcCACAAQQA2AjAgAEIANwIoIABCADcCICAAQQA2AkQgAEIANwI8IABCADcCNCAAQQA2AlggAEIANwJQIABCADcCSCAAQQA2AmQgAEIANwJcAkACQCABRQRAIABBADYCcCAAQgA3AmgMAQsgAUGAgICABE8NASAAIAFBAnQiARAGIgI2AlwgACABIAJqIgM2AmQgAUUiBEUEQCACQQAgAfwLAAsgAEEANgJwIABCADcCaCAAIAM2AmAgACABEAYiAjYCaCAAIAEgAmoiAzYCcCAERQRAIAJBACAB/AsACyAAIAM2AmwLIABBADYClAEgAEIANwKMASAAQgA3AoQBIABCADcCfCAAQgA3AnQgAA8LEAcAC4cBAQF/IAAoAowBIgEEQCAAIAE2ApABIAEQBQsgACgCgAEiAQRAIAAgATYChAEgARAFCyAAKAJ0IgEEQCAAIAE2AnggARAFCyAAKAJoIgEEQCAAIAE2AmwgARAFCyAAKAJcIgEEQCAAIAE2AmAgARAFCyAAQcgAahAlIABBNGoQJSAAQSBqECULvwIBA38gACABNgIMIABBADYCCCAAQgA3AgAgAEEANgIgIABCADcCGCAAQgA3AhAgAEEANgI0IABCADcCLCAAQgA3AiQgAEEANgJIIABCADcCQCAAQgA3AjggAEEANgJcIABCADcCVCAAQgA3AkwgAEEANgJoIABCADcCYAJAAkAgAUUEQCAAQQA2AnQgAEIANwJsDAELIAFBgICAgARPDQEgACABQQJ0IgEQBiICNgJgIAAgASACaiIDNgJoIAFFIgRFBEAgAkEAIAH8CwALIABBADYCdCAAQgA3AmwgACADNgJkIAAgARAGIgI2AmwgACABIAJqIgM2AnQgBEUEQCACQQAgAfwLAAsgACADNgJwCyAAQQA2ApgBIABCADcCkAEgAEIANwKIASAAQgA3AoABIABCADcCeCAADwsQBwALjgEBAX8gACgCkAEiAQRAIAAgATYClAEgARAFCyAAKAKEASIBBEAgACABNgKIASABEAULIAAoAngiAQRAIAAgATYCfCABEAULIAAoAmwiAQRAIAAgATYCcCABEAULIAAoAmAiAQRAIAAgATYCZCABEAULIABBzABqECUgAEE4ahAlIABBJGoQJSAAQRBqECULdAEBfyACRQRAIAAoAgQgASgCBEYPCyAAIAFGBEBBAQ8LIAEoAgQiAi0AACEBAkAgACgCBCIDLQAAIgBFDQAgACABRw0AA0AgAi0AASEBIAMtAAEiAEUNASACQQFqIQIgA0EBaiEDIAAgAUYNAAsLIAAgAUYLBgAQvQEAC1cCAX8BfgJAQbT6ACgCACIBrSAArUIHfEL4////H4N8IgJC/////w9YBEAgAqciAD8AQRB0TQ0BIAAQAg0BC0GA+wBBMDYCAEF/DwtBtPoAIAA2AgAgAQsYACAALQAAQSBxRQRAIAEgAiAAEMABGgsLagICfwF+AkAgAEEFSw0AIAIpAxAiBSACKQMIWQ0AIAIoAgAgBadqLAAAIQMgAiAFQgF8NwMQIAEgA0EASAR/IABBAWogASACED9FDQEgA0H/AHEg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AgAgAkUNACACEAULDwsQBwAL6gcCBH8IfiMAQeAAayIDJAAgACgCECEFIAEoAgAhBCADQQE6AFggAyAENgJUIAMgBDYCUCADIAU2AkwCQCAEQX9GDQAgBSgCACAEQQJ0aigCACIFIAAoAhQiBigCBCAGKAIAIgZrQQJ1Tw0AIAAoAgggBiAFQQJ0aigCAEECdGooAgAhBiAAKAIEIgUtAFRFBEAgBSgCRCAGQQJ0aigCACEGCyADQgA3A0AgA0IANwM4IANCADcDMCADIAY2AhggBSADQRhqIAUsABggA0EwahAfA0ACfyAAKAIcRQRAIAEoAgAiBEF/Rg0DIARBAWoiBSAEQQJrIAVBA3AbIQUgBEEBayAEQQNwDQEaIARBAmoMAQsgBEEBaiIFIARBAmsgBUEDcBshBSAEQQFrIARBA3ANABogBEECagshBiAFQX9GDQEgACgCECgCACAFQQJ0aigCACIFIAAoAhQiBCgCBCAEKAIAIgRrQQJ1Tw0BIAAoAgggBCAFQQJ0aigCAEECdGooAgAhBSAAKAIEIgQtAFRFBEAgBCgCRCAFQQJ0aigCACEFCyADQgA3AyggA0IANwMgIANCADcDGCADIAU2AgAgBCADIAQsABggA0EYahAfIAZBf0YNASAAKAIQKAIAIAZBAnRqKAIAIgUgACgCFCIEKAIEIAQoAgAiBGtBAnVPDQEgACgCCCAEIAVBAnRqKAIAQQJ0aigCACEFIAAoAgQiBC0AVEUEQCAEKAJEIAVBAnRqKAIAIQULIANCADcDECADQgA3AwggA0IANwMAIAMgBTYCXCAEIANB3ABqIAQsABggAxAfIAkgAykDACADKQMwIgl9IgcgAykDICADKQM4Igh9Igp+fSADKQMIIAh9IgggAykDGCAJfSINfnwhCSALIAcgAykDKCADKQNAIgt9Ig5+fCADKQMQIAt9IgcgDX59IQsgDCAIIA5+fSAHIAp+fCEMIANBzABqEG8gAygCVCIEQX9HDQALIAwgDEI/hyIHhSAHfSEHQv///////////wAhCCALIAtCP4ciCoUgCn0iCkL///////////8AhSENAkACQCAAKAIcRQRAIAcgDVYNAkJ/IAcgCnwiByAJIAlCP4ciCIUgCH0iCHzEIAcgCEL///////////8AhVYbIghCgICAgAJVDQEMAgsg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QCAAIAEoAgAQTyABKAIEIAEsACdBAEgEQCABKAIcEAULIAEsABtBAEgEQCABKAIQEAULIAEQBSIBDQALCwsEAEECCyUBAX8gAEHMGTYCACAAKAIgIgEEQCAAIAE2AiQgARAFCyAAEAULygIBBn8CQAJAAkAgACgCBCICIAAoAgAiA2siBkECdSIEIAFJBEAgACgCCCADayIFQQJ1IAFPBEAgASAEa0ECdCIBBEAgAkEAIAH8CwALIAAgASACajYCBA8LIAFBgICAgARPDQJB/////wMgBUEBdSICIAEgASACSRsgBUH8////B08bIgJBgICAgARPDQMgAkECdCIFEAYiByAGaiECIAEgBGtBAnQiAQRAIAJBACAB/AsACyACIARBAnRrIQQgBgRAIAQgAyAG/AoAAAsgACAFIAdqNgIIIAAgASACajYCBCAAIAQ2AgAgA0UNASADEAUPCyABIARPDQAgAiADIAFBAnRqIgNHBEADQCACQQRrIgIoAgAhASACQQA2AgAgAQRAIAEgASgCACgCBBECAAsgAiADRw0ACwsgACADNgIECw8LEAcACxAOAAvpCAEHfwJAIARBAEwNACAAKAIIIgcgACgCBCIIayAETgRAIAggAWsiByAESARAAkAgAyACIAdqIgVGBEAgCCEGDAELIAghBgNAIAYgBS0AADoAACAGQQFqIQYgBUEBaiIFIANHDQALCyAAIAY2AgQgB0EATA0CIAYgASAEamshCQJAIAggBiAEayIDTQRAIAYhBQwBCwJAIAQgCGoiCiAGa0EHcSILRQRAIAYhBQwBC0EAIQQgBiEFA0AgBSADLQAAOgAAIAVBAWohBSADQQFqIQMgBEEBaiIEIAtHDQALCyAGIAprQXhLDQADQCAFIAMtAAA6AAAgBSADLQABOgABIAUgAy0AAjoAAiAFIAMtAAM6AAMgBSADLQAEOgAEIAUgAy0ABToABSAFIAMtAAY6AAYgBSADLQAHOgAHIAVBCGohBSADQQhqIgMgCEcNAAsLIAAgBTYCBCAJBEAgBiAJayABIAn8CgAACwJAIAdBB3EiAEUEQCABIQUMAQtBACEDIAEhBQNAIAUgAi0AADoAACACQQFqIQIgBUEBaiEFIANBAWoiAyAARw0ACwsgASAIa0F4Sw0CIAEgB2ohAANAIAUgAi0AADoAACAFIAItAAE6AAEgBSACLQACOgACIAUgAi0AAzoAAyAFIAItAAQ6AAQgBSACLQAFOgAFIAUgAi0ABjoABiAFIAItAAc6AAcgAkEIaiECIAVBCGoiBSAARw0ACwwCCyAIIAEgBGoiCWshBwJAIAgiBSAFIARrIgNNDQAgBEEHcSIKBEADQCAFIAMtAAA6AAAgBUEBaiEFIANBAWohAyAGQQFqIgYgCkcNAAsLIARBCEkNAANAIAUgAy0AADoAACAFIAMtAAE6AAEgBSADLQACOgACIAUgAy0AAzoAAyAFIAMtAAQ6AAQgBSADLQAFOgAFIAUgAy0ABjoABiAFIAMtAAc6AAcgBUEIaiEFIANBCGoiAyAIRw0ACwsgACAFNgIEIAcEQCAIIAdrIAEgB/wKAAALAkAgBEEHcSIARQRAIAEhBQwBC0EAIQMgASEFA0AgBSACLQAAOgAAIAJBAWohAiAFQQFqIQUgA0EBaiIDIABHDQALCyAEQQhJDQEDQCAFIAItAAA6AAAgBSACLQABOgABIAUgAi0AAjoAAiAFIAItAAM6AAMgBSACLQAEOgAEIAUgAi0ABToABSAFIAItAAY6AAYgBSACLQAHOgAHIAJBCGohAiAFQQhqIgUgCUcNAAsMAQsgCCAAKAIAIgNrIARqIgZBAE4EQCABIANrIQUgBUH/////ByAHIANrIgdBAXQiCSAGIAYgCUkbIAdB/////wNPGyIHBH8gBxAGBUEACyIGaiEJIAQEQCAJIAIgBPwKAAALIAQgCWohAiAIIAFrIgQEQCACIAEgBPwKAAALIAAgATYCBCAFBEAgBiADIAX8CgAACyAAIAYgB2o2AgggACACIARqNgIEIAAgBjYCACADBEAgAxAFCw8LEAcACwtIACACQQtPBEAgAEEKIAJBCmsgAC0AC0H/AHEiACAAIAIgARCxAQ8LIAAgAjoACyACBEAgACABIAL8CgAACyAAIAJqQQA6AAALXwEBfyAAKAIIQf////8HcSIDIAJNBEAgACADQQFrIAIgA2tBAWogACgCBCIAIAAgAiABELEBDwsgACACNgIEIAAoAgAhACACBEAgACABIAL8CgAACyAAIAJqQQA6AAALzSgBC38jAEEQayIKJAACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAEH0AU0EQEHQgwEoAgAiBEEQIABBC2pB+ANxIABBC0kbIgZBA3YiAHYiAUEDcQRAAkAgAUF/c0EBcSAAaiIDQQN0IgFB+IMBaiIAIAEoAoCEASICKAIIIgVGBEBB0IMBIARBfiADd3E2AgAMAQsgBSAANgIMIAAgBTYCCAsgAkEIaiEAIAIgAUEDcjYCBCABIAJqIgEgASgCBEEBcjYCBAwNCyAGQdiDASgCACIITQ0BIAEEQAJAQQIgAHQiAkEAIAJrciABIAB0cWgiA0EDdCIBQfiDAWoiAiABKAKAhAEiACgCCCIFRgRAQdCDASAEQX4gA3dxIgQ2AgAMAQsgBSACNgIMIAIgBTYCCAsgACAGQQNyNgIEIAAgBmoiByABIAZrIgVBAXI2AgQgACABaiAFNgIAIAgEQCAIQXhxQfiDAWohAUHkgwEoAgAhAgJ/IARBASAIQQN2dCIDcUUEQEHQgwEgAyAEcjYCACABDAELIAEoAggLIQMgASACNgIIIAMgAjYCDCACIAE2AgwgAiADNgIICyAAQQhqIQBB5IMBIAc2AgBB2IMBIAU2AgAMDQtB1IMBKAIAIgtFDQEgC2hBAnQoAoCGASIBKAIEQXhxIAZrIQMgASECA0ACQCABKAIQIgBFBEAgASgCFCIARQ0BCyAAKAIEQXhxIAZrIgEgAyABIANJIgEbIQMgACACIAEbIQIgACEBDAELCyACKAIYIQkgAiACKAIMIgBHBEAgAigCCCIBIAA2AgwgACABNgIIDAwLIAIoAhQiAQR/IAJBFGoFIAIoAhAiAUUNAyACQRBqCyEFA0AgBSEHIAEiAEEUaiEFIAAoAhQiAQ0AIABBEGohBSAAKAIQIgENAAsgB0EANgIADAsLQX8hBiAAQb9/Sw0AIABBC2oiAUF4cSEGQdSDASgCACIHRQ0AQR8hCEEAIAZrIQMgAEH0//8HTQRAIAZBJiABQQh2ZyIAa3ZBAXEgAEEBdGtBPmohCAsCQAJAAkAgCEECdCgCgIYBIgFFBEBBACEADAELQQAhACAGQRkgCEEBdmtBACAIQR9HG3QhAgNAAkAgASgCBEF4cSAGayIEIANPDQAgASEFIAQiAw0AQQAhAyABIQAMAwsgACABKAIUIgQgBCABIAJBHXZBBHFqKAIQIgFGGyAAIAQbIQAgAkEBdCECIAENAAsLIAAgBXJFBEBBACEFQQIgCHQiAEEAIABrciAHcSIARQ0DIABoQQJ0KAKAhgEhAAsgAEUNAQsDQCAAKAIEQXhxIAZrIgIgA0khASACIAMgARshAyAAIAUgARshBSAAKAIQIgEEfyABBSAAKAIUCyIADQALCyAFRQ0AIANB2IMBKAIAIAZrTw0AIAUoAhghCCAFIAUoAgwiAEcEQCAFKAIIIgEgADYCDCAAIAE2AggMCgsgBSgCFCIBBH8gBUEUagUgBSgCECIBRQ0DIAVBEGoLIQIDQCACIQQgASIAQRRqIQIgACgCFCIBDQAgAEEQaiECIAAoAhAiAQ0ACyAEQQA2AgAMCQsgBkHYgwEoAgAiBU0EQEHkgwEoAgAhAAJAIAUgBmsiAUEQTwRAIAAgBmoiAiABQQFyNgIEIAAgBWogATYCACAAIAZBA3I2AgQMAQsgACAFQQNyNgIEIAAgBWoiASABKAIEQQFyNgIEQQAhAUEAIQILQdiDASABNgIAQeSDASACNgIAIABBCGohAAwLCyAGQdyDASgCACICSQRAQdyDASACIAZrIgE2AgBB6IMBQeiDASgCACIAIAZqIgI2AgAgAiABQQFyNgIEIAAgBkEDcjYCBCAAQQhqIQAMCwtBACEAIAZBL2oiAwJ/QaiHASgCAARAQbCHASgCAAwBC0G0hwFCfzcCAEGshwFCgKCAgICABDcCAEGohwEgCkEMakFwcUHYqtWqBXM2AgBBvIcBQQA2AgBBjIcBQQA2AgBBgCALIgFqIgRBACABayIHcSIBIAZNDQpBiIcBKAIAIgUEQEGAhwEoAgAiCCABaiIJIAhNDQsgBSAJSQ0LC0GMhwEtAABBBHENBAJAAkBB6IMBKAIAIgUEQEGQhwEhAANAIAAoAgAiCCAFTQRAIAUgCCAAKAIEakkNAwsgACgCCCIADQALC0EAED0iAkF/Rg0FIAEhBEGshwEoAgAiAEEBayIFIAJxBEAgASACayACIAVqQQAgAGtxaiEECyAEIAZNDQVBiIcBKAIAIgAEQEGAhwEoAgAiBSAEaiIHIAVNDQYgACAHSQ0GCyAEED0iACACRw0BDAcLIAQgAmsgB3EiBBA9IgIgACgCACAAKAIEakYNAyACIQALAkAgAEF/Rg0AIAQgBkEwak8NAEGwhwEoAgAiAiADIARrakEAIAJrcSICED1Bf0YNBCACIARqIQQgACECDAYLIAAiAkF/Rw0FDAMLQQAhAAwIC0EAIQAMBgsgAkF/Rw0CC0GMhwFBjIcBKAIAQQRyNgIACyABED0hAkEAED0hACACQX9GDQEgAEF/Rg0BIAAgAk0NASAAIAJrIgQgBkEoak0NAQtBgIcBQYCHASgCACAEaiIANgIAQYSHASgCACAASQRAQYSHASAANgIACwJAAkACQEHogwEoAgAiAwRAQZCHASEAA0AgAiAAKAIAIgEgACgCBCIFakYNAiAAKAIIIgANAAsMAgtB4IMBKAIAIgBBACAAIAJNG0UEQEHggwEgAjYCAAtBACEAQZSHASAENgIAQZCHASACNgIAQfCDAUF/NgIAQfSDAUGohwEoAgA2AgBBnIcBQQA2AgADQCAAQQN0IgEgAUH4gwFqIgU2AoCEASABIAU2AoSEASAAQQFqIgBBIEcNAAtB3IMBIARBKGsiAEF4IAJrQQdxIgFrIgU2AgBB6IMBIAEgAmoiATYCACABIAVBAXI2AgQgACACakEoNgIEQeyDAUG4hwEoAgA2AgAMAgsgAiADTQ0AIAEgA0sNACAAKAIMQQhxDQAgACAEIAVqNgIEQeiDASADQXggA2tBB3EiAGoiATYCAEHcgwFB3IMBKAIAIARqIgIgAGsiADYCACABIABBAXI2AgQgAiADakEoNgIEQeyDAUG4hwEoAgA2AgAMAQtB4IMBKAIAIAJLBEBB4IMBIAI2AgALIAIgBGohBUGQhwEhAAJAA0AgBSAAKAIAIgFHBEAgACgCCCIADQEMAgsLIAAtAAxBCHFFDQMLQZCHASEAA0ACQCAAKAIAIgEgA00EQCADIAEgACgCBGoiBUkNAQsgACgCCCEADAELC0HcgwEgBEEoayIAQXggAmtBB3EiAWsiBzYCAEHogwEgASACaiIBNgIAIAEgB0EBcjYCBCAAIAJqQSg2AgRB7IMBQbiHASgCADYCACADIAVBJyAFa0EHcWpBL2siACAAIANBEGpJGyIBQRs2AgQgAUGYhwEpAgA3AhAgAUGQhwEpAgA3AghBmIcBIAFBCGo2AgBBlIcBIAQ2AgBBkIcBIAI2AgBBnIcBQQA2AgAgAUEYaiEAA0AgAEEHNgIEIABBCGogAEEEaiEAIAVJDQALIAEgA0YNACABIAEoAgRBfnE2AgQgAyABIANrIgJBAXI2AgQgASACNgIAAn8gAkH/AU0EQCACQfgBcUH4gwFqIQACf0HQgwEoAgAiAUEBIAJBA3Z0IgJxRQRAQdCDASABIAJyNgIAIAAMAQsgACgCCAshASAAIAM2AgggASADNgIMQQwhAkEIDAELQR8hACACQf///wdNBEAgAkEmIAJBCHZnIgBrdkEBcSAAQQF0ckE+cyEACyADIAA2AhwgA0IANwIQIABBAnRBgIYBaiEBAkACQEHUgwEoAgAiBUEBIAB0IgRxRQRAQdSDASAEIAVyNgIAIAEgAzYCAAwBCyACQRkgAEEBdmtBACAAQR9HG3QhACABKAIAIQUDQCAFIgEoAgRBeHEgAkYNAiAAQR12IQUgAEEBdCEAIAEgBUEEcWoiBCgCECIFDQALIAQgAzYCEAsgAyABNgIYQQghAiADIgEhAEEMDAELIAEoAggiACADNgIMIAEgAzYCCCADIAA2AghBACEAQRghAkEMCyADaiABNgIAIAIgA2ogADYCAAtB3IMBKAIAIgAgBk0NAEHcgwEgACAGayIBNgIAQeiDAUHogwEoAgAiACAGaiICNgIAIAIgAUEBcjYCBCAAIAZBA3I2AgQgAEEIaiEADAQLQYD7AEEwNgIAQQAhAAwDCyAAIAI2AgAgACAAKAIEIARqNgIEIAJBeCACa0EHcWoiCCAGQQNyNgIEIAFBeCABa0EHcWoiBCAGIAhqIgNrIQcCQEHogwEoAgAgBEYEQEHogwEgAzYCAEHcgwFB3IMBKAIAIAdqIgA2AgAgAyAAQQFyNgIEDAELQeSDASgCACAERgRAQeSDASADNgIAQdiDAUHYgwEoAgAgB2oiADYCACADIABBAXI2AgQgACADaiAANgIADAELIAQoAgQiAEEDcUEBRgRAIABBeHEhCSAEKAIMIQICQCAAQf8BTQRAIAQoAggiASACRgRAQdCDAUHQgwEoAgBBfiAAQQN2d3E2AgAMAgsgASACNgIMIAIgATYCCAwBCyAEKAIYIQYCQCACIARHBEAgBCgCCCIAIAI2AgwgAiAANgIIDAELAkAgBCgCFCIABH8gBEEUagUgBCgCECIARQ0BIARBEGoLIQEDQCABIQUgACICQRRqIQEgACgCFCIADQAgAkEQaiEBIAIoAhAiAA0ACyAFQQA2AgAMAQtBACECCyAGRQ0AAkAgBCgCHCIAQQJ0IgEoAoCGASAERgRAIAFBgIYBaiACNgIAIAINAUHUgwFB1IMBKAIAQX4gAHdxNgIADAILAkAgBCAGKAIQRgRAIAYgAjYCEAwBCyAGIAI2AhQLIAJFDQELIAIgBjYCGCAEKAIQIgAEQCACIAA2AhAgACACNgIYCyAEKAIUIgBFDQAgAiAANgIUIAAgAjYCGAsgByAJaiEHIAQgCWoiBCgCBCEACyAEIABBfnE2AgQgAyAHQQFyNgIEIAMgB2ogBzYCACAHQf8BTQRAIAdB+AFxQfiDAWohAAJ/QdCDASgCACIBQQEgB0EDdnQiAnFFBEBB0IMBIAEgAnI2AgAgAAwBCyAAKAIICyEBIAAgAzYCCCABIAM2AgwgAyAANgIMIAMgATYCCAwBC0EfIQIgB0H///8HTQRAIAdBJiAHQQh2ZyIAa3ZBAXEgAEEBdHJBPnMhAgsgAyACNgIcIANCADcCECACQQJ0QYCGAWohAAJAAkBB1IMBKAIAIgFBASACdCIFcUUEQEHUgwEgASAFcjYCACAAIAM2AgAMAQsgB0EZIAJBAXZrQQAgAkEfRxt0IQIgACgCACEBA0AgASIAKAIEQXhxIAdGDQIgAkEddiEBIAJBAXQhAiAAIAFBBHFqIgUoAhAiAQ0ACyAFIAM2AhALIAMgADYCGCADIAM2AgwgAyADNgIIDAELIAAoAggiASADNgIMIAAgAzYCCCADQQA2AhggAyAANgIMIAMgATYCCAsgCEEIaiEADAILAkAgCEUNAAJAIAUoAhwiAUECdCICKAKAhgEgBUYEQCACQYCGAWogADYCACAADQFB1IMBIAdBfiABd3EiBzYCAAwCCwJAIAUgCCgCEEYEQCAIIAA2AhAMAQsgCCAANgIUCyAARQ0BCyAAIAg2AhggBSgCECIBBEAgACABNgIQIAEgADYCGAsgBSgCFCIBRQ0AIAAgATYCFCABIAA2AhgLAkAgA0EPTQRAIAUgAyAGaiIAQQNyNgIEIAAgBWoiACAAKAIEQQFyNgIEDAELIAUgBkEDcjYCBCAFIAZqIgQgA0EBcjYCBCADIARqIAM2AgAgA0H/AU0EQCADQfgBcUH4gwFqIQACf0HQgwEoAgAiAUEBIANBA3Z0IgJxRQRAQdCDASABIAJyNgIAIAAMAQsgACgCCAshASAAIAQ2AgggASAENgIMIAQgADYCDCAEIAE2AggMAQtBHyEAIANB////B00EQCADQSYgA0EIdmciAGt2QQFxIABBAXRyQT5zIQALIAQgADYCHCAEQgA3AhAgAEECdEGAhgFqIQECQAJAIAdBASAAdCICcUUEQEHUgwEgAiAHcjYCACABIAQ2AgAgBCABNgIYDAELIANBGSAAQQF2a0EAIABBH0cbdCEAIAEoAgAhAQNAIAEiAigCBEF4cSADRg0CIABBHXYhASAAQQF0IQAgAiABQQRxaiIHKAIQIgENAAsgByAENgIQIAQgAjYCGAsgBCAENgIMIAQgBDYCCAwBCyACKAIIIgAgBDYCDCACIAQ2AgggBEEANgIYIAQgAjYCDCAEIAA2AggLIAVBCGohAAwBCwJAIAlFDQACQCACKAIcIgFBAnQiBSgCgIYBIAJGBEAgBUGAhgFqIAA2AgAgAA0BQdSDASALQX4gAXdxNgIADAILAkAgAiAJKAIQRgRAIAkgADYCEAwBCyAJIAA2AhQLIABFDQELIAAgCTYCGCACKAIQIgEEQCAAIAE2AhAgASAANgIYCyACKAIUIgFFDQAgACABNgIUIAEgADYCGAsCQCADQQ9NBEAgAiADIAZqIgBBA3I2AgQgACACaiIAIAAoAgRBAXI2AgQMAQsgAiAGQQNyNgIEIAIgBmoiBSADQQFyNgIEIAMgBWogAzYCACAIBEAgCEF4cUH4gwFqIQBB5IMBKAIAIQECf0EBIAhBA3Z0IgcgBHFFBEBB0IMBIAQgB3I2AgAgAAwBCyAAKAIICyEEIAAgATYCCCAEIAE2AgwgASAANgIMIAEgBDYCCAtB5IMBIAU2AgBB2IMBIAM2AgALIAJBCGohAAsgCkEQaiQAIAAL4wEBA38gAEH86gA2AgAgACgCRCIBBEAgACABNgJIIAEQBQsgACgCOCIBBEAgACABNgI8IAEQBQsgACgCLCIBBEAgACABNgIwIAEQBQsgACgCICIBBEAgACABNgIkIAEQBQsgACgCFCIBBEAgACABNgIYIAEQBQsgACgCCCIDBEAgAyIBIAAoAgwiAkcEQANAIAJBBGsiAigCACEBIAJBADYCACABBEAgARAXCyACIANHDQALIAAoAgghAQsgACADNgIMIAEQBQsgACgCBCEBIABBADYCBCABBEAgARCFARAFCyAACwQAQQELBABBfwsDAAALFAAgAARAIAAgACgCACgCBBECAAsL1RMEBn8CfgF9AXwjAEEQayIJJAACQCADRQ0AAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIcQQFrDgsAAQIDBAUGBwgJCgsLAkAgAkH/AXEiBSAALQAYIgQgBCAFSxtFDQAgACgCACIEKAIEIgcgBCgCACAAKQMwIAApAyggATUCAH58p2oiBk0NC0EAIQEDQCADIAFBAnRqIAYsAAA2AgAgAUEBaiIBIAUgAC0AGCIEIAQgBUsbTw0BIAZBAWoiBiAHSQ0ACwwLC0EBIQggBCAFTw0KIAIgBGtB/wFxQQJ0IgBFDQogAyAEQQJ0akEAIAD8CwAMCgsCQCACQf8BcSIFIAAtABgiBCAEIAVLG0UNACAAKAIAIgQoAgQiByAEKAIAIAApAzAgACkDKCABNQIAfnynaiIGTQ0KQQAhAQNAIAMgAUECdGogBi0AADYCACABQQFqIgEgBSAALQAYIgQgBCAFSxtPDQEgBkEBaiIGIAdJDQALDAoLQQEhCCAEIAVPDQkgAiAEa0H/AXFBAnQiAEUNCSADIARBAnRqQQAgAPwLAAwJCyACQf8BcSIFIAAtABgiBCAEIAVLGwRAIAAoAgAiBCgCACAAKQMwIAApAyggATUCAH58p2ohASAEKAIEIQcDQCABIAdPDQogAyAGQQJ0aiABLgEANgIAIAFBAmohASAGQQFqIgYgBSAALQAYIgQgBCAFSxtJDQALC0EBIQggBCAFTw0IIAIgBGtB/wFxQQJ0IgBFDQggAyAEQQJ0akEAIAD8CwAMCAsgAkH/AXEiBSAALQAYIgQgBCAFSxsEQCAAKAIAIgQoAgAgACkDMCAAKQMoIAE1AgB+fKdqIQEgBCgCBCEHA0AgASAHTw0JIAMgBkECdGogAS8BADYCACABQQJqIQEgBkEBaiIGIAUgAC0AGCIEIAQgBUsbSQ0ACwtBASEIIAQgBU8NByACIARrQf8BcUECdCIARQ0HIAMgBEECdGpBACAA/AsADAcLIAJB/wFxIgUgAC0AGCIEIAQgBUsbBEAgACgCACIEKAIAIAApAzAgACkDKCABNQIAfnynaiEBIAQoAgQhBwNAIAEgB08NCCADIAZBAnRqIAEoAgA2AgAgAUEEaiEBIAZBAWoiBiAFIAAtABgiBCAEIAVLG0kNAAsLQQEhCCAEIAVPDQYgAiAEa0H/AXFBAnQiAEUNBiADIARBAnRqQQAgAPwLAAwGCyACQf8BcSIFIAAtABgiBCAEIAVLGwRAIAAoAgAiBCgCACAAKQMwIAApAyggATUCAH58p2ohASAEKAIEIQcDQCABIAdPDQcgAyAGQQJ0aiABKAIANgIAIAFBBGohASAGQQFqIgYgBSAALQAYIgQgBCAFSxtJDQALC0EBIQggBCAFTw0FIAIgBGtB/wFxQQJ0IgBFDQUgAyAEQQJ0akEAIAD8CwAMBQsgAkH/AXEiBSAALQAYIgQgBCAFSxsEQCAAKAIAIgQoAgAgACkDMCAAKQMoIAE1AgB+fKdqIQEgBCgCBCEHA0AgASAHTw0GIAEpAwAiCkL/////D1YNBiADIAZBAnRqIAo+AgAgAUEIaiEBIAZBAWoiBiAFIAAtABgiBCAEIAVLG0kNAAsLQQEhCCAEIAVPDQQgAiAEa0H/AXFBAnQiAEUNBCADIARBAnRqQQAgAPwLAAwECyACQf8BcSIFIAAtABgiBCAEIAVLGwRAIAAoAgAiBCgCACAAKQMwIAApAyggATUCAH58p2ohASAEKAIEIQcDQCABIAdPDQUgASkDACIKQv////8PVg0FIAMgBkECdGogCj4CACABQQhqIQEgBkEBaiIGIAUgAC0AGCIEIAQgBUsbSQ0ACwtBASEIIAQgBU8NAyACIARrQf8BcUECdCIARQ0DIAMgBEECdGpBACAA/AsADAMLIAkgASgCADYCDAJAAkAgAkH/AXEiBCAALQAYIgEgASAESxtFDQAgACgCACIBKAIAIAApAzAgACkDKCAJNQIMfnynaiECIAEoAgQhCCAALQAgQQFxBEAgAiAITw0CA0AgAioCACIMvCIBQf////8HcSIHRSABQQFrQf///wNJciAHQYCAgARrQYCAgPgHSSABQQBOcXJFDQMgDEMAAIA/Xg0DIAMgBkECdGogDLtEAADg////70GiRAAAAAAAAOA/oJz8AzYCACAGQQFqIgYgBCAALQAYIgEgASAESxtPDQIgAkEEaiICIAhJDQALDAILIAIgCE8NAQNAIAIqAgAiDLwiAUH/////B3EiB0UgAUEBa0H///8DSXIgB0GAgIAEa0GAgID4B0kgAUEATnFyRQ0CIAxDAACAT2ANAiADIAZBAnRqIAz8ATYCACAGQQFqIgYgBCAALQAYIgEgASAESxtPDQEgAkEEaiICIAhJDQALDAELQQEhBSABIARPDQAgBCABa0H/AXFBAnQiAEUNACADIAFBAnRqQQAgAPwLAAsgBSEIDAILIAkgASgCADYCCAJAAkAgAkH/AXEiBCAALQAYIgEgASAESxtFDQAgACgCACIBKAIAIAApAzAgACkDKCAJNQIIfnynaiECIAEoAgQhCCAALQAgQQFxBEAgAiAITw0CA0AgAisDACINvSIKQv///////////wCDIgtQIApCAX1C/////////wdUciALQoCAgICAgIAIfUKAgICAgICA8P8AVCAKQgBZcXJFDQMgDUQAAAAAAADwP2QNAyADIAZBAnRqIA1EAADg////70GiRAAAAAAAAOA/oJz8AzYCACAGQQFqIgYgBCAALQAYIgEgASAESxtPDQIgAkEIaiICIAhJDQALDAILIAIgCE8NAQNAIAIrAwAiDb0iCkL///////////8AgyILUCAKQgF9Qv////////8HVHIgC0KAgICAgICACH1CgICAgICAgPD/AFQgCkIAWXFyRQ0CIA1EAADg////70FmDQIgAyAGQQJ0aiAN/AM2AgAgBkEBaiIGIAQgAC0AGCIBIAEgBEsbTw0BIAJBCGoiAiAISQ0ACwwBC0EBIQUgASAETw0AIAQgAWtB/wFxQQJ0IgBFDQAgAyABQQJ0akEAIAD8CwALIAUhCAwBCwJAIAJB/wFxIgUgAC0AGCIEIAQgBUsbRQ0AIAAoAgAiBCgCBCIHIAQoAgAgACkDMCAAKQMoIAE1AgB+fKdqIgZNDQFBACEBA0AgAyABQQJ0aiAGLQAANgIAIAFBAWoiASAFIAAtABgiBCAEIAVLG08NASAGQQFqIgYgB0kNAAsMAQtBASEIIAQgBU8NACACIARrQf8BcUECdCIARQ0AIAMgBEECdGpBACAA/AsACyAJQRBqJAAgCAuREwQGfwF9AXwBfiMAQRBrIgkkAAJAIANFDQACQAJAAkACQAJAAkACQAJAAkACQAJAIAAoAhxBAWsOCwABAgMEBQYHCAkKCwsCQCACQf8BcSIFIAAtABgiBCAEIAVLG0UNACAAKAIAIgQoAgQiCCAEKAIAIAApAzAgACkDKCABNQIAfnynaiIGTQ0LQQAhAQNAIAMgAUECdGogBiwAADYCACABQQFqIgEgBSAALQAYIgQgBCAFSxtPDQEgBkEBaiIGIAhJDQALDAsLQQEhByAEIAVPDQogAiAEa0H/AXFBAnQiAEUNCiADIARBAnRqQQAgAPwLAAwKCwJAIAJB/wFxIgUgAC0AGCIEIAQgBUsbRQ0AIAAoAgAiBCgCBCIIIAQoAgAgACkDMCAAKQMoIAE1AgB+fKdqIgZNDQpBACEBA0AgAyABQQJ0aiAGLQAANgIAIAFBAWoiASAFIAAtABgiBCAEIAVLG08NASAGQQFqIgYgCEkNAAsMCgtBASEHIAQgBU8NCSACIARrQf8BcUECdCIARQ0JIAMgBEECdGpBACAA/AsADAkLIAJB/wFxIgUgAC0AGCIEIAQgBUsbBEAgACgCACIEKAIAIAApAzAgACkDKCABNQIAfnynaiEBIAQoAgQhCANAIAEgCE8NCiADIAZBAnRqIAEuAQA2AgAgAUECaiEBIAZBAWoiBiAFIAAtABgiBCAEIAVLG0kNAAsLQQEhByAEIAVPDQggAiAEa0H/AXFBAnQiAEUNCCADIARBAnRqQQAgAPwLAAwICyACQf8BcSIFIAAtABgiBCAEIAVLGwRAIAAoAgAiBCgCACAAKQMwIAApAyggATUCAH58p2ohASAEKAIEIQgDQCABIAhPDQkgAyAGQQJ0aiABLwEANgIAIAFBAmohASAGQQFqIgYgBSAALQAYIgQgBCAFSxtJDQALC0EBIQcgBCAFTw0HIAIgBGtB/wFxQQJ0IgBFDQcgAyAEQQJ0akEAIAD8CwAMBwsgAkH/AXEiBSAALQAYIgQgBCAFSxsEQCAAKAIAIgQoAgAgACkDMCAAKQMoIAE1AgB+fKdqIQEgBCgCBCEIA0AgASAITw0IIAMgBkECdGogASgCADYCACABQQRqIQEgBkEBaiIGIAUgAC0AGCIEIAQgBUsbSQ0ACwtBASEHIAQgBU8NBiACIARrQf8BcUECdCIARQ0GIAMgBEECdGpBACAA/AsADAYLIAJB/wFxIgUgAC0AGCIEIAQgBUsbBEAgACgCACIEKAIAIAApAzAgACkDKCABNQIAfnynaiEBIAQoAgQhCANAIAEgCE8NByABKAIAIgRBAEgNByADIAZBAnRqIAQ2AgAgAUEEaiEBIAZBAWoiBiAFIAAtABgiBCAEIAVLG0kNAAsLQQEhByAEIAVPDQUgAiAEa0H/AXFBAnQiAEUNBSADIARBAnRqQQAgAPwLAAwFCyACQf8BcSIFIAAtABgiBCAEIAVLGwRAIAAoAgAiBCgCACAAKQMwIAApAyggATUCAH58p2ohASAEKAIEIQgDQCABIAhPDQYgASkDACIMQoCAgIAIfEL/////D1YNBiADIAZBAnRqIAw+AgAgAUEIaiEBIAZBAWoiBiAFIAAtABgiBCAEIAVLG0kNAAsLQQEhByAEIAVPDQQgAiAEa0H/AXFBAnQiAEUNBCADIARBAnRqQQAgAPwLAAwECyACQf8BcSIFIAAtABgiBCAEIAVLGwRAIAAoAgAiBCgCACAAKQMwIAApAyggATUCAH58p2ohASAEKAIEIQgDQCABIAhPDQUgASkDACIMQv////8HVg0FIAMgBkECdGogDD4CACABQQhqIQEgBkEBaiIGIAUgAC0AGCIEIAQgBUsbSQ0ACwtBASEHIAQgBU8NAyACIARrQf8BcUECdCIARQ0DIAMgBEECdGpBACAA/AsADAMLIAkgASgCADYCDAJAAkAgAkH/AXEiBCAALQAYIgEgASAESxtFDQAgACgCACIBKAIAIAApAzAgACkDKCAJNQIMfnynaiECIAEoAgQhByAALQAgQQFxBEAgAiAHTw0CA0AgAioCACIKQwAAAE9gDQMgCkMAAADPXQ0DIAq8QQF0QYCAgHhPDQMgCkMAAIA/Xg0DIApDAAAAAF0NAyADIAZBAnRqIAq7RAAAwP///99BokQAAAAAAADgP6Cc/AI2AgAgBkEBaiIGIAQgAC0AGCIBIAEgBEsbTw0CIAJBBGoiAiAHSQ0ACwwCCyACIAdPDQEDQCACKgIAIgpDAAAAT2ANAiAKQwAAAM9dDQIgCrxBAXRBgICAeE8NAiADIAZBAnRqIAr8ADYCACAGQQFqIgYgBCAALQAYIgEgASAESxtPDQEgAkEEaiICIAdJDQALDAELQQEhBSABIARPDQAgBCABa0H/AXFBAnQiAEUNACADIAFBAnRqQQAgAPwLAAsgBSEHDAILIAkgASgCADYCCAJAAkAgAkH/AXEiBCAALQAYIgEgASAESxtFDQAgACgCACIBKAIAIAApAzAgACkDKCAJNQIIfnynaiECIAEoAgQhByAALQAgQQFxBEAgAiAHTw0CA0AgAisDACILRAAAwP///99BZg0DIAtEAAAAAAAA4MFjDQMgC71CAYZCgICAgICAgHBaDQMgC0QAAAAAAADwP2QNAyALRAAAAAAAAAAAYw0DIAMgBkECdGogC0QAAMD////fQaJEAAAAAAAA4D+gnPwCNgIAIAZBAWoiBiAEIAAtABgiASABIARLG08NAiACQQhqIgIgB0kNAAsMAgsgAiAHTw0BA0AgAisDACILRAAAwP///99BZg0CIAtEAAAAAAAA4MFjDQIgC71CAYZCgICAgICAgHBaDQIgAyAGQQJ0aiAL/AI2AgAgBkEBaiIGIAQgAC0AGCIBIAEgBEsbTw0BIAJBCGoiAiAHSQ0ACwwBC0EBIQUgASAETw0AIAQgAWtB/wFxQQJ0IgBFDQAgAyABQQJ0akEAIAD8CwALIAUhBwwBCwJAIAJB/wFxIgUgAC0AGCIEIAQgBUsbRQ0AIAAoAgAiBCgCBCIIIAQoAgAgACkDMCAAKQMoIAE1AgB+fKdqIgZNDQFBACEBA0AgAyABQQJ0aiAGLQAANgIAIAFBAWoiASAFIAAtABgiBCAEIAVLG08NASAGQQFqIgYgCEkNAAsMAQtBASEHIAQgBU8NACACIARrQf8BcUECdCIARQ0AIAMgBEECdGpBACAA/AsACyAJQRBqJAAgBwv3EwQHfwJ+AX0BfCMAQRBrIgkkAAJAIANFDQACQAJAAkACQAJAAkACQAJAAkACQAJAIAAoAhxBAWsOCwABAgMEBQYHCAkKCwsCQCACQf8BcSIHIgUgAC0AGCIEIAQgBUsbRQ0AIAAoAgAiBCgCBCIKIAQoAgAgACkDMCAAKQMoIAE1AgB+fKdqIgFNDQsDQCABLAAAIgRBAEgNDCADIAZBAXRqIAQ7AQAgBkEBaiIGIAcgAC0AGCIEIAQgB0sbTw0BIAFBAWoiASAKSQ0ACwwLC0EBIQggBCAFTw0KIAIgBGtB/wFxQQF0IgBFDQogAyAEQQF0akEAIAD8CwAMCgsCQCACQf8BcSIFIAAtABgiBCAEIAVLG0UNACAAKAIAIgQoAgQiByAEKAIAIAApAzAgACkDKCABNQIAfnynaiIGTQ0KQQAhAQNAIAMgAUEBdGogBi0AADsBACABQQFqIgEgBSAALQAYIgQgBCAFSxtPDQEgBkEBaiIGIAdJDQALDAoLQQEhCCAEIAVPDQkgAiAEa0H/AXFBAXQiAEUNCSADIARBAXRqQQAgAPwLAAwJCyACQf8BcSIFIAAtABgiBCAEIAVLGwRAIAAoAgAiBCgCACAAKQMwIAApAyggATUCAH58p2ohASAEKAIEIQcDQCABIAdPDQogAS4BACIEQQBIDQogAyAGQQF0aiAEOwEAIAFBAmohASAGQQFqIgYgBSAALQAYIgQgBCAFSxtJDQALC0EBIQggBCAFTw0IIAIgBGtB/wFxQQF0IgBFDQggAyAEQQF0akEAIAD8CwAMCAsgAkH/AXEiBSAALQAYIgQgBCAFSxsEQCAAKAIAIgQoAgAgACkDMCAAKQMoIAE1AgB+fKdqIQEgBCgCBCEHA0AgASAHTw0JIAMgBkEBdGogAS8BADsBACABQQJqIQEgBkEBaiIGIAUgAC0AGCIEIAQgBUsbSQ0ACwtBASEIIAQgBU8NByACIARrQf8BcUEBdCIARQ0HIAMgBEEBdGpBACAA/AsADAcLIAJB/wFxIgUgAC0AGCIEIAQgBUsbBEAgACgCACIEKAIAIAApAzAgACkDKCABNQIAfnynaiEBIAQoAgQhBwNAIAEgB08NCCABKAIAIgRB//8DSw0IIAMgBkEBdGogBDsBACABQQRqIQEgBkEBaiIGIAUgAC0AGCIEIAQgBUsbSQ0ACwtBASEIIAQgBU8NBiACIARrQf8BcUEBdCIARQ0GIAMgBEEBdGpBACAA/AsADAYLIAJB/wFxIgUgAC0AGCIEIAQgBUsbBEAgACgCACIEKAIAIAApAzAgACkDKCABNQIAfnynaiEBIAQoAgQhBwNAIAEgB08NByABKAIAIgRB//8DSw0HIAMgBkEBdGogBDsBACABQQRqIQEgBkEBaiIGIAUgAC0AGCIEIAQgBUsbSQ0ACwtBASEIIAQgBU8NBSACIARrQf8BcUEBdCIARQ0FIAMgBEEBdGpBACAA/AsADAULIAJB/wFxIgUgAC0AGCIEIAQgBUsbBEAgACgCACIEKAIAIAApAzAgACkDKCABNQIAfnynaiEBIAQoAgQhBwNAIAEgB08NBiABKQMAIgtC//8DVg0GIAMgBkEBdGogCz0BACABQQhqIQEgBkEBaiIGIAUgAC0AGCIEIAQgBUsbSQ0ACwtBASEIIAQgBU8NBCACIARrQf8BcUEBdCIARQ0EIAMgBEEBdGpBACAA/AsADAQLIAJB/wFxIgUgAC0AGCIEIAQgBUsbBEAgACgCACIEKAIAIAApAzAgACkDKCABNQIAfnynaiEBIAQoAgQhBwNAIAEgB08NBSABKQMAIgtC//8DVg0FIAMgBkEBdGogCz0BACABQQhqIQEgBkEBaiIGIAUgAC0AGCIEIAQgBUsbSQ0ACwtBASEIIAQgBU8NAyACIARrQf8BcUEBdCIARQ0DIAMgBEEBdGpBACAA/AsADAMLIAkgASgCADYCDAJAAkAgAkH/AXEiBCAALQAYIgEgASAESxtFDQAgACgCACIBKAIAIAApAzAgACkDKCAJNQIMfnynaiECIAEoAgQhCCAALQAgQQFxBEAgAiAITw0CA0AgAioCACINvCIBQf////8HcSIHRSABQQFrQf///wNJciAHQYCAgARrQYCAgPgHSSABQQBOcXJFDQMgDUMAAIA/Xg0DIAMgBkEBdGogDbtEAAAAAOD/70CiRAAAAAAAAOA/oJz8AzsBACAGQQFqIgYgBCAALQAYIgEgASAESxtPDQIgAkEEaiICIAhJDQALDAILIAIgCE8NAQNAIAIqAgAiDbwiAUH/////B3EiB0UgAUEBa0H///8DSXIgB0GAgIAEa0GAgID4B0kgAUEATnFyRQ0CIA1DAP9/R2ANAiADIAZBAXRqIA38ATsBACAGQQFqIgYgBCAALQAYIgEgASAESxtPDQEgAkEEaiICIAhJDQALDAELQQEhBSABIARPDQAgBCABa0H/AXFBAXQiAEUNACADIAFBAXRqQQAgAPwLAAsgBSEIDAILIAkgASgCADYCCAJAAkAgAkH/AXEiBCAALQAYIgEgASAESxtFDQAgACgCACIBKAIAIAApAzAgACkDKCAJNQIIfnynaiECIAEoAgQhCCAALQAgQQFxBEAgAiAITw0CA0AgAisDACIOvSILQv///////////wCDIgxQIAtCAX1C/////////wdUciAMQoCAgICAgIAIfUKAgICAgICA8P8AVCALQgBZcXJFDQMgDkQAAAAAAADwP2QNAyADIAZBAXRqIA5EAAAAAOD/70CiRAAAAAAAAOA/oJz8AzsBACAGQQFqIgYgBCAALQAYIgEgASAESxtPDQIgAkEIaiICIAhJDQALDAILIAIgCE8NAQNAIAIrAwAiDr0iC0L///////////8AgyIMUCALQgF9Qv////////8HVHIgDEKAgICAgICACH1CgICA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IQIMAQsgAUH4////B3EiBEEIahAGIQIgAyAEQfj///8HazYCDCADIAE2AgggAyACNgIECyABBEAgAiADQRBqIAH8CgAACyABIAJqQQA6AAAgAEF+NgIAIABBBGohACADLAAPQQBOBEAgACADKAIMNgIIIAAgAykCBDcCAAwCCyAAIAMoAgQiACADKAIIEA0gABAFDAELIAIgASgCACAFp2oiBC0ABDoABCACIAQoAAA2AAAgASABKQMQQgV8IgU3AxAgAigAAEHEpIWaBHMgAi0ABEHPAHNyBEBBGBAGIgFBADoAESABQYsMLQAAOgAQIAFBgwwpAAA3AAggAUH7CykAADcAACAAQX82AgAgAEEEaiABQREQDSABEAUMAQsgBSABKQMIWQRAIANBEGoQGSIBQff///8HTw0CAkAgAUEKTQRAIAMgAToADyADQQRqIQIMAQsgAUH4////B3EiBEEIahAGIQIgAyAEQfj///8HazYCDCADIAE2AgggAyACNgIECyABBEAgAiADQRBqIAH8CgAACyABIAJqQQA6AAAgAEF+NgIAIABBBGohACADLAAPQQBOBEAgACADKAIMNgIIIAAgAykCBDcCAAwCCyAAIAMoAgQiACADKAIIEA0gABAFDAELIAIgASgCACAFp2otAAA6AAUgASABKQMQQgF8IgU3AxAgBSABKQMIWQRAIANBEGoQGSIBQff///8HTw0CAkAgAUEKTQRAIAMgAToADyADQQRqIQIMAQsgAUH4////B3EiBEEIahAGIQIgAyAEQfj///8HazYCDCADIAE2AgggAyACNgIECyABBEAgAiADQRBqIAH8CgAACyABIAJqQQA6AAAgAEF+NgIAIABBBGohACADLAAPQQBOBEAgACADKAIMNgIIIAAgAykCBDcCAAwCCyAAIAMoAgQiACADKAIIEA0gABAFDAELIAIgASgCACAFp2otAAA6AAYgASABKQMQQgF8IgU3AxAgBSABKQMIWQRAIANBEGoQGSIBQff///8HTw0CAkAgAUEKTQRAIAMgAToADyADQQRqIQIMAQsgAUH4////B3EiBEEIahAGIQIgAyAEQfj///8HazYCDCADIAE2AgggAyACNgIECyABBEAgAiADQRBqIAH8CgAACyABIAJqQQA6AAAgAEF+NgIAIABBBGohACADLAAPQQBOBEAgACADKAIMNgIIIAAgAykCBDcCAAwCCyAAIAMoAgQiACADKAIIEA0gABAFDAELIAIgASgCACAFp2otAAA6AAcgASABKQMQQgF8IgU3AxAgBSABKQMIWQRAIANBBGogA0EQahBlIQEgAEF+NgIAIABBBGohACABLAALQQBOBEAgACABKAIINgIIIAAgASkCADcCAAwCCyAAIAEoAgAgASgCBBANIAEsAAtBAE4NASABKAIAEAUMAQsgAiABKAIAIAWnai0AADoACCABIAEpAxAiBUIBfCIGNwMQIAEpAwggBUIDfFMEQCADQQRqIANBEGoQZSEBIABBfjYCACAAQQRqIQAgASwAC0EATgRAIAAgASgCCDYCCCAAIAEpAgA3AgAMAgsgACABKAIAIAEoAgQQDSABLAALQQBODQEgASgCABAFDAELIAIgASgCACAGp2ovAAA7AQogASABKQMQQgJ8NwMQIABCADcCCCAAQgA3AgALIANBMGokAA8LECkACzMAIABBADYCACAAIAE2AjggAEIANwMwIAAgBTcDKCAAIAQ6ACAgACADNgIcIAAgAjoAGAvCAQECfwJAIAAgAUcEQCAAIAEoAgQiAgR/IAAoAgAhAyAAKAIIQQV0IAJJBEAgAwRAIAMQBSAAQQA2AgggAEIANwIAIAEoAgQhAgsgAkEASA0DIAJBAWtBBXZBAWpBACACGyICQQJ0EAYhAyAAIAI2AgggAEEANgIEIAAgAzYCACABKAIEIQILIAJBAWtBA3ZB/P///wFxQQRqQQAgAhsiAARAIAMgASgCACAA/AoAAAsgASgCBAVBAAs2AgQLDwsQBwAL0gQBBH8gASAAIAFGIgQ6AAwCQCAEDQADQCABKAIIIgQtAAwNAQJAAkAgBCgCCCICKAIAIgMgBEYEQAJAIAIoAgQiBUUNACAFLQAMDQAgBEEBOgAMIAIgACACRjoADCAFQQE6AAwMAgsCQCAEKAIAIAFGBEAgBCEBDAELIAQgBCgCBCIBKAIAIgA2AgQCQCAARQRAIAEgAjYCCCACIAE2AgAMAQsgACAENgIIIAQoAggiAygCACABIAM2AgggBEYEQCADIAE2AgAMAQsgAyABNgIECyABIAQ2AgAgBCABNgIIIAEoAggiAigCACEDCyABQQE6AAwgAkEAOgAMIAIgAygCBCIANgIAIAAE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DQAgARAFCyAGDwsQBwALWAAgAEEANgI4IABCADcCMCAAQgA3AiggAEIANwIgIABCADcCGCAAQgA3AhAgAEIANwIIIABCADcCACAAQgA3AkAgAEIANwJIIABCADcCUCAAIAA2AjwgAAsEAEECC08BA38jAEEQayICJAAgAQRAIAAgASgCABCAASABKAIEIQMgASgCGCEEIAIgAUEUajYCDCACQQxqIAQQTyABEAUgACADEIABCyACQRBqJAALawICfwF+AkAgAEEFSw0AIAIpAxAiBSACKQMIWQ0AIAIoAgAgBadqLAAAIQMgAiAFQgF8NwMQIAEgA0EASAR/IABBAWogASACEIEBRQ0BIANB/wBxIAEoAgBBB3RyBSADCzYCAEEBIQQLIAQLEAAgACgCBCAAKAIAa0ECdQsHACAAKAJQCwsAIAAEQCAAEAULC8cBAQZ/IwBBEGsiAiQAIAAoAhgiAwRAIAMiASAAKAIcIgRHBEADQCAEQQRrIgQoAgAhASAEQQA2AgAgAQRAIAEoAhAhBSACIAFBDGo2AgwgAkEMaiIGIAUQHiABKAIEIQUgAiABNgIMIAYgBRAhIAEQBQsgAyAERw0ACyAAKAIYIQELIAAgAzYCHCABEAULIAAoAhAhAyACIABBDGo2AgwgAkEMaiIBIAMQHiAAKAIEIQMgAiAANgIMIAEgAxAhIAJBEGokACAACzcAIABBADYCKCAAQeDnADYCACAAQgA3AgQgAEIANwIMIABCADcCFCAAQgA3AhwgAEEAOwEkIAALgAEBA38gAEHg5wA2AgAgACgCFCICBEAgACACNgIYIAIQBQsgACgCCCICBEAgAiIBIAAoAgwiA0cEQANAIANBBGsiAygCACEBIANBADYCACABBEAgASABKAIAKAIEEQIACyACIANHDQALIAAoAgghAQsgACACNgIMIAEQBQsgABAFC20BAn9BKBAGIgJBfzYCACACQQhqIgNCADcDECADQQA2AgggA0IANwMAIANCADcDGCAAIAIgACgCACgCEBEEACABKAJYIQAgASACNgJYIAAEQCAAKAIIIgEEQCAAIAE2AgwgARAFCyAAEAULQQELpAEBBH8gACgCACIEKAIAIgMEQCADIgEgBCgCBCICRwRAA0AgAkEMaygCACIBBEAgAkEIayABNgIAIAEQBQsgAkEcaygC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A0EgahAcIAMoAhwLIgk2AhQgACgCCCEBAkAgBEEDcARAIARBAWshAgwBCyAEQQJqIgJBf0YNAQsgASgCDCACQQJ0aigCACICQX9GDQAgAkF/QQIgAkEDcBtqIgJBf0YNACAEIQYgAiAERg0AA0AgAiEFAkACQCAAKALcASICIAAoAtgBIgdGDQBBASACIAdrQZABbSICIAJBAU0bIQhBACECA0AgByACQZABbGooAiAiCyAFQQJ0IgxqKAIAIAsgBkECdGooAgBGBEAgCCACQQFqIgJHDQEMAgsLIAogDGogCSADKAIQa0ECdTYCACADIAU2AgwgAyAJNgIcIAMoAhghASADIANBEGo2AiggAyADQQxqNgIkIAMgA0EcajYCICADAn8gASAJSwRAIAkgBTYCACAJQQRqDAELIANBIGoQHCADKAIcCyIJNgIUIAAoAgghAQwBCyAKIAVBAnRqIAogBkECdGooAgA2AgALAkAgBUEDcARAIAVBAWshAgwBCyAFQQJqIgJBf0YNAgsgASgCDCACQQJ0aigCACICQX9GDQEgAkF/QQIgAkEDcBtqIgJBf0YNASAFIQYgAiAERw0ACwsgDkEBaiIOIAEoAhwgASgCGCICa0ECdUgNAAsMAQsQBwALAkAgACgCBCIGKAIsIgAoAmQiASAAKAJgIgBGDQBBACECIAEgAGtBDG0iAUECTwRAIAFBAXEgAUF+cSEBQQAhBANAIAogAkEMbCIHaiIIKQIAIRIgACAHaiIHIAgoAgg2AgggByASNwIAIAogAkEBckEMbCIHaiIIKQIAIRIgACAHaiIHIAgoAgg2AgggByASNwIAIAJBAmohAiAEQQJqIgQgAUcNAAtFDQELIAogAkEMbCIBaiICKQIAIRIgACABaiIAIAIoAgg2AgggACASNwIACyAGKAIEIAkgAygCEGtBAnU2AlBBAQshAiAKBEAgChAFCyADKAIQIgBFDQAgAyAANgIUIAAQBQsgA0EwaiQAIAILVQAgAC0ATEEBRgRAIABBADoATCAAIAApAzggADUCSEIHfEIDiHw3AzgLIAAvASZBgQRNBEAgAEEAOgCEASAAIAApA3AgADUCgAFCB3xCA4h8NwNwCwuZBgEMfyMAQRBrIgokACAKIAEoAgAiCDYCBEF/IQECQCAIQX9GBEAgCkF/NgIIDAELIAogCEEBaiIBIAhBAmsgAUEDcBs2AgggCEEDcARAIAhBAWshAQwBCyAIQQJqIQELIAogATYCDCAIQQNuIQ0CQAJAA0ACQAJAIApBBGogDEECdGooAgAiC0F/RwRAIAAoAggoAgwgC0ECdGooAgAiAUF/Rw0BC0EAIQEgACgC2AEiAiAAKALcAUYNAQNAAkAgAiABQZABbGoiBCgCiAEiAiAEKAKMASIDSQRAIAIgCzYCACACQQRqIQMMAQsgAiAEKAKEASIGayIJQQJ1IgdBAWoiBUGAgICABE8NBUH/////AyADIAZrIgJBAXUiAyAFIAMgBUsbIAJB/P///wdPGyIDQYCAgIAETw0GIANBAnQiAhAGIgMgCWoiBSALNgIAIAUgB0ECdGshByAJBEAgByAGIAn8CgAACyAEIAIgA2o2AowBIAQgBUEEaiIDNgKIASAEIAc2AoQBIAZFDQAgBhAFCyAEIAM2AogBIAFBAWoiASAAKALcASAAKALYASICa0GQAW1JDQALDAELIAhBf0YNACABQQNuIA1JDQBBACEBIAAoAtwBIAAoAtgBRg0AA0AgACgC8AIgAUEEdGoQECAAKALYASECBEACQCACIAFBkAFsaiIEKAKIASICIAQoAowBIgNJBEAgAiALNgIAIAJBBGohAwwBCyACIAQoAoQBIgZrIglBAnUiB0EBaiIFQYCAgIAETw0FQf////8DIAMgBmsiAkEBdSIDIAUgAyAFSxsgAkH8////B08bIgNBgICAgARPDQYgA0ECdCICEAYiAyAJaiIFIAs2AgAgBSAHQQJ0ayEHIAkEQCAHIAYgCfwKAAALIAQgAiADajYCjAEgBCAFQQRqIgM2AogBIAQgBzYChAEgBkUNACAGEAULIAQgAzYCiAEgACgC2AEhAgsgAUEBaiIBIAAoAtwBIAJrQZABbUkNAAsLIAxBAWoiDEEDRw0ACyAKQRBqJABBAQ8LEAcACxAOAAuPBgEKfyMAQRBrIgkkACAJIAEoAgAiAjYCBEF/IQMCQCACQX9GBEAgCUF/NgIIDAELIAkgAkEBaiIBIAJBAmsgAUEDcBs2AgggAkEDcARAIAJBAWshAwwBCyACQQJqIQMLIAkgAzYCDAJAAkADQAJAAkAgCUEEaiALQQJ0aigCACIKQX9GBEAgACgC2AEhAyAAKALcASECDAELIAAoAtgBIQMgACgC3AEhAiAAKAIIKAIMIApBAnRqKAIAQX9GDQBBACEBIAIgA0YNAQNAIAAoAvACIAFBBHRqEBAgACgC2AEhAwRAAkAgAyABQZABbGoiBCgCiAEiAyAEKAKMASICSQRAIAMgCjYCACADQQRqIQIMAQsgAyAEKAKEASIGayIIQQJ1IgdBAWoiBUGAgICABE8NBkH/////AyACIAZrIgNBAXUiAiAFIAIgBUsbIANB/P///wdPGyICQYCAgIAETw0HIAJBAnQiAxAGIgIgCGoiBSAKNgIAIAUgB0ECdGshByAIBEAgByAGIAj8CgAACyAEIAIgA2o2AowBIAQgBUEEaiICNgKIASAEIAc2AoQBIAZFDQAgBhAFCyAEIAI2AogBIAAoAtgBIQMLIAFBAWoiASAAKALcASADa0GQAW1JDQALDAELQQAhASACIANGDQADQAJAIAMgAUGQAWxqIgQoAogBIgMgBCgCjAEiAkkEQCADIAo2AgAgA0EEaiECDAELIAMgBCgChAEiBmsiCEECdSIHQQFqIgVBgICAgARPDQRB/////wMgAiAGayIDQQF1IgIgBSACIAVLGyADQfz///8HTxsiAkGAgICABE8NBSACQQJ0IgMQBiICIAhqIgUgCjYCACAFIAdBAnRrIQcgCARAIAcgBiAI/AoAAAsgBCACIANqNgKMASAEIAVBBGoiAjYCiAEgBCAHNgKEASAGRQ0AIAYQBQsgBCACNgKIASABQQFqIgEgACgC3AEgACgC2AEiA2tBkAFtSQ0ACwsgC0EBaiILQQNHDQALIAlBEGokAEEBDwsQBwALEA4AC5QLAQZ/IwBBEGsiBCQAAkACQAJAIAAoAgQiAiAAKAIAIgVrIgdBkAFtIgMgAUkEQCAAKAIIIAVrQZABbSIFIAFPBEAgAiABIANrQZABbGohAQNAIAIQ5gEgAkGQAWoiAiABRw0ACyAAIAE2AgQMAgsgAUHyuJwOTw0CQfG4nA4gBUEBdCICIAEgASACSRsgBUG4nI4HTxsiAkHyuJwOTw0DIAQgAkGQAWwiBRAGIgI2AgAgBCACIAVqNgIMIAQgAiAHaiICNgIEIAIgASADa0GQAWxqIQEDQCACEOYBIAJBkAFqIgIgAUcNAAsgBCABNgIIIAQoAgQgACIDKAIEIgcgACgCACIAa0Hwfm1BkAFsaiEFIAAgB0cEQCAAIQIgBSEBA0AgASACKAIANgIAIAEgAigCBDYCBCABIAIoAgg2AgggASACKAIMNgIMIAJBADYCDCACQgA3AgQgASACKAIQNgIQIAEgAigCFDYCFCABIAIoAhg2AhggAkEANgIYIAJCADcCECACLQAcIQYgAUEANgIoIAFCADcCICABIAY6ABwgASACKAIgNgIgIAEgAigCJDYCJCABIAIoAig2AiggAkEANgIoIAJCADcCICABQQA2AjQgAUIANwIsIAEgAigCLDYCLCABIAIoAjA2AjAgASACKAI0NgI0IAJBADYCNCACQgA3AiwgAUEANgJAIAFCADcCOCABIAIoAjg2AjggASACKAI8NgI8IAEgAigCQDYCQCACQQA2AkAgAkIANwI4IAEgAigCRDYCRCACKAJIIQYgAUEANgJUIAFCADcCTCABIAY2AkggASACKAJMNgJMIAEgAigCUDYCUCABIAIoAlQ2AlQgAkEANgJUIAJCADcCTCABQQA2AmAgAUIANwJYIAEgAigCWDYCWCABIAIoAlw2AlwgASACKAJgNgJgIAJBADYCYCACQgA3AlggAi0AZCEGIAFBADYCcCABQgA3AmggASAGOgBkIAEgAigCaDYCaCABIAIoAmw2AmwgASACKAJwNgJwIAJBADYCcCACQgA3AmggAUEANgJ8IAFCADcCdCABIAIoAnQ2AnQgASACKAJ4NgJ4IAEgAigCfDYCfCACQQA2AnwgAkIANwJ0IAIoAoABIQYgAUEANgKMASABQgA3AoQBIAEgBjYCgAEgASACKAKEATYChAEgASACKAKIATYCiAEgASACKAKMATYCjAEgAkEANgKMASACQgA3AoQBIAFBkAFqIQEgAkGQAWoiAiAHRw0ACwNAIAAoAoQBIgEEQCAAIAE2AogBIAEQBQsgACgCdCIBBEAgACABNgJ4IAEQBQsgACgCaCIBBEAgACABNgJsIAEQBQsgAEEEahBOIABBkAFqIgAgB0cNAAsgAygCACEACyADKAIIIQEgBCgCCCECIAMgBCgCDDYCCCADIAI2AgQgAyAFNgIAIAQgATYCDCAEIAA2AgggBCAANgIEIAQgADYCAAJAIAQoAgQiAyAEKAIIIgJGBEAgAiEBDAELA0AgAkEMaygCACIABEAgAkEIayAANgIAIAAQBQsg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DwsQDgALnQIBCX8CQAJAIAAoAgwiAiAAKAIIIgZHDQAgACgCBCIEIAAoAgAiB0cEQCAEIAQgB2tBAnVBAWpBfm1BAnQiAmohAyAGIARrIgUEQCADIAQgBfwKAAALIAAgACgCBCACajYCBCADIAVqIQYMAQtBASACIAdrQQF1IAQgBkYiBRsiA0GAgICABE8NASADQQJ0IgIQBiIJIAJqIQogCSADQXxxaiIDIQggBUUEQCADIAYgBGtqIQggAyEFIAQhAgNAIAUgAigCADYCACACQQRqIQIgBUEEaiIFIAhHDQALCyAAIAo2AgwgACADNgIEIAAgCTYCACAAIAg2AgggBEUNACAHEAULIAYgASgCADYCACAAIAZBBGo2AggPCxAOAAvuAQEDfyAAQYQRNgIAIAAoAjwiAwRAIAMiASAAKAJAIgJHBEADQCACQQRrIgIoAgAhASACQQA2AgAgAQRAIAEQFwsgAiADRw0ACyAAKAI8IQELIAAgAzYCQCABEAULIAAoAjAiAQRAIAAgATYCNCABEAULIAAoAiQiAwRAIAMiASAAKAIoIgJHBEADQCACQRhrIgIgAigCACgCABEAABogAiADRw0ACyAAKAIkIQELIAAgAzYCKCABEAULIABB9A82AgAgACgCECIBBEAgACABNgIUIAEQBQsgACgCBCIBBEAgACABNgIIIAEQBQsgAAuFAgEIfwJAIAAoAhAiA0UNACAAQRBqIQUgASgCACEBA0AgAygCECIEIAFKBEAgAygCACIDDQEMAgsgASAESgRAIAMoAgQiAw0BDAILCyADIAVGDQAgAygCGCIBRQ0AIANBFGohByACKAIAIAIgAiwACyIDQQBIIgQbIQUgAigCBCADIAQbIQMDQCAFIAEoAhAgAUEQaiABLAAbIgRBAEgiBhsiCCABKAIUIAQgBhsiBCADIAMgBEsiBhsiCRATIgpBAEggAyAESSAKGwR/IAEFIAggBSAJEBMiBEEASCAGIAQbQQFHBEAgByACENYBDwsgAUEEagsoAgAiAQ0ACwsgACACENYBC2sCAn8BfgJAIABBBUsNACACKQMQIgUgAikDCFkNACACKAIAIAWnaiwAACEDIAIgBUIBfDcDECABIANBAEgEfyAAQQFqIAEgAhCiAUUNASADQf8AcSABKAIAQQd0cgUgAws2AgBBASEECyAEC9QDAQh/IABBADYCGCAAQgA3AhAgAEEANgIIIABCADcCACABKAIEIgIgASgCACIDRgRAIABBADYCHCAAQQA2AgwgAA8LAkAgAiADayIBQRRtQc2Zs+YASQRAIAAgARAGIgQ2AhQgACAENgIQIAAgASAEajYCGCABQRRrIgEgAUEUcGtBFGoiAQRAIAQgAyAB/AoAAAtBACEDIABBADYCHCAAIAEgBGo2AhQgAQRAIAFBFG0iAkEDcSEGQQAhAQJAIAJBBE8EQCACQXxxIQkDQCABIAQgA0EUbGoiAigCECACKAIMbCIFIAEgBUsbIgEgAigCJCACKAIgbCIFIAEgBUsbIgEgAigCOCACKAI0bCIFIAEgBUsbIgEgAigCTCACKAJIbCICIAEgAksbIQEgA0EEaiEDIAhBBGoiCCAJRw0ACyAGRQ0BCwNAIAEgBCADQRRsaiICKAIQIAIoAgxsIgIgASACSxshASADQQFqIQMgB0EBaiIHIAZHDQALCyABRQRAIABBADYCDCAADwsgAUEASA0CIAEQBiEDIAEEQCADQQAgAfwLAAsgACABIANqIgE2AgggACABNgIEIAAgAzYCAAsgACADNgIMIAAPCxAHAAsQBwAL6BUCEn8CfgJAIAEpAwggASkDECIWQgR8Uw0AIAAgASgCACAWp2ooAAAiBTYCACABIAEpAxAiFkIEfCIXNwMQIAVBIEsNACABKQMIIBZCCHxTDQAgACABKAIAIBenaigAACIFNgIEIAEgASkDEEIEfDcDECAFRQRAQQEPCyADIAVJDQAgAEEANgIIIABBEGogARA2RQ0AIABBoARqIAEQCkUNACAAQbQEaiABEApFDQAgAEHIBGogARAKRQ0AIAAoAgQhECACIQgjAEFAaiIEJAAgACIDKAIMIQAgBEEANgIQIANB9ARqIAAgBEEQaiIAEA8gAygCDCEBIARBADYCECADQYAFaiIRIAEgABAPIAMgAygCjAU2ApAFIARCADcDICAEQgA3AxggBEIANwMQIAAQCyAEKAIUIAQoAiQiACAEKAIgaiIBQdUCbiICQQJ0aigCACABIAJB1QJsa0EMbGoiAUIANwIEIAEgEDYCAEEBIQUCQCAAQQFqIgJFDQAgA0GMBWohEiADQRBqIRMDQCAEKAIUIgEgBCgCICIHIAJBAWsiC2oiAEHVAm4iBUECdGooAgAgACAFQdUCbGtBDGxqIgUoAgghACAFKAIEGiAFKAIAIQYgBCALNgIkIAQoAhgiBSABa0ECdUHVAmxBAWtBACABIAVHGyACIAdqa0EBakGqBU8EQCAFQQRrKAIAEAUgBCAEKAIYQQRrNgIYCyAAIAxHBEAgACAMSwRAQQAhBQwDCwJAIAMoAowFIgwgAygCkAUiAkYNAANAIAJBEGsiASgCACAASQ0BIAMoAvQEIAJBDGsiBSgCAEECdGogAkEEaygCADYCACABKAIAIABGDQEgAygCgAUgBSgCAEECdGogAkEIaygCADYCACADIAE2ApAFIAEiAiAMRw0ACwsgACEMC0EAIQUgBiAQSw0BIAMgBiAREMMBIgcgAygCDE8NAQJAAkAgAygCACIJIAdBAnQiCyADKAKABWooAgAiCkYEQCAGRQ0BIAgoAhAhASAIKAIUIQBBACELA0AgACABRiEFIAAhAkEAIQcgASEAAkAgBQ0AA0AgCCgCHCEFIAEgB0EUbGoiCSgCACIKLQBURQRAIAooAkQgBUECdGooAgAhBQsgAiEAIAUgCigCUE8NAQJ/IAMoAvQEIAkoAgRBAnRqIg0gCSgCDCIAQQNLDQAaQQAhASAIKAIMIgIgCSgCEEUNABoDQCAABEAgAiANIAFBAnRqIAD8CgAACyACIAkoAgwiAGohAiABQQFqIgEgCSgCEEkNAAsgCCgCDAshASAKKAIoIgAEQCAKKAIAKAIAIAAgBWxqIAEgAPwKAAALIAgoAhQiAiEAIAdBAWoiByACIAgoAhAiAWtBFG1JDQALCyAIIAgoAhxBAWo2AhwgAyADKAIIQQFqNgIIIAYgC0EBaiILRw0ACwwBCwJAAkACQAJAIAZBAk0EQCADKALoBCIBIAc2AgBBASECIAMoAgwiAEEBSw0BDAQLIAMoAgggAygCBEsNByAGZyEBQQAhAEEAIQIDQCATIAJBBHRqEBAgAEEBdHIhACACQQFqIgIgAXNBH0cNAAsgBkEBdiIBIABJDQcgASAAayIAIAYgAGsiAkYEQCAAIQEMAwsgAygC1AQiASADKALMBEYNASABKAIAIAMgAygC2AQiDUEBaiIONgLYBEGAgICAeCANdnEhBgJAIA5BIEYEQCADQQA2AtgEIAMgAUEEajYC1AQgBg0BDAMLIAZFDQILIAAhASACIQAMAgsDQCABIAJBAnRqIgUgBUEEaygCACIFQQFqQQAgBSAAQQFrRxs2AgAgAkEBaiICIAMoAgwiAEkNAAsMAgsgAiEBCyAMQX9GDQRBASAJIApBf3NqdCEFIAQgDDYCACAEIAc2AgQgBCADKAKABSALaigCADYCCCAEIAMoAvQEIAtqKAIANgIMIAQgAygCkAUiAjYCLCADKAKUBSEGIAQgEjYCOCAEIAQ2AjQgBCAEQSxqNgIwIAMCfyACIAZJBEAgAiAEKQIINwIIIAIgBCkCADcCACACQRBqDAELIARBMGoQGCAEKAIsCzYCkAUgAygCgAUgC2oiAiACKAIAQQFqNgIAIAMoAvQEIAtqIgIgAigCACAFajYCACABBEAgBCgCJCIGIAQoAiBqIgUgBCgCGCILIAQoAhQiAmtBAnVB1QJsQQFrQQAgAiALRxtGBEAgBEEQahALIAQoAiQiBiAEKAIgaiEFIAQoAhQhAgsgAiAFQdUCbiILQQJ0aigCACAFIAtB1QJsa0EMbGoiAiAMNgIIIAIgBzYCBCACIAE2AgAgBCAGQQFqNgIkCyAMQQFqIQwgAEUNASAEKAIkIgUgBCgCIGoiASAEKAIYIgYgBCgCFCICa0ECdUHVAmxBAWtBACACIAZHG0YEQCAEQRBqEAsgBCgCFCECIAQoAiQiBSAEKAIgaiEBCyACIAFB1QJuIgZBAnRqKAIAIAEgBkHVAmxrQQxsaiIBIAw2AgggASAHNgIEIAEgADYCACAEIAVBAWoiAjYCJAwCC0EAIQsgBkUNAANAIAMoAgwEQCADKAKABSENIAMoAtwEIQEgAygC6AQhDkEAIQIDQCABIA4gAkECdGoiBSgCAEECdGpBADYCAAJAIAMoAgAiACANIAUoAgBBAnQiB2ooAgAiCUYNACABIAdqIQcgACAJayIAQSAgAygCsAQiCWsiD0wEQCADKAKsBCIKIAMoAqQERgRAQQAhBQwJCyAHIAooAgAgCXRBICAAa3Y2AgAgAyADKAKwBCAAaiIANgKwBCAAQSBHDQEgA0EANgKwBCADIApBBGo2AqwEDAELIAMoAqwEIgpBBGoiFCADKAKkBEYEQEEAIQUMCAsgCigCACEVIAMgFDYCrAQgAyAAIA9rIg82ArAEIAcgCigCBEEgIA9rdiAVIAl0QSAgAGt2cjYCAAsgASAFKAIAQQJ0IgBqIgUgBSgCACADKAL0BCAAaigCAHI2AgAgAkEBaiICIAMoAgxJDQALC0EAIQcCQCAIKAIQIgIgCCgCFEYNAANAIAgoAhwhBSACIAdBFGxqIgkoAgAiCi0AVEUEQCAKKAJEIAVBAnRqKAIAIQULIAUgCigCUE8NAQJ/IAMoAtwEIAkoAgRBAnRqIg0gCSgCDCIAQQNLDQAaQQAhASAIKAIMIgIgCSgCEEUNABoDQCAABEAgAiANIAFBAnRqIAD8CgAACyACIAkoAgwiAGohAiABQQFqIgEgCSgCEEkNAAsgCCgCDAshASAKKAIoIgAEQCAKKAIAKAIAIAAgBWxqIAEgAPwKAAALIAdBAWoiByAIKAIUIAgoAhAiAmtBFG1JDQALCyAIIAgoAhxBAWo2AhwgAyADKAIIQQFqNgIIIAtBAWoiCyAGRw0ACwsgBCgCJCECCyACDQALQQEhBQsgBEEANgIkIAQoAhgiACAEKAIUIgJrQQJ1IgFBA08EQANAIAIoAgAQBSAEIAQoAhRBBGoiAjYCFCAEKAIYIgAgAmtBAnUiAUECSw0ACwtBqgEhAwJAAkACQCABQQFrDgIBAAILQdUCIQMLIAQgAzYCIAsgACACRgR/IAAFA0AgAigCABAFIAJBBGoiAiAARw0ACyAEKAIYIQAgBCgCFAshASAEIAAgACABa0F8cWs2AhggBCgCECIABEAgABAFCyAEQUBrJAAgBSEMCyAMC/cVAhF/An4CQCABKQMIIAEpAxAiFUIEfFMNACAAIAEoAgAgFadqKAAAIgU2AgAgASABKQMQIhVCBHwiFjcDECAFQSBLDQAgASkDCCAVQgh8Uw0AIAAgASgCACAWp2ooAAAiBTYCBCABIAEpAxBCBHw3AxAgBUUEQEEBDwsgAyAFSQ0AIABBADYCCCAAQRBqIAEQNkUNACAAQaAEaiABEApFDQAgAEG0BGogARAKRQ0AIABByARqIAEQCkUNACAAKAIEIRAgAiEJIwBBQGoiBCQAIAAiAygCDCEAIARBADYCECADQfQEaiAAIARBEGoiABAPIAMoAgwhASAEQQA2AhAgA0GABWogASAAEA8gAyADKAKMBTYCkAUgBEIANwMgIARCADcDGCAEQgA3AxAgABALIAQoAhQgBCgCJCIAIAQoAiBqIgFB1QJuIgJBAnRqKAIAIAEgAkHVAmxrQQxsaiIBQgA3AgQgASAQNgIAQQEhBQJAIABBAWoiAkUNACADQYwFaiERIANBEGohEgNAIAQoAhQiASAEKAIgIgsgAkEBayIIaiIAQdUCbiIFQQJ0aigCACAAIAVB1QJsa0EMbGoiBSgCCCEAIAUoAgQhByAFKAIAIQYgBCAINgIkIAQoAhgiBSABa0ECdUHVAmxBAWtBACABIAVHGyACIAtqa0EBakGqBU8EQCAFQQRrKAIAEAUgBCAEKAIYQQRrNgIYCyAAIAxHBEAgACAMSwRAQQAhBQwDCwJAIAMoAowFIgwgAygCkAUiAkYNAANAIAJBEGsiASgCACAASQ0BIAMoAvQEIAJBDGsiBSgCAEECdGogAkEEaygCADYCACABKAIAIABGDQEgAygCgAUgBSgCAEECdGogAkEIaygCADYCACADIAE2ApAFIAEiAiAMRw0ACwsgACEMCyAGIBBLBEBBACEFDAILQQAhBSAHQQFqQQAgByADKAIMIgBBAWtHGyIHIABPDQECQAJAIAMoAgAiCCAHQQJ0IgsgAygCgAVqKAIAIgpGBEAgBkUNASAJKAIQIQEgCSgCFCEAQQAhCwNAIAAgAUYhBSAAIQJBACEHIAEhAAJAIAUNAANAIAkoAhwhBSABIAdBFGxqIggoAgAiCi0AVEUEQCAKKAJEIAVBAnRqKAIAIQULIAIhACAFIAooAlBPDQECfyADKAL0BCAIKAIEQQJ0aiINIAgoAgwiAEEDSw0AGkEAIQEgCSgCDCICIAgoAhBFDQAaA0AgAARAIAIgDSABQQJ0aiAA/AoAAAsgAiAIKAIMIgBqIQIgAUEBaiIBIAgoAhBJDQALIAkoAgwLIQEgCigCKCIABEAgCigCACgCACAAIAVsaiABIAD8CgAACyAJKAIUIgIhACAHQQFqIgcgAiAJKAIQIgFrQRRtSQ0ACwsgCSAJKAIcQQFqNgIcIAMgAygCCEEBajYCCCAGIAtBAWoiC0cNAAsMAQsCQAJAAkACQCAGQQJNBEAgAygC6AQiASAHNgIAQQEhAiADKAIMIgBBAUsNAQwECyADKAIIIAMoAgRLDQcgBmchAUEAIQBBACECA0AgEiACQQR0ahAQIABBAXRyIQAgAkEBaiICIAFzQR9HDQALIAZBAXYiASAASQ0HIAEgAGsiACAGIABrIgJGBEAgACEBDAMLIAMoAtQEIgEgAygCzARGDQEgASgCACADIAMoAtgEIg1BAWoiDjYC2ARBgICAgHggDXZxIQYCQCAOQSBGBEAgA0EANgLYBCADIAFBBGo2AtQEIAYNAQwDCyAGRQ0CCyAAIQEgAiEADAILA0AgASACQQJ0aiIFIAVBBGsoAgAiBUEBakEAIAUgAEEBa0cbNgIAIAJBAWoiAiADKAIMIgBJDQALDAILIAIhAQsgDEF/Rg0EQQEgCCAKQX9zanQhBSAEIAw2AgAgBCAHNgIEIAQgAygCgAUgC2ooAgA2AgggBCADKAL0BCALaigCADYCDCAEIAMoApAFIgI2AiwgAygClAUhBiAEIBE2AjggBCAENgI0IAQgBEEsajYCMCADAn8gAiAGSQRAIAIgBCkCCDcCCCACIAQpAgA3AgAgAkEQagwBCyAEQTBqEBggBCgCLAs2ApAFIAMoAoAFIAtqIgIgAigCAEEBajYCACADKAL0BCALaiICIAIoAgAgBWo2AgAgAQRAIAQoAiQiBiAEKAIgaiIFIAQoAhgiCyAEKAIUIgJrQQJ1QdUCbEEBa0EAIAIgC0cbRgRAIARBEGoQCyAEKAIkIgYgBCgCIGohBSAEKAIUIQILIAIgBUHVAm4iC0ECdGooAgAgBSALQdUCbGtBDGxqIgIgDDYCCCACIAc2AgQgAiABNgIAIAQgBkEBajYCJAsgDEEBaiEMIABFDQEgBCgCJCIFIAQoAiBqIgEgBCgCGCIGIAQoAhQiAmtBAnVB1QJsQQFrQQAgAiAGRxtGBEAgBEEQahALIAQoAhQhAiAEKAIkIgUgBCgCIGohAQsgAiABQdUCbiIGQQJ0aigCACABIAZB1QJsa0EMbGoiASAMNgIIIAEgBzYCBCABIAA2AgAgBCAFQQFqIgI2AiQMAgtBACELIAZFDQADQCADKAIMBEAgAygCgAUhDSADKALcBCEBIAMoAugEIQ5BACECA0AgASAOIAJBAnRqIgUoAgBBAnRqQQA2AgACQCADKAIAIgAgDSAFKAIAQQJ0IgdqKAIAIghGDQAgASAHaiEHIAAgCGsiAEEgIAMoArAEIghrIg9MBEAgAygCrAQiCiADKAKkBEYEQEEAIQUMCQsgByAKKAIAIAh0QSAgAGt2NgIAIAMgAygCsAQgAGoiADYCsAQgAEEgRw0BIANBADYCsAQgAyAKQQRqNgKsBAwBCyADKAKsBCIKQQRqIhMgAygCpARGBEBBACEFDAgLIAooAgAhFCADIBM2AqwEIAMgACAPayIPNgKwBCAHIAooAgRBICAPa3YgFCAIdEEgIABrdnI2AgALIAEgBSgCAEECdCIAaiIFIAUoAgAgAygC9AQgAGooAgByNgIAIAJBAWoiAiADKAIMSQ0ACwtBACEHAkAgCSgCECICIAkoAhRGDQADQCAJKAIcIQUgAiAHQRRsaiIIKAIAIgotAFRFBEAgCigCRCAFQQJ0aigCACEFCyAFIAooAlBPDQECfyADKALcBCAIKAIEQQJ0aiINIAgoAgwiAEEDSw0AGkEAIQEgCSgCDCICIAgoAhBFDQAaA0AgAARAIAIgDSABQQJ0aiAA/AoAAAsgAiAIKAIMIgBqIQIgAUEBaiIBIAgoAhBJDQALIAkoAgwLIQEgCigCKCIABEAgCigCACgCACAAIAVsaiABIAD8CgAACyAHQQFqIgcgCSgCFCAJKAIQIgJrQRRtSQ0ACwsgCSAJKAIcQQFqNgIcIAMgAygCCEEBajYCCCALQQFqIgsgBkcNAAsLIAQoAiQhAgsgAg0AC0EBIQULIARBADYCJCAEKAIYIgAgBCgCFCICa0ECdSIBQQNPBEADQCACKAIAEAUgBCAEKAIUQQRqIgI2AhQgBCgCGCIAIAJrQQJ1IgFBAksNAAsLQaoBIQMCQAJAAkAgAUEBaw4CAQACC0HVAiEDCyAEIAM2AiALIAAgAkYEfyAABQNAIAIoAgAQBSACQQRqIgIgAEcNAAsgBCgCGCEAIAQoAhQLIQEgBCAAIAAgAWtBfHFrNgIYIAQoAhAiAARAIAAQBQsgBEFAayQAIAUhDAsgDAvwFQIRfwJ+AkAgASkDCCABKQMQIhVCBHxTDQAgACABKAIAIBWnaigAACIFNgIAIAEgASkDECIVQgR8IhY3AxAgBUEgSw0AIAEpAwggFUIIfFMNACAAIAEoAgAgFqdqKAAAIgU2AgQgASABKQMQQgR8NwMQIAVFBEBBAQ8LIAMgBUkNACAAQQA2AgggAEEQaiABEDZFDQAgAEGgBGogARAKRQ0AIABBtARqIAEQCkUNACAAQcgEaiABEApFDQAgACgCBCEQIAIhCSMAQUBqIgQkACAAIgMoAgwhACAEQQA2AhAgA0H0BGogACAEQRBqIgAQDyADKAIMIQEgBEEANgIQIANBgAVqIAEgABAPIAMgAygCjAU2ApAFIARCADcDICAEQgA3AxggBEIANwMQIAAQCyAEKAIUIAQoAiQiACAEKAIgaiIBQdUCbiICQQJ0aigCACABIAJB1QJsa0EMbGoiAUIANwIEIAEgEDYCAEEBIQUCQCAAQQFqIgJFDQAgA0GMBWohESADQRBqIRIDQCAEKAIUIgEgBCgCICILIAJBAWsiCGoiAEHVAm4iBUECdGooAgAgACAFQdUCbGtBDGxqIgUoAgghACAFKAIEIQcgBSgCACEGIAQgCDYCJCAEKAIYIgUgAWtBAnVB1QJsQQFrQQAgASAFRxsgAiALamtBAWpBqgVPBEAgBUEEaygCABAFIAQgBCgCGEEEazYCGAsgACAMRwRAIAAgDEsEQEEAIQUMAwsCQCADKAKMBSIMIAMoApAFIgJGDQADQCACQRBrIgEoAgAgAEkNASADKAL0BCACQQxrIgUoAgBBAnRqIAJBBGsoAgA2AgAgASgCACAARg0BIAMoAoAFIAUoAgBBAnRqIAJBCGsoAgA2AgAgAyABNgKQBSABIgIgDEcNAAsLIAAhDAtBACEFIAYgEEsNASAHQQFqQQAgByADKAIMIgBBAWtHGyIHIABPDQECQAJAIAMoAgAiCCAHQQJ0IgsgAygCgAVqKAIAIgpGBEAgBkUNASAJKAIQIQEgCSgCFCEAQQAhCwNAIAAgAUYhBSAAIQJBACEHIAEhAAJAIAUNAANAIAkoAhwhBSABIAdBFGxqIggoAgAiCi0AVEUEQCAKKAJEIAVBAnRqKAIAIQULIAIhACAFIAooAlBPDQECfyADKAL0BCAIKAIEQQJ0aiINIAgoAgwiAEEDSw0AGkEAIQEgCSgCDCICIAgoAhBFDQAaA0AgAARAIAIgDSABQQJ0aiAA/AoAAAsgAiAIKAIMIgBqIQIgAUEBaiIBIAgoAhBJDQALIAkoAgwLIQEgCigCKCIABEAgCigCACgCACAAIAVsaiABIAD8CgAACyAJKAIUIgIhACAHQQFqIgcgAiAJKAIQIgFrQRRtSQ0ACwsgCSAJKAIcQQFqNgIcIAMgAygCCEEBajYCCCAGIAtBAWoiC0cNAAsMAQsCQAJAAkACQCAGQQJNBEAgAygC6AQiASAHNgIAQQEhAiADKAIMIgBBAUsNAQwECyADKAIIIAMoAgRLDQcgBmchAUEAIQBBACECA0AgEiACQQR0ahAQIABBAXRyIQAgAkEBaiICIAFzQR9HDQALIAZBAXYiASAASQ0HIAEgAGsiACAGIABrIgJGBEAgACEBDAMLIAMoAtQEIgEgAygCzARGDQEgASgCACADIAMoAtgEIg1BAWoiDjYC2ARBgICAgHggDXZxIQYCQCAOQSBGBEAgA0EANgLYBCADIAFBBGo2AtQEIAYNAQwDCyAGRQ0CCyAAIQEgAiEADAILA0AgASACQQJ0aiIFIAVBBGsoAgAiBUEBakEAIAUgAEEBa0cbNgIAIAJBAWoiAiADKAIMIgBJDQALDAILIAIhAQsgDEF/Rg0EQQEgCCAKQX9zanQhBSAEIAw2AgAgBCAHNgIEIAQgAygCgAUgC2ooAgA2AgggBCADKAL0BCALaigCADYCDCAEIAMoApAFIgI2AiwgAygClAUhBiAEIBE2AjggBCAENgI0IAQgBEEsajYCMCADAn8gAiAGSQRAIAIgBCkCCDcCCCACIAQpAgA3AgAgAkEQagwBCyAEQTBqEBggBCgCLAs2ApAFIAMoAoAFIAtqIgIgAigCAEEBajYCACADKAL0BCALaiICIAIoAgAgBWo2AgAgAQRAIAQoAiQiBiAEKAIgaiIFIAQoAhgiCyAEKAIUIgJrQQJ1QdUCbEEBa0EAIAIgC0cbRgRAIARBEGoQCyAEKAIkIgYgBCgCIGohBSAEKAIUIQILIAIgBUHVAm4iC0ECdGooAgAgBSALQdUCbGtBDGxqIgIgDDYCCCACIAc2AgQgAiABNgIAIAQgBkEBajYCJAsgDEEBaiEMIABFDQEgBCgCJCIFIAQoAiBqIgEgBCgCGCIGIAQoAhQiAmtBAnVB1QJsQQFrQQAgAiAGRxtGBEAgBEEQahALIAQoAhQhAiAEKAIkIgUgBCgCIGohAQsgAiABQdUCbiIGQQJ0aigCACABIAZB1QJsa0EMbGoiASAMNgIIIAEgBzYCBCABIAA2AgAgBCAFQQFqIgI2AiQMAgtBACELIAZFDQADQCADKAIMBEAgAygCgAUhDSADKALcBCEBIAMoAugEIQ5BACECA0AgASAOIAJBAnRqIgUoAgBBAnRqQQA2AgACQCADKAIAIgAgDSAFKAIAQQJ0IgdqKAIAIghGDQAgASAHaiEHIAAgCGsiAEEgIAMoArAEIghrIg9MBEAgAygCrAQiCiADKAKkBEYEQEEAIQUMCQsgByAKKAIAIAh0QSAgAGt2NgIAIAMgAygCsAQgAGoiADYCsAQgAEEgRw0BIANBADYCsAQgAyAKQQRqNgKsBAwBCyADKAKsBCIKQQRqIhMgAygCpARGBEBBACEFDAgLIAooAgAhFCADIBM2AqwEIAMgACAPayIPNgKwBCAHIAooAgRBICAPa3YgFCAIdEEgIABrdnI2AgALIAEgBSgCAEECdCIAaiIFIAUoAgAgAygC9AQgAGooAgByNgIAIAJBAWoiAiADKAIMSQ0ACwtBACEHAkAgCSgCECICIAkoAhRGDQADQCAJKAIcIQUgAiAHQRRsaiIIKAIAIgotAFRFBEAgCigCRCAFQQJ0aigCACEFCyAFIAooAlBPDQECfyADKALcBCAIKAIEQQJ0aiINIAgoAgwiAEEDSw0AGkEAIQEgCSgCDCICIAgoAhBFDQAaA0AgAARAIAIgDSABQQJ0aiAA/AoAAAsgAiAIKAIMIgBqIQIgAUEBaiIBIAgoAhBJDQALIAkoAgwLIQEgCigCKCIABEAgCigCACgCACAAIAVsaiABIAD8CgAACyAHQQFqIgcgCSgCFCAJKAIQIgJrQRRtSQ0ACwsgCSAJKAIcQQFqNgIcIAMgAygCCEEBajYCCCALQQFqIgsgBkcNAAsLIAQoAiQhAgsgAg0AC0EBIQULIARBADYCJCAEKAIYIgAgBCgCFCICa0ECdSIBQQNPBEADQCACKAIAEAUgBCAEKAIUQQRqIgI2AhQgBCgCGCIAIAJrQQJ1IgFBAksNAAsLQaoBIQMCQAJAAkAgAUEBaw4CAQACC0HVAiEDCyAEIAM2AiALIAAgAkYEfyAABQNAIAIoAgAQBSACQQRqIgIgAEcNAAsgBCgCGCEAIAQoAhQLIQEgBCAAIAAgAWtBfHFrNgIYIAQoAhAiAARAIAAQBQsgBEFAayQAIAUhDAsgDAu/FQIRfwJ+AkAgASkDCCABKQMQIhVCBHxTDQAgACABKAIAIBWnaigAACIFNgIAIAEgASkDECIVQgR8IhY3AxAgBUEgSw0AIAEpAwggFUIIfFMNACAAIAEoAgAgFqdqKAAAIgU2AgQgASABKQMQQgR8NwMQIAVFBEBBAQ8LIAMgBUkNACAAQQA2AgggAEEQaiABEAhFDQAgAEEgaiABEApFDQAgAEE0aiABEApFDQAgAEHIAGogARAKRQ0AIAAoAgQhECACIQkjAEHQAGsiBCQAIAAiAygCDCEAIARBADYCICADQfQAaiAAIARBIGoiABAPIAMoAgwhASAEQQA2AiAgA0GAAWogASAAEA8gAyADKAKMATYCkAEgBEIANwMwIARCADcDKCAEQgA3AyAgABALIAQoAiQgBCgCNCIAIAQoAjBqIgFB1QJuIgJBAnRqKAIAIAEgAkHVAmxrQQxsaiIBQgA3AgQgASAQNgIAQQEhBgJAIABBAWoiAEUNACADQYwBaiERIANBEGohEgNAIAQoAiQiAiAEKAIwIgYgAEEBayIHaiIBQdUCbiIFQQJ0aigCACABIAVB1QJsa0EMbGoiBSgCCCEBIAUoAgQhCyAFKAIAIQggBCAHNgI0IAQoAigiBSACa0ECdUHVAmxBAWtBACACIAVHGyAAIAZqa0EBakGqBU8EQCAFQQRrKAIAEAUgBCAEKAIoQQRrNgIoCyABIAxHBEAgASAMSwRAQQAhBgwDCwJAIAMoAowBIgUgAygCkAEiAEYNAANAIABBEGsiAigCACABSQ0BIAMoAnQgAEEMayIGKAIAQQJ0aiAAQQRrKAIANgIAIAIoAgAgAUYNASADKAKAASAGKAIAQQJ0aiAAQQhrKAIANgIAIAMgAjYCkAEgAiIAIAVHDQALCyABIQwLIAggEEsEQEEAIQYMAgtBACEGIAtBAWpBACALIAMoAgwiAEEBa0cbIgsgAE8NAQJAIAMoAgAiByALQQJ0IgUgAygCgAFqKAIAIgpGBEAgCEUNASAJKAIQIQUgCSgCFCEBQQAhCwNAIAEgBUYhAiABIQBBACEGIAUhAQJAIAINAANAIAkoAhwhAiAFIAZBFGxqIgcoAgAiCi0AVEUEQCAKKAJEIAJBAnRqKAIAIQILIAAhASACIAooAlBPDQECfyADKAJ0IAcoAgRBAnRqIg0gBygCDCIBQQNLDQAaQQAhBSAJKAIMIgAgBygCEEUNABoDQCABBEAgACANIAVBAnRqIAH8CgAACyAAIAcoAgwiAWohACAFQQFqIgUgBygCEEkNAAsgCSgCDAshASAKKAIoIgAEQCAKKAIAKAIAIAAgAmxqIAEgAPwKAAALIAkoAhQiACEBIAZBAWoiBiAAIAkoAhAiBWtBFG1JDQALCyAJIAkoAhxBAWo2AhwgAyADKAIIQQFqNgIIIAggC0EBaiILRw0ACwwBCwJAAkACQAJAIAhBAk0EQCADKAJoIgIgCzYCAEEBIQAgAygCDCIBQQFLDQEMBAsgAygCCCADKAIESw0GIARBADYCHCASIAhnQR9zIARBHGoQaiAIQQF2IgAgBCgCHCIBSQ0GIAAgAWsiACAIIABrIgFGBEAgACECDAMLIAMoAlQiAiADKAJMRg0BIAIoAgAgAyADKAJYIg1BAWoiDjYCWEGAgICAeCANdnEhCAJAIA5BIEYEQCADQQA2AlggAyACQQRqNgJUIAgNAQwDCyAIRQ0CCyAAIQIgASEADAILA0AgAiAAQQJ0aiIFIAVBBGsoAgAiBUEBakEAIAUgAUEBa0cbNgIAIABBAWoiACADKAIMIgFJDQALDAILIAEhAgsgDEF/Rg0DQQEgByAKQX9zanQhBiAEIAw2AgwgBCALNgIQIAQgAygCgAEgBWooAgA2AhQgBCADKAJ0IAVqKAIANgIYIAQgAygCkAEiATYCPCADKAKUASEIIAQgETYCSCAEIARBDGo2AkQgBCAEQTxqNgJAIAMCfyABIAhJBEAgASAEKQIUNwIIIAEgBCkCDDcCACABQRBqDAELIARBQGsQGCAEKAI8CzYCkAEgAygCgAEgBWoiASABKAIAQQFqNgIAIAMoAnQgBWoiASABKAIAIAZqNgIAIAIEQCAEKAI0IgYgBCgCMGoiBSAEKAIoIgggBCgCJCIBa0ECdUHVAmxBAWtBACABIAhHG0YEQCAEQSBqEAsgBCgCNCIGIAQoAjBqIQUgBCgCJCEBCyABIAVB1QJuIghBAnRqKAIAIAUgCEHVAmxrQQxsaiIBIAw2AgggASALNgIEIAEgAjYCACAEIAZBAWo2AjQLIAxBAWohDCAARQ0BIAQoAjQiBiAEKAIwaiIFIAQoAigiAiAEKAIkIgFrQQJ1QdUCbEEBa0EAIAEgAkcbRgRAIARBIGoQCyAEKAI0IgYgBCgCMGohBSAEKAIkIQELIAEgBUHVAm4iAkECdGooAgAgBSACQdUCbGtBDGxqIgEgDDYCCCABIAs2AgQgASAANgIAIAQgBkEBajYCNAwBC0EAIQsgCEUNAANAIAMoAgwEQCADKAKAASENIAMoAlwhAiADKAJoIQ5BACEAA0AgAiAOIABBAnRqIgUoAgBBAnRqQQA2AgACQCADKAIAIgEgDSAFKAIAQQJ0IgZqKAIAIgdGDQAgAiAGaiEGIAEgB2siAUEgIAMoAjAiB2siD0wEQCADKAIsIgogAygCJEYEQEEAIQYMCAsgBiAKKAIAIAd0QSAgAWt2NgIAIAMgAygCMCABaiIBNgIwIAFBIEcNASADQQA2AjAgAyAKQQRqNgIsDAELIAMoAiwiCkEEaiITIAMoAiRGBEBBACEGDAcLIAooAgAhFCADIBM2AiwgAyABIA9rIg82AjAgBiAKKAIEQSAgD2t2IBQgB3RBICABa3ZyNgIACyACIAUoAgBBAnQiAWoiBSAFKAIAIAMoAnQgAWooAgByNgIAIABBAWoiACADKAIMSQ0ACwtBACEGAkAgCSgCECIAIAkoAhRGDQADQCAJKAIcIQIgACAGQRRsaiIHKAIAIgotAFRFBEAgCigCRCACQQJ0aigCACECCyACIAooAlBPDQECfyADKAJcIAcoAgRBAnRqIg0gBygCDCIBQQNLDQAaQQAhBSAJKAIMIgAgBygCEEUNABoDQCABBEAgACANIAVBAnRqIAH8CgAACyAAIAcoAgwiAWohACAFQQFqIgUgBygCEEkNAAsgCSgCDAshASAKKAIoIgAEQCAKKAIAKAIAIAAgAmxqIAEgAPwKAAALIAZBAWoiBiAJKAIUIAkoAhAiAGtBFG1JDQALCyAJIAkoAhxBAWo2AhwgAyADKAIIQQFqNgIIIAtBAWoiCyAIRw0ACwsgBCgCNCIADQALQQEhBgsgBEEANgI0IAQoAigiASAEKAIkIgBrQQJ1IgVBA08EQANAIAAoAgAQBSAEIAQoAiRBBGoiADYCJCAEKAIoIgEgAGtBAnUiBUECSw0ACwtBqgEhAgJAAkACQCAFQQFrDgIBAAILQdUCIQILIAQgAjYCMAsgACABRgR/IAEFA0AgACgCABAFIABBBGoiACABRw0ACyAEKAIoIQEgBCgCJAshACAEIAEgASAAa0F8cWs2AiggBCgCICIABEAgABAFCyAEQdAAaiQACyAGC7gVAhF/An4CQCABKQMIIAEpAxAiFUIEfFMNACAAIAEoAgAgFadqKAAAIgU2AgAgASABKQMQIhVCBHwiFjcDECAFQSBLDQAgASkDCCAVQgh8Uw0AIAAgASgCACAWp2ooAAAiBTYCBCABIAEpAxBCBHw3AxAgBUUEQEEBDwsgAyAFSQ0AIABBADYCCCAAQRBqIAEQCEUNACAAQSBqIAEQCkUNACAAQTRqIAEQCkUNACAAQcgAaiABEApFDQAgACgCBCEQIAIhCSMAQdAAayIEJAAgACIDKAIMIQAgBEEANgIgIANB9ABqIAAgBEEgaiIAEA8gAygCDCEBIARBADYCICADQYABaiABIAAQDyADIAMoAowBNgKQASAEQgA3AzAgBEIANwMoIARCADcDICAAEAsgBCgCJCAEKAI0IgAgBCgCMGoiAUHVAm4iAkECdGooAgAgASACQdUCbGtBDGxqIgFCADcCBCABIBA2AgBBASEGAkAgAEEBaiIARQ0AIANBjAFqIREgA0EQaiESA0AgBCgCJCICIAQoAjAiBiAAQQFrIgdqIgFB1QJuIgVBAnRqKAIAIAEgBUHVAmxrQQxsaiIFKAIIIQEgBSgCBCELIAUoAgAhCCAEIAc2AjQgBCgCKCIFIAJrQQJ1QdUCbEEBa0EAIAIgBUcbIAAgBmprQQFqQaoFTwRAIAVBBGsoAgAQBSAEIAQoAihBBGs2AigLIAEgDEcEQCABIAxLBEBBACEGDAMLAkAgAygCjAEiBSADKAKQASIARg0AA0AgAEEQayICKAIAIAFJDQEgAygCdCAAQQxrIgYoAgBBAnRqIABBBGsoAgA2AgAgAigCACABRg0BIAMoAoABIAYoAgBBAnRqIABBCGsoAgA2AgAgAyACNgKQASACIgAgBUcNAAsLIAEhDAtBACEGIAggEEsNASALQQFqQQAgCyADKAIMIgBBAWtHGyILIABPDQECQCADKAIAIgcgC0ECdCIFIAMoAoABaigCACIKRgRAIAhFDQEgCSgCECEFIAkoAhQhAUEAIQsDQCABIAVGIQIgASEAQQAhBiAFIQECQCACDQADQCAJKAIcIQIgBSAGQRRsaiIHKAIAIgotAFRFBEAgCigCRCACQQJ0aigCACECCyAAIQEgAiAKKAJQTw0BAn8gAygCdCAHKAIEQQJ0aiINIAcoAgwiAUEDSw0AGkEAIQUgCSgCDCIAIAcoAhBFDQAaA0AgAQRAIAAgDSAFQQJ0aiAB/AoAAAsgACAHKAIMIgFqIQAgBUEBaiIFIAcoAhBJDQALIAkoAgwLIQEgCigCKCIABEAgCigCACgCACAAIAJsaiABIAD8CgAACyAJKAIUIgAhASAGQQFqIgYgACAJKAIQIgVrQRRtSQ0ACwsgCSAJKAIcQQFqNgIcIAMgAygCCEEBajYCCCAIIAtBAWoiC0cNAAsMAQsCQAJAAkACQCAIQQJNBEAgAygCaCICIAs2AgBBASEAIAMoAgwiAUEBSw0BDAQLIAMoAgggAygCBEsNBiAEQQA2AhwgEiAIZ0EfcyAEQRxqEGogCEEBdiIAIAQoAhwiAUkNBiAAIAFrIgAgCCAAayIBRgRAIAAhAgwDCyADKAJUIgIgAygCTEYNASACKAIAIAMgAygCWCINQQFqIg42AlhBgICAgHggDXZxIQgCQCAOQSBGBEAgA0EANgJYIAMgAkEEajYCVCAIDQEMAwsgCEUNAgsgACECIAEhAAwCCwNAIAIgAEECdGoiBSAFQQRrKAIAIgVBAWpBACAFIAFBAWtHGzYCACAAQQFqIgAgAygCDCIBSQ0ACwwCCyABIQILIAxBf0YNA0EBIAcgCkF/c2p0IQYgBCAMNgIMIAQgCzYCECAEIAMoAoABIAVqKAIANgIUIAQgAygCdCAFaigCADYCGCAEIAMoApABIgE2AjwgAygClAEhCCAEIBE2AkggBCAEQQxqNgJEIAQgBEE8ajYCQCADAn8gASAISQRAIAEgBCkCFDcCCCABIAQpAgw3AgAgAUEQagwBCyAEQUBrEBggBCgCPAs2ApABIAMoAoABIAVqIgEgASgCAEEBajYCACADKAJ0IAVqIgEgASgCACAGajYCACACBEAgBCgCNCIGIAQoAjBqIgUgBCgCKCIIIAQoAiQiAWtBAnVB1QJsQQFrQQAgASAIRxtGBEAgBEEgahALIAQoAjQiBiAEKAIwaiEFIAQoAiQhAQsgASAFQdUCbiIIQQJ0aigCACAFIAhB1QJsa0EMbGoiASAMNgIIIAEgCzYCBCABIAI2AgAgBCAGQQFqNgI0CyAMQQFqIQwgAEUNASAEKAI0IgYgBCgCMGoiBSAEKAIoIgIgBCgCJCIBa0ECdUHVAmxBAWtBACABIAJHG0YEQCAEQSBqEAsgBCgCNCIGIAQoAjBqIQUgBCgCJCEBCyABIAVB1QJuIgJBAnRqKAIAIAUgAkHVAmxrQQxsaiIBIAw2AgggASALNgIEIAEgADYCACAEIAZBAWo2AjQMAQtBACELIAhFDQADQCADKAIMBEAgAygCgAEhDSADKAJcIQIgAygCaCEOQQAhAANAIAIgDiAAQQJ0aiIFKAIAQQJ0akEANgIAAkAgAygCACIBIA0gBSgCAEECdCIGaigCACIHRg0AIAIgBmohBiABIAdrIgFBICADKAIwIgdrIg9MBEAgAygCLCIKIAMoAiRGBEBBACEGDAgLIAYgCigCACAHdEEgIAFrdjYCACADIAMoAjAgAWoiATYCMCABQSBHDQEgA0EANgIwIAMgCkEEajYCLAwBCyADKAIsIgpBBGoiEyADKAIkRgRAQQAhBgwHCyAKKAIAIRQgAyATNgIsIAMgASAPayIPNgIwIAYgCigCBEEgIA9rdiAUIAd0QSAgAWt2cjYCAAsgAiAFKAIAQQJ0IgFqIgUgBSgCACADKAJ0IAFqKAIAcjYCACAAQQFqIgAgAygCDEkNAAsLQQAhBgJAIAkoAhAiACAJKAIURg0AA0AgCSgCHCECIAAgBkEUbGoiBygCACIKLQBURQRAIAooAkQgAkECdGooAgAhAgsgAiAKKAJQTw0BAn8gAygCXCAHKAIEQQJ0aiINIAcoAgwiAUEDSw0AGkEAIQUgCSgCDCIAIAcoAhBFDQAaA0AgAQRAIAAgDSAFQQJ0aiAB/AoAAAsgACAHKAIMIgFqIQAgBUEBaiIFIAcoAhBJDQALIAkoAgwLIQEgCigCKCIABEAgCigCACgCACAAIAJsaiABIAD8CgAACyAGQQFqIgYgCSgCFCAJKAIQIgBrQRRtSQ0ACwsgCSAJKAIcQQFqNgIcIAMgAygCCEEBajYCCCALQQFqIgsgCEcNAAsLIAQoAjQiAA0AC0EBIQYLIARBADYCNCAEKAIoIgEgBCgCJCIAa0ECdSIFQQNPBEADQCAAKAIAEAUgBCAEKAIkQQRqIgA2AiQgBCgCKCIBIABrQQJ1IgVBAksNAAsLQaoBIQICQAJAAkAgBUEBaw4CAQACC0HVAiECCyAEIAI2AjALIAAgAUYEfyABBQNAIAAoAgAQBSAAQQRqIgAgAUcNAAsgBCgCKCEBIAQoAiQLIQAgBCABIAEgAGtBfHFrNgIoIAQoAiAiAARAIAAQBQsgBEHQAGokAAsgBgvQFgIQfwJ+AkAgASkDCCABKQMQIhRCBHxTDQAgACABKAIAIBSnaigAACIHNgIAIAEgASkDECIVQgR8IhQ3AxAgB0EgSw0AIAEpAwggFUIIfFMNACAAIAEoAgAgFKdqKAAAIgc2AgQgASABKQMQQgR8NwMQIAdFBEBBAQ8LIAMgB0kNACAAQQA2AgggAEEQaiABEApFDQAgAEEkaiABEApFDQAgAEE4aiABEApFDQAgAEHMAGogARAKRQ0AIAAoAgQhEiACIQgjAEFAaiIFJAAgACIEKAIMIQAgBUEANgIQIARB+ABqIAAgBUEQaiIBEA8gBCgCDCEAIAVBADYCECAEQYQBaiAAIAEQDyAEIAQoApABNgKUASAFQgA3AyAgBUIANwMYIAVCADcDECABEAsgBSgCFCAFKAIkIgIgBSgCIGoiAUHVAm4iAEECdGooAgAgASAAQdUCbGtBDGxqIgBCADcCBCAAIBI2AgBBASEHAkAgAkEBaiIBRQ0AIARBkAFqIRMDQCAFKAIUIgcgBSgCICIGIAFBAWsiA2oiAkHVAm4iAEECdGooAgAgAiAAQdUCbGtBDGxqIgAoAgghAiAAKAIEIQsgACgCACEMIAUgAzYCJCAFKAIYIgAgB2tBAnVB1QJsQQFrQQAgACAHRxsgASAGamtBAWpBqgVPBEAgAEEEaygCABAFIAUgBSgCGEEEazYCGAsgAiAORwRAIAIgDksEQEEAIQcMAwsCQCAEKAKQASIGIAQoApQBIgFGDQADQCABQRBrIgAoAgAgAkkNASAEKAJ4IAFBDGsiAygCAEECdGogAUEEaygCADYCACAAKAIAIAJGDQEgBCgChAEgAygCAEECdGogAUEIaygCADYCACAEIAA2ApQBIAAiASAGRw0ACwsgAiEOCyAMIBJLBEBBACEHDAILQQAhByALQQFqQQAgCyAEKAIMIgBBAWtHGyIPIABPDQECQAJAIAQoAgAiCSAPQQJ0IhAgBCgChAFqIgooAgAiC0YEQCAMRQ0BIAgoAhAhBiAIKAIUIQADQCAAIAZGIQIgACEBQQAhAyAGIQACQCACDQADQCAIKAIcIQIgBiADQRRsaiIJKAIAIgotAFRFBEAgCigCRCACQQJ0aigCACECCyABIQAgAiAKKAJQTw0BAn8gBCgCeCAJKAIEQQJ0aiILIAkoAgwiAEEDSw0AGkEAIQYgCCgCDCIBIAkoAhBFDQAaA0AgAARAIAEgCyAGQQJ0aiAA/AoAAAsgASAJKAIMIgBqIQEgBkEBaiIGIAkoAhBJDQALIAgoAgwLIQAgCigCKCIBBEAgCigCACgCACABIAJsaiAAIAH8CgAACyAIKAIUIgEhACADQQFqIgMgASAIKAIQIgZrQRRtSQ0ACwsgCCAIKAIcQQFqNgIcIAQgBCgCCEEBajYCCCAMIAdBAWoiB0cNAAsMAQsCQAJAAkACQCAMQQJNBEAgBCgCbCIDIA82AgBBASEBIAQoAgwiAEEBSw0BDAQLIAQoAgggBCgCBEsNBwJAAkACQCAMZ0EfcyINQSAgBCgCICIGayICTARAIAQoAhwiAyAEKAIURg0CIAMoAgAgBCAGIA1qIgA2AiAgBnRBICANa3YhAiAAQSBHDQEgBEEANgIgIAQgA0EEajYCHAwBCyAEKAIcIgNBBGoiACAEKAIURg0BIAMoAgAhASAEIAA2AhwgBCANIAJrIgA2AiAgAygCBEEgIABrdiABIAZ0QSAgDWt2ciECCyAMQQF2IgMgAkkNCQwBCyAMQQF2IQNBACECCyADIAJrIgIgDCACayIARgRAIAIhAwwDCyAEKAJYIg0gBCgCUEYNASANKAIAIAQgBCgCXCIDQQFqIgE2AlxBgICAgHggA3ZxIQMCQCABQSBGBEAgBEEANgJcIAQgDUEEajYCWCADDQEMAwsgA0UNAgsgAiEDIAAhAgwCCwNAIAMgAUECdGoiAiACQQRrKAIAIgJBAWpBACACIABBAWtHGzYCACABQQFqIgEgBCgCDCIASQ0ACwwCCyAAIQMLIA5Bf0YNBEEBIAkgC0F/c2p0IQEgBSAONgIAIAUgDzYCBCAFIAooAgA2AgggBSAEKAJ4IBBqKAIANgIMIAUgBCgClAEiBjYCLCAEKAKYASEAIAUgEzYCOCAFIAU2AjQgBSAFQSxqNgIwIAQCfyAAIAZLBEAgBiAFKQIINwIIIAYgBSkCADcCACAGQRBqDAELIAVBMGoQGCAFKAIsCzYClAEgBCgChAEgEGoiACAAKAIAQQFqNgIAIAQoAnggEGoiACAAKAIAIAFqNgIAIAMEQCAFKAIkIgcgBSgCIGoiBiAFKAIYIgEgBSgCFCIAa0ECdUHVAmxBAWtBACAAIAFHG0YEQCAFQRBqEAsgBSgCJCIHIAUoAiBqIQYgBSgCFCEACyAAIAZB1QJuIgFBAnRqKAIAIAYgAUHVAmxrQQxsaiIAIA42AgggACAPNgIEIAAgAzYCACAFIAdBAWo2AiQLIA5BAWohDiACRQ0BIAUoAiQiByAFKAIgaiIGIAUoAhgiASAFKAIUIgBrQQJ1QdUCbEEBa0EAIAAgAUcbRgRAIAVBEGoQCyAFKAIkIgcgBSgCIGohBiAFKAIUIQALIAAgBkHVAm4iAUECdGooAgAgBiABQdUCbGtBDGxqIgAgDjYCCCAAIA82AgQgACACNgIAIAUgB0EBaiIBNgIkDAILIAxFDQADQCAEKAIMBEAgBCgChAEhCyAEKAJgIQ8gBCgCbCEGQQAhAQNAIA8gBiABQQJ0aiIQKAIAQQJ0akEANgIAAkAgBCgCACIDIAsgECgCAEECdCICaigCACIARg0AIAIgD2ohDSADIABrIhFBICAEKAI0IglrIgNMBEAgBCgCMCICIAQoAihGBEBBACEHDAkLIA0gAigCACAJdEEgIBFrdjYCACAEIAQoAjQgEWoiADYCNCAAQSBHDQEgBEEANgI0IAQgAkEEajYCMAwBCyAEKAIwIgpBBGoiACAEKAIoRgRAQQAhBwwICyAKKAIAIQIgBCAANgIwIAQgESADayIANgI0IA0gCigCBEEgIABrdiACIAl0QSAgEWt2cjYCAAsgDyAQKAIAQQJ0IgJqIgAgACgCACAEKAJ4IAJqKAIAcjYCACABQQFqIgEgBCgCDEkNAAsLQQAhAwJAIAgoAhAiASAIKAIURg0AA0AgCCgCHCECIAEgA0EUbGoiCSgCACIKLQBURQRAIAooAkQgAkECdGooAgAhAgsgAiAKKAJQTw0BAn8gBCgCYCAJKAIEQQJ0aiILIAkoAgwiAEEDSw0AGkEAIQYgCCgCDCIBIAkoAhBFDQAaA0AgAARAIAEgCyAGQQJ0aiAA/AoAAAsgASAJKAIMIgBqIQEgBkEBaiIGIAkoAhBJDQALIAgoAgwLIQAgCigCKCIBBEAgCigCACgCACABIAJsaiAAIAH8CgAACyADQQFqIgMgCCgCFCAIKAIQIgFrQRRtSQ0ACwsgCCAIKAIcQQFqNgIcIAQgBCgCCEEBajYCCCAHQQFqIgcgDEcNAAsLIAUoAiQhAQsgAQ0AC0EBIQcLIAVBADYCJCAFKAIYIgAgBSgCFCIBa0ECdSIGQQNPBEADQCABKAIAEAUgBSAFKAIUQQRqIgE2AhQgBSgCGCIAIAFrQQJ1IgZBAksNAAsLQaoBIQICQAJAAkAgBkEBaw4CAQACC0HVAiECCyAFIAI2AiALIAAgAUYEfyAABQNAIAEoAgAQBSABQQRqIgEgAEcNAAsgBSgCGCEAIAUoAhQLIQEgBSAAIAAgAWtBfHFrNgIYIAUoAhAiAARAIAAQBQsgBUFAayQAIAchBgsgBgvJFgIQfwJ+AkAgASkDCCABKQMQIhRCBHxTDQAgACABKAIAIBSnaigAACIHNgIAIAEgASkDECIVQgR8IhQ3AxAgB0EgSw0AIAEpAwggFUIIfFMNACAAIAEoAgAgFKdqKAAAIgc2AgQgASABKQMQQgR8NwMQIAdFBEBBAQ8LIAMgB0kNACAAQQA2AgggAEEQaiABEApFDQAgAEEkaiABEApFDQAgAEE4aiABEApFDQAgAEHMAGogARAKRQ0AIAAoAgQhEiACIQgjAEFAaiIFJAAgACIEKAIMIQAgBUEANgIQIARB+ABqIAAgBUEQaiIBEA8gBCgCDCEAIAVBADYCECAEQYQBaiAAIAEQDyAEIAQoApABNgKUASAFQgA3AyAgBUIANwMYIAVCADcDECABEAsgBSgCFCAFKAIkIgIgBSgCIGoiAUHVAm4iAEECdGooAgAgASAAQdUCbGtBDGxqIgBCADcCBCAAIBI2AgBBASEHAkAgAkEBaiIBRQ0AIARBkAFqIRMDQCAFKAIUIgcgBSgCICIGIAFBAWsiA2oiAkHVAm4iAEECdGooAgAgAiAAQdUCbGtBDGxqIgAoAgghAiAAKAIEIQsgACgCACEMIAUgAzYCJCAFKAIYIgAgB2tBAnVB1QJsQQFrQQAgACAHRxsgASAGamtBAWpBqgVPBEAgAEEEaygCABAFIAUgBSgCGEEEazYCGAsgAiAORwRAIAIgDksEQEEAIQcMAwsCQCAEKAKQASIGIAQoApQBIgFGDQADQCABQRBrIgAoAgAgAkkNASAEKAJ4IAFBDGsiAygCAEECdGogAUEEaygCADYCACAAKAIAIAJGDQEgBCgChAEgAygCAEECdGogAUEIaygCADYCACAEIAA2ApQBIAAiASAGRw0ACwsgAiEOC0EAIQcgDCASSw0BIAtBAWpBACALIAQoAgwiAEEBa0cbIg8gAE8NAQJAAkAgBCgCACIJIA9BAnQiECAEKAKEAWoiCigCACILRgRAIAxFDQEgCCgCECEGIAgoAhQhAANAIAAgBkYhAiAAIQFBACEDIAYhAAJAIAINAANAIAgoAhwhAiAGIANBFGxqIgkoAgAiCi0AVEUEQCAKKAJEIAJBAnRqKAIAIQILIAEhACACIAooAlBPDQECfyAEKAJ4IAkoAgRBAnRqIgsgCSgCDCIAQQNLDQAaQQAhBiAIKAIMIgEgCSgCEEUNABoDQCAABEAgASALIAZBAnRqIAD8CgAACyABIAkoAgwiAGohASAGQQFqIgYgCSgCEEkNAAsgCCgCDAshACAKKAIoIgEEQCAKKAIAKAIAIAEgAmxqIAAgAfwKAAALIAgoAhQiASEAIANBAWoiAyABIAgoAhAiBmtBFG1JDQALCyAIIAgoAhxBAWo2AhwgBCAEKAIIQQFqNgIIIAwgB0EBaiIHRw0ACwwBCwJAAkACQAJAIAxBAk0EQCAEKAJsIgMgDzYCAEEBIQEgBCgCDCIAQQFLDQEMBAsgBCgCCCAEKAIESw0HAkACQAJAIAxnQR9zIg1BICAEKAIgIgZrIgJMBEAgBCgCHCIDIAQoAhRGDQIgAygCACAEIAYgDWoiADYCICAGdEEgIA1rdiECIABBIEcNASAEQQA2AiAgBCADQQRqNgIcDAELIAQoAhwiA0EEaiIAIAQoAhRGDQEgAygCACEBIAQgADYCHCAEIA0gAmsiADYCICADKAIEQSAgAGt2IAEgBnRBICANa3ZyIQILIAxBAXYiAyACSQ0JDAELIAxBAXYhA0EAIQILIAMgAmsiAiAMIAJrIgBGBEAgAiEDDAMLIAQoAlgiDSAEKAJQRg0BIA0oAgAgBCAEKAJcIgNBAWoiATYCXEGAgICAeCADdnEhAwJAIAFBIEYEQCAEQQA2AlwgBCANQQRqNgJYIAMNAQwDCyADRQ0CCyACIQMgACECDAILA0AgAyABQQJ0aiICIAJBBGsoAgAiAkEBakEAIAIgAEEBa0cbNgIAIAFBAWoiASAEKAIMIgBJDQALDAILIAAhAwsgDkF/Rg0EQQEgCSALQX9zanQhASAFIA42AgAgBSAPNgIEIAUgCigCADYCCCAFIAQoAnggEGooAgA2AgwgBSAEKAKUASIGNgIsIAQoApgBIQAgBSATNgI4IAUgBTYCNCAFIAVBLGo2AjAgBAJ/IAAgBksEQCAGIAUpAgg3AgggBiAFKQIANwIAIAZBEGoMAQsgBUEwahAYIAUoAiwLNgKUASAEKAKEASAQaiIAIAAoAgBBAWo2AgAgBCgCeCAQaiIAIAAoAgAgAWo2AgAgAwRAIAUoAiQiByAFKAIgaiIGIAUoAhgiASAFKAIUIgBrQQJ1QdUCbEEBa0EAIAAgAUcbRgRAIAVBEGoQCyAFKAIkIgcgBSgCIGohBiAFKAIUIQALIAAgBkHVAm4iAUECdGooAgAgBiABQdUCbGtBDGxqIgAgDjYCCCAAIA82AgQgACADNgIAIAUgB0EBajYCJAsgDkEBaiEOIAJFDQEgBSgCJCIHIAUoAiBqIgYgBSgCGCIBIAUoAhQiAGtBAnVB1QJsQQFrQQAgACABRxtGBEAgBUEQahALIAUoAiQiByAFKAIgaiEGIAUoAhQhAAsgACAGQdUCbiIBQQJ0aigCACAGIAFB1QJsa0EMbGoiACAONgIIIAAgDzYCBCAAIAI2AgAgBSAHQQFqIgE2AiQMAgsgDEUNAANAIAQoAgwEQCAEKAKEASELIAQoAmAhDyAEKAJsIQZBACEBA0AgDyAGIAFBAnRqIhAoAgBBAnRqQQA2AgACQCAEKAIAIgMgCyAQKAIAQQJ0IgJqKAIAIgBGDQAgAiAPaiENIAMgAGsiEUEgIAQoAjQiCWsiA0wEQCAEKAIwIgIgBCgCKEYEQEEAIQcMCQsgDSACKAIAIAl0QSAgEWt2NgIAIAQgBCgCNCARaiIANgI0IABBIEcNASAEQQA2AjQgBCACQQRqNgIwDAELIAQoAjAiCkEEaiIAIAQoAihGBEBBACEHDAgLIAooAgAhAiAEIAA2AjAgBCARIANrIgA2AjQgDSAKKAIEQSAgAGt2IAIgCXRBICARa3ZyNgIACyAPIBAoAgBBAnQiAmoiACAAKAIAIAQoAnggAmooAgByNgIAIAFBAWoiASAEKAIMSQ0ACwtBACEDAkAgCCgCECIBIAgoAhRGDQADQCAIKAIcIQIgASADQRRsaiIJKAIAIgotAFRFBEAgCigCRCACQQJ0aigCACECCyACIAooAlBPDQECfyAEKAJgIAkoAgRBAnRqIgsgCSgCDCIAQQNLDQAaQQAhBiAIKAIMIgEgCSgCEEUNABoDQCAABEAgASALIAZBAnRqIAD8CgAACyABIAkoAgwiAGohASAGQQFqIgYgCSgCEEkNAAsgCCgCDAshACAKKAIoIgEEQCAKKAIAKAIAIAEgAmxqIAAgAfwKAAALIANBAWoiAyAIKAIUIAgoAhAiAWtBFG1JDQALCyAIIAgoAhxBAWo2AhwgBCAEKAIIQQFqNgIIIAdBAWoiByAMRw0ACwsgBSgCJCEBCyABDQALQQEhBwsgBUEANgIkIAUoAhgiACAFKAIUIgFrQQJ1IgZBA08EQANAIAEoAgAQBSAFIAUoAhRBBGoiATYCFCAFKAIYIgAgAWtBAnUiBkECSw0ACwtBqgEhAgJAAkACQCAGQQFrDgIBAAILQdUCIQILIAUgAjYCIAsgACABRgR/IAAFA0AgASgCABAFIAFBBGoiASAARw0ACyAFKAIYIQAgBSgCFAshASAFIAAgACABa0F8cWs2AhggBSgCECIABEAgABAFCyAFQUBrJAAgByEGCyAGCzcBAn8gAEHk9gA2AgAgACgCBCICQQRrIgEgASgCAEEBayIBNgIAIAFBAEgEQCACQQxrEAULIAAL3QEBCH8CQCAAKAIIIgMoAgQgAygCACIFayIEQQJ1IgZBAWoiAUGAgICABEkEQEH/////AyADKAIIIAVrIgJBAXUiByABIAEgB0kbIAJB/P///wdPGyICQYCAgIAETw0BIAAoAgQhASACQQJ0IgcQBiECIAEoAgAhCCABQQA2AgAgAiAEaiIBIAg2AgAgASAGQQJ0ayEGIAQEQCAGIAUgBPwKAAALIAMgAiAHajYCCCADIAFBBGoiBDYCBCADIAY2AgAgBQRAIAUQBQsgACgCACAENgIADwsQBwALEA4AC9cCAgl9An8CQCACKAIcQQlHDQAgAi0AGEEDRw0AIAAoAgQiAEECa0EcSw0AQQEhDCACKAJQIg1FDQBDAAAAQEEBIAB0QQJrs5UhCCACKAIAKAIAIAIoAjBqIQIgASgCACgCACABKAIwaiEAQQAhAQNAQwAAAAAhA0MAAAAAIQlDAAAAACEKIAAoAgSyIAiUQwAAgL+SIgRDAAAAAEMAAIA/IAAoAgCyIAiUQwAAgL+SIgWLkyAEi5MiBowgBkMAAAAAXhsiByAHjCILIARDAAAAAF0bkiIEIASUIAYgBpQgBSAHIAsgBUMAAAAAXRuSIgUgBZSSkiIHu0SN7bWg98awPmNFBEAgBEMAAIA/IAeRlSIDlCEKIAUgA5QhCSAGIAOUIQMLIABBCGohACACIAo4AAggAiAJOAAEIAIgAzgAACACQQxqIQIgAUEBaiIBIA1HDQALCyAMC5oBACAAQQE6ADUCQCACIAAoAgRHDQAgAEEBOgA0AkAgACgCECICRQRAIABBATYCJCAAIAM2AhggACABNgIQIANBAUcNAiAAKAIwQQFGDQEMAgsgASACRgRAIAAoAhgiAkECRgRAIAAgAzYCGCADIQILIAAoAjBBAUcNAiACQQFGDQEMAgsgACAAKAIkQQFqNgIkCyAAQQE6ADYLC3YBAX8gACgCJCIDRQRAIAAgAjYCGCAAIAE2AhAgAEEBNgIkIAAgACgCODYCFA8LAkACQCAAKAIUIAAoAjhHDQAgACgCECABRw0AIAAoAhhBAkcNASAAIAI2AhgPCyAAQQE6ADYgAEECNgIYIAAgA0EBajYCJAsLAgALsgEBAX8jAEEgayIHJAAgB0EUaiAAIAEgAmoQswEQeCAAKAIAIAAgACwAC0EASBshAgJAIAVFIgENACABDQAgBygCFCAGIAX8CgAACyADIARrIQECQCADIARGDQAgAUUNACAHKAIUIAVqIAIgBGogAfwKAAALIAcgASAFaiIBNgIYIAcoAhQgAWpBADoAACAHIAcoAhw2AhAgByAHKQIUNwMIIAAgB0EIahC1ASAHQSBqJAALUQECfyAAQeT2ADYCACABEBkiA0ENahAGIgJBADYCCCACIAM2AgQgAiADNgIAIAJBDGohAiADQQFqIgMEQCACIAEgA/wKAAALIAAgAjYCBCAAC0wBAX8gAUH3////B08EQBA8AAtB9v///wcgAUEKIAAoAghB/////wdxQQFrIAAsAAtBAE4bIgBBAXQiAiABIAJLGyAAQfP///8DSxsLXgEBfyMAQRBrIgIkACABQff///8HSQRAAkAgAUEKTQRAIAAgAToACwwBCyACQQRqIAEQeCAAIAIoAgw2AgggACACKQIENwIAIAAoAgAhAAsgAkEQaiQAIAAPCxA8AAsuACAALAALQQBIBEAgACgCCBogACgCABAFCyAAIAEoAgg2AgggACABKQIANwIAC2gBA38jAEEQayIDJAAgA0EAOgAOIAEgAGtBAnUhASACKAIAIQQDQCABBEAgASABQQF2IgJBf3NqIAIgACACQQJ0aiICKAIAIARJIgUbIQEgAkEEaiAAIAUbIQAMAQsLIANBEGokACAAC+IMAQl/IwBBEGsiBCQAIAQgADYCDAJAIABB0wFNBEBBkO8AQdDwACAEQQxqELYBKAIAIQAMAQsgAEF8TwRAEL0BAAsgBCAAIABB0gFuIgZB0gFsIgBrNgIIQdDwAEGQ8gAgBEEIahC2ASIBKAIAIABqIQAgAUHQ8ABrQQJ1IQcDQEEFIQMgBSEBAkACQANAIAEhBSADQS9GBEBB0wEhAwNAIAAgA24iASADSQ0GIAAgASADbEYNAyAAIANBCmoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBDGoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBEGoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBEmoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBFmoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBHGoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBHmoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBJGoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBKGoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBKmoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBLmoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBNGoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBOmoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBPGoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBwgBqIgFuIgIgAUkNBiAAIAEgAmxGDQMgACADQcYAaiIBbiICIAFJDQYgACABIAJsRg0DIAAgA0HIAGoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBzgBqIgFuIgIgAUkNBiAAIAEgAmxGDQMgACADQdIAaiIBbiICIAFJDQYgACABIAJsRg0DIAAgA0HYAGoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANB4ABqIgFuIgIgAUkNBiAAIAEgAmxGDQMgACADQeQAaiIBbiICIAFJDQYgACABIAJsRg0DIAAgA0HmAGoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANB6gBqIgFuIgIgAUkNBiAAIAEgAmxGDQMgACADQewAaiIBbiICIAFJDQYgACABIAJsRg0DIAAgA0HwAGoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANB+ABqIgFuIgIgAUkNBiAAIAEgAmxGDQMgACADQf4AaiIBbiICIAFJDQYgACABIAJsRg0DIAAgA0GCAWoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBiAFqIgFuIgIgAUkNBiAAIAEgAmxGDQMgACADQYoBaiIBbiICIAFJDQYgACABIAJsRg0DIAAgA0GOAWoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBlAFqIgFuIgIgAUkNBiAAIAEgAmxGDQMgACADQZYBaiIBbiICIAFJDQYgACABIAJsRg0DIAAgA0GcAWoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBogFqIgFuIgIgAUkNBiAAIAEgAmxGDQMgACADQaYBaiIBbiICIAFJDQYgACABIAJsRg0DIAAgA0GoAWoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBrAFqIgFuIgIgAUkNBiAAIAEgAmxGDQMgACADQbIBaiIBbiICIAFJDQYgACABIAJsRg0DIAAgA0G0AWoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBugFqIgFuIgIgAUkNBiAAIAEgAmxGDQMgACADQb4BaiIBbiICIAFJDQYgACABIAJsRg0DIAAgA0HAAWoiAW4iAiABSQ0GIAAgASACbEYNAyAAIANBxAFqIgFuIgIgAUkNBiAAIAEgAmxGDQMgACADQcYBaiIBbiICIAFJDQYgACABIAJsRg0DIAAgA0HQAWoiAW4iAiABSQ0GIANB0gFqIQMgACABIAJsRw0ACwwCCyAAIANBAnQoApBvIgFuIgIgAU8hCCABIAJsIQkgASACSyICRQRAIAUgACAIGyEBIANBAWohAyAAIAlHDQELCyAAIAlHDQEgAg0BC0EAIAdBAWoiACAAQTBGIgAbIgdBAnQoAtBwIAAgBmoiBkHSAWxqIQAMAQsLIAUgACAIGyEACyAEQRBqJAAgAAuZAgAgAEUEQEEADwsCfwJAIAAEfyABQf8ATQ0BAkBBsPoAKAIAKAIARQRAIAFBgH9xQYC/A0YNAwwBCyABQf8PTQRAIAAgAUE/cUGAAXI6AAEgACABQQZ2QcABcjoAAEECDAQLIAFBgEBxQYDAA0cgAUGAsANPcUUEQCAAIAFBP3FBgAFyOgACIAAgAUEMdkHgAXI6AAAgACABQQZ2QT9xQYABcjoAAUEDDAQLIAFBgIAEa0H//z9NBEAgACABQT9xQYABcjoAAyAAIAFBEnZB8AFyOgAAIAAgAUEGdkE/cUGAAXI6AAIgACABQQx2QT9xQYABcjoAAUEEDAQLC0GA+wBBGTYCAEF/BUEBCwwBCyAAIAE6AABBAQsLtAIAAkACQAJAAkACQAJAAkACQAJAAkACQCABQQlrDhIACAkKCAkBAgMECgkKCggJBQYHCyACIAIoAgAiAUEEajYCACAAIAEoAgA2AgAPCyACIAIoAgAiAUEEajYCACAAIAEyAQA3AwAPCyACIAIoAgAiAUEEajYCACAAIAEzAQA3AwAPCyACIAIoAgAiAUEEajYCACAAIAEwAAA3AwAPCyACIAIoAgAiAUEEajYCACAAIAExAAA3AwAPCyACIAIoAgBBB2pBeHEiAUEIajYCACAAIAErAwA5AwAPCwALDwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMACwQAQQELbwEFfyAAKAIAIgMsAABBMGsiAUEJSwRAQQAPCwNAQX8hBCACQcyZs+YATQRAQX8gASACQQpsIgVqIAEgBUH/////B3NLGyEECyAAIANBAWoiBTYCACADLAABIAQhAiAFIQNBMGsiAUEKSQ0ACyACC5MVAhJ/A34jAEFAaiIGJAAgBiABNgI8IAZBKWohFCAGQSdqIRUgBkEoaiEQAkACQAJAAkADQEEAIQEDQCABIAtB/////wdzSg0CIAEgC2ohCyAGKAI8IgohAQJAAkACQAJAIAotAAAiBwRAA0ACQAJAIAdB/wFxIgVFBEAgASEIDAELIAVBJUcNASABIQcDQCAHLQABQSVHBEAgByEIDAILIAFBAWohASAHLQACIAdBAmoiCCEHQSVGDQALCyAGIAg2AjwgASAKayIBIAtB/////wdzIhZKDQkgAARAIAAgCiABED4LIAENByAIQQFqIQFBfyEPAkAgCCwAAUEwayIFQQlLDQAgCC0AAkEkRw0AIAhBA2ohAUEBIREgBSEPCyAGIAE2AjxBACEMAkAgASwAACIHQSBrIghBH0sEQCABIQUMAQsgASEFQQEgCHQiCEGJ0QRxRQ0AA0AgBiABQQFqIgU2AjwgCCAMciEMIAEsAAEiB0EgayIIQSBPDQEgBSEBQQEgCHQiCEGJ0QRxDQALCwJAIAdBKkYEQAJ/AkAgBSwAAUEwayIBQQlLDQAgBS0AAkEkRw0AAn8gAEUEQCAEIAFBAnRqQQo2AgBBAAwBCyADIAFBA3RqKAIACyENIAVBA2ohAUEBDAELIBENBiAFQQFqIQEgAEUEQCAGIAE2AjxBACERQQAhDQwDCyACIAIoAgAiBUEEajYCACAFKAIAIQ1BAAshESAGIAE2AjwgDUEATg0BQQAgDWshDSAMQYDAAHIhDAwBCyAGQTxqELsBIg1BAEgNCiAGKAI8IQELQQAhBUF/IQkCf0EAIAEtAABBLkcNABogAS0AAUEqRgRAAn8CQCABLAACQTBrIgdBCUsNACABLQADQSRHDQAgAUEEaiEBAn8gAEUEQCAEIAdBAnRqQQo2AgBBAAwBCyADIAdBA3RqKAIACwwBCyARDQYgAUECaiEBQQAgAEUNABogAiACKAIAIgdBBGo2AgAgBygCAAshCSAGIAE2AjwgCUEATgwBCyAGIAFBAWo2AjwgBkE8ahC7ASEJIAYoAjwhAUEBCyESA0AgBSEOQRwhCCABIhMsAAAiBUH7AGtBRkkNCyABQQFqIQEgDkE6bCAFakHv6gBqLQAAIgVBAWtB/wFxQQhJDQALIAYgATYCPAJAIAVBG0cEQCAFRQ0MIA9BAE4EQCAARQRAIAQgD0ECdGogBTYCAAwMCyAGIAMgD0EDdGopAwA3AzAMAgsgAEUNCCAGQTBqIAUgAhC5AQwBCyAPQQBODQtBACEBIABFDQgLIAAtAABBIHENCyAMQf//e3EiByAMIAxBgMAAcRshBUEAIQxB6wghDyAQIQgCQAJAAn8CQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIBMtAAAiE8AiAUFTcSABIBNBD3FBA0YbIAEgDhsiAUHYAGsOIQQWFhYWFhYWFhAWCQYQEBAWBhYWFhYCBQMWFgoWARYWBAALAkAgAUHBAGsOBxAWCxYQEBAACyABQdMARg0LDBULIAYpAzAhGEHrCAwFC0EAIQECQAJAAkACQAJAAkACQCAODggAAQIDBBwFBhwLIAYoAjAgCzYCAAwbCyAGKAIwIAs2AgAMGgsgBigCMCALrDcDAAwZCyAGKAIwIAs7AQAMGAsgBigCMCALOgAADBcLIAYoAjAgCzYCAAwWCyAGKAIwIAusNwMADBULQQggCSAJQQhNGyEJIAVBCHIhBUH4ACEBCyAQIQcgBikDMCIYIhdCAFIEQCABQSBxIQoDQCAHQQFrIgcgF6dBD3EtAIBvIApyOgAAIBdCBIgiF0IAUg0ACwsgByEKIBhQDQMgBUEIcUUNAyABQQR2QesIaiEPQQIhDAwDCyAQIQEgBikDMCIYIhdCAFIEQANAIAFBAWsiASAXp0EHcUEwcjoAACAXQgOIIhdCAFINAAsLIAEhCiAFQQhxRQ0CIAkgFCABayIBIAEgCUgbIQkMAgsgBikDMCIYQgBTBEAgBkIAIBh9Ihg3AzBBASEMQesIDAELIAVBgBBxBEBBASEMQewIDAELQe0IQesIIAVBAXEiDBsLIQ8gECEBIBgiF0KAgICAEFoEQANAIAFBAWsiASAXIhkgF0IKgCIXQgp+fadBMHI6AAAgGUL/////nwFWDQALCyAXpyEHIBdCCloEQANAIAFBAWsiASAHIgogB0EKbiIHQQpsa0EwcjoAACAKQeMASw0ACwsgBwRAIAFBAWsiASAHQTByOgAACyABIQoLIBIgCUEASHENESAFQf//e3EgBSASGyEFAkAgGEIAUg0AIAkNACAQIQpBACEJDA4LIAkgGFAgECAKa2oiASABIAlIGyEJDA0LIAYtADAhAQwLCwJ/Qf////8HIAkgCUH/////B08bIg4iBUEARyEIAkACQAJAIAYoAjAiAUGBDSABGyIKIgFBA3FFDQAgBUUNAANAIAEtAABFDQIgBUEBayIFQQBHIQggAUEBaiIBQQNxRQ0BIAUNAAsLIAhFDQECQCABLQAARQ0AIAVBBEkNAANAQYCChAggASgCACIIayAIckGAgYKEeHFBgIGChHhHDQIgAUEEaiEBIAVBBGsiBUEDSw0ACwsgBUUNAQsDQCABIAEtAABFDQIaIAFBAWohASAFQQFrIgUNAAsLQQALIgEgCmsgDiABGyIBIApqIQggCUEATgRAIAchBSABIQkMDAsgByEFIAEhCSAILQAADQ8MCwsgBikDMCIXQgBSDQFBACEBDAkLIAkEQCAGKAIwDAILQQAhASAAQSAgDUEAIAUQLwwCCyAGQQA2AgwgBiAXPgIIIAYgBkEIaiIBNgIwQX8hCSABCyEHQQAhAQNAAkAgBygCACIKRQ0AIAZBBGogChC4ASIKQQBIDQ8gCiAJIAFrSw0AIAdBBGohByABIApqIgEgCUkNAQsLQT0hCCABQQBIDQwgAEEgIA0gASAFEC8gAUUEQEEAIQEMAQtBACEIIAYoAjAhBwNAIAcoAgAiCkUNASAGQQRqIgkgChC4ASIKIAhqIgggAUsNASAAIAkgChA+IAdBBGohByABIAhLDQALCyAAQSAgDSABIAVBgMAAcxAvIA0gASABIA1IGyEBDAgLIBIgCUEASHENCUE9IQggBisDMAALIAEtAAEhByABQQFqIQEMAAsACyAADQkgEUUNA0EBIQEDQCAEIAFBAnRqKAIAIgAEQCADIAFBA3RqIAAgAhC5AUEBIQsgAUEBaiIBQQpHDQEMCwsLIAFBCk8EQEEBIQsMCgsDQCAEIAFBAnRqKAIADQFBASELIAFBAWoiAUEKRw0ACwwJC0EcIQgMBgsgBiABOgAnQQEhCSAVIQogByEFCyAJIAggCmsiDiAJIA5KGyIJIAxB/////wdzSg0DQT0hCCANIAkgDGoiByAHIA1IGyIBIBZLDQQgAEEgIAEgByAFEC8gACAPIAwQPiAAQTAgASAHIAVBgIAEcxAvIABBMCAJIA5BABAvIAAgCiAOED4gAEEgIAEgByAFQYDAAHMQLwwBCwsLQQAhCwwDC0E9IQgLQYD7ACAINgIAC0F/IQsLIAZBQGskACALCwUAEAQAC9gCAQN/IwBBEGsiBCQAIAQgATYCDCMAQdABayICJAAgAiABNgLMASACQaABaiIBQQBBKPwLACACIAIoAswBNgLIAUEAIAAgAkHIAWogAkHQAGogARC8AUEASAR/QX8FQaD5AEGg+QAoAgAiAUFfcTYCAAJ/AkACQEHQ+QAoAgBFBEBB0PkAQdAANgIAQbz5AEEANgIAQbD5AEIANwMAQcz5ACgCACEDQcz5ACACNgIADAELQbD5ACgCAA0BC0F/QaD5ABDBAQ0BGgtBoPkAIAAgAkHIAWogAkHQAGogAkGgAWoQvAELIQAgAwR/QaD5AEEAQQBBxPkAKAIAEQMAGkHQ+QBBADYCAEHM+QAgAzYCAEG8+QBBADYCAEG0+QAoAgAaQbD5AEIANwMAQQAFIAALGkGg+QBBoPkAKAIAIAFBIHFyNgIAQQALGiACQdABaiQAIARBEGokAAsaACABIAAgASACEMABIgBGBEAPCyAAIAFuGgvJAQEDfwJAIAIoAhAiAwR/IAMFIAIQwQENASACKAIQCyACKAIUIgRrIAFJBEAgAiAAIAEgAigCJBEDAA8LAkACQCACKAJQQQBIDQAgAUUNACABIQMDQCAAIANqIgVBAWstAABBCkcEQCADQQFrIgMNAQwCCwsgAiAAIAMgAigCJBEDACIEIANJDQIgASADayEBIAIoAhQhBAwBCyAAIQVBACEDCyABBEAgBCAFIAH8CgAACyACIAIoAhQgAWo2AhQgASADaiEECyAEC1kBAX8gACAAKAJIIgFBAWsgAXI2AkggACgCACIBQQhxBEAgACABQSByNgIAQX8PCyAAQgA3AgQgACAAKAIsIgE2AhwgACABNgIUIAAgASAAKAIwajYCEEEAC+SNAQIWfwJ+IwBBoAVrIhQkAAJAIAEpAwggASkDECIZQgR8Uw0AIAAgASgCACAZp2ooAAAiBTYCACABIAEpAxAiGUIEfCIaNwMQIAVBH0sNACABKQMIIBlCCHxTDQAgACABKAIAIBqnaigAADYCBCABIAEpAxAiGUIEfCIaNwMQIAEpAwggGUIIfFMNACAAIAEoAgAgGqdqKAAAIgY2AgwgASABKQMQIhlCBHwiGjcDECAAKAIUIgVBACAFIAZHGw0AIAEpAwggGUIIfFMNACAAIAEoAgAgGqdqKAAAIgU2AhAgASABKQMQQgR8NwMQIAVBB08EQCAUIAU2AgBB5A0gFBC+AQwBCyAUIAI2ApwFAkAgBkUNAAJAIAYgAigCCCACKAIAIgVrQQxtTQ0AIAZB1qrVqgFJBEAgAigCBCERIAZBDGwiBhAGIgQgBmohAyAEIBEgBWsiBmoiByAGQXRtQQxsaiEKIAUgEUcEQCAFIQYgCiEEA0AgBCAGKAIANgIAIAQgBigCBDYCBCAEIAYoAgg2AgggBEEMaiEEIAZBDGoiBiARRw0ACwsgAiADNgIIIAIgBzYCBCACIAo2AgAgBUUNASAFEAUMAQsQBwALAkACQAJAAkACQAJAAkAgACgCEA4HAAECAwQFBggLIBRBBGpBAxA5IQQgFEGcBWohEQJAIAEpAwggASkDECIZQgR8Uw0AIAQgASgCACAZp2ooAAAiBTYCACABIAEpAxAiGUIEfCIaNwMQIAVBIEsNACABKQMIIBlCCHxTDQAgBCABKAIAIBqnaigAACIFNgIEIAEgASkDEEIEfDcDECAFRQ0AIARBADYCCCAEQRBqIAEQCkUNACAEQSRqIAEQCkUNACAEQThqIAEQCkUNACAEQcwAaiABEApFDQAgBCgCBCENQQAhCiMAQUBqIgMkACAEKAIMIQEgA0EANgIQIARB+ABqIAEgA0EQaiIBEA8gBCgCDCEFIANBADYCECAEQYQBaiAFIAEQDyAEIAQoApABNgKUASADQgA3AyAgA0IANwMYIANCADcDECABEAsgAygCFCADKAIkIgEgAygCIGoiBUHVAm4iBkECdGooAgAgBSAGQdUCbGtBDGxqIgVCADcCBCAFIA02AgACQCABQQFqIgFFDQAgBEGQAWohFgNAIAMoAhQiBiADKAIgIgwgAUEBayILaiIFQdUCbiIHQQJ0aigCACAFIAdB1QJsa0EMbGoiBygCCCEFIAcoAgQhCSAHKAIAIQggAyALNgIkIAMoAhgiByAGa0ECdUHVAmxBAWtBACAGIAdHGyABIAxqa0EBakGqBU8EQCAHQQRrKAIAEAUgAyADKAIYQQRrNgIYCyAFIApHBEAgBSAKSw0CAkAgBCgCkAEiCiAEKAKUASIBRg0AA0AgAUEQayIGKAIAIAVJDQEgBCgCeCABQQxrIgcoAgBBAnRqIAFBBGsoAgA2AgAgBigCACAFRg0BIAQoAoQBIAcoAgBBAnRqIAFBCGsoAgA2AgAgBCAGNgKUASAGIgEgCkcNAAsLIAUhCgtBACEGIAggDUsNASAJQQFqQQAgCSAEKAIMIgFBAWtHGyIJIAFPDQECQAJAIAQoAgAiDCAJQQJ0IgcgBCgChAFqIgsoAgAiDkYEQCAIRQ0BA0AgAyAEKAJ4IgEoAgAiBzYCMCADIAEoAgQiCTYCNCADIAEoAggiDDYCOCADIBEoAgAiBSgCBCIBNgIsIAUoAgghCyADIAU2AgggAyADQTBqNgIEIAMgA0EsajYCACAFAn8gASALSQRAIAEgDDYCCCABIAk2AgQgASAHNgIAIAFBDGoMAQsgAxAUIAMoAiwLNgIEIAQgBCgCCEEBajYCCCAIIAZBAWoiBkcNAAsMAQsCQAJAAkACQCAIQQJNBEAgBCgCbCIFIAk2AgBBASEBIAQoAgwiB0EBSw0BDAQLIAQoAgggBCgCBEsNBwJAAkACQCAIZ0EfcyIBQSAgBCgCICIFayIQTARAIAQoAhwiBiAEKAIURg0CIAYoAgAgBCABIAVqIg82AiAgBXRBICABa3YhBSAPQSBHDQEgBEEANgIgIAQgBkEEajYCHAwBCyAEKAIcIgZBBGoiDyAEKAIURg0BIAYoAgAhEiAEIA82AhwgBCABIBBrIhA2AiAgBigCBEEgIBBrdiASIAV0QSAgAWt2ciEFCyAIQQF2IgEgBUkNCQwBCyAIQQF2IQFBACEFCyABIAVrIgUgCCAFayIGRgRAIAUhAQwDCyAEKAJYIgEgBCgCUEYNASABKAIAIAQgBCgCXCIQQQFqIg82AlxBgICAgHggEHZxIQgCQCAPQSBGBEAgBEEANgJcIAQgAUEEajYCWCAIDQEMAwsgCEUNAgsgBSEBIAYhBQwCCwNAIAUgAUECdGoiBiAGQQRrKAIAIgZBAWpBACAGIAdBAWtHGzYCACABQQFqIgEgBCgCDCIHSQ0ACwwCCyAGIQELIApBf0YNBEEBIAwgDkF/c2p0IQggAyAKNgIAIAMgCTYCBCADIAsoAgA2AgggAyAEKAJ4IAdqKAIANgIMIAMgBCgClAEiBjYCLCAEKAKYASEMIAMgFjYCOCADIAM2AjQgAyADQSxqNgIwIAQCfyAGIAxJBEAgBiADKQIINwIIIAYgAykCADcCACAGQRBqDAELIANBMGoQGCADKAIsCzYClAEgBCgChAEgB2oiBiAGKAIAQQFqNgIAIAQoAnggB2oiBiAGKAIAIAhqNgIAIAEEQCADKAIkIgggAygCIGoiBiADKAIYIgwgAygCFCIHa0ECdUHVAmxBAWtBACAHIAxHG0YEQCADQRBqEAsgAygCFCEHIAMoAiQiCCADKAIgaiEGCyAHIAZB1QJuIgxBAnRqKAIAIAYgDEHVAmxrQQxsaiIGIAo2AgggBiAJNgIEIAYgATYCACADIAhBAWo2AiQLIApBAWohCiAFRQ0BIAMoAiQiCCADKAIgaiIGIAMoAhgiASADKAIUIgdrQQJ1QdUCbEEBa0EAIAEgB0cbRgRAIANBEGoQCyADKAIUIQcgAygCJCIIIAMoAiBqIQYLIAcgBkHVAm4iAUECdGooAgAgBiABQdUCbGtBDGxqIgEgCjYCCCABIAk2AgQgASAFNgIAIAMgCEEBaiIBNgIkDAILQQAhBiAIRQ0AA0AgBCgCDARAIAQoAoQBIRAgBCgCYCEHIAQoAmwhD0EAIQEDQCAHIA8gAUECdGoiCSgCAEECdGpBADYCAAJAIAQoAgAiBSAQIAkoAgBBAnQiDGooAgAiC0YNACAHIAxqIQwgBSALayIFQSAgBCgCNCILayISTARAIAQoAjAiDiAEKAIoRg0IIAwgDigCACALdEEgIAVrdjYCACAEIAQoAjQgBWoiBTYCNCAFQSBHDQEgBEEANgI0IAQgDkEEajYCMAwBCyAEKAIwIg5BBGoiEyAEKAIoRg0HIA4oAgAhFSAEIBM2AjAgBCAFIBJrIhI2AjQgDCAOKAIEQSAgEmt2IBUgC3RBICAFa3ZyNgIACyAHIAkoAgBBAnQiBWoiCSAJKAIAIAQoAnggBWooAgByNgIAIAFBAWoiASAEKAIMSQ0ACwsgAyAEKAJgIgEoAgAiBzYCMCADIAEoAgQiCTYCNCADIAEoAggiDDYCOCADIBEoAgAiBSgCBCIBNgIsIAUoAgghCyADIAU2AgggAyADQTBqNgIEIAMgA0EsajYCACAFAn8gASALSQRAIAEgDDYCCCABIAk2AgQgASAHNgIAIAFBDGoMAQsgAxAUIAMoAiwLNgIEIAQgBCgCCEEBajYCCCAGQQFqIgYgCEcNAAsLIAMoAiQhAQsgAQ0ACwsgA0EANgIkIAMoAhgiASADKAIUIgVrQQJ1IgdBA08EQANAIAUoAgAQBSADIAMoAhRBBGoiBTYCFCADKAIYIgEgBWtBAnUiB0ECSw0ACwtBqgEhCAJAAkACQCAHQQFrDgIBAAILQdUCIQgLIAMgCDYCIAsgASAFRgR/IAEFA0AgBSgCABAFIAVBBGoiBSABRw0ACyADKAIYIQEgAygCFAshBSADIAEgASAFa0F8cWs2AhggAygCECIBBEAgARAFCyADQUBrJAALIAQQOgwGCyAUQQRqQQMQOSEEIBRBnAVqIRECQCABKQMIIAEpAxAiGUIEfFMNACAEIAEoAgAgGadqKAAAIgU2AgAgASABKQMQIhlCBHwiGjcDECAFQSBLDQAgASkDCCAZQgh8Uw0AIAQgASgCACAap2ooAAAiBTYCBCABIAEpAxBCBHw3AxAgBUUNACAEQQA2AgggBEEQaiABEApFDQAgBEEkaiABEApFDQAgBEE4aiABEApFDQAgBEHMAGogARAKRQ0AIAQoAgQhDUEAIQojAEFAaiIDJAAgBCgCDCEBIANBADYCECAEQfgAaiABIANBEGoiARAPIAQoAgwhBSADQQA2AhAgBEGEAWogBSABEA8gBCAEKAKQATYClAEgA0IANwMgIANCADcDGCADQgA3AxAgARALIAMoAhQgAygCJCIBIAMoAiBqIgVB1QJuIgZBAnRqKAIAIAUgBkHVAmxrQQxsaiIFQgA3AgQgBSANNgIAAkAgAUEBaiIBRQ0AIARBkAFqIRYDQCADKAIUIgYgAygCICIMIAFBAWsiC2oiBUHVAm4iB0ECdGooAgAgBSAHQdUCbGtBDGxqIgcoAgghBSAHKAIEIQkgBygCACEIIAMgCzYCJCADKAIYIgcgBmtBAnVB1QJsQQFrQQAgBiAHRxsgASAMamtBAWpBqgVPBEAgB0EEaygCABAFIAMgAygCGEEEazYCGAsgBSAKRwRAIAUgCksNAgJAIAQoApABIgogBCgClAEiAUYNAANAIAFBEGsiBigCACAFSQ0BIAQoAnggAUEMayIHKAIAQQJ0aiABQQRrKAIANgIAIAYoAgAgBUYNASAEKAKEASAHKAIAQQJ0aiABQQhrKAIANgIAIAQgBjYClAEgBiIBIApHDQALCyAFIQoLIAggDUsNAUEAIQYgCUEBakEAIAkgBCgCDCIBQQFrRxsiCSABTw0BAkACQCAEKAIAIgwgCUECdCIHIAQoAoQBaiILKAIAIg5GBEAgCEUNAQNAIAMgBCgCeCIBKAIAIgc2AjAgAyABKAIEIgk2AjQgAyABKAIIIgw2AjggAyARKAIAIgUoAgQiATYCLCAFKAIIIQsgAyAFNgIIIAMgA0EwajYCBCADIANBLGo2AgAgBQJ/IAEgC0kEQCABIAw2AgggASAJNgIEIAEgBzYCACABQQxqDAELIAMQFCADKAIsCzYCBCAEIAQoAghBAWo2AgggCCAGQQFqIgZHDQALDAELAkACQAJAAkAgCEECTQRAIAQoAmwiBSAJNgIAQQEhASAEKAIMIgdBAUsNAQwECyAEKAIIIAQoAgRLDQcCQAJAAkAgCGdBH3MiAUEgIAQoAiAiBWsiEEwEQCAEKAIcIgYgBCgCFEYNAiAGKAIAIAQgASAFaiIPNgIgIAV0QSAgAWt2IQUgD0EgRw0BIARBADYCICAEIAZBBGo2AhwMAQsgBCgCHCIGQQRqIg8gBCgCFEYNASAGKAIAIRIgBCAPNgIcIAQgASAQayIQNgIgIAYoAgRBICAQa3YgEiAFdEEgIAFrdnIhBQsgCEEBdiIBIAVJDQkMAQsgCEEBdiEBQQAhBQsgASAFayIFIAggBWsiBkYEQCAFIQEMAwsgBCgCWCIBIAQoAlBGDQEgASgCACAEIAQoAlwiEEEBaiIPNgJcQYCAgIB4IBB2cSEIAkAgD0EgRgRAIARBADYCXCAEIAFBBGo2AlggCA0BDAMLIAhFDQILIAUhASAGIQUMAgsDQCAFIAFBAnRqIgYgBkEEaygCACIGQQFqQQAgBiAHQQFrRxs2AgAgAUEBaiIBIAQoAgwiB0kNAAsMAgsgBiEBCyAKQX9GDQRBASAMIA5Bf3NqdCEIIAMgCjYCACADIAk2AgQgAyALKAIANgIIIAMgBCgCeCAHaigCADYCDCADIAQoApQBIgY2AiwgBCgCmAEhDCADIBY2AjggAyADNgI0IAMgA0EsajYCMCAEAn8gBiAMSQRAIAYgAykCCDcCCCAGIAMpAgA3AgAgBkEQagwBCyADQTBqEBggAygCLAs2ApQBIAQoAoQBIAdqIgYgBigCAEEBajYCACAEKAJ4IAdqIgYgBigCACAIajYCACABBEAgAygCJCIIIAMoAiBqIgYgAygCGCIMIAMoAhQiB2tBAnVB1QJsQQFrQQAgByAMRxtGBEAgA0EQahALIAMoAhQhByADKAIkIgggAygCIGohBgsgByAGQdUCbiIMQQJ0aigCACAGIAxB1QJsa0EMbGoiBiAKNgIIIAYgCTYCBCAGIAE2AgAgAyAIQQFqNgIkCyAKQQFqIQogBUUNASADKAIkIgggAygCIGoiBiADKAIYIgEgAygCFCIHa0ECdUHVAmxBAWtBACABIAdHG0YEQCADQRBqEAsgAygCFCEHIAMoAiQiCCADKAIgaiEGCyAHIAZB1QJuIgFBAnRqKAIAIAYgAUHVAmxrQQxsaiIBIAo2AgggASAJNgIEIAEgBTYCACADIAhBAWoiATYCJAwCC0EAIQYgCEUNAANAIAQoAgwEQCAEKAKEASEQIAQoAmAhByAEKAJsIQ9BACEBA0AgByAPIAFBAnRqIgkoAgBBAnRqQQA2AgACQCAEKAIAIgUgECAJKAIAQQJ0IgxqKAIAIgtGDQAgByAMaiEMIAUgC2siBUEgIAQoAjQiC2siEkwEQCAEKAIwIg4gBCgCKEYNCCAMIA4oAgAgC3RBICAFa3Y2AgAgBCAEKAI0IAVqIgU2AjQgBUEgRw0BIARBADYCNCAEIA5BBGo2AjAMAQsgBCgCMCIOQQRqIhMgBCgCKEYNByAOKAIAIRUgBCATNgIwIAQgBSASayISNgI0IAwgDigCBEEgIBJrdiAVIAt0QSAgBWt2cjYCAAsgByAJKAIAQQJ0IgVqIgkgCSgCACAEKAJ4IAVqKAIAcjYCACABQQFqIgEgBCgCDEkNAAsLIAMgBCgCYCIBKAIAIgc2AjAgAyABKAIEIgk2AjQgAyABKAIIIgw2AjggAyARKAIAIgUoAgQiATYCLCAFKAIIIQsgAyAFNgIIIAMgA0EwajYCBCADIANBLGo2AgAgBQJ/IAEgC0kEQCABIAw2AgggASAJNgIEIAEgBzYCACABQQxqDAELIAMQFCADKAIsCzYCBCAEIAQoAghBAWo2AgggBkEBaiIGIAhHDQALCyADKAIkIQELIAENAAsLIANBADYCJCADKAIYIgEgAygCFCIFa0ECdSIHQQNPBEADQCAFKAIAEAUgAyADKAIUQQRqIgU2AhQgAygCGCIBIAVrQQJ1IgdBAksNAAsLQaoBIQgCQAJAAkAgB0EBaw4CAQACC0HVAiEICyADIAg2AiALIAEgBUYEfyABBQNAIAUoAgAQBSAFQQRqIgUgAUcNAAsgAygCGCEBIAMoAhQLIQUgAyABIAEgBWtBfHFrNgIYIAMoAhAiAQRAIAEQBQsgA0FAayQACyAEEDoMBQsgFEEEakEDEDchBCAUQZwFaiERAkAgASkDCCABKQMQIhlCBHxTDQAgBCABKAIAIBmnaigAACIFNgIAIAEgASkDECIZQgR8Iho3AxAgBUEgSw0AIAEpAwggGUIIfFMNACAEIAEoAgAgGqdqKAAAIgU2AgQgASABKQMQQgR8NwMQIAVFDQAgBEEANgIIIARBEGoiECABEAhFDQAgBEEgaiABEApFDQAgBEE0aiABEApFDQAgBEHIAGogARAKRQ0AIAQoAgQhDUEAIQojAEHQAGsiAyQAIAQoAgwhASADQQA2AiAgBEH0AGogASADQSBqIgEQDyAEKAIMIQUgA0EANgIgIARBgAFqIAUgARAPIAQgBCgCjAE2ApABIANCADcDMCADQgA3AyggA0IANwMgIAEQCyADKAIkIAMoAjQiASADKAIwaiIFQdUCbiIGQQJ0aigCACAFIAZB1QJsa0EMbGoiBUIANwIEIAUgDTYCAAJAIAFBAWoiAUUNACAEQYwBaiEWA0AgAygCJCIGIAMoAjAiDCABQQFrIgtqIgVB1QJuIgdBAnRqKAIAIAUgB0HVAmxrQQxsaiIHKAIIIQUgBygCBCEJIAcoAgAhCCADIAs2AjQgAygCKCIHIAZrQQJ1QdUCbEEBa0EAIAYgB0cbIAEgDGprQQFqQaoFTwRAIAdBBGsoAgAQBSADIAMoAihBBGs2AigLIAUgCkcEQCAFIApLDQICQCAEKAKMASIKIAQoApABIgFGDQADQCABQRBrIgYoAgAgBUkNASAEKAJ0IAFBDGsiBygCAEECdGogAUEEaygCADYCACAGKAIAIAVGDQEgBCgCgAEgBygCAEECdGogAUEIaygCADYCACAEIAY2ApABIAYiASAKRw0ACwsgBSEKC0EAIQYgCCANSw0BIAlBAWpBACAJIAQoAgwiAUEBa0cbIgkgAU8NAQJAIAQoAgAiDCAJQQJ0IgcgBCgCgAFqKAIAIgtGBEAgCEUNAQNAIAMgBCgCdCIBKAIAIgc2AkAgAyABKAIEIgk2AkQgAyABKAIIIgw2AkggAyARKAIAIgUoAgQiATYCPCAFKAIIIQsgAyAFNgIQIAMgA0FAazYCDCADIANBPGo2AgggBQJ/IAEgC0kEQCABIAw2AgggASAJNgIEIAEgBzYCACABQQxqDAELIANBCGoQFCADKAI8CzYCBCAEIAQoAghBAWo2AgggCCAGQQFqIgZHDQALDAELAkACQAJAAkAgCEECTQRAIAQoAmgiBSAJNgIAQQEhASAEKAIMIgdBAUsNAQwECyAEKAIIIAQoAgRLDQYgA0EANgIcIBAgCGdBH3MgA0EcahBqIAhBAXYiASADKAIcIgVJDQYgASAFayIFIAggBWsiBkYEQCAFIQEMAwsgBCgCVCIBIAQoAkxGDQEgASgCACAEIAQoAlgiDkEBaiIPNgJYQYCAgIB4IA52cSEIAkAgD0EgRgRAIARBADYCWCAEIAFBBGo2AlQgCA0BDAMLIAhFDQILIAUhASAGIQUMAgsDQCAFIAFBAnRqIgYgBkEEaygCACIGQQFqQQAgBiAHQQFrRxs2AgAgAUEBaiIBIAQoAgwiB0kNAAsMAgsgBiEBCyAKQX9GDQNBASAMIAtBf3NqdCEIIAMgCjYCCCADIAk2AgwgAyAEKAKAASAHaigCADYCECADIAQoAnQgB2ooAgA2AhQgAyAEKAKQASIGNgI8IAQoApQBIQwgAyAWNgJIIAMgA0EIajYCRCADIANBPGo2AkAgBAJ/IAYgDEkEQCAGIAMpAhA3AgggBiADKQIINwIAIAZBEGoMAQsgA0FAaxAYIAMoAjwLNgKQASAEKAKAASAHaiIGIAYoAgBBAWo2AgAgBCgCdCAHaiIGIAYoAgAgCGo2AgAgAQRAIAMoAjQiCCADKAIwaiIGIAMoAigiDCADKAIkIgdrQQJ1QdUCbEEBa0EAIAcgDEcbRgRAIANBIGoQCyADKAIkIQcgAygCNCIIIAMoAjBqIQYLIAcgBkHVAm4iDEECdGooAgAgBiAMQdUCbGtBDGxqIgYgCjYCCCAGIAk2AgQgBiABNgIAIAMgCEEBajYCNAsgCkEBaiEKIAVFDQEgAygCNCIIIAMoAjBqIgYgAygCKCIBIAMoAiQiB2tBAnVB1QJsQQFrQQAgASAHRxtGBEAgA0EgahALIAMoAiQhByADKAI0IgggAygCMGohBgsgByAGQdUCbiIBQQJ0aigCACAGIAFB1QJsa0EMbGoiASAKNgIIIAEgCTYCBCABIAU2AgAgAyAIQQFqNgI0DAELQQAhBiAIRQ0AA0AgBCgCDARAIAQoAoABIQ8gBCgCXCEHIAQoAmghEkEAIQEDQCAHIBIgAUECdGoiCSgCAEECdGpBADYCAAJAIAQoAgAiBSAPIAkoAgBBAnQiDGooAgAiC0YNACAHIAxqIQwgBSALayIFQSAgBCgCMCILayITTARAIAQoAiwiDiAEKAIkRg0HIAwgDigCACALdEEgIAVrdjYCACAEIAQoAjAgBWoiBTYCMCAFQSBHDQEgBEEANgIwIAQgDkEEajYCLAwBCyAEKAIsIg5BBGoiFSAEKAIkRg0GIA4oAgAhFyAEIBU2AiwgBCAFIBNrIhM2AjAgDCAOKAIEQSAgE2t2IBcgC3RBICAFa3ZyNgIACyAHIAkoAgBBAnQiBWoiCSAJKAIAIAQoAnQgBWooAgByNgIAIAFBAWoiASAEKAIMSQ0ACwsgAyAEKAJcIgEoAgAiBzYCQCADIAEoAgQiCTYCRCADIAEoAggiDDYCSCADIBEoAgAiBSgCBCIBNgI8IAUoAgghCyADIAU2AhAgAyADQUBrNgIMIAMgA0E8ajYCCCAFAn8gASALSQRAIAEgDDYCCCABIAk2AgQgASAHNgIAIAFBDGoMAQsgA0EIahAUIAMoAjwLNgIEIAQgBCgCCEEBajYCCCAGQQFqIgYgCEcNAAsLIAMoAjQiAQ0ACwsgA0EANgI0IAMoAigiASADKAIkIgVrQQJ1IgdBA08EQANAIAUoAgAQBSADIAMoAiRBBGoiBTYCJCADKAIoIgEgBWtBAnUiB0ECSw0ACwtBqgEhCAJAAkACQCAHQQFrDgIBAAILQdUCIQgLIAMgCDYCMAsgASAFRgR/IAEFA0AgBSgCABAFIAVBBGoiBSABRw0ACyADKAIoIQEgAygCJAshBSADIAEgASAFa0F8cWs2AiggAygCICIBBEAgARAFCyADQdAAaiQACyAEEDgMBAsgFEEEakEDEDchBCAUQZwFaiERAkAgASkDCCABKQMQIhlCBHxTDQAgBCABKAIAIBmnaigAACIFNgIAIAEgASkDECIZQgR8Iho3AxAgBUEgSw0AIAEpAwggGUIIfFMNACAEIAEoAgAgGqdqKAAAIgU2AgQgASABKQMQQgR8NwMQIAVFDQAgBEEANgIIIARBEGoiECABEAhFDQAgBEEgaiABEApFDQAgBEE0aiABEApFDQAgBEHIAGogARAKRQ0AIAQoAgQhDUEAIQojAEHQAGsiAyQAIAQoAgwhASADQQA2AiAgBEH0AGogASADQSBqIgEQDyAEKAIMIQUgA0EANgIgIARBgAFqIAUgARAPIAQgBCgCjAE2ApABIANCADcDMCADQgA3AyggA0IANwMgIAEQCyADKAIkIAMoAjQiASADKAIwaiIFQdUCbiIGQQJ0aigCACAFIAZB1QJsa0EMbGoiBUIANwIEIAUgDTYCAAJAIAFBAWoiAUUNACAEQYwBaiEWA0AgAygCJCIGIAMoAjAiDCABQQFrIgtqIgVB1QJuIgdBAnRqKAIAIAUgB0HVAmxrQQxsaiIHKAIIIQUgBygCBCEJIAcoAgAhCCADIAs2AjQgAygCKCIHIAZrQQJ1QdUCbEEBa0EAIAYgB0cbIAEgDGprQQFqQaoFTwRAIAdBBGsoAgAQBSADIAMoAihBBGs2AigLIAUgCkcEQCAFIApLDQICQCAEKAKMASIKIAQoApABIgFGDQADQCABQRBrIgYoAgAgBUkNASAEKAJ0IAFBDGsiBygCAEECdGogAUEEaygCADYCACAGKAIAIAVGDQEgBCgCgAEgBygCAEECdGogAUEIaygCADYCACAEIAY2ApABIAYiASAKRw0ACwsgBSEKCyAIIA1LDQFBACEGIAlBAWpBACAJIAQoAgwiAUEBa0cbIgkgAU8NAQJAIAQoAgAiDCAJQQJ0IgcgBCgCgAFqKAIAIgtGBEAgCEUNAQNAIAMgBCgCdCIBKAIAIgc2AkAgAyABKAIEIgk2AkQgAyABKAIIIgw2AkggAyARKAIAIgUoAgQiATYCPCAFKAIIIQsgAyAFNgIQIAMgA0FAazYCDCADIANBPGo2AgggBQJ/IAEgC0kEQCABIAw2AgggASAJNgIEIAEgBzYCACABQQxqDAELIANBCGoQFCADKAI8CzYCBCAEIAQoAghBAWo2AgggCCAGQQFqIgZHDQALDAELAkACQAJAAkAgCEECTQRAIAQoAmgiBSAJNgIAQQEhASAEKAIMIgdBAUsNAQwECyAEKAIIIAQoAgRLDQYgA0EANgIcIBAgCGdBH3MgA0EcahBqIAhBAXYiASADKAIcIgVJDQYgASAFayIFIAggBWsiBkYEQCAFIQEMAwsgBCgCVCIBIAQoAkxGDQEgASgCACAEIAQoAlgiDkEBaiIPNgJYQYCAgIB4IA52cSEIAkAgD0EgRgRAIARBADYCWCAEIAFBBGo2AlQgCA0BDAMLIAhFDQILIAUhASAGIQUMAgsDQCAFIAFBAnRqIgYgBkEEaygCACIGQQFqQQAgBiAHQQFrRxs2AgAgAUEBaiIBIAQoAgwiB0kNAAsMAgsgBiEBCyAKQX9GDQNBASAMIAtBf3NqdCEIIAMgCjYCCCADIAk2AgwgAyAEKAKAASAHaigCADYCECADIAQoAnQgB2ooAgA2AhQgAyAEKAKQASIGNgI8IAQoApQBIQwgAyAWNgJIIAMgA0EIajYCRCADIANBPGo2AkAgBAJ/IAYgDEkEQCAGIAMpAhA3AgggBiADKQIINwIAIAZBEGoMAQsgA0FAaxAYIAMoAjwLNgKQASAEKAKAASAHaiIGIAYoAgBBAWo2AgAgBCgCdCAHaiIGIAYoAgAgCGo2AgAgAQRAIAMoAjQiCCADKAIwaiIGIAMoAigiDCADKAIkIgdrQQJ1QdUCbEEBa0EAIAcgDEcbRgRAIANBIGoQCyADKAIkIQcgAygCNCIIIAMoAjBqIQYLIAcgBkHVAm4iDEECdGooAgAgBiAMQdUCbGtBDGxqIgYgCjYCCCAGIAk2AgQgBiABNgIAIAMgCEEBajYCNAsgCkEBaiEKIAVFDQEgAygCNCIIIAMoAjBqIgYgAygCKCIBIAMoAiQiB2tBAnVB1QJsQQFrQQAgASAHRxtGBEAgA0EgahALIAMoAiQhByADKAI0IgggAygCMGohBgsgByAGQdUCbiIBQQJ0aigCACAGIAFB1QJsa0EMbGoiASAKNgIIIAEgCTYCBCABIAU2AgAgAyAIQQFqNgI0DAELQQAhBiAIRQ0AA0AgBCgCDARAIAQoAoABIQ8gBCgCXCEHIAQoAmghEkEAIQEDQCAHIBIgAUECdGoiCSgCAEECdGpBADYCAAJAIAQoAgAiBSAPIAkoAgBBAnQiDGooAgAiC0YNACAHIAxqIQwgBSALayIFQSAgBCgCMCILayITTARAIAQoAiwiDiAEKAIkRg0HIAwgDigCACALdEEgIAVrdjYCACAEIAQoAjAgBWoiBTYCMCAFQSBHDQEgBEEANgIwIAQgDkEEajYCLAwBCyAEKAIsIg5BBGoiFSAEKAIkRg0GIA4oAgAhFyAEIBU2AiwgBCAFIBNrIhM2AjAgDCAOKAIEQSAgE2t2IBcgC3RBICAFa3ZyNgIACyAHIAkoAgBBAnQiBWoiCSAJKAIAIAQoAnQgBWooAgByNgIAIAFBAWoiASAEKAIMSQ0ACwsgAyAEKAJcIgEoAgAiBzYCQCADIAEoAgQiCTYCRCADIAEoAggiDDYCSCADIBEoAgAiBSgCBCIBNgI8IAUoAgghCyADIAU2AhAgAyADQUBrNgIMIAMgA0E8ajYCCCAFAn8gASALSQRAIAEgDDYCCCABIAk2AgQgASAHNgIAIAFBDGoMAQsgA0EIahAUIAMoAjwLNgIEIAQgBCgCCEEBajYCCCAGQQFqIgYgCEcNAAsLIAMoAjQiAQ0ACwsgA0EANgI0IAMoAigiASADKAIkIgVrQQJ1IgdBA08EQANAIAUoAgAQBSADIAMoAiRBBGoiBTYCJCADKAIoIgEgBWtBAnUiB0ECSw0ACwtBqgEhCAJAAkACQCAHQQFrDgIBAAILQdUCIQgLIAMgCDYCMAsgASAFRgR/IAEFA0AgBSgCABAFIAVBBGoiBSABRw0ACyADKAIoIQEgAygCJAshBSADIAEgASAFa0F8cWs2AiggAygCICIBBEAgARAFCyADQdAAaiQACyAEEDgMAwsgFEEEakEDECchBCAUQZwFaiERAkAgASkDCCABKQMQIhlCBHxTDQAgBCABKAIAIBmnaigAACIFNgIAIAEgASkDECIZQgR8Iho3AxAgBUEgSw0AIAEpAwggGUIIfFMNACAEIAEoAgAgGqdqKAAAIgU2AgQgASABKQMQQgR8NwMQIAVFDQAgBEEANgIIIARBEGoiECABEDZFDQAgBEGgBGogARAKRQ0AIARBtARqIAEQCkUNACAEQcgEaiABEApFDQAgBCgCBCEMQQAhCiMAQUBqIgMkACAEKAIMIQEgA0EANgIQIARB9ARqIAEgA0EQaiIBEA8gBCgCDCEFIANBADYCECAEQYAFaiAFIAEQDyAEIAQoAowFNgKQBSADQgA3AyAgA0IANwMYIANCADcDECABEAsgAygCFCADKAIkIgEgAygCIGoiBUHVAm4iBkECdGooAgAgBSAGQdUCbGtBDGxqIgVCADcCBCAFIAw2AgACQCABQQFqIgZFDQAgBEGMBWohFgNAIAMoAhQiBSADKAIgIg0gBkEBayILaiIBQdUCbiIHQQJ0aigCACABIAdB1QJsa0EMbGoiBygCCCEBIAcoAgQhCSAHKAIAIQggAyALNgIkIAMoAhgiByAFa0ECdUHVAmxBAWtBACAFIAdHGyAGIA1qa0EBakGqBU8EQCAHQQRrKAIAEAUgAyADKAIYQQRrNgIYCyABIApHBEAgASAKSw0CAkAgBCgCjAUiCiAEKAKQBSIGRg0AA0AgBkEQayIFKAIAIAFJDQEgBCgC9AQgBkEMayIHKAIAQQJ0aiAGQQRrKAIANgIAIAUoAgAgAUYNASAEKAKABSAHKAIAQQJ0aiAGQQhrKAIANgIAIAQgBTYCkAUgBSIGIApHDQALCyABIQoLQQAhByAIIAxLDQEgCUEBakEAIAkgBCgCDCIBQQFrRxsiCSABTw0BAkACQCAEKAIAIgsgCUECdCINIAQoAoAFaigCACIORgRAIAhFDQEDQCADIAQoAvQEIgEoAgAiBjYCMCADIAEoAgQiCTYCNCADIAEoAggiDTYCOCADIBEoAgAiBSgCBCIBNgIsIAUoAgghCyADIAU2AgggAyADQTBqNgIEIAMgA0EsajYCACAFAn8gASALSQRAIAEgDTYCCCABIAk2AgQgASAGNgIAIAFBDGoMAQsgAxAUIAMoAiwLNgIEIAQgBCgCCEEBajYCCCAIIAdBAWoiB0cNAAsMAQsCQAJAAkACQCAIQQJNBEAgBCgC6AQiBSAJNgIAQQEhBiAEKAIMIgFBAUsNAQwECyAEKAIIIAQoAgRLDQcgCGchBUEAIQFBACEGA0AgECAGQQR0ahAQIAFBAXRyIQEgBkEBaiIGIAVzQR9HDQALIAhBAXYiBSABSQ0HIAUgAWsiASAIIAFrIgZGBEAgASEFDAMLIAQoAtQEIgUgBCgCzARGDQEgBSgCACAEIAQoAtgEIghBAWoiDzYC2ARBgICAgHggCHZxIQcCQCAPQSBGBEAgBEEANgLYBCAEIAVBBGo2AtQEIAcNAQwDCyAHRQ0CCyABIQUgBiEBDAILA0AgBSAGQQJ0aiIHIAdBBGsoAgAiB0EBakEAIAcgAUEBa0cbNgIAIAZBAWoiBiAEKAIMIgFJDQALDAILIAYhBQsgCkF/Rg0EQQEgCyAOQX9zanQhByADIAo2AgAgAyAJNgIEIAMgBCgCgAUgDWooAgA2AgggAyAEKAL0BCANaigCADYCDCADIAQoApAFIgY2AiwgBCgClAUhCCADIBY2AjggAyADNgI0IAMgA0EsajYCMCAEAn8gBiAISQRAIAYgAykCCDcCCCAGIAMpAgA3AgAgBkEQagwBCyADQTBqEBggAygCLAs2ApAFIAQoAoAFIA1qIgYgBigCAEEBajYCACAEKAL0BCANaiIGIAYoAgAgB2o2AgAgBQRAIAMoAiQiCCADKAIgaiIHIAMoAhgiDSADKAIUIgZrQQJ1QdUCbEEBa0EAIAYgDUcbRgRAIANBEGoQCyADKAIkIgggAygCIGohByADKAIUIQYLIAYgB0HVAm4iDUECdGooAgAgByANQdUCbGtBDGxqIgYgCjYCCCAGIAk2AgQgBiAFNgIAIAMgCEEBajYCJAsgCkEBaiEKIAFFDQEgAygCJCIIIAMoAiBqIgcgAygCGCIFIAMoAhQiBmtBAnVB1QJsQQFrQQAgBSAGRxtGBEAgA0EQahALIAMoAiQiCCADKAIgaiEHIAMoAhQhBgsgBiAHQdUCbiIFQQJ0aigCACAHIAVB1QJsa0EMbGoiBSAKNgIIIAUgCTYCBCAFIAE2AgAgAyAIQQFqIgY2AiQMAgtBACEHIAhFDQADQCAEKAIMBEAgBCgCgAUhDyAEKALcBCEFIAQoAugEIRJBACEGA0AgBSASIAZBAnRqIgkoAgBBAnRqQQA2AgACQCAEKAIAIgEgDyAJKAIAQQJ0Ig1qKAIAIgtGDQAgBSANaiENIAEgC2siAUEgIAQoArAEIgtrIhNMBEAgBCgCrAQiDiAEKAKkBEYNCCANIA4oAgAgC3RBICABa3Y2AgAgBCAEKAKwBCABaiIBNgKwBCABQSBHDQEgBEEANgKwBCAEIA5BBGo2AqwEDAELIAQoAqwEIg5BBGoiFSAEKAKkBEYNByAOKAIAIRcgBCAVNgKsBCAEIAEgE2siEzYCsAQgDSAOKAIEQSAgE2t2IBcgC3RBICABa3ZyNgIACyAFIAkoAgBBAnQiAWoiCSAJKAIAIAQoAvQEIAFqKAIAcjYCACAGQQFqIgYgBCgCDEkNAAsLIAMgBCgC3AQiASgCACIGNgIwIAMgASgCBCIJNgI0IAMgASgCCCINNgI4IAMgESgCACIFKAIEIgE2AiwgBSgCCCELIAMgBTYCCCADIANBMGo2AgQgAyADQSxqNgIAIAUCfyABIAtJBEAgASANNgIIIAEgCTYCBCABIAY2AgAgAUEMagwBCyADEBQgAygCLAs2AgQgBCAEKAIIQQFqNgIIIAdBAWoiByAIRw0ACwsgAygCJCEGCyAGDQALCyADQQA2AiQgAygCGCIGIAMoAhQiBWtBAnUiAUEDTwRAA0AgBSgCABAFIAMgAygCFEEEaiIFNgIUIAMoAhgiBiAFa0ECdSIBQQJLDQALC0GqASEIAkACQAJAIAFBAWsOAgEAAgtB1QIhCAsgAyAINgIgCyAFIAZGBH8gBgUDQCAFKAIAEAUgBUEEaiIFIAZHDQALIAMoAhghBiADKAIUCyEBIAMgBiAGIAFrQXxxazYCGCADKAIQIgEEQCABEAULIANBQGskAAsgBBAoDAILIBRBBGpBAxAnIQQgFEGcBWohEQJAIAEpAwggASkDECIZQgR8Uw0AIAQgASgCACAZp2ooAAAiBTYCACABIAEpAxAiGUIEfCIaNwMQIAVBIEsNACABKQMIIBlCCHxTDQAgBCABKAIAIBqnaigAACIFNgIEIAEgASkDEEIEfDcDECAFRQ0AIARBADYCCCAEQRBqIhAgARA2RQ0AIARBoARqIAEQCkUNACAEQbQEaiABEApFDQAgBEHIBGogARAKRQ0AIAQoAgQhDEEAIQojAEFAaiIDJAAgBCgCDCEBIANBADYCECAEQfQEaiABIANBEGoiARAPIAQoAgwhBSADQQA2AhAgBEGABWogBSABEA8gBCAEKAKMBTYCkAUgA0IANwMgIANCADcDGCADQgA3AxAgARALIAMoAhQgAygCJCIBIAMoAiBqIgVB1QJuIgZBAnRqKAIAIAUgBkHVAmxrQQxsaiIFQgA3AgQgBSAMNgIAAkAgAUEBaiIGRQ0AIARBjAVqIRYDQCADKAIUIgUgAygCICINIAZBAWsiC2oiAUHVAm4iB0ECdGooAgAgASAHQdUCbGtBDGxqIgcoAgghASAHKAIEIQkgBygCACEIIAMgCzYCJCADKAIYIgcgBWtBAnVB1QJsQQFrQQAgBSAHRxsgBiANamtBAWpBqgVPBEAgB0EEaygCABAFIAMgAygCGEEEazYCGAsgASAKRwRAIAEgCksNAgJAIAQoAowFIgogBCgCkAUiBkYNAANAIAZBEGsiBSgCACABSQ0BIAQoAvQEIAZBDGsiBygCAEECdGogBkEEaygCADYCACAFKAIAIAFGDQEgBCgCgAUgBygCAEECdGogBkEIaygCADYCACAEIAU2ApAFIAUiBiAKRw0ACwsgASEKCyAIIAxLDQFBACEHIAlBAWpBACAJIAQoAgwiAUEBa0cbIgkgAU8NAQJAAkAgBCgCACILIAlBAnQiDSAEKAKABWooAgAiDkYEQCAIRQ0BA0AgAyAEKAL0BCIBKAIAIgY2AjAgAyABKAIEIgk2AjQgAyABKAIIIg02AjggAyARKAIAIgUoAgQiATYCLCAFKAIIIQsgAyAFNgIIIAMgA0EwajYCBCADIANBLGo2AgAgBQJ/IAEgC0kEQCABIA02AgggASAJNgIEIAEgBjYCACABQQxqDAELIAMQFCADKAIsCzYCBCAEIAQoAghBAWo2AgggCCAHQQFqIgdHDQALDAELAkACQAJAAkAgCEECTQRAIAQoAugEIgUgCTYCAEEBIQYgBCgCDCIBQQFLDQEMBAsgBCgCCCAEKAIESw0HIAhnIQVBACEBQQAhBgNAIBAgBkEEdGoQECABQQF0ciEBIAZBAWoiBiAFc0EfRw0ACyAIQQF2IgUgAUkNByAFIAFrIgEgCCABayIGRgRAIAEhBQwDCyAEKALUBCIFIAQoAswERg0BIAUoAgAgBCAEKALYBCIIQQFqIg82AtgEQYCAgIB4IAh2cSEHAkAgD0EgRgRAIARBADYC2AQgBCAFQQRqNgLUBCAHDQEMAwsgB0UNAgsgASEFIAYhAQwCCwNAIAUgBkECdGoiByAHQQRrKAIAIgdBAWpBACAHIAFBAWtHGzYCACAGQQFqIgYgBCgCDCIBSQ0ACwwCCyAGIQULIApBf0YNBEEBIAsgDkF/c2p0IQcgAyAKNgIAIAMgCTYCBCADIAQoAoAFIA1qKAIANgIIIAMgBCgC9AQgDWooAgA2AgwgAyAEKAKQBSIGNgIsIAQoApQFIQggAyAWNgI4IAMgAzYCNCADIANBLGo2AjAgBAJ/IAYgCEkEQCAGIAMpAgg3AgggBiADKQIANwIAIAZBEGoMAQsgA0EwahAYIAMoAiwLNgKQBSAEKAKABSANaiIGIAYoAgBBAWo2AgAgBCgC9AQgDWoiBiAGKAIAIAdqNgIAIAUEQCADKAIkIgggAygCIGoiByADKAIYIg0gAygCFCIGa0ECdUHVAmxBAWtBACAGIA1HG0YEQCADQRBqEAsgAygCJCIIIAMoAiBqIQcgAygCFCEGCyAGIAdB1QJuIg1BAnRqKAIAIAcgDUHVAmxrQQxsaiIGIAo2AgggBiAJNgIEIAYgBTYCACADIAhBAWo2AiQLIApBAWohCiABRQ0BIAMoAiQiCCADKAIgaiIHIAMoAhgiBSADKAIUIgZrQQJ1QdUCbEEBa0EAIAUgBkcbRgRAIANBEGoQCyADKAIkIgggAygCIGohByADKAIUIQYLIAYgB0HVAm4iBUECdGooAgAgByAFQdUCbGtBDGxqIgUgCjYCCCAFIAk2AgQgBSABNgIAIAMgCEEBaiIGNgIkDAILQQAhByAIRQ0AA0AgBCgCDARAIAQoAoAFIQ8gBCgC3AQhBSAEKALoBCESQQAhBgNAIAUgEiAGQQJ0aiIJKAIAQQJ0akEANgIAAkAgBCgCACIBIA8gCSgCAEECdCINaigCACILRg0AIAUgDWohDSABIAtrIgFBICAEKAKwBCILayITTARAIAQoAqwEIg4gBCgCpARGDQggDSAOKAIAIAt0QSAgAWt2NgIAIAQgBCgCsAQgAWoiATYCsAQgAUEgRw0BIARBADYCsAQgBCAOQQRqNgKsBAwBCyAEKAKsBCIOQQRqIhUgBCgCpARGDQcgDigCACEXIAQgFTYCrAQgBCABIBNrIhM2ArAEIA0gDigCBEEgIBNrdiAXIAt0QSAgAWt2cjYCAAsgBSAJKAIAQQJ0IgFqIgkgCSgCACAEKAL0BCABaigCAHI2AgAgBkEBaiIGIAQoAgxJDQALCyADIAQoAtwEIgEoAgAiBjYCMCADIAEoAgQiCTYCNCADIAEoAggiDTYCOCADIBEoAgAiBSgCBCIBNgIsIAUoAgghCyADIAU2AgggAyADQTBqNgIEIAMgA0EsajYCACAFAn8gASALSQRAIAEgDTYCCCABIAk2AgQgASAGNgIAIAFBDGoMAQsgAxAUIAMoAiwLNgIEIAQgBCgCCEEBajYCCCAHQQFqIgcgCEcNAAsLIAMoAiQhBgsgBg0ACwsgA0EANgIkIAMoAhgiBiADKAIUIgVrQQJ1IgFBA08EQANAIAUoAgAQBSADIAMoAhRBBGoiBTYCFCADKAIYIgYgBWtBAnUiAUECSw0ACwtBqgEhCAJAAkACQCABQQFrDgIBAAILQdUCIQgLIAMgCDYCIAsgBSAGRgR/IAYFA0AgBSgCABAFIAVBBGoiBSAGRw0ACyADKAIYIQYgAygCFAshASADIAYgBiABa0F8cWs2AhggAygCECIBBEAgARAFCyADQUBrJAALIAQQKAwBCyAUQQRqQQMQJyEEIBRBnAVqIRECQCABKQMIIAEpAxAiGUIEfFMNACAEIAEoAgAgGadqKAAAIgU2AgAgASABKQMQIhlCBHwiGjcDECAFQSBLDQAgASkDCCAZQgh8Uw0AIAQgASgCACAap2ooAAAiBTYCBCABIAEpAxBCBHw3AxAgBUUNACAEQQA2AgggBEEQaiIPIAEQNkUNACAEQaAEaiABEApFDQAgBEG0BGogARAKRQ0AIARByARqIAEQCkUNACAEKAIEIQxBACEKIwBBQGoiAyQAIAQoAgwhASADQQA2AhAgBEH0BGogASADQRBqIgEQDyAEKAIMIQUgA0EANgIQIARBgAVqIhYgBSABEA8gBCAEKAKMBTYCkAUgA0IANwMgIANCADcDGCADQgA3AxAgARALIAMoAhQgAygCJCIBIAMoAiBqIgVB1QJuIgZBAnRqKAIAIAUgBkHVAmxrQQxsaiIFQgA3AgQgBSAMNgIAAkAgAUEBaiIGRQ0AIARBjAVqIRADQCADKAIUIgUgAygCICIJIAZBAWsiDWoiAUHVAm4iB0ECdGooAgAgASAHQdUCbGtBDGxqIgcoAgghASAHKAIEGiAHKAIAIQggAyANNgIkIAMoAhgiByAFa0ECdUHVAmxBAWtBACAFIAdHGyAGIAlqa0EBakGqBU8EQCAHQQRrKAIAEAUgAyADKAIYQQRrNgIYCyABIApHBEAgASAKSw0CAkAgBCgCjAUiCiAEKAKQBSIGRg0AA0AgBkEQayIFKAIAIAFJDQEgBCgC9AQgBkEMayIHKAIAQQJ0aiAGQQRrKAIANgIAIAUoAgAgAUYNASAEKAKABSAHKAIAQQJ0aiAGQQhrKAIANgIAIAQgBTYCkAUgBSIGIApHDQALCyABIQoLQQAhByAIIAxLDQEgBCAIIBYQwwEiCSAEKAIMTw0BAkACQCAEKAIAIgsgCUECdCINIAQoAoAFaigCACIORgRAIAhFDQEDQCADIAQoAvQEIgEoAgAiBjYCMCADIAEoAgQiCTYCNCADIAEoAggiDTYCOCADIBEoAgAiBSgCBCIBNgIsIAUoAgghCyADIAU2AgggAyADQTBqNgIEIAMgA0EsajYCACAFAn8gASALSQRAIAEgDTYCCCABIAk2AgQgASAGNgIAIAFBDGoMAQsgAxAUIAMoAiwLNgIEIAQgBCgCCEEBajYCCCAIIAdBAWoiB0cNAAsMAQsCQAJAAkACQCAIQQJNBEAgBCgC6AQiBSAJNgIAQQEhBiAEKAIMIgFBAUsNAQwECyAEKAIIIAQoAgRLDQcgCGchBUEAIQFBACEGA0AgDyAGQQR0ahAQIAFBAXRyIQEgBkEBaiIGIAVzQR9HDQALIAhBAXYiBSABSQ0HIAUgAWsiASAIIAFrIgZGBEAgASEFDAMLIAQoAtQEIgUgBCgCzARGDQEgBSgCACAEIAQoAtgEIghBAWoiEjYC2ARBgICAgHggCHZxIQcCQCASQSBGBEAgBEEANgLYBCAEIAVBBGo2AtQEIAcNAQwDCyAHRQ0CCyABIQUgBiEBDAILA0AgBSAGQQJ0aiIHIAdBBGsoAgAiB0EBakEAIAcgAUEBa0cbNgIAIAZBAWoiBiAEKAIMIgFJDQALDAILIAYhBQsgCkF/Rg0EQQEgCyAOQX9zanQhByADIAo2AgAgAyAJNgIEIAMgBCgCgAUgDWooAgA2AgggAyAEKAL0BCANaigCADYCDCADIAQoApAFIgY2AiwgBCgClAUhCCADIBA2AjggAyADNgI0IAMgA0EsajYCMCAEAn8gBiAISQRAIAYgAykCCDcCCCAGIAMpAgA3AgAgBkEQagwBCyADQTBqEBggAygCLAs2ApAFIAQoAoAFIA1qIgYgBigCAEEBajYCACAEKAL0BCANaiIGIAYoAgAgB2o2AgAgBQRAIAMoAiQiCCADKAIgaiIHIAMoAhgiDSADKAIUIgZrQQJ1QdUCbEEBa0EAIAYgDUcbRgRAIANBEGoQCyADKAIkIgggAygCIGohByADKAIUIQYLIAYgB0HVAm4iDUECdGooAgAgByANQdUCbGtBDGxqIgYgCjYCCCAGIAk2AgQgBiAFNgIAIAMgCEEBajYCJAsgCkEBaiEKIAFFDQEgAygCJCIIIAMoAiBqIgcgAygCGCIFIAMoAhQiBmtBAnVB1QJsQQFrQQAgBSAGRxtGBEAgA0EQahALIAMoAiQiCCADKAIgaiEHIAMoAhQhBgsgBiAHQdUCbiIFQQJ0aigCACAHIAVB1QJsa0EMbGoiBSAKNgIIIAUgCTYCBCAFIAE2AgAgAyAIQQFqIgY2AiQMAgtBACEHIAhFDQADQCAEKAIMBEAgBCgCgAUhEiAEKALcBCEFIAQoAugEIRNBACEGA0AgBSATIAZBAnRqIgkoAgBBAnRqQQA2AgACQCAEKAIAIgEgEiAJKAIAQQJ0Ig1qKAIAIgtGDQAgBSANaiENIAEgC2siAUEgIAQoArAEIgtrIhVMBEAgBCgCrAQiDiAEKAKkBEYNCCANIA4oAgAgC3RBICABa3Y2AgAgBCAEKAKwBCABaiIBNgKwBCABQSBHDQEgBEEANgKwBCAEIA5BBGo2AqwEDAELIAQoAqwEIg5BBGoiFyAEKAKkBEYNByAOKAIAIRggBCAXNgKsBCAEIAEgFWsiFTYCsAQgDSAOKAIEQSAgFWt2IBggC3RBICABa3ZyNgIACyAFIAkoAgBBAnQiAWoiCSAJKAIAIAQoAvQEIAFqKAIAcjYCACAGQQFqIgYgBCgCDEkNAAsLIAMgBCgC3AQiASgCACIGNgIwIAMgASgCBCIJNgI0IAMgASgCCCINNgI4IAMgESgCACIFKAIEIgE2AiwgBSgCCCELIAMgBTYCCCADIANBMGo2AgQgAyADQSxqNgIAIAUCfyABIAtJBEAgASANNgIIIAEgCTYCBCABIAY2AgAgAUEMagwBCyADEBQgAygCLAs2AgQgBCAEKAIIQQFqNgIIIAdBAWoiByAIRw0ACwsgAygCJCEGCyAGDQALCyADQQA2AiQgAygCGCIGIAMoAhQiBWtBAnUiAUEDTwRAA0AgBSgCABAFIAMgAygCFEEEaiIFNgIUIAMoAhgiBiAFa0ECdSIBQQJLDQALC0GqASEIAkACQAJAIAFBAWsOAgEAAgtB1QIhCAsgAyAINgIgCyAFIAZGBH8gBgUDQCAFKAIAEAUgBUEEaiIFIAZHDQALIAMoAhghBiADKAIUCyEBIAMgBiAGIAFrQXxxazYCGCADKAIQIgEEQCABEAULIANBQGskAAsgBBAoCyAAKAIMIAIoAgQgAigCAGtBDG1GIQgLIBRBoAVqJAAgCAvvAwEQfwJAIAFBP00EQCAAKAIMIgBBAkkEQEEADwsgAEEBayIDQQNxIQUgAigCACIEKAIAIQECQCAAQQJrQQNJBEBBASEAQQAhAwwBCyADQXxxIQ1BACEDQQEhAANAIAEiAiAEIABBAnRqKAIAIgYgASAGSRsiByAEIABBAWoiDkECdGooAgAiCCAHIAhJGyIJIAQgAEECaiIPQQJ0aigCACIKIAkgCkkbIgsgBCAAQQNqIhBBAnRqKAIAIgwgCyAMSRshASAQIA8gDiAAIAMgAiAGSxsgByAISxsgCSAKSxsgCyAMSxshAyAAQQRqIQAgEUEEaiIRIA1HDQALIAVFDQILA0AgACADIAEgBCAAQQJ0aigCACICSxshAyAAQQFqIQAgASACIAEgAkkbIQEgEkEBaiISIAVHDQALDAELQSAgACgCxAQiAWsiA0EETgRAIAAoAsAEIgIgACgCuARGBEBBAA8LIAIoAgAgACABQQRqIgQ2AsQEIAF0QRx2IQMgBEEgRw0BIABBADYCxAQgACACQQRqNgLABCADDwsgACgCwAQiAkEEaiIEIAAoArgERgRAQQAPCyACKAIAIQUgACAENgLABCAAIAFBHGs2AsQEIAIoAgRBPCABayIAdiAFIAF0IAAgA2t2ciEDCyADC9ILAQp/AkAgAUEASA0AIAEgACgCDCIDIAAoAggiAmtBAnVPDQAgAiABQQJ0aiIEKAIAIgIoAjwhBiACKAI4IQggAyAEQQRqIgJHBEADQCACKAIAIQUgAkEANgIAIAQoAgAhByAEIAU2AgAgBwRAIAcQFwsgBEEEaiEEIAJBBGoiAiADRw0ACyAAKAIMIQMLIAMgBEcEQANAIANBBGsiAygCACECIANBADYCACACBEAgAhAXCyADIARHDQALCyAAIAQ2AgwCQCAAKAIEIgRFDQAgBkEASA0AIAQoAhgiAyAEKAIcIgJGDQADQCAGIAMoAgAoAhhGBEAjAEEQayIJJAACQCADQQRqIgYgBCgCHCIKRgRAIAMhAgwBCyADIQIDQCAGKAIAIQUgBkEANgIAIAIoAgAhCyACIAU2AgAgCwRAIAsoAhAhBSAJIAtBDGo2AgwgCUEMaiIHIAUQHiALKAIEIQUgCSALNgIMIAcgBRAhIAsQBQsgAkEEaiECIAZBBGoiBiAKRw0ACyAEKAIcIQoLIAogAyACIANraiIFRwRAA0AgCkEEayIKKAIAIQcgCkEANgIAIAcEQCAHKAIQIQIgCSAHQQxqNgIMIAlBDGoiAyACEB4gBygCBCECIAkgBzYCDCADIAIQISAHEAULIAUgCkcNAAsLIAQgBTYCHCAJQRBqJAAMAgsgA0EEaiIDIAJHDQALCwJAIAhBBEoNAAJ/IAAgCEEMbGoiBygCFCEDIAcoAhgiBSADa0ECdSIEBEADQCADIAEgAygCAEYNAhogA0EEaiEDIARBAWsiBA0ACwtBAAsiAiAFIAIbIgggBygCGCIFRg0AIAUgCEEEaiIDayICBEAgCCADIAL8CgAACyAHIAVBBGs2AhgLAkAgACgCGCICIAAoAhQiBEYNAEEAIQMgAiAEa0ECdSICQQJPBEAgAkEBcSACQX5xIQdBACECA0AgASAEIANBAnRqIgYoAgAiBUgEQCAGIAVBAWs2AgALIAEgBigCBCIFSARAIAYgBUEBazYCBAsgA0ECaiEDIAJBAmoiAiAHRw0AC0UNAQsgBCADQQJ0aiIDKAIAIgIgAUwNACADIAJBAWs2AgALAkAgACgCJCICIAAoAiAiBEYNAEEAIQMgAiAEa0ECdSICQQJPBEAgAkEBcSACQX5xIQdBACECA0AgASAEIANBAnRqIgYoAgAiBUgEQCAGIAVBAWs2AgALIAEgBigCBCIFSARAIAYgBUEBazYCBAsgA0ECaiEDIAJBAmoiAiAHRw0AC0UNAQsgBCADQQJ0aiIDKAIAIgIgAUwNACADIAJBAWs2AgALAkAgACgCMCICIAAoAiwiBEYNAEEAIQMgAiAEa0ECdSICQQJPBEAgAkEBcSACQX5xIQdBACECA0AgASAEIANBAnRqIgYoAgAiBUgEQCAGIAVBAWs2AgALIAEgBigCBCIFSARAIAYgBUEBazYCBAsgA0ECaiEDIAJBAmoiAiAHRw0AC0UNAQsgBCADQQJ0aiIDKAIAIgIgAUwNACADIAJBAWs2AgALAkAgACgCPCICIAAoAjgiBEYNAEEAIQMgAiAEa0ECdSICQQJPBEAgAkEBcSACQX5xIQdBACECA0AgASAEIANBAnRqIgYoAgAiBUgEQCAGIAVBAWs2AgALIAEgBigCBCIFSARAIAYgBUEBazYCBAsgA0ECaiEDIAJBAmoiAiAHRw0AC0UNAQsgBCADQQJ0aiIDKAIAIgIgAUwNACADIAJBAWs2AgALIAAoAkgiAiAAKAJEIgZGDQBBACEDIAIgBmtBAnUiAEECTwRAIABBAXEgAEF+cSEFQQAhAgNAIAEgBiADQQJ0aiIIKAIAIgBIBEAgCCAAQQFrNgIACyABIAgoAgQiAEgEQCAIIABBAWs2AgQLIANBAmohAyACQQJqIgIgBUcNAAtFDQELIAEgBiADQQJ0aiICKAIAIgBODQAgAiAAQQFrNgIACwuOBAEIfyMAQSBrIgUkACAFIAE2AgggASAAKAIMIgQgACgCCCIGa0ECdU4EQAJAAkACQCABQQFqIgMgBCAGayIJQQJ1IgdLBEAgACgCECAGayIIQQJ1IANPBEAgAyAHa0ECdCIDBEAgBEEAIAP8CwALIAAgAyAEajYCDAwECyADQYCAgIAETw0BQf////8DIAhBAXUiBCADIAMgBEkbIAhB/P///wdPGyIEQYCAgIAETw0CIARBAnQiCBAGIgogCWohBCADIAdrQQJ0IgMEQCAEQQAgA/wLAAsgBCAHQQJ0ayEHIAkEQCAHIAYgCfwKAAALIAAgCCAKajYCECAAIAMgBGo2AgwgACAHNgIIIAZFDQMgBhAFDAMLIAMgB08NAiAEIAYgA0ECdGoiA0cEQANAIARBBGsiBCgCACEGIARBADYCACAGBEAgBhAXCyADIARHDQALCyAAIAM2AgwMAgsQBwALEA4ACwsgAigCOCIDQQRMBEAgBSAAIANBDGxqIgMoAhgiBDYCDCADKAIcIQYgBSADQRRqNgIYIAUgBUEIajYCFCAFIAVBDGo2AhAgAwJ/IAQgBkkEQCAEIAE2AgAgBEEEagwBCyAFQRBqEBwgBSgCDAs2AhggBSgCCCEBCyACIAE2AjwgACgCCCABQQJ0aiIBKAIAIQAgASACNgIAIAAEQCAAEBcLIAVBIGokAAtWAQJ/IAAoAgwiAiAAKAIIIgNHBEBBASACIANrQQJ1IgAgAEEBTRshAkEAIQADQCABIAMgAEECdGooAgAoAjxGBEAgAA8LIABBAWoiACACRw0ACwtBfws8AQF/QX8hAgJAIAFBf0YNACABQQRKDQAgACABQQxsaiIAKAIYIAAoAhQiAGtBAEwNACAAKAIAIQILIAILiAIBB38gACgCBCIDRQRAQQAPCyAAQQRqIQYgASgCACABIAEsAAsiAEEASCIEGyEFIAEoAgQgACAEGyEAAkADQCAFIAMoAhAgA0EQaiADLAAbIgFBAEgiBBsiByADKAIUIAEgBBsiASAAIAAgAUsiBBsiCBATIglBAEggACABSSAJG0EBRgRAIAMoAgAiAw0BQQAPCyAHIAUgCBATIgFBAEggBCABG0EBRw0BIAMoAgQiAw0AC0EADwtBACEBAkAgAyAGRg0AIAMoAhwiACADKAIgIgVGDQAgAiAFIABrEHcgAhB2IQAgAygCICADKAIcIgFrIgIEQCAAIAEgAvwKAAALQQEhAQsgAQvbAQEGfyMAQRBrIgMkAAJAIAAoAhgiBCAAKAIcIgdGBEBBACEEDAELAkADQCADQQA2AgggA0IANwMAIAQoAgAgASADEMgBIQUgAywACyEAAkAgBUUNACADKAIEIAAgAEEASCIFGyIIIAIoAgQgAiwACyIGIAZBAEgiBhtHDQAgAygCACADIAUbIAIoAgAgAiAGGyAIEBNFDQILIABBAEgEQCADKAIAEAULIARBBGoiBCAHRw0AC0EAIQQMAQsgBCgCACEEIABBAE4NACADKAIAEAULIANBEGokACAEC5UhAhV/A34jAEEgayIMJABBDBAGIg5BADYCCCAOIAE2AgQgDkEANgIAIA5BDGoiASESAkACQAJAA0AgAUEEaygCACEWAkACQAJAAkACQAJAIAFBDGsiECgCACIRBEBBACEFIBZB6AdKDQggDEEANgIYIAxCADcDECAAKAIAIgIpAwggAikDECIXVw0IIAIoAgAgF6dqLQAAIQEgAiAXQgF8NwMQIAxBEGoiAyABEHcgAQRAIAAoAgAhAiADEHYhAyACKQMIIAIpAxAiFyABrSIYfFMNAyABBEAgAyACKAIAIBenaiAB/AoAAAsgAiACKQMQIBh8NwMQC0EYEAYiCkIANwIQIApCADcCBCAKIApBBGo2AgAgCiAKQRBqNgIMIAxBEGohAiMAQSBrIgQkAAJAAn8CQAJAIBEoAhAiAUUNACARQRBqIQkgAigCACACIAIsAAsiA0EASCIIGyEHIAIoAgQgAyAIGyEDA0AgByABKAIQIAFBEGogASwAGyIIQQBIIgsbIgYgASgCFCAIIAsbIgggAyADIAhLIgsbIg0QEyITQQBIIAMgCEkgExtBAUYEQCABKAIAIgENAQwCCyAGIAcgDRATIghBAEggCyAIG0EBRgRAIAEoAgQiAQ0BDAILCyABIAlHDQELIAQgAjYCECAEIBFBDGo2AhwgAiEBAkACQCAEKAIcIgcoAgQiAkUEQCAHQQRqIgMhAQwBCyABKAIAIAEgASwACyIDQQBIIggbIQkgASgCBCADIAgbIQgDQCAJIAIiASgCECACQRBqIAIsABsiAkEASCIDGyILIAEoAhQgAiADGyICIAggAiAISSIGGyINEBMiA0EASCACIAhLIAMbQQFGBEAgASIDKAIAIgINAQwCC0EAIQMgCyAJIA0QEyICQQBIIAYgAhtBAUcEQCABIQIMAwsgASgCBCICDQALIAFBBGohAwtBIBAGIgJBADYCACACQRBqIQkCQCAEKAIQIggsAAtBAE4EQCAJIAgoAgg2AgggCSAIKQIANwIADAELIAkgCCgCACAIKAIEEA0LIAIgATYCCCACQgA3AgAgAkEANgIcIAMgAjYCACAHKAIAKAIAIgEEQCAHIAE2AgALIAcoAgQgAhBpQQEhAyAHIAcoAghBAWo2AggLIAQgAzoAGCAEIAI2AhQgBCgCFCICKAIcIQEgAiAKNgIcIAFFBEBBASECDAMLIAEoAhAhAiAEIAFBDGo2AhQgBEEUaiIDIAIQHiABKAIEIQIgBCABNgIUIAMgAhAhQQEMAQsgCkUEQEEAIQIMAgsgCigCECEBIAQgCkEMajYCFCAEQRRqIgIgARAeIAooAgQhASAEIAo2AhQgAiABECEgCiEBQQALIQIgARAFCyAEQSBqJAAgDCwAG0EASARAIAwoAhAQBQsgAg0BDAgLIAFBCGsoAgAiCkUNAwsgDEEANgIQQQEgDEEQaiAAKAIAED9FDQJBACEBIAwoAhAiE0UNAQNAAn9BACEFIwBBIGsiCSQAIAlBADYCGCAJQgA3AxACQAJAIAAoAgAiAykDCCADKQMQIhdXDQAgAygCACAXp2otAAAhAiADIBdCAXw3AxAgCUEQaiIEIAIQdyACBEAgACgCACEDIAQQdiEEIAMpAwggAykDECIXIAKtIhh8Uw0BIAIEQCAEIAMoAgAgF6dqIAL8CgAACyADIAMpAxAgGHw3AxALIAlBADYCDEEBIAlBDGogACgCABA/RQ0AIAkoAgwiAkUNACACrSIZIAAoAgAiAykDCCIXIAMpAxAiGH1VDQAgAkEASA0BIAkgAhAGIgU2AgAgCSACIAVqIgQ2AgggBUEAIAL8CwAgCSAENgIEAkAgGCAZfCIZIBdXBEAgBSADKAIAIBinaiAC/AoAACADIBk3AxAgCUEQaiICIQsjAEEwayIIJAACQCAKKAIEIgRFDQAgCkEEaiEGIAIoAgAgAiACLAALIgJBAEgiAxshBSALKAIEIAIgAxshAyAEIQIDQCAFIAIoAhAgAkEQaiACLAAbIgdBAEgiDRsiDyACKAIUIAcgDRsiByADIAMgB0siDRsiFBATIhVBAEggAyAHSSAVG0EBRgRAIAIoAgAiAg0BDAILIA8gBSAUEBMiB0EASCANIAcbQQFGBEAgAigCBCICDQEMAgsLIAIgBkYNAAJAIAIoAgQiBUUEQCACIQMDQCADIAMoAggiAygCAEcNAAsMAQsDQCAFIgMoAgAiBQ0ACwsgAiAKKAIARgRAIAogAzYCAAsgCiAKKAIIQQFrNgIIAn8CQCACIgciAygCACIFBEAgAigCBCICRQ0BA0AgAiIDKAIAIgINAAsLIAMoAgQiBQ0AIAMoAgghBkEAIQVBAQwBCyAFIAMoAggiBjYCCEEACyENAkAgBigCACICIANGBEAgBiAFNgIAIAMgBEYEQEEAIQIgBSEEDAILIAYoAgQhAgwBCyAGIAU2AgQLIAMtAAwhDyADIAdHBEAgAyAHKAIIIgY2AggCQCAGKAIAIAdGBEAgBiADNgIADAELIAYgAzYCBAsgAyAHKAIAIgY2AgAgBiADNgIIIAMgBygCBCIGNgIEIAYEQCAGIAM2AggLIAMgBy0ADDoADCADIAQgBCAHRhshBAsCQCAERQ0AIA9BAXFFDQAgDQRAA0AgAi0ADCEGAkAgAigCCCIDKAIAIgUgAkcEQCAGQQFxRQRAIAJBAToADCADQQA6AAwgAyADKAIEIgUoAgAiBjYCBCAGBEAgBiADNgIICyAFIAMoAggiBjYCCAJAIAYoAgAgA0YEQCAGIAU2AgAMAQsgBiAFNgIECyAFIAM2AgAgAyAFNgIIIAIgBCAEIAIoAgAiAkYbIQQgAigCBCECCwJAAkACQAJAIAIoAgAiAwRAIAMtAAxBAUcNAQsgAigCBCIFBEAgBS0ADEEBRw0CCyACQQA6AAwgBCACKAIIIgJHBEAgAi0ADA0GCyACQQE6AAwMCAsgAigCBCIFRQ0BCyAFLQAMQQFGDQAgAiEDDAELIANBAToADCACQQA6AAwgAiADKAIEIgQ2AgAgBARAIAQgAjYCCAsgAyACKAIIIgQ2AggCQCAEKAIAIAJGBEAgBCADNgIADAELIAQgAzYCBAsgAyACNgIEIAIgAzYCCCACIQULIAMgAygCCCICLQAMOgAMIAJBAToADCAFQQE6AAwgAiACKAIEIgMoAgAiBDYCBCAEBEAgBCACNgIICyADIAIoAggiBDYCCAJAIAQoAgAgAkYEQCAEIAM2AgAMAQsgBCADNgIECyADIAI2AgAgAiADNgIIDAQLIAZBAXFFBEAgAkEBOgAMIANBADoADCADIAUoAgQiBjYCACAGBEAgBiADNgIICyAFIAMoAggiBjYCCAJAIAYoAgAgA0YEQCAGIAU2AgAMAQsgBiAFNgIECyAFIAM2AgQgAyAFNgIIIAIgBCAEIAIoAgQiAkYbIQQgAigCACECCwJAAkAgAigCACIFRQ0AIAUtAAxBAUYNACACIQMMAQsCQCACKAIEIgMEQCADLQAMQQFHDQELIAJBADoADCACKAIIIgItAAxBAUYgAiAER3ENAiACQQE6AAwMBQsgBQRAIAUtAAxBAUcEQCACIQMMAgsgAigCBCEDCyADQQE6AAwgAkEAOgAMIAIgAygCACIENgIEIAQEQCAEIAI2AggLIAMgAigCCCIENgIIAkAgBCgCACACRgRAIAQgAzYCAAwBCyAEIAM2AgQLIAMgAjYCACACIAM2AgggAiEFCyADIAMoAggiAi0ADDoADCACQQE6AAwgBUEBOgAMIAIgAigCACIDKAIEIgQ2AgAgBARAIAQgAjYCCAsgAyACKAIIIgQ2AggCQCAEKAIAIAJGBEAgBCADNgIADAELIAQgAzYCBAsgAyACNgIEIAIgAzYCCAwDCyACKAIIIgNBBEEAIAIgAygCAEYbaigCACECDAALAAsgBUEBOgAMCyAHKAIcIgIEQCAHIAI2AiAgAhAFCyAHLAAbQQBIBEAgBygCEBAFCyAHEAULIAkoAgQiAiAJKAIAIgRrIQMCQAJAAn8gAiAERgRAQQAhAkEADAELIANBAEgNASADEAYhAiADBEAgAkEAIAP8CwALIAIgA2oLIQcgAwRAIAIgBCAD/AoAAAsCQCALLAALQQBOBEAgCCALKAIINgIQIAggCykCADcDCAwBCyAIQQhqIAsoAgAgCygCBBANC0EAIQUgCEEANgIcIAhCADcCFCAHIAJrIQMgAiAHRwRAIANBAEgNASADEAYhBSADBEAgBUEAIAP8CwALIAggAyAFaiIENgIcIAggBDYCGCAIIAU2AhQLIAMEQCAFIAIgA/wKAAALIAggCjYCLCAIQQhqIgUhAwJAAkACQAJAIAgoAiwiCygCBCIERQRAIAtBBGoiByEDDAELIAMoAgAgAyADLAALIgdBAEgiBhshDSADKAIEIAcgBhshBgNAIA0gBCIDKAIQIANBEGogAywAGyIEQQBIIgcbIg8gAygCFCAEIAcbIgQgBiAEIAZJIhQbIhUQEyIHQQBIIAQgBksgBxtBAUYEQCADIgcoAgAiBA0BDAILQQAhByAPIA0gFRATIgRBAEggFCAEG0EBRwRAIAMhBAwDCyADKAIEIgQNAAsgA0EEaiEHC0EAIQZBKBAGIgRBADYCACAEIAUoAgg2AhggBCAFKQIANwIQIAVCADcCACAFQQA2AgggBEEANgIkIARCADcCHCAFKAIQIg8gBSgCDCINayEFIA0gD0cEQCAFQQBIDQIgBRAGIQYgBQRAIAZBACAF/AsACyAEIAUgBmoiDzYCJCAEIA82AiAgBCAGNgIcCyAFBEAgBiANIAX8CgAACyAEIAM2AgggBEIANwIAIAcgBDYCACALKAIAKAIAIgMEQCALIAM2AgALIAsoAgQgBBBpQQEhByALIAsoAghBAWo2AggLIAggBzoAKCAIIAQ2AiQMAQsQBwALIAgoAhQiAwRAIAggAzYCGCADEAULIAgsABNBAEgEQCAIKAIIEAULIAIEQCACEAULIAhBMGokAAwBCxAHAAsgCSgCACIFRQ0BCyAJIAU2AgQgBRAFCyAXIBlZIQULIAksABtBAEgEQCAJKAIQEAULIAlBIGokACAFDAELEAcAC0UNAyATIAFBAWoiAUcNAAsMAQsgDCwAG0EATg0FIAwoAhAQBQwFCyAMQQA2AgxBASAMQQxqIAAoAgAQP0UNACAMKAIMIgStIAAoAgAiASkDCCABKQMQfVUNACAEDQEgECEBDAILQQAhBQwDC0EAIQUgFiARQQBHaiEHIBAhAQNAAkAgASASSQRAIAEgBzYCCCABQQA2AgQgASAKNgIADAELIAEgDmsiA0EMbUEBaiIBQdaq1aoBTw0FQdWq1aoBIBIgDmtBDG0iAkEBdCIQIAEgASAQSRsgAkGq1arVAE8bIgFB1qrVqgFPDQYgAUEMbCIQEAYiCCADaiIBIAc2AgggAUEANgIEIAEgCjYCACABIANBdG1BDGxqIQIgAwRAIAIgDiAD/AoAAAsgDhAFIAggEGohEiACIQ4LIAFBDGohASAFQQFqIgUgBEcNAAsLIAEgDkcNAAtBASEFCyAOEAUgDEEgaiQAIAUPCxAHAAsQDgALBABBBAsEAEEDC+sEAQ1/An8jAEEQayIGJAAgASgCUCIIIAItABgiAGwhAQJAAkACQCACKAIcIgRBBUcgBEEGR3ENACACLQBUQQFxRQ0AAn8gAUUEQEEAIQBBAAwBCyABQQBIDQMgAigCMCEEIAIoAgAoAgAhAiABQQJ0IgEQBiEAIAEEQCAAIAIgBGogAfwKAAALIAAgAWoLIQEgAygCACICBEAgAyACNgIEIAIQBQsgAyABNgIIIAMgATYCBCADIAA2AgBBASEFDAELAkAgAEUEQCADIAEQDCAIDQFBASEFDAILIABBAnQiBRAGIQQgBQRAIARBACAF/AsACyADIAEQDCAIRQRAQQEhBSAEEAUMAgsgAEH8AXEhDyAAQQNxIQsgAEEESSEQQQAhAQNAIAYgAi0AVAR/IAcFIAIoAkQgB0ECdGooAgALNgIMIAIgBkEMaiACLAAYIAQQXSIFBEAgAygCACEMQQAhDUEAIQ5BACEAAkAgEEUEQANAIAwgAUECdGoiCSAEIABBAnRqIgooAgA2AgAgCSAKKAIENgIEIAkgCigCCDYCCCAJIAooAgw2AgwgAEEEaiEAIAFBBGohASAOQQRqIg4gD0cNAAsgC0UNAQsDQCAMIAFBAnRqIAQgAEECdGooAgA2AgAgAEEBaiEAIAFBAWohASANQQFqIg0gC0cNAAsLIAdBAWoiByAIRw0BCwsgBBAFDAELQQAhAQNAIAYgAi0AVAR/IAEFIAIoAkQgAUECdGooAgALNgIMIAIgBkEMaiACLAAYQQAQXRpBASEFIAFBAWoiASAIRw0ACwsgBkEQaiQAIAUMAQsQBwALCxAAIAAoAgAgAUECdGooAgALEAAgACgCBCAAKAIAa0EBdQsNACAAKAIEIAAoAgBrC5MFAgp/A34jAEHQAGsiBCQAAkACQAJAIAAoAhwtACRBAU0EQCABKQMQIg1CBHwiDCABKQMIVQ0CIAEoAgAgDadqKAAAIQcgASAMNwMQDAELQQEgBEHMAGogARCBAUUNASAEKAJMIQcLIAdFDQEgB60gASkDCCABKQMQfUIFflUNASAAQQRqIAcQDCAAQRBqIQsgACgCICEFA0AgASkDCCINIAEpAxAiDlcNASABKAIAIgIgDqdqLQAAIQYgASAOQgF8Igw3AxAgDCANWQ0BIAIgDKdqLQAAIQggASAOQgJ8Igw3AxAgDCANWQ0BIAIgDKdqLQAAIQMgASAOQgN8Igw3AxAgDCANWQ0BIAIgDKdqLQAAIQIgASAOQgR8NwMQIAZBBEsNASAIQQxrQf8BcUH1AUkNASADRQ0BIARBCGoQQyIJIAYgAyAIIAJBAEcgCEEBayICQQpNBH8gAi0AkGoFQX8LIANsrBBnAkAgACgCHC8BJCICQQh0IAJBCHZyQf//A3FBggJNBEAgASkDECINQgJ8IgwgASkDCFUNAyABKAIAIA2nai8AACEDIAEgDDcDECAEIAM2AgQMAQtBASAEQQRqIAEQgQFFDQIgBCgCBCEDCyAEIAM2AkRB4AAQBiAJEGQhAiAFIAUoAgwgBSgCCGtBAnUgAiAFKAIAKAIIEQcAIAUoAgwgBSgCCGtBAnVBAWsiBkECdCIJIAUoAghqKAIAIAM2AjwgACgCBCAKQQJ0aiAGNgIAIAAoAhQgACgCECICa0ECdSAGTAR/IARBfzYCACALIAZBAWogBBAdIAsoAgAFIAILIAlqIAo2AgBBASEDIApBAWoiCiAHRw0ACwwBC0EAIQMLIARB0ABqJAAgAwsQACAAKAIMIAAoAghrQQJ1CxEAIAAgASAAKAIAKAIMEQEACwcAIAAoAgALvAQCBX8BfiAAKAJARQRAQSAQBiICQgA3AxAgAkEANgIIIAJCADcDACACQgA3AxggACgCQCEDIAAgAjYCQCADBEAgAygCACICBEAgAyACNgIEIAIQBQsgAxAFIAAoAkAhAgsgACACNgIAIAAgAikDEDcDCCACKQMYIQcgAEIANwMwIABCADcDKCAAIAc3AxALAkACQAJ/IAAgAS0AGDoAGCAAIAEoAhw2AhwgACABLQAgOgAgIAAgASkDKDcDKCAAIAEpAzA3AzAgACABKAI4NgI4IAAgASkDCDcDCCAAIAEpAxA3AxAgACABKAI8NgI8IAEoAgAiA0UEQCAAQQA2AgBBAQwBC0EAIAAoAgAiAkUNABogAiADKAIAIgIgAygCBCACa60Q2AEaQQELRQ0AIAAgAS0AVDoAVCAAIAEoAlA2AlAgACABRwRAIABBxABqIAEoAkQiAyABKAJIIgIgAiADa0ECdRBACwJAIAEoAlgiBQRAQSgQBiEEIAUoAgAhASAEQQA2AhAgBEIANwMIIAQgATYCACAFKAIMIgEgBSgCCCIDRwRAIAEgA2siBkEASA0EIAQgBhAGIgI2AgggBCACIAZqIgE2AhAgBgRAIAIgAyAG/AoAAAsgBCABNgIMCyAEIAUpAyA3AyAgBCAFKQMYNwMYIAAoAlghAiAAIAQ2AlggAg0BDAILIAAoAlghAiAAQQA2AlggAkUNAQsgAigCCCIABEAgAiAANgIMIAAQBQsgAhAFCw8LEAcAC+oCAQh/QX8hAwJAIAAoAgQiAkUNACAAQQRqIQYgASgCACABIAEsAAsiAEEASCIEGyEFIAEoAgQgACAEGyEAA0AgBSACKAIQIAJBEGogAiwAGyIBQQBIIgQbIgcgAigCFCABIAQbIgEgACAAIAFLIgQbIggQEyIJQQBIIAAgAUkgCRtBAUYEQCACKAIAIgINAQwCCyAHIAUgCBATIgFBAEggBCABG0EBRgRAIAIoAgQiAg0BDAILCyACIAZGDQAgAigCHCACQRxqIAIsACdBAEgbIQADQCAAIgFBAWohACABLAAAIgJBIEYgAkEJa0EFSXINAAtBASEDAkACQAJAIAJB/wFxQStrDgMBAgACC0EAIQMLIAAsAAAhAiAAIQELQQAhACACQTBrIgJBCU0EQANAIABBCmwgAmshACABLAABIAFBAWohAUEwayICQQpJDQALC0EAIABrIAAgAxshAwsgA0EARyADQX9HcQt4AgF+An8CQCAAQQpLDQAgAikDECIDIAIpAwhZDQAgAigCACADp2osAAAhBSACIANCAXw3AxAgBa0hAyABAn4gBUEASARAIABBAWogASACENcBRQ0CIANC/wCDIAEpAwBCB4aEDAELIANC/wGDCzcDAEEBIQQLIAQL/QMBBn8CQAJAIAFFBEAgAkIAUwRAQQAPCyACpyIBIAAoAgQiBCAAKAIAIgZrIgNLBEAgASAAKAIIIAZrIgVNBEAgASADayIBBEAgBEEAIAH8CwALIAAgASAEajYCBAwDCyABQQBIDQNB/////wcgBUEBdCIEIAEgASAESRsgBUH/////A08bIgUQBiEEIAEgA2siBwRAIAMgBGpBACAH/AsACyADBEAgBCAGIAP8CgAACyAAIAQgBWo2AgggACABIARqNgIEIAAgBDYCACAGRQ0CIAYQBQwCCyABIANPDQEgACABIAZqNgIEDAELIAJCAFMEQEEADwsCQCAAKAIEIgUgACgCACIEayIGrSACWQ0AIAYgAqciA0kEQCADIAAoAgggBGsiB00EQCADIAZrIgMEQCAFQQAgA/wLAAsgACADIAVqNgIEDAILIANBAEgNA0H/////ByAHQQF0IgUgAyADIAVJGyAHQf////8DTxsiBxAGIQUgAyAGayIIBEAgBSAGakEAIAj8CwALIAYEQCAFIAQgBvwKAAALIAAgBSAHajYCCCAAIAMgBWo2AgQgACAFNgIAIARFDQEgBBAFDAELIAMgBk8NACAAIAMgBGo2AgQLIAKnIgNFDQAgACgCACABIAP8CgAACyAAIAApAxhCAXw3AxhBAQ8LEAcAC1ACAn8CfgJ/QQAgACgCICIBKQMIIAEpAxAiA0IEfCIEUw0AGiABKAIAIAOnaigAACECIAEgBDcDEEEAIAJBAEgNABogACgCBCACNgJQQQELC8ILAQh/IwBBIGsiBiQAIAEgAzYCICABIAI2AiggASAENgIEIAAgAyAGQRRqEGYCQCAAKAIADQAgACwAD0EASARAIAAoAgQQBQsgBi0AGyIEIAEgASgCACgCCBEAAEcEQEE4EAYiAUEAOgAyIAFB1QovAAA7ADAgAUHNCikAADcAKCABQcUKKQAANwAgIAFBvQopAAA3ABggAUG1CikAADcAECABQa0KKQAANwAIIAFBpQopAAA3AAAgAEF/NgIAIABBBGogAUEyEA0gARAFDAELIAEgBi0AGSICOgAkIAEgBi0AGiIDOgAlIAJBA2tB/wFxQf0BTQRAQRgQBiIBQQA6ABYgAUHCCykAADcADiABQbwLKQAANwAIIAFBtAspAAA3AAAgAEF7NgIAIABBBGogAUEWEA0gARAFDAELAkAgAkECRw0AQQJBAyAEGyADTw0AQRgQBiIBQQA6ABYgAUGrCykAADcADiABQaULKQAANwAIIAFBnQspAAA3AAAgAEF7NgIAIABBBGogAUEWEA0gARAFDAELIAEoAiAgAkEIdCADciICOwEmAkAgAkH//wNxQYMCSQ0AIAYuAR5BAE4NACMAQRBrIgskAEEkEAYiA0IANwIQIANCADcCBCADQQA2AiAgA0IANwIYIAMgA0EEajYCACADIANBEGo2AgwgC0EMaiIIQQA2AgAgASgCICECIwBBEGsiBSQAAn8CQCADRQ0AIAggAjYCACAFQQA2AghBAEEBIAVBCGogAhA/RQ0BGgJAIAUoAggiDARAA0BBASAFQQRqIAgoAgAQP0UNA0EcEAYiBEIANwIQIARCADcCBCAEIARBBGo2AgAgBCAEQRBqNgIMIAQgBSgCBDYCGCAIIAQQygFFDQIjAEEgayICJAAgAiAENgIIAkAgBEUNACACIAMoAhwiBzYCDCADKAIgIQkgAiADQRhqNgIYIAIgAkEIajYCFCACIAJBDGo2AhAgAwJ/IAcgCUkEQCACQQA2AgggByAENgIAIAdBBGoMAQsgAkEQahCsASACKAIMCzYCHCACKAIIIQQgAkEANgIIIARFDQAgBCgCECEHIAIgBEEMajYCECACQRBqIgkgBxAeIAQoAgQhByACIAQ2AhAgCSAHECEgBBAFCyACQSBqJAAgCkEBaiIKIAxHDQALCyAIIAMQygEMAgsgBCgCECECIAUgBEEMajYCDCAFQQxqIgggAhAeIAQoAgQhAiAFIAQ2AgwgCCACECEgBBAFC0EACyECIAVBEGokAAJAIAIEQCABKAIEIgQoAgQhAiAEIAM2AgQgAgRAIAIQhQEQBQsgAEIANwIIIABCADcCAAwBC0EgEAYiAkEAOgAaIAJB3gwvAAA7ABggAkHWDCkAADcAECACQc4MKQAANwAIIAJBxgwpAAA3AAAgAEF/NgIAIABBBGogAkEaEA0gAhAFIAMQhQEQBQsgC0EQaiQAIAAoAgANASAALAAPQQBODQAgACgCBBAFCyABIAEoAgAoAgwRAABFBEBBKBAGIgFBADoAISABQZsLLQAAOgAgIAFBkwspAAA3ABggAUGLCykAADcAECABQYMLKQAANwAIIAFB+wopAAA3AAAgAEF/NgIAIABBBGogAUEhEA0gARAFDAELIAEgASgCACgCFBEAAEUEQCAGQQhqQeEMEGUhASAAQX82AgAgAEEEaiEAIAEsAAtBAE4EQCAAIAEoAgg2AgggACABKQIANwIADAILIAAgASgCACABKAIEEA0gASwAC0EATg0BIAEoAgAQBQwBCyABIAEoAgAoAhgRAABFBEAgBkEIakHYChBlIQEgAEF/NgIAIABBBGohACABLAALQQBOBEAgACABKAIINgIIIAAgASkCADcCAAwCCyAAIAEoAgAgASgCBBANIAEsAAtBAE4NASABKAIAEAUMAQsgAEIANwIIIABCADcCAAsgBkEgaiQAC7ICAQh/AkACQAJAIAAoAgQiBiAAKAIAIgRrIgVBAnUiAiABSQRAIAAoAgggBGsiA0ECdSABTwRAIAEgAmtBAnQiAQRAIAZBACAB/AsACyAAIAEgBmo2AgQPCyABQYCAgIAETw0CQf////8DIANBAXUiByABIAEgB0kbIANB/P///wdPGyIDQYCAgIAETw0DIANBAnQiCBAGIgkgBWoh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C7sDAQV/IwBBEGsiBCQAIABB9NgANgIAIAAoAvACIQMgAEEANgLwAiADBEAgA0EEayIFKAIAIgEEQCADIAFBBHRqIQIDQCACQRBrIgIgA0cNAAsLIAUQBQsgBCAAQdgBajYCDCAEQQxqEIkBIAAoAsQBIgEEQCAAIAE2AsgBIAEQBQsgACgCuAEiAQRAIAAgATYCvAEgARAFCyAAKAKsASIBBEAgACABNgKwASABEAULIAAoAqABIgEEQCAAIAE2AqQBIAEQBQsgACgCkAEiAgRAA0AgAigCACACEAUiAg0ACwsgACgCiAEhASAAQQA2AogBIAEEQCABEAULIAAoAngiAQRAIAEQBQsgACgCbCIBBEAgARAFCyAAKAJgIgEEQCABEAULIAAoAkgiAQRAIAAgATYCTCABEAULIAAoAjwiAQRAIAEQBQsgACgCMCIBBEAgACABNgI0IAEQBQsgACgCJCIBBEAgACABNgIoIAEQBQsgACgCGCIBBEAgACABNgIcIAEQBQsgACgCDCIBBEAgACABNgIQIAEQBQsgACgCCCEBIABBADYCCCABBEAgARAqCyAEQRBqJAAgAAuQBgEFf0F/IQQCf0F/IAEoAgAiAkF/Rg0AGiACQQFqIgEgAkECayABQQNwGyEEIAJBAWsgAkEDcA0AGiACQQJqCyEGAkACQAJAAkACQCAAKAKoAQ4IAAAEAgQBBAMEC0F/IQEgACgClAEhAkF/IQMgACgCnAEiBSAEQX9HBH8gAigCACAEQQJ0aigCAAVBfwtBAnRqIgMgAygCAEEBajYCACAFIAZBf0cEfyACKAIAIAZBAnRqKAIABUF/C0ECdGoiASABKAIAQQFqNgIADAMLQX8hASAAKAKUASEFQX8hAyACQX9HBEAgBSgCACACQQJ0aigCACEDCyAAKAKcASICIANBAnRqIgMgAygCAEEBajYCACACIARBf0cEfyAFKAIAIARBAnRqKAIABUF/C0ECdGoiASABKAIAQQFqNgIAQX8hASACIAZBf0cEfyAFKAIAIAZBAnRqKAIABUF/C0ECdGoiASABKAIAQQJqNgIADAILQX8hASAAKAKUASEFQX8hAyACQX9HBEAgBSgCACACQQJ0aigCACEDCyAAKAKcASICIANBAnRqIgMgAygCAEEBajYCACACIARBf0cEfyAFKAIAIARB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KAJcIARrIgJBAnUgA08EQCABIAMgBWtBAnRqIQIDQCABQQE2AgAgAUEEaiIBIAJHDQALIAAgAjYCWAwECyADQYCAgIAETw0BQf////8DIAJBAXUiASADIAEgA0sbIAJB/P///wdPGyIHQYCAgIAETw0CIAdBAnQQBiIIIAZqIgIgAyAFa0ECdGohAyACIQEDQCABQQE2AgAgAUEEaiIBIANHDQALIAIgBUECdGshASAGBEAgASAEIAb8CgAACyAAIAggB0ECdGo2AlwgACADNgJYIAAgATYCVCAERQ0DIAQQBQwDCyADIAVPDQIgACAEIANBAnRqNgJYDAILEAcACxAOAAsLCz0BAX8gAEHA6gA2AgAgACgCYCIBBEAgACABNgJkIAEQBQsgACgCVCIBBEAgACABNgJYIAEQBQsgABBXEAULOwEBfyAAQcDqADYCACAAKAJgIgEEQCAAIAE2AmQgARAFCyAAKAJUIgEEQCAAIAE2AlggARAFCyAAEFcLBABBewsEAEF8CwQAQX0LBABBfgsQACAAKAIEIAFBAnRqKAIACwQAQQwLBABBCwsEAEEKCwQAQQkLBABBCAsEAEEHCwQAQQYLBABBBQs8AQF/AkAgACABIAAoAgAoAiQRAQBFDQAgACABIAAoAgAoAigRAQBFDQAgACAAKAIAKAIsEQAAIQILIAILYQECfyMAQRBrIgEkACAABEAgACwAJ0EASARAIAAoAhwQBQsgACgCECECIAEgAEEMajYCCCABQQhqIAIQgAEgACgCBCECIAEgADYCDCABQQxqIAIQTyAAEAULIAFBEGokAAuyAQEDfyMAQRBrIgMkACADIAAgASACEPEBIAAgAygCADYCGCAAQRxqIQEgAEEYaiADQQRqIQIgAywADyEEAkACQAJAIAAsACdBAEgEQCABIAMoAgQgAiAEQQBIIgAbIAMoAgggBCAAGxBVDAELIARBAE4NASABIAMoAgQgAygCCBBUCyADLAAPQQBODQEgAygCBBAFDAELIAEgAigCCDYCCCABIAIpAgA3AgALIANBEGokAAuyAQEDfyMAQRBrIgMkACADIAAgASACEPIBIAAgAygCADYCGCAAQRxqIQEgAEEYaiADQQRqIQIgAywADyEEAkACQAJAIAAsACdBAEgEQCABIAMoAgQgAiAEQQBIIgAbIAMoAgggBCAAGxBVDAELIARBAE4NASABIAMoAgQgAygCCBBUCyADLAAPQQBODQEgAygCBBAFDAELIAEgAigCCDYCCCABIAIpAgA3AgALIANBEGokAAu9AwEDfyMAQSBrIgMkACADQQxqIQIjAEHQAGsiACQAIAAgASkDIDcDSCAAIAEpAxg3A0AgACABKQMQNwM4IAAgASkDCDcDMCAAIAEpAwA3AyggAEEMaiAAQShqIABBHGoQZgJAIAAoAgwiAQRAIAIgATYCACACQQRqIQEgACwAG0EATgRAIAEgACgCGDYCCCABIAApAhA3AgAMAgsgASAAKAIQIAAoAhQQDSAALAAbQQBODQEgACgCEBAFDAELIAAsABtBAEgEQCAAKAIQEAULIAAtACMiAUECTwRAQSAQBiIBQQA6ABogAUH4Cy8AADsAGCABQfALKQAANwAQIAFB6AspAAA3AAggAUHgCykAADcAACAAQX82AgwgAEEQaiABQRoQDSAALAAbIAIgACgCDDYCACACQQRqIQJBAE4EQCACIAAoAhg2AgggAiAAKQIQNwIAIAEQBQwCCyACIAAoAhAgACgCFBANIAAsABtBAEgEQCAAKAIQEAULIAEQBQwBCyACQgA3AgggAkIANwIAIAIgATYCEAsgAEHQAGokACADKAIcIAMsABtBAEgEQCADKAIQEAULIANBIGokAAvRCQEJfyMAQRBrIgckACAHIAE2AgxBIBAGIQEgB0KYgICAgISAgIB/NwIEIAcgATYCACABQdYJKQAANwAQIAFBzgkpAAA3AAggAUHGCSkAADcAACABQQA6ABgjAEEwayIDJAAgBygCDCECAkACQCAAKAIQIgFFDQAgAEEQaiEFA0AgASgCECIEIAJKBEAgASgCACIBDQEMAgsgAiAESgRAIAEoAgQiAQ0BDAILCyABIAVHDQELIANCADcCICADIANBIGo2AhwgA0IANwIUIAMgA0EUajYCECADIAI2AgwgA0EMaiIIKAIAIQQgA0EoaiIJAn8CQCAAQQxqIgYoAgQiAUUEQCAGQQRqIgUhAAwBCwNAIAEiACgCECIBIARKBEAgACIFKAIAIgENAQwCCyABIAROBEAgACECQQAMAwsgACgCBCIBDQALIABBBGohBQtBIBAGIgJCADcCGCACIAQ2AhAgAkEANgIAIAIgAkEYaiIENgIU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cBsgAGoiA0EASA0AGiALKAIAKAJgIANBA24iAkEMbGogAyACQQNsa0ECdGooAgALIgM2AkwgByADNgIIIAcgCDYCDCAKKAIMIAcgBDYCGCAHIAdBCGo2AhQgByAHQQxqNgIQIAhLBEAgCCADNgIAIAogCEEEajYCCAwCCyAHQRBqEBwgCiAHKAIMNgIIDAELIAsgAEEASAR/QX8FIAsoAgAoAmAgDEEMbGogAEEDcEECdGooAgALIgM2AkwgByADNgIIIAcgCigCCCIINgIMIAooAgwhAiAHIAQ2AhggByAHQQhqNgIUIAcgB0EMajYCECAKAn8gAiAISwRAIAggAzYCACAIQQRqDAELIAdBEGoQHCAHKAIMCzYCCCAFQQFxBEBBfyAAQX9GDQMaIAxBA2wgAEcEQCAAQQFrIQAMAwsgAEECaiEADAELQX8gAEF/Rg0CGiAAQQFqIgIgAEECayACQQNwGyEAC0F/IABBf0YNARoLIAsoAgQoAgwgAEECdGooAgALIQAgBUEBaiIFIAlHDQALCyAHQSBqJAAgGCgCYCECIBgoAmQhAAsgBkEBaiIGIAAgAmtBDG1JDQALCyANQSBqJAACQCABBEAgHSgCACIABEAgHSAANgIEIAAQBQsgHSAKKAIENgIAIB0gCigCCDYCBCAdIAooAgw2AgggCigCVCEgDAELIAooAgQiAEUNACAKIAA2AgggABAFCyAKKAJIIgAEQCAAEAULIAooAjAiAARAIAogADYCNCAAEAULIAooAiQiAARAIAogADYCKCAAEAULIAooAhgiAARAIAogADYCHCAAEAULIAooAhQhACAKQQA2AhQgAARAIAAQKgsgCkHgAGokACAgC1oAIAEoAmAhAUEMEAYiACABIAJBDGxqIgEoAgg2AgggACABKQIANwIAIAMoAgAiAQRAIAMgATYCBCABEAULIAMgADYCACADIABBDGoiADYCCCADIAA2AgRBAQtqAQF/An9BACABKAIEIgNFDQAaQQAgASgCCCACQQJ0aigCACgCPCIBQQBIDQAaQQAgAygCGCIAIAMoAhwiAkYNABoCQANAIAAoAgAiAygCGCABRg0BIABBBGoiACACRw0AC0EADAELIAMLCwcAIAEoAgQLaAECfwJ/QQAgASgCDCIAIAEoAggiAUYNABpBASAAIAFrQQJ1IgAgAEEBTRshA0EAIQACQANAIAEgAEECdGooAgAiBCgCPCACRg0BIABBAWoiACADRw0AC0EADAELIARBACAAQX9HGwsLEAAgASgCCCACQQJ0aigCAAvWAgEDfwJ/IwBBIGsiACQAAkAgAhAZIgRB9////wdPDQACQCAEQQpNBEAgACAEOgAfIABBFGohBQwBCyAEQfj///8HcSIGQQhqEAYhBSAAIAZB+P///wdrNgIcIAAgBDYCGCAAIAU2AhQLIAQEQCAFIAIgBPwKAAALIAQgBWpBADoAACADEBkiAkH3////B08NAAJAIAJBCk0EQCAAIAI6ABMgAEEIaiEFDAELIAJB+P///wdxIgRBCGoQBiEFIAAgBEH4////B2s2AhAgACACNgIMIAAgBTYCCAsgAgRAIAUgAyAC/AoAAAsgAiAFakEAOgAAAn9BfyABKAIEIgJFDQAaQX8gAiAAQRRqIABBCGoQyQEiAkUNABogASACKAIYEMYBCyAALAATQQBIBEAgACgCCBAFCyAALAAfQQBIBEAgACgCFBAFCyAAQSBqJAAMAQsQKQALC/wBAQN/An8jAEEgayIAJAAgAhAZIgNB9////wdJBEACQCADQQpNBEAgACADOgAfIABBFGohBAwBCyADQfj///8HcSIFQQhqEAYhBCAAIAVB+P///wdrNgIcIAAgAzYCGCAAIAQ2AhQLIAMEQCAEIAIgA/wKAAALIAMgBGpBADoAACAAQQA6AAwgAEHuwrWrBjYCCCAAQQQ6ABMCf0F/IAEoAgQiAkUNABpBfyACIABBCGogAEEUahDJASICRQ0AGiABIAIoAhgQxgELIAAsABNBAEgEQCAAKAIIEAULIAAsAB9BAEgEQCAAKAIUEAULIABBIGokAAwBCxApAAsLCQAgASACEMcBC/oBAQJ/IwBBQGoiBCQAIARBCGoiBUEAOwEmIAVBADYCACAFQgA3AwggBUIANwMQIAVCADcDGCAFQgA3AB0gBUIANwMQIAUgATYCACAFIAKtNwMIIARBMGogACAFIAMQ8QEgACAEKAIwNgIYIABBHGohASAAQRhqIARBNGohAiAELAA/IQMCQAJAAkAgACwAJ0EASARAIAEgBCgCNCACIANBAEgiABsgBCgCOCADIAAbEFUMAQsgA0EATg0BIAEgBCgCNCAEKAI4EFQLIAQsAD9B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AgggAEEUaiEEIABBCGohBQJAIAEoAgQiAkUNACABQQRqIQggBCgCACAEIAQsAAsiAUEASCIGGyEHIAQoAgQgASAGGyEBAkADQCAHIAIoAhAgAkEQaiACLAAbIgRBAEgiBhsiCSACKAIUIAQgBhsiBCABIAEgBEsiBhsiChATIgtBAEggASAESSALG0EBRgRAIAIoAgAiAg0BDAMLIAkgByAKEBMiBEEASCAGIAQbQQFHDQEgAigCBCICDQALDAELIAIgCEYNACACKAIcIgEgAigCICIERg0AIAQgAWsiAUEDcQ0AIAUgAUECdhAMIAUoAgAiASAFKAIERwRAIAIoAiAgAigCHCICayIEBEAgASACIAT8CgAACwwBCxAVAAsgAygCACIBBEAgAyABNgIEIAEQBQsgAyAAKAIINgIAIAMgACgCDDYCBCADIAAoAhA2AgggACwAH0EASARAIAAoAhQQBQsgAEEgaiQADAELECkACwuAAwEHfwJ/IwBBEGsiAyQAIANBADYCDCACEBkiBUH3////B0kEQAJAIAVBCk0EQCADIAU6AAsgAyEADAELIAVB+P///wdxIgZBCGoQBiEAIAMgBkH4////B2s2AgggAyAFNgIEIAMgADYCAAsgBQRAIAAgAiAF/AoAAAsgACAFakEAOgAAAkAgASgCBCIERQ0AIAFBBGohBSADKAIAIAMgAywACyIBQQBIIgAbIQggAygCBCABIAAbIQcCQANAIAggBCgCECAEQRBqIAQsABsiAUEASCIAGyIGIAQoAhQgASAAGyIJIAcgByAJSyICGyIBEBMiAEEASCAHIAlJIAAbQQFGBEAgBCgCACIEDQEMAwsgBiAIIAEQEyIAQQBIIAIgABtBAUcNASAEKAIEIgQNAAsMAQsCQCAEIAVGDQAgBCgCICAEKAIcIgBrQQRHDQAgAyAAKAAANgIMCwsgAygCDCADLAALQQBIBEAgAygCABAFCyADQRBqJAAMAQsQKQALC8cCAQd/An8jAEEQayIAJAAgAhAZIgNB9////wdJBEACQCADQQpNBEAgACADOgAPIABBBGohBAwBCyADQfj///8HcSIFQQhqEAYhBCAAIAVB+P///wdrNgIMIAAgAzYCCCAAIAQ2AgQLIAMEQCAEIAIgA/wKAAALIAMgBGpBADoAACAALAAPIQICf0EAIAEoAgQiAUUNABogACgCCCACIAJBAEgiBBshAyAAKAIEIABBBGogBBshBANAIAQgASgCECABQRBqIAEsABsiBUEASCIGGyIHIAEoAhQgBSAGGyIFIAMgAyAFSyIGGyIIEBMiCUEASCADIAVJIAkbBH8gAQVBASAHIAQgCBATIgVBAEggBiAFG0EBRw0CGiABQQRqCygCACIBDQALQQALIAJBAEgEQCAAKAIEEAULIABBEGokAAwBCxApAAsLJgEBf0EcEAYiAEEANgIYIABCADcCECAAQgA3AgggAEIANwIAIAALEAAgACgCACABQQF0ai8BAAsQACAAKAIAIAFBAXRqLgEACw0AIAAoAgAgAWotAAALDQAgACgCACABaiwAAAsQACAAKAIAIAFBAnRqKgIACx0AIAAEQCAALAAPQQBIBEAgACgCBBAFCyAAEAULCxUAIAAoAgQgAEEEaiAALAAPQQBIGwsIACAAKAIARQtOAQJ/IwBBEGsiASQAIAAEQCAAKAIQIQIgASAAQQxqNgIMIAFBDGogAhAeIAAoAgQhAiABIAA2AgggAUEIaiACECEgABAFCyABQRBqJAALLAEBf0EYEAYiAEIANwIQIABCADcCBCAAIABBBGo2AgAgACAAQRBqNgIMIAALEAAgACgCZCAAKAJga0EMbQs/AQF/QewAEAYiAEH86gA2AgAgAEEEakEAQdAA/AsAIABCADcCVCAAQcDqADYCACAAQgA3AlwgAEIANwJkIAALEgAgACACNgIgIAAgATYCHEEBCyEBAX9B1AAQBiIAQfzqADYCACAAQQRqQQBB0AD8CwAgAAsZAQF/QQgQBiIAQX82AgQgAEGICDYCACAACwcAIAAqAhQLEAAgACgCCCABQQJ0aioCAAsnAQF/QRgQBiIAQgA3AgggAEF/NgIEIABB3A42AgAgAEIANwIQIAALBwAgACgCPAsHACAAKAIwCwcAIAAoAigLBwAgAC0AIAsHACAALAAYCwcAIAAoAjgLBwAgACgCWAspAQF/QeAAEAYQQyIAQgA3A0AgAEEANgJYIABCADcDSCAAQgA3AE0gAAsJAEHAABAGEEMLIgEBfyAABEAgACgCCCIBBEAgACABNgIMIAEQBQsgABAFCwsyAQJ/QSgQBiIBQX82AgAgAUEIaiIAQgA3AxAgAEEANgIIIABCADcDACAA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AWo2AgAgCUEBaiIEQX9GDQELIAAgBEECdGogAygCWEECajYCAAsgAyADKAJMIgA2AlwgAygCUCECIAMgA0HIAGo2AhAgAyADQdgAajYCDCADIANB3ABqNgIIIAMCfyAAIAJJBEAgACADKAJYNgIAIABBBGoMAQsgA0EIahAJIAMoAlwLIgA2AkwgAEEEaygCACEACyADIAA2AiAgECADQSBqEOQBIAUoAigiASAFKAIkRg0GIAsgCEF/c2ohAgNAIAIgAUEIaygCACIASQRAQX8hAgwLCyAAIAJHDQcgAUEEay0AACEEIAFBDGsiACgCACEBIAUgADYCKCABQQBIBEBBfyECDAsLIAMoAkxBBGsoAgAhACADIAsgAUF/c2o2AhwgAyADQRxqIgE2AlggAyADQTBqNgJcIANBCGogA0HcAGogASADQdgAahCMASADKAIIAn8gBEEBcQRAQX8gAEF/Rg0BGiAAQQFqIgEgAEECayABQQNwGwwBC0F/IABBf0YNABogAEEBayAAQQNwDQAaIABBAmoLNgIMIAUoAigiASAFKAIkRw0ACwwGC0F/IQYgBygCACICIAlBAnRqQX82AgBBfwwDC0F/IQIMBwsgBygCACICIAZBAnRqKAIACyEGIAIgCUECdGogBjYCAEF/IAFBAWoiEiABQQJrIBJBA3AbIgFBf0YNABogAiABQQJ0aigCAAshASACIBhqIAE2AgACfyAEQX9GBEAgAiANakF/NgIAQX8hAUF/DAELAkACQAJAIARBA3AEQCAEQQFrIQEMAQsgBEECaiIBQX9GDQELIAIgDWogAiABQQJ0aigCACICNgIAIAJBf0YNASAHKAIYIAJBAnRqIA82AgAMAQsgAiANakF/NgIAC0F/IQFBfyAEQQFqIgIgBEECayACQQNwGyICQX9GDQAaIAcoAgAgAkECdGooAgAhASACCyECIAMgATYCWCAFKAKEAyIEIAZBAnQiDWoiDyAPKAIAIAQgAUECdGooAgBqNgIAIAcoAhghBCAGQX9HBEAgBCANaiAEIAMoAlhBAnRqKAIANgIACyACIQECQANAIAFBf0YNASAHKAIAIAFBAnRqIAY2AgAgAgJ/QX8gAUEBaiINIAFBAmsgDUEDcBsiAUF/Rg0AGkF/IAcoAgwgAUECdGooAgAiAUF/Rg0AGiABQQFqIg0gAUECayANQQNwGwsiAUcNAAtBfyECDAULIAQgAygCWCICQQJ0akF/NgIAIBUEfyAABSADIAMoAigiADYCXCADKAIsIQEgAyADQSRqNgIQIAMgA0HYAGo2AgwgAyADQdwAajYCCCADAn8gACABSQRAIAAgAjYCACAAQQRqDAELIANBCGoQCSADKAJcCzYCKCADKAJMC0EEayIAIAk2AgAgACgCACEACyADIAA2AiAgECADQSBqEOQBCyAIQQFqIgggC0cNAAsgCyEIC0F/IQIgBSgCCCIGKAIcIAYoAhhrQQJ1IBNKDQAgAygCTCIBIAMoAkhHBEAgBUHIAGohEyAFQTxqIQ0gBUG4AmohDwNAIAFBBGsiACgCACEBIAMgADYCTCADIAE2AlgCQAJAAkAgBS8BjgJBgQRNBEAgBSgC4AIgBSgC6AIiAEEDdmoiASAFKALkAk8NASABLQAAIAUgAEEBajYC6AIgAEEHcXZBAXFFDQEMAgsgDxAQDQELIANBADoACCANIANBCGoQRCADIAUoAkwiADYCXCAFKAJQIQEgAyATNgIQIAMgA0HYAGo2AgwgAyADQdwAajYCCCAAIAFJBEAgACADKAJYNgIAIAUgAEEEajYCTAwCCyADQQhqEAkgBSADKAJcNgJMDAELAkAgCCAFKAIIIgcoAgQgBygCACIJa0ECdUEDbk4NAEF/IQACQCAHKAIYIhACf0F/IAMoAlgiC0F/Rg0AGkF/IAtBAWoiASALQQJrIAFBA3AbIgFBf0YNABogCSABQQJ0aigCAAsiF0ECdGooAgAiAUF/RgRAQQEhBkF/IQQMAQtBASEGQX8hBCABQQFqIhUgAUECayAVQQNwGyIBQX9GDQBBACEGIAFBAWoiACABQQJrIABBA3AbIgBBf0cEQCAJIABBAnRqKAIAIQQLIAEhAAtBfyEBIBAgBEECdGooAgAiEEF/RwRAIBBBAWoiASAQQQJrIAFBA3AbIQELIAAgC0YNACABIAtGDQAgACABRg0AIAtBf0cEQCAHKAIMIAtBAnRqKAIAQX9HDQELIAZFBEAgBygCDCAAQQJ0aigCAEF/Rw0BC0F/IQYCf0F/IAFBf0YNABogBygCDCABQQJ0aigCAEF/Rw0BQX8gAUEBaiIQIAFBAmsgEEEDcBsiEEF/Rg0AGiAJIBBBAnRqKAIACyEVIAMgCEEDbCIQNgIIIAcoAgwiCSAQQQJ0aiALNgIAIAkgC0ECdGogEDYCACAJIAMoAghBAWoiC0ECdGogADYCACAJIABBAnRqIAs2AgAgCSADKAIIQQJqIgBBAnRqIAE2AgAgCSABQQJ0aiAANgIAIAcoAgAiACADKAIIIgtBAnRqIgEgBDYCACABIBc2AgggASAVNgIEIAUoAngiByAEQX8gC0EBaiIBGyIEQQN2Qfz///8BcWoiCSAJKAIAQX4gBHdxNgIAIAFBf0cEQCAAIAFBAnRqKAIAIQYLIAcgBkEDdkH8////AXFqIgEgASgCAEF+IAZ3cTYCAEF/IQEgC0ECaiILQX9HBEAgACALQQJ0aigCACEBCyAHIAFBA3ZB/P///wFxaiIAIAAoAgBBfiABd3E2AgAgA0EBOgBcIA0gA0HcAGoQRCATIANBCGoQiwEgCEEBaiEIDAELDAMLIAMoAkwiASADKAJIRw0ACyAFKAIIIQYLIAggBigCBCAGKAIAa0ECdUEDbkcNACAGKAIcIAYoAhhrQQJ1IQIgAygCJCIEIAMoAigiC0YNAQNAIAYoAhgiCCACQQFrIgFBAnRqIgAoAgBBf0YEQANAIAJBAmshASACQQFrIQIgCCABQQJ0aiIAKAIAQX9GDQALCyAEKAIAIgggAU0EQCADIAY2AgggACgCACEAIANBAToAFCADIAA2AhAgAyAANgIMIABBf0cEQANAIAEgBSgCCCgCACAAQQJ0aiIAKAIARwRAQX8hAgwFCyAAIAg2AgAgA0EIahBvIAMoAhAiAEF/Rw0ACyAFKAIIIQYLIAYoAhgiByABQQJ0aiEAIAhBf0cEQCAHIAhBAnRqIAAoAgA2AgALIABBfzYCAEEBIAh0IQAgBSgCeCIHIAhBA3ZB/P///wFxaiIIAn9BASABdCIJIAcgAUEDdkH8////AXFqIgEoAgBxBEAgCCgCACAAcgwBCyAIKAIAIABBf3NxCzYCACABIAEoAgAgCUF/c3E2AgAgAkEBayECCyAEQQRqIgQgC0cNAAsLIAMoAiQhBAsgBARAIAMgBDYCKCAEEAULIAMoAjgiAARAA0AgACgCACAAEAUiAA0ACwsgAygCMCEAIANBADYCMCAABEAgABAFCyADKAJIIgAEQCADIAA2AkwgABAFCyADQeAAaiQAIAJBf0YNACARKAIAIBEpAxAiGqdqIQEgESkDCCAafachCCAFKAIEKAIgIgAgAC8BJjsBJiAAIAE2AgAgAEIANwMQIAAgCK03AwggBSgCBCIALwEkIgFBCHQgAUEIdnIiCEH//wNxQYEETQRAIAAoAiAiACAAKQMQIA6sfDcDEAsCQCAFKALYASAFKALcAUYNACAFKAIIIgEoAgAhACABKAIEIQECQCAIQf//A3FBgQRPBEAgACABRg0CDAELIAAgAUYNAQNAAkAgDCAKNgIMIAUgDEEMahCQAUUNACAKQQNqIgogBSgCCCIAKAIEIAAoAgBrQQJ1SQ0BDAMLC0EAIQoMAgsDQAJAIAwgCjYCCCAFIAxBCGoQjwFFDQAgCkEDaiIKIAUoAggiACgCBCAAKAIAa0ECdUkNAQwCCwtBACEKDAELIBQQjgEgBSgC2AEiCiAFKALcAUcEQEEAIQ4DQCAKIA5BkAFsIgBqQQRqIAUoAggQfCAWKAIAIgQgAGoiASgChAEiCiABKAKIASIBRwRAA0AgFigCACEIIAwgCigCADYCBCAAIAhqQQRqIAxBBGoQeiAKQQRqIgogAUcNAAsgFigCACEEC0EAIQogACAEakEEahB7RQ0CIA5BAWoiDiAFKALcASAFKALYASIKa0GQAW1JDQALCyAFQbgBaiAFKAIIIgAoAhwgACgCGGtBAnUQRSAFKALYASIEIAUoAtwBRwRAQQAhCgNAIAQgCkGQAWxqIgBB6ABqIAAoAjwgACgCOGtBAnUiACAFKAIIIgEoAhwgASgCGGtBAnUiASAAIAFKGxBFIApBAWoiCiAFKALcASAFKALYASIEa0GQAW1JDQALCyAFIAIQjQEhCgsMAQtBACEKCyAMQdAAaiQAIAoLJQEBfyAAQdwONgIAIAAoAggiAQRAIAAgATYCDCABEAULIAAQBQv3NwIYfwN+IwBB0ABrIgwkACAAQQA2AoQBIAAoApQBBEAgACgCkAEiCQRAA0AgCSgCACAJEAUiCQ0ACwsgAEEANgKQAQJAIAAoAowBIgFFDQAgAUECdCIBRQ0AIAAoAogBQQAgAfwLAAsgAEEANgKUAQsCQAJAIAAoAgQiCS0AJCIBQQh0IAktACVyQYEETQRAIAkoAiAhAgJAIAFB/wFxQQFNBEAgAikDECIZQgR8IhogAikDCFUNAyACKAIAIBmnaigAACELIAIgGjcDEAwBC0EBIAxBEGogAhASRQ0CIAAoAgQiCS0AJCEBIAwoAhAhCwsgACALNgKEAQsgCSgCICECAkAgAUH/AXFBAU0EQCACKQMQIhlCBHwiGiACKQMIVQRAQQAhCQwECyAMIAIoAgAgGadqKAAAIgE2AkwgAiAaNwMQDAELQQEgDEHMAGogAhASRQRAQQAhCQwDCyAAKAIEIQkgDCgCTCEBCyAAIAE2ApwBIAkoAiAhAQJAIAktACRBAU0EQCABKQMQIhlCBHwiGiABKQMIVQRAQQAhCQwECyAMIAEoAgAgGadqKAAAIg82AkggASAaNwMQDAELQQEgDEHIAGogARASRQRAQQAhCQwDCyAMKAJIIQ8LQQAhCSAPQdWq1aoFSw0BIAAoApwBIgEgD0EDbCICSw0BIAJBAXatIAGsIhlCAX0gGX5CAYhWDQEgACgCBCICKAIgIgEpAwgiGiABKQMQIhlXDQEgASgCACIFIBmnai0AACEGIAEgGUIBfCIbNwMQAkAgAi0AJEEBTQRAIBogGUIFfCIZUw0DIAwgBSAbp2ooAAAiCzYCRCABIBk3AxAMAQtBASAMQcQAaiABEBJFDQIgDCgCRCELCyALIA9LDQEgDyALQQNuIAtqSw0BIAAoAgQiASgCICECAkAgAS0AJEEBTQRAIAIpAxAiGUIEfCIaIAIpAwhVDQMgDCACKAIAIBmnaigAACIBNgJAIAIgGjcDEAwBC0EBIAxBQGsgAhASRQ0CIAwoAkAhAQsgASALSw0BIAAgACgCGDYCHEHYABAGEH4hBSAAKAIIIQIgACAFNgIIIAIEQCACECogACgCCEUNAgsgACAAKAKgATYCpAEgAEGgAWogDxBHIAAgACgCrAE2ArABIABBrAFqIA8QRyAAQQA2AkAgAEF/NgJcIABCfzcCVCAAIAAoAiQ2AiggACAAKAIwNgI0IAAgACgCSDYCTCAAQdgBaiITEJIBIBMgBhCRASAAKAIIIA8gACgCnAEgAWoQfUUNASAAKAKcASECIAxBAToAECAAQfgAaiABIAJqIAxBEGoQGgJAIAAoAgQiAS0AJCICQQh0IAEtACVyQYEETQRAIAEoAiAhAQJAIAJBAU0EQCABKQMQIhlCBHwiGiABKQMIVQ0FIAEoAgAgGadqKAAAIQ8gASAaNwMQDAELQQEgDEE8aiABEBJFDQQgDCgCPCEPCyAPRQ0DIA+tIAAoAgQoAiAiASkDCCABKQMQfVUNAyAMQRBqIgFBADsBJiABQQA2AgAgAUIANwMIIAFCADcDECABQgA3AxggAUIANwAdIAAoAgQoAiAiAigCACACKQMQIhmnaiAPaiEFIAIpAwggGX2nIA9rIQcgASACLwEmOwEmIAEgBTYCACABQgA3AxAgASAHrTcDCCAAIAEQRiIPQX9HDQEMAwtBfyEPIAAgASgCIBBGQX9GDQILIABB6AFqIhYiASAANgKQASAAIAAoAgAoAiARAAAoAiAiAigCACACKAIQaiECIAAgACgCACgCIBEAACgCICIFKQMIIAUpAxB9pyEFIAEgACAAKAIAKAIgEQAAKAIgLwEmOwEmIAEgAjYCACABQgA3AxAgASAFrTcDCCAAIAY2AvQCIAxBEGoiAUEAOwEmIAFBADYCACABQgA3AwggAUIANwMQIAFCADcDGCABQgA3AB0CQCAWIAEiFBDpAUUNAEEAIQcjAEHQAGsiAyQAIANBADYCQCADQgA3AjggA0IANwMoIANCADcDICADQYCAgPwDNgIwIANBADYCHCADQgA3AhQgACIGKAJ8IRACQAJAIAtBAEoEQCAAKALYASAAKALcAUchFQNAAkACfwJ/AkACQAJAAkACQAJAIAYtALQCQQFHDQACQAJAIAYoAqgCIgUgBigCsAIiAkEDdmoiACAGKAKsAiIETw0AIAAtAAAgBiACQQFqIgA2ArACIAJBB3F2QQFxRQ0AQQAhAQJAIAQgBSAAQQN2IgdqIgpNBEAgACECDAELIAotAAAgBiACQQJqIgI2ArACIAJBA3YhByAAQQdxdkEBcSEBCyAEIAUgB2oiAEsEQCAALQAAIAYgAkEBajYCsAIgAkEHcXZBAXRBAnEgAXIhAQtBfyEFIAFBAXQOBwINAQ0BDQMNCyADKAI8IgAgAygCOEYEQEF/IQUMDQtBfyEEIAYoAggiBygCGCIRAn9BfyAAQQRrIhIoAgAiAUF/Rg0AGkF/IAFBAWoiACABQQJrIABBA3AbIgBBf0YNABogBygCACAAQQJ0aigCAAsiCkECdGooAgAiAEF/RwRAIABBAWoiAiAAQQJrIAJBA3AbIQQLIAEgBEYEQEF/IQUMDQsgAUF/RwRAQX8hBSAHKAIMIAFBAnRqKAIAQX9HDQ0LIAcoAgwhACAEQX9HBEBBfyEFIAAgBEECdGooAgBBf0cNDQsgACABQQJ0aiAIQQNsIg1BAWoiAjYCACAAIAJBAnQiF2ogATYCACAAIARBAnRqIA1BAmoiDjYCACAAIA5BAnQiGGogBDYCAEF/IQACf0F/IAFBf0YNABoCQCABQQNwBEAgAUEBayECDAELQX8gAUECaiICQX9GDQEaCyAHKAIAIAJBAnRqKAIACyEBAkAgBEF/Rg0AIARBAWoiAiAEQQJrIAJBA3AbIgJBf0YNACAHKAIAIAJBAnRqKAIAIQALQX8hBSABIApGDQwgACAKRg0MIAcoAgAiAiANQQJ0aiAKNgIAIAIgF2ogADYCACACIBhqIAE2AgAgAUF/RwRAIBEgAUECdGogDjYCAAsgBigCeCAKQQN2Qfz///8BcWoiACAAKAIAQX4gCndxNgIAIBIgDTYCAAwJCyADKAI8IgAgAygCOEYNCyAGKAIIIgIoAgwhBCAAQQRrKAIAIgBBf0cEQCAEIABBAnRqKAIAQX9HDQwLIAQgCEEDbCIHQQJBASABQQJGIgobaiINQQJ0IhFqIAA2AgAgBCAAQQJ0aiANNgIAIAMgAigCHCIBNgJMIAIoAiAhBCADIAJBGGo2AgggA0Gc2QA2AgQgAyADQcwAajYCACACAn8gASAESQRAIAFBfzYCACABQQRqDAELIAMQCSADKAJMCyIENgIcIAYoAggiASgCHCABKAIYIg5rQQJ1IBBKDQsgASgCACIBIBFqIAQgAigCGCICa0ECdUEBayIFNgIAIAIgBEcEQCAOIAVBAnRqIA02AgALIAcgB0ECaiAKGyECIAEgB0ECdGogCkECdGoCfyAAQX9GBEAgASACQQJ0akF/NgIAQX8MAQsCQAJAAkAgAEEDcARAIABBAWshBAwBCyAAQQJqIgRBf0YNAQsgASACQQJ0aiABIARBAnRqKAIAIgU2AgAgBUF/Rg0BIA4gBUECdGogAjYCAAwBCyABIAJBAnRqQX82AgALQX8gAEEBaiICIABBAmsgAkEDcBsiAEF/Rg0AGiABIABBAnRqKAIACzYCACADKAI8QQRrIAc2AgAMAgtBfyEFIAMoAjgiDSADKAI8IgBGDQogAEEEayIBKAIAIQcgAyABNgI8AkAgAygCJCIERQRAIAEhAAwBCyADKAIsRQRAIAEhAAwBCyADKAIgAn8gBEH/////B2ogCHEgBGlBAUsiCkUNABogCCAEIAhLDQAaIAggBHALIg5BAnRqKAIAIgJFBEAgASEADAELIAIoAgAiAkUEQCABIQAMAQsCQCAKRQRAIARBAWshBANAAkAgCCACKAIEIgpHBEAgBCAKcSAORg0BIAEhAAwFCyACKAIIIAhGDQMLIAIoAgAiAg0ACyABIQAMAgsDQAJAIAggAigCBCIKRwRAIAQgCk0EfyAKIARwBSAKCyAORg0BIAEhAAwECyACKAIIIAhGDQILIAIoAgAiAg0ACyABIQAMAQsgAyABNgJMIAMoAkAhBCADIAJBDGo2AgQgAyADQThqNgIIIAMgA0HMAGo2AgACQCABIARJBEAgASACKAIMNgIADAELIAMQCSADKAJMIQALIAMgADYCPCADKAI4IQ0LIAAgDUYNCiAAQQRrKAIAIgIgB0YNCiAGKAIIIQQgAkF/RiIRRQRAIAQoAgwgAkECdGooAgBBf0cNCwsgBCgCDCEBIAdBf0cEQCABIAdBAnRqKAIAQX9HDQsLIAEgAkECdGogCEEDbCIKQQJqIg42AgAgASAOQQJ0Ig1qIAI2AgAgASAHQQJ0aiAKQQFqIgU2AgAgASAFQQJ0IhJqIAc2AgAgEQ0CIAJBA3AEQCACQQFrIQEMBQsgAkECaiIBQX9HDQQgBCgCACEFQX8MBQsgAyAIQQNsNgJIIAMgBigCCCIBKAIcIgA2AkwgASgCICECIAMgAUEYajYCCCADQZzZADYCBCADIANBzABqNgIAIAECfyAAIAJJBEAgAEF/NgIAIABBBGoMAQsgAxAJIAMoAkwLIgI2AhwgAygCSEECdCIHIAYoAggiACgCAGogAiABKAIYIgRrIgVBAnUiCkEBayINNgIAIAMgACgCHCIBNgJMIAAoAiAhDiADIABBGGo2AgggA0Gc2QA2AgQgAyADQcwAajYCACAAAn8gASAOSQRAIAFBfzYCACABQQRqDAELIAMQCSADKAJMCyIBNgIcIAAoAgAgB2ogASAAKAIYa0ECdUEBazYCBCADKAJIIQcgAyAGKAIIIgAoAhwiATYCTCAAKAIgIQ4gAyAAQRhqNgIIIANBnNkANgIEIAMgA0HMAGo2AgAgAAJ/IAEgDkkEQCABQX82AgAgAUEEagwBCyADEAkgAygCTAsiATYCHCAAKAIAIAdBAnRqIAEgACgCGGtBAnVBAWs2AgggBigCCCIAKAIcIAAoAhgiAGtBAnUgEEoNAiADKAJIIQcCQAJAIAIgBEcEQCAAIA1BAnRqIAc2AgBBACEBIAVBfEYNAQsgACAFaiAHQQFqNgIAIApBAWoiAUF/Rg0BCyAAIAFBAnRqIAMoAkhBAmo2AgALIAMgAygCPCIANgJMIAMoAkAhASADIANBOGo2AgggAyADQcgAajYCBCADIANBzABqNgIAIAMCfyAAIAFJBEAgACADKAJINgIAIABBBGoMAQsgAxAJIAMoAkwLNgI8CyAGKAIoIgIgBigCJEYNBSALIAhBf3NqIQEDQCABIAJBCGsoAgAiAEkEQEF/IQUMCgsgACABRw0GIAJBBGstAAAhBSACQQxrIgAoAgAhAiAGIAA2AiggAkEASARAQX8hBQwKCyADKAI8QQRrKAIAIQAgAyALIAJBf3NqNgIQIAMgA0EQaiICNgJIIAMgA0EgajYCTCADIANBzABqIAIgA0HIAGoQjAEgAygCAAJ/IAVBAXEEQEF/IABBf0YNARogAEEBaiICIABBAmsgAkEDcBsMAQtBfyAAQX9GDQAaIABBAWsgAEEDcA0AGiAAQQJqCzYCDCAGKAIoIgIgBigCJEcNAAsMBQtBfyEBIAQoAgAiBSAKQQJ0akF/NgIAQX8MAwtBfyEFDAYLIAQoAgAiBSABQQJ0aigCAAshASAFIApBAnRqIAE2AgBBfyACQQFqIhEgAkECayARQQNwGyICQX9GDQAaIAUgAkECdGooAgALIQIgBSASaiACNgIAAn8gB0F/RgRAIAUgDWpBfzYCAEF/IQJBfwwBCwJAAkACQCAHQQNwBEAgB0EBayECDAELIAdBAmoiAkF/Rg0BCyAFIA1qIAUgAkECdGooAgAiAjYCACACQX9GDQEgBCgCGCACQQJ0aiAONgIADAELIAUgDWpBfzYCAAtBfyECQX8gB0EBaiIFIAdBAmsgBUEDcBsiBUF/Rg0AGiAEKAIAIAVBAnRqKAIAIQIgBQshBSADIAI2AkggBCgCGCEHIAFBf0cEQCAHIAFBAnRqIAcgAkECdGooAgA2AgALIAUhAgJAA0AgAkF/Rg0BIAQoAgAgAkECdGogATYCAAJ/QX8gAkEBaiINIAJBAmsgDUEDcBsiAkF/Rg0AGkF/IAQoAgwgAkECdGooAgAiAkF/Rg0AGiACQQFqIg0gAkECayANQQNwGwsiAiAFRw0AC0F/IQUMBAsgByADKAJIIgFBAnRqQX82AgAgFQR/IAAFIAMgAygCGCIANgJMIAMoAhwhAiADIANBFGo2AgggAyADQcgAajYCBCADIANBzABqNgIAIAMCfyAAIAJJBEAgACABNgIAIABBBGoMAQsgAxAJIAMoAkwLNgIYIAMoAjwLQQRrIAo2AgALIAhBAWoiCCALRw0ACyALIQcLQX8hBSAGKAIIIggoAhwgCCgCGGtBAnUgEEoNACADKAI8IgIgAygCOEcEQCAGQcgAaiENIAZBPGohDiAGQbgCaiEVA0AgAkEEayIAKAIAIQEgAyAANgI8IAMgATYCSAJAAkACQCAGLwGOAkGBBE0EQCAGKALgAiAGKALoAiIAQQN2aiIBIAYoAuQCTw0BIAEtAAAgBiAAQQFqNgLoAiAAQQdxdkEBcUUNAQwCCyAVEBANAQsgA0EAOgAAIA4gAxBEIAMgBigCTCIANgJMIAYoAlAhASADIA02AgggAyADQcgAajYCBCADIANBzABqNgIAIAAgAUkEQCAAIAMoAkg2AgAgBiAAQQRqNgJMDAILIAMQCSAGIAMoAkw2AkwMAQsCQCAHIAYoAggiCigCBCAKKAIAIhBrQQJ1QQNuTg0AQX8hAQJAIAooAhgiBAJ/QX8gAygCSCILQX9GDQAaQX8gC0EBaiIAIAtBAmsgAEEDcBsiAEF/Rg0AGiAQIABBAnRqKAIACyIRQQJ0aigCACICQX9GBEBBASEIQX8hAAwBC0EBIQhBfyEAIAJBAWoiEiACQQJrIBJBA3AbIgJBf0YNAEEAIQggAkEBaiIBIAJBAmsgAUEDcBsiAUF/RwRAIBAgAUECdGooAgAhAAsgAiEBC0F/IQIgBCAAQQJ0aigCACIEQX9HBEAgBEEBaiICIARBAmsgAkEDcBshAgsgASALRg0AIAIgC0YNACABIAJGDQAgC0F/RwRAIAooAgwgC0ECdGooAgBBf0cNAQsgCEUEQCAKKAIMIAFBAnRqKAIAQX9HDQELQX8hBAJ/QX8gAkF/Rg0AGiAKKAIMIAJBAnRqKAIAQX9HDQFBfyACQQFqIgggAkECayAIQQNwGyIIQX9GDQAaIBAgCEECdGooAgALIRIgAyAHQQNsIhA2AgAgCigCDCIIIBBBAnRqIAs2AgAgCCALQQJ0aiAQNgIAIAggAygCAEEBaiILQQJ0aiABNgIAIAggAUECdGogCzYCACAIIAMoAgBBAmoiAUECdGogAjYCACAIIAJBAnRqIAE2AgAgCigCACIBIAMoAgAiC0ECdGoiAiAANgIAIAIgETYCCCACIBI2AgQgBigCeCIIIABBfyALQQFqIgAbIgJBA3ZB/P///wFxaiIKIAooAgBBfiACd3E2AgAgAEF/RwRAIAEgAEECdGooAgAhBAsgCCAEQQN2Qfz///8BcWoiACAAKAIAQX4gBHdxNgIAQX8hAiALQQJqIgBBf0cEQCABIABBAnRqKAIAIQILIAggAkEDdkH8////AXFqIgAgACgCAEF+IAJ3cTYCACADQQE6AEwgDiADQcwAahBEIA0gAxCLASAHQQFqIQcMAQsMAwsgAygCPCICIAMoAjhHDQALIAYoAgghCAsgByAIKAIEIAgoAgBrQQJ1QQNuRw0AIAgoAhwgCCgCGGtBAnUhBSADKAIUIgQgAygCGCILRg0BA0AgCCgCGCIAIAVBAWsiAkECdGoiASgCAEF/RgRAA0AgBUECayECIAVBAWshBSAAIAJBAnRqIgEoAgBBf0YNAAsLIAQoAgAiACACTQRAIAMgCDYCACABKAIAIQEgA0EBOgAMIAMgATYCCCADIAE2AgQgAUF/RwRAA0AgAiAGKAIIKAIAIAFBAnRqIgEoAgBHBEBBfyEFDAULIAEgADYCACADEG8gAygCCCIBQX9HDQALIAYoAgghCAsgCCgCGCIHIAJBAnRqIQEgAEF/RwRAIAcgAEECdGogASgCADYCAAsgAUF/NgIAQQEgAHQhASAGKAJ4IgcgAEEDdkH8////AXFqIgACf0EBIAJ0IgogByACQQN2Qfz///8BcWoiAigCAHEEQCAAKAIAIAFyDAELIAAoAgAgAUF/c3ELNgIAIAIgAigCACAKQX9zcTYCACAFQQFrIQULIARBBGoiBCALRw0ACwsgAygCFCEECyAEBEAgAyAENgIYIAQQBQsgAygCKCICBEADQCACKAIAIAIQBSICDQALCyADKAIgIQAgA0EANgIgIAAEQCAAEAULIAMoAjgiAARAIAMgADYCPCAAEAULIANB0ABqJAAgBUF/Rg0AIBQoAgAgFCkDECIZp2ohASAUKQMIIBl9pyECIAYoAgQoAiAiACAALwEmOwEmIAAgATYCACAAQgA3AxAgACACrTcDCCAGKAIEIgAvASQiAUEIdCABQQh2ciICQf//A3FBgQRNBEAgACgCICIAIAApAxAgD6x8NwMQCwJAIAYoAtgBIAYoAtwBRg0AIAYoAggiASgCACEAIAEoAgQhAQJAIAJB//8DcUGBBE8EQCAAIAFGDQIMAQsgACABRg0BA0ACQCAMIAk2AgwgBiAMQQxqEJABRQ0AIAlBA2oiCSAGKAIIIgAoAgQgACgCAGtBAnVJDQEMAwsLQQAhCQwCCwNAAkAgDCAJNgIIIAYgDEEIahCPAUUNACAJQQNqIgkgBigCCCIAKAIEIAAoAgBrQQJ1SQ0BDAILC0EAIQkMAQsgFhCOASAGKALYASIJIAYoAtwBRwRAQQAhCwNAIAkgC0GQAWwiAGpBBGogBigCCBB8IBMoAgAiASAAaiICKAKEASIJIAIoAogBIgJHBEADQCATKAIAIQEgDCAJKAIANgIEIAAgAWpBBGogDEEEahB6IAlBBGoiCSACRw0ACyATKAIAIQELQQAhCSAAIAFqQQRqEHtFDQIgC0EBaiILIAYoAtwBIAYoAtgBIglrQZABbUkNAAsLIAZBuAFqIAYoAggiACgCHCAAKAIYa0ECdRBFIAYoAtgBIgEgBigC3AFHBEBBACEJA0AgASAJQZABbGoiAEHoAGogACgCPCAAKAI4a0ECdSIAIAYoAggiASgCHCABKAIYa0ECdSIBIAAgAUobEEUgCUEBaiIJIAYoAtwBIAYoAtgBIgFrQZABbUkNAAsLIAYgBRCNASEJCwwBC0EAIQkLIAxB0ABqJAAgCQsjAQF/IABB3A42AgAgACgCCCIBBEAgACABNgIMIAEQBQsgAAsWACAAKAIwIgAgASAAKAIAKAIQEQEACxYAIAAoAjAiACABIAAoAgAoAgwRAQALFAAgACgCMCIAIAAoAgAoAiQRAAALqQEBA38gAEGI2AA2AgAgACgCMCEBIABBADYCMCABBEAgASABKAIAKAIEEQIACyAAQeDnADYCACAAKAIUIgEEQCAAIAE2AhggARAFCyAAKAIIIgEEQCABIgIgACgCDCIDRwRAA0AgA0EEayIDKAIAIQIgA0EANgIAIAIEQCACIAIoAgAoAgQRAgALIAEgA0cNAAsgACgCCCECCyAAIAE2AgwgAhAFCyAAEAULpwEBA38gAEGI2AA2AgAgACgCMCEBIABBADYCMCABBEAgASABKAIAKAIEEQIACyAAQeDnADYCACAAKAIUIgEEQCAAIAE2AhggARAFCyAAKAIIIgEEQCABIgIgACgCDCIDRwRAA0AgA0EEayIDKAIAIQIgA0EANgIAIAIEQCACIAIoAgAoAgQRAgALIAEgA0cNAAsgACgCCCECCyAAIAE2AgwgAhAFCyAACxQAIAAoAjAiACAAKAIAKAIcEQAACxQAIAAoAjAiACAAKAIAKAIYEQAAC9sKAgJ/AX4gACgCICIBKQMIIAEpAxAiA1cEQEEADwsgASgCACADp2otAAAhAiABIANCAXw3AxAgACgCMCEBIABBADYCMCABBEAgASABKAIAKAIEEQIACwJAAkACfwJAAkACQCACDgMAAQIEC0GAAxAGIgFB9NgANgIAIAFBBGpBAEHQAPwLACABQgA3A2AgAUF/NgJcIAFCfzcCVCABQgA3A2ggAUIANwNwIAFCADcDeCABQgA3A4ABIAFCADcDiAEgAUIANwOQASABQgA3ApwBIAFBgICA/AM2ApgBIAFCADcCpAEgAUIANwKsASABQgA3ArQBIAFCADcCvAEgAUIANwLEASABQgA3AswBIAFC/////w83AtQBIAFCADcC3AEgAUHoAWoiAkEAOwEmIAJBADYCACACQgA3AwggAkIANwMQIAJCADcDGCACQgA3AB0gAUGQAmoiAkEAOwEmIAJBADYCACACQgA3AwggAkIANwMQIAJCADcDGCACQgA3AB0gAUG4AmoiAkIANwAFIAJCADcCACABQcgCaiICQQA7ASYgAkEANgIAIAJCADcDCCACQgA3AxAgAkIANwMYIAJCADcAHSABQQA2AvgCIAFCADcD8AIgAQwCC0GoAxAGIgFBqNkANgIAIAFBBGpBAEHQAPwLACABQgA3A2AgAUF/NgJcIAFCfzcCVCABQgA3A2ggAUIANwNwIAFCADcDeCABQgA3A4ABIAFCADcDiAEgAUIANwOQASABQgA3ApwBIAFBgICA/AM2ApgBIAFCADcCpAEgAUIANwKsASABQgA3ArQBIAFCADcCvAEgAUIANwLEASABQgA3AswBIAFC/////w83AtQBIAFCADcC3AEgAUHoAWoiAkEAOwEmIAJBADYCACACQgA3AwggAkIANwMQIAJCADcDGCACQgA3AB0gAUGQAmoiAkEAOwEmIAJBADYCACACQgA3AwggAkIANwMQIAJCADcDGCACQgA3AB0gAUG4AmoiAkIANwAFIAJCADcCACABQcgCaiICQQA7ASYgAkEANgIAIAJCADcDCCACQgA3AxAgAkIANwMYIAJCADcAHSABQgA3A4gDIAFCADcDgAMgAUIANwP4AiABQgA3A/ACIAFBkANqIgJCADcABSACQgA3AgAgAUJ/NwOgAyABDAELQbgDEAYiAUHY2QA2AgAgAUEEakEAQdAA/AsAIAFCADcDYCABQX82AlwgAUJ/NwJUIAFCADcDaCABQgA3A3AgAUIANwN4IAFCADcDgAEgAUIANwOIASABQgA3A5ABIAFCADcCnAEgAUGAgID8AzYCmAEgAUIANwKkASABQgA3AqwBIAFCADcCtAEgAUIANwK8ASABQgA3AsQBIAFCADcCzAEgAUL/////DzcC1AEgAUIANwLcASABQegBaiICQQA7ASYgAkEANgIAIAJCADcDCCACQgA3AxAgAkIANwMYIAJCADcAHSABQZACaiICQQA7ASYgAkEANgIAIAJCADcDCCACQgA3AxAgAkIANwMYIAJCADcAHSABQbgCaiICQgA3AAUgAkIANwIAIAFByAJqIgJBADsBJiACQQA2AgAgAkIANwMIIAJCADcDECACQgA3AxggAkIANwAdIAFCADcDiAMgAUIANwOAAyABQgA3A/gCIAFCADcD8AIgAUIANwOgAyABQoKAgIDwADcDmAMgAUJ/NwOQAyABQgA3A6gDIAFCADcDsAMgAQshASAAKAIwIQIgACABNgIwIAJFDQEgAiACKAIAKAIEEQIACyAAKAIwIgENAEEADwsgASAAIAEoAgAoAggRAQALFgAgACgCMCIAIAEgACgCACgCFBEBAAt+AQN/IABB4OcANgIAIAAoAhQiAgRAIAAgAjYCGCACEAULIAAoAggiAgRAIAIiASAAKAIMIgNHBEADQCADQQRrIgMoAgAhASADQQA2AgAgAQRAIAEgASgCACgCBBECAAsgAiADRw0ACyAAKAIIIQELIAAgAjYCDCABEAULIAALGwAgACgCLEUEQEEADwsgACAAKAIAKAIwEQAAC5gB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Cy4BAX8CQCABKAJYIgFFDQAgASgCAEECRw0AIAAgASgCCCgAADYCBEEBIQILIAILAgALC+5vGwBBhAgL5FA4BAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACAAAAAkAAAAKAAAACwAAAAwAAAANAAAAmDoAAEQEAADEBwAATjVkcmFjbzI4QXR0cmlidXRlT2N0YWhlZHJvblRyYW5zZm9ybUUALSsgICAwWDB4ACVzOiVkOiAlcwB2ZWN0b3IAL2Vtc2RrL2Vtc2NyaXB0ZW4vc3lzdGVtL2xpYi9saWJjeHhhYmkvc3JjL3ByaXZhdGVfdHlwZWluZm8uY3BwAHNraXBfYXR0cmlidXRlX3RyYW5zZm9ybQBiYWRfYXJyYXlfbmV3X2xlbmd0aABiYXNpY19zdHJpbmcAY2F0Y2hpbmcgYSBjbGFzcyB3aXRob3V0IGFuIG9iamVjdD8AVXNpbmcgaW5jb21wYXRpYmxlIGRlY29kZXIgZm9yIHRoZSBpbnB1dCBnZW9tZXRyeS4ARmFpbGVkIHRvIGRlY29kZSBwb2ludCBhdHRyaWJ1dGVzLgBGYWlsZWQgdG8gaW5pdGlhbGl6ZSB0aGUgZGVjb2Rlci4AVW5rbm93biBtaW5vciB2ZXJzaW9uLgBVbmtub3duIG1ham9yIHZlcnNpb24uAElucHV0IGlzIG5vdCBhIG1lc2guAFVuc3VwcG9ydGVkIGdlb21ldHJ5IHR5cGUuAE5vdCBhIERyYWNvIGZpbGUuAElucHV0IGlzIG5vdCBhIHBvaW50IGNsb3VkLgBVbnN1cHBvcnRlZCBlbmNvZGluZyBtZXRob2QuAEZhaWxlZCB0byBkZWNvZGUgbWV0YWRhdGEuAEZhaWxlZCB0byBkZWNvZGUgZ2VvbWV0cnkgZGF0YS4AKG51bGwpAFB1cmUgdmlydHVhbCBmdW5jdGlvbiBjYWxsZWQhAEtkVHJlZUF0dHJpYnV0ZXNEZWNvZGVyOiBjb21wcmVzc2lvbiBsZXZlbCAlaSBub3Qgc3VwcG9ydGVkLgoARmxvYXRQb2ludHNUcmVlRGVjb2RlcjogY29tcHJlc3Npb24gbGV2ZWwgJWkgbm90IHN1cHBvcnRlZC4KAFZlcnNpb24gbm90IHN1cHBvcnRlZC4gCgBNZXRob2Qgbm90IHN1cHBvcnRlZC4gCgAAAAAAAACMBwAADwAAABAAAAARAAAAEgAAABMAAAAUAAAAFQAAABYAAAAXAAAACwAAABgAAAAZAAAAmDoAAJgHAADEBwAATjVkcmFjbzMwQXR0cmlidXRlUXVhbnRpemF0aW9uVHJhbnNmb3JtRQAAAABwOgAAzAcAAE41ZHJhY28xOEF0dHJpYnV0ZVRyYW5zZm9ybUUAAAAAAAAAACQIAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAJAAAACUAAACYOgAAMAgAAEwIAABONWRyYWNvMTdBdHRyaWJ1dGVzRGVjb2RlckUAcDoAAFQIAABONWRyYWNvMjZBdHRyaWJ1dGVzRGVjb2RlckludGVyZmFjZUUAAAAAAAAAALQIAAAmAAAAJwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAoAAAAKQAAACoAAACYOgAAwAgAACQIAABONWRyYWNvMjNLZFRyZWVBdHRyaWJ1dGVzRGVjb2RlckUAAAAAAAAAEAkAACsAAAAsAAAALQAAAC4AAAAvAAAAMAAAADEAAAAyAAAAMwAAAHA6AAAYCQAATjVkcmFjbzI2U2VxdWVudGlhbEF0dHJpYnV0ZURlY29kZXJFAAAAAP////8AAAAAgAkAADQAAAA1AAAAHAAAADYAAAA3AAAAHwAAACAAAAAhAAAAOAAAADkAAAA6AAAAOwAAADwAAACYOgAAjAkAACQIAABONWRyYWNvMzdTZXF1ZW50aWFsQXR0cmlidXRlRGVjb2RlcnNDb250cm9sbGVyRQAAAAAA+AkAAD0AAAA+AAAAPwAAAC4AAAAvAAAAMAAAAEAAAAAyAAAAQQAAAEIAAABDAAAARAAAAEUAAACYOgAABAoAABAJAABONWRyYWNvMzNTZXF1ZW50aWFsSW50ZWdlckF0dHJpYnV0ZURlY29kZXJFAAAAAABsCgAARgAAAEcAAABIAAAASQAAAEoAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAUgAAAJg6AAB4CgAAHAsAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAmDoAACgLAADACwAATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAACYOgAAzAsAACAMAABONWRyYWNvMjNQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVFRQCYOgAALAwAAGAMAABONWRyYWNvMzdQcmVkaWN0aW9uU2NoZW1lVHlwZWREZWNvZGVySW50ZXJmYWNlSWlpRUUAmDoAAGwMAACYDAAATjVkcmFjbzMyUHJlZGljdGlvblNjaGVtZURlY29kZXJJbnRlcmZhY2VFAABwOgAAoAwAAE41ZHJhY28yNVByZWRpY3Rpb25TY2hlbWVJbnRlcmZhY2VFAAAAAADACwAARgAAAFMAAAAjAAAASQAAACMAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAIwAAAAAAAAA8DQAARgAAAFQAAABVAAAASQAAAFYAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAVwAAAJg6AABIDQAAHAsAAE41ZHJhY280NU1lc2hQcmVkaWN0aW9uU2NoZW1lTXVsdGlQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAAAAAsDgAAWAAAAFkAAABaAAAASQAAAFsAAABLAAAATAAAAE0AAABOAAAATwAAAFwAAABRAAAAXQAAAJg6AAA4DgAAHAsAAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAAAAAAAoDwAAXgAAAF8AAABgAAAASQAAAGEAAABiAAAAYwAAAGQAAABOAAAATwAAAGUAAABRAAAAZgAAAJg6AAA0DwAAHAsAAE41ZHJhY28zNk1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAAAAAAEBAAAGcAAABoAAAAaQAAAEkAAABqAAAAawAAAGwAAABtAAAATgAAAE8AAABuAAAAbwAAAHAAAACYOgAAHBAAABwLAABONWRyYWNvNDRNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc1BvcnRhYmxlRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAAAAAAABEAAHEAAAByAAAAcwAAAEkAAAB0AAAAdQAAAHYAAAB3AAAATgAAAE8AAAB4AAAAUQAAAHkAAACYOgAADBEAABwLAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAAAAAAAAA0BEAAHoAAAB7AAAAfAAAAH0AAAB+AAAAmDoAANwRAACIEgAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAHA6AACQEgAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAAAAAAB4EwAARgAAAH8AAACAAAAASQAAAIEAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAggAAAJg6AACEEwAAHBQAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAmDoAACgUAADACwAATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAAAAAAAA8BQAAEYAAACDAAAAhAAAAEkAAACFAAAASwAAAEwAAABNAAAATgAAAE8AAABQAAAAUQAAAIYAAACYOgAA/BQAABwUAABONWRyYWNvNDVNZXNoUHJlZGljdGlvblNjaGVtZU11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAAAA1BUAAIcAAACIAAAAiQAAAEkAAACKAAAASwAAAEwAAABNAAAATgAAAE8AAACLAAAAUQAAAIwAAACYOgAA4BUAABwUAABONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAAAAAAAAxBYAAI0AAACOAAAAjwAAAEkAAACQAAAAkQAAAJIAAACTAAAATgAAAE8AAACUAAAAUQAAAJUAAACYOgAA0BYAABwUAABONWRyYWNvMzZNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc0RlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAAAAAKAXAACWAAAAlwAAAJgAAABJAAAAmQAAAJoAAACbAAAAnAAAAE4AAABPAAAAnQAAAJ4AAACfAAAAmDoAAKwXAAAcFAAATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAAAAAIQYAACgAAAAoQAAAKIAAABJAAAAowAAAKQAAAClAAAApgAAAE4AAABPAAAApwAAAFEAAACoAAAAmDoAAJAYAAAcFAAATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAAAARBkAAKkAAACqAAAAqwAAAKwAAACtAAAAmDoAAFAZAADwGQAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAHA6AAD4GQAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAAAAAADUGgAARgAAAK4AAACvAAAASQAAALAAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAsQAAAJg6AADgGgAAwAsAAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFRUUAAAAAAAAAAHgbAACyAAAAswAAALQAAAAuAAAALwAAALUAAABAAAAAMgAAAEEAAAC2AAAAtwAAALgAAAC5AAAAmDoAAIQbAAD4CQAATjVkcmFjbzMyU2VxdWVudGlhbE5vcm1hbEF0dHJpYnV0ZURlY29kZXJFAAAAAAAA7BsAALoAAAC7AAAAvAAAAL0AAAC+AAAAvwAAAMAAAADBAAAAwgAAAMMAAADEAAAAUQAAAMUAAACYOgAA+BsAAKgcAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAJg6AAC0HAAAWB0AAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAAAAmDoAAGQdAAAgDAAATjVkcmFjbzIzUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQAAAAAAAOAdAADGAAAAxwAAAMgAAADJAAAAygAAAJg6AADsHQAApB4AAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAABwOgAArB4AAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAAAAAAAAoB8AAMsAAADMAAAAzQAAAL0AAADOAAAAzwAAANAAAADRAAAAwgAAAMMAAADSAAAAUQAAANMAAACYOgAArB8AAFAgAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAJg6AABcIAAAWB0AAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAAAADCEAANQAAADVAAAA1gAAANcAAADYAAAAmDoAABghAADEIQAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAHA6AADMIQAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAAAAAAC0IgAA2QAAANoAAADbAAAAvQAAANwAAADdAAAA3gAAAN8AAADCAAAAwwAAAOAAAABRAAAA4QAAAJg6AADAIgAAWB0AAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQAAAAAAYCMAAOIAAADjAAAA5AAAAOUAAADmAAAA5wAAAOgAAADpAAAA6gAAAOsAAADsAAAAUQAAAO0AAACYOgAAbCMAACwkAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAAACYOgAAOCQAAOgkAABONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAAJg6AAD0JAAAIAwAAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRUVFAAAAAAB8JQAA7gAAAO8AAADwAAAA8QAAAPIAAACYOgAAiCUAAEwmAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAcDoAAFQmAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAAAAAAFQnAADzAAAA9AAAAPUAAADlAAAA9gAAAPcAAAD4AAAA+QAAAOoAAADrAAAA+gAAAFEAAAD7AAAAmDoAAGAnAAAQKAAATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQCYOgAAHCgAAOgkAABONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAAAAAADcKAAA/AAAAP0AAAD+AAAA/wAAAAABAACYOgAA6CgAAKApAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAcDoAAKgpAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAAAAAJwqAADZAAAAAQEAAAIBAADlAAAAAwEAAAQBAAAFAQAABgEAAOoAAADrAAAABwEAAFEAAAAIAQAAmDoAAKgqAADoJAAATjVkcmFjbzI4UHJlZGljdGlvblNjaGVtZURlbHRhRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQAAAAAAAAAAYCsAAAkBAAAKAQAACwEAAC4AAAAvAAAADAEAAEAAAAAyAAAAQQAAAA0BAABDAAAARAAAAA4BAAAPAQAAEAEAAJg6AABsKwAA+AkAAE41ZHJhY28zOFNlcXVlbnRpYWxRdWFudGl6YXRpb25BdHRyaWJ1dGVEZWNvZGVyRQAAAAAAAAAA3CsAABEBAAASAQAAEwEAABQBAAAjAAAAFQEAABYBAAAXAQAAGAEAABkBAAAaAQAAGwEAACMAAACYOgAA6CsAADA0AABONWRyYWNvMTFNZXNoRGVjb2RlckUAAAAAAAAAPCwAABwBAAAdAQAAEwEAAB4BAAAfAQAAFQEAABYBAAAXAQAAIAEAACEBAAAiAQAAIwEAACQBAACYOgAASCwAANwrAABONWRyYWNvMjJNZXNoRWRnZWJyZWFrZXJEZWNvZGVyRQBB8dgAC/UFLQAAJQEAACYBAAAnAQAAKAEAACkBAAAqAQAAKwEAACwBAAAtAQAALgEAAP////8AAAAAkC0AAC8BAAAwAQAAMQEAADIBAAAzAQAANAEAADUBAAA2AQAANwEAADgBAAAAAAAA9C0AADkBAAA6AQAAOwEAADwBAAA9AQAAPgEAAD8BAABAAQAAQQEAAEIBAACYOgAADC0AAFgtAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbElOU18zMU1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbERlY29kZXJFRUUAcDoAAGAtAABONWRyYWNvMzVNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbEludGVyZmFjZUUAAACYOgAAnC0AAFgtAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbElOU180MU1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbFByZWRpY3RpdmVEZWNvZGVyRUVFAAAAmDoAAAAuAABYLQAATjVkcmFjbzI2TWVzaEVkZ2VicmVha2VyRGVjb2RlckltcGxJTlNfMzhNZXNoRWRnZWJyZWFrZXJUcmF2ZXJzYWxWYWxlbmNlRGVjb2RlckVFRQAAAAAAAGguAABDAQAARAEAAEUBAACYOgAAdC4AAOQuAABONWRyYWNvMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMxX0VFRUUAAAAAcDoAAOwuAABONWRyYWNvMTNUcmF2ZXJzZXJCYXNlSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMxX0VFRUUAAAAAAADkLgAARgEAAEcBAABFAQBB9N4AC44JAQAAAAMAAAAFAAAABwAAAAAAAACcLwAASAEAAEkBAABKAQAASwEAAJg6AACoLwAAMDAAAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMjhNYXhQcmVkaWN0aW9uRGVncmVlVHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzJfRUVFRUVFAABwOgAAODAAAE41ZHJhY28xNVBvaW50c1NlcXVlbmNlckUAAAD/////AAAAAGwwAABMAQAATQEAAE4BAACYOgAAeDAAAOQwAABONWRyYWNvMjhNYXhQcmVkaWN0aW9uRGVncmVlVHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQAAAABwOgAA7DAAAE41ZHJhY28xM1RyYXZlcnNlckJhc2VJTlNfMTFDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMV9FRUVFAAAAAAAAAOQwAABPAQAAUAEAAE4BAAAAAAAAdDEAAFEBAABSAQAAUwEAAFQBAACYOgAAgDEAADAwAABONWRyYWNvMjJNZXNoVHJhdmVyc2FsU2VxdWVuY2VySU5TXzE5RGVwdGhGaXJzdFRyYXZlcnNlcklOU18xMUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMyX0VFRUVFRQAAAAAAAAAUMgAAVQEAAFYBAABOAQAAmDoAACAyAADkMAAATjVkcmFjbzE5RGVwdGhGaXJzdFRyYXZlcnNlcklOU18xMUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMxX0VFRUUAAAAAAJgyAABXAQAAWAEAAFkBAABaAQAAmDoAAKQyAAAwMAAATjVkcmFjbzIyTWVzaFRyYXZlcnNhbFNlcXVlbmNlcklOU18xOURlcHRoRmlyc3RUcmF2ZXJzZXJJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzJfRUVFRUVFAAAAAAAAbDMAABEBAABbAQAAEwEAABQBAABcAQAAFQEAABYBAAAXAQAAGAEAABkBAAAaAQAAGwEAAF0BAACYOgAAeDMAANwrAABONWRyYWNvMjFNZXNoU2VxdWVudGlhbERlY29kZXJFAAAAAACwMwAAXgEAAF8BAABgAQAAYQEAAJg6AAC8MwAAMDAAAE41ZHJhY28xNUxpbmVhclNlcXVlbmNlckUAAAAAAAAAMDQAABEBAABiAQAAYwEAABQBAAAjAAAAZAEAABYBAAAXAQAAGAEAQZDoAAvhA0ZhaWxlZCB0byBwYXJzZSBEcmFjbyBoZWFkZXIuAAAAcDoAADg0AABONWRyYWNvMTdQb2ludENsb3VkRGVjb2RlckUAAAAAAIA0AAARAQAAZQEAAGMBAAAUAQAAZgEAAGcBAAAWAQAAFwEAABgBAACYOgAAjDQAADA0AABONWRyYWNvMjNQb2ludENsb3VkS2RUcmVlRGVjb2RlckUAAAAAAAAA3DQAABEBAABoAQAAYwEAABQBAABpAQAAagEAABYBAAAXAQAAGAEAAJg6AADoNAAAMDQAAE41ZHJhY28yN1BvaW50Q2xvdWRTZXF1ZW50aWFsRGVjb2Rl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`,mh=null})),gh=0,_h=1,vh=2,yh=2,bh=4,xh=6,Sh=9,Ch=0,wh=1,Th=`DRACO`,Eh=1,Dh=67108864,Oh=null;function kh(){return Oh||(Oh=Promise.resolve().then(()=>(hh(),lh)).then(e=>e.default())),Oh}function Ah(e,t,n,r){let i=Math.max(1,r.num_components()),a=n.num_points()*i,o;switch(r.data_type()){case Sh:if(o=new e.DracoFloat32Array,!t.GetAttributeFloatForAllPoints(n,r,o))return null;break;case yh:if(o=new e.DracoUInt8Array,!t.GetAttributeUInt8ForAllPoints(n,r,o))return null;break;case bh:if(o=new e.DracoUInt16Array,!t.GetAttributeUInt16ForAllPoints(n,r,o))return null;break;case xh:if(o=new e.DracoUInt32Array,!t.GetAttributeUInt32ForAllPoints(n,r,o))return null;break;default:return null}let s=o.size(),c=r.data_type()===Sh,l;l=c?new Float32Array(a):r.data_type()===bh?new Uint16Array(a):r.data_type()===xh?new Uint32Array(a):new Uint8Array(a);for(let e=0;e<s&&e<a;e++)l[e]=o.GetValue(e);return e.destroy(o),l}var jh=[[190,190,190],[166,166,166],[139,119,101],[35,190,35],[60,179,60],[30,160,30],[255,170,60],[255,110,190],[190,190,190],[60,120,255],[255,235,80],[255,200,120],[200,120,255],[255,120,255],[255,235,60],[255,200,40],[120,200,255],[200,160,255],[255,60,60]];async function Mh(e,t){let n=await kh(),r=e.u32(),i=e.offset;e.u32();let a=e.i32(),o=e.i32(),s=e.i32();e.i32();let c=e.u32();if(c>16)throw Error(`[s3m] Draco 自定义属性个数异常:texCoordCount=${c}`);let l=[];for(let t=0;t<c;t++)l.push(e.i32());e.u32();let u=e.u32();if(u<16||u>e.remaining)throw Error(`[s3m] Draco 流长度异常:dracoSize=${u},剩余 ${e.remaining} 字节`);let d=e.bytes(u);if(String.fromCharCode(...d.subarray(0,5))!==Th)throw Error(`[s3m] Draco 流缺少 "DRACO" magic,容器头解析错位`);e.align4();let f=e.string();e.align4();let p=new Map;try{let e=JSON.parse(f);for(let[t,n]of Object.entries(e)){let e=l[n];e!==void 0&&p.set(e,t)}}catch{}if(t.customVertexAttribute=f?Ih(f):void 0,r>0){let t=e.offset-i;t!==r&&console.warn(`[s3m] Draco 载荷长度不符:声明 ${r},实读 ${t}`)}let m=new n.Decoder,h=new n.PointCloud;try{let e=m.GetEncodedGeometryType(d);if(e!==Ch)throw Error(`[s3m] Draco ${e===wh?`三角网格`:`未知`} 几何暂未实现(仅支持点云)`);let r=m.DecodeArrayToPointCloud(d,d.length,h);if(!r.ok())throw Error(`[s3m] Draco 解码失败:${r.error_msg()}`);let i=h.num_points();if(!Number.isInteger(i)||i<0||i>Dh)throw Error(`[s3m] Draco 点数异常:${i}`);if(i===0)return t.verticesCount=0,[Nh()];let c=null;for(let e=0;e<h.num_attributes();e++){let r=m.GetAttribute(h,e),l=r.unique_id(),u=Math.max(1,r.num_components());if(l===a||r.attribute_type()===gh){if(r.data_type()!==Sh)throw Error(`[s3m] Draco 位置属性不是 float32(dt=${r.data_type()})`);let e=Ah(n,m,h,r);if(!e)throw Error(`[s3m] Draco 位置属性读取失败`);let a=new Float32Array(i*3);for(let t=0;t<i;t++)a[t*3]=e[t*u]??0,a[t*3+1]=e[t*u+1]??0,a[t*3+2]=e[t*u+2]??0;Ph(t,`position`,new Uint8Array(a.buffer),3,12,0,void 0,`f32`)}else if(l===s||r.attribute_type()===vh){let e=Ah(n,m,h,r);if(e){let n=new Uint8Array(i*4),r=e instanceof Float32Array;for(let t=0;t<i;t++){let i=t*u;r?(n[t*4]=Fh(e[i]??1),n[t*4+1]=Fh(e[i+1]??1),n[t*4+2]=Fh(e[i+2]??1)):(n[t*4]=e[i]??255,n[t*4+1]=e[i+1]??255,n[t*4+2]=e[i+2]??255),n[t*4+3]=u>=4&&!r?e[i+3]??255:255}Ph(t,`color`,n,4,4,0,void 0,`u8`)}}else if(l!==o&&r.attribute_type()!==_h&&p.get(l)===`PointCloudClassCode`&&u===1){let e=Ah(n,m,h,r);if(e&&!(e instanceof Float32Array)){c=new Uint8Array(i);for(let t=0;t<i;t++)c[t]=e[t]??0}}}if(t.attrLocation.position===void 0)throw Error(`[s3m] Draco 点云缺少 position 属性`);if(t.attrLocation.color===void 0&&c){let e=new Uint8Array(i*4);for(let t=0;t<i;t++){let n=jh[c[t]]??jh[0];e[t*4]=n[0],e[t*4+1]=n[1],e[t*4+2]=n[2],e[t*4+3]=255}Ph(t,`color`,e,4,4,0,void 0,`u8`)}return t.verticesCount=i,[Nh()]}finally{try{n.destroy(m),n.destroy(h)}catch{}}}function Nh(){return{indexCount:0,indexType:0,useIndex:0,primitiveType:Eh,indices:null,passNames:[]}}function Ph(e,t,n,r,i,a=0,o,s=`f32`){e.attrLocation[t]=e.vertexAttributes.length,e.vertexAttributes.push({semantic:t,data:n,components:r,stride:i,offsetInBytes:a,divisor:o,dtype:s})}function Fh(e){return e<=0?0:e>=1?255:Math.round(e*255)}function Ih(e){try{return JSON.parse(e)}catch{return e}}var Lh=i({default:()=>Rh}),Rh,zh=n((()=>{Rh=(function(){"use strict";var e=`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`,t=`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`,n=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),r=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=`object`)return{supported:!1};var i=e;WebAssembly.validate(n)&&(i=t);var a,o=WebAssembly.instantiate(s(i),{}).then(function(e){a=e.instance,a.exports.__wasm_call_ctors()});function s(e){for(var t=new Uint8Array(e.length),n=0;n<e.length;++n){var i=e.charCodeAt(n);t[n]=i>96?i-71:i>64?i-65:i>47?i+4:i>46?63:62}for(var a=0,n=0;n<e.length;++n)t[a++]=t[n]<60?r[t[n]]:(t[n]-60)*64+t[++n];return t.buffer.slice(0,a)}function c(e,t,n,r,i,o){var s=a.exports.sbrk,c=n+3&-4,l=s(c*r),u=s(i.length),d=new Uint8Array(a.exports.memory.buffer);d.set(i,u);var f=e(l,n,r,u,i.length);if(f==0&&o&&o(l,c,r),t.set(d.subarray(l,l+n*r)),s(l-s(0)),f!=0)throw Error(`Malformed buffer data: `+f)}var l={0:``,1:`meshopt_decodeFilterOct`,2:`meshopt_decodeFilterQuat`,3:`meshopt_decodeFilterExp`,NONE:``,OCTAHEDRAL:`meshopt_decodeFilterOct`,QUATERNION:`meshopt_decodeFilterQuat`,EXPONENTIAL:`meshopt_decodeFilterExp`},u={0:`meshopt_decodeVertexBuffer`,1:`meshopt_decodeIndexBuffer`,2:`meshopt_decodeIndexSequence`,ATTRIBUTES:`meshopt_decodeVertexBuffer`,TRIANGLES:`meshopt_decodeIndexBuffer`,INDICES:`meshopt_decodeIndexSequence`};return{ready:o,supported:!0,decodeVertexBuffer:function(e,t,n,r,i){c(a.exports.meshopt_decodeVertexBuffer,e,t,n,r,a.exports[l[i]])},decodeIndexBuffer:function(e,t,n,r){c(a.exports.meshopt_decodeIndexBuffer,e,t,n,r)},decodeIndexSequence:function(e,t,n,r){c(a.exports.meshopt_decodeIndexSequence,e,t,n,r)},decodeGltfBuffer:function(e,t,n,r,i,o){c(a.exports[u[i]],e,t,n,r,a.exports[l[o]])}}})()})),Q={POSITION:1,POSITION_W:2,NORMAL:4,TANGENT:8,TEXCOORD0:16,TEXCOORD1:32,COLOR:64,COLOR1:128,CUSTOM0:512,CUSTOM1:1024,GS_SCALE:131073,GS_ROTATION:131074},Bh=13,Vh=null;function Hh(){return Vh||(Vh=Promise.resolve().then(()=>(zh(),Lh)).then(async e=>{let t=e.default;if(!t?.supported)throw Error(`[s3m] 当前环境不支持 WebAssembly,无法解码 MeshOpt 几何`);return await t.ready,t})),Vh}function Uh(e){return e<0?-1:1}function Wh(e,t,n,r){let i=e,a=t,o=1-Math.abs(i)-Math.abs(a);if(o<0){let e=(1-Math.abs(a))*Uh(i);a=(1-Math.abs(i))*Uh(a),i=e}let s=Math.hypot(i,a,o)||1;n[r]=i/s,n[r+1]=a/s,n[r+2]=o/s}function Gh(e,t,n){return{semantic:e,data:new Uint8Array(t.buffer,t.byteOffset,t.byteLength),components:n,stride:n*4,offsetInBytes:0,dtype:`f32`}}function Kh(e,t,n){return{semantic:e,data:t,components:n,stride:n,offsetInBytes:0,dtype:`u8`}}function qh(e,t,n){switch(e){case Q.NORMAL:case Q.TEXCOORD0:case Q.TEXCOORD1:return 4;case Q.COLOR:case Q.COLOR1:return 4;case Q.CUSTOM0:case Q.CUSTOM1:return 4*Math.max(1,n);case Q.GS_SCALE:case Q.GS_ROTATION:return t&64?4:4*Math.max(1,n);default:return 8}}function Jh(e,t,n,r){let i=t*n;if(!Number.isSafeInteger(i)||i>67108864)throw Error(`[s3m] MeshOpt 流尺寸异常:${t} 顶点 × ${n}B = ${i}B`);let a=new Uint8Array(i);return e.decodeVertexBuffer(a,t,n,r,r.length),a}var Yh={[Q.POSITION]:`position`,[Q.POSITION_W]:`positionW`,[Q.NORMAL]:`normal`,[Q.TANGENT]:`tangent`,[Q.TEXCOORD0]:`uv`,[Q.TEXCOORD1]:`uv2`,[Q.COLOR]:`color`,[Q.COLOR1]:`color2`,[Q.CUSTOM0]:`custom0`,[Q.CUSTOM1]:`custom1`,[Q.GS_SCALE]:`gsScale`,[Q.GS_ROTATION]:`gsRotation`};function Xh(e,t,n,r,i){let a=e.get(t);a||(a={dtype:n,components:r,chunks:[],length:0},e.set(t,a)),a.chunks.push(i),a.length+=i.length}function Zh(e,t){for(let n of e){let e=n.indices;if(!e||n.indexCount<=0||e.byteLength<n.indexCount*4)continue;let r=new DataView(e.buffer,e.byteOffset,e.byteLength);for(let e=0;e<n.indexCount;e++)r.setUint32(e*4,r.getUint32(e*4,!0)+t,!0)}}async function Qh(e,t){let n=await Hh(),r=e.u32();t.compressOptions=r;let i=e.u32();if(i>64)throw Error(`[s3m] MeshOpt 块数异常:blockCount=${i}`);let a={vertexCount:0,compressOptions:r,minVertices:[0,0,0],vertScale:1,texCoordScale:[[0,0],[0,0]],texCoordOffset:[[0,0],[0,0]],streams:[]},o=new Map,s=[],c=0,l=!1;for(let u=0;u<i;u++){let i=e.u32(),d=e.f32(),f=e.f64(),p=e.f64(),m=e.f64(),h=[],g=[];for(let t=0;t<4;t++){let n=e.f64(),r=e.f64();t%2==0?h.push([n,r]):g.push([n,r])}let _=e.i32();u===0&&(a.minVertices=[f,p,m],a.vertScale=d,a.texCoordScale=h,a.texCoordOffset=g);for(let t=0;t<_;t++){let t=e.i32(),s=0;(t===Q.CUSTOM0||t===Q.CUSTOM1||t===Q.GS_SCALE||t===Q.GS_ROTATION)&&(s=e.i32());let c=e.i32(),l=e.bytes(c);if(e.align4(),t===Q.TANGENT){a.streams.push({semantic:`tangent`,bytes:c,stride:0});continue}let u=qh(t,r,s),_;try{_=Jh(n,i,u,l)}catch{if(t===Q.TEXCOORD0||t===Q.TEXCOORD1)_=Jh(n,i,8,l);else throw Error(`[s3m] MeshOpt 属性解码失败(semantic=0x${t.toString(16)})`)}let v=Yh[t]??`semantic_0x${t.toString(16)}`;if(a.streams.push({semantic:v,bytes:c,stride:i>0?_.byteLength/i:0}),t===Q.POSITION){let e=new Uint16Array(_.buffer,_.byteOffset,i*4),t=new Float32Array(i*3);for(let n=0;n<i;n++)t[n*3]=f+e[n*4]*d,t[n*3+1]=p+e[n*4+1]*d,t[n*3+2]=m+e[n*4+2]*d;Xh(o,`position`,`f32`,3,t)}else if(t===Q.NORMAL){let e=new Int16Array(_.buffer,_.byteOffset,i*2),t=new Float32Array(i*3);for(let n=0;n<i;n++)Wh(e[n*2]/32767,e[n*2+1]/32767,t,n*3);Xh(o,`normal`,`f32`,3,t)}else if(t===Q.COLOR)Xh(o,`color`,`u8`,4,_);else if(t===Q.COLOR1)Xh(o,`color2`,`u8`,4,_);else if(t===Q.TEXCOORD0||t===Q.TEXCOORD1){let e=t===Q.TEXCOORD0?0:1,n=h[e]??[0,0],r=g[e]??[0,0],a=new Float32Array(i*2);if(_.byteLength===i*8){let e=new Float32Array(_.buffer,_.byteOffset,i*2);a.set(e)}else{let e=new Uint16Array(_.buffer,_.byteOffset,i*2);for(let t=0;t<i;t++)a[t*2]=r[0]+e[t*2]*n[0],a[t*2+1]=r[1]+e[t*2+1]*n[1]}Xh(o,e===0?`uv`:`uv2`,`f32`,2,a)}else(t===Q.CUSTOM0||t===Q.CUSTOM1||t===Q.GS_SCALE||t===Q.GS_ROTATION)&&Xh(o,Yh[t],`u8`,u,_)}let v=e.string();if(e.align4(),v&&!l){l=!0;try{t.customVertexAttribute=JSON.parse(v)}catch{t.customVertexAttribute=v}}let y=await $h(e);c>0&&Zh(y,c),s.push(...y),c+=i}i===0&&s.push(...await $h(e)),a.vertexCount=c,t.verticesCount=c,t.meshOptInfo=a;for(let[e,n]of o){let r=c*n.components;if(n.dtype===`f32`){let i=new Float32Array(r),a=0;for(let e of n.chunks)i.set(e,a),a+=e.length;t.vertexAttributes.push(Gh(e,i,n.components))}else{let i=new Uint8Array(r),a=0;for(let e of n.chunks)i.set(e,a),a+=e.length;t.vertexAttributes.push(Kh(e,i,n.components))}}for(let e=0;e<t.vertexAttributes.length;e++)t.attrLocation[`a${t.vertexAttributes[e].semantic}`]=e;return{info:a,indexPackages:s}}async function $h(e){let t=await Hh(),n=e.i32(),r=[];for(let i=0;i<n;i++){let n=e.i32();if(n<1)continue;let i=e.u8(),a=e.u8(),o=e.u8();e.skip(1);let s=e.i32(),c;if(o===Bh)c=e.bytes(s*4),e.align4();else{let r=e.bytes(s);e.align4(),c=new Uint8Array(n*4),t.decodeIndexBuffer(c,n,4,r)}let l=e.i32(),u=[];for(let t=0;t<l;t++)u.push(e.string());e.align4();let d=n>0?c.byteLength/n:0,f=d===2?0:d===4?3:i===1||i===3?i:0;r.push({indexCount:n,indexType:f,useIndex:a,primitiveType:o,indices:c,passNames:u})}return r}var eg=7156595;function tg(e){return e.byteLength<8?!1:new DataView(e,0,8).getUint32(0,!0)===eg}async function ng(e){let t=globalThis.DecompressionStream;if(!t)throw Error(`[s3m] 当前环境无 DecompressionStream,请通过 options.inflate 注入解压实现`);let n=new Blob([e]).stream().pipeThrough(new t(`deflate`)),r=await new Response(n).arrayBuffer();return new Uint8Array(r)}var rg=e=>e%4==0?e:e+(4-e%4);function ig(e,t=0){let n=parseFloat(e??``);return Number.isFinite(n)?n:t}function ag(e,t){let n=RegExp(`<(?:[A-Za-z0-9_-]+:)?${t}[^>]*>([^<]*)<\\/(?:[A-Za-z0-9_-]+:)?${t}>`,`i`).exec(e);return n?n[1].trim():null}function og(e,t){let n=RegExp(`<(?:[A-Za-z0-9_-]+:)?${t}[^>]*>([^<]*)<\\/(?:[A-Za-z0-9_-]+:)?${t}>`,`gi`);return[...e.matchAll(n)].map(e=>e[1].trim())}function sg(e){let t=(e??``).toUpperCase();return t.includes(`DISTANCE`)?0:t.includes(`GEOMETRIC`)||t===`2`?2:1}function cg(e){let t=[...e.matchAll(/<(?:[A-Za-z0-9_-]+:)?PagedLOD[^>]*>([\s\S]*?)<\/(?:[A-Za-z0-9_-]+:)?PagedLOD>/gi)],n=[];for(let e of t){let t=e[1],r=(ag(t,`GeoDeModMatrix`)??`1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1`).split(`,`).map(e=>parseFloat(e.trim())).filter(e=>Number.isFinite(e)),i=/<(?:[A-Za-z0-9_-]+:)?BoundingSphere[^>]*>([\s\S]*?)<\/(?:[A-Za-z0-9_-]+:)?BoundingSphere>/i.exec(t)?.[1]??``;n.push({geoNames:og(t,`GeoName`),matrix:r.length===16?r:[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],childTile:ag(t,`RangeDataList`)??``,rangeMode:sg(ag(t,`RangeMode`)),rangeValue:ig(ag(t,`RangeList`)),center:{x:ig(ag(i,`x`)),y:ig(ag(i,`y`)),z:ig(ag(i,`z`))},radius:ig(ag(i,`radius`))})}return n}function lg(e){let t=[...e.matchAll(/<(?:[A-Za-z0-9_-]+:)?material[^>]*>([\s\S]*?)<\/(?:[A-Za-z0-9_-]+:)?material>/gi)],n=[];for(let e of t){let t=e[1];n.push({name:ag(t,`name`)??``,diffuse:(e=>{let n=RegExp(`<(?:[A-Za-z0-9_-]+:)?${e}[^>]*>([\\s\\S]*?)<\\/(?:[A-Za-z0-9_-]+:)?${e}>`,`i`).exec(t);if(!n)return{r:1,g:1,b:1,a:1};let r=n[1];return{r:ig(ag(r,`r`),1),g:ig(ag(r,`g`),1),b:ig(ag(r,`b`),1),a:ig(ag(r,`a`),1)}})(`Diffuse`),shininess:ig(ag(t,`Shininess`)),cullMode:ag(t,`CullMode`)??ag(t,`cullmode`)??`none`,transparentSorting:(ag(t,`TransparentSorting`)??`false`).toLowerCase()===`true`,textureName:void 0,addressMode:void 0});let r=/<(?:[A-Za-z0-9_-]+:)?texture[^>]*>([\s\S]*?)<\/(?:[A-Za-z0-9_-]+:)?texture>/i.exec(t);if(r){let e=r[1],t=n[n.length-1];t.textureName=ag(e,`name`)??void 0;let i=/<(?:[A-Za-z0-9_-]+:)?AddressMode[^>]*>([\s\S]*?)<\/(?:[A-Za-z0-9_-]+:)?AddressMode>/i.exec(e);i&&(t.addressMode={u:ig(ag(i[1],`u`)),v:ig(ag(i[1],`v`))})}}return n}function ug(e,t){let n=e.u32();if(n>4096)throw Error(`[s3m] S3M 1.x 网格数异常:${n}`);let r=[];for(let i=0;i<n;i++){let n=String(e.u32()),i=e.u32(),a=e.u32(),o=e.u32();if(e.u32(),!(o>0&&o<=8e6))throw Error(`[s3m] S3M 1.x 顶点数异常:网格 ${n} V=${o}(字段 7=${i} 772=${a})`);let s=new Float32Array(o*3);for(let t=0;t<o;t++){let n=e.f32(),r=e.f32(),i=e.f32();e.f32(),s[t*3]=n,s[t*3+1]=r,s[t*3+2]=i}e.u32(),e.u32(),e.u32();let c=e.u32(),l=e.u32();if(e.u32(),c!==1||l!==o)throw Error(`[s3m] S3M 1.x UV 头不符:网格 ${n} kind=${c} count=${l} 期望 1/${o}`);let u=new Float32Array(o*2);for(let t=0;t<o;t++)u[t*2]=e.f32(),u[t*2+1]=e.f32();let d=e.u32(),f=e.u32();if(e.u32(),d!==1||f===0||f%3!=0)throw Error(`[s3m] S3M 1.x 索引头不符:网格 ${n} kind=${d} count=${f}`);let p=new Uint16Array(f);for(let t=0;t<f;t++)p[t]=e.u16();if(e.offset>t)throw Error(`[s3m] S3M 1.x 索引越界:网格 ${n}`);e.align4();let m=e.u32(),h=String(e.u32());if(m!==1)throw Error(`[s3m] S3M 1.x 记录尾标记异常:网格 ${n} 期望 1 实得 ${m}`);r.push({geoName:n,vertexCount:o,position:s,uv:u,indexCount:f,indices:p,materialId:h})}return r}function dg(e,t){return!Number.isFinite(e)||e<=0?t:Math.abs(e-.5)<.02?17:Math.abs(e-1)<.02?21:Math.abs(e-4)<.02?14:Math.abs(e-3)<.02?10:(console.warn(`[s3m] S3M 1.x 纹理密度 ${e.toFixed(3)} B/px 不在已知档位,按原 format=${t} 交给上层判定`),t)}function fg(e,t){let n=e.u32(),r={};if(n>1024)throw Error(`[s3m] S3M 1.x 纹理数异常:${n}`);for(let i=0;i<n;i++){let n=String(e.u32()),i=e.u32(),a=e.u32(),o=e.u32(),s=e.u32();if(e.u32(),e.offset+s>t+4)throw Error(`[s3m] S3M 1.x 纹理越界:${n}`);r[n]={code:n,level:0,width:i,height:a,compressType:0,pixelFormat:dg(s/(i*a),o),flipY:!0,data:e.bytesCopy(s)}}return r}async function pg(e,t={}){let n=t.inflate??ng,r=new sh(e);r.skip(4);let i=await n(new Uint8Array(e,r.base+r.offset,e.byteLength-r.base-r.offset)),a=i instanceof Uint8Array?i:new Uint8Array(i),o=new sh(a.buffer.slice(a.byteOffset,a.byteOffset+a.byteLength)),s=o.u32();if(s<=0||s>a.byteLength)throw Error(`[s3m] S3M 1.x XML 段长度异常:${s}`);let c=new TextDecoder(`utf-8`).decode(o.bytes(s));o.offset=rg(o.offset);let l=o.u32(),u=o.offset,d=ug(new sh(o.buffer,o.base+u,l),l);o.offset=u+l;let f=o.u32();o.skip(f);let p=o.u32(),m=fg(new sh(o.buffer,o.base+o.offset,p),p),h={};for(let e of d){let t=`SuperMapCache#${e.geoName}`,n={semantic:`position`,data:new Uint8Array(e.position.buffer,e.position.byteOffset,e.position.byteLength),components:3,stride:12,offsetInBytes:0,dtype:`f32`},r={semantic:`uv`,data:new Uint8Array(e.uv.buffer,e.uv.byteOffset,e.uv.byteLength),components:2,stride:8,offsetInBytes:0,dtype:`f32`};h[t]={name:t,vertexPackage:{verticesCount:e.vertexCount,vertexAttributes:[n,r],attrLocation:{aposition:0,auv:1},instanceCount:0,instanceMode:0,instanceIndex:-1},indexPackages:[{indexCount:e.indexCount,indexType:0,useIndex:1,primitiveType:4,indices:new Uint8Array(e.indices.buffer,e.indices.byteOffset,e.indices.byteLength),passNames:[e.materialId]}]}}let g=new Map(d.map(e=>[e.geoName,`SuperMapCache#${e.geoName}`])),_=cg(c),v=[];return _.forEach((e,t)=>{let n=e.geoNames.map(e=>g.get(e)).filter(e=>!!e),r=d[t]?[`SuperMapCache#${d[t].geoName}`]:[],i=n.length?[...new Set(n)]:r;i.length&&v.push({rangeValue:e.rangeValue,rangeMode:e.rangeMode,boundingSphere:{center:{...e.center},radius:e.radius},childTile:e.childTile,geodes:[{matrix:e.matrix,skeletonNames:i}]})}),{version:1,compressedType:1,options:0,groupNode:{pageLods:v},geoPackage:h,textures:m,materials:lg(c).map(e=>({material:{name:e.name,diffuse:e.diffuse,shininess:e.shininess,cullMode:e.cullMode,transparentsorting:e.transparentSorting,textureStates:e.textureName?[{textureunitstate:{name:e.textureName,...e.addressMode?{addressmode:e.addressMode}:{}}}]:[]}})),pickInfo:null,extensions:{s3m1:!0},bytesRead:o.offset+p,bytesTotal:a.byteLength}}var mg={V1:1,V2:2,V3:3},hg={UNKNOWN:0,STANDARD:1,COMPRESSED:2,DRACO:3},gg={STANDARD:0,DRACO:1,MESHOPT:2},_g={VERTEX:1,NORMAL:2,VERTEX_COLOR:4,SECOND_COLOR:8,TEXCOORD:16,TEXCOORD_IS_W:32},vg={0:4,1:4,2:8,3:2};async function yg(e){if(typeof DecompressionStream>`u`)throw Error(`[s3m] 当前环境无 DecompressionStream,请通过 options.inflate 注入解压实现`);let t=new Blob([e]).stream().pipeThrough(new DecompressionStream(`deflate`));return new Uint8Array(await new Response(t).arrayBuffer())}function bg(e,t,n,r,i,a=0,o,s=`f32`){e.attrLocation[t]=e.vertexAttributes.length,e.vertexAttributes.push({semantic:t,data:n,components:r,stride:i||r*4,offsetInBytes:a,divisor:o,dtype:s})}function xg(){return{vertexAttributes:[],attrLocation:{},instanceCount:0,instanceMode:0,instanceIndex:-1,verticesCount:0}}function Sg(e){let t=Array(16);for(let n=0;n<16;n++)t[n]=e.f64();let n=e.u32(),r=[];for(let t=0;t<n;t++)r.push(e.string());return{matrix:t,skeletonNames:r}}function Cg(e,t){let n={rangeValue:e.f32(),rangeMode:e.u16(),boundingSphere:{center:e.vec3f64(),radius:e.f64()},childTile:``,geodes:[]};t>=3&&(n.obb={center:e.vec3f64(),xExtent:e.vec3f64(),yExtent:e.vec3f64(),zExtent:e.vec3f64()});let r=e.string(),i=r.indexOf(`Geometry`);i!==-1&&(r=r.substring(0,i)),n.childTile=r;let a=e.u32();for(let t=0;t<a;t++)n.geodes.push(Sg(e));return t>=3&&e.string(),n}function wg(e,t){let n=e.u32(),r=[];for(let i=0;i<n;i++)r.push(Cg(e,t));return e.align4(),{pageLods:r}}function Tg(e,t){return e.u32(),wg(e,t)}function Eg(e,t){let n=e.u32();if(t.verticesCount=n,n===0)return;let r=e.u16();e.u16(),bg(t,`position`,e.bytes(n*r*4),r,r*4)}function Dg(e,t){let n=e.u32();if(n<=0)return;let r=e.u16(),i=e.u16();bg(t,`normal`,e.bytes(n*r*4),r,i||r*4)}function Og(e,t){let n=e.u32(),r;n>0?(e.u16(),e.skip(2),r=e.bytes(n*4)):r=new Uint8Array((t.verticesCount||0)*4).fill(255),bg(t,`color`,r,4,4,0,void 0,`u8`)}function kg(e,t){let n=e.u32();n<=0||(e.u16(),e.skip(2),bg(t,`secondColor`,e.bytes(n*4),4,4,0,void 0,`u8`))}function Ag(e,t){let n=e.u16();e.skip(2);for(let r=0;r<n;r++){let n=e.u32(),i=e.u16(),a=e.u16();bg(t,r===0?`uv`:`uv${r+1}`,e.bytes(n*i*4),i,a||i*4)}}function jg(e,t,n){let r=e.u16();e.skip(2);for(let i=0;i<r;i++){let r=e.u32(),i=e.u16();if(i===16){e.offset-=2;let a=n===3?2:4,o=i*4+a,s=r*o,c=e.bytes(s),l=new Uint8Array(r*i*4);for(let e=0;e<r;e++)l.set(c.subarray(e*o+a,e*o+o),e*i*4);t.instanceCount=r,t.instanceMode=i,t.instanceBuffer=l,t.instanceIndex=1,bg(t,`instanceMatrix0`,l,4,64,0,1),bg(t,`instanceMatrix1`,l,4,64,16,1),bg(t,`instanceMatrix2`,l,4,64,32,1),bg(t,`instanceColor`,l,4,64,48,1)}else{e.u16();let n=r*i*4;i===17||i===29?(t.instanceCount=r,t.instanceMode=i,t.instanceBuffer=e.bytesCopy(n),t.instanceIndex=1):e.skip(n)}}}function Mg(e,t){let n=e.u32();for(let r=0;r<n;r++){let n=e.u32(),i=e.u16(),a=vg[e.u16()]??4;bg(t,`custom${r}`,e.bytes(n*i*a),i,i*a)}}function Ng(e){let t=e.u32();if(t<=0)return;let n=e.u16();e.u16(),e.skip(t*n*4)}function Pg(e,t,n){if(n>=3&&e.u32(),Eg(e,t),Dg(e,t),Og(e,t),n<3&&kg(e,t),Ag(e,t),jg(e,t,n),n>=3){Mg(e,t);let n=e.string();t.customVertexAttribute=n?JSON.parse(n):void 0,e.align4(),Ng(e)}}function Fg(e,t,n){let r=e.u32();if(t.compressOptions=r,r&_g.VERTEX)throw Error(`[s3m] 顶点量化压缩(v2 旧式)暂未实现`);if(Eg(e,t),r&_g.NORMAL)throw Error(`[s3m] 法线压缩(v2 旧式)暂未实现`);if(Dg(e,t),Og(e,t),kg(e,t),r&_g.TEXCOORD)throw Error(`[s3m] 纹理坐标压缩(v2 旧式)暂未实现`);Ag(e,t),r&_g.TEXCOORD_IS_W&&(t.textureCoordIsW=!0),jg(e,t,n)}function Ig(e,t){let n=e.u32(),r=[];for(let i=0;i<n;i++){t>=3&&e.u32();let n=e.u32(),i=e.u8(),a=e.u8(),o=e.u8();e.skip(1);let s=null;if(n>0){let t=i===1||i===3,r=t?4:2;s=e.bytes(n*r),!t&&n%2!=0&&e.skip(2)}let c=[],l=e.u32();for(let t=0;t<l;t++)c.push(e.string());e.align4(),r.push({indexCount:n,indexType:i,useIndex:a,primitiveType:o,indices:s,passNames:c})}return r}var Lg=96;function Rg(e){let t=e.offset,n=e.boundingBox();return zg(n)?n:(e.offset=t+4,e.boundingBox())}function zg(e){let t=[e.center,e.xExtent,e.yExtent,e.zExtent];for(let e of t)if(!Number.isFinite(e.x)||!Number.isFinite(e.y)||!Number.isFinite(e.z)||Math.abs(e.x)>1e7||Math.abs(e.y)>1e7||Math.abs(e.z)>1e7)return!1;return!0}async function Bg(e,t,n){let r=e.u32(),i={};for(let a=0;a<r;a++){let r=-1;if(t>=3){let t=e.u32(),n=e.offset+t;t>=Lg&&n<=e.view.byteLength&&(r=n)}let a=e.string();e.align4();let o=e.u32();t>=3&&(o=o===gg.STANDARD?hg.STANDARD:o===gg.DRACO?hg.DRACO:o===gg.MESHOPT?hg.COMPRESSED:hg.UNKNOWN);let s=xg(),c=[];if(o===hg.STANDARD)Pg(e,s,t),c=Ig(e,t);else if(o===hg.COMPRESSED)t>=3?c=(await Qh(e,s)).indexPackages:(Fg(e,s,t),c=Ig(e,t));else if(o===hg.DRACO)c=await Mh(e,s);else throw Error(`[s3m] 未知骨架标记 ${o}(${a})`);let l;if(t>=3){if(r>=0&&r-e.offset>=Lg){let t=r-e.offset-Lg;t>0&&n?.(` skelPad`,t,e.offset),e.offset=r-Lg,l=Rg(e),e.offset=r}else l=Rg(e)}n?.(` skel`,a,e.offset),i[a]={name:a,vertexPackage:s,indexPackages:c,obb:l}}return i}async function Vg(e,t,n){e.u32();let r=await Bg(e,t,n);if(t<3){let t=e.u32();e.skip(t)}return r}function Hg(e){let t=e.u32(),n=e.offset,r=n+t,i=e.u32(),a={};for(let t=0;t<i;t++){let t=e.string();e.align4(n);let r=e.u32(),i=e.u32(),o=e.u32(),s=e.u32(),c=e.u32();a[t]={code:t,level:r,width:i,height:o,compressType:s,pixelFormat:e.u32(),data:e.bytesCopy(c)}}return e.offset=r,a}function Ug(e){let t=e.u32(),n=new TextDecoder(`utf-8`).decode(e.bytes(t));return n?JSON.parse(n):[]}function Wg(e,t,n,r){let i=t;return(i&1)!=1||(r>=3&&(i=e.u32()),(i&1)!=1)?null:(e.u32(),Gg(e,n,r))}function Gg(e,t,n){let r=e.u32(),i={};for(let a=0;a<r;a++){let r=e.string(),a=t[r],o=e.u32(),s={};if(!a)continue;let c=a.vertexPackage;if(c.instanceIndex===-1){let t=new Float32Array(c.verticesCount||0);for(let n=0;n<o;n++){let r=e.u32(),i=e.u32(),a={batchId:n,segments:[]};s[r]=a;for(let r=0;r<i;r++){let r=e.u32(),i=e.u32();a.segments.push({vertexOffset:r,vertexCount:i}),t.fill(n,r,r+i)}}bg(c,`batchId`,new Uint8Array(t.buffer),1,4,0,void 0,`f32`)}else{let t=c.instanceCount,r=new Float32Array(t).fill(-1);for(let i=0;i<o;i++){let a=e.u32(),o=e.u32(),c={instanceIds:[],instanceBatchId:i};s[a]=c;for(let a=0;a<o;a++){let a=e.u32();n>=3&&e.u32(),a>=0&&a<t&&(c.instanceIds.push(a),r[a]=i)}}c.instanceBatchIds=r}a.pickInfo=s,i[r]=s}return i}var Kg=class extends Error{constructor(e){super(e),X(this,`permanent`,!0),this.name=`S3MFormatError`}};async function qg(e,t={}){if(tg(e))return pg(e,t);let n=t.inflate??yg,r=t.trace,i=new sh(e),a=Number(i.f32().toFixed(2)),o=0;a>=3&&(o=i.u32()),a>=2&&i.u32();let s=i.u32(),c=new Uint8Array(e,i.base+i.offset,s),l;l=a>=3&&o===0?c:await n(c);let u=new sh(l.buffer,l.byteOffset??0,l.byteLength),d=u.u32();r?.(`fileOptions`,d,u.offset);let f=Tg(u,a);r?.(`groupNode`,f.pageLods.length,u.offset);let p=await Vg(u,a,r);r?.(`skeletons`,Object.keys(p).length,u.offset);let m=Hg(u);r?.(`textures`,Object.keys(m).length,u.offset);let h=Ug(u);r?.(`materials`,u.offset);let g=Wg(u,d,p,a);r?.(`pickInfo`,u.offset);let _;if(a>=3){let e=u.string();_=e?JSON.parse(e):void 0}return{version:a,compressedType:o,options:d,groupNode:f,geoPackage:p,textures:m,materials:h,pickInfo:g,extensions:_,bytesRead:u.offset,bytesTotal:u.view.byteLength}}function Jg(e){return e?e.batchId==null?e.instanceBatchId==null?-1:e.instanceBatchId:e.batchId:-1}function Yg(e){let t=new Map;if(!e)return t;for(let[n,r]of Object.entries(e)){if(!r?.instanceIds?.length)continue;let e=Number(n);if(!Number.isFinite(e))continue;let i=Jg(r);for(let n of r.instanceIds)t.set(n,{smid:e,batchId:i})}return t}function Xg(e,t){let n=e?.pickInfo;if(!n||t<0)return{smid:null,segments:[]};for(let[e,r]of Object.entries(n))if(Jg(r)===t)return{smid:Number(e),segments:r.segments??[]};return{smid:null,segments:[]}}function Zg(e,t){let n=e?.getAttribute(`position`);if(!n||!t.length)return null;let r=1/0,i=1/0,a=1/0,o=-1/0,s=-1/0,c=-1/0,l=0;for(let e of t){let t=Math.min(e.vertexOffset+e.vertexCount,n.count);for(let u=e.vertexOffset;u<t;u++){let e=n.getX(u),t=n.getY(u),d=n.getZ(u);e<r&&(r=e),e>o&&(o=e),t<i&&(i=t),t>s&&(s=t),d<a&&(a=d),d>c&&(c=d),l++}}if(!l)return null;let u=0,d=e.index;if(d){let e=new Uint8Array(n.count);for(let r of t){let t=Math.min(r.vertexOffset+r.vertexCount,n.count);e.fill(1,r.vertexOffset,t)}let r=d.array;for(let t=0;t<r.length;t+=3)e[r[t]]&&e[r[t+1]]&&e[r[t+2]]&&u++}return{minX:r,minY:i,minZ:a,maxX:o,maxY:s,maxZ:c,count:l,triangles:u}}function Qg(e){let{smid:t,box:n,triangles:r,floorHeight:i=e_}=e;if(!n)return{smid:t,triangles:r};let a=n.maxZ-n.minZ;return{smid:t,height:$g(a,1),baseElevation:$g(n.minZ,1),size:[$g(n.maxX-n.minX,1),$g(n.maxY-n.minY,1)],bboxArea:$g((n.maxX-n.minX)*(n.maxY-n.minY),1),floors:Math.max(1,Math.round(a/i)),triangles:n.triangles??r,vertices:n.count,bbox:[[$g(n.minX,1),$g(n.minY,1),$g(n.minZ,1)],[$g(n.maxX,1),$g(n.maxY,1),$g(n.maxZ,1)]]}}function $g(e,t){let n=10**t;return Math.round(e*n)/n}var e_,t_=n((()=>{e_=3.2}));t_();var n_=`SmID`,r_=200,i_=new Set([`smgeometry`,`smindexkey`,`smgeoposition`]);function a_(e){return e.replace(/x'[0-9A-Fa-f]*'/g,`null`).replace(/(\d)[dDlLfF](?=\s*[,}\]])/g,`$1`)}var o_=class{constructor(e){if(X(this,`dataServiceUrl`,void 0),X(this,`datasourceName`,void 0),X(this,`datasetName`,void 0),X(this,`idField`,void 0),X(this,`_fields`,void 0),X(this,`_chunkSize`,void 0),X(this,`_formatOption`,void 0),X(this,`_fetch`,void 0),X(this,`_cache`,new Map),X(this,`_schema`,null),X(this,`_resolvedFields`,null),X(this,`_format`,null),X(this,`_stats`,{requests:0,bytes:0,ms:0}),!e?.dataServiceUrl)throw Error(`[s3m] AttributeQuery 缺少 dataServiceUrl`);let[t,n]=(e.datasetName?.includes(`:`)?e.datasetName:`DataSource:${e.datasetName??``}`).split(`:`);if(!n)throw Error(`[s3m] datasetName 格式应为 "数据源:数据集",收到 "${e.datasetName}"`);this.dataServiceUrl=e.dataServiceUrl.replace(/\/+$/,``),this.datasourceName=t,this.datasetName=n,this.idField=e.idField??n_,this._fields=e.fields?.length?e.fields:null,this._chunkSize=Math.max(1,e.chunkSize??r_),this._formatOption=e.format??`auto`,this._fetch=e.fetchImpl??globalThis.fetch.bind(globalThis)}get datasetPath(){return`${this.dataServiceUrl}/datasources/name/${encodeURIComponent(this.datasourceName)}/datasets/name/${encodeURIComponent(this.datasetName)}`}get stats(){return{...this._stats}}async loadSchema(){if(this._schema)return this._schema;let e=await this._fetch(`${this.datasetPath}/fields.json`);if(this._stats.requests++,!e.ok)throw Error(`[s3m] 读取字段表失败 ${e.status}:${this.datasetPath}/fields.json`);let t=await e.json();return this._schema=(t.fieldNames??[]).map(e=>({name:e})),this._schema}hasCached(e){return this._cache.has(e)}clearCache(){this._cache.clear(),this._stats={requests:0,bytes:0,ms:0}}async queryBySmids(e){let t=[...new Set(e.filter(e=>Number.isFinite(e)))],n=new Map;for(let e of t){let t=this._cache.get(e);t&&n.set(e,t)}let r=t.filter(e=>!this._cache.has(e));if(!r.length)return n;let i=await this._resolveFields();for(let e=0;e<r.length;e+=this._chunkSize){let t=r.slice(e,e+this._chunkSize),a=await this._queryChunk(t,i);for(let[e,t]of a)this._cache.set(e,t),n.set(e,t)}return n}async _resolveFields(){if(this._resolvedFields)return this._resolvedFields;if(this._fields)return this._resolvedFields=this._fields,this._resolvedFields;let e=(await this.loadSchema()).map(e=>e.name).filter(e=>!i_.has(e.toLowerCase()));return this._resolvedFields=e.length?e:[this.idField],this._resolvedFields}async _resolveFormat(){if(this._format)return this._format;if(this._formatOption!==`auto`)return this._format=this._formatOption;try{let e=await this._fetch(`${this.datasetPath}/features.json?fromIndex=0&toIndex=1`);this._stats.requests++;let t=await e.json(),n=String(t.geometryType??``).toUpperCase().includes(`MODEL`);this._format=n?`fastjson`:`json`}catch{this._format=`fastjson`}return this._format}async _queryChunk(e,t){let n={getFeatureMode:`SQL`,datasetNames:[`${this.datasourceName}:${this.datasetName}`],queryOption:`ATTRIBUTE`,queryParameter:{attributeFilter:`${this.idField} IN (${e.join(`,`)})`,fields:t}},r=await this._resolveFormat(),i=await this._post(n,r),a;try{a=this._parse(i)}catch(e){if(r!==`fastjson`)throw e;a=this._parse(await this._post(n,`json`))}if(a.error)throw Error(`[s3m] 属性查询失败:${a.error.errorMsg??`未知错误`}`);let o=new Map;for(let e of a.features??[]){let t=e.fieldNames??[],n=e.fieldValues??[],r={};for(let e=0;e<t.length;e++)r[t[e]]=n[e];let i=r[this.idField]??e.ID,a=Number(i);Number.isFinite(a)&&o.set(a,r)}return o}async _post(e,t){let n=performance.now(),r=await this._fetch(`${this.dataServiceUrl}/featureResults.${t}?returnContent=true`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)}),i=await r.text();if(this._stats.requests++,this._stats.bytes+=i.length,this._stats.ms+=Math.round(performance.now()-n),!r.ok)throw Error(`[s3m] 属性查询失败 ${r.status}:${i.slice(0,200)}`);return i}_parse(e){return JSON.parse(e.includes(`x'`)||/\d[dDlL](?=\s*[,}\]])/.test(e)?a_(e):e)}},s_=6378137;function c_(e,t,n=0){let r=Math.sin(t*Math.PI/180),i=(180+e)/360,a=.5-.25*Math.log((1+r)/(1-r))/Math.PI,o=1/(2*Math.PI*s_)/Math.cos(t*Math.PI/180);return{x:i,y:a,z:n*o,meterInMercator:o,altitude:n}}function l_(e,t){return[e*360-180,Math.atan(Math.sinh(Math.PI*(1-2*t)))*180/Math.PI]}function u_(e,t,n,r=0){return e?e.worldFromLngLat(t,n,r):c_(t,n,r)}function d_(e,t,n){return e?e.lngLatFromWorld(t,n):l_(t,n)}var f_=class extends Error{constructor(e){super(e),this.name=`WorkerDeadError`}},p_=class e{static create(){if(typeof Worker>`u`)return null;try{let t=new Worker(new URL(`/assets/s3mWorker-D7AV6O30.js`,``+{}.url),{type:`module`});return new e(t)}catch{return null}}constructor(e){X(this,`_worker`,void 0),X(this,`_seq`,0),X(this,`_pending`,new Map),X(this,`dead`,!1),this._worker=e,e.onmessage=e=>{let t=e.data,n=this._pending.get(t.id);if(n){if(this._pending.delete(t.id),t.ok)`tile`in t?n.resolve({tile:t.tile,geometry:t.geometry}):n.resolve(t.data);else{let e=Error(t.message);e.permanent=t.permanent,n.reject(e)}}},e.onerror=()=>this._die(`s3m 解析 Worker 加载失败/崩溃`),e.onmessageerror=()=>this._die(`s3m 解析 Worker 消息无法反序列化`)}parseTile(e,t=!1,n=!0){if(this.dead)return Promise.reject(new f_(`s3m 解析 Worker 已终止`));let r=++this._seq;return new Promise((i,a)=>{this._pending.set(r,{resolve:i,reject:a}),this._worker.postMessage({type:`parse`,id:r,buffer:e,assemble:t,batching:n})})}decodeTexture(e,t=!1){if(this.dead)return Promise.reject(new f_(`s3m 解析 Worker 已终止`));let n=++this._seq;return new Promise((r,i)=>{this._pending.set(n,{resolve:r,reject:i}),this._worker.postMessage({type:`tex`,id:n,tex:e,compressed:t})})}dispose(){this._die(`dispose`)}_die(e){if(this.dead)return;this.dead=!0;try{this._worker.terminate()}catch{}let t=new f_(`${e},退回主线程解析`);for(let e of this._pending.values())e.reject(t);this._pending.clear()}},m_;function h_(){return m_===void 0&&(m_=p_.create()),m_&&m_.dead?null:m_}async function g_(e,t){let n=h_();if(!n)return null;try{return await n.decodeTexture(e,t)}catch{return null}}function __(e,t,n,r){let i=e|t<<8,a=i>>11&31,o=i>>5&63,s=i&31;return n[r+0]=a<<3|a>>2,n[r+1]=o<<2|o>>4,n[r+2]=s<<3|s>>2,n[r+3]=255,i}function v_(e,t,n,r){let i=new Uint8Array(16),a=__(t[n+0],t[n+1],i,0),o=__(t[n+2],t[n+3],i,4);for(let e=0;e<3;e++){let t=i[e],n=i[4+e];r&&a<=o?(i[8+e]=(t+n)/2,i[12+e]=0):(i[8+e]=(2*t+n)/3,i[12+e]=(t+2*n)/3)}i[11]=255,i[15]=r&&a<=o?0:255;let s=new Uint8Array(16);for(let e=0;e<4;++e){let r=t[n+4+e];s[4*e+0]=r&3,s[4*e+1]=r>>2&3,s[4*e+2]=r>>4&3,s[4*e+3]=r>>6&3}for(let t=0;t<16;++t){let n=4*s[t];for(let r=0;r<4;++r)e[4*t+r]=i[n+r]}}function y_(e,t,n){for(let r=0;r<8;++r){let i=t[n+r],a=i&15,o=i&240;e[8*r+3]=a|a<<4,e[8*r+7]=o|o>>4}}function b_(e,t,n){let r=t[n+0],i=t[n+1],a=new Uint8Array(8);if(a[0]=r,a[1]=i,r<=i){for(let e=1;e<5;++e)a[1+e]=((5-e)*r+e*i)/5;a[6]=0,a[7]=255}else for(let e=1;e<7;++e)a[1+e]=((7-e)*r+e*i)/7;let o=new Uint8Array(16),s=n+2,c=0;for(let e=0;e<2;++e){let e=0;for(let n=0;n<3;++n){let r=t[s++];e|=r<<8*n}for(let t=0;t<8;++t){let n=e>>3*t&7;o[c++]=n}}for(let t=0;t<16;++t)e[4*t+3]=a[o[t]]}function x_(e,t,n,r){let i=0;r&6&&(i=8),v_(e,t,n+i,(r&T_)!==0),(r&E_)===0?(r&D_)!==0&&b_(e,t,n):y_(e,t,n)}function S_(e){let t=e.byteOffset&-2,n=e.byteLength+(e.byteOffset&1)>>1;return new Uint16Array(e.buffer,t,n)}function C_(e,t,n,r){let i=new Uint16Array(4),a=e,o=0,s=0,c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=t/4,g=n/4;for(let e=0;e<g;e++)for(let n=0;n<h;n++)c=4*((g-e)*h+n),i[0]=r[c],i[1]=r[c+1],l=i[0]&31,u=i[0]&2016,d=i[0]&63488,f=i[1]&31,p=i[1]&2016,m=i[1]&63488,i[2]=5*l+3*f>>3|5*u+3*p>>3&2016|5*d+3*m>>3&63488,i[3]=5*f+3*l>>3|5*p+3*u>>3&2016|5*m+3*d>>3&63488,o=r[c+2],s=e*4*t+n*4,a[s]=i[o&3],a[s+1]=i[o>>2&3],a[s+2]=i[o>>4&3],a[s+3]=i[o>>6&3],s+=t,a[s]=i[o>>8&3],a[s+1]=i[o>>10&3],a[s+2]=i[o>>12&3],a[s+3]=i[o>>14&3],o=r[c+3],s+=t,a[s]=i[o&3],a[s+1]=i[o>>2&3],a[s+2]=i[o>>4&3],a[s+3]=i[o>>6&3],s+=t,a[s]=i[o>>8&3],a[s+1]=i[o>>10&3],a[s+2]=i[o>>12&3],a[s+3]=i[o>>14&3];return a}function w_(e,t,n,r,i){let a=(i&T_)===0?16:8,o=0;for(let s=0;s<n;s+=4)for(let c=0;c<t;c+=4){let l=new Uint8Array(64);x_(l,r,o,i);let u=0;for(let r=0;r<4;++r)for(let i=0;i<4;++i){let a=c+i,o=s+r;if(a<t&&o<n){let r=4*(t*(n-1-o)+a);for(let t=0;t<4;++t)e[r++]=l[u++]}else u+=4}o+=a}}var T_,E_,D_,O_,k_,A_=n((()=>{T_=1,E_=2,D_=4,O_=32,k_={decode(e,t,n,r,i){if(e==null||r==null||n===0||t===0)return;let a;switch(i){case 17:a=T_;break;case 18:case 19:a=E_;break;case 20:case 21:a=D_;break;default:a=i>11||i===5?D_:33}(a&T_)!==0&&(a&O_)!==0?C_(S_(e),t,n,S_(r)):w_(e,t,n,r,a)}}}));A_();function j_(e){if(!e.data||!e.width||!e.height)return null;let t=e.compressType;if((t===0||t===void 0)&&e.pixelFormat===28&&e.data.length===e.width*e.height*4)return{rgba:e.data,topDown:!0};if(!(t===12||t===13||t===14||t===17||t===19||t===20||t===21||e.pixelFormat>=17))return null;let n=new Uint8Array(e.width*e.height*4);try{k_.decode(n,e.width,e.height,e.data,e.pixelFormat)}catch{return null}return{rgba:n,topDown:!1}}function M_(e){let t=Object.entries(e).filter(([,e])=>e.data&&e.width>0&&e.height>0);if(t.length<2)return null;let n=new Map;for(let[e,r]of t){let t=j_(r);if(!t)return null;n.set(e,{w:r.width,h:r.height,rgba:t.rgba,topDown:t.topDown})}let r=0,i=0,a=0,o=0,s=new Map;for(let[e,t]of n)r>0&&r+t.w>1024&&(r=0,i+=a,a=0),s.set(e,{x:r,y:i}),r+=t.w,a=Math.max(a,t.h),o=Math.max(o,r);let c=Math.max(1,o),l=Math.max(1,i+a),u=new Uint8Array(c*l*4);for(let[e,t]of n){let n=s.get(e);for(let e=0;e<t.h;e++){let r=(t.topDown?e:t.h-1-e)*t.w*4;u.set(t.rgba.subarray(r,r+t.w*4),((n.y+e)*c+n.x)*4)}}return{width:c,height:l,data:u,offsets:s}}async function N_(e){if(typeof DecompressionStream>`u`)throw Error(`[s3m] 当前环境无 DecompressionStream,请通过 options.inflate 注入解压实现`);let t=new Blob([e]).stream().pipeThrough(new DecompressionStream(`deflate`));return new Uint8Array(await new Response(t).arrayBuffer())}function P_(e){let t=e.u32(),n={};for(let r=0;r<t;r++){let t=e.string();e.align4();let r=e.u32(),i=e.u8(),a=e.u32(),o=e.u32(),s=e.u32(),c=e.u32(),l=e.u32(),u=i?e.bytesCopy(c):null,d=e.u32(),f=[];for(let t=0;t<d;t++)f.push(e.string());let p=e.u32(),m=[];for(let t=0;t<p;t++)m.push(e.string());let h=e.u32(),g=[];for(let t=0;t<h;t++){let t=e.string(),n=e.u32(),r=e.u32(),i=e.u32(),a=e.u32(),o=e.u32(),s=[];for(let t=0;t<o;t++){let t=e.string(),n=e.u32(),r=e.u32(),i=e.u32();s.push({geoName:t,vertexOffset:n,vertexCount:r,texUnitIndex:i})}g.push({subName:t,offsetX:n,offsetY:r,width:i,height:a,bindings:s})}n[t]={id:t,level:r,width:a,height:o,compressType:s,pixelFormat:l,data:u,childTexNames:f,requestNames:m,subTexInfos:g}}return n}function F_(e){let t=Object.values(e);if(t.some(e=>e.packed))return null;let n=M_(e);if(!n)return null;let r=t.filter(e=>e.leafSig).map(e=>`${e.id}=${e.leafSig}`),i=`${n.width}x${n.height}#${[...n.offsets.keys()].sort().join(`,`)}`+(r.length?`@${[...r].sort().join(`,`)}`:``);for(let e of t){let t=e;t.origin={width:e.width,height:e.height,pixelFormat:e.pixelFormat,compressType:e.compressType,dataLength:e.data?.length??0,data:e.data??void 0},e.width=n.width,e.height=n.height,e.data=n.data,e.compressType=0,e.pixelFormat=28,t.flipY=!1,t.packed=!0,t.packKey=i}return n}function I_(e){let t=e.texturePackage;if(!t)return!1;let n=!1;for(let e of Object.values(t)){let t=e;t.packed&&t.origin?.data&&(e.width=t.origin.width,e.height=t.origin.height,e.pixelFormat=t.origin.pixelFormat,e.compressType=t.origin.compressType,e.data=t.origin.data,t.flipY=!t.composed,t.packed=!1,t.rectScale=1,delete t.packKey,n=!0)}return n&&(e.textures={},e.atlasRects={}),n}function L_(e){let t=F_(e.texturePackage??{});e.atlasRects=z_(e.geoPackage,e.texturePackage??{},t),e.textures=R_(e.texturePackage??{})}function R_(e){let t={};for(let n of Object.values(e)){if(!n.data)continue;let e=n.packed===!0,r=n.composed===!0,i=e||r;t[n.id]={code:n.id,level:n.level,width:n.width,height:n.height,compressType:n.compressType,pixelFormat:n.pixelFormat,data:n.data,flipY:!i,packed:e,composed:r,packKey:n.packKey}}return t}function z_(e,t,n){let r={},i=(t,n)=>{let i=e[t];if(!i)return new Float32Array;let a=r[t]??(r[t]={}),o=a[n];if(!o){let e=i.vertexPackage.verticesCount;o=a[n]=new Float32Array(e*4)}return o},a=new Map;for(let[e,n]of Object.entries(t)){if(!n.width||!n.height)continue;let t=n.rectScale??1;a.set(e,n.subTexInfos.map(e=>({x:e.offsetX*t,y:e.offsetY*t,w:e.width*t,h:e.height*t})))}let o=0;for(let[s,c]of Object.entries(t)){if(!c.width||!c.height)continue;let t=n?n.offsets.get(s)??{x:0,y:0}:{x:0,y:0},l=a.get(s)??[];c.subTexInfos.forEach((n,a)=>{o++;let s=l[a]??{x:n.offsetX,y:n.offsetY,w:n.width,h:n.height},u=c.origin,d=u?u.width*u.height:c.width*c.height,f=d>0&&n.width*n.height/d>=.5,p={x:(t.x+s.x)/c.width,y:(t.y+s.y)/c.height,w:s.w/c.width,h:s.h/c.height};for(let t of n.bindings){var m,h;let a=e[t.geoName];if(!a)continue;let s=t.texUnitIndex===0?`uv`:`uv2`,c=i(t.geoName,s),l=t.texUnitIndex===0?(m=r[t.geoName]).group??(m.group=new Float32Array(a.vertexPackage.verticesCount)):null,u=t.texUnitIndex===0?(h=r[t.geoName]).groupDim??(h.groupDim=new Float32Array(a.vertexPackage.verticesCount*3)):null,d=Math.min(t.vertexOffset+t.vertexCount,a.vertexPackage.verticesCount);for(let e=t.vertexOffset;e<d;e++)c[e*4]=p.x,c[e*4+1]=p.y,c[e*4+2]=p.w,c[e*4+3]=p.h,l&&u&&(l[e]=o,u[e*3]=n.width,u[e*3+1]=n.height,u[e*3+2]=+!!f)}})}return r}async function B_(e,t={}){let n=t.inflate??N_,r=new Uint8Array(e),i=await W_(r,n);if(i)return i;let a=await G_(r,n);if(a)return a;let o=await H_(r,n);if(o)return[o];throw Error(`[s3m] .texblock 无法识别的外层格式(动态 pack / 静态 pack / 容器均不成立)`)}function V_(e,t){let n=new sh(e.buffer,e.byteOffset,e.byteLength),r=[];for(;n.remaining>=20;){let e=n.u32(),i=n.u32(),a=n.u32(),o=n.u32(),s=n.u32();if(!i||!a||s>n.remaining)break;r.push({id:t,width:i,height:a,compressType:e,pixelFormat:o,data:n.bytesCopy(s)})}return r}async function H_(e,t){if(e.byteLength<8)return null;try{let n=new sh(e.buffer,e.byteOffset,e.byteLength),r=n.u32();if(r<1||r>4096)return null;let i=[];for(let e=0;e<r;e++){let e=n.offset,r=n.u32();if(r<1||r>4096||n.remaining<r+8)return null;n.offset=e;let a=n.string(),o=n.u32(),s=n.u32();if(s>n.remaining)return null;let c=await t(n.bytesCopy(s));if(c.length!==o)return null;i.push(...V_(c,a))}return i.length?i:null}catch{return null}}async function U_(e,t){if(e.byteLength<16)return null;try{let n=new sh(e.buffer,e.byteOffset,e.byteLength),r=n.offset,i=n.u32();if(i<1||i>4096||n.remaining<i+8)return null;n.offset=r;let a=n.string(),o=n.u32(),s=n.u32();if(s!==n.remaining)return null;let c=await t(n.bytesCopy(s));if(c.length!==o)return null;let l=V_(c,a);return l.length?l:null}catch{return null}}async function W_(e,t){if(e.byteLength<8)return null;try{let n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=n.getUint32(0,!0);if(r<1||r>256)return null;let i=4+4*r;if(i>e.byteLength)return null;let a=i,o=[];for(let e=0;e<r;e++){let t=n.getUint32(4+e*4,!0);if(t<8)return null;o.push(t),a+=t}if(a!==e.byteLength)return null;let s=[],c=i;for(let n of o){let r=await H_(e.subarray(c,c+n),t);if(!r)return null;s.push(r),c+=n}return s}catch{return null}}async function G_(e,t){if(e.byteLength<12)return null;try{let n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=n.getUint32(0,!0);if(r<1||r>4096)return null;let i=4+8*r;if(i>e.byteLength)return null;let a=[];for(let o=0;o<r;o++){let r=n.getUint32(4+o*8,!0),s=n.getUint32(8+o*8,!0);if(r<i||s<8||r>e.byteLength-s)return null;let c=await U_(e.subarray(r,r+s),t);if(!c)return null;a.push(c)}return a}catch{return null}}function K_(e){let t=e=>{let t=e.indexOf(`.`);return t>=0?e.slice(0,t):e},n=new Map,r=[];for(let i of e??[]){let e=t(i);if(e.split(`_`)[0]===`Tex`){let e=i.indexOf(`#`);if(e<0)continue;let r=t(i.slice(0,e)),a=i.slice(e+1),o=n.get(r)??[];for(let e=0;e+3<=a.length;e+=3){let t=`${r}_${a.slice(e,e+3)}`;o.includes(t)||o.push(t)}n.set(r,o)}else r.includes(e)||r.push(e)}let i=[];for(let e of n.values())for(let t of e)i.includes(t)||i.push(t);for(let e of r)i.includes(e)||i.push(e);return{packGroups:n,plain:r,names:i}}function q_(e,t){let n=e.subTexInfos??[];if(!n.length||!e.width||!e.height)return null;let r=[];for(let e of n){let n=t.get(e.subName);n&&r.push({sub:e,sprite:n})}if(!r.length)return null;let i=e.width,a=e.height;for(let{sub:e,sprite:t}of r)i=Math.max(i,e.offsetX+t.image.width),a=Math.max(a,e.offsetY+t.image.height);let o=new Uint8Array(i*a*4),s=[],c=[],l=[],u=[],d=0;for(let e of n){let n=t.get(e.subName);if(!n){c.push(e.subName);continue}let r=n.image;(r.width!==e.width||r.height!==e.height)&&l.push(e.subName);let f=j_({id:r.id,width:r.width,height:r.height,compressType:r.compressType,pixelFormat:r.pixelFormat,data:r.data});if(!f)c.push(e.subName);else{for(let t=0;t<r.height;t++){let n=f.topDown?t:r.height-1-t,s=e.offsetY+t;if(s>=a)break;let c=n*r.width*4;o.set(f.rgba.subarray(c,c+r.width*4),(s*i+e.offsetX)*4)}d++,s.push(e.subName),u.push(`${n.source}#${e.subName}`)}}return d?{width:i,height:a,data:o,matched:s,missing:c,mismatched:l,sig:u.sort().join(`,`)}:null}async function J_(e,t={}){let n=t.inflate??N_,r=new sh(e),i=r.f32(),a=r.u32();if(a<1||a>4096)throw Error(`[s3m] S3MBLOCK 组数异常:${a}`);let o=[],s=[];for(let e=0;e<a;e++){let e=r.string().replace(/\.s3mblock$/i,``);s.push(e);let t=[];if(i<=3){let e=r.u32();for(let n=0;n<e;n++){let e=r.f32(),n=r.u16(),i={center:{x:r.f64(),y:r.f64(),z:r.f64()},radius:r.f64()},a=r.string();t.push({rangeValue:e,rangeMode:n,boundingSphere:i,childTile:a})}}let a=Number(r.f32().toFixed(2)),c=0;a>=3&&(c=r.u32());let l=r.u32(),u=r.u32(),d=await n(r.bytesCopy(u));if(d.length!==l)throw Error(`[s3m] S3MBLOCK 解压长度不符:声明 ${l},实际 ${d.length}`);let f=new sh(d.buffer,d.byteOffset,d.byteLength),p=f.u32(),m=f.u32(),h=wg(new sh(f.buffer,f.base+f.offset,m),a);f.skip(m),m=f.u32();let g=await Bg(new sh(f.buffer,f.base+f.offset,m),a);f.skip(m),a<3&&(m=f.u32(),f.skip(m)),m=f.u32();let _=P_(new sh(f.buffer,f.base+f.offset,m));f.skip(m);let v=f.string(),y=[];if(v)try{y=JSON.parse(v.replace(/\n\0/,``))}catch{y=v}let b=null,x;if((p&1)==1&&(a>=3&&f.u32(),m=f.u32(),b=Gg(new sh(f.buffer,f.base+f.offset,m),g,a),f.skip(m)),a>=3){let e=f.string();x=e?JSON.parse(e):void 0}let S=z_(g,_,F_(_)),C=R_(_),w=h.pageLods,T=t.map((e,t)=>{let n=w[t];return{rangeValue:e.rangeValue,rangeMode:e.rangeMode,boundingSphere:e.boundingSphere,childTile:e.childTile,geodes:n?.geodes??[],...n?.obb?{obb:n.obb}:{}}});o.push({version:a,compressedType:c,options:p,groupNode:{pageLods:T},geoPackage:g,textures:C,materials:y,pickInfo:b,extensions:x,bytesRead:f.offset,bytesTotal:d.byteLength,blockVersion:i,blockName:e,texturePackage:_,atlasRects:S})}return{tiles:o,names:s}}function Y_(e){switch(e){case 17:return`dxt1`;case 18:case 19:return`dxt3`;case 20:return`dxt4`;case 21:return`dxt5`;case 25:return`webp`;case 12:case 13:case 10:case 11:case 14:case 28:return`raw`;default:return null}}function X_(e){switch(e){case 14:return`dxt5`;case ev.DXT1_RGB:case ev.DXT1_RGBA:return`dxt1`;case ev.DXT3:return`dxt3`;case ev.DXT5:return`dxt5`;case ev.WEBP:return`webp`;case ev.CRN:case ev.CRN_DXT5:return`crn`;case ev.KTX2:return`ktx2`;default:return null}}function Z_(e,t){return tv.has(e)?`crn`:X_(e)||(Y_(t)??`unknown`)}function Q_(e){return nv[e]??21}var $_,ev,tv,nv,rv=n((()=>{$_={RGB:10,BGR:11,ARGB:12,ABGR:13,BGRA:14,RGBA:28,WEBP:25,DXT1:17,DXT3:19,DXT4:20,DXT5:21,CRN_DXT5:26,STANDARD_CRN:27},ev={NONE:0,DXT1_RGB:33776,DXT1_RGBA:33777,DXT3:33778,DXT5:33779,WEBP:38e3,CRN:38001,KTX2:38002,CRN_DXT5:5e4},tv=new Set([26,27]),nv={dxt1:17,dxt3:19,dxt4:20,dxt5:21}}));A_(),rv();function iv(e){if(!e.data?.length||!e.width||!e.height)return null;let t=e.width*e.height*4;if(e.compressType===0&&e.pixelFormat===28&&e.data.length>=t)return e.data.subarray(0,t);let n=Z_(e.compressType,e.pixelFormat);if(!n.startsWith(`dxt`))return null;let r=new Uint8Array(e.width*e.height*4);try{k_.decode(r,e.width,e.height,e.data,Q_(n))}catch{return null}return r}function av(e,t,n,r,i){let a=new Uint8Array(r*i*4);for(let o=0;o<i;o++){let s=o*n/i,c=(o+1)*n/i;for(let i=0;i<r;i++){let l=i*t/r,u=(i+1)*t/r,d=0,f=0,p=0,m=0,h=0;for(let r=Math.floor(s);r<Math.ceil(c);r++)for(let i=Math.floor(l);i<Math.ceil(u);i++){let a=Math.min(t-1,i),o=(Math.min(n-1,r)*t+a)*4;d+=e[o],f+=e[o+1],p+=e[o+2],m+=e[o+3],h++}let g=(o*r+i)*4;a[g]=d/h,a[g+1]=f/h,a[g+2]=p/h,a[g+3]=m/h}}return a}function ov(e,t,n={}){let r=n.maxAspectDelta??.02,i=n.maxMeanError??24,a=e.width/e.height,o=t.width/t.height,s=Math.abs(o/a-1),c=t.width/e.width,l=t.height/e.height,u=e=>({ok:!1,reason:e,aspectDelta:s,scale:c,meanAbsError:NaN});if(!Number.isFinite(s)||s>r)return u(`aspect`);if(t.width*t.height<=e.width*e.height)return u(`content`);if(c!==l||!Number.isInteger(c))return u(`scale`);let d=iv(e),f=iv(t);if(!d||!f)return u(`undecodable`);let p=av(f,t.width,t.height,e.width,e.height),m=0,h=0;for(let t=0;t<e.width*e.height;t++)if(!(d[t*4+3]<8)){for(let e=0;e<3;e++)m+=Math.abs(d[t*4+e]-p[t*4+e]);h+=3}if(h===0)return u(`empty`);let g=m/h;return{ok:g<=i,reason:g<=i?`ok`:`content`,aspectDelta:s,scale:c,meanAbsError:g}}var sv=i({default:()=>$});function cv(){let e=lv;if(typeof atob==`function`){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}return Uint8Array.from(Buffer.from(e,`base64`))}var lv,uv,dv,$,fv,pv,mv,hv,gv,_v,vv,yv,bv,xv,Sv,Cv,wv,Tv,Ev,Dv,Ov,kv,Av,jv,Mv,Nv,Pv,Fv,Iv,Lv,Rv,zv,Bv,Vv,Hv,Uv,Wv,Gv,Kv,qv,Jv,Yv,Xv,Zv,Qv,$v=n((()=>{if(lv=`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aigCACICDQALIAcgADYCECAAIAQ2AhgLIAAgADYCDCAAIAA2AggPCyAEKAIIIgEgADYCDCAEIAA2AgggAEEANgIYIAAgBDYCDCAAIAE2AggLCzABAX8CQCAARQ0AIABBfGooAgAiAEEDcSIBQQFGDQAgAEF4cUEEQQggARtrDwtBAAtZAQF/IAAgAC0ASiIBQX9qIAFyOgBKIAAoAgAiAUEIcQRAIAAgAUEgcjYCAEF/DwsgAEIANwIEIAAgACgCLCIBNgIcIAAgATYCFCAAIAEgACgCMGo2AhBBAAujAgACQAJAIAFBFEsNACABQXdqIgFBCUsNAAJAAkACQAJAAkACQAJAAkAgAUEBaw4JAQIJAwQFBgkHAAsgAiACKAIAIgFBBGo2AgAgACABKAIANgIADwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAIgFBBGo2AgAgACABMgEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMwEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMAAANwMADwsgAiACKAIAIgFBBGo2AgAgACABMQAANwMADwsgACACQQARDwALDwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC0oBA38gACgCACwAAEFQakEKSQRAA0AgACgCACIBLAAAIQMgACABQQFqNgIAIAMgAkEKbGpBUGohAiABLAABQVBqQQpJDQALCyACCxEAIABFBEBBAA8LIAAgARAsC7QKARx/IwBB8ARrIgUkACAAQeABaiEOIAAoAqQBIQ8CQCAAKALkASIMIANBAWpBfnEiFkEBdCIGTw0AAkAgACgC6AEgBk8NACAOIAYgDEEBaiAGRkEIEAYNACAAQQE6AOwBDAELIAAgBjYC5AELIAAoAgwtABEEQCAEQQFqQX5xIRcgAEHwAGohGiAAQUBrIRggAEEoaiEbIABBEGohECACQQJ2IAZrQQJ0IRxBACEGQQAhDANAIBcEQCABIBRBAnRqKAIAIQtBACERA0AgFgRAIBFBAXEhHSARIARJIRVBACESA0AgACgC5AEgEkEBdCIITQRAIAVBtgg2AlAgBUHOBDYCVCAFQasNNgJYIAVB8ABqIAVB0ABqEAMgBUHwAGoQBAsgDigCACAIQQN0aiEHAkACQAJ/IB0EQCAHLwEADAELIAcgECAbEAUiAkECdiIJQQNxIAJBBHZBDHFyOwEAIAlBDHEgAkEDcXILIgJBA3EiCUEDSw0AAkACQAJAIAlBAWsOAwEDAgALIBAgGBAFIAZqIgZBACAPIAYgD0kbayEGCyAHIAY7AQIMAgsgByAMOwECIAwhBgwBCyAHLwECIQYLIAAoAqQBIAZNBEAgBUG2CDYCQCAFQc4ENgJEIAVBqw02AkggBUHwAGogBUFAaxADIAVB8ABqEAQLIAUgACgCoAEgBkECdGooAgAiCTYCaCAQIBoQBSEeIAJBAnZBP3EiCgRAIBAgGBAFIAZqIgJBACAPIAIgD0kbayEGCyAAKALkASIHIAhBAXIiAk0EQCAFQbYINgIwIAVBzgQ2AjQgBUGrDTYCOCAFQfAAaiAFQTBqEAMgBUHwAGoQBCAAKALkASEHCyAOKAIAIgggAkEDdCINai8BAiEMIBIgA0kgFXEhFSAHIAJNBH8gBUG2CDYCICAFQc4ENgIkIAVBqw02AiggBUHwAGogBUEgahADIAVB8ABqEAQgDigCAAUgCAsgDWogBjsBAiAAKAKkASAGTQRAIAVBtgg2AhAgBUHOBDYCFCAFQasNNgIYIAVB8ABqIAVBEGoQAyAFQfAAahAECyAFIAAoAqABIAZBAnRqKAIAIgg2AmQgFQRAIApBAXYhEyAIQf8BcSICQQRqIAlB/wFxIgdPIAdBA2ogAk9xIgIhB0EBIQoCQCACRQ0AA0BBAEEAIAIgBUHkAGogCmotAAAiAkEEaiAFQegAaiAKai0AACIHSRsgB0EDaiACSRsiAkEARyEHIAJFDQEgCkEBaiIKQQNJDQALCyAJQRh2IR8gCUEQdiEKIAlBCHYhDSAIQRh2ISAgE0EBcyETIAlBA3QhGQJ/IAdFBEAgBSANQQN0QfABcSAIQQl2Qf8AcXI6AG0gBSAZQfABcSAIQf4BcUEBdnI6AGwgCEERdkH/AHEhByAKQQN0QfABcQwBCyAFIAhBCHYgDWtBB3EgDUEDdHI6AG0gBSAIIAlrQQdxIBlyOgBsIApBA3QhByAIQRB2IAprQQdxCyEIIAUgByAIcjoAbiAFIBMgH0EFdCACQQF0ciAgQQJ0cnI6AG8gCyAFKAJsNgIAIAAoArQBIB5BAXQgE3IiAk0EQCAFQbYINgIAIAVBzgQ2AgQgBUGrDTYCCCAFQfAAaiAFEAMgBUHwAGoQBAsgCyAAKAKwASACQQJ0aigCADYCBAsgC0EIaiELIBJBAWoiEiAWRw0ACwsgCyAcaiELIBFBAWoiESAXRw0ACwsgFEEBaiIUIAAoAgwtABFJDQALCyAFQfAEaiQAQQELiQUBAn8jAEHQBGsiASQAIABBADYCACAAKALgASICBEACQCACQQdxBEAgAUG2CDYCQCABQckPNgJEIAFBwgs2AkggAUHQAGogAUFAaxADIAFB0ABqEAQMAQsgAkEAQQBBAUHgFigCAEHQEygCABEAABoLIABCADcC4AEgAEEANgLoAQsgAEEAOgDsASAAKALQASICBEACQCACQQdxBEAgAUG2CDYCMCABQckPNgI0IAFBwgs2AjggAUHQAGogAUEwahADIAFB0ABqEAQMAQsgAkEAQQBBAUHgFigCAEHQEygCABEAABoLIABCADcC0AEgAEEANgLYAQsgAEEAOgDcASAAKALAASICBEACQCACQQdxBEAgAUG2CDYCICABQckPNgIkIAFBwgs2AiggAUHQAGogAUEgahADIAFB0ABqEAQMAQsgAkEAQQBBAUHgFigCAEHQEygCABEAABoLIABCADcCwAEgAEEANgLIAQsgAEEAOgDMASAAKAKwASICBEACQCACQQdxBEAgAUG2CDYCECABQckPNgIUIAFBwgs2AhggAUHQAGogAUEQahADIAFB0ABqEAQMAQsgAkEAQQBBAUHgFigCAEHQEygCABEAABoLIABCADcCsAEgAEEANgK4AQsgAEEAOgC8ASAAKAKgASICBEACQCACQQdxBEAgAUG2CDYCACABQckPNgIEIAFBwgs2AgggAUHQAGogARADIAFB0ABqEAQMAQsgAkEAQQBBAUHgFigCAEHQEygCABEAABoLIABCADcCoAEgAEEANgKoAQsgAEEAOgCsASAAQYgBahAHIABB8ABqEAcgAEHYAGoQByAAQUBrEAcgAEEoahAHIAFB0ARqJAALrQIBBX8jAEGgBGsiASQAIAAoAggiBEF/akGAwABPBEAgAUG2CDYCECABQaQTNgIUIAFB2ws2AhggAUEgaiABQRBqEAMgAUEgahAECyAAIAQ2AgAgACgCFCIDRQRAQQAhA0G0ARAQIgIEQCAC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hHhxDQIgAEEEaiEAIAFBfGoiAUEDSw0ACyACIQEgAyEACyABRQ0BCwNAIAAtAABFDQIgAEEBaiEAIAFBf2oiAQ0ACwtBAA8LIAALxgIBBn8jAEEgayIDJAAgAyAAKAIcIgU2AhAgACgCFCEEIAMgAjYCHCADIAE2AhggAyAEIAVrIgE2AhQgASACaiEGQQIhBSADQRBqIQEDQAJAAn8gBgJ/An9BACAAKAI8IAEgBSADQQxqEAIiBEUNABpB+B4gBDYCAEF/CwRAIANBfzYCDEF/DAELIAMoAgwLIgRGBEAgACAAKAIsIgE2AhwgACABNgIUIAAgASAAKAIwajYCECACDAELIARBf0oNASAAQQA2AhwgAEIANwMQIAAgACgCAEEgcjYCAEEAIAVBAkYNABogAiABKAIEawshACADQSBqJAAgAA8LIAFBCGogASAEIAEoAgQiB0siCBsiASAEIAdBACAIG2siByABKAIAajYCACABIAEoAgQgB2s2AgQgBiAEayEGIAUgCGshBQwAAAsAC34BA38jAEEQayIBJAAgAUEKOgAPAkAgACgCECICRQRAIAAQFw0BIAAoAhAhAgsCQCAAKAIUIgMgAk8NACAALABLQQpGDQAgACADQQFqNgIUIANBCjoAAAwBCyAAIAFBD2pBASAAKAIkEQEAQQFHDQAgAS0ADxoLIAFBEGokAAuFAQECfyMAQaABayICJAAgAkEIakHAEkGQARAOIAIgADYCNCACIAA2AhwgAkF+IABrIgNB/////wdB/////wcgA0sbIgM2AjggAiAAIANqIgA2AiQgAiAANgIYIAJBCGogARArIAMEQCACKAIcIgAgACACKAIYRmtBADoAAAsgAkGgAWokAAsyAQF/IAAoAhQiAyABIAIgACgCECADayIBIAEgAksbIgEQDiAAIAAoAhQgAWo2AhQgAguDAQIDfwF+AkAgAEKAgICAEFQEQCAAIQUMAQsDQCABQX9qIgEgACAAQgqAIgVCCn59p0EwcjoAACAAQv////+fAVYhAiAFIQAgAg0ACwsgBaciAgRAA0AgAUF/aiIBIAIgAkEKbiIDQQpsa0EwcjoAACACQQlLIQQgAyECIAQNAAsLIAELNAAgAFBFBEADQCABQX9qIgEgAKdBD3FBsBJqLQAAIAJyOgAAIABCBIgiAEIAUg0ACwsgAQstACAAUEUEQANAIAFBf2oiASAAp0EHcUEwcjoAACAAQgOIIgBCAFINAAsLIAELdwACQCAARQRAIAEQDyEEIAJFDQEgBEUEQCACQQA2AgAgBA8LIAIgBBAWNgIAIAQPCyABRQRAIAAQEUEAIQQgAkUNASACQQA2AgBBAA8LQQAhBCADBEAgACABECAiBCAAIAQbIQALIAJFDQAgAiAAEBY2AgALIAQLxQIBA38jAEHQAWsiAiQAIAIgATYCzAFBACEBIAJBoAFqQQBBKBAIIAIgAigCzAE2AsgBAkBBACACQcgBaiACQdAAaiACQaABahASQQBIDQAgACgCTEEATgRAQQEhAQsgACgCACEDIAAsAEpBAEwEQCAAIANBX3E2AgALIANBIHEhBAJ/IAAoAjAEQCAAIAJByAFqIAJB0ABqIAJBoAFqEBIMAQsgAEHQADYCMCAAIAJB0ABqNgIQIAAgAjYCHCAAIAI2AhQgACgCLCEDIAAgAjYCLCAAIAJByAFqIAJB0ABqIAJBoAFqEBIgA0UNABogAEEAQQAgACgCJBEBABogAEEANgIwIAAgAzYCLCAAQQA2AhwgAEEANgIQIAAoAhQaIABBADYCFEEACxogACAAKAIAIARyNgIAIAFFDQALIAJB0AFqJAALiQIAAkAgAAR/IAFB/wBNDQECQEGkFigCACgCAEUEQCABQYB/cUGAvwNGDQMMAQsgAUH/D00EQCAAIAFBP3FBgAFyOgABIAAgAUEGdkHAAXI6AABBAg8LIAFBgLADT0EAIAFBgEBxQYDAA0cbRQRAIAAgAUE/cUGAAXI6AAIgACABQQx2QeABcjoAACAAIAFBBnZBP3FBgAFyOgABQQMPCyABQYCAfGpB//8/TQRAIAAgAUE/cUGAAXI6AAMgACABQRJ2QfABcjoAACAAIAFBBnZBP3FBgAFyOgACIAAgAUEMdkE/cUGAAXI6AAFBBA8LC0H4HkEZNgIAQX8FQQELDwsgACABOgAAQQELBABCAAsEAEEAC6AQAQ5/IwBBgAdrIgQkAAJAIAFFDQAgA0ELSw0AIAAgATYCACAEQfABakEAQcQAEAgDQCACIAVqLQAAIgcEQCAEQfABaiAHQQJ0aiIHIAcoAgBBAWo2AgALIAVBAWoiBSABRw0AC0EAIQdBfyEJQQEhBQNAAkAgBUECdCIIIARB8AFqaigCACIMRQRAIAAgCGpBADYCGAwBCyAIQXxqIgogBEHAAmpqIAY2AgAgACAKaiIKIAc2AmAgCiAGIAxqIgZBf2pBECAFayIKdEF/IAp0QX9zckEBajYCHCAEQaABaiAIaiAHNgIAIAsgBSALIAVLGyELIAkgBSAJIAVJGyEJIAcgDGohBwsgBkEBdCEGIAVBAWoiBUERRw0ACyAAIAc2AgQgByAAKAKsAUsEQCAAIAciBWlBAUcEfyABIAdBf2oiBUEQdiAFciIFQQh2IAVyIgVBBHYgBXIiBUECdiAFciIFQQF2IAVyQQFqIgUgBSABSxsFIAULNgKsAQJAIAAoArABIgVFDQACQCAFQXxqKAIAIgYEQCAGIAVBeGooAgBBf3NGDQELIARBtgg2ApABIARB2wI2ApQBIARB1Q02ApgBIARBgANqIARBkAFqEAMgBEGAA2oQBAsgBUF4aiIFQQdxBEAgBEG2CDYCgAEgBEHJDzYChAEgBEHCCzYCiAEgBEGAA2ogBEGAAWoQAyAEQYADahAEDAELIAVBAEEAQQFB4BYoAgBB0BMoAgARAAAaC0EAIQUgACgCrAEiBkEBIAYbIghBAXRBCGoQECIGRQRAIABBADYCsAEMAgsgBiAINgIEIAYgCEF/czYCACAAIAZBCGo2ArABCyAAIAs6ABkgACAJOgAYQQAhBQNAIAIgBWotAAAiBgRAIAZBAnQiBiAEQfABamooAgBFBEAgBEG2CDYCcCAEQYQONgJ0IARBpQk2AnggBEGAA2ogBEHwAGoQAyAEQYADahAECyAEQaABaiAGaiIGIAYoAgAiBkEBajYCACAGIAdPBEAgBEG2CDYCYCAEQYgONgJkIARBsgk2AmggBEGAA2ogBEHgAGoQAyAEQYADahAECyAAKAKwASAGQQF0aiAFOwEACyAFQQFqIgUgAUcNAAsgACADQQAgAC0AGCADSRsiBzYCCCAHBEACQEEBIAd0IgkgACgCpAFNBEAgCUECdCEGIAAoAqgBIQUMAQsgACAJNgKkAQJAIAAoAqgBIgFFDQACQCABQXxqKAIAIgUEQCAFIAFBeGooAgBBf3NGDQELIARBtgg2AlAgBEHbAjYCVCAEQdUNNgJYIARBgANqIARB0ABqEAMgBEGAA2oQBAsgAUF4aiIBQQdxBEAgBEG2CDYCQCAEQckPNgJEIARBwgs2AkggBEGAA2ogBEFAaxADIARBgANqEAQMAQsgAUEAQQBBAUHgFigCAEHQEygCABEAABoLQQAhBSAJQQJ0IgZBCGoQECIBRQRAIABBADYCqAEMAwsgASAJNgIEIAEgCUF/czYCACAAIAFBCGoiBTYCqAELIAVB/wEgBhAIQQEhAQNAAkAgBEHwAWogAUECdGooAgBFDQAgAUF/aiIFQQJ0IgYgBEHAAmpqKAIAIQggBUEQTwRAIARBtgg2AjAgBEHqCzYCNCAEQf8MNgI4IARBgANqIARBMGoQAyAEQYADahAECyAIIAAgBmoiBSgCHCIGQX9qQRAgAWt2QX8gBhsiCksNACAHIAFrIQwgAUEQdCEOIAUoAmAgCGshDwNAIAIgACgCsAEgCCAPakEBdGovAQAiBWotAAAgAUcEQCAEQbYINgIgIARBrg42AiQgBEHPCTYCKCAEQYADaiAEQSBqEAMgBEGAA2oQBAsgBSAOciEQIAggDHQhEUEAIQUDQCAFIBFqIg0gCU8EQCAEQbYINgIQIARBsw42AhQgBEHxCTYCGCAEQYADaiAEQRBqEAMgBEGAA2oQBAsgACgCqAEiBiANQQJ0Ig1qKAIAQX9HBH8gBEG2CDYCACAEQbUONgIEIARBiAo2AgggBEGAA2ogBBADIARBgANqEAQgACgCqAEFIAYLIA1qIBA2AgAgBUEBaiIFIAx2RQ0ACyAIQQFqIgggCk0NAAsLIAcgAUEBaiIBTw0ACwsgACAAKAJgIAQoAsACazYCYCAAIAAoAmQgBCgCxAJrNgJkIAAgACgCaCAEKALIAms2AmggACAAKAJsIAQoAswCazYCbCAAIAAoAnAgBCgC0AJrNgJwIAAgACgCdCAEKALUAms2AnQgACAAKAJ4IAQoAtgCazYCeCAAIAAoAnwgBCgC3AJrNgJ8IAAgACgCgAEgBCgC4AJrNgKAASAAIAAoAoQBIAQoAuQCazYChAEgACAAKAKIASAEKALoAms2AogBIAAgACgCjAEgBCgC7AJrNgKMASAAIAAoApABIAQoAvACazYCkAEgACAAKAKUASAEKAL0Ams2ApQBIAAgACgCmAEgBCgC+AJrNgKYASAAIAAoApwBIAQoAvwCazYCnAEgAEEANgIQIAAgAC0AGDYCFAJAIAdFDQADQCADRQ0BIANBAnQhASADQX9qIgIhAyABIARB8AFqaigCAEUNAAsgACACQQJ0aigCHCEBIAAgB0EBaiIFNgIUIAAgATYCECAFIAtLDQADQCAEQfABaiAFQQJ0aigCAARAIAAgBTYCFAwCCyAFQQFqIgUgC00NAAsLIABB//8/NgKgASAAQX82AlwgAEEgIAAoAghrNgIMQQEhBQsgBEGAB2okACAFCy8AIAECfyACKAJMQX9MBEAgACABIAIQEwwBCyAAIAEgAhATCyIARgRAIAEPCyAAC9QHAQ9/IwBBkAVrIgEkACAAKAIMIgMtAD1BCHQgAy0APEEQdHIgAy0APnIiAgRAIAAgACgCBCADLQA7IAMtADpBCHQgAy0AOUEQdHJyaiIDNgIQIAAgAjYCHCAAIAM2AhQgAEIANwIgIAAgAiADajYCGAsgAUIANwOAAUEAIQMgAUEAOgCIASABQgA3A3ggAUEANgKMASAAQRBqIgUgAUH4AGoQCRogAEHQAWohBwJAIAAoAtQBIgIgACgCDCIELQA/QQh0IARBQGstAAByQQNsIgRGDQACQCACIARNBEAgACgC2AEgBEkEQCAHIAQgAkEBaiAERkECEAZFDQIgACgC1AEhAgsgBygCACACQQF0akEAIAQgAmtBAXQQCAsgACAENgLUAQwBCyAAQQE6ANwBCwNAIAFBMGogA2ogA0EHcUH3DGotAAAgA0EDdkH3DGotAABBA3RyOgAAIANBAWoiA0HAAEcNAAsgACgC1AEEQEEAIQMDQCABQTBqIAUgAUH4AGoQBSAGcyICQT9xai0AACEEIAFBMGogBSABQfgAahAFQQZ0IAJzIgJBBnZBP3FqLQAAIQYgAUEwaiAFIAFB+ABqEAVBDHQgAnMiAkEMdkE/cWotAABBDHQiCCAEIAZBBnRyciEJIAFBMGogBSABQfgAahAFQRJ0IAJzIgZBEnZBP3FqLQAAQRJ0IQwgAUEwaiAFIAFB+ABqEAUgCnMiAkE/cWotAAAhDSABQTBqIAUgAUH4AGoQBUEGdCACcyICQQZ2QT9xai0AAEEGdCELIAFBMGogBSABQfgAahAFQQx0IAJzIgJBDHZBP3FqLQAAQQx0IQ4gAUEwaiAFIAFB+ABqEAVBEnQgAnMiCkESdkE/cWotAAAhDyAAKALUASIEIANNBEAgAUG2CDYCICABQc4ENgIkIAFBqw02AiggAUGQAWogAUEgahADIAFBkAFqEAQgACgC1AEhBAsgBygCACICIANBAXRqIAk7AQAgBCADQQFqIglNBEAgAUG2CDYCECABQc4ENgIUIAFBqw02AhggAUGQAWogAUEQahADIAFBkAFqEAQgACgC1AEhBCAAKALQASECCyACIAlBAXRqIAsgDXJBCHQgCCAMckEQdnI7AQAgBCADQQJqIghNBEAgAUG2CDYCACABQc4ENgIEIAFBqw02AgggAUGQAWogARADIAFBkAFqEAQgACgC1AEhBCAAKALQASECCyACIAhBAXRqIAsgDnIgD0ESdHJBCHY7AQAgA0EDaiIDIARJDQALCyABQfgAahAHIAFBkAVqJABBAQvjBAEMfyMAQSBrIgQkACAAKAIMIgItAD1BCHQgAi0APEEQdHIgAi0APnIiAQRAIAAgACgCBCACLQA7IAItADpBCHQgAi0AOUEQdHJyaiICNgIQIAAgATYCHCAAIAI2AhQgAEIANwIgIAAgASACajYCGAsgBEIANwMQIARBADoAGCAEQgA3AwggBEEANgIcIABBEGoiDCAEQQhqEAkaIABB0AFqIQUCQCAAKALUASIDIAAoAgwiAi0AP0EIdCACQUBrLQAAckEGbCIBRg0AAkAgAyABTQRAIAAoAtgBIAFJBEAgBSABIANBAWogAUZBAhAGRQ0CIAAoAtQBIQMLIAUoAgAgA0EBdGpBACABIANrQQF0EAgLIAAgATYC1AEMAQsgAEEBOgDcASAAKALUASEBCyAEQgA3AwAgAQRAIAUoAgAhBgNAQQAhAUEAIQcDQCABQQFxBH8gB0EDdgUgBCABQQF2aiICIAwgBEEIahAFIAItAABzIgI6AAAgAkH/AXELIQcgBiABQQFqIgJBA2wiCkEDdmoiCyALLQAAQQMgB0EHcSIFayAFIAVBBEkbQf8BcSIIQQggCkEHcSIDa3RyOgAAIANBAk0EQCALQX9qIgUgBS0AACAIIAN2cjoAAAsgAUEDcSABQQJ2a0EJbCAKaiIFQQN2QR9xIAZqIgMiAUEGaiABLQAGIAhBCCAFQQdxIgFrdHI6AAAgAUECTQRAIAMgAy0ABSAIIAF2cjoABQsgAiIBQRBHDQALIAZBDGohBiAJQQZqIgkgACgC1AFJDQALCyAEQQhqEAcgBEEgaiQAQQELqAQBCn8jAEEgayIDJAAgACgCDCIBLQA9QQh0IAEtADxBEHRyIAEtAD5yIgIEQCAAIAAoAgQgAS0AOyABLQA6QQh0IAEtADlBEHRycmoiATYCECAAIAI2AhwgACABNgIUIABCADcCICAAIAEgAmo2AhgLIANCADcDECADQQA6ABggA0IANwMIIANBADYCHCAAQRBqIgcgA0EIahAJGiAAQdABaiEEAkAgACgC1AEiAiAAKAIMIgEtAD9BCHQgAUFAay0AAHJBA2wiAUYNAAJAIAIgAU0EQCAAKALYASABSQRAIAQgASACQQFqIAFGQQIQBkUNAiAAKALUASECCyAEKAIAIAJBAXRqQQAgASACa0EBdBAICyAAIAE2AtQBDAELIABBAToA3AEgACgC1AEhAQsgA0IANwMAIAFB/////wdxBEAgBCgCACEIA0BBACEBQQAhAgNAIAFBAXEEfyACQQN2BSADIAFBAXZqIgIgByADQQhqEAUgAi0AAHMiAjoAACACQf8BcQshAiAIIAFBA3EgAUECdmtBCWwgAUEBaiIBQQNsaiIJQQN2QR9xIAZqaiIEIAQtAABBAyACQQdxIgVrIAUgBUEESRtB/wFxIgpBCCAJQQdxIgVrdHI6AAAgBUECTQRAIARBf2oiBCAELQAAIAogBXZyOgAACyABQRBHDQALIAZBBmoiBiAAKALUAUEBdEkNAAsLIANBCGoQByADQSBqJABBAQvOAwEIfyMAQbAEayICJAACQCAAKAIMIgEtADVBCHQgAS0ANEEQdHIgAS0ANnIiA0UEQAwBCyABLQA3IQYgAS0AOCEIIAAgACgCBCABLQAzIAEtADJBCHQgAS0AMUEQdHJyaiIBNgIQIAAgAzYCHCAAIAE2AhQgAEIANwIgIAAgASADajYCGCACQgA3AyAgAkEAOgAoIAJCADcDGCACQQA2AiwCQCAAQRBqIgcgAkEYahAJRQ0AIABBwAFqIQQCQCAAKALEASIBIAZBCHQgCHIiA0cEQCABIANNBEAgACgCyAEgA0kEQCAEIAMgAUEBaiADRkECEAZFDQMgACgCxAEhAQsgBCgCACABQQF0akEAIAMgAWtBAXQQCAsgACADNgLEAQsgA0UEQCACQbYINgIAIAJBzgQ2AgQgAkGrDTYCCCACQTBqIAIQAyACQTBqEARBASEFDAILIAQoAgAhAEEAIQFBACEEQQAhBgNAIAAgByACQRhqEAUgBmpB/wFxIgYgByACQRhqEAUgBGpB/wFxIgRBCHRyOwEAIABBAmohAEEBIQUgAUEBaiIBIANHDQALDAELIABBAToAzAELIAJBGGoQBwsgAkGwBGokACAFC+MQARN/IwBB8AVrIgEkAAJAAkAgACgCDCICLQASIgVBdmoiA0EETQRAQQEhE0EBIREgA0ECaw4DAQEBAgsLIAVBDEYhEQsgAi0ALiACLQAtQQh0IAItACxBEHRyciIFBEAgACAAKAIEIAItACsgAi0AKkEIdCACLQApQRB0cnJqIgI2AhAgACAFNgIcIAAgAjYCFCAAQgA3AiAgACACIAVqNgIYCyABQgA3A+ABIAFBADoA6AEgAUIANwPYASABQQA2AuwBIABBEGoiDSABQdgBahAJGiAAQbABaiEFAkAgACgCtAEiAyAAKAIMIgItAC9BCHQgAi0AMHIgEXQiAkYNAAJAIAMgAk0EQCAAKAK4ASACSQRAIAUgAiADQQFqIAJGQQQQBkUNAiAAKAK0ASEDCyAFKAIAIANBAnRqQQAgAiADa0ECdBAICyAAIAI2ArQBDAELIABBAToAvAELIAAoAgwiAi0AL0EIdCACLQAwcgRAA0AgDSABQdgBahAFIA5zIA0gAUHYAWoQBUEEdHMgDSABQdgBahAFQQh0cyANIAFB2AFqEAVBDHRzIA0gAUHYAWoQBUEQdHMgDSABQdgBahAFQRR0cyANIAFB2AFqEAVBGHRzIA0gAUHYAWoQBUEcdHMhDgJAIBMEQCAPQQF0IhBBAXIgDyARGyEKIA4gDkEBdkHVqtWqBXFzQX9zIQNBCCELQQAhEgNAIBJBA3QhBgJAIBFFBEAgACgCtAEgCk0EQCABQbYINgKwASABQc4ENgK0ASABQasNNgK4ASABQfABaiABQbABahADIAFB8AFqEAQLIAAoArABIgIgCkECdCIIaiIEIAQoAgAgAyAGdiIEQQF2QQFxIARBEHRBgIAEcXIgC0EPcXRyIgQ2AgAgACgCtAEgCk0EQCABQbYINgKgASABQc4ENgKkASABQasNNgKoASABQfABaiABQaABahADIAFB8AFqEAQgBSgCACICIAhqKAIAIQQLIAIgCGogBCADIAZBAnJ2IgxBAXZBAXEgDEEQdEGAgARxciALQQRqQQ9xdHIiBDYCACAAKAK0ASAKTQRAIAFBtgg2ApABIAFBzgQ2ApQBIAFBqw02ApgBIAFB8AFqIAFBkAFqEAMgAUHwAWoQBCAFKAIAIgIgCGooAgAhBAsgAiAIaiAEIAMgBkEEcnYiDEEBdkEBcSAMQRB0QYCABHFyIAtBCGpBD3F0ciIENgIAIAAoArQBIApNBH8gAUG2CDYCgAEgAUHOBDYChAEgAUGrDTYCiAEgAUHwAWogAUGAAWoQAyABQfABahAEIAUoAgAiAiAIaigCAAUgBAsgAyAGQQZydiIGQQF2QQFxIAZBEHRBgIAEcXIgC0EMakEPcXRyIQYgAiAIaiECDAELIAMgEkEBdCIIdiEMIAAoArQBIBBNBEAgAUG2CDYCcCABQc4ENgJ0IAFBqw02AnggAUHwAWogAUHwAGoQAyABQfABahAECyAAKAKwASICIBBBAnQiBGoiByAHKAIAIAxBAXZBAXEgDEEQdEGAgARxciALQQ9xIgd0cjYCACAAKAK0ASAKTQRAIAFBtgg2AmAgAUHOBDYCZCABQasNNgJoIAFB8AFqIAFB4ABqEAMgAUHwAWoQBCAFKAIAIQILIAIgCkECdCIMaiIJIAkoAgAgAyAGdiIJQQF2QQFxIAlBEHRBgIAEcXIgB3RyNgIAIAAoArQBIBBNBEAgAUG2CDYCUCABQc4ENgJUIAFBqw02AlggAUHwAWogAUHQAGoQAyABQfABahAEIAUoAgAhAgsgAiAEaiIHIAcoAgAgAyAIQQhydiIHQQF2QQFxIAdBEHRBgIAEcXIgC0EEakEPcSIHdHI2AgAgACgCtAEgCk0EQCABQbYINgJAIAFBzgQ2AkQgAUGrDTYCSCABQfABaiABQUBrEAMgAUHwAWoQBCAFKAIAIQILIAIgDGoiCSAJKAIAIAMgBkECcnYiCUEBdkEBcSAJQRB0QYCABHFyIAd0cjYCACAAKAK0ASAQTQRAIAFBtgg2AjAgAUHOBDYCNCABQasNNgI4IAFB8AFqIAFBMGoQAyABQfABahAEIAUoAgAhAgsgAiAEaiIHIAcoAgAgAyAIQRBydiIHQQF2QQFxIAdBEHRBgIAEcXIgC0EIakEPcSIHdHI2AgAgACgCtAEgCk0EQCABQbYINgIgIAFBzgQ2AiQgAUGrDTYCKCABQfABaiABQSBqEAMgAUHwAWoQBCAFKAIAIQILIAIgDGoiCSAJKAIAIAMgBkEEcnYiCUEBdkEBcSAJQRB0QYCABHFyIAd0cjYCACAAKAK0ASAQTQRAIAFBtgg2AhAgAUHOBDYCFCABQasNNgIYIAFB8AFqIAFBEGoQAyABQfABahAEIAUoAgAhAgsgAiAEaiIEIAQoAgAgAyAIQRhydiIIQQF2QQFxIAhBEHRBgIAEcXIgC0EMakEPcSIIdHI2AgAgACgCtAEgCk0EfyABQbYINgIAIAFBzgQ2AgQgAUGrDTYCCCABQfABaiABEAMgAUHwAWoQBCAFKAIABSACCyAMaiICKAIAIAMgBkEGcnYiBkEBdkEBcSAGQRB0QYCABHFyIAh0ciEGCyACIAY2AgAgC0EBaiELIBJBAWoiEkEERw0ACwwBCyAAKAK0ASAPTQRAIAFBtgg2AsABIAFBzgQ2AsQBIAFBqw02AsgBIAFB8AFqIAFBwAFqEAMgAUHwAWoQBAsgBSgCACAPQQJ0aiAOQQF0IA5zQarVqtV6cSAOQQF2QdWq1aoFcXI2AgALIA9BAWoiDyAAKAIMIgItAC9BCHQgAi0AMHJJDQALCyABQdgBahAHIAFB8AVqJABBAQvSBgEMfyMAQcAEayIBJAAgACgCDCICLQAnQQh0IAItAChyIQUCQAJAIAItABIiA0F2aiIEQQRNBEBBASEGQQEhCCAEQQJrDgMBAQECCwsgA0EMRiEICyAAQaABaiEHAkACQCAFIAAoAqQBIgNHBEAgAyAFTQRAIAAoAqgBIAVJBEBBACEEIAcgBSADQQFqIAVGQQQQBkUNAyAAKAKkASEDCyAAKAKgASADQQJ0akEAIAUgA2tBAnQQCCAAKAIMIQILIAAgBTYCpAELIAItACYgAi0AJUEIdCACLQAkQRB0cnIiBEUEQEEAIQQMAgsgAEEQaiEDIAAgACgCBCACLQAjIAItACJBCHQgAi0AIUEQdHJyaiICNgIQIAAgBDYCHCAAIAI2AhQgAEIANwIgIAAgAiAEajYCGEEAIQQgAUEAOgAgIAFBADYCPCABQgA3AiwgAUIANwAxIAFCADcDGCABQgA3AxAgAUIANwIkQQFBAiAGGyEJIAFBKGohCkEAIQICQANAIAMgAUEQaiACQRhsahAJRQ0BIAJBAWoiAiAJSQ0ACyAAKAKkAUUEQCABQbYINgIAIAFBzgQ2AgQgAUGrDTYCCCABQUBrIAEQAyABQUBrEAQLIAVFBEBBASEEDAELIAcoAgAhAkEAIQcgBgRAQQAhBgNAIAMgAUEQahAFIAZqIAMgAUEQahAFQQh0aiADIAFBEGoQBUEQdGogAyABQRBqEAVBGHRqIgRBn778+AFxIgYhACACIAgEfyAABSAEQQN0Qfjx4wdxIARBgICAOHEiAEECdCAAQQV0cnJBgICAEHILNgIAIAJBBGohAkEBIQQgB0EBaiIHIAVHDQALDAELQQAhAEEAIQZBACEIQQAhCQNAIAMgAUEQahAFIQQgAiADIAoQBSALakE/cSILQQV0IAQgDGpBH3EiDEELdHIgAyABQRBqEAUgCWpBH3EiCXIgAyABQRBqEAUgCGoiBEEbdHIgAyAKEAUgBmpBP3EiBkEVdHIgAyABQRBqEAUgAGpBH3EiAEEQdHI2AgAgAkEEaiECIARBH3EhCEEBIQQgB0EBaiIHIAVHDQALCyABQShqEAcgAUEQahAHDAELIABBAToArAELIAFBwARqJAAgBAvTAwIEfwF+IwBB0ARrIgYkACAGQSg2AiggACABIAZBKGoQCyAGKAIwIQggBigCLCEDAn8gBikDSCIKQg9aBEAgBkG2CDYCECAGQfUQNgIUIAZB1Qs2AhggBkHQAGogBkEQahADIAZB0ABqEARBAAwBCyAKp0ECdEGIDmooAgALIQkgBiACNgIkIAAgARBIIQcCQCAEIAVqIgUgBE0NACAIIAR2IQAgAyAEdiEBIAdFBEADQCACIAFBA2pBAnYgCWwgAEEDakECdmxqIQIgAEEBdiEAIAFBAXYhASAEQQFqIgQgBUcNAAsgBiACNgIkDAELA0AgAUEDakECdiAJbCIDIABBA2pBAnZsIQgCQCAEQQ9LDQAgCEUNACAHKAIAQb2V5/cBRw0AIAcgBkEkaiAIIAMgBBBFIAYoAiQhAgsgBiACIAhqIgI2AiQgAEEBdiEAIAFBAXYhASAEQQFqIgQgBUcNAAsLAkAgB0UNACAHKAIAQb2V5/cBRw0AIAcQHCAHQQdxBEAgBkG2CDYCACAGQckPNgIEIAZBwgs2AgggBkHQAGogBhADIAZB0ABqEAQMAQsgB0EAQQBBAUHgFigCAEHQEygCABEAABoLIAZB0ARqJAALnQECAX8BfiMAQcAEayIDJAAgA0EoNgIYIAAgASADQRhqEAsgAygCICACdkEDakECdiEAIAMoAhwgAnZBA2pBAnYhAgJ/IAMpAzgiBEIPWgRAIANBtgg2AgAgA0H1EDYCBCADQdULNgIIIANBQGsgAxADIANBQGsQBEEADAELIASnQQJ0QYgOaigCAAshASADQcAEaiQAIAAgAmwgAWwLdwIBfwF+IwBBwARrIgIkACACQSg2AhggACABIAJBGGoQCwJ/IAIpAzgiA0IPWgRAIAJBtgg2AgAgAkH1EDYCBCACQdULNgIIIAJBQGsgAhADIAJBQGsQBEEADAELIAOnQQJ0QYgOaigCAAshACACQcAEaiQAIAALLwEBfyMAQTBrIgIkACACQSg2AgggACABIAJBCGoQCyACKAIoIQAgAkEwaiQAIAALLwEBfyMAQTBrIgIkACACQSg2AgggACABIAJBCGoQCyACKAIUIQAgAkEwaiQAIAALLwEBfyMAQTBrIgIkACACQSg2AgggACABIAJBCGoQCyACKAIQIQAgAkEwaiQAIAALLwEBfyMAQTBrIgIkACACQSg2AgggACABIAJBCGoQCyACKAIMIQAgAkEwaiQAIAAL5gcBEn8jAEHgBGsiBSQAIABB4AFqIQ8gACgCpAEhDQJAIAAoAuQBIgYgA0EBakF+cSIKTw0AAkAgACgC6AEgCk8NACAPIAogBkEBaiAKRkEIEAYNACAAQQE6AOwBDAELIAAgCjYC5AELIAAoAgwiBi0AEQRAIARBAWpBfnEhEiAAQfAAaiETIABBQGshFCAAQShqIRUgAEEQaiEMIAJBAnYgCkEBdGtBAnQhFgNAIBIEQCABIBBBAnRqKAIAIQJBACEOA0ACQCAKRQ0AIA4gBEkhC0EAIQYgDkEBcUUEQANAIAZBAXFFBEAgDCAVEAUhCAsgACgC5AEgBk0EQCAFQbYINgIgIAVBzgQ2AiQgBUGrDTYCKCAFQeAAaiAFQSBqEAMgBUHgAGoQBAsgBiADSSALcSELIA8oAgAgBkEDdGoiCSAIQf8BcSIRQQJ2QQNxOwEAAkAgCEEedEEedUEATgRAIAhBA3FBAWtFBEAgCSAHOwECDAILIAkgDCAUEAUgB2oiB0EAIA0gByANSRtrIgc7AQIMAQsgCS8BAiEHCyAMIBMQBSEIIAsEQCAAKAKkASAHTQRAIAVBtgg2AhAgBUHOBDYCFCAFQasNNgIYIAVB4ABqIAVBEGoQAyAFQeAAahAECyACIAAoAqABIAdBAnRqKAIANgIAIAAoArQBIAhNBEAgBUG2CDYCACAFQc4ENgIEIAVBqw02AgggBUHgAGogBRADIAVB4ABqEAQLIAIgACgCsAEgCEECdGooAgA2AgQLIBFBBHYhCCACQQhqIQIgBkEBaiIGIApHDQAMAgALAAsDQCAAKALkASAGTQRAIAVBtgg2AlAgBUHOBDYCVCAFQasNNgJYIAVB4ABqIAVB0ABqEAMgBUHgAGoQBAsgBiADSSALcSELAkAgDygCACAGQQN0aiIJLQAAIhFBAU0EQCARQQFrBEAgDCAUEAUgB2oiB0EAIA0gByANSRtrIQcLIAkgBzsBAgwBCyAJLwECIQcLIAwgExAFIQkgCwRAIAAoAqQBIAdNBEAgBUG2CDYCQCAFQc4ENgJEIAVBqw02AkggBUHgAGogBUFAaxADIAVB4ABqEAQLIAIgACgCoAEgB0ECdGooAgA2AgAgACgCtAEgCU0EQCAFQbYINgIwIAVBzgQ2AjQgBUGrDTYCOCAFQeAAaiAFQTBqEAMgBUHgAGoQBAsgAiAAKAKwASAJQQJ0aigCADYCBAsgAkEIaiECIAZBAWoiBiAKRw0ACwsgAiAWaiECIA5BAWoiDiASRw0ACyAAKAIMIQYLIBBBAWoiECAGLQARSQ0ACwsgBUHgBGokAEEBC4EOASJ/IwBBsAVrIgUkACAAQeABaiETIAAoAsQBIRwgACgCpAEhFAJAIAAoAuQBIg8gA0EBakF+cSIXQQF0IgpPDQACQCAAKALoASAKTw0AIBMgCiAPQQFqIApGQQgQBg0AIABBAToA7AEMAQsgACAKNgLkAQsgACgCDC0AEQRAIARBAWpBfnEhHSAAQYgBaiEfIABB8ABqISAgAEHYAGohISAAQUBrIR4gAEEoaiEiIABBEGohESACQQJ2IBdBAnRrQQJ0ISNBACEKQQAhDwNAIB0EQCABIBhBAnRqKAIAIQxBACEVA0AgFwRAIBVBAXEhJCAVIARJIRlBACEWA0AgACgC5AEgFkEBdCINTQRAIAVBtgg2ApABIAVBzgQ2ApQBIAVBqw02ApgBIAVBsAFqIAVBkAFqEAMgBUGwAWoQBAsgEygCACANQQN0aiEGAkACQAJ/ICQEQCAGLwEADAELIAYgESAiEAUiCUECdiICQQNxIAlBBHZBDHFyOwEAIAJBDHEgCUEDcXILIhBBA3EiAkEDSw0AAkACQAJAIAJBAWsOAwEDAgALIBEgHhAFIQIgESAhEAUhDyAGIAIgCGoiAkEAIBQgAiAUSRtrIgg7AQIgBiALIA9qIgJBACAcIAIgHEkbayILOwEEDAMLIAYgCzsBBCAGIAg7AQIMAgsgBiAPOwEEIAYgCjsBAiAPIQsgCiEIDAELIAYvAQQhCyAGLwECIQgLIAAoAqQBIAhNBEAgBUG2CDYCgAEgBUHOBDYChAEgBUGrDTYCiAEgBUGwAWogBUGAAWoQAyAFQbABahAECyAFIAAoAqABIAhBAnRqKAIAIhI2AqgBIBEgIBAFISUgESAfEAUhJiAQQQJ2QT9xIgkEQCARIB4QBSAIaiICQQAgFCACIBRJG2shCAsgACgCpAEgCE0EQCAFQbYINgJwIAVBzgQ2AnQgBUGrDTYCeCAFQbABaiAFQfAAahADIAVBsAFqEAQLIAUgACgCoAEgCEECdGooAgAiDjYCpAEgACgC5AEiByANQQFyIgZNBEAgBUG2CDYCYCAFQc4ENgJkIAVBqw02AmggBUGwAWogBUHgAGoQAyAFQbABahAEIAAoAuQBIQcLIBMoAgAiAiAGQQN0Ig1qLwECIQogByAGTQRAIAVBtgg2AlAgBUHOBDYCVCAFQasNNgJYIAVBsAFqIAVB0ABqEAMgBUGwAWoQBCAAKALkASEHIAAoAuABIQILIAIgDWovAQQhDyAWIANJIBlxIRkgByAGTQRAIAVBtgg2AkAgBUHOBDYCRCAFQasNNgJIIAVBsAFqIAVBQGsQAyAFQbABahAEIAAoAuQBIQcgACgC4AEhAgsgAiANaiAIOwECIAcgBk0EfyAFQbYINgIwIAVBzgQ2AjQgBUGrDTYCOCAFQbABaiAFQTBqEAMgBUGwAWoQBCATKAIABSACCyANaiALOwEEIBkEQCAJQQF2IQYgDkH/AXEiCUEEaiASQf8BcSICTyACQQNqIAlPcSICIRBBASEHAkAgAkUNAANAQQBBACACIAVBpAFqIAdqLQAAIglBBGogBUGoAWogB2otAAAiAkkbIAJBA2ogCUkbIgJBAEchECACRQ0BIAdBAWoiB0EDSQ0ACwsgEkEYdiENIBJBEHYhGiASQQh2IRsgDkEYdiEJIAZBAXMhByASQQN0IQYCfyAQRQRAIAUgG0EDdEHwAXEgDkEJdkH/AHFyOgCtASAFIAZB8AFxIA5B/gFxQQF2cjoArAEgDkERdkH/AHEhECAaQQN0QfABcQwBCyAFIA5BCHYgG2tBB3EgG0EDdHI6AK0BIAUgDiASa0EHcSAGcjoArAEgGkEDdCEQIA5BEHYgGmtBB3ELIQYgBSAGIBByOgCuASAFIAcgDUEFdCACQQF0ciAJQQJ0cnI6AK8BIAAoAtQBICZBBmxBA0EAIAcbaiICTQRAIAVBtgg2AiAgBUHOBDYCJCAFQasNNgIoIAVBsAFqIAVBIGoQAyAFQbABahAECyAAKALQASACQQF0aiECIAAoAsQBIAtNBEAgBUG2CDYCECAFQc4ENgIUIAVBqw02AhggBUGwAWogBUEQahADIAVBsAFqEAQLIAwgACgCwAEgC0EBdGovAQAgAi8BAEEQdHI2AgAgDCACKAECNgIEIAwgBSgCrAE2AgggACgCtAEgJUEBdCAHciICTQRAIAVBtgg2AgAgBUHOBDYCBCAFQasNNgIIIAVBsAFqIAUQAyAFQbABahAECyAMIAAoArABIAJBAnRqKAIANgIMCyAMQRBqIQwgFkEBaiIWIBdHDQALCyAMICNqIQwgFUEBaiIVIB1HDQALCyAYQQFqIhggACgCDC0AEUkNAAsLIAVBsAVqJABBAQu3BwEYfyMAQdAEayIFJAAgAEHgAWohFCAAKALEASEQAkAgACgC5AEiByADQQFqQX5xIglPDQACQCAAKALoASAJTw0AIBQgCSAHQQFqIAlGQQgQBg0AIABBAToA7AEMAQsgACAJNgLkAQsgACgCDCIHLQARBEAgBEEBakF+cSEVIABBiAFqIRYgAEHYAGohFyAAQShqIRggAEEQaiEMIAJBAnYgCUECdGtBAnQhGQNAIBUEQCABIBJBAnRqKAIAIQJBACERA0AgCQRAIBEgBEkhEyARQQFxIhpFIRtBACEHA0AgB0EBcSAbQQFzckUEQCAMIBgQBSENCyAAKALkASAHTQRAIAVBtgg2AkAgBUHOBDYCRCAFQasNNgJIIAVB0ABqIAVBQGsQAyAFQdAAahAECyAHIANJIQ4gFCgCACAHQQN0aiEGAkAgGgRAIAYtAAAhCAwBCyAGIA1B/wFxIg9BAnZBA3E7AQAgDUEDcSEIIA9BBHYhDQsgDiATcSETAkAgCEH/AXEiCEEBTQRAIAhBAWsEQCAGIAwgFxAFIApqIghBACAQIAggEEkbayIKOwEEIAYgDCAXEAUgC2oiBkEAIBAgBiAQSRtrIgs7AQYMAgsgBiALOwEGIAYgCjsBBAwBCyAGLwEGIQsgBi8BBCEKCyAMIBYQBSEGIAwgFhAFIQ4gEwRAIAAoAtQBIgggBkEDbCIPTQRAIAVBtgg2AjAgBUHOBDYCNCAFQasNNgI4IAVB0ABqIAVBMGoQAyAFQdAAahAEIAAoAtQBIQgLIAAoAtABIhwhBiAIIA5BA2wiDk0EQCAFQbYINgIgIAVBzgQ2AiQgBUGrDTYCKCAFQdAAaiAFQSBqEAMgBUHQAGoQBCAAKALQASEGCyAAKALEASAKTQRAIAVBtgg2AhAgBUHOBDYCFCAFQasNNgIYIAVB0ABqIAVBEGoQAyAFQdAAahAECyACIAAoAsABIgggCkEBdGovAQAgD0EBdCAcaiIPLwEAQRB0cjYCACACIA8oAQI2AgQgAiAAKALEASALTQR/IAVBtgg2AgAgBUHOBDYCBCAFQasNNgIIIAVB0ABqIAUQAyAFQdAAahAEIAAoAsABBSAICyALQQF0ai8BACAOQQF0IAZqIgYvAQBBEHRyNgIIIAIgBigBAjYCDAsgAkEQaiECIAdBAWoiByAJRw0ACwsgAiAZaiECIBFBAWoiESAVRw0ACyAAKAIMIQcLIBJBAWoiEiAHLQARSQ0ACwsgBUHQBGokAEEBC7QFARZ/IwBBsARrIgUkACAAQeABaiEQIAAoAsQBIRECQCAAKALkASIGIANBAWpBfnEiCE8NAAJAIAAoAugBIAhPDQAgECAIIAZBAWogCEZBCBAGDQAgAEEBOgDsAQwBCyAAIAg2AuQBCyAAKAIMIgctABEEQCAEQQFqQX5xIRIgAEGIAWohEyAAQdgAaiEUIABBKGohFSAAQRBqIQ0gAkECdiAIQQF0a0ECdCEWA0AgEgRAIAEgDkECdGooAgAhAkEAIQsDQCAIBEAgCyAESSEPIAtBAXEiF0UhGEEAIQcDQCAHQQFxIBhBAXNyRQRAIA0gFRAFIQoLIAAoAuQBIAdNBEAgBUG2CDYCICAFQc4ENgIkIAVBqw02AiggBUEwaiAFQSBqEAMgBUEwahAECyAHIANJIRkgECgCACAHQQN0aiEMAkAgFwRAIAwtAAAhBgwBCyAMIApB/wFxIhpBAnZBA3E7AQAgCkEDcSEGIBpBBHYhCgsgDyAZcSEPAkAgBkEBTQRAIAZBAWsEQCANIBQQBSAJaiIGQQAgESAGIBFJG2shCQsgDCAJOwEEDAELIAwvAQQhCQsgDSATEAUhBiAPBEAgACgC1AEgBkEDbCIGTQRAIAVBtgg2AhAgBUHOBDYCFCAFQasNNgIYIAVBMGogBUEQahADIAVBMGoQBAsgACgC0AEgBkEBdGohBiAAKALEASAJTQRAIAVBtgg2AgAgBUHOBDYCBCAFQasNNgIIIAVBMGogBRADIAVBMGoQBAsgAiAAKALAASAJQQF0ai8BACAGLwEAQRB0cjYCACACIAYoAQI2AgQLIAJBCGohAiAHQQFqIgcgCEcNAAsLIAIgFmohAiALQQFqIgsgEkcNAAsgACgCDCEHCyAOQQFqIg4gBy0AEUkNAAsLIAVBsARqJABBAQv3AQECfyMAQbAEayIDJAACQCAAQQdxBEAgA0G2CDYCICADQckPNgIkIANBrAs2AiggA0EwaiADQSBqEAMgA0EwahAEQQAhAAwBCyABQYGA/P8HTwRAIANBtgg2AgAgA0HJDzYCBCADQaMKNgIIIANBMGogAxADIANBMGoQBEEAIQAMAQtB0BMoAgAhBCADIAE2AiwgACABIANBLGpBAUHgFigCACAEEQAAIQAgAgRAIAIgAygCLDYCAAsgAEEHcUUNACADQbYINgIQIANB9w82AhQgA0HYCjYCGCADQTBqIANBEGoQAyADQTBqEAQLIANBsARqJAAgAAulBwEafyMAQdAEayIFJAAgAEHgAWohESAAKALEASESIAAoAqQBIRMCQCAAKALkASIHIANBAWpBfnEiCU8NAAJAIAAoAugBIAlPDQAgESAJIAdBAWogCUZBCBAGDQAgAEEBOgDsAQwBCyAAIAk2AuQBCyAAKAIMIggtABEEQCAEQQFqQX5xIRQgAEGIAWohFSAAQfAAaiEWIABB2ABqIRcgAEFAayEYIABBKGohGSAAQRBqIQwgAkECdiAJQQJ0a0ECdCEaA0AgFARAIAEgD0ECdGooAgAhAkEAIQ4DQCAJBEAgDiAESSEQIA5BAXEiG0UhHEEAIQgDQCAIQQFxIBxBAXNyRQRAIAwgGRAFIQ0LIAAoAuQBIAhNBEAgBUG2CDYCQCAFQc4ENgJEIAVBqw02AkggBUHQAGogBUFAaxADIAVB0ABqEAQLIAggA0khHSARKAIAIAhBA3RqIQYCQCAbBEAgBi0AACEHDAELIAYgDUH/AXEiHkECdkEDcTsBACANQQNxIQcgHkEEdiENCyAQIB1xIRACQCAHQQFNBEAgB0EBawRAIAYgDCAYEAUgCmoiB0EAIBMgByATSRtrIgo7AQIgBiAMIBcQBSALaiIHQQAgEiAHIBJJG2siCzsBBAwCCyAGIAs7AQQgBiAKOwECDAELIAYvAQQhCyAGLwECIQoLIAwgFhAFIQcgDCAVEAUhBiAQBEAgACgC1AEgBkEDbCIGTQRAIAVBtgg2AjAgBUHOBDYCNCAFQasNNgI4IAVB0ABqIAVBMGoQAyAFQdAAahAECyAAKALQASAGQQF0aiEGIAAoAsQBIAtNBEAgBUG2CDYCICAFQc4ENgIkIAVBqw02AiggBUHQAGogBUEgahADIAVB0ABqEAQLIAIgACgCwAEgC0EBdGovAQAgBi8BAEEQdHI2AgAgAiAGKAECNgIEIAAoAqQBIApNBEAgBUG2CDYCECAFQc4ENgIUIAVBqw02AhggBUHQAGogBUEQahADIAVB0ABqEAQLIAIgACgCoAEgCkECdGooAgA2AgggACgCtAEgB00EQCAFQbYINgIAIAVBzgQ2AgQgBUGrDTYCCCAFQdAAaiAFEAMgBUHQAGoQBAsgAiAAKAKwASAHQQJ0aigCADYCDAsgAkEQaiECIAhBAWoiCCAJRw0ACwsgAiAaaiECIA5BAWoiDiAURw0ACyAAKAIMIQgLIA9BAWoiDyAILQARSQ0ACwsgBUHQBGokAEEBC/4CAQV/IAAoAgwiCS0ADiEKIAktAA8hCwJ/IAktABIiB0ELTQRAQQhBASAHdEGBHHENARoLQQhBECAHQQ1GGwsgCS0ADSAJLQAMQQh0ciAGdiIHQQEgB0EBSxtBA2pBAnYiCGwhBwJAAkAgBUUEQCAHIQUMAQsgBUEDcQ0BIAcgBUsNAQsgAkUNACAFIApBCHQgC3IgBnYiBkEBIAZBAUsbQQNqQQJ2IgZsIARLDQAgACABNgIQIABCADcCICAAIAEgAmo2AhggACACNgIcIAAgATYCFCAJLQASIgFBDksNAAJAAkACQAJAAkACQAJAAkAgAUEBaw4OCAAAAAAAAgIBAwQFBgAGCyAAIAMgBSAIIAYQQw0GDAcLIAAgAyAFIAggBhBBDQUMBgsgACADIAUgCCAGEEANBAwFCyAAIAMgBSAIIAYQGw0DDAQLIAAgAyAFIAggBhAbDQIMAwsgACADIAUgCCAGED8NAQwCCyAAIAMgBSAIIAYQPkUNAQsLC9oBAQR/IwBBkARrIgYkACAAKAIMIgUgBEECdGooAEYiB0EYdCAHQQh0QYCA/AdxciAHQQh2QYD+A3EgB0EYdnJyIQcCfyAEQQFqIgggBS0AEE8EQCAAKAIIDAELIAUgCEECdGooAEYiBUEYdCAFQQh0QYCA/AdxciAFQQh2QYD+A3EgBUEYdnJyCyIFIAdNBEAgBkG2CDYCACAGQaYXNgIEIAZBtg02AgggBkEQaiAGEAMgBkEQahAECyAAIAAoAgQgB2ogBSAHayABIAIgAyAEEEQgBkGQBGokAAuXAQECfwJAIAAoAgwiAS0AJ0EIdCABLQAocgRAQQAhASAAEDZFDQEgABA1RQ0BIAAoAgwhAQsCQCABLQA4IAEtADdBCHRyRQ0AQQAhASAAEDRFDQECQCAAKAIMLQASQXRqIgJBAksNAAJAAkAgAkEBaw4CAgABCyAAEDMNAgwDCyAAEDINAQwCCyAAEDFFDQELQQEhAQsgAQvxAQEDfwJAIAAoAgwiAS0AQUEIdCABLQBCciICRQ0AIAAgACgCBCABLQBFIAEtAERBCHQgAS0AQ0EQdHJyaiIBNgIQIAAgAjYCHCAAIAE2AhQgAEIANwIgIAAgASACajYCGCAAQRBqIgEgAEEoahAJRQ0AAkACQCAAKAIMIgItACdBCHQgAi0AKHJFBEAgAi0AOCACLQA3QQh0cg0BDAMLIAEgAEFAaxAJRQ0CIAEgAEHwAGoQCUUNAiAAKAIMIgItADdBCHQgAi0AOHJFDQELIAEgAEHYAGoQCUUNASABIABBiAFqEAlFDQELQQEhAwsgAwuKBAEDfyMAQZAEayIEJAACQCAARQ0AIAFBPkkNAEHwARAQIgJFDQAgAkIANwKwASACQb2V5/cBNgIAIAJCADcCwAEgAkIANwLQASACQgA3AuABIAJCADcCBCACQgA3AjwgAkIANwC1ASACQgA3AMUBIAJCADcA1QEgAkIANwDlASACQgA3AgwgAkIANwIUIAJCADcCHCACQgA3AiQgAkIANwIsIAJCADcAMSACQgA3AkQgAkIANwBJIAJCADcAYSACQgA3AlwgAkIANwJUIAJCADcCbCACQgA3AnQgAkIANwB5IAJCADcChAEgAkIANwKMASACQgA3AJEBIAJCADcCnAEgAkIANwKkASACQQA6AKwBAkACQAJAIAFBygBJDQAgAC0AASAALQAAQQh0ckH4kAFHDQAgAC0AAyAALQACQQh0ckHKAEkNACAAKAAGIgNBGHQgA0EIdEGAgPwHcXIgA0EIdkGA/gNxIANBGHZyciABTQ0BCyACQQA2AgwMAQsgAiABNgIIIAIgADYCBCACIAA2AgwgAhBHRQ0AIAIQRkUNACACIQMMAQsgAhAcIAJBB3EEQCAEQbYINgIAIARByQ82AgQgBEHCCzYCCCAEQRBqIAQQAyAEQRBqEARBACEDDAELQQAhAyACQQBBAEEBQeAWKAIAQdATKAIAEQAAGgsgBEGQBGokACADCwMAAQsL8AkZAEGACAugBCVzKCV1KTogQXNzZXJ0aW9uIGZhaWx1cmU6ICIlcyIKAG1fc2l6ZSA8PSBtX2NhcGFjaXR5AC4vaW5jXGNybl9kZWNvbXAuaABtaW5fbmV3X2NhcGFjaXR5IDwgKDB4N0ZGRjAwMDBVIC8gZWxlbWVudF9zaXplKQBuZXdfY2FwYWNpdHkgJiYgKG5ld19jYXBhY2l0eSA+IG1fY2FwYWNpdHkpAG51bV9jb2Rlc1tjXQBzb3J0ZWRfcG9zIDwgdG90YWxfdXNlZF9zeW1zAHBDb2Rlc2l6ZXNbc3ltX2luZGV4XSA9PSBjb2Rlc2l6ZQB0IDwgKDFVIDw8IHRhYmxlX2JpdHMpAG1fbG9va3VwW3RdID09IGNVSU5UMzJfTUFYAGNybmRfbWFsbG9jOiBzaXplIHRvbyBiaWcAY3JuZF9tYWxsb2M6IG91dCBvZiBtZW1vcnkAKCh1aW50MzIpIHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PihwX25ldykgJiAoQ1JORF9NSU5fQUxMT0NfQUxJR05NRU5UIC0gMSkpID09IDAAY3JuZF9yZWFsbG9jOiBiYWQgcHRyAGNybmRfZnJlZTogYmFkIHB0cgBmYWxzZQAodG90YWxfc3ltcyA+PSAxKSAmJiAodG90YWxfc3ltcyA8PSBwcmVmaXhfY29kaW5nOjpjTWF4U3VwcG9ydGVkU3ltcykAQbAMC6gCERITFAAIBwkGCgULBAwDDQIOAQ8QMAB0ICE9IGNVSU5UMzJfTUFYAG1vZGVsLm1fY29kZV9zaXplc1tzeW1dID09IGxlbgAAAgMEBQYHAShsZW4gPj0gMSkgJiYgKGxlbiA8PSBjTWF4RXhwZWN0ZWRDb2RlU2l6ZSkAaSA8IG1fc2l6ZQBuZXh0X2xldmVsX29mcyA+IGN1cl9sZXZlbF9vZnMAbnVtICYmIChudW0gPT0gfnJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyKj4ocClbLTJdKQAACAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAACAAAAAgAAAAIAAAAEAAAAAgAAAAQAAAA2AkAAC0rICAgMFgweAAobnVsbCkAQeAOCxgRAAoAERERAAAAAAUAAAAAAAAJAAAAAAsAQYAPCyERAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAQbEPCwELAEG6DwsYEQAKChEREQAKAAACAAkLAAAACQALAAALAEHrDwsBDABB9w8LFQwAAAAADAAAAAAJDAAAAAAADAAADABBpRALAQ4AQbEQCxUNAAAABA0AAAAACQ4AAAAAAA4AAA4AQd8QCwEQAEHrEAseDwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAEGiEQsOEgAAABISEgAAAAAAAAkAQdMRCwELAEHfEQsVCgAAAAAKAAAAAAkLAAAAAAALAAALAEGNEgsBDABBmRILJwwAAAAADAAAAAAJDAAAAAAADAAADAAAMDEyMzQ1Njc4OUFCQ0RFRgBB5BILAQUAQYsTCwX//////wBB0BMLCQEAAAAAAAAABQBB5BMLAQIAQfwTCw4DAAAABAAAAHgLAAAABABBlBQLAQEAQaMUCwUK/////wBBpBYLAqQP`,dv=function(e){return typeof document>`u`?e:(uv||(uv=document.createElement(`a`)),uv.href=e,uv.href=uv.href,uv.href)},typeof WebAssembly<`u`){for(pv in $=$===void 0?{}:$,fv={},$)$.hasOwnProperty(pv)&&(fv[pv]=$[pv]);for(pv in mv=[],hv=!1,gv=!1,_v=!1,vv=!1,yv=!1,hv=typeof window==`object`,gv=typeof importScripts==`function`,vv=typeof process==`object`&&typeof process.versions==`object`&&typeof process.versions.node==`string`,_v=vv&&!hv&&!gv,yv=!hv&&!_v&&!gv,bv=``,_v?(bv=typeof __dirname<`u`?__dirname+`/`:``,xv=function(e,t){throw Error(`crunch_decoder: wasm 已内联,不支持按路径读取(`+e+`)`)},Sv=function(e){return xv(e,!0)},process.argv.length>1&&process.argv[1].replace(/\\/g,`/`),mv=process.argv.slice(2),process.on(`uncaughtException`,function(e){if(!(e instanceof w))throw e}),process.on(`unhandledRejection`,m),$.inspect=function(){return`[Emscripten Module object]`}):yv?(typeof read<`u`&&(xv=function(e){return read(e)}),Sv=function(t){var n;return typeof readbuffer==`function`?new Uint8Array(readbuffer(t)):(n=read(t,`binary`),e(typeof n==`object`),n)},typeof scriptArgs<`u`?mv=scriptArgs:typeof arguments<`u`&&(mv=arguments),typeof print<`u`&&(typeof console>`u`&&(console={}),console.log=print,console.warn=console.error=typeof printErr<`u`?printErr:print)):(hv||gv)&&(gv?bv=self.location.href:document.currentScript&&(bv=document.currentScript.src),bv=bv.indexOf(`blob:`)===0?``:bv.substr(0,bv.lastIndexOf(`/`)+1),xv=function(e){var t=new XMLHttpRequest;return t.open(`GET`,e,!1),t.send(null),t.responseText},gv&&(Sv=function(e){var t=new XMLHttpRequest;return t.open(`GET`,e,!1),t.responseType=`arraybuffer`,t.send(null),new Uint8Array(t.response)})),Cv=$.print||console.log.bind(console),wv=$.printErr||console.warn.bind(console),fv)fv.hasOwnProperty(pv)&&($[pv]=fv[pv]);fv=null,$.arguments&&(mv=$.arguments),$.thisProgram&&$.thisProgram,$.quit&&$.quit,Tv=cv(),$.noExitRuntime&&$.noExitRuntime,typeof WebAssembly!=`object`&&wv(`no native wasm support detected`),Dv=new WebAssembly.Table({initial:6,maximum:6,element:`anyfunc`}),Ov=!1;function e(e,t){e||m(`Assertion failed: `+t)}kv=typeof TextDecoder<`u`?new TextDecoder(`utf8`):void 0;function t(e,t,n){for(var r=t+n,i=t;e[i]&&!(i>=r);)++i;if(i-t>16&&e.subarray&&kv)return kv.decode(e.subarray(t,i));for(var a=``;t<i;){var o=e[t++];if(!(o&128))a+=String.fromCharCode(o);else{var s=e[t++]&63;if((o&224)==192)a+=String.fromCharCode((o&31)<<6|s);else{var c=e[t++]&63;if(o=(o&240)==224?(o&15)<<12|s<<6|c:(o&7)<<18|s<<12|c<<6|e[t++]&63,o<65536)a+=String.fromCharCode(o);else{var l=o-65536;a+=String.fromCharCode(55296|l>>10,56320|l&1023)}}}}return a}function n(e,n){return e?t(Nv,e,n):``}typeof TextDecoder<`u`&&new TextDecoder(`utf-16le`),Av=65536;function r(e,t){return e%t>0&&(e+=t-e%t),e}function i(e){jv=e,$.HEAP8=Mv=new Int8Array(e),$.HEAP16=new Int16Array(e),$.HEAP32=Pv=new Int32Array(e),$.HEAPU8=Nv=new Uint8Array(e),$.HEAPU16=new Uint16Array(e),$.HEAPU32=new Uint32Array(e),$.HEAPF32=new Float32Array(e),$.HEAPF64=new Float64Array(e)}Fv=5247584,Iv=4544,Lv=$.TOTAL_MEMORY||16777216,Ev=$.wasmMemory?$.wasmMemory:new WebAssembly.Memory({initial:Lv/Av}),Ev&&(jv=Ev.buffer),Lv=jv.byteLength,i(jv),Pv[Iv>>2]=Fv;function a(e){for(;e.length>0;){var t=e.shift();if(typeof t==`function`)t();else{var n=t.func;typeof n==`number`?t.arg===void 0?$.dynCall_v(n):$.dynCall_vi(n,t.arg):n(t.arg===void 0?null:t.arg)}}}Rv=[],zv=[],Bv=[],Vv=[];function o(){if($.preRun)for(typeof $.preRun==`function`&&($.preRun=[$.preRun]);$.preRun.length;)u($.preRun.shift());a(Rv)}function s(){a(zv)}function c(){a(Bv)}function l(){if($.postRun)for(typeof $.postRun==`function`&&($.postRun=[$.postRun]);$.postRun.length;)d($.postRun.shift());a(Vv)}function u(e){Rv.unshift(e)}function d(e){Vv.unshift(e)}Hv=0,Uv=null,Wv=null;function f(e){Hv++,$.monitorRunDependencies&&$.monitorRunDependencies(Hv)}function p(e){if(Hv--,$.monitorRunDependencies&&$.monitorRunDependencies(Hv),Hv==0&&(Uv!==null&&(clearInterval(Uv),Uv=null),Wv)){var t=Wv;Wv=null,t()}}$.preloadedImages={},$.preloadedAudios={};function m(e){throw $.onAbort&&$.onAbort(e),e+=``,Cv(e),wv(e),Ov=!0,e=`abort(`+e+`). Build with -s ASSERTIONS=1 for more info.`,new WebAssembly.RuntimeError(e)}Gv=`data:application/octet-stream;base64,`;function h(e){return String.prototype.startsWith?e.startsWith(Gv):e.indexOf(Gv)===0}Kv=`crunch.wasm`,h(Kv)||(Kv=dv(`./S3M_module/S3MTiles/ThirdParty/crunch.wasm`));function g(){try{if(Tv)return new Uint8Array(Tv);if(Sv)return Sv(Kv);throw`both async and sync fetching of the wasm failed`}catch(e){m(e)}}function _(){return!Tv&&(hv||gv)&&typeof fetch==`function`?fetch(Kv,{credentials:`same-origin`}).then(function(e){if(!e.ok)throw`failed to load wasm binary file at '`+Kv+`'`;return e.arrayBuffer()}).catch(function(){return g()}):new Promise(function(e,t){e(g())})}function v(){var e={env:Yv,wasi_unstable:Yv};function t(e,t){$.asm=e.exports,p(`wasm-instantiate`)}f(`wasm-instantiate`);function n(e){t(e.instance)}function r(t){return _().then(function(t){return WebAssembly.instantiate(t,e)}).then(t,function(e){wv(`failed to asynchronously prepare wasm: `+e),m(e)})}function i(){if(!Tv&&typeof WebAssembly.instantiateStreaming==`function`&&!h(Kv)&&typeof fetch==`function`)fetch(Kv,{credentials:`same-origin`}).then(function(t){return WebAssembly.instantiateStreaming(t,e).then(n,function(e){wv(`wasm streaming compile failed: `+e),wv(`falling back to ArrayBuffer instantiation`),r(n)})});else return r(n)}if($.instantiateWasm)try{return $.instantiateWasm(e,t)}catch(e){return wv(`Module.instantiateWasm callback failed with error: `+e),!1}return i(),{}}zv.push({func:function(){Zv()}});function y(){return Mv.length}function b(e,t,n){Nv.set(Nv.subarray(t,t+n),e)}function x(e){try{return Ev.grow(e-jv.byteLength+65535>>16),i(Ev.buffer),1}catch{}}function S(e){var t=y(),n=65536,i=2147483648-n;if(e>i)return!1;for(var a=Math.max(t,16777216);a<e;)a=a<=536870912?r(2*a,n):Math.min(r((3*a+2147483648)/4,n),i);return!!x(a)}qv={splitPath:function(e){return/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1)},normalizeArray:function(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];i===`.`?e.splice(r,1):i===`..`?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n;n--)e.unshift(`..`);return e},normalize:function(e){var t=e.charAt(0)===`/`,n=e.substr(-1)===`/`;return e=qv.normalizeArray(e.split(`/`).filter(function(e){return!!e}),!t).join(`/`),!e&&!t&&(e=`.`),e&&n&&(e+=`/`),(t?`/`:``)+e},dirname:function(e){var t=qv.splitPath(e),n=t[0],r=t[1];return!n&&!r?`.`:(r&&(r=r.substr(0,r.length-1)),n+r)},basename:function(e){if(e===`/`)return`/`;var t=e.lastIndexOf(`/`);return t===-1?e:e.substr(t+1)},extname:function(e){return qv.splitPath(e)[3]},join:function(){var e=Array.prototype.slice.call(arguments,0);return qv.normalize(e.join(`/`))},join2:function(e,t){return qv.normalize(e+`/`+t)}},Jv={buffers:[null,[],[]],printChar:function(e,n){var r=Jv.buffers[e];n===0||n===10?((e===1?Cv:wv)(t(r,0)),r.length=0):r.push(n)},varargs:0,get:function(e){return Jv.varargs+=4,Pv[Jv.varargs-4>>2]},getStr:function(){return n(Jv.get())},get64:function(){var e=Jv.get();return Jv.get(),e},getZero:function(){Jv.get()}};function C(e,t,n,r){try{for(var i=0,a=0;a<n;a++){for(var o=Pv[t+a*8>>2],s=Pv[t+(a*8+4)>>2],c=0;c<s;c++)Jv.printChar(e,Nv[o+c]);i+=s}return Pv[r>>2]=i,0}catch(e){return typeof FS<`u`&&e instanceof FS.ErrnoError||m(e),e.errno}}Yv={a:b,b:S,c:C,memory:Ev,table:Dv},Xv=v(),$.asm=Xv,Zv=$.___wasm_call_ctors=function(){return $.asm.d.apply(null,arguments)},$._malloc=function(){return $.asm.e.apply(null,arguments)},$._free=function(){return $.asm.f.apply(null,arguments)},$._crn_get_width=function(){return $.asm.g.apply(null,arguments)},$._crn_get_height=function(){return $.asm.h.apply(null,arguments)},$._crn_get_levels=function(){return $.asm.i.apply(null,arguments)},$._crn_get_dxt_format=function(){return $.asm.j.apply(null,arguments)},$._crn_get_bytes_per_block=function(){return $.asm.k.apply(null,arguments)},$._crn_get_uncompressed_size=function(){return $.asm.l.apply(null,arguments)},$._crn_decompress=function(){return $.asm.m.apply(null,arguments)},$.asm=Xv;function w(e){this.name=`ExitStatus`,this.message=`Program terminated with exit(`+e+`)`,this.status=e}Wv=function e(){Qv||T(),Qv||(Wv=e)};function T(e){if(e=e||mv,Hv>0||(o(),Hv>0))return;function t(){Qv||(Qv=!0,!Ov&&(s(),c(),$.onRuntimeInitialized&&$.onRuntimeInitialized(),l()))}$.setStatus?($.setStatus(`Running...`),setTimeout(function(){setTimeout(function(){$.setStatus(``)},1),t()},1)):t()}if($.run=T,$.preInit)for(typeof $.preInit==`function`&&($.preInit=[$.preInit]);$.preInit.length>0;)$.preInit.pop()();T()}}));function ey(e){return!!e.asm&&Object.keys(e.asm).length>0}async function ty(){return iy||(iy=(async()=>{let e=(await Promise.resolve().then(()=>($v(),sv))).default;return ey(e)||await new Promise(t=>{e.onRuntimeInitialized=()=>t();let n=()=>{ey(e)?t():setTimeout(n,8)};n()}),e})()),iy}function ny(e){return e.length>=2&&e[0]===ay[0]&&e[1]===ay[1]}async function ry(e){let t=e.byteLength;if(!t)throw Error(`[s3m] CRN 数据为空`);if(!ny(e))throw Error(`[s3m] 数据没有 CRN 头(Hx),不是 crunch 负载`);let n=await ty(),r=n._malloc(t);if(!r)throw Error(`[s3m] crunch 分配源数据失败`);try{n.HEAPU8.set(e,r);let i=n._crn_get_dxt_format(r,t),a=i===0?1:i===1?3:i===2?5:0;if(!a)throw Error(`[s3m] 不是可识别的 CRN 数据(dxtFormat=${i})`);let o=n._crn_get_width(r,t),s=n._crn_get_height(r,t),c=n._crn_get_levels(r,t);if(!(o>0)||!(s>0))throw Error(`[s3m] CRN 尺寸异常:${o}×${s}`);let l=a===1?8:16,u=Math.max(1,o>>2)*Math.max(1,s>>2)*l,d=n._malloc(u);if(!d)throw Error(`[s3m] crunch 分配输出缓冲失败`);try{return n._crn_decompress(r,t,d,u,0,1),{width:o,height:s,levels:c,dxtFormat:a,data:new Uint8Array(n.HEAPU8.subarray(d,d+u))}}finally{n._free(d)}}finally{n._free(r)}}var iy,ay,oy=n((()=>{iy=null,ay=[72,120]}));function sy(e,t,n){let r=t*4,i=new Uint8Array(r);for(let t=0;t<n>>1;t++){let a=t*r,o=(n-1-t)*r;i.set(e.subarray(a,a+r)),e.copyWithin(a,o,o+r),e.set(i,o)}}function cy(e){return e===$_.DXT3||e===$_.DXT4||e===$_.DXT5||e===$_.ARGB||e===$_.ABGR||e===$_.BGRA||e===$_.RGBA}function ly(e){let{width:t,height:n,pixelFormat:r,data:i}=e,a=new Uint8Array(t*n*4);return k_.decode(a,t,n,i,r),e.flipY&&sy(a,t,n),{rgba:a,hasAlpha:cy(r)}}function uy(e){let{width:t,height:n,pixelFormat:r,data:i}=e,a=new Uint8Array(t*n*4),o=r===$_.RGBA||r===$_.BGRA||r===$_.ARGB||r===$_.ABGR,s=r===$_.BGR||r===$_.BGRA,c=r===$_.ARGB||r===$_.ABGR,l=o?4:3;for(let e=0,r=0,u=0;e<t*n;e++,r+=l,u+=4){let e=c?r+1:r;a[u]=s?i[e+2]:i[e],a[u+1]=i[e+1],a[u+2]=s?i[e]:i[e+2],a[u+3]=o?i[c?r:r+3]:255}return e.flipY&&sy(a,t,n),{rgba:a,hasAlpha:cy(r)}}function dy(e,t,n){return(e+3>>2)*(t+3>>2)*(n===`dxt1`?8:16)}async function fy(e,t={}){let n={kind:`unsupported(0/0)`,width:0,height:0,rgba:null,bitmap:null,hasAlpha:!1};if(!e||!e.width||!e.height)return n;let r=Z_(e.compressType??0,e.pixelFormat),i=t.compressed===!0&&!e.flipY,a=(e,t,n,r)=>e.byteLength===dy(t,n,r);if(r===`crn`)try{let t=await ry(e.data),n=t.dxtFormat===1?$_.DXT1:$_.DXT5,r=t.dxtFormat===1?`dxt1`:`dxt5`;if(i&&a(t.data,t.width,t.height,r))return{kind:`crn->dxt${t.dxtFormat}(c)`,width:t.width,height:t.height,rgba:null,bitmap:null,hasAlpha:n===$_.DXT5,blocks:t.data,blockFormat:r};let o=ly({width:t.width,height:t.height,pixelFormat:n,data:t.data});return{kind:`crn->dxt${t.dxtFormat}`,width:t.width,height:t.height,rgba:o.rgba,bitmap:null,hasAlpha:o.hasAlpha}}catch(t){return{kind:`crn(failed)`,width:e.width,height:e.height,rgba:null,bitmap:null,hasAlpha:!1,error:String(t?.message??t)}}if(r===`dxt1`||r===`dxt3`||r===`dxt4`||r===`dxt5`){let t=Q_(r);if(i&&(r===`dxt1`||r===`dxt5`)&&a(e.data,e.width,e.height,r))return{kind:`${r}(c)`,width:e.width,height:e.height,rgba:null,bitmap:null,hasAlpha:r===`dxt5`,blocks:e.data,blockFormat:r};let n=ly({...e,pixelFormat:t});return{kind:r,width:e.width,height:e.height,rgba:n.rgba,bitmap:null,hasAlpha:n.hasAlpha}}if(r===`webp`){let t=new Blob([e.data],{type:`image/webp`}),n=await createImageBitmap(t);return{kind:r,width:n.width,height:n.height,rgba:null,bitmap:n,hasAlpha:!0}}if(r===`raw`){let t=uy(e);return{kind:r,width:e.width,height:e.height,rgba:t.rgba,bitmap:null,hasAlpha:t.hasAlpha}}return{...n,kind:`unsupported(${e.compressType}/${e.pixelFormat})`}}var py=n((()=>{A_(),oy(),rv()}));function my(e){xy=Math.max(1,e|0)}function hy(e){Sy=e}function gy(e){Cy=e}async function _y(e,t){if(Cy){let n=await Cy(e,t);if(n)return n}return fy(e,{compressed:t})}function vy(e,t=!0){return e.wrapS=Ir,e.wrapT=Ir,e.magFilter=Ur,e.minFilter=Kr,e.generateMipmaps=!0,e.anisotropy=xy,t&&(e.colorSpace=fa),e.flipY=!1,e.needsUpdate=!0,e}function yy(e){return vy(e),e.wrapS=z,e.wrapT=z,e.minFilter=Ur,e.generateMipmaps=!1,e.anisotropy=1,e.needsUpdate=!0,e}async function by(e){if(!e||!e.width||!e.height)return{texture:null,decoded:`empty`};let t=e.packed===!0||e.flipY===!0||e.composed===!0,n=await _y(e,Sy&&!t);if(!n.rgba&&!n.blocks&&!n.bitmap)return n.error&&console.warn(`[s3m] CRN 转码失败:`,n.error),{texture:null,decoded:n.kind};let r;if(n.bitmap)r=new ro(n.bitmap);else if(n.blocks&&n.blockFormat){let e=n.blockFormat===`dxt1`?yi:Si;r=new yd([{data:n.blocks,width:n.width,height:n.height}],n.width,n.height,e,Jr)}else{let e=new Cu(n.rgba,n.width,n.height,ci,Jr);n.hasAlpha&&(e.userData.s3mHasAlpha=!0),r=e}r.needsUpdate=!0;let i=t?yy(r):vy(r);return n.blocks&&(i.generateMipmaps=!1,i.minFilter=Ur),{texture:i,decoded:n.kind}}var xy,Sy,Cy,wy=n((()=>{py(),rv(),xy=1,Sy=!1,Cy=null}));function Ty(){return{uMode:{value:Oy.TEXTURE},uColorA:{value:new W(`#dfe6ee`)},uColorB:{value:new W(`#1d4ed8`)},uColorC:{value:new W(`#fbbf24`)},uTime:{value:0},uHeightMin:{value:0},uHeightMax:{value:120},uFloorHeight:{value:3.2},uDim:{value:0},uDimFactor:{value:.42},uSelColor:{value:new W(`#22d3ee`)},uSelMix:{value:0},uSelMode:{value:1},uSelOpacity:{value:.65},uSelEmissive:{value:.35},uSelElevation:{value:0},uFilterMinZ:{value:-99999},uFilterMaxZ:{value:99999},uFilterHeightActive:{value:0},uRoofThreshold:{value:.65},uTexMix:{value:0}}}function Ey(e){let t=e.uniforms,n=new vf({color:e.color??new W(16777215),map:e.map??null,roughness:e.roughness??.95,metalness:0,side:e.side??2,transparent:!!e.transparent,opacity:e.opacity??1,depthWrite:!e.transparent,flatShading:e.flatShading!==!1,vertexColors:!1,alphaTest:e.alphaTest??0}),r={value:-1},i={value:0},a={value:Py},o={value:1},s={value:0},c=!!e.atlas&&!!e.map,l=c?e.secMap??null:null;c&&(n.defines={...n.defines,S3M_ATLAS:``}),l&&(n.defines={...n.defines,S3M_ATLAS_SEC:``});let u={value:new B(e.map?.image?.width||1,e.map?.image?.height||1)},d={value:new B(l?.image?.width||1,l?.image?.height||1)};return n.onBeforeCompile=e=>{Object.assign(e.uniforms,t,{uSelBatch:r,uSelWhole:i,uBatchTex:a,uBatchTexWidth:o,uBatchTexActive:s,uSecMap:{value:l},uAtlasDim:u,uAtlasDim1:d}),e.vertexShader=e.vertexShader.replace(`#include <common>`,`#include <common>\n${Fy}`).replace(`#include <begin_vertex>`,`#include <begin_vertex>\n${Iy}`).replace(`#include <worldpos_vertex>`,Ly),e.fragmentShader=e.fragmentShader.replace(`#include <common>`,`#include <common>\n${Ry}`).replace(`#include <color_fragment>`,`#include <color_fragment>\n${zy}`).replace(`#include <emissivemap_fragment>`,`#include <emissivemap_fragment>\n${By}`),c?e.fragmentShader=e.fragmentShader.replace(`#include <map_fragment>`,`
3836
3836
  #ifdef USE_MAP
3837
3837
  vec4 sampledDiffuseColor = s3mAtlasUnit( vMapUv, vAtlasRect, uAtlasDim, map );
3838
3838
  diffuseColor *= sampledDiffuseColor;
3839
3839
  #endif
3840
- ${l?`\n${Ry}`:``}`):l&&(e.fragmentShader=e.fragmentShader.replace(`#include <map_fragment>`,`#include <map_fragment>\n${Ry}`))},n.customProgramCacheKey=()=>`s3m-styled${c?`-atlas`:``}${l?`-bake`:``}`,n.userData.uSelBatch=r,n.userData.uSelWhole=i,n.userData.uBatchTex=a,n.userData.uBatchTexWidth=o,n.userData.uBatchTexActive=s,n.userData.isStyled=!0,n}function wy(e,t=.9){let n=new gc({uniforms:{uSelBatch:{value:-1},uSelWhole:{value:0},uWidth:{value:t},uElevation:{value:0},uBatchTex:{value:jy},uBatchTexWidth:{value:1},uBatchTexActive:{value:0},uColor:{value:e.uSelColor.value.clone()}},vertexShader:zy,fragmentShader:By,side:1,depthWrite:!1,transparent:!1,polygonOffset:!0,polygonOffsetFactor:1,polygonOffsetUnits:1});return n.userData.isOutline=!0,n}var Ty,Ey,Dy,Oy,ky,Ay,jy,My,Ny,Py,Fy,Iy,Ly,Ry,zy,By,Vy=n((()=>{rh(),Ty={WHITE:0,TEXTURE:1,SOLID:2,HEIGHT:3,FLOORS:4,BATCH:5,DYNAMIC:6,TOP_SIDE:7,CUSTOM:8},Ey={[Ty.WHITE]:`白膜`,[Ty.TEXTURE]:`原色`,[Ty.SOLID]:`单色`,[Ty.HEIGHT]:`按高度`,[Ty.FLOORS]:`按楼层`,[Ty.BATCH]:`按单体`,[Ty.DYNAMIC]:`动态扫描`,[Ty.TOP_SIDE]:`顶/侧分色`,[Ty.CUSTOM]:`自定义`},Dy={REPLACE:`replace`,OVERLAY:`overlay`,MULTIPLY:`multiply`,GLOW_ONLY:`glowOnly`},Oy={[Dy.OVERLAY]:`叠加原图 (Overlay)`,[Dy.REPLACE]:`纯色覆盖 (Replace)`,[Dy.MULTIPLY]:`叠乘模式 (Multiply)`,[Dy.GLOW_ONLY]:`仅描边发光 (Glow)`},ky={mode:Ty.TEXTURE,colorA:`#dfe6ee`,colorB:`#1d4ed8`,colorC:`#fbbf24`,selectColor:`#22d3ee`,selectMode:Dy.OVERLAY,selectOpacity:.65,selectEmissive:.35,selectElevation:0,floorHeight:e_,speed:1,opacity:1,shading:`flat`,dimOthers:!0,dimFactor:.42,outline:!0,outlineStyle:`edges`,outlineColor:`#22d3ee`,outlineWidth:.9,outlineWidthPx:3,edges:!1,edgeWidth:1.5,edgeColor:`#334155`,edgeOpacity:.6,edgeThreshold:55,roofThreshold:.65,texMix:0,depthWrite:!0},Ay=new Float32Array([-1,-1,-1,0,0,0,0,0]),jy=new Cu(Ay,1,2,ci,ei),jy.minFilter=Rr,jy.magFilter=Rr,jy.needsUpdate=!0,My=`
3840
+ ${l?`\n${Vy}`:``}`):l&&(e.fragmentShader=e.fragmentShader.replace(`#include <map_fragment>`,`#include <map_fragment>\n${Vy}`))},n.customProgramCacheKey=()=>`s3m-styled${c?`-atlas`:``}${l?`-bake`:``}`,n.userData.uSelBatch=r,n.userData.uSelWhole=i,n.userData.uBatchTex=a,n.userData.uBatchTexWidth=o,n.userData.uBatchTexActive=s,n.userData.isStyled=!0,n}function Dy(e,t=.9){let n=new gc({uniforms:{uSelBatch:{value:-1},uSelWhole:{value:0},uWidth:{value:t},uElevation:{value:0},uBatchTex:{value:Py},uBatchTexWidth:{value:1},uBatchTexActive:{value:0},uColor:{value:e.uSelColor.value.clone()}},vertexShader:Hy,fragmentShader:Uy,side:1,depthWrite:!1,transparent:!1,polygonOffset:!0,polygonOffsetFactor:1,polygonOffsetUnits:1});return n.userData.isOutline=!0,n}var Oy,ky,Ay,jy,My,Ny,Py,Fy,Iy,Ly,Ry,zy,By,Vy,Hy,Uy,Wy=n((()=>{rh(),Oy={WHITE:0,TEXTURE:1,SOLID:2,HEIGHT:3,FLOORS:4,BATCH:5,DYNAMIC:6,TOP_SIDE:7,CUSTOM:8},ky={[Oy.WHITE]:`白膜`,[Oy.TEXTURE]:`原色`,[Oy.SOLID]:`单色`,[Oy.HEIGHT]:`按高度`,[Oy.FLOORS]:`按楼层`,[Oy.BATCH]:`按单体`,[Oy.DYNAMIC]:`动态扫描`,[Oy.TOP_SIDE]:`顶/侧分色`,[Oy.CUSTOM]:`自定义`},Ay={REPLACE:`replace`,OVERLAY:`overlay`,MULTIPLY:`multiply`,GLOW_ONLY:`glowOnly`},jy={[Ay.OVERLAY]:`叠加原图 (Overlay)`,[Ay.REPLACE]:`纯色覆盖 (Replace)`,[Ay.MULTIPLY]:`叠乘模式 (Multiply)`,[Ay.GLOW_ONLY]:`仅描边发光 (Glow)`},My={mode:Oy.TEXTURE,colorA:`#dfe6ee`,colorB:`#1d4ed8`,colorC:`#fbbf24`,selectColor:`#22d3ee`,selectMode:Ay.OVERLAY,selectOpacity:.65,selectEmissive:.35,selectElevation:0,floorHeight:e_,speed:1,opacity:1,shading:`flat`,dimOthers:!0,dimFactor:.42,outline:!0,outlineStyle:`edges`,outlineColor:`#22d3ee`,outlineWidth:.9,outlineWidthPx:3,edges:!1,edgeWidth:1.5,edgeColor:`#334155`,edgeOpacity:.6,edgeThreshold:55,roofThreshold:.65,texMix:0,depthWrite:!0},Ny=new Float32Array([-1,-1,-1,0,0,0,0,0]),Py=new Cu(Ny,1,2,ci,ei),Py.minFilter=Rr,Py.magFilter=Rr,Py.needsUpdate=!0,Fy=`
3841
3841
  attribute float aBatchId;
3842
3842
  attribute vec3 aColor;
3843
3843
  #ifdef S3M_ATLAS
@@ -3874,7 +3874,7 @@ void main() {
3874
3874
  return aBatchId;
3875
3875
  #endif
3876
3876
  }
3877
- `,Ny=`
3877
+ `,Iy=`
3878
3878
  float s3mBatch = s3mBatchRaw();
3879
3879
  vec3 s3mCustomOffset = vec3( 0.0 );
3880
3880
  if ( uBatchTexActive > 0 && s3mBatch >= 0.0 ) {
@@ -3894,7 +3894,7 @@ void main() {
3894
3894
  // 实例化时这是局部坐标,实例矩阵只含平移 + 绕 z 旋转(白模摆位),所以偏移仍沿局部轴生效
3895
3895
  transformed += s3mCustomOffset;
3896
3896
  transformed.z += s3mSelElev * uSelElevation;
3897
- `,Py=`
3897
+ `,Ly=`
3898
3898
  vec4 s3mWorld = vec4( transformed, 1.0 );
3899
3899
  #ifdef USE_INSTANCING
3900
3900
  s3mWorld = instanceMatrix * s3mWorld;
@@ -3919,7 +3919,7 @@ void main() {
3919
3919
  mat3 s3mNormMat = mat3( modelMatrix );
3920
3920
  #endif
3921
3921
  vWorldNormal = normalize( s3mNormMat * normal );
3922
- `,Fy=`
3922
+ `,Ry=`
3923
3923
  #ifdef S3M_ATLAS
3924
3924
  varying vec4 vAtlasRect;
3925
3925
  uniform vec2 uAtlasDim;
@@ -4048,7 +4048,7 @@ void main() {
4048
4048
  vec3 p = abs( fract( vec3( h ) + k.xyz ) * 6.0 - vec3( 3.0 ) );
4049
4049
  return v * mix( vec3( 1.0 ), clamp( p - vec3( 1.0 ), 0.0, 1.0 ), s );
4050
4050
  }
4051
- `,Iy=`
4051
+ `,zy=`
4052
4052
  float s3mH = clamp( ( vWorldZ - uHeightMin ) / max( uHeightMax - uHeightMin, 0.001 ), 0.0, 1.0 );
4053
4053
  vec3 s3mBase = diffuseColor.rgb; // 已含 diffuse × map
4054
4054
  // 所有按单体取值(配色 / 状态纹理 / 选中判定)都走取整后的 id,避免插值噪声
@@ -4152,19 +4152,19 @@ void main() {
4152
4152
  } else {
4153
4153
  diffuseColor.rgb *= mix( 1.0, uDimFactor, uDim );
4154
4154
  }
4155
- `,Ly=`
4155
+ `,By=`
4156
4156
  float s3mSelE = max( step( 0.0, uSelBatch ) * step( abs( s3mBatchId() - uSelBatch ), 0.5 ), uSelWhole );
4157
4157
  // glowOnly 模式下表面不自发光,只保留描边边框;其他模式下适度发光
4158
4158
  if ( uSelMode != 3 ) {
4159
4159
  totalEmissiveRadiance += uSelColor * s3mSelE * uSelMix * ( uSelEmissive * 0.4 );
4160
4160
  }
4161
- `,Ry=`
4161
+ `,Vy=`
4162
4162
  #ifdef S3M_ATLAS_SEC
4163
4163
  // 官方 getTextureColorForS3M = firstColor(base) * secColor(bake),
4164
4164
  // 两套独立的 rect / 尺寸(实测 base 11 条、bake 1 条,条数并不相同)
4165
4165
  diffuseColor *= s3mAtlasUnit( vSecUv, vSecRect, uAtlasDim1, uSecMap );
4166
4166
  #endif
4167
- `,zy=`
4167
+ `,Hy=`
4168
4168
  attribute float aBatchId;
4169
4169
  uniform float uSelBatch;
4170
4170
  uniform float uSelWhole;
@@ -4194,14 +4194,14 @@ void main() {
4194
4194
  p.z += vSel * uElevation;
4195
4195
  gl_Position = projectionMatrix * modelViewMatrix * vec4( p, 1.0 );
4196
4196
  }
4197
- `,By=`
4197
+ `,Uy=`
4198
4198
  uniform vec3 uColor;
4199
4199
  varying float vSel;
4200
4200
  void main() {
4201
4201
  if ( vSel < 0.5 ) discard;
4202
4202
  gl_FragColor = vec4( uColor, 1.0 );
4203
4203
  }
4204
- `})),Hy=i({LINE_PRIMITIVE:()=>13,POINT_PRIMITIVE:()=>1,buildTileObjects:()=>ib});function Uy(e){return e===13||e===2||e===3}function Wy(e){return e===1}function Gy(){return ab||(ab=new dd({size:2,sizeAttenuation:!1,vertexColors:!0})),ab}function Ky(e){return e===`u8`?1:e===`u16`?2:4}function qy(e,t){switch(e){case`u8`:return new Uint8Array(t);case`u16`:return new Uint16Array(t);case`u32`:return new Uint32Array(t);default:return new Float32Array(t)}}function Jy(e,t){switch(e){case`u8`:return new Uint8Array(t);case`u16`:return new Uint16Array(t);case`u32`:return new Uint32Array(t);default:return new Float32Array(t)}}function Yy(e){let{data:t,stride:n,offsetInBytes:r,dtype:i=`f32`}=e,a=e.components??e.comp??3,o=Ky(i),s=a*o,c=n??s,l=r??0,u=i===`u8`;if(c===s&&l===0){let e=qy(i,t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength));return new G(e,a,u)}let d=Math.floor(t.byteLength/c),f=Jy(i,d*a),p=new DataView(t.buffer,t.byteOffset,t.byteLength);for(let e=0;e<d;e++){let t=e*c+l;for(let n=0;n<a;n++){let r=t+n*o;f[e*a+n]=i===`u8`?p.getUint8(r):i===`u16`?p.getUint16(r,!0):i===`u32`?p.getUint32(r,!0):p.getFloat32(r,!0)}}return new G(f,a,u)}function Xy(e){let{indices:t,indexType:n,indexCount:r}=e;if(!t||r===0)return null;let i=Math.floor(t.byteLength/r),a=i===4||i!==2&&(n===1||n===3),o=r*(a?4:2);if(o>t.byteLength)return null;let s=t.buffer.slice(t.byteOffset,t.byteOffset+o),c=a?new Uint32Array(s):new Uint16Array(s);return new G(c,1)}function Zy(e,t){let n=new Float32Array(t*3);if(!e)return n.fill(1),new G(n,3);let r=e.data,i=e.components??4,a=e.dtype===`u8`?1/255:1;for(let e=0;e<t;e++){let t=e*i;n[e*3]=(r[t]??255)*a,n[e*3+1]=(r[t+1]??255)*a,n[e*3+2]=(r[t+2]??255)*a}return new G(n,3)}function Qy(e){if(!e)return[];if(Array.isArray(e))return e;let t=e,n=t.materials??t.material;return Array.isArray(n)?n:[]}function $y(e){return e?.material??e}function eb(e){return e?.name??e?.id}function tb(e){return(e?.textureStates??e?.textureunitstates??[]).map(e=>e?.textureunitstate??e).filter(e=>!!e)}function nb(e){return e.length===16&&e[0]===1&&e[1]===0&&e[2]===0&&e[3]===0&&e[4]===0&&e[5]===1&&e[6]===0&&e[7]===0&&e[8]===0&&e[9]===0&&e[10]===1&&e[11]===0&&e[12]===0&&e[13]===0&&e[14]===0&&e[15]===1}function rb(e){let t=String(e?.cullMode??``).toUpperCase();return t===`CULL_BACK`||t===`BACKWARD`?0:t===`CULL_FRONT`?1:2}async function ib(e,t={}){let n=t.uniforms??Sy(),r=t.textureCache??new Map,i=new Ml,a=[],o=[],s={meshes:0,vertices:0,triangles:0,textures:0,instanced:0,edgeLines:0,skipped:[]},c=new Qu({color:new W(t.edgeColor??`#1f2937`),transparent:!0,opacity:.75,depthWrite:!1});i.userData.hasNativeEdges=!1;let l=t=>{let n=e.textures?.[t];return n?.packKey?`${t}#${n.packKey}`:t};for(let[t,n]of Object.entries(e.textures??{})){let e=l(t),i=r.get(e);if(i){let t=i.image;if((t?.width??0)*(t?.height??0)>=(n.width??0)*(n.height??0))continue;r.delete(e)}let{texture:a,decoded:c}=await vy(n);a?(r.set(e,a),o.push(e),s.textures++):s.skipped.push(`texture ${t} → ${c}`)}let u=Qy(e.materials),d=(e,t=!1)=>{let i=$y(u.find(t=>eb($y(t))===e)),a=tb(i),o=a[0],s=o?r.get(l(eb(o)??o.id??``))??null:null,c=a[1],d=globalThis.__S3M_NO_BAKE===!0,f=t&&c&&!d?r.get(l(eb(c)??c.id??``))??null:null,p=o?.texmodmatrix??o?.matrix;if(s&&Array.isArray(p)&&p.length===16&&!nb(p)&&(s=s.clone(),s.matrixAutoUpdate=!1,s.matrix.set(p[0],p[4],p[12],p[1],p[5],p[13],0,0,1)),s&&o?.addressmode){let e=o.addressmode.u,t=o.addressmode.v;(e!==void 0||t!==void 0)&&(s.matrixAutoUpdate&&(s=s.clone()),e!==void 0&&(s.wrapS=e===0?Ir:z),t!==void 0&&(s.wrapT=t===0?Ir:z))}let m=i?.diffuse??{r:1,g:1,b:1,a:1},h=i?.alphaMode,g=[o,c].some(e=>/\.water$/i.test(String(eb(e)??e?.id??``))),_=h===`AM_BLEND`||(m.a??1)<.999||i?.transparentsorting===!0||g&&!s,v=typeof i?.shininess==`number`&&i.shininess>0?Math.max(.15,1-i.shininess/128):.95,y=s?.userData?.s3mHasAlpha?Math.max(i?.alphaCutoff??0,.01):0;return Cy({uniforms:n,map:s,color:g&&!s?ob.clone():new W(m.r??1,m.g??1,m.b??1),side:rb(i),transparent:_,opacity:g&&!s?.86:m.a??1,roughness:g&&!s?.12:v,alphaTest:y,atlas:t&&!!s,secMap:f})},f=new Map,p=new Map;for(let[t,n]of Object.entries(e.geoPackage??{})){let r=n.vertexPackage,i=r.vertexAttributes.find(e=>e.semantic===`position`);if(!i){s.skipped.push(`${t} 无 position`);continue}let a=r.verticesCount||0,o={position:Yy(i)},c=null,l=null;for(let e of r.vertexAttributes)e.divisor===void 0&&e.semantic!==`position`&&(e.semantic===`color`?c=e:e.semantic===`batchId`?l=e:e.semantic===`normal`?o.normal=Yy(e):e.semantic===`uv`?o.uv=Yy(e):e.semantic===`uv2`&&(o.uv1=Yy(e)));o.aColor=Zy(c,a),o.aBatchId=l?Yy(l):new G(new Float32Array(a).fill(-1),1);let u=e.atlasRects?.[t];if(u){o.aAtlasRect=new G(u.uv??new Float32Array(a*4),4);let e=o.uv1;u.uv2&&e?(o.aAtlasRect1=new G(u.uv2,4),o.aSecUv=e):(o.aAtlasRect1=new G(new Float32Array(a*4),4),o.aSecUv=o.uv??new G(new Float32Array(a*2),2))}let d=r.instanceIndex!==-1&&(r.instanceMode===16||r.instanceMode===17),m=n.indexPackages??[];m.length===0&&a>0&&(m=[{indexCount:0,indexType:0,useIndex:0,primitiveType:1,indices:null,passNames:[]}]),p.set(t,{indexPackages:m,instanced:d}),s.vertices+=a,m.forEach((e,n)=>{let r=new q;for(let[e,t]of Object.entries(o))r.setAttribute(e,t);let i=Xy(e);i?r.setIndex(i):r.setDrawRange(0,a),Uy(e.primitiveType)||Wy(e.primitiveType)||r.getAttribute(`normal`)||r.computeVertexNormals(),r.computeBoundingBox(),r.computeBoundingSphere(),f.set(`${t}|${n}`,{geometry:r,pack:e})})}let m=new U,h=new Map,g=(e,t,n)=>{let r=0,i=0,a=!1,o=!1,s=!1,c=!1,l=!1,u=!1;for(let t of e){let e=t.cached.geometry,n=e.attributes.position?.count??0;r+=n,i+=e.index?e.index.count:n,e.attributes.normal&&(a=!0),e.attributes.uv&&(o=!0),e.attributes.uv1&&(s=!0),e.attributes.aColor&&(c=!0),e.attributes.aBatchId&&(l=!0),e.attributes.aAtlasRect&&(u=!0)}let d=new Float32Array(r*3),f=a?new Float32Array(r*3):null,p=o?new Float32Array(r*2):null,h=s?new Float32Array(r*2):null,g=c?new Float32Array(r*3):null,_=l?new Float32Array(r):null,v=u?new Float32Array(r*4):null,y=u?new Float32Array(r*4):null,b=u?new Float32Array(r*2):null,x=(e,t,n,r,i,a)=>{if(t){let a=t.array;for(let t=0;t<r;t++)for(let r=0;r<n;r++)e[(i+t)*n+r]=a[t*n+r]??0}else for(let t=0;t<r;t++){let r=[];a?a(t,r):r.push(...Array(n).fill(0));for(let a=0;a<n;a++)e[(i+t)*n+a]=r[a]??0}},S=new(r>65535?Uint32Array:Uint16Array)(i),C=0,w=0,T=new H,E=new V,D=new Map;for(let t of e){let e=t.cached.geometry,n=e.attributes.position.count,r=t.matrix,i=r&&!r.equals(m);if(i&&a&&E.getNormalMatrix(r),t.geo.pickInfo)for(let e of Object.values(t.geo.pickInfo))typeof e.batchId==`number`&&e.batchId>=0&&D.set(e.batchId,t.geo);let o=e.attributes.position.array;for(let e=0;e<n;e++){let t=e*3,n=(C+e)*3;i?(T.set(o[t],o[t+1],o[t+2]).applyMatrix4(r),d[n]=T.x,d[n+1]=T.y,d[n+2]=T.z):(d[n]=o[t],d[n+1]=o[t+1],d[n+2]=o[t+2])}if(f){let t=e.attributes.normal;if(t){let e=t.array;for(let t=0;t<n;t++){let n=t*3,r=(C+t)*3;i?(T.set(e[n],e[n+1],e[n+2]).applyMatrix3(E).normalize(),f[r]=T.x,f[r+1]=T.y,f[r+2]=T.z):(f[r]=e[n],f[r+1]=e[n+1],f[r+2]=e[n+2])}}}if(p){let t=e.attributes.uv;if(t){let e=t.array;for(let t=0;t<n;t++)p[(C+t)*2]=e[t*2],p[(C+t)*2+1]=e[t*2+1]}}if(h){let t=e.attributes.uv1;if(t){let e=t.array;for(let t=0;t<n;t++)h[(C+t)*2]=e[t*2],h[(C+t)*2+1]=e[t*2+1]}}if(g){let t=e.attributes.aColor;if(t){let e=t.array;for(let t=0;t<n;t++)g[(C+t)*3]=e[t*3],g[(C+t)*3+1]=e[t*3+1],g[(C+t)*3+2]=e[t*3+2]}else for(let e=0;e<n;e++)g[(C+e)*3]=1,g[(C+e)*3+1]=1,g[(C+e)*3+2]=1}if(_){let t=e.attributes.aBatchId;if(t){let e=t.array;for(let t=0;t<n;t++)_[C+t]=e[t]}else for(let e=0;e<n;e++)_[C+e]=-1}if(v&&(x(v,e.attributes.aAtlasRect,4,n,C,(e,t)=>t.push(0,0,0,0)),x(y,e.attributes.aAtlasRect1,4,n,C,(e,t)=>t.push(0,0,0,0)),x(b,e.attributes.aSecUv,2,n,C)),e.index){let t=e.index.array,n=e.index.count;for(let e=0;e<n;e++)S[w+e]=t[e]+C;w+=n}else{for(let e=0;e<n;e++)S[w+e]=e+C;w+=n}C+=n}let O=new q;O.setAttribute(`position`,new G(d,3)),f&&O.setAttribute(`normal`,new G(f,3)),p&&O.setAttribute(`uv`,new G(p,2)),h&&O.setAttribute(`uv1`,new G(h,2)),g&&O.setAttribute(`aColor`,new G(g,3)),_&&O.setAttribute(`aBatchId`,new G(_,1)),v&&(O.setAttribute(`aAtlasRect`,new G(v,4)),O.setAttribute(`aAtlasRect1`,new G(y,4)),O.setAttribute(`aSecUv`,new G(b,2))),O.setIndex(new G(S,1)),O.computeBoundingBox(),O.computeBoundingSphere();let k=new dc(O,t);return k.userData.skeletonName=e[0].name,k.userData.geoRef=e[0].geo,k.userData.tileRef=n,k.userData.primitiveType=4,k.userData.isBatched=!0,k.userData.batchedCount=e.length,D.size>0&&(k.userData.geoByBatchId=D),k},_=(n,r,o,l)=>{let{geometry:u,pack:f}=n,h=d(f.passNames?.[0],!!u.getAttribute(`aAtlasRect`)),g,_=p.get(r),v=o.vertexPackage;if(Uy(f.primitiveType)){let e=new ld(u,c);return e.visible=t.edges===!0,e.renderOrder=2,e.raycast=()=>{},e.userData.isEdgeLines=!0,e.userData.skeletonName=r,l&&!l.equals(m)&&l.decompose(e.position,e.quaternion,e.scale),i.add(e),a.push(e),i.userData.hasNativeEdges=!0,s.edgeLines++,e}if(Wy(f.primitiveType)){u.getAttribute(`color`)||u.setAttribute(`color`,u.getAttribute(`aColor`));let t=new gd(u,Gy());return t.userData.isPointCloud=!0,t.userData.skeletonName=r,t.userData.geoRef=o,t.userData.tileRef=e,t.userData.primitiveType=f.primitiveType,l&&!l.equals(m)&&l.decompose(t.position,t.quaternion,t.scale),i.add(t),a.push(t),s.meshes++,t}if(_?.instanced&&v.instanceBuffer&&v.instanceCount>0){if(!u.getAttribute(`aInstanceBatchId`)){let e=v.instanceBatchIds,t=e&&e.length===v.instanceCount?e.slice():new Float32Array(v.instanceCount).fill(-1);u.setAttribute(`aInstanceBatchId`,new Du(t,1));let n=new Float32Array(v.instanceCount);for(let e=0;e<n.length;e++)n[e]=e;u.setAttribute(`aInstanceIndex`,new Du(n,1))}let e=new Fu(u,h,v.instanceCount);e.instanceMatrix.setUsage(Ea);let t=new U,n=new W,r=v.instanceMode,i=new Float32Array(v.instanceBuffer.buffer,v.instanceBuffer.byteOffset,v.instanceCount*r);for(let a=0;a<v.instanceCount;a++){let o=a*r;if(t.set(i[o+0],i[o+1],i[o+2],i[o+3],i[o+4],i[o+5],i[o+6],i[o+7],i[o+8],i[o+9],i[o+10],i[o+11],0,0,0,1),e.setMatrixAt(a,t),r>=16){let t=i[o+12],r=i[o+13],s=i[o+14];Number.isFinite(t)&&Number.isFinite(r)&&Number.isFinite(s)&&(n.setRGB(t,r,s),e.setColorAt(a,n))}}e.instanceMatrix.needsUpdate=!0,e.instanceColor&&(e.instanceColor.needsUpdate=!0),e.frustumCulled=!1,s.instanced++,g=e}else g=new dc(u,h);return l&&!l.equals(m)&&l.decompose(g.position,g.quaternion,g.scale),g.userData.skeletonName=r,g.userData.geoRef=o,g.userData.tileRef=e,g.userData.primitiveType=f.primitiveType,i.add(g),a.push(g),s.meshes++,f.primitiveType===4&&(s.triangles+=(f.indexCount||0)/3),g},v=0;for(let n of e.groupNode?.pageLods??[])for(let r of n.geodes??[]){let n=r.matrix,i=n&&n.length===16?new U().fromArray(n):null;for(let n of r.skeletonNames??[]){let r=p.get(n);if(!r)continue;let a=e.geoPackage[n];if(!a)continue;let o=a.vertexPackage;for(let e=0;e<r.indexPackages.length;e++){let s=f.get(`${n}|${e}`);if(s){if(Uy(s.pack.primitiveType)||r.instanced&&o.instanceBuffer&&o.instanceCount>0)_(s,n,a,i),v++;else if(t.batching!==!1&&s.pack.primitiveType===4){let e=s.pack.passNames?.[0]??`__default__`,t=h.get(e);t||(t=[],h.set(e,t)),t.push({cached:s,name:n,geo:a,matrix:i}),v++}else _(s,n,a,i),v++}}}}if(v===0)for(let[n,r]of p){let i=e.geoPackage[n];if(!i)continue;let a=i.vertexPackage;for(let e=0;e<r.indexPackages.length;e++){let o=f.get(`${n}|${e}`);if(o){if(Uy(o.pack.primitiveType)||r.instanced&&a.instanceBuffer&&a.instanceCount>0)_(o,n,i,null);else if(t.batching!==!1&&o.pack.primitiveType===4){let e=o.pack.passNames?.[0]??`__default__`,t=h.get(e);t||(t=[],h.set(e,t)),t.push({cached:o,name:n,geo:i,matrix:null})}else _(o,n,i,null)}}}if(h.size>0)for(let[t,n]of h)if(s.originalMeshes=(s.originalMeshes??0)+n.length,n.length===1)_(n[0].cached,n[0].name,n[0].geo,n[0].matrix);else{let r=!!n[0].cached.geometry.getAttribute(`aAtlasRect`),o=g(n,d(t===`__default__`?void 0:t,r),e);i.add(o),a.push(o),s.meshes++;for(let e of n)s.triangles+=(e.cached.pack.indexCount||0)/3}return i.children.length||s.skipped.push(`tile 无可用几何`),i.userData.textureKeys=o,{group:i,stats:s,objects:a,textureKeys:o}}var ab,ob,sb=n((()=>{rh(),xy(),Vy(),ab=null,ob=new W(1920611)}));function cb(e){return e.slice(0,e.lastIndexOf(`/`)+1)}function lb(e){if(!e)return e;try{let t=typeof document<`u`?document.baseURI:void 0;return t?new URL(e,t).href:new URL(e).href}catch{return e}}function ub(e,t){if(!t)return null;try{return db(new URL(t,e).href)}catch{return db(`${cb(e)}${t}`)}}function db(e){if(!/[+ ]/.test(e))return e;let t=e.indexOf(`#`),n=t<0?``:e.slice(t),r=t<0?e:e.slice(0,t),i=r.indexOf(`?`),a=i<0?r:r.slice(0,i),o=i<0?``:r.slice(i);return`${a.replace(/\+/g,`%2B`).replace(/ /g,`%20`)}${o}${n}`}var fb=110540,pb=111320;function mb(e){if(!e||typeof e!=`object`)return null;let t=e;if(![t.left,t.bottom,t.right,t.top].every(e=>typeof e==`number`&&Number.isFinite(e)))return null;let{left:n,bottom:r,right:i,top:a}=t;return Math.abs(n)>180||Math.abs(i)>180||Math.abs(a)>90||Math.abs(r)>90||i===n&&a===r?null:{left:n,bottom:r,right:i,top:a}}function hb(e,t){if(!t)return null;let n=t.replace(/\.(osgb|s3mb|s3m)$/i,`.s3m`),r=e.split(`/`),i=r.pop()??``,a=r.pop()??``,o=r.lastIndexOf(`datas`);return!i||!a||o<1?ub(cb(e),n):db(`${r[r.length-1]===`path`&&r[r.length-2]===`data`?`${r.join(`/`)}/${a}`:`${r.join(`/`)}/data/path/${a}`}/${n}`)}function gb(e){let t=e.trim();if(t.startsWith(`<`)){let e=e=>{let n=RegExp(`<(?:[a-zA-Z0-9_-]+:)?${e}[^>]*>([^<]+)<\\/`,`i`).exec(t);return n?n[1].trim():null},n=t=>parseFloat(e(t)??``),r=n(`X`)||0,i=n(`Y`)||0,a=n(`Z`)||0,o=n(`Left`),s=n(`Right`),c=n(`Top`),l=n(`Bottom`);if(![o,s,c,l].every(Number.isFinite)){let e=n(`MinX`),t=n(`MaxX`),a=n(`MinY`),u=n(`MaxY`);if([e,t,a,u].every(Number.isFinite)&&r&&i){let n=pb*Math.cos(i*Math.PI/180);n>1e-6&&(o=r+e/n,s=r+t/n,l=i+a/fb,c=i+u/fb)}}let u=t.matchAll(/<(?:[a-zA-Z0-9_-]+:)?FileName[^>]*>([^<]+)<\//gi),d=[];for(let e of u)d.push({url:e[1].trim()});let f=n(`MinHeight`),p=n(`MaxHeight`);return{fileType:e(`FileType`)??void 0,position:{x:r,y:i,z:a,units:`Degree`},geoBounds:{left:o,right:s,top:c,bottom:l},heightRange:Number.isFinite(f)||Number.isFinite(p)?{min:f,max:p}:void 0,rootTiles:d,tiles:d}}return JSON.parse(t)}var _b=class{get heightRange(){let e=this.config?.heightRange;return e&&typeof e.min==`number`&&typeof e.max==`number`?{min:e.min,max:e.max}:null}constructor(e){X(this,`configUrl`,void 0),X(this,`config`,null),X(this,`_blockTileIndex`,null),X(this,`anchor`,{lon:0,lat:0,height:0}),X(this,`rootUrls`,[]),X(this,`nodes`,new Map),X(this,`failed`,new Set),X(this,`textureCache`,new Map),X(this,`maxImageCache`,void 0),X(this,`_textureRefs`,new Map),X(this,`_tileTextureKeys`,new Map),X(this,`pending`,new Set),X(this,`atlasLod`,void 0),X(this,`atlasLodCache`,new Map),X(this,`_groupCache`,new Map),X(this,`externalAtlasCache`,new Map),X(this,`leafRequestCache`,new Map),X(this,`_leafPending`,new Map),X(this,`atlasUpgraded`,new Set),X(this,`atlasUpgradeSkipped`,new Map),X(this,`stats`,{tiles:0,loading:0,failed:0,meshes:0,vertices:0,triangles:0,datasets:1}),X(this,`maxConcurrent`,void 0),X(this,`maxTiles`,void 0),X(this,`lodRangeScale`,void 0),X(this,`_onTile`,void 0),X(this,`_onTileRemoved`,void 0),X(this,`_onError`,void 0),X(this,`_onProgress`,void 0),X(this,`_maxRetries`,void 0),X(this,`_retryCount`,new Map),X(this,`_retryAt`,new Map),X(this,`_parentOf`,new Map),X(this,`_frame`,0),X(this,`_lodDbgOnce`,!1),X(this,`_permanentReported`,!1),X(this,`hardCap`,96),X(this,`isS3MV1`,!1),X(this,`_buildTile`,void 0),X(this,`_uniforms`,void 0),X(this,`_workerClient`,void 0),X(this,`_useWorker`,void 0),X(this,`_queue`,[]),X(this,`_active`,0),this.configUrl=e.configUrl,this.lodRangeScale=e.lodRangeScale??3,this._onTile=e.onTile??(()=>{}),this._onTileRemoved=e.onTileRemoved??(()=>{}),this._onError=e.onError??(e=>console.warn(e)),this._onProgress=e.onProgress??(()=>{}),this._maxRetries=Math.max(0,e.maxRetries??2),this._buildTile=e.buildTile??null,this._uniforms=e.uniforms??null,this._useWorker=e.useWorker!==!1,this.maxConcurrent=e.maxConcurrent??4,this.maxTiles=e.maxTiles??64,this.maxImageCache=e.maxImageCache??128,this.hardCap=this.maxTiles+Math.max(8,Math.ceil(this.maxTiles*.5)),this.atlasLod=e.atlasLod!==!1}async init(){this.configUrl=lb(this.configUrl);let e=await fetch(this.configUrl);if(!e.ok)throw Error(`配置读取失败 ${e.status} ${this.configUrl}`);let t=gb(await e.text());this.config=t,this.anchor=this._resolveAnchor(t);let n=t.rootTiles??t.tiles??[];if(!n.length)throw Error(`配置中缺少 root tile`);this.rootUrls.length=0;for(let e of n){let t=ub(this.configUrl,e.url);t&&this.rootUrls.push(t)}if(this.isS3MV1=/OSGB/i.test(String(t.fileType??``))||/OSGB/i.test(String(t.dataType??``))||this.rootUrls.length>0&&this.rootUrls.every(e=>/\.s3m($|\?)/i.test(e)),this.rootUrls.every(e=>/\.s3mblock($|\?)/i.test(e))){this._blockTileIndex=new Set(this.rootUrls);for(let e of n){let t=ub(this.configUrl,e.url);t&&this._blockTileIndex.add(t)}}await this._load(this.rootUrls[0]);for(let e of this.rootUrls.slice(1))this._enqueue(e);return this}_enqueue(e,t){if(!e||(t&&this._parentOf.set(e,t),this.nodes.has(e)||this.pending.has(e)||this.failed.has(e))||this._queue.includes(e))return;let n=this._retryAt.get(e);n!==void 0&&performance.now()<n||this.nodes.size+this.pending.size+this._queue.length>=this.hardCap||(this._queue.push(e),this._pump())}registerTileTextures(e,t){this._tileTextureKeys.set(e,t);let n=this.nodes.get(e);n&&(n.textureKeys=t);for(let e of t)this._textureRefs.set(e,(this._textureRefs.get(e)??0)+1)}_evictTileNode(e){this.nodes.delete(e.url),e.group?.parent?.remove(e.group),this._onTileRemoved(e),this._parentOf.delete(e.url),this.stats.tiles=Math.max(0,this.stats.tiles-1),e.stats&&(this.stats.meshes=Math.max(0,this.stats.meshes-(e.stats.meshes??0)),this.stats.vertices=Math.max(0,this.stats.vertices-(e.stats.vertices??0)),this.stats.triangles=Math.max(0,this.stats.triangles-(e.stats.triangles??0)));let t=e.textureKeys??this._tileTextureKeys.get(e.url)??e.group?.userData?.textureKeys;if(this._tileTextureKeys.delete(e.url),t?.length)for(let e of t){let t=(this._textureRefs.get(e)??1)-1;if(t<=0){this._textureRefs.delete(e);let t=this.textureCache.get(e);t&&(t.dispose?.(),this.textureCache.delete(e))}else this._textureRefs.set(e,t)}}putExternalAtlas(e,t){if(this.externalAtlasCache.size>=this.maxImageCache&&!this.externalAtlasCache.has(e)){let e=this.externalAtlasCache.keys().next().value;e!==void 0&&this.externalAtlasCache.delete(e)}Map.prototype.set.call(this.externalAtlasCache,e,t)}getExternalAtlas(e){return this.externalAtlasCache.get(e)}putLeafRecords(e,t){if(this.leafRequestCache.size>=this.maxImageCache&&!this.leafRequestCache.has(e)){let e=this.leafRequestCache.keys().next().value;e!==void 0&&this.leafRequestCache.delete(e)}Map.prototype.set.call(this.leafRequestCache,e,t)}getLeafRecords(e){return this.leafRequestCache.get(e)}_evictOne(e=!1){let t=this._pickVictim(!0,e)??this._pickVictim(!1,e);if(!t)return!1;let n=t.parentUrl??this._parentOf.get(t.url),r=t.childUrls??(t.childUrl?[t.childUrl]:[]);r.some(e=>e!==t.url&&this.nodes.has(e)),this._evictTileNode(t);let i=r.filter(e=>e!==t.url&&this.nodes.has(e));if(i.length){for(let e of i){let t=this.nodes.get(e);t&&(t.parentUrl=n??void 0,n?this._parentOf.set(e,n):this._parentOf.delete(e))}if(n){let e=this.nodes.get(n);if(e){let n=new Set(e.childUrls??[]);e.childUrl&&n.add(e.childUrl),n.delete(t.url);for(let e of i)n.add(e);e.childUrls=[...n],e.childUrl=e.childUrls[0]??null}}}return!0}_trimBudget(){let e=!1,t=0;for(;this.nodes.size+this.pending.size>this.maxTiles&&t++<=this.maxTiles+8&&this._evictOne(this.nodes.size+this.pending.size>this.hardCap);)e=!0;return e}_pickVictim(e,t=!1){let n=null;for(let r of this.nodes.values()){let i=r.childUrls??(r.childUrl?[r.childUrl]:[]);if((i.length>0&&i.some(e=>e!==r.url&&this.nodes.has(e)))!==e||!t&&r.group.visible&&!i.some(e=>{let t=this.nodes.get(e);return!!t&&t.group.visible}))continue;if(!n){n=r;continue}let a=r.lastSeen??-1,o=n.lastSeen??-1;(a<o||a===o&&(r.distance??0)>(n.distance??0))&&(n=r)}return n}retryFailed(){let e=this.failed.size;return this.failed.clear(),this._retryCount.clear(),this._retryAt.clear(),e}_pump(){for(;this._active<this.maxConcurrent&&this._queue.length;){let e=this._queue.shift();this._active++,this._load(e).finally(()=>{this._active--,this._pump()})}}_resolveAnchor(e){let t=e.position,n=t?.point3D??t,r=!!n&&Number.isFinite(n.x)&&Number.isFinite(n.y),i=mb(e.geoBounds),a=i?(i.left+i.right)/2:void 0,o=i?(i.bottom+i.top)/2:void 0,s=n?.z??0;if(!r)return{lon:a??0,lat:o??0,height:0};if((t?.units??t?.unit??`Degree`)!==`Degree`)return{lon:n.x,lat:n.y,height:s};let c=a===void 0?0:Math.abs(n.x-a),l=o===void 0?0:Math.abs(n.y-o);return c>.5||l>.5?(console.warn(`[s3m] position 与 geoBounds 不一致,改用 geoBounds 中心作为锚点`,{position:n,geoBounds:i}),{lon:a,lat:o,height:s}):{lon:n.x,lat:n.y,height:s}}_pickLod(e){let t=e.groupNode?.pageLods??[];return t.length?t.find(e=>e.childTile&&e.rangeValue>0)??t[0]:null}async _builder(){if(!this._buildTile){let e=await Promise.resolve().then(()=>(sb(),Hy));this._buildTile=e.buildTileObjects}return this._buildTile}async _parseClassicTile(e){if(this._useWorker&&this._workerClient===void 0&&(this._workerClient=h_()),this._workerClient)try{return await this._workerClient.parseTile(e)}catch(e){if(e instanceof f_)this._workerClient=null;else throw e}return qg(e)}_rememberGroups(e,t){for(this._groupCache.delete(e),this._groupCache.set(e,t);this._groupCache.size>24;){let e=this._groupCache.keys().next().value;if(e===void 0)break;this._groupCache.delete(e)}}async _fillExternalAtlases(e,t){let n=e,r=n.texturePackage;if(!r)return;let i=I_(n),a=!1,o=new Map,s=new Map,c=[];for(let[e,t]of Object.entries(r)){let n=K_(t.requestNames);if(n.names.length){o.set(e,{tex:t,plan:n});for(let[e,t]of n.packGroups){let n=t.filter(e=>!this.leafRequestCache.has(e));if(!n.length)continue;let r=s.get(e)??[];for(let e of n)r.includes(e)||r.push(e);s.set(e,r)}for(let e of n.plain)!this.leafRequestCache.has(e)&&!c.includes(e)&&c.push(e)}}let l=[];for(let[e,n]of s){let r=null,i=()=>r??(r=this._fetchLeafPack(t,e,n));for(let e of n)l.push(this._ensureLeafFetch(e,i))}for(let e of c)l.push(this._ensureLeafFetch(e,()=>this._fetchLeafFile(t,e)));l.length&&await Promise.all(l);for(let[e,{tex:t,plan:n}]of o){let r=new Map;for(let e of n.names){let t=this.leafRequestCache.get(e);if(t)for(let n of t)r.set(n.id,{source:e,image:n})}let i=q_(t,r);if(i){let n=t;n.composed=!0,n.leafSig=i.sig,n.flipY=!1,t.data=i.data,t.compressType=0,t.pixelFormat=28,t.width=i.width,t.height=i.height,t.rectScale=1,this.atlasUpgraded.add(e),a=!0,(i.missing.length||i.mismatched.length)&&console.warn(`[s3m] leaf 图集部分精灵异常:`,e,{missing:i.missing,mismatched:i.mismatched});continue}let o=!!t.data,s=n=>{if(!o){let r=t.width/t.height,i=n.width/n.height;return Math.abs(i/r-1)<=.02||(this.atlasUpgradeSkipped.set(e,`aspect(no-baseline) ${t.width}x${t.height} vs ${n.width}x${n.height}`),!1)}let r=ov(t,n);return r.ok?!0:(this.atlasUpgradeSkipped.set(e,`${r.reason} aspectΔ=${(r.aspectDelta*100).toFixed(1)}% scale=${r.scale} err=${Number.isNaN(r.meanAbsError)?`n/a`:r.meanAbsError.toFixed(1)}`),!1)},c=n=>{let r=t;r.composed=!1,r.leafSig=void 0,r.flipY=!0,t.data=n.data,t.compressType=n.compressType,t.pixelFormat=n.pixelFormat,t.rectScale=t.width>0?n.width/t.width:1,t.width=n.width||t.width,t.height=n.height||t.height,this.atlasUpgraded.add(e),a=!0},l=this.externalAtlasCache.get(e);if(l!==null){if(l===void 0){l=null;for(let e of n.plain){let t=this.leafRequestCache.get(e);if(t?.length){l=t[0];break}}this.putExternalAtlas(e,l)}l?s(l)&&c(l):this.atlasUpgradeSkipped.has(e)||this.atlasUpgradeSkipped.set(e,`no usable external image(请求失败或只拿到子精灵)`)}}(i||a)&&L_(n)}_ensureLeafFetch(e,t){if(this.leafRequestCache.has(e))return Promise.resolve();let n=this._leafPending.get(e);if(n)return n;let r=t().finally(()=>this._leafPending.delete(e));return this._leafPending.set(e,r),r}async _fetchLeafPack(e,t,n){let r=ub(cb(e),`${n[0]}.texblock?extratiles=${n.join(`;`)}`);try{if(!r)throw Error(`无法拼出 URL`);let e=await fetch(r);if(!e.ok)throw Error(`HTTP ${e.status}`);let t=await B_(await e.arrayBuffer());if(t.length!==n.length)throw Error(`pack 段数 ${t.length} ≠ 请求名 ${n.length}`);n.forEach((e,n)=>this.putLeafRecords(e,t[n]))}catch(e){console.warn(`[s3m] leaf pack 请求失败:`,r,e);for(let e of n)this.leafRequestCache.has(e)||this.putLeafRecords(e,null)}}async _fetchLeafFile(e,t){let n=ub(cb(e),`${t}.texblock`);try{if(!n)throw Error(`无法拼出 URL`);let e=await fetch(n);if(!e.ok)throw Error(`HTTP ${e.status}`);let r=(await B_(await e.arrayBuffer())).flat();this.putLeafRecords(t,r)}catch(e){console.warn(`[s3m] leaf texblock 请求失败:`,n,e),this.leafRequestCache.has(t)||this.putLeafRecords(t,null)}}async _upgradeAtlasLod(e,t){}async _load(e){if(!(this.nodes.has(e)||this.pending.has(e)||this.failed.has(e))){this.pending.add(e),this.stats.loading++;try{let t=e.indexOf(`#`),n=t>=0?e.slice(0,t):e,r=t>=0&&Number(e.slice(t+1))||0,i=/\.s3mblock($|\?)/i.test(n),a,o=[],s=this._groupCache.get(n);if(s)o=s.names,a=s.tiles[r]??s.tiles[0];else{let e=await fetch(n);if(!e.ok)throw Error(`HTTP ${e.status} 加载瓦片失败: ${n}`);if((e.headers.get(`content-type`)||``).includes(`text/html`))throw Error(`瓦片请求返回了 HTML 页面(通常为 404/500 服务端拦截): ${n}`);let t=await e.arrayBuffer();if(i){let e=await J_(t);this._rememberGroups(n,e),o=e.names,a=e.tiles[r]??e.tiles[0]}else a=await this._parseClassicTile(t)}i&&(await this._fillExternalAtlases(a,n),await this._upgradeAtlasLod(a,n));let c=await(await this._builder())(a,{textureCache:this.textureCache,uniforms:this._uniforms}),{group:l,stats:u}=c,d=c.textureKeys??l.userData?.textureKeys??Object.keys(a.textures??{});this.registerTileTextures(e,d);let f=this._pickLod(a),p=[];for(let t of a.groupNode?.pageLods??[]){let r=String(t.childTile??``).replace(/\.s3mblock$/i,``),a=i&&r?o.indexOf(r):-1,s=a>=0?`${n}#${a}`:this.isS3MV1?hb(e,t.childTile):ub(cb(e),t.childTile);s&&s!==e&&!p.includes(s)&&p.push(s)}let m={url:e,tile:a,group:l,sphere:f?.boundingSphere??null,rangeValue:f?.rangeValue??0,rangeMode:f?.rangeMode??1,childUrl:p[0]??(this.isS3MV1?hb(e,f?.childTile):ub(cb(e),f?.childTile)),childUrls:p,parentUrl:this._parentOf.get(e),state:`ready`,stats:{meshes:u.meshes??0,vertices:u.vertices??0,triangles:u.triangles??0}};this.nodes.set(e,m),this.stats.tiles++,this.stats.meshes+=u.meshes??0,this.stats.vertices+=u.vertices??0,this.stats.triangles+=u.triangles??0,this._onTile(m)}catch(t){let n=t?.permanent===!0,r=(this._retryCount.get(e)??0)+1;if(this._retryCount.set(e,r),!n&&r<=this._maxRetries)this._retryAt.set(e,performance.now()+800*r);else{this.stats.failed++,this.failed.add(e),this._retryAt.delete(e);let t=this._parentOf.get(e),n=t?this.nodes.get(t):void 0;n?.childUrls&&(n.childUrls=n.childUrls.filter(t=>t!==e),n.childUrl=n.childUrls[0]??null)}n?this._permanentReported||(this._permanentReported=!0,this._onError(t)):this._onError(t)}finally{this.pending.delete(e),this.stats.loading--,this._onProgress(this.stats)}}}update(e,t,n){this._frame++;let r=!1;for(let t of this.nodes.values()){var i;if(!t.sphere){t.needRefine=!1;continue}let a=t.sphere.center,o=a.x-e[0],s=a.y-e[1],c=a.z-e[2],l=Math.sqrt(o*o+s*s+c*c)||1e-6;t.distance=l;let u,d=t.rangeMode===0;u=d?l:n*.5/Math.tan(Math.PI/8)*(t.sphere.radius/l)*2;let f=this.lodRangeScale>0?this.lodRangeScale:1,p=t.rangeValue*f;(d?l<p*2:u>p*.5)&&(t.lastSeen=this._frame);let m=t.childUrls??(t.childUrl?[t.childUrl]:[]),h=m.length>0&&(d?u<p:u>p);t.needRefine=h;let g=(i=globalThis).__S3M_LOD_SEEN??(i.__S3M_LOD_SEEN=new Set);if(globalThis.__S3M_LOD_DEBUG&&!g.has(t.url)&&g.size<260&&(g.add(t.url),console.log(`[LOD]`,JSON.stringify({url:t.url.split(`/`).pop(),mode:t.rangeMode,rangeValue:t.rangeValue,radius:t.sphere.radius,dist:+l.toFixed(1),metric:+u.toFixed(1),threshold:+p.toFixed(1),needRefine:h,childUrls:m.map(e=>e.split(`/`).pop()),parent:t.parentUrl?t.parentUrl.split(`/`).pop():null}))),h)for(let e of m)this.failed.has(e)||this.nodes.has(e)||this.pending.has(e)||(this._enqueue(e,t.url),r=!0)}let a=new Set,o=new Set(this.rootUrls);for(let[e,t]of this.nodes){let n=t.parentUrl??this._parentOf.get(e);n&&this.nodes.has(n)||o.add(e)}for(let e of o)this._updateNodeVisibility(e,!0,a)&&(r=!0);for(let[e,t]of this.nodes)a.has(e)||t.group.visible&&(t.group.visible=!1,r=!0);this._trimBudget()&&(r=!0);let s=!1;for(let e of this.nodes.values())if(e.group.visible){s=!0;break}if(!s&&this.nodes.size>0)for(let e of this.nodes.values())!(e.childUrls??(e.childUrl?[e.childUrl]:[])).some(t=>{let n=this.nodes.get(t);return!!n&&n!==e&&n.group.visible})&&!e.group.visible&&(e.group.visible=!0,r=!0);return r}_updateNodeVisibility(e,t,n){let r=this.nodes.get(e);if(!r||n.has(e))return!1;n.add(e);let i=!1,a=r.childUrls??(r.childUrl?[r.childUrl]:[]);if(!t){r.group.visible&&(r.group.visible=!1,i=!0);for(let e of a)this._updateNodeVisibility(e,!1,n)&&(i=!0);return i}let o=a.length>0,s=a.filter(e=>this.nodes.has(e)),c=a.every(e=>this.nodes.has(e)||this.failed.has(e));if(r.needRefine&&o&&s.length>0&&c){r.group.visible&&(r.group.visible=!1,i=!0);for(let e of a)this._updateNodeVisibility(e,!0,n)&&(i=!0)}else{r.group.visible||(r.group.visible=!0,i=!0);for(let e of a)this._updateNodeVisibility(e,!1,n)&&(i=!0)}return i}dispose(){this._workerClient?.dispose();for(let e of this.nodes.values())e.group.traverse(e=>{let t=e;t.geometry?.dispose?.(),Array.isArray(t.material)?t.material.forEach(e=>e.dispose?.()):t.material?.dispose?.()});for(let e of this.textureCache.values())e.dispose?.();this.textureCache.clear(),this.nodes.clear()}};rh(),Vy();var vb=2;function yb(e){return e===Ty.SOLID?`solid`:e===Ty.HEIGHT?`height`:`vertex`}var bb=`
4204
+ `}));function Gy(e){return e===`u8`?1:e===`u16`?2:4}function Ky(e,t){switch(e){case`u8`:return new Uint8Array(t);case`u16`:return new Uint16Array(t);case`u32`:return new Uint32Array(t);default:return new Float32Array(t)}}function qy(e,t){switch(e){case`u8`:return new Uint8Array(t);case`u16`:return new Uint16Array(t);case`u32`:return new Uint32Array(t);default:return new Float32Array(t)}}function Jy(e){let{data:t,stride:n,offsetInBytes:r,dtype:i=`f32`}=e,a=e.components??e.comp??3,o=Gy(i),s=a*o,c=n??s,l=r??0,u=i===`u8`;if(c===s&&l===0)return{array:Ky(i,t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)),components:a,normalized:u};let d=Math.floor(t.byteLength/c),f=qy(i,d*a),p=new DataView(t.buffer,t.byteOffset,t.byteLength);for(let e=0;e<d;e++){let t=e*c+l;for(let n=0;n<a;n++){let r=t+n*o;f[e*a+n]=i===`u8`?p.getUint8(r):i===`u16`?p.getUint16(r,!0):i===`u32`?p.getUint32(r,!0):p.getFloat32(r,!0)}}return{array:f,components:a,normalized:u}}function Yy(e,t){let n=new Float32Array(t*3);if(!e)return n.fill(1),n;let r=e.data,i=e.components??4,a=e.dtype===`u8`?1/255:1;for(let e=0;e<t;e++){let t=e*i;n[e*3]=(r[t]??255)*a,n[e*3+1]=(r[t+1]??255)*a,n[e*3+2]=(r[t+2]??255)*a}return n}function Xy(e){let{indices:t,indexType:n,indexCount:r}=e;if(!t||r===0)return null;let i=Math.floor(t.byteLength/r),a=i===4||i!==2&&(n===1||n===3),o=r*(a?4:2);if(o>t.byteLength)return null;let s=t.buffer.slice(t.byteOffset,t.byteOffset+o);return a?new Uint32Array(s):new Uint16Array(s)}function Zy(e,t,n){let r=new Float32Array(n*3),i=(t,n,i)=>{let a=e[t*3],o=e[t*3+1],s=e[t*3+2],c=e[n*3],l=e[n*3+1],u=e[n*3+2],d=e[i*3],f=e[i*3+1],p=e[i*3+2],m=c-a,h=l-o,g=u-s,_=d-a,v=f-o,y=p-s,b=h*y-g*v,x=g*_-m*y,S=m*v-h*_;for(let e of[t,n,i])r[e*3]+=b,r[e*3+1]+=x,r[e*3+2]+=S};if(t)for(let e=0;e+2<t.length;e+=3)i(t[e],t[e+1],t[e+2]);else for(let e=0;e+2<n;e+=3)i(e,e+1,e+2);for(let e=0;e<n;e++){let t=e*3,n=Math.hypot(r[t],r[t+1],r[t+2]);n>0&&(r[t]/=n,r[t+1]/=n,r[t+2]/=n)}return r}function Qy(e,t){let n=[1/0,1/0,1/0],r=[-1/0,-1/0,-1/0];for(let i=0;i<t;i++)for(let t=0;t<3;t++){let a=e[i*3+t];a<n[t]&&(n[t]=a),a>r[t]&&(r[t]=a)}let i=[(n[0]+r[0])/2,(n[1]+r[1])/2,(n[2]+r[2])/2],a=0;for(let n=0;n<t;n++){let t=e[n*3]-i[0],r=e[n*3+1]-i[1],o=e[n*3+2]-i[2],s=t*t+r*r+o*o;s>a&&(a=s)}return{boxMin:n,boxMax:r,sphereCenter:i,sphereRadius:Math.sqrt(a)}}function $y(e){return cb.includes(e)}function eb(e){return!e||e[0]===1&&e[1]===0&&e[2]===0&&e[3]===0&&e[4]===0&&e[5]===1&&e[6]===0&&e[7]===0&&e[8]===0&&e[9]===0&&e[10]===1&&e[11]===0&&e[12]===0&&e[13]===0&&e[14]===0&&e[15]===1}function tb(e,t,n,r,i){i[0]=e[0]*t+e[4]*n+e[8]*r+e[12],i[1]=e[1]*t+e[5]*n+e[9]*r+e[13],i[2]=e[2]*t+e[6]*n+e[10]*r+e[14]}function nb(e){let t=e[0],n=e[4],r=e[8],i=e[1],a=e[5],o=e[9],s=e[2],c=e[6],l=e[10],u=a*l-o*c,d=-(i*l-o*s),f=i*c-a*s,p=-(n*l-r*c),m=t*l-r*s,h=-(t*c-n*s),g=n*o-r*a,_=-(t*o-r*i),v=t*a-n*i,y=t*u+n*d+r*f||1e-12,b=[u/y,d/y,f/y,p/y,m/y,h/y,g/y,_/y,v/y],x=new Float32Array(9);return x[0]=b[0],x[1]=b[3],x[2]=b[6],x[3]=b[1],x[4]=b[4],x[5]=b[7],x[6]=b[2],x[7]=b[5],x[8]=b[8],x}function rb(e,t,n,r,i){i[0]=e[0]*t+e[3]*n+e[6]*r,i[1]=e[1]*t+e[4]*n+e[7]*r,i[2]=e[2]*t+e[5]*n+e[8]*r;let a=Math.hypot(i[0],i[1],i[2])||1;i[0]/=a,i[1]/=a,i[2]/=a}function ib(e){let t=0,n=0,r=!1,i=!1,a=!1,o=!1;for(let s of e)t+=s.vertexCount,n+=s.index?s.indexCount:s.vertexCount,s.attrs.normal&&(r=!0),s.attrs.uv&&(i=!0),s.attrs.uv1&&(a=!0),s.attrs.aAtlasRect&&(o=!0);let s={array:new Float32Array(t*3),components:3,normalized:!1},c=r?{array:new Float32Array(t*3),components:3,normalized:!1}:null,l=i?{array:new Float32Array(t*2),components:2,normalized:!1}:null,u=a?{array:new Float32Array(t*2),components:2,normalized:!1}:null,d={array:new Float32Array(t*3),components:3,normalized:!1},f={array:new Float32Array(t),components:1,normalized:!1},p=o?{array:new Float32Array(t*4),components:4,normalized:!1}:null,m=o?{array:new Float32Array(t*4),components:4,normalized:!1}:null,h=o?{array:new Float32Array(t*2),components:2,normalized:!1}:null,g=t>65535?new Uint32Array(n):new Uint16Array(n),_=[0,0,0],v=0,y=0;for(let t of e){let{attrs:e}=t,n=t.vertexCount,r=eb(t.matrix)?null:t.matrix,i=r&&c?nb(r):null,a=e.position.array,o=e.normal?.array,b=e.uv?.array,x=e.uv1?.array,S=e.aColor.array,C=e.aBatchId.array,w=s.array,T=c?.array,E=l?.array,D=u?.array,O=d.array,k=f.array;for(let e=0;e<n;e++){let t=v+e;r?(tb(r,a[e*3],a[e*3+1],a[e*3+2],_),w[t*3]=_[0],w[t*3+1]=_[1],w[t*3+2]=_[2]):(w[t*3]=a[e*3],w[t*3+1]=a[e*3+1],w[t*3+2]=a[e*3+2]),T&&(o&&i?(rb(i,o[e*3],o[e*3+1],o[e*3+2],_),T[t*3]=_[0],T[t*3+1]=_[1],T[t*3+2]=_[2]):o&&(T[t*3]=o[e*3],T[t*3+1]=o[e*3+1],T[t*3+2]=o[e*3+2])),E&&b&&(E[t*2]=b[e*2],E[t*2+1]=b[e*2+1]),D&&x&&(D[t*2]=x[e*2],D[t*2+1]=x[e*2+1]),S?(O[t*3]=S[e*3],O[t*3+1]=S[e*3+1],O[t*3+2]=S[e*3+2]):(O[t*3]=1,O[t*3+1]=1,O[t*3+2]=1),k[t]=C?C[e]:-1}if(p){let t=e.aAtlasRect?.array,r=e.aAtlasRect1?.array,i=e.aSecUv?.array,a=p.array,o=m.array,s=h.array;for(let e=0;e<n;e++){let n=(v+e)*4;for(let i=0;i<4;i++)a[n+i]=t?t[e*4+i]??0:0,o[n+i]=r?r[e*4+i]??0:0;s[(v+e)*2]=i?i[e*2]??0:0,s[(v+e)*2+1]=i?i[e*2+1]??0:0}}if(t.index){for(let e=0;e<t.indexCount;e++)g[y+e]=t.index[e]+v;y+=t.indexCount}else{for(let e=0;e<n;e++)g[y+e]=e+v;y+=n}v+=n}let b=Qy(s.array,t);return{skeletonName:e[0].name,geoNames:e.map(e=>e.name),primitiveType:4,passNames:e[0].passNames,matrix:null,vertexCount:t,indexCount:n,attributes:{position:s,normal:c??void 0,uv:l??void 0,uv1:u??void 0,aColor:d,aBatchId:f,aAtlasRect:p??void 0,aAtlasRect1:m??void 0,aSecUv:h??void 0},index:g,bounds:b,batchedFrom:e.length}}function ab(e,t,n,r){let i=t.vertexPackage,a=i.vertexAttributes.find(e=>e.semantic===`position`);if(!a)return r.push(`${e} 无 position`),null;let o=i.verticesCount||0,s={position:Jy(a),aColor:{array:new Float32Array,components:3,normalized:!1},aBatchId:{array:new Float32Array,components:1,normalized:!1}},c=null,l=null,u=null,d=null,f=null;for(let e of i.vertexAttributes)e.divisor===void 0&&e.semantic!==`position`&&(e.semantic===`color`?c=e:e.semantic===`batchId`?l=e:e.semantic===`normal`?u=Jy(e):e.semantic===`uv`?d=Jy(e):e.semantic===`uv2`&&(f=Jy(e)));s.aColor={array:Yy(c,o),components:3,normalized:!1},s.aBatchId=l?{array:Jy(l).array,components:1,normalized:!1}:{array:new Float32Array(o).fill(-1),components:1,normalized:!1},u&&(s.normal=u),d&&(s.uv=d),f&&(s.uv1=f);let p=n.atlasRects?.[e];p&&(s.aAtlasRect={array:p.uv??new Float32Array(o*4),components:4,normalized:!1},p.uv2&&f?(s.aAtlasRect1={array:p.uv2,components:4,normalized:!1},s.aSecUv={array:f.array,components:f.components,normalized:f.normalized}):(s.aAtlasRect1={array:new Float32Array(o*4),components:4,normalized:!1},s.aSecUv=s.uv??{array:new Float32Array(o*2),components:2,normalized:!1}));let m=t.indexPackages??[];return m.length===0&&o>0&&(m=[{indexCount:0,indexType:0,useIndex:0,primitiveType:lb,indices:null,passNames:[]}]),{attrs:s,packs:m,instanced:i.instanceIndex!==-1&&(i.instanceMode===16||i.instanceMode===17)}}function ob(e,t,n,r,i,a){let o=n.vertexPackage.verticesCount||0,s=Xy(i),c={...r.attrs};return!$y(i.primitiveType)&&i.primitiveType!==lb&&!c.normal&&(c.normal={array:Zy(c.position.array,s,o),components:3,normalized:!1}),{skeletonName:e,geoNames:[t],primitiveType:i.primitiveType,passNames:i.passNames??[],matrix:a,vertexCount:o,indexCount:i.indexCount||0,attributes:c,index:s,bounds:Qy(c.position.array,o)}}function sb(e,t={}){let n=t.batching!==!1,r=[],i={vertices:0,instanced:0,edgeLines:0,skipped:r},a=new Map;for(let[t,n]of Object.entries(e.geoPackage??{})){let o=ab(t,n,e,r);o&&(a.set(t,o),i.vertices+=n.vertexPackage.verticesCount||0)}let o=[],s=new Map,c=0,l=e=>{$y(e.primitiveType)&&i.edgeLines++,o.push(e)},u=e=>{let t=e.passNames[0]??`__default__`,n=s.get(t);n||(n=[],s.set(t,n)),n.push(e)},d=(e,t,r,a,o)=>{let s=r.packs[a],d=r.instanced&&!!t.vertexPackage.instanceBuffer&&(t.vertexPackage.instanceCount??0)>0;$y(s.primitiveType)||d?(d&&i.instanced++,l(ob(e,e,t,r,s,o)),c++):n&&s.primitiveType===4?(u({attrs:r.attrs,index:Xy(s),vertexCount:t.vertexPackage.verticesCount||0,indexCount:s.indexCount||0,name:e,geo:t,matrix:o,passNames:s.passNames??[],primitiveType:s.primitiveType}),c++):(l(ob(e,e,t,r,s,o)),c++)};for(let t of e.groupNode?.pageLods??[])for(let n of t.geodes??[]){let t=n.matrix&&n.matrix.length===16?n.matrix:null;for(let r of n.skeletonNames??[]){let n=a.get(r);if(!n)continue;let i=e.geoPackage[r];if(i)for(let e=0;e<n.packs.length;e++)d(r,i,n,e,t)}}if(c===0)for(let[t,n]of a){let r=e.geoPackage[t];if(r)for(let e=0;e<n.packs.length;e++)d(t,r,n,e,null)}if(s.size>0)for(let[,e]of s)if(i.originalMeshes=(i.originalMeshes??0)+e.length,e.length===1){let t=e[0];l(ob(t.name,t.name,t.geo,{attrs:t.attrs,packs:[],instanced:!1},{indexCount:t.indexCount,indexType:0,useIndex:1,primitiveType:t.primitiveType,indices:t.index?new Uint8Array(t.index.buffer,t.index.byteOffset,t.index.byteLength):null,passNames:t.passNames},t.matrix))}else l(ib(e));return{primitives:o,stats:i}}var cb,lb,ub=n((()=>{cb=[13,2,3],lb=1})),db=i({LINE_PRIMITIVE:()=>13,POINT_PRIMITIVE:()=>1,buildTileObjects:()=>xb});function fb(e){return e===13||e===2||e===3}function pb(e){return e===1}function mb(){return Sb||(Sb=new dd({size:2,sizeAttenuation:!1,vertexColors:!0})),Sb}function hb(e){if(!e)return[];if(Array.isArray(e))return e;let t=e,n=t.materials??t.material;return Array.isArray(n)?n:[]}function gb(e){return e?.material??e}function _b(e){return e?.name??e?.id}function vb(e){return(e?.textureStates??e?.textureunitstates??[]).map(e=>e?.textureunitstate??e).filter(e=>!!e)}function yb(e){return e.length===16&&e[0]===1&&e[1]===0&&e[2]===0&&e[3]===0&&e[4]===0&&e[5]===1&&e[6]===0&&e[7]===0&&e[8]===0&&e[9]===0&&e[10]===1&&e[11]===0&&e[12]===0&&e[13]===0&&e[14]===0&&e[15]===1}function bb(e){let t=String(e?.cullMode??``).toUpperCase();return t===`CULL_BACK`||t===`BACKWARD`?0:t===`CULL_FRONT`?1:2}async function xb(e,t={}){let n=t.uniforms??Ty(),r=t.textureCache??new Map,i=new Ml,a=[],o=[],s={meshes:0,vertices:0,triangles:0,textures:0,instanced:0,edgeLines:0,skipped:[]},c=new Qu({color:new W(t.edgeColor??`#1f2937`),transparent:!0,opacity:.75,depthWrite:!1});i.userData.hasNativeEdges=!1;let l=t=>{let n=e.textures?.[t];return n?.packKey?`${t}#${n.packKey}`:t};for(let[t,n]of Object.entries(e.textures??{})){let e=l(t),i=r.get(e);if(i){let t=i.image;if((t?.width??0)*(t?.height??0)>=(n.width??0)*(n.height??0))continue;r.delete(e)}let{texture:a,decoded:c}=await by(n);a?(r.set(e,a),o.push(e),s.textures++):s.skipped.push(`texture ${t} → ${c}`)}let u=hb(e.materials),d=(e,t=!1)=>{let i=gb(u.find(t=>_b(gb(t))===e)),a=vb(i),o=a[0],s=o?r.get(l(_b(o)??o.id??``))??null:null,c=a[1],d=globalThis.__S3M_NO_BAKE===!0,f=t&&c&&!d?r.get(l(_b(c)??c.id??``))??null:null,p=o?.texmodmatrix??o?.matrix;if(s&&Array.isArray(p)&&p.length===16&&!yb(p)&&(s=s.clone(),s.matrixAutoUpdate=!1,s.matrix.set(p[0],p[4],p[12],p[1],p[5],p[13],0,0,1)),s&&o?.addressmode){let e=o.addressmode.u,t=o.addressmode.v;(e!==void 0||t!==void 0)&&(s.matrixAutoUpdate&&(s=s.clone()),e!==void 0&&(s.wrapS=e===0?Ir:z),t!==void 0&&(s.wrapT=t===0?Ir:z))}let m=i?.diffuse??{r:1,g:1,b:1,a:1},h=i?.alphaMode,g=[o,c].some(e=>/\.water$/i.test(String(_b(e)??e?.id??``))),_=h===`AM_BLEND`||(m.a??1)<.999||i?.transparentsorting===!0||g&&!s,v=typeof i?.shininess==`number`&&i.shininess>0?Math.max(.15,1-i.shininess/128):.95,y=s?.userData?.s3mHasAlpha?Math.max(i?.alphaCutoff??0,.01):0;return Ey({uniforms:n,map:s,color:g&&!s?Cb.clone():new W(m.r??1,m.g??1,m.b??1),side:bb(i),transparent:_,opacity:g&&!s?.86:m.a??1,roughness:g&&!s?.12:v,alphaTest:y,atlas:t&&!!s,secMap:f})},f=t.assembled??sb(e,{batching:t.batching!==!1});s.vertices=f.stats.vertices,s.edgeLines=f.stats.edgeLines,s.instanced=f.stats.instanced,f.stats.originalMeshes!=null&&(s.originalMeshes=f.stats.originalMeshes),s.skipped.push(...f.stats.skipped);let p=new U,m=e=>{let t=new q;for(let[n,r]of Object.entries(e.attributes))r&&t.setAttribute(n,new G(r.array,r.components,r.normalized));return e.index?t.setIndex(new G(e.index,1)):t.setDrawRange(0,e.vertexCount),t.boundingBox=new ho(new H(...e.bounds.boxMin),new H(...e.bounds.boxMax)),t.boundingSphere=new Mo(new H(...e.bounds.sphereCenter),e.bounds.sphereRadius),t};for(let n of f.primitives){let r=m(n),o=e.geoPackage[n.geoNames[0]]??null,l=o?.vertexPackage,u=d(n.passNames[0],!!n.attributes.aAtlasRect),f=n.matrix&&n.matrix.length===16?new U().fromArray(n.matrix):null;if(fb(n.primitiveType)){let e=new ld(r,c);e.visible=t.edges===!0,e.renderOrder=2,e.raycast=()=>{},e.userData.isEdgeLines=!0,e.userData.skeletonName=n.skeletonName,f&&!f.equals(p)&&f.decompose(e.position,e.quaternion,e.scale),i.add(e),a.push(e),i.userData.hasNativeEdges=!0;continue}if(pb(n.primitiveType)){r.getAttribute(`color`)||r.setAttribute(`color`,r.getAttribute(`aColor`));let t=new gd(r,mb());t.userData.isPointCloud=!0,t.userData.skeletonName=n.skeletonName,t.userData.geoRef=o,t.userData.tileRef=e,t.userData.primitiveType=n.primitiveType,f&&!f.equals(p)&&f.decompose(t.position,t.quaternion,t.scale),i.add(t),a.push(t),s.meshes++;continue}let h;if(l&&l.instanceIndex!==-1&&(l.instanceMode===16||l.instanceMode===17)&&l.instanceBuffer&&(l.instanceCount??0)>0&&l){if(!r.getAttribute(`aInstanceBatchId`)){let e=l.instanceBatchIds,t=e&&e.length===l.instanceCount?e.slice():new Float32Array(l.instanceCount).fill(-1);r.setAttribute(`aInstanceBatchId`,new Du(t,1));let n=new Float32Array(l.instanceCount);for(let e=0;e<n.length;e++)n[e]=e;r.setAttribute(`aInstanceIndex`,new Du(n,1))}let e=new Fu(r,u,l.instanceCount);e.instanceMatrix.setUsage(Ea);let t=new U,n=new W,i=l.instanceMode,a=new Float32Array(l.instanceBuffer.buffer,l.instanceBuffer.byteOffset,l.instanceCount*i);for(let r=0;r<l.instanceCount;r++){let o=r*i;if(t.set(a[o+0],a[o+1],a[o+2],a[o+3],a[o+4],a[o+5],a[o+6],a[o+7],a[o+8],a[o+9],a[o+10],a[o+11],0,0,0,1),e.setMatrixAt(r,t),i>=16){let t=a[o+12],i=a[o+13],s=a[o+14];Number.isFinite(t)&&Number.isFinite(i)&&Number.isFinite(s)&&(n.setRGB(t,i,s),e.setColorAt(r,n))}}e.instanceMatrix.needsUpdate=!0,e.instanceColor&&(e.instanceColor.needsUpdate=!0),e.frustumCulled=!1,h=e}else h=new dc(r,u);if(f&&!f.equals(p)&&f.decompose(h.position,h.quaternion,h.scale),h.userData.skeletonName=n.skeletonName,h.userData.geoRef=o,h.userData.tileRef=e,h.userData.primitiveType=n.primitiveType,n.batchedFrom!=null&&n.batchedFrom>1){h.userData.isBatched=!0,h.userData.batchedCount=n.batchedFrom;let t=new Map;for(let r of n.geoNames){let n=e.geoPackage[r];if(n?.pickInfo)for(let e of Object.values(n.pickInfo))typeof e.batchId==`number`&&e.batchId>=0&&t.set(e.batchId,n)}t.size>0&&(h.userData.geoByBatchId=t)}i.add(h),a.push(h),s.meshes++,n.primitiveType===4&&(s.triangles+=n.indexCount/3)}return i.children.length||s.skipped.push(`tile 无可用几何`),i.userData.textureKeys=o,{group:i,stats:s,objects:a,textureKeys:o}}var Sb,Cb,wb=n((()=>{rh(),wy(),Wy(),ub(),Sb=null,Cb=new W(1920611)}));function Tb(e){return e.slice(0,e.lastIndexOf(`/`)+1)}function Eb(e){if(!e)return e;try{let t=typeof document<`u`?document.baseURI:void 0;return t?new URL(e,t).href:new URL(e).href}catch{return e}}function Db(e,t){if(!t)return null;try{return Ob(new URL(t,e).href)}catch{return Ob(`${Tb(e)}${t}`)}}function Ob(e){if(!/[+ ]/.test(e))return e;let t=e.indexOf(`#`),n=t<0?``:e.slice(t),r=t<0?e:e.slice(0,t),i=r.indexOf(`?`),a=i<0?r:r.slice(0,i),o=i<0?``:r.slice(i);return`${a.replace(/\+/g,`%2B`).replace(/ /g,`%20`)}${o}${n}`}var kb=110540,Ab=111320;function jb(e){if(!e||typeof e!=`object`)return null;let t=e;if(![t.left,t.bottom,t.right,t.top].every(e=>typeof e==`number`&&Number.isFinite(e)))return null;let{left:n,bottom:r,right:i,top:a}=t;return Math.abs(n)>180||Math.abs(i)>180||Math.abs(a)>90||Math.abs(r)>90||i===n&&a===r?null:{left:n,bottom:r,right:i,top:a}}function Mb(e,t){if(!t)return null;let n=t.replace(/\.(osgb|s3mb|s3m)$/i,`.s3m`),r=e.split(`/`),i=r.pop()??``,a=r.pop()??``,o=r.lastIndexOf(`datas`);return!i||!a||o<1?Db(Tb(e),n):Ob(`${r[r.length-1]===`path`&&r[r.length-2]===`data`?`${r.join(`/`)}/${a}`:`${r.join(`/`)}/data/path/${a}`}/${n}`)}function Nb(e){let t=e.trim();if(t.startsWith(`<`)){let e=e=>{let n=RegExp(`<(?:[a-zA-Z0-9_-]+:)?${e}[^>]*>([^<]+)<\\/`,`i`).exec(t);return n?n[1].trim():null},n=t=>parseFloat(e(t)??``),r=n(`X`)||0,i=n(`Y`)||0,a=n(`Z`)||0,o=n(`Left`),s=n(`Right`),c=n(`Top`),l=n(`Bottom`);if(![o,s,c,l].every(Number.isFinite)){let e=n(`MinX`),t=n(`MaxX`),a=n(`MinY`),u=n(`MaxY`);if([e,t,a,u].every(Number.isFinite)&&r&&i){let n=Ab*Math.cos(i*Math.PI/180);n>1e-6&&(o=r+e/n,s=r+t/n,l=i+a/kb,c=i+u/kb)}}let u=t.matchAll(/<(?:[a-zA-Z0-9_-]+:)?FileName[^>]*>([^<]+)<\//gi),d=[];for(let e of u)d.push({url:e[1].trim()});let f=n(`MinHeight`),p=n(`MaxHeight`);return{fileType:e(`FileType`)??void 0,position:{x:r,y:i,z:a,units:`Degree`},geoBounds:{left:o,right:s,top:c,bottom:l},heightRange:Number.isFinite(f)||Number.isFinite(p)?{min:f,max:p}:void 0,rootTiles:d,tiles:d}}return JSON.parse(t)}var Pb=class{get heightRange(){let e=this.config?.heightRange;return e&&typeof e.min==`number`&&typeof e.max==`number`?{min:e.min,max:e.max}:null}constructor(e){X(this,`configUrl`,void 0),X(this,`config`,null),X(this,`_blockTileIndex`,null),X(this,`anchor`,{lon:0,lat:0,height:0}),X(this,`rootUrls`,[]),X(this,`nodes`,new Map),X(this,`failed`,new Set),X(this,`textureCache`,new Map),X(this,`maxImageCache`,void 0),X(this,`_textureRefs`,new Map),X(this,`_tileTextureKeys`,new Map),X(this,`pending`,new Set),X(this,`atlasLod`,void 0),X(this,`atlasLodCache`,new Map),X(this,`_groupCache`,new Map),X(this,`externalAtlasCache`,new Map),X(this,`leafRequestCache`,new Map),X(this,`_leafPending`,new Map),X(this,`atlasUpgraded`,new Set),X(this,`atlasUpgradeSkipped`,new Map),X(this,`stats`,{tiles:0,loading:0,failed:0,meshes:0,vertices:0,triangles:0,datasets:1}),X(this,`maxConcurrent`,void 0),X(this,`maxTiles`,void 0),X(this,`lodRangeScale`,void 0),X(this,`_onTile`,void 0),X(this,`_onTileRemoved`,void 0),X(this,`_onError`,void 0),X(this,`_onProgress`,void 0),X(this,`_maxRetries`,void 0),X(this,`_retryCount`,new Map),X(this,`_retryAt`,new Map),X(this,`_parentOf`,new Map),X(this,`_frame`,0),X(this,`_lodDbgOnce`,!1),X(this,`_permanentReported`,!1),X(this,`hardCap`,96),X(this,`isS3MV1`,!1),X(this,`_buildTile`,void 0),X(this,`_uniforms`,void 0),X(this,`_workerClient`,void 0),X(this,`_useWorker`,void 0),X(this,`_queue`,[]),X(this,`_active`,0),this.configUrl=e.configUrl,this.lodRangeScale=e.lodRangeScale??3,this._onTile=e.onTile??(()=>{}),this._onTileRemoved=e.onTileRemoved??(()=>{}),this._onError=e.onError??(e=>console.warn(e)),this._onProgress=e.onProgress??(()=>{}),this._maxRetries=Math.max(0,e.maxRetries??2),this._buildTile=e.buildTile??null,this._uniforms=e.uniforms??null,this._useWorker=e.useWorker!==!1,this.maxConcurrent=e.maxConcurrent??4,this.maxTiles=e.maxTiles??64,this.maxImageCache=e.maxImageCache??128,this.hardCap=this.maxTiles+Math.max(8,Math.ceil(this.maxTiles*.5)),this.atlasLod=e.atlasLod!==!1}async init(){this.configUrl=Eb(this.configUrl);let e=await fetch(this.configUrl);if(!e.ok)throw Error(`配置读取失败 ${e.status} ${this.configUrl}`);let t=Nb(await e.text());this.config=t,this.anchor=this._resolveAnchor(t);let n=t.rootTiles??t.tiles??[];if(!n.length)throw Error(`配置中缺少 root tile`);this.rootUrls.length=0;for(let e of n){let t=Db(this.configUrl,e.url);t&&this.rootUrls.push(t)}if(this.isS3MV1=/OSGB/i.test(String(t.fileType??``))||/OSGB/i.test(String(t.dataType??``))||this.rootUrls.length>0&&this.rootUrls.every(e=>/\.s3m($|\?)/i.test(e)),this.rootUrls.every(e=>/\.s3mblock($|\?)/i.test(e))){this._blockTileIndex=new Set(this.rootUrls);for(let e of n){let t=Db(this.configUrl,e.url);t&&this._blockTileIndex.add(t)}}await this._load(this.rootUrls[0]);for(let e of this.rootUrls.slice(1))this._enqueue(e);return this}_enqueue(e,t){if(!e||(t&&this._parentOf.set(e,t),this.nodes.has(e)||this.pending.has(e)||this.failed.has(e))||this._queue.includes(e))return;let n=this._retryAt.get(e);n!==void 0&&performance.now()<n||this.nodes.size+this.pending.size+this._queue.length>=this.hardCap||(this._queue.push(e),this._pump())}registerTileTextures(e,t){this._tileTextureKeys.set(e,t);let n=this.nodes.get(e);n&&(n.textureKeys=t);for(let e of t)this._textureRefs.set(e,(this._textureRefs.get(e)??0)+1)}_evictTileNode(e){this.nodes.delete(e.url),e.group?.parent?.remove(e.group),this._onTileRemoved(e),this._parentOf.delete(e.url),this.stats.tiles=Math.max(0,this.stats.tiles-1),e.stats&&(this.stats.meshes=Math.max(0,this.stats.meshes-(e.stats.meshes??0)),this.stats.vertices=Math.max(0,this.stats.vertices-(e.stats.vertices??0)),this.stats.triangles=Math.max(0,this.stats.triangles-(e.stats.triangles??0)));let t=e.textureKeys??this._tileTextureKeys.get(e.url)??e.group?.userData?.textureKeys;if(this._tileTextureKeys.delete(e.url),t?.length)for(let e of t){let t=(this._textureRefs.get(e)??1)-1;if(t<=0){this._textureRefs.delete(e);let t=this.textureCache.get(e);t&&(t.dispose?.(),this.textureCache.delete(e))}else this._textureRefs.set(e,t)}}putExternalAtlas(e,t){if(this.externalAtlasCache.size>=this.maxImageCache&&!this.externalAtlasCache.has(e)){let e=this.externalAtlasCache.keys().next().value;e!==void 0&&this.externalAtlasCache.delete(e)}Map.prototype.set.call(this.externalAtlasCache,e,t)}getExternalAtlas(e){return this.externalAtlasCache.get(e)}putLeafRecords(e,t){if(this.leafRequestCache.size>=this.maxImageCache&&!this.leafRequestCache.has(e)){let e=this.leafRequestCache.keys().next().value;e!==void 0&&this.leafRequestCache.delete(e)}Map.prototype.set.call(this.leafRequestCache,e,t)}getLeafRecords(e){return this.leafRequestCache.get(e)}_evictOne(e=!1){let t=this._pickVictim(!0,e)??this._pickVictim(!1,e);if(!t)return!1;let n=t.parentUrl??this._parentOf.get(t.url),r=t.childUrls??(t.childUrl?[t.childUrl]:[]);r.some(e=>e!==t.url&&this.nodes.has(e)),this._evictTileNode(t);let i=r.filter(e=>e!==t.url&&this.nodes.has(e));if(i.length){for(let e of i){let t=this.nodes.get(e);t&&(t.parentUrl=n??void 0,n?this._parentOf.set(e,n):this._parentOf.delete(e))}if(n){let e=this.nodes.get(n);if(e){let n=new Set(e.childUrls??[]);e.childUrl&&n.add(e.childUrl),n.delete(t.url);for(let e of i)n.add(e);e.childUrls=[...n],e.childUrl=e.childUrls[0]??null}}}return!0}_trimBudget(){let e=!1,t=0;for(;this.nodes.size+this.pending.size>this.maxTiles&&t++<=this.maxTiles+8&&this._evictOne(this.nodes.size+this.pending.size>this.hardCap);)e=!0;return e}_pickVictim(e,t=!1){let n=null;for(let r of this.nodes.values()){let i=r.childUrls??(r.childUrl?[r.childUrl]:[]);if((i.length>0&&i.some(e=>e!==r.url&&this.nodes.has(e)))!==e||!t&&r.group.visible&&!i.some(e=>{let t=this.nodes.get(e);return!!t&&t.group.visible}))continue;if(!n){n=r;continue}let a=r.lastSeen??-1,o=n.lastSeen??-1;(a<o||a===o&&(r.distance??0)>(n.distance??0))&&(n=r)}return n}retryFailed(){let e=this.failed.size;return this.failed.clear(),this._retryCount.clear(),this._retryAt.clear(),e}_pump(){for(;this._active<this.maxConcurrent&&this._queue.length;){let e=this._queue.shift();this._active++,this._load(e).finally(()=>{this._active--,this._pump()})}}_resolveAnchor(e){let t=e.position,n=t?.point3D??t,r=!!n&&Number.isFinite(n.x)&&Number.isFinite(n.y),i=jb(e.geoBounds),a=i?(i.left+i.right)/2:void 0,o=i?(i.bottom+i.top)/2:void 0,s=n?.z??0;if(!r)return{lon:a??0,lat:o??0,height:0};if((t?.units??t?.unit??`Degree`)!==`Degree`)return{lon:n.x,lat:n.y,height:s};let c=a===void 0?0:Math.abs(n.x-a),l=o===void 0?0:Math.abs(n.y-o);return c>.5||l>.5?(console.warn(`[s3m] position 与 geoBounds 不一致,改用 geoBounds 中心作为锚点`,{position:n,geoBounds:i}),{lon:a,lat:o,height:s}):{lon:n.x,lat:n.y,height:s}}_pickLod(e){let t=e.groupNode?.pageLods??[];return t.length?t.find(e=>e.childTile&&e.rangeValue>0)??t[0]:null}async _builder(){if(!this._buildTile){let e=await Promise.resolve().then(()=>(wb(),db));this._buildTile=e.buildTileObjects}return this._buildTile}async _parseClassicTile(e){if(this._useWorker&&this._workerClient===void 0&&(this._workerClient=h_()),this._workerClient)try{return await this._workerClient.parseTile(e,!0)}catch(e){if(e instanceof f_)this._workerClient=null;else throw e}return{tile:await qg(e)}}_rememberGroups(e,t){for(this._groupCache.delete(e),this._groupCache.set(e,t);this._groupCache.size>24;){let e=this._groupCache.keys().next().value;if(e===void 0)break;this._groupCache.delete(e)}}async _fillExternalAtlases(e,t){let n=e,r=n.texturePackage;if(!r)return;let i=I_(n),a=!1,o=new Map,s=new Map,c=[];for(let[e,t]of Object.entries(r)){let n=K_(t.requestNames);if(n.names.length){o.set(e,{tex:t,plan:n});for(let[e,t]of n.packGroups){let n=t.filter(e=>!this.leafRequestCache.has(e));if(!n.length)continue;let r=s.get(e)??[];for(let e of n)r.includes(e)||r.push(e);s.set(e,r)}for(let e of n.plain)!this.leafRequestCache.has(e)&&!c.includes(e)&&c.push(e)}}let l=[];for(let[e,n]of s){let r=null,i=()=>r??(r=this._fetchLeafPack(t,e,n));for(let e of n)l.push(this._ensureLeafFetch(e,i))}for(let e of c)l.push(this._ensureLeafFetch(e,()=>this._fetchLeafFile(t,e)));l.length&&await Promise.all(l);for(let[e,{tex:t,plan:n}]of o){let r=new Map;for(let e of n.names){let t=this.leafRequestCache.get(e);if(t)for(let n of t)r.set(n.id,{source:e,image:n})}let i=q_(t,r);if(i){let n=t;n.composed=!0,n.leafSig=i.sig,n.flipY=!1,t.data=i.data,t.compressType=0,t.pixelFormat=28,t.width=i.width,t.height=i.height,t.rectScale=1,this.atlasUpgraded.add(e),a=!0,(i.missing.length||i.mismatched.length)&&console.warn(`[s3m] leaf 图集部分精灵异常:`,e,{missing:i.missing,mismatched:i.mismatched});continue}let o=!!t.data,s=n=>{if(!o){let r=t.width/t.height,i=n.width/n.height;return Math.abs(i/r-1)<=.02||(this.atlasUpgradeSkipped.set(e,`aspect(no-baseline) ${t.width}x${t.height} vs ${n.width}x${n.height}`),!1)}let r=ov(t,n);return r.ok?!0:(this.atlasUpgradeSkipped.set(e,`${r.reason} aspectΔ=${(r.aspectDelta*100).toFixed(1)}% scale=${r.scale} err=${Number.isNaN(r.meanAbsError)?`n/a`:r.meanAbsError.toFixed(1)}`),!1)},c=n=>{let r=t;r.composed=!1,r.leafSig=void 0,r.flipY=!0,t.data=n.data,t.compressType=n.compressType,t.pixelFormat=n.pixelFormat,t.rectScale=t.width>0?n.width/t.width:1,t.width=n.width||t.width,t.height=n.height||t.height,this.atlasUpgraded.add(e),a=!0},l=this.externalAtlasCache.get(e);if(l!==null){if(l===void 0){l=null;for(let e of n.plain){let t=this.leafRequestCache.get(e);if(t?.length){l=t[0];break}}this.putExternalAtlas(e,l)}l?s(l)&&c(l):this.atlasUpgradeSkipped.has(e)||this.atlasUpgradeSkipped.set(e,`no usable external image(请求失败或只拿到子精灵)`)}}(i||a)&&L_(n)}_ensureLeafFetch(e,t){if(this.leafRequestCache.has(e))return Promise.resolve();let n=this._leafPending.get(e);if(n)return n;let r=t().finally(()=>this._leafPending.delete(e));return this._leafPending.set(e,r),r}async _fetchLeafPack(e,t,n){let r=Db(Tb(e),`${n[0]}.texblock?extratiles=${n.join(`;`)}`);try{if(!r)throw Error(`无法拼出 URL`);let e=await fetch(r);if(!e.ok)throw Error(`HTTP ${e.status}`);let t=await B_(await e.arrayBuffer());if(t.length!==n.length)throw Error(`pack 段数 ${t.length} ≠ 请求名 ${n.length}`);n.forEach((e,n)=>this.putLeafRecords(e,t[n]))}catch(e){console.warn(`[s3m] leaf pack 请求失败:`,r,e);for(let e of n)this.leafRequestCache.has(e)||this.putLeafRecords(e,null)}}async _fetchLeafFile(e,t){let n=Db(Tb(e),`${t}.texblock`);try{if(!n)throw Error(`无法拼出 URL`);let e=await fetch(n);if(!e.ok)throw Error(`HTTP ${e.status}`);let r=(await B_(await e.arrayBuffer())).flat();this.putLeafRecords(t,r)}catch(e){console.warn(`[s3m] leaf texblock 请求失败:`,n,e),this.leafRequestCache.has(t)||this.putLeafRecords(t,null)}}async _upgradeAtlasLod(e,t){}async _load(e){if(!(this.nodes.has(e)||this.pending.has(e)||this.failed.has(e))){this.pending.add(e),this.stats.loading++;try{let t=e.indexOf(`#`),n=t>=0?e.slice(0,t):e,r=t>=0&&Number(e.slice(t+1))||0,i=/\.s3mblock($|\?)/i.test(n),a,o,s=[],c=this._groupCache.get(n);if(c)s=c.names,a=c.tiles[r]??c.tiles[0];else{let e=await fetch(n);if(!e.ok)throw Error(`HTTP ${e.status} 加载瓦片失败: ${n}`);if((e.headers.get(`content-type`)||``).includes(`text/html`))throw Error(`瓦片请求返回了 HTML 页面(通常为 404/500 服务端拦截): ${n}`);let t=await e.arrayBuffer();if(i){let e=await J_(t);this._rememberGroups(n,e),s=e.names,a=e.tiles[r]??e.tiles[0]}else{let e=await this._parseClassicTile(t);a=e.tile,o=e.geometry}}i&&(await this._fillExternalAtlases(a,n),await this._upgradeAtlasLod(a,n));let l=await(await this._builder())(a,{textureCache:this.textureCache,uniforms:this._uniforms,assembled:o}),{group:u,stats:d}=l,f=l.textureKeys??u.userData?.textureKeys??Object.keys(a.textures??{});this.registerTileTextures(e,f);let p=this._pickLod(a),m=[];for(let t of a.groupNode?.pageLods??[]){let r=String(t.childTile??``).replace(/\.s3mblock$/i,``),a=i&&r?s.indexOf(r):-1,o=a>=0?`${n}#${a}`:this.isS3MV1?Mb(e,t.childTile):Db(Tb(e),t.childTile);o&&o!==e&&!m.includes(o)&&m.push(o)}let h={url:e,tile:a,group:u,sphere:p?.boundingSphere??null,rangeValue:p?.rangeValue??0,rangeMode:p?.rangeMode??1,childUrl:m[0]??(this.isS3MV1?Mb(e,p?.childTile):Db(Tb(e),p?.childTile)),childUrls:m,parentUrl:this._parentOf.get(e),state:`ready`,stats:{meshes:d.meshes??0,vertices:d.vertices??0,triangles:d.triangles??0}};this.nodes.set(e,h),this.stats.tiles++,this.stats.meshes+=d.meshes??0,this.stats.vertices+=d.vertices??0,this.stats.triangles+=d.triangles??0,this._onTile(h)}catch(t){let n=t?.permanent===!0,r=(this._retryCount.get(e)??0)+1;if(this._retryCount.set(e,r),!n&&r<=this._maxRetries)this._retryAt.set(e,performance.now()+800*r);else{this.stats.failed++,this.failed.add(e),this._retryAt.delete(e);let t=this._parentOf.get(e),n=t?this.nodes.get(t):void 0;n?.childUrls&&(n.childUrls=n.childUrls.filter(t=>t!==e),n.childUrl=n.childUrls[0]??null)}n?this._permanentReported||(this._permanentReported=!0,this._onError(t)):this._onError(t)}finally{this.pending.delete(e),this.stats.loading--,this._onProgress(this.stats)}}}update(e,t,n){this._frame++;let r=!1;for(let t of this.nodes.values()){var i;if(!t.sphere){t.needRefine=!1;continue}let a=t.sphere.center,o=a.x-e[0],s=a.y-e[1],c=a.z-e[2],l=Math.sqrt(o*o+s*s+c*c)||1e-6;t.distance=l;let u,d=t.rangeMode===0;u=d?l:n*.5/Math.tan(Math.PI/8)*(t.sphere.radius/l)*2;let f=this.lodRangeScale>0?this.lodRangeScale:1,p=t.rangeValue*f;(d?l<p*2:u>p*.5)&&(t.lastSeen=this._frame);let m=t.childUrls??(t.childUrl?[t.childUrl]:[]),h=m.length>0&&(d?u<p:u>p);t.needRefine=h;let g=(i=globalThis).__S3M_LOD_SEEN??(i.__S3M_LOD_SEEN=new Set);if(globalThis.__S3M_LOD_DEBUG&&!g.has(t.url)&&g.size<260&&(g.add(t.url),console.log(`[LOD]`,JSON.stringify({url:t.url.split(`/`).pop(),mode:t.rangeMode,rangeValue:t.rangeValue,radius:t.sphere.radius,dist:+l.toFixed(1),metric:+u.toFixed(1),threshold:+p.toFixed(1),needRefine:h,childUrls:m.map(e=>e.split(`/`).pop()),parent:t.parentUrl?t.parentUrl.split(`/`).pop():null}))),h)for(let e of m)this.failed.has(e)||this.nodes.has(e)||this.pending.has(e)||(this._enqueue(e,t.url),r=!0)}let a=new Set,o=new Set(this.rootUrls);for(let[e,t]of this.nodes){let n=t.parentUrl??this._parentOf.get(e);n&&this.nodes.has(n)||o.add(e)}for(let e of o)this._updateNodeVisibility(e,!0,a)&&(r=!0);for(let[e,t]of this.nodes)a.has(e)||t.group.visible&&(t.group.visible=!1,r=!0);this._trimBudget()&&(r=!0);let s=!1;for(let e of this.nodes.values())if(e.group.visible){s=!0;break}if(!s&&this.nodes.size>0)for(let e of this.nodes.values())!(e.childUrls??(e.childUrl?[e.childUrl]:[])).some(t=>{let n=this.nodes.get(t);return!!n&&n!==e&&n.group.visible})&&!e.group.visible&&(e.group.visible=!0,r=!0);return r}_updateNodeVisibility(e,t,n){let r=this.nodes.get(e);if(!r||n.has(e))return!1;n.add(e);let i=!1,a=r.childUrls??(r.childUrl?[r.childUrl]:[]);if(!t){r.group.visible&&(r.group.visible=!1,i=!0);for(let e of a)this._updateNodeVisibility(e,!1,n)&&(i=!0);return i}let o=a.length>0,s=a.filter(e=>this.nodes.has(e)),c=a.every(e=>this.nodes.has(e)||this.failed.has(e));if(r.needRefine&&o&&s.length>0&&c){r.group.visible&&(r.group.visible=!1,i=!0);for(let e of a)this._updateNodeVisibility(e,!0,n)&&(i=!0)}else{r.group.visible||(r.group.visible=!0,i=!0);for(let e of a)this._updateNodeVisibility(e,!1,n)&&(i=!0)}return i}dispose(){this._workerClient?.dispose();for(let e of this.nodes.values())e.group.traverse(e=>{let t=e;t.geometry?.dispose?.(),Array.isArray(t.material)?t.material.forEach(e=>e.dispose?.()):t.material?.dispose?.()});for(let e of this.textureCache.values())e.dispose?.();this.textureCache.clear(),this.nodes.clear()}};rh(),Wy();var Fb=2;function Ib(e){return e===Oy.SOLID?`solid`:e===Oy.HEIGHT?`height`:`vertex`}var Lb=`
4205
4205
  uniform float uPointSize;
4206
4206
  varying float vWorldZ;
4207
4207
  void main() {
@@ -4210,7 +4210,7 @@ void main() {
4210
4210
  gl_Position = projectionMatrix * viewMatrix * world;
4211
4211
  gl_PointSize = uPointSize;
4212
4212
  }
4213
- `,xb=`
4213
+ `,Rb=`
4214
4214
  uniform vec3 uColorA;
4215
4215
  uniform vec3 uColorB;
4216
4216
  uniform float uHeightMin;
@@ -4221,13 +4221,13 @@ void main() {
4221
4221
  float h = clamp( ( vWorldZ - uHeightMin ) / max( uHeightMax - uHeightMin, 0.001 ), 0.0, 1.0 );
4222
4222
  gl_FragColor = vec4( mix( uColorA, uColorB, h ), uOpacity );
4223
4223
  }
4224
- `,Sb=`
4224
+ `,zb=`
4225
4225
  uniform vec3 uSelColor;
4226
4226
  uniform float uOpacity;
4227
4227
  void main() {
4228
4228
  gl_FragColor = vec4( uSelColor, uOpacity );
4229
4229
  }
4230
- `;function Cb(e,t,n){let r;return r=e===`height`?new gc({uniforms:{uColorA:n.uColorA,uColorB:n.uColorB,uHeightMin:n.uHeightMin,uHeightMax:n.uHeightMax,uPointSize:{value:vb},uOpacity:{value:t.opacity??1}},vertexShader:bb,fragmentShader:xb,transparent:(t.opacity??1)<.999,depthWrite:(t.opacity??1)>=.999}):e===`selected`?new gc({uniforms:{uSelColor:n.uSelColor,uPointSize:{value:vb},uOpacity:{value:t.opacity??1}},vertexShader:bb,fragmentShader:Sb,transparent:(t.opacity??1)<.999,depthWrite:(t.opacity??1)>=.999}):e===`solid`?new dd({size:vb,sizeAttenuation:!1,color:new W(t.colorA),transparent:(t.opacity??1)<.999,opacity:t.opacity??1,depthWrite:(t.opacity??1)>=.999}):new dd({size:vb,sizeAttenuation:!1,vertexColors:!0,transparent:(t.opacity??1)<.999,opacity:t.opacity??1,depthWrite:(t.opacity??1)>=.999}),r.userData.pcOwned=!0,r}function wb(e,t,n,r=!1){let i=e.userData,a=r?`selected`:yb(t.mode);if(i.pcKind!==a){let r=e.material;e.material=Cb(a,t,n),r&&r.userData?.pcOwned&&r.dispose(),i.pcKind=a,i.pcTransparent=void 0}else a===`solid`&&e.material.color?.set(t.colorA);let o=Math.min(1,Math.max(.05,t.opacity??1)),s=o<.999,c=t.depthWrite!==!1,l=e.material;l.transparent=s,l.opacity=o,l.depthWrite=!s||c,l.uniforms?.uOpacity&&(l.uniforms.uOpacity.value=o),i.pcTransparent!==s&&(i.pcTransparent=s,l.needsUpdate=!0)}function Tb(e){let t=Array.isArray(e)?e[0]:e;return!!t&&t.userData?.pcOwned===!0}rh();var Eb=`
4230
+ `;function Bb(e,t,n){let r;return r=e===`height`?new gc({uniforms:{uColorA:n.uColorA,uColorB:n.uColorB,uHeightMin:n.uHeightMin,uHeightMax:n.uHeightMax,uPointSize:{value:Fb},uOpacity:{value:t.opacity??1}},vertexShader:Lb,fragmentShader:Rb,transparent:(t.opacity??1)<.999,depthWrite:(t.opacity??1)>=.999}):e===`selected`?new gc({uniforms:{uSelColor:n.uSelColor,uPointSize:{value:Fb},uOpacity:{value:t.opacity??1}},vertexShader:Lb,fragmentShader:zb,transparent:(t.opacity??1)<.999,depthWrite:(t.opacity??1)>=.999}):e===`solid`?new dd({size:Fb,sizeAttenuation:!1,color:new W(t.colorA),transparent:(t.opacity??1)<.999,opacity:t.opacity??1,depthWrite:(t.opacity??1)>=.999}):new dd({size:Fb,sizeAttenuation:!1,vertexColors:!0,transparent:(t.opacity??1)<.999,opacity:t.opacity??1,depthWrite:(t.opacity??1)>=.999}),r.userData.pcOwned=!0,r}function Vb(e,t,n,r=!1){let i=e.userData,a=r?`selected`:Ib(t.mode);if(i.pcKind!==a){let r=e.material;e.material=Bb(a,t,n),r&&r.userData?.pcOwned&&r.dispose(),i.pcKind=a,i.pcTransparent=void 0}else a===`solid`&&e.material.color?.set(t.colorA);let o=Math.min(1,Math.max(.05,t.opacity??1)),s=o<.999,c=t.depthWrite!==!1,l=e.material;l.transparent=s,l.opacity=o,l.depthWrite=!s||c,l.uniforms?.uOpacity&&(l.uniforms.uOpacity.value=o),i.pcTransparent!==s&&(i.pcTransparent=s,l.needsUpdate=!0)}function Hb(e){let t=Array.isArray(e)?e[0]:e;return!!t&&t.userData?.pcOwned===!0}rh();var Ub=`
4231
4231
  attribute float aBatchId;
4232
4232
  #ifdef USE_INSTANCING
4233
4233
  // 实例化:单体粒度在实例上,顶点属性里没有可用的 batchId
@@ -4283,7 +4283,7 @@ void main() {
4283
4283
  // 跟显示尺寸(2px)不匹配,点云会很难点中。对 Mesh 图元这行被忽略。
4284
4284
  gl_PointSize = 2.0;
4285
4285
  }
4286
- `,Db=`
4286
+ `,Wb=`
4287
4287
  uniform float uObjectId;
4288
4288
  varying float vBatch;
4289
4289
  void main() {
@@ -4296,7 +4296,7 @@ void main() {
4296
4296
  floor( b / 256.0 ) / 255.0
4297
4297
  );
4298
4298
  }
4299
- `,Ob=(()=>{let e=new Cu(new Float32Array([-1,-1,-1,0,0,0,0,0]),1,2,ci,ei);return e.minFilter=Rr,e.magFilter=Rr,e.needsUpdate=!0,e})();function kb(e){return new gc({uniforms:{uObjectId:{value:e},uBatchTex:{value:Ob},uBatchTexWidth:{value:1},uBatchTexActive:{value:0},uSelBatch:{value:-1},uSelWhole:{value:0},uSelElevation:{value:0}},vertexShader:Eb,fragmentShader:Db,side:2,depthTest:!0,depthWrite:!0,toneMapped:!1})}function Ab(e){return e.isPoints===!0}var jb=class{constructor(e,t={}){X(this,`renderer`,void 0),X(this,`size`,void 0),X(this,`target`,null),X(this,`buf`,new Uint8Array(4)),this.renderer=e,this.size=Math.max(1,Math.floor(t.size??1))}_ensureTarget(e){return this.target&&this.target.width===e&&this.target.height===e||(this.target?.dispose(),this.target=new oo(e,e,{minFilter:Rr,magFilter:Rr,format:ci,type:Jr,depthBuffer:!0,stencilBuffer:!1}),this.target.texture.colorSpace=pa),this.target}pick(e,t,n,r){let i=this.renderer,a=i.domElement,o=a.width,s=a.height;if(!o||!s)return null;let c=Math.floor(n/a.clientWidth*o),l=Math.floor(r/a.clientHeight*s);if(c<0||l<0||c>=o||l>=s)return null;let u=this._ensureTarget(this.size),d=s-1-l,f=Math.floor(this.size/2),p=Math.floor(this.size/2);u.viewport.set(f-c,p-d,o,s);let m=i.getRenderTarget(),h=i.getViewport(new io),g=i.toneMapping,_=i.outputColorSpace,v=i.autoClear,y=i.getClearColor(new W),b=i.getClearAlpha(),x=[],S=new Set;e.traverseVisible(e=>{let t=e;if(!t.isMesh&&!Ab(t))return;let n=t.userData;if(n.pickId===void 0)return;n.pickMaterial||(n.pickMaterial=kb(n.pickId)),t.isInstancedMesh&&S.add(n.pickId);let r=t.material,i=n.pickMaterial,a=Array.isArray(r)?r[0]:r,o=a?.userData?.uBatchTex;o?(i.uniforms.uBatchTex.value=o.value,i.uniforms.uBatchTexWidth.value=a?.userData?.uBatchTexWidth?.value??1,i.uniforms.uBatchTexActive.value=a?.userData?.uBatchTexActive?.value??0):(i.uniforms.uBatchTex.value=Ob,i.uniforms.uBatchTexWidth.value=1,i.uniforms.uBatchTexActive.value=0),i.uniforms.uSelBatch.value=a?.userData?.uSelBatch?.value??-1,i.uniforms.uSelWhole.value=a?.userData?.uSelWhole?.value??0,i.uniforms.uSelElevation.value=a?.uniforms?.uSelElevation?.value??0,x.push([t,r]),t.material=i});let C=[];e.traverseVisible(e=>{let t=e;(t.isMesh||Ab(t))&&t.userData.pickId===void 0&&(C.push(t),t.visible=!1)});let w=null;try{i.resetState(),i.setRenderTarget(u),i.toneMapping=0,i.outputColorSpace=pa,i.autoClear=!0,i.setClearColor(0,0),i.clear(),i.render(e,t),i.readRenderTargetPixels(u,f,p,1,1,this.buf);let n=this.buf[0],r=this.buf[1],a=this.buf[2],o=this.buf[3],s=n+r*256-1,c=a+o*256-1;s>=0&&(w=S.has(s)?{objectId:s,batchId:-1,instanceIndex:Math.max(0,c)}:{objectId:s,batchId:c})}finally{for(let[e,t]of x)e.material=t;for(let e of C)e.visible=!0;i.setRenderTarget(m),i.setViewport(h),i.toneMapping=g,i.outputColorSpace=_,i.autoClear=v,i.setClearColor(y,b),i.resetState()}return w}dispose(){this.target?.dispose(),this.target=null}};rh();function Mb(){return{uResolution:{value:new B(1,1)},uDpr:{value:1}}}var Nb=`
4299
+ `,Gb=(()=>{let e=new Cu(new Float32Array([-1,-1,-1,0,0,0,0,0]),1,2,ci,ei);return e.minFilter=Rr,e.magFilter=Rr,e.needsUpdate=!0,e})();function Kb(e){return new gc({uniforms:{uObjectId:{value:e},uBatchTex:{value:Gb},uBatchTexWidth:{value:1},uBatchTexActive:{value:0},uSelBatch:{value:-1},uSelWhole:{value:0},uSelElevation:{value:0}},vertexShader:Ub,fragmentShader:Wb,side:2,depthTest:!0,depthWrite:!0,toneMapped:!1})}function qb(e){return e.isPoints===!0}var Jb=class{constructor(e,t={}){X(this,`renderer`,void 0),X(this,`size`,void 0),X(this,`target`,null),X(this,`buf`,new Uint8Array(4)),this.renderer=e,this.size=Math.max(1,Math.floor(t.size??1))}_ensureTarget(e){return this.target&&this.target.width===e&&this.target.height===e||(this.target?.dispose(),this.target=new oo(e,e,{minFilter:Rr,magFilter:Rr,format:ci,type:Jr,depthBuffer:!0,stencilBuffer:!1}),this.target.texture.colorSpace=pa),this.target}pick(e,t,n,r){let i=this.renderer,a=i.domElement,o=a.width,s=a.height;if(!o||!s)return null;let c=Math.floor(n/a.clientWidth*o),l=Math.floor(r/a.clientHeight*s);if(c<0||l<0||c>=o||l>=s)return null;let u=this._ensureTarget(this.size),d=s-1-l,f=Math.floor(this.size/2),p=Math.floor(this.size/2);u.viewport.set(f-c,p-d,o,s);let m=i.getRenderTarget(),h=i.getViewport(new io),g=i.toneMapping,_=i.outputColorSpace,v=i.autoClear,y=i.getClearColor(new W),b=i.getClearAlpha(),x=[],S=new Set;e.traverseVisible(e=>{let t=e;if(!t.isMesh&&!qb(t))return;let n=t.userData;if(n.pickId===void 0)return;n.pickMaterial||(n.pickMaterial=Kb(n.pickId)),t.isInstancedMesh&&S.add(n.pickId);let r=t.material,i=n.pickMaterial,a=Array.isArray(r)?r[0]:r,o=a?.userData?.uBatchTex;o?(i.uniforms.uBatchTex.value=o.value,i.uniforms.uBatchTexWidth.value=a?.userData?.uBatchTexWidth?.value??1,i.uniforms.uBatchTexActive.value=a?.userData?.uBatchTexActive?.value??0):(i.uniforms.uBatchTex.value=Gb,i.uniforms.uBatchTexWidth.value=1,i.uniforms.uBatchTexActive.value=0),i.uniforms.uSelBatch.value=a?.userData?.uSelBatch?.value??-1,i.uniforms.uSelWhole.value=a?.userData?.uSelWhole?.value??0,i.uniforms.uSelElevation.value=a?.uniforms?.uSelElevation?.value??0,x.push([t,r]),t.material=i});let C=[];e.traverseVisible(e=>{let t=e;(t.isMesh||qb(t))&&t.userData.pickId===void 0&&(C.push(t),t.visible=!1)});let w=null;try{i.resetState(),i.setRenderTarget(u),i.toneMapping=0,i.outputColorSpace=pa,i.autoClear=!0,i.setClearColor(0,0),i.clear(),i.render(e,t),i.readRenderTargetPixels(u,f,p,1,1,this.buf);let n=this.buf[0],r=this.buf[1],a=this.buf[2],o=this.buf[3],s=n+r*256-1,c=a+o*256-1;s>=0&&(w=S.has(s)?{objectId:s,batchId:-1,instanceIndex:Math.max(0,c)}:{objectId:s,batchId:c})}finally{for(let[e,t]of x)e.material=t;for(let e of C)e.visible=!0;i.setRenderTarget(m),i.setViewport(h),i.toneMapping=g,i.outputColorSpace=_,i.autoClear=v,i.setClearColor(y,b),i.resetState()}return w}dispose(){this.target?.dispose(),this.target=null}};rh();function Yb(){return{uResolution:{value:new B(1,1)},uDpr:{value:1}}}var Xb=`
4300
4300
  attribute vec3 aOther;
4301
4301
  attribute float aSide;
4302
4302
 
@@ -4334,7 +4334,7 @@ void main() {
4334
4334
 
4335
4335
  gl_Position = vec4( ndc * clipA.w, clipA.z, clipA.w );
4336
4336
  }
4337
- `,Pb=`
4337
+ `,Zb=`
4338
4338
  uniform vec3 uColor;
4339
4339
  uniform float uOpacity;
4340
4340
 
@@ -4342,9 +4342,9 @@ void main() {
4342
4342
  if ( uOpacity <= 0.003 ) discard;
4343
4343
  gl_FragColor = vec4( uColor, uOpacity );
4344
4344
  }
4345
- `;function Fb(e,t={}){let n=new gc({uniforms:{uResolution:e.uResolution,uDpr:e.uDpr,uColor:{value:new W(t.color??`#ffffff`)},uOpacity:{value:t.opacity??1},uWidth:{value:t.width??1.5},uElevation:{value:t.elevation??0},uTranslation:{value:new H(0,0,0)}},vertexShader:Nb,fragmentShader:Pb,transparent:!0,depthWrite:!1,side:2,polygonOffset:!0,polygonOffsetFactor:-2,polygonOffsetUnits:-2});return n.userData.isThickLine=!0,n}function Ib(e){let t=Math.floor(e.length/6),n=t*4,r=new Float32Array(n*3),i=new Float32Array(n*3),a=new Float32Array(n),o=n>65535?new Uint32Array(t*6):new Uint16Array(t*6);for(let n=0;n<t;n++){let t=n*6,r=e[t],i=e[t+1],a=e[t+2],c=e[t+3],l=e[t+4],u=e[t+5],d=n*4;s(d,r,i,a,c,l,u,-1),s(d+1,r,i,a,c,l,u,1),s(d+2,c,l,u,r,i,a,1),s(d+3,c,l,u,r,i,a,-1);let f=n*6;o[f]=d,o[f+1]=d+1,o[f+2]=d+2,o[f+3]=d,o[f+4]=d+2,o[f+5]=d+3}function s(e,t,n,o,s,c,l,u){let d=e*3;r[d]=t,r[d+1]=n,r[d+2]=o,i[d]=s,i[d+1]=c,i[d+2]=l,a[e]=u}let c=new q;return c.setAttribute(`position`,new G(r,3)),c.setAttribute(`aOther`,new G(i,3)),c.setAttribute(`aSide`,new G(a,1)),c.setIndex(new G(o,1)),c.computeBoundingSphere(),c}var Lb=6e4,Rb=100;function zb(e,t,n=40){let r=e.getAttribute(`position`);if(!r)return null;let i=r.count;if(i<3)return null;let a=new Float32Array(i),o=new Float32Array(i),s=new Float32Array(i);for(let e=0;e<i;e++)a[e]=r.getX(e),o[e]=r.getY(e),s[e]=r.getZ(e);let c=null,l=null;if(!e.index){let e=new Map;c=new Uint32Array(i),l=new Uint32Array(i);let t=0;for(let n=0;n<i;n++){let r=`${Math.round(a[n]*Rb)},${Math.round(o[n]*Rb)},${Math.round(s[n]*Rb)}`,i=e.get(r);i===void 0&&(i=t++,e.set(r,i),l[i]=n),c[n]=i}}let u=e=>c?c[e]:e,d=e=>l?l[e]:e,f=e.index,p=f?f.array:null,m=Math.floor(f?f.count/3:i/3);if(m<1)return null;let h=null;if(t&&t.length>0){h=new Uint8Array(i);for(let e of t){let t=Math.max(0,e.vertexOffset|0),n=Math.min(i,t+(e.vertexCount|0));n>t&&h.fill(1,t,n)}if(!h.includes(1))return null}let g=new Float32Array(m*3),_=new Map,v=i+1,y=[],b=Math.cos(n*Math.PI/180),x=-1,S=0,C=0,w=0,T=(e,t)=>{if(y.length>=Lb*6)return!1;let n=d(e),r=d(t);return y.push(a[n],o[n],s[n],a[r],o[r],s[r]),!0},E=(e,t)=>{if(e===t)return;let n=e<t?e:t,r=e<t?t:e,i=n*v+r,a=_.get(i);a===void 0?_.set(i,x):a<0||(S*g[a*3]+C*g[a*3+1]+w*g[a*3+2]<b?(T(n,r),_.set(i,-1)):_.set(i,-2))};for(x=0;x<m;x++){let e=p?p[x*3]:x*3,t=p?p[x*3+1]:x*3+1,n=p?p[x*3+2]:x*3+2;if(h&&!(h[e]&&h[t]&&h[n]))continue;let r=a[t]-a[e],i=o[t]-o[e],c=s[t]-s[e],l=a[n]-a[e],d=o[n]-o[e],f=s[n]-s[e];S=i*f-c*d,C=c*l-r*f,w=r*d-i*l;let m=Math.hypot(S,C,w);m<1e-12||(S/=m,C/=m,w/=m,g[x*3]=S,g[x*3+1]=C,g[x*3+2]=w,E(u(e),u(t)),E(u(t),u(n)),E(u(n),u(e)))}for(let[e,t]of _){if(t<0)continue;let n=Math.floor(e/v);if(!T(n,e-n*v))break}return y.length>0?new Float32Array(y):null}rh();function Bb(e,t){let n=e.getAttribute(`position`);if(!n||n.count===0)return e;let r=1/Math.max(t,1e-9),i=new Map,a=[],o=new Int32Array(n.count);for(let e=0;e<n.count;e++){let t=n.getX(e),s=n.getY(e),c=n.getZ(e),l=`${Math.round(t*r)},${Math.round(s*r)},${Math.round(c*r)}`,u=i.get(l);u===void 0&&(u=a.length/3,a.push(t,s,c),i.set(l,u)),o[e]=u}let s=e.getIndex(),c=s?s.count:n.count,l=new Uint32Array(c);for(let e=0;e<c;e++)l[e]=o[s?s.getX(e):e];let u=new q;return u.setAttribute(`position`,new K(a,3)),u.setIndex(new G(l,1)),u}rh();var Vb=class{constructor(){X(this,`datasets`,new Map),X(this,`sceneAnchor`,null),X(this,`totalMaxTiles`,0)}get(e){return this.datasets.get(e)}values(){return this.datasets.values()}registerDataset(e){let t=this.datasets.get(e.id);if(t)return t;let n=new Ml;n.name=`s3m-dataset:${e.id}`,n.visible=e.visible!==!1;let r={id:e.id,name:e.name??e.id,options:e,root:n,tileset:null,anchor:null,baseAlignOffset:0,userOffset:e.heightOffset??0,heightOffset:e.heightOffset??0,offset:[0,0,0],visible:e.visible!==!1,error:null};return this.datasets.set(e.id,r),this.rebalanceBudgets(),r}rebalanceBudgets(e){let t=e??this.totalMaxTiles;if(!t||t<=0)return;this.totalMaxTiles=t;let n=Array.from(this.datasets.values()).filter(e=>e.visible&&e.tileset),r=Math.max(1,n.length),i=Math.max(8,Math.floor(t/r));for(let e of this.datasets.values())e.tileset&&(e.visible?(e.tileset.maxTiles=i,e.tileset.hardCap=i+Math.max(4,Math.ceil(i*.5))):(e.tileset.maxTiles=Math.min(4,e.tileset.maxTiles),e.tileset.hardCap=Math.min(6,e.tileset.hardCap)))}computeAlignOffset(e,t){if(!t||t===`origin`||!e)return 0;let n=e.heightRange;if(!n)return 0;switch(t){case`top`:return-n.max;case`bottom`:return-n.min;case`center`:return-(n.min+n.max)/2;default:return 0}}async addDataset(e,t,n,r,i,a,o,s,c){let l=this.datasets.get(e.id);if(l)return l;let u=new Ml;u.name=`s3m-dataset:${e.id}`,u.visible=e.visible!==!1,t.add(u);let d={id:e.id,name:e.name??e.id,options:e,root:u,tileset:null,anchor:null,baseAlignOffset:0,userOffset:e.heightOffset??0,heightOffset:e.heightOffset??0,offset:[0,0,0],visible:e.visible!==!1,error:null};this.datasets.set(e.id,d);let f=new _b({configUrl:e.configUrl,maxTiles:e.maxTiles??o,maxConcurrent:s,lodRangeScale:e.lodRangeScale??i,buildTile:a??null,useWorker:e.useWorker,uniforms:r,onTile:e=>{c.onTile(e,d)},onTileRemoved:e=>{c.onTileRemoved(e,d)},onProgress:()=>{c.onStats(),c.triggerRepaint()},onError:e=>{d.error=e,c.onError(e),c.onStats()}});d.tileset=f,this.rebalanceBudgets();try{await f.init()}catch(e){return d.error=e,c.onError(e),d}return d.anchor=f.anchor,d.baseAlignOffset=this.computeAlignOffset(f,e.align),d.userOffset=e.heightOffset??0,d.heightOffset=d.baseAlignOffset+d.userOffset,this.layoutDataset(d,n),c.onReady(d),c.triggerRepaint(),d}removeDataset(e,t,n,r){let i=this.datasets.get(e);return i?(r(i),i.tileset?.dispose(),t.remove(i.root),this.datasets.delete(e),this.rebalanceBudgets(),this.datasets.size>0?this.recomputeAnchors(n):this.sceneAnchor=null,!0):!1}clearDatasets(e,t){for(let n of this.datasets.values())t(n),n.tileset?.dispose(),e.remove(n.root);this.datasets.clear(),this.sceneAnchor=null}layoutDataset(e,t){if(!e.anchor)return;this.sceneAnchor||(this.sceneAnchor=u_(t,e.anchor.lon,e.anchor.lat,e.anchor.height??0));let n=this.sceneAnchor.meterInMercator,r=u_(t,e.anchor.lon,e.anchor.lat,e.anchor.height??0);e.offset=[(r.x-this.sceneAnchor.x)/n,-(r.y-this.sceneAnchor.y)/n,(r.z-this.sceneAnchor.z)/n+(e.heightOffset??0)],e.root.position.set(e.offset[0],e.offset[1],e.offset[2]),e.root.updateMatrixWorld(!0)}recomputeAnchors(e){if(this.datasets.size!==0){this.sceneAnchor=null;for(let t of this.datasets.values())this.layoutDataset(t,e)}}getDatasetHeight(e){let t=e??this.datasets.keys().next().value;return t?this.datasets.get(t)?.userOffset??0:0}setDatasetHeight(e,t,n){let r=this.datasets.get(e);r&&(r.userOffset=t,r.heightOffset=r.baseAlignOffset+t,this.layoutDataset(r,n))}setDatasetAlign(e,t,n){let r=this.datasets.get(e);if(!r)return;let i=r.heightOffset-r.baseAlignOffset;r.baseAlignOffset=this.computeAlignOffset(r.tileset,t),r.userOffset=i,r.heightOffset=r.baseAlignOffset+i,r.options.align=t,this.layoutDataset(r,n)}setDatasetVisible(e,t){let n=this.datasets.get(e);n&&(n.visible=t,n.root.visible=t,this.rebalanceBudgets())}getBounds(){let e=1/0,t=1/0,n=-1/0,r=-1/0,i=!1;for(let a of this.datasets.values()){if(!a.visible||!a.tileset?.config)continue;let o=mb(a.tileset.config.geoBounds);o&&(e=Math.min(e,o.left),t=Math.min(t,o.bottom),n=Math.max(n,o.right),r=Math.max(r,o.top),i=!0)}return i?[[e,t],[n,r]]:null}};rh(),t_();function Hb(e){let t=Array.isArray(e.material)?e.material[0]:e.material;return t?.userData?.isStyled?t:null}function Ub(e,t){if(e.length<2)return e[0].clone();let n=Math.min(1,Math.max(0,t))*(e.length-1),r=Math.min(e.length-2,Math.floor(n));return e[r].clone().lerp(e[r+1],n-r)}function Wb(e,t,n){if(n.keep&&!n.keep(e,t))return!1;if(n.values?.length){let t=e==null?``:String(e);if(!n.values.some(e=>String(e)===t))return!1}if(n.min!=null||n.max!=null){let t=Number(e);if(!Number.isFinite(t)||n.min!=null&&t<n.min||n.max!=null&&t>n.max)return!1}return!n.keep&&!n.values?.length&&n.min==null&&n.max==null?e!=null&&String(e)!==``:!0}function Gb(e){if(!Number.isFinite(e))return`—`;let t=Math.abs(e);return t>=100?e.toFixed(0):t>=10?e.toFixed(1):e.toFixed(2)}var Kb=class{constructor(e,t,n,r,i){X(this,`_getLayerFloorHeight`,void 0),X(this,`_triggerRepaint`,void 0),X(this,`_onStyleChanged`,void 0),X(this,`_getAllMeshes`,void 0),X(this,`_applyOverrideHook`,void 0),X(this,`featureStyles`,new Map),X(this,`thematicColors`,new Map),X(this,`thematicElevation`,new Map),X(this,`thematicField`,null),X(this,`elevationField`,null),X(this,`filter`,null),X(this,`fieldFilter`,null),X(this,`_meshBatchTextures`,new WeakMap),X(this,`_markedMeshes`,new Set),X(this,`_dirtyAll`,!1),X(this,`_flushScheduled`,!1),X(this,`_batchConflictWarned`,!1),this._getLayerFloorHeight=e,this._triggerRepaint=t,this._onStyleChanged=n,this._getAllMeshes=r,this._applyOverrideHook=i}setFeatureStyle(e,t,n){this.featureStyles.set(e,t),this.markOverridesDirty(n),this._onStyleChanged(),this._triggerRepaint()}setFeaturesStyle(e,t,n){for(let n of e)this.featureStyles.set(n,t);this.markOverridesDirty(n),this._onStyleChanged(),this._triggerRepaint()}getFeatureStyle(e){return this.featureStyles.get(e)??null}getFeatureEffectiveOffset(e){if(e==null)return{};let t=this.featureStyles.get(e),n=t?.elevation??this.thematicElevation.get(e);return{translation:t?.translation,elevation:n}}getFeatureStyles(){return new Map(this.featureStyles)}removeFeatureStyle(e,t){this.featureStyles.delete(e)&&(this.markOverridesDirty(t),this._onStyleChanged(),this._triggerRepaint())}clearFeatureStyles(){this.featureStyles.size>0&&(this.featureStyles.clear(),this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint())}setThematicColors(e,t=`custom`){this.thematicColors=e&&e.size>0?new Map(e):new Map,this.thematicField=this.thematicColors.size>0?t:null,this.markOverridesDirty(),this._triggerRepaint()}clearThematicColors(){this.thematicColors.size!==0&&(this.thematicColors=new Map,this.thematicField=null,this.markOverridesDirty(),this._triggerRepaint())}setThematicElevation(e,t=`custom`){this.thematicElevation=e&&e.size>0?new Map([...e].filter(([,e])=>Number.isFinite(e)&&e>0)):new Map,this.elevationField=this.thematicElevation.size>0?t:null,this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint()}clearThematicElevation(){this.thematicElevation.size!==0&&(this.thematicElevation=new Map,this.elevationField=null,this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint())}setFilter(e,t){this.filter=e,e&&(e.minHeight!=null||e.maxHeight!=null)?(t.uFilterMinZ&&(t.uFilterMinZ.value=e.minHeight??-99999),t.uFilterMaxZ&&(t.uFilterMaxZ.value=e.maxHeight??99999),t.uFilterHeightActive&&(t.uFilterHeightActive.value=1)):t.uFilterHeightActive&&(t.uFilterHeightActive.value=0),this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint()}clearFilter(e){this.setFilter(null,e)}async colorByField(e,t,n){if(!t)throw Error(`[s3m] 未配置业务属性数据源,先调用 setAttributeSource() 或构造时传 attributes`);let r=e.smids?.length?[...new Set(e.smids)]:n;if(!r.length)return this.clearThematicColors(),{field:e.field,type:`discrete`,matched:0,missing:0,legend:[]};let i=await t.queryBySmids(r),a=[],o=[];for(let t of r){let n=i.get(t),r=n?n[e.field]:void 0;if(r==null||r===``)continue;let s=Number(r);Number.isFinite(s)?a.push({smid:t,val:s}):o.push({smid:t,val:String(r)})}let s=a.length>=o.length&&a.length>0,c=new Map,l=[],u=e.defaultColor??`#64748b`,d=e.nullColor??`#334155`;if(s){let t=a.map(e=>e.val),n=Math.min(...t),r=Math.max(...t)-n||1,i=(e.ramp??[`#3b82f6`,`#10b981`,`#f59e0b`,`#ef4444`]).map(e=>new W(e)),o=Math.max(2,e.stops??5);for(let e=0;e<o;e++){let t=e/o,a=(e+1)/o,s=Ub(i,(t+a)/2),c=n+t*r,u=n+a*r;l.push({color:`#${s.getHexString()}`,label:`${Gb(c)} ~ ${Gb(u)}`,count:0,min:c,max:u})}for(let{smid:e,val:t}of a){let i=Math.min(1,Math.max(0,(t-n)/r)),a=Math.min(o-1,Math.floor(i*o)),s=l[a].color;c.set(e,s),l[a].count++}}else{let t=new Map;for(let{val:e}of o)t.set(e,(t.get(e)??0)+1);let n=[...t.entries()].sort((e,t)=>t[1]-e[1]),r=Array.isArray(e.colors)?e.colors:[`#3b82f6`,`#10b981`,`#f59e0b`,`#ef4444`,`#8b5cf6`,`#ec4899`,`#06b6d4`,`#84cc16`],i=!Array.isArray(e.colors)&&e.colors?e.colors:null;for(let e=0;e<n.length;e++){let[t,a]=n[e],o=i?.[t]??r[e%r.length];l.push({color:o,label:t,count:a})}let a=new Map(l.map(e=>[e.label,e.color]));for(let{smid:e,val:t}of o)c.set(e,a.get(t)??u)}let f=0;for(let e of r)c.has(e)||(c.set(e,d),f++);return f>0&&l.push({color:d,label:`无数据 / 缺失`,count:f}),this.setThematicColors(c,e.field),{field:e.field,type:s?`continuous`:`discrete`,matched:r.length-f,missing:f,legend:l}}async filterByField(e,t,n){if(!t)throw Error(`[s3m] 未配置业务属性数据源,先调用 setAttributeSource() 或构造时传 attributes`);let r=e.smids?.length?[...new Set(e.smids)]:n,i=e.mode??`keep`,a=e.onMissing??`drop`,o={field:e.field,mode:i,matched:0,hidden:[]};if(!r.length)return this.fieldFilter=null,this.markOverridesDirty(),o;let s=await t.queryBySmids(r),c=new Set;for(let t of r){let n=s.get(t);n?Wb(n[e.field]??null,n,e)&&c.add(t):a===`keep`&&c.add(t)}o.matched=c.size;let l=i===`keep`;return this.fieldFilter=c.size||l?{field:e.field,mode:l?`keep`:`drop`,matched:c}:null,o.hidden=r.filter(e=>l?!c.has(e):c.has(e)),this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint(),o}clearFieldFilter(){this.fieldFilter&&(this.fieldFilter=null,this.markOverridesDirty(),this._triggerRepaint())}async elevateByField(e,t,n){if(!t)throw Error(`[s3m] 未配置业务属性数据源,先调用 setAttributeSource() 或构造时传 attributes`);let r=e.smids?.length?[...new Set(e.smids)]:n,i={field:e.field,matched:0,missing:r.length,min:0,max:0,appliedMax:0};if(!r.length)return this.thematicElevation=new Map,this.elevationField=null,this.markOverridesDirty(),i;let a=await t.queryBySmids(r),o=new Map;for(let t of r){let n=Number(a.get(t)?.[e.field]);Number.isFinite(n)&&o.set(t,n)}if(o.size===0)return this.thematicElevation=new Map,this.elevationField=null,this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint(),i;let s=[...o.values()],c=Math.min(...s),l=Math.max(...s),u=e.scale??1,d=e.offset??0,f=new Map,p=0;for(let[t,n]of o){let r=e.map?e.map(n,{min:c,max:l}):n*u+d;Number.isFinite(r)&&(e.max!=null&&r>e.max&&(r=e.max),!(r<=0)&&(f.set(t,r),r>p&&(p=r)))}return this.thematicElevation=f,this.elevationField=e.field,this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint(),{field:e.field,matched:f.size,missing:r.length-o.size,min:c,max:l,appliedMax:p}}auditBatches(e){let t=[],n=new Set,r=0;for(let i of e){let e=i.mesh.userData.geoRef?.pickInfo;if(!e)continue;let a=new Map;for(let[t,n]of Object.entries(e)){let e=Jg(n);if(e<0)continue;let r=Number(t),i=a.get(e);i?i.push(r):a.set(e,[r])}r+=a.size;for(let[e,r]of a)if(!(r.length<2)){for(let e of r)n.add(e);t.push({datasetId:i.datasetId,batchId:e,smids:r})}}return{smids:0,batches:r,conflicts:t,conflictingSmids:n.size}}applyOverridesToMesh(e){let t=Hb(e);if(!t)return;let n=e.userData,r=n.geoRef?.pickInfo,i=this.featureStyles.size>0||this.thematicColors.size>0||this.thematicElevation.size>0,a=this.filter,o=this.fieldFilter!=null||a!=null&&((a.include?.length??0)>0||(a.exclude?.length??0)>0||a.predicate!=null);if(!i&&!o||!r||Object.keys(r).length===0){t.userData.uBatchTexActive&&(t.userData.uBatchTexActive.value=0),t.transparent&&t.opacity>=.999&&(t.transparent=!1);return}let s=0;for(let e of Object.values(r)){let t=Jg(e);t>s&&(s=t)}let c=Math.max(s+1,1),l=this._meshBatchTextures.get(e);if(!l||l.width<c){let n=new Float32Array(c*2*4),r=new Cu(n,c,2,ci,ei);r.minFilter=Rr,r.magFilter=Rr,l={texture:r,data:n,width:c},this._meshBatchTextures.set(e,l),t.userData.uBatchTex.value=r,t.userData.uBatchTexWidth.value=c}let{data:u,texture:d}=l,f=l.width;for(let e=0;e<f;e++){u[e*4+0]=-1,u[e*4+1]=-1,u[e*4+2]=-1,u[e*4+3]=0;let t=(f+e)*4;u[t+0]=0,u[t+1]=0,u[t+2]=0,u[t+3]=0}let p=!1,m=new Set,h=new Map,g=new Map,_=new Map,v=new Map,y=new Map;for(let[t,i]of Object.entries(r)){let r=Number(t),o=Jg(i);if(o<0||o>=l.width)continue;y.set(o,(y.get(o)??0)+1);let s=!1;if(a&&(a.include&&a.include.length>0&&!a.include.includes(r)&&(s=!0),a.exclude&&a.exclude.length>0&&a.exclude.includes(r)&&(s=!0),a.predicate)){let{segments:t}=Xg(n.geoRef,o),i=Qg({smid:r,box:Zg(e.geometry,t),triangles:0,floorHeight:this._getLayerFloorHeight()});a.predicate({...i,smid:r})||(s=!0)}if(s){m.add(o);continue}if(this.fieldFilter){let e=this.fieldFilter.matched.has(r);if(this.fieldFilter.mode===`keep`?!e:e){m.add(o);continue}}let c=this.featureStyles.get(r);if(c?.hidden){m.add(o);continue}let u=c?.opacity;if(u!=null){if(u<=0){m.add(o);continue}u<1&&!v.has(o)&&v.set(o,u)}let d=c?.color??this.thematicColors.get(r);d&&!h.has(o)&&h.set(o,d);let f=c?.elevation??this.thematicElevation.get(r);f!=null&&!g.has(o)&&g.set(o,f),c?.translation&&!_.has(o)&&_.set(o,c.translation)}for(let e of m)u[e*4+3]=-1,p=!0;let b=new W;for(let[e,t]of h)m.has(e)||(b.set(t),u[e*4+0]=b.r,u[e*4+1]=b.g,u[e*4+2]=b.b,p=!0);for(let[e,t]of g){if(m.has(e))continue;u[e*4+3]=t;let n=(f+e)*4;u[n+2]=t,p=!0}for(let[e,t]of _){if(m.has(e))continue;let n=(f+e)*4;u[n+0]=t[0],u[n+1]=t[1],u[n+2]=t[2]+(g.get(e)??0),p=!0}let x=!1;for(let[e,t]of v)m.has(e)||(u[(f+e)*4+3]=t,p=!0,x=!0);x&&!t.transparent?t.transparent=!0:!x&&t.transparent&&t.opacity>=.999&&(t.transparent=!1);let S=0;for(let[e,t]of y)t<2||(m.has(e)||h.has(e)||g.has(e))&&S++;S>0&&!this._batchConflictWarned&&(this._batchConflictWarned=!0,console.warn(`[s3m] 有 ${S} 个单体状态写不进独立的 batch(多个 SMID 共用同一个 batchId,\n S3M 的单体化粒度只到 batch,无法单独隐藏/改色其中一部分)。
4345
+ `;function Qb(e,t={}){let n=new gc({uniforms:{uResolution:e.uResolution,uDpr:e.uDpr,uColor:{value:new W(t.color??`#ffffff`)},uOpacity:{value:t.opacity??1},uWidth:{value:t.width??1.5},uElevation:{value:t.elevation??0},uTranslation:{value:new H(0,0,0)}},vertexShader:Xb,fragmentShader:Zb,transparent:!0,depthWrite:!1,side:2,polygonOffset:!0,polygonOffsetFactor:-2,polygonOffsetUnits:-2});return n.userData.isThickLine=!0,n}function $b(e){let t=Math.floor(e.length/6),n=t*4,r=new Float32Array(n*3),i=new Float32Array(n*3),a=new Float32Array(n),o=n>65535?new Uint32Array(t*6):new Uint16Array(t*6);for(let n=0;n<t;n++){let t=n*6,r=e[t],i=e[t+1],a=e[t+2],c=e[t+3],l=e[t+4],u=e[t+5],d=n*4;s(d,r,i,a,c,l,u,-1),s(d+1,r,i,a,c,l,u,1),s(d+2,c,l,u,r,i,a,1),s(d+3,c,l,u,r,i,a,-1);let f=n*6;o[f]=d,o[f+1]=d+1,o[f+2]=d+2,o[f+3]=d,o[f+4]=d+2,o[f+5]=d+3}function s(e,t,n,o,s,c,l,u){let d=e*3;r[d]=t,r[d+1]=n,r[d+2]=o,i[d]=s,i[d+1]=c,i[d+2]=l,a[e]=u}let c=new q;return c.setAttribute(`position`,new G(r,3)),c.setAttribute(`aOther`,new G(i,3)),c.setAttribute(`aSide`,new G(a,1)),c.setIndex(new G(o,1)),c.computeBoundingSphere(),c}var ex=6e4,tx=100;function nx(e,t,n=40){let r=e.getAttribute(`position`);if(!r)return null;let i=r.count;if(i<3)return null;let a=new Float32Array(i),o=new Float32Array(i),s=new Float32Array(i);for(let e=0;e<i;e++)a[e]=r.getX(e),o[e]=r.getY(e),s[e]=r.getZ(e);let c=null,l=null;if(!e.index){let e=new Map;c=new Uint32Array(i),l=new Uint32Array(i);let t=0;for(let n=0;n<i;n++){let r=`${Math.round(a[n]*tx)},${Math.round(o[n]*tx)},${Math.round(s[n]*tx)}`,i=e.get(r);i===void 0&&(i=t++,e.set(r,i),l[i]=n),c[n]=i}}let u=e=>c?c[e]:e,d=e=>l?l[e]:e,f=e.index,p=f?f.array:null,m=Math.floor(f?f.count/3:i/3);if(m<1)return null;let h=null;if(t&&t.length>0){h=new Uint8Array(i);for(let e of t){let t=Math.max(0,e.vertexOffset|0),n=Math.min(i,t+(e.vertexCount|0));n>t&&h.fill(1,t,n)}if(!h.includes(1))return null}let g=new Float32Array(m*3),_=new Map,v=i+1,y=[],b=Math.cos(n*Math.PI/180),x=-1,S=0,C=0,w=0,T=(e,t)=>{if(y.length>=ex*6)return!1;let n=d(e),r=d(t);return y.push(a[n],o[n],s[n],a[r],o[r],s[r]),!0},E=(e,t)=>{if(e===t)return;let n=e<t?e:t,r=e<t?t:e,i=n*v+r,a=_.get(i);a===void 0?_.set(i,x):a<0||(S*g[a*3]+C*g[a*3+1]+w*g[a*3+2]<b?(T(n,r),_.set(i,-1)):_.set(i,-2))};for(x=0;x<m;x++){let e=p?p[x*3]:x*3,t=p?p[x*3+1]:x*3+1,n=p?p[x*3+2]:x*3+2;if(h&&!(h[e]&&h[t]&&h[n]))continue;let r=a[t]-a[e],i=o[t]-o[e],c=s[t]-s[e],l=a[n]-a[e],d=o[n]-o[e],f=s[n]-s[e];S=i*f-c*d,C=c*l-r*f,w=r*d-i*l;let m=Math.hypot(S,C,w);m<1e-12||(S/=m,C/=m,w/=m,g[x*3]=S,g[x*3+1]=C,g[x*3+2]=w,E(u(e),u(t)),E(u(t),u(n)),E(u(n),u(e)))}for(let[e,t]of _){if(t<0)continue;let n=Math.floor(e/v);if(!T(n,e-n*v))break}return y.length>0?new Float32Array(y):null}rh();function rx(e,t){let n=e.getAttribute(`position`);if(!n||n.count===0)return e;let r=1/Math.max(t,1e-9),i=new Map,a=[],o=new Int32Array(n.count);for(let e=0;e<n.count;e++){let t=n.getX(e),s=n.getY(e),c=n.getZ(e),l=`${Math.round(t*r)},${Math.round(s*r)},${Math.round(c*r)}`,u=i.get(l);u===void 0&&(u=a.length/3,a.push(t,s,c),i.set(l,u)),o[e]=u}let s=e.getIndex(),c=s?s.count:n.count,l=new Uint32Array(c);for(let e=0;e<c;e++)l[e]=o[s?s.getX(e):e];let u=new q;return u.setAttribute(`position`,new K(a,3)),u.setIndex(new G(l,1)),u}rh();var ix=class{constructor(){X(this,`datasets`,new Map),X(this,`sceneAnchor`,null),X(this,`totalMaxTiles`,0)}get(e){return this.datasets.get(e)}values(){return this.datasets.values()}registerDataset(e){let t=this.datasets.get(e.id);if(t)return t;let n=new Ml;n.name=`s3m-dataset:${e.id}`,n.visible=e.visible!==!1;let r={id:e.id,name:e.name??e.id,options:e,root:n,tileset:null,anchor:null,baseAlignOffset:0,userOffset:e.heightOffset??0,heightOffset:e.heightOffset??0,offset:[0,0,0],visible:e.visible!==!1,error:null};return this.datasets.set(e.id,r),this.rebalanceBudgets(),r}rebalanceBudgets(e){let t=e??this.totalMaxTiles;if(!t||t<=0)return;this.totalMaxTiles=t;let n=Array.from(this.datasets.values()).filter(e=>e.visible&&e.tileset),r=Math.max(1,n.length),i=Math.max(8,Math.floor(t/r));for(let e of this.datasets.values())e.tileset&&(e.visible?(e.tileset.maxTiles=i,e.tileset.hardCap=i+Math.max(4,Math.ceil(i*.5))):(e.tileset.maxTiles=Math.min(4,e.tileset.maxTiles),e.tileset.hardCap=Math.min(6,e.tileset.hardCap)))}computeAlignOffset(e,t){if(!t||t===`origin`||!e)return 0;let n=e.heightRange;if(!n)return 0;switch(t){case`top`:return-n.max;case`bottom`:return-n.min;case`center`:return-(n.min+n.max)/2;default:return 0}}async addDataset(e,t,n,r,i,a,o,s,c){let l=this.datasets.get(e.id);if(l)return l;let u=new Ml;u.name=`s3m-dataset:${e.id}`,u.visible=e.visible!==!1,t.add(u);let d={id:e.id,name:e.name??e.id,options:e,root:u,tileset:null,anchor:null,baseAlignOffset:0,userOffset:e.heightOffset??0,heightOffset:e.heightOffset??0,offset:[0,0,0],visible:e.visible!==!1,error:null};this.datasets.set(e.id,d);let f=new Pb({configUrl:e.configUrl,maxTiles:e.maxTiles??o,maxConcurrent:s,lodRangeScale:e.lodRangeScale??i,buildTile:a??null,useWorker:e.useWorker,uniforms:r,onTile:e=>{c.onTile(e,d)},onTileRemoved:e=>{c.onTileRemoved(e,d)},onProgress:()=>{c.onStats(),c.triggerRepaint()},onError:e=>{d.error=e,c.onError(e),c.onStats()}});d.tileset=f,this.rebalanceBudgets();try{await f.init()}catch(e){return d.error=e,c.onError(e),d}return d.anchor=f.anchor,d.baseAlignOffset=this.computeAlignOffset(f,e.align),d.userOffset=e.heightOffset??0,d.heightOffset=d.baseAlignOffset+d.userOffset,this.layoutDataset(d,n),c.onReady(d),c.triggerRepaint(),d}removeDataset(e,t,n,r){let i=this.datasets.get(e);return i?(r(i),i.tileset?.dispose(),t.remove(i.root),this.datasets.delete(e),this.rebalanceBudgets(),this.datasets.size>0?this.recomputeAnchors(n):this.sceneAnchor=null,!0):!1}clearDatasets(e,t){for(let n of this.datasets.values())t(n),n.tileset?.dispose(),e.remove(n.root);this.datasets.clear(),this.sceneAnchor=null}layoutDataset(e,t){if(!e.anchor)return;this.sceneAnchor||(this.sceneAnchor=u_(t,e.anchor.lon,e.anchor.lat,e.anchor.height??0));let n=this.sceneAnchor.meterInMercator,r=u_(t,e.anchor.lon,e.anchor.lat,e.anchor.height??0);e.offset=[(r.x-this.sceneAnchor.x)/n,-(r.y-this.sceneAnchor.y)/n,(r.z-this.sceneAnchor.z)/n+(e.heightOffset??0)],e.root.position.set(e.offset[0],e.offset[1],e.offset[2]),e.root.updateMatrixWorld(!0)}recomputeAnchors(e){if(this.datasets.size!==0){this.sceneAnchor=null;for(let t of this.datasets.values())this.layoutDataset(t,e)}}getDatasetHeight(e){let t=e??this.datasets.keys().next().value;return t?this.datasets.get(t)?.userOffset??0:0}setDatasetHeight(e,t,n){let r=this.datasets.get(e);r&&(r.userOffset=t,r.heightOffset=r.baseAlignOffset+t,this.layoutDataset(r,n))}setDatasetAlign(e,t,n){let r=this.datasets.get(e);if(!r)return;let i=r.heightOffset-r.baseAlignOffset;r.baseAlignOffset=this.computeAlignOffset(r.tileset,t),r.userOffset=i,r.heightOffset=r.baseAlignOffset+i,r.options.align=t,this.layoutDataset(r,n)}setDatasetVisible(e,t){let n=this.datasets.get(e);n&&(n.visible=t,n.root.visible=t,this.rebalanceBudgets())}getBounds(){let e=1/0,t=1/0,n=-1/0,r=-1/0,i=!1;for(let a of this.datasets.values()){if(!a.visible||!a.tileset?.config)continue;let o=jb(a.tileset.config.geoBounds);o&&(e=Math.min(e,o.left),t=Math.min(t,o.bottom),n=Math.max(n,o.right),r=Math.max(r,o.top),i=!0)}return i?[[e,t],[n,r]]:null}};rh(),t_();function ax(e){let t=Array.isArray(e.material)?e.material[0]:e.material;return t?.userData?.isStyled?t:null}function ox(e,t){if(e.length<2)return e[0].clone();let n=Math.min(1,Math.max(0,t))*(e.length-1),r=Math.min(e.length-2,Math.floor(n));return e[r].clone().lerp(e[r+1],n-r)}function sx(e,t,n){if(n.keep&&!n.keep(e,t))return!1;if(n.values?.length){let t=e==null?``:String(e);if(!n.values.some(e=>String(e)===t))return!1}if(n.min!=null||n.max!=null){let t=Number(e);if(!Number.isFinite(t)||n.min!=null&&t<n.min||n.max!=null&&t>n.max)return!1}return!n.keep&&!n.values?.length&&n.min==null&&n.max==null?e!=null&&String(e)!==``:!0}function cx(e){if(!Number.isFinite(e))return`—`;let t=Math.abs(e);return t>=100?e.toFixed(0):t>=10?e.toFixed(1):e.toFixed(2)}var lx=class{constructor(e,t,n,r,i){X(this,`_getLayerFloorHeight`,void 0),X(this,`_triggerRepaint`,void 0),X(this,`_onStyleChanged`,void 0),X(this,`_getAllMeshes`,void 0),X(this,`_applyOverrideHook`,void 0),X(this,`featureStyles`,new Map),X(this,`thematicColors`,new Map),X(this,`thematicElevation`,new Map),X(this,`thematicField`,null),X(this,`elevationField`,null),X(this,`filter`,null),X(this,`fieldFilter`,null),X(this,`_meshBatchTextures`,new WeakMap),X(this,`_markedMeshes`,new Set),X(this,`_dirtyAll`,!1),X(this,`_flushScheduled`,!1),X(this,`_batchConflictWarned`,!1),this._getLayerFloorHeight=e,this._triggerRepaint=t,this._onStyleChanged=n,this._getAllMeshes=r,this._applyOverrideHook=i}setFeatureStyle(e,t,n){this.featureStyles.set(e,t),this.markOverridesDirty(n),this._onStyleChanged(),this._triggerRepaint()}setFeaturesStyle(e,t,n){for(let n of e)this.featureStyles.set(n,t);this.markOverridesDirty(n),this._onStyleChanged(),this._triggerRepaint()}getFeatureStyle(e){return this.featureStyles.get(e)??null}getFeatureEffectiveOffset(e){if(e==null)return{};let t=this.featureStyles.get(e),n=t?.elevation??this.thematicElevation.get(e);return{translation:t?.translation,elevation:n}}getFeatureStyles(){return new Map(this.featureStyles)}removeFeatureStyle(e,t){this.featureStyles.delete(e)&&(this.markOverridesDirty(t),this._onStyleChanged(),this._triggerRepaint())}clearFeatureStyles(){this.featureStyles.size>0&&(this.featureStyles.clear(),this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint())}setThematicColors(e,t=`custom`){this.thematicColors=e&&e.size>0?new Map(e):new Map,this.thematicField=this.thematicColors.size>0?t:null,this.markOverridesDirty(),this._triggerRepaint()}clearThematicColors(){this.thematicColors.size!==0&&(this.thematicColors=new Map,this.thematicField=null,this.markOverridesDirty(),this._triggerRepaint())}setThematicElevation(e,t=`custom`){this.thematicElevation=e&&e.size>0?new Map([...e].filter(([,e])=>Number.isFinite(e)&&e>0)):new Map,this.elevationField=this.thematicElevation.size>0?t:null,this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint()}clearThematicElevation(){this.thematicElevation.size!==0&&(this.thematicElevation=new Map,this.elevationField=null,this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint())}setFilter(e,t){this.filter=e,e&&(e.minHeight!=null||e.maxHeight!=null)?(t.uFilterMinZ&&(t.uFilterMinZ.value=e.minHeight??-99999),t.uFilterMaxZ&&(t.uFilterMaxZ.value=e.maxHeight??99999),t.uFilterHeightActive&&(t.uFilterHeightActive.value=1)):t.uFilterHeightActive&&(t.uFilterHeightActive.value=0),this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint()}clearFilter(e){this.setFilter(null,e)}async colorByField(e,t,n){if(!t)throw Error(`[s3m] 未配置业务属性数据源,先调用 setAttributeSource() 或构造时传 attributes`);let r=e.smids?.length?[...new Set(e.smids)]:n;if(!r.length)return this.clearThematicColors(),{field:e.field,type:`discrete`,matched:0,missing:0,legend:[]};let i=await t.queryBySmids(r),a=[],o=[];for(let t of r){let n=i.get(t),r=n?n[e.field]:void 0;if(r==null||r===``)continue;let s=Number(r);Number.isFinite(s)?a.push({smid:t,val:s}):o.push({smid:t,val:String(r)})}let s=a.length>=o.length&&a.length>0,c=new Map,l=[],u=e.defaultColor??`#64748b`,d=e.nullColor??`#334155`;if(s){let t=a.map(e=>e.val),n=Math.min(...t),r=Math.max(...t)-n||1,i=(e.ramp??[`#3b82f6`,`#10b981`,`#f59e0b`,`#ef4444`]).map(e=>new W(e)),o=Math.max(2,e.stops??5);for(let e=0;e<o;e++){let t=e/o,a=(e+1)/o,s=ox(i,(t+a)/2),c=n+t*r,u=n+a*r;l.push({color:`#${s.getHexString()}`,label:`${cx(c)} ~ ${cx(u)}`,count:0,min:c,max:u})}for(let{smid:e,val:t}of a){let i=Math.min(1,Math.max(0,(t-n)/r)),a=Math.min(o-1,Math.floor(i*o)),s=l[a].color;c.set(e,s),l[a].count++}}else{let t=new Map;for(let{val:e}of o)t.set(e,(t.get(e)??0)+1);let n=[...t.entries()].sort((e,t)=>t[1]-e[1]),r=Array.isArray(e.colors)?e.colors:[`#3b82f6`,`#10b981`,`#f59e0b`,`#ef4444`,`#8b5cf6`,`#ec4899`,`#06b6d4`,`#84cc16`],i=!Array.isArray(e.colors)&&e.colors?e.colors:null;for(let e=0;e<n.length;e++){let[t,a]=n[e],o=i?.[t]??r[e%r.length];l.push({color:o,label:t,count:a})}let a=new Map(l.map(e=>[e.label,e.color]));for(let{smid:e,val:t}of o)c.set(e,a.get(t)??u)}let f=0;for(let e of r)c.has(e)||(c.set(e,d),f++);return f>0&&l.push({color:d,label:`无数据 / 缺失`,count:f}),this.setThematicColors(c,e.field),{field:e.field,type:s?`continuous`:`discrete`,matched:r.length-f,missing:f,legend:l}}async filterByField(e,t,n){if(!t)throw Error(`[s3m] 未配置业务属性数据源,先调用 setAttributeSource() 或构造时传 attributes`);let r=e.smids?.length?[...new Set(e.smids)]:n,i=e.mode??`keep`,a=e.onMissing??`drop`,o={field:e.field,mode:i,matched:0,hidden:[]};if(!r.length)return this.fieldFilter=null,this.markOverridesDirty(),o;let s=await t.queryBySmids(r),c=new Set;for(let t of r){let n=s.get(t);n?sx(n[e.field]??null,n,e)&&c.add(t):a===`keep`&&c.add(t)}o.matched=c.size;let l=i===`keep`;return this.fieldFilter=c.size||l?{field:e.field,mode:l?`keep`:`drop`,matched:c}:null,o.hidden=r.filter(e=>l?!c.has(e):c.has(e)),this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint(),o}clearFieldFilter(){this.fieldFilter&&(this.fieldFilter=null,this.markOverridesDirty(),this._triggerRepaint())}async elevateByField(e,t,n){if(!t)throw Error(`[s3m] 未配置业务属性数据源,先调用 setAttributeSource() 或构造时传 attributes`);let r=e.smids?.length?[...new Set(e.smids)]:n,i={field:e.field,matched:0,missing:r.length,min:0,max:0,appliedMax:0};if(!r.length)return this.thematicElevation=new Map,this.elevationField=null,this.markOverridesDirty(),i;let a=await t.queryBySmids(r),o=new Map;for(let t of r){let n=Number(a.get(t)?.[e.field]);Number.isFinite(n)&&o.set(t,n)}if(o.size===0)return this.thematicElevation=new Map,this.elevationField=null,this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint(),i;let s=[...o.values()],c=Math.min(...s),l=Math.max(...s),u=e.scale??1,d=e.offset??0,f=new Map,p=0;for(let[t,n]of o){let r=e.map?e.map(n,{min:c,max:l}):n*u+d;Number.isFinite(r)&&(e.max!=null&&r>e.max&&(r=e.max),!(r<=0)&&(f.set(t,r),r>p&&(p=r)))}return this.thematicElevation=f,this.elevationField=e.field,this.markOverridesDirty(),this._onStyleChanged(),this._triggerRepaint(),{field:e.field,matched:f.size,missing:r.length-o.size,min:c,max:l,appliedMax:p}}auditBatches(e){let t=[],n=new Set,r=0;for(let i of e){let e=i.mesh.userData.geoRef?.pickInfo;if(!e)continue;let a=new Map;for(let[t,n]of Object.entries(e)){let e=Jg(n);if(e<0)continue;let r=Number(t),i=a.get(e);i?i.push(r):a.set(e,[r])}r+=a.size;for(let[e,r]of a)if(!(r.length<2)){for(let e of r)n.add(e);t.push({datasetId:i.datasetId,batchId:e,smids:r})}}return{smids:0,batches:r,conflicts:t,conflictingSmids:n.size}}applyOverridesToMesh(e){let t=ax(e);if(!t)return;let n=e.userData,r=n.geoRef?.pickInfo,i=this.featureStyles.size>0||this.thematicColors.size>0||this.thematicElevation.size>0,a=this.filter,o=this.fieldFilter!=null||a!=null&&((a.include?.length??0)>0||(a.exclude?.length??0)>0||a.predicate!=null);if(!i&&!o||!r||Object.keys(r).length===0){t.userData.uBatchTexActive&&(t.userData.uBatchTexActive.value=0),t.transparent&&t.opacity>=.999&&(t.transparent=!1);return}let s=0;for(let e of Object.values(r)){let t=Jg(e);t>s&&(s=t)}let c=Math.max(s+1,1),l=this._meshBatchTextures.get(e);if(!l||l.width<c){let n=new Float32Array(c*2*4),r=new Cu(n,c,2,ci,ei);r.minFilter=Rr,r.magFilter=Rr,l={texture:r,data:n,width:c},this._meshBatchTextures.set(e,l),t.userData.uBatchTex.value=r,t.userData.uBatchTexWidth.value=c}let{data:u,texture:d}=l,f=l.width;for(let e=0;e<f;e++){u[e*4+0]=-1,u[e*4+1]=-1,u[e*4+2]=-1,u[e*4+3]=0;let t=(f+e)*4;u[t+0]=0,u[t+1]=0,u[t+2]=0,u[t+3]=0}let p=!1,m=new Set,h=new Map,g=new Map,_=new Map,v=new Map,y=new Map;for(let[t,i]of Object.entries(r)){let r=Number(t),o=Jg(i);if(o<0||o>=l.width)continue;y.set(o,(y.get(o)??0)+1);let s=!1;if(a&&(a.include&&a.include.length>0&&!a.include.includes(r)&&(s=!0),a.exclude&&a.exclude.length>0&&a.exclude.includes(r)&&(s=!0),a.predicate)){let{segments:t}=Xg(n.geoRef,o),i=Qg({smid:r,box:Zg(e.geometry,t),triangles:0,floorHeight:this._getLayerFloorHeight()});a.predicate({...i,smid:r})||(s=!0)}if(s){m.add(o);continue}if(this.fieldFilter){let e=this.fieldFilter.matched.has(r);if(this.fieldFilter.mode===`keep`?!e:e){m.add(o);continue}}let c=this.featureStyles.get(r);if(c?.hidden){m.add(o);continue}let u=c?.opacity;if(u!=null){if(u<=0){m.add(o);continue}u<1&&!v.has(o)&&v.set(o,u)}let d=c?.color??this.thematicColors.get(r);d&&!h.has(o)&&h.set(o,d);let f=c?.elevation??this.thematicElevation.get(r);f!=null&&!g.has(o)&&g.set(o,f),c?.translation&&!_.has(o)&&_.set(o,c.translation)}for(let e of m)u[e*4+3]=-1,p=!0;let b=new W;for(let[e,t]of h)m.has(e)||(b.set(t),u[e*4+0]=b.r,u[e*4+1]=b.g,u[e*4+2]=b.b,p=!0);for(let[e,t]of g){if(m.has(e))continue;u[e*4+3]=t;let n=(f+e)*4;u[n+2]=t,p=!0}for(let[e,t]of _){if(m.has(e))continue;let n=(f+e)*4;u[n+0]=t[0],u[n+1]=t[1],u[n+2]=t[2]+(g.get(e)??0),p=!0}let x=!1;for(let[e,t]of v)m.has(e)||(u[(f+e)*4+3]=t,p=!0,x=!0);x&&!t.transparent?t.transparent=!0:!x&&t.transparent&&t.opacity>=.999&&(t.transparent=!1);let S=0;for(let[e,t]of y)t<2||(m.has(e)||h.has(e)||g.has(e))&&S++;S>0&&!this._batchConflictWarned&&(this._batchConflictWarned=!0,console.warn(`[s3m] 有 ${S} 个单体状态写不进独立的 batch(多个 SMID 共用同一个 batchId,\n S3M 的单体化粒度只到 batch,无法单独隐藏/改色其中一部分)。
4346
4346
  当前规则:任一 SMID 需要隐藏则整批隐藏,颜色 / 抬高取首个。
4347
- 用 layer.auditBatches() 可以列出具体是哪些 SMID 共用了 batchId。`)),d.needsUpdate=!0,t.userData.uBatchTexActive&&(t.userData.uBatchTexActive.value=+!!p)}markOverridesDirty(e,t){if(e)for(let t of e)this._markedMeshes.add(t);else if(t)for(let e of t)this._markedMeshes.add(e);else this._dirtyAll=!0,this._markedMeshes.clear();this._flushScheduled||(this._flushScheduled=!0,queueMicrotask(()=>this.flushOverrides()))}disposeMesh(e){this._markedMeshes.delete(e);let t=this._meshBatchTextures.get(e);t&&(t.texture.dispose(),this._meshBatchTextures.delete(e))}flushOverrides(){if(!this._flushScheduled&&!this._dirtyAll&&this._markedMeshes.size===0)return;this._flushScheduled=!1;let e=this._applyOverrideHook??(e=>this.applyOverridesToMesh(e));if(this._dirtyAll){this._dirtyAll=!1,this._markedMeshes.clear();let t=this._getAllMeshes?this._getAllMeshes():[];for(let n of t)e(n);this._triggerRepaint()}else{for(let t of this._markedMeshes)e(t);this._markedMeshes.clear(),this._triggerRepaint()}}};rh();var qb=class{constructor(e={}){X(this,`mode`,void 0),X(this,`opacity`,void 0),X(this,`color`,void 0),X(this,`gridColor`,void 0),X(this,`gridSize`,void 0),X(this,`excavationBounds`,null),X(this,`size`,void 0),X(this,`groundHeight`,0),X(this,`occlude`,void 0),X(this,`trackHeight`,void 0),X(this,`group`,void 0),X(this,`_mesh`,null),X(this,`_material`,null),X(this,`_depthMesh`,null),X(this,`_depthMaterial`,null),X(this,`_geom`,null),X(this,`_occludeExplicit`,void 0),this.mode=e.mode??`none`,this.opacity=e.opacity??.62,this.color=new W(e.color??`#0f172a`),this.gridColor=new W(e.gridColor??`#38bdf8`),this.gridSize=e.gridSize??10,this.excavationBounds=e.excavationBounds??null,this.size=e.size??6e3,this._occludeExplicit=e.occlude!==void 0,this.occlude=e.occlude??this.mode===`excavate`,this.trackHeight=e.trackHeight??!0,this.group=new Ml,this.group.name=`s3m-ground-surface`,this._initMesh(),this._applyMode()}_initMesh(){let e=new Pc(this.size,this.size,1,1);this._geom=e;let t=new gc({transparent:!0,depthTest:!0,depthWrite:!1,side:2,uniforms:{uColor:{value:this.color},uGridColor:{value:this.gridColor},uOpacity:{value:this.opacity},uGridSize:{value:this.gridSize},uMode:{value:this.mode===`excavate`?2:+(this.mode===`translucent`)},uHasExcavation:{value:0},uExcavationMin:{value:new B(-9999,-9999)},uExcavationMax:{value:new B(9999,9999)}},vertexShader:`
4347
+ 用 layer.auditBatches() 可以列出具体是哪些 SMID 共用了 batchId。`)),d.needsUpdate=!0,t.userData.uBatchTexActive&&(t.userData.uBatchTexActive.value=+!!p)}markOverridesDirty(e,t){if(e)for(let t of e)this._markedMeshes.add(t);else if(t)for(let e of t)this._markedMeshes.add(e);else this._dirtyAll=!0,this._markedMeshes.clear();this._flushScheduled||(this._flushScheduled=!0,queueMicrotask(()=>this.flushOverrides()))}disposeMesh(e){this._markedMeshes.delete(e);let t=this._meshBatchTextures.get(e);t&&(t.texture.dispose(),this._meshBatchTextures.delete(e))}flushOverrides(){if(!this._flushScheduled&&!this._dirtyAll&&this._markedMeshes.size===0)return;this._flushScheduled=!1;let e=this._applyOverrideHook??(e=>this.applyOverridesToMesh(e));if(this._dirtyAll){this._dirtyAll=!1,this._markedMeshes.clear();let t=this._getAllMeshes?this._getAllMeshes():[];for(let n of t)e(n);this._triggerRepaint()}else{for(let t of this._markedMeshes)e(t);this._markedMeshes.clear(),this._triggerRepaint()}}};rh();var ux=class{constructor(e={}){X(this,`mode`,void 0),X(this,`opacity`,void 0),X(this,`color`,void 0),X(this,`gridColor`,void 0),X(this,`gridSize`,void 0),X(this,`excavationBounds`,null),X(this,`size`,void 0),X(this,`groundHeight`,0),X(this,`occlude`,void 0),X(this,`trackHeight`,void 0),X(this,`group`,void 0),X(this,`_mesh`,null),X(this,`_material`,null),X(this,`_depthMesh`,null),X(this,`_depthMaterial`,null),X(this,`_geom`,null),X(this,`_occludeExplicit`,void 0),this.mode=e.mode??`none`,this.opacity=e.opacity??.62,this.color=new W(e.color??`#0f172a`),this.gridColor=new W(e.gridColor??`#38bdf8`),this.gridSize=e.gridSize??10,this.excavationBounds=e.excavationBounds??null,this.size=e.size??6e3,this._occludeExplicit=e.occlude!==void 0,this.occlude=e.occlude??this.mode===`excavate`,this.trackHeight=e.trackHeight??!0,this.group=new Ml,this.group.name=`s3m-ground-surface`,this._initMesh(),this._applyMode()}_initMesh(){let e=new Pc(this.size,this.size,1,1);this._geom=e;let t=new gc({transparent:!0,depthTest:!0,depthWrite:!1,side:2,uniforms:{uColor:{value:this.color},uGridColor:{value:this.gridColor},uOpacity:{value:this.opacity},uGridSize:{value:this.gridSize},uMode:{value:this.mode===`excavate`?2:+(this.mode===`translucent`)},uHasExcavation:{value:0},uExcavationMin:{value:new B(-9999,-9999)},uExcavationMax:{value:new B(9999,9999)}},vertexShader:`
4348
4348
  varying vec2 vEnuPos;
4349
4349
  void main() {
4350
4350
  vec4 worldPos = modelMatrix * vec4(position, 1.0);
@@ -4422,4 +4422,4 @@ void main() {
4422
4422
  }
4423
4423
  gl_FragColor = vec4(1.0);
4424
4424
  }
4425
- `}),i=new dc(e,r);i.position.set(0,0,-.02),i.renderOrder=-1e3,i.name=`s3m-ground-depth`,i.visible=!1,this.group.add(i),this._depthMesh=i,this._depthMaterial=r,this._syncUniforms()}_applyMode(){this._mesh&&(this._mesh.visible=this.mode!==`none`),this._material&&(this._material.uniforms.uMode.value=this.mode===`excavate`?2:+(this.mode===`translucent`),this._material.depthWrite=this.mode===`excavate`),this._depthMesh&&(this._depthMesh.visible=this.occlude,this._depthMaterial&&(this._depthMaterial.uniforms.uPunchPit.value=+(this.mode===`excavate`)))}update(e){e&&this.group.position.set(e.position.x,e.position.y,this.groundHeight)}setGroundHeight(e){this.groundHeight=e,this.group.position.z=e}setMode(e){this.mode=e,this._occludeExplicit||(this.occlude=e===`excavate`),this._applyMode()}setOcclude(e){this.occlude=e,this._occludeExplicit=!0,this._applyMode()}setOpacity(e){this.opacity=Math.max(0,Math.min(1,e)),this._material&&(this._material.uniforms.uOpacity.value=this.opacity)}setColors(e,t){this.color.set(e),t&&this.gridColor.set(t),this._material&&(this._material.uniforms.uColor.value=this.color,this._material.uniforms.uGridColor.value=this.gridColor)}setExcavationBounds(e){this.excavationBounds=e,this._syncUniforms()}autoFitExcavation(e){let t=1/0,n=1/0,r=-1/0,i=-1/0,a=!1;for(let o of e){let e=o.tileset?.config,s=e?.rootTiles??e?.tiles;if(Array.isArray(s))for(let e of s){let s=e.boundingBox;if(!s)continue;let c=s.center??{x:0,y:0},l=s.xExtent?.x?Math.abs(s.xExtent.x):50,u=s.yExtent?.y?Math.abs(s.yExtent.y):50,d=c.x+o.offset[0]-l,f=c.x+o.offset[0]+l,p=c.y+o.offset[1]-u,m=c.y+o.offset[1]+u;d<t&&(t=d),f>r&&(r=f),p<n&&(n=p),m>i&&(i=m),a=!0}}a&&Number.isFinite(t)&&this.setExcavationBounds([t-5,n-5,r+5,i+5])}_syncUniforms(){let e=this.excavationBounds;if(this._material){let t=this._material.uniforms;e?(t.uHasExcavation.value=1,t.uExcavationMin.value.set(e[0],e[1]),t.uExcavationMax.value.set(e[2],e[3])):t.uHasExcavation.value=0}if(this._depthMaterial){let t=this._depthMaterial.uniforms;e?(t.uHasExcavation.value=1,t.uExcavationMin.value.set(e[0],e[1]),t.uExcavationMax.value.set(e[2],e[3])):t.uHasExcavation.value=0}}dispose(){this._geom?.dispose(),this._geom=null,this._material?.dispose(),this._material=null,this._depthMaterial?.dispose(),this._depthMaterial=null,this._mesh=null,this._depthMesh=null,this.group.clear()}};rh(),xy(),Vy(),t_();var Jb=65534;function Yb(e){let t=Array.isArray(e.material)?e.material[0]:e.material;return t?.userData?.isStyled?t:null}function Xb(e){return e.isPoints===!0}var Zb=class e{get datasets(){return this._datasetManager.datasets}get sceneAnchor(){return this._datasetManager.sceneAnchor}set sceneAnchor(e){this._datasetManager.sceneAnchor=e}_requestRepaint(){this._onRequestRepaint()}triggerRepaint(){this._requestRepaint()}constructor(e={}){X(this,`options`,void 0),X(this,`pickable`,void 0),X(this,`onStats`,void 0),X(this,`onReady`,void 0),X(this,`onPick`,void 0),X(this,`onError`,void 0),X(this,`geo`,null),X(this,`canvas`,null),X(this,`renderer`,null),X(this,`scene`,null),X(this,`camera`,null),X(this,`picker`,null),X(this,`uniforms`,void 0),X(this,`style`,void 0),X(this,`outlineMaterial`,void 0),X(this,`lineShared`,void 0),X(this,`edgeMaterial`,void 0),X(this,`selectionEdgeMaterial`,void 0),X(this,`groundManager`,void 0),X(this,`_datasetManager`,new Vb),X(this,`_featureStyleManager`,void 0),X(this,`_pickables`,new Map),X(this,`_pickSeq`,0),X(this,`_freePickIds`,[]),X(this,`_smidMeshes`,new Map),X(this,`_meshHeight`,new Map),X(this,`_heightMin`,1/0),X(this,`_heightMax`,-1/0),X(this,`_boxScratch`,new ho),X(this,`_selection`,null),X(this,`_selectedMeshes`,[]),X(this,`_outlineMesh`,null),X(this,`_outlineMeshes`,[]),X(this,`_selectionEdges`,null),X(this,`_selectionEdgeMeshes`,[]),X(this,`_edgesEnabled`,!1),X(this,`_creaseLines`,null),X(this,`attributeQuery`,null),X(this,`_enuMatrix`,new U),X(this,`_needsRepaint`,!0),X(this,`_frame`,0),X(this,`_fps`,{value:0,last:0}),X(this,`_ambientLight`,void 0),X(this,`_hemiLight`,void 0),X(this,`_keyLight`,void 0),X(this,`_fillLight`,void 0),X(this,`_lightOptions`,{ambientIntensity:.4,ambientColor:16777215,hemisphereIntensity:.8,hemisphereColor:16777215,hemisphereGroundColor:11976907,keyLightIntensity:1,keyLightColor:16777215,fillLightIntensity:.35,fillLightColor:16777215,mode:`headlamp`,azimuth:150,altitude:50}),X(this,`_datasetQueue`,void 0),X(this,`_onRequestRepaint`,()=>{}),X(this,`_getBearing`,void 0),X(this,`_lodRangeScale`,1),this.options=e,this.pickable=e.pickable!==!1,this._lodRangeScale=e.lodRangeScale??1,e.light&&Object.assign(this._lightOptions,e.light),e.totalMaxTiles&&(this._datasetManager.totalMaxTiles=e.totalMaxTiles),this._onRequestRepaint=e.onRequestRepaint??(()=>{}),this._getBearing=e.getBearing,this.onStats=e.onStats??(()=>{}),this.onReady=e.onReady??(()=>{}),this.onPick=e.onPick??(()=>{}),this.onError=e.onError??(e=>console.warn(`[s3m]`,e)),this.groundManager=new qb(e.ground),this.scene||(this.scene=new Wl,this.scene.add(this.groundManager.group),this._addLights()),this._featureStyleManager=new Kb(()=>this.style.floorHeight,()=>this._requestRepaint(),()=>{this._selection&&this._syncSelectionStyle()},()=>this.getAllMeshes(),e=>this._applyOverridesToMesh(e)),this.uniforms=Sy(),my(g_),this.style={...ky,...e.style??{}},this.outlineMaterial=wy(this.uniforms),this.lineShared=Mb(),this.edgeMaterial=Fb(this.lineShared,{color:this.style.edgeColor,opacity:this.style.edgeOpacity??.45,width:this.style.edgeWidth??1.2}),this.selectionEdgeMaterial=Fb(this.lineShared,{color:this.style.outlineColor??this.style.selectColor,opacity:1,width:this.style.outlineWidthPx??3}),this.setEdges(!!this.style.edges),this._fps.last=performance.now(),this._datasetQueue=this._normalizeDatasets(e),e.attributes&&(this.attributeQuery=new o_(e.attributes))}_createRenderer(e,t){let n=new Vl({canvas:e,context:t,antialias:!0});return n.autoClear=!1,n.setPixelRatio(1),n.toneMapping=4,n.toneMappingExposure=1,n}mount(e,t){this.canvas=e,this.renderer=this._createRenderer(e,t),py(this.renderer.capabilities.getMaxAnisotropy()),this.scene=new Wl,this.scene.add(this.groundManager.group),this._addLights(),this.camera=new _c,this.camera.matrixAutoUpdate=!1,this.picker=new jb(this.renderer),this._applyStyleUniforms();for(let e of this._datasetQueue)this.addDataset(e).catch(e=>this.onError(e));this._recomputeAnchors()}restoreContext(e){if(!this.canvas)console.warn(`[s3m] restoreContext 调用过早(尚未 mount),按首次挂载处理`);else{try{this.renderer?.dispose()}catch{}this.renderer=this._createRenderer(this.canvas,e),py(this.renderer.capabilities.getMaxAnisotropy()),this.picker?.dispose(),this.picker=new jb(this.renderer),this._requestRepaint()}}unmount(){for(let e of[...this.datasets.keys()])this.removeDataset(e);this.clearCreases(),this.groundManager.dispose(),this.picker?.dispose(),this.picker=null,this.outlineMaterial.dispose(),this.edgeMaterial.dispose(),this.selectionEdgeMaterial.dispose(),this.scene?.clear(),this._selectedMeshes=[],this._outlineMeshes=[],this._selectionEdgeMeshes=[],this._outlineMesh=null,this._selectionEdges=null,this._smidMeshes.clear(),this._meshHeight.clear(),this._heightMin=1/0,this._heightMax=-1/0,this.renderer?.dispose(),this.renderer=null,this.canvas=null}_createLights(){this._ambientLight=new mp(this._lightOptions.ambientColor,this._lightOptions.ambientIntensity),this._hemiLight=new ep(this._lightOptions.hemisphereColor,this._lightOptions.hemisphereGroundColor,this._lightOptions.hemisphereIntensity),this._keyLight=new pp(this._lightOptions.keyLightColor,this._lightOptions.keyLightIntensity),this._fillLight=new pp(this._lightOptions.fillLightColor,this._lightOptions.fillLightIntensity),this._updateLights()}_addLights(){this.scene&&(this._ambientLight||this._createLights(),this.scene.add(this._ambientLight,this._hemiLight,this._keyLight,this._fillLight))}_applyLightOptions(){this._ambientLight&&(this._ambientLight.intensity=this._lightOptions.ambientIntensity,this._ambientLight.color.set(this._lightOptions.ambientColor)),this._hemiLight&&(this._hemiLight.intensity=this._lightOptions.hemisphereIntensity,this._hemiLight.color.set(this._lightOptions.hemisphereColor),this._hemiLight.groundColor.set(this._lightOptions.hemisphereGroundColor)),this._keyLight&&(this._keyLight.intensity=this._lightOptions.keyLightIntensity,this._keyLight.color.set(this._lightOptions.keyLightColor)),this._fillLight&&(this._fillLight.intensity=this._lightOptions.fillLightIntensity,this._fillLight.color.set(this._lightOptions.fillLightColor))}setLight(e){Object.assign(this._lightOptions,e),this._applyLightOptions(),this._updateLights(),this._needsRepaint=!0,this.triggerRepaint()}getLight(){return{...this._lightOptions}}_updateLights(){if(!this._keyLight||!this._fillLight)return;let e=this._lightOptions.mode===`fixed`?0:(this._getBearing?.()??0)*Math.PI/180,t=(t,n,r)=>{if(!t)return;let i=e+n*Math.PI/180,a=r*Math.PI/180,o=Math.cos(a);t.position.set(Math.sin(i)*o,Math.cos(i)*o,Math.sin(a)).multiplyScalar(1e3)};t(this._keyLight,this._lightOptions.azimuth,this._lightOptions.altitude),t(this._fillLight,this._lightOptions.azimuth+65,Math.max(10,this._lightOptions.altitude-20))}_normalizeDatasets(e){return Array.isArray(e.datasets)?e.datasets.filter(e=>!!e?.configUrl):e.configUrl?[{id:`default`,name:`默认数据集`,configUrl:e.configUrl,useWorker:e.useWorker}]:[]}async addDataset(e){if(!this.scene)throw Error(`[s3m] 图层尚未 addLayer,不能添加数据集`);return await this._datasetManager.addDataset(e,this.scene,this.geo,this.uniforms,this._lodRangeScale,this.options.buildTile,this.options.maxTiles??64,this.options.maxConcurrent??4,{onTile:(e,t)=>{this._registerTile(e,t),this.onStats(this.stats),this._needsRepaint=!0,this._requestRepaint()},onTileRemoved:(e,t)=>{this._unregisterTile(e,t),this.onStats(this.stats),this._needsRepaint=!0,this._requestRepaint()},onStats:()=>{this.onStats(this.stats),this._requestRepaint()},onError:e=>{this.onError(e),this.onStats(this.stats)},onReady:e=>{this.onReady(e),this._refreshAllHeights(),this.groundManager.excavationBounds||this.groundManager.autoFitExcavation(this.datasets.values())},triggerRepaint:()=>{this._requestRepaint()}})}_lngLatFromWorld(e,t){return d_(this.geo,e,t)}recomputeAnchors(){this._datasetManager.recomputeAnchors(this.geo),this._refreshAllHeights(),this._requestRepaint()}_recomputeAnchors(){this.recomputeAnchors()}getDatasetHeight(e){return this._datasetManager.getDatasetHeight(e)}setDatasetHeight(e,t){let n,r;typeof e==`number`?(n=this.datasets.keys().next().value??``,r=e):(n=e,r=t??0),this._datasetManager.setDatasetHeight(n,r,this.geo),this._syncGroundHeight(),this._refreshAllHeights(),this._requestRepaint()}_syncGroundHeight(){if(!this.groundManager.trackHeight)return;let e=this.datasets.keys().next().value;if(!e)return;let t=this._datasetManager.getDatasetHeight(e);this.groundManager.setGroundHeight(t)}setDatasetAlign(e,t){let n,r;t===void 0&&(e===`origin`||e===`bottom`||e===`top`||e===`center`)?(n=this.datasets.keys().next().value??``,r=e):(n=e,r=t??`origin`),this._datasetManager.setDatasetAlign(n,r,this.geo),this._refreshAllHeights(),this._requestRepaint()}_computeAlignOffset(e,t){return this._datasetManager.computeAlignOffset(e,t)}computeAlignOffset(e,t){return this._datasetManager.computeAlignOffset(e,t)}setFeatureStyle(e,t){this._featureStyleManager.setFeatureStyle(e,t,this._meshesOf([e]))}setFeaturesStyle(e,t){this._featureStyleManager.setFeaturesStyle(e,t,this._meshesOf(e))}getFeatureStyle(e){return this._featureStyleManager.getFeatureStyle(e)}getFeatureStyles(){return this._featureStyleManager.getFeatureStyles()}removeFeatureStyle(e){this._featureStyleManager.removeFeatureStyle(e,this._meshesOf([e]))}clearFeatureStyles(){this._featureStyleManager.clearFeatureStyles()}setAttributeSource(e){this.attributeQuery=e?new o_(e):null}getLoadedSmids(){return[...this._smidMeshes.keys()]}auditBatches(){let e=this._featureStyleManager.auditBatches(this._pickables.values());return e.smids=this._smidMeshes.size,e}getThematicField(){return this._featureStyleManager.thematicField}setThematicColors(e,t=`custom`){this._featureStyleManager.setThematicColors(e,t)}clearThematic(){this._featureStyleManager.clearThematicColors()}getFilterField(){return this._featureStyleManager.fieldFilter?.field??null}filterByField(e){return this._featureStyleManager.filterByField(e,this.attributeQuery,this.getLoadedSmids())}clearFieldFilter(){this._featureStyleManager.clearFieldFilter()}getElevationField(){return this._featureStyleManager.elevationField}elevateByField(e){return this._featureStyleManager.elevateByField(e,this.attributeQuery,this.getLoadedSmids())}setThematicElevation(e,t=`custom`){this._featureStyleManager.setThematicElevation(e,t)}clearThematicElevation(){this._featureStyleManager.clearThematicElevation()}colorByField(e){return this._featureStyleManager.colorByField(e,this.attributeQuery,this.getLoadedSmids())}setFilter(e){this._featureStyleManager.setFilter(e,this.uniforms)}getFilter(){return this._featureStyleManager.filter}clearFilter(){this._featureStyleManager.clearFilter(this.uniforms)}setGroundMode(e){this.groundManager.setMode(e),this._requestRepaint()}setGroundOpacity(e){this.groundManager.setOpacity(e),this._requestRepaint()}setExcavationBounds(e){this.groundManager.setExcavationBounds(e),this._requestRepaint()}setGroundOcclude(e){this.groundManager.setOcclude(e),this._requestRepaint()}_isFeatureHidden(e,t){if(e==null)return!1;let n=this._featureStyleManager.fieldFilter;if(n){let t=n.matched.has(e);if(n.mode===`keep`?!t:t)return!0}let r=this._featureStyleManager.filter;return!!(r&&(r.include&&r.include.length>0&&!r.include.includes(e)||r.exclude&&r.exclude.length>0&&r.exclude.includes(e))||this._featureStyleManager.featureStyles.get(e)?.hidden)}getAllMeshes(){let e=[];for(let t of this._pickables.values())e.push(t.mesh);return e}_meshesOf(e){let t=new Set;for(let n of e){let e=this._smidMeshes.get(n);if(e)for(let n of e)t.add(n)}return t}_markOverridesDirty(e=`all`){e===`all`?this._featureStyleManager.markOverridesDirty(void 0,this.getAllMeshes()):this._featureStyleManager.markOverridesDirty(e)}flushOverrides(){this._featureStyleManager.flushOverrides()}_applyOverridesToMesh(e){this._featureStyleManager.applyOverridesToMesh(e)}removeDataset(e){if(this.datasets.get(e)){this._selection?.datasetId===e&&this.select(null),this._datasetManager.removeDataset(e,this.scene,this.geo,e=>{e.root.traverse(e=>{let t=e,n=t.userData;n.pickId!=null&&(this._pickables.delete(n.pickId),this._releasePickId(n.pickId),n.pickId=void 0),this._unindexMeshSmids(t),this._removeMeshHeight(t),t.geometry?.dispose?.();let r=Yb(t);r&&r.dispose(),Tb(t.material)&&t.material.dispose(),this._featureStyleManager.disposeMesh(t)})});for(let[t,n]of this._pickables)n.datasetId===e&&this._pickables.delete(t);this.onStats(this.stats),this._requestRepaint()}}clearDatasets(){for(let e of[...this.datasets.keys()])this.removeDataset(e)}setDatasetVisible(e,t){this._datasetManager.setDatasetVisible(e,t),!t&&this._selection?.datasetId===e&&this.select(null),this._requestRepaint()}_registerTile(e,t){t.root.add(e.group),e.group.updateMatrixWorld(!0);let n=e.group.userData.hasNativeEdges===!0;for(let r of e.group.children){if(r.isLineSegments&&r.userData.isEdgeLines){r.visible=this._edgesEnabled,this._styleEdgeLine(r);continue}let i=Xb(r),a=r;if(!a.isMesh&&!i)continue;let o=a.userData;if(o.pickId=this._allocPickId(),o.datasetId=t.id,o.nativeEdges=n,this._pickables.set(o.pickId,{datasetId:t.id,mesh:a,tile:e.tile,skeletonName:o.skeletonName??``}),this._indexMeshSmids(a),this._addMeshHeight(a),!n&&!i&&this._datasetEdgesEnabled(t)&&!this._shouldSkipAutoEdges(o,t.name)&&this._ensureEdges(a),i)this._applyPointCloudStyle(r);else{let e=Yb(a);if(e){let t=Math.min(1,Math.max(.05,this.style.opacity??1));e.opacity=t,e.transparent=t<.999,e.depthWrite=t>=.999,e.flatShading=this.style.shading!==`smooth`,e.needsUpdate=!0,this._featureStyleManager.applyOverridesToMesh(a)}}this._replaySelectionOnto(a)}}_isMeshCoveringSelection(e,t){if(!t.point)return!1;let n=e.geometry;if(!n||(n.boundingBox||n.computeBoundingBox(),!n.boundingBox))return!1;let r=new H(t.point[0],t.point[1],t.point[2]);e.updateWorldMatrix(!0,!1);let i=e.matrixWorld.clone().invert(),a=r.applyMatrix4(i);return n.boundingBox.clone().expandByScalar(.5).containsPoint(a)}_replaySelectionOnto(e){let t=this._selection;if(!t)return;let n=Yb(e);if(!n)return;let r=e.userData,i=-1;if(t.smid!=null){let e=r.geoRef?.pickInfo,n=e?.[t.smid]??e?.[String(t.smid)];i=n?Jg(n):-1}if(e===t.mesh&&(i=t.batchId),i<0&&e!==t.mesh){if(t.smid==null&&r.datasetId===t.datasetId&&this._isMeshCoveringSelection(e,t))i=-1;else return}n.userData.uSelBatch.value=i,n.userData.uSelWhole.value=+(i<0),this._selectedMeshes.includes(e)||this._selectedMeshes.push(e),Xb(e)&&this._applyPointCloudStyle(e,!0),this.uniforms.uSelMix.value=1,this.uniforms.uDim.value=+!!this.style.dimOthers}_unregisterTile(e,t){e.group.traverse(e=>{let t=e;if(t.userData?.pickId!=null&&(this._pickables.delete(t.userData.pickId),this._releasePickId(t.userData.pickId),t.userData.pickId=void 0),t.isMesh){this._selectedMeshes.includes(t)&&(this._selectedMeshes=this._selectedMeshes.filter(e=>e!==t));let e=this._selection;if(e&&e.mesh===t){let n=e.smid,r=n==null?this._selectedMeshes.find(e=>e!==t&&e.parent&&e.parent.visible)??this._selectedMeshes.find(e=>e!==t&&e.parent):[...this._smidMeshes.get(n)??[]].find(e=>e!==t&&e.parent);r?(this._selection={...e,mesh:r},this._replaySelectionOnto(r)):this.select(null)}this._unindexMeshSmids(t),this._removeMeshHeight(t),this._featureStyleManager.disposeMesh(t),Yb(t)?.dispose?.()}Tb(t.material)?t.material.dispose():t.material&&(Array.isArray(t.material)?t.material.forEach(e=>e?.dispose?.()):t.material.dispose?.()),t.geometry?.dispose?.()}),t.root.remove(e.group)}_allocPickId(){let e=this._freePickIds.pop();if(e!==void 0)return e;if(this._pickSeq>Jb){for(let e=0;e<=Jb;e++)if(!this._pickables.has(e))return e;throw Error(`[s3m] 可拾取网格超过 65535 个,2 字节 ID 编码不够用`)}return this._pickSeq++}_releasePickId(e){this._freePickIds.push(e)}setOpacity(e){this.setStyle({opacity:e})}setStyle(e={}){this.style={...this.style,...e},this._applyStyleUniforms(),(`opacity`in e||`depthWrite`in e)&&this._applyOpacity(),`mode`in e&&this._applyPointCloudStyles(),`shading`in e&&this._applyShading(),`edgeThreshold`in e&&this._edgesEnabled?this.setEdges(!0):`edges`in e?this.setEdges(!!this.style.edges):(`edgeColor`in e||`edgeWidth`in e||`opacity`in e||`edgeOpacity`in e)&&this._refreshEdgeLines(),this._selection&&(`outline`in e||`outlineStyle`in e?this.select(this._selection,{silent:!0}):this._syncSelectionStyle()),this._requestRepaint()}getStyle(){return{...this.style,modeLabel:Ey[this.style.mode]}}_applyStyleUniforms(){let e=this.uniforms,t=this.style;e.uMode.value=t.mode,e.uColorA.value.set(t.colorA),e.uColorB.value.set(t.colorB),e.uColorC.value.set(t.colorC),e.uSelColor.value.set(t.selectColor),e.uFloorHeight.value=t.floorHeight;let n=t.selectMode??Dy.OVERLAY;e.uSelMode&&(e.uSelMode.value=n===Dy.REPLACE?0:n===Dy.MULTIPLY?2:n===Dy.GLOW_ONLY?3:1),e.uSelOpacity&&t.selectOpacity!=null&&(e.uSelOpacity.value=t.selectOpacity),e.uSelEmissive&&t.selectEmissive!=null&&(e.uSelEmissive.value=t.selectEmissive),e.uSelElevation&&t.selectElevation!=null&&(e.uSelElevation.value=t.selectElevation),e.uDimFactor&&t.dimFactor!=null&&(e.uDimFactor.value=t.dimFactor),e.uRoofThreshold&&t.roofThreshold!=null&&(e.uRoofThreshold.value=t.roofThreshold),e.uTexMix&&t.texMix!=null&&(e.uTexMix.value=t.texMix),this.outlineMaterial&&(this.outlineMaterial.uniforms.uElevation&&t.selectElevation!=null&&(this.outlineMaterial.uniforms.uElevation.value=t.selectElevation),t.outlineWidth!=null&&(this.outlineMaterial.uniforms.uWidth.value=t.outlineWidth),t.outlineColor==null?this.outlineMaterial.uniforms.uColor.value.set(t.selectColor):this.outlineMaterial.uniforms.uColor.value.set(t.outlineColor))}_applyOpacity(){let e=Math.min(1,Math.max(.05,this.style.opacity??1)),t=e<.999,n=this.style.depthWrite!==!1;for(let r of this._pickables.values()){if(Xb(r.mesh)){this._applyPointCloudStyle(r.mesh);continue}let i=Yb(r.mesh);i&&(i.opacity=e,i.transparent=t,i.depthWrite=!t||n)}this._requestRepaint()}_applyPointCloudStyle(e,t=this._selectedMeshes.includes(e)){wb(e,this.style,this.uniforms,t)}_applyPointCloudStyles(){for(let e of this._pickables.values())Xb(e.mesh)&&this._applyPointCloudStyle(e.mesh);this._requestRepaint()}_applyShading(){let e=this.style.shading!==`smooth`;for(let t of this._pickables.values()){let n=Yb(t.mesh);n&&n.flatShading!==e&&(n.flatShading=e,n.needsUpdate=!0)}this._requestRepaint()}_addMeshHeight(e){let t=e.geometry?.boundingBox;if(!t)return;this._boxScratch.copy(t).applyMatrix4(e.matrixWorld);let n=this._boxScratch.min.z,r=this._boxScratch.max.z;Number.isFinite(n)&&Number.isFinite(r)&&(this._meshHeight.set(e,{min:n,max:r}),n<this._heightMin&&(this._heightMin=n),r>this._heightMax&&(this._heightMax=r),this._pushHeightRange())}_removeMeshHeight(e){let t=this._meshHeight.get(e);t&&(this._meshHeight.delete(e),t.min===this._heightMin||t.max===this._heightMax?this._recomputeHeightRange():this._pushHeightRange())}_refreshAllHeights(){if(this._meshHeight.size===0)return;let e=[...this._meshHeight.keys()];this._meshHeight.clear(),this._heightMin=1/0,this._heightMax=-1/0;for(let t of e)this._addMeshHeight(t);this._pushHeightRange()}_recomputeHeightRange(){let e=1/0,t=-1/0;for(let n of this._meshHeight.values())n.min<e&&(e=n.min),n.max>t&&(t=n.max);this._heightMin=e,this._heightMax=t,this._pushHeightRange()}_pushHeightRange(){let e=this._heightMin,t=this._heightMax;(!Number.isFinite(e)||!Number.isFinite(t)||t<=e)&&(e=0,t=100),this.uniforms.uHeightMin.value=e,this.uniforms.uHeightMax.value=t}_indexMeshSmids(e){let t=e.userData.geoRef?.pickInfo;if(t)for(let n of Object.keys(t)){let t=Number(n);if(!Number.isFinite(t)||t<0)continue;let r=this._smidMeshes.get(t);r||this._smidMeshes.set(t,r=new Set),r.add(e)}}_unindexMeshSmids(e){let t=e.userData.geoRef?.pickInfo;if(t)for(let n of Object.keys(t)){let t=Number(n),r=this._smidMeshes.get(t);r&&(r.delete(e),r.size===0&&this._smidMeshes.delete(t))}}setEdges(e){this._edgesEnabled=e,this.style.edges=e;for(let t of this.datasets.values())t.root.traverse(t=>{t.userData.isEdgeLines&&(t.visible=e,this._styleEdgeLine(t))});if(this._syncEdgeStyle(),!e){for(let e of this._pickables.values())this._removeEdges(e.mesh);this._requestRepaint();return}let t=[...this._pickables.values()].map(e=>e.mesh).filter(e=>{let t=e.userData;return!t.edges&&!t.nativeEdges&&!Xb(e)}),n=0,r=()=>{let e=performance.now();for(;n<t.length&&performance.now()-e<8;)this._ensureEdges(t[n++]);n<t.length?setTimeout(r,0):this._requestRepaint()};r()}async loadCreases(e){let t=await fetch(e);if(!t.ok)throw Error(`[s3m] 棱线缓存加载失败: ${t.status} ${e}`);let n=await t.arrayBuffer(),r=new Float32Array(n);if(r.length<6)return;let i=new q;i.setAttribute(`position`,new G(r,3));let a=this.style,o=new Qu({color:new W(a.edgeColor),transparent:!0,opacity:Math.min(1,Math.max(0,a.edgeOpacity??.6))*Math.min(1,Math.max(.05,a.opacity??1)),depthWrite:!1}),s=new ld(i,o);s.renderOrder=2,s.frustumCulled=!1,s.raycast=()=>{},this.clearCreases(),this._creaseLines=s,this.scene?.add(s),this._requestRepaint()}clearCreases(){this._creaseLines&&(this.scene?.remove(this._creaseLines),this._creaseLines.geometry.dispose(),this._creaseLines.material?.dispose?.(),this._creaseLines=null,this._requestRepaint())}_syncEdgeStyle(){let e=this.style,t=this.edgeMaterial.uniforms;if(t.uColor.value.set(e.edgeColor),t.uWidth.value=Math.max(.1,e.edgeWidth??1.5),t.uOpacity.value=Math.min(1,Math.max(0,e.edgeOpacity??.6))*Math.min(1,Math.max(.05,e.opacity??1)),this._creaseLines){let t=this._creaseLines.material;t.color.set(e.edgeColor),t.opacity=Math.min(1,Math.max(0,e.edgeOpacity??.6))*Math.min(1,Math.max(.05,e.opacity??1))}}_styleEdgeLine(e){let t=e.material;t&&t.color&&(t.color.set(this.style.edgeColor),t.opacity=(this.style.edgeOpacity??.6)*Math.min(1,Math.max(.05,this.style.opacity??1)),t.transparent=!0,t.polygonOffset=!0,t.polygonOffsetFactor=-1,t.polygonOffsetUnits=-1,t.needsUpdate=!0)}_refreshEdgeLines(){this._syncEdgeStyle();for(let e of this.datasets.values())e.root.traverse(e=>{e.userData.isEdgeLines&&this._styleEdgeLine(e)})}_datasetEdgesEnabled(e){let t=e.options?.enableEdges;return t===!0||t!==!1&&this._edgesEnabled}_shouldSkipAutoEdges(t,n){let r=`${t.skeletonName??``} ${n}`.toLowerCase();return e._EDGE_SKIP_KEYWORDS.some(e=>r.includes(e))}_ensureEdges(e){let t=e.userData;if(t.edges||t.nativeEdges||!e.geometry||this._shouldSkipAutoEdges(t,``))return;let n=e.geometry.getAttribute(`position`);if((e.geometry.index?.count??(n?n.count:0))>12e4)return;let r=Bb(e.geometry,.005),i=this.style.edgeThreshold??55,a=new Qd(r,i);r.dispose();let o=a.getAttribute(`position`),s=o?o.array:null;if(a.dispose(),!s||s.length<6)return;let c=new dc(Ib(s),this.edgeMaterial);c.renderOrder=2,c.frustumCulled=!1,c.raycast=()=>{},c.userData.isThickEdge=!0,t.edges=c,e.add(c)}_removeEdges(e){let t=e.userData,n=t.edges;n&&(e.remove(n),n.geometry?.dispose(),t.edges=null)}getRayAt(e,t){if(!this.camera||!this.canvas)return null;let n=this.canvas,r=n.clientWidth||n.width,i=n.clientHeight||n.height;if(!r||!i)return null;let a=e/r*2-1,o=-(t/i)*2+1,s=new H(a,o,-1).unproject(this.camera),c=new H(a,o,1).unproject(this.camera).clone().sub(s).normalize();return new Bo(s,c)}_intersectMeshAtRay(e,t,n){let r=new gm;r.ray.copy(t);let i=r.intersectObject(e,!1);if(!i.length)return null;if(n!=null){let e=i.find(e=>e.instanceId===n);return e?e.point:i[0].point}return i[0].point}_buildPickResult(e,t,n,r){let i=t.mesh.userData,a=null,o=e.batchId,s=e.instanceIndex,c=i.geoRef,l=[];if(s!=null){let e=this._instanceFeature(t.mesh,c,s);if(!e)return null;a=e.smid,o=e.batchId}else{c=i.geoByBatchId?.get(e.batchId)??i.geoRef;let t=Xg(c,e.batchId);a=t.smid,l=t.segments}if(this._isFeatureHidden(a,o))return null;let u=null,d=0;if(s!=null)u=this._instanceBox(t.mesh,s),d=t.mesh.geometry.index?Math.round(t.mesh.geometry.index.count/3):0;else if(a!=null&&this._smidMeshes.has(a)){let e=this._smidMeshes.get(a),t=1/0,n=1/0,r=1/0,i=-1/0,o=-1/0,s=-1/0,c=0;for(let l of e){let e=l.userData,u=e.geoRef?.pickInfo,f=u?.[a]??u?.[String(a)],p=f?Jg(f):-1,m=f?.segments??(p>=0?Xg(e.geoRef,p).segments:[]),h=Zg(l.geometry,m);h&&(h.minX<t&&(t=h.minX),h.minY<n&&(n=h.minY),h.minZ<r&&(r=h.minZ),h.maxX>i&&(i=h.maxX),h.maxY>o&&(o=h.maxY),h.maxZ>s&&(s=h.maxZ),c+=h.count,d+=h.triangles)}c>0&&(u={minX:t,minY:n,minZ:r,maxX:i,maxY:o,maxZ:s,count:c,triangles:d})}if(!u&&(u=Zg(t.mesh.geometry,l),!u&&t.mesh.geometry)){t.mesh.geometry.boundingBox||t.mesh.geometry.computeBoundingBox();let e=t.mesh.geometry.boundingBox;e&&(u={minX:e.min.x,maxX:e.max.x,minY:e.min.y,maxY:e.max.y,minZ:e.min.z,maxZ:e.max.z,count:0,triangles:0})}let f=t.mesh.geometry,p=d>0?d:f.index?Math.round(f.index.count/3):0,m=Qg({smid:a,box:u,triangles:p,floorHeight:this.style.floorHeight}),h=null;if(u&&this.sceneAnchor){let e=new H((u.minX+u.maxX)/2,(u.minY+u.maxY)/2,(u.minZ+u.maxZ)/2);e.applyMatrix4(t.mesh.matrixWorld);let n=this.sceneAnchor.meterInMercator;h=this._lngLatFromWorld(e.x*n+this.sceneAnchor.x,-e.y*n+this.sceneAnchor.y)}let g=n??null;!g&&r&&(g=this._intersectMeshAtRay(t.mesh,r,s));let _=null,v=null,y=null;if(g&&this.sceneAnchor){let e=a==null?{}:this._featureStyleManager.getFeatureEffectiveOffset(a),t=e.translation,n=e.elevation,r=g.clone();t?r.add(new H(t[0],t[1],t[2])):n&&(r.z+=n),_=[r.x,r.y,r.z];let i=this.sceneAnchor.meterInMercator;v=this._lngLatFromWorld(r.x*i+this.sceneAnchor.x,-r.y*i+this.sceneAnchor.y),y=r.z+(this.sceneAnchor.altitude??0)}else h&&u&&this.sceneAnchor&&(v=h,y=(u.minZ+u.maxZ)/2+(this.sceneAnchor.altitude??0));return{datasetId:t.datasetId,datasetName:this.datasets.get(t.datasetId)?.name??t.datasetId,objectId:e.objectId,batchId:o,instanceIndex:s,skeletonName:t.skeletonName,centerLngLat:h,point:_,lngLat:v,altitude:y,...m,mesh:t.mesh}}pick(e,t){if(!this.picker||!this.scene||!this.camera||!this.sceneAnchor)return null;let n=this.picker.pick(this.scene,this.camera,e,t);if(!n)return null;let r=this._pickables.get(n.objectId);if(!r)return null;let i=this.getRayAt(e,t);return this._buildPickResult(n,r,void 0,i??void 0)}pickPosition(e,t){if(!this.camera||!this.sceneAnchor)return null;let n=this.pick(e,t);if(n?.point&&n?.lngLat&&n.altitude!=null)return{lngLat:n.lngLat,altitude:n.altitude,point:n.point};let r=this.getRayAt(e,t);if(!r)return null;let i=new Ac(new H(0,0,1),0),a=new H,o=r.intersectPlane(i,a);if(o){let e=this.sceneAnchor.meterInMercator;return{lngLat:this._lngLatFromWorld(o.x*e+this.sceneAnchor.x,-o.y*e+this.sceneAnchor.y),altitude:o.z+(this.sceneAnchor.altitude??0),point:[o.x,o.y,o.z]}}return null}drillPick(e,t,n=10){if(!this.sceneAnchor||!this.camera)return[];let r=this.getRayAt(e,t);if(!r)return[];let i=new gm;i.ray.copy(r);let a=[...this._pickables.values()].map(e=>e.mesh).filter(e=>{let t=e;for(;t;){if(!t.visible)return!1;t=t.parent}return!0}),o=i.intersectObjects(a,!1);if(!o.length)return[];let s=[],c=new Set,l=new Set;for(let e of o){if(s.length>=n)break;let t=e.object,r=t.userData;if(r.pickId==null)continue;let i=this._pickables.get(r.pickId);if(!i)continue;let a=null,o=-1,u=e.instanceId;if(u!=null){let e=this._instanceFeature(t,r.geoRef,u);if(!e)continue;a=e.smid,o=e.batchId}else if(e.faceIndex!=null){let n=t.geometry.attributes.aBatchId;if(n){let i=t.geometry.index?t.geometry.index.getX(e.faceIndex*3):e.faceIndex*3;o=Math.round(n.getX(i)),a=Xg(r.geoByBatchId?.get(o)??r.geoRef,o).smid}}if(a!=null){if(c.has(a))continue;c.add(a)}else{let e=`${r.pickId}:${o}:${u??-1}`;if(l.has(e))continue;l.add(e)}if(this._isFeatureHidden(a,o))continue;let d={objectId:r.pickId,batchId:o,instanceIndex:u},f=this._buildPickResult(d,i,e.point);f&&s.push(f)}return s}getFeatureBounds(e){if(!this.sceneAnchor)return null;let t=1/0,n=-1/0,r=1/0,i=-1/0,a=!1;for(let o of this._pickables.values()){let s=o.mesh,c=s.userData,l=c.geoRef,u=l?.pickInfo;if(!u)continue;let d=null;if(s.isInstancedMesh){let t=c.instanceLookup;t||(t=Yg(u),c.instanceLookup=t);for(let[n,r]of t)if(r.smid===e){d=this._instanceBox(s,n);break}}else{let t=u,n=t[e]??t[String(e)];if(n){let e=Xg(l,Jg(n));if(d=Zg(s.geometry,e.segments),!d&&s.geometry){s.geometry.boundingBox||s.geometry.computeBoundingBox();let e=s.geometry.boundingBox;e&&(d={minX:e.min.x,maxX:e.max.x,minY:e.min.y,maxY:e.max.y,minZ:e.min.z,maxZ:e.max.z,count:0,triangles:0})}}}if(d){a=!0;let o=[new H(d.minX,d.minY,d.minZ),new H(d.maxX,d.minY,d.minZ),new H(d.minX,d.maxY,d.minZ),new H(d.maxX,d.maxY,d.minZ),new H(d.minX,d.minY,d.maxZ),new H(d.maxX,d.minY,d.maxZ),new H(d.minX,d.maxY,d.maxZ),new H(d.maxX,d.maxY,d.maxZ)],c=e==null?{}:this._featureStyleManager.getFeatureEffectiveOffset(e),l=c.translation,u=c.elevation;for(let e of o){l?e.add(new H(l[0],l[1],l[2])):u&&(e.z+=u),e.applyMatrix4(s.matrixWorld);let a=this.sceneAnchor.meterInMercator,[o,c]=this._lngLatFromWorld(e.x*a+this.sceneAnchor.x,-e.y*a+this.sceneAnchor.y);o<t&&(t=o),o>n&&(n=o),c<r&&(r=c),c>i&&(i=c)}}}return a?[[t,r],[n,i]]:null}_instanceFeature(e,t,n){let r=e.userData;return r.instanceLookup||(r.instanceLookup=Yg(t?.pickInfo)),r.instanceLookup.get(n)??null}_instanceBox(e,t){let n=e;if(!n.isInstancedMesh)return null;let r=e.geometry;r.boundingBox||r.computeBoundingBox();let i=r.boundingBox;if(!i)return null;let a=new U;n.getMatrixAt(t,a);let o=i.clone().applyMatrix4(a);return{minX:o.min.x,minY:o.min.y,minZ:o.min.z,maxX:o.max.x,maxY:o.max.y,maxZ:o.max.z,count:r.getAttribute(`position`)?.count??0,triangles:r.index?Math.round(r.index.count/3):0}}select(e,{silent:t=!1}={}){if(this._selection){for(let e of this._selectedMeshes){if(Xb(e)){this._applyPointCloudStyle(e,!1);continue}let t=Yb(e);t&&(t.userData.uSelBatch.value=-1,t.userData.uSelWhole.value=0)}this._selectedMeshes=[],this._clearSelectionDecoration(),this._selection=null}if(!e){this.uniforms.uSelMix.value=0,this.uniforms.uDim.value=0,this.outlineMaterial.uniforms.uSelBatch.value=-1,this.outlineMaterial.uniforms.uSelWhole.value=0,this.outlineMaterial.uniforms.uElevation.value=0,this._requestRepaint(),t||this.onPick(null);return}this._selection=e;let n=new Set;if(e.smid!=null){let t=this._smidMeshes.get(e.smid);if(t)for(let e of t)n.add(e)}n.add(e.mesh);for(let t of n){let n=Yb(t);if(!n)continue;let r=e.batchId;if(e.instanceIndex!=null&&t===e.mesh)r=e.batchId;else if(e.smid!=null){let n=t.userData.geoRef?.pickInfo,i=n?.[e.smid]??n?.[String(e.smid)],a=i?Jg(i):-1;r=a>=0?a:t===e.mesh?e.batchId:-1}n.userData.uSelBatch.value=r,n.userData.uSelWhole.value=+(r<0),this._selectedMeshes.push(t)}for(let e of this._selectedMeshes)Xb(e)&&this._applyPointCloudStyle(e,!0);if(this.uniforms.uSelMix.value=1,this.uniforms.uDim.value=+!!this.style.dimOthers,this.style.outline){let t=[...n].filter(e=>!Xb(e));t.length&&((this.style.outlineStyle??`edges`)===`edges`?this._addSelectionEdges(e,t):this._addSelectionHull(e,t))}this._requestRepaint()}_addSelectionEdges(e,t){this._syncSelectionStyle();for(let n of t){let t=n.userData,r=t.geoRef,i=[];if(n===e.mesh&&e.instanceIndex!=null)i=[{vertexOffset:0,vertexCount:n.geometry.getAttribute(`position`)?.count??0}];else if(e.smid!=null){let t=r?.pickInfo,n=t?.[e.smid]??t?.[String(e.smid)],a=n?Jg(n):-1;i=n?.segments??(a>=0?Xg(r,a).segments:[])}else n===e.mesh&&(i=Xg(t.geoByBatchId?.get(e.batchId)??r,e.batchId).segments);let a=zb(n.geometry,i);if(a&&a.length>0){let t=new dc(Ib(a),this.selectionEdgeMaterial);t.renderOrder=4,t.frustumCulled=!1,t.raycast=()=>{},t.userData.isSelectionEdge=!0,n===e.mesh&&e.instanceIndex!=null&&this._applyInstanceTransform(t,e),n.add(t),this._selectionEdgeMeshes.push(t)}}this._selectionEdgeMeshes.length===0?this._addSelectionHull(e,t):this._selectionEdges=this._selectionEdgeMeshes[0]??null}_applyInstanceTransform(e,t){let n=t.mesh;if(t.instanceIndex==null||!n.isInstancedMesh)return;let r=new U;n.getMatrixAt(t.instanceIndex,r),r.decompose(e.position,e.quaternion,e.scale)}_addSelectionHull(e,t){let n=e.instanceIndex!=null;this.outlineMaterial.uniforms.uSelBatch.value=n?-1:e.batchId,this.outlineMaterial.uniforms.uSelWhole.value=n||e.batchId<0?1:0,this.outlineMaterial.uniforms.uElevation.value=n?this._selectionElevation(e):this.style.selectElevation??0;for(let n of t){let t=Yb(n);t?.userData?.uBatchTex&&(this.outlineMaterial.uniforms.uBatchTex.value=t.userData.uBatchTex.value,this.outlineMaterial.uniforms.uBatchTexWidth.value=t.userData.uBatchTexWidth.value,this.outlineMaterial.uniforms.uBatchTexActive.value=t.userData.uBatchTexActive.value);let r=new dc(n.geometry,this.outlineMaterial);r.renderOrder=3,r.frustumCulled=!1,r.raycast=()=>{},n===e.mesh&&e.instanceIndex!=null&&this._applyInstanceTransform(r,e),n.add(r),this._outlineMeshes.push(r)}this._outlineMesh=this._outlineMeshes[0]??null}_syncSelectionStyle(){let e=this.style,t=this.selectionEdgeMaterial.uniforms;t.uColor.value.set(e.outlineColor??e.selectColor),t.uWidth.value=Math.max(.1,e.outlineWidthPx??3),t.uOpacity.value=Math.min(1,Math.max(.05,e.opacity??1)),t.uElevation.value=this._selection?this._selectionElevation(this._selection):0;for(let e of this._outlineMeshes){let t=e.parent,n=t?Yb(t)?.userData:null;n?.uBatchTex&&(this.outlineMaterial.uniforms.uBatchTex.value=n.uBatchTex.value,this.outlineMaterial.uniforms.uBatchTexWidth.value=n.uBatchTexWidth.value,this.outlineMaterial.uniforms.uBatchTexActive.value=n.uBatchTexActive.value)}}_selectionElevation(e){let t=this.style.selectElevation??0;if(e.smid!=null){let n=this._featureStyleManager.getFeatureEffectiveOffset(e.smid);n.elevation&&(t+=n.elevation)}return t}_clearSelectionDecoration(){for(let e of this._outlineMeshes)e.parent?.remove(e);this._outlineMeshes=[],this._outlineMesh=null;for(let e of this._selectionEdgeMeshes)e.parent?.remove(e),e.geometry.dispose();this._selectionEdgeMeshes=[],this._selectionEdges=null}_updateLineResolution(e){let t=e.width||1,n=e.height||1,r=e.clientWidth||t;this.lineShared.uResolution.value.set(t,n),this.lineShared.uDpr.value=Math.max(1,t/r)}get lodRangeScale(){return this._lodRangeScale}setLodRangeScale(e,t){if(!(e<=0)){if(t){let n=this.datasets.get(t);n?.tileset&&(n.tileset.lodRangeScale=e)}else{this._lodRangeScale=e;for(let t of this.datasets.values())t.tileset&&(t.tileset.lodRangeScale=e)}this._requestRepaint()}}renderFrame(e){if(!this.renderer||!this.scene||!this.camera||!this.sceneAnchor||!this.canvas)return!1;let t=this.renderer.getContext();if(t&&typeof t.isContextLost==`function`&&t.isContextLost())return!1;this.flushOverrides();let n=this.canvas,r=this.sceneAnchor.meterInMercator;this._enuMatrix.set(r,0,0,this.sceneAnchor.x,0,-r,0,this.sceneAnchor.y,0,0,r,this.sceneAnchor.z,0,0,0,1);let i=new U().fromArray(e.mvp);i.multiply(this._enuMatrix),this.camera.projectionMatrix.copy(i),this.camera.projectionMatrixInverse.copy(i).invert();let a=e.cameraEnu;this.camera.position.set(a[0],a[1],a[2]),this.camera.matrixWorld.setPosition(a[0],a[1],a[2]),this.camera.matrixWorldInverse.copy(this.camera.matrixWorld).invert(),this.groundManager.update(this.camera);let o=!1;for(let t of this.datasets.values()){if(!t.visible||!t.tileset)continue;let n=[a[0]-t.offset[0],a[1]-t.offset[1],a[2]-t.offset[2]];t.tileset.update(n,e.fovRad,e.canvasHeight)&&(o=!0)}this.style.mode===Ty.DYNAMIC&&(this.uniforms.uTime.value+=.016*(this.style.speed??1)),this._updateLights(),this._updateLineResolution(n),this.renderer.setViewport(0,0,n.width,n.height),this.renderer.resetState(),this.renderer.render(this.scene,this.camera),this._frame++;let s=performance.now();return s-this._fps.last>500&&(this._fps.value=Math.round(this._frame*1e3/(s-this._fps.last)),this._frame=0,this._fps.last=s),this.style.mode===Ty.DYNAMIC||this.stats.loading>0||o}get fps(){return this._fps.value}get stats(){let e={tiles:0,loading:0,failed:0,meshes:0,vertices:0,triangles:0,datasets:this.datasets.size};for(let t of this.datasets.values()){let n=t.tileset?.stats;n&&(e.tiles+=n.tiles,e.loading+=n.loading,e.failed+=n.failed,e.meshes+=n.meshes,e.vertices+=n.vertices,e.triangles+=n.triangles)}return e}getBounds(){let e=1/0,t=1/0,n=-1/0,r=-1/0;for(let i of this.datasets.values()){let a=mb(i.tileset?.config?.geoBounds);a&&(e=Math.min(e,a.left),n=Math.max(n,a.right),t=Math.min(t,a.bottom),r=Math.max(r,a.top))}return isFinite(e)?[[e,t],[n,r]]:null}dispose(){this.unmount()}};X(Zb,`_EDGE_SKIP_KEYWORDS`,[`terrain`,`ground`,`vegetation`,`green`,`road`,`dem`,`绿地`,`道路`,`地面`,`地形`,`植被`,`铺装`]),sb(),rh();var Qb=1e-4;function $b(e,t){let n=e.elements;for(let e=0;e<16;e++){let r=Math.max(1,Math.abs(n[e]),Math.abs(t[e]));if(Math.abs(n[e]-t[e])>Qb*r)return!1}return!0}function ex(e){let t=e.elements,n=1;for(let e=0;e<16;e++){let r=Math.abs(t[e]);r>n&&(n=r)}let r=1e-6*n;return Math.abs(t[3])<r&&Math.abs(t[7])<r&&Math.abs(t[11])<r&&Math.abs(t[15]-1)<r}function tx(e,t){return t>0&&Math.abs(e.elements[5]*Math.tan(t/2)-1)<.001}function nx(e){if(!e||typeof e!=`object`)return null;let t=e;return t.defaultProjectionData?.projectionMatrix??t.projectionMatrix??null}function rx(e){let t={nearZ:null,farZ:null};if(!e||typeof e!=`object`)return t;let n=e,r=n.defaultProjectionData,i=e=>{let t=n[e];if(typeof t==`number`&&Number.isFinite(t))return t;let i=r?.[e];return typeof i==`number`&&Number.isFinite(i)?i:null};return{nearZ:i(`nearZ`),farZ:i(`farZ`)}}function ix(e,t){if(e&&typeof e==`object`){let t=e.fov;if(typeof t==`number`&&Number.isFinite(t)&&t>0)return t}return typeof t==`number`&&Number.isFinite(t)&&t>0?t:null}function ax(e,t){let n=e.projectionMatrix;if(!n||n.length<16)return null;let r=new U().fromArray(Array.from(n)),i=new U().fromArray(Array.from(e.mvp));if(r.determinant()===0||!tx(r,t.fov))return null;let a=r.clone().invert().multiply(i);if(!$b(r.clone().multiply(a),Array.from(e.mvp))||!ex(a)||!tx(r,t.fov))return null;let{distance:o,fov:s,aspect:c}=t;if(!(o>0)||!(s>0)||!(c>0))return null;let l=o*Math.tan(s/2),u=l*c,d=e.nearZ!=null&&e.nearZ>0?e.nearZ:1,f=e.farZ!=null&&e.farZ>d?e.farZ:o*4+1e3;f>d||(f=d+1e3);let p=new zc(-u,u,l,-l,d,f);return p.updateProjectionMatrix(),{matrix:p.projectionMatrix.clone().multiply(a),view:a}}var ox=i({AttributeQuery:()=>o_,BinaryReader:()=>sh,DEFAULT_FLOOR_HEIGHT:()=>e_,DEFAULT_STYLE:()=>ky,DatasetManager:()=>Vb,EARTH_RADIUS:()=>s_,FeatureStyleManager:()=>Kb,GroundManager:()=>qb,Picker:()=>jb,PixelFormat:()=>$_,S3MFormatError:()=>Kg,S3MTileset:()=>_b,S3MViewer:()=>Zb,S3M_VERSION:()=>mg,SELECT_MODE:()=>Dy,SELECT_MODE_LABELS:()=>Oy,STYLE:()=>Ty,STYLE_LABELS:()=>Ey,TextureCompress:()=>ev,VertexTag:()=>hg,VertexTagV3:()=>gg,buildAttributes:()=>Qg,buildFeatureEdgeSegments:()=>zb,buildOrthoMVP:()=>ax,buildThickLineGeometry:()=>Ib,buildTileObjects:()=>ib,createLineSharedUniforms:()=>Mb,createOutlineMaterial:()=>wy,createSharedUniforms:()=>Sy,createStyledMaterial:()=>Cy,createTexture:()=>vy,createThickLineMaterial:()=>Fb,default:()=>Zb,dxtPixelFormatOf:()=>Q_,extractFovRadians:()=>ix,extractNearFar:()=>rx,extractProjectionMatrix:()=>nx,isS3M1Buffer:()=>tg,lngLatFromMercator:()=>l_,lngLatFromWorld:()=>d_,measureSegments:()=>Zg,mercatorFromLngLat:()=>c_,parseS3M1:()=>pg,parseS3MB:()=>qg,resolveFeature:()=>Xg,resolveTextureKind:()=>Z_,setMaxAnisotropy:()=>py,worldFromLngLat:()=>u_});t_(),Vy(),xy(),rv(),rh(),t_(),rv(),xy(),Vy(),sb();var sx=globalThis;return sx.THREE||(sx.THREE=a),sx.S3M=ox,e.AttributeQuery=o_,e.BinaryReader=sh,e.DEFAULT_FLOOR_HEIGHT=e_,e.DEFAULT_STYLE=ky,e.DatasetManager=Vb,e.EARTH_RADIUS=s_,e.FeatureStyleManager=Kb,e.GroundManager=qb,e.Picker=jb,e.PixelFormat=$_,e.S3MFormatError=Kg,e.S3MTileset=_b,e.S3MViewer=Zb,e.default=Zb,e.S3M_VERSION=mg,e.SELECT_MODE=Dy,e.SELECT_MODE_LABELS=Oy,e.STYLE=Ty,e.STYLE_LABELS=Ey,e.TextureCompress=ev,e.VertexTag=hg,e.VertexTagV3=gg,e.buildAttributes=Qg,e.buildFeatureEdgeSegments=zb,e.buildOrthoMVP=ax,e.buildThickLineGeometry=Ib,e.buildTileObjects=ib,e.createLineSharedUniforms=Mb,e.createOutlineMaterial=wy,e.createSharedUniforms=Sy,e.createStyledMaterial=Cy,e.createTexture=vy,e.createThickLineMaterial=Fb,e.dxtPixelFormatOf=Q_,e.extractFovRadians=ix,e.extractNearFar=rx,e.extractProjectionMatrix=nx,e.isS3M1Buffer=tg,e.lngLatFromMercator=l_,e.lngLatFromWorld=d_,e.measureSegments=Zg,e.mercatorFromLngLat=c_,e.parseS3M1=pg,e.parseS3MB=qg,e.resolveFeature=Xg,e.resolveTextureKind=Z_,e.setMaxAnisotropy=py,e.worldFromLngLat=u_,e})({});
4425
+ `}),i=new dc(e,r);i.position.set(0,0,-.02),i.renderOrder=-1e3,i.name=`s3m-ground-depth`,i.visible=!1,this.group.add(i),this._depthMesh=i,this._depthMaterial=r,this._syncUniforms()}_applyMode(){this._mesh&&(this._mesh.visible=this.mode!==`none`),this._material&&(this._material.uniforms.uMode.value=this.mode===`excavate`?2:+(this.mode===`translucent`),this._material.depthWrite=this.mode===`excavate`),this._depthMesh&&(this._depthMesh.visible=this.occlude,this._depthMaterial&&(this._depthMaterial.uniforms.uPunchPit.value=+(this.mode===`excavate`)))}update(e){e&&this.group.position.set(e.position.x,e.position.y,this.groundHeight)}setGroundHeight(e){this.groundHeight=e,this.group.position.z=e}setMode(e){this.mode=e,this._occludeExplicit||(this.occlude=e===`excavate`),this._applyMode()}setOcclude(e){this.occlude=e,this._occludeExplicit=!0,this._applyMode()}setOpacity(e){this.opacity=Math.max(0,Math.min(1,e)),this._material&&(this._material.uniforms.uOpacity.value=this.opacity)}setColors(e,t){this.color.set(e),t&&this.gridColor.set(t),this._material&&(this._material.uniforms.uColor.value=this.color,this._material.uniforms.uGridColor.value=this.gridColor)}setExcavationBounds(e){this.excavationBounds=e,this._syncUniforms()}autoFitExcavation(e){let t=1/0,n=1/0,r=-1/0,i=-1/0,a=!1;for(let o of e){let e=o.tileset?.config,s=e?.rootTiles??e?.tiles;if(Array.isArray(s))for(let e of s){let s=e.boundingBox;if(!s)continue;let c=s.center??{x:0,y:0},l=s.xExtent?.x?Math.abs(s.xExtent.x):50,u=s.yExtent?.y?Math.abs(s.yExtent.y):50,d=c.x+o.offset[0]-l,f=c.x+o.offset[0]+l,p=c.y+o.offset[1]-u,m=c.y+o.offset[1]+u;d<t&&(t=d),f>r&&(r=f),p<n&&(n=p),m>i&&(i=m),a=!0}}a&&Number.isFinite(t)&&this.setExcavationBounds([t-5,n-5,r+5,i+5])}_syncUniforms(){let e=this.excavationBounds;if(this._material){let t=this._material.uniforms;e?(t.uHasExcavation.value=1,t.uExcavationMin.value.set(e[0],e[1]),t.uExcavationMax.value.set(e[2],e[3])):t.uHasExcavation.value=0}if(this._depthMaterial){let t=this._depthMaterial.uniforms;e?(t.uHasExcavation.value=1,t.uExcavationMin.value.set(e[0],e[1]),t.uExcavationMax.value.set(e[2],e[3])):t.uHasExcavation.value=0}}dispose(){this._geom?.dispose(),this._geom=null,this._material?.dispose(),this._material=null,this._depthMaterial?.dispose(),this._depthMaterial=null,this._mesh=null,this._depthMesh=null,this.group.clear()}};rh(),wy(),Wy(),t_();var dx=65534;function fx(e){let t=Array.isArray(e.material)?e.material[0]:e.material;return t?.userData?.isStyled?t:null}function px(e){return e.isPoints===!0}var mx=class e{get datasets(){return this._datasetManager.datasets}get sceneAnchor(){return this._datasetManager.sceneAnchor}set sceneAnchor(e){this._datasetManager.sceneAnchor=e}_requestRepaint(){this._onRequestRepaint()}triggerRepaint(){this._requestRepaint()}constructor(e={}){X(this,`options`,void 0),X(this,`pickable`,void 0),X(this,`onStats`,void 0),X(this,`onReady`,void 0),X(this,`onPick`,void 0),X(this,`onError`,void 0),X(this,`geo`,null),X(this,`canvas`,null),X(this,`renderer`,null),X(this,`scene`,null),X(this,`camera`,null),X(this,`picker`,null),X(this,`uniforms`,void 0),X(this,`style`,void 0),X(this,`outlineMaterial`,void 0),X(this,`lineShared`,void 0),X(this,`edgeMaterial`,void 0),X(this,`selectionEdgeMaterial`,void 0),X(this,`groundManager`,void 0),X(this,`_datasetManager`,new ix),X(this,`_featureStyleManager`,void 0),X(this,`_pickables`,new Map),X(this,`_pickSeq`,0),X(this,`_freePickIds`,[]),X(this,`_smidMeshes`,new Map),X(this,`_meshHeight`,new Map),X(this,`_heightMin`,1/0),X(this,`_heightMax`,-1/0),X(this,`_boxScratch`,new ho),X(this,`_selection`,null),X(this,`_selectedMeshes`,[]),X(this,`_outlineMesh`,null),X(this,`_outlineMeshes`,[]),X(this,`_selectionEdges`,null),X(this,`_selectionEdgeMeshes`,[]),X(this,`_edgesEnabled`,!1),X(this,`_creaseLines`,null),X(this,`attributeQuery`,null),X(this,`_enuMatrix`,new U),X(this,`_needsRepaint`,!0),X(this,`_frame`,0),X(this,`_fps`,{value:0,last:0}),X(this,`_ambientLight`,void 0),X(this,`_hemiLight`,void 0),X(this,`_keyLight`,void 0),X(this,`_fillLight`,void 0),X(this,`_lightOptions`,{ambientIntensity:.4,ambientColor:16777215,hemisphereIntensity:.8,hemisphereColor:16777215,hemisphereGroundColor:11976907,keyLightIntensity:1,keyLightColor:16777215,fillLightIntensity:.35,fillLightColor:16777215,mode:`headlamp`,azimuth:150,altitude:50}),X(this,`_datasetQueue`,void 0),X(this,`_onRequestRepaint`,()=>{}),X(this,`_getBearing`,void 0),X(this,`_lodRangeScale`,1),this.options=e,this.pickable=e.pickable!==!1,this._lodRangeScale=e.lodRangeScale??1,e.light&&Object.assign(this._lightOptions,e.light),e.totalMaxTiles&&(this._datasetManager.totalMaxTiles=e.totalMaxTiles),this._onRequestRepaint=e.onRequestRepaint??(()=>{}),this._getBearing=e.getBearing,this.onStats=e.onStats??(()=>{}),this.onReady=e.onReady??(()=>{}),this.onPick=e.onPick??(()=>{}),this.onError=e.onError??(e=>console.warn(`[s3m]`,e)),this.groundManager=new ux(e.ground),this.scene||(this.scene=new Wl,this.scene.add(this.groundManager.group),this._addLights()),this._featureStyleManager=new lx(()=>this.style.floorHeight,()=>this._requestRepaint(),()=>{this._selection&&this._syncSelectionStyle()},()=>this.getAllMeshes(),e=>this._applyOverridesToMesh(e)),this.uniforms=Ty(),gy(g_),this.style={...My,...e.style??{}},this.outlineMaterial=Dy(this.uniforms),this.lineShared=Yb(),this.edgeMaterial=Qb(this.lineShared,{color:this.style.edgeColor,opacity:this.style.edgeOpacity??.45,width:this.style.edgeWidth??1.2}),this.selectionEdgeMaterial=Qb(this.lineShared,{color:this.style.outlineColor??this.style.selectColor,opacity:1,width:this.style.outlineWidthPx??3}),this.setEdges(!!this.style.edges),this._fps.last=performance.now(),this._datasetQueue=this._normalizeDatasets(e),e.attributes&&(this.attributeQuery=new o_(e.attributes))}_createRenderer(e,t){let n=new Vl({canvas:e,context:t,antialias:!0});return n.autoClear=!1,n.setPixelRatio(1),n.toneMapping=4,n.toneMappingExposure=1,n}_syncTextureCapabilities(e){let t=!!e.getExtension(`WEBGL_compressed_texture_s3tc`),n=!!e.getExtension(`WEBGL_compressed_texture_s3tc_srgb`);hy(t&&n)}mount(e,t){this.canvas=e,this.renderer=this._createRenderer(e,t),my(this.renderer.capabilities.getMaxAnisotropy()),this._syncTextureCapabilities(t),this.scene=new Wl,this.scene.add(this.groundManager.group),this._addLights(),this.camera=new _c,this.camera.matrixAutoUpdate=!1,this.picker=new Jb(this.renderer),this._applyStyleUniforms();for(let e of this._datasetQueue)this.addDataset(e).catch(e=>this.onError(e));this._recomputeAnchors()}restoreContext(e){if(!this.canvas)console.warn(`[s3m] restoreContext 调用过早(尚未 mount),按首次挂载处理`);else{try{this.renderer?.dispose()}catch{}this.renderer=this._createRenderer(this.canvas,e),my(this.renderer.capabilities.getMaxAnisotropy()),this._syncTextureCapabilities(e),this.picker?.dispose(),this.picker=new Jb(this.renderer),this._requestRepaint()}}unmount(){for(let e of[...this.datasets.keys()])this.removeDataset(e);this.clearCreases(),this.groundManager.dispose(),this.picker?.dispose(),this.picker=null,this.outlineMaterial.dispose(),this.edgeMaterial.dispose(),this.selectionEdgeMaterial.dispose(),this.scene?.clear(),this._selectedMeshes=[],this._outlineMeshes=[],this._selectionEdgeMeshes=[],this._outlineMesh=null,this._selectionEdges=null,this._smidMeshes.clear(),this._meshHeight.clear(),this._heightMin=1/0,this._heightMax=-1/0,this.renderer?.dispose(),this.renderer=null,this.canvas=null}_createLights(){this._ambientLight=new mp(this._lightOptions.ambientColor,this._lightOptions.ambientIntensity),this._hemiLight=new ep(this._lightOptions.hemisphereColor,this._lightOptions.hemisphereGroundColor,this._lightOptions.hemisphereIntensity),this._keyLight=new pp(this._lightOptions.keyLightColor,this._lightOptions.keyLightIntensity),this._fillLight=new pp(this._lightOptions.fillLightColor,this._lightOptions.fillLightIntensity),this._updateLights()}_addLights(){this.scene&&(this._ambientLight||this._createLights(),this.scene.add(this._ambientLight,this._hemiLight,this._keyLight,this._fillLight))}_applyLightOptions(){this._ambientLight&&(this._ambientLight.intensity=this._lightOptions.ambientIntensity,this._ambientLight.color.set(this._lightOptions.ambientColor)),this._hemiLight&&(this._hemiLight.intensity=this._lightOptions.hemisphereIntensity,this._hemiLight.color.set(this._lightOptions.hemisphereColor),this._hemiLight.groundColor.set(this._lightOptions.hemisphereGroundColor)),this._keyLight&&(this._keyLight.intensity=this._lightOptions.keyLightIntensity,this._keyLight.color.set(this._lightOptions.keyLightColor)),this._fillLight&&(this._fillLight.intensity=this._lightOptions.fillLightIntensity,this._fillLight.color.set(this._lightOptions.fillLightColor))}setLight(e){Object.assign(this._lightOptions,e),this._applyLightOptions(),this._updateLights(),this._needsRepaint=!0,this.triggerRepaint()}getLight(){return{...this._lightOptions}}_updateLights(){if(!this._keyLight||!this._fillLight)return;let e=this._lightOptions.mode===`fixed`?0:(this._getBearing?.()??0)*Math.PI/180,t=(t,n,r)=>{if(!t)return;let i=e+n*Math.PI/180,a=r*Math.PI/180,o=Math.cos(a);t.position.set(Math.sin(i)*o,Math.cos(i)*o,Math.sin(a)).multiplyScalar(1e3)};t(this._keyLight,this._lightOptions.azimuth,this._lightOptions.altitude),t(this._fillLight,this._lightOptions.azimuth+65,Math.max(10,this._lightOptions.altitude-20))}_normalizeDatasets(e){return Array.isArray(e.datasets)?e.datasets.filter(e=>!!e?.configUrl):e.configUrl?[{id:`default`,name:`默认数据集`,configUrl:e.configUrl,useWorker:e.useWorker}]:[]}async addDataset(e){if(!this.scene)throw Error(`[s3m] 图层尚未 addLayer,不能添加数据集`);return await this._datasetManager.addDataset(e,this.scene,this.geo,this.uniforms,this._lodRangeScale,this.options.buildTile,this.options.maxTiles??64,this.options.maxConcurrent??4,{onTile:(e,t)=>{this._registerTile(e,t),this.onStats(this.stats),this._needsRepaint=!0,this._requestRepaint()},onTileRemoved:(e,t)=>{this._unregisterTile(e,t),this.onStats(this.stats),this._needsRepaint=!0,this._requestRepaint()},onStats:()=>{this.onStats(this.stats),this._requestRepaint()},onError:e=>{this.onError(e),this.onStats(this.stats)},onReady:e=>{this.onReady(e),this._refreshAllHeights(),this.groundManager.excavationBounds||this.groundManager.autoFitExcavation(this.datasets.values())},triggerRepaint:()=>{this._requestRepaint()}})}_lngLatFromWorld(e,t){return d_(this.geo,e,t)}recomputeAnchors(){this._datasetManager.recomputeAnchors(this.geo),this._refreshAllHeights(),this._requestRepaint()}_recomputeAnchors(){this.recomputeAnchors()}getDatasetHeight(e){return this._datasetManager.getDatasetHeight(e)}setDatasetHeight(e,t){let n,r;typeof e==`number`?(n=this.datasets.keys().next().value??``,r=e):(n=e,r=t??0),this._datasetManager.setDatasetHeight(n,r,this.geo),this._syncGroundHeight(),this._refreshAllHeights(),this._requestRepaint()}_syncGroundHeight(){if(!this.groundManager.trackHeight)return;let e=this.datasets.keys().next().value;if(!e)return;let t=this._datasetManager.getDatasetHeight(e);this.groundManager.setGroundHeight(t)}setDatasetAlign(e,t){let n,r;t===void 0&&(e===`origin`||e===`bottom`||e===`top`||e===`center`)?(n=this.datasets.keys().next().value??``,r=e):(n=e,r=t??`origin`),this._datasetManager.setDatasetAlign(n,r,this.geo),this._refreshAllHeights(),this._requestRepaint()}_computeAlignOffset(e,t){return this._datasetManager.computeAlignOffset(e,t)}computeAlignOffset(e,t){return this._datasetManager.computeAlignOffset(e,t)}setFeatureStyle(e,t){this._featureStyleManager.setFeatureStyle(e,t,this._meshesOf([e]))}setFeaturesStyle(e,t){this._featureStyleManager.setFeaturesStyle(e,t,this._meshesOf(e))}getFeatureStyle(e){return this._featureStyleManager.getFeatureStyle(e)}getFeatureStyles(){return this._featureStyleManager.getFeatureStyles()}removeFeatureStyle(e){this._featureStyleManager.removeFeatureStyle(e,this._meshesOf([e]))}clearFeatureStyles(){this._featureStyleManager.clearFeatureStyles()}setAttributeSource(e){this.attributeQuery=e?new o_(e):null}getLoadedSmids(){return[...this._smidMeshes.keys()]}auditBatches(){let e=this._featureStyleManager.auditBatches(this._pickables.values());return e.smids=this._smidMeshes.size,e}getThematicField(){return this._featureStyleManager.thematicField}setThematicColors(e,t=`custom`){this._featureStyleManager.setThematicColors(e,t)}clearThematic(){this._featureStyleManager.clearThematicColors()}getFilterField(){return this._featureStyleManager.fieldFilter?.field??null}filterByField(e){return this._featureStyleManager.filterByField(e,this.attributeQuery,this.getLoadedSmids())}clearFieldFilter(){this._featureStyleManager.clearFieldFilter()}getElevationField(){return this._featureStyleManager.elevationField}elevateByField(e){return this._featureStyleManager.elevateByField(e,this.attributeQuery,this.getLoadedSmids())}setThematicElevation(e,t=`custom`){this._featureStyleManager.setThematicElevation(e,t)}clearThematicElevation(){this._featureStyleManager.clearThematicElevation()}colorByField(e){return this._featureStyleManager.colorByField(e,this.attributeQuery,this.getLoadedSmids())}setFilter(e){this._featureStyleManager.setFilter(e,this.uniforms)}getFilter(){return this._featureStyleManager.filter}clearFilter(){this._featureStyleManager.clearFilter(this.uniforms)}setGroundMode(e){this.groundManager.setMode(e),this._requestRepaint()}setGroundOpacity(e){this.groundManager.setOpacity(e),this._requestRepaint()}setExcavationBounds(e){this.groundManager.setExcavationBounds(e),this._requestRepaint()}setGroundOcclude(e){this.groundManager.setOcclude(e),this._requestRepaint()}_isFeatureHidden(e,t){if(e==null)return!1;let n=this._featureStyleManager.fieldFilter;if(n){let t=n.matched.has(e);if(n.mode===`keep`?!t:t)return!0}let r=this._featureStyleManager.filter;return!!(r&&(r.include&&r.include.length>0&&!r.include.includes(e)||r.exclude&&r.exclude.length>0&&r.exclude.includes(e))||this._featureStyleManager.featureStyles.get(e)?.hidden)}getAllMeshes(){let e=[];for(let t of this._pickables.values())e.push(t.mesh);return e}_meshesOf(e){let t=new Set;for(let n of e){let e=this._smidMeshes.get(n);if(e)for(let n of e)t.add(n)}return t}_markOverridesDirty(e=`all`){e===`all`?this._featureStyleManager.markOverridesDirty(void 0,this.getAllMeshes()):this._featureStyleManager.markOverridesDirty(e)}flushOverrides(){this._featureStyleManager.flushOverrides()}_applyOverridesToMesh(e){this._featureStyleManager.applyOverridesToMesh(e)}removeDataset(e){if(this.datasets.get(e)){this._selection?.datasetId===e&&this.select(null),this._datasetManager.removeDataset(e,this.scene,this.geo,e=>{e.root.traverse(e=>{let t=e,n=t.userData;n.pickId!=null&&(this._pickables.delete(n.pickId),this._releasePickId(n.pickId),n.pickId=void 0),this._unindexMeshSmids(t),this._removeMeshHeight(t),t.geometry?.dispose?.();let r=fx(t);r&&r.dispose(),Hb(t.material)&&t.material.dispose(),this._featureStyleManager.disposeMesh(t)})});for(let[t,n]of this._pickables)n.datasetId===e&&this._pickables.delete(t);this.onStats(this.stats),this._requestRepaint()}}clearDatasets(){for(let e of[...this.datasets.keys()])this.removeDataset(e)}setDatasetVisible(e,t){this._datasetManager.setDatasetVisible(e,t),!t&&this._selection?.datasetId===e&&this.select(null),this._requestRepaint()}_registerTile(e,t){t.root.add(e.group),e.group.updateMatrixWorld(!0);let n=e.group.userData.hasNativeEdges===!0;for(let r of e.group.children){if(r.isLineSegments&&r.userData.isEdgeLines){r.visible=this._edgesEnabled,this._styleEdgeLine(r);continue}let i=px(r),a=r;if(!a.isMesh&&!i)continue;let o=a.userData;if(o.pickId=this._allocPickId(),o.datasetId=t.id,o.nativeEdges=n,this._pickables.set(o.pickId,{datasetId:t.id,mesh:a,tile:e.tile,skeletonName:o.skeletonName??``}),this._indexMeshSmids(a),this._addMeshHeight(a),!n&&!i&&this._datasetEdgesEnabled(t)&&!this._shouldSkipAutoEdges(o,t.name)&&this._ensureEdges(a),i)this._applyPointCloudStyle(r);else{let e=fx(a);if(e){let t=Math.min(1,Math.max(.05,this.style.opacity??1));e.opacity=t,e.transparent=t<.999,e.depthWrite=t>=.999,e.flatShading=this.style.shading!==`smooth`,e.needsUpdate=!0,this._featureStyleManager.applyOverridesToMesh(a)}}this._replaySelectionOnto(a)}}_isMeshCoveringSelection(e,t){if(!t.point)return!1;let n=e.geometry;if(!n||(n.boundingBox||n.computeBoundingBox(),!n.boundingBox))return!1;let r=new H(t.point[0],t.point[1],t.point[2]);e.updateWorldMatrix(!0,!1);let i=e.matrixWorld.clone().invert(),a=r.applyMatrix4(i);return n.boundingBox.clone().expandByScalar(.5).containsPoint(a)}_replaySelectionOnto(e){let t=this._selection;if(!t)return;let n=fx(e);if(!n)return;let r=e.userData,i=-1;if(t.smid!=null){let e=r.geoRef?.pickInfo,n=e?.[t.smid]??e?.[String(t.smid)];i=n?Jg(n):-1}if(e===t.mesh&&(i=t.batchId),i<0&&e!==t.mesh){if(t.smid==null&&r.datasetId===t.datasetId&&this._isMeshCoveringSelection(e,t))i=-1;else return}n.userData.uSelBatch.value=i,n.userData.uSelWhole.value=+(i<0),this._selectedMeshes.includes(e)||this._selectedMeshes.push(e),px(e)&&this._applyPointCloudStyle(e,!0),this.uniforms.uSelMix.value=1,this.uniforms.uDim.value=+!!this.style.dimOthers}_unregisterTile(e,t){e.group.traverse(e=>{let t=e;if(t.userData?.pickId!=null&&(this._pickables.delete(t.userData.pickId),this._releasePickId(t.userData.pickId),t.userData.pickId=void 0),t.isMesh){this._selectedMeshes.includes(t)&&(this._selectedMeshes=this._selectedMeshes.filter(e=>e!==t));let e=this._selection;if(e&&e.mesh===t){let n=e.smid,r=n==null?this._selectedMeshes.find(e=>e!==t&&e.parent&&e.parent.visible)??this._selectedMeshes.find(e=>e!==t&&e.parent):[...this._smidMeshes.get(n)??[]].find(e=>e!==t&&e.parent);r?(this._selection={...e,mesh:r},this._replaySelectionOnto(r)):this.select(null)}this._unindexMeshSmids(t),this._removeMeshHeight(t),this._featureStyleManager.disposeMesh(t),fx(t)?.dispose?.()}Hb(t.material)?t.material.dispose():t.material&&(Array.isArray(t.material)?t.material.forEach(e=>e?.dispose?.()):t.material.dispose?.()),t.geometry?.dispose?.()}),t.root.remove(e.group)}_allocPickId(){let e=this._freePickIds.pop();if(e!==void 0)return e;if(this._pickSeq>dx){for(let e=0;e<=dx;e++)if(!this._pickables.has(e))return e;throw Error(`[s3m] 可拾取网格超过 65535 个,2 字节 ID 编码不够用`)}return this._pickSeq++}_releasePickId(e){this._freePickIds.push(e)}setOpacity(e){this.setStyle({opacity:e})}setStyle(e={}){this.style={...this.style,...e},this._applyStyleUniforms(),(`opacity`in e||`depthWrite`in e)&&this._applyOpacity(),`mode`in e&&this._applyPointCloudStyles(),`shading`in e&&this._applyShading(),`edgeThreshold`in e&&this._edgesEnabled?this.setEdges(!0):`edges`in e?this.setEdges(!!this.style.edges):(`edgeColor`in e||`edgeWidth`in e||`opacity`in e||`edgeOpacity`in e)&&this._refreshEdgeLines(),this._selection&&(`outline`in e||`outlineStyle`in e?this.select(this._selection,{silent:!0}):this._syncSelectionStyle()),this._requestRepaint()}getStyle(){return{...this.style,modeLabel:ky[this.style.mode]}}_applyStyleUniforms(){let e=this.uniforms,t=this.style;e.uMode.value=t.mode,e.uColorA.value.set(t.colorA),e.uColorB.value.set(t.colorB),e.uColorC.value.set(t.colorC),e.uSelColor.value.set(t.selectColor),e.uFloorHeight.value=t.floorHeight;let n=t.selectMode??Ay.OVERLAY;e.uSelMode&&(e.uSelMode.value=n===Ay.REPLACE?0:n===Ay.MULTIPLY?2:n===Ay.GLOW_ONLY?3:1),e.uSelOpacity&&t.selectOpacity!=null&&(e.uSelOpacity.value=t.selectOpacity),e.uSelEmissive&&t.selectEmissive!=null&&(e.uSelEmissive.value=t.selectEmissive),e.uSelElevation&&t.selectElevation!=null&&(e.uSelElevation.value=t.selectElevation),e.uDimFactor&&t.dimFactor!=null&&(e.uDimFactor.value=t.dimFactor),e.uRoofThreshold&&t.roofThreshold!=null&&(e.uRoofThreshold.value=t.roofThreshold),e.uTexMix&&t.texMix!=null&&(e.uTexMix.value=t.texMix),this.outlineMaterial&&(this.outlineMaterial.uniforms.uElevation&&t.selectElevation!=null&&(this.outlineMaterial.uniforms.uElevation.value=t.selectElevation),t.outlineWidth!=null&&(this.outlineMaterial.uniforms.uWidth.value=t.outlineWidth),t.outlineColor==null?this.outlineMaterial.uniforms.uColor.value.set(t.selectColor):this.outlineMaterial.uniforms.uColor.value.set(t.outlineColor))}_applyOpacity(){let e=Math.min(1,Math.max(.05,this.style.opacity??1)),t=e<.999,n=this.style.depthWrite!==!1;for(let r of this._pickables.values()){if(px(r.mesh)){this._applyPointCloudStyle(r.mesh);continue}let i=fx(r.mesh);i&&(i.opacity=e,i.transparent=t,i.depthWrite=!t||n)}this._requestRepaint()}_applyPointCloudStyle(e,t=this._selectedMeshes.includes(e)){Vb(e,this.style,this.uniforms,t)}_applyPointCloudStyles(){for(let e of this._pickables.values())px(e.mesh)&&this._applyPointCloudStyle(e.mesh);this._requestRepaint()}_applyShading(){let e=this.style.shading!==`smooth`;for(let t of this._pickables.values()){let n=fx(t.mesh);n&&n.flatShading!==e&&(n.flatShading=e,n.needsUpdate=!0)}this._requestRepaint()}_addMeshHeight(e){let t=e.geometry?.boundingBox;if(!t)return;this._boxScratch.copy(t).applyMatrix4(e.matrixWorld);let n=this._boxScratch.min.z,r=this._boxScratch.max.z;Number.isFinite(n)&&Number.isFinite(r)&&(this._meshHeight.set(e,{min:n,max:r}),n<this._heightMin&&(this._heightMin=n),r>this._heightMax&&(this._heightMax=r),this._pushHeightRange())}_removeMeshHeight(e){let t=this._meshHeight.get(e);t&&(this._meshHeight.delete(e),t.min===this._heightMin||t.max===this._heightMax?this._recomputeHeightRange():this._pushHeightRange())}_refreshAllHeights(){if(this._meshHeight.size===0)return;let e=[...this._meshHeight.keys()];this._meshHeight.clear(),this._heightMin=1/0,this._heightMax=-1/0;for(let t of e)this._addMeshHeight(t);this._pushHeightRange()}_recomputeHeightRange(){let e=1/0,t=-1/0;for(let n of this._meshHeight.values())n.min<e&&(e=n.min),n.max>t&&(t=n.max);this._heightMin=e,this._heightMax=t,this._pushHeightRange()}_pushHeightRange(){let e=this._heightMin,t=this._heightMax;(!Number.isFinite(e)||!Number.isFinite(t)||t<=e)&&(e=0,t=100),this.uniforms.uHeightMin.value=e,this.uniforms.uHeightMax.value=t}_indexMeshSmids(e){let t=e.userData.geoRef?.pickInfo;if(t)for(let n of Object.keys(t)){let t=Number(n);if(!Number.isFinite(t)||t<0)continue;let r=this._smidMeshes.get(t);r||this._smidMeshes.set(t,r=new Set),r.add(e)}}_unindexMeshSmids(e){let t=e.userData.geoRef?.pickInfo;if(t)for(let n of Object.keys(t)){let t=Number(n),r=this._smidMeshes.get(t);r&&(r.delete(e),r.size===0&&this._smidMeshes.delete(t))}}setEdges(e){this._edgesEnabled=e,this.style.edges=e;for(let t of this.datasets.values())t.root.traverse(t=>{t.userData.isEdgeLines&&(t.visible=e,this._styleEdgeLine(t))});if(this._syncEdgeStyle(),!e){for(let e of this._pickables.values())this._removeEdges(e.mesh);this._requestRepaint();return}let t=[...this._pickables.values()].map(e=>e.mesh).filter(e=>{let t=e.userData;return!t.edges&&!t.nativeEdges&&!px(e)}),n=0,r=()=>{let e=performance.now();for(;n<t.length&&performance.now()-e<8;)this._ensureEdges(t[n++]);n<t.length?setTimeout(r,0):this._requestRepaint()};r()}async loadCreases(e){let t=await fetch(e);if(!t.ok)throw Error(`[s3m] 棱线缓存加载失败: ${t.status} ${e}`);let n=await t.arrayBuffer(),r=new Float32Array(n);if(r.length<6)return;let i=new q;i.setAttribute(`position`,new G(r,3));let a=this.style,o=new Qu({color:new W(a.edgeColor),transparent:!0,opacity:Math.min(1,Math.max(0,a.edgeOpacity??.6))*Math.min(1,Math.max(.05,a.opacity??1)),depthWrite:!1}),s=new ld(i,o);s.renderOrder=2,s.frustumCulled=!1,s.raycast=()=>{},this.clearCreases(),this._creaseLines=s,this.scene?.add(s),this._requestRepaint()}clearCreases(){this._creaseLines&&(this.scene?.remove(this._creaseLines),this._creaseLines.geometry.dispose(),this._creaseLines.material?.dispose?.(),this._creaseLines=null,this._requestRepaint())}_syncEdgeStyle(){let e=this.style,t=this.edgeMaterial.uniforms;if(t.uColor.value.set(e.edgeColor),t.uWidth.value=Math.max(.1,e.edgeWidth??1.5),t.uOpacity.value=Math.min(1,Math.max(0,e.edgeOpacity??.6))*Math.min(1,Math.max(.05,e.opacity??1)),this._creaseLines){let t=this._creaseLines.material;t.color.set(e.edgeColor),t.opacity=Math.min(1,Math.max(0,e.edgeOpacity??.6))*Math.min(1,Math.max(.05,e.opacity??1))}}_styleEdgeLine(e){let t=e.material;t&&t.color&&(t.color.set(this.style.edgeColor),t.opacity=(this.style.edgeOpacity??.6)*Math.min(1,Math.max(.05,this.style.opacity??1)),t.transparent=!0,t.polygonOffset=!0,t.polygonOffsetFactor=-1,t.polygonOffsetUnits=-1,t.needsUpdate=!0)}_refreshEdgeLines(){this._syncEdgeStyle();for(let e of this.datasets.values())e.root.traverse(e=>{e.userData.isEdgeLines&&this._styleEdgeLine(e)})}_datasetEdgesEnabled(e){let t=e.options?.enableEdges;return t===!0||t!==!1&&this._edgesEnabled}_shouldSkipAutoEdges(t,n){let r=`${t.skeletonName??``} ${n}`.toLowerCase();return e._EDGE_SKIP_KEYWORDS.some(e=>r.includes(e))}_ensureEdges(e){let t=e.userData;if(t.edges||t.nativeEdges||!e.geometry||this._shouldSkipAutoEdges(t,``))return;let n=e.geometry.getAttribute(`position`);if((e.geometry.index?.count??(n?n.count:0))>12e4)return;let r=rx(e.geometry,.005),i=this.style.edgeThreshold??55,a=new Qd(r,i);r.dispose();let o=a.getAttribute(`position`),s=o?o.array:null;if(a.dispose(),!s||s.length<6)return;let c=new dc($b(s),this.edgeMaterial);c.renderOrder=2,c.frustumCulled=!1,c.raycast=()=>{},c.userData.isThickEdge=!0,t.edges=c,e.add(c)}_removeEdges(e){let t=e.userData,n=t.edges;n&&(e.remove(n),n.geometry?.dispose(),t.edges=null)}getRayAt(e,t){if(!this.camera||!this.canvas)return null;let n=this.canvas,r=n.clientWidth||n.width,i=n.clientHeight||n.height;if(!r||!i)return null;let a=e/r*2-1,o=-(t/i)*2+1,s=new H(a,o,-1).unproject(this.camera),c=new H(a,o,1).unproject(this.camera).clone().sub(s).normalize();return new Bo(s,c)}_intersectMeshAtRay(e,t,n){let r=new gm;r.ray.copy(t);let i=r.intersectObject(e,!1);if(!i.length)return null;if(n!=null){let e=i.find(e=>e.instanceId===n);return e?e.point:i[0].point}return i[0].point}_buildPickResult(e,t,n,r){let i=t.mesh.userData,a=null,o=e.batchId,s=e.instanceIndex,c=i.geoRef,l=[];if(s!=null){let e=this._instanceFeature(t.mesh,c,s);if(!e)return null;a=e.smid,o=e.batchId}else{c=i.geoByBatchId?.get(e.batchId)??i.geoRef;let t=Xg(c,e.batchId);a=t.smid,l=t.segments}if(this._isFeatureHidden(a,o))return null;let u=null,d=0;if(s!=null)u=this._instanceBox(t.mesh,s),d=t.mesh.geometry.index?Math.round(t.mesh.geometry.index.count/3):0;else if(a!=null&&this._smidMeshes.has(a)){let e=this._smidMeshes.get(a),t=1/0,n=1/0,r=1/0,i=-1/0,o=-1/0,s=-1/0,c=0;for(let l of e){let e=l.userData,u=e.geoRef?.pickInfo,f=u?.[a]??u?.[String(a)],p=f?Jg(f):-1,m=f?.segments??(p>=0?Xg(e.geoRef,p).segments:[]),h=Zg(l.geometry,m);h&&(h.minX<t&&(t=h.minX),h.minY<n&&(n=h.minY),h.minZ<r&&(r=h.minZ),h.maxX>i&&(i=h.maxX),h.maxY>o&&(o=h.maxY),h.maxZ>s&&(s=h.maxZ),c+=h.count,d+=h.triangles)}c>0&&(u={minX:t,minY:n,minZ:r,maxX:i,maxY:o,maxZ:s,count:c,triangles:d})}if(!u&&(u=Zg(t.mesh.geometry,l),!u&&t.mesh.geometry)){t.mesh.geometry.boundingBox||t.mesh.geometry.computeBoundingBox();let e=t.mesh.geometry.boundingBox;e&&(u={minX:e.min.x,maxX:e.max.x,minY:e.min.y,maxY:e.max.y,minZ:e.min.z,maxZ:e.max.z,count:0,triangles:0})}let f=t.mesh.geometry,p=d>0?d:f.index?Math.round(f.index.count/3):0,m=Qg({smid:a,box:u,triangles:p,floorHeight:this.style.floorHeight}),h=null;if(u&&this.sceneAnchor){let e=new H((u.minX+u.maxX)/2,(u.minY+u.maxY)/2,(u.minZ+u.maxZ)/2);e.applyMatrix4(t.mesh.matrixWorld);let n=this.sceneAnchor.meterInMercator;h=this._lngLatFromWorld(e.x*n+this.sceneAnchor.x,-e.y*n+this.sceneAnchor.y)}let g=n??null;!g&&r&&(g=this._intersectMeshAtRay(t.mesh,r,s));let _=null,v=null,y=null;if(g&&this.sceneAnchor){let e=a==null?{}:this._featureStyleManager.getFeatureEffectiveOffset(a),t=e.translation,n=e.elevation,r=g.clone();t?r.add(new H(t[0],t[1],t[2])):n&&(r.z+=n),_=[r.x,r.y,r.z];let i=this.sceneAnchor.meterInMercator;v=this._lngLatFromWorld(r.x*i+this.sceneAnchor.x,-r.y*i+this.sceneAnchor.y),y=r.z+(this.sceneAnchor.altitude??0)}else h&&u&&this.sceneAnchor&&(v=h,y=(u.minZ+u.maxZ)/2+(this.sceneAnchor.altitude??0));return{datasetId:t.datasetId,datasetName:this.datasets.get(t.datasetId)?.name??t.datasetId,objectId:e.objectId,batchId:o,instanceIndex:s,skeletonName:t.skeletonName,centerLngLat:h,point:_,lngLat:v,altitude:y,...m,mesh:t.mesh}}pick(e,t){if(!this.picker||!this.scene||!this.camera||!this.sceneAnchor)return null;let n=this.picker.pick(this.scene,this.camera,e,t);if(!n)return null;let r=this._pickables.get(n.objectId);if(!r)return null;let i=this.getRayAt(e,t);return this._buildPickResult(n,r,void 0,i??void 0)}pickPosition(e,t){if(!this.camera||!this.sceneAnchor)return null;let n=this.pick(e,t);if(n?.point&&n?.lngLat&&n.altitude!=null)return{lngLat:n.lngLat,altitude:n.altitude,point:n.point};let r=this.getRayAt(e,t);if(!r)return null;let i=new Ac(new H(0,0,1),0),a=new H,o=r.intersectPlane(i,a);if(o){let e=this.sceneAnchor.meterInMercator;return{lngLat:this._lngLatFromWorld(o.x*e+this.sceneAnchor.x,-o.y*e+this.sceneAnchor.y),altitude:o.z+(this.sceneAnchor.altitude??0),point:[o.x,o.y,o.z]}}return null}drillPick(e,t,n=10){if(!this.sceneAnchor||!this.camera)return[];let r=this.getRayAt(e,t);if(!r)return[];let i=new gm;i.ray.copy(r);let a=[...this._pickables.values()].map(e=>e.mesh).filter(e=>{let t=e;for(;t;){if(!t.visible)return!1;t=t.parent}return!0}),o=i.intersectObjects(a,!1);if(!o.length)return[];let s=[],c=new Set,l=new Set;for(let e of o){if(s.length>=n)break;let t=e.object,r=t.userData;if(r.pickId==null)continue;let i=this._pickables.get(r.pickId);if(!i)continue;let a=null,o=-1,u=e.instanceId;if(u!=null){let e=this._instanceFeature(t,r.geoRef,u);if(!e)continue;a=e.smid,o=e.batchId}else if(e.faceIndex!=null){let n=t.geometry.attributes.aBatchId;if(n){let i=t.geometry.index?t.geometry.index.getX(e.faceIndex*3):e.faceIndex*3;o=Math.round(n.getX(i)),a=Xg(r.geoByBatchId?.get(o)??r.geoRef,o).smid}}if(a!=null){if(c.has(a))continue;c.add(a)}else{let e=`${r.pickId}:${o}:${u??-1}`;if(l.has(e))continue;l.add(e)}if(this._isFeatureHidden(a,o))continue;let d={objectId:r.pickId,batchId:o,instanceIndex:u},f=this._buildPickResult(d,i,e.point);f&&s.push(f)}return s}getFeatureBounds(e){if(!this.sceneAnchor)return null;let t=1/0,n=-1/0,r=1/0,i=-1/0,a=!1;for(let o of this._pickables.values()){let s=o.mesh,c=s.userData,l=c.geoRef,u=l?.pickInfo;if(!u)continue;let d=null;if(s.isInstancedMesh){let t=c.instanceLookup;t||(t=Yg(u),c.instanceLookup=t);for(let[n,r]of t)if(r.smid===e){d=this._instanceBox(s,n);break}}else{let t=u,n=t[e]??t[String(e)];if(n){let e=Xg(l,Jg(n));if(d=Zg(s.geometry,e.segments),!d&&s.geometry){s.geometry.boundingBox||s.geometry.computeBoundingBox();let e=s.geometry.boundingBox;e&&(d={minX:e.min.x,maxX:e.max.x,minY:e.min.y,maxY:e.max.y,minZ:e.min.z,maxZ:e.max.z,count:0,triangles:0})}}}if(d){a=!0;let o=[new H(d.minX,d.minY,d.minZ),new H(d.maxX,d.minY,d.minZ),new H(d.minX,d.maxY,d.minZ),new H(d.maxX,d.maxY,d.minZ),new H(d.minX,d.minY,d.maxZ),new H(d.maxX,d.minY,d.maxZ),new H(d.minX,d.maxY,d.maxZ),new H(d.maxX,d.maxY,d.maxZ)],c=e==null?{}:this._featureStyleManager.getFeatureEffectiveOffset(e),l=c.translation,u=c.elevation;for(let e of o){l?e.add(new H(l[0],l[1],l[2])):u&&(e.z+=u),e.applyMatrix4(s.matrixWorld);let a=this.sceneAnchor.meterInMercator,[o,c]=this._lngLatFromWorld(e.x*a+this.sceneAnchor.x,-e.y*a+this.sceneAnchor.y);o<t&&(t=o),o>n&&(n=o),c<r&&(r=c),c>i&&(i=c)}}}return a?[[t,r],[n,i]]:null}_instanceFeature(e,t,n){let r=e.userData;return r.instanceLookup||(r.instanceLookup=Yg(t?.pickInfo)),r.instanceLookup.get(n)??null}_instanceBox(e,t){let n=e;if(!n.isInstancedMesh)return null;let r=e.geometry;r.boundingBox||r.computeBoundingBox();let i=r.boundingBox;if(!i)return null;let a=new U;n.getMatrixAt(t,a);let o=i.clone().applyMatrix4(a);return{minX:o.min.x,minY:o.min.y,minZ:o.min.z,maxX:o.max.x,maxY:o.max.y,maxZ:o.max.z,count:r.getAttribute(`position`)?.count??0,triangles:r.index?Math.round(r.index.count/3):0}}select(e,{silent:t=!1}={}){if(this._selection){for(let e of this._selectedMeshes){if(px(e)){this._applyPointCloudStyle(e,!1);continue}let t=fx(e);t&&(t.userData.uSelBatch.value=-1,t.userData.uSelWhole.value=0)}this._selectedMeshes=[],this._clearSelectionDecoration(),this._selection=null}if(!e){this.uniforms.uSelMix.value=0,this.uniforms.uDim.value=0,this.outlineMaterial.uniforms.uSelBatch.value=-1,this.outlineMaterial.uniforms.uSelWhole.value=0,this.outlineMaterial.uniforms.uElevation.value=0,this._requestRepaint(),t||this.onPick(null);return}this._selection=e;let n=new Set;if(e.smid!=null){let t=this._smidMeshes.get(e.smid);if(t)for(let e of t)n.add(e)}n.add(e.mesh);for(let t of n){let n=fx(t);if(!n)continue;let r=e.batchId;if(e.instanceIndex!=null&&t===e.mesh)r=e.batchId;else if(e.smid!=null){let n=t.userData.geoRef?.pickInfo,i=n?.[e.smid]??n?.[String(e.smid)],a=i?Jg(i):-1;r=a>=0?a:t===e.mesh?e.batchId:-1}n.userData.uSelBatch.value=r,n.userData.uSelWhole.value=+(r<0),this._selectedMeshes.push(t)}for(let e of this._selectedMeshes)px(e)&&this._applyPointCloudStyle(e,!0);if(this.uniforms.uSelMix.value=1,this.uniforms.uDim.value=+!!this.style.dimOthers,this.style.outline){let t=[...n].filter(e=>!px(e));t.length&&((this.style.outlineStyle??`edges`)===`edges`?this._addSelectionEdges(e,t):this._addSelectionHull(e,t))}this._requestRepaint()}_addSelectionEdges(e,t){this._syncSelectionStyle();for(let n of t){let t=n.userData,r=t.geoRef,i=[];if(n===e.mesh&&e.instanceIndex!=null)i=[{vertexOffset:0,vertexCount:n.geometry.getAttribute(`position`)?.count??0}];else if(e.smid!=null){let t=r?.pickInfo,n=t?.[e.smid]??t?.[String(e.smid)],a=n?Jg(n):-1;i=n?.segments??(a>=0?Xg(r,a).segments:[])}else n===e.mesh&&(i=Xg(t.geoByBatchId?.get(e.batchId)??r,e.batchId).segments);let a=nx(n.geometry,i);if(a&&a.length>0){let t=new dc($b(a),this.selectionEdgeMaterial);t.renderOrder=4,t.frustumCulled=!1,t.raycast=()=>{},t.userData.isSelectionEdge=!0,n===e.mesh&&e.instanceIndex!=null&&this._applyInstanceTransform(t,e),n.add(t),this._selectionEdgeMeshes.push(t)}}this._selectionEdgeMeshes.length===0?this._addSelectionHull(e,t):this._selectionEdges=this._selectionEdgeMeshes[0]??null}_applyInstanceTransform(e,t){let n=t.mesh;if(t.instanceIndex==null||!n.isInstancedMesh)return;let r=new U;n.getMatrixAt(t.instanceIndex,r),r.decompose(e.position,e.quaternion,e.scale)}_addSelectionHull(e,t){let n=e.instanceIndex!=null;this.outlineMaterial.uniforms.uSelBatch.value=n?-1:e.batchId,this.outlineMaterial.uniforms.uSelWhole.value=n||e.batchId<0?1:0,this.outlineMaterial.uniforms.uElevation.value=n?this._selectionElevation(e):this.style.selectElevation??0;for(let n of t){let t=fx(n);t?.userData?.uBatchTex&&(this.outlineMaterial.uniforms.uBatchTex.value=t.userData.uBatchTex.value,this.outlineMaterial.uniforms.uBatchTexWidth.value=t.userData.uBatchTexWidth.value,this.outlineMaterial.uniforms.uBatchTexActive.value=t.userData.uBatchTexActive.value);let r=new dc(n.geometry,this.outlineMaterial);r.renderOrder=3,r.frustumCulled=!1,r.raycast=()=>{},n===e.mesh&&e.instanceIndex!=null&&this._applyInstanceTransform(r,e),n.add(r),this._outlineMeshes.push(r)}this._outlineMesh=this._outlineMeshes[0]??null}_syncSelectionStyle(){let e=this.style,t=this.selectionEdgeMaterial.uniforms;t.uColor.value.set(e.outlineColor??e.selectColor),t.uWidth.value=Math.max(.1,e.outlineWidthPx??3),t.uOpacity.value=Math.min(1,Math.max(.05,e.opacity??1)),t.uElevation.value=this._selection?this._selectionElevation(this._selection):0;for(let e of this._outlineMeshes){let t=e.parent,n=t?fx(t)?.userData:null;n?.uBatchTex&&(this.outlineMaterial.uniforms.uBatchTex.value=n.uBatchTex.value,this.outlineMaterial.uniforms.uBatchTexWidth.value=n.uBatchTexWidth.value,this.outlineMaterial.uniforms.uBatchTexActive.value=n.uBatchTexActive.value)}}_selectionElevation(e){let t=this.style.selectElevation??0;if(e.smid!=null){let n=this._featureStyleManager.getFeatureEffectiveOffset(e.smid);n.elevation&&(t+=n.elevation)}return t}_clearSelectionDecoration(){for(let e of this._outlineMeshes)e.parent?.remove(e);this._outlineMeshes=[],this._outlineMesh=null;for(let e of this._selectionEdgeMeshes)e.parent?.remove(e),e.geometry.dispose();this._selectionEdgeMeshes=[],this._selectionEdges=null}_updateLineResolution(e){let t=e.width||1,n=e.height||1,r=e.clientWidth||t;this.lineShared.uResolution.value.set(t,n),this.lineShared.uDpr.value=Math.max(1,t/r)}get lodRangeScale(){return this._lodRangeScale}setLodRangeScale(e,t){if(!(e<=0)){if(t){let n=this.datasets.get(t);n?.tileset&&(n.tileset.lodRangeScale=e)}else{this._lodRangeScale=e;for(let t of this.datasets.values())t.tileset&&(t.tileset.lodRangeScale=e)}this._requestRepaint()}}renderFrame(e){if(!this.renderer||!this.scene||!this.camera||!this.sceneAnchor||!this.canvas)return!1;let t=this.renderer.getContext();if(t&&typeof t.isContextLost==`function`&&t.isContextLost())return!1;this.flushOverrides();let n=this.canvas,r=this.sceneAnchor.meterInMercator;this._enuMatrix.set(r,0,0,this.sceneAnchor.x,0,-r,0,this.sceneAnchor.y,0,0,r,this.sceneAnchor.z,0,0,0,1);let i=new U().fromArray(e.mvp);i.multiply(this._enuMatrix),this.camera.projectionMatrix.copy(i),this.camera.projectionMatrixInverse.copy(i).invert();let a=e.cameraEnu;this.camera.position.set(a[0],a[1],a[2]),this.camera.matrixWorld.setPosition(a[0],a[1],a[2]),this.camera.matrixWorldInverse.copy(this.camera.matrixWorld).invert(),this.groundManager.update(this.camera);let o=!1;for(let t of this.datasets.values()){if(!t.visible||!t.tileset)continue;let n=[a[0]-t.offset[0],a[1]-t.offset[1],a[2]-t.offset[2]];t.tileset.update(n,e.fovRad,e.canvasHeight)&&(o=!0)}this.style.mode===Oy.DYNAMIC&&(this.uniforms.uTime.value+=.016*(this.style.speed??1)),this._updateLights(),this._updateLineResolution(n),this.renderer.setViewport(0,0,n.width,n.height),this.renderer.resetState(),this.renderer.render(this.scene,this.camera),this._frame++;let s=performance.now();return s-this._fps.last>500&&(this._fps.value=Math.round(this._frame*1e3/(s-this._fps.last)),this._frame=0,this._fps.last=s),this.style.mode===Oy.DYNAMIC||this.stats.loading>0||o}get fps(){return this._fps.value}get stats(){let e={tiles:0,loading:0,failed:0,meshes:0,vertices:0,triangles:0,datasets:this.datasets.size};for(let t of this.datasets.values()){let n=t.tileset?.stats;n&&(e.tiles+=n.tiles,e.loading+=n.loading,e.failed+=n.failed,e.meshes+=n.meshes,e.vertices+=n.vertices,e.triangles+=n.triangles)}return e}getBounds(){let e=1/0,t=1/0,n=-1/0,r=-1/0;for(let i of this.datasets.values()){let a=jb(i.tileset?.config?.geoBounds);a&&(e=Math.min(e,a.left),n=Math.max(n,a.right),t=Math.min(t,a.bottom),r=Math.max(r,a.top))}return isFinite(e)?[[e,t],[n,r]]:null}dispose(){this.unmount()}};X(mx,`_EDGE_SKIP_KEYWORDS`,[`terrain`,`ground`,`vegetation`,`green`,`road`,`dem`,`绿地`,`道路`,`地面`,`地形`,`植被`,`铺装`]),wb(),rh();var hx=1e-4;function gx(e,t){let n=e.elements;for(let e=0;e<16;e++){let r=Math.max(1,Math.abs(n[e]),Math.abs(t[e]));if(Math.abs(n[e]-t[e])>hx*r)return!1}return!0}function _x(e){let t=e.elements,n=1;for(let e=0;e<16;e++){let r=Math.abs(t[e]);r>n&&(n=r)}let r=1e-6*n;return Math.abs(t[3])<r&&Math.abs(t[7])<r&&Math.abs(t[11])<r&&Math.abs(t[15]-1)<r}function vx(e,t){return t>0&&Math.abs(e.elements[5]*Math.tan(t/2)-1)<.001}function yx(e){if(!e||typeof e!=`object`)return null;let t=e;return t.defaultProjectionData?.projectionMatrix??t.projectionMatrix??null}function bx(e){let t={nearZ:null,farZ:null};if(!e||typeof e!=`object`)return t;let n=e,r=n.defaultProjectionData,i=e=>{let t=n[e];if(typeof t==`number`&&Number.isFinite(t))return t;let i=r?.[e];return typeof i==`number`&&Number.isFinite(i)?i:null};return{nearZ:i(`nearZ`),farZ:i(`farZ`)}}function xx(e,t){if(e&&typeof e==`object`){let t=e.fov;if(typeof t==`number`&&Number.isFinite(t)&&t>0)return t}return typeof t==`number`&&Number.isFinite(t)&&t>0?t:null}function Sx(e,t){let n=e.projectionMatrix;if(!n||n.length<16)return null;let r=new U().fromArray(Array.from(n)),i=new U().fromArray(Array.from(e.mvp));if(r.determinant()===0||!vx(r,t.fov))return null;let a=r.clone().invert().multiply(i);if(!gx(r.clone().multiply(a),Array.from(e.mvp))||!_x(a)||!vx(r,t.fov))return null;let{distance:o,fov:s,aspect:c}=t;if(!(o>0)||!(s>0)||!(c>0))return null;let l=o*Math.tan(s/2),u=l*c,d=e.nearZ!=null&&e.nearZ>0?e.nearZ:1,f=e.farZ!=null&&e.farZ>d?e.farZ:o*4+1e3;f>d||(f=d+1e3);let p=new zc(-u,u,l,-l,d,f);return p.updateProjectionMatrix(),{matrix:p.projectionMatrix.clone().multiply(a),view:a}}var Cx=i({AttributeQuery:()=>o_,BinaryReader:()=>sh,DEFAULT_FLOOR_HEIGHT:()=>e_,DEFAULT_STYLE:()=>My,DatasetManager:()=>ix,EARTH_RADIUS:()=>s_,FeatureStyleManager:()=>lx,GroundManager:()=>ux,Picker:()=>Jb,PixelFormat:()=>$_,S3MFormatError:()=>Kg,S3MTileset:()=>Pb,S3MViewer:()=>mx,S3M_VERSION:()=>mg,SELECT_MODE:()=>Ay,SELECT_MODE_LABELS:()=>jy,STYLE:()=>Oy,STYLE_LABELS:()=>ky,TextureCompress:()=>ev,VertexTag:()=>hg,VertexTagV3:()=>gg,buildAttributes:()=>Qg,buildFeatureEdgeSegments:()=>nx,buildOrthoMVP:()=>Sx,buildThickLineGeometry:()=>$b,buildTileObjects:()=>xb,createLineSharedUniforms:()=>Yb,createOutlineMaterial:()=>Dy,createSharedUniforms:()=>Ty,createStyledMaterial:()=>Ey,createTexture:()=>by,createThickLineMaterial:()=>Qb,default:()=>mx,dxtPixelFormatOf:()=>Q_,extractFovRadians:()=>xx,extractNearFar:()=>bx,extractProjectionMatrix:()=>yx,isS3M1Buffer:()=>tg,lngLatFromMercator:()=>l_,lngLatFromWorld:()=>d_,measureSegments:()=>Zg,mercatorFromLngLat:()=>c_,parseS3M1:()=>pg,parseS3MB:()=>qg,resolveFeature:()=>Xg,resolveTextureKind:()=>Z_,setMaxAnisotropy:()=>my,worldFromLngLat:()=>u_});t_(),Wy(),wy(),rv(),rh(),t_(),rv(),wy(),Wy(),wb();var wx=globalThis;return wx.THREE||(wx.THREE=a),wx.S3M=Cx,e.AttributeQuery=o_,e.BinaryReader=sh,e.DEFAULT_FLOOR_HEIGHT=e_,e.DEFAULT_STYLE=My,e.DatasetManager=ix,e.EARTH_RADIUS=s_,e.FeatureStyleManager=lx,e.GroundManager=ux,e.Picker=Jb,e.PixelFormat=$_,e.S3MFormatError=Kg,e.S3MTileset=Pb,e.S3MViewer=mx,e.default=mx,e.S3M_VERSION=mg,e.SELECT_MODE=Ay,e.SELECT_MODE_LABELS=jy,e.STYLE=Oy,e.STYLE_LABELS=ky,e.TextureCompress=ev,e.VertexTag=hg,e.VertexTagV3=gg,e.buildAttributes=Qg,e.buildFeatureEdgeSegments=nx,e.buildOrthoMVP=Sx,e.buildThickLineGeometry=$b,e.buildTileObjects=xb,e.createLineSharedUniforms=Yb,e.createOutlineMaterial=Dy,e.createSharedUniforms=Ty,e.createStyledMaterial=Ey,e.createTexture=by,e.createThickLineMaterial=Qb,e.dxtPixelFormatOf=Q_,e.extractFovRadians=xx,e.extractNearFar=bx,e.extractProjectionMatrix=yx,e.isS3M1Buffer=tg,e.lngLatFromMercator=l_,e.lngLatFromWorld=d_,e.measureSegments=Zg,e.mercatorFromLngLat=c_,e.parseS3M1=pg,e.parseS3MB=qg,e.resolveFeature=Xg,e.resolveTextureKind=Z_,e.setMaxAnisotropy=my,e.worldFromLngLat=u_,e})({});