<!-- SOLUV · part 544 -->
ose()}},_h=class extends wo{constructor(t,e,n,i,r,a,o,l){super({},t,e,n,i,r,a,o,l),this.isVideoFrameTexture=!0}update(){}clone(){return new this.constructor().copy(this)}setFrame(t){this.image=t,this.needsUpdate=!0}},xh=class extends Ae{constructor(t,e){super({width:t,height:e}),this.isFramebufferTexture=!0,this.magFilter=Ee,this.minFilter=Ee,this.generateMipmaps=!1,this.needsUpdate=!0}},Is=class extends Ae{constructor(t,e,n,i,r,a,o,l,c,h,d,u){super(null,a,o,l,c,h,i,r,d,u),this.isCompressedTexture=!0,this.image={width:e,height:n},this.mipmaps=t,this.flipY=!1,this.generateMipmaps=!1}},vh=class extends Is{constructor(t,e,n,i,r,a){super(t,e,n,r,a),this.isCompressedArrayTexture=!0,this.image.depth=i,this.wrapR=tn,this.layerUpdates=new Set}copy(t){return super.copy(t),this.wrapR=t.wrapR,this}addLayerUpdate(t){this.layerUpdates.add(t)}clearLayerUpdates(){this.layerUpdates.clear()}},yh=class extends Is{constructor(t,e,n){super(void 0,t[0].width,t[0].height,e,n,zn),this.isCompressedCubeTexture=!0,this.isCubeTexture=!0,this.image=t}},Gi=class extends Ae{constructor(t=[],e=zn,n,i,r,a,o,l,c,h){super(t,e,n,i,r,a,o,l,c,h),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(t){this.image=t}},Sh=class extends Ae{constructor(t,e,n,i,r,a,o,l,c){super(t,e,n,i,r,a,o,l,c),this.isCanvasTexture=!0,this.needsUpdate=!0}},Mh=class extends Ae{constructor(t,e,n,i,r,a,o,l,c){super(t,e,n,i,r,a,o,l,c),this.isHTMLTexture=!0,this.generateMipmaps=!1,this.needsUpdate=!0;let h=t?t.parentNode:null;h!==null&&"requestPaint"in h&&(h.onpaint=()=>{this.needsUpdate=!0},h.requestPaint())}dispose(){let t=this.image?this.image.parentNode:null;t!==null&&"onpaint"in t&&(t.onpaint=null),super.dispose()}},gi=class extends Ae{constructor(t,e,n=mn,i,r,a,o=Ee,l=Ee,c,h=Dn,d=1){if(h!==Dn&&h!==Si)throw new Error("THREE.DepthTexture: format must be either THREE.DepthFormat or THREE.DepthStencilFormat");let u={width:t,height:e,depth:d};super(u,i,r,a,o,l,h,n,c),this.isDepthTexture=!0,this.flipY=!1,this.generateMipmaps=!1,this.compareFunction=null}copy(t){return super.copy(t),this.source=new Mn(Object.assign({},t.image)),this.compareFunction=t.compareFunction,this}toJSON(t){let e=super.toJSON(t);return e.compareFunction=this.compareFunction,e}},Co=class extends gi{constructor(t,e=mn,n=zn,i,r,a=Ee,o=Ee,l,c=Dn){let h={width:t,height:t,depth:1},d=[h,h,h,h,h,h];super(t,t,e,n,i,r,a,o,l,c),this.image=d,this.isCubeDepthTexture=!0,this.isCubeTexture=!0}get images(){return this.image}set images(t){this.image=t}},Er=class extends Ae{constructor(t=null){super(),this.sourceTexture=t,this.isExternalTexture=!0}copy(t){return super.copy(t),this.sourceTexture=t.sourceTexture,this}},Hi=class s extends Yt{constructor(t=1,e=1,n=1,i=1,r=1,a=1){super(),this.type="BoxGeometry",this.parameters={width:t,height:e,depth:n,widthSegments:i,heightSegments:r,depthSegments:a};let o=this;i=Math.floor(i),r=Math.floor(r),a=Math.floor(a);let l=[],c=[],h=[],d=[],u=0,f=0;p("z","y","x",-1,-1,n,e,t,a,r,0),p("z","y","x",1,-1,n,e,-t,a,r,1),p("x","z","y",1,1,t,n,e,i,a,2),p("x","z","y",1,-1,t,n,-e,i,a,3),p("x","y","z",1,-1,t,e,n,i,r,4),p("x","y","z",-1,-1,t,e,-n,i,r,5),this.setIndex(l),this.setAttribute("position",new Tt(c,3)),this.setAttribute("normal",new Tt(h,3)),this.setAttribute("uv",new Tt(d,2));function p(_,g,m,S,b,x,E,T,R,v,A){let I=x/R,L=E/v,F=x/2,z=E/2,D=T/2,B=R+1,X=v+1,W=0,st=0,q=new C;for(let Q=0;Q<X;Q++){let et=Q*L-z;for(let Dt=0;Dt<B;Dt++){let wt=Dt*I-F;q[_]=wt*S,q[g]=et*b,q[m]=D,c.push(q.x,q.y,q.z),q[_]=0,q[g]=0,q[m]=T>0?1:-1,h.push(q.x,q.y,q.z),d.push(Dt/R),d.push(1-Q/v),W+=1}}for(let Q=0;Q<v;Q++)for(let et=0;et<R;et++){let Dt=u+et+B*Q,wt=u+et+B*(Q+1),se=u+(et+1)+B*(Q+1),Qt=u+(et+1)+B*Q;l.push(Dt,wt,Qt),l.push(wt,se,Qt),st+=6}o.addGroup(f,st,A),f+=st,u+=W}}copy(t){return super.copy(t),this.parameters=Object.assign({},t.parameters),this}static fromJSON(t){return new s(t.width,t.height,t.depth,t.widthSegments,t.heightSegments,t.depthSegments)}},Ro=class s extends Yt{constructor(t=1,e=1,n=4,i=8,r=1){super(),this.type="CapsuleGeometry",this.parameters={radius:t,height:e,capSegments:n,radialSegments:i,heightSegments:r},e=Math.max(0,e),n=Math.max(1,Math.floor(n)),i=Math.max(3,Math.floor(i)),r=Math.max(1,Math.floor(r));let a=[],o=[],l=[],c=[],h=e/2,d=Math.PI/2*t,u=e,f=2*d+u,p=n*2+r,_=i+1,g=new C,m=new C;for(let S=0;S<=p;S++){let b=0,x=0,E=0,T=0;if(S<=n){let A=S/n,I=A*Math.PI/2;x=-h-t*Math.cos(I),E=t*Math.sin(I),T=-t*Math.cos(I),b=A*d}else if(S<=n+r){let A=(S-n)/r;x=-h+A*e,E=t,T=0,b=d+A*u}else{let A=(S-n-r)/n,I=A*Math.PI/2;x=h+t*Math.sin(I),E=t*Math.cos(I),T=t*Math.sin(I),b=d+u+A*d}let R=Math.max(0,Math.min(1,b/f)),v=0;S===0?v=.5/i:S===p&&(v=-.5/i);for(let A=0;A<=i;A++){let I=A/i,L=I*Math.PI*2,F=Math.sin(L),z=Math.cos(L);m.x=-E*z,m.y=x,m.z=E*F,o.push(m.x,m.y,m.z),g.set(-E*z,T,E*F),g.normalize(),l.push(g.x,g.y,g.z),c.push(I+v,R)}if(S>0){let A=(S-1)*_;for(let I=0;I<i;I++){let L=A+I,F=A+I+1,z=S*_+I,D=S*_+I+1;a.push(L,F,z),a.push(F,D,z)}}}this.setInd