@neurodyn/ar 0.0.1 → 0.0.3

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.
@@ -1,5 +1,5 @@
1
- /*! For license information please see ar.chunk.bf754a7e.min.js.LICENSE.txt */
2
- "use strict";(self.webpackChunk_neurodyn_ar=self.webpackChunk_neurodyn_ar||[]).push([["56"],{5148(e,t,n){let r;n.d(t,{p:()=>eo}),n(9081);var a=n(308);let l=new WeakMap;class i extends a.aHM{constructor(e){super(e),this.decoderPath="",this.decoderConfig={},this.decoderBinary=null,this.decoderPending=null,this.workerLimit=4,this.workerPool=[],this.workerNextTaskID=1,this.workerSourceURL="",this.defaultAttributeIDs={position:"POSITION",normal:"NORMAL",color:"COLOR",uv:"TEX_COORD"},this.defaultAttributeTypes={position:"Float32Array",normal:"Float32Array",color:"Float32Array",uv:"Float32Array"}}setDecoderPath(e){return this.decoderPath=e,this}setDecoderConfig(e){return this.decoderConfig=e,this}setWorkerLimit(e){return this.workerLimit=e,this}load(e,t,n,r){let l=new a.Y9S(this.manager);l.setPath(this.path),l.setResponseType("arraybuffer"),l.setRequestHeader(this.requestHeader),l.setWithCredentials(this.withCredentials),l.load(e,e=>{let n={attributeIDs:this.defaultAttributeIDs,attributeTypes:this.defaultAttributeTypes,useUniqueIDs:!1};this.decodeGeometry(e,n).then(t).catch(r)},n,r)}decodeDracoFile(e,t,n,r){let a={attributeIDs:n||this.defaultAttributeIDs,attributeTypes:r||this.defaultAttributeTypes,useUniqueIDs:!!n};this.decodeGeometry(e,a).then(t)}decodeGeometry(e,t){let n;for(let e in t.attributeTypes){let n=t.attributeTypes[e];void 0!==n.BYTES_PER_ELEMENT&&(t.attributeTypes[e]=n.name)}let r=JSON.stringify(t);if(l.has(e)){let t=l.get(e);if(t.key===r)return t.promise;if(0===e.byteLength)throw Error("THREE.DRACOLoader: Unable to re-decode a buffer with different settings. Buffer has already been transferred.")}let a=this.workerNextTaskID++,i=e.byteLength,o=this._getWorker(a,i).then(r=>(n=r,new Promise((r,l)=>{n._callbacks[a]={resolve:r,reject:l},n.postMessage({type:"decode",id:a,taskConfig:t,buffer:e},[e])}))).then(e=>this._createGeometry(e.geometry));return o.catch(()=>!0).then(()=>{n&&a&&this._releaseTask(n,a)}),l.set(e,{key:r,promise:o}),o}_createGeometry(e){let t=new a.LoY;e.index&&t.setIndex(new a.THS(e.index.array,1));for(let n=0;n<e.attributes.length;n++){let r=e.attributes[n],l=r.name,i=r.array,o=r.itemSize;t.setAttribute(l,new a.THS(i,o))}return t}_loadLibrary(e,t){let n=new a.Y9S(this.manager);return n.setPath(this.decoderPath),n.setResponseType(t),n.setWithCredentials(this.withCredentials),new Promise((t,r)=>{n.load(e,t,void 0,r)})}preload(){return this._initDecoder(),this}_initDecoder(){if(this.decoderPending)return this.decoderPending;let e="object"!=typeof WebAssembly||"js"===this.decoderConfig.type,t=[];return e?t.push(this._loadLibrary("draco_decoder.js","text")):(t.push(this._loadLibrary("draco_wasm_wrapper.js","text")),t.push(this._loadLibrary("draco_decoder.wasm","arraybuffer"))),this.decoderPending=Promise.all(t).then(t=>{let n=t[0];e||(this.decoderConfig.wasmBinary=t[1]);let r=o.toString(),a=["/* draco decoder */",n,"\n/* worker */",r.substring(r.indexOf("{")+1,r.lastIndexOf("}"))].join("\n");this.workerSourceURL=URL.createObjectURL(new Blob([a]))}),this.decoderPending}_getWorker(e,t){return this._initDecoder().then(()=>{if(this.workerPool.length<this.workerLimit){let e=new Worker(this.workerSourceURL);e._callbacks={},e._taskCosts={},e._taskLoad=0,e.postMessage({type:"init",decoderConfig:this.decoderConfig}),e.onmessage=function(t){let n=t.data;switch(n.type){case"decode":e._callbacks[n.id].resolve(n);break;case"error":e._callbacks[n.id].reject(n);break;default:console.error('THREE.DRACOLoader: Unexpected message, "'+n.type+'"')}},this.workerPool.push(e)}else this.workerPool.sort(function(e,t){return e._taskLoad>t._taskLoad?-1:1});let n=this.workerPool[this.workerPool.length-1];return n._taskCosts[e]=t,n._taskLoad+=t,n})}_releaseTask(e,t){e._taskLoad-=e._taskCosts[t],delete e._callbacks[t],delete e._taskCosts[t]}debug(){console.log("Task load: ",this.workerPool.map(e=>e._taskLoad))}dispose(){for(let e=0;e<this.workerPool.length;++e)this.workerPool[e].terminate();return this.workerPool.length=0,this}}function o(){let e,t;onmessage=function(n){let r=n.data;switch(r.type){case"init":e=r.decoderConfig,t=new Promise(function(t){e.onModuleLoaded=function(e){t({draco:e})},DracoDecoderModule(e)});break;case"decode":let a=r.buffer,l=r.taskConfig;t.then(e=>{let t=e.draco,n=new t.Decoder,i=new t.DecoderBuffer;i.Init(new Int8Array(a),a.byteLength);try{let e=function(e,t,n,r){var a,l,i;let o,s,u,c,d,f,p=r.attributeIDs,h=r.attributeTypes,m=t.GetEncodedGeometryType(n);if(m===e.TRIANGULAR_MESH)d=new e.Mesh,f=t.DecodeBufferToMesh(n,d);else if(m===e.POINT_CLOUD)d=new e.PointCloud,f=t.DecodeBufferToPointCloud(n,d);else throw Error("THREE.DRACOLoader: Unexpected geometry type.");if(!f.ok()||0===d.ptr)throw Error("THREE.DRACOLoader: Decoding failed: "+f.error_msg());let A={index:null,attributes:[]};for(let n in p){let a,l,i=self[h[n]];if(r.useUniqueIDs)l=p[n],a=t.GetAttributeByUniqueId(d,l);else{if(-1===(l=t.GetAttributeId(d,e[p[n]])))continue;a=t.GetAttribute(d,l)}A.attributes.push(function(e,t,n,r,a,l){let i=l.num_components(),o=n.num_points()*i,s=o*a.BYTES_PER_ELEMENT,u=function(e,t){switch(t){case Float32Array:return e.DT_FLOAT32;case Int8Array:return e.DT_INT8;case Int16Array:return e.DT_INT16;case Int32Array:return e.DT_INT32;case Uint8Array:return e.DT_UINT8;case Uint16Array:return e.DT_UINT16;case Uint32Array:return e.DT_UINT32}}(e,a),c=e._malloc(s);t.GetAttributeDataArrayForAllPoints(n,l,u,s,c);let d=new a(e.HEAPF32.buffer,c,o).slice();return e._free(c),{name:r,array:d,itemSize:i}}(e,t,d,n,i,a))}return m===e.TRIANGULAR_MESH&&(a=e,l=t,i=d,o=3*i.num_faces(),s=4*o,u=a._malloc(s),l.GetTrianglesUInt32Array(i,s,u),c=new Uint32Array(a.HEAPF32.buffer,u,o).slice(),a._free(u),A.index={array:c,itemSize:1}),e.destroy(d),A}(t,n,i,l),a=e.attributes.map(e=>e.array.buffer);e.index&&a.push(e.index.array.buffer),self.postMessage({type:"decode",id:r.id,geometry:e},a)}catch(e){console.error(e),self.postMessage({type:"error",id:r.id,error:e.message})}finally{t.destroy(i),t.destroy(n)}})}}}function s(e,t){if(0===t)return console.warn("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles."),e;if(2!==t&&1!==t)return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:",t),e;{let n=e.getIndex();if(null===n){let t=[],r=e.getAttribute("position");if(void 0===r)return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible."),e;for(let e=0;e<r.count;e++)t.push(e);e.setIndex(t),n=e.getIndex()}let r=n.count-2,a=[];if(n)if(2===t)for(let e=1;e<=r;e++)a.push(n.getX(0)),a.push(n.getX(e)),a.push(n.getX(e+1));else for(let e=0;e<r;e++)e%2==0?(a.push(n.getX(e)),a.push(n.getX(e+1)),a.push(n.getX(e+2))):(a.push(n.getX(e+2)),a.push(n.getX(e+1)),a.push(n.getX(e)));a.length/3!==r&&console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unable to generate correct amount of triangles.");let l=e.clone();return l.setIndex(a),l.clearGroups(),l}}let u=parseInt("185".replace(/\D+/g,""));function c(e){if("u">typeof TextDecoder)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(e){return t}}let d="srgb",f="srgb-linear";class p extends a.aHM{constructor(e){super(e),this.dracoLoader=null,this.ktx2Loader=null,this.meshoptDecoder=null,this.pluginCallbacks=[],this.register(function(e){return new v(e)}),this.register(function(e){return new C(e)}),this.register(function(e){return new M(e)}),this.register(function(e){return new I(e)}),this.register(function(e){return new T(e)}),this.register(function(e){return new y(e)}),this.register(function(e){return new E(e)}),this.register(function(e){return new w(e)}),this.register(function(e){return new S(e)}),this.register(function(e){return new B(e)}),this.register(function(e){return new x(e)}),this.register(function(e){return new b(e)}),this.register(function(e){return new F(e)}),this.register(function(e){return new R(e)}),this.register(function(e){return new A(e)}),this.register(function(e){return new D(e)}),this.register(function(e){return new H(e)})}load(e,t,n,r){let l,i=this;if(""!==this.resourcePath)l=this.resourcePath;else if(""!==this.path){let t=a.r6x.extractUrlBase(e);l=a.r6x.resolveURL(t,this.path)}else l=a.r6x.extractUrlBase(e);this.manager.itemStart(e);let o=function(t){r?r(t):console.error(t),i.manager.itemError(e),i.manager.itemEnd(e)},s=new a.Y9S(this.manager);s.setPath(this.path),s.setResponseType("arraybuffer"),s.setRequestHeader(this.requestHeader),s.setWithCredentials(this.withCredentials),s.load(e,function(n){try{i.parse(n,l,function(n){t(n),i.manager.itemEnd(e)},o)}catch(e){o(e)}},n,o)}setDRACOLoader(e){return this.dracoLoader=e,this}setDDSLoader(){throw Error('THREE.GLTFLoader: "MSFT_texture_dds" no longer supported. Please update to "KHR_texture_basisu".')}setKTX2Loader(e){return this.ktx2Loader=e,this}setMeshoptDecoder(e){return this.meshoptDecoder=e,this}register(e){return -1===this.pluginCallbacks.indexOf(e)&&this.pluginCallbacks.push(e),this}unregister(e){return -1!==this.pluginCallbacks.indexOf(e)&&this.pluginCallbacks.splice(this.pluginCallbacks.indexOf(e),1),this}parse(e,t,n,r){let a,l={},i={};if("string"==typeof e)a=JSON.parse(e);else if(e instanceof ArrayBuffer)if(c(new Uint8Array(e.slice(0,4)))===G){try{l[m.KHR_BINARY_GLTF]=new P(e)}catch(e){r&&r(e);return}a=JSON.parse(l[m.KHR_BINARY_GLTF].content)}else a=JSON.parse(c(new Uint8Array(e)));else a=e;if(void 0===a.asset||a.asset.version[0]<2){r&&r(Error("THREE.GLTFLoader: Unsupported asset. glTF versions >=2.0 are supported."));return}let o=new et(a,{path:t||this.resourcePath||"",crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});o.fileLoader.setRequestHeader(this.requestHeader);for(let e=0;e<this.pluginCallbacks.length;e++){let t=this.pluginCallbacks[e](o);t.name||console.error("THREE.GLTFLoader: Invalid plugin found: missing name"),i[t.name]=t,l[t.name]=!0}if(a.extensionsUsed)for(let e=0;e<a.extensionsUsed.length;++e){let t=a.extensionsUsed[e],n=a.extensionsRequired||[];switch(t){case m.KHR_MATERIALS_UNLIT:l[t]=new g;break;case m.KHR_DRACO_MESH_COMPRESSION:l[t]=new k(a,this.dracoLoader);break;case m.KHR_TEXTURE_TRANSFORM:l[t]=new L;break;case m.KHR_MESH_QUANTIZATION:l[t]=new N;break;default:n.indexOf(t)>=0&&void 0===i[t]&&console.warn('THREE.GLTFLoader: Unknown extension "'+t+'".')}}o.setExtensions(l),o.setPlugins(i),o.parse(n,r)}parseAsync(e,t){let n=this;return new Promise(function(r,a){n.parse(e,t,r,a)})}}function h(){let e={};return{get:function(t){return e[t]},add:function(t,n){e[t]=n},remove:function(t){delete e[t]},removeAll:function(){e={}}}}let m={KHR_BINARY_GLTF:"KHR_binary_glTF",KHR_DRACO_MESH_COMPRESSION:"KHR_draco_mesh_compression",KHR_LIGHTS_PUNCTUAL:"KHR_lights_punctual",KHR_MATERIALS_CLEARCOAT:"KHR_materials_clearcoat",KHR_MATERIALS_DISPERSION:"KHR_materials_dispersion",KHR_MATERIALS_IOR:"KHR_materials_ior",KHR_MATERIALS_SHEEN:"KHR_materials_sheen",KHR_MATERIALS_SPECULAR:"KHR_materials_specular",KHR_MATERIALS_TRANSMISSION:"KHR_materials_transmission",KHR_MATERIALS_IRIDESCENCE:"KHR_materials_iridescence",KHR_MATERIALS_ANISOTROPY:"KHR_materials_anisotropy",KHR_MATERIALS_UNLIT:"KHR_materials_unlit",KHR_MATERIALS_VOLUME:"KHR_materials_volume",KHR_TEXTURE_BASISU:"KHR_texture_basisu",KHR_TEXTURE_TRANSFORM:"KHR_texture_transform",KHR_MESH_QUANTIZATION:"KHR_mesh_quantization",KHR_MATERIALS_EMISSIVE_STRENGTH:"KHR_materials_emissive_strength",EXT_MATERIALS_BUMP:"EXT_materials_bump",EXT_TEXTURE_WEBP:"EXT_texture_webp",EXT_TEXTURE_AVIF:"EXT_texture_avif",EXT_MESHOPT_COMPRESSION:"EXT_meshopt_compression",EXT_MESH_GPU_INSTANCING:"EXT_mesh_gpu_instancing"};class A{constructor(e){this.parser=e,this.name=m.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){let e=this.parser,t=this.parser.json.nodes||[];for(let n=0,r=t.length;n<r;n++){let r=t[n];r.extensions&&r.extensions[this.name]&&void 0!==r.extensions[this.name].light&&e._addNodeRef(this.cache,r.extensions[this.name].light)}}_loadLight(e){let t,n=this.parser,r="light:"+e,l=n.cache.get(r);if(l)return l;let i=n.json,o=((i.extensions&&i.extensions[this.name]||{}).lights||[])[e],s=new a.Q1f(0xffffff);void 0!==o.color&&s.setRGB(o.color[0],o.color[1],o.color[2],f);let u=void 0!==o.range?o.range:0;switch(o.type){case"directional":(t=new a.ZyN(s)).target.position.set(0,0,-1),t.add(t.target);break;case"point":(t=new a.HiM(s)).distance=u;break;case"spot":(t=new a.nCl(s)).distance=u,o.spot=o.spot||{},o.spot.innerConeAngle=void 0!==o.spot.innerConeAngle?o.spot.innerConeAngle:0,o.spot.outerConeAngle=void 0!==o.spot.outerConeAngle?o.spot.outerConeAngle:Math.PI/4,t.angle=o.spot.outerConeAngle,t.penumbra=1-o.spot.innerConeAngle/o.spot.outerConeAngle,t.target.position.set(0,0,-1),t.add(t.target);break;default:throw Error("THREE.GLTFLoader: Unexpected light type: "+o.type)}return t.position.set(0,0,0),t.decay=2,Z(t,o),void 0!==o.intensity&&(t.intensity=o.intensity),t.name=n.createUniqueName(o.name||"light_"+e),l=Promise.resolve(t),n.cache.add(r,l),l}getDependency(e,t){if("light"===e)return this._loadLight(t)}createNodeAttachment(e){let t=this,n=this.parser,r=n.json.nodes[e],a=(r.extensions&&r.extensions[this.name]||{}).light;return void 0===a?null:this._loadLight(a).then(function(e){return n._getNodeRef(t.cache,a,e)})}}class g{constructor(){this.name=m.KHR_MATERIALS_UNLIT}getMaterialType(){return a.V9B}extendParams(e,t,n){let r=[];e.color=new a.Q1f(1,1,1),e.opacity=1;let l=t.pbrMetallicRoughness;if(l){if(Array.isArray(l.baseColorFactor)){let t=l.baseColorFactor;e.color.setRGB(t[0],t[1],t[2],f),e.opacity=t[3]}void 0!==l.baseColorTexture&&r.push(n.assignTexture(e,"map",l.baseColorTexture,d))}return Promise.all(r)}}class B{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_EMISSIVE_STRENGTH}extendMaterialParams(e,t){let n=this.parser.json.materials[e];if(!n.extensions||!n.extensions[this.name])return Promise.resolve();let r=n.extensions[this.name].emissiveStrength;return void 0!==r&&(t.emissiveIntensity=r),Promise.resolve()}}class v{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_CLEARCOAT}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let l=[],i=r.extensions[this.name];if(void 0!==i.clearcoatFactor&&(t.clearcoat=i.clearcoatFactor),void 0!==i.clearcoatTexture&&l.push(n.assignTexture(t,"clearcoatMap",i.clearcoatTexture)),void 0!==i.clearcoatRoughnessFactor&&(t.clearcoatRoughness=i.clearcoatRoughnessFactor),void 0!==i.clearcoatRoughnessTexture&&l.push(n.assignTexture(t,"clearcoatRoughnessMap",i.clearcoatRoughnessTexture)),void 0!==i.clearcoatNormalTexture&&(l.push(n.assignTexture(t,"clearcoatNormalMap",i.clearcoatNormalTexture)),void 0!==i.clearcoatNormalTexture.scale)){let e=i.clearcoatNormalTexture.scale;t.clearcoatNormalScale=new a.I9Y(e,e)}return Promise.all(l)}}class C{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_DISPERSION}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser.json.materials[e];if(!n.extensions||!n.extensions[this.name])return Promise.resolve();let r=n.extensions[this.name];return t.dispersion=void 0!==r.dispersion?r.dispersion:0,Promise.resolve()}}class b{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_IRIDESCENCE}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let a=[],l=r.extensions[this.name];return void 0!==l.iridescenceFactor&&(t.iridescence=l.iridescenceFactor),void 0!==l.iridescenceTexture&&a.push(n.assignTexture(t,"iridescenceMap",l.iridescenceTexture)),void 0!==l.iridescenceIor&&(t.iridescenceIOR=l.iridescenceIor),void 0===t.iridescenceThicknessRange&&(t.iridescenceThicknessRange=[100,400]),void 0!==l.iridescenceThicknessMinimum&&(t.iridescenceThicknessRange[0]=l.iridescenceThicknessMinimum),void 0!==l.iridescenceThicknessMaximum&&(t.iridescenceThicknessRange[1]=l.iridescenceThicknessMaximum),void 0!==l.iridescenceThicknessTexture&&a.push(n.assignTexture(t,"iridescenceThicknessMap",l.iridescenceThicknessTexture)),Promise.all(a)}}class y{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_SHEEN}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let l=[];t.sheenColor=new a.Q1f(0,0,0),t.sheenRoughness=0,t.sheen=1;let i=r.extensions[this.name];if(void 0!==i.sheenColorFactor){let e=i.sheenColorFactor;t.sheenColor.setRGB(e[0],e[1],e[2],f)}return void 0!==i.sheenRoughnessFactor&&(t.sheenRoughness=i.sheenRoughnessFactor),void 0!==i.sheenColorTexture&&l.push(n.assignTexture(t,"sheenColorMap",i.sheenColorTexture,d)),void 0!==i.sheenRoughnessTexture&&l.push(n.assignTexture(t,"sheenRoughnessMap",i.sheenRoughnessTexture)),Promise.all(l)}}class E{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_TRANSMISSION}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let a=[],l=r.extensions[this.name];return void 0!==l.transmissionFactor&&(t.transmission=l.transmissionFactor),void 0!==l.transmissionTexture&&a.push(n.assignTexture(t,"transmissionMap",l.transmissionTexture)),Promise.all(a)}}class w{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_VOLUME}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let l=[],i=r.extensions[this.name];t.thickness=void 0!==i.thicknessFactor?i.thicknessFactor:0,void 0!==i.thicknessTexture&&l.push(n.assignTexture(t,"thicknessMap",i.thicknessTexture)),t.attenuationDistance=i.attenuationDistance||1/0;let o=i.attenuationColor||[1,1,1];return t.attenuationColor=new a.Q1f().setRGB(o[0],o[1],o[2],f),Promise.all(l)}}class S{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_IOR}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser.json.materials[e];if(!n.extensions||!n.extensions[this.name])return Promise.resolve();let r=n.extensions[this.name];return t.ior=void 0!==r.ior?r.ior:1.5,Promise.resolve()}}class x{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_SPECULAR}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let l=[],i=r.extensions[this.name];t.specularIntensity=void 0!==i.specularFactor?i.specularFactor:1,void 0!==i.specularTexture&&l.push(n.assignTexture(t,"specularIntensityMap",i.specularTexture));let o=i.specularColorFactor||[1,1,1];return t.specularColor=new a.Q1f().setRGB(o[0],o[1],o[2],f),void 0!==i.specularColorTexture&&l.push(n.assignTexture(t,"specularColorMap",i.specularColorTexture,d)),Promise.all(l)}}class R{constructor(e){this.parser=e,this.name=m.EXT_MATERIALS_BUMP}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let a=[],l=r.extensions[this.name];return t.bumpScale=void 0!==l.bumpFactor?l.bumpFactor:1,void 0!==l.bumpTexture&&a.push(n.assignTexture(t,"bumpMap",l.bumpTexture)),Promise.all(a)}}class F{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_ANISOTROPY}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let a=[],l=r.extensions[this.name];return void 0!==l.anisotropyStrength&&(t.anisotropy=l.anisotropyStrength),void 0!==l.anisotropyRotation&&(t.anisotropyRotation=l.anisotropyRotation),void 0!==l.anisotropyTexture&&a.push(n.assignTexture(t,"anisotropyMap",l.anisotropyTexture)),Promise.all(a)}}class M{constructor(e){this.parser=e,this.name=m.KHR_TEXTURE_BASISU}loadTexture(e){let t=this.parser,n=t.json,r=n.textures[e];if(!r.extensions||!r.extensions[this.name])return null;let a=r.extensions[this.name],l=t.options.ktx2Loader;if(!l)if(!(n.extensionsRequired&&n.extensionsRequired.indexOf(this.name)>=0))return null;else throw Error("THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures");return t.loadTextureImage(e,a.source,l)}}class I{constructor(e){this.parser=e,this.name=m.EXT_TEXTURE_WEBP,this.isSupported=null}loadTexture(e){let t=this.name,n=this.parser,r=n.json,a=r.textures[e];if(!a.extensions||!a.extensions[t])return null;let l=a.extensions[t],i=r.images[l.source],o=n.textureLoader;if(i.uri){let e=n.options.manager.getHandler(i.uri);null!==e&&(o=e)}return this.detectSupport().then(function(a){if(a)return n.loadTextureImage(e,l.source,o);if(r.extensionsRequired&&r.extensionsRequired.indexOf(t)>=0)throw Error("THREE.GLTFLoader: WebP required by asset but unsupported.");return n.loadTexture(e)})}detectSupport(){return this.isSupported||(this.isSupported=new Promise(function(e){let t=new Image;t.src="data:image/webp;base64,UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA",t.onload=t.onerror=function(){e(1===t.height)}})),this.isSupported}}class T{constructor(e){this.parser=e,this.name=m.EXT_TEXTURE_AVIF,this.isSupported=null}loadTexture(e){let t=this.name,n=this.parser,r=n.json,a=r.textures[e];if(!a.extensions||!a.extensions[t])return null;let l=a.extensions[t],i=r.images[l.source],o=n.textureLoader;if(i.uri){let e=n.options.manager.getHandler(i.uri);null!==e&&(o=e)}return this.detectSupport().then(function(a){if(a)return n.loadTextureImage(e,l.source,o);if(r.extensionsRequired&&r.extensionsRequired.indexOf(t)>=0)throw Error("THREE.GLTFLoader: AVIF required by asset but unsupported.");return n.loadTexture(e)})}detectSupport(){return this.isSupported||(this.isSupported=new Promise(function(e){let t=new Image;t.src="data:image/avif;base64,AAAAIGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZk1BMUIAAADybWV0YQAAAAAAAAAoaGRscgAAAAAAAAAAcGljdAAAAAAAAAAAAAAAAGxpYmF2aWYAAAAADnBpdG0AAAAAAAEAAAAeaWxvYwAAAABEAAABAAEAAAABAAABGgAAABcAAAAoaWluZgAAAAAAAQAAABppbmZlAgAAAAABAABhdjAxQ29sb3IAAAAAamlwcnAAAABLaXBjbwAAABRpc3BlAAAAAAAAAAEAAAABAAAAEHBpeGkAAAAAAwgICAAAAAxhdjFDgQAMAAAAABNjb2xybmNseAACAAIABoAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAAB9tZGF0EgAKCBgABogQEDQgMgkQAAAAB8dSLfI=",t.onload=t.onerror=function(){e(1===t.height)}})),this.isSupported}}class D{constructor(e){this.name=m.EXT_MESHOPT_COMPRESSION,this.parser=e}loadBufferView(e){let t=this.parser.json,n=t.bufferViews[e];if(!n.extensions||!n.extensions[this.name])return null;{let e=n.extensions[this.name],r=this.parser.getDependency("buffer",e.buffer),a=this.parser.options.meshoptDecoder;if(!a||!a.supported)if(!(t.extensionsRequired&&t.extensionsRequired.indexOf(this.name)>=0))return null;else throw Error("THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files");return r.then(function(t){let n=e.byteOffset||0,r=e.byteLength||0,l=e.count,i=e.byteStride,o=new Uint8Array(t,n,r);return a.decodeGltfBufferAsync?a.decodeGltfBufferAsync(l,i,o,e.mode,e.filter).then(function(e){return e.buffer}):a.ready.then(function(){let t=new ArrayBuffer(l*i);return a.decodeGltfBuffer(new Uint8Array(t),l,i,o,e.mode,e.filter),t})})}}}class H{constructor(e){this.name=m.EXT_MESH_GPU_INSTANCING,this.parser=e}createNodeMesh(e){let t=this.parser.json,n=t.nodes[e];if(!n.extensions||!n.extensions[this.name]||void 0===n.mesh)return null;for(let e of t.meshes[n.mesh].primitives)if(e.mode!==_.TRIANGLES&&e.mode!==_.TRIANGLE_STRIP&&e.mode!==_.TRIANGLE_FAN&&void 0!==e.mode)return null;let r=n.extensions[this.name].attributes,l=[],i={};for(let e in r)l.push(this.parser.getDependency("accessor",r[e]).then(t=>(i[e]=t,i[e])));return l.length<1?null:(l.push(this.parser.createNodeMesh(e)),Promise.all(l).then(e=>{let t=e.pop(),n=t.isGroup?t.children:[t],r=e[0].count,l=[];for(let e of n){let t=new a.kn4,n=new a.Pq0,o=new a.PTz,s=new a.Pq0(1,1,1),u=new a.ZLX(e.geometry,e.material,r);for(let e=0;e<r;e++)i.TRANSLATION&&n.fromBufferAttribute(i.TRANSLATION,e),i.ROTATION&&o.fromBufferAttribute(i.ROTATION,e),i.SCALE&&s.fromBufferAttribute(i.SCALE,e),u.setMatrixAt(e,t.compose(n,o,s));for(let t in i)if("_COLOR_0"===t){let e=i[t];u.instanceColor=new a.uWO(e.array,e.itemSize,e.normalized)}else"TRANSLATION"!==t&&"ROTATION"!==t&&"SCALE"!==t&&e.geometry.setAttribute(t,i[t]);a.B69.prototype.copy.call(u,e),this.parser.assignFinalMaterial(u),l.push(u)}return t.isGroup?(t.clear(),t.add(...l),t):l[0]}))}}let G="glTF";class P{constructor(e){this.name=m.KHR_BINARY_GLTF,this.content=null,this.body=null;const t=new DataView(e,0,12);if(this.header={magic:c(new Uint8Array(e.slice(0,4))),version:t.getUint32(4,!0),length:t.getUint32(8,!0)},this.header.magic!==G)throw Error("THREE.GLTFLoader: Unsupported glTF-Binary header.");if(this.header.version<2)throw Error("THREE.GLTFLoader: Legacy binary file detected.");const n=this.header.length-12,r=new DataView(e,12);let a=0;for(;a<n;){const t=r.getUint32(a,!0);a+=4;const n=r.getUint32(a,!0);if(a+=4,0x4e4f534a===n){const n=new Uint8Array(e,12+a,t);this.content=c(n)}else if(5130562===n){const n=12+a;this.body=e.slice(n,n+t)}a+=t}if(null===this.content)throw Error("THREE.GLTFLoader: JSON content not found.")}}class k{constructor(e,t){if(!t)throw Error("THREE.GLTFLoader: No DRACOLoader instance provided.");this.name=m.KHR_DRACO_MESH_COMPRESSION,this.json=e,this.dracoLoader=t,this.dracoLoader.preload()}decodePrimitive(e,t){let n=this.json,r=this.dracoLoader,a=e.extensions[this.name].bufferView,l=e.extensions[this.name].attributes,i={},o={},s={};for(let e in l)i[X[e]||e.toLowerCase()]=l[e];for(let t in e.attributes){let r=X[t]||t.toLowerCase();if(void 0!==l[t]){let a=n.accessors[e.attributes[t]],l=j[a.componentType];s[r]=l.name,o[r]=!0===a.normalized}}return t.getDependency("bufferView",a).then(function(e){return new Promise(function(t,n){r.decodeDracoFile(e,function(e){for(let t in e.attributes){let n=e.attributes[t],r=o[t];void 0!==r&&(n.normalized=r)}t(e)},i,s,f,n)})})}}class L{constructor(){this.name=m.KHR_TEXTURE_TRANSFORM}extendTexture(e,t){return(void 0===t.texCoord||t.texCoord===e.channel)&&void 0===t.offset&&void 0===t.rotation&&void 0===t.scale||(e=e.clone(),void 0!==t.texCoord&&(e.channel=t.texCoord),void 0!==t.offset&&e.offset.fromArray(t.offset),void 0!==t.rotation&&(e.rotation=t.rotation),void 0!==t.scale&&e.repeat.fromArray(t.scale),e.needsUpdate=!0),e}}class N{constructor(){this.name=m.KHR_MESH_QUANTIZATION}}class O extends a.lGw{constructor(e,t,n,r){super(e,t,n,r)}copySampleValue_(e){let t=this.resultBuffer,n=this.sampleValues,r=this.valueSize,a=e*r*3+r;for(let e=0;e!==r;e++)t[e]=n[a+e];return t}interpolate_(e,t,n,r){let a=this.resultBuffer,l=this.sampleValues,i=this.valueSize,o=2*i,s=3*i,u=r-t,c=(n-t)/u,d=c*c,f=d*c,p=e*s,h=p-s,m=-2*f+3*d,A=f-d,g=1-m,B=A-d+c;for(let e=0;e!==i;e++){let t=l[h+e+i],n=l[h+e+o]*u,r=l[p+e+i],s=l[p+e]*u;a[e]=g*t+B*n+m*r+A*s}return a}}let J=new a.PTz;class U extends O{interpolate_(e,t,n,r){let a=super.interpolate_(e,t,n,r);return J.fromArray(a).normalize().toArray(a),a}}let _={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6},j={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},z={9728:1003,9729:1006,9984:1004,9985:1007,9986:1005,9987:1008},K={33071:1001,33648:1002,10497:1e3},Q={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},X={POSITION:"position",NORMAL:"normal",TANGENT:"tangent",...u>=152?{TEXCOORD_0:"uv",TEXCOORD_1:"uv1",TEXCOORD_2:"uv2",TEXCOORD_3:"uv3"}:{TEXCOORD_0:"uv",TEXCOORD_1:"uv2"},COLOR_0:"color",WEIGHTS_0:"skinWeight",JOINTS_0:"skinIndex"},Y={scale:"scale",translation:"position",rotation:"quaternion",weights:"morphTargetInfluences"},W={CUBICSPLINE:void 0,LINEAR:2301,STEP:2300};function V(e,t,n){for(let r in n.extensions)void 0===e[r]&&(t.userData.gltfExtensions=t.userData.gltfExtensions||{},t.userData.gltfExtensions[r]=n.extensions[r])}function Z(e,t){void 0!==t.extras&&("object"==typeof t.extras?Object.assign(e.userData,t.extras):console.warn("THREE.GLTFLoader: Ignoring primitive type .extras, "+t.extras))}function q(e){let t="",n=Object.keys(e).sort();for(let r=0,a=n.length;r<a;r++)t+=n[r]+":"+e[n[r]]+";";return t}function $(e){switch(e){case Int8Array:return 1/127;case Uint8Array:return 1/255;case Int16Array:return 1/32767;case Uint16Array:return 1/65535;default:throw Error("THREE.GLTFLoader: Unsupported normalized accessor component type.")}}let ee=new a.kn4;class et{constructor(e={},t={}){this.json=e,this.extensions={},this.plugins={},this.options=t,this.cache=new h,this.associations=new Map,this.primitiveCache={},this.nodeCache={},this.meshCache={refs:{},uses:{}},this.cameraCache={refs:{},uses:{}},this.lightCache={refs:{},uses:{}},this.sourceCache={},this.textureCache={},this.nodeNamesUsed={};let n=!1,r=!1,l=-1;"u">typeof navigator&&void 0!==navigator.userAgent&&(n=!0===/^((?!chrome|android).)*safari/i.test(navigator.userAgent),l=(r=navigator.userAgent.indexOf("Firefox")>-1)?navigator.userAgent.match(/Firefox\/([0-9]+)\./)[1]:-1),"u"<typeof createImageBitmap||n||r&&l<98?this.textureLoader=new a.Tap(this.options.manager):this.textureLoader=new a.Kzg(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new a.Y9S(this.options.manager),this.fileLoader.setResponseType("arraybuffer"),"use-credentials"===this.options.crossOrigin&&this.fileLoader.setWithCredentials(!0)}setExtensions(e){this.extensions=e}setPlugins(e){this.plugins=e}parse(e,t){let n=this,r=this.json,a=this.extensions;this.cache.removeAll(),this.nodeCache={},this._invokeAll(function(e){return e._markDefs&&e._markDefs()}),Promise.all(this._invokeAll(function(e){return e.beforeRoot&&e.beforeRoot()})).then(function(){return Promise.all([n.getDependencies("scene"),n.getDependencies("animation"),n.getDependencies("camera")])}).then(function(t){let l={scene:t[0][r.scene||0],scenes:t[0],animations:t[1],cameras:t[2],asset:r.asset,parser:n,userData:{}};return V(a,l,r),Z(l,r),Promise.all(n._invokeAll(function(e){return e.afterRoot&&e.afterRoot(l)})).then(function(){for(let e of l.scenes)e.updateMatrixWorld();e(l)})}).catch(t)}_markDefs(){let e=this.json.nodes||[],t=this.json.skins||[],n=this.json.meshes||[];for(let n=0,r=t.length;n<r;n++){let r=t[n].joints;for(let t=0,n=r.length;t<n;t++)e[r[t]].isBone=!0}for(let t=0,r=e.length;t<r;t++){let r=e[t];void 0!==r.mesh&&(this._addNodeRef(this.meshCache,r.mesh),void 0!==r.skin&&(n[r.mesh].isSkinnedMesh=!0)),void 0!==r.camera&&this._addNodeRef(this.cameraCache,r.camera)}}_addNodeRef(e,t){void 0!==t&&(void 0===e.refs[t]&&(e.refs[t]=e.uses[t]=0),e.refs[t]++)}_getNodeRef(e,t,n){if(e.refs[t]<=1)return n;let r=n.clone(),a=(e,t)=>{let n=this.associations.get(e);for(let[r,l]of(null!=n&&this.associations.set(t,n),e.children.entries()))a(l,t.children[r])};return a(n,r),r.name+="_instance_"+e.uses[t]++,r}_invokeOne(e){let t=Object.values(this.plugins);t.push(this);for(let n=0;n<t.length;n++){let r=e(t[n]);if(r)return r}return null}_invokeAll(e){let t=Object.values(this.plugins);t.unshift(this);let n=[];for(let r=0;r<t.length;r++){let a=e(t[r]);a&&n.push(a)}return n}getDependency(e,t){let n=e+":"+t,r=this.cache.get(n);if(!r){switch(e){case"scene":r=this.loadScene(t);break;case"node":r=this._invokeOne(function(e){return e.loadNode&&e.loadNode(t)});break;case"mesh":r=this._invokeOne(function(e){return e.loadMesh&&e.loadMesh(t)});break;case"accessor":r=this.loadAccessor(t);break;case"bufferView":r=this._invokeOne(function(e){return e.loadBufferView&&e.loadBufferView(t)});break;case"buffer":r=this.loadBuffer(t);break;case"material":r=this._invokeOne(function(e){return e.loadMaterial&&e.loadMaterial(t)});break;case"texture":r=this._invokeOne(function(e){return e.loadTexture&&e.loadTexture(t)});break;case"skin":r=this.loadSkin(t);break;case"animation":r=this._invokeOne(function(e){return e.loadAnimation&&e.loadAnimation(t)});break;case"camera":r=this.loadCamera(t);break;default:if(!(r=this._invokeOne(function(n){return n!=this&&n.getDependency&&n.getDependency(e,t)})))throw Error("Unknown type: "+e)}this.cache.add(n,r)}return r}getDependencies(e){let t=this.cache.get(e);if(!t){let n=this;t=Promise.all((this.json[e+("mesh"===e?"es":"s")]||[]).map(function(t,r){return n.getDependency(e,r)})),this.cache.add(e,t)}return t}loadBuffer(e){let t=this.json.buffers[e],n=this.fileLoader;if(t.type&&"arraybuffer"!==t.type)throw Error("THREE.GLTFLoader: "+t.type+" buffer type is not supported.");if(void 0===t.uri&&0===e)return Promise.resolve(this.extensions[m.KHR_BINARY_GLTF].body);let r=this.options;return new Promise(function(e,l){n.load(a.r6x.resolveURL(t.uri,r.path),e,void 0,function(){l(Error('THREE.GLTFLoader: Failed to load buffer "'+t.uri+'".'))})})}loadBufferView(e){let t=this.json.bufferViews[e];return this.getDependency("buffer",t.buffer).then(function(e){let n=t.byteLength||0,r=t.byteOffset||0;return e.slice(r,r+n)})}loadAccessor(e){let t=this,n=this.json,r=this.json.accessors[e];if(void 0===r.bufferView&&void 0===r.sparse){let e=Q[r.type],t=j[r.componentType],n=!0===r.normalized,l=new t(r.count*e);return Promise.resolve(new a.THS(l,e,n))}let l=[];return void 0!==r.bufferView?l.push(this.getDependency("bufferView",r.bufferView)):l.push(null),void 0!==r.sparse&&(l.push(this.getDependency("bufferView",r.sparse.indices.bufferView)),l.push(this.getDependency("bufferView",r.sparse.values.bufferView))),Promise.all(l).then(function(e){let l,i,o=e[0],s=Q[r.type],u=j[r.componentType],c=u.BYTES_PER_ELEMENT,d=c*s,f=r.byteOffset||0,p=void 0!==r.bufferView?n.bufferViews[r.bufferView].byteStride:void 0,h=!0===r.normalized;if(p&&p!==d){let e=Math.floor(f/p),n="InterleavedBuffer:"+r.bufferView+":"+r.componentType+":"+e+":"+r.count,d=t.cache.get(n);d||(l=new u(o,e*p,r.count*p/c),d=new a.eB$(l,p/c),t.cache.add(n,d)),i=new a.eHs(d,s,f%p/c,h)}else l=null===o?new u(r.count*s):new u(o,f,r.count*s),i=new a.THS(l,s,h);if(void 0!==r.sparse){let t=Q.SCALAR,n=j[r.sparse.indices.componentType],l=r.sparse.indices.byteOffset||0,c=r.sparse.values.byteOffset||0,d=new n(e[1],l,r.sparse.count*t),f=new u(e[2],c,r.sparse.count*s);null!==o&&(i=new a.THS(i.array.slice(),i.itemSize,i.normalized));for(let e=0,t=d.length;e<t;e++){let t=d[e];if(i.setX(t,f[e*s]),s>=2&&i.setY(t,f[e*s+1]),s>=3&&i.setZ(t,f[e*s+2]),s>=4&&i.setW(t,f[e*s+3]),s>=5)throw Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.")}}return i})}loadTexture(e){let t=this.json,n=this.options,r=t.textures[e].source,a=t.images[r],l=this.textureLoader;if(a.uri){let e=n.manager.getHandler(a.uri);null!==e&&(l=e)}return this.loadTextureImage(e,r,l)}loadTextureImage(e,t,n){let r=this,a=this.json,l=a.textures[e],i=a.images[t],o=(i.uri||i.bufferView)+":"+l.sampler;if(this.textureCache[o])return this.textureCache[o];let s=this.loadImageSource(t,n).then(function(t){t.flipY=!1,t.name=l.name||i.name||"",""===t.name&&"string"==typeof i.uri&&!1===i.uri.startsWith("data:image/")&&(t.name=i.uri);let n=(a.samplers||{})[l.sampler]||{};return t.magFilter=z[n.magFilter]||1006,t.minFilter=z[n.minFilter]||1008,t.wrapS=K[n.wrapS]||1e3,t.wrapT=K[n.wrapT]||1e3,r.associations.set(t,{textures:e}),t}).catch(function(){return null});return this.textureCache[o]=s,s}loadImageSource(e,t){let n=this.json,r=this.options;if(void 0!==this.sourceCache[e])return this.sourceCache[e].then(e=>e.clone());let l=n.images[e],i=self.URL||self.webkitURL,o=l.uri||"",s=!1;if(void 0!==l.bufferView)o=this.getDependency("bufferView",l.bufferView).then(function(e){s=!0;let t=new Blob([e],{type:l.mimeType});return o=i.createObjectURL(t)});else if(void 0===l.uri)throw Error("THREE.GLTFLoader: Image "+e+" is missing URI and bufferView");let u=Promise.resolve(o).then(function(e){return new Promise(function(n,l){let i=n;!0===t.isImageBitmapLoader&&(i=function(e){let t=new a.gPd(e);t.needsUpdate=!0,n(t)}),t.load(a.r6x.resolveURL(e,r.path),i,void 0,l)})}).then(function(e){var t;return!0===s&&i.revokeObjectURL(o),Z(e,l),e.userData.mimeType=l.mimeType||((t=l.uri).search(/\.jpe?g($|\?)/i)>0||0===t.search(/^data\:image\/jpeg/)?"image/jpeg":t.search(/\.webp($|\?)/i)>0||0===t.search(/^data\:image\/webp/)?"image/webp":"image/png"),e}).catch(function(e){throw console.error("THREE.GLTFLoader: Couldn't load texture",o),e});return this.sourceCache[e]=u,u}assignTexture(e,t,n,r){let a=this;return this.getDependency("texture",n.index).then(function(l){if(!l)return null;if(void 0!==n.texCoord&&n.texCoord>0&&((l=l.clone()).channel=n.texCoord),a.extensions[m.KHR_TEXTURE_TRANSFORM]){let e=void 0!==n.extensions?n.extensions[m.KHR_TEXTURE_TRANSFORM]:void 0;if(e){let t=a.associations.get(l);l=a.extensions[m.KHR_TEXTURE_TRANSFORM].extendTexture(l,e),a.associations.set(l,t)}}return void 0!==r&&("number"==typeof r&&(r=3001===r?d:f),"colorSpace"in l?l.colorSpace=r:l.encoding=r===d?3001:3e3),e[t]=l,l})}assignFinalMaterial(e){let t=e.geometry,n=e.material,r=void 0===t.attributes.tangent,l=void 0!==t.attributes.color,i=void 0===t.attributes.normal;if(e.isPoints){let e="PointsMaterial:"+n.uuid,t=this.cache.get(e);t||(t=new a.BH$,a.imn.prototype.copy.call(t,n),t.color.copy(n.color),t.map=n.map,t.sizeAttenuation=!1,this.cache.add(e,t)),n=t}else if(e.isLine){let e="LineBasicMaterial:"+n.uuid,t=this.cache.get(e);t||(t=new a.mrM,a.imn.prototype.copy.call(t,n),t.color.copy(n.color),t.map=n.map,this.cache.add(e,t)),n=t}if(r||l||i){let e="ClonedMaterial:"+n.uuid+":";r&&(e+="derivative-tangents:"),l&&(e+="vertex-colors:"),i&&(e+="flat-shading:");let t=this.cache.get(e);t||(t=n.clone(),l&&(t.vertexColors=!0),i&&(t.flatShading=!0),r&&(t.normalScale&&(t.normalScale.y*=-1),t.clearcoatNormalScale&&(t.clearcoatNormalScale.y*=-1)),this.cache.add(e,t),this.associations.set(t,this.associations.get(n))),n=t}e.material=n}getMaterialType(){return a._4j}loadMaterial(e){let t,n=this,r=this.json,l=this.extensions,i=r.materials[e],o={},s=i.extensions||{},u=[];if(s[m.KHR_MATERIALS_UNLIT]){let e=l[m.KHR_MATERIALS_UNLIT];t=e.getMaterialType(),u.push(e.extendParams(o,i,n))}else{let r=i.pbrMetallicRoughness||{};if(o.color=new a.Q1f(1,1,1),o.opacity=1,Array.isArray(r.baseColorFactor)){let e=r.baseColorFactor;o.color.setRGB(e[0],e[1],e[2],f),o.opacity=e[3]}void 0!==r.baseColorTexture&&u.push(n.assignTexture(o,"map",r.baseColorTexture,d)),o.metalness=void 0!==r.metallicFactor?r.metallicFactor:1,o.roughness=void 0!==r.roughnessFactor?r.roughnessFactor:1,void 0!==r.metallicRoughnessTexture&&(u.push(n.assignTexture(o,"metalnessMap",r.metallicRoughnessTexture)),u.push(n.assignTexture(o,"roughnessMap",r.metallicRoughnessTexture))),t=this._invokeOne(function(t){return t.getMaterialType&&t.getMaterialType(e)}),u.push(Promise.all(this._invokeAll(function(t){return t.extendMaterialParams&&t.extendMaterialParams(e,o)})))}!0===i.doubleSided&&(o.side=2);let c=i.alphaMode||"OPAQUE";if("BLEND"===c?(o.transparent=!0,o.depthWrite=!1):(o.transparent=!1,"MASK"===c&&(o.alphaTest=void 0!==i.alphaCutoff?i.alphaCutoff:.5)),void 0!==i.normalTexture&&t!==a.V9B&&(u.push(n.assignTexture(o,"normalMap",i.normalTexture)),o.normalScale=new a.I9Y(1,1),void 0!==i.normalTexture.scale)){let e=i.normalTexture.scale;o.normalScale.set(e,e)}if(void 0!==i.occlusionTexture&&t!==a.V9B&&(u.push(n.assignTexture(o,"aoMap",i.occlusionTexture)),void 0!==i.occlusionTexture.strength&&(o.aoMapIntensity=i.occlusionTexture.strength)),void 0!==i.emissiveFactor&&t!==a.V9B){let e=i.emissiveFactor;o.emissive=new a.Q1f().setRGB(e[0],e[1],e[2],f)}return void 0!==i.emissiveTexture&&t!==a.V9B&&u.push(n.assignTexture(o,"emissiveMap",i.emissiveTexture,d)),Promise.all(u).then(function(){let r=new t(o);return i.name&&(r.name=i.name),Z(r,i),n.associations.set(r,{materials:e}),i.extensions&&V(l,r,i),r})}createUniqueName(e){let t=a.Nwf.sanitizeNodeName(e||"");return t in this.nodeNamesUsed?t+"_"+ ++this.nodeNamesUsed[t]:(this.nodeNamesUsed[t]=0,t)}loadGeometries(e){let t=this,n=this.extensions,r=this.primitiveCache,l=[];for(let i=0,o=e.length;i<o;i++){let o=e[i],s=function(e){let t,n=e.extensions&&e.extensions[m.KHR_DRACO_MESH_COMPRESSION];if(t=n?"draco:"+n.bufferView+":"+n.indices+":"+q(n.attributes):e.indices+":"+q(e.attributes)+":"+e.mode,void 0!==e.targets)for(let n=0,r=e.targets.length;n<r;n++)t+=":"+q(e.targets[n]);return t}(o),u=r[s];if(u)l.push(u.promise);else{let e;e=o.extensions&&o.extensions[m.KHR_DRACO_MESH_COMPRESSION]?function(e){return n[m.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(e,t).then(function(n){return en(n,e,t)})}(o):en(new a.LoY,o,t),r[s]={primitive:o,promise:e},l.push(e)}}return Promise.all(l)}loadMesh(e){let t=this,n=this.json,r=this.extensions,l=n.meshes[e],i=l.primitives,o=[];for(let e=0,t=i.length;e<t;e++){var u;let t=void 0===i[e].material?(void 0===(u=this.cache).DefaultMaterial&&(u.DefaultMaterial=new a._4j({color:0xffffff,emissive:0,metalness:1,roughness:1,transparent:!1,depthTest:!0,side:0})),u.DefaultMaterial):this.getDependency("material",i[e].material);o.push(t)}return o.push(t.loadGeometries(i)),Promise.all(o).then(function(n){let o=n.slice(0,n.length-1),u=n[n.length-1],c=[];for(let n=0,d=u.length;n<d;n++){let d,f=u[n],p=i[n],h=o[n];if(p.mode===_.TRIANGLES||p.mode===_.TRIANGLE_STRIP||p.mode===_.TRIANGLE_FAN||void 0===p.mode)!0===(d=!0===l.isSkinnedMesh?new a.I46(f,h):new a.eaF(f,h)).isSkinnedMesh&&d.normalizeSkinWeights(),p.mode===_.TRIANGLE_STRIP?d.geometry=s(d.geometry,1):p.mode===_.TRIANGLE_FAN&&(d.geometry=s(d.geometry,2));else if(p.mode===_.LINES)d=new a.DXC(f,h);else if(p.mode===_.LINE_STRIP)d=new a.N1A(f,h);else if(p.mode===_.LINE_LOOP)d=new a.FCc(f,h);else if(p.mode===_.POINTS)d=new a.ONl(f,h);else throw Error("THREE.GLTFLoader: Primitive mode unsupported: "+p.mode);Object.keys(d.geometry.morphAttributes).length>0&&function(e,t){if(e.updateMorphTargets(),void 0!==t.weights)for(let n=0,r=t.weights.length;n<r;n++)e.morphTargetInfluences[n]=t.weights[n];if(t.extras&&Array.isArray(t.extras.targetNames)){let n=t.extras.targetNames;if(e.morphTargetInfluences.length===n.length){e.morphTargetDictionary={};for(let t=0,r=n.length;t<r;t++)e.morphTargetDictionary[n[t]]=t}else console.warn("THREE.GLTFLoader: Invalid extras.targetNames length. Ignoring names.")}}(d,l),d.name=t.createUniqueName(l.name||"mesh_"+e),Z(d,l),p.extensions&&V(r,d,p),t.assignFinalMaterial(d),c.push(d)}for(let n=0,r=c.length;n<r;n++)t.associations.set(c[n],{meshes:e,primitives:n});if(1===c.length)return l.extensions&&V(r,c[0],l),c[0];let d=new a.YJl;l.extensions&&V(r,d,l),t.associations.set(d,{meshes:e});for(let e=0,t=c.length;e<t;e++)d.add(c[e]);return d})}loadCamera(e){let t,n=this.json.cameras[e],r=n[n.type];return r?("perspective"===n.type?t=new a.ubm(a.cj9.radToDeg(r.yfov),r.aspectRatio||1,r.znear||1,r.zfar||2e6):"orthographic"===n.type&&(t=new a.qUd(-r.xmag,r.xmag,r.ymag,-r.ymag,r.znear,r.zfar)),n.name&&(t.name=this.createUniqueName(n.name)),Z(t,n),Promise.resolve(t)):void console.warn("THREE.GLTFLoader: Missing camera parameters.")}loadSkin(e){let t=this.json.skins[e],n=[];for(let e=0,r=t.joints.length;e<r;e++)n.push(this._loadNodeShallow(t.joints[e]));return void 0!==t.inverseBindMatrices?n.push(this.getDependency("accessor",t.inverseBindMatrices)):n.push(null),Promise.all(n).then(function(e){let n=e.pop(),r=[],l=[];for(let i=0,o=e.length;i<o;i++){let o=e[i];if(o){r.push(o);let e=new a.kn4;null!==n&&e.fromArray(n.array,16*i),l.push(e)}else console.warn('THREE.GLTFLoader: Joint "%s" could not be found.',t.joints[i])}return new a.EAD(r,l)})}loadAnimation(e){let t=this.json,n=this,r=t.animations[e],l=r.name?r.name:"animation_"+e,i=[],o=[],s=[],u=[],c=[];for(let e=0,t=r.channels.length;e<t;e++){let t=r.channels[e],n=r.samplers[t.sampler],a=t.target,l=a.node,d=void 0!==r.parameters?r.parameters[n.input]:n.input,f=void 0!==r.parameters?r.parameters[n.output]:n.output;void 0!==a.node&&(i.push(this.getDependency("node",l)),o.push(this.getDependency("accessor",d)),s.push(this.getDependency("accessor",f)),u.push(n),c.push(a))}return Promise.all([Promise.all(i),Promise.all(o),Promise.all(s),Promise.all(u),Promise.all(c)]).then(function(e){let t=e[0],r=e[1],i=e[2],o=e[3],s=e[4],u=[];for(let e=0,a=t.length;e<a;e++){let a=t[e],l=r[e],c=i[e],d=o[e],f=s[e];if(void 0===a)continue;a.updateMatrix&&a.updateMatrix();let p=n._createAnimationTracks(a,l,c,d,f);if(p)for(let e=0;e<p.length;e++)u.push(p[e])}return new a.tz3(l,void 0,u)})}createNodeMesh(e){let t=this.json,n=this,r=t.nodes[e];return void 0===r.mesh?null:n.getDependency("mesh",r.mesh).then(function(e){let t=n._getNodeRef(n.meshCache,r.mesh,e);return void 0!==r.weights&&t.traverse(function(e){if(e.isMesh)for(let t=0,n=r.weights.length;t<n;t++)e.morphTargetInfluences[t]=r.weights[t]}),t})}loadNode(e){let t=this.json.nodes[e],n=this._loadNodeShallow(e),r=[],a=t.children||[];for(let e=0,t=a.length;e<t;e++)r.push(this.getDependency("node",a[e]));let l=void 0===t.skin?Promise.resolve(null):this.getDependency("skin",t.skin);return Promise.all([n,Promise.all(r),l]).then(function(e){let t=e[0],n=e[1],r=e[2];null!==r&&t.traverse(function(e){e.isSkinnedMesh&&e.bind(r,ee)});for(let e=0,r=n.length;e<r;e++)t.add(n[e]);return t})}_loadNodeShallow(e){let t=this.json,n=this.extensions,r=this;if(void 0!==this.nodeCache[e])return this.nodeCache[e];let l=t.nodes[e],i=l.name?r.createUniqueName(l.name):"",o=[],s=r._invokeOne(function(t){return t.createNodeMesh&&t.createNodeMesh(e)});return s&&o.push(s),void 0!==l.camera&&o.push(r.getDependency("camera",l.camera).then(function(e){return r._getNodeRef(r.cameraCache,l.camera,e)})),r._invokeAll(function(t){return t.createNodeAttachment&&t.createNodeAttachment(e)}).forEach(function(e){o.push(e)}),this.nodeCache[e]=Promise.all(o).then(function(t){let o;if((o=!0===l.isBone?new a.$Kf:t.length>1?new a.YJl:1===t.length?t[0]:new a.B69)!==t[0])for(let e=0,n=t.length;e<n;e++)o.add(t[e]);if(l.name&&(o.userData.name=l.name,o.name=i),Z(o,l),l.extensions&&V(n,o,l),void 0!==l.matrix){let e=new a.kn4;e.fromArray(l.matrix),o.applyMatrix4(e)}else void 0!==l.translation&&o.position.fromArray(l.translation),void 0!==l.rotation&&o.quaternion.fromArray(l.rotation),void 0!==l.scale&&o.scale.fromArray(l.scale);return r.associations.has(o)||r.associations.set(o,{}),r.associations.get(o).nodes=e,o}),this.nodeCache[e]}loadScene(e){let t=this.extensions,n=this.json.scenes[e],r=this,l=new a.YJl;n.name&&(l.name=r.createUniqueName(n.name)),Z(l,n),n.extensions&&V(t,l,n);let i=n.nodes||[],o=[];for(let e=0,t=i.length;e<t;e++)o.push(r.getDependency("node",i[e]));return Promise.all(o).then(function(e){for(let t=0,n=e.length;t<n;t++)l.add(e[t]);return r.associations=(e=>{let t=new Map;for(let[e,n]of r.associations)(e instanceof a.imn||e instanceof a.gPd)&&t.set(e,n);return e.traverse(e=>{let n=r.associations.get(e);null!=n&&t.set(e,n)}),t})(l),l})}_createAnimationTracks(e,t,n,r,l){let i,o=[],s=e.name?e.name:e.uuid,u=[];switch(Y[l.path]===Y.weights?e.traverse(function(e){e.morphTargetInfluences&&u.push(e.name?e.name:e.uuid)}):u.push(s),Y[l.path]){case Y.weights:i=a.Hit;break;case Y.rotation:i=a.MBL;break;case Y.position:case Y.scale:i=a.RiT;break;default:i=1===n.itemSize?a.Hit:a.RiT}let c=void 0!==r.interpolation?W[r.interpolation]:2301,d=this._getArrayFromAccessor(n);for(let e=0,n=u.length;e<n;e++){let n=new i(u[e]+"."+Y[l.path],t.array,d,c);"CUBICSPLINE"===r.interpolation&&this._createCubicSplineTrackInterpolant(n),o.push(n)}return o}_getArrayFromAccessor(e){let t=e.array;if(e.normalized){let e=$(t.constructor),n=new Float32Array(t.length);for(let r=0,a=t.length;r<a;r++)n[r]=t[r]*e;t=n}return t}_createCubicSplineTrackInterpolant(e){e.createInterpolant=function(e){return new(this instanceof a.MBL?U:O)(this.times,this.values,this.getValueSize()/3,e)},e.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline=!0}}function en(e,t,n){let r=t.attributes,l=[];for(let t in r){let a=X[t]||t.toLowerCase();a in e.attributes||l.push(function(t,r){return n.getDependency("accessor",t).then(function(t){e.setAttribute(r,t)})}(r[t],a))}if(void 0!==t.indices&&!e.index){let r=n.getDependency("accessor",t.indices).then(function(t){e.setIndex(t)});l.push(r)}return Z(e,t),!function(e,t,n){let r=t.attributes,l=new a.NRn;if(void 0===r.POSITION)return;{let e=n.json.accessors[r.POSITION],t=e.min,i=e.max;if(void 0===t||void 0===i)return console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.");if(l.set(new a.Pq0(t[0],t[1],t[2]),new a.Pq0(i[0],i[1],i[2])),e.normalized){let t=$(j[e.componentType]);l.min.multiplyScalar(t),l.max.multiplyScalar(t)}}let i=t.targets;if(void 0!==i){let e=new a.Pq0,t=new a.Pq0;for(let r=0,a=i.length;r<a;r++){let a=i[r];if(void 0!==a.POSITION){let r=n.json.accessors[a.POSITION],l=r.min,i=r.max;if(void 0!==l&&void 0!==i){if(t.setX(Math.max(Math.abs(l[0]),Math.abs(i[0]))),t.setY(Math.max(Math.abs(l[1]),Math.abs(i[1]))),t.setZ(Math.max(Math.abs(l[2]),Math.abs(i[2]))),r.normalized){let e=$(j[r.componentType]);t.multiplyScalar(e)}e.max(t)}else console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.")}}l.expandByVector(e)}e.boundingBox=l;let o=new a.iyt;l.getCenter(o.center),o.radius=l.min.distanceTo(l.max)/2,e.boundingSphere=o}(e,t,n),Promise.all(l).then(function(){return void 0!==t.targets?function(e,t,n){let r=!1,a=!1,l=!1;for(let e=0,n=t.length;e<n;e++){let n=t[e];if(void 0!==n.POSITION&&(r=!0),void 0!==n.NORMAL&&(a=!0),void 0!==n.COLOR_0&&(l=!0),r&&a&&l)break}if(!r&&!a&&!l)return Promise.resolve(e);let i=[],o=[],s=[];for(let u=0,c=t.length;u<c;u++){let c=t[u];if(r){let t=void 0!==c.POSITION?n.getDependency("accessor",c.POSITION):e.attributes.position;i.push(t)}if(a){let t=void 0!==c.NORMAL?n.getDependency("accessor",c.NORMAL):e.attributes.normal;o.push(t)}if(l){let t=void 0!==c.COLOR_0?n.getDependency("accessor",c.COLOR_0):e.attributes.color;s.push(t)}}return Promise.all([Promise.all(i),Promise.all(o),Promise.all(s)]).then(function(t){let n=t[0],i=t[1],o=t[2];return r&&(e.morphAttributes.position=n),a&&(e.morphAttributes.normal=i),l&&(e.morphAttributes.color=o),e.morphTargetsRelative=!0,e})}(e,t.targets,n):e})}var er=n(2326);let ea=null,el="https://www.gstatic.com/draco/versioned/decoders/1.5.5/";function ei(e=!0,t=!0,n){return a=>{n&&n(a),e&&(ea||(ea=new i),ea.setDecoderPath("string"==typeof e?e:el),a.setDRACOLoader(ea)),t&&a.setMeshoptDecoder((()=>{let e;if(r)return r;let t=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]),n=new Uint8Array([32,0,65,253,3,1,2,34,4,106,6,5,11,8,7,20,13,33,12,16,128,9,116,64,19,113,127,15,10,21,22,14,255,66,24,54,136,107,18,23,192,26,114,118,132,17,77,101,130,144,27,87,131,44,45,74,156,154,70,167]);if("object"!=typeof WebAssembly)return{supported:!1};let a="B9h9z9tFBBBF8fL9gBB9gLaaaaaFa9gEaaaB9gFaFa9gEaaaFaEMcBFFFGGGEIIILF9wFFFLEFBFKNFaFCx/IFMO/LFVK9tv9t9vq95GBt9f9f939h9z9t9f9j9h9s9s9f9jW9vq9zBBp9tv9z9o9v9wW9f9kv9j9v9kv9WvqWv94h919m9mvqBF8Z9tv9z9o9v9wW9f9kv9j9v9kv9J9u9kv94h919m9mvqBGy9tv9z9o9v9wW9f9kv9j9v9kv9J9u9kv949TvZ91v9u9jvBEn9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9P9jWBIi9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9R919hWBLn9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9F949wBKI9z9iqlBOc+x8ycGBM/qQFTa8jUUUUBCU/EBlHL8kUUUUBC9+RKGXAGCFJAI9LQBCaRKAE2BBC+gF9HQBALAEAIJHOAGlAGTkUUUBRNCUoBAG9uC/wgBZHKCUGAKCUG9JyRVAECFJRICBRcGXEXAcAF9PQFAVAFAclAcAVJAF9JyRMGXGXAG9FQBAMCbJHKC9wZRSAKCIrCEJCGrRQANCUGJRfCBRbAIRTEXGXAOATlAQ9PQBCBRISEMATAQJRIGXAS9FQBCBRtCBREEXGXAOAIlCi9PQBCBRISLMANCU/CBJAEJRKGXGXGXGXGXATAECKrJ2BBAtCKZrCEZfIBFGEBMAKhB83EBAKCNJhB83EBSEMAKAI2BIAI2BBHmCKrHYAYCE6HYy86BBAKCFJAICIJAYJHY2BBAmCIrCEZHPAPCE6HPy86BBAKCGJAYAPJHY2BBAmCGrCEZHPAPCE6HPy86BBAKCEJAYAPJHY2BBAmCEZHmAmCE6Hmy86BBAKCIJAYAmJHY2BBAI2BFHmCKrHPAPCE6HPy86BBAKCLJAYAPJHY2BBAmCIrCEZHPAPCE6HPy86BBAKCKJAYAPJHY2BBAmCGrCEZHPAPCE6HPy86BBAKCOJAYAPJHY2BBAmCEZHmAmCE6Hmy86BBAKCNJAYAmJHY2BBAI2BGHmCKrHPAPCE6HPy86BBAKCVJAYAPJHY2BBAmCIrCEZHPAPCE6HPy86BBAKCcJAYAPJHY2BBAmCGrCEZHPAPCE6HPy86BBAKCMJAYAPJHY2BBAmCEZHmAmCE6Hmy86BBAKCSJAYAmJHm2BBAI2BEHICKrHYAYCE6HYy86BBAKCQJAmAYJHm2BBAICIrCEZHYAYCE6HYy86BBAKCfJAmAYJHm2BBAICGrCEZHYAYCE6HYy86BBAKCbJAmAYJHK2BBAICEZHIAICE6HIy86BBAKAIJRISGMAKAI2BNAI2BBHmCIrHYAYCb6HYy86BBAKCFJAICNJAYJHY2BBAmCbZHmAmCb6Hmy86BBAKCGJAYAmJHm2BBAI2BFHYCIrHPAPCb6HPy86BBAKCEJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCIJAmAYJHm2BBAI2BGHYCIrHPAPCb6HPy86BBAKCLJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCKJAmAYJHm2BBAI2BEHYCIrHPAPCb6HPy86BBAKCOJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCNJAmAYJHm2BBAI2BIHYCIrHPAPCb6HPy86BBAKCVJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCcJAmAYJHm2BBAI2BLHYCIrHPAPCb6HPy86BBAKCMJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCSJAmAYJHm2BBAI2BKHYCIrHPAPCb6HPy86BBAKCQJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCfJAmAYJHm2BBAI2BOHICIrHYAYCb6HYy86BBAKCbJAmAYJHK2BBAICbZHIAICb6HIy86BBAKAIJRISFMAKAI8pBB83BBAKCNJAICNJ8pBB83BBAICTJRIMAtCGJRtAECTJHEAS9JQBMMGXAIQBCBRISEMGXAM9FQBANAbJ2BBRtCBRKAfREEXAEANCU/CBJAKJ2BBHTCFrCBATCFZl9zAtJHt86BBAEAGJREAKCFJHKAM9HQBMMAfCFJRfAIRTAbCFJHbAG9HQBMMABAcAG9sJANCUGJAMAG9sTkUUUBpANANCUGJAMCaJAG9sJAGTkUUUBpMAMCBAIyAcJRcAIQBMC9+RKSFMCBC99AOAIlAGCAAGCA9Ly6yRKMALCU/EBJ8kUUUUBAKM+OmFTa8jUUUUBCoFlHL8kUUUUBC9+RKGXAFCE9uHOCtJAI9LQBCaRKAE2BBHNC/wFZC/gF9HQBANCbZHVCF9LQBALCoBJCgFCUFT+JUUUBpALC84Jha83EBALC8wJha83EBALC8oJha83EBALCAJha83EBALCiJha83EBALCTJha83EBALha83ENALha83EBAEAIJC9wJRcAECFJHNAOJRMGXAF9FQBCQCbAVCF6yRSABRECBRVCBRQCBRfCBRICBRKEXGXAMAcuQBC9+RKSEMGXGXAN2BBHOC/vF9LQBALCoBJAOCIrCa9zAKJCbZCEWJHb8oGIRTAb8oGBRtGXAOCbZHbAS9PQBALAOCa9zAIJCbZCGWJ8oGBAVAbyROAb9FRbGXGXAGCG9HQBABAt87FBABCIJAO87FBABCGJAT87FBSFMAEAtjGBAECNJAOjGBAECIJATjGBMAVAbJRVALCoBJAKCEWJHmAOjGBAmATjGIALAICGWJAOjGBALCoBJAKCFJCbZHKCEWJHTAtjGBATAOjGIAIAbJRIAKCFJRKSGMGXGXAbCb6QBAQAbJAbC989zJCFJRQSFMAM1BBHbCgFZROGXGXAbCa9MQBAMCFJRMSFMAM1BFHbCgBZCOWAOCgBZqROGXAbCa9MQBAMCGJRMSFMAM1BGHbCgBZCfWAOqROGXAbCa9MQBAMCEJRMSFMAM1BEHbCgBZCdWAOqROGXAbCa9MQBAMCIJRMSFMAM2BIC8cWAOqROAMCLJRMMAOCFrCBAOCFZl9zAQJRQMGXGXAGCG9HQBABAt87FBABCIJAQ87FBABCGJAT87FBSFMAEAtjGBAECNJAQjGBAECIJATjGBMALCoBJAKCEWJHOAQjGBAOATjGIALAICGWJAQjGBALCoBJAKCFJCbZHKCEWJHOAtjGBAOAQjGIAICFJRIAKCFJRKSFMGXAOCDF9LQBALAIAcAOCbZJ2BBHbCIrHTlCbZCGWJ8oGBAVCFJHtATyROALAIAblCbZCGWJ8oGBAtAT9FHmJHtAbCbZHTyRbAT9FRTGXGXAGCG9HQBABAV87FBABCIJAb87FBABCGJAO87FBSFMAEAVjGBAECNJAbjGBAECIJAOjGBMALAICGWJAVjGBALCoBJAKCEWJHYAOjGBAYAVjGIALAICFJHICbZCGWJAOjGBALCoBJAKCFJCbZCEWJHYAbjGBAYAOjGIALAIAmJCbZHICGWJAbjGBALCoBJAKCGJCbZHKCEWJHOAVjGBAOAbjGIAKCFJRKAIATJRIAtATJRVSFMAVCBAM2BBHYyHTAOC/+F6HPJROAYCbZRtGXGXAYCIrHmQBAOCFJRbSFMAORbALAIAmlCbZCGWJ8oGBROMGXGXAtQBAbCFJRVSFMAbRVALAIAYlCbZCGWJ8oGBRbMGXGXAP9FQBAMCFJRYSFMAM1BFHYCgFZRTGXGXAYCa9MQBAMCGJRYSFMAM1BGHYCgBZCOWATCgBZqRTGXAYCa9MQBAMCEJRYSFMAM1BEHYCgBZCfWATqRTGXAYCa9MQBAMCIJRYSFMAM1BIHYCgBZCdWATqRTGXAYCa9MQBAMCLJRYSFMAMCKJRYAM2BLC8cWATqRTMATCFrCBATCFZl9zAQJHQRTMGXGXAmCb6QBAYRPSFMAY1BBHMCgFZROGXGXAMCa9MQBAYCFJRPSFMAY1BFHMCgBZCOWAOCgBZqROGXAMCa9MQBAYCGJRPSFMAY1BGHMCgBZCfWAOqROGXAMCa9MQBAYCEJRPSFMAY1BEHMCgBZCdWAOqROGXAMCa9MQBAYCIJRPSFMAYCLJRPAY2BIC8cWAOqROMAOCFrCBAOCFZl9zAQJHQROMGXGXAtCb6QBAPRMSFMAP1BBHMCgFZRbGXGXAMCa9MQBAPCFJRMSFMAP1BFHMCgBZCOWAbCgBZqRbGXAMCa9MQBAPCGJRMSFMAP1BGHMCgBZCfWAbqRbGXAMCa9MQBAPCEJRMSFMAP1BEHMCgBZCdWAbqRbGXAMCa9MQBAPCIJRMSFMAPCLJRMAP2BIC8cWAbqRbMAbCFrCBAbCFZl9zAQJHQRbMGXGXAGCG9HQBABAT87FBABCIJAb87FBABCGJAO87FBSFMAEATjGBAECNJAbjGBAECIJAOjGBMALCoBJAKCEWJHYAOjGBAYATjGIALAICGWJATjGBALCoBJAKCFJCbZCEWJHYAbjGBAYAOjGIALAICFJHICbZCGWJAOjGBALCoBJAKCGJCbZCEWJHOATjGBAOAbjGIALAIAm9FAmCb6qJHICbZCGWJAbjGBAIAt9FAtCb6qJRIAKCEJRKMANCFJRNABCKJRBAECSJREAKCbZRKAICbZRIAfCEJHfAF9JQBMMCBC99AMAc6yRKMALCoFJ8kUUUUBAKM/tIFGa8jUUUUBCTlRLC9+RKGXAFCLJAI9LQBCaRKAE2BBC/+FZC/QF9HQBALhB83ENAECFJRKAEAIJC98JREGXAF9FQBGXAGCG6QBEXGXAKAE9JQBC9+bMAK1BBHGCgFZRIGXGXAGCa9MQBAKCFJRKSFMAK1BFHGCgBZCOWAICgBZqRIGXAGCa9MQBAKCGJRKSFMAK1BGHGCgBZCfWAIqRIGXAGCa9MQBAKCEJRKSFMAK1BEHGCgBZCdWAIqRIGXAGCa9MQBAKCIJRKSFMAK2BIC8cWAIqRIAKCLJRKMALCNJAICFZCGWqHGAICGrCBAICFrCFZl9zAG8oGBJHIjGBABAIjGBABCIJRBAFCaJHFQBSGMMEXGXAKAE9JQBC9+bMAK1BBHGCgFZRIGXGXAGCa9MQBAKCFJRKSFMAK1BFHGCgBZCOWAICgBZqRIGXAGCa9MQBAKCGJRKSFMAK1BGHGCgBZCfWAIqRIGXAGCa9MQBAKCEJRKSFMAK1BEHGCgBZCdWAIqRIGXAGCa9MQBAKCIJRKSFMAK2BIC8cWAIqRIAKCLJRKMABAICGrCBAICFrCFZl9zALCNJAICFZCGWqHI8oGBJHG87FBAIAGjGBABCGJRBAFCaJHFQBMMCBC99AKAE6yRKMAKM+lLKFaF99GaG99FaG99GXGXAGCI9HQBAF9FQFEXGXGX9DBBB8/9DBBB+/ABCGJHG1BB+yAB1BBHE+yHI+L+TABCFJHL1BBHK+yHO+L+THN9DBBBB9gHVyAN9DBB/+hANAN+U9DBBBBANAVyHcAc+MHMAECa3yAI+SHIAI+UAcAMAKCa3yAO+SHcAc+U+S+S+R+VHO+U+SHN+L9DBBB9P9d9FQBAN+oRESFMCUUUU94REMAGAE86BBGXGX9DBBB8/9DBBB+/Ac9DBBBB9gyAcAO+U+SHN+L9DBBB9P9d9FQBAN+oRGSFMCUUUU94RGMALAG86BBGXGX9DBBB8/9DBBB+/AI9DBBBB9gyAIAO+U+SHN+L9DBBB9P9d9FQBAN+oRGSFMCUUUU94RGMABAG86BBABCIJRBAFCaJHFQBSGMMAF9FQBEXGXGX9DBBB8/9DBBB+/ABCIJHG8uFB+yAB8uFBHE+yHI+L+TABCGJHL8uFBHK+yHO+L+THN9DBBBB9gHVyAN9DB/+g6ANAN+U9DBBBBANAVyHcAc+MHMAECa3yAI+SHIAI+UAcAMAKCa3yAO+SHcAc+U+S+S+R+VHO+U+SHN+L9DBBB9P9d9FQBAN+oRESFMCUUUU94REMAGAE87FBGXGX9DBBB8/9DBBB+/Ac9DBBBB9gyAcAO+U+SHN+L9DBBB9P9d9FQBAN+oRGSFMCUUUU94RGMALAG87FBGXGX9DBBB8/9DBBB+/AI9DBBBB9gyAIAO+U+SHN+L9DBBB9P9d9FQBAN+oRGSFMCUUUU94RGMABAG87FBABCNJRBAFCaJHFQBMMM/SEIEaE99EaF99GXAF9FQBCBREABRIEXGXGX9D/zI818/AICKJ8uFBHLCEq+y+VHKAI8uFB+y+UHO9DB/+g6+U9DBBB8/9DBBB+/AO9DBBBB9gy+SHN+L9DBBB9P9d9FQBAN+oRVSFMCUUUU94RVMAICIJ8uFBRcAICGJ8uFBRMABALCFJCEZAEqCFWJAV87FBGXGXAKAM+y+UHN9DB/+g6+U9DBBB8/9DBBB+/AN9DBBBB9gy+SHS+L9DBBB9P9d9FQBAS+oRMSFMCUUUU94RMMABALCGJCEZAEqCFWJAM87FBGXGXAKAc+y+UHK9DB/+g6+U9DBBB8/9DBBB+/AK9DBBBB9gy+SHS+L9DBBB9P9d9FQBAS+oRcSFMCUUUU94RcMABALCaJCEZAEqCFWJAc87FBGXGX9DBBU8/AOAO+U+TANAN+U+TAKAK+U+THO9DBBBBAO9DBBBB9gy+R9DB/+g6+U9DBBB8/+SHO+L9DBBB9P9d9FQBAO+oRcSFMCUUUU94RcMABALCEZAEqCFWJAc87FBAICNJRIAECIJREAFCaJHFQBMMM9JBGXAGCGrAF9sHF9FQBEXABAB8oGBHGCNWCN91+yAGCi91CnWCUUU/8EJ+++U84GBABCIJRBAFCaJHFQBMMM9TFEaCBCB8oGUkUUBHFABCEJC98ZJHBjGUkUUBGXGXAB8/BCTWHGuQBCaREABAGlCggEJCTrXBCa6QFMAFREMAEM/lFFFaGXGXAFABqCEZ9FQBABRESFMGXGXAGCT9PQBABRESFMABREEXAEAF8oGBjGBAECIJAFCIJ8oGBjGBAECNJAFCNJ8oGBjGBAECSJAFCSJ8oGBjGBAECTJREAFCTJRFAGC9wJHGCb9LQBMMAGCI9JQBEXAEAF8oGBjGBAFCIJRFAECIJREAGC98JHGCE9LQBMMGXAG9FQBEXAEAF2BB86BBAECFJREAFCFJRFAGCaJHGQBMMABMoFFGaGXGXABCEZ9FQBABRESFMAFCgFZC+BwsN9sRIGXGXAGCT9PQBABRESFMABREEXAEAIjGBAECSJAIjGBAECNJAIjGBAECIJAIjGBAECTJREAGC9wJHGCb9LQBMMAGCI9JQBEXAEAIjGBAECIJREAGC98JHGCE9LQBMMGXAG9FQBEXAEAF86BBAECFJREAGCaJHGQBMMABMMMFBCUNMIT9kBB";WebAssembly.validate(t)&&(a="B9h9z9tFBBBFiI9gBB9gLaaaaaFa9gEaaaB9gFaFaEMcBBFBFFGGGEILF9wFFFLEFBFKNFaFCx/aFMO/LFVK9tv9t9vq95GBt9f9f939h9z9t9f9j9h9s9s9f9jW9vq9zBBp9tv9z9o9v9wW9f9kv9j9v9kv9WvqWv94h919m9mvqBG8Z9tv9z9o9v9wW9f9kv9j9v9kv9J9u9kv94h919m9mvqBIy9tv9z9o9v9wW9f9kv9j9v9kv9J9u9kv949TvZ91v9u9jvBLn9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9P9jWBKi9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9R919hWBOn9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9F949wBNI9z9iqlBVc+N9IcIBTEM9+FLa8jUUUUBCTlRBCBRFEXCBRGCBREEXABCNJAGJAECUaAFAGrCFZHIy86BBAEAIJREAGCFJHGCN9HQBMAFCx+YUUBJAE86BBAFCEWCxkUUBJAB8pEN83EBAFCFJHFCUG9HQBMMk8lLbaE97F9+FaL978jUUUUBCU/KBlHL8kUUUUBC9+RKGXAGCFJAI9LQBCaRKAE2BBC+gF9HQBALAEAIJHOAGlAG/8cBBCUoBAG9uC/wgBZHKCUGAKCUG9JyRNAECFJRKCBRVGXEXAVAF9PQFANAFAVlAVANJAF9JyRcGXGXAG9FQBAcCbJHIC9wZHMCE9sRSAMCFWRQAICIrCEJCGrRfCBRbEXAKRTCBRtGXEXGXAOATlAf9PQBCBRKSLMALCU/CBJAtAM9sJRmATAfJRKCBREGXAMCoB9JQBAOAKlC/gB9JQBCBRIEXAmAIJREGXGXGXGXGXATAICKrJ2BBHYCEZfIBFGEBMAECBDtDMIBSEMAEAKDBBIAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnHPCGD+MFAPDQBTFtGmEYIPLdKeOnC0+G+MiDtD9OHdCEDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMIBAKCIJAeDeBJAiCx+YUUBJ2BBJRKSGMAEAKDBBNAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnC+P+e+8/4BDtD9OHdCbDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMIBAKCNJAeDeBJAiCx+YUUBJ2BBJRKSFMAEAKDBBBDMIBAKCTJRKMGXGXGXGXGXAYCGrCEZfIBFGEBMAECBDtDMITSEMAEAKDBBIAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnHPCGD+MFAPDQBTFtGmEYIPLdKeOnC0+G+MiDtD9OHdCEDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMITAKCIJAeDeBJAiCx+YUUBJ2BBJRKSGMAEAKDBBNAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnC+P+e+8/4BDtD9OHdCbDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMITAKCNJAeDeBJAiCx+YUUBJ2BBJRKSFMAEAKDBBBDMITAKCTJRKMGXGXGXGXGXAYCIrCEZfIBFGEBMAECBDtDMIASEMAEAKDBBIAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnHPCGD+MFAPDQBTFtGmEYIPLdKeOnC0+G+MiDtD9OHdCEDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMIAAKCIJAeDeBJAiCx+YUUBJ2BBJRKSGMAEAKDBBNAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnC+P+e+8/4BDtD9OHdCbDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMIAAKCNJAeDeBJAiCx+YUUBJ2BBJRKSFMAEAKDBBBDMIAAKCTJRKMGXGXGXGXGXAYCKrfIBFGEBMAECBDtDMI8wSEMAEAKDBBIAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnHPCGD+MFAPDQBTFtGmEYIPLdKeOnC0+G+MiDtD9OHdCEDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHYCEWCxkUUBJDBEBAYCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHYCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMI8wAKCIJAeDeBJAYCx+YUUBJ2BBJRKSGMAEAKDBBNAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnC+P+e+8/4BDtD9OHdCbDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHYCEWCxkUUBJDBEBAYCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHYCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMI8wAKCNJAeDeBJAYCx+YUUBJ2BBJRKSFMAEAKDBBBDMI8wAKCTJRKMAICoBJREAICUFJAM9LQFAERIAOAKlC/fB9LQBMMGXAEAM9PQBAECErRIEXGXAOAKlCi9PQBCBRKSOMAmAEJRYGXGXGXGXGXATAECKrJ2BBAICKZrCEZfIBFGEBMAYCBDtDMIBSEMAYAKDBBIAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnHPCGD+MFAPDQBTFtGmEYIPLdKeOnC0+G+MiDtD9OHdCEDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMIBAKCIJAeDeBJAiCx+YUUBJ2BBJRKSGMAYAKDBBNAKDBBBHPCID+MFAPDQBTFtGmEYIPLdKeOnC+P+e+8/4BDtD9OHdCbDbD8jHPAPDQBFGENVcMILKOSQfbHeD8dBh+BsxoxoUwN0AeD8dFhxoUwkwk+gUa0sHnhTkAnsHnhNkAnsHn7CgFZHiCEWCxkUUBJDBEBAiCx+YUUBJDBBBHeAeDQBBBBBBBBBBBBBBBBAnhAk7CgFZHiCEWCxkUUBJDBEBD9uDQBFGEILKOTtmYPdenDfAdAPD9SDMIBAKCNJAeDeBJAiCx+YUUBJ2BBJRKSFMAYAKDBBBDMIBAKCTJRKMAICGJRIAECTJHEAM9JQBMMGXAK9FQBAKRTAtCFJHtCI6QGSFMMCBRKSEMGXAM9FQBALCUGJAbJREALAbJDBGBReCBRYEXAEALCU/CBJAYJHIDBIBHdCFD9tAdCFDbHPD9OD9hD9RHdAIAMJDBIBH8ZCFD9tA8ZAPD9OD9hD9RH8ZDQBTFtGmEYIPLdKeOnHpAIAQJDBIBHyCFD9tAyAPD9OD9hD9RHyAIASJDBIBH8cCFD9tA8cAPD9OD9hD9RH8cDQBTFtGmEYIPLdKeOnH8dDQBFTtGEmYILPdKOenHPAPDQBFGEBFGEBFGEBFGEAeD9uHeDyBjGBAEAGJHIAeAPAPDQILKOILKOILKOILKOD9uHeDyBjGBAIAGJHIAeAPAPDQNVcMNVcMNVcMNVcMD9uHeDyBjGBAIAGJHIAeAPAPDQSQfbSQfbSQfbSQfbD9uHeDyBjGBAIAGJHIAeApA8dDQNVi8ZcMpySQ8c8dfb8e8fHPAPDQBFGEBFGEBFGEBFGED9uHeDyBjGBAIAGJHIAeAPAPDQILKOILKOILKOILKOD9uHeDyBjGBAIAGJHIAeAPAPDQNVcMNVcMNVcMNVcMD9uHeDyBjGBAIAGJHIAeAPAPDQSQfbSQfbSQfbSQfbD9uHeDyBjGBAIAGJHIAeAdA8ZDQNiV8ZcpMyS8cQ8df8eb8fHdAyA8cDQNiV8ZcpMyS8cQ8df8eb8fH8ZDQBFTtGEmYILPdKOenHPAPDQBFGEBFGEBFGEBFGED9uHeDyBjGBAIAGJHIAeAPAPDQILKOILKOILKOILKOD9uHeDyBjGBAIAGJHIAeAPAPDQNVcMNVcMNVcMNVcMD9uHeDyBjGBAIAGJHIAeAPAPDQSQfbSQfbSQfbSQfbD9uHeDyBjGBAIAGJHIAeAdA8ZDQNVi8ZcMpySQ8c8dfb8e8fHPAPDQBFGEBFGEBFGEBFGED9uHeDyBjGBAIAGJHIAeAPAPDQILKOILKOILKOILKOD9uHeDyBjGBAIAGJHIAeAPAPDQNVcMNVcMNVcMNVcMD9uHeDyBjGBAIAGJHIAeAPAPDQSQfbSQfbSQfbSQfbD9uHeDyBjGBAIAGJREAYCTJHYAM9JQBMMAbCIJHbAG9JQBMMABAVAG9sJALCUGJAcAG9s/8cBBALALCUGJAcCaJAG9sJAG/8cBBMAcCBAKyAVJRVAKQBMC9+RKSFMCBC99AOAKlAGCAAGCA9Ly6yRKMALCU/KBJ8kUUUUBAKMNBT+BUUUBM+KmFTa8jUUUUBCoFlHL8kUUUUBC9+RKGXAFCE9uHOCtJAI9LQBCaRKAE2BBHNC/wFZC/gF9HQBANCbZHVCF9LQBALCoBJCgFCUF/8MBALC84Jha83EBALC8wJha83EBALC8oJha83EBALCAJha83EBALCiJha83EBALCTJha83EBALha83ENALha83EBAEAIJC9wJRcAECFJHNAOJRMGXAF9FQBCQCbAVCF6yRSABRECBRVCBRQCBRfCBRICBRKEXGXAMAcuQBC9+RKSEMGXGXAN2BBHOC/vF9LQBALCoBJAOCIrCa9zAKJCbZCEWJHb8oGIRTAb8oGBRtGXAOCbZHbAS9PQBALAOCa9zAIJCbZCGWJ8oGBAVAbyROAb9FRbGXGXAGCG9HQBABAt87FBABCIJAO87FBABCGJAT87FBSFMAEAtjGBAECNJAOjGBAECIJATjGBMAVAbJRVALCoBJAKCEWJHmAOjGBAmATjGIALAICGWJAOjGBALCoBJAKCFJCbZHKCEWJHTAtjGBATAOjGIAIAbJRIAKCFJRKSGMGXGXAbCb6QBAQAbJAbC989zJCFJRQSFMAM1BBHbCgFZROGXGXAbCa9MQBAMCFJRMSFMAM1BFHbCgBZCOWAOCgBZqROGXAbCa9MQBAMCGJRMSFMAM1BGHbCgBZCfWAOqROGXAbCa9MQBAMCEJRMSFMAM1BEHbCgBZCdWAOqROGXAbCa9MQBAMCIJRMSFMAM2BIC8cWAOqROAMCLJRMMAOCFrCBAOCFZl9zAQJRQMGXGXAGCG9HQBABAt87FBABCIJAQ87FBABCGJAT87FBSFMAEAtjGBAECNJAQjGBAECIJATjGBMALCoBJAKCEWJHOAQjGBAOATjGIALAICGWJAQjGBALCoBJAKCFJCbZHKCEWJHOAtjGBAOAQjGIAICFJRIAKCFJRKSFMGXAOCDF9LQBALAIAcAOCbZJ2BBHbCIrHTlCbZCGWJ8oGBAVCFJHtATyROALAIAblCbZCGWJ8oGBAtAT9FHmJHtAbCbZHTyRbAT9FRTGXGXAGCG9HQBABAV87FBABCIJAb87FBABCGJAO87FBSFMAEAVjGBAECNJAbjGBAECIJAOjGBMALAICGWJAVjGBALCoBJAKCEWJHYAOjGBAYAVjGIALAICFJHICbZCGWJAOjGBALCoBJAKCFJCbZCEWJHYAbjGBAYAOjGIALAIAmJCbZHICGWJAbjGBALCoBJAKCGJCbZHKCEWJHOAVjGBAOAbjGIAKCFJRKAIATJRIAtATJRVSFMAVCBAM2BBHYyHTAOC/+F6HPJROAYCbZRtGXGXAYCIrHmQBAOCFJRbSFMAORbALAIAmlCbZCGWJ8oGBROMGXGXAtQBAbCFJRVSFMAbRVALAIAYlCbZCGWJ8oGBRbMGXGXAP9FQBAMCFJRYSFMAM1BFHYCgFZRTGXGXAYCa9MQBAMCGJRYSFMAM1BGHYCgBZCOWATCgBZqRTGXAYCa9MQBAMCEJRYSFMAM1BEHYCgBZCfWATqRTGXAYCa9MQBAMCIJRYSFMAM1BIHYCgBZCdWATqRTGXAYCa9MQBAMCLJRYSFMAMCKJRYAM2BLC8cWATqRTMATCFrCBATCFZl9zAQJHQRTMGXGXAmCb6QBAYRPSFMAY1BBHMCgFZROGXGXAMCa9MQBAYCFJRPSFMAY1BFHMCgBZCOWAOCgBZqROGXAMCa9MQBAYCGJRPSFMAY1BGHMCgBZCfWAOqROGXAMCa9MQBAYCEJRPSFMAY1BEHMCgBZCdWAOqROGXAMCa9MQBAYCIJRPSFMAYCLJRPAY2BIC8cWAOqROMAOCFrCBAOCFZl9zAQJHQROMGXGXAtCb6QBAPRMSFMAP1BBHMCgFZRbGXGXAMCa9MQBAPCFJRMSFMAP1BFHMCgBZCOWAbCgBZqRbGXAMCa9MQBAPCGJRMSFMAP1BGHMCgBZCfWAbqRbGXAMCa9MQBAPCEJRMSFMAP1BEHMCgBZCdWAbqRbGXAMCa9MQBAPCIJRMSFMAPCLJRMAP2BIC8cWAbqRbMAbCFrCBAbCFZl9zAQJHQRbMGXGXAGCG9HQBABAT87FBABCIJAb87FBABCGJAO87FBSFMAEATjGBAECNJAbjGBAECIJAOjGBMALCoBJAKCEWJHYAOjGBAYATjGIALAICGWJATjGBALCoBJAKCFJCbZCEWJHYAbjGBAYAOjGIALAICFJHICbZCGWJAOjGBALCoBJAKCGJCbZCEWJHOATjGBAOAbjGIALAIAm9FAmCb6qJHICbZCGWJAbjGBAIAt9FAtCb6qJRIAKCEJRKMANCFJRNABCKJRBAECSJREAKCbZRKAICbZRIAfCEJHfAF9JQBMMCBC99AMAc6yRKMALCoFJ8kUUUUBAKM/tIFGa8jUUUUBCTlRLC9+RKGXAFCLJAI9LQBCaRKAE2BBC/+FZC/QF9HQBALhB83ENAECFJRKAEAIJC98JREGXAF9FQBGXAGCG6QBEXGXAKAE9JQBC9+bMAK1BBHGCgFZRIGXGXAGCa9MQBAKCFJRKSFMAK1BFHGCgBZCOWAICgBZqRIGXAGCa9MQBAKCGJRKSFMAK1BGHGCgBZCfWAIqRIGXAGCa9MQBAKCEJRKSFMAK1BEHGCgBZCdWAIqRIGXAGCa9MQBAKCIJRKSFMAK2BIC8cWAIqRIAKCLJRKMALCNJAICFZCGWqHGAICGrCBAICFrCFZl9zAG8oGBJHIjGBABAIjGBABCIJRBAFCaJHFQBSGMMEXGXAKAE9JQBC9+bMAK1BBHGCgFZRIGXGXAGCa9MQBAKCFJRKSFMAK1BFHGCgBZCOWAICgBZqRIGXAGCa9MQBAKCGJRKSFMAK1BGHGCgBZCfWAIqRIGXAGCa9MQBAKCEJRKSFMAK1BEHGCgBZCdWAIqRIGXAGCa9MQBAKCIJRKSFMAK2BIC8cWAIqRIAKCLJRKMABAICGrCBAICFrCFZl9zALCNJAICFZCGWqHI8oGBJHG87FBAIAGjGBABCGJRBAFCaJHFQBMMCBC99AKAE6yRKMAKM/dLEK97FaF97GXGXAGCI9HQBAF9FQFCBRGEXABABDBBBHECiD+rFCiD+sFD/6FHIAECND+rFCiD+sFD/6FAID/gFAECTD+rFCiD+sFD/6FHLD/gFD/kFD/lFHKCBDtD+2FHOAICUUUU94DtHND9OD9RD/kFHI9DBB/+hDYAIAID/mFAKAKD/mFALAOALAND9OD9RD/kFHIAID/mFD/kFD/kFD/jFD/nFHLD/mF9DBBX9LDYHOD/kFCgFDtD9OAECUUU94DtD9OD9QAIALD/mFAOD/kFCND+rFCU/+EDtD9OD9QAKALD/mFAOD/kFCTD+rFCUU/8ODtD9OD9QDMBBABCTJRBAGCIJHGAF9JQBSGMMAF9FQBCBRGEXABCTJHVAVDBBBHECBDtHOCUU98D8cFCUU98D8cEHND9OABDBBBHKAEDQILKOSQfbPden8c8d8e8fCggFDtD9OD/6FAKAEDQBFGENVcMTtmYi8ZpyHECTD+sFD/6FHID/gFAECTD+rFCTD+sFD/6FHLD/gFD/kFD/lFHE9DB/+g6DYALAEAOD+2FHOALCUUUU94DtHcD9OD9RD/kFHLALD/mFAEAED/mFAIAOAIAcD9OD9RD/kFHEAED/mFD/kFD/kFD/jFD/nFHID/mF9DBBX9LDYHOD/kFCTD+rFALAID/mFAOD/kFCggEDtD9OD9QHLAEAID/mFAOD/kFCaDbCBDnGCBDnECBDnKCBDnOCBDncCBDnMCBDnfCBDnbD9OHEDQNVi8ZcMpySQ8c8dfb8e8fD9QDMBBABAKAND9OALAEDQBFTtGEmYILPdKOenD9QDMBBABCAJRBAGCIJHGAF9JQBMMM/hEIGaF97FaL978jUUUUBCTlREGXAF9FQBCBRIEXAEABDBBBHLABCTJHKDBBBHODQILKOSQfbPden8c8d8e8fHNCTD+sFHVCID+rFDMIBAB9DBBU8/DY9D/zI818/DYAVCEDtD9QD/6FD/nFHVALAODQBFGENVcMTtmYi8ZpyHLCTD+rFCTD+sFD/6FD/mFHOAOD/mFAVALCTD+sFD/6FD/mFHcAcD/mFAVANCTD+rFCTD+sFD/6FD/mFHNAND/mFD/kFD/kFD/lFCBDtD+4FD/jF9DB/+g6DYHVD/mF9DBBX9LDYHLD/kFCggEDtHMD9OAcAVD/mFALD/kFCTD+rFD9QHcANAVD/mFALD/kFCTD+rFAOAVD/mFALD/kFAMD9OD9QHVDQBFTtGEmYILPdKOenHLD8dBAEDBIBDyB+t+J83EBABCNJALD8dFAEDBIBDyF+t+J83EBAKAcAVDQNVi8ZcMpySQ8c8dfb8e8fHVD8dBAEDBIBDyG+t+J83EBABCiJAVD8dFAEDBIBDyE+t+J83EBABCAJRBAICIJHIAF9JQBMMM9jFF97GXAGCGrAF9sHG9FQBCBRFEXABABDBBBHECND+rFCND+sFD/6FAECiD+sFCnD+rFCUUU/8EDtD+uFD/mFDMBBABCTJRBAFCIJHFAG9JQBMMM9TFEaCBCB8oGUkUUBHFABCEJC98ZJHBjGUkUUBGXGXAB8/BCTWHGuQBCaREABAGlCggEJCTrXBCa6QFMAFREMAEMMMFBCUNMIT9tBB");let l=WebAssembly.instantiate(function(e){let t=new Uint8Array(e.length);for(let n=0;n<e.length;++n){let r=e.charCodeAt(n);t[n]=r>96?r-71:r>64?r-65:r>47?r+4:r>46?63:62}let r=0;for(let a=0;a<e.length;++a)t[r++]=t[a]<60?n[t[a]]:(t[a]-60)*64+t[++a];return t.buffer.slice(0,r)}(a),{}).then(t=>{(e=t.instance).exports.__wasm_call_ctors()});function i(t,n,r,a,l,i){let o=e.exports.sbrk,s=r+3&-4,u=o(s*a),c=o(l.length),d=new Uint8Array(e.exports.memory.buffer);d.set(l,c);let f=t(u,r,a,c,l.length);if(0===f&&i&&i(u,s,a),n.set(d.subarray(u,u+r*a)),o(u-o(0)),0!==f)throw Error(`Malformed buffer data: ${f}`)}let o={0:"",1:"meshopt_decodeFilterOct",2:"meshopt_decodeFilterQuat",3:"meshopt_decodeFilterExp",NONE:"",OCTAHEDRAL:"meshopt_decodeFilterOct",QUATERNION:"meshopt_decodeFilterQuat",EXPONENTIAL:"meshopt_decodeFilterExp"},s={0:"meshopt_decodeVertexBuffer",1:"meshopt_decodeIndexBuffer",2:"meshopt_decodeIndexSequence",ATTRIBUTES:"meshopt_decodeVertexBuffer",TRIANGLES:"meshopt_decodeIndexBuffer",INDICES:"meshopt_decodeIndexSequence"};return r={ready:l,supported:!0,decodeVertexBuffer(t,n,r,a,l){i(e.exports.meshopt_decodeVertexBuffer,t,n,r,a,e.exports[o[l]])},decodeIndexBuffer(t,n,r,a){i(e.exports.meshopt_decodeIndexBuffer,t,n,r,a)},decodeIndexSequence(t,n,r,a){i(e.exports.meshopt_decodeIndexSequence,t,n,r,a)},decodeGltfBuffer(t,n,r,a,l,u){i(e.exports[s[l]],t,n,r,a,e.exports[o[u]])}}})())}}let eo=(e,t,n,r)=>(0,er.G)(p,e,ei(t,n,r));eo.preload=(e,t,n,r)=>er.G.preload(p,e,ei(t,n,r)),eo.clear=e=>er.G.clear(p,e),eo.setDecoderPath=e=>{el=e}},350(e,t,n){let r;n.d(t,{p:()=>u});var a=n(9081),l=n(308),i=n(4138);let o=e=>{let t=(0,i.y)(e),n=e=>(function(e,t=e=>e){let n=a.useSyncExternalStore(e.subscribe,a.useCallback(()=>t(e.getState()),[e,t]),a.useCallback(()=>t(e.getInitialState()),[e,t]));return a.useDebugValue(n),n})(t,e);return Object.assign(n,t),n},s=0,u=(r=e=>(l.h_9.onStart=(t,n,r)=>{e({active:!0,item:t,loaded:n,total:r,progress:(n-s)/(r-s)*100})},l.h_9.onLoad=()=>{e({active:!1})},l.h_9.onError=t=>e(e=>({errors:[...e.errors,t]})),l.h_9.onProgress=(t,n,r)=>{n===r&&(s=r),e({active:!0,item:t,loaded:n,total:r,progress:(n-s)/(r-s)*100||100})},{errors:[],active:!1,progress:0,item:"",loaded:0,total:0}))?o(r):o},2326(e,t,n){let r,a,l,i,o,s,u,c,d;n.d(t,{E:()=>N,f:()=>eZ,u:()=>k,c:()=>eG,B:()=>L,n:()=>eW,o:()=>eL,C:()=>eo,d:()=>ek,G:()=>ed,a:()=>P,D:()=>es,e:()=>ev,i:()=>D,b:()=>G});var f,p,h,m,A=n(9081),g=n.t(A,2),B=n(308),v=n(1519),C=n(6858),b=n(4138);let{useSyncExternalStoreWithSelector:y}=C,E=(e,t)=>{let n=(0,b.y)(e),r=(e,r=t)=>(function(e,t=e=>e,n){let r=y(e.subscribe,e.getState,e.getInitialState,t,n);return A.useDebugValue(r),r})(n,e,r);return Object.assign(r,n),r},w=(e,t)=>e?E(e,t):E,S=[];function x(e,t,n=(e,t)=>e===t){if(e===t)return!0;if(!e||!t)return!1;let r=e.length;if(t.length!==r)return!1;for(let a=0;a<r;a++)if(!n(e[a],t[a]))return!1;return!0}function R(e,t=null,n=!1,r={}){for(let a of(null===t&&(t=[e]),S))if(x(t,a.keys,a.equal)){if(n)return;if(Object.prototype.hasOwnProperty.call(a,"error"))throw a.error;if(Object.prototype.hasOwnProperty.call(a,"response"))return r.lifespan&&r.lifespan>0&&(a.timeout&&clearTimeout(a.timeout),a.timeout=setTimeout(a.remove,r.lifespan)),a.response;if(!n)throw a.promise}let a={keys:t,equal:r.equal,remove:()=>{let e=S.indexOf(a);-1!==e&&S.splice(e,1)},promise:("object"==typeof e&&"function"==typeof e.then?e:e(...t)).then(e=>{a.response=e,r.lifespan&&r.lifespan>0&&(a.timeout=setTimeout(a.remove,r.lifespan))}).catch(e=>a.error=e)};if(S.push(a),!n)throw a.promise}var F=n(1099),M=n(8525),I=n(7510);function T(e){let t=e.root;for(;t.getState().previousRoot;)t=t.getState().previousRoot;return t}g.act;let D=e=>e&&e.hasOwnProperty("current"),H=e=>null!=e&&("string"==typeof e||"number"==typeof e||e.isColor),G="u">typeof window&&((null==(s=window.document)?void 0:s.createElement)||(null==(u=window.navigator)?void 0:u.product)==="ReactNative")?A.useLayoutEffect:A.useEffect;function P(e){let t=A.useRef(e);return G(()=>void(t.current=e),[e]),t}function k(){let e=(0,I.u5)(),t=(0,I.y3)();return A.useMemo(()=>({children:n})=>{let r=(0,I.Nz)(e,!0,e=>e.type===A.StrictMode)?A.StrictMode:A.Fragment;return(0,M.jsx)(r,{children:(0,M.jsx)(t,{children:n})})},[e,t])}function L({set:e}){return G(()=>(e(new Promise(()=>null)),()=>e(!1)),[e]),null}let N=((c=class extends A.Component{constructor(...e){super(...e),this.state={error:!1}}componentDidCatch(e){this.props.set(e)}render(){return this.state.error?null:this.props.children}}).getDerivedStateFromError=()=>({error:!0}),c);function O(e){var t;let n="u">typeof window?null!=(t=window.devicePixelRatio)?t:2:1;return Array.isArray(e)?Math.min(Math.max(e[0],n),e[1]):e}function J(e){var t;return null==(t=e.__r3f)?void 0:t.root.getState()}let U={obj:e=>e===Object(e)&&!U.arr(e)&&"function"!=typeof e,fun:e=>"function"==typeof e,str:e=>"string"==typeof e,num:e=>"number"==typeof e,boo:e=>"boolean"==typeof e,und:e=>void 0===e,nul:e=>null===e,arr:e=>Array.isArray(e),equ(e,t,{arrays:n="shallow",objects:r="reference",strict:a=!0}={}){let l;if(typeof e!=typeof t||!!e!=!!t)return!1;if(U.str(e)||U.num(e)||U.boo(e))return e===t;let i=U.obj(e);if(i&&"reference"===r)return e===t;let o=U.arr(e);if(o&&"reference"===n)return e===t;if((o||i)&&e===t)return!0;for(l in e)if(!(l in t))return!1;if(i&&"shallow"===n&&"shallow"===r){for(l in a?t:e)if(!U.equ(e[l],t[l],{strict:a,objects:"reference"}))return!1}else for(l in a?t:e)if(e[l]!==t[l])return!1;if(U.und(l)){if(o&&0===e.length&&0===t.length||i&&0===Object.keys(e).length&&0===Object.keys(t).length)return!0;if(e!==t)return!1}return!0}},_=["children","key","ref"];function j(e,t,n,r){let a=null==e?void 0:e.__r3f;return!a&&(a={root:t,type:n,parent:null,children:[],props:function(e){let t={};for(let n in e)_.includes(n)||(t[n]=e[n]);return t}(r),object:e,eventCount:0,handlers:{},isHidden:!1},e&&(e.__r3f=a)),a}function z(e,t){if(!t.includes("-")||t in e)return{root:e,key:t,target:e[t]};let n=e,r=t.split("-");for(let a of r){if("object"!=typeof n||null===n){if(void 0!==n)return{root:n,key:r.slice(r.indexOf(a)).join("-"),target:void 0};return{root:e,key:t,target:void 0}}t=a,e=n,n=n[t]}return{root:e,key:t,target:n}}let K=/-\d+$/;function Q(e,t){if(U.str(t.props.attach)){if(K.test(t.props.attach)){let n=t.props.attach.replace(K,""),{root:r,key:a}=z(e.object,n);Array.isArray(r[a])||(r[a]=[])}let{root:n,key:r}=z(e.object,t.props.attach);t.previousAttach=n[r],n[r]=t.object}else U.fun(t.props.attach)&&(t.previousAttach=t.props.attach(e.object,t.object))}function X(e,t){if(U.str(t.props.attach)){let{root:n,key:r}=z(e.object,t.props.attach),a=t.previousAttach;void 0===a?delete n[r]:n[r]=a}else null==t.previousAttach||t.previousAttach(e.object,t.object);delete t.previousAttach}let Y=[..._,"args","dispose","attach","object","onUpdate","dispose"],W=new Map,V=["map","emissiveMap","sheenColorMap","specularColorMap","envMap"],Z=/^on(Pointer|Click|DoubleClick|ContextMenu|Wheel)/;function q(e,t){var n,r;let a=e.__r3f,l=a&&T(a).getState(),i=null==a?void 0:a.eventCount;for(let n in t){let i=t[n];if(Y.includes(n))continue;if(a&&Z.test(n)){"function"==typeof i?a.handlers[n]=i:delete a.handlers[n],a.eventCount=Object.keys(a.handlers).length;continue}if(void 0===i)continue;let{root:o,key:s,target:u}=z(e,n);if(void 0===u&&("object"!=typeof o||null===o))throw Error(`R3F: Cannot set "${n}". Ensure it is an object before setting "${s}".`);u instanceof B.zgK&&i instanceof B.zgK?u.mask=i.mask:u instanceof B.Q1f&&H(i)?u.set(i):null!==u&&"object"==typeof u&&"function"==typeof u.set&&"function"==typeof u.copy&&null!=i&&i.constructor&&u.constructor===i.constructor?u.copy(i):null!==u&&"object"==typeof u&&"function"==typeof u.set&&Array.isArray(i)?"function"==typeof u.fromArray?u.fromArray(i):u.set(...i):null!==u&&"object"==typeof u&&"function"==typeof u.set&&"number"==typeof i?"function"==typeof u.setScalar?u.setScalar(i):u.set(i):(o[s]=i,l&&!l.linear&&V.includes(s)&&null!=(r=o[s])&&r.isTexture&&1023===o[s].format&&1009===o[s].type&&(o[s].colorSpace="srgb"))}if(null!=a&&a.parent&&null!=l&&l.internal&&null!=(n=a.object)&&n.isObject3D&&i!==a.eventCount){let e=a.object,t=l.internal.interaction.indexOf(e);t>-1&&l.internal.interaction.splice(t,1),a.eventCount&&null!==e.raycast&&l.internal.interaction.push(e)}return a&&void 0===a.props.attach&&(a.object.isBufferGeometry?a.props.attach="geometry":a.object.isMaterial&&(a.props.attach="material")),a&&$(a),e}function $(e){var t;if(!e.parent)return;null==e.props.onUpdate||e.props.onUpdate(e.object);let n=null==(t=e.root)||null==t.getState?void 0:t.getState();n&&0===n.internal.frames&&n.invalidate()}function ee(e,t){!e.manual&&(e&&e.isOrthographicCamera?(e.left=-(t.width/2),e.right=t.width/2,e.top=t.height/2,e.bottom=-(t.height/2)):e.aspect=t.width/t.height,e.updateProjectionMatrix())}let et=e=>null==e?void 0:e.isObject3D;function en(e){return(e.eventObject||e.object).uuid+"/"+e.index+e.instanceId}function er(e,t,n,r){let a=n.get(t);a&&(n.delete(t),0===n.size&&(e.delete(r),a.target.releasePointerCapture(r)))}let ea=e=>!!(null!=e&&e.render),el=A.createContext(null);function ei(){let e=A.useContext(el);if(!e)throw Error("R3F: Hooks can only be used within the Canvas component!");return e}function eo(e=e=>e,t){return ei()(e,t)}function es(e,t=0){let n=ei(),r=n.getState().internal.subscribe,a=P(e);return G(()=>r(a,t,n),[t,r,n]),null}let eu=new WeakMap;function ec(e,t){return function(n,...r){var a;let l;return"function"==typeof n&&(null==n||null==(a=n.prototype)?void 0:a.constructor)===n?(l=eu.get(n))||(l=new n,eu.set(n,l)):l=n,e&&e(l),Promise.all(r.map(e=>new Promise((n,r)=>l.load(e,e=>{var t;let r;et(null==e?void 0:e.scene)&&Object.assign(e,(t=e.scene,r={nodes:{},materials:{},meshes:{}},t&&t.traverse(e=>{e.name&&(r.nodes[e.name]=e),e.material&&!r.materials[e.material.name]&&(r.materials[e.material.name]=e.material),e.isMesh&&!r.meshes[e.name]&&(r.meshes[e.name]=e)}),r)),n(e)},t,t=>r(Error(`Could not load ${e}: ${null==t?void 0:t.message}`))))))}}function ed(e,t,n,r){let a=Array.isArray(t)?t:[t],l=R(ec(n,r),[e,...a],!1,{equal:U.equ});return Array.isArray(t)?l:l[0]}ed.preload=function(e,t,n){let r,a=Array.isArray(t)?t:[t];R(ec(n),[e,...a],!0,r)},ed.clear=function(e,t){var n=[e,...Array.isArray(t)?t:[t]];if(void 0===n||0===n.length)S.splice(0,S.length);else{let e=S.find(e=>x(n,e.keys,e.equal));e&&e.remove()}};var ef={exports:{}},ep={exports:{}};ep.exports;let eh=(m||(m=1,h||(h=1,ep.exports=function(e){function t(e,t,n,r){return new rY(e,t,n,r)}function n(){}function r(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function a(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do(4098&(t=e).flags)!=0&&(n=t.return),e=t.return;while(e)}return 3===t.tag?n:null}function l(e){if(a(e)!==e)throw Error(r(188))}function i(e){var t=e.alternate;if(!t){if(null===(t=a(e)))throw Error(r(188));return t!==e?null:e}for(var n=e,i=t;;){var o=n.return;if(null===o)break;var s=o.alternate;if(null===s){if(null!==(i=o.return)){n=i;continue}break}if(o.child===s.child){for(s=o.child;s;){if(s===n)return l(o),e;if(s===i)return l(o),t;s=s.sibling}throw Error(r(188))}if(n.return!==i.return)n=o,i=s;else{for(var u=!1,c=o.child;c;){if(c===n){u=!0,n=o,i=s;break}if(c===i){u=!0,i=o,n=s;break}c=c.sibling}if(!u){for(c=s.child;c;){if(c===n){u=!0,n=s,i=o;break}if(c===i){u=!0,i=s,n=o;break}c=c.sibling}if(!u)throw Error(r(189))}}if(n.alternate!==i)throw Error(r(190))}if(3!==n.tag)throw Error(r(188));return n.stateNode.current===n?e:t}function o(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=aA&&e[aA]||e["@@iterator"])?e:null}function s(e){if(null==e)return null;if("function"==typeof e)return e.$$typeof===ag?null:e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case aa:return"Fragment";case ai:return"Profiler";case al:return"StrictMode";case ac:return"Suspense";case ad:return"SuspenseList";case ah:return"Activity"}if("object"==typeof e)switch(e.$$typeof){case ar:return"Portal";case as:return e.displayName||"Context";case ao:return(e._context.displayName||"Context")+".Consumer";case au:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case af:return null!==(t=e.displayName||null)?t:s(e.type)||"Memo";case ap:t=e._payload,e=e._init;try{return s(e(t))}catch{}}return null}function u(e){return{current:e}}function c(e){0>iy||(e.current=ib[iy],ib[iy]=null,iy--)}function d(e,t){ib[++iy]=e.current,e.current=t}function f(e){var t=42&e;if(0!==t)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return 261888&e;case 262144:case 524288:case 1048576:case 2097152:return 3932160&e;case 4194304:case 8388608:case 0x1000000:case 0x2000000:return 0x3c00000&e;case 0x4000000:return 0x4000000;case 0x8000000:return 0x8000000;case 0x10000000:return 0x10000000;case 0x20000000:return 0x20000000;case 0x40000000:return 0;default:return e}}function p(e,t,n){var r=e.pendingLanes;if(0===r)return 0;var a=0,l=e.suspendedLanes,i=e.pingedLanes;e=e.warmLanes;var o=0x7ffffff&r;return 0!==o?0!=(r=o&~l)?a=f(r):0!=(i&=o)?a=f(i):n||0!=(n=o&~e)&&(a=f(n)):0!=(o=r&~l)?a=f(o):0!==i?a=f(i):n||0!=(n=r&~e)&&(a=f(n)),0===a?0:0!==t&&t!==a&&(t&l)==0&&((l=a&-a)>=(n=t&-t)||32===l&&(4194048&n)!=0)?t:a}function h(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)==0}function m(){var e=iM;return(0x3c00000&(iM<<=1))==0&&(iM=4194304),e}function g(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function B(e,t){e.pendingLanes|=t,0x10000000!==t&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function v(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-iw(t);e.entangledLanes|=t,e.entanglements[r]=0x40000000|e.entanglements[r]|261930&n}function C(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-iw(n),a=1<<r;a&t|e[r]&t&&(e[r]|=t),n&=~a}}function b(e,t){var n=t&-t;return((n=(42&n)!=0?1:y(n))&(e.suspendedLanes|t))!=0?0:n}function y(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 0x1000000:case 0x2000000:e=128;break;case 0x10000000:e=0x8000000;break;default:e=0}return e}function E(e){return 2<(e&=-e)?8<e?(0x7ffffff&e)!=0?32:0x10000000:8:2}function w(e){if("function"==typeof iO&&iJ(e),i_&&"function"==typeof i_.setStrictMode)try{i_.setStrictMode(iU,e)}catch{}}function S(e){if(void 0===l3)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);l3=t&&t[1]||"",l6=-1<e.stack.indexOf(`
1
+ /*! For license information please see ar.chunk.c6ed8faf.min.js.LICENSE.txt */
2
+ "use strict";(self.webpackChunk_neurodyn_ar=self.webpackChunk_neurodyn_ar||[]).push([["562"],{5148(e,t,n){let r;n.d(t,{p:()=>eo}),n(9081);var a=n(308);let l=new WeakMap;class i extends a.aHM{constructor(e){super(e),this.decoderPath="",this.decoderConfig={},this.decoderBinary=null,this.decoderPending=null,this.workerLimit=4,this.workerPool=[],this.workerNextTaskID=1,this.workerSourceURL="",this.defaultAttributeIDs={position:"POSITION",normal:"NORMAL",color:"COLOR",uv:"TEX_COORD"},this.defaultAttributeTypes={position:"Float32Array",normal:"Float32Array",color:"Float32Array",uv:"Float32Array"}}setDecoderPath(e){return this.decoderPath=e,this}setDecoderConfig(e){return this.decoderConfig=e,this}setWorkerLimit(e){return this.workerLimit=e,this}load(e,t,n,r){let l=new a.Y9S(this.manager);l.setPath(this.path),l.setResponseType("arraybuffer"),l.setRequestHeader(this.requestHeader),l.setWithCredentials(this.withCredentials),l.load(e,e=>{let n={attributeIDs:this.defaultAttributeIDs,attributeTypes:this.defaultAttributeTypes,useUniqueIDs:!1};this.decodeGeometry(e,n).then(t).catch(r)},n,r)}decodeDracoFile(e,t,n,r){let a={attributeIDs:n||this.defaultAttributeIDs,attributeTypes:r||this.defaultAttributeTypes,useUniqueIDs:!!n};this.decodeGeometry(e,a).then(t)}decodeGeometry(e,t){let n;for(let e in t.attributeTypes){let n=t.attributeTypes[e];void 0!==n.BYTES_PER_ELEMENT&&(t.attributeTypes[e]=n.name)}let r=JSON.stringify(t);if(l.has(e)){let t=l.get(e);if(t.key===r)return t.promise;if(0===e.byteLength)throw Error("THREE.DRACOLoader: Unable to re-decode a buffer with different settings. Buffer has already been transferred.")}let a=this.workerNextTaskID++,i=e.byteLength,o=this._getWorker(a,i).then(r=>(n=r,new Promise((r,l)=>{n._callbacks[a]={resolve:r,reject:l},n.postMessage({type:"decode",id:a,taskConfig:t,buffer:e},[e])}))).then(e=>this._createGeometry(e.geometry));return o.catch(()=>!0).then(()=>{n&&a&&this._releaseTask(n,a)}),l.set(e,{key:r,promise:o}),o}_createGeometry(e){let t=new a.LoY;e.index&&t.setIndex(new a.THS(e.index.array,1));for(let n=0;n<e.attributes.length;n++){let r=e.attributes[n],l=r.name,i=r.array,o=r.itemSize;t.setAttribute(l,new a.THS(i,o))}return t}_loadLibrary(e,t){let n=new a.Y9S(this.manager);return n.setPath(this.decoderPath),n.setResponseType(t),n.setWithCredentials(this.withCredentials),new Promise((t,r)=>{n.load(e,t,void 0,r)})}preload(){return this._initDecoder(),this}_initDecoder(){if(this.decoderPending)return this.decoderPending;let e="object"!=typeof WebAssembly||"js"===this.decoderConfig.type,t=[];return e?t.push(this._loadLibrary("draco_decoder.js","text")):(t.push(this._loadLibrary("draco_wasm_wrapper.js","text")),t.push(this._loadLibrary("draco_decoder.wasm","arraybuffer"))),this.decoderPending=Promise.all(t).then(t=>{let n=t[0];e||(this.decoderConfig.wasmBinary=t[1]);let r=o.toString(),a=["/* draco decoder */",n,"\n/* worker */",r.substring(r.indexOf("{")+1,r.lastIndexOf("}"))].join("\n");this.workerSourceURL=URL.createObjectURL(new Blob([a]))}),this.decoderPending}_getWorker(e,t){return this._initDecoder().then(()=>{if(this.workerPool.length<this.workerLimit){let e=new Worker(this.workerSourceURL);e._callbacks={},e._taskCosts={},e._taskLoad=0,e.postMessage({type:"init",decoderConfig:this.decoderConfig}),e.onmessage=function(t){let n=t.data;switch(n.type){case"decode":e._callbacks[n.id].resolve(n);break;case"error":e._callbacks[n.id].reject(n);break;default:console.error('THREE.DRACOLoader: Unexpected message, "'+n.type+'"')}},this.workerPool.push(e)}else this.workerPool.sort(function(e,t){return e._taskLoad>t._taskLoad?-1:1});let n=this.workerPool[this.workerPool.length-1];return n._taskCosts[e]=t,n._taskLoad+=t,n})}_releaseTask(e,t){e._taskLoad-=e._taskCosts[t],delete e._callbacks[t],delete e._taskCosts[t]}debug(){console.log("Task load: ",this.workerPool.map(e=>e._taskLoad))}dispose(){for(let e=0;e<this.workerPool.length;++e)this.workerPool[e].terminate();return this.workerPool.length=0,this}}function o(){let e,t;onmessage=function(n){let r=n.data;switch(r.type){case"init":e=r.decoderConfig,t=new Promise(function(t){e.onModuleLoaded=function(e){t({draco:e})},DracoDecoderModule(e)});break;case"decode":let a=r.buffer,l=r.taskConfig;t.then(e=>{let t=e.draco,n=new t.Decoder,i=new t.DecoderBuffer;i.Init(new Int8Array(a),a.byteLength);try{let e=function(e,t,n,r){var a,l,i;let o,s,u,c,d,f,p=r.attributeIDs,h=r.attributeTypes,m=t.GetEncodedGeometryType(n);if(m===e.TRIANGULAR_MESH)d=new e.Mesh,f=t.DecodeBufferToMesh(n,d);else if(m===e.POINT_CLOUD)d=new e.PointCloud,f=t.DecodeBufferToPointCloud(n,d);else throw Error("THREE.DRACOLoader: Unexpected geometry type.");if(!f.ok()||0===d.ptr)throw Error("THREE.DRACOLoader: Decoding failed: "+f.error_msg());let A={index:null,attributes:[]};for(let n in p){let a,l,i=self[h[n]];if(r.useUniqueIDs)l=p[n],a=t.GetAttributeByUniqueId(d,l);else{if(-1===(l=t.GetAttributeId(d,e[p[n]])))continue;a=t.GetAttribute(d,l)}A.attributes.push(function(e,t,n,r,a,l){let i=l.num_components(),o=n.num_points()*i,s=o*a.BYTES_PER_ELEMENT,u=function(e,t){switch(t){case Float32Array:return e.DT_FLOAT32;case Int8Array:return e.DT_INT8;case Int16Array:return e.DT_INT16;case Int32Array:return e.DT_INT32;case Uint8Array:return e.DT_UINT8;case Uint16Array:return e.DT_UINT16;case Uint32Array:return e.DT_UINT32}}(e,a),c=e._malloc(s);t.GetAttributeDataArrayForAllPoints(n,l,u,s,c);let d=new a(e.HEAPF32.buffer,c,o).slice();return e._free(c),{name:r,array:d,itemSize:i}}(e,t,d,n,i,a))}return m===e.TRIANGULAR_MESH&&(a=e,l=t,i=d,o=3*i.num_faces(),s=4*o,u=a._malloc(s),l.GetTrianglesUInt32Array(i,s,u),c=new Uint32Array(a.HEAPF32.buffer,u,o).slice(),a._free(u),A.index={array:c,itemSize:1}),e.destroy(d),A}(t,n,i,l),a=e.attributes.map(e=>e.array.buffer);e.index&&a.push(e.index.array.buffer),self.postMessage({type:"decode",id:r.id,geometry:e},a)}catch(e){console.error(e),self.postMessage({type:"error",id:r.id,error:e.message})}finally{t.destroy(i),t.destroy(n)}})}}}function s(e,t){if(0===t)return console.warn("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles."),e;if(2!==t&&1!==t)return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:",t),e;{let n=e.getIndex();if(null===n){let t=[],r=e.getAttribute("position");if(void 0===r)return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible."),e;for(let e=0;e<r.count;e++)t.push(e);e.setIndex(t),n=e.getIndex()}let r=n.count-2,a=[];if(n)if(2===t)for(let e=1;e<=r;e++)a.push(n.getX(0)),a.push(n.getX(e)),a.push(n.getX(e+1));else for(let e=0;e<r;e++)e%2==0?(a.push(n.getX(e)),a.push(n.getX(e+1)),a.push(n.getX(e+2))):(a.push(n.getX(e+2)),a.push(n.getX(e+1)),a.push(n.getX(e)));a.length/3!==r&&console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unable to generate correct amount of triangles.");let l=e.clone();return l.setIndex(a),l.clearGroups(),l}}let u=parseInt("185".replace(/\D+/g,""));function c(e){if("u">typeof TextDecoder)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(e){return t}}let d="srgb",f="srgb-linear";class p extends a.aHM{constructor(e){super(e),this.dracoLoader=null,this.ktx2Loader=null,this.meshoptDecoder=null,this.pluginCallbacks=[],this.register(function(e){return new v(e)}),this.register(function(e){return new C(e)}),this.register(function(e){return new M(e)}),this.register(function(e){return new I(e)}),this.register(function(e){return new T(e)}),this.register(function(e){return new y(e)}),this.register(function(e){return new E(e)}),this.register(function(e){return new w(e)}),this.register(function(e){return new S(e)}),this.register(function(e){return new B(e)}),this.register(function(e){return new x(e)}),this.register(function(e){return new b(e)}),this.register(function(e){return new F(e)}),this.register(function(e){return new R(e)}),this.register(function(e){return new A(e)}),this.register(function(e){return new D(e)}),this.register(function(e){return new H(e)})}load(e,t,n,r){let l,i=this;if(""!==this.resourcePath)l=this.resourcePath;else if(""!==this.path){let t=a.r6x.extractUrlBase(e);l=a.r6x.resolveURL(t,this.path)}else l=a.r6x.extractUrlBase(e);this.manager.itemStart(e);let o=function(t){r?r(t):console.error(t),i.manager.itemError(e),i.manager.itemEnd(e)},s=new a.Y9S(this.manager);s.setPath(this.path),s.setResponseType("arraybuffer"),s.setRequestHeader(this.requestHeader),s.setWithCredentials(this.withCredentials),s.load(e,function(n){try{i.parse(n,l,function(n){t(n),i.manager.itemEnd(e)},o)}catch(e){o(e)}},n,o)}setDRACOLoader(e){return this.dracoLoader=e,this}setDDSLoader(){throw Error('THREE.GLTFLoader: "MSFT_texture_dds" no longer supported. Please update to "KHR_texture_basisu".')}setKTX2Loader(e){return this.ktx2Loader=e,this}setMeshoptDecoder(e){return this.meshoptDecoder=e,this}register(e){return -1===this.pluginCallbacks.indexOf(e)&&this.pluginCallbacks.push(e),this}unregister(e){return -1!==this.pluginCallbacks.indexOf(e)&&this.pluginCallbacks.splice(this.pluginCallbacks.indexOf(e),1),this}parse(e,t,n,r){let a,l={},i={};if("string"==typeof e)a=JSON.parse(e);else if(e instanceof ArrayBuffer)if(c(new Uint8Array(e.slice(0,4)))===G){try{l[m.KHR_BINARY_GLTF]=new P(e)}catch(e){r&&r(e);return}a=JSON.parse(l[m.KHR_BINARY_GLTF].content)}else a=JSON.parse(c(new Uint8Array(e)));else a=e;if(void 0===a.asset||a.asset.version[0]<2){r&&r(Error("THREE.GLTFLoader: Unsupported asset. glTF versions >=2.0 are supported."));return}let o=new et(a,{path:t||this.resourcePath||"",crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});o.fileLoader.setRequestHeader(this.requestHeader);for(let e=0;e<this.pluginCallbacks.length;e++){let t=this.pluginCallbacks[e](o);t.name||console.error("THREE.GLTFLoader: Invalid plugin found: missing name"),i[t.name]=t,l[t.name]=!0}if(a.extensionsUsed)for(let e=0;e<a.extensionsUsed.length;++e){let t=a.extensionsUsed[e],n=a.extensionsRequired||[];switch(t){case m.KHR_MATERIALS_UNLIT:l[t]=new g;break;case m.KHR_DRACO_MESH_COMPRESSION:l[t]=new k(a,this.dracoLoader);break;case m.KHR_TEXTURE_TRANSFORM:l[t]=new L;break;case m.KHR_MESH_QUANTIZATION:l[t]=new N;break;default:n.indexOf(t)>=0&&void 0===i[t]&&console.warn('THREE.GLTFLoader: Unknown extension "'+t+'".')}}o.setExtensions(l),o.setPlugins(i),o.parse(n,r)}parseAsync(e,t){let n=this;return new Promise(function(r,a){n.parse(e,t,r,a)})}}function h(){let e={};return{get:function(t){return e[t]},add:function(t,n){e[t]=n},remove:function(t){delete e[t]},removeAll:function(){e={}}}}let m={KHR_BINARY_GLTF:"KHR_binary_glTF",KHR_DRACO_MESH_COMPRESSION:"KHR_draco_mesh_compression",KHR_LIGHTS_PUNCTUAL:"KHR_lights_punctual",KHR_MATERIALS_CLEARCOAT:"KHR_materials_clearcoat",KHR_MATERIALS_DISPERSION:"KHR_materials_dispersion",KHR_MATERIALS_IOR:"KHR_materials_ior",KHR_MATERIALS_SHEEN:"KHR_materials_sheen",KHR_MATERIALS_SPECULAR:"KHR_materials_specular",KHR_MATERIALS_TRANSMISSION:"KHR_materials_transmission",KHR_MATERIALS_IRIDESCENCE:"KHR_materials_iridescence",KHR_MATERIALS_ANISOTROPY:"KHR_materials_anisotropy",KHR_MATERIALS_UNLIT:"KHR_materials_unlit",KHR_MATERIALS_VOLUME:"KHR_materials_volume",KHR_TEXTURE_BASISU:"KHR_texture_basisu",KHR_TEXTURE_TRANSFORM:"KHR_texture_transform",KHR_MESH_QUANTIZATION:"KHR_mesh_quantization",KHR_MATERIALS_EMISSIVE_STRENGTH:"KHR_materials_emissive_strength",EXT_MATERIALS_BUMP:"EXT_materials_bump",EXT_TEXTURE_WEBP:"EXT_texture_webp",EXT_TEXTURE_AVIF:"EXT_texture_avif",EXT_MESHOPT_COMPRESSION:"EXT_meshopt_compression",EXT_MESH_GPU_INSTANCING:"EXT_mesh_gpu_instancing"};class A{constructor(e){this.parser=e,this.name=m.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){let e=this.parser,t=this.parser.json.nodes||[];for(let n=0,r=t.length;n<r;n++){let r=t[n];r.extensions&&r.extensions[this.name]&&void 0!==r.extensions[this.name].light&&e._addNodeRef(this.cache,r.extensions[this.name].light)}}_loadLight(e){let t,n=this.parser,r="light:"+e,l=n.cache.get(r);if(l)return l;let i=n.json,o=((i.extensions&&i.extensions[this.name]||{}).lights||[])[e],s=new a.Q1f(0xffffff);void 0!==o.color&&s.setRGB(o.color[0],o.color[1],o.color[2],f);let u=void 0!==o.range?o.range:0;switch(o.type){case"directional":(t=new a.ZyN(s)).target.position.set(0,0,-1),t.add(t.target);break;case"point":(t=new a.HiM(s)).distance=u;break;case"spot":(t=new a.nCl(s)).distance=u,o.spot=o.spot||{},o.spot.innerConeAngle=void 0!==o.spot.innerConeAngle?o.spot.innerConeAngle:0,o.spot.outerConeAngle=void 0!==o.spot.outerConeAngle?o.spot.outerConeAngle:Math.PI/4,t.angle=o.spot.outerConeAngle,t.penumbra=1-o.spot.innerConeAngle/o.spot.outerConeAngle,t.target.position.set(0,0,-1),t.add(t.target);break;default:throw Error("THREE.GLTFLoader: Unexpected light type: "+o.type)}return t.position.set(0,0,0),t.decay=2,Z(t,o),void 0!==o.intensity&&(t.intensity=o.intensity),t.name=n.createUniqueName(o.name||"light_"+e),l=Promise.resolve(t),n.cache.add(r,l),l}getDependency(e,t){if("light"===e)return this._loadLight(t)}createNodeAttachment(e){let t=this,n=this.parser,r=n.json.nodes[e],a=(r.extensions&&r.extensions[this.name]||{}).light;return void 0===a?null:this._loadLight(a).then(function(e){return n._getNodeRef(t.cache,a,e)})}}class g{constructor(){this.name=m.KHR_MATERIALS_UNLIT}getMaterialType(){return a.V9B}extendParams(e,t,n){let r=[];e.color=new a.Q1f(1,1,1),e.opacity=1;let l=t.pbrMetallicRoughness;if(l){if(Array.isArray(l.baseColorFactor)){let t=l.baseColorFactor;e.color.setRGB(t[0],t[1],t[2],f),e.opacity=t[3]}void 0!==l.baseColorTexture&&r.push(n.assignTexture(e,"map",l.baseColorTexture,d))}return Promise.all(r)}}class B{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_EMISSIVE_STRENGTH}extendMaterialParams(e,t){let n=this.parser.json.materials[e];if(!n.extensions||!n.extensions[this.name])return Promise.resolve();let r=n.extensions[this.name].emissiveStrength;return void 0!==r&&(t.emissiveIntensity=r),Promise.resolve()}}class v{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_CLEARCOAT}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let l=[],i=r.extensions[this.name];if(void 0!==i.clearcoatFactor&&(t.clearcoat=i.clearcoatFactor),void 0!==i.clearcoatTexture&&l.push(n.assignTexture(t,"clearcoatMap",i.clearcoatTexture)),void 0!==i.clearcoatRoughnessFactor&&(t.clearcoatRoughness=i.clearcoatRoughnessFactor),void 0!==i.clearcoatRoughnessTexture&&l.push(n.assignTexture(t,"clearcoatRoughnessMap",i.clearcoatRoughnessTexture)),void 0!==i.clearcoatNormalTexture&&(l.push(n.assignTexture(t,"clearcoatNormalMap",i.clearcoatNormalTexture)),void 0!==i.clearcoatNormalTexture.scale)){let e=i.clearcoatNormalTexture.scale;t.clearcoatNormalScale=new a.I9Y(e,e)}return Promise.all(l)}}class C{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_DISPERSION}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser.json.materials[e];if(!n.extensions||!n.extensions[this.name])return Promise.resolve();let r=n.extensions[this.name];return t.dispersion=void 0!==r.dispersion?r.dispersion:0,Promise.resolve()}}class b{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_IRIDESCENCE}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let a=[],l=r.extensions[this.name];return void 0!==l.iridescenceFactor&&(t.iridescence=l.iridescenceFactor),void 0!==l.iridescenceTexture&&a.push(n.assignTexture(t,"iridescenceMap",l.iridescenceTexture)),void 0!==l.iridescenceIor&&(t.iridescenceIOR=l.iridescenceIor),void 0===t.iridescenceThicknessRange&&(t.iridescenceThicknessRange=[100,400]),void 0!==l.iridescenceThicknessMinimum&&(t.iridescenceThicknessRange[0]=l.iridescenceThicknessMinimum),void 0!==l.iridescenceThicknessMaximum&&(t.iridescenceThicknessRange[1]=l.iridescenceThicknessMaximum),void 0!==l.iridescenceThicknessTexture&&a.push(n.assignTexture(t,"iridescenceThicknessMap",l.iridescenceThicknessTexture)),Promise.all(a)}}class y{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_SHEEN}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let l=[];t.sheenColor=new a.Q1f(0,0,0),t.sheenRoughness=0,t.sheen=1;let i=r.extensions[this.name];if(void 0!==i.sheenColorFactor){let e=i.sheenColorFactor;t.sheenColor.setRGB(e[0],e[1],e[2],f)}return void 0!==i.sheenRoughnessFactor&&(t.sheenRoughness=i.sheenRoughnessFactor),void 0!==i.sheenColorTexture&&l.push(n.assignTexture(t,"sheenColorMap",i.sheenColorTexture,d)),void 0!==i.sheenRoughnessTexture&&l.push(n.assignTexture(t,"sheenRoughnessMap",i.sheenRoughnessTexture)),Promise.all(l)}}class E{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_TRANSMISSION}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let a=[],l=r.extensions[this.name];return void 0!==l.transmissionFactor&&(t.transmission=l.transmissionFactor),void 0!==l.transmissionTexture&&a.push(n.assignTexture(t,"transmissionMap",l.transmissionTexture)),Promise.all(a)}}class w{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_VOLUME}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let l=[],i=r.extensions[this.name];t.thickness=void 0!==i.thicknessFactor?i.thicknessFactor:0,void 0!==i.thicknessTexture&&l.push(n.assignTexture(t,"thicknessMap",i.thicknessTexture)),t.attenuationDistance=i.attenuationDistance||1/0;let o=i.attenuationColor||[1,1,1];return t.attenuationColor=new a.Q1f().setRGB(o[0],o[1],o[2],f),Promise.all(l)}}class S{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_IOR}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser.json.materials[e];if(!n.extensions||!n.extensions[this.name])return Promise.resolve();let r=n.extensions[this.name];return t.ior=void 0!==r.ior?r.ior:1.5,Promise.resolve()}}class x{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_SPECULAR}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let l=[],i=r.extensions[this.name];t.specularIntensity=void 0!==i.specularFactor?i.specularFactor:1,void 0!==i.specularTexture&&l.push(n.assignTexture(t,"specularIntensityMap",i.specularTexture));let o=i.specularColorFactor||[1,1,1];return t.specularColor=new a.Q1f().setRGB(o[0],o[1],o[2],f),void 0!==i.specularColorTexture&&l.push(n.assignTexture(t,"specularColorMap",i.specularColorTexture,d)),Promise.all(l)}}class R{constructor(e){this.parser=e,this.name=m.EXT_MATERIALS_BUMP}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let a=[],l=r.extensions[this.name];return t.bumpScale=void 0!==l.bumpFactor?l.bumpFactor:1,void 0!==l.bumpTexture&&a.push(n.assignTexture(t,"bumpMap",l.bumpTexture)),Promise.all(a)}}class F{constructor(e){this.parser=e,this.name=m.KHR_MATERIALS_ANISOTROPY}getMaterialType(e){let t=this.parser.json.materials[e];return t.extensions&&t.extensions[this.name]?a.uSd:null}extendMaterialParams(e,t){let n=this.parser,r=n.json.materials[e];if(!r.extensions||!r.extensions[this.name])return Promise.resolve();let a=[],l=r.extensions[this.name];return void 0!==l.anisotropyStrength&&(t.anisotropy=l.anisotropyStrength),void 0!==l.anisotropyRotation&&(t.anisotropyRotation=l.anisotropyRotation),void 0!==l.anisotropyTexture&&a.push(n.assignTexture(t,"anisotropyMap",l.anisotropyTexture)),Promise.all(a)}}class M{constructor(e){this.parser=e,this.name=m.KHR_TEXTURE_BASISU}loadTexture(e){let t=this.parser,n=t.json,r=n.textures[e];if(!r.extensions||!r.extensions[this.name])return null;let a=r.extensions[this.name],l=t.options.ktx2Loader;if(!l)if(!(n.extensionsRequired&&n.extensionsRequired.indexOf(this.name)>=0))return null;else throw Error("THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures");return t.loadTextureImage(e,a.source,l)}}class I{constructor(e){this.parser=e,this.name=m.EXT_TEXTURE_WEBP,this.isSupported=null}loadTexture(e){let t=this.name,n=this.parser,r=n.json,a=r.textures[e];if(!a.extensions||!a.extensions[t])return null;let l=a.extensions[t],i=r.images[l.source],o=n.textureLoader;if(i.uri){let e=n.options.manager.getHandler(i.uri);null!==e&&(o=e)}return this.detectSupport().then(function(a){if(a)return n.loadTextureImage(e,l.source,o);if(r.extensionsRequired&&r.extensionsRequired.indexOf(t)>=0)throw Error("THREE.GLTFLoader: WebP required by asset but unsupported.");return n.loadTexture(e)})}detectSupport(){return this.isSupported||(this.isSupported=new Promise(function(e){let t=new Image;t.src="data:image/webp;base64,UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA",t.onload=t.onerror=function(){e(1===t.height)}})),this.isSupported}}class T{constructor(e){this.parser=e,this.name=m.EXT_TEXTURE_AVIF,this.isSupported=null}loadTexture(e){let t=this.name,n=this.parser,r=n.json,a=r.textures[e];if(!a.extensions||!a.extensions[t])return null;let l=a.extensions[t],i=r.images[l.source],o=n.textureLoader;if(i.uri){let e=n.options.manager.getHandler(i.uri);null!==e&&(o=e)}return this.detectSupport().then(function(a){if(a)return n.loadTextureImage(e,l.source,o);if(r.extensionsRequired&&r.extensionsRequired.indexOf(t)>=0)throw Error("THREE.GLTFLoader: AVIF required by asset but unsupported.");return n.loadTexture(e)})}detectSupport(){return this.isSupported||(this.isSupported=new Promise(function(e){let t=new Image;t.src="data:image/avif;base64,AAAAIGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZk1BMUIAAADybWV0YQAAAAAAAAAoaGRscgAAAAAAAAAAcGljdAAAAAAAAAAAAAAAAGxpYmF2aWYAAAAADnBpdG0AAAAAAAEAAAAeaWxvYwAAAABEAAABAAEAAAABAAABGgAAABcAAAAoaWluZgAAAAAAAQAAABppbmZlAgAAAAABAABhdjAxQ29sb3IAAAAAamlwcnAAAABLaXBjbwAAABRpc3BlAAAAAAAAAAEAAAABAAAAEHBpeGkAAAAAAwgICAAAAAxhdjFDgQAMAAAAABNjb2xybmNseAACAAIABoAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAAB9tZGF0EgAKCBgABogQEDQgMgkQAAAAB8dSLfI=",t.onload=t.onerror=function(){e(1===t.height)}})),this.isSupported}}class D{constructor(e){this.name=m.EXT_MESHOPT_COMPRESSION,this.parser=e}loadBufferView(e){let t=this.parser.json,n=t.bufferViews[e];if(!n.extensions||!n.extensions[this.name])return null;{let e=n.extensions[this.name],r=this.parser.getDependency("buffer",e.buffer),a=this.parser.options.meshoptDecoder;if(!a||!a.supported)if(!(t.extensionsRequired&&t.extensionsRequired.indexOf(this.name)>=0))return null;else throw Error("THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files");return r.then(function(t){let n=e.byteOffset||0,r=e.byteLength||0,l=e.count,i=e.byteStride,o=new Uint8Array(t,n,r);return a.decodeGltfBufferAsync?a.decodeGltfBufferAsync(l,i,o,e.mode,e.filter).then(function(e){return e.buffer}):a.ready.then(function(){let t=new ArrayBuffer(l*i);return a.decodeGltfBuffer(new Uint8Array(t),l,i,o,e.mode,e.filter),t})})}}}class H{constructor(e){this.name=m.EXT_MESH_GPU_INSTANCING,this.parser=e}createNodeMesh(e){let t=this.parser.json,n=t.nodes[e];if(!n.extensions||!n.extensions[this.name]||void 0===n.mesh)return null;for(let e of t.meshes[n.mesh].primitives)if(e.mode!==_.TRIANGLES&&e.mode!==_.TRIANGLE_STRIP&&e.mode!==_.TRIANGLE_FAN&&void 0!==e.mode)return null;let r=n.extensions[this.name].attributes,l=[],i={};for(let e in r)l.push(this.parser.getDependency("accessor",r[e]).then(t=>(i[e]=t,i[e])));return l.length<1?null:(l.push(this.parser.createNodeMesh(e)),Promise.all(l).then(e=>{let t=e.pop(),n=t.isGroup?t.children:[t],r=e[0].count,l=[];for(let e of n){let t=new a.kn4,n=new a.Pq0,o=new a.PTz,s=new a.Pq0(1,1,1),u=new a.ZLX(e.geometry,e.material,r);for(let e=0;e<r;e++)i.TRANSLATION&&n.fromBufferAttribute(i.TRANSLATION,e),i.ROTATION&&o.fromBufferAttribute(i.ROTATION,e),i.SCALE&&s.fromBufferAttribute(i.SCALE,e),u.setMatrixAt(e,t.compose(n,o,s));for(let t in i)if("_COLOR_0"===t){let e=i[t];u.instanceColor=new a.uWO(e.array,e.itemSize,e.normalized)}else"TRANSLATION"!==t&&"ROTATION"!==t&&"SCALE"!==t&&e.geometry.setAttribute(t,i[t]);a.B69.prototype.copy.call(u,e),this.parser.assignFinalMaterial(u),l.push(u)}return t.isGroup?(t.clear(),t.add(...l),t):l[0]}))}}let G="glTF";class P{constructor(e){this.name=m.KHR_BINARY_GLTF,this.content=null,this.body=null;const t=new DataView(e,0,12);if(this.header={magic:c(new Uint8Array(e.slice(0,4))),version:t.getUint32(4,!0),length:t.getUint32(8,!0)},this.header.magic!==G)throw Error("THREE.GLTFLoader: Unsupported glTF-Binary header.");if(this.header.version<2)throw Error("THREE.GLTFLoader: Legacy binary file detected.");const n=this.header.length-12,r=new DataView(e,12);let a=0;for(;a<n;){const t=r.getUint32(a,!0);a+=4;const n=r.getUint32(a,!0);if(a+=4,0x4e4f534a===n){const n=new Uint8Array(e,12+a,t);this.content=c(n)}else if(5130562===n){const n=12+a;this.body=e.slice(n,n+t)}a+=t}if(null===this.content)throw Error("THREE.GLTFLoader: JSON content not found.")}}class k{constructor(e,t){if(!t)throw Error("THREE.GLTFLoader: No DRACOLoader instance provided.");this.name=m.KHR_DRACO_MESH_COMPRESSION,this.json=e,this.dracoLoader=t,this.dracoLoader.preload()}decodePrimitive(e,t){let n=this.json,r=this.dracoLoader,a=e.extensions[this.name].bufferView,l=e.extensions[this.name].attributes,i={},o={},s={};for(let e in l)i[X[e]||e.toLowerCase()]=l[e];for(let t in e.attributes){let r=X[t]||t.toLowerCase();if(void 0!==l[t]){let a=n.accessors[e.attributes[t]],l=j[a.componentType];s[r]=l.name,o[r]=!0===a.normalized}}return t.getDependency("bufferView",a).then(function(e){return new Promise(function(t,n){r.decodeDracoFile(e,function(e){for(let t in e.attributes){let n=e.attributes[t],r=o[t];void 0!==r&&(n.normalized=r)}t(e)},i,s,f,n)})})}}class L{constructor(){this.name=m.KHR_TEXTURE_TRANSFORM}extendTexture(e,t){return(void 0===t.texCoord||t.texCoord===e.channel)&&void 0===t.offset&&void 0===t.rotation&&void 0===t.scale||(e=e.clone(),void 0!==t.texCoord&&(e.channel=t.texCoord),void 0!==t.offset&&e.offset.fromArray(t.offset),void 0!==t.rotation&&(e.rotation=t.rotation),void 0!==t.scale&&e.repeat.fromArray(t.scale),e.needsUpdate=!0),e}}class N{constructor(){this.name=m.KHR_MESH_QUANTIZATION}}class O extends a.lGw{constructor(e,t,n,r){super(e,t,n,r)}copySampleValue_(e){let t=this.resultBuffer,n=this.sampleValues,r=this.valueSize,a=e*r*3+r;for(let e=0;e!==r;e++)t[e]=n[a+e];return t}interpolate_(e,t,n,r){let a=this.resultBuffer,l=this.sampleValues,i=this.valueSize,o=2*i,s=3*i,u=r-t,c=(n-t)/u,d=c*c,f=d*c,p=e*s,h=p-s,m=-2*f+3*d,A=f-d,g=1-m,B=A-d+c;for(let e=0;e!==i;e++){let t=l[h+e+i],n=l[h+e+o]*u,r=l[p+e+i],s=l[p+e]*u;a[e]=g*t+B*n+m*r+A*s}return a}}let J=new a.PTz;class U extends O{interpolate_(e,t,n,r){let a=super.interpolate_(e,t,n,r);return J.fromArray(a).normalize().toArray(a),a}}let _={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6},j={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},z={9728:1003,9729:1006,9984:1004,9985:1007,9986:1005,9987:1008},K={33071:1001,33648:1002,10497:1e3},Q={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},X={POSITION:"position",NORMAL:"normal",TANGENT:"tangent",...u>=152?{TEXCOORD_0:"uv",TEXCOORD_1:"uv1",TEXCOORD_2:"uv2",TEXCOORD_3:"uv3"}:{TEXCOORD_0:"uv",TEXCOORD_1:"uv2"},COLOR_0:"color",WEIGHTS_0:"skinWeight",JOINTS_0:"skinIndex"},Y={scale:"scale",translation:"position",rotation:"quaternion",weights:"morphTargetInfluences"},W={CUBICSPLINE:void 0,LINEAR:2301,STEP:2300};function V(e,t,n){for(let r in n.extensions)void 0===e[r]&&(t.userData.gltfExtensions=t.userData.gltfExtensions||{},t.userData.gltfExtensions[r]=n.extensions[r])}function Z(e,t){void 0!==t.extras&&("object"==typeof t.extras?Object.assign(e.userData,t.extras):console.warn("THREE.GLTFLoader: Ignoring primitive type .extras, "+t.extras))}function q(e){let t="",n=Object.keys(e).sort();for(let r=0,a=n.length;r<a;r++)t+=n[r]+":"+e[n[r]]+";";return t}function $(e){switch(e){case Int8Array:return 1/127;case Uint8Array:return 1/255;case Int16Array:return 1/32767;case Uint16Array:return 1/65535;default:throw Error("THREE.GLTFLoader: Unsupported normalized accessor component type.")}}let ee=new a.kn4;class et{constructor(e={},t={}){this.json=e,this.extensions={},this.plugins={},this.options=t,this.cache=new h,this.associations=new Map,this.primitiveCache={},this.nodeCache={},this.meshCache={refs:{},uses:{}},this.cameraCache={refs:{},uses:{}},this.lightCache={refs:{},uses:{}},this.sourceCache={},this.textureCache={},this.nodeNamesUsed={};let n=!1,r=!1,l=-1;"u">typeof navigator&&void 0!==navigator.userAgent&&(n=!0===/^((?!chrome|android).)*safari/i.test(navigator.userAgent),l=(r=navigator.userAgent.indexOf("Firefox")>-1)?navigator.userAgent.match(/Firefox\/([0-9]+)\./)[1]:-1),"u"<typeof createImageBitmap||n||r&&l<98?this.textureLoader=new a.Tap(this.options.manager):this.textureLoader=new a.Kzg(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new a.Y9S(this.options.manager),this.fileLoader.setResponseType("arraybuffer"),"use-credentials"===this.options.crossOrigin&&this.fileLoader.setWithCredentials(!0)}setExtensions(e){this.extensions=e}setPlugins(e){this.plugins=e}parse(e,t){let n=this,r=this.json,a=this.extensions;this.cache.removeAll(),this.nodeCache={},this._invokeAll(function(e){return e._markDefs&&e._markDefs()}),Promise.all(this._invokeAll(function(e){return e.beforeRoot&&e.beforeRoot()})).then(function(){return Promise.all([n.getDependencies("scene"),n.getDependencies("animation"),n.getDependencies("camera")])}).then(function(t){let l={scene:t[0][r.scene||0],scenes:t[0],animations:t[1],cameras:t[2],asset:r.asset,parser:n,userData:{}};return V(a,l,r),Z(l,r),Promise.all(n._invokeAll(function(e){return e.afterRoot&&e.afterRoot(l)})).then(function(){for(let e of l.scenes)e.updateMatrixWorld();e(l)})}).catch(t)}_markDefs(){let e=this.json.nodes||[],t=this.json.skins||[],n=this.json.meshes||[];for(let n=0,r=t.length;n<r;n++){let r=t[n].joints;for(let t=0,n=r.length;t<n;t++)e[r[t]].isBone=!0}for(let t=0,r=e.length;t<r;t++){let r=e[t];void 0!==r.mesh&&(this._addNodeRef(this.meshCache,r.mesh),void 0!==r.skin&&(n[r.mesh].isSkinnedMesh=!0)),void 0!==r.camera&&this._addNodeRef(this.cameraCache,r.camera)}}_addNodeRef(e,t){void 0!==t&&(void 0===e.refs[t]&&(e.refs[t]=e.uses[t]=0),e.refs[t]++)}_getNodeRef(e,t,n){if(e.refs[t]<=1)return n;let r=n.clone(),a=(e,t)=>{let n=this.associations.get(e);for(let[r,l]of(null!=n&&this.associations.set(t,n),e.children.entries()))a(l,t.children[r])};return a(n,r),r.name+="_instance_"+e.uses[t]++,r}_invokeOne(e){let t=Object.values(this.plugins);t.push(this);for(let n=0;n<t.length;n++){let r=e(t[n]);if(r)return r}return null}_invokeAll(e){let t=Object.values(this.plugins);t.unshift(this);let n=[];for(let r=0;r<t.length;r++){let a=e(t[r]);a&&n.push(a)}return n}getDependency(e,t){let n=e+":"+t,r=this.cache.get(n);if(!r){switch(e){case"scene":r=this.loadScene(t);break;case"node":r=this._invokeOne(function(e){return e.loadNode&&e.loadNode(t)});break;case"mesh":r=this._invokeOne(function(e){return e.loadMesh&&e.loadMesh(t)});break;case"accessor":r=this.loadAccessor(t);break;case"bufferView":r=this._invokeOne(function(e){return e.loadBufferView&&e.loadBufferView(t)});break;case"buffer":r=this.loadBuffer(t);break;case"material":r=this._invokeOne(function(e){return e.loadMaterial&&e.loadMaterial(t)});break;case"texture":r=this._invokeOne(function(e){return e.loadTexture&&e.loadTexture(t)});break;case"skin":r=this.loadSkin(t);break;case"animation":r=this._invokeOne(function(e){return e.loadAnimation&&e.loadAnimation(t)});break;case"camera":r=this.loadCamera(t);break;default:if(!(r=this._invokeOne(function(n){return n!=this&&n.getDependency&&n.getDependency(e,t)})))throw Error("Unknown type: "+e)}this.cache.add(n,r)}return r}getDependencies(e){let t=this.cache.get(e);if(!t){let n=this;t=Promise.all((this.json[e+("mesh"===e?"es":"s")]||[]).map(function(t,r){return n.getDependency(e,r)})),this.cache.add(e,t)}return t}loadBuffer(e){let t=this.json.buffers[e],n=this.fileLoader;if(t.type&&"arraybuffer"!==t.type)throw Error("THREE.GLTFLoader: "+t.type+" buffer type is not supported.");if(void 0===t.uri&&0===e)return Promise.resolve(this.extensions[m.KHR_BINARY_GLTF].body);let r=this.options;return new Promise(function(e,l){n.load(a.r6x.resolveURL(t.uri,r.path),e,void 0,function(){l(Error('THREE.GLTFLoader: Failed to load buffer "'+t.uri+'".'))})})}loadBufferView(e){let t=this.json.bufferViews[e];return this.getDependency("buffer",t.buffer).then(function(e){let n=t.byteLength||0,r=t.byteOffset||0;return e.slice(r,r+n)})}loadAccessor(e){let t=this,n=this.json,r=this.json.accessors[e];if(void 0===r.bufferView&&void 0===r.sparse){let e=Q[r.type],t=j[r.componentType],n=!0===r.normalized,l=new t(r.count*e);return Promise.resolve(new a.THS(l,e,n))}let l=[];return void 0!==r.bufferView?l.push(this.getDependency("bufferView",r.bufferView)):l.push(null),void 0!==r.sparse&&(l.push(this.getDependency("bufferView",r.sparse.indices.bufferView)),l.push(this.getDependency("bufferView",r.sparse.values.bufferView))),Promise.all(l).then(function(e){let l,i,o=e[0],s=Q[r.type],u=j[r.componentType],c=u.BYTES_PER_ELEMENT,d=c*s,f=r.byteOffset||0,p=void 0!==r.bufferView?n.bufferViews[r.bufferView].byteStride:void 0,h=!0===r.normalized;if(p&&p!==d){let e=Math.floor(f/p),n="InterleavedBuffer:"+r.bufferView+":"+r.componentType+":"+e+":"+r.count,d=t.cache.get(n);d||(l=new u(o,e*p,r.count*p/c),d=new a.eB$(l,p/c),t.cache.add(n,d)),i=new a.eHs(d,s,f%p/c,h)}else l=null===o?new u(r.count*s):new u(o,f,r.count*s),i=new a.THS(l,s,h);if(void 0!==r.sparse){let t=Q.SCALAR,n=j[r.sparse.indices.componentType],l=r.sparse.indices.byteOffset||0,c=r.sparse.values.byteOffset||0,d=new n(e[1],l,r.sparse.count*t),f=new u(e[2],c,r.sparse.count*s);null!==o&&(i=new a.THS(i.array.slice(),i.itemSize,i.normalized));for(let e=0,t=d.length;e<t;e++){let t=d[e];if(i.setX(t,f[e*s]),s>=2&&i.setY(t,f[e*s+1]),s>=3&&i.setZ(t,f[e*s+2]),s>=4&&i.setW(t,f[e*s+3]),s>=5)throw Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.")}}return i})}loadTexture(e){let t=this.json,n=this.options,r=t.textures[e].source,a=t.images[r],l=this.textureLoader;if(a.uri){let e=n.manager.getHandler(a.uri);null!==e&&(l=e)}return this.loadTextureImage(e,r,l)}loadTextureImage(e,t,n){let r=this,a=this.json,l=a.textures[e],i=a.images[t],o=(i.uri||i.bufferView)+":"+l.sampler;if(this.textureCache[o])return this.textureCache[o];let s=this.loadImageSource(t,n).then(function(t){t.flipY=!1,t.name=l.name||i.name||"",""===t.name&&"string"==typeof i.uri&&!1===i.uri.startsWith("data:image/")&&(t.name=i.uri);let n=(a.samplers||{})[l.sampler]||{};return t.magFilter=z[n.magFilter]||1006,t.minFilter=z[n.minFilter]||1008,t.wrapS=K[n.wrapS]||1e3,t.wrapT=K[n.wrapT]||1e3,r.associations.set(t,{textures:e}),t}).catch(function(){return null});return this.textureCache[o]=s,s}loadImageSource(e,t){let n=this.json,r=this.options;if(void 0!==this.sourceCache[e])return this.sourceCache[e].then(e=>e.clone());let l=n.images[e],i=self.URL||self.webkitURL,o=l.uri||"",s=!1;if(void 0!==l.bufferView)o=this.getDependency("bufferView",l.bufferView).then(function(e){s=!0;let t=new Blob([e],{type:l.mimeType});return o=i.createObjectURL(t)});else if(void 0===l.uri)throw Error("THREE.GLTFLoader: Image "+e+" is missing URI and bufferView");let u=Promise.resolve(o).then(function(e){return new Promise(function(n,l){let i=n;!0===t.isImageBitmapLoader&&(i=function(e){let t=new a.gPd(e);t.needsUpdate=!0,n(t)}),t.load(a.r6x.resolveURL(e,r.path),i,void 0,l)})}).then(function(e){var t;return!0===s&&i.revokeObjectURL(o),Z(e,l),e.userData.mimeType=l.mimeType||((t=l.uri).search(/\.jpe?g($|\?)/i)>0||0===t.search(/^data\:image\/jpeg/)?"image/jpeg":t.search(/\.webp($|\?)/i)>0||0===t.search(/^data\:image\/webp/)?"image/webp":"image/png"),e}).catch(function(e){throw console.error("THREE.GLTFLoader: Couldn't load texture",o),e});return this.sourceCache[e]=u,u}assignTexture(e,t,n,r){let a=this;return this.getDependency("texture",n.index).then(function(l){if(!l)return null;if(void 0!==n.texCoord&&n.texCoord>0&&((l=l.clone()).channel=n.texCoord),a.extensions[m.KHR_TEXTURE_TRANSFORM]){let e=void 0!==n.extensions?n.extensions[m.KHR_TEXTURE_TRANSFORM]:void 0;if(e){let t=a.associations.get(l);l=a.extensions[m.KHR_TEXTURE_TRANSFORM].extendTexture(l,e),a.associations.set(l,t)}}return void 0!==r&&("number"==typeof r&&(r=3001===r?d:f),"colorSpace"in l?l.colorSpace=r:l.encoding=r===d?3001:3e3),e[t]=l,l})}assignFinalMaterial(e){let t=e.geometry,n=e.material,r=void 0===t.attributes.tangent,l=void 0!==t.attributes.color,i=void 0===t.attributes.normal;if(e.isPoints){let e="PointsMaterial:"+n.uuid,t=this.cache.get(e);t||(t=new a.BH$,a.imn.prototype.copy.call(t,n),t.color.copy(n.color),t.map=n.map,t.sizeAttenuation=!1,this.cache.add(e,t)),n=t}else if(e.isLine){let e="LineBasicMaterial:"+n.uuid,t=this.cache.get(e);t||(t=new a.mrM,a.imn.prototype.copy.call(t,n),t.color.copy(n.color),t.map=n.map,this.cache.add(e,t)),n=t}if(r||l||i){let e="ClonedMaterial:"+n.uuid+":";r&&(e+="derivative-tangents:"),l&&(e+="vertex-colors:"),i&&(e+="flat-shading:");let t=this.cache.get(e);t||(t=n.clone(),l&&(t.vertexColors=!0),i&&(t.flatShading=!0),r&&(t.normalScale&&(t.normalScale.y*=-1),t.clearcoatNormalScale&&(t.clearcoatNormalScale.y*=-1)),this.cache.add(e,t),this.associations.set(t,this.associations.get(n))),n=t}e.material=n}getMaterialType(){return a._4j}loadMaterial(e){let t,n=this,r=this.json,l=this.extensions,i=r.materials[e],o={},s=i.extensions||{},u=[];if(s[m.KHR_MATERIALS_UNLIT]){let e=l[m.KHR_MATERIALS_UNLIT];t=e.getMaterialType(),u.push(e.extendParams(o,i,n))}else{let r=i.pbrMetallicRoughness||{};if(o.color=new a.Q1f(1,1,1),o.opacity=1,Array.isArray(r.baseColorFactor)){let e=r.baseColorFactor;o.color.setRGB(e[0],e[1],e[2],f),o.opacity=e[3]}void 0!==r.baseColorTexture&&u.push(n.assignTexture(o,"map",r.baseColorTexture,d)),o.metalness=void 0!==r.metallicFactor?r.metallicFactor:1,o.roughness=void 0!==r.roughnessFactor?r.roughnessFactor:1,void 0!==r.metallicRoughnessTexture&&(u.push(n.assignTexture(o,"metalnessMap",r.metallicRoughnessTexture)),u.push(n.assignTexture(o,"roughnessMap",r.metallicRoughnessTexture))),t=this._invokeOne(function(t){return t.getMaterialType&&t.getMaterialType(e)}),u.push(Promise.all(this._invokeAll(function(t){return t.extendMaterialParams&&t.extendMaterialParams(e,o)})))}!0===i.doubleSided&&(o.side=2);let c=i.alphaMode||"OPAQUE";if("BLEND"===c?(o.transparent=!0,o.depthWrite=!1):(o.transparent=!1,"MASK"===c&&(o.alphaTest=void 0!==i.alphaCutoff?i.alphaCutoff:.5)),void 0!==i.normalTexture&&t!==a.V9B&&(u.push(n.assignTexture(o,"normalMap",i.normalTexture)),o.normalScale=new a.I9Y(1,1),void 0!==i.normalTexture.scale)){let e=i.normalTexture.scale;o.normalScale.set(e,e)}if(void 0!==i.occlusionTexture&&t!==a.V9B&&(u.push(n.assignTexture(o,"aoMap",i.occlusionTexture)),void 0!==i.occlusionTexture.strength&&(o.aoMapIntensity=i.occlusionTexture.strength)),void 0!==i.emissiveFactor&&t!==a.V9B){let e=i.emissiveFactor;o.emissive=new a.Q1f().setRGB(e[0],e[1],e[2],f)}return void 0!==i.emissiveTexture&&t!==a.V9B&&u.push(n.assignTexture(o,"emissiveMap",i.emissiveTexture,d)),Promise.all(u).then(function(){let r=new t(o);return i.name&&(r.name=i.name),Z(r,i),n.associations.set(r,{materials:e}),i.extensions&&V(l,r,i),r})}createUniqueName(e){let t=a.Nwf.sanitizeNodeName(e||"");return t in this.nodeNamesUsed?t+"_"+ ++this.nodeNamesUsed[t]:(this.nodeNamesUsed[t]=0,t)}loadGeometries(e){let t=this,n=this.extensions,r=this.primitiveCache,l=[];for(let i=0,o=e.length;i<o;i++){let o=e[i],s=function(e){let t,n=e.extensions&&e.extensions[m.KHR_DRACO_MESH_COMPRESSION];if(t=n?"draco:"+n.bufferView+":"+n.indices+":"+q(n.attributes):e.indices+":"+q(e.attributes)+":"+e.mode,void 0!==e.targets)for(let n=0,r=e.targets.length;n<r;n++)t+=":"+q(e.targets[n]);return t}(o),u=r[s];if(u)l.push(u.promise);else{let e;e=o.extensions&&o.extensions[m.KHR_DRACO_MESH_COMPRESSION]?function(e){return n[m.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(e,t).then(function(n){return en(n,e,t)})}(o):en(new a.LoY,o,t),r[s]={primitive:o,promise:e},l.push(e)}}return Promise.all(l)}loadMesh(e){let t=this,n=this.json,r=this.extensions,l=n.meshes[e],i=l.primitives,o=[];for(let e=0,t=i.length;e<t;e++){var u;let t=void 0===i[e].material?(void 0===(u=this.cache).DefaultMaterial&&(u.DefaultMaterial=new a._4j({color:0xffffff,emissive:0,metalness:1,roughness:1,transparent:!1,depthTest:!0,side:0})),u.DefaultMaterial):this.getDependency("material",i[e].material);o.push(t)}return o.push(t.loadGeometries(i)),Promise.all(o).then(function(n){let o=n.slice(0,n.length-1),u=n[n.length-1],c=[];for(let n=0,d=u.length;n<d;n++){let d,f=u[n],p=i[n],h=o[n];if(p.mode===_.TRIANGLES||p.mode===_.TRIANGLE_STRIP||p.mode===_.TRIANGLE_FAN||void 0===p.mode)!0===(d=!0===l.isSkinnedMesh?new a.I46(f,h):new a.eaF(f,h)).isSkinnedMesh&&d.normalizeSkinWeights(),p.mode===_.TRIANGLE_STRIP?d.geometry=s(d.geometry,1):p.mode===_.TRIANGLE_FAN&&(d.geometry=s(d.geometry,2));else if(p.mode===_.LINES)d=new a.DXC(f,h);else if(p.mode===_.LINE_STRIP)d=new a.N1A(f,h);else if(p.mode===_.LINE_LOOP)d=new a.FCc(f,h);else if(p.mode===_.POINTS)d=new a.ONl(f,h);else throw Error("THREE.GLTFLoader: Primitive mode unsupported: "+p.mode);Object.keys(d.geometry.morphAttributes).length>0&&function(e,t){if(e.updateMorphTargets(),void 0!==t.weights)for(let n=0,r=t.weights.length;n<r;n++)e.morphTargetInfluences[n]=t.weights[n];if(t.extras&&Array.isArray(t.extras.targetNames)){let n=t.extras.targetNames;if(e.morphTargetInfluences.length===n.length){e.morphTargetDictionary={};for(let t=0,r=n.length;t<r;t++)e.morphTargetDictionary[n[t]]=t}else console.warn("THREE.GLTFLoader: Invalid extras.targetNames length. Ignoring names.")}}(d,l),d.name=t.createUniqueName(l.name||"mesh_"+e),Z(d,l),p.extensions&&V(r,d,p),t.assignFinalMaterial(d),c.push(d)}for(let n=0,r=c.length;n<r;n++)t.associations.set(c[n],{meshes:e,primitives:n});if(1===c.length)return l.extensions&&V(r,c[0],l),c[0];let d=new a.YJl;l.extensions&&V(r,d,l),t.associations.set(d,{meshes:e});for(let e=0,t=c.length;e<t;e++)d.add(c[e]);return d})}loadCamera(e){let t,n=this.json.cameras[e],r=n[n.type];return r?("perspective"===n.type?t=new a.ubm(a.cj9.radToDeg(r.yfov),r.aspectRatio||1,r.znear||1,r.zfar||2e6):"orthographic"===n.type&&(t=new a.qUd(-r.xmag,r.xmag,r.ymag,-r.ymag,r.znear,r.zfar)),n.name&&(t.name=this.createUniqueName(n.name)),Z(t,n),Promise.resolve(t)):void console.warn("THREE.GLTFLoader: Missing camera parameters.")}loadSkin(e){let t=this.json.skins[e],n=[];for(let e=0,r=t.joints.length;e<r;e++)n.push(this._loadNodeShallow(t.joints[e]));return void 0!==t.inverseBindMatrices?n.push(this.getDependency("accessor",t.inverseBindMatrices)):n.push(null),Promise.all(n).then(function(e){let n=e.pop(),r=[],l=[];for(let i=0,o=e.length;i<o;i++){let o=e[i];if(o){r.push(o);let e=new a.kn4;null!==n&&e.fromArray(n.array,16*i),l.push(e)}else console.warn('THREE.GLTFLoader: Joint "%s" could not be found.',t.joints[i])}return new a.EAD(r,l)})}loadAnimation(e){let t=this.json,n=this,r=t.animations[e],l=r.name?r.name:"animation_"+e,i=[],o=[],s=[],u=[],c=[];for(let e=0,t=r.channels.length;e<t;e++){let t=r.channels[e],n=r.samplers[t.sampler],a=t.target,l=a.node,d=void 0!==r.parameters?r.parameters[n.input]:n.input,f=void 0!==r.parameters?r.parameters[n.output]:n.output;void 0!==a.node&&(i.push(this.getDependency("node",l)),o.push(this.getDependency("accessor",d)),s.push(this.getDependency("accessor",f)),u.push(n),c.push(a))}return Promise.all([Promise.all(i),Promise.all(o),Promise.all(s),Promise.all(u),Promise.all(c)]).then(function(e){let t=e[0],r=e[1],i=e[2],o=e[3],s=e[4],u=[];for(let e=0,a=t.length;e<a;e++){let a=t[e],l=r[e],c=i[e],d=o[e],f=s[e];if(void 0===a)continue;a.updateMatrix&&a.updateMatrix();let p=n._createAnimationTracks(a,l,c,d,f);if(p)for(let e=0;e<p.length;e++)u.push(p[e])}return new a.tz3(l,void 0,u)})}createNodeMesh(e){let t=this.json,n=this,r=t.nodes[e];return void 0===r.mesh?null:n.getDependency("mesh",r.mesh).then(function(e){let t=n._getNodeRef(n.meshCache,r.mesh,e);return void 0!==r.weights&&t.traverse(function(e){if(e.isMesh)for(let t=0,n=r.weights.length;t<n;t++)e.morphTargetInfluences[t]=r.weights[t]}),t})}loadNode(e){let t=this.json.nodes[e],n=this._loadNodeShallow(e),r=[],a=t.children||[];for(let e=0,t=a.length;e<t;e++)r.push(this.getDependency("node",a[e]));let l=void 0===t.skin?Promise.resolve(null):this.getDependency("skin",t.skin);return Promise.all([n,Promise.all(r),l]).then(function(e){let t=e[0],n=e[1],r=e[2];null!==r&&t.traverse(function(e){e.isSkinnedMesh&&e.bind(r,ee)});for(let e=0,r=n.length;e<r;e++)t.add(n[e]);return t})}_loadNodeShallow(e){let t=this.json,n=this.extensions,r=this;if(void 0!==this.nodeCache[e])return this.nodeCache[e];let l=t.nodes[e],i=l.name?r.createUniqueName(l.name):"",o=[],s=r._invokeOne(function(t){return t.createNodeMesh&&t.createNodeMesh(e)});return s&&o.push(s),void 0!==l.camera&&o.push(r.getDependency("camera",l.camera).then(function(e){return r._getNodeRef(r.cameraCache,l.camera,e)})),r._invokeAll(function(t){return t.createNodeAttachment&&t.createNodeAttachment(e)}).forEach(function(e){o.push(e)}),this.nodeCache[e]=Promise.all(o).then(function(t){let o;if((o=!0===l.isBone?new a.$Kf:t.length>1?new a.YJl:1===t.length?t[0]:new a.B69)!==t[0])for(let e=0,n=t.length;e<n;e++)o.add(t[e]);if(l.name&&(o.userData.name=l.name,o.name=i),Z(o,l),l.extensions&&V(n,o,l),void 0!==l.matrix){let e=new a.kn4;e.fromArray(l.matrix),o.applyMatrix4(e)}else void 0!==l.translation&&o.position.fromArray(l.translation),void 0!==l.rotation&&o.quaternion.fromArray(l.rotation),void 0!==l.scale&&o.scale.fromArray(l.scale);return r.associations.has(o)||r.associations.set(o,{}),r.associations.get(o).nodes=e,o}),this.nodeCache[e]}loadScene(e){let t=this.extensions,n=this.json.scenes[e],r=this,l=new a.YJl;n.name&&(l.name=r.createUniqueName(n.name)),Z(l,n),n.extensions&&V(t,l,n);let i=n.nodes||[],o=[];for(let e=0,t=i.length;e<t;e++)o.push(r.getDependency("node",i[e]));return Promise.all(o).then(function(e){for(let t=0,n=e.length;t<n;t++)l.add(e[t]);return r.associations=(e=>{let t=new Map;for(let[e,n]of r.associations)(e instanceof a.imn||e instanceof a.gPd)&&t.set(e,n);return e.traverse(e=>{let n=r.associations.get(e);null!=n&&t.set(e,n)}),t})(l),l})}_createAnimationTracks(e,t,n,r,l){let i,o=[],s=e.name?e.name:e.uuid,u=[];switch(Y[l.path]===Y.weights?e.traverse(function(e){e.morphTargetInfluences&&u.push(e.name?e.name:e.uuid)}):u.push(s),Y[l.path]){case Y.weights:i=a.Hit;break;case Y.rotation:i=a.MBL;break;case Y.position:case Y.scale:i=a.RiT;break;default:i=1===n.itemSize?a.Hit:a.RiT}let c=void 0!==r.interpolation?W[r.interpolation]:2301,d=this._getArrayFromAccessor(n);for(let e=0,n=u.length;e<n;e++){let n=new i(u[e]+"."+Y[l.path],t.array,d,c);"CUBICSPLINE"===r.interpolation&&this._createCubicSplineTrackInterpolant(n),o.push(n)}return o}_getArrayFromAccessor(e){let t=e.array;if(e.normalized){let e=$(t.constructor),n=new Float32Array(t.length);for(let r=0,a=t.length;r<a;r++)n[r]=t[r]*e;t=n}return t}_createCubicSplineTrackInterpolant(e){e.createInterpolant=function(e){return new(this instanceof a.MBL?U:O)(this.times,this.values,this.getValueSize()/3,e)},e.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline=!0}}function en(e,t,n){let r=t.attributes,l=[];for(let t in r){let a=X[t]||t.toLowerCase();a in e.attributes||l.push(function(t,r){return n.getDependency("accessor",t).then(function(t){e.setAttribute(r,t)})}(r[t],a))}if(void 0!==t.indices&&!e.index){let r=n.getDependency("accessor",t.indices).then(function(t){e.setIndex(t)});l.push(r)}return Z(e,t),!function(e,t,n){let r=t.attributes,l=new a.NRn;if(void 0===r.POSITION)return;{let e=n.json.accessors[r.POSITION],t=e.min,i=e.max;if(void 0===t||void 0===i)return console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.");if(l.set(new a.Pq0(t[0],t[1],t[2]),new a.Pq0(i[0],i[1],i[2])),e.normalized){let t=$(j[e.componentType]);l.min.multiplyScalar(t),l.max.multiplyScalar(t)}}let i=t.targets;if(void 0!==i){let e=new a.Pq0,t=new a.Pq0;for(let r=0,a=i.length;r<a;r++){let a=i[r];if(void 0!==a.POSITION){let r=n.json.accessors[a.POSITION],l=r.min,i=r.max;if(void 0!==l&&void 0!==i){if(t.setX(Math.max(Math.abs(l[0]),Math.abs(i[0]))),t.setY(Math.max(Math.abs(l[1]),Math.abs(i[1]))),t.setZ(Math.max(Math.abs(l[2]),Math.abs(i[2]))),r.normalized){let e=$(j[r.componentType]);t.multiplyScalar(e)}e.max(t)}else console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.")}}l.expandByVector(e)}e.boundingBox=l;let o=new a.iyt;l.getCenter(o.center),o.radius=l.min.distanceTo(l.max)/2,e.boundingSphere=o}(e,t,n),Promise.all(l).then(function(){return void 0!==t.targets?function(e,t,n){let r=!1,a=!1,l=!1;for(let e=0,n=t.length;e<n;e++){let n=t[e];if(void 0!==n.POSITION&&(r=!0),void 0!==n.NORMAL&&(a=!0),void 0!==n.COLOR_0&&(l=!0),r&&a&&l)break}if(!r&&!a&&!l)return Promise.resolve(e);let i=[],o=[],s=[];for(let u=0,c=t.length;u<c;u++){let c=t[u];if(r){let t=void 0!==c.POSITION?n.getDependency("accessor",c.POSITION):e.attributes.position;i.push(t)}if(a){let t=void 0!==c.NORMAL?n.getDependency("accessor",c.NORMAL):e.attributes.normal;o.push(t)}if(l){let t=void 0!==c.COLOR_0?n.getDependency("accessor",c.COLOR_0):e.attributes.color;s.push(t)}}return Promise.all([Promise.all(i),Promise.all(o),Promise.all(s)]).then(function(t){let n=t[0],i=t[1],o=t[2];return r&&(e.morphAttributes.position=n),a&&(e.morphAttributes.normal=i),l&&(e.morphAttributes.color=o),e.morphTargetsRelative=!0,e})}(e,t.targets,n):e})}var er=n(2326);let ea=null,el="https://www.gstatic.com/draco/versioned/decoders/1.5.5/";function ei(e=!0,t=!0,n){return a=>{n&&n(a),e&&(ea||(ea=new i),ea.setDecoderPath("string"==typeof e?e:el),a.setDRACOLoader(ea)),t&&a.setMeshoptDecoder((()=>{let e;if(r)return r;let t=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]),n=new Uint8Array([32,0,65,253,3,1,2,34,4,106,6,5,11,8,7,20,13,33,12,16,128,9,116,64,19,113,127,15,10,21,22,14,255,66,24,54,136,107,18,23,192,26,114,118,132,17,77,101,130,144,27,87,131,44,45,74,156,154,70,167]);if("object"!=typeof WebAssembly)return{supported:!1};let a="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";WebAssembly.validate(t)&&(a="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");let l=WebAssembly.instantiate(function(e){let t=new Uint8Array(e.length);for(let n=0;n<e.length;++n){let r=e.charCodeAt(n);t[n]=r>96?r-71:r>64?r-65:r>47?r+4:r>46?63:62}let r=0;for(let a=0;a<e.length;++a)t[r++]=t[a]<60?n[t[a]]:(t[a]-60)*64+t[++a];return t.buffer.slice(0,r)}(a),{}).then(t=>{(e=t.instance).exports.__wasm_call_ctors()});function i(t,n,r,a,l,i){let o=e.exports.sbrk,s=r+3&-4,u=o(s*a),c=o(l.length),d=new Uint8Array(e.exports.memory.buffer);d.set(l,c);let f=t(u,r,a,c,l.length);if(0===f&&i&&i(u,s,a),n.set(d.subarray(u,u+r*a)),o(u-o(0)),0!==f)throw Error(`Malformed buffer data: ${f}`)}let o={0:"",1:"meshopt_decodeFilterOct",2:"meshopt_decodeFilterQuat",3:"meshopt_decodeFilterExp",NONE:"",OCTAHEDRAL:"meshopt_decodeFilterOct",QUATERNION:"meshopt_decodeFilterQuat",EXPONENTIAL:"meshopt_decodeFilterExp"},s={0:"meshopt_decodeVertexBuffer",1:"meshopt_decodeIndexBuffer",2:"meshopt_decodeIndexSequence",ATTRIBUTES:"meshopt_decodeVertexBuffer",TRIANGLES:"meshopt_decodeIndexBuffer",INDICES:"meshopt_decodeIndexSequence"};return r={ready:l,supported:!0,decodeVertexBuffer(t,n,r,a,l){i(e.exports.meshopt_decodeVertexBuffer,t,n,r,a,e.exports[o[l]])},decodeIndexBuffer(t,n,r,a){i(e.exports.meshopt_decodeIndexBuffer,t,n,r,a)},decodeIndexSequence(t,n,r,a){i(e.exports.meshopt_decodeIndexSequence,t,n,r,a)},decodeGltfBuffer(t,n,r,a,l,u){i(e.exports[s[l]],t,n,r,a,e.exports[o[u]])}}})())}}let eo=(e,t,n,r)=>(0,er.G)(p,e,ei(t,n,r));eo.preload=(e,t,n,r)=>er.G.preload(p,e,ei(t,n,r)),eo.clear=e=>er.G.clear(p,e),eo.setDecoderPath=e=>{el=e}},350(e,t,n){let r;n.d(t,{p:()=>u});var a=n(9081),l=n(308),i=n(4138);let o=e=>{let t=(0,i.y)(e),n=e=>(function(e,t=e=>e){let n=a.useSyncExternalStore(e.subscribe,a.useCallback(()=>t(e.getState()),[e,t]),a.useCallback(()=>t(e.getInitialState()),[e,t]));return a.useDebugValue(n),n})(t,e);return Object.assign(n,t),n},s=0,u=(r=e=>(l.h_9.onStart=(t,n,r)=>{e({active:!0,item:t,loaded:n,total:r,progress:(n-s)/(r-s)*100})},l.h_9.onLoad=()=>{e({active:!1})},l.h_9.onError=t=>e(e=>({errors:[...e.errors,t]})),l.h_9.onProgress=(t,n,r)=>{n===r&&(s=r),e({active:!0,item:t,loaded:n,total:r,progress:(n-s)/(r-s)*100||100})},{errors:[],active:!1,progress:0,item:"",loaded:0,total:0}))?o(r):o},2326(e,t,n){let r,a,l,i,o,s,u,c,d;n.d(t,{E:()=>N,f:()=>eZ,u:()=>k,c:()=>eG,B:()=>L,n:()=>eW,o:()=>eL,C:()=>eo,d:()=>ek,G:()=>ed,a:()=>P,D:()=>es,e:()=>ev,i:()=>D,b:()=>G});var f,p,h,m,A=n(9081),g=n.t(A,2),B=n(308),v=n(1519),C=n(6858),b=n(4138);let{useSyncExternalStoreWithSelector:y}=C,E=(e,t)=>{let n=(0,b.y)(e),r=(e,r=t)=>(function(e,t=e=>e,n){let r=y(e.subscribe,e.getState,e.getInitialState,t,n);return A.useDebugValue(r),r})(n,e,r);return Object.assign(r,n),r},w=(e,t)=>e?E(e,t):E,S=[];function x(e,t,n=(e,t)=>e===t){if(e===t)return!0;if(!e||!t)return!1;let r=e.length;if(t.length!==r)return!1;for(let a=0;a<r;a++)if(!n(e[a],t[a]))return!1;return!0}function R(e,t=null,n=!1,r={}){for(let a of(null===t&&(t=[e]),S))if(x(t,a.keys,a.equal)){if(n)return;if(Object.prototype.hasOwnProperty.call(a,"error"))throw a.error;if(Object.prototype.hasOwnProperty.call(a,"response"))return r.lifespan&&r.lifespan>0&&(a.timeout&&clearTimeout(a.timeout),a.timeout=setTimeout(a.remove,r.lifespan)),a.response;if(!n)throw a.promise}let a={keys:t,equal:r.equal,remove:()=>{let e=S.indexOf(a);-1!==e&&S.splice(e,1)},promise:("object"==typeof e&&"function"==typeof e.then?e:e(...t)).then(e=>{a.response=e,r.lifespan&&r.lifespan>0&&(a.timeout=setTimeout(a.remove,r.lifespan))}).catch(e=>a.error=e)};if(S.push(a),!n)throw a.promise}var F=n(1099),M=n(8525),I=n(7510);function T(e){let t=e.root;for(;t.getState().previousRoot;)t=t.getState().previousRoot;return t}g.act;let D=e=>e&&e.hasOwnProperty("current"),H=e=>null!=e&&("string"==typeof e||"number"==typeof e||e.isColor),G="u">typeof window&&((null==(s=window.document)?void 0:s.createElement)||(null==(u=window.navigator)?void 0:u.product)==="ReactNative")?A.useLayoutEffect:A.useEffect;function P(e){let t=A.useRef(e);return G(()=>void(t.current=e),[e]),t}function k(){let e=(0,I.u5)(),t=(0,I.y3)();return A.useMemo(()=>({children:n})=>{let r=(0,I.Nz)(e,!0,e=>e.type===A.StrictMode)?A.StrictMode:A.Fragment;return(0,M.jsx)(r,{children:(0,M.jsx)(t,{children:n})})},[e,t])}function L({set:e}){return G(()=>(e(new Promise(()=>null)),()=>e(!1)),[e]),null}let N=((c=class extends A.Component{constructor(...e){super(...e),this.state={error:!1}}componentDidCatch(e){this.props.set(e)}render(){return this.state.error?null:this.props.children}}).getDerivedStateFromError=()=>({error:!0}),c);function O(e){var t;let n="u">typeof window?null!=(t=window.devicePixelRatio)?t:2:1;return Array.isArray(e)?Math.min(Math.max(e[0],n),e[1]):e}function J(e){var t;return null==(t=e.__r3f)?void 0:t.root.getState()}let U={obj:e=>e===Object(e)&&!U.arr(e)&&"function"!=typeof e,fun:e=>"function"==typeof e,str:e=>"string"==typeof e,num:e=>"number"==typeof e,boo:e=>"boolean"==typeof e,und:e=>void 0===e,nul:e=>null===e,arr:e=>Array.isArray(e),equ(e,t,{arrays:n="shallow",objects:r="reference",strict:a=!0}={}){let l;if(typeof e!=typeof t||!!e!=!!t)return!1;if(U.str(e)||U.num(e)||U.boo(e))return e===t;let i=U.obj(e);if(i&&"reference"===r)return e===t;let o=U.arr(e);if(o&&"reference"===n)return e===t;if((o||i)&&e===t)return!0;for(l in e)if(!(l in t))return!1;if(i&&"shallow"===n&&"shallow"===r){for(l in a?t:e)if(!U.equ(e[l],t[l],{strict:a,objects:"reference"}))return!1}else for(l in a?t:e)if(e[l]!==t[l])return!1;if(U.und(l)){if(o&&0===e.length&&0===t.length||i&&0===Object.keys(e).length&&0===Object.keys(t).length)return!0;if(e!==t)return!1}return!0}},_=["children","key","ref"];function j(e,t,n,r){let a=null==e?void 0:e.__r3f;return!a&&(a={root:t,type:n,parent:null,children:[],props:function(e){let t={};for(let n in e)_.includes(n)||(t[n]=e[n]);return t}(r),object:e,eventCount:0,handlers:{},isHidden:!1},e&&(e.__r3f=a)),a}function z(e,t){if(!t.includes("-")||t in e)return{root:e,key:t,target:e[t]};let n=e,r=t.split("-");for(let a of r){if("object"!=typeof n||null===n){if(void 0!==n)return{root:n,key:r.slice(r.indexOf(a)).join("-"),target:void 0};return{root:e,key:t,target:void 0}}t=a,e=n,n=n[t]}return{root:e,key:t,target:n}}let K=/-\d+$/;function Q(e,t){if(U.str(t.props.attach)){if(K.test(t.props.attach)){let n=t.props.attach.replace(K,""),{root:r,key:a}=z(e.object,n);Array.isArray(r[a])||(r[a]=[])}let{root:n,key:r}=z(e.object,t.props.attach);t.previousAttach=n[r],n[r]=t.object}else U.fun(t.props.attach)&&(t.previousAttach=t.props.attach(e.object,t.object))}function X(e,t){if(U.str(t.props.attach)){let{root:n,key:r}=z(e.object,t.props.attach),a=t.previousAttach;void 0===a?delete n[r]:n[r]=a}else null==t.previousAttach||t.previousAttach(e.object,t.object);delete t.previousAttach}let Y=[..._,"args","dispose","attach","object","onUpdate","dispose"],W=new Map,V=["map","emissiveMap","sheenColorMap","specularColorMap","envMap"],Z=/^on(Pointer|Click|DoubleClick|ContextMenu|Wheel)/;function q(e,t){var n,r;let a=e.__r3f,l=a&&T(a).getState(),i=null==a?void 0:a.eventCount;for(let n in t){let i=t[n];if(Y.includes(n))continue;if(a&&Z.test(n)){"function"==typeof i?a.handlers[n]=i:delete a.handlers[n],a.eventCount=Object.keys(a.handlers).length;continue}if(void 0===i)continue;let{root:o,key:s,target:u}=z(e,n);if(void 0===u&&("object"!=typeof o||null===o))throw Error(`R3F: Cannot set "${n}". Ensure it is an object before setting "${s}".`);u instanceof B.zgK&&i instanceof B.zgK?u.mask=i.mask:u instanceof B.Q1f&&H(i)?u.set(i):null!==u&&"object"==typeof u&&"function"==typeof u.set&&"function"==typeof u.copy&&null!=i&&i.constructor&&u.constructor===i.constructor?u.copy(i):null!==u&&"object"==typeof u&&"function"==typeof u.set&&Array.isArray(i)?"function"==typeof u.fromArray?u.fromArray(i):u.set(...i):null!==u&&"object"==typeof u&&"function"==typeof u.set&&"number"==typeof i?"function"==typeof u.setScalar?u.setScalar(i):u.set(i):(o[s]=i,l&&!l.linear&&V.includes(s)&&null!=(r=o[s])&&r.isTexture&&1023===o[s].format&&1009===o[s].type&&(o[s].colorSpace="srgb"))}if(null!=a&&a.parent&&null!=l&&l.internal&&null!=(n=a.object)&&n.isObject3D&&i!==a.eventCount){let e=a.object,t=l.internal.interaction.indexOf(e);t>-1&&l.internal.interaction.splice(t,1),a.eventCount&&null!==e.raycast&&l.internal.interaction.push(e)}return a&&void 0===a.props.attach&&(a.object.isBufferGeometry?a.props.attach="geometry":a.object.isMaterial&&(a.props.attach="material")),a&&$(a),e}function $(e){var t;if(!e.parent)return;null==e.props.onUpdate||e.props.onUpdate(e.object);let n=null==(t=e.root)||null==t.getState?void 0:t.getState();n&&0===n.internal.frames&&n.invalidate()}function ee(e,t){!e.manual&&(e&&e.isOrthographicCamera?(e.left=-(t.width/2),e.right=t.width/2,e.top=t.height/2,e.bottom=-(t.height/2)):e.aspect=t.width/t.height,e.updateProjectionMatrix())}let et=e=>null==e?void 0:e.isObject3D;function en(e){return(e.eventObject||e.object).uuid+"/"+e.index+e.instanceId}function er(e,t,n,r){let a=n.get(t);a&&(n.delete(t),0===n.size&&(e.delete(r),a.target.releasePointerCapture(r)))}let ea=e=>!!(null!=e&&e.render),el=A.createContext(null);function ei(){let e=A.useContext(el);if(!e)throw Error("R3F: Hooks can only be used within the Canvas component!");return e}function eo(e=e=>e,t){return ei()(e,t)}function es(e,t=0){let n=ei(),r=n.getState().internal.subscribe,a=P(e);return G(()=>r(a,t,n),[t,r,n]),null}let eu=new WeakMap;function ec(e,t){return function(n,...r){var a;let l;return"function"==typeof n&&(null==n||null==(a=n.prototype)?void 0:a.constructor)===n?(l=eu.get(n))||(l=new n,eu.set(n,l)):l=n,e&&e(l),Promise.all(r.map(e=>new Promise((n,r)=>l.load(e,e=>{var t;let r;et(null==e?void 0:e.scene)&&Object.assign(e,(t=e.scene,r={nodes:{},materials:{},meshes:{}},t&&t.traverse(e=>{e.name&&(r.nodes[e.name]=e),e.material&&!r.materials[e.material.name]&&(r.materials[e.material.name]=e.material),e.isMesh&&!r.meshes[e.name]&&(r.meshes[e.name]=e)}),r)),n(e)},t,t=>r(Error(`Could not load ${e}: ${null==t?void 0:t.message}`))))))}}function ed(e,t,n,r){let a=Array.isArray(t)?t:[t],l=R(ec(n,r),[e,...a],!1,{equal:U.equ});return Array.isArray(t)?l:l[0]}ed.preload=function(e,t,n){let r,a=Array.isArray(t)?t:[t];R(ec(n),[e,...a],!0,r)},ed.clear=function(e,t){var n=[e,...Array.isArray(t)?t:[t]];if(void 0===n||0===n.length)S.splice(0,S.length);else{let e=S.find(e=>x(n,e.keys,e.equal));e&&e.remove()}};var ef={exports:{}},ep={exports:{}};ep.exports;let eh=(m||(m=1,h||(h=1,ep.exports=function(e){function t(e,t,n,r){return new rY(e,t,n,r)}function n(){}function r(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function a(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do(4098&(t=e).flags)!=0&&(n=t.return),e=t.return;while(e)}return 3===t.tag?n:null}function l(e){if(a(e)!==e)throw Error(r(188))}function i(e){var t=e.alternate;if(!t){if(null===(t=a(e)))throw Error(r(188));return t!==e?null:e}for(var n=e,i=t;;){var o=n.return;if(null===o)break;var s=o.alternate;if(null===s){if(null!==(i=o.return)){n=i;continue}break}if(o.child===s.child){for(s=o.child;s;){if(s===n)return l(o),e;if(s===i)return l(o),t;s=s.sibling}throw Error(r(188))}if(n.return!==i.return)n=o,i=s;else{for(var u=!1,c=o.child;c;){if(c===n){u=!0,n=o,i=s;break}if(c===i){u=!0,i=o,n=s;break}c=c.sibling}if(!u){for(c=s.child;c;){if(c===n){u=!0,n=s,i=o;break}if(c===i){u=!0,i=s,n=o;break}c=c.sibling}if(!u)throw Error(r(189))}}if(n.alternate!==i)throw Error(r(190))}if(3!==n.tag)throw Error(r(188));return n.stateNode.current===n?e:t}function o(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=aA&&e[aA]||e["@@iterator"])?e:null}function s(e){if(null==e)return null;if("function"==typeof e)return e.$$typeof===ag?null:e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case aa:return"Fragment";case ai:return"Profiler";case al:return"StrictMode";case ac:return"Suspense";case ad:return"SuspenseList";case ah:return"Activity"}if("object"==typeof e)switch(e.$$typeof){case ar:return"Portal";case as:return e.displayName||"Context";case ao:return(e._context.displayName||"Context")+".Consumer";case au:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case af:return null!==(t=e.displayName||null)?t:s(e.type)||"Memo";case ap:t=e._payload,e=e._init;try{return s(e(t))}catch{}}return null}function u(e){return{current:e}}function c(e){0>iy||(e.current=ib[iy],ib[iy]=null,iy--)}function d(e,t){ib[++iy]=e.current,e.current=t}function f(e){var t=42&e;if(0!==t)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return 261888&e;case 262144:case 524288:case 1048576:case 2097152:return 3932160&e;case 4194304:case 8388608:case 0x1000000:case 0x2000000:return 0x3c00000&e;case 0x4000000:return 0x4000000;case 0x8000000:return 0x8000000;case 0x10000000:return 0x10000000;case 0x20000000:return 0x20000000;case 0x40000000:return 0;default:return e}}function p(e,t,n){var r=e.pendingLanes;if(0===r)return 0;var a=0,l=e.suspendedLanes,i=e.pingedLanes;e=e.warmLanes;var o=0x7ffffff&r;return 0!==o?0!=(r=o&~l)?a=f(r):0!=(i&=o)?a=f(i):n||0!=(n=o&~e)&&(a=f(n)):0!=(o=r&~l)?a=f(o):0!==i?a=f(i):n||0!=(n=r&~e)&&(a=f(n)),0===a?0:0!==t&&t!==a&&(t&l)==0&&((l=a&-a)>=(n=t&-t)||32===l&&(4194048&n)!=0)?t:a}function h(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)==0}function m(){var e=iM;return(0x3c00000&(iM<<=1))==0&&(iM=4194304),e}function g(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function B(e,t){e.pendingLanes|=t,0x10000000!==t&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function v(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-iw(t);e.entangledLanes|=t,e.entanglements[r]=0x40000000|e.entanglements[r]|261930&n}function C(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-iw(n),a=1<<r;a&t|e[r]&t&&(e[r]|=t),n&=~a}}function b(e,t){var n=t&-t;return((n=(42&n)!=0?1:y(n))&(e.suspendedLanes|t))!=0?0:n}function y(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 0x1000000:case 0x2000000:e=128;break;case 0x10000000:e=0x8000000;break;default:e=0}return e}function E(e){return 2<(e&=-e)?8<e?(0x7ffffff&e)!=0?32:0x10000000:8:2}function w(e){if("function"==typeof iO&&iJ(e),i_&&"function"==typeof i_.setStrictMode)try{i_.setStrictMode(iU,e)}catch{}}function S(e){if(void 0===l3)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);l3=t&&t[1]||"",l6=-1<e.stack.indexOf(`
3
3
  at`)?" (<anonymous>)":-1<e.stack.indexOf("@")?"@unknown:0:0":""}return`
4
4
  `+l3+e+l6}function x(e,t){if(!e||iQ)return"";iQ=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){r=e}(n=e())&&"function"==typeof n.catch&&n.catch(function(){})}}catch(e){if(e&&r&&"string"==typeof e.stack)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var a=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,"name");a&&a.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var l=r.DetermineComponentFrameRoot(),i=l[0],o=l[1];if(i&&o){var s=i.split(`
5
5
  `),u=o.split(`
@@ -10,4 +10,4 @@ Error generating stack: `+e.message+`
10
10
  `+a.join(" > ")+`
11
11
 
12
12
  No matching component was found for:
13
- `+e.join(" > ")}return null},r7.getPublicRootInstance=function(e){if(!(e=e.current).child)return null;switch(e.child.tag){case 27:case 5:return aE(e.child.stateNode);default:return e.child.stateNode}},r7.injectIntoDevTools=function(){var e={bundleType:0,version:aC,rendererPackageName:ab,currentDispatcherRef:av,reconcilerVersion:"19.2.0"};if(null!==ay&&(e.rendererConfig=ay),typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")e=!1;else{var t=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(t.isDisabled||!t.supportsFiber)e=!0;else{try{iU=t.inject(e),i_=t}catch{}e=!!t.checkDCE}}return e},r7.isAlreadyRendering=function(){return(6&sp)!=0},r7.observeVisibleRects=function(e,t,n,a){if(!a3)throw Error(r(363));var l=ln(e=rp(e,t),n,a).disconnect;return{disconnect:function(){l()}}},r7.shouldError=function(){return null},r7.shouldSuspend=function(){return!1},r7.startHostTransition=function(e,t,a,l){if(5!==e.tag)throw Error(r(476));var i=tz(e).queue;tj(e,i,t,a0,null===a?n:function(){var t=tz(e);return null===t.next&&(t=e.alternate.memoizedState),tZ(e,t.next.queue,{},rh()),a(l)})},r7.updateContainer=function(e,t,n,r){var a=t.current,l=rh();return r6(a,l,e,t,n,r),l},r7.updateContainerSync=function(e,t,n,r){return r6(t.current,2,e,t,n,r),2},r7},ep.exports.default=ep.exports,Object.defineProperty(ep.exports,"__esModule",{value:!0})),ef.exports=ep.exports),(f=ef.exports)&&f.__esModule&&Object.prototype.hasOwnProperty.call(f,"default"))?f.default:f,em={},eA=/^three(?=[A-Z])/,eg=e=>`${e[0].toUpperCase()}${e.slice(1)}`,eB=0;function ev(e){if("function"==typeof e){let t=`${eB++}`;return em[t]=e,t}Object.assign(em,e)}function eC(e,t){let n=eg(e),r=em[n];if("primitive"!==e&&!r)throw Error(`R3F: ${n} is not part of the THREE namespace! Did you forget to extend? See: https://docs.pmnd.rs/react-three-fiber/api/objects#using-3rd-party-objects-declaratively`);if("primitive"===e&&!t.object)throw Error("R3F: Primitives without 'object' are invalid!");if(void 0!==t.args&&!Array.isArray(t.args))throw Error("R3F: The args prop must be an array!")}function eb(e){if(e.isHidden){var t;e.props.attach&&null!=(t=e.parent)&&t.object?Q(e.parent,e):et(e.object)&&!1!==e.props.visible&&(e.object.visible=!0),e.isHidden=!1,$(e)}}function ey(e,t,n){let r=t.root.getState();if(e.parent||e.object===r.scene){if(!t.object){var a,l;let e=em[eg(t.type)];t.object=null!=(a=t.props.object)?a:new e(...null!=(l=t.props.args)?l:[]),t.object.__r3f=t}if(q(t.object,t.props),t.props.attach)Q(e,t);else if(et(t.object)&&et(e.object)){let r=e.object.children.indexOf(null==n?void 0:n.object);if(n&&-1!==r){let n=e.object.children.indexOf(t.object);-1!==n?(e.object.children.splice(n,1),e.object.children.splice(n<r?r-1:r,0,t.object)):(t.object.parent=e.object,e.object.children.splice(r,0,t.object),t.object.dispatchEvent({type:"added"}),e.object.dispatchEvent({type:"childadded",child:t.object}))}else e.object.add(t.object)}for(let e of t.children)ey(t,e);$(t)}}function eE(e,t){t&&(t.parent=e,e.children.push(t),ey(e,t))}function ew(e,t,n){if(!t||!n)return;t.parent=e;let r=e.children.indexOf(n);-1!==r?e.children.splice(r,0,t):e.children.push(t),ey(e,t,n)}function eS(e){if("function"==typeof e.dispose){let t=()=>{try{e.dispose()}catch{}};"u">typeof IS_REACT_ACT_ENVIRONMENT?t():(0,F.unstable_scheduleCallback)(F.unstable_IdlePriority,t)}}function ex(e,t,n){if(!t)return;t.parent=null;let r=e.children.indexOf(t);-1!==r&&e.children.splice(r,1),t.props.attach?X(e,t):et(t.object)&&et(e.object)&&(e.object.remove(t.object),function(e,t){let{internal:n}=e.getState();n.interaction=n.interaction.filter(e=>e!==t),n.initialHits=n.initialHits.filter(e=>e!==t),n.hovered.forEach((e,r)=>{(e.eventObject===t||e.object===t)&&n.hovered.delete(r)}),n.capturedMap.forEach((e,r)=>{er(n.capturedMap,t,e,r)})}(T(t),t.object));let a=null!==t.props.dispose&&!1!==n;for(let e=t.children.length-1;e>=0;e--){let n=t.children[e];ex(t,n,a)}t.children.length=0,delete t.object.__r3f,a&&"primitive"!==t.type&&"Scene"!==t.object.type&&eS(t.object),void 0===n&&$(t)}let eR=[],eF=()=>{},eM={},eI=0,eT=(p={isPrimaryRenderer:!1,warnsIfNotActing:!1,supportsMutation:!0,supportsPersistence:!1,supportsHydration:!1,createInstance:function(e,t,n){var r;return eC(e=eg(e)in em?e:e.replace(eA,""),t),"primitive"===e&&null!=(r=t.object)&&r.__r3f&&delete t.object.__r3f,j(t.object,n,e,t)},removeChild:ex,appendChild:eE,appendInitialChild:eE,insertBefore:ew,appendChildToContainer(e,t){let n=e.getState().scene.__r3f;t&&n&&eE(n,t)},removeChildFromContainer(e,t){let n=e.getState().scene.__r3f;t&&n&&ex(n,t)},insertInContainerBefore(e,t,n){let r=e.getState().scene.__r3f;t&&n&&r&&ew(r,t,n)},getRootHostContext:()=>eM,getChildHostContext:()=>eM,commitUpdate(e,t,n,r,a){var l,i,o;eC(t,r);let s=!1;if("primitive"===e.type&&n.object!==r.object||(null==(l=r.args)?void 0:l.length)!==(null==(i=n.args)?void 0:i.length)?s=!0:null!=(o=r.args)&&o.some((e,t)=>{var r;return e!==(null==(r=n.args)?void 0:r[t])})&&(s=!0),s)eR.push([e,{...r},a]);else{let t=function(e,t){let n={};for(let r in t)if(!Y.includes(r)&&!U.equ(t[r],e.props[r]))for(let e in n[r]=t[r],t)e.startsWith(`${r}-`)&&(n[e]=t[e]);for(let r in e.props){if(Y.includes(r)||t.hasOwnProperty(r))continue;let{root:a,key:l}=z(e.object,r);if(a.constructor&&0===a.constructor.length){let e=function(e){let t=W.get(e.constructor);try{t||(t=new e.constructor,W.set(e.constructor,t))}catch(e){}return t}(a);U.und(e)||(n[l]=e[l])}else n[l]=0}return n}(e,r);Object.keys(t).length&&(Object.assign(e.props,t),q(e.object,t))}(null===a.sibling||(4&a.flags)==0)&&function(){for(let[e]of eR){let t=e.parent;if(t)for(let n of(e.props.attach?X(t,e):et(e.object)&&et(t.object)&&t.object.remove(e.object),e.children))n.props.attach?X(e,n):et(n.object)&&et(e.object)&&e.object.remove(n.object);e.isHidden&&eb(e),e.object.__r3f&&delete e.object.__r3f,"primitive"!==e.type&&eS(e.object)}for(let[r,a,l]of eR){r.props=a;let i=r.parent;if(i){let a=em[eg(r.type)];r.object=null!=(e=r.props.object)?e:new a(...null!=(t=r.props.args)?t:[]),r.object.__r3f=r;var e,t,n=r.object;for(let e of[l,l.alternate])if(null!==e)if("function"==typeof e.ref){null==e.refCleanup||e.refCleanup();let t=e.ref(n);"function"==typeof t&&(e.refCleanup=t)}else e.ref&&(e.ref.current=n);for(let e of(q(r.object,r.props),r.props.attach?Q(i,r):et(r.object)&&et(i.object)&&i.object.add(r.object),r.children))e.props.attach?Q(r,e):et(e.object)&&et(r.object)&&r.object.add(e.object);$(r)}}eR.length=0}()},finalizeInitialChildren:()=>!1,commitMount(){},getPublicInstance:e=>null==e?void 0:e.object,prepareForCommit:()=>null,preparePortalMount:e=>j(e.getState().scene,e,"",{}),resetAfterCommit:()=>{},shouldSetTextContent:()=>!1,clearContainer:()=>!1,hideInstance:function(e){if(!e.isHidden){var t;e.props.attach&&null!=(t=e.parent)&&t.object?X(e.parent,e):et(e.object)&&(e.object.visible=!1),e.isHidden=!0,$(e)}},unhideInstance:eb,createTextInstance:eF,hideTextInstance:eF,unhideTextInstance:eF,scheduleTimeout:"function"==typeof setTimeout?setTimeout:void 0,cancelTimeout:"function"==typeof clearTimeout?clearTimeout:void 0,noTimeout:-1,getInstanceFromNode:()=>null,beforeActiveInstanceBlur(){},afterActiveInstanceBlur(){},detachDeletedInstance(){},prepareScopeUpdate(){},getInstanceFromScope:()=>null,shouldAttemptEagerTransition:()=>!1,trackSchedulerEvent:()=>{},resolveEventType:()=>null,resolveEventTimeStamp:()=>-1.1,requestPostPaintCallback(){},maySuspendCommit:()=>!1,preloadInstance:()=>!0,suspendInstance(){},waitForCommitToBeReady:()=>null,NotPendingTransition:null,HostTransitionContext:A.createContext(null),setCurrentUpdatePriority(e){eI=e},getCurrentUpdatePriority:()=>eI,resolveUpdatePriority(){var e;if(0!==eI)return eI;switch("u">typeof window&&(null==(e=window.event)?void 0:e.type)){case"click":case"contextmenu":case"dblclick":case"pointercancel":case"pointerdown":case"pointerup":return 2;case"pointermove":case"pointerout":case"pointerover":case"pointerenter":case"pointerleave":case"wheel":return 8;default:return 32}},resetFormInstance(){},rendererPackageName:"@react-three/fiber",rendererVersion:"9.5.0",applyViewTransitionName(e,t,n){},restoreViewTransitionName(e,t){},cancelViewTransitionName(e,t,n){},cancelRootViewTransitionName(e){},restoreRootViewTransitionName(e){},InstanceMeasurement:null,measureInstance:e=>null,wasInstanceInViewport:e=>!0,hasInstanceChanged:(e,t)=>!1,hasInstanceAffectedParent:(e,t)=>!1,suspendOnActiveViewTransition(e,t){},startGestureTransition:()=>null,startViewTransition:()=>null,stopViewTransition(e){},createViewTransitionInstance:e=>null,getCurrentGestureOffset(e){throw Error("startGestureTransition is not yet supported in react-three-fiber.")},cloneMutableInstance:(e,t)=>e,cloneMutableTextInstance:e=>e,cloneRootViewTransitionContainer(e){throw Error("Not implemented.")},removeRootViewTransitionClone(e,t){throw Error("Not implemented.")},createFragmentInstance:e=>null,updateFragmentInstanceFiber(e,t){},commitNewChildToFragmentInstance(e,t){},deleteChildFromFragmentInstance(e,t){},measureClonedInstance:e=>null,maySuspendCommitOnUpdate:(e,t,n)=>!1,maySuspendCommitInSyncRender:(e,t)=>!1,startSuspendingCommit:()=>null,getSuspendedCommitReason:(e,t)=>null},(d=eh(p)).injectIntoDevTools(),d),eD=new Map,eH={objects:"shallow",strict:!1};function eG(e){var t,n;let r,a,l,i,o,s,u,c=eD.get(e),d=null==c?void 0:c.fiber,f=null==c?void 0:c.store;c&&console.warn("R3F.createRoot should only be called once!");let p="function"==typeof reportError?reportError:console.error,h=f||(t=eY,n=eW,o=(i=(l=w((e,r)=>{let a,l=new B.Pq0,i=new B.Pq0,o=new B.Pq0;function s(e=r().camera,t=i,n=r().size){let{width:a,height:u,top:c,left:d}=n,f=a/u;t.isVector3?o.copy(t):o.set(...t);let p=e.getWorldPosition(l).distanceTo(o);if(e&&e.isOrthographicCamera)return{width:a/e.zoom,height:u/e.zoom,top:c,left:d,factor:1,distance:p,aspect:f};{let t=2*Math.tan(e.fov*Math.PI/180/2)*p,n=a/u*t;return{width:n,height:t,top:c,left:d,factor:a/n,distance:p,aspect:f}}}let u=t=>e(e=>({performance:{...e.performance,current:t}})),c=new B.I9Y;return{set:e,get:r,gl:null,camera:null,raycaster:null,events:{priority:1,enabled:!0,connected:!1},scene:null,xr:null,invalidate:(e=1)=>t(r(),e),advance:(e,t)=>n(e,t,r()),legacy:!1,linear:!1,flat:!1,controls:null,clock:new B.zD7,pointer:c,mouse:c,frameloop:"always",onPointerMissed:void 0,performance:{current:1,min:.5,max:1,debounce:200,regress:()=>{let e=r();a&&clearTimeout(a),e.performance.current!==e.performance.min&&u(e.performance.min),a=setTimeout(()=>u(r().performance.max),e.performance.debounce)}},size:{width:0,height:0,top:0,left:0},viewport:{initialDpr:0,dpr:0,width:0,height:0,top:0,left:0,aspect:0,distance:0,factor:0,getCurrentViewport:s},setEvents:t=>e(e=>({...e,events:{...e.events,...t}})),setSize:(t,n,a=0,l=0)=>{let o=r().camera,u={width:t,height:n,top:a,left:l};e(e=>({size:u,viewport:{...e.viewport,...s(o,i,u)}}))},setDpr:t=>e(e=>{let n=O(t);return{viewport:{...e.viewport,dpr:n,initialDpr:e.viewport.initialDpr||n}}}),setFrameloop:(t="always")=>{let n=r().clock;n.stop(),n.elapsedTime=0,"never"!==t&&(n.start(),n.elapsedTime=0),e(()=>({frameloop:t}))},previousRoot:void 0,internal:{interaction:[],hovered:new Map,subscribers:[],initialClick:[0,0],initialHits:[],capturedMap:new Map,lastEvent:A.createRef(),active:!1,frames:0,priority:0,subscribe:(e,t,n)=>{let a=r().internal;return a.priority=a.priority+ +(t>0),a.subscribers.push({ref:e,priority:t,store:n}),a.subscribers=a.subscribers.sort((e,t)=>e.priority-t.priority),()=>{let n=r().internal;null!=n&&n.subscribers&&(n.priority=n.priority-(t>0),n.subscribers=n.subscribers.filter(t=>t.ref!==e))}}}}})).getState()).size,s=i.viewport.dpr,u=i.camera,l.subscribe(()=>{let{camera:e,size:t,viewport:n,gl:r,set:a}=l.getState();if(t.width!==o.width||t.height!==o.height||n.dpr!==s){o=t,s=n.dpr,ee(e,t),n.dpr>0&&r.setPixelRatio(n.dpr);let a="u">typeof HTMLCanvasElement&&r.domElement instanceof HTMLCanvasElement;r.setSize(t.width,t.height,a)}e!==u&&(u=e,a(t=>({viewport:{...t.viewport,...t.viewport.getCurrentViewport(e)}})))}),l.subscribe(e=>t(e)),l),m=d||eT.createContainer(h,1,null,!1,null,"",p,p,p,null);c||eD.set(e,{fiber:m,store:h});let g=!1,C=null;return{async configure(t={}){var n,l;let i;C=new Promise(e=>i=e);let{gl:o,size:s,scene:u,events:c,onCreated:d,shadows:f=!1,linear:p=!1,flat:m=!1,legacy:A=!1,orthographic:b=!1,frameloop:y="always",dpr:E=[1,2],performance:w,raycaster:S,camera:x,onPointerMissed:R}=t,F=h.getState(),M=F.gl;if(!F.gl){let t={canvas:e,powerPreference:"high-performance",antialias:!0,alpha:!0},n="function"==typeof o?await o(t):o;M=ea(n)?n:new v.WebGLRenderer({...t,...o}),F.set({gl:M})}let I=F.raycaster;I||F.set({raycaster:I=new B.tBo});let{params:T,...D}=S||{};if(U.equ(D,I,eH)||q(I,{...D}),U.equ(T,I.params,eH)||q(I,{params:{...I.params,...T}}),!F.camera||F.camera===a&&!U.equ(a,x,eH)){a=x;let e=null==x?void 0:x.isCamera,t=e?x:b?new B.qUd(0,0,0,0,.1,1e3):new B.ubm(75,0,.1,1e3);!e&&(t.position.z=5,x&&(q(t,x),!t.manual&&("aspect"in x||"left"in x||"right"in x||"bottom"in x||"top"in x)&&(t.manual=!0,t.updateProjectionMatrix())),F.camera||null!=x&&x.rotation||t.lookAt(0,0,0)),F.set({camera:t}),I.camera=t}if(!F.scene){let e;null!=u&&u.isScene?j(e=u,h,"",{}):(j(e=new B.Z58,h,"",{}),u&&q(e,u)),F.set({scene:e})}c&&!F.events.handlers&&F.set({events:c(h)});let H=function(e,t){if(!t&&"u">typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement&&e.parentElement){let{width:t,height:n,top:r,left:a}=e.parentElement.getBoundingClientRect();return{width:t,height:n,top:r,left:a}}return!t&&"u">typeof OffscreenCanvas&&e instanceof OffscreenCanvas?{width:e.width,height:e.height,top:0,left:0}:{width:0,height:0,top:0,left:0,...t}}(e,s);if(U.equ(H,F.size,eH)||F.setSize(H.width,H.height,H.top,H.left),E&&F.viewport.dpr!==O(E)&&F.setDpr(E),F.frameloop!==y&&F.setFrameloop(y),F.onPointerMissed||F.set({onPointerMissed:R}),w&&!U.equ(w,F.performance,eH)&&F.set(e=>({performance:{...e.performance,...w}})),!F.xr){let e=(e,t)=>{let n=h.getState();"never"!==n.frameloop&&eW(e,!0,n,t)},t=()=>{let t=h.getState();t.gl.xr.enabled=t.gl.xr.isPresenting,t.gl.xr.setAnimationLoop(t.gl.xr.isPresenting?e:null),t.gl.xr.isPresenting||eY(t)},r={connect(){let e=h.getState().gl;e.xr.addEventListener("sessionstart",t),e.xr.addEventListener("sessionend",t)},disconnect(){let e=h.getState().gl;e.xr.removeEventListener("sessionstart",t),e.xr.removeEventListener("sessionend",t)}};"function"==typeof(null==(n=M.xr)?void 0:n.addEventListener)&&r.connect(),F.set({xr:r})}if(M.shadowMap){let e=M.shadowMap.enabled,t=M.shadowMap.type;M.shadowMap.enabled=!!f,U.boo(f)?M.shadowMap.type=2:U.str(f)?M.shadowMap.type=null!=(l=({basic:0,percentage:1,soft:2,variance:3})[f])?l:2:U.obj(f)&&Object.assign(M.shadowMap,f),(e!==M.shadowMap.enabled||t!==M.shadowMap.type)&&(M.shadowMap.needsUpdate=!0)}return B.ppV.enabled=!A,g||(M.outputColorSpace=p?B.Zr2:"srgb",M.toneMapping=4*!m),F.legacy!==A&&F.set(()=>({legacy:A})),F.linear!==p&&F.set(()=>({linear:p})),F.flat!==m&&F.set(()=>({flat:m})),!o||U.fun(o)||ea(o)||U.equ(o,M,eH)||q(M,o),r=d,g=!0,i(),this},render(t){return g||C||this.configure(),C.then(()=>{eT.updateContainer((0,M.jsx)(eP,{store:h,children:t,onCreated:r,rootElement:e}),m,null,()=>void 0)}),h},unmount(){ek(e)}}}function eP({store:e,children:t,onCreated:n,rootElement:r}){return G(()=>{let t=e.getState();t.set(e=>({internal:{...e.internal,active:!0}})),n&&n(t),e.getState().events.connected||null==t.events.connect||t.events.connect(r)},[]),(0,M.jsx)(el.Provider,{value:e,children:t})}function ek(e,t){let n=eD.get(e),r=null==n?void 0:n.fiber;if(r){let a=null==n?void 0:n.store.getState();a&&(a.internal.active=!1),eT.updateContainer(null,r,null,()=>{a&&setTimeout(()=>{try{null==a.events.disconnect||a.events.disconnect(),null==(n=a.gl)||null==(r=n.renderLists)||null==r.dispose||r.dispose(),null==(l=a.gl)||null==l.forceContextLoss||l.forceContextLoss(),null!=(i=a.gl)&&i.xr&&a.xr.disconnect();var n,r,l,i,o=a.scene;for(let e in"Scene"!==o.type&&(null==o.dispose||o.dispose()),o){let t=o[e];(null==t?void 0:t.type)!=="Scene"&&(null==t||null==t.dispose||t.dispose())}eD.delete(e),t&&t(e)}catch(e){}},500)})}}function eL(e,t,n){return(0,M.jsx)(eN,{children:e,container:t,state:n})}function eN({state:e={},children:t,container:n}){let{events:r,size:a,...l}=e,i=ei(),[o]=A.useState(()=>new B.tBo),[s]=A.useState(()=>new B.I9Y),u=P((e,t)=>{let l;if(t.camera&&a){let n=t.camera;l=e.viewport.getCurrentViewport(n,new B.Pq0,a),n!==e.camera&&ee(n,a)}return{...e,...t,scene:n,raycaster:o,pointer:s,mouse:s,previousRoot:i,events:{...e.events,...t.events,...r},size:{...e.size,...a},viewport:{...e.viewport,...l},setEvents:e=>t.set(t=>({...t,events:{...t.events,...e}}))}}),c=A.useMemo(()=>{let e=w((e,t)=>({...l,set:e,get:t})),t=t=>e.setState(e=>u.current(t,e));return t(i.getState()),i.subscribe(t),e},[i,n]);return(0,M.jsx)(M.Fragment,{children:eT.createPortal((0,M.jsx)(el.Provider,{value:c,children:t}),c,null)})}let eO=new Set,eJ=new Set,eU=new Set;function e_(e,t){if(e.size)for(let{callback:n}of e.values())n(t)}function ej(e,t){switch(e){case"before":return e_(eO,t);case"after":return e_(eJ,t);case"tail":return e_(eU,t)}}function ez(e,t,n){let l=t.clock.getDelta();"never"===t.frameloop&&"number"==typeof e&&(l=e-t.clock.elapsedTime,t.clock.oldTime=t.clock.elapsedTime,t.clock.elapsedTime=e),r=t.internal.subscribers;for(let e=0;e<r.length;e++)(a=r[e]).ref.current(a.store.getState(),l,n);return!t.internal.priority&&t.gl.render&&t.gl.render(t.scene,t.camera),t.internal.frames=Math.max(0,t.internal.frames-1),"always"===t.frameloop?1:t.internal.frames}let eK=!1,eQ=!1;function eX(e){for(let n of(i=requestAnimationFrame(eX),eK=!0,l=0,ej("before",e),eQ=!0,eD.values())){var t;(o=n.store.getState()).internal.active&&("always"===o.frameloop||o.internal.frames>0)&&!(null!=(t=o.gl.xr)&&t.isPresenting)&&(l+=ez(e,o))}if(eQ=!1,ej("after",e),0===l)return ej("tail",e),eK=!1,cancelAnimationFrame(i)}function eY(e,t=1){var n;if(!e)return eD.forEach(e=>eY(e.store.getState(),t));(null==(n=e.gl.xr)||!n.isPresenting)&&e.internal.active&&"never"!==e.frameloop&&(t>1?e.internal.frames=Math.min(60,e.internal.frames+t):eQ?e.internal.frames=2:e.internal.frames=1,eK||(eK=!0,requestAnimationFrame(eX)))}function eW(e,t=!0,n,r){if(t&&ej("before",e),n)ez(e,n,r);else for(let t of eD.values())ez(e,t.store.getState());t&&ej("after",e)}let eV={onClick:["click",!1],onContextMenu:["contextmenu",!1],onDoubleClick:["dblclick",!1],onWheel:["wheel",!0],onPointerDown:["pointerdown",!0],onPointerUp:["pointerup",!0],onPointerLeave:["pointerleave",!0],onPointerMove:["pointermove",!0],onPointerCancel:["pointercancel",!0],onLostPointerCapture:["lostpointercapture",!0]};function eZ(e){let{handlePointer:t}=function(e){function t(e){return e.filter(e=>["Move","Over","Enter","Out","Leave"].some(t=>{var n;return null==(n=e.__r3f)?void 0:n.handlers["onPointer"+t]}))}function n(t){let{internal:n}=e.getState();for(let e of n.hovered.values())if(!t.length||!t.find(t=>t.object===e.object&&t.index===e.index&&t.instanceId===e.instanceId)){let r=e.eventObject.__r3f;if(n.hovered.delete(en(e)),null!=r&&r.eventCount){let n=r.handlers,a={...e,intersections:t};null==n.onPointerOut||n.onPointerOut(a),null==n.onPointerLeave||n.onPointerLeave(a)}}}function r(e,t){for(let n=0;n<t.length;n++){let r=t[n].__r3f;null==r||null==r.handlers.onPointerMissed||r.handlers.onPointerMissed(e)}}return{handlePointer:function(a){switch(a){case"onPointerLeave":case"onPointerCancel":return()=>n([]);case"onLostPointerCapture":return t=>{let{internal:r}=e.getState();"pointerId"in t&&r.capturedMap.has(t.pointerId)&&requestAnimationFrame(()=>{r.capturedMap.has(t.pointerId)&&(r.capturedMap.delete(t.pointerId),n([]))})}}return function(l){let{onPointerMissed:i,internal:o}=e.getState();o.lastEvent.current=l;let s="onPointerMove"===a,u="onClick"===a||"onContextMenu"===a||"onDoubleClick"===a,c=function(t,n){let r=e.getState(),a=new Set,l=[],i=n?n(r.internal.interaction):r.internal.interaction;for(let e=0;e<i.length;e++){let t=J(i[e]);t&&(t.raycaster.camera=void 0)}r.previousRoot||null==r.events.compute||r.events.compute(t,r);let o=i.flatMap(function(e){let n=J(e);if(!n||!n.events.enabled||null===n.raycaster.camera)return[];if(void 0===n.raycaster.camera){var r;null==n.events.compute||n.events.compute(t,n,null==(r=n.previousRoot)?void 0:r.getState()),void 0===n.raycaster.camera&&(n.raycaster.camera=null)}return n.raycaster.camera?n.raycaster.intersectObject(e,!0):[]}).sort((e,t)=>{let n=J(e.object),r=J(t.object);return n&&r&&r.events.priority-n.events.priority||e.distance-t.distance}).filter(e=>{let t=en(e);return!a.has(t)&&(a.add(t),!0)});for(let e of(r.events.filter&&(o=r.events.filter(o,r)),o)){let t=e.object;for(;t;){var s;null!=(s=t.__r3f)&&s.eventCount&&l.push({...e,eventObject:t}),t=t.parent}}if("pointerId"in t&&r.internal.capturedMap.has(t.pointerId))for(let e of r.internal.capturedMap.get(t.pointerId).values())a.has(en(e.intersection))||l.push(e.intersection);return l}(l,s?t:void 0),d=u?function(t){let{internal:n}=e.getState(),r=t.offsetX-n.initialClick[0],a=t.offsetY-n.initialClick[1];return Math.round(Math.sqrt(r*r+a*a))}(l):0;"onPointerDown"===a&&(o.initialClick=[l.offsetX,l.offsetY],o.initialHits=c.map(e=>e.eventObject)),u&&!c.length&&d<=2&&(r(l,o.interaction),i&&i(l)),s&&n(c),!function(e,t,r,a){if(e.length){let l={stopped:!1};for(let i of e){let o=J(i.object);if(o||i.object.traverseAncestors(e=>{let t=J(e);if(t)return o=t,!1}),o){let{raycaster:s,pointer:u,camera:c,internal:d}=o,f=new B.Pq0(u.x,u.y,0).unproject(c),p=e=>{var t,n;return null!=(t=null==(n=d.capturedMap.get(e))?void 0:n.has(i.eventObject))&&t},h=e=>{let n={intersection:i,target:t.target};d.capturedMap.has(e)?d.capturedMap.get(e).set(i.eventObject,n):d.capturedMap.set(e,new Map([[i.eventObject,n]])),t.target.setPointerCapture(e)},m=e=>{let t=d.capturedMap.get(e);t&&er(d.capturedMap,i.eventObject,t,e)},A={};for(let e in t){let n=t[e];"function"!=typeof n&&(A[e]=n)}let g={...i,...A,pointer:u,intersections:e,stopped:l.stopped,delta:r,unprojectedPoint:f,ray:s.ray,camera:c,stopPropagation(){let r="pointerId"in t&&d.capturedMap.get(t.pointerId);(!r||r.has(i.eventObject))&&(g.stopped=l.stopped=!0,d.hovered.size&&Array.from(d.hovered.values()).find(e=>e.eventObject===i.eventObject)&&n([...e.slice(0,e.indexOf(i)),i]))},target:{hasPointerCapture:p,setPointerCapture:h,releasePointerCapture:m},currentTarget:{hasPointerCapture:p,setPointerCapture:h,releasePointerCapture:m},nativeEvent:t};if(a(g),!0===l.stopped)break}}}}(c,l,d,function(e){let t=e.eventObject,n=t.__r3f;if(!(null!=n&&n.eventCount))return;let i=n.handlers;if(s){if(i.onPointerOver||i.onPointerEnter||i.onPointerOut||i.onPointerLeave){let t=en(e),n=o.hovered.get(t);n?n.stopped&&e.stopPropagation():(o.hovered.set(t,e),null==i.onPointerOver||i.onPointerOver(e),null==i.onPointerEnter||i.onPointerEnter(e))}null==i.onPointerMove||i.onPointerMove(e)}else{let n=i[a];n?(!u||o.initialHits.includes(t))&&(r(l,o.interaction.filter(e=>!o.initialHits.includes(e))),n(e)):u&&o.initialHits.includes(t)&&r(l,o.interaction.filter(e=>!o.initialHits.includes(e)))}})}}}}(e);return{priority:1,enabled:!0,compute(e,t,n){t.pointer.set(e.offsetX/t.size.width*2-1,-(2*(e.offsetY/t.size.height))+1),t.raycaster.setFromCamera(t.pointer,t.camera)},connected:void 0,handlers:Object.keys(eV).reduce((e,n)=>({...e,[n]:t(n)}),{}),update:()=>{var t;let{events:n,internal:r}=e.getState();null!=(t=r.lastEvent)&&t.current&&n.handlers&&n.handlers.onPointerMove(r.lastEvent.current)},connect:t=>{let{set:n,events:r}=e.getState();if(null==r.disconnect||r.disconnect(),n(e=>({events:{...e.events,connected:t}})),r.handlers)for(let e in r.handlers){let n=r.handlers[e],[a,l]=eV[e];t.addEventListener(a,n,{passive:l})}},disconnect:()=>{let{set:t,events:n}=e.getState();if(n.connected){if(n.handlers)for(let e in n.handlers){let t=n.handlers[e],[r]=eV[e];n.connected.removeEventListener(r,t)}t(e=>({events:{...e.events,connected:void 0}}))}}}}},683(e,t,n){n.d(t,{Hl:()=>d});var r=n(2326),a=n(9081),l=n(1519);function i(e,t){let n;return(...r)=>{window.clearTimeout(n),n=window.setTimeout(()=>e(...r),t)}}let o=["x","y","top","bottom","left","right","width","height"];var s=n(7510),u=n(8525);function c({ref:e,children:t,fallback:n,resize:s,style:c,gl:d,events:f=r.f,eventSource:p,eventPrefix:h,shadows:m,linear:A,flat:g,legacy:B,orthographic:v,frameloop:C,dpr:b,performance:y,raycaster:E,camera:w,scene:S,onPointerMissed:x,onCreated:R,...F}){a.useMemo(()=>(0,r.e)(l),[]);let M=(0,r.u)(),[I,T]=function({debounce:e,scroll:t,polyfill:n,offsetSize:r}={debounce:0,scroll:!1,offsetSize:!1}){var l,s,u;let c=n||("u"<typeof window?class{}:window.ResizeObserver);if(!c)throw Error("This browser does not support ResizeObserver out of the box. See: https://github.com/react-spring/react-use-measure/#resize-observer-polyfills");let[d,f]=(0,a.useState)({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),p=(0,a.useRef)({element:null,scrollContainers:null,resizeObserver:null,lastBounds:d,orientationHandler:null}),h=e?"number"==typeof e?e:e.scroll:null,m=e?"number"==typeof e?e:e.resize:null,A=(0,a.useRef)(!1);(0,a.useEffect)(()=>(A.current=!0,()=>void(A.current=!1)));let[g,B,v]=(0,a.useMemo)(()=>{let e=()=>{let e,t;if(!p.current.element)return;let{left:n,top:a,width:l,height:i,bottom:s,right:u,x:c,y:d}=p.current.element.getBoundingClientRect(),h={left:n,top:a,width:l,height:i,bottom:s,right:u,x:c,y:d};p.current.element instanceof HTMLElement&&r&&(h.height=p.current.element.offsetHeight,h.width=p.current.element.offsetWidth),Object.freeze(h),A.current&&(e=p.current.lastBounds,t=h,!o.every(n=>e[n]===t[n]))&&f(p.current.lastBounds=h)};return[e,m?i(e,m):e,h?i(e,h):e]},[f,r,h,m]);function C(){p.current.scrollContainers&&(p.current.scrollContainers.forEach(e=>e.removeEventListener("scroll",v,!0)),p.current.scrollContainers=null),p.current.resizeObserver&&(p.current.resizeObserver.disconnect(),p.current.resizeObserver=null),p.current.orientationHandler&&("orientation"in screen&&"removeEventListener"in screen.orientation?screen.orientation.removeEventListener("change",p.current.orientationHandler):"onorientationchange"in window&&window.removeEventListener("orientationchange",p.current.orientationHandler))}function b(){p.current.element&&(p.current.resizeObserver=new c(v),p.current.resizeObserver.observe(p.current.element),t&&p.current.scrollContainers&&p.current.scrollContainers.forEach(e=>e.addEventListener("scroll",v,{capture:!0,passive:!0})),p.current.orientationHandler=()=>{v()},"orientation"in screen&&"addEventListener"in screen.orientation?screen.orientation.addEventListener("change",p.current.orientationHandler):"onorientationchange"in window&&window.addEventListener("orientationchange",p.current.orientationHandler))}return l=v,s=!!t,(0,a.useEffect)(()=>{if(s)return window.addEventListener("scroll",l,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",l,!0)},[l,s]),u=B,(0,a.useEffect)(()=>(window.addEventListener("resize",u),()=>void window.removeEventListener("resize",u)),[u]),(0,a.useEffect)(()=>{C(),b()},[t,v,B]),(0,a.useEffect)(()=>C,[]),[e=>{e&&e!==p.current.element&&(C(),p.current.element=e,p.current.scrollContainers=function e(t){let n=[];if(!t||t===document.body)return n;let{overflow:r,overflowX:a,overflowY:l}=window.getComputedStyle(t);return[r,a,l].some(e=>"auto"===e||"scroll"===e)&&n.push(t),[...n,...e(t.parentElement)]}(e),b())},d,g]}({scroll:!0,debounce:{scroll:50,resize:0},...s}),D=a.useRef(null),H=a.useRef(null);a.useImperativeHandle(e,()=>D.current);let G=(0,r.a)(x),[P,k]=a.useState(!1),[L,N]=a.useState(!1);if(P)throw P;if(L)throw L;let O=a.useRef(null);(0,r.b)(()=>{let e=D.current;T.width>0&&T.height>0&&e&&(O.current||(O.current=(0,r.c)(e)),async function(){await O.current.configure({gl:d,scene:S,events:f,shadows:m,linear:A,flat:g,legacy:B,orthographic:v,frameloop:C,dpr:b,performance:y,raycaster:E,camera:w,size:T,onPointerMissed:(...e)=>null==G.current?void 0:G.current(...e),onCreated:e=>{null==e.events.connect||e.events.connect(p?(0,r.i)(p)?p.current:p:H.current),h&&e.setEvents({compute:(e,t)=>{let n=e[h+"X"],r=e[h+"Y"];t.pointer.set(n/t.size.width*2-1,-(2*(r/t.size.height))+1),t.raycaster.setFromCamera(t.pointer,t.camera)}}),null==R||R(e)}}),O.current.render((0,u.jsx)(M,{children:(0,u.jsx)(r.E,{set:N,children:(0,u.jsx)(a.Suspense,{fallback:(0,u.jsx)(r.B,{set:k}),children:null!=t?t:null})})}))}())}),a.useEffect(()=>{let e=D.current;if(e)return()=>(0,r.d)(e)},[]);let J=p?"none":"auto";return(0,u.jsx)("div",{ref:H,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",pointerEvents:J,...c},...F,children:(0,u.jsx)("div",{ref:I,style:{width:"100%",height:"100%"},children:(0,u.jsx)("canvas",{ref:D,style:{display:"block"},children:n})})})}function d(e){return(0,u.jsx)(s.Af,{children:(0,u.jsx)(c,{...e})})}n(1099)},2083(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("camera-off",[["path",{d:"M14.564 14.558a3 3 0 1 1-4.122-4.121",key:"1rnrzw"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M20 20H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 .819-.175",key:"1x3arw"}],["path",{d:"M9.695 4.024A2 2 0 0 1 10.004 4h3.993a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v7.344",key:"1i84u0"}]])},8993(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("chevrons-up-down",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]])},251(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]])},2828(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]])},7552(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]])},6103(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("package-open",[["path",{d:"M12 22v-9",key:"x3hkom"}],["path",{d:"M15.17 2.21a1.67 1.67 0 0 1 1.63 0L21 4.57a1.93 1.93 0 0 1 0 3.36L8.82 14.79a1.655 1.655 0 0 1-1.64 0L3 12.43a1.93 1.93 0 0 1 0-3.36z",key:"2ntwy6"}],["path",{d:"M20 13v3.87a2.06 2.06 0 0 1-1.11 1.83l-6 3.08a1.93 1.93 0 0 1-1.78 0l-6-3.08A2.06 2.06 0 0 1 4 16.87V13",key:"1pmm1c"}],["path",{d:"M21 12.43a1.93 1.93 0 0 0 0-3.36L8.83 2.2a1.64 1.64 0 0 0-1.63 0L3 4.57a1.93 1.93 0 0 0 0 3.36l12.18 6.86a1.636 1.636 0 0 0 1.63 0z",key:"12ttoo"}]])},112(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]])},4856(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("scan-line",[["path",{d:"M3 7V5a2 2 0 0 1 2-2h2",key:"aa7l1z"}],["path",{d:"M17 3h2a2 2 0 0 1 2 2v2",key:"4qcy5o"}],["path",{d:"M21 17v2a2 2 0 0 1-2 2h-2",key:"6vwrx8"}],["path",{d:"M7 21H5a2 2 0 0 1-2-2v-2",key:"ioqczr"}],["path",{d:"M7 12h10",key:"b7w52i"}]])},876(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]])},5615(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]])},8763(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]])},5444(e,t,n){let r;n.d(t,{A:()=>d});var a,l,i=n(9081);let o=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)},s=(...e)=>e.filter((e,t,n)=>!!e&&""!==e.trim()&&n.indexOf(e)===t).join(" ").trim();var u={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let c=(0,i.forwardRef)(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:a="",children:l,iconNode:o,...c},d)=>(0,i.createElement)("svg",{ref:d,...u,width:t,height:t,stroke:e,strokeWidth:r?24*Number(n)/Number(t):n,className:s("lucide",a),...!l&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0})(c)&&{"aria-hidden":"true"},...c},[...o.map(([e,t])=>(0,i.createElement)(e,t)),...Array.isArray(l)?l:[l]])),d=(a="loader-circle",l=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],(r=(0,i.forwardRef)(({className:e,...t},n)=>(0,i.createElement)(c,{ref:n,iconNode:l,className:s(`lucide-${o(a).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${a}`,e),...t}))).displayName=o(a),r)},5682(e,t,n){var r=n(9081),a=n(4624),l="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},i=a.useSyncExternalStore,o=r.useRef,s=r.useEffect,u=r.useMemo,c=r.useDebugValue;t.useSyncExternalStoreWithSelector=function(e,t,n,r,a){var d=o(null);if(null===d.current){var f={hasValue:!1,value:null};d.current=f}else f=d.current;var p=i(e,(d=u(function(){function e(e){if(!s){if(s=!0,i=e,e=r(e),void 0!==a&&f.hasValue){var t=f.value;if(a(t,e))return o=t}return o=e}if(t=o,l(i,e))return t;var n=r(e);return void 0!==a&&a(t,n)?(i=e,t):(i=e,o=n)}var i,o,s=!1,u=void 0===n?null:n;return[function(){return e(t())},null===u?void 0:function(){return e(u())}]},[t,n,r,a]))[0],d[1]);return s(function(){f.hasValue=!0,f.value=p},[p]),c(p),p}},6858(e,t,n){e.exports=n(5682)},4656(e,t,n){n.d(t,{bL:()=>y,H4:()=>w,_V:()=>E});var r=n(9081),a=n(7463),l=n(2274),i=n(6026),o=n(4253),s=n(4624);function u(){return()=>{}}var c=n(8525),d="Avatar",[f,p]=(0,a.A)(d),[h,m]=f(d),A=r.forwardRef((e,t)=>{let{__scopeAvatar:n,...a}=e,[l,i]=r.useState("idle");return(0,c.jsx)(h,{scope:n,imageLoadingStatus:l,onImageLoadingStatusChange:i,children:(0,c.jsx)(o.sG.span,{...a,ref:t})})});A.displayName=d;var g="AvatarImage",B=r.forwardRef((e,t)=>{let{__scopeAvatar:n,src:a,onLoadingStatusChange:d=()=>{},...f}=e,p=m(g,n),h=function(e,{referrerPolicy:t,crossOrigin:n}){let a=(0,s.useSyncExternalStore)(u,()=>!0,()=>!1),l=r.useRef(null),o=a?(l.current||(l.current=new window.Image),l.current):null,[c,d]=r.useState(()=>b(o,e));return(0,i.N)(()=>{d(b(o,e))},[o,e]),(0,i.N)(()=>{let e=e=>()=>{d(e)};if(!o)return;let r=e("loaded"),a=e("error");return o.addEventListener("load",r),o.addEventListener("error",a),t&&(o.referrerPolicy=t),"string"==typeof n&&(o.crossOrigin=n),()=>{o.removeEventListener("load",r),o.removeEventListener("error",a)}},[o,n,t]),c}(a,f),A=(0,l.c)(e=>{d(e),p.onImageLoadingStatusChange(e)});return(0,i.N)(()=>{"idle"!==h&&A(h)},[h,A]),"loaded"===h?(0,c.jsx)(o.sG.img,{...f,ref:t,src:a}):null});B.displayName=g;var v="AvatarFallback",C=r.forwardRef((e,t)=>{let{__scopeAvatar:n,delayMs:a,...l}=e,i=m(v,n),[s,u]=r.useState(void 0===a);return r.useEffect(()=>{if(void 0!==a){let e=window.setTimeout(()=>u(!0),a);return()=>window.clearTimeout(e)}},[a]),s&&"loaded"!==i.imageLoadingStatus?(0,c.jsx)(o.sG.span,{...l,ref:t}):null});function b(e,t){return e?t?(e.src!==t&&(e.src=t),e.complete&&e.naturalWidth>0?"loaded":"loading"):"error":"idle"}C.displayName=v;var y=A,E=B,w=C},9748(e,t,n){n.d(t,{LM:()=>X,bL:()=>Q,OK:()=>Y,VM:()=>y,lr:()=>H});var r=n(9081),a=n(4253),l=n(7537),i=n(7463),o=n(3577),s=n(2274),u=n(5422),c=n(6026),d=n(6478),f=n(8525),p="ScrollArea",[h,m]=(0,i.A)(p),[A,g]=h(p),B=r.forwardRef((e,t)=>{let{__scopeScrollArea:n,type:l="hover",dir:i,scrollHideDelay:s=600,...c}=e,[d,p]=r.useState(null),[h,m]=r.useState(null),[g,B]=r.useState(null),[v,C]=r.useState(null),[b,y]=r.useState(null),[E,w]=r.useState(0),[S,x]=r.useState(0),[R,F]=r.useState(!1),[M,I]=r.useState(!1),T=(0,o.s)(t,e=>p(e)),D=(0,u.jH)(i);return(0,f.jsx)(A,{scope:n,type:l,dir:D,scrollHideDelay:s,scrollArea:d,viewport:h,onViewportChange:m,content:g,onContentChange:B,scrollbarX:v,onScrollbarXChange:C,scrollbarXEnabled:R,onScrollbarXEnabledChange:F,scrollbarY:b,onScrollbarYChange:y,scrollbarYEnabled:M,onScrollbarYEnabledChange:I,onCornerWidthChange:w,onCornerHeightChange:x,children:(0,f.jsx)(a.sG.div,{dir:D,...c,ref:T,style:{position:"relative","--radix-scroll-area-corner-width":E+"px","--radix-scroll-area-corner-height":S+"px",...e.style}})})});B.displayName=p;var v="ScrollAreaViewport",C=r.forwardRef((e,t)=>{let{__scopeScrollArea:n,children:l,nonce:i,...s}=e,u=g(v,n),c=r.useRef(null),d=(0,o.s)(t,c,u.onViewportChange);return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:i}),(0,f.jsx)(a.sG.div,{"data-radix-scroll-area-viewport":"",...s,ref:d,style:{overflowX:u.scrollbarXEnabled?"scroll":"hidden",overflowY:u.scrollbarYEnabled?"scroll":"hidden",...e.style},children:(0,f.jsx)("div",{ref:u.onContentChange,style:{minWidth:"100%",display:"table"},children:l})})]})});C.displayName=v;var b="ScrollAreaScrollbar",y=r.forwardRef((e,t)=>{let{forceMount:n,...a}=e,l=g(b,e.__scopeScrollArea),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:o}=l,s="horizontal"===e.orientation;return r.useEffect(()=>(s?i(!0):o(!0),()=>{s?i(!1):o(!1)}),[s,i,o]),"hover"===l.type?(0,f.jsx)(E,{...a,ref:t,forceMount:n}):"scroll"===l.type?(0,f.jsx)(w,{...a,ref:t,forceMount:n}):"auto"===l.type?(0,f.jsx)(S,{...a,ref:t,forceMount:n}):"always"===l.type?(0,f.jsx)(x,{...a,ref:t}):null});y.displayName=b;var E=r.forwardRef((e,t)=>{let{forceMount:n,...a}=e,i=g(b,e.__scopeScrollArea),[o,s]=r.useState(!1);return r.useEffect(()=>{let e=i.scrollArea,t=0;if(e){let n=()=>{window.clearTimeout(t),s(!0)},r=()=>{t=window.setTimeout(()=>s(!1),i.scrollHideDelay)};return e.addEventListener("pointerenter",n),e.addEventListener("pointerleave",r),()=>{window.clearTimeout(t),e.removeEventListener("pointerenter",n),e.removeEventListener("pointerleave",r)}}},[i.scrollArea,i.scrollHideDelay]),(0,f.jsx)(l.C,{present:n||o,children:(0,f.jsx)(S,{"data-state":o?"visible":"hidden",...a,ref:t})})}),w=r.forwardRef((e,t)=>{var n;let{forceMount:a,...i}=e,o=g(b,e.__scopeScrollArea),s="horizontal"===e.orientation,u=z(()=>p("SCROLL_END"),100),[c,p]=(n={hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}},r.useReducer((e,t)=>n[e][t]??e,"hidden"));return r.useEffect(()=>{if("idle"===c){let e=window.setTimeout(()=>p("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(e)}},[c,o.scrollHideDelay,p]),r.useEffect(()=>{let e=o.viewport,t=s?"scrollLeft":"scrollTop";if(e){let n=e[t],r=()=>{let r=e[t];n!==r&&(p("SCROLL"),u()),n=r};return e.addEventListener("scroll",r),()=>e.removeEventListener("scroll",r)}},[o.viewport,s,p,u]),(0,f.jsx)(l.C,{present:a||"hidden"!==c,children:(0,f.jsx)(x,{"data-state":"hidden"===c?"hidden":"visible",...i,ref:t,onPointerEnter:(0,d.mK)(e.onPointerEnter,()=>p("POINTER_ENTER")),onPointerLeave:(0,d.mK)(e.onPointerLeave,()=>p("POINTER_LEAVE"))})})}),S=r.forwardRef((e,t)=>{let n=g(b,e.__scopeScrollArea),{forceMount:a,...i}=e,[o,s]=r.useState(!1),u="horizontal"===e.orientation,c=z(()=>{if(n.viewport){let e=n.viewport.offsetWidth<n.viewport.scrollWidth,t=n.viewport.offsetHeight<n.viewport.scrollHeight;s(u?e:t)}},10);return K(n.viewport,c),K(n.content,c),(0,f.jsx)(l.C,{present:a||o,children:(0,f.jsx)(x,{"data-state":o?"visible":"hidden",...i,ref:t})})}),x=r.forwardRef((e,t)=>{let{orientation:n="vertical",...a}=e,l=g(b,e.__scopeScrollArea),i=r.useRef(null),o=r.useRef(0),[s,u]=r.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),c=O(s.viewport,s.content),d={...a,sizes:s,onSizesChange:u,hasThumb:!!(c>0&&c<1),onThumbChange:e=>i.current=e,onThumbPointerUp:()=>o.current=0,onThumbPointerDown:e=>o.current=e};function p(e,t){return function(e,t,n,r="ltr"){let a=J(n),l=t||a/2,i=n.scrollbar.paddingStart+l,o=n.scrollbar.size-n.scrollbar.paddingEnd-(a-l),s=n.content-n.viewport;return _([i,o],"ltr"===r?[0,s]:[-1*s,0])(e)}(e,o.current,s,t)}return"horizontal"===n?(0,f.jsx)(R,{...d,ref:t,onThumbPositionChange:()=>{if(l.viewport&&i.current){let e=U(l.viewport.scrollLeft,s,l.dir);i.current.style.transform=`translate3d(${e}px, 0, 0)`}},onWheelScroll:e=>{l.viewport&&(l.viewport.scrollLeft=e)},onDragScroll:e=>{l.viewport&&(l.viewport.scrollLeft=p(e,l.dir))}}):"vertical"===n?(0,f.jsx)(F,{...d,ref:t,onThumbPositionChange:()=>{if(l.viewport&&i.current){let e=U(l.viewport.scrollTop,s);i.current.style.transform=`translate3d(0, ${e}px, 0)`}},onWheelScroll:e=>{l.viewport&&(l.viewport.scrollTop=e)},onDragScroll:e=>{l.viewport&&(l.viewport.scrollTop=p(e))}}):null}),R=r.forwardRef((e,t)=>{let{sizes:n,onSizesChange:a,...l}=e,i=g(b,e.__scopeScrollArea),[s,u]=r.useState(),c=r.useRef(null),d=(0,o.s)(t,c,i.onScrollbarXChange);return r.useEffect(()=>{c.current&&u(getComputedStyle(c.current))},[c]),(0,f.jsx)(T,{"data-orientation":"horizontal",...l,ref:d,sizes:n,style:{bottom:0,left:"rtl"===i.dir?"var(--radix-scroll-area-corner-width)":0,right:"ltr"===i.dir?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":J(n)+"px",...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,n)=>{if(i.viewport){var r,a;let l=i.viewport.scrollLeft+t.deltaX;e.onWheelScroll(l),r=l,a=n,r>0&&r<a&&t.preventDefault()}},onResize:()=>{c.current&&i.viewport&&s&&a({content:i.viewport.scrollWidth,viewport:i.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:N(s.paddingLeft),paddingEnd:N(s.paddingRight)}})}})}),F=r.forwardRef((e,t)=>{let{sizes:n,onSizesChange:a,...l}=e,i=g(b,e.__scopeScrollArea),[s,u]=r.useState(),c=r.useRef(null),d=(0,o.s)(t,c,i.onScrollbarYChange);return r.useEffect(()=>{c.current&&u(getComputedStyle(c.current))},[c]),(0,f.jsx)(T,{"data-orientation":"vertical",...l,ref:d,sizes:n,style:{top:0,right:"ltr"===i.dir?0:void 0,left:"rtl"===i.dir?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":J(n)+"px",...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,n)=>{if(i.viewport){var r,a;let l=i.viewport.scrollTop+t.deltaY;e.onWheelScroll(l),r=l,a=n,r>0&&r<a&&t.preventDefault()}},onResize:()=>{c.current&&i.viewport&&s&&a({content:i.viewport.scrollHeight,viewport:i.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:N(s.paddingTop),paddingEnd:N(s.paddingBottom)}})}})}),[M,I]=h(b),T=r.forwardRef((e,t)=>{let{__scopeScrollArea:n,sizes:l,hasThumb:i,onThumbChange:u,onThumbPointerUp:c,onThumbPointerDown:p,onThumbPositionChange:h,onDragScroll:m,onWheelScroll:A,onResize:B,...v}=e,C=g(b,n),[y,E]=r.useState(null),w=(0,o.s)(t,e=>E(e)),S=r.useRef(null),x=r.useRef(""),R=C.viewport,F=l.content-l.viewport,I=(0,s.c)(A),T=(0,s.c)(h),D=z(B,10);function H(e){S.current&&m({x:e.clientX-S.current.left,y:e.clientY-S.current.top})}return r.useEffect(()=>{let e=e=>{let t=e.target;y?.contains(t)&&I(e,F)};return document.addEventListener("wheel",e,{passive:!1}),()=>document.removeEventListener("wheel",e,{passive:!1})},[R,y,F,I]),r.useEffect(T,[l,T]),K(y,D),K(C.content,D),(0,f.jsx)(M,{scope:n,scrollbar:y,hasThumb:i,onThumbChange:(0,s.c)(u),onThumbPointerUp:(0,s.c)(c),onThumbPositionChange:T,onThumbPointerDown:(0,s.c)(p),children:(0,f.jsx)(a.sG.div,{...v,ref:w,style:{position:"absolute",...v.style},onPointerDown:(0,d.mK)(e.onPointerDown,e=>{0===e.button&&(e.target.setPointerCapture(e.pointerId),S.current=y.getBoundingClientRect(),x.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",C.viewport&&(C.viewport.style.scrollBehavior="auto"),H(e))}),onPointerMove:(0,d.mK)(e.onPointerMove,H),onPointerUp:(0,d.mK)(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=x.current,C.viewport&&(C.viewport.style.scrollBehavior=""),S.current=null})})})}),D="ScrollAreaThumb",H=r.forwardRef((e,t)=>{let{forceMount:n,...r}=e,a=I(D,e.__scopeScrollArea);return(0,f.jsx)(l.C,{present:n||a.hasThumb,children:(0,f.jsx)(G,{ref:t,...r})})}),G=r.forwardRef((e,t)=>{let{__scopeScrollArea:n,style:l,...i}=e,s=g(D,n),u=I(D,n),{onThumbPositionChange:c}=u,p=(0,o.s)(t,e=>u.onThumbChange(e)),h=r.useRef(void 0),m=z(()=>{h.current&&(h.current(),h.current=void 0)},100);return r.useEffect(()=>{let e=s.viewport;if(e){let t=()=>{m(),h.current||(h.current=j(e,c),c())};return c(),e.addEventListener("scroll",t),()=>e.removeEventListener("scroll",t)}},[s.viewport,m,c]),(0,f.jsx)(a.sG.div,{"data-state":u.hasThumb?"visible":"hidden",...i,ref:p,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...l},onPointerDownCapture:(0,d.mK)(e.onPointerDownCapture,e=>{let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;u.onThumbPointerDown({x:n,y:r})}),onPointerUp:(0,d.mK)(e.onPointerUp,u.onThumbPointerUp)})});H.displayName=D;var P="ScrollAreaCorner",k=r.forwardRef((e,t)=>{let n=g(P,e.__scopeScrollArea),r=!!(n.scrollbarX&&n.scrollbarY);return"scroll"!==n.type&&r?(0,f.jsx)(L,{...e,ref:t}):null});k.displayName=P;var L=r.forwardRef((e,t)=>{let{__scopeScrollArea:n,...l}=e,i=g(P,n),[o,s]=r.useState(0),[u,c]=r.useState(0),d=!!(o&&u);return K(i.scrollbarX,()=>{let e=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(e),c(e)}),K(i.scrollbarY,()=>{let e=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(e),s(e)}),d?(0,f.jsx)(a.sG.div,{...l,ref:t,style:{width:o,height:u,position:"absolute",right:"ltr"===i.dir?0:void 0,left:"rtl"===i.dir?0:void 0,bottom:0,...e.style}}):null});function N(e){return e?parseInt(e,10):0}function O(e,t){let n=e/t;return isNaN(n)?0:n}function J(e){let t=O(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd;return Math.max((e.scrollbar.size-n)*t,18)}function U(e,t,n="ltr"){let r=J(t),a=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,l=t.scrollbar.size-a,i=t.content-t.viewport,o=function(e,[t,n]){return Math.min(n,Math.max(t,e))}(e,"ltr"===n?[0,i]:[-1*i,0]);return _([0,i],[0,l-r])(o)}function _(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}var j=(e,t=()=>{})=>{let n={left:e.scrollLeft,top:e.scrollTop},r=0;return!function a(){let l={left:e.scrollLeft,top:e.scrollTop},i=n.left!==l.left,o=n.top!==l.top;(i||o)&&t(),n=l,r=window.requestAnimationFrame(a)}(),()=>window.cancelAnimationFrame(r)};function z(e,t){let n=(0,s.c)(e),a=r.useRef(0);return r.useEffect(()=>()=>window.clearTimeout(a.current),[]),r.useCallback(()=>{window.clearTimeout(a.current),a.current=window.setTimeout(n,t)},[n,t])}function K(e,t){let n=(0,s.c)(t);(0,c.N)(()=>{let t=0;if(e){let r=new ResizeObserver(()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(n)});return r.observe(e),()=>{window.cancelAnimationFrame(t),r.unobserve(e)}}},[e,n])}var Q=B,X=C,Y=k},2966(e,t,n){n.d(t,{q:()=>o});var r=n(217),a=n(3985),l=class extends r.${constructor(e,t){super(e,t)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e){super.setOptions({...e,behavior:(0,a.PL)()})}getOptimisticResult(e){return e.behavior=(0,a.PL)(),super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"backward"}}})}createResult(e,t){let{state:n}=e,r=super.createResult(e,t),{isFetching:l,isRefetching:i,isError:o,isRefetchError:s}=r,u=n.fetchMeta?.fetchMore?.direction,c=o&&"forward"===u,d=l&&"forward"===u,f=o&&"backward"===u,p=l&&"backward"===u;return{...r,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:(0,a.rB)(t,n.data),hasPreviousPage:(0,a.RQ)(t,n.data),isFetchNextPageError:c,isFetchingNextPage:d,isFetchPreviousPageError:f,isFetchingPreviousPage:p,isRefetchError:s&&!c&&!f,isRefetching:i&&!d&&!p}}},i=n(1582);function o(e,t){return(0,i.t)(e,l,t)}},7984(e,t,n){n.d(t,{A:()=>S});var r=n(9081);function a(e){return"[object Object]"===Object.prototype.toString.call(e)||Array.isArray(e)}function l(e,t){let n=Object.keys(e),r=Object.keys(t);return n.length===r.length&&JSON.stringify(Object.keys(e.breakpoints||{}))===JSON.stringify(Object.keys(t.breakpoints||{}))&&n.every(n=>{let r=e[n],i=t[n];return"function"==typeof r?`${r}`==`${i}`:a(r)&&a(i)?l(r,i):r===i})}function i(e){return e.concat().sort((e,t)=>e.name>t.name?1:-1).map(e=>e.options)}function o(e){return"number"==typeof e}function s(e){return"string"==typeof e}function u(e){return"boolean"==typeof e}function c(e){return"[object Object]"===Object.prototype.toString.call(e)}function d(e){return Math.abs(e)}function f(e){return Math.sign(e)}function p(e){return g(e).map(Number)}function h(e){return e[m(e)]}function m(e){return Math.max(0,e.length-1)}function A(e,t=0){return Array.from(Array(e),(e,n)=>t+n)}function g(e){return Object.keys(e)}function B(e,t){return void 0!==t.MouseEvent&&e instanceof t.MouseEvent}function v(){let e=[],t={add:function(n,r,a,l={passive:!0}){let i;return"addEventListener"in n?(n.addEventListener(r,a,l),i=()=>n.removeEventListener(r,a,l)):(n.addListener(a),i=()=>n.removeListener(a)),e.push(i),t},clear:function(){e=e.filter(e=>e())}};return t}function C(e=0,t=0){let n=d(e-t);function r(n){return n<e||n>t}return{length:n,max:t,min:e,constrain:function(n){return r(n)?n<e?e:t:n},reachedAny:r,reachedMax:function(e){return e>t},reachedMin:function(t){return t<e},removeOffset:function(e){return n?e-n*Math.ceil((e-t)/n):e}}}function b(e){let t=e;function n(e){return o(e)?e:e.get()}return{get:function(){return t},set:function(e){t=n(e)},add:function(e){t+=n(e)},subtract:function(e){t-=n(e)}}}function y(e,t){let n="x"===e.scroll?function(e){return`translate3d(${e}px,0px,0px)`}:function(e){return`translate3d(0px,${e}px,0px)`},r=t.style,a=null,l=!1;return{clear:function(){!l&&(r.transform="",t.getAttribute("style")||t.removeAttribute("style"))},to:function(t){if(l)return;let i=Math.round(100*e.direction(t))/100;i!==a&&(r.transform=n(i),a=i)},toggleActive:function(e){l=!e}}}let E={align:"center",axis:"x",container:null,slides:null,containScroll:"trimSnaps",direction:"ltr",slidesToScroll:1,inViewThreshold:0,breakpoints:{},dragFree:!1,dragThreshold:10,loop:!1,skipSnaps:!1,duration:25,startIndex:0,active:!0,watchDrag:!0,watchResize:!0,watchSlides:!0,watchFocus:!0};function w(e,t,n){let r,a,l,i,S,x,R,F,M=e.ownerDocument,I=M.defaultView,T=function(e){function t(e,t){return function e(t,n){return[t,n].reduce((t,n)=>(g(n).forEach(r=>{let a=t[r],l=n[r],i=c(a)&&c(l);t[r]=i?e(a,l):l}),t),{})}(e,t||{})}return{mergeOptions:t,optionsAtMedia:function(n){let r=n.breakpoints||{},a=g(r).filter(t=>e.matchMedia(t).matches).map(e=>r[e]).reduce((e,n)=>t(e,n),{});return t(n,a)},optionsMediaQueries:function(t){return t.map(e=>g(e.breakpoints||{})).reduce((e,t)=>e.concat(t),[]).map(e.matchMedia)}}}(I),D=(F=[],{init:function(e,t){return(F=t.filter(({options:e})=>!1!==T.optionsAtMedia(e).active)).forEach(t=>t.init(e,T)),t.reduce((e,t)=>Object.assign(e,{[t.name]:t}),{})},destroy:function(){F=F.filter(e=>e.destroy())}}),H=v(),G=(a={},l={init:function(e){r=e},emit:function(e){return(a[e]||[]).forEach(t=>t(r,e)),l},off:function(e,t){return a[e]=(a[e]||[]).filter(e=>e!==t),l},on:function(e,t){return a[e]=(a[e]||[]).concat([t]),l},clear:function(){a={}}}),{mergeOptions:P,optionsAtMedia:k,optionsMediaQueries:L}=T,{on:N,off:O,emit:J}=G,U=!1,_=P(E,w.globalOptions),j=P(_),z=[];function K(t,n){U||(j=k(_=P(_,t)),z=n||z,function(){let{container:t,slides:n}=j;x=(s(t)?e.querySelector(t):t)||e.children[0];let r=s(n)?x.querySelectorAll(n):n;R=[].slice.call(r||x.children)}(),i=function t(n){let r=function(e,t,n,r,a,l,i){var c,E;let w,S,x,R,F,M,I,T,D,H,G,P,k,L,{align:N,axis:O,direction:J,startIndex:U,loop:_,duration:j,dragFree:z,dragThreshold:K,inViewThreshold:Q,slidesToScroll:X,skipSnaps:Y,containScroll:W,watchResize:V,watchSlides:Z,watchDrag:q,watchFocus:$}=l,ee={measure:function(e){let{offsetTop:t,offsetLeft:n,offsetWidth:r,offsetHeight:a}=e;return{top:t,right:n+r,bottom:t+a,left:n,width:r,height:a}}},et=ee.measure(t),en=n.map(ee.measure),er=(S="rtl"===J,R=(x="y"===O)||!S?1:-1,F=x?"top":S?"right":"left",M=x?"bottom":S?"left":"right",{scroll:x?"y":"x",cross:x?"x":"y",startEdge:F,endEdge:M,measureSize:function(e){let{height:t,width:n}=e;return x?t:n},direction:function(e){return e*R}}),ea=er.measureSize(et),el={measure:function(e){return e/100*ea}},ei=(c=N,E=ea,w={start:function(){return 0},center:function(e){return(E-e)/2},end:function(e){return E-e}},{measure:function(e,t){return s(c)?w[c](e):c(E,e,t)}}),eo=!_&&!!W,{slideSizes:es,slideSizesWithGaps:eu,startGap:ec,endGap:ed}=function(e,t,n,r,a,l){let{measureSize:i,startEdge:o,endEdge:s}=e,u=n[0]&&a,c=function(){if(!u)return 0;let e=n[0];return d(t[o]-e[o])}(),f=u?parseFloat(l.getComputedStyle(h(r)).getPropertyValue(`margin-${s}`)):0,p=n.map(i),A=n.map((e,t,n)=>{let r=t===m(n);return t?r?p[t]+f:n[t+1][o]-e[o]:p[t]+c}).map(d);return{slideSizes:p,slideSizesWithGaps:A,startGap:c,endGap:f}}(er,et,en,n,_||!!W,a),ef=function(e,t,n,r,a,l,i,s,u){let{startEdge:c,endEdge:f,direction:A}=e,g=o(n);return{groupSlides:function(e){return g?p(e).filter(e=>e%n==0).map(t=>e.slice(t,t+n)):e.length?p(e).reduce((n,o,u)=>{let p=h(n)||0,g=o===m(e),B=a[c]-l[p][c],v=a[c]-l[o][f],C=r||0!==p?0:A(i),b=d(v-(!r&&g?A(s):0)-(B+C));return u&&b>t+2&&n.push(o),g&&n.push(e.length),n},[]).map((t,n,r)=>{let a=Math.max(r[n-1]||0);return e.slice(a,t)}):[]}}}(er,ea,X,_,et,en,ec,ed,0),{snaps:ep,snapsAligned:eh}=function(e,t,n,r,a){let{startEdge:l,endEdge:i}=e,{groupSlides:o}=a,s=o(r).map(e=>h(e)[i]-e[0][l]).map(d).map(t.measure),u=r.map(e=>n[l]-e[l]).map(e=>-d(e)),c=o(u).map(e=>e[0]).map((e,t)=>e+s[t]);return{snaps:u,snapsAligned:c}}(er,ei,et,en,ef),em=-h(ep)+h(eu),{snapsContained:eA,scrollContainLimit:eg}=function(e,t,n,r,a){let l,i,o=C(-t+e,0),s=n.map((e,t)=>{let{min:r,max:a}=o,l=o.constrain(e),i=t===m(n);return t?i||function(e,t){return 1>=d(e-t)}(r,l)?r:function(e,t){return 1>=d(e-t)}(a,l)?a:l:a}).map(e=>parseFloat(e.toFixed(3))),u=(l=s[0],i=h(s),C(s.lastIndexOf(l),s.indexOf(i)+1));return{snapsContained:function(){if(t<=e+2)return[o.max];if("keepSnaps"===r)return s;let{min:n,max:a}=u;return s.slice(n,a)}(),scrollContainLimit:u}}(ea,em,eh,W,0),eB=eo?eA:eh,{limit:ev}=(I=eB[0],{limit:C(_?I-em:h(eB),I)}),eC=function e(t,n,r){let{constrain:a}=C(0,t),l=t+1,i=o(n);function o(e){return r?d((l+e)%l):a(e)}function s(){return e(t,i,r)}let u={get:function(){return i},set:function(e){return i=o(e),u},add:function(e){return s().set(i+e)},clone:s};return u}(m(eB),U,_),eb=eC.clone(),ey=p(n),eE=function(e,t,n,r){let a=v(),l=1e3/60,i=null,o=0,s=0;function u(e){if(!s)return;i||(i=e,n(),n());let a=e-i;for(i=e,o+=a;o>=l;)n(),o-=l;r(o/l),s&&(s=t.requestAnimationFrame(u))}function c(){t.cancelAnimationFrame(s),i=null,o=0,s=0}return{init:function(){a.add(e,"visibilitychange",()=>{e.hidden&&(i=null,o=0)})},destroy:function(){c(),a.clear()},start:function(){s||(s=t.requestAnimationFrame(u))},stop:c,update:n,render:r}}(r,a,()=>(({dragHandler:e,scrollBody:t,scrollBounds:n,options:{loop:r}})=>{r||n.constrain(e.pointerDown()),t.seek()})(eL),e=>(({scrollBody:e,translate:t,location:n,offsetLocation:r,previousLocation:a,scrollLooper:l,slideLooper:i,dragHandler:o,animation:s,eventHandler:u,scrollBounds:c,options:{loop:d}},f)=>{let p=e.settled(),h=!c.shouldConstrain(),m=d?p:p&&h,A=m&&!o.pointerDown();A&&s.stop();let g=n.get()*f+a.get()*(1-f);r.set(g),d&&(l.loop(e.direction()),i.loop()),t.to(r.get()),A&&u.emit("settle"),m||u.emit("scroll")})(eL,e)),ew=eB[eC.get()],eS=b(ew),ex=b(ew),eR=b(ew),eF=b(ew),eM=function(e,t,n,r,a,l){let i=0,o=0,s=a,u=.68,c=e.get(),p=0;function h(e){return s=e,A}function m(e){return u=e,A}let A={direction:function(){return o},duration:function(){return s},velocity:function(){return i},seek:function(){let t=r.get()-e.get(),a=0;return s?(n.set(e),i+=t/s,i*=u,c+=i,e.add(i),a=c-p):(i=0,n.set(r),e.set(r),a=t),o=f(a),p=c,A},settled:function(){return .001>d(r.get()-t.get())},useBaseFriction:function(){return m(.68)},useBaseDuration:function(){return h(a)},useFriction:m,useDuration:h};return A}(eS,eR,ex,eF,j,0),eI=function(e,t,n,r,a){let{reachedAny:l,removeOffset:i,constrain:o}=r;function s(e){return e.concat().sort((e,t)=>d(e)-d(t))[0]}function u(t,r){let a=[t,t+n,t-n];if(!e)return t;if(!r)return s(a);let l=a.filter(e=>f(e)===r);return l.length?s(l):h(a)-n}return{byDistance:function(n,r){let s=a.get()+n,{index:c,distance:f}=function(n){let r=e?i(n):o(n),{index:a}=t.map((e,t)=>({diff:u(e-r,0),index:t})).sort((e,t)=>d(e.diff)-d(t.diff))[0];return{index:a,distance:r}}(s),p=!e&&l(s);if(!r||p)return{index:c,distance:n};let h=n+u(t[c]-f,0);return{index:c,distance:h}},byIndex:function(e,n){let r=u(t[e]-a.get(),n);return{index:e,distance:r}},shortcut:u}}(_,eB,em,ev,eF),eT=function(e,t,n,r,a,l,i){function o(a){let o=a.distance,s=a.index!==t.get();l.add(o),o&&(r.duration()?e.start():(e.update(),e.render(1),e.update())),s&&(n.set(t.get()),t.set(a.index),i.emit("select"))}return{distance:function(e,t){o(a.byDistance(e,t))},index:function(e,n){let r=t.clone().set(e);o(a.byIndex(r.get(),n))}}}(eE,eC,eb,eM,eI,eF,i),eD=function(e){let{max:t,length:n}=e;return{get:function(e){return n?-((e-t)/n):0}}}(ev),eH=v(),eG=(D={},H=null,G=null,P=!1,{init:function(){T=new IntersectionObserver(e=>{P||(e.forEach(e=>{D[n.indexOf(e.target)]=e}),H=null,G=null,i.emit("slidesInView"))},{root:t.parentElement,threshold:Q}),n.forEach(e=>T.observe(e))},destroy:function(){T&&T.disconnect(),P=!0},get:function(e=!0){if(e&&H)return H;if(!e&&G)return G;let t=g(D).reduce((t,n)=>{let r=parseInt(n),{isIntersecting:a}=D[r];return(e&&a||!e&&!a)&&t.push(r),t},[]);return e&&(H=t),e||(G=t),t}}),{slideRegistry:eP}=function(e,t,n,r,a,l){let i,{groupSlides:o}=a,{min:s,max:u}=r;return{slideRegistry:(i=o(l),1===n.length?[l]:e&&"keepSnaps"!==t?i.slice(s,u).map((e,t,n)=>{let r=t===m(n);return t?r?A(m(l)-h(n)[0]+1,h(n)[0]):e:A(h(n[0])+1)}):i)}}(eo,W,eB,eg,ef,ey),ek=function(e,t,n,r,a,l,i,s){let c={passive:!0,capture:!0},d=0;function f(e){"Tab"===e.code&&(d=new Date().getTime())}return{init:function(p){s&&(l.add(document,"keydown",f,!1),t.forEach((t,f)=>{l.add(t,"focus",t=>{(u(s)||s(p,t))&&function(t){if(new Date().getTime()-d>10)return;i.emit("slideFocusStart"),e.scrollLeft=0;let l=n.findIndex(e=>e.includes(t));o(l)&&(a.useDuration(0),r.index(l,0),i.emit("slideFocus"))}(f)},c)}))}}}(e,n,eP,eT,eM,eH,i,$),eL={ownerDocument:r,ownerWindow:a,eventHandler:i,containerRect:et,slideRects:en,animation:eE,axis:er,dragHandler:function(e,t,n,r,a,l,i,o,s,c,p,h,m,A,g,b,y,E,w){let{cross:S,direction:x}=e,R=["INPUT","SELECT","TEXTAREA"],F={passive:!1},M=v(),I=v(),T=C(50,225).constrain(A.measure(20)),D={mouse:300,touch:400},H={mouse:500,touch:600},G=g?43:25,P=!1,k=0,L=0,N=!1,O=!1,J=!1,U=!1;function _(e){if(!B(e,r)&&e.touches.length>=2)return j(e);let t=l.readPoint(e),n=l.readPoint(e,S),i=d(t-k),s=d(n-L);if(!O&&!U&&(!e.cancelable||!(O=i>s)))return j(e);let u=l.pointerMove(e);i>b&&(J=!0),c.useFriction(.3).useDuration(.75),o.start(),a.add(x(u)),e.preventDefault()}function j(e){var t;let n,r,a=p.byDistance(0,!1).index!==h.get(),i=l.pointerUp(e)*(g?H:D)[U?"mouse":"touch"],o=(t=x(i),n=h.add(-1*f(t)),r=p.byDistance(t,!g).distance,g||d(t)<T?r:y&&a?.5*r:p.byIndex(n.get(),0).distance),u=function(e,t){var n,r;if(0===e||0===t||d(e)<=d(t))return 0;let a=(n=d(e),r=d(t),d(n-r));return d(a/e)}(i,o);O=!1,N=!1,I.clear(),c.useDuration(G-10*u).useFriction(.68+u/50),s.distance(o,!g),U=!1,m.emit("pointerUp")}function z(e){J&&(e.stopPropagation(),e.preventDefault(),J=!1)}return{init:function(e){w&&M.add(t,"dragstart",e=>e.preventDefault(),F).add(t,"touchmove",()=>void 0,F).add(t,"touchend",()=>void 0).add(t,"touchstart",o).add(t,"mousedown",o).add(t,"touchcancel",j).add(t,"contextmenu",j).add(t,"click",z,!0);function o(o){(u(w)||w(e,o))&&function(e){let o,s=B(e,r);if((U=s,J=g&&s&&!e.buttons&&P,P=d(a.get()-i.get())>=2,!s||0===e.button)&&(o=e.target.nodeName||"",!R.includes(o))){let r;N=!0,l.pointerDown(e),c.useFriction(0).useDuration(0),a.set(i),r=U?n:t,I.add(r,"touchmove",_,F).add(r,"touchend",j).add(r,"mousemove",_,F).add(r,"mouseup",j),k=l.readPoint(e),L=l.readPoint(e,S),m.emit("pointerDown")}}(o)}},destroy:function(){M.clear(),I.clear()},pointerDown:function(){return N}}}(er,e,r,a,eF,function(e,t){let n,r;function a(e){return e.timeStamp}function l(n,r){let a=r||e.scroll,l=`client${"x"===a?"X":"Y"}`;return(B(n,t)?n:n.touches[0])[l]}return{pointerDown:function(e){return n=e,r=e,l(e)},pointerMove:function(e){let t=l(e)-l(r),i=a(e)-a(n)>170;return r=e,i&&(n=e),t},pointerUp:function(e){if(!n||!r)return 0;let t=l(r)-l(n),i=a(e)-a(n),o=a(e)-a(r)>170,s=t/i;return i&&!o&&d(s)>.1?s:0},readPoint:l}}(er,a),eS,eE,eT,eM,eI,eC,i,el,z,K,Y,0,q),eventStore:eH,percentOfView:el,index:eC,indexPrevious:eb,limit:ev,location:eS,offsetLocation:eR,previousLocation:ex,options:l,resizeHandler:function(e,t,n,r,a,l,i){let o,s,c=[e].concat(r),f=[],p=!1;function h(e){return a.measureSize(i.measure(e))}return{init:function(a){l&&(s=h(e),f=r.map(h),o=new ResizeObserver(n=>{(u(l)||l(a,n))&&function(n){for(let l of n){if(p)return;let n=l.target===e,i=r.indexOf(l.target),o=n?s:f[i];if(d(h(n?e:r[i])-o)>=.5){a.reInit(),t.emit("resize");break}}}(n)}),n.requestAnimationFrame(()=>{c.forEach(e=>o.observe(e))}))},destroy:function(){p=!0,o&&o.disconnect()}}}(t,i,a,n,er,V,ee),scrollBody:eM,scrollBounds:function(e,t,n,r,a){let l=a.measure(10),i=a.measure(50),o=C(.1,.99),s=!1;function u(){return!s&&!!e.reachedAny(n.get())&&!!e.reachedAny(t.get())}return{shouldConstrain:u,constrain:function(a){if(!u())return;let s=e.reachedMin(t.get())?"min":"max",c=d(e[s]-t.get()),f=n.get()-t.get(),p=o.constrain(c/i);n.subtract(f*p),!a&&d(f)<l&&(n.set(e.constrain(n.get())),r.useDuration(25).useBaseFriction())},toggleActive:function(e){s=!e}}}(ev,eR,eF,eM,el),scrollLooper:function(e,t,n,r){let{reachedMin:a,reachedMax:l}=C(t.min+.1,t.max+.1);return{loop:function(t){if(!(1===t?l(n.get()):-1===t&&a(n.get())))return;let i=-1*t*e;r.forEach(e=>e.add(i))}}}(em,ev,eR,[eS,eR,ex,eF]),scrollProgress:eD,scrollSnapList:eB.map(eD.get),scrollSnaps:eB,scrollTarget:eI,scrollTo:eT,slideLooper:function(e,t,n,r,a,l,i,o,s){let u=p(a),c=p(a).reverse(),d=m(h(c,i[0]),n,!1).concat(m(h(u,t-i[0]-1),-n,!0));function f(e,t){return e.reduce((e,t)=>e-a[t],t)}function h(e,t){return e.reduce((e,n)=>f(e,t)>0?e.concat([n]):e,[])}function m(a,i,u){let c=l.map((e,n)=>({start:e-r[n]+.5+i,end:e+t-.5+i}));return a.map(t=>{let r=u?0:-n,a=u?n:0,l=c[t][u?"end":"start"];return{index:t,loopPoint:l,slideLocation:b(-1),translate:y(e,s[t]),target:()=>o.get()>l?r:a}})}return{canLoop:function(){return d.every(({index:e})=>.1>=f(u.filter(t=>t!==e),t))},clear:function(){d.forEach(e=>e.translate.clear())},loop:function(){d.forEach(e=>{let{target:t,translate:n,slideLocation:r}=e,a=t();a!==r.get()&&(n.to(a),r.set(a))})},loopPoints:d}}(er,ea,em,es,eu,ep,eB,eR,n),slideFocus:ek,slidesHandler:(L=!1,{init:function(e){Z&&(k=new MutationObserver(t=>{!L&&(u(Z)||Z(e,t))&&function(t){for(let n of t)if("childList"===n.type){e.reInit(),i.emit("slidesChanged");break}}(t)})).observe(t,{childList:!0})},destroy:function(){k&&k.disconnect(),L=!0}}),slidesInView:eG,slideIndexes:ey,slideRegistry:eP,slidesToScroll:ef,target:eF,translate:y(er,t)};return eL}(e,x,R,M,I,n,G);return n.loop&&!r.slideLooper.canLoop()?t(Object.assign({},n,{loop:!1})):r}(j),L([_,...z.map(({options:e})=>e)]).forEach(e=>H.add(e,"change",Q)),j.active&&(i.translate.to(i.location.get()),i.animation.init(),i.slidesInView.init(),i.slideFocus.init(V),i.eventHandler.init(V),i.resizeHandler.init(V),i.slidesHandler.init(V),i.options.loop&&i.slideLooper.loop(),x.offsetParent&&R.length&&i.dragHandler.init(V),S=D.init(V,z)))}function Q(e,t){let n=W();X(),K(P({startIndex:n},e),t),G.emit("reInit")}function X(){i.dragHandler.destroy(),i.eventStore.clear(),i.translate.clear(),i.slideLooper.clear(),i.resizeHandler.destroy(),i.slidesHandler.destroy(),i.slidesInView.destroy(),i.animation.destroy(),D.destroy(),H.clear()}function Y(e,t,n){j.active&&!U&&(i.scrollBody.useBaseFriction().useDuration(!0===t?0:j.duration),i.scrollTo.index(e,n||0))}function W(){return i.index.get()}let V={canScrollNext:function(){return i.index.add(1).get()!==W()},canScrollPrev:function(){return i.index.add(-1).get()!==W()},containerNode:function(){return x},internalEngine:function(){return i},destroy:function(){U||(U=!0,H.clear(),X(),G.emit("destroy"),G.clear())},off:O,on:N,emit:J,plugins:function(){return S},previousScrollSnap:function(){return i.indexPrevious.get()},reInit:Q,rootNode:function(){return e},scrollNext:function(e){Y(i.index.add(1).get(),e,-1)},scrollPrev:function(e){Y(i.index.add(-1).get(),e,1)},scrollProgress:function(){return i.scrollProgress.get(i.offsetLocation.get())},scrollSnapList:function(){return i.scrollSnapList},scrollTo:Y,selectedScrollSnap:W,slideNodes:function(){return R},slidesInView:function(){return i.slidesInView.get()},slidesNotInView:function(){return i.slidesInView.get(!1)}};return K(t,n),setTimeout(()=>G.emit("init"),0),V}function S(e={},t=[]){let n=(0,r.useRef)(e),a=(0,r.useRef)(t),[o,s]=(0,r.useState)(),[u,c]=(0,r.useState)(),d=(0,r.useCallback)(()=>{o&&o.reInit(n.current,a.current)},[o]);return(0,r.useEffect)(()=>{l(n.current,e)||(n.current=e,d())},[e,d]),(0,r.useEffect)(()=>{!function(e,t){if(e.length!==t.length)return!1;let n=i(e),r=i(t);return n.every((e,t)=>l(e,r[t]))}(a.current,t)&&(a.current=t,d())},[t,d]),(0,r.useEffect)(()=>{if("u">typeof window&&window.document&&window.document.createElement&&u){w.globalOptions=S.globalOptions;let e=w(u,n.current,a.current);return s(e),()=>e.destroy()}s(void 0)},[u,s]),[c,o]}w.globalOptions=void 0,S.globalOptions=void 0},7510(e,t,n){n.d(t,{Af:()=>u,Nz:()=>i,u5:()=>c,y3:()=>p});var r,a,l=n(9081);function i(e,t,n){if(!e)return;if(!0===n(e))return e;let r=t?e.return:e.child;for(;r;){let e=i(r,t,n);if(e)return e;r=t?null:r.sibling}}function o(e){try{return Object.defineProperties(e,{_currentRenderer:{get:()=>null,set(){}},_currentRenderer2:{get:()=>null,set(){}}})}catch(t){return e}}"u">typeof window&&((null==(r=window.document)?void 0:r.createElement)||(null==(a=window.navigator)?void 0:a.product)==="ReactNative")?l.useLayoutEffect:l.useEffect;let s=o(l.createContext(null));class u extends l.Component{render(){return l.createElement(s.Provider,{value:this._reactInternals},this.props.children)}}function c(){let e=l.useContext(s);if(null===e)throw Error("its-fine: useFiber must be called within a <FiberProvider />!");let t=l.useId();return l.useMemo(()=>{for(let n of[e,null==e?void 0:e.alternate]){if(!n)continue;let e=i(n,!1,e=>{let n=e.memoizedState;for(;n;){if(n.memoizedState===t)return!0;n=n.next}});if(e)return e}},[e,t])}let d=Symbol.for("react.context"),f=e=>null!==e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===d;function p(){let e=function(){let e=c(),[t]=l.useState(()=>new Map);t.clear();let n=e;for(;n;){let e=n.type;f(e)&&e!==s&&!t.has(e)&&t.set(e,l.use(o(e))),n=n.return}return t}();return l.useMemo(()=>Array.from(e.keys()).reduce((t,n)=>r=>l.createElement(t,null,l.createElement(n.Provider,{...r,value:e.get(n)})),e=>l.createElement(u,{...e})),[e])}},295(e,t,n){let r;n.d(t,{_s:()=>L});var a=n(3285),l=n(9081);let i=l.createContext({drawerRef:{current:null},overlayRef:{current:null},onPress:()=>{},onRelease:()=>{},onDrag:()=>{},onNestedDrag:()=>{},onNestedOpenChange:()=>{},onNestedRelease:()=>{},openProp:void 0,dismissible:!1,isOpen:!1,isDragging:!1,keyboardIsOpen:{current:!1},snapPointsOffset:null,snapPoints:null,handleOnly:!1,modal:!1,shouldFade:!1,activeSnapPoint:null,onOpenChange:()=>{},setActiveSnapPoint:()=>{},closeDrawer:()=>{},direction:"bottom",shouldAnimate:{current:!0},shouldScaleBackground:!1,setBackgroundColorOnScale:!0,noBodyStyles:!1,container:null,autoFocus:!1}),o=()=>{let e=l.useContext(i);if(!e)throw Error("useDrawerContext must be used within a Drawer.Root");return e};function s(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}function u(){return c(/^iPhone/)||c(/^iPad/)||c(/^Mac/)&&navigator.maxTouchPoints>1}function c(e){return"u">typeof window&&null!=window.navigator?e.test(window.navigator.platform):void 0}!function(e){if(!e||"u"<typeof document)return;let t=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",t.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}("[data-vaul-drawer]{touch-action:none;will-change:transform;transition:transform .5s cubic-bezier(.32, .72, 0, 1);animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=open]{animation-name:slideFromBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=closed]{animation-name:slideToBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=open]{animation-name:slideFromTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=closed]{animation-name:slideToTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=open]{animation-name:slideFromLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=closed]{animation-name:slideToLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=open]{animation-name:slideFromRight}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=closed]{animation-name:slideToRight}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--initial-transform,100%),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--initial-transform,100%),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-overlay][data-vaul-snap-points=false]{animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=false][data-state=open]{animation-name:fadeIn}[data-vaul-overlay][data-state=closed]{animation-name:fadeOut}[data-vaul-animate=false]{animation:none!important}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:0;transition:opacity .5s cubic-bezier(.32, .72, 0, 1)}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:1}[data-vaul-drawer]:not([data-vaul-custom-container=true])::after{content:'';position:absolute;background:inherit;background-color:inherit}[data-vaul-drawer][data-vaul-drawer-direction=top]::after{top:initial;bottom:100%;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=bottom]::after{top:100%;bottom:initial;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=left]::after{left:initial;right:100%;top:0;bottom:0;width:200%}[data-vaul-drawer][data-vaul-drawer-direction=right]::after{left:100%;right:initial;top:0;bottom:0;width:200%}[data-vaul-overlay][data-vaul-snap-points=true]:not([data-vaul-snap-points-overlay=true]):not(\n[data-state=closed]\n){opacity:0}[data-vaul-overlay][data-vaul-snap-points-overlay=true]{opacity:1}[data-vaul-handle]{display:block;position:relative;opacity:.7;background:#e2e2e4;margin-left:auto;margin-right:auto;height:5px;width:32px;border-radius:1rem;touch-action:pan-y}[data-vaul-handle]:active,[data-vaul-handle]:hover{opacity:1}[data-vaul-handle-hitarea]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,2.75rem);height:max(100%,2.75rem);touch-action:inherit}@media (hover:hover) and (pointer:fine){[data-vaul-drawer]{user-select:none}}@media (pointer:fine){[data-vaul-handle-hitarea]:{width:100%;height:100%}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeOut{to{opacity:0}}@keyframes slideFromBottom{from{transform:translate3d(0,var(--initial-transform,100%),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToBottom{to{transform:translate3d(0,var(--initial-transform,100%),0)}}@keyframes slideFromTop{from{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToTop{to{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}}@keyframes slideFromLeft{from{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToLeft{to{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}}@keyframes slideFromRight{from{transform:translate3d(var(--initial-transform,100%),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToRight{to{transform:translate3d(var(--initial-transform,100%),0,0)}}");let d="u">typeof window?l.useLayoutEffect:l.useEffect;function f(...e){return(...t)=>{for(let n of e)"function"==typeof n&&n(...t)}}let p="u">typeof document&&window.visualViewport;function h(e){let t=window.getComputedStyle(e);return/(auto|scroll)/.test(t.overflow+t.overflowX+t.overflowY)}function m(e){for(h(e)&&(e=e.parentElement);e&&!h(e);)e=e.parentElement;return e||document.scrollingElement||document.documentElement}let A=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]),g=0;function B(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}function v(e){let t=document.scrollingElement||document.documentElement;for(;e&&e!==t;){let t=m(e);if(t!==document.documentElement&&t!==document.body&&t!==e){let n=t.getBoundingClientRect().top,r=e.getBoundingClientRect().top;e.getBoundingClientRect().bottom>t.getBoundingClientRect().bottom+24&&(t.scrollTop+=r-n)}e=t.parentElement}}function C(e){return e instanceof HTMLInputElement&&!A.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}function b(...e){return l.useCallback(function(...e){return t=>e.forEach(e=>{"function"==typeof e?e(t):null!=e&&(e.current=t)})}(...e),e)}let y=new WeakMap;function E(e,t,n=!1){if(!e||!(e instanceof HTMLElement))return;let r={};Object.entries(t).forEach(([t,n])=>{t.startsWith("--")?e.style.setProperty(t,n):(r[t]=e.style[t],e.style[t]=n)}),n||y.set(e,r)}let w=e=>{switch(e){case"top":case"bottom":return!0;case"left":case"right":return!1;default:return e}};function S(e,t){if(!e)return null;let n=window.getComputedStyle(e),r=n.transform||n.webkitTransform||n.mozTransform,a=r.match(/^matrix3d\((.+)\)$/);return a?parseFloat(a[1].split(", ")[w(t)?13:12]):(a=r.match(/^matrix\((.+)\)$/))?parseFloat(a[1].split(", ")[w(t)?5:4]):null}function x(e,t){if(!e)return()=>{};let n=e.style.cssText;return Object.assign(e.style,t),()=>{e.style.cssText=n}}let R=[.32,.72,0,1],F="vaul-dragging";function M(e){let t=l.useRef(e);return l.useEffect(()=>{t.current=e}),l.useMemo(()=>(...e)=>null==t.current?void 0:t.current.call(t,...e),[])}function I({prop:e,defaultProp:t,onChange:n=()=>{}}){let[r,a]=function({defaultProp:e,onChange:t}){let n=l.useState(e),[r]=n,a=l.useRef(r),i=M(t);return l.useEffect(()=>{a.current!==r&&(i(r),a.current=r)},[r,a,i]),n}({defaultProp:t,onChange:n}),i=void 0!==e,o=i?e:r,s=M(n);return[o,l.useCallback(t=>{if(i){let n="function"==typeof t?t(e):t;n!==e&&s(n)}else a(t)},[i,e,a,s])]}let T=()=>()=>{},D=null;function H({open:e,onOpenChange:t,children:n,onDrag:o,onRelease:c,snapPoints:h,shouldScaleBackground:A=!1,setBackgroundColorOnScale:b=!0,closeThreshold:x=.25,scrollLockTimeout:M=100,dismissible:T=!0,handleOnly:H=!1,fadeFromIndex:G=h&&h.length-1,activeSnapPoint:P,setActiveSnapPoint:k,fixed:L,modal:N=!0,onClose:O,nested:J,noBodyStyles:U=!1,direction:_="bottom",defaultOpen:j=!1,disablePreventScroll:z=!0,snapToSequentialPoint:K=!1,preventScrollRestoration:Q=!1,repositionInputs:X=!0,onAnimationEnd:Y,container:W,autoFocus:V=!1}){var Z,q;let[$=!1,ee]=I({defaultProp:j,prop:e,onChange:e=>{null==t||t(e),e||J||eT(),setTimeout(()=>{null==Y||Y(e)},500),e&&!N&&"u">typeof window&&window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"}),e||(document.body.style.pointerEvents="auto")}}),[et,en]=l.useState(!1),[er,ea]=l.useState(!1),[el,ei]=l.useState(!1),eo=l.useRef(null),es=l.useRef(null),eu=l.useRef(null),ec=l.useRef(null),ed=l.useRef(null),ef=l.useRef(!1),ep=l.useRef(null),eh=l.useRef(0),em=l.useRef(!1),eA=l.useRef(!j),eg=l.useRef(0),eB=l.useRef(null),ev=l.useRef((null==(Z=eB.current)?void 0:Z.getBoundingClientRect().height)||0),eC=l.useRef((null==(q=eB.current)?void 0:q.getBoundingClientRect().width)||0),eb=l.useRef(0),ey=l.useCallback(e=>{h&&e===eR.length-1&&(es.current=new Date)},[]),{activeSnapPoint:eE,activeSnapPointIndex:ew,setActiveSnapPoint:eS,onRelease:ex,snapPointsOffset:eR,onDrag:eF,shouldFade:eM,getPercentageDragged:eI}=function({activeSnapPointProp:e,setActiveSnapPointProp:t,snapPoints:n,drawerRef:r,overlayRef:a,fadeFromIndex:i,onSnapPointChange:o,direction:s="bottom",container:u,snapToSequentialPoint:c}){let[d,f]=I({prop:e,defaultProp:null==n?void 0:n[0],onChange:t}),[p,h]=l.useState("u">typeof window?{innerWidth:window.innerWidth,innerHeight:window.innerHeight}:void 0);l.useEffect(()=>{function e(){h({innerWidth:window.innerWidth,innerHeight:window.innerHeight})}return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);let m=l.useMemo(()=>d===(null==n?void 0:n[n.length-1])||null,[n,d]),A=l.useMemo(()=>{var e;return null!=(e=null==n?void 0:n.findIndex(e=>e===d))?e:null},[n,d]),g=n&&n.length>0&&(i||0===i)&&!Number.isNaN(i)&&n[i]===d||!n,B=l.useMemo(()=>{var e;let t=u?{width:u.getBoundingClientRect().width,height:u.getBoundingClientRect().height}:"u">typeof window?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0};return null!=(e=null==n?void 0:n.map(e=>{let n="string"==typeof e,r=0;if(n&&(r=parseInt(e,10)),w(s)){let a=n?r:p?e*t.height:0;return p?"bottom"===s?t.height-a:-t.height+a:a}let a=n?r:p?e*t.width:0;return p?"right"===s?t.width-a:-t.width+a:a}))?e:[]},[n,p,u]),v=l.useMemo(()=>null!==A?null==B?void 0:B[A]:null,[B,A]),C=l.useCallback(e=>{var t;let l=null!=(t=null==B?void 0:B.findIndex(t=>t===e))?t:null;o(l),E(r.current,{transition:`transform 0.5s cubic-bezier(${R.join(",")})`,transform:w(s)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`}),B&&l!==B.length-1&&void 0!==i&&l!==i&&l<i?E(a.current,{transition:`opacity 0.5s cubic-bezier(${R.join(",")})`,opacity:"0"}):E(a.current,{transition:`opacity 0.5s cubic-bezier(${R.join(",")})`,opacity:"1"}),f(null==n?void 0:n[Math.max(l,0)])},[r.current,n,B,i,a,f]);return l.useEffect(()=>{if(d||e){var t;let r=null!=(t=null==n?void 0:n.findIndex(t=>t===e||t===d))?t:-1;B&&-1!==r&&"number"==typeof B[r]&&C(B[r])}},[d,e,n,B,C]),{isLastSnapPoint:m,activeSnapPoint:d,shouldFade:g,getPercentageDragged:function(e,t){if(!n||"number"!=typeof A||!B||void 0===i)return null;let r=A===i-1;if(A>=i&&t)return 0;if(r&&!t)return 1;if(!g&&!r)return null;let a=r?A+1:A-1,l=e/Math.abs(r?B[a]-B[a-1]:B[a+1]-B[a]);return r?1-l:l},setActiveSnapPoint:f,activeSnapPointIndex:A,onRelease:function({draggedDistance:e,closeDrawer:t,velocity:r,dismissible:l}){if(void 0===i)return;let o="bottom"===s||"right"===s?(null!=v?v:0)-e:(null!=v?v:0)+e,u=A===i-1,d=0===A,f=e>0;if(u&&E(a.current,{transition:`opacity 0.5s cubic-bezier(${R.join(",")})`}),!c&&r>2&&!f)return void(l?t():C(B[0]));if(!c&&r>2&&f&&B&&n)return void C(B[n.length-1]);let p=null==B?void 0:B.reduce((e,t)=>"number"!=typeof e||"number"!=typeof t?e:Math.abs(t-o)<Math.abs(e-o)?t:e),h=w(s)?window.innerHeight:window.innerWidth;if(r>.4&&Math.abs(e)<.4*h){let e=f?1:-1;return e>0&&m&&n?void C(B[n.length-1]):void(d&&e<0&&l&&t(),null===A||C(B[A+e]))}C(p)},onDrag:function({draggedDistance:e}){if(null===v)return;let t="bottom"===s||"right"===s?v-e:v+e;("bottom"===s||"right"===s)&&t<B[B.length-1]||("top"===s||"left"===s)&&t>B[B.length-1]||E(r.current,{transform:w(s)?`translate3d(0, ${t}px, 0)`:`translate3d(${t}px, 0, 0)`})},snapPointsOffset:B}}({snapPoints:h,activeSnapPointProp:P,setActiveSnapPointProp:k,drawerRef:eB,fadeFromIndex:G,overlayRef:eo,onSnapPointChange:ey,direction:_,container:W,snapToSequentialPoint:K});!function(e={}){let{isDisabled:t}=e;d(()=>{if(!t){var e,n,a;let t,l,i,o,s,c,d;return 1==++g&&u()&&(i=0,o=window.pageXOffset,s=window.pageYOffset,c=f((e=document.documentElement,n="paddingRight",a=`${window.innerWidth-document.documentElement.clientWidth}px`,t=e.style[n],e.style[n]=a,()=>{e.style[n]=t})),window.scrollTo(0,0),d=f(B(document,"touchstart",e=>{((l=m(e.target))!==document.documentElement||l!==document.body)&&(i=e.changedTouches[0].pageY)},{passive:!1,capture:!0}),B(document,"touchmove",e=>{if(!l||l===document.documentElement||l===document.body)return void e.preventDefault();let t=e.changedTouches[0].pageY,n=l.scrollTop,r=l.scrollHeight-l.clientHeight;0!==r&&((n<=0&&t>i||n>=r&&t<i)&&e.preventDefault(),i=t)},{passive:!1,capture:!0}),B(document,"touchend",e=>{let t=e.target;C(t)&&t!==document.activeElement&&(e.preventDefault(),t.style.transform="translateY(-2000px)",t.focus(),requestAnimationFrame(()=>{t.style.transform=""}))},{passive:!1,capture:!0}),B(document,"focus",e=>{let t=e.target;C(t)&&(t.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{t.style.transform="",p&&(p.height<window.innerHeight?requestAnimationFrame(()=>{v(t)}):p.addEventListener("resize",()=>v(t),{once:!0}))}))},!0),B(window,"scroll",()=>{window.scrollTo(0,0)})),r=()=>{c(),d(),window.scrollTo(o,s)}),()=>{0==--g&&(null==r||r())}}},[t])}({isDisabled:!$||er||!N||el||!et||!X||!z});let{restorePositionSetting:eT}=function({isOpen:e,modal:t,nested:n,hasBeenOpened:r,preventScrollRestoration:a,noBodyStyles:i}){let[o,u]=l.useState(()=>"u">typeof window?window.location.href:""),c=l.useRef(0),d=l.useCallback(()=>{if(s()&&null===D&&e&&!i){D={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,height:document.body.style.height,right:"unset"};let{scrollX:e,innerHeight:t}=window;document.body.style.setProperty("position","fixed","important"),Object.assign(document.body.style,{top:`${-c.current}px`,left:`${-e}px`,right:"0px",height:"auto"}),window.setTimeout(()=>window.requestAnimationFrame(()=>{let e=t-window.innerHeight;e&&c.current>=t&&(document.body.style.top=`${-(c.current+e)}px`)}),300)}},[e]),f=l.useCallback(()=>{if(s()&&null!==D&&!i){let e=-parseInt(document.body.style.top,10),t=-parseInt(document.body.style.left,10);Object.assign(document.body.style,D),window.requestAnimationFrame(()=>{a&&o!==window.location.href?u(window.location.href):window.scrollTo(t,e)}),D=null}},[o]);return l.useEffect(()=>{function e(){c.current=window.scrollY}return e(),window.addEventListener("scroll",e),()=>{window.removeEventListener("scroll",e)}},[]),l.useEffect(()=>{if(t)return()=>{"u"<typeof document||document.querySelector("[data-vaul-drawer]")||f()}},[t,f]),l.useEffect(()=>{!n&&r&&(e?(window.matchMedia("(display-mode: standalone)").matches||d(),t||window.setTimeout(()=>{f()},500)):f())},[e,r,o,t,n,d,f]),{restorePositionSetting:f}}({isOpen:$,modal:N,nested:null!=J&&J,hasBeenOpened:et,preventScrollRestoration:Q,noBodyStyles:U});function eD(){return(window.innerWidth-26)/window.innerWidth}function eH(e,t){var n;let r=e,a=null==(n=window.getSelection())?void 0:n.toString(),l=eB.current?S(eB.current,_):null,i=new Date;if("SELECT"===r.tagName||r.hasAttribute("data-vaul-no-drag")||r.closest("[data-vaul-no-drag]"))return!1;if("right"===_||"left"===_)return!0;if(es.current&&i.getTime()-es.current.getTime()<500)return!1;if(null!==l&&("bottom"===_?l>0:l<0))return!0;if(a&&a.length>0)return!1;if(ed.current&&i.getTime()-ed.current.getTime()<M&&0===l||t)return ed.current=i,!1;for(;r;){if(r.scrollHeight>r.clientHeight){if(0!==r.scrollTop)return ed.current=new Date,!1;if("dialog"===r.getAttribute("role"))break}r=r.parentNode}return!0}function eG(e){er&&eB.current&&(eB.current.classList.remove(F),ef.current=!1,ea(!1),ec.current=new Date),null==O||O(),e||ee(!1),setTimeout(()=>{h&&eS(h[0])},500)}function eP(){if(!eB.current)return;let e=document.querySelector("[data-vaul-drawer-wrapper]"),t=S(eB.current,_);E(eB.current,{transform:"translate3d(0, 0, 0)",transition:`transform 0.5s cubic-bezier(${R.join(",")})`}),E(eo.current,{transition:`opacity 0.5s cubic-bezier(${R.join(",")})`,opacity:"1"}),A&&t&&t>0&&$&&E(e,{borderRadius:"8px",overflow:"hidden",...w(_)?{transform:`scale(${eD()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`,transformOrigin:"top"}:{transform:`scale(${eD()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`,transformOrigin:"left"},transitionProperty:"transform, border-radius",transitionDuration:"0.5s",transitionTimingFunction:`cubic-bezier(${R.join(",")})`},!0)}return l.useEffect(()=>{window.requestAnimationFrame(()=>{eA.current=!0})},[]),l.useEffect(()=>{var e;function t(){if(eB.current&&X&&(C(document.activeElement)||em.current)){var e;let t=(null==(e=window.visualViewport)?void 0:e.height)||0,n=window.innerHeight,r=n-t,a=eB.current.getBoundingClientRect().height||0;eb.current||(eb.current=a);let l=eB.current.getBoundingClientRect().top;if(Math.abs(eg.current-r)>60&&(em.current=!em.current),h&&h.length>0&&eR&&ew&&(r+=eR[ew]||0),eg.current=r,a>t||em.current){let e=eB.current.getBoundingClientRect().height,i=e;e>t&&(i=t-(a>.8*n?l:26)),L?eB.current.style.height=`${e-Math.max(r,0)}px`:eB.current.style.height=`${Math.max(i,t-l)}px`}else{let e;e=navigator.userAgent,"u">typeof window&&(/Firefox/.test(e)&&/Mobile/.test(e)||/FxiOS/.test(e))||(eB.current.style.height=`${eb.current}px`)}h&&h.length>0&&!em.current?eB.current.style.bottom="0px":eB.current.style.bottom=`${Math.max(r,0)}px`}}return null==(e=window.visualViewport)||e.addEventListener("resize",t),()=>{var e;return null==(e=window.visualViewport)?void 0:e.removeEventListener("resize",t)}},[ew,h,eR]),l.useEffect(()=>($&&(E(document.documentElement,{scrollBehavior:"auto"}),es.current=new Date),()=>{!function(e,t){if(!e||!(e instanceof HTMLElement))return;let n=y.get(e);n&&(e.style[t]=n[t])}(document.documentElement,"scrollBehavior")}),[$]),l.useEffect(()=>{N||window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"})},[N]),l.createElement(a.bL,{defaultOpen:j,onOpenChange:e=>{(T||e)&&(e?en(!0):eG(!0),ee(e))},open:$},l.createElement(i.Provider,{value:{activeSnapPoint:eE,snapPoints:h,setActiveSnapPoint:eS,drawerRef:eB,overlayRef:eo,onOpenChange:t,onPress:function(e){var t,n;!T&&!h||(!eB.current||eB.current.contains(e.target))&&(ev.current=(null==(t=eB.current)?void 0:t.getBoundingClientRect().height)||0,eC.current=(null==(n=eB.current)?void 0:n.getBoundingClientRect().width)||0,ea(!0),eu.current=new Date,u()&&window.addEventListener("touchend",()=>ef.current=!1,{once:!0}),e.target.setPointerCapture(e.pointerId),eh.current=w(_)?e.pageY:e.pageX)},onRelease:function(e){var t,n;if(!er||!eB.current)return;eB.current.classList.remove(F),ef.current=!1,ea(!1),ec.current=new Date;let r=S(eB.current,_);if(!e||!eH(e.target,!1)||!r||Number.isNaN(r)||null===eu.current)return;let a=ec.current.getTime()-eu.current.getTime(),l=eh.current-(w(_)?e.pageY:e.pageX),i=Math.abs(l)/a;if(i>.05&&(ei(!0),setTimeout(()=>{ei(!1)},200)),h){ex({draggedDistance:l*("bottom"===_||"right"===_?1:-1),closeDrawer:eG,velocity:i,dismissible:T}),null==c||c(e,!0);return}if("bottom"===_||"right"===_?l>0:l<0){eP(),null==c||c(e,!0);return}if(i>.4){eG(),null==c||c(e,!1);return}let o=Math.min(null!=(t=eB.current.getBoundingClientRect().height)?t:0,window.innerHeight),s=Math.min(null!=(n=eB.current.getBoundingClientRect().width)?n:0,window.innerWidth);if(Math.abs(r)>=("left"===_||"right"===_?s:o)*x){eG(),null==c||c(e,!1);return}null==c||c(e,!0),eP()},onDrag:function(e){if(eB.current&&er){let t="bottom"===_||"right"===_?1:-1,n=(eh.current-(w(_)?e.pageY:e.pageX))*t,r=n>0,a=h&&!T&&!r;if(a&&0===ew)return;let l=Math.abs(n),i=document.querySelector("[data-vaul-drawer-wrapper]"),s=l/("bottom"===_||"top"===_?ev.current:eC.current),u=eI(l,r);if(null!==u&&(s=u),a&&s>=1||!ef.current&&!eH(e.target,r))return;if(eB.current.classList.add(F),ef.current=!0,E(eB.current,{transition:"none"}),E(eo.current,{transition:"none"}),h&&eF({draggedDistance:n}),r&&!h){let e=Math.min(-(8*(Math.log(n+1)-2)*1),0)*t;E(eB.current,{transform:w(_)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`});return}let c=1-s;if((eM||G&&ew===G-1)&&(null==o||o(e,s),E(eo.current,{opacity:`${c}`,transition:"none"},!0)),i&&eo.current&&A){let e=Math.min(eD()+s*(1-eD()),1),t=8-8*s,n=Math.max(0,14-14*s);E(i,{borderRadius:`${t}px`,transform:w(_)?`scale(${e}) translate3d(0, ${n}px, 0)`:`scale(${e}) translate3d(${n}px, 0, 0)`,transition:"none"},!0)}if(!h){let e=l*t;E(eB.current,{transform:w(_)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`})}}},dismissible:T,shouldAnimate:eA,handleOnly:H,isOpen:$,isDragging:er,shouldFade:eM,closeDrawer:eG,onNestedDrag:function(e,t){if(t<0)return;let n=(window.innerWidth-16)/window.innerWidth,r=n+t*(1-n),a=-16+16*t;E(eB.current,{transform:w(_)?`scale(${r}) translate3d(0, ${a}px, 0)`:`scale(${r}) translate3d(${a}px, 0, 0)`,transition:"none"})},onNestedOpenChange:function(e){let t=e?(window.innerWidth-16)/window.innerWidth:1,n=e?-16:0;ep.current&&window.clearTimeout(ep.current),E(eB.current,{transition:`transform 0.5s cubic-bezier(${R.join(",")})`,transform:w(_)?`scale(${t}) translate3d(0, ${n}px, 0)`:`scale(${t}) translate3d(${n}px, 0, 0)`}),!e&&eB.current&&(ep.current=setTimeout(()=>{let e=S(eB.current,_);E(eB.current,{transition:"none",transform:w(_)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`})},500))},onNestedRelease:function(e,t){let n=w(_)?window.innerHeight:window.innerWidth,r=t?(n-16)/n:1,a=t?-16:0;t&&E(eB.current,{transition:`transform 0.5s cubic-bezier(${R.join(",")})`,transform:w(_)?`scale(${r}) translate3d(0, ${a}px, 0)`:`scale(${r}) translate3d(${a}px, 0, 0)`})},keyboardIsOpen:em,modal:N,snapPointsOffset:eR,activeSnapPointIndex:ew,direction:_,shouldScaleBackground:A,setBackgroundColorOnScale:b,noBodyStyles:U,container:W,autoFocus:V}},n))}let G=l.forwardRef(function({...e},t){let{overlayRef:n,snapPoints:r,onRelease:i,shouldFade:s,isOpen:u,modal:c,shouldAnimate:d}=o(),f=b(t,n),p=r&&r.length>0;if(!c)return null;let h=l.useCallback(e=>i(e),[i]);return l.createElement(a.hJ,{onMouseUp:h,ref:f,"data-vaul-overlay":"","data-vaul-snap-points":u&&p?"true":"false","data-vaul-snap-points-overlay":u&&s?"true":"false","data-vaul-animate":(null==d?void 0:d.current)?"true":"false",...e})});G.displayName="Drawer.Overlay";let P=l.forwardRef(function({onPointerDownOutside:e,style:t,onOpenAutoFocus:n,...r},i){let{drawerRef:s,onPress:u,onRelease:c,onDrag:d,keyboardIsOpen:f,snapPointsOffset:p,activeSnapPointIndex:h,modal:m,isOpen:A,direction:g,snapPoints:B,container:v,handleOnly:C,shouldAnimate:y,autoFocus:E}=o(),[S,F]=l.useState(!1),M=b(i,s),I=l.useRef(null),D=l.useRef(null),H=l.useRef(!1),G=B&&B.length>0;function P(e){I.current=null,H.current=!1,c(e)}return!function(){let{direction:e,isOpen:t,shouldScaleBackground:n,setBackgroundColorOnScale:r,noBodyStyles:a}=o(),i=l.useRef(null),s=(0,l.useMemo)(()=>document.body.style.backgroundColor,[]);function u(){return(window.innerWidth-26)/window.innerWidth}l.useEffect(()=>{if(t&&n){i.current&&clearTimeout(i.current);let t=document.querySelector("[data-vaul-drawer-wrapper]")||document.querySelector("[vaul-drawer-wrapper]");if(!t)return;!function(...e){}(r&&!a?x(document.body,{background:"black"}):T,x(t,{transformOrigin:w(e)?"top":"left",transitionProperty:"transform, border-radius",transitionDuration:"0.5s",transitionTimingFunction:`cubic-bezier(${R.join(",")})`}));let n=x(t,{borderRadius:"8px",overflow:"hidden",...w(e)?{transform:`scale(${u()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`}:{transform:`scale(${u()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`}});return()=>{n(),i.current=window.setTimeout(()=>{s?document.body.style.background=s:document.body.style.removeProperty("background")},500)}}},[t,n,s])}(),l.useEffect(()=>{G&&window.requestAnimationFrame(()=>{F(!0)})},[]),l.createElement(a.UC,{"data-vaul-drawer-direction":g,"data-vaul-drawer":"","data-vaul-delayed-snap-points":S?"true":"false","data-vaul-snap-points":A&&G?"true":"false","data-vaul-custom-container":v?"true":"false","data-vaul-animate":(null==y?void 0:y.current)?"true":"false",...r,ref:M,style:p&&p.length>0?{"--snap-point-height":`${p[null!=h?h:0]}px`,...t}:t,onPointerDown:e=>{C||(null==r.onPointerDown||r.onPointerDown.call(r,e),I.current={x:e.pageX,y:e.pageY},u(e))},onOpenAutoFocus:e=>{null==n||n(e),E||e.preventDefault()},onPointerDownOutside:t=>{(null==e||e(t),!m||t.defaultPrevented)?t.preventDefault():f.current&&(f.current=!1)},onFocusOutside:e=>{if(!m)return void e.preventDefault()},onPointerMove:e=>{if(D.current=e,C||(null==r.onPointerMove||r.onPointerMove.call(r,e),!I.current))return;let t=e.pageY-I.current.y,n=e.pageX-I.current.x,a="touch"===e.pointerType?10:2;((e,t,n=0)=>{if(H.current)return!0;let r=Math.abs(e.y),a=Math.abs(e.x),l=a>r,i=["bottom","right"].includes(t)?1:-1;if("left"===t||"right"===t){if(!(e.x*i<0)&&a>=0&&a<=n)return l}else if(!(e.y*i<0)&&r>=0&&r<=n)return!l;return H.current=!0,!0})({x:n,y:t},g,a)?d(e):(Math.abs(n)>a||Math.abs(t)>a)&&(I.current=null)},onPointerUp:e=>{null==r.onPointerUp||r.onPointerUp.call(r,e),I.current=null,H.current=!1,c(e)},onPointerOut:e=>{null==r.onPointerOut||r.onPointerOut.call(r,e),P(D.current)},onContextMenu:e=>{null==r.onContextMenu||r.onContextMenu.call(r,e),D.current&&P(D.current)}})});P.displayName="Drawer.Content";let k=l.forwardRef(function({preventCycle:e=!1,children:t,...n},r){let{closeDrawer:a,isDragging:i,snapPoints:s,activeSnapPoint:u,setActiveSnapPoint:c,dismissible:d,handleOnly:f,isOpen:p,onPress:h,onDrag:m}=o(),A=l.useRef(null),g=l.useRef(!1);function B(){A.current&&window.clearTimeout(A.current),g.current=!1}return l.createElement("div",{onClick:function(){g.current?B():window.setTimeout(()=>{!function(){if(i||e||g.current)return B();if(B(),!s||0===s.length){d||a();return}if(u===s[s.length-1]&&d)return a();let t=s.findIndex(e=>e===u);-1===t||c(s[t+1])}()},120)},onPointerCancel:B,onPointerDown:e=>{f&&h(e),A.current=window.setTimeout(()=>{g.current=!0},250)},onPointerMove:e=>{f&&m(e)},ref:r,"data-vaul-drawer-visible":p?"true":"false","data-vaul-handle":"","aria-hidden":"true",...n},l.createElement("span",{"data-vaul-handle-hitarea":"","aria-hidden":"true"},t))});k.displayName="Drawer.Handle";let L={Root:H,NestedRoot:function({onDrag:e,onOpenChange:t,open:n,...r}){let{onNestedDrag:a,onNestedOpenChange:i,onNestedRelease:s}=o();if(!a)throw Error("Drawer.NestedRoot must be placed in another drawer");return l.createElement(H,{nested:!0,open:n,onClose:()=>{i(!1)},onDrag:(t,n)=>{a(t,n),null==e||e(t,n)},onOpenChange:e=>{e&&i(e),null==t||t(e)},onRelease:s,...r})},Content:P,Overlay:G,Trigger:a.l9,Portal:function(e){let t=o(),{container:n=t.container,...r}=e;return l.createElement(a.ZL,{container:n,...r})},Handle:k,Close:a.bm,Title:a.hE,Description:a.VY}},4138(e,t,n){n.d(t,{y:()=>a});let r=e=>{let t,n=new Set,r=(e,r)=>{let a="function"==typeof e?e(t):e;if(!Object.is(a,t)){let e=t;t=(null!=r?r:"object"!=typeof a||null===a)?a:Object.assign({},t,a),n.forEach(n=>n(t,e))}},a=()=>t,l={setState:r,getState:a,getInitialState:()=>i,subscribe:e=>(n.add(e),()=>n.delete(e))},i=t=e(r,a,l);return l},a=e=>e?r(e):r}}]);
13
+ `+e.join(" > ")}return null},r7.getPublicRootInstance=function(e){if(!(e=e.current).child)return null;switch(e.child.tag){case 27:case 5:return aE(e.child.stateNode);default:return e.child.stateNode}},r7.injectIntoDevTools=function(){var e={bundleType:0,version:aC,rendererPackageName:ab,currentDispatcherRef:av,reconcilerVersion:"19.2.0"};if(null!==ay&&(e.rendererConfig=ay),typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")e=!1;else{var t=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(t.isDisabled||!t.supportsFiber)e=!0;else{try{iU=t.inject(e),i_=t}catch{}e=!!t.checkDCE}}return e},r7.isAlreadyRendering=function(){return(6&sp)!=0},r7.observeVisibleRects=function(e,t,n,a){if(!a3)throw Error(r(363));var l=ln(e=rp(e,t),n,a).disconnect;return{disconnect:function(){l()}}},r7.shouldError=function(){return null},r7.shouldSuspend=function(){return!1},r7.startHostTransition=function(e,t,a,l){if(5!==e.tag)throw Error(r(476));var i=tz(e).queue;tj(e,i,t,a0,null===a?n:function(){var t=tz(e);return null===t.next&&(t=e.alternate.memoizedState),tZ(e,t.next.queue,{},rh()),a(l)})},r7.updateContainer=function(e,t,n,r){var a=t.current,l=rh();return r6(a,l,e,t,n,r),l},r7.updateContainerSync=function(e,t,n,r){return r6(t.current,2,e,t,n,r),2},r7},ep.exports.default=ep.exports,Object.defineProperty(ep.exports,"__esModule",{value:!0})),ef.exports=ep.exports),(f=ef.exports)&&f.__esModule&&Object.prototype.hasOwnProperty.call(f,"default"))?f.default:f,em={},eA=/^three(?=[A-Z])/,eg=e=>`${e[0].toUpperCase()}${e.slice(1)}`,eB=0;function ev(e){if("function"==typeof e){let t=`${eB++}`;return em[t]=e,t}Object.assign(em,e)}function eC(e,t){let n=eg(e),r=em[n];if("primitive"!==e&&!r)throw Error(`R3F: ${n} is not part of the THREE namespace! Did you forget to extend? See: https://docs.pmnd.rs/react-three-fiber/api/objects#using-3rd-party-objects-declaratively`);if("primitive"===e&&!t.object)throw Error("R3F: Primitives without 'object' are invalid!");if(void 0!==t.args&&!Array.isArray(t.args))throw Error("R3F: The args prop must be an array!")}function eb(e){if(e.isHidden){var t;e.props.attach&&null!=(t=e.parent)&&t.object?Q(e.parent,e):et(e.object)&&!1!==e.props.visible&&(e.object.visible=!0),e.isHidden=!1,$(e)}}function ey(e,t,n){let r=t.root.getState();if(e.parent||e.object===r.scene){if(!t.object){var a,l;let e=em[eg(t.type)];t.object=null!=(a=t.props.object)?a:new e(...null!=(l=t.props.args)?l:[]),t.object.__r3f=t}if(q(t.object,t.props),t.props.attach)Q(e,t);else if(et(t.object)&&et(e.object)){let r=e.object.children.indexOf(null==n?void 0:n.object);if(n&&-1!==r){let n=e.object.children.indexOf(t.object);-1!==n?(e.object.children.splice(n,1),e.object.children.splice(n<r?r-1:r,0,t.object)):(t.object.parent=e.object,e.object.children.splice(r,0,t.object),t.object.dispatchEvent({type:"added"}),e.object.dispatchEvent({type:"childadded",child:t.object}))}else e.object.add(t.object)}for(let e of t.children)ey(t,e);$(t)}}function eE(e,t){t&&(t.parent=e,e.children.push(t),ey(e,t))}function ew(e,t,n){if(!t||!n)return;t.parent=e;let r=e.children.indexOf(n);-1!==r?e.children.splice(r,0,t):e.children.push(t),ey(e,t,n)}function eS(e){if("function"==typeof e.dispose){let t=()=>{try{e.dispose()}catch{}};"u">typeof IS_REACT_ACT_ENVIRONMENT?t():(0,F.unstable_scheduleCallback)(F.unstable_IdlePriority,t)}}function ex(e,t,n){if(!t)return;t.parent=null;let r=e.children.indexOf(t);-1!==r&&e.children.splice(r,1),t.props.attach?X(e,t):et(t.object)&&et(e.object)&&(e.object.remove(t.object),function(e,t){let{internal:n}=e.getState();n.interaction=n.interaction.filter(e=>e!==t),n.initialHits=n.initialHits.filter(e=>e!==t),n.hovered.forEach((e,r)=>{(e.eventObject===t||e.object===t)&&n.hovered.delete(r)}),n.capturedMap.forEach((e,r)=>{er(n.capturedMap,t,e,r)})}(T(t),t.object));let a=null!==t.props.dispose&&!1!==n;for(let e=t.children.length-1;e>=0;e--){let n=t.children[e];ex(t,n,a)}t.children.length=0,delete t.object.__r3f,a&&"primitive"!==t.type&&"Scene"!==t.object.type&&eS(t.object),void 0===n&&$(t)}let eR=[],eF=()=>{},eM={},eI=0,eT=(p={isPrimaryRenderer:!1,warnsIfNotActing:!1,supportsMutation:!0,supportsPersistence:!1,supportsHydration:!1,createInstance:function(e,t,n){var r;return eC(e=eg(e)in em?e:e.replace(eA,""),t),"primitive"===e&&null!=(r=t.object)&&r.__r3f&&delete t.object.__r3f,j(t.object,n,e,t)},removeChild:ex,appendChild:eE,appendInitialChild:eE,insertBefore:ew,appendChildToContainer(e,t){let n=e.getState().scene.__r3f;t&&n&&eE(n,t)},removeChildFromContainer(e,t){let n=e.getState().scene.__r3f;t&&n&&ex(n,t)},insertInContainerBefore(e,t,n){let r=e.getState().scene.__r3f;t&&n&&r&&ew(r,t,n)},getRootHostContext:()=>eM,getChildHostContext:()=>eM,commitUpdate(e,t,n,r,a){var l,i,o;eC(t,r);let s=!1;if("primitive"===e.type&&n.object!==r.object||(null==(l=r.args)?void 0:l.length)!==(null==(i=n.args)?void 0:i.length)?s=!0:null!=(o=r.args)&&o.some((e,t)=>{var r;return e!==(null==(r=n.args)?void 0:r[t])})&&(s=!0),s)eR.push([e,{...r},a]);else{let t=function(e,t){let n={};for(let r in t)if(!Y.includes(r)&&!U.equ(t[r],e.props[r]))for(let e in n[r]=t[r],t)e.startsWith(`${r}-`)&&(n[e]=t[e]);for(let r in e.props){if(Y.includes(r)||t.hasOwnProperty(r))continue;let{root:a,key:l}=z(e.object,r);if(a.constructor&&0===a.constructor.length){let e=function(e){let t=W.get(e.constructor);try{t||(t=new e.constructor,W.set(e.constructor,t))}catch(e){}return t}(a);U.und(e)||(n[l]=e[l])}else n[l]=0}return n}(e,r);Object.keys(t).length&&(Object.assign(e.props,t),q(e.object,t))}(null===a.sibling||(4&a.flags)==0)&&function(){for(let[e]of eR){let t=e.parent;if(t)for(let n of(e.props.attach?X(t,e):et(e.object)&&et(t.object)&&t.object.remove(e.object),e.children))n.props.attach?X(e,n):et(n.object)&&et(e.object)&&e.object.remove(n.object);e.isHidden&&eb(e),e.object.__r3f&&delete e.object.__r3f,"primitive"!==e.type&&eS(e.object)}for(let[r,a,l]of eR){r.props=a;let i=r.parent;if(i){let a=em[eg(r.type)];r.object=null!=(e=r.props.object)?e:new a(...null!=(t=r.props.args)?t:[]),r.object.__r3f=r;var e,t,n=r.object;for(let e of[l,l.alternate])if(null!==e)if("function"==typeof e.ref){null==e.refCleanup||e.refCleanup();let t=e.ref(n);"function"==typeof t&&(e.refCleanup=t)}else e.ref&&(e.ref.current=n);for(let e of(q(r.object,r.props),r.props.attach?Q(i,r):et(r.object)&&et(i.object)&&i.object.add(r.object),r.children))e.props.attach?Q(r,e):et(e.object)&&et(r.object)&&r.object.add(e.object);$(r)}}eR.length=0}()},finalizeInitialChildren:()=>!1,commitMount(){},getPublicInstance:e=>null==e?void 0:e.object,prepareForCommit:()=>null,preparePortalMount:e=>j(e.getState().scene,e,"",{}),resetAfterCommit:()=>{},shouldSetTextContent:()=>!1,clearContainer:()=>!1,hideInstance:function(e){if(!e.isHidden){var t;e.props.attach&&null!=(t=e.parent)&&t.object?X(e.parent,e):et(e.object)&&(e.object.visible=!1),e.isHidden=!0,$(e)}},unhideInstance:eb,createTextInstance:eF,hideTextInstance:eF,unhideTextInstance:eF,scheduleTimeout:"function"==typeof setTimeout?setTimeout:void 0,cancelTimeout:"function"==typeof clearTimeout?clearTimeout:void 0,noTimeout:-1,getInstanceFromNode:()=>null,beforeActiveInstanceBlur(){},afterActiveInstanceBlur(){},detachDeletedInstance(){},prepareScopeUpdate(){},getInstanceFromScope:()=>null,shouldAttemptEagerTransition:()=>!1,trackSchedulerEvent:()=>{},resolveEventType:()=>null,resolveEventTimeStamp:()=>-1.1,requestPostPaintCallback(){},maySuspendCommit:()=>!1,preloadInstance:()=>!0,suspendInstance(){},waitForCommitToBeReady:()=>null,NotPendingTransition:null,HostTransitionContext:A.createContext(null),setCurrentUpdatePriority(e){eI=e},getCurrentUpdatePriority:()=>eI,resolveUpdatePriority(){var e;if(0!==eI)return eI;switch("u">typeof window&&(null==(e=window.event)?void 0:e.type)){case"click":case"contextmenu":case"dblclick":case"pointercancel":case"pointerdown":case"pointerup":return 2;case"pointermove":case"pointerout":case"pointerover":case"pointerenter":case"pointerleave":case"wheel":return 8;default:return 32}},resetFormInstance(){},rendererPackageName:"@react-three/fiber",rendererVersion:"9.5.0",applyViewTransitionName(e,t,n){},restoreViewTransitionName(e,t){},cancelViewTransitionName(e,t,n){},cancelRootViewTransitionName(e){},restoreRootViewTransitionName(e){},InstanceMeasurement:null,measureInstance:e=>null,wasInstanceInViewport:e=>!0,hasInstanceChanged:(e,t)=>!1,hasInstanceAffectedParent:(e,t)=>!1,suspendOnActiveViewTransition(e,t){},startGestureTransition:()=>null,startViewTransition:()=>null,stopViewTransition(e){},createViewTransitionInstance:e=>null,getCurrentGestureOffset(e){throw Error("startGestureTransition is not yet supported in react-three-fiber.")},cloneMutableInstance:(e,t)=>e,cloneMutableTextInstance:e=>e,cloneRootViewTransitionContainer(e){throw Error("Not implemented.")},removeRootViewTransitionClone(e,t){throw Error("Not implemented.")},createFragmentInstance:e=>null,updateFragmentInstanceFiber(e,t){},commitNewChildToFragmentInstance(e,t){},deleteChildFromFragmentInstance(e,t){},measureClonedInstance:e=>null,maySuspendCommitOnUpdate:(e,t,n)=>!1,maySuspendCommitInSyncRender:(e,t)=>!1,startSuspendingCommit:()=>null,getSuspendedCommitReason:(e,t)=>null},(d=eh(p)).injectIntoDevTools(),d),eD=new Map,eH={objects:"shallow",strict:!1};function eG(e){var t,n;let r,a,l,i,o,s,u,c=eD.get(e),d=null==c?void 0:c.fiber,f=null==c?void 0:c.store;c&&console.warn("R3F.createRoot should only be called once!");let p="function"==typeof reportError?reportError:console.error,h=f||(t=eY,n=eW,o=(i=(l=w((e,r)=>{let a,l=new B.Pq0,i=new B.Pq0,o=new B.Pq0;function s(e=r().camera,t=i,n=r().size){let{width:a,height:u,top:c,left:d}=n,f=a/u;t.isVector3?o.copy(t):o.set(...t);let p=e.getWorldPosition(l).distanceTo(o);if(e&&e.isOrthographicCamera)return{width:a/e.zoom,height:u/e.zoom,top:c,left:d,factor:1,distance:p,aspect:f};{let t=2*Math.tan(e.fov*Math.PI/180/2)*p,n=a/u*t;return{width:n,height:t,top:c,left:d,factor:a/n,distance:p,aspect:f}}}let u=t=>e(e=>({performance:{...e.performance,current:t}})),c=new B.I9Y;return{set:e,get:r,gl:null,camera:null,raycaster:null,events:{priority:1,enabled:!0,connected:!1},scene:null,xr:null,invalidate:(e=1)=>t(r(),e),advance:(e,t)=>n(e,t,r()),legacy:!1,linear:!1,flat:!1,controls:null,clock:new B.zD7,pointer:c,mouse:c,frameloop:"always",onPointerMissed:void 0,performance:{current:1,min:.5,max:1,debounce:200,regress:()=>{let e=r();a&&clearTimeout(a),e.performance.current!==e.performance.min&&u(e.performance.min),a=setTimeout(()=>u(r().performance.max),e.performance.debounce)}},size:{width:0,height:0,top:0,left:0},viewport:{initialDpr:0,dpr:0,width:0,height:0,top:0,left:0,aspect:0,distance:0,factor:0,getCurrentViewport:s},setEvents:t=>e(e=>({...e,events:{...e.events,...t}})),setSize:(t,n,a=0,l=0)=>{let o=r().camera,u={width:t,height:n,top:a,left:l};e(e=>({size:u,viewport:{...e.viewport,...s(o,i,u)}}))},setDpr:t=>e(e=>{let n=O(t);return{viewport:{...e.viewport,dpr:n,initialDpr:e.viewport.initialDpr||n}}}),setFrameloop:(t="always")=>{let n=r().clock;n.stop(),n.elapsedTime=0,"never"!==t&&(n.start(),n.elapsedTime=0),e(()=>({frameloop:t}))},previousRoot:void 0,internal:{interaction:[],hovered:new Map,subscribers:[],initialClick:[0,0],initialHits:[],capturedMap:new Map,lastEvent:A.createRef(),active:!1,frames:0,priority:0,subscribe:(e,t,n)=>{let a=r().internal;return a.priority=a.priority+ +(t>0),a.subscribers.push({ref:e,priority:t,store:n}),a.subscribers=a.subscribers.sort((e,t)=>e.priority-t.priority),()=>{let n=r().internal;null!=n&&n.subscribers&&(n.priority=n.priority-(t>0),n.subscribers=n.subscribers.filter(t=>t.ref!==e))}}}}})).getState()).size,s=i.viewport.dpr,u=i.camera,l.subscribe(()=>{let{camera:e,size:t,viewport:n,gl:r,set:a}=l.getState();if(t.width!==o.width||t.height!==o.height||n.dpr!==s){o=t,s=n.dpr,ee(e,t),n.dpr>0&&r.setPixelRatio(n.dpr);let a="u">typeof HTMLCanvasElement&&r.domElement instanceof HTMLCanvasElement;r.setSize(t.width,t.height,a)}e!==u&&(u=e,a(t=>({viewport:{...t.viewport,...t.viewport.getCurrentViewport(e)}})))}),l.subscribe(e=>t(e)),l),m=d||eT.createContainer(h,1,null,!1,null,"",p,p,p,null);c||eD.set(e,{fiber:m,store:h});let g=!1,C=null;return{async configure(t={}){var n,l;let i;C=new Promise(e=>i=e);let{gl:o,size:s,scene:u,events:c,onCreated:d,shadows:f=!1,linear:p=!1,flat:m=!1,legacy:A=!1,orthographic:b=!1,frameloop:y="always",dpr:E=[1,2],performance:w,raycaster:S,camera:x,onPointerMissed:R}=t,F=h.getState(),M=F.gl;if(!F.gl){let t={canvas:e,powerPreference:"high-performance",antialias:!0,alpha:!0},n="function"==typeof o?await o(t):o;M=ea(n)?n:new v.WebGLRenderer({...t,...o}),F.set({gl:M})}let I=F.raycaster;I||F.set({raycaster:I=new B.tBo});let{params:T,...D}=S||{};if(U.equ(D,I,eH)||q(I,{...D}),U.equ(T,I.params,eH)||q(I,{params:{...I.params,...T}}),!F.camera||F.camera===a&&!U.equ(a,x,eH)){a=x;let e=null==x?void 0:x.isCamera,t=e?x:b?new B.qUd(0,0,0,0,.1,1e3):new B.ubm(75,0,.1,1e3);!e&&(t.position.z=5,x&&(q(t,x),!t.manual&&("aspect"in x||"left"in x||"right"in x||"bottom"in x||"top"in x)&&(t.manual=!0,t.updateProjectionMatrix())),F.camera||null!=x&&x.rotation||t.lookAt(0,0,0)),F.set({camera:t}),I.camera=t}if(!F.scene){let e;null!=u&&u.isScene?j(e=u,h,"",{}):(j(e=new B.Z58,h,"",{}),u&&q(e,u)),F.set({scene:e})}c&&!F.events.handlers&&F.set({events:c(h)});let H=function(e,t){if(!t&&"u">typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement&&e.parentElement){let{width:t,height:n,top:r,left:a}=e.parentElement.getBoundingClientRect();return{width:t,height:n,top:r,left:a}}return!t&&"u">typeof OffscreenCanvas&&e instanceof OffscreenCanvas?{width:e.width,height:e.height,top:0,left:0}:{width:0,height:0,top:0,left:0,...t}}(e,s);if(U.equ(H,F.size,eH)||F.setSize(H.width,H.height,H.top,H.left),E&&F.viewport.dpr!==O(E)&&F.setDpr(E),F.frameloop!==y&&F.setFrameloop(y),F.onPointerMissed||F.set({onPointerMissed:R}),w&&!U.equ(w,F.performance,eH)&&F.set(e=>({performance:{...e.performance,...w}})),!F.xr){let e=(e,t)=>{let n=h.getState();"never"!==n.frameloop&&eW(e,!0,n,t)},t=()=>{let t=h.getState();t.gl.xr.enabled=t.gl.xr.isPresenting,t.gl.xr.setAnimationLoop(t.gl.xr.isPresenting?e:null),t.gl.xr.isPresenting||eY(t)},r={connect(){let e=h.getState().gl;e.xr.addEventListener("sessionstart",t),e.xr.addEventListener("sessionend",t)},disconnect(){let e=h.getState().gl;e.xr.removeEventListener("sessionstart",t),e.xr.removeEventListener("sessionend",t)}};"function"==typeof(null==(n=M.xr)?void 0:n.addEventListener)&&r.connect(),F.set({xr:r})}if(M.shadowMap){let e=M.shadowMap.enabled,t=M.shadowMap.type;M.shadowMap.enabled=!!f,U.boo(f)?M.shadowMap.type=2:U.str(f)?M.shadowMap.type=null!=(l=({basic:0,percentage:1,soft:2,variance:3})[f])?l:2:U.obj(f)&&Object.assign(M.shadowMap,f),(e!==M.shadowMap.enabled||t!==M.shadowMap.type)&&(M.shadowMap.needsUpdate=!0)}return B.ppV.enabled=!A,g||(M.outputColorSpace=p?B.Zr2:"srgb",M.toneMapping=4*!m),F.legacy!==A&&F.set(()=>({legacy:A})),F.linear!==p&&F.set(()=>({linear:p})),F.flat!==m&&F.set(()=>({flat:m})),!o||U.fun(o)||ea(o)||U.equ(o,M,eH)||q(M,o),r=d,g=!0,i(),this},render(t){return g||C||this.configure(),C.then(()=>{eT.updateContainer((0,M.jsx)(eP,{store:h,children:t,onCreated:r,rootElement:e}),m,null,()=>void 0)}),h},unmount(){ek(e)}}}function eP({store:e,children:t,onCreated:n,rootElement:r}){return G(()=>{let t=e.getState();t.set(e=>({internal:{...e.internal,active:!0}})),n&&n(t),e.getState().events.connected||null==t.events.connect||t.events.connect(r)},[]),(0,M.jsx)(el.Provider,{value:e,children:t})}function ek(e,t){let n=eD.get(e),r=null==n?void 0:n.fiber;if(r){let a=null==n?void 0:n.store.getState();a&&(a.internal.active=!1),eT.updateContainer(null,r,null,()=>{a&&setTimeout(()=>{try{null==a.events.disconnect||a.events.disconnect(),null==(n=a.gl)||null==(r=n.renderLists)||null==r.dispose||r.dispose(),null==(l=a.gl)||null==l.forceContextLoss||l.forceContextLoss(),null!=(i=a.gl)&&i.xr&&a.xr.disconnect();var n,r,l,i,o=a.scene;for(let e in"Scene"!==o.type&&(null==o.dispose||o.dispose()),o){let t=o[e];(null==t?void 0:t.type)!=="Scene"&&(null==t||null==t.dispose||t.dispose())}eD.delete(e),t&&t(e)}catch(e){}},500)})}}function eL(e,t,n){return(0,M.jsx)(eN,{children:e,container:t,state:n})}function eN({state:e={},children:t,container:n}){let{events:r,size:a,...l}=e,i=ei(),[o]=A.useState(()=>new B.tBo),[s]=A.useState(()=>new B.I9Y),u=P((e,t)=>{let l;if(t.camera&&a){let n=t.camera;l=e.viewport.getCurrentViewport(n,new B.Pq0,a),n!==e.camera&&ee(n,a)}return{...e,...t,scene:n,raycaster:o,pointer:s,mouse:s,previousRoot:i,events:{...e.events,...t.events,...r},size:{...e.size,...a},viewport:{...e.viewport,...l},setEvents:e=>t.set(t=>({...t,events:{...t.events,...e}}))}}),c=A.useMemo(()=>{let e=w((e,t)=>({...l,set:e,get:t})),t=t=>e.setState(e=>u.current(t,e));return t(i.getState()),i.subscribe(t),e},[i,n]);return(0,M.jsx)(M.Fragment,{children:eT.createPortal((0,M.jsx)(el.Provider,{value:c,children:t}),c,null)})}let eO=new Set,eJ=new Set,eU=new Set;function e_(e,t){if(e.size)for(let{callback:n}of e.values())n(t)}function ej(e,t){switch(e){case"before":return e_(eO,t);case"after":return e_(eJ,t);case"tail":return e_(eU,t)}}function ez(e,t,n){let l=t.clock.getDelta();"never"===t.frameloop&&"number"==typeof e&&(l=e-t.clock.elapsedTime,t.clock.oldTime=t.clock.elapsedTime,t.clock.elapsedTime=e),r=t.internal.subscribers;for(let e=0;e<r.length;e++)(a=r[e]).ref.current(a.store.getState(),l,n);return!t.internal.priority&&t.gl.render&&t.gl.render(t.scene,t.camera),t.internal.frames=Math.max(0,t.internal.frames-1),"always"===t.frameloop?1:t.internal.frames}let eK=!1,eQ=!1;function eX(e){for(let n of(i=requestAnimationFrame(eX),eK=!0,l=0,ej("before",e),eQ=!0,eD.values())){var t;(o=n.store.getState()).internal.active&&("always"===o.frameloop||o.internal.frames>0)&&!(null!=(t=o.gl.xr)&&t.isPresenting)&&(l+=ez(e,o))}if(eQ=!1,ej("after",e),0===l)return ej("tail",e),eK=!1,cancelAnimationFrame(i)}function eY(e,t=1){var n;if(!e)return eD.forEach(e=>eY(e.store.getState(),t));(null==(n=e.gl.xr)||!n.isPresenting)&&e.internal.active&&"never"!==e.frameloop&&(t>1?e.internal.frames=Math.min(60,e.internal.frames+t):eQ?e.internal.frames=2:e.internal.frames=1,eK||(eK=!0,requestAnimationFrame(eX)))}function eW(e,t=!0,n,r){if(t&&ej("before",e),n)ez(e,n,r);else for(let t of eD.values())ez(e,t.store.getState());t&&ej("after",e)}let eV={onClick:["click",!1],onContextMenu:["contextmenu",!1],onDoubleClick:["dblclick",!1],onWheel:["wheel",!0],onPointerDown:["pointerdown",!0],onPointerUp:["pointerup",!0],onPointerLeave:["pointerleave",!0],onPointerMove:["pointermove",!0],onPointerCancel:["pointercancel",!0],onLostPointerCapture:["lostpointercapture",!0]};function eZ(e){let{handlePointer:t}=function(e){function t(e){return e.filter(e=>["Move","Over","Enter","Out","Leave"].some(t=>{var n;return null==(n=e.__r3f)?void 0:n.handlers["onPointer"+t]}))}function n(t){let{internal:n}=e.getState();for(let e of n.hovered.values())if(!t.length||!t.find(t=>t.object===e.object&&t.index===e.index&&t.instanceId===e.instanceId)){let r=e.eventObject.__r3f;if(n.hovered.delete(en(e)),null!=r&&r.eventCount){let n=r.handlers,a={...e,intersections:t};null==n.onPointerOut||n.onPointerOut(a),null==n.onPointerLeave||n.onPointerLeave(a)}}}function r(e,t){for(let n=0;n<t.length;n++){let r=t[n].__r3f;null==r||null==r.handlers.onPointerMissed||r.handlers.onPointerMissed(e)}}return{handlePointer:function(a){switch(a){case"onPointerLeave":case"onPointerCancel":return()=>n([]);case"onLostPointerCapture":return t=>{let{internal:r}=e.getState();"pointerId"in t&&r.capturedMap.has(t.pointerId)&&requestAnimationFrame(()=>{r.capturedMap.has(t.pointerId)&&(r.capturedMap.delete(t.pointerId),n([]))})}}return function(l){let{onPointerMissed:i,internal:o}=e.getState();o.lastEvent.current=l;let s="onPointerMove"===a,u="onClick"===a||"onContextMenu"===a||"onDoubleClick"===a,c=function(t,n){let r=e.getState(),a=new Set,l=[],i=n?n(r.internal.interaction):r.internal.interaction;for(let e=0;e<i.length;e++){let t=J(i[e]);t&&(t.raycaster.camera=void 0)}r.previousRoot||null==r.events.compute||r.events.compute(t,r);let o=i.flatMap(function(e){let n=J(e);if(!n||!n.events.enabled||null===n.raycaster.camera)return[];if(void 0===n.raycaster.camera){var r;null==n.events.compute||n.events.compute(t,n,null==(r=n.previousRoot)?void 0:r.getState()),void 0===n.raycaster.camera&&(n.raycaster.camera=null)}return n.raycaster.camera?n.raycaster.intersectObject(e,!0):[]}).sort((e,t)=>{let n=J(e.object),r=J(t.object);return n&&r&&r.events.priority-n.events.priority||e.distance-t.distance}).filter(e=>{let t=en(e);return!a.has(t)&&(a.add(t),!0)});for(let e of(r.events.filter&&(o=r.events.filter(o,r)),o)){let t=e.object;for(;t;){var s;null!=(s=t.__r3f)&&s.eventCount&&l.push({...e,eventObject:t}),t=t.parent}}if("pointerId"in t&&r.internal.capturedMap.has(t.pointerId))for(let e of r.internal.capturedMap.get(t.pointerId).values())a.has(en(e.intersection))||l.push(e.intersection);return l}(l,s?t:void 0),d=u?function(t){let{internal:n}=e.getState(),r=t.offsetX-n.initialClick[0],a=t.offsetY-n.initialClick[1];return Math.round(Math.sqrt(r*r+a*a))}(l):0;"onPointerDown"===a&&(o.initialClick=[l.offsetX,l.offsetY],o.initialHits=c.map(e=>e.eventObject)),u&&!c.length&&d<=2&&(r(l,o.interaction),i&&i(l)),s&&n(c),!function(e,t,r,a){if(e.length){let l={stopped:!1};for(let i of e){let o=J(i.object);if(o||i.object.traverseAncestors(e=>{let t=J(e);if(t)return o=t,!1}),o){let{raycaster:s,pointer:u,camera:c,internal:d}=o,f=new B.Pq0(u.x,u.y,0).unproject(c),p=e=>{var t,n;return null!=(t=null==(n=d.capturedMap.get(e))?void 0:n.has(i.eventObject))&&t},h=e=>{let n={intersection:i,target:t.target};d.capturedMap.has(e)?d.capturedMap.get(e).set(i.eventObject,n):d.capturedMap.set(e,new Map([[i.eventObject,n]])),t.target.setPointerCapture(e)},m=e=>{let t=d.capturedMap.get(e);t&&er(d.capturedMap,i.eventObject,t,e)},A={};for(let e in t){let n=t[e];"function"!=typeof n&&(A[e]=n)}let g={...i,...A,pointer:u,intersections:e,stopped:l.stopped,delta:r,unprojectedPoint:f,ray:s.ray,camera:c,stopPropagation(){let r="pointerId"in t&&d.capturedMap.get(t.pointerId);(!r||r.has(i.eventObject))&&(g.stopped=l.stopped=!0,d.hovered.size&&Array.from(d.hovered.values()).find(e=>e.eventObject===i.eventObject)&&n([...e.slice(0,e.indexOf(i)),i]))},target:{hasPointerCapture:p,setPointerCapture:h,releasePointerCapture:m},currentTarget:{hasPointerCapture:p,setPointerCapture:h,releasePointerCapture:m},nativeEvent:t};if(a(g),!0===l.stopped)break}}}}(c,l,d,function(e){let t=e.eventObject,n=t.__r3f;if(!(null!=n&&n.eventCount))return;let i=n.handlers;if(s){if(i.onPointerOver||i.onPointerEnter||i.onPointerOut||i.onPointerLeave){let t=en(e),n=o.hovered.get(t);n?n.stopped&&e.stopPropagation():(o.hovered.set(t,e),null==i.onPointerOver||i.onPointerOver(e),null==i.onPointerEnter||i.onPointerEnter(e))}null==i.onPointerMove||i.onPointerMove(e)}else{let n=i[a];n?(!u||o.initialHits.includes(t))&&(r(l,o.interaction.filter(e=>!o.initialHits.includes(e))),n(e)):u&&o.initialHits.includes(t)&&r(l,o.interaction.filter(e=>!o.initialHits.includes(e)))}})}}}}(e);return{priority:1,enabled:!0,compute(e,t,n){t.pointer.set(e.offsetX/t.size.width*2-1,-(2*(e.offsetY/t.size.height))+1),t.raycaster.setFromCamera(t.pointer,t.camera)},connected:void 0,handlers:Object.keys(eV).reduce((e,n)=>({...e,[n]:t(n)}),{}),update:()=>{var t;let{events:n,internal:r}=e.getState();null!=(t=r.lastEvent)&&t.current&&n.handlers&&n.handlers.onPointerMove(r.lastEvent.current)},connect:t=>{let{set:n,events:r}=e.getState();if(null==r.disconnect||r.disconnect(),n(e=>({events:{...e.events,connected:t}})),r.handlers)for(let e in r.handlers){let n=r.handlers[e],[a,l]=eV[e];t.addEventListener(a,n,{passive:l})}},disconnect:()=>{let{set:t,events:n}=e.getState();if(n.connected){if(n.handlers)for(let e in n.handlers){let t=n.handlers[e],[r]=eV[e];n.connected.removeEventListener(r,t)}t(e=>({events:{...e.events,connected:void 0}}))}}}}},683(e,t,n){n.d(t,{Hl:()=>d});var r=n(2326),a=n(9081),l=n(1519);function i(e,t){let n;return(...r)=>{window.clearTimeout(n),n=window.setTimeout(()=>e(...r),t)}}let o=["x","y","top","bottom","left","right","width","height"];var s=n(7510),u=n(8525);function c({ref:e,children:t,fallback:n,resize:s,style:c,gl:d,events:f=r.f,eventSource:p,eventPrefix:h,shadows:m,linear:A,flat:g,legacy:B,orthographic:v,frameloop:C,dpr:b,performance:y,raycaster:E,camera:w,scene:S,onPointerMissed:x,onCreated:R,...F}){a.useMemo(()=>(0,r.e)(l),[]);let M=(0,r.u)(),[I,T]=function({debounce:e,scroll:t,polyfill:n,offsetSize:r}={debounce:0,scroll:!1,offsetSize:!1}){var l,s,u;let c=n||("u"<typeof window?class{}:window.ResizeObserver);if(!c)throw Error("This browser does not support ResizeObserver out of the box. See: https://github.com/react-spring/react-use-measure/#resize-observer-polyfills");let[d,f]=(0,a.useState)({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),p=(0,a.useRef)({element:null,scrollContainers:null,resizeObserver:null,lastBounds:d,orientationHandler:null}),h=e?"number"==typeof e?e:e.scroll:null,m=e?"number"==typeof e?e:e.resize:null,A=(0,a.useRef)(!1);(0,a.useEffect)(()=>(A.current=!0,()=>void(A.current=!1)));let[g,B,v]=(0,a.useMemo)(()=>{let e=()=>{let e,t;if(!p.current.element)return;let{left:n,top:a,width:l,height:i,bottom:s,right:u,x:c,y:d}=p.current.element.getBoundingClientRect(),h={left:n,top:a,width:l,height:i,bottom:s,right:u,x:c,y:d};p.current.element instanceof HTMLElement&&r&&(h.height=p.current.element.offsetHeight,h.width=p.current.element.offsetWidth),Object.freeze(h),A.current&&(e=p.current.lastBounds,t=h,!o.every(n=>e[n]===t[n]))&&f(p.current.lastBounds=h)};return[e,m?i(e,m):e,h?i(e,h):e]},[f,r,h,m]);function C(){p.current.scrollContainers&&(p.current.scrollContainers.forEach(e=>e.removeEventListener("scroll",v,!0)),p.current.scrollContainers=null),p.current.resizeObserver&&(p.current.resizeObserver.disconnect(),p.current.resizeObserver=null),p.current.orientationHandler&&("orientation"in screen&&"removeEventListener"in screen.orientation?screen.orientation.removeEventListener("change",p.current.orientationHandler):"onorientationchange"in window&&window.removeEventListener("orientationchange",p.current.orientationHandler))}function b(){p.current.element&&(p.current.resizeObserver=new c(v),p.current.resizeObserver.observe(p.current.element),t&&p.current.scrollContainers&&p.current.scrollContainers.forEach(e=>e.addEventListener("scroll",v,{capture:!0,passive:!0})),p.current.orientationHandler=()=>{v()},"orientation"in screen&&"addEventListener"in screen.orientation?screen.orientation.addEventListener("change",p.current.orientationHandler):"onorientationchange"in window&&window.addEventListener("orientationchange",p.current.orientationHandler))}return l=v,s=!!t,(0,a.useEffect)(()=>{if(s)return window.addEventListener("scroll",l,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",l,!0)},[l,s]),u=B,(0,a.useEffect)(()=>(window.addEventListener("resize",u),()=>void window.removeEventListener("resize",u)),[u]),(0,a.useEffect)(()=>{C(),b()},[t,v,B]),(0,a.useEffect)(()=>C,[]),[e=>{e&&e!==p.current.element&&(C(),p.current.element=e,p.current.scrollContainers=function e(t){let n=[];if(!t||t===document.body)return n;let{overflow:r,overflowX:a,overflowY:l}=window.getComputedStyle(t);return[r,a,l].some(e=>"auto"===e||"scroll"===e)&&n.push(t),[...n,...e(t.parentElement)]}(e),b())},d,g]}({scroll:!0,debounce:{scroll:50,resize:0},...s}),D=a.useRef(null),H=a.useRef(null);a.useImperativeHandle(e,()=>D.current);let G=(0,r.a)(x),[P,k]=a.useState(!1),[L,N]=a.useState(!1);if(P)throw P;if(L)throw L;let O=a.useRef(null);(0,r.b)(()=>{let e=D.current;T.width>0&&T.height>0&&e&&(O.current||(O.current=(0,r.c)(e)),async function(){await O.current.configure({gl:d,scene:S,events:f,shadows:m,linear:A,flat:g,legacy:B,orthographic:v,frameloop:C,dpr:b,performance:y,raycaster:E,camera:w,size:T,onPointerMissed:(...e)=>null==G.current?void 0:G.current(...e),onCreated:e=>{null==e.events.connect||e.events.connect(p?(0,r.i)(p)?p.current:p:H.current),h&&e.setEvents({compute:(e,t)=>{let n=e[h+"X"],r=e[h+"Y"];t.pointer.set(n/t.size.width*2-1,-(2*(r/t.size.height))+1),t.raycaster.setFromCamera(t.pointer,t.camera)}}),null==R||R(e)}}),O.current.render((0,u.jsx)(M,{children:(0,u.jsx)(r.E,{set:N,children:(0,u.jsx)(a.Suspense,{fallback:(0,u.jsx)(r.B,{set:k}),children:null!=t?t:null})})}))}())}),a.useEffect(()=>{let e=D.current;if(e)return()=>(0,r.d)(e)},[]);let J=p?"none":"auto";return(0,u.jsx)("div",{ref:H,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",pointerEvents:J,...c},...F,children:(0,u.jsx)("div",{ref:I,style:{width:"100%",height:"100%"},children:(0,u.jsx)("canvas",{ref:D,style:{display:"block"},children:n})})})}function d(e){return(0,u.jsx)(s.Af,{children:(0,u.jsx)(c,{...e})})}n(1099)},2083(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("camera-off",[["path",{d:"M14.564 14.558a3 3 0 1 1-4.122-4.121",key:"1rnrzw"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M20 20H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 .819-.175",key:"1x3arw"}],["path",{d:"M9.695 4.024A2 2 0 0 1 10.004 4h3.993a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v7.344",key:"1i84u0"}]])},8993(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("chevrons-up-down",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]])},251(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]])},2828(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]])},7552(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]])},6103(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("package-open",[["path",{d:"M12 22v-9",key:"x3hkom"}],["path",{d:"M15.17 2.21a1.67 1.67 0 0 1 1.63 0L21 4.57a1.93 1.93 0 0 1 0 3.36L8.82 14.79a1.655 1.655 0 0 1-1.64 0L3 12.43a1.93 1.93 0 0 1 0-3.36z",key:"2ntwy6"}],["path",{d:"M20 13v3.87a2.06 2.06 0 0 1-1.11 1.83l-6 3.08a1.93 1.93 0 0 1-1.78 0l-6-3.08A2.06 2.06 0 0 1 4 16.87V13",key:"1pmm1c"}],["path",{d:"M21 12.43a1.93 1.93 0 0 0 0-3.36L8.83 2.2a1.64 1.64 0 0 0-1.63 0L3 4.57a1.93 1.93 0 0 0 0 3.36l12.18 6.86a1.636 1.636 0 0 0 1.63 0z",key:"12ttoo"}]])},112(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]])},4856(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("scan-line",[["path",{d:"M3 7V5a2 2 0 0 1 2-2h2",key:"aa7l1z"}],["path",{d:"M17 3h2a2 2 0 0 1 2 2v2",key:"4qcy5o"}],["path",{d:"M21 17v2a2 2 0 0 1-2 2h-2",key:"6vwrx8"}],["path",{d:"M7 21H5a2 2 0 0 1-2-2v-2",key:"ioqczr"}],["path",{d:"M7 12h10",key:"b7w52i"}]])},876(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]])},5615(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]])},8763(e,t,n){n.d(t,{A:()=>r});let r=(0,n(8112).A)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]])},5444(e,t,n){let r;n.d(t,{A:()=>d});var a,l,i=n(9081);let o=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)},s=(...e)=>e.filter((e,t,n)=>!!e&&""!==e.trim()&&n.indexOf(e)===t).join(" ").trim();var u={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let c=(0,i.forwardRef)(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:a="",children:l,iconNode:o,...c},d)=>(0,i.createElement)("svg",{ref:d,...u,width:t,height:t,stroke:e,strokeWidth:r?24*Number(n)/Number(t):n,className:s("lucide",a),...!l&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0})(c)&&{"aria-hidden":"true"},...c},[...o.map(([e,t])=>(0,i.createElement)(e,t)),...Array.isArray(l)?l:[l]])),d=(a="loader-circle",l=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],(r=(0,i.forwardRef)(({className:e,...t},n)=>(0,i.createElement)(c,{ref:n,iconNode:l,className:s(`lucide-${o(a).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${a}`,e),...t}))).displayName=o(a),r)},5682(e,t,n){var r=n(9081),a=n(4624),l="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},i=a.useSyncExternalStore,o=r.useRef,s=r.useEffect,u=r.useMemo,c=r.useDebugValue;t.useSyncExternalStoreWithSelector=function(e,t,n,r,a){var d=o(null);if(null===d.current){var f={hasValue:!1,value:null};d.current=f}else f=d.current;var p=i(e,(d=u(function(){function e(e){if(!s){if(s=!0,i=e,e=r(e),void 0!==a&&f.hasValue){var t=f.value;if(a(t,e))return o=t}return o=e}if(t=o,l(i,e))return t;var n=r(e);return void 0!==a&&a(t,n)?(i=e,t):(i=e,o=n)}var i,o,s=!1,u=void 0===n?null:n;return[function(){return e(t())},null===u?void 0:function(){return e(u())}]},[t,n,r,a]))[0],d[1]);return s(function(){f.hasValue=!0,f.value=p},[p]),c(p),p}},6858(e,t,n){e.exports=n(5682)},4656(e,t,n){n.d(t,{bL:()=>y,H4:()=>w,_V:()=>E});var r=n(9081),a=n(7463),l=n(2274),i=n(6026),o=n(4253),s=n(4624);function u(){return()=>{}}var c=n(8525),d="Avatar",[f,p]=(0,a.A)(d),[h,m]=f(d),A=r.forwardRef((e,t)=>{let{__scopeAvatar:n,...a}=e,[l,i]=r.useState("idle");return(0,c.jsx)(h,{scope:n,imageLoadingStatus:l,onImageLoadingStatusChange:i,children:(0,c.jsx)(o.sG.span,{...a,ref:t})})});A.displayName=d;var g="AvatarImage",B=r.forwardRef((e,t)=>{let{__scopeAvatar:n,src:a,onLoadingStatusChange:d=()=>{},...f}=e,p=m(g,n),h=function(e,{referrerPolicy:t,crossOrigin:n}){let a=(0,s.useSyncExternalStore)(u,()=>!0,()=>!1),l=r.useRef(null),o=a?(l.current||(l.current=new window.Image),l.current):null,[c,d]=r.useState(()=>b(o,e));return(0,i.N)(()=>{d(b(o,e))},[o,e]),(0,i.N)(()=>{let e=e=>()=>{d(e)};if(!o)return;let r=e("loaded"),a=e("error");return o.addEventListener("load",r),o.addEventListener("error",a),t&&(o.referrerPolicy=t),"string"==typeof n&&(o.crossOrigin=n),()=>{o.removeEventListener("load",r),o.removeEventListener("error",a)}},[o,n,t]),c}(a,f),A=(0,l.c)(e=>{d(e),p.onImageLoadingStatusChange(e)});return(0,i.N)(()=>{"idle"!==h&&A(h)},[h,A]),"loaded"===h?(0,c.jsx)(o.sG.img,{...f,ref:t,src:a}):null});B.displayName=g;var v="AvatarFallback",C=r.forwardRef((e,t)=>{let{__scopeAvatar:n,delayMs:a,...l}=e,i=m(v,n),[s,u]=r.useState(void 0===a);return r.useEffect(()=>{if(void 0!==a){let e=window.setTimeout(()=>u(!0),a);return()=>window.clearTimeout(e)}},[a]),s&&"loaded"!==i.imageLoadingStatus?(0,c.jsx)(o.sG.span,{...l,ref:t}):null});function b(e,t){return e?t?(e.src!==t&&(e.src=t),e.complete&&e.naturalWidth>0?"loaded":"loading"):"error":"idle"}C.displayName=v;var y=A,E=B,w=C},9748(e,t,n){n.d(t,{LM:()=>X,bL:()=>Q,OK:()=>Y,VM:()=>y,lr:()=>H});var r=n(9081),a=n(4253),l=n(7537),i=n(7463),o=n(3577),s=n(2274),u=n(5422),c=n(6026),d=n(6478),f=n(8525),p="ScrollArea",[h,m]=(0,i.A)(p),[A,g]=h(p),B=r.forwardRef((e,t)=>{let{__scopeScrollArea:n,type:l="hover",dir:i,scrollHideDelay:s=600,...c}=e,[d,p]=r.useState(null),[h,m]=r.useState(null),[g,B]=r.useState(null),[v,C]=r.useState(null),[b,y]=r.useState(null),[E,w]=r.useState(0),[S,x]=r.useState(0),[R,F]=r.useState(!1),[M,I]=r.useState(!1),T=(0,o.s)(t,e=>p(e)),D=(0,u.jH)(i);return(0,f.jsx)(A,{scope:n,type:l,dir:D,scrollHideDelay:s,scrollArea:d,viewport:h,onViewportChange:m,content:g,onContentChange:B,scrollbarX:v,onScrollbarXChange:C,scrollbarXEnabled:R,onScrollbarXEnabledChange:F,scrollbarY:b,onScrollbarYChange:y,scrollbarYEnabled:M,onScrollbarYEnabledChange:I,onCornerWidthChange:w,onCornerHeightChange:x,children:(0,f.jsx)(a.sG.div,{dir:D,...c,ref:T,style:{position:"relative","--radix-scroll-area-corner-width":E+"px","--radix-scroll-area-corner-height":S+"px",...e.style}})})});B.displayName=p;var v="ScrollAreaViewport",C=r.forwardRef((e,t)=>{let{__scopeScrollArea:n,children:l,nonce:i,...s}=e,u=g(v,n),c=r.useRef(null),d=(0,o.s)(t,c,u.onViewportChange);return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:i}),(0,f.jsx)(a.sG.div,{"data-radix-scroll-area-viewport":"",...s,ref:d,style:{overflowX:u.scrollbarXEnabled?"scroll":"hidden",overflowY:u.scrollbarYEnabled?"scroll":"hidden",...e.style},children:(0,f.jsx)("div",{ref:u.onContentChange,style:{minWidth:"100%",display:"table"},children:l})})]})});C.displayName=v;var b="ScrollAreaScrollbar",y=r.forwardRef((e,t)=>{let{forceMount:n,...a}=e,l=g(b,e.__scopeScrollArea),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:o}=l,s="horizontal"===e.orientation;return r.useEffect(()=>(s?i(!0):o(!0),()=>{s?i(!1):o(!1)}),[s,i,o]),"hover"===l.type?(0,f.jsx)(E,{...a,ref:t,forceMount:n}):"scroll"===l.type?(0,f.jsx)(w,{...a,ref:t,forceMount:n}):"auto"===l.type?(0,f.jsx)(S,{...a,ref:t,forceMount:n}):"always"===l.type?(0,f.jsx)(x,{...a,ref:t}):null});y.displayName=b;var E=r.forwardRef((e,t)=>{let{forceMount:n,...a}=e,i=g(b,e.__scopeScrollArea),[o,s]=r.useState(!1);return r.useEffect(()=>{let e=i.scrollArea,t=0;if(e){let n=()=>{window.clearTimeout(t),s(!0)},r=()=>{t=window.setTimeout(()=>s(!1),i.scrollHideDelay)};return e.addEventListener("pointerenter",n),e.addEventListener("pointerleave",r),()=>{window.clearTimeout(t),e.removeEventListener("pointerenter",n),e.removeEventListener("pointerleave",r)}}},[i.scrollArea,i.scrollHideDelay]),(0,f.jsx)(l.C,{present:n||o,children:(0,f.jsx)(S,{"data-state":o?"visible":"hidden",...a,ref:t})})}),w=r.forwardRef((e,t)=>{var n;let{forceMount:a,...i}=e,o=g(b,e.__scopeScrollArea),s="horizontal"===e.orientation,u=z(()=>p("SCROLL_END"),100),[c,p]=(n={hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}},r.useReducer((e,t)=>n[e][t]??e,"hidden"));return r.useEffect(()=>{if("idle"===c){let e=window.setTimeout(()=>p("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(e)}},[c,o.scrollHideDelay,p]),r.useEffect(()=>{let e=o.viewport,t=s?"scrollLeft":"scrollTop";if(e){let n=e[t],r=()=>{let r=e[t];n!==r&&(p("SCROLL"),u()),n=r};return e.addEventListener("scroll",r),()=>e.removeEventListener("scroll",r)}},[o.viewport,s,p,u]),(0,f.jsx)(l.C,{present:a||"hidden"!==c,children:(0,f.jsx)(x,{"data-state":"hidden"===c?"hidden":"visible",...i,ref:t,onPointerEnter:(0,d.mK)(e.onPointerEnter,()=>p("POINTER_ENTER")),onPointerLeave:(0,d.mK)(e.onPointerLeave,()=>p("POINTER_LEAVE"))})})}),S=r.forwardRef((e,t)=>{let n=g(b,e.__scopeScrollArea),{forceMount:a,...i}=e,[o,s]=r.useState(!1),u="horizontal"===e.orientation,c=z(()=>{if(n.viewport){let e=n.viewport.offsetWidth<n.viewport.scrollWidth,t=n.viewport.offsetHeight<n.viewport.scrollHeight;s(u?e:t)}},10);return K(n.viewport,c),K(n.content,c),(0,f.jsx)(l.C,{present:a||o,children:(0,f.jsx)(x,{"data-state":o?"visible":"hidden",...i,ref:t})})}),x=r.forwardRef((e,t)=>{let{orientation:n="vertical",...a}=e,l=g(b,e.__scopeScrollArea),i=r.useRef(null),o=r.useRef(0),[s,u]=r.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),c=O(s.viewport,s.content),d={...a,sizes:s,onSizesChange:u,hasThumb:!!(c>0&&c<1),onThumbChange:e=>i.current=e,onThumbPointerUp:()=>o.current=0,onThumbPointerDown:e=>o.current=e};function p(e,t){return function(e,t,n,r="ltr"){let a=J(n),l=t||a/2,i=n.scrollbar.paddingStart+l,o=n.scrollbar.size-n.scrollbar.paddingEnd-(a-l),s=n.content-n.viewport;return _([i,o],"ltr"===r?[0,s]:[-1*s,0])(e)}(e,o.current,s,t)}return"horizontal"===n?(0,f.jsx)(R,{...d,ref:t,onThumbPositionChange:()=>{if(l.viewport&&i.current){let e=U(l.viewport.scrollLeft,s,l.dir);i.current.style.transform=`translate3d(${e}px, 0, 0)`}},onWheelScroll:e=>{l.viewport&&(l.viewport.scrollLeft=e)},onDragScroll:e=>{l.viewport&&(l.viewport.scrollLeft=p(e,l.dir))}}):"vertical"===n?(0,f.jsx)(F,{...d,ref:t,onThumbPositionChange:()=>{if(l.viewport&&i.current){let e=U(l.viewport.scrollTop,s);i.current.style.transform=`translate3d(0, ${e}px, 0)`}},onWheelScroll:e=>{l.viewport&&(l.viewport.scrollTop=e)},onDragScroll:e=>{l.viewport&&(l.viewport.scrollTop=p(e))}}):null}),R=r.forwardRef((e,t)=>{let{sizes:n,onSizesChange:a,...l}=e,i=g(b,e.__scopeScrollArea),[s,u]=r.useState(),c=r.useRef(null),d=(0,o.s)(t,c,i.onScrollbarXChange);return r.useEffect(()=>{c.current&&u(getComputedStyle(c.current))},[c]),(0,f.jsx)(T,{"data-orientation":"horizontal",...l,ref:d,sizes:n,style:{bottom:0,left:"rtl"===i.dir?"var(--radix-scroll-area-corner-width)":0,right:"ltr"===i.dir?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":J(n)+"px",...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,n)=>{if(i.viewport){var r,a;let l=i.viewport.scrollLeft+t.deltaX;e.onWheelScroll(l),r=l,a=n,r>0&&r<a&&t.preventDefault()}},onResize:()=>{c.current&&i.viewport&&s&&a({content:i.viewport.scrollWidth,viewport:i.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:N(s.paddingLeft),paddingEnd:N(s.paddingRight)}})}})}),F=r.forwardRef((e,t)=>{let{sizes:n,onSizesChange:a,...l}=e,i=g(b,e.__scopeScrollArea),[s,u]=r.useState(),c=r.useRef(null),d=(0,o.s)(t,c,i.onScrollbarYChange);return r.useEffect(()=>{c.current&&u(getComputedStyle(c.current))},[c]),(0,f.jsx)(T,{"data-orientation":"vertical",...l,ref:d,sizes:n,style:{top:0,right:"ltr"===i.dir?0:void 0,left:"rtl"===i.dir?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":J(n)+"px",...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,n)=>{if(i.viewport){var r,a;let l=i.viewport.scrollTop+t.deltaY;e.onWheelScroll(l),r=l,a=n,r>0&&r<a&&t.preventDefault()}},onResize:()=>{c.current&&i.viewport&&s&&a({content:i.viewport.scrollHeight,viewport:i.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:N(s.paddingTop),paddingEnd:N(s.paddingBottom)}})}})}),[M,I]=h(b),T=r.forwardRef((e,t)=>{let{__scopeScrollArea:n,sizes:l,hasThumb:i,onThumbChange:u,onThumbPointerUp:c,onThumbPointerDown:p,onThumbPositionChange:h,onDragScroll:m,onWheelScroll:A,onResize:B,...v}=e,C=g(b,n),[y,E]=r.useState(null),w=(0,o.s)(t,e=>E(e)),S=r.useRef(null),x=r.useRef(""),R=C.viewport,F=l.content-l.viewport,I=(0,s.c)(A),T=(0,s.c)(h),D=z(B,10);function H(e){S.current&&m({x:e.clientX-S.current.left,y:e.clientY-S.current.top})}return r.useEffect(()=>{let e=e=>{let t=e.target;y?.contains(t)&&I(e,F)};return document.addEventListener("wheel",e,{passive:!1}),()=>document.removeEventListener("wheel",e,{passive:!1})},[R,y,F,I]),r.useEffect(T,[l,T]),K(y,D),K(C.content,D),(0,f.jsx)(M,{scope:n,scrollbar:y,hasThumb:i,onThumbChange:(0,s.c)(u),onThumbPointerUp:(0,s.c)(c),onThumbPositionChange:T,onThumbPointerDown:(0,s.c)(p),children:(0,f.jsx)(a.sG.div,{...v,ref:w,style:{position:"absolute",...v.style},onPointerDown:(0,d.mK)(e.onPointerDown,e=>{0===e.button&&(e.target.setPointerCapture(e.pointerId),S.current=y.getBoundingClientRect(),x.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",C.viewport&&(C.viewport.style.scrollBehavior="auto"),H(e))}),onPointerMove:(0,d.mK)(e.onPointerMove,H),onPointerUp:(0,d.mK)(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=x.current,C.viewport&&(C.viewport.style.scrollBehavior=""),S.current=null})})})}),D="ScrollAreaThumb",H=r.forwardRef((e,t)=>{let{forceMount:n,...r}=e,a=I(D,e.__scopeScrollArea);return(0,f.jsx)(l.C,{present:n||a.hasThumb,children:(0,f.jsx)(G,{ref:t,...r})})}),G=r.forwardRef((e,t)=>{let{__scopeScrollArea:n,style:l,...i}=e,s=g(D,n),u=I(D,n),{onThumbPositionChange:c}=u,p=(0,o.s)(t,e=>u.onThumbChange(e)),h=r.useRef(void 0),m=z(()=>{h.current&&(h.current(),h.current=void 0)},100);return r.useEffect(()=>{let e=s.viewport;if(e){let t=()=>{m(),h.current||(h.current=j(e,c),c())};return c(),e.addEventListener("scroll",t),()=>e.removeEventListener("scroll",t)}},[s.viewport,m,c]),(0,f.jsx)(a.sG.div,{"data-state":u.hasThumb?"visible":"hidden",...i,ref:p,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...l},onPointerDownCapture:(0,d.mK)(e.onPointerDownCapture,e=>{let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;u.onThumbPointerDown({x:n,y:r})}),onPointerUp:(0,d.mK)(e.onPointerUp,u.onThumbPointerUp)})});H.displayName=D;var P="ScrollAreaCorner",k=r.forwardRef((e,t)=>{let n=g(P,e.__scopeScrollArea),r=!!(n.scrollbarX&&n.scrollbarY);return"scroll"!==n.type&&r?(0,f.jsx)(L,{...e,ref:t}):null});k.displayName=P;var L=r.forwardRef((e,t)=>{let{__scopeScrollArea:n,...l}=e,i=g(P,n),[o,s]=r.useState(0),[u,c]=r.useState(0),d=!!(o&&u);return K(i.scrollbarX,()=>{let e=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(e),c(e)}),K(i.scrollbarY,()=>{let e=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(e),s(e)}),d?(0,f.jsx)(a.sG.div,{...l,ref:t,style:{width:o,height:u,position:"absolute",right:"ltr"===i.dir?0:void 0,left:"rtl"===i.dir?0:void 0,bottom:0,...e.style}}):null});function N(e){return e?parseInt(e,10):0}function O(e,t){let n=e/t;return isNaN(n)?0:n}function J(e){let t=O(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd;return Math.max((e.scrollbar.size-n)*t,18)}function U(e,t,n="ltr"){let r=J(t),a=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,l=t.scrollbar.size-a,i=t.content-t.viewport,o=function(e,[t,n]){return Math.min(n,Math.max(t,e))}(e,"ltr"===n?[0,i]:[-1*i,0]);return _([0,i],[0,l-r])(o)}function _(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}var j=(e,t=()=>{})=>{let n={left:e.scrollLeft,top:e.scrollTop},r=0;return!function a(){let l={left:e.scrollLeft,top:e.scrollTop},i=n.left!==l.left,o=n.top!==l.top;(i||o)&&t(),n=l,r=window.requestAnimationFrame(a)}(),()=>window.cancelAnimationFrame(r)};function z(e,t){let n=(0,s.c)(e),a=r.useRef(0);return r.useEffect(()=>()=>window.clearTimeout(a.current),[]),r.useCallback(()=>{window.clearTimeout(a.current),a.current=window.setTimeout(n,t)},[n,t])}function K(e,t){let n=(0,s.c)(t);(0,c.N)(()=>{let t=0;if(e){let r=new ResizeObserver(()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(n)});return r.observe(e),()=>{window.cancelAnimationFrame(t),r.unobserve(e)}}},[e,n])}var Q=B,X=C,Y=k},2966(e,t,n){n.d(t,{q:()=>o});var r=n(217),a=n(3985),l=class extends r.${constructor(e,t){super(e,t)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e){super.setOptions({...e,behavior:(0,a.PL)()})}getOptimisticResult(e){return e.behavior=(0,a.PL)(),super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"backward"}}})}createResult(e,t){let{state:n}=e,r=super.createResult(e,t),{isFetching:l,isRefetching:i,isError:o,isRefetchError:s}=r,u=n.fetchMeta?.fetchMore?.direction,c=o&&"forward"===u,d=l&&"forward"===u,f=o&&"backward"===u,p=l&&"backward"===u;return{...r,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:(0,a.rB)(t,n.data),hasPreviousPage:(0,a.RQ)(t,n.data),isFetchNextPageError:c,isFetchingNextPage:d,isFetchPreviousPageError:f,isFetchingPreviousPage:p,isRefetchError:s&&!c&&!f,isRefetching:i&&!d&&!p}}},i=n(1582);function o(e,t){return(0,i.t)(e,l,t)}},7984(e,t,n){n.d(t,{A:()=>S});var r=n(9081);function a(e){return"[object Object]"===Object.prototype.toString.call(e)||Array.isArray(e)}function l(e,t){let n=Object.keys(e),r=Object.keys(t);return n.length===r.length&&JSON.stringify(Object.keys(e.breakpoints||{}))===JSON.stringify(Object.keys(t.breakpoints||{}))&&n.every(n=>{let r=e[n],i=t[n];return"function"==typeof r?`${r}`==`${i}`:a(r)&&a(i)?l(r,i):r===i})}function i(e){return e.concat().sort((e,t)=>e.name>t.name?1:-1).map(e=>e.options)}function o(e){return"number"==typeof e}function s(e){return"string"==typeof e}function u(e){return"boolean"==typeof e}function c(e){return"[object Object]"===Object.prototype.toString.call(e)}function d(e){return Math.abs(e)}function f(e){return Math.sign(e)}function p(e){return g(e).map(Number)}function h(e){return e[m(e)]}function m(e){return Math.max(0,e.length-1)}function A(e,t=0){return Array.from(Array(e),(e,n)=>t+n)}function g(e){return Object.keys(e)}function B(e,t){return void 0!==t.MouseEvent&&e instanceof t.MouseEvent}function v(){let e=[],t={add:function(n,r,a,l={passive:!0}){let i;return"addEventListener"in n?(n.addEventListener(r,a,l),i=()=>n.removeEventListener(r,a,l)):(n.addListener(a),i=()=>n.removeListener(a)),e.push(i),t},clear:function(){e=e.filter(e=>e())}};return t}function C(e=0,t=0){let n=d(e-t);function r(n){return n<e||n>t}return{length:n,max:t,min:e,constrain:function(n){return r(n)?n<e?e:t:n},reachedAny:r,reachedMax:function(e){return e>t},reachedMin:function(t){return t<e},removeOffset:function(e){return n?e-n*Math.ceil((e-t)/n):e}}}function b(e){let t=e;function n(e){return o(e)?e:e.get()}return{get:function(){return t},set:function(e){t=n(e)},add:function(e){t+=n(e)},subtract:function(e){t-=n(e)}}}function y(e,t){let n="x"===e.scroll?function(e){return`translate3d(${e}px,0px,0px)`}:function(e){return`translate3d(0px,${e}px,0px)`},r=t.style,a=null,l=!1;return{clear:function(){!l&&(r.transform="",t.getAttribute("style")||t.removeAttribute("style"))},to:function(t){if(l)return;let i=Math.round(100*e.direction(t))/100;i!==a&&(r.transform=n(i),a=i)},toggleActive:function(e){l=!e}}}let E={align:"center",axis:"x",container:null,slides:null,containScroll:"trimSnaps",direction:"ltr",slidesToScroll:1,inViewThreshold:0,breakpoints:{},dragFree:!1,dragThreshold:10,loop:!1,skipSnaps:!1,duration:25,startIndex:0,active:!0,watchDrag:!0,watchResize:!0,watchSlides:!0,watchFocus:!0};function w(e,t,n){let r,a,l,i,S,x,R,F,M=e.ownerDocument,I=M.defaultView,T=function(e){function t(e,t){return function e(t,n){return[t,n].reduce((t,n)=>(g(n).forEach(r=>{let a=t[r],l=n[r],i=c(a)&&c(l);t[r]=i?e(a,l):l}),t),{})}(e,t||{})}return{mergeOptions:t,optionsAtMedia:function(n){let r=n.breakpoints||{},a=g(r).filter(t=>e.matchMedia(t).matches).map(e=>r[e]).reduce((e,n)=>t(e,n),{});return t(n,a)},optionsMediaQueries:function(t){return t.map(e=>g(e.breakpoints||{})).reduce((e,t)=>e.concat(t),[]).map(e.matchMedia)}}}(I),D=(F=[],{init:function(e,t){return(F=t.filter(({options:e})=>!1!==T.optionsAtMedia(e).active)).forEach(t=>t.init(e,T)),t.reduce((e,t)=>Object.assign(e,{[t.name]:t}),{})},destroy:function(){F=F.filter(e=>e.destroy())}}),H=v(),G=(a={},l={init:function(e){r=e},emit:function(e){return(a[e]||[]).forEach(t=>t(r,e)),l},off:function(e,t){return a[e]=(a[e]||[]).filter(e=>e!==t),l},on:function(e,t){return a[e]=(a[e]||[]).concat([t]),l},clear:function(){a={}}}),{mergeOptions:P,optionsAtMedia:k,optionsMediaQueries:L}=T,{on:N,off:O,emit:J}=G,U=!1,_=P(E,w.globalOptions),j=P(_),z=[];function K(t,n){U||(j=k(_=P(_,t)),z=n||z,function(){let{container:t,slides:n}=j;x=(s(t)?e.querySelector(t):t)||e.children[0];let r=s(n)?x.querySelectorAll(n):n;R=[].slice.call(r||x.children)}(),i=function t(n){let r=function(e,t,n,r,a,l,i){var c,E;let w,S,x,R,F,M,I,T,D,H,G,P,k,L,{align:N,axis:O,direction:J,startIndex:U,loop:_,duration:j,dragFree:z,dragThreshold:K,inViewThreshold:Q,slidesToScroll:X,skipSnaps:Y,containScroll:W,watchResize:V,watchSlides:Z,watchDrag:q,watchFocus:$}=l,ee={measure:function(e){let{offsetTop:t,offsetLeft:n,offsetWidth:r,offsetHeight:a}=e;return{top:t,right:n+r,bottom:t+a,left:n,width:r,height:a}}},et=ee.measure(t),en=n.map(ee.measure),er=(S="rtl"===J,R=(x="y"===O)||!S?1:-1,F=x?"top":S?"right":"left",M=x?"bottom":S?"left":"right",{scroll:x?"y":"x",cross:x?"x":"y",startEdge:F,endEdge:M,measureSize:function(e){let{height:t,width:n}=e;return x?t:n},direction:function(e){return e*R}}),ea=er.measureSize(et),el={measure:function(e){return e/100*ea}},ei=(c=N,E=ea,w={start:function(){return 0},center:function(e){return(E-e)/2},end:function(e){return E-e}},{measure:function(e,t){return s(c)?w[c](e):c(E,e,t)}}),eo=!_&&!!W,{slideSizes:es,slideSizesWithGaps:eu,startGap:ec,endGap:ed}=function(e,t,n,r,a,l){let{measureSize:i,startEdge:o,endEdge:s}=e,u=n[0]&&a,c=function(){if(!u)return 0;let e=n[0];return d(t[o]-e[o])}(),f=u?parseFloat(l.getComputedStyle(h(r)).getPropertyValue(`margin-${s}`)):0,p=n.map(i),A=n.map((e,t,n)=>{let r=t===m(n);return t?r?p[t]+f:n[t+1][o]-e[o]:p[t]+c}).map(d);return{slideSizes:p,slideSizesWithGaps:A,startGap:c,endGap:f}}(er,et,en,n,_||!!W,a),ef=function(e,t,n,r,a,l,i,s,u){let{startEdge:c,endEdge:f,direction:A}=e,g=o(n);return{groupSlides:function(e){return g?p(e).filter(e=>e%n==0).map(t=>e.slice(t,t+n)):e.length?p(e).reduce((n,o,u)=>{let p=h(n)||0,g=o===m(e),B=a[c]-l[p][c],v=a[c]-l[o][f],C=r||0!==p?0:A(i),b=d(v-(!r&&g?A(s):0)-(B+C));return u&&b>t+2&&n.push(o),g&&n.push(e.length),n},[]).map((t,n,r)=>{let a=Math.max(r[n-1]||0);return e.slice(a,t)}):[]}}}(er,ea,X,_,et,en,ec,ed,0),{snaps:ep,snapsAligned:eh}=function(e,t,n,r,a){let{startEdge:l,endEdge:i}=e,{groupSlides:o}=a,s=o(r).map(e=>h(e)[i]-e[0][l]).map(d).map(t.measure),u=r.map(e=>n[l]-e[l]).map(e=>-d(e)),c=o(u).map(e=>e[0]).map((e,t)=>e+s[t]);return{snaps:u,snapsAligned:c}}(er,ei,et,en,ef),em=-h(ep)+h(eu),{snapsContained:eA,scrollContainLimit:eg}=function(e,t,n,r,a){let l,i,o=C(-t+e,0),s=n.map((e,t)=>{let{min:r,max:a}=o,l=o.constrain(e),i=t===m(n);return t?i||function(e,t){return 1>=d(e-t)}(r,l)?r:function(e,t){return 1>=d(e-t)}(a,l)?a:l:a}).map(e=>parseFloat(e.toFixed(3))),u=(l=s[0],i=h(s),C(s.lastIndexOf(l),s.indexOf(i)+1));return{snapsContained:function(){if(t<=e+2)return[o.max];if("keepSnaps"===r)return s;let{min:n,max:a}=u;return s.slice(n,a)}(),scrollContainLimit:u}}(ea,em,eh,W,0),eB=eo?eA:eh,{limit:ev}=(I=eB[0],{limit:C(_?I-em:h(eB),I)}),eC=function e(t,n,r){let{constrain:a}=C(0,t),l=t+1,i=o(n);function o(e){return r?d((l+e)%l):a(e)}function s(){return e(t,i,r)}let u={get:function(){return i},set:function(e){return i=o(e),u},add:function(e){return s().set(i+e)},clone:s};return u}(m(eB),U,_),eb=eC.clone(),ey=p(n),eE=function(e,t,n,r){let a=v(),l=1e3/60,i=null,o=0,s=0;function u(e){if(!s)return;i||(i=e,n(),n());let a=e-i;for(i=e,o+=a;o>=l;)n(),o-=l;r(o/l),s&&(s=t.requestAnimationFrame(u))}function c(){t.cancelAnimationFrame(s),i=null,o=0,s=0}return{init:function(){a.add(e,"visibilitychange",()=>{e.hidden&&(i=null,o=0)})},destroy:function(){c(),a.clear()},start:function(){s||(s=t.requestAnimationFrame(u))},stop:c,update:n,render:r}}(r,a,()=>(({dragHandler:e,scrollBody:t,scrollBounds:n,options:{loop:r}})=>{r||n.constrain(e.pointerDown()),t.seek()})(eL),e=>(({scrollBody:e,translate:t,location:n,offsetLocation:r,previousLocation:a,scrollLooper:l,slideLooper:i,dragHandler:o,animation:s,eventHandler:u,scrollBounds:c,options:{loop:d}},f)=>{let p=e.settled(),h=!c.shouldConstrain(),m=d?p:p&&h,A=m&&!o.pointerDown();A&&s.stop();let g=n.get()*f+a.get()*(1-f);r.set(g),d&&(l.loop(e.direction()),i.loop()),t.to(r.get()),A&&u.emit("settle"),m||u.emit("scroll")})(eL,e)),ew=eB[eC.get()],eS=b(ew),ex=b(ew),eR=b(ew),eF=b(ew),eM=function(e,t,n,r,a,l){let i=0,o=0,s=a,u=.68,c=e.get(),p=0;function h(e){return s=e,A}function m(e){return u=e,A}let A={direction:function(){return o},duration:function(){return s},velocity:function(){return i},seek:function(){let t=r.get()-e.get(),a=0;return s?(n.set(e),i+=t/s,i*=u,c+=i,e.add(i),a=c-p):(i=0,n.set(r),e.set(r),a=t),o=f(a),p=c,A},settled:function(){return .001>d(r.get()-t.get())},useBaseFriction:function(){return m(.68)},useBaseDuration:function(){return h(a)},useFriction:m,useDuration:h};return A}(eS,eR,ex,eF,j,0),eI=function(e,t,n,r,a){let{reachedAny:l,removeOffset:i,constrain:o}=r;function s(e){return e.concat().sort((e,t)=>d(e)-d(t))[0]}function u(t,r){let a=[t,t+n,t-n];if(!e)return t;if(!r)return s(a);let l=a.filter(e=>f(e)===r);return l.length?s(l):h(a)-n}return{byDistance:function(n,r){let s=a.get()+n,{index:c,distance:f}=function(n){let r=e?i(n):o(n),{index:a}=t.map((e,t)=>({diff:u(e-r,0),index:t})).sort((e,t)=>d(e.diff)-d(t.diff))[0];return{index:a,distance:r}}(s),p=!e&&l(s);if(!r||p)return{index:c,distance:n};let h=n+u(t[c]-f,0);return{index:c,distance:h}},byIndex:function(e,n){let r=u(t[e]-a.get(),n);return{index:e,distance:r}},shortcut:u}}(_,eB,em,ev,eF),eT=function(e,t,n,r,a,l,i){function o(a){let o=a.distance,s=a.index!==t.get();l.add(o),o&&(r.duration()?e.start():(e.update(),e.render(1),e.update())),s&&(n.set(t.get()),t.set(a.index),i.emit("select"))}return{distance:function(e,t){o(a.byDistance(e,t))},index:function(e,n){let r=t.clone().set(e);o(a.byIndex(r.get(),n))}}}(eE,eC,eb,eM,eI,eF,i),eD=function(e){let{max:t,length:n}=e;return{get:function(e){return n?-((e-t)/n):0}}}(ev),eH=v(),eG=(D={},H=null,G=null,P=!1,{init:function(){T=new IntersectionObserver(e=>{P||(e.forEach(e=>{D[n.indexOf(e.target)]=e}),H=null,G=null,i.emit("slidesInView"))},{root:t.parentElement,threshold:Q}),n.forEach(e=>T.observe(e))},destroy:function(){T&&T.disconnect(),P=!0},get:function(e=!0){if(e&&H)return H;if(!e&&G)return G;let t=g(D).reduce((t,n)=>{let r=parseInt(n),{isIntersecting:a}=D[r];return(e&&a||!e&&!a)&&t.push(r),t},[]);return e&&(H=t),e||(G=t),t}}),{slideRegistry:eP}=function(e,t,n,r,a,l){let i,{groupSlides:o}=a,{min:s,max:u}=r;return{slideRegistry:(i=o(l),1===n.length?[l]:e&&"keepSnaps"!==t?i.slice(s,u).map((e,t,n)=>{let r=t===m(n);return t?r?A(m(l)-h(n)[0]+1,h(n)[0]):e:A(h(n[0])+1)}):i)}}(eo,W,eB,eg,ef,ey),ek=function(e,t,n,r,a,l,i,s){let c={passive:!0,capture:!0},d=0;function f(e){"Tab"===e.code&&(d=new Date().getTime())}return{init:function(p){s&&(l.add(document,"keydown",f,!1),t.forEach((t,f)=>{l.add(t,"focus",t=>{(u(s)||s(p,t))&&function(t){if(new Date().getTime()-d>10)return;i.emit("slideFocusStart"),e.scrollLeft=0;let l=n.findIndex(e=>e.includes(t));o(l)&&(a.useDuration(0),r.index(l,0),i.emit("slideFocus"))}(f)},c)}))}}}(e,n,eP,eT,eM,eH,i,$),eL={ownerDocument:r,ownerWindow:a,eventHandler:i,containerRect:et,slideRects:en,animation:eE,axis:er,dragHandler:function(e,t,n,r,a,l,i,o,s,c,p,h,m,A,g,b,y,E,w){let{cross:S,direction:x}=e,R=["INPUT","SELECT","TEXTAREA"],F={passive:!1},M=v(),I=v(),T=C(50,225).constrain(A.measure(20)),D={mouse:300,touch:400},H={mouse:500,touch:600},G=g?43:25,P=!1,k=0,L=0,N=!1,O=!1,J=!1,U=!1;function _(e){if(!B(e,r)&&e.touches.length>=2)return j(e);let t=l.readPoint(e),n=l.readPoint(e,S),i=d(t-k),s=d(n-L);if(!O&&!U&&(!e.cancelable||!(O=i>s)))return j(e);let u=l.pointerMove(e);i>b&&(J=!0),c.useFriction(.3).useDuration(.75),o.start(),a.add(x(u)),e.preventDefault()}function j(e){var t;let n,r,a=p.byDistance(0,!1).index!==h.get(),i=l.pointerUp(e)*(g?H:D)[U?"mouse":"touch"],o=(t=x(i),n=h.add(-1*f(t)),r=p.byDistance(t,!g).distance,g||d(t)<T?r:y&&a?.5*r:p.byIndex(n.get(),0).distance),u=function(e,t){var n,r;if(0===e||0===t||d(e)<=d(t))return 0;let a=(n=d(e),r=d(t),d(n-r));return d(a/e)}(i,o);O=!1,N=!1,I.clear(),c.useDuration(G-10*u).useFriction(.68+u/50),s.distance(o,!g),U=!1,m.emit("pointerUp")}function z(e){J&&(e.stopPropagation(),e.preventDefault(),J=!1)}return{init:function(e){w&&M.add(t,"dragstart",e=>e.preventDefault(),F).add(t,"touchmove",()=>void 0,F).add(t,"touchend",()=>void 0).add(t,"touchstart",o).add(t,"mousedown",o).add(t,"touchcancel",j).add(t,"contextmenu",j).add(t,"click",z,!0);function o(o){(u(w)||w(e,o))&&function(e){let o,s=B(e,r);if((U=s,J=g&&s&&!e.buttons&&P,P=d(a.get()-i.get())>=2,!s||0===e.button)&&(o=e.target.nodeName||"",!R.includes(o))){let r;N=!0,l.pointerDown(e),c.useFriction(0).useDuration(0),a.set(i),r=U?n:t,I.add(r,"touchmove",_,F).add(r,"touchend",j).add(r,"mousemove",_,F).add(r,"mouseup",j),k=l.readPoint(e),L=l.readPoint(e,S),m.emit("pointerDown")}}(o)}},destroy:function(){M.clear(),I.clear()},pointerDown:function(){return N}}}(er,e,r,a,eF,function(e,t){let n,r;function a(e){return e.timeStamp}function l(n,r){let a=r||e.scroll,l=`client${"x"===a?"X":"Y"}`;return(B(n,t)?n:n.touches[0])[l]}return{pointerDown:function(e){return n=e,r=e,l(e)},pointerMove:function(e){let t=l(e)-l(r),i=a(e)-a(n)>170;return r=e,i&&(n=e),t},pointerUp:function(e){if(!n||!r)return 0;let t=l(r)-l(n),i=a(e)-a(n),o=a(e)-a(r)>170,s=t/i;return i&&!o&&d(s)>.1?s:0},readPoint:l}}(er,a),eS,eE,eT,eM,eI,eC,i,el,z,K,Y,0,q),eventStore:eH,percentOfView:el,index:eC,indexPrevious:eb,limit:ev,location:eS,offsetLocation:eR,previousLocation:ex,options:l,resizeHandler:function(e,t,n,r,a,l,i){let o,s,c=[e].concat(r),f=[],p=!1;function h(e){return a.measureSize(i.measure(e))}return{init:function(a){l&&(s=h(e),f=r.map(h),o=new ResizeObserver(n=>{(u(l)||l(a,n))&&function(n){for(let l of n){if(p)return;let n=l.target===e,i=r.indexOf(l.target),o=n?s:f[i];if(d(h(n?e:r[i])-o)>=.5){a.reInit(),t.emit("resize");break}}}(n)}),n.requestAnimationFrame(()=>{c.forEach(e=>o.observe(e))}))},destroy:function(){p=!0,o&&o.disconnect()}}}(t,i,a,n,er,V,ee),scrollBody:eM,scrollBounds:function(e,t,n,r,a){let l=a.measure(10),i=a.measure(50),o=C(.1,.99),s=!1;function u(){return!s&&!!e.reachedAny(n.get())&&!!e.reachedAny(t.get())}return{shouldConstrain:u,constrain:function(a){if(!u())return;let s=e.reachedMin(t.get())?"min":"max",c=d(e[s]-t.get()),f=n.get()-t.get(),p=o.constrain(c/i);n.subtract(f*p),!a&&d(f)<l&&(n.set(e.constrain(n.get())),r.useDuration(25).useBaseFriction())},toggleActive:function(e){s=!e}}}(ev,eR,eF,eM,el),scrollLooper:function(e,t,n,r){let{reachedMin:a,reachedMax:l}=C(t.min+.1,t.max+.1);return{loop:function(t){if(!(1===t?l(n.get()):-1===t&&a(n.get())))return;let i=-1*t*e;r.forEach(e=>e.add(i))}}}(em,ev,eR,[eS,eR,ex,eF]),scrollProgress:eD,scrollSnapList:eB.map(eD.get),scrollSnaps:eB,scrollTarget:eI,scrollTo:eT,slideLooper:function(e,t,n,r,a,l,i,o,s){let u=p(a),c=p(a).reverse(),d=m(h(c,i[0]),n,!1).concat(m(h(u,t-i[0]-1),-n,!0));function f(e,t){return e.reduce((e,t)=>e-a[t],t)}function h(e,t){return e.reduce((e,n)=>f(e,t)>0?e.concat([n]):e,[])}function m(a,i,u){let c=l.map((e,n)=>({start:e-r[n]+.5+i,end:e+t-.5+i}));return a.map(t=>{let r=u?0:-n,a=u?n:0,l=c[t][u?"end":"start"];return{index:t,loopPoint:l,slideLocation:b(-1),translate:y(e,s[t]),target:()=>o.get()>l?r:a}})}return{canLoop:function(){return d.every(({index:e})=>.1>=f(u.filter(t=>t!==e),t))},clear:function(){d.forEach(e=>e.translate.clear())},loop:function(){d.forEach(e=>{let{target:t,translate:n,slideLocation:r}=e,a=t();a!==r.get()&&(n.to(a),r.set(a))})},loopPoints:d}}(er,ea,em,es,eu,ep,eB,eR,n),slideFocus:ek,slidesHandler:(L=!1,{init:function(e){Z&&(k=new MutationObserver(t=>{!L&&(u(Z)||Z(e,t))&&function(t){for(let n of t)if("childList"===n.type){e.reInit(),i.emit("slidesChanged");break}}(t)})).observe(t,{childList:!0})},destroy:function(){k&&k.disconnect(),L=!0}}),slidesInView:eG,slideIndexes:ey,slideRegistry:eP,slidesToScroll:ef,target:eF,translate:y(er,t)};return eL}(e,x,R,M,I,n,G);return n.loop&&!r.slideLooper.canLoop()?t(Object.assign({},n,{loop:!1})):r}(j),L([_,...z.map(({options:e})=>e)]).forEach(e=>H.add(e,"change",Q)),j.active&&(i.translate.to(i.location.get()),i.animation.init(),i.slidesInView.init(),i.slideFocus.init(V),i.eventHandler.init(V),i.resizeHandler.init(V),i.slidesHandler.init(V),i.options.loop&&i.slideLooper.loop(),x.offsetParent&&R.length&&i.dragHandler.init(V),S=D.init(V,z)))}function Q(e,t){let n=W();X(),K(P({startIndex:n},e),t),G.emit("reInit")}function X(){i.dragHandler.destroy(),i.eventStore.clear(),i.translate.clear(),i.slideLooper.clear(),i.resizeHandler.destroy(),i.slidesHandler.destroy(),i.slidesInView.destroy(),i.animation.destroy(),D.destroy(),H.clear()}function Y(e,t,n){j.active&&!U&&(i.scrollBody.useBaseFriction().useDuration(!0===t?0:j.duration),i.scrollTo.index(e,n||0))}function W(){return i.index.get()}let V={canScrollNext:function(){return i.index.add(1).get()!==W()},canScrollPrev:function(){return i.index.add(-1).get()!==W()},containerNode:function(){return x},internalEngine:function(){return i},destroy:function(){U||(U=!0,H.clear(),X(),G.emit("destroy"),G.clear())},off:O,on:N,emit:J,plugins:function(){return S},previousScrollSnap:function(){return i.indexPrevious.get()},reInit:Q,rootNode:function(){return e},scrollNext:function(e){Y(i.index.add(1).get(),e,-1)},scrollPrev:function(e){Y(i.index.add(-1).get(),e,1)},scrollProgress:function(){return i.scrollProgress.get(i.offsetLocation.get())},scrollSnapList:function(){return i.scrollSnapList},scrollTo:Y,selectedScrollSnap:W,slideNodes:function(){return R},slidesInView:function(){return i.slidesInView.get()},slidesNotInView:function(){return i.slidesInView.get(!1)}};return K(t,n),setTimeout(()=>G.emit("init"),0),V}function S(e={},t=[]){let n=(0,r.useRef)(e),a=(0,r.useRef)(t),[o,s]=(0,r.useState)(),[u,c]=(0,r.useState)(),d=(0,r.useCallback)(()=>{o&&o.reInit(n.current,a.current)},[o]);return(0,r.useEffect)(()=>{l(n.current,e)||(n.current=e,d())},[e,d]),(0,r.useEffect)(()=>{!function(e,t){if(e.length!==t.length)return!1;let n=i(e),r=i(t);return n.every((e,t)=>l(e,r[t]))}(a.current,t)&&(a.current=t,d())},[t,d]),(0,r.useEffect)(()=>{if("u">typeof window&&window.document&&window.document.createElement&&u){w.globalOptions=S.globalOptions;let e=w(u,n.current,a.current);return s(e),()=>e.destroy()}s(void 0)},[u,s]),[c,o]}w.globalOptions=void 0,S.globalOptions=void 0},7510(e,t,n){n.d(t,{Af:()=>u,Nz:()=>i,u5:()=>c,y3:()=>p});var r,a,l=n(9081);function i(e,t,n){if(!e)return;if(!0===n(e))return e;let r=t?e.return:e.child;for(;r;){let e=i(r,t,n);if(e)return e;r=t?null:r.sibling}}function o(e){try{return Object.defineProperties(e,{_currentRenderer:{get:()=>null,set(){}},_currentRenderer2:{get:()=>null,set(){}}})}catch(t){return e}}"u">typeof window&&((null==(r=window.document)?void 0:r.createElement)||(null==(a=window.navigator)?void 0:a.product)==="ReactNative")?l.useLayoutEffect:l.useEffect;let s=o(l.createContext(null));class u extends l.Component{render(){return l.createElement(s.Provider,{value:this._reactInternals},this.props.children)}}function c(){let e=l.useContext(s);if(null===e)throw Error("its-fine: useFiber must be called within a <FiberProvider />!");let t=l.useId();return l.useMemo(()=>{for(let n of[e,null==e?void 0:e.alternate]){if(!n)continue;let e=i(n,!1,e=>{let n=e.memoizedState;for(;n;){if(n.memoizedState===t)return!0;n=n.next}});if(e)return e}},[e,t])}let d=Symbol.for("react.context"),f=e=>null!==e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===d;function p(){let e=function(){let e=c(),[t]=l.useState(()=>new Map);t.clear();let n=e;for(;n;){let e=n.type;f(e)&&e!==s&&!t.has(e)&&t.set(e,l.use(o(e))),n=n.return}return t}();return l.useMemo(()=>Array.from(e.keys()).reduce((t,n)=>r=>l.createElement(t,null,l.createElement(n.Provider,{...r,value:e.get(n)})),e=>l.createElement(u,{...e})),[e])}},7807(e,t,n){n.d(t,{Y:()=>a});var r=n(308);class a extends r.BRH{constructor(e){super(e),this.type=1016}parse(e){let t,n,a,l=function(e,t){switch(e){case 1:throw Error("THREE.HDRLoader: Read Error: "+(t||""));case 2:throw Error("THREE.HDRLoader: Write Error: "+(t||""));case 3:throw Error("THREE.HDRLoader: Bad File Format: "+(t||""));default:throw Error("THREE.HDRLoader: Memory Error: "+(t||""))}},i=function(e,t,n){t=t||1024;let r=e.pos,a=-1,l=0,i="",o=String.fromCharCode.apply(null,new Uint16Array(e.subarray(r,r+128)));for(;0>(a=o.indexOf("\n"))&&l<t&&r<e.byteLength;)i+=o,l+=o.length,r+=128,o=String.fromCharCode.apply(null,new Uint16Array(e.subarray(r,r+128)));return -1<a&&(!1!==n&&(e.pos+=l+a+1),i+o.slice(0,a))},o=new Uint8Array(e);o.pos=0;let s=function(e){let t,n,r=/^\s*GAMMA\s*=\s*(\d+(\.\d+)?)\s*$/,a=/^\s*EXPOSURE\s*=\s*(\d+(\.\d+)?)\s*$/,o=/^\s*FORMAT=(\S+)\s*$/,s=/^\s*\-Y\s+(\d+)\s+\+X\s+(\d+)\s*$/,u={valid:0,string:"",comments:"",programtype:"RGBE",format:"",gamma:1,exposure:1,width:0,height:0};for(!(e.pos>=e.byteLength)&&(t=i(e))||l(1,"no header found"),(n=t.match(/^#\?(\S+)/))||l(3,"bad initial token"),u.valid|=1,u.programtype=n[1],u.string+=t+"\n";!1!==(t=i(e));){if(u.string+=t+"\n","#"===t.charAt(0)){u.comments+=t+"\n";continue}if((n=t.match(r))&&(u.gamma=parseFloat(n[1])),(n=t.match(a))&&(u.exposure=parseFloat(n[1])),(n=t.match(o))&&(u.valid|=2,u.format=n[1]),(n=t.match(s))&&(u.valid|=4,u.height=parseInt(n[1],10),u.width=parseInt(n[2],10)),2&u.valid&&4&u.valid)break}return 2&u.valid||l(3,"missing format specifier"),4&u.valid||l(3,"missing image size specifier"),u}(o),u=s.width,c=s.height,d=function(e,t,n){if(t<8||t>32767||2!==e[0]||2!==e[1]||128&e[2])return new Uint8Array(e);t!==(e[2]<<8|e[3])&&l(3,"wrong scanline width");let r=new Uint8Array(4*t*n);r.length||l(4,"unable to allocate buffer space");let a=0,i=0,o=4*t,s=new Uint8Array(4),u=new Uint8Array(o),c=n;for(;c>0&&i<e.byteLength;){i+4>e.byteLength&&l(1),s[0]=e[i++],s[1]=e[i++],s[2]=e[i++],s[3]=e[i++],(2!=s[0]||2!=s[1]||(s[2]<<8|s[3])!=t)&&l(3,"bad rgbe scanline format");let n=0,d;for(;n<o&&i<e.byteLength;){let t=(d=e[i++])>128;if(t&&(d-=128),(0===d||n+d>o)&&l(3,"bad scanline data"),t){let t=e[i++];for(let e=0;e<d;e++)u[n++]=t}else u.set(e.subarray(i,i+d),n),n+=d,i+=d}for(let e=0;e<t;e++){let n=0;r[a]=u[e+n],n+=t,r[a+1]=u[e+n],n+=t,r[a+2]=u[e+n],n+=t,r[a+3]=u[e+n],a+=4}c--}return r}(o.subarray(o.pos),u,c);switch(this.type){case 1015:let f=new Float32Array(4*(a=d.length/4));for(let e=0;e<a;e++)!function(e,t,n,r){let a=Math.pow(2,e[t+3]-128)/255;n[r+0]=e[t+0]*a,n[r+1]=e[t+1]*a,n[r+2]=e[t+2]*a,n[r+3]=1}(d,4*e,f,4*e);t=f,n=1015;break;case 1016:let p=new Uint16Array(4*(a=d.length/4));for(let e=0;e<a;e++)!function(e,t,n,a){let l=Math.pow(2,e[t+3]-128)/255;n[a+0]=r.GxU.toHalfFloat(Math.min(e[t+0]*l,65504)),n[a+1]=r.GxU.toHalfFloat(Math.min(e[t+1]*l,65504)),n[a+2]=r.GxU.toHalfFloat(Math.min(e[t+2]*l,65504)),n[a+3]=r.GxU.toHalfFloat(1)}(d,4*e,p,4*e);t=p,n=1016;break;default:throw Error("THREE.HDRLoader: Unsupported type: "+this.type)}return{width:u,height:c,data:t,header:s.string,gamma:s.gamma,exposure:s.exposure,type:n,colorSpace:r.Zr2,minFilter:1006,magFilter:1006,generateMipmaps:!1,flipY:!0}}setDataType(e){return this.type=e,this}}},295(e,t,n){let r;n.d(t,{_s:()=>L});var a=n(3285),l=n(9081);let i=l.createContext({drawerRef:{current:null},overlayRef:{current:null},onPress:()=>{},onRelease:()=>{},onDrag:()=>{},onNestedDrag:()=>{},onNestedOpenChange:()=>{},onNestedRelease:()=>{},openProp:void 0,dismissible:!1,isOpen:!1,isDragging:!1,keyboardIsOpen:{current:!1},snapPointsOffset:null,snapPoints:null,handleOnly:!1,modal:!1,shouldFade:!1,activeSnapPoint:null,onOpenChange:()=>{},setActiveSnapPoint:()=>{},closeDrawer:()=>{},direction:"bottom",shouldAnimate:{current:!0},shouldScaleBackground:!1,setBackgroundColorOnScale:!0,noBodyStyles:!1,container:null,autoFocus:!1}),o=()=>{let e=l.useContext(i);if(!e)throw Error("useDrawerContext must be used within a Drawer.Root");return e};function s(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}function u(){return c(/^iPhone/)||c(/^iPad/)||c(/^Mac/)&&navigator.maxTouchPoints>1}function c(e){return"u">typeof window&&null!=window.navigator?e.test(window.navigator.platform):void 0}!function(e){if(!e||"u"<typeof document)return;let t=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",t.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}("[data-vaul-drawer]{touch-action:none;will-change:transform;transition:transform .5s cubic-bezier(.32, .72, 0, 1);animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=open]{animation-name:slideFromBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=closed]{animation-name:slideToBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=open]{animation-name:slideFromTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=closed]{animation-name:slideToTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=open]{animation-name:slideFromLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=closed]{animation-name:slideToLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=open]{animation-name:slideFromRight}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=closed]{animation-name:slideToRight}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--initial-transform,100%),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--initial-transform,100%),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-overlay][data-vaul-snap-points=false]{animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=false][data-state=open]{animation-name:fadeIn}[data-vaul-overlay][data-state=closed]{animation-name:fadeOut}[data-vaul-animate=false]{animation:none!important}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:0;transition:opacity .5s cubic-bezier(.32, .72, 0, 1)}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:1}[data-vaul-drawer]:not([data-vaul-custom-container=true])::after{content:'';position:absolute;background:inherit;background-color:inherit}[data-vaul-drawer][data-vaul-drawer-direction=top]::after{top:initial;bottom:100%;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=bottom]::after{top:100%;bottom:initial;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=left]::after{left:initial;right:100%;top:0;bottom:0;width:200%}[data-vaul-drawer][data-vaul-drawer-direction=right]::after{left:100%;right:initial;top:0;bottom:0;width:200%}[data-vaul-overlay][data-vaul-snap-points=true]:not([data-vaul-snap-points-overlay=true]):not(\n[data-state=closed]\n){opacity:0}[data-vaul-overlay][data-vaul-snap-points-overlay=true]{opacity:1}[data-vaul-handle]{display:block;position:relative;opacity:.7;background:#e2e2e4;margin-left:auto;margin-right:auto;height:5px;width:32px;border-radius:1rem;touch-action:pan-y}[data-vaul-handle]:active,[data-vaul-handle]:hover{opacity:1}[data-vaul-handle-hitarea]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,2.75rem);height:max(100%,2.75rem);touch-action:inherit}@media (hover:hover) and (pointer:fine){[data-vaul-drawer]{user-select:none}}@media (pointer:fine){[data-vaul-handle-hitarea]:{width:100%;height:100%}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeOut{to{opacity:0}}@keyframes slideFromBottom{from{transform:translate3d(0,var(--initial-transform,100%),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToBottom{to{transform:translate3d(0,var(--initial-transform,100%),0)}}@keyframes slideFromTop{from{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToTop{to{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}}@keyframes slideFromLeft{from{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToLeft{to{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}}@keyframes slideFromRight{from{transform:translate3d(var(--initial-transform,100%),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToRight{to{transform:translate3d(var(--initial-transform,100%),0,0)}}");let d="u">typeof window?l.useLayoutEffect:l.useEffect;function f(...e){return(...t)=>{for(let n of e)"function"==typeof n&&n(...t)}}let p="u">typeof document&&window.visualViewport;function h(e){let t=window.getComputedStyle(e);return/(auto|scroll)/.test(t.overflow+t.overflowX+t.overflowY)}function m(e){for(h(e)&&(e=e.parentElement);e&&!h(e);)e=e.parentElement;return e||document.scrollingElement||document.documentElement}let A=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]),g=0;function B(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}function v(e){let t=document.scrollingElement||document.documentElement;for(;e&&e!==t;){let t=m(e);if(t!==document.documentElement&&t!==document.body&&t!==e){let n=t.getBoundingClientRect().top,r=e.getBoundingClientRect().top;e.getBoundingClientRect().bottom>t.getBoundingClientRect().bottom+24&&(t.scrollTop+=r-n)}e=t.parentElement}}function C(e){return e instanceof HTMLInputElement&&!A.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}function b(...e){return l.useCallback(function(...e){return t=>e.forEach(e=>{"function"==typeof e?e(t):null!=e&&(e.current=t)})}(...e),e)}let y=new WeakMap;function E(e,t,n=!1){if(!e||!(e instanceof HTMLElement))return;let r={};Object.entries(t).forEach(([t,n])=>{t.startsWith("--")?e.style.setProperty(t,n):(r[t]=e.style[t],e.style[t]=n)}),n||y.set(e,r)}let w=e=>{switch(e){case"top":case"bottom":return!0;case"left":case"right":return!1;default:return e}};function S(e,t){if(!e)return null;let n=window.getComputedStyle(e),r=n.transform||n.webkitTransform||n.mozTransform,a=r.match(/^matrix3d\((.+)\)$/);return a?parseFloat(a[1].split(", ")[w(t)?13:12]):(a=r.match(/^matrix\((.+)\)$/))?parseFloat(a[1].split(", ")[w(t)?5:4]):null}function x(e,t){if(!e)return()=>{};let n=e.style.cssText;return Object.assign(e.style,t),()=>{e.style.cssText=n}}let R=[.32,.72,0,1],F="vaul-dragging";function M(e){let t=l.useRef(e);return l.useEffect(()=>{t.current=e}),l.useMemo(()=>(...e)=>null==t.current?void 0:t.current.call(t,...e),[])}function I({prop:e,defaultProp:t,onChange:n=()=>{}}){let[r,a]=function({defaultProp:e,onChange:t}){let n=l.useState(e),[r]=n,a=l.useRef(r),i=M(t);return l.useEffect(()=>{a.current!==r&&(i(r),a.current=r)},[r,a,i]),n}({defaultProp:t,onChange:n}),i=void 0!==e,o=i?e:r,s=M(n);return[o,l.useCallback(t=>{if(i){let n="function"==typeof t?t(e):t;n!==e&&s(n)}else a(t)},[i,e,a,s])]}let T=()=>()=>{},D=null;function H({open:e,onOpenChange:t,children:n,onDrag:o,onRelease:c,snapPoints:h,shouldScaleBackground:A=!1,setBackgroundColorOnScale:b=!0,closeThreshold:x=.25,scrollLockTimeout:M=100,dismissible:T=!0,handleOnly:H=!1,fadeFromIndex:G=h&&h.length-1,activeSnapPoint:P,setActiveSnapPoint:k,fixed:L,modal:N=!0,onClose:O,nested:J,noBodyStyles:U=!1,direction:_="bottom",defaultOpen:j=!1,disablePreventScroll:z=!0,snapToSequentialPoint:K=!1,preventScrollRestoration:Q=!1,repositionInputs:X=!0,onAnimationEnd:Y,container:W,autoFocus:V=!1}){var Z,q;let[$=!1,ee]=I({defaultProp:j,prop:e,onChange:e=>{null==t||t(e),e||J||eT(),setTimeout(()=>{null==Y||Y(e)},500),e&&!N&&"u">typeof window&&window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"}),e||(document.body.style.pointerEvents="auto")}}),[et,en]=l.useState(!1),[er,ea]=l.useState(!1),[el,ei]=l.useState(!1),eo=l.useRef(null),es=l.useRef(null),eu=l.useRef(null),ec=l.useRef(null),ed=l.useRef(null),ef=l.useRef(!1),ep=l.useRef(null),eh=l.useRef(0),em=l.useRef(!1),eA=l.useRef(!j),eg=l.useRef(0),eB=l.useRef(null),ev=l.useRef((null==(Z=eB.current)?void 0:Z.getBoundingClientRect().height)||0),eC=l.useRef((null==(q=eB.current)?void 0:q.getBoundingClientRect().width)||0),eb=l.useRef(0),ey=l.useCallback(e=>{h&&e===eR.length-1&&(es.current=new Date)},[]),{activeSnapPoint:eE,activeSnapPointIndex:ew,setActiveSnapPoint:eS,onRelease:ex,snapPointsOffset:eR,onDrag:eF,shouldFade:eM,getPercentageDragged:eI}=function({activeSnapPointProp:e,setActiveSnapPointProp:t,snapPoints:n,drawerRef:r,overlayRef:a,fadeFromIndex:i,onSnapPointChange:o,direction:s="bottom",container:u,snapToSequentialPoint:c}){let[d,f]=I({prop:e,defaultProp:null==n?void 0:n[0],onChange:t}),[p,h]=l.useState("u">typeof window?{innerWidth:window.innerWidth,innerHeight:window.innerHeight}:void 0);l.useEffect(()=>{function e(){h({innerWidth:window.innerWidth,innerHeight:window.innerHeight})}return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);let m=l.useMemo(()=>d===(null==n?void 0:n[n.length-1])||null,[n,d]),A=l.useMemo(()=>{var e;return null!=(e=null==n?void 0:n.findIndex(e=>e===d))?e:null},[n,d]),g=n&&n.length>0&&(i||0===i)&&!Number.isNaN(i)&&n[i]===d||!n,B=l.useMemo(()=>{var e;let t=u?{width:u.getBoundingClientRect().width,height:u.getBoundingClientRect().height}:"u">typeof window?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0};return null!=(e=null==n?void 0:n.map(e=>{let n="string"==typeof e,r=0;if(n&&(r=parseInt(e,10)),w(s)){let a=n?r:p?e*t.height:0;return p?"bottom"===s?t.height-a:-t.height+a:a}let a=n?r:p?e*t.width:0;return p?"right"===s?t.width-a:-t.width+a:a}))?e:[]},[n,p,u]),v=l.useMemo(()=>null!==A?null==B?void 0:B[A]:null,[B,A]),C=l.useCallback(e=>{var t;let l=null!=(t=null==B?void 0:B.findIndex(t=>t===e))?t:null;o(l),E(r.current,{transition:`transform 0.5s cubic-bezier(${R.join(",")})`,transform:w(s)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`}),B&&l!==B.length-1&&void 0!==i&&l!==i&&l<i?E(a.current,{transition:`opacity 0.5s cubic-bezier(${R.join(",")})`,opacity:"0"}):E(a.current,{transition:`opacity 0.5s cubic-bezier(${R.join(",")})`,opacity:"1"}),f(null==n?void 0:n[Math.max(l,0)])},[r.current,n,B,i,a,f]);return l.useEffect(()=>{if(d||e){var t;let r=null!=(t=null==n?void 0:n.findIndex(t=>t===e||t===d))?t:-1;B&&-1!==r&&"number"==typeof B[r]&&C(B[r])}},[d,e,n,B,C]),{isLastSnapPoint:m,activeSnapPoint:d,shouldFade:g,getPercentageDragged:function(e,t){if(!n||"number"!=typeof A||!B||void 0===i)return null;let r=A===i-1;if(A>=i&&t)return 0;if(r&&!t)return 1;if(!g&&!r)return null;let a=r?A+1:A-1,l=e/Math.abs(r?B[a]-B[a-1]:B[a+1]-B[a]);return r?1-l:l},setActiveSnapPoint:f,activeSnapPointIndex:A,onRelease:function({draggedDistance:e,closeDrawer:t,velocity:r,dismissible:l}){if(void 0===i)return;let o="bottom"===s||"right"===s?(null!=v?v:0)-e:(null!=v?v:0)+e,u=A===i-1,d=0===A,f=e>0;if(u&&E(a.current,{transition:`opacity 0.5s cubic-bezier(${R.join(",")})`}),!c&&r>2&&!f)return void(l?t():C(B[0]));if(!c&&r>2&&f&&B&&n)return void C(B[n.length-1]);let p=null==B?void 0:B.reduce((e,t)=>"number"!=typeof e||"number"!=typeof t?e:Math.abs(t-o)<Math.abs(e-o)?t:e),h=w(s)?window.innerHeight:window.innerWidth;if(r>.4&&Math.abs(e)<.4*h){let e=f?1:-1;return e>0&&m&&n?void C(B[n.length-1]):void(d&&e<0&&l&&t(),null===A||C(B[A+e]))}C(p)},onDrag:function({draggedDistance:e}){if(null===v)return;let t="bottom"===s||"right"===s?v-e:v+e;("bottom"===s||"right"===s)&&t<B[B.length-1]||("top"===s||"left"===s)&&t>B[B.length-1]||E(r.current,{transform:w(s)?`translate3d(0, ${t}px, 0)`:`translate3d(${t}px, 0, 0)`})},snapPointsOffset:B}}({snapPoints:h,activeSnapPointProp:P,setActiveSnapPointProp:k,drawerRef:eB,fadeFromIndex:G,overlayRef:eo,onSnapPointChange:ey,direction:_,container:W,snapToSequentialPoint:K});!function(e={}){let{isDisabled:t}=e;d(()=>{if(!t){var e,n,a;let t,l,i,o,s,c,d;return 1==++g&&u()&&(i=0,o=window.pageXOffset,s=window.pageYOffset,c=f((e=document.documentElement,n="paddingRight",a=`${window.innerWidth-document.documentElement.clientWidth}px`,t=e.style[n],e.style[n]=a,()=>{e.style[n]=t})),window.scrollTo(0,0),d=f(B(document,"touchstart",e=>{((l=m(e.target))!==document.documentElement||l!==document.body)&&(i=e.changedTouches[0].pageY)},{passive:!1,capture:!0}),B(document,"touchmove",e=>{if(!l||l===document.documentElement||l===document.body)return void e.preventDefault();let t=e.changedTouches[0].pageY,n=l.scrollTop,r=l.scrollHeight-l.clientHeight;0!==r&&((n<=0&&t>i||n>=r&&t<i)&&e.preventDefault(),i=t)},{passive:!1,capture:!0}),B(document,"touchend",e=>{let t=e.target;C(t)&&t!==document.activeElement&&(e.preventDefault(),t.style.transform="translateY(-2000px)",t.focus(),requestAnimationFrame(()=>{t.style.transform=""}))},{passive:!1,capture:!0}),B(document,"focus",e=>{let t=e.target;C(t)&&(t.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{t.style.transform="",p&&(p.height<window.innerHeight?requestAnimationFrame(()=>{v(t)}):p.addEventListener("resize",()=>v(t),{once:!0}))}))},!0),B(window,"scroll",()=>{window.scrollTo(0,0)})),r=()=>{c(),d(),window.scrollTo(o,s)}),()=>{0==--g&&(null==r||r())}}},[t])}({isDisabled:!$||er||!N||el||!et||!X||!z});let{restorePositionSetting:eT}=function({isOpen:e,modal:t,nested:n,hasBeenOpened:r,preventScrollRestoration:a,noBodyStyles:i}){let[o,u]=l.useState(()=>"u">typeof window?window.location.href:""),c=l.useRef(0),d=l.useCallback(()=>{if(s()&&null===D&&e&&!i){D={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,height:document.body.style.height,right:"unset"};let{scrollX:e,innerHeight:t}=window;document.body.style.setProperty("position","fixed","important"),Object.assign(document.body.style,{top:`${-c.current}px`,left:`${-e}px`,right:"0px",height:"auto"}),window.setTimeout(()=>window.requestAnimationFrame(()=>{let e=t-window.innerHeight;e&&c.current>=t&&(document.body.style.top=`${-(c.current+e)}px`)}),300)}},[e]),f=l.useCallback(()=>{if(s()&&null!==D&&!i){let e=-parseInt(document.body.style.top,10),t=-parseInt(document.body.style.left,10);Object.assign(document.body.style,D),window.requestAnimationFrame(()=>{a&&o!==window.location.href?u(window.location.href):window.scrollTo(t,e)}),D=null}},[o]);return l.useEffect(()=>{function e(){c.current=window.scrollY}return e(),window.addEventListener("scroll",e),()=>{window.removeEventListener("scroll",e)}},[]),l.useEffect(()=>{if(t)return()=>{"u"<typeof document||document.querySelector("[data-vaul-drawer]")||f()}},[t,f]),l.useEffect(()=>{!n&&r&&(e?(window.matchMedia("(display-mode: standalone)").matches||d(),t||window.setTimeout(()=>{f()},500)):f())},[e,r,o,t,n,d,f]),{restorePositionSetting:f}}({isOpen:$,modal:N,nested:null!=J&&J,hasBeenOpened:et,preventScrollRestoration:Q,noBodyStyles:U});function eD(){return(window.innerWidth-26)/window.innerWidth}function eH(e,t){var n;let r=e,a=null==(n=window.getSelection())?void 0:n.toString(),l=eB.current?S(eB.current,_):null,i=new Date;if("SELECT"===r.tagName||r.hasAttribute("data-vaul-no-drag")||r.closest("[data-vaul-no-drag]"))return!1;if("right"===_||"left"===_)return!0;if(es.current&&i.getTime()-es.current.getTime()<500)return!1;if(null!==l&&("bottom"===_?l>0:l<0))return!0;if(a&&a.length>0)return!1;if(ed.current&&i.getTime()-ed.current.getTime()<M&&0===l||t)return ed.current=i,!1;for(;r;){if(r.scrollHeight>r.clientHeight){if(0!==r.scrollTop)return ed.current=new Date,!1;if("dialog"===r.getAttribute("role"))break}r=r.parentNode}return!0}function eG(e){er&&eB.current&&(eB.current.classList.remove(F),ef.current=!1,ea(!1),ec.current=new Date),null==O||O(),e||ee(!1),setTimeout(()=>{h&&eS(h[0])},500)}function eP(){if(!eB.current)return;let e=document.querySelector("[data-vaul-drawer-wrapper]"),t=S(eB.current,_);E(eB.current,{transform:"translate3d(0, 0, 0)",transition:`transform 0.5s cubic-bezier(${R.join(",")})`}),E(eo.current,{transition:`opacity 0.5s cubic-bezier(${R.join(",")})`,opacity:"1"}),A&&t&&t>0&&$&&E(e,{borderRadius:"8px",overflow:"hidden",...w(_)?{transform:`scale(${eD()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`,transformOrigin:"top"}:{transform:`scale(${eD()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`,transformOrigin:"left"},transitionProperty:"transform, border-radius",transitionDuration:"0.5s",transitionTimingFunction:`cubic-bezier(${R.join(",")})`},!0)}return l.useEffect(()=>{window.requestAnimationFrame(()=>{eA.current=!0})},[]),l.useEffect(()=>{var e;function t(){if(eB.current&&X&&(C(document.activeElement)||em.current)){var e;let t=(null==(e=window.visualViewport)?void 0:e.height)||0,n=window.innerHeight,r=n-t,a=eB.current.getBoundingClientRect().height||0;eb.current||(eb.current=a);let l=eB.current.getBoundingClientRect().top;if(Math.abs(eg.current-r)>60&&(em.current=!em.current),h&&h.length>0&&eR&&ew&&(r+=eR[ew]||0),eg.current=r,a>t||em.current){let e=eB.current.getBoundingClientRect().height,i=e;e>t&&(i=t-(a>.8*n?l:26)),L?eB.current.style.height=`${e-Math.max(r,0)}px`:eB.current.style.height=`${Math.max(i,t-l)}px`}else{let e;e=navigator.userAgent,"u">typeof window&&(/Firefox/.test(e)&&/Mobile/.test(e)||/FxiOS/.test(e))||(eB.current.style.height=`${eb.current}px`)}h&&h.length>0&&!em.current?eB.current.style.bottom="0px":eB.current.style.bottom=`${Math.max(r,0)}px`}}return null==(e=window.visualViewport)||e.addEventListener("resize",t),()=>{var e;return null==(e=window.visualViewport)?void 0:e.removeEventListener("resize",t)}},[ew,h,eR]),l.useEffect(()=>($&&(E(document.documentElement,{scrollBehavior:"auto"}),es.current=new Date),()=>{!function(e,t){if(!e||!(e instanceof HTMLElement))return;let n=y.get(e);n&&(e.style[t]=n[t])}(document.documentElement,"scrollBehavior")}),[$]),l.useEffect(()=>{N||window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"})},[N]),l.createElement(a.bL,{defaultOpen:j,onOpenChange:e=>{(T||e)&&(e?en(!0):eG(!0),ee(e))},open:$},l.createElement(i.Provider,{value:{activeSnapPoint:eE,snapPoints:h,setActiveSnapPoint:eS,drawerRef:eB,overlayRef:eo,onOpenChange:t,onPress:function(e){var t,n;!T&&!h||(!eB.current||eB.current.contains(e.target))&&(ev.current=(null==(t=eB.current)?void 0:t.getBoundingClientRect().height)||0,eC.current=(null==(n=eB.current)?void 0:n.getBoundingClientRect().width)||0,ea(!0),eu.current=new Date,u()&&window.addEventListener("touchend",()=>ef.current=!1,{once:!0}),e.target.setPointerCapture(e.pointerId),eh.current=w(_)?e.pageY:e.pageX)},onRelease:function(e){var t,n;if(!er||!eB.current)return;eB.current.classList.remove(F),ef.current=!1,ea(!1),ec.current=new Date;let r=S(eB.current,_);if(!e||!eH(e.target,!1)||!r||Number.isNaN(r)||null===eu.current)return;let a=ec.current.getTime()-eu.current.getTime(),l=eh.current-(w(_)?e.pageY:e.pageX),i=Math.abs(l)/a;if(i>.05&&(ei(!0),setTimeout(()=>{ei(!1)},200)),h){ex({draggedDistance:l*("bottom"===_||"right"===_?1:-1),closeDrawer:eG,velocity:i,dismissible:T}),null==c||c(e,!0);return}if("bottom"===_||"right"===_?l>0:l<0){eP(),null==c||c(e,!0);return}if(i>.4){eG(),null==c||c(e,!1);return}let o=Math.min(null!=(t=eB.current.getBoundingClientRect().height)?t:0,window.innerHeight),s=Math.min(null!=(n=eB.current.getBoundingClientRect().width)?n:0,window.innerWidth);if(Math.abs(r)>=("left"===_||"right"===_?s:o)*x){eG(),null==c||c(e,!1);return}null==c||c(e,!0),eP()},onDrag:function(e){if(eB.current&&er){let t="bottom"===_||"right"===_?1:-1,n=(eh.current-(w(_)?e.pageY:e.pageX))*t,r=n>0,a=h&&!T&&!r;if(a&&0===ew)return;let l=Math.abs(n),i=document.querySelector("[data-vaul-drawer-wrapper]"),s=l/("bottom"===_||"top"===_?ev.current:eC.current),u=eI(l,r);if(null!==u&&(s=u),a&&s>=1||!ef.current&&!eH(e.target,r))return;if(eB.current.classList.add(F),ef.current=!0,E(eB.current,{transition:"none"}),E(eo.current,{transition:"none"}),h&&eF({draggedDistance:n}),r&&!h){let e=Math.min(-(8*(Math.log(n+1)-2)*1),0)*t;E(eB.current,{transform:w(_)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`});return}let c=1-s;if((eM||G&&ew===G-1)&&(null==o||o(e,s),E(eo.current,{opacity:`${c}`,transition:"none"},!0)),i&&eo.current&&A){let e=Math.min(eD()+s*(1-eD()),1),t=8-8*s,n=Math.max(0,14-14*s);E(i,{borderRadius:`${t}px`,transform:w(_)?`scale(${e}) translate3d(0, ${n}px, 0)`:`scale(${e}) translate3d(${n}px, 0, 0)`,transition:"none"},!0)}if(!h){let e=l*t;E(eB.current,{transform:w(_)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`})}}},dismissible:T,shouldAnimate:eA,handleOnly:H,isOpen:$,isDragging:er,shouldFade:eM,closeDrawer:eG,onNestedDrag:function(e,t){if(t<0)return;let n=(window.innerWidth-16)/window.innerWidth,r=n+t*(1-n),a=-16+16*t;E(eB.current,{transform:w(_)?`scale(${r}) translate3d(0, ${a}px, 0)`:`scale(${r}) translate3d(${a}px, 0, 0)`,transition:"none"})},onNestedOpenChange:function(e){let t=e?(window.innerWidth-16)/window.innerWidth:1,n=e?-16:0;ep.current&&window.clearTimeout(ep.current),E(eB.current,{transition:`transform 0.5s cubic-bezier(${R.join(",")})`,transform:w(_)?`scale(${t}) translate3d(0, ${n}px, 0)`:`scale(${t}) translate3d(${n}px, 0, 0)`}),!e&&eB.current&&(ep.current=setTimeout(()=>{let e=S(eB.current,_);E(eB.current,{transition:"none",transform:w(_)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`})},500))},onNestedRelease:function(e,t){let n=w(_)?window.innerHeight:window.innerWidth,r=t?(n-16)/n:1,a=t?-16:0;t&&E(eB.current,{transition:`transform 0.5s cubic-bezier(${R.join(",")})`,transform:w(_)?`scale(${r}) translate3d(0, ${a}px, 0)`:`scale(${r}) translate3d(${a}px, 0, 0)`})},keyboardIsOpen:em,modal:N,snapPointsOffset:eR,activeSnapPointIndex:ew,direction:_,shouldScaleBackground:A,setBackgroundColorOnScale:b,noBodyStyles:U,container:W,autoFocus:V}},n))}let G=l.forwardRef(function({...e},t){let{overlayRef:n,snapPoints:r,onRelease:i,shouldFade:s,isOpen:u,modal:c,shouldAnimate:d}=o(),f=b(t,n),p=r&&r.length>0;if(!c)return null;let h=l.useCallback(e=>i(e),[i]);return l.createElement(a.hJ,{onMouseUp:h,ref:f,"data-vaul-overlay":"","data-vaul-snap-points":u&&p?"true":"false","data-vaul-snap-points-overlay":u&&s?"true":"false","data-vaul-animate":(null==d?void 0:d.current)?"true":"false",...e})});G.displayName="Drawer.Overlay";let P=l.forwardRef(function({onPointerDownOutside:e,style:t,onOpenAutoFocus:n,...r},i){let{drawerRef:s,onPress:u,onRelease:c,onDrag:d,keyboardIsOpen:f,snapPointsOffset:p,activeSnapPointIndex:h,modal:m,isOpen:A,direction:g,snapPoints:B,container:v,handleOnly:C,shouldAnimate:y,autoFocus:E}=o(),[S,F]=l.useState(!1),M=b(i,s),I=l.useRef(null),D=l.useRef(null),H=l.useRef(!1),G=B&&B.length>0;function P(e){I.current=null,H.current=!1,c(e)}return!function(){let{direction:e,isOpen:t,shouldScaleBackground:n,setBackgroundColorOnScale:r,noBodyStyles:a}=o(),i=l.useRef(null),s=(0,l.useMemo)(()=>document.body.style.backgroundColor,[]);function u(){return(window.innerWidth-26)/window.innerWidth}l.useEffect(()=>{if(t&&n){i.current&&clearTimeout(i.current);let t=document.querySelector("[data-vaul-drawer-wrapper]")||document.querySelector("[vaul-drawer-wrapper]");if(!t)return;!function(...e){}(r&&!a?x(document.body,{background:"black"}):T,x(t,{transformOrigin:w(e)?"top":"left",transitionProperty:"transform, border-radius",transitionDuration:"0.5s",transitionTimingFunction:`cubic-bezier(${R.join(",")})`}));let n=x(t,{borderRadius:"8px",overflow:"hidden",...w(e)?{transform:`scale(${u()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`}:{transform:`scale(${u()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`}});return()=>{n(),i.current=window.setTimeout(()=>{s?document.body.style.background=s:document.body.style.removeProperty("background")},500)}}},[t,n,s])}(),l.useEffect(()=>{G&&window.requestAnimationFrame(()=>{F(!0)})},[]),l.createElement(a.UC,{"data-vaul-drawer-direction":g,"data-vaul-drawer":"","data-vaul-delayed-snap-points":S?"true":"false","data-vaul-snap-points":A&&G?"true":"false","data-vaul-custom-container":v?"true":"false","data-vaul-animate":(null==y?void 0:y.current)?"true":"false",...r,ref:M,style:p&&p.length>0?{"--snap-point-height":`${p[null!=h?h:0]}px`,...t}:t,onPointerDown:e=>{C||(null==r.onPointerDown||r.onPointerDown.call(r,e),I.current={x:e.pageX,y:e.pageY},u(e))},onOpenAutoFocus:e=>{null==n||n(e),E||e.preventDefault()},onPointerDownOutside:t=>{(null==e||e(t),!m||t.defaultPrevented)?t.preventDefault():f.current&&(f.current=!1)},onFocusOutside:e=>{if(!m)return void e.preventDefault()},onPointerMove:e=>{if(D.current=e,C||(null==r.onPointerMove||r.onPointerMove.call(r,e),!I.current))return;let t=e.pageY-I.current.y,n=e.pageX-I.current.x,a="touch"===e.pointerType?10:2;((e,t,n=0)=>{if(H.current)return!0;let r=Math.abs(e.y),a=Math.abs(e.x),l=a>r,i=["bottom","right"].includes(t)?1:-1;if("left"===t||"right"===t){if(!(e.x*i<0)&&a>=0&&a<=n)return l}else if(!(e.y*i<0)&&r>=0&&r<=n)return!l;return H.current=!0,!0})({x:n,y:t},g,a)?d(e):(Math.abs(n)>a||Math.abs(t)>a)&&(I.current=null)},onPointerUp:e=>{null==r.onPointerUp||r.onPointerUp.call(r,e),I.current=null,H.current=!1,c(e)},onPointerOut:e=>{null==r.onPointerOut||r.onPointerOut.call(r,e),P(D.current)},onContextMenu:e=>{null==r.onContextMenu||r.onContextMenu.call(r,e),D.current&&P(D.current)}})});P.displayName="Drawer.Content";let k=l.forwardRef(function({preventCycle:e=!1,children:t,...n},r){let{closeDrawer:a,isDragging:i,snapPoints:s,activeSnapPoint:u,setActiveSnapPoint:c,dismissible:d,handleOnly:f,isOpen:p,onPress:h,onDrag:m}=o(),A=l.useRef(null),g=l.useRef(!1);function B(){A.current&&window.clearTimeout(A.current),g.current=!1}return l.createElement("div",{onClick:function(){g.current?B():window.setTimeout(()=>{!function(){if(i||e||g.current)return B();if(B(),!s||0===s.length){d||a();return}if(u===s[s.length-1]&&d)return a();let t=s.findIndex(e=>e===u);-1===t||c(s[t+1])}()},120)},onPointerCancel:B,onPointerDown:e=>{f&&h(e),A.current=window.setTimeout(()=>{g.current=!0},250)},onPointerMove:e=>{f&&m(e)},ref:r,"data-vaul-drawer-visible":p?"true":"false","data-vaul-handle":"","aria-hidden":"true",...n},l.createElement("span",{"data-vaul-handle-hitarea":"","aria-hidden":"true"},t))});k.displayName="Drawer.Handle";let L={Root:H,NestedRoot:function({onDrag:e,onOpenChange:t,open:n,...r}){let{onNestedDrag:a,onNestedOpenChange:i,onNestedRelease:s}=o();if(!a)throw Error("Drawer.NestedRoot must be placed in another drawer");return l.createElement(H,{nested:!0,open:n,onClose:()=>{i(!1)},onDrag:(t,n)=>{a(t,n),null==e||e(t,n)},onOpenChange:e=>{e&&i(e),null==t||t(e)},onRelease:s,...r})},Content:P,Overlay:G,Trigger:a.l9,Portal:function(e){let t=o(),{container:n=t.container,...r}=e;return l.createElement(a.ZL,{container:n,...r})},Handle:k,Close:a.bm,Title:a.hE,Description:a.VY}},4138(e,t,n){n.d(t,{y:()=>a});let r=e=>{let t,n=new Set,r=(e,r)=>{let a="function"==typeof e?e(t):e;if(!Object.is(a,t)){let e=t;t=(null!=r?r:"object"!=typeof a||null===a)?a:Object.assign({},t,a),n.forEach(n=>n(t,e))}},a=()=>t,l={setState:r,getState:a,getInitialState:()=>i,subscribe:e=>(n.add(e),()=>n.delete(e))},i=t=e(r,a,l);return l},a=e=>e?r(e):r}}]);