<!-- SOLID-PLAYTIME · part 132 -->
2uiv(this.addr,e)}function Aw(t,e){t.uniform3uiv(this.addr,e)}function Sw(t,e){t.uniform4uiv(this.addr,e)}function Lw(t,e,n){let i=this.cache,s=e.length,a=Yf(n,s);if(!pn(i,a))t.uniform1iv(this.addr,a),mn(i,a);for(let r=0;r!==s;++r)n.setTexture2D(e[r]||pM,a[r])}function Rw(t,e,n){let i=this.cache,s=e.length,a=Yf(n,s);if(!pn(i,a))t.uniform1iv(this.addr,a),mn(i,a);for(let r=0;r!==s;++r)n.setTexture3D(e[r]||UM,a[r])}function ww(t,e,n){let i=this.cache,s=e.length,a=Yf(n,s);if(!pn(i,a))t.uniform1iv(this.addr,a),mn(i,a);for(let r=0;r!==s;++r)n.setTextureCube(e[r]||gM,a[r])}function Cw(t,e,n){let i=this.cache,s=e.length,a=Yf(n,s);if(!pn(i,a))t.uniform1iv(this.addr,a),mn(i,a);for(let r=0;r!==s;++r)n.setTexture2DArray(e[r]||mM,a[r])}function Dw(t){switch(t){case 5126:return dw;case 35664:return pw;case 35665:return mw;case 35666:return Uw;case 35674:return gw;case 35675:return vw;case 35676:return yw;case 5124:case 35670:return xw;case 35667:case 35671:return bw;case 35668:case 35672:return Ew;case 35669:case 35673:return Mw;case 5125:return _w;case 36294:return Tw;case 36295:return Aw;case 36296:return Sw;case 35678:case 36198:case 36298:case 36306:case 35682:return Lw;case 35679:case 36299:case 36307:return Rw;case 35680:case 36300:case 36308:case 36293:return ww;case 36289:case 36303:case 36311:case 36292:return Cw}}class vM{constructor(t,e,n){this.id=t,this.addr=n,this.cache=[],this.type=e.type,this.setValue=fw(e.type)}}class yM{constructor(t,e,n){this.id=t,this.addr=n,this.cache=[],this.type=e.type,this.size=e.size,this.setValue=Dw(e.type)}}class xM{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 r=i[s];r.setValue(t,e[r.id],n)}}}var QU=/(\w+)(\])?(\[|\.)?/g;function nM(t,e){t.seq.push(e),t.map[e.id]=e}function Pw(t,e,n){let i=t.name,s=i.length;QU.lastIndex=0;while(!0){let a=QU.exec(i),r=QU.lastIndex,o=a[1],l=a[2]==="]",c=a[3];if(l)o=o|0;if(c===void 0||c==="["&&r+2===s){nM(n,c===void 0?new vM(o,t,e):new yM(o,t,e));break}else{let f=n.map[o];if(f===void 0)f=new xM(o),nM(n,f);n=f}}}class Gc{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);Pw(s,a,this)}}setValue(t,e,n,i){let s=this.map[e];if(s!==void 0)s.setValue(t,n,i)}setOptional(t,e,n){let i=e[n];if(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 r=e[s],o=n[r.id];if(o.needsUpdate!==!1)r.setValue(t,o.value,i)}}static seqWithValue(t,e){let n=[];for(let i=0,s=t.length;i!==s;++i){let a=t[i];if(a.id in e)n.push(a)}return n}}function iM(t,e,n){let i=t.createShader(e);return t.shaderSource(i,n),t.compileShader(i),i}var Hw=37297,Iw=0;function Fw(t,e){let n=t.split(`
`),i=[],s=Math.max(e-6,0),a=Math.min(e+6,n.length);for(let r=s;r<a;r++){let o=r+1;i.push(`${o===e?">":" "} ${o}: ${n[r]}`)}return i.join(`
`)}var sM=new qt;function Nw(t){ue._getMatrix(sM,ue.workingColorSpace,t);let e=`mat3( ${sM.elements.map((n)=>n.toFixed(4))} )`;switch(ue.getTransfer(t)){case pU:return[e,"LinearTransferOETF"];case Be:return[e,"sRGBTransferOETF"];default:return console.warn("THREE.WebGLProgram: Unsupported color space: ",t),[e,"LinearTransferOETF"]}}function aM(t,e,n){let i=t.getShaderParameter(e,t.COMPILE_STATUS),a=(t.getShaderInfoLog(e)||"").trim();if(i&&a==="")return"";let r=/ERROR: 0:(\d+)/.exec(a);if(r){let o=parseInt(r[1]);return n.toUpperCase()+`

`+a+`

`+Fw(t.getShaderSource(e),o)}else return a}function Bw(t,e){let n=Nw(e);return[`vec4 ${t}( vec4 value ) {`,`	return ${n[1]}( vec4( value.rgb * ${n[0]}, value.a ) );`,"}"].join(`
`)}function Ow(t,e){let n;switch(e){case oE:n="Linear";break;case lE:n="Reinhard";break;case cE:n="Cineon";break;case Vo:n="ACESFilmic";break;case hE:n="AgX";break;case fE:n="Neutral";break;case uE:n="Custom";break;default:console.warn("THREE.WebGLProgram: Unsupported toneMapping:",e),n="Linear"}return"vec3 "+t+"( vec3 color ) { return "+n+"ToneMapping( color ); }"}var Wf=new C;function zw(){ue.getLuminanceCoefficients(Wf);let t=Wf.x.toFixed(4),e=Wf.y.toFixed(4),n=Wf.z.toFixed(4);return["float luminance( const in vec3 rgb ) {",`	const vec3 weights = vec3( ${t}, ${e}, ${n} );`,"\treturn dot( weights, rgb );","}"].join(`
`)}function kw(t){return[t.extensionClipCullDistance?"#extension GL_ANGLE_clip_cull_distance : require":"",t.extensionMultiDraw?"#extension GL_ANGLE_multi_draw : require":""].filter(Xc).join(`
`)}function Vw(t){let e=[];for(let n in t){let i=t[n];if(i===!1)continue;e.push("#define "+n+" "+i)}return e.join(`
`)}function Xw(t,e){let n={},i=t.getProgramParameter(e,t.ACTIVE_ATTRIBUTES);for(let s=0;s<i;s++){let a=t.getActiveAttrib(e,s),r=a.name,o=1;if(a.type===t.FLOAT_MAT2)o=2;if(a.type===t.FLOAT_MAT3)o=3;if(a.type===t.FLOAT_MAT4)o=4;n[r]={type:a.type,location:t.getAttribLocation(e,r),locationSize:o}}return n}function Xc(t){return t!==""}function rM(t,e){let n=e.numSpotLightShad