{"version":3,"file":"script_main.Ce7IM7pU.mjs","names":["t","e","n","i","a","s","r","o","l","c","h","u","d","p","f","g","_","m","v","x","M","S","E","y","T","b","A","w","R","L","P","U","D","N","I","O","C","F","z","H","X","q","j","Y","V","G","k","K","Z","J","Q","W","B","$","tt","et","it","rt","at","st","ot","lt","ct","ht","ut","dt","pt","ft","mt","gt","_t","vt","xt","Mt","Ga","nt","ue","pe","ye","St","Et","yt","Tt","bt","wt","Rt","Lt","Pt","It","Ot","Ft","Ut","Dt","Bt","zt","Yt","Vt","Gt","kt","Kt","Ht","Wt","Xt","qt","jt","Zt","ui","useRef","Scene","WebGLRenderer","Color","OrthographicCamera","BufferAttribute","BufferGeometry","Mesh","RawShaderMaterial","DoubleSide","container","Material","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","className","RichText","addPropertyOverrides","LogoFonts","Logo","MenuLinkFonts","MenuLink","RichText","cycleOrder","serializationHash","variantClassNames","transition1","matchVariant","animation","animation1","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","className","sharedStyle.css","sharedStyle.fonts","mask","SVG","getProps","Icon","className","getProps","className","fonts","css","className","fonts","css","className","css","Logo","MenuLink","serializationHash","variantClassNames","animation","matchVariant","React.useContext","React.useMemo","humanReadableVariantMap","React.Fragment","getProps","useRef","React.useId","sharedStyle.className","sharedStyle1.className","sharedStyle2.className","className","Menu","Close","RichText","sharedStyle.css","sharedStyle1.css","sharedStyle2.css","sharedStyle.fonts","sharedStyle1.fonts","sharedStyle2.fonts","useRef","useState","e","w","h","NavBar","Footer","useRef","React.useId","className","PropertyOverrides","React.createElement","TemplateLayout","Framer.PageRoot","Framer.lazy","Framer.useCurrentRoute","Framer.useLocaleInfo","Framer.useRouter","React.Fragment","React.memo","React.useCallback","React.useEffect","React.useRef","React.useState","React.useLayoutEffect","Framer.LazyValue","Framer.LibraryFeaturesProvider","Framer.GracefullyDegradingErrorBoundary","Framer.PageEffectsProvider","breakpoints","Framer.patchRoutesForABTesting","e","routeData","Framer.inferInitialRouteFromPath","Framer.yieldToMain","React.startTransition","Framer.ErrorPlaceholder"],"sources":["https:/cdn.jsdelivr.net/gh/framer-university/components/npm-bundles/wave-prism-1.js","https:/framerusercontent.com/modules/nvthGLYpJuYJ25fZLAig/Jxi3R9WP2V1hHyYsopHJ/WavePrism_prod.js","https:/framerusercontent.com/modules/RskX7nuHJDwhCq5L9vhw/2SjsYWVjg8RgIkcpiaif/m2MQzxhRW.js","https:/framerusercontent.com/modules/rL0ndf6zeLvS8CZGM4qz/Z2nbauEETmso4Kfq374B/LAW_mBAmU.js","https:/framerusercontent.com/modules/bUpgyMqZRKNMdGZeMGPA/fkoodNoUyQNU1zow05Rr/MLH8B4KT_.js","https:/framerusercontent.com/modules/oE9WKEU3ToJHJpjC4OLY/7FvUwzzVaDYCnH97VQOT/UNkcg0f_v.js","https:/framerusercontent.com/modules/78Y0kDqErgQxltO9KJTw/uTtgi98DzDwMFzxQ9NEL/gf4CUuduU.js","https:/framerusercontent.com/modules/q7MIXBwYLXY2ZIYYIn9W/7rLQ038gtgTgHhC7g6iM/sPJsapaIS.js","https:/framerusercontent.com/modules/7JayRg9X2oeOyLoTIvxU/tsNbJttwcmVQsSFDrOJ8/TUPfsbxeC.js","https:/framerusercontent.com/modules/9cbd56pEAMPEbhRvHTTQ/Z2ZnuFQKqUwcGU7QLUfp/O4fieqzvB.js","https:/framerusercontent.com/modules/luzcqJPYgjz8x12T2Efh/PiC2uwmZXcIFYqoR8r7E/Spectra_Noise.js","https:/framerusercontent.com/modules/jC3RBeSXLZtncmynY9kQ/hKVmu1r2gMvrgRNWtFrf/Vl3dLwTau.js","framer:toplevel/main"],"sourcesContent":["const t=\"160\",e=0,n=1,i=2,r=100,a=101,s=102,o=200,l=201,c=202,h=203,u=204,d=205,p=206,f=207,m=208,g=209,_=210,v=211,x=212,M=213,S=214,E=301,y=302,T=306,b=1e3,A=1001,w=1002,R=1003,C=1004,L=1005,P=1006,U=1007,D=1008,N=1009,I=1012,O=1013,F=1014,B=1015,z=1016,H=1020,V=1023,G=1026,k=1027,W=33776,X=33777,q=33778,j=33779,Y=36492,K=3001,Z=\"\",J=\"srgb\",Q=\"srgb-linear\",$=\"display-p3\",tt=\"display-p3-linear\",et=\"linear\",nt=\"srgb\",it=\"rec709\",rt=\"p3\",at=7680,st=512,ot=513,lt=514,ct=515,ht=516,ut=517,dt=518,pt=519,ft=\"300 es\",mt=1035,gt=2e3,_t=2001;class vt{addEventListener(t,e){void 0===this._listeners&&(this._listeners={});const n=this._listeners;void 0===n[t]&&(n[t]=[]),-1===n[t].indexOf(e)&&n[t].push(e)}hasEventListener(t,e){if(void 0===this._listeners)return!1;const n=this._listeners;return void 0!==n[t]&&-1!==n[t].indexOf(e)}removeEventListener(t,e){if(void 0===this._listeners)return;const n=this._listeners[t];if(void 0!==n){const t=n.indexOf(e);-1!==t&&n.splice(t,1)}}dispatchEvent(t){if(void 0===this._listeners)return;const e=this._listeners[t.type];if(void 0!==e){t.target=this;const n=e.slice(0);for(let e=0,i=n.length;e<i;e++)n[e].call(this,t);t.target=null}}}const xt=[\"00\",\"01\",\"02\",\"03\",\"04\",\"05\",\"06\",\"07\",\"08\",\"09\",\"0a\",\"0b\",\"0c\",\"0d\",\"0e\",\"0f\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\",\"18\",\"19\",\"1a\",\"1b\",\"1c\",\"1d\",\"1e\",\"1f\",\"20\",\"21\",\"22\",\"23\",\"24\",\"25\",\"26\",\"27\",\"28\",\"29\",\"2a\",\"2b\",\"2c\",\"2d\",\"2e\",\"2f\",\"30\",\"31\",\"32\",\"33\",\"34\",\"35\",\"36\",\"37\",\"38\",\"39\",\"3a\",\"3b\",\"3c\",\"3d\",\"3e\",\"3f\",\"40\",\"41\",\"42\",\"43\",\"44\",\"45\",\"46\",\"47\",\"48\",\"49\",\"4a\",\"4b\",\"4c\",\"4d\",\"4e\",\"4f\",\"50\",\"51\",\"52\",\"53\",\"54\",\"55\",\"56\",\"57\",\"58\",\"59\",\"5a\",\"5b\",\"5c\",\"5d\",\"5e\",\"5f\",\"60\",\"61\",\"62\",\"63\",\"64\",\"65\",\"66\",\"67\",\"68\",\"69\",\"6a\",\"6b\",\"6c\",\"6d\",\"6e\",\"6f\",\"70\",\"71\",\"72\",\"73\",\"74\",\"75\",\"76\",\"77\",\"78\",\"79\",\"7a\",\"7b\",\"7c\",\"7d\",\"7e\",\"7f\",\"80\",\"81\",\"82\",\"83\",\"84\",\"85\",\"86\",\"87\",\"88\",\"89\",\"8a\",\"8b\",\"8c\",\"8d\",\"8e\",\"8f\",\"90\",\"91\",\"92\",\"93\",\"94\",\"95\",\"96\",\"97\",\"98\",\"99\",\"9a\",\"9b\",\"9c\",\"9d\",\"9e\",\"9f\",\"a0\",\"a1\",\"a2\",\"a3\",\"a4\",\"a5\",\"a6\",\"a7\",\"a8\",\"a9\",\"aa\",\"ab\",\"ac\",\"ad\",\"ae\",\"af\",\"b0\",\"b1\",\"b2\",\"b3\",\"b4\",\"b5\",\"b6\",\"b7\",\"b8\",\"b9\",\"ba\",\"bb\",\"bc\",\"bd\",\"be\",\"bf\",\"c0\",\"c1\",\"c2\",\"c3\",\"c4\",\"c5\",\"c6\",\"c7\",\"c8\",\"c9\",\"ca\",\"cb\",\"cc\",\"cd\",\"ce\",\"cf\",\"d0\",\"d1\",\"d2\",\"d3\",\"d4\",\"d5\",\"d6\",\"d7\",\"d8\",\"d9\",\"da\",\"db\",\"dc\",\"dd\",\"de\",\"df\",\"e0\",\"e1\",\"e2\",\"e3\",\"e4\",\"e5\",\"e6\",\"e7\",\"e8\",\"e9\",\"ea\",\"eb\",\"ec\",\"ed\",\"ee\",\"ef\",\"f0\",\"f1\",\"f2\",\"f3\",\"f4\",\"f5\",\"f6\",\"f7\",\"f8\",\"f9\",\"fa\",\"fb\",\"fc\",\"fd\",\"fe\",\"ff\"],Mt=Math.PI/180,St=180/Math.PI;function Et(){const t=4294967295*Math.random()|0,e=4294967295*Math.random()|0,n=4294967295*Math.random()|0,i=4294967295*Math.random()|0;return(xt[255&t]+xt[t>>8&255]+xt[t>>16&255]+xt[t>>24&255]+\"-\"+xt[255&e]+xt[e>>8&255]+\"-\"+xt[e>>16&15|64]+xt[e>>24&255]+\"-\"+xt[63&n|128]+xt[n>>8&255]+\"-\"+xt[n>>16&255]+xt[n>>24&255]+xt[255&i]+xt[i>>8&255]+xt[i>>16&255]+xt[i>>24&255]).toLowerCase()}function yt(t,e,n){return Math.max(e,Math.min(n,t))}function Tt(t,e,n){return(1-n)*t+n*e}function bt(t){return!(t&t-1)&&0!==t}function At(t){return Math.pow(2,Math.floor(Math.log(t)/Math.LN2))}function wt(t,e){switch(e.constructor){case Float32Array:return t;case Uint32Array:return t/4294967295;case Uint16Array:return t/65535;case Uint8Array:return t/255;case Int32Array:return Math.max(t/2147483647,-1);case Int16Array:return Math.max(t/32767,-1);case Int8Array:return Math.max(t/127,-1);default:throw new Error(\"Invalid component type.\")}}function Rt(t,e){switch(e.constructor){case Float32Array:return t;case Uint32Array:return Math.round(4294967295*t);case Uint16Array:return Math.round(65535*t);case Uint8Array:return Math.round(255*t);case Int32Array:return Math.round(2147483647*t);case Int16Array:return Math.round(32767*t);case Int8Array:return Math.round(127*t);default:throw new Error(\"Invalid component type.\")}}class Ct{constructor(t=0,e=0){Ct.prototype.isVector2=!0,this.x=t,this.y=e}get width(){return this.x}set width(t){this.x=t}get height(){return this.y}set height(t){this.y=t}set(t,e){return this.x=t,this.y=e,this}setScalar(t){return this.x=t,this.y=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw new Error(\"index is out of range: \"+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw new Error(\"index is out of range: \"+t)}}clone(){return new this.constructor(this.x,this.y)}copy(t){return this.x=t.x,this.y=t.y,this}add(t){return this.x+=t.x,this.y+=t.y,this}addScalar(t){return this.x+=t,this.y+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this}subScalar(t){return this.x-=t,this.y-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this}multiply(t){return this.x*=t.x,this.y*=t.y,this}multiplyScalar(t){return this.x*=t,this.y*=t,this}divide(t){return this.x/=t.x,this.y/=t.y,this}divideScalar(t){return this.multiplyScalar(1/t)}applyMatrix3(t){const e=this.x,n=this.y,i=t.elements;return this.x=i[0]*e+i[3]*n+i[6],this.y=i[1]*e+i[4]*n+i[7],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(t){return this.x*t.x+this.y*t.y}cross(t){return this.x*t.y-this.y*t.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(0===e)return Math.PI/2;const n=this.dot(t)/e;return Math.acos(yt(n,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y;return e*e+n*n}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this}equals(t){return t.x===this.x&&t.y===this.y}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this}rotateAround(t,e){const n=Math.cos(e),i=Math.sin(e),r=this.x-t.x,a=this.y-t.y;return this.x=r*n-a*i+t.x,this.y=r*i+a*n+t.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}class Lt{constructor(t,e,n,i,r,a,s,o,l){Lt.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],void 0!==t&&this.set(t,e,n,i,r,a,s,o,l)}set(t,e,n,i,r,a,s,o,l){const c=this.elements;return c[0]=t,c[1]=i,c[2]=s,c[3]=e,c[4]=r,c[5]=o,c[6]=n,c[7]=a,c[8]=l,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(t){const e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],this}extractBasis(t,e,n){return t.setFromMatrix3Column(this,0),e.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(t){const e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,i=e.elements,r=this.elements,a=n[0],s=n[3],o=n[6],l=n[1],c=n[4],h=n[7],u=n[2],d=n[5],p=n[8],f=i[0],m=i[3],g=i[6],_=i[1],v=i[4],x=i[7],M=i[2],S=i[5],E=i[8];return r[0]=a*f+s*_+o*M,r[3]=a*m+s*v+o*S,r[6]=a*g+s*x+o*E,r[1]=l*f+c*_+h*M,r[4]=l*m+c*v+h*S,r[7]=l*g+c*x+h*E,r[2]=u*f+d*_+p*M,r[5]=u*m+d*v+p*S,r[8]=u*g+d*x+p*E,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=t,e[4]*=t,e[7]*=t,e[2]*=t,e[5]*=t,e[8]*=t,this}determinant(){const t=this.elements,e=t[0],n=t[1],i=t[2],r=t[3],a=t[4],s=t[5],o=t[6],l=t[7],c=t[8];return e*a*c-e*s*l-n*r*c+n*s*o+i*r*l-i*a*o}invert(){const t=this.elements,e=t[0],n=t[1],i=t[2],r=t[3],a=t[4],s=t[5],o=t[6],l=t[7],c=t[8],h=c*a-s*l,u=s*o-c*r,d=l*r-a*o,p=e*h+n*u+i*d;if(0===p)return this.set(0,0,0,0,0,0,0,0,0);const f=1/p;return t[0]=h*f,t[1]=(i*l-c*n)*f,t[2]=(s*n-i*a)*f,t[3]=u*f,t[4]=(c*e-i*o)*f,t[5]=(i*r-s*e)*f,t[6]=d*f,t[7]=(n*o-l*e)*f,t[8]=(a*e-n*r)*f,this}transpose(){let t;const e=this.elements;return t=e[1],e[1]=e[3],e[3]=t,t=e[2],e[2]=e[6],e[6]=t,t=e[5],e[5]=e[7],e[7]=t,this}getNormalMatrix(t){return this.setFromMatrix4(t).invert().transpose()}transposeIntoArray(t){const e=this.elements;return t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],this}setUvTransform(t,e,n,i,r,a,s){const o=Math.cos(r),l=Math.sin(r);return this.set(n*o,n*l,-n*(o*a+l*s)+a+t,-i*l,i*o,-i*(-l*a+o*s)+s+e,0,0,1),this}scale(t,e){return this.premultiply(Pt.makeScale(t,e)),this}rotate(t){return this.premultiply(Pt.makeRotation(-t)),this}translate(t,e){return this.premultiply(Pt.makeTranslation(t,e)),this}makeTranslation(t,e){return t.isVector2?this.set(1,0,t.x,0,1,t.y,0,0,1):this.set(1,0,t,0,1,e,0,0,1),this}makeRotation(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,-n,0,n,e,0,0,0,1),this}makeScale(t,e){return this.set(t,0,0,0,e,0,0,0,1),this}equals(t){const e=this.elements,n=t.elements;for(let t=0;t<9;t++)if(e[t]!==n[t])return!1;return!0}fromArray(t,e=0){for(let n=0;n<9;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t}clone(){return(new this.constructor).fromArray(this.elements)}}const Pt=new Lt;function Ut(t){for(let e=t.length-1;e>=0;--e)if(t[e]>=65535)return!0;return!1}function Dt(t){return document.createElementNS(\"http://www.w3.org/1999/xhtml\",t)}function Nt(){const t=Dt(\"canvas\");return t.style.display=\"block\",t}const It={};function Ot(t){t in It||(It[t]=!0)}const Ft=(new Lt).set(.8224621,.177538,0,.0331941,.9668058,0,.0170827,.0723974,.9105199),Bt=(new Lt).set(1.2249401,-.2249404,0,-.0420569,1.0420571,0,-.0196376,-.0786361,1.0982735),zt={[Q]:{transfer:et,primaries:it,toReference:t=>t,fromReference:t=>t},[J]:{transfer:nt,primaries:it,toReference:t=>t.convertSRGBToLinear(),fromReference:t=>t.convertLinearToSRGB()},[tt]:{transfer:et,primaries:rt,toReference:t=>t.applyMatrix3(Bt),fromReference:t=>t.applyMatrix3(Ft)},[$]:{transfer:nt,primaries:rt,toReference:t=>t.convertSRGBToLinear().applyMatrix3(Bt),fromReference:t=>t.applyMatrix3(Ft).convertLinearToSRGB()}},Ht=new Set([Q,tt]),Vt={enabled:!0,_workingColorSpace:Q,get workingColorSpace(){return this._workingColorSpace},set workingColorSpace(t){if(!Ht.has(t))throw new Error(`Unsupported working color space, \"${t}\".`);this._workingColorSpace=t},convert:function(t,e,n){if(!1===this.enabled||e===n||!e||!n)return t;const i=zt[e].toReference;return(0,zt[n].fromReference)(i(t))},fromWorkingColorSpace:function(t,e){return this.convert(t,this._workingColorSpace,e)},toWorkingColorSpace:function(t,e){return this.convert(t,e,this._workingColorSpace)},getPrimaries:function(t){return zt[t].primaries},getTransfer:function(t){return t===Z?et:zt[t].transfer}};function Gt(t){return t<.04045?.0773993808*t:Math.pow(.9478672986*t+.0521327014,2.4)}function kt(t){return t<.0031308?12.92*t:1.055*Math.pow(t,.41666)-.055}let Wt;class Xt{static getDataURL(t){if(/^data:/i.test(t.src))return t.src;if(\"undefined\"==typeof HTMLCanvasElement)return t.src;let e;if(t instanceof HTMLCanvasElement)e=t;else{void 0===Wt&&(Wt=Dt(\"canvas\")),Wt.width=t.width,Wt.height=t.height;const n=Wt.getContext(\"2d\");t instanceof ImageData?n.putImageData(t,0,0):n.drawImage(t,0,0,t.width,t.height),e=Wt}return e.width>2048||e.height>2048?e.toDataURL(\"image/jpeg\",.6):e.toDataURL(\"image/png\")}static sRGBToLinear(t){if(\"undefined\"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||\"undefined\"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||\"undefined\"!=typeof ImageBitmap&&t instanceof ImageBitmap){const e=Dt(\"canvas\");e.width=t.width,e.height=t.height;const n=e.getContext(\"2d\");n.drawImage(t,0,0,t.width,t.height);const i=n.getImageData(0,0,t.width,t.height),r=i.data;for(let t=0;t<r.length;t++)r[t]=255*Gt(r[t]/255);return n.putImageData(i,0,0),e}if(t.data){const e=t.data.slice(0);for(let t=0;t<e.length;t++)e instanceof Uint8Array||e instanceof Uint8ClampedArray?e[t]=Math.floor(255*Gt(e[t]/255)):e[t]=Gt(e[t]);return{data:e,width:t.width,height:t.height}}return t}}let qt=0;class jt{constructor(t=null){this.isSource=!0,Object.defineProperty(this,\"id\",{value:qt++}),this.uuid=Et(),this.data=t,this.version=0}set needsUpdate(t){!0===t&&this.version++}toJSON(t){const e=void 0===t||\"string\"==typeof t;if(!e&&void 0!==t.images[this.uuid])return t.images[this.uuid];const n={uuid:this.uuid,url:\"\"},i=this.data;if(null!==i){let t;if(Array.isArray(i)){t=[];for(let e=0,n=i.length;e<n;e++)i[e].isDataTexture?t.push(Yt(i[e].image)):t.push(Yt(i[e]))}else t=Yt(i);n.url=t}return e||(t.images[this.uuid]=n),n}}function Yt(t){return\"undefined\"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||\"undefined\"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||\"undefined\"!=typeof ImageBitmap&&t instanceof ImageBitmap?Xt.getDataURL(t):t.data?{data:Array.from(t.data),width:t.width,height:t.height,type:t.data.constructor.name}:{}}let Kt=0;class Zt extends vt{constructor(t=Zt.DEFAULT_IMAGE,e=Zt.DEFAULT_MAPPING,n=1001,i=1001,r=1006,a=1008,s=1023,o=1009,l=Zt.DEFAULT_ANISOTROPY,c=\"\"){super(),this.isTexture=!0,Object.defineProperty(this,\"id\",{value:Kt++}),this.uuid=Et(),this.name=\"\",this.source=new jt(t),this.mipmaps=[],this.mapping=e,this.channel=0,this.wrapS=n,this.wrapT=i,this.magFilter=r,this.minFilter=a,this.anisotropy=l,this.format=s,this.internalFormat=null,this.type=o,this.offset=new Ct(0,0),this.repeat=new Ct(1,1),this.center=new Ct(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new Lt,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,\"string\"==typeof c?this.colorSpace=c:(Ot(\"THREE.Texture: Property .encoding has been replaced by .colorSpace.\"),this.colorSpace=c===K?J:Z),this.userData={},this.version=0,this.onUpdate=null,this.isRenderTargetTexture=!1,this.needsPMREMUpdate=!1}get image(){return this.source.data}set image(t=null){this.source.data=t}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}clone(){return(new this.constructor).copy(this)}copy(t){return this.name=t.name,this.source=t.source,this.mipmaps=t.mipmaps.slice(0),this.mapping=t.mapping,this.channel=t.channel,this.wrapS=t.wrapS,this.wrapT=t.wrapT,this.magFilter=t.magFilter,this.minFilter=t.minFilter,this.anisotropy=t.anisotropy,this.format=t.format,this.internalFormat=t.internalFormat,this.type=t.type,this.offset.copy(t.offset),this.repeat.copy(t.repeat),this.center.copy(t.center),this.rotation=t.rotation,this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrix.copy(t.matrix),this.generateMipmaps=t.generateMipmaps,this.premultiplyAlpha=t.premultiplyAlpha,this.flipY=t.flipY,this.unpackAlignment=t.unpackAlignment,this.colorSpace=t.colorSpace,this.userData=JSON.parse(JSON.stringify(t.userData)),this.needsUpdate=!0,this}toJSON(t){const e=void 0===t||\"string\"==typeof t;if(!e&&void 0!==t.textures[this.uuid])return t.textures[this.uuid];const n={metadata:{version:4.6,type:\"Texture\",generator:\"Texture.toJSON\"},uuid:this.uuid,name:this.name,image:this.source.toJSON(t).uuid,mapping:this.mapping,channel:this.channel,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,internalFormat:this.internalFormat,type:this.type,colorSpace:this.colorSpace,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(n.userData=this.userData),e||(t.textures[this.uuid]=n),n}dispose(){this.dispatchEvent({type:\"dispose\"})}transformUv(t){if(300!==this.mapping)return t;if(t.applyMatrix3(this.matrix),t.x<0||t.x>1)switch(this.wrapS){case b:t.x=t.x-Math.floor(t.x);break;case A:t.x=t.x<0?0:1;break;case w:1===Math.abs(Math.floor(t.x)%2)?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x)}if(t.y<0||t.y>1)switch(this.wrapT){case b:t.y=t.y-Math.floor(t.y);break;case A:t.y=t.y<0?0:1;break;case w:1===Math.abs(Math.floor(t.y)%2)?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y)}return this.flipY&&(t.y=1-t.y),t}set needsUpdate(t){!0===t&&(this.version++,this.source.needsUpdate=!0)}get encoding(){return Ot(\"THREE.Texture: Property .encoding has been replaced by .colorSpace.\"),this.colorSpace===J?K:3e3}set encoding(t){Ot(\"THREE.Texture: Property .encoding has been replaced by .colorSpace.\"),this.colorSpace=t===K?J:Z}}Zt.DEFAULT_IMAGE=null,Zt.DEFAULT_MAPPING=300,Zt.DEFAULT_ANISOTROPY=1;class Jt{constructor(t=0,e=0,n=0,i=1){Jt.prototype.isVector4=!0,this.x=t,this.y=e,this.z=n,this.w=i}get width(){return this.z}set width(t){this.z=t}get height(){return this.w}set height(t){this.w=t}set(t,e,n,i){return this.x=t,this.y=e,this.z=n,this.w=i,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this.w=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setW(t){return this.w=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw new Error(\"index is out of range: \"+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error(\"index is out of range: \"+t)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=void 0!==t.w?t.w:1,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this.w+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this.w=t.w+e.w,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this.w+=t.w*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this}applyMatrix4(t){const e=this.x,n=this.y,i=this.z,r=this.w,a=t.elements;return this.x=a[0]*e+a[4]*n+a[8]*i+a[12]*r,this.y=a[1]*e+a[5]*n+a[9]*i+a[13]*r,this.z=a[2]*e+a[6]*n+a[10]*i+a[14]*r,this.w=a[3]*e+a[7]*n+a[11]*i+a[15]*r,this}divideScalar(t){return this.multiplyScalar(1/t)}setAxisAngleFromQuaternion(t){this.w=2*Math.acos(t.w);const e=Math.sqrt(1-t.w*t.w);return e<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this}setAxisAngleFromRotationMatrix(t){let e,n,i,r;const a=.01,s=.1,o=t.elements,l=o[0],c=o[4],h=o[8],u=o[1],d=o[5],p=o[9],f=o[2],m=o[6],g=o[10];if(Math.abs(c-u)<a&&Math.abs(h-f)<a&&Math.abs(p-m)<a){if(Math.abs(c+u)<s&&Math.abs(h+f)<s&&Math.abs(p+m)<s&&Math.abs(l+d+g-3)<s)return this.set(1,0,0,0),this;e=Math.PI;const t=(l+1)/2,o=(d+1)/2,_=(g+1)/2,v=(c+u)/4,x=(h+f)/4,M=(p+m)/4;return t>o&&t>_?t<a?(n=0,i=.707106781,r=.707106781):(n=Math.sqrt(t),i=v/n,r=x/n):o>_?o<a?(n=.707106781,i=0,r=.707106781):(i=Math.sqrt(o),n=v/i,r=M/i):_<a?(n=.707106781,i=.707106781,r=0):(r=Math.sqrt(_),n=x/r,i=M/r),this.set(n,i,r,e),this}let _=Math.sqrt((m-p)*(m-p)+(h-f)*(h-f)+(u-c)*(u-c));return Math.abs(_)<.001&&(_=1),this.x=(m-p)/_,this.y=(h-f)/_,this.z=(u-c)/_,this.w=Math.acos((l+d+g-1)/2),this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this.w=Math.min(this.w,t.w),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this.w=Math.max(this.w,t.w),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this.w=Math.max(t.w,Math.min(e.w,this.w)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this.w=Math.max(t,Math.min(e,this.w)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this.w+=(t.w-this.w)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this.z=t.z+(e.z-t.z)*n,this.w=t.w+(e.w-t.w)*n,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.w===this.w}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this.w=t[e+3],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t[e+3]=this.w,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this.w=t.getW(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}}class Qt extends vt{constructor(t=1,e=1,n={}){super(),this.isRenderTarget=!0,this.width=t,this.height=e,this.depth=1,this.scissor=new Jt(0,0,t,e),this.scissorTest=!1,this.viewport=new Jt(0,0,t,e);const i={width:t,height:e,depth:1};void 0!==n.encoding&&(Ot(\"THREE.WebGLRenderTarget: option.encoding has been replaced by option.colorSpace.\"),n.colorSpace=n.encoding===K?J:Z),n=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:P,depthBuffer:!0,stencilBuffer:!1,depthTexture:null,samples:0},n),this.texture=new Zt(i,n.mapping,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.colorSpace),this.texture.isRenderTargetTexture=!0,this.texture.flipY=!1,this.texture.generateMipmaps=n.generateMipmaps,this.texture.internalFormat=n.internalFormat,this.depthBuffer=n.depthBuffer,this.stencilBuffer=n.stencilBuffer,this.depthTexture=n.depthTexture,this.samples=n.samples}setSize(t,e,n=1){this.width===t&&this.height===e&&this.depth===n||(this.width=t,this.height=e,this.depth=n,this.texture.image.width=t,this.texture.image.height=e,this.texture.image.depth=n,this.dispose()),this.viewport.set(0,0,t,e),this.scissor.set(0,0,t,e)}clone(){return(new this.constructor).copy(this)}copy(t){this.width=t.width,this.height=t.height,this.depth=t.depth,this.scissor.copy(t.scissor),this.scissorTest=t.scissorTest,this.viewport.copy(t.viewport),this.texture=t.texture.clone(),this.texture.isRenderTargetTexture=!0;const e=Object.assign({},t.texture.image);return this.texture.source=new jt(e),this.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,null!==t.depthTexture&&(this.depthTexture=t.depthTexture.clone()),this.samples=t.samples,this}dispose(){this.dispatchEvent({type:\"dispose\"})}}class $t extends Qt{constructor(t=1,e=1,n={}){super(t,e,n),this.isWebGLRenderTarget=!0}}class te extends Zt{constructor(t=null,e=1,n=1,i=1){super(null),this.isDataArrayTexture=!0,this.image={data:t,width:e,height:n,depth:i},this.magFilter=R,this.minFilter=R,this.wrapR=A,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}}class ee extends Zt{constructor(t=null,e=1,n=1,i=1){super(null),this.isData3DTexture=!0,this.image={data:t,width:e,height:n,depth:i},this.magFilter=R,this.minFilter=R,this.wrapR=A,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}}class ne{constructor(t=0,e=0,n=0,i=1){this.isQuaternion=!0,this._x=t,this._y=e,this._z=n,this._w=i}static slerpFlat(t,e,n,i,r,a,s){let o=n[i+0],l=n[i+1],c=n[i+2],h=n[i+3];const u=r[a+0],d=r[a+1],p=r[a+2],f=r[a+3];if(0===s)return t[e+0]=o,t[e+1]=l,t[e+2]=c,void(t[e+3]=h);if(1===s)return t[e+0]=u,t[e+1]=d,t[e+2]=p,void(t[e+3]=f);if(h!==f||o!==u||l!==d||c!==p){let t=1-s;const e=o*u+l*d+c*p+h*f,n=e>=0?1:-1,i=1-e*e;if(i>Number.EPSILON){const r=Math.sqrt(i),a=Math.atan2(r,e*n);t=Math.sin(t*a)/r,s=Math.sin(s*a)/r}const r=s*n;if(o=o*t+u*r,l=l*t+d*r,c=c*t+p*r,h=h*t+f*r,t===1-s){const t=1/Math.sqrt(o*o+l*l+c*c+h*h);o*=t,l*=t,c*=t,h*=t}}t[e]=o,t[e+1]=l,t[e+2]=c,t[e+3]=h}static multiplyQuaternionsFlat(t,e,n,i,r,a){const s=n[i],o=n[i+1],l=n[i+2],c=n[i+3],h=r[a],u=r[a+1],d=r[a+2],p=r[a+3];return t[e]=s*p+c*h+o*d-l*u,t[e+1]=o*p+c*u+l*h-s*d,t[e+2]=l*p+c*d+s*u-o*h,t[e+3]=c*p-s*h-o*u-l*d,t}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get w(){return this._w}set w(t){this._w=t,this._onChangeCallback()}set(t,e,n,i){return this._x=t,this._y=e,this._z=n,this._w=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this._onChangeCallback(),this}setFromEuler(t,e=!0){const n=t._x,i=t._y,r=t._z,a=t._order,s=Math.cos,o=Math.sin,l=s(n/2),c=s(i/2),h=s(r/2),u=o(n/2),d=o(i/2),p=o(r/2);switch(a){case\"XYZ\":this._x=u*c*h+l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h-u*d*p;break;case\"YXZ\":this._x=u*c*h+l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h+u*d*p;break;case\"ZXY\":this._x=u*c*h-l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h-u*d*p;break;case\"ZYX\":this._x=u*c*h-l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h+u*d*p;break;case\"YZX\":this._x=u*c*h+l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h-u*d*p;break;case\"XZY\":this._x=u*c*h-l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h+u*d*p}return!0===e&&this._onChangeCallback(),this}setFromAxisAngle(t,e){const n=e/2,i=Math.sin(n);return this._x=t.x*i,this._y=t.y*i,this._z=t.z*i,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(t){const e=t.elements,n=e[0],i=e[4],r=e[8],a=e[1],s=e[5],o=e[9],l=e[2],c=e[6],h=e[10],u=n+s+h;if(u>0){const t=.5/Math.sqrt(u+1);this._w=.25/t,this._x=(c-o)*t,this._y=(r-l)*t,this._z=(a-i)*t}else if(n>s&&n>h){const t=2*Math.sqrt(1+n-s-h);this._w=(c-o)/t,this._x=.25*t,this._y=(i+a)/t,this._z=(r+l)/t}else if(s>h){const t=2*Math.sqrt(1+s-n-h);this._w=(r-l)/t,this._x=(i+a)/t,this._y=.25*t,this._z=(o+c)/t}else{const t=2*Math.sqrt(1+h-n-s);this._w=(a-i)/t,this._x=(r+l)/t,this._y=(o+c)/t,this._z=.25*t}return this._onChangeCallback(),this}setFromUnitVectors(t,e){let n=t.dot(e)+1;return n<Number.EPSILON?(n=0,Math.abs(t.x)>Math.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=n):(this._x=0,this._y=-t.z,this._z=t.y,this._w=n)):(this._x=t.y*e.z-t.z*e.y,this._y=t.z*e.x-t.x*e.z,this._z=t.x*e.y-t.y*e.x,this._w=n),this.normalize()}angleTo(t){return 2*Math.acos(Math.abs(yt(this.dot(t),-1,1)))}rotateTowards(t,e){const n=this.angleTo(t);if(0===n)return this;const i=Math.min(1,e/n);return this.slerp(t,i),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let t=this.length();return 0===t?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this._onChangeCallback(),this}multiply(t){return this.multiplyQuaternions(this,t)}premultiply(t){return this.multiplyQuaternions(t,this)}multiplyQuaternions(t,e){const n=t._x,i=t._y,r=t._z,a=t._w,s=e._x,o=e._y,l=e._z,c=e._w;return this._x=n*c+a*s+i*l-r*o,this._y=i*c+a*o+r*s-n*l,this._z=r*c+a*l+n*o-i*s,this._w=a*c-n*s-i*o-r*l,this._onChangeCallback(),this}slerp(t,e){if(0===e)return this;if(1===e)return this.copy(t);const n=this._x,i=this._y,r=this._z,a=this._w;let s=a*t._w+n*t._x+i*t._y+r*t._z;if(s<0?(this._w=-t._w,this._x=-t._x,this._y=-t._y,this._z=-t._z,s=-s):this.copy(t),s>=1)return this._w=a,this._x=n,this._y=i,this._z=r,this;const o=1-s*s;if(o<=Number.EPSILON){const t=1-e;return this._w=t*a+e*this._w,this._x=t*n+e*this._x,this._y=t*i+e*this._y,this._z=t*r+e*this._z,this.normalize(),this}const l=Math.sqrt(o),c=Math.atan2(l,s),h=Math.sin((1-e)*c)/l,u=Math.sin(e*c)/l;return this._w=a*h+this._w*u,this._x=n*h+this._x*u,this._y=i*h+this._y*u,this._z=r*h+this._z*u,this._onChangeCallback(),this}slerpQuaternions(t,e,n){return this.copy(t).slerp(e,n)}random(){const t=Math.random(),e=Math.sqrt(1-t),n=Math.sqrt(t),i=2*Math.PI*Math.random(),r=2*Math.PI*Math.random();return this.set(e*Math.cos(i),n*Math.sin(r),n*Math.cos(r),e*Math.sin(i))}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._w===this._w}fromArray(t,e=0){return this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t}fromBufferAttribute(t,e){return this._x=t.getX(e),this._y=t.getY(e),this._z=t.getZ(e),this._w=t.getW(e),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}}class ie{constructor(t=0,e=0,n=0){ie.prototype.isVector3=!0,this.x=t,this.y=e,this.z=n}set(t,e,n){return void 0===n&&(n=this.z),this.x=t,this.y=e,this.z=n,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error(\"index is out of range: \"+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error(\"index is out of range: \"+t)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this}multiplyVectors(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this}applyEuler(t){return this.applyQuaternion(ae.setFromEuler(t))}applyAxisAngle(t,e){return this.applyQuaternion(ae.setFromAxisAngle(t,e))}applyMatrix3(t){const e=this.x,n=this.y,i=this.z,r=t.elements;return this.x=r[0]*e+r[3]*n+r[6]*i,this.y=r[1]*e+r[4]*n+r[7]*i,this.z=r[2]*e+r[5]*n+r[8]*i,this}applyNormalMatrix(t){return this.applyMatrix3(t).normalize()}applyMatrix4(t){const e=this.x,n=this.y,i=this.z,r=t.elements,a=1/(r[3]*e+r[7]*n+r[11]*i+r[15]);return this.x=(r[0]*e+r[4]*n+r[8]*i+r[12])*a,this.y=(r[1]*e+r[5]*n+r[9]*i+r[13])*a,this.z=(r[2]*e+r[6]*n+r[10]*i+r[14])*a,this}applyQuaternion(t){const e=this.x,n=this.y,i=this.z,r=t.x,a=t.y,s=t.z,o=t.w,l=2*(a*i-s*n),c=2*(s*e-r*i),h=2*(r*n-a*e);return this.x=e+o*l+a*h-s*c,this.y=n+o*c+s*l-r*h,this.z=i+o*h+r*c-a*l,this}project(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)}unproject(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)}transformDirection(t){const e=this.x,n=this.y,i=this.z,r=t.elements;return this.x=r[0]*e+r[4]*n+r[8]*i,this.y=r[1]*e+r[5]*n+r[9]*i,this.z=r[2]*e+r[6]*n+r[10]*i,this.normalize()}divide(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this}divideScalar(t){return this.multiplyScalar(1/t)}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this.z=t.z+(e.z-t.z)*n,this}cross(t){return this.crossVectors(this,t)}crossVectors(t,e){const n=t.x,i=t.y,r=t.z,a=e.x,s=e.y,o=e.z;return this.x=i*o-r*s,this.y=r*a-n*o,this.z=n*s-i*a,this}projectOnVector(t){const e=t.lengthSq();if(0===e)return this.set(0,0,0);const n=t.dot(this)/e;return this.copy(t).multiplyScalar(n)}projectOnPlane(t){return re.copy(this).projectOnVector(t),this.sub(re)}reflect(t){return this.sub(re.copy(t).multiplyScalar(2*this.dot(t)))}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(0===e)return Math.PI/2;const n=this.dot(t)/e;return Math.acos(yt(n,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y,i=this.z-t.z;return e*e+n*n+i*i}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)}setFromSpherical(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)}setFromSphericalCoords(t,e,n){const i=Math.sin(e)*t;return this.x=i*Math.sin(n),this.y=Math.cos(e)*t,this.z=i*Math.cos(n),this}setFromCylindrical(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}setFromCylindricalCoords(t,e,n){return this.x=t*Math.sin(e),this.y=n,this.z=t*Math.cos(e),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this}setFromMatrixScale(t){const e=this.setFromMatrixColumn(t,0).length(),n=this.setFromMatrixColumn(t,1).length(),i=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=n,this.z=i,this}setFromMatrixColumn(t,e){return this.fromArray(t.elements,4*e)}setFromMatrix3Column(t,e){return this.fromArray(t.elements,3*e)}setFromEuler(t){return this.x=t._x,this.y=t._y,this.z=t._z,this}setFromColor(t){return this.x=t.r,this.y=t.g,this.z=t.b,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const t=2*(Math.random()-.5),e=Math.random()*Math.PI*2,n=Math.sqrt(1-t**2);return this.x=n*Math.cos(e),this.y=n*Math.sin(e),this.z=t,this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}const re=new ie,ae=new ne;class se{constructor(t=new ie(1/0,1/0,1/0),e=new ie(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromArray(t){this.makeEmpty();for(let e=0,n=t.length;e<n;e+=3)this.expandByPoint(le.fromArray(t,e));return this}setFromBufferAttribute(t){this.makeEmpty();for(let e=0,n=t.count;e<n;e++)this.expandByPoint(le.fromBufferAttribute(t,e));return this}setFromPoints(t){this.makeEmpty();for(let e=0,n=t.length;e<n;e++)this.expandByPoint(t[e]);return this}setFromCenterAndSize(t,e){const n=le.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(n),this.max.copy(t).add(n),this}setFromObject(t,e=!1){return this.makeEmpty(),this.expandByObject(t,e)}clone(){return(new this.constructor).copy(this)}copy(t){return this.min.copy(t.min),this.max.copy(t.max),this}makeEmpty(){return this.min.x=this.min.y=this.min.z=1/0,this.max.x=this.max.y=this.max.z=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y||this.max.z<this.min.z}getCenter(t){return this.isEmpty()?t.set(0,0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(t){return this.isEmpty()?t.set(0,0,0):t.subVectors(this.max,this.min)}expandByPoint(t){return this.min.min(t),this.max.max(t),this}expandByVector(t){return this.min.sub(t),this.max.add(t),this}expandByScalar(t){return this.min.addScalar(-t),this.max.addScalar(t),this}expandByObject(t,e=!1){t.updateWorldMatrix(!1,!1);const n=t.geometry;if(void 0!==n){const i=n.getAttribute(\"position\");if(!0===e&&void 0!==i&&!0!==t.isInstancedMesh)for(let e=0,n=i.count;e<n;e++)!0===t.isMesh?t.getVertexPosition(e,le):le.fromBufferAttribute(i,e),le.applyMatrix4(t.matrixWorld),this.expandByPoint(le);else void 0!==t.boundingBox?(null===t.boundingBox&&t.computeBoundingBox(),ce.copy(t.boundingBox)):(null===n.boundingBox&&n.computeBoundingBox(),ce.copy(n.boundingBox)),ce.applyMatrix4(t.matrixWorld),this.union(ce)}const i=t.children;for(let t=0,n=i.length;t<n;t++)this.expandByObject(i[t],e);return this}containsPoint(t){return!(t.x<this.min.x||t.x>this.max.x||t.y<this.min.y||t.y>this.max.y||t.z<this.min.z||t.z>this.max.z)}containsBox(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y&&this.min.z<=t.min.z&&t.max.z<=this.max.z}getParameter(t,e){return e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y),(t.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(t){return!(t.max.x<this.min.x||t.min.x>this.max.x||t.max.y<this.min.y||t.min.y>this.max.y||t.max.z<this.min.z||t.min.z>this.max.z)}intersectsSphere(t){return this.clampPoint(t.center,le),le.distanceToSquared(t.center)<=t.radius*t.radius}intersectsPlane(t){let e,n;return t.normal.x>0?(e=t.normal.x*this.min.x,n=t.normal.x*this.max.x):(e=t.normal.x*this.max.x,n=t.normal.x*this.min.x),t.normal.y>0?(e+=t.normal.y*this.min.y,n+=t.normal.y*this.max.y):(e+=t.normal.y*this.max.y,n+=t.normal.y*this.min.y),t.normal.z>0?(e+=t.normal.z*this.min.z,n+=t.normal.z*this.max.z):(e+=t.normal.z*this.max.z,n+=t.normal.z*this.min.z),e<=-t.constant&&n>=-t.constant}intersectsTriangle(t){if(this.isEmpty())return!1;this.getCenter(ge),_e.subVectors(this.max,ge),he.subVectors(t.a,ge),ue.subVectors(t.b,ge),de.subVectors(t.c,ge),pe.subVectors(ue,he),fe.subVectors(de,ue),me.subVectors(he,de);let e=[0,-pe.z,pe.y,0,-fe.z,fe.y,0,-me.z,me.y,pe.z,0,-pe.x,fe.z,0,-fe.x,me.z,0,-me.x,-pe.y,pe.x,0,-fe.y,fe.x,0,-me.y,me.x,0];return!!Me(e,he,ue,de,_e)&&(e=[1,0,0,0,1,0,0,0,1],!!Me(e,he,ue,de,_e)&&(ve.crossVectors(pe,fe),e=[ve.x,ve.y,ve.z],Me(e,he,ue,de,_e)))}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return this.clampPoint(t,le).distanceTo(t)}getBoundingSphere(t){return this.isEmpty()?t.makeEmpty():(this.getCenter(t.center),t.radius=.5*this.getSize(le).length()),t}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}applyMatrix4(t){return this.isEmpty()||(oe[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),oe[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),oe[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),oe[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),oe[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),oe[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),oe[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),oe[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(oe)),this}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}const oe=[new ie,new ie,new ie,new ie,new ie,new ie,new ie,new ie],le=new ie,ce=new se,he=new ie,ue=new ie,de=new ie,pe=new ie,fe=new ie,me=new ie,ge=new ie,_e=new ie,ve=new ie,xe=new ie;function Me(t,e,n,i,r){for(let a=0,s=t.length-3;a<=s;a+=3){xe.fromArray(t,a);const s=r.x*Math.abs(xe.x)+r.y*Math.abs(xe.y)+r.z*Math.abs(xe.z),o=e.dot(xe),l=n.dot(xe),c=i.dot(xe);if(Math.max(-Math.max(o,l,c),Math.min(o,l,c))>s)return!1}return!0}const Se=new se,Ee=new ie,ye=new ie;class Te{constructor(t=new ie,e=-1){this.isSphere=!0,this.center=t,this.radius=e}set(t,e){return this.center.copy(t),this.radius=e,this}setFromPoints(t,e){const n=this.center;void 0!==e?n.copy(e):Se.setFromPoints(t).getCenter(n);let i=0;for(let e=0,r=t.length;e<r;e++)i=Math.max(i,n.distanceToSquared(t[e]));return this.radius=Math.sqrt(i),this}copy(t){return this.center.copy(t.center),this.radius=t.radius,this}isEmpty(){return this.radius<0}makeEmpty(){return this.center.set(0,0,0),this.radius=-1,this}containsPoint(t){return t.distanceToSquared(this.center)<=this.radius*this.radius}distanceToPoint(t){return t.distanceTo(this.center)-this.radius}intersectsSphere(t){const e=this.radius+t.radius;return t.center.distanceToSquared(this.center)<=e*e}intersectsBox(t){return t.intersectsSphere(this)}intersectsPlane(t){return Math.abs(t.distanceToPoint(this.center))<=this.radius}clampPoint(t,e){const n=this.center.distanceToSquared(t);return e.copy(t),n>this.radius*this.radius&&(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e}getBoundingBox(t){return this.isEmpty()?(t.makeEmpty(),t):(t.set(this.center,this.center),t.expandByScalar(this.radius),t)}applyMatrix4(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this}translate(t){return this.center.add(t),this}expandByPoint(t){if(this.isEmpty())return this.center.copy(t),this.radius=0,this;Ee.subVectors(t,this.center);const e=Ee.lengthSq();if(e>this.radius*this.radius){const t=Math.sqrt(e),n=.5*(t-this.radius);this.center.addScaledVector(Ee,n/t),this.radius+=n}return this}union(t){return t.isEmpty()?this:this.isEmpty()?(this.copy(t),this):(!0===this.center.equals(t.center)?this.radius=Math.max(this.radius,t.radius):(ye.subVectors(t.center,this.center).setLength(t.radius),this.expandByPoint(Ee.copy(t.center).add(ye)),this.expandByPoint(Ee.copy(t.center).sub(ye))),this)}equals(t){return t.center.equals(this.center)&&t.radius===this.radius}clone(){return(new this.constructor).copy(this)}}const be=new ie,Ae=new ie,we=new ie,Re=new ie,Ce=new ie,Le=new ie,Pe=new ie;class Ue{constructor(t=new ie,e=new ie(0,0,-1)){this.origin=t,this.direction=e}set(t,e){return this.origin.copy(t),this.direction.copy(e),this}copy(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this}at(t,e){return e.copy(this.origin).addScaledVector(this.direction,t)}lookAt(t){return this.direction.copy(t).sub(this.origin).normalize(),this}recast(t){return this.origin.copy(this.at(t,be)),this}closestPointToPoint(t,e){e.subVectors(t,this.origin);const n=e.dot(this.direction);return n<0?e.copy(this.origin):e.copy(this.origin).addScaledVector(this.direction,n)}distanceToPoint(t){return Math.sqrt(this.distanceSqToPoint(t))}distanceSqToPoint(t){const e=be.subVectors(t,this.origin).dot(this.direction);return e<0?this.origin.distanceToSquared(t):(be.copy(this.origin).addScaledVector(this.direction,e),be.distanceToSquared(t))}distanceSqToSegment(t,e,n,i){Ae.copy(t).add(e).multiplyScalar(.5),we.copy(e).sub(t).normalize(),Re.copy(this.origin).sub(Ae);const r=.5*t.distanceTo(e),a=-this.direction.dot(we),s=Re.dot(this.direction),o=-Re.dot(we),l=Re.lengthSq(),c=Math.abs(1-a*a);let h,u,d,p;if(c>0)if(h=a*o-s,u=a*s-o,p=r*c,h>=0)if(u>=-p)if(u<=p){const t=1/c;h*=t,u*=t,d=h*(h+a*u+2*s)+u*(a*h+u+2*o)+l}else u=r,h=Math.max(0,-(a*u+s)),d=-h*h+u*(u+2*o)+l;else u=-r,h=Math.max(0,-(a*u+s)),d=-h*h+u*(u+2*o)+l;else u<=-p?(h=Math.max(0,-(-a*r+s)),u=h>0?-r:Math.min(Math.max(-r,-o),r),d=-h*h+u*(u+2*o)+l):u<=p?(h=0,u=Math.min(Math.max(-r,-o),r),d=u*(u+2*o)+l):(h=Math.max(0,-(a*r+s)),u=h>0?r:Math.min(Math.max(-r,-o),r),d=-h*h+u*(u+2*o)+l);else u=a>0?-r:r,h=Math.max(0,-(a*u+s)),d=-h*h+u*(u+2*o)+l;return n&&n.copy(this.origin).addScaledVector(this.direction,h),i&&i.copy(Ae).addScaledVector(we,u),d}intersectSphere(t,e){be.subVectors(t.center,this.origin);const n=be.dot(this.direction),i=be.dot(be)-n*n,r=t.radius*t.radius;if(i>r)return null;const a=Math.sqrt(r-i),s=n-a,o=n+a;return o<0?null:s<0?this.at(o,e):this.at(s,e)}intersectsSphere(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius}distanceToPlane(t){const e=t.normal.dot(this.direction);if(0===e)return 0===t.distanceToPoint(this.origin)?0:null;const n=-(this.origin.dot(t.normal)+t.constant)/e;return n>=0?n:null}intersectPlane(t,e){const n=this.distanceToPlane(t);return null===n?null:this.at(n,e)}intersectsPlane(t){const e=t.distanceToPoint(this.origin);if(0===e)return!0;return t.normal.dot(this.direction)*e<0}intersectBox(t,e){let n,i,r,a,s,o;const l=1/this.direction.x,c=1/this.direction.y,h=1/this.direction.z,u=this.origin;return l>=0?(n=(t.min.x-u.x)*l,i=(t.max.x-u.x)*l):(n=(t.max.x-u.x)*l,i=(t.min.x-u.x)*l),c>=0?(r=(t.min.y-u.y)*c,a=(t.max.y-u.y)*c):(r=(t.max.y-u.y)*c,a=(t.min.y-u.y)*c),n>a||r>i?null:((r>n||isNaN(n))&&(n=r),(a<i||isNaN(i))&&(i=a),h>=0?(s=(t.min.z-u.z)*h,o=(t.max.z-u.z)*h):(s=(t.max.z-u.z)*h,o=(t.min.z-u.z)*h),n>o||s>i?null:((s>n||n!=n)&&(n=s),(o<i||i!=i)&&(i=o),i<0?null:this.at(n>=0?n:i,e)))}intersectsBox(t){return null!==this.intersectBox(t,be)}intersectTriangle(t,e,n,i,r){Ce.subVectors(e,t),Le.subVectors(n,t),Pe.crossVectors(Ce,Le);let a,s=this.direction.dot(Pe);if(s>0){if(i)return null;a=1}else{if(!(s<0))return null;a=-1,s=-s}Re.subVectors(this.origin,t);const o=a*this.direction.dot(Le.crossVectors(Re,Le));if(o<0)return null;const l=a*this.direction.dot(Ce.cross(Re));if(l<0)return null;if(o+l>s)return null;const c=-a*Re.dot(Pe);return c<0?null:this.at(c/s,r)}applyMatrix4(t){return this.origin.applyMatrix4(t),this.direction.transformDirection(t),this}equals(t){return t.origin.equals(this.origin)&&t.direction.equals(this.direction)}clone(){return(new this.constructor).copy(this)}}class De{constructor(t,e,n,i,r,a,s,o,l,c,h,u,d,p,f,m){De.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],void 0!==t&&this.set(t,e,n,i,r,a,s,o,l,c,h,u,d,p,f,m)}set(t,e,n,i,r,a,s,o,l,c,h,u,d,p,f,m){const g=this.elements;return g[0]=t,g[4]=e,g[8]=n,g[12]=i,g[1]=r,g[5]=a,g[9]=s,g[13]=o,g[2]=l,g[6]=c,g[10]=h,g[14]=u,g[3]=d,g[7]=p,g[11]=f,g[15]=m,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return(new De).fromArray(this.elements)}copy(t){const e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],e[9]=n[9],e[10]=n[10],e[11]=n[11],e[12]=n[12],e[13]=n[13],e[14]=n[14],e[15]=n[15],this}copyPosition(t){const e=this.elements,n=t.elements;return e[12]=n[12],e[13]=n[13],e[14]=n[14],this}setFromMatrix3(t){const e=t.elements;return this.set(e[0],e[3],e[6],0,e[1],e[4],e[7],0,e[2],e[5],e[8],0,0,0,0,1),this}extractBasis(t,e,n){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this}makeBasis(t,e,n){return this.set(t.x,e.x,n.x,0,t.y,e.y,n.y,0,t.z,e.z,n.z,0,0,0,0,1),this}extractRotation(t){const e=this.elements,n=t.elements,i=1/Ne.setFromMatrixColumn(t,0).length(),r=1/Ne.setFromMatrixColumn(t,1).length(),a=1/Ne.setFromMatrixColumn(t,2).length();return e[0]=n[0]*i,e[1]=n[1]*i,e[2]=n[2]*i,e[3]=0,e[4]=n[4]*r,e[5]=n[5]*r,e[6]=n[6]*r,e[7]=0,e[8]=n[8]*a,e[9]=n[9]*a,e[10]=n[10]*a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromEuler(t){const e=this.elements,n=t.x,i=t.y,r=t.z,a=Math.cos(n),s=Math.sin(n),o=Math.cos(i),l=Math.sin(i),c=Math.cos(r),h=Math.sin(r);if(\"XYZ\"===t.order){const t=a*c,n=a*h,i=s*c,r=s*h;e[0]=o*c,e[4]=-o*h,e[8]=l,e[1]=n+i*l,e[5]=t-r*l,e[9]=-s*o,e[2]=r-t*l,e[6]=i+n*l,e[10]=a*o}else if(\"YXZ\"===t.order){const t=o*c,n=o*h,i=l*c,r=l*h;e[0]=t+r*s,e[4]=i*s-n,e[8]=a*l,e[1]=a*h,e[5]=a*c,e[9]=-s,e[2]=n*s-i,e[6]=r+t*s,e[10]=a*o}else if(\"ZXY\"===t.order){const t=o*c,n=o*h,i=l*c,r=l*h;e[0]=t-r*s,e[4]=-a*h,e[8]=i+n*s,e[1]=n+i*s,e[5]=a*c,e[9]=r-t*s,e[2]=-a*l,e[6]=s,e[10]=a*o}else if(\"ZYX\"===t.order){const t=a*c,n=a*h,i=s*c,r=s*h;e[0]=o*c,e[4]=i*l-n,e[8]=t*l+r,e[1]=o*h,e[5]=r*l+t,e[9]=n*l-i,e[2]=-l,e[6]=s*o,e[10]=a*o}else if(\"YZX\"===t.order){const t=a*o,n=a*l,i=s*o,r=s*l;e[0]=o*c,e[4]=r-t*h,e[8]=i*h+n,e[1]=h,e[5]=a*c,e[9]=-s*c,e[2]=-l*c,e[6]=n*h+i,e[10]=t-r*h}else if(\"XZY\"===t.order){const t=a*o,n=a*l,i=s*o,r=s*l;e[0]=o*c,e[4]=-h,e[8]=l*c,e[1]=t*h+r,e[5]=a*c,e[9]=n*h-i,e[2]=i*h-n,e[6]=s*c,e[10]=r*h+t}return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromQuaternion(t){return this.compose(Oe,t,Fe)}lookAt(t,e,n){const i=this.elements;return He.subVectors(t,e),0===He.lengthSq()&&(He.z=1),He.normalize(),Be.crossVectors(n,He),0===Be.lengthSq()&&(1===Math.abs(n.z)?He.x+=1e-4:He.z+=1e-4,He.normalize(),Be.crossVectors(n,He)),Be.normalize(),ze.crossVectors(He,Be),i[0]=Be.x,i[4]=ze.x,i[8]=He.x,i[1]=Be.y,i[5]=ze.y,i[9]=He.y,i[2]=Be.z,i[6]=ze.z,i[10]=He.z,this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,i=e.elements,r=this.elements,a=n[0],s=n[4],o=n[8],l=n[12],c=n[1],h=n[5],u=n[9],d=n[13],p=n[2],f=n[6],m=n[10],g=n[14],_=n[3],v=n[7],x=n[11],M=n[15],S=i[0],E=i[4],y=i[8],T=i[12],b=i[1],A=i[5],w=i[9],R=i[13],C=i[2],L=i[6],P=i[10],U=i[14],D=i[3],N=i[7],I=i[11],O=i[15];return r[0]=a*S+s*b+o*C+l*D,r[4]=a*E+s*A+o*L+l*N,r[8]=a*y+s*w+o*P+l*I,r[12]=a*T+s*R+o*U+l*O,r[1]=c*S+h*b+u*C+d*D,r[5]=c*E+h*A+u*L+d*N,r[9]=c*y+h*w+u*P+d*I,r[13]=c*T+h*R+u*U+d*O,r[2]=p*S+f*b+m*C+g*D,r[6]=p*E+f*A+m*L+g*N,r[10]=p*y+f*w+m*P+g*I,r[14]=p*T+f*R+m*U+g*O,r[3]=_*S+v*b+x*C+M*D,r[7]=_*E+v*A+x*L+M*N,r[11]=_*y+v*w+x*P+M*I,r[15]=_*T+v*R+x*U+M*O,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this}determinant(){const t=this.elements,e=t[0],n=t[4],i=t[8],r=t[12],a=t[1],s=t[5],o=t[9],l=t[13],c=t[2],h=t[6],u=t[10],d=t[14];return t[3]*(+r*o*h-i*l*h-r*s*u+n*l*u+i*s*d-n*o*d)+t[7]*(+e*o*d-e*l*u+r*a*u-i*a*d+i*l*c-r*o*c)+t[11]*(+e*l*h-e*s*d-r*a*h+n*a*d+r*s*c-n*l*c)+t[15]*(-i*s*c-e*o*h+e*s*u+i*a*h-n*a*u+n*o*c)}transpose(){const t=this.elements;let e;return e=t[1],t[1]=t[4],t[4]=e,e=t[2],t[2]=t[8],t[8]=e,e=t[6],t[6]=t[9],t[9]=e,e=t[3],t[3]=t[12],t[12]=e,e=t[7],t[7]=t[13],t[13]=e,e=t[11],t[11]=t[14],t[14]=e,this}setPosition(t,e,n){const i=this.elements;return t.isVector3?(i[12]=t.x,i[13]=t.y,i[14]=t.z):(i[12]=t,i[13]=e,i[14]=n),this}invert(){const t=this.elements,e=t[0],n=t[1],i=t[2],r=t[3],a=t[4],s=t[5],o=t[6],l=t[7],c=t[8],h=t[9],u=t[10],d=t[11],p=t[12],f=t[13],m=t[14],g=t[15],_=h*m*l-f*u*l+f*o*d-s*m*d-h*o*g+s*u*g,v=p*u*l-c*m*l-p*o*d+a*m*d+c*o*g-a*u*g,x=c*f*l-p*h*l+p*s*d-a*f*d-c*s*g+a*h*g,M=p*h*o-c*f*o-p*s*u+a*f*u+c*s*m-a*h*m,S=e*_+n*v+i*x+r*M;if(0===S)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const E=1/S;return t[0]=_*E,t[1]=(f*u*r-h*m*r-f*i*d+n*m*d+h*i*g-n*u*g)*E,t[2]=(s*m*r-f*o*r+f*i*l-n*m*l-s*i*g+n*o*g)*E,t[3]=(h*o*r-s*u*r-h*i*l+n*u*l+s*i*d-n*o*d)*E,t[4]=v*E,t[5]=(c*m*r-p*u*r+p*i*d-e*m*d-c*i*g+e*u*g)*E,t[6]=(p*o*r-a*m*r-p*i*l+e*m*l+a*i*g-e*o*g)*E,t[7]=(a*u*r-c*o*r+c*i*l-e*u*l-a*i*d+e*o*d)*E,t[8]=x*E,t[9]=(p*h*r-c*f*r-p*n*d+e*f*d+c*n*g-e*h*g)*E,t[10]=(a*f*r-p*s*r+p*n*l-e*f*l-a*n*g+e*s*g)*E,t[11]=(c*s*r-a*h*r-c*n*l+e*h*l+a*n*d-e*s*d)*E,t[12]=M*E,t[13]=(c*f*i-p*h*i+p*n*u-e*f*u-c*n*m+e*h*m)*E,t[14]=(p*s*i-a*f*i-p*n*o+e*f*o+a*n*m-e*s*m)*E,t[15]=(a*h*i-c*s*i+c*n*o-e*h*o-a*n*u+e*s*u)*E,this}scale(t){const e=this.elements,n=t.x,i=t.y,r=t.z;return e[0]*=n,e[4]*=i,e[8]*=r,e[1]*=n,e[5]*=i,e[9]*=r,e[2]*=n,e[6]*=i,e[10]*=r,e[3]*=n,e[7]*=i,e[11]*=r,this}getMaxScaleOnAxis(){const t=this.elements,e=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],n=t[4]*t[4]+t[5]*t[5]+t[6]*t[6],i=t[8]*t[8]+t[9]*t[9]+t[10]*t[10];return Math.sqrt(Math.max(e,n,i))}makeTranslation(t,e,n){return t.isVector3?this.set(1,0,0,t.x,0,1,0,t.y,0,0,1,t.z,0,0,0,1):this.set(1,0,0,t,0,1,0,e,0,0,1,n,0,0,0,1),this}makeRotationX(t){const e=Math.cos(t),n=Math.sin(t);return this.set(1,0,0,0,0,e,-n,0,0,n,e,0,0,0,0,1),this}makeRotationY(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,0,n,0,0,1,0,0,-n,0,e,0,0,0,0,1),this}makeRotationZ(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,-n,0,0,n,e,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(t,e){const n=Math.cos(e),i=Math.sin(e),r=1-n,a=t.x,s=t.y,o=t.z,l=r*a,c=r*s;return this.set(l*a+n,l*s-i*o,l*o+i*s,0,l*s+i*o,c*s+n,c*o-i*a,0,l*o-i*s,c*o+i*a,r*o*o+n,0,0,0,0,1),this}makeScale(t,e,n){return this.set(t,0,0,0,0,e,0,0,0,0,n,0,0,0,0,1),this}makeShear(t,e,n,i,r,a){return this.set(1,n,r,0,t,1,a,0,e,i,1,0,0,0,0,1),this}compose(t,e,n){const i=this.elements,r=e._x,a=e._y,s=e._z,o=e._w,l=r+r,c=a+a,h=s+s,u=r*l,d=r*c,p=r*h,f=a*c,m=a*h,g=s*h,_=o*l,v=o*c,x=o*h,M=n.x,S=n.y,E=n.z;return i[0]=(1-(f+g))*M,i[1]=(d+x)*M,i[2]=(p-v)*M,i[3]=0,i[4]=(d-x)*S,i[5]=(1-(u+g))*S,i[6]=(m+_)*S,i[7]=0,i[8]=(p+v)*E,i[9]=(m-_)*E,i[10]=(1-(u+f))*E,i[11]=0,i[12]=t.x,i[13]=t.y,i[14]=t.z,i[15]=1,this}decompose(t,e,n){const i=this.elements;let r=Ne.set(i[0],i[1],i[2]).length();const a=Ne.set(i[4],i[5],i[6]).length(),s=Ne.set(i[8],i[9],i[10]).length();this.determinant()<0&&(r=-r),t.x=i[12],t.y=i[13],t.z=i[14],Ie.copy(this);const o=1/r,l=1/a,c=1/s;return Ie.elements[0]*=o,Ie.elements[1]*=o,Ie.elements[2]*=o,Ie.elements[4]*=l,Ie.elements[5]*=l,Ie.elements[6]*=l,Ie.elements[8]*=c,Ie.elements[9]*=c,Ie.elements[10]*=c,e.setFromRotationMatrix(Ie),n.x=r,n.y=a,n.z=s,this}makePerspective(t,e,n,i,r,a,s=2e3){const o=this.elements,l=2*r/(e-t),c=2*r/(n-i),h=(e+t)/(e-t),u=(n+i)/(n-i);let d,p;if(s===gt)d=-(a+r)/(a-r),p=-2*a*r/(a-r);else{if(s!==_t)throw new Error(\"THREE.Matrix4.makePerspective(): Invalid coordinate system: \"+s);d=-a/(a-r),p=-a*r/(a-r)}return o[0]=l,o[4]=0,o[8]=h,o[12]=0,o[1]=0,o[5]=c,o[9]=u,o[13]=0,o[2]=0,o[6]=0,o[10]=d,o[14]=p,o[3]=0,o[7]=0,o[11]=-1,o[15]=0,this}makeOrthographic(t,e,n,i,r,a,s=2e3){const o=this.elements,l=1/(e-t),c=1/(n-i),h=1/(a-r),u=(e+t)*l,d=(n+i)*c;let p,f;if(s===gt)p=(a+r)*h,f=-2*h;else{if(s!==_t)throw new Error(\"THREE.Matrix4.makeOrthographic(): Invalid coordinate system: \"+s);p=r*h,f=-1*h}return o[0]=2*l,o[4]=0,o[8]=0,o[12]=-u,o[1]=0,o[5]=2*c,o[9]=0,o[13]=-d,o[2]=0,o[6]=0,o[10]=f,o[14]=-p,o[3]=0,o[7]=0,o[11]=0,o[15]=1,this}equals(t){const e=this.elements,n=t.elements;for(let t=0;t<16;t++)if(e[t]!==n[t])return!1;return!0}fromArray(t,e=0){for(let n=0;n<16;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t[e+9]=n[9],t[e+10]=n[10],t[e+11]=n[11],t[e+12]=n[12],t[e+13]=n[13],t[e+14]=n[14],t[e+15]=n[15],t}}const Ne=new ie,Ie=new De,Oe=new ie(0,0,0),Fe=new ie(1,1,1),Be=new ie,ze=new ie,He=new ie,Ve=new De,Ge=new ne;class ke{constructor(t=0,e=0,n=0,i=ke.DEFAULT_ORDER){this.isEuler=!0,this._x=t,this._y=e,this._z=n,this._order=i}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get order(){return this._order}set order(t){this._order=t,this._onChangeCallback()}set(t,e,n,i=this._order){return this._x=t,this._y=e,this._z=n,this._order=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(t){return this._x=t._x,this._y=t._y,this._z=t._z,this._order=t._order,this._onChangeCallback(),this}setFromRotationMatrix(t,e=this._order,n=!0){const i=t.elements,r=i[0],a=i[4],s=i[8],o=i[1],l=i[5],c=i[9],h=i[2],u=i[6],d=i[10];switch(e){case\"XYZ\":this._y=Math.asin(yt(s,-1,1)),Math.abs(s)<.9999999?(this._x=Math.atan2(-c,d),this._z=Math.atan2(-a,r)):(this._x=Math.atan2(u,l),this._z=0);break;case\"YXZ\":this._x=Math.asin(-yt(c,-1,1)),Math.abs(c)<.9999999?(this._y=Math.atan2(s,d),this._z=Math.atan2(o,l)):(this._y=Math.atan2(-h,r),this._z=0);break;case\"ZXY\":this._x=Math.asin(yt(u,-1,1)),Math.abs(u)<.9999999?(this._y=Math.atan2(-h,d),this._z=Math.atan2(-a,l)):(this._y=0,this._z=Math.atan2(o,r));break;case\"ZYX\":this._y=Math.asin(-yt(h,-1,1)),Math.abs(h)<.9999999?(this._x=Math.atan2(u,d),this._z=Math.atan2(o,r)):(this._x=0,this._z=Math.atan2(-a,l));break;case\"YZX\":this._z=Math.asin(yt(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(-c,l),this._y=Math.atan2(-h,r)):(this._x=0,this._y=Math.atan2(s,d));break;case\"XZY\":this._z=Math.asin(-yt(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(u,l),this._y=Math.atan2(s,r)):(this._x=Math.atan2(-c,d),this._y=0)}return this._order=e,!0===n&&this._onChangeCallback(),this}setFromQuaternion(t,e,n){return Ve.makeRotationFromQuaternion(t),this.setFromRotationMatrix(Ve,e,n)}setFromVector3(t,e=this._order){return this.set(t.x,t.y,t.z,e)}reorder(t){return Ge.setFromEuler(this),this.setFromQuaternion(Ge,t)}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._order===this._order}fromArray(t){return this._x=t[0],this._y=t[1],this._z=t[2],void 0!==t[3]&&(this._order=t[3]),this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._order,t}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}}ke.DEFAULT_ORDER=\"XYZ\";class We{constructor(){this.mask=1}set(t){this.mask=1<<t>>>0}enable(t){this.mask|=1<<t}enableAll(){this.mask=-1}toggle(t){this.mask^=1<<t}disable(t){this.mask&=~(1<<t)}disableAll(){this.mask=0}test(t){return 0!==(this.mask&t.mask)}isEnabled(t){return!!(this.mask&1<<t)}}let Xe=0;const qe=new ie,je=new ne,Ye=new De,Ke=new ie,Ze=new ie,Je=new ie,Qe=new ne,$e=new ie(1,0,0),tn=new ie(0,1,0),en=new ie(0,0,1),nn={type:\"added\"},rn={type:\"removed\"};class an extends vt{constructor(){super(),this.isObject3D=!0,Object.defineProperty(this,\"id\",{value:Xe++}),this.uuid=Et(),this.name=\"\",this.type=\"Object3D\",this.parent=null,this.children=[],this.up=an.DEFAULT_UP.clone();const t=new ie,e=new ke,n=new ne,i=new ie(1,1,1);e._onChange(function(){n.setFromEuler(e,!1)}),n._onChange(function(){e.setFromQuaternion(n,void 0,!1)}),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:t},rotation:{configurable:!0,enumerable:!0,value:e},quaternion:{configurable:!0,enumerable:!0,value:n},scale:{configurable:!0,enumerable:!0,value:i},modelViewMatrix:{value:new De},normalMatrix:{value:new Lt}}),this.matrix=new De,this.matrixWorld=new De,this.matrixAutoUpdate=an.DEFAULT_MATRIX_AUTO_UPDATE,this.matrixWorldAutoUpdate=an.DEFAULT_MATRIX_WORLD_AUTO_UPDATE,this.matrixWorldNeedsUpdate=!1,this.layers=new We,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.animations=[],this.userData={}}onBeforeShadow(){}onAfterShadow(){}onBeforeRender(){}onAfterRender(){}applyMatrix4(t){this.matrixAutoUpdate&&this.updateMatrix(),this.matrix.premultiply(t),this.matrix.decompose(this.position,this.quaternion,this.scale)}applyQuaternion(t){return this.quaternion.premultiply(t),this}setRotationFromAxisAngle(t,e){this.quaternion.setFromAxisAngle(t,e)}setRotationFromEuler(t){this.quaternion.setFromEuler(t,!0)}setRotationFromMatrix(t){this.quaternion.setFromRotationMatrix(t)}setRotationFromQuaternion(t){this.quaternion.copy(t)}rotateOnAxis(t,e){return je.setFromAxisAngle(t,e),this.quaternion.multiply(je),this}rotateOnWorldAxis(t,e){return je.setFromAxisAngle(t,e),this.quaternion.premultiply(je),this}rotateX(t){return this.rotateOnAxis($e,t)}rotateY(t){return this.rotateOnAxis(tn,t)}rotateZ(t){return this.rotateOnAxis(en,t)}translateOnAxis(t,e){return qe.copy(t).applyQuaternion(this.quaternion),this.position.add(qe.multiplyScalar(e)),this}translateX(t){return this.translateOnAxis($e,t)}translateY(t){return this.translateOnAxis(tn,t)}translateZ(t){return this.translateOnAxis(en,t)}localToWorld(t){return this.updateWorldMatrix(!0,!1),t.applyMatrix4(this.matrixWorld)}worldToLocal(t){return this.updateWorldMatrix(!0,!1),t.applyMatrix4(Ye.copy(this.matrixWorld).invert())}lookAt(t,e,n){t.isVector3?Ke.copy(t):Ke.set(t,e,n);const i=this.parent;this.updateWorldMatrix(!0,!1),Ze.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?Ye.lookAt(Ze,Ke,this.up):Ye.lookAt(Ke,Ze,this.up),this.quaternion.setFromRotationMatrix(Ye),i&&(Ye.extractRotation(i.matrixWorld),je.setFromRotationMatrix(Ye),this.quaternion.premultiply(je.invert()))}add(t){if(arguments.length>1){for(let t=0;t<arguments.length;t++)this.add(arguments[t]);return this}return t===this||t&&t.isObject3D&&(null!==t.parent&&t.parent.remove(t),t.parent=this,this.children.push(t),t.dispatchEvent(nn)),this}remove(t){if(arguments.length>1){for(let t=0;t<arguments.length;t++)this.remove(arguments[t]);return this}const e=this.children.indexOf(t);return-1!==e&&(t.parent=null,this.children.splice(e,1),t.dispatchEvent(rn)),this}removeFromParent(){const t=this.parent;return null!==t&&t.remove(this),this}clear(){return this.remove(...this.children)}attach(t){return this.updateWorldMatrix(!0,!1),Ye.copy(this.matrixWorld).invert(),null!==t.parent&&(t.parent.updateWorldMatrix(!0,!1),Ye.multiply(t.parent.matrixWorld)),t.applyMatrix4(Ye),this.add(t),t.updateWorldMatrix(!1,!0),this}getObjectById(t){return this.getObjectByProperty(\"id\",t)}getObjectByName(t){return this.getObjectByProperty(\"name\",t)}getObjectByProperty(t,e){if(this[t]===e)return this;for(let n=0,i=this.children.length;n<i;n++){const i=this.children[n].getObjectByProperty(t,e);if(void 0!==i)return i}}getObjectsByProperty(t,e,n=[]){this[t]===e&&n.push(this);const i=this.children;for(let r=0,a=i.length;r<a;r++)i[r].getObjectsByProperty(t,e,n);return n}getWorldPosition(t){return this.updateWorldMatrix(!0,!1),t.setFromMatrixPosition(this.matrixWorld)}getWorldQuaternion(t){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(Ze,t,Je),t}getWorldScale(t){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(Ze,Qe,t),t}getWorldDirection(t){this.updateWorldMatrix(!0,!1);const e=this.matrixWorld.elements;return t.set(e[8],e[9],e[10]).normalize()}raycast(){}traverse(t){t(this);const e=this.children;for(let n=0,i=e.length;n<i;n++)e[n].traverse(t)}traverseVisible(t){if(!1===this.visible)return;t(this);const e=this.children;for(let n=0,i=e.length;n<i;n++)e[n].traverseVisible(t)}traverseAncestors(t){const e=this.parent;null!==e&&(t(e),e.traverseAncestors(t))}updateMatrix(){this.matrix.compose(this.position,this.quaternion,this.scale),this.matrixWorldNeedsUpdate=!0}updateMatrixWorld(t){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||t)&&(null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorldNeedsUpdate=!1,t=!0);const e=this.children;for(let n=0,i=e.length;n<i;n++){const i=e[n];!0!==i.matrixWorldAutoUpdate&&!0!==t||i.updateMatrixWorld(t)}}updateWorldMatrix(t,e){const n=this.parent;if(!0===t&&null!==n&&!0===n.matrixWorldAutoUpdate&&n.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),!0===e){const t=this.children;for(let e=0,n=t.length;e<n;e++){const n=t[e];!0===n.matrixWorldAutoUpdate&&n.updateWorldMatrix(!1,!0)}}}toJSON(t){const e=void 0===t||\"string\"==typeof t,n={};e&&(t={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{},nodes:{}},n.metadata={version:4.6,type:\"Object\",generator:\"Object3D.toJSON\"});const i={};function r(e,n){return void 0===e[n.uuid]&&(e[n.uuid]=n.toJSON(t)),n.uuid}if(i.uuid=this.uuid,i.type=this.type,\"\"!==this.name&&(i.name=this.name),!0===this.castShadow&&(i.castShadow=!0),!0===this.receiveShadow&&(i.receiveShadow=!0),!1===this.visible&&(i.visible=!1),!1===this.frustumCulled&&(i.frustumCulled=!1),0!==this.renderOrder&&(i.renderOrder=this.renderOrder),Object.keys(this.userData).length>0&&(i.userData=this.userData),i.layers=this.layers.mask,i.matrix=this.matrix.toArray(),i.up=this.up.toArray(),!1===this.matrixAutoUpdate&&(i.matrixAutoUpdate=!1),this.isInstancedMesh&&(i.type=\"InstancedMesh\",i.count=this.count,i.instanceMatrix=this.instanceMatrix.toJSON(),null!==this.instanceColor&&(i.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(i.type=\"BatchedMesh\",i.perObjectFrustumCulled=this.perObjectFrustumCulled,i.sortObjects=this.sortObjects,i.drawRanges=this._drawRanges,i.reservedRanges=this._reservedRanges,i.visibility=this._visibility,i.active=this._active,i.bounds=this._bounds.map(t=>({boxInitialized:t.boxInitialized,boxMin:t.box.min.toArray(),boxMax:t.box.max.toArray(),sphereInitialized:t.sphereInitialized,sphereRadius:t.sphere.radius,sphereCenter:t.sphere.center.toArray()})),i.maxGeometryCount=this._maxGeometryCount,i.maxVertexCount=this._maxVertexCount,i.maxIndexCount=this._maxIndexCount,i.geometryInitialized=this._geometryInitialized,i.geometryCount=this._geometryCount,i.matricesTexture=this._matricesTexture.toJSON(t),null!==this.boundingSphere&&(i.boundingSphere={center:i.boundingSphere.center.toArray(),radius:i.boundingSphere.radius}),null!==this.boundingBox&&(i.boundingBox={min:i.boundingBox.min.toArray(),max:i.boundingBox.max.toArray()})),this.isScene)this.background&&(this.background.isColor?i.background=this.background.toJSON():this.background.isTexture&&(i.background=this.background.toJSON(t).uuid)),this.environment&&this.environment.isTexture&&!0!==this.environment.isRenderTargetTexture&&(i.environment=this.environment.toJSON(t).uuid);else if(this.isMesh||this.isLine||this.isPoints){i.geometry=r(t.geometries,this.geometry);const e=this.geometry.parameters;if(void 0!==e&&void 0!==e.shapes){const n=e.shapes;if(Array.isArray(n))for(let e=0,i=n.length;e<i;e++){const i=n[e];r(t.shapes,i)}else r(t.shapes,n)}}if(this.isSkinnedMesh&&(i.bindMode=this.bindMode,i.bindMatrix=this.bindMatrix.toArray(),void 0!==this.skeleton&&(r(t.skeletons,this.skeleton),i.skeleton=this.skeleton.uuid)),void 0!==this.material)if(Array.isArray(this.material)){const e=[];for(let n=0,i=this.material.length;n<i;n++)e.push(r(t.materials,this.material[n]));i.material=e}else i.material=r(t.materials,this.material);if(this.children.length>0){i.children=[];for(let e=0;e<this.children.length;e++)i.children.push(this.children[e].toJSON(t).object)}if(this.animations.length>0){i.animations=[];for(let e=0;e<this.animations.length;e++){const n=this.animations[e];i.animations.push(r(t.animations,n))}}if(e){const e=a(t.geometries),i=a(t.materials),r=a(t.textures),s=a(t.images),o=a(t.shapes),l=a(t.skeletons),c=a(t.animations),h=a(t.nodes);e.length>0&&(n.geometries=e),i.length>0&&(n.materials=i),r.length>0&&(n.textures=r),s.length>0&&(n.images=s),o.length>0&&(n.shapes=o),l.length>0&&(n.skeletons=l),c.length>0&&(n.animations=c),h.length>0&&(n.nodes=h)}return n.object=i,n;function a(t){const e=[];for(const n in t){const i=t[n];delete i.metadata,e.push(i)}return e}}clone(t){return(new this.constructor).copy(this,t)}copy(t,e=!0){if(this.name=t.name,this.up.copy(t.up),this.position.copy(t.position),this.rotation.order=t.rotation.order,this.quaternion.copy(t.quaternion),this.scale.copy(t.scale),this.matrix.copy(t.matrix),this.matrixWorld.copy(t.matrixWorld),this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrixWorldAutoUpdate=t.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=t.matrixWorldNeedsUpdate,this.layers.mask=t.layers.mask,this.visible=t.visible,this.castShadow=t.castShadow,this.receiveShadow=t.receiveShadow,this.frustumCulled=t.frustumCulled,this.renderOrder=t.renderOrder,this.animations=t.animations.slice(),this.userData=JSON.parse(JSON.stringify(t.userData)),!0===e)for(let e=0;e<t.children.length;e++){const n=t.children[e];this.add(n.clone())}return this}}an.DEFAULT_UP=new ie(0,1,0),an.DEFAULT_MATRIX_AUTO_UPDATE=!0,an.DEFAULT_MATRIX_WORLD_AUTO_UPDATE=!0;const sn=new ie,on=new ie,ln=new ie,cn=new ie,hn=new ie,un=new ie,dn=new ie,pn=new ie,fn=new ie,mn=new ie;let gn=!1;class _n{constructor(t=new ie,e=new ie,n=new ie){this.a=t,this.b=e,this.c=n}static getNormal(t,e,n,i){i.subVectors(n,e),sn.subVectors(t,e),i.cross(sn);const r=i.lengthSq();return r>0?i.multiplyScalar(1/Math.sqrt(r)):i.set(0,0,0)}static getBarycoord(t,e,n,i,r){sn.subVectors(i,e),on.subVectors(n,e),ln.subVectors(t,e);const a=sn.dot(sn),s=sn.dot(on),o=sn.dot(ln),l=on.dot(on),c=on.dot(ln),h=a*l-s*s;if(0===h)return r.set(0,0,0),null;const u=1/h,d=(l*o-s*c)*u,p=(a*c-s*o)*u;return r.set(1-d-p,p,d)}static containsPoint(t,e,n,i){return null!==this.getBarycoord(t,e,n,i,cn)&&(cn.x>=0&&cn.y>=0&&cn.x+cn.y<=1)}static getUV(t,e,n,i,r,a,s,o){return!1===gn&&(gn=!0),this.getInterpolation(t,e,n,i,r,a,s,o)}static getInterpolation(t,e,n,i,r,a,s,o){return null===this.getBarycoord(t,e,n,i,cn)?(o.x=0,o.y=0,\"z\"in o&&(o.z=0),\"w\"in o&&(o.w=0),null):(o.setScalar(0),o.addScaledVector(r,cn.x),o.addScaledVector(a,cn.y),o.addScaledVector(s,cn.z),o)}static isFrontFacing(t,e,n,i){return sn.subVectors(n,e),on.subVectors(t,e),sn.cross(on).dot(i)<0}set(t,e,n){return this.a.copy(t),this.b.copy(e),this.c.copy(n),this}setFromPointsAndIndices(t,e,n,i){return this.a.copy(t[e]),this.b.copy(t[n]),this.c.copy(t[i]),this}setFromAttributeAndIndices(t,e,n,i){return this.a.fromBufferAttribute(t,e),this.b.fromBufferAttribute(t,n),this.c.fromBufferAttribute(t,i),this}clone(){return(new this.constructor).copy(this)}copy(t){return this.a.copy(t.a),this.b.copy(t.b),this.c.copy(t.c),this}getArea(){return sn.subVectors(this.c,this.b),on.subVectors(this.a,this.b),.5*sn.cross(on).length()}getMidpoint(t){return t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return _n.getNormal(this.a,this.b,this.c,t)}getPlane(t){return t.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,e){return _n.getBarycoord(t,this.a,this.b,this.c,e)}getUV(t,e,n,i,r){return!1===gn&&(gn=!0),_n.getInterpolation(t,this.a,this.b,this.c,e,n,i,r)}getInterpolation(t,e,n,i,r){return _n.getInterpolation(t,this.a,this.b,this.c,e,n,i,r)}containsPoint(t){return _n.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return _n.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(t){return t.intersectsTriangle(this)}closestPointToPoint(t,e){const n=this.a,i=this.b,r=this.c;let a,s;hn.subVectors(i,n),un.subVectors(r,n),pn.subVectors(t,n);const o=hn.dot(pn),l=un.dot(pn);if(o<=0&&l<=0)return e.copy(n);fn.subVectors(t,i);const c=hn.dot(fn),h=un.dot(fn);if(c>=0&&h<=c)return e.copy(i);const u=o*h-c*l;if(u<=0&&o>=0&&c<=0)return a=o/(o-c),e.copy(n).addScaledVector(hn,a);mn.subVectors(t,r);const d=hn.dot(mn),p=un.dot(mn);if(p>=0&&d<=p)return e.copy(r);const f=d*l-o*p;if(f<=0&&l>=0&&p<=0)return s=l/(l-p),e.copy(n).addScaledVector(un,s);const m=c*p-d*h;if(m<=0&&h-c>=0&&d-p>=0)return dn.subVectors(r,i),s=(h-c)/(h-c+(d-p)),e.copy(i).addScaledVector(dn,s);const g=1/(m+f+u);return a=f*g,s=u*g,e.copy(n).addScaledVector(hn,a).addScaledVector(un,s)}equals(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}}const vn={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},xn={h:0,s:0,l:0},Mn={h:0,s:0,l:0};function Sn(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+6*(e-t)*n:n<.5?e:n<2/3?t+6*(e-t)*(2/3-n):t}class En{constructor(t,e,n){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(t,e,n)}set(t,e,n){if(void 0===e&&void 0===n){const e=t;e&&e.isColor?this.copy(e):\"number\"==typeof e?this.setHex(e):\"string\"==typeof e&&this.setStyle(e)}else this.setRGB(t,e,n);return this}setScalar(t){return this.r=t,this.g=t,this.b=t,this}setHex(t,e=J){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(255&t)/255,Vt.toWorkingColorSpace(this,e),this}setRGB(t,e,n,i=Vt.workingColorSpace){return this.r=t,this.g=e,this.b=n,Vt.toWorkingColorSpace(this,i),this}setHSL(t,e,n,i=Vt.workingColorSpace){var r;if(t=(t%(r=1)+r)%r,e=yt(e,0,1),n=yt(n,0,1),0===e)this.r=this.g=this.b=n;else{const i=n<=.5?n*(1+e):n+e-n*e,r=2*n-i;this.r=Sn(r,i,t+1/3),this.g=Sn(r,i,t),this.b=Sn(r,i,t-1/3)}return Vt.toWorkingColorSpace(this,i),this}setStyle(t,e=J){function n(t){void 0!==t&&parseFloat(t)}let i;if(i=/^(\\w+)\\(([^\\)]*)\\)/.exec(t)){let t;const r=i[1],a=i[2];switch(r){case\"rgb\":case\"rgba\":if(t=/^\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*(?:,\\s*(\\d*\\.?\\d+)\\s*)?$/.exec(a))return n(t[4]),this.setRGB(Math.min(255,parseInt(t[1],10))/255,Math.min(255,parseInt(t[2],10))/255,Math.min(255,parseInt(t[3],10))/255,e);if(t=/^\\s*(\\d+)\\%\\s*,\\s*(\\d+)\\%\\s*,\\s*(\\d+)\\%\\s*(?:,\\s*(\\d*\\.?\\d+)\\s*)?$/.exec(a))return n(t[4]),this.setRGB(Math.min(100,parseInt(t[1],10))/100,Math.min(100,parseInt(t[2],10))/100,Math.min(100,parseInt(t[3],10))/100,e);break;case\"hsl\":case\"hsla\":if(t=/^\\s*(\\d*\\.?\\d+)\\s*,\\s*(\\d*\\.?\\d+)\\%\\s*,\\s*(\\d*\\.?\\d+)\\%\\s*(?:,\\s*(\\d*\\.?\\d+)\\s*)?$/.exec(a))return n(t[4]),this.setHSL(parseFloat(t[1])/360,parseFloat(t[2])/100,parseFloat(t[3])/100,e)}}else if(i=/^\\#([A-Fa-f\\d]+)$/.exec(t)){const t=i[1],n=t.length;if(3===n)return this.setRGB(parseInt(t.charAt(0),16)/15,parseInt(t.charAt(1),16)/15,parseInt(t.charAt(2),16)/15,e);if(6===n)return this.setHex(parseInt(t,16),e)}else if(t&&t.length>0)return this.setColorName(t,e);return this}setColorName(t,e=J){const n=vn[t.toLowerCase()];return void 0!==n&&this.setHex(n,e),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(t){return this.r=t.r,this.g=t.g,this.b=t.b,this}copySRGBToLinear(t){return this.r=Gt(t.r),this.g=Gt(t.g),this.b=Gt(t.b),this}copyLinearToSRGB(t){return this.r=kt(t.r),this.g=kt(t.g),this.b=kt(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(t=J){return Vt.fromWorkingColorSpace(yn.copy(this),t),65536*Math.round(yt(255*yn.r,0,255))+256*Math.round(yt(255*yn.g,0,255))+Math.round(yt(255*yn.b,0,255))}getHexString(t=J){return(\"000000\"+this.getHex(t).toString(16)).slice(-6)}getHSL(t,e=Vt.workingColorSpace){Vt.fromWorkingColorSpace(yn.copy(this),e);const n=yn.r,i=yn.g,r=yn.b,a=Math.max(n,i,r),s=Math.min(n,i,r);let o,l;const c=(s+a)/2;if(s===a)o=0,l=0;else{const t=a-s;switch(l=c<=.5?t/(a+s):t/(2-a-s),a){case n:o=(i-r)/t+(i<r?6:0);break;case i:o=(r-n)/t+2;break;case r:o=(n-i)/t+4}o/=6}return t.h=o,t.s=l,t.l=c,t}getRGB(t,e=Vt.workingColorSpace){return Vt.fromWorkingColorSpace(yn.copy(this),e),t.r=yn.r,t.g=yn.g,t.b=yn.b,t}getStyle(t=J){Vt.fromWorkingColorSpace(yn.copy(this),t);const e=yn.r,n=yn.g,i=yn.b;return t!==J?`color(${t} ${e.toFixed(3)} ${n.toFixed(3)} ${i.toFixed(3)})`:`rgb(${Math.round(255*e)},${Math.round(255*n)},${Math.round(255*i)})`}offsetHSL(t,e,n){return this.getHSL(xn),this.setHSL(xn.h+t,xn.s+e,xn.l+n)}add(t){return this.r+=t.r,this.g+=t.g,this.b+=t.b,this}addColors(t,e){return this.r=t.r+e.r,this.g=t.g+e.g,this.b=t.b+e.b,this}addScalar(t){return this.r+=t,this.g+=t,this.b+=t,this}sub(t){return this.r=Math.max(0,this.r-t.r),this.g=Math.max(0,this.g-t.g),this.b=Math.max(0,this.b-t.b),this}multiply(t){return this.r*=t.r,this.g*=t.g,this.b*=t.b,this}multiplyScalar(t){return this.r*=t,this.g*=t,this.b*=t,this}lerp(t,e){return this.r+=(t.r-this.r)*e,this.g+=(t.g-this.g)*e,this.b+=(t.b-this.b)*e,this}lerpColors(t,e,n){return this.r=t.r+(e.r-t.r)*n,this.g=t.g+(e.g-t.g)*n,this.b=t.b+(e.b-t.b)*n,this}lerpHSL(t,e){this.getHSL(xn),t.getHSL(Mn);const n=Tt(xn.h,Mn.h,e),i=Tt(xn.s,Mn.s,e),r=Tt(xn.l,Mn.l,e);return this.setHSL(n,i,r),this}setFromVector3(t){return this.r=t.x,this.g=t.y,this.b=t.z,this}applyMatrix3(t){const e=this.r,n=this.g,i=this.b,r=t.elements;return this.r=r[0]*e+r[3]*n+r[6]*i,this.g=r[1]*e+r[4]*n+r[7]*i,this.b=r[2]*e+r[5]*n+r[8]*i,this}equals(t){return t.r===this.r&&t.g===this.g&&t.b===this.b}fromArray(t,e=0){return this.r=t[e],this.g=t[e+1],this.b=t[e+2],this}toArray(t=[],e=0){return t[e]=this.r,t[e+1]=this.g,t[e+2]=this.b,t}fromBufferAttribute(t,e){return this.r=t.getX(e),this.g=t.getY(e),this.b=t.getZ(e),this}toJSON(){return this.getHex()}*[Symbol.iterator](){yield this.r,yield this.g,yield this.b}}const yn=new En;En.NAMES=vn;let Tn=0;class bn extends vt{constructor(){super(),this.isMaterial=!0,Object.defineProperty(this,\"id\",{value:Tn++}),this.uuid=Et(),this.name=\"\",this.type=\"Material\",this.blending=1,this.side=0,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.alphaHash=!1,this.blendSrc=204,this.blendDst=205,this.blendEquation=r,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.blendColor=new En(0,0,0),this.blendAlpha=0,this.depthFunc=3,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=519,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=at,this.stencilZFail=at,this.stencilZPass=at,this.stencilWrite=!1,this.clippingPlanes=null,this.clipIntersection=!1,this.clipShadows=!1,this.shadowSide=null,this.colorWrite=!0,this.precision=null,this.polygonOffset=!1,this.polygonOffsetFactor=0,this.polygonOffsetUnits=0,this.dithering=!1,this.alphaToCoverage=!1,this.premultipliedAlpha=!1,this.forceSinglePass=!1,this.visible=!0,this.toneMapped=!0,this.userData={},this.version=0,this._alphaTest=0}get alphaTest(){return this._alphaTest}set alphaTest(t){this._alphaTest>0!=t>0&&this.version++,this._alphaTest=t}onBuild(){}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(t){if(void 0!==t)for(const e in t){const n=t[e];if(void 0===n)continue;const i=this[e];void 0!==i&&(i&&i.isColor?i.set(n):i&&i.isVector3&&n&&n.isVector3?i.copy(n):this[e]=n)}}toJSON(t){const e=void 0===t||\"string\"==typeof t;e&&(t={textures:{},images:{}});const n={metadata:{version:4.6,type:\"Material\",generator:\"Material.toJSON\"}};function i(t){const e=[];for(const n in t){const i=t[n];delete i.metadata,e.push(i)}return e}if(n.uuid=this.uuid,n.type=this.type,\"\"!==this.name&&(n.name=this.name),this.color&&this.color.isColor&&(n.color=this.color.getHex()),void 0!==this.roughness&&(n.roughness=this.roughness),void 0!==this.metalness&&(n.metalness=this.metalness),void 0!==this.sheen&&(n.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(n.sheenColor=this.sheenColor.getHex()),void 0!==this.sheenRoughness&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity&&1!==this.emissiveIntensity&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),void 0!==this.specularIntensity&&(n.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(n.specularColor=this.specularColor.getHex()),void 0!==this.shininess&&(n.shininess=this.shininess),void 0!==this.clearcoat&&(n.clearcoat=this.clearcoat),void 0!==this.clearcoatRoughness&&(n.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(t).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(t).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(t).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),void 0!==this.iridescence&&(n.iridescence=this.iridescence),void 0!==this.iridescenceIOR&&(n.iridescenceIOR=this.iridescenceIOR),void 0!==this.iridescenceThicknessRange&&(n.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(n.iridescenceMap=this.iridescenceMap.toJSON(t).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(n.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(t).uuid),void 0!==this.anisotropy&&(n.anisotropy=this.anisotropy),void 0!==this.anisotropyRotation&&(n.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(n.anisotropyMap=this.anisotropyMap.toJSON(t).uuid),this.map&&this.map.isTexture&&(n.map=this.map.toJSON(t).uuid),this.matcap&&this.matcap.isTexture&&(n.matcap=this.matcap.toJSON(t).uuid),this.alphaMap&&this.alphaMap.isTexture&&(n.alphaMap=this.alphaMap.toJSON(t).uuid),this.lightMap&&this.lightMap.isTexture&&(n.lightMap=this.lightMap.toJSON(t).uuid,n.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(n.aoMap=this.aoMap.toJSON(t).uuid,n.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(n.bumpMap=this.bumpMap.toJSON(t).uuid,n.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(n.normalMap=this.normalMap.toJSON(t).uuid,n.normalMapType=this.normalMapType,n.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(n.displacementMap=this.displacementMap.toJSON(t).uuid,n.displacementScale=this.displacementScale,n.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(n.roughnessMap=this.roughnessMap.toJSON(t).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(n.metalnessMap=this.metalnessMap.toJSON(t).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(n.emissiveMap=this.emissiveMap.toJSON(t).uuid),this.specularMap&&this.specularMap.isTexture&&(n.specularMap=this.specularMap.toJSON(t).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(n.specularIntensityMap=this.specularIntensityMap.toJSON(t).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(n.specularColorMap=this.specularColorMap.toJSON(t).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(t).uuid,void 0!==this.combine&&(n.combine=this.combine)),void 0!==this.envMapIntensity&&(n.envMapIntensity=this.envMapIntensity),void 0!==this.reflectivity&&(n.reflectivity=this.reflectivity),void 0!==this.refractionRatio&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(t).uuid),void 0!==this.transmission&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(t).uuid),void 0!==this.thickness&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(t).uuid),void 0!==this.attenuationDistance&&this.attenuationDistance!==1/0&&(n.attenuationDistance=this.attenuationDistance),void 0!==this.attenuationColor&&(n.attenuationColor=this.attenuationColor.getHex()),void 0!==this.size&&(n.size=this.size),null!==this.shadowSide&&(n.shadowSide=this.shadowSide),void 0!==this.sizeAttenuation&&(n.sizeAttenuation=this.sizeAttenuation),1!==this.blending&&(n.blending=this.blending),0!==this.side&&(n.side=this.side),!0===this.vertexColors&&(n.vertexColors=!0),this.opacity<1&&(n.opacity=this.opacity),!0===this.transparent&&(n.transparent=!0),204!==this.blendSrc&&(n.blendSrc=this.blendSrc),205!==this.blendDst&&(n.blendDst=this.blendDst),this.blendEquation!==r&&(n.blendEquation=this.blendEquation),null!==this.blendSrcAlpha&&(n.blendSrcAlpha=this.blendSrcAlpha),null!==this.blendDstAlpha&&(n.blendDstAlpha=this.blendDstAlpha),null!==this.blendEquationAlpha&&(n.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(n.blendColor=this.blendColor.getHex()),0!==this.blendAlpha&&(n.blendAlpha=this.blendAlpha),3!==this.depthFunc&&(n.depthFunc=this.depthFunc),!1===this.depthTest&&(n.depthTest=this.depthTest),!1===this.depthWrite&&(n.depthWrite=this.depthWrite),!1===this.colorWrite&&(n.colorWrite=this.colorWrite),255!==this.stencilWriteMask&&(n.stencilWriteMask=this.stencilWriteMask),519!==this.stencilFunc&&(n.stencilFunc=this.stencilFunc),0!==this.stencilRef&&(n.stencilRef=this.stencilRef),255!==this.stencilFuncMask&&(n.stencilFuncMask=this.stencilFuncMask),this.stencilFail!==at&&(n.stencilFail=this.stencilFail),this.stencilZFail!==at&&(n.stencilZFail=this.stencilZFail),this.stencilZPass!==at&&(n.stencilZPass=this.stencilZPass),!0===this.stencilWrite&&(n.stencilWrite=this.stencilWrite),void 0!==this.rotation&&0!==this.rotation&&(n.rotation=this.rotation),!0===this.polygonOffset&&(n.polygonOffset=!0),0!==this.polygonOffsetFactor&&(n.polygonOffsetFactor=this.polygonOffsetFactor),0!==this.polygonOffsetUnits&&(n.polygonOffsetUnits=this.polygonOffsetUnits),void 0!==this.linewidth&&1!==this.linewidth&&(n.linewidth=this.linewidth),void 0!==this.dashSize&&(n.dashSize=this.dashSize),void 0!==this.gapSize&&(n.gapSize=this.gapSize),void 0!==this.scale&&(n.scale=this.scale),!0===this.dithering&&(n.dithering=!0),this.alphaTest>0&&(n.alphaTest=this.alphaTest),!0===this.alphaHash&&(n.alphaHash=!0),!0===this.alphaToCoverage&&(n.alphaToCoverage=!0),!0===this.premultipliedAlpha&&(n.premultipliedAlpha=!0),!0===this.forceSinglePass&&(n.forceSinglePass=!0),!0===this.wireframe&&(n.wireframe=!0),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),\"round\"!==this.wireframeLinecap&&(n.wireframeLinecap=this.wireframeLinecap),\"round\"!==this.wireframeLinejoin&&(n.wireframeLinejoin=this.wireframeLinejoin),!0===this.flatShading&&(n.flatShading=!0),!1===this.visible&&(n.visible=!1),!1===this.toneMapped&&(n.toneMapped=!1),!1===this.fog&&(n.fog=!1),Object.keys(this.userData).length>0&&(n.userData=this.userData),e){const e=i(t.textures),r=i(t.images);e.length>0&&(n.textures=e),r.length>0&&(n.images=r)}return n}clone(){return(new this.constructor).copy(this)}copy(t){this.name=t.name,this.blending=t.blending,this.side=t.side,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.transparent=t.transparent,this.blendSrc=t.blendSrc,this.blendDst=t.blendDst,this.blendEquation=t.blendEquation,this.blendSrcAlpha=t.blendSrcAlpha,this.blendDstAlpha=t.blendDstAlpha,this.blendEquationAlpha=t.blendEquationAlpha,this.blendColor.copy(t.blendColor),this.blendAlpha=t.blendAlpha,this.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.stencilWriteMask=t.stencilWriteMask,this.stencilFunc=t.stencilFunc,this.stencilRef=t.stencilRef,this.stencilFuncMask=t.stencilFuncMask,this.stencilFail=t.stencilFail,this.stencilZFail=t.stencilZFail,this.stencilZPass=t.stencilZPass,this.stencilWrite=t.stencilWrite;const e=t.clippingPlanes;let n=null;if(null!==e){const t=e.length;n=new Array(t);for(let i=0;i!==t;++i)n[i]=e[i].clone()}return this.clippingPlanes=n,this.clipIntersection=t.clipIntersection,this.clipShadows=t.clipShadows,this.shadowSide=t.shadowSide,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.dithering=t.dithering,this.alphaTest=t.alphaTest,this.alphaHash=t.alphaHash,this.alphaToCoverage=t.alphaToCoverage,this.premultipliedAlpha=t.premultipliedAlpha,this.forceSinglePass=t.forceSinglePass,this.visible=t.visible,this.toneMapped=t.toneMapped,this.userData=JSON.parse(JSON.stringify(t.userData)),this}dispose(){this.dispatchEvent({type:\"dispose\"})}set needsUpdate(t){!0===t&&this.version++}}class An extends bn{constructor(t){super(),this.isMeshBasicMaterial=!0,this.type=\"MeshBasicMaterial\",this.color=new En(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\"round\",this.wireframeLinejoin=\"round\",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.fog=t.fog,this}}const wn=new ie,Rn=new Ct;class Cn{constructor(t,e,n=!1){if(Array.isArray(t))throw new TypeError(\"THREE.BufferAttribute: array should be a Typed Array.\");this.isBufferAttribute=!0,this.name=\"\",this.array=t,this.itemSize=e,this.count=void 0!==t?t.length/e:0,this.normalized=n,this.usage=35044,this._updateRange={offset:0,count:-1},this.updateRanges=[],this.gpuType=B,this.version=0}onUploadCallback(){}set needsUpdate(t){!0===t&&this.version++}get updateRange(){return this._updateRange}setUsage(t){return this.usage=t,this}addUpdateRange(t,e){this.updateRanges.push({start:t,count:e})}clearUpdateRanges(){this.updateRanges.length=0}copy(t){return this.name=t.name,this.array=new t.array.constructor(t.array),this.itemSize=t.itemSize,this.count=t.count,this.normalized=t.normalized,this.usage=t.usage,this.gpuType=t.gpuType,this}copyAt(t,e,n){t*=this.itemSize,n*=e.itemSize;for(let i=0,r=this.itemSize;i<r;i++)this.array[t+i]=e.array[n+i];return this}copyArray(t){return this.array.set(t),this}applyMatrix3(t){if(2===this.itemSize)for(let e=0,n=this.count;e<n;e++)Rn.fromBufferAttribute(this,e),Rn.applyMatrix3(t),this.setXY(e,Rn.x,Rn.y);else if(3===this.itemSize)for(let e=0,n=this.count;e<n;e++)wn.fromBufferAttribute(this,e),wn.applyMatrix3(t),this.setXYZ(e,wn.x,wn.y,wn.z);return this}applyMatrix4(t){for(let e=0,n=this.count;e<n;e++)wn.fromBufferAttribute(this,e),wn.applyMatrix4(t),this.setXYZ(e,wn.x,wn.y,wn.z);return this}applyNormalMatrix(t){for(let e=0,n=this.count;e<n;e++)wn.fromBufferAttribute(this,e),wn.applyNormalMatrix(t),this.setXYZ(e,wn.x,wn.y,wn.z);return this}transformDirection(t){for(let e=0,n=this.count;e<n;e++)wn.fromBufferAttribute(this,e),wn.transformDirection(t),this.setXYZ(e,wn.x,wn.y,wn.z);return this}set(t,e=0){return this.array.set(t,e),this}getComponent(t,e){let n=this.array[t*this.itemSize+e];return this.normalized&&(n=wt(n,this.array)),n}setComponent(t,e,n){return this.normalized&&(n=Rt(n,this.array)),this.array[t*this.itemSize+e]=n,this}getX(t){let e=this.array[t*this.itemSize];return this.normalized&&(e=wt(e,this.array)),e}setX(t,e){return this.normalized&&(e=Rt(e,this.array)),this.array[t*this.itemSize]=e,this}getY(t){let e=this.array[t*this.itemSize+1];return this.normalized&&(e=wt(e,this.array)),e}setY(t,e){return this.normalized&&(e=Rt(e,this.array)),this.array[t*this.itemSize+1]=e,this}getZ(t){let e=this.array[t*this.itemSize+2];return this.normalized&&(e=wt(e,this.array)),e}setZ(t,e){return this.normalized&&(e=Rt(e,this.array)),this.array[t*this.itemSize+2]=e,this}getW(t){let e=this.array[t*this.itemSize+3];return this.normalized&&(e=wt(e,this.array)),e}setW(t,e){return this.normalized&&(e=Rt(e,this.array)),this.array[t*this.itemSize+3]=e,this}setXY(t,e,n){return t*=this.itemSize,this.normalized&&(e=Rt(e,this.array),n=Rt(n,this.array)),this.array[t+0]=e,this.array[t+1]=n,this}setXYZ(t,e,n,i){return t*=this.itemSize,this.normalized&&(e=Rt(e,this.array),n=Rt(n,this.array),i=Rt(i,this.array)),this.array[t+0]=e,this.array[t+1]=n,this.array[t+2]=i,this}setXYZW(t,e,n,i,r){return t*=this.itemSize,this.normalized&&(e=Rt(e,this.array),n=Rt(n,this.array),i=Rt(i,this.array),r=Rt(r,this.array)),this.array[t+0]=e,this.array[t+1]=n,this.array[t+2]=i,this.array[t+3]=r,this}onUpload(t){return this.onUploadCallback=t,this}clone(){return new this.constructor(this.array,this.itemSize).copy(this)}toJSON(){const t={itemSize:this.itemSize,type:this.array.constructor.name,array:Array.from(this.array),normalized:this.normalized};return\"\"!==this.name&&(t.name=this.name),35044!==this.usage&&(t.usage=this.usage),t}}class Ln extends Cn{constructor(t,e,n){super(new Uint16Array(t),e,n)}}class Pn extends Cn{constructor(t,e,n){super(new Uint32Array(t),e,n)}}class Un extends Cn{constructor(t,e,n){super(new Float32Array(t),e,n)}}let Dn=0;const Nn=new De,In=new an,On=new ie,Fn=new se,Bn=new se,zn=new ie;class Hn extends vt{constructor(){super(),this.isBufferGeometry=!0,Object.defineProperty(this,\"id\",{value:Dn++}),this.uuid=Et(),this.name=\"\",this.type=\"BufferGeometry\",this.index=null,this.attributes={},this.morphAttributes={},this.morphTargetsRelative=!1,this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.drawRange={start:0,count:1/0},this.userData={}}getIndex(){return this.index}setIndex(t){return Array.isArray(t)?this.index=new(Ut(t)?Pn:Ln)(t,1):this.index=t,this}getAttribute(t){return this.attributes[t]}setAttribute(t,e){return this.attributes[t]=e,this}deleteAttribute(t){return delete this.attributes[t],this}hasAttribute(t){return void 0!==this.attributes[t]}addGroup(t,e,n=0){this.groups.push({start:t,count:e,materialIndex:n})}clearGroups(){this.groups=[]}setDrawRange(t,e){this.drawRange.start=t,this.drawRange.count=e}applyMatrix4(t){const e=this.attributes.position;void 0!==e&&(e.applyMatrix4(t),e.needsUpdate=!0);const n=this.attributes.normal;if(void 0!==n){const e=(new Lt).getNormalMatrix(t);n.applyNormalMatrix(e),n.needsUpdate=!0}const i=this.attributes.tangent;return void 0!==i&&(i.transformDirection(t),i.needsUpdate=!0),null!==this.boundingBox&&this.computeBoundingBox(),null!==this.boundingSphere&&this.computeBoundingSphere(),this}applyQuaternion(t){return Nn.makeRotationFromQuaternion(t),this.applyMatrix4(Nn),this}rotateX(t){return Nn.makeRotationX(t),this.applyMatrix4(Nn),this}rotateY(t){return Nn.makeRotationY(t),this.applyMatrix4(Nn),this}rotateZ(t){return Nn.makeRotationZ(t),this.applyMatrix4(Nn),this}translate(t,e,n){return Nn.makeTranslation(t,e,n),this.applyMatrix4(Nn),this}scale(t,e,n){return Nn.makeScale(t,e,n),this.applyMatrix4(Nn),this}lookAt(t){return In.lookAt(t),In.updateMatrix(),this.applyMatrix4(In.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(On).negate(),this.translate(On.x,On.y,On.z),this}setFromPoints(t){const e=[];for(let n=0,i=t.length;n<i;n++){const i=t[n];e.push(i.x,i.y,i.z||0)}return this.setAttribute(\"position\",new Un(e,3)),this}computeBoundingBox(){null===this.boundingBox&&(this.boundingBox=new se);const t=this.attributes.position,e=this.morphAttributes.position;if(t&&t.isGLBufferAttribute)this.boundingBox.set(new ie(-1/0,-1/0,-1/0),new ie(1/0,1/0,1/0));else{if(void 0!==t){if(this.boundingBox.setFromBufferAttribute(t),e)for(let t=0,n=e.length;t<n;t++){const n=e[t];Fn.setFromBufferAttribute(n),this.morphTargetsRelative?(zn.addVectors(this.boundingBox.min,Fn.min),this.boundingBox.expandByPoint(zn),zn.addVectors(this.boundingBox.max,Fn.max),this.boundingBox.expandByPoint(zn)):(this.boundingBox.expandByPoint(Fn.min),this.boundingBox.expandByPoint(Fn.max))}}else this.boundingBox.makeEmpty();isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z)}}computeBoundingSphere(){null===this.boundingSphere&&(this.boundingSphere=new Te);const t=this.attributes.position,e=this.morphAttributes.position;if(t&&t.isGLBufferAttribute)this.boundingSphere.set(new ie,1/0);else if(t){const n=this.boundingSphere.center;if(Fn.setFromBufferAttribute(t),e)for(let t=0,n=e.length;t<n;t++){const n=e[t];Bn.setFromBufferAttribute(n),this.morphTargetsRelative?(zn.addVectors(Fn.min,Bn.min),Fn.expandByPoint(zn),zn.addVectors(Fn.max,Bn.max),Fn.expandByPoint(zn)):(Fn.expandByPoint(Bn.min),Fn.expandByPoint(Bn.max))}Fn.getCenter(n);let i=0;for(let e=0,r=t.count;e<r;e++)zn.fromBufferAttribute(t,e),i=Math.max(i,n.distanceToSquared(zn));if(e)for(let r=0,a=e.length;r<a;r++){const a=e[r],s=this.morphTargetsRelative;for(let e=0,r=a.count;e<r;e++)zn.fromBufferAttribute(a,e),s&&(On.fromBufferAttribute(t,e),zn.add(On)),i=Math.max(i,n.distanceToSquared(zn))}this.boundingSphere.radius=Math.sqrt(i),isNaN(this.boundingSphere.radius)}}computeTangents(){const t=this.index,e=this.attributes;if(null===t||void 0===e.position||void 0===e.normal||void 0===e.uv)return;const n=t.array,i=e.position.array,r=e.normal.array,a=e.uv.array,s=i.length/3;!1===this.hasAttribute(\"tangent\")&&this.setAttribute(\"tangent\",new Cn(new Float32Array(4*s),4));const o=this.getAttribute(\"tangent\").array,l=[],c=[];for(let t=0;t<s;t++)l[t]=new ie,c[t]=new ie;const h=new ie,u=new ie,d=new ie,p=new Ct,f=new Ct,m=new Ct,g=new ie,_=new ie;function v(t,e,n){h.fromArray(i,3*t),u.fromArray(i,3*e),d.fromArray(i,3*n),p.fromArray(a,2*t),f.fromArray(a,2*e),m.fromArray(a,2*n),u.sub(h),d.sub(h),f.sub(p),m.sub(p);const r=1/(f.x*m.y-m.x*f.y);isFinite(r)&&(g.copy(u).multiplyScalar(m.y).addScaledVector(d,-f.y).multiplyScalar(r),_.copy(d).multiplyScalar(f.x).addScaledVector(u,-m.x).multiplyScalar(r),l[t].add(g),l[e].add(g),l[n].add(g),c[t].add(_),c[e].add(_),c[n].add(_))}let x=this.groups;0===x.length&&(x=[{start:0,count:n.length}]);for(let t=0,e=x.length;t<e;++t){const e=x[t],i=e.start;for(let t=i,r=i+e.count;t<r;t+=3)v(n[t+0],n[t+1],n[t+2])}const M=new ie,S=new ie,E=new ie,y=new ie;function T(t){E.fromArray(r,3*t),y.copy(E);const e=l[t];M.copy(e),M.sub(E.multiplyScalar(E.dot(e))).normalize(),S.crossVectors(y,e);const n=S.dot(c[t])<0?-1:1;o[4*t]=M.x,o[4*t+1]=M.y,o[4*t+2]=M.z,o[4*t+3]=n}for(let t=0,e=x.length;t<e;++t){const e=x[t],i=e.start;for(let t=i,r=i+e.count;t<r;t+=3)T(n[t+0]),T(n[t+1]),T(n[t+2])}}computeVertexNormals(){const t=this.index,e=this.getAttribute(\"position\");if(void 0!==e){let n=this.getAttribute(\"normal\");if(void 0===n)n=new Cn(new Float32Array(3*e.count),3),this.setAttribute(\"normal\",n);else for(let t=0,e=n.count;t<e;t++)n.setXYZ(t,0,0,0);const i=new ie,r=new ie,a=new ie,s=new ie,o=new ie,l=new ie,c=new ie,h=new ie;if(t)for(let u=0,d=t.count;u<d;u+=3){const d=t.getX(u+0),p=t.getX(u+1),f=t.getX(u+2);i.fromBufferAttribute(e,d),r.fromBufferAttribute(e,p),a.fromBufferAttribute(e,f),c.subVectors(a,r),h.subVectors(i,r),c.cross(h),s.fromBufferAttribute(n,d),o.fromBufferAttribute(n,p),l.fromBufferAttribute(n,f),s.add(c),o.add(c),l.add(c),n.setXYZ(d,s.x,s.y,s.z),n.setXYZ(p,o.x,o.y,o.z),n.setXYZ(f,l.x,l.y,l.z)}else for(let t=0,s=e.count;t<s;t+=3)i.fromBufferAttribute(e,t+0),r.fromBufferAttribute(e,t+1),a.fromBufferAttribute(e,t+2),c.subVectors(a,r),h.subVectors(i,r),c.cross(h),n.setXYZ(t+0,c.x,c.y,c.z),n.setXYZ(t+1,c.x,c.y,c.z),n.setXYZ(t+2,c.x,c.y,c.z);this.normalizeNormals(),n.needsUpdate=!0}}normalizeNormals(){const t=this.attributes.normal;for(let e=0,n=t.count;e<n;e++)zn.fromBufferAttribute(t,e),zn.normalize(),t.setXYZ(e,zn.x,zn.y,zn.z)}toNonIndexed(){function t(t,e){const n=t.array,i=t.itemSize,r=t.normalized,a=new n.constructor(e.length*i);let s=0,o=0;for(let r=0,l=e.length;r<l;r++){s=t.isInterleavedBufferAttribute?e[r]*t.data.stride+t.offset:e[r]*i;for(let t=0;t<i;t++)a[o++]=n[s++]}return new Cn(a,i,r)}if(null===this.index)return this;const e=new Hn,n=this.index.array,i=this.attributes;for(const r in i){const a=t(i[r],n);e.setAttribute(r,a)}const r=this.morphAttributes;for(const i in r){const a=[],s=r[i];for(let e=0,i=s.length;e<i;e++){const i=t(s[e],n);a.push(i)}e.morphAttributes[i]=a}e.morphTargetsRelative=this.morphTargetsRelative;const a=this.groups;for(let t=0,n=a.length;t<n;t++){const n=a[t];e.addGroup(n.start,n.count,n.materialIndex)}return e}toJSON(){const t={metadata:{version:4.6,type:\"BufferGeometry\",generator:\"BufferGeometry.toJSON\"}};if(t.uuid=this.uuid,t.type=this.type,\"\"!==this.name&&(t.name=this.name),Object.keys(this.userData).length>0&&(t.userData=this.userData),void 0!==this.parameters){const e=this.parameters;for(const n in e)void 0!==e[n]&&(t[n]=e[n]);return t}t.data={attributes:{}};const e=this.index;null!==e&&(t.data.index={type:e.array.constructor.name,array:Array.prototype.slice.call(e.array)});const n=this.attributes;for(const e in n){const i=n[e];t.data.attributes[e]=i.toJSON(t.data)}const i={};let r=!1;for(const e in this.morphAttributes){const n=this.morphAttributes[e],a=[];for(let e=0,i=n.length;e<i;e++){const i=n[e];a.push(i.toJSON(t.data))}a.length>0&&(i[e]=a,r=!0)}r&&(t.data.morphAttributes=i,t.data.morphTargetsRelative=this.morphTargetsRelative);const a=this.groups;a.length>0&&(t.data.groups=JSON.parse(JSON.stringify(a)));const s=this.boundingSphere;return null!==s&&(t.data.boundingSphere={center:s.center.toArray(),radius:s.radius}),t}clone(){return(new this.constructor).copy(this)}copy(t){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;const e={};this.name=t.name;const n=t.index;null!==n&&this.setIndex(n.clone(e));const i=t.attributes;for(const t in i){const n=i[t];this.setAttribute(t,n.clone(e))}const r=t.morphAttributes;for(const t in r){const n=[],i=r[t];for(let t=0,r=i.length;t<r;t++)n.push(i[t].clone(e));this.morphAttributes[t]=n}this.morphTargetsRelative=t.morphTargetsRelative;const a=t.groups;for(let t=0,e=a.length;t<e;t++){const e=a[t];this.addGroup(e.start,e.count,e.materialIndex)}const s=t.boundingBox;null!==s&&(this.boundingBox=s.clone());const o=t.boundingSphere;return null!==o&&(this.boundingSphere=o.clone()),this.drawRange.start=t.drawRange.start,this.drawRange.count=t.drawRange.count,this.userData=t.userData,this}dispose(){this.dispatchEvent({type:\"dispose\"})}}const Vn=new De,Gn=new Ue,kn=new Te,Wn=new ie,Xn=new ie,qn=new ie,jn=new ie,Yn=new ie,Kn=new ie,Zn=new Ct,Jn=new Ct,Qn=new Ct,$n=new ie,ti=new ie,ei=new ie,ni=new ie,ii=new ie;class ri extends an{constructor(t=new Hn,e=new An){super(),this.isMesh=!0,this.type=\"Mesh\",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t,e){return super.copy(t,e),void 0!==t.morphTargetInfluences&&(this.morphTargetInfluences=t.morphTargetInfluences.slice()),void 0!==t.morphTargetDictionary&&(this.morphTargetDictionary=Object.assign({},t.morphTargetDictionary)),this.material=Array.isArray(t.material)?t.material.slice():t.material,this.geometry=t.geometry,this}updateMorphTargets(){const t=this.geometry.morphAttributes,e=Object.keys(t);if(e.length>0){const n=t[e[0]];if(void 0!==n){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let t=0,e=n.length;t<e;t++){const e=n[t].name||String(t);this.morphTargetInfluences.push(0),this.morphTargetDictionary[e]=t}}}}getVertexPosition(t,e){const n=this.geometry,i=n.attributes.position,r=n.morphAttributes.position,a=n.morphTargetsRelative;e.fromBufferAttribute(i,t);const s=this.morphTargetInfluences;if(r&&s){Kn.set(0,0,0);for(let n=0,i=r.length;n<i;n++){const i=s[n],o=r[n];0!==i&&(Yn.fromBufferAttribute(o,t),a?Kn.addScaledVector(Yn,i):Kn.addScaledVector(Yn.sub(e),i))}e.add(Kn)}return e}raycast(t,e){const n=this.geometry,i=this.material,r=this.matrixWorld;if(void 0!==i){if(null===n.boundingSphere&&n.computeBoundingSphere(),kn.copy(n.boundingSphere),kn.applyMatrix4(r),Gn.copy(t.ray).recast(t.near),!1===kn.containsPoint(Gn.origin)){if(null===Gn.intersectSphere(kn,Wn))return;if(Gn.origin.distanceToSquared(Wn)>(t.far-t.near)**2)return}Vn.copy(r).invert(),Gn.copy(t.ray).applyMatrix4(Vn),null!==n.boundingBox&&!1===Gn.intersectsBox(n.boundingBox)||this._computeIntersections(t,e,Gn)}}_computeIntersections(t,e,n){let i;const r=this.geometry,a=this.material,s=r.index,o=r.attributes.position,l=r.attributes.uv,c=r.attributes.uv1,h=r.attributes.normal,u=r.groups,d=r.drawRange;if(null!==s)if(Array.isArray(a))for(let r=0,o=u.length;r<o;r++){const o=u[r],p=a[o.materialIndex];for(let r=Math.max(o.start,d.start),a=Math.min(s.count,Math.min(o.start+o.count,d.start+d.count));r<a;r+=3){i=ai(this,p,t,n,l,c,h,s.getX(r),s.getX(r+1),s.getX(r+2)),i&&(i.faceIndex=Math.floor(r/3),i.face.materialIndex=o.materialIndex,e.push(i))}}else{for(let r=Math.max(0,d.start),o=Math.min(s.count,d.start+d.count);r<o;r+=3){i=ai(this,a,t,n,l,c,h,s.getX(r),s.getX(r+1),s.getX(r+2)),i&&(i.faceIndex=Math.floor(r/3),e.push(i))}}else if(void 0!==o)if(Array.isArray(a))for(let r=0,s=u.length;r<s;r++){const s=u[r],p=a[s.materialIndex];for(let r=Math.max(s.start,d.start),a=Math.min(o.count,Math.min(s.start+s.count,d.start+d.count));r<a;r+=3){i=ai(this,p,t,n,l,c,h,r,r+1,r+2),i&&(i.faceIndex=Math.floor(r/3),i.face.materialIndex=s.materialIndex,e.push(i))}}else{for(let r=Math.max(0,d.start),s=Math.min(o.count,d.start+d.count);r<s;r+=3){i=ai(this,a,t,n,l,c,h,r,r+1,r+2),i&&(i.faceIndex=Math.floor(r/3),e.push(i))}}}}function ai(t,e,n,i,r,a,s,o,l,c){t.getVertexPosition(o,Xn),t.getVertexPosition(l,qn),t.getVertexPosition(c,jn);const h=function(t,e,n,i,r,a,s,o){let l;if(l=1===e.side?i.intersectTriangle(s,a,r,!0,o):i.intersectTriangle(r,a,s,0===e.side,o),null===l)return null;ii.copy(o),ii.applyMatrix4(t.matrixWorld);const c=n.ray.origin.distanceTo(ii);return c<n.near||c>n.far?null:{distance:c,point:ii.clone(),object:t}}(t,e,n,i,Xn,qn,jn,ni);if(h){r&&(Zn.fromBufferAttribute(r,o),Jn.fromBufferAttribute(r,l),Qn.fromBufferAttribute(r,c),h.uv=_n.getInterpolation(ni,Xn,qn,jn,Zn,Jn,Qn,new Ct)),a&&(Zn.fromBufferAttribute(a,o),Jn.fromBufferAttribute(a,l),Qn.fromBufferAttribute(a,c),h.uv1=_n.getInterpolation(ni,Xn,qn,jn,Zn,Jn,Qn,new Ct),h.uv2=h.uv1),s&&($n.fromBufferAttribute(s,o),ti.fromBufferAttribute(s,l),ei.fromBufferAttribute(s,c),h.normal=_n.getInterpolation(ni,Xn,qn,jn,$n,ti,ei,new ie),h.normal.dot(i.direction)>0&&h.normal.multiplyScalar(-1));const t={a:o,b:l,c:c,normal:new ie,materialIndex:0};_n.getNormal(Xn,qn,jn,t.normal),h.face=t}return h}class si extends Hn{constructor(t=1,e=1,n=1,i=1,r=1,a=1){super(),this.type=\"BoxGeometry\",this.parameters={width:t,height:e,depth:n,widthSegments:i,heightSegments:r,depthSegments:a};const s=this;i=Math.floor(i),r=Math.floor(r),a=Math.floor(a);const o=[],l=[],c=[],h=[];let u=0,d=0;function p(t,e,n,i,r,a,p,f,m,g,_){const v=a/m,x=p/g,M=a/2,S=p/2,E=f/2,y=m+1,T=g+1;let b=0,A=0;const w=new ie;for(let a=0;a<T;a++){const s=a*x-S;for(let o=0;o<y;o++){const u=o*v-M;w[t]=u*i,w[e]=s*r,w[n]=E,l.push(w.x,w.y,w.z),w[t]=0,w[e]=0,w[n]=f>0?1:-1,c.push(w.x,w.y,w.z),h.push(o/m),h.push(1-a/g),b+=1}}for(let t=0;t<g;t++)for(let e=0;e<m;e++){const n=u+e+y*t,i=u+e+y*(t+1),r=u+(e+1)+y*(t+1),a=u+(e+1)+y*t;o.push(n,i,a),o.push(i,r,a),A+=6}s.addGroup(d,A,_),d+=A,u+=b}p(\"z\",\"y\",\"x\",-1,-1,n,e,t,a,r,0),p(\"z\",\"y\",\"x\",1,-1,n,e,-t,a,r,1),p(\"x\",\"z\",\"y\",1,1,t,n,e,i,a,2),p(\"x\",\"z\",\"y\",1,-1,t,n,-e,i,a,3),p(\"x\",\"y\",\"z\",1,-1,t,e,n,i,r,4),p(\"x\",\"y\",\"z\",-1,-1,t,e,-n,i,r,5),this.setIndex(o),this.setAttribute(\"position\",new Un(l,3)),this.setAttribute(\"normal\",new Un(c,3)),this.setAttribute(\"uv\",new Un(h,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new si(t.width,t.height,t.depth,t.widthSegments,t.heightSegments,t.depthSegments)}}function oi(t){const e={};for(const n in t){e[n]={};for(const i in t[n]){const r=t[n][i];r&&(r.isColor||r.isMatrix3||r.isMatrix4||r.isVector2||r.isVector3||r.isVector4||r.isTexture||r.isQuaternion)?r.isRenderTargetTexture?e[n][i]=null:e[n][i]=r.clone():Array.isArray(r)?e[n][i]=r.slice():e[n][i]=r}}return e}function li(t){const e={};for(let n=0;n<t.length;n++){const i=oi(t[n]);for(const t in i)e[t]=i[t]}return e}function ci(t){return null===t.getRenderTarget()?t.outputColorSpace:Vt.workingColorSpace}const hi={clone:oi,merge:li};class ui extends bn{constructor(t){super(),this.isShaderMaterial=!0,this.type=\"ShaderMaterial\",this.defines={},this.uniforms={},this.uniformsGroups=[],this.vertexShader=\"void main() {\\n\\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\\n}\",this.fragmentShader=\"void main() {\\n\\tgl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );\\n}\",this.linewidth=1,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.clipping=!1,this.forceSinglePass=!0,this.extensions={derivatives:!1,fragDepth:!1,drawBuffers:!1,shaderTextureLOD:!1,clipCullDistance:!1},this.defaultAttributeValues={color:[1,1,1],uv:[0,0],uv1:[0,0]},this.index0AttributeName=void 0,this.uniformsNeedUpdate=!1,this.glslVersion=null,void 0!==t&&this.setValues(t)}copy(t){return super.copy(t),this.fragmentShader=t.fragmentShader,this.vertexShader=t.vertexShader,this.uniforms=oi(t.uniforms),this.uniformsGroups=function(t){const e=[];for(let n=0;n<t.length;n++)e.push(t[n].clone());return e}(t.uniformsGroups),this.defines=Object.assign({},t.defines),this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.fog=t.fog,this.lights=t.lights,this.clipping=t.clipping,this.extensions=Object.assign({},t.extensions),this.glslVersion=t.glslVersion,this}toJSON(t){const e=super.toJSON(t);e.glslVersion=this.glslVersion,e.uniforms={};for(const n in this.uniforms){const i=this.uniforms[n].value;i&&i.isTexture?e.uniforms[n]={type:\"t\",value:i.toJSON(t).uuid}:i&&i.isColor?e.uniforms[n]={type:\"c\",value:i.getHex()}:i&&i.isVector2?e.uniforms[n]={type:\"v2\",value:i.toArray()}:i&&i.isVector3?e.uniforms[n]={type:\"v3\",value:i.toArray()}:i&&i.isVector4?e.uniforms[n]={type:\"v4\",value:i.toArray()}:i&&i.isMatrix3?e.uniforms[n]={type:\"m3\",value:i.toArray()}:i&&i.isMatrix4?e.uniforms[n]={type:\"m4\",value:i.toArray()}:e.uniforms[n]={value:i}}Object.keys(this.defines).length>0&&(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader,e.lights=this.lights,e.clipping=this.clipping;const n={};for(const t in this.extensions)!0===this.extensions[t]&&(n[t]=!0);return Object.keys(n).length>0&&(e.extensions=n),e}}class di extends an{constructor(){super(),this.isCamera=!0,this.type=\"Camera\",this.matrixWorldInverse=new De,this.projectionMatrix=new De,this.projectionMatrixInverse=new De,this.coordinateSystem=gt}copy(t,e){return super.copy(t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this.coordinateSystem=t.coordinateSystem,this}getWorldDirection(t){return super.getWorldDirection(t).negate()}updateMatrixWorld(t){super.updateMatrixWorld(t),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(t,e){super.updateWorldMatrix(t,e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}clone(){return(new this.constructor).copy(this)}}class pi extends di{constructor(t=50,e=1,n=.1,i=2e3){super(),this.isPerspectiveCamera=!0,this.type=\"PerspectiveCamera\",this.fov=t,this.zoom=1,this.near=n,this.far=i,this.focus=10,this.aspect=e,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.fov=t.fov,this.zoom=t.zoom,this.near=t.near,this.far=t.far,this.focus=t.focus,this.aspect=t.aspect,this.view=null===t.view?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this}setFocalLength(t){const e=.5*this.getFilmHeight()/t;this.fov=2*St*Math.atan(e),this.updateProjectionMatrix()}getFocalLength(){const t=Math.tan(.5*Mt*this.fov);return.5*this.getFilmHeight()/t}getEffectiveFOV(){return 2*St*Math.atan(Math.tan(.5*Mt*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}setViewOffset(t,e,n,i,r,a){this.aspect=t/e,null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=i,this.view.width=r,this.view.height=a,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=this.near;let e=t*Math.tan(.5*Mt*this.fov)/this.zoom,n=2*e,i=this.aspect*n,r=-.5*i;const a=this.view;if(null!==this.view&&this.view.enabled){const t=a.fullWidth,s=a.fullHeight;r+=a.offsetX*i/t,e-=a.offsetY*n/s,i*=a.width/t,n*=a.height/s}const s=this.filmOffset;0!==s&&(r+=t*s/this.getFilmWidth()),this.projectionMatrix.makePerspective(r,r+i,e,e-n,t,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.fov=this.fov,e.object.zoom=this.zoom,e.object.near=this.near,e.object.far=this.far,e.object.focus=this.focus,e.object.aspect=this.aspect,null!==this.view&&(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}}const fi=-90;class mi extends an{constructor(t,e,n){super(),this.type=\"CubeCamera\",this.renderTarget=n,this.coordinateSystem=null,this.activeMipmapLevel=0;const i=new pi(fi,1,t,e);i.layers=this.layers,this.add(i);const r=new pi(fi,1,t,e);r.layers=this.layers,this.add(r);const a=new pi(fi,1,t,e);a.layers=this.layers,this.add(a);const s=new pi(fi,1,t,e);s.layers=this.layers,this.add(s);const o=new pi(fi,1,t,e);o.layers=this.layers,this.add(o);const l=new pi(fi,1,t,e);l.layers=this.layers,this.add(l)}updateCoordinateSystem(){const t=this.coordinateSystem,e=this.children.concat(),[n,i,r,a,s,o]=e;for(const t of e)this.remove(t);if(t===gt)n.up.set(0,1,0),n.lookAt(1,0,0),i.up.set(0,1,0),i.lookAt(-1,0,0),r.up.set(0,0,-1),r.lookAt(0,1,0),a.up.set(0,0,1),a.lookAt(0,-1,0),s.up.set(0,1,0),s.lookAt(0,0,1),o.up.set(0,1,0),o.lookAt(0,0,-1);else{if(t!==_t)throw new Error(\"THREE.CubeCamera.updateCoordinateSystem(): Invalid coordinate system: \"+t);n.up.set(0,-1,0),n.lookAt(-1,0,0),i.up.set(0,-1,0),i.lookAt(1,0,0),r.up.set(0,0,1),r.lookAt(0,1,0),a.up.set(0,0,-1),a.lookAt(0,-1,0),s.up.set(0,-1,0),s.lookAt(0,0,1),o.up.set(0,-1,0),o.lookAt(0,0,-1)}for(const t of e)this.add(t),t.updateMatrixWorld()}update(t,e){null===this.parent&&this.updateMatrixWorld();const{renderTarget:n,activeMipmapLevel:i}=this;this.coordinateSystem!==t.coordinateSystem&&(this.coordinateSystem=t.coordinateSystem,this.updateCoordinateSystem());const[r,a,s,o,l,c]=this.children,h=t.getRenderTarget(),u=t.getActiveCubeFace(),d=t.getActiveMipmapLevel(),p=t.xr.enabled;t.xr.enabled=!1;const f=n.texture.generateMipmaps;n.texture.generateMipmaps=!1,t.setRenderTarget(n,0,i),t.render(e,r),t.setRenderTarget(n,1,i),t.render(e,a),t.setRenderTarget(n,2,i),t.render(e,s),t.setRenderTarget(n,3,i),t.render(e,o),t.setRenderTarget(n,4,i),t.render(e,l),n.texture.generateMipmaps=f,t.setRenderTarget(n,5,i),t.render(e,c),t.setRenderTarget(h,u,d),t.xr.enabled=p,n.texture.needsPMREMUpdate=!0}}class gi extends Zt{constructor(t,e,n,i,r,a,s,o,l,c){super(t=void 0!==t?t:[],e=void 0!==e?e:E,n,i,r,a,s,o,l,c),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(t){this.image=t}}class _i extends $t{constructor(t=1,e={}){super(t,t,e),this.isWebGLCubeRenderTarget=!0;const n={width:t,height:t,depth:1},i=[n,n,n,n,n,n];void 0!==e.encoding&&(Ot(\"THREE.WebGLCubeRenderTarget: option.encoding has been replaced by option.colorSpace.\"),e.colorSpace=e.encoding===K?J:Z),this.texture=new gi(i,e.mapping,e.wrapS,e.wrapT,e.magFilter,e.minFilter,e.format,e.type,e.anisotropy,e.colorSpace),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=void 0!==e.generateMipmaps&&e.generateMipmaps,this.texture.minFilter=void 0!==e.minFilter?e.minFilter:P}fromEquirectangularTexture(t,e){this.texture.type=e.type,this.texture.colorSpace=e.colorSpace,this.texture.generateMipmaps=e.generateMipmaps,this.texture.minFilter=e.minFilter,this.texture.magFilter=e.magFilter;const n={uniforms:{tEquirect:{value:null}},vertexShader:\"\\n\\n\\t\\t\\t\\tvarying vec3 vWorldDirection;\\n\\n\\t\\t\\t\\tvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\\n\\n\\t\\t\\t\\t\\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\\n\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\tvoid main() {\\n\\n\\t\\t\\t\\t\\tvWorldDirection = transformDirection( position, modelMatrix );\\n\\n\\t\\t\\t\\t\\t#include <begin_vertex>\\n\\t\\t\\t\\t\\t#include <project_vertex>\\n\\n\\t\\t\\t\\t}\\n\\t\\t\\t\",fragmentShader:\"\\n\\n\\t\\t\\t\\tuniform sampler2D tEquirect;\\n\\n\\t\\t\\t\\tvarying vec3 vWorldDirection;\\n\\n\\t\\t\\t\\t#include <common>\\n\\n\\t\\t\\t\\tvoid main() {\\n\\n\\t\\t\\t\\t\\tvec3 direction = normalize( vWorldDirection );\\n\\n\\t\\t\\t\\t\\tvec2 sampleUV = equirectUv( direction );\\n\\n\\t\\t\\t\\t\\tgl_FragColor = texture2D( tEquirect, sampleUV );\\n\\n\\t\\t\\t\\t}\\n\\t\\t\\t\"},i=new si(5,5,5),r=new ui({name:\"CubemapFromEquirect\",uniforms:oi(n.uniforms),vertexShader:n.vertexShader,fragmentShader:n.fragmentShader,side:1,blending:0});r.uniforms.tEquirect.value=e;const a=new ri(i,r),s=e.minFilter;e.minFilter===D&&(e.minFilter=P);return new mi(1,10,this).update(t,a),e.minFilter=s,a.geometry.dispose(),a.material.dispose(),this}clear(t,e,n,i){const r=t.getRenderTarget();for(let r=0;r<6;r++)t.setRenderTarget(this,r),t.clear(e,n,i);t.setRenderTarget(r)}}const vi=new ie,xi=new ie,Mi=new Lt;class Si{constructor(t=new ie(1,0,0),e=0){this.isPlane=!0,this.normal=t,this.constant=e}set(t,e){return this.normal.copy(t),this.constant=e,this}setComponents(t,e,n,i){return this.normal.set(t,e,n),this.constant=i,this}setFromNormalAndCoplanarPoint(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this}setFromCoplanarPoints(t,e,n){const i=vi.subVectors(n,e).cross(xi.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(i,t),this}copy(t){return this.normal.copy(t.normal),this.constant=t.constant,this}normalize(){const t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(t){return this.normal.dot(t)+this.constant}distanceToSphere(t){return this.distanceToPoint(t.center)-t.radius}projectPoint(t,e){return e.copy(t).addScaledVector(this.normal,-this.distanceToPoint(t))}intersectLine(t,e){const n=t.delta(vi),i=this.normal.dot(n);if(0===i)return 0===this.distanceToPoint(t.start)?e.copy(t.start):null;const r=-(t.start.dot(this.normal)+this.constant)/i;return r<0||r>1?null:e.copy(t.start).addScaledVector(n,r)}intersectsLine(t){const e=this.distanceToPoint(t.start),n=this.distanceToPoint(t.end);return e<0&&n>0||n<0&&e>0}intersectsBox(t){return t.intersectsPlane(this)}intersectsSphere(t){return t.intersectsPlane(this)}coplanarPoint(t){return t.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(t,e){const n=e||Mi.getNormalMatrix(t),i=this.coplanarPoint(vi).applyMatrix4(t),r=this.normal.applyMatrix3(n).normalize();return this.constant=-i.dot(r),this}translate(t){return this.constant-=t.dot(this.normal),this}equals(t){return t.normal.equals(this.normal)&&t.constant===this.constant}clone(){return(new this.constructor).copy(this)}}const Ei=new Te,yi=new ie;class Ti{constructor(t=new Si,e=new Si,n=new Si,i=new Si,r=new Si,a=new Si){this.planes=[t,e,n,i,r,a]}set(t,e,n,i,r,a){const s=this.planes;return s[0].copy(t),s[1].copy(e),s[2].copy(n),s[3].copy(i),s[4].copy(r),s[5].copy(a),this}copy(t){const e=this.planes;for(let n=0;n<6;n++)e[n].copy(t.planes[n]);return this}setFromProjectionMatrix(t,e=2e3){const n=this.planes,i=t.elements,r=i[0],a=i[1],s=i[2],o=i[3],l=i[4],c=i[5],h=i[6],u=i[7],d=i[8],p=i[9],f=i[10],m=i[11],g=i[12],_=i[13],v=i[14],x=i[15];if(n[0].setComponents(o-r,u-l,m-d,x-g).normalize(),n[1].setComponents(o+r,u+l,m+d,x+g).normalize(),n[2].setComponents(o+a,u+c,m+p,x+_).normalize(),n[3].setComponents(o-a,u-c,m-p,x-_).normalize(),n[4].setComponents(o-s,u-h,m-f,x-v).normalize(),e===gt)n[5].setComponents(o+s,u+h,m+f,x+v).normalize();else{if(e!==_t)throw new Error(\"THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: \"+e);n[5].setComponents(s,h,f,v).normalize()}return this}intersectsObject(t){if(void 0!==t.boundingSphere)null===t.boundingSphere&&t.computeBoundingSphere(),Ei.copy(t.boundingSphere).applyMatrix4(t.matrixWorld);else{const e=t.geometry;null===e.boundingSphere&&e.computeBoundingSphere(),Ei.copy(e.boundingSphere).applyMatrix4(t.matrixWorld)}return this.intersectsSphere(Ei)}intersectsSprite(t){return Ei.center.set(0,0,0),Ei.radius=.7071067811865476,Ei.applyMatrix4(t.matrixWorld),this.intersectsSphere(Ei)}intersectsSphere(t){const e=this.planes,n=t.center,i=-t.radius;for(let t=0;t<6;t++){if(e[t].distanceToPoint(n)<i)return!1}return!0}intersectsBox(t){const e=this.planes;for(let n=0;n<6;n++){const i=e[n];if(yi.x=i.normal.x>0?t.max.x:t.min.x,yi.y=i.normal.y>0?t.max.y:t.min.y,yi.z=i.normal.z>0?t.max.z:t.min.z,i.distanceToPoint(yi)<0)return!1}return!0}containsPoint(t){const e=this.planes;for(let n=0;n<6;n++)if(e[n].distanceToPoint(t)<0)return!1;return!0}clone(){return(new this.constructor).copy(this)}}function bi(){let t=null,e=!1,n=null,i=null;function r(e,a){n(e,a),i=t.requestAnimationFrame(r)}return{start:function(){!0!==e&&null!==n&&(i=t.requestAnimationFrame(r),e=!0)},stop:function(){t.cancelAnimationFrame(i),e=!1},setAnimationLoop:function(t){n=t},setContext:function(e){t=e}}}function Ai(t,e){const n=e.isWebGL2,i=new WeakMap;return{get:function(t){return t.isInterleavedBufferAttribute&&(t=t.data),i.get(t)},remove:function(e){e.isInterleavedBufferAttribute&&(e=e.data);const n=i.get(e);n&&(t.deleteBuffer(n.buffer),i.delete(e))},update:function(e,r){if(e.isGLBufferAttribute){const t=i.get(e);return void((!t||t.version<e.version)&&i.set(e,{buffer:e.buffer,type:e.type,bytesPerElement:e.elementSize,version:e.version}))}e.isInterleavedBufferAttribute&&(e=e.data);const a=i.get(e);if(void 0===a)i.set(e,function(e,i){const r=e.array,a=e.usage,s=r.byteLength,o=t.createBuffer();let l;if(t.bindBuffer(i,o),t.bufferData(i,r,a),e.onUploadCallback(),r instanceof Float32Array)l=t.FLOAT;else if(r instanceof Uint16Array)if(e.isFloat16BufferAttribute){if(!n)throw new Error(\"THREE.WebGLAttributes: Usage of Float16BufferAttribute requires WebGL2.\");l=t.HALF_FLOAT}else l=t.UNSIGNED_SHORT;else if(r instanceof Int16Array)l=t.SHORT;else if(r instanceof Uint32Array)l=t.UNSIGNED_INT;else if(r instanceof Int32Array)l=t.INT;else if(r instanceof Int8Array)l=t.BYTE;else if(r instanceof Uint8Array)l=t.UNSIGNED_BYTE;else{if(!(r instanceof Uint8ClampedArray))throw new Error(\"THREE.WebGLAttributes: Unsupported buffer data format: \"+r);l=t.UNSIGNED_BYTE}return{buffer:o,type:l,bytesPerElement:r.BYTES_PER_ELEMENT,version:e.version,size:s}}(e,r));else if(a.version<e.version){if(a.size!==e.array.byteLength)throw new Error(\"THREE.WebGLAttributes: The size of the buffer attribute's array buffer does not match the original size. Resizing buffer attributes is not supported.\");!function(e,i,r){const a=i.array,s=i._updateRange,o=i.updateRanges;if(t.bindBuffer(r,e),-1===s.count&&0===o.length&&t.bufferSubData(r,0,a),0!==o.length){for(let e=0,i=o.length;e<i;e++){const i=o[e];n?t.bufferSubData(r,i.start*a.BYTES_PER_ELEMENT,a,i.start,i.count):t.bufferSubData(r,i.start*a.BYTES_PER_ELEMENT,a.subarray(i.start,i.start+i.count))}i.clearUpdateRanges()}-1!==s.count&&(n?t.bufferSubData(r,s.offset*a.BYTES_PER_ELEMENT,a,s.offset,s.count):t.bufferSubData(r,s.offset*a.BYTES_PER_ELEMENT,a.subarray(s.offset,s.offset+s.count)),s.count=-1),i.onUploadCallback()}(a.buffer,e,r),a.version=e.version}}}}class wi extends Hn{constructor(t=1,e=1,n=1,i=1){super(),this.type=\"PlaneGeometry\",this.parameters={width:t,height:e,widthSegments:n,heightSegments:i};const r=t/2,a=e/2,s=Math.floor(n),o=Math.floor(i),l=s+1,c=o+1,h=t/s,u=e/o,d=[],p=[],f=[],m=[];for(let t=0;t<c;t++){const e=t*u-a;for(let n=0;n<l;n++){const i=n*h-r;p.push(i,-e,0),f.push(0,0,1),m.push(n/s),m.push(1-t/o)}}for(let t=0;t<o;t++)for(let e=0;e<s;e++){const n=e+l*t,i=e+l*(t+1),r=e+1+l*(t+1),a=e+1+l*t;d.push(n,i,a),d.push(i,r,a)}this.setIndex(d),this.setAttribute(\"position\",new Un(p,3)),this.setAttribute(\"normal\",new Un(f,3)),this.setAttribute(\"uv\",new Un(m,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new wi(t.width,t.height,t.widthSegments,t.heightSegments)}}const Ri={alphahash_fragment:\"#ifdef USE_ALPHAHASH\\n\\tif ( diffuseColor.a < getAlphaHashThreshold( vPosition ) ) discard;\\n#endif\",alphahash_pars_fragment:\"#ifdef USE_ALPHAHASH\\n\\tconst float ALPHA_HASH_SCALE = 0.05;\\n\\tfloat hash2D( vec2 value ) {\\n\\t\\treturn fract( 1.0e4 * sin( 17.0 * value.x + 0.1 * value.y ) * ( 0.1 + abs( sin( 13.0 * value.y + value.x ) ) ) );\\n\\t}\\n\\tfloat hash3D( vec3 value ) {\\n\\t\\treturn hash2D( vec2( hash2D( value.xy ), value.z ) );\\n\\t}\\n\\tfloat getAlphaHashThreshold( vec3 position ) {\\n\\t\\tfloat maxDeriv = max(\\n\\t\\t\\tlength( dFdx( position.xyz ) ),\\n\\t\\t\\tlength( dFdy( position.xyz ) )\\n\\t\\t);\\n\\t\\tfloat pixScale = 1.0 / ( ALPHA_HASH_SCALE * maxDeriv );\\n\\t\\tvec2 pixScales = vec2(\\n\\t\\t\\texp2( floor( log2( pixScale ) ) ),\\n\\t\\t\\texp2( ceil( log2( pixScale ) ) )\\n\\t\\t);\\n\\t\\tvec2 alpha = vec2(\\n\\t\\t\\thash3D( floor( pixScales.x * position.xyz ) ),\\n\\t\\t\\thash3D( floor( pixScales.y * position.xyz ) )\\n\\t\\t);\\n\\t\\tfloat lerpFactor = fract( log2( pixScale ) );\\n\\t\\tfloat x = ( 1.0 - lerpFactor ) * alpha.x + lerpFactor * alpha.y;\\n\\t\\tfloat a = min( lerpFactor, 1.0 - lerpFactor );\\n\\t\\tvec3 cases = vec3(\\n\\t\\t\\tx * x / ( 2.0 * a * ( 1.0 - a ) ),\\n\\t\\t\\t( x - 0.5 * a ) / ( 1.0 - a ),\\n\\t\\t\\t1.0 - ( ( 1.0 - x ) * ( 1.0 - x ) / ( 2.0 * a * ( 1.0 - a ) ) )\\n\\t\\t);\\n\\t\\tfloat threshold = ( x < ( 1.0 - a ) )\\n\\t\\t\\t? ( ( x < a ) ? cases.x : cases.y )\\n\\t\\t\\t: cases.z;\\n\\t\\treturn clamp( threshold , 1.0e-6, 1.0 );\\n\\t}\\n#endif\",alphamap_fragment:\"#ifdef USE_ALPHAMAP\\n\\tdiffuseColor.a *= texture2D( alphaMap, vAlphaMapUv ).g;\\n#endif\",alphamap_pars_fragment:\"#ifdef USE_ALPHAMAP\\n\\tuniform sampler2D alphaMap;\\n#endif\",alphatest_fragment:\"#ifdef USE_ALPHATEST\\n\\tif ( diffuseColor.a < alphaTest ) discard;\\n#endif\",alphatest_pars_fragment:\"#ifdef USE_ALPHATEST\\n\\tuniform float alphaTest;\\n#endif\",aomap_fragment:\"#ifdef USE_AOMAP\\n\\tfloat ambientOcclusion = ( texture2D( aoMap, vAoMapUv ).r - 1.0 ) * aoMapIntensity + 1.0;\\n\\treflectedLight.indirectDiffuse *= ambientOcclusion;\\n\\t#if defined( USE_CLEARCOAT ) \\n\\t\\tclearcoatSpecularIndirect *= ambientOcclusion;\\n\\t#endif\\n\\t#if defined( USE_SHEEN ) \\n\\t\\tsheenSpecularIndirect *= ambientOcclusion;\\n\\t#endif\\n\\t#if defined( USE_ENVMAP ) && defined( STANDARD )\\n\\t\\tfloat dotNV = saturate( dot( geometryNormal, geometryViewDir ) );\\n\\t\\treflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.roughness );\\n\\t#endif\\n#endif\",aomap_pars_fragment:\"#ifdef USE_AOMAP\\n\\tuniform sampler2D aoMap;\\n\\tuniform float aoMapIntensity;\\n#endif\",batching_pars_vertex:\"#ifdef USE_BATCHING\\n\\tattribute float batchId;\\n\\tuniform highp sampler2D batchingTexture;\\n\\tmat4 getBatchingMatrix( const in float i ) {\\n\\t\\tint size = textureSize( batchingTexture, 0 ).x;\\n\\t\\tint j = int( i ) * 4;\\n\\t\\tint x = j % size;\\n\\t\\tint y = j / size;\\n\\t\\tvec4 v1 = texelFetch( batchingTexture, ivec2( x, y ), 0 );\\n\\t\\tvec4 v2 = texelFetch( batchingTexture, ivec2( x + 1, y ), 0 );\\n\\t\\tvec4 v3 = texelFetch( batchingTexture, ivec2( x + 2, y ), 0 );\\n\\t\\tvec4 v4 = texelFetch( batchingTexture, ivec2( x + 3, y ), 0 );\\n\\t\\treturn mat4( v1, v2, v3, v4 );\\n\\t}\\n#endif\",batching_vertex:\"#ifdef USE_BATCHING\\n\\tmat4 batchingMatrix = getBatchingMatrix( batchId );\\n#endif\",begin_vertex:\"vec3 transformed = vec3( position );\\n#ifdef USE_ALPHAHASH\\n\\tvPosition = vec3( position );\\n#endif\",beginnormal_vertex:\"vec3 objectNormal = vec3( normal );\\n#ifdef USE_TANGENT\\n\\tvec3 objectTangent = vec3( tangent.xyz );\\n#endif\",bsdfs:\"float G_BlinnPhong_Implicit( ) {\\n\\treturn 0.25;\\n}\\nfloat D_BlinnPhong( const in float shininess, const in float dotNH ) {\\n\\treturn RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\\n}\\nvec3 BRDF_BlinnPhong( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float shininess ) {\\n\\tvec3 halfDir = normalize( lightDir + viewDir );\\n\\tfloat dotNH = saturate( dot( normal, halfDir ) );\\n\\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\\n\\tvec3 F = F_Schlick( specularColor, 1.0, dotVH );\\n\\tfloat G = G_BlinnPhong_Implicit( );\\n\\tfloat D = D_BlinnPhong( shininess, dotNH );\\n\\treturn F * ( G * D );\\n} // validated\",iridescence_fragment:\"#ifdef USE_IRIDESCENCE\\n\\tconst mat3 XYZ_TO_REC709 = mat3(\\n\\t\\t 3.2404542, -0.9692660,  0.0556434,\\n\\t\\t-1.5371385,  1.8760108, -0.2040259,\\n\\t\\t-0.4985314,  0.0415560,  1.0572252\\n\\t);\\n\\tvec3 Fresnel0ToIor( vec3 fresnel0 ) {\\n\\t\\tvec3 sqrtF0 = sqrt( fresnel0 );\\n\\t\\treturn ( vec3( 1.0 ) + sqrtF0 ) / ( vec3( 1.0 ) - sqrtF0 );\\n\\t}\\n\\tvec3 IorToFresnel0( vec3 transmittedIor, float incidentIor ) {\\n\\t\\treturn pow2( ( transmittedIor - vec3( incidentIor ) ) / ( transmittedIor + vec3( incidentIor ) ) );\\n\\t}\\n\\tfloat IorToFresnel0( float transmittedIor, float incidentIor ) {\\n\\t\\treturn pow2( ( transmittedIor - incidentIor ) / ( transmittedIor + incidentIor ));\\n\\t}\\n\\tvec3 evalSensitivity( float OPD, vec3 shift ) {\\n\\t\\tfloat phase = 2.0 * PI * OPD * 1.0e-9;\\n\\t\\tvec3 val = vec3( 5.4856e-13, 4.4201e-13, 5.2481e-13 );\\n\\t\\tvec3 pos = vec3( 1.6810e+06, 1.7953e+06, 2.2084e+06 );\\n\\t\\tvec3 var = vec3( 4.3278e+09, 9.3046e+09, 6.6121e+09 );\\n\\t\\tvec3 xyz = val * sqrt( 2.0 * PI * var ) * cos( pos * phase + shift ) * exp( - pow2( phase ) * var );\\n\\t\\txyz.x += 9.7470e-14 * sqrt( 2.0 * PI * 4.5282e+09 ) * cos( 2.2399e+06 * phase + shift[ 0 ] ) * exp( - 4.5282e+09 * pow2( phase ) );\\n\\t\\txyz /= 1.0685e-7;\\n\\t\\tvec3 rgb = XYZ_TO_REC709 * xyz;\\n\\t\\treturn rgb;\\n\\t}\\n\\tvec3 evalIridescence( float outsideIOR, float eta2, float cosTheta1, float thinFilmThickness, vec3 baseF0 ) {\\n\\t\\tvec3 I;\\n\\t\\tfloat iridescenceIOR = mix( outsideIOR, eta2, smoothstep( 0.0, 0.03, thinFilmThickness ) );\\n\\t\\tfloat sinTheta2Sq = pow2( outsideIOR / iridescenceIOR ) * ( 1.0 - pow2( cosTheta1 ) );\\n\\t\\tfloat cosTheta2Sq = 1.0 - sinTheta2Sq;\\n\\t\\tif ( cosTheta2Sq < 0.0 ) {\\n\\t\\t\\treturn vec3( 1.0 );\\n\\t\\t}\\n\\t\\tfloat cosTheta2 = sqrt( cosTheta2Sq );\\n\\t\\tfloat R0 = IorToFresnel0( iridescenceIOR, outsideIOR );\\n\\t\\tfloat R12 = F_Schlick( R0, 1.0, cosTheta1 );\\n\\t\\tfloat T121 = 1.0 - R12;\\n\\t\\tfloat phi12 = 0.0;\\n\\t\\tif ( iridescenceIOR < outsideIOR ) phi12 = PI;\\n\\t\\tfloat phi21 = PI - phi12;\\n\\t\\tvec3 baseIOR = Fresnel0ToIor( clamp( baseF0, 0.0, 0.9999 ) );\\t\\tvec3 R1 = IorToFresnel0( baseIOR, iridescenceIOR );\\n\\t\\tvec3 R23 = F_Schlick( R1, 1.0, cosTheta2 );\\n\\t\\tvec3 phi23 = vec3( 0.0 );\\n\\t\\tif ( baseIOR[ 0 ] < iridescenceIOR ) phi23[ 0 ] = PI;\\n\\t\\tif ( baseIOR[ 1 ] < iridescenceIOR ) phi23[ 1 ] = PI;\\n\\t\\tif ( baseIOR[ 2 ] < iridescenceIOR ) phi23[ 2 ] = PI;\\n\\t\\tfloat OPD = 2.0 * iridescenceIOR * thinFilmThickness * cosTheta2;\\n\\t\\tvec3 phi = vec3( phi21 ) + phi23;\\n\\t\\tvec3 R123 = clamp( R12 * R23, 1e-5, 0.9999 );\\n\\t\\tvec3 r123 = sqrt( R123 );\\n\\t\\tvec3 Rs = pow2( T121 ) * R23 / ( vec3( 1.0 ) - R123 );\\n\\t\\tvec3 C0 = R12 + Rs;\\n\\t\\tI = C0;\\n\\t\\tvec3 Cm = Rs - T121;\\n\\t\\tfor ( int m = 1; m <= 2; ++ m ) {\\n\\t\\t\\tCm *= r123;\\n\\t\\t\\tvec3 Sm = 2.0 * evalSensitivity( float( m ) * OPD, float( m ) * phi );\\n\\t\\t\\tI += Cm * Sm;\\n\\t\\t}\\n\\t\\treturn max( I, vec3( 0.0 ) );\\n\\t}\\n#endif\",bumpmap_pars_fragment:\"#ifdef USE_BUMPMAP\\n\\tuniform sampler2D bumpMap;\\n\\tuniform float bumpScale;\\n\\tvec2 dHdxy_fwd() {\\n\\t\\tvec2 dSTdx = dFdx( vBumpMapUv );\\n\\t\\tvec2 dSTdy = dFdy( vBumpMapUv );\\n\\t\\tfloat Hll = bumpScale * texture2D( bumpMap, vBumpMapUv ).x;\\n\\t\\tfloat dBx = bumpScale * texture2D( bumpMap, vBumpMapUv + dSTdx ).x - Hll;\\n\\t\\tfloat dBy = bumpScale * texture2D( bumpMap, vBumpMapUv + dSTdy ).x - Hll;\\n\\t\\treturn vec2( dBx, dBy );\\n\\t}\\n\\tvec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy, float faceDirection ) {\\n\\t\\tvec3 vSigmaX = normalize( dFdx( surf_pos.xyz ) );\\n\\t\\tvec3 vSigmaY = normalize( dFdy( surf_pos.xyz ) );\\n\\t\\tvec3 vN = surf_norm;\\n\\t\\tvec3 R1 = cross( vSigmaY, vN );\\n\\t\\tvec3 R2 = cross( vN, vSigmaX );\\n\\t\\tfloat fDet = dot( vSigmaX, R1 ) * faceDirection;\\n\\t\\tvec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\\n\\t\\treturn normalize( abs( fDet ) * surf_norm - vGrad );\\n\\t}\\n#endif\",clipping_planes_fragment:\"#if NUM_CLIPPING_PLANES > 0\\n\\tvec4 plane;\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\\n\\t\\tplane = clippingPlanes[ i ];\\n\\t\\tif ( dot( vClipPosition, plane.xyz ) > plane.w ) discard;\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\\n\\t\\tbool clipped = true;\\n\\t\\t#pragma unroll_loop_start\\n\\t\\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\\n\\t\\t\\tplane = clippingPlanes[ i ];\\n\\t\\t\\tclipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped;\\n\\t\\t}\\n\\t\\t#pragma unroll_loop_end\\n\\t\\tif ( clipped ) discard;\\n\\t#endif\\n#endif\",clipping_planes_pars_fragment:\"#if NUM_CLIPPING_PLANES > 0\\n\\tvarying vec3 vClipPosition;\\n\\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\\n#endif\",clipping_planes_pars_vertex:\"#if NUM_CLIPPING_PLANES > 0\\n\\tvarying vec3 vClipPosition;\\n#endif\",clipping_planes_vertex:\"#if NUM_CLIPPING_PLANES > 0\\n\\tvClipPosition = - mvPosition.xyz;\\n#endif\",color_fragment:\"#if defined( USE_COLOR_ALPHA )\\n\\tdiffuseColor *= vColor;\\n#elif defined( USE_COLOR )\\n\\tdiffuseColor.rgb *= vColor;\\n#endif\",color_pars_fragment:\"#if defined( USE_COLOR_ALPHA )\\n\\tvarying vec4 vColor;\\n#elif defined( USE_COLOR )\\n\\tvarying vec3 vColor;\\n#endif\",color_pars_vertex:\"#if defined( USE_COLOR_ALPHA )\\n\\tvarying vec4 vColor;\\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\\n\\tvarying vec3 vColor;\\n#endif\",color_vertex:\"#if defined( USE_COLOR_ALPHA )\\n\\tvColor = vec4( 1.0 );\\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\\n\\tvColor = vec3( 1.0 );\\n#endif\\n#ifdef USE_COLOR\\n\\tvColor *= color;\\n#endif\\n#ifdef USE_INSTANCING_COLOR\\n\\tvColor.xyz *= instanceColor.xyz;\\n#endif\",common:\"#define PI 3.141592653589793\\n#define PI2 6.283185307179586\\n#define PI_HALF 1.5707963267948966\\n#define RECIPROCAL_PI 0.3183098861837907\\n#define RECIPROCAL_PI2 0.15915494309189535\\n#define EPSILON 1e-6\\n#ifndef saturate\\n#define saturate( a ) clamp( a, 0.0, 1.0 )\\n#endif\\n#define whiteComplement( a ) ( 1.0 - saturate( a ) )\\nfloat pow2( const in float x ) { return x*x; }\\nvec3 pow2( const in vec3 x ) { return x*x; }\\nfloat pow3( const in float x ) { return x*x*x; }\\nfloat pow4( const in float x ) { float x2 = x*x; return x2*x2; }\\nfloat max3( const in vec3 v ) { return max( max( v.x, v.y ), v.z ); }\\nfloat average( const in vec3 v ) { return dot( v, vec3( 0.3333333 ) ); }\\nhighp float rand( const in vec2 uv ) {\\n\\tconst highp float a = 12.9898, b = 78.233, c = 43758.5453;\\n\\thighp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );\\n\\treturn fract( sin( sn ) * c );\\n}\\n#ifdef HIGH_PRECISION\\n\\tfloat precisionSafeLength( vec3 v ) { return length( v ); }\\n#else\\n\\tfloat precisionSafeLength( vec3 v ) {\\n\\t\\tfloat maxComponent = max3( abs( v ) );\\n\\t\\treturn length( v / maxComponent ) * maxComponent;\\n\\t}\\n#endif\\nstruct IncidentLight {\\n\\tvec3 color;\\n\\tvec3 direction;\\n\\tbool visible;\\n};\\nstruct ReflectedLight {\\n\\tvec3 directDiffuse;\\n\\tvec3 directSpecular;\\n\\tvec3 indirectDiffuse;\\n\\tvec3 indirectSpecular;\\n};\\n#ifdef USE_ALPHAHASH\\n\\tvarying vec3 vPosition;\\n#endif\\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\\n\\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\\n}\\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\\n\\treturn normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\\n}\\nmat3 transposeMat3( const in mat3 m ) {\\n\\tmat3 tmp;\\n\\ttmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x );\\n\\ttmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y );\\n\\ttmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z );\\n\\treturn tmp;\\n}\\nfloat luminance( const in vec3 rgb ) {\\n\\tconst vec3 weights = vec3( 0.2126729, 0.7151522, 0.0721750 );\\n\\treturn dot( weights, rgb );\\n}\\nbool isPerspectiveMatrix( mat4 m ) {\\n\\treturn m[ 2 ][ 3 ] == - 1.0;\\n}\\nvec2 equirectUv( in vec3 dir ) {\\n\\tfloat u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5;\\n\\tfloat v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\\n\\treturn vec2( u, v );\\n}\\nvec3 BRDF_Lambert( const in vec3 diffuseColor ) {\\n\\treturn RECIPROCAL_PI * diffuseColor;\\n}\\nvec3 F_Schlick( const in vec3 f0, const in float f90, const in float dotVH ) {\\n\\tfloat fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\\n\\treturn f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\\n}\\nfloat F_Schlick( const in float f0, const in float f90, const in float dotVH ) {\\n\\tfloat fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\\n\\treturn f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\\n} // validated\",cube_uv_reflection_fragment:\"#ifdef ENVMAP_TYPE_CUBE_UV\\n\\t#define cubeUV_minMipLevel 4.0\\n\\t#define cubeUV_minTileSize 16.0\\n\\tfloat getFace( vec3 direction ) {\\n\\t\\tvec3 absDirection = abs( direction );\\n\\t\\tfloat face = - 1.0;\\n\\t\\tif ( absDirection.x > absDirection.z ) {\\n\\t\\t\\tif ( absDirection.x > absDirection.y )\\n\\t\\t\\t\\tface = direction.x > 0.0 ? 0.0 : 3.0;\\n\\t\\t\\telse\\n\\t\\t\\t\\tface = direction.y > 0.0 ? 1.0 : 4.0;\\n\\t\\t} else {\\n\\t\\t\\tif ( absDirection.z > absDirection.y )\\n\\t\\t\\t\\tface = direction.z > 0.0 ? 2.0 : 5.0;\\n\\t\\t\\telse\\n\\t\\t\\t\\tface = direction.y > 0.0 ? 1.0 : 4.0;\\n\\t\\t}\\n\\t\\treturn face;\\n\\t}\\n\\tvec2 getUV( vec3 direction, float face ) {\\n\\t\\tvec2 uv;\\n\\t\\tif ( face == 0.0 ) {\\n\\t\\t\\tuv = vec2( direction.z, direction.y ) / abs( direction.x );\\n\\t\\t} else if ( face == 1.0 ) {\\n\\t\\t\\tuv = vec2( - direction.x, - direction.z ) / abs( direction.y );\\n\\t\\t} else if ( face == 2.0 ) {\\n\\t\\t\\tuv = vec2( - direction.x, direction.y ) / abs( direction.z );\\n\\t\\t} else if ( face == 3.0 ) {\\n\\t\\t\\tuv = vec2( - direction.z, direction.y ) / abs( direction.x );\\n\\t\\t} else if ( face == 4.0 ) {\\n\\t\\t\\tuv = vec2( - direction.x, direction.z ) / abs( direction.y );\\n\\t\\t} else {\\n\\t\\t\\tuv = vec2( direction.x, direction.y ) / abs( direction.z );\\n\\t\\t}\\n\\t\\treturn 0.5 * ( uv + 1.0 );\\n\\t}\\n\\tvec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) {\\n\\t\\tfloat face = getFace( direction );\\n\\t\\tfloat filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 );\\n\\t\\tmipInt = max( mipInt, cubeUV_minMipLevel );\\n\\t\\tfloat faceSize = exp2( mipInt );\\n\\t\\thighp vec2 uv = getUV( direction, face ) * ( faceSize - 2.0 ) + 1.0;\\n\\t\\tif ( face > 2.0 ) {\\n\\t\\t\\tuv.y += faceSize;\\n\\t\\t\\tface -= 3.0;\\n\\t\\t}\\n\\t\\tuv.x += face * faceSize;\\n\\t\\tuv.x += filterInt * 3.0 * cubeUV_minTileSize;\\n\\t\\tuv.y += 4.0 * ( exp2( CUBEUV_MAX_MIP ) - faceSize );\\n\\t\\tuv.x *= CUBEUV_TEXEL_WIDTH;\\n\\t\\tuv.y *= CUBEUV_TEXEL_HEIGHT;\\n\\t\\t#ifdef texture2DGradEXT\\n\\t\\t\\treturn texture2DGradEXT( envMap, uv, vec2( 0.0 ), vec2( 0.0 ) ).rgb;\\n\\t\\t#else\\n\\t\\t\\treturn texture2D( envMap, uv ).rgb;\\n\\t\\t#endif\\n\\t}\\n\\t#define cubeUV_r0 1.0\\n\\t#define cubeUV_m0 - 2.0\\n\\t#define cubeUV_r1 0.8\\n\\t#define cubeUV_m1 - 1.0\\n\\t#define cubeUV_r4 0.4\\n\\t#define cubeUV_m4 2.0\\n\\t#define cubeUV_r5 0.305\\n\\t#define cubeUV_m5 3.0\\n\\t#define cubeUV_r6 0.21\\n\\t#define cubeUV_m6 4.0\\n\\tfloat roughnessToMip( float roughness ) {\\n\\t\\tfloat mip = 0.0;\\n\\t\\tif ( roughness >= cubeUV_r1 ) {\\n\\t\\t\\tmip = ( cubeUV_r0 - roughness ) * ( cubeUV_m1 - cubeUV_m0 ) / ( cubeUV_r0 - cubeUV_r1 ) + cubeUV_m0;\\n\\t\\t} else if ( roughness >= cubeUV_r4 ) {\\n\\t\\t\\tmip = ( cubeUV_r1 - roughness ) * ( cubeUV_m4 - cubeUV_m1 ) / ( cubeUV_r1 - cubeUV_r4 ) + cubeUV_m1;\\n\\t\\t} else if ( roughness >= cubeUV_r5 ) {\\n\\t\\t\\tmip = ( cubeUV_r4 - roughness ) * ( cubeUV_m5 - cubeUV_m4 ) / ( cubeUV_r4 - cubeUV_r5 ) + cubeUV_m4;\\n\\t\\t} else if ( roughness >= cubeUV_r6 ) {\\n\\t\\t\\tmip = ( cubeUV_r5 - roughness ) * ( cubeUV_m6 - cubeUV_m5 ) / ( cubeUV_r5 - cubeUV_r6 ) + cubeUV_m5;\\n\\t\\t} else {\\n\\t\\t\\tmip = - 2.0 * log2( 1.16 * roughness );\\t\\t}\\n\\t\\treturn mip;\\n\\t}\\n\\tvec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) {\\n\\t\\tfloat mip = clamp( roughnessToMip( roughness ), cubeUV_m0, CUBEUV_MAX_MIP );\\n\\t\\tfloat mipF = fract( mip );\\n\\t\\tfloat mipInt = floor( mip );\\n\\t\\tvec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt );\\n\\t\\tif ( mipF == 0.0 ) {\\n\\t\\t\\treturn vec4( color0, 1.0 );\\n\\t\\t} else {\\n\\t\\t\\tvec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 );\\n\\t\\t\\treturn vec4( mix( color0, color1, mipF ), 1.0 );\\n\\t\\t}\\n\\t}\\n#endif\",defaultnormal_vertex:\"vec3 transformedNormal = objectNormal;\\n#ifdef USE_TANGENT\\n\\tvec3 transformedTangent = objectTangent;\\n#endif\\n#ifdef USE_BATCHING\\n\\tmat3 bm = mat3( batchingMatrix );\\n\\ttransformedNormal /= vec3( dot( bm[ 0 ], bm[ 0 ] ), dot( bm[ 1 ], bm[ 1 ] ), dot( bm[ 2 ], bm[ 2 ] ) );\\n\\ttransformedNormal = bm * transformedNormal;\\n\\t#ifdef USE_TANGENT\\n\\t\\ttransformedTangent = bm * transformedTangent;\\n\\t#endif\\n#endif\\n#ifdef USE_INSTANCING\\n\\tmat3 im = mat3( instanceMatrix );\\n\\ttransformedNormal /= vec3( dot( im[ 0 ], im[ 0 ] ), dot( im[ 1 ], im[ 1 ] ), dot( im[ 2 ], im[ 2 ] ) );\\n\\ttransformedNormal = im * transformedNormal;\\n\\t#ifdef USE_TANGENT\\n\\t\\ttransformedTangent = im * transformedTangent;\\n\\t#endif\\n#endif\\ntransformedNormal = normalMatrix * transformedNormal;\\n#ifdef FLIP_SIDED\\n\\ttransformedNormal = - transformedNormal;\\n#endif\\n#ifdef USE_TANGENT\\n\\ttransformedTangent = ( modelViewMatrix * vec4( transformedTangent, 0.0 ) ).xyz;\\n\\t#ifdef FLIP_SIDED\\n\\t\\ttransformedTangent = - transformedTangent;\\n\\t#endif\\n#endif\",displacementmap_pars_vertex:\"#ifdef USE_DISPLACEMENTMAP\\n\\tuniform sampler2D displacementMap;\\n\\tuniform float displacementScale;\\n\\tuniform float displacementBias;\\n#endif\",displacementmap_vertex:\"#ifdef USE_DISPLACEMENTMAP\\n\\ttransformed += normalize( objectNormal ) * ( texture2D( displacementMap, vDisplacementMapUv ).x * displacementScale + displacementBias );\\n#endif\",emissivemap_fragment:\"#ifdef USE_EMISSIVEMAP\\n\\tvec4 emissiveColor = texture2D( emissiveMap, vEmissiveMapUv );\\n\\ttotalEmissiveRadiance *= emissiveColor.rgb;\\n#endif\",emissivemap_pars_fragment:\"#ifdef USE_EMISSIVEMAP\\n\\tuniform sampler2D emissiveMap;\\n#endif\",colorspace_fragment:\"gl_FragColor = linearToOutputTexel( gl_FragColor );\",colorspace_pars_fragment:\"\\nconst mat3 LINEAR_SRGB_TO_LINEAR_DISPLAY_P3 = mat3(\\n\\tvec3( 0.8224621, 0.177538, 0.0 ),\\n\\tvec3( 0.0331941, 0.9668058, 0.0 ),\\n\\tvec3( 0.0170827, 0.0723974, 0.9105199 )\\n);\\nconst mat3 LINEAR_DISPLAY_P3_TO_LINEAR_SRGB = mat3(\\n\\tvec3( 1.2249401, - 0.2249404, 0.0 ),\\n\\tvec3( - 0.0420569, 1.0420571, 0.0 ),\\n\\tvec3( - 0.0196376, - 0.0786361, 1.0982735 )\\n);\\nvec4 LinearSRGBToLinearDisplayP3( in vec4 value ) {\\n\\treturn vec4( value.rgb * LINEAR_SRGB_TO_LINEAR_DISPLAY_P3, value.a );\\n}\\nvec4 LinearDisplayP3ToLinearSRGB( in vec4 value ) {\\n\\treturn vec4( value.rgb * LINEAR_DISPLAY_P3_TO_LINEAR_SRGB, value.a );\\n}\\nvec4 LinearTransferOETF( in vec4 value ) {\\n\\treturn value;\\n}\\nvec4 sRGBTransferOETF( in vec4 value ) {\\n\\treturn vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a );\\n}\\nvec4 LinearToLinear( in vec4 value ) {\\n\\treturn value;\\n}\\nvec4 LinearTosRGB( in vec4 value ) {\\n\\treturn sRGBTransferOETF( value );\\n}\",envmap_fragment:\"#ifdef USE_ENVMAP\\n\\t#ifdef ENV_WORLDPOS\\n\\t\\tvec3 cameraToFrag;\\n\\t\\tif ( isOrthographic ) {\\n\\t\\t\\tcameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\\n\\t\\t} else {\\n\\t\\t\\tcameraToFrag = normalize( vWorldPosition - cameraPosition );\\n\\t\\t}\\n\\t\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\n\\t\\t#ifdef ENVMAP_MODE_REFLECTION\\n\\t\\t\\tvec3 reflectVec = reflect( cameraToFrag, worldNormal );\\n\\t\\t#else\\n\\t\\t\\tvec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio );\\n\\t\\t#endif\\n\\t#else\\n\\t\\tvec3 reflectVec = vReflect;\\n\\t#endif\\n\\t#ifdef ENVMAP_TYPE_CUBE\\n\\t\\tvec4 envColor = textureCube( envMap, vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\\n\\t#else\\n\\t\\tvec4 envColor = vec4( 0.0 );\\n\\t#endif\\n\\t#ifdef ENVMAP_BLENDING_MULTIPLY\\n\\t\\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\\n\\t#elif defined( ENVMAP_BLENDING_MIX )\\n\\t\\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\\n\\t#elif defined( ENVMAP_BLENDING_ADD )\\n\\t\\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\\n\\t#endif\\n#endif\",envmap_common_pars_fragment:\"#ifdef USE_ENVMAP\\n\\tuniform float envMapIntensity;\\n\\tuniform float flipEnvMap;\\n\\t#ifdef ENVMAP_TYPE_CUBE\\n\\t\\tuniform samplerCube envMap;\\n\\t#else\\n\\t\\tuniform sampler2D envMap;\\n\\t#endif\\n\\t\\n#endif\",envmap_pars_fragment:\"#ifdef USE_ENVMAP\\n\\tuniform float reflectivity;\\n\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )\\n\\t\\t#define ENV_WORLDPOS\\n\\t#endif\\n\\t#ifdef ENV_WORLDPOS\\n\\t\\tvarying vec3 vWorldPosition;\\n\\t\\tuniform float refractionRatio;\\n\\t#else\\n\\t\\tvarying vec3 vReflect;\\n\\t#endif\\n#endif\",envmap_pars_vertex:\"#ifdef USE_ENVMAP\\n\\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )\\n\\t\\t#define ENV_WORLDPOS\\n\\t#endif\\n\\t#ifdef ENV_WORLDPOS\\n\\t\\t\\n\\t\\tvarying vec3 vWorldPosition;\\n\\t#else\\n\\t\\tvarying vec3 vReflect;\\n\\t\\tuniform float refractionRatio;\\n\\t#endif\\n#endif\",envmap_physical_pars_fragment:\"#ifdef USE_ENVMAP\\n\\tvec3 getIBLIrradiance( const in vec3 normal ) {\\n\\t\\t#ifdef ENVMAP_TYPE_CUBE_UV\\n\\t\\t\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\n\\t\\t\\tvec4 envMapColor = textureCubeUV( envMap, worldNormal, 1.0 );\\n\\t\\t\\treturn PI * envMapColor.rgb * envMapIntensity;\\n\\t\\t#else\\n\\t\\t\\treturn vec3( 0.0 );\\n\\t\\t#endif\\n\\t}\\n\\tvec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) {\\n\\t\\t#ifdef ENVMAP_TYPE_CUBE_UV\\n\\t\\t\\tvec3 reflectVec = reflect( - viewDir, normal );\\n\\t\\t\\treflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );\\n\\t\\t\\treflectVec = inverseTransformDirection( reflectVec, viewMatrix );\\n\\t\\t\\tvec4 envMapColor = textureCubeUV( envMap, reflectVec, roughness );\\n\\t\\t\\treturn envMapColor.rgb * envMapIntensity;\\n\\t\\t#else\\n\\t\\t\\treturn vec3( 0.0 );\\n\\t\\t#endif\\n\\t}\\n\\t#ifdef USE_ANISOTROPY\\n\\t\\tvec3 getIBLAnisotropyRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness, const in vec3 bitangent, const in float anisotropy ) {\\n\\t\\t\\t#ifdef ENVMAP_TYPE_CUBE_UV\\n\\t\\t\\t\\tvec3 bentNormal = cross( bitangent, viewDir );\\n\\t\\t\\t\\tbentNormal = normalize( cross( bentNormal, bitangent ) );\\n\\t\\t\\t\\tbentNormal = normalize( mix( bentNormal, normal, pow2( pow2( 1.0 - anisotropy * ( 1.0 - roughness ) ) ) ) );\\n\\t\\t\\t\\treturn getIBLRadiance( viewDir, bentNormal, roughness );\\n\\t\\t\\t#else\\n\\t\\t\\t\\treturn vec3( 0.0 );\\n\\t\\t\\t#endif\\n\\t\\t}\\n\\t#endif\\n#endif\",envmap_vertex:\"#ifdef USE_ENVMAP\\n\\t#ifdef ENV_WORLDPOS\\n\\t\\tvWorldPosition = worldPosition.xyz;\\n\\t#else\\n\\t\\tvec3 cameraToVertex;\\n\\t\\tif ( isOrthographic ) {\\n\\t\\t\\tcameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\\n\\t\\t} else {\\n\\t\\t\\tcameraToVertex = normalize( worldPosition.xyz - cameraPosition );\\n\\t\\t}\\n\\t\\tvec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\\n\\t\\t#ifdef ENVMAP_MODE_REFLECTION\\n\\t\\t\\tvReflect = reflect( cameraToVertex, worldNormal );\\n\\t\\t#else\\n\\t\\t\\tvReflect = refract( cameraToVertex, worldNormal, refractionRatio );\\n\\t\\t#endif\\n\\t#endif\\n#endif\",fog_vertex:\"#ifdef USE_FOG\\n\\tvFogDepth = - mvPosition.z;\\n#endif\",fog_pars_vertex:\"#ifdef USE_FOG\\n\\tvarying float vFogDepth;\\n#endif\",fog_fragment:\"#ifdef USE_FOG\\n\\t#ifdef FOG_EXP2\\n\\t\\tfloat fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth );\\n\\t#else\\n\\t\\tfloat fogFactor = smoothstep( fogNear, fogFar, vFogDepth );\\n\\t#endif\\n\\tgl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\\n#endif\",fog_pars_fragment:\"#ifdef USE_FOG\\n\\tuniform vec3 fogColor;\\n\\tvarying float vFogDepth;\\n\\t#ifdef FOG_EXP2\\n\\t\\tuniform float fogDensity;\\n\\t#else\\n\\t\\tuniform float fogNear;\\n\\t\\tuniform float fogFar;\\n\\t#endif\\n#endif\",gradientmap_pars_fragment:\"#ifdef USE_GRADIENTMAP\\n\\tuniform sampler2D gradientMap;\\n#endif\\nvec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\\n\\tfloat dotNL = dot( normal, lightDirection );\\n\\tvec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\\n\\t#ifdef USE_GRADIENTMAP\\n\\t\\treturn vec3( texture2D( gradientMap, coord ).r );\\n\\t#else\\n\\t\\tvec2 fw = fwidth( coord ) * 0.5;\\n\\t\\treturn mix( vec3( 0.7 ), vec3( 1.0 ), smoothstep( 0.7 - fw.x, 0.7 + fw.x, coord.x ) );\\n\\t#endif\\n}\",lightmap_fragment:\"#ifdef USE_LIGHTMAP\\n\\tvec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\\n\\tvec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity;\\n\\treflectedLight.indirectDiffuse += lightMapIrradiance;\\n#endif\",lightmap_pars_fragment:\"#ifdef USE_LIGHTMAP\\n\\tuniform sampler2D lightMap;\\n\\tuniform float lightMapIntensity;\\n#endif\",lights_lambert_fragment:\"LambertMaterial material;\\nmaterial.diffuseColor = diffuseColor.rgb;\\nmaterial.specularStrength = specularStrength;\",lights_lambert_pars_fragment:\"varying vec3 vViewPosition;\\nstruct LambertMaterial {\\n\\tvec3 diffuseColor;\\n\\tfloat specularStrength;\\n};\\nvoid RE_Direct_Lambert( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {\\n\\tfloat dotNL = saturate( dot( geometryNormal, directLight.direction ) );\\n\\tvec3 irradiance = dotNL * directLight.color;\\n\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n}\\nvoid RE_IndirectDiffuse_Lambert( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {\\n\\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n}\\n#define RE_Direct\\t\\t\\t\\tRE_Direct_Lambert\\n#define RE_IndirectDiffuse\\t\\tRE_IndirectDiffuse_Lambert\",lights_pars_begin:\"uniform bool receiveShadow;\\nuniform vec3 ambientLightColor;\\n#if defined( USE_LIGHT_PROBES )\\n\\tuniform vec3 lightProbe[ 9 ];\\n#endif\\nvec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {\\n\\tfloat x = normal.x, y = normal.y, z = normal.z;\\n\\tvec3 result = shCoefficients[ 0 ] * 0.886227;\\n\\tresult += shCoefficients[ 1 ] * 2.0 * 0.511664 * y;\\n\\tresult += shCoefficients[ 2 ] * 2.0 * 0.511664 * z;\\n\\tresult += shCoefficients[ 3 ] * 2.0 * 0.511664 * x;\\n\\tresult += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y;\\n\\tresult += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z;\\n\\tresult += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 );\\n\\tresult += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z;\\n\\tresult += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y );\\n\\treturn result;\\n}\\nvec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) {\\n\\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\\n\\tvec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );\\n\\treturn irradiance;\\n}\\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\\n\\tvec3 irradiance = ambientLightColor;\\n\\treturn irradiance;\\n}\\nfloat getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {\\n\\t#if defined ( LEGACY_LIGHTS )\\n\\t\\tif ( cutoffDistance > 0.0 && decayExponent > 0.0 ) {\\n\\t\\t\\treturn pow( saturate( - lightDistance / cutoffDistance + 1.0 ), decayExponent );\\n\\t\\t}\\n\\t\\treturn 1.0;\\n\\t#else\\n\\t\\tfloat distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\\n\\t\\tif ( cutoffDistance > 0.0 ) {\\n\\t\\t\\tdistanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\\n\\t\\t}\\n\\t\\treturn distanceFalloff;\\n\\t#endif\\n}\\nfloat getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) {\\n\\treturn smoothstep( coneCosine, penumbraCosine, angleCosine );\\n}\\n#if NUM_DIR_LIGHTS > 0\\n\\tstruct DirectionalLight {\\n\\t\\tvec3 direction;\\n\\t\\tvec3 color;\\n\\t};\\n\\tuniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\\n\\tvoid getDirectionalLightInfo( const in DirectionalLight directionalLight, out IncidentLight light ) {\\n\\t\\tlight.color = directionalLight.color;\\n\\t\\tlight.direction = directionalLight.direction;\\n\\t\\tlight.visible = true;\\n\\t}\\n#endif\\n#if NUM_POINT_LIGHTS > 0\\n\\tstruct PointLight {\\n\\t\\tvec3 position;\\n\\t\\tvec3 color;\\n\\t\\tfloat distance;\\n\\t\\tfloat decay;\\n\\t};\\n\\tuniform PointLight pointLights[ NUM_POINT_LIGHTS ];\\n\\tvoid getPointLightInfo( const in PointLight pointLight, const in vec3 geometryPosition, out IncidentLight light ) {\\n\\t\\tvec3 lVector = pointLight.position - geometryPosition;\\n\\t\\tlight.direction = normalize( lVector );\\n\\t\\tfloat lightDistance = length( lVector );\\n\\t\\tlight.color = pointLight.color;\\n\\t\\tlight.color *= getDistanceAttenuation( lightDistance, pointLight.distance, pointLight.decay );\\n\\t\\tlight.visible = ( light.color != vec3( 0.0 ) );\\n\\t}\\n#endif\\n#if NUM_SPOT_LIGHTS > 0\\n\\tstruct SpotLight {\\n\\t\\tvec3 position;\\n\\t\\tvec3 direction;\\n\\t\\tvec3 color;\\n\\t\\tfloat distance;\\n\\t\\tfloat decay;\\n\\t\\tfloat coneCos;\\n\\t\\tfloat penumbraCos;\\n\\t};\\n\\tuniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\\n\\tvoid getSpotLightInfo( const in SpotLight spotLight, const in vec3 geometryPosition, out IncidentLight light ) {\\n\\t\\tvec3 lVector = spotLight.position - geometryPosition;\\n\\t\\tlight.direction = normalize( lVector );\\n\\t\\tfloat angleCos = dot( light.direction, spotLight.direction );\\n\\t\\tfloat spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos );\\n\\t\\tif ( spotAttenuation > 0.0 ) {\\n\\t\\t\\tfloat lightDistance = length( lVector );\\n\\t\\t\\tlight.color = spotLight.color * spotAttenuation;\\n\\t\\t\\tlight.color *= getDistanceAttenuation( lightDistance, spotLight.distance, spotLight.decay );\\n\\t\\t\\tlight.visible = ( light.color != vec3( 0.0 ) );\\n\\t\\t} else {\\n\\t\\t\\tlight.color = vec3( 0.0 );\\n\\t\\t\\tlight.visible = false;\\n\\t\\t}\\n\\t}\\n#endif\\n#if NUM_RECT_AREA_LIGHTS > 0\\n\\tstruct RectAreaLight {\\n\\t\\tvec3 color;\\n\\t\\tvec3 position;\\n\\t\\tvec3 halfWidth;\\n\\t\\tvec3 halfHeight;\\n\\t};\\n\\tuniform sampler2D ltc_1;\\tuniform sampler2D ltc_2;\\n\\tuniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\\n#endif\\n#if NUM_HEMI_LIGHTS > 0\\n\\tstruct HemisphereLight {\\n\\t\\tvec3 direction;\\n\\t\\tvec3 skyColor;\\n\\t\\tvec3 groundColor;\\n\\t};\\n\\tuniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\\n\\tvec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) {\\n\\t\\tfloat dotNL = dot( normal, hemiLight.direction );\\n\\t\\tfloat hemiDiffuseWeight = 0.5 * dotNL + 0.5;\\n\\t\\tvec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\\n\\t\\treturn irradiance;\\n\\t}\\n#endif\",lights_toon_fragment:\"ToonMaterial material;\\nmaterial.diffuseColor = diffuseColor.rgb;\",lights_toon_pars_fragment:\"varying vec3 vViewPosition;\\nstruct ToonMaterial {\\n\\tvec3 diffuseColor;\\n};\\nvoid RE_Direct_Toon( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\\n\\tvec3 irradiance = getGradientIrradiance( geometryNormal, directLight.direction ) * directLight.color;\\n\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n}\\nvoid RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\\n\\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n}\\n#define RE_Direct\\t\\t\\t\\tRE_Direct_Toon\\n#define RE_IndirectDiffuse\\t\\tRE_IndirectDiffuse_Toon\",lights_phong_fragment:\"BlinnPhongMaterial material;\\nmaterial.diffuseColor = diffuseColor.rgb;\\nmaterial.specularColor = specular;\\nmaterial.specularShininess = shininess;\\nmaterial.specularStrength = specularStrength;\",lights_phong_pars_fragment:\"varying vec3 vViewPosition;\\nstruct BlinnPhongMaterial {\\n\\tvec3 diffuseColor;\\n\\tvec3 specularColor;\\n\\tfloat specularShininess;\\n\\tfloat specularStrength;\\n};\\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\\n\\tfloat dotNL = saturate( dot( geometryNormal, directLight.direction ) );\\n\\tvec3 irradiance = dotNL * directLight.color;\\n\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n\\treflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometryViewDir, geometryNormal, material.specularColor, material.specularShininess ) * material.specularStrength;\\n}\\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\\n\\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n}\\n#define RE_Direct\\t\\t\\t\\tRE_Direct_BlinnPhong\\n#define RE_IndirectDiffuse\\t\\tRE_IndirectDiffuse_BlinnPhong\",lights_physical_fragment:\"PhysicalMaterial material;\\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\\nvec3 dxy = max( abs( dFdx( nonPerturbedNormal ) ), abs( dFdy( nonPerturbedNormal ) ) );\\nfloat geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );\\nmaterial.roughness = max( roughnessFactor, 0.0525 );material.roughness += geometryRoughness;\\nmaterial.roughness = min( material.roughness, 1.0 );\\n#ifdef IOR\\n\\tmaterial.ior = ior;\\n\\t#ifdef USE_SPECULAR\\n\\t\\tfloat specularIntensityFactor = specularIntensity;\\n\\t\\tvec3 specularColorFactor = specularColor;\\n\\t\\t#ifdef USE_SPECULAR_COLORMAP\\n\\t\\t\\tspecularColorFactor *= texture2D( specularColorMap, vSpecularColorMapUv ).rgb;\\n\\t\\t#endif\\n\\t\\t#ifdef USE_SPECULAR_INTENSITYMAP\\n\\t\\t\\tspecularIntensityFactor *= texture2D( specularIntensityMap, vSpecularIntensityMapUv ).a;\\n\\t\\t#endif\\n\\t\\tmaterial.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor );\\n\\t#else\\n\\t\\tfloat specularIntensityFactor = 1.0;\\n\\t\\tvec3 specularColorFactor = vec3( 1.0 );\\n\\t\\tmaterial.specularF90 = 1.0;\\n\\t#endif\\n\\tmaterial.specularColor = mix( min( pow2( ( material.ior - 1.0 ) / ( material.ior + 1.0 ) ) * specularColorFactor, vec3( 1.0 ) ) * specularIntensityFactor, diffuseColor.rgb, metalnessFactor );\\n#else\\n\\tmaterial.specularColor = mix( vec3( 0.04 ), diffuseColor.rgb, metalnessFactor );\\n\\tmaterial.specularF90 = 1.0;\\n#endif\\n#ifdef USE_CLEARCOAT\\n\\tmaterial.clearcoat = clearcoat;\\n\\tmaterial.clearcoatRoughness = clearcoatRoughness;\\n\\tmaterial.clearcoatF0 = vec3( 0.04 );\\n\\tmaterial.clearcoatF90 = 1.0;\\n\\t#ifdef USE_CLEARCOATMAP\\n\\t\\tmaterial.clearcoat *= texture2D( clearcoatMap, vClearcoatMapUv ).x;\\n\\t#endif\\n\\t#ifdef USE_CLEARCOAT_ROUGHNESSMAP\\n\\t\\tmaterial.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vClearcoatRoughnessMapUv ).y;\\n\\t#endif\\n\\tmaterial.clearcoat = saturate( material.clearcoat );\\tmaterial.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 );\\n\\tmaterial.clearcoatRoughness += geometryRoughness;\\n\\tmaterial.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 );\\n#endif\\n#ifdef USE_IRIDESCENCE\\n\\tmaterial.iridescence = iridescence;\\n\\tmaterial.iridescenceIOR = iridescenceIOR;\\n\\t#ifdef USE_IRIDESCENCEMAP\\n\\t\\tmaterial.iridescence *= texture2D( iridescenceMap, vIridescenceMapUv ).r;\\n\\t#endif\\n\\t#ifdef USE_IRIDESCENCE_THICKNESSMAP\\n\\t\\tmaterial.iridescenceThickness = (iridescenceThicknessMaximum - iridescenceThicknessMinimum) * texture2D( iridescenceThicknessMap, vIridescenceThicknessMapUv ).g + iridescenceThicknessMinimum;\\n\\t#else\\n\\t\\tmaterial.iridescenceThickness = iridescenceThicknessMaximum;\\n\\t#endif\\n#endif\\n#ifdef USE_SHEEN\\n\\tmaterial.sheenColor = sheenColor;\\n\\t#ifdef USE_SHEEN_COLORMAP\\n\\t\\tmaterial.sheenColor *= texture2D( sheenColorMap, vSheenColorMapUv ).rgb;\\n\\t#endif\\n\\tmaterial.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 );\\n\\t#ifdef USE_SHEEN_ROUGHNESSMAP\\n\\t\\tmaterial.sheenRoughness *= texture2D( sheenRoughnessMap, vSheenRoughnessMapUv ).a;\\n\\t#endif\\n#endif\\n#ifdef USE_ANISOTROPY\\n\\t#ifdef USE_ANISOTROPYMAP\\n\\t\\tmat2 anisotropyMat = mat2( anisotropyVector.x, anisotropyVector.y, - anisotropyVector.y, anisotropyVector.x );\\n\\t\\tvec3 anisotropyPolar = texture2D( anisotropyMap, vAnisotropyMapUv ).rgb;\\n\\t\\tvec2 anisotropyV = anisotropyMat * normalize( 2.0 * anisotropyPolar.rg - vec2( 1.0 ) ) * anisotropyPolar.b;\\n\\t#else\\n\\t\\tvec2 anisotropyV = anisotropyVector;\\n\\t#endif\\n\\tmaterial.anisotropy = length( anisotropyV );\\n\\tif( material.anisotropy == 0.0 ) {\\n\\t\\tanisotropyV = vec2( 1.0, 0.0 );\\n\\t} else {\\n\\t\\tanisotropyV /= material.anisotropy;\\n\\t\\tmaterial.anisotropy = saturate( material.anisotropy );\\n\\t}\\n\\tmaterial.alphaT = mix( pow2( material.roughness ), 1.0, pow2( material.anisotropy ) );\\n\\tmaterial.anisotropyT = tbn[ 0 ] * anisotropyV.x + tbn[ 1 ] * anisotropyV.y;\\n\\tmaterial.anisotropyB = tbn[ 1 ] * anisotropyV.x - tbn[ 0 ] * anisotropyV.y;\\n#endif\",lights_physical_pars_fragment:\"struct PhysicalMaterial {\\n\\tvec3 diffuseColor;\\n\\tfloat roughness;\\n\\tvec3 specularColor;\\n\\tfloat specularF90;\\n\\t#ifdef USE_CLEARCOAT\\n\\t\\tfloat clearcoat;\\n\\t\\tfloat clearcoatRoughness;\\n\\t\\tvec3 clearcoatF0;\\n\\t\\tfloat clearcoatF90;\\n\\t#endif\\n\\t#ifdef USE_IRIDESCENCE\\n\\t\\tfloat iridescence;\\n\\t\\tfloat iridescenceIOR;\\n\\t\\tfloat iridescenceThickness;\\n\\t\\tvec3 iridescenceFresnel;\\n\\t\\tvec3 iridescenceF0;\\n\\t#endif\\n\\t#ifdef USE_SHEEN\\n\\t\\tvec3 sheenColor;\\n\\t\\tfloat sheenRoughness;\\n\\t#endif\\n\\t#ifdef IOR\\n\\t\\tfloat ior;\\n\\t#endif\\n\\t#ifdef USE_TRANSMISSION\\n\\t\\tfloat transmission;\\n\\t\\tfloat transmissionAlpha;\\n\\t\\tfloat thickness;\\n\\t\\tfloat attenuationDistance;\\n\\t\\tvec3 attenuationColor;\\n\\t#endif\\n\\t#ifdef USE_ANISOTROPY\\n\\t\\tfloat anisotropy;\\n\\t\\tfloat alphaT;\\n\\t\\tvec3 anisotropyT;\\n\\t\\tvec3 anisotropyB;\\n\\t#endif\\n};\\nvec3 clearcoatSpecularDirect = vec3( 0.0 );\\nvec3 clearcoatSpecularIndirect = vec3( 0.0 );\\nvec3 sheenSpecularDirect = vec3( 0.0 );\\nvec3 sheenSpecularIndirect = vec3(0.0 );\\nvec3 Schlick_to_F0( const in vec3 f, const in float f90, const in float dotVH ) {\\n    float x = clamp( 1.0 - dotVH, 0.0, 1.0 );\\n    float x2 = x * x;\\n    float x5 = clamp( x * x2 * x2, 0.0, 0.9999 );\\n    return ( f - vec3( f90 ) * x5 ) / ( 1.0 - x5 );\\n}\\nfloat V_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\\n\\tfloat a2 = pow2( alpha );\\n\\tfloat gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\\n\\tfloat gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\\n\\treturn 0.5 / max( gv + gl, EPSILON );\\n}\\nfloat D_GGX( const in float alpha, const in float dotNH ) {\\n\\tfloat a2 = pow2( alpha );\\n\\tfloat denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;\\n\\treturn RECIPROCAL_PI * a2 / pow2( denom );\\n}\\n#ifdef USE_ANISOTROPY\\n\\tfloat V_GGX_SmithCorrelated_Anisotropic( const in float alphaT, const in float alphaB, const in float dotTV, const in float dotBV, const in float dotTL, const in float dotBL, const in float dotNV, const in float dotNL ) {\\n\\t\\tfloat gv = dotNL * length( vec3( alphaT * dotTV, alphaB * dotBV, dotNV ) );\\n\\t\\tfloat gl = dotNV * length( vec3( alphaT * dotTL, alphaB * dotBL, dotNL ) );\\n\\t\\tfloat v = 0.5 / ( gv + gl );\\n\\t\\treturn saturate(v);\\n\\t}\\n\\tfloat D_GGX_Anisotropic( const in float alphaT, const in float alphaB, const in float dotNH, const in float dotTH, const in float dotBH ) {\\n\\t\\tfloat a2 = alphaT * alphaB;\\n\\t\\thighp vec3 v = vec3( alphaB * dotTH, alphaT * dotBH, a2 * dotNH );\\n\\t\\thighp float v2 = dot( v, v );\\n\\t\\tfloat w2 = a2 / v2;\\n\\t\\treturn RECIPROCAL_PI * a2 * pow2 ( w2 );\\n\\t}\\n#endif\\n#ifdef USE_CLEARCOAT\\n\\tvec3 BRDF_GGX_Clearcoat( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material) {\\n\\t\\tvec3 f0 = material.clearcoatF0;\\n\\t\\tfloat f90 = material.clearcoatF90;\\n\\t\\tfloat roughness = material.clearcoatRoughness;\\n\\t\\tfloat alpha = pow2( roughness );\\n\\t\\tvec3 halfDir = normalize( lightDir + viewDir );\\n\\t\\tfloat dotNL = saturate( dot( normal, lightDir ) );\\n\\t\\tfloat dotNV = saturate( dot( normal, viewDir ) );\\n\\t\\tfloat dotNH = saturate( dot( normal, halfDir ) );\\n\\t\\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\\n\\t\\tvec3 F = F_Schlick( f0, f90, dotVH );\\n\\t\\tfloat V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\\n\\t\\tfloat D = D_GGX( alpha, dotNH );\\n\\t\\treturn F * ( V * D );\\n\\t}\\n#endif\\nvec3 BRDF_GGX( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material ) {\\n\\tvec3 f0 = material.specularColor;\\n\\tfloat f90 = material.specularF90;\\n\\tfloat roughness = material.roughness;\\n\\tfloat alpha = pow2( roughness );\\n\\tvec3 halfDir = normalize( lightDir + viewDir );\\n\\tfloat dotNL = saturate( dot( normal, lightDir ) );\\n\\tfloat dotNV = saturate( dot( normal, viewDir ) );\\n\\tfloat dotNH = saturate( dot( normal, halfDir ) );\\n\\tfloat dotVH = saturate( dot( viewDir, halfDir ) );\\n\\tvec3 F = F_Schlick( f0, f90, dotVH );\\n\\t#ifdef USE_IRIDESCENCE\\n\\t\\tF = mix( F, material.iridescenceFresnel, material.iridescence );\\n\\t#endif\\n\\t#ifdef USE_ANISOTROPY\\n\\t\\tfloat dotTL = dot( material.anisotropyT, lightDir );\\n\\t\\tfloat dotTV = dot( material.anisotropyT, viewDir );\\n\\t\\tfloat dotTH = dot( material.anisotropyT, halfDir );\\n\\t\\tfloat dotBL = dot( material.anisotropyB, lightDir );\\n\\t\\tfloat dotBV = dot( material.anisotropyB, viewDir );\\n\\t\\tfloat dotBH = dot( material.anisotropyB, halfDir );\\n\\t\\tfloat V = V_GGX_SmithCorrelated_Anisotropic( material.alphaT, alpha, dotTV, dotBV, dotTL, dotBL, dotNV, dotNL );\\n\\t\\tfloat D = D_GGX_Anisotropic( material.alphaT, alpha, dotNH, dotTH, dotBH );\\n\\t#else\\n\\t\\tfloat V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\\n\\t\\tfloat D = D_GGX( alpha, dotNH );\\n\\t#endif\\n\\treturn F * ( V * D );\\n}\\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\\n\\tconst float LUT_SIZE = 64.0;\\n\\tconst float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE;\\n\\tconst float LUT_BIAS = 0.5 / LUT_SIZE;\\n\\tfloat dotNV = saturate( dot( N, V ) );\\n\\tvec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\\n\\tuv = uv * LUT_SCALE + LUT_BIAS;\\n\\treturn uv;\\n}\\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\\n\\tfloat l = length( f );\\n\\treturn max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\\n}\\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\\n\\tfloat x = dot( v1, v2 );\\n\\tfloat y = abs( x );\\n\\tfloat a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y;\\n\\tfloat b = 3.4175940 + ( 4.1616724 + y ) * y;\\n\\tfloat v = a / b;\\n\\tfloat theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\\n\\treturn cross( v1, v2 ) * theta_sintheta;\\n}\\nvec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) {\\n\\tvec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\\n\\tvec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\\n\\tvec3 lightNormal = cross( v1, v2 );\\n\\tif( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );\\n\\tvec3 T1, T2;\\n\\tT1 = normalize( V - N * dot( V, N ) );\\n\\tT2 = - cross( N, T1 );\\n\\tmat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );\\n\\tvec3 coords[ 4 ];\\n\\tcoords[ 0 ] = mat * ( rectCoords[ 0 ] - P );\\n\\tcoords[ 1 ] = mat * ( rectCoords[ 1 ] - P );\\n\\tcoords[ 2 ] = mat * ( rectCoords[ 2 ] - P );\\n\\tcoords[ 3 ] = mat * ( rectCoords[ 3 ] - P );\\n\\tcoords[ 0 ] = normalize( coords[ 0 ] );\\n\\tcoords[ 1 ] = normalize( coords[ 1 ] );\\n\\tcoords[ 2 ] = normalize( coords[ 2 ] );\\n\\tcoords[ 3 ] = normalize( coords[ 3 ] );\\n\\tvec3 vectorFormFactor = vec3( 0.0 );\\n\\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] );\\n\\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] );\\n\\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] );\\n\\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] );\\n\\tfloat result = LTC_ClippedSphereFormFactor( vectorFormFactor );\\n\\treturn vec3( result );\\n}\\n#if defined( USE_SHEEN )\\nfloat D_Charlie( float roughness, float dotNH ) {\\n\\tfloat alpha = pow2( roughness );\\n\\tfloat invAlpha = 1.0 / alpha;\\n\\tfloat cos2h = dotNH * dotNH;\\n\\tfloat sin2h = max( 1.0 - cos2h, 0.0078125 );\\n\\treturn ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI );\\n}\\nfloat V_Neubelt( float dotNV, float dotNL ) {\\n\\treturn saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) );\\n}\\nvec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 sheenColor, const in float sheenRoughness ) {\\n\\tvec3 halfDir = normalize( lightDir + viewDir );\\n\\tfloat dotNL = saturate( dot( normal, lightDir ) );\\n\\tfloat dotNV = saturate( dot( normal, viewDir ) );\\n\\tfloat dotNH = saturate( dot( normal, halfDir ) );\\n\\tfloat D = D_Charlie( sheenRoughness, dotNH );\\n\\tfloat V = V_Neubelt( dotNV, dotNL );\\n\\treturn sheenColor * ( D * V );\\n}\\n#endif\\nfloat IBLSheenBRDF( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\\n\\tfloat dotNV = saturate( dot( normal, viewDir ) );\\n\\tfloat r2 = roughness * roughness;\\n\\tfloat a = roughness < 0.25 ? -339.2 * r2 + 161.4 * roughness - 25.9 : -8.48 * r2 + 14.3 * roughness - 9.95;\\n\\tfloat b = roughness < 0.25 ? 44.0 * r2 - 23.7 * roughness + 3.26 : 1.97 * r2 - 3.27 * roughness + 0.72;\\n\\tfloat DG = exp( a * dotNV + b ) + ( roughness < 0.25 ? 0.0 : 0.1 * ( roughness - 0.25 ) );\\n\\treturn saturate( DG * RECIPROCAL_PI );\\n}\\nvec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\\n\\tfloat dotNV = saturate( dot( normal, viewDir ) );\\n\\tconst vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );\\n\\tconst vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );\\n\\tvec4 r = roughness * c0 + c1;\\n\\tfloat a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;\\n\\tvec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw;\\n\\treturn fab;\\n}\\nvec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) {\\n\\tvec2 fab = DFGApprox( normal, viewDir, roughness );\\n\\treturn specularColor * fab.x + specularF90 * fab.y;\\n}\\n#ifdef USE_IRIDESCENCE\\nvoid computeMultiscatteringIridescence( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float iridescence, const in vec3 iridescenceF0, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\\n#else\\nvoid computeMultiscattering( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\\n#endif\\n\\tvec2 fab = DFGApprox( normal, viewDir, roughness );\\n\\t#ifdef USE_IRIDESCENCE\\n\\t\\tvec3 Fr = mix( specularColor, iridescenceF0, iridescence );\\n\\t#else\\n\\t\\tvec3 Fr = specularColor;\\n\\t#endif\\n\\tvec3 FssEss = Fr * fab.x + specularF90 * fab.y;\\n\\tfloat Ess = fab.x + fab.y;\\n\\tfloat Ems = 1.0 - Ess;\\n\\tvec3 Favg = Fr + ( 1.0 - Fr ) * 0.047619;\\tvec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );\\n\\tsingleScatter += FssEss;\\n\\tmultiScatter += Fms * Ems;\\n}\\n#if NUM_RECT_AREA_LIGHTS > 0\\n\\tvoid RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\n\\t\\tvec3 normal = geometryNormal;\\n\\t\\tvec3 viewDir = geometryViewDir;\\n\\t\\tvec3 position = geometryPosition;\\n\\t\\tvec3 lightPos = rectAreaLight.position;\\n\\t\\tvec3 halfWidth = rectAreaLight.halfWidth;\\n\\t\\tvec3 halfHeight = rectAreaLight.halfHeight;\\n\\t\\tvec3 lightColor = rectAreaLight.color;\\n\\t\\tfloat roughness = material.roughness;\\n\\t\\tvec3 rectCoords[ 4 ];\\n\\t\\trectCoords[ 0 ] = lightPos + halfWidth - halfHeight;\\t\\trectCoords[ 1 ] = lightPos - halfWidth - halfHeight;\\n\\t\\trectCoords[ 2 ] = lightPos - halfWidth + halfHeight;\\n\\t\\trectCoords[ 3 ] = lightPos + halfWidth + halfHeight;\\n\\t\\tvec2 uv = LTC_Uv( normal, viewDir, roughness );\\n\\t\\tvec4 t1 = texture2D( ltc_1, uv );\\n\\t\\tvec4 t2 = texture2D( ltc_2, uv );\\n\\t\\tmat3 mInv = mat3(\\n\\t\\t\\tvec3( t1.x, 0, t1.y ),\\n\\t\\t\\tvec3(    0, 1,    0 ),\\n\\t\\t\\tvec3( t1.z, 0, t1.w )\\n\\t\\t);\\n\\t\\tvec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );\\n\\t\\treflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\\n\\t\\treflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\\n\\t}\\n#endif\\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\n\\tfloat dotNL = saturate( dot( geometryNormal, directLight.direction ) );\\n\\tvec3 irradiance = dotNL * directLight.color;\\n\\t#ifdef USE_CLEARCOAT\\n\\t\\tfloat dotNLcc = saturate( dot( geometryClearcoatNormal, directLight.direction ) );\\n\\t\\tvec3 ccIrradiance = dotNLcc * directLight.color;\\n\\t\\tclearcoatSpecularDirect += ccIrradiance * BRDF_GGX_Clearcoat( directLight.direction, geometryViewDir, geometryClearcoatNormal, material );\\n\\t#endif\\n\\t#ifdef USE_SHEEN\\n\\t\\tsheenSpecularDirect += irradiance * BRDF_Sheen( directLight.direction, geometryViewDir, geometryNormal, material.sheenColor, material.sheenRoughness );\\n\\t#endif\\n\\treflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometryViewDir, geometryNormal, material );\\n\\treflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n}\\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\\n\\treflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\\n}\\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\\n\\t#ifdef USE_CLEARCOAT\\n\\t\\tclearcoatSpecularIndirect += clearcoatRadiance * EnvironmentBRDF( geometryClearcoatNormal, geometryViewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\\n\\t#endif\\n\\t#ifdef USE_SHEEN\\n\\t\\tsheenSpecularIndirect += irradiance * material.sheenColor * IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness );\\n\\t#endif\\n\\tvec3 singleScattering = vec3( 0.0 );\\n\\tvec3 multiScattering = vec3( 0.0 );\\n\\tvec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\\n\\t#ifdef USE_IRIDESCENCE\\n\\t\\tcomputeMultiscatteringIridescence( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.iridescence, material.iridescenceFresnel, material.roughness, singleScattering, multiScattering );\\n\\t#else\\n\\t\\tcomputeMultiscattering( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering );\\n\\t#endif\\n\\tvec3 totalScattering = singleScattering + multiScattering;\\n\\tvec3 diffuse = material.diffuseColor * ( 1.0 - max( max( totalScattering.r, totalScattering.g ), totalScattering.b ) );\\n\\treflectedLight.indirectSpecular += radiance * singleScattering;\\n\\treflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;\\n\\treflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;\\n}\\n#define RE_Direct\\t\\t\\t\\tRE_Direct_Physical\\n#define RE_Direct_RectArea\\t\\tRE_Direct_RectArea_Physical\\n#define RE_IndirectDiffuse\\t\\tRE_IndirectDiffuse_Physical\\n#define RE_IndirectSpecular\\t\\tRE_IndirectSpecular_Physical\\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\\n\\treturn saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\\n}\",lights_fragment_begin:\"\\nvec3 geometryPosition = - vViewPosition;\\nvec3 geometryNormal = normal;\\nvec3 geometryViewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );\\nvec3 geometryClearcoatNormal = vec3( 0.0 );\\n#ifdef USE_CLEARCOAT\\n\\tgeometryClearcoatNormal = clearcoatNormal;\\n#endif\\n#ifdef USE_IRIDESCENCE\\n\\tfloat dotNVi = saturate( dot( normal, geometryViewDir ) );\\n\\tif ( material.iridescenceThickness == 0.0 ) {\\n\\t\\tmaterial.iridescence = 0.0;\\n\\t} else {\\n\\t\\tmaterial.iridescence = saturate( material.iridescence );\\n\\t}\\n\\tif ( material.iridescence > 0.0 ) {\\n\\t\\tmaterial.iridescenceFresnel = evalIridescence( 1.0, material.iridescenceIOR, dotNVi, material.iridescenceThickness, material.specularColor );\\n\\t\\tmaterial.iridescenceF0 = Schlick_to_F0( material.iridescenceFresnel, 1.0, dotNVi );\\n\\t}\\n#endif\\nIncidentLight directLight;\\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\\n\\tPointLight pointLight;\\n\\t#if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0\\n\\tPointLightShadow pointLightShadow;\\n\\t#endif\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\\n\\t\\tpointLight = pointLights[ i ];\\n\\t\\tgetPointLightInfo( pointLight, geometryPosition, directLight );\\n\\t\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS )\\n\\t\\tpointLightShadow = pointLightShadows[ i ];\\n\\t\\tdirectLight.color *= ( directLight.visible && receiveShadow ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0;\\n\\t\\t#endif\\n\\t\\tRE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\\n\\t}\\n\\t#pragma unroll_loop_end\\n#endif\\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\\n\\tSpotLight spotLight;\\n\\tvec4 spotColor;\\n\\tvec3 spotLightCoord;\\n\\tbool inSpotLightMap;\\n\\t#if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0\\n\\tSpotLightShadow spotLightShadow;\\n\\t#endif\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\\n\\t\\tspotLight = spotLights[ i ];\\n\\t\\tgetSpotLightInfo( spotLight, geometryPosition, directLight );\\n\\t\\t#if ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )\\n\\t\\t#define SPOT_LIGHT_MAP_INDEX UNROLLED_LOOP_INDEX\\n\\t\\t#elif ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\\n\\t\\t#define SPOT_LIGHT_MAP_INDEX NUM_SPOT_LIGHT_MAPS\\n\\t\\t#else\\n\\t\\t#define SPOT_LIGHT_MAP_INDEX ( UNROLLED_LOOP_INDEX - NUM_SPOT_LIGHT_SHADOWS + NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )\\n\\t\\t#endif\\n\\t\\t#if ( SPOT_LIGHT_MAP_INDEX < NUM_SPOT_LIGHT_MAPS )\\n\\t\\t\\tspotLightCoord = vSpotLightCoord[ i ].xyz / vSpotLightCoord[ i ].w;\\n\\t\\t\\tinSpotLightMap = all( lessThan( abs( spotLightCoord * 2. - 1. ), vec3( 1.0 ) ) );\\n\\t\\t\\tspotColor = texture2D( spotLightMap[ SPOT_LIGHT_MAP_INDEX ], spotLightCoord.xy );\\n\\t\\t\\tdirectLight.color = inSpotLightMap ? directLight.color * spotColor.rgb : directLight.color;\\n\\t\\t#endif\\n\\t\\t#undef SPOT_LIGHT_MAP_INDEX\\n\\t\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\\n\\t\\tspotLightShadow = spotLightShadows[ i ];\\n\\t\\tdirectLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;\\n\\t\\t#endif\\n\\t\\tRE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\\n\\t}\\n\\t#pragma unroll_loop_end\\n#endif\\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\\n\\tDirectionalLight directionalLight;\\n\\t#if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0\\n\\tDirectionalLightShadow directionalLightShadow;\\n\\t#endif\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\\n\\t\\tdirectionalLight = directionalLights[ i ];\\n\\t\\tgetDirectionalLightInfo( directionalLight, directLight );\\n\\t\\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )\\n\\t\\tdirectionalLightShadow = directionalLightShadows[ i ];\\n\\t\\tdirectLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\\n\\t\\t#endif\\n\\t\\tRE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\\n\\t}\\n\\t#pragma unroll_loop_end\\n#endif\\n#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )\\n\\tRectAreaLight rectAreaLight;\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {\\n\\t\\trectAreaLight = rectAreaLights[ i ];\\n\\t\\tRE_Direct_RectArea( rectAreaLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\\n\\t}\\n\\t#pragma unroll_loop_end\\n#endif\\n#if defined( RE_IndirectDiffuse )\\n\\tvec3 iblIrradiance = vec3( 0.0 );\\n\\tvec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\\n\\t#if defined( USE_LIGHT_PROBES )\\n\\t\\tirradiance += getLightProbeIrradiance( lightProbe, geometryNormal );\\n\\t#endif\\n\\t#if ( NUM_HEMI_LIGHTS > 0 )\\n\\t\\t#pragma unroll_loop_start\\n\\t\\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\\n\\t\\t\\tirradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometryNormal );\\n\\t\\t}\\n\\t\\t#pragma unroll_loop_end\\n\\t#endif\\n#endif\\n#if defined( RE_IndirectSpecular )\\n\\tvec3 radiance = vec3( 0.0 );\\n\\tvec3 clearcoatRadiance = vec3( 0.0 );\\n#endif\",lights_fragment_maps:\"#if defined( RE_IndirectDiffuse )\\n\\t#ifdef USE_LIGHTMAP\\n\\t\\tvec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\\n\\t\\tvec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity;\\n\\t\\tirradiance += lightMapIrradiance;\\n\\t#endif\\n\\t#if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV )\\n\\t\\tiblIrradiance += getIBLIrradiance( geometryNormal );\\n\\t#endif\\n#endif\\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\\n\\t#ifdef USE_ANISOTROPY\\n\\t\\tradiance += getIBLAnisotropyRadiance( geometryViewDir, geometryNormal, material.roughness, material.anisotropyB, material.anisotropy );\\n\\t#else\\n\\t\\tradiance += getIBLRadiance( geometryViewDir, geometryNormal, material.roughness );\\n\\t#endif\\n\\t#ifdef USE_CLEARCOAT\\n\\t\\tclearcoatRadiance += getIBLRadiance( geometryViewDir, geometryClearcoatNormal, material.clearcoatRoughness );\\n\\t#endif\\n#endif\",lights_fragment_end:\"#if defined( RE_IndirectDiffuse )\\n\\tRE_IndirectDiffuse( irradiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\\n#endif\\n#if defined( RE_IndirectSpecular )\\n\\tRE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\\n#endif\",logdepthbuf_fragment:\"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\\n\\tgl_FragDepthEXT = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\\n#endif\",logdepthbuf_pars_fragment:\"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\\n\\tuniform float logDepthBufFC;\\n\\tvarying float vFragDepth;\\n\\tvarying float vIsPerspective;\\n#endif\",logdepthbuf_pars_vertex:\"#ifdef USE_LOGDEPTHBUF\\n\\t#ifdef USE_LOGDEPTHBUF_EXT\\n\\t\\tvarying float vFragDepth;\\n\\t\\tvarying float vIsPerspective;\\n\\t#else\\n\\t\\tuniform float logDepthBufFC;\\n\\t#endif\\n#endif\",logdepthbuf_vertex:\"#ifdef USE_LOGDEPTHBUF\\n\\t#ifdef USE_LOGDEPTHBUF_EXT\\n\\t\\tvFragDepth = 1.0 + gl_Position.w;\\n\\t\\tvIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );\\n\\t#else\\n\\t\\tif ( isPerspectiveMatrix( projectionMatrix ) ) {\\n\\t\\t\\tgl_Position.z = log2( max( EPSILON, gl_Position.w + 1.0 ) ) * logDepthBufFC - 1.0;\\n\\t\\t\\tgl_Position.z *= gl_Position.w;\\n\\t\\t}\\n\\t#endif\\n#endif\",map_fragment:\"#ifdef USE_MAP\\n\\tvec4 sampledDiffuseColor = texture2D( map, vMapUv );\\n\\t#ifdef DECODE_VIDEO_TEXTURE\\n\\t\\tsampledDiffuseColor = vec4( mix( pow( sampledDiffuseColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), sampledDiffuseColor.rgb * 0.0773993808, vec3( lessThanEqual( sampledDiffuseColor.rgb, vec3( 0.04045 ) ) ) ), sampledDiffuseColor.w );\\n\\t\\n\\t#endif\\n\\tdiffuseColor *= sampledDiffuseColor;\\n#endif\",map_pars_fragment:\"#ifdef USE_MAP\\n\\tuniform sampler2D map;\\n#endif\",map_particle_fragment:\"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\\n\\t#if defined( USE_POINTS_UV )\\n\\t\\tvec2 uv = vUv;\\n\\t#else\\n\\t\\tvec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\\n\\t#endif\\n#endif\\n#ifdef USE_MAP\\n\\tdiffuseColor *= texture2D( map, uv );\\n#endif\\n#ifdef USE_ALPHAMAP\\n\\tdiffuseColor.a *= texture2D( alphaMap, uv ).g;\\n#endif\",map_particle_pars_fragment:\"#if defined( USE_POINTS_UV )\\n\\tvarying vec2 vUv;\\n#else\\n\\t#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\\n\\t\\tuniform mat3 uvTransform;\\n\\t#endif\\n#endif\\n#ifdef USE_MAP\\n\\tuniform sampler2D map;\\n#endif\\n#ifdef USE_ALPHAMAP\\n\\tuniform sampler2D alphaMap;\\n#endif\",metalnessmap_fragment:\"float metalnessFactor = metalness;\\n#ifdef USE_METALNESSMAP\\n\\tvec4 texelMetalness = texture2D( metalnessMap, vMetalnessMapUv );\\n\\tmetalnessFactor *= texelMetalness.b;\\n#endif\",metalnessmap_pars_fragment:\"#ifdef USE_METALNESSMAP\\n\\tuniform sampler2D metalnessMap;\\n#endif\",morphcolor_vertex:\"#if defined( USE_MORPHCOLORS ) && defined( MORPHTARGETS_TEXTURE )\\n\\tvColor *= morphTargetBaseInfluence;\\n\\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\\n\\t\\t#if defined( USE_COLOR_ALPHA )\\n\\t\\t\\tif ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ) * morphTargetInfluences[ i ];\\n\\t\\t#elif defined( USE_COLOR )\\n\\t\\t\\tif ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ).rgb * morphTargetInfluences[ i ];\\n\\t\\t#endif\\n\\t}\\n#endif\",morphnormal_vertex:\"#ifdef USE_MORPHNORMALS\\n\\tobjectNormal *= morphTargetBaseInfluence;\\n\\t#ifdef MORPHTARGETS_TEXTURE\\n\\t\\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\\n\\t\\t\\tif ( morphTargetInfluences[ i ] != 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1 ).xyz * morphTargetInfluences[ i ];\\n\\t\\t}\\n\\t#else\\n\\t\\tobjectNormal += morphNormal0 * morphTargetInfluences[ 0 ];\\n\\t\\tobjectNormal += morphNormal1 * morphTargetInfluences[ 1 ];\\n\\t\\tobjectNormal += morphNormal2 * morphTargetInfluences[ 2 ];\\n\\t\\tobjectNormal += morphNormal3 * morphTargetInfluences[ 3 ];\\n\\t#endif\\n#endif\",morphtarget_pars_vertex:\"#ifdef USE_MORPHTARGETS\\n\\tuniform float morphTargetBaseInfluence;\\n\\t#ifdef MORPHTARGETS_TEXTURE\\n\\t\\tuniform float morphTargetInfluences[ MORPHTARGETS_COUNT ];\\n\\t\\tuniform sampler2DArray morphTargetsTexture;\\n\\t\\tuniform ivec2 morphTargetsTextureSize;\\n\\t\\tvec4 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset ) {\\n\\t\\t\\tint texelIndex = vertexIndex * MORPHTARGETS_TEXTURE_STRIDE + offset;\\n\\t\\t\\tint y = texelIndex / morphTargetsTextureSize.x;\\n\\t\\t\\tint x = texelIndex - y * morphTargetsTextureSize.x;\\n\\t\\t\\tivec3 morphUV = ivec3( x, y, morphTargetIndex );\\n\\t\\t\\treturn texelFetch( morphTargetsTexture, morphUV, 0 );\\n\\t\\t}\\n\\t#else\\n\\t\\t#ifndef USE_MORPHNORMALS\\n\\t\\t\\tuniform float morphTargetInfluences[ 8 ];\\n\\t\\t#else\\n\\t\\t\\tuniform float morphTargetInfluences[ 4 ];\\n\\t\\t#endif\\n\\t#endif\\n#endif\",morphtarget_vertex:\"#ifdef USE_MORPHTARGETS\\n\\ttransformed *= morphTargetBaseInfluence;\\n\\t#ifdef MORPHTARGETS_TEXTURE\\n\\t\\tfor ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\\n\\t\\t\\tif ( morphTargetInfluences[ i ] != 0.0 ) transformed += getMorph( gl_VertexID, i, 0 ).xyz * morphTargetInfluences[ i ];\\n\\t\\t}\\n\\t#else\\n\\t\\ttransformed += morphTarget0 * morphTargetInfluences[ 0 ];\\n\\t\\ttransformed += morphTarget1 * morphTargetInfluences[ 1 ];\\n\\t\\ttransformed += morphTarget2 * morphTargetInfluences[ 2 ];\\n\\t\\ttransformed += morphTarget3 * morphTargetInfluences[ 3 ];\\n\\t\\t#ifndef USE_MORPHNORMALS\\n\\t\\t\\ttransformed += morphTarget4 * morphTargetInfluences[ 4 ];\\n\\t\\t\\ttransformed += morphTarget5 * morphTargetInfluences[ 5 ];\\n\\t\\t\\ttransformed += morphTarget6 * morphTargetInfluences[ 6 ];\\n\\t\\t\\ttransformed += morphTarget7 * morphTargetInfluences[ 7 ];\\n\\t\\t#endif\\n\\t#endif\\n#endif\",normal_fragment_begin:\"float faceDirection = gl_FrontFacing ? 1.0 : - 1.0;\\n#ifdef FLAT_SHADED\\n\\tvec3 fdx = dFdx( vViewPosition );\\n\\tvec3 fdy = dFdy( vViewPosition );\\n\\tvec3 normal = normalize( cross( fdx, fdy ) );\\n#else\\n\\tvec3 normal = normalize( vNormal );\\n\\t#ifdef DOUBLE_SIDED\\n\\t\\tnormal *= faceDirection;\\n\\t#endif\\n#endif\\n#if defined( USE_NORMALMAP_TANGENTSPACE ) || defined( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY )\\n\\t#ifdef USE_TANGENT\\n\\t\\tmat3 tbn = mat3( normalize( vTangent ), normalize( vBitangent ), normal );\\n\\t#else\\n\\t\\tmat3 tbn = getTangentFrame( - vViewPosition, normal,\\n\\t\\t#if defined( USE_NORMALMAP )\\n\\t\\t\\tvNormalMapUv\\n\\t\\t#elif defined( USE_CLEARCOAT_NORMALMAP )\\n\\t\\t\\tvClearcoatNormalMapUv\\n\\t\\t#else\\n\\t\\t\\tvUv\\n\\t\\t#endif\\n\\t\\t);\\n\\t#endif\\n\\t#if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )\\n\\t\\ttbn[0] *= faceDirection;\\n\\t\\ttbn[1] *= faceDirection;\\n\\t#endif\\n#endif\\n#ifdef USE_CLEARCOAT_NORMALMAP\\n\\t#ifdef USE_TANGENT\\n\\t\\tmat3 tbn2 = mat3( normalize( vTangent ), normalize( vBitangent ), normal );\\n\\t#else\\n\\t\\tmat3 tbn2 = getTangentFrame( - vViewPosition, normal, vClearcoatNormalMapUv );\\n\\t#endif\\n\\t#if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )\\n\\t\\ttbn2[0] *= faceDirection;\\n\\t\\ttbn2[1] *= faceDirection;\\n\\t#endif\\n#endif\\nvec3 nonPerturbedNormal = normal;\",normal_fragment_maps:\"#ifdef USE_NORMALMAP_OBJECTSPACE\\n\\tnormal = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;\\n\\t#ifdef FLIP_SIDED\\n\\t\\tnormal = - normal;\\n\\t#endif\\n\\t#ifdef DOUBLE_SIDED\\n\\t\\tnormal = normal * faceDirection;\\n\\t#endif\\n\\tnormal = normalize( normalMatrix * normal );\\n#elif defined( USE_NORMALMAP_TANGENTSPACE )\\n\\tvec3 mapN = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;\\n\\tmapN.xy *= normalScale;\\n\\tnormal = normalize( tbn * mapN );\\n#elif defined( USE_BUMPMAP )\\n\\tnormal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection );\\n#endif\",normal_pars_fragment:\"#ifndef FLAT_SHADED\\n\\tvarying vec3 vNormal;\\n\\t#ifdef USE_TANGENT\\n\\t\\tvarying vec3 vTangent;\\n\\t\\tvarying vec3 vBitangent;\\n\\t#endif\\n#endif\",normal_pars_vertex:\"#ifndef FLAT_SHADED\\n\\tvarying vec3 vNormal;\\n\\t#ifdef USE_TANGENT\\n\\t\\tvarying vec3 vTangent;\\n\\t\\tvarying vec3 vBitangent;\\n\\t#endif\\n#endif\",normal_vertex:\"#ifndef FLAT_SHADED\\n\\tvNormal = normalize( transformedNormal );\\n\\t#ifdef USE_TANGENT\\n\\t\\tvTangent = normalize( transformedTangent );\\n\\t\\tvBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\\n\\t#endif\\n#endif\",normalmap_pars_fragment:\"#ifdef USE_NORMALMAP\\n\\tuniform sampler2D normalMap;\\n\\tuniform vec2 normalScale;\\n#endif\\n#ifdef USE_NORMALMAP_OBJECTSPACE\\n\\tuniform mat3 normalMatrix;\\n#endif\\n#if ! defined ( USE_TANGENT ) && ( defined ( USE_NORMALMAP_TANGENTSPACE ) || defined ( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY ) )\\n\\tmat3 getTangentFrame( vec3 eye_pos, vec3 surf_norm, vec2 uv ) {\\n\\t\\tvec3 q0 = dFdx( eye_pos.xyz );\\n\\t\\tvec3 q1 = dFdy( eye_pos.xyz );\\n\\t\\tvec2 st0 = dFdx( uv.st );\\n\\t\\tvec2 st1 = dFdy( uv.st );\\n\\t\\tvec3 N = surf_norm;\\n\\t\\tvec3 q1perp = cross( q1, N );\\n\\t\\tvec3 q0perp = cross( N, q0 );\\n\\t\\tvec3 T = q1perp * st0.x + q0perp * st1.x;\\n\\t\\tvec3 B = q1perp * st0.y + q0perp * st1.y;\\n\\t\\tfloat det = max( dot( T, T ), dot( B, B ) );\\n\\t\\tfloat scale = ( det == 0.0 ) ? 0.0 : inversesqrt( det );\\n\\t\\treturn mat3( T * scale, B * scale, N );\\n\\t}\\n#endif\",clearcoat_normal_fragment_begin:\"#ifdef USE_CLEARCOAT\\n\\tvec3 clearcoatNormal = nonPerturbedNormal;\\n#endif\",clearcoat_normal_fragment_maps:\"#ifdef USE_CLEARCOAT_NORMALMAP\\n\\tvec3 clearcoatMapN = texture2D( clearcoatNormalMap, vClearcoatNormalMapUv ).xyz * 2.0 - 1.0;\\n\\tclearcoatMapN.xy *= clearcoatNormalScale;\\n\\tclearcoatNormal = normalize( tbn2 * clearcoatMapN );\\n#endif\",clearcoat_pars_fragment:\"#ifdef USE_CLEARCOATMAP\\n\\tuniform sampler2D clearcoatMap;\\n#endif\\n#ifdef USE_CLEARCOAT_NORMALMAP\\n\\tuniform sampler2D clearcoatNormalMap;\\n\\tuniform vec2 clearcoatNormalScale;\\n#endif\\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\\n\\tuniform sampler2D clearcoatRoughnessMap;\\n#endif\",iridescence_pars_fragment:\"#ifdef USE_IRIDESCENCEMAP\\n\\tuniform sampler2D iridescenceMap;\\n#endif\\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\\n\\tuniform sampler2D iridescenceThicknessMap;\\n#endif\",opaque_fragment:\"#ifdef OPAQUE\\ndiffuseColor.a = 1.0;\\n#endif\\n#ifdef USE_TRANSMISSION\\ndiffuseColor.a *= material.transmissionAlpha;\\n#endif\\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );\",packing:\"vec3 packNormalToRGB( const in vec3 normal ) {\\n\\treturn normalize( normal ) * 0.5 + 0.5;\\n}\\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\\n\\treturn 2.0 * rgb.xyz - 1.0;\\n}\\nconst float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.;\\nconst vec3 PackFactors = vec3( 256. * 256. * 256., 256. * 256., 256. );\\nconst vec4 UnpackFactors = UnpackDownscale / vec4( PackFactors, 1. );\\nconst float ShiftRight8 = 1. / 256.;\\nvec4 packDepthToRGBA( const in float v ) {\\n\\tvec4 r = vec4( fract( v * PackFactors ), v );\\n\\tr.yzw -= r.xyz * ShiftRight8;\\treturn r * PackUpscale;\\n}\\nfloat unpackRGBAToDepth( const in vec4 v ) {\\n\\treturn dot( v, UnpackFactors );\\n}\\nvec2 packDepthToRG( in highp float v ) {\\n\\treturn packDepthToRGBA( v ).yx;\\n}\\nfloat unpackRGToDepth( const in highp vec2 v ) {\\n\\treturn unpackRGBAToDepth( vec4( v.xy, 0.0, 0.0 ) );\\n}\\nvec4 pack2HalfToRGBA( vec2 v ) {\\n\\tvec4 r = vec4( v.x, fract( v.x * 255.0 ), v.y, fract( v.y * 255.0 ) );\\n\\treturn vec4( r.x - r.y / 255.0, r.y, r.z - r.w / 255.0, r.w );\\n}\\nvec2 unpackRGBATo2Half( vec4 v ) {\\n\\treturn vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) );\\n}\\nfloat viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {\\n\\treturn ( viewZ + near ) / ( near - far );\\n}\\nfloat orthographicDepthToViewZ( const in float depth, const in float near, const in float far ) {\\n\\treturn depth * ( near - far ) - near;\\n}\\nfloat viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {\\n\\treturn ( ( near + viewZ ) * far ) / ( ( far - near ) * viewZ );\\n}\\nfloat perspectiveDepthToViewZ( const in float depth, const in float near, const in float far ) {\\n\\treturn ( near * far ) / ( ( far - near ) * depth - far );\\n}\",premultiplied_alpha_fragment:\"#ifdef PREMULTIPLIED_ALPHA\\n\\tgl_FragColor.rgb *= gl_FragColor.a;\\n#endif\",project_vertex:\"vec4 mvPosition = vec4( transformed, 1.0 );\\n#ifdef USE_BATCHING\\n\\tmvPosition = batchingMatrix * mvPosition;\\n#endif\\n#ifdef USE_INSTANCING\\n\\tmvPosition = instanceMatrix * mvPosition;\\n#endif\\nmvPosition = modelViewMatrix * mvPosition;\\ngl_Position = projectionMatrix * mvPosition;\",dithering_fragment:\"#ifdef DITHERING\\n\\tgl_FragColor.rgb = dithering( gl_FragColor.rgb );\\n#endif\",dithering_pars_fragment:\"#ifdef DITHERING\\n\\tvec3 dithering( vec3 color ) {\\n\\t\\tfloat grid_position = rand( gl_FragCoord.xy );\\n\\t\\tvec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );\\n\\t\\tdither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );\\n\\t\\treturn color + dither_shift_RGB;\\n\\t}\\n#endif\",roughnessmap_fragment:\"float roughnessFactor = roughness;\\n#ifdef USE_ROUGHNESSMAP\\n\\tvec4 texelRoughness = texture2D( roughnessMap, vRoughnessMapUv );\\n\\troughnessFactor *= texelRoughness.g;\\n#endif\",roughnessmap_pars_fragment:\"#ifdef USE_ROUGHNESSMAP\\n\\tuniform sampler2D roughnessMap;\\n#endif\",shadowmap_pars_fragment:\"#if NUM_SPOT_LIGHT_COORDS > 0\\n\\tvarying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];\\n#endif\\n#if NUM_SPOT_LIGHT_MAPS > 0\\n\\tuniform sampler2D spotLightMap[ NUM_SPOT_LIGHT_MAPS ];\\n#endif\\n#ifdef USE_SHADOWMAP\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\n\\t\\tuniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t\\tstruct DirectionalLightShadow {\\n\\t\\t\\tfloat shadowBias;\\n\\t\\t\\tfloat shadowNormalBias;\\n\\t\\t\\tfloat shadowRadius;\\n\\t\\t\\tvec2 shadowMapSize;\\n\\t\\t};\\n\\t\\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t#endif\\n\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\n\\t\\tuniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\t\\tstruct SpotLightShadow {\\n\\t\\t\\tfloat shadowBias;\\n\\t\\t\\tfloat shadowNormalBias;\\n\\t\\t\\tfloat shadowRadius;\\n\\t\\t\\tvec2 shadowMapSize;\\n\\t\\t};\\n\\t\\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\t#endif\\n\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\n\\t\\tuniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t\\tstruct PointLightShadow {\\n\\t\\t\\tfloat shadowBias;\\n\\t\\t\\tfloat shadowNormalBias;\\n\\t\\t\\tfloat shadowRadius;\\n\\t\\t\\tvec2 shadowMapSize;\\n\\t\\t\\tfloat shadowCameraNear;\\n\\t\\t\\tfloat shadowCameraFar;\\n\\t\\t};\\n\\t\\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t#endif\\n\\tfloat texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\\n\\t\\treturn step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\\n\\t}\\n\\tvec2 texture2DDistribution( sampler2D shadow, vec2 uv ) {\\n\\t\\treturn unpackRGBATo2Half( texture2D( shadow, uv ) );\\n\\t}\\n\\tfloat VSMShadow (sampler2D shadow, vec2 uv, float compare ){\\n\\t\\tfloat occlusion = 1.0;\\n\\t\\tvec2 distribution = texture2DDistribution( shadow, uv );\\n\\t\\tfloat hard_shadow = step( compare , distribution.x );\\n\\t\\tif (hard_shadow != 1.0 ) {\\n\\t\\t\\tfloat distance = compare - distribution.x ;\\n\\t\\t\\tfloat variance = max( 0.00000, distribution.y * distribution.y );\\n\\t\\t\\tfloat softness_probability = variance / (variance + distance * distance );\\t\\t\\tsoftness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 );\\t\\t\\tocclusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 );\\n\\t\\t}\\n\\t\\treturn occlusion;\\n\\t}\\n\\tfloat getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\\n\\t\\tfloat shadow = 1.0;\\n\\t\\tshadowCoord.xyz /= shadowCoord.w;\\n\\t\\tshadowCoord.z += shadowBias;\\n\\t\\tbool inFrustum = shadowCoord.x >= 0.0 && shadowCoord.x <= 1.0 && shadowCoord.y >= 0.0 && shadowCoord.y <= 1.0;\\n\\t\\tbool frustumTest = inFrustum && shadowCoord.z <= 1.0;\\n\\t\\tif ( frustumTest ) {\\n\\t\\t#if defined( SHADOWMAP_TYPE_PCF )\\n\\t\\t\\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\\n\\t\\t\\tfloat dx0 = - texelSize.x * shadowRadius;\\n\\t\\t\\tfloat dy0 = - texelSize.y * shadowRadius;\\n\\t\\t\\tfloat dx1 = + texelSize.x * shadowRadius;\\n\\t\\t\\tfloat dy1 = + texelSize.y * shadowRadius;\\n\\t\\t\\tfloat dx2 = dx0 / 2.0;\\n\\t\\t\\tfloat dy2 = dy0 / 2.0;\\n\\t\\t\\tfloat dx3 = dx1 / 2.0;\\n\\t\\t\\tfloat dy3 = dy1 / 2.0;\\n\\t\\t\\tshadow = (\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\\n\\t\\t\\t) * ( 1.0 / 17.0 );\\n\\t\\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\\n\\t\\t\\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\\n\\t\\t\\tfloat dx = texelSize.x;\\n\\t\\t\\tfloat dy = texelSize.y;\\n\\t\\t\\tvec2 uv = shadowCoord.xy;\\n\\t\\t\\tvec2 f = fract( uv * shadowMapSize + 0.5 );\\n\\t\\t\\tuv -= f * texelSize;\\n\\t\\t\\tshadow = (\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, uv, shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) +\\n\\t\\t\\t\\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t f.x ) +\\n\\t\\t\\t\\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t f.x ) +\\n\\t\\t\\t\\tmix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t f.y ) +\\n\\t\\t\\t\\tmix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t f.y ) +\\n\\t\\t\\t\\tmix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t\\t  texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t\\t  f.x ),\\n\\t\\t\\t\\t\\t mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t\\t  texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ),\\n\\t\\t\\t\\t\\t\\t  f.x ),\\n\\t\\t\\t\\t\\t f.y )\\n\\t\\t\\t) * ( 1.0 / 9.0 );\\n\\t\\t#elif defined( SHADOWMAP_TYPE_VSM )\\n\\t\\t\\tshadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z );\\n\\t\\t#else\\n\\t\\t\\tshadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\\n\\t\\t#endif\\n\\t\\t}\\n\\t\\treturn shadow;\\n\\t}\\n\\tvec2 cubeToUV( vec3 v, float texelSizeY ) {\\n\\t\\tvec3 absV = abs( v );\\n\\t\\tfloat scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\\n\\t\\tabsV *= scaleToCube;\\n\\t\\tv *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\\n\\t\\tvec2 planar = v.xy;\\n\\t\\tfloat almostATexel = 1.5 * texelSizeY;\\n\\t\\tfloat almostOne = 1.0 - almostATexel;\\n\\t\\tif ( absV.z >= almostOne ) {\\n\\t\\t\\tif ( v.z > 0.0 )\\n\\t\\t\\t\\tplanar.x = 4.0 - v.x;\\n\\t\\t} else if ( absV.x >= almostOne ) {\\n\\t\\t\\tfloat signX = sign( v.x );\\n\\t\\t\\tplanar.x = v.z * signX + 2.0 * signX;\\n\\t\\t} else if ( absV.y >= almostOne ) {\\n\\t\\t\\tfloat signY = sign( v.y );\\n\\t\\t\\tplanar.x = v.x + 2.0 * signY + 2.0;\\n\\t\\t\\tplanar.y = v.z * signY - 2.0;\\n\\t\\t}\\n\\t\\treturn vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\\n\\t}\\n\\tfloat getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\\n\\t\\tvec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\\n\\t\\tvec3 lightToPosition = shadowCoord.xyz;\\n\\t\\tfloat dp = ( length( lightToPosition ) - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear );\\t\\tdp += shadowBias;\\n\\t\\tvec3 bd3D = normalize( lightToPosition );\\n\\t\\t#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM )\\n\\t\\t\\tvec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\\n\\t\\t\\treturn (\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +\\n\\t\\t\\t\\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )\\n\\t\\t\\t) * ( 1.0 / 9.0 );\\n\\t\\t#else\\n\\t\\t\\treturn texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\\n\\t\\t#endif\\n\\t}\\n#endif\",shadowmap_pars_vertex:\"#if NUM_SPOT_LIGHT_COORDS > 0\\n\\tuniform mat4 spotLightMatrix[ NUM_SPOT_LIGHT_COORDS ];\\n\\tvarying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];\\n#endif\\n#ifdef USE_SHADOWMAP\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\n\\t\\tuniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t\\tstruct DirectionalLightShadow {\\n\\t\\t\\tfloat shadowBias;\\n\\t\\t\\tfloat shadowNormalBias;\\n\\t\\t\\tfloat shadowRadius;\\n\\t\\t\\tvec2 shadowMapSize;\\n\\t\\t};\\n\\t\\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\\n\\t#endif\\n\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\n\\t\\tstruct SpotLightShadow {\\n\\t\\t\\tfloat shadowBias;\\n\\t\\t\\tfloat shadowNormalBias;\\n\\t\\t\\tfloat shadowRadius;\\n\\t\\t\\tvec2 shadowMapSize;\\n\\t\\t};\\n\\t\\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\\n\\t#endif\\n\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\n\\t\\tuniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t\\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t\\tstruct PointLightShadow {\\n\\t\\t\\tfloat shadowBias;\\n\\t\\t\\tfloat shadowNormalBias;\\n\\t\\t\\tfloat shadowRadius;\\n\\t\\t\\tvec2 shadowMapSize;\\n\\t\\t\\tfloat shadowCameraNear;\\n\\t\\t\\tfloat shadowCameraFar;\\n\\t\\t};\\n\\t\\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\\n\\t#endif\\n#endif\",shadowmap_vertex:\"#if ( defined( USE_SHADOWMAP ) && ( NUM_DIR_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0 ) ) || ( NUM_SPOT_LIGHT_COORDS > 0 )\\n\\tvec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\\n\\tvec4 shadowWorldPosition;\\n#endif\\n#if defined( USE_SHADOWMAP )\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\n\\t\\t#pragma unroll_loop_start\\n\\t\\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\\n\\t\\t\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 );\\n\\t\\t\\tvDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition;\\n\\t\\t}\\n\\t\\t#pragma unroll_loop_end\\n\\t#endif\\n\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\n\\t\\t#pragma unroll_loop_start\\n\\t\\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\\n\\t\\t\\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 );\\n\\t\\t\\tvPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition;\\n\\t\\t}\\n\\t\\t#pragma unroll_loop_end\\n\\t#endif\\n#endif\\n#if NUM_SPOT_LIGHT_COORDS > 0\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHT_COORDS; i ++ ) {\\n\\t\\tshadowWorldPosition = worldPosition;\\n\\t\\t#if ( defined( USE_SHADOWMAP ) && UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\\n\\t\\t\\tshadowWorldPosition.xyz += shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias;\\n\\t\\t#endif\\n\\t\\tvSpotLightCoord[ i ] = spotLightMatrix[ i ] * shadowWorldPosition;\\n\\t}\\n\\t#pragma unroll_loop_end\\n#endif\",shadowmask_pars_fragment:\"float getShadowMask() {\\n\\tfloat shadow = 1.0;\\n\\t#ifdef USE_SHADOWMAP\\n\\t#if NUM_DIR_LIGHT_SHADOWS > 0\\n\\tDirectionalLightShadow directionalLight;\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\\n\\t\\tdirectionalLight = directionalLightShadows[ i ];\\n\\t\\tshadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\t#endif\\n\\t#if NUM_SPOT_LIGHT_SHADOWS > 0\\n\\tSpotLightShadow spotLight;\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\\n\\t\\tspotLight = spotLightShadows[ i ];\\n\\t\\tshadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\t#endif\\n\\t#if NUM_POINT_LIGHT_SHADOWS > 0\\n\\tPointLightShadow pointLight;\\n\\t#pragma unroll_loop_start\\n\\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\\n\\t\\tpointLight = pointLightShadows[ i ];\\n\\t\\tshadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\\n\\t}\\n\\t#pragma unroll_loop_end\\n\\t#endif\\n\\t#endif\\n\\treturn shadow;\\n}\",skinbase_vertex:\"#ifdef USE_SKINNING\\n\\tmat4 boneMatX = getBoneMatrix( skinIndex.x );\\n\\tmat4 boneMatY = getBoneMatrix( skinIndex.y );\\n\\tmat4 boneMatZ = getBoneMatrix( skinIndex.z );\\n\\tmat4 boneMatW = getBoneMatrix( skinIndex.w );\\n#endif\",skinning_pars_vertex:\"#ifdef USE_SKINNING\\n\\tuniform mat4 bindMatrix;\\n\\tuniform mat4 bindMatrixInverse;\\n\\tuniform highp sampler2D boneTexture;\\n\\tmat4 getBoneMatrix( const in float i ) {\\n\\t\\tint size = textureSize( boneTexture, 0 ).x;\\n\\t\\tint j = int( i ) * 4;\\n\\t\\tint x = j % size;\\n\\t\\tint y = j / size;\\n\\t\\tvec4 v1 = texelFetch( boneTexture, ivec2( x, y ), 0 );\\n\\t\\tvec4 v2 = texelFetch( boneTexture, ivec2( x + 1, y ), 0 );\\n\\t\\tvec4 v3 = texelFetch( boneTexture, ivec2( x + 2, y ), 0 );\\n\\t\\tvec4 v4 = texelFetch( boneTexture, ivec2( x + 3, y ), 0 );\\n\\t\\treturn mat4( v1, v2, v3, v4 );\\n\\t}\\n#endif\",skinning_vertex:\"#ifdef USE_SKINNING\\n\\tvec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\\n\\tvec4 skinned = vec4( 0.0 );\\n\\tskinned += boneMatX * skinVertex * skinWeight.x;\\n\\tskinned += boneMatY * skinVertex * skinWeight.y;\\n\\tskinned += boneMatZ * skinVertex * skinWeight.z;\\n\\tskinned += boneMatW * skinVertex * skinWeight.w;\\n\\ttransformed = ( bindMatrixInverse * skinned ).xyz;\\n#endif\",skinnormal_vertex:\"#ifdef USE_SKINNING\\n\\tmat4 skinMatrix = mat4( 0.0 );\\n\\tskinMatrix += skinWeight.x * boneMatX;\\n\\tskinMatrix += skinWeight.y * boneMatY;\\n\\tskinMatrix += skinWeight.z * boneMatZ;\\n\\tskinMatrix += skinWeight.w * boneMatW;\\n\\tskinMatrix = bindMatrixInverse * skinMatrix * bindMatrix;\\n\\tobjectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\\n\\t#ifdef USE_TANGENT\\n\\t\\tobjectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz;\\n\\t#endif\\n#endif\",specularmap_fragment:\"float specularStrength;\\n#ifdef USE_SPECULARMAP\\n\\tvec4 texelSpecular = texture2D( specularMap, vSpecularMapUv );\\n\\tspecularStrength = texelSpecular.r;\\n#else\\n\\tspecularStrength = 1.0;\\n#endif\",specularmap_pars_fragment:\"#ifdef USE_SPECULARMAP\\n\\tuniform sampler2D specularMap;\\n#endif\",tonemapping_fragment:\"#if defined( TONE_MAPPING )\\n\\tgl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\\n#endif\",tonemapping_pars_fragment:\"#ifndef saturate\\n#define saturate( a ) clamp( a, 0.0, 1.0 )\\n#endif\\nuniform float toneMappingExposure;\\nvec3 LinearToneMapping( vec3 color ) {\\n\\treturn saturate( toneMappingExposure * color );\\n}\\nvec3 ReinhardToneMapping( vec3 color ) {\\n\\tcolor *= toneMappingExposure;\\n\\treturn saturate( color / ( vec3( 1.0 ) + color ) );\\n}\\nvec3 OptimizedCineonToneMapping( vec3 color ) {\\n\\tcolor *= toneMappingExposure;\\n\\tcolor = max( vec3( 0.0 ), color - 0.004 );\\n\\treturn pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );\\n}\\nvec3 RRTAndODTFit( vec3 v ) {\\n\\tvec3 a = v * ( v + 0.0245786 ) - 0.000090537;\\n\\tvec3 b = v * ( 0.983729 * v + 0.4329510 ) + 0.238081;\\n\\treturn a / b;\\n}\\nvec3 ACESFilmicToneMapping( vec3 color ) {\\n\\tconst mat3 ACESInputMat = mat3(\\n\\t\\tvec3( 0.59719, 0.07600, 0.02840 ),\\t\\tvec3( 0.35458, 0.90834, 0.13383 ),\\n\\t\\tvec3( 0.04823, 0.01566, 0.83777 )\\n\\t);\\n\\tconst mat3 ACESOutputMat = mat3(\\n\\t\\tvec3(  1.60475, -0.10208, -0.00327 ),\\t\\tvec3( -0.53108,  1.10813, -0.07276 ),\\n\\t\\tvec3( -0.07367, -0.00605,  1.07602 )\\n\\t);\\n\\tcolor *= toneMappingExposure / 0.6;\\n\\tcolor = ACESInputMat * color;\\n\\tcolor = RRTAndODTFit( color );\\n\\tcolor = ACESOutputMat * color;\\n\\treturn saturate( color );\\n}\\nconst mat3 LINEAR_REC2020_TO_LINEAR_SRGB = mat3(\\n\\tvec3( 1.6605, - 0.1246, - 0.0182 ),\\n\\tvec3( - 0.5876, 1.1329, - 0.1006 ),\\n\\tvec3( - 0.0728, - 0.0083, 1.1187 )\\n);\\nconst mat3 LINEAR_SRGB_TO_LINEAR_REC2020 = mat3(\\n\\tvec3( 0.6274, 0.0691, 0.0164 ),\\n\\tvec3( 0.3293, 0.9195, 0.0880 ),\\n\\tvec3( 0.0433, 0.0113, 0.8956 )\\n);\\nvec3 agxDefaultContrastApprox( vec3 x ) {\\n\\tvec3 x2 = x * x;\\n\\tvec3 x4 = x2 * x2;\\n\\treturn + 15.5 * x4 * x2\\n\\t\\t- 40.14 * x4 * x\\n\\t\\t+ 31.96 * x4\\n\\t\\t- 6.868 * x2 * x\\n\\t\\t+ 0.4298 * x2\\n\\t\\t+ 0.1191 * x\\n\\t\\t- 0.00232;\\n}\\nvec3 AgXToneMapping( vec3 color ) {\\n\\tconst mat3 AgXInsetMatrix = mat3(\\n\\t\\tvec3( 0.856627153315983, 0.137318972929847, 0.11189821299995 ),\\n\\t\\tvec3( 0.0951212405381588, 0.761241990602591, 0.0767994186031903 ),\\n\\t\\tvec3( 0.0482516061458583, 0.101439036467562, 0.811302368396859 )\\n\\t);\\n\\tconst mat3 AgXOutsetMatrix = mat3(\\n\\t\\tvec3( 1.1271005818144368, - 0.1413297634984383, - 0.14132976349843826 ),\\n\\t\\tvec3( - 0.11060664309660323, 1.157823702216272, - 0.11060664309660294 ),\\n\\t\\tvec3( - 0.016493938717834573, - 0.016493938717834257, 1.2519364065950405 )\\n\\t);\\n\\tconst float AgxMinEv = - 12.47393;\\tconst float AgxMaxEv = 4.026069;\\n\\tcolor = LINEAR_SRGB_TO_LINEAR_REC2020 * color;\\n\\tcolor *= toneMappingExposure;\\n\\tcolor = AgXInsetMatrix * color;\\n\\tcolor = max( color, 1e-10 );\\tcolor = log2( color );\\n\\tcolor = ( color - AgxMinEv ) / ( AgxMaxEv - AgxMinEv );\\n\\tcolor = clamp( color, 0.0, 1.0 );\\n\\tcolor = agxDefaultContrastApprox( color );\\n\\tcolor = AgXOutsetMatrix * color;\\n\\tcolor = pow( max( vec3( 0.0 ), color ), vec3( 2.2 ) );\\n\\tcolor = LINEAR_REC2020_TO_LINEAR_SRGB * color;\\n\\treturn color;\\n}\\nvec3 CustomToneMapping( vec3 color ) { return color; }\",transmission_fragment:\"#ifdef USE_TRANSMISSION\\n\\tmaterial.transmission = transmission;\\n\\tmaterial.transmissionAlpha = 1.0;\\n\\tmaterial.thickness = thickness;\\n\\tmaterial.attenuationDistance = attenuationDistance;\\n\\tmaterial.attenuationColor = attenuationColor;\\n\\t#ifdef USE_TRANSMISSIONMAP\\n\\t\\tmaterial.transmission *= texture2D( transmissionMap, vTransmissionMapUv ).r;\\n\\t#endif\\n\\t#ifdef USE_THICKNESSMAP\\n\\t\\tmaterial.thickness *= texture2D( thicknessMap, vThicknessMapUv ).g;\\n\\t#endif\\n\\tvec3 pos = vWorldPosition;\\n\\tvec3 v = normalize( cameraPosition - pos );\\n\\tvec3 n = inverseTransformDirection( normal, viewMatrix );\\n\\tvec4 transmitted = getIBLVolumeRefraction(\\n\\t\\tn, v, material.roughness, material.diffuseColor, material.specularColor, material.specularF90,\\n\\t\\tpos, modelMatrix, viewMatrix, projectionMatrix, material.ior, material.thickness,\\n\\t\\tmaterial.attenuationColor, material.attenuationDistance );\\n\\tmaterial.transmissionAlpha = mix( material.transmissionAlpha, transmitted.a, material.transmission );\\n\\ttotalDiffuse = mix( totalDiffuse, transmitted.rgb, material.transmission );\\n#endif\",transmission_pars_fragment:\"#ifdef USE_TRANSMISSION\\n\\tuniform float transmission;\\n\\tuniform float thickness;\\n\\tuniform float attenuationDistance;\\n\\tuniform vec3 attenuationColor;\\n\\t#ifdef USE_TRANSMISSIONMAP\\n\\t\\tuniform sampler2D transmissionMap;\\n\\t#endif\\n\\t#ifdef USE_THICKNESSMAP\\n\\t\\tuniform sampler2D thicknessMap;\\n\\t#endif\\n\\tuniform vec2 transmissionSamplerSize;\\n\\tuniform sampler2D transmissionSamplerMap;\\n\\tuniform mat4 modelMatrix;\\n\\tuniform mat4 projectionMatrix;\\n\\tvarying vec3 vWorldPosition;\\n\\tfloat w0( float a ) {\\n\\t\\treturn ( 1.0 / 6.0 ) * ( a * ( a * ( - a + 3.0 ) - 3.0 ) + 1.0 );\\n\\t}\\n\\tfloat w1( float a ) {\\n\\t\\treturn ( 1.0 / 6.0 ) * ( a *  a * ( 3.0 * a - 6.0 ) + 4.0 );\\n\\t}\\n\\tfloat w2( float a ){\\n\\t\\treturn ( 1.0 / 6.0 ) * ( a * ( a * ( - 3.0 * a + 3.0 ) + 3.0 ) + 1.0 );\\n\\t}\\n\\tfloat w3( float a ) {\\n\\t\\treturn ( 1.0 / 6.0 ) * ( a * a * a );\\n\\t}\\n\\tfloat g0( float a ) {\\n\\t\\treturn w0( a ) + w1( a );\\n\\t}\\n\\tfloat g1( float a ) {\\n\\t\\treturn w2( a ) + w3( a );\\n\\t}\\n\\tfloat h0( float a ) {\\n\\t\\treturn - 1.0 + w1( a ) / ( w0( a ) + w1( a ) );\\n\\t}\\n\\tfloat h1( float a ) {\\n\\t\\treturn 1.0 + w3( a ) / ( w2( a ) + w3( a ) );\\n\\t}\\n\\tvec4 bicubic( sampler2D tex, vec2 uv, vec4 texelSize, float lod ) {\\n\\t\\tuv = uv * texelSize.zw + 0.5;\\n\\t\\tvec2 iuv = floor( uv );\\n\\t\\tvec2 fuv = fract( uv );\\n\\t\\tfloat g0x = g0( fuv.x );\\n\\t\\tfloat g1x = g1( fuv.x );\\n\\t\\tfloat h0x = h0( fuv.x );\\n\\t\\tfloat h1x = h1( fuv.x );\\n\\t\\tfloat h0y = h0( fuv.y );\\n\\t\\tfloat h1y = h1( fuv.y );\\n\\t\\tvec2 p0 = ( vec2( iuv.x + h0x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;\\n\\t\\tvec2 p1 = ( vec2( iuv.x + h1x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;\\n\\t\\tvec2 p2 = ( vec2( iuv.x + h0x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;\\n\\t\\tvec2 p3 = ( vec2( iuv.x + h1x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;\\n\\t\\treturn g0( fuv.y ) * ( g0x * textureLod( tex, p0, lod ) + g1x * textureLod( tex, p1, lod ) ) +\\n\\t\\t\\tg1( fuv.y ) * ( g0x * textureLod( tex, p2, lod ) + g1x * textureLod( tex, p3, lod ) );\\n\\t}\\n\\tvec4 textureBicubic( sampler2D sampler, vec2 uv, float lod ) {\\n\\t\\tvec2 fLodSize = vec2( textureSize( sampler, int( lod ) ) );\\n\\t\\tvec2 cLodSize = vec2( textureSize( sampler, int( lod + 1.0 ) ) );\\n\\t\\tvec2 fLodSizeInv = 1.0 / fLodSize;\\n\\t\\tvec2 cLodSizeInv = 1.0 / cLodSize;\\n\\t\\tvec4 fSample = bicubic( sampler, uv, vec4( fLodSizeInv, fLodSize ), floor( lod ) );\\n\\t\\tvec4 cSample = bicubic( sampler, uv, vec4( cLodSizeInv, cLodSize ), ceil( lod ) );\\n\\t\\treturn mix( fSample, cSample, fract( lod ) );\\n\\t}\\n\\tvec3 getVolumeTransmissionRay( const in vec3 n, const in vec3 v, const in float thickness, const in float ior, const in mat4 modelMatrix ) {\\n\\t\\tvec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior );\\n\\t\\tvec3 modelScale;\\n\\t\\tmodelScale.x = length( vec3( modelMatrix[ 0 ].xyz ) );\\n\\t\\tmodelScale.y = length( vec3( modelMatrix[ 1 ].xyz ) );\\n\\t\\tmodelScale.z = length( vec3( modelMatrix[ 2 ].xyz ) );\\n\\t\\treturn normalize( refractionVector ) * thickness * modelScale;\\n\\t}\\n\\tfloat applyIorToRoughness( const in float roughness, const in float ior ) {\\n\\t\\treturn roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 );\\n\\t}\\n\\tvec4 getTransmissionSample( const in vec2 fragCoord, const in float roughness, const in float ior ) {\\n\\t\\tfloat lod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior );\\n\\t\\treturn textureBicubic( transmissionSamplerMap, fragCoord.xy, lod );\\n\\t}\\n\\tvec3 volumeAttenuation( const in float transmissionDistance, const in vec3 attenuationColor, const in float attenuationDistance ) {\\n\\t\\tif ( isinf( attenuationDistance ) ) {\\n\\t\\t\\treturn vec3( 1.0 );\\n\\t\\t} else {\\n\\t\\t\\tvec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance;\\n\\t\\t\\tvec3 transmittance = exp( - attenuationCoefficient * transmissionDistance );\\t\\t\\treturn transmittance;\\n\\t\\t}\\n\\t}\\n\\tvec4 getIBLVolumeRefraction( const in vec3 n, const in vec3 v, const in float roughness, const in vec3 diffuseColor,\\n\\t\\tconst in vec3 specularColor, const in float specularF90, const in vec3 position, const in mat4 modelMatrix,\\n\\t\\tconst in mat4 viewMatrix, const in mat4 projMatrix, const in float ior, const in float thickness,\\n\\t\\tconst in vec3 attenuationColor, const in float attenuationDistance ) {\\n\\t\\tvec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix );\\n\\t\\tvec3 refractedRayExit = position + transmissionRay;\\n\\t\\tvec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );\\n\\t\\tvec2 refractionCoords = ndcPos.xy / ndcPos.w;\\n\\t\\trefractionCoords += 1.0;\\n\\t\\trefractionCoords /= 2.0;\\n\\t\\tvec4 transmittedLight = getTransmissionSample( refractionCoords, roughness, ior );\\n\\t\\tvec3 transmittance = diffuseColor * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance );\\n\\t\\tvec3 attenuatedColor = transmittance * transmittedLight.rgb;\\n\\t\\tvec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness );\\n\\t\\tfloat transmittanceFactor = ( transmittance.r + transmittance.g + transmittance.b ) / 3.0;\\n\\t\\treturn vec4( ( 1.0 - F ) * attenuatedColor, 1.0 - ( 1.0 - transmittedLight.a ) * transmittanceFactor );\\n\\t}\\n#endif\",uv_pars_fragment:\"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\\n\\tvarying vec2 vUv;\\n#endif\\n#ifdef USE_MAP\\n\\tvarying vec2 vMapUv;\\n#endif\\n#ifdef USE_ALPHAMAP\\n\\tvarying vec2 vAlphaMapUv;\\n#endif\\n#ifdef USE_LIGHTMAP\\n\\tvarying vec2 vLightMapUv;\\n#endif\\n#ifdef USE_AOMAP\\n\\tvarying vec2 vAoMapUv;\\n#endif\\n#ifdef USE_BUMPMAP\\n\\tvarying vec2 vBumpMapUv;\\n#endif\\n#ifdef USE_NORMALMAP\\n\\tvarying vec2 vNormalMapUv;\\n#endif\\n#ifdef USE_EMISSIVEMAP\\n\\tvarying vec2 vEmissiveMapUv;\\n#endif\\n#ifdef USE_METALNESSMAP\\n\\tvarying vec2 vMetalnessMapUv;\\n#endif\\n#ifdef USE_ROUGHNESSMAP\\n\\tvarying vec2 vRoughnessMapUv;\\n#endif\\n#ifdef USE_ANISOTROPYMAP\\n\\tvarying vec2 vAnisotropyMapUv;\\n#endif\\n#ifdef USE_CLEARCOATMAP\\n\\tvarying vec2 vClearcoatMapUv;\\n#endif\\n#ifdef USE_CLEARCOAT_NORMALMAP\\n\\tvarying vec2 vClearcoatNormalMapUv;\\n#endif\\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\\n\\tvarying vec2 vClearcoatRoughnessMapUv;\\n#endif\\n#ifdef USE_IRIDESCENCEMAP\\n\\tvarying vec2 vIridescenceMapUv;\\n#endif\\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\\n\\tvarying vec2 vIridescenceThicknessMapUv;\\n#endif\\n#ifdef USE_SHEEN_COLORMAP\\n\\tvarying vec2 vSheenColorMapUv;\\n#endif\\n#ifdef USE_SHEEN_ROUGHNESSMAP\\n\\tvarying vec2 vSheenRoughnessMapUv;\\n#endif\\n#ifdef USE_SPECULARMAP\\n\\tvarying vec2 vSpecularMapUv;\\n#endif\\n#ifdef USE_SPECULAR_COLORMAP\\n\\tvarying vec2 vSpecularColorMapUv;\\n#endif\\n#ifdef USE_SPECULAR_INTENSITYMAP\\n\\tvarying vec2 vSpecularIntensityMapUv;\\n#endif\\n#ifdef USE_TRANSMISSIONMAP\\n\\tuniform mat3 transmissionMapTransform;\\n\\tvarying vec2 vTransmissionMapUv;\\n#endif\\n#ifdef USE_THICKNESSMAP\\n\\tuniform mat3 thicknessMapTransform;\\n\\tvarying vec2 vThicknessMapUv;\\n#endif\",uv_pars_vertex:\"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\\n\\tvarying vec2 vUv;\\n#endif\\n#ifdef USE_MAP\\n\\tuniform mat3 mapTransform;\\n\\tvarying vec2 vMapUv;\\n#endif\\n#ifdef USE_ALPHAMAP\\n\\tuniform mat3 alphaMapTransform;\\n\\tvarying vec2 vAlphaMapUv;\\n#endif\\n#ifdef USE_LIGHTMAP\\n\\tuniform mat3 lightMapTransform;\\n\\tvarying vec2 vLightMapUv;\\n#endif\\n#ifdef USE_AOMAP\\n\\tuniform mat3 aoMapTransform;\\n\\tvarying vec2 vAoMapUv;\\n#endif\\n#ifdef USE_BUMPMAP\\n\\tuniform mat3 bumpMapTransform;\\n\\tvarying vec2 vBumpMapUv;\\n#endif\\n#ifdef USE_NORMALMAP\\n\\tuniform mat3 normalMapTransform;\\n\\tvarying vec2 vNormalMapUv;\\n#endif\\n#ifdef USE_DISPLACEMENTMAP\\n\\tuniform mat3 displacementMapTransform;\\n\\tvarying vec2 vDisplacementMapUv;\\n#endif\\n#ifdef USE_EMISSIVEMAP\\n\\tuniform mat3 emissiveMapTransform;\\n\\tvarying vec2 vEmissiveMapUv;\\n#endif\\n#ifdef USE_METALNESSMAP\\n\\tuniform mat3 metalnessMapTransform;\\n\\tvarying vec2 vMetalnessMapUv;\\n#endif\\n#ifdef USE_ROUGHNESSMAP\\n\\tuniform mat3 roughnessMapTransform;\\n\\tvarying vec2 vRoughnessMapUv;\\n#endif\\n#ifdef USE_ANISOTROPYMAP\\n\\tuniform mat3 anisotropyMapTransform;\\n\\tvarying vec2 vAnisotropyMapUv;\\n#endif\\n#ifdef USE_CLEARCOATMAP\\n\\tuniform mat3 clearcoatMapTransform;\\n\\tvarying vec2 vClearcoatMapUv;\\n#endif\\n#ifdef USE_CLEARCOAT_NORMALMAP\\n\\tuniform mat3 clearcoatNormalMapTransform;\\n\\tvarying vec2 vClearcoatNormalMapUv;\\n#endif\\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\\n\\tuniform mat3 clearcoatRoughnessMapTransform;\\n\\tvarying vec2 vClearcoatRoughnessMapUv;\\n#endif\\n#ifdef USE_SHEEN_COLORMAP\\n\\tuniform mat3 sheenColorMapTransform;\\n\\tvarying vec2 vSheenColorMapUv;\\n#endif\\n#ifdef USE_SHEEN_ROUGHNESSMAP\\n\\tuniform mat3 sheenRoughnessMapTransform;\\n\\tvarying vec2 vSheenRoughnessMapUv;\\n#endif\\n#ifdef USE_IRIDESCENCEMAP\\n\\tuniform mat3 iridescenceMapTransform;\\n\\tvarying vec2 vIridescenceMapUv;\\n#endif\\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\\n\\tuniform mat3 iridescenceThicknessMapTransform;\\n\\tvarying vec2 vIridescenceThicknessMapUv;\\n#endif\\n#ifdef USE_SPECULARMAP\\n\\tuniform mat3 specularMapTransform;\\n\\tvarying vec2 vSpecularMapUv;\\n#endif\\n#ifdef USE_SPECULAR_COLORMAP\\n\\tuniform mat3 specularColorMapTransform;\\n\\tvarying vec2 vSpecularColorMapUv;\\n#endif\\n#ifdef USE_SPECULAR_INTENSITYMAP\\n\\tuniform mat3 specularIntensityMapTransform;\\n\\tvarying vec2 vSpecularIntensityMapUv;\\n#endif\\n#ifdef USE_TRANSMISSIONMAP\\n\\tuniform mat3 transmissionMapTransform;\\n\\tvarying vec2 vTransmissionMapUv;\\n#endif\\n#ifdef USE_THICKNESSMAP\\n\\tuniform mat3 thicknessMapTransform;\\n\\tvarying vec2 vThicknessMapUv;\\n#endif\",uv_vertex:\"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\\n\\tvUv = vec3( uv, 1 ).xy;\\n#endif\\n#ifdef USE_MAP\\n\\tvMapUv = ( mapTransform * vec3( MAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_ALPHAMAP\\n\\tvAlphaMapUv = ( alphaMapTransform * vec3( ALPHAMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_LIGHTMAP\\n\\tvLightMapUv = ( lightMapTransform * vec3( LIGHTMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_AOMAP\\n\\tvAoMapUv = ( aoMapTransform * vec3( AOMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_BUMPMAP\\n\\tvBumpMapUv = ( bumpMapTransform * vec3( BUMPMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_NORMALMAP\\n\\tvNormalMapUv = ( normalMapTransform * vec3( NORMALMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_DISPLACEMENTMAP\\n\\tvDisplacementMapUv = ( displacementMapTransform * vec3( DISPLACEMENTMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_EMISSIVEMAP\\n\\tvEmissiveMapUv = ( emissiveMapTransform * vec3( EMISSIVEMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_METALNESSMAP\\n\\tvMetalnessMapUv = ( metalnessMapTransform * vec3( METALNESSMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_ROUGHNESSMAP\\n\\tvRoughnessMapUv = ( roughnessMapTransform * vec3( ROUGHNESSMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_ANISOTROPYMAP\\n\\tvAnisotropyMapUv = ( anisotropyMapTransform * vec3( ANISOTROPYMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_CLEARCOATMAP\\n\\tvClearcoatMapUv = ( clearcoatMapTransform * vec3( CLEARCOATMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_CLEARCOAT_NORMALMAP\\n\\tvClearcoatNormalMapUv = ( clearcoatNormalMapTransform * vec3( CLEARCOAT_NORMALMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\\n\\tvClearcoatRoughnessMapUv = ( clearcoatRoughnessMapTransform * vec3( CLEARCOAT_ROUGHNESSMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_IRIDESCENCEMAP\\n\\tvIridescenceMapUv = ( iridescenceMapTransform * vec3( IRIDESCENCEMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\\n\\tvIridescenceThicknessMapUv = ( iridescenceThicknessMapTransform * vec3( IRIDESCENCE_THICKNESSMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_SHEEN_COLORMAP\\n\\tvSheenColorMapUv = ( sheenColorMapTransform * vec3( SHEEN_COLORMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_SHEEN_ROUGHNESSMAP\\n\\tvSheenRoughnessMapUv = ( sheenRoughnessMapTransform * vec3( SHEEN_ROUGHNESSMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_SPECULARMAP\\n\\tvSpecularMapUv = ( specularMapTransform * vec3( SPECULARMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_SPECULAR_COLORMAP\\n\\tvSpecularColorMapUv = ( specularColorMapTransform * vec3( SPECULAR_COLORMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_SPECULAR_INTENSITYMAP\\n\\tvSpecularIntensityMapUv = ( specularIntensityMapTransform * vec3( SPECULAR_INTENSITYMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_TRANSMISSIONMAP\\n\\tvTransmissionMapUv = ( transmissionMapTransform * vec3( TRANSMISSIONMAP_UV, 1 ) ).xy;\\n#endif\\n#ifdef USE_THICKNESSMAP\\n\\tvThicknessMapUv = ( thicknessMapTransform * vec3( THICKNESSMAP_UV, 1 ) ).xy;\\n#endif\",worldpos_vertex:\"#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION ) || NUM_SPOT_LIGHT_COORDS > 0\\n\\tvec4 worldPosition = vec4( transformed, 1.0 );\\n\\t#ifdef USE_BATCHING\\n\\t\\tworldPosition = batchingMatrix * worldPosition;\\n\\t#endif\\n\\t#ifdef USE_INSTANCING\\n\\t\\tworldPosition = instanceMatrix * worldPosition;\\n\\t#endif\\n\\tworldPosition = modelMatrix * worldPosition;\\n#endif\",background_vert:\"varying vec2 vUv;\\nuniform mat3 uvTransform;\\nvoid main() {\\n\\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\\n\\tgl_Position = vec4( position.xy, 1.0, 1.0 );\\n}\",background_frag:\"uniform sampler2D t2D;\\nuniform float backgroundIntensity;\\nvarying vec2 vUv;\\nvoid main() {\\n\\tvec4 texColor = texture2D( t2D, vUv );\\n\\t#ifdef DECODE_VIDEO_TEXTURE\\n\\t\\ttexColor = vec4( mix( pow( texColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), texColor.rgb * 0.0773993808, vec3( lessThanEqual( texColor.rgb, vec3( 0.04045 ) ) ) ), texColor.w );\\n\\t#endif\\n\\ttexColor.rgb *= backgroundIntensity;\\n\\tgl_FragColor = texColor;\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n}\",backgroundCube_vert:\"varying vec3 vWorldDirection;\\n#include <common>\\nvoid main() {\\n\\tvWorldDirection = transformDirection( position, modelMatrix );\\n\\t#include <begin_vertex>\\n\\t#include <project_vertex>\\n\\tgl_Position.z = gl_Position.w;\\n}\",backgroundCube_frag:\"#ifdef ENVMAP_TYPE_CUBE\\n\\tuniform samplerCube envMap;\\n#elif defined( ENVMAP_TYPE_CUBE_UV )\\n\\tuniform sampler2D envMap;\\n#endif\\nuniform float flipEnvMap;\\nuniform float backgroundBlurriness;\\nuniform float backgroundIntensity;\\nvarying vec3 vWorldDirection;\\n#include <cube_uv_reflection_fragment>\\nvoid main() {\\n\\t#ifdef ENVMAP_TYPE_CUBE\\n\\t\\tvec4 texColor = textureCube( envMap, vec3( flipEnvMap * vWorldDirection.x, vWorldDirection.yz ) );\\n\\t#elif defined( ENVMAP_TYPE_CUBE_UV )\\n\\t\\tvec4 texColor = textureCubeUV( envMap, vWorldDirection, backgroundBlurriness );\\n\\t#else\\n\\t\\tvec4 texColor = vec4( 0.0, 0.0, 0.0, 1.0 );\\n\\t#endif\\n\\ttexColor.rgb *= backgroundIntensity;\\n\\tgl_FragColor = texColor;\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n}\",cube_vert:\"varying vec3 vWorldDirection;\\n#include <common>\\nvoid main() {\\n\\tvWorldDirection = transformDirection( position, modelMatrix );\\n\\t#include <begin_vertex>\\n\\t#include <project_vertex>\\n\\tgl_Position.z = gl_Position.w;\\n}\",cube_frag:\"uniform samplerCube tCube;\\nuniform float tFlip;\\nuniform float opacity;\\nvarying vec3 vWorldDirection;\\nvoid main() {\\n\\tvec4 texColor = textureCube( tCube, vec3( tFlip * vWorldDirection.x, vWorldDirection.yz ) );\\n\\tgl_FragColor = texColor;\\n\\tgl_FragColor.a *= opacity;\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n}\",depth_vert:\"#include <common>\\n#include <batching_pars_vertex>\\n#include <uv_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvarying vec2 vHighPrecisionZW;\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <batching_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#ifdef USE_DISPLACEMENTMAP\\n\\t\\t#include <beginnormal_vertex>\\n\\t\\t#include <morphnormal_vertex>\\n\\t\\t#include <skinnormal_vertex>\\n\\t#endif\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\tvHighPrecisionZW = gl_Position.zw;\\n}\",depth_frag:\"#if DEPTH_PACKING == 3200\\n\\tuniform float opacity;\\n#endif\\n#include <common>\\n#include <packing>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <alphahash_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvarying vec2 vHighPrecisionZW;\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( 1.0 );\\n\\t#if DEPTH_PACKING == 3200\\n\\t\\tdiffuseColor.a = opacity;\\n\\t#endif\\n\\t#include <map_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <alphahash_fragment>\\n\\t#include <logdepthbuf_fragment>\\n\\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\\n\\t#if DEPTH_PACKING == 3200\\n\\t\\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );\\n\\t#elif DEPTH_PACKING == 3201\\n\\t\\tgl_FragColor = packDepthToRGBA( fragCoordZ );\\n\\t#endif\\n}\",distanceRGBA_vert:\"#define DISTANCE\\nvarying vec3 vWorldPosition;\\n#include <common>\\n#include <batching_pars_vertex>\\n#include <uv_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <batching_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#ifdef USE_DISPLACEMENTMAP\\n\\t\\t#include <beginnormal_vertex>\\n\\t\\t#include <morphnormal_vertex>\\n\\t\\t#include <skinnormal_vertex>\\n\\t#endif\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <worldpos_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\tvWorldPosition = worldPosition.xyz;\\n}\",distanceRGBA_frag:\"#define DISTANCE\\nuniform vec3 referencePosition;\\nuniform float nearDistance;\\nuniform float farDistance;\\nvarying vec3 vWorldPosition;\\n#include <common>\\n#include <packing>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <alphahash_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main () {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( 1.0 );\\n\\t#include <map_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <alphahash_fragment>\\n\\tfloat dist = length( vWorldPosition - referencePosition );\\n\\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\\n\\tdist = saturate( dist );\\n\\tgl_FragColor = packDepthToRGBA( dist );\\n}\",equirect_vert:\"varying vec3 vWorldDirection;\\n#include <common>\\nvoid main() {\\n\\tvWorldDirection = transformDirection( position, modelMatrix );\\n\\t#include <begin_vertex>\\n\\t#include <project_vertex>\\n}\",equirect_frag:\"uniform sampler2D tEquirect;\\nvarying vec3 vWorldDirection;\\n#include <common>\\nvoid main() {\\n\\tvec3 direction = normalize( vWorldDirection );\\n\\tvec2 sampleUV = equirectUv( direction );\\n\\tgl_FragColor = texture2D( tEquirect, sampleUV );\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n}\",linedashed_vert:\"uniform float scale;\\nattribute float lineDistance;\\nvarying float vLineDistance;\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\tvLineDistance = scale * lineDistance;\\n\\t#include <uv_vertex>\\n\\t#include <color_vertex>\\n\\t#include <morphcolor_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <fog_vertex>\\n}\",linedashed_frag:\"uniform vec3 diffuse;\\nuniform float opacity;\\nuniform float dashSize;\\nuniform float totalSize;\\nvarying float vLineDistance;\\n#include <common>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tif ( mod( vLineDistance, totalSize ) > dashSize ) {\\n\\t\\tdiscard;\\n\\t}\\n\\tvec3 outgoingLight = vec3( 0.0 );\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <color_fragment>\\n\\toutgoingLight = diffuseColor.rgb;\\n\\t#include <opaque_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n}\",meshbasic_vert:\"#include <common>\\n#include <batching_pars_vertex>\\n#include <uv_pars_vertex>\\n#include <envmap_pars_vertex>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <color_vertex>\\n\\t#include <morphcolor_vertex>\\n\\t#include <batching_vertex>\\n\\t#if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )\\n\\t\\t#include <beginnormal_vertex>\\n\\t\\t#include <morphnormal_vertex>\\n\\t\\t#include <skinbase_vertex>\\n\\t\\t#include <skinnormal_vertex>\\n\\t\\t#include <defaultnormal_vertex>\\n\\t#endif\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <worldpos_vertex>\\n\\t#include <envmap_vertex>\\n\\t#include <fog_vertex>\\n}\",meshbasic_frag:\"uniform vec3 diffuse;\\nuniform float opacity;\\n#ifndef FLAT_SHADED\\n\\tvarying vec3 vNormal;\\n#endif\\n#include <common>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <alphahash_pars_fragment>\\n#include <aomap_pars_fragment>\\n#include <lightmap_pars_fragment>\\n#include <envmap_common_pars_fragment>\\n#include <envmap_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <specularmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <alphahash_fragment>\\n\\t#include <specularmap_fragment>\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\t#ifdef USE_LIGHTMAP\\n\\t\\tvec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\\n\\t\\treflectedLight.indirectDiffuse += lightMapTexel.rgb * lightMapIntensity * RECIPROCAL_PI;\\n\\t#else\\n\\t\\treflectedLight.indirectDiffuse += vec3( 1.0 );\\n\\t#endif\\n\\t#include <aomap_fragment>\\n\\treflectedLight.indirectDiffuse *= diffuseColor.rgb;\\n\\tvec3 outgoingLight = reflectedLight.indirectDiffuse;\\n\\t#include <envmap_fragment>\\n\\t#include <opaque_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n}\",meshlambert_vert:\"#define LAMBERT\\nvarying vec3 vViewPosition;\\n#include <common>\\n#include <batching_pars_vertex>\\n#include <uv_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <envmap_pars_vertex>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <normal_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <shadowmap_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <color_vertex>\\n\\t#include <morphcolor_vertex>\\n\\t#include <batching_vertex>\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <normal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\tvViewPosition = - mvPosition.xyz;\\n\\t#include <worldpos_vertex>\\n\\t#include <envmap_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n}\",meshlambert_frag:\"#define LAMBERT\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform float opacity;\\n#include <common>\\n#include <packing>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <alphahash_pars_fragment>\\n#include <aomap_pars_fragment>\\n#include <lightmap_pars_fragment>\\n#include <emissivemap_pars_fragment>\\n#include <envmap_common_pars_fragment>\\n#include <envmap_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <bsdfs>\\n#include <lights_pars_begin>\\n#include <normal_pars_fragment>\\n#include <lights_lambert_pars_fragment>\\n#include <shadowmap_pars_fragment>\\n#include <bumpmap_pars_fragment>\\n#include <normalmap_pars_fragment>\\n#include <specularmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\tvec3 totalEmissiveRadiance = emissive;\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <alphahash_fragment>\\n\\t#include <specularmap_fragment>\\n\\t#include <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\t#include <emissivemap_fragment>\\n\\t#include <lights_lambert_fragment>\\n\\t#include <lights_fragment_begin>\\n\\t#include <lights_fragment_maps>\\n\\t#include <lights_fragment_end>\\n\\t#include <aomap_fragment>\\n\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\\n\\t#include <envmap_fragment>\\n\\t#include <opaque_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n}\",meshmatcap_vert:\"#define MATCAP\\nvarying vec3 vViewPosition;\\n#include <common>\\n#include <batching_pars_vertex>\\n#include <uv_pars_vertex>\\n#include <color_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <normal_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <color_vertex>\\n\\t#include <morphcolor_vertex>\\n\\t#include <batching_vertex>\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <normal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <fog_vertex>\\n\\tvViewPosition = - mvPosition.xyz;\\n}\",meshmatcap_frag:\"#define MATCAP\\nuniform vec3 diffuse;\\nuniform float opacity;\\nuniform sampler2D matcap;\\nvarying vec3 vViewPosition;\\n#include <common>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <alphahash_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <normal_pars_fragment>\\n#include <bumpmap_pars_fragment>\\n#include <normalmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <alphahash_fragment>\\n\\t#include <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\tvec3 viewDir = normalize( vViewPosition );\\n\\tvec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) );\\n\\tvec3 y = cross( viewDir, x );\\n\\tvec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5;\\n\\t#ifdef USE_MATCAP\\n\\t\\tvec4 matcapColor = texture2D( matcap, uv );\\n\\t#else\\n\\t\\tvec4 matcapColor = vec4( vec3( mix( 0.2, 0.8, uv.y ) ), 1.0 );\\n\\t#endif\\n\\tvec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\\n\\t#include <opaque_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n}\",meshnormal_vert:\"#define NORMAL\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\\n\\tvarying vec3 vViewPosition;\\n#endif\\n#include <common>\\n#include <batching_pars_vertex>\\n#include <uv_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <normal_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <batching_vertex>\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <normal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\\n\\tvViewPosition = - mvPosition.xyz;\\n#endif\\n}\",meshnormal_frag:\"#define NORMAL\\nuniform float opacity;\\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\\n\\tvarying vec3 vViewPosition;\\n#endif\\n#include <packing>\\n#include <uv_pars_fragment>\\n#include <normal_pars_fragment>\\n#include <bumpmap_pars_fragment>\\n#include <normalmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\tgl_FragColor = vec4( packNormalToRGB( normal ), opacity );\\n\\t#ifdef OPAQUE\\n\\t\\tgl_FragColor.a = 1.0;\\n\\t#endif\\n}\",meshphong_vert:\"#define PHONG\\nvarying vec3 vViewPosition;\\n#include <common>\\n#include <batching_pars_vertex>\\n#include <uv_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <envmap_pars_vertex>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <normal_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <shadowmap_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <color_vertex>\\n\\t#include <morphcolor_vertex>\\n\\t#include <batching_vertex>\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <normal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\tvViewPosition = - mvPosition.xyz;\\n\\t#include <worldpos_vertex>\\n\\t#include <envmap_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n}\",meshphong_frag:\"#define PHONG\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform vec3 specular;\\nuniform float shininess;\\nuniform float opacity;\\n#include <common>\\n#include <packing>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <alphahash_pars_fragment>\\n#include <aomap_pars_fragment>\\n#include <lightmap_pars_fragment>\\n#include <emissivemap_pars_fragment>\\n#include <envmap_common_pars_fragment>\\n#include <envmap_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <bsdfs>\\n#include <lights_pars_begin>\\n#include <normal_pars_fragment>\\n#include <lights_phong_pars_fragment>\\n#include <shadowmap_pars_fragment>\\n#include <bumpmap_pars_fragment>\\n#include <normalmap_pars_fragment>\\n#include <specularmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\tvec3 totalEmissiveRadiance = emissive;\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <alphahash_fragment>\\n\\t#include <specularmap_fragment>\\n\\t#include <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\t#include <emissivemap_fragment>\\n\\t#include <lights_phong_fragment>\\n\\t#include <lights_fragment_begin>\\n\\t#include <lights_fragment_maps>\\n\\t#include <lights_fragment_end>\\n\\t#include <aomap_fragment>\\n\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\\n\\t#include <envmap_fragment>\\n\\t#include <opaque_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n}\",meshphysical_vert:\"#define STANDARD\\nvarying vec3 vViewPosition;\\n#ifdef USE_TRANSMISSION\\n\\tvarying vec3 vWorldPosition;\\n#endif\\n#include <common>\\n#include <batching_pars_vertex>\\n#include <uv_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <normal_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <shadowmap_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <color_vertex>\\n\\t#include <morphcolor_vertex>\\n\\t#include <batching_vertex>\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <normal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\tvViewPosition = - mvPosition.xyz;\\n\\t#include <worldpos_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n#ifdef USE_TRANSMISSION\\n\\tvWorldPosition = worldPosition.xyz;\\n#endif\\n}\",meshphysical_frag:\"#define STANDARD\\n#ifdef PHYSICAL\\n\\t#define IOR\\n\\t#define USE_SPECULAR\\n#endif\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform float roughness;\\nuniform float metalness;\\nuniform float opacity;\\n#ifdef IOR\\n\\tuniform float ior;\\n#endif\\n#ifdef USE_SPECULAR\\n\\tuniform float specularIntensity;\\n\\tuniform vec3 specularColor;\\n\\t#ifdef USE_SPECULAR_COLORMAP\\n\\t\\tuniform sampler2D specularColorMap;\\n\\t#endif\\n\\t#ifdef USE_SPECULAR_INTENSITYMAP\\n\\t\\tuniform sampler2D specularIntensityMap;\\n\\t#endif\\n#endif\\n#ifdef USE_CLEARCOAT\\n\\tuniform float clearcoat;\\n\\tuniform float clearcoatRoughness;\\n#endif\\n#ifdef USE_IRIDESCENCE\\n\\tuniform float iridescence;\\n\\tuniform float iridescenceIOR;\\n\\tuniform float iridescenceThicknessMinimum;\\n\\tuniform float iridescenceThicknessMaximum;\\n#endif\\n#ifdef USE_SHEEN\\n\\tuniform vec3 sheenColor;\\n\\tuniform float sheenRoughness;\\n\\t#ifdef USE_SHEEN_COLORMAP\\n\\t\\tuniform sampler2D sheenColorMap;\\n\\t#endif\\n\\t#ifdef USE_SHEEN_ROUGHNESSMAP\\n\\t\\tuniform sampler2D sheenRoughnessMap;\\n\\t#endif\\n#endif\\n#ifdef USE_ANISOTROPY\\n\\tuniform vec2 anisotropyVector;\\n\\t#ifdef USE_ANISOTROPYMAP\\n\\t\\tuniform sampler2D anisotropyMap;\\n\\t#endif\\n#endif\\nvarying vec3 vViewPosition;\\n#include <common>\\n#include <packing>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <alphahash_pars_fragment>\\n#include <aomap_pars_fragment>\\n#include <lightmap_pars_fragment>\\n#include <emissivemap_pars_fragment>\\n#include <iridescence_fragment>\\n#include <cube_uv_reflection_fragment>\\n#include <envmap_common_pars_fragment>\\n#include <envmap_physical_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <lights_pars_begin>\\n#include <normal_pars_fragment>\\n#include <lights_physical_pars_fragment>\\n#include <transmission_pars_fragment>\\n#include <shadowmap_pars_fragment>\\n#include <bumpmap_pars_fragment>\\n#include <normalmap_pars_fragment>\\n#include <clearcoat_pars_fragment>\\n#include <iridescence_pars_fragment>\\n#include <roughnessmap_pars_fragment>\\n#include <metalnessmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\tvec3 totalEmissiveRadiance = emissive;\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <alphahash_fragment>\\n\\t#include <roughnessmap_fragment>\\n\\t#include <metalnessmap_fragment>\\n\\t#include <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\t#include <clearcoat_normal_fragment_begin>\\n\\t#include <clearcoat_normal_fragment_maps>\\n\\t#include <emissivemap_fragment>\\n\\t#include <lights_physical_fragment>\\n\\t#include <lights_fragment_begin>\\n\\t#include <lights_fragment_maps>\\n\\t#include <lights_fragment_end>\\n\\t#include <aomap_fragment>\\n\\tvec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;\\n\\tvec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular;\\n\\t#include <transmission_fragment>\\n\\tvec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;\\n\\t#ifdef USE_SHEEN\\n\\t\\tfloat sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor );\\n\\t\\toutgoingLight = outgoingLight * sheenEnergyComp + sheenSpecularDirect + sheenSpecularIndirect;\\n\\t#endif\\n\\t#ifdef USE_CLEARCOAT\\n\\t\\tfloat dotNVcc = saturate( dot( geometryClearcoatNormal, geometryViewDir ) );\\n\\t\\tvec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );\\n\\t\\toutgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + ( clearcoatSpecularDirect + clearcoatSpecularIndirect ) * material.clearcoat;\\n\\t#endif\\n\\t#include <opaque_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n}\",meshtoon_vert:\"#define TOON\\nvarying vec3 vViewPosition;\\n#include <common>\\n#include <batching_pars_vertex>\\n#include <uv_pars_vertex>\\n#include <displacementmap_pars_vertex>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <normal_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <shadowmap_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\t#include <color_vertex>\\n\\t#include <morphcolor_vertex>\\n\\t#include <batching_vertex>\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <normal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <displacementmap_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\tvViewPosition = - mvPosition.xyz;\\n\\t#include <worldpos_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n}\",meshtoon_frag:\"#define TOON\\nuniform vec3 diffuse;\\nuniform vec3 emissive;\\nuniform float opacity;\\n#include <common>\\n#include <packing>\\n#include <dithering_pars_fragment>\\n#include <color_pars_fragment>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <alphahash_pars_fragment>\\n#include <aomap_pars_fragment>\\n#include <lightmap_pars_fragment>\\n#include <emissivemap_pars_fragment>\\n#include <gradientmap_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <bsdfs>\\n#include <lights_pars_begin>\\n#include <normal_pars_fragment>\\n#include <lights_toon_pars_fragment>\\n#include <shadowmap_pars_fragment>\\n#include <bumpmap_pars_fragment>\\n#include <normalmap_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\\n\\tvec3 totalEmissiveRadiance = emissive;\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <alphahash_fragment>\\n\\t#include <normal_fragment_begin>\\n\\t#include <normal_fragment_maps>\\n\\t#include <emissivemap_fragment>\\n\\t#include <lights_toon_fragment>\\n\\t#include <lights_fragment_begin>\\n\\t#include <lights_fragment_maps>\\n\\t#include <lights_fragment_end>\\n\\t#include <aomap_fragment>\\n\\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\\n\\t#include <opaque_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n\\t#include <dithering_fragment>\\n}\",points_vert:\"uniform float size;\\nuniform float scale;\\n#include <common>\\n#include <color_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\n#ifdef USE_POINTS_UV\\n\\tvarying vec2 vUv;\\n\\tuniform mat3 uvTransform;\\n#endif\\nvoid main() {\\n\\t#ifdef USE_POINTS_UV\\n\\t\\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\\n\\t#endif\\n\\t#include <color_vertex>\\n\\t#include <morphcolor_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <project_vertex>\\n\\tgl_PointSize = size;\\n\\t#ifdef USE_SIZEATTENUATION\\n\\t\\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\\n\\t\\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\\n\\t#endif\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <worldpos_vertex>\\n\\t#include <fog_vertex>\\n}\",points_frag:\"uniform vec3 diffuse;\\nuniform float opacity;\\n#include <common>\\n#include <color_pars_fragment>\\n#include <map_particle_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <alphahash_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec3 outgoingLight = vec3( 0.0 );\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_particle_fragment>\\n\\t#include <color_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <alphahash_fragment>\\n\\toutgoingLight = diffuseColor.rgb;\\n\\t#include <opaque_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n\\t#include <fog_fragment>\\n\\t#include <premultiplied_alpha_fragment>\\n}\",shadow_vert:\"#include <common>\\n#include <batching_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <morphtarget_pars_vertex>\\n#include <skinning_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <shadowmap_pars_vertex>\\nvoid main() {\\n\\t#include <batching_vertex>\\n\\t#include <beginnormal_vertex>\\n\\t#include <morphnormal_vertex>\\n\\t#include <skinbase_vertex>\\n\\t#include <skinnormal_vertex>\\n\\t#include <defaultnormal_vertex>\\n\\t#include <begin_vertex>\\n\\t#include <morphtarget_vertex>\\n\\t#include <skinning_vertex>\\n\\t#include <project_vertex>\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <worldpos_vertex>\\n\\t#include <shadowmap_vertex>\\n\\t#include <fog_vertex>\\n}\",shadow_frag:\"uniform vec3 color;\\nuniform float opacity;\\n#include <common>\\n#include <packing>\\n#include <fog_pars_fragment>\\n#include <bsdfs>\\n#include <lights_pars_begin>\\n#include <logdepthbuf_pars_fragment>\\n#include <shadowmap_pars_fragment>\\n#include <shadowmask_pars_fragment>\\nvoid main() {\\n\\t#include <logdepthbuf_fragment>\\n\\tgl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n\\t#include <fog_fragment>\\n}\",sprite_vert:\"uniform float rotation;\\nuniform vec2 center;\\n#include <common>\\n#include <uv_pars_vertex>\\n#include <fog_pars_vertex>\\n#include <logdepthbuf_pars_vertex>\\n#include <clipping_planes_pars_vertex>\\nvoid main() {\\n\\t#include <uv_vertex>\\n\\tvec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\\n\\tvec2 scale;\\n\\tscale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) );\\n\\tscale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) );\\n\\t#ifndef USE_SIZEATTENUATION\\n\\t\\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\\n\\t\\tif ( isPerspective ) scale *= - mvPosition.z;\\n\\t#endif\\n\\tvec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\\n\\tvec2 rotatedPosition;\\n\\trotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\\n\\trotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\\n\\tmvPosition.xy += rotatedPosition;\\n\\tgl_Position = projectionMatrix * mvPosition;\\n\\t#include <logdepthbuf_vertex>\\n\\t#include <clipping_planes_vertex>\\n\\t#include <fog_vertex>\\n}\",sprite_frag:\"uniform vec3 diffuse;\\nuniform float opacity;\\n#include <common>\\n#include <uv_pars_fragment>\\n#include <map_pars_fragment>\\n#include <alphamap_pars_fragment>\\n#include <alphatest_pars_fragment>\\n#include <alphahash_pars_fragment>\\n#include <fog_pars_fragment>\\n#include <logdepthbuf_pars_fragment>\\n#include <clipping_planes_pars_fragment>\\nvoid main() {\\n\\t#include <clipping_planes_fragment>\\n\\tvec3 outgoingLight = vec3( 0.0 );\\n\\tvec4 diffuseColor = vec4( diffuse, opacity );\\n\\t#include <logdepthbuf_fragment>\\n\\t#include <map_fragment>\\n\\t#include <alphamap_fragment>\\n\\t#include <alphatest_fragment>\\n\\t#include <alphahash_fragment>\\n\\toutgoingLight = diffuseColor.rgb;\\n\\t#include <opaque_fragment>\\n\\t#include <tonemapping_fragment>\\n\\t#include <colorspace_fragment>\\n\\t#include <fog_fragment>\\n}\"},Ci={common:{diffuse:{value:new En(16777215)},opacity:{value:1},map:{value:null},mapTransform:{value:new Lt},alphaMap:{value:null},alphaMapTransform:{value:new Lt},alphaTest:{value:0}},specularmap:{specularMap:{value:null},specularMapTransform:{value:new Lt}},envmap:{envMap:{value:null},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1},aoMapTransform:{value:new Lt}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1},lightMapTransform:{value:new Lt}},bumpmap:{bumpMap:{value:null},bumpMapTransform:{value:new Lt},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalMapTransform:{value:new Lt},normalScale:{value:new Ct(1,1)}},displacementmap:{displacementMap:{value:null},displacementMapTransform:{value:new Lt},displacementScale:{value:1},displacementBias:{value:0}},emissivemap:{emissiveMap:{value:null},emissiveMapTransform:{value:new Lt}},metalnessmap:{metalnessMap:{value:null},metalnessMapTransform:{value:new Lt}},roughnessmap:{roughnessMap:{value:null},roughnessMapTransform:{value:new Lt}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new En(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotLightMap:{value:[]},spotShadowMap:{value:[]},spotLightMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null}},points:{diffuse:{value:new En(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaMapTransform:{value:new Lt},alphaTest:{value:0},uvTransform:{value:new Lt}},sprite:{diffuse:{value:new En(16777215)},opacity:{value:1},center:{value:new Ct(.5,.5)},rotation:{value:0},map:{value:null},mapTransform:{value:new Lt},alphaMap:{value:null},alphaMapTransform:{value:new Lt},alphaTest:{value:0}}},Li={basic:{uniforms:li([Ci.common,Ci.specularmap,Ci.envmap,Ci.aomap,Ci.lightmap,Ci.fog]),vertexShader:Ri.meshbasic_vert,fragmentShader:Ri.meshbasic_frag},lambert:{uniforms:li([Ci.common,Ci.specularmap,Ci.envmap,Ci.aomap,Ci.lightmap,Ci.emissivemap,Ci.bumpmap,Ci.normalmap,Ci.displacementmap,Ci.fog,Ci.lights,{emissive:{value:new En(0)}}]),vertexShader:Ri.meshlambert_vert,fragmentShader:Ri.meshlambert_frag},phong:{uniforms:li([Ci.common,Ci.specularmap,Ci.envmap,Ci.aomap,Ci.lightmap,Ci.emissivemap,Ci.bumpmap,Ci.normalmap,Ci.displacementmap,Ci.fog,Ci.lights,{emissive:{value:new En(0)},specular:{value:new En(1118481)},shininess:{value:30}}]),vertexShader:Ri.meshphong_vert,fragmentShader:Ri.meshphong_frag},standard:{uniforms:li([Ci.common,Ci.envmap,Ci.aomap,Ci.lightmap,Ci.emissivemap,Ci.bumpmap,Ci.normalmap,Ci.displacementmap,Ci.roughnessmap,Ci.metalnessmap,Ci.fog,Ci.lights,{emissive:{value:new En(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:Ri.meshphysical_vert,fragmentShader:Ri.meshphysical_frag},toon:{uniforms:li([Ci.common,Ci.aomap,Ci.lightmap,Ci.emissivemap,Ci.bumpmap,Ci.normalmap,Ci.displacementmap,Ci.gradientmap,Ci.fog,Ci.lights,{emissive:{value:new En(0)}}]),vertexShader:Ri.meshtoon_vert,fragmentShader:Ri.meshtoon_frag},matcap:{uniforms:li([Ci.common,Ci.bumpmap,Ci.normalmap,Ci.displacementmap,Ci.fog,{matcap:{value:null}}]),vertexShader:Ri.meshmatcap_vert,fragmentShader:Ri.meshmatcap_frag},points:{uniforms:li([Ci.points,Ci.fog]),vertexShader:Ri.points_vert,fragmentShader:Ri.points_frag},dashed:{uniforms:li([Ci.common,Ci.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:Ri.linedashed_vert,fragmentShader:Ri.linedashed_frag},depth:{uniforms:li([Ci.common,Ci.displacementmap]),vertexShader:Ri.depth_vert,fragmentShader:Ri.depth_frag},normal:{uniforms:li([Ci.common,Ci.bumpmap,Ci.normalmap,Ci.displacementmap,{opacity:{value:1}}]),vertexShader:Ri.meshnormal_vert,fragmentShader:Ri.meshnormal_frag},sprite:{uniforms:li([Ci.sprite,Ci.fog]),vertexShader:Ri.sprite_vert,fragmentShader:Ri.sprite_frag},background:{uniforms:{uvTransform:{value:new Lt},t2D:{value:null},backgroundIntensity:{value:1}},vertexShader:Ri.background_vert,fragmentShader:Ri.background_frag},backgroundCube:{uniforms:{envMap:{value:null},flipEnvMap:{value:-1},backgroundBlurriness:{value:0},backgroundIntensity:{value:1}},vertexShader:Ri.backgroundCube_vert,fragmentShader:Ri.backgroundCube_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:Ri.cube_vert,fragmentShader:Ri.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:Ri.equirect_vert,fragmentShader:Ri.equirect_frag},distanceRGBA:{uniforms:li([Ci.common,Ci.displacementmap,{referencePosition:{value:new ie},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:Ri.distanceRGBA_vert,fragmentShader:Ri.distanceRGBA_frag},shadow:{uniforms:li([Ci.lights,Ci.fog,{color:{value:new En(0)},opacity:{value:1}}]),vertexShader:Ri.shadow_vert,fragmentShader:Ri.shadow_frag}};Li.physical={uniforms:li([Li.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatMapTransform:{value:new Lt},clearcoatNormalMap:{value:null},clearcoatNormalMapTransform:{value:new Lt},clearcoatNormalScale:{value:new Ct(1,1)},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatRoughnessMapTransform:{value:new Lt},iridescence:{value:0},iridescenceMap:{value:null},iridescenceMapTransform:{value:new Lt},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},iridescenceThicknessMapTransform:{value:new Lt},sheen:{value:0},sheenColor:{value:new En(0)},sheenColorMap:{value:null},sheenColorMapTransform:{value:new Lt},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},sheenRoughnessMapTransform:{value:new Lt},transmission:{value:0},transmissionMap:{value:null},transmissionMapTransform:{value:new Lt},transmissionSamplerSize:{value:new Ct},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},thicknessMapTransform:{value:new Lt},attenuationDistance:{value:0},attenuationColor:{value:new En(0)},specularColor:{value:new En(1,1,1)},specularColorMap:{value:null},specularColorMapTransform:{value:new Lt},specularIntensity:{value:1},specularIntensityMap:{value:null},specularIntensityMapTransform:{value:new Lt},anisotropyVector:{value:new Ct},anisotropyMap:{value:null},anisotropyMapTransform:{value:new Lt}}]),vertexShader:Ri.meshphysical_vert,fragmentShader:Ri.meshphysical_frag};const Pi={r:0,b:0,g:0};function Ui(t,e,n,i,r,a,s){const o=new En(0);let l,c,h=!0===a?0:1,u=null,d=0,p=null;function f(e,n){e.getRGB(Pi,ci(t)),i.buffers.color.setClear(Pi.r,Pi.g,Pi.b,n,s)}return{getClearColor:function(){return o},setClearColor:function(t,e=1){o.set(t),h=e,f(o,h)},getClearAlpha:function(){return h},setClearAlpha:function(t){h=t,f(o,h)},render:function(a,m){let g=!1,_=!0===m.isScene?m.background:null;if(_&&_.isTexture){_=(m.backgroundBlurriness>0?n:e).get(_)}null===_?f(o,h):_&&_.isColor&&(f(_,1),g=!0);const v=t.xr.getEnvironmentBlendMode();\"additive\"===v?i.buffers.color.setClear(0,0,0,1,s):\"alpha-blend\"===v&&i.buffers.color.setClear(0,0,0,0,s),(t.autoClear||g)&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),_&&(_.isCubeTexture||_.mapping===T)?(void 0===c&&(c=new ri(new si(1,1,1),new ui({name:\"BackgroundCubeMaterial\",uniforms:oi(Li.backgroundCube.uniforms),vertexShader:Li.backgroundCube.vertexShader,fragmentShader:Li.backgroundCube.fragmentShader,side:1,depthTest:!1,depthWrite:!1,fog:!1})),c.geometry.deleteAttribute(\"normal\"),c.geometry.deleteAttribute(\"uv\"),c.onBeforeRender=function(t,e,n){this.matrixWorld.copyPosition(n.matrixWorld)},Object.defineProperty(c.material,\"envMap\",{get:function(){return this.uniforms.envMap.value}}),r.update(c)),c.material.uniforms.envMap.value=_,c.material.uniforms.flipEnvMap.value=_.isCubeTexture&&!1===_.isRenderTargetTexture?-1:1,c.material.uniforms.backgroundBlurriness.value=m.backgroundBlurriness,c.material.uniforms.backgroundIntensity.value=m.backgroundIntensity,c.material.toneMapped=Vt.getTransfer(_.colorSpace)!==nt,u===_&&d===_.version&&p===t.toneMapping||(c.material.needsUpdate=!0,u=_,d=_.version,p=t.toneMapping),c.layers.enableAll(),a.unshift(c,c.geometry,c.material,0,0,null)):_&&_.isTexture&&(void 0===l&&(l=new ri(new wi(2,2),new ui({name:\"BackgroundMaterial\",uniforms:oi(Li.background.uniforms),vertexShader:Li.background.vertexShader,fragmentShader:Li.background.fragmentShader,side:0,depthTest:!1,depthWrite:!1,fog:!1})),l.geometry.deleteAttribute(\"normal\"),Object.defineProperty(l.material,\"map\",{get:function(){return this.uniforms.t2D.value}}),r.update(l)),l.material.uniforms.t2D.value=_,l.material.uniforms.backgroundIntensity.value=m.backgroundIntensity,l.material.toneMapped=Vt.getTransfer(_.colorSpace)!==nt,!0===_.matrixAutoUpdate&&_.updateMatrix(),l.material.uniforms.uvTransform.value.copy(_.matrix),u===_&&d===_.version&&p===t.toneMapping||(l.material.needsUpdate=!0,u=_,d=_.version,p=t.toneMapping),l.layers.enableAll(),a.unshift(l,l.geometry,l.material,0,0,null))}}}function Di(t,e,n,i){const r=t.getParameter(t.MAX_VERTEX_ATTRIBS),a=i.isWebGL2?null:e.get(\"OES_vertex_array_object\"),s=i.isWebGL2||null!==a,o={},l=p(null);let c=l,h=!1;function u(e){return i.isWebGL2?t.bindVertexArray(e):a.bindVertexArrayOES(e)}function d(e){return i.isWebGL2?t.deleteVertexArray(e):a.deleteVertexArrayOES(e)}function p(t){const e=[],n=[],i=[];for(let t=0;t<r;t++)e[t]=0,n[t]=0,i[t]=0;return{geometry:null,program:null,wireframe:!1,newAttributes:e,enabledAttributes:n,attributeDivisors:i,object:t,attributes:{},index:null}}function f(){const t=c.newAttributes;for(let e=0,n=t.length;e<n;e++)t[e]=0}function m(t){g(t,0)}function g(n,r){const a=c.newAttributes,s=c.enabledAttributes,o=c.attributeDivisors;if(a[n]=1,0===s[n]&&(t.enableVertexAttribArray(n),s[n]=1),o[n]!==r){(i.isWebGL2?t:e.get(\"ANGLE_instanced_arrays\"))[i.isWebGL2?\"vertexAttribDivisor\":\"vertexAttribDivisorANGLE\"](n,r),o[n]=r}}function _(){const e=c.newAttributes,n=c.enabledAttributes;for(let i=0,r=n.length;i<r;i++)n[i]!==e[i]&&(t.disableVertexAttribArray(i),n[i]=0)}function v(e,n,i,r,a,s,o){!0===o?t.vertexAttribIPointer(e,n,i,a,s):t.vertexAttribPointer(e,n,i,r,a,s)}function x(){M(),h=!0,c!==l&&(c=l,u(c.object))}function M(){l.geometry=null,l.program=null,l.wireframe=!1}return{setup:function(r,l,d,x,M){let S=!1;if(s){const e=function(e,n,r){const s=!0===r.wireframe;let l=o[e.id];void 0===l&&(l={},o[e.id]=l);let c=l[n.id];void 0===c&&(c={},l[n.id]=c);let h=c[s];void 0===h&&(h=p(i.isWebGL2?t.createVertexArray():a.createVertexArrayOES()),c[s]=h);return h}(x,d,l);c!==e&&(c=e,u(c.object)),S=function(t,e,n,i){const r=c.attributes,a=e.attributes;let s=0;const o=n.getAttributes();for(const e in o){if(o[e].location>=0){const n=r[e];let i=a[e];if(void 0===i&&(\"instanceMatrix\"===e&&t.instanceMatrix&&(i=t.instanceMatrix),\"instanceColor\"===e&&t.instanceColor&&(i=t.instanceColor)),void 0===n)return!0;if(n.attribute!==i)return!0;if(i&&n.data!==i.data)return!0;s++}}return c.attributesNum!==s||c.index!==i}(r,x,d,M),S&&function(t,e,n,i){const r={},a=e.attributes;let s=0;const o=n.getAttributes();for(const e in o){if(o[e].location>=0){let n=a[e];void 0===n&&(\"instanceMatrix\"===e&&t.instanceMatrix&&(n=t.instanceMatrix),\"instanceColor\"===e&&t.instanceColor&&(n=t.instanceColor));const i={};i.attribute=n,n&&n.data&&(i.data=n.data),r[e]=i,s++}}c.attributes=r,c.attributesNum=s,c.index=i}(r,x,d,M)}else{const t=!0===l.wireframe;c.geometry===x.id&&c.program===d.id&&c.wireframe===t||(c.geometry=x.id,c.program=d.id,c.wireframe=t,S=!0)}null!==M&&n.update(M,t.ELEMENT_ARRAY_BUFFER),(S||h)&&(h=!1,function(r,a,s,o){if(!1===i.isWebGL2&&(r.isInstancedMesh||o.isInstancedBufferGeometry)&&null===e.get(\"ANGLE_instanced_arrays\"))return;f();const l=o.attributes,c=s.getAttributes(),h=a.defaultAttributeValues;for(const e in c){const a=c[e];if(a.location>=0){let s=l[e];if(void 0===s&&(\"instanceMatrix\"===e&&r.instanceMatrix&&(s=r.instanceMatrix),\"instanceColor\"===e&&r.instanceColor&&(s=r.instanceColor)),void 0!==s){const e=s.normalized,l=s.itemSize,c=n.get(s);if(void 0===c)continue;const h=c.buffer,u=c.type,d=c.bytesPerElement,p=!0===i.isWebGL2&&(u===t.INT||u===t.UNSIGNED_INT||s.gpuType===O);if(s.isInterleavedBufferAttribute){const n=s.data,i=n.stride,c=s.offset;if(n.isInstancedInterleavedBuffer){for(let t=0;t<a.locationSize;t++)g(a.location+t,n.meshPerAttribute);!0!==r.isInstancedMesh&&void 0===o._maxInstanceCount&&(o._maxInstanceCount=n.meshPerAttribute*n.count)}else for(let t=0;t<a.locationSize;t++)m(a.location+t);t.bindBuffer(t.ARRAY_BUFFER,h);for(let t=0;t<a.locationSize;t++)v(a.location+t,l/a.locationSize,u,e,i*d,(c+l/a.locationSize*t)*d,p)}else{if(s.isInstancedBufferAttribute){for(let t=0;t<a.locationSize;t++)g(a.location+t,s.meshPerAttribute);!0!==r.isInstancedMesh&&void 0===o._maxInstanceCount&&(o._maxInstanceCount=s.meshPerAttribute*s.count)}else for(let t=0;t<a.locationSize;t++)m(a.location+t);t.bindBuffer(t.ARRAY_BUFFER,h);for(let t=0;t<a.locationSize;t++)v(a.location+t,l/a.locationSize,u,e,l*d,l/a.locationSize*t*d,p)}}else if(void 0!==h){const n=h[e];if(void 0!==n)switch(n.length){case 2:t.vertexAttrib2fv(a.location,n);break;case 3:t.vertexAttrib3fv(a.location,n);break;case 4:t.vertexAttrib4fv(a.location,n);break;default:t.vertexAttrib1fv(a.location,n)}}}}_()}(r,l,d,x),null!==M&&t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,n.get(M).buffer))},reset:x,resetDefaultState:M,dispose:function(){x();for(const t in o){const e=o[t];for(const t in e){const n=e[t];for(const t in n)d(n[t].object),delete n[t];delete e[t]}delete o[t]}},releaseStatesOfGeometry:function(t){if(void 0===o[t.id])return;const e=o[t.id];for(const t in e){const n=e[t];for(const t in n)d(n[t].object),delete n[t];delete e[t]}delete o[t.id]},releaseStatesOfProgram:function(t){for(const e in o){const n=o[e];if(void 0===n[t.id])continue;const i=n[t.id];for(const t in i)d(i[t].object),delete i[t];delete n[t.id]}},initAttributes:f,enableAttribute:m,disableUnusedAttributes:_}}function Ni(t,e,n,i){const r=i.isWebGL2;let a;this.setMode=function(t){a=t},this.render=function(e,i){t.drawArrays(a,e,i),n.update(i,a,1)},this.renderInstances=function(i,s,o){if(0===o)return;let l,c;if(r)l=t,c=\"drawArraysInstanced\";else if(l=e.get(\"ANGLE_instanced_arrays\"),c=\"drawArraysInstancedANGLE\",null===l)return;l[c](a,i,s,o),n.update(s,a,o)},this.renderMultiDraw=function(t,i,r){if(0===r)return;const s=e.get(\"WEBGL_multi_draw\");if(null===s)for(let e=0;e<r;e++)this.render(t[e],i[e]);else{s.multiDrawArraysWEBGL(a,t,0,i,0,r);let e=0;for(let t=0;t<r;t++)e+=i[t];n.update(e,a,1)}}}function Ii(t,e,n){let i;function r(e){if(\"highp\"===e){if(t.getShaderPrecisionFormat(t.VERTEX_SHADER,t.HIGH_FLOAT).precision>0&&t.getShaderPrecisionFormat(t.FRAGMENT_SHADER,t.HIGH_FLOAT).precision>0)return\"highp\";e=\"mediump\"}return\"mediump\"===e&&t.getShaderPrecisionFormat(t.VERTEX_SHADER,t.MEDIUM_FLOAT).precision>0&&t.getShaderPrecisionFormat(t.FRAGMENT_SHADER,t.MEDIUM_FLOAT).precision>0?\"mediump\":\"lowp\"}const a=\"undefined\"!=typeof WebGL2RenderingContext&&\"WebGL2RenderingContext\"===t.constructor.name;let s=void 0!==n.precision?n.precision:\"highp\";const o=r(s);o!==s&&(s=o);const l=a||e.has(\"WEBGL_draw_buffers\"),c=!0===n.logarithmicDepthBuffer,h=t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS),u=t.getParameter(t.MAX_VERTEX_TEXTURE_IMAGE_UNITS),d=t.getParameter(t.MAX_TEXTURE_SIZE),p=t.getParameter(t.MAX_CUBE_MAP_TEXTURE_SIZE),f=t.getParameter(t.MAX_VERTEX_ATTRIBS),m=t.getParameter(t.MAX_VERTEX_UNIFORM_VECTORS),g=t.getParameter(t.MAX_VARYING_VECTORS),_=t.getParameter(t.MAX_FRAGMENT_UNIFORM_VECTORS),v=u>0,x=a||e.has(\"OES_texture_float\");return{isWebGL2:a,drawBuffers:l,getMaxAnisotropy:function(){if(void 0!==i)return i;if(!0===e.has(\"EXT_texture_filter_anisotropic\")){const n=e.get(\"EXT_texture_filter_anisotropic\");i=t.getParameter(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else i=0;return i},getMaxPrecision:r,precision:s,logarithmicDepthBuffer:c,maxTextures:h,maxVertexTextures:u,maxTextureSize:d,maxCubemapSize:p,maxAttributes:f,maxVertexUniforms:m,maxVaryings:g,maxFragmentUniforms:_,vertexTextures:v,floatFragmentTextures:x,floatVertexTextures:v&&x,maxSamples:a?t.getParameter(t.MAX_SAMPLES):0}}function Oi(t){const e=this;let n=null,i=0,r=!1,a=!1;const s=new Si,o=new Lt,l={value:null,needsUpdate:!1};function c(t,n,i,r){const a=null!==t?t.length:0;let c=null;if(0!==a){if(c=l.value,!0!==r||null===c){const e=i+4*a,r=n.matrixWorldInverse;o.getNormalMatrix(r),(null===c||c.length<e)&&(c=new Float32Array(e));for(let e=0,n=i;e!==a;++e,n+=4)s.copy(t[e]).applyMatrix4(r,o),s.normal.toArray(c,n),c[n+3]=s.constant}l.value=c,l.needsUpdate=!0}return e.numPlanes=a,e.numIntersection=0,c}this.uniform=l,this.numPlanes=0,this.numIntersection=0,this.init=function(t,e){const n=0!==t.length||e||0!==i||r;return r=e,i=t.length,n},this.beginShadows=function(){a=!0,c(null)},this.endShadows=function(){a=!1},this.setGlobalState=function(t,e){n=c(t,e,0)},this.setState=function(s,o,h){const u=s.clippingPlanes,d=s.clipIntersection,p=s.clipShadows,f=t.get(s);if(!r||null===u||0===u.length||a&&!p)a?c(null):function(){l.value!==n&&(l.value=n,l.needsUpdate=i>0);e.numPlanes=i,e.numIntersection=0}();else{const t=a?0:i,e=4*t;let r=f.clippingState||null;l.value=r,r=c(u,o,e,h);for(let t=0;t!==e;++t)r[t]=n[t];f.clippingState=r,this.numIntersection=d?this.numPlanes:0,this.numPlanes+=t}}}function Fi(t){let e=new WeakMap;function n(t,e){return 303===e?t.mapping=E:304===e&&(t.mapping=y),t}function i(t){const n=t.target;n.removeEventListener(\"dispose\",i);const r=e.get(n);void 0!==r&&(e.delete(n),r.dispose())}return{get:function(r){if(r&&r.isTexture){const a=r.mapping;if(303===a||304===a){if(e.has(r)){return n(e.get(r).texture,r.mapping)}{const a=r.image;if(a&&a.height>0){const s=new _i(a.height/2);return s.fromEquirectangularTexture(t,r),e.set(r,s),r.addEventListener(\"dispose\",i),n(s.texture,r.mapping)}return null}}}return r},dispose:function(){e=new WeakMap}}}class Bi extends di{constructor(t=-1,e=1,n=1,i=-1,r=.1,a=2e3){super(),this.isOrthographicCamera=!0,this.type=\"OrthographicCamera\",this.zoom=1,this.view=null,this.left=t,this.right=e,this.top=n,this.bottom=i,this.near=r,this.far=a,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.left=t.left,this.right=t.right,this.top=t.top,this.bottom=t.bottom,this.near=t.near,this.far=t.far,this.zoom=t.zoom,this.view=null===t.view?null:Object.assign({},t.view),this}setViewOffset(t,e,n,i,r,a){null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=i,this.view.width=r,this.view.height=a,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=(this.right-this.left)/(2*this.zoom),e=(this.top-this.bottom)/(2*this.zoom),n=(this.right+this.left)/2,i=(this.top+this.bottom)/2;let r=n-t,a=n+t,s=i+e,o=i-e;if(null!==this.view&&this.view.enabled){const t=(this.right-this.left)/this.view.fullWidth/this.zoom,e=(this.top-this.bottom)/this.view.fullHeight/this.zoom;r+=t*this.view.offsetX,a=r+t*this.view.width,s-=e*this.view.offsetY,o=s-e*this.view.height}this.projectionMatrix.makeOrthographic(r,a,s,o,this.near,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.zoom=this.zoom,e.object.left=this.left,e.object.right=this.right,e.object.top=this.top,e.object.bottom=this.bottom,e.object.near=this.near,e.object.far=this.far,null!==this.view&&(e.object.view=Object.assign({},this.view)),e}}const zi=[.125,.215,.35,.446,.526,.582],Hi=20,Vi=new Bi,Gi=new En;let ki=null,Wi=0,Xi=0;const qi=(1+Math.sqrt(5))/2,ji=1/qi,Yi=[new ie(1,1,1),new ie(-1,1,1),new ie(1,1,-1),new ie(-1,1,-1),new ie(0,qi,ji),new ie(0,qi,-ji),new ie(ji,0,qi),new ie(-ji,0,qi),new ie(qi,ji,0),new ie(-qi,ji,0)];class Ki{constructor(t){this._renderer=t,this._pingPongRenderTarget=null,this._lodMax=0,this._cubeSize=0,this._lodPlanes=[],this._sizeLods=[],this._sigmas=[],this._blurMaterial=null,this._cubemapMaterial=null,this._equirectMaterial=null,this._compileMaterial(this._blurMaterial)}fromScene(t,e=0,n=.1,i=100){ki=this._renderer.getRenderTarget(),Wi=this._renderer.getActiveCubeFace(),Xi=this._renderer.getActiveMipmapLevel(),this._setSize(256);const r=this._allocateTargets();return r.depthBuffer=!0,this._sceneToCubeUV(t,n,i,r),e>0&&this._blur(r,0,0,e),this._applyPMREM(r),this._cleanup(r),r}fromEquirectangular(t,e=null){return this._fromTexture(t,e)}fromCubemap(t,e=null){return this._fromTexture(t,e)}compileCubemapShader(){null===this._cubemapMaterial&&(this._cubemapMaterial=$i(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){null===this._equirectMaterial&&(this._equirectMaterial=Qi(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),null!==this._cubemapMaterial&&this._cubemapMaterial.dispose(),null!==this._equirectMaterial&&this._equirectMaterial.dispose()}_setSize(t){this._lodMax=Math.floor(Math.log2(t)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){null!==this._blurMaterial&&this._blurMaterial.dispose(),null!==this._pingPongRenderTarget&&this._pingPongRenderTarget.dispose();for(let t=0;t<this._lodPlanes.length;t++)this._lodPlanes[t].dispose()}_cleanup(t){this._renderer.setRenderTarget(ki,Wi,Xi),t.scissorTest=!1,Ji(t,0,0,t.width,t.height)}_fromTexture(t,e){t.mapping===E||t.mapping===y?this._setSize(0===t.image.length?16:t.image[0].width||t.image[0].image.width):this._setSize(t.image.width/4),ki=this._renderer.getRenderTarget(),Wi=this._renderer.getActiveCubeFace(),Xi=this._renderer.getActiveMipmapLevel();const n=e||this._allocateTargets();return this._textureToCubeUV(t,n),this._applyPMREM(n),this._cleanup(n),n}_allocateTargets(){const t=3*Math.max(this._cubeSize,112),e=4*this._cubeSize,n={magFilter:P,minFilter:P,generateMipmaps:!1,type:z,format:V,colorSpace:Q,depthBuffer:!1},i=Zi(t,e,n);if(null===this._pingPongRenderTarget||this._pingPongRenderTarget.width!==t||this._pingPongRenderTarget.height!==e){null!==this._pingPongRenderTarget&&this._dispose(),this._pingPongRenderTarget=Zi(t,e,n);const{_lodMax:i}=this;({sizeLods:this._sizeLods,lodPlanes:this._lodPlanes,sigmas:this._sigmas}=function(t){const e=[],n=[],i=[];let r=t;const a=t-4+1+zi.length;for(let s=0;s<a;s++){const a=Math.pow(2,r);n.push(a);let o=1/a;s>t-4?o=zi[s-t+4-1]:0===s&&(o=0),i.push(o);const l=1/(a-2),c=-l,h=1+l,u=[c,c,h,c,h,h,c,c,h,h,c,h],d=6,p=6,f=3,m=2,g=1,_=new Float32Array(f*p*d),v=new Float32Array(m*p*d),x=new Float32Array(g*p*d);for(let t=0;t<d;t++){const e=t%3*2/3-1,n=t>2?0:-1,i=[e,n,0,e+2/3,n,0,e+2/3,n+1,0,e,n,0,e+2/3,n+1,0,e,n+1,0];_.set(i,f*p*t),v.set(u,m*p*t);const r=[t,t,t,t,t,t];x.set(r,g*p*t)}const M=new Hn;M.setAttribute(\"position\",new Cn(_,f)),M.setAttribute(\"uv\",new Cn(v,m)),M.setAttribute(\"faceIndex\",new Cn(x,g)),e.push(M),r>4&&r--}return{lodPlanes:e,sizeLods:n,sigmas:i}}(i)),this._blurMaterial=function(t,e,n){const i=new Float32Array(Hi),r=new ie(0,1,0),a=new ui({name:\"SphericalGaussianBlur\",defines:{n:Hi,CUBEUV_TEXEL_WIDTH:1/e,CUBEUV_TEXEL_HEIGHT:1/n,CUBEUV_MAX_MIP:`${t}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:i},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:r}},vertexShader:tr(),fragmentShader:\"\\n\\n\\t\\t\\tprecision mediump float;\\n\\t\\t\\tprecision mediump int;\\n\\n\\t\\t\\tvarying vec3 vOutputDirection;\\n\\n\\t\\t\\tuniform sampler2D envMap;\\n\\t\\t\\tuniform int samples;\\n\\t\\t\\tuniform float weights[ n ];\\n\\t\\t\\tuniform bool latitudinal;\\n\\t\\t\\tuniform float dTheta;\\n\\t\\t\\tuniform float mipInt;\\n\\t\\t\\tuniform vec3 poleAxis;\\n\\n\\t\\t\\t#define ENVMAP_TYPE_CUBE_UV\\n\\t\\t\\t#include <cube_uv_reflection_fragment>\\n\\n\\t\\t\\tvec3 getSample( float theta, vec3 axis ) {\\n\\n\\t\\t\\t\\tfloat cosTheta = cos( theta );\\n\\t\\t\\t\\t// Rodrigues' axis-angle rotation\\n\\t\\t\\t\\tvec3 sampleDirection = vOutputDirection * cosTheta\\n\\t\\t\\t\\t\\t+ cross( axis, vOutputDirection ) * sin( theta )\\n\\t\\t\\t\\t\\t+ axis * dot( axis, vOutputDirection ) * ( 1.0 - cosTheta );\\n\\n\\t\\t\\t\\treturn bilinearCubeUV( envMap, sampleDirection, mipInt );\\n\\n\\t\\t\\t}\\n\\n\\t\\t\\tvoid main() {\\n\\n\\t\\t\\t\\tvec3 axis = latitudinal ? poleAxis : cross( poleAxis, vOutputDirection );\\n\\n\\t\\t\\t\\tif ( all( equal( axis, vec3( 0.0 ) ) ) ) {\\n\\n\\t\\t\\t\\t\\taxis = vec3( vOutputDirection.z, 0.0, - vOutputDirection.x );\\n\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\taxis = normalize( axis );\\n\\n\\t\\t\\t\\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\\n\\t\\t\\t\\tgl_FragColor.rgb += weights[ 0 ] * getSample( 0.0, axis );\\n\\n\\t\\t\\t\\tfor ( int i = 1; i < n; i++ ) {\\n\\n\\t\\t\\t\\t\\tif ( i >= samples ) {\\n\\n\\t\\t\\t\\t\\t\\tbreak;\\n\\n\\t\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t\\tfloat theta = dTheta * float( i );\\n\\t\\t\\t\\t\\tgl_FragColor.rgb += weights[ i ] * getSample( -1.0 * theta, axis );\\n\\t\\t\\t\\t\\tgl_FragColor.rgb += weights[ i ] * getSample( theta, axis );\\n\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t}\\n\\t\\t\",blending:0,depthTest:!1,depthWrite:!1});return a}(i,t,e)}return i}_compileMaterial(t){const e=new ri(this._lodPlanes[0],t);this._renderer.compile(e,Vi)}_sceneToCubeUV(t,e,n,i){const r=new pi(90,1,e,n),a=[1,-1,1,1,1,1],s=[1,1,1,-1,-1,-1],o=this._renderer,l=o.autoClear,c=o.toneMapping;o.getClearColor(Gi),o.toneMapping=0,o.autoClear=!1;const h=new An({name:\"PMREM.Background\",side:1,depthWrite:!1,depthTest:!1}),u=new ri(new si,h);let d=!1;const p=t.background;p?p.isColor&&(h.color.copy(p),t.background=null,d=!0):(h.color.copy(Gi),d=!0);for(let e=0;e<6;e++){const n=e%3;0===n?(r.up.set(0,a[e],0),r.lookAt(s[e],0,0)):1===n?(r.up.set(0,0,a[e]),r.lookAt(0,s[e],0)):(r.up.set(0,a[e],0),r.lookAt(0,0,s[e]));const l=this._cubeSize;Ji(i,n*l,e>2?l:0,l,l),o.setRenderTarget(i),d&&o.render(u,r),o.render(t,r)}u.geometry.dispose(),u.material.dispose(),o.toneMapping=c,o.autoClear=l,t.background=p}_textureToCubeUV(t,e){const n=this._renderer,i=t.mapping===E||t.mapping===y;i?(null===this._cubemapMaterial&&(this._cubemapMaterial=$i()),this._cubemapMaterial.uniforms.flipEnvMap.value=!1===t.isRenderTargetTexture?-1:1):null===this._equirectMaterial&&(this._equirectMaterial=Qi());const r=i?this._cubemapMaterial:this._equirectMaterial,a=new ri(this._lodPlanes[0],r);r.uniforms.envMap.value=t;const s=this._cubeSize;Ji(e,0,0,3*s,2*s),n.setRenderTarget(e),n.render(a,Vi)}_applyPMREM(t){const e=this._renderer,n=e.autoClear;e.autoClear=!1;for(let e=1;e<this._lodPlanes.length;e++){const n=Math.sqrt(this._sigmas[e]*this._sigmas[e]-this._sigmas[e-1]*this._sigmas[e-1]),i=Yi[(e-1)%Yi.length];this._blur(t,e-1,e,n,i)}e.autoClear=n}_blur(t,e,n,i,r){const a=this._pingPongRenderTarget;this._halfBlur(t,a,e,n,i,\"latitudinal\",r),this._halfBlur(a,t,n,n,i,\"longitudinal\",r)}_halfBlur(t,e,n,i,r,a,s){const o=this._renderer,l=this._blurMaterial,c=new ri(this._lodPlanes[i],l),h=l.uniforms,u=this._sizeLods[n]-1,d=isFinite(r)?Math.PI/(2*u):2*Math.PI/39,p=r/d,f=isFinite(r)?1+Math.floor(3*p):Hi,m=[];let g=0;for(let t=0;t<Hi;++t){const e=t/p,n=Math.exp(-e*e/2);m.push(n),0===t?g+=n:t<f&&(g+=2*n)}for(let t=0;t<m.length;t++)m[t]=m[t]/g;h.envMap.value=t.texture,h.samples.value=f,h.weights.value=m,h.latitudinal.value=\"latitudinal\"===a,s&&(h.poleAxis.value=s);const{_lodMax:_}=this;h.dTheta.value=d,h.mipInt.value=_-n;const v=this._sizeLods[i];Ji(e,3*v*(i>_-4?i-_+4:0),4*(this._cubeSize-v),3*v,2*v),o.setRenderTarget(e),o.render(c,Vi)}}function Zi(t,e,n){const i=new $t(t,e,n);return i.texture.mapping=T,i.texture.name=\"PMREM.cubeUv\",i.scissorTest=!0,i}function Ji(t,e,n,i,r){t.viewport.set(e,n,i,r),t.scissor.set(e,n,i,r)}function Qi(){return new ui({name:\"EquirectangularToCubeUV\",uniforms:{envMap:{value:null}},vertexShader:tr(),fragmentShader:\"\\n\\n\\t\\t\\tprecision mediump float;\\n\\t\\t\\tprecision mediump int;\\n\\n\\t\\t\\tvarying vec3 vOutputDirection;\\n\\n\\t\\t\\tuniform sampler2D envMap;\\n\\n\\t\\t\\t#include <common>\\n\\n\\t\\t\\tvoid main() {\\n\\n\\t\\t\\t\\tvec3 outputDirection = normalize( vOutputDirection );\\n\\t\\t\\t\\tvec2 uv = equirectUv( outputDirection );\\n\\n\\t\\t\\t\\tgl_FragColor = vec4( texture2D ( envMap, uv ).rgb, 1.0 );\\n\\n\\t\\t\\t}\\n\\t\\t\",blending:0,depthTest:!1,depthWrite:!1})}function $i(){return new ui({name:\"CubemapToCubeUV\",uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:tr(),fragmentShader:\"\\n\\n\\t\\t\\tprecision mediump float;\\n\\t\\t\\tprecision mediump int;\\n\\n\\t\\t\\tuniform float flipEnvMap;\\n\\n\\t\\t\\tvarying vec3 vOutputDirection;\\n\\n\\t\\t\\tuniform samplerCube envMap;\\n\\n\\t\\t\\tvoid main() {\\n\\n\\t\\t\\t\\tgl_FragColor = textureCube( envMap, vec3( flipEnvMap * vOutputDirection.x, vOutputDirection.yz ) );\\n\\n\\t\\t\\t}\\n\\t\\t\",blending:0,depthTest:!1,depthWrite:!1})}function tr(){return\"\\n\\n\\t\\tprecision mediump float;\\n\\t\\tprecision mediump int;\\n\\n\\t\\tattribute float faceIndex;\\n\\n\\t\\tvarying vec3 vOutputDirection;\\n\\n\\t\\t// RH coordinate system; PMREM face-indexing convention\\n\\t\\tvec3 getDirection( vec2 uv, float face ) {\\n\\n\\t\\t\\tuv = 2.0 * uv - 1.0;\\n\\n\\t\\t\\tvec3 direction = vec3( uv, 1.0 );\\n\\n\\t\\t\\tif ( face == 0.0 ) {\\n\\n\\t\\t\\t\\tdirection = direction.zyx; // ( 1, v, u ) pos x\\n\\n\\t\\t\\t} else if ( face == 1.0 ) {\\n\\n\\t\\t\\t\\tdirection = direction.xzy;\\n\\t\\t\\t\\tdirection.xz *= -1.0; // ( -u, 1, -v ) pos y\\n\\n\\t\\t\\t} else if ( face == 2.0 ) {\\n\\n\\t\\t\\t\\tdirection.x *= -1.0; // ( -u, v, 1 ) pos z\\n\\n\\t\\t\\t} else if ( face == 3.0 ) {\\n\\n\\t\\t\\t\\tdirection = direction.zyx;\\n\\t\\t\\t\\tdirection.xz *= -1.0; // ( -1, v, -u ) neg x\\n\\n\\t\\t\\t} else if ( face == 4.0 ) {\\n\\n\\t\\t\\t\\tdirection = direction.xzy;\\n\\t\\t\\t\\tdirection.xy *= -1.0; // ( -u, -1, v ) neg y\\n\\n\\t\\t\\t} else if ( face == 5.0 ) {\\n\\n\\t\\t\\t\\tdirection.z *= -1.0; // ( u, v, -1 ) neg z\\n\\n\\t\\t\\t}\\n\\n\\t\\t\\treturn direction;\\n\\n\\t\\t}\\n\\n\\t\\tvoid main() {\\n\\n\\t\\t\\tvOutputDirection = getDirection( uv, faceIndex );\\n\\t\\t\\tgl_Position = vec4( position, 1.0 );\\n\\n\\t\\t}\\n\\t\"}function er(t){let e=new WeakMap,n=null;function i(t){const n=t.target;n.removeEventListener(\"dispose\",i);const r=e.get(n);void 0!==r&&(e.delete(n),r.dispose())}return{get:function(r){if(r&&r.isTexture){const a=r.mapping,s=303===a||304===a,o=a===E||a===y;if(s||o){if(r.isRenderTargetTexture&&!0===r.needsPMREMUpdate){r.needsPMREMUpdate=!1;let i=e.get(r);return null===n&&(n=new Ki(t)),i=s?n.fromEquirectangular(r,i):n.fromCubemap(r,i),e.set(r,i),i.texture}if(e.has(r))return e.get(r).texture;{const a=r.image;if(s&&a&&a.height>0||o&&a&&function(t){let e=0;const n=6;for(let i=0;i<n;i++)void 0!==t[i]&&e++;return e===n}(a)){null===n&&(n=new Ki(t));const a=s?n.fromEquirectangular(r):n.fromCubemap(r);return e.set(r,a),r.addEventListener(\"dispose\",i),a.texture}return null}}}return r},dispose:function(){e=new WeakMap,null!==n&&(n.dispose(),n=null)}}}function nr(t){const e={};function n(n){if(void 0!==e[n])return e[n];let i;switch(n){case\"WEBGL_depth_texture\":i=t.getExtension(\"WEBGL_depth_texture\")||t.getExtension(\"MOZ_WEBGL_depth_texture\")||t.getExtension(\"WEBKIT_WEBGL_depth_texture\");break;case\"EXT_texture_filter_anisotropic\":i=t.getExtension(\"EXT_texture_filter_anisotropic\")||t.getExtension(\"MOZ_EXT_texture_filter_anisotropic\")||t.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\");break;case\"WEBGL_compressed_texture_s3tc\":i=t.getExtension(\"WEBGL_compressed_texture_s3tc\")||t.getExtension(\"MOZ_WEBGL_compressed_texture_s3tc\")||t.getExtension(\"WEBKIT_WEBGL_compressed_texture_s3tc\");break;case\"WEBGL_compressed_texture_pvrtc\":i=t.getExtension(\"WEBGL_compressed_texture_pvrtc\")||t.getExtension(\"WEBKIT_WEBGL_compressed_texture_pvrtc\");break;default:i=t.getExtension(n)}return e[n]=i,i}return{has:function(t){return null!==n(t)},init:function(t){t.isWebGL2?(n(\"EXT_color_buffer_float\"),n(\"WEBGL_clip_cull_distance\")):(n(\"WEBGL_depth_texture\"),n(\"OES_texture_float\"),n(\"OES_texture_half_float\"),n(\"OES_texture_half_float_linear\"),n(\"OES_standard_derivatives\"),n(\"OES_element_index_uint\"),n(\"OES_vertex_array_object\"),n(\"ANGLE_instanced_arrays\")),n(\"OES_texture_float_linear\"),n(\"EXT_color_buffer_half_float\"),n(\"WEBGL_multisampled_render_to_texture\")},get:function(t){const e=n(t);return e}}}function ir(t,e,n,i){const r={},a=new WeakMap;function s(t){const o=t.target;null!==o.index&&e.remove(o.index);for(const t in o.attributes)e.remove(o.attributes[t]);for(const t in o.morphAttributes){const n=o.morphAttributes[t];for(let t=0,i=n.length;t<i;t++)e.remove(n[t])}o.removeEventListener(\"dispose\",s),delete r[o.id];const l=a.get(o);l&&(e.remove(l),a.delete(o)),i.releaseStatesOfGeometry(o),!0===o.isInstancedBufferGeometry&&delete o._maxInstanceCount,n.memory.geometries--}function o(t){const n=[],i=t.index,r=t.attributes.position;let s=0;if(null!==i){const t=i.array;s=i.version;for(let e=0,i=t.length;e<i;e+=3){const i=t[e+0],r=t[e+1],a=t[e+2];n.push(i,r,r,a,a,i)}}else{if(void 0===r)return;{const t=r.array;s=r.version;for(let e=0,i=t.length/3-1;e<i;e+=3){const t=e+0,i=e+1,r=e+2;n.push(t,i,i,r,r,t)}}}const o=new(Ut(n)?Pn:Ln)(n,1);o.version=s;const l=a.get(t);l&&e.remove(l),a.set(t,o)}return{get:function(t,e){return!0===r[e.id]||(e.addEventListener(\"dispose\",s),r[e.id]=!0,n.memory.geometries++),e},update:function(n){const i=n.attributes;for(const n in i)e.update(i[n],t.ARRAY_BUFFER);const r=n.morphAttributes;for(const n in r){const i=r[n];for(let n=0,r=i.length;n<r;n++)e.update(i[n],t.ARRAY_BUFFER)}},getWireframeAttribute:function(t){const e=a.get(t);if(e){const n=t.index;null!==n&&e.version<n.version&&o(t)}else o(t);return a.get(t)}}}function rr(t,e,n,i){const r=i.isWebGL2;let a,s,o;this.setMode=function(t){a=t},this.setIndex=function(t){s=t.type,o=t.bytesPerElement},this.render=function(e,i){t.drawElements(a,i,s,e*o),n.update(i,a,1)},this.renderInstances=function(i,l,c){if(0===c)return;let h,u;if(r)h=t,u=\"drawElementsInstanced\";else if(h=e.get(\"ANGLE_instanced_arrays\"),u=\"drawElementsInstancedANGLE\",null===h)return;h[u](a,l,s,i*o,c),n.update(l,a,c)},this.renderMultiDraw=function(t,i,r){if(0===r)return;const l=e.get(\"WEBGL_multi_draw\");if(null===l)for(let e=0;e<r;e++)this.render(t[e]/o,i[e]);else{l.multiDrawElementsWEBGL(a,i,0,s,t,0,r);let e=0;for(let t=0;t<r;t++)e+=i[t];n.update(e,a,1)}}}function ar(t){const e={frame:0,calls:0,triangles:0,points:0,lines:0};return{memory:{geometries:0,textures:0},render:e,programs:null,autoReset:!0,reset:function(){e.calls=0,e.triangles=0,e.points=0,e.lines=0},update:function(n,i,r){switch(e.calls++,i){case t.TRIANGLES:e.triangles+=r*(n/3);break;case t.LINES:e.lines+=r*(n/2);break;case t.LINE_STRIP:e.lines+=r*(n-1);break;case t.LINE_LOOP:e.lines+=r*n;break;case t.POINTS:e.points+=r*n}}}}function sr(t,e){return t[0]-e[0]}function or(t,e){return Math.abs(e[1])-Math.abs(t[1])}function lr(t,e,n){const i={},r=new Float32Array(8),a=new WeakMap,s=new Jt,o=[];for(let t=0;t<8;t++)o[t]=[t,0];return{update:function(l,c,h){const u=l.morphTargetInfluences;if(!0===e.isWebGL2){const d=c.morphAttributes.position||c.morphAttributes.normal||c.morphAttributes.color,p=void 0!==d?d.length:0;let f=a.get(c);if(void 0===f||f.count!==p){void 0!==f&&f.texture.dispose();const _=void 0!==c.morphAttributes.position,v=void 0!==c.morphAttributes.normal,x=void 0!==c.morphAttributes.color,M=c.morphAttributes.position||[],S=c.morphAttributes.normal||[],E=c.morphAttributes.color||[];let y=0;!0===_&&(y=1),!0===v&&(y=2),!0===x&&(y=3);let T=c.attributes.position.count*y,b=1;T>e.maxTextureSize&&(b=Math.ceil(T/e.maxTextureSize),T=e.maxTextureSize);const A=new Float32Array(T*b*4*p),w=new te(A,T,b,p);w.type=B,w.needsUpdate=!0;const R=4*y;for(let L=0;L<p;L++){const P=M[L],U=S[L],D=E[L],N=T*b*4*L;for(let I=0;I<P.count;I++){const O=I*R;!0===_&&(s.fromBufferAttribute(P,I),A[N+O+0]=s.x,A[N+O+1]=s.y,A[N+O+2]=s.z,A[N+O+3]=0),!0===v&&(s.fromBufferAttribute(U,I),A[N+O+4]=s.x,A[N+O+5]=s.y,A[N+O+6]=s.z,A[N+O+7]=0),!0===x&&(s.fromBufferAttribute(D,I),A[N+O+8]=s.x,A[N+O+9]=s.y,A[N+O+10]=s.z,A[N+O+11]=4===D.itemSize?s.w:1)}}function C(){w.dispose(),a.delete(c),c.removeEventListener(\"dispose\",C)}f={count:p,texture:w,size:new Ct(T,b)},a.set(c,f),c.addEventListener(\"dispose\",C)}let m=0;for(let F=0;F<u.length;F++)m+=u[F];const g=c.morphTargetsRelative?1:1-m;h.getUniforms().setValue(t,\"morphTargetBaseInfluence\",g),h.getUniforms().setValue(t,\"morphTargetInfluences\",u),h.getUniforms().setValue(t,\"morphTargetsTexture\",f.texture,n),h.getUniforms().setValue(t,\"morphTargetsTextureSize\",f.size)}else{const z=void 0===u?0:u.length;let H=i[c.id];if(void 0===H||H.length!==z){H=[];for(let X=0;X<z;X++)H[X]=[X,0];i[c.id]=H}for(let q=0;q<z;q++){const j=H[q];j[0]=q,j[1]=u[q]}H.sort(or);for(let Y=0;Y<8;Y++)Y<z&&H[Y][1]?(o[Y][0]=H[Y][0],o[Y][1]=H[Y][1]):(o[Y][0]=Number.MAX_SAFE_INTEGER,o[Y][1]=0);o.sort(sr);const V=c.morphAttributes.position,G=c.morphAttributes.normal;let k=0;for(let K=0;K<8;K++){const Z=o[K],J=Z[0],Q=Z[1];J!==Number.MAX_SAFE_INTEGER&&Q?(V&&c.getAttribute(\"morphTarget\"+K)!==V[J]&&c.setAttribute(\"morphTarget\"+K,V[J]),G&&c.getAttribute(\"morphNormal\"+K)!==G[J]&&c.setAttribute(\"morphNormal\"+K,G[J]),r[K]=Q,k+=Q):(V&&!0===c.hasAttribute(\"morphTarget\"+K)&&c.deleteAttribute(\"morphTarget\"+K),G&&!0===c.hasAttribute(\"morphNormal\"+K)&&c.deleteAttribute(\"morphNormal\"+K),r[K]=0)}const W=c.morphTargetsRelative?1:1-k;h.getUniforms().setValue(t,\"morphTargetBaseInfluence\",W),h.getUniforms().setValue(t,\"morphTargetInfluences\",r)}}}}function cr(t,e,n,i){let r=new WeakMap;function a(t){const e=t.target;e.removeEventListener(\"dispose\",a),n.remove(e.instanceMatrix),null!==e.instanceColor&&n.remove(e.instanceColor)}return{update:function(s){const o=i.render.frame,l=s.geometry,c=e.get(s,l);if(r.get(c)!==o&&(e.update(c),r.set(c,o)),s.isInstancedMesh&&(!1===s.hasEventListener(\"dispose\",a)&&s.addEventListener(\"dispose\",a),r.get(s)!==o&&(n.update(s.instanceMatrix,t.ARRAY_BUFFER),null!==s.instanceColor&&n.update(s.instanceColor,t.ARRAY_BUFFER),r.set(s,o))),s.isSkinnedMesh){const t=s.skeleton;r.get(t)!==o&&(t.update(),r.set(t,o))}return c},dispose:function(){r=new WeakMap}}}class hr extends Zt{constructor(t,e,n,i,r,a,s,o,l,c){if((c=void 0!==c?c:G)!==G&&c!==k)throw new Error(\"DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat\");void 0===n&&c===G&&(n=F),void 0===n&&c===k&&(n=H),super(null,i,r,a,s,o,c,n,l),this.isDepthTexture=!0,this.image={width:t,height:e},this.magFilter=void 0!==s?s:R,this.minFilter=void 0!==o?o:R,this.flipY=!1,this.generateMipmaps=!1,this.compareFunction=null}copy(t){return super.copy(t),this.compareFunction=t.compareFunction,this}toJSON(t){const e=super.toJSON(t);return null!==this.compareFunction&&(e.compareFunction=this.compareFunction),e}}const ur=new Zt,dr=new hr(1,1);dr.compareFunction=515;const pr=new te,fr=new ee,mr=new gi,gr=[],_r=[],vr=new Float32Array(16),xr=new Float32Array(9),Mr=new Float32Array(4);function Sr(t,e,n){const i=t[0];if(i<=0||i>0)return t;const r=e*n;let a=gr[r];if(void 0===a&&(a=new Float32Array(r),gr[r]=a),0!==e){i.toArray(a,0);for(let i=1,r=0;i!==e;++i)r+=n,t[i].toArray(a,r)}return a}function Er(t,e){if(t.length!==e.length)return!1;for(let n=0,i=t.length;n<i;n++)if(t[n]!==e[n])return!1;return!0}function yr(t,e){for(let n=0,i=e.length;n<i;n++)t[n]=e[n]}function Tr(t,e){let n=_r[e];void 0===n&&(n=new Int32Array(e),_r[e]=n);for(let i=0;i!==e;++i)n[i]=t.allocateTextureUnit();return n}function br(t,e){const n=this.cache;n[0]!==e&&(t.uniform1f(this.addr,e),n[0]=e)}function Ar(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y||(t.uniform2f(this.addr,e.x,e.y),n[0]=e.x,n[1]=e.y);else{if(Er(n,e))return;t.uniform2fv(this.addr,e),yr(n,e)}}function wr(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z||(t.uniform3f(this.addr,e.x,e.y,e.z),n[0]=e.x,n[1]=e.y,n[2]=e.z);else if(void 0!==e.r)n[0]===e.r&&n[1]===e.g&&n[2]===e.b||(t.uniform3f(this.addr,e.r,e.g,e.b),n[0]=e.r,n[1]=e.g,n[2]=e.b);else{if(Er(n,e))return;t.uniform3fv(this.addr,e),yr(n,e)}}function Rr(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z&&n[3]===e.w||(t.uniform4f(this.addr,e.x,e.y,e.z,e.w),n[0]=e.x,n[1]=e.y,n[2]=e.z,n[3]=e.w);else{if(Er(n,e))return;t.uniform4fv(this.addr,e),yr(n,e)}}function Cr(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(Er(n,e))return;t.uniformMatrix2fv(this.addr,!1,e),yr(n,e)}else{if(Er(n,i))return;Mr.set(i),t.uniformMatrix2fv(this.addr,!1,Mr),yr(n,i)}}function Lr(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(Er(n,e))return;t.uniformMatrix3fv(this.addr,!1,e),yr(n,e)}else{if(Er(n,i))return;xr.set(i),t.uniformMatrix3fv(this.addr,!1,xr),yr(n,i)}}function Pr(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(Er(n,e))return;t.uniformMatrix4fv(this.addr,!1,e),yr(n,e)}else{if(Er(n,i))return;vr.set(i),t.uniformMatrix4fv(this.addr,!1,vr),yr(n,i)}}function Ur(t,e){const n=this.cache;n[0]!==e&&(t.uniform1i(this.addr,e),n[0]=e)}function Dr(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y||(t.uniform2i(this.addr,e.x,e.y),n[0]=e.x,n[1]=e.y);else{if(Er(n,e))return;t.uniform2iv(this.addr,e),yr(n,e)}}function Nr(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z||(t.uniform3i(this.addr,e.x,e.y,e.z),n[0]=e.x,n[1]=e.y,n[2]=e.z);else{if(Er(n,e))return;t.uniform3iv(this.addr,e),yr(n,e)}}function Ir(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z&&n[3]===e.w||(t.uniform4i(this.addr,e.x,e.y,e.z,e.w),n[0]=e.x,n[1]=e.y,n[2]=e.z,n[3]=e.w);else{if(Er(n,e))return;t.uniform4iv(this.addr,e),yr(n,e)}}function Or(t,e){const n=this.cache;n[0]!==e&&(t.uniform1ui(this.addr,e),n[0]=e)}function Fr(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y||(t.uniform2ui(this.addr,e.x,e.y),n[0]=e.x,n[1]=e.y);else{if(Er(n,e))return;t.uniform2uiv(this.addr,e),yr(n,e)}}function Br(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z||(t.uniform3ui(this.addr,e.x,e.y,e.z),n[0]=e.x,n[1]=e.y,n[2]=e.z);else{if(Er(n,e))return;t.uniform3uiv(this.addr,e),yr(n,e)}}function zr(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z&&n[3]===e.w||(t.uniform4ui(this.addr,e.x,e.y,e.z,e.w),n[0]=e.x,n[1]=e.y,n[2]=e.z,n[3]=e.w);else{if(Er(n,e))return;t.uniform4uiv(this.addr,e),yr(n,e)}}function Hr(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r);const a=this.type===t.SAMPLER_2D_SHADOW?dr:ur;n.setTexture2D(e||a,r)}function Vr(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTexture3D(e||fr,r)}function Gr(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTextureCube(e||mr,r)}function kr(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTexture2DArray(e||pr,r)}function Wr(t,e){t.uniform1fv(this.addr,e)}function Xr(t,e){const n=Sr(e,this.size,2);t.uniform2fv(this.addr,n)}function qr(t,e){const n=Sr(e,this.size,3);t.uniform3fv(this.addr,n)}function jr(t,e){const n=Sr(e,this.size,4);t.uniform4fv(this.addr,n)}function Yr(t,e){const n=Sr(e,this.size,4);t.uniformMatrix2fv(this.addr,!1,n)}function Kr(t,e){const n=Sr(e,this.size,9);t.uniformMatrix3fv(this.addr,!1,n)}function Zr(t,e){const n=Sr(e,this.size,16);t.uniformMatrix4fv(this.addr,!1,n)}function Jr(t,e){t.uniform1iv(this.addr,e)}function Qr(t,e){t.uniform2iv(this.addr,e)}function $r(t,e){t.uniform3iv(this.addr,e)}function ta(t,e){t.uniform4iv(this.addr,e)}function ea(t,e){t.uniform1uiv(this.addr,e)}function na(t,e){t.uniform2uiv(this.addr,e)}function ia(t,e){t.uniform3uiv(this.addr,e)}function ra(t,e){t.uniform4uiv(this.addr,e)}function aa(t,e,n){const i=this.cache,r=e.length,a=Tr(n,r);Er(i,a)||(t.uniform1iv(this.addr,a),yr(i,a));for(let t=0;t!==r;++t)n.setTexture2D(e[t]||ur,a[t])}function sa(t,e,n){const i=this.cache,r=e.length,a=Tr(n,r);Er(i,a)||(t.uniform1iv(this.addr,a),yr(i,a));for(let t=0;t!==r;++t)n.setTexture3D(e[t]||fr,a[t])}function oa(t,e,n){const i=this.cache,r=e.length,a=Tr(n,r);Er(i,a)||(t.uniform1iv(this.addr,a),yr(i,a));for(let t=0;t!==r;++t)n.setTextureCube(e[t]||mr,a[t])}function la(t,e,n){const i=this.cache,r=e.length,a=Tr(n,r);Er(i,a)||(t.uniform1iv(this.addr,a),yr(i,a));for(let t=0;t!==r;++t)n.setTexture2DArray(e[t]||pr,a[t])}class ca{constructor(t,e,n){this.id=t,this.addr=n,this.cache=[],this.type=e.type,this.setValue=function(t){switch(t){case 5126:return br;case 35664:return Ar;case 35665:return wr;case 35666:return Rr;case 35674:return Cr;case 35675:return Lr;case 35676:return Pr;case 5124:case 35670:return Ur;case 35667:case 35671:return Dr;case 35668:case 35672:return Nr;case 35669:case 35673:return Ir;case 5125:return Or;case 36294:return Fr;case 36295:return Br;case 36296:return zr;case 35678:case 36198:case 36298:case 36306:case 35682:return Hr;case 35679:case 36299:case 36307:return Vr;case 35680:case 36300:case 36308:case 36293:return Gr;case 36289:case 36303:case 36311:case 36292:return kr}}(e.type)}}class ha{constructor(t,e,n){this.id=t,this.addr=n,this.cache=[],this.type=e.type,this.size=e.size,this.setValue=function(t){switch(t){case 5126:return Wr;case 35664:return Xr;case 35665:return qr;case 35666:return jr;case 35674:return Yr;case 35675:return Kr;case 35676:return Zr;case 5124:case 35670:return Jr;case 35667:case 35671:return Qr;case 35668:case 35672:return $r;case 35669:case 35673:return ta;case 5125:return ea;case 36294:return na;case 36295:return ia;case 36296:return ra;case 35678:case 36198:case 36298:case 36306:case 35682:return aa;case 35679:case 36299:case 36307:return sa;case 35680:case 36300:case 36308:case 36293:return oa;case 36289:case 36303:case 36311:case 36292:return la}}(e.type)}}class ua{constructor(t){this.id=t,this.seq=[],this.map={}}setValue(t,e,n){const i=this.seq;for(let r=0,a=i.length;r!==a;++r){const a=i[r];a.setValue(t,e[a.id],n)}}}const da=/(\\w+)(\\])?(\\[|\\.)?/g;function pa(t,e){t.seq.push(e),t.map[e.id]=e}function fa(t,e,n){const i=t.name,r=i.length;for(da.lastIndex=0;;){const a=da.exec(i),s=da.lastIndex;let o=a[1];const l=\"]\"===a[2],c=a[3];if(l&&(o|=0),void 0===c||\"[\"===c&&s+2===r){pa(n,void 0===c?new ca(o,t,e):new ha(o,t,e));break}{let t=n.map[o];void 0===t&&(t=new ua(o),pa(n,t)),n=t}}}class ma{constructor(t,e){this.seq=[],this.map={};const n=t.getProgramParameter(e,t.ACTIVE_UNIFORMS);for(let i=0;i<n;++i){const n=t.getActiveUniform(e,i);fa(n,t.getUniformLocation(e,n.name),this)}}setValue(t,e,n,i){const r=this.map[e];void 0!==r&&r.setValue(t,n,i)}setOptional(t,e,n){const i=e[n];void 0!==i&&this.setValue(t,n,i)}static upload(t,e,n,i){for(let r=0,a=e.length;r!==a;++r){const a=e[r],s=n[a.id];!1!==s.needsUpdate&&a.setValue(t,s.value,i)}}static seqWithValue(t,e){const n=[];for(let i=0,r=t.length;i!==r;++i){const r=t[i];r.id in e&&n.push(r)}return n}}function ga(t,e,n){const i=t.createShader(e);return t.shaderSource(i,n),t.compileShader(i),i}let _a=0;function va(t,e,n){const i=t.getShaderParameter(e,t.COMPILE_STATUS),r=t.getShaderInfoLog(e).trim();if(i&&\"\"===r)return\"\";const a=/ERROR: 0:(\\d+)/.exec(r);if(a){const i=parseInt(a[1]);return n.toUpperCase()+\"\\n\\n\"+r+\"\\n\\n\"+function(t,e){const n=t.split(\"\\n\"),i=[],r=Math.max(e-6,0),a=Math.min(e+6,n.length);for(let t=r;t<a;t++){const r=t+1;i.push(`${r===e?\">\":\" \"} ${r}: ${n[t]}`)}return i.join(\"\\n\")}(t.getShaderSource(e),i)}return r}function xa(t,e){const n=function(t){const e=Vt.getPrimaries(Vt.workingColorSpace),n=Vt.getPrimaries(t);let i;switch(e===n?i=\"\":e===rt&&n===it?i=\"LinearDisplayP3ToLinearSRGB\":e===it&&n===rt&&(i=\"LinearSRGBToLinearDisplayP3\"),t){case Q:case tt:return[i,\"LinearTransferOETF\"];case J:case $:return[i,\"sRGBTransferOETF\"];default:return[i,\"LinearTransferOETF\"]}}(e);return`vec4 ${t}( vec4 value ) { return ${n[0]}( ${n[1]}( value ) ); }`}function Ma(t,e){let n;switch(e){case 1:default:n=\"Linear\";break;case 2:n=\"Reinhard\";break;case 3:n=\"OptimizedCineon\";break;case 4:n=\"ACESFilmic\";break;case 6:n=\"AgX\";break;case 5:n=\"Custom\"}return\"vec3 \"+t+\"( vec3 color ) { return \"+n+\"ToneMapping( color ); }\"}function Sa(t){return\"\"!==t}function Ea(t,e){const n=e.numSpotLightShadows+e.numSpotLightMaps-e.numSpotLightShadowsWithMaps;return t.replace(/NUM_DIR_LIGHTS/g,e.numDirLights).replace(/NUM_SPOT_LIGHTS/g,e.numSpotLights).replace(/NUM_SPOT_LIGHT_MAPS/g,e.numSpotLightMaps).replace(/NUM_SPOT_LIGHT_COORDS/g,n).replace(/NUM_RECT_AREA_LIGHTS/g,e.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,e.numPointLights).replace(/NUM_HEMI_LIGHTS/g,e.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,e.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS/g,e.numSpotLightShadowsWithMaps).replace(/NUM_SPOT_LIGHT_SHADOWS/g,e.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,e.numPointLightShadows)}function ya(t,e){return t.replace(/NUM_CLIPPING_PLANES/g,e.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,e.numClippingPlanes-e.numClipIntersection)}const Ta=/^[ \\t]*#include +<([\\w\\d./]+)>/gm;function ba(t){return t.replace(Ta,wa)}const Aa=new Map([[\"encodings_fragment\",\"colorspace_fragment\"],[\"encodings_pars_fragment\",\"colorspace_pars_fragment\"],[\"output_fragment\",\"opaque_fragment\"]]);function wa(t,e){let n=Ri[e];if(void 0===n){const t=Aa.get(e);if(void 0===t)throw new Error(\"Can not resolve #include <\"+e+\">\");n=Ri[t]}return ba(n)}const Ra=/#pragma unroll_loop_start\\s+for\\s*\\(\\s*int\\s+i\\s*=\\s*(\\d+)\\s*;\\s*i\\s*<\\s*(\\d+)\\s*;\\s*i\\s*\\+\\+\\s*\\)\\s*{([\\s\\S]+?)}\\s+#pragma unroll_loop_end/g;function Ca(t){return t.replace(Ra,La)}function La(t,e,n,i){let r=\"\";for(let t=parseInt(e);t<parseInt(n);t++)r+=i.replace(/\\[\\s*i\\s*\\]/g,\"[ \"+t+\" ]\").replace(/UNROLLED_LOOP_INDEX/g,t);return r}function Pa(t){let e=\"precision \"+t.precision+\" float;\\nprecision \"+t.precision+\" int;\";return\"highp\"===t.precision?e+=\"\\n#define HIGH_PRECISION\":\"mediump\"===t.precision?e+=\"\\n#define MEDIUM_PRECISION\":\"lowp\"===t.precision&&(e+=\"\\n#define LOW_PRECISION\"),e}function Ua(t,e,n,i){const r=t.getContext(),a=n.defines;let s=n.vertexShader,o=n.fragmentShader;const l=function(t){let e=\"SHADOWMAP_TYPE_BASIC\";return 1===t.shadowMapType?e=\"SHADOWMAP_TYPE_PCF\":2===t.shadowMapType?e=\"SHADOWMAP_TYPE_PCF_SOFT\":3===t.shadowMapType&&(e=\"SHADOWMAP_TYPE_VSM\"),e}(n),c=function(t){let e=\"ENVMAP_TYPE_CUBE\";if(t.envMap)switch(t.envMapMode){case E:case y:e=\"ENVMAP_TYPE_CUBE\";break;case T:e=\"ENVMAP_TYPE_CUBE_UV\"}return e}(n),h=function(t){let e=\"ENVMAP_MODE_REFLECTION\";t.envMap&&t.envMapMode===y&&(e=\"ENVMAP_MODE_REFRACTION\");return e}(n),u=function(t){let e=\"ENVMAP_BLENDING_NONE\";if(t.envMap)switch(t.combine){case 0:e=\"ENVMAP_BLENDING_MULTIPLY\";break;case 1:e=\"ENVMAP_BLENDING_MIX\";break;case 2:e=\"ENVMAP_BLENDING_ADD\"}return e}(n),d=function(t){const e=t.envMapCubeUVHeight;if(null===e)return null;const n=Math.log2(e)-2,i=1/e;return{texelWidth:1/(3*Math.max(Math.pow(2,n),112)),texelHeight:i,maxMip:n}}(n),p=n.isWebGL2?\"\":function(t){return[t.extensionDerivatives||t.envMapCubeUVHeight||t.bumpMap||t.normalMapTangentSpace||t.clearcoatNormalMap||t.flatShading||\"physical\"===t.shaderID?\"#extension GL_OES_standard_derivatives : enable\":\"\",(t.extensionFragDepth||t.logarithmicDepthBuffer)&&t.rendererExtensionFragDepth?\"#extension GL_EXT_frag_depth : enable\":\"\",t.extensionDrawBuffers&&t.rendererExtensionDrawBuffers?\"#extension GL_EXT_draw_buffers : require\":\"\",(t.extensionShaderTextureLOD||t.envMap||t.transmission)&&t.rendererExtensionShaderTextureLod?\"#extension GL_EXT_shader_texture_lod : enable\":\"\"].filter(Sa).join(\"\\n\")}(n),f=function(t){return[t.extensionClipCullDistance?\"#extension GL_ANGLE_clip_cull_distance : require\":\"\"].filter(Sa).join(\"\\n\")}(n),m=function(t){const e=[];for(const n in t){const i=t[n];!1!==i&&e.push(\"#define \"+n+\" \"+i)}return e.join(\"\\n\")}(a),g=r.createProgram();let _,v,x=n.glslVersion?\"#version \"+n.glslVersion+\"\\n\":\"\";n.isRawShaderMaterial?(_=[\"#define SHADER_TYPE \"+n.shaderType,\"#define SHADER_NAME \"+n.shaderName,m].filter(Sa).join(\"\\n\"),_.length>0&&(_+=\"\\n\"),v=[p,\"#define SHADER_TYPE \"+n.shaderType,\"#define SHADER_NAME \"+n.shaderName,m].filter(Sa).join(\"\\n\"),v.length>0&&(v+=\"\\n\")):(_=[Pa(n),\"#define SHADER_TYPE \"+n.shaderType,\"#define SHADER_NAME \"+n.shaderName,m,n.extensionClipCullDistance?\"#define USE_CLIP_DISTANCE\":\"\",n.batching?\"#define USE_BATCHING\":\"\",n.instancing?\"#define USE_INSTANCING\":\"\",n.instancingColor?\"#define USE_INSTANCING_COLOR\":\"\",n.useFog&&n.fog?\"#define USE_FOG\":\"\",n.useFog&&n.fogExp2?\"#define FOG_EXP2\":\"\",n.map?\"#define USE_MAP\":\"\",n.envMap?\"#define USE_ENVMAP\":\"\",n.envMap?\"#define \"+h:\"\",n.lightMap?\"#define USE_LIGHTMAP\":\"\",n.aoMap?\"#define USE_AOMAP\":\"\",n.bumpMap?\"#define USE_BUMPMAP\":\"\",n.normalMap?\"#define USE_NORMALMAP\":\"\",n.normalMapObjectSpace?\"#define USE_NORMALMAP_OBJECTSPACE\":\"\",n.normalMapTangentSpace?\"#define USE_NORMALMAP_TANGENTSPACE\":\"\",n.displacementMap?\"#define USE_DISPLACEMENTMAP\":\"\",n.emissiveMap?\"#define USE_EMISSIVEMAP\":\"\",n.anisotropy?\"#define USE_ANISOTROPY\":\"\",n.anisotropyMap?\"#define USE_ANISOTROPYMAP\":\"\",n.clearcoatMap?\"#define USE_CLEARCOATMAP\":\"\",n.clearcoatRoughnessMap?\"#define USE_CLEARCOAT_ROUGHNESSMAP\":\"\",n.clearcoatNormalMap?\"#define USE_CLEARCOAT_NORMALMAP\":\"\",n.iridescenceMap?\"#define USE_IRIDESCENCEMAP\":\"\",n.iridescenceThicknessMap?\"#define USE_IRIDESCENCE_THICKNESSMAP\":\"\",n.specularMap?\"#define USE_SPECULARMAP\":\"\",n.specularColorMap?\"#define USE_SPECULAR_COLORMAP\":\"\",n.specularIntensityMap?\"#define USE_SPECULAR_INTENSITYMAP\":\"\",n.roughnessMap?\"#define USE_ROUGHNESSMAP\":\"\",n.metalnessMap?\"#define USE_METALNESSMAP\":\"\",n.alphaMap?\"#define USE_ALPHAMAP\":\"\",n.alphaHash?\"#define USE_ALPHAHASH\":\"\",n.transmission?\"#define USE_TRANSMISSION\":\"\",n.transmissionMap?\"#define USE_TRANSMISSIONMAP\":\"\",n.thicknessMap?\"#define USE_THICKNESSMAP\":\"\",n.sheenColorMap?\"#define USE_SHEEN_COLORMAP\":\"\",n.sheenRoughnessMap?\"#define USE_SHEEN_ROUGHNESSMAP\":\"\",n.mapUv?\"#define MAP_UV \"+n.mapUv:\"\",n.alphaMapUv?\"#define ALPHAMAP_UV \"+n.alphaMapUv:\"\",n.lightMapUv?\"#define LIGHTMAP_UV \"+n.lightMapUv:\"\",n.aoMapUv?\"#define AOMAP_UV \"+n.aoMapUv:\"\",n.emissiveMapUv?\"#define EMISSIVEMAP_UV \"+n.emissiveMapUv:\"\",n.bumpMapUv?\"#define BUMPMAP_UV \"+n.bumpMapUv:\"\",n.normalMapUv?\"#define NORMALMAP_UV \"+n.normalMapUv:\"\",n.displacementMapUv?\"#define DISPLACEMENTMAP_UV \"+n.displacementMapUv:\"\",n.metalnessMapUv?\"#define METALNESSMAP_UV \"+n.metalnessMapUv:\"\",n.roughnessMapUv?\"#define ROUGHNESSMAP_UV \"+n.roughnessMapUv:\"\",n.anisotropyMapUv?\"#define ANISOTROPYMAP_UV \"+n.anisotropyMapUv:\"\",n.clearcoatMapUv?\"#define CLEARCOATMAP_UV \"+n.clearcoatMapUv:\"\",n.clearcoatNormalMapUv?\"#define CLEARCOAT_NORMALMAP_UV \"+n.clearcoatNormalMapUv:\"\",n.clearcoatRoughnessMapUv?\"#define CLEARCOAT_ROUGHNESSMAP_UV \"+n.clearcoatRoughnessMapUv:\"\",n.iridescenceMapUv?\"#define IRIDESCENCEMAP_UV \"+n.iridescenceMapUv:\"\",n.iridescenceThicknessMapUv?\"#define IRIDESCENCE_THICKNESSMAP_UV \"+n.iridescenceThicknessMapUv:\"\",n.sheenColorMapUv?\"#define SHEEN_COLORMAP_UV \"+n.sheenColorMapUv:\"\",n.sheenRoughnessMapUv?\"#define SHEEN_ROUGHNESSMAP_UV \"+n.sheenRoughnessMapUv:\"\",n.specularMapUv?\"#define SPECULARMAP_UV \"+n.specularMapUv:\"\",n.specularColorMapUv?\"#define SPECULAR_COLORMAP_UV \"+n.specularColorMapUv:\"\",n.specularIntensityMapUv?\"#define SPECULAR_INTENSITYMAP_UV \"+n.specularIntensityMapUv:\"\",n.transmissionMapUv?\"#define TRANSMISSIONMAP_UV \"+n.transmissionMapUv:\"\",n.thicknessMapUv?\"#define THICKNESSMAP_UV \"+n.thicknessMapUv:\"\",n.vertexTangents&&!1===n.flatShading?\"#define USE_TANGENT\":\"\",n.vertexColors?\"#define USE_COLOR\":\"\",n.vertexAlphas?\"#define USE_COLOR_ALPHA\":\"\",n.vertexUv1s?\"#define USE_UV1\":\"\",n.vertexUv2s?\"#define USE_UV2\":\"\",n.vertexUv3s?\"#define USE_UV3\":\"\",n.pointsUvs?\"#define USE_POINTS_UV\":\"\",n.flatShading?\"#define FLAT_SHADED\":\"\",n.skinning?\"#define USE_SKINNING\":\"\",n.morphTargets?\"#define USE_MORPHTARGETS\":\"\",n.morphNormals&&!1===n.flatShading?\"#define USE_MORPHNORMALS\":\"\",n.morphColors&&n.isWebGL2?\"#define USE_MORPHCOLORS\":\"\",n.morphTargetsCount>0&&n.isWebGL2?\"#define MORPHTARGETS_TEXTURE\":\"\",n.morphTargetsCount>0&&n.isWebGL2?\"#define MORPHTARGETS_TEXTURE_STRIDE \"+n.morphTextureStride:\"\",n.morphTargetsCount>0&&n.isWebGL2?\"#define MORPHTARGETS_COUNT \"+n.morphTargetsCount:\"\",n.doubleSided?\"#define DOUBLE_SIDED\":\"\",n.flipSided?\"#define FLIP_SIDED\":\"\",n.shadowMapEnabled?\"#define USE_SHADOWMAP\":\"\",n.shadowMapEnabled?\"#define \"+l:\"\",n.sizeAttenuation?\"#define USE_SIZEATTENUATION\":\"\",n.numLightProbes>0?\"#define USE_LIGHT_PROBES\":\"\",n.useLegacyLights?\"#define LEGACY_LIGHTS\":\"\",n.logarithmicDepthBuffer?\"#define USE_LOGDEPTHBUF\":\"\",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?\"#define USE_LOGDEPTHBUF_EXT\":\"\",\"uniform mat4 modelMatrix;\",\"uniform mat4 modelViewMatrix;\",\"uniform mat4 projectionMatrix;\",\"uniform mat4 viewMatrix;\",\"uniform mat3 normalMatrix;\",\"uniform vec3 cameraPosition;\",\"uniform bool isOrthographic;\",\"#ifdef USE_INSTANCING\",\"\\tattribute mat4 instanceMatrix;\",\"#endif\",\"#ifdef USE_INSTANCING_COLOR\",\"\\tattribute vec3 instanceColor;\",\"#endif\",\"attribute vec3 position;\",\"attribute vec3 normal;\",\"attribute vec2 uv;\",\"#ifdef USE_UV1\",\"\\tattribute vec2 uv1;\",\"#endif\",\"#ifdef USE_UV2\",\"\\tattribute vec2 uv2;\",\"#endif\",\"#ifdef USE_UV3\",\"\\tattribute vec2 uv3;\",\"#endif\",\"#ifdef USE_TANGENT\",\"\\tattribute vec4 tangent;\",\"#endif\",\"#if defined( USE_COLOR_ALPHA )\",\"\\tattribute vec4 color;\",\"#elif defined( USE_COLOR )\",\"\\tattribute vec3 color;\",\"#endif\",\"#if ( defined( USE_MORPHTARGETS ) && ! defined( MORPHTARGETS_TEXTURE ) )\",\"\\tattribute vec3 morphTarget0;\",\"\\tattribute vec3 morphTarget1;\",\"\\tattribute vec3 morphTarget2;\",\"\\tattribute vec3 morphTarget3;\",\"\\t#ifdef USE_MORPHNORMALS\",\"\\t\\tattribute vec3 morphNormal0;\",\"\\t\\tattribute vec3 morphNormal1;\",\"\\t\\tattribute vec3 morphNormal2;\",\"\\t\\tattribute vec3 morphNormal3;\",\"\\t#else\",\"\\t\\tattribute vec3 morphTarget4;\",\"\\t\\tattribute vec3 morphTarget5;\",\"\\t\\tattribute vec3 morphTarget6;\",\"\\t\\tattribute vec3 morphTarget7;\",\"\\t#endif\",\"#endif\",\"#ifdef USE_SKINNING\",\"\\tattribute vec4 skinIndex;\",\"\\tattribute vec4 skinWeight;\",\"#endif\",\"\\n\"].filter(Sa).join(\"\\n\"),v=[p,Pa(n),\"#define SHADER_TYPE \"+n.shaderType,\"#define SHADER_NAME \"+n.shaderName,m,n.useFog&&n.fog?\"#define USE_FOG\":\"\",n.useFog&&n.fogExp2?\"#define FOG_EXP2\":\"\",n.map?\"#define USE_MAP\":\"\",n.matcap?\"#define USE_MATCAP\":\"\",n.envMap?\"#define USE_ENVMAP\":\"\",n.envMap?\"#define \"+c:\"\",n.envMap?\"#define \"+h:\"\",n.envMap?\"#define \"+u:\"\",d?\"#define CUBEUV_TEXEL_WIDTH \"+d.texelWidth:\"\",d?\"#define CUBEUV_TEXEL_HEIGHT \"+d.texelHeight:\"\",d?\"#define CUBEUV_MAX_MIP \"+d.maxMip+\".0\":\"\",n.lightMap?\"#define USE_LIGHTMAP\":\"\",n.aoMap?\"#define USE_AOMAP\":\"\",n.bumpMap?\"#define USE_BUMPMAP\":\"\",n.normalMap?\"#define USE_NORMALMAP\":\"\",n.normalMapObjectSpace?\"#define USE_NORMALMAP_OBJECTSPACE\":\"\",n.normalMapTangentSpace?\"#define USE_NORMALMAP_TANGENTSPACE\":\"\",n.emissiveMap?\"#define USE_EMISSIVEMAP\":\"\",n.anisotropy?\"#define USE_ANISOTROPY\":\"\",n.anisotropyMap?\"#define USE_ANISOTROPYMAP\":\"\",n.clearcoat?\"#define USE_CLEARCOAT\":\"\",n.clearcoatMap?\"#define USE_CLEARCOATMAP\":\"\",n.clearcoatRoughnessMap?\"#define USE_CLEARCOAT_ROUGHNESSMAP\":\"\",n.clearcoatNormalMap?\"#define USE_CLEARCOAT_NORMALMAP\":\"\",n.iridescence?\"#define USE_IRIDESCENCE\":\"\",n.iridescenceMap?\"#define USE_IRIDESCENCEMAP\":\"\",n.iridescenceThicknessMap?\"#define USE_IRIDESCENCE_THICKNESSMAP\":\"\",n.specularMap?\"#define USE_SPECULARMAP\":\"\",n.specularColorMap?\"#define USE_SPECULAR_COLORMAP\":\"\",n.specularIntensityMap?\"#define USE_SPECULAR_INTENSITYMAP\":\"\",n.roughnessMap?\"#define USE_ROUGHNESSMAP\":\"\",n.metalnessMap?\"#define USE_METALNESSMAP\":\"\",n.alphaMap?\"#define USE_ALPHAMAP\":\"\",n.alphaTest?\"#define USE_ALPHATEST\":\"\",n.alphaHash?\"#define USE_ALPHAHASH\":\"\",n.sheen?\"#define USE_SHEEN\":\"\",n.sheenColorMap?\"#define USE_SHEEN_COLORMAP\":\"\",n.sheenRoughnessMap?\"#define USE_SHEEN_ROUGHNESSMAP\":\"\",n.transmission?\"#define USE_TRANSMISSION\":\"\",n.transmissionMap?\"#define USE_TRANSMISSIONMAP\":\"\",n.thicknessMap?\"#define USE_THICKNESSMAP\":\"\",n.vertexTangents&&!1===n.flatShading?\"#define USE_TANGENT\":\"\",n.vertexColors||n.instancingColor?\"#define USE_COLOR\":\"\",n.vertexAlphas?\"#define USE_COLOR_ALPHA\":\"\",n.vertexUv1s?\"#define USE_UV1\":\"\",n.vertexUv2s?\"#define USE_UV2\":\"\",n.vertexUv3s?\"#define USE_UV3\":\"\",n.pointsUvs?\"#define USE_POINTS_UV\":\"\",n.gradientMap?\"#define USE_GRADIENTMAP\":\"\",n.flatShading?\"#define FLAT_SHADED\":\"\",n.doubleSided?\"#define DOUBLE_SIDED\":\"\",n.flipSided?\"#define FLIP_SIDED\":\"\",n.shadowMapEnabled?\"#define USE_SHADOWMAP\":\"\",n.shadowMapEnabled?\"#define \"+l:\"\",n.premultipliedAlpha?\"#define PREMULTIPLIED_ALPHA\":\"\",n.numLightProbes>0?\"#define USE_LIGHT_PROBES\":\"\",n.useLegacyLights?\"#define LEGACY_LIGHTS\":\"\",n.decodeVideoTexture?\"#define DECODE_VIDEO_TEXTURE\":\"\",n.logarithmicDepthBuffer?\"#define USE_LOGDEPTHBUF\":\"\",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?\"#define USE_LOGDEPTHBUF_EXT\":\"\",\"uniform mat4 viewMatrix;\",\"uniform vec3 cameraPosition;\",\"uniform bool isOrthographic;\",0!==n.toneMapping?\"#define TONE_MAPPING\":\"\",0!==n.toneMapping?Ri.tonemapping_pars_fragment:\"\",0!==n.toneMapping?Ma(\"toneMapping\",n.toneMapping):\"\",n.dithering?\"#define DITHERING\":\"\",n.opaque?\"#define OPAQUE\":\"\",Ri.colorspace_pars_fragment,xa(\"linearToOutputTexel\",n.outputColorSpace),n.useDepthPacking?\"#define DEPTH_PACKING \"+n.depthPacking:\"\",\"\\n\"].filter(Sa).join(\"\\n\")),s=ba(s),s=Ea(s,n),s=ya(s,n),o=ba(o),o=Ea(o,n),o=ya(o,n),s=Ca(s),o=Ca(o),n.isWebGL2&&!0!==n.isRawShaderMaterial&&(x=\"#version 300 es\\n\",_=[f,\"precision mediump sampler2DArray;\",\"#define attribute in\",\"#define varying out\",\"#define texture2D texture\"].join(\"\\n\")+\"\\n\"+_,v=[\"precision mediump sampler2DArray;\",\"#define varying in\",n.glslVersion===ft?\"\":\"layout(location = 0) out highp vec4 pc_fragColor;\",n.glslVersion===ft?\"\":\"#define gl_FragColor pc_fragColor\",\"#define gl_FragDepthEXT gl_FragDepth\",\"#define texture2D texture\",\"#define textureCube texture\",\"#define texture2DProj textureProj\",\"#define texture2DLodEXT textureLod\",\"#define texture2DProjLodEXT textureProjLod\",\"#define textureCubeLodEXT textureLod\",\"#define texture2DGradEXT textureGrad\",\"#define texture2DProjGradEXT textureProjGrad\",\"#define textureCubeGradEXT textureGrad\"].join(\"\\n\")+\"\\n\"+v);const M=x+_+s,S=x+v+o,b=ga(r,r.VERTEX_SHADER,M),A=ga(r,r.FRAGMENT_SHADER,S);function w(e){if(t.debug.checkShaderErrors){const n=r.getProgramInfoLog(g).trim(),i=r.getShaderInfoLog(b).trim(),a=r.getShaderInfoLog(A).trim();let s=!0,o=!0;if(!1===r.getProgramParameter(g,r.LINK_STATUS))if(s=!1,\"function\"==typeof t.debug.onShaderError)t.debug.onShaderError(r,g,b,A);else{va(r,b,\"vertex\"),va(r,A,\"fragment\")}else\"\"!==n||\"\"!==i&&\"\"!==a||(o=!1);o&&(e.diagnostics={runnable:s,programLog:n,vertexShader:{log:i,prefix:_},fragmentShader:{log:a,prefix:v}})}r.deleteShader(b),r.deleteShader(A),R=new ma(r,g),C=function(t,e){const n={},i=t.getProgramParameter(e,t.ACTIVE_ATTRIBUTES);for(let r=0;r<i;r++){const i=t.getActiveAttrib(e,r),a=i.name;let s=1;i.type===t.FLOAT_MAT2&&(s=2),i.type===t.FLOAT_MAT3&&(s=3),i.type===t.FLOAT_MAT4&&(s=4),n[a]={type:i.type,location:t.getAttribLocation(e,a),locationSize:s}}return n}(r,g)}let R,C;r.attachShader(g,b),r.attachShader(g,A),void 0!==n.index0AttributeName?r.bindAttribLocation(g,0,n.index0AttributeName):!0===n.morphTargets&&r.bindAttribLocation(g,0,\"position\"),r.linkProgram(g),this.getUniforms=function(){return void 0===R&&w(this),R},this.getAttributes=function(){return void 0===C&&w(this),C};let L=!1===n.rendererExtensionParallelShaderCompile;return this.isReady=function(){return!1===L&&(L=r.getProgramParameter(g,37297)),L},this.destroy=function(){i.releaseStatesOfProgram(this),r.deleteProgram(g),this.program=void 0},this.type=n.shaderType,this.name=n.shaderName,this.id=_a++,this.cacheKey=e,this.usedTimes=1,this.program=g,this.vertexShader=b,this.fragmentShader=A,this}let Da=0;class Na{constructor(){this.shaderCache=new Map,this.materialCache=new Map}update(t){const e=t.vertexShader,n=t.fragmentShader,i=this._getShaderStage(e),r=this._getShaderStage(n),a=this._getShaderCacheForMaterial(t);return!1===a.has(i)&&(a.add(i),i.usedTimes++),!1===a.has(r)&&(a.add(r),r.usedTimes++),this}remove(t){const e=this.materialCache.get(t);for(const t of e)t.usedTimes--,0===t.usedTimes&&this.shaderCache.delete(t.code);return this.materialCache.delete(t),this}getVertexShaderID(t){return this._getShaderStage(t.vertexShader).id}getFragmentShaderID(t){return this._getShaderStage(t.fragmentShader).id}dispose(){this.shaderCache.clear(),this.materialCache.clear()}_getShaderCacheForMaterial(t){const e=this.materialCache;let n=e.get(t);return void 0===n&&(n=new Set,e.set(t,n)),n}_getShaderStage(t){const e=this.shaderCache;let n=e.get(t);return void 0===n&&(n=new Ia(t),e.set(t,n)),n}}class Ia{constructor(t){this.id=Da++,this.code=t,this.usedTimes=0}}function Oa(t,e,n,i,r,a,s){const o=new We,l=new Na,c=[],h=r.isWebGL2,u=r.logarithmicDepthBuffer,d=r.vertexTextures;let p=r.precision;const f={MeshDepthMaterial:\"depth\",MeshDistanceMaterial:\"distanceRGBA\",MeshNormalMaterial:\"normal\",MeshBasicMaterial:\"basic\",MeshLambertMaterial:\"lambert\",MeshPhongMaterial:\"phong\",MeshToonMaterial:\"toon\",MeshStandardMaterial:\"physical\",MeshPhysicalMaterial:\"physical\",MeshMatcapMaterial:\"matcap\",LineBasicMaterial:\"basic\",LineDashedMaterial:\"dashed\",PointsMaterial:\"points\",ShadowMaterial:\"shadow\",SpriteMaterial:\"sprite\"};function m(t){return 0===t?\"uv\":`uv${t}`}return{getParameters:function(a,o,c,g,_){const v=g.fog,x=_.geometry,M=a.isMeshStandardMaterial?g.environment:null,S=(a.isMeshStandardMaterial?n:e).get(a.envMap||M),E=S&&S.mapping===T?S.image.height:null,y=f[a.type];null!==a.precision&&(p=r.getMaxPrecision(a.precision),a.precision);const b=x.morphAttributes.position||x.morphAttributes.normal||x.morphAttributes.color,A=void 0!==b?b.length:0;let w,R,C,L,P=0;if(void 0!==x.morphAttributes.position&&(P=1),void 0!==x.morphAttributes.normal&&(P=2),void 0!==x.morphAttributes.color&&(P=3),y){const t=Li[y];w=t.vertexShader,R=t.fragmentShader}else w=a.vertexShader,R=a.fragmentShader,l.update(a),C=l.getVertexShaderID(a),L=l.getFragmentShaderID(a);const U=t.getRenderTarget(),D=!0===_.isInstancedMesh,N=!0===_.isBatchedMesh,I=!!a.map,O=!!a.matcap,F=!!S,B=!!a.aoMap,z=!!a.lightMap,H=!!a.bumpMap,V=!!a.normalMap,G=!!a.displacementMap,k=!!a.emissiveMap,W=!!a.metalnessMap,X=!!a.roughnessMap,q=a.anisotropy>0,j=a.clearcoat>0,Y=a.iridescence>0,K=a.sheen>0,Z=a.transmission>0,J=q&&!!a.anisotropyMap,$=j&&!!a.clearcoatMap,tt=j&&!!a.clearcoatNormalMap,et=j&&!!a.clearcoatRoughnessMap,it=Y&&!!a.iridescenceMap,rt=Y&&!!a.iridescenceThicknessMap,at=K&&!!a.sheenColorMap,st=K&&!!a.sheenRoughnessMap,ot=!!a.specularMap,lt=!!a.specularColorMap,ct=!!a.specularIntensityMap,ht=Z&&!!a.transmissionMap,ut=Z&&!!a.thicknessMap,dt=!!a.gradientMap,pt=!!a.alphaMap,ft=a.alphaTest>0,mt=!!a.alphaHash,gt=!!a.extensions,_t=!!x.attributes.uv1,vt=!!x.attributes.uv2,xt=!!x.attributes.uv3;let Mt=0;return a.toneMapped&&(null!==U&&!0!==U.isXRRenderTarget||(Mt=t.toneMapping)),{isWebGL2:h,shaderID:y,shaderType:a.type,shaderName:a.name,vertexShader:w,fragmentShader:R,defines:a.defines,customVertexShaderID:C,customFragmentShaderID:L,isRawShaderMaterial:!0===a.isRawShaderMaterial,glslVersion:a.glslVersion,precision:p,batching:N,instancing:D,instancingColor:D&&null!==_.instanceColor,supportsVertexTextures:d,outputColorSpace:null===U?t.outputColorSpace:!0===U.isXRRenderTarget?U.texture.colorSpace:Q,map:I,matcap:O,envMap:F,envMapMode:F&&S.mapping,envMapCubeUVHeight:E,aoMap:B,lightMap:z,bumpMap:H,normalMap:V,displacementMap:d&&G,emissiveMap:k,normalMapObjectSpace:V&&1===a.normalMapType,normalMapTangentSpace:V&&0===a.normalMapType,metalnessMap:W,roughnessMap:X,anisotropy:q,anisotropyMap:J,clearcoat:j,clearcoatMap:$,clearcoatNormalMap:tt,clearcoatRoughnessMap:et,iridescence:Y,iridescenceMap:it,iridescenceThicknessMap:rt,sheen:K,sheenColorMap:at,sheenRoughnessMap:st,specularMap:ot,specularColorMap:lt,specularIntensityMap:ct,transmission:Z,transmissionMap:ht,thicknessMap:ut,gradientMap:dt,opaque:!1===a.transparent&&1===a.blending,alphaMap:pt,alphaTest:ft,alphaHash:mt,combine:a.combine,mapUv:I&&m(a.map.channel),aoMapUv:B&&m(a.aoMap.channel),lightMapUv:z&&m(a.lightMap.channel),bumpMapUv:H&&m(a.bumpMap.channel),normalMapUv:V&&m(a.normalMap.channel),displacementMapUv:G&&m(a.displacementMap.channel),emissiveMapUv:k&&m(a.emissiveMap.channel),metalnessMapUv:W&&m(a.metalnessMap.channel),roughnessMapUv:X&&m(a.roughnessMap.channel),anisotropyMapUv:J&&m(a.anisotropyMap.channel),clearcoatMapUv:$&&m(a.clearcoatMap.channel),clearcoatNormalMapUv:tt&&m(a.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:et&&m(a.clearcoatRoughnessMap.channel),iridescenceMapUv:it&&m(a.iridescenceMap.channel),iridescenceThicknessMapUv:rt&&m(a.iridescenceThicknessMap.channel),sheenColorMapUv:at&&m(a.sheenColorMap.channel),sheenRoughnessMapUv:st&&m(a.sheenRoughnessMap.channel),specularMapUv:ot&&m(a.specularMap.channel),specularColorMapUv:lt&&m(a.specularColorMap.channel),specularIntensityMapUv:ct&&m(a.specularIntensityMap.channel),transmissionMapUv:ht&&m(a.transmissionMap.channel),thicknessMapUv:ut&&m(a.thicknessMap.channel),alphaMapUv:pt&&m(a.alphaMap.channel),vertexTangents:!!x.attributes.tangent&&(V||q),vertexColors:a.vertexColors,vertexAlphas:!0===a.vertexColors&&!!x.attributes.color&&4===x.attributes.color.itemSize,vertexUv1s:_t,vertexUv2s:vt,vertexUv3s:xt,pointsUvs:!0===_.isPoints&&!!x.attributes.uv&&(I||pt),fog:!!v,useFog:!0===a.fog,fogExp2:v&&v.isFogExp2,flatShading:!0===a.flatShading,sizeAttenuation:!0===a.sizeAttenuation,logarithmicDepthBuffer:u,skinning:!0===_.isSkinnedMesh,morphTargets:void 0!==x.morphAttributes.position,morphNormals:void 0!==x.morphAttributes.normal,morphColors:void 0!==x.morphAttributes.color,morphTargetsCount:A,morphTextureStride:P,numDirLights:o.directional.length,numPointLights:o.point.length,numSpotLights:o.spot.length,numSpotLightMaps:o.spotLightMap.length,numRectAreaLights:o.rectArea.length,numHemiLights:o.hemi.length,numDirLightShadows:o.directionalShadowMap.length,numPointLightShadows:o.pointShadowMap.length,numSpotLightShadows:o.spotShadowMap.length,numSpotLightShadowsWithMaps:o.numSpotLightShadowsWithMaps,numLightProbes:o.numLightProbes,numClippingPlanes:s.numPlanes,numClipIntersection:s.numIntersection,dithering:a.dithering,shadowMapEnabled:t.shadowMap.enabled&&c.length>0,shadowMapType:t.shadowMap.type,toneMapping:Mt,useLegacyLights:t._useLegacyLights,decodeVideoTexture:I&&!0===a.map.isVideoTexture&&Vt.getTransfer(a.map.colorSpace)===nt,premultipliedAlpha:a.premultipliedAlpha,doubleSided:2===a.side,flipSided:1===a.side,useDepthPacking:a.depthPacking>=0,depthPacking:a.depthPacking||0,index0AttributeName:a.index0AttributeName,extensionDerivatives:gt&&!0===a.extensions.derivatives,extensionFragDepth:gt&&!0===a.extensions.fragDepth,extensionDrawBuffers:gt&&!0===a.extensions.drawBuffers,extensionShaderTextureLOD:gt&&!0===a.extensions.shaderTextureLOD,extensionClipCullDistance:gt&&a.extensions.clipCullDistance&&i.has(\"WEBGL_clip_cull_distance\"),rendererExtensionFragDepth:h||i.has(\"EXT_frag_depth\"),rendererExtensionDrawBuffers:h||i.has(\"WEBGL_draw_buffers\"),rendererExtensionShaderTextureLod:h||i.has(\"EXT_shader_texture_lod\"),rendererExtensionParallelShaderCompile:i.has(\"KHR_parallel_shader_compile\"),customProgramCacheKey:a.customProgramCacheKey()}},getProgramCacheKey:function(e){const n=[];if(e.shaderID?n.push(e.shaderID):(n.push(e.customVertexShaderID),n.push(e.customFragmentShaderID)),void 0!==e.defines)for(const t in e.defines)n.push(t),n.push(e.defines[t]);return!1===e.isRawShaderMaterial&&(!function(t,e){t.push(e.precision),t.push(e.outputColorSpace),t.push(e.envMapMode),t.push(e.envMapCubeUVHeight),t.push(e.mapUv),t.push(e.alphaMapUv),t.push(e.lightMapUv),t.push(e.aoMapUv),t.push(e.bumpMapUv),t.push(e.normalMapUv),t.push(e.displacementMapUv),t.push(e.emissiveMapUv),t.push(e.metalnessMapUv),t.push(e.roughnessMapUv),t.push(e.anisotropyMapUv),t.push(e.clearcoatMapUv),t.push(e.clearcoatNormalMapUv),t.push(e.clearcoatRoughnessMapUv),t.push(e.iridescenceMapUv),t.push(e.iridescenceThicknessMapUv),t.push(e.sheenColorMapUv),t.push(e.sheenRoughnessMapUv),t.push(e.specularMapUv),t.push(e.specularColorMapUv),t.push(e.specularIntensityMapUv),t.push(e.transmissionMapUv),t.push(e.thicknessMapUv),t.push(e.combine),t.push(e.fogExp2),t.push(e.sizeAttenuation),t.push(e.morphTargetsCount),t.push(e.morphAttributeCount),t.push(e.numDirLights),t.push(e.numPointLights),t.push(e.numSpotLights),t.push(e.numSpotLightMaps),t.push(e.numHemiLights),t.push(e.numRectAreaLights),t.push(e.numDirLightShadows),t.push(e.numPointLightShadows),t.push(e.numSpotLightShadows),t.push(e.numSpotLightShadowsWithMaps),t.push(e.numLightProbes),t.push(e.shadowMapType),t.push(e.toneMapping),t.push(e.numClippingPlanes),t.push(e.numClipIntersection),t.push(e.depthPacking)}(n,e),function(t,e){o.disableAll(),e.isWebGL2&&o.enable(0);e.supportsVertexTextures&&o.enable(1);e.instancing&&o.enable(2);e.instancingColor&&o.enable(3);e.matcap&&o.enable(4);e.envMap&&o.enable(5);e.normalMapObjectSpace&&o.enable(6);e.normalMapTangentSpace&&o.enable(7);e.clearcoat&&o.enable(8);e.iridescence&&o.enable(9);e.alphaTest&&o.enable(10);e.vertexColors&&o.enable(11);e.vertexAlphas&&o.enable(12);e.vertexUv1s&&o.enable(13);e.vertexUv2s&&o.enable(14);e.vertexUv3s&&o.enable(15);e.vertexTangents&&o.enable(16);e.anisotropy&&o.enable(17);e.alphaHash&&o.enable(18);e.batching&&o.enable(19);t.push(o.mask),o.disableAll(),e.fog&&o.enable(0);e.useFog&&o.enable(1);e.flatShading&&o.enable(2);e.logarithmicDepthBuffer&&o.enable(3);e.skinning&&o.enable(4);e.morphTargets&&o.enable(5);e.morphNormals&&o.enable(6);e.morphColors&&o.enable(7);e.premultipliedAlpha&&o.enable(8);e.shadowMapEnabled&&o.enable(9);e.useLegacyLights&&o.enable(10);e.doubleSided&&o.enable(11);e.flipSided&&o.enable(12);e.useDepthPacking&&o.enable(13);e.dithering&&o.enable(14);e.transmission&&o.enable(15);e.sheen&&o.enable(16);e.opaque&&o.enable(17);e.pointsUvs&&o.enable(18);e.decodeVideoTexture&&o.enable(19);t.push(o.mask)}(n,e),n.push(t.outputColorSpace)),n.push(e.customProgramCacheKey),n.join()},getUniforms:function(t){const e=f[t.type];let n;if(e){const t=Li[e];n=hi.clone(t.uniforms)}else n=t.uniforms;return n},acquireProgram:function(e,n){let i;for(let t=0,e=c.length;t<e;t++){const e=c[t];if(e.cacheKey===n){i=e,++i.usedTimes;break}}return void 0===i&&(i=new Ua(t,n,e,a),c.push(i)),i},releaseProgram:function(t){if(0===--t.usedTimes){const e=c.indexOf(t);c[e]=c[c.length-1],c.pop(),t.destroy()}},releaseShaderCache:function(t){l.remove(t)},programs:c,dispose:function(){l.dispose()}}}function Fa(){let t=new WeakMap;return{get:function(e){let n=t.get(e);return void 0===n&&(n={},t.set(e,n)),n},remove:function(e){t.delete(e)},update:function(e,n,i){t.get(e)[n]=i},dispose:function(){t=new WeakMap}}}function Ba(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.material.id!==e.material.id?t.material.id-e.material.id:t.z!==e.z?t.z-e.z:t.id-e.id}function za(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.z!==e.z?e.z-t.z:t.id-e.id}function Ha(){const t=[];let e=0;const n=[],i=[],r=[];function a(n,i,r,a,s,o){let l=t[e];return void 0===l?(l={id:n.id,object:n,geometry:i,material:r,groupOrder:a,renderOrder:n.renderOrder,z:s,group:o},t[e]=l):(l.id=n.id,l.object=n,l.geometry=i,l.material=r,l.groupOrder=a,l.renderOrder=n.renderOrder,l.z=s,l.group=o),e++,l}return{opaque:n,transmissive:i,transparent:r,init:function(){e=0,n.length=0,i.length=0,r.length=0},push:function(t,e,s,o,l,c){const h=a(t,e,s,o,l,c);s.transmission>0?i.push(h):!0===s.transparent?r.push(h):n.push(h)},unshift:function(t,e,s,o,l,c){const h=a(t,e,s,o,l,c);s.transmission>0?i.unshift(h):!0===s.transparent?r.unshift(h):n.unshift(h)},finish:function(){for(let n=e,i=t.length;n<i;n++){const e=t[n];if(null===e.id)break;e.id=null,e.object=null,e.geometry=null,e.material=null,e.group=null}},sort:function(t,e){n.length>1&&n.sort(t||Ba),i.length>1&&i.sort(e||za),r.length>1&&r.sort(e||za)}}}function Va(){let t=new WeakMap;return{get:function(e,n){const i=t.get(e);let r;return void 0===i?(r=new Ha,t.set(e,[r])):n>=i.length?(r=new Ha,i.push(r)):r=i[n],r},dispose:function(){t=new WeakMap}}}function Ga(){const t={};return{get:function(e){if(void 0!==t[e.id])return t[e.id];let n;switch(e.type){case\"DirectionalLight\":n={direction:new ie,color:new En};break;case\"SpotLight\":n={position:new ie,direction:new ie,color:new En,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case\"PointLight\":n={position:new ie,color:new En,distance:0,decay:0};break;case\"HemisphereLight\":n={direction:new ie,skyColor:new En,groundColor:new En};break;case\"RectAreaLight\":n={color:new En,position:new ie,halfWidth:new ie,halfHeight:new ie}}return t[e.id]=n,n}}}let ka=0;function Wa(t,e){return(e.castShadow?2:0)-(t.castShadow?2:0)+(e.map?1:0)-(t.map?1:0)}function Xa(t,e){const n=new Ga,i=function(){const t={};return{get:function(e){if(void 0!==t[e.id])return t[e.id];let n;switch(e.type){case\"DirectionalLight\":case\"SpotLight\":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Ct};break;case\"PointLight\":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Ct,shadowCameraNear:1,shadowCameraFar:1e3}}return t[e.id]=n,n}}}(),r={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-1,numLightProbes:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotLightMap:[],spotShadow:[],spotShadowMap:[],spotLightMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],numSpotLightShadowsWithMaps:0,numLightProbes:0};for(let t=0;t<9;t++)r.probe.push(new ie);const a=new ie,s=new De,o=new De;return{setup:function(a,s){let o=0,l=0,c=0;for(let t=0;t<9;t++)r.probe[t].set(0,0,0);let h=0,u=0,d=0,p=0,f=0,m=0,g=0,_=0,v=0,x=0,M=0;a.sort(Wa);const S=!0===s?Math.PI:1;for(let t=0,e=a.length;t<e;t++){const e=a[t],s=e.color,E=e.intensity,y=e.distance,T=e.shadow&&e.shadow.map?e.shadow.map.texture:null;if(e.isAmbientLight)o+=s.r*E*S,l+=s.g*E*S,c+=s.b*E*S;else if(e.isLightProbe){for(let t=0;t<9;t++)r.probe[t].addScaledVector(e.sh.coefficients[t],E);M++}else if(e.isDirectionalLight){const t=n.get(e);if(t.color.copy(e.color).multiplyScalar(e.intensity*S),e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,r.directionalShadow[h]=n,r.directionalShadowMap[h]=T,r.directionalShadowMatrix[h]=e.shadow.matrix,m++}r.directional[h]=t,h++}else if(e.isSpotLight){const t=n.get(e);t.position.setFromMatrixPosition(e.matrixWorld),t.color.copy(s).multiplyScalar(E*S),t.distance=y,t.coneCos=Math.cos(e.angle),t.penumbraCos=Math.cos(e.angle*(1-e.penumbra)),t.decay=e.decay,r.spot[d]=t;const a=e.shadow;if(e.map&&(r.spotLightMap[v]=e.map,v++,a.updateMatrices(e),e.castShadow&&x++),r.spotLightMatrix[d]=a.matrix,e.castShadow){const t=i.get(e);t.shadowBias=a.bias,t.shadowNormalBias=a.normalBias,t.shadowRadius=a.radius,t.shadowMapSize=a.mapSize,r.spotShadow[d]=t,r.spotShadowMap[d]=T,_++}d++}else if(e.isRectAreaLight){const t=n.get(e);t.color.copy(s).multiplyScalar(E),t.halfWidth.set(.5*e.width,0,0),t.halfHeight.set(0,.5*e.height,0),r.rectArea[p]=t,p++}else if(e.isPointLight){const t=n.get(e);if(t.color.copy(e.color).multiplyScalar(e.intensity*S),t.distance=e.distance,t.decay=e.decay,e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,n.shadowCameraNear=t.camera.near,n.shadowCameraFar=t.camera.far,r.pointShadow[u]=n,r.pointShadowMap[u]=T,r.pointShadowMatrix[u]=e.shadow.matrix,g++}r.point[u]=t,u++}else if(e.isHemisphereLight){const t=n.get(e);t.skyColor.copy(e.color).multiplyScalar(E*S),t.groundColor.copy(e.groundColor).multiplyScalar(E*S),r.hemi[f]=t,f++}}p>0&&(e.isWebGL2?!0===t.has(\"OES_texture_float_linear\")?(r.rectAreaLTC1=Ci.LTC_FLOAT_1,r.rectAreaLTC2=Ci.LTC_FLOAT_2):(r.rectAreaLTC1=Ci.LTC_HALF_1,r.rectAreaLTC2=Ci.LTC_HALF_2):!0===t.has(\"OES_texture_float_linear\")?(r.rectAreaLTC1=Ci.LTC_FLOAT_1,r.rectAreaLTC2=Ci.LTC_FLOAT_2):!0===t.has(\"OES_texture_half_float_linear\")&&(r.rectAreaLTC1=Ci.LTC_HALF_1,r.rectAreaLTC2=Ci.LTC_HALF_2)),r.ambient[0]=o,r.ambient[1]=l,r.ambient[2]=c;const E=r.hash;E.directionalLength===h&&E.pointLength===u&&E.spotLength===d&&E.rectAreaLength===p&&E.hemiLength===f&&E.numDirectionalShadows===m&&E.numPointShadows===g&&E.numSpotShadows===_&&E.numSpotMaps===v&&E.numLightProbes===M||(r.directional.length=h,r.spot.length=d,r.rectArea.length=p,r.point.length=u,r.hemi.length=f,r.directionalShadow.length=m,r.directionalShadowMap.length=m,r.pointShadow.length=g,r.pointShadowMap.length=g,r.spotShadow.length=_,r.spotShadowMap.length=_,r.directionalShadowMatrix.length=m,r.pointShadowMatrix.length=g,r.spotLightMatrix.length=_+v-x,r.spotLightMap.length=v,r.numSpotLightShadowsWithMaps=x,r.numLightProbes=M,E.directionalLength=h,E.pointLength=u,E.spotLength=d,E.rectAreaLength=p,E.hemiLength=f,E.numDirectionalShadows=m,E.numPointShadows=g,E.numSpotShadows=_,E.numSpotMaps=v,E.numLightProbes=M,r.version=ka++)},setupView:function(t,e){let n=0,i=0,l=0,c=0,h=0;const u=e.matrixWorldInverse;for(let e=0,d=t.length;e<d;e++){const d=t[e];if(d.isDirectionalLight){const t=r.directional[n];t.direction.setFromMatrixPosition(d.matrixWorld),a.setFromMatrixPosition(d.target.matrixWorld),t.direction.sub(a),t.direction.transformDirection(u),n++}else if(d.isSpotLight){const t=r.spot[l];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),t.direction.setFromMatrixPosition(d.matrixWorld),a.setFromMatrixPosition(d.target.matrixWorld),t.direction.sub(a),t.direction.transformDirection(u),l++}else if(d.isRectAreaLight){const t=r.rectArea[c];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),o.identity(),s.copy(d.matrixWorld),s.premultiply(u),o.extractRotation(s),t.halfWidth.set(.5*d.width,0,0),t.halfHeight.set(0,.5*d.height,0),t.halfWidth.applyMatrix4(o),t.halfHeight.applyMatrix4(o),c++}else if(d.isPointLight){const t=r.point[i];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),i++}else if(d.isHemisphereLight){const t=r.hemi[h];t.direction.setFromMatrixPosition(d.matrixWorld),t.direction.transformDirection(u),h++}}},state:r}}function qa(t,e){const n=new Xa(t,e),i=[],r=[];return{init:function(){i.length=0,r.length=0},state:{lightsArray:i,shadowsArray:r,lights:n},setupLights:function(t){n.setup(i,t)},setupLightsView:function(t){n.setupView(i,t)},pushLight:function(t){i.push(t)},pushShadow:function(t){r.push(t)}}}function ja(t,e){let n=new WeakMap;return{get:function(i,r=0){const a=n.get(i);let s;return void 0===a?(s=new qa(t,e),n.set(i,[s])):r>=a.length?(s=new qa(t,e),a.push(s)):s=a[r],s},dispose:function(){n=new WeakMap}}}class Ya extends bn{constructor(t){super(),this.isMeshDepthMaterial=!0,this.type=\"MeshDepthMaterial\",this.depthPacking=3200,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.setValues(t)}copy(t){return super.copy(t),this.depthPacking=t.depthPacking,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this}}class Ka extends bn{constructor(t){super(),this.isMeshDistanceMaterial=!0,this.type=\"MeshDistanceMaterial\",this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.setValues(t)}copy(t){return super.copy(t),this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this}}function Za(t,r,a){let s=new Ti;const o=new Ct,l=new Ct,c=new Jt,h=new Ya({depthPacking:3201}),u=new Ka,d={},p=a.maxTextureSize,f={[e]:1,[n]:0,[i]:2},m=new ui({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new Ct},radius:{value:4}},vertexShader:\"void main() {\\n\\tgl_Position = vec4( position, 1.0 );\\n}\",fragmentShader:\"uniform sampler2D shadow_pass;\\nuniform vec2 resolution;\\nuniform float radius;\\n#include <packing>\\nvoid main() {\\n\\tconst float samples = float( VSM_SAMPLES );\\n\\tfloat mean = 0.0;\\n\\tfloat squared_mean = 0.0;\\n\\tfloat uvStride = samples <= 1.0 ? 0.0 : 2.0 / ( samples - 1.0 );\\n\\tfloat uvStart = samples <= 1.0 ? 0.0 : - 1.0;\\n\\tfor ( float i = 0.0; i < samples; i ++ ) {\\n\\t\\tfloat uvOffset = uvStart + i * uvStride;\\n\\t\\t#ifdef HORIZONTAL_PASS\\n\\t\\t\\tvec2 distribution = unpackRGBATo2Half( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( uvOffset, 0.0 ) * radius ) / resolution ) );\\n\\t\\t\\tmean += distribution.x;\\n\\t\\t\\tsquared_mean += distribution.y * distribution.y + distribution.x * distribution.x;\\n\\t\\t#else\\n\\t\\t\\tfloat depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, uvOffset ) * radius ) / resolution ) );\\n\\t\\t\\tmean += depth;\\n\\t\\t\\tsquared_mean += depth * depth;\\n\\t\\t#endif\\n\\t}\\n\\tmean = mean / samples;\\n\\tsquared_mean = squared_mean / samples;\\n\\tfloat std_dev = sqrt( squared_mean - mean * mean );\\n\\tgl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) );\\n}\"}),g=m.clone();g.defines.HORIZONTAL_PASS=1;const _=new Hn;_.setAttribute(\"position\",new Cn(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const v=new ri(_,m),x=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=1;let M=this.type;function S(e,n){const i=r.update(v);m.defines.VSM_SAMPLES!==e.blurSamples&&(m.defines.VSM_SAMPLES=e.blurSamples,g.defines.VSM_SAMPLES=e.blurSamples,m.needsUpdate=!0,g.needsUpdate=!0),null===e.mapPass&&(e.mapPass=new $t(o.x,o.y)),m.uniforms.shadow_pass.value=e.map.texture,m.uniforms.resolution.value=e.mapSize,m.uniforms.radius.value=e.radius,t.setRenderTarget(e.mapPass),t.clear(),t.renderBufferDirect(n,null,i,m,v,null),g.uniforms.shadow_pass.value=e.mapPass.texture,g.uniforms.resolution.value=e.mapSize,g.uniforms.radius.value=e.radius,t.setRenderTarget(e.map),t.clear(),t.renderBufferDirect(n,null,i,g,v,null)}function E(e,n,i,r){let a=null;const s=!0===i.isPointLight?e.customDistanceMaterial:e.customDepthMaterial;if(void 0!==s)a=s;else if(a=!0===i.isPointLight?u:h,t.localClippingEnabled&&!0===n.clipShadows&&Array.isArray(n.clippingPlanes)&&0!==n.clippingPlanes.length||n.displacementMap&&0!==n.displacementScale||n.alphaMap&&n.alphaTest>0||n.map&&n.alphaTest>0){const t=a.uuid,e=n.uuid;let i=d[t];void 0===i&&(i={},d[t]=i);let r=i[e];void 0===r&&(r=a.clone(),i[e]=r,n.addEventListener(\"dispose\",T)),a=r}if(a.visible=n.visible,a.wireframe=n.wireframe,a.side=3===r?null!==n.shadowSide?n.shadowSide:n.side:null!==n.shadowSide?n.shadowSide:f[n.side],a.alphaMap=n.alphaMap,a.alphaTest=n.alphaTest,a.map=n.map,a.clipShadows=n.clipShadows,a.clippingPlanes=n.clippingPlanes,a.clipIntersection=n.clipIntersection,a.displacementMap=n.displacementMap,a.displacementScale=n.displacementScale,a.displacementBias=n.displacementBias,a.wireframeLinewidth=n.wireframeLinewidth,a.linewidth=n.linewidth,!0===i.isPointLight&&!0===a.isMeshDistanceMaterial){t.properties.get(a).light=i}return a}function y(e,n,i,a,o){if(!1===e.visible)return;if(e.layers.test(n.layers)&&(e.isMesh||e.isLine||e.isPoints)&&(e.castShadow||e.receiveShadow&&3===o)&&(!e.frustumCulled||s.intersectsObject(e))){e.modelViewMatrix.multiplyMatrices(i.matrixWorldInverse,e.matrixWorld);const s=r.update(e),l=e.material;if(Array.isArray(l)){const r=s.groups;for(let c=0,h=r.length;c<h;c++){const h=r[c],u=l[h.materialIndex];if(u&&u.visible){const r=E(e,u,a,o);e.onBeforeShadow(t,e,n,i,s,r,h),t.renderBufferDirect(i,null,s,r,e,h),e.onAfterShadow(t,e,n,i,s,r,h)}}}else if(l.visible){const r=E(e,l,a,o);e.onBeforeShadow(t,e,n,i,s,r,null),t.renderBufferDirect(i,null,s,r,e,null),e.onAfterShadow(t,e,n,i,s,r,null)}}const l=e.children;for(let t=0,e=l.length;t<e;t++)y(l[t],n,i,a,o)}function T(t){t.target.removeEventListener(\"dispose\",T);for(const e in d){const n=d[e],i=t.target.uuid;if(i in n){n[i].dispose(),delete n[i]}}}this.render=function(e,n,i){if(!1===x.enabled)return;if(!1===x.autoUpdate&&!1===x.needsUpdate)return;if(0===e.length)return;const r=t.getRenderTarget(),a=t.getActiveCubeFace(),h=t.getActiveMipmapLevel(),u=t.state;u.setBlending(0),u.buffers.color.setClear(1,1,1,1),u.buffers.depth.setTest(!0),u.setScissorTest(!1);const d=3!==M&&3===this.type,f=3===M&&3!==this.type;for(let r=0,a=e.length;r<a;r++){const a=e[r],h=a.shadow;if(void 0===h)continue;if(!1===h.autoUpdate&&!1===h.needsUpdate)continue;o.copy(h.mapSize);const m=h.getFrameExtents();if(o.multiply(m),l.copy(h.mapSize),(o.x>p||o.y>p)&&(o.x>p&&(l.x=Math.floor(p/m.x),o.x=l.x*m.x,h.mapSize.x=l.x),o.y>p&&(l.y=Math.floor(p/m.y),o.y=l.y*m.y,h.mapSize.y=l.y)),null===h.map||!0===d||!0===f){const t=3!==this.type?{minFilter:R,magFilter:R}:{};null!==h.map&&h.map.dispose(),h.map=new $t(o.x,o.y,t),h.map.texture.name=a.name+\".shadowMap\",h.camera.updateProjectionMatrix()}t.setRenderTarget(h.map),t.clear();const g=h.getViewportCount();for(let t=0;t<g;t++){const e=h.getViewport(t);c.set(l.x*e.x,l.y*e.y,l.x*e.z,l.y*e.w),u.viewport(c),h.updateMatrices(a,t),s=h.getFrustum(),y(n,i,h.camera,a,this.type)}!0!==h.isPointLightShadow&&3===this.type&&S(h,i),h.needsUpdate=!1}M=this.type,x.needsUpdate=!1,t.setRenderTarget(r,a,h)}}function Ja(t,e,n){const i=n.isWebGL2;const E=new function(){let e=!1;const n=new Jt;let i=null;const r=new Jt(0,0,0,0);return{setMask:function(n){i===n||e||(t.colorMask(n,n,n,n),i=n)},setLocked:function(t){e=t},setClear:function(e,i,a,s,o){!0===o&&(e*=s,i*=s,a*=s),n.set(e,i,a,s),!1===r.equals(n)&&(t.clearColor(e,i,a,s),r.copy(n))},reset:function(){e=!1,i=null,r.set(-1,0,0,0)}}},y=new function(){let e=!1,n=null,i=null,r=null;return{setTest:function(e){e?st(t.DEPTH_TEST):ot(t.DEPTH_TEST)},setMask:function(i){n===i||e||(t.depthMask(i),n=i)},setFunc:function(e){if(i!==e){switch(e){case 0:t.depthFunc(t.NEVER);break;case 1:t.depthFunc(t.ALWAYS);break;case 2:t.depthFunc(t.LESS);break;case 3:default:t.depthFunc(t.LEQUAL);break;case 4:t.depthFunc(t.EQUAL);break;case 5:t.depthFunc(t.GEQUAL);break;case 6:t.depthFunc(t.GREATER);break;case 7:t.depthFunc(t.NOTEQUAL)}i=e}},setLocked:function(t){e=t},setClear:function(e){r!==e&&(t.clearDepth(e),r=e)},reset:function(){e=!1,n=null,i=null,r=null}}},T=new function(){let e=!1,n=null,i=null,r=null,a=null,s=null,o=null,l=null,c=null;return{setTest:function(n){e||(n?st(t.STENCIL_TEST):ot(t.STENCIL_TEST))},setMask:function(i){n===i||e||(t.stencilMask(i),n=i)},setFunc:function(e,n,s){i===e&&r===n&&a===s||(t.stencilFunc(e,n,s),i=e,r=n,a=s)},setOp:function(e,n,i){s===e&&o===n&&l===i||(t.stencilOp(e,n,i),s=e,o=n,l=i)},setLocked:function(t){e=t},setClear:function(e){c!==e&&(t.clearStencil(e),c=e)},reset:function(){e=!1,n=null,i=null,r=null,a=null,s=null,o=null,l=null,c=null}}},b=new WeakMap,A=new WeakMap;let w={},R={},C=new WeakMap,L=[],P=null,U=!1,D=null,N=null,I=null,O=null,F=null,B=null,z=null,H=new En(0,0,0),V=0,G=!1,k=null,W=null,X=null,q=null,j=null;const Y=t.getParameter(t.MAX_COMBINED_TEXTURE_IMAGE_UNITS);let K=!1,Z=0;const J=t.getParameter(t.VERSION);-1!==J.indexOf(\"WebGL\")?(Z=parseFloat(/^WebGL (\\d)/.exec(J)[1]),K=Z>=1):-1!==J.indexOf(\"OpenGL ES\")&&(Z=parseFloat(/^OpenGL ES (\\d)/.exec(J)[1]),K=Z>=2);let Q=null,$={};const tt=t.getParameter(t.SCISSOR_BOX),et=t.getParameter(t.VIEWPORT),nt=(new Jt).fromArray(tt),it=(new Jt).fromArray(et);function rt(e,n,r,a){const s=new Uint8Array(4),o=t.createTexture();t.bindTexture(e,o),t.texParameteri(e,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(e,t.TEXTURE_MAG_FILTER,t.NEAREST);for(let o=0;o<r;o++)!i||e!==t.TEXTURE_3D&&e!==t.TEXTURE_2D_ARRAY?t.texImage2D(n+o,0,t.RGBA,1,1,0,t.RGBA,t.UNSIGNED_BYTE,s):t.texImage3D(n,0,t.RGBA,1,1,a,0,t.RGBA,t.UNSIGNED_BYTE,s);return o}const at={};function st(e){!0!==w[e]&&(t.enable(e),w[e]=!0)}function ot(e){!1!==w[e]&&(t.disable(e),w[e]=!1)}at[t.TEXTURE_2D]=rt(t.TEXTURE_2D,t.TEXTURE_2D,1),at[t.TEXTURE_CUBE_MAP]=rt(t.TEXTURE_CUBE_MAP,t.TEXTURE_CUBE_MAP_POSITIVE_X,6),i&&(at[t.TEXTURE_2D_ARRAY]=rt(t.TEXTURE_2D_ARRAY,t.TEXTURE_2D_ARRAY,1,1),at[t.TEXTURE_3D]=rt(t.TEXTURE_3D,t.TEXTURE_3D,1,1)),E.setClear(0,0,0,1),y.setClear(1),T.setClear(0),st(t.DEPTH_TEST),y.setFunc(3),ut(!1),dt(1),st(t.CULL_FACE),ht(0);const lt={[r]:t.FUNC_ADD,[a]:t.FUNC_SUBTRACT,[s]:t.FUNC_REVERSE_SUBTRACT};if(i)lt[103]=t.MIN,lt[104]=t.MAX;else{const t=e.get(\"EXT_blend_minmax\");null!==t&&(lt[103]=t.MIN_EXT,lt[104]=t.MAX_EXT)}const ct={[o]:t.ZERO,[l]:t.ONE,[c]:t.SRC_COLOR,[u]:t.SRC_ALPHA,[_]:t.SRC_ALPHA_SATURATE,[m]:t.DST_COLOR,[p]:t.DST_ALPHA,[h]:t.ONE_MINUS_SRC_COLOR,[d]:t.ONE_MINUS_SRC_ALPHA,[g]:t.ONE_MINUS_DST_COLOR,[f]:t.ONE_MINUS_DST_ALPHA,[v]:t.CONSTANT_COLOR,[x]:t.ONE_MINUS_CONSTANT_COLOR,[M]:t.CONSTANT_ALPHA,[S]:t.ONE_MINUS_CONSTANT_ALPHA};function ht(e,n,i,a,s,o,l,c,h,u){if(0!==e){if(!1===U&&(st(t.BLEND),U=!0),5===e)s=s||n,o=o||i,l=l||a,n===N&&s===F||(t.blendEquationSeparate(lt[n],lt[s]),N=n,F=s),i===I&&a===O&&o===B&&l===z||(t.blendFuncSeparate(ct[i],ct[a],ct[o],ct[l]),I=i,O=a,B=o,z=l),!1!==c.equals(H)&&h===V||(t.blendColor(c.r,c.g,c.b,h),H.copy(c),V=h),D=e,G=!1;else if(e!==D||u!==G){if(N===r&&F===r||(t.blendEquation(t.FUNC_ADD),N=r,F=r),u)switch(e){case 1:t.blendFuncSeparate(t.ONE,t.ONE_MINUS_SRC_ALPHA,t.ONE,t.ONE_MINUS_SRC_ALPHA);break;case 2:t.blendFunc(t.ONE,t.ONE);break;case 3:t.blendFuncSeparate(t.ZERO,t.ONE_MINUS_SRC_COLOR,t.ZERO,t.ONE);break;case 4:t.blendFuncSeparate(t.ZERO,t.SRC_COLOR,t.ZERO,t.SRC_ALPHA)}else switch(e){case 1:t.blendFuncSeparate(t.SRC_ALPHA,t.ONE_MINUS_SRC_ALPHA,t.ONE,t.ONE_MINUS_SRC_ALPHA);break;case 2:t.blendFunc(t.SRC_ALPHA,t.ONE);break;case 3:t.blendFuncSeparate(t.ZERO,t.ONE_MINUS_SRC_COLOR,t.ZERO,t.ONE);break;case 4:t.blendFunc(t.ZERO,t.SRC_COLOR)}I=null,O=null,B=null,z=null,H.set(0,0,0),V=0,D=e,G=u}}else!0===U&&(ot(t.BLEND),U=!1)}function ut(e){k!==e&&(e?t.frontFace(t.CW):t.frontFace(t.CCW),k=e)}function dt(e){0!==e?(st(t.CULL_FACE),e!==W&&(1===e?t.cullFace(t.BACK):2===e?t.cullFace(t.FRONT):t.cullFace(t.FRONT_AND_BACK))):ot(t.CULL_FACE),W=e}function pt(e,n,i){e?(st(t.POLYGON_OFFSET_FILL),q===n&&j===i||(t.polygonOffset(n,i),q=n,j=i)):ot(t.POLYGON_OFFSET_FILL)}return{buffers:{color:E,depth:y,stencil:T},enable:st,disable:ot,bindFramebuffer:function(e,n){return R[e]!==n&&(t.bindFramebuffer(e,n),R[e]=n,i&&(e===t.DRAW_FRAMEBUFFER&&(R[t.FRAMEBUFFER]=n),e===t.FRAMEBUFFER&&(R[t.DRAW_FRAMEBUFFER]=n)),!0)},drawBuffers:function(i,r){let a=L,s=!1;if(i)if(a=C.get(r),void 0===a&&(a=[],C.set(r,a)),i.isWebGLMultipleRenderTargets){const e=i.texture;if(a.length!==e.length||a[0]!==t.COLOR_ATTACHMENT0){for(let n=0,i=e.length;n<i;n++)a[n]=t.COLOR_ATTACHMENT0+n;a.length=e.length,s=!0}}else a[0]!==t.COLOR_ATTACHMENT0&&(a[0]=t.COLOR_ATTACHMENT0,s=!0);else a[0]!==t.BACK&&(a[0]=t.BACK,s=!0);s&&(n.isWebGL2?t.drawBuffers(a):e.get(\"WEBGL_draw_buffers\").drawBuffersWEBGL(a))},useProgram:function(e){return P!==e&&(t.useProgram(e),P=e,!0)},setBlending:ht,setMaterial:function(e,n){2===e.side?ot(t.CULL_FACE):st(t.CULL_FACE);let i=1===e.side;n&&(i=!i),ut(i),1===e.blending&&!1===e.transparent?ht(0):ht(e.blending,e.blendEquation,e.blendSrc,e.blendDst,e.blendEquationAlpha,e.blendSrcAlpha,e.blendDstAlpha,e.blendColor,e.blendAlpha,e.premultipliedAlpha),y.setFunc(e.depthFunc),y.setTest(e.depthTest),y.setMask(e.depthWrite),E.setMask(e.colorWrite);const r=e.stencilWrite;T.setTest(r),r&&(T.setMask(e.stencilWriteMask),T.setFunc(e.stencilFunc,e.stencilRef,e.stencilFuncMask),T.setOp(e.stencilFail,e.stencilZFail,e.stencilZPass)),pt(e.polygonOffset,e.polygonOffsetFactor,e.polygonOffsetUnits),!0===e.alphaToCoverage?st(t.SAMPLE_ALPHA_TO_COVERAGE):ot(t.SAMPLE_ALPHA_TO_COVERAGE)},setFlipSided:ut,setCullFace:dt,setLineWidth:function(e){e!==X&&(K&&t.lineWidth(e),X=e)},setPolygonOffset:pt,setScissorTest:function(e){e?st(t.SCISSOR_TEST):ot(t.SCISSOR_TEST)},activeTexture:function(e){void 0===e&&(e=t.TEXTURE0+Y-1),Q!==e&&(t.activeTexture(e),Q=e)},bindTexture:function(e,n,i){void 0===i&&(i=null===Q?t.TEXTURE0+Y-1:Q);let r=$[i];void 0===r&&(r={type:void 0,texture:void 0},$[i]=r),r.type===e&&r.texture===n||(Q!==i&&(t.activeTexture(i),Q=i),t.bindTexture(e,n||at[e]),r.type=e,r.texture=n)},unbindTexture:function(){const e=$[Q];void 0!==e&&void 0!==e.type&&(t.bindTexture(e.type,null),e.type=void 0,e.texture=void 0)},compressedTexImage2D:function(){try{t.compressedTexImage2D.apply(t,arguments)}catch(t){}},compressedTexImage3D:function(){try{t.compressedTexImage3D.apply(t,arguments)}catch(t){}},texImage2D:function(){try{t.texImage2D.apply(t,arguments)}catch(t){}},texImage3D:function(){try{t.texImage3D.apply(t,arguments)}catch(t){}},updateUBOMapping:function(e,n){let i=A.get(n);void 0===i&&(i=new WeakMap,A.set(n,i));let r=i.get(e);void 0===r&&(r=t.getUniformBlockIndex(n,e.name),i.set(e,r))},uniformBlockBinding:function(e,n){const i=A.get(n).get(e);b.get(n)!==i&&(t.uniformBlockBinding(n,i,e.__bindingPointIndex),b.set(n,i))},texStorage2D:function(){try{t.texStorage2D.apply(t,arguments)}catch(t){}},texStorage3D:function(){try{t.texStorage3D.apply(t,arguments)}catch(t){}},texSubImage2D:function(){try{t.texSubImage2D.apply(t,arguments)}catch(t){}},texSubImage3D:function(){try{t.texSubImage3D.apply(t,arguments)}catch(t){}},compressedTexSubImage2D:function(){try{t.compressedTexSubImage2D.apply(t,arguments)}catch(t){}},compressedTexSubImage3D:function(){try{t.compressedTexSubImage3D.apply(t,arguments)}catch(t){}},scissor:function(e){!1===nt.equals(e)&&(t.scissor(e.x,e.y,e.z,e.w),nt.copy(e))},viewport:function(e){!1===it.equals(e)&&(t.viewport(e.x,e.y,e.z,e.w),it.copy(e))},reset:function(){t.disable(t.BLEND),t.disable(t.CULL_FACE),t.disable(t.DEPTH_TEST),t.disable(t.POLYGON_OFFSET_FILL),t.disable(t.SCISSOR_TEST),t.disable(t.STENCIL_TEST),t.disable(t.SAMPLE_ALPHA_TO_COVERAGE),t.blendEquation(t.FUNC_ADD),t.blendFunc(t.ONE,t.ZERO),t.blendFuncSeparate(t.ONE,t.ZERO,t.ONE,t.ZERO),t.blendColor(0,0,0,0),t.colorMask(!0,!0,!0,!0),t.clearColor(0,0,0,0),t.depthMask(!0),t.depthFunc(t.LESS),t.clearDepth(1),t.stencilMask(4294967295),t.stencilFunc(t.ALWAYS,0,4294967295),t.stencilOp(t.KEEP,t.KEEP,t.KEEP),t.clearStencil(0),t.cullFace(t.BACK),t.frontFace(t.CCW),t.polygonOffset(0,0),t.activeTexture(t.TEXTURE0),t.bindFramebuffer(t.FRAMEBUFFER,null),!0===i&&(t.bindFramebuffer(t.DRAW_FRAMEBUFFER,null),t.bindFramebuffer(t.READ_FRAMEBUFFER,null)),t.useProgram(null),t.lineWidth(1),t.scissor(0,0,t.canvas.width,t.canvas.height),t.viewport(0,0,t.canvas.width,t.canvas.height),w={},Q=null,$={},R={},C=new WeakMap,L=[],P=null,U=!1,D=null,N=null,I=null,O=null,F=null,B=null,z=null,H=new En(0,0,0),V=0,G=!1,k=null,W=null,X=null,q=null,j=null,nt.set(0,0,t.canvas.width,t.canvas.height),it.set(0,0,t.canvas.width,t.canvas.height),E.reset(),y.reset(),T.reset()}}}function Qa(t,e,n,i,r,a,s){const o=r.isWebGL2,l=e.has(\"WEBGL_multisampled_render_to_texture\")?e.get(\"WEBGL_multisampled_render_to_texture\"):null,c=\"undefined\"!=typeof navigator&&/OculusBrowser/g.test(navigator.userAgent),h=new WeakMap;let u;const d=new WeakMap;let p=!1;try{p=\"undefined\"!=typeof OffscreenCanvas&&null!==new OffscreenCanvas(1,1).getContext(\"2d\")}catch(t){}function f(t,e){return p?new OffscreenCanvas(t,e):Dt(\"canvas\")}function m(t,e,n,i){let r=1;if((t.width>i||t.height>i)&&(r=i/Math.max(t.width,t.height)),r<1||!0===e){if(\"undefined\"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||\"undefined\"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||\"undefined\"!=typeof ImageBitmap&&t instanceof ImageBitmap){const i=e?At:Math.floor,a=i(r*t.width),s=i(r*t.height);void 0===u&&(u=f(a,s));const o=n?f(a,s):u;o.width=a,o.height=s;return o.getContext(\"2d\").drawImage(t,0,0,a,s),o}return t}return t}function g(t){return bt(t.width)&&bt(t.height)}function _(t,e){return t.generateMipmaps&&e&&t.minFilter!==R&&t.minFilter!==P}function v(e){t.generateMipmap(e)}function x(n,i,r,a,s=!1){if(!1===o)return i;if(null!==n&&void 0!==t[n])return t[n];let l=i;if(i===t.RED&&(r===t.FLOAT&&(l=t.R32F),r===t.HALF_FLOAT&&(l=t.R16F),r===t.UNSIGNED_BYTE&&(l=t.R8)),i===t.RED_INTEGER&&(r===t.UNSIGNED_BYTE&&(l=t.R8UI),r===t.UNSIGNED_SHORT&&(l=t.R16UI),r===t.UNSIGNED_INT&&(l=t.R32UI),r===t.BYTE&&(l=t.R8I),r===t.SHORT&&(l=t.R16I),r===t.INT&&(l=t.R32I)),i===t.RG&&(r===t.FLOAT&&(l=t.RG32F),r===t.HALF_FLOAT&&(l=t.RG16F),r===t.UNSIGNED_BYTE&&(l=t.RG8)),i===t.RGBA){const e=s?et:Vt.getTransfer(a);r===t.FLOAT&&(l=t.RGBA32F),r===t.HALF_FLOAT&&(l=t.RGBA16F),r===t.UNSIGNED_BYTE&&(l=e===nt?t.SRGB8_ALPHA8:t.RGBA8),r===t.UNSIGNED_SHORT_4_4_4_4&&(l=t.RGBA4),r===t.UNSIGNED_SHORT_5_5_5_1&&(l=t.RGB5_A1)}return l!==t.R16F&&l!==t.R32F&&l!==t.RG16F&&l!==t.RG32F&&l!==t.RGBA16F&&l!==t.RGBA32F||e.get(\"EXT_color_buffer_float\"),l}function M(t,e,n){return!0===_(t,n)||t.isFramebufferTexture&&t.minFilter!==R&&t.minFilter!==P?Math.log2(Math.max(e.width,e.height))+1:void 0!==t.mipmaps&&t.mipmaps.length>0?t.mipmaps.length:t.isCompressedTexture&&Array.isArray(t.image)?e.mipmaps.length:1}function S(e){return e===R||1004===e||e===L?t.NEAREST:t.LINEAR}function E(t){const e=t.target;e.removeEventListener(\"dispose\",E),function(t){const e=i.get(t);if(void 0===e.__webglInit)return;const n=t.source,r=d.get(n);if(r){const i=r[e.__cacheKey];i.usedTimes--,0===i.usedTimes&&T(t),0===Object.keys(r).length&&d.delete(n)}i.remove(t)}(e),e.isVideoTexture&&h.delete(e)}function y(e){const n=e.target;n.removeEventListener(\"dispose\",y),function(e){const n=e.texture,r=i.get(e),a=i.get(n);void 0!==a.__webglTexture&&(t.deleteTexture(a.__webglTexture),s.memory.textures--);e.depthTexture&&e.depthTexture.dispose();if(e.isWebGLCubeRenderTarget)for(let e=0;e<6;e++){if(Array.isArray(r.__webglFramebuffer[e]))for(let n=0;n<r.__webglFramebuffer[e].length;n++)t.deleteFramebuffer(r.__webglFramebuffer[e][n]);else t.deleteFramebuffer(r.__webglFramebuffer[e]);r.__webglDepthbuffer&&t.deleteRenderbuffer(r.__webglDepthbuffer[e])}else{if(Array.isArray(r.__webglFramebuffer))for(let e=0;e<r.__webglFramebuffer.length;e++)t.deleteFramebuffer(r.__webglFramebuffer[e]);else t.deleteFramebuffer(r.__webglFramebuffer);if(r.__webglDepthbuffer&&t.deleteRenderbuffer(r.__webglDepthbuffer),r.__webglMultisampledFramebuffer&&t.deleteFramebuffer(r.__webglMultisampledFramebuffer),r.__webglColorRenderbuffer)for(let e=0;e<r.__webglColorRenderbuffer.length;e++)r.__webglColorRenderbuffer[e]&&t.deleteRenderbuffer(r.__webglColorRenderbuffer[e]);r.__webglDepthRenderbuffer&&t.deleteRenderbuffer(r.__webglDepthRenderbuffer)}if(e.isWebGLMultipleRenderTargets)for(let e=0,r=n.length;e<r;e++){const r=i.get(n[e]);r.__webglTexture&&(t.deleteTexture(r.__webglTexture),s.memory.textures--),i.remove(n[e])}i.remove(n),i.remove(e)}(n)}function T(e){const n=i.get(e);t.deleteTexture(n.__webglTexture);const r=e.source;delete d.get(r)[n.__cacheKey],s.memory.textures--}let N=0;function O(e,r){const a=i.get(e);if(e.isVideoTexture&&function(t){const e=s.render.frame;h.get(t)!==e&&(h.set(t,e),t.update())}(e),!1===e.isRenderTargetTexture&&e.version>0&&a.__version!==e.version){const t=e.image;if(null===t);else if(!1!==t.complete)return void K(a,e,r)}n.bindTexture(t.TEXTURE_2D,a.__webglTexture,t.TEXTURE0+r)}const W={[b]:t.REPEAT,[A]:t.CLAMP_TO_EDGE,[w]:t.MIRRORED_REPEAT},X={[R]:t.NEAREST,[C]:t.NEAREST_MIPMAP_NEAREST,[L]:t.NEAREST_MIPMAP_LINEAR,[P]:t.LINEAR,[U]:t.LINEAR_MIPMAP_NEAREST,[D]:t.LINEAR_MIPMAP_LINEAR},q={[st]:t.NEVER,[pt]:t.ALWAYS,[ot]:t.LESS,[ct]:t.LEQUAL,[lt]:t.EQUAL,[dt]:t.GEQUAL,[ht]:t.GREATER,[ut]:t.NOTEQUAL};function j(n,a,s){if(s?(t.texParameteri(n,t.TEXTURE_WRAP_S,W[a.wrapS]),t.texParameteri(n,t.TEXTURE_WRAP_T,W[a.wrapT]),n!==t.TEXTURE_3D&&n!==t.TEXTURE_2D_ARRAY||t.texParameteri(n,t.TEXTURE_WRAP_R,W[a.wrapR]),t.texParameteri(n,t.TEXTURE_MAG_FILTER,X[a.magFilter]),t.texParameteri(n,t.TEXTURE_MIN_FILTER,X[a.minFilter])):(t.texParameteri(n,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(n,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),n!==t.TEXTURE_3D&&n!==t.TEXTURE_2D_ARRAY||t.texParameteri(n,t.TEXTURE_WRAP_R,t.CLAMP_TO_EDGE),a.wrapS!==A||a.wrapT,t.texParameteri(n,t.TEXTURE_MAG_FILTER,S(a.magFilter)),t.texParameteri(n,t.TEXTURE_MIN_FILTER,S(a.minFilter)),a.minFilter!==R&&a.minFilter),a.compareFunction&&(t.texParameteri(n,t.TEXTURE_COMPARE_MODE,t.COMPARE_REF_TO_TEXTURE),t.texParameteri(n,t.TEXTURE_COMPARE_FUNC,q[a.compareFunction])),!0===e.has(\"EXT_texture_filter_anisotropic\")){const s=e.get(\"EXT_texture_filter_anisotropic\");if(a.magFilter===R)return;if(a.minFilter!==L&&a.minFilter!==D)return;if(a.type===B&&!1===e.has(\"OES_texture_float_linear\"))return;if(!1===o&&a.type===z&&!1===e.has(\"OES_texture_half_float_linear\"))return;(a.anisotropy>1||i.get(a).__currentAnisotropy)&&(t.texParameterf(n,s.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(a.anisotropy,r.getMaxAnisotropy())),i.get(a).__currentAnisotropy=a.anisotropy)}}function Y(e,n){let i=!1;void 0===e.__webglInit&&(e.__webglInit=!0,n.addEventListener(\"dispose\",E));const r=n.source;let a=d.get(r);void 0===a&&(a={},d.set(r,a));const o=function(t){const e=[];return e.push(t.wrapS),e.push(t.wrapT),e.push(t.wrapR||0),e.push(t.magFilter),e.push(t.minFilter),e.push(t.anisotropy),e.push(t.internalFormat),e.push(t.format),e.push(t.type),e.push(t.generateMipmaps),e.push(t.premultiplyAlpha),e.push(t.flipY),e.push(t.unpackAlignment),e.push(t.colorSpace),e.join()}(n);if(o!==e.__cacheKey){void 0===a[o]&&(a[o]={texture:t.createTexture(),usedTimes:0},s.memory.textures++,i=!0),a[o].usedTimes++;const r=a[e.__cacheKey];void 0!==r&&(a[e.__cacheKey].usedTimes--,0===r.usedTimes&&T(n)),e.__cacheKey=o,e.__webglTexture=a[o].texture}return i}function K(e,s,l){let c=t.TEXTURE_2D;(s.isDataArrayTexture||s.isCompressedArrayTexture)&&(c=t.TEXTURE_2D_ARRAY),s.isData3DTexture&&(c=t.TEXTURE_3D);const h=Y(e,s),u=s.source;n.bindTexture(c,e.__webglTexture,t.TEXTURE0+l);const d=i.get(u);if(u.version!==d.__version||!0===h){n.activeTexture(t.TEXTURE0+l);const e=Vt.getPrimaries(Vt.workingColorSpace),i=s.colorSpace===Z?null:Vt.getPrimaries(s.colorSpace),p=s.colorSpace===Z||e===i?t.NONE:t.BROWSER_DEFAULT_WEBGL;t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL,s.flipY),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,s.premultiplyAlpha),t.pixelStorei(t.UNPACK_ALIGNMENT,s.unpackAlignment),t.pixelStorei(t.UNPACK_COLORSPACE_CONVERSION_WEBGL,p);const f=function(t){return!o&&(t.wrapS!==A||t.wrapT!==A||t.minFilter!==R&&t.minFilter!==P)}(s)&&!1===g(s.image);let S=m(s.image,f,!1,r.maxTextureSize);S=at(s,S);const E=g(S)||o,y=a.convert(s.format,s.colorSpace);let T,b=a.convert(s.type),w=x(s.internalFormat,y,b,s.colorSpace,s.isVideoTexture);j(c,s,E);const C=s.mipmaps,L=o&&!0!==s.isVideoTexture&&36196!==w,U=void 0===d.__version||!0===h,D=M(s,S,E);if(s.isDepthTexture)w=t.DEPTH_COMPONENT,o?w=s.type===B?t.DEPTH_COMPONENT32F:s.type===F?t.DEPTH_COMPONENT24:s.type===H?t.DEPTH24_STENCIL8:t.DEPTH_COMPONENT16:s.type,s.format===G&&w===t.DEPTH_COMPONENT&&s.type!==I&&s.type!==F&&(s.type=F,b=a.convert(s.type)),s.format===k&&w===t.DEPTH_COMPONENT&&(w=t.DEPTH_STENCIL,s.type!==H&&(s.type=H,b=a.convert(s.type))),U&&(L?n.texStorage2D(t.TEXTURE_2D,1,w,S.width,S.height):n.texImage2D(t.TEXTURE_2D,0,w,S.width,S.height,0,y,b,null));else if(s.isDataTexture)if(C.length>0&&E){L&&U&&n.texStorage2D(t.TEXTURE_2D,D,w,C[0].width,C[0].height);for(let e=0,i=C.length;e<i;e++)T=C[e],L?n.texSubImage2D(t.TEXTURE_2D,e,0,0,T.width,T.height,y,b,T.data):n.texImage2D(t.TEXTURE_2D,e,w,T.width,T.height,0,y,b,T.data);s.generateMipmaps=!1}else L?(U&&n.texStorage2D(t.TEXTURE_2D,D,w,S.width,S.height),n.texSubImage2D(t.TEXTURE_2D,0,0,0,S.width,S.height,y,b,S.data)):n.texImage2D(t.TEXTURE_2D,0,w,S.width,S.height,0,y,b,S.data);else if(s.isCompressedTexture)if(s.isCompressedArrayTexture){L&&U&&n.texStorage3D(t.TEXTURE_2D_ARRAY,D,w,C[0].width,C[0].height,S.depth);for(let e=0,i=C.length;e<i;e++)T=C[e],s.format!==V?null!==y&&(L?n.compressedTexSubImage3D(t.TEXTURE_2D_ARRAY,e,0,0,0,T.width,T.height,S.depth,y,T.data,0,0):n.compressedTexImage3D(t.TEXTURE_2D_ARRAY,e,w,T.width,T.height,S.depth,0,T.data,0,0)):L?n.texSubImage3D(t.TEXTURE_2D_ARRAY,e,0,0,0,T.width,T.height,S.depth,y,b,T.data):n.texImage3D(t.TEXTURE_2D_ARRAY,e,w,T.width,T.height,S.depth,0,y,b,T.data)}else{L&&U&&n.texStorage2D(t.TEXTURE_2D,D,w,C[0].width,C[0].height);for(let e=0,i=C.length;e<i;e++)T=C[e],s.format!==V?null!==y&&(L?n.compressedTexSubImage2D(t.TEXTURE_2D,e,0,0,T.width,T.height,y,T.data):n.compressedTexImage2D(t.TEXTURE_2D,e,w,T.width,T.height,0,T.data)):L?n.texSubImage2D(t.TEXTURE_2D,e,0,0,T.width,T.height,y,b,T.data):n.texImage2D(t.TEXTURE_2D,e,w,T.width,T.height,0,y,b,T.data)}else if(s.isDataArrayTexture)L?(U&&n.texStorage3D(t.TEXTURE_2D_ARRAY,D,w,S.width,S.height,S.depth),n.texSubImage3D(t.TEXTURE_2D_ARRAY,0,0,0,0,S.width,S.height,S.depth,y,b,S.data)):n.texImage3D(t.TEXTURE_2D_ARRAY,0,w,S.width,S.height,S.depth,0,y,b,S.data);else if(s.isData3DTexture)L?(U&&n.texStorage3D(t.TEXTURE_3D,D,w,S.width,S.height,S.depth),n.texSubImage3D(t.TEXTURE_3D,0,0,0,0,S.width,S.height,S.depth,y,b,S.data)):n.texImage3D(t.TEXTURE_3D,0,w,S.width,S.height,S.depth,0,y,b,S.data);else if(s.isFramebufferTexture){if(U)if(L)n.texStorage2D(t.TEXTURE_2D,D,w,S.width,S.height);else{let e=S.width,i=S.height;for(let r=0;r<D;r++)n.texImage2D(t.TEXTURE_2D,r,w,e,i,0,y,b,null),e>>=1,i>>=1}}else if(C.length>0&&E){L&&U&&n.texStorage2D(t.TEXTURE_2D,D,w,C[0].width,C[0].height);for(let e=0,i=C.length;e<i;e++)T=C[e],L?n.texSubImage2D(t.TEXTURE_2D,e,0,0,y,b,T):n.texImage2D(t.TEXTURE_2D,e,w,y,b,T);s.generateMipmaps=!1}else L?(U&&n.texStorage2D(t.TEXTURE_2D,D,w,S.width,S.height),n.texSubImage2D(t.TEXTURE_2D,0,0,0,y,b,S)):n.texImage2D(t.TEXTURE_2D,0,w,y,b,S);_(s,E)&&v(c),d.__version=u.version,s.onUpdate&&s.onUpdate(s)}e.__version=s.version}function J(e,r,s,o,c,h){const u=a.convert(s.format,s.colorSpace),d=a.convert(s.type),p=x(s.internalFormat,u,d,s.colorSpace);if(!i.get(r).__hasExternalTextures){const e=Math.max(1,r.width>>h),i=Math.max(1,r.height>>h);c===t.TEXTURE_3D||c===t.TEXTURE_2D_ARRAY?n.texImage3D(c,h,p,e,i,r.depth,0,u,d,null):n.texImage2D(c,h,p,e,i,0,u,d,null)}n.bindFramebuffer(t.FRAMEBUFFER,e),rt(r)?l.framebufferTexture2DMultisampleEXT(t.FRAMEBUFFER,o,c,i.get(s).__webglTexture,0,it(r)):(c===t.TEXTURE_2D||c>=t.TEXTURE_CUBE_MAP_POSITIVE_X&&c<=t.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&t.framebufferTexture2D(t.FRAMEBUFFER,o,c,i.get(s).__webglTexture,h),n.bindFramebuffer(t.FRAMEBUFFER,null)}function $(e,n,i){if(t.bindRenderbuffer(t.RENDERBUFFER,e),n.depthBuffer&&!n.stencilBuffer){let r=!0===o?t.DEPTH_COMPONENT24:t.DEPTH_COMPONENT16;if(i||rt(n)){const e=n.depthTexture;e&&e.isDepthTexture&&(e.type===B?r=t.DEPTH_COMPONENT32F:e.type===F&&(r=t.DEPTH_COMPONENT24));const i=it(n);rt(n)?l.renderbufferStorageMultisampleEXT(t.RENDERBUFFER,i,r,n.width,n.height):t.renderbufferStorageMultisample(t.RENDERBUFFER,i,r,n.width,n.height)}else t.renderbufferStorage(t.RENDERBUFFER,r,n.width,n.height);t.framebufferRenderbuffer(t.FRAMEBUFFER,t.DEPTH_ATTACHMENT,t.RENDERBUFFER,e)}else if(n.depthBuffer&&n.stencilBuffer){const r=it(n);i&&!1===rt(n)?t.renderbufferStorageMultisample(t.RENDERBUFFER,r,t.DEPTH24_STENCIL8,n.width,n.height):rt(n)?l.renderbufferStorageMultisampleEXT(t.RENDERBUFFER,r,t.DEPTH24_STENCIL8,n.width,n.height):t.renderbufferStorage(t.RENDERBUFFER,t.DEPTH_STENCIL,n.width,n.height),t.framebufferRenderbuffer(t.FRAMEBUFFER,t.DEPTH_STENCIL_ATTACHMENT,t.RENDERBUFFER,e)}else{const e=!0===n.isWebGLMultipleRenderTargets?n.texture:[n.texture];for(let r=0;r<e.length;r++){const s=e[r],o=a.convert(s.format,s.colorSpace),c=a.convert(s.type),h=x(s.internalFormat,o,c,s.colorSpace),u=it(n);i&&!1===rt(n)?t.renderbufferStorageMultisample(t.RENDERBUFFER,u,h,n.width,n.height):rt(n)?l.renderbufferStorageMultisampleEXT(t.RENDERBUFFER,u,h,n.width,n.height):t.renderbufferStorage(t.RENDERBUFFER,h,n.width,n.height)}}t.bindRenderbuffer(t.RENDERBUFFER,null)}function tt(e){const r=i.get(e),a=!0===e.isWebGLCubeRenderTarget;if(e.depthTexture&&!r.__autoAllocateDepthBuffer){if(a)throw new Error(\"target.depthTexture not supported in Cube render targets\");!function(e,r){if(r&&r.isWebGLCubeRenderTarget)throw new Error(\"Depth Texture with cube render targets is not supported\");if(n.bindFramebuffer(t.FRAMEBUFFER,e),!r.depthTexture||!r.depthTexture.isDepthTexture)throw new Error(\"renderTarget.depthTexture must be an instance of THREE.DepthTexture\");i.get(r.depthTexture).__webglTexture&&r.depthTexture.image.width===r.width&&r.depthTexture.image.height===r.height||(r.depthTexture.image.width=r.width,r.depthTexture.image.height=r.height,r.depthTexture.needsUpdate=!0),O(r.depthTexture,0);const a=i.get(r.depthTexture).__webglTexture,s=it(r);if(r.depthTexture.format===G)rt(r)?l.framebufferTexture2DMultisampleEXT(t.FRAMEBUFFER,t.DEPTH_ATTACHMENT,t.TEXTURE_2D,a,0,s):t.framebufferTexture2D(t.FRAMEBUFFER,t.DEPTH_ATTACHMENT,t.TEXTURE_2D,a,0);else{if(r.depthTexture.format!==k)throw new Error(\"Unknown depthTexture format\");rt(r)?l.framebufferTexture2DMultisampleEXT(t.FRAMEBUFFER,t.DEPTH_STENCIL_ATTACHMENT,t.TEXTURE_2D,a,0,s):t.framebufferTexture2D(t.FRAMEBUFFER,t.DEPTH_STENCIL_ATTACHMENT,t.TEXTURE_2D,a,0)}}(r.__webglFramebuffer,e)}else if(a){r.__webglDepthbuffer=[];for(let i=0;i<6;i++)n.bindFramebuffer(t.FRAMEBUFFER,r.__webglFramebuffer[i]),r.__webglDepthbuffer[i]=t.createRenderbuffer(),$(r.__webglDepthbuffer[i],e,!1)}else n.bindFramebuffer(t.FRAMEBUFFER,r.__webglFramebuffer),r.__webglDepthbuffer=t.createRenderbuffer(),$(r.__webglDepthbuffer,e,!1);n.bindFramebuffer(t.FRAMEBUFFER,null)}function it(t){return Math.min(r.maxSamples,t.samples)}function rt(t){const n=i.get(t);return o&&t.samples>0&&!0===e.has(\"WEBGL_multisampled_render_to_texture\")&&!1!==n.__useRenderToTexture}function at(t,n){const i=t.colorSpace,r=t.format;t.type;return!0===t.isCompressedTexture||!0===t.isVideoTexture||t.format===mt||i!==Q&&i!==Z&&Vt.getTransfer(i)===nt&&!1===o&&(!0===e.has(\"EXT_sRGB\")&&r===V?(t.format=mt,t.minFilter=P,t.generateMipmaps=!1):n=Xt.sRGBToLinear(n)),n}this.allocateTextureUnit=function(){const t=N;return r.maxTextures,N+=1,t},this.resetTextureUnits=function(){N=0},this.setTexture2D=O,this.setTexture2DArray=function(e,r){const a=i.get(e);e.version>0&&a.__version!==e.version?K(a,e,r):n.bindTexture(t.TEXTURE_2D_ARRAY,a.__webglTexture,t.TEXTURE0+r)},this.setTexture3D=function(e,r){const a=i.get(e);e.version>0&&a.__version!==e.version?K(a,e,r):n.bindTexture(t.TEXTURE_3D,a.__webglTexture,t.TEXTURE0+r)},this.setTextureCube=function(e,s){const l=i.get(e);e.version>0&&l.__version!==e.version?function(e,s,l){if(6!==s.image.length)return;const c=Y(e,s),h=s.source;n.bindTexture(t.TEXTURE_CUBE_MAP,e.__webglTexture,t.TEXTURE0+l);const u=i.get(h);if(h.version!==u.__version||!0===c){n.activeTexture(t.TEXTURE0+l);const e=Vt.getPrimaries(Vt.workingColorSpace),i=s.colorSpace===Z?null:Vt.getPrimaries(s.colorSpace),d=s.colorSpace===Z||e===i?t.NONE:t.BROWSER_DEFAULT_WEBGL;t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL,s.flipY),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,s.premultiplyAlpha),t.pixelStorei(t.UNPACK_ALIGNMENT,s.unpackAlignment),t.pixelStorei(t.UNPACK_COLORSPACE_CONVERSION_WEBGL,d);const p=s.isCompressedTexture||s.image[0].isCompressedTexture,f=s.image[0]&&s.image[0].isDataTexture,S=[];for(let t=0;t<6;t++)S[t]=p||f?f?s.image[t].image:s.image[t]:m(s.image[t],!1,!0,r.maxCubemapSize),S[t]=at(s,S[t]);const E=S[0],y=g(E)||o,T=a.convert(s.format,s.colorSpace),b=a.convert(s.type),A=x(s.internalFormat,T,b,s.colorSpace),w=o&&!0!==s.isVideoTexture,R=void 0===u.__version||!0===c;let C,L=M(s,E,y);if(j(t.TEXTURE_CUBE_MAP,s,y),p){w&&R&&n.texStorage2D(t.TEXTURE_CUBE_MAP,L,A,E.width,E.height);for(let e=0;e<6;e++){C=S[e].mipmaps;for(let i=0;i<C.length;i++){const r=C[i];s.format!==V?null!==T&&(w?n.compressedTexSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,i,0,0,r.width,r.height,T,r.data):n.compressedTexImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,i,A,r.width,r.height,0,r.data)):w?n.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,i,0,0,r.width,r.height,T,b,r.data):n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,i,A,r.width,r.height,0,T,b,r.data)}}}else{C=s.mipmaps,w&&R&&(C.length>0&&L++,n.texStorage2D(t.TEXTURE_CUBE_MAP,L,A,S[0].width,S[0].height));for(let e=0;e<6;e++)if(f){w?n.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,0,0,0,S[e].width,S[e].height,T,b,S[e].data):n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,0,A,S[e].width,S[e].height,0,T,b,S[e].data);for(let i=0;i<C.length;i++){const r=C[i].image[e].image;w?n.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,i+1,0,0,r.width,r.height,T,b,r.data):n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,i+1,A,r.width,r.height,0,T,b,r.data)}}else{w?n.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,0,0,0,T,b,S[e]):n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,0,A,T,b,S[e]);for(let i=0;i<C.length;i++){const r=C[i];w?n.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,i+1,0,0,T,b,r.image[e]):n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+e,i+1,A,T,b,r.image[e])}}}_(s,y)&&v(t.TEXTURE_CUBE_MAP),u.__version=h.version,s.onUpdate&&s.onUpdate(s)}e.__version=s.version}(l,e,s):n.bindTexture(t.TEXTURE_CUBE_MAP,l.__webglTexture,t.TEXTURE0+s)},this.rebindTextures=function(e,n,r){const a=i.get(e);void 0!==n&&J(a.__webglFramebuffer,e,e.texture,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,0),void 0!==r&&tt(e)},this.setupRenderTarget=function(e){const l=e.texture,c=i.get(e),h=i.get(l);e.addEventListener(\"dispose\",y),!0!==e.isWebGLMultipleRenderTargets&&(void 0===h.__webglTexture&&(h.__webglTexture=t.createTexture()),h.__version=l.version,s.memory.textures++);const u=!0===e.isWebGLCubeRenderTarget,d=!0===e.isWebGLMultipleRenderTargets,p=g(e)||o;if(u){c.__webglFramebuffer=[];for(let e=0;e<6;e++)if(o&&l.mipmaps&&l.mipmaps.length>0){c.__webglFramebuffer[e]=[];for(let n=0;n<l.mipmaps.length;n++)c.__webglFramebuffer[e][n]=t.createFramebuffer()}else c.__webglFramebuffer[e]=t.createFramebuffer()}else{if(o&&l.mipmaps&&l.mipmaps.length>0){c.__webglFramebuffer=[];for(let e=0;e<l.mipmaps.length;e++)c.__webglFramebuffer[e]=t.createFramebuffer()}else c.__webglFramebuffer=t.createFramebuffer();if(d&&r.drawBuffers){const n=e.texture;for(let e=0,r=n.length;e<r;e++){const r=i.get(n[e]);void 0===r.__webglTexture&&(r.__webglTexture=t.createTexture(),s.memory.textures++)}}if(o&&e.samples>0&&!1===rt(e)){const i=d?l:[l];c.__webglMultisampledFramebuffer=t.createFramebuffer(),c.__webglColorRenderbuffer=[],n.bindFramebuffer(t.FRAMEBUFFER,c.__webglMultisampledFramebuffer);for(let n=0;n<i.length;n++){const r=i[n];c.__webglColorRenderbuffer[n]=t.createRenderbuffer(),t.bindRenderbuffer(t.RENDERBUFFER,c.__webglColorRenderbuffer[n]);const s=a.convert(r.format,r.colorSpace),o=a.convert(r.type),l=x(r.internalFormat,s,o,r.colorSpace,!0===e.isXRRenderTarget),h=it(e);t.renderbufferStorageMultisample(t.RENDERBUFFER,h,l,e.width,e.height),t.framebufferRenderbuffer(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0+n,t.RENDERBUFFER,c.__webglColorRenderbuffer[n])}t.bindRenderbuffer(t.RENDERBUFFER,null),e.depthBuffer&&(c.__webglDepthRenderbuffer=t.createRenderbuffer(),$(c.__webglDepthRenderbuffer,e,!0)),n.bindFramebuffer(t.FRAMEBUFFER,null)}}if(u){n.bindTexture(t.TEXTURE_CUBE_MAP,h.__webglTexture),j(t.TEXTURE_CUBE_MAP,l,p);for(let n=0;n<6;n++)if(o&&l.mipmaps&&l.mipmaps.length>0)for(let i=0;i<l.mipmaps.length;i++)J(c.__webglFramebuffer[n][i],e,l,t.COLOR_ATTACHMENT0,t.TEXTURE_CUBE_MAP_POSITIVE_X+n,i);else J(c.__webglFramebuffer[n],e,l,t.COLOR_ATTACHMENT0,t.TEXTURE_CUBE_MAP_POSITIVE_X+n,0);_(l,p)&&v(t.TEXTURE_CUBE_MAP),n.unbindTexture()}else if(d){const r=e.texture;for(let a=0,s=r.length;a<s;a++){const s=r[a],o=i.get(s);n.bindTexture(t.TEXTURE_2D,o.__webglTexture),j(t.TEXTURE_2D,s,p),J(c.__webglFramebuffer,e,s,t.COLOR_ATTACHMENT0+a,t.TEXTURE_2D,0),_(s,p)&&v(t.TEXTURE_2D)}n.unbindTexture()}else{let i=t.TEXTURE_2D;if((e.isWebGL3DRenderTarget||e.isWebGLArrayRenderTarget)&&o&&(i=e.isWebGL3DRenderTarget?t.TEXTURE_3D:t.TEXTURE_2D_ARRAY),n.bindTexture(i,h.__webglTexture),j(i,l,p),o&&l.mipmaps&&l.mipmaps.length>0)for(let n=0;n<l.mipmaps.length;n++)J(c.__webglFramebuffer[n],e,l,t.COLOR_ATTACHMENT0,i,n);else J(c.__webglFramebuffer,e,l,t.COLOR_ATTACHMENT0,i,0);_(l,p)&&v(i),n.unbindTexture()}e.depthBuffer&&tt(e)},this.updateRenderTargetMipmap=function(e){const r=g(e)||o,a=!0===e.isWebGLMultipleRenderTargets?e.texture:[e.texture];for(let s=0,o=a.length;s<o;s++){const o=a[s];if(_(o,r)){const r=e.isWebGLCubeRenderTarget?t.TEXTURE_CUBE_MAP:t.TEXTURE_2D,a=i.get(o).__webglTexture;n.bindTexture(r,a),v(r),n.unbindTexture()}}},this.updateMultisampleRenderTarget=function(e){if(o&&e.samples>0&&!1===rt(e)){const r=e.isWebGLMultipleRenderTargets?e.texture:[e.texture],a=e.width,s=e.height;let o=t.COLOR_BUFFER_BIT;const l=[],h=e.stencilBuffer?t.DEPTH_STENCIL_ATTACHMENT:t.DEPTH_ATTACHMENT,u=i.get(e),d=!0===e.isWebGLMultipleRenderTargets;if(d)for(let e=0;e<r.length;e++)n.bindFramebuffer(t.FRAMEBUFFER,u.__webglMultisampledFramebuffer),t.framebufferRenderbuffer(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0+e,t.RENDERBUFFER,null),n.bindFramebuffer(t.FRAMEBUFFER,u.__webglFramebuffer),t.framebufferTexture2D(t.DRAW_FRAMEBUFFER,t.COLOR_ATTACHMENT0+e,t.TEXTURE_2D,null,0);n.bindFramebuffer(t.READ_FRAMEBUFFER,u.__webglMultisampledFramebuffer),n.bindFramebuffer(t.DRAW_FRAMEBUFFER,u.__webglFramebuffer);for(let n=0;n<r.length;n++){l.push(t.COLOR_ATTACHMENT0+n),e.depthBuffer&&l.push(h);const p=void 0!==u.__ignoreDepthValues&&u.__ignoreDepthValues;if(!1===p&&(e.depthBuffer&&(o|=t.DEPTH_BUFFER_BIT),e.stencilBuffer&&(o|=t.STENCIL_BUFFER_BIT)),d&&t.framebufferRenderbuffer(t.READ_FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.RENDERBUFFER,u.__webglColorRenderbuffer[n]),!0===p&&(t.invalidateFramebuffer(t.READ_FRAMEBUFFER,[h]),t.invalidateFramebuffer(t.DRAW_FRAMEBUFFER,[h])),d){const e=i.get(r[n]).__webglTexture;t.framebufferTexture2D(t.DRAW_FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,e,0)}t.blitFramebuffer(0,0,a,s,0,0,a,s,o,t.NEAREST),c&&t.invalidateFramebuffer(t.READ_FRAMEBUFFER,l)}if(n.bindFramebuffer(t.READ_FRAMEBUFFER,null),n.bindFramebuffer(t.DRAW_FRAMEBUFFER,null),d)for(let e=0;e<r.length;e++){n.bindFramebuffer(t.FRAMEBUFFER,u.__webglMultisampledFramebuffer),t.framebufferRenderbuffer(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0+e,t.RENDERBUFFER,u.__webglColorRenderbuffer[e]);const a=i.get(r[e]).__webglTexture;n.bindFramebuffer(t.FRAMEBUFFER,u.__webglFramebuffer),t.framebufferTexture2D(t.DRAW_FRAMEBUFFER,t.COLOR_ATTACHMENT0+e,t.TEXTURE_2D,a,0)}n.bindFramebuffer(t.DRAW_FRAMEBUFFER,u.__webglMultisampledFramebuffer)}},this.setupDepthRenderbuffer=tt,this.setupFrameBufferTexture=J,this.useMultisampledRTT=rt}function $a(t,e,n){const i=n.isWebGL2;return{convert:function(n,r=\"\"){let a;const s=Vt.getTransfer(r);if(n===N)return t.UNSIGNED_BYTE;if(1017===n)return t.UNSIGNED_SHORT_4_4_4_4;if(1018===n)return t.UNSIGNED_SHORT_5_5_5_1;if(1010===n)return t.BYTE;if(1011===n)return t.SHORT;if(n===I)return t.UNSIGNED_SHORT;if(n===O)return t.INT;if(n===F)return t.UNSIGNED_INT;if(n===B)return t.FLOAT;if(n===z)return i?t.HALF_FLOAT:(a=e.get(\"OES_texture_half_float\"),null!==a?a.HALF_FLOAT_OES:null);if(1021===n)return t.ALPHA;if(n===V)return t.RGBA;if(1024===n)return t.LUMINANCE;if(1025===n)return t.LUMINANCE_ALPHA;if(n===G)return t.DEPTH_COMPONENT;if(n===k)return t.DEPTH_STENCIL;if(n===mt)return a=e.get(\"EXT_sRGB\"),null!==a?a.SRGB_ALPHA_EXT:null;if(1028===n)return t.RED;if(1029===n)return t.RED_INTEGER;if(1030===n)return t.RG;if(1031===n)return t.RG_INTEGER;if(1033===n)return t.RGBA_INTEGER;if(n===W||n===X||n===q||n===j)if(s===nt){if(a=e.get(\"WEBGL_compressed_texture_s3tc_srgb\"),null===a)return null;if(n===W)return a.COMPRESSED_SRGB_S3TC_DXT1_EXT;if(n===X)return a.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;if(n===q)return a.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;if(n===j)return a.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}else{if(a=e.get(\"WEBGL_compressed_texture_s3tc\"),null===a)return null;if(n===W)return a.COMPRESSED_RGB_S3TC_DXT1_EXT;if(n===X)return a.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(n===q)return a.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(n===j)return a.COMPRESSED_RGBA_S3TC_DXT5_EXT}if(35840===n||35841===n||35842===n||35843===n){if(a=e.get(\"WEBGL_compressed_texture_pvrtc\"),null===a)return null;if(35840===n)return a.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(35841===n)return a.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(35842===n)return a.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(35843===n)return a.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}if(36196===n)return a=e.get(\"WEBGL_compressed_texture_etc1\"),null!==a?a.COMPRESSED_RGB_ETC1_WEBGL:null;if(37492===n||37496===n){if(a=e.get(\"WEBGL_compressed_texture_etc\"),null===a)return null;if(37492===n)return s===nt?a.COMPRESSED_SRGB8_ETC2:a.COMPRESSED_RGB8_ETC2;if(37496===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:a.COMPRESSED_RGBA8_ETC2_EAC}if(37808===n||37809===n||37810===n||37811===n||37812===n||37813===n||37814===n||37815===n||37816===n||37817===n||37818===n||37819===n||37820===n||37821===n){if(a=e.get(\"WEBGL_compressed_texture_astc\"),null===a)return null;if(37808===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:a.COMPRESSED_RGBA_ASTC_4x4_KHR;if(37809===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:a.COMPRESSED_RGBA_ASTC_5x4_KHR;if(37810===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:a.COMPRESSED_RGBA_ASTC_5x5_KHR;if(37811===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:a.COMPRESSED_RGBA_ASTC_6x5_KHR;if(37812===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:a.COMPRESSED_RGBA_ASTC_6x6_KHR;if(37813===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:a.COMPRESSED_RGBA_ASTC_8x5_KHR;if(37814===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:a.COMPRESSED_RGBA_ASTC_8x6_KHR;if(37815===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:a.COMPRESSED_RGBA_ASTC_8x8_KHR;if(37816===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:a.COMPRESSED_RGBA_ASTC_10x5_KHR;if(37817===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:a.COMPRESSED_RGBA_ASTC_10x6_KHR;if(37818===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:a.COMPRESSED_RGBA_ASTC_10x8_KHR;if(37819===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:a.COMPRESSED_RGBA_ASTC_10x10_KHR;if(37820===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:a.COMPRESSED_RGBA_ASTC_12x10_KHR;if(37821===n)return s===nt?a.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:a.COMPRESSED_RGBA_ASTC_12x12_KHR}if(n===Y||36494===n||36495===n){if(a=e.get(\"EXT_texture_compression_bptc\"),null===a)return null;if(n===Y)return s===nt?a.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:a.COMPRESSED_RGBA_BPTC_UNORM_EXT;if(36494===n)return a.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT;if(36495===n)return a.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT}if(36283===n||36284===n||36285===n||36286===n){if(a=e.get(\"EXT_texture_compression_rgtc\"),null===a)return null;if(n===Y)return a.COMPRESSED_RED_RGTC1_EXT;if(36284===n)return a.COMPRESSED_SIGNED_RED_RGTC1_EXT;if(36285===n)return a.COMPRESSED_RED_GREEN_RGTC2_EXT;if(36286===n)return a.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT}return n===H?i?t.UNSIGNED_INT_24_8:(a=e.get(\"WEBGL_depth_texture\"),null!==a?a.UNSIGNED_INT_24_8_WEBGL:null):void 0!==t[n]?t[n]:null}}}class ts extends pi{constructor(t=[]){super(),this.isArrayCamera=!0,this.cameras=t}}class es extends an{constructor(){super(),this.isGroup=!0,this.type=\"Group\"}}const ns={type:\"move\"};class is{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return null===this._hand&&(this._hand=new es,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return null===this._targetRay&&(this._targetRay=new es,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new ie,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new ie),this._targetRay}getGripSpace(){return null===this._grip&&(this._grip=new es,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new ie,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new ie),this._grip}dispatchEvent(t){return null!==this._targetRay&&this._targetRay.dispatchEvent(t),null!==this._grip&&this._grip.dispatchEvent(t),null!==this._hand&&this._hand.dispatchEvent(t),this}connect(t){if(t&&t.hand){const e=this._hand;if(e)for(const n of t.hand.values())this._getHandJoint(e,n)}return this.dispatchEvent({type:\"connected\",data:t}),this}disconnect(t){return this.dispatchEvent({type:\"disconnected\",data:t}),null!==this._targetRay&&(this._targetRay.visible=!1),null!==this._grip&&(this._grip.visible=!1),null!==this._hand&&(this._hand.visible=!1),this}update(t,e,n){let i=null,r=null,a=null;const s=this._targetRay,o=this._grip,l=this._hand;if(t&&\"visible-blurred\"!==e.session.visibilityState){if(l&&t.hand){a=!0;for(const i of t.hand.values()){const t=e.getJointPose(i,n),r=this._getHandJoint(l,i);null!==t&&(r.matrix.fromArray(t.transform.matrix),r.matrix.decompose(r.position,r.rotation,r.scale),r.matrixWorldNeedsUpdate=!0,r.jointRadius=t.radius),r.visible=null!==t}const i=l.joints[\"index-finger-tip\"],r=l.joints[\"thumb-tip\"],s=i.position.distanceTo(r.position),o=.02,c=.005;l.inputState.pinching&&s>o+c?(l.inputState.pinching=!1,this.dispatchEvent({type:\"pinchend\",handedness:t.handedness,target:this})):!l.inputState.pinching&&s<=o-c&&(l.inputState.pinching=!0,this.dispatchEvent({type:\"pinchstart\",handedness:t.handedness,target:this}))}else null!==o&&t.gripSpace&&(r=e.getPose(t.gripSpace,n),null!==r&&(o.matrix.fromArray(r.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),o.matrixWorldNeedsUpdate=!0,r.linearVelocity?(o.hasLinearVelocity=!0,o.linearVelocity.copy(r.linearVelocity)):o.hasLinearVelocity=!1,r.angularVelocity?(o.hasAngularVelocity=!0,o.angularVelocity.copy(r.angularVelocity)):o.hasAngularVelocity=!1));null!==s&&(i=e.getPose(t.targetRaySpace,n),null===i&&null!==r&&(i=r),null!==i&&(s.matrix.fromArray(i.transform.matrix),s.matrix.decompose(s.position,s.rotation,s.scale),s.matrixWorldNeedsUpdate=!0,i.linearVelocity?(s.hasLinearVelocity=!0,s.linearVelocity.copy(i.linearVelocity)):s.hasLinearVelocity=!1,i.angularVelocity?(s.hasAngularVelocity=!0,s.angularVelocity.copy(i.angularVelocity)):s.hasAngularVelocity=!1,this.dispatchEvent(ns)))}return null!==s&&(s.visible=null!==i),null!==o&&(o.visible=null!==r),null!==l&&(l.visible=null!==a),this}_getHandJoint(t,e){if(void 0===t.joints[e.jointName]){const n=new es;n.matrixAutoUpdate=!1,n.visible=!1,t.joints[e.jointName]=n,t.add(n)}return t.joints[e.jointName]}}class rs extends vt{constructor(t,e){super();const n=this;let i=null,r=1,a=null,s=\"local-floor\",o=1,l=null,c=null,h=null,u=null,d=null,p=null;const f=e.getContextAttributes();let m=null,g=null;const _=[],v=[],x=new Ct;let M=null;const S=new pi;S.layers.enable(1),S.viewport=new Jt;const E=new pi;E.layers.enable(2),E.viewport=new Jt;const y=[S,E],T=new ts;T.layers.enable(1),T.layers.enable(2);let b=null,A=null;function w(t){const e=v.indexOf(t.inputSource);if(-1===e)return;const n=_[e];void 0!==n&&(n.update(t.inputSource,t.frame,l||a),n.dispatchEvent({type:t.type,data:t.inputSource}))}function R(){i.removeEventListener(\"select\",w),i.removeEventListener(\"selectstart\",w),i.removeEventListener(\"selectend\",w),i.removeEventListener(\"squeeze\",w),i.removeEventListener(\"squeezestart\",w),i.removeEventListener(\"squeezeend\",w),i.removeEventListener(\"end\",R),i.removeEventListener(\"inputsourceschange\",C);for(let t=0;t<_.length;t++){const e=v[t];null!==e&&(v[t]=null,_[t].disconnect(e))}b=null,A=null,t.setRenderTarget(m),d=null,u=null,h=null,i=null,g=null,I.stop(),n.isPresenting=!1,t.setPixelRatio(M),t.setSize(x.width,x.height,!1),n.dispatchEvent({type:\"sessionend\"})}function C(t){for(let e=0;e<t.removed.length;e++){const n=t.removed[e],i=v.indexOf(n);i>=0&&(v[i]=null,_[i].disconnect(n))}for(let e=0;e<t.added.length;e++){const n=t.added[e];let i=v.indexOf(n);if(-1===i){for(let t=0;t<_.length;t++){if(t>=v.length){v.push(n),i=t;break}if(null===v[t]){v[t]=n,i=t;break}}if(-1===i)break}const r=_[i];r&&r.connect(n)}}this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(t){let e=_[t];return void 0===e&&(e=new is,_[t]=e),e.getTargetRaySpace()},this.getControllerGrip=function(t){let e=_[t];return void 0===e&&(e=new is,_[t]=e),e.getGripSpace()},this.getHand=function(t){let e=_[t];return void 0===e&&(e=new is,_[t]=e),e.getHandSpace()},this.setFramebufferScaleFactor=function(t){r=t,n.isPresenting},this.setReferenceSpaceType=function(t){s=t,n.isPresenting},this.getReferenceSpace=function(){return l||a},this.setReferenceSpace=function(t){l=t},this.getBaseLayer=function(){return null!==u?u:d},this.getBinding=function(){return h},this.getFrame=function(){return p},this.getSession=function(){return i},this.setSession=async function(c){if(i=c,null!==i){if(m=t.getRenderTarget(),i.addEventListener(\"select\",w),i.addEventListener(\"selectstart\",w),i.addEventListener(\"selectend\",w),i.addEventListener(\"squeeze\",w),i.addEventListener(\"squeezestart\",w),i.addEventListener(\"squeezeend\",w),i.addEventListener(\"end\",R),i.addEventListener(\"inputsourceschange\",C),!0!==f.xrCompatible&&await e.makeXRCompatible(),M=t.getPixelRatio(),t.getSize(x),void 0===i.renderState.layers||!1===t.capabilities.isWebGL2){const n={antialias:void 0!==i.renderState.layers||f.antialias,alpha:!0,depth:f.depth,stencil:f.stencil,framebufferScaleFactor:r};d=new XRWebGLLayer(i,e,n),i.updateRenderState({baseLayer:d}),t.setPixelRatio(1),t.setSize(d.framebufferWidth,d.framebufferHeight,!1),g=new $t(d.framebufferWidth,d.framebufferHeight,{format:V,type:N,colorSpace:t.outputColorSpace,stencilBuffer:f.stencil})}else{let n=null,a=null,s=null;f.depth&&(s=f.stencil?e.DEPTH24_STENCIL8:e.DEPTH_COMPONENT24,n=f.stencil?k:G,a=f.stencil?H:F);const o={colorFormat:e.RGBA8,depthFormat:s,scaleFactor:r};h=new XRWebGLBinding(i,e),u=h.createProjectionLayer(o),i.updateRenderState({layers:[u]}),t.setPixelRatio(1),t.setSize(u.textureWidth,u.textureHeight,!1),g=new $t(u.textureWidth,u.textureHeight,{format:V,type:N,depthTexture:new hr(u.textureWidth,u.textureHeight,a,void 0,void 0,void 0,void 0,void 0,void 0,n),stencilBuffer:f.stencil,colorSpace:t.outputColorSpace,samples:f.antialias?4:0});t.properties.get(g).__ignoreDepthValues=u.ignoreDepthValues}g.isXRRenderTarget=!0,this.setFoveation(o),l=null,a=await i.requestReferenceSpace(s),I.setContext(i),I.start(),n.isPresenting=!0,n.dispatchEvent({type:\"sessionstart\"})}},this.getEnvironmentBlendMode=function(){if(null!==i)return i.environmentBlendMode};const L=new ie,P=new ie;function U(t,e){null===e?t.matrixWorld.copy(t.matrix):t.matrixWorld.multiplyMatrices(e.matrixWorld,t.matrix),t.matrixWorldInverse.copy(t.matrixWorld).invert()}this.updateCamera=function(t){if(null===i)return;T.near=E.near=S.near=t.near,T.far=E.far=S.far=t.far,b===T.near&&A===T.far||(i.updateRenderState({depthNear:T.near,depthFar:T.far}),b=T.near,A=T.far);const e=t.parent,n=T.cameras;U(T,e);for(let t=0;t<n.length;t++)U(n[t],e);2===n.length?function(t,e,n){L.setFromMatrixPosition(e.matrixWorld),P.setFromMatrixPosition(n.matrixWorld);const i=L.distanceTo(P),r=e.projectionMatrix.elements,a=n.projectionMatrix.elements,s=r[14]/(r[10]-1),o=r[14]/(r[10]+1),l=(r[9]+1)/r[5],c=(r[9]-1)/r[5],h=(r[8]-1)/r[0],u=(a[8]+1)/a[0],d=s*h,p=s*u,f=i/(-h+u),m=f*-h;e.matrixWorld.decompose(t.position,t.quaternion,t.scale),t.translateX(m),t.translateZ(f),t.matrixWorld.compose(t.position,t.quaternion,t.scale),t.matrixWorldInverse.copy(t.matrixWorld).invert();const g=s+f,_=o+f,v=d-m,x=p+(i-m),M=l*o/_*g,S=c*o/_*g;t.projectionMatrix.makePerspective(v,x,M,S,g,_),t.projectionMatrixInverse.copy(t.projectionMatrix).invert()}(T,S,E):T.projectionMatrix.copy(S.projectionMatrix),function(t,e,n){null===n?t.matrix.copy(e.matrixWorld):(t.matrix.copy(n.matrixWorld),t.matrix.invert(),t.matrix.multiply(e.matrixWorld));t.matrix.decompose(t.position,t.quaternion,t.scale),t.updateMatrixWorld(!0),t.projectionMatrix.copy(e.projectionMatrix),t.projectionMatrixInverse.copy(e.projectionMatrixInverse),t.isPerspectiveCamera&&(t.fov=2*St*Math.atan(1/t.projectionMatrix.elements[5]),t.zoom=1)}(t,T,e)},this.getCamera=function(){return T},this.getFoveation=function(){if(null!==u||null!==d)return o},this.setFoveation=function(t){o=t,null!==u&&(u.fixedFoveation=t),null!==d&&void 0!==d.fixedFoveation&&(d.fixedFoveation=t)};let D=null;const I=new bi;I.setAnimationLoop(function(e,i){if(c=i.getViewerPose(l||a),p=i,null!==c){const e=c.views;null!==d&&(t.setRenderTargetFramebuffer(g,d.framebuffer),t.setRenderTarget(g));let n=!1;e.length!==T.cameras.length&&(T.cameras.length=0,n=!0);for(let i=0;i<e.length;i++){const r=e[i];let a=null;if(null!==d)a=d.getViewport(r);else{const e=h.getViewSubImage(u,r);a=e.viewport,0===i&&(t.setRenderTargetTextures(g,e.colorTexture,u.ignoreDepthValues?void 0:e.depthStencilTexture),t.setRenderTarget(g))}let s=y[i];void 0===s&&(s=new pi,s.layers.enable(i),s.viewport=new Jt,y[i]=s),s.matrix.fromArray(r.transform.matrix),s.matrix.decompose(s.position,s.quaternion,s.scale),s.projectionMatrix.fromArray(r.projectionMatrix),s.projectionMatrixInverse.copy(s.projectionMatrix).invert(),s.viewport.set(a.x,a.y,a.width,a.height),0===i&&(T.matrix.copy(s.matrix),T.matrix.decompose(T.position,T.quaternion,T.scale)),!0===n&&T.cameras.push(s)}}for(let t=0;t<_.length;t++){const e=v[t],n=_[t];null!==e&&void 0!==n&&n.update(e,i,l||a)}D&&D(e,i),i.detectedPlanes&&n.dispatchEvent({type:\"planesdetected\",data:i}),p=null}),this.setAnimationLoop=function(t){D=t},this.dispose=function(){}}}function as(t,e){function n(t,e){!0===t.matrixAutoUpdate&&t.updateMatrix(),e.value.copy(t.matrix)}function i(i,r){i.opacity.value=r.opacity,r.color&&i.diffuse.value.copy(r.color),r.emissive&&i.emissive.value.copy(r.emissive).multiplyScalar(r.emissiveIntensity),r.map&&(i.map.value=r.map,n(r.map,i.mapTransform)),r.alphaMap&&(i.alphaMap.value=r.alphaMap,n(r.alphaMap,i.alphaMapTransform)),r.bumpMap&&(i.bumpMap.value=r.bumpMap,n(r.bumpMap,i.bumpMapTransform),i.bumpScale.value=r.bumpScale,1===r.side&&(i.bumpScale.value*=-1)),r.normalMap&&(i.normalMap.value=r.normalMap,n(r.normalMap,i.normalMapTransform),i.normalScale.value.copy(r.normalScale),1===r.side&&i.normalScale.value.negate()),r.displacementMap&&(i.displacementMap.value=r.displacementMap,n(r.displacementMap,i.displacementMapTransform),i.displacementScale.value=r.displacementScale,i.displacementBias.value=r.displacementBias),r.emissiveMap&&(i.emissiveMap.value=r.emissiveMap,n(r.emissiveMap,i.emissiveMapTransform)),r.specularMap&&(i.specularMap.value=r.specularMap,n(r.specularMap,i.specularMapTransform)),r.alphaTest>0&&(i.alphaTest.value=r.alphaTest);const a=e.get(r).envMap;if(a&&(i.envMap.value=a,i.flipEnvMap.value=a.isCubeTexture&&!1===a.isRenderTargetTexture?-1:1,i.reflectivity.value=r.reflectivity,i.ior.value=r.ior,i.refractionRatio.value=r.refractionRatio),r.lightMap){i.lightMap.value=r.lightMap;const e=!0===t._useLegacyLights?Math.PI:1;i.lightMapIntensity.value=r.lightMapIntensity*e,n(r.lightMap,i.lightMapTransform)}r.aoMap&&(i.aoMap.value=r.aoMap,i.aoMapIntensity.value=r.aoMapIntensity,n(r.aoMap,i.aoMapTransform))}return{refreshFogUniforms:function(e,n){n.color.getRGB(e.fogColor.value,ci(t)),n.isFog?(e.fogNear.value=n.near,e.fogFar.value=n.far):n.isFogExp2&&(e.fogDensity.value=n.density)},refreshMaterialUniforms:function(t,r,a,s,o){r.isMeshBasicMaterial||r.isMeshLambertMaterial?i(t,r):r.isMeshToonMaterial?(i(t,r),function(t,e){e.gradientMap&&(t.gradientMap.value=e.gradientMap)}(t,r)):r.isMeshPhongMaterial?(i(t,r),function(t,e){t.specular.value.copy(e.specular),t.shininess.value=Math.max(e.shininess,1e-4)}(t,r)):r.isMeshStandardMaterial?(i(t,r),function(t,i){t.metalness.value=i.metalness,i.metalnessMap&&(t.metalnessMap.value=i.metalnessMap,n(i.metalnessMap,t.metalnessMapTransform));t.roughness.value=i.roughness,i.roughnessMap&&(t.roughnessMap.value=i.roughnessMap,n(i.roughnessMap,t.roughnessMapTransform));const r=e.get(i).envMap;r&&(t.envMapIntensity.value=i.envMapIntensity)}(t,r),r.isMeshPhysicalMaterial&&function(t,e,i){t.ior.value=e.ior,e.sheen>0&&(t.sheenColor.value.copy(e.sheenColor).multiplyScalar(e.sheen),t.sheenRoughness.value=e.sheenRoughness,e.sheenColorMap&&(t.sheenColorMap.value=e.sheenColorMap,n(e.sheenColorMap,t.sheenColorMapTransform)),e.sheenRoughnessMap&&(t.sheenRoughnessMap.value=e.sheenRoughnessMap,n(e.sheenRoughnessMap,t.sheenRoughnessMapTransform)));e.clearcoat>0&&(t.clearcoat.value=e.clearcoat,t.clearcoatRoughness.value=e.clearcoatRoughness,e.clearcoatMap&&(t.clearcoatMap.value=e.clearcoatMap,n(e.clearcoatMap,t.clearcoatMapTransform)),e.clearcoatRoughnessMap&&(t.clearcoatRoughnessMap.value=e.clearcoatRoughnessMap,n(e.clearcoatRoughnessMap,t.clearcoatRoughnessMapTransform)),e.clearcoatNormalMap&&(t.clearcoatNormalMap.value=e.clearcoatNormalMap,n(e.clearcoatNormalMap,t.clearcoatNormalMapTransform),t.clearcoatNormalScale.value.copy(e.clearcoatNormalScale),1===e.side&&t.clearcoatNormalScale.value.negate()));e.iridescence>0&&(t.iridescence.value=e.iridescence,t.iridescenceIOR.value=e.iridescenceIOR,t.iridescenceThicknessMinimum.value=e.iridescenceThicknessRange[0],t.iridescenceThicknessMaximum.value=e.iridescenceThicknessRange[1],e.iridescenceMap&&(t.iridescenceMap.value=e.iridescenceMap,n(e.iridescenceMap,t.iridescenceMapTransform)),e.iridescenceThicknessMap&&(t.iridescenceThicknessMap.value=e.iridescenceThicknessMap,n(e.iridescenceThicknessMap,t.iridescenceThicknessMapTransform)));e.transmission>0&&(t.transmission.value=e.transmission,t.transmissionSamplerMap.value=i.texture,t.transmissionSamplerSize.value.set(i.width,i.height),e.transmissionMap&&(t.transmissionMap.value=e.transmissionMap,n(e.transmissionMap,t.transmissionMapTransform)),t.thickness.value=e.thickness,e.thicknessMap&&(t.thicknessMap.value=e.thicknessMap,n(e.thicknessMap,t.thicknessMapTransform)),t.attenuationDistance.value=e.attenuationDistance,t.attenuationColor.value.copy(e.attenuationColor));e.anisotropy>0&&(t.anisotropyVector.value.set(e.anisotropy*Math.cos(e.anisotropyRotation),e.anisotropy*Math.sin(e.anisotropyRotation)),e.anisotropyMap&&(t.anisotropyMap.value=e.anisotropyMap,n(e.anisotropyMap,t.anisotropyMapTransform)));t.specularIntensity.value=e.specularIntensity,t.specularColor.value.copy(e.specularColor),e.specularColorMap&&(t.specularColorMap.value=e.specularColorMap,n(e.specularColorMap,t.specularColorMapTransform));e.specularIntensityMap&&(t.specularIntensityMap.value=e.specularIntensityMap,n(e.specularIntensityMap,t.specularIntensityMapTransform))}(t,r,o)):r.isMeshMatcapMaterial?(i(t,r),function(t,e){e.matcap&&(t.matcap.value=e.matcap)}(t,r)):r.isMeshDepthMaterial?i(t,r):r.isMeshDistanceMaterial?(i(t,r),function(t,n){const i=e.get(n).light;t.referencePosition.value.setFromMatrixPosition(i.matrixWorld),t.nearDistance.value=i.shadow.camera.near,t.farDistance.value=i.shadow.camera.far}(t,r)):r.isMeshNormalMaterial?i(t,r):r.isLineBasicMaterial?(function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,e.map&&(t.map.value=e.map,n(e.map,t.mapTransform))}(t,r),r.isLineDashedMaterial&&function(t,e){t.dashSize.value=e.dashSize,t.totalSize.value=e.dashSize+e.gapSize,t.scale.value=e.scale}(t,r)):r.isPointsMaterial?function(t,e,i,r){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.size.value=e.size*i,t.scale.value=.5*r,e.map&&(t.map.value=e.map,n(e.map,t.uvTransform));e.alphaMap&&(t.alphaMap.value=e.alphaMap,n(e.alphaMap,t.alphaMapTransform));e.alphaTest>0&&(t.alphaTest.value=e.alphaTest)}(t,r,a,s):r.isSpriteMaterial?function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.rotation.value=e.rotation,e.map&&(t.map.value=e.map,n(e.map,t.mapTransform));e.alphaMap&&(t.alphaMap.value=e.alphaMap,n(e.alphaMap,t.alphaMapTransform));e.alphaTest>0&&(t.alphaTest.value=e.alphaTest)}(t,r):r.isShadowMaterial?(t.color.value.copy(r.color),t.opacity.value=r.opacity):r.isShaderMaterial&&(r.uniformsNeedUpdate=!1)}}}function ss(t,e,n,i){let r={},a={},s=[];const o=n.isWebGL2?t.getParameter(t.MAX_UNIFORM_BUFFER_BINDINGS):0;function l(t,e,n,i){const r=t.value,a=e+\"_\"+n;if(void 0===i[a])return i[a]=\"number\"==typeof r||\"boolean\"==typeof r?r:r.clone(),!0;{const t=i[a];if(\"number\"==typeof r||\"boolean\"==typeof r){if(t!==r)return i[a]=r,!0}else if(!1===t.equals(r))return t.copy(r),!0}return!1}function c(t){const e={boundary:0,storage:0};return\"number\"==typeof t||\"boolean\"==typeof t?(e.boundary=4,e.storage=4):t.isVector2?(e.boundary=8,e.storage=8):t.isVector3||t.isColor?(e.boundary=16,e.storage=12):t.isVector4?(e.boundary=16,e.storage=16):t.isMatrix3?(e.boundary=48,e.storage=48):t.isMatrix4?(e.boundary=64,e.storage=64):t.isTexture,e}function h(e){const n=e.target;n.removeEventListener(\"dispose\",h);const i=s.indexOf(n.__bindingPointIndex);s.splice(i,1),t.deleteBuffer(r[n.id]),delete r[n.id],delete a[n.id]}return{bind:function(t,e){const n=e.program;i.uniformBlockBinding(t,n)},update:function(n,u){let d=r[n.id];void 0===d&&(!function(t){const e=t.uniforms;let n=0;const i=16;for(let t=0,r=e.length;t<r;t++){const r=Array.isArray(e[t])?e[t]:[e[t]];for(let t=0,e=r.length;t<e;t++){const e=r[t],a=Array.isArray(e.value)?e.value:[e.value];for(let t=0,r=a.length;t<r;t++){const r=c(a[t]),s=n%i;0!==s&&i-s<r.boundary&&(n+=i-s),e.__data=new Float32Array(r.storage/Float32Array.BYTES_PER_ELEMENT),e.__offset=n,n+=r.storage}}}const r=n%i;r>0&&(n+=i-r);t.__size=n,t.__cache={}}(n),d=function(e){const n=function(){for(let t=0;t<o;t++)if(-1===s.indexOf(t))return s.push(t),t;return 0}();e.__bindingPointIndex=n;const i=t.createBuffer(),r=e.__size,a=e.usage;return t.bindBuffer(t.UNIFORM_BUFFER,i),t.bufferData(t.UNIFORM_BUFFER,r,a),t.bindBuffer(t.UNIFORM_BUFFER,null),t.bindBufferBase(t.UNIFORM_BUFFER,n,i),i}(n),r[n.id]=d,n.addEventListener(\"dispose\",h));const p=u.program;i.updateUBOMapping(n,p);const f=e.render.frame;a[n.id]!==f&&(!function(e){const n=r[e.id],i=e.uniforms,a=e.__cache;t.bindBuffer(t.UNIFORM_BUFFER,n);for(let e=0,n=i.length;e<n;e++){const n=Array.isArray(i[e])?i[e]:[i[e]];for(let i=0,r=n.length;i<r;i++){const r=n[i];if(!0===l(r,e,i,a)){const e=r.__offset,n=Array.isArray(r.value)?r.value:[r.value];let i=0;for(let a=0;a<n.length;a++){const s=n[a],o=c(s);\"number\"==typeof s||\"boolean\"==typeof s?(r.__data[0]=s,t.bufferSubData(t.UNIFORM_BUFFER,e+i,r.__data)):s.isMatrix3?(r.__data[0]=s.elements[0],r.__data[1]=s.elements[1],r.__data[2]=s.elements[2],r.__data[3]=0,r.__data[4]=s.elements[3],r.__data[5]=s.elements[4],r.__data[6]=s.elements[5],r.__data[7]=0,r.__data[8]=s.elements[6],r.__data[9]=s.elements[7],r.__data[10]=s.elements[8],r.__data[11]=0):(s.toArray(r.__data,i),i+=o.storage/Float32Array.BYTES_PER_ELEMENT)}t.bufferSubData(t.UNIFORM_BUFFER,e,r.__data)}}}t.bindBuffer(t.UNIFORM_BUFFER,null)}(n),a[n.id]=f)},dispose:function(){for(const e in r)t.deleteBuffer(r[e]);s=[],r={},a={}}}}class os{constructor(e={}){const{canvas:n=Nt(),context:i=null,depth:r=!0,stencil:a=!0,alpha:s=!1,antialias:o=!1,premultipliedAlpha:l=!0,preserveDrawingBuffer:c=!1,powerPreference:h=\"default\",failIfMajorPerformanceCaveat:u=!1}=e;let d;this.isWebGLRenderer=!0,d=null!==i?i.getContextAttributes().alpha:s;const p=new Uint32Array(4),f=new Int32Array(4);let m=null,g=null;const _=[],v=[];this.domElement=n,this.debug={checkShaderErrors:!0,onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this._outputColorSpace=J,this._useLegacyLights=!1,this.toneMapping=0,this.toneMappingExposure=1;const x=this;let M=!1,S=0,E=0,y=null,T=-1,b=null;const A=new Jt,w=new Jt;let R=null;const C=new En(0);let L=0,P=n.width,U=n.height,O=1,G=null,k=null;const W=new Jt(0,0,P,U),X=new Jt(0,0,P,U);let q=!1;const j=new Ti;let Y=!1,K=!1,Z=null;const $=new De,tt=new Ct,et=new ie,nt={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};function it(){return null===y?O:1}let rt,at,st,ot,lt,ct,ht,ut,dt,pt,ft,mt,gt,_t,vt,xt,Mt,St,Et,yt,Tt,bt,wt,Rt,Lt=i;function Pt(t,e){for(let i=0;i<t.length;i++){const r=t[i],a=n.getContext(r,e);if(null!==a)return a}return null}try{const e={alpha:!0,depth:r,stencil:a,antialias:o,premultipliedAlpha:l,preserveDrawingBuffer:c,powerPreference:h,failIfMajorPerformanceCaveat:u};if(\"setAttribute\"in n&&n.setAttribute(\"data-engine\",`three.js r${t}`),n.addEventListener(\"webglcontextlost\",It,!1),n.addEventListener(\"webglcontextrestored\",Ot,!1),n.addEventListener(\"webglcontextcreationerror\",Ft,!1),null===Lt){const t=[\"webgl2\",\"webgl\",\"experimental-webgl\"];if(!0===x.isWebGL1Renderer&&t.shift(),Lt=Pt(t,e),null===Lt)throw Pt(t)?new Error(\"Error creating WebGL context with your selected attributes.\"):new Error(\"Error creating WebGL context.\")}\"undefined\"!=typeof WebGLRenderingContext&&WebGLRenderingContext,void 0===Lt.getShaderPrecisionFormat&&(Lt.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}})}catch(t){throw t}function Ut(){rt=new nr(Lt),at=new Ii(Lt,rt,e),rt.init(at),bt=new $a(Lt,rt,at),st=new Ja(Lt,rt,at),ot=new ar(Lt),lt=new Fa,ct=new Qa(Lt,rt,st,lt,at,bt,ot),ht=new Fi(x),ut=new er(x),dt=new Ai(Lt,at),wt=new Di(Lt,rt,dt,at),pt=new ir(Lt,dt,ot,wt),ft=new cr(Lt,pt,dt,ot),Et=new lr(Lt,at,ct),xt=new Oi(lt),mt=new Oa(x,ht,ut,rt,at,wt,xt),gt=new as(x,lt),_t=new Va,vt=new ja(rt,at),St=new Ui(x,ht,ut,st,ft,d,l),Mt=new Za(x,ft,at),Rt=new ss(Lt,ot,at,st),yt=new Ni(Lt,rt,ot,at),Tt=new rr(Lt,rt,ot,at),ot.programs=mt.programs,x.capabilities=at,x.extensions=rt,x.properties=lt,x.renderLists=_t,x.shadowMap=Mt,x.state=st,x.info=ot}Ut();const Dt=new rs(x,Lt);function It(t){t.preventDefault(),M=!0}function Ot(){M=!1;const t=ot.autoReset,e=Mt.enabled,n=Mt.autoUpdate,i=Mt.needsUpdate,r=Mt.type;Ut(),ot.autoReset=t,Mt.enabled=e,Mt.autoUpdate=n,Mt.needsUpdate=i,Mt.type=r}function Ft(t){}function Bt(t){const e=t.target;e.removeEventListener(\"dispose\",Bt),function(t){(function(t){const e=lt.get(t).programs;void 0!==e&&(e.forEach(function(t){mt.releaseProgram(t)}),t.isShaderMaterial&&mt.releaseShaderCache(t))})(t),lt.remove(t)}(e)}function zt(t,e,n){!0===t.transparent&&2===t.side&&!1===t.forceSinglePass?(t.side=1,t.needsUpdate=!0,Yt(t,e,n),t.side=0,t.needsUpdate=!0,Yt(t,e,n),t.side=2):Yt(t,e,n)}this.xr=Dt,this.getContext=function(){return Lt},this.getContextAttributes=function(){return Lt.getContextAttributes()},this.forceContextLoss=function(){const t=rt.get(\"WEBGL_lose_context\");t&&t.loseContext()},this.forceContextRestore=function(){const t=rt.get(\"WEBGL_lose_context\");t&&t.restoreContext()},this.getPixelRatio=function(){return O},this.setPixelRatio=function(t){void 0!==t&&(O=t,this.setSize(P,U,!1))},this.getSize=function(t){return t.set(P,U)},this.setSize=function(t,e,i=!0){Dt.isPresenting||(P=t,U=e,n.width=Math.floor(t*O),n.height=Math.floor(e*O),!0===i&&(n.style.width=t+\"px\",n.style.height=e+\"px\"),this.setViewport(0,0,t,e))},this.getDrawingBufferSize=function(t){return t.set(P*O,U*O).floor()},this.setDrawingBufferSize=function(t,e,i){P=t,U=e,O=i,n.width=Math.floor(t*i),n.height=Math.floor(e*i),this.setViewport(0,0,t,e)},this.getCurrentViewport=function(t){return t.copy(A)},this.getViewport=function(t){return t.copy(W)},this.setViewport=function(t,e,n,i){t.isVector4?W.set(t.x,t.y,t.z,t.w):W.set(t,e,n,i),st.viewport(A.copy(W).multiplyScalar(O).floor())},this.getScissor=function(t){return t.copy(X)},this.setScissor=function(t,e,n,i){t.isVector4?X.set(t.x,t.y,t.z,t.w):X.set(t,e,n,i),st.scissor(w.copy(X).multiplyScalar(O).floor())},this.getScissorTest=function(){return q},this.setScissorTest=function(t){st.setScissorTest(q=t)},this.setOpaqueSort=function(t){G=t},this.setTransparentSort=function(t){k=t},this.getClearColor=function(t){return t.copy(St.getClearColor())},this.setClearColor=function(){St.setClearColor.apply(St,arguments)},this.getClearAlpha=function(){return St.getClearAlpha()},this.setClearAlpha=function(){St.setClearAlpha.apply(St,arguments)},this.clear=function(t=!0,e=!0,n=!0){let i=0;if(t){let t=!1;if(null!==y){const e=y.texture.format;t=1033===e||1031===e||1029===e}if(t){const t=y.texture.type,e=t===N||t===F||t===I||t===H||1017===t||1018===t,n=St.getClearColor(),i=St.getClearAlpha(),r=n.r,a=n.g,s=n.b;e?(p[0]=r,p[1]=a,p[2]=s,p[3]=i,Lt.clearBufferuiv(Lt.COLOR,0,p)):(f[0]=r,f[1]=a,f[2]=s,f[3]=i,Lt.clearBufferiv(Lt.COLOR,0,f))}else i|=Lt.COLOR_BUFFER_BIT}e&&(i|=Lt.DEPTH_BUFFER_BIT),n&&(i|=Lt.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(4294967295)),Lt.clear(i)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){n.removeEventListener(\"webglcontextlost\",It,!1),n.removeEventListener(\"webglcontextrestored\",Ot,!1),n.removeEventListener(\"webglcontextcreationerror\",Ft,!1),_t.dispose(),vt.dispose(),lt.dispose(),ht.dispose(),ut.dispose(),ft.dispose(),wt.dispose(),Rt.dispose(),mt.dispose(),Dt.dispose(),Dt.removeEventListener(\"sessionstart\",Vt),Dt.removeEventListener(\"sessionend\",Gt),Z&&(Z.dispose(),Z=null),kt.stop()},this.renderBufferDirect=function(t,e,n,i,r,a){null===e&&(e=nt);const s=r.isMesh&&r.matrixWorld.determinant()<0,o=function(t,e,n,i,r){!0!==e.isScene&&(e=nt);ct.resetTextureUnits();const a=e.fog,s=i.isMeshStandardMaterial?e.environment:null,o=null===y?x.outputColorSpace:!0===y.isXRRenderTarget?y.texture.colorSpace:Q,l=(i.isMeshStandardMaterial?ut:ht).get(i.envMap||s),c=!0===i.vertexColors&&!!n.attributes.color&&4===n.attributes.color.itemSize,h=!!n.attributes.tangent&&(!!i.normalMap||i.anisotropy>0),u=!!n.morphAttributes.position,d=!!n.morphAttributes.normal,p=!!n.morphAttributes.color;let f=0;i.toneMapped&&(null!==y&&!0!==y.isXRRenderTarget||(f=x.toneMapping));const m=n.morphAttributes.position||n.morphAttributes.normal||n.morphAttributes.color,_=void 0!==m?m.length:0,v=lt.get(i),M=g.state.lights;if(!0===Y&&(!0===K||t!==b)){const e=t===b&&i.id===T;xt.setState(i,t,e)}let S=!1;i.version===v.__version?v.needsLights&&v.lightsStateVersion!==M.state.version||v.outputColorSpace!==o||r.isBatchedMesh&&!1===v.batching?S=!0:r.isBatchedMesh||!0!==v.batching?r.isInstancedMesh&&!1===v.instancing?S=!0:r.isInstancedMesh||!0!==v.instancing?r.isSkinnedMesh&&!1===v.skinning?S=!0:r.isSkinnedMesh||!0!==v.skinning?r.isInstancedMesh&&!0===v.instancingColor&&null===r.instanceColor||r.isInstancedMesh&&!1===v.instancingColor&&null!==r.instanceColor||v.envMap!==l||!0===i.fog&&v.fog!==a?S=!0:void 0===v.numClippingPlanes||v.numClippingPlanes===xt.numPlanes&&v.numIntersection===xt.numIntersection?(v.vertexAlphas!==c||v.vertexTangents!==h||v.morphTargets!==u||v.morphNormals!==d||v.morphColors!==p||v.toneMapping!==f||!0===at.isWebGL2&&v.morphTargetsCount!==_)&&(S=!0):S=!0:S=!0:S=!0:S=!0:(S=!0,v.__version=i.version);let E=v.currentProgram;!0===S&&(E=Yt(i,e,r));let A=!1,w=!1,R=!1;const C=E.getUniforms(),L=v.uniforms;st.useProgram(E.program)&&(A=!0,w=!0,R=!0);i.id!==T&&(T=i.id,w=!0);if(A||b!==t){C.setValue(Lt,\"projectionMatrix\",t.projectionMatrix),C.setValue(Lt,\"viewMatrix\",t.matrixWorldInverse);const e=C.map.cameraPosition;void 0!==e&&e.setValue(Lt,et.setFromMatrixPosition(t.matrixWorld)),at.logarithmicDepthBuffer&&C.setValue(Lt,\"logDepthBufFC\",2/(Math.log(t.far+1)/Math.LN2)),(i.isMeshPhongMaterial||i.isMeshToonMaterial||i.isMeshLambertMaterial||i.isMeshBasicMaterial||i.isMeshStandardMaterial||i.isShaderMaterial)&&C.setValue(Lt,\"isOrthographic\",!0===t.isOrthographicCamera),b!==t&&(b=t,w=!0,R=!0)}if(r.isSkinnedMesh){C.setOptional(Lt,r,\"bindMatrix\"),C.setOptional(Lt,r,\"bindMatrixInverse\");const t=r.skeleton;t&&at.floatVertexTextures&&(null===t.boneTexture&&t.computeBoneTexture(),C.setValue(Lt,\"boneTexture\",t.boneTexture,ct))}r.isBatchedMesh&&(C.setOptional(Lt,r,\"batchingTexture\"),C.setValue(Lt,\"batchingTexture\",r._matricesTexture,ct));const P=n.morphAttributes;(void 0!==P.position||void 0!==P.normal||void 0!==P.color&&!0===at.isWebGL2)&&Et.update(r,n,E);(w||v.receiveShadow!==r.receiveShadow)&&(v.receiveShadow=r.receiveShadow,C.setValue(Lt,\"receiveShadow\",r.receiveShadow));i.isMeshGouraudMaterial&&null!==i.envMap&&(L.envMap.value=l,L.flipEnvMap.value=l.isCubeTexture&&!1===l.isRenderTargetTexture?-1:1);w&&(C.setValue(Lt,\"toneMappingExposure\",x.toneMappingExposure),v.needsLights&&(N=R,(D=L).ambientLightColor.needsUpdate=N,D.lightProbe.needsUpdate=N,D.directionalLights.needsUpdate=N,D.directionalLightShadows.needsUpdate=N,D.pointLights.needsUpdate=N,D.pointLightShadows.needsUpdate=N,D.spotLights.needsUpdate=N,D.spotLightShadows.needsUpdate=N,D.rectAreaLights.needsUpdate=N,D.hemisphereLights.needsUpdate=N),a&&!0===i.fog&&gt.refreshFogUniforms(L,a),gt.refreshMaterialUniforms(L,i,O,U,Z),ma.upload(Lt,Kt(v),L,ct));var D,N;i.isShaderMaterial&&!0===i.uniformsNeedUpdate&&(ma.upload(Lt,Kt(v),L,ct),i.uniformsNeedUpdate=!1);i.isSpriteMaterial&&C.setValue(Lt,\"center\",r.center);if(C.setValue(Lt,\"modelViewMatrix\",r.modelViewMatrix),C.setValue(Lt,\"normalMatrix\",r.normalMatrix),C.setValue(Lt,\"modelMatrix\",r.matrixWorld),i.isShaderMaterial||i.isRawShaderMaterial){const t=i.uniformsGroups;for(let e=0,n=t.length;e<n;e++)if(at.isWebGL2){const n=t[e];Rt.update(n,E),Rt.bind(n,E)}}return E}(t,e,n,i,r);st.setMaterial(i,s);let l=n.index,c=1;if(!0===i.wireframe){if(l=pt.getWireframeAttribute(n),void 0===l)return;c=2}const h=n.drawRange,u=n.attributes.position;let d=h.start*c,p=(h.start+h.count)*c;null!==a&&(d=Math.max(d,a.start*c),p=Math.min(p,(a.start+a.count)*c)),null!==l?(d=Math.max(d,0),p=Math.min(p,l.count)):null!=u&&(d=Math.max(d,0),p=Math.min(p,u.count));const f=p-d;if(f<0||f===1/0)return;let m;wt.setup(r,i,o,n,l);let _=yt;if(null!==l&&(m=dt.get(l),_=Tt,_.setIndex(m)),r.isMesh)!0===i.wireframe?(st.setLineWidth(i.wireframeLinewidth*it()),_.setMode(Lt.LINES)):_.setMode(Lt.TRIANGLES);else if(r.isLine){let t=i.linewidth;void 0===t&&(t=1),st.setLineWidth(t*it()),r.isLineSegments?_.setMode(Lt.LINES):r.isLineLoop?_.setMode(Lt.LINE_LOOP):_.setMode(Lt.LINE_STRIP)}else r.isPoints?_.setMode(Lt.POINTS):r.isSprite&&_.setMode(Lt.TRIANGLES);if(r.isBatchedMesh)_.renderMultiDraw(r._multiDrawStarts,r._multiDrawCounts,r._multiDrawCount);else if(r.isInstancedMesh)_.renderInstances(d,f,r.count);else if(n.isInstancedBufferGeometry){const t=void 0!==n._maxInstanceCount?n._maxInstanceCount:1/0,e=Math.min(n.instanceCount,t);_.renderInstances(d,f,e)}else _.render(d,f)},this.compile=function(t,e,n=null){null===n&&(n=t),g=vt.get(n),g.init(),v.push(g),n.traverseVisible(function(t){t.isLight&&t.layers.test(e.layers)&&(g.pushLight(t),t.castShadow&&g.pushShadow(t))}),t!==n&&t.traverseVisible(function(t){t.isLight&&t.layers.test(e.layers)&&(g.pushLight(t),t.castShadow&&g.pushShadow(t))}),g.setupLights(x._useLegacyLights);const i=new Set;return t.traverse(function(t){const e=t.material;if(e)if(Array.isArray(e))for(let r=0;r<e.length;r++){const a=e[r];zt(a,n,t),i.add(a)}else zt(e,n,t),i.add(e)}),v.pop(),g=null,i},this.compileAsync=function(t,e,n=null){const i=this.compile(t,e,n);return new Promise(e=>{function n(){i.forEach(function(t){lt.get(t).currentProgram.isReady()&&i.delete(t)}),0!==i.size?setTimeout(n,10):e(t)}null!==rt.get(\"KHR_parallel_shader_compile\")?n():setTimeout(n,10)})};let Ht=null;function Vt(){kt.stop()}function Gt(){kt.start()}const kt=new bi;function Wt(t,e,n,i){if(!1===t.visible)return;if(t.layers.test(e.layers))if(t.isGroup)n=t.renderOrder;else if(t.isLOD)!0===t.autoUpdate&&t.update(e);else if(t.isLight)g.pushLight(t),t.castShadow&&g.pushShadow(t);else if(t.isSprite){if(!t.frustumCulled||j.intersectsSprite(t)){i&&et.setFromMatrixPosition(t.matrixWorld).applyMatrix4($);const e=ft.update(t),r=t.material;r.visible&&m.push(t,e,r,n,et.z,null)}}else if((t.isMesh||t.isLine||t.isPoints)&&(!t.frustumCulled||j.intersectsObject(t))){const e=ft.update(t),r=t.material;if(i&&(void 0!==t.boundingSphere?(null===t.boundingSphere&&t.computeBoundingSphere(),et.copy(t.boundingSphere.center)):(null===e.boundingSphere&&e.computeBoundingSphere(),et.copy(e.boundingSphere.center)),et.applyMatrix4(t.matrixWorld).applyMatrix4($)),Array.isArray(r)){const i=e.groups;for(let a=0,s=i.length;a<s;a++){const s=i[a],o=r[s.materialIndex];o&&o.visible&&m.push(t,e,o,n,et.z,s)}}else r.visible&&m.push(t,e,r,n,et.z,null)}const r=t.children;for(let t=0,a=r.length;t<a;t++)Wt(r[t],e,n,i)}function Xt(t,e,n,i){const r=t.opaque,a=t.transmissive,s=t.transparent;g.setupLightsView(n),!0===Y&&xt.setGlobalState(x.clippingPlanes,n),a.length>0&&function(t,e,n,i){const r=!0===n.isScene?n.overrideMaterial:null;if(null!==r)return;const a=at.isWebGL2;null===Z&&(Z=new $t(1,1,{generateMipmaps:!0,type:rt.has(\"EXT_color_buffer_half_float\")?z:N,minFilter:D,samples:a?4:0}));x.getDrawingBufferSize(tt),a?Z.setSize(tt.x,tt.y):Z.setSize(At(tt.x),At(tt.y));const s=x.getRenderTarget();x.setRenderTarget(Z),x.getClearColor(C),L=x.getClearAlpha(),L<1&&x.setClearColor(16777215,.5);x.clear();const o=x.toneMapping;x.toneMapping=0,qt(t,n,i),ct.updateMultisampleRenderTarget(Z),ct.updateRenderTargetMipmap(Z);let l=!1;for(let t=0,r=e.length;t<r;t++){const r=e[t],a=r.object,s=r.geometry,o=r.material,c=r.group;if(2===o.side&&a.layers.test(i.layers)){const t=o.side;o.side=1,o.needsUpdate=!0,jt(a,n,i,s,o,c),o.side=t,o.needsUpdate=!0,l=!0}}!0===l&&(ct.updateMultisampleRenderTarget(Z),ct.updateRenderTargetMipmap(Z));x.setRenderTarget(s),x.setClearColor(C,L),x.toneMapping=o}(r,a,e,n),i&&st.viewport(A.copy(i)),r.length>0&&qt(r,e,n),a.length>0&&qt(a,e,n),s.length>0&&qt(s,e,n),st.buffers.depth.setTest(!0),st.buffers.depth.setMask(!0),st.buffers.color.setMask(!0),st.setPolygonOffset(!1)}function qt(t,e,n){const i=!0===e.isScene?e.overrideMaterial:null;for(let r=0,a=t.length;r<a;r++){const a=t[r],s=a.object,o=a.geometry,l=null===i?a.material:i,c=a.group;s.layers.test(n.layers)&&jt(s,e,n,o,l,c)}}function jt(t,e,n,i,r,a){t.onBeforeRender(x,e,n,i,r,a),t.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse,t.matrixWorld),t.normalMatrix.getNormalMatrix(t.modelViewMatrix),r.onBeforeRender(x,e,n,i,t,a),!0===r.transparent&&2===r.side&&!1===r.forceSinglePass?(r.side=1,r.needsUpdate=!0,x.renderBufferDirect(n,e,i,r,t,a),r.side=0,r.needsUpdate=!0,x.renderBufferDirect(n,e,i,r,t,a),r.side=2):x.renderBufferDirect(n,e,i,r,t,a),t.onAfterRender(x,e,n,i,r,a)}function Yt(t,e,n){!0!==e.isScene&&(e=nt);const i=lt.get(t),r=g.state.lights,a=g.state.shadowsArray,s=r.state.version,o=mt.getParameters(t,r.state,a,e,n),l=mt.getProgramCacheKey(o);let c=i.programs;i.environment=t.isMeshStandardMaterial?e.environment:null,i.fog=e.fog,i.envMap=(t.isMeshStandardMaterial?ut:ht).get(t.envMap||i.environment),void 0===c&&(t.addEventListener(\"dispose\",Bt),c=new Map,i.programs=c);let h=c.get(l);if(void 0!==h){if(i.currentProgram===h&&i.lightsStateVersion===s)return Zt(t,o),h}else o.uniforms=mt.getUniforms(t),t.onBuild(n,o,x),t.onBeforeCompile(o,x),h=mt.acquireProgram(o,l),c.set(l,h),i.uniforms=o.uniforms;const u=i.uniforms;return(t.isShaderMaterial||t.isRawShaderMaterial)&&!0!==t.clipping||(u.clippingPlanes=xt.uniform),Zt(t,o),i.needsLights=function(t){return t.isMeshLambertMaterial||t.isMeshToonMaterial||t.isMeshPhongMaterial||t.isMeshStandardMaterial||t.isShadowMaterial||t.isShaderMaterial&&!0===t.lights}(t),i.lightsStateVersion=s,i.needsLights&&(u.ambientLightColor.value=r.state.ambient,u.lightProbe.value=r.state.probe,u.directionalLights.value=r.state.directional,u.directionalLightShadows.value=r.state.directionalShadow,u.spotLights.value=r.state.spot,u.spotLightShadows.value=r.state.spotShadow,u.rectAreaLights.value=r.state.rectArea,u.ltc_1.value=r.state.rectAreaLTC1,u.ltc_2.value=r.state.rectAreaLTC2,u.pointLights.value=r.state.point,u.pointLightShadows.value=r.state.pointShadow,u.hemisphereLights.value=r.state.hemi,u.directionalShadowMap.value=r.state.directionalShadowMap,u.directionalShadowMatrix.value=r.state.directionalShadowMatrix,u.spotShadowMap.value=r.state.spotShadowMap,u.spotLightMatrix.value=r.state.spotLightMatrix,u.spotLightMap.value=r.state.spotLightMap,u.pointShadowMap.value=r.state.pointShadowMap,u.pointShadowMatrix.value=r.state.pointShadowMatrix),i.currentProgram=h,i.uniformsList=null,h}function Kt(t){if(null===t.uniformsList){const e=t.currentProgram.getUniforms();t.uniformsList=ma.seqWithValue(e.seq,t.uniforms)}return t.uniformsList}function Zt(t,e){const n=lt.get(t);n.outputColorSpace=e.outputColorSpace,n.batching=e.batching,n.instancing=e.instancing,n.instancingColor=e.instancingColor,n.skinning=e.skinning,n.morphTargets=e.morphTargets,n.morphNormals=e.morphNormals,n.morphColors=e.morphColors,n.morphTargetsCount=e.morphTargetsCount,n.numClippingPlanes=e.numClippingPlanes,n.numIntersection=e.numClipIntersection,n.vertexAlphas=e.vertexAlphas,n.vertexTangents=e.vertexTangents,n.toneMapping=e.toneMapping}kt.setAnimationLoop(function(t){Ht&&Ht(t)}),\"undefined\"!=typeof self&&kt.setContext(self),this.setAnimationLoop=function(t){Ht=t,Dt.setAnimationLoop(t),null===t?kt.stop():kt.start()},Dt.addEventListener(\"sessionstart\",Vt),Dt.addEventListener(\"sessionend\",Gt),this.render=function(t,e){if(void 0!==e&&!0!==e.isCamera)return;if(!0===M)return;!0===t.matrixWorldAutoUpdate&&t.updateMatrixWorld(),null===e.parent&&!0===e.matrixWorldAutoUpdate&&e.updateMatrixWorld(),!0===Dt.enabled&&!0===Dt.isPresenting&&(!0===Dt.cameraAutoUpdate&&Dt.updateCamera(e),e=Dt.getCamera()),!0===t.isScene&&t.onBeforeRender(x,t,e,y),g=vt.get(t,v.length),g.init(),v.push(g),$.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),j.setFromProjectionMatrix($),K=this.localClippingEnabled,Y=xt.init(this.clippingPlanes,K),m=_t.get(t,_.length),m.init(),_.push(m),Wt(t,e,0,x.sortObjects),m.finish(),!0===x.sortObjects&&m.sort(G,k),this.info.render.frame++,!0===Y&&xt.beginShadows();const n=g.state.shadowsArray;if(Mt.render(n,t,e),!0===Y&&xt.endShadows(),!0===this.info.autoReset&&this.info.reset(),St.render(m,t),g.setupLights(x._useLegacyLights),e.isArrayCamera){const n=e.cameras;for(let e=0,i=n.length;e<i;e++){const i=n[e];Xt(m,t,i,i.viewport)}}else Xt(m,t,e);null!==y&&(ct.updateMultisampleRenderTarget(y),ct.updateRenderTargetMipmap(y)),!0===t.isScene&&t.onAfterRender(x,t,e),wt.resetDefaultState(),T=-1,b=null,v.pop(),g=v.length>0?v[v.length-1]:null,_.pop(),m=_.length>0?_[_.length-1]:null},this.getActiveCubeFace=function(){return S},this.getActiveMipmapLevel=function(){return E},this.getRenderTarget=function(){return y},this.setRenderTargetTextures=function(t,e,n){lt.get(t.texture).__webglTexture=e,lt.get(t.depthTexture).__webglTexture=n;const i=lt.get(t);i.__hasExternalTextures=!0,i.__hasExternalTextures&&(i.__autoAllocateDepthBuffer=void 0===n,i.__autoAllocateDepthBuffer||!0===rt.has(\"WEBGL_multisampled_render_to_texture\")&&(i.__useRenderToTexture=!1))},this.setRenderTargetFramebuffer=function(t,e){const n=lt.get(t);n.__webglFramebuffer=e,n.__useDefaultFramebuffer=void 0===e},this.setRenderTarget=function(t,e=0,n=0){y=t,S=e,E=n;let i=!0,r=null,a=!1,s=!1;if(t){const o=lt.get(t);void 0!==o.__useDefaultFramebuffer?(st.bindFramebuffer(Lt.FRAMEBUFFER,null),i=!1):void 0===o.__webglFramebuffer?ct.setupRenderTarget(t):o.__hasExternalTextures&&ct.rebindTextures(t,lt.get(t.texture).__webglTexture,lt.get(t.depthTexture).__webglTexture);const l=t.texture;(l.isData3DTexture||l.isDataArrayTexture||l.isCompressedArrayTexture)&&(s=!0);const c=lt.get(t).__webglFramebuffer;t.isWebGLCubeRenderTarget?(r=Array.isArray(c[e])?c[e][n]:c[e],a=!0):r=at.isWebGL2&&t.samples>0&&!1===ct.useMultisampledRTT(t)?lt.get(t).__webglMultisampledFramebuffer:Array.isArray(c)?c[n]:c,A.copy(t.viewport),w.copy(t.scissor),R=t.scissorTest}else A.copy(W).multiplyScalar(O).floor(),w.copy(X).multiplyScalar(O).floor(),R=q;if(st.bindFramebuffer(Lt.FRAMEBUFFER,r)&&at.drawBuffers&&i&&st.drawBuffers(t,r),st.viewport(A),st.scissor(w),st.setScissorTest(R),a){const i=lt.get(t.texture);Lt.framebufferTexture2D(Lt.FRAMEBUFFER,Lt.COLOR_ATTACHMENT0,Lt.TEXTURE_CUBE_MAP_POSITIVE_X+e,i.__webglTexture,n)}else if(s){const i=lt.get(t.texture),r=e||0;Lt.framebufferTextureLayer(Lt.FRAMEBUFFER,Lt.COLOR_ATTACHMENT0,i.__webglTexture,n||0,r)}T=-1},this.readRenderTargetPixels=function(t,e,n,i,r,a,s){if(!t||!t.isWebGLRenderTarget)return;let o=lt.get(t).__webglFramebuffer;if(t.isWebGLCubeRenderTarget&&void 0!==s&&(o=o[s]),o){st.bindFramebuffer(Lt.FRAMEBUFFER,o);try{const s=t.texture,o=s.format,l=s.type;if(o!==V&&bt.convert(o)!==Lt.getParameter(Lt.IMPLEMENTATION_COLOR_READ_FORMAT))return;const c=l===z&&(rt.has(\"EXT_color_buffer_half_float\")||at.isWebGL2&&rt.has(\"EXT_color_buffer_float\"));if(!(l===N||bt.convert(l)===Lt.getParameter(Lt.IMPLEMENTATION_COLOR_READ_TYPE)||l===B&&(at.isWebGL2||rt.has(\"OES_texture_float\")||rt.has(\"WEBGL_color_buffer_float\"))||c))return;e>=0&&e<=t.width-i&&n>=0&&n<=t.height-r&&Lt.readPixels(e,n,i,r,bt.convert(o),bt.convert(l),a)}finally{const t=null!==y?lt.get(y).__webglFramebuffer:null;st.bindFramebuffer(Lt.FRAMEBUFFER,t)}}},this.copyFramebufferToTexture=function(t,e,n=0){const i=Math.pow(2,-n),r=Math.floor(e.image.width*i),a=Math.floor(e.image.height*i);ct.setTexture2D(e,0),Lt.copyTexSubImage2D(Lt.TEXTURE_2D,n,0,0,t.x,t.y,r,a),st.unbindTexture()},this.copyTextureToTexture=function(t,e,n,i=0){const r=e.image.width,a=e.image.height,s=bt.convert(n.format),o=bt.convert(n.type);ct.setTexture2D(n,0),Lt.pixelStorei(Lt.UNPACK_FLIP_Y_WEBGL,n.flipY),Lt.pixelStorei(Lt.UNPACK_PREMULTIPLY_ALPHA_WEBGL,n.premultiplyAlpha),Lt.pixelStorei(Lt.UNPACK_ALIGNMENT,n.unpackAlignment),e.isDataTexture?Lt.texSubImage2D(Lt.TEXTURE_2D,i,t.x,t.y,r,a,s,o,e.image.data):e.isCompressedTexture?Lt.compressedTexSubImage2D(Lt.TEXTURE_2D,i,t.x,t.y,e.mipmaps[0].width,e.mipmaps[0].height,s,e.mipmaps[0].data):Lt.texSubImage2D(Lt.TEXTURE_2D,i,t.x,t.y,s,o,e.image),0===i&&n.generateMipmaps&&Lt.generateMipmap(Lt.TEXTURE_2D),st.unbindTexture()},this.copyTextureToTexture3D=function(t,e,n,i,r=0){if(x.isWebGL1Renderer)return;const a=t.max.x-t.min.x+1,s=t.max.y-t.min.y+1,o=t.max.z-t.min.z+1,l=bt.convert(i.format),c=bt.convert(i.type);let h;if(i.isData3DTexture)ct.setTexture3D(i,0),h=Lt.TEXTURE_3D;else{if(!i.isDataArrayTexture&&!i.isCompressedArrayTexture)return;ct.setTexture2DArray(i,0),h=Lt.TEXTURE_2D_ARRAY}Lt.pixelStorei(Lt.UNPACK_FLIP_Y_WEBGL,i.flipY),Lt.pixelStorei(Lt.UNPACK_PREMULTIPLY_ALPHA_WEBGL,i.premultiplyAlpha),Lt.pixelStorei(Lt.UNPACK_ALIGNMENT,i.unpackAlignment);const u=Lt.getParameter(Lt.UNPACK_ROW_LENGTH),d=Lt.getParameter(Lt.UNPACK_IMAGE_HEIGHT),p=Lt.getParameter(Lt.UNPACK_SKIP_PIXELS),f=Lt.getParameter(Lt.UNPACK_SKIP_ROWS),m=Lt.getParameter(Lt.UNPACK_SKIP_IMAGES),g=n.isCompressedTexture?n.mipmaps[r]:n.image;Lt.pixelStorei(Lt.UNPACK_ROW_LENGTH,g.width),Lt.pixelStorei(Lt.UNPACK_IMAGE_HEIGHT,g.height),Lt.pixelStorei(Lt.UNPACK_SKIP_PIXELS,t.min.x),Lt.pixelStorei(Lt.UNPACK_SKIP_ROWS,t.min.y),Lt.pixelStorei(Lt.UNPACK_SKIP_IMAGES,t.min.z),n.isDataTexture||n.isData3DTexture?Lt.texSubImage3D(h,r,e.x,e.y,e.z,a,s,o,l,c,g.data):n.isCompressedArrayTexture?Lt.compressedTexSubImage3D(h,r,e.x,e.y,e.z,a,s,o,l,g.data):Lt.texSubImage3D(h,r,e.x,e.y,e.z,a,s,o,l,c,g),Lt.pixelStorei(Lt.UNPACK_ROW_LENGTH,u),Lt.pixelStorei(Lt.UNPACK_IMAGE_HEIGHT,d),Lt.pixelStorei(Lt.UNPACK_SKIP_PIXELS,p),Lt.pixelStorei(Lt.UNPACK_SKIP_ROWS,f),Lt.pixelStorei(Lt.UNPACK_SKIP_IMAGES,m),0===r&&i.generateMipmaps&&Lt.generateMipmap(h),st.unbindTexture()},this.initTexture=function(t){t.isCubeTexture?ct.setTextureCube(t,0):t.isData3DTexture?ct.setTexture3D(t,0):t.isDataArrayTexture||t.isCompressedArrayTexture?ct.setTexture2DArray(t,0):ct.setTexture2D(t,0),st.unbindTexture()},this.resetState=function(){S=0,E=0,y=null,st.reset(),wt.reset()},\"undefined\"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"observe\",{detail:this}))}get coordinateSystem(){return gt}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(t){this._outputColorSpace=t;const e=this.getContext();e.drawingBufferColorSpace=t===$?\"display-p3\":\"srgb\",e.unpackColorSpace=Vt.workingColorSpace===tt?\"display-p3\":\"srgb\"}get outputEncoding(){return this.outputColorSpace===J?K:3e3}set outputEncoding(t){this.outputColorSpace=t===K?J:Q}get useLegacyLights(){return this._useLegacyLights}set useLegacyLights(t){this._useLegacyLights=t}}(class extends os{}).prototype.isWebGL1Renderer=!0;class ls extends an{constructor(){super(),this.isScene=!0,this.type=\"Scene\",this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.overrideMaterial=null,\"undefined\"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"observe\",{detail:this}))}copy(t,e){return super.copy(t,e),null!==t.background&&(this.background=t.background.clone()),null!==t.environment&&(this.environment=t.environment.clone()),null!==t.fog&&(this.fog=t.fog.clone()),this.backgroundBlurriness=t.backgroundBlurriness,this.backgroundIntensity=t.backgroundIntensity,null!==t.overrideMaterial&&(this.overrideMaterial=t.overrideMaterial.clone()),this.matrixAutoUpdate=t.matrixAutoUpdate,this}toJSON(t){const e=super.toJSON(t);return null!==this.fog&&(e.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(e.object.backgroundBlurriness=this.backgroundBlurriness),1!==this.backgroundIntensity&&(e.object.backgroundIntensity=this.backgroundIntensity),e}}class cs extends ui{constructor(t){super(t),this.isRawShaderMaterial=!0,this.type=\"RawShaderMaterial\"}}\"undefined\"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"register\",{detail:{revision:t}})),\"undefined\"!=typeof window&&(window.__THREE__||(window.__THREE__=t));export{Cn as BufferAttribute,Hn as BufferGeometry,En as Color,i as DoubleSide,bn as Material,ri as Mesh,Bi as OrthographicCamera,cs as RawShaderMaterial,ls as Scene,os as WebGLRenderer};\n","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useRef}from\"react\";import{RenderTarget,addPropertyControls,ControlType}from\"framer\";// 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:0};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};}// UI → shader mapping helpers for better property control UX\nfunction mapLinear(value,inMin,inMax,outMin,outMax){if(inMax===inMin)return outMin;const t=(value-inMin)/(inMax-inMin);return outMin+t*(outMax-outMin);}// Speed: UI [0.1..1] → internal [0.1..5]\nfunction mapSpeedUiToInternal(ui){return mapLinear(ui,.1,1,.1,5);}// Thickness: UI [0.1..1] → internal [0.01..0.2]\nfunction mapThicknessUiToInternal(ui){return mapLinear(ui,.1,1,.01,.2);}// Distortion: UI [0..1] → internal [0..0.2]\nfunction mapDistortionUiToInternal(ui){return mapLinear(ui,0,1,0,.2);}// Frequency: UI [0.1..1] → internal [0.1..3]\nfunction mapFrequencyUiToInternal(ui){return mapLinear(ui,.1,1,.1,3);}// Amplitude: UI [0.1..1] → internal [0.1..2]\nfunction mapAmplitudeUiToInternal(ui){return mapLinear(ui,.1,1,.1,2);}import{Scene,OrthographicCamera,Material,WebGLRenderer,Mesh,BufferAttribute,BufferGeometry,RawShaderMaterial,DoubleSide,Color}from\"https://cdn.jsdelivr.net/gh/framer-university/components/npm-bundles/wave-prism-1.js\";/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 600\n * @framerIntrinsicHeight 400\n * @framerDisableUnlink\n */export default function WavePrism(props){const{speed=.2,beamThickness=.25,distortion=.25,xScale=.2,yScale=.25,glow=1,backgroundColor,preview=false}=props;// Resolve background color from Framer tokens and parse to RGBA\nconst resolvedBackgroundColor=typeof backgroundColor===\"string\"?resolveTokenColor(backgroundColor):\"\";const backgroundColorRgba=parseColorToRgba(resolvedBackgroundColor);const containerRef=useRef(null);const canvasRef=useRef(null);const zoomProbeRef=useRef(null);const lastRef=useRef({w:0,h:0,aspect:0,zoom:0,ts:0});const speedRef=useRef(mapSpeedUiToInternal(speed));const sceneRef=useRef({scene:null,camera:null,renderer:null,mesh:null,uniforms:null,animationId:null});useEffect(()=>{if(!canvasRef.current||!containerRef.current)return;const canvas=canvasRef.current;const container=containerRef.current;// Ensure canvas fills the component bounds\ncanvas.style.position=\"absolute\";canvas.style.inset=\"0\";canvas.style.width=\"100%\";canvas.style.height=\"100%\";canvas.style.display=\"block\";const{current:refs}=sceneRef;const vertexShader=`\n      attribute vec3 position;\n      void main() {\n        gl_Position = vec4(position, 1.0);\n      }\n    `;const fragmentShader=`\n      precision highp float;\n      uniform vec2 resolution;\n      uniform float time;\n      uniform float xScale;\n      uniform float yScale;\n      uniform float yOffset; // vertical offset to center the wave\n      uniform float distortion;\n      uniform float beamThickness;\n      uniform float glow; // glow multiplier from controls\n\n      void main() {\n        // Use a 'cover' mapping that fills the canvas while preserving aspect\n        vec2 p = (gl_FragCoord.xy * 2.0 - resolution) / min(resolution.x, resolution.y);\n        \n        float d = length(p) * distortion;\n        \n        float rx = p.x * (1.0 + d);\n        float gx = p.x;\n        float bx = p.x * (1.0 - d);\n\n        float r = beamThickness / abs((p.y + yOffset) + sin((rx + time) * xScale) * yScale);\n        float g = beamThickness / abs((p.y + yOffset) + sin((gx + time) * xScale) * yScale);\n        float b = beamThickness / abs((p.y + yOffset) + sin((bx + time) * xScale) * yScale);\n        // Split low-intensity tails (halo) from bright core; only scale the halo\n        vec3 wave = vec3(r, g, b);\n        float haloCap = 2.0; // intensities up to this are considered halo\n        vec3 halo = min(wave, vec3(haloCap));\n        vec3 core = wave - halo; // remains unchanged by Glow\n        vec3 col = clamp(core + halo * glow, 0.0, 1.0);\n        // Use a soft alpha derived from intensity so the CSS background shows through\n        float outAlpha = clamp(max(max(col.r, col.g), col.b) / 2.5, 0.0, 1.0);\n        gl_FragColor = vec4(col, outAlpha);\n      }\n    `;const initScene=()=>{refs.scene=new Scene;refs.renderer=new WebGLRenderer({canvas,preserveDrawingBuffer:true,antialias:false,alpha:true});refs.renderer.setPixelRatio(window.devicePixelRatio);// Keep canvas fully transparent; let parent div provide background with alpha\nrefs.renderer.setClearColor(new Color(0,0,0),0);// Ensure no prior scissor state crops the output\nrefs.renderer.setScissorTest(false);refs.camera=new OrthographicCamera(-1,1,1,-1,0,-1);refs.uniforms={resolution:{value:[1,1]},time:{value:0},xScale:{value:mapFrequencyUiToInternal(xScale)},yScale:{value:mapAmplitudeUiToInternal(yScale)},distortion:{value:mapDistortionUiToInternal(distortion)},yOffset:{value:-1},beamThickness:{value:mapThicknessUiToInternal(beamThickness)},glow:{value:glow}};const position=[-1,-1,0,1,-1,0,-1,1,0,1,-1,0,-1,1,0,1,1,0];const positions=new BufferAttribute(new Float32Array(position),3);const geometry=new BufferGeometry;geometry.setAttribute(\"position\",positions);const material=new RawShaderMaterial({vertexShader,fragmentShader,uniforms:refs.uniforms,side:DoubleSide});refs.mesh=new Mesh(geometry,material);refs.scene.add(refs.mesh);handleResize();};const handleResize=()=>{if(!refs.renderer||!refs.uniforms||!container)return;const cw=container.clientWidth||container.offsetWidth||1;const ch=container.clientHeight||container.offsetHeight||1;// Update size without forcing buffer recreation (false = don't update style)\nrefs.renderer.setSize(cw,ch,false);// Update shader resolution uniform - this is what actually affects rendering\nrefs.uniforms.resolution.value=[cw,ch];// Use the yOffset prop value\nrefs.uniforms.yOffset.value=-1;// Force a render after resize to ensure the canvas is updated\nif(refs.scene&&refs.camera){refs.renderer.render(refs.scene,refs.camera);}};const renderSingleFrame=()=>{// Render one frame without animation - used in canvas mode when props change\nif(refs.renderer&&refs.scene&&refs.camera){refs.renderer.render(refs.scene,refs.camera);}};initScene();window.addEventListener(\"resize\",handleResize);// In Framer Canvas: watch aspect ratio changes only; ignore pure zoom changes\nif(RenderTarget.current()===RenderTarget.canvas){let rafId=0;const TICK_MS=250;const EPSPECT=.001;const EPSZOOM=.001;const tick=now=>{const container=containerRef.current;const probe=zoomProbeRef.current;if(container&&probe){const cw=container.clientWidth||container.offsetWidth||1;const ch=container.clientHeight||container.offsetHeight||1;const aspect=cw/ch;const zoom=probe.getBoundingClientRect().width/20;const timeOk=!lastRef.current.ts||(now||performance.now())-lastRef.current.ts>=TICK_MS;const aspectChanged=Math.abs(aspect-lastRef.current.aspect)>EPSPECT;const zoomChanged=Math.abs(zoom-lastRef.current.zoom)>EPSZOOM;const sizeChanged=Math.abs(cw-lastRef.current.w)>1||Math.abs(ch-lastRef.current.h)>1;if(timeOk&&(aspectChanged||zoomChanged||sizeChanged)){lastRef.current={w:cw,h:ch,aspect,zoom,ts:now||performance.now()};// Always call handleResize() for any size/aspect change to ensure proper rendering\nhandleResize();}}rafId=requestAnimationFrame(tick);};rafId=requestAnimationFrame(tick);return()=>cancelAnimationFrame(rafId);}return()=>{if(refs.animationId){cancelAnimationFrame(refs.animationId);}window.removeEventListener(\"resize\",handleResize);if(refs.mesh){refs.scene?.remove(refs.mesh);refs.mesh.geometry.dispose();if(refs.mesh.material instanceof Material){refs.mesh.material.dispose();}}refs.renderer?.dispose();};},[speed,beamThickness,distortion,xScale,yScale,backgroundColor,preview]);// Update uniforms when props change - this works in both canvas and live mode\nuseEffect(()=>{const{current:refs}=sceneRef;if(refs.uniforms){refs.uniforms.xScale.value=mapFrequencyUiToInternal(xScale);refs.uniforms.yScale.value=mapAmplitudeUiToInternal(yScale);refs.uniforms.distortion.value=mapDistortionUiToInternal(distortion);refs.uniforms.yOffset.value=-1;refs.uniforms.beamThickness.value=mapThicknessUiToInternal(beamThickness);refs.uniforms.glow.value=glow;}// In canvas mode, render a single frame when props change\nif(RenderTarget.current()===RenderTarget.canvas&&refs.renderer&&refs.scene&&refs.camera){refs.renderer.render(refs.scene,refs.camera);}},[speed,beamThickness,distortion,xScale,yScale,glow]);// Update speed ref when speed prop changes (works in both canvas and live mode)\nuseEffect(()=>{speedRef.current=mapSpeedUiToInternal(speed);},[speed]);// Update canvas background color when backgroundColor prop changes\nuseEffect(()=>{const canvas=canvasRef.current;const{current:refs}=sceneRef;if(canvas&&refs.renderer){const resolvedBgColor=resolveTokenColor(backgroundColor);const bgColorRgba=parseColorToRgba(resolvedBgColor);// Keep WebGL clear fully transparent so CSS background opacity shows through\nrefs.renderer.setClearColor(new Color(0,0,0),0);// Force a render to show the new background immediately\nif(refs.scene&&refs.camera){refs.renderer.render(refs.scene,refs.camera);}}},[backgroundColor]);// Restart animation loop when preview prop changes\nuseEffect(()=>{const{current:refs}=sceneRef;// Cancel existing animation\nif(refs.animationId){cancelAnimationFrame(refs.animationId);refs.animationId=null;}// Start new animation loop based on current preview setting\nconst animate=()=>{const isCanvas=RenderTarget.current()===RenderTarget.canvas;if(isCanvas&&!preview){// Canvas mode with preview disabled: NO animation loop for maximum performance\nreturn;}else{// Live mode OR canvas mode with preview enabled: full animation\nif(refs.uniforms)refs.uniforms.time.value+=.01*speedRef.current;if(refs.renderer&&refs.scene&&refs.camera){refs.renderer.render(refs.scene,refs.camera);}refs.animationId=requestAnimationFrame(animate);}};// Start the animation loop\nanimate();},[preview]);return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:{width:\"100%\",height:\"100%\",position:\"relative\",display:\"block\",margin:0,padding:0,// Let CSS background with alpha show through WebGL canvas\nbackground:backgroundColor||\"transparent\"},children:[/*#__PURE__*/_jsx(\"div\",{ref:zoomProbeRef,style:{position:\"absolute\",width:20,height:20,opacity:0,pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef})]});}WavePrism.displayName=\"Wave Prism\";// Property Controls\naddPropertyControls(WavePrism,{preview:{type:ControlType.Boolean,title:\"Preview\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},speed:{type:ControlType.Number,title:\"Speed\",min:.1,max:1,step:.1,defaultValue:.2},beamThickness:{type:ControlType.Number,title:\"Thickness\",min:.1,max:1,step:.1,defaultValue:.5},distortion:{type:ControlType.Number,title:\"Distortion\",min:0,max:1,step:.1,defaultValue:.25},xScale:{type:ControlType.Number,title:\"Frequency\",min:.1,max:1,step:.1,defaultValue:.5},yScale:{type:ControlType.Number,title:\"Amplitude\",min:.1,max:1,step:.1,defaultValue:.3},glow:{type:ControlType.Number,title:\"Glow\",min:0,max:1,step:.1,defaultValue:1},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:undefined,optional:true,description:\"More components at [Framer University](https://frameruni.link/cc).\"}});WavePrism.displayName=\"Wave Prism\";\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"WavePrism\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"600\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"400\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./WavePrism_prod.map","// Generated by Framer (b47b624)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,Link,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const cycleOrder=[\"jKumvlraI\",\"j7kAF9QZ_\"];const serializationHash=\"framer-jQKPu\";const variantClassNames={j7kAF9QZ_:\"framer-v-12oiqt7\",jKumvlraI:\"framer-v-1xdh9et\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const eJxqwAt1T=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={\"Big logo white\":\"j7kAF9QZ_\",\"small logo white\":\"jKumvlraI\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,logoColor,width,...props})=>{return{...props,eJxqwAt1T:logoColor??props.eJxqwAt1T??\"var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255))\",variant:humanReadableVariantMap[props.variant]??props.variant??\"jKumvlraI\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,eJxqwAt1T,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"jKumvlraI\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"jKumvlraI\",openInNewTab:false,scopeId:\"m2MQzxhRW\",children:/*#__PURE__*/_jsx(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-1xdh9et\",className,classNames)} framer-r351xa`,\"data-framer-name\":\"small logo white\",layoutDependency:layoutDependency,layoutId:\"jKumvlraI\",ref:refBinding,style:{...style},...addPropertyOverrides({j7kAF9QZ_:{\"data-framer-name\":\"Big logo white\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"RlM7U3dpdHplci1zZW1pYm9sZA==\",\"--framer-font-family\":'\"Switzer\", \"Switzer Placeholder\", sans-serif',\"--framer-font-size\":\"38px\",\"--framer-font-weight\":\"600\",\"--framer-letter-spacing\":\"-0.06em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-eJxqwAt1T-m2MQzxhRW))\"},children:\"Omkar Thakur\"})}),className:\"framer-mszeg8\",fonts:[\"FS;Switzer-semibold\"],layoutDependency:layoutDependency,layoutId:\"jFWXTNfCV\",style:{\"--extracted-r6o4lv\":\"var(--variable-reference-eJxqwAt1T-m2MQzxhRW)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\",\"--variable-reference-eJxqwAt1T-m2MQzxhRW\":eJxqwAt1T},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({j7kAF9QZ_:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"RlM7U3dpdHplci1zZW1pYm9sZA==\",\"--framer-font-family\":'\"Switzer\", \"Switzer Placeholder\", sans-serif',\"--framer-font-size\":\"84px\",\"--framer-font-weight\":\"600\",\"--framer-letter-spacing\":\"-0.06em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-eJxqwAt1T-m2MQzxhRW))\"},children:\"Omkar Thakur\"})})}},baseVariant,gestureVariant)})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-jQKPu.framer-r351xa, .framer-jQKPu .framer-r351xa { display: block; }\",\".framer-jQKPu.framer-1xdh9et { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10.63px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 3px; position: relative; text-decoration: none; width: min-content; }\",\".framer-jQKPu .framer-mszeg8 { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-jQKPu.framer-v-12oiqt7.framer-1xdh9et { gap: 23.42px; padding: 4px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 51.5\n * @framerIntrinsicWidth 230\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"j7kAF9QZ_\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"eJxqwAt1T\":\"logoColor\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const Framerm2MQzxhRW=withCSS(Component,css,\"framer-jQKPu\");export default Framerm2MQzxhRW;Framerm2MQzxhRW.displayName=\"Logo\";Framerm2MQzxhRW.defaultProps={height:51.5,width:230};addPropertyControls(Framerm2MQzxhRW,{variant:{options:[\"jKumvlraI\",\"j7kAF9QZ_\"],optionTitles:[\"small logo white\",\"Big logo white\"],title:\"Variant\",type:ControlType.Enum},eJxqwAt1T:{defaultValue:'var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255)) /* {\"name\":\"neutral-0\"} */',title:\"Logo color\",type:ControlType.Color}});addFonts(Framerm2MQzxhRW,[{explicitInter:true,fonts:[{cssFamilyName:\"Switzer\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/5SZVFDB7V52TI6ULVC6J3WQZQCIZVDV5/ODYPSTCUDMKSTYIPTV4CLQ7URIK7XYBJ/YS3VPNVO4B3TOJMEXDGFZQ4TLZGGSRZC.woff2\",weight:\"600\"}]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerm2MQzxhRW\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"51.5\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicWidth\":\"230\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"j7kAF9QZ_\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerDisplayContentsDiv\":\"false\",\"framerVariables\":\"{\\\"eJxqwAt1T\\\":\\\"logoColor\\\"}\",\"framerImmutableVariables\":\"true\",\"framerColorSyntax\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./m2MQzxhRW.map","// Generated by Framer (b47b624)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,getFontsFromSharedStyle,ResolveLinks,RichText,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useRouter,useVariantState,withCSS,withFX,withOptimizedAppearEffect}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import WavePrism from\"https://framerusercontent.com/modules/nvthGLYpJuYJ25fZLAig/Jxi3R9WP2V1hHyYsopHJ/WavePrism_prod.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/cwWzyiNiMy1mMLIK6PkH/QvX1jOWrPYOG1xPeycR5/aDk3jTbqD.js\";import Logo from\"https://framerusercontent.com/modules/RskX7nuHJDwhCq5L9vhw/2SjsYWVjg8RgIkcpiaif/m2MQzxhRW.js\";import MenuLink from\"https://framerusercontent.com/modules/u9uHutB5VbsAaSlaI3Ap/SLDp4XHDbjAr7mhciEV2/S1ahljPH4.js\";const WavePrismFonts=getFonts(WavePrism);const LogoFonts=getFonts(Logo);const MenuLinkFonts=getFonts(MenuLink);const RichTextWithFXWithOptimizedAppearEffect=withOptimizedAppearEffect(withFX(RichText));const cycleOrder=[\"JXKS6rudO\",\"whhys8gpF\",\"xz3zKAr9P\"];const serializationHash=\"framer-N4gI0\";const variantClassNames={JXKS6rudO:\"framer-v-hxsyje\",whhys8gpF:\"framer-v-1cbg3pw\",xz3zKAr9P:\"framer-v-1tpqamr\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const transition2={damping:80,delay:.5,mass:1,stiffness:400,type:\"spring\"};const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition2,x:0,y:0};const animation1={opacity:.001,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:20};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={Desktop:\"JXKS6rudO\",Phone:\"xz3zKAr9P\",Tablet:\"whhys8gpF\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"JXKS6rudO\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"JXKS6rudO\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const router=useRouter();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.footer,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-hxsyje\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"JXKS6rudO\",ref:refBinding,style:{backgroundColor:\"rgba(0, 0, 0, 0)\",...style},...addPropertyOverrides({whhys8gpF:{\"data-framer-name\":\"Tablet\"},xz3zKAr9P:{\"data-framer-name\":\"Phone\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1egfmci-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"uF_yTm6pq-container\",nodeId:\"uF_yTm6pq\",rendersWithMotion:true,scopeId:\"LAW_mBAmU\",style:{opacity:.5},children:/*#__PURE__*/_jsx(WavePrism,{beamThickness:.6,distortion:.4,glow:.3,height:\"100%\",id:\"uF_yTm6pq\",layoutId:\"uF_yTm6pq\",preview:true,speed:1,style:{height:\"100%\",width:\"100%\"},width:\"100%\",xScale:.1,yScale:.4})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-2rbnf7\",\"data-framer-name\":\"countainer\",layoutDependency:layoutDependency,layoutId:\"GUnjiPFY8\",style:{backgroundColor:\"rgba(0, 0, 0, 0)\"},children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1ymas5\",layoutDependency:layoutDependency,layoutId:\"EZRXvyzdm\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:51,y:(componentViewport?.y||0)+20+(((componentViewport?.height||116.5)-40-76)/2+0+0)+0+0+0,...addPropertyOverrides({xz3zKAr9P:{y:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-xiae73-container\",layoutDependency:layoutDependency,layoutId:\"TRe_ZcihI-container\",nodeId:\"TRe_ZcihI\",rendersWithMotion:true,scopeId:\"LAW_mBAmU\",children:/*#__PURE__*/_jsx(Logo,{eJxqwAt1T:\"rgb(255, 255, 255)\",height:\"100%\",id:\"TRe_ZcihI\",layoutId:\"TRe_ZcihI\",variant:matchVariant(\"jKumvlraI\"),width:\"100%\"})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-pvuphl\",layoutDependency:layoutDependency,layoutId:\"w9e3JBibx\",children:[/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"A_4pdJWRs\"},implicitPathVariables:undefined},{href:{webPageId:\"A_4pdJWRs\"},implicitPathVariables:undefined},{href:{webPageId:\"A_4pdJWRs\"},implicitPathVariables:undefined}],children:resolvedLinks=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,y:(componentViewport?.y||0)+20+(((componentViewport?.height||116.5)-40-76)/2+0+0)+0+0+14.5+0,...addPropertyOverrides({xz3zKAr9P:{y:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1v1sknl-container\",layoutDependency:layoutDependency,layoutId:\"GuMEBkF5B-container\",nodeId:\"GuMEBkF5B\",rendersWithMotion:true,scopeId:\"LAW_mBAmU\",children:/*#__PURE__*/_jsx(MenuLink,{DvNNqUHKC:resolvedLinks[0],height:\"100%\",id:\"GuMEBkF5B\",IKHeLSiEg:\"About\",layoutId:\"GuMEBkF5B\",variant:matchVariant(\"oWlP3lriD\"),width:\"100%\",...addPropertyOverrides({whhys8gpF:{DvNNqUHKC:resolvedLinks[1]},xz3zKAr9P:{DvNNqUHKC:resolvedLinks[2]}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"I6gdX5ygq\"},implicitPathVariables:undefined},{href:{webPageId:\"I6gdX5ygq\"},implicitPathVariables:undefined},{href:{webPageId:\"I6gdX5ygq\"},implicitPathVariables:undefined}],children:resolvedLinks1=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,y:(componentViewport?.y||0)+20+(((componentViewport?.height||116.5)-40-76)/2+0+0)+0+0+14.5+0,...addPropertyOverrides({xz3zKAr9P:{y:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1smp8ma-container\",layoutDependency:layoutDependency,layoutId:\"GB1Z8XhgB-container\",nodeId:\"GB1Z8XhgB\",rendersWithMotion:true,scopeId:\"LAW_mBAmU\",children:/*#__PURE__*/_jsx(MenuLink,{DvNNqUHKC:resolvedLinks1[0],height:\"100%\",id:\"GB1Z8XhgB\",IKHeLSiEg:\"Projects\",layoutId:\"GB1Z8XhgB\",variant:matchVariant(\"oWlP3lriD\"),width:\"100%\",...addPropertyOverrides({whhys8gpF:{DvNNqUHKC:resolvedLinks1[1]},xz3zKAr9P:{DvNNqUHKC:resolvedLinks1[2]}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"vO88q6Zrj\"},implicitPathVariables:undefined},{href:{webPageId:\"vO88q6Zrj\"},implicitPathVariables:undefined},{href:{webPageId:\"vO88q6Zrj\"},implicitPathVariables:undefined}],children:resolvedLinks2=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,y:(componentViewport?.y||0)+20+(((componentViewport?.height||116.5)-40-76)/2+0+0)+0+0+14.5+0,...addPropertyOverrides({xz3zKAr9P:{y:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1rcbbj1-container\",layoutDependency:layoutDependency,layoutId:\"h8ZDbLwiX-container\",nodeId:\"h8ZDbLwiX\",rendersWithMotion:true,scopeId:\"LAW_mBAmU\",children:/*#__PURE__*/_jsx(MenuLink,{DvNNqUHKC:resolvedLinks2[0],height:\"100%\",id:\"h8ZDbLwiX\",IKHeLSiEg:\"Contact\",layoutId:\"h8ZDbLwiX\",variant:matchVariant(\"oWlP3lriD\"),width:\"100%\",...addPropertyOverrides({whhys8gpF:{DvNNqUHKC:resolvedLinks2[1]},xz3zKAr9P:{DvNNqUHKC:resolvedLinks2[2]}},baseVariant,gestureVariant)})})})})]})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-egeiu0\",layoutDependency:layoutDependency,layoutId:\"ee7ImINPW\",children:[/*#__PURE__*/_jsx(RichTextWithFXWithOptimizedAppearEffect,{__fromCanvasComponent:true,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animate:animation,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-jc8qkg\",\"data-styles-preset\":\"aDk3jTbqD\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-e7385af5-6e13-4436-b52b-e9a5603bd8fa, rgb(143, 143, 143)))\"},children:\"\\xa9 2026 Omkar Thakur. All rights reserved. Mumbai, India.\"})}),className:\"framer-71nehu\",\"data-framer-appear-id\":\"71nehu\",fonts:[\"Inter\"],initial:animation1,layoutDependency:layoutDependency,layoutId:\"Pozd3QEyd\",optimized:true,style:{\"--extracted-r6o4lv\":\"var(--token-e7385af5-6e13-4436-b52b-e9a5603bd8fa, rgb(143, 143, 143))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({xz3zKAr9P:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-jc8qkg\",\"data-styles-preset\":\"aDk3jTbqD\",dir:\"auto\",style:{\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-e7385af5-6e13-4436-b52b-e9a5603bd8fa, rgb(143, 143, 143)))\"},children:\"\\xa9 2026 Omkar Thakur. All rights reserved. Mumbai, India.\"})})}},baseVariant,gestureVariant)}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-lzqjhf\",layoutDependency:layoutDependency,layoutId:\"QMAvp8_rz\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,y:(componentViewport?.y||0)+20+(((componentViewport?.height||116.5)-40-76)/2+0+0)+0+54+0+0,...addPropertyOverrides({xz3zKAr9P:{y:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-iwqe6v-container\",layoutDependency:layoutDependency,layoutId:\"tkHi5jL1u-container\",nodeId:\"tkHi5jL1u\",rendersWithMotion:true,scopeId:\"LAW_mBAmU\",children:/*#__PURE__*/_jsx(MenuLink,{DvNNqUHKC:\"https://wa.me/8767278458\",height:\"100%\",id:\"tkHi5jL1u\",IKHeLSiEg:\"Whatsapp\",layoutId:\"tkHi5jL1u\",variant:matchVariant(\"oWlP3lriD\"),width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,y:(componentViewport?.y||0)+20+(((componentViewport?.height||116.5)-40-76)/2+0+0)+0+54+0+0,...addPropertyOverrides({xz3zKAr9P:{y:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1f7itmu-container\",layoutDependency:layoutDependency,layoutId:\"SHKyPDRnF-container\",nodeId:\"SHKyPDRnF\",rendersWithMotion:true,scopeId:\"LAW_mBAmU\",children:/*#__PURE__*/_jsx(MenuLink,{DvNNqUHKC:\"https://www.behance.net/OT_MonkMedia\",height:\"100%\",id:\"SHKyPDRnF\",IKHeLSiEg:\"Behance\",layoutId:\"SHKyPDRnF\",variant:matchVariant(\"oWlP3lriD\"),width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,y:(componentViewport?.y||0)+20+(((componentViewport?.height||116.5)-40-76)/2+0+0)+0+54+0+0,...addPropertyOverrides({xz3zKAr9P:{y:undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-kw6pq7-container\",layoutDependency:layoutDependency,layoutId:\"Wl0TgSqaZ-container\",nodeId:\"Wl0TgSqaZ\",rendersWithMotion:true,scopeId:\"LAW_mBAmU\",children:/*#__PURE__*/_jsx(MenuLink,{DvNNqUHKC:\"https://www.linkedin.com/in/omkar-thakur-148854116/\",height:\"100%\",id:\"Wl0TgSqaZ\",IKHeLSiEg:\"LINKEDIN\",layoutId:\"Wl0TgSqaZ\",variant:matchVariant(\"oWlP3lriD\"),width:\"100%\"})})})]})]})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-N4gI0.framer-1dvg11q, .framer-N4gI0 .framer-1dvg11q { display: block; }\",\".framer-N4gI0.framer-hxsyje { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 20px 32px 20px 32px; position: relative; width: 1200px; }\",\".framer-N4gI0 .framer-1egfmci-container { bottom: 0px; flex: none; left: 0px; position: absolute; right: 0px; top: 0px; z-index: 1; }\",\".framer-N4gI0 .framer-2rbnf7 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 3px; height: min-content; justify-content: flex-start; max-width: 1400px; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; z-index: 2; }\",\".framer-N4gI0 .framer-1ymas5, .framer-N4gI0 .framer-egeiu0 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-N4gI0 .framer-xiae73-container, .framer-N4gI0 .framer-1v1sknl-container, .framer-N4gI0 .framer-1smp8ma-container, .framer-N4gI0 .framer-1rcbbj1-container, .framer-N4gI0 .framer-iwqe6v-container, .framer-N4gI0 .framer-1f7itmu-container, .framer-N4gI0 .framer-kw6pq7-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-N4gI0 .framer-pvuphl { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-N4gI0 .framer-71nehu { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-N4gI0 .framer-lzqjhf { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 32px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-N4gI0.framer-v-1cbg3pw.framer-hxsyje { width: 810px; }\",\".framer-N4gI0.framer-v-1tpqamr.framer-hxsyje { width: 390px; }\",\".framer-N4gI0.framer-v-1tpqamr .framer-2rbnf7 { gap: unset; height: 277px; justify-content: space-between; }\",\".framer-N4gI0.framer-v-1tpqamr .framer-1ymas5 { flex-direction: column; gap: 28px; justify-content: flex-start; }\",\".framer-N4gI0.framer-v-1tpqamr .framer-pvuphl { flex-wrap: wrap; width: 100%; }\",\".framer-N4gI0.framer-v-1tpqamr .framer-egeiu0 { flex-direction: column; gap: 36px; justify-content: flex-start; }\",\".framer-N4gI0.framer-v-1tpqamr .framer-71nehu { --framer-text-wrap-override: balance; order: 1; width: 100%; }\",\".framer-N4gI0.framer-v-1tpqamr .framer-lzqjhf { order: 0; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 116.5\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"whhys8gpF\":{\"layout\":[\"fixed\",\"auto\"]},\"xz3zKAr9P\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerLAW_mBAmU=withCSS(Component,css,\"framer-N4gI0\");export default FramerLAW_mBAmU;FramerLAW_mBAmU.displayName=\"footer\";FramerLAW_mBAmU.defaultProps={height:116.5,width:1200};addPropertyControls(FramerLAW_mBAmU,{variant:{options:[\"JXKS6rudO\",\"whhys8gpF\",\"xz3zKAr9P\"],optionTitles:[\"Desktop\",\"Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerLAW_mBAmU,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...WavePrismFonts,...LogoFonts,...MenuLinkFonts,...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});FramerLAW_mBAmU.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(Logo,{},context),forwardLoader(MenuLink,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerLAW_mBAmU\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"116.5\",\"framerIntrinsicWidth\":\"1200\",\"framerContractVersion\":\"1\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"whhys8gpF\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"xz3zKAr9P\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (6ca5d98)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 0 12 L 18 12 L 18 10 L 0 10 Z M 0 7 L 18 7 L 18 5 L 0 5 Z M 0 0 L 0 2 L 18 2 L 18 0 Z\" fill=\"var(--esondr, rgb(0,0,0))\" height=\"12px\" id=\"QNTaq77W3\" transform=\"translate(3 6)\" width=\"18px\"/></svg>\\') alpha no-repeat center / auto var(--framer-icon-mask-mode, add), var(--framer-icon-mask, none)';const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.div,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"div\",{...rest,ref:ref});});const getProps=({fill,height,id,width,...props})=>{return{...props,K5AAorpEW:fill??props.K5AAorpEW??\"rgb(0, 0, 0)\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,K5AAorpEW,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-5AVC2\",className),layoutId:layoutId,ref:ref,style:{\"--esondr\":K5AAorpEW,...style}});});const css=[`.framer-5AVC2 { -webkit-mask: ${mask}; aspect-ratio: 1; background-color: var(--esondr); mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"K5AAorpEW\":\"fill\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Menu\",\"color\":{\"type\":\"variable\",\"value\":\"esondr\"},\"set\":{\"localId\":\"vectorSet/DnLsXE00W\",\"id\":\"DnLsXE00W\",\"moduleId\":\"JIScivAkNLgXrcOUxHXD\"}}\n * @framerDisableUnlink true\n */const Icon=withCSS(Component,css,\"framer-5AVC2\");Icon.displayName=\"Menu\";export default Icon;addPropertyControls(Icon,{K5AAorpEW:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Fill\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerVariables\":\"{\\\"K5AAorpEW\\\":\\\"fill\\\"}\",\"framerIntrinsicHeight\":\"24\",\"framerDisableUnlink\":\"true\",\"framerIntrinsicWidth\":\"24\",\"framerImmutableVariables\":\"true\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerVector\":\"{\\\"name\\\":\\\"Menu\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"esondr\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/DnLsXE00W\\\",\\\"id\\\":\\\"DnLsXE00W\\\",\\\"moduleId\\\":\\\"JIScivAkNLgXrcOUxHXD\\\"}}\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (6ca5d98)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 14 1.41 L 12.59 0 L 7 5.59 L 1.41 0 L 0 1.41 L 5.59 7 L 0 12.59 L 1.41 14 L 7 8.41 L 12.59 14 L 14 12.59 L 8.41 7 Z\" fill=\"var(--esondr, rgb(0,0,0))\" height=\"14px\" id=\"tANCHQdDU\" transform=\"translate(5 5)\" width=\"14px\"/></svg>\\') alpha no-repeat center / auto var(--framer-icon-mask-mode, add), var(--framer-icon-mask, none)';const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.div,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"div\",{...rest,ref:ref});});const getProps=({fill,height,id,width,...props})=>{return{...props,K5AAorpEW:fill??props.K5AAorpEW??\"rgb(0, 0, 0)\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,K5AAorpEW,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-IRM4W\",className),layoutId:layoutId,ref:ref,style:{\"--esondr\":K5AAorpEW,...style}});});const css=[`.framer-IRM4W { -webkit-mask: ${mask}; aspect-ratio: 1; background-color: var(--esondr); mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"K5AAorpEW\":\"fill\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Close\",\"color\":{\"type\":\"variable\",\"value\":\"esondr\"},\"set\":{\"localId\":\"vectorSet/DnLsXE00W\",\"id\":\"DnLsXE00W\",\"moduleId\":\"JIScivAkNLgXrcOUxHXD\"}}\n * @framerDisableUnlink true\n */const Icon=withCSS(Component,css,\"framer-IRM4W\");Icon.displayName=\"Close\";export default Icon;addPropertyControls(Icon,{K5AAorpEW:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Fill\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"24\",\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"true\",\"framerImmutableVariables\":\"true\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"24\",\"framerVariables\":\"{\\\"K5AAorpEW\\\":\\\"fill\\\"}\",\"framerVector\":\"{\\\"name\\\":\\\"Close\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"esondr\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/DnLsXE00W\\\",\\\"id\\\":\\\"DnLsXE00W\\\",\\\"moduleId\\\":\\\"JIScivAkNLgXrcOUxHXD\\\"}}\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (b6e2e7c)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-IjX19 .framer-styles-preset-z5wui4:not(.rich-text-wrapper), .framer-IjX19 .framer-styles-preset-z5wui4.rich-text-wrapper a {  }\"];export const className=\"framer-IjX19\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (b6e2e7c)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-TP0dG .framer-styles-preset-1tfr1u:not(.rich-text-wrapper), .framer-TP0dG .framer-styles-preset-1tfr1u.rich-text-wrapper a { --framer-link-current-text-color: #f1f1f1; --framer-link-current-text-decoration: none; --framer-link-text-color: #828487; --framer-link-text-decoration: none; transition-delay: 0s; transition-duration: 0.4s; transition-property: color; transition-timing-function: cubic-bezier(0.44, 0, 0.56, 1); }\"];export const className=\"framer-TP0dG\";\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\"}}}","// Generated by Framer (b6e2e7c)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Switzer-medium\",\"FS;Switzer-bold\",\"FS;Switzer-bold italic\",\"FS;Switzer-medium italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Switzer\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/OYB4CXKJQXKTNSLJMTDQOIVUL2V5EL7S/WYO2P7DQVV5RNXGMCUO2HL4RJP4VFUAS/6XPIMU23OJVRY676OG5YVJMWEHWICATX.woff2\",weight:\"500\"},{cssFamilyName:\"Switzer\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/HBNTRIISA5MEXGL5WPYI7CV2HIWTDV3Q/YDPDINVT673XLXNSTMLG4JNCZZMVVNPN/Y7SCNZJOT2MW5ADSGOFLDGH4TNL4JCQY.woff2\",weight:\"700\"},{cssFamilyName:\"Switzer\",source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/LVPXCMXCWY3V7PSXRMGRQUJDAS2DT47E/BPEVRT2HG7PPVVUS7A67MZQQZW6LR6A5/A7AS3UPAGLC7MDVC67SBNTE5FGF2Z2RG.woff2\",weight:\"700\"},{cssFamilyName:\"Switzer\",source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/QMRBNVYKDJEZ66DA22SPWH5EVVYACHCU/ZHMXHHA546NDNEHJN5RPZX5KISJY5CWF/C6VLICDGQWYKV6YT65TM5G3OVN4AOZBN.woff2\",weight:\"500\"}]}];export const css=['.framer-7lIVl .framer-styles-preset-18sur8h:not(.rich-text-wrapper), .framer-7lIVl .framer-styles-preset-18sur8h.rich-text-wrapper p { --framer-font-family: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 24px; --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: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 500; --framer-letter-spacing: -0.03em; --framer-line-height: 1.1em; --framer-paragraph-spacing: 10px; --framer-text-alignment: left; --framer-text-color: var(--token-c65612de-f119-4bb2-992f-d0d0f33f9de8, #f0f0f0); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }','@media (max-width: 1199px) and (min-width: 810px) { .framer-7lIVl .framer-styles-preset-18sur8h:not(.rich-text-wrapper), .framer-7lIVl .framer-styles-preset-18sur8h.rich-text-wrapper p { --framer-font-family: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 24px; --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: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 500; --framer-letter-spacing: -0.03em; --framer-line-height: 1.1em; --framer-paragraph-spacing: 10px; --framer-text-alignment: left; --framer-text-color: var(--token-c65612de-f119-4bb2-992f-d0d0f33f9de8, #f0f0f0); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }','@media (max-width: 809px) and (min-width: 0px) { .framer-7lIVl .framer-styles-preset-18sur8h:not(.rich-text-wrapper), .framer-7lIVl .framer-styles-preset-18sur8h.rich-text-wrapper p { --framer-font-family: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 19px; --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: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 500; --framer-letter-spacing: -0.03em; --framer-line-height: 1.1em; --framer-paragraph-spacing: 10px; --framer-text-alignment: left; --framer-text-color: var(--token-c65612de-f119-4bb2-992f-d0d0f33f9de8, #f0f0f0); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }'];export const className=\"framer-7lIVl\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (b47b624)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,getFontsFromSharedStyle,getPropertyControls,Instance,Link,ResolveLinks,RichText,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useRouter,useVariantState,withCSS,withFX,withOptimizedAppearEffect}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Menu from\"https://framerusercontent.com/modules/bUpgyMqZRKNMdGZeMGPA/fkoodNoUyQNU1zow05Rr/MLH8B4KT_.js\";import Close from\"https://framerusercontent.com/modules/oE9WKEU3ToJHJpjC4OLY/7FvUwzzVaDYCnH97VQOT/UNkcg0f_v.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/78Y0kDqErgQxltO9KJTw/uTtgi98DzDwMFzxQ9NEL/gf4CUuduU.js\";import*as sharedStyle2 from\"https://framerusercontent.com/modules/q7MIXBwYLXY2ZIYYIn9W/7rLQ038gtgTgHhC7g6iM/sPJsapaIS.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/7JayRg9X2oeOyLoTIvxU/tsNbJttwcmVQsSFDrOJ8/TUPfsbxeC.js\";import Logo from\"https://framerusercontent.com/modules/RskX7nuHJDwhCq5L9vhw/2SjsYWVjg8RgIkcpiaif/m2MQzxhRW.js\";import MenuLink from\"https://framerusercontent.com/modules/u9uHutB5VbsAaSlaI3Ap/SLDp4XHDbjAr7mhciEV2/S1ahljPH4.js\";const LogoFonts=getFonts(Logo);const MenuLinkFonts=getFonts(MenuLink);const SmartComponentScopedContainerWithFXWithOptimizedAppearEffect=withOptimizedAppearEffect(withFX(SmartComponentScopedContainer));const MotionNavWithFXWithOptimizedAppearEffect=withOptimizedAppearEffect(withFX(motion.nav));const MenuLinkControls=getPropertyControls(MenuLink);const cycleOrder=[\"u0xwgEZHk\",\"u7PVyCVHC\",\"JhFeo7UtP\"];const serializationHash=\"framer-HueoT\";const variantClassNames={JhFeo7UtP:\"framer-v-aypon\",u0xwgEZHk:\"framer-v-1rt5431\",u7PVyCVHC:\"framer-v-wcm837\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const jtOvkkZwW=undefined;const SM5MNNElkaKg3Cntwq=undefined;const V8I1Crr1FaKg3Cntwq=undefined;const asP_7haI7aKg3Cntwq=undefined;const transition1={damping:60,delay:1,mass:1,stiffness:300,type:\"spring\"};const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition1,x:0,y:0};const animation1={opacity:.001,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:-90};const transition2={duration:0,type:\"tween\"};const transition3={delay:0,duration:.5,ease:[.44,0,.56,1],type:\"tween\"};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const transition4={damping:80,delay:1,mass:1,stiffness:400,type:\"spring\"};const animation2={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition4,x:0,y:0};const animation3={opacity:.001,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:23};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={\"mobile - Expanded\":\"JhFeo7UtP\",Desktop:\"u0xwgEZHk\",mobile:\"u7PVyCVHC\"};const Variants=motion.create(React.Fragment);const humanReadableEnumMap={\"No hover\":\"ZHgUlyyi7\",M:\"ToKCw3z55\",White:\"oWlP3lriD\"};const getProps=({height,id,variant2,width,...props})=>{return{...props,jtOvkkZwW:humanReadableEnumMap[variant2]??variant2??props.jtOvkkZwW??\"oWlP3lriD\",variant:humanReadableVariantMap[props.variant]??props.variant??\"u0xwgEZHk\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,jtOvkkZwW,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"u0xwgEZHk\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onMouseLeave17ycu04=activeVariantCallback(async(...args)=>{setGestureState({isHovered:false});setVariant(\"u7PVyCVHC\");});const onTap1h0xfas=activeVariantCallback(async(...args)=>{setVariant(\"JhFeo7UtP\");});const onTapcgyubz=activeVariantCallback(async(...args)=>{setVariant(\"u7PVyCVHC\");});const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"u7PVyCVHC\",\"JhFeo7UtP\"].includes(baseVariant))return false;return true;};const router=useRouter();const isDisplayed1=()=>{if([\"u7PVyCVHC\",\"JhFeo7UtP\"].includes(baseVariant))return true;return false;};const isDisplayed2=()=>{if(baseVariant===\"JhFeo7UtP\")return true;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition2,...addPropertyOverrides({JhFeo7UtP:{value:transition3},u7PVyCVHC:{value:transition3}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(MotionNavWithFXWithOptimizedAppearEffect,{...restProps,...gestureHandlers,__framer__presenceAnimate:animation,__framer__presenceInitial:animation1,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:cx(scopingClassNames,\"framer-1rt5431\",className,classNames),\"data-framer-appear-id\":\"1rt5431\",\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"u0xwgEZHk\",optimized:true,ref:refBinding,style:{backgroundColor:\"rgba(0, 0, 0, 0)\",...style},variants:{JhFeo7UtP:{backgroundColor:\"rgb(0, 0, 0)\"}},...addPropertyOverrides({JhFeo7UtP:{\"data-framer-name\":\"mobile - Expanded\",\"data-highlight\":true,onMouseLeave:onMouseLeave17ycu04},u7PVyCVHC:{\"data-framer-name\":\"mobile\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1o0duy\",layoutDependency:layoutDependency,layoutId:\"exPTbZzmP\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1cvv6j\",layoutDependency:layoutDependency,layoutId:\"LQhKrccYo\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:51,y:(componentViewport?.y||0)+(0+((componentViewport?.height||51.5)-0-51)/2)+0+0,...addPropertyOverrides({JhFeo7UtP:{y:(componentViewport?.y||0)+22+0+0+0},u7PVyCVHC:{y:(componentViewport?.y||0)+17+(((componentViewport?.height||85.5)-34-51)/2+0+0)+0+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-xmzg68-container\",layoutDependency:layoutDependency,layoutId:\"dOGSNlU0V-container\",nodeId:\"dOGSNlU0V\",rendersWithMotion:true,scopeId:\"O4fieqzvB\",children:/*#__PURE__*/_jsx(Logo,{eJxqwAt1T:\"rgb(255, 255, 255)\",height:\"100%\",id:\"dOGSNlU0V\",layoutId:\"dOGSNlU0V\",variant:matchVariant(\"jKumvlraI\"),width:\"100%\",...addPropertyOverrides({u7PVyCVHC:{eJxqwAt1T:\"var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255))\"}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-8lzgbl\",layoutDependency:layoutDependency,layoutId:\"Y7RIMzN1k\",children:[isDisplayed()&&/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"I6gdX5ygq\"},implicitPathVariables:undefined}],children:resolvedLinks=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,y:(componentViewport?.y||0)+(0+((componentViewport?.height||51.5)-0-51)/2)+14.5+0,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-xaiu18-container\",layoutDependency:layoutDependency,layoutId:\"iKXjqD4IY-container\",nodeId:\"iKXjqD4IY\",rendersWithMotion:true,scopeId:\"O4fieqzvB\",children:/*#__PURE__*/_jsx(MenuLink,{DvNNqUHKC:resolvedLinks[0],height:\"100%\",id:\"iKXjqD4IY\",IKHeLSiEg:\"Projects\",layoutId:\"iKXjqD4IY\",variant:matchVariant(jtOvkkZwW),width:\"100%\"})})})}),isDisplayed()&&/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"A_4pdJWRs\"},implicitPathVariables:undefined}],children:resolvedLinks1=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,y:(componentViewport?.y||0)+(0+((componentViewport?.height||51.5)-0-51)/2)+14.5+0,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-hsjd8d-container\",layoutDependency:layoutDependency,layoutId:\"mFJyjgyne-container\",nodeId:\"mFJyjgyne\",rendersWithMotion:true,scopeId:\"O4fieqzvB\",children:/*#__PURE__*/_jsx(MenuLink,{DvNNqUHKC:resolvedLinks1[0],height:\"100%\",id:\"mFJyjgyne\",IKHeLSiEg:\"About\",layoutId:\"mFJyjgyne\",variant:matchVariant(jtOvkkZwW),width:\"100%\"})})})}),isDisplayed()&&/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"vO88q6Zrj\"},implicitPathVariables:undefined}],children:resolvedLinks2=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,y:(componentViewport?.y||0)+(0+((componentViewport?.height||51.5)-0-51)/2)+14.5+0,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-u9uprf-container\",layoutDependency:layoutDependency,layoutId:\"gpFECsIwc-container\",nodeId:\"gpFECsIwc\",rendersWithMotion:true,scopeId:\"O4fieqzvB\",children:/*#__PURE__*/_jsx(MenuLink,{DvNNqUHKC:resolvedLinks2[0],height:\"100%\",id:\"gpFECsIwc\",IKHeLSiEg:\"Contact\",layoutId:\"gpFECsIwc\",variant:matchVariant(jtOvkkZwW),width:\"100%\"})})})}),isDisplayed1()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-1geoso0\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"MaoQsjHnX\",onTap:onTap1h0xfas,...addPropertyOverrides({JhFeo7UtP:{onTap:onTapcgyubz}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(Instance,{animated:true,className:\"framer-1umbu2d\",Component:Menu,layoutDependency:layoutDependency,layoutId:\"lcaA3xNnR\",style:{\"--esondr\":\"rgb(0, 0, 0)\"},variants:{JhFeo7UtP:{\"--esondr\":\"var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255))\"},u7PVyCVHC:{\"--esondr\":\"var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255))\"}},...addPropertyOverrides({JhFeo7UtP:{Component:Close}},baseVariant,gestureVariant)})})]})]}),isDisplayed2()&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1l8e0ho\",\"data-framer-name\":\"links\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"XXKUL7wfo\",onTap:onTapcgyubz,children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1qqgjez\",\"data-framer-name\":\"menublock\",layoutDependency:layoutDependency,layoutId:\"HayJlmAe1\",children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-3zecin\",\"data-framer-name\":\"menus\",layoutDependency:layoutDependency,layoutId:\"I6Pwapn2o\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-145tusm\",\"data-framer-name\":\"mainmenu\",layoutDependency:layoutDependency,layoutId:\"MUeLSQRoF\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-18sur8h\",\"data-styles-preset\":\"TUPfsbxeC\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255)))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"b5UY_Iqme\",openInNewTab:false,relValues:[],scopeId:\"O4fieqzvB\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-z5wui4\",\"data-styles-preset\":\"gf4CUuduU\",children:\"Home\"})})})}),className:\"framer-thq1j4\",\"data-framer-name\":\"Text 1\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"b5UY_Iqme\",style:{\"--extracted-r6o4lv\":\"var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255))\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-18sur8h\",\"data-styles-preset\":\"TUPfsbxeC\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255)))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"I6gdX5ygq\"},motionChild:true,nodeId:\"hnSBB0FOu\",openInNewTab:false,relValues:[],scopeId:\"O4fieqzvB\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-z5wui4\",\"data-styles-preset\":\"gf4CUuduU\",children:\"Projects\"})})})}),className:\"framer-11hfkg6\",\"data-framer-name\":\"Text 1\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"hnSBB0FOu\",style:{\"--extracted-r6o4lv\":\"var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255))\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-18sur8h\",\"data-styles-preset\":\"TUPfsbxeC\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255)))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"A_4pdJWRs\"},motionChild:true,nodeId:\"G4li9c0U3\",openInNewTab:false,relValues:[],scopeId:\"O4fieqzvB\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-z5wui4\",\"data-styles-preset\":\"gf4CUuduU\",children:\"About\"})})})}),className:\"framer-18xy5ii\",\"data-framer-name\":\"Text 1\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"G4li9c0U3\",style:{\"--extracted-r6o4lv\":\"var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255))\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-18sur8h\",\"data-styles-preset\":\"TUPfsbxeC\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255)))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"vO88q6Zrj\"},motionChild:true,nodeId:\"zn_Ch5E0p\",openInNewTab:false,relValues:[],scopeId:\"O4fieqzvB\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-z5wui4\",\"data-styles-preset\":\"gf4CUuduU\",children:\"contact\"})})})}),className:\"framer-1oo17nt\",\"data-framer-name\":\"Text 1\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"zn_Ch5E0p\",style:{\"--extracted-r6o4lv\":\"var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255))\"},verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-xf9tar\",\"data-framer-name\":\"social\",layoutDependency:layoutDependency,layoutId:\"MPFSxlR6i\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"14px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.03em\",\"--framer-line-height\":\"20px\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255)))\"},children:/*#__PURE__*/_jsx(Link,{href:SM5MNNElkaKg3Cntwq,motionChild:true,nodeId:\"vbOVZ4g28\",openInNewTab:false,relValues:[],scopeId:\"O4fieqzvB\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1tfr1u\",\"data-styles-preset\":\"sPJsapaIS\",children:\"Instagram\"})})})}),className:\"framer-vsfd87\",\"data-framer-name\":\"Instagram\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"vbOVZ4g28\",style:{\"--extracted-r6o4lv\":\"var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"14px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.03em\",\"--framer-line-height\":\"20px\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255)))\"},children:/*#__PURE__*/_jsx(Link,{href:\"x.com\",motionChild:true,nodeId:\"XTKhgK6QW\",openInNewTab:true,relValues:[],scopeId:\"O4fieqzvB\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1tfr1u\",\"data-styles-preset\":\"sPJsapaIS\",children:\"X\"})})})}),className:\"framer-uqdzu9\",\"data-framer-name\":\"Behance\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"XTKhgK6QW\",style:{\"--extracted-r6o4lv\":\"var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"14px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.03em\",\"--framer-line-height\":\"20px\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255)))\"},children:/*#__PURE__*/_jsx(Link,{href:V8I1Crr1FaKg3Cntwq,motionChild:true,nodeId:\"ita6tDCah\",openInNewTab:false,relValues:[],scopeId:\"O4fieqzvB\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1tfr1u\",\"data-styles-preset\":\"sPJsapaIS\",children:\"LinkedIn\"})})})}),className:\"framer-1gt6xig\",\"data-framer-name\":\"Behance\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"ita6tDCah\",style:{\"--extracted-r6o4lv\":\"var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"14px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.03em\",\"--framer-line-height\":\"20px\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255)))\"},children:/*#__PURE__*/_jsx(Link,{href:asP_7haI7aKg3Cntwq,motionChild:true,nodeId:\"rIhLWOUFo\",openInNewTab:false,relValues:[],scopeId:\"O4fieqzvB\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1tfr1u\",\"data-styles-preset\":\"sPJsapaIS\",children:\"Facebook\"})})})}),className:\"framer-586fpc\",\"data-framer-name\":\"Twitter \",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"rIhLWOUFo\",style:{\"--extracted-r6o4lv\":\"var(--token-efa18e95-39b2-42bc-9291-825bdbc6e4ca, rgb(255, 255, 255))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true})]})]})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-8qfkew\",\"data-framer-name\":\"promo & contacts\",layoutDependency:layoutDependency,layoutId:\"OwrfXhSeO\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,...addPropertyOverrides({JhFeo7UtP:{y:(componentViewport?.y||0)+22+76+38+264.6+0+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainerWithFXWithOptimizedAppearEffect,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animate:animation2,className:\"framer-y0dxiz-container\",\"data-framer-appear-id\":\"y0dxiz\",initial:animation3,layoutDependency:layoutDependency,layoutId:\"uMkUhVrrP-container\",nodeId:\"uMkUhVrrP\",optimized:true,rendersWithMotion:true,scopeId:\"O4fieqzvB\",children:/*#__PURE__*/_jsx(MenuLink,{DvNNqUHKC:\"mailto:Hello@juliandavid.com\",height:\"100%\",id:\"uMkUhVrrP\",IKHeLSiEg:\"Hello@juliandavid.com\",layoutId:\"uMkUhVrrP\",variant:matchVariant(\"ZHgUlyyi7\"),width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:22,...addPropertyOverrides({JhFeo7UtP:{y:(componentViewport?.y||0)+22+76+38+264.6+0+47}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainerWithFXWithOptimizedAppearEffect,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animate:animation2,className:\"framer-1eh77qh-container\",\"data-framer-appear-id\":\"1eh77qh\",initial:animation3,layoutDependency:layoutDependency,layoutId:\"s_2RpyBPx-container\",nodeId:\"s_2RpyBPx\",optimized:true,rendersWithMotion:true,scopeId:\"O4fieqzvB\",children:/*#__PURE__*/_jsx(MenuLink,{DvNNqUHKC:\"mailto:Hello@juliandavid.com\",height:\"100%\",id:\"s_2RpyBPx\",IKHeLSiEg:\"+33 6 12 34 56 78\",layoutId:\"s_2RpyBPx\",variant:matchVariant(\"ZHgUlyyi7\"),width:\"100%\"})})})]})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-HueoT.framer-19ib8l2, .framer-HueoT .framer-19ib8l2 { display: block; }\",\".framer-HueoT.framer-1rt5431 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 382px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px 18px 0px 18px; position: relative; width: 1400px; }\",\".framer-HueoT .framer-1o0duy { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; max-width: 1400px; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-HueoT .framer-1cvv6j { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 22px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-HueoT .framer-xmzg68-container, .framer-HueoT .framer-xaiu18-container, .framer-HueoT .framer-hsjd8d-container, .framer-HueoT .framer-u9uprf-container, .framer-HueoT .framer-y0dxiz-container, .framer-HueoT .framer-1eh77qh-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-HueoT .framer-8lzgbl { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-HueoT .framer-1geoso0 { align-content: center; align-items: center; cursor: pointer; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-HueoT .framer-1umbu2d { flex: none; height: var(--framer-aspect-ratio-supported, 200px); position: relative; }\",\".framer-HueoT .framer-1l8e0ho { align-content: flex-start; align-items: flex-start; cursor: pointer; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 46px; height: min-content; justify-content: center; overflow: visible; padding: 38px 0px 0px 0px; position: relative; width: 1px; z-index: 1; }\",\".framer-HueoT .framer-1qqgjez { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 30px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-HueoT .framer-3zecin { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 30px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-HueoT .framer-145tusm { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 21px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-HueoT .framer-thq1j4, .framer-HueoT .framer-11hfkg6, .framer-HueoT .framer-18xy5ii, .framer-HueoT .framer-1oo17nt, .framer-HueoT .framer-vsfd87, .framer-HueoT .framer-uqdzu9, .framer-HueoT .framer-1gt6xig, .framer-HueoT .framer-586fpc { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-HueoT .framer-xf9tar { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 32px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-HueoT .framer-8qfkew { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 25px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-HueoT.framer-v-wcm837.framer-1rt5431 { flex-direction: column; gap: 25px; padding: 17px 20px 17px 20px; width: 400px; }\",\".framer-HueoT.framer-v-wcm837 .framer-1o0duy, .framer-HueoT.framer-v-aypon .framer-1o0duy, .framer-HueoT.framer-v-aypon .framer-1l8e0ho { flex: none; width: 100%; }\",\".framer-HueoT.framer-v-wcm837 .framer-1umbu2d, .framer-HueoT.framer-v-aypon .framer-1umbu2d { height: var(--framer-aspect-ratio-supported, 24px); }\",\".framer-HueoT.framer-v-aypon.framer-1rt5431 { flex-direction: column; gap: 25px; justify-content: flex-start; padding: 22px 20px 199px 20px; width: 400px; }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 51.5\n * @framerIntrinsicWidth 1400\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"u7PVyCVHC\":{\"layout\":[\"fixed\",\"auto\"]},\"JhFeo7UtP\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"jtOvkkZwW\":\"variant2\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerO4fieqzvB=withCSS(Component,css,\"framer-HueoT\");export default FramerO4fieqzvB;FramerO4fieqzvB.displayName=\"nav bar\";FramerO4fieqzvB.defaultProps={height:51.5,width:1400};addPropertyControls(FramerO4fieqzvB,{variant:{options:[\"u0xwgEZHk\",\"u7PVyCVHC\",\"JhFeo7UtP\"],optionTitles:[\"Desktop\",\"mobile\",\"mobile - Expanded\"],title:\"Variant\",type:ControlType.Enum},jtOvkkZwW:MenuLinkControls?.[\"variant\"]&&{...MenuLinkControls[\"variant\"],defaultValue:\"oWlP3lriD\",description:undefined,hidden:undefined,optional:undefined,title:\"Variant 2\"},onjtOvkkZwWChange:{changes:\"jtOvkkZwW\",type:ControlType.ChangeHandler}});addFonts(FramerO4fieqzvB,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/UjlFhCnUjxhNfep4oYBPqnEssyo.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"}]},...LogoFonts,...MenuLinkFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts)],{supportsExplicitInterCodegen:true});FramerO4fieqzvB.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(Logo,{},context),forwardLoader(MenuLink,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerO4fieqzvB\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"u7PVyCVHC\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"JhFeo7UtP\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicWidth\":\"1400\",\"framerContractVersion\":\"1\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicHeight\":\"51.5\",\"framerVariables\":\"{\\\"jtOvkkZwW\\\":\\\"variant2\\\"}\",\"framerColorSyntax\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./O4fieqzvB.map","// Spectra Noise Component - WebGL shader-based animated background with customizable effects\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useRef,useEffect,useState,startTransition}from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";const vertex=`\nattribute vec2 position;\nvoid main(){gl_Position=vec4(position,0.0,1.0);}\n`;const fragment=`\n#ifdef GL_ES\nprecision lowp float;\n#endif\nuniform vec2 uResolution;\nuniform float uTime;\nuniform float uHueShift;\nuniform float uNoise;\nuniform float uScan;\nuniform float uScanFreq;\nuniform float uWarp;\nuniform int uTheme;\nuniform bool uUseCustomColors;\nuniform vec3 uPrimaryColor;\nuniform vec3 uSecondaryColor;\nuniform vec3 uAccentColor;\nuniform float uColorIntensity;\n#define iTime uTime\n#define iResolution uResolution\n\nvec4 buf[8];\nfloat rand(vec2 c){return fract(sin(dot(c,vec2(12.9898,78.233)))*43758.5453);}\n\nmat3 rgb2yiq=mat3(0.299,0.587,0.114,0.596,-0.274,-0.322,0.211,-0.523,0.312);\nmat3 yiq2rgb=mat3(1.0,0.956,0.621,1.0,-0.272,-0.647,1.0,-1.106,1.703);\n\nvec3 hueShiftRGB(vec3 col,float deg){\n    vec3 yiq=rgb2yiq*col;\n    float rad=radians(deg);\n    float cosh=cos(rad),sinh=sin(rad);\n    vec3 yiqShift=vec3(yiq.x,yiq.y*cosh-yiq.z*sinh,yiq.y*sinh+yiq.z*cosh);\n    return clamp(yiq2rgb*yiqShift,0.0,1.0);\n}\n\nvec3 applyTheme(vec3 baseColor, int theme) {\n    if (theme == 1) { // Cyberpunk\n        return mix(baseColor, vec3(0.0, 1.0, 1.0), 0.3) * vec3(1.2, 0.8, 1.5);\n    } else if (theme == 2) { // Neon\n        return mix(baseColor, vec3(1.0, 0.0, 1.0), 0.4) * vec3(1.5, 0.6, 1.8);\n    } else if (theme == 3) { // Fire\n        return mix(baseColor, vec3(1.0, 0.3, 0.0), 0.5) * vec3(1.8, 1.2, 0.4);\n    } else if (theme == 4) { // Ocean\n        return mix(baseColor, vec3(0.0, 0.4, 1.0), 0.4) * vec3(0.6, 1.2, 1.6);\n    } else if (theme == 5) { // Forest\n        return mix(baseColor, vec3(0.2, 0.8, 0.2), 0.3) * vec3(0.8, 1.4, 0.9);\n    } else if (theme == 6) { // Sunset\n        return mix(baseColor, vec3(1.0, 0.6, 0.2), 0.4) * vec3(1.6, 1.3, 0.7);\n    } else if (theme == 7) { // Monochrome\n        float gray = dot(baseColor, vec3(0.299, 0.587, 0.114));\n        return vec3(gray) * 1.2;\n    }\n    return baseColor; // Default\n}\n\nvec3 applyCustomColors(vec3 baseColor, vec3 primary, vec3 secondary, vec3 accent, float intensity) {\n    float luminance = dot(baseColor, vec3(0.299, 0.587, 0.114));\n    vec3 colorMix;\n    \n    if (luminance < 0.3) {\n        colorMix = mix(primary, secondary, luminance * 3.33);\n    } else if (luminance < 0.7) {\n        colorMix = mix(secondary, accent, (luminance - 0.3) * 2.5);\n    } else {\n        colorMix = mix(accent, vec3(1.0), (luminance - 0.7) * 3.33);\n    }\n    \n    return mix(baseColor, colorMix, intensity);\n}\n\nvec4 sigmoid(vec4 x){return 1./(1.+exp(-x));}\n\nvec4 cppn_fn(vec2 coordinate,float in0,float in1,float in2){\n    buf[6]=vec4(coordinate.x,coordinate.y,0.3948333106474662+in0,0.36+in1);\n    buf[7]=vec4(0.14+in2,sqrt(coordinate.x*coordinate.x+coordinate.y*coordinate.y),0.,0.);\n    buf[0]=mat4(vec4(6.5404263,-3.6126034,0.7590882,-1.13613),vec4(2.4582713,3.1660357,1.2219609,0.06276096),vec4(-5.478085,-6.159632,1.8701609,-4.7742867),vec4(6.039214,-5.542865,-0.90925294,3.251348))*buf[6]+mat4(vec4(0.8473259,-5.722911,3.975766,1.6522468),vec4(-0.24321538,0.5839259,-1.7661959,-5.350116),vec4(0.,0.,0.,0.),vec4(0.,0.,0.,0.))*buf[7]+vec4(0.21808943,1.1243913,-1.7969975,5.0294676);\n    buf[1]=mat4(vec4(-3.3522482,-6.0612736,0.55641043,-4.4719114),vec4(0.8631464,1.7432913,5.643898,1.6106541),vec4(2.4941394,-3.5012043,1.7184316,6.357333),vec4(3.310376,8.209261,1.1355612,-1.165539))*buf[6]+mat4(vec4(5.24046,-13.034365,0.009859298,15.870829),vec4(2.987511,3.129433,-0.89023495,-1.6822904),vec4(0.,0.,0.,0.),vec4(0.,0.,0.,0.))*buf[7]+vec4(-5.9457836,-6.573602,-0.8812491,1.5436668);\n    buf[0]=sigmoid(buf[0]);buf[1]=sigmoid(buf[1]);\n    buf[2]=mat4(vec4(-15.219568,8.095543,-2.429353,-1.9381982),vec4(-5.951362,4.3115187,2.6393783,1.274315),vec4(-7.3145227,6.7297835,5.2473326,5.9411426),vec4(5.0796127,8.979051,-1.7278991,-1.158976))*buf[6]+mat4(vec4(-11.967154,-11.608155,6.1486754,11.237008),vec4(2.124141,-6.263192,-1.7050359,-0.7021966),vec4(0.,0.,0.,0.),vec4(0.,0.,0.,0.))*buf[7]+vec4(-4.17164,-3.2281182,-4.576417,-3.6401186);\n    buf[3]=mat4(vec4(3.1832156,-13.738922,1.879223,3.233465),vec4(0.64300746,12.768129,1.9141049,0.50990224),vec4(-0.049295485,4.4807224,1.4733979,1.801449),vec4(5.0039253,13.000481,3.3991797,-4.5561905))*buf[6]+mat4(vec4(-0.1285731,7.720628,-3.1425676,4.742367),vec4(0.6393625,3.714393,-0.8108378,-0.39174938),vec4(0.,0.,0.,0.),vec4(0.,0.,0.,0.))*buf[7]+vec4(-1.1811101,-21.621881,0.7851888,1.2329718);\n    buf[2]=sigmoid(buf[2]);buf[3]=sigmoid(buf[3]);\n    buf[4]=mat4(vec4(5.214916,-7.183024,2.7228765,2.6592617),vec4(-5.601878,-25.3591,4.067988,0.4602802),vec4(-10.57759,24.286327,21.102104,37.546658),vec4(4.3024497,-1.9625226,2.3458803,-1.372816))*buf[0]+mat4(vec4(-17.6526,-10.507558,2.2587414,12.462782),vec4(6.265566,-502.75443,-12.642513,0.9112289),vec4(-10.983244,20.741234,-9.701768,-0.7635988),vec4(5.383626,1.4819539,-4.1911616,-4.8444734))*buf[1]+mat4(vec4(12.785233,-16.345072,-0.39901125,1.7955981),vec4(-30.48365,-1.8345358,1.4542528,-1.1118771),vec4(19.872723,-7.337935,-42.941723,-98.52709),vec4(8.337645,-2.7312303,-2.2927687,-36.142323))*buf[2]+mat4(vec4(-16.298317,3.5471997,-0.44300047,-9.444417),vec4(57.5077,-35.609753,16.163465,-4.1534753),vec4(-0.07470326,-3.8656476,-7.0901804,3.1523974),vec4(-12.559385,-7.077619,1.490437,-0.8211543))*buf[3]+vec4(-7.67914,15.927437,1.3207729,-1.6686112);\n    buf[5]=mat4(vec4(-1.4109162,-0.372762,-3.770383,-21.367174),vec4(-6.2103205,-9.35908,0.92529047,8.82561),vec4(11.460242,-22.348068,13.625772,-18.693201),vec4(-0.3429052,-3.9905605,-2.4626114,-0.45033523))*buf[0]+mat4(vec4(7.3481627,-4.3661838,-6.3037653,-3.868115),vec4(1.5462853,6.5488915,1.9701879,-0.58291394),vec4(6.5858274,-2.2180402,3.7127688,-1.3730392),vec4(-5.7973905,10.134961,-2.3395722,-5.965605))*buf[1]+mat4(vec4(-2.5132585,-6.6685553,-1.4029363,-0.16285264),vec4(-0.37908727,0.53738135,4.389061,-1.3024765),vec4(-0.70647055,2.0111287,-5.1659346,-3.728635),vec4(-13.562562,10.487719,-0.9173751,-2.6487076))*buf[2]+mat4(vec4(-8.645013,6.5546675,-6.3944063,-5.5933375),vec4(-0.57783127,-1.077275,36.91025,5.736769),vec4(14.283112,3.7146652,7.1452246,-4.5958776),vec4(2.7192075,3.6021907,-4.366337,-2.3653464))*buf[3]+vec4(-5.9000807,-4.329569,1.2427121,8.59503);\n    buf[4]=sigmoid(buf[4]);buf[5]=sigmoid(buf[5]);\n    buf[6]=mat4(vec4(-1.61102,0.7970257,1.4675229,0.20917463),vec4(-28.793737,-7.1390953,1.5025433,4.656581),vec4(-10.94861,39.66238,0.74318546,-10.095605),vec4(-0.7229728,-1.5483948,0.7301322,2.1687684))*buf[0]+mat4(vec4(3.2547753,21.489103,-1.0194173,-3.3100595),vec4(-3.7316632,-3.3792162,-7.223193,-0.23685838),vec4(13.1804495,0.7916005,5.338587,5.687114),vec4(-4.167605,-17.798311,-6.815736,-1.6451967))*buf[1]+mat4(vec4(0.604885,-7.800309,-7.213122,-2.741014),vec4(-3.522382,-0.12359311,-0.5258442,0.43852118),vec4(9.6752825,-22.853785,2.062431,0.099892326),vec4(-4.3196306,-17.730087,2.5184598,5.30267))*buf[2]+mat4(vec4(-6.545563,-15.790176,-6.0438633,-5.415399),vec4(-43.591583,28.551912,-16.00161,18.84728),vec4(4.212382,8.394307,3.0958717,8.657522),vec4(-5.0237565,-4.450633,-4.4768,-5.5010443))*buf[3]+mat4(vec4(1.6985557,-67.05806,6.897715,1.9004834),vec4(1.8680354,2.3915145,2.5231109,4.081538),vec4(11.158006,1.7294737,2.0738268,7.386411),vec4(-4.256034,-306.24686,8.258898,-17.132736))*buf[4]+mat4(vec4(1.6889864,-4.5852966,3.8534803,-6.3482175),vec4(1.3543309,-1.2640043,9.932754,2.9079645),vec4(-5.2770967,0.07150358,-0.13962056,3.3269649),vec4(28.34703,-4.918278,6.1044083,4.085355))*buf[5]+vec4(6.6818056,12.522166,-3.7075126,-4.104386);\n    buf[7]=mat4(vec4(-8.265602,-4.7027016,5.098234,0.7509808),vec4(8.6507845,-17.15949,16.51939,-8.884479),vec4(-4.036479,-2.3946867,-2.6055532,-1.9866527),vec4(-2.2167742,-1.8135649,-5.9759874,4.8846445))*buf[0]+mat4(vec4(6.7790847,3.5076547,-2.8191125,-2.7028968),vec4(-5.743024,-0.27844876,1.4958696,-5.0517144),vec4(13.122226,15.735168,-2.9397483,-4.101023),vec4(-14.375265,-5.030483,-6.2599335,2.9848232))*buf[1]+mat4(vec4(4.0950394,-0.94011575,-5.674733,4.755022),vec4(4.3809423,4.8310084,1.7425908,-3.437416),vec4(2.117492,0.16342592,-104.56341,16.949184),vec4(-5.22543,-2.994248,3.8350096,-1.9364246))*buf[2]+mat4(vec4(-5.900337,1.7946124,-13.604192,-3.8060522),vec4(6.6583457,31.911177,25.164474,91.81147),vec4(11.840538,4.1503043,-0.7314397,6.768467),vec4(-6.3967767,4.034772,6.1714606,-0.32874924))*buf[3]+mat4(vec4(3.4992442,-196.91893,-8.923708,2.8142626),vec4(3.4806502,-3.1846354,5.1725626,5.1804223),vec4(-2.4009497,15.585794,1.2863957,2.0252278),vec4(-71.25271,-62.441242,-8.138444,0.50670296))*buf[4]+mat4(vec4(-12.291733,-11.176166,-7.3474145,4.390294),vec4(10.805477,5.6337385,-0.9385842,-4.7348723),vec4(-12.869276,-7.039391,5.3029537,7.5436664),vec4(1.4593618,8.91898,3.5101583,5.840625))*buf[5]+vec4(2.2415268,-6.705987,-0.98861027,-2.117676);\n    buf[6]=sigmoid(buf[6]);buf[7]=sigmoid(buf[7]);\n    buf[0]=mat4(vec4(1.6794263,1.3817469,2.9625452,0.),vec4(-1.8834411,-1.4806935,-3.5924516,0.),vec4(-1.3279216,-1.0918057,-2.3124623,0.),vec4(0.2662234,0.23235129,0.44178495,0.))*buf[0]+mat4(vec4(-0.6299101,-0.5945583,-0.9125601,0.),vec4(0.17828953,0.18300213,0.18182953,0.),vec4(-2.96544,-2.5819945,-4.9001055,0.),vec4(1.4195864,1.1868085,2.5176322,0.))*buf[1]+mat4(vec4(-1.2584374,-1.0552157,-2.1688404,0.),vec4(-0.7200217,-0.52666044,-1.438251,0.),vec4(0.15345335,0.15196142,0.272854,0.),vec4(0.945728,0.8861938,1.2766753,0.))*buf[2]+mat4(vec4(-2.4218085,-1.968602,-4.35166,0.),vec4(-22.683098,-18.0544,-41.954372,0.),vec4(0.63792,0.5470648,1.1078634,0.),vec4(-1.5489894,-1.3075932,-2.6444845,0.))*buf[3]+mat4(vec4(-0.49252132,-0.39877754,-0.91366625,0.),vec4(0.95609266,0.7923952,1.640221,0.),vec4(0.30616966,0.15693925,0.8639857,0.),vec4(1.1825981,0.94504964,2.176963,0.))*buf[4]+mat4(vec4(0.35446745,0.3293795,0.59547555,0.),vec4(-0.58784515,-0.48177817,-1.0614829,0.),vec4(2.5271258,1.9991658,4.6846647,0.),vec4(0.13042648,0.08864098,0.30187556,0.))*buf[5]+mat4(vec4(-1.7718065,-1.4033192,-3.3355875,0.),vec4(3.1664357,2.638297,5.378702,0.),vec4(-3.1724713,-2.6107926,-5.549295,0.),vec4(-2.851368,-2.249092,-5.3013067,0.))*buf[6]+mat4(vec4(1.5203838,1.2212278,2.8404984,0.),vec4(1.5210563,1.2651345,2.683903,0.),vec4(2.9789467,2.4364579,5.2347264,0.),vec4(2.2270417,1.8825914,3.8028636,0.))*buf[7]+vec4(-1.5468478,-3.6171484,0.24762098,0.);\n    buf[0]=sigmoid(buf[0]);\n    return vec4(buf[0].x,buf[0].y,buf[0].z,1.);\n}\n\nvoid mainImage(out vec4 fragColor,in vec2 fragCoord){\n    vec2 uv=fragCoord/uResolution.xy*2.-1.;\n    uv.y*=-1.;\n    \n    uv+=uWarp*vec2(sin(uv.y*6.283+uTime*0.5),cos(uv.x*6.283+uTime*0.5))*0.05;\n    fragColor=cppn_fn(uv,0.1*sin(0.3*uTime),0.1*sin(0.69*uTime),0.1*sin(0.44*uTime));\n}\n\nvoid main(){\n    vec4 col;mainImage(col,gl_FragCoord.xy);\n    \n    // Apply hue shift first\n    col.rgb=hueShiftRGB(col.rgb,uHueShift);\n    \n    // Apply theme or custom colors\n    if (uUseCustomColors) {\n        col.rgb = applyCustomColors(col.rgb, uPrimaryColor, uSecondaryColor, uAccentColor, uColorIntensity);\n    } else {\n        col.rgb = applyTheme(col.rgb, uTheme);\n    }\n    \n    // Apply scanlines and noise\n    float scanline_val=sin(gl_FragCoord.y*uScanFreq)*0.5+0.5;\n    col.rgb*=1.-(scanline_val*scanline_val)*uScan;\n    col.rgb+=(rand(gl_FragCoord.xy+uTime)-0.5)*uNoise;\n    gl_FragColor=vec4(clamp(col.rgb,0.0,1.0),1.0);\n}\n`;/**\n * Spectra Noise Component\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function SpectraNoise(props){const{hueShift=0,hueShiftSpeed=0,noiseIntensity=0,scanlineIntensity=0,speed=.5,scanlineFrequency=0,warpAmount=0,resolutionScale=1}=props;const canvasRef=useRef(null);const[webglSupported,setWebglSupported]=useState(true);const isStatic=useIsStaticRenderer();useEffect(()=>{if(isStatic)return;const canvas=canvasRef.current;if(!canvas)return;const parent=canvas.parentElement;if(!parent)return;// Check WebGL support\nlet gl=null;try{gl=canvas.getContext(\"webgl\")||canvas.getContext(\"experimental-webgl\");if(!gl){startTransition(()=>setWebglSupported(false));return;}}catch(e){startTransition(()=>setWebglSupported(false));return;}// Create shader program\nconst createShader=(type,source)=>{const shader=gl.createShader(type);if(!shader)return null;gl.shaderSource(shader,source);gl.compileShader(shader);if(!gl.getShaderParameter(shader,gl.COMPILE_STATUS)){console.error(\"Shader compile error:\",gl.getShaderInfoLog(shader));gl.deleteShader(shader);return null;}return shader;};const vertexShader=createShader(gl.VERTEX_SHADER,vertex);const fragmentShader=createShader(gl.FRAGMENT_SHADER,fragment);if(!vertexShader||!fragmentShader){startTransition(()=>setWebglSupported(false));return;}const program=gl.createProgram();if(!program){startTransition(()=>setWebglSupported(false));return;}gl.attachShader(program,vertexShader);gl.attachShader(program,fragmentShader);gl.linkProgram(program);if(!gl.getProgramParameter(program,gl.LINK_STATUS)){console.error(\"Program link error:\",gl.getProgramInfoLog(program));startTransition(()=>setWebglSupported(false));return;}gl.useProgram(program);// Create geometry (fullscreen triangle)\nconst positions=new Float32Array([-1,-1,3,-1,-1,3]);const buffer=gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER,buffer);gl.bufferData(gl.ARRAY_BUFFER,positions,gl.STATIC_DRAW);const positionLocation=gl.getAttribLocation(program,\"position\");gl.enableVertexAttribArray(positionLocation);gl.vertexAttribPointer(positionLocation,2,gl.FLOAT,false,0,0);// Get uniform locations\nconst uniforms={uTime:gl.getUniformLocation(program,\"uTime\"),uResolution:gl.getUniformLocation(program,\"uResolution\"),uHueShift:gl.getUniformLocation(program,\"uHueShift\"),uNoise:gl.getUniformLocation(program,\"uNoise\"),uScan:gl.getUniformLocation(program,\"uScan\"),uScanFreq:gl.getUniformLocation(program,\"uScanFreq\"),uWarp:gl.getUniformLocation(program,\"uWarp\")};const resize=()=>{const w=parent.clientWidth;const h=parent.clientHeight;canvas.width=w*resolutionScale;canvas.height=h*resolutionScale;canvas.style.width=w+\"px\";canvas.style.height=h+\"px\";gl.viewport(0,0,canvas.width,canvas.height);gl.uniform2f(uniforms.uResolution,w,h);};const handleResize=()=>resize();if(typeof window!==\"undefined\"){window.addEventListener(\"resize\",handleResize);}resize();const startTime=performance.now();let animationFrame;const render=()=>{const currentTime=(performance.now()-startTime)/1e3;gl.uniform1f(uniforms.uTime,currentTime*speed);gl.uniform1f(uniforms.uHueShift,hueShift+currentTime*hueShiftSpeed);gl.uniform1f(uniforms.uNoise,noiseIntensity);gl.uniform1f(uniforms.uScan,scanlineIntensity);gl.uniform1f(uniforms.uScanFreq,scanlineFrequency);gl.uniform1f(uniforms.uWarp,warpAmount);gl.drawArrays(gl.TRIANGLES,0,3);animationFrame=requestAnimationFrame(render);};render();return()=>{if(animationFrame){cancelAnimationFrame(animationFrame);}if(typeof window!==\"undefined\"){window.removeEventListener(\"resize\",handleResize);}};},[hueShift,hueShiftSpeed,noiseIntensity,scanlineIntensity,speed,scanlineFrequency,warpAmount,resolutionScale,isStatic]);if(isStatic){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",background:\"linear-gradient(45deg, #1a1a2e, #16213e, #0f3460)\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:\"#ffffff\",fontSize:\"14px\",fontFamily:\"system-ui, sans-serif\"},children:\"Spectra Noise Preview\"});}if(!webglSupported){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",background:\"linear-gradient(45deg, #1a1a2e, #16213e, #0f3460)\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:\"#ffffff\",fontSize:\"14px\",fontFamily:\"system-ui, sans-serif\"},children:\"WebGL not supported\"});}return /*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,style:{width:\"100%\",height:\"100%\",display:\"block\",cursor:\"default\",...props.style}});}addPropertyControls(SpectraNoise,{hueShift:{type:ControlType.Number,title:\"Hue Shift\",defaultValue:0,min:-180,max:180,step:1,unit:\"\\xb0\"},hueShiftSpeed:{type:ControlType.Number,title:\"Hue Shift Speed\",defaultValue:0,min:-180,max:180,step:1,unit:\"\\xb0/s\"},noiseIntensity:{type:ControlType.Number,title:\"Noise Intensity\",defaultValue:0,min:0,max:1,step:.01},scanlineIntensity:{type:ControlType.Number,title:\"Scanline Intensity\",defaultValue:0,min:0,max:1,step:.01},scanlineFrequency:{type:ControlType.Number,title:\"Scanline Frequency\",defaultValue:0,min:0,max:.1,step:.001},warpAmount:{type:ControlType.Number,title:\"Warp Amount\",defaultValue:0,min:0,max:2,step:.01},speed:{type:ControlType.Number,title:\"Animation Speed\",defaultValue:.5,min:0,max:3,step:.1},resolutionScale:{type:ControlType.Number,title:\"Resolution Scale\",defaultValue:1,min:.25,max:2,step:.25}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"SpectraNoise\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Spectra_Noise.map","// Generated by Framer (b47b624)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,Container,cx,forwardLoader,GeneratedComponentContext,getFonts,PropertyOverrides,RenderTarget,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS,withFX}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Footer from\"#framer/local/canvasComponent/LAW_mBAmU/LAW_mBAmU.js\";import NavBar from\"#framer/local/canvasComponent/O4fieqzvB/O4fieqzvB.js\";import SpectraNoise from\"#framer/local/codeFile/KhzEZWb/Spectra_Noise.js\";const NavBarFonts=getFonts(NavBar);const ContainerWithFX=withFX(Container);const SpectraNoiseFonts=getFonts(SpectraNoise);const FooterFonts=getFonts(Footer);const breakpoints={C1E2k_lWo:\"(max-width: 809.98px)\",P9rWVTFZc:\"(min-width: 810px) and (max-width: 1199.98px)\",uvnOqqNl4:\"(min-width: 1200px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-G756p\";const variantClassNames={C1E2k_lWo:\"framer-v-1gljabr\",P9rWVTFZc:\"framer-v-r0vde9\",uvnOqqNl4:\"framer-v-16lz82l\"};const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const animation={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:-150};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const breakpointRules={C1E2k_lWo:[\".framer-G756p .framer-1285yjy-container { height: auto; }\"]};const breakpointKeys=Object.keys(breakpointRules);const selectors={C1E2k_lWo:\".framer-1gljabr-override\"};const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-G756p.framer-1ol0jf9, .framer-G756p .framer-1ol0jf9 { display: block; }\",\".framer-G756p.framer-16lz82l { align-content: center; align-items: center; background-color: #000000; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-G756p .framer-1285yjy-container { flex: none; height: 76px; left: 0px; order: -1000; position: var(--framer-canvas-fixed-position, fixed); right: 0px; top: 0px; z-index: 10; }\",\".framer-G756p .framer-bw6so6-container { bottom: calc(calc(100% - min(var(--framer-viewport-height, 100%), 100%)) + -822.5px); flex: none; height: calc(min(var(--framer-viewport-height, 100vh), 100%) * 2.0275); left: calc(50.00000000000002% - 100% / 2); order: -998; position: var(--framer-canvas-fixed-position, fixed); width: 100%; z-index: 0; }\",\".framer-G756p .framer-19z85ep { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-G756p .framer-xm7l80-container { flex: none; height: auto; order: 1004; position: relative; width: 100%; z-index: 1; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }'];const mediaQueries={C1E2k_lWo:\"(max-width: 809.98px)\",P9rWVTFZc:\"(min-width: 810px) and (max-width: 1199.98px)\",uvnOqqNl4:\"(min-width: 1200px)\"};const humanReadableVariantMap={Desktop:\"uvnOqqNl4\",Phone:\"C1E2k_lWo\",Tablet:\"P9rWVTFZc\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"uvnOqqNl4\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,children,...restProps}=getProps(props);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,isLayoutTemplate:true,primaryVariantId:\"uvnOqqNl4\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: rgb(0, 0, 0); } :root { font-size: 100%; }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-16lz82l\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{C1E2k_lWo:{height:52}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:76,width:\"100vw\",y:0,children:/*#__PURE__*/_jsx(ContainerWithFX,{__framer__animate:{transition:transition1},__framer__animateOnce:false,__framer__scrollDirection:{direction:\"down\",target:animation},__framer__styleAppearEffectEnabled:true,__framer__threshold:.5,__perspectiveFX:false,__targetOpacity:1,className:\"framer-1285yjy-container\",layoutScroll:true,nodeId:\"d5rpNNl0c\",rendersWithMotion:true,scopeId:\"Vl3dLwTau\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{C1E2k_lWo:{style:{width:\"100%\"},variant:matchVariant(\"u7PVyCVHC\")}},children:/*#__PURE__*/_jsx(NavBar,{height:\"100%\",id:\"d5rpNNl0c\",jtOvkkZwW:\"oWlP3lriD\",layoutId:\"d5rpNNl0c\",style:{height:\"100%\",width:\"100%\"},variant:matchVariant(\"u0xwgEZHk\"),width:\"100%\"})})})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-bw6so6-container\",\"data-code-component-plugin-id\":\"84d4c1\",isAuthoredByUser:true,layoutScroll:true,nodeId:\"oiiIlCn2R\",scopeId:\"Vl3dLwTau\",children:/*#__PURE__*/_jsx(SpectraNoise,{height:\"100%\",hueShift:-98,hueShiftSpeed:5,id:\"oiiIlCn2R\",layoutId:\"oiiIlCn2R\",noiseIntensity:0,resolutionScale:1.25,scanlineFrequency:0,scanlineIntensity:0,speed:1,style:{height:\"100%\",width:\"100%\"},warpAmount:.15,width:\"100%\"})})}),children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-19z85ep\"}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:116,width:\"100vw\",y:1e3,children:/*#__PURE__*/_jsx(Container,{className:\"framer-xm7l80-container\",nodeId:\"vCF0f4pCU\",scopeId:\"Vl3dLwTau\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{C1E2k_lWo:{variant:matchVariant(\"xz3zKAr9P\")},P9rWVTFZc:{variant:matchVariant(\"whhys8gpF\")}},children:/*#__PURE__*/_jsx(Footer,{height:\"100%\",id:\"vCF0f4pCU\",layoutId:\"vCF0f4pCU\",style:{width:\"100%\"},variant:matchVariant(\"JXKS6rudO\"),width:\"100%\"})})})})]}),/*#__PURE__*/_jsx(\"div\",{id:\"template-overlay\"})]})});});const css=target=>{const isStaticRenderer=target===RenderTarget.canvas||target===RenderTarget.export;if(!isStaticRenderer){return[...rules,...breakpointKeys.map(key=>{const query=mediaQueries[key];return`@media ${query} { ${breakpointRules[key].join(\" \")} }`;})];}return[...rules,...breakpointKeys.flatMap(key=>{const selector=selectors[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1738\n * @framerIntrinsicWidth 1200\n * @framerRootFontSize 16\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"P9rWVTFZc\":{\"layout\":[\"fixed\",\"fixed\"]},\"C1E2k_lWo\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"uvnOqqNl4\":[\".framer-1285yjy-container\",\".framer-bw6so6-container\",\".framer-xm7l80-container\"],\"P9rWVTFZc\":[\".framer-1285yjy-container\",\".framer-bw6so6-container\",\".framer-xm7l80-container\"],\"C1E2k_lWo\":[\".framer-1285yjy-container\",\".framer-bw6so6-container\",\".framer-xm7l80-container\"]}\n * @framerBreakpoints {\"uvnOqqNl4\":{\"min\":1200,\"canvasClassName\":\"framer-16lz82l-override\",\"minHeight\":1738,\"name\":\"Desktop\",\"width\":1200,\"rootFontSize\":16},\"P9rWVTFZc\":{\"min\":810,\"max\":1199,\"canvasClassName\":\"framer-r0vde9-override\",\"minHeight\":1738,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":810,\"rootFontSize\":16},\"C1E2k_lWo\":{\"max\":809,\"canvasClassName\":\"framer-1gljabr-override\",\"minHeight\":2438,\"viewportHeight\":844,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant uvnOqqNl4\n * @framerLayoutTemplate true\n */const FramerVl3dLwTau=withCSS(Component,css,\"framer-G756p\");export default FramerVl3dLwTau;FramerVl3dLwTau.displayName=\"Template layout\";FramerVl3dLwTau.defaultProps={height:1738,width:1200};addFonts(FramerVl3dLwTau,[{explicitInter:true,fonts:[]},...NavBarFonts,...SpectraNoiseFonts,...FooterFonts],{supportsExplicitInterCodegen:true});FramerVl3dLwTau.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(NavBar,{},context),forwardLoader(Footer,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerVl3dLwTau\",\"slots\":[],\"annotations\":{\"framerColorSyntax\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"1738\",\"framerIntrinsicWidth\":\"1200\",\"framerDefaultVariant\":\"uvnOqqNl4\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"P9rWVTFZc\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"C1E2k_lWo\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerLayoutTemplate\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerRootFontSize\":\"16\",\"framerHitTargets\":\"{\\\"uvnOqqNl4\\\":[\\\".framer-1285yjy-container\\\",\\\".framer-bw6so6-container\\\",\\\".framer-xm7l80-container\\\"],\\\"P9rWVTFZc\\\":[\\\".framer-1285yjy-container\\\",\\\".framer-bw6so6-container\\\",\\\".framer-xm7l80-container\\\"],\\\"C1E2k_lWo\\\":[\\\".framer-1285yjy-container\\\",\\\".framer-bw6so6-container\\\",\\\".framer-xm7l80-container\\\"]}\",\"framerBreakpoints\":\"{\\\"uvnOqqNl4\\\":{\\\"min\\\":1200,\\\"canvasClassName\\\":\\\"framer-16lz82l-override\\\",\\\"minHeight\\\":1738,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1200,\\\"rootFontSize\\\":16},\\\"P9rWVTFZc\\\":{\\\"min\\\":810,\\\"max\\\":1199,\\\"canvasClassName\\\":\\\"framer-r0vde9-override\\\",\\\"minHeight\\\":1738,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":810,\\\"rootFontSize\\\":16},\\\"C1E2k_lWo\\\":{\\\"max\\\":809,\\\"canvasClassName\\\":\\\"framer-1gljabr-override\\\",\\\"minHeight\\\":2438,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","\r\n\t\timport * as Framer from \"framer\";\r\nimport * as React from \"react\";\r\nimport { createPortal } from \"react-dom\";\r\nimport * as ReactDOM from \"react-dom/client\";\r\nimport TemplateLayout from \"https://framerusercontent.com/modules/jC3RBeSXLZtncmynY9kQ/hKVmu1r2gMvrgRNWtFrf/Vl3dLwTau.js\";\r\n\r\n\t\tconst routes = {augiA20Il: {elements: {ONNU7KYgS: \"About\", WHuOMqYUL: \"about-1\", Xa337Xnat: \"work\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/ejcPM94FZNNwU6xAyauy/jB528wxCXvuxBT75yX8N/augiA20Il.js\")), path: \"/\"}, A_4pdJWRs: {elements: {BTjRX_5xb: \"services-1\", HNdYpdsg3: \"why-choose-us-1\", lNRZta_ZZ: \"services\", N1HBQCIsD: \"about-1\", VWfdTXlVH: \"why-choose-us\", yehubx41d: \"partners\", yvvhIYADX: \"About\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/o9fhosn9GOBWZ72DFNaz/QdQ2sXwBuXmn5d7qpPyQ/A_4pdJWRs.js\")), path: \"/about\"}, vO88q6Zrj: {elements: {UUMNrrIun: \"hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/oeArF3K1b5U9kOJ9AD7k/ddSlFuZQkB4WuHYnP2WY/vO88q6Zrj.js\")), path: \"/contact\"}, I6gdX5ygq: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/pyYzH0jFGcpQsC9SdYeT/G33PmpBNBMOVU6TNiVbi/I6gdX5ygq.js\")), path: \"/projects\"}, yqJAmfBLN: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/9oFmOSnEc4K8UFN7eykz/khI2D2TQDR6XSMZpDeQk/yqJAmfBLN.js\")), path: \"/404\"}, REHzQjVrx: {collectionId: \"JbiZ8wsbd\", elements: {itq96Vsjr: \"project-1\", Ja4ykWAZ8: \"5\", JLl14Y8sZ: \"4\", RNrc0yfo5: \"1\", Sog0OChl2: \"2\", XbS6qtqWe: \"work\", zHYnuN4fh: \"3\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/ba8PzvPdL2FHauCvwNzo/feOwru7bxhylWsQZJ8OW/REHzQjVrx.js\")), path: \"/projects/:XgILttIP8\"}}\r\n\r\n\t\tconst locales = [{code: \"en\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n\t\tconst collectionUtils = {JbiZ8wsbd: async () => (await import(\"https://framerusercontent.com/modules/c4KJH7JVi185PFlIaCdu/faUJ18ueAmSmWqABaKSL/JbiZ8wsbd.js\"))?.[\"utils\"]}\r\n\t\tconst framerSiteId = \"8134db5770023fb54422adb4e416a08ae3b6bad2cbecce6083059007cc664f59\"\r\n\t\tfunction Template({webPageId, children, style, ...rest}) {const templateProps = {}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"augiA20Il\":\r\ncase \"A_4pdJWRs\":\r\ncase \"vO88q6Zrj\":\r\ncase \"I6gdX5ygq\":\r\ncase \"yqJAmfBLN\":\r\ncase \"REHzQjVrx\":\r\nreturn React.createElement(TemplateLayout, {...props, key: \"TemplateLayout\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"augiA20Il\":\r\ncase \"A_4pdJWRs\":\r\ncase \"vO88q6Zrj\":\r\ncase \"I6gdX5ygq\":\r\ncase \"yqJAmfBLN\":\r\ncase \"REHzQjVrx\":\r\nreturn [{hash: \"16lz82l\", mediaQuery: \"(min-width: 1200px)\"}, {hash: \"r0vde9\", mediaQuery: \"(min-width: 810px) and (max-width: 1199.98px)\"}, {hash: \"1gljabr\", mediaQuery: \"(max-width: 809.98px)\"}]\r\ndefault: { return undefined }}}\r\n\r\n\t\tconst isBrowser = typeof document !== \"undefined\"\r\n\t\tconst isBot = isBrowser && /bot|-google|google-|yandex|ia_archiver|crawl|spider/iu.test(navigator.userAgent)\r\n\r\n\t\texport async function getPageRoot({ routeId, pathVariables, localeId, collectionItemId }) {\r\n\t\t\tconst rootPreload = routes[routeId].page.preload()\r\n\r\n\t\t\tconst content = React.createElement(\r\n\t\t\t\tFramer.PageRoot,\r\n\t\t\t\t{\r\n\t\t\t\t\tisWebsite: true,\r\n\t\t\t\t\tenvironment: \"site\",\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\troutes,\r\n\t\t\t\t\tcollectionUtils,\r\n\t\t\t\t\tframerSiteId,\r\n\t\t\t\t\tnotFoundPage: Framer.lazy(() => import(\"https://framerusercontent.com/modules/9oFmOSnEc4K8UFN7eykz/khI2D2TQDR6XSMZpDeQk/yqJAmfBLN.js\")),\r\n\t\t\t\t\tisReducedMotion: undefined,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tlocales,\r\n\t\t\t\t\tpreserveQueryParams: undefined,\r\n\t\t\t\t\tsiteCanonicalURL: \"https://omkarthakur.work\",\r\n\t\t\t\t\tEditorBar: \r\n\t\t\ttypeof window !== \"undefined\" ? (() => {\r\n\t\t\t\tif (isBot) {\r\n\t\t\t\t\tconsole.log(\"[Framer On-Page Editing] Unavailable because navigator is bot\")\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn Framer.lazy(async () => {\r\n\t\t\t\t\tconst dependencies = {\r\n\t\t\t\t\t\t__version: 3,\r\n\t\t\t\t\t\tframer: {\r\n\t\t\t\t\t\t\tuseCurrentRoute: Framer.useCurrentRoute,\r\n\t\t\t\t\t\t\tuseLocaleInfo: Framer.useLocaleInfo,\r\n\t\t\t\t\t\t\tuseRouter: Framer.useRouter,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\treact: {\r\n\t\t\t\t\t\t\tcreateElement: React.createElement,\r\n\t\t\t\t\t\t\tFragment: React.Fragment,\r\n\t\t\t\t\t\t\tmemo: React.memo,\r\n\t\t\t\t\t\t\tuseCallback: React.useCallback,\r\n\t\t\t\t\t\t\tuseEffect: React.useEffect,\r\n\t\t\t\t\t\t\tuseRef: React.useRef,\r\n\t\t\t\t\t\t\tuseState: React.useState,\r\n\t\t\t\t\t\t\tuseLayoutEffect: React.useLayoutEffect,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\"react-dom\": { createPortal },\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\twindow.__framer_editorBarDependencies = dependencies\r\n\r\n\t\t\t\t\tconst { createEditorBar } = await import(\"https://framer.com/edit/init.mjs\")\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tdefault: createEditorBar(),\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t})() : undefined\r\n\t\t,\r\n\t\t\t\t\tadaptLayoutToTextDirection: false,\r\n\t\t\t\t\tLayoutTemplate: Template,\r\n\t\t\t\t\tloadSnippetsModule: new Framer.LazyValue(() => import(\"https://framerusercontent.com/modules/zfxnxmMfRAvAg6q9puvj/KrGMCUb0fQGjQRJENgfr/snippets.js\")),\r\n\t\t\t\t\tinitialCollectionItemId: collectionItemId,\r\n\t\t\t\t}\r\n\t\t\t)\r\n\r\n\t\t\tconst contentWithFeaturesContext = React.createElement(\r\n\t\t\t\tFramer.LibraryFeaturesProvider,\r\n\t\t\t\t{\r\n\t\t\t\t\tchildren: content,\r\n\t\t\t\t\tvalue: {autobahnNavigation: true, disableCustomCode: false, editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, onPageLocalizationSupport: true, onPageMoveTool: true, synchronousNavigationOnDesktop: false, yieldOnTap: false}\r\n\t\t\t\t}\r\n\t\t\t)\r\n\r\n\t\t\tconst contentWithGracefullyDegradingErrorBoundary = React.createElement(Framer.GracefullyDegradingErrorBoundary, {\r\n\t\t\t\tchildren: contentWithFeaturesContext\r\n\t\t\t})\r\n\r\n\t\t\t\r\n\t\t\tconst page = React.createElement(Framer.PageEffectsProvider, {\r\n\t\t\t\tchildren: contentWithGracefullyDegradingErrorBoundary,\r\n\t\t\t\tvalue: {global: {enter: {mask: {angle: 270, type: \"wipe\", width: \"0%\"}, opacity: 1, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {damping: 30, delay: 0, duration: 0.4, ease: [0.27, 0, 0.51, 1], mass: 1, stiffness: 400, type: \"tween\"}, x: \"0px\", y: \"0px\"}, exit: {opacity: 0, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {damping: 30, delay: 0, duration: 0.2, ease: [0.27, 0, 0.51, 1], mass: 1, stiffness: 400, type: \"tween\"}, x: \"0px\", y: \"-50px\"}}, routes: {}}\r\n\t\t\t})\r\n\r\n\t\t\t// We don't want the initial render to immediately have to suspend.\r\n\t\t\tawait rootPreload\r\n\t\t\treturn page\r\n\t\t}\r\n\r\n\t\tif (isBrowser) {\r\n\t\t\twindow.__framer_importFromPackage = (packageAndFilename, exportIdentifier) => () => {\r\n\t\t\t\treturn React.createElement(Framer.ErrorPlaceholder, { error: 'Package component not supported: \"' + exportIdentifier + '\" in \"' + packageAndFilename + '\"' })\r\n\t\t\t}\r\n\r\n\t\t\twindow.__framer_events = window.__framer_events || []\r\n\r\n\t\t\t// Initialize lazy modules cache for hydration\r\n\t\t\tFramer.initLazyModulesCache()\r\n\r\n\t\t\t// Fallback support for stack gaps\r\n\t\t\tFramer.installFlexboxGapWorkaroundIfNeeded()\r\n\r\n\t\t\tconst container = document.getElementById(\"main\")\r\n\t\t\t// We know that #main is parsed before this script, so we don't need to wait for DOMContentLoaded or similar events.\r\n\t\t\tif (\"framerHydrateV2\" in container.dataset) main(true, container)\r\n\t\t\telse main(false, container)\r\n\t\t}\r\n\r\n\t\tfunction track() {\r\n\t\t\tif (!isBrowser) return\r\n\t\t\twindow.__framer_events.push(arguments)\r\n\t\t}\r\n\r\n\t\tasync function main(shouldHydrate, container) {\r\n\t\t\tfunction handleError(error, errorInfo, recoverable = true) {\r\n\t\t\t\tif (error.caught || window.__framer_hadFatalError) return // we already logged it\r\n\r\n\t\t\t\tconst componentStack = errorInfo?.componentStack\r\n\t\t\t\tif (recoverable) {\r\n\t\t\t\t\tconsole.warn(\"Caught a recoverable error. The site is still functional, but might have some UI flickering or degraded page load performance. If you are the author of this website, update external components and check recently added custom code or code overrides to fix the following server/client mismatches:\\n\", error, componentStack)\r\n\t\t\t\t\t// we only want to collect 1%, because this can be quite noisy (floods the data pipeline)\r\n\t\t\t\t\tif (Math.random() > 0.01) return\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.error(\"Caught a fatal error. Please report the following to the Framer team via https://www.framer.com/contact/:\\n\", error, componentStack)\r\n\t\t\t\t}\r\n\t\t\t\ttrack(recoverable ? \"published_site_load_recoverable_error\" : \"published_site_load_error\", {\r\n\t\t\t\t\tmessage: String(error),\r\n\t\t\t\t\tcomponentStack, // componentStack is more useful\r\n\t\t\t\t\tstack: componentStack ? undefined : error instanceof Error && typeof error.stack === \"string\" ? error.stack : null,\r\n\t\t\t\t})\r\n\t\t\t}\r\n\r\n\t\t\ttry {\r\n\t\t\t\tlet routeId, localeId, pathVariables, breakpoints, routeData\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\trouteData = JSON.parse(container.dataset[\"framerHydrateV2\"])\r\n\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\tbreakpoints = routeData.breakpoints\r\n\r\n\t\t\t\t\trouteId = Framer.patchRoutesForABTesting(routes, routeId) // Prioritize optimized route id to avoid flickering in browsers not supporting the server-timing header (Safari older than 16.4)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tFramer.patchRoutesForABTesting(routes, undefined) // This must happen before inferInitialRouteFromPath\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\tconst serverRouteExperimentEnabled = true\r\n\t\t\t\t\tconst serverRoute = serverRouteExperimentEnabled && performance.getEntriesByType(\"navigation\")[0]?.serverTiming?.find(e => e.name === \"route\")?.description\r\n\t\t\t\t\tif (serverRoute) {\r\n\t\t\t\t\t\tconst routeData = new URLSearchParams(serverRoute)\r\n\t\t\t\t\t\trouteId = routeData.get(\"id\")\r\n\t\t\t\t\t\tlocaleId = routeData.get(\"locale\")\r\n\t\t\t\t\t\tfor (const [key, value] of routeData.entries()) {\r\n\t\t\t\t\t\t\tif (!key.startsWith(\"var.\")) continue\r\n\t\t\t\t\t\t\tpathVariables ??= {}\r\n\t\t\t\t\t\t\tpathVariables[key.slice(4)] = value\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (!routeId || !localeId) {\r\n\t\t\t\t\t\tconst routeData = Framer.inferInitialRouteFromPath(routes, decodeURIComponent(location.pathname), true, locales)\r\n\t\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst pagePromise = getPageRoot({\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\tcollectionItemId: routeData?.collectionItemId,\r\n\t\t\t\t})\r\n\r\n\t\t\t\t\r\nif (typeof window !== \"undefined\") {\r\n\tvoid (async () => {\r\n\t\tconst route = routes[routeId]\r\n\r\n\t\tconst defaultLocaleId = \"default\"\r\n\t\tconst framerLocale = locales.find(({ id }) => !localeId ? id === defaultLocaleId : id === localeId).code\r\n\r\n\t\tlet collectionItemId = routeData?.collectionItemId ?? null\r\n\t\tif (collectionItemId === null && route?.collectionId && collectionUtils) {\r\n\t\t\t  const utils = await collectionUtils[route.collectionId]?.()\r\n\t\t\t  const [slug] = Object.values(pathVariables)\r\n\t\t\t  if (utils && typeof slug === \"string\") {\r\n\t\t\t\t  collectionItemId = (await utils.getRecordIdBySlug(slug, framerLocale || undefined)) ?? null\r\n\t\t\t  }\r\n\t\t}\r\n\r\n\t\tconst resolvedDateTimeOptions = Intl.DateTimeFormat().resolvedOptions()\r\n\t\tconst timezone = resolvedDateTimeOptions.timeZone\r\n\t\tconst locale = resolvedDateTimeOptions.locale\r\n\r\n\t\t// wait for the page to be activated before sending the pageview event\r\n\t\t// https://developer.chrome.com/docs/web-platform/prerender-pages#impact-on-analytics\r\n\t\tawait new Promise((resolve) => {\r\n\t\t\tif (document.prerendering) {\r\n\t\t\t\tdocument.addEventListener(\"prerenderingchange\", resolve, { once: true })\r\n\t\t\t} else {\r\n\t\t\t\tresolve()\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\twindow.__framer_events.push([\r\n\t\t\t\"published_site_pageview\",\r\n\t\t\t{\r\n\t\t\t\tframerSiteId: framerSiteId ?? null,\r\n\t\t\t\tversion: 2,\r\n\t\t\t\troutePath: route?.path || \"/\",\r\n\t\t\t\tcollectionItemId,\r\n\t\t\t\tframerLocale: framerLocale || null,\r\n\t\t\t\twebPageId: route?.abTestingVariantId ?? routeId,\r\n\t\t\t\tabTestId: route?.abTestId,\r\n\t\t\t\treferrer: document.referrer || null,\r\n\t\t\t\turl: window.location.href,\r\n\t\t\t\thostname: window.location.hostname || null,\r\n\t\t\t\tpathname: window.location.pathname || null,\r\n\t\t\t\thash: window.location.hash || null,\r\n\t\t\t\tsearch: window.location.search || null,\r\n\t\t\t\ttimezone,\r\n\t\t\t\tlocale,\r\n\t\t\t},\r\n\t\t\t\"eager\"\r\n\t\t])\r\n\r\n\t\t// Yield to avoid blocking the main thread with the user code\r\n\t\tawait Framer.yieldToMain({ priority: \"background\", ensureContinueBeforeUnload: true, continueAfter: \"paint\" })\r\n\r\n\t\tdocument.dispatchEvent(new CustomEvent(\"framer:pageview\", {\r\n\t\t\tdetail: { framerLocale: framerLocale || null }\r\n\t\t}))\r\n\t})()\r\n}\r\n\r\n\r\n\t\t\t\tconst page = await pagePromise\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tFramer.withPerformanceMarks(\"framer-rewrite-breakpoints\", () => {\r\n\t\t\t\t\t\tFramer.removeHiddenBreakpointLayersV2(breakpoints)\r\n\t\t\t\t\t\twindow.__framer_onRewriteBreakpoints?.(breakpoints)\r\n\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tconst startTransition = isBot ? cb => cb() : React.startTransition\r\n\t\t\t\t\tstartTransition(() => {\r\n\t\t\t\t\t\tFramer.markHydrationStart()\r\n\t\t\t\t\t\tif (true) Framer.turnOffReactEventHandling()\r\n\t\t\t\t\t\tReactDOM.hydrateRoot(container, page, { onRecoverableError: handleError })\r\n\t\t\t\t\t})\r\n\t\t\t\t} else {\r\n\t\t\t\t\t\r\n\t\t\t\t\tReactDOM.createRoot(container, { onRecoverableError: handleError }).render(page)\r\n\t\t\t\t}\r\n\t\t\t} catch (error) {\r\n\t\t\t\thandleError(error, undefined, false)\r\n\t\t\t\tthrow error\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\r\n\r\n\t\t\r\n\t"],"mappings":"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"}