{"version":3,"file":"ParticlesWaves.DRLoCElR.mjs","names":["r","t","n","i","s","a","o","c","l","h","u","d","m","w","_","g","p","v","R","J","k","F","U","C","P","q","E","X","O","L","pe","fe","V","B","D","ue","l","w","i","n","t","o","c","s","d","p","y","h","ue","u","m","P","r","a","ae","R","ee","Z","j","H","z","te","$","ne","G","M","ie","A","T","de","re","se","ce","le","oe","N","o","a","i","r","t","h","c","o","m","p","u","n","t","a","r","b","l","i","s","m","S","d","b","g","l","v","c","t","x","E","r","i","s","n","u","_","C","L","B","T","p","C","n","c","o","s","a","t","p","h","h","f","n","d","l","t","o","p","u","e","useRef","el","THREE.WebGLRenderer","THREE.LinearSRGBColorSpace","THREE.NoToneMapping","THREE.Scene","THREE.PerspectiveCamera","m","c","h","to","s","t","THREE.Color","ca","w","cx","dx","r","g","a","THREE.DataTexture","THREE.RGBAFormat","THREE.NoColorSpace","THREE.ClampToEdgeWrapping","THREE.LinearFilter","THREE.CanvasTexture","THREE.LinearMipMapLinearFilter","ix","i","THREE.BufferGeometry","THREE.BufferAttribute","THREE.DynamicDrawUsage","p","d","fc","THREE.MeshBasicMaterial","THREE.NormalBlending","THREE.DoubleSide","THREE.Mesh","THREE.PointsMaterial","THREE.Points","THREE.AdditiveBlending","ai","bi","LineSegmentsGeometry","lc","LineMaterial","Line2","EffectComposer","RenderPass","ShaderPass","FXAAShader","THREE.Clock","pr","wx","sx","k","ro"],"sources":["https:/esm.sh/three@0.160.0/es2022/three.mjs","https:/esm.sh/three@0.160.0","https:/esm.sh/three@0.160.0/es2022/examples/jsm/lines/Line2.mjs","https:/esm.sh/three@0.160.0/examples/jsm/lines/Line2.js","https:/esm.sh/three@0.160.0/es2022/examples/jsm/lines/LineMaterial.mjs","https:/esm.sh/three@0.160.0/examples/jsm/lines/LineMaterial.js","https:/esm.sh/three@0.160.0/es2022/examples/jsm/lines/LineSegmentsGeometry.mjs","https:/esm.sh/three@0.160.0/examples/jsm/lines/LineSegmentsGeometry.js","https:/esm.sh/three@0.160.0/es2022/examples/jsm/postprocessing/EffectComposer.mjs","https:/esm.sh/three@0.160.0/examples/jsm/postprocessing/EffectComposer.js","https:/esm.sh/three@0.160.0/es2022/examples/jsm/postprocessing/RenderPass.mjs","https:/esm.sh/three@0.160.0/examples/jsm/postprocessing/RenderPass.js","https:/esm.sh/three@0.160.0/es2022/examples/jsm/postprocessing/ShaderPass.mjs","https:/esm.sh/three@0.160.0/examples/jsm/postprocessing/ShaderPass.js","https:/esm.sh/three@0.160.0/es2022/examples/jsm/shaders/FXAAShader.mjs","https:/esm.sh/three@0.160.0/examples/jsm/shaders/FXAAShader.js","https:/framerusercontent.com/modules/hKOvnpVGXx88zyJzbtz4/7ViXpqs1qwoJt8QgBSMH/ParticlesWaves.js"],"sourcesContent":["/* esm.sh - three@0.160.0 */\nvar _v=\"160\",xv={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2},vv={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},cf=0,Ml=1,lf=2,yv=3,Mv=0,Rd=1,hf=2,vn=3,Wn=0,He=1,Mn=2,Sv=2,zn=0,Ki=1,Sl=2,bl=3,El=4,uf=5,oi=100,df=101,ff=102,Al=103,Tl=104,pf=200,mf=201,gf=202,_f=203,wo=204,Ro=205,xf=206,vf=207,yf=208,Mf=209,Sf=210,bf=211,Ef=212,Af=213,Tf=214,wf=0,Rf=1,Cf=2,Gr=3,Pf=4,Lf=5,If=6,Uf=7,Pa=0,Df=1,Nf=2,Vn=0,Of=1,Ff=2,Bf=3,zf=4,Vf=5,kf=6,wl=\"attached\",Hf=\"detached\",rl=300,Xn=301,mi=302,Wr=303,Xr=304,Ys=306,qr=1e3,Fe=1001,Yr=1002,pe=1003,Co=1004,bv=1004,Hr=1005,Ev=1005,me=1006,Cd=1007,Av=1007,gi=1008,Tv=1008,kn=1009,Gf=1010,Wf=1011,al=1012,Pd=1013,Nn=1014,cn=1015,Is=1016,Ld=1017,Id=1018,ui=1020,Xf=1021,qe=1023,qf=1024,Yf=1025,di=1026,ts=1027,Zf=1028,Ud=1029,Jf=1030,Dd=1031,Nd=1033,Ba=33776,za=33777,Va=33778,ka=33779,Rl=35840,Cl=35841,Pl=35842,Ll=35843,Od=36196,Il=37492,Ul=37496,Dl=37808,Nl=37809,Ol=37810,Fl=37811,Bl=37812,zl=37813,Vl=37814,kl=37815,Hl=37816,Gl=37817,Wl=37818,Xl=37819,ql=37820,Yl=37821,Ha=36492,Zl=36494,Jl=36495,$f=36283,$l=36284,Kl=36285,Ql=36286,Kf=2200,Qf=2201,jf=2202,Zr=2300,Jr=2301,Ga=2302,Xi=2400,qi=2401,$r=2402,ol=2500,Fd=2501,wv=0,Rv=1,Cv=2,Bd=3e3,fi=3001,tp=3200,ep=3201,Si=0,np=1,$e=\"\",Se=\"srgb\",En=\"srgb-linear\",cl=\"display-p3\",La=\"display-p3-linear\",Kr=\"linear\",se=\"srgb\",Qr=\"rec709\",jr=\"p3\",Pv=0,bi=7680,Lv=7681,Iv=7682,Uv=7683,Dv=34055,Nv=34056,Ov=5386,Fv=512,Bv=513,zv=514,Vv=515,kv=516,Hv=517,Gv=518,jl=519,ip=512,sp=513,rp=514,zd=515,ap=516,op=517,cp=518,lp=519,ta=35044,Wv=35048,Xv=35040,qv=35045,Yv=35049,Zv=35041,Jv=35046,$v=35050,Kv=35042,Qv=\"100\",th=\"300 es\",Po=1035,ln=2e3,Us=2001,hn=class{addEventListener(t,e){this._listeners===void 0&&(this._listeners={});let n=this._listeners;n[t]===void 0&&(n[t]=[]),n[t].indexOf(e)===-1&&n[t].push(e)}hasEventListener(t,e){if(this._listeners===void 0)return!1;let n=this._listeners;return n[t]!==void 0&&n[t].indexOf(e)!==-1}removeEventListener(t,e){if(this._listeners===void 0)return;let i=this._listeners[t];if(i!==void 0){let s=i.indexOf(e);s!==-1&&i.splice(s,1)}}dispatchEvent(t){if(this._listeners===void 0)return;let n=this._listeners[t.type];if(n!==void 0){t.target=this;let i=n.slice(0);for(let s=0,a=i.length;s<a;s++)i[s].call(this,t);t.target=null}}},Re=[\"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\"],eh=1234567,pi=Math.PI/180,es=180/Math.PI;function Ye(){let r=Math.random()*4294967295|0,t=Math.random()*4294967295|0,e=Math.random()*4294967295|0,n=Math.random()*4294967295|0;return(Re[r&255]+Re[r>>8&255]+Re[r>>16&255]+Re[r>>24&255]+\"-\"+Re[t&255]+Re[t>>8&255]+\"-\"+Re[t>>16&15|64]+Re[t>>24&255]+\"-\"+Re[e&63|128]+Re[e>>8&255]+\"-\"+Re[e>>16&255]+Re[e>>24&255]+Re[n&255]+Re[n>>8&255]+Re[n>>16&255]+Re[n>>24&255]).toLowerCase()}function he(r,t,e){return Math.max(t,Math.min(e,r))}function ll(r,t){return(r%t+t)%t}function hp(r,t,e,n,i){return n+(r-t)*(i-n)/(e-t)}function up(r,t,e){return r!==t?(e-r)/(t-r):0}function ws(r,t,e){return(1-e)*r+e*t}function dp(r,t,e,n){return ws(r,t,1-Math.exp(-e*n))}function fp(r,t=1){return t-Math.abs(ll(r,t*2)-t)}function pp(r,t,e){return r<=t?0:r>=e?1:(r=(r-t)/(e-t),r*r*(3-2*r))}function mp(r,t,e){return r<=t?0:r>=e?1:(r=(r-t)/(e-t),r*r*r*(r*(r*6-15)+10))}function gp(r,t){return r+Math.floor(Math.random()*(t-r+1))}function _p(r,t){return r+Math.random()*(t-r)}function xp(r){return r*(.5-Math.random())}function vp(r){r!==void 0&&(eh=r);let t=eh+=1831565813;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}function yp(r){return r*pi}function Mp(r){return r*es}function Lo(r){return(r&r-1)===0&&r!==0}function Sp(r){return Math.pow(2,Math.ceil(Math.log(r)/Math.LN2))}function ea(r){return Math.pow(2,Math.floor(Math.log(r)/Math.LN2))}function bp(r,t,e,n,i){let s=Math.cos,a=Math.sin,o=s(e/2),c=a(e/2),l=s((t+n)/2),h=a((t+n)/2),u=s((t-n)/2),d=a((t-n)/2),f=s((n-t)/2),m=a((n-t)/2);switch(i){case\"XYX\":r.set(o*h,c*u,c*d,o*l);break;case\"YZY\":r.set(c*d,o*h,c*u,o*l);break;case\"ZXZ\":r.set(c*u,c*d,o*h,o*l);break;case\"XZX\":r.set(o*h,c*m,c*f,o*l);break;case\"YXY\":r.set(c*f,o*h,c*m,o*l);break;case\"ZYZ\":r.set(c*m,c*f,o*h,o*l);break;default:console.warn(\"THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: \"+i)}}function ke(r,t){switch(t.constructor){case Float32Array:return r;case Uint32Array:return r/4294967295;case Uint16Array:return r/65535;case Uint8Array:return r/255;case Int32Array:return Math.max(r/2147483647,-1);case Int16Array:return Math.max(r/32767,-1);case Int8Array:return Math.max(r/127,-1);default:throw new Error(\"Invalid component type.\")}}function zt(r,t){switch(t.constructor){case Float32Array:return r;case Uint32Array:return Math.round(r*4294967295);case Uint16Array:return Math.round(r*65535);case Uint8Array:return Math.round(r*255);case Int32Array:return Math.round(r*2147483647);case Int16Array:return Math.round(r*32767);case Int8Array:return Math.round(r*127);default:throw new Error(\"Invalid component type.\")}}var jv={DEG2RAD:pi,RAD2DEG:es,generateUUID:Ye,clamp:he,euclideanModulo:ll,mapLinear:hp,inverseLerp:up,lerp:ws,damp:dp,pingpong:fp,smoothstep:pp,smootherstep:mp,randInt:gp,randFloat:_p,randFloatSpread:xp,seededRandom:vp,degToRad:yp,radToDeg:Mp,isPowerOfTwo:Lo,ceilPowerOfTwo:Sp,floorPowerOfTwo:ea,setQuaternionFromProperEuler:bp,normalize:zt,denormalize:ke},Z=class r{constructor(t=0,e=0){r.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){let 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){let 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){let e=Math.sqrt(this.lengthSq()*t.lengthSq());if(e===0)return Math.PI/2;let n=this.dot(t)/e;return Math.acos(he(n,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){let 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){let n=Math.cos(e),i=Math.sin(e),s=this.x-t.x,a=this.y-t.y;return this.x=s*n-a*i+t.x,this.y=s*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}},Gt=class r{constructor(t,e,n,i,s,a,o,c,l){r.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],t!==void 0&&this.set(t,e,n,i,s,a,o,c,l)}set(t,e,n,i,s,a,o,c,l){let h=this.elements;return h[0]=t,h[1]=i,h[2]=o,h[3]=e,h[4]=s,h[5]=c,h[6]=n,h[7]=a,h[8]=l,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(t){let 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){let 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){let n=t.elements,i=e.elements,s=this.elements,a=n[0],o=n[3],c=n[6],l=n[1],h=n[4],u=n[7],d=n[2],f=n[5],m=n[8],_=i[0],g=i[3],p=i[6],v=i[1],x=i[4],y=i[7],C=i[2],T=i[5],R=i[8];return s[0]=a*_+o*v+c*C,s[3]=a*g+o*x+c*T,s[6]=a*p+o*y+c*R,s[1]=l*_+h*v+u*C,s[4]=l*g+h*x+u*T,s[7]=l*p+h*y+u*R,s[2]=d*_+f*v+m*C,s[5]=d*g+f*x+m*T,s[8]=d*p+f*y+m*R,this}multiplyScalar(t){let 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(){let t=this.elements,e=t[0],n=t[1],i=t[2],s=t[3],a=t[4],o=t[5],c=t[6],l=t[7],h=t[8];return e*a*h-e*o*l-n*s*h+n*o*c+i*s*l-i*a*c}invert(){let t=this.elements,e=t[0],n=t[1],i=t[2],s=t[3],a=t[4],o=t[5],c=t[6],l=t[7],h=t[8],u=h*a-o*l,d=o*c-h*s,f=l*s-a*c,m=e*u+n*d+i*f;if(m===0)return this.set(0,0,0,0,0,0,0,0,0);let _=1/m;return t[0]=u*_,t[1]=(i*l-h*n)*_,t[2]=(o*n-i*a)*_,t[3]=d*_,t[4]=(h*e-i*c)*_,t[5]=(i*s-o*e)*_,t[6]=f*_,t[7]=(n*c-l*e)*_,t[8]=(a*e-n*s)*_,this}transpose(){let t,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){let 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,s,a,o){let c=Math.cos(s),l=Math.sin(s);return this.set(n*c,n*l,-n*(c*a+l*o)+a+t,-i*l,i*c,-i*(-l*a+c*o)+o+e,0,0,1),this}scale(t,e){return this.premultiply(Wa.makeScale(t,e)),this}rotate(t){return this.premultiply(Wa.makeRotation(-t)),this}translate(t,e){return this.premultiply(Wa.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){let 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){let e=this.elements,n=t.elements;for(let i=0;i<9;i++)if(e[i]!==n[i])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){let 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)}},Wa=new Gt;function Vd(r){for(let t=r.length-1;t>=0;--t)if(r[t]>=65535)return!0;return!1}var Ep={Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array};function Yi(r,t){return new Ep[r](t)}function Ds(r){return document.createElementNS(\"http://www.w3.org/1999/xhtml\",r)}function Ap(){let r=Ds(\"canvas\");return r.style.display=\"block\",r}var nh={};function Rs(r){r in nh||(nh[r]=!0,console.warn(r))}var ih=new Gt().set(.8224621,.177538,0,.0331941,.9668058,0,.0170827,.0723974,.9105199),sh=new Gt().set(1.2249401,-.2249404,0,-.0420569,1.0420571,0,-.0196376,-.0786361,1.0982735),$s={[En]:{transfer:Kr,primaries:Qr,toReference:r=>r,fromReference:r=>r},[Se]:{transfer:se,primaries:Qr,toReference:r=>r.convertSRGBToLinear(),fromReference:r=>r.convertLinearToSRGB()},[La]:{transfer:Kr,primaries:jr,toReference:r=>r.applyMatrix3(sh),fromReference:r=>r.applyMatrix3(ih)},[cl]:{transfer:se,primaries:jr,toReference:r=>r.convertSRGBToLinear().applyMatrix3(sh),fromReference:r=>r.applyMatrix3(ih).convertLinearToSRGB()}},Tp=new Set([En,La]),jt={enabled:!0,_workingColorSpace:En,get workingColorSpace(){return this._workingColorSpace},set workingColorSpace(r){if(!Tp.has(r))throw new Error(`Unsupported working color space, \"${r}\".`);this._workingColorSpace=r},convert:function(r,t,e){if(this.enabled===!1||t===e||!t||!e)return r;let n=$s[t].toReference,i=$s[e].fromReference;return i(n(r))},fromWorkingColorSpace:function(r,t){return this.convert(r,this._workingColorSpace,t)},toWorkingColorSpace:function(r,t){return this.convert(r,t,this._workingColorSpace)},getPrimaries:function(r){return $s[r].primaries},getTransfer:function(r){return r===$e?Kr:$s[r].transfer}};function Qi(r){return r<.04045?r*.0773993808:Math.pow(r*.9478672986+.0521327014,2.4)}function Xa(r){return r<.0031308?r*12.92:1.055*Math.pow(r,.41666)-.055}var Ei,na=class{static getDataURL(t){if(/^data:/i.test(t.src)||typeof HTMLCanvasElement>\"u\")return t.src;let e;if(t instanceof HTMLCanvasElement)e=t;else{Ei===void 0&&(Ei=Ds(\"canvas\")),Ei.width=t.width,Ei.height=t.height;let n=Ei.getContext(\"2d\");t instanceof ImageData?n.putImageData(t,0,0):n.drawImage(t,0,0,t.width,t.height),e=Ei}return e.width>2048||e.height>2048?(console.warn(\"THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons\",t),e.toDataURL(\"image/jpeg\",.6)):e.toDataURL(\"image/png\")}static sRGBToLinear(t){if(typeof HTMLImageElement<\"u\"&&t instanceof HTMLImageElement||typeof HTMLCanvasElement<\"u\"&&t instanceof HTMLCanvasElement||typeof ImageBitmap<\"u\"&&t instanceof ImageBitmap){let e=Ds(\"canvas\");e.width=t.width,e.height=t.height;let n=e.getContext(\"2d\");n.drawImage(t,0,0,t.width,t.height);let i=n.getImageData(0,0,t.width,t.height),s=i.data;for(let a=0;a<s.length;a++)s[a]=Qi(s[a]/255)*255;return n.putImageData(i,0,0),e}else if(t.data){let e=t.data.slice(0);for(let n=0;n<e.length;n++)e instanceof Uint8Array||e instanceof Uint8ClampedArray?e[n]=Math.floor(Qi(e[n]/255)*255):e[n]=Qi(e[n]);return{data:e,width:t.width,height:t.height}}else return console.warn(\"THREE.ImageUtils.sRGBToLinear(): Unsupported image type. No color space conversion applied.\"),t}},wp=0,On=class{constructor(t=null){this.isSource=!0,Object.defineProperty(this,\"id\",{value:wp++}),this.uuid=Ye(),this.data=t,this.version=0}set needsUpdate(t){t===!0&&this.version++}toJSON(t){let e=t===void 0||typeof t==\"string\";if(!e&&t.images[this.uuid]!==void 0)return t.images[this.uuid];let n={uuid:this.uuid,url:\"\"},i=this.data;if(i!==null){let s;if(Array.isArray(i)){s=[];for(let a=0,o=i.length;a<o;a++)i[a].isDataTexture?s.push(qa(i[a].image)):s.push(qa(i[a]))}else s=qa(i);n.url=s}return e||(t.images[this.uuid]=n),n}};function qa(r){return typeof HTMLImageElement<\"u\"&&r instanceof HTMLImageElement||typeof HTMLCanvasElement<\"u\"&&r instanceof HTMLCanvasElement||typeof ImageBitmap<\"u\"&&r instanceof ImageBitmap?na.getDataURL(r):r.data?{data:Array.from(r.data),width:r.width,height:r.height,type:r.data.constructor.name}:(console.warn(\"THREE.Texture: Unable to serialize Texture.\"),{})}var Rp=0,Ee=class r extends hn{constructor(t=r.DEFAULT_IMAGE,e=r.DEFAULT_MAPPING,n=Fe,i=Fe,s=me,a=gi,o=qe,c=kn,l=r.DEFAULT_ANISOTROPY,h=$e){super(),this.isTexture=!0,Object.defineProperty(this,\"id\",{value:Rp++}),this.uuid=Ye(),this.name=\"\",this.source=new On(t),this.mipmaps=[],this.mapping=e,this.channel=0,this.wrapS=n,this.wrapT=i,this.magFilter=s,this.minFilter=a,this.anisotropy=l,this.format=o,this.internalFormat=null,this.type=c,this.offset=new Z(0,0),this.repeat=new Z(1,1),this.center=new Z(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new Gt,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,typeof h==\"string\"?this.colorSpace=h:(Rs(\"THREE.Texture: Property .encoding has been replaced by .colorSpace.\"),this.colorSpace=h===fi?Se:$e),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){let e=t===void 0||typeof t==\"string\";if(!e&&t.textures[this.uuid]!==void 0)return t.textures[this.uuid];let 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(this.mapping!==rl)return t;if(t.applyMatrix3(this.matrix),t.x<0||t.x>1)switch(this.wrapS){case qr:t.x=t.x-Math.floor(t.x);break;case Fe:t.x=t.x<0?0:1;break;case Yr:Math.abs(Math.floor(t.x)%2)===1?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x);break}if(t.y<0||t.y>1)switch(this.wrapT){case qr:t.y=t.y-Math.floor(t.y);break;case Fe:t.y=t.y<0?0:1;break;case Yr:Math.abs(Math.floor(t.y)%2)===1?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y);break}return this.flipY&&(t.y=1-t.y),t}set needsUpdate(t){t===!0&&(this.version++,this.source.needsUpdate=!0)}get encoding(){return Rs(\"THREE.Texture: Property .encoding has been replaced by .colorSpace.\"),this.colorSpace===Se?fi:Bd}set encoding(t){Rs(\"THREE.Texture: Property .encoding has been replaced by .colorSpace.\"),this.colorSpace=t===fi?Se:$e}};Ee.DEFAULT_IMAGE=null;Ee.DEFAULT_MAPPING=rl;Ee.DEFAULT_ANISOTROPY=1;var te=class r{constructor(t=0,e=0,n=0,i=1){r.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=t.w!==void 0?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){let e=this.x,n=this.y,i=this.z,s=this.w,a=t.elements;return this.x=a[0]*e+a[4]*n+a[8]*i+a[12]*s,this.y=a[1]*e+a[5]*n+a[9]*i+a[13]*s,this.z=a[2]*e+a[6]*n+a[10]*i+a[14]*s,this.w=a[3]*e+a[7]*n+a[11]*i+a[15]*s,this}divideScalar(t){return this.multiplyScalar(1/t)}setAxisAngleFromQuaternion(t){this.w=2*Math.acos(t.w);let 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,s,c=t.elements,l=c[0],h=c[4],u=c[8],d=c[1],f=c[5],m=c[9],_=c[2],g=c[6],p=c[10];if(Math.abs(h-d)<.01&&Math.abs(u-_)<.01&&Math.abs(m-g)<.01){if(Math.abs(h+d)<.1&&Math.abs(u+_)<.1&&Math.abs(m+g)<.1&&Math.abs(l+f+p-3)<.1)return this.set(1,0,0,0),this;e=Math.PI;let x=(l+1)/2,y=(f+1)/2,C=(p+1)/2,T=(h+d)/4,R=(u+_)/4,U=(m+g)/4;return x>y&&x>C?x<.01?(n=0,i=.707106781,s=.707106781):(n=Math.sqrt(x),i=T/n,s=R/n):y>C?y<.01?(n=.707106781,i=0,s=.707106781):(i=Math.sqrt(y),n=T/i,s=U/i):C<.01?(n=.707106781,i=.707106781,s=0):(s=Math.sqrt(C),n=R/s,i=U/s),this.set(n,i,s,e),this}let v=Math.sqrt((g-m)*(g-m)+(u-_)*(u-_)+(d-h)*(d-h));return Math.abs(v)<.001&&(v=1),this.x=(g-m)/v,this.y=(u-_)/v,this.z=(d-h)/v,this.w=Math.acos((l+f+p-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){let 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}},Io=class extends hn{constructor(t=1,e=1,n={}){super(),this.isRenderTarget=!0,this.width=t,this.height=e,this.depth=1,this.scissor=new te(0,0,t,e),this.scissorTest=!1,this.viewport=new te(0,0,t,e);let i={width:t,height:e,depth:1};n.encoding!==void 0&&(Rs(\"THREE.WebGLRenderTarget: option.encoding has been replaced by option.colorSpace.\"),n.colorSpace=n.encoding===fi?Se:$e),n=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:me,depthBuffer:!0,stencilBuffer:!1,depthTexture:null,samples:0},n),this.texture=new Ee(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;let e=Object.assign({},t.texture.image);return this.texture.source=new On(e),this.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,t.depthTexture!==null&&(this.depthTexture=t.depthTexture.clone()),this.samples=t.samples,this}dispose(){this.dispatchEvent({type:\"dispose\"})}},Ke=class extends Io{constructor(t=1,e=1,n={}){super(t,e,n),this.isWebGLRenderTarget=!0}},Ns=class extends Ee{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=pe,this.minFilter=pe,this.wrapR=Fe,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}},rh=class extends Ke{constructor(t=1,e=1,n=1,i={}){super(t,e,i),this.isWebGLArrayRenderTarget=!0,this.depth=n,this.texture=new Ns(null,t,e,n),this.texture.isRenderTargetTexture=!0}},ia=class extends Ee{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=pe,this.minFilter=pe,this.wrapR=Fe,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}},ah=class extends Ke{constructor(t=1,e=1,n=1,i={}){super(t,e,i),this.isWebGL3DRenderTarget=!0,this.depth=n,this.texture=new ia(null,t,e,n),this.texture.isRenderTargetTexture=!0}},oh=class extends Ke{constructor(t=1,e=1,n=1,i={}){super(t,e,i),this.isWebGLMultipleRenderTargets=!0;let s=this.texture;this.texture=[];for(let a=0;a<n;a++)this.texture[a]=s.clone(),this.texture[a].isRenderTargetTexture=!0}setSize(t,e,n=1){if(this.width!==t||this.height!==e||this.depth!==n){this.width=t,this.height=e,this.depth=n;for(let i=0,s=this.texture.length;i<s;i++)this.texture[i].image.width=t,this.texture[i].image.height=e,this.texture[i].image.depth=n;this.dispose()}this.viewport.set(0,0,t,e),this.scissor.set(0,0,t,e)}copy(t){this.dispose(),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.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,t.depthTexture!==null&&(this.depthTexture=t.depthTexture.clone()),this.texture.length=0;for(let e=0,n=t.texture.length;e<n;e++)this.texture[e]=t.texture[e].clone(),this.texture[e].isRenderTargetTexture=!0;return this}},Be=class{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,s,a,o){let c=n[i+0],l=n[i+1],h=n[i+2],u=n[i+3],d=s[a+0],f=s[a+1],m=s[a+2],_=s[a+3];if(o===0){t[e+0]=c,t[e+1]=l,t[e+2]=h,t[e+3]=u;return}if(o===1){t[e+0]=d,t[e+1]=f,t[e+2]=m,t[e+3]=_;return}if(u!==_||c!==d||l!==f||h!==m){let g=1-o,p=c*d+l*f+h*m+u*_,v=p>=0?1:-1,x=1-p*p;if(x>Number.EPSILON){let C=Math.sqrt(x),T=Math.atan2(C,p*v);g=Math.sin(g*T)/C,o=Math.sin(o*T)/C}let y=o*v;if(c=c*g+d*y,l=l*g+f*y,h=h*g+m*y,u=u*g+_*y,g===1-o){let C=1/Math.sqrt(c*c+l*l+h*h+u*u);c*=C,l*=C,h*=C,u*=C}}t[e]=c,t[e+1]=l,t[e+2]=h,t[e+3]=u}static multiplyQuaternionsFlat(t,e,n,i,s,a){let o=n[i],c=n[i+1],l=n[i+2],h=n[i+3],u=s[a],d=s[a+1],f=s[a+2],m=s[a+3];return t[e]=o*m+h*u+c*f-l*d,t[e+1]=c*m+h*d+l*u-o*f,t[e+2]=l*m+h*f+o*d-c*u,t[e+3]=h*m-o*u-c*d-l*f,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){let n=t._x,i=t._y,s=t._z,a=t._order,o=Math.cos,c=Math.sin,l=o(n/2),h=o(i/2),u=o(s/2),d=c(n/2),f=c(i/2),m=c(s/2);switch(a){case\"XYZ\":this._x=d*h*u+l*f*m,this._y=l*f*u-d*h*m,this._z=l*h*m+d*f*u,this._w=l*h*u-d*f*m;break;case\"YXZ\":this._x=d*h*u+l*f*m,this._y=l*f*u-d*h*m,this._z=l*h*m-d*f*u,this._w=l*h*u+d*f*m;break;case\"ZXY\":this._x=d*h*u-l*f*m,this._y=l*f*u+d*h*m,this._z=l*h*m+d*f*u,this._w=l*h*u-d*f*m;break;case\"ZYX\":this._x=d*h*u-l*f*m,this._y=l*f*u+d*h*m,this._z=l*h*m-d*f*u,this._w=l*h*u+d*f*m;break;case\"YZX\":this._x=d*h*u+l*f*m,this._y=l*f*u+d*h*m,this._z=l*h*m-d*f*u,this._w=l*h*u-d*f*m;break;case\"XZY\":this._x=d*h*u-l*f*m,this._y=l*f*u-d*h*m,this._z=l*h*m+d*f*u,this._w=l*h*u+d*f*m;break;default:console.warn(\"THREE.Quaternion: .setFromEuler() encountered an unknown order: \"+a)}return e===!0&&this._onChangeCallback(),this}setFromAxisAngle(t,e){let 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){let e=t.elements,n=e[0],i=e[4],s=e[8],a=e[1],o=e[5],c=e[9],l=e[2],h=e[6],u=e[10],d=n+o+u;if(d>0){let f=.5/Math.sqrt(d+1);this._w=.25/f,this._x=(h-c)*f,this._y=(s-l)*f,this._z=(a-i)*f}else if(n>o&&n>u){let f=2*Math.sqrt(1+n-o-u);this._w=(h-c)/f,this._x=.25*f,this._y=(i+a)/f,this._z=(s+l)/f}else if(o>u){let f=2*Math.sqrt(1+o-n-u);this._w=(s-l)/f,this._x=(i+a)/f,this._y=.25*f,this._z=(c+h)/f}else{let f=2*Math.sqrt(1+u-n-o);this._w=(a-i)/f,this._x=(s+l)/f,this._y=(c+h)/f,this._z=.25*f}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(he(this.dot(t),-1,1)))}rotateTowards(t,e){let n=this.angleTo(t);if(n===0)return this;let 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 t===0?(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){let n=t._x,i=t._y,s=t._z,a=t._w,o=e._x,c=e._y,l=e._z,h=e._w;return this._x=n*h+a*o+i*l-s*c,this._y=i*h+a*c+s*o-n*l,this._z=s*h+a*l+n*c-i*o,this._w=a*h-n*o-i*c-s*l,this._onChangeCallback(),this}slerp(t,e){if(e===0)return this;if(e===1)return this.copy(t);let n=this._x,i=this._y,s=this._z,a=this._w,o=a*t._w+n*t._x+i*t._y+s*t._z;if(o<0?(this._w=-t._w,this._x=-t._x,this._y=-t._y,this._z=-t._z,o=-o):this.copy(t),o>=1)return this._w=a,this._x=n,this._y=i,this._z=s,this;let c=1-o*o;if(c<=Number.EPSILON){let f=1-e;return this._w=f*a+e*this._w,this._x=f*n+e*this._x,this._y=f*i+e*this._y,this._z=f*s+e*this._z,this.normalize(),this}let l=Math.sqrt(c),h=Math.atan2(l,o),u=Math.sin((1-e)*h)/l,d=Math.sin(e*h)/l;return this._w=a*u+this._w*d,this._x=n*u+this._x*d,this._y=i*u+this._y*d,this._z=s*u+this._z*d,this._onChangeCallback(),this}slerpQuaternions(t,e,n){return this.copy(t).slerp(e,n)}random(){let t=Math.random(),e=Math.sqrt(1-t),n=Math.sqrt(t),i=2*Math.PI*Math.random(),s=2*Math.PI*Math.random();return this.set(e*Math.cos(i),n*Math.sin(s),n*Math.cos(s),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}},w=class r{constructor(t=0,e=0,n=0){r.prototype.isVector3=!0,this.x=t,this.y=e,this.z=n}set(t,e,n){return n===void 0&&(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(ch.setFromEuler(t))}applyAxisAngle(t,e){return this.applyQuaternion(ch.setFromAxisAngle(t,e))}applyMatrix3(t){let e=this.x,n=this.y,i=this.z,s=t.elements;return this.x=s[0]*e+s[3]*n+s[6]*i,this.y=s[1]*e+s[4]*n+s[7]*i,this.z=s[2]*e+s[5]*n+s[8]*i,this}applyNormalMatrix(t){return this.applyMatrix3(t).normalize()}applyMatrix4(t){let e=this.x,n=this.y,i=this.z,s=t.elements,a=1/(s[3]*e+s[7]*n+s[11]*i+s[15]);return this.x=(s[0]*e+s[4]*n+s[8]*i+s[12])*a,this.y=(s[1]*e+s[5]*n+s[9]*i+s[13])*a,this.z=(s[2]*e+s[6]*n+s[10]*i+s[14])*a,this}applyQuaternion(t){let e=this.x,n=this.y,i=this.z,s=t.x,a=t.y,o=t.z,c=t.w,l=2*(a*i-o*n),h=2*(o*e-s*i),u=2*(s*n-a*e);return this.x=e+c*l+a*u-o*h,this.y=n+c*h+o*l-s*u,this.z=i+c*u+s*h-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){let e=this.x,n=this.y,i=this.z,s=t.elements;return this.x=s[0]*e+s[4]*n+s[8]*i,this.y=s[1]*e+s[5]*n+s[9]*i,this.z=s[2]*e+s[6]*n+s[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){let 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){let n=t.x,i=t.y,s=t.z,a=e.x,o=e.y,c=e.z;return this.x=i*c-s*o,this.y=s*a-n*c,this.z=n*o-i*a,this}projectOnVector(t){let e=t.lengthSq();if(e===0)return this.set(0,0,0);let n=t.dot(this)/e;return this.copy(t).multiplyScalar(n)}projectOnPlane(t){return Ya.copy(this).projectOnVector(t),this.sub(Ya)}reflect(t){return this.sub(Ya.copy(t).multiplyScalar(2*this.dot(t)))}angleTo(t){let e=Math.sqrt(this.lengthSq()*t.lengthSq());if(e===0)return Math.PI/2;let n=this.dot(t)/e;return Math.acos(he(n,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){let 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){let 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){let e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this}setFromMatrixScale(t){let 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,e*4)}setFromMatrix3Column(t,e){return this.fromArray(t.elements,e*3)}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(){let t=(Math.random()-.5)*2,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}},Ya=new w,ch=new Be,Le=class{constructor(t=new w(1/0,1/0,1/0),e=new w(-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(tn.fromArray(t,e));return this}setFromBufferAttribute(t){this.makeEmpty();for(let e=0,n=t.count;e<n;e++)this.expandByPoint(tn.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){let n=tn.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);let n=t.geometry;if(n!==void 0){let s=n.getAttribute(\"position\");if(e===!0&&s!==void 0&&t.isInstancedMesh!==!0)for(let a=0,o=s.count;a<o;a++)t.isMesh===!0?t.getVertexPosition(a,tn):tn.fromBufferAttribute(s,a),tn.applyMatrix4(t.matrixWorld),this.expandByPoint(tn);else t.boundingBox!==void 0?(t.boundingBox===null&&t.computeBoundingBox(),Ks.copy(t.boundingBox)):(n.boundingBox===null&&n.computeBoundingBox(),Ks.copy(n.boundingBox)),Ks.applyMatrix4(t.matrixWorld),this.union(Ks)}let i=t.children;for(let s=0,a=i.length;s<a;s++)this.expandByObject(i[s],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,tn),tn.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(ms),Qs.subVectors(this.max,ms),Ai.subVectors(t.a,ms),Ti.subVectors(t.b,ms),wi.subVectors(t.c,ms),Rn.subVectors(Ti,Ai),Cn.subVectors(wi,Ti),$n.subVectors(Ai,wi);let e=[0,-Rn.z,Rn.y,0,-Cn.z,Cn.y,0,-$n.z,$n.y,Rn.z,0,-Rn.x,Cn.z,0,-Cn.x,$n.z,0,-$n.x,-Rn.y,Rn.x,0,-Cn.y,Cn.x,0,-$n.y,$n.x,0];return!Za(e,Ai,Ti,wi,Qs)||(e=[1,0,0,0,1,0,0,0,1],!Za(e,Ai,Ti,wi,Qs))?!1:(js.crossVectors(Rn,Cn),e=[js.x,js.y,js.z],Za(e,Ai,Ti,wi,Qs))}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return this.clampPoint(t,tn).distanceTo(t)}getBoundingSphere(t){return this.isEmpty()?t.makeEmpty():(this.getCenter(t.center),t.radius=this.getSize(tn).length()*.5),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()?this:(fn[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),fn[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),fn[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),fn[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),fn[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),fn[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),fn[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),fn[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(fn),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)}},fn=[new w,new w,new w,new w,new w,new w,new w,new w],tn=new w,Ks=new Le,Ai=new w,Ti=new w,wi=new w,Rn=new w,Cn=new w,$n=new w,ms=new w,Qs=new w,js=new w,Kn=new w;function Za(r,t,e,n,i){for(let s=0,a=r.length-3;s<=a;s+=3){Kn.fromArray(r,s);let o=i.x*Math.abs(Kn.x)+i.y*Math.abs(Kn.y)+i.z*Math.abs(Kn.z),c=t.dot(Kn),l=e.dot(Kn),h=n.dot(Kn);if(Math.max(-Math.max(c,l,h),Math.min(c,l,h))>o)return!1}return!0}var Cp=new Le,gs=new w,Ja=new w,Ae=class{constructor(t=new w,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){let n=this.center;e!==void 0?n.copy(e):Cp.setFromPoints(t).getCenter(n);let i=0;for(let s=0,a=t.length;s<a;s++)i=Math.max(i,n.distanceToSquared(t[s]));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){let 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){let 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;gs.subVectors(t,this.center);let e=gs.lengthSq();if(e>this.radius*this.radius){let n=Math.sqrt(e),i=(n-this.radius)*.5;this.center.addScaledVector(gs,i/n),this.radius+=i}return this}union(t){return t.isEmpty()?this:this.isEmpty()?(this.copy(t),this):(this.center.equals(t.center)===!0?this.radius=Math.max(this.radius,t.radius):(Ja.subVectors(t.center,this.center).setLength(t.radius),this.expandByPoint(gs.copy(t.center).add(Ja)),this.expandByPoint(gs.copy(t.center).sub(Ja))),this)}equals(t){return t.center.equals(this.center)&&t.radius===this.radius}clone(){return new this.constructor().copy(this)}},pn=new w,$a=new w,tr=new w,Pn=new w,Ka=new w,er=new w,Qa=new w,_i=class{constructor(t=new w,e=new w(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,pn)),this}closestPointToPoint(t,e){e.subVectors(t,this.origin);let 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){let e=pn.subVectors(t,this.origin).dot(this.direction);return e<0?this.origin.distanceToSquared(t):(pn.copy(this.origin).addScaledVector(this.direction,e),pn.distanceToSquared(t))}distanceSqToSegment(t,e,n,i){$a.copy(t).add(e).multiplyScalar(.5),tr.copy(e).sub(t).normalize(),Pn.copy(this.origin).sub($a);let s=t.distanceTo(e)*.5,a=-this.direction.dot(tr),o=Pn.dot(this.direction),c=-Pn.dot(tr),l=Pn.lengthSq(),h=Math.abs(1-a*a),u,d,f,m;if(h>0)if(u=a*c-o,d=a*o-c,m=s*h,u>=0)if(d>=-m)if(d<=m){let _=1/h;u*=_,d*=_,f=u*(u+a*d+2*o)+d*(a*u+d+2*c)+l}else d=s,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*c)+l;else d=-s,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*c)+l;else d<=-m?(u=Math.max(0,-(-a*s+o)),d=u>0?-s:Math.min(Math.max(-s,-c),s),f=-u*u+d*(d+2*c)+l):d<=m?(u=0,d=Math.min(Math.max(-s,-c),s),f=d*(d+2*c)+l):(u=Math.max(0,-(a*s+o)),d=u>0?s:Math.min(Math.max(-s,-c),s),f=-u*u+d*(d+2*c)+l);else d=a>0?-s:s,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*c)+l;return n&&n.copy(this.origin).addScaledVector(this.direction,u),i&&i.copy($a).addScaledVector(tr,d),f}intersectSphere(t,e){pn.subVectors(t.center,this.origin);let n=pn.dot(this.direction),i=pn.dot(pn)-n*n,s=t.radius*t.radius;if(i>s)return null;let a=Math.sqrt(s-i),o=n-a,c=n+a;return c<0?null:o<0?this.at(c,e):this.at(o,e)}intersectsSphere(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius}distanceToPlane(t){let e=t.normal.dot(this.direction);if(e===0)return t.distanceToPoint(this.origin)===0?0:null;let n=-(this.origin.dot(t.normal)+t.constant)/e;return n>=0?n:null}intersectPlane(t,e){let n=this.distanceToPlane(t);return n===null?null:this.at(n,e)}intersectsPlane(t){let e=t.distanceToPoint(this.origin);return e===0||t.normal.dot(this.direction)*e<0}intersectBox(t,e){let n,i,s,a,o,c,l=1/this.direction.x,h=1/this.direction.y,u=1/this.direction.z,d=this.origin;return l>=0?(n=(t.min.x-d.x)*l,i=(t.max.x-d.x)*l):(n=(t.max.x-d.x)*l,i=(t.min.x-d.x)*l),h>=0?(s=(t.min.y-d.y)*h,a=(t.max.y-d.y)*h):(s=(t.max.y-d.y)*h,a=(t.min.y-d.y)*h),n>a||s>i||((s>n||isNaN(n))&&(n=s),(a<i||isNaN(i))&&(i=a),u>=0?(o=(t.min.z-d.z)*u,c=(t.max.z-d.z)*u):(o=(t.max.z-d.z)*u,c=(t.min.z-d.z)*u),n>c||o>i)||((o>n||n!==n)&&(n=o),(c<i||i!==i)&&(i=c),i<0)?null:this.at(n>=0?n:i,e)}intersectsBox(t){return this.intersectBox(t,pn)!==null}intersectTriangle(t,e,n,i,s){Ka.subVectors(e,t),er.subVectors(n,t),Qa.crossVectors(Ka,er);let a=this.direction.dot(Qa),o;if(a>0){if(i)return null;o=1}else if(a<0)o=-1,a=-a;else return null;Pn.subVectors(this.origin,t);let c=o*this.direction.dot(er.crossVectors(Pn,er));if(c<0)return null;let l=o*this.direction.dot(Ka.cross(Pn));if(l<0||c+l>a)return null;let h=-o*Pn.dot(Qa);return h<0?null:this.at(h/a,s)}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)}},It=class r{constructor(t,e,n,i,s,a,o,c,l,h,u,d,f,m,_,g){r.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],t!==void 0&&this.set(t,e,n,i,s,a,o,c,l,h,u,d,f,m,_,g)}set(t,e,n,i,s,a,o,c,l,h,u,d,f,m,_,g){let p=this.elements;return p[0]=t,p[4]=e,p[8]=n,p[12]=i,p[1]=s,p[5]=a,p[9]=o,p[13]=c,p[2]=l,p[6]=h,p[10]=u,p[14]=d,p[3]=f,p[7]=m,p[11]=_,p[15]=g,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 r().fromArray(this.elements)}copy(t){let 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){let e=this.elements,n=t.elements;return e[12]=n[12],e[13]=n[13],e[14]=n[14],this}setFromMatrix3(t){let 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){let e=this.elements,n=t.elements,i=1/Ri.setFromMatrixColumn(t,0).length(),s=1/Ri.setFromMatrixColumn(t,1).length(),a=1/Ri.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]*s,e[5]=n[5]*s,e[6]=n[6]*s,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){let e=this.elements,n=t.x,i=t.y,s=t.z,a=Math.cos(n),o=Math.sin(n),c=Math.cos(i),l=Math.sin(i),h=Math.cos(s),u=Math.sin(s);if(t.order===\"XYZ\"){let d=a*h,f=a*u,m=o*h,_=o*u;e[0]=c*h,e[4]=-c*u,e[8]=l,e[1]=f+m*l,e[5]=d-_*l,e[9]=-o*c,e[2]=_-d*l,e[6]=m+f*l,e[10]=a*c}else if(t.order===\"YXZ\"){let d=c*h,f=c*u,m=l*h,_=l*u;e[0]=d+_*o,e[4]=m*o-f,e[8]=a*l,e[1]=a*u,e[5]=a*h,e[9]=-o,e[2]=f*o-m,e[6]=_+d*o,e[10]=a*c}else if(t.order===\"ZXY\"){let d=c*h,f=c*u,m=l*h,_=l*u;e[0]=d-_*o,e[4]=-a*u,e[8]=m+f*o,e[1]=f+m*o,e[5]=a*h,e[9]=_-d*o,e[2]=-a*l,e[6]=o,e[10]=a*c}else if(t.order===\"ZYX\"){let d=a*h,f=a*u,m=o*h,_=o*u;e[0]=c*h,e[4]=m*l-f,e[8]=d*l+_,e[1]=c*u,e[5]=_*l+d,e[9]=f*l-m,e[2]=-l,e[6]=o*c,e[10]=a*c}else if(t.order===\"YZX\"){let d=a*c,f=a*l,m=o*c,_=o*l;e[0]=c*h,e[4]=_-d*u,e[8]=m*u+f,e[1]=u,e[5]=a*h,e[9]=-o*h,e[2]=-l*h,e[6]=f*u+m,e[10]=d-_*u}else if(t.order===\"XZY\"){let d=a*c,f=a*l,m=o*c,_=o*l;e[0]=c*h,e[4]=-u,e[8]=l*h,e[1]=d*u+_,e[5]=a*h,e[9]=f*u-m,e[2]=m*u-f,e[6]=o*h,e[10]=_*u+d}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(Pp,t,Lp)}lookAt(t,e,n){let i=this.elements;return We.subVectors(t,e),We.lengthSq()===0&&(We.z=1),We.normalize(),Ln.crossVectors(n,We),Ln.lengthSq()===0&&(Math.abs(n.z)===1?We.x+=1e-4:We.z+=1e-4,We.normalize(),Ln.crossVectors(n,We)),Ln.normalize(),nr.crossVectors(We,Ln),i[0]=Ln.x,i[4]=nr.x,i[8]=We.x,i[1]=Ln.y,i[5]=nr.y,i[9]=We.y,i[2]=Ln.z,i[6]=nr.z,i[10]=We.z,this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){let n=t.elements,i=e.elements,s=this.elements,a=n[0],o=n[4],c=n[8],l=n[12],h=n[1],u=n[5],d=n[9],f=n[13],m=n[2],_=n[6],g=n[10],p=n[14],v=n[3],x=n[7],y=n[11],C=n[15],T=i[0],R=i[4],U=i[8],S=i[12],E=i[1],N=i[5],G=i[9],it=i[13],I=i[2],F=i[6],k=i[10],J=i[14],Y=i[3],W=i[7],tt=i[11],et=i[15];return s[0]=a*T+o*E+c*I+l*Y,s[4]=a*R+o*N+c*F+l*W,s[8]=a*U+o*G+c*k+l*tt,s[12]=a*S+o*it+c*J+l*et,s[1]=h*T+u*E+d*I+f*Y,s[5]=h*R+u*N+d*F+f*W,s[9]=h*U+u*G+d*k+f*tt,s[13]=h*S+u*it+d*J+f*et,s[2]=m*T+_*E+g*I+p*Y,s[6]=m*R+_*N+g*F+p*W,s[10]=m*U+_*G+g*k+p*tt,s[14]=m*S+_*it+g*J+p*et,s[3]=v*T+x*E+y*I+C*Y,s[7]=v*R+x*N+y*F+C*W,s[11]=v*U+x*G+y*k+C*tt,s[15]=v*S+x*it+y*J+C*et,this}multiplyScalar(t){let 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(){let t=this.elements,e=t[0],n=t[4],i=t[8],s=t[12],a=t[1],o=t[5],c=t[9],l=t[13],h=t[2],u=t[6],d=t[10],f=t[14],m=t[3],_=t[7],g=t[11],p=t[15];return m*(+s*c*u-i*l*u-s*o*d+n*l*d+i*o*f-n*c*f)+_*(+e*c*f-e*l*d+s*a*d-i*a*f+i*l*h-s*c*h)+g*(+e*l*u-e*o*f-s*a*u+n*a*f+s*o*h-n*l*h)+p*(-i*o*h-e*c*u+e*o*d+i*a*u-n*a*d+n*c*h)}transpose(){let t=this.elements,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){let 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(){let t=this.elements,e=t[0],n=t[1],i=t[2],s=t[3],a=t[4],o=t[5],c=t[6],l=t[7],h=t[8],u=t[9],d=t[10],f=t[11],m=t[12],_=t[13],g=t[14],p=t[15],v=u*g*l-_*d*l+_*c*f-o*g*f-u*c*p+o*d*p,x=m*d*l-h*g*l-m*c*f+a*g*f+h*c*p-a*d*p,y=h*_*l-m*u*l+m*o*f-a*_*f-h*o*p+a*u*p,C=m*u*c-h*_*c-m*o*d+a*_*d+h*o*g-a*u*g,T=e*v+n*x+i*y+s*C;if(T===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);let R=1/T;return t[0]=v*R,t[1]=(_*d*s-u*g*s-_*i*f+n*g*f+u*i*p-n*d*p)*R,t[2]=(o*g*s-_*c*s+_*i*l-n*g*l-o*i*p+n*c*p)*R,t[3]=(u*c*s-o*d*s-u*i*l+n*d*l+o*i*f-n*c*f)*R,t[4]=x*R,t[5]=(h*g*s-m*d*s+m*i*f-e*g*f-h*i*p+e*d*p)*R,t[6]=(m*c*s-a*g*s-m*i*l+e*g*l+a*i*p-e*c*p)*R,t[7]=(a*d*s-h*c*s+h*i*l-e*d*l-a*i*f+e*c*f)*R,t[8]=y*R,t[9]=(m*u*s-h*_*s-m*n*f+e*_*f+h*n*p-e*u*p)*R,t[10]=(a*_*s-m*o*s+m*n*l-e*_*l-a*n*p+e*o*p)*R,t[11]=(h*o*s-a*u*s-h*n*l+e*u*l+a*n*f-e*o*f)*R,t[12]=C*R,t[13]=(h*_*i-m*u*i+m*n*d-e*_*d-h*n*g+e*u*g)*R,t[14]=(m*o*i-a*_*i-m*n*c+e*_*c+a*n*g-e*o*g)*R,t[15]=(a*u*i-h*o*i+h*n*c-e*u*c-a*n*d+e*o*d)*R,this}scale(t){let e=this.elements,n=t.x,i=t.y,s=t.z;return e[0]*=n,e[4]*=i,e[8]*=s,e[1]*=n,e[5]*=i,e[9]*=s,e[2]*=n,e[6]*=i,e[10]*=s,e[3]*=n,e[7]*=i,e[11]*=s,this}getMaxScaleOnAxis(){let 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){let 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){let 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){let 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){let n=Math.cos(e),i=Math.sin(e),s=1-n,a=t.x,o=t.y,c=t.z,l=s*a,h=s*o;return this.set(l*a+n,l*o-i*c,l*c+i*o,0,l*o+i*c,h*o+n,h*c-i*a,0,l*c-i*o,h*c+i*a,s*c*c+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,s,a){return this.set(1,n,s,0,t,1,a,0,e,i,1,0,0,0,0,1),this}compose(t,e,n){let i=this.elements,s=e._x,a=e._y,o=e._z,c=e._w,l=s+s,h=a+a,u=o+o,d=s*l,f=s*h,m=s*u,_=a*h,g=a*u,p=o*u,v=c*l,x=c*h,y=c*u,C=n.x,T=n.y,R=n.z;return i[0]=(1-(_+p))*C,i[1]=(f+y)*C,i[2]=(m-x)*C,i[3]=0,i[4]=(f-y)*T,i[5]=(1-(d+p))*T,i[6]=(g+v)*T,i[7]=0,i[8]=(m+x)*R,i[9]=(g-v)*R,i[10]=(1-(d+_))*R,i[11]=0,i[12]=t.x,i[13]=t.y,i[14]=t.z,i[15]=1,this}decompose(t,e,n){let i=this.elements,s=Ri.set(i[0],i[1],i[2]).length(),a=Ri.set(i[4],i[5],i[6]).length(),o=Ri.set(i[8],i[9],i[10]).length();this.determinant()<0&&(s=-s),t.x=i[12],t.y=i[13],t.z=i[14],en.copy(this);let l=1/s,h=1/a,u=1/o;return en.elements[0]*=l,en.elements[1]*=l,en.elements[2]*=l,en.elements[4]*=h,en.elements[5]*=h,en.elements[6]*=h,en.elements[8]*=u,en.elements[9]*=u,en.elements[10]*=u,e.setFromRotationMatrix(en),n.x=s,n.y=a,n.z=o,this}makePerspective(t,e,n,i,s,a,o=ln){let c=this.elements,l=2*s/(e-t),h=2*s/(n-i),u=(e+t)/(e-t),d=(n+i)/(n-i),f,m;if(o===ln)f=-(a+s)/(a-s),m=-2*a*s/(a-s);else if(o===Us)f=-a/(a-s),m=-a*s/(a-s);else throw new Error(\"THREE.Matrix4.makePerspective(): Invalid coordinate system: \"+o);return c[0]=l,c[4]=0,c[8]=u,c[12]=0,c[1]=0,c[5]=h,c[9]=d,c[13]=0,c[2]=0,c[6]=0,c[10]=f,c[14]=m,c[3]=0,c[7]=0,c[11]=-1,c[15]=0,this}makeOrthographic(t,e,n,i,s,a,o=ln){let c=this.elements,l=1/(e-t),h=1/(n-i),u=1/(a-s),d=(e+t)*l,f=(n+i)*h,m,_;if(o===ln)m=(a+s)*u,_=-2*u;else if(o===Us)m=s*u,_=-1*u;else throw new Error(\"THREE.Matrix4.makeOrthographic(): Invalid coordinate system: \"+o);return c[0]=2*l,c[4]=0,c[8]=0,c[12]=-d,c[1]=0,c[5]=2*h,c[9]=0,c[13]=-f,c[2]=0,c[6]=0,c[10]=_,c[14]=-m,c[3]=0,c[7]=0,c[11]=0,c[15]=1,this}equals(t){let e=this.elements,n=t.elements;for(let i=0;i<16;i++)if(e[i]!==n[i])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){let 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}},Ri=new w,en=new It,Pp=new w(0,0,0),Lp=new w(1,1,1),Ln=new w,nr=new w,We=new w,lh=new It,hh=new Be,sa=class r{constructor(t=0,e=0,n=0,i=r.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){let i=t.elements,s=i[0],a=i[4],o=i[8],c=i[1],l=i[5],h=i[9],u=i[2],d=i[6],f=i[10];switch(e){case\"XYZ\":this._y=Math.asin(he(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(-h,f),this._z=Math.atan2(-a,s)):(this._x=Math.atan2(d,l),this._z=0);break;case\"YXZ\":this._x=Math.asin(-he(h,-1,1)),Math.abs(h)<.9999999?(this._y=Math.atan2(o,f),this._z=Math.atan2(c,l)):(this._y=Math.atan2(-u,s),this._z=0);break;case\"ZXY\":this._x=Math.asin(he(d,-1,1)),Math.abs(d)<.9999999?(this._y=Math.atan2(-u,f),this._z=Math.atan2(-a,l)):(this._y=0,this._z=Math.atan2(c,s));break;case\"ZYX\":this._y=Math.asin(-he(u,-1,1)),Math.abs(u)<.9999999?(this._x=Math.atan2(d,f),this._z=Math.atan2(c,s)):(this._x=0,this._z=Math.atan2(-a,l));break;case\"YZX\":this._z=Math.asin(he(c,-1,1)),Math.abs(c)<.9999999?(this._x=Math.atan2(-h,l),this._y=Math.atan2(-u,s)):(this._x=0,this._y=Math.atan2(o,f));break;case\"XZY\":this._z=Math.asin(-he(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(d,l),this._y=Math.atan2(o,s)):(this._x=Math.atan2(-h,f),this._y=0);break;default:console.warn(\"THREE.Euler: .setFromRotationMatrix() encountered an unknown order: \"+e)}return this._order=e,n===!0&&this._onChangeCallback(),this}setFromQuaternion(t,e,n){return lh.makeRotationFromQuaternion(t),this.setFromRotationMatrix(lh,e,n)}setFromVector3(t,e=this._order){return this.set(t.x,t.y,t.z,e)}reorder(t){return hh.setFromEuler(this),this.setFromQuaternion(hh,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],t[3]!==void 0&&(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}};sa.DEFAULT_ORDER=\"XYZ\";var Os=class{constructor(){this.mask=1}set(t){this.mask=(1<<t|0)>>>0}enable(t){this.mask|=1<<t|0}enableAll(){this.mask=-1}toggle(t){this.mask^=1<<t|0}disable(t){this.mask&=~(1<<t|0)}disableAll(){this.mask=0}test(t){return(this.mask&t.mask)!==0}isEnabled(t){return(this.mask&(1<<t|0))!==0}},Ip=0,uh=new w,Ci=new Be,mn=new It,ir=new w,_s=new w,Up=new w,Dp=new Be,dh=new w(1,0,0),fh=new w(0,1,0),ph=new w(0,0,1),Np={type:\"added\"},Op={type:\"removed\"},Kt=class r extends hn{constructor(){super(),this.isObject3D=!0,Object.defineProperty(this,\"id\",{value:Ip++}),this.uuid=Ye(),this.name=\"\",this.type=\"Object3D\",this.parent=null,this.children=[],this.up=r.DEFAULT_UP.clone();let t=new w,e=new sa,n=new Be,i=new w(1,1,1);function s(){n.setFromEuler(e,!1)}function a(){e.setFromQuaternion(n,void 0,!1)}e._onChange(s),n._onChange(a),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 It},normalMatrix:{value:new Gt}}),this.matrix=new It,this.matrixWorld=new It,this.matrixAutoUpdate=r.DEFAULT_MATRIX_AUTO_UPDATE,this.matrixWorldAutoUpdate=r.DEFAULT_MATRIX_WORLD_AUTO_UPDATE,this.matrixWorldNeedsUpdate=!1,this.layers=new Os,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 Ci.setFromAxisAngle(t,e),this.quaternion.multiply(Ci),this}rotateOnWorldAxis(t,e){return Ci.setFromAxisAngle(t,e),this.quaternion.premultiply(Ci),this}rotateX(t){return this.rotateOnAxis(dh,t)}rotateY(t){return this.rotateOnAxis(fh,t)}rotateZ(t){return this.rotateOnAxis(ph,t)}translateOnAxis(t,e){return uh.copy(t).applyQuaternion(this.quaternion),this.position.add(uh.multiplyScalar(e)),this}translateX(t){return this.translateOnAxis(dh,t)}translateY(t){return this.translateOnAxis(fh,t)}translateZ(t){return this.translateOnAxis(ph,t)}localToWorld(t){return this.updateWorldMatrix(!0,!1),t.applyMatrix4(this.matrixWorld)}worldToLocal(t){return this.updateWorldMatrix(!0,!1),t.applyMatrix4(mn.copy(this.matrixWorld).invert())}lookAt(t,e,n){t.isVector3?ir.copy(t):ir.set(t,e,n);let i=this.parent;this.updateWorldMatrix(!0,!1),_s.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?mn.lookAt(_s,ir,this.up):mn.lookAt(ir,_s,this.up),this.quaternion.setFromRotationMatrix(mn),i&&(mn.extractRotation(i.matrixWorld),Ci.setFromRotationMatrix(mn),this.quaternion.premultiply(Ci.invert()))}add(t){if(arguments.length>1){for(let e=0;e<arguments.length;e++)this.add(arguments[e]);return this}return t===this?(console.error(\"THREE.Object3D.add: object can't be added as a child of itself.\",t),this):(t&&t.isObject3D?(t.parent!==null&&t.parent.remove(t),t.parent=this,this.children.push(t),t.dispatchEvent(Np)):console.error(\"THREE.Object3D.add: object not an instance of THREE.Object3D.\",t),this)}remove(t){if(arguments.length>1){for(let n=0;n<arguments.length;n++)this.remove(arguments[n]);return this}let e=this.children.indexOf(t);return e!==-1&&(t.parent=null,this.children.splice(e,1),t.dispatchEvent(Op)),this}removeFromParent(){let t=this.parent;return t!==null&&t.remove(this),this}clear(){return this.remove(...this.children)}attach(t){return this.updateWorldMatrix(!0,!1),mn.copy(this.matrixWorld).invert(),t.parent!==null&&(t.parent.updateWorldMatrix(!0,!1),mn.multiply(t.parent.matrixWorld)),t.applyMatrix4(mn),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++){let a=this.children[n].getObjectByProperty(t,e);if(a!==void 0)return a}}getObjectsByProperty(t,e,n=[]){this[t]===e&&n.push(this);let i=this.children;for(let s=0,a=i.length;s<a;s++)i[s].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(_s,t,Up),t}getWorldScale(t){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(_s,Dp,t),t}getWorldDirection(t){this.updateWorldMatrix(!0,!1);let e=this.matrixWorld.elements;return t.set(e[8],e[9],e[10]).normalize()}raycast(){}traverse(t){t(this);let e=this.children;for(let n=0,i=e.length;n<i;n++)e[n].traverse(t)}traverseVisible(t){if(this.visible===!1)return;t(this);let e=this.children;for(let n=0,i=e.length;n<i;n++)e[n].traverseVisible(t)}traverseAncestors(t){let e=this.parent;e!==null&&(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)&&(this.parent===null?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorldNeedsUpdate=!1,t=!0);let e=this.children;for(let n=0,i=e.length;n<i;n++){let s=e[n];(s.matrixWorldAutoUpdate===!0||t===!0)&&s.updateMatrixWorld(t)}}updateWorldMatrix(t,e){let n=this.parent;if(t===!0&&n!==null&&n.matrixWorldAutoUpdate===!0&&n.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),this.parent===null?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),e===!0){let i=this.children;for(let s=0,a=i.length;s<a;s++){let o=i[s];o.matrixWorldAutoUpdate===!0&&o.updateWorldMatrix(!1,!0)}}}toJSON(t){let e=t===void 0||typeof t==\"string\",n={};e&&(t={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{},nodes:{}},n.metadata={version:4.6,type:\"Object\",generator:\"Object3D.toJSON\"});let i={};i.uuid=this.uuid,i.type=this.type,this.name!==\"\"&&(i.name=this.name),this.castShadow===!0&&(i.castShadow=!0),this.receiveShadow===!0&&(i.receiveShadow=!0),this.visible===!1&&(i.visible=!1),this.frustumCulled===!1&&(i.frustumCulled=!1),this.renderOrder!==0&&(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(),this.matrixAutoUpdate===!1&&(i.matrixAutoUpdate=!1),this.isInstancedMesh&&(i.type=\"InstancedMesh\",i.count=this.count,i.instanceMatrix=this.instanceMatrix.toJSON(),this.instanceColor!==null&&(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(o=>({boxInitialized:o.boxInitialized,boxMin:o.box.min.toArray(),boxMax:o.box.max.toArray(),sphereInitialized:o.sphereInitialized,sphereRadius:o.sphere.radius,sphereCenter:o.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),this.boundingSphere!==null&&(i.boundingSphere={center:i.boundingSphere.center.toArray(),radius:i.boundingSphere.radius}),this.boundingBox!==null&&(i.boundingBox={min:i.boundingBox.min.toArray(),max:i.boundingBox.max.toArray()}));function s(o,c){return o[c.uuid]===void 0&&(o[c.uuid]=c.toJSON(t)),c.uuid}if(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&&this.environment.isRenderTargetTexture!==!0&&(i.environment=this.environment.toJSON(t).uuid);else if(this.isMesh||this.isLine||this.isPoints){i.geometry=s(t.geometries,this.geometry);let o=this.geometry.parameters;if(o!==void 0&&o.shapes!==void 0){let c=o.shapes;if(Array.isArray(c))for(let l=0,h=c.length;l<h;l++){let u=c[l];s(t.shapes,u)}else s(t.shapes,c)}}if(this.isSkinnedMesh&&(i.bindMode=this.bindMode,i.bindMatrix=this.bindMatrix.toArray(),this.skeleton!==void 0&&(s(t.skeletons,this.skeleton),i.skeleton=this.skeleton.uuid)),this.material!==void 0)if(Array.isArray(this.material)){let o=[];for(let c=0,l=this.material.length;c<l;c++)o.push(s(t.materials,this.material[c]));i.material=o}else i.material=s(t.materials,this.material);if(this.children.length>0){i.children=[];for(let o=0;o<this.children.length;o++)i.children.push(this.children[o].toJSON(t).object)}if(this.animations.length>0){i.animations=[];for(let o=0;o<this.animations.length;o++){let c=this.animations[o];i.animations.push(s(t.animations,c))}}if(e){let o=a(t.geometries),c=a(t.materials),l=a(t.textures),h=a(t.images),u=a(t.shapes),d=a(t.skeletons),f=a(t.animations),m=a(t.nodes);o.length>0&&(n.geometries=o),c.length>0&&(n.materials=c),l.length>0&&(n.textures=l),h.length>0&&(n.images=h),u.length>0&&(n.shapes=u),d.length>0&&(n.skeletons=d),f.length>0&&(n.animations=f),m.length>0&&(n.nodes=m)}return n.object=i,n;function a(o){let c=[];for(let l in o){let h=o[l];delete h.metadata,c.push(h)}return c}}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)),e===!0)for(let n=0;n<t.children.length;n++){let i=t.children[n];this.add(i.clone())}return this}};Kt.DEFAULT_UP=new w(0,1,0);Kt.DEFAULT_MATRIX_AUTO_UPDATE=!0;Kt.DEFAULT_MATRIX_WORLD_AUTO_UPDATE=!0;var nn=new w,gn=new w,ja=new w,_n=new w,Pi=new w,Li=new w,mh=new w,to=new w,eo=new w,no=new w,sr=!1,Fn=class r{constructor(t=new w,e=new w,n=new w){this.a=t,this.b=e,this.c=n}static getNormal(t,e,n,i){i.subVectors(n,e),nn.subVectors(t,e),i.cross(nn);let s=i.lengthSq();return s>0?i.multiplyScalar(1/Math.sqrt(s)):i.set(0,0,0)}static getBarycoord(t,e,n,i,s){nn.subVectors(i,e),gn.subVectors(n,e),ja.subVectors(t,e);let a=nn.dot(nn),o=nn.dot(gn),c=nn.dot(ja),l=gn.dot(gn),h=gn.dot(ja),u=a*l-o*o;if(u===0)return s.set(0,0,0),null;let d=1/u,f=(l*c-o*h)*d,m=(a*h-o*c)*d;return s.set(1-f-m,m,f)}static containsPoint(t,e,n,i){return this.getBarycoord(t,e,n,i,_n)===null?!1:_n.x>=0&&_n.y>=0&&_n.x+_n.y<=1}static getUV(t,e,n,i,s,a,o,c){return sr===!1&&(console.warn(\"THREE.Triangle.getUV() has been renamed to THREE.Triangle.getInterpolation().\"),sr=!0),this.getInterpolation(t,e,n,i,s,a,o,c)}static getInterpolation(t,e,n,i,s,a,o,c){return this.getBarycoord(t,e,n,i,_n)===null?(c.x=0,c.y=0,\"z\"in c&&(c.z=0),\"w\"in c&&(c.w=0),null):(c.setScalar(0),c.addScaledVector(s,_n.x),c.addScaledVector(a,_n.y),c.addScaledVector(o,_n.z),c)}static isFrontFacing(t,e,n,i){return nn.subVectors(n,e),gn.subVectors(t,e),nn.cross(gn).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 nn.subVectors(this.c,this.b),gn.subVectors(this.a,this.b),nn.cross(gn).length()*.5}getMidpoint(t){return t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return r.getNormal(this.a,this.b,this.c,t)}getPlane(t){return t.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,e){return r.getBarycoord(t,this.a,this.b,this.c,e)}getUV(t,e,n,i,s){return sr===!1&&(console.warn(\"THREE.Triangle.getUV() has been renamed to THREE.Triangle.getInterpolation().\"),sr=!0),r.getInterpolation(t,this.a,this.b,this.c,e,n,i,s)}getInterpolation(t,e,n,i,s){return r.getInterpolation(t,this.a,this.b,this.c,e,n,i,s)}containsPoint(t){return r.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return r.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(t){return t.intersectsTriangle(this)}closestPointToPoint(t,e){let n=this.a,i=this.b,s=this.c,a,o;Pi.subVectors(i,n),Li.subVectors(s,n),to.subVectors(t,n);let c=Pi.dot(to),l=Li.dot(to);if(c<=0&&l<=0)return e.copy(n);eo.subVectors(t,i);let h=Pi.dot(eo),u=Li.dot(eo);if(h>=0&&u<=h)return e.copy(i);let d=c*u-h*l;if(d<=0&&c>=0&&h<=0)return a=c/(c-h),e.copy(n).addScaledVector(Pi,a);no.subVectors(t,s);let f=Pi.dot(no),m=Li.dot(no);if(m>=0&&f<=m)return e.copy(s);let _=f*l-c*m;if(_<=0&&l>=0&&m<=0)return o=l/(l-m),e.copy(n).addScaledVector(Li,o);let g=h*m-f*u;if(g<=0&&u-h>=0&&f-m>=0)return mh.subVectors(s,i),o=(u-h)/(u-h+(f-m)),e.copy(i).addScaledVector(mh,o);let p=1/(g+_+d);return a=_*p,o=d*p,e.copy(n).addScaledVector(Pi,a).addScaledVector(Li,o)}equals(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}},kd={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},In={h:0,s:0,l:0},rr={h:0,s:0,l:0};function io(r,t,e){return e<0&&(e+=1),e>1&&(e-=1),e<1/6?r+(t-r)*6*e:e<1/2?t:e<2/3?r+(t-r)*6*(2/3-e):r}var pt=class{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(e===void 0&&n===void 0){let i=t;i&&i.isColor?this.copy(i):typeof i==\"number\"?this.setHex(i):typeof i==\"string\"&&this.setStyle(i)}else this.setRGB(t,e,n);return this}setScalar(t){return this.r=t,this.g=t,this.b=t,this}setHex(t,e=Se){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(t&255)/255,jt.toWorkingColorSpace(this,e),this}setRGB(t,e,n,i=jt.workingColorSpace){return this.r=t,this.g=e,this.b=n,jt.toWorkingColorSpace(this,i),this}setHSL(t,e,n,i=jt.workingColorSpace){if(t=ll(t,1),e=he(e,0,1),n=he(n,0,1),e===0)this.r=this.g=this.b=n;else{let s=n<=.5?n*(1+e):n+e-n*e,a=2*n-s;this.r=io(a,s,t+1/3),this.g=io(a,s,t),this.b=io(a,s,t-1/3)}return jt.toWorkingColorSpace(this,i),this}setStyle(t,e=Se){function n(s){s!==void 0&&parseFloat(s)<1&&console.warn(\"THREE.Color: Alpha component of \"+t+\" will be ignored.\")}let i;if(i=/^(\\w+)\\(([^\\)]*)\\)/.exec(t)){let s,a=i[1],o=i[2];switch(a){case\"rgb\":case\"rgba\":if(s=/^\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*(?:,\\s*(\\d*\\.?\\d+)\\s*)?$/.exec(o))return n(s[4]),this.setRGB(Math.min(255,parseInt(s[1],10))/255,Math.min(255,parseInt(s[2],10))/255,Math.min(255,parseInt(s[3],10))/255,e);if(s=/^\\s*(\\d+)\\%\\s*,\\s*(\\d+)\\%\\s*,\\s*(\\d+)\\%\\s*(?:,\\s*(\\d*\\.?\\d+)\\s*)?$/.exec(o))return n(s[4]),this.setRGB(Math.min(100,parseInt(s[1],10))/100,Math.min(100,parseInt(s[2],10))/100,Math.min(100,parseInt(s[3],10))/100,e);break;case\"hsl\":case\"hsla\":if(s=/^\\s*(\\d*\\.?\\d+)\\s*,\\s*(\\d*\\.?\\d+)\\%\\s*,\\s*(\\d*\\.?\\d+)\\%\\s*(?:,\\s*(\\d*\\.?\\d+)\\s*)?$/.exec(o))return n(s[4]),this.setHSL(parseFloat(s[1])/360,parseFloat(s[2])/100,parseFloat(s[3])/100,e);break;default:console.warn(\"THREE.Color: Unknown color model \"+t)}}else if(i=/^\\#([A-Fa-f\\d]+)$/.exec(t)){let s=i[1],a=s.length;if(a===3)return this.setRGB(parseInt(s.charAt(0),16)/15,parseInt(s.charAt(1),16)/15,parseInt(s.charAt(2),16)/15,e);if(a===6)return this.setHex(parseInt(s,16),e);console.warn(\"THREE.Color: Invalid hex color \"+t)}else if(t&&t.length>0)return this.setColorName(t,e);return this}setColorName(t,e=Se){let n=kd[t.toLowerCase()];return n!==void 0?this.setHex(n,e):console.warn(\"THREE.Color: Unknown color \"+t),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=Qi(t.r),this.g=Qi(t.g),this.b=Qi(t.b),this}copyLinearToSRGB(t){return this.r=Xa(t.r),this.g=Xa(t.g),this.b=Xa(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(t=Se){return jt.fromWorkingColorSpace(Ce.copy(this),t),Math.round(he(Ce.r*255,0,255))*65536+Math.round(he(Ce.g*255,0,255))*256+Math.round(he(Ce.b*255,0,255))}getHexString(t=Se){return(\"000000\"+this.getHex(t).toString(16)).slice(-6)}getHSL(t,e=jt.workingColorSpace){jt.fromWorkingColorSpace(Ce.copy(this),e);let n=Ce.r,i=Ce.g,s=Ce.b,a=Math.max(n,i,s),o=Math.min(n,i,s),c,l,h=(o+a)/2;if(o===a)c=0,l=0;else{let u=a-o;switch(l=h<=.5?u/(a+o):u/(2-a-o),a){case n:c=(i-s)/u+(i<s?6:0);break;case i:c=(s-n)/u+2;break;case s:c=(n-i)/u+4;break}c/=6}return t.h=c,t.s=l,t.l=h,t}getRGB(t,e=jt.workingColorSpace){return jt.fromWorkingColorSpace(Ce.copy(this),e),t.r=Ce.r,t.g=Ce.g,t.b=Ce.b,t}getStyle(t=Se){jt.fromWorkingColorSpace(Ce.copy(this),t);let e=Ce.r,n=Ce.g,i=Ce.b;return t!==Se?`color(${t} ${e.toFixed(3)} ${n.toFixed(3)} ${i.toFixed(3)})`:`rgb(${Math.round(e*255)},${Math.round(n*255)},${Math.round(i*255)})`}offsetHSL(t,e,n){return this.getHSL(In),this.setHSL(In.h+t,In.s+e,In.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(In),t.getHSL(rr);let n=ws(In.h,rr.h,e),i=ws(In.s,rr.s,e),s=ws(In.l,rr.l,e);return this.setHSL(n,i,s),this}setFromVector3(t){return this.r=t.x,this.g=t.y,this.b=t.z,this}applyMatrix3(t){let e=this.r,n=this.g,i=this.b,s=t.elements;return this.r=s[0]*e+s[3]*n+s[6]*i,this.g=s[1]*e+s[4]*n+s[7]*i,this.b=s[2]*e+s[5]*n+s[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}},Ce=new pt;pt.NAMES=kd;var Fp=0,Te=class extends hn{constructor(){super(),this.isMaterial=!0,Object.defineProperty(this,\"id\",{value:Fp++}),this.uuid=Ye(),this.name=\"\",this.type=\"Material\",this.blending=Ki,this.side=Wn,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.alphaHash=!1,this.blendSrc=wo,this.blendDst=Ro,this.blendEquation=oi,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.blendColor=new pt(0,0,0),this.blendAlpha=0,this.depthFunc=Gr,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=jl,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=bi,this.stencilZFail=bi,this.stencilZPass=bi,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(t!==void 0)for(let e in t){let n=t[e];if(n===void 0){console.warn(`THREE.Material: parameter '${e}' has value of undefined.`);continue}let i=this[e];if(i===void 0){console.warn(`THREE.Material: '${e}' is not a property of THREE.${this.type}.`);continue}i&&i.isColor?i.set(n):i&&i.isVector3&&n&&n.isVector3?i.copy(n):this[e]=n}}toJSON(t){let e=t===void 0||typeof t==\"string\";e&&(t={textures:{},images:{}});let n={metadata:{version:4.6,type:\"Material\",generator:\"Material.toJSON\"}};n.uuid=this.uuid,n.type=this.type,this.name!==\"\"&&(n.name=this.name),this.color&&this.color.isColor&&(n.color=this.color.getHex()),this.roughness!==void 0&&(n.roughness=this.roughness),this.metalness!==void 0&&(n.metalness=this.metalness),this.sheen!==void 0&&(n.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(n.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity&&this.emissiveIntensity!==1&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(n.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(n.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(n.shininess=this.shininess),this.clearcoat!==void 0&&(n.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(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()),this.iridescence!==void 0&&(n.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(n.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(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),this.anisotropy!==void 0&&(n.anisotropy=this.anisotropy),this.anisotropyRotation!==void 0&&(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,this.combine!==void 0&&(n.combine=this.combine)),this.envMapIntensity!==void 0&&(n.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(n.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(t).uuid),this.transmission!==void 0&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(t).uuid),this.thickness!==void 0&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(t).uuid),this.attenuationDistance!==void 0&&this.attenuationDistance!==1/0&&(n.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(n.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(n.size=this.size),this.shadowSide!==null&&(n.shadowSide=this.shadowSide),this.sizeAttenuation!==void 0&&(n.sizeAttenuation=this.sizeAttenuation),this.blending!==Ki&&(n.blending=this.blending),this.side!==Wn&&(n.side=this.side),this.vertexColors===!0&&(n.vertexColors=!0),this.opacity<1&&(n.opacity=this.opacity),this.transparent===!0&&(n.transparent=!0),this.blendSrc!==wo&&(n.blendSrc=this.blendSrc),this.blendDst!==Ro&&(n.blendDst=this.blendDst),this.blendEquation!==oi&&(n.blendEquation=this.blendEquation),this.blendSrcAlpha!==null&&(n.blendSrcAlpha=this.blendSrcAlpha),this.blendDstAlpha!==null&&(n.blendDstAlpha=this.blendDstAlpha),this.blendEquationAlpha!==null&&(n.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(n.blendColor=this.blendColor.getHex()),this.blendAlpha!==0&&(n.blendAlpha=this.blendAlpha),this.depthFunc!==Gr&&(n.depthFunc=this.depthFunc),this.depthTest===!1&&(n.depthTest=this.depthTest),this.depthWrite===!1&&(n.depthWrite=this.depthWrite),this.colorWrite===!1&&(n.colorWrite=this.colorWrite),this.stencilWriteMask!==255&&(n.stencilWriteMask=this.stencilWriteMask),this.stencilFunc!==jl&&(n.stencilFunc=this.stencilFunc),this.stencilRef!==0&&(n.stencilRef=this.stencilRef),this.stencilFuncMask!==255&&(n.stencilFuncMask=this.stencilFuncMask),this.stencilFail!==bi&&(n.stencilFail=this.stencilFail),this.stencilZFail!==bi&&(n.stencilZFail=this.stencilZFail),this.stencilZPass!==bi&&(n.stencilZPass=this.stencilZPass),this.stencilWrite===!0&&(n.stencilWrite=this.stencilWrite),this.rotation!==void 0&&this.rotation!==0&&(n.rotation=this.rotation),this.polygonOffset===!0&&(n.polygonOffset=!0),this.polygonOffsetFactor!==0&&(n.polygonOffsetFactor=this.polygonOffsetFactor),this.polygonOffsetUnits!==0&&(n.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth!==void 0&&this.linewidth!==1&&(n.linewidth=this.linewidth),this.dashSize!==void 0&&(n.dashSize=this.dashSize),this.gapSize!==void 0&&(n.gapSize=this.gapSize),this.scale!==void 0&&(n.scale=this.scale),this.dithering===!0&&(n.dithering=!0),this.alphaTest>0&&(n.alphaTest=this.alphaTest),this.alphaHash===!0&&(n.alphaHash=!0),this.alphaToCoverage===!0&&(n.alphaToCoverage=!0),this.premultipliedAlpha===!0&&(n.premultipliedAlpha=!0),this.forceSinglePass===!0&&(n.forceSinglePass=!0),this.wireframe===!0&&(n.wireframe=!0),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!==\"round\"&&(n.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!==\"round\"&&(n.wireframeLinejoin=this.wireframeLinejoin),this.flatShading===!0&&(n.flatShading=!0),this.visible===!1&&(n.visible=!1),this.toneMapped===!1&&(n.toneMapped=!1),this.fog===!1&&(n.fog=!1),Object.keys(this.userData).length>0&&(n.userData=this.userData);function i(s){let a=[];for(let o in s){let c=s[o];delete c.metadata,a.push(c)}return a}if(e){let s=i(t.textures),a=i(t.images);s.length>0&&(n.textures=s),a.length>0&&(n.images=a)}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;let e=t.clippingPlanes,n=null;if(e!==null){let i=e.length;n=new Array(i);for(let s=0;s!==i;++s)n[s]=e[s].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){t===!0&&this.version++}},An=class extends Te{constructor(t){super(),this.isMeshBasicMaterial=!0,this.type=\"MeshBasicMaterial\",this.color=new pt(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=Pa,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}},Sn=Bp();function Bp(){let r=new ArrayBuffer(4),t=new Float32Array(r),e=new Uint32Array(r),n=new Uint32Array(512),i=new Uint32Array(512);for(let c=0;c<256;++c){let l=c-127;l<-27?(n[c]=0,n[c|256]=32768,i[c]=24,i[c|256]=24):l<-14?(n[c]=1024>>-l-14,n[c|256]=1024>>-l-14|32768,i[c]=-l-1,i[c|256]=-l-1):l<=15?(n[c]=l+15<<10,n[c|256]=l+15<<10|32768,i[c]=13,i[c|256]=13):l<128?(n[c]=31744,n[c|256]=64512,i[c]=24,i[c|256]=24):(n[c]=31744,n[c|256]=64512,i[c]=13,i[c|256]=13)}let s=new Uint32Array(2048),a=new Uint32Array(64),o=new Uint32Array(64);for(let c=1;c<1024;++c){let l=c<<13,h=0;for(;(l&8388608)===0;)l<<=1,h-=8388608;l&=-8388609,h+=947912704,s[c]=l|h}for(let c=1024;c<2048;++c)s[c]=939524096+(c-1024<<13);for(let c=1;c<31;++c)a[c]=c<<23;a[31]=1199570944,a[32]=2147483648;for(let c=33;c<63;++c)a[c]=2147483648+(c-32<<23);a[63]=3347054592;for(let c=1;c<64;++c)c!==32&&(o[c]=1024);return{floatView:t,uint32View:e,baseTable:n,shiftTable:i,mantissaTable:s,exponentTable:a,offsetTable:o}}function Ve(r){Math.abs(r)>65504&&console.warn(\"THREE.DataUtils.toHalfFloat(): Value out of range.\"),r=he(r,-65504,65504),Sn.floatView[0]=r;let t=Sn.uint32View[0],e=t>>23&511;return Sn.baseTable[e]+((t&8388607)>>Sn.shiftTable[e])}function Ts(r){let t=r>>10;return Sn.uint32View[0]=Sn.mantissaTable[Sn.offsetTable[t]+(r&1023)]+Sn.exponentTable[t],Sn.floatView[0]}var ty={toHalfFloat:Ve,fromHalfFloat:Ts},fe=new w,ar=new Z,Jt=class{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=t!==void 0?t.length/e:0,this.normalized=n,this.usage=ta,this._updateRange={offset:0,count:-1},this.updateRanges=[],this.gpuType=cn,this.version=0}onUploadCallback(){}set needsUpdate(t){t===!0&&this.version++}get updateRange(){return console.warn(\"THREE.BufferAttribute: updateRange() is deprecated and will be removed in r169. Use addUpdateRange() instead.\"),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,s=this.itemSize;i<s;i++)this.array[t+i]=e.array[n+i];return this}copyArray(t){return this.array.set(t),this}applyMatrix3(t){if(this.itemSize===2)for(let e=0,n=this.count;e<n;e++)ar.fromBufferAttribute(this,e),ar.applyMatrix3(t),this.setXY(e,ar.x,ar.y);else if(this.itemSize===3)for(let e=0,n=this.count;e<n;e++)fe.fromBufferAttribute(this,e),fe.applyMatrix3(t),this.setXYZ(e,fe.x,fe.y,fe.z);return this}applyMatrix4(t){for(let e=0,n=this.count;e<n;e++)fe.fromBufferAttribute(this,e),fe.applyMatrix4(t),this.setXYZ(e,fe.x,fe.y,fe.z);return this}applyNormalMatrix(t){for(let e=0,n=this.count;e<n;e++)fe.fromBufferAttribute(this,e),fe.applyNormalMatrix(t),this.setXYZ(e,fe.x,fe.y,fe.z);return this}transformDirection(t){for(let e=0,n=this.count;e<n;e++)fe.fromBufferAttribute(this,e),fe.transformDirection(t),this.setXYZ(e,fe.x,fe.y,fe.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=ke(n,this.array)),n}setComponent(t,e,n){return this.normalized&&(n=zt(n,this.array)),this.array[t*this.itemSize+e]=n,this}getX(t){let e=this.array[t*this.itemSize];return this.normalized&&(e=ke(e,this.array)),e}setX(t,e){return this.normalized&&(e=zt(e,this.array)),this.array[t*this.itemSize]=e,this}getY(t){let e=this.array[t*this.itemSize+1];return this.normalized&&(e=ke(e,this.array)),e}setY(t,e){return this.normalized&&(e=zt(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=ke(e,this.array)),e}setZ(t,e){return this.normalized&&(e=zt(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=ke(e,this.array)),e}setW(t,e){return this.normalized&&(e=zt(e,this.array)),this.array[t*this.itemSize+3]=e,this}setXY(t,e,n){return t*=this.itemSize,this.normalized&&(e=zt(e,this.array),n=zt(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=zt(e,this.array),n=zt(n,this.array),i=zt(i,this.array)),this.array[t+0]=e,this.array[t+1]=n,this.array[t+2]=i,this}setXYZW(t,e,n,i,s){return t*=this.itemSize,this.normalized&&(e=zt(e,this.array),n=zt(n,this.array),i=zt(i,this.array),s=zt(s,this.array)),this.array[t+0]=e,this.array[t+1]=n,this.array[t+2]=i,this.array[t+3]=s,this}onUpload(t){return this.onUploadCallback=t,this}clone(){return new this.constructor(this.array,this.itemSize).copy(this)}toJSON(){let t={itemSize:this.itemSize,type:this.array.constructor.name,array:Array.from(this.array),normalized:this.normalized};return this.name!==\"\"&&(t.name=this.name),this.usage!==ta&&(t.usage=this.usage),t}},gh=class extends Jt{constructor(t,e,n){super(new Int8Array(t),e,n)}},_h=class extends Jt{constructor(t,e,n){super(new Uint8Array(t),e,n)}},xh=class extends Jt{constructor(t,e,n){super(new Uint8ClampedArray(t),e,n)}},vh=class extends Jt{constructor(t,e,n){super(new Int16Array(t),e,n)}},ra=class extends Jt{constructor(t,e,n){super(new Uint16Array(t),e,n)}},yh=class extends Jt{constructor(t,e,n){super(new Int32Array(t),e,n)}},aa=class extends Jt{constructor(t,e,n){super(new Uint32Array(t),e,n)}},Mh=class extends Jt{constructor(t,e,n){super(new Uint16Array(t),e,n),this.isFloat16BufferAttribute=!0}getX(t){let e=Ts(this.array[t*this.itemSize]);return this.normalized&&(e=ke(e,this.array)),e}setX(t,e){return this.normalized&&(e=zt(e,this.array)),this.array[t*this.itemSize]=Ve(e),this}getY(t){let e=Ts(this.array[t*this.itemSize+1]);return this.normalized&&(e=ke(e,this.array)),e}setY(t,e){return this.normalized&&(e=zt(e,this.array)),this.array[t*this.itemSize+1]=Ve(e),this}getZ(t){let e=Ts(this.array[t*this.itemSize+2]);return this.normalized&&(e=ke(e,this.array)),e}setZ(t,e){return this.normalized&&(e=zt(e,this.array)),this.array[t*this.itemSize+2]=Ve(e),this}getW(t){let e=Ts(this.array[t*this.itemSize+3]);return this.normalized&&(e=ke(e,this.array)),e}setW(t,e){return this.normalized&&(e=zt(e,this.array)),this.array[t*this.itemSize+3]=Ve(e),this}setXY(t,e,n){return t*=this.itemSize,this.normalized&&(e=zt(e,this.array),n=zt(n,this.array)),this.array[t+0]=Ve(e),this.array[t+1]=Ve(n),this}setXYZ(t,e,n,i){return t*=this.itemSize,this.normalized&&(e=zt(e,this.array),n=zt(n,this.array),i=zt(i,this.array)),this.array[t+0]=Ve(e),this.array[t+1]=Ve(n),this.array[t+2]=Ve(i),this}setXYZW(t,e,n,i,s){return t*=this.itemSize,this.normalized&&(e=zt(e,this.array),n=zt(n,this.array),i=zt(i,this.array),s=zt(s,this.array)),this.array[t+0]=Ve(e),this.array[t+1]=Ve(n),this.array[t+2]=Ve(i),this.array[t+3]=Ve(s),this}},xt=class extends Jt{constructor(t,e,n){super(new Float32Array(t),e,n)}},Sh=class extends Jt{constructor(t,e,n){super(new Float64Array(t),e,n)}},zp=0,Je=new It,so=new Kt,Ii=new w,Xe=new Le,xs=new Le,Me=new w,Wt=class r extends hn{constructor(){super(),this.isBufferGeometry=!0,Object.defineProperty(this,\"id\",{value:zp++}),this.uuid=Ye(),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(Vd(t)?aa:ra)(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 this.attributes[t]!==void 0}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){let e=this.attributes.position;e!==void 0&&(e.applyMatrix4(t),e.needsUpdate=!0);let n=this.attributes.normal;if(n!==void 0){let s=new Gt().getNormalMatrix(t);n.applyNormalMatrix(s),n.needsUpdate=!0}let i=this.attributes.tangent;return i!==void 0&&(i.transformDirection(t),i.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this}applyQuaternion(t){return Je.makeRotationFromQuaternion(t),this.applyMatrix4(Je),this}rotateX(t){return Je.makeRotationX(t),this.applyMatrix4(Je),this}rotateY(t){return Je.makeRotationY(t),this.applyMatrix4(Je),this}rotateZ(t){return Je.makeRotationZ(t),this.applyMatrix4(Je),this}translate(t,e,n){return Je.makeTranslation(t,e,n),this.applyMatrix4(Je),this}scale(t,e,n){return Je.makeScale(t,e,n),this.applyMatrix4(Je),this}lookAt(t){return so.lookAt(t),so.updateMatrix(),this.applyMatrix4(so.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(Ii).negate(),this.translate(Ii.x,Ii.y,Ii.z),this}setFromPoints(t){let e=[];for(let n=0,i=t.length;n<i;n++){let s=t[n];e.push(s.x,s.y,s.z||0)}return this.setAttribute(\"position\",new xt(e,3)),this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new Le);let t=this.attributes.position,e=this.morphAttributes.position;if(t&&t.isGLBufferAttribute){console.error('THREE.BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box. Alternatively set \"mesh.frustumCulled\" to \"false\".',this),this.boundingBox.set(new w(-1/0,-1/0,-1/0),new w(1/0,1/0,1/0));return}if(t!==void 0){if(this.boundingBox.setFromBufferAttribute(t),e)for(let n=0,i=e.length;n<i;n++){let s=e[n];Xe.setFromBufferAttribute(s),this.morphTargetsRelative?(Me.addVectors(this.boundingBox.min,Xe.min),this.boundingBox.expandByPoint(Me),Me.addVectors(this.boundingBox.max,Xe.max),this.boundingBox.expandByPoint(Me)):(this.boundingBox.expandByPoint(Xe.min),this.boundingBox.expandByPoint(Xe.max))}}else this.boundingBox.makeEmpty();(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z))&&console.error('THREE.BufferGeometry.computeBoundingBox(): Computed min/max have NaN values. The \"position\" attribute is likely to have NaN values.',this)}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new Ae);let t=this.attributes.position,e=this.morphAttributes.position;if(t&&t.isGLBufferAttribute){console.error('THREE.BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere. Alternatively set \"mesh.frustumCulled\" to \"false\".',this),this.boundingSphere.set(new w,1/0);return}if(t){let n=this.boundingSphere.center;if(Xe.setFromBufferAttribute(t),e)for(let s=0,a=e.length;s<a;s++){let o=e[s];xs.setFromBufferAttribute(o),this.morphTargetsRelative?(Me.addVectors(Xe.min,xs.min),Xe.expandByPoint(Me),Me.addVectors(Xe.max,xs.max),Xe.expandByPoint(Me)):(Xe.expandByPoint(xs.min),Xe.expandByPoint(xs.max))}Xe.getCenter(n);let i=0;for(let s=0,a=t.count;s<a;s++)Me.fromBufferAttribute(t,s),i=Math.max(i,n.distanceToSquared(Me));if(e)for(let s=0,a=e.length;s<a;s++){let o=e[s],c=this.morphTargetsRelative;for(let l=0,h=o.count;l<h;l++)Me.fromBufferAttribute(o,l),c&&(Ii.fromBufferAttribute(t,l),Me.add(Ii)),i=Math.max(i,n.distanceToSquared(Me))}this.boundingSphere.radius=Math.sqrt(i),isNaN(this.boundingSphere.radius)&&console.error('THREE.BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The \"position\" attribute is likely to have NaN values.',this)}}computeTangents(){let t=this.index,e=this.attributes;if(t===null||e.position===void 0||e.normal===void 0||e.uv===void 0){console.error(\"THREE.BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)\");return}let n=t.array,i=e.position.array,s=e.normal.array,a=e.uv.array,o=i.length/3;this.hasAttribute(\"tangent\")===!1&&this.setAttribute(\"tangent\",new Jt(new Float32Array(4*o),4));let c=this.getAttribute(\"tangent\").array,l=[],h=[];for(let E=0;E<o;E++)l[E]=new w,h[E]=new w;let u=new w,d=new w,f=new w,m=new Z,_=new Z,g=new Z,p=new w,v=new w;function x(E,N,G){u.fromArray(i,E*3),d.fromArray(i,N*3),f.fromArray(i,G*3),m.fromArray(a,E*2),_.fromArray(a,N*2),g.fromArray(a,G*2),d.sub(u),f.sub(u),_.sub(m),g.sub(m);let it=1/(_.x*g.y-g.x*_.y);isFinite(it)&&(p.copy(d).multiplyScalar(g.y).addScaledVector(f,-_.y).multiplyScalar(it),v.copy(f).multiplyScalar(_.x).addScaledVector(d,-g.x).multiplyScalar(it),l[E].add(p),l[N].add(p),l[G].add(p),h[E].add(v),h[N].add(v),h[G].add(v))}let y=this.groups;y.length===0&&(y=[{start:0,count:n.length}]);for(let E=0,N=y.length;E<N;++E){let G=y[E],it=G.start,I=G.count;for(let F=it,k=it+I;F<k;F+=3)x(n[F+0],n[F+1],n[F+2])}let C=new w,T=new w,R=new w,U=new w;function S(E){R.fromArray(s,E*3),U.copy(R);let N=l[E];C.copy(N),C.sub(R.multiplyScalar(R.dot(N))).normalize(),T.crossVectors(U,N);let it=T.dot(h[E])<0?-1:1;c[E*4]=C.x,c[E*4+1]=C.y,c[E*4+2]=C.z,c[E*4+3]=it}for(let E=0,N=y.length;E<N;++E){let G=y[E],it=G.start,I=G.count;for(let F=it,k=it+I;F<k;F+=3)S(n[F+0]),S(n[F+1]),S(n[F+2])}}computeVertexNormals(){let t=this.index,e=this.getAttribute(\"position\");if(e!==void 0){let n=this.getAttribute(\"normal\");if(n===void 0)n=new Jt(new Float32Array(e.count*3),3),this.setAttribute(\"normal\",n);else for(let d=0,f=n.count;d<f;d++)n.setXYZ(d,0,0,0);let i=new w,s=new w,a=new w,o=new w,c=new w,l=new w,h=new w,u=new w;if(t)for(let d=0,f=t.count;d<f;d+=3){let m=t.getX(d+0),_=t.getX(d+1),g=t.getX(d+2);i.fromBufferAttribute(e,m),s.fromBufferAttribute(e,_),a.fromBufferAttribute(e,g),h.subVectors(a,s),u.subVectors(i,s),h.cross(u),o.fromBufferAttribute(n,m),c.fromBufferAttribute(n,_),l.fromBufferAttribute(n,g),o.add(h),c.add(h),l.add(h),n.setXYZ(m,o.x,o.y,o.z),n.setXYZ(_,c.x,c.y,c.z),n.setXYZ(g,l.x,l.y,l.z)}else for(let d=0,f=e.count;d<f;d+=3)i.fromBufferAttribute(e,d+0),s.fromBufferAttribute(e,d+1),a.fromBufferAttribute(e,d+2),h.subVectors(a,s),u.subVectors(i,s),h.cross(u),n.setXYZ(d+0,h.x,h.y,h.z),n.setXYZ(d+1,h.x,h.y,h.z),n.setXYZ(d+2,h.x,h.y,h.z);this.normalizeNormals(),n.needsUpdate=!0}}normalizeNormals(){let t=this.attributes.normal;for(let e=0,n=t.count;e<n;e++)Me.fromBufferAttribute(t,e),Me.normalize(),t.setXYZ(e,Me.x,Me.y,Me.z)}toNonIndexed(){function t(o,c){let l=o.array,h=o.itemSize,u=o.normalized,d=new l.constructor(c.length*h),f=0,m=0;for(let _=0,g=c.length;_<g;_++){o.isInterleavedBufferAttribute?f=c[_]*o.data.stride+o.offset:f=c[_]*h;for(let p=0;p<h;p++)d[m++]=l[f++]}return new Jt(d,h,u)}if(this.index===null)return console.warn(\"THREE.BufferGeometry.toNonIndexed(): BufferGeometry is already non-indexed.\"),this;let e=new r,n=this.index.array,i=this.attributes;for(let o in i){let c=i[o],l=t(c,n);e.setAttribute(o,l)}let s=this.morphAttributes;for(let o in s){let c=[],l=s[o];for(let h=0,u=l.length;h<u;h++){let d=l[h],f=t(d,n);c.push(f)}e.morphAttributes[o]=c}e.morphTargetsRelative=this.morphTargetsRelative;let a=this.groups;for(let o=0,c=a.length;o<c;o++){let l=a[o];e.addGroup(l.start,l.count,l.materialIndex)}return e}toJSON(){let 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),this.parameters!==void 0){let c=this.parameters;for(let l in c)c[l]!==void 0&&(t[l]=c[l]);return t}t.data={attributes:{}};let e=this.index;e!==null&&(t.data.index={type:e.array.constructor.name,array:Array.prototype.slice.call(e.array)});let n=this.attributes;for(let c in n){let l=n[c];t.data.attributes[c]=l.toJSON(t.data)}let i={},s=!1;for(let c in this.morphAttributes){let l=this.morphAttributes[c],h=[];for(let u=0,d=l.length;u<d;u++){let f=l[u];h.push(f.toJSON(t.data))}h.length>0&&(i[c]=h,s=!0)}s&&(t.data.morphAttributes=i,t.data.morphTargetsRelative=this.morphTargetsRelative);let a=this.groups;a.length>0&&(t.data.groups=JSON.parse(JSON.stringify(a)));let o=this.boundingSphere;return o!==null&&(t.data.boundingSphere={center:o.center.toArray(),radius:o.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;let e={};this.name=t.name;let n=t.index;n!==null&&this.setIndex(n.clone(e));let i=t.attributes;for(let l in i){let h=i[l];this.setAttribute(l,h.clone(e))}let s=t.morphAttributes;for(let l in s){let h=[],u=s[l];for(let d=0,f=u.length;d<f;d++)h.push(u[d].clone(e));this.morphAttributes[l]=h}this.morphTargetsRelative=t.morphTargetsRelative;let a=t.groups;for(let l=0,h=a.length;l<h;l++){let u=a[l];this.addGroup(u.start,u.count,u.materialIndex)}let o=t.boundingBox;o!==null&&(this.boundingBox=o.clone());let c=t.boundingSphere;return c!==null&&(this.boundingSphere=c.clone()),this.drawRange.start=t.drawRange.start,this.drawRange.count=t.drawRange.count,this.userData=t.userData,this}dispose(){this.dispatchEvent({type:\"dispose\"})}},bh=new It,Qn=new _i,or=new Ae,Eh=new w,Ui=new w,Di=new w,Ni=new w,ro=new w,cr=new w,lr=new Z,hr=new Z,ur=new Z,Ah=new w,Th=new w,wh=new w,dr=new w,fr=new w,ge=class extends Kt{constructor(t=new Wt,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),t.morphTargetInfluences!==void 0&&(this.morphTargetInfluences=t.morphTargetInfluences.slice()),t.morphTargetDictionary!==void 0&&(this.morphTargetDictionary=Object.assign({},t.morphTargetDictionary)),this.material=Array.isArray(t.material)?t.material.slice():t.material,this.geometry=t.geometry,this}updateMorphTargets(){let e=this.geometry.morphAttributes,n=Object.keys(e);if(n.length>0){let i=e[n[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,a=i.length;s<a;s++){let o=i[s].name||String(s);this.morphTargetInfluences.push(0),this.morphTargetDictionary[o]=s}}}}getVertexPosition(t,e){let n=this.geometry,i=n.attributes.position,s=n.morphAttributes.position,a=n.morphTargetsRelative;e.fromBufferAttribute(i,t);let o=this.morphTargetInfluences;if(s&&o){cr.set(0,0,0);for(let c=0,l=s.length;c<l;c++){let h=o[c],u=s[c];h!==0&&(ro.fromBufferAttribute(u,t),a?cr.addScaledVector(ro,h):cr.addScaledVector(ro.sub(e),h))}e.add(cr)}return e}raycast(t,e){let n=this.geometry,i=this.material,s=this.matrixWorld;i!==void 0&&(n.boundingSphere===null&&n.computeBoundingSphere(),or.copy(n.boundingSphere),or.applyMatrix4(s),Qn.copy(t.ray).recast(t.near),!(or.containsPoint(Qn.origin)===!1&&(Qn.intersectSphere(or,Eh)===null||Qn.origin.distanceToSquared(Eh)>(t.far-t.near)**2))&&(bh.copy(s).invert(),Qn.copy(t.ray).applyMatrix4(bh),!(n.boundingBox!==null&&Qn.intersectsBox(n.boundingBox)===!1)&&this._computeIntersections(t,e,Qn)))}_computeIntersections(t,e,n){let i,s=this.geometry,a=this.material,o=s.index,c=s.attributes.position,l=s.attributes.uv,h=s.attributes.uv1,u=s.attributes.normal,d=s.groups,f=s.drawRange;if(o!==null)if(Array.isArray(a))for(let m=0,_=d.length;m<_;m++){let g=d[m],p=a[g.materialIndex],v=Math.max(g.start,f.start),x=Math.min(o.count,Math.min(g.start+g.count,f.start+f.count));for(let y=v,C=x;y<C;y+=3){let T=o.getX(y),R=o.getX(y+1),U=o.getX(y+2);i=pr(this,p,t,n,l,h,u,T,R,U),i&&(i.faceIndex=Math.floor(y/3),i.face.materialIndex=g.materialIndex,e.push(i))}}else{let m=Math.max(0,f.start),_=Math.min(o.count,f.start+f.count);for(let g=m,p=_;g<p;g+=3){let v=o.getX(g),x=o.getX(g+1),y=o.getX(g+2);i=pr(this,a,t,n,l,h,u,v,x,y),i&&(i.faceIndex=Math.floor(g/3),e.push(i))}}else if(c!==void 0)if(Array.isArray(a))for(let m=0,_=d.length;m<_;m++){let g=d[m],p=a[g.materialIndex],v=Math.max(g.start,f.start),x=Math.min(c.count,Math.min(g.start+g.count,f.start+f.count));for(let y=v,C=x;y<C;y+=3){let T=y,R=y+1,U=y+2;i=pr(this,p,t,n,l,h,u,T,R,U),i&&(i.faceIndex=Math.floor(y/3),i.face.materialIndex=g.materialIndex,e.push(i))}}else{let m=Math.max(0,f.start),_=Math.min(c.count,f.start+f.count);for(let g=m,p=_;g<p;g+=3){let v=g,x=g+1,y=g+2;i=pr(this,a,t,n,l,h,u,v,x,y),i&&(i.faceIndex=Math.floor(g/3),e.push(i))}}}};function Vp(r,t,e,n,i,s,a,o){let c;if(t.side===He?c=n.intersectTriangle(a,s,i,!0,o):c=n.intersectTriangle(i,s,a,t.side===Wn,o),c===null)return null;fr.copy(o),fr.applyMatrix4(r.matrixWorld);let l=e.ray.origin.distanceTo(fr);return l<e.near||l>e.far?null:{distance:l,point:fr.clone(),object:r}}function pr(r,t,e,n,i,s,a,o,c,l){r.getVertexPosition(o,Ui),r.getVertexPosition(c,Di),r.getVertexPosition(l,Ni);let h=Vp(r,t,e,n,Ui,Di,Ni,dr);if(h){i&&(lr.fromBufferAttribute(i,o),hr.fromBufferAttribute(i,c),ur.fromBufferAttribute(i,l),h.uv=Fn.getInterpolation(dr,Ui,Di,Ni,lr,hr,ur,new Z)),s&&(lr.fromBufferAttribute(s,o),hr.fromBufferAttribute(s,c),ur.fromBufferAttribute(s,l),h.uv1=Fn.getInterpolation(dr,Ui,Di,Ni,lr,hr,ur,new Z),h.uv2=h.uv1),a&&(Ah.fromBufferAttribute(a,o),Th.fromBufferAttribute(a,c),wh.fromBufferAttribute(a,l),h.normal=Fn.getInterpolation(dr,Ui,Di,Ni,Ah,Th,wh,new w),h.normal.dot(n.direction)>0&&h.normal.multiplyScalar(-1));let u={a:o,b:c,c:l,normal:new w,materialIndex:0};Fn.getNormal(Ui,Di,Ni,u.normal),h.face=u}return h}var ns=class r extends Wt{constructor(t=1,e=1,n=1,i=1,s=1,a=1){super(),this.type=\"BoxGeometry\",this.parameters={width:t,height:e,depth:n,widthSegments:i,heightSegments:s,depthSegments:a};let o=this;i=Math.floor(i),s=Math.floor(s),a=Math.floor(a);let c=[],l=[],h=[],u=[],d=0,f=0;m(\"z\",\"y\",\"x\",-1,-1,n,e,t,a,s,0),m(\"z\",\"y\",\"x\",1,-1,n,e,-t,a,s,1),m(\"x\",\"z\",\"y\",1,1,t,n,e,i,a,2),m(\"x\",\"z\",\"y\",1,-1,t,n,-e,i,a,3),m(\"x\",\"y\",\"z\",1,-1,t,e,n,i,s,4),m(\"x\",\"y\",\"z\",-1,-1,t,e,-n,i,s,5),this.setIndex(c),this.setAttribute(\"position\",new xt(l,3)),this.setAttribute(\"normal\",new xt(h,3)),this.setAttribute(\"uv\",new xt(u,2));function m(_,g,p,v,x,y,C,T,R,U,S){let E=y/R,N=C/U,G=y/2,it=C/2,I=T/2,F=R+1,k=U+1,J=0,Y=0,W=new w;for(let tt=0;tt<k;tt++){let et=tt*N-it;for(let ut=0;ut<F;ut++){let H=ut*E-G;W[_]=H*v,W[g]=et*x,W[p]=I,l.push(W.x,W.y,W.z),W[_]=0,W[g]=0,W[p]=T>0?1:-1,h.push(W.x,W.y,W.z),u.push(ut/R),u.push(1-tt/U),J+=1}}for(let tt=0;tt<U;tt++)for(let et=0;et<R;et++){let ut=d+et+F*tt,H=d+et+F*(tt+1),K=d+(et+1)+F*(tt+1),dt=d+(et+1)+F*tt;c.push(ut,H,dt),c.push(H,K,dt),Y+=6}o.addGroup(f,Y,S),f+=Y,d+=J}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new r(t.width,t.height,t.depth,t.widthSegments,t.heightSegments,t.depthSegments)}};function is(r){let t={};for(let e in r){t[e]={};for(let n in r[e]){let i=r[e][n];i&&(i.isColor||i.isMatrix3||i.isMatrix4||i.isVector2||i.isVector3||i.isVector4||i.isTexture||i.isQuaternion)?i.isRenderTargetTexture?(console.warn(\"UniformsUtils: Textures of render targets cannot be cloned via cloneUniforms() or mergeUniforms().\"),t[e][n]=null):t[e][n]=i.clone():Array.isArray(i)?t[e][n]=i.slice():t[e][n]=i}}return t}function Oe(r){let t={};for(let e=0;e<r.length;e++){let n=is(r[e]);for(let i in n)t[i]=n[i]}return t}function kp(r){let t=[];for(let e=0;e<r.length;e++)t.push(r[e].clone());return t}function Hd(r){return r.getRenderTarget()===null?r.outputColorSpace:jt.workingColorSpace}var Hp={clone:is,merge:Oe},Gp=`void main() {\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}`,Wp=`void main() {\n\tgl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );\n}`,sn=class extends Te{constructor(t){super(),this.isShaderMaterial=!0,this.type=\"ShaderMaterial\",this.defines={},this.uniforms={},this.uniformsGroups=[],this.vertexShader=Gp,this.fragmentShader=Wp,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,t!==void 0&&this.setValues(t)}copy(t){return super.copy(t),this.fragmentShader=t.fragmentShader,this.vertexShader=t.vertexShader,this.uniforms=is(t.uniforms),this.uniformsGroups=kp(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){let e=super.toJSON(t);e.glslVersion=this.glslVersion,e.uniforms={};for(let i in this.uniforms){let a=this.uniforms[i].value;a&&a.isTexture?e.uniforms[i]={type:\"t\",value:a.toJSON(t).uuid}:a&&a.isColor?e.uniforms[i]={type:\"c\",value:a.getHex()}:a&&a.isVector2?e.uniforms[i]={type:\"v2\",value:a.toArray()}:a&&a.isVector3?e.uniforms[i]={type:\"v3\",value:a.toArray()}:a&&a.isVector4?e.uniforms[i]={type:\"v4\",value:a.toArray()}:a&&a.isMatrix3?e.uniforms[i]={type:\"m3\",value:a.toArray()}:a&&a.isMatrix4?e.uniforms[i]={type:\"m4\",value:a.toArray()}:e.uniforms[i]={value:a}}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;let n={};for(let i in this.extensions)this.extensions[i]===!0&&(n[i]=!0);return Object.keys(n).length>0&&(e.extensions=n),e}},Fs=class extends Kt{constructor(){super(),this.isCamera=!0,this.type=\"Camera\",this.matrixWorldInverse=new It,this.projectionMatrix=new It,this.projectionMatrixInverse=new It,this.coordinateSystem=ln}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)}},be=class extends Fs{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=t.view===null?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this}setFocalLength(t){let e=.5*this.getFilmHeight()/t;this.fov=es*2*Math.atan(e),this.updateProjectionMatrix()}getFocalLength(){let t=Math.tan(pi*.5*this.fov);return .5*this.getFilmHeight()/t}getEffectiveFOV(){return es*2*Math.atan(Math.tan(pi*.5*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,s,a){this.aspect=t/e,this.view===null&&(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=s,this.view.height=a,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){let t=this.near,e=t*Math.tan(pi*.5*this.fov)/this.zoom,n=2*e,i=this.aspect*n,s=-.5*i,a=this.view;if(this.view!==null&&this.view.enabled){let c=a.fullWidth,l=a.fullHeight;s+=a.offsetX*i/c,e-=a.offsetY*n/l,i*=a.width/c,n*=a.height/l}let o=this.filmOffset;o!==0&&(s+=t*o/this.getFilmWidth()),this.projectionMatrix.makePerspective(s,s+i,e,e-n,t,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){let 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,this.view!==null&&(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}},Oi=-90,Fi=1,Uo=class extends Kt{constructor(t,e,n){super(),this.type=\"CubeCamera\",this.renderTarget=n,this.coordinateSystem=null,this.activeMipmapLevel=0;let i=new be(Oi,Fi,t,e);i.layers=this.layers,this.add(i);let s=new be(Oi,Fi,t,e);s.layers=this.layers,this.add(s);let a=new be(Oi,Fi,t,e);a.layers=this.layers,this.add(a);let o=new be(Oi,Fi,t,e);o.layers=this.layers,this.add(o);let c=new be(Oi,Fi,t,e);c.layers=this.layers,this.add(c);let l=new be(Oi,Fi,t,e);l.layers=this.layers,this.add(l)}updateCoordinateSystem(){let t=this.coordinateSystem,e=this.children.concat(),[n,i,s,a,o,c]=e;for(let l of e)this.remove(l);if(t===ln)n.up.set(0,1,0),n.lookAt(1,0,0),i.up.set(0,1,0),i.lookAt(-1,0,0),s.up.set(0,0,-1),s.lookAt(0,1,0),a.up.set(0,0,1),a.lookAt(0,-1,0),o.up.set(0,1,0),o.lookAt(0,0,1),c.up.set(0,1,0),c.lookAt(0,0,-1);else if(t===Us)n.up.set(0,-1,0),n.lookAt(-1,0,0),i.up.set(0,-1,0),i.lookAt(1,0,0),s.up.set(0,0,1),s.lookAt(0,1,0),a.up.set(0,0,-1),a.lookAt(0,-1,0),o.up.set(0,-1,0),o.lookAt(0,0,1),c.up.set(0,-1,0),c.lookAt(0,0,-1);else throw new Error(\"THREE.CubeCamera.updateCoordinateSystem(): Invalid coordinate system: \"+t);for(let l of e)this.add(l),l.updateMatrixWorld()}update(t,e){this.parent===null&&this.updateMatrixWorld();let{renderTarget:n,activeMipmapLevel:i}=this;this.coordinateSystem!==t.coordinateSystem&&(this.coordinateSystem=t.coordinateSystem,this.updateCoordinateSystem());let[s,a,o,c,l,h]=this.children,u=t.getRenderTarget(),d=t.getActiveCubeFace(),f=t.getActiveMipmapLevel(),m=t.xr.enabled;t.xr.enabled=!1;let _=n.texture.generateMipmaps;n.texture.generateMipmaps=!1,t.setRenderTarget(n,0,i),t.render(e,s),t.setRenderTarget(n,1,i),t.render(e,a),t.setRenderTarget(n,2,i),t.render(e,o),t.setRenderTarget(n,3,i),t.render(e,c),t.setRenderTarget(n,4,i),t.render(e,l),n.texture.generateMipmaps=_,t.setRenderTarget(n,5,i),t.render(e,h),t.setRenderTarget(u,d,f),t.xr.enabled=m,n.texture.needsPMREMUpdate=!0}},ss=class extends Ee{constructor(t,e,n,i,s,a,o,c,l,h){t=t!==void 0?t:[],e=e!==void 0?e:Xn,super(t,e,n,i,s,a,o,c,l,h),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(t){this.image=t}},Do=class extends Ke{constructor(t=1,e={}){super(t,t,e),this.isWebGLCubeRenderTarget=!0;let n={width:t,height:t,depth:1},i=[n,n,n,n,n,n];e.encoding!==void 0&&(Rs(\"THREE.WebGLCubeRenderTarget: option.encoding has been replaced by option.colorSpace.\"),e.colorSpace=e.encoding===fi?Se:$e),this.texture=new ss(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=e.generateMipmaps!==void 0?e.generateMipmaps:!1,this.texture.minFilter=e.minFilter!==void 0?e.minFilter:me}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;let 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 ns(5,5,5),s=new sn({name:\"CubemapFromEquirect\",uniforms:is(n.uniforms),vertexShader:n.vertexShader,fragmentShader:n.fragmentShader,side:He,blending:zn});s.uniforms.tEquirect.value=e;let a=new ge(i,s),o=e.minFilter;return e.minFilter===gi&&(e.minFilter=me),new Uo(1,10,this).update(t,a),e.minFilter=o,a.geometry.dispose(),a.material.dispose(),this}clear(t,e,n,i){let s=t.getRenderTarget();for(let a=0;a<6;a++)t.setRenderTarget(this,a),t.clear(e,n,i);t.setRenderTarget(s)}},ao=new w,Xp=new w,qp=new Gt,yn=class{constructor(t=new w(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){let i=ao.subVectors(n,e).cross(Xp.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(i,t),this}copy(t){return this.normal.copy(t.normal),this.constant=t.constant,this}normalize(){let 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){let n=t.delta(ao),i=this.normal.dot(n);if(i===0)return this.distanceToPoint(t.start)===0?e.copy(t.start):null;let s=-(t.start.dot(this.normal)+this.constant)/i;return s<0||s>1?null:e.copy(t.start).addScaledVector(n,s)}intersectsLine(t){let 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){let n=e||qp.getNormalMatrix(t),i=this.coplanarPoint(ao).applyMatrix4(t),s=this.normal.applyMatrix3(n).normalize();return this.constant=-i.dot(s),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)}},jn=new Ae,mr=new w,rs=class{constructor(t=new yn,e=new yn,n=new yn,i=new yn,s=new yn,a=new yn){this.planes=[t,e,n,i,s,a]}set(t,e,n,i,s,a){let o=this.planes;return o[0].copy(t),o[1].copy(e),o[2].copy(n),o[3].copy(i),o[4].copy(s),o[5].copy(a),this}copy(t){let e=this.planes;for(let n=0;n<6;n++)e[n].copy(t.planes[n]);return this}setFromProjectionMatrix(t,e=ln){let n=this.planes,i=t.elements,s=i[0],a=i[1],o=i[2],c=i[3],l=i[4],h=i[5],u=i[6],d=i[7],f=i[8],m=i[9],_=i[10],g=i[11],p=i[12],v=i[13],x=i[14],y=i[15];if(n[0].setComponents(c-s,d-l,g-f,y-p).normalize(),n[1].setComponents(c+s,d+l,g+f,y+p).normalize(),n[2].setComponents(c+a,d+h,g+m,y+v).normalize(),n[3].setComponents(c-a,d-h,g-m,y-v).normalize(),n[4].setComponents(c-o,d-u,g-_,y-x).normalize(),e===ln)n[5].setComponents(c+o,d+u,g+_,y+x).normalize();else if(e===Us)n[5].setComponents(o,u,_,x).normalize();else throw new Error(\"THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: \"+e);return this}intersectsObject(t){if(t.boundingSphere!==void 0)t.boundingSphere===null&&t.computeBoundingSphere(),jn.copy(t.boundingSphere).applyMatrix4(t.matrixWorld);else{let e=t.geometry;e.boundingSphere===null&&e.computeBoundingSphere(),jn.copy(e.boundingSphere).applyMatrix4(t.matrixWorld)}return this.intersectsSphere(jn)}intersectsSprite(t){return jn.center.set(0,0,0),jn.radius=.7071067811865476,jn.applyMatrix4(t.matrixWorld),this.intersectsSphere(jn)}intersectsSphere(t){let e=this.planes,n=t.center,i=-t.radius;for(let s=0;s<6;s++)if(e[s].distanceToPoint(n)<i)return!1;return!0}intersectsBox(t){let e=this.planes;for(let n=0;n<6;n++){let i=e[n];if(mr.x=i.normal.x>0?t.max.x:t.min.x,mr.y=i.normal.y>0?t.max.y:t.min.y,mr.z=i.normal.z>0?t.max.z:t.min.z,i.distanceToPoint(mr)<0)return!1}return!0}containsPoint(t){let 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 Gd(){let r=null,t=!1,e=null,n=null;function i(s,a){e(s,a),n=r.requestAnimationFrame(i)}return{start:function(){t!==!0&&e!==null&&(n=r.requestAnimationFrame(i),t=!0)},stop:function(){r.cancelAnimationFrame(n),t=!1},setAnimationLoop:function(s){e=s},setContext:function(s){r=s}}}function Yp(r,t){let e=t.isWebGL2,n=new WeakMap;function i(l,h){let u=l.array,d=l.usage,f=u.byteLength,m=r.createBuffer();r.bindBuffer(h,m),r.bufferData(h,u,d),l.onUploadCallback();let _;if(u instanceof Float32Array)_=r.FLOAT;else if(u instanceof Uint16Array)if(l.isFloat16BufferAttribute)if(e)_=r.HALF_FLOAT;else throw new Error(\"THREE.WebGLAttributes: Usage of Float16BufferAttribute requires WebGL2.\");else _=r.UNSIGNED_SHORT;else if(u instanceof Int16Array)_=r.SHORT;else if(u instanceof Uint32Array)_=r.UNSIGNED_INT;else if(u instanceof Int32Array)_=r.INT;else if(u instanceof Int8Array)_=r.BYTE;else if(u instanceof Uint8Array)_=r.UNSIGNED_BYTE;else if(u instanceof Uint8ClampedArray)_=r.UNSIGNED_BYTE;else throw new Error(\"THREE.WebGLAttributes: Unsupported buffer data format: \"+u);return{buffer:m,type:_,bytesPerElement:u.BYTES_PER_ELEMENT,version:l.version,size:f}}function s(l,h,u){let d=h.array,f=h._updateRange,m=h.updateRanges;if(r.bindBuffer(u,l),f.count===-1&&m.length===0&&r.bufferSubData(u,0,d),m.length!==0){for(let _=0,g=m.length;_<g;_++){let p=m[_];e?r.bufferSubData(u,p.start*d.BYTES_PER_ELEMENT,d,p.start,p.count):r.bufferSubData(u,p.start*d.BYTES_PER_ELEMENT,d.subarray(p.start,p.start+p.count))}h.clearUpdateRanges()}f.count!==-1&&(e?r.bufferSubData(u,f.offset*d.BYTES_PER_ELEMENT,d,f.offset,f.count):r.bufferSubData(u,f.offset*d.BYTES_PER_ELEMENT,d.subarray(f.offset,f.offset+f.count)),f.count=-1),h.onUploadCallback()}function a(l){return l.isInterleavedBufferAttribute&&(l=l.data),n.get(l)}function o(l){l.isInterleavedBufferAttribute&&(l=l.data);let h=n.get(l);h&&(r.deleteBuffer(h.buffer),n.delete(l))}function c(l,h){if(l.isGLBufferAttribute){let d=n.get(l);(!d||d.version<l.version)&&n.set(l,{buffer:l.buffer,type:l.type,bytesPerElement:l.elementSize,version:l.version});return}l.isInterleavedBufferAttribute&&(l=l.data);let u=n.get(l);if(u===void 0)n.set(l,i(l,h));else if(u.version<l.version){if(u.size!==l.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.\");s(u.buffer,l,h),u.version=l.version}}return{get:a,remove:o,update:c}}var oa=class r extends Wt{constructor(t=1,e=1,n=1,i=1){super(),this.type=\"PlaneGeometry\",this.parameters={width:t,height:e,widthSegments:n,heightSegments:i};let s=t/2,a=e/2,o=Math.floor(n),c=Math.floor(i),l=o+1,h=c+1,u=t/o,d=e/c,f=[],m=[],_=[],g=[];for(let p=0;p<h;p++){let v=p*d-a;for(let x=0;x<l;x++){let y=x*u-s;m.push(y,-v,0),_.push(0,0,1),g.push(x/o),g.push(1-p/c)}}for(let p=0;p<c;p++)for(let v=0;v<o;v++){let x=v+l*p,y=v+l*(p+1),C=v+1+l*(p+1),T=v+1+l*p;f.push(x,y,T),f.push(y,C,T)}this.setIndex(f),this.setAttribute(\"position\",new xt(m,3)),this.setAttribute(\"normal\",new xt(_,3)),this.setAttribute(\"uv\",new xt(g,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new r(t.width,t.height,t.widthSegments,t.heightSegments)}},Zp=`#ifdef USE_ALPHAHASH\n\tif ( diffuseColor.a < getAlphaHashThreshold( vPosition ) ) discard;\n#endif`,Jp=`#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`,$p=`#ifdef USE_ALPHAMAP\n\tdiffuseColor.a *= texture2D( alphaMap, vAlphaMapUv ).g;\n#endif`,Kp=`#ifdef USE_ALPHAMAP\n\tuniform sampler2D alphaMap;\n#endif`,Qp=`#ifdef USE_ALPHATEST\n\tif ( diffuseColor.a < alphaTest ) discard;\n#endif`,jp=`#ifdef USE_ALPHATEST\n\tuniform float alphaTest;\n#endif`,tm=`#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`,em=`#ifdef USE_AOMAP\n\tuniform sampler2D aoMap;\n\tuniform float aoMapIntensity;\n#endif`,nm=`#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`,im=`#ifdef USE_BATCHING\n\tmat4 batchingMatrix = getBatchingMatrix( batchId );\n#endif`,sm=`vec3 transformed = vec3( position );\n#ifdef USE_ALPHAHASH\n\tvPosition = vec3( position );\n#endif`,rm=`vec3 objectNormal = vec3( normal );\n#ifdef USE_TANGENT\n\tvec3 objectTangent = vec3( tangent.xyz );\n#endif`,am=`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`,om=`#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`,cm=`#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`,lm=`#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`,hm=`#if NUM_CLIPPING_PLANES > 0\n\tvarying vec3 vClipPosition;\n\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\n#endif`,um=`#if NUM_CLIPPING_PLANES > 0\n\tvarying vec3 vClipPosition;\n#endif`,dm=`#if NUM_CLIPPING_PLANES > 0\n\tvClipPosition = - mvPosition.xyz;\n#endif`,fm=`#if defined( USE_COLOR_ALPHA )\n\tdiffuseColor *= vColor;\n#elif defined( USE_COLOR )\n\tdiffuseColor.rgb *= vColor;\n#endif`,pm=`#if defined( USE_COLOR_ALPHA )\n\tvarying vec4 vColor;\n#elif defined( USE_COLOR )\n\tvarying vec3 vColor;\n#endif`,mm=`#if defined( USE_COLOR_ALPHA )\n\tvarying vec4 vColor;\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\n\tvarying vec3 vColor;\n#endif`,gm=`#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`,_m=`#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`,xm=`#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`,vm=`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`,ym=`#ifdef USE_DISPLACEMENTMAP\n\tuniform sampler2D displacementMap;\n\tuniform float displacementScale;\n\tuniform float displacementBias;\n#endif`,Mm=`#ifdef USE_DISPLACEMENTMAP\n\ttransformed += normalize( objectNormal ) * ( texture2D( displacementMap, vDisplacementMapUv ).x * displacementScale + displacementBias );\n#endif`,Sm=`#ifdef USE_EMISSIVEMAP\n\tvec4 emissiveColor = texture2D( emissiveMap, vEmissiveMapUv );\n\ttotalEmissiveRadiance *= emissiveColor.rgb;\n#endif`,bm=`#ifdef USE_EMISSIVEMAP\n\tuniform sampler2D emissiveMap;\n#endif`,Em=\"gl_FragColor = linearToOutputTexel( gl_FragColor );\",Am=`\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}`,Tm=`#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`,wm=`#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`,Rm=`#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`,Cm=`#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`,Pm=`#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`,Lm=`#ifdef USE_FOG\n\tvFogDepth = - mvPosition.z;\n#endif`,Im=`#ifdef USE_FOG\n\tvarying float vFogDepth;\n#endif`,Um=`#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`,Dm=`#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`,Nm=`#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}`,Om=`#ifdef USE_LIGHTMAP\n\tvec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\n\tvec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity;\n\treflectedLight.indirectDiffuse += lightMapIrradiance;\n#endif`,Fm=`#ifdef USE_LIGHTMAP\n\tuniform sampler2D lightMap;\n\tuniform float lightMapIntensity;\n#endif`,Bm=`LambertMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularStrength = specularStrength;`,zm=`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`,Vm=`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`,km=`#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`,Hm=`ToonMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;`,Gm=`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`,Wm=`BlinnPhongMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularColor = specular;\nmaterial.specularShininess = shininess;\nmaterial.specularStrength = specularStrength;`,Xm=`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`,qm=`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`,Ym=`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}`,Zm=`\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`,Jm=`#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`,$m=`#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`,Km=`#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\n\tgl_FragDepthEXT = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\n#endif`,Qm=`#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\n\tuniform float logDepthBufFC;\n\tvarying float vFragDepth;\n\tvarying float vIsPerspective;\n#endif`,jm=`#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`,tg=`#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`,eg=`#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`,ng=`#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif`,ig=`#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`,sg=`#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`,rg=`float metalnessFactor = metalness;\n#ifdef USE_METALNESSMAP\n\tvec4 texelMetalness = texture2D( metalnessMap, vMetalnessMapUv );\n\tmetalnessFactor *= texelMetalness.b;\n#endif`,ag=`#ifdef USE_METALNESSMAP\n\tuniform sampler2D metalnessMap;\n#endif`,og=`#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`,cg=`#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`,lg=`#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`,hg=`#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`,ug=`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;`,dg=`#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`,fg=`#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`,pg=`#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`,mg=`#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`,gg=`#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`,_g=`#ifdef USE_CLEARCOAT\n\tvec3 clearcoatNormal = nonPerturbedNormal;\n#endif`,xg=`#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`,vg=`#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`,yg=`#ifdef USE_IRIDESCENCEMAP\n\tuniform sampler2D iridescenceMap;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n\tuniform sampler2D iridescenceThicknessMap;\n#endif`,Mg=`#ifdef OPAQUE\ndiffuseColor.a = 1.0;\n#endif\n#ifdef USE_TRANSMISSION\ndiffuseColor.a *= material.transmissionAlpha;\n#endif\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );`,Sg=`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}`,bg=`#ifdef PREMULTIPLIED_ALPHA\n\tgl_FragColor.rgb *= gl_FragColor.a;\n#endif`,Eg=`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;`,Ag=`#ifdef DITHERING\n\tgl_FragColor.rgb = dithering( gl_FragColor.rgb );\n#endif`,Tg=`#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`,wg=`float roughnessFactor = roughness;\n#ifdef USE_ROUGHNESSMAP\n\tvec4 texelRoughness = texture2D( roughnessMap, vRoughnessMapUv );\n\troughnessFactor *= texelRoughness.g;\n#endif`,Rg=`#ifdef USE_ROUGHNESSMAP\n\tuniform sampler2D roughnessMap;\n#endif`,Cg=`#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`,Pg=`#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`,Lg=`#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`,Ig=`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}`,Ug=`#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`,Dg=`#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`,Ng=`#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`,Og=`#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`,Fg=`float specularStrength;\n#ifdef USE_SPECULARMAP\n\tvec4 texelSpecular = texture2D( specularMap, vSpecularMapUv );\n\tspecularStrength = texelSpecular.r;\n#else\n\tspecularStrength = 1.0;\n#endif`,Bg=`#ifdef USE_SPECULARMAP\n\tuniform sampler2D specularMap;\n#endif`,zg=`#if defined( TONE_MAPPING )\n\tgl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\n#endif`,Vg=`#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; }`,kg=`#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`,Hg=`#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`,Gg=`#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`,Wg=`#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`,Xg=`#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`,qg=`#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`,Yg=`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}`,Zg=`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}`,Jg=`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}`,$g=`#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}`,Kg=`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}`,Qg=`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}`,jg=`#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}`,t_=`#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}`,e_=`#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}`,n_=`#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}`,i_=`varying vec3 vWorldDirection;\n#include <common>\nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include <begin_vertex>\n\t#include <project_vertex>\n}`,s_=`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}`,r_=`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}`,a_=`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}`,o_=`#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}`,c_=`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}`,l_=`#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}`,h_=`#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}`,u_=`#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}`,d_=`#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}`,f_=`#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}`,p_=`#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}`,m_=`#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}`,g_=`#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}`,__=`#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}`,x_=`#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}`,v_=`#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}`,y_=`#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}`,M_=`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}`,S_=`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}`,b_=`#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}`,E_=`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}`,A_=`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}`,T_=`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}`,kt={alphahash_fragment:Zp,alphahash_pars_fragment:Jp,alphamap_fragment:$p,alphamap_pars_fragment:Kp,alphatest_fragment:Qp,alphatest_pars_fragment:jp,aomap_fragment:tm,aomap_pars_fragment:em,batching_pars_vertex:nm,batching_vertex:im,begin_vertex:sm,beginnormal_vertex:rm,bsdfs:am,iridescence_fragment:om,bumpmap_pars_fragment:cm,clipping_planes_fragment:lm,clipping_planes_pars_fragment:hm,clipping_planes_pars_vertex:um,clipping_planes_vertex:dm,color_fragment:fm,color_pars_fragment:pm,color_pars_vertex:mm,color_vertex:gm,common:_m,cube_uv_reflection_fragment:xm,defaultnormal_vertex:vm,displacementmap_pars_vertex:ym,displacementmap_vertex:Mm,emissivemap_fragment:Sm,emissivemap_pars_fragment:bm,colorspace_fragment:Em,colorspace_pars_fragment:Am,envmap_fragment:Tm,envmap_common_pars_fragment:wm,envmap_pars_fragment:Rm,envmap_pars_vertex:Cm,envmap_physical_pars_fragment:km,envmap_vertex:Pm,fog_vertex:Lm,fog_pars_vertex:Im,fog_fragment:Um,fog_pars_fragment:Dm,gradientmap_pars_fragment:Nm,lightmap_fragment:Om,lightmap_pars_fragment:Fm,lights_lambert_fragment:Bm,lights_lambert_pars_fragment:zm,lights_pars_begin:Vm,lights_toon_fragment:Hm,lights_toon_pars_fragment:Gm,lights_phong_fragment:Wm,lights_phong_pars_fragment:Xm,lights_physical_fragment:qm,lights_physical_pars_fragment:Ym,lights_fragment_begin:Zm,lights_fragment_maps:Jm,lights_fragment_end:$m,logdepthbuf_fragment:Km,logdepthbuf_pars_fragment:Qm,logdepthbuf_pars_vertex:jm,logdepthbuf_vertex:tg,map_fragment:eg,map_pars_fragment:ng,map_particle_fragment:ig,map_particle_pars_fragment:sg,metalnessmap_fragment:rg,metalnessmap_pars_fragment:ag,morphcolor_vertex:og,morphnormal_vertex:cg,morphtarget_pars_vertex:lg,morphtarget_vertex:hg,normal_fragment_begin:ug,normal_fragment_maps:dg,normal_pars_fragment:fg,normal_pars_vertex:pg,normal_vertex:mg,normalmap_pars_fragment:gg,clearcoat_normal_fragment_begin:_g,clearcoat_normal_fragment_maps:xg,clearcoat_pars_fragment:vg,iridescence_pars_fragment:yg,opaque_fragment:Mg,packing:Sg,premultiplied_alpha_fragment:bg,project_vertex:Eg,dithering_fragment:Ag,dithering_pars_fragment:Tg,roughnessmap_fragment:wg,roughnessmap_pars_fragment:Rg,shadowmap_pars_fragment:Cg,shadowmap_pars_vertex:Pg,shadowmap_vertex:Lg,shadowmask_pars_fragment:Ig,skinbase_vertex:Ug,skinning_pars_vertex:Dg,skinning_vertex:Ng,skinnormal_vertex:Og,specularmap_fragment:Fg,specularmap_pars_fragment:Bg,tonemapping_fragment:zg,tonemapping_pars_fragment:Vg,transmission_fragment:kg,transmission_pars_fragment:Hg,uv_pars_fragment:Gg,uv_pars_vertex:Wg,uv_vertex:Xg,worldpos_vertex:qg,background_vert:Yg,background_frag:Zg,backgroundCube_vert:Jg,backgroundCube_frag:$g,cube_vert:Kg,cube_frag:Qg,depth_vert:jg,depth_frag:t_,distanceRGBA_vert:e_,distanceRGBA_frag:n_,equirect_vert:i_,equirect_frag:s_,linedashed_vert:r_,linedashed_frag:a_,meshbasic_vert:o_,meshbasic_frag:c_,meshlambert_vert:l_,meshlambert_frag:h_,meshmatcap_vert:u_,meshmatcap_frag:d_,meshnormal_vert:f_,meshnormal_frag:p_,meshphong_vert:m_,meshphong_frag:g_,meshphysical_vert:__,meshphysical_frag:x_,meshtoon_vert:v_,meshtoon_frag:y_,points_vert:M_,points_frag:S_,shadow_vert:b_,shadow_frag:E_,sprite_vert:A_,sprite_frag:T_},ot={common:{diffuse:{value:new pt(16777215)},opacity:{value:1},map:{value:null},mapTransform:{value:new Gt},alphaMap:{value:null},alphaMapTransform:{value:new Gt},alphaTest:{value:0}},specularmap:{specularMap:{value:null},specularMapTransform:{value:new Gt}},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 Gt}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1},lightMapTransform:{value:new Gt}},bumpmap:{bumpMap:{value:null},bumpMapTransform:{value:new Gt},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalMapTransform:{value:new Gt},normalScale:{value:new Z(1,1)}},displacementmap:{displacementMap:{value:null},displacementMapTransform:{value:new Gt},displacementScale:{value:1},displacementBias:{value:0}},emissivemap:{emissiveMap:{value:null},emissiveMapTransform:{value:new Gt}},metalnessmap:{metalnessMap:{value:null},metalnessMapTransform:{value:new Gt}},roughnessmap:{roughnessMap:{value:null},roughnessMapTransform:{value:new Gt}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new pt(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 pt(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaMapTransform:{value:new Gt},alphaTest:{value:0},uvTransform:{value:new Gt}},sprite:{diffuse:{value:new pt(16777215)},opacity:{value:1},center:{value:new Z(.5,.5)},rotation:{value:0},map:{value:null},mapTransform:{value:new Gt},alphaMap:{value:null},alphaMapTransform:{value:new Gt},alphaTest:{value:0}}},on={basic:{uniforms:Oe([ot.common,ot.specularmap,ot.envmap,ot.aomap,ot.lightmap,ot.fog]),vertexShader:kt.meshbasic_vert,fragmentShader:kt.meshbasic_frag},lambert:{uniforms:Oe([ot.common,ot.specularmap,ot.envmap,ot.aomap,ot.lightmap,ot.emissivemap,ot.bumpmap,ot.normalmap,ot.displacementmap,ot.fog,ot.lights,{emissive:{value:new pt(0)}}]),vertexShader:kt.meshlambert_vert,fragmentShader:kt.meshlambert_frag},phong:{uniforms:Oe([ot.common,ot.specularmap,ot.envmap,ot.aomap,ot.lightmap,ot.emissivemap,ot.bumpmap,ot.normalmap,ot.displacementmap,ot.fog,ot.lights,{emissive:{value:new pt(0)},specular:{value:new pt(1118481)},shininess:{value:30}}]),vertexShader:kt.meshphong_vert,fragmentShader:kt.meshphong_frag},standard:{uniforms:Oe([ot.common,ot.envmap,ot.aomap,ot.lightmap,ot.emissivemap,ot.bumpmap,ot.normalmap,ot.displacementmap,ot.roughnessmap,ot.metalnessmap,ot.fog,ot.lights,{emissive:{value:new pt(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:kt.meshphysical_vert,fragmentShader:kt.meshphysical_frag},toon:{uniforms:Oe([ot.common,ot.aomap,ot.lightmap,ot.emissivemap,ot.bumpmap,ot.normalmap,ot.displacementmap,ot.gradientmap,ot.fog,ot.lights,{emissive:{value:new pt(0)}}]),vertexShader:kt.meshtoon_vert,fragmentShader:kt.meshtoon_frag},matcap:{uniforms:Oe([ot.common,ot.bumpmap,ot.normalmap,ot.displacementmap,ot.fog,{matcap:{value:null}}]),vertexShader:kt.meshmatcap_vert,fragmentShader:kt.meshmatcap_frag},points:{uniforms:Oe([ot.points,ot.fog]),vertexShader:kt.points_vert,fragmentShader:kt.points_frag},dashed:{uniforms:Oe([ot.common,ot.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:kt.linedashed_vert,fragmentShader:kt.linedashed_frag},depth:{uniforms:Oe([ot.common,ot.displacementmap]),vertexShader:kt.depth_vert,fragmentShader:kt.depth_frag},normal:{uniforms:Oe([ot.common,ot.bumpmap,ot.normalmap,ot.displacementmap,{opacity:{value:1}}]),vertexShader:kt.meshnormal_vert,fragmentShader:kt.meshnormal_frag},sprite:{uniforms:Oe([ot.sprite,ot.fog]),vertexShader:kt.sprite_vert,fragmentShader:kt.sprite_frag},background:{uniforms:{uvTransform:{value:new Gt},t2D:{value:null},backgroundIntensity:{value:1}},vertexShader:kt.background_vert,fragmentShader:kt.background_frag},backgroundCube:{uniforms:{envMap:{value:null},flipEnvMap:{value:-1},backgroundBlurriness:{value:0},backgroundIntensity:{value:1}},vertexShader:kt.backgroundCube_vert,fragmentShader:kt.backgroundCube_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:kt.cube_vert,fragmentShader:kt.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:kt.equirect_vert,fragmentShader:kt.equirect_frag},distanceRGBA:{uniforms:Oe([ot.common,ot.displacementmap,{referencePosition:{value:new w},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:kt.distanceRGBA_vert,fragmentShader:kt.distanceRGBA_frag},shadow:{uniforms:Oe([ot.lights,ot.fog,{color:{value:new pt(0)},opacity:{value:1}}]),vertexShader:kt.shadow_vert,fragmentShader:kt.shadow_frag}};on.physical={uniforms:Oe([on.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatMapTransform:{value:new Gt},clearcoatNormalMap:{value:null},clearcoatNormalMapTransform:{value:new Gt},clearcoatNormalScale:{value:new Z(1,1)},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatRoughnessMapTransform:{value:new Gt},iridescence:{value:0},iridescenceMap:{value:null},iridescenceMapTransform:{value:new Gt},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},iridescenceThicknessMapTransform:{value:new Gt},sheen:{value:0},sheenColor:{value:new pt(0)},sheenColorMap:{value:null},sheenColorMapTransform:{value:new Gt},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},sheenRoughnessMapTransform:{value:new Gt},transmission:{value:0},transmissionMap:{value:null},transmissionMapTransform:{value:new Gt},transmissionSamplerSize:{value:new Z},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},thicknessMapTransform:{value:new Gt},attenuationDistance:{value:0},attenuationColor:{value:new pt(0)},specularColor:{value:new pt(1,1,1)},specularColorMap:{value:null},specularColorMapTransform:{value:new Gt},specularIntensity:{value:1},specularIntensityMap:{value:null},specularIntensityMapTransform:{value:new Gt},anisotropyVector:{value:new Z},anisotropyMap:{value:null},anisotropyMapTransform:{value:new Gt}}]),vertexShader:kt.meshphysical_vert,fragmentShader:kt.meshphysical_frag};var gr={r:0,b:0,g:0};function w_(r,t,e,n,i,s,a){let o=new pt(0),c=s===!0?0:1,l,h,u=null,d=0,f=null;function m(g,p){let v=!1,x=p.isScene===!0?p.background:null;x&&x.isTexture&&(x=(p.backgroundBlurriness>0?e:t).get(x)),x===null?_(o,c):x&&x.isColor&&(_(x,1),v=!0);let y=r.xr.getEnvironmentBlendMode();y===\"additive\"?n.buffers.color.setClear(0,0,0,1,a):y===\"alpha-blend\"&&n.buffers.color.setClear(0,0,0,0,a),(r.autoClear||v)&&r.clear(r.autoClearColor,r.autoClearDepth,r.autoClearStencil),x&&(x.isCubeTexture||x.mapping===Ys)?(h===void 0&&(h=new ge(new ns(1,1,1),new sn({name:\"BackgroundCubeMaterial\",uniforms:is(on.backgroundCube.uniforms),vertexShader:on.backgroundCube.vertexShader,fragmentShader:on.backgroundCube.fragmentShader,side:He,depthTest:!1,depthWrite:!1,fog:!1})),h.geometry.deleteAttribute(\"normal\"),h.geometry.deleteAttribute(\"uv\"),h.onBeforeRender=function(C,T,R){this.matrixWorld.copyPosition(R.matrixWorld)},Object.defineProperty(h.material,\"envMap\",{get:function(){return this.uniforms.envMap.value}}),i.update(h)),h.material.uniforms.envMap.value=x,h.material.uniforms.flipEnvMap.value=x.isCubeTexture&&x.isRenderTargetTexture===!1?-1:1,h.material.uniforms.backgroundBlurriness.value=p.backgroundBlurriness,h.material.uniforms.backgroundIntensity.value=p.backgroundIntensity,h.material.toneMapped=jt.getTransfer(x.colorSpace)!==se,(u!==x||d!==x.version||f!==r.toneMapping)&&(h.material.needsUpdate=!0,u=x,d=x.version,f=r.toneMapping),h.layers.enableAll(),g.unshift(h,h.geometry,h.material,0,0,null)):x&&x.isTexture&&(l===void 0&&(l=new ge(new oa(2,2),new sn({name:\"BackgroundMaterial\",uniforms:is(on.background.uniforms),vertexShader:on.background.vertexShader,fragmentShader:on.background.fragmentShader,side:Wn,depthTest:!1,depthWrite:!1,fog:!1})),l.geometry.deleteAttribute(\"normal\"),Object.defineProperty(l.material,\"map\",{get:function(){return this.uniforms.t2D.value}}),i.update(l)),l.material.uniforms.t2D.value=x,l.material.uniforms.backgroundIntensity.value=p.backgroundIntensity,l.material.toneMapped=jt.getTransfer(x.colorSpace)!==se,x.matrixAutoUpdate===!0&&x.updateMatrix(),l.material.uniforms.uvTransform.value.copy(x.matrix),(u!==x||d!==x.version||f!==r.toneMapping)&&(l.material.needsUpdate=!0,u=x,d=x.version,f=r.toneMapping),l.layers.enableAll(),g.unshift(l,l.geometry,l.material,0,0,null))}function _(g,p){g.getRGB(gr,Hd(r)),n.buffers.color.setClear(gr.r,gr.g,gr.b,p,a)}return{getClearColor:function(){return o},setClearColor:function(g,p=1){o.set(g),c=p,_(o,c)},getClearAlpha:function(){return c},setClearAlpha:function(g){c=g,_(o,c)},render:m}}function R_(r,t,e,n){let i=r.getParameter(r.MAX_VERTEX_ATTRIBS),s=n.isWebGL2?null:t.get(\"OES_vertex_array_object\"),a=n.isWebGL2||s!==null,o={},c=g(null),l=c,h=!1;function u(I,F,k,J,Y){let W=!1;if(a){let tt=_(J,k,F);l!==tt&&(l=tt,f(l.object)),W=p(I,J,k,Y),W&&v(I,J,k,Y)}else{let tt=F.wireframe===!0;(l.geometry!==J.id||l.program!==k.id||l.wireframe!==tt)&&(l.geometry=J.id,l.program=k.id,l.wireframe=tt,W=!0)}Y!==null&&e.update(Y,r.ELEMENT_ARRAY_BUFFER),(W||h)&&(h=!1,U(I,F,k,J),Y!==null&&r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,e.get(Y).buffer))}function d(){return n.isWebGL2?r.createVertexArray():s.createVertexArrayOES()}function f(I){return n.isWebGL2?r.bindVertexArray(I):s.bindVertexArrayOES(I)}function m(I){return n.isWebGL2?r.deleteVertexArray(I):s.deleteVertexArrayOES(I)}function _(I,F,k){let J=k.wireframe===!0,Y=o[I.id];Y===void 0&&(Y={},o[I.id]=Y);let W=Y[F.id];W===void 0&&(W={},Y[F.id]=W);let tt=W[J];return tt===void 0&&(tt=g(d()),W[J]=tt),tt}function g(I){let F=[],k=[],J=[];for(let Y=0;Y<i;Y++)F[Y]=0,k[Y]=0,J[Y]=0;return{geometry:null,program:null,wireframe:!1,newAttributes:F,enabledAttributes:k,attributeDivisors:J,object:I,attributes:{},index:null}}function p(I,F,k,J){let Y=l.attributes,W=F.attributes,tt=0,et=k.getAttributes();for(let ut in et)if(et[ut].location>=0){let K=Y[ut],dt=W[ut];if(dt===void 0&&(ut===\"instanceMatrix\"&&I.instanceMatrix&&(dt=I.instanceMatrix),ut===\"instanceColor\"&&I.instanceColor&&(dt=I.instanceColor)),K===void 0||K.attribute!==dt||dt&&K.data!==dt.data)return!0;tt++}return l.attributesNum!==tt||l.index!==J}function v(I,F,k,J){let Y={},W=F.attributes,tt=0,et=k.getAttributes();for(let ut in et)if(et[ut].location>=0){let K=W[ut];K===void 0&&(ut===\"instanceMatrix\"&&I.instanceMatrix&&(K=I.instanceMatrix),ut===\"instanceColor\"&&I.instanceColor&&(K=I.instanceColor));let dt={};dt.attribute=K,K&&K.data&&(dt.data=K.data),Y[ut]=dt,tt++}l.attributes=Y,l.attributesNum=tt,l.index=J}function x(){let I=l.newAttributes;for(let F=0,k=I.length;F<k;F++)I[F]=0}function y(I){C(I,0)}function C(I,F){let k=l.newAttributes,J=l.enabledAttributes,Y=l.attributeDivisors;k[I]=1,J[I]===0&&(r.enableVertexAttribArray(I),J[I]=1),Y[I]!==F&&((n.isWebGL2?r:t.get(\"ANGLE_instanced_arrays\"))[n.isWebGL2?\"vertexAttribDivisor\":\"vertexAttribDivisorANGLE\"](I,F),Y[I]=F)}function T(){let I=l.newAttributes,F=l.enabledAttributes;for(let k=0,J=F.length;k<J;k++)F[k]!==I[k]&&(r.disableVertexAttribArray(k),F[k]=0)}function R(I,F,k,J,Y,W,tt){tt===!0?r.vertexAttribIPointer(I,F,k,Y,W):r.vertexAttribPointer(I,F,k,J,Y,W)}function U(I,F,k,J){if(n.isWebGL2===!1&&(I.isInstancedMesh||J.isInstancedBufferGeometry)&&t.get(\"ANGLE_instanced_arrays\")===null)return;x();let Y=J.attributes,W=k.getAttributes(),tt=F.defaultAttributeValues;for(let et in W){let ut=W[et];if(ut.location>=0){let H=Y[et];if(H===void 0&&(et===\"instanceMatrix\"&&I.instanceMatrix&&(H=I.instanceMatrix),et===\"instanceColor\"&&I.instanceColor&&(H=I.instanceColor)),H!==void 0){let K=H.normalized,dt=H.itemSize,Mt=e.get(H);if(Mt===void 0)continue;let gt=Mt.buffer,Ct=Mt.type,Nt=Mt.bytesPerElement,St=n.isWebGL2===!0&&(Ct===r.INT||Ct===r.UNSIGNED_INT||H.gpuType===Pd);if(H.isInterleavedBufferAttribute){let Ut=H.data,P=Ut.stride,rt=H.offset;if(Ut.isInstancedInterleavedBuffer){for(let q=0;q<ut.locationSize;q++)C(ut.location+q,Ut.meshPerAttribute);I.isInstancedMesh!==!0&&J._maxInstanceCount===void 0&&(J._maxInstanceCount=Ut.meshPerAttribute*Ut.count)}else for(let q=0;q<ut.locationSize;q++)y(ut.location+q);r.bindBuffer(r.ARRAY_BUFFER,gt);for(let q=0;q<ut.locationSize;q++)R(ut.location+q,dt/ut.locationSize,Ct,K,P*Nt,(rt+dt/ut.locationSize*q)*Nt,St)}else{if(H.isInstancedBufferAttribute){for(let Ut=0;Ut<ut.locationSize;Ut++)C(ut.location+Ut,H.meshPerAttribute);I.isInstancedMesh!==!0&&J._maxInstanceCount===void 0&&(J._maxInstanceCount=H.meshPerAttribute*H.count)}else for(let Ut=0;Ut<ut.locationSize;Ut++)y(ut.location+Ut);r.bindBuffer(r.ARRAY_BUFFER,gt);for(let Ut=0;Ut<ut.locationSize;Ut++)R(ut.location+Ut,dt/ut.locationSize,Ct,K,dt*Nt,dt/ut.locationSize*Ut*Nt,St)}}else if(tt!==void 0){let K=tt[et];if(K!==void 0)switch(K.length){case 2:r.vertexAttrib2fv(ut.location,K);break;case 3:r.vertexAttrib3fv(ut.location,K);break;case 4:r.vertexAttrib4fv(ut.location,K);break;default:r.vertexAttrib1fv(ut.location,K)}}}}T()}function S(){G();for(let I in o){let F=o[I];for(let k in F){let J=F[k];for(let Y in J)m(J[Y].object),delete J[Y];delete F[k]}delete o[I]}}function E(I){if(o[I.id]===void 0)return;let F=o[I.id];for(let k in F){let J=F[k];for(let Y in J)m(J[Y].object),delete J[Y];delete F[k]}delete o[I.id]}function N(I){for(let F in o){let k=o[F];if(k[I.id]===void 0)continue;let J=k[I.id];for(let Y in J)m(J[Y].object),delete J[Y];delete k[I.id]}}function G(){it(),h=!0,l!==c&&(l=c,f(l.object))}function it(){c.geometry=null,c.program=null,c.wireframe=!1}return{setup:u,reset:G,resetDefaultState:it,dispose:S,releaseStatesOfGeometry:E,releaseStatesOfProgram:N,initAttributes:x,enableAttribute:y,disableUnusedAttributes:T}}function C_(r,t,e,n){let i=n.isWebGL2,s;function a(h){s=h}function o(h,u){r.drawArrays(s,h,u),e.update(u,s,1)}function c(h,u,d){if(d===0)return;let f,m;if(i)f=r,m=\"drawArraysInstanced\";else if(f=t.get(\"ANGLE_instanced_arrays\"),m=\"drawArraysInstancedANGLE\",f===null){console.error(\"THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.\");return}f[m](s,h,u,d),e.update(u,s,d)}function l(h,u,d){if(d===0)return;let f=t.get(\"WEBGL_multi_draw\");if(f===null)for(let m=0;m<d;m++)this.render(h[m],u[m]);else{f.multiDrawArraysWEBGL(s,h,0,u,0,d);let m=0;for(let _=0;_<d;_++)m+=u[_];e.update(m,s,1)}}this.setMode=a,this.render=o,this.renderInstances=c,this.renderMultiDraw=l}function P_(r,t,e){let n;function i(){if(n!==void 0)return n;if(t.has(\"EXT_texture_filter_anisotropic\")===!0){let R=t.get(\"EXT_texture_filter_anisotropic\");n=r.getParameter(R.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else n=0;return n}function s(R){if(R===\"highp\"){if(r.getShaderPrecisionFormat(r.VERTEX_SHADER,r.HIGH_FLOAT).precision>0&&r.getShaderPrecisionFormat(r.FRAGMENT_SHADER,r.HIGH_FLOAT).precision>0)return\"highp\";R=\"mediump\"}return R===\"mediump\"&&r.getShaderPrecisionFormat(r.VERTEX_SHADER,r.MEDIUM_FLOAT).precision>0&&r.getShaderPrecisionFormat(r.FRAGMENT_SHADER,r.MEDIUM_FLOAT).precision>0?\"mediump\":\"lowp\"}let a=typeof WebGL2RenderingContext<\"u\"&&r.constructor.name===\"WebGL2RenderingContext\",o=e.precision!==void 0?e.precision:\"highp\",c=s(o);c!==o&&(console.warn(\"THREE.WebGLRenderer:\",o,\"not supported, using\",c,\"instead.\"),o=c);let l=a||t.has(\"WEBGL_draw_buffers\"),h=e.logarithmicDepthBuffer===!0,u=r.getParameter(r.MAX_TEXTURE_IMAGE_UNITS),d=r.getParameter(r.MAX_VERTEX_TEXTURE_IMAGE_UNITS),f=r.getParameter(r.MAX_TEXTURE_SIZE),m=r.getParameter(r.MAX_CUBE_MAP_TEXTURE_SIZE),_=r.getParameter(r.MAX_VERTEX_ATTRIBS),g=r.getParameter(r.MAX_VERTEX_UNIFORM_VECTORS),p=r.getParameter(r.MAX_VARYING_VECTORS),v=r.getParameter(r.MAX_FRAGMENT_UNIFORM_VECTORS),x=d>0,y=a||t.has(\"OES_texture_float\"),C=x&&y,T=a?r.getParameter(r.MAX_SAMPLES):0;return{isWebGL2:a,drawBuffers:l,getMaxAnisotropy:i,getMaxPrecision:s,precision:o,logarithmicDepthBuffer:h,maxTextures:u,maxVertexTextures:d,maxTextureSize:f,maxCubemapSize:m,maxAttributes:_,maxVertexUniforms:g,maxVaryings:p,maxFragmentUniforms:v,vertexTextures:x,floatFragmentTextures:y,floatVertexTextures:C,maxSamples:T}}function L_(r){let t=this,e=null,n=0,i=!1,s=!1,a=new yn,o=new Gt,c={value:null,needsUpdate:!1};this.uniform=c,this.numPlanes=0,this.numIntersection=0,this.init=function(u,d){let f=u.length!==0||d||n!==0||i;return i=d,n=u.length,f},this.beginShadows=function(){s=!0,h(null)},this.endShadows=function(){s=!1},this.setGlobalState=function(u,d){e=h(u,d,0)},this.setState=function(u,d,f){let m=u.clippingPlanes,_=u.clipIntersection,g=u.clipShadows,p=r.get(u);if(!i||m===null||m.length===0||s&&!g)s?h(null):l();else{let v=s?0:n,x=v*4,y=p.clippingState||null;c.value=y,y=h(m,d,x,f);for(let C=0;C!==x;++C)y[C]=e[C];p.clippingState=y,this.numIntersection=_?this.numPlanes:0,this.numPlanes+=v}};function l(){c.value!==e&&(c.value=e,c.needsUpdate=n>0),t.numPlanes=n,t.numIntersection=0}function h(u,d,f,m){let _=u!==null?u.length:0,g=null;if(_!==0){if(g=c.value,m!==!0||g===null){let p=f+_*4,v=d.matrixWorldInverse;o.getNormalMatrix(v),(g===null||g.length<p)&&(g=new Float32Array(p));for(let x=0,y=f;x!==_;++x,y+=4)a.copy(u[x]).applyMatrix4(v,o),a.normal.toArray(g,y),g[y+3]=a.constant}c.value=g,c.needsUpdate=!0}return t.numPlanes=_,t.numIntersection=0,g}}function I_(r){let t=new WeakMap;function e(a,o){return o===Wr?a.mapping=Xn:o===Xr&&(a.mapping=mi),a}function n(a){if(a&&a.isTexture){let o=a.mapping;if(o===Wr||o===Xr)if(t.has(a)){let c=t.get(a).texture;return e(c,a.mapping)}else{let c=a.image;if(c&&c.height>0){let l=new Do(c.height/2);return l.fromEquirectangularTexture(r,a),t.set(a,l),a.addEventListener(\"dispose\",i),e(l.texture,a.mapping)}else return null}}return a}function i(a){let o=a.target;o.removeEventListener(\"dispose\",i);let c=t.get(o);c!==void 0&&(t.delete(o),c.dispose())}function s(){t=new WeakMap}return{get:n,dispose:s}}var Bs=class extends Fs{constructor(t=-1,e=1,n=1,i=-1,s=.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=s,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=t.view===null?null:Object.assign({},t.view),this}setViewOffset(t,e,n,i,s,a){this.view===null&&(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=s,this.view.height=a,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){let 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,s=n-t,a=n+t,o=i+e,c=i-e;if(this.view!==null&&this.view.enabled){let l=(this.right-this.left)/this.view.fullWidth/this.zoom,h=(this.top-this.bottom)/this.view.fullHeight/this.zoom;s+=l*this.view.offsetX,a=s+l*this.view.width,o-=h*this.view.offsetY,c=o-h*this.view.height}this.projectionMatrix.makeOrthographic(s,a,o,c,this.near,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){let 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,this.view!==null&&(e.object.view=Object.assign({},this.view)),e}},Zi=4,Rh=[.125,.215,.35,.446,.526,.582],ci=20,oo=new Bs,Ch=new pt,co=null,lo=0,ho=0,ai=(1+Math.sqrt(5))/2,Bi=1/ai,Ph=[new w(1,1,1),new w(-1,1,1),new w(1,1,-1),new w(-1,1,-1),new w(0,ai,Bi),new w(0,ai,-Bi),new w(Bi,0,ai),new w(-Bi,0,ai),new w(ai,Bi,0),new w(-ai,Bi,0)],ca=class{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){co=this._renderer.getRenderTarget(),lo=this._renderer.getActiveCubeFace(),ho=this._renderer.getActiveMipmapLevel(),this._setSize(256);let s=this._allocateTargets();return s.depthBuffer=!0,this._sceneToCubeUV(t,n,i,s),e>0&&this._blur(s,0,0,e),this._applyPMREM(s),this._cleanup(s),s}fromEquirectangular(t,e=null){return this._fromTexture(t,e)}fromCubemap(t,e=null){return this._fromTexture(t,e)}compileCubemapShader(){this._cubemapMaterial===null&&(this._cubemapMaterial=Uh(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){this._equirectMaterial===null&&(this._equirectMaterial=Ih(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),this._cubemapMaterial!==null&&this._cubemapMaterial.dispose(),this._equirectMaterial!==null&&this._equirectMaterial.dispose()}_setSize(t){this._lodMax=Math.floor(Math.log2(t)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){this._blurMaterial!==null&&this._blurMaterial.dispose(),this._pingPongRenderTarget!==null&&this._pingPongRenderTarget.dispose();for(let t=0;t<this._lodPlanes.length;t++)this._lodPlanes[t].dispose()}_cleanup(t){this._renderer.setRenderTarget(co,lo,ho),t.scissorTest=!1,_r(t,0,0,t.width,t.height)}_fromTexture(t,e){t.mapping===Xn||t.mapping===mi?this._setSize(t.image.length===0?16:t.image[0].width||t.image[0].image.width):this._setSize(t.image.width/4),co=this._renderer.getRenderTarget(),lo=this._renderer.getActiveCubeFace(),ho=this._renderer.getActiveMipmapLevel();let n=e||this._allocateTargets();return this._textureToCubeUV(t,n),this._applyPMREM(n),this._cleanup(n),n}_allocateTargets(){let t=3*Math.max(this._cubeSize,112),e=4*this._cubeSize,n={magFilter:me,minFilter:me,generateMipmaps:!1,type:Is,format:qe,colorSpace:En,depthBuffer:!1},i=Lh(t,e,n);if(this._pingPongRenderTarget===null||this._pingPongRenderTarget.width!==t||this._pingPongRenderTarget.height!==e){this._pingPongRenderTarget!==null&&this._dispose(),this._pingPongRenderTarget=Lh(t,e,n);let{_lodMax:s}=this;({sizeLods:this._sizeLods,lodPlanes:this._lodPlanes,sigmas:this._sigmas}=U_(s)),this._blurMaterial=D_(s,t,e)}return i}_compileMaterial(t){let e=new ge(this._lodPlanes[0],t);this._renderer.compile(e,oo)}_sceneToCubeUV(t,e,n,i){let o=new be(90,1,e,n),c=[1,-1,1,1,1,1],l=[1,1,1,-1,-1,-1],h=this._renderer,u=h.autoClear,d=h.toneMapping;h.getClearColor(Ch),h.toneMapping=Vn,h.autoClear=!1;let f=new An({name:\"PMREM.Background\",side:He,depthWrite:!1,depthTest:!1}),m=new ge(new ns,f),_=!1,g=t.background;g?g.isColor&&(f.color.copy(g),t.background=null,_=!0):(f.color.copy(Ch),_=!0);for(let p=0;p<6;p++){let v=p%3;v===0?(o.up.set(0,c[p],0),o.lookAt(l[p],0,0)):v===1?(o.up.set(0,0,c[p]),o.lookAt(0,l[p],0)):(o.up.set(0,c[p],0),o.lookAt(0,0,l[p]));let x=this._cubeSize;_r(i,v*x,p>2?x:0,x,x),h.setRenderTarget(i),_&&h.render(m,o),h.render(t,o)}m.geometry.dispose(),m.material.dispose(),h.toneMapping=d,h.autoClear=u,t.background=g}_textureToCubeUV(t,e){let n=this._renderer,i=t.mapping===Xn||t.mapping===mi;i?(this._cubemapMaterial===null&&(this._cubemapMaterial=Uh()),this._cubemapMaterial.uniforms.flipEnvMap.value=t.isRenderTargetTexture===!1?-1:1):this._equirectMaterial===null&&(this._equirectMaterial=Ih());let s=i?this._cubemapMaterial:this._equirectMaterial,a=new ge(this._lodPlanes[0],s),o=s.uniforms;o.envMap.value=t;let c=this._cubeSize;_r(e,0,0,3*c,2*c),n.setRenderTarget(e),n.render(a,oo)}_applyPMREM(t){let e=this._renderer,n=e.autoClear;e.autoClear=!1;for(let i=1;i<this._lodPlanes.length;i++){let s=Math.sqrt(this._sigmas[i]*this._sigmas[i]-this._sigmas[i-1]*this._sigmas[i-1]),a=Ph[(i-1)%Ph.length];this._blur(t,i-1,i,s,a)}e.autoClear=n}_blur(t,e,n,i,s){let a=this._pingPongRenderTarget;this._halfBlur(t,a,e,n,i,\"latitudinal\",s),this._halfBlur(a,t,n,n,i,\"longitudinal\",s)}_halfBlur(t,e,n,i,s,a,o){let c=this._renderer,l=this._blurMaterial;a!==\"latitudinal\"&&a!==\"longitudinal\"&&console.error(\"blur direction must be either latitudinal or longitudinal!\");let h=3,u=new ge(this._lodPlanes[i],l),d=l.uniforms,f=this._sizeLods[n]-1,m=isFinite(s)?Math.PI/(2*f):2*Math.PI/(2*ci-1),_=s/m,g=isFinite(s)?1+Math.floor(h*_):ci;g>ci&&console.warn(`sigmaRadians, ${s}, is too large and will clip, as it requested ${g} samples when the maximum is set to ${ci}`);let p=[],v=0;for(let R=0;R<ci;++R){let U=R/_,S=Math.exp(-U*U/2);p.push(S),R===0?v+=S:R<g&&(v+=2*S)}for(let R=0;R<p.length;R++)p[R]=p[R]/v;d.envMap.value=t.texture,d.samples.value=g,d.weights.value=p,d.latitudinal.value=a===\"latitudinal\",o&&(d.poleAxis.value=o);let{_lodMax:x}=this;d.dTheta.value=m,d.mipInt.value=x-n;let y=this._sizeLods[i],C=3*y*(i>x-Zi?i-x+Zi:0),T=4*(this._cubeSize-y);_r(e,C,T,3*y,2*y),c.setRenderTarget(e),c.render(u,oo)}};function U_(r){let t=[],e=[],n=[],i=r,s=r-Zi+1+Rh.length;for(let a=0;a<s;a++){let o=Math.pow(2,i);e.push(o);let c=1/o;a>r-Zi?c=Rh[a-r+Zi-1]:a===0&&(c=0),n.push(c);let l=1/(o-2),h=-l,u=1+l,d=[h,h,u,h,u,u,h,h,u,u,h,u],f=6,m=6,_=3,g=2,p=1,v=new Float32Array(_*m*f),x=new Float32Array(g*m*f),y=new Float32Array(p*m*f);for(let T=0;T<f;T++){let R=T%3*2/3-1,U=T>2?0:-1,S=[R,U,0,R+2/3,U,0,R+2/3,U+1,0,R,U,0,R+2/3,U+1,0,R,U+1,0];v.set(S,_*m*T),x.set(d,g*m*T);let E=[T,T,T,T,T,T];y.set(E,p*m*T)}let C=new Wt;C.setAttribute(\"position\",new Jt(v,_)),C.setAttribute(\"uv\",new Jt(x,g)),C.setAttribute(\"faceIndex\",new Jt(y,p)),t.push(C),i>Zi&&i--}return{lodPlanes:t,sizeLods:e,sigmas:n}}function Lh(r,t,e){let n=new Ke(r,t,e);return n.texture.mapping=Ys,n.texture.name=\"PMREM.cubeUv\",n.scissorTest=!0,n}function _r(r,t,e,n,i){r.viewport.set(t,e,n,i),r.scissor.set(t,e,n,i)}function D_(r,t,e){let n=new Float32Array(ci),i=new w(0,1,0);return new sn({name:\"SphericalGaussianBlur\",defines:{n:ci,CUBEUV_TEXEL_WIDTH:1/t,CUBEUV_TEXEL_HEIGHT:1/e,CUBEUV_MAX_MIP:`${r}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:n},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:i}},vertexShader:hl(),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:zn,depthTest:!1,depthWrite:!1})}function Ih(){return new sn({name:\"EquirectangularToCubeUV\",uniforms:{envMap:{value:null}},vertexShader:hl(),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:zn,depthTest:!1,depthWrite:!1})}function Uh(){return new sn({name:\"CubemapToCubeUV\",uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:hl(),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:zn,depthTest:!1,depthWrite:!1})}function hl(){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 N_(r){let t=new WeakMap,e=null;function n(o){if(o&&o.isTexture){let c=o.mapping,l=c===Wr||c===Xr,h=c===Xn||c===mi;if(l||h)if(o.isRenderTargetTexture&&o.needsPMREMUpdate===!0){o.needsPMREMUpdate=!1;let u=t.get(o);return e===null&&(e=new ca(r)),u=l?e.fromEquirectangular(o,u):e.fromCubemap(o,u),t.set(o,u),u.texture}else{if(t.has(o))return t.get(o).texture;{let u=o.image;if(l&&u&&u.height>0||h&&u&&i(u)){e===null&&(e=new ca(r));let d=l?e.fromEquirectangular(o):e.fromCubemap(o);return t.set(o,d),o.addEventListener(\"dispose\",s),d.texture}else return null}}}return o}function i(o){let c=0,l=6;for(let h=0;h<l;h++)o[h]!==void 0&&c++;return c===l}function s(o){let c=o.target;c.removeEventListener(\"dispose\",s);let l=t.get(c);l!==void 0&&(t.delete(c),l.dispose())}function a(){t=new WeakMap,e!==null&&(e.dispose(),e=null)}return{get:n,dispose:a}}function O_(r){let t={};function e(n){if(t[n]!==void 0)return t[n];let i;switch(n){case\"WEBGL_depth_texture\":i=r.getExtension(\"WEBGL_depth_texture\")||r.getExtension(\"MOZ_WEBGL_depth_texture\")||r.getExtension(\"WEBKIT_WEBGL_depth_texture\");break;case\"EXT_texture_filter_anisotropic\":i=r.getExtension(\"EXT_texture_filter_anisotropic\")||r.getExtension(\"MOZ_EXT_texture_filter_anisotropic\")||r.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\");break;case\"WEBGL_compressed_texture_s3tc\":i=r.getExtension(\"WEBGL_compressed_texture_s3tc\")||r.getExtension(\"MOZ_WEBGL_compressed_texture_s3tc\")||r.getExtension(\"WEBKIT_WEBGL_compressed_texture_s3tc\");break;case\"WEBGL_compressed_texture_pvrtc\":i=r.getExtension(\"WEBGL_compressed_texture_pvrtc\")||r.getExtension(\"WEBKIT_WEBGL_compressed_texture_pvrtc\");break;default:i=r.getExtension(n)}return t[n]=i,i}return{has:function(n){return e(n)!==null},init:function(n){n.isWebGL2?(e(\"EXT_color_buffer_float\"),e(\"WEBGL_clip_cull_distance\")):(e(\"WEBGL_depth_texture\"),e(\"OES_texture_float\"),e(\"OES_texture_half_float\"),e(\"OES_texture_half_float_linear\"),e(\"OES_standard_derivatives\"),e(\"OES_element_index_uint\"),e(\"OES_vertex_array_object\"),e(\"ANGLE_instanced_arrays\")),e(\"OES_texture_float_linear\"),e(\"EXT_color_buffer_half_float\"),e(\"WEBGL_multisampled_render_to_texture\")},get:function(n){let i=e(n);return i===null&&console.warn(\"THREE.WebGLRenderer: \"+n+\" extension not supported.\"),i}}}function F_(r,t,e,n){let i={},s=new WeakMap;function a(u){let d=u.target;d.index!==null&&t.remove(d.index);for(let m in d.attributes)t.remove(d.attributes[m]);for(let m in d.morphAttributes){let _=d.morphAttributes[m];for(let g=0,p=_.length;g<p;g++)t.remove(_[g])}d.removeEventListener(\"dispose\",a),delete i[d.id];let f=s.get(d);f&&(t.remove(f),s.delete(d)),n.releaseStatesOfGeometry(d),d.isInstancedBufferGeometry===!0&&delete d._maxInstanceCount,e.memory.geometries--}function o(u,d){return i[d.id]===!0||(d.addEventListener(\"dispose\",a),i[d.id]=!0,e.memory.geometries++),d}function c(u){let d=u.attributes;for(let m in d)t.update(d[m],r.ARRAY_BUFFER);let f=u.morphAttributes;for(let m in f){let _=f[m];for(let g=0,p=_.length;g<p;g++)t.update(_[g],r.ARRAY_BUFFER)}}function l(u){let d=[],f=u.index,m=u.attributes.position,_=0;if(f!==null){let v=f.array;_=f.version;for(let x=0,y=v.length;x<y;x+=3){let C=v[x+0],T=v[x+1],R=v[x+2];d.push(C,T,T,R,R,C)}}else if(m!==void 0){let v=m.array;_=m.version;for(let x=0,y=v.length/3-1;x<y;x+=3){let C=x+0,T=x+1,R=x+2;d.push(C,T,T,R,R,C)}}else return;let g=new(Vd(d)?aa:ra)(d,1);g.version=_;let p=s.get(u);p&&t.remove(p),s.set(u,g)}function h(u){let d=s.get(u);if(d){let f=u.index;f!==null&&d.version<f.version&&l(u)}else l(u);return s.get(u)}return{get:o,update:c,getWireframeAttribute:h}}function B_(r,t,e,n){let i=n.isWebGL2,s;function a(f){s=f}let o,c;function l(f){o=f.type,c=f.bytesPerElement}function h(f,m){r.drawElements(s,m,o,f*c),e.update(m,s,1)}function u(f,m,_){if(_===0)return;let g,p;if(i)g=r,p=\"drawElementsInstanced\";else if(g=t.get(\"ANGLE_instanced_arrays\"),p=\"drawElementsInstancedANGLE\",g===null){console.error(\"THREE.WebGLIndexedBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.\");return}g[p](s,m,o,f*c,_),e.update(m,s,_)}function d(f,m,_){if(_===0)return;let g=t.get(\"WEBGL_multi_draw\");if(g===null)for(let p=0;p<_;p++)this.render(f[p]/c,m[p]);else{g.multiDrawElementsWEBGL(s,m,0,o,f,0,_);let p=0;for(let v=0;v<_;v++)p+=m[v];e.update(p,s,1)}}this.setMode=a,this.setIndex=l,this.render=h,this.renderInstances=u,this.renderMultiDraw=d}function z_(r){let t={geometries:0,textures:0},e={frame:0,calls:0,triangles:0,points:0,lines:0};function n(s,a,o){switch(e.calls++,a){case r.TRIANGLES:e.triangles+=o*(s/3);break;case r.LINES:e.lines+=o*(s/2);break;case r.LINE_STRIP:e.lines+=o*(s-1);break;case r.LINE_LOOP:e.lines+=o*s;break;case r.POINTS:e.points+=o*s;break;default:console.error(\"THREE.WebGLInfo: Unknown draw mode:\",a);break}}function i(){e.calls=0,e.triangles=0,e.points=0,e.lines=0}return{memory:t,render:e,programs:null,autoReset:!0,reset:i,update:n}}function V_(r,t){return r[0]-t[0]}function k_(r,t){return Math.abs(t[1])-Math.abs(r[1])}function H_(r,t,e){let n={},i=new Float32Array(8),s=new WeakMap,a=new te,o=[];for(let l=0;l<8;l++)o[l]=[l,0];function c(l,h,u){let d=l.morphTargetInfluences;if(t.isWebGL2===!0){let f=h.morphAttributes.position||h.morphAttributes.normal||h.morphAttributes.color,m=f!==void 0?f.length:0,_=s.get(h);if(_===void 0||_.count!==m){let I=function(){G.dispose(),s.delete(h),h.removeEventListener(\"dispose\",I)};_!==void 0&&_.texture.dispose();let v=h.morphAttributes.position!==void 0,x=h.morphAttributes.normal!==void 0,y=h.morphAttributes.color!==void 0,C=h.morphAttributes.position||[],T=h.morphAttributes.normal||[],R=h.morphAttributes.color||[],U=0;v===!0&&(U=1),x===!0&&(U=2),y===!0&&(U=3);let S=h.attributes.position.count*U,E=1;S>t.maxTextureSize&&(E=Math.ceil(S/t.maxTextureSize),S=t.maxTextureSize);let N=new Float32Array(S*E*4*m),G=new Ns(N,S,E,m);G.type=cn,G.needsUpdate=!0;let it=U*4;for(let F=0;F<m;F++){let k=C[F],J=T[F],Y=R[F],W=S*E*4*F;for(let tt=0;tt<k.count;tt++){let et=tt*it;v===!0&&(a.fromBufferAttribute(k,tt),N[W+et+0]=a.x,N[W+et+1]=a.y,N[W+et+2]=a.z,N[W+et+3]=0),x===!0&&(a.fromBufferAttribute(J,tt),N[W+et+4]=a.x,N[W+et+5]=a.y,N[W+et+6]=a.z,N[W+et+7]=0),y===!0&&(a.fromBufferAttribute(Y,tt),N[W+et+8]=a.x,N[W+et+9]=a.y,N[W+et+10]=a.z,N[W+et+11]=Y.itemSize===4?a.w:1)}}_={count:m,texture:G,size:new Z(S,E)},s.set(h,_),h.addEventListener(\"dispose\",I)}let g=0;for(let v=0;v<d.length;v++)g+=d[v];let p=h.morphTargetsRelative?1:1-g;u.getUniforms().setValue(r,\"morphTargetBaseInfluence\",p),u.getUniforms().setValue(r,\"morphTargetInfluences\",d),u.getUniforms().setValue(r,\"morphTargetsTexture\",_.texture,e),u.getUniforms().setValue(r,\"morphTargetsTextureSize\",_.size)}else{let f=d===void 0?0:d.length,m=n[h.id];if(m===void 0||m.length!==f){m=[];for(let x=0;x<f;x++)m[x]=[x,0];n[h.id]=m}for(let x=0;x<f;x++){let y=m[x];y[0]=x,y[1]=d[x]}m.sort(k_);for(let x=0;x<8;x++)x<f&&m[x][1]?(o[x][0]=m[x][0],o[x][1]=m[x][1]):(o[x][0]=Number.MAX_SAFE_INTEGER,o[x][1]=0);o.sort(V_);let _=h.morphAttributes.position,g=h.morphAttributes.normal,p=0;for(let x=0;x<8;x++){let y=o[x],C=y[0],T=y[1];C!==Number.MAX_SAFE_INTEGER&&T?(_&&h.getAttribute(\"morphTarget\"+x)!==_[C]&&h.setAttribute(\"morphTarget\"+x,_[C]),g&&h.getAttribute(\"morphNormal\"+x)!==g[C]&&h.setAttribute(\"morphNormal\"+x,g[C]),i[x]=T,p+=T):(_&&h.hasAttribute(\"morphTarget\"+x)===!0&&h.deleteAttribute(\"morphTarget\"+x),g&&h.hasAttribute(\"morphNormal\"+x)===!0&&h.deleteAttribute(\"morphNormal\"+x),i[x]=0)}let v=h.morphTargetsRelative?1:1-p;u.getUniforms().setValue(r,\"morphTargetBaseInfluence\",v),u.getUniforms().setValue(r,\"morphTargetInfluences\",i)}}return{update:c}}function G_(r,t,e,n){let i=new WeakMap;function s(c){let l=n.render.frame,h=c.geometry,u=t.get(c,h);if(i.get(u)!==l&&(t.update(u),i.set(u,l)),c.isInstancedMesh&&(c.hasEventListener(\"dispose\",o)===!1&&c.addEventListener(\"dispose\",o),i.get(c)!==l&&(e.update(c.instanceMatrix,r.ARRAY_BUFFER),c.instanceColor!==null&&e.update(c.instanceColor,r.ARRAY_BUFFER),i.set(c,l))),c.isSkinnedMesh){let d=c.skeleton;i.get(d)!==l&&(d.update(),i.set(d,l))}return u}function a(){i=new WeakMap}function o(c){let l=c.target;l.removeEventListener(\"dispose\",o),e.remove(l.instanceMatrix),l.instanceColor!==null&&e.remove(l.instanceColor)}return{update:s,dispose:a}}var la=class extends Ee{constructor(t,e,n,i,s,a,o,c,l,h){if(h=h!==void 0?h:di,h!==di&&h!==ts)throw new Error(\"DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat\");n===void 0&&h===di&&(n=Nn),n===void 0&&h===ts&&(n=ui),super(null,i,s,a,o,c,h,n,l),this.isDepthTexture=!0,this.image={width:t,height:e},this.magFilter=o!==void 0?o:pe,this.minFilter=c!==void 0?c:pe,this.flipY=!1,this.generateMipmaps=!1,this.compareFunction=null}copy(t){return super.copy(t),this.compareFunction=t.compareFunction,this}toJSON(t){let e=super.toJSON(t);return this.compareFunction!==null&&(e.compareFunction=this.compareFunction),e}},Wd=new Ee,Xd=new la(1,1);Xd.compareFunction=zd;var qd=new Ns,Yd=new ia,Zd=new ss,Dh=[],Nh=[],Oh=new Float32Array(16),Fh=new Float32Array(9),Bh=new Float32Array(4);function fs(r,t,e){let n=r[0];if(n<=0||n>0)return r;let i=t*e,s=Dh[i];if(s===void 0&&(s=new Float32Array(i),Dh[i]=s),t!==0){n.toArray(s,0);for(let a=1,o=0;a!==t;++a)o+=e,r[a].toArray(s,o)}return s}function _e(r,t){if(r.length!==t.length)return!1;for(let e=0,n=r.length;e<n;e++)if(r[e]!==t[e])return!1;return!0}function xe(r,t){for(let e=0,n=t.length;e<n;e++)r[e]=t[e]}function Ia(r,t){let e=Nh[t];e===void 0&&(e=new Int32Array(t),Nh[t]=e);for(let n=0;n!==t;++n)e[n]=r.allocateTextureUnit();return e}function W_(r,t){let e=this.cache;e[0]!==t&&(r.uniform1f(this.addr,t),e[0]=t)}function X_(r,t){let e=this.cache;if(t.x!==void 0)(e[0]!==t.x||e[1]!==t.y)&&(r.uniform2f(this.addr,t.x,t.y),e[0]=t.x,e[1]=t.y);else{if(_e(e,t))return;r.uniform2fv(this.addr,t),xe(e,t)}}function q_(r,t){let e=this.cache;if(t.x!==void 0)(e[0]!==t.x||e[1]!==t.y||e[2]!==t.z)&&(r.uniform3f(this.addr,t.x,t.y,t.z),e[0]=t.x,e[1]=t.y,e[2]=t.z);else if(t.r!==void 0)(e[0]!==t.r||e[1]!==t.g||e[2]!==t.b)&&(r.uniform3f(this.addr,t.r,t.g,t.b),e[0]=t.r,e[1]=t.g,e[2]=t.b);else{if(_e(e,t))return;r.uniform3fv(this.addr,t),xe(e,t)}}function Y_(r,t){let e=this.cache;if(t.x!==void 0)(e[0]!==t.x||e[1]!==t.y||e[2]!==t.z||e[3]!==t.w)&&(r.uniform4f(this.addr,t.x,t.y,t.z,t.w),e[0]=t.x,e[1]=t.y,e[2]=t.z,e[3]=t.w);else{if(_e(e,t))return;r.uniform4fv(this.addr,t),xe(e,t)}}function Z_(r,t){let e=this.cache,n=t.elements;if(n===void 0){if(_e(e,t))return;r.uniformMatrix2fv(this.addr,!1,t),xe(e,t)}else{if(_e(e,n))return;Bh.set(n),r.uniformMatrix2fv(this.addr,!1,Bh),xe(e,n)}}function J_(r,t){let e=this.cache,n=t.elements;if(n===void 0){if(_e(e,t))return;r.uniformMatrix3fv(this.addr,!1,t),xe(e,t)}else{if(_e(e,n))return;Fh.set(n),r.uniformMatrix3fv(this.addr,!1,Fh),xe(e,n)}}function $_(r,t){let e=this.cache,n=t.elements;if(n===void 0){if(_e(e,t))return;r.uniformMatrix4fv(this.addr,!1,t),xe(e,t)}else{if(_e(e,n))return;Oh.set(n),r.uniformMatrix4fv(this.addr,!1,Oh),xe(e,n)}}function K_(r,t){let e=this.cache;e[0]!==t&&(r.uniform1i(this.addr,t),e[0]=t)}function Q_(r,t){let e=this.cache;if(t.x!==void 0)(e[0]!==t.x||e[1]!==t.y)&&(r.uniform2i(this.addr,t.x,t.y),e[0]=t.x,e[1]=t.y);else{if(_e(e,t))return;r.uniform2iv(this.addr,t),xe(e,t)}}function j_(r,t){let e=this.cache;if(t.x!==void 0)(e[0]!==t.x||e[1]!==t.y||e[2]!==t.z)&&(r.uniform3i(this.addr,t.x,t.y,t.z),e[0]=t.x,e[1]=t.y,e[2]=t.z);else{if(_e(e,t))return;r.uniform3iv(this.addr,t),xe(e,t)}}function t0(r,t){let e=this.cache;if(t.x!==void 0)(e[0]!==t.x||e[1]!==t.y||e[2]!==t.z||e[3]!==t.w)&&(r.uniform4i(this.addr,t.x,t.y,t.z,t.w),e[0]=t.x,e[1]=t.y,e[2]=t.z,e[3]=t.w);else{if(_e(e,t))return;r.uniform4iv(this.addr,t),xe(e,t)}}function e0(r,t){let e=this.cache;e[0]!==t&&(r.uniform1ui(this.addr,t),e[0]=t)}function n0(r,t){let e=this.cache;if(t.x!==void 0)(e[0]!==t.x||e[1]!==t.y)&&(r.uniform2ui(this.addr,t.x,t.y),e[0]=t.x,e[1]=t.y);else{if(_e(e,t))return;r.uniform2uiv(this.addr,t),xe(e,t)}}function i0(r,t){let e=this.cache;if(t.x!==void 0)(e[0]!==t.x||e[1]!==t.y||e[2]!==t.z)&&(r.uniform3ui(this.addr,t.x,t.y,t.z),e[0]=t.x,e[1]=t.y,e[2]=t.z);else{if(_e(e,t))return;r.uniform3uiv(this.addr,t),xe(e,t)}}function s0(r,t){let e=this.cache;if(t.x!==void 0)(e[0]!==t.x||e[1]!==t.y||e[2]!==t.z||e[3]!==t.w)&&(r.uniform4ui(this.addr,t.x,t.y,t.z,t.w),e[0]=t.x,e[1]=t.y,e[2]=t.z,e[3]=t.w);else{if(_e(e,t))return;r.uniform4uiv(this.addr,t),xe(e,t)}}function r0(r,t,e){let n=this.cache,i=e.allocateTextureUnit();n[0]!==i&&(r.uniform1i(this.addr,i),n[0]=i);let s=this.type===r.SAMPLER_2D_SHADOW?Xd:Wd;e.setTexture2D(t||s,i)}function a0(r,t,e){let n=this.cache,i=e.allocateTextureUnit();n[0]!==i&&(r.uniform1i(this.addr,i),n[0]=i),e.setTexture3D(t||Yd,i)}function o0(r,t,e){let n=this.cache,i=e.allocateTextureUnit();n[0]!==i&&(r.uniform1i(this.addr,i),n[0]=i),e.setTextureCube(t||Zd,i)}function c0(r,t,e){let n=this.cache,i=e.allocateTextureUnit();n[0]!==i&&(r.uniform1i(this.addr,i),n[0]=i),e.setTexture2DArray(t||qd,i)}function l0(r){switch(r){case 5126:return W_;case 35664:return X_;case 35665:return q_;case 35666:return Y_;case 35674:return Z_;case 35675:return J_;case 35676:return $_;case 5124:case 35670:return K_;case 35667:case 35671:return Q_;case 35668:case 35672:return j_;case 35669:case 35673:return t0;case 5125:return e0;case 36294:return n0;case 36295:return i0;case 36296:return s0;case 35678:case 36198:case 36298:case 36306:case 35682:return r0;case 35679:case 36299:case 36307:return a0;case 35680:case 36300:case 36308:case 36293:return o0;case 36289:case 36303:case 36311:case 36292:return c0}}function h0(r,t){r.uniform1fv(this.addr,t)}function u0(r,t){let e=fs(t,this.size,2);r.uniform2fv(this.addr,e)}function d0(r,t){let e=fs(t,this.size,3);r.uniform3fv(this.addr,e)}function f0(r,t){let e=fs(t,this.size,4);r.uniform4fv(this.addr,e)}function p0(r,t){let e=fs(t,this.size,4);r.uniformMatrix2fv(this.addr,!1,e)}function m0(r,t){let e=fs(t,this.size,9);r.uniformMatrix3fv(this.addr,!1,e)}function g0(r,t){let e=fs(t,this.size,16);r.uniformMatrix4fv(this.addr,!1,e)}function _0(r,t){r.uniform1iv(this.addr,t)}function x0(r,t){r.uniform2iv(this.addr,t)}function v0(r,t){r.uniform3iv(this.addr,t)}function y0(r,t){r.uniform4iv(this.addr,t)}function M0(r,t){r.uniform1uiv(this.addr,t)}function S0(r,t){r.uniform2uiv(this.addr,t)}function b0(r,t){r.uniform3uiv(this.addr,t)}function E0(r,t){r.uniform4uiv(this.addr,t)}function A0(r,t,e){let n=this.cache,i=t.length,s=Ia(e,i);_e(n,s)||(r.uniform1iv(this.addr,s),xe(n,s));for(let a=0;a!==i;++a)e.setTexture2D(t[a]||Wd,s[a])}function T0(r,t,e){let n=this.cache,i=t.length,s=Ia(e,i);_e(n,s)||(r.uniform1iv(this.addr,s),xe(n,s));for(let a=0;a!==i;++a)e.setTexture3D(t[a]||Yd,s[a])}function w0(r,t,e){let n=this.cache,i=t.length,s=Ia(e,i);_e(n,s)||(r.uniform1iv(this.addr,s),xe(n,s));for(let a=0;a!==i;++a)e.setTextureCube(t[a]||Zd,s[a])}function R0(r,t,e){let n=this.cache,i=t.length,s=Ia(e,i);_e(n,s)||(r.uniform1iv(this.addr,s),xe(n,s));for(let a=0;a!==i;++a)e.setTexture2DArray(t[a]||qd,s[a])}function C0(r){switch(r){case 5126:return h0;case 35664:return u0;case 35665:return d0;case 35666:return f0;case 35674:return p0;case 35675:return m0;case 35676:return g0;case 5124:case 35670:return _0;case 35667:case 35671:return x0;case 35668:case 35672:return v0;case 35669:case 35673:return y0;case 5125:return M0;case 36294:return S0;case 36295:return b0;case 36296:return E0;case 35678:case 36198:case 36298:case 36306:case 35682:return A0;case 35679:case 36299:case 36307:return T0;case 35680:case 36300:case 36308:case 36293:return w0;case 36289:case 36303:case 36311:case 36292:return R0}}var No=class{constructor(t,e,n){this.id=t,this.addr=n,this.cache=[],this.type=e.type,this.setValue=l0(e.type)}},Oo=class{constructor(t,e,n){this.id=t,this.addr=n,this.cache=[],this.type=e.type,this.size=e.size,this.setValue=C0(e.type)}},Fo=class{constructor(t){this.id=t,this.seq=[],this.map={}}setValue(t,e,n){let i=this.seq;for(let s=0,a=i.length;s!==a;++s){let o=i[s];o.setValue(t,e[o.id],n)}}},uo=/(\\w+)(\\])?(\\[|\\.)?/g;function zh(r,t){r.seq.push(t),r.map[t.id]=t}function P0(r,t,e){let n=r.name,i=n.length;for(uo.lastIndex=0;;){let s=uo.exec(n),a=uo.lastIndex,o=s[1],c=s[2]===\"]\",l=s[3];if(c&&(o=o|0),l===void 0||l===\"[\"&&a+2===i){zh(e,l===void 0?new No(o,r,t):new Oo(o,r,t));break}else{let u=e.map[o];u===void 0&&(u=new Fo(o),zh(e,u)),e=u}}}var ji=class{constructor(t,e){this.seq=[],this.map={};let n=t.getProgramParameter(e,t.ACTIVE_UNIFORMS);for(let i=0;i<n;++i){let s=t.getActiveUniform(e,i),a=t.getUniformLocation(e,s.name);P0(s,a,this)}}setValue(t,e,n,i){let s=this.map[e];s!==void 0&&s.setValue(t,n,i)}setOptional(t,e,n){let i=e[n];i!==void 0&&this.setValue(t,n,i)}static upload(t,e,n,i){for(let s=0,a=e.length;s!==a;++s){let o=e[s],c=n[o.id];c.needsUpdate!==!1&&o.setValue(t,c.value,i)}}static seqWithValue(t,e){let n=[];for(let i=0,s=t.length;i!==s;++i){let a=t[i];a.id in e&&n.push(a)}return n}};function Vh(r,t,e){let n=r.createShader(t);return r.shaderSource(n,e),r.compileShader(n),n}var L0=37297,I0=0;function U0(r,t){let e=r.split(`\n`),n=[],i=Math.max(t-6,0),s=Math.min(t+6,e.length);for(let a=i;a<s;a++){let o=a+1;n.push(`${o===t?\">\":\" \"} ${o}: ${e[a]}`)}return n.join(`\n`)}function D0(r){let t=jt.getPrimaries(jt.workingColorSpace),e=jt.getPrimaries(r),n;switch(t===e?n=\"\":t===jr&&e===Qr?n=\"LinearDisplayP3ToLinearSRGB\":t===Qr&&e===jr&&(n=\"LinearSRGBToLinearDisplayP3\"),r){case En:case La:return[n,\"LinearTransferOETF\"];case Se:case cl:return[n,\"sRGBTransferOETF\"];default:return console.warn(\"THREE.WebGLProgram: Unsupported color space:\",r),[n,\"LinearTransferOETF\"]}}function kh(r,t,e){let n=r.getShaderParameter(t,r.COMPILE_STATUS),i=r.getShaderInfoLog(t).trim();if(n&&i===\"\")return\"\";let s=/ERROR: 0:(\\d+)/.exec(i);if(s){let a=parseInt(s[1]);return e.toUpperCase()+`\n\n`+i+`\n\n`+U0(r.getShaderSource(t),a)}else return i}function N0(r,t){let e=D0(t);return`vec4 ${r}( vec4 value ) { return ${e[0]}( ${e[1]}( value ) ); }`}function O0(r,t){let e;switch(t){case Of:e=\"Linear\";break;case Ff:e=\"Reinhard\";break;case Bf:e=\"OptimizedCineon\";break;case zf:e=\"ACESFilmic\";break;case kf:e=\"AgX\";break;case Vf:e=\"Custom\";break;default:console.warn(\"THREE.WebGLProgram: Unsupported toneMapping:\",t),e=\"Linear\"}return\"vec3 \"+r+\"( vec3 color ) { return \"+e+\"ToneMapping( color ); }\"}function F0(r){return[r.extensionDerivatives||r.envMapCubeUVHeight||r.bumpMap||r.normalMapTangentSpace||r.clearcoatNormalMap||r.flatShading||r.shaderID===\"physical\"?\"#extension GL_OES_standard_derivatives : enable\":\"\",(r.extensionFragDepth||r.logarithmicDepthBuffer)&&r.rendererExtensionFragDepth?\"#extension GL_EXT_frag_depth : enable\":\"\",r.extensionDrawBuffers&&r.rendererExtensionDrawBuffers?\"#extension GL_EXT_draw_buffers : require\":\"\",(r.extensionShaderTextureLOD||r.envMap||r.transmission)&&r.rendererExtensionShaderTextureLod?\"#extension GL_EXT_shader_texture_lod : enable\":\"\"].filter(Ji).join(`\n`)}function B0(r){return[r.extensionClipCullDistance?\"#extension GL_ANGLE_clip_cull_distance : require\":\"\"].filter(Ji).join(`\n`)}function z0(r){let t=[];for(let e in r){let n=r[e];n!==!1&&t.push(\"#define \"+e+\" \"+n)}return t.join(`\n`)}function V0(r,t){let e={},n=r.getProgramParameter(t,r.ACTIVE_ATTRIBUTES);for(let i=0;i<n;i++){let s=r.getActiveAttrib(t,i),a=s.name,o=1;s.type===r.FLOAT_MAT2&&(o=2),s.type===r.FLOAT_MAT3&&(o=3),s.type===r.FLOAT_MAT4&&(o=4),e[a]={type:s.type,location:r.getAttribLocation(t,a),locationSize:o}}return e}function Ji(r){return r!==\"\"}function Hh(r,t){let e=t.numSpotLightShadows+t.numSpotLightMaps-t.numSpotLightShadowsWithMaps;return r.replace(/NUM_DIR_LIGHTS/g,t.numDirLights).replace(/NUM_SPOT_LIGHTS/g,t.numSpotLights).replace(/NUM_SPOT_LIGHT_MAPS/g,t.numSpotLightMaps).replace(/NUM_SPOT_LIGHT_COORDS/g,e).replace(/NUM_RECT_AREA_LIGHTS/g,t.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,t.numPointLights).replace(/NUM_HEMI_LIGHTS/g,t.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,t.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS/g,t.numSpotLightShadowsWithMaps).replace(/NUM_SPOT_LIGHT_SHADOWS/g,t.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,t.numPointLightShadows)}function Gh(r,t){return r.replace(/NUM_CLIPPING_PLANES/g,t.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,t.numClippingPlanes-t.numClipIntersection)}var k0=/^[ \\t]*#include +<([\\w\\d./]+)>/gm;function Bo(r){return r.replace(k0,G0)}var H0=new Map([[\"encodings_fragment\",\"colorspace_fragment\"],[\"encodings_pars_fragment\",\"colorspace_pars_fragment\"],[\"output_fragment\",\"opaque_fragment\"]]);function G0(r,t){let e=kt[t];if(e===void 0){let n=H0.get(t);if(n!==void 0)e=kt[n],console.warn('THREE.WebGLRenderer: Shader chunk \"%s\" has been deprecated. Use \"%s\" instead.',t,n);else throw new Error(\"Can not resolve #include <\"+t+\">\")}return Bo(e)}var W0=/#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 Wh(r){return r.replace(W0,X0)}function X0(r,t,e,n){let i=\"\";for(let s=parseInt(t);s<parseInt(e);s++)i+=n.replace(/\\[\\s*i\\s*\\]/g,\"[ \"+s+\" ]\").replace(/UNROLLED_LOOP_INDEX/g,s);return i}function Xh(r){let t=\"precision \"+r.precision+` float;\nprecision `+r.precision+\" int;\";return r.precision===\"highp\"?t+=`\n#define HIGH_PRECISION`:r.precision===\"mediump\"?t+=`\n#define MEDIUM_PRECISION`:r.precision===\"lowp\"&&(t+=`\n#define LOW_PRECISION`),t}function q0(r){let t=\"SHADOWMAP_TYPE_BASIC\";return r.shadowMapType===Rd?t=\"SHADOWMAP_TYPE_PCF\":r.shadowMapType===hf?t=\"SHADOWMAP_TYPE_PCF_SOFT\":r.shadowMapType===vn&&(t=\"SHADOWMAP_TYPE_VSM\"),t}function Y0(r){let t=\"ENVMAP_TYPE_CUBE\";if(r.envMap)switch(r.envMapMode){case Xn:case mi:t=\"ENVMAP_TYPE_CUBE\";break;case Ys:t=\"ENVMAP_TYPE_CUBE_UV\";break}return t}function Z0(r){let t=\"ENVMAP_MODE_REFLECTION\";if(r.envMap)switch(r.envMapMode){case mi:t=\"ENVMAP_MODE_REFRACTION\";break}return t}function J0(r){let t=\"ENVMAP_BLENDING_NONE\";if(r.envMap)switch(r.combine){case Pa:t=\"ENVMAP_BLENDING_MULTIPLY\";break;case Df:t=\"ENVMAP_BLENDING_MIX\";break;case Nf:t=\"ENVMAP_BLENDING_ADD\";break}return t}function $0(r){let t=r.envMapCubeUVHeight;if(t===null)return null;let e=Math.log2(t)-2,n=1/t;return{texelWidth:1/(3*Math.max(Math.pow(2,e),112)),texelHeight:n,maxMip:e}}function K0(r,t,e,n){let i=r.getContext(),s=e.defines,a=e.vertexShader,o=e.fragmentShader,c=q0(e),l=Y0(e),h=Z0(e),u=J0(e),d=$0(e),f=e.isWebGL2?\"\":F0(e),m=B0(e),_=z0(s),g=i.createProgram(),p,v,x=e.glslVersion?\"#version \"+e.glslVersion+`\n`:\"\";e.isRawShaderMaterial?(p=[\"#define SHADER_TYPE \"+e.shaderType,\"#define SHADER_NAME \"+e.shaderName,_].filter(Ji).join(`\n`),p.length>0&&(p+=`\n`),v=[f,\"#define SHADER_TYPE \"+e.shaderType,\"#define SHADER_NAME \"+e.shaderName,_].filter(Ji).join(`\n`),v.length>0&&(v+=`\n`)):(p=[Xh(e),\"#define SHADER_TYPE \"+e.shaderType,\"#define SHADER_NAME \"+e.shaderName,_,e.extensionClipCullDistance?\"#define USE_CLIP_DISTANCE\":\"\",e.batching?\"#define USE_BATCHING\":\"\",e.instancing?\"#define USE_INSTANCING\":\"\",e.instancingColor?\"#define USE_INSTANCING_COLOR\":\"\",e.useFog&&e.fog?\"#define USE_FOG\":\"\",e.useFog&&e.fogExp2?\"#define FOG_EXP2\":\"\",e.map?\"#define USE_MAP\":\"\",e.envMap?\"#define USE_ENVMAP\":\"\",e.envMap?\"#define \"+h:\"\",e.lightMap?\"#define USE_LIGHTMAP\":\"\",e.aoMap?\"#define USE_AOMAP\":\"\",e.bumpMap?\"#define USE_BUMPMAP\":\"\",e.normalMap?\"#define USE_NORMALMAP\":\"\",e.normalMapObjectSpace?\"#define USE_NORMALMAP_OBJECTSPACE\":\"\",e.normalMapTangentSpace?\"#define USE_NORMALMAP_TANGENTSPACE\":\"\",e.displacementMap?\"#define USE_DISPLACEMENTMAP\":\"\",e.emissiveMap?\"#define USE_EMISSIVEMAP\":\"\",e.anisotropy?\"#define USE_ANISOTROPY\":\"\",e.anisotropyMap?\"#define USE_ANISOTROPYMAP\":\"\",e.clearcoatMap?\"#define USE_CLEARCOATMAP\":\"\",e.clearcoatRoughnessMap?\"#define USE_CLEARCOAT_ROUGHNESSMAP\":\"\",e.clearcoatNormalMap?\"#define USE_CLEARCOAT_NORMALMAP\":\"\",e.iridescenceMap?\"#define USE_IRIDESCENCEMAP\":\"\",e.iridescenceThicknessMap?\"#define USE_IRIDESCENCE_THICKNESSMAP\":\"\",e.specularMap?\"#define USE_SPECULARMAP\":\"\",e.specularColorMap?\"#define USE_SPECULAR_COLORMAP\":\"\",e.specularIntensityMap?\"#define USE_SPECULAR_INTENSITYMAP\":\"\",e.roughnessMap?\"#define USE_ROUGHNESSMAP\":\"\",e.metalnessMap?\"#define USE_METALNESSMAP\":\"\",e.alphaMap?\"#define USE_ALPHAMAP\":\"\",e.alphaHash?\"#define USE_ALPHAHASH\":\"\",e.transmission?\"#define USE_TRANSMISSION\":\"\",e.transmissionMap?\"#define USE_TRANSMISSIONMAP\":\"\",e.thicknessMap?\"#define USE_THICKNESSMAP\":\"\",e.sheenColorMap?\"#define USE_SHEEN_COLORMAP\":\"\",e.sheenRoughnessMap?\"#define USE_SHEEN_ROUGHNESSMAP\":\"\",e.mapUv?\"#define MAP_UV \"+e.mapUv:\"\",e.alphaMapUv?\"#define ALPHAMAP_UV \"+e.alphaMapUv:\"\",e.lightMapUv?\"#define LIGHTMAP_UV \"+e.lightMapUv:\"\",e.aoMapUv?\"#define AOMAP_UV \"+e.aoMapUv:\"\",e.emissiveMapUv?\"#define EMISSIVEMAP_UV \"+e.emissiveMapUv:\"\",e.bumpMapUv?\"#define BUMPMAP_UV \"+e.bumpMapUv:\"\",e.normalMapUv?\"#define NORMALMAP_UV \"+e.normalMapUv:\"\",e.displacementMapUv?\"#define DISPLACEMENTMAP_UV \"+e.displacementMapUv:\"\",e.metalnessMapUv?\"#define METALNESSMAP_UV \"+e.metalnessMapUv:\"\",e.roughnessMapUv?\"#define ROUGHNESSMAP_UV \"+e.roughnessMapUv:\"\",e.anisotropyMapUv?\"#define ANISOTROPYMAP_UV \"+e.anisotropyMapUv:\"\",e.clearcoatMapUv?\"#define CLEARCOATMAP_UV \"+e.clearcoatMapUv:\"\",e.clearcoatNormalMapUv?\"#define CLEARCOAT_NORMALMAP_UV \"+e.clearcoatNormalMapUv:\"\",e.clearcoatRoughnessMapUv?\"#define CLEARCOAT_ROUGHNESSMAP_UV \"+e.clearcoatRoughnessMapUv:\"\",e.iridescenceMapUv?\"#define IRIDESCENCEMAP_UV \"+e.iridescenceMapUv:\"\",e.iridescenceThicknessMapUv?\"#define IRIDESCENCE_THICKNESSMAP_UV \"+e.iridescenceThicknessMapUv:\"\",e.sheenColorMapUv?\"#define SHEEN_COLORMAP_UV \"+e.sheenColorMapUv:\"\",e.sheenRoughnessMapUv?\"#define SHEEN_ROUGHNESSMAP_UV \"+e.sheenRoughnessMapUv:\"\",e.specularMapUv?\"#define SPECULARMAP_UV \"+e.specularMapUv:\"\",e.specularColorMapUv?\"#define SPECULAR_COLORMAP_UV \"+e.specularColorMapUv:\"\",e.specularIntensityMapUv?\"#define SPECULAR_INTENSITYMAP_UV \"+e.specularIntensityMapUv:\"\",e.transmissionMapUv?\"#define TRANSMISSIONMAP_UV \"+e.transmissionMapUv:\"\",e.thicknessMapUv?\"#define THICKNESSMAP_UV \"+e.thicknessMapUv:\"\",e.vertexTangents&&e.flatShading===!1?\"#define USE_TANGENT\":\"\",e.vertexColors?\"#define USE_COLOR\":\"\",e.vertexAlphas?\"#define USE_COLOR_ALPHA\":\"\",e.vertexUv1s?\"#define USE_UV1\":\"\",e.vertexUv2s?\"#define USE_UV2\":\"\",e.vertexUv3s?\"#define USE_UV3\":\"\",e.pointsUvs?\"#define USE_POINTS_UV\":\"\",e.flatShading?\"#define FLAT_SHADED\":\"\",e.skinning?\"#define USE_SKINNING\":\"\",e.morphTargets?\"#define USE_MORPHTARGETS\":\"\",e.morphNormals&&e.flatShading===!1?\"#define USE_MORPHNORMALS\":\"\",e.morphColors&&e.isWebGL2?\"#define USE_MORPHCOLORS\":\"\",e.morphTargetsCount>0&&e.isWebGL2?\"#define MORPHTARGETS_TEXTURE\":\"\",e.morphTargetsCount>0&&e.isWebGL2?\"#define MORPHTARGETS_TEXTURE_STRIDE \"+e.morphTextureStride:\"\",e.morphTargetsCount>0&&e.isWebGL2?\"#define MORPHTARGETS_COUNT \"+e.morphTargetsCount:\"\",e.doubleSided?\"#define DOUBLE_SIDED\":\"\",e.flipSided?\"#define FLIP_SIDED\":\"\",e.shadowMapEnabled?\"#define USE_SHADOWMAP\":\"\",e.shadowMapEnabled?\"#define \"+c:\"\",e.sizeAttenuation?\"#define USE_SIZEATTENUATION\":\"\",e.numLightProbes>0?\"#define USE_LIGHT_PROBES\":\"\",e.useLegacyLights?\"#define LEGACY_LIGHTS\":\"\",e.logarithmicDepthBuffer?\"#define USE_LOGDEPTHBUF\":\"\",e.logarithmicDepthBuffer&&e.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(Ji).join(`\n`),v=[f,Xh(e),\"#define SHADER_TYPE \"+e.shaderType,\"#define SHADER_NAME \"+e.shaderName,_,e.useFog&&e.fog?\"#define USE_FOG\":\"\",e.useFog&&e.fogExp2?\"#define FOG_EXP2\":\"\",e.map?\"#define USE_MAP\":\"\",e.matcap?\"#define USE_MATCAP\":\"\",e.envMap?\"#define USE_ENVMAP\":\"\",e.envMap?\"#define \"+l:\"\",e.envMap?\"#define \"+h:\"\",e.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\":\"\",e.lightMap?\"#define USE_LIGHTMAP\":\"\",e.aoMap?\"#define USE_AOMAP\":\"\",e.bumpMap?\"#define USE_BUMPMAP\":\"\",e.normalMap?\"#define USE_NORMALMAP\":\"\",e.normalMapObjectSpace?\"#define USE_NORMALMAP_OBJECTSPACE\":\"\",e.normalMapTangentSpace?\"#define USE_NORMALMAP_TANGENTSPACE\":\"\",e.emissiveMap?\"#define USE_EMISSIVEMAP\":\"\",e.anisotropy?\"#define USE_ANISOTROPY\":\"\",e.anisotropyMap?\"#define USE_ANISOTROPYMAP\":\"\",e.clearcoat?\"#define USE_CLEARCOAT\":\"\",e.clearcoatMap?\"#define USE_CLEARCOATMAP\":\"\",e.clearcoatRoughnessMap?\"#define USE_CLEARCOAT_ROUGHNESSMAP\":\"\",e.clearcoatNormalMap?\"#define USE_CLEARCOAT_NORMALMAP\":\"\",e.iridescence?\"#define USE_IRIDESCENCE\":\"\",e.iridescenceMap?\"#define USE_IRIDESCENCEMAP\":\"\",e.iridescenceThicknessMap?\"#define USE_IRIDESCENCE_THICKNESSMAP\":\"\",e.specularMap?\"#define USE_SPECULARMAP\":\"\",e.specularColorMap?\"#define USE_SPECULAR_COLORMAP\":\"\",e.specularIntensityMap?\"#define USE_SPECULAR_INTENSITYMAP\":\"\",e.roughnessMap?\"#define USE_ROUGHNESSMAP\":\"\",e.metalnessMap?\"#define USE_METALNESSMAP\":\"\",e.alphaMap?\"#define USE_ALPHAMAP\":\"\",e.alphaTest?\"#define USE_ALPHATEST\":\"\",e.alphaHash?\"#define USE_ALPHAHASH\":\"\",e.sheen?\"#define USE_SHEEN\":\"\",e.sheenColorMap?\"#define USE_SHEEN_COLORMAP\":\"\",e.sheenRoughnessMap?\"#define USE_SHEEN_ROUGHNESSMAP\":\"\",e.transmission?\"#define USE_TRANSMISSION\":\"\",e.transmissionMap?\"#define USE_TRANSMISSIONMAP\":\"\",e.thicknessMap?\"#define USE_THICKNESSMAP\":\"\",e.vertexTangents&&e.flatShading===!1?\"#define USE_TANGENT\":\"\",e.vertexColors||e.instancingColor?\"#define USE_COLOR\":\"\",e.vertexAlphas?\"#define USE_COLOR_ALPHA\":\"\",e.vertexUv1s?\"#define USE_UV1\":\"\",e.vertexUv2s?\"#define USE_UV2\":\"\",e.vertexUv3s?\"#define USE_UV3\":\"\",e.pointsUvs?\"#define USE_POINTS_UV\":\"\",e.gradientMap?\"#define USE_GRADIENTMAP\":\"\",e.flatShading?\"#define FLAT_SHADED\":\"\",e.doubleSided?\"#define DOUBLE_SIDED\":\"\",e.flipSided?\"#define FLIP_SIDED\":\"\",e.shadowMapEnabled?\"#define USE_SHADOWMAP\":\"\",e.shadowMapEnabled?\"#define \"+c:\"\",e.premultipliedAlpha?\"#define PREMULTIPLIED_ALPHA\":\"\",e.numLightProbes>0?\"#define USE_LIGHT_PROBES\":\"\",e.useLegacyLights?\"#define LEGACY_LIGHTS\":\"\",e.decodeVideoTexture?\"#define DECODE_VIDEO_TEXTURE\":\"\",e.logarithmicDepthBuffer?\"#define USE_LOGDEPTHBUF\":\"\",e.logarithmicDepthBuffer&&e.rendererExtensionFragDepth?\"#define USE_LOGDEPTHBUF_EXT\":\"\",\"uniform mat4 viewMatrix;\",\"uniform vec3 cameraPosition;\",\"uniform bool isOrthographic;\",e.toneMapping!==Vn?\"#define TONE_MAPPING\":\"\",e.toneMapping!==Vn?kt.tonemapping_pars_fragment:\"\",e.toneMapping!==Vn?O0(\"toneMapping\",e.toneMapping):\"\",e.dithering?\"#define DITHERING\":\"\",e.opaque?\"#define OPAQUE\":\"\",kt.colorspace_pars_fragment,N0(\"linearToOutputTexel\",e.outputColorSpace),e.useDepthPacking?\"#define DEPTH_PACKING \"+e.depthPacking:\"\",`\n`].filter(Ji).join(`\n`)),a=Bo(a),a=Hh(a,e),a=Gh(a,e),o=Bo(o),o=Hh(o,e),o=Gh(o,e),a=Wh(a),o=Wh(o),e.isWebGL2&&e.isRawShaderMaterial!==!0&&(x=`#version 300 es\n`,p=[m,\"precision mediump sampler2DArray;\",\"#define attribute in\",\"#define varying out\",\"#define texture2D texture\"].join(`\n`)+`\n`+p,v=[\"precision mediump sampler2DArray;\",\"#define varying in\",e.glslVersion===th?\"\":\"layout(location = 0) out highp vec4 pc_fragColor;\",e.glslVersion===th?\"\":\"#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);let y=x+p+a,C=x+v+o,T=Vh(i,i.VERTEX_SHADER,y),R=Vh(i,i.FRAGMENT_SHADER,C);i.attachShader(g,T),i.attachShader(g,R),e.index0AttributeName!==void 0?i.bindAttribLocation(g,0,e.index0AttributeName):e.morphTargets===!0&&i.bindAttribLocation(g,0,\"position\"),i.linkProgram(g);function U(G){if(r.debug.checkShaderErrors){let it=i.getProgramInfoLog(g).trim(),I=i.getShaderInfoLog(T).trim(),F=i.getShaderInfoLog(R).trim(),k=!0,J=!0;if(i.getProgramParameter(g,i.LINK_STATUS)===!1)if(k=!1,typeof r.debug.onShaderError==\"function\")r.debug.onShaderError(i,g,T,R);else{let Y=kh(i,T,\"vertex\"),W=kh(i,R,\"fragment\");console.error(\"THREE.WebGLProgram: Shader Error \"+i.getError()+\" - VALIDATE_STATUS \"+i.getProgramParameter(g,i.VALIDATE_STATUS)+`\n\nProgram Info Log: `+it+`\n`+Y+`\n`+W)}else it!==\"\"?console.warn(\"THREE.WebGLProgram: Program Info Log:\",it):(I===\"\"||F===\"\")&&(J=!1);J&&(G.diagnostics={runnable:k,programLog:it,vertexShader:{log:I,prefix:p},fragmentShader:{log:F,prefix:v}})}i.deleteShader(T),i.deleteShader(R),S=new ji(i,g),E=V0(i,g)}let S;this.getUniforms=function(){return S===void 0&&U(this),S};let E;this.getAttributes=function(){return E===void 0&&U(this),E};let N=e.rendererExtensionParallelShaderCompile===!1;return this.isReady=function(){return N===!1&&(N=i.getProgramParameter(g,L0)),N},this.destroy=function(){n.releaseStatesOfProgram(this),i.deleteProgram(g),this.program=void 0},this.type=e.shaderType,this.name=e.shaderName,this.id=I0++,this.cacheKey=t,this.usedTimes=1,this.program=g,this.vertexShader=T,this.fragmentShader=R,this}var Q0=0,zo=class{constructor(){this.shaderCache=new Map,this.materialCache=new Map}update(t){let e=t.vertexShader,n=t.fragmentShader,i=this._getShaderStage(e),s=this._getShaderStage(n),a=this._getShaderCacheForMaterial(t);return a.has(i)===!1&&(a.add(i),i.usedTimes++),a.has(s)===!1&&(a.add(s),s.usedTimes++),this}remove(t){let e=this.materialCache.get(t);for(let n of e)n.usedTimes--,n.usedTimes===0&&this.shaderCache.delete(n.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){let e=this.materialCache,n=e.get(t);return n===void 0&&(n=new Set,e.set(t,n)),n}_getShaderStage(t){let e=this.shaderCache,n=e.get(t);return n===void 0&&(n=new Vo(t),e.set(t,n)),n}},Vo=class{constructor(t){this.id=Q0++,this.code=t,this.usedTimes=0}};function j0(r,t,e,n,i,s,a){let o=new Os,c=new zo,l=[],h=i.isWebGL2,u=i.logarithmicDepthBuffer,d=i.vertexTextures,f=i.precision,m={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 _(S){return S===0?\"uv\":`uv${S}`}function g(S,E,N,G,it){let I=G.fog,F=it.geometry,k=S.isMeshStandardMaterial?G.environment:null,J=(S.isMeshStandardMaterial?e:t).get(S.envMap||k),Y=J&&J.mapping===Ys?J.image.height:null,W=m[S.type];S.precision!==null&&(f=i.getMaxPrecision(S.precision),f!==S.precision&&console.warn(\"THREE.WebGLProgram.getParameters:\",S.precision,\"not supported, using\",f,\"instead.\"));let tt=F.morphAttributes.position||F.morphAttributes.normal||F.morphAttributes.color,et=tt!==void 0?tt.length:0,ut=0;F.morphAttributes.position!==void 0&&(ut=1),F.morphAttributes.normal!==void 0&&(ut=2),F.morphAttributes.color!==void 0&&(ut=3);let H,K,dt,Mt;if(W){let Ue=on[W];H=Ue.vertexShader,K=Ue.fragmentShader}else H=S.vertexShader,K=S.fragmentShader,c.update(S),dt=c.getVertexShaderID(S),Mt=c.getFragmentShaderID(S);let gt=r.getRenderTarget(),Ct=it.isInstancedMesh===!0,Nt=it.isBatchedMesh===!0,St=!!S.map,Ut=!!S.matcap,P=!!J,rt=!!S.aoMap,q=!!S.lightMap,st=!!S.bumpMap,X=!!S.normalMap,Et=!!S.displacementMap,ft=!!S.emissiveMap,b=!!S.metalnessMap,M=!!S.roughnessMap,O=S.anisotropy>0,nt=S.clearcoat>0,Q=S.iridescence>0,$=S.sheen>0,yt=S.transmission>0,ct=O&&!!S.anisotropyMap,_t=nt&&!!S.clearcoatMap,Tt=nt&&!!S.clearcoatNormalMap,Ft=nt&&!!S.clearcoatRoughnessMap,j=Q&&!!S.iridescenceMap,Zt=Q&&!!S.iridescenceThicknessMap,Yt=$&&!!S.sheenColorMap,Dt=$&&!!S.sheenRoughnessMap,At=!!S.specularMap,vt=!!S.specularColorMap,Vt=!!S.specularIntensityMap,$t=yt&&!!S.transmissionMap,oe=yt&&!!S.thicknessMap,Xt=!!S.gradientMap,at=!!S.alphaMap,L=S.alphaTest>0,lt=!!S.alphaHash,ht=!!S.extensions,Pt=!!F.attributes.uv1,wt=!!F.attributes.uv2,ee=!!F.attributes.uv3,ne=Vn;return S.toneMapped&&(gt===null||gt.isXRRenderTarget===!0)&&(ne=r.toneMapping),{isWebGL2:h,shaderID:W,shaderType:S.type,shaderName:S.name,vertexShader:H,fragmentShader:K,defines:S.defines,customVertexShaderID:dt,customFragmentShaderID:Mt,isRawShaderMaterial:S.isRawShaderMaterial===!0,glslVersion:S.glslVersion,precision:f,batching:Nt,instancing:Ct,instancingColor:Ct&&it.instanceColor!==null,supportsVertexTextures:d,outputColorSpace:gt===null?r.outputColorSpace:gt.isXRRenderTarget===!0?gt.texture.colorSpace:En,map:St,matcap:Ut,envMap:P,envMapMode:P&&J.mapping,envMapCubeUVHeight:Y,aoMap:rt,lightMap:q,bumpMap:st,normalMap:X,displacementMap:d&&Et,emissiveMap:ft,normalMapObjectSpace:X&&S.normalMapType===np,normalMapTangentSpace:X&&S.normalMapType===Si,metalnessMap:b,roughnessMap:M,anisotropy:O,anisotropyMap:ct,clearcoat:nt,clearcoatMap:_t,clearcoatNormalMap:Tt,clearcoatRoughnessMap:Ft,iridescence:Q,iridescenceMap:j,iridescenceThicknessMap:Zt,sheen:$,sheenColorMap:Yt,sheenRoughnessMap:Dt,specularMap:At,specularColorMap:vt,specularIntensityMap:Vt,transmission:yt,transmissionMap:$t,thicknessMap:oe,gradientMap:Xt,opaque:S.transparent===!1&&S.blending===Ki,alphaMap:at,alphaTest:L,alphaHash:lt,combine:S.combine,mapUv:St&&_(S.map.channel),aoMapUv:rt&&_(S.aoMap.channel),lightMapUv:q&&_(S.lightMap.channel),bumpMapUv:st&&_(S.bumpMap.channel),normalMapUv:X&&_(S.normalMap.channel),displacementMapUv:Et&&_(S.displacementMap.channel),emissiveMapUv:ft&&_(S.emissiveMap.channel),metalnessMapUv:b&&_(S.metalnessMap.channel),roughnessMapUv:M&&_(S.roughnessMap.channel),anisotropyMapUv:ct&&_(S.anisotropyMap.channel),clearcoatMapUv:_t&&_(S.clearcoatMap.channel),clearcoatNormalMapUv:Tt&&_(S.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:Ft&&_(S.clearcoatRoughnessMap.channel),iridescenceMapUv:j&&_(S.iridescenceMap.channel),iridescenceThicknessMapUv:Zt&&_(S.iridescenceThicknessMap.channel),sheenColorMapUv:Yt&&_(S.sheenColorMap.channel),sheenRoughnessMapUv:Dt&&_(S.sheenRoughnessMap.channel),specularMapUv:At&&_(S.specularMap.channel),specularColorMapUv:vt&&_(S.specularColorMap.channel),specularIntensityMapUv:Vt&&_(S.specularIntensityMap.channel),transmissionMapUv:$t&&_(S.transmissionMap.channel),thicknessMapUv:oe&&_(S.thicknessMap.channel),alphaMapUv:at&&_(S.alphaMap.channel),vertexTangents:!!F.attributes.tangent&&(X||O),vertexColors:S.vertexColors,vertexAlphas:S.vertexColors===!0&&!!F.attributes.color&&F.attributes.color.itemSize===4,vertexUv1s:Pt,vertexUv2s:wt,vertexUv3s:ee,pointsUvs:it.isPoints===!0&&!!F.attributes.uv&&(St||at),fog:!!I,useFog:S.fog===!0,fogExp2:I&&I.isFogExp2,flatShading:S.flatShading===!0,sizeAttenuation:S.sizeAttenuation===!0,logarithmicDepthBuffer:u,skinning:it.isSkinnedMesh===!0,morphTargets:F.morphAttributes.position!==void 0,morphNormals:F.morphAttributes.normal!==void 0,morphColors:F.morphAttributes.color!==void 0,morphTargetsCount:et,morphTextureStride:ut,numDirLights:E.directional.length,numPointLights:E.point.length,numSpotLights:E.spot.length,numSpotLightMaps:E.spotLightMap.length,numRectAreaLights:E.rectArea.length,numHemiLights:E.hemi.length,numDirLightShadows:E.directionalShadowMap.length,numPointLightShadows:E.pointShadowMap.length,numSpotLightShadows:E.spotShadowMap.length,numSpotLightShadowsWithMaps:E.numSpotLightShadowsWithMaps,numLightProbes:E.numLightProbes,numClippingPlanes:a.numPlanes,numClipIntersection:a.numIntersection,dithering:S.dithering,shadowMapEnabled:r.shadowMap.enabled&&N.length>0,shadowMapType:r.shadowMap.type,toneMapping:ne,useLegacyLights:r._useLegacyLights,decodeVideoTexture:St&&S.map.isVideoTexture===!0&&jt.getTransfer(S.map.colorSpace)===se,premultipliedAlpha:S.premultipliedAlpha,doubleSided:S.side===Mn,flipSided:S.side===He,useDepthPacking:S.depthPacking>=0,depthPacking:S.depthPacking||0,index0AttributeName:S.index0AttributeName,extensionDerivatives:ht&&S.extensions.derivatives===!0,extensionFragDepth:ht&&S.extensions.fragDepth===!0,extensionDrawBuffers:ht&&S.extensions.drawBuffers===!0,extensionShaderTextureLOD:ht&&S.extensions.shaderTextureLOD===!0,extensionClipCullDistance:ht&&S.extensions.clipCullDistance&&n.has(\"WEBGL_clip_cull_distance\"),rendererExtensionFragDepth:h||n.has(\"EXT_frag_depth\"),rendererExtensionDrawBuffers:h||n.has(\"WEBGL_draw_buffers\"),rendererExtensionShaderTextureLod:h||n.has(\"EXT_shader_texture_lod\"),rendererExtensionParallelShaderCompile:n.has(\"KHR_parallel_shader_compile\"),customProgramCacheKey:S.customProgramCacheKey()}}function p(S){let E=[];if(S.shaderID?E.push(S.shaderID):(E.push(S.customVertexShaderID),E.push(S.customFragmentShaderID)),S.defines!==void 0)for(let N in S.defines)E.push(N),E.push(S.defines[N]);return S.isRawShaderMaterial===!1&&(v(E,S),x(E,S),E.push(r.outputColorSpace)),E.push(S.customProgramCacheKey),E.join()}function v(S,E){S.push(E.precision),S.push(E.outputColorSpace),S.push(E.envMapMode),S.push(E.envMapCubeUVHeight),S.push(E.mapUv),S.push(E.alphaMapUv),S.push(E.lightMapUv),S.push(E.aoMapUv),S.push(E.bumpMapUv),S.push(E.normalMapUv),S.push(E.displacementMapUv),S.push(E.emissiveMapUv),S.push(E.metalnessMapUv),S.push(E.roughnessMapUv),S.push(E.anisotropyMapUv),S.push(E.clearcoatMapUv),S.push(E.clearcoatNormalMapUv),S.push(E.clearcoatRoughnessMapUv),S.push(E.iridescenceMapUv),S.push(E.iridescenceThicknessMapUv),S.push(E.sheenColorMapUv),S.push(E.sheenRoughnessMapUv),S.push(E.specularMapUv),S.push(E.specularColorMapUv),S.push(E.specularIntensityMapUv),S.push(E.transmissionMapUv),S.push(E.thicknessMapUv),S.push(E.combine),S.push(E.fogExp2),S.push(E.sizeAttenuation),S.push(E.morphTargetsCount),S.push(E.morphAttributeCount),S.push(E.numDirLights),S.push(E.numPointLights),S.push(E.numSpotLights),S.push(E.numSpotLightMaps),S.push(E.numHemiLights),S.push(E.numRectAreaLights),S.push(E.numDirLightShadows),S.push(E.numPointLightShadows),S.push(E.numSpotLightShadows),S.push(E.numSpotLightShadowsWithMaps),S.push(E.numLightProbes),S.push(E.shadowMapType),S.push(E.toneMapping),S.push(E.numClippingPlanes),S.push(E.numClipIntersection),S.push(E.depthPacking)}function x(S,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),S.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),S.push(o.mask)}function y(S){let E=m[S.type],N;if(E){let G=on[E];N=Hp.clone(G.uniforms)}else N=S.uniforms;return N}function C(S,E){let N;for(let G=0,it=l.length;G<it;G++){let I=l[G];if(I.cacheKey===E){N=I,++N.usedTimes;break}}return N===void 0&&(N=new K0(r,E,S,s),l.push(N)),N}function T(S){if(--S.usedTimes===0){let E=l.indexOf(S);l[E]=l[l.length-1],l.pop(),S.destroy()}}function R(S){c.remove(S)}function U(){c.dispose()}return{getParameters:g,getProgramCacheKey:p,getUniforms:y,acquireProgram:C,releaseProgram:T,releaseShaderCache:R,programs:l,dispose:U}}function tx(){let r=new WeakMap;function t(s){let a=r.get(s);return a===void 0&&(a={},r.set(s,a)),a}function e(s){r.delete(s)}function n(s,a,o){r.get(s)[a]=o}function i(){r=new WeakMap}return{get:t,remove:e,update:n,dispose:i}}function ex(r,t){return r.groupOrder!==t.groupOrder?r.groupOrder-t.groupOrder:r.renderOrder!==t.renderOrder?r.renderOrder-t.renderOrder:r.material.id!==t.material.id?r.material.id-t.material.id:r.z!==t.z?r.z-t.z:r.id-t.id}function qh(r,t){return r.groupOrder!==t.groupOrder?r.groupOrder-t.groupOrder:r.renderOrder!==t.renderOrder?r.renderOrder-t.renderOrder:r.z!==t.z?t.z-r.z:r.id-t.id}function Yh(){let r=[],t=0,e=[],n=[],i=[];function s(){t=0,e.length=0,n.length=0,i.length=0}function a(u,d,f,m,_,g){let p=r[t];return p===void 0?(p={id:u.id,object:u,geometry:d,material:f,groupOrder:m,renderOrder:u.renderOrder,z:_,group:g},r[t]=p):(p.id=u.id,p.object=u,p.geometry=d,p.material=f,p.groupOrder=m,p.renderOrder=u.renderOrder,p.z=_,p.group=g),t++,p}function o(u,d,f,m,_,g){let p=a(u,d,f,m,_,g);f.transmission>0?n.push(p):f.transparent===!0?i.push(p):e.push(p)}function c(u,d,f,m,_,g){let p=a(u,d,f,m,_,g);f.transmission>0?n.unshift(p):f.transparent===!0?i.unshift(p):e.unshift(p)}function l(u,d){e.length>1&&e.sort(u||ex),n.length>1&&n.sort(d||qh),i.length>1&&i.sort(d||qh)}function h(){for(let u=t,d=r.length;u<d;u++){let f=r[u];if(f.id===null)break;f.id=null,f.object=null,f.geometry=null,f.material=null,f.group=null}}return{opaque:e,transmissive:n,transparent:i,init:s,push:o,unshift:c,finish:h,sort:l}}function nx(){let r=new WeakMap;function t(n,i){let s=r.get(n),a;return s===void 0?(a=new Yh,r.set(n,[a])):i>=s.length?(a=new Yh,s.push(a)):a=s[i],a}function e(){r=new WeakMap}return{get:t,dispose:e}}function ix(){let r={};return{get:function(t){if(r[t.id]!==void 0)return r[t.id];let e;switch(t.type){case\"DirectionalLight\":e={direction:new w,color:new pt};break;case\"SpotLight\":e={position:new w,direction:new w,color:new pt,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case\"PointLight\":e={position:new w,color:new pt,distance:0,decay:0};break;case\"HemisphereLight\":e={direction:new w,skyColor:new pt,groundColor:new pt};break;case\"RectAreaLight\":e={color:new pt,position:new w,halfWidth:new w,halfHeight:new w};break}return r[t.id]=e,e}}}function sx(){let r={};return{get:function(t){if(r[t.id]!==void 0)return r[t.id];let e;switch(t.type){case\"DirectionalLight\":e={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Z};break;case\"SpotLight\":e={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Z};break;case\"PointLight\":e={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Z,shadowCameraNear:1,shadowCameraFar:1e3};break}return r[t.id]=e,e}}}var rx=0;function ax(r,t){return(t.castShadow?2:0)-(r.castShadow?2:0)+(t.map?1:0)-(r.map?1:0)}function ox(r,t){let e=new ix,n=sx(),i={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 h=0;h<9;h++)i.probe.push(new w);let s=new w,a=new It,o=new It;function c(h,u){let d=0,f=0,m=0;for(let G=0;G<9;G++)i.probe[G].set(0,0,0);let _=0,g=0,p=0,v=0,x=0,y=0,C=0,T=0,R=0,U=0,S=0;h.sort(ax);let E=u===!0?Math.PI:1;for(let G=0,it=h.length;G<it;G++){let I=h[G],F=I.color,k=I.intensity,J=I.distance,Y=I.shadow&&I.shadow.map?I.shadow.map.texture:null;if(I.isAmbientLight)d+=F.r*k*E,f+=F.g*k*E,m+=F.b*k*E;else if(I.isLightProbe){for(let W=0;W<9;W++)i.probe[W].addScaledVector(I.sh.coefficients[W],k);S++}else if(I.isDirectionalLight){let W=e.get(I);if(W.color.copy(I.color).multiplyScalar(I.intensity*E),I.castShadow){let tt=I.shadow,et=n.get(I);et.shadowBias=tt.bias,et.shadowNormalBias=tt.normalBias,et.shadowRadius=tt.radius,et.shadowMapSize=tt.mapSize,i.directionalShadow[_]=et,i.directionalShadowMap[_]=Y,i.directionalShadowMatrix[_]=I.shadow.matrix,y++}i.directional[_]=W,_++}else if(I.isSpotLight){let W=e.get(I);W.position.setFromMatrixPosition(I.matrixWorld),W.color.copy(F).multiplyScalar(k*E),W.distance=J,W.coneCos=Math.cos(I.angle),W.penumbraCos=Math.cos(I.angle*(1-I.penumbra)),W.decay=I.decay,i.spot[p]=W;let tt=I.shadow;if(I.map&&(i.spotLightMap[R]=I.map,R++,tt.updateMatrices(I),I.castShadow&&U++),i.spotLightMatrix[p]=tt.matrix,I.castShadow){let et=n.get(I);et.shadowBias=tt.bias,et.shadowNormalBias=tt.normalBias,et.shadowRadius=tt.radius,et.shadowMapSize=tt.mapSize,i.spotShadow[p]=et,i.spotShadowMap[p]=Y,T++}p++}else if(I.isRectAreaLight){let W=e.get(I);W.color.copy(F).multiplyScalar(k),W.halfWidth.set(I.width*.5,0,0),W.halfHeight.set(0,I.height*.5,0),i.rectArea[v]=W,v++}else if(I.isPointLight){let W=e.get(I);if(W.color.copy(I.color).multiplyScalar(I.intensity*E),W.distance=I.distance,W.decay=I.decay,I.castShadow){let tt=I.shadow,et=n.get(I);et.shadowBias=tt.bias,et.shadowNormalBias=tt.normalBias,et.shadowRadius=tt.radius,et.shadowMapSize=tt.mapSize,et.shadowCameraNear=tt.camera.near,et.shadowCameraFar=tt.camera.far,i.pointShadow[g]=et,i.pointShadowMap[g]=Y,i.pointShadowMatrix[g]=I.shadow.matrix,C++}i.point[g]=W,g++}else if(I.isHemisphereLight){let W=e.get(I);W.skyColor.copy(I.color).multiplyScalar(k*E),W.groundColor.copy(I.groundColor).multiplyScalar(k*E),i.hemi[x]=W,x++}}v>0&&(t.isWebGL2?r.has(\"OES_texture_float_linear\")===!0?(i.rectAreaLTC1=ot.LTC_FLOAT_1,i.rectAreaLTC2=ot.LTC_FLOAT_2):(i.rectAreaLTC1=ot.LTC_HALF_1,i.rectAreaLTC2=ot.LTC_HALF_2):r.has(\"OES_texture_float_linear\")===!0?(i.rectAreaLTC1=ot.LTC_FLOAT_1,i.rectAreaLTC2=ot.LTC_FLOAT_2):r.has(\"OES_texture_half_float_linear\")===!0?(i.rectAreaLTC1=ot.LTC_HALF_1,i.rectAreaLTC2=ot.LTC_HALF_2):console.error(\"THREE.WebGLRenderer: Unable to use RectAreaLight. Missing WebGL extensions.\")),i.ambient[0]=d,i.ambient[1]=f,i.ambient[2]=m;let N=i.hash;(N.directionalLength!==_||N.pointLength!==g||N.spotLength!==p||N.rectAreaLength!==v||N.hemiLength!==x||N.numDirectionalShadows!==y||N.numPointShadows!==C||N.numSpotShadows!==T||N.numSpotMaps!==R||N.numLightProbes!==S)&&(i.directional.length=_,i.spot.length=p,i.rectArea.length=v,i.point.length=g,i.hemi.length=x,i.directionalShadow.length=y,i.directionalShadowMap.length=y,i.pointShadow.length=C,i.pointShadowMap.length=C,i.spotShadow.length=T,i.spotShadowMap.length=T,i.directionalShadowMatrix.length=y,i.pointShadowMatrix.length=C,i.spotLightMatrix.length=T+R-U,i.spotLightMap.length=R,i.numSpotLightShadowsWithMaps=U,i.numLightProbes=S,N.directionalLength=_,N.pointLength=g,N.spotLength=p,N.rectAreaLength=v,N.hemiLength=x,N.numDirectionalShadows=y,N.numPointShadows=C,N.numSpotShadows=T,N.numSpotMaps=R,N.numLightProbes=S,i.version=rx++)}function l(h,u){let d=0,f=0,m=0,_=0,g=0,p=u.matrixWorldInverse;for(let v=0,x=h.length;v<x;v++){let y=h[v];if(y.isDirectionalLight){let C=i.directional[d];C.direction.setFromMatrixPosition(y.matrixWorld),s.setFromMatrixPosition(y.target.matrixWorld),C.direction.sub(s),C.direction.transformDirection(p),d++}else if(y.isSpotLight){let C=i.spot[m];C.position.setFromMatrixPosition(y.matrixWorld),C.position.applyMatrix4(p),C.direction.setFromMatrixPosition(y.matrixWorld),s.setFromMatrixPosition(y.target.matrixWorld),C.direction.sub(s),C.direction.transformDirection(p),m++}else if(y.isRectAreaLight){let C=i.rectArea[_];C.position.setFromMatrixPosition(y.matrixWorld),C.position.applyMatrix4(p),o.identity(),a.copy(y.matrixWorld),a.premultiply(p),o.extractRotation(a),C.halfWidth.set(y.width*.5,0,0),C.halfHeight.set(0,y.height*.5,0),C.halfWidth.applyMatrix4(o),C.halfHeight.applyMatrix4(o),_++}else if(y.isPointLight){let C=i.point[f];C.position.setFromMatrixPosition(y.matrixWorld),C.position.applyMatrix4(p),f++}else if(y.isHemisphereLight){let C=i.hemi[g];C.direction.setFromMatrixPosition(y.matrixWorld),C.direction.transformDirection(p),g++}}}return{setup:c,setupView:l,state:i}}function Zh(r,t){let e=new ox(r,t),n=[],i=[];function s(){n.length=0,i.length=0}function a(u){n.push(u)}function o(u){i.push(u)}function c(u){e.setup(n,u)}function l(u){e.setupView(n,u)}return{init:s,state:{lightsArray:n,shadowsArray:i,lights:e},setupLights:c,setupLightsView:l,pushLight:a,pushShadow:o}}function cx(r,t){let e=new WeakMap;function n(s,a=0){let o=e.get(s),c;return o===void 0?(c=new Zh(r,t),e.set(s,[c])):a>=o.length?(c=new Zh(r,t),o.push(c)):c=o[a],c}function i(){e=new WeakMap}return{get:n,dispose:i}}var ha=class extends Te{constructor(t){super(),this.isMeshDepthMaterial=!0,this.type=\"MeshDepthMaterial\",this.depthPacking=tp,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}},ua=class extends Te{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}},lx=`void main() {\n\tgl_Position = vec4( position, 1.0 );\n}`,hx=`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}`;function ux(r,t,e){let n=new rs,i=new Z,s=new Z,a=new te,o=new ha({depthPacking:ep}),c=new ua,l={},h=e.maxTextureSize,u={[Wn]:He,[He]:Wn,[Mn]:Mn},d=new sn({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new Z},radius:{value:4}},vertexShader:lx,fragmentShader:hx}),f=d.clone();f.defines.HORIZONTAL_PASS=1;let m=new Wt;m.setAttribute(\"position\",new Jt(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));let _=new ge(m,d),g=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=Rd;let p=this.type;this.render=function(T,R,U){if(g.enabled===!1||g.autoUpdate===!1&&g.needsUpdate===!1||T.length===0)return;let S=r.getRenderTarget(),E=r.getActiveCubeFace(),N=r.getActiveMipmapLevel(),G=r.state;G.setBlending(zn),G.buffers.color.setClear(1,1,1,1),G.buffers.depth.setTest(!0),G.setScissorTest(!1);let it=p!==vn&&this.type===vn,I=p===vn&&this.type!==vn;for(let F=0,k=T.length;F<k;F++){let J=T[F],Y=J.shadow;if(Y===void 0){console.warn(\"THREE.WebGLShadowMap:\",J,\"has no shadow.\");continue}if(Y.autoUpdate===!1&&Y.needsUpdate===!1)continue;i.copy(Y.mapSize);let W=Y.getFrameExtents();if(i.multiply(W),s.copy(Y.mapSize),(i.x>h||i.y>h)&&(i.x>h&&(s.x=Math.floor(h/W.x),i.x=s.x*W.x,Y.mapSize.x=s.x),i.y>h&&(s.y=Math.floor(h/W.y),i.y=s.y*W.y,Y.mapSize.y=s.y)),Y.map===null||it===!0||I===!0){let et=this.type!==vn?{minFilter:pe,magFilter:pe}:{};Y.map!==null&&Y.map.dispose(),Y.map=new Ke(i.x,i.y,et),Y.map.texture.name=J.name+\".shadowMap\",Y.camera.updateProjectionMatrix()}r.setRenderTarget(Y.map),r.clear();let tt=Y.getViewportCount();for(let et=0;et<tt;et++){let ut=Y.getViewport(et);a.set(s.x*ut.x,s.y*ut.y,s.x*ut.z,s.y*ut.w),G.viewport(a),Y.updateMatrices(J,et),n=Y.getFrustum(),y(R,U,Y.camera,J,this.type)}Y.isPointLightShadow!==!0&&this.type===vn&&v(Y,U),Y.needsUpdate=!1}p=this.type,g.needsUpdate=!1,r.setRenderTarget(S,E,N)};function v(T,R){let U=t.update(_);d.defines.VSM_SAMPLES!==T.blurSamples&&(d.defines.VSM_SAMPLES=T.blurSamples,f.defines.VSM_SAMPLES=T.blurSamples,d.needsUpdate=!0,f.needsUpdate=!0),T.mapPass===null&&(T.mapPass=new Ke(i.x,i.y)),d.uniforms.shadow_pass.value=T.map.texture,d.uniforms.resolution.value=T.mapSize,d.uniforms.radius.value=T.radius,r.setRenderTarget(T.mapPass),r.clear(),r.renderBufferDirect(R,null,U,d,_,null),f.uniforms.shadow_pass.value=T.mapPass.texture,f.uniforms.resolution.value=T.mapSize,f.uniforms.radius.value=T.radius,r.setRenderTarget(T.map),r.clear(),r.renderBufferDirect(R,null,U,f,_,null)}function x(T,R,U,S){let E=null,N=U.isPointLight===!0?T.customDistanceMaterial:T.customDepthMaterial;if(N!==void 0)E=N;else if(E=U.isPointLight===!0?c:o,r.localClippingEnabled&&R.clipShadows===!0&&Array.isArray(R.clippingPlanes)&&R.clippingPlanes.length!==0||R.displacementMap&&R.displacementScale!==0||R.alphaMap&&R.alphaTest>0||R.map&&R.alphaTest>0){let G=E.uuid,it=R.uuid,I=l[G];I===void 0&&(I={},l[G]=I);let F=I[it];F===void 0&&(F=E.clone(),I[it]=F,R.addEventListener(\"dispose\",C)),E=F}if(E.visible=R.visible,E.wireframe=R.wireframe,S===vn?E.side=R.shadowSide!==null?R.shadowSide:R.side:E.side=R.shadowSide!==null?R.shadowSide:u[R.side],E.alphaMap=R.alphaMap,E.alphaTest=R.alphaTest,E.map=R.map,E.clipShadows=R.clipShadows,E.clippingPlanes=R.clippingPlanes,E.clipIntersection=R.clipIntersection,E.displacementMap=R.displacementMap,E.displacementScale=R.displacementScale,E.displacementBias=R.displacementBias,E.wireframeLinewidth=R.wireframeLinewidth,E.linewidth=R.linewidth,U.isPointLight===!0&&E.isMeshDistanceMaterial===!0){let G=r.properties.get(E);G.light=U}return E}function y(T,R,U,S,E){if(T.visible===!1)return;if(T.layers.test(R.layers)&&(T.isMesh||T.isLine||T.isPoints)&&(T.castShadow||T.receiveShadow&&E===vn)&&(!T.frustumCulled||n.intersectsObject(T))){T.modelViewMatrix.multiplyMatrices(U.matrixWorldInverse,T.matrixWorld);let it=t.update(T),I=T.material;if(Array.isArray(I)){let F=it.groups;for(let k=0,J=F.length;k<J;k++){let Y=F[k],W=I[Y.materialIndex];if(W&&W.visible){let tt=x(T,W,S,E);T.onBeforeShadow(r,T,R,U,it,tt,Y),r.renderBufferDirect(U,null,it,tt,T,Y),T.onAfterShadow(r,T,R,U,it,tt,Y)}}}else if(I.visible){let F=x(T,I,S,E);T.onBeforeShadow(r,T,R,U,it,F,null),r.renderBufferDirect(U,null,it,F,T,null),T.onAfterShadow(r,T,R,U,it,F,null)}}let G=T.children;for(let it=0,I=G.length;it<I;it++)y(G[it],R,U,S,E)}function C(T){T.target.removeEventListener(\"dispose\",C);for(let U in l){let S=l[U],E=T.target.uuid;E in S&&(S[E].dispose(),delete S[E])}}}function dx(r,t,e){let n=e.isWebGL2;function i(){let L=!1,lt=new te,ht=null,Pt=new te(0,0,0,0);return{setMask:function(wt){ht!==wt&&!L&&(r.colorMask(wt,wt,wt,wt),ht=wt)},setLocked:function(wt){L=wt},setClear:function(wt,ee,ne,ve,Ue){Ue===!0&&(wt*=ve,ee*=ve,ne*=ve),lt.set(wt,ee,ne,ve),Pt.equals(lt)===!1&&(r.clearColor(wt,ee,ne,ve),Pt.copy(lt))},reset:function(){L=!1,ht=null,Pt.set(-1,0,0,0)}}}function s(){let L=!1,lt=null,ht=null,Pt=null;return{setTest:function(wt){wt?Nt(r.DEPTH_TEST):St(r.DEPTH_TEST)},setMask:function(wt){lt!==wt&&!L&&(r.depthMask(wt),lt=wt)},setFunc:function(wt){if(ht!==wt){switch(wt){case wf:r.depthFunc(r.NEVER);break;case Rf:r.depthFunc(r.ALWAYS);break;case Cf:r.depthFunc(r.LESS);break;case Gr:r.depthFunc(r.LEQUAL);break;case Pf:r.depthFunc(r.EQUAL);break;case Lf:r.depthFunc(r.GEQUAL);break;case If:r.depthFunc(r.GREATER);break;case Uf:r.depthFunc(r.NOTEQUAL);break;default:r.depthFunc(r.LEQUAL)}ht=wt}},setLocked:function(wt){L=wt},setClear:function(wt){Pt!==wt&&(r.clearDepth(wt),Pt=wt)},reset:function(){L=!1,lt=null,ht=null,Pt=null}}}function a(){let L=!1,lt=null,ht=null,Pt=null,wt=null,ee=null,ne=null,ve=null,Ue=null;return{setTest:function(ie){L||(ie?Nt(r.STENCIL_TEST):St(r.STENCIL_TEST))},setMask:function(ie){lt!==ie&&!L&&(r.stencilMask(ie),lt=ie)},setFunc:function(ie,De,an){(ht!==ie||Pt!==De||wt!==an)&&(r.stencilFunc(ie,De,an),ht=ie,Pt=De,wt=an)},setOp:function(ie,De,an){(ee!==ie||ne!==De||ve!==an)&&(r.stencilOp(ie,De,an),ee=ie,ne=De,ve=an)},setLocked:function(ie){L=ie},setClear:function(ie){Ue!==ie&&(r.clearStencil(ie),Ue=ie)},reset:function(){L=!1,lt=null,ht=null,Pt=null,wt=null,ee=null,ne=null,ve=null,Ue=null}}}let o=new i,c=new s,l=new a,h=new WeakMap,u=new WeakMap,d={},f={},m=new WeakMap,_=[],g=null,p=!1,v=null,x=null,y=null,C=null,T=null,R=null,U=null,S=new pt(0,0,0),E=0,N=!1,G=null,it=null,I=null,F=null,k=null,J=r.getParameter(r.MAX_COMBINED_TEXTURE_IMAGE_UNITS),Y=!1,W=0,tt=r.getParameter(r.VERSION);tt.indexOf(\"WebGL\")!==-1?(W=parseFloat(/^WebGL (\\d)/.exec(tt)[1]),Y=W>=1):tt.indexOf(\"OpenGL ES\")!==-1&&(W=parseFloat(/^OpenGL ES (\\d)/.exec(tt)[1]),Y=W>=2);let et=null,ut={},H=r.getParameter(r.SCISSOR_BOX),K=r.getParameter(r.VIEWPORT),dt=new te().fromArray(H),Mt=new te().fromArray(K);function gt(L,lt,ht,Pt){let wt=new Uint8Array(4),ee=r.createTexture();r.bindTexture(L,ee),r.texParameteri(L,r.TEXTURE_MIN_FILTER,r.NEAREST),r.texParameteri(L,r.TEXTURE_MAG_FILTER,r.NEAREST);for(let ne=0;ne<ht;ne++)n&&(L===r.TEXTURE_3D||L===r.TEXTURE_2D_ARRAY)?r.texImage3D(lt,0,r.RGBA,1,1,Pt,0,r.RGBA,r.UNSIGNED_BYTE,wt):r.texImage2D(lt+ne,0,r.RGBA,1,1,0,r.RGBA,r.UNSIGNED_BYTE,wt);return ee}let Ct={};Ct[r.TEXTURE_2D]=gt(r.TEXTURE_2D,r.TEXTURE_2D,1),Ct[r.TEXTURE_CUBE_MAP]=gt(r.TEXTURE_CUBE_MAP,r.TEXTURE_CUBE_MAP_POSITIVE_X,6),n&&(Ct[r.TEXTURE_2D_ARRAY]=gt(r.TEXTURE_2D_ARRAY,r.TEXTURE_2D_ARRAY,1,1),Ct[r.TEXTURE_3D]=gt(r.TEXTURE_3D,r.TEXTURE_3D,1,1)),o.setClear(0,0,0,1),c.setClear(1),l.setClear(0),Nt(r.DEPTH_TEST),c.setFunc(Gr),ft(!1),b(Ml),Nt(r.CULL_FACE),X(zn);function Nt(L){d[L]!==!0&&(r.enable(L),d[L]=!0)}function St(L){d[L]!==!1&&(r.disable(L),d[L]=!1)}function Ut(L,lt){return f[L]!==lt?(r.bindFramebuffer(L,lt),f[L]=lt,n&&(L===r.DRAW_FRAMEBUFFER&&(f[r.FRAMEBUFFER]=lt),L===r.FRAMEBUFFER&&(f[r.DRAW_FRAMEBUFFER]=lt)),!0):!1}function P(L,lt){let ht=_,Pt=!1;if(L)if(ht=m.get(lt),ht===void 0&&(ht=[],m.set(lt,ht)),L.isWebGLMultipleRenderTargets){let wt=L.texture;if(ht.length!==wt.length||ht[0]!==r.COLOR_ATTACHMENT0){for(let ee=0,ne=wt.length;ee<ne;ee++)ht[ee]=r.COLOR_ATTACHMENT0+ee;ht.length=wt.length,Pt=!0}}else ht[0]!==r.COLOR_ATTACHMENT0&&(ht[0]=r.COLOR_ATTACHMENT0,Pt=!0);else ht[0]!==r.BACK&&(ht[0]=r.BACK,Pt=!0);Pt&&(e.isWebGL2?r.drawBuffers(ht):t.get(\"WEBGL_draw_buffers\").drawBuffersWEBGL(ht))}function rt(L){return g!==L?(r.useProgram(L),g=L,!0):!1}let q={[oi]:r.FUNC_ADD,[df]:r.FUNC_SUBTRACT,[ff]:r.FUNC_REVERSE_SUBTRACT};if(n)q[Al]=r.MIN,q[Tl]=r.MAX;else{let L=t.get(\"EXT_blend_minmax\");L!==null&&(q[Al]=L.MIN_EXT,q[Tl]=L.MAX_EXT)}let st={[pf]:r.ZERO,[mf]:r.ONE,[gf]:r.SRC_COLOR,[wo]:r.SRC_ALPHA,[Sf]:r.SRC_ALPHA_SATURATE,[yf]:r.DST_COLOR,[xf]:r.DST_ALPHA,[_f]:r.ONE_MINUS_SRC_COLOR,[Ro]:r.ONE_MINUS_SRC_ALPHA,[Mf]:r.ONE_MINUS_DST_COLOR,[vf]:r.ONE_MINUS_DST_ALPHA,[bf]:r.CONSTANT_COLOR,[Ef]:r.ONE_MINUS_CONSTANT_COLOR,[Af]:r.CONSTANT_ALPHA,[Tf]:r.ONE_MINUS_CONSTANT_ALPHA};function X(L,lt,ht,Pt,wt,ee,ne,ve,Ue,ie){if(L===zn){p===!0&&(St(r.BLEND),p=!1);return}if(p===!1&&(Nt(r.BLEND),p=!0),L!==uf){if(L!==v||ie!==N){if((x!==oi||T!==oi)&&(r.blendEquation(r.FUNC_ADD),x=oi,T=oi),ie)switch(L){case Ki:r.blendFuncSeparate(r.ONE,r.ONE_MINUS_SRC_ALPHA,r.ONE,r.ONE_MINUS_SRC_ALPHA);break;case Sl:r.blendFunc(r.ONE,r.ONE);break;case bl:r.blendFuncSeparate(r.ZERO,r.ONE_MINUS_SRC_COLOR,r.ZERO,r.ONE);break;case El:r.blendFuncSeparate(r.ZERO,r.SRC_COLOR,r.ZERO,r.SRC_ALPHA);break;default:console.error(\"THREE.WebGLState: Invalid blending: \",L);break}else switch(L){case Ki:r.blendFuncSeparate(r.SRC_ALPHA,r.ONE_MINUS_SRC_ALPHA,r.ONE,r.ONE_MINUS_SRC_ALPHA);break;case Sl:r.blendFunc(r.SRC_ALPHA,r.ONE);break;case bl:r.blendFuncSeparate(r.ZERO,r.ONE_MINUS_SRC_COLOR,r.ZERO,r.ONE);break;case El:r.blendFunc(r.ZERO,r.SRC_COLOR);break;default:console.error(\"THREE.WebGLState: Invalid blending: \",L);break}y=null,C=null,R=null,U=null,S.set(0,0,0),E=0,v=L,N=ie}return}wt=wt||lt,ee=ee||ht,ne=ne||Pt,(lt!==x||wt!==T)&&(r.blendEquationSeparate(q[lt],q[wt]),x=lt,T=wt),(ht!==y||Pt!==C||ee!==R||ne!==U)&&(r.blendFuncSeparate(st[ht],st[Pt],st[ee],st[ne]),y=ht,C=Pt,R=ee,U=ne),(ve.equals(S)===!1||Ue!==E)&&(r.blendColor(ve.r,ve.g,ve.b,Ue),S.copy(ve),E=Ue),v=L,N=!1}function Et(L,lt){L.side===Mn?St(r.CULL_FACE):Nt(r.CULL_FACE);let ht=L.side===He;lt&&(ht=!ht),ft(ht),L.blending===Ki&&L.transparent===!1?X(zn):X(L.blending,L.blendEquation,L.blendSrc,L.blendDst,L.blendEquationAlpha,L.blendSrcAlpha,L.blendDstAlpha,L.blendColor,L.blendAlpha,L.premultipliedAlpha),c.setFunc(L.depthFunc),c.setTest(L.depthTest),c.setMask(L.depthWrite),o.setMask(L.colorWrite);let Pt=L.stencilWrite;l.setTest(Pt),Pt&&(l.setMask(L.stencilWriteMask),l.setFunc(L.stencilFunc,L.stencilRef,L.stencilFuncMask),l.setOp(L.stencilFail,L.stencilZFail,L.stencilZPass)),O(L.polygonOffset,L.polygonOffsetFactor,L.polygonOffsetUnits),L.alphaToCoverage===!0?Nt(r.SAMPLE_ALPHA_TO_COVERAGE):St(r.SAMPLE_ALPHA_TO_COVERAGE)}function ft(L){G!==L&&(L?r.frontFace(r.CW):r.frontFace(r.CCW),G=L)}function b(L){L!==cf?(Nt(r.CULL_FACE),L!==it&&(L===Ml?r.cullFace(r.BACK):L===lf?r.cullFace(r.FRONT):r.cullFace(r.FRONT_AND_BACK))):St(r.CULL_FACE),it=L}function M(L){L!==I&&(Y&&r.lineWidth(L),I=L)}function O(L,lt,ht){L?(Nt(r.POLYGON_OFFSET_FILL),(F!==lt||k!==ht)&&(r.polygonOffset(lt,ht),F=lt,k=ht)):St(r.POLYGON_OFFSET_FILL)}function nt(L){L?Nt(r.SCISSOR_TEST):St(r.SCISSOR_TEST)}function Q(L){L===void 0&&(L=r.TEXTURE0+J-1),et!==L&&(r.activeTexture(L),et=L)}function $(L,lt,ht){ht===void 0&&(et===null?ht=r.TEXTURE0+J-1:ht=et);let Pt=ut[ht];Pt===void 0&&(Pt={type:void 0,texture:void 0},ut[ht]=Pt),(Pt.type!==L||Pt.texture!==lt)&&(et!==ht&&(r.activeTexture(ht),et=ht),r.bindTexture(L,lt||Ct[L]),Pt.type=L,Pt.texture=lt)}function yt(){let L=ut[et];L!==void 0&&L.type!==void 0&&(r.bindTexture(L.type,null),L.type=void 0,L.texture=void 0)}function ct(){try{r.compressedTexImage2D.apply(r,arguments)}catch(L){console.error(\"THREE.WebGLState:\",L)}}function _t(){try{r.compressedTexImage3D.apply(r,arguments)}catch(L){console.error(\"THREE.WebGLState:\",L)}}function Tt(){try{r.texSubImage2D.apply(r,arguments)}catch(L){console.error(\"THREE.WebGLState:\",L)}}function Ft(){try{r.texSubImage3D.apply(r,arguments)}catch(L){console.error(\"THREE.WebGLState:\",L)}}function j(){try{r.compressedTexSubImage2D.apply(r,arguments)}catch(L){console.error(\"THREE.WebGLState:\",L)}}function Zt(){try{r.compressedTexSubImage3D.apply(r,arguments)}catch(L){console.error(\"THREE.WebGLState:\",L)}}function Yt(){try{r.texStorage2D.apply(r,arguments)}catch(L){console.error(\"THREE.WebGLState:\",L)}}function Dt(){try{r.texStorage3D.apply(r,arguments)}catch(L){console.error(\"THREE.WebGLState:\",L)}}function At(){try{r.texImage2D.apply(r,arguments)}catch(L){console.error(\"THREE.WebGLState:\",L)}}function vt(){try{r.texImage3D.apply(r,arguments)}catch(L){console.error(\"THREE.WebGLState:\",L)}}function Vt(L){dt.equals(L)===!1&&(r.scissor(L.x,L.y,L.z,L.w),dt.copy(L))}function $t(L){Mt.equals(L)===!1&&(r.viewport(L.x,L.y,L.z,L.w),Mt.copy(L))}function oe(L,lt){let ht=u.get(lt);ht===void 0&&(ht=new WeakMap,u.set(lt,ht));let Pt=ht.get(L);Pt===void 0&&(Pt=r.getUniformBlockIndex(lt,L.name),ht.set(L,Pt))}function Xt(L,lt){let Pt=u.get(lt).get(L);h.get(lt)!==Pt&&(r.uniformBlockBinding(lt,Pt,L.__bindingPointIndex),h.set(lt,Pt))}function at(){r.disable(r.BLEND),r.disable(r.CULL_FACE),r.disable(r.DEPTH_TEST),r.disable(r.POLYGON_OFFSET_FILL),r.disable(r.SCISSOR_TEST),r.disable(r.STENCIL_TEST),r.disable(r.SAMPLE_ALPHA_TO_COVERAGE),r.blendEquation(r.FUNC_ADD),r.blendFunc(r.ONE,r.ZERO),r.blendFuncSeparate(r.ONE,r.ZERO,r.ONE,r.ZERO),r.blendColor(0,0,0,0),r.colorMask(!0,!0,!0,!0),r.clearColor(0,0,0,0),r.depthMask(!0),r.depthFunc(r.LESS),r.clearDepth(1),r.stencilMask(4294967295),r.stencilFunc(r.ALWAYS,0,4294967295),r.stencilOp(r.KEEP,r.KEEP,r.KEEP),r.clearStencil(0),r.cullFace(r.BACK),r.frontFace(r.CCW),r.polygonOffset(0,0),r.activeTexture(r.TEXTURE0),r.bindFramebuffer(r.FRAMEBUFFER,null),n===!0&&(r.bindFramebuffer(r.DRAW_FRAMEBUFFER,null),r.bindFramebuffer(r.READ_FRAMEBUFFER,null)),r.useProgram(null),r.lineWidth(1),r.scissor(0,0,r.canvas.width,r.canvas.height),r.viewport(0,0,r.canvas.width,r.canvas.height),d={},et=null,ut={},f={},m=new WeakMap,_=[],g=null,p=!1,v=null,x=null,y=null,C=null,T=null,R=null,U=null,S=new pt(0,0,0),E=0,N=!1,G=null,it=null,I=null,F=null,k=null,dt.set(0,0,r.canvas.width,r.canvas.height),Mt.set(0,0,r.canvas.width,r.canvas.height),o.reset(),c.reset(),l.reset()}return{buffers:{color:o,depth:c,stencil:l},enable:Nt,disable:St,bindFramebuffer:Ut,drawBuffers:P,useProgram:rt,setBlending:X,setMaterial:Et,setFlipSided:ft,setCullFace:b,setLineWidth:M,setPolygonOffset:O,setScissorTest:nt,activeTexture:Q,bindTexture:$,unbindTexture:yt,compressedTexImage2D:ct,compressedTexImage3D:_t,texImage2D:At,texImage3D:vt,updateUBOMapping:oe,uniformBlockBinding:Xt,texStorage2D:Yt,texStorage3D:Dt,texSubImage2D:Tt,texSubImage3D:Ft,compressedTexSubImage2D:j,compressedTexSubImage3D:Zt,scissor:Vt,viewport:$t,reset:at}}function fx(r,t,e,n,i,s,a){let o=i.isWebGL2,c=t.has(\"WEBGL_multisampled_render_to_texture\")?t.get(\"WEBGL_multisampled_render_to_texture\"):null,l=typeof navigator>\"u\"?!1:/OculusBrowser/g.test(navigator.userAgent),h=new WeakMap,u,d=new WeakMap,f=!1;try{f=typeof OffscreenCanvas<\"u\"&&new OffscreenCanvas(1,1).getContext(\"2d\")!==null}catch{}function m(b,M){return f?new OffscreenCanvas(b,M):Ds(\"canvas\")}function _(b,M,O,nt){let Q=1;if((b.width>nt||b.height>nt)&&(Q=nt/Math.max(b.width,b.height)),Q<1||M===!0)if(typeof HTMLImageElement<\"u\"&&b instanceof HTMLImageElement||typeof HTMLCanvasElement<\"u\"&&b instanceof HTMLCanvasElement||typeof ImageBitmap<\"u\"&&b instanceof ImageBitmap){let $=M?ea:Math.floor,yt=$(Q*b.width),ct=$(Q*b.height);u===void 0&&(u=m(yt,ct));let _t=O?m(yt,ct):u;return _t.width=yt,_t.height=ct,_t.getContext(\"2d\").drawImage(b,0,0,yt,ct),console.warn(\"THREE.WebGLRenderer: Texture has been resized from (\"+b.width+\"x\"+b.height+\") to (\"+yt+\"x\"+ct+\").\"),_t}else return\"data\"in b&&console.warn(\"THREE.WebGLRenderer: Image in DataTexture is too big (\"+b.width+\"x\"+b.height+\").\"),b;return b}function g(b){return Lo(b.width)&&Lo(b.height)}function p(b){return o?!1:b.wrapS!==Fe||b.wrapT!==Fe||b.minFilter!==pe&&b.minFilter!==me}function v(b,M){return b.generateMipmaps&&M&&b.minFilter!==pe&&b.minFilter!==me}function x(b){r.generateMipmap(b)}function y(b,M,O,nt,Q=!1){if(o===!1)return M;if(b!==null){if(r[b]!==void 0)return r[b];console.warn(\"THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '\"+b+\"'\")}let $=M;if(M===r.RED&&(O===r.FLOAT&&($=r.R32F),O===r.HALF_FLOAT&&($=r.R16F),O===r.UNSIGNED_BYTE&&($=r.R8)),M===r.RED_INTEGER&&(O===r.UNSIGNED_BYTE&&($=r.R8UI),O===r.UNSIGNED_SHORT&&($=r.R16UI),O===r.UNSIGNED_INT&&($=r.R32UI),O===r.BYTE&&($=r.R8I),O===r.SHORT&&($=r.R16I),O===r.INT&&($=r.R32I)),M===r.RG&&(O===r.FLOAT&&($=r.RG32F),O===r.HALF_FLOAT&&($=r.RG16F),O===r.UNSIGNED_BYTE&&($=r.RG8)),M===r.RGBA){let yt=Q?Kr:jt.getTransfer(nt);O===r.FLOAT&&($=r.RGBA32F),O===r.HALF_FLOAT&&($=r.RGBA16F),O===r.UNSIGNED_BYTE&&($=yt===se?r.SRGB8_ALPHA8:r.RGBA8),O===r.UNSIGNED_SHORT_4_4_4_4&&($=r.RGBA4),O===r.UNSIGNED_SHORT_5_5_5_1&&($=r.RGB5_A1)}return($===r.R16F||$===r.R32F||$===r.RG16F||$===r.RG32F||$===r.RGBA16F||$===r.RGBA32F)&&t.get(\"EXT_color_buffer_float\"),$}function C(b,M,O){return v(b,O)===!0||b.isFramebufferTexture&&b.minFilter!==pe&&b.minFilter!==me?Math.log2(Math.max(M.width,M.height))+1:b.mipmaps!==void 0&&b.mipmaps.length>0?b.mipmaps.length:b.isCompressedTexture&&Array.isArray(b.image)?M.mipmaps.length:1}function T(b){return b===pe||b===Co||b===Hr?r.NEAREST:r.LINEAR}function R(b){let M=b.target;M.removeEventListener(\"dispose\",R),S(M),M.isVideoTexture&&h.delete(M)}function U(b){let M=b.target;M.removeEventListener(\"dispose\",U),N(M)}function S(b){let M=n.get(b);if(M.__webglInit===void 0)return;let O=b.source,nt=d.get(O);if(nt){let Q=nt[M.__cacheKey];Q.usedTimes--,Q.usedTimes===0&&E(b),Object.keys(nt).length===0&&d.delete(O)}n.remove(b)}function E(b){let M=n.get(b);r.deleteTexture(M.__webglTexture);let O=b.source,nt=d.get(O);delete nt[M.__cacheKey],a.memory.textures--}function N(b){let M=b.texture,O=n.get(b),nt=n.get(M);if(nt.__webglTexture!==void 0&&(r.deleteTexture(nt.__webglTexture),a.memory.textures--),b.depthTexture&&b.depthTexture.dispose(),b.isWebGLCubeRenderTarget)for(let Q=0;Q<6;Q++){if(Array.isArray(O.__webglFramebuffer[Q]))for(let $=0;$<O.__webglFramebuffer[Q].length;$++)r.deleteFramebuffer(O.__webglFramebuffer[Q][$]);else r.deleteFramebuffer(O.__webglFramebuffer[Q]);O.__webglDepthbuffer&&r.deleteRenderbuffer(O.__webglDepthbuffer[Q])}else{if(Array.isArray(O.__webglFramebuffer))for(let Q=0;Q<O.__webglFramebuffer.length;Q++)r.deleteFramebuffer(O.__webglFramebuffer[Q]);else r.deleteFramebuffer(O.__webglFramebuffer);if(O.__webglDepthbuffer&&r.deleteRenderbuffer(O.__webglDepthbuffer),O.__webglMultisampledFramebuffer&&r.deleteFramebuffer(O.__webglMultisampledFramebuffer),O.__webglColorRenderbuffer)for(let Q=0;Q<O.__webglColorRenderbuffer.length;Q++)O.__webglColorRenderbuffer[Q]&&r.deleteRenderbuffer(O.__webglColorRenderbuffer[Q]);O.__webglDepthRenderbuffer&&r.deleteRenderbuffer(O.__webglDepthRenderbuffer)}if(b.isWebGLMultipleRenderTargets)for(let Q=0,$=M.length;Q<$;Q++){let yt=n.get(M[Q]);yt.__webglTexture&&(r.deleteTexture(yt.__webglTexture),a.memory.textures--),n.remove(M[Q])}n.remove(M),n.remove(b)}let G=0;function it(){G=0}function I(){let b=G;return b>=i.maxTextures&&console.warn(\"THREE.WebGLTextures: Trying to use \"+b+\" texture units while this GPU supports only \"+i.maxTextures),G+=1,b}function F(b){let M=[];return M.push(b.wrapS),M.push(b.wrapT),M.push(b.wrapR||0),M.push(b.magFilter),M.push(b.minFilter),M.push(b.anisotropy),M.push(b.internalFormat),M.push(b.format),M.push(b.type),M.push(b.generateMipmaps),M.push(b.premultiplyAlpha),M.push(b.flipY),M.push(b.unpackAlignment),M.push(b.colorSpace),M.join()}function k(b,M){let O=n.get(b);if(b.isVideoTexture&&Et(b),b.isRenderTargetTexture===!1&&b.version>0&&O.__version!==b.version){let nt=b.image;if(nt===null)console.warn(\"THREE.WebGLRenderer: Texture marked for update but no image data found.\");else if(nt.complete===!1)console.warn(\"THREE.WebGLRenderer: Texture marked for update but image is incomplete\");else{dt(O,b,M);return}}e.bindTexture(r.TEXTURE_2D,O.__webglTexture,r.TEXTURE0+M)}function J(b,M){let O=n.get(b);if(b.version>0&&O.__version!==b.version){dt(O,b,M);return}e.bindTexture(r.TEXTURE_2D_ARRAY,O.__webglTexture,r.TEXTURE0+M)}function Y(b,M){let O=n.get(b);if(b.version>0&&O.__version!==b.version){dt(O,b,M);return}e.bindTexture(r.TEXTURE_3D,O.__webglTexture,r.TEXTURE0+M)}function W(b,M){let O=n.get(b);if(b.version>0&&O.__version!==b.version){Mt(O,b,M);return}e.bindTexture(r.TEXTURE_CUBE_MAP,O.__webglTexture,r.TEXTURE0+M)}let tt={[qr]:r.REPEAT,[Fe]:r.CLAMP_TO_EDGE,[Yr]:r.MIRRORED_REPEAT},et={[pe]:r.NEAREST,[Co]:r.NEAREST_MIPMAP_NEAREST,[Hr]:r.NEAREST_MIPMAP_LINEAR,[me]:r.LINEAR,[Cd]:r.LINEAR_MIPMAP_NEAREST,[gi]:r.LINEAR_MIPMAP_LINEAR},ut={[ip]:r.NEVER,[lp]:r.ALWAYS,[sp]:r.LESS,[zd]:r.LEQUAL,[rp]:r.EQUAL,[cp]:r.GEQUAL,[ap]:r.GREATER,[op]:r.NOTEQUAL};function H(b,M,O){if(O?(r.texParameteri(b,r.TEXTURE_WRAP_S,tt[M.wrapS]),r.texParameteri(b,r.TEXTURE_WRAP_T,tt[M.wrapT]),(b===r.TEXTURE_3D||b===r.TEXTURE_2D_ARRAY)&&r.texParameteri(b,r.TEXTURE_WRAP_R,tt[M.wrapR]),r.texParameteri(b,r.TEXTURE_MAG_FILTER,et[M.magFilter]),r.texParameteri(b,r.TEXTURE_MIN_FILTER,et[M.minFilter])):(r.texParameteri(b,r.TEXTURE_WRAP_S,r.CLAMP_TO_EDGE),r.texParameteri(b,r.TEXTURE_WRAP_T,r.CLAMP_TO_EDGE),(b===r.TEXTURE_3D||b===r.TEXTURE_2D_ARRAY)&&r.texParameteri(b,r.TEXTURE_WRAP_R,r.CLAMP_TO_EDGE),(M.wrapS!==Fe||M.wrapT!==Fe)&&console.warn(\"THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping.\"),r.texParameteri(b,r.TEXTURE_MAG_FILTER,T(M.magFilter)),r.texParameteri(b,r.TEXTURE_MIN_FILTER,T(M.minFilter)),M.minFilter!==pe&&M.minFilter!==me&&console.warn(\"THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.\")),M.compareFunction&&(r.texParameteri(b,r.TEXTURE_COMPARE_MODE,r.COMPARE_REF_TO_TEXTURE),r.texParameteri(b,r.TEXTURE_COMPARE_FUNC,ut[M.compareFunction])),t.has(\"EXT_texture_filter_anisotropic\")===!0){let nt=t.get(\"EXT_texture_filter_anisotropic\");if(M.magFilter===pe||M.minFilter!==Hr&&M.minFilter!==gi||M.type===cn&&t.has(\"OES_texture_float_linear\")===!1||o===!1&&M.type===Is&&t.has(\"OES_texture_half_float_linear\")===!1)return;(M.anisotropy>1||n.get(M).__currentAnisotropy)&&(r.texParameterf(b,nt.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(M.anisotropy,i.getMaxAnisotropy())),n.get(M).__currentAnisotropy=M.anisotropy)}}function K(b,M){let O=!1;b.__webglInit===void 0&&(b.__webglInit=!0,M.addEventListener(\"dispose\",R));let nt=M.source,Q=d.get(nt);Q===void 0&&(Q={},d.set(nt,Q));let $=F(M);if($!==b.__cacheKey){Q[$]===void 0&&(Q[$]={texture:r.createTexture(),usedTimes:0},a.memory.textures++,O=!0),Q[$].usedTimes++;let yt=Q[b.__cacheKey];yt!==void 0&&(Q[b.__cacheKey].usedTimes--,yt.usedTimes===0&&E(M)),b.__cacheKey=$,b.__webglTexture=Q[$].texture}return O}function dt(b,M,O){let nt=r.TEXTURE_2D;(M.isDataArrayTexture||M.isCompressedArrayTexture)&&(nt=r.TEXTURE_2D_ARRAY),M.isData3DTexture&&(nt=r.TEXTURE_3D);let Q=K(b,M),$=M.source;e.bindTexture(nt,b.__webglTexture,r.TEXTURE0+O);let yt=n.get($);if($.version!==yt.__version||Q===!0){e.activeTexture(r.TEXTURE0+O);let ct=jt.getPrimaries(jt.workingColorSpace),_t=M.colorSpace===$e?null:jt.getPrimaries(M.colorSpace),Tt=M.colorSpace===$e||ct===_t?r.NONE:r.BROWSER_DEFAULT_WEBGL;r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,M.flipY),r.pixelStorei(r.UNPACK_PREMULTIPLY_ALPHA_WEBGL,M.premultiplyAlpha),r.pixelStorei(r.UNPACK_ALIGNMENT,M.unpackAlignment),r.pixelStorei(r.UNPACK_COLORSPACE_CONVERSION_WEBGL,Tt);let Ft=p(M)&&g(M.image)===!1,j=_(M.image,Ft,!1,i.maxTextureSize);j=ft(M,j);let Zt=g(j)||o,Yt=s.convert(M.format,M.colorSpace),Dt=s.convert(M.type),At=y(M.internalFormat,Yt,Dt,M.colorSpace,M.isVideoTexture);H(nt,M,Zt);let vt,Vt=M.mipmaps,$t=o&&M.isVideoTexture!==!0&&At!==Od,oe=yt.__version===void 0||Q===!0,Xt=C(M,j,Zt);if(M.isDepthTexture)At=r.DEPTH_COMPONENT,o?M.type===cn?At=r.DEPTH_COMPONENT32F:M.type===Nn?At=r.DEPTH_COMPONENT24:M.type===ui?At=r.DEPTH24_STENCIL8:At=r.DEPTH_COMPONENT16:M.type===cn&&console.error(\"WebGLRenderer: Floating point depth texture requires WebGL2.\"),M.format===di&&At===r.DEPTH_COMPONENT&&M.type!==al&&M.type!==Nn&&(console.warn(\"THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture.\"),M.type=Nn,Dt=s.convert(M.type)),M.format===ts&&At===r.DEPTH_COMPONENT&&(At=r.DEPTH_STENCIL,M.type!==ui&&(console.warn(\"THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture.\"),M.type=ui,Dt=s.convert(M.type))),oe&&($t?e.texStorage2D(r.TEXTURE_2D,1,At,j.width,j.height):e.texImage2D(r.TEXTURE_2D,0,At,j.width,j.height,0,Yt,Dt,null));else if(M.isDataTexture)if(Vt.length>0&&Zt){$t&&oe&&e.texStorage2D(r.TEXTURE_2D,Xt,At,Vt[0].width,Vt[0].height);for(let at=0,L=Vt.length;at<L;at++)vt=Vt[at],$t?e.texSubImage2D(r.TEXTURE_2D,at,0,0,vt.width,vt.height,Yt,Dt,vt.data):e.texImage2D(r.TEXTURE_2D,at,At,vt.width,vt.height,0,Yt,Dt,vt.data);M.generateMipmaps=!1}else $t?(oe&&e.texStorage2D(r.TEXTURE_2D,Xt,At,j.width,j.height),e.texSubImage2D(r.TEXTURE_2D,0,0,0,j.width,j.height,Yt,Dt,j.data)):e.texImage2D(r.TEXTURE_2D,0,At,j.width,j.height,0,Yt,Dt,j.data);else if(M.isCompressedTexture)if(M.isCompressedArrayTexture){$t&&oe&&e.texStorage3D(r.TEXTURE_2D_ARRAY,Xt,At,Vt[0].width,Vt[0].height,j.depth);for(let at=0,L=Vt.length;at<L;at++)vt=Vt[at],M.format!==qe?Yt!==null?$t?e.compressedTexSubImage3D(r.TEXTURE_2D_ARRAY,at,0,0,0,vt.width,vt.height,j.depth,Yt,vt.data,0,0):e.compressedTexImage3D(r.TEXTURE_2D_ARRAY,at,At,vt.width,vt.height,j.depth,0,vt.data,0,0):console.warn(\"THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()\"):$t?e.texSubImage3D(r.TEXTURE_2D_ARRAY,at,0,0,0,vt.width,vt.height,j.depth,Yt,Dt,vt.data):e.texImage3D(r.TEXTURE_2D_ARRAY,at,At,vt.width,vt.height,j.depth,0,Yt,Dt,vt.data)}else{$t&&oe&&e.texStorage2D(r.TEXTURE_2D,Xt,At,Vt[0].width,Vt[0].height);for(let at=0,L=Vt.length;at<L;at++)vt=Vt[at],M.format!==qe?Yt!==null?$t?e.compressedTexSubImage2D(r.TEXTURE_2D,at,0,0,vt.width,vt.height,Yt,vt.data):e.compressedTexImage2D(r.TEXTURE_2D,at,At,vt.width,vt.height,0,vt.data):console.warn(\"THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()\"):$t?e.texSubImage2D(r.TEXTURE_2D,at,0,0,vt.width,vt.height,Yt,Dt,vt.data):e.texImage2D(r.TEXTURE_2D,at,At,vt.width,vt.height,0,Yt,Dt,vt.data)}else if(M.isDataArrayTexture)$t?(oe&&e.texStorage3D(r.TEXTURE_2D_ARRAY,Xt,At,j.width,j.height,j.depth),e.texSubImage3D(r.TEXTURE_2D_ARRAY,0,0,0,0,j.width,j.height,j.depth,Yt,Dt,j.data)):e.texImage3D(r.TEXTURE_2D_ARRAY,0,At,j.width,j.height,j.depth,0,Yt,Dt,j.data);else if(M.isData3DTexture)$t?(oe&&e.texStorage3D(r.TEXTURE_3D,Xt,At,j.width,j.height,j.depth),e.texSubImage3D(r.TEXTURE_3D,0,0,0,0,j.width,j.height,j.depth,Yt,Dt,j.data)):e.texImage3D(r.TEXTURE_3D,0,At,j.width,j.height,j.depth,0,Yt,Dt,j.data);else if(M.isFramebufferTexture){if(oe)if($t)e.texStorage2D(r.TEXTURE_2D,Xt,At,j.width,j.height);else{let at=j.width,L=j.height;for(let lt=0;lt<Xt;lt++)e.texImage2D(r.TEXTURE_2D,lt,At,at,L,0,Yt,Dt,null),at>>=1,L>>=1}}else if(Vt.length>0&&Zt){$t&&oe&&e.texStorage2D(r.TEXTURE_2D,Xt,At,Vt[0].width,Vt[0].height);for(let at=0,L=Vt.length;at<L;at++)vt=Vt[at],$t?e.texSubImage2D(r.TEXTURE_2D,at,0,0,Yt,Dt,vt):e.texImage2D(r.TEXTURE_2D,at,At,Yt,Dt,vt);M.generateMipmaps=!1}else $t?(oe&&e.texStorage2D(r.TEXTURE_2D,Xt,At,j.width,j.height),e.texSubImage2D(r.TEXTURE_2D,0,0,0,Yt,Dt,j)):e.texImage2D(r.TEXTURE_2D,0,At,Yt,Dt,j);v(M,Zt)&&x(nt),yt.__version=$.version,M.onUpdate&&M.onUpdate(M)}b.__version=M.version}function Mt(b,M,O){if(M.image.length!==6)return;let nt=K(b,M),Q=M.source;e.bindTexture(r.TEXTURE_CUBE_MAP,b.__webglTexture,r.TEXTURE0+O);let $=n.get(Q);if(Q.version!==$.__version||nt===!0){e.activeTexture(r.TEXTURE0+O);let yt=jt.getPrimaries(jt.workingColorSpace),ct=M.colorSpace===$e?null:jt.getPrimaries(M.colorSpace),_t=M.colorSpace===$e||yt===ct?r.NONE:r.BROWSER_DEFAULT_WEBGL;r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,M.flipY),r.pixelStorei(r.UNPACK_PREMULTIPLY_ALPHA_WEBGL,M.premultiplyAlpha),r.pixelStorei(r.UNPACK_ALIGNMENT,M.unpackAlignment),r.pixelStorei(r.UNPACK_COLORSPACE_CONVERSION_WEBGL,_t);let Tt=M.isCompressedTexture||M.image[0].isCompressedTexture,Ft=M.image[0]&&M.image[0].isDataTexture,j=[];for(let at=0;at<6;at++)!Tt&&!Ft?j[at]=_(M.image[at],!1,!0,i.maxCubemapSize):j[at]=Ft?M.image[at].image:M.image[at],j[at]=ft(M,j[at]);let Zt=j[0],Yt=g(Zt)||o,Dt=s.convert(M.format,M.colorSpace),At=s.convert(M.type),vt=y(M.internalFormat,Dt,At,M.colorSpace),Vt=o&&M.isVideoTexture!==!0,$t=$.__version===void 0||nt===!0,oe=C(M,Zt,Yt);H(r.TEXTURE_CUBE_MAP,M,Yt);let Xt;if(Tt){Vt&&$t&&e.texStorage2D(r.TEXTURE_CUBE_MAP,oe,vt,Zt.width,Zt.height);for(let at=0;at<6;at++){Xt=j[at].mipmaps;for(let L=0;L<Xt.length;L++){let lt=Xt[L];M.format!==qe?Dt!==null?Vt?e.compressedTexSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+at,L,0,0,lt.width,lt.height,Dt,lt.data):e.compressedTexImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+at,L,vt,lt.width,lt.height,0,lt.data):console.warn(\"THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()\"):Vt?e.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+at,L,0,0,lt.width,lt.height,Dt,At,lt.data):e.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+at,L,vt,lt.width,lt.height,0,Dt,At,lt.data)}}}else{Xt=M.mipmaps,Vt&&$t&&(Xt.length>0&&oe++,e.texStorage2D(r.TEXTURE_CUBE_MAP,oe,vt,j[0].width,j[0].height));for(let at=0;at<6;at++)if(Ft){Vt?e.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+at,0,0,0,j[at].width,j[at].height,Dt,At,j[at].data):e.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+at,0,vt,j[at].width,j[at].height,0,Dt,At,j[at].data);for(let L=0;L<Xt.length;L++){let ht=Xt[L].image[at].image;Vt?e.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+at,L+1,0,0,ht.width,ht.height,Dt,At,ht.data):e.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+at,L+1,vt,ht.width,ht.height,0,Dt,At,ht.data)}}else{Vt?e.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+at,0,0,0,Dt,At,j[at]):e.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+at,0,vt,Dt,At,j[at]);for(let L=0;L<Xt.length;L++){let lt=Xt[L];Vt?e.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+at,L+1,0,0,Dt,At,lt.image[at]):e.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+at,L+1,vt,Dt,At,lt.image[at])}}}v(M,Yt)&&x(r.TEXTURE_CUBE_MAP),$.__version=Q.version,M.onUpdate&&M.onUpdate(M)}b.__version=M.version}function gt(b,M,O,nt,Q,$){let yt=s.convert(O.format,O.colorSpace),ct=s.convert(O.type),_t=y(O.internalFormat,yt,ct,O.colorSpace);if(!n.get(M).__hasExternalTextures){let Ft=Math.max(1,M.width>>$),j=Math.max(1,M.height>>$);Q===r.TEXTURE_3D||Q===r.TEXTURE_2D_ARRAY?e.texImage3D(Q,$,_t,Ft,j,M.depth,0,yt,ct,null):e.texImage2D(Q,$,_t,Ft,j,0,yt,ct,null)}e.bindFramebuffer(r.FRAMEBUFFER,b),X(M)?c.framebufferTexture2DMultisampleEXT(r.FRAMEBUFFER,nt,Q,n.get(O).__webglTexture,0,st(M)):(Q===r.TEXTURE_2D||Q>=r.TEXTURE_CUBE_MAP_POSITIVE_X&&Q<=r.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&r.framebufferTexture2D(r.FRAMEBUFFER,nt,Q,n.get(O).__webglTexture,$),e.bindFramebuffer(r.FRAMEBUFFER,null)}function Ct(b,M,O){if(r.bindRenderbuffer(r.RENDERBUFFER,b),M.depthBuffer&&!M.stencilBuffer){let nt=o===!0?r.DEPTH_COMPONENT24:r.DEPTH_COMPONENT16;if(O||X(M)){let Q=M.depthTexture;Q&&Q.isDepthTexture&&(Q.type===cn?nt=r.DEPTH_COMPONENT32F:Q.type===Nn&&(nt=r.DEPTH_COMPONENT24));let $=st(M);X(M)?c.renderbufferStorageMultisampleEXT(r.RENDERBUFFER,$,nt,M.width,M.height):r.renderbufferStorageMultisample(r.RENDERBUFFER,$,nt,M.width,M.height)}else r.renderbufferStorage(r.RENDERBUFFER,nt,M.width,M.height);r.framebufferRenderbuffer(r.FRAMEBUFFER,r.DEPTH_ATTACHMENT,r.RENDERBUFFER,b)}else if(M.depthBuffer&&M.stencilBuffer){let nt=st(M);O&&X(M)===!1?r.renderbufferStorageMultisample(r.RENDERBUFFER,nt,r.DEPTH24_STENCIL8,M.width,M.height):X(M)?c.renderbufferStorageMultisampleEXT(r.RENDERBUFFER,nt,r.DEPTH24_STENCIL8,M.width,M.height):r.renderbufferStorage(r.RENDERBUFFER,r.DEPTH_STENCIL,M.width,M.height),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.DEPTH_STENCIL_ATTACHMENT,r.RENDERBUFFER,b)}else{let nt=M.isWebGLMultipleRenderTargets===!0?M.texture:[M.texture];for(let Q=0;Q<nt.length;Q++){let $=nt[Q],yt=s.convert($.format,$.colorSpace),ct=s.convert($.type),_t=y($.internalFormat,yt,ct,$.colorSpace),Tt=st(M);O&&X(M)===!1?r.renderbufferStorageMultisample(r.RENDERBUFFER,Tt,_t,M.width,M.height):X(M)?c.renderbufferStorageMultisampleEXT(r.RENDERBUFFER,Tt,_t,M.width,M.height):r.renderbufferStorage(r.RENDERBUFFER,_t,M.width,M.height)}}r.bindRenderbuffer(r.RENDERBUFFER,null)}function Nt(b,M){if(M&&M.isWebGLCubeRenderTarget)throw new Error(\"Depth Texture with cube render targets is not supported\");if(e.bindFramebuffer(r.FRAMEBUFFER,b),!(M.depthTexture&&M.depthTexture.isDepthTexture))throw new Error(\"renderTarget.depthTexture must be an instance of THREE.DepthTexture\");(!n.get(M.depthTexture).__webglTexture||M.depthTexture.image.width!==M.width||M.depthTexture.image.height!==M.height)&&(M.depthTexture.image.width=M.width,M.depthTexture.image.height=M.height,M.depthTexture.needsUpdate=!0),k(M.depthTexture,0);let nt=n.get(M.depthTexture).__webglTexture,Q=st(M);if(M.depthTexture.format===di)X(M)?c.framebufferTexture2DMultisampleEXT(r.FRAMEBUFFER,r.DEPTH_ATTACHMENT,r.TEXTURE_2D,nt,0,Q):r.framebufferTexture2D(r.FRAMEBUFFER,r.DEPTH_ATTACHMENT,r.TEXTURE_2D,nt,0);else if(M.depthTexture.format===ts)X(M)?c.framebufferTexture2DMultisampleEXT(r.FRAMEBUFFER,r.DEPTH_STENCIL_ATTACHMENT,r.TEXTURE_2D,nt,0,Q):r.framebufferTexture2D(r.FRAMEBUFFER,r.DEPTH_STENCIL_ATTACHMENT,r.TEXTURE_2D,nt,0);else throw new Error(\"Unknown depthTexture format\")}function St(b){let M=n.get(b),O=b.isWebGLCubeRenderTarget===!0;if(b.depthTexture&&!M.__autoAllocateDepthBuffer){if(O)throw new Error(\"target.depthTexture not supported in Cube render targets\");Nt(M.__webglFramebuffer,b)}else if(O){M.__webglDepthbuffer=[];for(let nt=0;nt<6;nt++)e.bindFramebuffer(r.FRAMEBUFFER,M.__webglFramebuffer[nt]),M.__webglDepthbuffer[nt]=r.createRenderbuffer(),Ct(M.__webglDepthbuffer[nt],b,!1)}else e.bindFramebuffer(r.FRAMEBUFFER,M.__webglFramebuffer),M.__webglDepthbuffer=r.createRenderbuffer(),Ct(M.__webglDepthbuffer,b,!1);e.bindFramebuffer(r.FRAMEBUFFER,null)}function Ut(b,M,O){let nt=n.get(b);M!==void 0&&gt(nt.__webglFramebuffer,b,b.texture,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,0),O!==void 0&&St(b)}function P(b){let M=b.texture,O=n.get(b),nt=n.get(M);b.addEventListener(\"dispose\",U),b.isWebGLMultipleRenderTargets!==!0&&(nt.__webglTexture===void 0&&(nt.__webglTexture=r.createTexture()),nt.__version=M.version,a.memory.textures++);let Q=b.isWebGLCubeRenderTarget===!0,$=b.isWebGLMultipleRenderTargets===!0,yt=g(b)||o;if(Q){O.__webglFramebuffer=[];for(let ct=0;ct<6;ct++)if(o&&M.mipmaps&&M.mipmaps.length>0){O.__webglFramebuffer[ct]=[];for(let _t=0;_t<M.mipmaps.length;_t++)O.__webglFramebuffer[ct][_t]=r.createFramebuffer()}else O.__webglFramebuffer[ct]=r.createFramebuffer()}else{if(o&&M.mipmaps&&M.mipmaps.length>0){O.__webglFramebuffer=[];for(let ct=0;ct<M.mipmaps.length;ct++)O.__webglFramebuffer[ct]=r.createFramebuffer()}else O.__webglFramebuffer=r.createFramebuffer();if($)if(i.drawBuffers){let ct=b.texture;for(let _t=0,Tt=ct.length;_t<Tt;_t++){let Ft=n.get(ct[_t]);Ft.__webglTexture===void 0&&(Ft.__webglTexture=r.createTexture(),a.memory.textures++)}}else console.warn(\"THREE.WebGLRenderer: WebGLMultipleRenderTargets can only be used with WebGL2 or WEBGL_draw_buffers extension.\");if(o&&b.samples>0&&X(b)===!1){let ct=$?M:[M];O.__webglMultisampledFramebuffer=r.createFramebuffer(),O.__webglColorRenderbuffer=[],e.bindFramebuffer(r.FRAMEBUFFER,O.__webglMultisampledFramebuffer);for(let _t=0;_t<ct.length;_t++){let Tt=ct[_t];O.__webglColorRenderbuffer[_t]=r.createRenderbuffer(),r.bindRenderbuffer(r.RENDERBUFFER,O.__webglColorRenderbuffer[_t]);let Ft=s.convert(Tt.format,Tt.colorSpace),j=s.convert(Tt.type),Zt=y(Tt.internalFormat,Ft,j,Tt.colorSpace,b.isXRRenderTarget===!0),Yt=st(b);r.renderbufferStorageMultisample(r.RENDERBUFFER,Yt,Zt,b.width,b.height),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0+_t,r.RENDERBUFFER,O.__webglColorRenderbuffer[_t])}r.bindRenderbuffer(r.RENDERBUFFER,null),b.depthBuffer&&(O.__webglDepthRenderbuffer=r.createRenderbuffer(),Ct(O.__webglDepthRenderbuffer,b,!0)),e.bindFramebuffer(r.FRAMEBUFFER,null)}}if(Q){e.bindTexture(r.TEXTURE_CUBE_MAP,nt.__webglTexture),H(r.TEXTURE_CUBE_MAP,M,yt);for(let ct=0;ct<6;ct++)if(o&&M.mipmaps&&M.mipmaps.length>0)for(let _t=0;_t<M.mipmaps.length;_t++)gt(O.__webglFramebuffer[ct][_t],b,M,r.COLOR_ATTACHMENT0,r.TEXTURE_CUBE_MAP_POSITIVE_X+ct,_t);else gt(O.__webglFramebuffer[ct],b,M,r.COLOR_ATTACHMENT0,r.TEXTURE_CUBE_MAP_POSITIVE_X+ct,0);v(M,yt)&&x(r.TEXTURE_CUBE_MAP),e.unbindTexture()}else if($){let ct=b.texture;for(let _t=0,Tt=ct.length;_t<Tt;_t++){let Ft=ct[_t],j=n.get(Ft);e.bindTexture(r.TEXTURE_2D,j.__webglTexture),H(r.TEXTURE_2D,Ft,yt),gt(O.__webglFramebuffer,b,Ft,r.COLOR_ATTACHMENT0+_t,r.TEXTURE_2D,0),v(Ft,yt)&&x(r.TEXTURE_2D)}e.unbindTexture()}else{let ct=r.TEXTURE_2D;if((b.isWebGL3DRenderTarget||b.isWebGLArrayRenderTarget)&&(o?ct=b.isWebGL3DRenderTarget?r.TEXTURE_3D:r.TEXTURE_2D_ARRAY:console.error(\"THREE.WebGLTextures: THREE.Data3DTexture and THREE.DataArrayTexture only supported with WebGL2.\")),e.bindTexture(ct,nt.__webglTexture),H(ct,M,yt),o&&M.mipmaps&&M.mipmaps.length>0)for(let _t=0;_t<M.mipmaps.length;_t++)gt(O.__webglFramebuffer[_t],b,M,r.COLOR_ATTACHMENT0,ct,_t);else gt(O.__webglFramebuffer,b,M,r.COLOR_ATTACHMENT0,ct,0);v(M,yt)&&x(ct),e.unbindTexture()}b.depthBuffer&&St(b)}function rt(b){let M=g(b)||o,O=b.isWebGLMultipleRenderTargets===!0?b.texture:[b.texture];for(let nt=0,Q=O.length;nt<Q;nt++){let $=O[nt];if(v($,M)){let yt=b.isWebGLCubeRenderTarget?r.TEXTURE_CUBE_MAP:r.TEXTURE_2D,ct=n.get($).__webglTexture;e.bindTexture(yt,ct),x(yt),e.unbindTexture()}}}function q(b){if(o&&b.samples>0&&X(b)===!1){let M=b.isWebGLMultipleRenderTargets?b.texture:[b.texture],O=b.width,nt=b.height,Q=r.COLOR_BUFFER_BIT,$=[],yt=b.stencilBuffer?r.DEPTH_STENCIL_ATTACHMENT:r.DEPTH_ATTACHMENT,ct=n.get(b),_t=b.isWebGLMultipleRenderTargets===!0;if(_t)for(let Tt=0;Tt<M.length;Tt++)e.bindFramebuffer(r.FRAMEBUFFER,ct.__webglMultisampledFramebuffer),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0+Tt,r.RENDERBUFFER,null),e.bindFramebuffer(r.FRAMEBUFFER,ct.__webglFramebuffer),r.framebufferTexture2D(r.DRAW_FRAMEBUFFER,r.COLOR_ATTACHMENT0+Tt,r.TEXTURE_2D,null,0);e.bindFramebuffer(r.READ_FRAMEBUFFER,ct.__webglMultisampledFramebuffer),e.bindFramebuffer(r.DRAW_FRAMEBUFFER,ct.__webglFramebuffer);for(let Tt=0;Tt<M.length;Tt++){$.push(r.COLOR_ATTACHMENT0+Tt),b.depthBuffer&&$.push(yt);let Ft=ct.__ignoreDepthValues!==void 0?ct.__ignoreDepthValues:!1;if(Ft===!1&&(b.depthBuffer&&(Q|=r.DEPTH_BUFFER_BIT),b.stencilBuffer&&(Q|=r.STENCIL_BUFFER_BIT)),_t&&r.framebufferRenderbuffer(r.READ_FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.RENDERBUFFER,ct.__webglColorRenderbuffer[Tt]),Ft===!0&&(r.invalidateFramebuffer(r.READ_FRAMEBUFFER,[yt]),r.invalidateFramebuffer(r.DRAW_FRAMEBUFFER,[yt])),_t){let j=n.get(M[Tt]).__webglTexture;r.framebufferTexture2D(r.DRAW_FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,j,0)}r.blitFramebuffer(0,0,O,nt,0,0,O,nt,Q,r.NEAREST),l&&r.invalidateFramebuffer(r.READ_FRAMEBUFFER,$)}if(e.bindFramebuffer(r.READ_FRAMEBUFFER,null),e.bindFramebuffer(r.DRAW_FRAMEBUFFER,null),_t)for(let Tt=0;Tt<M.length;Tt++){e.bindFramebuffer(r.FRAMEBUFFER,ct.__webglMultisampledFramebuffer),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0+Tt,r.RENDERBUFFER,ct.__webglColorRenderbuffer[Tt]);let Ft=n.get(M[Tt]).__webglTexture;e.bindFramebuffer(r.FRAMEBUFFER,ct.__webglFramebuffer),r.framebufferTexture2D(r.DRAW_FRAMEBUFFER,r.COLOR_ATTACHMENT0+Tt,r.TEXTURE_2D,Ft,0)}e.bindFramebuffer(r.DRAW_FRAMEBUFFER,ct.__webglMultisampledFramebuffer)}}function st(b){return Math.min(i.maxSamples,b.samples)}function X(b){let M=n.get(b);return o&&b.samples>0&&t.has(\"WEBGL_multisampled_render_to_texture\")===!0&&M.__useRenderToTexture!==!1}function Et(b){let M=a.render.frame;h.get(b)!==M&&(h.set(b,M),b.update())}function ft(b,M){let O=b.colorSpace,nt=b.format,Q=b.type;return b.isCompressedTexture===!0||b.isVideoTexture===!0||b.format===Po||O!==En&&O!==$e&&(jt.getTransfer(O)===se?o===!1?t.has(\"EXT_sRGB\")===!0&&nt===qe?(b.format=Po,b.minFilter=me,b.generateMipmaps=!1):M=na.sRGBToLinear(M):(nt!==qe||Q!==kn)&&console.warn(\"THREE.WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType.\"):console.error(\"THREE.WebGLTextures: Unsupported texture color space:\",O)),M}this.allocateTextureUnit=I,this.resetTextureUnits=it,this.setTexture2D=k,this.setTexture2DArray=J,this.setTexture3D=Y,this.setTextureCube=W,this.rebindTextures=Ut,this.setupRenderTarget=P,this.updateRenderTargetMipmap=rt,this.updateMultisampleRenderTarget=q,this.setupDepthRenderbuffer=St,this.setupFrameBufferTexture=gt,this.useMultisampledRTT=X}function px(r,t,e){let n=e.isWebGL2;function i(s,a=$e){let o,c=jt.getTransfer(a);if(s===kn)return r.UNSIGNED_BYTE;if(s===Ld)return r.UNSIGNED_SHORT_4_4_4_4;if(s===Id)return r.UNSIGNED_SHORT_5_5_5_1;if(s===Gf)return r.BYTE;if(s===Wf)return r.SHORT;if(s===al)return r.UNSIGNED_SHORT;if(s===Pd)return r.INT;if(s===Nn)return r.UNSIGNED_INT;if(s===cn)return r.FLOAT;if(s===Is)return n?r.HALF_FLOAT:(o=t.get(\"OES_texture_half_float\"),o!==null?o.HALF_FLOAT_OES:null);if(s===Xf)return r.ALPHA;if(s===qe)return r.RGBA;if(s===qf)return r.LUMINANCE;if(s===Yf)return r.LUMINANCE_ALPHA;if(s===di)return r.DEPTH_COMPONENT;if(s===ts)return r.DEPTH_STENCIL;if(s===Po)return o=t.get(\"EXT_sRGB\"),o!==null?o.SRGB_ALPHA_EXT:null;if(s===Zf)return r.RED;if(s===Ud)return r.RED_INTEGER;if(s===Jf)return r.RG;if(s===Dd)return r.RG_INTEGER;if(s===Nd)return r.RGBA_INTEGER;if(s===Ba||s===za||s===Va||s===ka)if(c===se)if(o=t.get(\"WEBGL_compressed_texture_s3tc_srgb\"),o!==null){if(s===Ba)return o.COMPRESSED_SRGB_S3TC_DXT1_EXT;if(s===za)return o.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;if(s===Va)return o.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;if(s===ka)return o.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}else return null;else if(o=t.get(\"WEBGL_compressed_texture_s3tc\"),o!==null){if(s===Ba)return o.COMPRESSED_RGB_S3TC_DXT1_EXT;if(s===za)return o.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(s===Va)return o.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(s===ka)return o.COMPRESSED_RGBA_S3TC_DXT5_EXT}else return null;if(s===Rl||s===Cl||s===Pl||s===Ll)if(o=t.get(\"WEBGL_compressed_texture_pvrtc\"),o!==null){if(s===Rl)return o.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(s===Cl)return o.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(s===Pl)return o.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(s===Ll)return o.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}else return null;if(s===Od)return o=t.get(\"WEBGL_compressed_texture_etc1\"),o!==null?o.COMPRESSED_RGB_ETC1_WEBGL:null;if(s===Il||s===Ul)if(o=t.get(\"WEBGL_compressed_texture_etc\"),o!==null){if(s===Il)return c===se?o.COMPRESSED_SRGB8_ETC2:o.COMPRESSED_RGB8_ETC2;if(s===Ul)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:o.COMPRESSED_RGBA8_ETC2_EAC}else return null;if(s===Dl||s===Nl||s===Ol||s===Fl||s===Bl||s===zl||s===Vl||s===kl||s===Hl||s===Gl||s===Wl||s===Xl||s===ql||s===Yl)if(o=t.get(\"WEBGL_compressed_texture_astc\"),o!==null){if(s===Dl)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:o.COMPRESSED_RGBA_ASTC_4x4_KHR;if(s===Nl)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:o.COMPRESSED_RGBA_ASTC_5x4_KHR;if(s===Ol)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:o.COMPRESSED_RGBA_ASTC_5x5_KHR;if(s===Fl)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:o.COMPRESSED_RGBA_ASTC_6x5_KHR;if(s===Bl)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:o.COMPRESSED_RGBA_ASTC_6x6_KHR;if(s===zl)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:o.COMPRESSED_RGBA_ASTC_8x5_KHR;if(s===Vl)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:o.COMPRESSED_RGBA_ASTC_8x6_KHR;if(s===kl)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:o.COMPRESSED_RGBA_ASTC_8x8_KHR;if(s===Hl)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:o.COMPRESSED_RGBA_ASTC_10x5_KHR;if(s===Gl)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:o.COMPRESSED_RGBA_ASTC_10x6_KHR;if(s===Wl)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:o.COMPRESSED_RGBA_ASTC_10x8_KHR;if(s===Xl)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:o.COMPRESSED_RGBA_ASTC_10x10_KHR;if(s===ql)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:o.COMPRESSED_RGBA_ASTC_12x10_KHR;if(s===Yl)return c===se?o.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:o.COMPRESSED_RGBA_ASTC_12x12_KHR}else return null;if(s===Ha||s===Zl||s===Jl)if(o=t.get(\"EXT_texture_compression_bptc\"),o!==null){if(s===Ha)return c===se?o.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:o.COMPRESSED_RGBA_BPTC_UNORM_EXT;if(s===Zl)return o.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT;if(s===Jl)return o.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT}else return null;if(s===$f||s===$l||s===Kl||s===Ql)if(o=t.get(\"EXT_texture_compression_rgtc\"),o!==null){if(s===Ha)return o.COMPRESSED_RED_RGTC1_EXT;if(s===$l)return o.COMPRESSED_SIGNED_RED_RGTC1_EXT;if(s===Kl)return o.COMPRESSED_RED_GREEN_RGTC2_EXT;if(s===Ql)return o.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT}else return null;return s===ui?n?r.UNSIGNED_INT_24_8:(o=t.get(\"WEBGL_depth_texture\"),o!==null?o.UNSIGNED_INT_24_8_WEBGL:null):r[s]!==void 0?r[s]:null}return{convert:i}}var ko=class extends be{constructor(t=[]){super(),this.isArrayCamera=!0,this.cameras=t}},li=class extends Kt{constructor(){super(),this.isGroup=!0,this.type=\"Group\"}},mx={type:\"move\"},Cs=class{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return this._hand===null&&(this._hand=new li,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return this._targetRay===null&&(this._targetRay=new li,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new w,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new w),this._targetRay}getGripSpace(){return this._grip===null&&(this._grip=new li,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new w,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new w),this._grip}dispatchEvent(t){return this._targetRay!==null&&this._targetRay.dispatchEvent(t),this._grip!==null&&this._grip.dispatchEvent(t),this._hand!==null&&this._hand.dispatchEvent(t),this}connect(t){if(t&&t.hand){let e=this._hand;if(e)for(let 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}),this._targetRay!==null&&(this._targetRay.visible=!1),this._grip!==null&&(this._grip.visible=!1),this._hand!==null&&(this._hand.visible=!1),this}update(t,e,n){let i=null,s=null,a=null,o=this._targetRay,c=this._grip,l=this._hand;if(t&&e.session.visibilityState!==\"visible-blurred\"){if(l&&t.hand){a=!0;for(let _ of t.hand.values()){let g=e.getJointPose(_,n),p=this._getHandJoint(l,_);g!==null&&(p.matrix.fromArray(g.transform.matrix),p.matrix.decompose(p.position,p.rotation,p.scale),p.matrixWorldNeedsUpdate=!0,p.jointRadius=g.radius),p.visible=g!==null}let h=l.joints[\"index-finger-tip\"],u=l.joints[\"thumb-tip\"],d=h.position.distanceTo(u.position),f=.02,m=.005;l.inputState.pinching&&d>f+m?(l.inputState.pinching=!1,this.dispatchEvent({type:\"pinchend\",handedness:t.handedness,target:this})):!l.inputState.pinching&&d<=f-m&&(l.inputState.pinching=!0,this.dispatchEvent({type:\"pinchstart\",handedness:t.handedness,target:this}))}else c!==null&&t.gripSpace&&(s=e.getPose(t.gripSpace,n),s!==null&&(c.matrix.fromArray(s.transform.matrix),c.matrix.decompose(c.position,c.rotation,c.scale),c.matrixWorldNeedsUpdate=!0,s.linearVelocity?(c.hasLinearVelocity=!0,c.linearVelocity.copy(s.linearVelocity)):c.hasLinearVelocity=!1,s.angularVelocity?(c.hasAngularVelocity=!0,c.angularVelocity.copy(s.angularVelocity)):c.hasAngularVelocity=!1));o!==null&&(i=e.getPose(t.targetRaySpace,n),i===null&&s!==null&&(i=s),i!==null&&(o.matrix.fromArray(i.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),o.matrixWorldNeedsUpdate=!0,i.linearVelocity?(o.hasLinearVelocity=!0,o.linearVelocity.copy(i.linearVelocity)):o.hasLinearVelocity=!1,i.angularVelocity?(o.hasAngularVelocity=!0,o.angularVelocity.copy(i.angularVelocity)):o.hasAngularVelocity=!1,this.dispatchEvent(mx)))}return o!==null&&(o.visible=i!==null),c!==null&&(c.visible=s!==null),l!==null&&(l.visible=a!==null),this}_getHandJoint(t,e){if(t.joints[e.jointName]===void 0){let n=new li;n.matrixAutoUpdate=!1,n.visible=!1,t.joints[e.jointName]=n,t.add(n)}return t.joints[e.jointName]}},Ho=class extends hn{constructor(t,e){super();let n=this,i=null,s=1,a=null,o=\"local-floor\",c=1,l=null,h=null,u=null,d=null,f=null,m=null,_=e.getContextAttributes(),g=null,p=null,v=[],x=[],y=new Z,C=null,T=new be;T.layers.enable(1),T.viewport=new te;let R=new be;R.layers.enable(2),R.viewport=new te;let U=[T,R],S=new ko;S.layers.enable(1),S.layers.enable(2);let E=null,N=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(H){let K=v[H];return K===void 0&&(K=new Cs,v[H]=K),K.getTargetRaySpace()},this.getControllerGrip=function(H){let K=v[H];return K===void 0&&(K=new Cs,v[H]=K),K.getGripSpace()},this.getHand=function(H){let K=v[H];return K===void 0&&(K=new Cs,v[H]=K),K.getHandSpace()};function G(H){let K=x.indexOf(H.inputSource);if(K===-1)return;let dt=v[K];dt!==void 0&&(dt.update(H.inputSource,H.frame,l||a),dt.dispatchEvent({type:H.type,data:H.inputSource}))}function it(){i.removeEventListener(\"select\",G),i.removeEventListener(\"selectstart\",G),i.removeEventListener(\"selectend\",G),i.removeEventListener(\"squeeze\",G),i.removeEventListener(\"squeezestart\",G),i.removeEventListener(\"squeezeend\",G),i.removeEventListener(\"end\",it),i.removeEventListener(\"inputsourceschange\",I);for(let H=0;H<v.length;H++){let K=x[H];K!==null&&(x[H]=null,v[H].disconnect(K))}E=null,N=null,t.setRenderTarget(g),f=null,d=null,u=null,i=null,p=null,ut.stop(),n.isPresenting=!1,t.setPixelRatio(C),t.setSize(y.width,y.height,!1),n.dispatchEvent({type:\"sessionend\"})}this.setFramebufferScaleFactor=function(H){s=H,n.isPresenting===!0&&console.warn(\"THREE.WebXRManager: Cannot change framebuffer scale while presenting.\")},this.setReferenceSpaceType=function(H){o=H,n.isPresenting===!0&&console.warn(\"THREE.WebXRManager: Cannot change reference space type while presenting.\")},this.getReferenceSpace=function(){return l||a},this.setReferenceSpace=function(H){l=H},this.getBaseLayer=function(){return d!==null?d:f},this.getBinding=function(){return u},this.getFrame=function(){return m},this.getSession=function(){return i},this.setSession=async function(H){if(i=H,i!==null){if(g=t.getRenderTarget(),i.addEventListener(\"select\",G),i.addEventListener(\"selectstart\",G),i.addEventListener(\"selectend\",G),i.addEventListener(\"squeeze\",G),i.addEventListener(\"squeezestart\",G),i.addEventListener(\"squeezeend\",G),i.addEventListener(\"end\",it),i.addEventListener(\"inputsourceschange\",I),_.xrCompatible!==!0&&await e.makeXRCompatible(),C=t.getPixelRatio(),t.getSize(y),i.renderState.layers===void 0||t.capabilities.isWebGL2===!1){let K={antialias:i.renderState.layers===void 0?_.antialias:!0,alpha:!0,depth:_.depth,stencil:_.stencil,framebufferScaleFactor:s};f=new XRWebGLLayer(i,e,K),i.updateRenderState({baseLayer:f}),t.setPixelRatio(1),t.setSize(f.framebufferWidth,f.framebufferHeight,!1),p=new Ke(f.framebufferWidth,f.framebufferHeight,{format:qe,type:kn,colorSpace:t.outputColorSpace,stencilBuffer:_.stencil})}else{let K=null,dt=null,Mt=null;_.depth&&(Mt=_.stencil?e.DEPTH24_STENCIL8:e.DEPTH_COMPONENT24,K=_.stencil?ts:di,dt=_.stencil?ui:Nn);let gt={colorFormat:e.RGBA8,depthFormat:Mt,scaleFactor:s};u=new XRWebGLBinding(i,e),d=u.createProjectionLayer(gt),i.updateRenderState({layers:[d]}),t.setPixelRatio(1),t.setSize(d.textureWidth,d.textureHeight,!1),p=new Ke(d.textureWidth,d.textureHeight,{format:qe,type:kn,depthTexture:new la(d.textureWidth,d.textureHeight,dt,void 0,void 0,void 0,void 0,void 0,void 0,K),stencilBuffer:_.stencil,colorSpace:t.outputColorSpace,samples:_.antialias?4:0});let Ct=t.properties.get(p);Ct.__ignoreDepthValues=d.ignoreDepthValues}p.isXRRenderTarget=!0,this.setFoveation(c),l=null,a=await i.requestReferenceSpace(o),ut.setContext(i),ut.start(),n.isPresenting=!0,n.dispatchEvent({type:\"sessionstart\"})}},this.getEnvironmentBlendMode=function(){if(i!==null)return i.environmentBlendMode};function I(H){for(let K=0;K<H.removed.length;K++){let dt=H.removed[K],Mt=x.indexOf(dt);Mt>=0&&(x[Mt]=null,v[Mt].disconnect(dt))}for(let K=0;K<H.added.length;K++){let dt=H.added[K],Mt=x.indexOf(dt);if(Mt===-1){for(let Ct=0;Ct<v.length;Ct++)if(Ct>=x.length){x.push(dt),Mt=Ct;break}else if(x[Ct]===null){x[Ct]=dt,Mt=Ct;break}if(Mt===-1)break}let gt=v[Mt];gt&&gt.connect(dt)}}let F=new w,k=new w;function J(H,K,dt){F.setFromMatrixPosition(K.matrixWorld),k.setFromMatrixPosition(dt.matrixWorld);let Mt=F.distanceTo(k),gt=K.projectionMatrix.elements,Ct=dt.projectionMatrix.elements,Nt=gt[14]/(gt[10]-1),St=gt[14]/(gt[10]+1),Ut=(gt[9]+1)/gt[5],P=(gt[9]-1)/gt[5],rt=(gt[8]-1)/gt[0],q=(Ct[8]+1)/Ct[0],st=Nt*rt,X=Nt*q,Et=Mt/(-rt+q),ft=Et*-rt;K.matrixWorld.decompose(H.position,H.quaternion,H.scale),H.translateX(ft),H.translateZ(Et),H.matrixWorld.compose(H.position,H.quaternion,H.scale),H.matrixWorldInverse.copy(H.matrixWorld).invert();let b=Nt+Et,M=St+Et,O=st-ft,nt=X+(Mt-ft),Q=Ut*St/M*b,$=P*St/M*b;H.projectionMatrix.makePerspective(O,nt,Q,$,b,M),H.projectionMatrixInverse.copy(H.projectionMatrix).invert()}function Y(H,K){K===null?H.matrixWorld.copy(H.matrix):H.matrixWorld.multiplyMatrices(K.matrixWorld,H.matrix),H.matrixWorldInverse.copy(H.matrixWorld).invert()}this.updateCamera=function(H){if(i===null)return;S.near=R.near=T.near=H.near,S.far=R.far=T.far=H.far,(E!==S.near||N!==S.far)&&(i.updateRenderState({depthNear:S.near,depthFar:S.far}),E=S.near,N=S.far);let K=H.parent,dt=S.cameras;Y(S,K);for(let Mt=0;Mt<dt.length;Mt++)Y(dt[Mt],K);dt.length===2?J(S,T,R):S.projectionMatrix.copy(T.projectionMatrix),W(H,S,K)};function W(H,K,dt){dt===null?H.matrix.copy(K.matrixWorld):(H.matrix.copy(dt.matrixWorld),H.matrix.invert(),H.matrix.multiply(K.matrixWorld)),H.matrix.decompose(H.position,H.quaternion,H.scale),H.updateMatrixWorld(!0),H.projectionMatrix.copy(K.projectionMatrix),H.projectionMatrixInverse.copy(K.projectionMatrixInverse),H.isPerspectiveCamera&&(H.fov=es*2*Math.atan(1/H.projectionMatrix.elements[5]),H.zoom=1)}this.getCamera=function(){return S},this.getFoveation=function(){if(!(d===null&&f===null))return c},this.setFoveation=function(H){c=H,d!==null&&(d.fixedFoveation=H),f!==null&&f.fixedFoveation!==void 0&&(f.fixedFoveation=H)};let tt=null;function et(H,K){if(h=K.getViewerPose(l||a),m=K,h!==null){let dt=h.views;f!==null&&(t.setRenderTargetFramebuffer(p,f.framebuffer),t.setRenderTarget(p));let Mt=!1;dt.length!==S.cameras.length&&(S.cameras.length=0,Mt=!0);for(let gt=0;gt<dt.length;gt++){let Ct=dt[gt],Nt=null;if(f!==null)Nt=f.getViewport(Ct);else{let Ut=u.getViewSubImage(d,Ct);Nt=Ut.viewport,gt===0&&(t.setRenderTargetTextures(p,Ut.colorTexture,d.ignoreDepthValues?void 0:Ut.depthStencilTexture),t.setRenderTarget(p))}let St=U[gt];St===void 0&&(St=new be,St.layers.enable(gt),St.viewport=new te,U[gt]=St),St.matrix.fromArray(Ct.transform.matrix),St.matrix.decompose(St.position,St.quaternion,St.scale),St.projectionMatrix.fromArray(Ct.projectionMatrix),St.projectionMatrixInverse.copy(St.projectionMatrix).invert(),St.viewport.set(Nt.x,Nt.y,Nt.width,Nt.height),gt===0&&(S.matrix.copy(St.matrix),S.matrix.decompose(S.position,S.quaternion,S.scale)),Mt===!0&&S.cameras.push(St)}}for(let dt=0;dt<v.length;dt++){let Mt=x[dt],gt=v[dt];Mt!==null&&gt!==void 0&&gt.update(Mt,K,l||a)}tt&&tt(H,K),K.detectedPlanes&&n.dispatchEvent({type:\"planesdetected\",data:K}),m=null}let ut=new Gd;ut.setAnimationLoop(et),this.setAnimationLoop=function(H){tt=H},this.dispose=function(){}}};function gx(r,t){function e(g,p){g.matrixAutoUpdate===!0&&g.updateMatrix(),p.value.copy(g.matrix)}function n(g,p){p.color.getRGB(g.fogColor.value,Hd(r)),p.isFog?(g.fogNear.value=p.near,g.fogFar.value=p.far):p.isFogExp2&&(g.fogDensity.value=p.density)}function i(g,p,v,x,y){p.isMeshBasicMaterial||p.isMeshLambertMaterial?s(g,p):p.isMeshToonMaterial?(s(g,p),u(g,p)):p.isMeshPhongMaterial?(s(g,p),h(g,p)):p.isMeshStandardMaterial?(s(g,p),d(g,p),p.isMeshPhysicalMaterial&&f(g,p,y)):p.isMeshMatcapMaterial?(s(g,p),m(g,p)):p.isMeshDepthMaterial?s(g,p):p.isMeshDistanceMaterial?(s(g,p),_(g,p)):p.isMeshNormalMaterial?s(g,p):p.isLineBasicMaterial?(a(g,p),p.isLineDashedMaterial&&o(g,p)):p.isPointsMaterial?c(g,p,v,x):p.isSpriteMaterial?l(g,p):p.isShadowMaterial?(g.color.value.copy(p.color),g.opacity.value=p.opacity):p.isShaderMaterial&&(p.uniformsNeedUpdate=!1)}function s(g,p){g.opacity.value=p.opacity,p.color&&g.diffuse.value.copy(p.color),p.emissive&&g.emissive.value.copy(p.emissive).multiplyScalar(p.emissiveIntensity),p.map&&(g.map.value=p.map,e(p.map,g.mapTransform)),p.alphaMap&&(g.alphaMap.value=p.alphaMap,e(p.alphaMap,g.alphaMapTransform)),p.bumpMap&&(g.bumpMap.value=p.bumpMap,e(p.bumpMap,g.bumpMapTransform),g.bumpScale.value=p.bumpScale,p.side===He&&(g.bumpScale.value*=-1)),p.normalMap&&(g.normalMap.value=p.normalMap,e(p.normalMap,g.normalMapTransform),g.normalScale.value.copy(p.normalScale),p.side===He&&g.normalScale.value.negate()),p.displacementMap&&(g.displacementMap.value=p.displacementMap,e(p.displacementMap,g.displacementMapTransform),g.displacementScale.value=p.displacementScale,g.displacementBias.value=p.displacementBias),p.emissiveMap&&(g.emissiveMap.value=p.emissiveMap,e(p.emissiveMap,g.emissiveMapTransform)),p.specularMap&&(g.specularMap.value=p.specularMap,e(p.specularMap,g.specularMapTransform)),p.alphaTest>0&&(g.alphaTest.value=p.alphaTest);let v=t.get(p).envMap;if(v&&(g.envMap.value=v,g.flipEnvMap.value=v.isCubeTexture&&v.isRenderTargetTexture===!1?-1:1,g.reflectivity.value=p.reflectivity,g.ior.value=p.ior,g.refractionRatio.value=p.refractionRatio),p.lightMap){g.lightMap.value=p.lightMap;let x=r._useLegacyLights===!0?Math.PI:1;g.lightMapIntensity.value=p.lightMapIntensity*x,e(p.lightMap,g.lightMapTransform)}p.aoMap&&(g.aoMap.value=p.aoMap,g.aoMapIntensity.value=p.aoMapIntensity,e(p.aoMap,g.aoMapTransform))}function a(g,p){g.diffuse.value.copy(p.color),g.opacity.value=p.opacity,p.map&&(g.map.value=p.map,e(p.map,g.mapTransform))}function o(g,p){g.dashSize.value=p.dashSize,g.totalSize.value=p.dashSize+p.gapSize,g.scale.value=p.scale}function c(g,p,v,x){g.diffuse.value.copy(p.color),g.opacity.value=p.opacity,g.size.value=p.size*v,g.scale.value=x*.5,p.map&&(g.map.value=p.map,e(p.map,g.uvTransform)),p.alphaMap&&(g.alphaMap.value=p.alphaMap,e(p.alphaMap,g.alphaMapTransform)),p.alphaTest>0&&(g.alphaTest.value=p.alphaTest)}function l(g,p){g.diffuse.value.copy(p.color),g.opacity.value=p.opacity,g.rotation.value=p.rotation,p.map&&(g.map.value=p.map,e(p.map,g.mapTransform)),p.alphaMap&&(g.alphaMap.value=p.alphaMap,e(p.alphaMap,g.alphaMapTransform)),p.alphaTest>0&&(g.alphaTest.value=p.alphaTest)}function h(g,p){g.specular.value.copy(p.specular),g.shininess.value=Math.max(p.shininess,1e-4)}function u(g,p){p.gradientMap&&(g.gradientMap.value=p.gradientMap)}function d(g,p){g.metalness.value=p.metalness,p.metalnessMap&&(g.metalnessMap.value=p.metalnessMap,e(p.metalnessMap,g.metalnessMapTransform)),g.roughness.value=p.roughness,p.roughnessMap&&(g.roughnessMap.value=p.roughnessMap,e(p.roughnessMap,g.roughnessMapTransform)),t.get(p).envMap&&(g.envMapIntensity.value=p.envMapIntensity)}function f(g,p,v){g.ior.value=p.ior,p.sheen>0&&(g.sheenColor.value.copy(p.sheenColor).multiplyScalar(p.sheen),g.sheenRoughness.value=p.sheenRoughness,p.sheenColorMap&&(g.sheenColorMap.value=p.sheenColorMap,e(p.sheenColorMap,g.sheenColorMapTransform)),p.sheenRoughnessMap&&(g.sheenRoughnessMap.value=p.sheenRoughnessMap,e(p.sheenRoughnessMap,g.sheenRoughnessMapTransform))),p.clearcoat>0&&(g.clearcoat.value=p.clearcoat,g.clearcoatRoughness.value=p.clearcoatRoughness,p.clearcoatMap&&(g.clearcoatMap.value=p.clearcoatMap,e(p.clearcoatMap,g.clearcoatMapTransform)),p.clearcoatRoughnessMap&&(g.clearcoatRoughnessMap.value=p.clearcoatRoughnessMap,e(p.clearcoatRoughnessMap,g.clearcoatRoughnessMapTransform)),p.clearcoatNormalMap&&(g.clearcoatNormalMap.value=p.clearcoatNormalMap,e(p.clearcoatNormalMap,g.clearcoatNormalMapTransform),g.clearcoatNormalScale.value.copy(p.clearcoatNormalScale),p.side===He&&g.clearcoatNormalScale.value.negate())),p.iridescence>0&&(g.iridescence.value=p.iridescence,g.iridescenceIOR.value=p.iridescenceIOR,g.iridescenceThicknessMinimum.value=p.iridescenceThicknessRange[0],g.iridescenceThicknessMaximum.value=p.iridescenceThicknessRange[1],p.iridescenceMap&&(g.iridescenceMap.value=p.iridescenceMap,e(p.iridescenceMap,g.iridescenceMapTransform)),p.iridescenceThicknessMap&&(g.iridescenceThicknessMap.value=p.iridescenceThicknessMap,e(p.iridescenceThicknessMap,g.iridescenceThicknessMapTransform))),p.transmission>0&&(g.transmission.value=p.transmission,g.transmissionSamplerMap.value=v.texture,g.transmissionSamplerSize.value.set(v.width,v.height),p.transmissionMap&&(g.transmissionMap.value=p.transmissionMap,e(p.transmissionMap,g.transmissionMapTransform)),g.thickness.value=p.thickness,p.thicknessMap&&(g.thicknessMap.value=p.thicknessMap,e(p.thicknessMap,g.thicknessMapTransform)),g.attenuationDistance.value=p.attenuationDistance,g.attenuationColor.value.copy(p.attenuationColor)),p.anisotropy>0&&(g.anisotropyVector.value.set(p.anisotropy*Math.cos(p.anisotropyRotation),p.anisotropy*Math.sin(p.anisotropyRotation)),p.anisotropyMap&&(g.anisotropyMap.value=p.anisotropyMap,e(p.anisotropyMap,g.anisotropyMapTransform))),g.specularIntensity.value=p.specularIntensity,g.specularColor.value.copy(p.specularColor),p.specularColorMap&&(g.specularColorMap.value=p.specularColorMap,e(p.specularColorMap,g.specularColorMapTransform)),p.specularIntensityMap&&(g.specularIntensityMap.value=p.specularIntensityMap,e(p.specularIntensityMap,g.specularIntensityMapTransform))}function m(g,p){p.matcap&&(g.matcap.value=p.matcap)}function _(g,p){let v=t.get(p).light;g.referencePosition.value.setFromMatrixPosition(v.matrixWorld),g.nearDistance.value=v.shadow.camera.near,g.farDistance.value=v.shadow.camera.far}return{refreshFogUniforms:n,refreshMaterialUniforms:i}}function _x(r,t,e,n){let i={},s={},a=[],o=e.isWebGL2?r.getParameter(r.MAX_UNIFORM_BUFFER_BINDINGS):0;function c(v,x){let y=x.program;n.uniformBlockBinding(v,y)}function l(v,x){let y=i[v.id];y===void 0&&(m(v),y=h(v),i[v.id]=y,v.addEventListener(\"dispose\",g));let C=x.program;n.updateUBOMapping(v,C);let T=t.render.frame;s[v.id]!==T&&(d(v),s[v.id]=T)}function h(v){let x=u();v.__bindingPointIndex=x;let y=r.createBuffer(),C=v.__size,T=v.usage;return r.bindBuffer(r.UNIFORM_BUFFER,y),r.bufferData(r.UNIFORM_BUFFER,C,T),r.bindBuffer(r.UNIFORM_BUFFER,null),r.bindBufferBase(r.UNIFORM_BUFFER,x,y),y}function u(){for(let v=0;v<o;v++)if(a.indexOf(v)===-1)return a.push(v),v;return console.error(\"THREE.WebGLRenderer: Maximum number of simultaneously usable uniforms groups reached.\"),0}function d(v){let x=i[v.id],y=v.uniforms,C=v.__cache;r.bindBuffer(r.UNIFORM_BUFFER,x);for(let T=0,R=y.length;T<R;T++){let U=Array.isArray(y[T])?y[T]:[y[T]];for(let S=0,E=U.length;S<E;S++){let N=U[S];if(f(N,T,S,C)===!0){let G=N.__offset,it=Array.isArray(N.value)?N.value:[N.value],I=0;for(let F=0;F<it.length;F++){let k=it[F],J=_(k);typeof k==\"number\"||typeof k==\"boolean\"?(N.__data[0]=k,r.bufferSubData(r.UNIFORM_BUFFER,G+I,N.__data)):k.isMatrix3?(N.__data[0]=k.elements[0],N.__data[1]=k.elements[1],N.__data[2]=k.elements[2],N.__data[3]=0,N.__data[4]=k.elements[3],N.__data[5]=k.elements[4],N.__data[6]=k.elements[5],N.__data[7]=0,N.__data[8]=k.elements[6],N.__data[9]=k.elements[7],N.__data[10]=k.elements[8],N.__data[11]=0):(k.toArray(N.__data,I),I+=J.storage/Float32Array.BYTES_PER_ELEMENT)}r.bufferSubData(r.UNIFORM_BUFFER,G,N.__data)}}}r.bindBuffer(r.UNIFORM_BUFFER,null)}function f(v,x,y,C){let T=v.value,R=x+\"_\"+y;if(C[R]===void 0)return typeof T==\"number\"||typeof T==\"boolean\"?C[R]=T:C[R]=T.clone(),!0;{let U=C[R];if(typeof T==\"number\"||typeof T==\"boolean\"){if(U!==T)return C[R]=T,!0}else if(U.equals(T)===!1)return U.copy(T),!0}return!1}function m(v){let x=v.uniforms,y=0,C=16;for(let R=0,U=x.length;R<U;R++){let S=Array.isArray(x[R])?x[R]:[x[R]];for(let E=0,N=S.length;E<N;E++){let G=S[E],it=Array.isArray(G.value)?G.value:[G.value];for(let I=0,F=it.length;I<F;I++){let k=it[I],J=_(k),Y=y%C;Y!==0&&C-Y<J.boundary&&(y+=C-Y),G.__data=new Float32Array(J.storage/Float32Array.BYTES_PER_ELEMENT),G.__offset=y,y+=J.storage}}}let T=y%C;return T>0&&(y+=C-T),v.__size=y,v.__cache={},this}function _(v){let x={boundary:0,storage:0};return typeof v==\"number\"||typeof v==\"boolean\"?(x.boundary=4,x.storage=4):v.isVector2?(x.boundary=8,x.storage=8):v.isVector3||v.isColor?(x.boundary=16,x.storage=12):v.isVector4?(x.boundary=16,x.storage=16):v.isMatrix3?(x.boundary=48,x.storage=48):v.isMatrix4?(x.boundary=64,x.storage=64):v.isTexture?console.warn(\"THREE.WebGLRenderer: Texture samplers can not be part of an uniforms group.\"):console.warn(\"THREE.WebGLRenderer: Unsupported uniform value type.\",v),x}function g(v){let x=v.target;x.removeEventListener(\"dispose\",g);let y=a.indexOf(x.__bindingPointIndex);a.splice(y,1),r.deleteBuffer(i[x.id]),delete i[x.id],delete s[x.id]}function p(){for(let v in i)r.deleteBuffer(i[v]);a=[],i={},s={}}return{bind:c,update:l,dispose:p}}var Go=class{constructor(t={}){let{canvas:e=Ap(),context:n=null,depth:i=!0,stencil:s=!0,alpha:a=!1,antialias:o=!1,premultipliedAlpha:c=!0,preserveDrawingBuffer:l=!1,powerPreference:h=\"default\",failIfMajorPerformanceCaveat:u=!1}=t;this.isWebGLRenderer=!0;let d;n!==null?d=n.getContextAttributes().alpha:d=a;let f=new Uint32Array(4),m=new Int32Array(4),_=null,g=null,p=[],v=[];this.domElement=e,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=Se,this._useLegacyLights=!1,this.toneMapping=Vn,this.toneMappingExposure=1;let x=this,y=!1,C=0,T=0,R=null,U=-1,S=null,E=new te,N=new te,G=null,it=new pt(0),I=0,F=e.width,k=e.height,J=1,Y=null,W=null,tt=new te(0,0,F,k),et=new te(0,0,F,k),ut=!1,H=new rs,K=!1,dt=!1,Mt=null,gt=new It,Ct=new Z,Nt=new w,St={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};function Ut(){return R===null?J:1}let P=n;function rt(A,D){for(let z=0;z<A.length;z++){let V=A[z],B=e.getContext(V,D);if(B!==null)return B}return null}try{let A={alpha:!0,depth:i,stencil:s,antialias:o,premultipliedAlpha:c,preserveDrawingBuffer:l,powerPreference:h,failIfMajorPerformanceCaveat:u};if(\"setAttribute\"in e&&e.setAttribute(\"data-engine\",\"three.js r160\"),e.addEventListener(\"webglcontextlost\",at,!1),e.addEventListener(\"webglcontextrestored\",L,!1),e.addEventListener(\"webglcontextcreationerror\",lt,!1),P===null){let D=[\"webgl2\",\"webgl\",\"experimental-webgl\"];if(x.isWebGL1Renderer===!0&&D.shift(),P=rt(D,A),P===null)throw rt(D)?new Error(\"Error creating WebGL context with your selected attributes.\"):new Error(\"Error creating WebGL context.\")}typeof WebGLRenderingContext<\"u\"&&P instanceof WebGLRenderingContext&&console.warn(\"THREE.WebGLRenderer: WebGL 1 support was deprecated in r153 and will be removed in r163.\"),P.getShaderPrecisionFormat===void 0&&(P.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}})}catch(A){throw console.error(\"THREE.WebGLRenderer: \"+A.message),A}let q,st,X,Et,ft,b,M,O,nt,Q,$,yt,ct,_t,Tt,Ft,j,Zt,Yt,Dt,At,vt,Vt,$t;function oe(){q=new O_(P),st=new P_(P,q,t),q.init(st),vt=new px(P,q,st),X=new dx(P,q,st),Et=new z_(P),ft=new tx,b=new fx(P,q,X,ft,st,vt,Et),M=new I_(x),O=new N_(x),nt=new Yp(P,st),Vt=new R_(P,q,nt,st),Q=new F_(P,nt,Et,Vt),$=new G_(P,Q,nt,Et),Yt=new H_(P,st,b),Ft=new L_(ft),yt=new j0(x,M,O,q,st,Vt,Ft),ct=new gx(x,ft),_t=new nx,Tt=new cx(q,st),Zt=new w_(x,M,O,X,$,d,c),j=new ux(x,$,st),$t=new _x(P,Et,st,X),Dt=new C_(P,q,Et,st),At=new B_(P,q,Et,st),Et.programs=yt.programs,x.capabilities=st,x.extensions=q,x.properties=ft,x.renderLists=_t,x.shadowMap=j,x.state=X,x.info=Et}oe();let Xt=new Ho(x,P);this.xr=Xt,this.getContext=function(){return P},this.getContextAttributes=function(){return P.getContextAttributes()},this.forceContextLoss=function(){let A=q.get(\"WEBGL_lose_context\");A&&A.loseContext()},this.forceContextRestore=function(){let A=q.get(\"WEBGL_lose_context\");A&&A.restoreContext()},this.getPixelRatio=function(){return J},this.setPixelRatio=function(A){A!==void 0&&(J=A,this.setSize(F,k,!1))},this.getSize=function(A){return A.set(F,k)},this.setSize=function(A,D,z=!0){if(Xt.isPresenting){console.warn(\"THREE.WebGLRenderer: Can't change size while VR device is presenting.\");return}F=A,k=D,e.width=Math.floor(A*J),e.height=Math.floor(D*J),z===!0&&(e.style.width=A+\"px\",e.style.height=D+\"px\"),this.setViewport(0,0,A,D)},this.getDrawingBufferSize=function(A){return A.set(F*J,k*J).floor()},this.setDrawingBufferSize=function(A,D,z){F=A,k=D,J=z,e.width=Math.floor(A*z),e.height=Math.floor(D*z),this.setViewport(0,0,A,D)},this.getCurrentViewport=function(A){return A.copy(E)},this.getViewport=function(A){return A.copy(tt)},this.setViewport=function(A,D,z,V){A.isVector4?tt.set(A.x,A.y,A.z,A.w):tt.set(A,D,z,V),X.viewport(E.copy(tt).multiplyScalar(J).floor())},this.getScissor=function(A){return A.copy(et)},this.setScissor=function(A,D,z,V){A.isVector4?et.set(A.x,A.y,A.z,A.w):et.set(A,D,z,V),X.scissor(N.copy(et).multiplyScalar(J).floor())},this.getScissorTest=function(){return ut},this.setScissorTest=function(A){X.setScissorTest(ut=A)},this.setOpaqueSort=function(A){Y=A},this.setTransparentSort=function(A){W=A},this.getClearColor=function(A){return A.copy(Zt.getClearColor())},this.setClearColor=function(){Zt.setClearColor.apply(Zt,arguments)},this.getClearAlpha=function(){return Zt.getClearAlpha()},this.setClearAlpha=function(){Zt.setClearAlpha.apply(Zt,arguments)},this.clear=function(A=!0,D=!0,z=!0){let V=0;if(A){let B=!1;if(R!==null){let mt=R.texture.format;B=mt===Nd||mt===Dd||mt===Ud}if(B){let mt=R.texture.type,bt=mt===kn||mt===Nn||mt===al||mt===ui||mt===Ld||mt===Id,Rt=Zt.getClearColor(),Lt=Zt.getClearAlpha(),Ht=Rt.r,Ot=Rt.g,Bt=Rt.b;bt?(f[0]=Ht,f[1]=Ot,f[2]=Bt,f[3]=Lt,P.clearBufferuiv(P.COLOR,0,f)):(m[0]=Ht,m[1]=Ot,m[2]=Bt,m[3]=Lt,P.clearBufferiv(P.COLOR,0,m))}else V|=P.COLOR_BUFFER_BIT}D&&(V|=P.DEPTH_BUFFER_BIT),z&&(V|=P.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(4294967295)),P.clear(V)},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(){e.removeEventListener(\"webglcontextlost\",at,!1),e.removeEventListener(\"webglcontextrestored\",L,!1),e.removeEventListener(\"webglcontextcreationerror\",lt,!1),_t.dispose(),Tt.dispose(),ft.dispose(),M.dispose(),O.dispose(),$.dispose(),Vt.dispose(),$t.dispose(),yt.dispose(),Xt.dispose(),Xt.removeEventListener(\"sessionstart\",Ue),Xt.removeEventListener(\"sessionend\",ie),Mt&&(Mt.dispose(),Mt=null),De.stop()};function at(A){A.preventDefault(),console.log(\"THREE.WebGLRenderer: Context Lost.\"),y=!0}function L(){console.log(\"THREE.WebGLRenderer: Context Restored.\"),y=!1;let A=Et.autoReset,D=j.enabled,z=j.autoUpdate,V=j.needsUpdate,B=j.type;oe(),Et.autoReset=A,j.enabled=D,j.autoUpdate=z,j.needsUpdate=V,j.type=B}function lt(A){console.error(\"THREE.WebGLRenderer: A WebGL context could not be created. Reason: \",A.statusMessage)}function ht(A){let D=A.target;D.removeEventListener(\"dispose\",ht),Pt(D)}function Pt(A){wt(A),ft.remove(A)}function wt(A){let D=ft.get(A).programs;D!==void 0&&(D.forEach(function(z){yt.releaseProgram(z)}),A.isShaderMaterial&&yt.releaseShaderCache(A))}this.renderBufferDirect=function(A,D,z,V,B,mt){D===null&&(D=St);let bt=B.isMesh&&B.matrixWorld.determinant()<0,Rt=sf(A,D,z,V,B);X.setMaterial(V,bt);let Lt=z.index,Ht=1;if(V.wireframe===!0){if(Lt=Q.getWireframeAttribute(z),Lt===void 0)return;Ht=2}let Ot=z.drawRange,Bt=z.attributes.position,ue=Ot.start*Ht,Ge=(Ot.start+Ot.count)*Ht;mt!==null&&(ue=Math.max(ue,mt.start*Ht),Ge=Math.min(Ge,(mt.start+mt.count)*Ht)),Lt!==null?(ue=Math.max(ue,0),Ge=Math.min(Ge,Lt.count)):Bt!=null&&(ue=Math.max(ue,0),Ge=Math.min(Ge,Bt.count));let ye=Ge-ue;if(ye<0||ye===1/0)return;Vt.setup(B,V,Rt,z,Lt);let dn,re=Dt;if(Lt!==null&&(dn=nt.get(Lt),re=At,re.setIndex(dn)),B.isMesh)V.wireframe===!0?(X.setLineWidth(V.wireframeLinewidth*Ut()),re.setMode(P.LINES)):re.setMode(P.TRIANGLES);else if(B.isLine){let qt=V.linewidth;qt===void 0&&(qt=1),X.setLineWidth(qt*Ut()),B.isLineSegments?re.setMode(P.LINES):B.isLineLoop?re.setMode(P.LINE_LOOP):re.setMode(P.LINE_STRIP)}else B.isPoints?re.setMode(P.POINTS):B.isSprite&&re.setMode(P.TRIANGLES);if(B.isBatchedMesh)re.renderMultiDraw(B._multiDrawStarts,B._multiDrawCounts,B._multiDrawCount);else if(B.isInstancedMesh)re.renderInstances(ue,ye,B.count);else if(z.isInstancedBufferGeometry){let qt=z._maxInstanceCount!==void 0?z._maxInstanceCount:1/0,Da=Math.min(z.instanceCount,qt);re.renderInstances(ue,ye,Da)}else re.render(ue,ye)};function ee(A,D,z){A.transparent===!0&&A.side===Mn&&A.forceSinglePass===!1?(A.side=He,A.needsUpdate=!0,Js(A,D,z),A.side=Wn,A.needsUpdate=!0,Js(A,D,z),A.side=Mn):Js(A,D,z)}this.compile=function(A,D,z=null){z===null&&(z=A),g=Tt.get(z),g.init(),v.push(g),z.traverseVisible(function(B){B.isLight&&B.layers.test(D.layers)&&(g.pushLight(B),B.castShadow&&g.pushShadow(B))}),A!==z&&A.traverseVisible(function(B){B.isLight&&B.layers.test(D.layers)&&(g.pushLight(B),B.castShadow&&g.pushShadow(B))}),g.setupLights(x._useLegacyLights);let V=new Set;return A.traverse(function(B){let mt=B.material;if(mt)if(Array.isArray(mt))for(let bt=0;bt<mt.length;bt++){let Rt=mt[bt];ee(Rt,z,B),V.add(Rt)}else ee(mt,z,B),V.add(mt)}),v.pop(),g=null,V},this.compileAsync=function(A,D,z=null){let V=this.compile(A,D,z);return new Promise(B=>{function mt(){if(V.forEach(function(bt){ft.get(bt).currentProgram.isReady()&&V.delete(bt)}),V.size===0){B(A);return}setTimeout(mt,10)}q.get(\"KHR_parallel_shader_compile\")!==null?mt():setTimeout(mt,10)})};let ne=null;function ve(A){ne&&ne(A)}function Ue(){De.stop()}function ie(){De.start()}let De=new Gd;De.setAnimationLoop(ve),typeof self<\"u\"&&De.setContext(self),this.setAnimationLoop=function(A){ne=A,Xt.setAnimationLoop(A),A===null?De.stop():De.start()},Xt.addEventListener(\"sessionstart\",Ue),Xt.addEventListener(\"sessionend\",ie),this.render=function(A,D){if(D!==void 0&&D.isCamera!==!0){console.error(\"THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.\");return}if(y===!0)return;A.matrixWorldAutoUpdate===!0&&A.updateMatrixWorld(),D.parent===null&&D.matrixWorldAutoUpdate===!0&&D.updateMatrixWorld(),Xt.enabled===!0&&Xt.isPresenting===!0&&(Xt.cameraAutoUpdate===!0&&Xt.updateCamera(D),D=Xt.getCamera()),A.isScene===!0&&A.onBeforeRender(x,A,D,R),g=Tt.get(A,v.length),g.init(),v.push(g),gt.multiplyMatrices(D.projectionMatrix,D.matrixWorldInverse),H.setFromProjectionMatrix(gt),dt=this.localClippingEnabled,K=Ft.init(this.clippingPlanes,dt),_=_t.get(A,p.length),_.init(),p.push(_),an(A,D,0,x.sortObjects),_.finish(),x.sortObjects===!0&&_.sort(Y,W),this.info.render.frame++,K===!0&&Ft.beginShadows();let z=g.state.shadowsArray;if(j.render(z,A,D),K===!0&&Ft.endShadows(),this.info.autoReset===!0&&this.info.reset(),Zt.render(_,A),g.setupLights(x._useLegacyLights),D.isArrayCamera){let V=D.cameras;for(let B=0,mt=V.length;B<mt;B++){let bt=V[B];ml(_,A,bt,bt.viewport)}}else ml(_,A,D);R!==null&&(b.updateMultisampleRenderTarget(R),b.updateRenderTargetMipmap(R)),A.isScene===!0&&A.onAfterRender(x,A,D),Vt.resetDefaultState(),U=-1,S=null,v.pop(),v.length>0?g=v[v.length-1]:g=null,p.pop(),p.length>0?_=p[p.length-1]:_=null};function an(A,D,z,V){if(A.visible===!1)return;if(A.layers.test(D.layers)){if(A.isGroup)z=A.renderOrder;else if(A.isLOD)A.autoUpdate===!0&&A.update(D);else if(A.isLight)g.pushLight(A),A.castShadow&&g.pushShadow(A);else if(A.isSprite){if(!A.frustumCulled||H.intersectsSprite(A)){V&&Nt.setFromMatrixPosition(A.matrixWorld).applyMatrix4(gt);let bt=$.update(A),Rt=A.material;Rt.visible&&_.push(A,bt,Rt,z,Nt.z,null)}}else if((A.isMesh||A.isLine||A.isPoints)&&(!A.frustumCulled||H.intersectsObject(A))){let bt=$.update(A),Rt=A.material;if(V&&(A.boundingSphere!==void 0?(A.boundingSphere===null&&A.computeBoundingSphere(),Nt.copy(A.boundingSphere.center)):(bt.boundingSphere===null&&bt.computeBoundingSphere(),Nt.copy(bt.boundingSphere.center)),Nt.applyMatrix4(A.matrixWorld).applyMatrix4(gt)),Array.isArray(Rt)){let Lt=bt.groups;for(let Ht=0,Ot=Lt.length;Ht<Ot;Ht++){let Bt=Lt[Ht],ue=Rt[Bt.materialIndex];ue&&ue.visible&&_.push(A,bt,ue,z,Nt.z,Bt)}}else Rt.visible&&_.push(A,bt,Rt,z,Nt.z,null)}}let mt=A.children;for(let bt=0,Rt=mt.length;bt<Rt;bt++)an(mt[bt],D,z,V)}function ml(A,D,z,V){let B=A.opaque,mt=A.transmissive,bt=A.transparent;g.setupLightsView(z),K===!0&&Ft.setGlobalState(x.clippingPlanes,z),mt.length>0&&nf(B,mt,D,z),V&&X.viewport(E.copy(V)),B.length>0&&Zs(B,D,z),mt.length>0&&Zs(mt,D,z),bt.length>0&&Zs(bt,D,z),X.buffers.depth.setTest(!0),X.buffers.depth.setMask(!0),X.buffers.color.setMask(!0),X.setPolygonOffset(!1)}function nf(A,D,z,V){if((z.isScene===!0?z.overrideMaterial:null)!==null)return;let mt=st.isWebGL2;Mt===null&&(Mt=new Ke(1,1,{generateMipmaps:!0,type:q.has(\"EXT_color_buffer_half_float\")?Is:kn,minFilter:gi,samples:mt?4:0})),x.getDrawingBufferSize(Ct),mt?Mt.setSize(Ct.x,Ct.y):Mt.setSize(ea(Ct.x),ea(Ct.y));let bt=x.getRenderTarget();x.setRenderTarget(Mt),x.getClearColor(it),I=x.getClearAlpha(),I<1&&x.setClearColor(16777215,.5),x.clear();let Rt=x.toneMapping;x.toneMapping=Vn,Zs(A,z,V),b.updateMultisampleRenderTarget(Mt),b.updateRenderTargetMipmap(Mt);let Lt=!1;for(let Ht=0,Ot=D.length;Ht<Ot;Ht++){let Bt=D[Ht],ue=Bt.object,Ge=Bt.geometry,ye=Bt.material,dn=Bt.group;if(ye.side===Mn&&ue.layers.test(V.layers)){let re=ye.side;ye.side=He,ye.needsUpdate=!0,gl(ue,z,V,Ge,ye,dn),ye.side=re,ye.needsUpdate=!0,Lt=!0}}Lt===!0&&(b.updateMultisampleRenderTarget(Mt),b.updateRenderTargetMipmap(Mt)),x.setRenderTarget(bt),x.setClearColor(it,I),x.toneMapping=Rt}function Zs(A,D,z){let V=D.isScene===!0?D.overrideMaterial:null;for(let B=0,mt=A.length;B<mt;B++){let bt=A[B],Rt=bt.object,Lt=bt.geometry,Ht=V===null?bt.material:V,Ot=bt.group;Rt.layers.test(z.layers)&&gl(Rt,D,z,Lt,Ht,Ot)}}function gl(A,D,z,V,B,mt){A.onBeforeRender(x,D,z,V,B,mt),A.modelViewMatrix.multiplyMatrices(z.matrixWorldInverse,A.matrixWorld),A.normalMatrix.getNormalMatrix(A.modelViewMatrix),B.onBeforeRender(x,D,z,V,A,mt),B.transparent===!0&&B.side===Mn&&B.forceSinglePass===!1?(B.side=He,B.needsUpdate=!0,x.renderBufferDirect(z,D,V,B,A,mt),B.side=Wn,B.needsUpdate=!0,x.renderBufferDirect(z,D,V,B,A,mt),B.side=Mn):x.renderBufferDirect(z,D,V,B,A,mt),A.onAfterRender(x,D,z,V,B,mt)}function Js(A,D,z){D.isScene!==!0&&(D=St);let V=ft.get(A),B=g.state.lights,mt=g.state.shadowsArray,bt=B.state.version,Rt=yt.getParameters(A,B.state,mt,D,z),Lt=yt.getProgramCacheKey(Rt),Ht=V.programs;V.environment=A.isMeshStandardMaterial?D.environment:null,V.fog=D.fog,V.envMap=(A.isMeshStandardMaterial?O:M).get(A.envMap||V.environment),Ht===void 0&&(A.addEventListener(\"dispose\",ht),Ht=new Map,V.programs=Ht);let Ot=Ht.get(Lt);if(Ot!==void 0){if(V.currentProgram===Ot&&V.lightsStateVersion===bt)return xl(A,Rt),Ot}else Rt.uniforms=yt.getUniforms(A),A.onBuild(z,Rt,x),A.onBeforeCompile(Rt,x),Ot=yt.acquireProgram(Rt,Lt),Ht.set(Lt,Ot),V.uniforms=Rt.uniforms;let Bt=V.uniforms;return(!A.isShaderMaterial&&!A.isRawShaderMaterial||A.clipping===!0)&&(Bt.clippingPlanes=Ft.uniform),xl(A,Rt),V.needsLights=af(A),V.lightsStateVersion=bt,V.needsLights&&(Bt.ambientLightColor.value=B.state.ambient,Bt.lightProbe.value=B.state.probe,Bt.directionalLights.value=B.state.directional,Bt.directionalLightShadows.value=B.state.directionalShadow,Bt.spotLights.value=B.state.spot,Bt.spotLightShadows.value=B.state.spotShadow,Bt.rectAreaLights.value=B.state.rectArea,Bt.ltc_1.value=B.state.rectAreaLTC1,Bt.ltc_2.value=B.state.rectAreaLTC2,Bt.pointLights.value=B.state.point,Bt.pointLightShadows.value=B.state.pointShadow,Bt.hemisphereLights.value=B.state.hemi,Bt.directionalShadowMap.value=B.state.directionalShadowMap,Bt.directionalShadowMatrix.value=B.state.directionalShadowMatrix,Bt.spotShadowMap.value=B.state.spotShadowMap,Bt.spotLightMatrix.value=B.state.spotLightMatrix,Bt.spotLightMap.value=B.state.spotLightMap,Bt.pointShadowMap.value=B.state.pointShadowMap,Bt.pointShadowMatrix.value=B.state.pointShadowMatrix),V.currentProgram=Ot,V.uniformsList=null,Ot}function _l(A){if(A.uniformsList===null){let D=A.currentProgram.getUniforms();A.uniformsList=ji.seqWithValue(D.seq,A.uniforms)}return A.uniformsList}function xl(A,D){let z=ft.get(A);z.outputColorSpace=D.outputColorSpace,z.batching=D.batching,z.instancing=D.instancing,z.instancingColor=D.instancingColor,z.skinning=D.skinning,z.morphTargets=D.morphTargets,z.morphNormals=D.morphNormals,z.morphColors=D.morphColors,z.morphTargetsCount=D.morphTargetsCount,z.numClippingPlanes=D.numClippingPlanes,z.numIntersection=D.numClipIntersection,z.vertexAlphas=D.vertexAlphas,z.vertexTangents=D.vertexTangents,z.toneMapping=D.toneMapping}function sf(A,D,z,V,B){D.isScene!==!0&&(D=St),b.resetTextureUnits();let mt=D.fog,bt=V.isMeshStandardMaterial?D.environment:null,Rt=R===null?x.outputColorSpace:R.isXRRenderTarget===!0?R.texture.colorSpace:En,Lt=(V.isMeshStandardMaterial?O:M).get(V.envMap||bt),Ht=V.vertexColors===!0&&!!z.attributes.color&&z.attributes.color.itemSize===4,Ot=!!z.attributes.tangent&&(!!V.normalMap||V.anisotropy>0),Bt=!!z.morphAttributes.position,ue=!!z.morphAttributes.normal,Ge=!!z.morphAttributes.color,ye=Vn;V.toneMapped&&(R===null||R.isXRRenderTarget===!0)&&(ye=x.toneMapping);let dn=z.morphAttributes.position||z.morphAttributes.normal||z.morphAttributes.color,re=dn!==void 0?dn.length:0,qt=ft.get(V),Da=g.state.lights;if(K===!0&&(dt===!0||A!==S)){let Ze=A===S&&V.id===U;Ft.setState(V,A,Ze)}let ce=!1;V.version===qt.__version?(qt.needsLights&&qt.lightsStateVersion!==Da.state.version||qt.outputColorSpace!==Rt||B.isBatchedMesh&&qt.batching===!1||!B.isBatchedMesh&&qt.batching===!0||B.isInstancedMesh&&qt.instancing===!1||!B.isInstancedMesh&&qt.instancing===!0||B.isSkinnedMesh&&qt.skinning===!1||!B.isSkinnedMesh&&qt.skinning===!0||B.isInstancedMesh&&qt.instancingColor===!0&&B.instanceColor===null||B.isInstancedMesh&&qt.instancingColor===!1&&B.instanceColor!==null||qt.envMap!==Lt||V.fog===!0&&qt.fog!==mt||qt.numClippingPlanes!==void 0&&(qt.numClippingPlanes!==Ft.numPlanes||qt.numIntersection!==Ft.numIntersection)||qt.vertexAlphas!==Ht||qt.vertexTangents!==Ot||qt.morphTargets!==Bt||qt.morphNormals!==ue||qt.morphColors!==Ge||qt.toneMapping!==ye||st.isWebGL2===!0&&qt.morphTargetsCount!==re)&&(ce=!0):(ce=!0,qt.__version=V.version);let Zn=qt.currentProgram;ce===!0&&(Zn=Js(V,D,B));let vl=!1,ps=!1,Na=!1,we=Zn.getUniforms(),Jn=qt.uniforms;if(X.useProgram(Zn.program)&&(vl=!0,ps=!0,Na=!0),V.id!==U&&(U=V.id,ps=!0),vl||S!==A){we.setValue(P,\"projectionMatrix\",A.projectionMatrix),we.setValue(P,\"viewMatrix\",A.matrixWorldInverse);let Ze=we.map.cameraPosition;Ze!==void 0&&Ze.setValue(P,Nt.setFromMatrixPosition(A.matrixWorld)),st.logarithmicDepthBuffer&&we.setValue(P,\"logDepthBufFC\",2/(Math.log(A.far+1)/Math.LN2)),(V.isMeshPhongMaterial||V.isMeshToonMaterial||V.isMeshLambertMaterial||V.isMeshBasicMaterial||V.isMeshStandardMaterial||V.isShaderMaterial)&&we.setValue(P,\"isOrthographic\",A.isOrthographicCamera===!0),S!==A&&(S=A,ps=!0,Na=!0)}if(B.isSkinnedMesh){we.setOptional(P,B,\"bindMatrix\"),we.setOptional(P,B,\"bindMatrixInverse\");let Ze=B.skeleton;Ze&&(st.floatVertexTextures?(Ze.boneTexture===null&&Ze.computeBoneTexture(),we.setValue(P,\"boneTexture\",Ze.boneTexture,b)):console.warn(\"THREE.WebGLRenderer: SkinnedMesh can only be used with WebGL 2. With WebGL 1 OES_texture_float and vertex textures support is required.\"))}B.isBatchedMesh&&(we.setOptional(P,B,\"batchingTexture\"),we.setValue(P,\"batchingTexture\",B._matricesTexture,b));let Oa=z.morphAttributes;if((Oa.position!==void 0||Oa.normal!==void 0||Oa.color!==void 0&&st.isWebGL2===!0)&&Yt.update(B,z,Zn),(ps||qt.receiveShadow!==B.receiveShadow)&&(qt.receiveShadow=B.receiveShadow,we.setValue(P,\"receiveShadow\",B.receiveShadow)),V.isMeshGouraudMaterial&&V.envMap!==null&&(Jn.envMap.value=Lt,Jn.flipEnvMap.value=Lt.isCubeTexture&&Lt.isRenderTargetTexture===!1?-1:1),ps&&(we.setValue(P,\"toneMappingExposure\",x.toneMappingExposure),qt.needsLights&&rf(Jn,Na),mt&&V.fog===!0&&ct.refreshFogUniforms(Jn,mt),ct.refreshMaterialUniforms(Jn,V,J,k,Mt),ji.upload(P,_l(qt),Jn,b)),V.isShaderMaterial&&V.uniformsNeedUpdate===!0&&(ji.upload(P,_l(qt),Jn,b),V.uniformsNeedUpdate=!1),V.isSpriteMaterial&&we.setValue(P,\"center\",B.center),we.setValue(P,\"modelViewMatrix\",B.modelViewMatrix),we.setValue(P,\"normalMatrix\",B.normalMatrix),we.setValue(P,\"modelMatrix\",B.matrixWorld),V.isShaderMaterial||V.isRawShaderMaterial){let Ze=V.uniformsGroups;for(let Fa=0,of=Ze.length;Fa<of;Fa++)if(st.isWebGL2){let yl=Ze[Fa];$t.update(yl,Zn),$t.bind(yl,Zn)}else console.warn(\"THREE.WebGLRenderer: Uniform Buffer Objects can only be used with WebGL 2.\")}return Zn}function rf(A,D){A.ambientLightColor.needsUpdate=D,A.lightProbe.needsUpdate=D,A.directionalLights.needsUpdate=D,A.directionalLightShadows.needsUpdate=D,A.pointLights.needsUpdate=D,A.pointLightShadows.needsUpdate=D,A.spotLights.needsUpdate=D,A.spotLightShadows.needsUpdate=D,A.rectAreaLights.needsUpdate=D,A.hemisphereLights.needsUpdate=D}function af(A){return A.isMeshLambertMaterial||A.isMeshToonMaterial||A.isMeshPhongMaterial||A.isMeshStandardMaterial||A.isShadowMaterial||A.isShaderMaterial&&A.lights===!0}this.getActiveCubeFace=function(){return C},this.getActiveMipmapLevel=function(){return T},this.getRenderTarget=function(){return R},this.setRenderTargetTextures=function(A,D,z){ft.get(A.texture).__webglTexture=D,ft.get(A.depthTexture).__webglTexture=z;let V=ft.get(A);V.__hasExternalTextures=!0,V.__hasExternalTextures&&(V.__autoAllocateDepthBuffer=z===void 0,V.__autoAllocateDepthBuffer||q.has(\"WEBGL_multisampled_render_to_texture\")===!0&&(console.warn(\"THREE.WebGLRenderer: Render-to-texture extension was disabled because an external texture was provided\"),V.__useRenderToTexture=!1))},this.setRenderTargetFramebuffer=function(A,D){let z=ft.get(A);z.__webglFramebuffer=D,z.__useDefaultFramebuffer=D===void 0},this.setRenderTarget=function(A,D=0,z=0){R=A,C=D,T=z;let V=!0,B=null,mt=!1,bt=!1;if(A){let Lt=ft.get(A);Lt.__useDefaultFramebuffer!==void 0?(X.bindFramebuffer(P.FRAMEBUFFER,null),V=!1):Lt.__webglFramebuffer===void 0?b.setupRenderTarget(A):Lt.__hasExternalTextures&&b.rebindTextures(A,ft.get(A.texture).__webglTexture,ft.get(A.depthTexture).__webglTexture);let Ht=A.texture;(Ht.isData3DTexture||Ht.isDataArrayTexture||Ht.isCompressedArrayTexture)&&(bt=!0);let Ot=ft.get(A).__webglFramebuffer;A.isWebGLCubeRenderTarget?(Array.isArray(Ot[D])?B=Ot[D][z]:B=Ot[D],mt=!0):st.isWebGL2&&A.samples>0&&b.useMultisampledRTT(A)===!1?B=ft.get(A).__webglMultisampledFramebuffer:Array.isArray(Ot)?B=Ot[z]:B=Ot,E.copy(A.viewport),N.copy(A.scissor),G=A.scissorTest}else E.copy(tt).multiplyScalar(J).floor(),N.copy(et).multiplyScalar(J).floor(),G=ut;if(X.bindFramebuffer(P.FRAMEBUFFER,B)&&st.drawBuffers&&V&&X.drawBuffers(A,B),X.viewport(E),X.scissor(N),X.setScissorTest(G),mt){let Lt=ft.get(A.texture);P.framebufferTexture2D(P.FRAMEBUFFER,P.COLOR_ATTACHMENT0,P.TEXTURE_CUBE_MAP_POSITIVE_X+D,Lt.__webglTexture,z)}else if(bt){let Lt=ft.get(A.texture),Ht=D||0;P.framebufferTextureLayer(P.FRAMEBUFFER,P.COLOR_ATTACHMENT0,Lt.__webglTexture,z||0,Ht)}U=-1},this.readRenderTargetPixels=function(A,D,z,V,B,mt,bt){if(!(A&&A.isWebGLRenderTarget)){console.error(\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.\");return}let Rt=ft.get(A).__webglFramebuffer;if(A.isWebGLCubeRenderTarget&&bt!==void 0&&(Rt=Rt[bt]),Rt){X.bindFramebuffer(P.FRAMEBUFFER,Rt);try{let Lt=A.texture,Ht=Lt.format,Ot=Lt.type;if(Ht!==qe&&vt.convert(Ht)!==P.getParameter(P.IMPLEMENTATION_COLOR_READ_FORMAT)){console.error(\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.\");return}let Bt=Ot===Is&&(q.has(\"EXT_color_buffer_half_float\")||st.isWebGL2&&q.has(\"EXT_color_buffer_float\"));if(Ot!==kn&&vt.convert(Ot)!==P.getParameter(P.IMPLEMENTATION_COLOR_READ_TYPE)&&!(Ot===cn&&(st.isWebGL2||q.has(\"OES_texture_float\")||q.has(\"WEBGL_color_buffer_float\")))&&!Bt){console.error(\"THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.\");return}D>=0&&D<=A.width-V&&z>=0&&z<=A.height-B&&P.readPixels(D,z,V,B,vt.convert(Ht),vt.convert(Ot),mt)}finally{let Lt=R!==null?ft.get(R).__webglFramebuffer:null;X.bindFramebuffer(P.FRAMEBUFFER,Lt)}}},this.copyFramebufferToTexture=function(A,D,z=0){let V=Math.pow(2,-z),B=Math.floor(D.image.width*V),mt=Math.floor(D.image.height*V);b.setTexture2D(D,0),P.copyTexSubImage2D(P.TEXTURE_2D,z,0,0,A.x,A.y,B,mt),X.unbindTexture()},this.copyTextureToTexture=function(A,D,z,V=0){let B=D.image.width,mt=D.image.height,bt=vt.convert(z.format),Rt=vt.convert(z.type);b.setTexture2D(z,0),P.pixelStorei(P.UNPACK_FLIP_Y_WEBGL,z.flipY),P.pixelStorei(P.UNPACK_PREMULTIPLY_ALPHA_WEBGL,z.premultiplyAlpha),P.pixelStorei(P.UNPACK_ALIGNMENT,z.unpackAlignment),D.isDataTexture?P.texSubImage2D(P.TEXTURE_2D,V,A.x,A.y,B,mt,bt,Rt,D.image.data):D.isCompressedTexture?P.compressedTexSubImage2D(P.TEXTURE_2D,V,A.x,A.y,D.mipmaps[0].width,D.mipmaps[0].height,bt,D.mipmaps[0].data):P.texSubImage2D(P.TEXTURE_2D,V,A.x,A.y,bt,Rt,D.image),V===0&&z.generateMipmaps&&P.generateMipmap(P.TEXTURE_2D),X.unbindTexture()},this.copyTextureToTexture3D=function(A,D,z,V,B=0){if(x.isWebGL1Renderer){console.warn(\"THREE.WebGLRenderer.copyTextureToTexture3D: can only be used with WebGL2.\");return}let mt=A.max.x-A.min.x+1,bt=A.max.y-A.min.y+1,Rt=A.max.z-A.min.z+1,Lt=vt.convert(V.format),Ht=vt.convert(V.type),Ot;if(V.isData3DTexture)b.setTexture3D(V,0),Ot=P.TEXTURE_3D;else if(V.isDataArrayTexture||V.isCompressedArrayTexture)b.setTexture2DArray(V,0),Ot=P.TEXTURE_2D_ARRAY;else{console.warn(\"THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.\");return}P.pixelStorei(P.UNPACK_FLIP_Y_WEBGL,V.flipY),P.pixelStorei(P.UNPACK_PREMULTIPLY_ALPHA_WEBGL,V.premultiplyAlpha),P.pixelStorei(P.UNPACK_ALIGNMENT,V.unpackAlignment);let Bt=P.getParameter(P.UNPACK_ROW_LENGTH),ue=P.getParameter(P.UNPACK_IMAGE_HEIGHT),Ge=P.getParameter(P.UNPACK_SKIP_PIXELS),ye=P.getParameter(P.UNPACK_SKIP_ROWS),dn=P.getParameter(P.UNPACK_SKIP_IMAGES),re=z.isCompressedTexture?z.mipmaps[B]:z.image;P.pixelStorei(P.UNPACK_ROW_LENGTH,re.width),P.pixelStorei(P.UNPACK_IMAGE_HEIGHT,re.height),P.pixelStorei(P.UNPACK_SKIP_PIXELS,A.min.x),P.pixelStorei(P.UNPACK_SKIP_ROWS,A.min.y),P.pixelStorei(P.UNPACK_SKIP_IMAGES,A.min.z),z.isDataTexture||z.isData3DTexture?P.texSubImage3D(Ot,B,D.x,D.y,D.z,mt,bt,Rt,Lt,Ht,re.data):z.isCompressedArrayTexture?(console.warn(\"THREE.WebGLRenderer.copyTextureToTexture3D: untested support for compressed srcTexture.\"),P.compressedTexSubImage3D(Ot,B,D.x,D.y,D.z,mt,bt,Rt,Lt,re.data)):P.texSubImage3D(Ot,B,D.x,D.y,D.z,mt,bt,Rt,Lt,Ht,re),P.pixelStorei(P.UNPACK_ROW_LENGTH,Bt),P.pixelStorei(P.UNPACK_IMAGE_HEIGHT,ue),P.pixelStorei(P.UNPACK_SKIP_PIXELS,Ge),P.pixelStorei(P.UNPACK_SKIP_ROWS,ye),P.pixelStorei(P.UNPACK_SKIP_IMAGES,dn),B===0&&V.generateMipmaps&&P.generateMipmap(Ot),X.unbindTexture()},this.initTexture=function(A){A.isCubeTexture?b.setTextureCube(A,0):A.isData3DTexture?b.setTexture3D(A,0):A.isDataArrayTexture||A.isCompressedArrayTexture?b.setTexture2DArray(A,0):b.setTexture2D(A,0),X.unbindTexture()},this.resetState=function(){C=0,T=0,R=null,X.reset(),Vt.reset()},typeof __THREE_DEVTOOLS__<\"u\"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"observe\",{detail:this}))}get coordinateSystem(){return ln}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(t){this._outputColorSpace=t;let e=this.getContext();e.drawingBufferColorSpace=t===cl?\"display-p3\":\"srgb\",e.unpackColorSpace=jt.workingColorSpace===La?\"display-p3\":\"srgb\"}get outputEncoding(){return console.warn(\"THREE.WebGLRenderer: Property .outputEncoding has been removed. Use .outputColorSpace instead.\"),this.outputColorSpace===Se?fi:Bd}set outputEncoding(t){console.warn(\"THREE.WebGLRenderer: Property .outputEncoding has been removed. Use .outputColorSpace instead.\"),this.outputColorSpace=t===fi?Se:En}get useLegacyLights(){return console.warn(\"THREE.WebGLRenderer: The property .useLegacyLights has been deprecated. Migrate your lighting according to the following guide: https://discourse.threejs.org/t/updates-to-lighting-in-three-js-r155/53733.\"),this._useLegacyLights}set useLegacyLights(t){console.warn(\"THREE.WebGLRenderer: The property .useLegacyLights has been deprecated. Migrate your lighting according to the following guide: https://discourse.threejs.org/t/updates-to-lighting-in-three-js-r155/53733.\"),this._useLegacyLights=t}},Wo=class extends Go{};Wo.prototype.isWebGL1Renderer=!0;var Xo=class r{constructor(t,e=25e-5){this.isFogExp2=!0,this.name=\"\",this.color=new pt(t),this.density=e}clone(){return new r(this.color,this.density)}toJSON(){return{type:\"FogExp2\",name:this.name,color:this.color.getHex(),density:this.density}}},qo=class r{constructor(t,e=1,n=1e3){this.isFog=!0,this.name=\"\",this.color=new pt(t),this.near=e,this.far=n}clone(){return new r(this.color,this.near,this.far)}toJSON(){return{type:\"Fog\",name:this.name,color:this.color.getHex(),near:this.near,far:this.far}}},Yo=class extends Kt{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,typeof __THREE_DEVTOOLS__<\"u\"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"observe\",{detail:this}))}copy(t,e){return super.copy(t,e),t.background!==null&&(this.background=t.background.clone()),t.environment!==null&&(this.environment=t.environment.clone()),t.fog!==null&&(this.fog=t.fog.clone()),this.backgroundBlurriness=t.backgroundBlurriness,this.backgroundIntensity=t.backgroundIntensity,t.overrideMaterial!==null&&(this.overrideMaterial=t.overrideMaterial.clone()),this.matrixAutoUpdate=t.matrixAutoUpdate,this}toJSON(t){let e=super.toJSON(t);return this.fog!==null&&(e.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(e.object.backgroundBlurriness=this.backgroundBlurriness),this.backgroundIntensity!==1&&(e.object.backgroundIntensity=this.backgroundIntensity),e}},zs=class{constructor(t,e){this.isInterleavedBuffer=!0,this.array=t,this.stride=e,this.count=t!==void 0?t.length/e:0,this.usage=ta,this._updateRange={offset:0,count:-1},this.updateRanges=[],this.version=0,this.uuid=Ye()}onUploadCallback(){}set needsUpdate(t){t===!0&&this.version++}get updateRange(){return console.warn(\"THREE.InterleavedBuffer: updateRange() is deprecated and will be removed in r169. Use addUpdateRange() instead.\"),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.array=new t.array.constructor(t.array),this.count=t.count,this.stride=t.stride,this.usage=t.usage,this}copyAt(t,e,n){t*=this.stride,n*=e.stride;for(let i=0,s=this.stride;i<s;i++)this.array[t+i]=e.array[n+i];return this}set(t,e=0){return this.array.set(t,e),this}clone(t){t.arrayBuffers===void 0&&(t.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=Ye()),t.arrayBuffers[this.array.buffer._uuid]===void 0&&(t.arrayBuffers[this.array.buffer._uuid]=this.array.slice(0).buffer);let e=new this.array.constructor(t.arrayBuffers[this.array.buffer._uuid]),n=new this.constructor(e,this.stride);return n.setUsage(this.usage),n}onUpload(t){return this.onUploadCallback=t,this}toJSON(t){return t.arrayBuffers===void 0&&(t.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=Ye()),t.arrayBuffers[this.array.buffer._uuid]===void 0&&(t.arrayBuffers[this.array.buffer._uuid]=Array.from(new Uint32Array(this.array.buffer))),{uuid:this.uuid,buffer:this.array.buffer._uuid,type:this.array.constructor.name,stride:this.stride}}},Ne=new w,as=class r{constructor(t,e,n,i=!1){this.isInterleavedBufferAttribute=!0,this.name=\"\",this.data=t,this.itemSize=e,this.offset=n,this.normalized=i}get count(){return this.data.count}get array(){return this.data.array}set needsUpdate(t){this.data.needsUpdate=t}applyMatrix4(t){for(let e=0,n=this.data.count;e<n;e++)Ne.fromBufferAttribute(this,e),Ne.applyMatrix4(t),this.setXYZ(e,Ne.x,Ne.y,Ne.z);return this}applyNormalMatrix(t){for(let e=0,n=this.count;e<n;e++)Ne.fromBufferAttribute(this,e),Ne.applyNormalMatrix(t),this.setXYZ(e,Ne.x,Ne.y,Ne.z);return this}transformDirection(t){for(let e=0,n=this.count;e<n;e++)Ne.fromBufferAttribute(this,e),Ne.transformDirection(t),this.setXYZ(e,Ne.x,Ne.y,Ne.z);return this}setX(t,e){return this.normalized&&(e=zt(e,this.array)),this.data.array[t*this.data.stride+this.offset]=e,this}setY(t,e){return this.normalized&&(e=zt(e,this.array)),this.data.array[t*this.data.stride+this.offset+1]=e,this}setZ(t,e){return this.normalized&&(e=zt(e,this.array)),this.data.array[t*this.data.stride+this.offset+2]=e,this}setW(t,e){return this.normalized&&(e=zt(e,this.array)),this.data.array[t*this.data.stride+this.offset+3]=e,this}getX(t){let e=this.data.array[t*this.data.stride+this.offset];return this.normalized&&(e=ke(e,this.array)),e}getY(t){let e=this.data.array[t*this.data.stride+this.offset+1];return this.normalized&&(e=ke(e,this.array)),e}getZ(t){let e=this.data.array[t*this.data.stride+this.offset+2];return this.normalized&&(e=ke(e,this.array)),e}getW(t){let e=this.data.array[t*this.data.stride+this.offset+3];return this.normalized&&(e=ke(e,this.array)),e}setXY(t,e,n){return t=t*this.data.stride+this.offset,this.normalized&&(e=zt(e,this.array),n=zt(n,this.array)),this.data.array[t+0]=e,this.data.array[t+1]=n,this}setXYZ(t,e,n,i){return t=t*this.data.stride+this.offset,this.normalized&&(e=zt(e,this.array),n=zt(n,this.array),i=zt(i,this.array)),this.data.array[t+0]=e,this.data.array[t+1]=n,this.data.array[t+2]=i,this}setXYZW(t,e,n,i,s){return t=t*this.data.stride+this.offset,this.normalized&&(e=zt(e,this.array),n=zt(n,this.array),i=zt(i,this.array),s=zt(s,this.array)),this.data.array[t+0]=e,this.data.array[t+1]=n,this.data.array[t+2]=i,this.data.array[t+3]=s,this}clone(t){if(t===void 0){console.log(\"THREE.InterleavedBufferAttribute.clone(): Cloning an interleaved buffer attribute will de-interleave buffer data.\");let e=[];for(let n=0;n<this.count;n++){let i=n*this.data.stride+this.offset;for(let s=0;s<this.itemSize;s++)e.push(this.data.array[i+s])}return new Jt(new this.array.constructor(e),this.itemSize,this.normalized)}else return t.interleavedBuffers===void 0&&(t.interleavedBuffers={}),t.interleavedBuffers[this.data.uuid]===void 0&&(t.interleavedBuffers[this.data.uuid]=this.data.clone(t)),new r(t.interleavedBuffers[this.data.uuid],this.itemSize,this.offset,this.normalized)}toJSON(t){if(t===void 0){console.log(\"THREE.InterleavedBufferAttribute.toJSON(): Serializing an interleaved buffer attribute will de-interleave buffer data.\");let e=[];for(let n=0;n<this.count;n++){let i=n*this.data.stride+this.offset;for(let s=0;s<this.itemSize;s++)e.push(this.data.array[i+s])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:e,normalized:this.normalized}}else return t.interleavedBuffers===void 0&&(t.interleavedBuffers={}),t.interleavedBuffers[this.data.uuid]===void 0&&(t.interleavedBuffers[this.data.uuid]=this.data.toJSON(t)),{isInterleavedBufferAttribute:!0,itemSize:this.itemSize,data:this.data.uuid,offset:this.offset,normalized:this.normalized}}},da=class extends Te{constructor(t){super(),this.isSpriteMaterial=!0,this.type=\"SpriteMaterial\",this.color=new pt(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!0,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.alphaMap=t.alphaMap,this.rotation=t.rotation,this.sizeAttenuation=t.sizeAttenuation,this.fog=t.fog,this}},zi,vs=new w,Vi=new w,ki=new w,Hi=new Z,ys=new Z,Jd=new It,xr=new w,Ms=new w,vr=new w,Jh=new Z,fo=new Z,$h=new Z,Zo=class extends Kt{constructor(t=new da){if(super(),this.isSprite=!0,this.type=\"Sprite\",zi===void 0){zi=new Wt;let e=new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),n=new zs(e,5);zi.setIndex([0,1,2,0,2,3]),zi.setAttribute(\"position\",new as(n,3,0,!1)),zi.setAttribute(\"uv\",new as(n,2,3,!1))}this.geometry=zi,this.material=t,this.center=new Z(.5,.5)}raycast(t,e){t.camera===null&&console.error('THREE.Sprite: \"Raycaster.camera\" needs to be set in order to raycast against sprites.'),Vi.setFromMatrixScale(this.matrixWorld),Jd.copy(t.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(t.camera.matrixWorldInverse,this.matrixWorld),ki.setFromMatrixPosition(this.modelViewMatrix),t.camera.isPerspectiveCamera&&this.material.sizeAttenuation===!1&&Vi.multiplyScalar(-ki.z);let n=this.material.rotation,i,s;n!==0&&(s=Math.cos(n),i=Math.sin(n));let a=this.center;yr(xr.set(-.5,-.5,0),ki,a,Vi,i,s),yr(Ms.set(.5,-.5,0),ki,a,Vi,i,s),yr(vr.set(.5,.5,0),ki,a,Vi,i,s),Jh.set(0,0),fo.set(1,0),$h.set(1,1);let o=t.ray.intersectTriangle(xr,Ms,vr,!1,vs);if(o===null&&(yr(Ms.set(-.5,.5,0),ki,a,Vi,i,s),fo.set(0,1),o=t.ray.intersectTriangle(xr,vr,Ms,!1,vs),o===null))return;let c=t.ray.origin.distanceTo(vs);c<t.near||c>t.far||e.push({distance:c,point:vs.clone(),uv:Fn.getInterpolation(vs,xr,Ms,vr,Jh,fo,$h,new Z),face:null,object:this})}copy(t,e){return super.copy(t,e),t.center!==void 0&&this.center.copy(t.center),this.material=t.material,this}};function yr(r,t,e,n,i,s){Hi.subVectors(r,e).addScalar(.5).multiply(n),i!==void 0?(ys.x=s*Hi.x-i*Hi.y,ys.y=i*Hi.x+s*Hi.y):ys.copy(Hi),r.copy(t),r.x+=ys.x,r.y+=ys.y,r.applyMatrix4(Jd)}var Mr=new w,Kh=new w,Jo=class extends Kt{constructor(){super(),this._currentLevel=0,this.type=\"LOD\",Object.defineProperties(this,{levels:{enumerable:!0,value:[]},isLOD:{value:!0}}),this.autoUpdate=!0}copy(t){super.copy(t,!1);let e=t.levels;for(let n=0,i=e.length;n<i;n++){let s=e[n];this.addLevel(s.object.clone(),s.distance,s.hysteresis)}return this.autoUpdate=t.autoUpdate,this}addLevel(t,e=0,n=0){e=Math.abs(e);let i=this.levels,s;for(s=0;s<i.length&&!(e<i[s].distance);s++);return i.splice(s,0,{distance:e,hysteresis:n,object:t}),this.add(t),this}getCurrentLevel(){return this._currentLevel}getObjectForDistance(t){let e=this.levels;if(e.length>0){let n,i;for(n=1,i=e.length;n<i;n++){let s=e[n].distance;if(e[n].object.visible&&(s-=s*e[n].hysteresis),t<s)break}return e[n-1].object}return null}raycast(t,e){if(this.levels.length>0){Mr.setFromMatrixPosition(this.matrixWorld);let i=t.ray.origin.distanceTo(Mr);this.getObjectForDistance(i).raycast(t,e)}}update(t){let e=this.levels;if(e.length>1){Mr.setFromMatrixPosition(t.matrixWorld),Kh.setFromMatrixPosition(this.matrixWorld);let n=Mr.distanceTo(Kh)/t.zoom;e[0].object.visible=!0;let i,s;for(i=1,s=e.length;i<s;i++){let a=e[i].distance;if(e[i].object.visible&&(a-=a*e[i].hysteresis),n>=a)e[i-1].object.visible=!1,e[i].object.visible=!0;else break}for(this._currentLevel=i-1;i<s;i++)e[i].object.visible=!1}}toJSON(t){let e=super.toJSON(t);this.autoUpdate===!1&&(e.object.autoUpdate=!1),e.object.levels=[];let n=this.levels;for(let i=0,s=n.length;i<s;i++){let a=n[i];e.object.levels.push({object:a.object.uuid,distance:a.distance,hysteresis:a.hysteresis})}return e}},Qh=new w,jh=new te,tu=new te,xx=new w,eu=new It,Sr=new w,po=new Ae,nu=new It,mo=new _i,$o=class extends ge{constructor(t,e){super(t,e),this.isSkinnedMesh=!0,this.type=\"SkinnedMesh\",this.bindMode=wl,this.bindMatrix=new It,this.bindMatrixInverse=new It,this.boundingBox=null,this.boundingSphere=null}computeBoundingBox(){let t=this.geometry;this.boundingBox===null&&(this.boundingBox=new Le),this.boundingBox.makeEmpty();let e=t.getAttribute(\"position\");for(let n=0;n<e.count;n++)this.getVertexPosition(n,Sr),this.boundingBox.expandByPoint(Sr)}computeBoundingSphere(){let t=this.geometry;this.boundingSphere===null&&(this.boundingSphere=new Ae),this.boundingSphere.makeEmpty();let e=t.getAttribute(\"position\");for(let n=0;n<e.count;n++)this.getVertexPosition(n,Sr),this.boundingSphere.expandByPoint(Sr)}copy(t,e){return super.copy(t,e),this.bindMode=t.bindMode,this.bindMatrix.copy(t.bindMatrix),this.bindMatrixInverse.copy(t.bindMatrixInverse),this.skeleton=t.skeleton,t.boundingBox!==null&&(this.boundingBox=t.boundingBox.clone()),t.boundingSphere!==null&&(this.boundingSphere=t.boundingSphere.clone()),this}raycast(t,e){let n=this.material,i=this.matrixWorld;n!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),po.copy(this.boundingSphere),po.applyMatrix4(i),t.ray.intersectsSphere(po)!==!1&&(nu.copy(i).invert(),mo.copy(t.ray).applyMatrix4(nu),!(this.boundingBox!==null&&mo.intersectsBox(this.boundingBox)===!1)&&this._computeIntersections(t,e,mo)))}getVertexPosition(t,e){return super.getVertexPosition(t,e),this.applyBoneTransform(t,e),e}bind(t,e){this.skeleton=t,e===void 0&&(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),e=this.matrixWorld),this.bindMatrix.copy(e),this.bindMatrixInverse.copy(e).invert()}pose(){this.skeleton.pose()}normalizeSkinWeights(){let t=new te,e=this.geometry.attributes.skinWeight;for(let n=0,i=e.count;n<i;n++){t.fromBufferAttribute(e,n);let s=1/t.manhattanLength();s!==1/0?t.multiplyScalar(s):t.set(1,0,0,0),e.setXYZW(n,t.x,t.y,t.z,t.w)}}updateMatrixWorld(t){super.updateMatrixWorld(t),this.bindMode===wl?this.bindMatrixInverse.copy(this.matrixWorld).invert():this.bindMode===Hf?this.bindMatrixInverse.copy(this.bindMatrix).invert():console.warn(\"THREE.SkinnedMesh: Unrecognized bindMode: \"+this.bindMode)}applyBoneTransform(t,e){let n=this.skeleton,i=this.geometry;jh.fromBufferAttribute(i.attributes.skinIndex,t),tu.fromBufferAttribute(i.attributes.skinWeight,t),Qh.copy(e).applyMatrix4(this.bindMatrix),e.set(0,0,0);for(let s=0;s<4;s++){let a=tu.getComponent(s);if(a!==0){let o=jh.getComponent(s);eu.multiplyMatrices(n.bones[o].matrixWorld,n.boneInverses[o]),e.addScaledVector(xx.copy(Qh).applyMatrix4(eu),a)}}return e.applyMatrix4(this.bindMatrixInverse)}boneTransform(t,e){return console.warn(\"THREE.SkinnedMesh: .boneTransform() was renamed to .applyBoneTransform() in r151.\"),this.applyBoneTransform(t,e)}},fa=class extends Kt{constructor(){super(),this.isBone=!0,this.type=\"Bone\"}},Hn=class extends Ee{constructor(t=null,e=1,n=1,i,s,a,o,c,l=pe,h=pe,u,d){super(null,a,o,c,l,h,i,s,u,d),this.isDataTexture=!0,this.image={data:t,width:e,height:n},this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}},iu=new It,vx=new It,Ko=class r{constructor(t=[],e=[]){this.uuid=Ye(),this.bones=t.slice(0),this.boneInverses=e,this.boneMatrices=null,this.boneTexture=null,this.init()}init(){let t=this.bones,e=this.boneInverses;if(this.boneMatrices=new Float32Array(t.length*16),e.length===0)this.calculateInverses();else if(t.length!==e.length){console.warn(\"THREE.Skeleton: Number of inverse bone matrices does not match amount of bones.\"),this.boneInverses=[];for(let n=0,i=this.bones.length;n<i;n++)this.boneInverses.push(new It)}}calculateInverses(){this.boneInverses.length=0;for(let t=0,e=this.bones.length;t<e;t++){let n=new It;this.bones[t]&&n.copy(this.bones[t].matrixWorld).invert(),this.boneInverses.push(n)}}pose(){for(let t=0,e=this.bones.length;t<e;t++){let n=this.bones[t];n&&n.matrixWorld.copy(this.boneInverses[t]).invert()}for(let t=0,e=this.bones.length;t<e;t++){let n=this.bones[t];n&&(n.parent&&n.parent.isBone?(n.matrix.copy(n.parent.matrixWorld).invert(),n.matrix.multiply(n.matrixWorld)):n.matrix.copy(n.matrixWorld),n.matrix.decompose(n.position,n.quaternion,n.scale))}}update(){let t=this.bones,e=this.boneInverses,n=this.boneMatrices,i=this.boneTexture;for(let s=0,a=t.length;s<a;s++){let o=t[s]?t[s].matrixWorld:vx;iu.multiplyMatrices(o,e[s]),iu.toArray(n,s*16)}i!==null&&(i.needsUpdate=!0)}clone(){return new r(this.bones,this.boneInverses)}computeBoneTexture(){let t=Math.sqrt(this.bones.length*4);t=Math.ceil(t/4)*4,t=Math.max(t,4);let e=new Float32Array(t*t*4);e.set(this.boneMatrices);let n=new Hn(e,t,t,qe,cn);return n.needsUpdate=!0,this.boneMatrices=e,this.boneTexture=n,this}getBoneByName(t){for(let e=0,n=this.bones.length;e<n;e++){let i=this.bones[e];if(i.name===t)return i}}dispose(){this.boneTexture!==null&&(this.boneTexture.dispose(),this.boneTexture=null)}fromJSON(t,e){this.uuid=t.uuid;for(let n=0,i=t.bones.length;n<i;n++){let s=t.bones[n],a=e[s];a===void 0&&(console.warn(\"THREE.Skeleton: No bone found with UUID:\",s),a=new fa),this.bones.push(a),this.boneInverses.push(new It().fromArray(t.boneInverses[n]))}return this.init(),this}toJSON(){let t={metadata:{version:4.6,type:\"Skeleton\",generator:\"Skeleton.toJSON\"},bones:[],boneInverses:[]};t.uuid=this.uuid;let e=this.bones,n=this.boneInverses;for(let i=0,s=e.length;i<s;i++){let a=e[i];t.bones.push(a.uuid);let o=n[i];t.boneInverses.push(o.toArray())}return t}},xi=class extends Jt{constructor(t,e,n,i=1){super(t,e,n),this.isInstancedBufferAttribute=!0,this.meshPerAttribute=i}copy(t){return super.copy(t),this.meshPerAttribute=t.meshPerAttribute,this}toJSON(){let t=super.toJSON();return t.meshPerAttribute=this.meshPerAttribute,t.isInstancedBufferAttribute=!0,t}},Gi=new It,su=new It,br=[],ru=new Le,yx=new It,Ss=new ge,bs=new Ae,Qo=class extends ge{constructor(t,e,n){super(t,e),this.isInstancedMesh=!0,this.instanceMatrix=new xi(new Float32Array(n*16),16),this.instanceColor=null,this.count=n,this.boundingBox=null,this.boundingSphere=null;for(let i=0;i<n;i++)this.setMatrixAt(i,yx)}computeBoundingBox(){let t=this.geometry,e=this.count;this.boundingBox===null&&(this.boundingBox=new Le),t.boundingBox===null&&t.computeBoundingBox(),this.boundingBox.makeEmpty();for(let n=0;n<e;n++)this.getMatrixAt(n,Gi),ru.copy(t.boundingBox).applyMatrix4(Gi),this.boundingBox.union(ru)}computeBoundingSphere(){let t=this.geometry,e=this.count;this.boundingSphere===null&&(this.boundingSphere=new Ae),t.boundingSphere===null&&t.computeBoundingSphere(),this.boundingSphere.makeEmpty();for(let n=0;n<e;n++)this.getMatrixAt(n,Gi),bs.copy(t.boundingSphere).applyMatrix4(Gi),this.boundingSphere.union(bs)}copy(t,e){return super.copy(t,e),this.instanceMatrix.copy(t.instanceMatrix),t.instanceColor!==null&&(this.instanceColor=t.instanceColor.clone()),this.count=t.count,t.boundingBox!==null&&(this.boundingBox=t.boundingBox.clone()),t.boundingSphere!==null&&(this.boundingSphere=t.boundingSphere.clone()),this}getColorAt(t,e){e.fromArray(this.instanceColor.array,t*3)}getMatrixAt(t,e){e.fromArray(this.instanceMatrix.array,t*16)}raycast(t,e){let n=this.matrixWorld,i=this.count;if(Ss.geometry=this.geometry,Ss.material=this.material,Ss.material!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),bs.copy(this.boundingSphere),bs.applyMatrix4(n),t.ray.intersectsSphere(bs)!==!1))for(let s=0;s<i;s++){this.getMatrixAt(s,Gi),su.multiplyMatrices(n,Gi),Ss.matrixWorld=su,Ss.raycast(t,br);for(let a=0,o=br.length;a<o;a++){let c=br[a];c.instanceId=s,c.object=this,e.push(c)}br.length=0}}setColorAt(t,e){this.instanceColor===null&&(this.instanceColor=new xi(new Float32Array(this.instanceMatrix.count*3),3)),e.toArray(this.instanceColor.array,t*3)}setMatrixAt(t,e){e.toArray(this.instanceMatrix.array,t*16)}updateMorphTargets(){}dispose(){this.dispatchEvent({type:\"dispose\"})}};function Mx(r,t){return r.z-t.z}function Sx(r,t){return t.z-r.z}var jo=class{constructor(){this.index=0,this.pool=[],this.list=[]}push(t,e){let n=this.pool,i=this.list;this.index>=n.length&&n.push({start:-1,count:-1,z:-1});let s=n[this.index];i.push(s),this.index++,s.start=t.start,s.count=t.count,s.z=e}reset(){this.list.length=0,this.index=0}},Wi=\"batchId\",Un=new It,au=new It,bx=new It,ou=new It,go=new rs,Er=new Le,ti=new Ae,Es=new w,_o=new jo,Pe=new ge,Ar=[];function Ex(r,t,e=0){let n=t.itemSize;if(r.isInterleavedBufferAttribute||r.array.constructor!==t.array.constructor){let i=r.count;for(let s=0;s<i;s++)for(let a=0;a<n;a++)t.setComponent(s+e,a,r.getComponent(s,a))}else t.array.set(r.array,e*n);t.needsUpdate=!0}var tc=class extends ge{get maxGeometryCount(){return this._maxGeometryCount}constructor(t,e,n=e*2,i){super(new Wt,i),this.isBatchedMesh=!0,this.perObjectFrustumCulled=!0,this.sortObjects=!0,this.boundingBox=null,this.boundingSphere=null,this.customSort=null,this._drawRanges=[],this._reservedRanges=[],this._visibility=[],this._active=[],this._bounds=[],this._maxGeometryCount=t,this._maxVertexCount=e,this._maxIndexCount=n,this._geometryInitialized=!1,this._geometryCount=0,this._multiDrawCounts=new Int32Array(t),this._multiDrawStarts=new Int32Array(t),this._multiDrawCount=0,this._visibilityChanged=!0,this._matricesTexture=null,this._initMatricesTexture()}_initMatricesTexture(){let t=Math.sqrt(this._maxGeometryCount*4);t=Math.ceil(t/4)*4,t=Math.max(t,4);let e=new Float32Array(t*t*4),n=new Hn(e,t,t,qe,cn);this._matricesTexture=n}_initializeGeometry(t){let e=this.geometry,n=this._maxVertexCount,i=this._maxGeometryCount,s=this._maxIndexCount;if(this._geometryInitialized===!1){for(let o in t.attributes){let c=t.getAttribute(o),{array:l,itemSize:h,normalized:u}=c,d=new l.constructor(n*h),f=new c.constructor(d,h,u);f.setUsage(c.usage),e.setAttribute(o,f)}if(t.getIndex()!==null){let o=n>65536?new Uint32Array(s):new Uint16Array(s);e.setIndex(new Jt(o,1))}let a=i>65536?new Uint32Array(n):new Uint16Array(n);e.setAttribute(Wi,new Jt(a,1)),this._geometryInitialized=!0}}_validateGeometry(t){if(t.getAttribute(Wi))throw new Error(`BatchedMesh: Geometry cannot use attribute \"${Wi}\"`);let e=this.geometry;if(!!t.getIndex()!=!!e.getIndex())throw new Error('BatchedMesh: All geometries must consistently have \"index\".');for(let n in e.attributes){if(n===Wi)continue;if(!t.hasAttribute(n))throw new Error(`BatchedMesh: Added geometry missing \"${n}\". All geometries must have consistent attributes.`);let i=t.getAttribute(n),s=e.getAttribute(n);if(i.itemSize!==s.itemSize||i.normalized!==s.normalized)throw new Error(\"BatchedMesh: All attributes must have a consistent itemSize and normalized value.\")}}setCustomSort(t){return this.customSort=t,this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new Le);let t=this._geometryCount,e=this.boundingBox,n=this._active;e.makeEmpty();for(let i=0;i<t;i++)n[i]!==!1&&(this.getMatrixAt(i,Un),this.getBoundingBoxAt(i,Er).applyMatrix4(Un),e.union(Er))}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new Ae);let t=this._geometryCount,e=this.boundingSphere,n=this._active;e.makeEmpty();for(let i=0;i<t;i++)n[i]!==!1&&(this.getMatrixAt(i,Un),this.getBoundingSphereAt(i,ti).applyMatrix4(Un),e.union(ti))}addGeometry(t,e=-1,n=-1){if(this._initializeGeometry(t),this._validateGeometry(t),this._geometryCount>=this._maxGeometryCount)throw new Error(\"BatchedMesh: Maximum geometry count reached.\");let i={vertexStart:-1,vertexCount:-1,indexStart:-1,indexCount:-1},s=null,a=this._reservedRanges,o=this._drawRanges,c=this._bounds;this._geometryCount!==0&&(s=a[a.length-1]),e===-1?i.vertexCount=t.getAttribute(\"position\").count:i.vertexCount=e,s===null?i.vertexStart=0:i.vertexStart=s.vertexStart+s.vertexCount;let l=t.getIndex(),h=l!==null;if(h&&(n===-1?i.indexCount=l.count:i.indexCount=n,s===null?i.indexStart=0:i.indexStart=s.indexStart+s.indexCount),i.indexStart!==-1&&i.indexStart+i.indexCount>this._maxIndexCount||i.vertexStart+i.vertexCount>this._maxVertexCount)throw new Error(\"BatchedMesh: Reserved space request exceeds the maximum buffer size.\");let u=this._visibility,d=this._active,f=this._matricesTexture,m=this._matricesTexture.image.data;u.push(!0),d.push(!0);let _=this._geometryCount;this._geometryCount++,bx.toArray(m,_*16),f.needsUpdate=!0,a.push(i),o.push({start:h?i.indexStart:i.vertexStart,count:-1}),c.push({boxInitialized:!1,box:new Le,sphereInitialized:!1,sphere:new Ae});let g=this.geometry.getAttribute(Wi);for(let p=0;p<i.vertexCount;p++)g.setX(i.vertexStart+p,_);return g.needsUpdate=!0,this.setGeometryAt(_,t),_}setGeometryAt(t,e){if(t>=this._geometryCount)throw new Error(\"BatchedMesh: Maximum geometry count reached.\");this._validateGeometry(e);let n=this.geometry,i=n.getIndex()!==null,s=n.getIndex(),a=e.getIndex(),o=this._reservedRanges[t];if(i&&a.count>o.indexCount||e.attributes.position.count>o.vertexCount)throw new Error(\"BatchedMesh: Reserved space not large enough for provided geometry.\");let c=o.vertexStart,l=o.vertexCount;for(let f in n.attributes){if(f===Wi)continue;let m=e.getAttribute(f),_=n.getAttribute(f);Ex(m,_,c);let g=m.itemSize;for(let p=m.count,v=l;p<v;p++){let x=c+p;for(let y=0;y<g;y++)_.setComponent(x,y,0)}_.needsUpdate=!0}if(i){let f=o.indexStart;for(let m=0;m<a.count;m++)s.setX(f+m,c+a.getX(m));for(let m=a.count,_=o.indexCount;m<_;m++)s.setX(f+m,c);s.needsUpdate=!0}let h=this._bounds[t];e.boundingBox!==null?(h.box.copy(e.boundingBox),h.boxInitialized=!0):h.boxInitialized=!1,e.boundingSphere!==null?(h.sphere.copy(e.boundingSphere),h.sphereInitialized=!0):h.sphereInitialized=!1;let u=this._drawRanges[t],d=e.getAttribute(\"position\");return u.count=i?a.count:d.count,this._visibilityChanged=!0,t}deleteGeometry(t){let e=this._active;return t>=e.length||e[t]===!1?this:(e[t]=!1,this._visibilityChanged=!0,this)}getBoundingBoxAt(t,e){if(this._active[t]===!1)return this;let i=this._bounds[t],s=i.box,a=this.geometry;if(i.boxInitialized===!1){s.makeEmpty();let o=a.index,c=a.attributes.position,l=this._drawRanges[t];for(let h=l.start,u=l.start+l.count;h<u;h++){let d=h;o&&(d=o.getX(d)),s.expandByPoint(Es.fromBufferAttribute(c,d))}i.boxInitialized=!0}return e.copy(s),e}getBoundingSphereAt(t,e){if(this._active[t]===!1)return this;let i=this._bounds[t],s=i.sphere,a=this.geometry;if(i.sphereInitialized===!1){s.makeEmpty(),this.getBoundingBoxAt(t,Er),Er.getCenter(s.center);let o=a.index,c=a.attributes.position,l=this._drawRanges[t],h=0;for(let u=l.start,d=l.start+l.count;u<d;u++){let f=u;o&&(f=o.getX(f)),Es.fromBufferAttribute(c,f),h=Math.max(h,s.center.distanceToSquared(Es))}s.radius=Math.sqrt(h),i.sphereInitialized=!0}return e.copy(s),e}setMatrixAt(t,e){let n=this._active,i=this._matricesTexture,s=this._matricesTexture.image.data,a=this._geometryCount;return t>=a||n[t]===!1?this:(e.toArray(s,t*16),i.needsUpdate=!0,this)}getMatrixAt(t,e){let n=this._active,i=this._matricesTexture.image.data,s=this._geometryCount;return t>=s||n[t]===!1?null:e.fromArray(i,t*16)}setVisibleAt(t,e){let n=this._visibility,i=this._active,s=this._geometryCount;return t>=s||i[t]===!1||n[t]===e?this:(n[t]=e,this._visibilityChanged=!0,this)}getVisibleAt(t){let e=this._visibility,n=this._active,i=this._geometryCount;return t>=i||n[t]===!1?!1:e[t]}raycast(t,e){let n=this._visibility,i=this._active,s=this._drawRanges,a=this._geometryCount,o=this.matrixWorld,c=this.geometry;Pe.material=this.material,Pe.geometry.index=c.index,Pe.geometry.attributes=c.attributes,Pe.geometry.boundingBox===null&&(Pe.geometry.boundingBox=new Le),Pe.geometry.boundingSphere===null&&(Pe.geometry.boundingSphere=new Ae);for(let l=0;l<a;l++){if(!n[l]||!i[l])continue;let h=s[l];Pe.geometry.setDrawRange(h.start,h.count),this.getMatrixAt(l,Pe.matrixWorld).premultiply(o),this.getBoundingBoxAt(l,Pe.geometry.boundingBox),this.getBoundingSphereAt(l,Pe.geometry.boundingSphere),Pe.raycast(t,Ar);for(let u=0,d=Ar.length;u<d;u++){let f=Ar[u];f.object=this,f.batchId=l,e.push(f)}Ar.length=0}Pe.material=null,Pe.geometry.index=null,Pe.geometry.attributes={},Pe.geometry.setDrawRange(0,1/0)}copy(t){return super.copy(t),this.geometry=t.geometry.clone(),this.perObjectFrustumCulled=t.perObjectFrustumCulled,this.sortObjects=t.sortObjects,this.boundingBox=t.boundingBox!==null?t.boundingBox.clone():null,this.boundingSphere=t.boundingSphere!==null?t.boundingSphere.clone():null,this._drawRanges=t._drawRanges.map(e=>({...e})),this._reservedRanges=t._reservedRanges.map(e=>({...e})),this._visibility=t._visibility.slice(),this._active=t._active.slice(),this._bounds=t._bounds.map(e=>({boxInitialized:e.boxInitialized,box:e.box.clone(),sphereInitialized:e.sphereInitialized,sphere:e.sphere.clone()})),this._maxGeometryCount=t._maxGeometryCount,this._maxVertexCount=t._maxVertexCount,this._maxIndexCount=t._maxIndexCount,this._geometryInitialized=t._geometryInitialized,this._geometryCount=t._geometryCount,this._multiDrawCounts=t._multiDrawCounts.slice(),this._multiDrawStarts=t._multiDrawStarts.slice(),this._matricesTexture=t._matricesTexture.clone(),this._matricesTexture.image.data=this._matricesTexture.image.slice(),this}dispose(){return this.geometry.dispose(),this._matricesTexture.dispose(),this._matricesTexture=null,this}onBeforeRender(t,e,n,i,s){if(!this._visibilityChanged&&!this.perObjectFrustumCulled&&!this.sortObjects)return;let a=i.getIndex(),o=a===null?1:a.array.BYTES_PER_ELEMENT,c=this._visibility,l=this._multiDrawStarts,h=this._multiDrawCounts,u=this._drawRanges,d=this.perObjectFrustumCulled;d&&(ou.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse).multiply(this.matrixWorld),go.setFromProjectionMatrix(ou,t.isWebGPURenderer?Us:ln));let f=0;if(this.sortObjects){au.copy(this.matrixWorld).invert(),Es.setFromMatrixPosition(n.matrixWorld).applyMatrix4(au);for(let g=0,p=c.length;g<p;g++)if(c[g]){this.getMatrixAt(g,Un),this.getBoundingSphereAt(g,ti).applyMatrix4(Un);let v=!1;if(d&&(v=!go.intersectsSphere(ti)),!v){let x=Es.distanceTo(ti.center);_o.push(u[g],x)}}let m=_o.list,_=this.customSort;_===null?m.sort(s.transparent?Sx:Mx):_.call(this,m,n);for(let g=0,p=m.length;g<p;g++){let v=m[g];l[f]=v.start*o,h[f]=v.count,f++}_o.reset()}else for(let m=0,_=c.length;m<_;m++)if(c[m]){let g=!1;if(d&&(this.getMatrixAt(m,Un),this.getBoundingSphereAt(m,ti).applyMatrix4(Un),g=!go.intersectsSphere(ti)),!g){let p=u[m];l[f]=p.start*o,h[f]=p.count,f++}}this._multiDrawCount=f,this._visibilityChanged=!1}onBeforeShadow(t,e,n,i,s,a){this.onBeforeRender(t,null,i,s,a)}},Ie=class extends Te{constructor(t){super(),this.isLineBasicMaterial=!0,this.type=\"LineBasicMaterial\",this.color=new pt(16777215),this.map=null,this.linewidth=1,this.linecap=\"round\",this.linejoin=\"round\",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.linewidth=t.linewidth,this.linecap=t.linecap,this.linejoin=t.linejoin,this.fog=t.fog,this}},cu=new w,lu=new w,hu=new It,xo=new _i,Tr=new Ae,Tn=class extends Kt{constructor(t=new Wt,e=new Ie){super(),this.isLine=!0,this.type=\"Line\",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t,e){return super.copy(t,e),this.material=Array.isArray(t.material)?t.material.slice():t.material,this.geometry=t.geometry,this}computeLineDistances(){let t=this.geometry;if(t.index===null){let e=t.attributes.position,n=[0];for(let i=1,s=e.count;i<s;i++)cu.fromBufferAttribute(e,i-1),lu.fromBufferAttribute(e,i),n[i]=n[i-1],n[i]+=cu.distanceTo(lu);t.setAttribute(\"lineDistance\",new xt(n,1))}else console.warn(\"THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.\");return this}raycast(t,e){let n=this.geometry,i=this.matrixWorld,s=t.params.Line.threshold,a=n.drawRange;if(n.boundingSphere===null&&n.computeBoundingSphere(),Tr.copy(n.boundingSphere),Tr.applyMatrix4(i),Tr.radius+=s,t.ray.intersectsSphere(Tr)===!1)return;hu.copy(i).invert(),xo.copy(t.ray).applyMatrix4(hu);let o=s/((this.scale.x+this.scale.y+this.scale.z)/3),c=o*o,l=new w,h=new w,u=new w,d=new w,f=this.isLineSegments?2:1,m=n.index,g=n.attributes.position;if(m!==null){let p=Math.max(0,a.start),v=Math.min(m.count,a.start+a.count);for(let x=p,y=v-1;x<y;x+=f){let C=m.getX(x),T=m.getX(x+1);if(l.fromBufferAttribute(g,C),h.fromBufferAttribute(g,T),xo.distanceSqToSegment(l,h,d,u)>c)continue;d.applyMatrix4(this.matrixWorld);let U=t.ray.origin.distanceTo(d);U<t.near||U>t.far||e.push({distance:U,point:u.clone().applyMatrix4(this.matrixWorld),index:x,face:null,faceIndex:null,object:this})}}else{let p=Math.max(0,a.start),v=Math.min(g.count,a.start+a.count);for(let x=p,y=v-1;x<y;x+=f){if(l.fromBufferAttribute(g,x),h.fromBufferAttribute(g,x+1),xo.distanceSqToSegment(l,h,d,u)>c)continue;d.applyMatrix4(this.matrixWorld);let T=t.ray.origin.distanceTo(d);T<t.near||T>t.far||e.push({distance:T,point:u.clone().applyMatrix4(this.matrixWorld),index:x,face:null,faceIndex:null,object:this})}}}updateMorphTargets(){let e=this.geometry.morphAttributes,n=Object.keys(e);if(n.length>0){let i=e[n[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,a=i.length;s<a;s++){let o=i[s].name||String(s);this.morphTargetInfluences.push(0),this.morphTargetDictionary[o]=s}}}}},uu=new w,du=new w,rn=class extends Tn{constructor(t,e){super(t,e),this.isLineSegments=!0,this.type=\"LineSegments\"}computeLineDistances(){let t=this.geometry;if(t.index===null){let e=t.attributes.position,n=[];for(let i=0,s=e.count;i<s;i+=2)uu.fromBufferAttribute(e,i),du.fromBufferAttribute(e,i+1),n[i]=i===0?0:n[i-1],n[i+1]=n[i]+uu.distanceTo(du);t.setAttribute(\"lineDistance\",new xt(n,1))}else console.warn(\"THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.\");return this}},ec=class extends Tn{constructor(t,e){super(t,e),this.isLineLoop=!0,this.type=\"LineLoop\"}},pa=class extends Te{constructor(t){super(),this.isPointsMaterial=!0,this.type=\"PointsMaterial\",this.color=new pt(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!0,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.alphaMap=t.alphaMap,this.size=t.size,this.sizeAttenuation=t.sizeAttenuation,this.fog=t.fog,this}},fu=new It,nc=new _i,wr=new Ae,Rr=new w,ic=class extends Kt{constructor(t=new Wt,e=new pa){super(),this.isPoints=!0,this.type=\"Points\",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t,e){return super.copy(t,e),this.material=Array.isArray(t.material)?t.material.slice():t.material,this.geometry=t.geometry,this}raycast(t,e){let n=this.geometry,i=this.matrixWorld,s=t.params.Points.threshold,a=n.drawRange;if(n.boundingSphere===null&&n.computeBoundingSphere(),wr.copy(n.boundingSphere),wr.applyMatrix4(i),wr.radius+=s,t.ray.intersectsSphere(wr)===!1)return;fu.copy(i).invert(),nc.copy(t.ray).applyMatrix4(fu);let o=s/((this.scale.x+this.scale.y+this.scale.z)/3),c=o*o,l=n.index,u=n.attributes.position;if(l!==null){let d=Math.max(0,a.start),f=Math.min(l.count,a.start+a.count);for(let m=d,_=f;m<_;m++){let g=l.getX(m);Rr.fromBufferAttribute(u,g),pu(Rr,g,c,i,t,e,this)}}else{let d=Math.max(0,a.start),f=Math.min(u.count,a.start+a.count);for(let m=d,_=f;m<_;m++)Rr.fromBufferAttribute(u,m),pu(Rr,m,c,i,t,e,this)}}updateMorphTargets(){let e=this.geometry.morphAttributes,n=Object.keys(e);if(n.length>0){let i=e[n[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,a=i.length;s<a;s++){let o=i[s].name||String(s);this.morphTargetInfluences.push(0),this.morphTargetDictionary[o]=s}}}}};function pu(r,t,e,n,i,s,a){let o=nc.distanceSqToPoint(r);if(o<e){let c=new w;nc.closestPointToPoint(r,c),c.applyMatrix4(n);let l=i.ray.origin.distanceTo(c);if(l<i.near||l>i.far)return;s.push({distance:l,distanceToRay:Math.sqrt(o),point:c,index:t,face:null,object:a})}}var mu=class extends Ee{constructor(t,e,n,i,s,a,o,c,l){super(t,e,n,i,s,a,o,c,l),this.isVideoTexture=!0,this.minFilter=a!==void 0?a:me,this.magFilter=s!==void 0?s:me,this.generateMipmaps=!1;let h=this;function u(){h.needsUpdate=!0,t.requestVideoFrameCallback(u)}\"requestVideoFrameCallback\"in t&&t.requestVideoFrameCallback(u)}clone(){return new this.constructor(this.image).copy(this)}update(){let t=this.image;\"requestVideoFrameCallback\"in t===!1&&t.readyState>=t.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}},gu=class extends Ee{constructor(t,e){super({width:t,height:e}),this.isFramebufferTexture=!0,this.magFilter=pe,this.minFilter=pe,this.generateMipmaps=!1,this.needsUpdate=!0}},Vs=class extends Ee{constructor(t,e,n,i,s,a,o,c,l,h,u,d){super(null,a,o,c,l,h,i,s,u,d),this.isCompressedTexture=!0,this.image={width:e,height:n},this.mipmaps=t,this.flipY=!1,this.generateMipmaps=!1}},_u=class extends Vs{constructor(t,e,n,i,s,a){super(t,e,n,s,a),this.isCompressedArrayTexture=!0,this.image.depth=i,this.wrapR=Fe}},xu=class extends Vs{constructor(t,e,n){super(void 0,t[0].width,t[0].height,e,n,Xn),this.isCompressedCubeTexture=!0,this.isCubeTexture=!0,this.image=t}},vu=class extends Ee{constructor(t,e,n,i,s,a,o,c,l){super(t,e,n,i,s,a,o,c,l),this.isCanvasTexture=!0,this.needsUpdate=!0}},Qe=class{constructor(){this.type=\"Curve\",this.arcLengthDivisions=200}getPoint(){return console.warn(\"THREE.Curve: .getPoint() not implemented.\"),null}getPointAt(t,e){let n=this.getUtoTmapping(t);return this.getPoint(n,e)}getPoints(t=5){let e=[];for(let n=0;n<=t;n++)e.push(this.getPoint(n/t));return e}getSpacedPoints(t=5){let e=[];for(let n=0;n<=t;n++)e.push(this.getPointAt(n/t));return e}getLength(){let t=this.getLengths();return t[t.length-1]}getLengths(t=this.arcLengthDivisions){if(this.cacheArcLengths&&this.cacheArcLengths.length===t+1&&!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=!1;let e=[],n,i=this.getPoint(0),s=0;e.push(0);for(let a=1;a<=t;a++)n=this.getPoint(a/t),s+=n.distanceTo(i),e.push(s),i=n;return this.cacheArcLengths=e,e}updateArcLengths(){this.needsUpdate=!0,this.getLengths()}getUtoTmapping(t,e){let n=this.getLengths(),i=0,s=n.length,a;e?a=e:a=t*n[s-1];let o=0,c=s-1,l;for(;o<=c;)if(i=Math.floor(o+(c-o)/2),l=n[i]-a,l<0)o=i+1;else if(l>0)c=i-1;else{c=i;break}if(i=c,n[i]===a)return i/(s-1);let h=n[i],d=n[i+1]-h,f=(a-h)/d;return(i+f)/(s-1)}getTangent(t,e){let i=t-1e-4,s=t+1e-4;i<0&&(i=0),s>1&&(s=1);let a=this.getPoint(i),o=this.getPoint(s),c=e||(a.isVector2?new Z:new w);return c.copy(o).sub(a).normalize(),c}getTangentAt(t,e){let n=this.getUtoTmapping(t);return this.getTangent(n,e)}computeFrenetFrames(t,e){let n=new w,i=[],s=[],a=[],o=new w,c=new It;for(let f=0;f<=t;f++){let m=f/t;i[f]=this.getTangentAt(m,new w)}s[0]=new w,a[0]=new w;let l=Number.MAX_VALUE,h=Math.abs(i[0].x),u=Math.abs(i[0].y),d=Math.abs(i[0].z);h<=l&&(l=h,n.set(1,0,0)),u<=l&&(l=u,n.set(0,1,0)),d<=l&&n.set(0,0,1),o.crossVectors(i[0],n).normalize(),s[0].crossVectors(i[0],o),a[0].crossVectors(i[0],s[0]);for(let f=1;f<=t;f++){if(s[f]=s[f-1].clone(),a[f]=a[f-1].clone(),o.crossVectors(i[f-1],i[f]),o.length()>Number.EPSILON){o.normalize();let m=Math.acos(he(i[f-1].dot(i[f]),-1,1));s[f].applyMatrix4(c.makeRotationAxis(o,m))}a[f].crossVectors(i[f],s[f])}if(e===!0){let f=Math.acos(he(s[0].dot(s[t]),-1,1));f/=t,i[0].dot(o.crossVectors(s[0],s[t]))>0&&(f=-f);for(let m=1;m<=t;m++)s[m].applyMatrix4(c.makeRotationAxis(i[m],f*m)),a[m].crossVectors(i[m],s[m])}return{tangents:i,normals:s,binormals:a}}clone(){return new this.constructor().copy(this)}copy(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}toJSON(){let t={metadata:{version:4.6,type:\"Curve\",generator:\"Curve.toJSON\"}};return t.arcLengthDivisions=this.arcLengthDivisions,t.type=this.type,t}fromJSON(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}},ks=class extends Qe{constructor(t=0,e=0,n=1,i=1,s=0,a=Math.PI*2,o=!1,c=0){super(),this.isEllipseCurve=!0,this.type=\"EllipseCurve\",this.aX=t,this.aY=e,this.xRadius=n,this.yRadius=i,this.aStartAngle=s,this.aEndAngle=a,this.aClockwise=o,this.aRotation=c}getPoint(t,e){let n=e||new Z,i=Math.PI*2,s=this.aEndAngle-this.aStartAngle,a=Math.abs(s)<Number.EPSILON;for(;s<0;)s+=i;for(;s>i;)s-=i;s<Number.EPSILON&&(a?s=0:s=i),this.aClockwise===!0&&!a&&(s===i?s=-i:s=s-i);let o=this.aStartAngle+t*s,c=this.aX+this.xRadius*Math.cos(o),l=this.aY+this.yRadius*Math.sin(o);if(this.aRotation!==0){let h=Math.cos(this.aRotation),u=Math.sin(this.aRotation),d=c-this.aX,f=l-this.aY;c=d*h-f*u+this.aX,l=d*u+f*h+this.aY}return n.set(c,l)}copy(t){return super.copy(t),this.aX=t.aX,this.aY=t.aY,this.xRadius=t.xRadius,this.yRadius=t.yRadius,this.aStartAngle=t.aStartAngle,this.aEndAngle=t.aEndAngle,this.aClockwise=t.aClockwise,this.aRotation=t.aRotation,this}toJSON(){let t=super.toJSON();return t.aX=this.aX,t.aY=this.aY,t.xRadius=this.xRadius,t.yRadius=this.yRadius,t.aStartAngle=this.aStartAngle,t.aEndAngle=this.aEndAngle,t.aClockwise=this.aClockwise,t.aRotation=this.aRotation,t}fromJSON(t){return super.fromJSON(t),this.aX=t.aX,this.aY=t.aY,this.xRadius=t.xRadius,this.yRadius=t.yRadius,this.aStartAngle=t.aStartAngle,this.aEndAngle=t.aEndAngle,this.aClockwise=t.aClockwise,this.aRotation=t.aRotation,this}},sc=class extends ks{constructor(t,e,n,i,s,a){super(t,e,n,n,i,s,a),this.isArcCurve=!0,this.type=\"ArcCurve\"}};function ul(){let r=0,t=0,e=0,n=0;function i(s,a,o,c){r=s,t=o,e=-3*s+3*a-2*o-c,n=2*s-2*a+o+c}return{initCatmullRom:function(s,a,o,c,l){i(a,o,l*(o-s),l*(c-a))},initNonuniformCatmullRom:function(s,a,o,c,l,h,u){let d=(a-s)/l-(o-s)/(l+h)+(o-a)/h,f=(o-a)/h-(c-a)/(h+u)+(c-o)/u;d*=h,f*=h,i(a,o,d,f)},calc:function(s){let a=s*s,o=a*s;return r+t*s+e*a+n*o}}}var Cr=new w,vo=new ul,yo=new ul,Mo=new ul,rc=class extends Qe{constructor(t=[],e=!1,n=\"centripetal\",i=.5){super(),this.isCatmullRomCurve3=!0,this.type=\"CatmullRomCurve3\",this.points=t,this.closed=e,this.curveType=n,this.tension=i}getPoint(t,e=new w){let n=e,i=this.points,s=i.length,a=(s-(this.closed?0:1))*t,o=Math.floor(a),c=a-o;this.closed?o+=o>0?0:(Math.floor(Math.abs(o)/s)+1)*s:c===0&&o===s-1&&(o=s-2,c=1);let l,h;this.closed||o>0?l=i[(o-1)%s]:(Cr.subVectors(i[0],i[1]).add(i[0]),l=Cr);let u=i[o%s],d=i[(o+1)%s];if(this.closed||o+2<s?h=i[(o+2)%s]:(Cr.subVectors(i[s-1],i[s-2]).add(i[s-1]),h=Cr),this.curveType===\"centripetal\"||this.curveType===\"chordal\"){let f=this.curveType===\"chordal\"?.5:.25,m=Math.pow(l.distanceToSquared(u),f),_=Math.pow(u.distanceToSquared(d),f),g=Math.pow(d.distanceToSquared(h),f);_<1e-4&&(_=1),m<1e-4&&(m=_),g<1e-4&&(g=_),vo.initNonuniformCatmullRom(l.x,u.x,d.x,h.x,m,_,g),yo.initNonuniformCatmullRom(l.y,u.y,d.y,h.y,m,_,g),Mo.initNonuniformCatmullRom(l.z,u.z,d.z,h.z,m,_,g)}else this.curveType===\"catmullrom\"&&(vo.initCatmullRom(l.x,u.x,d.x,h.x,this.tension),yo.initCatmullRom(l.y,u.y,d.y,h.y,this.tension),Mo.initCatmullRom(l.z,u.z,d.z,h.z,this.tension));return n.set(vo.calc(c),yo.calc(c),Mo.calc(c)),n}copy(t){super.copy(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){let i=t.points[e];this.points.push(i.clone())}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this}toJSON(){let t=super.toJSON();t.points=[];for(let e=0,n=this.points.length;e<n;e++){let i=this.points[e];t.points.push(i.toArray())}return t.closed=this.closed,t.curveType=this.curveType,t.tension=this.tension,t}fromJSON(t){super.fromJSON(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){let i=t.points[e];this.points.push(new w().fromArray(i))}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this}};function yu(r,t,e,n,i){let s=(n-t)*.5,a=(i-e)*.5,o=r*r,c=r*o;return(2*e-2*n+s+a)*c+(-3*e+3*n-2*s-a)*o+s*r+e}function Ax(r,t){let e=1-r;return e*e*t}function Tx(r,t){return 2*(1-r)*r*t}function wx(r,t){return r*r*t}function Ps(r,t,e,n){return Ax(r,t)+Tx(r,e)+wx(r,n)}function Rx(r,t){let e=1-r;return e*e*e*t}function Cx(r,t){let e=1-r;return 3*e*e*r*t}function Px(r,t){return 3*(1-r)*r*r*t}function Lx(r,t){return r*r*r*t}function Ls(r,t,e,n,i){return Rx(r,t)+Cx(r,e)+Px(r,n)+Lx(r,i)}var ma=class extends Qe{constructor(t=new Z,e=new Z,n=new Z,i=new Z){super(),this.isCubicBezierCurve=!0,this.type=\"CubicBezierCurve\",this.v0=t,this.v1=e,this.v2=n,this.v3=i}getPoint(t,e=new Z){let n=e,i=this.v0,s=this.v1,a=this.v2,o=this.v3;return n.set(Ls(t,i.x,s.x,a.x,o.x),Ls(t,i.y,s.y,a.y,o.y)),n}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this.v3.copy(t.v3),this}toJSON(){let t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t.v3=this.v3.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this.v3.fromArray(t.v3),this}},ac=class extends Qe{constructor(t=new w,e=new w,n=new w,i=new w){super(),this.isCubicBezierCurve3=!0,this.type=\"CubicBezierCurve3\",this.v0=t,this.v1=e,this.v2=n,this.v3=i}getPoint(t,e=new w){let n=e,i=this.v0,s=this.v1,a=this.v2,o=this.v3;return n.set(Ls(t,i.x,s.x,a.x,o.x),Ls(t,i.y,s.y,a.y,o.y),Ls(t,i.z,s.z,a.z,o.z)),n}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this.v3.copy(t.v3),this}toJSON(){let t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t.v3=this.v3.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this.v3.fromArray(t.v3),this}},ga=class extends Qe{constructor(t=new Z,e=new Z){super(),this.isLineCurve=!0,this.type=\"LineCurve\",this.v1=t,this.v2=e}getPoint(t,e=new Z){let n=e;return t===1?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(t).add(this.v1)),n}getPointAt(t,e){return this.getPoint(t,e)}getTangent(t,e=new Z){return e.subVectors(this.v2,this.v1).normalize()}getTangentAt(t,e){return this.getTangent(t,e)}copy(t){return super.copy(t),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){let t=super.toJSON();return t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}},oc=class extends Qe{constructor(t=new w,e=new w){super(),this.isLineCurve3=!0,this.type=\"LineCurve3\",this.v1=t,this.v2=e}getPoint(t,e=new w){let n=e;return t===1?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(t).add(this.v1)),n}getPointAt(t,e){return this.getPoint(t,e)}getTangent(t,e=new w){return e.subVectors(this.v2,this.v1).normalize()}getTangentAt(t,e){return this.getTangent(t,e)}copy(t){return super.copy(t),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){let t=super.toJSON();return t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}},_a=class extends Qe{constructor(t=new Z,e=new Z,n=new Z){super(),this.isQuadraticBezierCurve=!0,this.type=\"QuadraticBezierCurve\",this.v0=t,this.v1=e,this.v2=n}getPoint(t,e=new Z){let n=e,i=this.v0,s=this.v1,a=this.v2;return n.set(Ps(t,i.x,s.x,a.x),Ps(t,i.y,s.y,a.y)),n}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){let t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}},xa=class extends Qe{constructor(t=new w,e=new w,n=new w){super(),this.isQuadraticBezierCurve3=!0,this.type=\"QuadraticBezierCurve3\",this.v0=t,this.v1=e,this.v2=n}getPoint(t,e=new w){let n=e,i=this.v0,s=this.v1,a=this.v2;return n.set(Ps(t,i.x,s.x,a.x),Ps(t,i.y,s.y,a.y),Ps(t,i.z,s.z,a.z)),n}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){let t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}},va=class extends Qe{constructor(t=[]){super(),this.isSplineCurve=!0,this.type=\"SplineCurve\",this.points=t}getPoint(t,e=new Z){let n=e,i=this.points,s=(i.length-1)*t,a=Math.floor(s),o=s-a,c=i[a===0?a:a-1],l=i[a],h=i[a>i.length-2?i.length-1:a+1],u=i[a>i.length-3?i.length-1:a+2];return n.set(yu(o,c.x,l.x,h.x,u.x),yu(o,c.y,l.y,h.y,u.y)),n}copy(t){super.copy(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){let i=t.points[e];this.points.push(i.clone())}return this}toJSON(){let t=super.toJSON();t.points=[];for(let e=0,n=this.points.length;e<n;e++){let i=this.points[e];t.points.push(i.toArray())}return t}fromJSON(t){super.fromJSON(t),this.points=[];for(let e=0,n=t.points.length;e<n;e++){let i=t.points[e];this.points.push(new Z().fromArray(i))}return this}},ya=Object.freeze({__proto__:null,ArcCurve:sc,CatmullRomCurve3:rc,CubicBezierCurve:ma,CubicBezierCurve3:ac,EllipseCurve:ks,LineCurve:ga,LineCurve3:oc,QuadraticBezierCurve:_a,QuadraticBezierCurve3:xa,SplineCurve:va}),cc=class extends Qe{constructor(){super(),this.type=\"CurvePath\",this.curves=[],this.autoClose=!1}add(t){this.curves.push(t)}closePath(){let t=this.curves[0].getPoint(0),e=this.curves[this.curves.length-1].getPoint(1);if(!t.equals(e)){let n=t.isVector2===!0?\"LineCurve\":\"LineCurve3\";this.curves.push(new ya[n](e,t))}return this}getPoint(t,e){let n=t*this.getLength(),i=this.getCurveLengths(),s=0;for(;s<i.length;){if(i[s]>=n){let a=i[s]-n,o=this.curves[s],c=o.getLength(),l=c===0?0:1-a/c;return o.getPointAt(l,e)}s++}return null}getLength(){let t=this.getCurveLengths();return t[t.length-1]}updateArcLengths(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()}getCurveLengths(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;let t=[],e=0;for(let n=0,i=this.curves.length;n<i;n++)e+=this.curves[n].getLength(),t.push(e);return this.cacheLengths=t,t}getSpacedPoints(t=40){let e=[];for(let n=0;n<=t;n++)e.push(this.getPoint(n/t));return this.autoClose&&e.push(e[0]),e}getPoints(t=12){let e=[],n;for(let i=0,s=this.curves;i<s.length;i++){let a=s[i],o=a.isEllipseCurve?t*2:a.isLineCurve||a.isLineCurve3?1:a.isSplineCurve?t*a.points.length:t,c=a.getPoints(o);for(let l=0;l<c.length;l++){let h=c[l];n&&n.equals(h)||(e.push(h),n=h)}}return this.autoClose&&e.length>1&&!e[e.length-1].equals(e[0])&&e.push(e[0]),e}copy(t){super.copy(t),this.curves=[];for(let e=0,n=t.curves.length;e<n;e++){let i=t.curves[e];this.curves.push(i.clone())}return this.autoClose=t.autoClose,this}toJSON(){let t=super.toJSON();t.autoClose=this.autoClose,t.curves=[];for(let e=0,n=this.curves.length;e<n;e++){let i=this.curves[e];t.curves.push(i.toJSON())}return t}fromJSON(t){super.fromJSON(t),this.autoClose=t.autoClose,this.curves=[];for(let e=0,n=t.curves.length;e<n;e++){let i=t.curves[e];this.curves.push(new ya[i.type]().fromJSON(i))}return this}},os=class extends cc{constructor(t){super(),this.type=\"Path\",this.currentPoint=new Z,t&&this.setFromPoints(t)}setFromPoints(t){this.moveTo(t[0].x,t[0].y);for(let e=1,n=t.length;e<n;e++)this.lineTo(t[e].x,t[e].y);return this}moveTo(t,e){return this.currentPoint.set(t,e),this}lineTo(t,e){let n=new ga(this.currentPoint.clone(),new Z(t,e));return this.curves.push(n),this.currentPoint.set(t,e),this}quadraticCurveTo(t,e,n,i){let s=new _a(this.currentPoint.clone(),new Z(t,e),new Z(n,i));return this.curves.push(s),this.currentPoint.set(n,i),this}bezierCurveTo(t,e,n,i,s,a){let o=new ma(this.currentPoint.clone(),new Z(t,e),new Z(n,i),new Z(s,a));return this.curves.push(o),this.currentPoint.set(s,a),this}splineThru(t){let e=[this.currentPoint.clone()].concat(t),n=new va(e);return this.curves.push(n),this.currentPoint.copy(t[t.length-1]),this}arc(t,e,n,i,s,a){let o=this.currentPoint.x,c=this.currentPoint.y;return this.absarc(t+o,e+c,n,i,s,a),this}absarc(t,e,n,i,s,a){return this.absellipse(t,e,n,n,i,s,a),this}ellipse(t,e,n,i,s,a,o,c){let l=this.currentPoint.x,h=this.currentPoint.y;return this.absellipse(t+l,e+h,n,i,s,a,o,c),this}absellipse(t,e,n,i,s,a,o,c){let l=new ks(t,e,n,i,s,a,o,c);if(this.curves.length>0){let u=l.getPoint(0);u.equals(this.currentPoint)||this.lineTo(u.x,u.y)}this.curves.push(l);let h=l.getPoint(1);return this.currentPoint.copy(h),this}copy(t){return super.copy(t),this.currentPoint.copy(t.currentPoint),this}toJSON(){let t=super.toJSON();return t.currentPoint=this.currentPoint.toArray(),t}fromJSON(t){return super.fromJSON(t),this.currentPoint.fromArray(t.currentPoint),this}},Ma=class r extends Wt{constructor(t=[new Z(0,-.5),new Z(.5,0),new Z(0,.5)],e=12,n=0,i=Math.PI*2){super(),this.type=\"LatheGeometry\",this.parameters={points:t,segments:e,phiStart:n,phiLength:i},e=Math.floor(e),i=he(i,0,Math.PI*2);let s=[],a=[],o=[],c=[],l=[],h=1/e,u=new w,d=new Z,f=new w,m=new w,_=new w,g=0,p=0;for(let v=0;v<=t.length-1;v++)switch(v){case 0:g=t[v+1].x-t[v].x,p=t[v+1].y-t[v].y,f.x=p*1,f.y=-g,f.z=p*0,_.copy(f),f.normalize(),c.push(f.x,f.y,f.z);break;case t.length-1:c.push(_.x,_.y,_.z);break;default:g=t[v+1].x-t[v].x,p=t[v+1].y-t[v].y,f.x=p*1,f.y=-g,f.z=p*0,m.copy(f),f.x+=_.x,f.y+=_.y,f.z+=_.z,f.normalize(),c.push(f.x,f.y,f.z),_.copy(m)}for(let v=0;v<=e;v++){let x=n+v*h*i,y=Math.sin(x),C=Math.cos(x);for(let T=0;T<=t.length-1;T++){u.x=t[T].x*y,u.y=t[T].y,u.z=t[T].x*C,a.push(u.x,u.y,u.z),d.x=v/e,d.y=T/(t.length-1),o.push(d.x,d.y);let R=c[3*T+0]*y,U=c[3*T+1],S=c[3*T+0]*C;l.push(R,U,S)}}for(let v=0;v<e;v++)for(let x=0;x<t.length-1;x++){let y=x+v*t.length,C=y,T=y+t.length,R=y+t.length+1,U=y+1;s.push(C,T,U),s.push(R,U,T)}this.setIndex(s),this.setAttribute(\"position\",new xt(a,3)),this.setAttribute(\"uv\",new xt(o,2)),this.setAttribute(\"normal\",new xt(l,3))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new r(t.points,t.segments,t.phiStart,t.phiLength)}},lc=class r extends Ma{constructor(t=1,e=1,n=4,i=8){let s=new os;s.absarc(0,-e/2,t,Math.PI*1.5,0),s.absarc(0,e/2,t,0,Math.PI*.5),super(s.getPoints(n),i),this.type=\"CapsuleGeometry\",this.parameters={radius:t,length:e,capSegments:n,radialSegments:i}}static fromJSON(t){return new r(t.radius,t.length,t.capSegments,t.radialSegments)}},hc=class r extends Wt{constructor(t=1,e=32,n=0,i=Math.PI*2){super(),this.type=\"CircleGeometry\",this.parameters={radius:t,segments:e,thetaStart:n,thetaLength:i},e=Math.max(3,e);let s=[],a=[],o=[],c=[],l=new w,h=new Z;a.push(0,0,0),o.push(0,0,1),c.push(.5,.5);for(let u=0,d=3;u<=e;u++,d+=3){let f=n+u/e*i;l.x=t*Math.cos(f),l.y=t*Math.sin(f),a.push(l.x,l.y,l.z),o.push(0,0,1),h.x=(a[d]/t+1)/2,h.y=(a[d+1]/t+1)/2,c.push(h.x,h.y)}for(let u=1;u<=e;u++)s.push(u,u+1,0);this.setIndex(s),this.setAttribute(\"position\",new xt(a,3)),this.setAttribute(\"normal\",new xt(o,3)),this.setAttribute(\"uv\",new xt(c,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new r(t.radius,t.segments,t.thetaStart,t.thetaLength)}},Hs=class r extends Wt{constructor(t=1,e=1,n=1,i=32,s=1,a=!1,o=0,c=Math.PI*2){super(),this.type=\"CylinderGeometry\",this.parameters={radiusTop:t,radiusBottom:e,height:n,radialSegments:i,heightSegments:s,openEnded:a,thetaStart:o,thetaLength:c};let l=this;i=Math.floor(i),s=Math.floor(s);let h=[],u=[],d=[],f=[],m=0,_=[],g=n/2,p=0;v(),a===!1&&(t>0&&x(!0),e>0&&x(!1)),this.setIndex(h),this.setAttribute(\"position\",new xt(u,3)),this.setAttribute(\"normal\",new xt(d,3)),this.setAttribute(\"uv\",new xt(f,2));function v(){let y=new w,C=new w,T=0,R=(e-t)/n;for(let U=0;U<=s;U++){let S=[],E=U/s,N=E*(e-t)+t;for(let G=0;G<=i;G++){let it=G/i,I=it*c+o,F=Math.sin(I),k=Math.cos(I);C.x=N*F,C.y=-E*n+g,C.z=N*k,u.push(C.x,C.y,C.z),y.set(F,R,k).normalize(),d.push(y.x,y.y,y.z),f.push(it,1-E),S.push(m++)}_.push(S)}for(let U=0;U<i;U++)for(let S=0;S<s;S++){let E=_[S][U],N=_[S+1][U],G=_[S+1][U+1],it=_[S][U+1];h.push(E,N,it),h.push(N,G,it),T+=6}l.addGroup(p,T,0),p+=T}function x(y){let C=m,T=new Z,R=new w,U=0,S=y===!0?t:e,E=y===!0?1:-1;for(let G=1;G<=i;G++)u.push(0,g*E,0),d.push(0,E,0),f.push(.5,.5),m++;let N=m;for(let G=0;G<=i;G++){let I=G/i*c+o,F=Math.cos(I),k=Math.sin(I);R.x=S*k,R.y=g*E,R.z=S*F,u.push(R.x,R.y,R.z),d.push(0,E,0),T.x=F*.5+.5,T.y=k*.5*E+.5,f.push(T.x,T.y),m++}for(let G=0;G<i;G++){let it=C+G,I=N+G;y===!0?h.push(I,I+1,it):h.push(I+1,I,it),U+=3}l.addGroup(p,U,y===!0?1:2),p+=U}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new r(t.radiusTop,t.radiusBottom,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}},uc=class r extends Hs{constructor(t=1,e=1,n=32,i=1,s=!1,a=0,o=Math.PI*2){super(0,t,e,n,i,s,a,o),this.type=\"ConeGeometry\",this.parameters={radius:t,height:e,radialSegments:n,heightSegments:i,openEnded:s,thetaStart:a,thetaLength:o}}static fromJSON(t){return new r(t.radius,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}},vi=class r extends Wt{constructor(t=[],e=[],n=1,i=0){super(),this.type=\"PolyhedronGeometry\",this.parameters={vertices:t,indices:e,radius:n,detail:i};let s=[],a=[];o(i),l(n),h(),this.setAttribute(\"position\",new xt(s,3)),this.setAttribute(\"normal\",new xt(s.slice(),3)),this.setAttribute(\"uv\",new xt(a,2)),i===0?this.computeVertexNormals():this.normalizeNormals();function o(v){let x=new w,y=new w,C=new w;for(let T=0;T<e.length;T+=3)f(e[T+0],x),f(e[T+1],y),f(e[T+2],C),c(x,y,C,v)}function c(v,x,y,C){let T=C+1,R=[];for(let U=0;U<=T;U++){R[U]=[];let S=v.clone().lerp(y,U/T),E=x.clone().lerp(y,U/T),N=T-U;for(let G=0;G<=N;G++)G===0&&U===T?R[U][G]=S:R[U][G]=S.clone().lerp(E,G/N)}for(let U=0;U<T;U++)for(let S=0;S<2*(T-U)-1;S++){let E=Math.floor(S/2);S%2===0?(d(R[U][E+1]),d(R[U+1][E]),d(R[U][E])):(d(R[U][E+1]),d(R[U+1][E+1]),d(R[U+1][E]))}}function l(v){let x=new w;for(let y=0;y<s.length;y+=3)x.x=s[y+0],x.y=s[y+1],x.z=s[y+2],x.normalize().multiplyScalar(v),s[y+0]=x.x,s[y+1]=x.y,s[y+2]=x.z}function h(){let v=new w;for(let x=0;x<s.length;x+=3){v.x=s[x+0],v.y=s[x+1],v.z=s[x+2];let y=g(v)/2/Math.PI+.5,C=p(v)/Math.PI+.5;a.push(y,1-C)}m(),u()}function u(){for(let v=0;v<a.length;v+=6){let x=a[v+0],y=a[v+2],C=a[v+4],T=Math.max(x,y,C),R=Math.min(x,y,C);T>.9&&R<.1&&(x<.2&&(a[v+0]+=1),y<.2&&(a[v+2]+=1),C<.2&&(a[v+4]+=1))}}function d(v){s.push(v.x,v.y,v.z)}function f(v,x){let y=v*3;x.x=t[y+0],x.y=t[y+1],x.z=t[y+2]}function m(){let v=new w,x=new w,y=new w,C=new w,T=new Z,R=new Z,U=new Z;for(let S=0,E=0;S<s.length;S+=9,E+=6){v.set(s[S+0],s[S+1],s[S+2]),x.set(s[S+3],s[S+4],s[S+5]),y.set(s[S+6],s[S+7],s[S+8]),T.set(a[E+0],a[E+1]),R.set(a[E+2],a[E+3]),U.set(a[E+4],a[E+5]),C.copy(v).add(x).add(y).divideScalar(3);let N=g(C);_(T,E+0,v,N),_(R,E+2,x,N),_(U,E+4,y,N)}}function _(v,x,y,C){C<0&&v.x===1&&(a[x]=v.x-1),y.x===0&&y.z===0&&(a[x]=C/2/Math.PI+.5)}function g(v){return Math.atan2(v.z,-v.x)}function p(v){return Math.atan2(-v.y,Math.sqrt(v.x*v.x+v.z*v.z))}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new r(t.vertices,t.indices,t.radius,t.details)}},dc=class r extends vi{constructor(t=1,e=0){let n=(1+Math.sqrt(5))/2,i=1/n,s=[-1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,0,-i,-n,0,-i,n,0,i,-n,0,i,n,-i,-n,0,-i,n,0,i,-n,0,i,n,0,-n,0,-i,n,0,-i,-n,0,i,n,0,i],a=[3,11,7,3,7,15,3,15,13,7,19,17,7,17,6,7,6,15,17,4,8,17,8,10,17,10,6,8,0,16,8,16,2,8,2,10,0,12,1,0,1,18,0,18,16,6,10,2,6,2,13,6,13,15,2,16,18,2,18,3,2,3,13,18,1,9,18,9,11,18,11,3,4,14,12,4,12,0,4,0,8,11,9,5,11,5,19,11,19,7,19,5,14,19,14,4,19,4,17,1,12,14,1,14,5,1,5,9];super(s,a,t,e),this.type=\"DodecahedronGeometry\",this.parameters={radius:t,detail:e}}static fromJSON(t){return new r(t.radius,t.detail)}},Pr=new w,Lr=new w,So=new w,Ir=new Fn,fc=class extends Wt{constructor(t=null,e=1){if(super(),this.type=\"EdgesGeometry\",this.parameters={geometry:t,thresholdAngle:e},t!==null){let i=Math.pow(10,4),s=Math.cos(pi*e),a=t.getIndex(),o=t.getAttribute(\"position\"),c=a?a.count:o.count,l=[0,0,0],h=[\"a\",\"b\",\"c\"],u=new Array(3),d={},f=[];for(let m=0;m<c;m+=3){a?(l[0]=a.getX(m),l[1]=a.getX(m+1),l[2]=a.getX(m+2)):(l[0]=m,l[1]=m+1,l[2]=m+2);let{a:_,b:g,c:p}=Ir;if(_.fromBufferAttribute(o,l[0]),g.fromBufferAttribute(o,l[1]),p.fromBufferAttribute(o,l[2]),Ir.getNormal(So),u[0]=`${Math.round(_.x*i)},${Math.round(_.y*i)},${Math.round(_.z*i)}`,u[1]=`${Math.round(g.x*i)},${Math.round(g.y*i)},${Math.round(g.z*i)}`,u[2]=`${Math.round(p.x*i)},${Math.round(p.y*i)},${Math.round(p.z*i)}`,!(u[0]===u[1]||u[1]===u[2]||u[2]===u[0]))for(let v=0;v<3;v++){let x=(v+1)%3,y=u[v],C=u[x],T=Ir[h[v]],R=Ir[h[x]],U=`${y}_${C}`,S=`${C}_${y}`;S in d&&d[S]?(So.dot(d[S].normal)<=s&&(f.push(T.x,T.y,T.z),f.push(R.x,R.y,R.z)),d[S]=null):U in d||(d[U]={index0:l[v],index1:l[x],normal:So.clone()})}}for(let m in d)if(d[m]){let{index0:_,index1:g}=d[m];Pr.fromBufferAttribute(o,_),Lr.fromBufferAttribute(o,g),f.push(Pr.x,Pr.y,Pr.z),f.push(Lr.x,Lr.y,Lr.z)}this.setAttribute(\"position\",new xt(f,3))}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}},Gn=class extends os{constructor(t){super(t),this.uuid=Ye(),this.type=\"Shape\",this.holes=[]}getPointsHoles(t){let e=[];for(let n=0,i=this.holes.length;n<i;n++)e[n]=this.holes[n].getPoints(t);return e}extractPoints(t){return{shape:this.getPoints(t),holes:this.getPointsHoles(t)}}copy(t){super.copy(t),this.holes=[];for(let e=0,n=t.holes.length;e<n;e++){let i=t.holes[e];this.holes.push(i.clone())}return this}toJSON(){let t=super.toJSON();t.uuid=this.uuid,t.holes=[];for(let e=0,n=this.holes.length;e<n;e++){let i=this.holes[e];t.holes.push(i.toJSON())}return t}fromJSON(t){super.fromJSON(t),this.uuid=t.uuid,this.holes=[];for(let e=0,n=t.holes.length;e<n;e++){let i=t.holes[e];this.holes.push(new os().fromJSON(i))}return this}},Ix={triangulate:function(r,t,e=2){let n=t&&t.length,i=n?t[0]*e:r.length,s=$d(r,0,i,e,!0),a=[];if(!s||s.next===s.prev)return a;let o,c,l,h,u,d,f;if(n&&(s=Fx(r,t,s,e)),r.length>80*e){o=l=r[0],c=h=r[1];for(let m=e;m<i;m+=e)u=r[m],d=r[m+1],u<o&&(o=u),d<c&&(c=d),u>l&&(l=u),d>h&&(h=d);f=Math.max(l-o,h-c),f=f!==0?32767/f:0}return Gs(s,a,e,o,c,f,0),a}};function $d(r,t,e,n,i){let s,a;if(i===Zx(r,t,e,n)>0)for(s=t;s<e;s+=n)a=Mu(s,r[s],r[s+1],a);else for(s=e-n;s>=t;s-=n)a=Mu(s,r[s],r[s+1],a);return a&&Ua(a,a.next)&&(Xs(a),a=a.next),a}function yi(r,t){if(!r)return r;t||(t=r);let e=r,n;do if(n=!1,!e.steiner&&(Ua(e,e.next)||ae(e.prev,e,e.next)===0)){if(Xs(e),e=t=e.prev,e===e.next)break;n=!0}else e=e.next;while(n||e!==t);return t}function Gs(r,t,e,n,i,s,a){if(!r)return;!a&&s&&Hx(r,n,i,s);let o=r,c,l;for(;r.prev!==r.next;){if(c=r.prev,l=r.next,s?Dx(r,n,i,s):Ux(r)){t.push(c.i/e|0),t.push(r.i/e|0),t.push(l.i/e|0),Xs(r),r=l.next,o=l.next;continue}if(r=l,r===o){a?a===1?(r=Nx(yi(r),t,e),Gs(r,t,e,n,i,s,2)):a===2&&Ox(r,t,e,n,i,s):Gs(yi(r),t,e,n,i,s,1);break}}}function Ux(r){let t=r.prev,e=r,n=r.next;if(ae(t,e,n)>=0)return!1;let i=t.x,s=e.x,a=n.x,o=t.y,c=e.y,l=n.y,h=i<s?i<a?i:a:s<a?s:a,u=o<c?o<l?o:l:c<l?c:l,d=i>s?i>a?i:a:s>a?s:a,f=o>c?o>l?o:l:c>l?c:l,m=n.next;for(;m!==t;){if(m.x>=h&&m.x<=d&&m.y>=u&&m.y<=f&&$i(i,o,s,c,a,l,m.x,m.y)&&ae(m.prev,m,m.next)>=0)return!1;m=m.next}return!0}function Dx(r,t,e,n){let i=r.prev,s=r,a=r.next;if(ae(i,s,a)>=0)return!1;let o=i.x,c=s.x,l=a.x,h=i.y,u=s.y,d=a.y,f=o<c?o<l?o:l:c<l?c:l,m=h<u?h<d?h:d:u<d?u:d,_=o>c?o>l?o:l:c>l?c:l,g=h>u?h>d?h:d:u>d?u:d,p=pc(f,m,t,e,n),v=pc(_,g,t,e,n),x=r.prevZ,y=r.nextZ;for(;x&&x.z>=p&&y&&y.z<=v;){if(x.x>=f&&x.x<=_&&x.y>=m&&x.y<=g&&x!==i&&x!==a&&$i(o,h,c,u,l,d,x.x,x.y)&&ae(x.prev,x,x.next)>=0||(x=x.prevZ,y.x>=f&&y.x<=_&&y.y>=m&&y.y<=g&&y!==i&&y!==a&&$i(o,h,c,u,l,d,y.x,y.y)&&ae(y.prev,y,y.next)>=0))return!1;y=y.nextZ}for(;x&&x.z>=p;){if(x.x>=f&&x.x<=_&&x.y>=m&&x.y<=g&&x!==i&&x!==a&&$i(o,h,c,u,l,d,x.x,x.y)&&ae(x.prev,x,x.next)>=0)return!1;x=x.prevZ}for(;y&&y.z<=v;){if(y.x>=f&&y.x<=_&&y.y>=m&&y.y<=g&&y!==i&&y!==a&&$i(o,h,c,u,l,d,y.x,y.y)&&ae(y.prev,y,y.next)>=0)return!1;y=y.nextZ}return!0}function Nx(r,t,e){let n=r;do{let i=n.prev,s=n.next.next;!Ua(i,s)&&Kd(i,n,n.next,s)&&Ws(i,s)&&Ws(s,i)&&(t.push(i.i/e|0),t.push(n.i/e|0),t.push(s.i/e|0),Xs(n),Xs(n.next),n=r=s),n=n.next}while(n!==r);return yi(n)}function Ox(r,t,e,n,i,s){let a=r;do{let o=a.next.next;for(;o!==a.prev;){if(a.i!==o.i&&Xx(a,o)){let c=Qd(a,o);a=yi(a,a.next),c=yi(c,c.next),Gs(a,t,e,n,i,s,0),Gs(c,t,e,n,i,s,0);return}o=o.next}a=a.next}while(a!==r)}function Fx(r,t,e,n){let i=[],s,a,o,c,l;for(s=0,a=t.length;s<a;s++)o=t[s]*n,c=s<a-1?t[s+1]*n:r.length,l=$d(r,o,c,n,!1),l===l.next&&(l.steiner=!0),i.push(Wx(l));for(i.sort(Bx),s=0;s<i.length;s++)e=zx(i[s],e);return e}function Bx(r,t){return r.x-t.x}function zx(r,t){let e=Vx(r,t);if(!e)return t;let n=Qd(e,r);return yi(n,n.next),yi(e,e.next)}function Vx(r,t){let e=t,n=-1/0,i,s=r.x,a=r.y;do{if(a<=e.y&&a>=e.next.y&&e.next.y!==e.y){let d=e.x+(a-e.y)*(e.next.x-e.x)/(e.next.y-e.y);if(d<=s&&d>n&&(n=d,i=e.x<e.next.x?e:e.next,d===s))return i}e=e.next}while(e!==t);if(!i)return null;let o=i,c=i.x,l=i.y,h=1/0,u;e=i;do s>=e.x&&e.x>=c&&s!==e.x&&$i(a<l?s:n,a,c,l,a<l?n:s,a,e.x,e.y)&&(u=Math.abs(a-e.y)/(s-e.x),Ws(e,r)&&(u<h||u===h&&(e.x>i.x||e.x===i.x&&kx(i,e)))&&(i=e,h=u)),e=e.next;while(e!==o);return i}function kx(r,t){return ae(r.prev,r,t.prev)<0&&ae(t.next,r,r.next)<0}function Hx(r,t,e,n){let i=r;do i.z===0&&(i.z=pc(i.x,i.y,t,e,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==r);i.prevZ.nextZ=null,i.prevZ=null,Gx(i)}function Gx(r){let t,e,n,i,s,a,o,c,l=1;do{for(e=r,r=null,s=null,a=0;e;){for(a++,n=e,o=0,t=0;t<l&&(o++,n=n.nextZ,!!n);t++);for(c=l;o>0||c>0&&n;)o!==0&&(c===0||!n||e.z<=n.z)?(i=e,e=e.nextZ,o--):(i=n,n=n.nextZ,c--),s?s.nextZ=i:r=i,i.prevZ=s,s=i;e=n}s.nextZ=null,l*=2}while(a>1);return r}function pc(r,t,e,n,i){return r=(r-e)*i|0,t=(t-n)*i|0,r=(r|r<<8)&16711935,r=(r|r<<4)&252645135,r=(r|r<<2)&858993459,r=(r|r<<1)&1431655765,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,r|t<<1}function Wx(r){let t=r,e=r;do(t.x<e.x||t.x===e.x&&t.y<e.y)&&(e=t),t=t.next;while(t!==r);return e}function $i(r,t,e,n,i,s,a,o){return(i-a)*(t-o)>=(r-a)*(s-o)&&(r-a)*(n-o)>=(e-a)*(t-o)&&(e-a)*(s-o)>=(i-a)*(n-o)}function Xx(r,t){return r.next.i!==t.i&&r.prev.i!==t.i&&!qx(r,t)&&(Ws(r,t)&&Ws(t,r)&&Yx(r,t)&&(ae(r.prev,r,t.prev)||ae(r,t.prev,t))||Ua(r,t)&&ae(r.prev,r,r.next)>0&&ae(t.prev,t,t.next)>0)}function ae(r,t,e){return(t.y-r.y)*(e.x-t.x)-(t.x-r.x)*(e.y-t.y)}function Ua(r,t){return r.x===t.x&&r.y===t.y}function Kd(r,t,e,n){let i=Dr(ae(r,t,e)),s=Dr(ae(r,t,n)),a=Dr(ae(e,n,r)),o=Dr(ae(e,n,t));return!!(i!==s&&a!==o||i===0&&Ur(r,e,t)||s===0&&Ur(r,n,t)||a===0&&Ur(e,r,n)||o===0&&Ur(e,t,n))}function Ur(r,t,e){return t.x<=Math.max(r.x,e.x)&&t.x>=Math.min(r.x,e.x)&&t.y<=Math.max(r.y,e.y)&&t.y>=Math.min(r.y,e.y)}function Dr(r){return r>0?1:r<0?-1:0}function qx(r,t){let e=r;do{if(e.i!==r.i&&e.next.i!==r.i&&e.i!==t.i&&e.next.i!==t.i&&Kd(e,e.next,r,t))return!0;e=e.next}while(e!==r);return!1}function Ws(r,t){return ae(r.prev,r,r.next)<0?ae(r,t,r.next)>=0&&ae(r,r.prev,t)>=0:ae(r,t,r.prev)<0||ae(r,r.next,t)<0}function Yx(r,t){let e=r,n=!1,i=(r.x+t.x)/2,s=(r.y+t.y)/2;do e.y>s!=e.next.y>s&&e.next.y!==e.y&&i<(e.next.x-e.x)*(s-e.y)/(e.next.y-e.y)+e.x&&(n=!n),e=e.next;while(e!==r);return n}function Qd(r,t){let e=new mc(r.i,r.x,r.y),n=new mc(t.i,t.x,t.y),i=r.next,s=t.prev;return r.next=t,t.prev=r,e.next=i,i.prev=e,n.next=e,e.prev=n,s.next=n,n.prev=s,n}function Mu(r,t,e,n){let i=new mc(r,t,e);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function Xs(r){r.next.prev=r.prev,r.prev.next=r.next,r.prevZ&&(r.prevZ.nextZ=r.nextZ),r.nextZ&&(r.nextZ.prevZ=r.prevZ)}function mc(r,t,e){this.i=r,this.x=t,this.y=e,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}function Zx(r,t,e,n){let i=0;for(let s=t,a=e-n;s<e;s+=n)i+=(r[a]-r[s])*(r[s+1]+r[a+1]),a=s;return i}var bn=class r{static area(t){let e=t.length,n=0;for(let i=e-1,s=0;s<e;i=s++)n+=t[i].x*t[s].y-t[s].x*t[i].y;return n*.5}static isClockWise(t){return r.area(t)<0}static triangulateShape(t,e){let n=[],i=[],s=[];Su(t),bu(n,t);let a=t.length;e.forEach(Su);for(let c=0;c<e.length;c++)i.push(a),a+=e[c].length,bu(n,e[c]);let o=Ix.triangulate(n,i);for(let c=0;c<o.length;c+=3)s.push(o.slice(c,c+3));return s}};function Su(r){let t=r.length;t>2&&r[t-1].equals(r[0])&&r.pop()}function bu(r,t){for(let e=0;e<t.length;e++)r.push(t[e].x),r.push(t[e].y)}var gc=class r extends Wt{constructor(t=new Gn([new Z(.5,.5),new Z(-.5,.5),new Z(-.5,-.5),new Z(.5,-.5)]),e={}){super(),this.type=\"ExtrudeGeometry\",this.parameters={shapes:t,options:e},t=Array.isArray(t)?t:[t];let n=this,i=[],s=[];for(let o=0,c=t.length;o<c;o++){let l=t[o];a(l)}this.setAttribute(\"position\",new xt(i,3)),this.setAttribute(\"uv\",new xt(s,2)),this.computeVertexNormals();function a(o){let c=[],l=e.curveSegments!==void 0?e.curveSegments:12,h=e.steps!==void 0?e.steps:1,u=e.depth!==void 0?e.depth:1,d=e.bevelEnabled!==void 0?e.bevelEnabled:!0,f=e.bevelThickness!==void 0?e.bevelThickness:.2,m=e.bevelSize!==void 0?e.bevelSize:f-.1,_=e.bevelOffset!==void 0?e.bevelOffset:0,g=e.bevelSegments!==void 0?e.bevelSegments:3,p=e.extrudePath,v=e.UVGenerator!==void 0?e.UVGenerator:Jx,x,y=!1,C,T,R,U;p&&(x=p.getSpacedPoints(h),y=!0,d=!1,C=p.computeFrenetFrames(h,!1),T=new w,R=new w,U=new w),d||(g=0,f=0,m=0,_=0);let S=o.extractPoints(l),E=S.shape,N=S.holes;if(!bn.isClockWise(E)){E=E.reverse();for(let P=0,rt=N.length;P<rt;P++){let q=N[P];bn.isClockWise(q)&&(N[P]=q.reverse())}}let it=bn.triangulateShape(E,N),I=E;for(let P=0,rt=N.length;P<rt;P++){let q=N[P];E=E.concat(q)}function F(P,rt,q){return rt||console.error(\"THREE.ExtrudeGeometry: vec does not exist\"),P.clone().addScaledVector(rt,q)}let k=E.length,J=it.length;function Y(P,rt,q){let st,X,Et,ft=P.x-rt.x,b=P.y-rt.y,M=q.x-P.x,O=q.y-P.y,nt=ft*ft+b*b,Q=ft*O-b*M;if(Math.abs(Q)>Number.EPSILON){let $=Math.sqrt(nt),yt=Math.sqrt(M*M+O*O),ct=rt.x-b/$,_t=rt.y+ft/$,Tt=q.x-O/yt,Ft=q.y+M/yt,j=((Tt-ct)*O-(Ft-_t)*M)/(ft*O-b*M);st=ct+ft*j-P.x,X=_t+b*j-P.y;let Zt=st*st+X*X;if(Zt<=2)return new Z(st,X);Et=Math.sqrt(Zt/2)}else{let $=!1;ft>Number.EPSILON?M>Number.EPSILON&&($=!0):ft<-Number.EPSILON?M<-Number.EPSILON&&($=!0):Math.sign(b)===Math.sign(O)&&($=!0),$?(st=-b,X=ft,Et=Math.sqrt(nt)):(st=ft,X=b,Et=Math.sqrt(nt/2))}return new Z(st/Et,X/Et)}let W=[];for(let P=0,rt=I.length,q=rt-1,st=P+1;P<rt;P++,q++,st++)q===rt&&(q=0),st===rt&&(st=0),W[P]=Y(I[P],I[q],I[st]);let tt=[],et,ut=W.concat();for(let P=0,rt=N.length;P<rt;P++){let q=N[P];et=[];for(let st=0,X=q.length,Et=X-1,ft=st+1;st<X;st++,Et++,ft++)Et===X&&(Et=0),ft===X&&(ft=0),et[st]=Y(q[st],q[Et],q[ft]);tt.push(et),ut=ut.concat(et)}for(let P=0;P<g;P++){let rt=P/g,q=f*Math.cos(rt*Math.PI/2),st=m*Math.sin(rt*Math.PI/2)+_;for(let X=0,Et=I.length;X<Et;X++){let ft=F(I[X],W[X],st);gt(ft.x,ft.y,-q)}for(let X=0,Et=N.length;X<Et;X++){let ft=N[X];et=tt[X];for(let b=0,M=ft.length;b<M;b++){let O=F(ft[b],et[b],st);gt(O.x,O.y,-q)}}}let H=m+_;for(let P=0;P<k;P++){let rt=d?F(E[P],ut[P],H):E[P];y?(R.copy(C.normals[0]).multiplyScalar(rt.x),T.copy(C.binormals[0]).multiplyScalar(rt.y),U.copy(x[0]).add(R).add(T),gt(U.x,U.y,U.z)):gt(rt.x,rt.y,0)}for(let P=1;P<=h;P++)for(let rt=0;rt<k;rt++){let q=d?F(E[rt],ut[rt],H):E[rt];y?(R.copy(C.normals[P]).multiplyScalar(q.x),T.copy(C.binormals[P]).multiplyScalar(q.y),U.copy(x[P]).add(R).add(T),gt(U.x,U.y,U.z)):gt(q.x,q.y,u/h*P)}for(let P=g-1;P>=0;P--){let rt=P/g,q=f*Math.cos(rt*Math.PI/2),st=m*Math.sin(rt*Math.PI/2)+_;for(let X=0,Et=I.length;X<Et;X++){let ft=F(I[X],W[X],st);gt(ft.x,ft.y,u+q)}for(let X=0,Et=N.length;X<Et;X++){let ft=N[X];et=tt[X];for(let b=0,M=ft.length;b<M;b++){let O=F(ft[b],et[b],st);y?gt(O.x,O.y+x[h-1].y,x[h-1].x+q):gt(O.x,O.y,u+q)}}}K(),dt();function K(){let P=i.length/3;if(d){let rt=0,q=k*rt;for(let st=0;st<J;st++){let X=it[st];Ct(X[2]+q,X[1]+q,X[0]+q)}rt=h+g*2,q=k*rt;for(let st=0;st<J;st++){let X=it[st];Ct(X[0]+q,X[1]+q,X[2]+q)}}else{for(let rt=0;rt<J;rt++){let q=it[rt];Ct(q[2],q[1],q[0])}for(let rt=0;rt<J;rt++){let q=it[rt];Ct(q[0]+k*h,q[1]+k*h,q[2]+k*h)}}n.addGroup(P,i.length/3-P,0)}function dt(){let P=i.length/3,rt=0;Mt(I,rt),rt+=I.length;for(let q=0,st=N.length;q<st;q++){let X=N[q];Mt(X,rt),rt+=X.length}n.addGroup(P,i.length/3-P,1)}function Mt(P,rt){let q=P.length;for(;--q>=0;){let st=q,X=q-1;X<0&&(X=P.length-1);for(let Et=0,ft=h+g*2;Et<ft;Et++){let b=k*Et,M=k*(Et+1),O=rt+st+b,nt=rt+X+b,Q=rt+X+M,$=rt+st+M;Nt(O,nt,Q,$)}}}function gt(P,rt,q){c.push(P),c.push(rt),c.push(q)}function Ct(P,rt,q){St(P),St(rt),St(q);let st=i.length/3,X=v.generateTopUV(n,i,st-3,st-2,st-1);Ut(X[0]),Ut(X[1]),Ut(X[2])}function Nt(P,rt,q,st){St(P),St(rt),St(st),St(rt),St(q),St(st);let X=i.length/3,Et=v.generateSideWallUV(n,i,X-6,X-3,X-2,X-1);Ut(Et[0]),Ut(Et[1]),Ut(Et[3]),Ut(Et[1]),Ut(Et[2]),Ut(Et[3])}function St(P){i.push(c[P*3+0]),i.push(c[P*3+1]),i.push(c[P*3+2])}function Ut(P){s.push(P.x),s.push(P.y)}}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}toJSON(){let t=super.toJSON(),e=this.parameters.shapes,n=this.parameters.options;return $x(e,n,t)}static fromJSON(t,e){let n=[];for(let s=0,a=t.shapes.length;s<a;s++){let o=e[t.shapes[s]];n.push(o)}let i=t.options.extrudePath;return i!==void 0&&(t.options.extrudePath=new ya[i.type]().fromJSON(i)),new r(n,t.options)}},Jx={generateTopUV:function(r,t,e,n,i){let s=t[e*3],a=t[e*3+1],o=t[n*3],c=t[n*3+1],l=t[i*3],h=t[i*3+1];return[new Z(s,a),new Z(o,c),new Z(l,h)]},generateSideWallUV:function(r,t,e,n,i,s){let a=t[e*3],o=t[e*3+1],c=t[e*3+2],l=t[n*3],h=t[n*3+1],u=t[n*3+2],d=t[i*3],f=t[i*3+1],m=t[i*3+2],_=t[s*3],g=t[s*3+1],p=t[s*3+2];return Math.abs(o-h)<Math.abs(a-l)?[new Z(a,1-c),new Z(l,1-u),new Z(d,1-m),new Z(_,1-p)]:[new Z(o,1-c),new Z(h,1-u),new Z(f,1-m),new Z(g,1-p)]}};function $x(r,t,e){if(e.shapes=[],Array.isArray(r))for(let n=0,i=r.length;n<i;n++){let s=r[n];e.shapes.push(s.uuid)}else e.shapes.push(r.uuid);return e.options=Object.assign({},t),t.extrudePath!==void 0&&(e.options.extrudePath=t.extrudePath.toJSON()),e}var _c=class r extends vi{constructor(t=1,e=0){let n=(1+Math.sqrt(5))/2,i=[-1,n,0,1,n,0,-1,-n,0,1,-n,0,0,-1,n,0,1,n,0,-1,-n,0,1,-n,n,0,-1,n,0,1,-n,0,-1,-n,0,1],s=[0,11,5,0,5,1,0,1,7,0,7,10,0,10,11,1,5,9,5,11,4,11,10,2,10,7,6,7,1,8,3,9,4,3,4,2,3,2,6,3,6,8,3,8,9,4,9,5,2,4,11,6,2,10,8,6,7,9,8,1];super(i,s,t,e),this.type=\"IcosahedronGeometry\",this.parameters={radius:t,detail:e}}static fromJSON(t){return new r(t.radius,t.detail)}},Sa=class r extends vi{constructor(t=1,e=0){let n=[1,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1],i=[0,2,4,0,4,3,0,3,5,0,5,2,1,2,5,1,5,3,1,3,4,1,4,2];super(n,i,t,e),this.type=\"OctahedronGeometry\",this.parameters={radius:t,detail:e}}static fromJSON(t){return new r(t.radius,t.detail)}},xc=class r extends Wt{constructor(t=.5,e=1,n=32,i=1,s=0,a=Math.PI*2){super(),this.type=\"RingGeometry\",this.parameters={innerRadius:t,outerRadius:e,thetaSegments:n,phiSegments:i,thetaStart:s,thetaLength:a},n=Math.max(3,n),i=Math.max(1,i);let o=[],c=[],l=[],h=[],u=t,d=(e-t)/i,f=new w,m=new Z;for(let _=0;_<=i;_++){for(let g=0;g<=n;g++){let p=s+g/n*a;f.x=u*Math.cos(p),f.y=u*Math.sin(p),c.push(f.x,f.y,f.z),l.push(0,0,1),m.x=(f.x/e+1)/2,m.y=(f.y/e+1)/2,h.push(m.x,m.y)}u+=d}for(let _=0;_<i;_++){let g=_*(n+1);for(let p=0;p<n;p++){let v=p+g,x=v,y=v+n+1,C=v+n+2,T=v+1;o.push(x,y,T),o.push(y,C,T)}}this.setIndex(o),this.setAttribute(\"position\",new xt(c,3)),this.setAttribute(\"normal\",new xt(l,3)),this.setAttribute(\"uv\",new xt(h,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new r(t.innerRadius,t.outerRadius,t.thetaSegments,t.phiSegments,t.thetaStart,t.thetaLength)}},vc=class r extends Wt{constructor(t=new Gn([new Z(0,.5),new Z(-.5,-.5),new Z(.5,-.5)]),e=12){super(),this.type=\"ShapeGeometry\",this.parameters={shapes:t,curveSegments:e};let n=[],i=[],s=[],a=[],o=0,c=0;if(Array.isArray(t)===!1)l(t);else for(let h=0;h<t.length;h++)l(t[h]),this.addGroup(o,c,h),o+=c,c=0;this.setIndex(n),this.setAttribute(\"position\",new xt(i,3)),this.setAttribute(\"normal\",new xt(s,3)),this.setAttribute(\"uv\",new xt(a,2));function l(h){let u=i.length/3,d=h.extractPoints(e),f=d.shape,m=d.holes;bn.isClockWise(f)===!1&&(f=f.reverse());for(let g=0,p=m.length;g<p;g++){let v=m[g];bn.isClockWise(v)===!0&&(m[g]=v.reverse())}let _=bn.triangulateShape(f,m);for(let g=0,p=m.length;g<p;g++){let v=m[g];f=f.concat(v)}for(let g=0,p=f.length;g<p;g++){let v=f[g];i.push(v.x,v.y,0),s.push(0,0,1),a.push(v.x,v.y)}for(let g=0,p=_.length;g<p;g++){let v=_[g],x=v[0]+u,y=v[1]+u,C=v[2]+u;n.push(x,y,C),c+=3}}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}toJSON(){let t=super.toJSON(),e=this.parameters.shapes;return Kx(e,t)}static fromJSON(t,e){let n=[];for(let i=0,s=t.shapes.length;i<s;i++){let a=e[t.shapes[i]];n.push(a)}return new r(n,t.curveSegments)}};function Kx(r,t){if(t.shapes=[],Array.isArray(r))for(let e=0,n=r.length;e<n;e++){let i=r[e];t.shapes.push(i.uuid)}else t.shapes.push(r.uuid);return t}var ba=class r extends Wt{constructor(t=1,e=32,n=16,i=0,s=Math.PI*2,a=0,o=Math.PI){super(),this.type=\"SphereGeometry\",this.parameters={radius:t,widthSegments:e,heightSegments:n,phiStart:i,phiLength:s,thetaStart:a,thetaLength:o},e=Math.max(3,Math.floor(e)),n=Math.max(2,Math.floor(n));let c=Math.min(a+o,Math.PI),l=0,h=[],u=new w,d=new w,f=[],m=[],_=[],g=[];for(let p=0;p<=n;p++){let v=[],x=p/n,y=0;p===0&&a===0?y=.5/e:p===n&&c===Math.PI&&(y=-.5/e);for(let C=0;C<=e;C++){let T=C/e;u.x=-t*Math.cos(i+T*s)*Math.sin(a+x*o),u.y=t*Math.cos(a+x*o),u.z=t*Math.sin(i+T*s)*Math.sin(a+x*o),m.push(u.x,u.y,u.z),d.copy(u).normalize(),_.push(d.x,d.y,d.z),g.push(T+y,1-x),v.push(l++)}h.push(v)}for(let p=0;p<n;p++)for(let v=0;v<e;v++){let x=h[p][v+1],y=h[p][v],C=h[p+1][v],T=h[p+1][v+1];(p!==0||a>0)&&f.push(x,y,T),(p!==n-1||c<Math.PI)&&f.push(y,C,T)}this.setIndex(f),this.setAttribute(\"position\",new xt(m,3)),this.setAttribute(\"normal\",new xt(_,3)),this.setAttribute(\"uv\",new xt(g,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new r(t.radius,t.widthSegments,t.heightSegments,t.phiStart,t.phiLength,t.thetaStart,t.thetaLength)}},yc=class r extends vi{constructor(t=1,e=0){let n=[1,1,1,-1,-1,1,-1,1,-1,1,-1,-1],i=[2,1,0,0,3,2,1,3,0,2,3,1];super(n,i,t,e),this.type=\"TetrahedronGeometry\",this.parameters={radius:t,detail:e}}static fromJSON(t){return new r(t.radius,t.detail)}},Mc=class r extends Wt{constructor(t=1,e=.4,n=12,i=48,s=Math.PI*2){super(),this.type=\"TorusGeometry\",this.parameters={radius:t,tube:e,radialSegments:n,tubularSegments:i,arc:s},n=Math.floor(n),i=Math.floor(i);let a=[],o=[],c=[],l=[],h=new w,u=new w,d=new w;for(let f=0;f<=n;f++)for(let m=0;m<=i;m++){let _=m/i*s,g=f/n*Math.PI*2;u.x=(t+e*Math.cos(g))*Math.cos(_),u.y=(t+e*Math.cos(g))*Math.sin(_),u.z=e*Math.sin(g),o.push(u.x,u.y,u.z),h.x=t*Math.cos(_),h.y=t*Math.sin(_),d.subVectors(u,h).normalize(),c.push(d.x,d.y,d.z),l.push(m/i),l.push(f/n)}for(let f=1;f<=n;f++)for(let m=1;m<=i;m++){let _=(i+1)*f+m-1,g=(i+1)*(f-1)+m-1,p=(i+1)*(f-1)+m,v=(i+1)*f+m;a.push(_,g,v),a.push(g,p,v)}this.setIndex(a),this.setAttribute(\"position\",new xt(o,3)),this.setAttribute(\"normal\",new xt(c,3)),this.setAttribute(\"uv\",new xt(l,2))}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new r(t.radius,t.tube,t.radialSegments,t.tubularSegments,t.arc)}},Sc=class r extends Wt{constructor(t=1,e=.4,n=64,i=8,s=2,a=3){super(),this.type=\"TorusKnotGeometry\",this.parameters={radius:t,tube:e,tubularSegments:n,radialSegments:i,p:s,q:a},n=Math.floor(n),i=Math.floor(i);let o=[],c=[],l=[],h=[],u=new w,d=new w,f=new w,m=new w,_=new w,g=new w,p=new w;for(let x=0;x<=n;++x){let y=x/n*s*Math.PI*2;v(y,s,a,t,f),v(y+.01,s,a,t,m),g.subVectors(m,f),p.addVectors(m,f),_.crossVectors(g,p),p.crossVectors(_,g),_.normalize(),p.normalize();for(let C=0;C<=i;++C){let T=C/i*Math.PI*2,R=-e*Math.cos(T),U=e*Math.sin(T);u.x=f.x+(R*p.x+U*_.x),u.y=f.y+(R*p.y+U*_.y),u.z=f.z+(R*p.z+U*_.z),c.push(u.x,u.y,u.z),d.subVectors(u,f).normalize(),l.push(d.x,d.y,d.z),h.push(x/n),h.push(C/i)}}for(let x=1;x<=n;x++)for(let y=1;y<=i;y++){let C=(i+1)*(x-1)+(y-1),T=(i+1)*x+(y-1),R=(i+1)*x+y,U=(i+1)*(x-1)+y;o.push(C,T,U),o.push(T,R,U)}this.setIndex(o),this.setAttribute(\"position\",new xt(c,3)),this.setAttribute(\"normal\",new xt(l,3)),this.setAttribute(\"uv\",new xt(h,2));function v(x,y,C,T,R){let U=Math.cos(x),S=Math.sin(x),E=C/y*x,N=Math.cos(E);R.x=T*(2+N)*.5*U,R.y=T*(2+N)*S*.5,R.z=T*Math.sin(E)*.5}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new r(t.radius,t.tube,t.tubularSegments,t.radialSegments,t.p,t.q)}},bc=class r extends Wt{constructor(t=new xa(new w(-1,-1,0),new w(-1,1,0),new w(1,1,0)),e=64,n=1,i=8,s=!1){super(),this.type=\"TubeGeometry\",this.parameters={path:t,tubularSegments:e,radius:n,radialSegments:i,closed:s};let a=t.computeFrenetFrames(e,s);this.tangents=a.tangents,this.normals=a.normals,this.binormals=a.binormals;let o=new w,c=new w,l=new Z,h=new w,u=[],d=[],f=[],m=[];_(),this.setIndex(m),this.setAttribute(\"position\",new xt(u,3)),this.setAttribute(\"normal\",new xt(d,3)),this.setAttribute(\"uv\",new xt(f,2));function _(){for(let x=0;x<e;x++)g(x);g(s===!1?e:0),v(),p()}function g(x){h=t.getPointAt(x/e,h);let y=a.normals[x],C=a.binormals[x];for(let T=0;T<=i;T++){let R=T/i*Math.PI*2,U=Math.sin(R),S=-Math.cos(R);c.x=S*y.x+U*C.x,c.y=S*y.y+U*C.y,c.z=S*y.z+U*C.z,c.normalize(),d.push(c.x,c.y,c.z),o.x=h.x+n*c.x,o.y=h.y+n*c.y,o.z=h.z+n*c.z,u.push(o.x,o.y,o.z)}}function p(){for(let x=1;x<=e;x++)for(let y=1;y<=i;y++){let C=(i+1)*(x-1)+(y-1),T=(i+1)*x+(y-1),R=(i+1)*x+y,U=(i+1)*(x-1)+y;m.push(C,T,U),m.push(T,R,U)}}function v(){for(let x=0;x<=e;x++)for(let y=0;y<=i;y++)l.x=x/e,l.y=y/i,f.push(l.x,l.y)}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}toJSON(){let t=super.toJSON();return t.path=this.parameters.path.toJSON(),t}static fromJSON(t){return new r(new ya[t.path.type]().fromJSON(t.path),t.tubularSegments,t.radius,t.radialSegments,t.closed)}},Ec=class extends Wt{constructor(t=null){if(super(),this.type=\"WireframeGeometry\",this.parameters={geometry:t},t!==null){let e=[],n=new Set,i=new w,s=new w;if(t.index!==null){let a=t.attributes.position,o=t.index,c=t.groups;c.length===0&&(c=[{start:0,count:o.count,materialIndex:0}]);for(let l=0,h=c.length;l<h;++l){let u=c[l],d=u.start,f=u.count;for(let m=d,_=d+f;m<_;m+=3)for(let g=0;g<3;g++){let p=o.getX(m+g),v=o.getX(m+(g+1)%3);i.fromBufferAttribute(a,p),s.fromBufferAttribute(a,v),Eu(i,s,n)===!0&&(e.push(i.x,i.y,i.z),e.push(s.x,s.y,s.z))}}}else{let a=t.attributes.position;for(let o=0,c=a.count/3;o<c;o++)for(let l=0;l<3;l++){let h=3*o+l,u=3*o+(l+1)%3;i.fromBufferAttribute(a,h),s.fromBufferAttribute(a,u),Eu(i,s,n)===!0&&(e.push(i.x,i.y,i.z),e.push(s.x,s.y,s.z))}}this.setAttribute(\"position\",new xt(e,3))}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}};function Eu(r,t,e){let n=`${r.x},${r.y},${r.z}-${t.x},${t.y},${t.z}`,i=`${t.x},${t.y},${t.z}-${r.x},${r.y},${r.z}`;return e.has(n)===!0||e.has(i)===!0?!1:(e.add(n),e.add(i),!0)}var Au=Object.freeze({__proto__:null,BoxGeometry:ns,CapsuleGeometry:lc,CircleGeometry:hc,ConeGeometry:uc,CylinderGeometry:Hs,DodecahedronGeometry:dc,EdgesGeometry:fc,ExtrudeGeometry:gc,IcosahedronGeometry:_c,LatheGeometry:Ma,OctahedronGeometry:Sa,PlaneGeometry:oa,PolyhedronGeometry:vi,RingGeometry:xc,ShapeGeometry:vc,SphereGeometry:ba,TetrahedronGeometry:yc,TorusGeometry:Mc,TorusKnotGeometry:Sc,TubeGeometry:bc,WireframeGeometry:Ec}),Ac=class extends Te{constructor(t){super(),this.isShadowMaterial=!0,this.type=\"ShadowMaterial\",this.color=new pt(0),this.transparent=!0,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.fog=t.fog,this}},Tc=class extends sn{constructor(t){super(t),this.isRawShaderMaterial=!0,this.type=\"RawShaderMaterial\"}},Ea=class extends Te{constructor(t){super(),this.isMeshStandardMaterial=!0,this.defines={STANDARD:\"\"},this.type=\"MeshStandardMaterial\",this.color=new pt(16777215),this.roughness=1,this.metalness=0,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new pt(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Si,this.normalScale=new Z(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapIntensity=1,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\"round\",this.wireframeLinejoin=\"round\",this.flatShading=!1,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.defines={STANDARD:\"\"},this.color.copy(t.color),this.roughness=t.roughness,this.metalness=t.metalness,this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.roughnessMap=t.roughnessMap,this.metalnessMap=t.metalnessMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.envMapIntensity=t.envMapIntensity,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.flatShading=t.flatShading,this.fog=t.fog,this}},wc=class extends Ea{constructor(t){super(),this.isMeshPhysicalMaterial=!0,this.defines={STANDARD:\"\",PHYSICAL:\"\"},this.type=\"MeshPhysicalMaterial\",this.anisotropyRotation=0,this.anisotropyMap=null,this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new Z(1,1),this.clearcoatNormalMap=null,this.ior=1.5,Object.defineProperty(this,\"reflectivity\",{get:function(){return he(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(e){this.ior=(1+.4*e)/(1-.4*e)}}),this.iridescenceMap=null,this.iridescenceIOR=1.3,this.iridescenceThicknessRange=[100,400],this.iridescenceThicknessMap=null,this.sheenColor=new pt(0),this.sheenColorMap=null,this.sheenRoughness=1,this.sheenRoughnessMap=null,this.transmissionMap=null,this.thickness=0,this.thicknessMap=null,this.attenuationDistance=1/0,this.attenuationColor=new pt(1,1,1),this.specularIntensity=1,this.specularIntensityMap=null,this.specularColor=new pt(1,1,1),this.specularColorMap=null,this._anisotropy=0,this._clearcoat=0,this._iridescence=0,this._sheen=0,this._transmission=0,this.setValues(t)}get anisotropy(){return this._anisotropy}set anisotropy(t){this._anisotropy>0!=t>0&&this.version++,this._anisotropy=t}get clearcoat(){return this._clearcoat}set clearcoat(t){this._clearcoat>0!=t>0&&this.version++,this._clearcoat=t}get iridescence(){return this._iridescence}set iridescence(t){this._iridescence>0!=t>0&&this.version++,this._iridescence=t}get sheen(){return this._sheen}set sheen(t){this._sheen>0!=t>0&&this.version++,this._sheen=t}get transmission(){return this._transmission}set transmission(t){this._transmission>0!=t>0&&this.version++,this._transmission=t}copy(t){return super.copy(t),this.defines={STANDARD:\"\",PHYSICAL:\"\"},this.anisotropy=t.anisotropy,this.anisotropyRotation=t.anisotropyRotation,this.anisotropyMap=t.anisotropyMap,this.clearcoat=t.clearcoat,this.clearcoatMap=t.clearcoatMap,this.clearcoatRoughness=t.clearcoatRoughness,this.clearcoatRoughnessMap=t.clearcoatRoughnessMap,this.clearcoatNormalMap=t.clearcoatNormalMap,this.clearcoatNormalScale.copy(t.clearcoatNormalScale),this.ior=t.ior,this.iridescence=t.iridescence,this.iridescenceMap=t.iridescenceMap,this.iridescenceIOR=t.iridescenceIOR,this.iridescenceThicknessRange=[...t.iridescenceThicknessRange],this.iridescenceThicknessMap=t.iridescenceThicknessMap,this.sheen=t.sheen,this.sheenColor.copy(t.sheenColor),this.sheenColorMap=t.sheenColorMap,this.sheenRoughness=t.sheenRoughness,this.sheenRoughnessMap=t.sheenRoughnessMap,this.transmission=t.transmission,this.transmissionMap=t.transmissionMap,this.thickness=t.thickness,this.thicknessMap=t.thicknessMap,this.attenuationDistance=t.attenuationDistance,this.attenuationColor.copy(t.attenuationColor),this.specularIntensity=t.specularIntensity,this.specularIntensityMap=t.specularIntensityMap,this.specularColor.copy(t.specularColor),this.specularColorMap=t.specularColorMap,this}},Rc=class extends Te{constructor(t){super(),this.isMeshPhongMaterial=!0,this.type=\"MeshPhongMaterial\",this.color=new pt(16777215),this.specular=new pt(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new pt(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Si,this.normalScale=new Z(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=Pa,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\"round\",this.wireframeLinejoin=\"round\",this.flatShading=!1,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.specular.copy(t.specular),this.shininess=t.shininess,this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,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.flatShading=t.flatShading,this.fog=t.fog,this}},Cc=class extends Te{constructor(t){super(),this.isMeshToonMaterial=!0,this.defines={TOON:\"\"},this.type=\"MeshToonMaterial\",this.color=new pt(16777215),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new pt(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Si,this.normalScale=new Z(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\"round\",this.wireframeLinejoin=\"round\",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.gradientMap=t.gradientMap,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.alphaMap=t.alphaMap,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.fog=t.fog,this}},Pc=class extends Te{constructor(t){super(),this.isMeshNormalMaterial=!0,this.type=\"MeshNormalMaterial\",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Si,this.normalScale=new Z(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.flatShading=!1,this.setValues(t)}copy(t){return super.copy(t),this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.flatShading=t.flatShading,this}},Lc=class extends Te{constructor(t){super(),this.isMeshLambertMaterial=!0,this.type=\"MeshLambertMaterial\",this.color=new pt(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new pt(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Si,this.normalScale=new Z(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=Pa,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=\"round\",this.wireframeLinejoin=\"round\",this.flatShading=!1,this.fog=!0,this.setValues(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.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,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.flatShading=t.flatShading,this.fog=t.fog,this}},Ic=class extends Te{constructor(t){super(),this.isMeshMatcapMaterial=!0,this.defines={MATCAP:\"\"},this.type=\"MeshMatcapMaterial\",this.color=new pt(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Si,this.normalScale=new Z(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.flatShading=!1,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.defines={MATCAP:\"\"},this.color.copy(t.color),this.matcap=t.matcap,this.map=t.map,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.alphaMap=t.alphaMap,this.flatShading=t.flatShading,this.fog=t.fog,this}},Uc=class extends Ie{constructor(t){super(),this.isLineDashedMaterial=!0,this.type=\"LineDashedMaterial\",this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(t)}copy(t){return super.copy(t),this.scale=t.scale,this.dashSize=t.dashSize,this.gapSize=t.gapSize,this}};function hi(r,t,e){return!r||!e&&r.constructor===t?r:typeof t.BYTES_PER_ELEMENT==\"number\"?new t(r):Array.prototype.slice.call(r)}function jd(r){return ArrayBuffer.isView(r)&&!(r instanceof DataView)}function tf(r){function t(i,s){return r[i]-r[s]}let e=r.length,n=new Array(e);for(let i=0;i!==e;++i)n[i]=i;return n.sort(t),n}function Dc(r,t,e){let n=r.length,i=new r.constructor(n);for(let s=0,a=0;a!==n;++s){let o=e[s]*t;for(let c=0;c!==t;++c)i[a++]=r[o+c]}return i}function dl(r,t,e,n){let i=1,s=r[0];for(;s!==void 0&&s[n]===void 0;)s=r[i++];if(s===void 0)return;let a=s[n];if(a!==void 0)if(Array.isArray(a))do a=s[n],a!==void 0&&(t.push(s.time),e.push.apply(e,a)),s=r[i++];while(s!==void 0);else if(a.toArray!==void 0)do a=s[n],a!==void 0&&(t.push(s.time),a.toArray(e,e.length)),s=r[i++];while(s!==void 0);else do a=s[n],a!==void 0&&(t.push(s.time),e.push(a)),s=r[i++];while(s!==void 0)}function Qx(r,t,e,n,i=30){let s=r.clone();s.name=t;let a=[];for(let c=0;c<s.tracks.length;++c){let l=s.tracks[c],h=l.getValueSize(),u=[],d=[];for(let f=0;f<l.times.length;++f){let m=l.times[f]*i;if(!(m<e||m>=n)){u.push(l.times[f]);for(let _=0;_<h;++_)d.push(l.values[f*h+_])}}u.length!==0&&(l.times=hi(u,l.times.constructor),l.values=hi(d,l.values.constructor),a.push(l))}s.tracks=a;let o=1/0;for(let c=0;c<s.tracks.length;++c)o>s.tracks[c].times[0]&&(o=s.tracks[c].times[0]);for(let c=0;c<s.tracks.length;++c)s.tracks[c].shift(-1*o);return s.resetDuration(),s}function jx(r,t=0,e=r,n=30){n<=0&&(n=30);let i=e.tracks.length,s=t/n;for(let a=0;a<i;++a){let o=e.tracks[a],c=o.ValueTypeName;if(c===\"bool\"||c===\"string\")continue;let l=r.tracks.find(function(p){return p.name===o.name&&p.ValueTypeName===c});if(l===void 0)continue;let h=0,u=o.getValueSize();o.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(h=u/3);let d=0,f=l.getValueSize();l.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(d=f/3);let m=o.times.length-1,_;if(s<=o.times[0]){let p=h,v=u-h;_=o.values.slice(p,v)}else if(s>=o.times[m]){let p=m*u+h,v=p+u-h;_=o.values.slice(p,v)}else{let p=o.createInterpolant(),v=h,x=u-h;p.evaluate(s),_=p.resultBuffer.slice(v,x)}c===\"quaternion\"&&new Be().fromArray(_).normalize().conjugate().toArray(_);let g=l.times.length;for(let p=0;p<g;++p){let v=p*f+d;if(c===\"quaternion\")Be.multiplyQuaternionsFlat(l.values,v,_,0,l.values,v);else{let x=f-d*2;for(let y=0;y<x;++y)l.values[v+y]-=_[y]}}}return r.blendMode=Fd,r}var ey={convertArray:hi,isTypedArray:jd,getKeyframeOrder:tf,sortedArray:Dc,flattenJSON:dl,subclip:Qx,makeClipAdditive:jx},cs=class{constructor(t,e,n,i){this.parameterPositions=t,this._cachedIndex=0,this.resultBuffer=i!==void 0?i:new e.constructor(n),this.sampleValues=e,this.valueSize=n,this.settings=null,this.DefaultSettings_={}}evaluate(t){let e=this.parameterPositions,n=this._cachedIndex,i=e[n],s=e[n-1];t:{e:{let a;n:{i:if(!(t<i)){for(let o=n+2;;){if(i===void 0){if(t<s)break i;return n=e.length,this._cachedIndex=n,this.copySampleValue_(n-1)}if(n===o)break;if(s=i,i=e[++n],t<i)break e}a=e.length;break n}if(!(t>=s)){let o=e[1];t<o&&(n=2,s=o);for(let c=n-2;;){if(s===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(n===c)break;if(i=s,s=e[--n-1],t>=s)break e}a=n,n=0;break n}break t}for(;n<a;){let o=n+a>>>1;t<e[o]?a=o:n=o+1}if(i=e[n],s=e[n-1],s===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(i===void 0)return n=e.length,this._cachedIndex=n,this.copySampleValue_(n-1)}this._cachedIndex=n,this.intervalChanged_(n,s,i)}return this.interpolate_(n,s,t,i)}getSettings_(){return this.settings||this.DefaultSettings_}copySampleValue_(t){let e=this.resultBuffer,n=this.sampleValues,i=this.valueSize,s=t*i;for(let a=0;a!==i;++a)e[a]=n[s+a];return e}interpolate_(){throw new Error(\"call to abstract method\")}intervalChanged_(){}},Nc=class extends cs{constructor(t,e,n,i){super(t,e,n,i),this._weightPrev=-0,this._offsetPrev=-0,this._weightNext=-0,this._offsetNext=-0,this.DefaultSettings_={endingStart:Xi,endingEnd:Xi}}intervalChanged_(t,e,n){let i=this.parameterPositions,s=t-2,a=t+1,o=i[s],c=i[a];if(o===void 0)switch(this.getSettings_().endingStart){case qi:s=t,o=2*e-n;break;case $r:s=i.length-2,o=e+i[s]-i[s+1];break;default:s=t,o=n}if(c===void 0)switch(this.getSettings_().endingEnd){case qi:a=t,c=2*n-e;break;case $r:a=1,c=n+i[1]-i[0];break;default:a=t-1,c=e}let l=(n-e)*.5,h=this.valueSize;this._weightPrev=l/(e-o),this._weightNext=l/(c-n),this._offsetPrev=s*h,this._offsetNext=a*h}interpolate_(t,e,n,i){let s=this.resultBuffer,a=this.sampleValues,o=this.valueSize,c=t*o,l=c-o,h=this._offsetPrev,u=this._offsetNext,d=this._weightPrev,f=this._weightNext,m=(n-e)/(i-e),_=m*m,g=_*m,p=-d*g+2*d*_-d*m,v=(1+d)*g+(-1.5-2*d)*_+(-.5+d)*m+1,x=(-1-f)*g+(1.5+f)*_+.5*m,y=f*g-f*_;for(let C=0;C!==o;++C)s[C]=p*a[h+C]+v*a[l+C]+x*a[c+C]+y*a[u+C];return s}},Aa=class extends cs{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t,e,n,i){let s=this.resultBuffer,a=this.sampleValues,o=this.valueSize,c=t*o,l=c-o,h=(n-e)/(i-e),u=1-h;for(let d=0;d!==o;++d)s[d]=a[l+d]*u+a[c+d]*h;return s}},Oc=class extends cs{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t){return this.copySampleValue_(t-1)}},je=class{constructor(t,e,n,i){if(t===void 0)throw new Error(\"THREE.KeyframeTrack: track name is undefined\");if(e===void 0||e.length===0)throw new Error(\"THREE.KeyframeTrack: no keyframes in track named \"+t);this.name=t,this.times=hi(e,this.TimeBufferType),this.values=hi(n,this.ValueBufferType),this.setInterpolation(i||this.DefaultInterpolation)}static toJSON(t){let e=t.constructor,n;if(e.toJSON!==this.toJSON)n=e.toJSON(t);else{n={name:t.name,times:hi(t.times,Array),values:hi(t.values,Array)};let i=t.getInterpolation();i!==t.DefaultInterpolation&&(n.interpolation=i)}return n.type=t.ValueTypeName,n}InterpolantFactoryMethodDiscrete(t){return new Oc(this.times,this.values,this.getValueSize(),t)}InterpolantFactoryMethodLinear(t){return new Aa(this.times,this.values,this.getValueSize(),t)}InterpolantFactoryMethodSmooth(t){return new Nc(this.times,this.values,this.getValueSize(),t)}setInterpolation(t){let e;switch(t){case Zr:e=this.InterpolantFactoryMethodDiscrete;break;case Jr:e=this.InterpolantFactoryMethodLinear;break;case Ga:e=this.InterpolantFactoryMethodSmooth;break}if(e===void 0){let n=\"unsupported interpolation for \"+this.ValueTypeName+\" keyframe track named \"+this.name;if(this.createInterpolant===void 0)if(t!==this.DefaultInterpolation)this.setInterpolation(this.DefaultInterpolation);else throw new Error(n);return console.warn(\"THREE.KeyframeTrack:\",n),this}return this.createInterpolant=e,this}getInterpolation(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return Zr;case this.InterpolantFactoryMethodLinear:return Jr;case this.InterpolantFactoryMethodSmooth:return Ga}}getValueSize(){return this.values.length/this.times.length}shift(t){if(t!==0){let e=this.times;for(let n=0,i=e.length;n!==i;++n)e[n]+=t}return this}scale(t){if(t!==1){let e=this.times;for(let n=0,i=e.length;n!==i;++n)e[n]*=t}return this}trim(t,e){let n=this.times,i=n.length,s=0,a=i-1;for(;s!==i&&n[s]<t;)++s;for(;a!==-1&&n[a]>e;)--a;if(++a,s!==0||a!==i){s>=a&&(a=Math.max(a,1),s=a-1);let o=this.getValueSize();this.times=n.slice(s,a),this.values=this.values.slice(s*o,a*o)}return this}validate(){let t=!0,e=this.getValueSize();e-Math.floor(e)!==0&&(console.error(\"THREE.KeyframeTrack: Invalid value size in track.\",this),t=!1);let n=this.times,i=this.values,s=n.length;s===0&&(console.error(\"THREE.KeyframeTrack: Track is empty.\",this),t=!1);let a=null;for(let o=0;o!==s;o++){let c=n[o];if(typeof c==\"number\"&&isNaN(c)){console.error(\"THREE.KeyframeTrack: Time is not a valid number.\",this,o,c),t=!1;break}if(a!==null&&a>c){console.error(\"THREE.KeyframeTrack: Out of order keys.\",this,o,c,a),t=!1;break}a=c}if(i!==void 0&&jd(i))for(let o=0,c=i.length;o!==c;++o){let l=i[o];if(isNaN(l)){console.error(\"THREE.KeyframeTrack: Value is not a valid number.\",this,o,l),t=!1;break}}return t}optimize(){let t=this.times.slice(),e=this.values.slice(),n=this.getValueSize(),i=this.getInterpolation()===Ga,s=t.length-1,a=1;for(let o=1;o<s;++o){let c=!1,l=t[o],h=t[o+1];if(l!==h&&(o!==1||l!==t[0]))if(i)c=!0;else{let u=o*n,d=u-n,f=u+n;for(let m=0;m!==n;++m){let _=e[u+m];if(_!==e[d+m]||_!==e[f+m]){c=!0;break}}}if(c){if(o!==a){t[a]=t[o];let u=o*n,d=a*n;for(let f=0;f!==n;++f)e[d+f]=e[u+f]}++a}}if(s>0){t[a]=t[s];for(let o=s*n,c=a*n,l=0;l!==n;++l)e[c+l]=e[o+l];++a}return a!==t.length?(this.times=t.slice(0,a),this.values=e.slice(0,a*n)):(this.times=t,this.values=e),this}clone(){let t=this.times.slice(),e=this.values.slice(),n=this.constructor,i=new n(this.name,t,e);return i.createInterpolant=this.createInterpolant,i}};je.prototype.TimeBufferType=Float32Array;je.prototype.ValueBufferType=Float32Array;je.prototype.DefaultInterpolation=Jr;var qn=class extends je{};qn.prototype.ValueTypeName=\"bool\";qn.prototype.ValueBufferType=Array;qn.prototype.DefaultInterpolation=Zr;qn.prototype.InterpolantFactoryMethodLinear=void 0;qn.prototype.InterpolantFactoryMethodSmooth=void 0;var Ta=class extends je{};Ta.prototype.ValueTypeName=\"color\";var ls=class extends je{};ls.prototype.ValueTypeName=\"number\";var Fc=class extends cs{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t,e,n,i){let s=this.resultBuffer,a=this.sampleValues,o=this.valueSize,c=(n-e)/(i-e),l=t*o;for(let h=l+o;l!==h;l+=4)Be.slerpFlat(s,0,a,l-o,a,l,c);return s}},Mi=class extends je{InterpolantFactoryMethodLinear(t){return new Fc(this.times,this.values,this.getValueSize(),t)}};Mi.prototype.ValueTypeName=\"quaternion\";Mi.prototype.DefaultInterpolation=Jr;Mi.prototype.InterpolantFactoryMethodSmooth=void 0;var Yn=class extends je{};Yn.prototype.ValueTypeName=\"string\";Yn.prototype.ValueBufferType=Array;Yn.prototype.DefaultInterpolation=Zr;Yn.prototype.InterpolantFactoryMethodLinear=void 0;Yn.prototype.InterpolantFactoryMethodSmooth=void 0;var hs=class extends je{};hs.prototype.ValueTypeName=\"vector\";var us=class{constructor(t,e=-1,n,i=ol){this.name=t,this.tracks=n,this.duration=e,this.blendMode=i,this.uuid=Ye(),this.duration<0&&this.resetDuration()}static parse(t){let e=[],n=t.tracks,i=1/(t.fps||1);for(let a=0,o=n.length;a!==o;++a)e.push(ev(n[a]).scale(i));let s=new this(t.name,t.duration,e,t.blendMode);return s.uuid=t.uuid,s}static toJSON(t){let e=[],n=t.tracks,i={name:t.name,duration:t.duration,tracks:e,uuid:t.uuid,blendMode:t.blendMode};for(let s=0,a=n.length;s!==a;++s)e.push(je.toJSON(n[s]));return i}static CreateFromMorphTargetSequence(t,e,n,i){let s=e.length,a=[];for(let o=0;o<s;o++){let c=[],l=[];c.push((o+s-1)%s,o,(o+1)%s),l.push(0,1,0);let h=tf(c);c=Dc(c,1,h),l=Dc(l,1,h),!i&&c[0]===0&&(c.push(s),l.push(l[0])),a.push(new ls(\".morphTargetInfluences[\"+e[o].name+\"]\",c,l).scale(1/n))}return new this(t,-1,a)}static findByName(t,e){let n=t;if(!Array.isArray(t)){let i=t;n=i.geometry&&i.geometry.animations||i.animations}for(let i=0;i<n.length;i++)if(n[i].name===e)return n[i];return null}static CreateClipsFromMorphTargetSequences(t,e,n){let i={},s=/^([\\w-]*?)([\\d]+)$/;for(let o=0,c=t.length;o<c;o++){let l=t[o],h=l.name.match(s);if(h&&h.length>1){let u=h[1],d=i[u];d||(i[u]=d=[]),d.push(l)}}let a=[];for(let o in i)a.push(this.CreateFromMorphTargetSequence(o,i[o],e,n));return a}static parseAnimation(t,e){if(!t)return console.error(\"THREE.AnimationClip: No animation in JSONLoader data.\"),null;let n=function(u,d,f,m,_){if(f.length!==0){let g=[],p=[];dl(f,g,p,m),g.length!==0&&_.push(new u(d,g,p))}},i=[],s=t.name||\"default\",a=t.fps||30,o=t.blendMode,c=t.length||-1,l=t.hierarchy||[];for(let u=0;u<l.length;u++){let d=l[u].keys;if(!(!d||d.length===0))if(d[0].morphTargets){let f={},m;for(m=0;m<d.length;m++)if(d[m].morphTargets)for(let _=0;_<d[m].morphTargets.length;_++)f[d[m].morphTargets[_]]=-1;for(let _ in f){let g=[],p=[];for(let v=0;v!==d[m].morphTargets.length;++v){let x=d[m];g.push(x.time),p.push(x.morphTarget===_?1:0)}i.push(new ls(\".morphTargetInfluence[\"+_+\"]\",g,p))}c=f.length*a}else{let f=\".bones[\"+e[u].name+\"]\";n(hs,f+\".position\",d,\"pos\",i),n(Mi,f+\".quaternion\",d,\"rot\",i),n(hs,f+\".scale\",d,\"scl\",i)}}return i.length===0?null:new this(s,c,i,o)}resetDuration(){let t=this.tracks,e=0;for(let n=0,i=t.length;n!==i;++n){let s=this.tracks[n];e=Math.max(e,s.times[s.times.length-1])}return this.duration=e,this}trim(){for(let t=0;t<this.tracks.length;t++)this.tracks[t].trim(0,this.duration);return this}validate(){let t=!0;for(let e=0;e<this.tracks.length;e++)t=t&&this.tracks[e].validate();return t}optimize(){for(let t=0;t<this.tracks.length;t++)this.tracks[t].optimize();return this}clone(){let t=[];for(let e=0;e<this.tracks.length;e++)t.push(this.tracks[e].clone());return new this.constructor(this.name,this.duration,t,this.blendMode)}toJSON(){return this.constructor.toJSON(this)}};function tv(r){switch(r.toLowerCase()){case\"scalar\":case\"double\":case\"float\":case\"number\":case\"integer\":return ls;case\"vector\":case\"vector2\":case\"vector3\":case\"vector4\":return hs;case\"color\":return Ta;case\"quaternion\":return Mi;case\"bool\":case\"boolean\":return qn;case\"string\":return Yn}throw new Error(\"THREE.KeyframeTrack: Unsupported typeName: \"+r)}function ev(r){if(r.type===void 0)throw new Error(\"THREE.KeyframeTrack: track type undefined, can not parse\");let t=tv(r.type);if(r.times===void 0){let e=[],n=[];dl(r.keys,e,n,\"value\"),r.times=e,r.values=n}return t.parse!==void 0?t.parse(r):new t(r.name,r.times,r.values,r.interpolation)}var Bn={enabled:!1,files:{},add:function(r,t){this.enabled!==!1&&(this.files[r]=t)},get:function(r){if(this.enabled!==!1)return this.files[r]},remove:function(r){delete this.files[r]},clear:function(){this.files={}}},wa=class{constructor(t,e,n){let i=this,s=!1,a=0,o=0,c,l=[];this.onStart=void 0,this.onLoad=t,this.onProgress=e,this.onError=n,this.itemStart=function(h){o++,s===!1&&i.onStart!==void 0&&i.onStart(h,a,o),s=!0},this.itemEnd=function(h){a++,i.onProgress!==void 0&&i.onProgress(h,a,o),a===o&&(s=!1,i.onLoad!==void 0&&i.onLoad())},this.itemError=function(h){i.onError!==void 0&&i.onError(h)},this.resolveURL=function(h){return c?c(h):h},this.setURLModifier=function(h){return c=h,this},this.addHandler=function(h,u){return l.push(h,u),this},this.removeHandler=function(h){let u=l.indexOf(h);return u!==-1&&l.splice(u,2),this},this.getHandler=function(h){for(let u=0,d=l.length;u<d;u+=2){let f=l[u],m=l[u+1];if(f.global&&(f.lastIndex=0),f.test(h))return m}return null}}},nv=new wa,ze=class{constructor(t){this.manager=t!==void 0?t:nv,this.crossOrigin=\"anonymous\",this.withCredentials=!1,this.path=\"\",this.resourcePath=\"\",this.requestHeader={}}load(){}loadAsync(t,e){let n=this;return new Promise(function(i,s){n.load(t,i,e,s)})}parse(){}setCrossOrigin(t){return this.crossOrigin=t,this}setWithCredentials(t){return this.withCredentials=t,this}setPath(t){return this.path=t,this}setResourcePath(t){return this.resourcePath=t,this}setRequestHeader(t){return this.requestHeader=t,this}};ze.DEFAULT_MATERIAL_NAME=\"__DEFAULT\";var xn={},Bc=class extends Error{constructor(t,e){super(t),this.response=e}},un=class extends ze{constructor(t){super(t)}load(t,e,n,i){t===void 0&&(t=\"\"),this.path!==void 0&&(t=this.path+t),t=this.manager.resolveURL(t);let s=Bn.get(t);if(s!==void 0)return this.manager.itemStart(t),setTimeout(()=>{e&&e(s),this.manager.itemEnd(t)},0),s;if(xn[t]!==void 0){xn[t].push({onLoad:e,onProgress:n,onError:i});return}xn[t]=[],xn[t].push({onLoad:e,onProgress:n,onError:i});let a=new Request(t,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?\"include\":\"same-origin\"}),o=this.mimeType,c=this.responseType;fetch(a).then(l=>{if(l.status===200||l.status===0){if(l.status===0&&console.warn(\"THREE.FileLoader: HTTP Status 0 received.\"),typeof ReadableStream>\"u\"||l.body===void 0||l.body.getReader===void 0)return l;let h=xn[t],u=l.body.getReader(),d=l.headers.get(\"Content-Length\")||l.headers.get(\"X-File-Size\"),f=d?parseInt(d):0,m=f!==0,_=0,g=new ReadableStream({start(p){v();function v(){u.read().then(({done:x,value:y})=>{if(x)p.close();else{_+=y.byteLength;let C=new ProgressEvent(\"progress\",{lengthComputable:m,loaded:_,total:f});for(let T=0,R=h.length;T<R;T++){let U=h[T];U.onProgress&&U.onProgress(C)}p.enqueue(y),v()}})}}});return new Response(g)}else throw new Bc(`fetch for \"${l.url}\" responded with ${l.status}: ${l.statusText}`,l)}).then(l=>{switch(c){case\"arraybuffer\":return l.arrayBuffer();case\"blob\":return l.blob();case\"document\":return l.text().then(h=>new DOMParser().parseFromString(h,o));case\"json\":return l.json();default:if(o===void 0)return l.text();{let u=/charset=\"?([^;\"\\s]*)\"?/i.exec(o),d=u&&u[1]?u[1].toLowerCase():void 0,f=new TextDecoder(d);return l.arrayBuffer().then(m=>f.decode(m))}}}).then(l=>{Bn.add(t,l);let h=xn[t];delete xn[t];for(let u=0,d=h.length;u<d;u++){let f=h[u];f.onLoad&&f.onLoad(l)}}).catch(l=>{let h=xn[t];if(h===void 0)throw this.manager.itemError(t),l;delete xn[t];for(let u=0,d=h.length;u<d;u++){let f=h[u];f.onError&&f.onError(l)}this.manager.itemError(t)}).finally(()=>{this.manager.itemEnd(t)}),this.manager.itemStart(t)}setResponseType(t){return this.responseType=t,this}setMimeType(t){return this.mimeType=t,this}},Tu=class extends ze{constructor(t){super(t)}load(t,e,n,i){let s=this,a=new un(this.manager);a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(t,function(o){try{e(s.parse(JSON.parse(o)))}catch(c){i?i(c):console.error(c),s.manager.itemError(t)}},n,i)}parse(t){let e=[];for(let n=0;n<t.length;n++){let i=us.parse(t[n]);e.push(i)}return e}},wu=class extends ze{constructor(t){super(t)}load(t,e,n,i){let s=this,a=[],o=new Vs,c=new un(this.manager);c.setPath(this.path),c.setResponseType(\"arraybuffer\"),c.setRequestHeader(this.requestHeader),c.setWithCredentials(s.withCredentials);let l=0;function h(u){c.load(t[u],function(d){let f=s.parse(d,!0);a[u]={width:f.width,height:f.height,format:f.format,mipmaps:f.mipmaps},l+=1,l===6&&(f.mipmapCount===1&&(o.minFilter=me),o.image=a,o.format=f.format,o.needsUpdate=!0,e&&e(o))},n,i)}if(Array.isArray(t))for(let u=0,d=t.length;u<d;++u)h(u);else c.load(t,function(u){let d=s.parse(u,!0);if(d.isCubemap){let f=d.mipmaps.length/d.mipmapCount;for(let m=0;m<f;m++){a[m]={mipmaps:[]};for(let _=0;_<d.mipmapCount;_++)a[m].mipmaps.push(d.mipmaps[m*d.mipmapCount+_]),a[m].format=d.format,a[m].width=d.width,a[m].height=d.height}o.image=a}else o.image.width=d.width,o.image.height=d.height,o.mipmaps=d.mipmaps;d.mipmapCount===1&&(o.minFilter=me),o.format=d.format,o.needsUpdate=!0,e&&e(o)},n,i);return o}},ds=class extends ze{constructor(t){super(t)}load(t,e,n,i){this.path!==void 0&&(t=this.path+t),t=this.manager.resolveURL(t);let s=this,a=Bn.get(t);if(a!==void 0)return s.manager.itemStart(t),setTimeout(function(){e&&e(a),s.manager.itemEnd(t)},0),a;let o=Ds(\"img\");function c(){h(),Bn.add(t,this),e&&e(this),s.manager.itemEnd(t)}function l(u){h(),i&&i(u),s.manager.itemError(t),s.manager.itemEnd(t)}function h(){o.removeEventListener(\"load\",c,!1),o.removeEventListener(\"error\",l,!1)}return o.addEventListener(\"load\",c,!1),o.addEventListener(\"error\",l,!1),t.slice(0,5)!==\"data:\"&&this.crossOrigin!==void 0&&(o.crossOrigin=this.crossOrigin),s.manager.itemStart(t),o.src=t,o}},Ru=class extends ze{constructor(t){super(t)}load(t,e,n,i){let s=new ss;s.colorSpace=Se;let a=new ds(this.manager);a.setCrossOrigin(this.crossOrigin),a.setPath(this.path);let o=0;function c(l){a.load(t[l],function(h){s.images[l]=h,o++,o===6&&(s.needsUpdate=!0,e&&e(s))},void 0,i)}for(let l=0;l<t.length;++l)c(l);return s}},Cu=class extends ze{constructor(t){super(t)}load(t,e,n,i){let s=this,a=new Hn,o=new un(this.manager);return o.setResponseType(\"arraybuffer\"),o.setRequestHeader(this.requestHeader),o.setPath(this.path),o.setWithCredentials(s.withCredentials),o.load(t,function(c){let l;try{l=s.parse(c)}catch(h){if(i!==void 0)i(h);else{console.error(h);return}}l.image!==void 0?a.image=l.image:l.data!==void 0&&(a.image.width=l.width,a.image.height=l.height,a.image.data=l.data),a.wrapS=l.wrapS!==void 0?l.wrapS:Fe,a.wrapT=l.wrapT!==void 0?l.wrapT:Fe,a.magFilter=l.magFilter!==void 0?l.magFilter:me,a.minFilter=l.minFilter!==void 0?l.minFilter:me,a.anisotropy=l.anisotropy!==void 0?l.anisotropy:1,l.colorSpace!==void 0?a.colorSpace=l.colorSpace:l.encoding!==void 0&&(a.encoding=l.encoding),l.flipY!==void 0&&(a.flipY=l.flipY),l.format!==void 0&&(a.format=l.format),l.type!==void 0&&(a.type=l.type),l.mipmaps!==void 0&&(a.mipmaps=l.mipmaps,a.minFilter=gi),l.mipmapCount===1&&(a.minFilter=me),l.generateMipmaps!==void 0&&(a.generateMipmaps=l.generateMipmaps),a.needsUpdate=!0,e&&e(a,l)},n,i),a}},Pu=class extends ze{constructor(t){super(t)}load(t,e,n,i){let s=new Ee,a=new ds(this.manager);return a.setCrossOrigin(this.crossOrigin),a.setPath(this.path),a.load(t,function(o){s.image=o,s.needsUpdate=!0,e!==void 0&&e(s)},n,i),s}},wn=class extends Kt{constructor(t,e=1){super(),this.isLight=!0,this.type=\"Light\",this.color=new pt(t),this.intensity=e}dispose(){}copy(t,e){return super.copy(t,e),this.color.copy(t.color),this.intensity=t.intensity,this}toJSON(t){let e=super.toJSON(t);return e.object.color=this.color.getHex(),e.object.intensity=this.intensity,this.groundColor!==void 0&&(e.object.groundColor=this.groundColor.getHex()),this.distance!==void 0&&(e.object.distance=this.distance),this.angle!==void 0&&(e.object.angle=this.angle),this.decay!==void 0&&(e.object.decay=this.decay),this.penumbra!==void 0&&(e.object.penumbra=this.penumbra),this.shadow!==void 0&&(e.object.shadow=this.shadow.toJSON()),e}},zc=class extends wn{constructor(t,e,n){super(t,n),this.isHemisphereLight=!0,this.type=\"HemisphereLight\",this.position.copy(Kt.DEFAULT_UP),this.updateMatrix(),this.groundColor=new pt(e)}copy(t,e){return super.copy(t,e),this.groundColor.copy(t.groundColor),this}},bo=new It,Lu=new w,Iu=new w,qs=class{constructor(t){this.camera=t,this.bias=0,this.normalBias=0,this.radius=1,this.blurSamples=8,this.mapSize=new Z(512,512),this.map=null,this.mapPass=null,this.matrix=new It,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new rs,this._frameExtents=new Z(1,1),this._viewportCount=1,this._viewports=[new te(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(t){let e=this.camera,n=this.matrix;Lu.setFromMatrixPosition(t.matrixWorld),e.position.copy(Lu),Iu.setFromMatrixPosition(t.target.matrixWorld),e.lookAt(Iu),e.updateMatrixWorld(),bo.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),this._frustum.setFromProjectionMatrix(bo),n.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),n.multiply(bo)}getViewport(t){return this._viewports[t]}getFrameExtents(){return this._frameExtents}dispose(){this.map&&this.map.dispose(),this.mapPass&&this.mapPass.dispose()}copy(t){return this.camera=t.camera.clone(),this.bias=t.bias,this.radius=t.radius,this.mapSize.copy(t.mapSize),this}clone(){return new this.constructor().copy(this)}toJSON(){let t={};return this.bias!==0&&(t.bias=this.bias),this.normalBias!==0&&(t.normalBias=this.normalBias),this.radius!==1&&(t.radius=this.radius),(this.mapSize.x!==512||this.mapSize.y!==512)&&(t.mapSize=this.mapSize.toArray()),t.camera=this.camera.toJSON(!1).object,delete t.camera.matrix,t}},Vc=class extends qs{constructor(){super(new be(50,1,.5,500)),this.isSpotLightShadow=!0,this.focus=1}updateMatrices(t){let e=this.camera,n=es*2*t.angle*this.focus,i=this.mapSize.width/this.mapSize.height,s=t.distance||e.far;(n!==e.fov||i!==e.aspect||s!==e.far)&&(e.fov=n,e.aspect=i,e.far=s,e.updateProjectionMatrix()),super.updateMatrices(t)}copy(t){return super.copy(t),this.focus=t.focus,this}},kc=class extends wn{constructor(t,e,n=0,i=Math.PI/3,s=0,a=2){super(t,e),this.isSpotLight=!0,this.type=\"SpotLight\",this.position.copy(Kt.DEFAULT_UP),this.updateMatrix(),this.target=new Kt,this.distance=n,this.angle=i,this.penumbra=s,this.decay=a,this.map=null,this.shadow=new Vc}get power(){return this.intensity*Math.PI}set power(t){this.intensity=t/Math.PI}dispose(){this.shadow.dispose()}copy(t,e){return super.copy(t,e),this.distance=t.distance,this.angle=t.angle,this.penumbra=t.penumbra,this.decay=t.decay,this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}},Uu=new It,As=new w,Eo=new w,Hc=class extends qs{constructor(){super(new be(90,1,.5,500)),this.isPointLightShadow=!0,this._frameExtents=new Z(4,2),this._viewportCount=6,this._viewports=[new te(2,1,1,1),new te(0,1,1,1),new te(3,1,1,1),new te(1,1,1,1),new te(3,0,1,1),new te(1,0,1,1)],this._cubeDirections=[new w(1,0,0),new w(-1,0,0),new w(0,0,1),new w(0,0,-1),new w(0,1,0),new w(0,-1,0)],this._cubeUps=[new w(0,1,0),new w(0,1,0),new w(0,1,0),new w(0,1,0),new w(0,0,1),new w(0,0,-1)]}updateMatrices(t,e=0){let n=this.camera,i=this.matrix,s=t.distance||n.far;s!==n.far&&(n.far=s,n.updateProjectionMatrix()),As.setFromMatrixPosition(t.matrixWorld),n.position.copy(As),Eo.copy(n.position),Eo.add(this._cubeDirections[e]),n.up.copy(this._cubeUps[e]),n.lookAt(Eo),n.updateMatrixWorld(),i.makeTranslation(-As.x,-As.y,-As.z),Uu.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse),this._frustum.setFromProjectionMatrix(Uu)}},Gc=class extends wn{constructor(t,e,n=0,i=2){super(t,e),this.isPointLight=!0,this.type=\"PointLight\",this.distance=n,this.decay=i,this.shadow=new Hc}get power(){return this.intensity*4*Math.PI}set power(t){this.intensity=t/(4*Math.PI)}dispose(){this.shadow.dispose()}copy(t,e){return super.copy(t,e),this.distance=t.distance,this.decay=t.decay,this.shadow=t.shadow.clone(),this}},Wc=class extends qs{constructor(){super(new Bs(-5,5,5,-5,.5,500)),this.isDirectionalLightShadow=!0}},Xc=class extends wn{constructor(t,e){super(t,e),this.isDirectionalLight=!0,this.type=\"DirectionalLight\",this.position.copy(Kt.DEFAULT_UP),this.updateMatrix(),this.target=new Kt,this.shadow=new Wc}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}},qc=class extends wn{constructor(t,e){super(t,e),this.isAmbientLight=!0,this.type=\"AmbientLight\"}},Yc=class extends wn{constructor(t,e,n=10,i=10){super(t,e),this.isRectAreaLight=!0,this.type=\"RectAreaLight\",this.width=n,this.height=i}get power(){return this.intensity*this.width*this.height*Math.PI}set power(t){this.intensity=t/(this.width*this.height*Math.PI)}copy(t){return super.copy(t),this.width=t.width,this.height=t.height,this}toJSON(t){let e=super.toJSON(t);return e.object.width=this.width,e.object.height=this.height,e}},Zc=class{constructor(){this.isSphericalHarmonics3=!0,this.coefficients=[];for(let t=0;t<9;t++)this.coefficients.push(new w)}set(t){for(let e=0;e<9;e++)this.coefficients[e].copy(t[e]);return this}zero(){for(let t=0;t<9;t++)this.coefficients[t].set(0,0,0);return this}getAt(t,e){let n=t.x,i=t.y,s=t.z,a=this.coefficients;return e.copy(a[0]).multiplyScalar(.282095),e.addScaledVector(a[1],.488603*i),e.addScaledVector(a[2],.488603*s),e.addScaledVector(a[3],.488603*n),e.addScaledVector(a[4],1.092548*(n*i)),e.addScaledVector(a[5],1.092548*(i*s)),e.addScaledVector(a[6],.315392*(3*s*s-1)),e.addScaledVector(a[7],1.092548*(n*s)),e.addScaledVector(a[8],.546274*(n*n-i*i)),e}getIrradianceAt(t,e){let n=t.x,i=t.y,s=t.z,a=this.coefficients;return e.copy(a[0]).multiplyScalar(.886227),e.addScaledVector(a[1],2*.511664*i),e.addScaledVector(a[2],2*.511664*s),e.addScaledVector(a[3],2*.511664*n),e.addScaledVector(a[4],2*.429043*n*i),e.addScaledVector(a[5],2*.429043*i*s),e.addScaledVector(a[6],.743125*s*s-.247708),e.addScaledVector(a[7],2*.429043*n*s),e.addScaledVector(a[8],.429043*(n*n-i*i)),e}add(t){for(let e=0;e<9;e++)this.coefficients[e].add(t.coefficients[e]);return this}addScaledSH(t,e){for(let n=0;n<9;n++)this.coefficients[n].addScaledVector(t.coefficients[n],e);return this}scale(t){for(let e=0;e<9;e++)this.coefficients[e].multiplyScalar(t);return this}lerp(t,e){for(let n=0;n<9;n++)this.coefficients[n].lerp(t.coefficients[n],e);return this}equals(t){for(let e=0;e<9;e++)if(!this.coefficients[e].equals(t.coefficients[e]))return!1;return!0}copy(t){return this.set(t.coefficients)}clone(){return new this.constructor().copy(this)}fromArray(t,e=0){let n=this.coefficients;for(let i=0;i<9;i++)n[i].fromArray(t,e+i*3);return this}toArray(t=[],e=0){let n=this.coefficients;for(let i=0;i<9;i++)n[i].toArray(t,e+i*3);return t}static getBasisAt(t,e){let n=t.x,i=t.y,s=t.z;e[0]=.282095,e[1]=.488603*i,e[2]=.488603*s,e[3]=.488603*n,e[4]=1.092548*n*i,e[5]=1.092548*i*s,e[6]=.315392*(3*s*s-1),e[7]=1.092548*n*s,e[8]=.546274*(n*n-i*i)}},Jc=class extends wn{constructor(t=new Zc,e=1){super(void 0,e),this.isLightProbe=!0,this.sh=t}copy(t){return super.copy(t),this.sh.copy(t.sh),this}fromJSON(t){return this.intensity=t.intensity,this.sh.fromArray(t.sh),this}toJSON(t){let e=super.toJSON(t);return e.object.sh=this.sh.toArray(),e}},$c=class r extends ze{constructor(t){super(t),this.textures={}}load(t,e,n,i){let s=this,a=new un(s.manager);a.setPath(s.path),a.setRequestHeader(s.requestHeader),a.setWithCredentials(s.withCredentials),a.load(t,function(o){try{e(s.parse(JSON.parse(o)))}catch(c){i?i(c):console.error(c),s.manager.itemError(t)}},n,i)}parse(t){let e=this.textures;function n(s){return e[s]===void 0&&console.warn(\"THREE.MaterialLoader: Undefined texture\",s),e[s]}let i=r.createMaterialFromType(t.type);if(t.uuid!==void 0&&(i.uuid=t.uuid),t.name!==void 0&&(i.name=t.name),t.color!==void 0&&i.color!==void 0&&i.color.setHex(t.color),t.roughness!==void 0&&(i.roughness=t.roughness),t.metalness!==void 0&&(i.metalness=t.metalness),t.sheen!==void 0&&(i.sheen=t.sheen),t.sheenColor!==void 0&&(i.sheenColor=new pt().setHex(t.sheenColor)),t.sheenRoughness!==void 0&&(i.sheenRoughness=t.sheenRoughness),t.emissive!==void 0&&i.emissive!==void 0&&i.emissive.setHex(t.emissive),t.specular!==void 0&&i.specular!==void 0&&i.specular.setHex(t.specular),t.specularIntensity!==void 0&&(i.specularIntensity=t.specularIntensity),t.specularColor!==void 0&&i.specularColor!==void 0&&i.specularColor.setHex(t.specularColor),t.shininess!==void 0&&(i.shininess=t.shininess),t.clearcoat!==void 0&&(i.clearcoat=t.clearcoat),t.clearcoatRoughness!==void 0&&(i.clearcoatRoughness=t.clearcoatRoughness),t.iridescence!==void 0&&(i.iridescence=t.iridescence),t.iridescenceIOR!==void 0&&(i.iridescenceIOR=t.iridescenceIOR),t.iridescenceThicknessRange!==void 0&&(i.iridescenceThicknessRange=t.iridescenceThicknessRange),t.transmission!==void 0&&(i.transmission=t.transmission),t.thickness!==void 0&&(i.thickness=t.thickness),t.attenuationDistance!==void 0&&(i.attenuationDistance=t.attenuationDistance),t.attenuationColor!==void 0&&i.attenuationColor!==void 0&&i.attenuationColor.setHex(t.attenuationColor),t.anisotropy!==void 0&&(i.anisotropy=t.anisotropy),t.anisotropyRotation!==void 0&&(i.anisotropyRotation=t.anisotropyRotation),t.fog!==void 0&&(i.fog=t.fog),t.flatShading!==void 0&&(i.flatShading=t.flatShading),t.blending!==void 0&&(i.blending=t.blending),t.combine!==void 0&&(i.combine=t.combine),t.side!==void 0&&(i.side=t.side),t.shadowSide!==void 0&&(i.shadowSide=t.shadowSide),t.opacity!==void 0&&(i.opacity=t.opacity),t.transparent!==void 0&&(i.transparent=t.transparent),t.alphaTest!==void 0&&(i.alphaTest=t.alphaTest),t.alphaHash!==void 0&&(i.alphaHash=t.alphaHash),t.depthFunc!==void 0&&(i.depthFunc=t.depthFunc),t.depthTest!==void 0&&(i.depthTest=t.depthTest),t.depthWrite!==void 0&&(i.depthWrite=t.depthWrite),t.colorWrite!==void 0&&(i.colorWrite=t.colorWrite),t.blendSrc!==void 0&&(i.blendSrc=t.blendSrc),t.blendDst!==void 0&&(i.blendDst=t.blendDst),t.blendEquation!==void 0&&(i.blendEquation=t.blendEquation),t.blendSrcAlpha!==void 0&&(i.blendSrcAlpha=t.blendSrcAlpha),t.blendDstAlpha!==void 0&&(i.blendDstAlpha=t.blendDstAlpha),t.blendEquationAlpha!==void 0&&(i.blendEquationAlpha=t.blendEquationAlpha),t.blendColor!==void 0&&i.blendColor!==void 0&&i.blendColor.setHex(t.blendColor),t.blendAlpha!==void 0&&(i.blendAlpha=t.blendAlpha),t.stencilWriteMask!==void 0&&(i.stencilWriteMask=t.stencilWriteMask),t.stencilFunc!==void 0&&(i.stencilFunc=t.stencilFunc),t.stencilRef!==void 0&&(i.stencilRef=t.stencilRef),t.stencilFuncMask!==void 0&&(i.stencilFuncMask=t.stencilFuncMask),t.stencilFail!==void 0&&(i.stencilFail=t.stencilFail),t.stencilZFail!==void 0&&(i.stencilZFail=t.stencilZFail),t.stencilZPass!==void 0&&(i.stencilZPass=t.stencilZPass),t.stencilWrite!==void 0&&(i.stencilWrite=t.stencilWrite),t.wireframe!==void 0&&(i.wireframe=t.wireframe),t.wireframeLinewidth!==void 0&&(i.wireframeLinewidth=t.wireframeLinewidth),t.wireframeLinecap!==void 0&&(i.wireframeLinecap=t.wireframeLinecap),t.wireframeLinejoin!==void 0&&(i.wireframeLinejoin=t.wireframeLinejoin),t.rotation!==void 0&&(i.rotation=t.rotation),t.linewidth!==void 0&&(i.linewidth=t.linewidth),t.dashSize!==void 0&&(i.dashSize=t.dashSize),t.gapSize!==void 0&&(i.gapSize=t.gapSize),t.scale!==void 0&&(i.scale=t.scale),t.polygonOffset!==void 0&&(i.polygonOffset=t.polygonOffset),t.polygonOffsetFactor!==void 0&&(i.polygonOffsetFactor=t.polygonOffsetFactor),t.polygonOffsetUnits!==void 0&&(i.polygonOffsetUnits=t.polygonOffsetUnits),t.dithering!==void 0&&(i.dithering=t.dithering),t.alphaToCoverage!==void 0&&(i.alphaToCoverage=t.alphaToCoverage),t.premultipliedAlpha!==void 0&&(i.premultipliedAlpha=t.premultipliedAlpha),t.forceSinglePass!==void 0&&(i.forceSinglePass=t.forceSinglePass),t.visible!==void 0&&(i.visible=t.visible),t.toneMapped!==void 0&&(i.toneMapped=t.toneMapped),t.userData!==void 0&&(i.userData=t.userData),t.vertexColors!==void 0&&(typeof t.vertexColors==\"number\"?i.vertexColors=t.vertexColors>0:i.vertexColors=t.vertexColors),t.uniforms!==void 0)for(let s in t.uniforms){let a=t.uniforms[s];switch(i.uniforms[s]={},a.type){case\"t\":i.uniforms[s].value=n(a.value);break;case\"c\":i.uniforms[s].value=new pt().setHex(a.value);break;case\"v2\":i.uniforms[s].value=new Z().fromArray(a.value);break;case\"v3\":i.uniforms[s].value=new w().fromArray(a.value);break;case\"v4\":i.uniforms[s].value=new te().fromArray(a.value);break;case\"m3\":i.uniforms[s].value=new Gt().fromArray(a.value);break;case\"m4\":i.uniforms[s].value=new It().fromArray(a.value);break;default:i.uniforms[s].value=a.value}}if(t.defines!==void 0&&(i.defines=t.defines),t.vertexShader!==void 0&&(i.vertexShader=t.vertexShader),t.fragmentShader!==void 0&&(i.fragmentShader=t.fragmentShader),t.glslVersion!==void 0&&(i.glslVersion=t.glslVersion),t.extensions!==void 0)for(let s in t.extensions)i.extensions[s]=t.extensions[s];if(t.lights!==void 0&&(i.lights=t.lights),t.clipping!==void 0&&(i.clipping=t.clipping),t.size!==void 0&&(i.size=t.size),t.sizeAttenuation!==void 0&&(i.sizeAttenuation=t.sizeAttenuation),t.map!==void 0&&(i.map=n(t.map)),t.matcap!==void 0&&(i.matcap=n(t.matcap)),t.alphaMap!==void 0&&(i.alphaMap=n(t.alphaMap)),t.bumpMap!==void 0&&(i.bumpMap=n(t.bumpMap)),t.bumpScale!==void 0&&(i.bumpScale=t.bumpScale),t.normalMap!==void 0&&(i.normalMap=n(t.normalMap)),t.normalMapType!==void 0&&(i.normalMapType=t.normalMapType),t.normalScale!==void 0){let s=t.normalScale;Array.isArray(s)===!1&&(s=[s,s]),i.normalScale=new Z().fromArray(s)}return t.displacementMap!==void 0&&(i.displacementMap=n(t.displacementMap)),t.displacementScale!==void 0&&(i.displacementScale=t.displacementScale),t.displacementBias!==void 0&&(i.displacementBias=t.displacementBias),t.roughnessMap!==void 0&&(i.roughnessMap=n(t.roughnessMap)),t.metalnessMap!==void 0&&(i.metalnessMap=n(t.metalnessMap)),t.emissiveMap!==void 0&&(i.emissiveMap=n(t.emissiveMap)),t.emissiveIntensity!==void 0&&(i.emissiveIntensity=t.emissiveIntensity),t.specularMap!==void 0&&(i.specularMap=n(t.specularMap)),t.specularIntensityMap!==void 0&&(i.specularIntensityMap=n(t.specularIntensityMap)),t.specularColorMap!==void 0&&(i.specularColorMap=n(t.specularColorMap)),t.envMap!==void 0&&(i.envMap=n(t.envMap)),t.envMapIntensity!==void 0&&(i.envMapIntensity=t.envMapIntensity),t.reflectivity!==void 0&&(i.reflectivity=t.reflectivity),t.refractionRatio!==void 0&&(i.refractionRatio=t.refractionRatio),t.lightMap!==void 0&&(i.lightMap=n(t.lightMap)),t.lightMapIntensity!==void 0&&(i.lightMapIntensity=t.lightMapIntensity),t.aoMap!==void 0&&(i.aoMap=n(t.aoMap)),t.aoMapIntensity!==void 0&&(i.aoMapIntensity=t.aoMapIntensity),t.gradientMap!==void 0&&(i.gradientMap=n(t.gradientMap)),t.clearcoatMap!==void 0&&(i.clearcoatMap=n(t.clearcoatMap)),t.clearcoatRoughnessMap!==void 0&&(i.clearcoatRoughnessMap=n(t.clearcoatRoughnessMap)),t.clearcoatNormalMap!==void 0&&(i.clearcoatNormalMap=n(t.clearcoatNormalMap)),t.clearcoatNormalScale!==void 0&&(i.clearcoatNormalScale=new Z().fromArray(t.clearcoatNormalScale)),t.iridescenceMap!==void 0&&(i.iridescenceMap=n(t.iridescenceMap)),t.iridescenceThicknessMap!==void 0&&(i.iridescenceThicknessMap=n(t.iridescenceThicknessMap)),t.transmissionMap!==void 0&&(i.transmissionMap=n(t.transmissionMap)),t.thicknessMap!==void 0&&(i.thicknessMap=n(t.thicknessMap)),t.anisotropyMap!==void 0&&(i.anisotropyMap=n(t.anisotropyMap)),t.sheenColorMap!==void 0&&(i.sheenColorMap=n(t.sheenColorMap)),t.sheenRoughnessMap!==void 0&&(i.sheenRoughnessMap=n(t.sheenRoughnessMap)),i}setTextures(t){return this.textures=t,this}static createMaterialFromType(t){let e={ShadowMaterial:Ac,SpriteMaterial:da,RawShaderMaterial:Tc,ShaderMaterial:sn,PointsMaterial:pa,MeshPhysicalMaterial:wc,MeshStandardMaterial:Ea,MeshPhongMaterial:Rc,MeshToonMaterial:Cc,MeshNormalMaterial:Pc,MeshLambertMaterial:Lc,MeshDepthMaterial:ha,MeshDistanceMaterial:ua,MeshBasicMaterial:An,MeshMatcapMaterial:Ic,LineDashedMaterial:Uc,LineBasicMaterial:Ie,Material:Te};return new e[t]}},Ra=class{static decodeText(t){if(typeof TextDecoder<\"u\")return new TextDecoder().decode(t);let e=\"\";for(let n=0,i=t.length;n<i;n++)e+=String.fromCharCode(t[n]);try{return decodeURIComponent(escape(e))}catch{return e}}static extractUrlBase(t){let e=t.lastIndexOf(\"/\");return e===-1?\"./\":t.slice(0,e+1)}static resolveURL(t,e){return typeof t!=\"string\"||t===\"\"?\"\":(/^https?:\\/\\//i.test(e)&&/^\\//.test(t)&&(e=e.replace(/(^https?:\\/\\/[^\\/]+).*/i,\"$1\")),/^(https?:)?\\/\\//i.test(t)||/^data:.*,.*$/i.test(t)||/^blob:.*$/i.test(t)?t:e+t)}},Kc=class extends Wt{constructor(){super(),this.isInstancedBufferGeometry=!0,this.type=\"InstancedBufferGeometry\",this.instanceCount=1/0}copy(t){return super.copy(t),this.instanceCount=t.instanceCount,this}toJSON(){let t=super.toJSON();return t.instanceCount=this.instanceCount,t.isInstancedBufferGeometry=!0,t}},Qc=class extends ze{constructor(t){super(t)}load(t,e,n,i){let s=this,a=new un(s.manager);a.setPath(s.path),a.setRequestHeader(s.requestHeader),a.setWithCredentials(s.withCredentials),a.load(t,function(o){try{e(s.parse(JSON.parse(o)))}catch(c){i?i(c):console.error(c),s.manager.itemError(t)}},n,i)}parse(t){let e={},n={};function i(f,m){if(e[m]!==void 0)return e[m];let g=f.interleavedBuffers[m],p=s(f,g.buffer),v=Yi(g.type,p),x=new zs(v,g.stride);return x.uuid=g.uuid,e[m]=x,x}function s(f,m){if(n[m]!==void 0)return n[m];let g=f.arrayBuffers[m],p=new Uint32Array(g).buffer;return n[m]=p,p}let a=t.isInstancedBufferGeometry?new Kc:new Wt,o=t.data.index;if(o!==void 0){let f=Yi(o.type,o.array);a.setIndex(new Jt(f,1))}let c=t.data.attributes;for(let f in c){let m=c[f],_;if(m.isInterleavedBufferAttribute){let g=i(t.data,m.data);_=new as(g,m.itemSize,m.offset,m.normalized)}else{let g=Yi(m.type,m.array),p=m.isInstancedBufferAttribute?xi:Jt;_=new p(g,m.itemSize,m.normalized)}m.name!==void 0&&(_.name=m.name),m.usage!==void 0&&_.setUsage(m.usage),a.setAttribute(f,_)}let l=t.data.morphAttributes;if(l)for(let f in l){let m=l[f],_=[];for(let g=0,p=m.length;g<p;g++){let v=m[g],x;if(v.isInterleavedBufferAttribute){let y=i(t.data,v.data);x=new as(y,v.itemSize,v.offset,v.normalized)}else{let y=Yi(v.type,v.array);x=new Jt(y,v.itemSize,v.normalized)}v.name!==void 0&&(x.name=v.name),_.push(x)}a.morphAttributes[f]=_}t.data.morphTargetsRelative&&(a.morphTargetsRelative=!0);let u=t.data.groups||t.data.drawcalls||t.data.offsets;if(u!==void 0)for(let f=0,m=u.length;f!==m;++f){let _=u[f];a.addGroup(_.start,_.count,_.materialIndex)}let d=t.data.boundingSphere;if(d!==void 0){let f=new w;d.center!==void 0&&f.fromArray(d.center),a.boundingSphere=new Ae(f,d.radius)}return t.name&&(a.name=t.name),t.userData&&(a.userData=t.userData),a}},Du=class extends ze{constructor(t){super(t)}load(t,e,n,i){let s=this,a=this.path===\"\"?Ra.extractUrlBase(t):this.path;this.resourcePath=this.resourcePath||a;let o=new un(this.manager);o.setPath(this.path),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(t,function(c){let l=null;try{l=JSON.parse(c)}catch(u){i!==void 0&&i(u),console.error(\"THREE:ObjectLoader: Can't parse \"+t+\".\",u.message);return}let h=l.metadata;if(h===void 0||h.type===void 0||h.type.toLowerCase()===\"geometry\"){i!==void 0&&i(new Error(\"THREE.ObjectLoader: Can't load \"+t)),console.error(\"THREE.ObjectLoader: Can't load \"+t);return}s.parse(l,e)},n,i)}async loadAsync(t,e){let n=this,i=this.path===\"\"?Ra.extractUrlBase(t):this.path;this.resourcePath=this.resourcePath||i;let s=new un(this.manager);s.setPath(this.path),s.setRequestHeader(this.requestHeader),s.setWithCredentials(this.withCredentials);let a=await s.loadAsync(t,e),o=JSON.parse(a),c=o.metadata;if(c===void 0||c.type===void 0||c.type.toLowerCase()===\"geometry\")throw new Error(\"THREE.ObjectLoader: Can't load \"+t);return await n.parseAsync(o)}parse(t,e){let n=this.parseAnimations(t.animations),i=this.parseShapes(t.shapes),s=this.parseGeometries(t.geometries,i),a=this.parseImages(t.images,function(){e!==void 0&&e(l)}),o=this.parseTextures(t.textures,a),c=this.parseMaterials(t.materials,o),l=this.parseObject(t.object,s,c,o,n),h=this.parseSkeletons(t.skeletons,l);if(this.bindSkeletons(l,h),e!==void 0){let u=!1;for(let d in a)if(a[d].data instanceof HTMLImageElement){u=!0;break}u===!1&&e(l)}return l}async parseAsync(t){let e=this.parseAnimations(t.animations),n=this.parseShapes(t.shapes),i=this.parseGeometries(t.geometries,n),s=await this.parseImagesAsync(t.images),a=this.parseTextures(t.textures,s),o=this.parseMaterials(t.materials,a),c=this.parseObject(t.object,i,o,a,e),l=this.parseSkeletons(t.skeletons,c);return this.bindSkeletons(c,l),c}parseShapes(t){let e={};if(t!==void 0)for(let n=0,i=t.length;n<i;n++){let s=new Gn().fromJSON(t[n]);e[s.uuid]=s}return e}parseSkeletons(t,e){let n={},i={};if(e.traverse(function(s){s.isBone&&(i[s.uuid]=s)}),t!==void 0)for(let s=0,a=t.length;s<a;s++){let o=new Ko().fromJSON(t[s],i);n[o.uuid]=o}return n}parseGeometries(t,e){let n={};if(t!==void 0){let i=new Qc;for(let s=0,a=t.length;s<a;s++){let o,c=t[s];switch(c.type){case\"BufferGeometry\":case\"InstancedBufferGeometry\":o=i.parse(c);break;default:c.type in Au?o=Au[c.type].fromJSON(c,e):console.warn(`THREE.ObjectLoader: Unsupported geometry type \"${c.type}\"`)}o.uuid=c.uuid,c.name!==void 0&&(o.name=c.name),c.userData!==void 0&&(o.userData=c.userData),n[c.uuid]=o}}return n}parseMaterials(t,e){let n={},i={};if(t!==void 0){let s=new $c;s.setTextures(e);for(let a=0,o=t.length;a<o;a++){let c=t[a];n[c.uuid]===void 0&&(n[c.uuid]=s.parse(c)),i[c.uuid]=n[c.uuid]}}return i}parseAnimations(t){let e={};if(t!==void 0)for(let n=0;n<t.length;n++){let i=t[n],s=us.parse(i);e[s.uuid]=s}return e}parseImages(t,e){let n=this,i={},s;function a(c){return n.manager.itemStart(c),s.load(c,function(){n.manager.itemEnd(c)},void 0,function(){n.manager.itemError(c),n.manager.itemEnd(c)})}function o(c){if(typeof c==\"string\"){let l=c,h=/^(\\/\\/)|([a-z]+:(\\/\\/)?)/i.test(l)?l:n.resourcePath+l;return a(h)}else return c.data?{data:Yi(c.type,c.data),width:c.width,height:c.height}:null}if(t!==void 0&&t.length>0){let c=new wa(e);s=new ds(c),s.setCrossOrigin(this.crossOrigin);for(let l=0,h=t.length;l<h;l++){let u=t[l],d=u.url;if(Array.isArray(d)){let f=[];for(let m=0,_=d.length;m<_;m++){let g=d[m],p=o(g);p!==null&&(p instanceof HTMLImageElement?f.push(p):f.push(new Hn(p.data,p.width,p.height)))}i[u.uuid]=new On(f)}else{let f=o(u.url);i[u.uuid]=new On(f)}}}return i}async parseImagesAsync(t){let e=this,n={},i;async function s(a){if(typeof a==\"string\"){let o=a,c=/^(\\/\\/)|([a-z]+:(\\/\\/)?)/i.test(o)?o:e.resourcePath+o;return await i.loadAsync(c)}else return a.data?{data:Yi(a.type,a.data),width:a.width,height:a.height}:null}if(t!==void 0&&t.length>0){i=new ds(this.manager),i.setCrossOrigin(this.crossOrigin);for(let a=0,o=t.length;a<o;a++){let c=t[a],l=c.url;if(Array.isArray(l)){let h=[];for(let u=0,d=l.length;u<d;u++){let f=l[u],m=await s(f);m!==null&&(m instanceof HTMLImageElement?h.push(m):h.push(new Hn(m.data,m.width,m.height)))}n[c.uuid]=new On(h)}else{let h=await s(c.url);n[c.uuid]=new On(h)}}}return n}parseTextures(t,e){function n(s,a){return typeof s==\"number\"?s:(console.warn(\"THREE.ObjectLoader.parseTexture: Constant should be in numeric form.\",s),a[s])}let i={};if(t!==void 0)for(let s=0,a=t.length;s<a;s++){let o=t[s];o.image===void 0&&console.warn('THREE.ObjectLoader: No \"image\" specified for',o.uuid),e[o.image]===void 0&&console.warn(\"THREE.ObjectLoader: Undefined image\",o.image);let c=e[o.image],l=c.data,h;Array.isArray(l)?(h=new ss,l.length===6&&(h.needsUpdate=!0)):(l&&l.data?h=new Hn:h=new Ee,l&&(h.needsUpdate=!0)),h.source=c,h.uuid=o.uuid,o.name!==void 0&&(h.name=o.name),o.mapping!==void 0&&(h.mapping=n(o.mapping,iv)),o.channel!==void 0&&(h.channel=o.channel),o.offset!==void 0&&h.offset.fromArray(o.offset),o.repeat!==void 0&&h.repeat.fromArray(o.repeat),o.center!==void 0&&h.center.fromArray(o.center),o.rotation!==void 0&&(h.rotation=o.rotation),o.wrap!==void 0&&(h.wrapS=n(o.wrap[0],Nu),h.wrapT=n(o.wrap[1],Nu)),o.format!==void 0&&(h.format=o.format),o.internalFormat!==void 0&&(h.internalFormat=o.internalFormat),o.type!==void 0&&(h.type=o.type),o.colorSpace!==void 0&&(h.colorSpace=o.colorSpace),o.encoding!==void 0&&(h.encoding=o.encoding),o.minFilter!==void 0&&(h.minFilter=n(o.minFilter,Ou)),o.magFilter!==void 0&&(h.magFilter=n(o.magFilter,Ou)),o.anisotropy!==void 0&&(h.anisotropy=o.anisotropy),o.flipY!==void 0&&(h.flipY=o.flipY),o.generateMipmaps!==void 0&&(h.generateMipmaps=o.generateMipmaps),o.premultiplyAlpha!==void 0&&(h.premultiplyAlpha=o.premultiplyAlpha),o.unpackAlignment!==void 0&&(h.unpackAlignment=o.unpackAlignment),o.compareFunction!==void 0&&(h.compareFunction=o.compareFunction),o.userData!==void 0&&(h.userData=o.userData),i[o.uuid]=h}return i}parseObject(t,e,n,i,s){let a;function o(d){return e[d]===void 0&&console.warn(\"THREE.ObjectLoader: Undefined geometry\",d),e[d]}function c(d){if(d!==void 0){if(Array.isArray(d)){let f=[];for(let m=0,_=d.length;m<_;m++){let g=d[m];n[g]===void 0&&console.warn(\"THREE.ObjectLoader: Undefined material\",g),f.push(n[g])}return f}return n[d]===void 0&&console.warn(\"THREE.ObjectLoader: Undefined material\",d),n[d]}}function l(d){return i[d]===void 0&&console.warn(\"THREE.ObjectLoader: Undefined texture\",d),i[d]}let h,u;switch(t.type){case\"Scene\":a=new Yo,t.background!==void 0&&(Number.isInteger(t.background)?a.background=new pt(t.background):a.background=l(t.background)),t.environment!==void 0&&(a.environment=l(t.environment)),t.fog!==void 0&&(t.fog.type===\"Fog\"?a.fog=new qo(t.fog.color,t.fog.near,t.fog.far):t.fog.type===\"FogExp2\"&&(a.fog=new Xo(t.fog.color,t.fog.density)),t.fog.name!==\"\"&&(a.fog.name=t.fog.name)),t.backgroundBlurriness!==void 0&&(a.backgroundBlurriness=t.backgroundBlurriness),t.backgroundIntensity!==void 0&&(a.backgroundIntensity=t.backgroundIntensity);break;case\"PerspectiveCamera\":a=new be(t.fov,t.aspect,t.near,t.far),t.focus!==void 0&&(a.focus=t.focus),t.zoom!==void 0&&(a.zoom=t.zoom),t.filmGauge!==void 0&&(a.filmGauge=t.filmGauge),t.filmOffset!==void 0&&(a.filmOffset=t.filmOffset),t.view!==void 0&&(a.view=Object.assign({},t.view));break;case\"OrthographicCamera\":a=new Bs(t.left,t.right,t.top,t.bottom,t.near,t.far),t.zoom!==void 0&&(a.zoom=t.zoom),t.view!==void 0&&(a.view=Object.assign({},t.view));break;case\"AmbientLight\":a=new qc(t.color,t.intensity);break;case\"DirectionalLight\":a=new Xc(t.color,t.intensity);break;case\"PointLight\":a=new Gc(t.color,t.intensity,t.distance,t.decay);break;case\"RectAreaLight\":a=new Yc(t.color,t.intensity,t.width,t.height);break;case\"SpotLight\":a=new kc(t.color,t.intensity,t.distance,t.angle,t.penumbra,t.decay);break;case\"HemisphereLight\":a=new zc(t.color,t.groundColor,t.intensity);break;case\"LightProbe\":a=new Jc().fromJSON(t);break;case\"SkinnedMesh\":h=o(t.geometry),u=c(t.material),a=new $o(h,u),t.bindMode!==void 0&&(a.bindMode=t.bindMode),t.bindMatrix!==void 0&&a.bindMatrix.fromArray(t.bindMatrix),t.skeleton!==void 0&&(a.skeleton=t.skeleton);break;case\"Mesh\":h=o(t.geometry),u=c(t.material),a=new ge(h,u);break;case\"InstancedMesh\":h=o(t.geometry),u=c(t.material);let d=t.count,f=t.instanceMatrix,m=t.instanceColor;a=new Qo(h,u,d),a.instanceMatrix=new xi(new Float32Array(f.array),16),m!==void 0&&(a.instanceColor=new xi(new Float32Array(m.array),m.itemSize));break;case\"BatchedMesh\":h=o(t.geometry),u=c(t.material),a=new tc(t.maxGeometryCount,t.maxVertexCount,t.maxIndexCount,u),a.geometry=h,a.perObjectFrustumCulled=t.perObjectFrustumCulled,a.sortObjects=t.sortObjects,a._drawRanges=t.drawRanges,a._reservedRanges=t.reservedRanges,a._visibility=t.visibility,a._active=t.active,a._bounds=t.bounds.map(_=>{let g=new Le;g.min.fromArray(_.boxMin),g.max.fromArray(_.boxMax);let p=new Ae;return p.radius=_.sphereRadius,p.center.fromArray(_.sphereCenter),{boxInitialized:_.boxInitialized,box:g,sphereInitialized:_.sphereInitialized,sphere:p}}),a._maxGeometryCount=t.maxGeometryCount,a._maxVertexCount=t.maxVertexCount,a._maxIndexCount=t.maxIndexCount,a._geometryInitialized=t.geometryInitialized,a._geometryCount=t.geometryCount,a._matricesTexture=l(t.matricesTexture.uuid);break;case\"LOD\":a=new Jo;break;case\"Line\":a=new Tn(o(t.geometry),c(t.material));break;case\"LineLoop\":a=new ec(o(t.geometry),c(t.material));break;case\"LineSegments\":a=new rn(o(t.geometry),c(t.material));break;case\"PointCloud\":case\"Points\":a=new ic(o(t.geometry),c(t.material));break;case\"Sprite\":a=new Zo(c(t.material));break;case\"Group\":a=new li;break;case\"Bone\":a=new fa;break;default:a=new Kt}if(a.uuid=t.uuid,t.name!==void 0&&(a.name=t.name),t.matrix!==void 0?(a.matrix.fromArray(t.matrix),t.matrixAutoUpdate!==void 0&&(a.matrixAutoUpdate=t.matrixAutoUpdate),a.matrixAutoUpdate&&a.matrix.decompose(a.position,a.quaternion,a.scale)):(t.position!==void 0&&a.position.fromArray(t.position),t.rotation!==void 0&&a.rotation.fromArray(t.rotation),t.quaternion!==void 0&&a.quaternion.fromArray(t.quaternion),t.scale!==void 0&&a.scale.fromArray(t.scale)),t.up!==void 0&&a.up.fromArray(t.up),t.castShadow!==void 0&&(a.castShadow=t.castShadow),t.receiveShadow!==void 0&&(a.receiveShadow=t.receiveShadow),t.shadow&&(t.shadow.bias!==void 0&&(a.shadow.bias=t.shadow.bias),t.shadow.normalBias!==void 0&&(a.shadow.normalBias=t.shadow.normalBias),t.shadow.radius!==void 0&&(a.shadow.radius=t.shadow.radius),t.shadow.mapSize!==void 0&&a.shadow.mapSize.fromArray(t.shadow.mapSize),t.shadow.camera!==void 0&&(a.shadow.camera=this.parseObject(t.shadow.camera))),t.visible!==void 0&&(a.visible=t.visible),t.frustumCulled!==void 0&&(a.frustumCulled=t.frustumCulled),t.renderOrder!==void 0&&(a.renderOrder=t.renderOrder),t.userData!==void 0&&(a.userData=t.userData),t.layers!==void 0&&(a.layers.mask=t.layers),t.children!==void 0){let d=t.children;for(let f=0;f<d.length;f++)a.add(this.parseObject(d[f],e,n,i,s))}if(t.animations!==void 0){let d=t.animations;for(let f=0;f<d.length;f++){let m=d[f];a.animations.push(s[m])}}if(t.type===\"LOD\"){t.autoUpdate!==void 0&&(a.autoUpdate=t.autoUpdate);let d=t.levels;for(let f=0;f<d.length;f++){let m=d[f],_=a.getObjectByProperty(\"uuid\",m.object);_!==void 0&&a.addLevel(_,m.distance,m.hysteresis)}}return a}bindSkeletons(t,e){Object.keys(e).length!==0&&t.traverse(function(n){if(n.isSkinnedMesh===!0&&n.skeleton!==void 0){let i=e[n.skeleton];i===void 0?console.warn(\"THREE.ObjectLoader: No skeleton found with UUID:\",n.skeleton):n.bind(i,n.bindMatrix)}})}},iv={UVMapping:rl,CubeReflectionMapping:Xn,CubeRefractionMapping:mi,EquirectangularReflectionMapping:Wr,EquirectangularRefractionMapping:Xr,CubeUVReflectionMapping:Ys},Nu={RepeatWrapping:qr,ClampToEdgeWrapping:Fe,MirroredRepeatWrapping:Yr},Ou={NearestFilter:pe,NearestMipmapNearestFilter:Co,NearestMipmapLinearFilter:Hr,LinearFilter:me,LinearMipmapNearestFilter:Cd,LinearMipmapLinearFilter:gi},Fu=class extends ze{constructor(t){super(t),this.isImageBitmapLoader=!0,typeof createImageBitmap>\"u\"&&console.warn(\"THREE.ImageBitmapLoader: createImageBitmap() not supported.\"),typeof fetch>\"u\"&&console.warn(\"THREE.ImageBitmapLoader: fetch() not supported.\"),this.options={premultiplyAlpha:\"none\"}}setOptions(t){return this.options=t,this}load(t,e,n,i){t===void 0&&(t=\"\"),this.path!==void 0&&(t=this.path+t),t=this.manager.resolveURL(t);let s=this,a=Bn.get(t);if(a!==void 0){if(s.manager.itemStart(t),a.then){a.then(l=>{e&&e(l),s.manager.itemEnd(t)}).catch(l=>{i&&i(l)});return}return setTimeout(function(){e&&e(a),s.manager.itemEnd(t)},0),a}let o={};o.credentials=this.crossOrigin===\"anonymous\"?\"same-origin\":\"include\",o.headers=this.requestHeader;let c=fetch(t,o).then(function(l){return l.blob()}).then(function(l){return createImageBitmap(l,Object.assign(s.options,{colorSpaceConversion:\"none\"}))}).then(function(l){return Bn.add(t,l),e&&e(l),s.manager.itemEnd(t),l}).catch(function(l){i&&i(l),Bn.remove(t),s.manager.itemError(t),s.manager.itemEnd(t)});Bn.add(t,c),s.manager.itemStart(t)}},Nr,Ca=class{static getContext(){return Nr===void 0&&(Nr=new(window.AudioContext||window.webkitAudioContext)),Nr}static setContext(t){Nr=t}},Bu=class extends ze{constructor(t){super(t)}load(t,e,n,i){let s=this,a=new un(this.manager);a.setResponseType(\"arraybuffer\"),a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(t,function(c){try{let l=c.slice(0);Ca.getContext().decodeAudioData(l,function(u){e(u)}).catch(o)}catch(l){o(l)}},n,i);function o(c){i?i(c):console.error(c),s.manager.itemError(t)}}},zu=new It,Vu=new It,ei=new It,ku=class{constructor(){this.type=\"StereoCamera\",this.aspect=1,this.eyeSep=.064,this.cameraL=new be,this.cameraL.layers.enable(1),this.cameraL.matrixAutoUpdate=!1,this.cameraR=new be,this.cameraR.layers.enable(2),this.cameraR.matrixAutoUpdate=!1,this._cache={focus:null,fov:null,aspect:null,near:null,far:null,zoom:null,eyeSep:null}}update(t){let e=this._cache;if(e.focus!==t.focus||e.fov!==t.fov||e.aspect!==t.aspect*this.aspect||e.near!==t.near||e.far!==t.far||e.zoom!==t.zoom||e.eyeSep!==this.eyeSep){e.focus=t.focus,e.fov=t.fov,e.aspect=t.aspect*this.aspect,e.near=t.near,e.far=t.far,e.zoom=t.zoom,e.eyeSep=this.eyeSep,ei.copy(t.projectionMatrix);let i=e.eyeSep/2,s=i*e.near/e.focus,a=e.near*Math.tan(pi*e.fov*.5)/e.zoom,o,c;Vu.elements[12]=-i,zu.elements[12]=i,o=-a*e.aspect+s,c=a*e.aspect+s,ei.elements[0]=2*e.near/(c-o),ei.elements[8]=(c+o)/(c-o),this.cameraL.projectionMatrix.copy(ei),o=-a*e.aspect-s,c=a*e.aspect-s,ei.elements[0]=2*e.near/(c-o),ei.elements[8]=(c+o)/(c-o),this.cameraR.projectionMatrix.copy(ei)}this.cameraL.matrixWorld.copy(t.matrixWorld).multiply(Vu),this.cameraR.matrixWorld.copy(t.matrixWorld).multiply(zu)}},jc=class{constructor(t=!0){this.autoStart=t,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}start(){this.startTime=Hu(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0}stop(){this.getElapsedTime(),this.running=!1,this.autoStart=!1}getElapsedTime(){return this.getDelta(),this.elapsedTime}getDelta(){let t=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){let e=Hu();t=(e-this.oldTime)/1e3,this.oldTime=e,this.elapsedTime+=t}return t}};function Hu(){return(typeof performance>\"u\"?Date:performance).now()}var ni=new w,Gu=new Be,sv=new w,ii=new w,Wu=class extends Kt{constructor(){super(),this.type=\"AudioListener\",this.context=Ca.getContext(),this.gain=this.context.createGain(),this.gain.connect(this.context.destination),this.filter=null,this.timeDelta=0,this._clock=new jc}getInput(){return this.gain}removeFilter(){return this.filter!==null&&(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination),this.gain.connect(this.context.destination),this.filter=null),this}getFilter(){return this.filter}setFilter(t){return this.filter!==null?(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination)):this.gain.disconnect(this.context.destination),this.filter=t,this.gain.connect(this.filter),this.filter.connect(this.context.destination),this}getMasterVolume(){return this.gain.gain.value}setMasterVolume(t){return this.gain.gain.setTargetAtTime(t,this.context.currentTime,.01),this}updateMatrixWorld(t){super.updateMatrixWorld(t);let e=this.context.listener,n=this.up;if(this.timeDelta=this._clock.getDelta(),this.matrixWorld.decompose(ni,Gu,sv),ii.set(0,0,-1).applyQuaternion(Gu),e.positionX){let i=this.context.currentTime+this.timeDelta;e.positionX.linearRampToValueAtTime(ni.x,i),e.positionY.linearRampToValueAtTime(ni.y,i),e.positionZ.linearRampToValueAtTime(ni.z,i),e.forwardX.linearRampToValueAtTime(ii.x,i),e.forwardY.linearRampToValueAtTime(ii.y,i),e.forwardZ.linearRampToValueAtTime(ii.z,i),e.upX.linearRampToValueAtTime(n.x,i),e.upY.linearRampToValueAtTime(n.y,i),e.upZ.linearRampToValueAtTime(n.z,i)}else e.setPosition(ni.x,ni.y,ni.z),e.setOrientation(ii.x,ii.y,ii.z,n.x,n.y,n.z)}},tl=class extends Kt{constructor(t){super(),this.type=\"Audio\",this.listener=t,this.context=t.context,this.gain=this.context.createGain(),this.gain.connect(t.getInput()),this.autoplay=!1,this.buffer=null,this.detune=0,this.loop=!1,this.loopStart=0,this.loopEnd=0,this.offset=0,this.duration=void 0,this.playbackRate=1,this.isPlaying=!1,this.hasPlaybackControl=!0,this.source=null,this.sourceType=\"empty\",this._startedAt=0,this._progress=0,this._connected=!1,this.filters=[]}getOutput(){return this.gain}setNodeSource(t){return this.hasPlaybackControl=!1,this.sourceType=\"audioNode\",this.source=t,this.connect(),this}setMediaElementSource(t){return this.hasPlaybackControl=!1,this.sourceType=\"mediaNode\",this.source=this.context.createMediaElementSource(t),this.connect(),this}setMediaStreamSource(t){return this.hasPlaybackControl=!1,this.sourceType=\"mediaStreamNode\",this.source=this.context.createMediaStreamSource(t),this.connect(),this}setBuffer(t){return this.buffer=t,this.sourceType=\"buffer\",this.autoplay&&this.play(),this}play(t=0){if(this.isPlaying===!0){console.warn(\"THREE.Audio: Audio is already playing.\");return}if(this.hasPlaybackControl===!1){console.warn(\"THREE.Audio: this Audio has no playback control.\");return}this._startedAt=this.context.currentTime+t;let e=this.context.createBufferSource();return e.buffer=this.buffer,e.loop=this.loop,e.loopStart=this.loopStart,e.loopEnd=this.loopEnd,e.onended=this.onEnded.bind(this),e.start(this._startedAt,this._progress+this.offset,this.duration),this.isPlaying=!0,this.source=e,this.setDetune(this.detune),this.setPlaybackRate(this.playbackRate),this.connect()}pause(){if(this.hasPlaybackControl===!1){console.warn(\"THREE.Audio: this Audio has no playback control.\");return}return this.isPlaying===!0&&(this._progress+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate,this.loop===!0&&(this._progress=this._progress%(this.duration||this.buffer.duration)),this.source.stop(),this.source.onended=null,this.isPlaying=!1),this}stop(){if(this.hasPlaybackControl===!1){console.warn(\"THREE.Audio: this Audio has no playback control.\");return}return this._progress=0,this.source!==null&&(this.source.stop(),this.source.onended=null),this.isPlaying=!1,this}connect(){if(this.filters.length>0){this.source.connect(this.filters[0]);for(let t=1,e=this.filters.length;t<e;t++)this.filters[t-1].connect(this.filters[t]);this.filters[this.filters.length-1].connect(this.getOutput())}else this.source.connect(this.getOutput());return this._connected=!0,this}disconnect(){if(this._connected!==!1){if(this.filters.length>0){this.source.disconnect(this.filters[0]);for(let t=1,e=this.filters.length;t<e;t++)this.filters[t-1].disconnect(this.filters[t]);this.filters[this.filters.length-1].disconnect(this.getOutput())}else this.source.disconnect(this.getOutput());return this._connected=!1,this}}getFilters(){return this.filters}setFilters(t){return t||(t=[]),this._connected===!0?(this.disconnect(),this.filters=t.slice(),this.connect()):this.filters=t.slice(),this}setDetune(t){if(this.detune=t,this.source.detune!==void 0)return this.isPlaying===!0&&this.source.detune.setTargetAtTime(this.detune,this.context.currentTime,.01),this}getDetune(){return this.detune}getFilter(){return this.getFilters()[0]}setFilter(t){return this.setFilters(t?[t]:[])}setPlaybackRate(t){if(this.hasPlaybackControl===!1){console.warn(\"THREE.Audio: this Audio has no playback control.\");return}return this.playbackRate=t,this.isPlaying===!0&&this.source.playbackRate.setTargetAtTime(this.playbackRate,this.context.currentTime,.01),this}getPlaybackRate(){return this.playbackRate}onEnded(){this.isPlaying=!1}getLoop(){return this.hasPlaybackControl===!1?(console.warn(\"THREE.Audio: this Audio has no playback control.\"),!1):this.loop}setLoop(t){if(this.hasPlaybackControl===!1){console.warn(\"THREE.Audio: this Audio has no playback control.\");return}return this.loop=t,this.isPlaying===!0&&(this.source.loop=this.loop),this}setLoopStart(t){return this.loopStart=t,this}setLoopEnd(t){return this.loopEnd=t,this}getVolume(){return this.gain.gain.value}setVolume(t){return this.gain.gain.setTargetAtTime(t,this.context.currentTime,.01),this}},si=new w,Xu=new Be,rv=new w,ri=new w,qu=class extends tl{constructor(t){super(t),this.panner=this.context.createPanner(),this.panner.panningModel=\"HRTF\",this.panner.connect(this.gain)}connect(){super.connect(),this.panner.connect(this.gain)}disconnect(){super.disconnect(),this.panner.disconnect(this.gain)}getOutput(){return this.panner}getRefDistance(){return this.panner.refDistance}setRefDistance(t){return this.panner.refDistance=t,this}getRolloffFactor(){return this.panner.rolloffFactor}setRolloffFactor(t){return this.panner.rolloffFactor=t,this}getDistanceModel(){return this.panner.distanceModel}setDistanceModel(t){return this.panner.distanceModel=t,this}getMaxDistance(){return this.panner.maxDistance}setMaxDistance(t){return this.panner.maxDistance=t,this}setDirectionalCone(t,e,n){return this.panner.coneInnerAngle=t,this.panner.coneOuterAngle=e,this.panner.coneOuterGain=n,this}updateMatrixWorld(t){if(super.updateMatrixWorld(t),this.hasPlaybackControl===!0&&this.isPlaying===!1)return;this.matrixWorld.decompose(si,Xu,rv),ri.set(0,0,1).applyQuaternion(Xu);let e=this.panner;if(e.positionX){let n=this.context.currentTime+this.listener.timeDelta;e.positionX.linearRampToValueAtTime(si.x,n),e.positionY.linearRampToValueAtTime(si.y,n),e.positionZ.linearRampToValueAtTime(si.z,n),e.orientationX.linearRampToValueAtTime(ri.x,n),e.orientationY.linearRampToValueAtTime(ri.y,n),e.orientationZ.linearRampToValueAtTime(ri.z,n)}else e.setPosition(si.x,si.y,si.z),e.setOrientation(ri.x,ri.y,ri.z)}},Yu=class{constructor(t,e=2048){this.analyser=t.context.createAnalyser(),this.analyser.fftSize=e,this.data=new Uint8Array(this.analyser.frequencyBinCount),t.getOutput().connect(this.analyser)}getFrequencyData(){return this.analyser.getByteFrequencyData(this.data),this.data}getAverageFrequency(){let t=0,e=this.getFrequencyData();for(let n=0;n<e.length;n++)t+=e[n];return t/e.length}},el=class{constructor(t,e,n){this.binding=t,this.valueSize=n;let i,s,a;switch(e){case\"quaternion\":i=this._slerp,s=this._slerpAdditive,a=this._setAdditiveIdentityQuaternion,this.buffer=new Float64Array(n*6),this._workIndex=5;break;case\"string\":case\"bool\":i=this._select,s=this._select,a=this._setAdditiveIdentityOther,this.buffer=new Array(n*5);break;default:i=this._lerp,s=this._lerpAdditive,a=this._setAdditiveIdentityNumeric,this.buffer=new Float64Array(n*5)}this._mixBufferRegion=i,this._mixBufferRegionAdditive=s,this._setIdentity=a,this._origIndex=3,this._addIndex=4,this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,this.useCount=0,this.referenceCount=0}accumulate(t,e){let n=this.buffer,i=this.valueSize,s=t*i+i,a=this.cumulativeWeight;if(a===0){for(let o=0;o!==i;++o)n[s+o]=n[o];a=e}else{a+=e;let o=e/a;this._mixBufferRegion(n,s,0,o,i)}this.cumulativeWeight=a}accumulateAdditive(t){let e=this.buffer,n=this.valueSize,i=n*this._addIndex;this.cumulativeWeightAdditive===0&&this._setIdentity(),this._mixBufferRegionAdditive(e,i,0,t,n),this.cumulativeWeightAdditive+=t}apply(t){let e=this.valueSize,n=this.buffer,i=t*e+e,s=this.cumulativeWeight,a=this.cumulativeWeightAdditive,o=this.binding;if(this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,s<1){let c=e*this._origIndex;this._mixBufferRegion(n,i,c,1-s,e)}a>0&&this._mixBufferRegionAdditive(n,i,this._addIndex*e,1,e);for(let c=e,l=e+e;c!==l;++c)if(n[c]!==n[c+e]){o.setValue(n,i);break}}saveOriginalState(){let t=this.binding,e=this.buffer,n=this.valueSize,i=n*this._origIndex;t.getValue(e,i);for(let s=n,a=i;s!==a;++s)e[s]=e[i+s%n];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){let t=this.valueSize*3;this.binding.setValue(this.buffer,t)}_setAdditiveIdentityNumeric(){let t=this._addIndex*this.valueSize,e=t+this.valueSize;for(let n=t;n<e;n++)this.buffer[n]=0}_setAdditiveIdentityQuaternion(){this._setAdditiveIdentityNumeric(),this.buffer[this._addIndex*this.valueSize+3]=1}_setAdditiveIdentityOther(){let t=this._origIndex*this.valueSize,e=this._addIndex*this.valueSize;for(let n=0;n<this.valueSize;n++)this.buffer[e+n]=this.buffer[t+n]}_select(t,e,n,i,s){if(i>=.5)for(let a=0;a!==s;++a)t[e+a]=t[n+a]}_slerp(t,e,n,i){Be.slerpFlat(t,e,t,e,t,n,i)}_slerpAdditive(t,e,n,i,s){let a=this._workIndex*s;Be.multiplyQuaternionsFlat(t,a,t,e,t,n),Be.slerpFlat(t,e,t,e,t,a,i)}_lerp(t,e,n,i,s){let a=1-i;for(let o=0;o!==s;++o){let c=e+o;t[c]=t[c]*a+t[n+o]*i}}_lerpAdditive(t,e,n,i,s){for(let a=0;a!==s;++a){let o=e+a;t[o]=t[o]+t[n+a]*i}}},fl=\"\\\\[\\\\]\\\\.:\\\\/\",av=new RegExp(\"[\"+fl+\"]\",\"g\"),pl=\"[^\"+fl+\"]\",ov=\"[^\"+fl.replace(\"\\\\.\",\"\")+\"]\",cv=/((?:WC+[\\/:])*)/.source.replace(\"WC\",pl),lv=/(WCOD+)?/.source.replace(\"WCOD\",ov),hv=/(?:\\.(WC+)(?:\\[(.+)\\])?)?/.source.replace(\"WC\",pl),uv=/\\.(WC+)(?:\\[(.+)\\])?/.source.replace(\"WC\",pl),dv=new RegExp(\"^\"+cv+lv+hv+uv+\"$\"),fv=[\"material\",\"materials\",\"bones\",\"map\"],nl=class{constructor(t,e,n){let i=n||Qt.parseTrackName(e);this._targetGroup=t,this._bindings=t.subscribe_(e,i)}getValue(t,e){this.bind();let n=this._targetGroup.nCachedObjects_,i=this._bindings[n];i!==void 0&&i.getValue(t,e)}setValue(t,e){let n=this._bindings;for(let i=this._targetGroup.nCachedObjects_,s=n.length;i!==s;++i)n[i].setValue(t,e)}bind(){let t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].bind()}unbind(){let t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].unbind()}},Qt=class r{constructor(t,e,n){this.path=e,this.parsedPath=n||r.parseTrackName(e),this.node=r.findNode(t,this.parsedPath.nodeName),this.rootNode=t,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(t,e,n){return t&&t.isAnimationObjectGroup?new r.Composite(t,e,n):new r(t,e,n)}static sanitizeNodeName(t){return t.replace(/\\s/g,\"_\").replace(av,\"\")}static parseTrackName(t){let e=dv.exec(t);if(e===null)throw new Error(\"PropertyBinding: Cannot parse trackName: \"+t);let n={nodeName:e[2],objectName:e[3],objectIndex:e[4],propertyName:e[5],propertyIndex:e[6]},i=n.nodeName&&n.nodeName.lastIndexOf(\".\");if(i!==void 0&&i!==-1){let s=n.nodeName.substring(i+1);fv.indexOf(s)!==-1&&(n.nodeName=n.nodeName.substring(0,i),n.objectName=s)}if(n.propertyName===null||n.propertyName.length===0)throw new Error(\"PropertyBinding: can not parse propertyName from trackName: \"+t);return n}static findNode(t,e){if(e===void 0||e===\"\"||e===\".\"||e===-1||e===t.name||e===t.uuid)return t;if(t.skeleton){let n=t.skeleton.getBoneByName(e);if(n!==void 0)return n}if(t.children){let n=function(s){for(let a=0;a<s.length;a++){let o=s[a];if(o.name===e||o.uuid===e)return o;let c=n(o.children);if(c)return c}return null},i=n(t.children);if(i)return i}return null}_getValue_unavailable(){}_setValue_unavailable(){}_getValue_direct(t,e){t[e]=this.targetObject[this.propertyName]}_getValue_array(t,e){let n=this.resolvedProperty;for(let i=0,s=n.length;i!==s;++i)t[e++]=n[i]}_getValue_arrayElement(t,e){t[e]=this.resolvedProperty[this.propertyIndex]}_getValue_toArray(t,e){this.resolvedProperty.toArray(t,e)}_setValue_direct(t,e){this.targetObject[this.propertyName]=t[e]}_setValue_direct_setNeedsUpdate(t,e){this.targetObject[this.propertyName]=t[e],this.targetObject.needsUpdate=!0}_setValue_direct_setMatrixWorldNeedsUpdate(t,e){this.targetObject[this.propertyName]=t[e],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_array(t,e){let n=this.resolvedProperty;for(let i=0,s=n.length;i!==s;++i)n[i]=t[e++]}_setValue_array_setNeedsUpdate(t,e){let n=this.resolvedProperty;for(let i=0,s=n.length;i!==s;++i)n[i]=t[e++];this.targetObject.needsUpdate=!0}_setValue_array_setMatrixWorldNeedsUpdate(t,e){let n=this.resolvedProperty;for(let i=0,s=n.length;i!==s;++i)n[i]=t[e++];this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_arrayElement(t,e){this.resolvedProperty[this.propertyIndex]=t[e]}_setValue_arrayElement_setNeedsUpdate(t,e){this.resolvedProperty[this.propertyIndex]=t[e],this.targetObject.needsUpdate=!0}_setValue_arrayElement_setMatrixWorldNeedsUpdate(t,e){this.resolvedProperty[this.propertyIndex]=t[e],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_fromArray(t,e){this.resolvedProperty.fromArray(t,e)}_setValue_fromArray_setNeedsUpdate(t,e){this.resolvedProperty.fromArray(t,e),this.targetObject.needsUpdate=!0}_setValue_fromArray_setMatrixWorldNeedsUpdate(t,e){this.resolvedProperty.fromArray(t,e),this.targetObject.matrixWorldNeedsUpdate=!0}_getValue_unbound(t,e){this.bind(),this.getValue(t,e)}_setValue_unbound(t,e){this.bind(),this.setValue(t,e)}bind(){let t=this.node,e=this.parsedPath,n=e.objectName,i=e.propertyName,s=e.propertyIndex;if(t||(t=r.findNode(this.rootNode,e.nodeName),this.node=t),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,!t){console.warn(\"THREE.PropertyBinding: No target node found for track: \"+this.path+\".\");return}if(n){let l=e.objectIndex;switch(n){case\"materials\":if(!t.material){console.error(\"THREE.PropertyBinding: Can not bind to material as node does not have a material.\",this);return}if(!t.material.materials){console.error(\"THREE.PropertyBinding: Can not bind to material.materials as node.material does not have a materials array.\",this);return}t=t.material.materials;break;case\"bones\":if(!t.skeleton){console.error(\"THREE.PropertyBinding: Can not bind to bones as node does not have a skeleton.\",this);return}t=t.skeleton.bones;for(let h=0;h<t.length;h++)if(t[h].name===l){l=h;break}break;case\"map\":if(\"map\"in t){t=t.map;break}if(!t.material){console.error(\"THREE.PropertyBinding: Can not bind to material as node does not have a material.\",this);return}if(!t.material.map){console.error(\"THREE.PropertyBinding: Can not bind to material.map as node.material does not have a map.\",this);return}t=t.material.map;break;default:if(t[n]===void 0){console.error(\"THREE.PropertyBinding: Can not bind to objectName of node undefined.\",this);return}t=t[n]}if(l!==void 0){if(t[l]===void 0){console.error(\"THREE.PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.\",this,t);return}t=t[l]}}let a=t[i];if(a===void 0){let l=e.nodeName;console.error(\"THREE.PropertyBinding: Trying to update property for track: \"+l+\".\"+i+\" but it wasn't found.\",t);return}let o=this.Versioning.None;this.targetObject=t,t.needsUpdate!==void 0?o=this.Versioning.NeedsUpdate:t.matrixWorldNeedsUpdate!==void 0&&(o=this.Versioning.MatrixWorldNeedsUpdate);let c=this.BindingType.Direct;if(s!==void 0){if(i===\"morphTargetInfluences\"){if(!t.geometry){console.error(\"THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.\",this);return}if(!t.geometry.morphAttributes){console.error(\"THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.\",this);return}t.morphTargetDictionary[s]!==void 0&&(s=t.morphTargetDictionary[s])}c=this.BindingType.ArrayElement,this.resolvedProperty=a,this.propertyIndex=s}else a.fromArray!==void 0&&a.toArray!==void 0?(c=this.BindingType.HasFromToArray,this.resolvedProperty=a):Array.isArray(a)?(c=this.BindingType.EntireArray,this.resolvedProperty=a):this.propertyName=i;this.getValue=this.GetterByBindingType[c],this.setValue=this.SetterByBindingTypeAndVersioning[c][o]}unbind(){this.node=null,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}};Qt.Composite=nl;Qt.prototype.BindingType={Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3};Qt.prototype.Versioning={None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2};Qt.prototype.GetterByBindingType=[Qt.prototype._getValue_direct,Qt.prototype._getValue_array,Qt.prototype._getValue_arrayElement,Qt.prototype._getValue_toArray];Qt.prototype.SetterByBindingTypeAndVersioning=[[Qt.prototype._setValue_direct,Qt.prototype._setValue_direct_setNeedsUpdate,Qt.prototype._setValue_direct_setMatrixWorldNeedsUpdate],[Qt.prototype._setValue_array,Qt.prototype._setValue_array_setNeedsUpdate,Qt.prototype._setValue_array_setMatrixWorldNeedsUpdate],[Qt.prototype._setValue_arrayElement,Qt.prototype._setValue_arrayElement_setNeedsUpdate,Qt.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate],[Qt.prototype._setValue_fromArray,Qt.prototype._setValue_fromArray_setNeedsUpdate,Qt.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate]];var Zu=class{constructor(){this.isAnimationObjectGroup=!0,this.uuid=Ye(),this._objects=Array.prototype.slice.call(arguments),this.nCachedObjects_=0;let t={};this._indicesByUUID=t;for(let n=0,i=arguments.length;n!==i;++n)t[arguments[n].uuid]=n;this._paths=[],this._parsedPaths=[],this._bindings=[],this._bindingsIndicesByPath={};let e=this;this.stats={objects:{get total(){return e._objects.length},get inUse(){return this.total-e.nCachedObjects_}},get bindingsPerObject(){return e._bindings.length}}}add(){let t=this._objects,e=this._indicesByUUID,n=this._paths,i=this._parsedPaths,s=this._bindings,a=s.length,o,c=t.length,l=this.nCachedObjects_;for(let h=0,u=arguments.length;h!==u;++h){let d=arguments[h],f=d.uuid,m=e[f];if(m===void 0){m=c++,e[f]=m,t.push(d);for(let _=0,g=a;_!==g;++_)s[_].push(new Qt(d,n[_],i[_]))}else if(m<l){o=t[m];let _=--l,g=t[_];e[g.uuid]=m,t[m]=g,e[f]=_,t[_]=d;for(let p=0,v=a;p!==v;++p){let x=s[p],y=x[_],C=x[m];x[m]=y,C===void 0&&(C=new Qt(d,n[p],i[p])),x[_]=C}}else t[m]!==o&&console.error(\"THREE.AnimationObjectGroup: Different objects with the same UUID detected. Clean the caches or recreate your infrastructure when reloading scenes.\")}this.nCachedObjects_=l}remove(){let t=this._objects,e=this._indicesByUUID,n=this._bindings,i=n.length,s=this.nCachedObjects_;for(let a=0,o=arguments.length;a!==o;++a){let c=arguments[a],l=c.uuid,h=e[l];if(h!==void 0&&h>=s){let u=s++,d=t[u];e[d.uuid]=h,t[h]=d,e[l]=u,t[u]=c;for(let f=0,m=i;f!==m;++f){let _=n[f],g=_[u],p=_[h];_[h]=g,_[u]=p}}}this.nCachedObjects_=s}uncache(){let t=this._objects,e=this._indicesByUUID,n=this._bindings,i=n.length,s=this.nCachedObjects_,a=t.length;for(let o=0,c=arguments.length;o!==c;++o){let l=arguments[o],h=l.uuid,u=e[h];if(u!==void 0)if(delete e[h],u<s){let d=--s,f=t[d],m=--a,_=t[m];e[f.uuid]=u,t[u]=f,e[_.uuid]=d,t[d]=_,t.pop();for(let g=0,p=i;g!==p;++g){let v=n[g],x=v[d],y=v[m];v[u]=x,v[d]=y,v.pop()}}else{let d=--a,f=t[d];d>0&&(e[f.uuid]=u),t[u]=f,t.pop();for(let m=0,_=i;m!==_;++m){let g=n[m];g[u]=g[d],g.pop()}}}this.nCachedObjects_=s}subscribe_(t,e){let n=this._bindingsIndicesByPath,i=n[t],s=this._bindings;if(i!==void 0)return s[i];let a=this._paths,o=this._parsedPaths,c=this._objects,l=c.length,h=this.nCachedObjects_,u=new Array(l);i=s.length,n[t]=i,a.push(t),o.push(e),s.push(u);for(let d=h,f=c.length;d!==f;++d){let m=c[d];u[d]=new Qt(m,t,e)}return u}unsubscribe_(t){let e=this._bindingsIndicesByPath,n=e[t];if(n!==void 0){let i=this._paths,s=this._parsedPaths,a=this._bindings,o=a.length-1,c=a[o],l=t[o];e[l]=n,a[n]=c,a.pop(),s[n]=s[o],s.pop(),i[n]=i[o],i.pop()}}},il=class{constructor(t,e,n=null,i=e.blendMode){this._mixer=t,this._clip=e,this._localRoot=n,this.blendMode=i;let s=e.tracks,a=s.length,o=new Array(a),c={endingStart:Xi,endingEnd:Xi};for(let l=0;l!==a;++l){let h=s[l].createInterpolant(null);o[l]=h,h.settings=c}this._interpolantSettings=c,this._interpolants=o,this._propertyBindings=new Array(a),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=Qf,this._loopCount=-1,this._startTime=null,this.time=0,this.timeScale=1,this._effectiveTimeScale=1,this.weight=1,this._effectiveWeight=1,this.repetitions=1/0,this.paused=!1,this.enabled=!0,this.clampWhenFinished=!1,this.zeroSlopeAtStart=!0,this.zeroSlopeAtEnd=!0}play(){return this._mixer._activateAction(this),this}stop(){return this._mixer._deactivateAction(this),this.reset()}reset(){return this.paused=!1,this.enabled=!0,this.time=0,this._loopCount=-1,this._startTime=null,this.stopFading().stopWarping()}isRunning(){return this.enabled&&!this.paused&&this.timeScale!==0&&this._startTime===null&&this._mixer._isActiveAction(this)}isScheduled(){return this._mixer._isActiveAction(this)}startAt(t){return this._startTime=t,this}setLoop(t,e){return this.loop=t,this.repetitions=e,this}setEffectiveWeight(t){return this.weight=t,this._effectiveWeight=this.enabled?t:0,this.stopFading()}getEffectiveWeight(){return this._effectiveWeight}fadeIn(t){return this._scheduleFading(t,0,1)}fadeOut(t){return this._scheduleFading(t,1,0)}crossFadeFrom(t,e,n){if(t.fadeOut(e),this.fadeIn(e),n){let i=this._clip.duration,s=t._clip.duration,a=s/i,o=i/s;t.warp(1,a,e),this.warp(o,1,e)}return this}crossFadeTo(t,e,n){return t.crossFadeFrom(this,e,n)}stopFading(){let t=this._weightInterpolant;return t!==null&&(this._weightInterpolant=null,this._mixer._takeBackControlInterpolant(t)),this}setEffectiveTimeScale(t){return this.timeScale=t,this._effectiveTimeScale=this.paused?0:t,this.stopWarping()}getEffectiveTimeScale(){return this._effectiveTimeScale}setDuration(t){return this.timeScale=this._clip.duration/t,this.stopWarping()}syncWith(t){return this.time=t.time,this.timeScale=t.timeScale,this.stopWarping()}halt(t){return this.warp(this._effectiveTimeScale,0,t)}warp(t,e,n){let i=this._mixer,s=i.time,a=this.timeScale,o=this._timeScaleInterpolant;o===null&&(o=i._lendControlInterpolant(),this._timeScaleInterpolant=o);let c=o.parameterPositions,l=o.sampleValues;return c[0]=s,c[1]=s+n,l[0]=t/a,l[1]=e/a,this}stopWarping(){let t=this._timeScaleInterpolant;return t!==null&&(this._timeScaleInterpolant=null,this._mixer._takeBackControlInterpolant(t)),this}getMixer(){return this._mixer}getClip(){return this._clip}getRoot(){return this._localRoot||this._mixer._root}_update(t,e,n,i){if(!this.enabled){this._updateWeight(t);return}let s=this._startTime;if(s!==null){let c=(t-s)*n;c<0||n===0?e=0:(this._startTime=null,e=n*c)}e*=this._updateTimeScale(t);let a=this._updateTime(e),o=this._updateWeight(t);if(o>0){let c=this._interpolants,l=this._propertyBindings;switch(this.blendMode){case Fd:for(let h=0,u=c.length;h!==u;++h)c[h].evaluate(a),l[h].accumulateAdditive(o);break;case ol:default:for(let h=0,u=c.length;h!==u;++h)c[h].evaluate(a),l[h].accumulate(i,o)}}}_updateWeight(t){let e=0;if(this.enabled){e=this.weight;let n=this._weightInterpolant;if(n!==null){let i=n.evaluate(t)[0];e*=i,t>n.parameterPositions[1]&&(this.stopFading(),i===0&&(this.enabled=!1))}}return this._effectiveWeight=e,e}_updateTimeScale(t){let e=0;if(!this.paused){e=this.timeScale;let n=this._timeScaleInterpolant;if(n!==null){let i=n.evaluate(t)[0];e*=i,t>n.parameterPositions[1]&&(this.stopWarping(),e===0?this.paused=!0:this.timeScale=e)}}return this._effectiveTimeScale=e,e}_updateTime(t){let e=this._clip.duration,n=this.loop,i=this.time+t,s=this._loopCount,a=n===jf;if(t===0)return s===-1?i:a&&(s&1)===1?e-i:i;if(n===Kf){s===-1&&(this._loopCount=0,this._setEndings(!0,!0,!1));t:{if(i>=e)i=e;else if(i<0)i=0;else{this.time=i;break t}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=i,this._mixer.dispatchEvent({type:\"finished\",action:this,direction:t<0?-1:1})}}else{if(s===-1&&(t>=0?(s=0,this._setEndings(!0,this.repetitions===0,a)):this._setEndings(this.repetitions===0,!0,a)),i>=e||i<0){let o=Math.floor(i/e);i-=e*o,s+=Math.abs(o);let c=this.repetitions-s;if(c<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,i=t>0?e:0,this.time=i,this._mixer.dispatchEvent({type:\"finished\",action:this,direction:t>0?1:-1});else{if(c===1){let l=t<0;this._setEndings(l,!l,a)}else this._setEndings(!1,!1,a);this._loopCount=s,this.time=i,this._mixer.dispatchEvent({type:\"loop\",action:this,loopDelta:o})}}else this.time=i;if(a&&(s&1)===1)return e-i}return i}_setEndings(t,e,n){let i=this._interpolantSettings;n?(i.endingStart=qi,i.endingEnd=qi):(t?i.endingStart=this.zeroSlopeAtStart?qi:Xi:i.endingStart=$r,e?i.endingEnd=this.zeroSlopeAtEnd?qi:Xi:i.endingEnd=$r)}_scheduleFading(t,e,n){let i=this._mixer,s=i.time,a=this._weightInterpolant;a===null&&(a=i._lendControlInterpolant(),this._weightInterpolant=a);let o=a.parameterPositions,c=a.sampleValues;return o[0]=s,c[0]=e,o[1]=s+t,c[1]=n,this}},pv=new Float32Array(1),Ju=class extends hn{constructor(t){super(),this._root=t,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}_bindAction(t,e){let n=t._localRoot||this._root,i=t._clip.tracks,s=i.length,a=t._propertyBindings,o=t._interpolants,c=n.uuid,l=this._bindingsByRootAndName,h=l[c];h===void 0&&(h={},l[c]=h);for(let u=0;u!==s;++u){let d=i[u],f=d.name,m=h[f];if(m!==void 0)++m.referenceCount,a[u]=m;else{if(m=a[u],m!==void 0){m._cacheIndex===null&&(++m.referenceCount,this._addInactiveBinding(m,c,f));continue}let _=e&&e._propertyBindings[u].binding.parsedPath;m=new el(Qt.create(n,f,_),d.ValueTypeName,d.getValueSize()),++m.referenceCount,this._addInactiveBinding(m,c,f),a[u]=m}o[u].resultBuffer=m.buffer}}_activateAction(t){if(!this._isActiveAction(t)){if(t._cacheIndex===null){let n=(t._localRoot||this._root).uuid,i=t._clip.uuid,s=this._actionsByClip[i];this._bindAction(t,s&&s.knownActions[0]),this._addInactiveAction(t,i,n)}let e=t._propertyBindings;for(let n=0,i=e.length;n!==i;++n){let s=e[n];s.useCount++===0&&(this._lendBinding(s),s.saveOriginalState())}this._lendAction(t)}}_deactivateAction(t){if(this._isActiveAction(t)){let e=t._propertyBindings;for(let n=0,i=e.length;n!==i;++n){let s=e[n];--s.useCount===0&&(s.restoreOriginalState(),this._takeBackBinding(s))}this._takeBackAction(t)}}_initMemoryManager(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;let t=this;this.stats={actions:{get total(){return t._actions.length},get inUse(){return t._nActiveActions}},bindings:{get total(){return t._bindings.length},get inUse(){return t._nActiveBindings}},controlInterpolants:{get total(){return t._controlInterpolants.length},get inUse(){return t._nActiveControlInterpolants}}}}_isActiveAction(t){let e=t._cacheIndex;return e!==null&&e<this._nActiveActions}_addInactiveAction(t,e,n){let i=this._actions,s=this._actionsByClip,a=s[e];if(a===void 0)a={knownActions:[t],actionByRoot:{}},t._byClipCacheIndex=0,s[e]=a;else{let o=a.knownActions;t._byClipCacheIndex=o.length,o.push(t)}t._cacheIndex=i.length,i.push(t),a.actionByRoot[n]=t}_removeInactiveAction(t){let e=this._actions,n=e[e.length-1],i=t._cacheIndex;n._cacheIndex=i,e[i]=n,e.pop(),t._cacheIndex=null;let s=t._clip.uuid,a=this._actionsByClip,o=a[s],c=o.knownActions,l=c[c.length-1],h=t._byClipCacheIndex;l._byClipCacheIndex=h,c[h]=l,c.pop(),t._byClipCacheIndex=null;let u=o.actionByRoot,d=(t._localRoot||this._root).uuid;delete u[d],c.length===0&&delete a[s],this._removeInactiveBindingsForAction(t)}_removeInactiveBindingsForAction(t){let e=t._propertyBindings;for(let n=0,i=e.length;n!==i;++n){let s=e[n];--s.referenceCount===0&&this._removeInactiveBinding(s)}}_lendAction(t){let e=this._actions,n=t._cacheIndex,i=this._nActiveActions++,s=e[i];t._cacheIndex=i,e[i]=t,s._cacheIndex=n,e[n]=s}_takeBackAction(t){let e=this._actions,n=t._cacheIndex,i=--this._nActiveActions,s=e[i];t._cacheIndex=i,e[i]=t,s._cacheIndex=n,e[n]=s}_addInactiveBinding(t,e,n){let i=this._bindingsByRootAndName,s=this._bindings,a=i[e];a===void 0&&(a={},i[e]=a),a[n]=t,t._cacheIndex=s.length,s.push(t)}_removeInactiveBinding(t){let e=this._bindings,n=t.binding,i=n.rootNode.uuid,s=n.path,a=this._bindingsByRootAndName,o=a[i],c=e[e.length-1],l=t._cacheIndex;c._cacheIndex=l,e[l]=c,e.pop(),delete o[s],Object.keys(o).length===0&&delete a[i]}_lendBinding(t){let e=this._bindings,n=t._cacheIndex,i=this._nActiveBindings++,s=e[i];t._cacheIndex=i,e[i]=t,s._cacheIndex=n,e[n]=s}_takeBackBinding(t){let e=this._bindings,n=t._cacheIndex,i=--this._nActiveBindings,s=e[i];t._cacheIndex=i,e[i]=t,s._cacheIndex=n,e[n]=s}_lendControlInterpolant(){let t=this._controlInterpolants,e=this._nActiveControlInterpolants++,n=t[e];return n===void 0&&(n=new Aa(new Float32Array(2),new Float32Array(2),1,pv),n.__cacheIndex=e,t[e]=n),n}_takeBackControlInterpolant(t){let e=this._controlInterpolants,n=t.__cacheIndex,i=--this._nActiveControlInterpolants,s=e[i];t.__cacheIndex=i,e[i]=t,s.__cacheIndex=n,e[n]=s}clipAction(t,e,n){let i=e||this._root,s=i.uuid,a=typeof t==\"string\"?us.findByName(i,t):t,o=a!==null?a.uuid:t,c=this._actionsByClip[o],l=null;if(n===void 0&&(a!==null?n=a.blendMode:n=ol),c!==void 0){let u=c.actionByRoot[s];if(u!==void 0&&u.blendMode===n)return u;l=c.knownActions[0],a===null&&(a=l._clip)}if(a===null)return null;let h=new il(this,a,e,n);return this._bindAction(h,l),this._addInactiveAction(h,o,s),h}existingAction(t,e){let n=e||this._root,i=n.uuid,s=typeof t==\"string\"?us.findByName(n,t):t,a=s?s.uuid:t,o=this._actionsByClip[a];return o!==void 0&&o.actionByRoot[i]||null}stopAllAction(){let t=this._actions,e=this._nActiveActions;for(let n=e-1;n>=0;--n)t[n].stop();return this}update(t){t*=this.timeScale;let e=this._actions,n=this._nActiveActions,i=this.time+=t,s=Math.sign(t),a=this._accuIndex^=1;for(let l=0;l!==n;++l)e[l]._update(i,t,s,a);let o=this._bindings,c=this._nActiveBindings;for(let l=0;l!==c;++l)o[l].apply(a);return this}setTime(t){this.time=0;for(let e=0;e<this._actions.length;e++)this._actions[e].time=0;return this.update(t)}getRoot(){return this._root}uncacheClip(t){let e=this._actions,n=t.uuid,i=this._actionsByClip,s=i[n];if(s!==void 0){let a=s.knownActions;for(let o=0,c=a.length;o!==c;++o){let l=a[o];this._deactivateAction(l);let h=l._cacheIndex,u=e[e.length-1];l._cacheIndex=null,l._byClipCacheIndex=null,u._cacheIndex=h,e[h]=u,e.pop(),this._removeInactiveBindingsForAction(l)}delete i[n]}}uncacheRoot(t){let e=t.uuid,n=this._actionsByClip;for(let a in n){let o=n[a].actionByRoot,c=o[e];c!==void 0&&(this._deactivateAction(c),this._removeInactiveAction(c))}let i=this._bindingsByRootAndName,s=i[e];if(s!==void 0)for(let a in s){let o=s[a];o.restoreOriginalState(),this._removeInactiveBinding(o)}}uncacheAction(t,e){let n=this.existingAction(t,e);n!==null&&(this._deactivateAction(n),this._removeInactiveAction(n))}},$u=class r{constructor(t){this.value=t}clone(){return new r(this.value.clone===void 0?this.value:this.value.clone())}},mv=0,Ku=class extends hn{constructor(){super(),this.isUniformsGroup=!0,Object.defineProperty(this,\"id\",{value:mv++}),this.name=\"\",this.usage=ta,this.uniforms=[]}add(t){return this.uniforms.push(t),this}remove(t){let e=this.uniforms.indexOf(t);return e!==-1&&this.uniforms.splice(e,1),this}setName(t){return this.name=t,this}setUsage(t){return this.usage=t,this}dispose(){return this.dispatchEvent({type:\"dispose\"}),this}copy(t){this.name=t.name,this.usage=t.usage;let e=t.uniforms;this.uniforms.length=0;for(let n=0,i=e.length;n<i;n++){let s=Array.isArray(e[n])?e[n]:[e[n]];for(let a=0;a<s.length;a++)this.uniforms.push(s[a].clone())}return this}clone(){return new this.constructor().copy(this)}},Qu=class extends zs{constructor(t,e,n=1){super(t,e),this.isInstancedInterleavedBuffer=!0,this.meshPerAttribute=n}copy(t){return super.copy(t),this.meshPerAttribute=t.meshPerAttribute,this}clone(t){let e=super.clone(t);return e.meshPerAttribute=this.meshPerAttribute,e}toJSON(t){let e=super.toJSON(t);return e.isInstancedInterleavedBuffer=!0,e.meshPerAttribute=this.meshPerAttribute,e}},ju=class{constructor(t,e,n,i,s){this.isGLBufferAttribute=!0,this.name=\"\",this.buffer=t,this.type=e,this.itemSize=n,this.elementSize=i,this.count=s,this.version=0}set needsUpdate(t){t===!0&&this.version++}setBuffer(t){return this.buffer=t,this}setType(t,e){return this.type=t,this.elementSize=e,this}setItemSize(t){return this.itemSize=t,this}setCount(t){return this.count=t,this}},td=class{constructor(t,e,n=0,i=1/0){this.ray=new _i(t,e),this.near=n,this.far=i,this.camera=null,this.layers=new Os,this.params={Mesh:{},Line:{threshold:1},LOD:{},Points:{threshold:1},Sprite:{}}}set(t,e){this.ray.set(t,e)}setFromCamera(t,e){e.isPerspectiveCamera?(this.ray.origin.setFromMatrixPosition(e.matrixWorld),this.ray.direction.set(t.x,t.y,.5).unproject(e).sub(this.ray.origin).normalize(),this.camera=e):e.isOrthographicCamera?(this.ray.origin.set(t.x,t.y,(e.near+e.far)/(e.near-e.far)).unproject(e),this.ray.direction.set(0,0,-1).transformDirection(e.matrixWorld),this.camera=e):console.error(\"THREE.Raycaster: Unsupported camera type: \"+e.type)}intersectObject(t,e=!0,n=[]){return sl(t,this,n,e),n.sort(ed),n}intersectObjects(t,e=!0,n=[]){for(let i=0,s=t.length;i<s;i++)sl(t[i],this,n,e);return n.sort(ed),n}};function ed(r,t){return r.distance-t.distance}function sl(r,t,e,n){if(r.layers.test(t.layers)&&r.raycast(t,e),n===!0){let i=r.children;for(let s=0,a=i.length;s<a;s++)sl(i[s],t,e,!0)}}var nd=class{constructor(t=1,e=0,n=0){return this.radius=t,this.phi=e,this.theta=n,this}set(t,e,n){return this.radius=t,this.phi=e,this.theta=n,this}copy(t){return this.radius=t.radius,this.phi=t.phi,this.theta=t.theta,this}makeSafe(){return this.phi=Math.max(1e-6,Math.min(Math.PI-1e-6,this.phi)),this}setFromVector3(t){return this.setFromCartesianCoords(t.x,t.y,t.z)}setFromCartesianCoords(t,e,n){return this.radius=Math.sqrt(t*t+e*e+n*n),this.radius===0?(this.theta=0,this.phi=0):(this.theta=Math.atan2(t,n),this.phi=Math.acos(he(e/this.radius,-1,1))),this}clone(){return new this.constructor().copy(this)}},id=class{constructor(t=1,e=0,n=0){return this.radius=t,this.theta=e,this.y=n,this}set(t,e,n){return this.radius=t,this.theta=e,this.y=n,this}copy(t){return this.radius=t.radius,this.theta=t.theta,this.y=t.y,this}setFromVector3(t){return this.setFromCartesianCoords(t.x,t.y,t.z)}setFromCartesianCoords(t,e,n){return this.radius=Math.sqrt(t*t+n*n),this.theta=Math.atan2(t,n),this.y=e,this}clone(){return new this.constructor().copy(this)}},sd=new Z,rd=class{constructor(t=new Z(1/0,1/0),e=new Z(-1/0,-1/0)){this.isBox2=!0,this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromPoints(t){this.makeEmpty();for(let e=0,n=t.length;e<n;e++)this.expandByPoint(t[e]);return this}setFromCenterAndSize(t,e){let n=sd.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(n),this.max.copy(t).add(n),this}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=1/0,this.max.x=this.max.y=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y}getCenter(t){return this.isEmpty()?t.set(0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(t){return this.isEmpty()?t.set(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}containsPoint(t){return!(t.x<this.min.x||t.x>this.max.x||t.y<this.min.y||t.y>this.max.y)}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}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))}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)}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return this.clampPoint(t,sd).distanceTo(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}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)}},ad=new w,Or=new w,od=class{constructor(t=new w,e=new w){this.start=t,this.end=e}set(t,e){return this.start.copy(t),this.end.copy(e),this}copy(t){return this.start.copy(t.start),this.end.copy(t.end),this}getCenter(t){return t.addVectors(this.start,this.end).multiplyScalar(.5)}delta(t){return t.subVectors(this.end,this.start)}distanceSq(){return this.start.distanceToSquared(this.end)}distance(){return this.start.distanceTo(this.end)}at(t,e){return this.delta(e).multiplyScalar(t).add(this.start)}closestPointToPointParameter(t,e){ad.subVectors(t,this.start),Or.subVectors(this.end,this.start);let n=Or.dot(Or),s=Or.dot(ad)/n;return e&&(s=he(s,0,1)),s}closestPointToPoint(t,e,n){let i=this.closestPointToPointParameter(t,e);return this.delta(n).multiplyScalar(i).add(this.start)}applyMatrix4(t){return this.start.applyMatrix4(t),this.end.applyMatrix4(t),this}equals(t){return t.start.equals(this.start)&&t.end.equals(this.end)}clone(){return new this.constructor().copy(this)}},cd=new w,ld=class extends Kt{constructor(t,e){super(),this.light=t,this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=e,this.type=\"SpotLightHelper\";let n=new Wt,i=[0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,-1,0,1,0,0,0,0,1,1,0,0,0,0,-1,1];for(let a=0,o=1,c=32;a<c;a++,o++){let l=a/c*Math.PI*2,h=o/c*Math.PI*2;i.push(Math.cos(l),Math.sin(l),1,Math.cos(h),Math.sin(h),1)}n.setAttribute(\"position\",new xt(i,3));let s=new Ie({fog:!1,toneMapped:!1});this.cone=new rn(n,s),this.add(this.cone),this.update()}dispose(){this.cone.geometry.dispose(),this.cone.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1);let t=this.light.distance?this.light.distance:1e3,e=t*Math.tan(this.light.angle);this.cone.scale.set(e,e,t),cd.setFromMatrixPosition(this.light.target.matrixWorld),this.cone.lookAt(cd),this.color!==void 0?this.cone.material.color.set(this.color):this.cone.material.color.copy(this.light.color)}},Dn=new w,Fr=new It,Ao=new It,hd=class extends rn{constructor(t){let e=ef(t),n=new Wt,i=[],s=[],a=new pt(0,0,1),o=new pt(0,1,0);for(let l=0;l<e.length;l++){let h=e[l];h.parent&&h.parent.isBone&&(i.push(0,0,0),i.push(0,0,0),s.push(a.r,a.g,a.b),s.push(o.r,o.g,o.b))}n.setAttribute(\"position\",new xt(i,3)),n.setAttribute(\"color\",new xt(s,3));let c=new Ie({vertexColors:!0,depthTest:!1,depthWrite:!1,toneMapped:!1,transparent:!0});super(n,c),this.isSkeletonHelper=!0,this.type=\"SkeletonHelper\",this.root=t,this.bones=e,this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1}updateMatrixWorld(t){let e=this.bones,n=this.geometry,i=n.getAttribute(\"position\");Ao.copy(this.root.matrixWorld).invert();for(let s=0,a=0;s<e.length;s++){let o=e[s];o.parent&&o.parent.isBone&&(Fr.multiplyMatrices(Ao,o.matrixWorld),Dn.setFromMatrixPosition(Fr),i.setXYZ(a,Dn.x,Dn.y,Dn.z),Fr.multiplyMatrices(Ao,o.parent.matrixWorld),Dn.setFromMatrixPosition(Fr),i.setXYZ(a+1,Dn.x,Dn.y,Dn.z),a+=2)}n.getAttribute(\"position\").needsUpdate=!0,super.updateMatrixWorld(t)}dispose(){this.geometry.dispose(),this.material.dispose()}};function ef(r){let t=[];r.isBone===!0&&t.push(r);for(let e=0;e<r.children.length;e++)t.push.apply(t,ef(r.children[e]));return t}var ud=class extends ge{constructor(t,e,n){let i=new ba(e,4,2),s=new An({wireframe:!0,fog:!1,toneMapped:!1});super(i,s),this.light=t,this.color=n,this.type=\"PointLightHelper\",this.matrix=this.light.matrixWorld,this.matrixAutoUpdate=!1,this.update()}dispose(){this.geometry.dispose(),this.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.color!==void 0?this.material.color.set(this.color):this.material.color.copy(this.light.color)}},gv=new w,dd=new pt,fd=new pt,pd=class extends Kt{constructor(t,e,n){super(),this.light=t,this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=n,this.type=\"HemisphereLightHelper\";let i=new Sa(e);i.rotateY(Math.PI*.5),this.material=new An({wireframe:!0,fog:!1,toneMapped:!1}),this.color===void 0&&(this.material.vertexColors=!0);let s=i.getAttribute(\"position\"),a=new Float32Array(s.count*3);i.setAttribute(\"color\",new Jt(a,3)),this.add(new ge(i,this.material)),this.update()}dispose(){this.children[0].geometry.dispose(),this.children[0].material.dispose()}update(){let t=this.children[0];if(this.color!==void 0)this.material.color.set(this.color);else{let e=t.geometry.getAttribute(\"color\");dd.copy(this.light.color),fd.copy(this.light.groundColor);for(let n=0,i=e.count;n<i;n++){let s=n<i/2?dd:fd;e.setXYZ(n,s.r,s.g,s.b)}e.needsUpdate=!0}this.light.updateWorldMatrix(!0,!1),t.lookAt(gv.setFromMatrixPosition(this.light.matrixWorld).negate())}},md=class extends rn{constructor(t=10,e=10,n=4473924,i=8947848){n=new pt(n),i=new pt(i);let s=e/2,a=t/e,o=t/2,c=[],l=[];for(let d=0,f=0,m=-o;d<=e;d++,m+=a){c.push(-o,0,m,o,0,m),c.push(m,0,-o,m,0,o);let _=d===s?n:i;_.toArray(l,f),f+=3,_.toArray(l,f),f+=3,_.toArray(l,f),f+=3,_.toArray(l,f),f+=3}let h=new Wt;h.setAttribute(\"position\",new xt(c,3)),h.setAttribute(\"color\",new xt(l,3));let u=new Ie({vertexColors:!0,toneMapped:!1});super(h,u),this.type=\"GridHelper\"}dispose(){this.geometry.dispose(),this.material.dispose()}},gd=class extends rn{constructor(t=10,e=16,n=8,i=64,s=4473924,a=8947848){s=new pt(s),a=new pt(a);let o=[],c=[];if(e>1)for(let u=0;u<e;u++){let d=u/e*(Math.PI*2),f=Math.sin(d)*t,m=Math.cos(d)*t;o.push(0,0,0),o.push(f,0,m);let _=u&1?s:a;c.push(_.r,_.g,_.b),c.push(_.r,_.g,_.b)}for(let u=0;u<n;u++){let d=u&1?s:a,f=t-t/n*u;for(let m=0;m<i;m++){let _=m/i*(Math.PI*2),g=Math.sin(_)*f,p=Math.cos(_)*f;o.push(g,0,p),c.push(d.r,d.g,d.b),_=(m+1)/i*(Math.PI*2),g=Math.sin(_)*f,p=Math.cos(_)*f,o.push(g,0,p),c.push(d.r,d.g,d.b)}}let l=new Wt;l.setAttribute(\"position\",new xt(o,3)),l.setAttribute(\"color\",new xt(c,3));let h=new Ie({vertexColors:!0,toneMapped:!1});super(l,h),this.type=\"PolarGridHelper\"}dispose(){this.geometry.dispose(),this.material.dispose()}},_d=new w,Br=new w,xd=new w,vd=class extends Kt{constructor(t,e,n){super(),this.light=t,this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=n,this.type=\"DirectionalLightHelper\",e===void 0&&(e=1);let i=new Wt;i.setAttribute(\"position\",new xt([-e,e,0,e,e,0,e,-e,0,-e,-e,0,-e,e,0],3));let s=new Ie({fog:!1,toneMapped:!1});this.lightPlane=new Tn(i,s),this.add(this.lightPlane),i=new Wt,i.setAttribute(\"position\",new xt([0,0,0,0,0,1],3)),this.targetLine=new Tn(i,s),this.add(this.targetLine),this.update()}dispose(){this.lightPlane.geometry.dispose(),this.lightPlane.material.dispose(),this.targetLine.geometry.dispose(),this.targetLine.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1),_d.setFromMatrixPosition(this.light.matrixWorld),Br.setFromMatrixPosition(this.light.target.matrixWorld),xd.subVectors(Br,_d),this.lightPlane.lookAt(Br),this.color!==void 0?(this.lightPlane.material.color.set(this.color),this.targetLine.material.color.set(this.color)):(this.lightPlane.material.color.copy(this.light.color),this.targetLine.material.color.copy(this.light.color)),this.targetLine.lookAt(Br),this.targetLine.scale.z=xd.length()}},zr=new w,le=new Fs,yd=class extends rn{constructor(t){let e=new Wt,n=new Ie({color:16777215,vertexColors:!0,toneMapped:!1}),i=[],s=[],a={};o(\"n1\",\"n2\"),o(\"n2\",\"n4\"),o(\"n4\",\"n3\"),o(\"n3\",\"n1\"),o(\"f1\",\"f2\"),o(\"f2\",\"f4\"),o(\"f4\",\"f3\"),o(\"f3\",\"f1\"),o(\"n1\",\"f1\"),o(\"n2\",\"f2\"),o(\"n3\",\"f3\"),o(\"n4\",\"f4\"),o(\"p\",\"n1\"),o(\"p\",\"n2\"),o(\"p\",\"n3\"),o(\"p\",\"n4\"),o(\"u1\",\"u2\"),o(\"u2\",\"u3\"),o(\"u3\",\"u1\"),o(\"c\",\"t\"),o(\"p\",\"c\"),o(\"cn1\",\"cn2\"),o(\"cn3\",\"cn4\"),o(\"cf1\",\"cf2\"),o(\"cf3\",\"cf4\");function o(m,_){c(m),c(_)}function c(m){i.push(0,0,0),s.push(0,0,0),a[m]===void 0&&(a[m]=[]),a[m].push(i.length/3-1)}e.setAttribute(\"position\",new xt(i,3)),e.setAttribute(\"color\",new xt(s,3)),super(e,n),this.type=\"CameraHelper\",this.camera=t,this.camera.updateProjectionMatrix&&this.camera.updateProjectionMatrix(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.pointMap=a,this.update();let l=new pt(16755200),h=new pt(16711680),u=new pt(43775),d=new pt(16777215),f=new pt(3355443);this.setColors(l,h,u,d,f)}setColors(t,e,n,i,s){let o=this.geometry.getAttribute(\"color\");o.setXYZ(0,t.r,t.g,t.b),o.setXYZ(1,t.r,t.g,t.b),o.setXYZ(2,t.r,t.g,t.b),o.setXYZ(3,t.r,t.g,t.b),o.setXYZ(4,t.r,t.g,t.b),o.setXYZ(5,t.r,t.g,t.b),o.setXYZ(6,t.r,t.g,t.b),o.setXYZ(7,t.r,t.g,t.b),o.setXYZ(8,t.r,t.g,t.b),o.setXYZ(9,t.r,t.g,t.b),o.setXYZ(10,t.r,t.g,t.b),o.setXYZ(11,t.r,t.g,t.b),o.setXYZ(12,t.r,t.g,t.b),o.setXYZ(13,t.r,t.g,t.b),o.setXYZ(14,t.r,t.g,t.b),o.setXYZ(15,t.r,t.g,t.b),o.setXYZ(16,t.r,t.g,t.b),o.setXYZ(17,t.r,t.g,t.b),o.setXYZ(18,t.r,t.g,t.b),o.setXYZ(19,t.r,t.g,t.b),o.setXYZ(20,t.r,t.g,t.b),o.setXYZ(21,t.r,t.g,t.b),o.setXYZ(22,t.r,t.g,t.b),o.setXYZ(23,t.r,t.g,t.b),o.setXYZ(24,e.r,e.g,e.b),o.setXYZ(25,e.r,e.g,e.b),o.setXYZ(26,e.r,e.g,e.b),o.setXYZ(27,e.r,e.g,e.b),o.setXYZ(28,e.r,e.g,e.b),o.setXYZ(29,e.r,e.g,e.b),o.setXYZ(30,e.r,e.g,e.b),o.setXYZ(31,e.r,e.g,e.b),o.setXYZ(32,n.r,n.g,n.b),o.setXYZ(33,n.r,n.g,n.b),o.setXYZ(34,n.r,n.g,n.b),o.setXYZ(35,n.r,n.g,n.b),o.setXYZ(36,n.r,n.g,n.b),o.setXYZ(37,n.r,n.g,n.b),o.setXYZ(38,i.r,i.g,i.b),o.setXYZ(39,i.r,i.g,i.b),o.setXYZ(40,s.r,s.g,s.b),o.setXYZ(41,s.r,s.g,s.b),o.setXYZ(42,s.r,s.g,s.b),o.setXYZ(43,s.r,s.g,s.b),o.setXYZ(44,s.r,s.g,s.b),o.setXYZ(45,s.r,s.g,s.b),o.setXYZ(46,s.r,s.g,s.b),o.setXYZ(47,s.r,s.g,s.b),o.setXYZ(48,s.r,s.g,s.b),o.setXYZ(49,s.r,s.g,s.b),o.needsUpdate=!0}update(){let t=this.geometry,e=this.pointMap,n=1,i=1;le.projectionMatrixInverse.copy(this.camera.projectionMatrixInverse),de(\"c\",e,t,le,0,0,-1),de(\"t\",e,t,le,0,0,1),de(\"n1\",e,t,le,-n,-i,-1),de(\"n2\",e,t,le,n,-i,-1),de(\"n3\",e,t,le,-n,i,-1),de(\"n4\",e,t,le,n,i,-1),de(\"f1\",e,t,le,-n,-i,1),de(\"f2\",e,t,le,n,-i,1),de(\"f3\",e,t,le,-n,i,1),de(\"f4\",e,t,le,n,i,1),de(\"u1\",e,t,le,n*.7,i*1.1,-1),de(\"u2\",e,t,le,-n*.7,i*1.1,-1),de(\"u3\",e,t,le,0,i*2,-1),de(\"cf1\",e,t,le,-n,0,1),de(\"cf2\",e,t,le,n,0,1),de(\"cf3\",e,t,le,0,-i,1),de(\"cf4\",e,t,le,0,i,1),de(\"cn1\",e,t,le,-n,0,-1),de(\"cn2\",e,t,le,n,0,-1),de(\"cn3\",e,t,le,0,-i,-1),de(\"cn4\",e,t,le,0,i,-1),t.getAttribute(\"position\").needsUpdate=!0}dispose(){this.geometry.dispose(),this.material.dispose()}};function de(r,t,e,n,i,s,a){zr.set(i,s,a).unproject(n);let o=t[r];if(o!==void 0){let c=e.getAttribute(\"position\");for(let l=0,h=o.length;l<h;l++)c.setXYZ(o[l],zr.x,zr.y,zr.z)}}var Vr=new Le,Md=class extends rn{constructor(t,e=16776960){let n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),i=new Float32Array(24),s=new Wt;s.setIndex(new Jt(n,1)),s.setAttribute(\"position\",new Jt(i,3)),super(s,new Ie({color:e,toneMapped:!1})),this.object=t,this.type=\"BoxHelper\",this.matrixAutoUpdate=!1,this.update()}update(t){if(t!==void 0&&console.warn(\"THREE.BoxHelper: .update() has no longer arguments.\"),this.object!==void 0&&Vr.setFromObject(this.object),Vr.isEmpty())return;let e=Vr.min,n=Vr.max,i=this.geometry.attributes.position,s=i.array;s[0]=n.x,s[1]=n.y,s[2]=n.z,s[3]=e.x,s[4]=n.y,s[5]=n.z,s[6]=e.x,s[7]=e.y,s[8]=n.z,s[9]=n.x,s[10]=e.y,s[11]=n.z,s[12]=n.x,s[13]=n.y,s[14]=e.z,s[15]=e.x,s[16]=n.y,s[17]=e.z,s[18]=e.x,s[19]=e.y,s[20]=e.z,s[21]=n.x,s[22]=e.y,s[23]=e.z,i.needsUpdate=!0,this.geometry.computeBoundingSphere()}setFromObject(t){return this.object=t,this.update(),this}copy(t,e){return super.copy(t,e),this.object=t.object,this}dispose(){this.geometry.dispose(),this.material.dispose()}},Sd=class extends rn{constructor(t,e=16776960){let n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),i=[1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1],s=new Wt;s.setIndex(new Jt(n,1)),s.setAttribute(\"position\",new xt(i,3)),super(s,new Ie({color:e,toneMapped:!1})),this.box=t,this.type=\"Box3Helper\",this.geometry.computeBoundingSphere()}updateMatrixWorld(t){let e=this.box;e.isEmpty()||(e.getCenter(this.position),e.getSize(this.scale),this.scale.multiplyScalar(.5),super.updateMatrixWorld(t))}dispose(){this.geometry.dispose(),this.material.dispose()}},bd=class extends Tn{constructor(t,e=1,n=16776960){let i=n,s=[1,-1,0,-1,1,0,-1,-1,0,1,1,0,-1,1,0,-1,-1,0,1,-1,0,1,1,0],a=new Wt;a.setAttribute(\"position\",new xt(s,3)),a.computeBoundingSphere(),super(a,new Ie({color:i,toneMapped:!1})),this.type=\"PlaneHelper\",this.plane=t,this.size=e;let o=[1,1,0,-1,1,0,-1,-1,0,1,1,0,-1,-1,0,1,-1,0],c=new Wt;c.setAttribute(\"position\",new xt(o,3)),c.computeBoundingSphere(),this.add(new ge(c,new An({color:i,opacity:.2,transparent:!0,depthWrite:!1,toneMapped:!1})))}updateMatrixWorld(t){this.position.set(0,0,0),this.scale.set(.5*this.size,.5*this.size,1),this.lookAt(this.plane.normal),this.translateZ(-this.plane.constant),super.updateMatrixWorld(t)}dispose(){this.geometry.dispose(),this.material.dispose(),this.children[0].geometry.dispose(),this.children[0].material.dispose()}},Ed=new w,kr,To,Ad=class extends Kt{constructor(t=new w(0,0,1),e=new w(0,0,0),n=1,i=16776960,s=n*.2,a=s*.2){super(),this.type=\"ArrowHelper\",kr===void 0&&(kr=new Wt,kr.setAttribute(\"position\",new xt([0,0,0,0,1,0],3)),To=new Hs(0,.5,1,5,1),To.translate(0,-.5,0)),this.position.copy(e),this.line=new Tn(kr,new Ie({color:i,toneMapped:!1})),this.line.matrixAutoUpdate=!1,this.add(this.line),this.cone=new ge(To,new An({color:i,toneMapped:!1})),this.cone.matrixAutoUpdate=!1,this.add(this.cone),this.setDirection(t),this.setLength(n,s,a)}setDirection(t){if(t.y>.99999)this.quaternion.set(0,0,0,1);else if(t.y<-.99999)this.quaternion.set(1,0,0,0);else{Ed.set(t.z,0,-t.x).normalize();let e=Math.acos(t.y);this.quaternion.setFromAxisAngle(Ed,e)}}setLength(t,e=t*.2,n=e*.2){this.line.scale.set(1,Math.max(1e-4,t-e),1),this.line.updateMatrix(),this.cone.scale.set(n,e,n),this.cone.position.y=t,this.cone.updateMatrix()}setColor(t){this.line.material.color.set(t),this.cone.material.color.set(t)}copy(t){return super.copy(t,!1),this.line.copy(t.line),this.cone.copy(t.cone),this}dispose(){this.line.geometry.dispose(),this.line.material.dispose(),this.cone.geometry.dispose(),this.cone.material.dispose()}},Td=class extends rn{constructor(t=1){let e=[0,0,0,t,0,0,0,0,0,0,t,0,0,0,0,0,0,t],n=[1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],i=new Wt;i.setAttribute(\"position\",new xt(e,3)),i.setAttribute(\"color\",new xt(n,3));let s=new Ie({vertexColors:!0,toneMapped:!1});super(i,s),this.type=\"AxesHelper\"}setColors(t,e,n){let i=new pt,s=this.geometry.attributes.color.array;return i.set(t),i.toArray(s,0),i.toArray(s,3),i.set(e),i.toArray(s,6),i.toArray(s,9),i.set(n),i.toArray(s,12),i.toArray(s,15),this.geometry.attributes.color.needsUpdate=!0,this}dispose(){this.geometry.dispose(),this.material.dispose()}},wd=class{constructor(){this.type=\"ShapePath\",this.color=new pt,this.subPaths=[],this.currentPath=null}moveTo(t,e){return this.currentPath=new os,this.subPaths.push(this.currentPath),this.currentPath.moveTo(t,e),this}lineTo(t,e){return this.currentPath.lineTo(t,e),this}quadraticCurveTo(t,e,n,i){return this.currentPath.quadraticCurveTo(t,e,n,i),this}bezierCurveTo(t,e,n,i,s,a){return this.currentPath.bezierCurveTo(t,e,n,i,s,a),this}splineThru(t){return this.currentPath.splineThru(t),this}toShapes(t){function e(p){let v=[];for(let x=0,y=p.length;x<y;x++){let C=p[x],T=new Gn;T.curves=C.curves,v.push(T)}return v}function n(p,v){let x=v.length,y=!1;for(let C=x-1,T=0;T<x;C=T++){let R=v[C],U=v[T],S=U.x-R.x,E=U.y-R.y;if(Math.abs(E)>Number.EPSILON){if(E<0&&(R=v[T],S=-S,U=v[C],E=-E),p.y<R.y||p.y>U.y)continue;if(p.y===R.y){if(p.x===R.x)return!0}else{let N=E*(p.x-R.x)-S*(p.y-R.y);if(N===0)return!0;if(N<0)continue;y=!y}}else{if(p.y!==R.y)continue;if(U.x<=p.x&&p.x<=R.x||R.x<=p.x&&p.x<=U.x)return!0}}return y}let i=bn.isClockWise,s=this.subPaths;if(s.length===0)return[];let a,o,c,l=[];if(s.length===1)return o=s[0],c=new Gn,c.curves=o.curves,l.push(c),l;let h=!i(s[0].getPoints());h=t?!h:h;let u=[],d=[],f=[],m=0,_;d[m]=void 0,f[m]=[];for(let p=0,v=s.length;p<v;p++)o=s[p],_=o.getPoints(),a=i(_),a=t?!a:a,a?(!h&&d[m]&&m++,d[m]={s:new Gn,p:_},d[m].s.curves=o.curves,h&&m++,f[m]=[]):f[m].push({h:o,p:_[0]});if(!d[0])return e(s);if(d.length>1){let p=!1,v=0;for(let x=0,y=d.length;x<y;x++)u[x]=[];for(let x=0,y=d.length;x<y;x++){let C=f[x];for(let T=0;T<C.length;T++){let R=C[T],U=!0;for(let S=0;S<d.length;S++)n(R.p,d[S].p)&&(x!==S&&v++,U?(U=!1,u[S].push(R)):p=!0);U&&u[x].push(R)}}v>0&&p===!1&&(f=u)}let g;for(let p=0,v=d.length;p<v;p++){c=d[p].s,l.push(c),g=f[p];for(let x=0,y=g.length;x<y;x++)c.holes.push(g[x].h)}return l}};typeof __THREE_DEVTOOLS__<\"u\"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(\"register\",{detail:{revision:\"160\"}}));typeof window<\"u\"&&(window.__THREE__?console.warn(\"WARNING: Multiple instances of Three.js being imported.\"):window.__THREE__=\"160\");export{zf as ACESFilmicToneMapping,oi as AddEquation,Nf as AddOperation,Fd as AdditiveAnimationBlendMode,Sl as AdditiveBlending,kf as AgXToneMapping,Xf as AlphaFormat,lp as AlwaysCompare,Rf as AlwaysDepth,jl as AlwaysStencilFunc,qc as AmbientLight,il as AnimationAction,us as AnimationClip,Tu as AnimationLoader,Ju as AnimationMixer,Zu as AnimationObjectGroup,ey as AnimationUtils,sc as ArcCurve,ko as ArrayCamera,Ad as ArrowHelper,wl as AttachedBindMode,tl as Audio,Yu as AudioAnalyser,Ca as AudioContext,Wu as AudioListener,Bu as AudioLoader,Td as AxesHelper,He as BackSide,tp as BasicDepthPacking,Mv as BasicShadowMap,tc as BatchedMesh,fa as Bone,qn as BooleanKeyframeTrack,rd as Box2,Le as Box3,Sd as Box3Helper,ns as BoxGeometry,Md as BoxHelper,Jt as BufferAttribute,Wt as BufferGeometry,Qc as BufferGeometryLoader,Gf as ByteType,Bn as Cache,Fs as Camera,yd as CameraHelper,vu as CanvasTexture,lc as CapsuleGeometry,rc as CatmullRomCurve3,Bf as CineonToneMapping,hc as CircleGeometry,Fe as ClampToEdgeWrapping,jc as Clock,pt as Color,Ta as ColorKeyframeTrack,jt as ColorManagement,_u as CompressedArrayTexture,xu as CompressedCubeTexture,Vs as CompressedTexture,wu as CompressedTextureLoader,uc as ConeGeometry,Af as ConstantAlphaFactor,bf as ConstantColorFactor,Uo as CubeCamera,Xn as CubeReflectionMapping,mi as CubeRefractionMapping,ss as CubeTexture,Ru as CubeTextureLoader,Ys as CubeUVReflectionMapping,ma as CubicBezierCurve,ac as CubicBezierCurve3,Nc as CubicInterpolant,Ml as CullFaceBack,lf as CullFaceFront,yv as CullFaceFrontBack,cf as CullFaceNone,Qe as Curve,cc as CurvePath,uf as CustomBlending,Vf as CustomToneMapping,Hs as CylinderGeometry,id as Cylindrical,ia as Data3DTexture,Ns as DataArrayTexture,Hn as DataTexture,Cu as DataTextureLoader,ty as DataUtils,Uv as DecrementStencilOp,Nv as DecrementWrapStencilOp,nv as DefaultLoadingManager,di as DepthFormat,ts as DepthStencilFormat,la as DepthTexture,Hf as DetachedBindMode,Xc as DirectionalLight,vd as DirectionalLightHelper,Oc as DiscreteInterpolant,cl as DisplayP3ColorSpace,dc as DodecahedronGeometry,Mn as DoubleSide,xf as DstAlphaFactor,yf as DstColorFactor,$v as DynamicCopyUsage,Wv as DynamicDrawUsage,Yv as DynamicReadUsage,fc as EdgesGeometry,ks as EllipseCurve,rp as EqualCompare,Pf as EqualDepth,zv as EqualStencilFunc,Wr as EquirectangularReflectionMapping,Xr as EquirectangularRefractionMapping,sa as Euler,hn as EventDispatcher,gc as ExtrudeGeometry,un as FileLoader,Mh as Float16BufferAttribute,xt as Float32BufferAttribute,Sh as Float64BufferAttribute,cn as FloatType,qo as Fog,Xo as FogExp2,gu as FramebufferTexture,Wn as FrontSide,rs as Frustum,ju as GLBufferAttribute,Qv as GLSL1,th as GLSL3,ap as GreaterCompare,If as GreaterDepth,cp as GreaterEqualCompare,Lf as GreaterEqualDepth,Gv as GreaterEqualStencilFunc,kv as GreaterStencilFunc,md as GridHelper,li as Group,Is as HalfFloatType,zc as HemisphereLight,pd as HemisphereLightHelper,_c as IcosahedronGeometry,Fu as ImageBitmapLoader,ds as ImageLoader,na as ImageUtils,Iv as IncrementStencilOp,Dv as IncrementWrapStencilOp,xi as InstancedBufferAttribute,Kc as InstancedBufferGeometry,Qu as InstancedInterleavedBuffer,Qo as InstancedMesh,vh as Int16BufferAttribute,yh as Int32BufferAttribute,gh as Int8BufferAttribute,Pd as IntType,zs as InterleavedBuffer,as as InterleavedBufferAttribute,cs as Interpolant,Zr as InterpolateDiscrete,Jr as InterpolateLinear,Ga as InterpolateSmooth,Ov as InvertStencilOp,bi as KeepStencilOp,je as KeyframeTrack,Jo as LOD,Ma as LatheGeometry,Os as Layers,sp as LessCompare,Cf as LessDepth,zd as LessEqualCompare,Gr as LessEqualDepth,Vv as LessEqualStencilFunc,Bv as LessStencilFunc,wn as Light,Jc as LightProbe,Tn as Line,od as Line3,Ie as LineBasicMaterial,ga as LineCurve,oc as LineCurve3,Uc as LineDashedMaterial,ec as LineLoop,rn as LineSegments,La as LinearDisplayP3ColorSpace,Bd as LinearEncoding,me as LinearFilter,Aa as LinearInterpolant,Tv as LinearMipMapLinearFilter,Av as LinearMipMapNearestFilter,gi as LinearMipmapLinearFilter,Cd as LinearMipmapNearestFilter,En as LinearSRGBColorSpace,Of as LinearToneMapping,Kr as LinearTransfer,ze as Loader,Ra as LoaderUtils,wa as LoadingManager,Kf as LoopOnce,jf as LoopPingPong,Qf as LoopRepeat,Yf as LuminanceAlphaFormat,qf as LuminanceFormat,xv as MOUSE,Te as Material,$c as MaterialLoader,jv as MathUtils,Gt as Matrix3,It as Matrix4,Tl as MaxEquation,ge as Mesh,An as MeshBasicMaterial,ha as MeshDepthMaterial,ua as MeshDistanceMaterial,Lc as MeshLambertMaterial,Ic as MeshMatcapMaterial,Pc as MeshNormalMaterial,Rc as MeshPhongMaterial,wc as MeshPhysicalMaterial,Ea as MeshStandardMaterial,Cc as MeshToonMaterial,Al as MinEquation,Yr as MirroredRepeatWrapping,Df as MixOperation,El as MultiplyBlending,Pa as MultiplyOperation,pe as NearestFilter,Ev as NearestMipMapLinearFilter,bv as NearestMipMapNearestFilter,Hr as NearestMipmapLinearFilter,Co as NearestMipmapNearestFilter,ip as NeverCompare,wf as NeverDepth,Fv as NeverStencilFunc,zn as NoBlending,$e as NoColorSpace,Vn as NoToneMapping,ol as NormalAnimationBlendMode,Ki as NormalBlending,op as NotEqualCompare,Uf as NotEqualDepth,Hv as NotEqualStencilFunc,ls as NumberKeyframeTrack,Kt as Object3D,Du as ObjectLoader,np as ObjectSpaceNormalMap,Sa as OctahedronGeometry,mf as OneFactor,Tf as OneMinusConstantAlphaFactor,Ef as OneMinusConstantColorFactor,vf as OneMinusDstAlphaFactor,Mf as OneMinusDstColorFactor,Ro as OneMinusSrcAlphaFactor,_f as OneMinusSrcColorFactor,Bs as OrthographicCamera,jr as P3Primaries,Rd as PCFShadowMap,hf as PCFSoftShadowMap,ca as PMREMGenerator,os as Path,be as PerspectiveCamera,yn as Plane,oa as PlaneGeometry,bd as PlaneHelper,Gc as PointLight,ud as PointLightHelper,ic as Points,pa as PointsMaterial,gd as PolarGridHelper,vi as PolyhedronGeometry,qu as PositionalAudio,Qt as PropertyBinding,el as PropertyMixer,_a as QuadraticBezierCurve,xa as QuadraticBezierCurve3,Be as Quaternion,Mi as QuaternionKeyframeTrack,Fc as QuaternionLinearInterpolant,Kl as RED_GREEN_RGTC2_Format,$f as RED_RGTC1_Format,_v as REVISION,ep as RGBADepthPacking,qe as RGBAFormat,Nd as RGBAIntegerFormat,Xl as RGBA_ASTC_10x10_Format,Hl as RGBA_ASTC_10x5_Format,Gl as RGBA_ASTC_10x6_Format,Wl as RGBA_ASTC_10x8_Format,ql as RGBA_ASTC_12x10_Format,Yl as RGBA_ASTC_12x12_Format,Dl as RGBA_ASTC_4x4_Format,Nl as RGBA_ASTC_5x4_Format,Ol as RGBA_ASTC_5x5_Format,Fl as RGBA_ASTC_6x5_Format,Bl as RGBA_ASTC_6x6_Format,zl as RGBA_ASTC_8x5_Format,Vl as RGBA_ASTC_8x6_Format,kl as RGBA_ASTC_8x8_Format,Ha as RGBA_BPTC_Format,Ul as RGBA_ETC2_EAC_Format,Ll as RGBA_PVRTC_2BPPV1_Format,Pl as RGBA_PVRTC_4BPPV1_Format,za as RGBA_S3TC_DXT1_Format,Va as RGBA_S3TC_DXT3_Format,ka as RGBA_S3TC_DXT5_Format,Zl as RGB_BPTC_SIGNED_Format,Jl as RGB_BPTC_UNSIGNED_Format,Od as RGB_ETC1_Format,Il as RGB_ETC2_Format,Cl as RGB_PVRTC_2BPPV1_Format,Rl as RGB_PVRTC_4BPPV1_Format,Ba as RGB_S3TC_DXT1_Format,Jf as RGFormat,Dd as RGIntegerFormat,Tc as RawShaderMaterial,_i as Ray,td as Raycaster,Qr as Rec709Primaries,Yc as RectAreaLight,Zf as RedFormat,Ud as RedIntegerFormat,Ff as ReinhardToneMapping,Io as RenderTarget,qr as RepeatWrapping,Lv as ReplaceStencilOp,ff as ReverseSubtractEquation,xc as RingGeometry,Ql as SIGNED_RED_GREEN_RGTC2_Format,$l as SIGNED_RED_RGTC1_Format,Se as SRGBColorSpace,se as SRGBTransfer,Yo as Scene,kt as ShaderChunk,on as ShaderLib,sn as ShaderMaterial,Ac as ShadowMaterial,Gn as Shape,vc as ShapeGeometry,wd as ShapePath,bn as ShapeUtils,Wf as ShortType,Ko as Skeleton,hd as SkeletonHelper,$o as SkinnedMesh,On as Source,Ae as Sphere,ba as SphereGeometry,nd as Spherical,Zc as SphericalHarmonics3,va as SplineCurve,kc as SpotLight,ld as SpotLightHelper,Zo as Sprite,da as SpriteMaterial,wo as SrcAlphaFactor,Sf as SrcAlphaSaturateFactor,gf as SrcColorFactor,Jv as StaticCopyUsage,ta as StaticDrawUsage,qv as StaticReadUsage,ku as StereoCamera,Kv as StreamCopyUsage,Xv as StreamDrawUsage,Zv as StreamReadUsage,Yn as StringKeyframeTrack,df as SubtractEquation,bl as SubtractiveBlending,vv as TOUCH,Si as TangentSpaceNormalMap,yc as TetrahedronGeometry,Ee as Texture,Pu as TextureLoader,Mc as TorusGeometry,Sc as TorusKnotGeometry,Fn as Triangle,Cv as TriangleFanDrawMode,Rv as TriangleStripDrawMode,wv as TrianglesDrawMode,bc as TubeGeometry,Sv as TwoPassDoubleSide,rl as UVMapping,ra as Uint16BufferAttribute,aa as Uint32BufferAttribute,_h as Uint8BufferAttribute,xh as Uint8ClampedBufferAttribute,$u as Uniform,Ku as UniformsGroup,ot as UniformsLib,Hp as UniformsUtils,kn as UnsignedByteType,ui as UnsignedInt248Type,Nn as UnsignedIntType,Ld as UnsignedShort4444Type,Id as UnsignedShort5551Type,al as UnsignedShortType,vn as VSMShadowMap,Z as Vector2,w as Vector3,te as Vector4,hs as VectorKeyframeTrack,mu as VideoTexture,Wo as WebGL1Renderer,ah as WebGL3DRenderTarget,rh as WebGLArrayRenderTarget,ln as WebGLCoordinateSystem,Do as WebGLCubeRenderTarget,oh as WebGLMultipleRenderTargets,Ke as WebGLRenderTarget,Go as WebGLRenderer,px as WebGLUtils,Us as WebGPUCoordinateSystem,Ec as WireframeGeometry,$r as WrapAroundEnding,Xi as ZeroCurvatureEnding,pf as ZeroFactor,qi as ZeroSlopeEnding,Pv as ZeroStencilOp,Po as _SRGBAFormat,Ap as createCanvasElement,fi as sRGBEncoding};\n/*! Bundled license information:\n\nthree/build/three.module.js:\n  (**\n   * @license\n   * Copyright 2010-2023 Three.js Authors\n   * SPDX-License-Identifier: MIT\n   *)\n*/\n//# sourceMappingURL=three.mjs.map","/* esm.sh - three@0.160.0 */\nexport * from \"/three@0.160.0/es2022/three.mjs\";\n","/* esm.sh - three@0.160.0/examples/jsm/lines/Line2 */\nimport{Box3 as se,InstancedInterleavedBuffer as oe,InterleavedBufferAttribute as N,Line3 as re,MathUtils as ae,Matrix4 as de,Mesh as le,Sphere as ce,Vector3 as y,Vector4 as T}from\"../../../three.mjs\";import{Box3 as R,Float32BufferAttribute as j,InstancedBufferGeometry as Z,InstancedInterleavedBuffer as H,InterleavedBufferAttribute as z,Sphere as $,Vector3 as ee,WireframeGeometry as te}from\"../../../three.mjs\";var F=new R,U=new ee,_=class extends Z{constructor(){super(),this.isLineSegmentsGeometry=!0,this.type=\"LineSegmentsGeometry\";let e=[-1,2,0,1,2,0,-1,1,0,1,1,0,-1,0,0,1,0,0,-1,-1,0,1,-1,0],i=[-1,2,1,2,-1,1,1,1,-1,-1,1,-1,-1,-2,1,-2],n=[0,2,1,2,3,1,2,4,3,4,5,3,4,6,5,6,7,5];this.setIndex(n),this.setAttribute(\"position\",new j(e,3)),this.setAttribute(\"uv\",new j(i,2))}applyMatrix4(e){let i=this.attributes.instanceStart,n=this.attributes.instanceEnd;return i!==void 0&&(i.applyMatrix4(e),n.applyMatrix4(e),i.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this}setPositions(e){let i;e instanceof Float32Array?i=e:Array.isArray(e)&&(i=new Float32Array(e));let n=new H(i,6,1);return this.setAttribute(\"instanceStart\",new z(n,3,0)),this.setAttribute(\"instanceEnd\",new z(n,3,3)),this.computeBoundingBox(),this.computeBoundingSphere(),this}setColors(e){let i;e instanceof Float32Array?i=e:Array.isArray(e)&&(i=new Float32Array(e));let n=new H(i,6,1);return this.setAttribute(\"instanceColorStart\",new z(n,3,0)),this.setAttribute(\"instanceColorEnd\",new z(n,3,3)),this}fromWireframeGeometry(e){return this.setPositions(e.attributes.position.array),this}fromEdgesGeometry(e){return this.setPositions(e.attributes.position.array),this}fromMesh(e){return this.fromWireframeGeometry(new te(e.geometry)),this}fromLineSegments(e){let i=e.geometry;return this.setPositions(i.attributes.position.array),this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new R);let e=this.attributes.instanceStart,i=this.attributes.instanceEnd;e!==void 0&&i!==void 0&&(this.boundingBox.setFromBufferAttribute(e),F.setFromBufferAttribute(i),this.boundingBox.union(F))}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new $),this.boundingBox===null&&this.computeBoundingBox();let e=this.attributes.instanceStart,i=this.attributes.instanceEnd;if(e!==void 0&&i!==void 0){let n=this.boundingSphere.center;this.boundingBox.getCenter(n);let t=0;for(let o=0,c=e.count;o<c;o++)U.fromBufferAttribute(e,o),t=Math.max(t,n.distanceToSquared(U)),U.fromBufferAttribute(i,o),t=Math.max(t,n.distanceToSquared(U));this.boundingSphere.radius=Math.sqrt(t),isNaN(this.boundingSphere.radius)&&console.error(\"THREE.LineSegmentsGeometry.computeBoundingSphere(): Computed radius is NaN. The instanced position data is likely to have NaN values.\",this)}}toJSON(){}applyMatrix(e){return console.warn(\"THREE.LineSegmentsGeometry: applyMatrix() has been renamed to applyMatrix4().\"),this.applyMatrix4(e)}};import{ShaderLib as A,ShaderMaterial as ie,UniformsLib as M,UniformsUtils as G,Vector2 as ne}from\"../../../three.mjs\";M.line={worldUnits:{value:1},linewidth:{value:1},resolution:{value:new ne(1,1)},dashOffset:{value:0},dashScale:{value:1},dashSize:{value:1},gapSize:{value:1}};A.line={uniforms:G.merge([M.common,M.fog,M.line]),vertexShader:`\n\t\t#include <common>\n\t\t#include <color_pars_vertex>\n\t\t#include <fog_pars_vertex>\n\t\t#include <logdepthbuf_pars_vertex>\n\t\t#include <clipping_planes_pars_vertex>\n\n\t\tuniform float linewidth;\n\t\tuniform vec2 resolution;\n\n\t\tattribute vec3 instanceStart;\n\t\tattribute vec3 instanceEnd;\n\n\t\tattribute vec3 instanceColorStart;\n\t\tattribute vec3 instanceColorEnd;\n\n\t\t#ifdef WORLD_UNITS\n\n\t\t\tvarying vec4 worldPos;\n\t\t\tvarying vec3 worldStart;\n\t\t\tvarying vec3 worldEnd;\n\n\t\t\t#ifdef USE_DASH\n\n\t\t\t\tvarying vec2 vUv;\n\n\t\t\t#endif\n\n\t\t#else\n\n\t\t\tvarying vec2 vUv;\n\n\t\t#endif\n\n\t\t#ifdef USE_DASH\n\n\t\t\tuniform float dashScale;\n\t\t\tattribute float instanceDistanceStart;\n\t\t\tattribute float instanceDistanceEnd;\n\t\t\tvarying float vLineDistance;\n\n\t\t#endif\n\n\t\tvoid trimSegment( const in vec4 start, inout vec4 end ) {\n\n\t\t\t// trim end segment so it terminates between the camera plane and the near plane\n\n\t\t\t// conservative estimate of the near plane\n\t\t\tfloat a = projectionMatrix[ 2 ][ 2 ]; // 3nd entry in 3th column\n\t\t\tfloat b = projectionMatrix[ 3 ][ 2 ]; // 3nd entry in 4th column\n\t\t\tfloat nearEstimate = - 0.5 * b / a;\n\n\t\t\tfloat alpha = ( nearEstimate - start.z ) / ( end.z - start.z );\n\n\t\t\tend.xyz = mix( start.xyz, end.xyz, alpha );\n\n\t\t}\n\n\t\tvoid main() {\n\n\t\t\t#ifdef USE_COLOR\n\n\t\t\t\tvColor.xyz = ( position.y < 0.5 ) ? instanceColorStart : instanceColorEnd;\n\n\t\t\t#endif\n\n\t\t\t#ifdef USE_DASH\n\n\t\t\t\tvLineDistance = ( position.y < 0.5 ) ? dashScale * instanceDistanceStart : dashScale * instanceDistanceEnd;\n\t\t\t\tvUv = uv;\n\n\t\t\t#endif\n\n\t\t\tfloat aspect = resolution.x / resolution.y;\n\n\t\t\t// camera space\n\t\t\tvec4 start = modelViewMatrix * vec4( instanceStart, 1.0 );\n\t\t\tvec4 end = modelViewMatrix * vec4( instanceEnd, 1.0 );\n\n\t\t\t#ifdef WORLD_UNITS\n\n\t\t\t\tworldStart = start.xyz;\n\t\t\t\tworldEnd = end.xyz;\n\n\t\t\t#else\n\n\t\t\t\tvUv = uv;\n\n\t\t\t#endif\n\n\t\t\t// special case for perspective projection, and segments that terminate either in, or behind, the camera plane\n\t\t\t// clearly the gpu firmware has a way of addressing this issue when projecting into ndc space\n\t\t\t// but we need to perform ndc-space calculations in the shader, so we must address this issue directly\n\t\t\t// perhaps there is a more elegant solution -- WestLangley\n\n\t\t\tbool perspective = ( projectionMatrix[ 2 ][ 3 ] == - 1.0 ); // 4th entry in the 3rd column\n\n\t\t\tif ( perspective ) {\n\n\t\t\t\tif ( start.z < 0.0 && end.z >= 0.0 ) {\n\n\t\t\t\t\ttrimSegment( start, end );\n\n\t\t\t\t} else if ( end.z < 0.0 && start.z >= 0.0 ) {\n\n\t\t\t\t\ttrimSegment( end, start );\n\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t\t// clip space\n\t\t\tvec4 clipStart = projectionMatrix * start;\n\t\t\tvec4 clipEnd = projectionMatrix * end;\n\n\t\t\t// ndc space\n\t\t\tvec3 ndcStart = clipStart.xyz / clipStart.w;\n\t\t\tvec3 ndcEnd = clipEnd.xyz / clipEnd.w;\n\n\t\t\t// direction\n\t\t\tvec2 dir = ndcEnd.xy - ndcStart.xy;\n\n\t\t\t// account for clip-space aspect ratio\n\t\t\tdir.x *= aspect;\n\t\t\tdir = normalize( dir );\n\n\t\t\t#ifdef WORLD_UNITS\n\n\t\t\t\tvec3 worldDir = normalize( end.xyz - start.xyz );\n\t\t\t\tvec3 tmpFwd = normalize( mix( start.xyz, end.xyz, 0.5 ) );\n\t\t\t\tvec3 worldUp = normalize( cross( worldDir, tmpFwd ) );\n\t\t\t\tvec3 worldFwd = cross( worldDir, worldUp );\n\t\t\t\tworldPos = position.y < 0.5 ? start: end;\n\n\t\t\t\t// height offset\n\t\t\t\tfloat hw = linewidth * 0.5;\n\t\t\t\tworldPos.xyz += position.x < 0.0 ? hw * worldUp : - hw * worldUp;\n\n\t\t\t\t// don't extend the line if we're rendering dashes because we\n\t\t\t\t// won't be rendering the endcaps\n\t\t\t\t#ifndef USE_DASH\n\n\t\t\t\t\t// cap extension\n\t\t\t\t\tworldPos.xyz += position.y < 0.5 ? - hw * worldDir : hw * worldDir;\n\n\t\t\t\t\t// add width to the box\n\t\t\t\t\tworldPos.xyz += worldFwd * hw;\n\n\t\t\t\t\t// endcaps\n\t\t\t\t\tif ( position.y > 1.0 || position.y < 0.0 ) {\n\n\t\t\t\t\t\tworldPos.xyz -= worldFwd * 2.0 * hw;\n\n\t\t\t\t\t}\n\n\t\t\t\t#endif\n\n\t\t\t\t// project the worldpos\n\t\t\t\tvec4 clip = projectionMatrix * worldPos;\n\n\t\t\t\t// shift the depth of the projected points so the line\n\t\t\t\t// segments overlap neatly\n\t\t\t\tvec3 clipPose = ( position.y < 0.5 ) ? ndcStart : ndcEnd;\n\t\t\t\tclip.z = clipPose.z * clip.w;\n\n\t\t\t#else\n\n\t\t\t\tvec2 offset = vec2( dir.y, - dir.x );\n\t\t\t\t// undo aspect ratio adjustment\n\t\t\t\tdir.x /= aspect;\n\t\t\t\toffset.x /= aspect;\n\n\t\t\t\t// sign flip\n\t\t\t\tif ( position.x < 0.0 ) offset *= - 1.0;\n\n\t\t\t\t// endcaps\n\t\t\t\tif ( position.y < 0.0 ) {\n\n\t\t\t\t\toffset += - dir;\n\n\t\t\t\t} else if ( position.y > 1.0 ) {\n\n\t\t\t\t\toffset += dir;\n\n\t\t\t\t}\n\n\t\t\t\t// adjust for linewidth\n\t\t\t\toffset *= linewidth;\n\n\t\t\t\t// adjust for clip-space to screen-space conversion // maybe resolution should be based on viewport ...\n\t\t\t\toffset /= resolution.y;\n\n\t\t\t\t// select end\n\t\t\t\tvec4 clip = ( position.y < 0.5 ) ? clipStart : clipEnd;\n\n\t\t\t\t// back to clip space\n\t\t\t\toffset *= clip.w;\n\n\t\t\t\tclip.xy += offset;\n\n\t\t\t#endif\n\n\t\t\tgl_Position = clip;\n\n\t\t\tvec4 mvPosition = ( position.y < 0.5 ) ? start : end; // this is an approximation\n\n\t\t\t#include <logdepthbuf_vertex>\n\t\t\t#include <clipping_planes_vertex>\n\t\t\t#include <fog_vertex>\n\n\t\t}\n\t\t`,fragmentShader:`\n\t\tuniform vec3 diffuse;\n\t\tuniform float opacity;\n\t\tuniform float linewidth;\n\n\t\t#ifdef USE_DASH\n\n\t\t\tuniform float dashOffset;\n\t\t\tuniform float dashSize;\n\t\t\tuniform float gapSize;\n\n\t\t#endif\n\n\t\tvarying float vLineDistance;\n\n\t\t#ifdef WORLD_UNITS\n\n\t\t\tvarying vec4 worldPos;\n\t\t\tvarying vec3 worldStart;\n\t\t\tvarying vec3 worldEnd;\n\n\t\t\t#ifdef USE_DASH\n\n\t\t\t\tvarying vec2 vUv;\n\n\t\t\t#endif\n\n\t\t#else\n\n\t\t\tvarying vec2 vUv;\n\n\t\t#endif\n\n\t\t#include <common>\n\t\t#include <color_pars_fragment>\n\t\t#include <fog_pars_fragment>\n\t\t#include <logdepthbuf_pars_fragment>\n\t\t#include <clipping_planes_pars_fragment>\n\n\t\tvec2 closestLineToLine(vec3 p1, vec3 p2, vec3 p3, vec3 p4) {\n\n\t\t\tfloat mua;\n\t\t\tfloat mub;\n\n\t\t\tvec3 p13 = p1 - p3;\n\t\t\tvec3 p43 = p4 - p3;\n\n\t\t\tvec3 p21 = p2 - p1;\n\n\t\t\tfloat d1343 = dot( p13, p43 );\n\t\t\tfloat d4321 = dot( p43, p21 );\n\t\t\tfloat d1321 = dot( p13, p21 );\n\t\t\tfloat d4343 = dot( p43, p43 );\n\t\t\tfloat d2121 = dot( p21, p21 );\n\n\t\t\tfloat denom = d2121 * d4343 - d4321 * d4321;\n\n\t\t\tfloat numer = d1343 * d4321 - d1321 * d4343;\n\n\t\t\tmua = numer / denom;\n\t\t\tmua = clamp( mua, 0.0, 1.0 );\n\t\t\tmub = ( d1343 + d4321 * ( mua ) ) / d4343;\n\t\t\tmub = clamp( mub, 0.0, 1.0 );\n\n\t\t\treturn vec2( mua, mub );\n\n\t\t}\n\n\t\tvoid main() {\n\n\t\t\t#include <clipping_planes_fragment>\n\n\t\t\t#ifdef USE_DASH\n\n\t\t\t\tif ( vUv.y < - 1.0 || vUv.y > 1.0 ) discard; // discard endcaps\n\n\t\t\t\tif ( mod( vLineDistance + dashOffset, dashSize + gapSize ) > dashSize ) discard; // todo - FIX\n\n\t\t\t#endif\n\n\t\t\tfloat alpha = opacity;\n\n\t\t\t#ifdef WORLD_UNITS\n\n\t\t\t\t// Find the closest points on the view ray and the line segment\n\t\t\t\tvec3 rayEnd = normalize( worldPos.xyz ) * 1e5;\n\t\t\t\tvec3 lineDir = worldEnd - worldStart;\n\t\t\t\tvec2 params = closestLineToLine( worldStart, worldEnd, vec3( 0.0, 0.0, 0.0 ), rayEnd );\n\n\t\t\t\tvec3 p1 = worldStart + lineDir * params.x;\n\t\t\t\tvec3 p2 = rayEnd * params.y;\n\t\t\t\tvec3 delta = p1 - p2;\n\t\t\t\tfloat len = length( delta );\n\t\t\t\tfloat norm = len / linewidth;\n\n\t\t\t\t#ifndef USE_DASH\n\n\t\t\t\t\t#ifdef USE_ALPHA_TO_COVERAGE\n\n\t\t\t\t\t\tfloat dnorm = fwidth( norm );\n\t\t\t\t\t\talpha = 1.0 - smoothstep( 0.5 - dnorm, 0.5 + dnorm, norm );\n\n\t\t\t\t\t#else\n\n\t\t\t\t\t\tif ( norm > 0.5 ) {\n\n\t\t\t\t\t\t\tdiscard;\n\n\t\t\t\t\t\t}\n\n\t\t\t\t\t#endif\n\n\t\t\t\t#endif\n\n\t\t\t#else\n\n\t\t\t\t#ifdef USE_ALPHA_TO_COVERAGE\n\n\t\t\t\t\t// artifacts appear on some hardware if a derivative is taken within a conditional\n\t\t\t\t\tfloat a = vUv.x;\n\t\t\t\t\tfloat b = ( vUv.y > 0.0 ) ? vUv.y - 1.0 : vUv.y + 1.0;\n\t\t\t\t\tfloat len2 = a * a + b * b;\n\t\t\t\t\tfloat dlen = fwidth( len2 );\n\n\t\t\t\t\tif ( abs( vUv.y ) > 1.0 ) {\n\n\t\t\t\t\t\talpha = 1.0 - smoothstep( 1.0 - dlen, 1.0 + dlen, len2 );\n\n\t\t\t\t\t}\n\n\t\t\t\t#else\n\n\t\t\t\t\tif ( abs( vUv.y ) > 1.0 ) {\n\n\t\t\t\t\t\tfloat a = vUv.x;\n\t\t\t\t\t\tfloat b = ( vUv.y > 0.0 ) ? vUv.y - 1.0 : vUv.y + 1.0;\n\t\t\t\t\t\tfloat len2 = a * a + b * b;\n\n\t\t\t\t\t\tif ( len2 > 1.0 ) discard;\n\n\t\t\t\t\t}\n\n\t\t\t\t#endif\n\n\t\t\t#endif\n\n\t\t\tvec4 diffuseColor = vec4( diffuse, alpha );\n\n\t\t\t#include <logdepthbuf_fragment>\n\t\t\t#include <color_fragment>\n\n\t\t\tgl_FragColor = vec4( diffuseColor.rgb, alpha );\n\n\t\t\t#include <tonemapping_fragment>\n\t\t\t#include <colorspace_fragment>\n\t\t\t#include <fog_fragment>\n\t\t\t#include <premultiplied_alpha_fragment>\n\n\t\t}\n\t\t`};var E=class extends ie{constructor(e){super({type:\"LineMaterial\",uniforms:G.clone(A.line.uniforms),vertexShader:A.line.vertexShader,fragmentShader:A.line.fragmentShader,clipping:!0}),this.isLineMaterial=!0,this.setValues(e)}get color(){return this.uniforms.diffuse.value}set color(e){this.uniforms.diffuse.value=e}get worldUnits(){return\"WORLD_UNITS\"in this.defines}set worldUnits(e){e===!0?this.defines.WORLD_UNITS=\"\":delete this.defines.WORLD_UNITS}get linewidth(){return this.uniforms.linewidth.value}set linewidth(e){this.uniforms.linewidth&&(this.uniforms.linewidth.value=e)}get dashed(){return\"USE_DASH\"in this.defines}set dashed(e){e===!0!==this.dashed&&(this.needsUpdate=!0),e===!0?this.defines.USE_DASH=\"\":delete this.defines.USE_DASH}get dashScale(){return this.uniforms.dashScale.value}set dashScale(e){this.uniforms.dashScale.value=e}get dashSize(){return this.uniforms.dashSize.value}set dashSize(e){this.uniforms.dashSize.value=e}get dashOffset(){return this.uniforms.dashOffset.value}set dashOffset(e){this.uniforms.dashOffset.value=e}get gapSize(){return this.uniforms.gapSize.value}set gapSize(e){this.uniforms.gapSize.value=e}get opacity(){return this.uniforms.opacity.value}set opacity(e){this.uniforms&&(this.uniforms.opacity.value=e)}get resolution(){return this.uniforms.resolution.value}set resolution(e){this.uniforms.resolution.value.copy(e)}get alphaToCoverage(){return\"USE_ALPHA_TO_COVERAGE\"in this.defines}set alphaToCoverage(e){this.defines&&(e===!0!==this.alphaToCoverage&&(this.needsUpdate=!0),e===!0?(this.defines.USE_ALPHA_TO_COVERAGE=\"\",this.extensions.derivatives=!0):(delete this.defines.USE_ALPHA_TO_COVERAGE,this.extensions.derivatives=!1))}};var V=new y,q=new y,r=new T,a=new T,m=new T,C=new y,P=new de,d=new re,k=new y,B=new se,L=new ce,v=new T,g,w;function J(l,e,i){return v.set(0,0,-e,1).applyMatrix4(l.projectionMatrix),v.multiplyScalar(1/v.w),v.x=w/i.width,v.y=w/i.height,v.applyMatrix4(l.projectionMatrixInverse),v.multiplyScalar(1/v.w),Math.abs(Math.max(v.x,v.y))}function fe(l,e){let i=l.matrixWorld,n=l.geometry,t=n.attributes.instanceStart,o=n.attributes.instanceEnd,c=Math.min(n.instanceCount,t.count);for(let s=0,f=c;s<f;s++){d.start.fromBufferAttribute(t,s),d.end.fromBufferAttribute(o,s),d.applyMatrix4(i);let p=new y,h=new y;g.distanceSqToSegment(d.start,d.end,h,p),h.distanceTo(p)<w*.5&&e.push({point:h,pointOnLine:p,distance:g.origin.distanceTo(h),object:l,face:null,faceIndex:s,uv:null,uv1:null})}}function ue(l,e,i){let n=e.projectionMatrix,o=l.material.resolution,c=l.matrixWorld,s=l.geometry,f=s.attributes.instanceStart,p=s.attributes.instanceEnd,h=Math.min(s.instanceCount,f.count),u=-e.near;g.at(1,m),m.w=1,m.applyMatrix4(e.matrixWorldInverse),m.applyMatrix4(n),m.multiplyScalar(1/m.w),m.x*=o.x/2,m.y*=o.y/2,m.z=0,C.copy(m),P.multiplyMatrices(e.matrixWorldInverse,c);for(let S=0,K=h;S<K;S++){if(r.fromBufferAttribute(f,S),a.fromBufferAttribute(p,S),r.w=1,a.w=1,r.applyMatrix4(P),a.applyMatrix4(P),r.z>u&&a.z>u)continue;if(r.z>u){let b=r.z-a.z,x=(r.z-u)/b;r.lerp(a,x)}else if(a.z>u){let b=a.z-r.z,x=(a.z-u)/b;a.lerp(r,x)}r.applyMatrix4(n),a.applyMatrix4(n),r.multiplyScalar(1/r.w),a.multiplyScalar(1/a.w),r.x*=o.x/2,r.y*=o.y/2,a.x*=o.x/2,a.y*=o.y/2,d.start.copy(r),d.start.z=0,d.end.copy(a),d.end.z=0;let I=d.closestPointToPointParameter(C,!0);d.at(I,k);let W=ae.lerp(r.z,a.z,I),Q=W>=-1&&W<=1,Y=C.distanceTo(k)<w*.5;if(Q&&Y){d.start.fromBufferAttribute(f,S),d.end.fromBufferAttribute(p,S),d.start.applyMatrix4(c),d.end.applyMatrix4(c);let b=new y,x=new y;g.distanceSqToSegment(d.start,d.end,x,b),i.push({point:x,pointOnLine:b,distance:g.origin.distanceTo(x),object:l,face:null,faceIndex:S,uv:null,uv1:null})}}}var D=class extends le{constructor(e=new _,i=new E({color:Math.random()*16777215})){super(e,i),this.isLineSegments2=!0,this.type=\"LineSegments2\"}computeLineDistances(){let e=this.geometry,i=e.attributes.instanceStart,n=e.attributes.instanceEnd,t=new Float32Array(2*i.count);for(let c=0,s=0,f=i.count;c<f;c++,s+=2)V.fromBufferAttribute(i,c),q.fromBufferAttribute(n,c),t[s]=s===0?0:t[s-1],t[s+1]=t[s]+V.distanceTo(q);let o=new oe(t,2,1);return e.setAttribute(\"instanceDistanceStart\",new N(o,1,0)),e.setAttribute(\"instanceDistanceEnd\",new N(o,1,1)),this}raycast(e,i){let n=this.material.worldUnits,t=e.camera;t===null&&!n&&console.error('LineSegments2: \"Raycaster.camera\" needs to be set in order to raycast against LineSegments2 while worldUnits is set to false.');let o=e.params.Line2!==void 0&&e.params.Line2.threshold||0;g=e.ray;let c=this.matrixWorld,s=this.geometry,f=this.material;w=f.linewidth+o,s.boundingSphere===null&&s.computeBoundingSphere(),L.copy(s.boundingSphere).applyMatrix4(c);let p;if(n)p=w*.5;else{let u=Math.max(t.near,L.distanceToPoint(g.origin));p=J(t,u,f.resolution)}if(L.radius+=p,g.intersectsSphere(L)===!1)return;s.boundingBox===null&&s.computeBoundingBox(),B.copy(s.boundingBox).applyMatrix4(c);let h;if(n)h=w*.5;else{let u=Math.max(t.near,B.distanceToPoint(g.origin));h=J(t,u,f.resolution)}B.expandByScalar(h),g.intersectsBox(B)!==!1&&(n?fe(this,i):ue(this,t,i))}};var O=class extends _{constructor(){super(),this.isLineGeometry=!0,this.type=\"LineGeometry\"}setPositions(e){let i=e.length-3,n=new Float32Array(2*i);for(let t=0;t<i;t+=3)n[2*t]=e[t],n[2*t+1]=e[t+1],n[2*t+2]=e[t+2],n[2*t+3]=e[t+3],n[2*t+4]=e[t+4],n[2*t+5]=e[t+5];return super.setPositions(n),this}setColors(e){let i=e.length-3,n=new Float32Array(2*i);for(let t=0;t<i;t+=3)n[2*t]=e[t],n[2*t+1]=e[t+1],n[2*t+2]=e[t+2],n[2*t+3]=e[t+3],n[2*t+4]=e[t+4],n[2*t+5]=e[t+5];return super.setColors(n),this}fromLine(e){let i=e.geometry;return this.setPositions(i.attributes.position.array),this}};var X=class extends D{constructor(e=new O,i=new E({color:Math.random()*16777215})){super(e,i),this.isLine2=!0,this.type=\"Line2\"}};export{X as Line2};\n//# sourceMappingURL=Line2.mjs.map","/* esm.sh - three@0.160.0/examples/jsm/lines/Line2 */\nimport \"/three@0.160.0/es2022/three.mjs\";\nexport * from \"/three@0.160.0/es2022/examples/jsm/lines/Line2.mjs\";\n","/* esm.sh - three@0.160.0/examples/jsm/lines/LineMaterial */\nimport{ShaderLib as t,ShaderMaterial as r,UniformsLib as i,UniformsUtils as a,Vector2 as o}from\"../../../three.mjs\";i.line={worldUnits:{value:1},linewidth:{value:1},resolution:{value:new o(1,1)},dashOffset:{value:0},dashScale:{value:1},dashSize:{value:1},gapSize:{value:1}};t.line={uniforms:a.merge([i.common,i.fog,i.line]),vertexShader:`\n\t\t#include <common>\n\t\t#include <color_pars_vertex>\n\t\t#include <fog_pars_vertex>\n\t\t#include <logdepthbuf_pars_vertex>\n\t\t#include <clipping_planes_pars_vertex>\n\n\t\tuniform float linewidth;\n\t\tuniform vec2 resolution;\n\n\t\tattribute vec3 instanceStart;\n\t\tattribute vec3 instanceEnd;\n\n\t\tattribute vec3 instanceColorStart;\n\t\tattribute vec3 instanceColorEnd;\n\n\t\t#ifdef WORLD_UNITS\n\n\t\t\tvarying vec4 worldPos;\n\t\t\tvarying vec3 worldStart;\n\t\t\tvarying vec3 worldEnd;\n\n\t\t\t#ifdef USE_DASH\n\n\t\t\t\tvarying vec2 vUv;\n\n\t\t\t#endif\n\n\t\t#else\n\n\t\t\tvarying vec2 vUv;\n\n\t\t#endif\n\n\t\t#ifdef USE_DASH\n\n\t\t\tuniform float dashScale;\n\t\t\tattribute float instanceDistanceStart;\n\t\t\tattribute float instanceDistanceEnd;\n\t\t\tvarying float vLineDistance;\n\n\t\t#endif\n\n\t\tvoid trimSegment( const in vec4 start, inout vec4 end ) {\n\n\t\t\t// trim end segment so it terminates between the camera plane and the near plane\n\n\t\t\t// conservative estimate of the near plane\n\t\t\tfloat a = projectionMatrix[ 2 ][ 2 ]; // 3nd entry in 3th column\n\t\t\tfloat b = projectionMatrix[ 3 ][ 2 ]; // 3nd entry in 4th column\n\t\t\tfloat nearEstimate = - 0.5 * b / a;\n\n\t\t\tfloat alpha = ( nearEstimate - start.z ) / ( end.z - start.z );\n\n\t\t\tend.xyz = mix( start.xyz, end.xyz, alpha );\n\n\t\t}\n\n\t\tvoid main() {\n\n\t\t\t#ifdef USE_COLOR\n\n\t\t\t\tvColor.xyz = ( position.y < 0.5 ) ? instanceColorStart : instanceColorEnd;\n\n\t\t\t#endif\n\n\t\t\t#ifdef USE_DASH\n\n\t\t\t\tvLineDistance = ( position.y < 0.5 ) ? dashScale * instanceDistanceStart : dashScale * instanceDistanceEnd;\n\t\t\t\tvUv = uv;\n\n\t\t\t#endif\n\n\t\t\tfloat aspect = resolution.x / resolution.y;\n\n\t\t\t// camera space\n\t\t\tvec4 start = modelViewMatrix * vec4( instanceStart, 1.0 );\n\t\t\tvec4 end = modelViewMatrix * vec4( instanceEnd, 1.0 );\n\n\t\t\t#ifdef WORLD_UNITS\n\n\t\t\t\tworldStart = start.xyz;\n\t\t\t\tworldEnd = end.xyz;\n\n\t\t\t#else\n\n\t\t\t\tvUv = uv;\n\n\t\t\t#endif\n\n\t\t\t// special case for perspective projection, and segments that terminate either in, or behind, the camera plane\n\t\t\t// clearly the gpu firmware has a way of addressing this issue when projecting into ndc space\n\t\t\t// but we need to perform ndc-space calculations in the shader, so we must address this issue directly\n\t\t\t// perhaps there is a more elegant solution -- WestLangley\n\n\t\t\tbool perspective = ( projectionMatrix[ 2 ][ 3 ] == - 1.0 ); // 4th entry in the 3rd column\n\n\t\t\tif ( perspective ) {\n\n\t\t\t\tif ( start.z < 0.0 && end.z >= 0.0 ) {\n\n\t\t\t\t\ttrimSegment( start, end );\n\n\t\t\t\t} else if ( end.z < 0.0 && start.z >= 0.0 ) {\n\n\t\t\t\t\ttrimSegment( end, start );\n\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t\t// clip space\n\t\t\tvec4 clipStart = projectionMatrix * start;\n\t\t\tvec4 clipEnd = projectionMatrix * end;\n\n\t\t\t// ndc space\n\t\t\tvec3 ndcStart = clipStart.xyz / clipStart.w;\n\t\t\tvec3 ndcEnd = clipEnd.xyz / clipEnd.w;\n\n\t\t\t// direction\n\t\t\tvec2 dir = ndcEnd.xy - ndcStart.xy;\n\n\t\t\t// account for clip-space aspect ratio\n\t\t\tdir.x *= aspect;\n\t\t\tdir = normalize( dir );\n\n\t\t\t#ifdef WORLD_UNITS\n\n\t\t\t\tvec3 worldDir = normalize( end.xyz - start.xyz );\n\t\t\t\tvec3 tmpFwd = normalize( mix( start.xyz, end.xyz, 0.5 ) );\n\t\t\t\tvec3 worldUp = normalize( cross( worldDir, tmpFwd ) );\n\t\t\t\tvec3 worldFwd = cross( worldDir, worldUp );\n\t\t\t\tworldPos = position.y < 0.5 ? start: end;\n\n\t\t\t\t// height offset\n\t\t\t\tfloat hw = linewidth * 0.5;\n\t\t\t\tworldPos.xyz += position.x < 0.0 ? hw * worldUp : - hw * worldUp;\n\n\t\t\t\t// don't extend the line if we're rendering dashes because we\n\t\t\t\t// won't be rendering the endcaps\n\t\t\t\t#ifndef USE_DASH\n\n\t\t\t\t\t// cap extension\n\t\t\t\t\tworldPos.xyz += position.y < 0.5 ? - hw * worldDir : hw * worldDir;\n\n\t\t\t\t\t// add width to the box\n\t\t\t\t\tworldPos.xyz += worldFwd * hw;\n\n\t\t\t\t\t// endcaps\n\t\t\t\t\tif ( position.y > 1.0 || position.y < 0.0 ) {\n\n\t\t\t\t\t\tworldPos.xyz -= worldFwd * 2.0 * hw;\n\n\t\t\t\t\t}\n\n\t\t\t\t#endif\n\n\t\t\t\t// project the worldpos\n\t\t\t\tvec4 clip = projectionMatrix * worldPos;\n\n\t\t\t\t// shift the depth of the projected points so the line\n\t\t\t\t// segments overlap neatly\n\t\t\t\tvec3 clipPose = ( position.y < 0.5 ) ? ndcStart : ndcEnd;\n\t\t\t\tclip.z = clipPose.z * clip.w;\n\n\t\t\t#else\n\n\t\t\t\tvec2 offset = vec2( dir.y, - dir.x );\n\t\t\t\t// undo aspect ratio adjustment\n\t\t\t\tdir.x /= aspect;\n\t\t\t\toffset.x /= aspect;\n\n\t\t\t\t// sign flip\n\t\t\t\tif ( position.x < 0.0 ) offset *= - 1.0;\n\n\t\t\t\t// endcaps\n\t\t\t\tif ( position.y < 0.0 ) {\n\n\t\t\t\t\toffset += - dir;\n\n\t\t\t\t} else if ( position.y > 1.0 ) {\n\n\t\t\t\t\toffset += dir;\n\n\t\t\t\t}\n\n\t\t\t\t// adjust for linewidth\n\t\t\t\toffset *= linewidth;\n\n\t\t\t\t// adjust for clip-space to screen-space conversion // maybe resolution should be based on viewport ...\n\t\t\t\toffset /= resolution.y;\n\n\t\t\t\t// select end\n\t\t\t\tvec4 clip = ( position.y < 0.5 ) ? clipStart : clipEnd;\n\n\t\t\t\t// back to clip space\n\t\t\t\toffset *= clip.w;\n\n\t\t\t\tclip.xy += offset;\n\n\t\t\t#endif\n\n\t\t\tgl_Position = clip;\n\n\t\t\tvec4 mvPosition = ( position.y < 0.5 ) ? start : end; // this is an approximation\n\n\t\t\t#include <logdepthbuf_vertex>\n\t\t\t#include <clipping_planes_vertex>\n\t\t\t#include <fog_vertex>\n\n\t\t}\n\t\t`,fragmentShader:`\n\t\tuniform vec3 diffuse;\n\t\tuniform float opacity;\n\t\tuniform float linewidth;\n\n\t\t#ifdef USE_DASH\n\n\t\t\tuniform float dashOffset;\n\t\t\tuniform float dashSize;\n\t\t\tuniform float gapSize;\n\n\t\t#endif\n\n\t\tvarying float vLineDistance;\n\n\t\t#ifdef WORLD_UNITS\n\n\t\t\tvarying vec4 worldPos;\n\t\t\tvarying vec3 worldStart;\n\t\t\tvarying vec3 worldEnd;\n\n\t\t\t#ifdef USE_DASH\n\n\t\t\t\tvarying vec2 vUv;\n\n\t\t\t#endif\n\n\t\t#else\n\n\t\t\tvarying vec2 vUv;\n\n\t\t#endif\n\n\t\t#include <common>\n\t\t#include <color_pars_fragment>\n\t\t#include <fog_pars_fragment>\n\t\t#include <logdepthbuf_pars_fragment>\n\t\t#include <clipping_planes_pars_fragment>\n\n\t\tvec2 closestLineToLine(vec3 p1, vec3 p2, vec3 p3, vec3 p4) {\n\n\t\t\tfloat mua;\n\t\t\tfloat mub;\n\n\t\t\tvec3 p13 = p1 - p3;\n\t\t\tvec3 p43 = p4 - p3;\n\n\t\t\tvec3 p21 = p2 - p1;\n\n\t\t\tfloat d1343 = dot( p13, p43 );\n\t\t\tfloat d4321 = dot( p43, p21 );\n\t\t\tfloat d1321 = dot( p13, p21 );\n\t\t\tfloat d4343 = dot( p43, p43 );\n\t\t\tfloat d2121 = dot( p21, p21 );\n\n\t\t\tfloat denom = d2121 * d4343 - d4321 * d4321;\n\n\t\t\tfloat numer = d1343 * d4321 - d1321 * d4343;\n\n\t\t\tmua = numer / denom;\n\t\t\tmua = clamp( mua, 0.0, 1.0 );\n\t\t\tmub = ( d1343 + d4321 * ( mua ) ) / d4343;\n\t\t\tmub = clamp( mub, 0.0, 1.0 );\n\n\t\t\treturn vec2( mua, mub );\n\n\t\t}\n\n\t\tvoid main() {\n\n\t\t\t#include <clipping_planes_fragment>\n\n\t\t\t#ifdef USE_DASH\n\n\t\t\t\tif ( vUv.y < - 1.0 || vUv.y > 1.0 ) discard; // discard endcaps\n\n\t\t\t\tif ( mod( vLineDistance + dashOffset, dashSize + gapSize ) > dashSize ) discard; // todo - FIX\n\n\t\t\t#endif\n\n\t\t\tfloat alpha = opacity;\n\n\t\t\t#ifdef WORLD_UNITS\n\n\t\t\t\t// Find the closest points on the view ray and the line segment\n\t\t\t\tvec3 rayEnd = normalize( worldPos.xyz ) * 1e5;\n\t\t\t\tvec3 lineDir = worldEnd - worldStart;\n\t\t\t\tvec2 params = closestLineToLine( worldStart, worldEnd, vec3( 0.0, 0.0, 0.0 ), rayEnd );\n\n\t\t\t\tvec3 p1 = worldStart + lineDir * params.x;\n\t\t\t\tvec3 p2 = rayEnd * params.y;\n\t\t\t\tvec3 delta = p1 - p2;\n\t\t\t\tfloat len = length( delta );\n\t\t\t\tfloat norm = len / linewidth;\n\n\t\t\t\t#ifndef USE_DASH\n\n\t\t\t\t\t#ifdef USE_ALPHA_TO_COVERAGE\n\n\t\t\t\t\t\tfloat dnorm = fwidth( norm );\n\t\t\t\t\t\talpha = 1.0 - smoothstep( 0.5 - dnorm, 0.5 + dnorm, norm );\n\n\t\t\t\t\t#else\n\n\t\t\t\t\t\tif ( norm > 0.5 ) {\n\n\t\t\t\t\t\t\tdiscard;\n\n\t\t\t\t\t\t}\n\n\t\t\t\t\t#endif\n\n\t\t\t\t#endif\n\n\t\t\t#else\n\n\t\t\t\t#ifdef USE_ALPHA_TO_COVERAGE\n\n\t\t\t\t\t// artifacts appear on some hardware if a derivative is taken within a conditional\n\t\t\t\t\tfloat a = vUv.x;\n\t\t\t\t\tfloat b = ( vUv.y > 0.0 ) ? vUv.y - 1.0 : vUv.y + 1.0;\n\t\t\t\t\tfloat len2 = a * a + b * b;\n\t\t\t\t\tfloat dlen = fwidth( len2 );\n\n\t\t\t\t\tif ( abs( vUv.y ) > 1.0 ) {\n\n\t\t\t\t\t\talpha = 1.0 - smoothstep( 1.0 - dlen, 1.0 + dlen, len2 );\n\n\t\t\t\t\t}\n\n\t\t\t\t#else\n\n\t\t\t\t\tif ( abs( vUv.y ) > 1.0 ) {\n\n\t\t\t\t\t\tfloat a = vUv.x;\n\t\t\t\t\t\tfloat b = ( vUv.y > 0.0 ) ? vUv.y - 1.0 : vUv.y + 1.0;\n\t\t\t\t\t\tfloat len2 = a * a + b * b;\n\n\t\t\t\t\t\tif ( len2 > 1.0 ) discard;\n\n\t\t\t\t\t}\n\n\t\t\t\t#endif\n\n\t\t\t#endif\n\n\t\t\tvec4 diffuseColor = vec4( diffuse, alpha );\n\n\t\t\t#include <logdepthbuf_fragment>\n\t\t\t#include <color_fragment>\n\n\t\t\tgl_FragColor = vec4( diffuseColor.rgb, alpha );\n\n\t\t\t#include <tonemapping_fragment>\n\t\t\t#include <colorspace_fragment>\n\t\t\t#include <fog_fragment>\n\t\t\t#include <premultiplied_alpha_fragment>\n\n\t\t}\n\t\t`};var n=class extends r{constructor(e){super({type:\"LineMaterial\",uniforms:a.clone(t.line.uniforms),vertexShader:t.line.vertexShader,fragmentShader:t.line.fragmentShader,clipping:!0}),this.isLineMaterial=!0,this.setValues(e)}get color(){return this.uniforms.diffuse.value}set color(e){this.uniforms.diffuse.value=e}get worldUnits(){return\"WORLD_UNITS\"in this.defines}set worldUnits(e){e===!0?this.defines.WORLD_UNITS=\"\":delete this.defines.WORLD_UNITS}get linewidth(){return this.uniforms.linewidth.value}set linewidth(e){this.uniforms.linewidth&&(this.uniforms.linewidth.value=e)}get dashed(){return\"USE_DASH\"in this.defines}set dashed(e){e===!0!==this.dashed&&(this.needsUpdate=!0),e===!0?this.defines.USE_DASH=\"\":delete this.defines.USE_DASH}get dashScale(){return this.uniforms.dashScale.value}set dashScale(e){this.uniforms.dashScale.value=e}get dashSize(){return this.uniforms.dashSize.value}set dashSize(e){this.uniforms.dashSize.value=e}get dashOffset(){return this.uniforms.dashOffset.value}set dashOffset(e){this.uniforms.dashOffset.value=e}get gapSize(){return this.uniforms.gapSize.value}set gapSize(e){this.uniforms.gapSize.value=e}get opacity(){return this.uniforms.opacity.value}set opacity(e){this.uniforms&&(this.uniforms.opacity.value=e)}get resolution(){return this.uniforms.resolution.value}set resolution(e){this.uniforms.resolution.value.copy(e)}get alphaToCoverage(){return\"USE_ALPHA_TO_COVERAGE\"in this.defines}set alphaToCoverage(e){this.defines&&(e===!0!==this.alphaToCoverage&&(this.needsUpdate=!0),e===!0?(this.defines.USE_ALPHA_TO_COVERAGE=\"\",this.extensions.derivatives=!0):(delete this.defines.USE_ALPHA_TO_COVERAGE,this.extensions.derivatives=!1))}};export{n as LineMaterial};\n//# sourceMappingURL=LineMaterial.mjs.map","/* esm.sh - three@0.160.0/examples/jsm/lines/LineMaterial */\nimport \"/three@0.160.0/es2022/three.mjs\";\nexport * from \"/three@0.160.0/es2022/examples/jsm/lines/LineMaterial.mjs\";\n","/* esm.sh - three@0.160.0/examples/jsm/lines/LineSegmentsGeometry */\nimport{Box3 as c,Float32BufferAttribute as u,InstancedBufferGeometry as p,InstancedInterleavedBuffer as a,InterleavedBufferAttribute as r,Sphere as l,Vector3 as m,WireframeGeometry as b}from\"../../../three.mjs\";var h=new c,o=new m,d=class extends p{constructor(){super(),this.isLineSegmentsGeometry=!0,this.type=\"LineSegmentsGeometry\";let t=[-1,2,0,1,2,0,-1,1,0,1,1,0,-1,0,0,1,0,0,-1,-1,0,1,-1,0],e=[-1,2,1,2,-1,1,1,1,-1,-1,1,-1,-1,-2,1,-2],n=[0,2,1,2,3,1,2,4,3,4,5,3,4,6,5,6,7,5];this.setIndex(n),this.setAttribute(\"position\",new u(t,3)),this.setAttribute(\"uv\",new u(e,2))}applyMatrix4(t){let e=this.attributes.instanceStart,n=this.attributes.instanceEnd;return e!==void 0&&(e.applyMatrix4(t),n.applyMatrix4(t),e.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this}setPositions(t){let e;t instanceof Float32Array?e=t:Array.isArray(t)&&(e=new Float32Array(t));let n=new a(e,6,1);return this.setAttribute(\"instanceStart\",new r(n,3,0)),this.setAttribute(\"instanceEnd\",new r(n,3,3)),this.computeBoundingBox(),this.computeBoundingSphere(),this}setColors(t){let e;t instanceof Float32Array?e=t:Array.isArray(t)&&(e=new Float32Array(t));let n=new a(e,6,1);return this.setAttribute(\"instanceColorStart\",new r(n,3,0)),this.setAttribute(\"instanceColorEnd\",new r(n,3,3)),this}fromWireframeGeometry(t){return this.setPositions(t.attributes.position.array),this}fromEdgesGeometry(t){return this.setPositions(t.attributes.position.array),this}fromMesh(t){return this.fromWireframeGeometry(new b(t.geometry)),this}fromLineSegments(t){let e=t.geometry;return this.setPositions(e.attributes.position.array),this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new c);let t=this.attributes.instanceStart,e=this.attributes.instanceEnd;t!==void 0&&e!==void 0&&(this.boundingBox.setFromBufferAttribute(t),h.setFromBufferAttribute(e),this.boundingBox.union(h))}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new l),this.boundingBox===null&&this.computeBoundingBox();let t=this.attributes.instanceStart,e=this.attributes.instanceEnd;if(t!==void 0&&e!==void 0){let n=this.boundingSphere.center;this.boundingBox.getCenter(n);let i=0;for(let s=0,f=t.count;s<f;s++)o.fromBufferAttribute(t,s),i=Math.max(i,n.distanceToSquared(o)),o.fromBufferAttribute(e,s),i=Math.max(i,n.distanceToSquared(o));this.boundingSphere.radius=Math.sqrt(i),isNaN(this.boundingSphere.radius)&&console.error(\"THREE.LineSegmentsGeometry.computeBoundingSphere(): Computed radius is NaN. The instanced position data is likely to have NaN values.\",this)}}toJSON(){}applyMatrix(t){return console.warn(\"THREE.LineSegmentsGeometry: applyMatrix() has been renamed to applyMatrix4().\"),this.applyMatrix4(t)}};export{d as LineSegmentsGeometry};\n//# sourceMappingURL=LineSegmentsGeometry.mjs.map","/* esm.sh - three@0.160.0/examples/jsm/lines/LineSegmentsGeometry */\nimport \"/three@0.160.0/es2022/three.mjs\";\nexport * from \"/three@0.160.0/es2022/examples/jsm/lines/LineSegmentsGeometry.mjs\";\n","/* esm.sh - three@0.160.0/examples/jsm/postprocessing/EffectComposer */\nimport{Clock as T,HalfFloatType as L,NoBlending as B,Vector2 as _,WebGLRenderTarget as C}from\"../../../three.mjs\";var m={name:\"CopyShader\",uniforms:{tDiffuse:{value:null},opacity:{value:1}},vertexShader:`\n\n\t\tvarying vec2 vUv;\n\n\t\tvoid main() {\n\n\t\t\tvUv = uv;\n\t\t\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n\n\t\t}`,fragmentShader:`\n\n\t\tuniform float opacity;\n\n\t\tuniform sampler2D tDiffuse;\n\n\t\tvarying vec2 vUv;\n\n\t\tvoid main() {\n\n\t\t\tvec4 texel = texture2D( tDiffuse, vUv );\n\t\t\tgl_FragColor = opacity * texel;\n\n\n\t\t}`};import{ShaderMaterial as x,UniformsUtils as E}from\"../../../three.mjs\";import{BufferGeometry as b,Float32BufferAttribute as g,OrthographicCamera as S,Mesh as v}from\"../../../three.mjs\";var h=class{constructor(){this.isPass=!0,this.enabled=!0,this.needsSwap=!0,this.clear=!1,this.renderToScreen=!1}setSize(){}render(){console.error(\"THREE.Pass: .render() must be implemented in derived pass.\")}dispose(){}},R=new S(-1,1,1,-1,0,1),d=class extends b{constructor(){super(),this.setAttribute(\"position\",new g([-1,3,0,-1,-1,0,3,-1,0],3)),this.setAttribute(\"uv\",new g([0,2,0,0,2,0],2))}},P=new d,l=class{constructor(e){this._mesh=new v(P,e)}dispose(){this._mesh.geometry.dispose()}render(e){e.render(this._mesh,R)}get material(){return this._mesh.material}set material(e){this._mesh.material=e}};var c=class extends h{constructor(e,t){super(),this.textureID=t!==void 0?t:\"tDiffuse\",e instanceof x?(this.uniforms=e.uniforms,this.material=e):e&&(this.uniforms=E.clone(e.uniforms),this.material=new x({name:e.name!==void 0?e.name:\"unspecified\",defines:Object.assign({},e.defines),uniforms:this.uniforms,vertexShader:e.vertexShader,fragmentShader:e.fragmentShader})),this.fsQuad=new l(this.material)}render(e,t,r){this.uniforms[this.textureID]&&(this.uniforms[this.textureID].value=r.texture),this.fsQuad.material=this.material,this.renderToScreen?(e.setRenderTarget(null),this.fsQuad.render(e)):(e.setRenderTarget(t),this.clear&&e.clear(e.autoClearColor,e.autoClearDepth,e.autoClearStencil),this.fsQuad.render(e))}dispose(){this.material.dispose(),this.fsQuad.dispose()}};var o=class extends h{constructor(e,t){super(),this.scene=e,this.camera=t,this.clear=!0,this.needsSwap=!1,this.inverse=!1}render(e,t,r){let i=e.getContext(),s=e.state;s.buffers.color.setMask(!1),s.buffers.depth.setMask(!1),s.buffers.color.setLocked(!0),s.buffers.depth.setLocked(!0);let f,n;this.inverse?(f=0,n=1):(f=1,n=0),s.buffers.stencil.setTest(!0),s.buffers.stencil.setOp(i.REPLACE,i.REPLACE,i.REPLACE),s.buffers.stencil.setFunc(i.ALWAYS,f,4294967295),s.buffers.stencil.setClear(n),s.buffers.stencil.setLocked(!0),e.setRenderTarget(r),this.clear&&e.clear(),e.render(this.scene,this.camera),e.setRenderTarget(t),this.clear&&e.clear(),e.render(this.scene,this.camera),s.buffers.color.setLocked(!1),s.buffers.depth.setLocked(!1),s.buffers.color.setMask(!0),s.buffers.depth.setMask(!0),s.buffers.stencil.setLocked(!1),s.buffers.stencil.setFunc(i.EQUAL,1,4294967295),s.buffers.stencil.setOp(i.KEEP,i.KEEP,i.KEEP),s.buffers.stencil.setLocked(!0)}},u=class extends h{constructor(){super(),this.needsSwap=!1}render(e){e.state.buffers.stencil.setLocked(!1),e.state.buffers.stencil.setTest(!1)}};var w=class{constructor(e,t){if(this.renderer=e,this._pixelRatio=e.getPixelRatio(),t===void 0){let r=e.getSize(new _);this._width=r.width,this._height=r.height,t=new C(this._width*this._pixelRatio,this._height*this._pixelRatio,{type:L}),t.texture.name=\"EffectComposer.rt1\"}else this._width=t.width,this._height=t.height;this.renderTarget1=t,this.renderTarget2=t.clone(),this.renderTarget2.texture.name=\"EffectComposer.rt2\",this.writeBuffer=this.renderTarget1,this.readBuffer=this.renderTarget2,this.renderToScreen=!0,this.passes=[],this.copyPass=new c(m),this.copyPass.material.blending=B,this.clock=new T}swapBuffers(){let e=this.readBuffer;this.readBuffer=this.writeBuffer,this.writeBuffer=e}addPass(e){this.passes.push(e),e.setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}insertPass(e,t){this.passes.splice(t,0,e),e.setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}removePass(e){let t=this.passes.indexOf(e);t!==-1&&this.passes.splice(t,1)}isLastEnabledPass(e){for(let t=e+1;t<this.passes.length;t++)if(this.passes[t].enabled)return!1;return!0}render(e){e===void 0&&(e=this.clock.getDelta());let t=this.renderer.getRenderTarget(),r=!1;for(let i=0,s=this.passes.length;i<s;i++){let f=this.passes[i];if(f.enabled!==!1){if(f.renderToScreen=this.renderToScreen&&this.isLastEnabledPass(i),f.render(this.renderer,this.writeBuffer,this.readBuffer,e,r),f.needsSwap){if(r){let n=this.renderer.getContext(),p=this.renderer.state.buffers.stencil;p.setFunc(n.NOTEQUAL,1,4294967295),this.copyPass.render(this.renderer,this.writeBuffer,this.readBuffer,e),p.setFunc(n.EQUAL,1,4294967295)}this.swapBuffers()}o!==void 0&&(f instanceof o?r=!0:f instanceof u&&(r=!1))}}this.renderer.setRenderTarget(t)}reset(e){if(e===void 0){let t=this.renderer.getSize(new _);this._pixelRatio=this.renderer.getPixelRatio(),this._width=t.width,this._height=t.height,e=this.renderTarget1.clone(),e.setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}this.renderTarget1.dispose(),this.renderTarget2.dispose(),this.renderTarget1=e,this.renderTarget2=e.clone(),this.writeBuffer=this.renderTarget1,this.readBuffer=this.renderTarget2}setSize(e,t){this._width=e,this._height=t;let r=this._width*this._pixelRatio,i=this._height*this._pixelRatio;this.renderTarget1.setSize(r,i),this.renderTarget2.setSize(r,i);for(let s=0;s<this.passes.length;s++)this.passes[s].setSize(r,i)}setPixelRatio(e){this._pixelRatio=e,this.setSize(this._width,this._height)}dispose(){this.renderTarget1.dispose(),this.renderTarget2.dispose(),this.copyPass.dispose()}};export{w as EffectComposer};\n//# sourceMappingURL=EffectComposer.mjs.map","/* esm.sh - three@0.160.0/examples/jsm/postprocessing/EffectComposer */\nimport \"/three@0.160.0/es2022/three.mjs\";\nexport * from \"/three@0.160.0/es2022/examples/jsm/postprocessing/EffectComposer.mjs\";\n","/* esm.sh - three@0.160.0/examples/jsm/postprocessing/RenderPass */\nimport{Color as p}from\"../../../three.mjs\";import{BufferGeometry as n,Float32BufferAttribute as c,OrthographicCamera as C,Mesh as f}from\"../../../three.mjs\";var l=class{constructor(){this.isPass=!0,this.enabled=!0,this.needsSwap=!0,this.clear=!1,this.renderToScreen=!1}setSize(){}render(){console.error(\"THREE.Pass: .render() must be implemented in derived pass.\")}dispose(){}},d=new C(-1,1,1,-1,0,1),r=class extends n{constructor(){super(),this.setAttribute(\"position\",new c([-1,3,0,-1,-1,0,3,-1,0],3)),this.setAttribute(\"uv\",new c([0,2,0,0,2,0],2))}},A=new r;var u=class extends l{constructor(e,o,s=null,a=null,t=null){super(),this.scene=e,this.camera=o,this.overrideMaterial=s,this.clearColor=a,this.clearAlpha=t,this.clear=!0,this.clearDepth=!1,this.needsSwap=!1,this._oldClearColor=new p}render(e,o,s){let a=e.autoClear;e.autoClear=!1;let t,h;this.overrideMaterial!==null&&(h=this.scene.overrideMaterial,this.scene.overrideMaterial=this.overrideMaterial),this.clearColor!==null&&(e.getClearColor(this._oldClearColor),e.setClearColor(this.clearColor)),this.clearAlpha!==null&&(t=e.getClearAlpha(),e.setClearAlpha(this.clearAlpha)),this.clearDepth==!0&&e.clearDepth(),e.setRenderTarget(this.renderToScreen?null:s),this.clear===!0&&e.clear(e.autoClearColor,e.autoClearDepth,e.autoClearStencil),e.render(this.scene,this.camera),this.clearColor!==null&&e.setClearColor(this._oldClearColor),this.clearAlpha!==null&&e.setClearAlpha(t),this.overrideMaterial!==null&&(this.scene.overrideMaterial=h),e.autoClear=a}};export{u as RenderPass};\n//# sourceMappingURL=RenderPass.mjs.map","/* esm.sh - three@0.160.0/examples/jsm/postprocessing/RenderPass */\nimport \"/three@0.160.0/es2022/three.mjs\";\nexport * from \"/three@0.160.0/es2022/examples/jsm/postprocessing/RenderPass.mjs\";\n","/* esm.sh - three@0.160.0/examples/jsm/postprocessing/ShaderPass */\nimport{ShaderMaterial as o,UniformsUtils as p}from\"../../../three.mjs\";import{BufferGeometry as f,Float32BufferAttribute as n,OrthographicCamera as h,Mesh as l}from\"../../../three.mjs\";var s=class{constructor(){this.isPass=!0,this.enabled=!0,this.needsSwap=!0,this.clear=!1,this.renderToScreen=!1}setSize(){}render(){console.error(\"THREE.Pass: .render() must be implemented in derived pass.\")}dispose(){}},c=new h(-1,1,1,-1,0,1),a=class extends f{constructor(){super(),this.setAttribute(\"position\",new n([-1,3,0,-1,-1,0,3,-1,0],3)),this.setAttribute(\"uv\",new n([0,2,0,0,2,0],2))}},d=new a,i=class{constructor(e){this._mesh=new l(d,e)}dispose(){this._mesh.geometry.dispose()}render(e){e.render(this._mesh,c)}get material(){return this._mesh.material}set material(e){this._mesh.material=e}};var m=class extends s{constructor(e,t){super(),this.textureID=t!==void 0?t:\"tDiffuse\",e instanceof o?(this.uniforms=e.uniforms,this.material=e):e&&(this.uniforms=p.clone(e.uniforms),this.material=new o({name:e.name!==void 0?e.name:\"unspecified\",defines:Object.assign({},e.defines),uniforms:this.uniforms,vertexShader:e.vertexShader,fragmentShader:e.fragmentShader})),this.fsQuad=new i(this.material)}render(e,t,u){this.uniforms[this.textureID]&&(this.uniforms[this.textureID].value=u.texture),this.fsQuad.material=this.material,this.renderToScreen?(e.setRenderTarget(null),this.fsQuad.render(e)):(e.setRenderTarget(t),this.clear&&e.clear(e.autoClearColor,e.autoClearDepth,e.autoClearStencil),this.fsQuad.render(e))}dispose(){this.material.dispose(),this.fsQuad.dispose()}};export{m as ShaderPass};\n//# sourceMappingURL=ShaderPass.mjs.map","/* esm.sh - three@0.160.0/examples/jsm/postprocessing/ShaderPass */\nimport \"/three@0.160.0/es2022/three.mjs\";\nexport * from \"/three@0.160.0/es2022/examples/jsm/postprocessing/ShaderPass.mjs\";\n","/* esm.sh - three@0.160.0/examples/jsm/shaders/FXAAShader */\nimport{Vector2 as e}from\"../../../three.mjs\";var t={name:\"FXAAShader\",uniforms:{tDiffuse:{value:null},resolution:{value:new e(1/1024,1/512)}},vertexShader:`\n\n\t\tvarying vec2 vUv;\n\n\t\tvoid main() {\n\n\t\t\tvUv = uv;\n\t\t\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n\n\t\t}`,fragmentShader:`\n\t\tprecision highp float;\n\n\t\tuniform sampler2D tDiffuse;\n\n\t\tuniform vec2 resolution;\n\n\t\tvarying vec2 vUv;\n\n\t\t// FXAA 3.11 implementation by NVIDIA, ported to WebGL by Agost Biro (biro@archilogic.com)\n\n\t\t//----------------------------------------------------------------------------------\n\t\t// File:        es3-keplerFXAAassetsshaders/FXAA_DefaultES.frag\n\t\t// SDK Version: v3.00\n\t\t// Email:       gameworks@nvidia.com\n\t\t// Site:        http://developer.nvidia.com/\n\t\t//\n\t\t// Copyright (c) 2014-2015, NVIDIA CORPORATION. All rights reserved.\n\t\t//\n\t\t// Redistribution and use in source and binary forms, with or without\n\t\t// modification, are permitted provided that the following conditions\n\t\t// are met:\n\t\t//  * Redistributions of source code must retain the above copyright\n\t\t//    notice, this list of conditions and the following disclaimer.\n\t\t//  * Redistributions in binary form must reproduce the above copyright\n\t\t//    notice, this list of conditions and the following disclaimer in the\n\t\t//    documentation and/or other materials provided with the distribution.\n\t\t//  * Neither the name of NVIDIA CORPORATION nor the names of its\n\t\t//    contributors may be used to endorse or promote products derived\n\t\t//    from this software without specific prior written permission.\n\t\t//\n\t\t// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ''AS IS'' AND ANY\n\t\t// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n\t\t// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n\t\t// PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR\n\t\t// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\n\t\t// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\n\t\t// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\n\t\t// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n\t\t// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n\t\t// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n\t\t// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\t\t//\n\t\t//----------------------------------------------------------------------------------\n\n\t\t#ifndef FXAA_DISCARD\n\t\t\t//\n\t\t\t// Only valid for PC OpenGL currently.\n\t\t\t// Probably will not work when FXAA_GREEN_AS_LUMA = 1.\n\t\t\t//\n\t\t\t// 1 = Use discard on pixels which don't need AA.\n\t\t\t//     For APIs which enable concurrent TEX+ROP from same surface.\n\t\t\t// 0 = Return unchanged color on pixels which don't need AA.\n\t\t\t//\n\t\t\t#define FXAA_DISCARD 0\n\t\t#endif\n\n\t\t/*--------------------------------------------------------------------------*/\n\t\t#define FxaaTexTop(t, p) texture2D(t, p, -100.0)\n\t\t#define FxaaTexOff(t, p, o, r) texture2D(t, p + (o * r), -100.0)\n\t\t/*--------------------------------------------------------------------------*/\n\n\t\t#define NUM_SAMPLES 5\n\n\t\t// assumes colors have premultipliedAlpha, so that the calculated color contrast is scaled by alpha\n\t\tfloat contrast( vec4 a, vec4 b ) {\n\t\t\tvec4 diff = abs( a - b );\n\t\t\treturn max( max( max( diff.r, diff.g ), diff.b ), diff.a );\n\t\t}\n\n\t\t/*============================================================================\n\n\t\t\t\t\t\t\t\t\tFXAA3 QUALITY - PC\n\n\t\t============================================================================*/\n\n\t\t/*--------------------------------------------------------------------------*/\n\t\tvec4 FxaaPixelShader(\n\t\t\tvec2 posM,\n\t\t\tsampler2D tex,\n\t\t\tvec2 fxaaQualityRcpFrame,\n\t\t\tfloat fxaaQualityEdgeThreshold,\n\t\t\tfloat fxaaQualityinvEdgeThreshold\n\t\t) {\n\t\t\tvec4 rgbaM = FxaaTexTop(tex, posM);\n\t\t\tvec4 rgbaS = FxaaTexOff(tex, posM, vec2( 0.0, 1.0), fxaaQualityRcpFrame.xy);\n\t\t\tvec4 rgbaE = FxaaTexOff(tex, posM, vec2( 1.0, 0.0), fxaaQualityRcpFrame.xy);\n\t\t\tvec4 rgbaN = FxaaTexOff(tex, posM, vec2( 0.0,-1.0), fxaaQualityRcpFrame.xy);\n\t\t\tvec4 rgbaW = FxaaTexOff(tex, posM, vec2(-1.0, 0.0), fxaaQualityRcpFrame.xy);\n\t\t\t// . S .\n\t\t\t// W M E\n\t\t\t// . N .\n\n\t\t\tbool earlyExit = max( max( max(\n\t\t\t\t\tcontrast( rgbaM, rgbaN ),\n\t\t\t\t\tcontrast( rgbaM, rgbaS ) ),\n\t\t\t\t\tcontrast( rgbaM, rgbaE ) ),\n\t\t\t\t\tcontrast( rgbaM, rgbaW ) )\n\t\t\t\t\t< fxaaQualityEdgeThreshold;\n\t\t\t// . 0 .\n\t\t\t// 0 0 0\n\t\t\t// . 0 .\n\n\t\t\t#if (FXAA_DISCARD == 1)\n\t\t\t\tif(earlyExit) FxaaDiscard;\n\t\t\t#else\n\t\t\t\tif(earlyExit) return rgbaM;\n\t\t\t#endif\n\n\t\t\tfloat contrastN = contrast( rgbaM, rgbaN );\n\t\t\tfloat contrastS = contrast( rgbaM, rgbaS );\n\t\t\tfloat contrastE = contrast( rgbaM, rgbaE );\n\t\t\tfloat contrastW = contrast( rgbaM, rgbaW );\n\n\t\t\tfloat relativeVContrast = ( contrastN + contrastS ) - ( contrastE + contrastW );\n\t\t\trelativeVContrast *= fxaaQualityinvEdgeThreshold;\n\n\t\t\tbool horzSpan = relativeVContrast > 0.;\n\t\t\t// . 1 .\n\t\t\t// 0 0 0\n\t\t\t// . 1 .\n\n\t\t\t// 45 deg edge detection and corners of objects, aka V/H contrast is too similar\n\t\t\tif( abs( relativeVContrast ) < .3 ) {\n\t\t\t\t// locate the edge\n\t\t\t\tvec2 dirToEdge;\n\t\t\t\tdirToEdge.x = contrastE > contrastW ? 1. : -1.;\n\t\t\t\tdirToEdge.y = contrastS > contrastN ? 1. : -1.;\n\t\t\t\t// . 2 .      . 1 .\n\t\t\t\t// 1 0 2  ~=  0 0 1\n\t\t\t\t// . 1 .      . 0 .\n\n\t\t\t\t// tap 2 pixels and see which ones are \"outside\" the edge, to\n\t\t\t\t// determine if the edge is vertical or horizontal\n\n\t\t\t\tvec4 rgbaAlongH = FxaaTexOff(tex, posM, vec2( dirToEdge.x, -dirToEdge.y ), fxaaQualityRcpFrame.xy);\n\t\t\t\tfloat matchAlongH = contrast( rgbaM, rgbaAlongH );\n\t\t\t\t// . 1 .\n\t\t\t\t// 0 0 1\n\t\t\t\t// . 0 H\n\n\t\t\t\tvec4 rgbaAlongV = FxaaTexOff(tex, posM, vec2( -dirToEdge.x, dirToEdge.y ), fxaaQualityRcpFrame.xy);\n\t\t\t\tfloat matchAlongV = contrast( rgbaM, rgbaAlongV );\n\t\t\t\t// V 1 .\n\t\t\t\t// 0 0 1\n\t\t\t\t// . 0 .\n\n\t\t\t\trelativeVContrast = matchAlongV - matchAlongH;\n\t\t\t\trelativeVContrast *= fxaaQualityinvEdgeThreshold;\n\n\t\t\t\tif( abs( relativeVContrast ) < .3 ) { // 45 deg edge\n\t\t\t\t\t// 1 1 .\n\t\t\t\t\t// 0 0 1\n\t\t\t\t\t// . 0 1\n\n\t\t\t\t\t// do a simple blur\n\t\t\t\t\treturn mix(\n\t\t\t\t\t\trgbaM,\n\t\t\t\t\t\t(rgbaN + rgbaS + rgbaE + rgbaW) * .25,\n\t\t\t\t\t\t.4\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\thorzSpan = relativeVContrast > 0.;\n\t\t\t}\n\n\t\t\tif(!horzSpan) rgbaN = rgbaW;\n\t\t\tif(!horzSpan) rgbaS = rgbaE;\n\t\t\t// . 0 .      1\n\t\t\t// 1 0 1  ->  0\n\t\t\t// . 0 .      1\n\n\t\t\tbool pairN = contrast( rgbaM, rgbaN ) > contrast( rgbaM, rgbaS );\n\t\t\tif(!pairN) rgbaN = rgbaS;\n\n\t\t\tvec2 offNP;\n\t\t\toffNP.x = (!horzSpan) ? 0.0 : fxaaQualityRcpFrame.x;\n\t\t\toffNP.y = ( horzSpan) ? 0.0 : fxaaQualityRcpFrame.y;\n\n\t\t\tbool doneN = false;\n\t\t\tbool doneP = false;\n\n\t\t\tfloat nDist = 0.;\n\t\t\tfloat pDist = 0.;\n\n\t\t\tvec2 posN = posM;\n\t\t\tvec2 posP = posM;\n\n\t\t\tint iterationsUsed = 0;\n\t\t\tint iterationsUsedN = 0;\n\t\t\tint iterationsUsedP = 0;\n\t\t\tfor( int i = 0; i < NUM_SAMPLES; i++ ) {\n\t\t\t\titerationsUsed = i;\n\n\t\t\t\tfloat increment = float(i + 1);\n\n\t\t\t\tif(!doneN) {\n\t\t\t\t\tnDist += increment;\n\t\t\t\t\tposN = posM + offNP * nDist;\n\t\t\t\t\tvec4 rgbaEndN = FxaaTexTop(tex, posN.xy);\n\t\t\t\t\tdoneN = contrast( rgbaEndN, rgbaM ) > contrast( rgbaEndN, rgbaN );\n\t\t\t\t\titerationsUsedN = i;\n\t\t\t\t}\n\n\t\t\t\tif(!doneP) {\n\t\t\t\t\tpDist += increment;\n\t\t\t\t\tposP = posM - offNP * pDist;\n\t\t\t\t\tvec4 rgbaEndP = FxaaTexTop(tex, posP.xy);\n\t\t\t\t\tdoneP = contrast( rgbaEndP, rgbaM ) > contrast( rgbaEndP, rgbaN );\n\t\t\t\t\titerationsUsedP = i;\n\t\t\t\t}\n\n\t\t\t\tif(doneN || doneP) break;\n\t\t\t}\n\n\n\t\t\tif ( !doneP && !doneN ) return rgbaM; // failed to find end of edge\n\n\t\t\tfloat dist = min(\n\t\t\t\tdoneN ? float( iterationsUsedN ) / float( NUM_SAMPLES - 1 ) : 1.,\n\t\t\t\tdoneP ? float( iterationsUsedP ) / float( NUM_SAMPLES - 1 ) : 1.\n\t\t\t);\n\n\t\t\t// hacky way of reduces blurriness of mostly diagonal edges\n\t\t\t// but reduces AA quality\n\t\t\tdist = pow(dist, .5);\n\n\t\t\tdist = 1. - dist;\n\n\t\t\treturn mix(\n\t\t\t\trgbaM,\n\t\t\t\trgbaN,\n\t\t\t\tdist * .5\n\t\t\t);\n\t\t}\n\n\t\tvoid main() {\n\t\t\tconst float edgeDetectionQuality = .2;\n\t\t\tconst float invEdgeDetectionQuality = 1. / edgeDetectionQuality;\n\n\t\t\tgl_FragColor = FxaaPixelShader(\n\t\t\t\tvUv,\n\t\t\t\ttDiffuse,\n\t\t\t\tresolution,\n\t\t\t\tedgeDetectionQuality, // [0,1] contrast needed, otherwise early discard\n\t\t\t\tinvEdgeDetectionQuality\n\t\t\t);\n\n\t\t}\n\t`};export{t as FXAAShader};\n//# sourceMappingURL=FXAAShader.mjs.map","/* esm.sh - three@0.160.0/examples/jsm/shaders/FXAAShader */\nimport \"/three@0.160.0/es2022/three.mjs\";\nexport * from \"/three@0.160.0/es2022/examples/jsm/shaders/FXAAShader.mjs\";\n","\"use client\";import{jsx as _jsx}from\"react/jsx-runtime\";import*as THREE from\"https://esm.sh/three@0.160.0\";import{Line2}from\"https://esm.sh/three@0.160.0/examples/jsm/lines/Line2.js\";import{LineMaterial}from\"https://esm.sh/three@0.160.0/examples/jsm/lines/LineMaterial.js\";import{LineSegmentsGeometry}from\"https://esm.sh/three@0.160.0/examples/jsm/lines/LineSegmentsGeometry.js\";import{EffectComposer}from\"https://esm.sh/three@0.160.0/examples/jsm/postprocessing/EffectComposer.js\";import{RenderPass}from\"https://esm.sh/three@0.160.0/examples/jsm/postprocessing/RenderPass.js\";import{ShaderPass}from\"https://esm.sh/three@0.160.0/examples/jsm/postprocessing/ShaderPass.js\";import{FXAAShader}from\"https://esm.sh/three@0.160.0/examples/jsm/shaders/FXAAShader.js\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,useRef}from\"react\";const MAX_PIXELS=5e6;/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 800\n * @framerIntrinsicHeight 600\n */export default function ParticlesWaves(props){const{width,height,dprLimit,amountX,amountY,separation,gap,amplitude,freq,speed,sideMotion,particleColor,pointSize,cameraFov,cameraHeight,cameraXdeg,showLines,lineColor,glowSize,fillMode,fillColor,gradientType,gradientAngle,gradientColorA,gradientColorB,stopMotionInEditor}=props;const rootRef=useRef(null);const state=useRef({raf:0,cleanup:()=>{}});useEffect(()=>{const el=rootRef.current;if(!el)return;let disposed=false;cancelAnimationFrame(state.current.raf);el.textContent=\"\";const isEditor=RenderTarget.current()===RenderTarget.canvas||RenderTarget.current()===RenderTarget.thumbnail;const isStaticEditor=!!stopMotionInEditor&&isEditor;const spacingRaw=separation+gap;const spacing=Math.sign(spacingRaw||1)*Math.max(.01,Math.abs(spacingRaw));// ---------- Renderer ----------\nconst renderer=new THREE.WebGLRenderer({antialias:true,alpha:true,premultipliedAlpha:false,powerPreference:\"high-performance\",preserveDrawingBuffer:isEditor});renderer.outputColorSpace=THREE.LinearSRGBColorSpace;renderer.domElement.style.width=\"100%\";renderer.domElement.style.height=\"100%\";renderer.setClearColor(0,0);renderer.domElement.style.backgroundColor=\"transparent\";renderer.toneMapping=THREE.NoToneMapping;el.appendChild(renderer.domElement);const onLost=e=>e.preventDefault();const onRestored=()=>{setSize();writeAndRender(0);};renderer.domElement.addEventListener(\"webglcontextlost\",onLost,false);renderer.domElement.addEventListener(\"webglcontextrestored\",onRestored,false);try{const gl=renderer.getContext();if(gl&&gl.SAMPLE_ALPHA_TO_COVERAGE!==undefined)gl.disable(gl.SAMPLE_ALPHA_TO_COVERAGE);}catch{}// ---------- Scene / Camera ----------\nconst scene=new THREE.Scene;const separationBase=Math.max(20,separation);const camera=new THREE.PerspectiveCamera(cameraFov,1,.1,1e5);const baseDist=separationBase*12;camera.position.set(0,cameraHeight,baseDist);const applyCameraYaw=()=>{const yaw=cameraXdeg*Math.PI/180;camera.position.x=Math.sin(yaw)*baseDist;camera.position.z=Math.cos(yaw)*baseDist;camera.lookAt(0,0,0);};applyCameraYaw();// ---------- Helpers ----------\nconst parseRGBA=c=>{const m=/^rgba?\\((\\d+),\\s*(\\d+),\\s*(\\d+)(?:,\\s*([.\\d]+))?\\)$/i.exec(c||\"\");if(m)return{r:+m[1]/255,g:+m[2]/255,b:+m[3]/255,a:m[4]?Math.min(1,Math.max(0,+m[4])):1};if((c||\"\").startsWith(\"#\")){const h=c.slice(1);const to=s=>parseInt(s,16)/255;if(h.length===8)return{r:to(h.slice(0,2)),g:to(h.slice(2,4)),b:to(h.slice(4,6)),a:parseInt(h.slice(6,8),16)/255};if(h.length===6)return{r:to(h.slice(0,2)),g:to(h.slice(2,4)),b:to(h.slice(4,6)),a:1};if(h.length===4)return{r:to(h[0]+h[0]),g:to(h[1]+h[1]),b:to(h[2]+h[2]),a:parseInt(h[3]+h[3],16)/255};if(h.length===3)return{r:to(h[0]+h[0]),g:to(h[1]+h[1]),b:to(h[2]+h[2]),a:1};}const t=new THREE.Color(c||\"#fff\");return{r:t.r,g:t.g,b:t.b,a:1};};// ---------- NEW: gradient as DataTexture (no premultiplication bug) ----------\nconst makeLinearGradientTexture=(w,h,deg,caStr,cbStr)=>{const ca=parseRGBA(caStr);const cb=parseRGBA(cbStr);const data=new Uint8Array(w*h*4);const rad=deg*Math.PI/180;const cos=Math.cos(rad);const sin=Math.sin(rad);const cx=(w-1)/2;const cy=(h-1)/2;const maxDist=Math.sqrt(w*w+h*h)/2;let ptr=0;for(let y=0;y<h;y++){for(let x=0;x<w;x++){const dx=x-cx;const dy=y-cy;const proj=(dx*cos+dy*sin)/maxDist;let t=(proj+1)*.5;if(t<0)t=0;else if(t>1)t=1;const r=ca.r+(cb.r-ca.r)*t;const g=ca.g+(cb.g-ca.g)*t;const b=ca.b+(cb.b-ca.b)*t;const a=ca.a+(cb.a-ca.a)*t;data[ptr++]=Math.round(r*255);data[ptr++]=Math.round(g*255);data[ptr++]=Math.round(b*255);data[ptr++]=Math.round(a*255);}}const tex=new THREE.DataTexture(data,w,h,THREE.RGBAFormat);tex.colorSpace=THREE.NoColorSpace;tex.wrapS=tex.wrapT=THREE.ClampToEdgeWrapping;tex.generateMipmaps=false;tex.minFilter=THREE.LinearFilter;tex.magFilter=THREE.LinearFilter;tex.needsUpdate=true;return tex;};const makeRadialGradientTexture=(w,h,caStr,cbStr)=>{const ca=parseRGBA(caStr);const cb=parseRGBA(cbStr);const data=new Uint8Array(w*h*4);const cx=(w-1)/2;const cy=(h-1)/2;const maxR=Math.sqrt(w*w+h*h)/2;let ptr=0;for(let y=0;y<h;y++){for(let x=0;x<w;x++){const dx=x-cx;const dy=y-cy;let t=Math.sqrt(dx*dx+dy*dy)/maxR;if(t<0)t=0;else if(t>1)t=1;const r=ca.r+(cb.r-ca.r)*t;const g=ca.g+(cb.g-ca.g)*t;const b=ca.b+(cb.b-ca.b)*t;const a=ca.a+(cb.a-ca.a)*t;data[ptr++]=Math.round(r*255);data[ptr++]=Math.round(g*255);data[ptr++]=Math.round(b*255);data[ptr++]=Math.round(a*255);}}const tex=new THREE.DataTexture(data,w,h,THREE.RGBAFormat);tex.colorSpace=THREE.NoColorSpace;tex.wrapS=tex.wrapT=THREE.ClampToEdgeWrapping;tex.generateMipmaps=false;tex.minFilter=THREE.LinearFilter;tex.magFilter=THREE.LinearFilter;tex.needsUpdate=true;return tex;};// ---------- Sprites ----------\nconst solidDisc=(()=>{const s=256;const c=document.createElement(\"canvas\");c.width=c.height=s;const ctx=c.getContext(\"2d\");const r=s/2;const g=ctx.createRadialGradient(r,r,0,r,r,r);g.addColorStop(0,\"rgba(255,255,255,1)\");g.addColorStop(.88,\"rgba(255,255,255,1)\");g.addColorStop(1,\"rgba(255,255,255,0)\");ctx.fillStyle=g;ctx.fillRect(0,0,s,s);const t=new THREE.CanvasTexture(c);t.generateMipmaps=true;t.minFilter=THREE.LinearMipMapLinearFilter;t.magFilter=THREE.LinearFilter;t.anisotropy=2;t.colorSpace=THREE.NoColorSpace;return t;})();const makeGlowHalo=innerStop=>{const s=256;const c=document.createElement(\"canvas\");c.width=c.height=s;const ctx=c.getContext(\"2d\");const r=s/2;const eps=.004;const g=ctx.createRadialGradient(r,r,0,r,r,r);g.addColorStop(0,\"rgba(255,255,255,0)\");g.addColorStop(Math.max(0,innerStop-eps),\"rgba(255,255,255,0)\");g.addColorStop(innerStop,\"rgba(255,255,255,0.65)\");g.addColorStop(1,\"rgba(255,255,255,0)\");ctx.fillStyle=g;ctx.fillRect(0,0,s,s);const t=new THREE.CanvasTexture(c);t.generateMipmaps=false;t.minFilter=THREE.LinearFilter;t.magFilter=THREE.LinearFilter;t.colorSpace=THREE.NoColorSpace;return t;};// ---------- Grid ----------\nconst count=amountX*amountY;const positions=new Float32Array(count*3);const halfX=(amountX-1)*spacing*.5;const halfY=(amountY-1)*spacing*.5;const baseX=new Float32Array(amountX);const baseZ=new Float32Array(amountY);for(let ix=0;ix<amountX;ix++)baseX[ix]=ix*spacing-halfX;for(let iy=0;iy<amountY;iy++)baseZ[iy]=iy*spacing-halfY;let i=0;for(let ix=0;ix<amountX;ix++){for(let iy=0;iy<amountY;iy++){positions[i*3+0]=baseX[ix];positions[i*3+1]=0;positions[i*3+2]=baseZ[iy];i++;}}// ---------- Surface ----------\nlet surfaceMesh=null;let surfacePos=null;let surfaceTex=null;if(fillMode!==\"none\"){const geo=new THREE.BufferGeometry;const surfacePositions=new Float32Array(count*3);surfacePos=new THREE.BufferAttribute(surfacePositions,3);surfacePos.setUsage(THREE.DynamicDrawUsage);geo.setAttribute(\"position\",surfacePos);const uvs=new Float32Array(count*2);for(let ix=0;ix<amountX;ix++){for(let iy=0;iy<amountY;iy++){const idx=ix*amountY+iy;uvs[idx*2+0]=ix/(amountX-1);uvs[idx*2+1]=iy/(amountY-1);}}geo.setAttribute(\"uv\",new THREE.BufferAttribute(uvs,2));const cells=(amountX-1)*(amountY-1);const indices=new Uint32Array(cells*6);let p=0;for(let ix=0;ix<amountX-1;ix++){for(let iy=0;iy<amountY-1;iy++){const a=ix*amountY+iy;const b=(ix+1)*amountY+iy;const cIdx=(ix+1)*amountY+(iy+1);const d=ix*amountY+(iy+1);indices[p++]=a;indices[p++]=b;indices[p++]=d;indices[p++]=b;indices[p++]=cIdx;indices[p++]=d;}}geo.setIndex(new THREE.BufferAttribute(indices,1));let mat;if(fillMode===\"solid\"){const fc=parseRGBA(fillColor);const basic=new THREE.MeshBasicMaterial({color:16777215,opacity:fc.a,transparent:true,premultipliedAlpha:false,blending:THREE.NormalBlending,side:THREE.DoubleSide,depthTest:true,depthWrite:false,toneMapped:false,polygonOffset:true,polygonOffsetFactor:1,polygonOffsetUnits:1});basic.color.multiply(new THREE.Color(fc.r,fc.g,fc.b));mat=basic;}else{surfaceTex=gradientType===\"linear\"?makeLinearGradientTexture(512,512,gradientAngle,gradientColorA,gradientColorB):makeRadialGradientTexture(512,512,gradientColorA,gradientColorB);mat=new THREE.MeshBasicMaterial({map:surfaceTex,color:16777215,transparent:true,premultipliedAlpha:false,blending:THREE.NormalBlending,depthTest:true,depthWrite:false,toneMapped:false,side:THREE.DoubleSide,polygonOffset:true,polygonOffsetFactor:1,polygonOffsetUnits:1});}surfaceMesh=new THREE.Mesh(geo,mat);surfaceMesh.renderOrder=0;scene.add(surfaceMesh);}// ---------- Points ----------\nconst pCol=parseRGBA(particleColor);const coreGeom=new THREE.BufferGeometry;const posAttr=new THREE.BufferAttribute(positions,3);posAttr.setUsage(THREE.DynamicDrawUsage);coreGeom.setAttribute(\"position\",posAttr);const coreMat=new THREE.PointsMaterial({color:new THREE.Color(pCol.r,pCol.g,pCol.b),opacity:pCol.a,transparent:true,alphaMap:solidDisc,size:pointSize,sizeAttenuation:true,depthWrite:false,depthTest:true,blending:THREE.NormalBlending,toneMapped:false});const pointsCore=new THREE.Points(coreGeom,coreMat);pointsCore.renderOrder=2;scene.add(pointsCore);const haloSize=Math.max(glowSize,pointSize+.001);const innerStop=Math.min(.98,Math.max(.02,pointSize/haloSize));const glowTex=makeGlowHalo(innerStop);const glowMat=new THREE.PointsMaterial({color:new THREE.Color(pCol.r,pCol.g,pCol.b),opacity:.7,transparent:true,map:glowTex,alphaMap:glowTex,size:haloSize,sizeAttenuation:true,depthWrite:false,depthTest:true,blending:THREE.AdditiveBlending});const pointsGlow=new THREE.Points(coreGeom,glowMat);pointsGlow.renderOrder=1;scene.add(pointsGlow);// ---------- Lines ----------\nlet line2=null;let lineGeom=null;let lineFlat=null;let linePairs=null;let lineUpdateEvery=1;const buildLinePairs=()=>{const segCount=amountX*(amountY-1)+amountY*(amountX-1);linePairs=new Int32Array(segCount*2);let ptr=0;for(let ix=0;ix<amountX-1;ix++)for(let iy=0;iy<amountY;iy++){const a=ix*amountY+iy;const b=(ix+1)*amountY+iy;linePairs[ptr++]=a;linePairs[ptr++]=b;}for(let ix=0;ix<amountX;ix++)for(let iy=0;iy<amountY-1;iy++){const a=ix*amountY+iy;const b=ix*amountY+(iy+1);linePairs[ptr++]=a;linePairs[ptr++]=b;}lineFlat=new Float32Array(segCount*6);lineUpdateEvery=segCount>2e4?4:1;};const fillLineFlatFromPositions=(src,out)=>{if(!linePairs)return;let p=0;for(let i=0;i<linePairs.length;i+=2){const ai=linePairs[i]*3;const bi=linePairs[i+1]*3;out[p++]=src[ai];out[p++]=src[ai+1];out[p++]=src[ai+2];out[p++]=src[bi];out[p++]=src[bi+1];out[p++]=src[bi+2];}};if(showLines){buildLinePairs();lineGeom=new LineSegmentsGeometry;if(lineFlat&&linePairs){fillLineFlatFromPositions(coreGeom.getAttribute(\"position\").array,lineFlat);lineGeom.setPositions(lineFlat);}const lc=parseRGBA(lineColor);const lineMat=new LineMaterial({color:new THREE.Color(lc.r,lc.g,lc.b).getHex(),opacity:.9,transparent:true,linewidth:.9,depthTest:false,depthWrite:false,dashed:false,toneMapped:false});lineMat.alphaToCoverage=false;lineMat.resolution.set(el.clientWidth||width||800,el.clientHeight||height||500);line2=new Line2(lineGeom,lineMat);line2.renderOrder=10;scene.add(line2);}// ---------- Post FXAA ----------\nconst composer=new EffectComposer(renderer);composer.addPass(new RenderPass(scene,camera));const fxaaPass=new ShaderPass(FXAAShader);composer.addPass(fxaaPass);// ---------- Animation ----------\nconst posCore=coreGeom.getAttribute(\"position\");const clock=new THREE.Clock;const sinX=new Float32Array(amountX);const sinY=new Float32Array(amountY);const sX=new Float32Array(amountX);const sZ=new Float32Array(amountY);// NEW: per-axis amplitude randomness driven by freq\n// Smooth amplitude variation driven by freq (no noisy triangles on Fill)\nconst ampJitterX=new Float32Array(amountX);const ampJitterY=new Float32Array(amountY);// Freq controls how strong the height variation is\nconst freqValue=typeof freq===\"number\"&&!isNaN(freq)?freq:1;const freqFactor=Math.max(0,freqValue);// 0 → нет разброса, выше → сильнее\nconst jitterStrengthRaw=freqFactor*.4;const jitterStrength=Math.max(0,Math.min(jitterStrengthRaw,1));// Random phases, но сама функция по сетке плавная (sin), без резких скачков\nconst phaseX=Math.random()*Math.PI*2;const phaseY=Math.random()*Math.PI*2;for(let ix=0;ix<amountX;ix++){const n=Math.sin(ix*.18*freqFactor+phaseX)// low-freq noise\n;ampJitterX[ix]=1+n*jitterStrength;}for(let iy=0;iy<amountY;iy++){const n=Math.sin(iy*.22*freqFactor+phaseY)// low-freq noise\n;ampJitterY[iy]=1+n*jitterStrength;}const setSize=()=>{const w=Math.max(1,el.clientWidth||width||800);const h=Math.max(1,el.clientHeight||height||500);const capPR=Math.sqrt(MAX_PIXELS/(w*h));let pr=Math.min(dprLimit,isFinite(capPR)?capPR:dprLimit);if(w*h<5e5&&showLines)pr=Math.min(dprLimit,pr*1.25);pr=Math.max(1,pr);renderer.setPixelRatio(pr);renderer.setSize(w,h,false);camera.aspect=w/h;camera.updateProjectionMatrix();if(line2&&line2.material.resolution){line2.material.resolution.set(w,h);}fxaaPass.material.uniforms[\"resolution\"].value.set(1/(w*pr),1/(h*pr));composer.setPixelRatio(pr);composer.setSize(w,h,false);};const writeAndRender=phase=>{// Base frequencies scaled by freqFactor so wave density reacts to Freq\nconst baseWx=.3;const baseWy=.5;const baseSx=.2;const baseSz=.25;const wx=baseWx*freqFactor;const wy=baseWy*freqFactor;const sx=baseSx*freqFactor;const sz=baseSz*freqFactor;for(let ix=0;ix<amountX;ix++){sinX[ix]=Math.sin(ix*wx+phase*wx);sX[ix]=sideMotion!==0?Math.sin(ix*sx+phase*sx):0;}for(let iy=0;iy<amountY;iy++){sinY[iy]=Math.sin(iy*wy+phase*wy);sZ[iy]=sideMotion!==0?Math.cos(iy*sz+phase*sz):0;}let k=0;const arr=posCore.array;for(let ix=0;ix<amountX;ix++){const ampX=amplitude*ampJitterX[ix];const yX=sinX[ix]*ampX;const sideXv=sX[ix]*sideMotion;const baseXi=baseX[ix];for(let iy=0;iy<amountY;iy++){const ampY=amplitude*ampJitterY[iy];const y=yX+sinY[iy]*ampY;const x=baseXi+sideXv;const z=baseZ[iy]+sZ[iy]*sideMotion;const i3=k*3;arr[i3+0]=x;arr[i3+1]=y;arr[i3+2]=z;if(surfacePos)surfacePos.setXYZ(k,x,y,z);k++;}}posCore.needsUpdate=true;if(surfacePos)surfacePos.needsUpdate=true;applyCameraYaw();if(line2&&lineGeom&&lineFlat&&linePairs){fillLineFlatFromPositions(arr,lineFlat);lineGeom.setPositions(lineFlat);}composer.render();};let lastMs=performance.now();const targetMs=1e3/60;const tick=()=>{if(disposed)return;state.current.raf=requestAnimationFrame(tick);const now=performance.now();if(now-lastMs<targetMs)return;lastMs=now;const phase=clock.getElapsedTime()*(speed*60);writeAndRender(phase);};const onResize=()=>{setSize();if(isStaticEditor)writeAndRender(0);};const ro=new ResizeObserver(onResize);ro.observe(el);window.addEventListener(\"resize\",onResize);setSize();if(isStaticEditor){requestAnimationFrame(()=>writeAndRender(0));}else{tick();}// ---------- Cleanup ----------\nstate.current.cleanup=()=>{disposed=true;cancelAnimationFrame(state.current.raf);ro.disconnect();window.removeEventListener(\"resize\",onResize);scene.clear();coreGeom.dispose();solidDisc.dispose();glowTex.dispose();coreMat.dispose();glowMat.dispose();if(surfaceMesh){surfaceMesh.geometry.dispose();if(surfaceTex)surfaceTex.dispose();surfaceMesh.material.dispose();scene.remove(surfaceMesh);}if(line2&&lineGeom){scene.remove(line2);lineGeom.dispose();line2.material.dispose();}renderer.dispose();};return state.current.cleanup;},[width,height,dprLimit,amountX,amountY,separation,gap,amplitude,freq,speed,sideMotion,particleColor,pointSize,cameraFov,cameraHeight,cameraXdeg,showLines,lineColor,glowSize,fillMode,fillColor,gradientType,gradientAngle,gradientColorA,gradientColorB,stopMotionInEditor]);return /*#__PURE__*/_jsx(\"div\",{ref:rootRef,style:{width:\"100%\",height:\"100%\",position:\"relative\",background:\"transparent\",overflow:\"hidden\"}});}// Default Props и Property Controls (обновлены с freq)\nParticlesWaves.defaultProps={width:800,height:500,amountX:60,amountY:60,separation:120,gap:0,amplitude:40,freq:1,speed:.01,sideMotion:0,particleColor:\"#FFFFFF\",pointSize:8,dprLimit:3,cameraFov:55,cameraHeight:600,cameraXdeg:0,showLines:true,lineColor:\"rgba(255,255,255,1)\",glowSize:24,fillMode:\"none\",fillColor:\"rgba(0,0,0,0.2)\",gradientType:\"linear\",gradientAngle:45,gradientColorA:\"rgba(0,0,0,0.0)\",gradientColorB:\"rgba(0,0,0,0.6)\",stopMotionInEditor:true};addPropertyControls(ParticlesWaves,{fillMode:{type:ControlType.Enum,title:\"Fill\",options:[\"none\",\"solid\",\"gradient\"],optionTitles:[\"None\",\"Color\",\"Gradient\"],defaultValue:\"none\"},fillColor:{type:ControlType.Color,title:\"Fill Color\",defaultValue:\"rgba(0,0,0,0.2)\",hidden:p=>p.fillMode!==\"solid\"},gradientType:{type:ControlType.Enum,title:\"Grad Type\",options:[\"linear\",\"radial\"],defaultValue:\"linear\",hidden:p=>p.fillMode!==\"gradient\"},gradientColorA:{type:ControlType.Color,title:\"Color A\",defaultValue:\"rgba(0,0,0,0.0)\",hidden:p=>p.fillMode!==\"gradient\"},gradientColorB:{type:ControlType.Color,title:\"Color B\",defaultValue:\"rgba(0,0,0,0.6)\",hidden:p=>p.fillMode!==\"gradient\"},gradientAngle:{type:ControlType.Number,title:\"Angle\",min:0,max:360,step:1,defaultValue:45,hidden:p=>p.fillMode!==\"gradient\"||p.gradientType!==\"linear\"},particleColor:{type:ControlType.Color,title:\"Point Color\"},pointSize:{type:ControlType.Number,title:\"Point Size\",min:0,max:40,defaultValue:8},glowSize:{type:ControlType.Number,title:\"Glow Size (px)\",min:0,max:240,defaultValue:24},amountX:{type:ControlType.Number,title:\"Grid X\",min:10,max:200,defaultValue:160},amountY:{type:ControlType.Number,title:\"Grid Y\",min:10,max:200,defaultValue:45},separation:{type:ControlType.Number,title:\"Separation\",min:20,max:300,step:5,defaultValue:100},gap:{type:ControlType.Number,title:\"Gap\",min:-300,max:300,defaultValue:0},amplitude:{type:ControlType.Number,title:\"Amplitude\",min:5,max:200,defaultValue:55},freq:{type:ControlType.Number,title:\"Freq\",min:0,max:3,step:.1,defaultValue:1},speed:{type:ControlType.Number,title:\"Speed\",min:0,max:.08,step:.005,defaultValue:.02},sideMotion:{type:ControlType.Number,title:\"Side Motion\",min:0,max:200,defaultValue:80},dprLimit:{type:ControlType.Number,title:\"DPR Limit\",min:1,max:4,step:.25,defaultValue:2},cameraFov:{type:ControlType.Number,title:\"Camera FOV\",min:25,max:100,defaultValue:100},cameraHeight:{type:ControlType.Number,title:\"Camera Y\",min:50,max:2e3,step:10,defaultValue:310},cameraXdeg:{type:ControlType.Number,title:\"Camera X\",min:-180,max:180,defaultValue:0},showLines:{type:ControlType.Boolean,title:\"Lines\",defaultValue:true},lineColor:{type:ControlType.Color,title:\"Line Color\",defaultValue:\"rgba(255,255,255,1)\",hidden:p=>!p.showLines},stopMotionInEditor:{type:ControlType.Boolean,title:\"Stop Motion in Editor\",defaultValue:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ParticlesWaves\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"600\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"800\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ParticlesWaves.map"],"mappings":"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"}