{"version":3,"file":"shared-lib.PLca9JXV.mjs","names":["React.useState","React.useRef","direction","React.useMemo","BlurGradient","React.useContext","React.useMemo","React.Fragment","React.useRef","React.useId","className","t","e","i","s","r","h","n","a","l","o","u","g","d","c","p","f","m","E","x","_","b","M","A","T","w","F","R","y","v","S","C","N","r","g","b","a","i","cx","x","y","Texture","FramerRenderTarget","useRef","Renderer","Camera","Program","Mesh","Plane","OglRenderTarget","f","p","o","t","e","i","s","o","n","r","l","h","a","c","u","d","p","m","v","g","w","S","useRef","i","e"],"sources":["https:/framerusercontent.com/modules/rofp3mS0LNY15cjhHzia/38VAsjA9XQxFqtnMmScT/BlurGradient_Prod.js","https:/framerusercontent.com/modules/4oBQPbXjULP3v9npfQmj/WZW1v7LEWvCliNpGC8Ix/ItSBDLNPs.js","https:/cdn.jsdelivr.net/gh/framer-university/components/npm-bundles/ascii-background.js","https:/framerusercontent.com/modules/s3gip9eMV1kca4GMupg6/mRejWDFxPOaVL77ZiGLs/ASCII_background_Prod.js","https:/ga.jspm.io/npm:lenis@1.1.2/dist/lenis.mjs","https:/framerusercontent.com/modules/Yppqt3Cs3Y8TZqvASnXl/PGrowqBrgWCViHduGfsA/SmoothScroll_Prod.js","https:/framerusercontent.com/modules/mlgegATkVjPDpGSOiMGf/7NnP7KVWJ5kSqEZnGvoW/JdCNSj4A9.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import*as React from\"react\";import{motion}from\"framer-motion\";import{addPropertyControls,ControlType}from\"framer\";function useSmoothValue(value,transition){const[smoothValue,setSmoothValue]=React.useState(value);const prevValue=React.useRef(value);React.useEffect(()=>{let animationFrame;const startTime=Date.now();const duration=transition.duration;const animate=()=>{const now=Date.now();const elapsed=(now-startTime)/1e3;const progress=Math.min(elapsed/duration,1);setSmoothValue(prevValue.current+(value-prevValue.current)*progress);if(progress<1){animationFrame=requestAnimationFrame(animate);}else{prevValue.current=value;}};animate();return()=>cancelAnimationFrame(animationFrame);},[value,transition]);return smoothValue;}/**\n * @framerDisableUnlink\n *\n * @framerIntrinsicWidth 240\n * @framerIntrinsicHeight 240\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */function BlurGradient({blur,borderRadius,direction,transition}){const smoothBlur=useSmoothValue(blur,transition);const getGradientDirection=direction=>{switch(direction){case\"toBottom\":return\"to bottom\";case\"toTop\":return\"to top\";case\"toLeft\":return\"to left\";case\"toRight\":return\"to right\";default:return\"to bottom\";}};const blurSteps=React.useMemo(()=>[{blur:`${smoothBlur/2/2/2/2/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 12.5%, rgba(0, 0, 0, 1) 25%, rgba(0, 0, 0, 0) 37.5%`},{blur:`${smoothBlur/2/2/2/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 12.5%, rgba(0, 0, 0, 1) 25%, rgba(0, 0, 0, 1) 37.5%, rgba(0, 0, 0, 0) 50%`},{blur:`${smoothBlur/2/2/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 1) 37.5%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 62.5%`},{blur:`${smoothBlur/2/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 37.5%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 1) 62.5%, rgba(0, 0, 0, 0) 75%`},{blur:`${smoothBlur/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 1) 62.5%, rgba(0, 0, 0, 1) 75%, rgba(0, 0, 0, 0) 87.5%`},{blur:`${smoothBlur/2/2}px`,gradient:`rgba(0, 0, 0, 0) 62.5%, rgba(0, 0, 0, 1) 75%, rgba(0, 0, 0, 1) 87.5%, rgba(0, 0, 0, 0) 100%`},{blur:`${smoothBlur/2}px`,gradient:`rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 1) 87.5%, rgba(0, 0, 0, 1) 100%`},{blur:`${smoothBlur}px`,gradient:`rgba(0, 0, 0, 0) 87.5%, rgba(0, 0, 0, 1) 100%`}],[smoothBlur]);return /*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,overflow:\"hidden\"},children:blurSteps.map((step,index)=>/*#__PURE__*/_jsx(motion.div,{style:{position:\"absolute\",inset:0,zIndex:index+1,backdropFilter:`blur(${step.blur})`,WebkitBackdropFilter:`blur(${step.blur})`,maskImage:`linear-gradient(${getGradientDirection(direction)}, ${step.gradient})`,WebkitMaskImage:`linear-gradient(${getGradientDirection(direction)}, ${step.gradient})`,borderRadius:borderRadius,pointerEvents:\"none\"},transition:transition},index))});}BlurGradient.defaultProps={blur:10,borderRadius:\"0px\",direction:\"toBottom\",transition:{duration:.3}};addPropertyControls(BlurGradient,{blur:{title:\"Blur\",type:ControlType.Number,defaultValue:10,min:0,max:100,step:1,description:\"Large blur values (10<) can impact performance.\"},borderRadius:{title:\"Radius\",type:ControlType.BorderRadius,defaultValue:\"0px\",description:\"Blur Gradient component's parent frame can't have border radius (it will break the component). If you need corner radius, apply it directly to the Blur Gradient component here.\"},direction:{title:\"Direction\",type:ControlType.SegmentedEnum,options:[\"toBottom\",\"toTop\",\"toLeft\",\"toRight\"],optionTitles:[\"↓\",\"↑\",\"←\",\"→\"],defaultValue:\"toBottom\"},transition:{type:ControlType.Transition,defaultValue:{duration:.3},title:\"Transition\",description:\"Control how the blur animates when used on hover states or any othe interaction.\\n\\nMore components at [Framer University](https://frameruni.link/cc).\"}});BlurGradient.displayName=\"Blur Gradient\";export default BlurGradient;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"BlurGradient\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"240\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerDisableUnlink\":\"*\",\"framerIntrinsicWidth\":\"240\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BlurGradient_Prod.map","// Generated by Framer (2923eb5)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import BlurGradient from\"https://framerusercontent.com/modules/rofp3mS0LNY15cjhHzia/38VAsjA9XQxFqtnMmScT/BlurGradient_Prod.js\";const BlurGradientFonts=getFonts(BlurGradient);const cycleOrder=[\"w_tz8fwwc\",\"uajRqFhbR\"];const serializationHash=\"framer-wGH2T\";const variantClassNames={uajRqFhbR:\"framer-v-1xv6n1c\",w_tz8fwwc:\"framer-v-1rlkv3a\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={Hide:\"uajRqFhbR\",Show:\"w_tz8fwwc\"};const getProps=({height,id,width,...props})=>{var _humanReadableVariantMap_props_variant,_ref;return{...props,variant:(_ref=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref!==void 0?_ref:\"w_tz8fwwc\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"w_tz8fwwc\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const isDisplayed=()=>{if(baseVariant===\"uajRqFhbR\")return false;return true;};const defaultLayoutId=React.useId();const sharedStyleClassNames=[];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-1rlkv3a\",className,classNames),\"data-framer-name\":\"Show\",layoutDependency:layoutDependency,layoutId:\"w_tz8fwwc\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{...style},...addPropertyOverrides({uajRqFhbR:{\"data-framer-name\":\"Hide\"}},baseVariant,gestureVariant),children:isDisplayed()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1ftggts-container\",\"data-framer-name\":\"Blur Gradient (Bottom)\",layoutDependency:layoutDependency,layoutId:\"HmCgjRsx4-container\",name:\"Blur Gradient (Bottom)\",children:/*#__PURE__*/_jsx(BlurGradient,{blur:32,borderRadius:\"0px\",direction:\"toBottom\",height:\"100%\",id:\"HmCgjRsx4\",layoutId:\"HmCgjRsx4\",name:\"Blur Gradient (Bottom)\",style:{height:\"100%\",width:\"100%\"},transition:{delay:0,duration:.3,ease:[.44,0,.56,1],type:\"tween\"},width:\"100%\"})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-wGH2T.framer-1pa1l2h, .framer-wGH2T .framer-1pa1l2h { display: block; }\",\".framer-wGH2T.framer-1rlkv3a { height: 72px; overflow: hidden; position: relative; width: 780px; }\",\".framer-wGH2T .framer-1ftggts-container { bottom: 0px; flex: none; height: 72px; left: 0px; pointer-events: none; position: absolute; right: 0px; z-index: 1; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 72\n * @framerIntrinsicWidth 780\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"uajRqFhbR\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerItSBDLNPs=withCSS(Component,css,\"framer-wGH2T\");export default FramerItSBDLNPs;FramerItSBDLNPs.displayName=\"Misc/Blur Gradient\";FramerItSBDLNPs.defaultProps={height:72,width:780};addPropertyControls(FramerItSBDLNPs,{variant:{options:[\"w_tz8fwwc\",\"uajRqFhbR\"],optionTitles:[\"Show\",\"Hide\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerItSBDLNPs,[{explicitInter:true,fonts:[]},...BlurGradientFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerItSBDLNPs\",\"slots\":[],\"annotations\":{\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicHeight\":\"72\",\"framerIntrinsicWidth\":\"780\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"uajRqFhbR\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ItSBDLNPs.map","function t(t){let e=t[0],i=t[1],s=t[2];return Math.sqrt(e*e+i*i+s*s)}function e(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function i(t,e,i){return t[0]=e[0]+i[0],t[1]=e[1]+i[1],t[2]=e[2]+i[2],t}function s(t,e,i){return t[0]=e[0]-i[0],t[1]=e[1]-i[1],t[2]=e[2]-i[2],t}function r(t,e,i){return t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i,t}function h(t){let e=t[0],i=t[1],s=t[2];return e*e+i*i+s*s}function n(t,e){let i=e[0],s=e[1],r=e[2],h=i*i+s*s+r*r;return h>0&&(h=1/Math.sqrt(h)),t[0]=e[0]*h,t[1]=e[1]*h,t[2]=e[2]*h,t}function a(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function l(t,e,i){let s=e[0],r=e[1],h=e[2],n=i[0],a=i[1],l=i[2];return t[0]=r*l-h*a,t[1]=h*n-s*l,t[2]=s*a-r*n,t}const o=function(){const t=[0,0,0],i=[0,0,0];return function(s,r){e(t,s),e(i,r),n(t,t),n(i,i);let h=a(t,i);return h>1?0:h<-1?Math.PI:Math.acos(h)}}();class u extends Array{constructor(t=0,e=t,i=t){return super(t,e,i),this}get x(){return this[0]}get y(){return this[1]}get z(){return this[2]}set x(t){this[0]=t}set y(t){this[1]=t}set z(t){this[2]=t}set(t,e=t,i=t){return t.length?this.copy(t):(function(t,e,i,s){t[0]=e,t[1]=i,t[2]=s}(this,t,e,i),this)}copy(t){return e(this,t),this}add(t,e){return e?i(this,t,e):i(this,this,t),this}sub(t,e){return e?s(this,t,e):s(this,this,t),this}multiply(t){var e,i,s;return t.length?(i=this,s=t,(e=this)[0]=i[0]*s[0],e[1]=i[1]*s[1],e[2]=i[2]*s[2]):r(this,this,t),this}divide(t){var e,i,s;return t.length?(i=this,s=t,(e=this)[0]=i[0]/s[0],e[1]=i[1]/s[1],e[2]=i[2]/s[2]):r(this,this,1/t),this}inverse(t=this){var e,i;return i=t,(e=this)[0]=1/i[0],e[1]=1/i[1],e[2]=1/i[2],this}len(){return t(this)}distance(e){return e?function(t,e){let i=e[0]-t[0],s=e[1]-t[1],r=e[2]-t[2];return Math.sqrt(i*i+s*s+r*r)}(this,e):t(this)}squaredLen(){return h(this)}squaredDistance(t){return t?function(t,e){let i=e[0]-t[0],s=e[1]-t[1],r=e[2]-t[2];return i*i+s*s+r*r}(this,t):h(this)}negate(t=this){var e,i;return i=t,(e=this)[0]=-i[0],e[1]=-i[1],e[2]=-i[2],this}cross(t,e){return e?l(this,t,e):l(this,this,t),this}scale(t){return r(this,this,t),this}normalize(){return n(this,this),this}dot(t){return a(this,t)}equals(t){return i=t,(e=this)[0]===i[0]&&e[1]===i[1]&&e[2]===i[2];var e,i}applyMatrix3(t){return function(t,e,i){let s=e[0],r=e[1],h=e[2];t[0]=s*i[0]+r*i[3]+h*i[6],t[1]=s*i[1]+r*i[4]+h*i[7],t[2]=s*i[2]+r*i[5]+h*i[8]}(this,this,t),this}applyMatrix4(t){return function(t,e,i){let s=e[0],r=e[1],h=e[2],n=i[3]*s+i[7]*r+i[11]*h+i[15];n=n||1,t[0]=(i[0]*s+i[4]*r+i[8]*h+i[12])/n,t[1]=(i[1]*s+i[5]*r+i[9]*h+i[13])/n,t[2]=(i[2]*s+i[6]*r+i[10]*h+i[14])/n}(this,this,t),this}scaleRotateMatrix4(t){return function(t,e,i){let s=e[0],r=e[1],h=e[2],n=i[3]*s+i[7]*r+i[11]*h+i[15];n=n||1,t[0]=(i[0]*s+i[4]*r+i[8]*h)/n,t[1]=(i[1]*s+i[5]*r+i[9]*h)/n,t[2]=(i[2]*s+i[6]*r+i[10]*h)/n}(this,this,t),this}applyQuaternion(t){return function(t,e,i){let s=e[0],r=e[1],h=e[2],n=i[0],a=i[1],l=i[2],o=a*h-l*r,u=l*s-n*h,g=n*r-a*s,d=a*g-l*u,c=l*o-n*g,p=n*u-a*o,f=2*i[3];o*=f,u*=f,g*=f,d*=2,c*=2,p*=2,t[0]=s+o+d,t[1]=r+u+c,t[2]=h+g+p}(this,this,t),this}angle(t){return o(this,t)}lerp(t,e){return function(t,e,i,s){let r=e[0],h=e[1],n=e[2];t[0]=r+s*(i[0]-r),t[1]=h+s*(i[1]-h),t[2]=n+s*(i[2]-n)}(this,this,t,e),this}smoothLerp(t,e,i){return function(t,e,i,s,r){const h=Math.exp(-s*r);let n=e[0],a=e[1],l=e[2];t[0]=i[0]+(n-i[0])*h,t[1]=i[1]+(a-i[1])*h,t[2]=i[2]+(l-i[2])*h}(this,this,t,e,i),this}clone(){return new u(this[0],this[1],this[2])}fromArray(t,e=0){return this[0]=t[e],this[1]=t[e+1],this[2]=t[e+2],this}toArray(t=[],e=0){return t[e]=this[0],t[e+1]=this[1],t[e+2]=this[2],t}transformDirection(t){const e=this[0],i=this[1],s=this[2];return this[0]=t[0]*e+t[4]*i+t[8]*s,this[1]=t[1]*e+t[5]*i+t[9]*s,this[2]=t[2]*e+t[6]*i+t[10]*s,this.normalize()}}const g=new u;let d=1,c=1,p=!1;class f{constructor(t,e={}){t.canvas||console.error(\"gl not passed as first argument to Geometry\"),this.gl=t,this.attributes=e,this.id=d++,this.VAOs={},this.drawRange={start:0,count:0},this.instancedCount=0,this.gl.renderer.bindVertexArray(null),this.gl.renderer.currentGeometry=null,this.glState=this.gl.renderer.state;for(let t in e)this.addAttribute(t,e[t])}addAttribute(t,e){if(this.attributes[t]=e,e.id=c++,e.size=e.size||1,e.type=e.type||(e.data.constructor===Float32Array?this.gl.FLOAT:e.data.constructor===Uint16Array?this.gl.UNSIGNED_SHORT:this.gl.UNSIGNED_INT),e.target=\"index\"===t?this.gl.ELEMENT_ARRAY_BUFFER:this.gl.ARRAY_BUFFER,e.normalized=e.normalized||!1,e.stride=e.stride||0,e.offset=e.offset||0,e.count=e.count||(e.stride?e.data.byteLength/e.stride:e.data.length/e.size),e.divisor=e.instanced||0,e.needsUpdate=!1,e.usage=e.usage||this.gl.STATIC_DRAW,e.buffer||this.updateAttribute(e),e.divisor){if(this.isInstanced=!0,this.instancedCount&&this.instancedCount!==e.count*e.divisor)return console.warn(\"geometry has multiple instanced buffers of different length\"),this.instancedCount=Math.min(this.instancedCount,e.count*e.divisor);this.instancedCount=e.count*e.divisor}else\"index\"===t?this.drawRange.count=e.count:this.attributes.index||(this.drawRange.count=Math.max(this.drawRange.count,e.count))}updateAttribute(t){const e=!t.buffer;e&&(t.buffer=this.gl.createBuffer()),this.glState.boundBuffer!==t.buffer&&(this.gl.bindBuffer(t.target,t.buffer),this.glState.boundBuffer=t.buffer),e?this.gl.bufferData(t.target,t.data,t.usage):this.gl.bufferSubData(t.target,0,t.data),t.needsUpdate=!1}setIndex(t){this.addAttribute(\"index\",t)}setDrawRange(t,e){this.drawRange.start=t,this.drawRange.count=e}setInstancedCount(t){this.instancedCount=t}createVAO(t){this.VAOs[t.attributeOrder]=this.gl.renderer.createVertexArray(),this.gl.renderer.bindVertexArray(this.VAOs[t.attributeOrder]),this.bindAttributes(t)}bindAttributes(t){t.attributeLocations.forEach((t,{name:e,type:i})=>{if(!this.attributes[e])return void console.warn(`active attribute ${e} not being supplied`);const s=this.attributes[e];this.gl.bindBuffer(s.target,s.buffer),this.glState.boundBuffer=s.buffer;let r=1;35674===i&&(r=2),35675===i&&(r=3),35676===i&&(r=4);const h=s.size/r,n=1===r?0:r*r*4,a=1===r?0:4*r;for(let e=0;e<r;e++)this.gl.vertexAttribPointer(t+e,h,s.type,s.normalized,s.stride+n,s.offset+e*a),this.gl.enableVertexAttribArray(t+e),this.gl.renderer.vertexAttribDivisor(t+e,s.divisor)}),this.attributes.index&&this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,this.attributes.index.buffer)}draw({program:t,mode:e=this.gl.TRIANGLES}){this.gl.renderer.currentGeometry!==`${this.id}_${t.attributeOrder}`&&(this.VAOs[t.attributeOrder]||this.createVAO(t),this.gl.renderer.bindVertexArray(this.VAOs[t.attributeOrder]),this.gl.renderer.currentGeometry=`${this.id}_${t.attributeOrder}`),t.attributeLocations.forEach((t,{name:e})=>{const i=this.attributes[e];i.needsUpdate&&this.updateAttribute(i)});let i=2;this.attributes.index?.type===this.gl.UNSIGNED_INT&&(i=4),this.isInstanced?this.attributes.index?this.gl.renderer.drawElementsInstanced(e,this.drawRange.count,this.attributes.index.type,this.attributes.index.offset+this.drawRange.start*i,this.instancedCount):this.gl.renderer.drawArraysInstanced(e,this.drawRange.start,this.drawRange.count,this.instancedCount):this.attributes.index?this.gl.drawElements(e,this.drawRange.count,this.attributes.index.type,this.attributes.index.offset+this.drawRange.start*i):this.gl.drawArrays(e,this.drawRange.start,this.drawRange.count)}getPosition(){const t=this.attributes.position;return t.data?t:p?void 0:(console.warn(\"No position buffer data found to compute bounds\"),p=!0)}computeBoundingBox(t){t||(t=this.getPosition());const e=t.data,i=t.size;this.bounds||(this.bounds={min:new u,max:new u,center:new u,scale:new u,radius:1/0});const s=this.bounds.min,r=this.bounds.max,h=this.bounds.center,n=this.bounds.scale;s.set(1/0),r.set(-1/0);for(let t=0,h=e.length;t<h;t+=i){const i=e[t],h=e[t+1],n=e[t+2];s.x=Math.min(i,s.x),s.y=Math.min(h,s.y),s.z=Math.min(n,s.z),r.x=Math.max(i,r.x),r.y=Math.max(h,r.y),r.z=Math.max(n,r.z)}n.sub(r,s),h.add(s,r).divide(2)}computeBoundingSphere(t){t||(t=this.getPosition());const e=t.data,i=t.size;this.bounds||this.computeBoundingBox(t);let s=0;for(let t=0,r=e.length;t<r;t+=i)g.fromArray(e,t),s=Math.max(s,this.bounds.center.squaredDistance(g));this.bounds.radius=Math.sqrt(s)}remove(){for(let t in this.VAOs)this.gl.renderer.deleteVertexArray(this.VAOs[t]),delete this.VAOs[t];for(let t in this.attributes)this.gl.deleteBuffer(this.attributes[t].buffer),delete this.attributes[t]}}let m=1;const E={};class x{constructor(t,{vertex:e,fragment:i,uniforms:s={},transparent:r=!1,cullFace:h=t.BACK,frontFace:n=t.CCW,depthTest:a=!0,depthWrite:l=!0,depthFunc:o=t.LEQUAL}={}){t.canvas||console.error(\"gl not passed as first argument to Program\"),this.gl=t,this.uniforms=s,this.id=m++,e||console.warn(\"vertex shader not supplied\"),i||console.warn(\"fragment shader not supplied\"),this.transparent=r,this.cullFace=h,this.frontFace=n,this.depthTest=a,this.depthWrite=l,this.depthFunc=o,this.blendFunc={},this.blendEquation={},this.stencilFunc={},this.stencilOp={},this.transparent&&!this.blendFunc.src&&(this.gl.renderer.premultipliedAlpha?this.setBlendFunc(this.gl.ONE,this.gl.ONE_MINUS_SRC_ALPHA):this.setBlendFunc(this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA)),this.vertexShader=t.createShader(t.VERTEX_SHADER),this.fragmentShader=t.createShader(t.FRAGMENT_SHADER),this.program=t.createProgram(),t.attachShader(this.program,this.vertexShader),t.attachShader(this.program,this.fragmentShader),this.setShaders({vertex:e,fragment:i})}setShaders({vertex:t,fragment:e}){if(t&&(this.gl.shaderSource(this.vertexShader,t),this.gl.compileShader(this.vertexShader),\"\"!==this.gl.getShaderInfoLog(this.vertexShader)&&console.warn(`${this.gl.getShaderInfoLog(this.vertexShader)}\\nVertex Shader\\n${b(t)}`)),e&&(this.gl.shaderSource(this.fragmentShader,e),this.gl.compileShader(this.fragmentShader),\"\"!==this.gl.getShaderInfoLog(this.fragmentShader)&&console.warn(`${this.gl.getShaderInfoLog(this.fragmentShader)}\\nFragment Shader\\n${b(e)}`)),this.gl.linkProgram(this.program),!this.gl.getProgramParameter(this.program,this.gl.LINK_STATUS))return console.warn(this.gl.getProgramInfoLog(this.program));this.uniformLocations=new Map;let i=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_UNIFORMS);for(let t=0;t<i;t++){let e=this.gl.getActiveUniform(this.program,t);this.uniformLocations.set(e,this.gl.getUniformLocation(this.program,e.name));const i=e.name.match(/(\\w+)/g);e.uniformName=i[0],e.nameComponents=i.slice(1)}this.attributeLocations=new Map;const s=[],r=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_ATTRIBUTES);for(let t=0;t<r;t++){const e=this.gl.getActiveAttrib(this.program,t),i=this.gl.getAttribLocation(this.program,e.name);-1!==i&&(s[i]=e.name,this.attributeLocations.set(e,i))}this.attributeOrder=s.join(\"\")}setBlendFunc(t,e,i,s){this.blendFunc.src=t,this.blendFunc.dst=e,this.blendFunc.srcAlpha=i,this.blendFunc.dstAlpha=s,t&&(this.transparent=!0)}setBlendEquation(t,e){this.blendEquation.modeRGB=t,this.blendEquation.modeAlpha=e}setStencilFunc(t,e,i){this.stencilRef=e,this.stencilFunc.func=t,this.stencilFunc.ref=e,this.stencilFunc.mask=i}setStencilOp(t,e,i){this.stencilOp.stencilFail=t,this.stencilOp.depthFail=e,this.stencilOp.depthPass=i}applyState(){this.depthTest?this.gl.renderer.enable(this.gl.DEPTH_TEST):this.gl.renderer.disable(this.gl.DEPTH_TEST),this.cullFace?this.gl.renderer.enable(this.gl.CULL_FACE):this.gl.renderer.disable(this.gl.CULL_FACE),this.blendFunc.src?this.gl.renderer.enable(this.gl.BLEND):this.gl.renderer.disable(this.gl.BLEND),this.cullFace&&this.gl.renderer.setCullFace(this.cullFace),this.gl.renderer.setFrontFace(this.frontFace),this.gl.renderer.setDepthMask(this.depthWrite),this.gl.renderer.setDepthFunc(this.depthFunc),this.blendFunc.src&&this.gl.renderer.setBlendFunc(this.blendFunc.src,this.blendFunc.dst,this.blendFunc.srcAlpha,this.blendFunc.dstAlpha),this.gl.renderer.setBlendEquation(this.blendEquation.modeRGB,this.blendEquation.modeAlpha),this.stencilFunc.func||this.stencilOp.stencilFail?this.gl.renderer.enable(this.gl.STENCIL_TEST):this.gl.renderer.disable(this.gl.STENCIL_TEST),this.gl.renderer.setStencilFunc(this.stencilFunc.func,this.stencilFunc.ref,this.stencilFunc.mask),this.gl.renderer.setStencilOp(this.stencilOp.stencilFail,this.stencilOp.depthFail,this.stencilOp.depthPass)}use({flipFaces:t=!1}={}){let e=-1;this.gl.renderer.state.currentProgram===this.id||(this.gl.useProgram(this.program),this.gl.renderer.state.currentProgram=this.id),this.uniformLocations.forEach((t,i)=>{let s=this.uniforms[i.uniformName];for(const t of i.nameComponents){if(!s)break;if(!(t in s)){if(Array.isArray(s.value))break;s=void 0;break}s=s[t]}if(!s)return A(`Active uniform ${i.name} has not been supplied`);if(s&&void 0===s.value)return A(`${i.name} uniform is missing a value parameter`);if(s.value.texture)return e+=1,s.value.update(e),_(this.gl,i.type,t,e);if(s.value.length&&s.value[0].texture){const r=[];return s.value.forEach(t=>{e+=1,t.update(e),r.push(e)}),_(this.gl,i.type,t,r)}_(this.gl,i.type,t,s.value)}),this.applyState(),t&&this.gl.renderer.setFrontFace(this.frontFace===this.gl.CCW?this.gl.CW:this.gl.CCW)}remove(){this.gl.deleteProgram(this.program)}}function _(t,e,i,s){s=s.length?function(t){const e=t.length,i=t[0].length;if(void 0===i)return t;const s=e*i;let r=E[s];r||(E[s]=r=new Float32Array(s));for(let s=0;s<e;s++)r.set(t[s],s*i);return r}(s):s;const r=t.renderer.state.uniformLocations.get(i);if(s.length)if(void 0===r||r.length!==s.length)t.renderer.state.uniformLocations.set(i,s.slice(0));else{if(function(t,e){if(t.length!==e.length)return!1;for(let i=0,s=t.length;i<s;i++)if(t[i]!==e[i])return!1;return!0}(r,s))return;r.set?r.set(s):function(t,e){for(let i=0,s=t.length;i<s;i++)t[i]=e[i]}(r,s),t.renderer.state.uniformLocations.set(i,r)}else{if(r===s)return;t.renderer.state.uniformLocations.set(i,s)}switch(e){case 5126:return s.length?t.uniform1fv(i,s):t.uniform1f(i,s);case 35664:return t.uniform2fv(i,s);case 35665:return t.uniform3fv(i,s);case 35666:return t.uniform4fv(i,s);case 35670:case 5124:case 35678:case 36306:case 35680:case 36289:return s.length?t.uniform1iv(i,s):t.uniform1i(i,s);case 35671:case 35667:return t.uniform2iv(i,s);case 35672:case 35668:return t.uniform3iv(i,s);case 35673:case 35669:return t.uniform4iv(i,s);case 35674:return t.uniformMatrix2fv(i,!1,s);case 35675:return t.uniformMatrix3fv(i,!1,s);case 35676:return t.uniformMatrix4fv(i,!1,s)}}function b(t){let e=t.split(\"\\n\");for(let t=0;t<e.length;t++)e[t]=t+1+\": \"+e[t];return e.join(\"\\n\")}let M=0;function A(t){M>100||(console.warn(t),M++,M>100&&console.warn(\"More than 100 program warnings - stopping logs.\"))}const T=new u;let w=1;class F{constructor({canvas:t=document.createElement(\"canvas\"),width:e=300,height:i=150,dpr:s=1,alpha:r=!1,depth:h=!0,stencil:n=!1,antialias:a=!1,premultipliedAlpha:l=!1,preserveDrawingBuffer:o=!1,powerPreference:u=\"default\",autoClear:g=!0,webgl:d=2}={}){const c={alpha:r,depth:h,stencil:n,antialias:a,premultipliedAlpha:l,preserveDrawingBuffer:o,powerPreference:u};this.dpr=s,this.alpha=r,this.color=!0,this.depth=h,this.stencil=n,this.premultipliedAlpha=l,this.autoClear=g,this.id=w++,2===d&&(this.gl=t.getContext(\"webgl2\",c)),this.isWebgl2=!!this.gl,this.gl||(this.gl=t.getContext(\"webgl\",c)),this.gl||console.error(\"unable to create webgl context\"),this.gl.renderer=this,this.setSize(e,i),this.state={},this.state.blendFunc={src:this.gl.ONE,dst:this.gl.ZERO},this.state.blendEquation={modeRGB:this.gl.FUNC_ADD},this.state.cullFace=!1,this.state.frontFace=this.gl.CCW,this.state.depthMask=!0,this.state.depthFunc=this.gl.LEQUAL,this.state.premultiplyAlpha=!1,this.state.flipY=!1,this.state.unpackAlignment=4,this.state.framebuffer=null,this.state.viewport={x:0,y:0,width:null,height:null},this.state.textureUnits=[],this.state.activeTextureUnit=0,this.state.boundBuffer=null,this.state.uniformLocations=new Map,this.state.currentProgram=null,this.extensions={},this.isWebgl2?(this.getExtension(\"EXT_color_buffer_float\"),this.getExtension(\"OES_texture_float_linear\")):(this.getExtension(\"OES_texture_float\"),this.getExtension(\"OES_texture_float_linear\"),this.getExtension(\"OES_texture_half_float\"),this.getExtension(\"OES_texture_half_float_linear\"),this.getExtension(\"OES_element_index_uint\"),this.getExtension(\"OES_standard_derivatives\"),this.getExtension(\"EXT_sRGB\"),this.getExtension(\"WEBGL_depth_texture\"),this.getExtension(\"WEBGL_draw_buffers\")),this.getExtension(\"WEBGL_compressed_texture_astc\"),this.getExtension(\"EXT_texture_compression_bptc\"),this.getExtension(\"WEBGL_compressed_texture_s3tc\"),this.getExtension(\"WEBGL_compressed_texture_etc1\"),this.getExtension(\"WEBGL_compressed_texture_pvrtc\"),this.getExtension(\"WEBKIT_WEBGL_compressed_texture_pvrtc\"),this.vertexAttribDivisor=this.getExtension(\"ANGLE_instanced_arrays\",\"vertexAttribDivisor\",\"vertexAttribDivisorANGLE\"),this.drawArraysInstanced=this.getExtension(\"ANGLE_instanced_arrays\",\"drawArraysInstanced\",\"drawArraysInstancedANGLE\"),this.drawElementsInstanced=this.getExtension(\"ANGLE_instanced_arrays\",\"drawElementsInstanced\",\"drawElementsInstancedANGLE\"),this.createVertexArray=this.getExtension(\"OES_vertex_array_object\",\"createVertexArray\",\"createVertexArrayOES\"),this.bindVertexArray=this.getExtension(\"OES_vertex_array_object\",\"bindVertexArray\",\"bindVertexArrayOES\"),this.deleteVertexArray=this.getExtension(\"OES_vertex_array_object\",\"deleteVertexArray\",\"deleteVertexArrayOES\"),this.drawBuffers=this.getExtension(\"WEBGL_draw_buffers\",\"drawBuffers\",\"drawBuffersWEBGL\"),this.parameters={},this.parameters.maxTextureUnits=this.gl.getParameter(this.gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS),this.parameters.maxAnisotropy=this.getExtension(\"EXT_texture_filter_anisotropic\")?this.gl.getParameter(this.getExtension(\"EXT_texture_filter_anisotropic\").MAX_TEXTURE_MAX_ANISOTROPY_EXT):0}setSize(t,e){this.width=t,this.height=e,this.gl.canvas.width=t*this.dpr,this.gl.canvas.height=e*this.dpr,this.gl.canvas.style&&Object.assign(this.gl.canvas.style,{width:t+\"px\",height:e+\"px\"})}setViewport(t,e,i=0,s=0){this.state.viewport.width===t&&this.state.viewport.height===e||(this.state.viewport.width=t,this.state.viewport.height=e,this.state.viewport.x=i,this.state.viewport.y=s,this.gl.viewport(i,s,t,e))}setScissor(t,e,i=0,s=0){this.gl.scissor(i,s,t,e)}enable(t){!0!==this.state[t]&&(this.gl.enable(t),this.state[t]=!0)}disable(t){!1!==this.state[t]&&(this.gl.disable(t),this.state[t]=!1)}setBlendFunc(t,e,i,s){this.state.blendFunc.src===t&&this.state.blendFunc.dst===e&&this.state.blendFunc.srcAlpha===i&&this.state.blendFunc.dstAlpha===s||(this.state.blendFunc.src=t,this.state.blendFunc.dst=e,this.state.blendFunc.srcAlpha=i,this.state.blendFunc.dstAlpha=s,void 0!==i?this.gl.blendFuncSeparate(t,e,i,s):this.gl.blendFunc(t,e))}setBlendEquation(t,e){t=t||this.gl.FUNC_ADD,this.state.blendEquation.modeRGB===t&&this.state.blendEquation.modeAlpha===e||(this.state.blendEquation.modeRGB=t,this.state.blendEquation.modeAlpha=e,void 0!==e?this.gl.blendEquationSeparate(t,e):this.gl.blendEquation(t))}setCullFace(t){this.state.cullFace!==t&&(this.state.cullFace=t,this.gl.cullFace(t))}setFrontFace(t){this.state.frontFace!==t&&(this.state.frontFace=t,this.gl.frontFace(t))}setDepthMask(t){this.state.depthMask!==t&&(this.state.depthMask=t,this.gl.depthMask(t))}setDepthFunc(t){this.state.depthFunc!==t&&(this.state.depthFunc=t,this.gl.depthFunc(t))}setStencilMask(t){this.state.stencilMask!==t&&(this.state.stencilMask=t,this.gl.stencilMask(t))}setStencilFunc(t,e,i){this.state.stencilFunc===t&&this.state.stencilRef===e&&this.state.stencilFuncMask===i||(this.state.stencilFunc=t||this.gl.ALWAYS,this.state.stencilRef=e||0,this.state.stencilFuncMask=i||0,this.gl.stencilFunc(t||this.gl.ALWAYS,e||0,i||0))}setStencilOp(t,e,i){this.state.stencilFail===t&&this.state.stencilDepthFail===e&&this.state.stencilDepthPass===i||(this.state.stencilFail=t,this.state.stencilDepthFail=e,this.state.stencilDepthPass=i,this.gl.stencilOp(t,e,i))}activeTexture(t){this.state.activeTextureUnit!==t&&(this.state.activeTextureUnit=t,this.gl.activeTexture(this.gl.TEXTURE0+t))}bindFramebuffer({target:t=this.gl.FRAMEBUFFER,buffer:e=null}={}){this.state.framebuffer!==e&&(this.state.framebuffer=e,this.gl.bindFramebuffer(t,e))}getExtension(t,e,i){return e&&this.gl[e]?this.gl[e].bind(this.gl):(this.extensions[t]||(this.extensions[t]=this.gl.getExtension(t)),e?this.extensions[t]?this.extensions[t][i].bind(this.extensions[t]):null:this.extensions[t])}sortOpaque(t,e){return t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.program.id!==e.program.id?t.program.id-e.program.id:t.zDepth!==e.zDepth?t.zDepth-e.zDepth:e.id-t.id}sortTransparent(t,e){return t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.zDepth!==e.zDepth?e.zDepth-t.zDepth:e.id-t.id}sortUI(t,e){return t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.program.id!==e.program.id?t.program.id-e.program.id:e.id-t.id}getRenderList({scene:t,camera:e,frustumCull:i,sort:s}){let r=[];if(e&&i&&e.updateFrustum(),t.traverse(t=>{if(!t.visible)return!0;t.draw&&(i&&t.frustumCulled&&e&&!e.frustumIntersectsMesh(t)||r.push(t))}),s){const t=[],i=[],s=[];r.forEach(r=>{r.program.transparent?r.program.depthTest?i.push(r):s.push(r):t.push(r),r.zDepth=0,0===r.renderOrder&&r.program.depthTest&&e&&(r.worldMatrix.getTranslation(T),T.applyMatrix4(e.projectionViewMatrix),r.zDepth=T.z)}),t.sort(this.sortOpaque),i.sort(this.sortTransparent),s.sort(this.sortUI),r=t.concat(i,s)}return r}render({scene:t,camera:e,target:i=null,update:s=!0,sort:r=!0,frustumCull:h=!0,clear:n}){null===i?(this.bindFramebuffer(),this.setViewport(this.width*this.dpr,this.height*this.dpr)):(this.bindFramebuffer(i),this.setViewport(i.width,i.height)),(n||this.autoClear&&!1!==n)&&(!this.depth||i&&!i.depth||(this.enable(this.gl.DEPTH_TEST),this.setDepthMask(!0)),(this.stencil||!i||i.stencil)&&(this.enable(this.gl.STENCIL_TEST),this.setStencilMask(255)),this.gl.clear((this.color?this.gl.COLOR_BUFFER_BIT:0)|(this.depth?this.gl.DEPTH_BUFFER_BIT:0)|(this.stencil?this.gl.STENCIL_BUFFER_BIT:0))),s&&t.updateMatrixWorld(),e&&e.updateMatrixWorld();this.getRenderList({scene:t,camera:e,frustumCull:h,sort:r}).forEach(t=>{t.draw({camera:e})})}}function R(t,e,i){let s=e[0],r=e[1],h=e[2],n=e[3],a=i[0],l=i[1],o=i[2],u=i[3];return t[0]=s*u+n*a+r*o-h*l,t[1]=r*u+n*l+h*a-s*o,t[2]=h*u+n*o+s*l-r*a,t[3]=n*u-s*a-r*l-h*o,t}const y=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t},v=function(t,e,i,s,r){return t[0]=e,t[1]=i,t[2]=s,t[3]=r,t},S=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]},C=function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=i*i+s*s+r*r+h*h;return n>0&&(n=1/Math.sqrt(n)),t[0]=i*n,t[1]=s*n,t[2]=r*n,t[3]=h*n,t};class N extends Array{constructor(t=0,e=0,i=0,s=1){super(t,e,i,s),this.onChange=()=>{},this._target=this;const r=[\"0\",\"1\",\"2\",\"3\"];return new Proxy(this,{set(t,e){const i=Reflect.set(...arguments);return i&&r.includes(e)&&t.onChange(),i}})}get x(){return this[0]}get y(){return this[1]}get z(){return this[2]}get w(){return this[3]}set x(t){this._target[0]=t,this.onChange()}set y(t){this._target[1]=t,this.onChange()}set z(t){this._target[2]=t,this.onChange()}set w(t){this._target[3]=t,this.onChange()}identity(){var t;return(t=this._target)[0]=0,t[1]=0,t[2]=0,t[3]=1,this.onChange(),this}set(t,e,i,s){return t.length?this.copy(t):(v(this._target,t,e,i,s),this.onChange(),this)}rotateX(t){return function(t,e,i){i*=.5;let s=e[0],r=e[1],h=e[2],n=e[3],a=Math.sin(i),l=Math.cos(i);t[0]=s*l+n*a,t[1]=r*l+h*a,t[2]=h*l-r*a,t[3]=n*l-s*a}(this._target,this._target,t),this.onChange(),this}rotateY(t){return function(t,e,i){i*=.5;let s=e[0],r=e[1],h=e[2],n=e[3],a=Math.sin(i),l=Math.cos(i);t[0]=s*l-h*a,t[1]=r*l+n*a,t[2]=h*l+s*a,t[3]=n*l-r*a}(this._target,this._target,t),this.onChange(),this}rotateZ(t){return function(t,e,i){i*=.5;let s=e[0],r=e[1],h=e[2],n=e[3],a=Math.sin(i),l=Math.cos(i);t[0]=s*l+r*a,t[1]=r*l-s*a,t[2]=h*l+n*a,t[3]=n*l-h*a}(this._target,this._target,t),this.onChange(),this}inverse(t=this._target){return function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=i*i+s*s+r*r+h*h,a=n?1/n:0;t[0]=-i*a,t[1]=-s*a,t[2]=-r*a,t[3]=h*a}(this._target,t),this.onChange(),this}conjugate(t=this._target){var e,i;return e=this._target,i=t,e[0]=-i[0],e[1]=-i[1],e[2]=-i[2],e[3]=i[3],this.onChange(),this}copy(t){return y(this._target,t),this.onChange(),this}normalize(t=this._target){return C(this._target,t),this.onChange(),this}multiply(t,e){return e?R(this._target,t,e):R(this._target,this._target,t),this.onChange(),this}dot(t){return S(this._target,t)}fromMatrix3(t){return function(t,e){let i,s=e[0]+e[4]+e[8];if(s>0)i=Math.sqrt(s+1),t[3]=.5*i,i=.5/i,t[0]=(e[5]-e[7])*i,t[1]=(e[6]-e[2])*i,t[2]=(e[1]-e[3])*i;else{let s=0;e[4]>e[0]&&(s=1),e[8]>e[3*s+s]&&(s=2);let r=(s+1)%3,h=(s+2)%3;i=Math.sqrt(e[3*s+s]-e[3*r+r]-e[3*h+h]+1),t[s]=.5*i,i=.5/i,t[3]=(e[3*r+h]-e[3*h+r])*i,t[r]=(e[3*r+s]+e[3*s+r])*i,t[h]=(e[3*h+s]+e[3*s+h])*i}}(this._target,t),this.onChange(),this}fromEuler(t,e){return function(t,e,i=\"YXZ\"){let s=Math.sin(.5*e[0]),r=Math.cos(.5*e[0]),h=Math.sin(.5*e[1]),n=Math.cos(.5*e[1]),a=Math.sin(.5*e[2]),l=Math.cos(.5*e[2]);\"XYZ\"===i?(t[0]=s*n*l+r*h*a,t[1]=r*h*l-s*n*a,t[2]=r*n*a+s*h*l,t[3]=r*n*l-s*h*a):\"YXZ\"===i?(t[0]=s*n*l+r*h*a,t[1]=r*h*l-s*n*a,t[2]=r*n*a-s*h*l,t[3]=r*n*l+s*h*a):\"ZXY\"===i?(t[0]=s*n*l-r*h*a,t[1]=r*h*l+s*n*a,t[2]=r*n*a+s*h*l,t[3]=r*n*l-s*h*a):\"ZYX\"===i?(t[0]=s*n*l-r*h*a,t[1]=r*h*l+s*n*a,t[2]=r*n*a-s*h*l,t[3]=r*n*l+s*h*a):\"YZX\"===i?(t[0]=s*n*l+r*h*a,t[1]=r*h*l+s*n*a,t[2]=r*n*a-s*h*l,t[3]=r*n*l-s*h*a):\"XZY\"===i&&(t[0]=s*n*l-r*h*a,t[1]=r*h*l-s*n*a,t[2]=r*n*a+s*h*l,t[3]=r*n*l+s*h*a)}(this._target,t,t.order),e||this.onChange(),this}fromAxisAngle(t,e){return function(t,e,i){i*=.5;let s=Math.sin(i);t[0]=s*e[0],t[1]=s*e[1],t[2]=s*e[2],t[3]=Math.cos(i)}(this._target,t,e),this.onChange(),this}slerp(t,e){return function(t,e,i,s){let r,h,n,a,l,o=e[0],u=e[1],g=e[2],d=e[3],c=i[0],p=i[1],f=i[2],m=i[3];h=o*c+u*p+g*f+d*m,h<0&&(h=-h,c=-c,p=-p,f=-f,m=-m),1-h>1e-6?(r=Math.acos(h),n=Math.sin(r),a=Math.sin((1-s)*r)/n,l=Math.sin(s*r)/n):(a=1-s,l=s),t[0]=a*o+l*c,t[1]=a*u+l*p,t[2]=a*g+l*f,t[3]=a*d+l*m}(this._target,this._target,t,e),this.onChange(),this}fromArray(t,e=0){return this._target[0]=t[e],this._target[1]=t[e+1],this._target[2]=t[e+2],this._target[3]=t[e+3],this.onChange(),this}toArray(t=[],e=0){return t[e]=this[0],t[e+1]=this[1],t[e+2]=this[2],t[e+3]=this[3],t}}function D(t){let e=t[0],i=t[1],s=t[2],r=t[3],h=t[4],n=t[5],a=t[6],l=t[7],o=t[8],u=t[9],g=t[10],d=t[11],c=t[12],p=t[13],f=t[14],m=t[15];return(e*n-i*h)*(g*m-d*f)-(e*a-s*h)*(u*m-d*p)+(e*l-r*h)*(u*f-g*p)+(i*a-s*n)*(o*m-d*c)-(i*l-r*n)*(o*f-g*c)+(s*l-r*a)*(o*p-u*c)}function U(t,e,i){let s=e[0],r=e[1],h=e[2],n=e[3],a=e[4],l=e[5],o=e[6],u=e[7],g=e[8],d=e[9],c=e[10],p=e[11],f=e[12],m=e[13],E=e[14],x=e[15],_=i[0],b=i[1],M=i[2],A=i[3];return t[0]=_*s+b*a+M*g+A*f,t[1]=_*r+b*l+M*d+A*m,t[2]=_*h+b*o+M*c+A*E,t[3]=_*n+b*u+M*p+A*x,_=i[4],b=i[5],M=i[6],A=i[7],t[4]=_*s+b*a+M*g+A*f,t[5]=_*r+b*l+M*d+A*m,t[6]=_*h+b*o+M*c+A*E,t[7]=_*n+b*u+M*p+A*x,_=i[8],b=i[9],M=i[10],A=i[11],t[8]=_*s+b*a+M*g+A*f,t[9]=_*r+b*l+M*d+A*m,t[10]=_*h+b*o+M*c+A*E,t[11]=_*n+b*u+M*p+A*x,_=i[12],b=i[13],M=i[14],A=i[15],t[12]=_*s+b*a+M*g+A*f,t[13]=_*r+b*l+M*d+A*m,t[14]=_*h+b*o+M*c+A*E,t[15]=_*n+b*u+M*p+A*x,t}function B(t,e){let i=e[0],s=e[1],r=e[2],h=e[4],n=e[5],a=e[6],l=e[8],o=e[9],u=e[10];return t[0]=Math.hypot(i,s,r),t[1]=Math.hypot(h,n,a),t[2]=Math.hypot(l,o,u),t}const O=function(){const t=[1,1,1];return function(e,i){let s=t;B(s,i);let r=1/s[0],h=1/s[1],n=1/s[2],a=i[0]*r,l=i[1]*h,o=i[2]*n,u=i[4]*r,g=i[5]*h,d=i[6]*n,c=i[8]*r,p=i[9]*h,f=i[10]*n,m=a+g+f,E=0;return m>0?(E=2*Math.sqrt(m+1),e[3]=.25*E,e[0]=(d-p)/E,e[1]=(c-o)/E,e[2]=(l-u)/E):a>g&&a>f?(E=2*Math.sqrt(1+a-g-f),e[3]=(d-p)/E,e[0]=.25*E,e[1]=(l+u)/E,e[2]=(c+o)/E):g>f?(E=2*Math.sqrt(1+g-a-f),e[3]=(c-o)/E,e[0]=(l+u)/E,e[1]=.25*E,e[2]=(d+p)/E):(E=2*Math.sqrt(1+f-a-g),e[3]=(l-u)/E,e[0]=(c+o)/E,e[1]=(d+p)/E,e[2]=.25*E),e}}();function P(t,e,i){return t[0]=e[0]+i[0],t[1]=e[1]+i[1],t[2]=e[2]+i[2],t[3]=e[3]+i[3],t[4]=e[4]+i[4],t[5]=e[5]+i[5],t[6]=e[6]+i[6],t[7]=e[7]+i[7],t[8]=e[8]+i[8],t[9]=e[9]+i[9],t[10]=e[10]+i[10],t[11]=e[11]+i[11],t[12]=e[12]+i[12],t[13]=e[13]+i[13],t[14]=e[14]+i[14],t[15]=e[15]+i[15],t}function L(t,e,i){return t[0]=e[0]-i[0],t[1]=e[1]-i[1],t[2]=e[2]-i[2],t[3]=e[3]-i[3],t[4]=e[4]-i[4],t[5]=e[5]-i[5],t[6]=e[6]-i[6],t[7]=e[7]-i[7],t[8]=e[8]-i[8],t[9]=e[9]-i[9],t[10]=e[10]-i[10],t[11]=e[11]-i[11],t[12]=e[12]-i[12],t[13]=e[13]-i[13],t[14]=e[14]-i[14],t[15]=e[15]-i[15],t}class I extends Array{constructor(t=1,e=0,i=0,s=0,r=0,h=1,n=0,a=0,l=0,o=0,u=1,g=0,d=0,c=0,p=0,f=1){return super(t,e,i,s,r,h,n,a,l,o,u,g,d,c,p,f),this}get x(){return this[12]}get y(){return this[13]}get z(){return this[14]}get w(){return this[15]}set x(t){this[12]=t}set y(t){this[13]=t}set z(t){this[14]=t}set w(t){this[15]=t}set(t,e,i,s,r,h,n,a,l,o,u,g,d,c,p,f){return t.length?this.copy(t):(function(t,e,i,s,r,h,n,a,l,o,u,g,d,c,p,f,m){t[0]=e,t[1]=i,t[2]=s,t[3]=r,t[4]=h,t[5]=n,t[6]=a,t[7]=l,t[8]=o,t[9]=u,t[10]=g,t[11]=d,t[12]=c,t[13]=p,t[14]=f,t[15]=m}(this,t,e,i,s,r,h,n,a,l,o,u,g,d,c,p,f),this)}translate(t,e=this){return function(t,e,i){let s,r,h,n,a,l,o,u,g,d,c,p,f=i[0],m=i[1],E=i[2];e===t?(t[12]=e[0]*f+e[4]*m+e[8]*E+e[12],t[13]=e[1]*f+e[5]*m+e[9]*E+e[13],t[14]=e[2]*f+e[6]*m+e[10]*E+e[14],t[15]=e[3]*f+e[7]*m+e[11]*E+e[15]):(s=e[0],r=e[1],h=e[2],n=e[3],a=e[4],l=e[5],o=e[6],u=e[7],g=e[8],d=e[9],c=e[10],p=e[11],t[0]=s,t[1]=r,t[2]=h,t[3]=n,t[4]=a,t[5]=l,t[6]=o,t[7]=u,t[8]=g,t[9]=d,t[10]=c,t[11]=p,t[12]=s*f+a*m+g*E+e[12],t[13]=r*f+l*m+d*E+e[13],t[14]=h*f+o*m+c*E+e[14],t[15]=n*f+u*m+p*E+e[15])}(this,e,t),this}rotate(t,e,i=this){return function(t,e,i,s){let r,h,n,a,l,o,u,g,d,c,p,f,m,E,x,_,b,M,A,T,w,F,R,y,v=s[0],S=s[1],C=s[2],N=Math.hypot(v,S,C);Math.abs(N)<1e-6||(N=1/N,v*=N,S*=N,C*=N,r=Math.sin(i),h=Math.cos(i),n=1-h,a=e[0],l=e[1],o=e[2],u=e[3],g=e[4],d=e[5],c=e[6],p=e[7],f=e[8],m=e[9],E=e[10],x=e[11],_=v*v*n+h,b=S*v*n+C*r,M=C*v*n-S*r,A=v*S*n-C*r,T=S*S*n+h,w=C*S*n+v*r,F=v*C*n+S*r,R=S*C*n-v*r,y=C*C*n+h,t[0]=a*_+g*b+f*M,t[1]=l*_+d*b+m*M,t[2]=o*_+c*b+E*M,t[3]=u*_+p*b+x*M,t[4]=a*A+g*T+f*w,t[5]=l*A+d*T+m*w,t[6]=o*A+c*T+E*w,t[7]=u*A+p*T+x*w,t[8]=a*F+g*R+f*y,t[9]=l*F+d*R+m*y,t[10]=o*F+c*R+E*y,t[11]=u*F+p*R+x*y,e!==t&&(t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]))}(this,i,t,e),this}scale(t,e=this){return function(t,e,i){let s=i[0],r=i[1],h=i[2];t[0]=e[0]*s,t[1]=e[1]*s,t[2]=e[2]*s,t[3]=e[3]*s,t[4]=e[4]*r,t[5]=e[5]*r,t[6]=e[6]*r,t[7]=e[7]*r,t[8]=e[8]*h,t[9]=e[9]*h,t[10]=e[10]*h,t[11]=e[11]*h,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]}(this,e,\"number\"==typeof t?[t,t,t]:t),this}add(t,e){return e?P(this,t,e):P(this,this,t),this}sub(t,e){return e?L(this,t,e):L(this,this,t),this}multiply(t,e){var i,s,r;return t.length?e?U(this,t,e):U(this,this,t):(s=this,r=t,(i=this)[0]=s[0]*r,i[1]=s[1]*r,i[2]=s[2]*r,i[3]=s[3]*r,i[4]=s[4]*r,i[5]=s[5]*r,i[6]=s[6]*r,i[7]=s[7]*r,i[8]=s[8]*r,i[9]=s[9]*r,i[10]=s[10]*r,i[11]=s[11]*r,i[12]=s[12]*r,i[13]=s[13]*r,i[14]=s[14]*r,i[15]=s[15]*r),this}identity(){var t;return(t=this)[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}copy(t){var e,i;return i=t,(e=this)[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],e[9]=i[9],e[10]=i[10],e[11]=i[11],e[12]=i[12],e[13]=i[13],e[14]=i[14],e[15]=i[15],this}fromPerspective({fov:t,aspect:e,near:i,far:s}={}){return function(t,e,i,s,r){let h=1/Math.tan(e/2),n=1/(s-r);t[0]=h/i,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=h,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(r+s)*n,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*r*s*n,t[15]=0}(this,t,e,i,s),this}fromOrthogonal({left:t,right:e,bottom:i,top:s,near:r,far:h}){return function(t,e,i,s,r,h,n){let a=1/(e-i),l=1/(s-r),o=1/(h-n);t[0]=-2*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*o,t[11]=0,t[12]=(e+i)*a,t[13]=(r+s)*l,t[14]=(n+h)*o,t[15]=1}(this,t,e,i,s,r,h),this}fromQuaternion(t){return function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=i+i,a=s+s,l=r+r,o=i*n,u=s*n,g=s*a,d=r*n,c=r*a,p=r*l,f=h*n,m=h*a,E=h*l;t[0]=1-g-p,t[1]=u+E,t[2]=d-m,t[3]=0,t[4]=u-E,t[5]=1-o-p,t[6]=c+f,t[7]=0,t[8]=d+m,t[9]=c-f,t[10]=1-o-g,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1}(this,t),this}setPosition(t){return this.x=t[0],this.y=t[1],this.z=t[2],this}inverse(t=this){return function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=e[4],a=e[5],l=e[6],o=e[7],u=e[8],g=e[9],d=e[10],c=e[11],p=e[12],f=e[13],m=e[14],E=e[15],x=i*a-s*n,_=i*l-r*n,b=i*o-h*n,M=s*l-r*a,A=s*o-h*a,T=r*o-h*l,w=u*f-g*p,F=u*m-d*p,R=u*E-c*p,y=g*m-d*f,v=g*E-c*f,S=d*E-c*m,C=x*S-_*v+b*y+M*R-A*F+T*w;C&&(C=1/C,t[0]=(a*S-l*v+o*y)*C,t[1]=(r*v-s*S-h*y)*C,t[2]=(f*T-m*A+E*M)*C,t[3]=(d*A-g*T-c*M)*C,t[4]=(l*R-n*S-o*F)*C,t[5]=(i*S-r*R+h*F)*C,t[6]=(m*b-p*T-E*_)*C,t[7]=(u*T-d*b+c*_)*C,t[8]=(n*v-a*R+o*w)*C,t[9]=(s*R-i*v-h*w)*C,t[10]=(p*A-f*b+E*x)*C,t[11]=(g*b-u*A-c*x)*C,t[12]=(a*F-n*y-l*w)*C,t[13]=(i*y-s*F+r*w)*C,t[14]=(f*_-p*M-m*x)*C,t[15]=(u*M-g*_+d*x)*C)}(this,t),this}compose(t,e,i){return function(t,e,i,s){const r=t,h=e[0],n=e[1],a=e[2],l=e[3],o=h+h,u=n+n,g=a+a,d=h*o,c=h*u,p=h*g,f=n*u,m=n*g,E=a*g,x=l*o,_=l*u,b=l*g,M=s[0],A=s[1],T=s[2];r[0]=(1-(f+E))*M,r[1]=(c+b)*M,r[2]=(p-_)*M,r[3]=0,r[4]=(c-b)*A,r[5]=(1-(d+E))*A,r[6]=(m+x)*A,r[7]=0,r[8]=(p+_)*T,r[9]=(m-x)*T,r[10]=(1-(d+f))*T,r[11]=0,r[12]=i[0],r[13]=i[1],r[14]=i[2],r[15]=1}(this,t,e,i),this}decompose(e,i,s){return function(e,i,s,r){let h=t([e[0],e[1],e[2]]);const n=t([e[4],e[5],e[6]]),a=t([e[8],e[9],e[10]]);D(e)<0&&(h=-h),s[0]=e[12],s[1]=e[13],s[2]=e[14];const l=e.slice(),o=1/h,u=1/n,g=1/a;l[0]*=o,l[1]*=o,l[2]*=o,l[4]*=u,l[5]*=u,l[6]*=u,l[8]*=g,l[9]*=g,l[10]*=g,O(i,l),r[0]=h,r[1]=n,r[2]=a}(this,e,i,s),this}getRotation(t){return O(t,this),this}getTranslation(t){var e,i;return i=this,(e=t)[0]=i[12],e[1]=i[13],e[2]=i[14],this}getScaling(t){return B(t,this),this}getMaxScaleOnAxis(){return function(t){let e=t[0],i=t[1],s=t[2],r=t[4],h=t[5],n=t[6],a=t[8],l=t[9],o=t[10];const u=e*e+i*i+s*s,g=r*r+h*h+n*n,d=a*a+l*l+o*o;return Math.sqrt(Math.max(u,g,d))}(this)}lookAt(t,e,i){return function(t,e,i,s){let r=e[0],h=e[1],n=e[2],a=s[0],l=s[1],o=s[2],u=r-i[0],g=h-i[1],d=n-i[2],c=u*u+g*g+d*d;0===c?d=1:(c=1/Math.sqrt(c),u*=c,g*=c,d*=c);let p=l*d-o*g,f=o*u-a*d,m=a*g-l*u;c=p*p+f*f+m*m,0===c&&(o?a+=1e-6:l?o+=1e-6:l+=1e-6,p=l*d-o*g,f=o*u-a*d,m=a*g-l*u,c=p*p+f*f+m*m),c=1/Math.sqrt(c),p*=c,f*=c,m*=c,t[0]=p,t[1]=f,t[2]=m,t[3]=0,t[4]=g*m-d*f,t[5]=d*p-u*m,t[6]=u*f-g*p,t[7]=0,t[8]=u,t[9]=g,t[10]=d,t[11]=0,t[12]=r,t[13]=h,t[14]=n,t[15]=1}(this,t,e,i),this}determinant(){return D(this)}fromArray(t,e=0){return this[0]=t[e],this[1]=t[e+1],this[2]=t[e+2],this[3]=t[e+3],this[4]=t[e+4],this[5]=t[e+5],this[6]=t[e+6],this[7]=t[e+7],this[8]=t[e+8],this[9]=t[e+9],this[10]=t[e+10],this[11]=t[e+11],this[12]=t[e+12],this[13]=t[e+13],this[14]=t[e+14],this[15]=t[e+15],this}toArray(t=[],e=0){return t[e]=this[0],t[e+1]=this[1],t[e+2]=this[2],t[e+3]=this[3],t[e+4]=this[4],t[e+5]=this[5],t[e+6]=this[6],t[e+7]=this[7],t[e+8]=this[8],t[e+9]=this[9],t[e+10]=this[10],t[e+11]=this[11],t[e+12]=this[12],t[e+13]=this[13],t[e+14]=this[14],t[e+15]=this[15],t}}const X=new I;class G extends Array{constructor(t=0,e=t,i=t,s=\"YXZ\"){super(t,e,i),this.order=s,this.onChange=()=>{},this._target=this;const r=[\"0\",\"1\",\"2\"];return new Proxy(this,{set(t,e){const i=Reflect.set(...arguments);return i&&r.includes(e)&&t.onChange(),i}})}get x(){return this[0]}get y(){return this[1]}get z(){return this[2]}set x(t){this._target[0]=t,this.onChange()}set y(t){this._target[1]=t,this.onChange()}set z(t){this._target[2]=t,this.onChange()}set(t,e=t,i=t){return t.length?this.copy(t):(this._target[0]=t,this._target[1]=e,this._target[2]=i,this.onChange(),this)}copy(t){return this._target[0]=t[0],this._target[1]=t[1],this._target[2]=t[2],this.onChange(),this}reorder(t){return this._target.order=t,this.onChange(),this}fromRotationMatrix(t,e=this.order){return function(t,e,i=\"YXZ\"){\"XYZ\"===i?(t[1]=Math.asin(Math.min(Math.max(e[8],-1),1)),Math.abs(e[8])<.99999?(t[0]=Math.atan2(-e[9],e[10]),t[2]=Math.atan2(-e[4],e[0])):(t[0]=Math.atan2(e[6],e[5]),t[2]=0)):\"YXZ\"===i?(t[0]=Math.asin(-Math.min(Math.max(e[9],-1),1)),Math.abs(e[9])<.99999?(t[1]=Math.atan2(e[8],e[10]),t[2]=Math.atan2(e[1],e[5])):(t[1]=Math.atan2(-e[2],e[0]),t[2]=0)):\"ZXY\"===i?(t[0]=Math.asin(Math.min(Math.max(e[6],-1),1)),Math.abs(e[6])<.99999?(t[1]=Math.atan2(-e[2],e[10]),t[2]=Math.atan2(-e[4],e[5])):(t[1]=0,t[2]=Math.atan2(e[1],e[0]))):\"ZYX\"===i?(t[1]=Math.asin(-Math.min(Math.max(e[2],-1),1)),Math.abs(e[2])<.99999?(t[0]=Math.atan2(e[6],e[10]),t[2]=Math.atan2(e[1],e[0])):(t[0]=0,t[2]=Math.atan2(-e[4],e[5]))):\"YZX\"===i?(t[2]=Math.asin(Math.min(Math.max(e[1],-1),1)),Math.abs(e[1])<.99999?(t[0]=Math.atan2(-e[9],e[5]),t[1]=Math.atan2(-e[2],e[0])):(t[0]=0,t[1]=Math.atan2(e[8],e[10]))):\"XZY\"===i&&(t[2]=Math.asin(-Math.min(Math.max(e[4],-1),1)),Math.abs(e[4])<.99999?(t[0]=Math.atan2(e[6],e[5]),t[1]=Math.atan2(e[8],e[0])):(t[0]=Math.atan2(-e[9],e[10]),t[1]=0))}(this._target,t,e),this.onChange(),this}fromQuaternion(t,e=this.order,i){return X.fromQuaternion(t),this._target.fromRotationMatrix(X,e),i||this.onChange(),this}fromArray(t,e=0){return this._target[0]=t[e],this._target[1]=t[e+1],this._target[2]=t[e+2],this}toArray(t=[],e=0){return t[e]=this[0],t[e+1]=this[1],t[e+2]=this[2],t}}class z{constructor(){this.parent=null,this.children=[],this.visible=!0,this.matrix=new I,this.worldMatrix=new I,this.matrixAutoUpdate=!0,this.worldMatrixNeedsUpdate=!1,this.position=new u,this.quaternion=new N,this.scale=new u(1),this.rotation=new G,this.up=new u(0,1,0),this.rotation._target.onChange=()=>this.quaternion.fromEuler(this.rotation,!0),this.quaternion._target.onChange=()=>this.rotation.fromQuaternion(this.quaternion,void 0,!0)}setParent(t,e=!0){this.parent&&t!==this.parent&&this.parent.removeChild(this,!1),this.parent=t,e&&t&&t.addChild(this,!1)}addChild(t,e=!0){~this.children.indexOf(t)||this.children.push(t),e&&t.setParent(this,!1)}removeChild(t,e=!0){~this.children.indexOf(t)&&this.children.splice(this.children.indexOf(t),1),e&&t.setParent(null,!1)}updateMatrixWorld(t){this.matrixAutoUpdate&&this.updateMatrix(),(this.worldMatrixNeedsUpdate||t)&&(null===this.parent?this.worldMatrix.copy(this.matrix):this.worldMatrix.multiply(this.parent.worldMatrix,this.matrix),this.worldMatrixNeedsUpdate=!1,t=!0);for(let e=0,i=this.children.length;e<i;e++)this.children[e].updateMatrixWorld(t)}updateMatrix(){this.matrix.compose(this.quaternion,this.position,this.scale),this.worldMatrixNeedsUpdate=!0}traverse(t){if(!t(this))for(let e=0,i=this.children.length;e<i;e++)this.children[e].traverse(t)}decompose(){this.matrix.decompose(this.quaternion._target,this.position,this.scale),this.rotation.fromQuaternion(this.quaternion)}lookAt(t,e=!1){e?this.matrix.lookAt(this.position,t,this.up):this.matrix.lookAt(t,this.position,this.up),this.matrix.getRotation(this.quaternion._target),this.rotation.fromQuaternion(this.quaternion)}}const q=new I,V=new u,k=new u;class W extends z{constructor(t,{near:e=.1,far:i=100,fov:s=45,aspect:r=1,left:h,right:n,bottom:a,top:l,zoom:o=1}={}){super(),Object.assign(this,{near:e,far:i,fov:s,aspect:r,left:h,right:n,bottom:a,top:l,zoom:o}),this.projectionMatrix=new I,this.viewMatrix=new I,this.projectionViewMatrix=new I,this.worldPosition=new u,this.type=h||n?\"orthographic\":\"perspective\",\"orthographic\"===this.type?this.orthographic():this.perspective()}perspective({near:t=this.near,far:e=this.far,fov:i=this.fov,aspect:s=this.aspect}={}){return Object.assign(this,{near:t,far:e,fov:i,aspect:s}),this.projectionMatrix.fromPerspective({fov:i*(Math.PI/180),aspect:s,near:t,far:e}),this.type=\"perspective\",this}orthographic({near:t=this.near,far:e=this.far,left:i=this.left||-1,right:s=this.right||1,bottom:r=this.bottom||-1,top:h=this.top||1,zoom:n=this.zoom}={}){return Object.assign(this,{near:t,far:e,left:i,right:s,bottom:r,top:h,zoom:n}),i/=n,s/=n,r/=n,h/=n,this.projectionMatrix.fromOrthogonal({left:i,right:s,bottom:r,top:h,near:t,far:e}),this.type=\"orthographic\",this}updateMatrixWorld(){return super.updateMatrixWorld(),this.viewMatrix.inverse(this.worldMatrix),this.worldMatrix.getTranslation(this.worldPosition),this.projectionViewMatrix.multiply(this.projectionMatrix,this.viewMatrix),this}updateProjectionMatrix(){return\"perspective\"===this.type?this.perspective():this.orthographic()}lookAt(t){return super.lookAt(t,!0),this}project(t){return t.applyMatrix4(this.viewMatrix),t.applyMatrix4(this.projectionMatrix),this}unproject(t){return t.applyMatrix4(q.inverse(this.projectionMatrix)),t.applyMatrix4(this.worldMatrix),this}updateFrustum(){this.frustum||(this.frustum=[new u,new u,new u,new u,new u,new u]);const t=this.projectionViewMatrix;this.frustum[0].set(t[3]-t[0],t[7]-t[4],t[11]-t[8]).constant=t[15]-t[12],this.frustum[1].set(t[3]+t[0],t[7]+t[4],t[11]+t[8]).constant=t[15]+t[12],this.frustum[2].set(t[3]+t[1],t[7]+t[5],t[11]+t[9]).constant=t[15]+t[13],this.frustum[3].set(t[3]-t[1],t[7]-t[5],t[11]-t[9]).constant=t[15]-t[13],this.frustum[4].set(t[3]-t[2],t[7]-t[6],t[11]-t[10]).constant=t[15]-t[14],this.frustum[5].set(t[3]+t[2],t[7]+t[6],t[11]+t[10]).constant=t[15]+t[14];for(let t=0;t<6;t++){const e=1/this.frustum[t].distance();this.frustum[t].multiply(e),this.frustum[t].constant*=e}}frustumIntersectsMesh(t,e=t.worldMatrix){if(!t.geometry.attributes.position)return!0;if(t.geometry.bounds&&t.geometry.bounds.radius!==1/0||t.geometry.computeBoundingSphere(),!t.geometry.bounds)return!0;const i=V;i.copy(t.geometry.bounds.center),i.applyMatrix4(e);const s=t.geometry.bounds.radius*e.getMaxScaleOnAxis();return this.frustumIntersectsSphere(i,s)}frustumIntersectsSphere(t,e){const i=k;for(let s=0;s<6;s++){const r=this.frustum[s];if(i.copy(r).dot(t)+r.constant<-e)return!1}return!0}}function Y(t,e,i){let s=e[0],r=e[1],h=e[2],n=e[3],a=e[4],l=e[5],o=e[6],u=e[7],g=e[8],d=i[0],c=i[1],p=i[2],f=i[3],m=i[4],E=i[5],x=i[6],_=i[7],b=i[8];return t[0]=d*s+c*n+p*o,t[1]=d*r+c*a+p*u,t[2]=d*h+c*l+p*g,t[3]=f*s+m*n+E*o,t[4]=f*r+m*a+E*u,t[5]=f*h+m*l+E*g,t[6]=x*s+_*n+b*o,t[7]=x*r+_*a+b*u,t[8]=x*h+_*l+b*g,t}class H extends Array{constructor(t=1,e=0,i=0,s=0,r=1,h=0,n=0,a=0,l=1){return super(t,e,i,s,r,h,n,a,l),this}set(t,e,i,s,r,h,n,a,l){return t.length?this.copy(t):(function(t,e,i,s,r,h,n,a,l,o){t[0]=e,t[1]=i,t[2]=s,t[3]=r,t[4]=h,t[5]=n,t[6]=a,t[7]=l,t[8]=o}(this,t,e,i,s,r,h,n,a,l),this)}translate(t,e=this){return function(t,e,i){let s=e[0],r=e[1],h=e[2],n=e[3],a=e[4],l=e[5],o=e[6],u=e[7],g=e[8],d=i[0],c=i[1];t[0]=s,t[1]=r,t[2]=h,t[3]=n,t[4]=a,t[5]=l,t[6]=d*s+c*n+o,t[7]=d*r+c*a+u,t[8]=d*h+c*l+g}(this,e,t),this}rotate(t,e=this){return function(t,e,i){let s=e[0],r=e[1],h=e[2],n=e[3],a=e[4],l=e[5],o=e[6],u=e[7],g=e[8],d=Math.sin(i),c=Math.cos(i);t[0]=c*s+d*n,t[1]=c*r+d*a,t[2]=c*h+d*l,t[3]=c*n-d*s,t[4]=c*a-d*r,t[5]=c*l-d*h,t[6]=o,t[7]=u,t[8]=g}(this,e,t),this}scale(t,e=this){return function(t,e,i){let s=i[0],r=i[1];t[0]=s*e[0],t[1]=s*e[1],t[2]=s*e[2],t[3]=r*e[3],t[4]=r*e[4],t[5]=r*e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8]}(this,e,t),this}multiply(t,e){return e?Y(this,t,e):Y(this,this,t),this}identity(){var t;return(t=this)[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,this}copy(t){var e,i;return i=t,(e=this)[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],this}fromMatrix4(t){var e,i;return i=t,(e=this)[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[4],e[4]=i[5],e[5]=i[6],e[6]=i[8],e[7]=i[9],e[8]=i[10],this}fromQuaternion(t){return function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=i+i,a=s+s,l=r+r,o=i*n,u=s*n,g=s*a,d=r*n,c=r*a,p=r*l,f=h*n,m=h*a,E=h*l;t[0]=1-g-p,t[3]=u-E,t[6]=d+m,t[1]=u+E,t[4]=1-o-p,t[7]=c-f,t[2]=d-m,t[5]=c+f,t[8]=1-o-g}(this,t),this}fromBasis(t,e,i){return this.set(t[0],t[1],t[2],e[0],e[1],e[2],i[0],i[1],i[2]),this}inverse(t=this){return function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=e[4],a=e[5],l=e[6],o=e[7],u=e[8],g=u*n-a*o,d=-u*h+a*l,c=o*h-n*l,p=i*g+s*d+r*c;p&&(p=1/p,t[0]=g*p,t[1]=(-u*s+r*o)*p,t[2]=(a*s-r*n)*p,t[3]=d*p,t[4]=(u*i-r*l)*p,t[5]=(-a*i+r*h)*p,t[6]=c*p,t[7]=(-o*i+s*l)*p,t[8]=(n*i-s*h)*p)}(this,t),this}getNormalMatrix(t){return function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=e[4],a=e[5],l=e[6],o=e[7],u=e[8],g=e[9],d=e[10],c=e[11],p=e[12],f=e[13],m=e[14],E=e[15],x=i*a-s*n,_=i*l-r*n,b=i*o-h*n,M=s*l-r*a,A=s*o-h*a,T=r*o-h*l,w=u*f-g*p,F=u*m-d*p,R=u*E-c*p,y=g*m-d*f,v=g*E-c*f,S=d*E-c*m,C=x*S-_*v+b*y+M*R-A*F+T*w;C&&(C=1/C,t[0]=(a*S-l*v+o*y)*C,t[1]=(l*R-n*S-o*F)*C,t[2]=(n*v-a*R+o*w)*C,t[3]=(r*v-s*S-h*y)*C,t[4]=(i*S-r*R+h*F)*C,t[5]=(s*R-i*v-h*w)*C,t[6]=(f*T-m*A+E*M)*C,t[7]=(m*b-p*T-E*_)*C,t[8]=(p*A-f*b+E*x)*C)}(this,t),this}}let j=0;class Z extends z{constructor(t,{geometry:e,program:i,mode:s=t.TRIANGLES,frustumCulled:r=!0,renderOrder:h=0}={}){super(),t.canvas||console.error(\"gl not passed as first argument to Mesh\"),this.gl=t,this.id=j++,this.geometry=e,this.program=i,this.mode=s,this.frustumCulled=r,this.renderOrder=h,this.modelViewMatrix=new I,this.normalMatrix=new H,this.beforeRenderCallbacks=[],this.afterRenderCallbacks=[]}onBeforeRender(t){return this.beforeRenderCallbacks.push(t),this}onAfterRender(t){return this.afterRenderCallbacks.push(t),this}draw({camera:t}={}){t&&(this.program.uniforms.modelMatrix||Object.assign(this.program.uniforms,{modelMatrix:{value:null},viewMatrix:{value:null},modelViewMatrix:{value:null},normalMatrix:{value:null},projectionMatrix:{value:null},cameraPosition:{value:null}}),this.program.uniforms.projectionMatrix.value=t.projectionMatrix,this.program.uniforms.cameraPosition.value=t.worldPosition,this.program.uniforms.viewMatrix.value=t.viewMatrix,this.modelViewMatrix.multiply(t.viewMatrix,this.worldMatrix),this.normalMatrix.getNormalMatrix(this.modelViewMatrix),this.program.uniforms.modelMatrix.value=this.worldMatrix,this.program.uniforms.modelViewMatrix.value=this.modelViewMatrix,this.program.uniforms.normalMatrix.value=this.normalMatrix),this.beforeRenderCallbacks.forEach(e=>e&&e({mesh:this,camera:t}));let e=this.program.cullFace&&this.worldMatrix.determinant()<0;this.program.use({flipFaces:e}),this.geometry.draw({mode:this.mode,program:this.program}),this.afterRenderCallbacks.forEach(e=>e&&e({mesh:this,camera:t}))}}const $=new Uint8Array(4);function Q(t){return!(t&t-1)}let K=1;class J{constructor(t,{image:e,target:i=t.TEXTURE_2D,type:s=t.UNSIGNED_BYTE,format:r=t.RGBA,internalFormat:h=r,wrapS:n=t.CLAMP_TO_EDGE,wrapT:a=t.CLAMP_TO_EDGE,wrapR:l=t.CLAMP_TO_EDGE,generateMipmaps:o=i===(t.TEXTURE_2D||t.TEXTURE_CUBE_MAP),minFilter:u=(o?t.NEAREST_MIPMAP_LINEAR:t.LINEAR),magFilter:g=t.LINEAR,premultiplyAlpha:d=!1,unpackAlignment:c=4,flipY:p=i==(t.TEXTURE_2D||t.TEXTURE_3D),anisotropy:f=0,level:m=0,width:E,height:x=E,length:_=1}={}){this.gl=t,this.id=K++,this.image=e,this.target=i,this.type=s,this.format=r,this.internalFormat=h,this.minFilter=u,this.magFilter=g,this.wrapS=n,this.wrapT=a,this.wrapR=l,this.generateMipmaps=o,this.premultiplyAlpha=d,this.unpackAlignment=c,this.flipY=p,this.anisotropy=Math.min(f,this.gl.renderer.parameters.maxAnisotropy),this.level=m,this.width=E,this.height=x,this.length=_,this.texture=this.gl.createTexture(),this.store={image:null},this.glState=this.gl.renderer.state,this.state={},this.state.minFilter=this.gl.NEAREST_MIPMAP_LINEAR,this.state.magFilter=this.gl.LINEAR,this.state.wrapS=this.gl.REPEAT,this.state.wrapT=this.gl.REPEAT,this.state.anisotropy=0}bind(){this.glState.textureUnits[this.glState.activeTextureUnit]!==this.id&&(this.gl.bindTexture(this.target,this.texture),this.glState.textureUnits[this.glState.activeTextureUnit]=this.id)}update(t=0){const e=!(this.image===this.store.image&&!this.needsUpdate);if((e||this.glState.textureUnits[t]!==this.id)&&(this.gl.renderer.activeTexture(t),this.bind()),e){if(this.needsUpdate=!1,this.flipY!==this.glState.flipY&&(this.gl.pixelStorei(this.gl.UNPACK_FLIP_Y_WEBGL,this.flipY),this.glState.flipY=this.flipY),this.premultiplyAlpha!==this.glState.premultiplyAlpha&&(this.gl.pixelStorei(this.gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL,this.premultiplyAlpha),this.glState.premultiplyAlpha=this.premultiplyAlpha),this.unpackAlignment!==this.glState.unpackAlignment&&(this.gl.pixelStorei(this.gl.UNPACK_ALIGNMENT,this.unpackAlignment),this.glState.unpackAlignment=this.unpackAlignment),this.minFilter!==this.state.minFilter&&(this.gl.texParameteri(this.target,this.gl.TEXTURE_MIN_FILTER,this.minFilter),this.state.minFilter=this.minFilter),this.magFilter!==this.state.magFilter&&(this.gl.texParameteri(this.target,this.gl.TEXTURE_MAG_FILTER,this.magFilter),this.state.magFilter=this.magFilter),this.wrapS!==this.state.wrapS&&(this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_S,this.wrapS),this.state.wrapS=this.wrapS),this.wrapT!==this.state.wrapT&&(this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_T,this.wrapT),this.state.wrapT=this.wrapT),this.wrapR!==this.state.wrapR&&(this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_R,this.wrapR),this.state.wrapR=this.wrapR),this.anisotropy&&this.anisotropy!==this.state.anisotropy&&(this.gl.texParameterf(this.target,this.gl.renderer.getExtension(\"EXT_texture_filter_anisotropic\").TEXTURE_MAX_ANISOTROPY_EXT,this.anisotropy),this.state.anisotropy=this.anisotropy),this.image){if(this.image.width&&(this.width=this.image.width,this.height=this.image.height),this.target===this.gl.TEXTURE_CUBE_MAP)for(let t=0;t<6;t++)this.gl.texImage2D(this.gl.TEXTURE_CUBE_MAP_POSITIVE_X+t,this.level,this.internalFormat,this.format,this.type,this.image[t]);else if(ArrayBuffer.isView(this.image))this.target===this.gl.TEXTURE_2D?this.gl.texImage2D(this.target,this.level,this.internalFormat,this.width,this.height,0,this.format,this.type,this.image):this.target!==this.gl.TEXTURE_2D_ARRAY&&this.target!==this.gl.TEXTURE_3D||this.gl.texImage3D(this.target,this.level,this.internalFormat,this.width,this.height,this.length,0,this.format,this.type,this.image);else if(this.image.isCompressedTexture)for(let t=0;t<this.image.length;t++)this.gl.compressedTexImage2D(this.target,t,this.internalFormat,this.image[t].width,this.image[t].height,0,this.image[t].data);else this.target===this.gl.TEXTURE_2D?this.gl.texImage2D(this.target,this.level,this.internalFormat,this.format,this.type,this.image):this.gl.texImage3D(this.target,this.level,this.internalFormat,this.width,this.height,this.length,0,this.format,this.type,this.image);this.generateMipmaps&&(this.gl.renderer.isWebgl2||Q(this.image.width)&&Q(this.image.height)?this.gl.generateMipmap(this.target):(this.generateMipmaps=!1,this.wrapS=this.wrapT=this.gl.CLAMP_TO_EDGE,this.minFilter=this.gl.LINEAR)),this.onUpdate&&this.onUpdate()}else if(this.target===this.gl.TEXTURE_CUBE_MAP)for(let t=0;t<6;t++)this.gl.texImage2D(this.gl.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,this.gl.RGBA,1,1,0,this.gl.RGBA,this.gl.UNSIGNED_BYTE,$);else this.width?this.target===this.gl.TEXTURE_2D?this.gl.texImage2D(this.target,this.level,this.internalFormat,this.width,this.height,0,this.format,this.type,null):this.gl.texImage3D(this.target,this.level,this.internalFormat,this.width,this.height,this.length,0,this.format,this.type,null):this.gl.texImage2D(this.target,0,this.gl.RGBA,1,1,0,this.gl.RGBA,this.gl.UNSIGNED_BYTE,$);this.store.image=this.image}}}class tt{constructor(t,{width:e=t.canvas.width,height:i=t.canvas.height,target:s=t.FRAMEBUFFER,color:r=1,depth:h=!0,stencil:n=!1,depthTexture:a=!1,wrapS:l=t.CLAMP_TO_EDGE,wrapT:o=t.CLAMP_TO_EDGE,wrapR:u=t.CLAMP_TO_EDGE,minFilter:g=t.LINEAR,magFilter:d=g,type:c=t.UNSIGNED_BYTE,format:p=t.RGBA,internalFormat:f=p,unpackAlignment:m,premultiplyAlpha:E}={}){this.gl=t,this.width=e,this.height=i,this.depth=h,this.stencil=n,this.buffer=this.gl.createFramebuffer(),this.target=s,this.gl.renderer.bindFramebuffer(this),this.textures=[];const x=[];for(let s=0;s<r;s++)this.textures.push(new J(t,{width:e,height:i,wrapS:l,wrapT:o,wrapR:u,minFilter:g,magFilter:d,type:c,format:p,internalFormat:f,unpackAlignment:m,premultiplyAlpha:E,flipY:!1,generateMipmaps:!1})),this.textures[s].update(),this.gl.framebufferTexture2D(this.target,this.gl.COLOR_ATTACHMENT0+s,this.gl.TEXTURE_2D,this.textures[s].texture,0),x.push(this.gl.COLOR_ATTACHMENT0+s);x.length>1&&this.gl.renderer.drawBuffers(x),this.texture=this.textures[0],a&&(this.gl.renderer.isWebgl2||this.gl.renderer.getExtension(\"WEBGL_depth_texture\"))?(this.depthTexture=new J(t,{width:e,height:i,minFilter:this.gl.NEAREST,magFilter:this.gl.NEAREST,format:this.stencil?this.gl.DEPTH_STENCIL:this.gl.DEPTH_COMPONENT,internalFormat:t.renderer.isWebgl2?this.stencil?this.gl.DEPTH24_STENCIL8:this.gl.DEPTH_COMPONENT16:this.gl.DEPTH_COMPONENT,type:this.stencil?this.gl.UNSIGNED_INT_24_8:this.gl.UNSIGNED_INT}),this.depthTexture.update(),this.gl.framebufferTexture2D(this.target,this.stencil?this.gl.DEPTH_STENCIL_ATTACHMENT:this.gl.DEPTH_ATTACHMENT,this.gl.TEXTURE_2D,this.depthTexture.texture,0)):(h&&!n&&(this.depthBuffer=this.gl.createRenderbuffer(),this.gl.bindRenderbuffer(this.gl.RENDERBUFFER,this.depthBuffer),this.gl.renderbufferStorage(this.gl.RENDERBUFFER,this.gl.DEPTH_COMPONENT16,e,i),this.gl.framebufferRenderbuffer(this.target,this.gl.DEPTH_ATTACHMENT,this.gl.RENDERBUFFER,this.depthBuffer)),n&&!h&&(this.stencilBuffer=this.gl.createRenderbuffer(),this.gl.bindRenderbuffer(this.gl.RENDERBUFFER,this.stencilBuffer),this.gl.renderbufferStorage(this.gl.RENDERBUFFER,this.gl.STENCIL_INDEX8,e,i),this.gl.framebufferRenderbuffer(this.target,this.gl.STENCIL_ATTACHMENT,this.gl.RENDERBUFFER,this.stencilBuffer)),h&&n&&(this.depthStencilBuffer=this.gl.createRenderbuffer(),this.gl.bindRenderbuffer(this.gl.RENDERBUFFER,this.depthStencilBuffer),this.gl.renderbufferStorage(this.gl.RENDERBUFFER,this.gl.DEPTH_STENCIL,e,i),this.gl.framebufferRenderbuffer(this.target,this.gl.DEPTH_STENCIL_ATTACHMENT,this.gl.RENDERBUFFER,this.depthStencilBuffer))),this.gl.renderer.bindFramebuffer({target:this.target})}setSize(t,e){if(this.width!==t||this.height!==e){this.width=t,this.height=e,this.gl.renderer.bindFramebuffer(this);for(let i=0;i<this.textures.length;i++)this.textures[i].width=t,this.textures[i].height=e,this.textures[i].needsUpdate=!0,this.textures[i].update(),this.gl.framebufferTexture2D(this.target,this.gl.COLOR_ATTACHMENT0+i,this.gl.TEXTURE_2D,this.textures[i].texture,0);this.depthTexture?(this.depthTexture.width=t,this.depthTexture.height=e,this.depthTexture.needsUpdate=!0,this.depthTexture.update(),this.gl.framebufferTexture2D(this.target,this.gl.DEPTH_ATTACHMENT,this.gl.TEXTURE_2D,this.depthTexture.texture,0)):(this.depthBuffer&&(this.gl.bindRenderbuffer(this.gl.RENDERBUFFER,this.depthBuffer),this.gl.renderbufferStorage(this.gl.RENDERBUFFER,this.gl.DEPTH_COMPONENT16,t,e)),this.stencilBuffer&&(this.gl.bindRenderbuffer(this.gl.RENDERBUFFER,this.stencilBuffer),this.gl.renderbufferStorage(this.gl.RENDERBUFFER,this.gl.STENCIL_INDEX8,t,e)),this.depthStencilBuffer&&(this.gl.bindRenderbuffer(this.gl.RENDERBUFFER,this.depthStencilBuffer),this.gl.renderbufferStorage(this.gl.RENDERBUFFER,this.gl.DEPTH_STENCIL,t,e))),this.gl.renderer.bindFramebuffer({target:this.target})}}}class et extends f{constructor(t,{width:e=1,height:i=1,widthSegments:s=1,heightSegments:r=1,attributes:h={}}={}){const n=s,a=r,l=(n+1)*(a+1),o=n*a*6,u=new Float32Array(3*l),g=new Float32Array(3*l),d=new Float32Array(2*l),c=o>65536?new Uint32Array(o):new Uint16Array(o);et.buildPlane(u,g,d,c,e,i,0,n,a),Object.assign(h,{position:{size:3,data:u},normal:{size:3,data:g},uv:{size:2,data:d},index:{data:c}}),super(t,h)}static buildPlane(t,e,i,s,r,h,n,a,l,o=0,u=1,g=2,d=1,c=-1,p=0,f=0){const m=p,E=r/a,x=h/l;for(let _=0;_<=l;_++){let b=_*x-h/2;for(let h=0;h<=a;h++,p++){let x=h*E-r/2;if(t[3*p+o]=x*d,t[3*p+u]=b*c,t[3*p+g]=n/2,e[3*p+o]=0,e[3*p+u]=0,e[3*p+g]=n>=0?1:-1,i[2*p]=h/a,i[2*p+1]=1-_/l,_===l||h===a)continue;let M=m+h+_*(a+1),A=m+h+(_+1)*(a+1),T=m+h+(_+1)*(a+1)+1,w=m+h+_*(a+1)+1;s[6*f]=M,s[6*f+1]=A,s[6*f+2]=w,s[6*f+3]=A,s[6*f+4]=T,s[6*f+5]=w,f++}}}}var it,st={};var rt=(it||(it=1,st.resolveLygia=function(t){Array.isArray(t)||(t=t.split(/\\r?\\n/));let e=\"\";return t.forEach((t,i)=>{let s=t.trim();if(s.startsWith('#include \"lygia')){let t=s.substring(15);t=\"https://lygia.xyz\"+t.replace(/\\\"|\\;|\\s/g,\"\"),e+=function(t){let e=new XMLHttpRequest;return e.open(\"GET\",t,!1),e.send(),200==e.status?e.responseText:\"\"}(t)+\"\\n\"}else e+=t+\"\\n\"}),e}),st).resolveLygia;export{W as Camera,Z as Mesh,et as Plane,x as Program,tt as RenderTarget,F as Renderer,J as Texture,rt as resolveLygia};\n","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useRef}from\"react\";import{Renderer,Camera,Mesh,Plane,Program,RenderTarget as OglRenderTarget,Texture}from\"https://cdn.jsdelivr.net/gh/framer-university/components/npm-bundles/ascii-background.js\";import{addPropertyControls,ControlType,RenderTarget as FramerRenderTarget}from\"framer\";// Inline shader sources to avoid special bundler config\n// Intrinsic size used to avoid width/height collapse in Fit layouts\nconst INTRINSIC_WIDTH=600;const INTRINSIC_HEIGHT=400;const DEFAULT_GLYPH_PADDING_PX=2;const DEFAULT_CHARACTERS=\"@%#*+=-:.\";const perlinVertexShader=`#version 300 es\nin vec2 uv;\nin vec2 position;\nout vec2 vUv;\nvoid main() {\n  vUv = uv;\n  gl_Position = vec4(position, 0., 1.); \n}`;const perlinFragmentShader=`#version 300 es\nprecision mediump float;\nuniform float uFrequency;\nuniform float uTime;\nuniform float uSpeed;\nuniform float uValue;\nuniform vec2 uResolution;\nin vec2 vUv;\nout vec4 fragColor;\n\n// Clean Simplex noise from liquid-mask (simplified)\nvec3 mod289(vec3 x) { return x - floor(x * (1.0 / 289.0)) * 289.0; }\nvec4 mod289(vec4 x) { return x - floor(x * (1.0 / 289.0)) * 289.0; }\nvec4 permute(vec4 x) { return mod289(((x * 34.0) + 1.0) * x); }\nvec4 taylorInvSqrt(vec4 r) { return 1.79284291400159 - 0.85373472095314 * r; }\n\nfloat snoise(vec3 v) {\n  const vec2  C = vec2(1.0/6.0, 1.0/3.0) ;\n  const vec4  D = vec4(0.0, 0.5, 1.0, 2.0);\n  \n  // First corner\n  vec3 i  = floor(v + dot(v, C.yyy));\n  vec3 x0 = v - i + dot(i, C.xxx);\n\n  // Other corners\n  vec3 g = step(x0.yzx, x0.xyz);\n  vec3 l = 1.0 - g;\n  vec3 i1 = min( g.xyz, l.zxy );\n  vec3 i2 = max( g.xyz, l.zxy );\n\n  vec3 x1 = x0 - i1 + C.xxx;\n  vec3 x2 = x0 - i2 + C.yyy;\n  vec3 x3 = x0 - D.yyy;\n\n  // Permutations\n  i = mod289(i);\n  vec4 p = permute( permute( permute(\n             i.z + vec4(0.0, i1.z, i2.z, 1.0 ))\n           + i.y + vec4(0.0, i1.y, i2.y, 1.0 ))\n           + i.x + vec4(0.0, i1.x, i2.x, 1.0 ));\n\n  // Gradients: 7x7 points over a square, mapped onto an octahedron.\n  float n_ = 0.142857142857; // 1.0/7.0\n  vec3  ns = n_ * D.wyz - D.xzx;\n\n  vec4 j = p - 49.0 * floor(p * ns.z * ns.z);\n\n  vec4 x_ = floor(j * ns.z);\n  vec4 y_ = floor(j - 7.0 * x_ );\n\n  vec4 x = x_ *ns.x + ns.yyyy;\n  vec4 y = y_ *ns.x + ns.yyyy;\n  vec4 h = 1.0 - abs(x) - abs(y);\n\n  vec4 b0 = vec4( x.xy, y.xy );\n  vec4 b1 = vec4( x.zw, y.zw );\n\n  vec4 s0 = floor(b0)*2.0 + 1.0;\n  vec4 s1 = floor(b1)*2.0 + 1.0;\n  vec4 sh = -step(h, vec4(0.0));\n\n  vec4 a0 = b0.xzyw + s0.xzyw*sh.xxyy ;\n  vec4 a1 = b1.xzyw + s1.xzyw*sh.zzww ;\n\n  vec3 p0 = vec3(a0.xy,h.x);\n  vec3 p1 = vec3(a0.zw,h.y);\n  vec3 p2 = vec3(a1.xy,h.z);\n  vec3 p3 = vec3(a1.zw,h.w);\n\n  // Normalise gradients\n  vec4 norm = taylorInvSqrt(vec4(dot(p0,p0), dot(p1,p1), dot(p2,p2), dot(p3,p3)));\n  p0 *= norm.x;\n  p1 *= norm.y;\n  p2 *= norm.z;\n  p3 *= norm.w;\n\n  // Mix final noise value\n  vec4 m = max(0.6 - vec4(dot(x0,x0), dot(x1,x1), dot(x2,x2), dot(x3,x3)), 0.0);\n  m = m * m;\n  return 42.0 * dot( m*m, vec4( dot(p0,x0), dot(p1,x1), dot(p2,x2), dot(p3,x3) ) );\n}\n\n// Simple 3D noise - no diagonal shifting, just clean organic noise\nfloat cnoise(vec3 p) {\n    return snoise(p);\n}\n\nvec3 hsv2rgb(vec3 c) {\n  vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);\n  vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);\n  return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);\n}\n\nvoid main() {\n  // Maintain aspect ratio and cover behavior for noise domain\n  vec2 uv = vUv;\n  float aspect = uResolution.x / max(uResolution.y, 1.0);\n  uv = (uv - 0.5) * vec2(aspect, 1.0) + 0.5;\n\n  float hue = abs(cnoise(vec3(uv * uFrequency, uTime * uSpeed)));\n  vec3 rainbowColor = hsv2rgb(vec3(hue, 1.0, uValue));\n  fragColor = vec4(rainbowColor, 1.0);\n}`;const asciiVertexShader=`#version 300 es\nin vec2 uv;\nin vec2 position;\nout vec2 vUv;\nvoid main() {\n  vUv = uv;\n  gl_Position = vec4(position, 0., 1.);\n}`;const asciiFragmentShader=`#version 300 es\nprecision highp float;\nuniform vec2 uResolution;\nuniform sampler2D uTexture;\n// Palette controls\nuniform int uUseCustomPalette; // 0: Rainbow (use texture color), 1: Custom palette\nuniform int uPaletteCount; // 1..3\nuniform vec3 uPalette1;\nuniform vec3 uPalette2;\nuniform vec3 uPalette3;\nuniform float uPaletteA1;\nuniform float uPaletteA2;\nuniform float uPaletteA3;\n// ASCII controls\nuniform float uCellSize; // character cell size in pixels (base)\nuniform float uGamma; // grayscale gamma\nuniform float uPaletteBias; // shifts palette mapping -0.5..0.5\n// Glyph atlas controls (optional)\nuniform int uUseGlyphAtlas; // 0: built-in bitmask, 1: sample from atlas\nuniform sampler2D uGlyphAtlas;\nuniform ivec2 uGlyphGrid; // cols, rows\nuniform int uCharCount; // number of glyphs in atlas\nout vec4 fragColor;\n\n// Built-in 5x5 bitmask character for fallback\nfloat character(int n, vec2 p) {\n  p = floor(p * vec2(-4.0, 4.0) + 2.5);\n  if(clamp(p.x, 0.0, 4.0) == p.x && clamp(p.y, 0.0, 4.0) == p.y) {\n    int a = int(round(p.x) + 5.0 * round(p.y));\n    if(((n >> a) & 1) == 1) return 1.0;\n  }\n  return 0.0;\n}\n\nvoid main() {\n  vec2 pix = gl_FragCoord.xy;\n  float quant = max(uCellSize * 2.0, 1.0);\n  vec3 col = texture(uTexture, floor(pix / quant) * quant / uResolution.xy).rgb;\n  float gray = 0.3 * col.r + 0.59 * col.g + 0.11 * col.b;\n  gray = pow(clamp(gray, 0.0001, 1.0), uGamma);\n\n  float cell = max(uCellSize, 1.0);\n  float charAlpha = 0.0;\n\n  if (uUseGlyphAtlas == 1 && uCharCount > 0 && uGlyphGrid.x > 0 && uGlyphGrid.y > 0) {\n    // Select glyph index by density\n    float g = clamp(gray + uPaletteBias, 0.0, 1.0);\n    int idx = int(clamp(floor(g * float(uCharCount - 1) + 0.5), 0.0, float(uCharCount - 1)));\n    // Compute per-cell UV\n    vec2 cellUV = fract(pix / cell);\n    // Atlas tile uv\n    vec2 grid = vec2(uGlyphGrid);\n    vec2 tileSize = 1.0 / grid;\n    float colIdx = float(idx % uGlyphGrid.x);\n    float rowIdx = floor(float(idx) / float(uGlyphGrid.x));\n    vec2 tileOrigin = vec2(colIdx, rowIdx) * tileSize;\n    vec2 atlasUV = tileOrigin + cellUV * tileSize;\n    // Assume glyphs are white-on-black; use luminance as alpha\n    vec3 glyphSample = texture(uGlyphAtlas, atlasUV).rgb;\n    charAlpha = dot(glyphSample, vec3(0.299, 0.587, 0.114));\n  } else {\n    // Fallback to built-in bitmask\n    int n = 4096;\n    if(gray > 0.2) n = 65600;\n    if(gray > 0.3) n = 163153;\n    if(gray > 0.4) n = 15255086;\n    if(gray > 0.5) n = 13121101;\n    if(gray > 0.6) n = 15252014;\n    if(gray > 0.7) n = 13195790;\n    if(gray > 0.8) n = 11512810;\n    vec2 p = mod(pix / cell, 2.0) - vec2(1.0);\n    charAlpha = character(n, p);\n  }\n\n  float g2 = clamp(gray + uPaletteBias, 0.0, 1.0);\n  vec3 paletteColor;\n  float paletteAlpha = 1.0;\n  if (uPaletteCount <= 1) {\n    paletteColor = uPalette1;\n    paletteAlpha = uPaletteA1;\n  } else if (uPaletteCount == 2) {\n    paletteColor = mix(uPalette1, uPalette2, g2);\n    paletteAlpha = mix(uPaletteA1, uPaletteA2, g2);\n  } else {\n    float t = g2 * 2.0;\n    paletteColor = mix(uPalette1, uPalette2, clamp(t, 0.0, 1.0));\n    float t2 = clamp(t - 1.0, 0.0, 1.0);\n    paletteColor = mix(paletteColor, uPalette3, t2);\n    paletteAlpha = mix(mix(uPaletteA1, uPaletteA2, clamp(t, 0.0, 1.0)), uPaletteA3, t2);\n  }\n\n  float charOpacity = (uUseCustomPalette == 1) ? paletteAlpha : 1.0;\n  vec3 asciiCol = (uUseCustomPalette == 1) ? paletteColor : col;\n  fragColor = vec4(asciiCol, charAlpha * charOpacity);\n}`;// CSS variable token and color parsing (hex/rgba/var())\nconst cssVariableRegex=/var\\s*\\(\\s*(--[\\w-]+)(?:\\s*,\\s*((?:[^)(]+|\\((?:[^)(]+|\\([^)(]*\\))*\\))*))?\\s*\\)/;function extractDefaultValue(cssVar){if(!cssVar||!cssVar.startsWith(\"var(\"))return cssVar;const match=cssVariableRegex.exec(cssVar);if(!match)return cssVar;const fallback=(match[2]||\"\").trim();if(fallback.startsWith(\"var(\"))return extractDefaultValue(fallback);return fallback||cssVar;}function resolveTokenColor(input){if(typeof input!==\"string\")return input;if(!input.startsWith(\"var(\"))return input;return extractDefaultValue(input);}function parseColorToRgba(input){if(!input)return{r:0,g:0,b:0,a:1};const str=input.trim();const rgbaMatch=str.match(/rgba?\\(\\s*([\\d.]+)\\s*,\\s*([\\d.]+)\\s*,\\s*([\\d.]+)\\s*(?:,\\s*([\\d.]+)\\s*)?\\)/i);if(rgbaMatch){const r=Math.max(0,Math.min(255,parseFloat(rgbaMatch[1])))/255;const g=Math.max(0,Math.min(255,parseFloat(rgbaMatch[2])))/255;const b=Math.max(0,Math.min(255,parseFloat(rgbaMatch[3])))/255;const a=rgbaMatch[4]!==undefined?Math.max(0,Math.min(1,parseFloat(rgbaMatch[4]))):1;return{r,g,b,a};}const hex=str.replace(/^#/,\"\");if(hex.length===8){return{r:parseInt(hex.slice(0,2),16)/255,g:parseInt(hex.slice(2,4),16)/255,b:parseInt(hex.slice(4,6),16)/255,a:parseInt(hex.slice(6,8),16)/255};}if(hex.length===6){return{r:parseInt(hex.slice(0,2),16)/255,g:parseInt(hex.slice(2,4),16)/255,b:parseInt(hex.slice(4,6),16)/255,a:1};}if(hex.length===4){return{r:parseInt(hex[0]+hex[0],16)/255,g:parseInt(hex[1]+hex[1],16)/255,b:parseInt(hex[2]+hex[2],16)/255,a:parseInt(hex[3]+hex[3],16)/255};}if(hex.length===3){return{r:parseInt(hex[0]+hex[0],16)/255,g:parseInt(hex[1]+hex[1],16)/255,b:parseInt(hex[2]+hex[2],16)/255,a:1};}return{r:0,g:0,b:0,a:1};}function colorStringToVec4(input){const resolved=resolveTokenColor(input);const{r,g,b,a}=parseColorToRgba(resolved);return[r,g,b,a];}// UI → shader mapping helpers (keep visual effect identical while showing nicer numbers)\nfunction mapLinear(value,inMin,inMax,outMin,outMax){if(inMax===inMin)return outMin;const t=(value-inMin)/(inMax-inMin);return outMin+t*(outMax-outMin);}// Frequency: UI [0.1..1] → shader [0.1..10] (1 = big blobs, 0.1 = small blobs)\nfunction mapFrequencyUiToShader(ui){return mapLinear(ui,.1,1,.1,10);}// Speed: UI [0.1..1] → shader [0.2..2] (original shader range used 0..2; play=false still forces 0)\nfunction mapSpeedUiToShader(ui){return ui*.5;}// Cell size: UI [1..100] → shader [4..48]\nfunction mapCellSizeUiToShader(ui){return mapLinear(ui,1,100,4,48);}// Contrast: UI [1..10] → shader gamma [0.5..2.5]\nfunction mapContrastUiToShader(ui){return mapLinear(ui,1,10,.5,2.5);}// Palette balance: UI [-1..1] → shader [-0.5..0.5]\nfunction mapPaletteBiasUiToShader(ui){return ui*.5;}function isCustomGlyphMode(value){return value===true||value===\"Custom\";}// Extract font settings from a Framer Font control payload (or fallbacks)\nfunction deriveFontSettings(font,fallbackFamily,fallbackWeight,fallbackSizePx){const family=font&&(font.family||font.fontFamily)||fallbackFamily;const weight=font&&(font.weight||font.fontWeight)||fallbackWeight;const sizeRaw=(font&&(font.fontSize??font.size))??fallbackSizePx;let sizePx=typeof sizeRaw===\"string\"?parseFloat(sizeRaw):Number(sizeRaw);if(!Number.isFinite(sizePx)||sizePx<=0)sizePx=fallbackSizePx;return{family,weight,sizePx};}// Build a glyph atlas texture from a custom font and character set\nfunction buildGlyphAtlas(gl,characters,fontFamily,fontWeight,fontSizePx,paddingPx){const count=Math.max(1,characters.length);const cols=Math.ceil(Math.sqrt(count));const rows=Math.ceil(count/cols);const cellPx=Math.max(8,fontSizePx+paddingPx*2);const dpr=Math.min(window.devicePixelRatio||1,2);const canvas=document.createElement(\"canvas\");canvas.width=cols*cellPx*dpr;canvas.height=rows*cellPx*dpr;const ctx=canvas.getContext(\"2d\");ctx.scale(dpr,dpr);ctx.clearRect(0,0,canvas.width,canvas.height);ctx.fillStyle=\"#000\";ctx.fillRect(0,0,canvas.width/dpr,canvas.height/dpr);ctx.fillStyle=\"#fff\";ctx.textAlign=\"center\";ctx.textBaseline=\"middle\";ctx.font=`${fontWeight} ${fontSizePx}px ${fontFamily}`;for(let i=0;i<count;i++){const cx=i%cols;const cy=Math.floor(i/cols);const x=cx*cellPx+cellPx/2;const y=cy*cellPx+cellPx/2;ctx.fillText(characters[i],x,y);}const texture=new Texture(gl,{image:canvas,wrapS:gl.CLAMP_TO_EDGE,wrapT:gl.CLAMP_TO_EDGE,generateMipmaps:false,// Flip Y so canvas y-up maps correctly into texture coordinates\nflipY:true});return{texture,cols,rows,cellPx,count};}/**\n * @framerDisableUnlink\n * @framerIntrisicHeight 300\n * @framerIntrisicHeight 600\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function ASCIIBackground(props){const{frequency=.5,speed=.375,play=true,mode=\"Rainbow\",paletteCount=3,bgColor=\"#000000\",color1=\"#ffffff\",color2=\"#ff8000\",color3=\"#3399ff\",cellSize=50,gamma=5.5,paletteBias=0,style,useGlyphAtlas=false,characters=DEFAULT_CHARACTERS,fontFamily=\"monospace\",fontWeight=400,fontSizePx=42,font,colors}=props;const useGlyphAtlasFlag=isCustomGlyphMode(useGlyphAtlas);// Compute palette values (support both legacy top-level props and new nested colors object)\nconst paletteCountEffective=colors?.paletteCount??paletteCount;const color1Effective=colors?.color1??color1;const color2Effective=colors?.color2??color2;const color3Effective=colors?.color3??color3;const effectiveCharacters=(()=>{const raw=typeof characters===\"string\"?characters:\"\";const sanitized=Array.from(raw).filter(ch=>!/\\s/.test(ch)).join(\"\");return sanitized.length>0?sanitized:DEFAULT_CHARACTERS;})();// If not in Framer's canvas, always play\nconst isCanvas=(()=>{try{return FramerRenderTarget.current()===FramerRenderTarget.canvas;}catch{return false;}})();const effectivePlay=isCanvas?play:true;const canvasContainerRef=useRef(null);const perlinProgramRef=useRef(null);const asciiProgramRef=useRef(null);const rendererRef=useRef(null);const cameraRef=useRef(null);const perlinMeshRef=useRef(null);const asciiMeshRef=useRef(null);const renderTargetRef=useRef(null);const glRef=useRef(null);const rafIdRef=useRef(null);const lastTimeRef=useRef(0);const isPlayingRef=useRef(effectivePlay);const glyphTextureRef=useRef(null);const glyphGridRef=useRef(null);const dummyGlyphTextureRef=useRef(null);// Helper to render a single frame without scheduling RAF\nconst renderOnce=()=>{const renderer=rendererRef.current;const camera=cameraRef.current;const perlinMesh=perlinMeshRef.current;const asciiMesh=asciiMeshRef.current;const renderTarget=renderTargetRef.current;const gl=glRef.current;const asciiProgram=asciiProgramRef.current;if(!renderer||!camera||!perlinMesh||!asciiMesh||!renderTarget||!gl||!asciiProgram)return;renderer.render({scene:perlinMesh,camera,target:renderTarget});asciiProgram.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];renderer.render({scene:asciiMesh,camera});};useEffect(()=>{let rafId=0;let resizeHandler=null;let resizeObserver=null;const container=canvasContainerRef.current;if(!container)return;const renderer=new Renderer({dpr:Math.min(window.devicePixelRatio||1,2),alpha:true,premultipliedAlpha:false});const gl=renderer.gl;container.appendChild(gl.canvas);rendererRef.current=renderer;glRef.current=gl;const camera=new Camera(gl,{near:.1,far:100});camera.position.set(0,0,3);cameraRef.current=camera;const doResize=()=>{const width=container.clientWidth||window.innerWidth;const height=container.clientHeight||window.innerHeight;renderer.setSize(width,height);camera.perspective({aspect:gl.canvas.width/gl.canvas.height});// keep offscreen target and uniforms in sync with canvas size\nif(renderTargetRef.current&&renderTargetRef.current.setSize){renderTargetRef.current.setSize(gl.canvas.width,gl.canvas.height);}if(perlinProgramRef.current){perlinProgramRef.current.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];}};// Throttled resize scheduler (one per animation frame)\nlet resizePending=false;const scheduleResize=()=>{if(resizePending)return;resizePending=true;requestAnimationFrame(()=>{resizePending=false;doResize();if(!isPlayingRef.current){renderOnce();}});};resizeHandler=scheduleResize;window.addEventListener(\"resize\",scheduleResize);// Observe the container element's size changes (Framer canvas resizes)\nif(typeof window.ResizeObserver!==\"undefined\"){resizeObserver=new window.ResizeObserver(scheduleResize);resizeObserver.observe(container);}scheduleResize();// Perlin noise pass\nconst perlinProgram=new Program(gl,{vertex:perlinVertexShader,fragment:perlinFragmentShader,uniforms:{uTime:{value:0},uFrequency:{value:mapFrequencyUiToShader(frequency)},uSpeed:{value:effectivePlay?mapSpeedUiToShader(speed):0},uValue:{value:1},uResolution:{value:[gl.canvas.width,gl.canvas.height]}}});perlinProgramRef.current=perlinProgram;const perlinMesh=new Mesh(gl,{geometry:new Plane(gl,{width:2,height:2}),program:perlinProgram});perlinMeshRef.current=perlinMesh;const renderTarget=new OglRenderTarget(gl);renderTargetRef.current=renderTarget;// Prepare a dummy glyph texture so the sampler uniform is always valid\nconst dummyGlyphTexture=new Texture(gl,{width:1,height:1,generateMipmaps:false,flipY:false});dummyGlyphTextureRef.current=dummyGlyphTexture;// ASCII pass\nconst asciiProgram=new Program(gl,{vertex:asciiVertexShader,fragment:asciiFragmentShader,uniforms:{uResolution:{value:[gl.canvas.width,gl.canvas.height]},uTexture:{value:renderTarget.texture},uUseCustomPalette:{value:mode===\"Custom\"?1:0},uPaletteCount:{value:paletteCountEffective},uPalette1:{value:colorStringToVec4(color1Effective).slice(0,3)},uPalette2:{value:colorStringToVec4(color2Effective).slice(0,3)},uPalette3:{value:colorStringToVec4(color3Effective).slice(0,3)},uPaletteA1:{value:colorStringToVec4(color1Effective)[3]},uPaletteA2:{value:colorStringToVec4(color2Effective)[3]},uPaletteA3:{value:colorStringToVec4(color3Effective)[3]},uCellSize:{value:mapCellSizeUiToShader(cellSize)},uGamma:{value:mapContrastUiToShader(gamma)},uPaletteBias:{value:mapPaletteBiasUiToShader(paletteBias)},// Glyph atlas uniforms (initialized with dummy texture)\nuUseGlyphAtlas:{value:useGlyphAtlasFlag?1:0},uGlyphAtlas:{value:dummyGlyphTexture},uGlyphGrid:{value:[0,0]},uCharCount:{value:0}}});asciiProgramRef.current=asciiProgram;const asciiMesh=new Mesh(gl,{geometry:new Plane(gl,{width:2,height:2}),program:asciiProgram});asciiMeshRef.current=asciiMesh;// Optionally build glyph atlas\nif(useGlyphAtlasFlag){try{const f=deriveFontSettings(font,fontFamily,fontWeight,fontSizePx);const fontCSS=`${f.weight} ${f.sizePx}px ${f.family}`;if(document.fonts&&document.fonts.load){document.fonts.load(fontCSS).catch(()=>{});}}catch{}const atlas=buildGlyphAtlas(gl,effectiveCharacters,deriveFontSettings(font,fontFamily,fontWeight,fontSizePx).family,deriveFontSettings(font,fontFamily,fontWeight,fontSizePx).weight,deriveFontSettings(font,fontFamily,fontWeight,fontSizePx).sizePx,DEFAULT_GLYPH_PADDING_PX);glyphTextureRef.current=atlas.texture;glyphGridRef.current={cols:atlas.cols,rows:atlas.rows,count:atlas.count};asciiProgram.uniforms.uGlyphAtlas.value=atlas.texture;asciiProgram.uniforms.uGlyphGrid.value=[atlas.cols,atlas.rows];asciiProgram.uniforms.uCharCount.value=atlas.count;asciiProgram.uniforms.uUseGlyphAtlas.value=1;}const frameInterval=1e3/30// 30 FPS\n;const update=time=>{if(!isPlayingRef.current){rafIdRef.current=null;return;}const last=lastTimeRef.current;if(time-last<frameInterval){rafIdRef.current=requestAnimationFrame(update);return;}lastTimeRef.current=time;const elapsedTime=time*.001;perlinProgram.uniforms.uTime.value=elapsedTime;renderer.render({scene:perlinMesh,camera,target:renderTarget});asciiProgram.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];perlinProgram.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];renderer.render({scene:asciiMesh,camera});rafIdRef.current=requestAnimationFrame(update);};// initial render\nrenderOnce();// start loop if playing\nisPlayingRef.current=effectivePlay;if(effectivePlay&&rafIdRef.current==null){lastTimeRef.current=0;rafIdRef.current=requestAnimationFrame(update);}return()=>{if(rafIdRef.current)cancelAnimationFrame(rafIdRef.current);if(resizeHandler)window.removeEventListener(\"resize\",resizeHandler);if(resizeObserver){try{resizeObserver.disconnect();}catch{}resizeObserver=null;}// Dispose glyph texture if any\nif(glyphTextureRef.current){try{const tex=glyphTextureRef.current;if(typeof tex.destroy===\"function\")tex.destroy();else if(typeof tex.delete===\"function\")tex.delete();}catch{}glyphTextureRef.current=null;glyphGridRef.current=null;}// Dispose dummy glyph texture\nif(dummyGlyphTextureRef.current){try{const tex=dummyGlyphTextureRef.current;if(typeof tex.destroy===\"function\")tex.destroy();else if(typeof tex.delete===\"function\")tex.delete();}catch{}dummyGlyphTextureRef.current=null;}if(gl&&gl.canvas&&gl.canvas.parentElement===container){container.removeChild(gl.canvas);}perlinProgramRef.current=null;asciiProgramRef.current=null;rendererRef.current=null;cameraRef.current=null;perlinMeshRef.current=null;asciiMeshRef.current=null;renderTargetRef.current=null;glRef.current=null;rafIdRef.current=null;};// eslint-disable-next-line react-hooks/exhaustive-deps\n},[]);// live update uniforms when props change\nuseEffect(()=>{const perlin=perlinProgramRef.current;if(perlin){perlin.uniforms.uFrequency.value=mapFrequencyUiToShader(frequency);perlin.uniforms.uSpeed.value=effectivePlay?mapSpeedUiToShader(speed):0;}const ascii=asciiProgramRef.current;if(ascii){ascii.uniforms.uUseCustomPalette.value=mode===\"Custom\"?1:0;ascii.uniforms.uPaletteCount.value=paletteCountEffective;const p1=colorStringToVec4(color1Effective);const p2=colorStringToVec4(color2Effective);const p3=colorStringToVec4(color3Effective);ascii.uniforms.uPalette1.value=[p1[0],p1[1],p1[2]];ascii.uniforms.uPalette2.value=[p2[0],p2[1],p2[2]];ascii.uniforms.uPalette3.value=[p3[0],p3[1],p3[2]];ascii.uniforms.uPaletteA1.value=p1[3];ascii.uniforms.uPaletteA2.value=p2[3];ascii.uniforms.uPaletteA3.value=p3[3];ascii.uniforms.uCellSize.value=mapCellSizeUiToShader(cellSize);ascii.uniforms.uGamma.value=mapContrastUiToShader(gamma);ascii.uniforms.uPaletteBias.value=mapPaletteBiasUiToShader(paletteBias);// Update glyph atlas\nif(useGlyphAtlasFlag&&glRef.current){// Rebuild atlas whenever any relevant input changes\nif(glyphTextureRef.current){try{const tex=glyphTextureRef.current;if(typeof tex.destroy===\"function\")tex.destroy();else if(typeof tex.delete===\"function\")tex.delete();}catch{}glyphTextureRef.current=null;glyphGridRef.current=null;}try{const gl=glRef.current;const f=deriveFontSettings(font,fontFamily,fontWeight,fontSizePx);const atlas=buildGlyphAtlas(gl,effectiveCharacters,f.family,f.weight,f.sizePx,DEFAULT_GLYPH_PADDING_PX);glyphTextureRef.current=atlas.texture;glyphGridRef.current={cols:atlas.cols,rows:atlas.rows,count:atlas.count};ascii.uniforms.uGlyphAtlas.value=atlas.texture;ascii.uniforms.uGlyphGrid.value=[atlas.cols,atlas.rows];ascii.uniforms.uCharCount.value=atlas.count;ascii.uniforms.uUseGlyphAtlas.value=1;}catch{ascii.uniforms.uUseGlyphAtlas.value=0;ascii.uniforms.uCharCount.value=0;// fall back to dummy texture\nif(dummyGlyphTextureRef.current){ascii.uniforms.uGlyphAtlas.value=dummyGlyphTextureRef.current;}}}else{ascii.uniforms.uUseGlyphAtlas.value=0;ascii.uniforms.uCharCount.value=0;// ensure sampler has a valid texture bound\nif(dummyGlyphTextureRef.current){ascii.uniforms.uGlyphAtlas.value=dummyGlyphTextureRef.current;}}}// sync resolution uniforms on change\nif(rendererRef.current&&glRef.current){const gl=glRef.current;if(perlin)perlin.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];if(ascii)ascii.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];}// whenever uniforms change and we're not playing, render a single frame\nif(!isPlayingRef.current){renderOnce();}},[effectivePlay,play,frequency,speed,mode,paletteCountEffective,bgColor,color1Effective,color2Effective,color3Effective,cellSize,gamma,paletteBias,useGlyphAtlas,characters,font,colors]);// Play/pause controller for RAF lifecycle\nuseEffect(()=>{isPlayingRef.current=effectivePlay;if(!rendererRef.current)return;if(effectivePlay){if(rafIdRef.current==null){lastTimeRef.current=0;rafIdRef.current=requestAnimationFrame(function update(time){// delegate to the setup loop by forcing a re-use\nconst perlin=perlinProgramRef.current;const ascii=asciiProgramRef.current;const renderer=rendererRef.current;const camera=cameraRef.current;const perlinMesh=perlinMeshRef.current;const asciiMesh=asciiMeshRef.current;const renderTarget=renderTargetRef.current;const gl=glRef.current;if(!isPlayingRef.current||!perlin||!ascii||!renderer||!camera||!perlinMesh||!asciiMesh||!renderTarget||!gl){rafIdRef.current=null;return;}const last=lastTimeRef.current;const frameInterval=1e3/30;if(time-last<frameInterval){rafIdRef.current=requestAnimationFrame(update);return;}lastTimeRef.current=time;perlin.uniforms.uTime.value=time*.001;renderer.render({scene:perlinMesh,camera,target:renderTarget});ascii.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];renderer.render({scene:asciiMesh,camera});rafIdRef.current=requestAnimationFrame(update);});}}else{if(rafIdRef.current){cancelAnimationFrame(rafIdRef.current);rafIdRef.current=null;}renderOnce();}},[effectivePlay,play]);return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"100%\",height:\"100%\",// Background color applied here, not inside the shader\nbackground:bgColor,lineHeight:0,minWidth:0,minHeight:0,overflow:\"hidden\",...style},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:`${INTRINSIC_WIDTH}px`,height:`${INTRINSIC_HEIGHT}px`,minWidth:`${INTRINSIC_WIDTH}px`,minHeight:`${INTRINSIC_HEIGHT}px`,visibility:\"hidden\",position:\"absolute\",pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(\"div\",{ref:canvasContainerRef,style:{position:\"absolute\",inset:0}})]});}ASCIIBackground.defaultProps={frequency:.5,speed:.375,play:true,mode:\"Rainbow\",paletteCount:3,bgColor:\"#000000\",color1:\"#ffffff\",color2:\"#ff8000\",color3:\"#3399ff\",cellSize:50,gamma:5.5,paletteBias:0,useGlyphAtlas:false,characters:\"@%#*+=-:. \",fontFamily:\"monospace\",fontWeight:400,fontSizePx:42};addPropertyControls(ASCIIBackground,{play:{type:ControlType.Boolean,title:\"On canvas\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},frequency:{type:ControlType.Number,title:\"Frequency\",min:.05,max:1,step:.05,defaultValue:.5},speed:{type:ControlType.Number,title:\"Speed\",min:0,max:1,step:.1,defaultValue:.5},mode:{type:ControlType.Enum,title:\"Style\",options:[\"Rainbow\",\"Custom\"],optionTitles:[\"Rainbow\",\"Custom\"],defaultValue:\"Rainbow\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},bgColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#000000\"},colors:{type:ControlType.Object,title:\"Colors\",hidden:p=>p.mode!==\"Custom\",controls:{paletteCount:{type:ControlType.Number,title:\"Palette Size\",min:1,max:3,step:1,defaultValue:3},color1:{type:ControlType.Color,title:\"Color 1\",defaultValue:\"#ffffff\"},color2:{type:ControlType.Color,title:\"Color 2\",defaultValue:\"#ff8000\",hidden:o=>(o?.paletteCount??3)<2},color3:{type:ControlType.Color,title:\"Color 3\",defaultValue:\"#3399ff\",hidden:o=>(o?.paletteCount??3)<3}}},useGlyphAtlas:{type:ControlType.Enum,title:\"Font Type\",options:[\"Default\",\"Custom\"],optionTitles:[\"Default\",\"Custom\"],defaultValue:\"Default\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},font:{type:ControlType.Font,controls:\"extended\",defaultFontType:\"monospace\",defaultValue:{fontSize:16,lineHeight:1.5},hidden:p=>p.useGlyphAtlas===\"Default\"},characters:{type:ControlType.String,title:\"Characters\",defaultValue:\"@%#*+=-:.\",placeholder:\"e.g. @%#*+=-:. \",hidden:props=>props.useGlyphAtlas===\"Default\"},cellSize:{type:ControlType.Number,title:\"Cell Size\",min:1,max:100,step:1,defaultValue:50},paletteBias:{type:ControlType.Number,title:\"Shift\",min:-1,max:1,step:.01,defaultValue:0,hidden:props=>props.mode===\"Rainbow\"},gamma:{type:ControlType.Number,title:\"Contrast\",min:1,max:10,step:.1,defaultValue:5.5,description:\"More components at [Framer University](https://frameruni.link/cc).\"}});ASCIIBackground.displayName=\"ASCII Background\";\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ASCIIBackground\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"* @framerIntrisicHeight 300\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrisicHeight\":\"600\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ASCII_background_Prod.map","function clamp(t,e,i){return Math.max(t,Math.min(e,i))}class Animate{advance(t){if(!this.isRunning)return;let e=!1;if(this.lerp)this.value=function damp(t,e,i,s){return function lerp(t,e,i){return(1-i)*t+i*e}(t,e,1-Math.exp(-i*s))}(this.value,this.to,60*this.lerp,t),Math.round(this.value)===this.to&&(this.value=this.to,e=!0);else{this.currentTime+=t;const i=clamp(0,this.currentTime/this.duration,1);e=i>=1;const s=e?1:this.easing(i);this.value=this.from+(this.to-this.from)*s}e&&this.stop(),this.onUpdate?.(this.value,e)}stop(){this.isRunning=!1}fromTo(t,e,{lerp:i=.1,duration:s=1,easing:o=(t=>t),onStart:n,onUpdate:r}){this.from=this.value=t,this.to=e,this.lerp=i,this.duration=s,this.easing=o,this.currentTime=0,this.isRunning=!0,n?.(),this.onUpdate=r}}class Dimensions{constructor({wrapper:t,content:e,autoResize:i=!0,debounce:s=250}={}){this.wrapper=t,this.content=e,i&&(this.debouncedResize=function debounce(t,e){let i;return function(){let s=arguments,o=this;clearTimeout(i),i=setTimeout((function(){t.apply(o,s)}),e)}}(this.resize,s),this.wrapper===window?window.addEventListener(\"resize\",this.debouncedResize,!1):(this.wrapperResizeObserver=new ResizeObserver(this.debouncedResize),this.wrapperResizeObserver.observe(this.wrapper)),this.contentResizeObserver=new ResizeObserver(this.debouncedResize),this.contentResizeObserver.observe(this.content)),this.resize()}destroy(){this.wrapperResizeObserver?.disconnect(),this.contentResizeObserver?.disconnect(),window.removeEventListener(\"resize\",this.debouncedResize,!1)}resize=()=>{this.onWrapperResize(),this.onContentResize()};onWrapperResize=()=>{this.wrapper===window?(this.width=window.innerWidth,this.height=window.innerHeight):(this.width=this.wrapper.clientWidth,this.height=this.wrapper.clientHeight)};onContentResize=()=>{this.wrapper===window?(this.scrollHeight=this.content.scrollHeight,this.scrollWidth=this.content.scrollWidth):(this.scrollHeight=this.wrapper.scrollHeight,this.scrollWidth=this.wrapper.scrollWidth)};get limit(){return{x:this.scrollWidth-this.width,y:this.scrollHeight-this.height}}}class Emitter{constructor(){this.events={}}emit(t,...e){let i=this.events[t]||[];for(let t=0,s=i.length;t<s;t++)i[t](...e)}on(t,e){return this.events[t]?.push(e)||(this.events[t]=[e]),()=>{this.events[t]=this.events[t]?.filter((t=>e!==t))}}off(t,e){this.events[t]=this.events[t]?.filter((t=>e!==t))}destroy(){this.events={}}}const t=100/6;class VirtualScroll{constructor(t,{wheelMultiplier:e=1,touchMultiplier:i=1}){this.element=t,this.wheelMultiplier=e,this.touchMultiplier=i,this.touchStart={x:null,y:null},this.emitter=new Emitter,window.addEventListener(\"resize\",this.onWindowResize,!1),this.onWindowResize(),this.element.addEventListener(\"wheel\",this.onWheel,{passive:!1}),this.element.addEventListener(\"touchstart\",this.onTouchStart,{passive:!1}),this.element.addEventListener(\"touchmove\",this.onTouchMove,{passive:!1}),this.element.addEventListener(\"touchend\",this.onTouchEnd,{passive:!1})}on(t,e){return this.emitter.on(t,e)}destroy(){this.emitter.destroy(),window.removeEventListener(\"resize\",this.onWindowResize,!1),this.element.removeEventListener(\"wheel\",this.onWheel,{passive:!1}),this.element.removeEventListener(\"touchstart\",this.onTouchStart,{passive:!1}),this.element.removeEventListener(\"touchmove\",this.onTouchMove,{passive:!1}),this.element.removeEventListener(\"touchend\",this.onTouchEnd,{passive:!1})}onTouchStart=t=>{const{clientX:e,clientY:i}=t.targetTouches?t.targetTouches[0]:t;this.touchStart.x=e,this.touchStart.y=i,this.lastDelta={x:0,y:0},this.emitter.emit(\"scroll\",{deltaX:0,deltaY:0,event:t})};onTouchMove=t=>{const{clientX:e,clientY:i}=t.targetTouches?t.targetTouches[0]:t,s=-(e-this.touchStart.x)*this.touchMultiplier,o=-(i-this.touchStart.y)*this.touchMultiplier;this.touchStart.x=e,this.touchStart.y=i,this.lastDelta={x:s,y:o},this.emitter.emit(\"scroll\",{deltaX:s,deltaY:o,event:t})};onTouchEnd=t=>{this.emitter.emit(\"scroll\",{deltaX:this.lastDelta.x,deltaY:this.lastDelta.y,event:t})};onWheel=e=>{let{deltaX:i,deltaY:s,deltaMode:o}=e;i*=1===o?t:2===o?this.windowWidth:1,s*=1===o?t:2===o?this.windowHeight:1,i*=this.wheelMultiplier,s*=this.wheelMultiplier,this.emitter.emit(\"scroll\",{deltaX:i,deltaY:s,event:e})};onWindowResize=()=>{this.windowWidth=window.innerWidth,this.windowHeight=window.innerHeight}}class Lenis{constructor({wrapper:t=window,content:e=document.documentElement,wheelEventsTarget:i=t,eventsTarget:s=i,smoothWheel:o=!0,syncTouch:n=!1,syncTouchLerp:r=.075,touchInertiaMultiplier:l=35,duration:h,easing:a=(t=>Math.min(1,1.001-Math.pow(2,-10*t))),lerp:c=!h&&.1,infinite:u=!1,orientation:d=\"vertical\",gestureOrientation:p=\"vertical\",touchMultiplier:m=1,wheelMultiplier:v=1,autoResize:g=!0,prevent:w=!1,__experimental__naiveDimensions:S=!1}={}){this.__isScrolling=!1,this.__isStopped=!1,this.__isLocked=!1,this.onVirtualScroll=({deltaX:t,deltaY:e,event:i})=>{if(i.ctrlKey)return;const s=i.type.includes(\"touch\"),o=i.type.includes(\"wheel\");this.isTouching=\"touchstart\"===i.type||\"touchmove\"===i.type;if(this.options.syncTouch&&s&&\"touchstart\"===i.type&&!this.isStopped&&!this.isLocked)return void this.reset();const n=0===t&&0===e,r=\"vertical\"===this.options.gestureOrientation&&0===e||\"horizontal\"===this.options.gestureOrientation&&0===t;if(n||r)return;let l=i.composedPath();l=l.slice(0,l.indexOf(this.rootElement));const h=this.options.prevent;if(l.find((t=>{var e,i,n,r,l;return(\"function\"==typeof h?null==h?void 0:h(t):h)||(null===(e=t.hasAttribute)||void 0===e?void 0:e.call(t,\"data-lenis-prevent\"))||s&&(null===(i=t.hasAttribute)||void 0===i?void 0:i.call(t,\"data-lenis-prevent-touch\"))||o&&(null===(n=t.hasAttribute)||void 0===n?void 0:n.call(t,\"data-lenis-prevent-wheel\"))||(null===(r=t.classList)||void 0===r?void 0:r.contains(\"lenis\"))&&!(null===(l=t.classList)||void 0===l?void 0:l.contains(\"lenis-stopped\"))})))return;if(this.isStopped||this.isLocked)return void i.preventDefault();if(!(this.options.syncTouch&&s||this.options.smoothWheel&&o))return this.isScrolling=\"native\",void this.animate.stop();i.preventDefault();let a=e;\"both\"===this.options.gestureOrientation?a=Math.abs(e)>Math.abs(t)?e:t:\"horizontal\"===this.options.gestureOrientation&&(a=t);const c=s&&this.options.syncTouch,u=s&&\"touchend\"===i.type&&Math.abs(a)>5;u&&(a=this.velocity*this.options.touchInertiaMultiplier),this.scrollTo(this.targetScroll+a,Object.assign({programmatic:!1},c?{lerp:u?this.options.syncTouchLerp:1}:{lerp:this.options.lerp,duration:this.options.duration,easing:this.options.easing}))},this.onNativeScroll=()=>{if(clearTimeout(this.__resetVelocityTimeout),delete this.__resetVelocityTimeout,this.__preventNextNativeScrollEvent)delete this.__preventNextNativeScrollEvent;else if(!1===this.isScrolling||\"native\"===this.isScrolling){const t=this.animatedScroll;this.animatedScroll=this.targetScroll=this.actualScroll,this.lastVelocity=this.velocity,this.velocity=this.animatedScroll-t,this.direction=Math.sign(this.animatedScroll-t),this.isScrolling=\"native\",this.emit(),0!==this.velocity&&(this.__resetVelocityTimeout=setTimeout((()=>{this.lastVelocity=this.velocity,this.velocity=0,this.isScrolling=!1,this.emit()}),400))}},window.lenisVersion=\"1.1.2\",t!==document.documentElement&&t!==document.body||(t=window),this.options={wrapper:t,content:e,wheelEventsTarget:i,eventsTarget:s,smoothWheel:o,syncTouch:n,syncTouchLerp:r,touchInertiaMultiplier:l,duration:h,easing:a,lerp:c,infinite:u,gestureOrientation:p,orientation:d,touchMultiplier:m,wheelMultiplier:v,autoResize:g,prevent:w,__experimental__naiveDimensions:S},this.animate=new Animate,this.emitter=new Emitter,this.dimensions=new Dimensions({wrapper:t,content:e,autoResize:g}),this.updateClassName(),this.userData={},this.time=0,this.velocity=this.lastVelocity=0,this.isLocked=!1,this.isStopped=!1,this.isScrolling=!1,this.targetScroll=this.animatedScroll=this.actualScroll,this.options.wrapper.addEventListener(\"scroll\",this.onNativeScroll,!1),this.virtualScroll=new VirtualScroll(s,{touchMultiplier:m,wheelMultiplier:v}),this.virtualScroll.on(\"scroll\",this.onVirtualScroll)}destroy(){this.emitter.destroy(),this.options.wrapper.removeEventListener(\"scroll\",this.onNativeScroll,!1),this.virtualScroll.destroy(),this.dimensions.destroy(),this.cleanUpClassName()}on(t,e){return this.emitter.on(t,e)}off(t,e){return this.emitter.off(t,e)}setScroll(t){this.isHorizontal?this.rootElement.scrollLeft=t:this.rootElement.scrollTop=t}resize(){this.dimensions.resize()}emit({userData:t={}}={}){this.userData=t,this.emitter.emit(\"scroll\",this),this.userData={}}reset(){this.isLocked=!1,this.isScrolling=!1,this.animatedScroll=this.targetScroll=this.actualScroll,this.lastVelocity=this.velocity=0,this.animate.stop()}start(){this.isStopped&&(this.isStopped=!1,this.reset())}stop(){this.isStopped||(this.isStopped=!0,this.animate.stop(),this.reset())}raf(t){const e=t-(this.time||t);this.time=t,this.animate.advance(.001*e)}scrollTo(t,{offset:e=0,immediate:i=!1,lock:s=!1,duration:o=this.options.duration,easing:n=this.options.easing,lerp:r=!o&&this.options.lerp,onStart:l,onComplete:h,force:a=!1,programmatic:c=!0,userData:u={}}={}){if(!this.isStopped&&!this.isLocked||a){if([\"top\",\"left\",\"start\"].includes(t))t=0;else if([\"bottom\",\"right\",\"end\"].includes(t))t=this.limit;else{let i;if(\"string\"==typeof t?i=document.querySelector(t):(null==t?void 0:t.nodeType)&&(i=t),i){if(this.options.wrapper!==window){const t=this.options.wrapper.getBoundingClientRect();e-=this.isHorizontal?t.left:t.top}const s=i.getBoundingClientRect();t=(this.isHorizontal?s.left:s.top)+this.animatedScroll}}if(\"number\"==typeof t){if(t+=e,t=Math.round(t),this.options.infinite?c&&(this.targetScroll=this.animatedScroll=this.scroll):t=clamp(0,t,this.limit),i)return this.animatedScroll=this.targetScroll=t,this.setScroll(this.scroll),this.reset(),void(null==h||h(this));t!==this.targetScroll&&(c||(this.targetScroll=t),this.animate.fromTo(this.animatedScroll,t,{duration:o,easing:n,lerp:r,onStart:()=>{s&&(this.isLocked=!0),this.isScrolling=\"smooth\",null==l||l(this)},onUpdate:(t,e)=>{this.isScrolling=\"smooth\",this.lastVelocity=this.velocity,this.velocity=t-this.animatedScroll,this.direction=Math.sign(this.velocity),this.animatedScroll=t,this.setScroll(this.scroll),c&&(this.targetScroll=t),e||this.emit({userData:u}),e&&(this.reset(),this.emit({userData:u}),null==h||h(this),this.__preventNextNativeScrollEvent=!0)}}))}}}get rootElement(){return this.options.wrapper===window?document.documentElement:this.options.wrapper}get limit(){return this.options.__experimental__naiveDimensions?this.isHorizontal?this.rootElement.scrollWidth-this.rootElement.clientWidth:this.rootElement.scrollHeight-this.rootElement.clientHeight:this.dimensions.limit[this.isHorizontal?\"x\":\"y\"]}get isHorizontal(){return\"horizontal\"===this.options.orientation}get actualScroll(){return this.isHorizontal?this.rootElement.scrollLeft:this.rootElement.scrollTop}get scroll(){return this.options.infinite?function modulo(t,e){return(t%e+e)%e}(this.animatedScroll,this.limit):this.animatedScroll}get progress(){return 0===this.limit?1:this.scroll/this.limit}get isScrolling(){return this.__isScrolling}set isScrolling(t){this.__isScrolling!==t&&(this.__isScrolling=t,this.updateClassName())}get isStopped(){return this.__isStopped}set isStopped(t){this.__isStopped!==t&&(this.__isStopped=t,this.updateClassName())}get isLocked(){return this.__isLocked}set isLocked(t){this.__isLocked!==t&&(this.__isLocked=t,this.updateClassName())}get isSmooth(){return\"smooth\"===this.isScrolling}get className(){let t=\"lenis\";return this.isStopped&&(t+=\" lenis-stopped\"),this.isLocked&&(t+=\" lenis-locked\"),this.isScrolling&&(t+=\" lenis-scrolling\"),\"smooth\"===this.isScrolling&&(t+=\" lenis-smooth\"),t}updateClassName(){this.cleanUpClassName(),this.rootElement.className=`${this.rootElement.className} ${this.className}`.trim()}cleanUpClassName(){this.rootElement.className=this.rootElement.className.replace(/lenis(-\\w+)?/g,\"\").trim()}}export{Lenis as default};\n//# sourceMappingURL=lenis.mjs.map\n","import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,withCSS}from\"framer\";import Lenis from\"lenis\";import{useEffect,useRef}from\"react\";function SmoothScrollComponent(props){const{intensity}=props;const lenis=useRef(null);useEffect(()=>{if(lenis.current){try{lenis.current.scrollTo(0,{immediate:true});}catch(error){console.error(\"Error scrolling to top:\",error);}}},[lenis]);// Watch for stop scroll elements\nuseEffect(()=>{const checkForStopScroll=()=>{try{const stopScrollElement=document.querySelector(\"[data-frameruni-stop-scroll]\");const htmlElement=document.documentElement;const hasHiddenOverflow=htmlElement&&htmlElement.style&&htmlElement.style.overflow===\"hidden\";if(lenis.current){if(stopScrollElement||hasHiddenOverflow){lenis.current.stop();}else{lenis.current.start();}}}catch(error){console.error(\"Error in checkForStopScroll:\",error);}};// Initial check\ncheckForStopScroll();// Set up observers\nlet stopScrollObserver;let htmlStyleObserver;try{stopScrollObserver=new MutationObserver(checkForStopScroll);htmlStyleObserver=new MutationObserver(checkForStopScroll);// Observe document for data-frameruni-stop-scroll attribute\nif(document&&document.documentElement){stopScrollObserver.observe(document.documentElement,{childList:true,subtree:true,attributes:true,attributeFilter:[\"data-frameruni-stop-scroll\"]});// Observe only the HTML element for style changes\nhtmlStyleObserver.observe(document.documentElement,{attributes:true,attributeFilter:[\"style\"]});}}catch(error){console.error(\"Error setting up observers:\",error);}return()=>{try{if(stopScrollObserver)stopScrollObserver.disconnect();if(htmlStyleObserver)htmlStyleObserver.disconnect();}catch(error){console.error(\"Error disconnecting observers:\",error);}};},[]);useEffect(()=>{try{if(!document)return;const allElements=document.getElementsByTagName(\"*\");for(let i=0;i<allElements.length;i++){const element=allElements[i];if(!element)continue;try{const computedStyle=window.getComputedStyle(element);if(computedStyle&&computedStyle.getPropertyValue(\"overflow\")===\"auto\"){element.setAttribute(\"data-lenis-prevent\",\"true\");}}catch(styleError){console.error(\"Error getting computed style:\",styleError);}}}catch(error){console.error(\"Error in overflow detection:\",error);}},[]);useEffect(()=>{try{if(typeof Lenis!==\"function\"){console.error(\"Lenis is not available\");return;}lenis.current=new Lenis({duration:(intensity||10)/10});const raf=time=>{if(lenis.current){try{lenis.current.raf(time);requestAnimationFrame(raf);}catch(error){console.error(\"Error in animation frame:\",error);}}};const animationId=requestAnimationFrame(raf);return()=>{cancelAnimationFrame(animationId);if(lenis.current){try{lenis.current.destroy();lenis.current=null;}catch(error){console.error(\"Error destroying Lenis:\",error);}}};}catch(error){console.error(\"Error initializing Lenis:\",error);return()=>{};}},[intensity]);//https://github.com/darkroomengineering/lenis?tab=readme-ov-file#anchor-links\nuseEffect(()=>{try{if(!document||!lenis.current)return;// Get all anchor links and store click handlers with their targets\nconst anchorLinksData=Array.from(document.querySelectorAll(\"a[href]\")||[]).filter(element=>{if(!element)return false;const anchor=element;if(!anchor.href)return false;// Only handle internal anchor links\nconst isInternalLink=anchor.href.startsWith(window.location.origin)||anchor.href.startsWith(\"./\")||anchor.href.startsWith(\"/\");const hasHash=anchor.href.includes(\"#\");return isInternalLink&&hasHash;}).map(anchor=>{try{const anchorElement=anchor;const href=anchorElement.href.includes(\"#\")?`#${anchorElement.href.split(\"#\").pop()}`:\"\";const decodedHref=href?decodeURIComponent(href):\"\";let scrollMargin=0;try{if(decodedHref){const targetElement=document.querySelector(decodedHref);if(targetElement){const marginStyle=window.getComputedStyle(targetElement).scrollMarginTop;scrollMargin=marginStyle?parseInt(marginStyle)||0:0;}}}catch(targetError){console.error(\"Error finding target element:\",targetError);}return{href,scrollMargin,anchorElement:anchorElement};}catch(anchorError){console.error(\"Error processing anchor:\",anchorError);return null;}}).filter(Boolean);const handleClick=(e,href,scrollMargin)=>{try{if(e&&e.preventDefault)e.preventDefault();if(lenis.current&&href){lenis.current.scrollTo(href,{offset:-(scrollMargin||0)});}}catch(error){console.error(\"Error in anchor click handler:\",error);}};const handlers=anchorLinksData.map(({href,scrollMargin})=>e=>handleClick(e,href,scrollMargin));anchorLinksData.forEach(({anchorElement},index)=>{if(anchorElement&&handlers[index]){anchorElement.addEventListener(\"click\",handlers[index]);}});return()=>{anchorLinksData.forEach(({anchorElement},index)=>{if(anchorElement&&handlers[index]){anchorElement.removeEventListener(\"click\",handlers[index]);}});};}catch(error){console.error(\"Error setting up anchor links:\",error);return()=>{};}},[lenis]);return /*#__PURE__*/_jsx(\"div\",{style:props.style});}/**\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n *\n * @framerDisableUnlink\n */const SmoothScroll=withCSS(SmoothScrollComponent,[\"html.lenis { height: auto; }\",\".lenis.lenis-smooth { scroll-behavior: auto !important; }\",\".lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }\",\".lenis.lenis-stopped { overflow: hidden; }\",\".lenis.lenis-scrolling iframe { pointer-events: none; }\"],\"\");export default SmoothScroll;SmoothScroll.displayName=\"Smooth Scroll\";addPropertyControls(SmoothScroll,{intensity:{title:\"Intensity\",type:ControlType.Number,defaultValue:10,min:0,description:\"More components at [Framer University](https://frameruni.link/cc).\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"SmoothScroll\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"auto\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SmoothScroll_Prod.map","// Generated by Framer (4705d03)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"GF;Open Sans-regular\",\"GF;Open Sans-700\",\"GF;Open Sans-700italic\",\"GF;Open Sans-italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Open Sans\",source:\"google\",style:\"normal\",uiFamilyName:\"Open Sans\",url:\"https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4iY1M2xLER.woff2\",weight:\"400\"},{cssFamilyName:\"Open Sans\",source:\"google\",style:\"normal\",uiFamilyName:\"Open Sans\",url:\"https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4iY1M2xLER.woff2\",weight:\"700\"},{cssFamilyName:\"Open Sans\",source:\"google\",style:\"italic\",uiFamilyName:\"Open Sans\",url:\"https://fonts.gstatic.com/s/opensans/v44/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVIUwaERZjA.woff2\",weight:\"700\"},{cssFamilyName:\"Open Sans\",source:\"google\",style:\"italic\",uiFamilyName:\"Open Sans\",url:\"https://fonts.gstatic.com/s/opensans/v44/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVIUwaERZjA.woff2\",weight:\"400\"}]}];export const css=['.framer-0rWbP .framer-styles-preset-17foglv:not(.rich-text-wrapper), .framer-0rWbP .framer-styles-preset-17foglv.rich-text-wrapper p { --framer-font-family: \"Open Sans\", \"Open Sans Placeholder\", sans-serif; --framer-font-family-bold: \"Open Sans\", \"Open Sans Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Open Sans\", \"Open Sans Placeholder\", sans-serif; --framer-font-family-italic: \"Open Sans\", \"Open Sans Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: -0.2px; --framer-line-height: 24px; --framer-paragraph-spacing: 20px; --framer-text-alignment: left; --framer-text-color: #6b7280; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-0rWbP\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}